[all-commits] [llvm/llvm-project] dc8e4d: [ARM] Rearrange SizeReduction when using -Oz

NickGuy-Arm via All-commits all-commits at lists.llvm.org
Thu Jul 2 01:19:59 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: dc8e4d856615806dc4c7bbd898cf0428b005e790
      https://github.com/llvm/llvm-project/commit/dc8e4d856615806dc4c7bbd898cf0428b005e790
  Author: Nicholas Guy <nicholas.guy at arm.com>
  Date:   2020-07-02 (Thu, 02 Jul 2020)

  Changed paths:
    M llvm/lib/Target/ARM/ARMTargetMachine.cpp
    M llvm/test/CodeGen/ARM/t2-shrink-ldrpost.ll
    M llvm/test/CodeGen/Thumb2/constant-hoisting.ll

  Log Message:
  -----------
  [ARM] Rearrange SizeReduction when using -Oz

Move the Thumb2SizeReduce pass to before IfConversion when optimising
for minimal code size.

Running the Thumb2SizeReduction pass before IfConversionallows T1
instructions to propagate to the final output, rather than the
ifConverter modifying T2 instructions and preventing them from being
reduced later.

This change does introduce a regression regarding execution time, so
it's only applied when optimising for size.

Running the LLVM Test Suite with this change produces a geomean
difference of -0.1% for the size..text metric.

Differential Revision: https://reviews.llvm.org/D82439




More information about the All-commits mailing list