]> granicus.if.org Git - llvm/commit
[AArch64][GlobalISel] Eliminate redundant G_ZEXT when the source is implicitly zext...
authorAmara Emerson <aemerson@apple.com>
Fri, 2 Aug 2019 21:15:36 +0000 (21:15 +0000)
committerAmara Emerson <aemerson@apple.com>
Fri, 2 Aug 2019 21:15:36 +0000 (21:15 +0000)
commitfd5b39fd11a7ad382578e03019eaadcbe6b24cf5
tree705c06f50fdae46e395ab1b51c495ad93c672b68
parent296ab4b2adb90047c36ca1528b7a1f0fb29f5444
[AArch64][GlobalISel] Eliminate redundant G_ZEXT when the source is implicitly zext-loaded.

These cases can come up when the extending loads combiner doesn't combine a
zext(load) to a zextload op, due to some other operation being in between, which
then gets simplified at a later stage.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@367723 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/AArch64/AArch64InstructionSelector.cpp
test/CodeGen/AArch64/GlobalISel/select-redundant-zext-of-load.mir [new file with mode: 0644]
test/CodeGen/AArch64/GlobalISel/select-zextload.mir