[PATCH] D33773: [ARM] llc -arm-execute-only with floating point runs into UNREACHABLE

Alexandros Lamprineas via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 13 02:46:13 PDT 2017


labrinea updated this revision to Diff 102305.
labrinea added a comment.

It's unfortunate that we cannot share the globals across basic blocks. However, lowering a constant pool as a global variable guarantees that execute-only plays well with all the position-independent addressing modes out of the box. In order to support those with execute-only we would need to add new instruction patterns and logic to handle them in various places, which might introduce new bugs. I've switched back to the previous approach and added a few more checks to verify the CodeGen with position-independent addressing modes. I've also removed few more //unreachable// checks that can now be reached with PIC. Christof are you happy with it?


https://reviews.llvm.org/D33773

Files:
  lib/Target/ARM/ARMAsmPrinter.cpp
  lib/Target/ARM/ARMISelLowering.cpp
  lib/Target/ARM/ARMISelLowering.h
  lib/Target/ARM/ARMMCInstLower.cpp
  test/CodeGen/ARM/constantfp.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D33773.102305.patch
Type: text/x-patch
Size: 9264 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170613/662bda45/attachment.bin>


More information about the llvm-commits mailing list