Browse Source

Merge pull request #2976 from bjorn3/aarch64-object

Lower Arm64Call relocations in cranelift-object
pull/2987/head
Pat Hickey 3 years ago
committed by GitHub
parent
commit
57375588f2
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 4
      Cargo.lock
  2. 2
      cranelift/object/Cargo.toml
  3. 7
      cranelift/object/src/backend.rs

4
Cargo.lock

@ -1847,9 +1847,9 @@ checksum = "17b02fc0ff9a9e4b35b3342880f48e896ebf69f2967921fe8646bf5b7125956a"
[[package]]
name = "object"
version = "0.25.1"
version = "0.25.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9023c1c0973b327f073c7f2fceb9bcc049862f93a7d14c6feb46c8a56460a0d5"
checksum = "a38f2be3697a57b4060074ff41b44c16870d916ad7877c17696e063257482bc7"
dependencies = [
"crc32fast",
"indexmap",

2
cranelift/object/Cargo.toml

@ -12,7 +12,7 @@ edition = "2018"
[dependencies]
cranelift-module = { path = "../module", version = "0.75.0" }
cranelift-codegen = { path = "../codegen", version = "0.75.0", default-features = false, features = ["std"] }
object = { version = "0.25.0", default-features = false, features = ["write"] }
object = { version = "0.25.3", default-features = false, features = ["write"] }
target-lexicon = "0.12"
anyhow = "1.0"
log = { version = "0.4.6", default-features = false }

7
cranelift/object/src/backend.rs

@ -585,6 +585,11 @@ impl ObjectModule {
32,
),
Reloc::X86GOTPCRel4 => (RelocationKind::GotRelative, RelocationEncoding::Generic, 32),
Reloc::Arm64Call => (
RelocationKind::Relative,
RelocationEncoding::AArch64Call,
26,
),
Reloc::ElfX86_64TlsGd => {
assert_eq!(
self.object.format(),
@ -614,7 +619,7 @@ impl ObjectModule {
)
}
// FIXME
_ => unimplemented!(),
reloc => unimplemented!("{:?}", reloc),
};
ObjectRelocRecord {
offset: record.offset,

Loading…
Cancel
Save