[llvm] aa7e873 - [AArch64] Regenerate fmin/fmax/memcpy legalization tests. NFC

David Green via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 1 11:04:37 PST 2023


Author: David Green
Date: 2023-12-01T19:04:29Z
New Revision: aa7e873f2f52938ffa4d4711dbe494feb49535c8

URL: https://github.com/llvm/llvm-project/commit/aa7e873f2f52938ffa4d4711dbe494feb49535c8
DIFF: https://github.com/llvm/llvm-project/commit/aa7e873f2f52938ffa4d4711dbe494feb49535c8.diff

LOG: [AArch64] Regenerate fmin/fmax/memcpy legalization tests. NFC

Added: 
    

Modified: 
    llvm/test/CodeGen/AArch64/GlobalISel/legalize-fmaxnum.mir
    llvm/test/CodeGen/AArch64/GlobalISel/legalize-fminnum.mir
    llvm/test/CodeGen/AArch64/GlobalISel/legalize-memcpy-et-al.mir

Removed: 
    


################################################################################
diff  --git a/llvm/test/CodeGen/AArch64/GlobalISel/legalize-fmaxnum.mir b/llvm/test/CodeGen/AArch64/GlobalISel/legalize-fmaxnum.mir
index f947923e7e569c7..01b60f5584062c2 100644
--- a/llvm/test/CodeGen/AArch64/GlobalISel/legalize-fmaxnum.mir
+++ b/llvm/test/CodeGen/AArch64/GlobalISel/legalize-fmaxnum.mir
@@ -9,20 +9,25 @@ body:             |
   bb.0:
     liveins: $h0, $h1
     ; FP16-LABEL: name: s16_legal_with_full_fp16
-    ; FP16: %a:_(s16) = COPY $h0
-    ; FP16: %b:_(s16) = COPY $h1
-    ; FP16: %maxnum:_(s16) = G_FMAXNUM %a, %b
-    ; FP16: $h0 = COPY %maxnum(s16)
-    ; FP16: RET_ReallyLR implicit $h0
+    ; FP16: liveins: $h0, $h1
+    ; FP16-NEXT: {{  $}}
+    ; FP16-NEXT: %a:_(s16) = COPY $h0
+    ; FP16-NEXT: %b:_(s16) = COPY $h1
+    ; FP16-NEXT: %maxnum:_(s16) = G_FMAXNUM %a, %b
+    ; FP16-NEXT: $h0 = COPY %maxnum(s16)
+    ; FP16-NEXT: RET_ReallyLR implicit $h0
+    ;
     ; NO-FP16-LABEL: name: s16_legal_with_full_fp16
-    ; NO-FP16: %a:_(s16) = COPY $h0
-    ; NO-FP16: %b:_(s16) = COPY $h1
-    ; NO-FP16: [[FPEXT:%[0-9]+]]:_(s32) = G_FPEXT %a(s16)
-    ; NO-FP16: [[FPEXT1:%[0-9]+]]:_(s32) = G_FPEXT %b(s16)
-    ; NO-FP16: [[FMAXNUM:%[0-9]+]]:_(s32) = G_FMAXNUM [[FPEXT]], [[FPEXT1]]
-    ; NO-FP16: %maxnum:_(s16) = G_FPTRUNC [[FMAXNUM]](s32)
-    ; NO-FP16: $h0 = COPY %maxnum(s16)
-    ; NO-FP16: RET_ReallyLR implicit $h0
+    ; NO-FP16: liveins: $h0, $h1
+    ; NO-FP16-NEXT: {{  $}}
+    ; NO-FP16-NEXT: %a:_(s16) = COPY $h0
+    ; NO-FP16-NEXT: %b:_(s16) = COPY $h1
+    ; NO-FP16-NEXT: [[FPEXT:%[0-9]+]]:_(s32) = G_FPEXT %a(s16)
+    ; NO-FP16-NEXT: [[FPEXT1:%[0-9]+]]:_(s32) = G_FPEXT %b(s16)
+    ; NO-FP16-NEXT: [[FMAXNUM:%[0-9]+]]:_(s32) = G_FMAXNUM [[FPEXT]], [[FPEXT1]]
+    ; NO-FP16-NEXT: %maxnum:_(s16) = G_FPTRUNC [[FMAXNUM]](s32)
+    ; NO-FP16-NEXT: $h0 = COPY %maxnum(s16)
+    ; NO-FP16-NEXT: RET_ReallyLR implicit $h0
     %a:_(s16) = COPY $h0
     %b:_(s16) = COPY $h1
     %maxnum:_(s16) = G_FMAXNUM %a, %b
