[PATCH] D17999: Rewrite ARM & AArch64 tests to check LLVM IR rather than assembly

Tim Northover via cfe-commits cfe-commits at lists.llvm.org
Wed Mar 9 10:18:33 PST 2016


t.p.northover created this revision.
t.p.northover added a subscriber: cfe-commits.
Herald added subscribers: mcrosier, rengolin, aemerson.

Hi,

This is my attempt to address the issues in http://llvm.org/PR26815, where changes to LLVM broke check-clang because we had end-to-end tests. The patch does 2 related things:

  * It removes all ARM and AArch64 assembly tests I could find, instead substituting auto-generated LLVM IR checks, including data-flow to make sure we don't swap operand order or make other mistakes along those lines. The idea is that we believe the current IR is correct so this one-time substitution shouldn't hurt.
  * It converts tests that were using -O1, -O2 or -O3 into only relying on Mem2Reg (a stable pass with well-defined expectations which greatly improves readability of the output in most cases).

Does this look reasonable to people?

Tim.

http://reviews.llvm.org/D17999

Files:
  test/CodeGen/aarch64-neon-2velem.c
  test/CodeGen/aarch64-neon-3v.c
  test/CodeGen/aarch64-neon-across.c
  test/CodeGen/aarch64-neon-extract.c
  test/CodeGen/aarch64-neon-fcvt-intrinsics.c
  test/CodeGen/aarch64-neon-fma.c
  test/CodeGen/aarch64-neon-intrinsics.c
  test/CodeGen/aarch64-neon-ldst-one.c
  test/CodeGen/aarch64-neon-misc.c
  test/CodeGen/aarch64-neon-perm.c
  test/CodeGen/aarch64-neon-scalar-copy.c
  test/CodeGen/aarch64-neon-scalar-x-indexed-elem.c
  test/CodeGen/aarch64-neon-shifts.c
  test/CodeGen/aarch64-neon-tbl.c
  test/CodeGen/aarch64-neon-vcombine.c
  test/CodeGen/aarch64-neon-vget-hilo.c
  test/CodeGen/aarch64-neon-vget.c
  test/CodeGen/aarch64-poly128.c
  test/CodeGen/aarch64-poly64.c
  test/CodeGen/arm-bitfield-alignment.c
  test/CodeGen/arm-crc32.c
  test/CodeGen/arm-neon-directed-rounding.c
  test/CodeGen/arm-neon-fma.c
  test/CodeGen/arm-neon-numeric-maxmin.c
  test/CodeGen/arm-neon-shifts.c
  test/CodeGen/arm-neon-vcvtX.c
  test/CodeGen/arm-neon-vget.c
  test/CodeGen/arm64-be-bitfield.c
  test/CodeGen/arm64-crc32.c
  test/CodeGen/arm64-lanes.c
  test/CodeGen/arm64_vcopy.c
  test/CodeGen/arm64_vcreate.c
  test/CodeGen/arm64_vdupq_n_f64.c
  test/CodeGen/arm_neon_intrinsics.c
  test/CodeGen/builtins-arm-exclusive.c
  test/CodeGen/builtins-arm.c
  test/CodeGen/builtins-arm64.c
  test/CodeGen/fp128_complex.c
  test/CodeGen/neon-immediate-ubsan.c

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17999.50156.patch
Type: text/x-patch
Size: 4905970 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20160309/f715054a/attachment-0001.bin>


More information about the cfe-commits mailing list