diff options
| author | iximeow <me@iximeow.net> | 2026-06-05 08:27:55 +0000 |
|---|---|---|
| committer | iximeow <me@iximeow.net> | 2026-06-21 16:44:21 +0000 |
| commit | a38cba0c4a4ed9a1ed763618e5efe3f4487b1ad0 (patch) | |
| tree | 314ca1b0df51c3b025ac79cf50ca96ac744f8266 /src | |
| parent | 953054bb2dd86fb54a320123373ba23c7e08c332 (diff) | |
rename rne-sae to rn-sae
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib.rs | 4 | ||||
| -rw-r--r-- | src/long_mode/mod.rs | 7 | ||||
| -rw-r--r-- | src/protected_mode/mod.rs | 7 | ||||
| -rw-r--r-- | src/real_mode/mod.rs | 7 | ||||
| -rw-r--r-- | src/shared/evex.in | 2 |
5 files changed, 18 insertions, 9 deletions
@@ -165,7 +165,7 @@ pub use real_mode::Arch as x86_16; // the pseudo-C syntax's max length would be something like: // ``` // xacquire xrelease lock { repnz qword if /* signed */ greater_or_equal(rflags) then jmp gs:[xmm31 + -// xmm31 * 8 + 0x12345678]{k7}{z}{rne-sae} } +// xmm31 * 8 + 0x12345678]{k7}{z}{rn-sae} } // ``` // (which is nonsensical) or for an unknown opcode, // ``` @@ -173,7 +173,7 @@ pub use real_mode::Arch as x86_16; // ``` // where `opN` is an operand. the longest operand, same as above, would be something like // ``` -// gs:[xmm31 + xmm31 * 8 + 0x12345678]{k7}{z}{rne-sae} +// gs:[xmm31 + xmm31 * 8 + 0x12345678]{k7}{z}{rn-sae} // ``` // for a length like 262 bytes of operand, 55 bytes of prefixes and syntax, and another up-to-20 // bytes of opcode. diff --git a/src/long_mode/mod.rs b/src/long_mode/mod.rs index b7daa4a..3ba76a0 100644 --- a/src/long_mode/mod.rs +++ b/src/long_mode/mod.rs @@ -507,14 +507,17 @@ impl SaeMode { /// ``` /// use yaxpeax_x86::long_mode::SaeMode; /// - /// assert_eq!(SaeMode::RoundNearest.label(), "{rne-sae}"); + /// assert_eq!(SaeMode::RoundNearest.label(), "{rn-sae}"); /// assert_eq!(SaeMode::RoundDown.label(), "{rd-sae}"); /// assert_eq!(SaeMode::RoundUp.label(), "{ru-sae}"); /// assert_eq!(SaeMode::RoundZero.label(), "{rz-sae}"); /// ``` pub const fn label(&self) -> &'static str { match self { - SaeMode::RoundNearest => "{rne-sae}", + // in the KNL era some resources called this "rne-sae" (https://imsc.uni-graz.at/haasegu/Projects/FSP/HPC/ws_15/Intel_Open_Source_Software_Development.pdf) + // it seems xed retained this `rne-sae` form. zydis calls this "rn-sae". + // masm, nasm, gas, and everyone else wants "rn-sae". so, we'll call it "rn-sae" too. + SaeMode::RoundNearest => "{rn-sae}", SaeMode::RoundDown => "{rd-sae}", SaeMode::RoundUp => "{ru-sae}", SaeMode::RoundZero => "{rz-sae}", diff --git a/src/protected_mode/mod.rs b/src/protected_mode/mod.rs index 64c1c8d..f419197 100644 --- a/src/protected_mode/mod.rs +++ b/src/protected_mode/mod.rs @@ -443,14 +443,17 @@ impl SaeMode { /// ``` /// use yaxpeax_x86::protected_mode::SaeMode; /// - /// assert_eq!(SaeMode::RoundNearest.label(), "{rne-sae}"); + /// assert_eq!(SaeMode::RoundNearest.label(), "{rn-sae}"); /// assert_eq!(SaeMode::RoundDown.label(), "{rd-sae}"); /// assert_eq!(SaeMode::RoundUp.label(), "{ru-sae}"); /// assert_eq!(SaeMode::RoundZero.label(), "{rz-sae}"); /// ``` pub const fn label(&self) -> &'static str { match self { - SaeMode::RoundNearest => "{rne-sae}", + // in the KNL era some resources called this "rne-sae" (https://imsc.uni-graz.at/haasegu/Projects/FSP/HPC/ws_15/Intel_Open_Source_Software_Development.pdf) + // it seems xed retained this `rne-sae` form. zydis calls this "rn-sae". + // masm, nasm, gas, and everyone else wants "rn-sae". so, we'll call it "rn-sae" too. + SaeMode::RoundNearest => "{rn-sae}", SaeMode::RoundDown => "{rd-sae}", SaeMode::RoundUp => "{ru-sae}", SaeMode::RoundZero => "{rz-sae}", diff --git a/src/real_mode/mod.rs b/src/real_mode/mod.rs index 3a7cbd3..716148c 100644 --- a/src/real_mode/mod.rs +++ b/src/real_mode/mod.rs @@ -443,14 +443,17 @@ impl SaeMode { /// ``` /// use yaxpeax_x86::real_mode::SaeMode; /// - /// assert_eq!(SaeMode::RoundNearest.label(), "{rne-sae}"); + /// assert_eq!(SaeMode::RoundNearest.label(), "{rn-sae}"); /// assert_eq!(SaeMode::RoundDown.label(), "{rd-sae}"); /// assert_eq!(SaeMode::RoundUp.label(), "{ru-sae}"); /// assert_eq!(SaeMode::RoundZero.label(), "{rz-sae}"); /// ``` pub const fn label(&self) -> &'static str { match self { - SaeMode::RoundNearest => "{rne-sae}", + // in the KNL era some resources called this "rne-sae" (https://imsc.uni-graz.at/haasegu/Projects/FSP/HPC/ws_15/Intel_Open_Source_Software_Development.pdf) + // it seems xed retained this `rne-sae` form. zydis calls this "rn-sae". + // masm, nasm, gas, and everyone else wants "rn-sae". so, we'll call it "rn-sae" too. + SaeMode::RoundNearest => "{rn-sae}", SaeMode::RoundDown => "{rd-sae}", SaeMode::RoundUp => "{ru-sae}", SaeMode::RoundZero => "{rz-sae}", diff --git a/src/shared/evex.in b/src/shared/evex.in index 07c82e5..e681fad 100644 --- a/src/shared/evex.in +++ b/src/shared/evex.in @@ -149,7 +149,7 @@ pub(crate) fn read_evex< evex_start + 21, evex_start + 22, InnerDescription::Misc(match lpl { - 0b00 => "evex.l'l is `0b00` (vector size 128 or rne-sae)", + 0b00 => "evex.l'l is `0b00` (vector size 128 or rn-sae)", 0b01 => "evex.l'l is `0b01` (vector size 256 or rd-sae)", 0b10 => "evex.l'l is `0b10` (vector size 512 or ru-sae)", _ => "evex.l'l is `0b11` (vector size 512 + rz-sae)", |
