[llvm] [AArch64][llvm] Fix encoding for `stshh` instruction (PR #189588)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 31 03:35:07 PDT 2026
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-backend-aarch64
Author: Jonathan Thackray (jthackray)
<details>
<summary>Changes</summary>
The encoding for `stshh` was incorrect, and has been fixed. This
has been checked against the Arm ARM.
---
Full diff: https://github.com/llvm/llvm-project/pull/189588.diff
2 Files Affected:
- (modified) llvm/lib/Target/AArch64/AArch64InstrFormats.td (+1-1)
- (modified) llvm/test/MC/AArch64/armv9.6a-pcdphint.s (+2-2)
``````````diff
diff --git a/llvm/lib/Target/AArch64/AArch64InstrFormats.td b/llvm/lib/Target/AArch64/AArch64InstrFormats.td
index 19312d34609ce..1774927e9297d 100644
--- a/llvm/lib/Target/AArch64/AArch64InstrFormats.td
+++ b/llvm/lib/Target/AArch64/AArch64InstrFormats.td
@@ -1876,7 +1876,7 @@ class STSHHI
: SimpleSystemI<0, (ins phint_op:$policy), "stshh", "\t$policy", []>,
Sched<[WriteHint]> {
bits<3> policy;
- let Inst{20-12} = 0b000011001;
+ let Inst{20-12} = 0b000110010;
let Inst{11-8} = 0b0110;
let Inst{7-5} = policy;
}
diff --git a/llvm/test/MC/AArch64/armv9.6a-pcdphint.s b/llvm/test/MC/AArch64/armv9.6a-pcdphint.s
index cfd7b098ab487..46fe8981d1ebf 100644
--- a/llvm/test/MC/AArch64/armv9.6a-pcdphint.s
+++ b/llvm/test/MC/AArch64/armv9.6a-pcdphint.s
@@ -10,11 +10,11 @@
stshh keep
// CHECK-INST: stshh keep
-// CHECK-ENCODING: encoding: [0x1f,0x96,0x01,0xd5]
+// CHECK-ENCODING: encoding: [0x1f,0x26,0x03,0xd5]
stshh strm
// CHECK-INST: stshh strm
-// CHECK-ENCODING: encoding: [0x3f,0x96,0x01,0xd5]
+// CHECK-ENCODING: encoding: [0x3f,0x26,0x03,0xd5]
prfm ir, [x0]
// CHECK-INST: prfm ir, [x0]
``````````
</details>
https://github.com/llvm/llvm-project/pull/189588
More information about the llvm-commits
mailing list