[PATCH] D31833: [x86] Relax the check in areLoadsFromSameBasePtr
NAKAMURA Takumi via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 12 04:25:51 PDT 2017
chapuni added a comment.
Seems it causes crash in stage2.
http://bb.pgr.jp/builders/clang-3stage-x86_64-linux/builds/14942
As far as I investigated, this change misses the case "Load1->getOperand(5) != Load2->getOperand(5)"
t69: i64,ch = <<Unknown Machine Node #63812>><Mem:LD8[%_M_p.i.i.i.i.i34](tbaa=<0xa62bec8>)> t2, TargetConstant:i8<1>, Register:i64 %noreg, TargetConstant:i32<0>, Register:i32 %noreg, t2:1
t78: i64,ch = <<Unknown Machine Node #63812>><Mem:LD8[%9](tbaa=<0xa55faf8>)> t2, TargetConstant:i8<1>, Register:i64 %noreg, TargetConstant:i32<56>, Register:i32 %noreg, t29:1
Is it true for areLoadsFromSameBasePtr() ?
================
Comment at: llvm/trunk/lib/Target/X86/X86InstrInfo.cpp:8985
- if (Load1->getOperand(0) != Load2->getOperand(0) ||
- Load1->getOperand(5) != Load2->getOperand(5))
return false;
----------------
Crashes can be fixed if this logic is included.
Repository:
rL LLVM
https://reviews.llvm.org/D31833
More information about the llvm-commits
mailing list