mirror of
https://github.com/encounter/objdiff.git
synced 2025-12-14 15:46:31 +00:00
ARMv4T (GBA) and ARMv6K (3DS) support (#75)
* Initial ARM support
* Disassemble const pool reloc
* Disasm ARM/Thumb/data based on mapping symbols
* Fallback to mapping symbol `$a`
* Support multiple DWARF sequences
* Update line info
* Rework DWARF line info parsing
- Properly handles multiple sections
in DWARF 1
- line_info moved into ObjSection
- DWARF 2 parser no longer errors with
no .text section
- Both parsers properly skip empty
sections
* Simplify line_info (no Option)
* Get line info from section; output formatted ins string
* Unwrap code section in `arm.rs`
* Handle reloc `R_ARM_SBREL32`
* Update ARM disassembler
* Update README.md
* Format
* Revert "Update README.md"
This reverts commit 8bbfcc6f45.
* Update README.md
* Detect ARM version; support ARMv4T and v6K
* Combobox to force ARM version
* Clear LSB in ARM symbol addresses
* Support big-endian ARM ELF files
* Bump `unarm`, `arm-attr`
* Handle ARM implicit addends
* Update README.md
* Explicitly handle all ARM argument types
* Format
* Display more ARM relocs
* Mask LSB on ARM code symbols only
* Read ARM implicit addends
* Format
---------
Co-authored-by: Luke Street <luke.street@encounterpc.com>
This commit is contained in:
@@ -19,7 +19,7 @@ dwarf = ["gimli"]
|
||||
mips = ["any-arch", "rabbitizer"]
|
||||
ppc = ["any-arch", "cwdemangle", "ppc750cl"]
|
||||
x86 = ["any-arch", "cpp_demangle", "iced-x86", "msvc-demangler"]
|
||||
arm = ["any-arch", "cpp_demangle", "unarm"]
|
||||
arm = ["any-arch", "cpp_demangle", "unarm", "arm-attr"]
|
||||
|
||||
[dependencies]
|
||||
anyhow = "1.0.82"
|
||||
@@ -56,4 +56,5 @@ iced-x86 = { version = "1.21.0", default-features = false, features = ["std", "d
|
||||
msvc-demangler = { version = "0.10.0", optional = true }
|
||||
|
||||
# arm
|
||||
unarm = { version = "1.0.0", optional = true }
|
||||
unarm = { version = "1.3.0", optional = true }
|
||||
arm-attr = { version = "0.1.1", optional = true }
|
||||
|
||||
Reference in New Issue
Block a user