aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Cargo.toml4
-rw-r--r--src/armv7.rs8
-rw-r--r--src/armv8/a64.rs12
3 files changed, 14 insertions, 10 deletions
diff --git a/Cargo.toml b/Cargo.toml
index 5fb3959..426fdf9 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,14 +1,14 @@
[package]
name = "yaxpeax-arm"
-version = "0.0.3"
+version = "0.0.4"
authors = [ "iximeow <me@iximeow.net>" ]
license = "0BSD"
repository = "http://git.iximeow.net/yaxpeax-arm/"
description = "arm decoders for the yaxpeax project"
[dependencies]
-yaxpeax-arch = { version = "0.0.3", default-features = false, features = [] }
+yaxpeax-arch = { version = "0.0.4", default-features = false, features = [] }
"serde" = { version = "1.0", optional = true }
"serde_derive" = { version = "1.0", optional = true }
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 {