@@ -37,17 +42,22 @@ body:             |
   bb.0:
     liveins: $s0, $s1
     ; FP16-LABEL: name: s32_legal
-    ; FP16: %a:_(s32) = COPY $s0
-    ; FP16: %b:_(s32) = COPY $s1
-    ; FP16: %maxnum:_(s32) = G_FMAXNUM %a, %b
-    ; FP16: $s0 = COPY %maxnum(s32)
-    ; FP16: RET_ReallyLR implicit $s0
+    ; FP16: liveins: $s0, $s1
+    ; FP16-NEXT: {{  $}}
+    ; FP16-NEXT: %a:_(s32) = COPY $s0
+    ; FP16-NEXT: %b:_(s32) = COPY $s1
+    ; FP16-NEXT: %maxnum:_(s32) = G_FMAXNUM %a, %b
+    ; FP16-NEXT: $s0 = COPY %maxnum(s32)
+    ; FP16-NEXT: RET_ReallyLR implicit $s0
+    ;
     ; NO-FP16-LABEL: name: s32_legal
-    ; NO-FP16: %a:_(s32) = COPY $s0
-    ; NO-FP16: %b:_(s32) = COPY $s1
-    ; NO-FP16: %maxnum:_(s32) = G_FMAXNUM %a, %b
-    ; NO-FP16: $s0 = COPY %maxnum(s32)
-    ; NO-FP16: RET_ReallyLR implicit $s0
+    ; NO-FP16: liveins: $s0, $s1
+    ; NO-FP16-NEXT: {{  $}}
+    ; NO-FP16-NEXT: %a:_(s32) = COPY $s0
+    ; NO-FP16-NEXT: %b:_(s32) = COPY $s1
+    ; NO-FP16-NEXT: %maxnum:_(s32) = G_FMAXNUM %a, %b
+    ; NO-FP16-NEXT: $s0 = COPY %maxnum(s32)
+    ; NO-FP16-NEXT: RET_ReallyLR implicit $s0
     %a:_(s32) = COPY $s0
     %b:_(s32) = COPY $s1
     %maxnum:_(s32) = G_FMAXNUM %a, %b
@@ -62,17 +72,22 @@ body:             |
   bb.0:
     liveins: $d0, $d1
     ; FP16-LABEL: name: s64_legal
-    ; FP16: %a:_(s64) = COPY $d0
-    ; FP16: %b:_(s64) = COPY $d1
-    ; FP16: %maxnum:_(s64) = G_FMAXNUM %a, %b
-    ; FP16: $d0 = COPY %maxnum(s64)
-    ; FP16: RET_ReallyLR implicit $d0
+    ; FP16: liveins: $d0, $d1
+    ; FP16-NEXT: {{  $}}
+    ; FP16-NEXT: %a:_(s64) = COPY $d0
+    ; FP16-NEXT: %b:_(s64) = COPY $d1
+    ; FP16-NEXT: %maxnum:_(s64) = G_FMAXNUM %a, %b
+    ; FP16-NEXT: $d0 = COPY %maxnum(s64)
+    ; FP16-NEXT: RET_ReallyLR implicit $d0
+    ;
     ; NO-FP16-LABEL: name: s64_legal
