Simon Pilgrim
a9a92a1a6a
[X86][AVX512] Add 512-bit vector bitreverse costs + tests
...
llvm-svn: 303283
2017-05-17 19:20:20 +00:00
Simon Pilgrim
2d1c6d6e8d
[X86][AVX1] Improve 256-bit vector costs for integer unary intrinsics.
...
Account for subvector extraction/insertion, helps prevent the vectorizers from selecting 256-bit vectors that will have to be split anyhow on AVX1 targets.
llvm-svn: 302378
2017-05-07 20:58:55 +00:00
Simon Pilgrim
06c70adcf0
[X86] Add missing BITREVERSE costs for SSE2 vectors and i8/i16/i32/i64 scalars
...
Prep work for PR31810
llvm-svn: 297876
2017-03-15 19:34:55 +00:00
Simon Pilgrim
3fc09f7be6
[CostModel][X86][SSE] Updated costs for vector BITREVERSE ops on SSSE3+ targets
...
To account for the fast PSHUFB implementation now available
llvm-svn: 272484
2016-06-11 19:23:02 +00:00
Simon Pilgrim
14000b3cea
[CostModel][X86][XOP] Added XOP costmodel for BITREVERSE
...
Now that we have a nice fast VPPERM solution. Added framework for future intrinsic costs as well.
llvm-svn: 270537
2016-05-24 08:17:50 +00:00
Simon Pilgrim
6e9898f362
[CostModel][X86] Added scalar bitreverse tests
...
llvm-svn: 269594
2016-05-15 17:40:48 +00:00
Simon Pilgrim
420852e8d4
[CostModel][X86] Split BSWAP/BITREVERSE cost tests from CTPOP/CTLZ/CTTZ 'bit count' cost tests
...
llvm-svn: 268859
2016-05-07 16:34:16 +00:00