[all-commits] [llvm/llvm-project] 39108f: ARM: make Thumb1 instructions non-flag-setting in ...

Tim Northover via All-commits all-commits at lists.llvm.org
Tue Jul 28 05:31:38 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 39108f4c7a2c52be88f73bd6abaa613f4b28d327
      https://github.com/llvm/llvm-project/commit/39108f4c7a2c52be88f73bd6abaa613f4b28d327
  Author: Tim Northover <t.p.northover at gmail.com>
  Date:   2020-07-28 (Tue, 28 Jul 2020)

  Changed paths:
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/ARM/ARMInstrFormats.td
    M llvm/test/CodeGen/ARM/thumb2-it-block.ll
    M llvm/test/CodeGen/Thumb2/ifcvt-rescan-diamonds.ll

  Log Message:
  -----------
  ARM: make Thumb1 instructions non-flag-setting in IT block.

Many Thumb1 instructions are defined to set CPSR if executed outside an IT
block, but leave it alone from inside one. In MachineIR this is represented by
whether an optional register is CPSR or NoReg (0), and affects how the
instructions are printed.

This sets the instruction to the appropriate form during if-conversion.




More information about the All-commits mailing list