-    ; NO-FP16: %a:_(s64) = COPY $d0
-    ; NO-FP16: %b:_(s64) = COPY $d1
-    ; NO-FP16: %maxnum:_(s64) = G_FMAXNUM %a, %b
-    ; NO-FP16: $d0 = COPY %maxnum(s64)
-    ; NO-FP16: RET_ReallyLR implicit $d0
+    ; NO-FP16: liveins: $d0, $d1
+    ; NO-FP16-NEXT: {{  $}}
+    ; NO-FP16-NEXT: %a:_(s64) = COPY $d0
+    ; NO-FP16-NEXT: %b:_(s64) = COPY $d1
+    ; NO-FP16-NEXT: %maxnum:_(s64) = G_FMAXNUM %a, %b
+    ; NO-FP16-NEXT: $d0 = COPY %maxnum(s64)
+    ; NO-FP16-NEXT: RET_ReallyLR implicit $d0
     %a:_(s64) = COPY $d0
     %b:_(s64) = COPY $d1
     %maxnum:_(s64) = G_FMAXNUM %a, %b
@@ -87,27 +102,32 @@ body:             |
   bb.0:
     liveins: $q0, $q1
     ; FP16-LABEL: name: s128_libcall
-    ; FP16: %a:_(s128) = COPY $q0
-    ; FP16: %b:_(s128) = COPY $q1
-    ; FP16: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
-    ; FP16: $q0 = COPY %a(s128)
-    ; FP16: $q1 = COPY %b(s128)
-    ; FP16: BL &fmaxl, csr_aarch64_aapcs, implicit-def $lr, implicit $sp, implicit $q0, implicit $q1, implicit-def $q0
-    ; FP16: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
-    ; FP16: %maxnum:_(s128) = COPY $q0
-    ; FP16: $q0 = COPY %maxnum(s128)
-    ; FP16: RET_ReallyLR implicit $q0
+    ; FP16: liveins: $q0, $q1
+    ; FP16-NEXT: {{  $}}
+    ; FP16-NEXT: %a:_(s128) = COPY $q0
+    ; FP16-NEXT: %b:_(s128) = COPY $q1
+    ; FP16-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
+    ; FP16-NEXT: $q0 = COPY %a(s128)
+    ; FP16-NEXT: $q1 = COPY %b(s128)
+    ; FP16-NEXT: BL &fmaxl, csr_aarch64_aapcs, implicit-def $lr, implicit $sp, implicit $q0, implicit $q1, implicit-def $q0
+    ; FP16-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
+    ; FP16-NEXT: %maxnum:_(s128) = COPY $q0
+    ; FP16-NEXT: $q0 = COPY %maxnum(s128)
+    ; FP16-NEXT: RET_ReallyLR implicit $q0
+    ;
     ; NO-FP16-LABEL: name: s128_libcall
-    ; NO-FP16: %a:_(s128) = COPY $q0
-    ; NO-FP16: %b:_(s128) = COPY $q1
-    ; NO-FP16: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
-    ; NO-FP16: $q0 = COPY %a(s128)
-    ; NO-FP16: $q1 = COPY %b(s128)
-    ; NO-FP16: BL &fmaxl, csr_aarch64_aapcs, implicit-def $lr, implicit $sp, implicit $q0, implicit $q1, implicit-def $q0
-    ; NO-FP16: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
-    ; NO-FP16: %maxnum:_(s128) = COPY $q0
-    ; NO-FP16: $q0 = COPY %maxnum(s128)
-    ; NO-FP16: RET_ReallyLR implicit $q0
+    ; NO-FP16: liveins: $q0, $q1
+    ; NO-FP16-NEXT: {{  $}}
+    ; NO-FP16-NEXT: %a:_(s128) = COPY $q0
+    ; NO-FP16-NEXT: %b:_(s128) = COPY $q1
+    ; NO-FP16-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
+    ; NO-FP16-NEXT: $q0 = COPY %a(s128)
+    ; NO-FP16-NEXT: $q1 = COPY %b(s128)
+    ; NO-FP16-NEXT: BL &fmaxl, csr_aarch64_aapcs, implicit-def $lr, implicit $sp, implicit $q0, implicit $q1, implicit-def $q0
+    ; NO-FP16-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
+    ; NO-FP16-NEXT: %maxnum:_(s128) = COPY $q0
+    ; NO-FP16-NEXT: $q0 = COPY %maxnum(s128)
+    ; NO-FP16-NEXT: RET_ReallyLR implicit $q0
     %a:_(s128) = COPY $q0
     %b:_(s128) = COPY $q1
     %maxnum:_(s128) = G_FMAXNUM %a, %b

