1 parent 97bcfe2 commit e6035b0Copy full SHA for e6035b0
3 files changed
objdiff-core/config-schema.json
@@ -158,13 +158,25 @@
158
"value": "o32",
159
"name": "O32"
160
},
161
+ {
162
+ "value": "o64",
163
+ "name": "O64"
164
+ },
165
{
166
"value": "n32",
167
"name": "N32"
168
169
170
"value": "n64",
171
"name": "N64"
172
173
174
+ "value": "eabi32",
175
+ "name": "eabi32"
176
177
178
+ "value": "eabi64",
179
+ "name": "eabi64"
180
}
181
]
182
objdiff-core/src/arch/mips.rs
@@ -46,8 +46,11 @@ impl ArchMips {
46
object::FileFlags::None => {}
47
object::FileFlags::Elf { e_flags, .. } => {
48
abi = match e_flags & EF_MIPS_ABI {
49
- elf::EF_MIPS_ABI_O32 | elf::EF_MIPS_ABI_O64 => Abi::O32,
50
- elf::EF_MIPS_ABI_EABI32 | elf::EF_MIPS_ABI_EABI64 => Abi::N32,
+ elf::EF_MIPS_ABI_O32 => Abi::O32,
+ elf::EF_MIPS_ABI_O64 if e_flags & elf::EF_MIPS_ABI2 != 0 => Abi::N64,
51
+ elf::EF_MIPS_ABI_O64 => Abi::O64,
52
+ elf::EF_MIPS_ABI_EABI32 => Abi::EABI32,
53
+ elf::EF_MIPS_ABI_EABI64 => Abi::EABI64,
54
_ => {
55
if e_flags & elf::EF_MIPS_ABI2 != 0 {
56
Abi::N32
@@ -170,8 +173,11 @@ impl ArchMips {
.with_abi(match diff_config.mips_abi {
MipsAbi::Auto => self.abi,
MipsAbi::O32 => Abi::O32,
+ MipsAbi::O64 => Abi::O64,
MipsAbi::N32 => Abi::N32,
MipsAbi::N64 => Abi::N64,
+ MipsAbi::Eabi32 => Abi::EABI32,
+ MipsAbi::Eabi64 => Abi::EABI64,
})
183
objdiff-core/tests/snapshots/arch_mips__read_mips.snap
@@ -1,12 +1,12 @@
1
---
2
source: objdiff-core/tests/arch_mips.rs
3
-assertion_line: 10
+assertion_line: 12
4
expression: obj
5
6
Object {
7
arch: ArchMips {
8
endianness: Little,
9
- abi: N32,
+ abi: EABI64,
10
isa_extension: Some(
11
R5900EE,
12
),
0 commit comments