[PATCH] D78493: [ARM] Don't shrink STM.W to unpredictable STM.N with writeback

John Brawn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 20 08:05:17 PDT 2020


john.brawn created this revision.
john.brawn added reviewers: samparker, zzheng, eli.friedman, dmgreen.
Herald added subscribers: danielkiss, hiraditya, kristof.beyls.
Herald added a project: LLVM.

16-bit thumb STM is unpredictable if it has writeback and the base register is being stored. The load/store optimizer knows this and generates a 32-bit STM instead, but thumb2 size reduction converts it into a 16-bit STM. Fix this by having thumb2 size reduction notice such STMs and leave them as they are.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D78493

Files:
  llvm/lib/Target/ARM/Thumb2SizeReduction.cpp
  llvm/test/CodeGen/Thumb/stm-deprecated.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D78493.258729.patch
Type: text/x-patch
Size: 4092 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200420/ed54b2a3/attachment-0001.bin>


More information about the llvm-commits mailing list