diff  --git a/llvm/test/CodeGen/AArch64/GlobalISel/legalize-fminnum.mir b/llvm/test/CodeGen/AArch64/GlobalISel/legalize-fminnum.mir
index d9695e01aa30aa5..2d6f9f9e774c7d6 100644
--- a/llvm/test/CodeGen/AArch64/GlobalISel/legalize-fminnum.mir
+++ b/llvm/test/CodeGen/AArch64/GlobalISel/legalize-fminnum.mir
@@ -130,6 +130,16 @@ alignment:       4
 body:             |
   bb.1.entry:
     liveins: $q0, $q1
+    ; CHECK-LABEL: name: v3s32_widen
+    ; CHECK: liveins: $q0, $q1
+    ; CHECK-NEXT: {{  $}}
+    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x s64>) = COPY $q0
+    ; CHECK-NEXT: [[BITCAST:%[0-9]+]]:_(<4 x s32>) = G_BITCAST [[COPY]](<2 x s64>)
+    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(<2 x s64>) = COPY $q1
+    ; CHECK-NEXT: [[BITCAST1:%[0-9]+]]:_(<4 x s32>) = G_BITCAST [[COPY1]](<2 x s64>)
+    ; CHECK-NEXT: [[FMINNUM:%[0-9]+]]:_(<4 x s32>) = G_FMINNUM [[BITCAST]], [[BITCAST1]]
+    ; CHECK-NEXT: $q0 = COPY [[FMINNUM]](<4 x s32>)
+    ; CHECK-NEXT: RET_ReallyLR implicit $q0
     %2:_(<2 x s64>) = COPY $q0
     %3:_(<4 x s32>) = G_BITCAST %2:_(<2 x s64>)
     %4:_(s32), %5:_(s32), %6:_(s32), %7:_(s32) = G_UNMERGE_VALUES %3:_(<4 x s32>)

diff  --git a/llvm/test/CodeGen/AArch64/GlobalISel/legalize-memcpy-et-al.mir b/llvm/test/CodeGen/AArch64/GlobalISel/legalize-memcpy-et-al.mir
index 627b98bef44a363..ef09ce3fa77a9c5 100644
--- a/llvm/test/CodeGen/AArch64/GlobalISel/legalize-memcpy-et-al.mir
+++ b/llvm/test/CodeGen/AArch64/GlobalISel/legalize-memcpy-et-al.mir
@@ -10,17 +10,18 @@ body:             |
 
     ; CHECK-LABEL: name: test_memcpy
     ; CHECK: liveins: $w2, $x0, $x1
-    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
-    ; CHECK: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
-    ; CHECK: [[COPY2:%[0-9]+]]:_(s32) = COPY $w2
-    ; CHECK: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY2]](s32)
-    ; CHECK: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: $x1 = COPY [[COPY1]](p0)
-    ; CHECK: $x2 = COPY [[ZEXT]](s64)
-    ; CHECK: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
-    ; CHECK: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: RET_ReallyLR
+    ; CHECK-NEXT: {{  $}}
+    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
+    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
+    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $w2
+    ; CHECK-NEXT: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY2]](s32)
+    ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: $x1 = COPY [[COPY1]](p0)
+    ; CHECK-NEXT: $x2 = COPY [[ZEXT]](s64)
+    ; CHECK-NEXT: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
+    ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: RET_ReallyLR
     %0:_(p0) = COPY $x0
     %1:_(p0) = COPY $x1
     %2:_(s32) = COPY $w2
@@ -38,14 +39,15 @@ body:             |
 
     ; CHECK-LABEL: name: test_memcpy_tail
     ; CHECK: liveins: $w2, $x0, $x1
