aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/armv7.rs8
-rw-r--r--src/armv8/a64.rs12
2 files changed, 12 insertions, 8 deletions
diff --git a/src/armv7.rs b/src/armv7.rs
index 3fe4df6..3029cc3 100644
--- a/src/armv7.rs
+++ b/src/armv7.rs
@@ -7,7 +7,7 @@
use std::fmt::{self, Display, Formatter};
-use yaxpeax_arch::{Arch, Colorize, Decoder, LengthedInstruction, NoColors, ShowContextual, YaxColors};
+use yaxpeax_arch::{Arch, AddressDiff, Colorize, Decoder, LengthedInstruction, NoColors, ShowContextual, YaxColors};
pub struct ConditionedOpcode(pub Opcode, pub bool, pub ConditionCode);
@@ -1254,12 +1254,12 @@ impl Display for Instruction {
}
impl LengthedInstruction for Instruction {
- type Unit = <ARMv7 as Arch>::Address;
+ type Unit = AddressDiff<<ARMv7 as Arch>::Address>;
fn min_size() -> Self::Unit {
- 4
+ AddressDiff::from_const(4)
}
fn len(&self) -> Self::Unit {
- 4
+ AddressDiff::from_const(4)
}
}
diff --git a/src/armv8/a64.rs b/src/armv8/a64.rs
index 30992b2..65d513a 100644
--- a/src/armv8/a64.rs
+++ b/src/armv8/a64.rs
@@ -3,7 +3,7 @@
use std::fmt::{self, Display, Formatter};
-use yaxpeax_arch::{Arch, Decoder, LengthedInstruction, ShowContextual, YaxColors};
+use yaxpeax_arch::{Arch, AddressDiff, Decoder, LengthedInstruction, ShowContextual, YaxColors};
#[allow(non_snake_case)]
mod docs {
@@ -642,9 +642,13 @@ impl Display for Instruction {
}
impl LengthedInstruction for Instruction {
- type Unit = <ARMv8 as Arch>::Address;
- fn len(&self) -> Self::Unit { 4 }
- fn min_size() -> Self::Unit { 4 }
+ type Unit = AddressDiff<<ARMv8 as Arch>::Address>;
+ fn min_size() -> Self::Unit {
+ AddressDiff::from_const(4)
+ }
+ fn len(&self) -> Self::Unit {
+ AddressDiff::from_const(4)
+ }
}
impl Default for Instruction {