diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2019-01-20 13:55:01 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2019-01-20 13:55:01 +0000 |
commit | c934d3a01b05939af797b7fca07dd3ddaaa9d5fd (patch) | |
tree | 2d531dae63a572e8f00a59755d076b4db3c573d9 /clang/lib/CodeGen/CGBuiltin.cpp | |
parent | 1231904c489437965e880baee60b459b621785f8 (diff) | |
download | bcm5719-llvm-c934d3a01b05939af797b7fca07dd3ddaaa9d5fd.tar.gz bcm5719-llvm-c934d3a01b05939af797b7fca07dd3ddaaa9d5fd.zip |
[CostModel][X86] Add explicit vector select costs
Prior to SSE41 (and sometimes on AVX1), vector select has to be performed as a ((X & C)|(Y & ~C)) bit select.
Exposes a couple of issues with the min/max reduction costs (which only go down to SSE42 for some reason).
The increase pre-SSE41 selection costs also prevent a couple of tests from firing any longer, so I've either tweaked the target or added AVX tests as well to the existing SSE2 tests.
llvm-svn: 351685
Diffstat (limited to 'clang/lib/CodeGen/CGBuiltin.cpp')
0 files changed, 0 insertions, 0 deletions