[llvm] cd0e867 - [AArch64] Update and cleanup arm64-vector-imm.ll test. NFC
David Green via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 10 23:50:45 PDT 2024
Author: David Green
Date: 2024-09-11T07:50:39+01:00
New Revision: cd0e867756dbab6184d2f250f768a60bc60a0849
URL: https://github.com/llvm/llvm-project/commit/cd0e867756dbab6184d2f250f768a60bc60a0849
DIFF: https://github.com/llvm/llvm-project/commit/cd0e867756dbab6184d2f250f768a60bc60a0849.diff
LOG: [AArch64] Update and cleanup arm64-vector-imm.ll test. NFC
Added:
Modified:
llvm/test/CodeGen/AArch64/arm64-vector-imm.ll
Removed:
################################################################################
diff --git a/llvm/test/CodeGen/AArch64/arm64-vector-imm.ll b/llvm/test/CodeGen/AArch64/arm64-vector-imm.ll
index 08bceb850df406..a3efa6b961e63c 100644
--- a/llvm/test/CodeGen/AArch64/arm64-vector-imm.ll
+++ b/llvm/test/CodeGen/AArch64/arm64-vector-imm.ll
@@ -1,134 +1,165 @@
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 5
; RUN: llc < %s -mtriple=arm64-eabi -aarch64-neon-syntax=apple | FileCheck %s
define <8 x i8> @v_orrimm(ptr %A) nounwind {
; CHECK-LABEL: v_orrimm:
-; CHECK-NOT: mov
-; CHECK-NOT: mvn
-; CHECK: orr
- %tmp1 = load <8 x i8>, ptr %A
- %tmp3 = or <8 x i8> %tmp1, <i8 0, i8 0, i8 0, i8 1, i8 0, i8 0, i8 0, i8 1>
- ret <8 x i8> %tmp3
+; CHECK: // %bb.0:
+; CHECK-NEXT: ldr d0, [x0]
+; CHECK-NEXT: orr.2s v0, #1, lsl #24
+; CHECK-NEXT: ret
+ %tmp1 = load <8 x i8>, ptr %A
+ %tmp3 = or <8 x i8> %tmp1, <i8 0, i8 0, i8 0, i8 1, i8 0, i8 0, i8 0, i8 1>
+ ret <8 x i8> %tmp3
}
define <16 x i8> @v_orrimmQ(ptr %A) nounwind {
-; CHECK: v_orrimmQ
-; CHECK-NOT: mov
-; CHECK-NOT: mvn
-; CHECK: orr
- %tmp1 = load <16 x i8>, ptr %A
- %tmp3 = or <16 x i8> %tmp1, <i8 0, i8 0, i8 0, i8 1, i8 0, i8 0, i8 0, i8 1, i8 0, i8 0, i8 0, i8 1, i8 0, i8 0, i8 0, i8 1>
- ret <16 x i8> %tmp3
+; CHECK-LABEL: v_orrimmQ:
+; CHECK: // %bb.0:
+; CHECK-NEXT: ldr q0, [x0]
+; CHECK-NEXT: orr.4s v0, #1, lsl #24
+; CHECK-NEXT: ret
+ %tmp1 = load <16 x i8>, ptr %A
+ %tmp3 = or <16 x i8> %tmp1, <i8 0, i8 0, i8 0, i8 1, i8 0, i8 0, i8 0, i8 1, i8 0, i8 0, i8 0, i8 1, i8 0, i8 0, i8 0, i8 1>
+ ret <16 x i8> %tmp3
}
define <8 x i8> @v_bicimm(ptr %A) nounwind {
; CHECK-LABEL: v_bicimm:
-; CHECK-NOT: mov
-; CHECK-NOT: mvn
-; CHECK: bic
- %tmp1 = load <8 x i8>, ptr %A
- %tmp3 = and <8 x i8> %tmp1, < i8 -1, i8 -1, i8 -1, i8 0, i8 -1, i8 -1, i8 -1, i8 0 >
- ret <8 x i8> %tmp3
+; CHECK: // %bb.0:
+; CHECK-NEXT: ldr d0, [x0]
+; CHECK-NEXT: bic.2s v0, #255, lsl #24
+; CHECK-NEXT: ret
+ %tmp1 = load <8 x i8>, ptr %A
+ %tmp3 = and <8 x i8> %tmp1, < i8 -1, i8 -1, i8 -1, i8 0, i8 -1, i8 -1, i8 -1, i8 0 >
+ ret <8 x i8> %tmp3
}
define <16 x i8> @v_bicimmQ(ptr %A) nounwind {
; CHECK-LABEL: v_bicimmQ:
-; CHECK-NOT: mov
-; CHECK-NOT: mvn
-; CHECK: bic
- %tmp1 = load <16 x i8>, ptr %A
- %tmp3 = and <16 x i8> %tmp1, < i8 -1, i8 -1, i8 -1, i8 0, i8 -1, i8 -1, i8 -1, i8 0, i8 -1, i8 -1, i8 -1, i8 0, i8 -1, i8 -1, i8 -1, i8 0 >
- ret <16 x i8> %tmp3
+; CHECK: // %bb.0:
+; CHECK-NEXT: ldr q0, [x0]
+; CHECK-NEXT: bic.4s v0, #255, lsl #24
+; CHECK-NEXT: ret
+ %tmp1 = load <16 x i8>, ptr %A
+ %tmp3 = and <16 x i8> %tmp1, < i8 -1, i8 -1, i8 -1, i8 0, i8 -1, i8 -1, i8 -1, i8 0, i8 -1, i8 -1, i8 -1, i8 0, i8 -1, i8 -1, i8 -1, i8 0 >
+ ret <16 x i8> %tmp3
}
define <2 x double> @foo(<2 x double> %bar) nounwind {
-; CHECK: foo
-; CHECK: fmov.2d v1, #1.0000000
+; CHECK-LABEL: foo:
+; CHECK: // %bb.0:
+; CHECK-NEXT: fmov.2d v1, #1.00000000
+; CHECK-NEXT: fadd.2d v0, v0, v1
+; CHECK-NEXT: ret
%add = fadd <2 x double> %bar, <double 1.0, double 1.0>
ret <2 x double> %add
}
define <4 x i32> @movi_4s_imm_t1() nounwind readnone ssp {
-entry:
; CHECK-LABEL: movi_4s_imm_t1:
-; CHECK: movi.4s v0, #75
+; CHECK: // %bb.0: // %entry
+; CHECK-NEXT: movi.4s v0, #75
+; CHECK-NEXT: ret
+entry:
ret <4 x i32> <i32 75, i32 75, i32 75, i32 75>
}
define <4 x i32> @movi_4s_imm_t2() nounwind readnone ssp {
-entry:
; CHECK-LABEL: movi_4s_imm_t2:
-; CHECK: movi.4s v0, #75, lsl #8
+; CHECK: // %bb.0: // %entry
+; CHECK-NEXT: movi.4s v0, #75, lsl #8
+; CHECK-NEXT: ret
+entry:
ret <4 x i32> <i32 19200, i32 19200, i32 19200, i32 19200>
}
define <4 x i32> @movi_4s_imm_t3() nounwind readnone ssp {
-entry:
; CHECK-LABEL: movi_4s_imm_t3:
-; CHECK: movi.4s v0, #75, lsl #16
+; CHECK: // %bb.0: // %entry
+; CHECK-NEXT: movi.4s v0, #75, lsl #16
+; CHECK-NEXT: ret
+entry:
ret <4 x i32> <i32 4915200, i32 4915200, i32 4915200, i32 4915200>
}
define <4 x i32> @movi_4s_imm_t4() nounwind readnone ssp {
-entry:
; CHECK-LABEL: movi_4s_imm_t4:
-; CHECK: movi.4s v0, #75, lsl #24
+; CHECK: // %bb.0: // %entry
+; CHECK-NEXT: movi.4s v0, #75, lsl #24
+; CHECK-NEXT: ret
+entry:
ret <4 x i32> <i32 1258291200, i32 1258291200, i32 1258291200, i32 1258291200>
}
define <8 x i16> @movi_8h_imm_t5() nounwind readnone ssp {
-entry:
; CHECK-LABEL: movi_8h_imm_t5:
-; CHECK: movi.8h v0, #75
+; CHECK: // %bb.0: // %entry
+; CHECK-NEXT: movi.8h v0, #75
+; CHECK-NEXT: ret
+entry:
ret <8 x i16> <i16 75, i16 75, i16 75, i16 75, i16 75, i16 75, i16 75, i16 75>
}
; rdar://11989841
define <8 x i16> @movi_8h_imm_t6() nounwind readnone ssp {
-entry:
; CHECK-LABEL: movi_8h_imm_t6:
-; CHECK: movi.8h v0, #75, lsl #8
+; CHECK: // %bb.0: // %entry
+; CHECK-NEXT: movi.8h v0, #75, lsl #8
+; CHECK-NEXT: ret
+entry:
ret <8 x i16> <i16 19200, i16 19200, i16 19200, i16 19200, i16 19200, i16 19200, i16 19200, i16 19200>
}
define <4 x i32> @movi_4s_imm_t7() nounwind readnone ssp {
-entry:
; CHECK-LABEL: movi_4s_imm_t7:
-; CHECK: movi.4s v0, #75, msl #8
-ret <4 x i32> <i32 19455, i32 19455, i32 19455, i32 19455>
+; CHECK: // %bb.0: // %entry
+; CHECK-NEXT: movi.4s v0, #75, msl #8
+; CHECK-NEXT: ret
+entry:
+ ret <4 x i32> <i32 19455, i32 19455, i32 19455, i32 19455>
}
define <4 x i32> @movi_4s_imm_t8() nounwind readnone ssp {
-entry:
; CHECK-LABEL: movi_4s_imm_t8:
-; CHECK: movi.4s v0, #75, msl #16
-ret <4 x i32> <i32 4980735, i32 4980735, i32 4980735, i32 4980735>
+; CHECK: // %bb.0: // %entry
+; CHECK-NEXT: movi.4s v0, #75, msl #16
+; CHECK-NEXT: ret
+entry:
+ ret <4 x i32> <i32 4980735, i32 4980735, i32 4980735, i32 4980735>
}
define <16 x i8> @movi_16b_imm_t9() nounwind readnone ssp {
-entry:
; CHECK-LABEL: movi_16b_imm_t9:
-; CHECK: movi.16b v0, #75
-ret <16 x i8> <i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75,
- i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75>
+; CHECK: // %bb.0: // %entry
+; CHECK-NEXT: movi.16b v0, #75
+; CHECK-NEXT: ret
+entry:
+ ret <16 x i8> <i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75, i8 75>
}
define <2 x i64> @movi_2d_imm_t10() nounwind readnone ssp {
-entry:
; CHECK-LABEL: movi_2d_imm_t10:
-; CHECK: movi.2d v0, #0xff00ff00ff00ff
-ret <2 x i64> <i64 71777214294589695, i64 71777214294589695>
+; CHECK: // %bb.0: // %entry
+; CHECK-NEXT: movi.2d v0, #0xff00ff00ff00ff
+; CHECK-NEXT: ret
+entry:
+ ret <2 x i64> <i64 71777214294589695, i64 71777214294589695>
}
define <4 x i32> @movi_4s_imm_t11() nounwind readnone ssp {
-entry:
; CHECK-LABEL: movi_4s_imm_t11:
-; CHECK: fmov.4s v0, #-0.32812500
-ret <4 x i32> <i32 3198681088, i32 3198681088, i32 3198681088, i32 3198681088>
+; CHECK: // %bb.0: // %entry
+; CHECK-NEXT: fmov.4s v0, #-0.32812500
+; CHECK-NEXT: ret
+entry:
+ ret <4 x i32> <i32 3198681088, i32 3198681088, i32 3198681088, i32 3198681088>
}
define <2 x i64> @movi_2d_imm_t12() nounwind readnone ssp {
-entry:
; CHECK-LABEL: movi_2d_imm_t12:
-; CHECK: fmov.2d v0, #-0.17187500
-ret <2 x i64> <i64 13818732506632945664, i64 13818732506632945664>
+; CHECK: // %bb.0: // %entry
+; CHECK-NEXT: fmov.2d v0, #-0.17187500
+; CHECK-NEXT: ret
+entry:
+ ret <2 x i64> <i64 13818732506632945664, i64 13818732506632945664>
}
More information about the llvm-commits
mailing list