-    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
-    ; CHECK: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
-    ; CHECK: [[COPY2:%[0-9]+]]:_(s32) = COPY $w2
-    ; CHECK: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY2]](s32)
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: $x1 = COPY [[COPY1]](p0)
-    ; CHECK: $x2 = COPY [[ZEXT]](s64)
-    ; CHECK: TCRETURNdi &memcpy, 0, csr_aarch64_aapcs, implicit $sp, implicit $x0, implicit $x1, implicit $x2
+    ; CHECK-NEXT: {{  $}}
+    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
+    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
+    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $w2
+    ; CHECK-NEXT: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY2]](s32)
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: $x1 = COPY [[COPY1]](p0)
+    ; CHECK-NEXT: $x2 = COPY [[ZEXT]](s64)
+    ; CHECK-NEXT: TCRETURNdi &memcpy, 0, csr_aarch64_aapcs, implicit $sp, implicit $x0, implicit $x1, implicit $x2
     %0:_(p0) = COPY $x0
     %1:_(p0) = COPY $x1
     %2:_(s32) = COPY $w2
@@ -63,17 +65,18 @@ body:             |
 
     ; CHECK-LABEL: name: test_memmove
     ; CHECK: liveins: $w2, $x0, $x1
-    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
-    ; CHECK: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
-    ; CHECK: [[COPY2:%[0-9]+]]:_(s32) = COPY $w2
-    ; CHECK: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY2]](s32)
-    ; CHECK: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: $x1 = COPY [[COPY1]](p0)
-    ; CHECK: $x2 = COPY [[ZEXT]](s64)
-    ; CHECK: BL &memmove, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
-    ; CHECK: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: RET_ReallyLR
+    ; CHECK-NEXT: {{  $}}
+    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
+    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
+    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $w2
+    ; CHECK-NEXT: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY2]](s32)
+    ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: $x1 = COPY [[COPY1]](p0)
+    ; CHECK-NEXT: $x2 = COPY [[ZEXT]](s64)
+    ; CHECK-NEXT: BL &memmove, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
+    ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: RET_ReallyLR
     %0:_(p0) = COPY $x0
     %1:_(p0) = COPY $x1
     %2:_(s32) = COPY $w2
@@ -91,17 +94,18 @@ body:             |
 
     ; CHECK-LABEL: name: test_memset
     ; CHECK: liveins: $w1, $w2, $x0
-    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
-    ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY $w1
-    ; CHECK: [[COPY2:%[0-9]+]]:_(s32) = COPY $w2
-    ; CHECK: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY2]](s32)
-    ; CHECK: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: $w1 = COPY [[COPY1]](s32)
-    ; CHECK: $x2 = COPY [[ZEXT]](s64)
-    ; CHECK: BL &memset, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $w1, implicit $x2
-    ; CHECK: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: RET_ReallyLR
+    ; CHECK-NEXT: {{  $}}
+    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
+    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $w1
+    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $w2
+    ; CHECK-NEXT: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY2]](s32)
+    ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: $w1 = COPY [[COPY1]](s32)
+    ; CHECK-NEXT: $x2 = COPY [[ZEXT]](s64)
+    ; CHECK-NEXT: BL &memset, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $w1, implicit $x2
+    ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: RET_ReallyLR
     %0:_(p0) = COPY $x0
     %1:_(s32) = COPY $w1
     %2:_(s32) = COPY $w2
@@ -120,18 +124,19 @@ body:             |
 
     ; CHECK-LABEL: name: no_tail_call
     ; CHECK: liveins: $w2, $x0, $x1
