llvm-project/llvm/test/CodeGen/X86/GlobalISel
Sanjay Patel 44eaa492b8 [x86] allow 8-bit adds to be promoted by convertToThreeAddress() to form LEA
This extends the code that handles 16-bit add promotion to form LEA to also allow 8-bit adds. 
That allows us to combine add ops with register moves and save some instructions. This is 
another step towards allowing add truncation in generic DAGCombiner (see D54640).

Differential Revision: https://reviews.llvm.org/D55494

llvm-svn: 348946
2018-12-12 17:58:27 +00:00
..
GV.ll
add-ext.ll Copy utilities updated and added for MI flags 2018-09-19 18:52:08 +00:00
add-scalar.ll [x86] allow 8-bit adds to be promoted by convertToThreeAddress() to form LEA 2018-12-12 17:58:27 +00:00
add-vec.ll
and-scalar.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
ashr-scalar.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
avoid-matchtable-crash.mir
binop.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
br.ll
brcond.ll Correct dwarf unwind information in function epilogue 2018-04-24 10:32:08 +00:00
callingconv.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
calllowering-nocrashret.ll [GISel]: Remove an incorrect assert in CallLowering 2018-09-28 15:08:49 +00:00
cmp.ll
constant.ll Revert r345165 "[X86] Bring back the MOV64r0 pseudo instruction" 2018-10-31 21:53:24 +00:00
ext-x86-64.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
ext.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
fadd-scalar.ll
fconstant.ll
fdiv-scalar.ll
fmul-scalar.ll
fpext-scalar.ll
frameIndex.ll Correct dwarf unwind information in function epilogue 2018-04-24 10:32:08 +00:00
fsub-scalar.ll
gep.ll Revert r342457 "Fixes removal of dead elements from PressureDiff (PR37252)." 2018-09-18 14:12:54 +00:00
inttoptr.ll [GlobalIsel][X86] Support G_INTTOPTR instruction. 2018-02-28 12:11:53 +00:00
irtranslator-callingconv.ll [GlobalISel] Restrict G_MERGE_VALUES capability and replace with new opcodes. 2018-12-10 18:44:58 +00:00
legalize-add-v128.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-add-v256.mir [GlobalISel] Restrict G_MERGE_VALUES capability and replace with new opcodes. 2018-12-10 18:44:58 +00:00
legalize-add-v512.mir [GlobalISel] Restrict G_MERGE_VALUES capability and replace with new opcodes. 2018-12-10 18:44:58 +00:00
legalize-add.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-and-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-ashr-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-brcond.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-cmp.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-constant.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-ext-x86-64.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-ext.mir [GlobalISel] Fix the artifact combiner to fold G_IMPLICIT_DEF properly 2018-10-10 18:01:48 +00:00
legalize-fadd-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-fdiv-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-fmul-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-fpext-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-fptrunc-scalar.mir [GlobalISel][X86] Add the support for G_FPTRUNC 2018-08-31 11:26:51 +00:00
legalize-fsub-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-gep.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-insert-vec256.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-insert-vec512.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-lshr-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-memop-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-mul-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-mul-v128.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-mul-v256.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-mul-v512.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-or-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-phi.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-shl-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-sub-v128.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-sub-v256.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-sub-v512.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-sub.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-trunc.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
legalize-undef.mir [GlobalISel] Fix the artifact combiner to fold G_IMPLICIT_DEF properly 2018-10-10 18:01:48 +00:00
legalize-xor-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
lit.local.cfg
lshr-scalar.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
memop-scalar-x32.ll
memop-scalar.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
memop-vec.ll
mul-scalar.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
mul-vec.ll
or-scalar.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
phi.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
ptrtoint.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
regbankselect-AVX2.mir
regbankselect-AVX512.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
regbankselect-X32.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
regbankselect-X86_64.mir [GlobalISel][X86] Add the support for G_FPTRUNC 2018-08-31 11:26:51 +00:00
select-GV.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-add-v128.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-add-v256.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-add-v512.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-add-x32.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-add.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-and-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-ashr-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-blsi.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-blsr.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-br.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-brcond.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-cmp.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-constant.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-copy.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-ext-x86-64.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-ext.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-extract-vec256.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-extract-vec512.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-fadd-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-fconstant.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-fdiv-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-fmul-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-fpext-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-fptrunc-scalar.mir [GlobalISel][X86] Add the support for G_FPTRUNC 2018-08-31 11:26:51 +00:00
select-fsub-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-gep.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-inc.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-insert-vec256.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-insert-vec512.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-intrinsic-x86-flags-read-u32.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-leaf-constant.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-lshr-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-memop-scalar-x32.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-memop-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-memop-v128.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-memop-v256.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-memop-v512.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-merge-vec256.mir [GlobalISel] Restrict G_MERGE_VALUES capability and replace with new opcodes. 2018-12-10 18:44:58 +00:00
select-merge-vec512.mir [GlobalISel] Restrict G_MERGE_VALUES capability and replace with new opcodes. 2018-12-10 18:44:58 +00:00
select-mul-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-mul-vec.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-or-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-phi.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-shl-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-sub-v128.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-sub-v256.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-sub-v512.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-sub.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-trunc.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-undef.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-unmerge-vec256.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-unmerge-vec512.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
select-xor-scalar.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
shl-scalar-widening.ll [x86] allow 8-bit adds to be promoted by convertToThreeAddress() to form LEA 2018-12-12 17:58:27 +00:00
shl-scalar.ll [x86] allow 8-bit adds to be promoted by convertToThreeAddress() to form LEA 2018-12-12 17:58:27 +00:00
sub-scalar.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
sub-vec.ll
trunc.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00
undef.ll [x86] don't try to convert add with undef operands to LEA 2018-12-09 14:40:37 +00:00
x32-select-frameIndex.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86-legalize-GV.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86-legalize-inttoptr.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86-legalize-ptrtoint.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86-legalize-sdiv.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86-legalize-srem.mir [GlobalIsel][X86] Support G_UDIV/G_UREM/G_SREM 2018-10-08 13:40:34 +00:00
x86-legalize-udiv.mir [GlobalIsel][X86] Support G_UDIV/G_UREM/G_SREM 2018-10-08 13:40:34 +00:00
x86-legalize-urem.mir [GlobalIsel][X86] Support G_UDIV/G_UREM/G_SREM 2018-10-08 13:40:34 +00:00
x86-select-frameIndex.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86-select-inttoptr.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86-select-ptrtoint.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86-select-sdiv.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86-select-srem.mir [GlobalIsel][X86] Support G_UDIV/G_UREM/G_SREM 2018-10-08 13:40:34 +00:00
x86-select-trap.mir [GlobalIsel][X86] Support for llvm.trap intrinsic 2018-08-31 11:05:13 +00:00
x86-select-udiv.mir [GlobalIsel][X86] Support G_UDIV/G_UREM/G_SREM 2018-10-08 13:40:34 +00:00
x86-select-urem.mir [GlobalIsel][X86] Support G_UDIV/G_UREM/G_SREM 2018-10-08 13:40:34 +00:00
x86_64-fallback.ll [CodeGen] Use MIR syntax for MachineMemOperand printing 2018-03-14 21:52:13 +00:00
x86_64-irtranslator-struct-return.ll [GlobalISel] Rewrite CallLowering::lowerReturn to accept multiple VRegs per Value 2018-08-02 08:33:31 +00:00
x86_64-irtranslator.ll [GlobalIsel][X86] Support G_UDIV/G_UREM/G_SREM 2018-10-08 13:40:34 +00:00
x86_64-legalize-GV.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86_64-legalize-fcmp.mir [GlobalIsel][X86] Support for G_FCMP 2018-08-31 09:38:27 +00:00
x86_64-legalize-fptosi.mir [GlobalISel][X86_64] Support for G_FPTOSI 2018-08-31 11:16:58 +00:00
x86_64-legalize-inttoptr.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86_64-legalize-ptrtoint.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86_64-legalize-sdiv.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86_64-legalize-sitofp.mir [GlobalISel][X86_64] Support for G_SITOFP 2018-07-10 16:38:35 +00:00
x86_64-legalize-srem.mir [GlobalIsel][X86] Support G_UDIV/G_UREM/G_SREM 2018-10-08 13:40:34 +00:00
x86_64-legalize-udiv.mir [GlobalIsel][X86] Support G_UDIV/G_UREM/G_SREM 2018-10-08 13:40:34 +00:00
x86_64-legalize-urem.mir [GlobalIsel][X86] Support G_UDIV/G_UREM/G_SREM 2018-10-08 13:40:34 +00:00
x86_64-legalize-zext.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86_64-select-fcmp.mir [GlobalIsel][X86] Support for G_FCMP 2018-08-31 09:38:27 +00:00
x86_64-select-fptosi.mir [GlobalISel][X86_64] Support for G_FPTOSI 2018-08-31 11:16:58 +00:00
x86_64-select-frameIndex.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86_64-select-inttoptr.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86_64-select-ptrtoint.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86_64-select-sdiv.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
x86_64-select-sitofp.mir [GlobalISel][X86_64] Support for G_SITOFP 2018-07-10 16:38:35 +00:00
x86_64-select-srem.mir [GlobalIsel][X86] Support G_UDIV/G_UREM/G_SREM 2018-10-08 13:40:34 +00:00
x86_64-select-udiv.mir [GlobalIsel][X86] Support G_UDIV/G_UREM/G_SREM 2018-10-08 13:40:34 +00:00
x86_64-select-urem.mir [GlobalIsel][X86] Support G_UDIV/G_UREM/G_SREM 2018-10-08 13:40:34 +00:00
x86_64-select-zext.mir [globalisel] Remove redundant -global-isel option from tests that use -run-pass. NFC 2018-05-05 21:19:59 +00:00
xor-scalar.ll Fix line-endings. NFCI. 2018-09-20 10:59:08 +00:00