diff options
| author | Craig Topper <craig.topper@intel.com> | 2018-10-05 18:13:36 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@intel.com> | 2018-10-05 18:13:36 +0000 |
| commit | 0ed892da707883908c8240087bed1e6286fe72aa (patch) | |
| tree | 7ac0ccea4708936d402f809059616595ea09a041 /llvm/test/CodeGen/RISCV/shifts.ll | |
| parent | 57b0da06881de3d4c37864fb074fe959e6b4a0bc (diff) | |
| download | bcm5719-llvm-0ed892da707883908c8240087bed1e6286fe72aa.tar.gz bcm5719-llvm-0ed892da707883908c8240087bed1e6286fe72aa.zip | |
[X86] Don't promote i16 compares to i32 if the immediate will fit in 8 bits.
The comments in this code say we were trying to avoid 16-bit immediates, but if the immediate fits in 8-bits this isn't an issue. This avoids creating a zero extend that probably won't go away.
The movmskb related changes are interesting. The movmskb instruction writes a 32-bit result, but fills the upper bits with 0. So the zero_extend we were previously emitting was free, but we turned a -1 immediate that would fit in 8-bits into a 32-bit immediate so it was still bad.
llvm-svn: 343871
Diffstat (limited to 'llvm/test/CodeGen/RISCV/shifts.ll')
0 files changed, 0 insertions, 0 deletions

