upgrade to target-lexicon 0.8.0
* the target-lexicon crate no longer has or needs the std feature in cargo, so we can delete all default-features=false, any mentions of its std feature, and the nostd configs in many lib.rs files * the representation of arm architectures has changed, so some case statements needed refactoring
This commit is contained in:
@@ -38,7 +38,7 @@ serde = "1.0.8"
|
||||
term = "0.6.1"
|
||||
capstone = { version = "0.6.0", optional = true }
|
||||
wabt = { version = "0.9.1", optional = true }
|
||||
target-lexicon = "0.4.0"
|
||||
target-lexicon = "0.8.0"
|
||||
pretty_env_logger = "0.3.0"
|
||||
file-per-thread-logger = "0.1.2"
|
||||
indicatif = "0.11.0"
|
||||
|
||||
@@ -32,7 +32,6 @@
|
||||
)
|
||||
)]
|
||||
#![no_std]
|
||||
#![cfg_attr(not(feature = "std"), feature(alloc))]
|
||||
|
||||
#[cfg(test)]
|
||||
#[cfg(not(feature = "std"))]
|
||||
|
||||
@@ -18,7 +18,7 @@ cranelift-bforest = { path = "../cranelift-bforest", version = "0.41.0", default
|
||||
failure = { version = "0.1.1", default-features = false, features = ["derive"] }
|
||||
failure_derive = { version = "0.1.1", default-features = false }
|
||||
hashmap_core = { version = "0.1.9", optional = true }
|
||||
target-lexicon = { version = "0.4.0", default-features = false }
|
||||
target-lexicon = "0.8.0"
|
||||
log = { version = "0.4.6", default-features = false }
|
||||
serde = { version = "1.0.94", features = ["derive"], optional = true }
|
||||
# It is a goal of the cranelift-codegen crate to have minimal external dependencies.
|
||||
@@ -38,7 +38,6 @@ default = ["std"]
|
||||
std = [
|
||||
"cranelift-entity/std",
|
||||
"cranelift-bforest/std",
|
||||
"target-lexicon/std",
|
||||
"cranelift-codegen-meta/std"
|
||||
]
|
||||
|
||||
|
||||
@@ -42,14 +42,13 @@ fn isa_constructor(
|
||||
builder: shared_settings::Builder,
|
||||
) -> Box<dyn TargetIsa> {
|
||||
let level1 = match triple.architecture {
|
||||
Architecture::Thumbv6m | Architecture::Thumbv7em | Architecture::Thumbv7m => {
|
||||
&enc_tables::LEVEL1_T32[..]
|
||||
Architecture::Arm(arm) => {
|
||||
if arm.is_thumb() {
|
||||
&enc_tables::LEVEL1_T32[..]
|
||||
} else {
|
||||
&enc_tables::LEVEL1_A32[..]
|
||||
}
|
||||
}
|
||||
Architecture::Arm
|
||||
| Architecture::Armv4t
|
||||
| Architecture::Armv5te
|
||||
| Architecture::Armv7
|
||||
| Architecture::Armv7s => &enc_tables::LEVEL1_A32[..],
|
||||
_ => panic!(),
|
||||
};
|
||||
Box::new(Isa {
|
||||
|
||||
@@ -31,6 +31,7 @@ impl CallConv {
|
||||
// uses System V.
|
||||
Ok(CallingConvention::SystemV) | Err(()) => CallConv::SystemV,
|
||||
Ok(CallingConvention::WindowsFastcall) => CallConv::WindowsFastcall,
|
||||
Ok(unimp) => unimplemented!("calling convention: {:?}", unimp),
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -111,15 +111,8 @@ pub fn lookup(triple: Triple) -> Result<Builder, LookupError> {
|
||||
Architecture::I386 | Architecture::I586 | Architecture::I686 | Architecture::X86_64 => {
|
||||
isa_builder!(x86, "x86")(triple)
|
||||
}
|
||||
Architecture::Thumbv6m
|
||||
| Architecture::Thumbv7em
|
||||
| Architecture::Thumbv7m
|
||||
| Architecture::Arm
|
||||
| Architecture::Armv4t
|
||||
| Architecture::Armv5te
|
||||
| Architecture::Armv7
|
||||
| Architecture::Armv7s => isa_builder!(arm32, "arm32")(triple),
|
||||
Architecture::Aarch64 => isa_builder!(arm64, "arm64")(triple),
|
||||
Architecture::Arm { .. } => isa_builder!(arm32, "arm32")(triple),
|
||||
Architecture::Aarch64 { .. } => isa_builder!(arm64, "arm64")(triple),
|
||||
_ => Err(LookupError::Unsupported),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -41,7 +41,6 @@
|
||||
)
|
||||
)]
|
||||
#![no_std]
|
||||
#![cfg_attr(not(feature = "std"), feature(alloc))]
|
||||
|
||||
#[cfg(not(feature = "std"))]
|
||||
#[macro_use]
|
||||
|
||||
@@ -51,7 +51,6 @@
|
||||
)
|
||||
)]
|
||||
#![no_std]
|
||||
#![cfg_attr(not(feature = "std"), feature(alloc))]
|
||||
|
||||
#[cfg(not(feature = "std"))]
|
||||
#[macro_use]
|
||||
|
||||
@@ -15,7 +15,7 @@ cranelift-module = { path = "../cranelift-module", version = "0.41.0" }
|
||||
faerie = "0.10.0"
|
||||
goblin = "0.0.24"
|
||||
failure = "0.1.2"
|
||||
target-lexicon = "0.4.0"
|
||||
target-lexicon = "0.8.0"
|
||||
|
||||
[badges]
|
||||
maintenance = { status = "experimental" }
|
||||
|
||||
@@ -12,7 +12,7 @@ edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
cranelift-codegen = { path = "../cranelift-codegen", version = "0.41.0", default-features = false }
|
||||
target-lexicon = { version = "0.4.0", default-features = false }
|
||||
target-lexicon = "0.8.0"
|
||||
log = { version = "0.4.6", default-features = false }
|
||||
hashmap_core = { version = "0.1.9", optional = true }
|
||||
|
||||
|
||||
@@ -175,7 +175,6 @@
|
||||
)
|
||||
)]
|
||||
#![no_std]
|
||||
#![cfg_attr(not(feature = "std"), feature(alloc))]
|
||||
|
||||
#[cfg(not(feature = "std"))]
|
||||
#[macro_use]
|
||||
|
||||
@@ -15,7 +15,7 @@ libfuzzer-sys = { git = "https://github.com/rust-fuzz/libfuzzer-sys.git" }
|
||||
cranelift-codegen = { path = "../cranelift-codegen" }
|
||||
cranelift-wasm = { path = "../cranelift-wasm" }
|
||||
cranelift-reader = { path = "../cranelift-reader" }
|
||||
target-lexicon = "0.4.0"
|
||||
target-lexicon = "0.8.0"
|
||||
|
||||
# Prevent this from interfering with workspaces
|
||||
[workspace]
|
||||
|
||||
@@ -19,7 +19,6 @@
|
||||
)
|
||||
)]
|
||||
#![no_std]
|
||||
#![cfg_attr(not(feature = "std"), feature(alloc))]
|
||||
|
||||
#[cfg(not(feature = "std"))]
|
||||
#[macro_use]
|
||||
|
||||
@@ -11,14 +11,14 @@ edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
cranelift-codegen = { path = "../cranelift-codegen", version = "0.41.0", default-features = false }
|
||||
target-lexicon = { version = "0.4.0", default-features = false }
|
||||
target-lexicon = "0.8.0"
|
||||
|
||||
[target.'cfg(any(target_arch = "x86", target_arch = "x86_64"))'.dependencies]
|
||||
raw-cpuid = "6.0.0"
|
||||
|
||||
[features]
|
||||
default = ["std"]
|
||||
std = ["cranelift-codegen/std", "target-lexicon/std"]
|
||||
std = ["cranelift-codegen/std"]
|
||||
# when compiling with the "core" feature, nightly must be enabled
|
||||
# enabling the "nightly" feature for raw-cpuid allows avoiding
|
||||
# linking in a c-library.
|
||||
|
||||
@@ -19,7 +19,6 @@
|
||||
)
|
||||
)]
|
||||
#![no_std]
|
||||
#![cfg_attr(not(feature = "std"), feature(alloc))]
|
||||
|
||||
#[cfg(not(feature = "std"))]
|
||||
#[macro_use]
|
||||
|
||||
@@ -11,7 +11,7 @@ edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
cranelift-codegen = { path = "../cranelift-codegen", version = "0.41.0" }
|
||||
target-lexicon = "0.4.0"
|
||||
target-lexicon = "0.8.0"
|
||||
|
||||
[badges]
|
||||
maintenance = { status = "experimental" }
|
||||
|
||||
@@ -16,7 +16,7 @@ cranelift-native = { path = "../cranelift-native", version = "0.41.0" }
|
||||
region = "2.0.0"
|
||||
libc = { version = "0.2.42" }
|
||||
errno = "0.2.4"
|
||||
target-lexicon = { version = "0.4.0" }
|
||||
target-lexicon = "0.8.0"
|
||||
memmap = { version = "0.7.0", optional = true }
|
||||
|
||||
[target.'cfg(target_os = "windows")'.dependencies]
|
||||
|
||||
@@ -136,16 +136,20 @@ cfg_if! {
|
||||
.x86()
|
||||
.mode(arch::x86::ArchMode::Mode64)
|
||||
.build(),
|
||||
Architecture::Arm
|
||||
| Architecture::Armv4t
|
||||
| Architecture::Armv5te
|
||||
| Architecture::Armv7
|
||||
| Architecture::Armv7s => Capstone::new().arm().mode(arch::arm::ArchMode::Arm).build(),
|
||||
Architecture::Thumbv6m | Architecture::Thumbv7em | Architecture::Thumbv7m => Capstone::new(
|
||||
).arm()
|
||||
.mode(arch::arm::ArchMode::Thumb)
|
||||
.build(),
|
||||
Architecture::Aarch64 => Capstone::new()
|
||||
Architecture::Arm(arm) => {
|
||||
if arm.is_thumb() {
|
||||
Capstone::new()
|
||||
.arm()
|
||||
.mode(arch::arm::ArchMode::Thumb)
|
||||
.build()
|
||||
} else {
|
||||
Capstone::new()
|
||||
.arm()
|
||||
.mode(arch::arm::ArchMode::Arm)
|
||||
.build()
|
||||
}
|
||||
}
|
||||
Architecture::Aarch64 {..} => Capstone::new()
|
||||
.arm64()
|
||||
.mode(arch::arm64::ArchMode::Arm)
|
||||
.build(),
|
||||
|
||||
@@ -23,7 +23,7 @@ serde = { version = "1.0.94", features = ["derive"], optional = true }
|
||||
|
||||
[dev-dependencies]
|
||||
wabt = "0.9.1"
|
||||
target-lexicon = "0.4.0"
|
||||
target-lexicon = "0.8.0"
|
||||
|
||||
[features]
|
||||
default = ["std"]
|
||||
|
||||
@@ -28,7 +28,6 @@
|
||||
)
|
||||
)]
|
||||
#![no_std]
|
||||
#![cfg_attr(not(feature = "std"), feature(alloc))]
|
||||
|
||||
#[cfg(not(feature = "std"))]
|
||||
#[macro_use]
|
||||
|
||||
Reference in New Issue
Block a user