-    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x1
-    ; CHECK: [[COPY1:%[0-9]+]]:_(p0) = COPY $x0
-    ; CHECK: [[COPY2:%[0-9]+]]:_(s32) = COPY $w2
-    ; CHECK: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY2]](s32)
-    ; CHECK: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: $x1 = COPY [[COPY1]](p0)
-    ; CHECK: $x2 = COPY [[ZEXT]](s64)
-    ; CHECK: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
-    ; CHECK: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x0 = COPY [[ZEXT]](s64)
-    ; CHECK: RET_ReallyLR implicit $x0
+    ; CHECK-NEXT: {{  $}}
+    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x1
+    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $x0
+    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $w2
+    ; CHECK-NEXT: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY2]](s32)
+    ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: $x1 = COPY [[COPY1]](p0)
+    ; CHECK-NEXT: $x2 = COPY [[ZEXT]](s64)
+    ; CHECK-NEXT: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
+    ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x0 = COPY [[ZEXT]](s64)
+    ; CHECK-NEXT: RET_ReallyLR implicit $x0
     %0:_(p0) = COPY $x1
     %1:_(p0) = COPY $x0
     %2:_(s32) = COPY $w2
@@ -149,17 +154,18 @@ body:             |
     liveins: $w2, $x0, $x1
     ; CHECK-LABEL: name: dont_tc_twice
     ; CHECK: liveins: $w2, $x0, $x1
-    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
-    ; CHECK: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
-    ; CHECK: [[COPY2:%[0-9]+]]:_(s32) = COPY $w2
-    ; CHECK: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY2]](s32)
-    ; CHECK: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: $x1 = COPY [[COPY1]](p0)
-    ; CHECK: $x2 = COPY [[ZEXT]](s64)
-    ; CHECK: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
-    ; CHECK: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: TCRETURNdi &memset, 0, csr_aarch64_aapcs, implicit $sp
+    ; CHECK-NEXT: {{  $}}
+    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
+    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
+    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $w2
+    ; CHECK-NEXT: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[COPY2]](s32)
+    ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: $x1 = COPY [[COPY1]](p0)
+    ; CHECK-NEXT: $x2 = COPY [[ZEXT]](s64)
+    ; CHECK-NEXT: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
+    ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: TCRETURNdi &memset, 0, csr_aarch64_aapcs, implicit $sp
     %0:_(p0) = COPY $x0
     %1:_(p0) = COPY $x1
     %2:_(s32) = COPY $w2
@@ -190,13 +196,14 @@ body:             |
 
     ; CHECK-LABEL: name: tail_with_copy_ret
     ; CHECK: liveins: $x0, $x1, $x2
-    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
-    ; CHECK: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
-    ; CHECK: [[COPY2:%[0-9]+]]:_(s64) = COPY $x2
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: $x1 = COPY [[COPY1]](p0)
-    ; CHECK: $x2 = COPY [[COPY2]](s64)
-    ; CHECK: TCRETURNdi &memcpy, 0, csr_aarch64_aapcs, implicit $sp, implicit $x0, implicit $x1, implicit $x2
+    ; CHECK-NEXT: {{  $}}
+    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
+    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
+    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s64) = COPY $x2
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: $x1 = COPY [[COPY1]](p0)
+    ; CHECK-NEXT: $x2 = COPY [[COPY2]](s64)
+    ; CHECK-NEXT: TCRETURNdi &memcpy, 0, csr_aarch64_aapcs, implicit $sp, implicit $x0, implicit $x1, implicit $x2
     %0:_(p0) = COPY $x0
     %1:_(p0) = COPY $x1
     %2:_(s64) = COPY $x2
@@ -226,17 +233,18 @@ body:             |
 
     ; CHECK-LABEL: name: dont_tc_mismatched_copies
     ; CHECK: liveins: $x0, $x1, $x2
-    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
-    ; CHECK: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
-    ; CHECK: [[COPY2:%[0-9]+]]:_(s64) = COPY $x2
-    ; CHECK: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: $x1 = COPY [[COPY1]](p0)
-    ; CHECK: $x2 = COPY [[COPY2]](s64)
-    ; CHECK: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
-    ; CHECK: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x1 = COPY [[COPY]](p0)
-    ; CHECK: RET_ReallyLR implicit $x0
+    ; CHECK-NEXT: {{  $}}
+    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
+    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
+    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s64) = COPY $x2
+    ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: $x1 = COPY [[COPY1]](p0)
+    ; CHECK-NEXT: $x2 = COPY [[COPY2]](s64)
+    ; CHECK-NEXT: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
+    ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x1 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: RET_ReallyLR implicit $x0
     %0:_(p0) = COPY $x0
     %1:_(p0) = COPY $x1
     %2:_(s64) = COPY $x2
