[PATCH] D87510: [SystemZ] Don't emit PC-relative memory accesses to unaligned (packed) symbols.
Ulrich Weigand via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 11 07:04:03 PDT 2020
uweigand added inline comments.
================
Comment at: llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp:1472
+
+ if (!SystemZISD::isPCREL(BasePtr.getOpcode()) ||
+ !MemAccess->getOffset().isUndef()) // potential index register
----------------
I don't think we need to check PCREL here, that should already be handled by the pattern (and has nothing to do with alignment, really).
================
Comment at: llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp:1476
+
+ // An access to GOT or constant pool is always aligned.
+ if (const PseudoSourceValue *PSV =
----------------
Well, there could still be an unaligned offset. I think this check needs to be done after the offset check.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D87510/new/
https://reviews.llvm.org/D87510
More information about the llvm-commits
mailing list