[PATCH] D36787: [ARM] Fix and reenable arm-promote-constant.

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 16 03:47:23 PDT 2017


dmgreen created this revision.
Herald added subscribers: kristof.beyls, javed.absar, aemerson.

This is a first attempt at fixing and re-enabling the arm-promote-constant optimisation. The original version of this patch was written by John (thanks John!) when he ran into problems with the bugs here. This fixes things in the constant island pass by not cloning constant pool entries that are pointed to by LEA's, but converting them to a LDR to the original pool entry.


https://reviews.llvm.org/D36787

Files:
  lib/Target/ARM/ARMAsmPrinter.cpp
  lib/Target/ARM/ARMConstantIslandPass.cpp
  lib/Target/ARM/ARMConstantPoolValue.cpp
  lib/Target/ARM/ARMConstantPoolValue.h
  lib/Target/ARM/ARMISelLowering.cpp
  test/CodeGen/ARM/constant-island-convert.ll
  test/CodeGen/ARM/constantpool-promote.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D36787.111325.patch
Type: text/x-patch
Size: 60204 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170816/e9d83e7b/attachment-0001.bin>


More information about the llvm-commits mailing list