[PATCH] D59720: [AArch64] Prefer "mov" over "orr" to materialize constants.

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 22 15:03:13 PDT 2019


efriedma created this revision.
efriedma added reviewers: aemerson, t.p.northover, kristof.beyls.
Herald added subscribers: arphaman, eraman, javed.absar.
Herald added a project: LLVM.

This is generally more readable due to the way the assembler aliases work.

(This causes a lot of test changes, but it's not really as scary as it looks at first glance. It's just mechanically changing a bunch of checks for orr to check for mov instead.)


Repository:
  rL LLVM

https://reviews.llvm.org/D59720

Files:
  lib/Target/AArch64/AArch64ExpandImm.cpp
  test/CodeGen/AArch64/arm64-aapcs.ll
  test/CodeGen/AArch64/arm64-abi.ll
  test/CodeGen/AArch64/arm64-abi_align.ll
  test/CodeGen/AArch64/arm64-addrmode.ll
  test/CodeGen/AArch64/arm64-build-vector.ll
  test/CodeGen/AArch64/arm64-ccmp.ll
  test/CodeGen/AArch64/arm64-coalescing-MOVi32imm.ll
  test/CodeGen/AArch64/arm64-csel.ll
  test/CodeGen/AArch64/arm64-fast-isel-call.ll
  test/CodeGen/AArch64/arm64-fast-isel-fcmp.ll
  test/CodeGen/AArch64/arm64-fast-isel.ll
  test/CodeGen/AArch64/arm64-indexed-vector-ldst.ll
  test/CodeGen/AArch64/arm64-inline-asm.ll
  test/CodeGen/AArch64/arm64-memcpy-inline.ll
  test/CodeGen/AArch64/arm64-misaligned-memcpy-inline.ll
  test/CodeGen/AArch64/arm64-movi.ll
  test/CodeGen/AArch64/arm64-neon-compare-instructions.ll
  test/CodeGen/AArch64/arm64-patchpoint-webkit_jscc.ll
  test/CodeGen/AArch64/atomic-ops-lse.ll
  test/CodeGen/AArch64/branch-relax-asm.ll
  test/CodeGen/AArch64/branch-relax-bcc.ll
  test/CodeGen/AArch64/bswap-known-bits.ll
  test/CodeGen/AArch64/cmpxchg-idioms.ll
  test/CodeGen/AArch64/cond-sel-value-prop.ll
  test/CodeGen/AArch64/cond-sel.ll
  test/CodeGen/AArch64/dag-combine-invaraints.ll
  test/CodeGen/AArch64/extract-bits.ll
  test/CodeGen/AArch64/extract-lowbits.ll
  test/CodeGen/AArch64/fabs.ll
  test/CodeGen/AArch64/fast-isel-addressing-modes.ll
  test/CodeGen/AArch64/fast-isel-gep.ll
  test/CodeGen/AArch64/fold-global-offsets.ll
  test/CodeGen/AArch64/funnel-shift.ll
  test/CodeGen/AArch64/i128-align.ll
  test/CodeGen/AArch64/isinf.ll
  test/CodeGen/AArch64/known-never-nan.ll
  test/CodeGen/AArch64/ldst-paired-aliasing.ll
  test/CodeGen/AArch64/machine-outliner-tail.ll
  test/CodeGen/AArch64/machine-outliner-thunk.ll
  test/CodeGen/AArch64/machine-outliner.ll
  test/CodeGen/AArch64/machine_cse_impdef_killflags.ll
  test/CodeGen/AArch64/madd-combiner.ll
  test/CodeGen/AArch64/movw-consts.ll
  test/CodeGen/AArch64/neon-compare-instructions.ll
  test/CodeGen/AArch64/optimize-imm.ll
  test/CodeGen/AArch64/redundant-copy-elim-empty-mbb.ll
  test/CodeGen/AArch64/sadd_sat.ll
  test/CodeGen/AArch64/sadd_sat_vec.ll
  test/CodeGen/AArch64/sdivpow2.ll
  test/CodeGen/AArch64/seh-finally.ll
  test/CodeGen/AArch64/selectcc-to-shiftand.ll
  test/CodeGen/AArch64/signed-truncation-check.ll
  test/CodeGen/AArch64/ssub_sat.ll
  test/CodeGen/AArch64/ssub_sat_vec.ll
  test/CodeGen/AArch64/swifterror.ll
  test/CodeGen/AArch64/tst-br.ll
  test/CodeGen/AArch64/urem-seteq.ll
  test/CodeGen/AArch64/vec_cttz.ll
  test/CodeGen/AArch64/vecreduce-fmax-legalization.ll
  test/CodeGen/AArch64/wineh-try-catch-cbz.ll
  test/CodeGen/AArch64/wineh-try-catch.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D59720.191954.patch
Type: text/x-patch
Size: 77576 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190322/2b14c9c2/attachment.bin>


More information about the llvm-commits mailing list