@@ -266,18 +274,19 @@ body:             |
 
     ; CHECK-LABEL: name: dont_tc_extra_copy
     ; CHECK: liveins: $x0, $x1, $x2
-    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
-    ; CHECK: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
-    ; CHECK: [[COPY2:%[0-9]+]]:_(s64) = COPY $x2
-    ; CHECK: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: $x1 = COPY [[COPY1]](p0)
-    ; CHECK: $x2 = COPY [[COPY2]](s64)
-    ; CHECK: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
-    ; CHECK: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: RET_ReallyLR implicit $x0
+    ; CHECK-NEXT: {{  $}}
+    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
+    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
+    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s64) = COPY $x2
+    ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: $x1 = COPY [[COPY1]](p0)
+    ; CHECK-NEXT: $x2 = COPY [[COPY2]](s64)
+    ; CHECK-NEXT: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
+    ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: RET_ReallyLR implicit $x0
     %0:_(p0) = COPY $x0
     %1:_(p0) = COPY $x1
     %2:_(s64) = COPY $x2
@@ -308,17 +317,18 @@ body:             |
 
     ; CHECK-LABEL: name: dont_tc_mismatched_ret
     ; CHECK: liveins: $x0, $x1, $x2
-    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x1
-    ; CHECK: [[COPY1:%[0-9]+]]:_(p0) = COPY $x0
-    ; CHECK: [[COPY2:%[0-9]+]]:_(s64) = COPY $x2
-    ; CHECK: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: $x1 = COPY [[COPY1]](p0)
-    ; CHECK: $x2 = COPY [[COPY2]](s64)
-    ; CHECK: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
-    ; CHECK: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x1 = COPY [[COPY]](p0)
-    ; CHECK: RET_ReallyLR implicit $x0
+    ; CHECK-NEXT: {{  $}}
+    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x1
+    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $x0
+    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s64) = COPY $x2
+    ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: $x1 = COPY [[COPY1]](p0)
+    ; CHECK-NEXT: $x2 = COPY [[COPY2]](s64)
+    ; CHECK-NEXT: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
+    ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x1 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: RET_ReallyLR implicit $x0
     %0:_(p0) = COPY $x1
     %1:_(p0) = COPY $x0
     %2:_(s64) = COPY $x2
@@ -348,17 +358,18 @@ body:             |
 
     ; CHECK-LABEL: name: dont_tc_ret_void_copy
     ; CHECK: liveins: $x0, $x1, $x2
-    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
-    ; CHECK: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
-    ; CHECK: [[COPY2:%[0-9]+]]:_(s64) = COPY $x2
-    ; CHECK: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: $x1 = COPY [[COPY1]](p0)
-    ; CHECK: $x2 = COPY [[COPY2]](s64)
-    ; CHECK: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
-    ; CHECK: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
-    ; CHECK: $x0 = COPY [[COPY]](p0)
-    ; CHECK: RET_ReallyLR
+    ; CHECK-NEXT: {{  $}}
+    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
+    ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(p0) = COPY $x1
+    ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s64) = COPY $x2
+    ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: $x1 = COPY [[COPY1]](p0)
+    ; CHECK-NEXT: $x2 = COPY [[COPY2]](s64)
+    ; CHECK-NEXT: BL &memcpy, csr_aarch64_aapcs_thisreturn, implicit-def $lr, implicit $sp, implicit $x0, implicit $x1, implicit $x2
+    ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $sp, implicit $sp
+    ; CHECK-NEXT: $x0 = COPY [[COPY]](p0)
+    ; CHECK-NEXT: RET_ReallyLR
     %0:_(p0) = COPY $x0
     %1:_(p0) = COPY $x1
     %2:_(s64) = COPY $x2


        


More information about the llvm-commits mailing list