-
Notifications
You must be signed in to change notification settings - Fork 12.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Revert " [AArch64][SME] Enable subreg liveness tracking when SME is available" #95574
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@llvm/pr-subscribers-backend-aarch64 @llvm/pr-subscribers-llvm-globalisel Author: Florian Mayer (fmayer) ChangesReverts llvm/llvm-project#92142 For now sending this to run on CI Patch is 1.08 MiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/95574.diff 72 Files Affected:
diff --git a/llvm/lib/Target/AArch64/AArch64Subtarget.h b/llvm/lib/Target/AArch64/AArch64Subtarget.h
index 9912190e1bced..7ef7a89b5749f 100644
--- a/llvm/lib/Target/AArch64/AArch64Subtarget.h
+++ b/llvm/lib/Target/AArch64/AArch64Subtarget.h
@@ -149,7 +149,6 @@ class AArch64Subtarget final : public AArch64GenSubtargetInfo {
const Triple &getTargetTriple() const { return TargetTriple; }
bool enableMachineScheduler() const override { return true; }
bool enablePostRAScheduler() const override { return usePostRAScheduler(); }
- bool enableSubRegLiveness() const override { return true; }
bool enableMachinePipeliner() const override;
bool useDFAforSMS() const override { return false; }
diff --git a/llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-lse2_lse128.ll b/llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-lse2_lse128.ll
index 444f579f23242..a1712a5ec7a27 100644
--- a/llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-lse2_lse128.ll
+++ b/llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-lse2_lse128.ll
@@ -2273,10 +2273,10 @@ define dso_local i128 @atomicrmw_nand_i128_aligned_monotonic(ptr %ptr, i128 %val
; -O1-LABEL: atomicrmw_nand_i128_aligned_monotonic:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
-; -O1: mvn x8, x8
-; -O1: mvn x9, x9
-; -O1: casp x4, x5, x8, x9, [x0]
+; -O1: and x9, x7, x3
+; -O1: mvn x10, x8
+; -O1: mvn x11, x9
+; -O1: casp x4, x5, x10, x11, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
%r = atomicrmw nand ptr %ptr, i128 %value monotonic, align 16
@@ -2298,10 +2298,10 @@ define dso_local i128 @atomicrmw_nand_i128_aligned_acquire(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_nand_i128_aligned_acquire:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
-; -O1: mvn x8, x8
-; -O1: mvn x9, x9
-; -O1: caspa x4, x5, x8, x9, [x0]
+; -O1: and x9, x7, x3
+; -O1: mvn x10, x8
+; -O1: mvn x11, x9
+; -O1: caspa x4, x5, x10, x11, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
%r = atomicrmw nand ptr %ptr, i128 %value acquire, align 16
@@ -2323,10 +2323,10 @@ define dso_local i128 @atomicrmw_nand_i128_aligned_release(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_nand_i128_aligned_release:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
-; -O1: mvn x8, x8
-; -O1: mvn x9, x9
-; -O1: caspl x4, x5, x8, x9, [x0]
+; -O1: and x9, x7, x3
+; -O1: mvn x10, x8
+; -O1: mvn x11, x9
+; -O1: caspl x4, x5, x10, x11, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
%r = atomicrmw nand ptr %ptr, i128 %value release, align 16
@@ -2348,10 +2348,10 @@ define dso_local i128 @atomicrmw_nand_i128_aligned_acq_rel(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_nand_i128_aligned_acq_rel:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
-; -O1: mvn x8, x8
-; -O1: mvn x9, x9
-; -O1: caspal x4, x5, x8, x9, [x0]
+; -O1: and x9, x7, x3
+; -O1: mvn x10, x8
+; -O1: mvn x11, x9
+; -O1: caspal x4, x5, x10, x11, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
%r = atomicrmw nand ptr %ptr, i128 %value acq_rel, align 16
@@ -2373,10 +2373,10 @@ define dso_local i128 @atomicrmw_nand_i128_aligned_seq_cst(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_nand_i128_aligned_seq_cst:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
-; -O1: mvn x8, x8
-; -O1: mvn x9, x9
-; -O1: caspal x4, x5, x8, x9, [x0]
+; -O1: and x9, x7, x3
+; -O1: mvn x10, x8
+; -O1: mvn x11, x9
+; -O1: caspal x4, x5, x10, x11, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
%r = atomicrmw nand ptr %ptr, i128 %value seq_cst, align 16
@@ -3406,7 +3406,7 @@ define dso_local i128 @atomicrmw_xor_i128_aligned_monotonic(ptr %ptr, i128 %valu
; -O1-LABEL: atomicrmw_xor_i128_aligned_monotonic:
; -O1: ldp x4, x5, [x0]
; -O1: eor x8, x4, x2
-; -O1: eor x9, x5, x3
+; -O1: eor x9, x7, x3
; -O1: casp x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -3427,7 +3427,7 @@ define dso_local i128 @atomicrmw_xor_i128_aligned_acquire(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_xor_i128_aligned_acquire:
; -O1: ldp x4, x5, [x0]
; -O1: eor x8, x4, x2
-; -O1: eor x9, x5, x3
+; -O1: eor x9, x7, x3
; -O1: caspa x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -3448,7 +3448,7 @@ define dso_local i128 @atomicrmw_xor_i128_aligned_release(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_xor_i128_aligned_release:
; -O1: ldp x4, x5, [x0]
; -O1: eor x8, x4, x2
-; -O1: eor x9, x5, x3
+; -O1: eor x9, x7, x3
; -O1: caspl x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -3469,7 +3469,7 @@ define dso_local i128 @atomicrmw_xor_i128_aligned_acq_rel(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_xor_i128_aligned_acq_rel:
; -O1: ldp x4, x5, [x0]
; -O1: eor x8, x4, x2
-; -O1: eor x9, x5, x3
+; -O1: eor x9, x7, x3
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -3490,7 +3490,7 @@ define dso_local i128 @atomicrmw_xor_i128_aligned_seq_cst(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_xor_i128_aligned_seq_cst:
; -O1: ldp x4, x5, [x0]
; -O1: eor x8, x4, x2
-; -O1: eor x9, x5, x3
+; -O1: eor x9, x7, x3
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -3947,7 +3947,7 @@ define dso_local i128 @atomicrmw_max_i128_aligned_monotonic(ptr %ptr, i128 %valu
; -O1-LABEL: atomicrmw_max_i128_aligned_monotonic:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, lt
+; -O1: csel x9, x7, x3, lt
; -O1: csel x8, x4, x2, lt
; -O1: casp x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -3975,7 +3975,7 @@ define dso_local i128 @atomicrmw_max_i128_aligned_acquire(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_max_i128_aligned_acquire:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, lt
+; -O1: csel x9, x7, x3, lt
; -O1: csel x8, x4, x2, lt
; -O1: caspa x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -4003,7 +4003,7 @@ define dso_local i128 @atomicrmw_max_i128_aligned_release(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_max_i128_aligned_release:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, lt
+; -O1: csel x9, x7, x3, lt
; -O1: csel x8, x4, x2, lt
; -O1: caspl x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -4031,7 +4031,7 @@ define dso_local i128 @atomicrmw_max_i128_aligned_acq_rel(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_max_i128_aligned_acq_rel:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, lt
+; -O1: csel x9, x7, x3, lt
; -O1: csel x8, x4, x2, lt
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -4059,7 +4059,7 @@ define dso_local i128 @atomicrmw_max_i128_aligned_seq_cst(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_max_i128_aligned_seq_cst:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, lt
+; -O1: csel x9, x7, x3, lt
; -O1: csel x8, x4, x2, lt
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -4592,7 +4592,7 @@ define dso_local i128 @atomicrmw_min_i128_aligned_monotonic(ptr %ptr, i128 %valu
; -O1-LABEL: atomicrmw_min_i128_aligned_monotonic:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, ge
+; -O1: csel x9, x7, x3, ge
; -O1: csel x8, x4, x2, ge
; -O1: casp x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -4620,7 +4620,7 @@ define dso_local i128 @atomicrmw_min_i128_aligned_acquire(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_min_i128_aligned_acquire:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, ge
+; -O1: csel x9, x7, x3, ge
; -O1: csel x8, x4, x2, ge
; -O1: caspa x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -4648,7 +4648,7 @@ define dso_local i128 @atomicrmw_min_i128_aligned_release(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_min_i128_aligned_release:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, ge
+; -O1: csel x9, x7, x3, ge
; -O1: csel x8, x4, x2, ge
; -O1: caspl x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -4676,7 +4676,7 @@ define dso_local i128 @atomicrmw_min_i128_aligned_acq_rel(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_min_i128_aligned_acq_rel:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, ge
+; -O1: csel x9, x7, x3, ge
; -O1: csel x8, x4, x2, ge
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -4704,7 +4704,7 @@ define dso_local i128 @atomicrmw_min_i128_aligned_seq_cst(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_min_i128_aligned_seq_cst:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, ge
+; -O1: csel x9, x7, x3, ge
; -O1: csel x8, x4, x2, ge
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -5237,7 +5237,7 @@ define dso_local i128 @atomicrmw_umax_i128_aligned_monotonic(ptr %ptr, i128 %val
; -O1-LABEL: atomicrmw_umax_i128_aligned_monotonic:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, lo
+; -O1: csel x9, x7, x3, lo
; -O1: csel x8, x4, x2, lo
; -O1: casp x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -5265,7 +5265,7 @@ define dso_local i128 @atomicrmw_umax_i128_aligned_acquire(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_umax_i128_aligned_acquire:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, lo
+; -O1: csel x9, x7, x3, lo
; -O1: csel x8, x4, x2, lo
; -O1: caspa x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -5293,7 +5293,7 @@ define dso_local i128 @atomicrmw_umax_i128_aligned_release(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_umax_i128_aligned_release:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, lo
+; -O1: csel x9, x7, x3, lo
; -O1: csel x8, x4, x2, lo
; -O1: caspl x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -5321,7 +5321,7 @@ define dso_local i128 @atomicrmw_umax_i128_aligned_acq_rel(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_umax_i128_aligned_acq_rel:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, lo
+; -O1: csel x9, x7, x3, lo
; -O1: csel x8, x4, x2, lo
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -5349,7 +5349,7 @@ define dso_local i128 @atomicrmw_umax_i128_aligned_seq_cst(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_umax_i128_aligned_seq_cst:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, lo
+; -O1: csel x9, x7, x3, lo
; -O1: csel x8, x4, x2, lo
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -5877,7 +5877,7 @@ define dso_local i128 @atomicrmw_umin_i128_aligned_monotonic(ptr %ptr, i128 %val
; -O1-LABEL: atomicrmw_umin_i128_aligned_monotonic:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, hs
+; -O1: csel x9, x7, x3, hs
; -O1: csel x8, x4, x2, hs
; -O1: casp x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -5905,7 +5905,7 @@ define dso_local i128 @atomicrmw_umin_i128_aligned_acquire(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_umin_i128_aligned_acquire:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, hs
+; -O1: csel x9, x7, x3, hs
; -O1: csel x8, x4, x2, hs
; -O1: caspa x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -5933,7 +5933,7 @@ define dso_local i128 @atomicrmw_umin_i128_aligned_release(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_umin_i128_aligned_release:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, hs
+; -O1: csel x9, x7, x3, hs
; -O1: csel x8, x4, x2, hs
; -O1: caspl x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -5961,7 +5961,7 @@ define dso_local i128 @atomicrmw_umin_i128_aligned_acq_rel(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_umin_i128_aligned_acq_rel:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, hs
+; -O1: csel x9, x7, x3, hs
; -O1: csel x8, x4, x2, hs
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
@@ -5989,7 +5989,7 @@ define dso_local i128 @atomicrmw_umin_i128_aligned_seq_cst(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_umin_i128_aligned_seq_cst:
; -O1: ldp x4, x5, [x0]
; -O1: cmp x2, x4
-; -O1: csel x9, x5, x3, hs
+; -O1: csel x9, x7, x3, hs
; -O1: csel x8, x4, x2, hs
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
diff --git a/llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-v8_1a.ll b/llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-v8_1a.ll
index 62af028defde5..ee5fbe39b4492 100644
--- a/llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-v8_1a.ll
+++ b/llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-v8_1a.ll
@@ -1616,7 +1616,7 @@ define dso_local i128 @atomicrmw_and_i128_aligned_monotonic(ptr %ptr, i128 %valu
; -O1-LABEL: atomicrmw_and_i128_aligned_monotonic:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
+; -O1: and x9, x7, x3
; -O1: casp x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -1637,7 +1637,7 @@ define dso_local i128 @atomicrmw_and_i128_aligned_acquire(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_and_i128_aligned_acquire:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
+; -O1: and x9, x7, x3
; -O1: caspa x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -1658,7 +1658,7 @@ define dso_local i128 @atomicrmw_and_i128_aligned_release(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_and_i128_aligned_release:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
+; -O1: and x9, x7, x3
; -O1: caspl x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -1679,7 +1679,7 @@ define dso_local i128 @atomicrmw_and_i128_aligned_acq_rel(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_and_i128_aligned_acq_rel:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
+; -O1: and x9, x7, x3
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -1700,7 +1700,7 @@ define dso_local i128 @atomicrmw_and_i128_aligned_seq_cst(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_and_i128_aligned_seq_cst:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
+; -O1: and x9, x7, x3
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -2343,10 +2343,10 @@ define dso_local i128 @atomicrmw_nand_i128_aligned_monotonic(ptr %ptr, i128 %val
; -O1-LABEL: atomicrmw_nand_i128_aligned_monotonic:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
-; -O1: mvn x8, x8
-; -O1: mvn x9, x9
-; -O1: casp x4, x5, x8, x9, [x0]
+; -O1: and x9, x7, x3
+; -O1: mvn x10, x8
+; -O1: mvn x11, x9
+; -O1: casp x4, x5, x10, x11, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
%r = atomicrmw nand ptr %ptr, i128 %value monotonic, align 16
@@ -2368,10 +2368,10 @@ define dso_local i128 @atomicrmw_nand_i128_aligned_acquire(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_nand_i128_aligned_acquire:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
-; -O1: mvn x8, x8
-; -O1: mvn x9, x9
-; -O1: caspa x4, x5, x8, x9, [x0]
+; -O1: and x9, x7, x3
+; -O1: mvn x10, x8
+; -O1: mvn x11, x9
+; -O1: caspa x4, x5, x10, x11, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
%r = atomicrmw nand ptr %ptr, i128 %value acquire, align 16
@@ -2393,10 +2393,10 @@ define dso_local i128 @atomicrmw_nand_i128_aligned_release(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_nand_i128_aligned_release:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
-; -O1: mvn x8, x8
-; -O1: mvn x9, x9
-; -O1: caspl x4, x5, x8, x9, [x0]
+; -O1: and x9, x7, x3
+; -O1: mvn x10, x8
+; -O1: mvn x11, x9
+; -O1: caspl x4, x5, x10, x11, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
%r = atomicrmw nand ptr %ptr, i128 %value release, align 16
@@ -2418,10 +2418,10 @@ define dso_local i128 @atomicrmw_nand_i128_aligned_acq_rel(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_nand_i128_aligned_acq_rel:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
-; -O1: mvn x8, x8
-; -O1: mvn x9, x9
-; -O1: caspal x4, x5, x8, x9, [x0]
+; -O1: and x9, x7, x3
+; -O1: mvn x10, x8
+; -O1: mvn x11, x9
+; -O1: caspal x4, x5, x10, x11, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
%r = atomicrmw nand ptr %ptr, i128 %value acq_rel, align 16
@@ -2443,10 +2443,10 @@ define dso_local i128 @atomicrmw_nand_i128_aligned_seq_cst(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_nand_i128_aligned_seq_cst:
; -O1: ldp x4, x5, [x0]
; -O1: and x8, x4, x2
-; -O1: and x9, x5, x3
-; -O1: mvn x8, x8
-; -O1: mvn x9, x9
-; -O1: caspal x4, x5, x8, x9, [x0]
+; -O1: and x9, x7, x3
+; -O1: mvn x10, x8
+; -O1: mvn x11, x9
+; -O1: caspal x4, x5, x10, x11, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
%r = atomicrmw nand ptr %ptr, i128 %value seq_cst, align 16
@@ -2996,7 +2996,7 @@ define dso_local i128 @atomicrmw_or_i128_aligned_monotonic(ptr %ptr, i128 %value
; -O1-LABEL: atomicrmw_or_i128_aligned_monotonic:
; -O1: ldp x4, x5, [x0]
; -O1: orr x8, x4, x2
-; -O1: orr x9, x5, x3
+; -O1: orr x9, x7, x3
; -O1: casp x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -3017,7 +3017,7 @@ define dso_local i128 @atomicrmw_or_i128_aligned_acquire(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_or_i128_aligned_acquire:
; -O1: ldp x4, x5, [x0]
; -O1: orr x8, x4, x2
-; -O1: orr x9, x5, x3
+; -O1: orr x9, x7, x3
; -O1: caspa x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -3038,7 +3038,7 @@ define dso_local i128 @atomicrmw_or_i128_aligned_release(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_or_i128_aligned_release:
; -O1: ldp x4, x5, [x0]
; -O1: orr x8, x4, x2
-; -O1: orr x9, x5, x3
+; -O1: orr x9, x7, x3
; -O1: caspl x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -3059,7 +3059,7 @@ define dso_local i128 @atomicrmw_or_i128_aligned_acq_rel(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_or_i128_aligned_acq_rel:
; -O1: ldp x4, x5, [x0]
; -O1: orr x8, x4, x2
-; -O1: orr x9, x5, x3
+; -O1: orr x9, x7, x3
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -3080,7 +3080,7 @@ define dso_local i128 @atomicrmw_or_i128_aligned_seq_cst(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_or_i128_aligned_seq_cst:
; -O1: ldp x4, x5, [x0]
; -O1: orr x8, x4, x2
-; -O1: orr x9, x5, x3
+; -O1: orr x9, x7, x3
; -O1: caspal x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -3531,7 +3531,7 @@ define dso_local i128 @atomicrmw_xor_i128_aligned_monotonic(ptr %ptr, i128 %valu
; -O1-LABEL: atomicrmw_xor_i128_aligned_monotonic:
; -O1: ldp x4, x5, [x0]
; -O1: eor x8, x4, x2
-; -O1: eor x9, x5, x3
+; -O1: eor x9, x7, x3
; -O1: casp x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -3552,7 +3552,7 @@ define dso_local i128 @atomicrmw_xor_i128_aligned_acquire(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_xor_i128_aligned_acquire:
; -O1: ldp x4, x5, [x0]
; -O1: eor x8, x4, x2
-; -O1: eor x9, x5, x3
+; -O1: eor x9, x7, x3
; -O1: caspa x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -3573,7 +3573,7 @@ define dso_local i128 @atomicrmw_xor_i128_aligned_release(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_xor_i128_aligned_release:
; -O1: ldp x4, x5, [x0]
; -O1: eor x8, x4, x2
-; -O1: eor x9, x5, x3
+; -O1: eor x9, x7, x3
; -O1: caspl x4, x5, x8, x9, [x0]
; -O1: cmp x5, x7
; -O1: ccmp x4, x6, #0, eq
@@ -3594,7 +3594,7 @@ define dso_local i128 @atomicrmw_xor_i128_aligned_acq_rel(ptr %ptr, i128 %value)
; -O1-LABEL: atomicrmw_xor_i128_aligned_acq_rel:
; -O1: ldp x4, x5, [x0]
; -O1: ...
[truncated]
|
That makes the CI not fail on stage2 hwasan check, so it seems to fix the problem. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Reverts #92142
For now sending this to run on CI