[all-commits] [llvm/llvm-project] 82458c: [ARM] mark tMOVi32imm as killing flags

simonwallis2 via All-commits all-commits at lists.llvm.org
Tue Jul 11 06:42:44 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 82458ce69eb0de27b6b794974a618fb058f8af45
      https://github.com/llvm/llvm-project/commit/82458ce69eb0de27b6b794974a618fb058f8af45
  Author: Simon Wallis <simon.wallis2 at arm.com>
  Date:   2023-07-11 (Tue, 11 Jul 2023)

  Changed paths:
    M llvm/lib/Target/ARM/ARMInstrThumb.td
    M llvm/test/CodeGen/ARM/cse-call.ll

  Log Message:
  -----------
   [ARM] mark tMOVi32imm as killing flags

Mark the tMOVi32imm pseudo instr as killing the flags register.

The pseudo instruction expands to a sequence of 7 movs/lsls/adds
instructions, which are all Thumb-1 flag setting instructions.

For a test case, take an existing arm test which checks for
"Don't CSE a cmp across a call that clobbers CPSR."
and retarget it at thumbv6m execute-only.

Reviewed By: stuij

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

Change-Id: I8f8209fbc40a833f8875629937b9606c1e2c021d




More information about the All-commits mailing list