diff --git a/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp b/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp --- a/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp +++ b/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp @@ -793,7 +793,12 @@ // Zero out FP/vector registers. for (MCRegister Reg : FPRsToZero.set_bits()) - BuildMI(MBB, MBBI, DL, TII.get(AArch64::MOVID), Reg).addImm(0); + if (HasSVE) + BuildMI(MBB, MBBI, DL, TII.get(AArch64::DUP_ZI_D), Reg) + .addImm(0) + .addImm(0); + else + BuildMI(MBB, MBBI, DL, TII.get(AArch64::MOVIv2d_ns), Reg).addImm(0); if (HasSVE) { for (MCRegister PReg : diff --git a/llvm/test/CodeGen/AArch64/zero-call-used-regs.ll b/llvm/test/CodeGen/AArch64/zero-call-used-regs.ll --- a/llvm/test/CodeGen/AArch64/zero-call-used-regs.ll +++ b/llvm/test/CodeGen/AArch64/zero-call-used-regs.ll @@ -1,6 +1,6 @@ ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py -; RUN: llc < %s -mtriple=aarch64-unknown-unknown | FileCheck %s --check-prefixes=CHECK,DEFAULT -; RUN: llc < %s -mtriple=aarch64-unknown-unknown -mattr=+sve | FileCheck %s --check-prefixes=CHECK,SVE +; RUN: llc < %s -verify-machineinstrs -mtriple=aarch64-unknown-unknown | FileCheck %s --check-prefixes=CHECK,DEFAULT +; RUN: llc < %s -verify-machineinstrs -mtriple=aarch64-unknown-unknown -mattr=+sve | FileCheck %s --check-prefixes=CHECK,SVE @result = dso_local global i32 0, align 4 @@ -146,14 +146,14 @@ ; DEFAULT-NEXT: mov x7, #0 ; DEFAULT-NEXT: mov x8, #0 ; DEFAULT-NEXT: mov x18, #0 -; DEFAULT-NEXT: movi q0, #0000000000000000 -; DEFAULT-NEXT: movi q1, #0000000000000000 -; DEFAULT-NEXT: movi q2, #0000000000000000 -; DEFAULT-NEXT: movi q3, #0000000000000000 -; DEFAULT-NEXT: movi q4, #0000000000000000 -; DEFAULT-NEXT: movi q5, #0000000000000000 -; DEFAULT-NEXT: movi q6, #0000000000000000 -; DEFAULT-NEXT: movi q7, #0000000000000000 +; DEFAULT-NEXT: movi v0.2d, #0000000000000000 +; DEFAULT-NEXT: movi v1.2d, #0000000000000000 +; DEFAULT-NEXT: movi v2.2d, #0000000000000000 +; DEFAULT-NEXT: movi v3.2d, #0000000000000000 +; DEFAULT-NEXT: movi v4.2d, #0000000000000000 +; DEFAULT-NEXT: movi v5.2d, #0000000000000000 +; DEFAULT-NEXT: movi v6.2d, #0000000000000000 +; DEFAULT-NEXT: movi v7.2d, #0000000000000000 ; DEFAULT-NEXT: ret ; ; SVE-LABEL: all_arg: @@ -169,14 +169,14 @@ ; SVE-NEXT: mov x7, #0 ; SVE-NEXT: mov x8, #0 ; SVE-NEXT: mov x18, #0 -; SVE-NEXT: movi z0, #0000000000000000 -; SVE-NEXT: movi z1, #0000000000000000 -; SVE-NEXT: movi z2, #0000000000000000 -; SVE-NEXT: movi z3, #0000000000000000 -; SVE-NEXT: movi z4, #0000000000000000 -; SVE-NEXT: movi z5, #0000000000000000 -; SVE-NEXT: movi z6, #0000000000000000 -; SVE-NEXT: movi z7, #0000000000000000 +; SVE-NEXT: mov z0.d, #0 // =0x0 +; SVE-NEXT: mov z1.d, #0 // =0x0 +; SVE-NEXT: mov z2.d, #0 // =0x0 +; SVE-NEXT: mov z3.d, #0 // =0x0 +; SVE-NEXT: mov z4.d, #0 // =0x0 +; SVE-NEXT: mov z5.d, #0 // =0x0 +; SVE-NEXT: mov z6.d, #0 // =0x0 +; SVE-NEXT: mov z7.d, #0 // =0x0 ; SVE-NEXT: pfalse p0.b ; SVE-NEXT: pfalse p1.b ; SVE-NEXT: pfalse p2.b @@ -212,38 +212,38 @@ ; DEFAULT-NEXT: mov x16, #0 ; DEFAULT-NEXT: mov x17, #0 ; DEFAULT-NEXT: mov x18, #0 -; DEFAULT-NEXT: movi q0, #0000000000000000 -; DEFAULT-NEXT: movi q1, #0000000000000000 -; DEFAULT-NEXT: movi q2, #0000000000000000 -; DEFAULT-NEXT: movi q3, #0000000000000000 -; DEFAULT-NEXT: movi q4, #0000000000000000 -; DEFAULT-NEXT: movi q5, #0000000000000000 -; DEFAULT-NEXT: movi q6, #0000000000000000 -; DEFAULT-NEXT: movi q7, #0000000000000000 -; DEFAULT-NEXT: movi q8, #0000000000000000 -; DEFAULT-NEXT: movi q9, #0000000000000000 -; DEFAULT-NEXT: movi q10, #0000000000000000 -; DEFAULT-NEXT: movi q11, #0000000000000000 -; DEFAULT-NEXT: movi q12, #0000000000000000 -; DEFAULT-NEXT: movi q13, #0000000000000000 -; DEFAULT-NEXT: movi q14, #0000000000000000 -; DEFAULT-NEXT: movi q15, #0000000000000000 -; DEFAULT-NEXT: movi q16, #0000000000000000 -; DEFAULT-NEXT: movi q17, #0000000000000000 -; DEFAULT-NEXT: movi q18, #0000000000000000 -; DEFAULT-NEXT: movi q19, #0000000000000000 -; DEFAULT-NEXT: movi q20, #0000000000000000 -; DEFAULT-NEXT: movi q21, #0000000000000000 -; DEFAULT-NEXT: movi q22, #0000000000000000 -; DEFAULT-NEXT: movi q23, #0000000000000000 -; DEFAULT-NEXT: movi q24, #0000000000000000 -; DEFAULT-NEXT: movi q25, #0000000000000000 -; DEFAULT-NEXT: movi q26, #0000000000000000 -; DEFAULT-NEXT: movi q27, #0000000000000000 -; DEFAULT-NEXT: movi q28, #0000000000000000 -; DEFAULT-NEXT: movi q29, #0000000000000000 -; DEFAULT-NEXT: movi q30, #0000000000000000 -; DEFAULT-NEXT: movi q31, #0000000000000000 +; DEFAULT-NEXT: movi v0.2d, #0000000000000000 +; DEFAULT-NEXT: movi v1.2d, #0000000000000000 +; DEFAULT-NEXT: movi v2.2d, #0000000000000000 +; DEFAULT-NEXT: movi v3.2d, #0000000000000000 +; DEFAULT-NEXT: movi v4.2d, #0000000000000000 +; DEFAULT-NEXT: movi v5.2d, #0000000000000000 +; DEFAULT-NEXT: movi v6.2d, #0000000000000000 +; DEFAULT-NEXT: movi v7.2d, #0000000000000000 +; DEFAULT-NEXT: movi v8.2d, #0000000000000000 +; DEFAULT-NEXT: movi v9.2d, #0000000000000000 +; DEFAULT-NEXT: movi v10.2d, #0000000000000000 +; DEFAULT-NEXT: movi v11.2d, #0000000000000000 +; DEFAULT-NEXT: movi v12.2d, #0000000000000000 +; DEFAULT-NEXT: movi v13.2d, #0000000000000000 +; DEFAULT-NEXT: movi v14.2d, #0000000000000000 +; DEFAULT-NEXT: movi v15.2d, #0000000000000000 +; DEFAULT-NEXT: movi v16.2d, #0000000000000000 +; DEFAULT-NEXT: movi v17.2d, #0000000000000000 +; DEFAULT-NEXT: movi v18.2d, #0000000000000000 +; DEFAULT-NEXT: movi v19.2d, #0000000000000000 +; DEFAULT-NEXT: movi v20.2d, #0000000000000000 +; DEFAULT-NEXT: movi v21.2d, #0000000000000000 +; DEFAULT-NEXT: movi v22.2d, #0000000000000000 +; DEFAULT-NEXT: movi v23.2d, #0000000000000000 +; DEFAULT-NEXT: movi v24.2d, #0000000000000000 +; DEFAULT-NEXT: movi v25.2d, #0000000000000000 +; DEFAULT-NEXT: movi v26.2d, #0000000000000000 +; DEFAULT-NEXT: movi v27.2d, #0000000000000000 +; DEFAULT-NEXT: movi v28.2d, #0000000000000000 +; DEFAULT-NEXT: movi v29.2d, #0000000000000000 +; DEFAULT-NEXT: movi v30.2d, #0000000000000000 +; DEFAULT-NEXT: movi v31.2d, #0000000000000000 ; DEFAULT-NEXT: ret ; ; SVE-LABEL: all: @@ -268,38 +268,38 @@ ; SVE-NEXT: mov x16, #0 ; SVE-NEXT: mov x17, #0 ; SVE-NEXT: mov x18, #0 -; SVE-NEXT: movi z0, #0000000000000000 -; SVE-NEXT: movi z1, #0000000000000000 -; SVE-NEXT: movi z2, #0000000000000000 -; SVE-NEXT: movi z3, #0000000000000000 -; SVE-NEXT: movi z4, #0000000000000000 -; SVE-NEXT: movi z5, #0000000000000000 -; SVE-NEXT: movi z6, #0000000000000000 -; SVE-NEXT: movi z7, #0000000000000000 -; SVE-NEXT: movi z8, #0000000000000000 -; SVE-NEXT: movi z9, #0000000000000000 -; SVE-NEXT: movi z10, #0000000000000000 -; SVE-NEXT: movi z11, #0000000000000000 -; SVE-NEXT: movi z12, #0000000000000000 -; SVE-NEXT: movi z13, #0000000000000000 -; SVE-NEXT: movi z14, #0000000000000000 -; SVE-NEXT: movi z15, #0000000000000000 -; SVE-NEXT: movi z16, #0000000000000000 -; SVE-NEXT: movi z17, #0000000000000000 -; SVE-NEXT: movi z18, #0000000000000000 -; SVE-NEXT: movi z19, #0000000000000000 -; SVE-NEXT: movi z20, #0000000000000000 -; SVE-NEXT: movi z21, #0000000000000000 -; SVE-NEXT: movi z22, #0000000000000000 -; SVE-NEXT: movi z23, #0000000000000000 -; SVE-NEXT: movi z24, #0000000000000000 -; SVE-NEXT: movi z25, #0000000000000000 -; SVE-NEXT: movi z26, #0000000000000000 -; SVE-NEXT: movi z27, #0000000000000000 -; SVE-NEXT: movi z28, #0000000000000000 -; SVE-NEXT: movi z29, #0000000000000000 -; SVE-NEXT: movi z30, #0000000000000000 -; SVE-NEXT: movi z31, #0000000000000000 +; SVE-NEXT: mov z0.d, #0 // =0x0 +; SVE-NEXT: mov z1.d, #0 // =0x0 +; SVE-NEXT: mov z2.d, #0 // =0x0 +; SVE-NEXT: mov z3.d, #0 // =0x0 +; SVE-NEXT: mov z4.d, #0 // =0x0 +; SVE-NEXT: mov z5.d, #0 // =0x0 +; SVE-NEXT: mov z6.d, #0 // =0x0 +; SVE-NEXT: mov z7.d, #0 // =0x0 +; SVE-NEXT: mov z8.d, #0 // =0x0 +; SVE-NEXT: mov z9.d, #0 // =0x0 +; SVE-NEXT: mov z10.d, #0 // =0x0 +; SVE-NEXT: mov z11.d, #0 // =0x0 +; SVE-NEXT: mov z12.d, #0 // =0x0 +; SVE-NEXT: mov z13.d, #0 // =0x0 +; SVE-NEXT: mov z14.d, #0 // =0x0 +; SVE-NEXT: mov z15.d, #0 // =0x0 +; SVE-NEXT: mov z16.d, #0 // =0x0 +; SVE-NEXT: mov z17.d, #0 // =0x0 +; SVE-NEXT: mov z18.d, #0 // =0x0 +; SVE-NEXT: mov z19.d, #0 // =0x0 +; SVE-NEXT: mov z20.d, #0 // =0x0 +; SVE-NEXT: mov z21.d, #0 // =0x0 +; SVE-NEXT: mov z22.d, #0 // =0x0 +; SVE-NEXT: mov z23.d, #0 // =0x0 +; SVE-NEXT: mov z24.d, #0 // =0x0 +; SVE-NEXT: mov z25.d, #0 // =0x0 +; SVE-NEXT: mov z26.d, #0 // =0x0 +; SVE-NEXT: mov z27.d, #0 // =0x0 +; SVE-NEXT: mov z28.d, #0 // =0x0 +; SVE-NEXT: mov z29.d, #0 // =0x0 +; SVE-NEXT: mov z30.d, #0 // =0x0 +; SVE-NEXT: mov z31.d, #0 // =0x0 ; SVE-NEXT: pfalse p0.b ; SVE-NEXT: pfalse p1.b ; SVE-NEXT: pfalse p2.b @@ -368,14 +368,14 @@ ; DEFAULT: // %bb.0: // %entry ; DEFAULT-NEXT: fcvt d1, s1 ; DEFAULT-NEXT: fmul d0, d1, d0 -; DEFAULT-NEXT: movi q1, #0000000000000000 +; DEFAULT-NEXT: movi v1.2d, #0000000000000000 ; DEFAULT-NEXT: ret ; ; SVE-LABEL: used_arg_float: ; SVE: // %bb.0: // %entry ; SVE-NEXT: fcvt d1, s1 ; SVE-NEXT: fmul d0, d1, d0 -; SVE-NEXT: movi z1, #0000000000000000 +; SVE-NEXT: mov z1.d, #0 // =0x0 ; SVE-NEXT: ret entry: @@ -389,14 +389,14 @@ ; DEFAULT: // %bb.0: // %entry ; DEFAULT-NEXT: fcvt d1, s1 ; DEFAULT-NEXT: fmul d0, d1, d0 -; DEFAULT-NEXT: movi q1, #0000000000000000 +; DEFAULT-NEXT: movi v1.2d, #0000000000000000 ; DEFAULT-NEXT: ret ; ; SVE-LABEL: used_float: ; SVE: // %bb.0: // %entry ; SVE-NEXT: fcvt d1, s1 ; SVE-NEXT: fmul d0, d1, d0 -; SVE-NEXT: movi z1, #0000000000000000 +; SVE-NEXT: mov z1.d, #0 // =0x0 ; SVE-NEXT: ret entry: @@ -475,13 +475,13 @@ ; DEFAULT-NEXT: mov x7, #0 ; DEFAULT-NEXT: mov x8, #0 ; DEFAULT-NEXT: mov x18, #0 -; DEFAULT-NEXT: movi q1, #0000000000000000 -; DEFAULT-NEXT: movi q2, #0000000000000000 -; DEFAULT-NEXT: movi q3, #0000000000000000 -; DEFAULT-NEXT: movi q4, #0000000000000000 -; DEFAULT-NEXT: movi q5, #0000000000000000 -; DEFAULT-NEXT: movi q6, #0000000000000000 -; DEFAULT-NEXT: movi q7, #0000000000000000 +; DEFAULT-NEXT: movi v1.2d, #0000000000000000 +; DEFAULT-NEXT: movi v2.2d, #0000000000000000 +; DEFAULT-NEXT: movi v3.2d, #0000000000000000 +; DEFAULT-NEXT: movi v4.2d, #0000000000000000 +; DEFAULT-NEXT: movi v5.2d, #0000000000000000 +; DEFAULT-NEXT: movi v6.2d, #0000000000000000 +; DEFAULT-NEXT: movi v7.2d, #0000000000000000 ; DEFAULT-NEXT: ret ; ; SVE-LABEL: all_arg_float: @@ -498,13 +498,13 @@ ; SVE-NEXT: mov x7, #0 ; SVE-NEXT: mov x8, #0 ; SVE-NEXT: mov x18, #0 -; SVE-NEXT: movi z1, #0000000000000000 -; SVE-NEXT: movi z2, #0000000000000000 -; SVE-NEXT: movi z3, #0000000000000000 -; SVE-NEXT: movi z4, #0000000000000000 -; SVE-NEXT: movi z5, #0000000000000000 -; SVE-NEXT: movi z6, #0000000000000000 -; SVE-NEXT: movi z7, #0000000000000000 +; SVE-NEXT: mov z1.d, #0 // =0x0 +; SVE-NEXT: mov z2.d, #0 // =0x0 +; SVE-NEXT: mov z3.d, #0 // =0x0 +; SVE-NEXT: mov z4.d, #0 // =0x0 +; SVE-NEXT: mov z5.d, #0 // =0x0 +; SVE-NEXT: mov z6.d, #0 // =0x0 +; SVE-NEXT: mov z7.d, #0 // =0x0 ; SVE-NEXT: pfalse p0.b ; SVE-NEXT: pfalse p1.b ; SVE-NEXT: pfalse p2.b @@ -541,37 +541,37 @@ ; DEFAULT-NEXT: mov x16, #0 ; DEFAULT-NEXT: mov x17, #0 ; DEFAULT-NEXT: mov x18, #0 -; DEFAULT-NEXT: movi q1, #0000000000000000 -; DEFAULT-NEXT: movi q2, #0000000000000000 -; DEFAULT-NEXT: movi q3, #0000000000000000 -; DEFAULT-NEXT: movi q4, #0000000000000000 -; DEFAULT-NEXT: movi q5, #0000000000000000 -; DEFAULT-NEXT: movi q6, #0000000000000000 -; DEFAULT-NEXT: movi q7, #0000000000000000 -; DEFAULT-NEXT: movi q8, #0000000000000000 -; DEFAULT-NEXT: movi q9, #0000000000000000 -; DEFAULT-NEXT: movi q10, #0000000000000000 -; DEFAULT-NEXT: movi q11, #0000000000000000 -; DEFAULT-NEXT: movi q12, #0000000000000000 -; DEFAULT-NEXT: movi q13, #0000000000000000 -; DEFAULT-NEXT: movi q14, #0000000000000000 -; DEFAULT-NEXT: movi q15, #0000000000000000 -; DEFAULT-NEXT: movi q16, #0000000000000000 -; DEFAULT-NEXT: movi q17, #0000000000000000 -; DEFAULT-NEXT: movi q18, #0000000000000000 -; DEFAULT-NEXT: movi q19, #0000000000000000 -; DEFAULT-NEXT: movi q20, #0000000000000000 -; DEFAULT-NEXT: movi q21, #0000000000000000 -; DEFAULT-NEXT: movi q22, #0000000000000000 -; DEFAULT-NEXT: movi q23, #0000000000000000 -; DEFAULT-NEXT: movi q24, #0000000000000000 -; DEFAULT-NEXT: movi q25, #0000000000000000 -; DEFAULT-NEXT: movi q26, #0000000000000000 -; DEFAULT-NEXT: movi q27, #0000000000000000 -; DEFAULT-NEXT: movi q28, #0000000000000000 -; DEFAULT-NEXT: movi q29, #0000000000000000 -; DEFAULT-NEXT: movi q30, #0000000000000000 -; DEFAULT-NEXT: movi q31, #0000000000000000 +; DEFAULT-NEXT: movi v1.2d, #0000000000000000 +; DEFAULT-NEXT: movi v2.2d, #0000000000000000 +; DEFAULT-NEXT: movi v3.2d, #0000000000000000 +; DEFAULT-NEXT: movi v4.2d, #0000000000000000 +; DEFAULT-NEXT: movi v5.2d, #0000000000000000 +; DEFAULT-NEXT: movi v6.2d, #0000000000000000 +; DEFAULT-NEXT: movi v7.2d, #0000000000000000 +; DEFAULT-NEXT: movi v8.2d, #0000000000000000 +; DEFAULT-NEXT: movi v9.2d, #0000000000000000 +; DEFAULT-NEXT: movi v10.2d, #0000000000000000 +; DEFAULT-NEXT: movi v11.2d, #0000000000000000 +; DEFAULT-NEXT: movi v12.2d, #0000000000000000 +; DEFAULT-NEXT: movi v13.2d, #0000000000000000 +; DEFAULT-NEXT: movi v14.2d, #0000000000000000 +; DEFAULT-NEXT: movi v15.2d, #0000000000000000 +; DEFAULT-NEXT: movi v16.2d, #0000000000000000 +; DEFAULT-NEXT: movi v17.2d, #0000000000000000 +; DEFAULT-NEXT: movi v18.2d, #0000000000000000 +; DEFAULT-NEXT: movi v19.2d, #0000000000000000 +; DEFAULT-NEXT: movi v20.2d, #0000000000000000 +; DEFAULT-NEXT: movi v21.2d, #0000000000000000 +; DEFAULT-NEXT: movi v22.2d, #0000000000000000 +; DEFAULT-NEXT: movi v23.2d, #0000000000000000 +; DEFAULT-NEXT: movi v24.2d, #0000000000000000 +; DEFAULT-NEXT: movi v25.2d, #0000000000000000 +; DEFAULT-NEXT: movi v26.2d, #0000000000000000 +; DEFAULT-NEXT: movi v27.2d, #0000000000000000 +; DEFAULT-NEXT: movi v28.2d, #0000000000000000 +; DEFAULT-NEXT: movi v29.2d, #0000000000000000 +; DEFAULT-NEXT: movi v30.2d, #0000000000000000 +; DEFAULT-NEXT: movi v31.2d, #0000000000000000 ; DEFAULT-NEXT: ret ; ; SVE-LABEL: all_float: @@ -597,37 +597,37 @@ ; SVE-NEXT: mov x16, #0 ; SVE-NEXT: mov x17, #0 ; SVE-NEXT: mov x18, #0 -; SVE-NEXT: movi z1, #0000000000000000 -; SVE-NEXT: movi z2, #0000000000000000 -; SVE-NEXT: movi z3, #0000000000000000 -; SVE-NEXT: movi z4, #0000000000000000 -; SVE-NEXT: movi z5, #0000000000000000 -; SVE-NEXT: movi z6, #0000000000000000 -; SVE-NEXT: movi z7, #0000000000000000 -; SVE-NEXT: movi z8, #0000000000000000 -; SVE-NEXT: movi z9, #0000000000000000 -; SVE-NEXT: movi z10, #0000000000000000 -; SVE-NEXT: movi z11, #0000000000000000 -; SVE-NEXT: movi z12, #0000000000000000 -; SVE-NEXT: movi z13, #0000000000000000 -; SVE-NEXT: movi z14, #0000000000000000 -; SVE-NEXT: movi z15, #0000000000000000 -; SVE-NEXT: movi z16, #0000000000000000 -; SVE-NEXT: movi z17, #0000000000000000 -; SVE-NEXT: movi z18, #0000000000000000 -; SVE-NEXT: movi z19, #0000000000000000 -; SVE-NEXT: movi z20, #0000000000000000 -; SVE-NEXT: movi z21, #0000000000000000 -; SVE-NEXT: movi z22, #0000000000000000 -; SVE-NEXT: movi z23, #0000000000000000 -; SVE-NEXT: movi z24, #0000000000000000 -; SVE-NEXT: movi z25, #0000000000000000 -; SVE-NEXT: movi z26, #0000000000000000 -; SVE-NEXT: movi z27, #0000000000000000 -; SVE-NEXT: movi z28, #0000000000000000 -; SVE-NEXT: movi z29, #0000000000000000 -; SVE-NEXT: movi z30, #0000000000000000 -; SVE-NEXT: movi z31, #0000000000000000 +; SVE-NEXT: mov z1.d, #0 // =0x0 +; SVE-NEXT: mov z2.d, #0 // =0x0 +; SVE-NEXT: mov z3.d, #0 // =0x0 +; SVE-NEXT: mov z4.d, #0 // =0x0 +; SVE-NEXT: mov z5.d, #0 // =0x0 +; SVE-NEXT: mov z6.d, #0 // =0x0 +; SVE-NEXT: mov z7.d, #0 // =0x0 +; SVE-NEXT: mov z8.d, #0 // =0x0 +; SVE-NEXT: mov z9.d, #0 // =0x0 +; SVE-NEXT: mov z10.d, #0 // =0x0 +; SVE-NEXT: mov z11.d, #0 // =0x0 +; SVE-NEXT: mov z12.d, #0 // =0x0 +; SVE-NEXT: mov z13.d, #0 // =0x0 +; SVE-NEXT: mov z14.d, #0 // =0x0 +; SVE-NEXT: mov z15.d, #0 // =0x0 +; SVE-NEXT: mov z16.d, #0 // =0x0 +; SVE-NEXT: mov z17.d, #0 // =0x0 +; SVE-NEXT: mov z18.d, #0 // =0x0 +; SVE-NEXT: mov z19.d, #0 // =0x0 +; SVE-NEXT: mov z20.d, #0 // =0x0 +; SVE-NEXT: mov z21.d, #0 // =0x0 +; SVE-NEXT: mov z22.d, #0 // =0x0 +; SVE-NEXT: mov z23.d, #0 // =0x0 +; SVE-NEXT: mov z24.d, #0 // =0x0 +; SVE-NEXT: mov z25.d, #0 // =0x0 +; SVE-NEXT: mov z26.d, #0 // =0x0 +; SVE-NEXT: mov z27.d, #0 // =0x0 +; SVE-NEXT: mov z28.d, #0 // =0x0 +; SVE-NEXT: mov z29.d, #0 // =0x0 +; SVE-NEXT: mov z30.d, #0 // =0x0 +; SVE-NEXT: mov z31.d, #0 // =0x0 ; SVE-NEXT: pfalse p0.b ; SVE-NEXT: pfalse p1.b ; SVE-NEXT: pfalse p2.b