]> granicus.if.org Git - llvm/commit
[AArch64][GlobalISel] Enable copy elision in the pre-legalizer combine and fix a...
authorAmara Emerson <aemerson@apple.com>
Sat, 13 Apr 2019 00:33:25 +0000 (00:33 +0000)
committerAmara Emerson <aemerson@apple.com>
Sat, 13 Apr 2019 00:33:25 +0000 (00:33 +0000)
commit5b35b3b0304aca95e79ad52f8a013d7bbdd7051e
treece9b7849fb388181f142e2a5660e551cda50d6fb
parent9dcce983ad776b43a12173c341ab1f688ff15874
[AArch64][GlobalISel] Enable copy elision in the pre-legalizer combine and fix a crash.

This enables the simple copy combine that already exists in the CombinerHelper.
However, it exposed a bug in the GISelChangeObserver where it wouldn't clear a
set of MIs to process, and so would end up causing a crash when deleted MIs were
being added to the combiner worklist again.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@358318 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/GlobalISel/GISelChangeObserver.cpp
lib/Target/AArch64/AArch64PreLegalizerCombiner.cpp
test/CodeGen/AArch64/GlobalISel/observer-change-crash.mir [new file with mode: 0644]