diff --git a/objdiff-core/src/obj/mod.rs b/objdiff-core/src/obj/mod.rs index 96a6df4..6adba95 100644 --- a/objdiff-core/src/obj/mod.rs +++ b/objdiff-core/src/obj/mod.rs @@ -70,6 +70,7 @@ pub struct Section { pub id: String, pub name: String, pub address: u64, + pub offset: Option, pub size: u64, pub kind: SectionKind, pub data: SectionData, @@ -414,6 +415,7 @@ static DUMMY_SECTION: Section = Section { id: String::new(), name: String::new(), address: 0, + offset: None, size: 0, kind: SectionKind::Unknown, data: SectionData(Vec::new()), diff --git a/objdiff-core/src/obj/read.rs b/objdiff-core/src/obj/read.rs index 52ac8e2..fe95ec5 100644 --- a/objdiff-core/src/obj/read.rs +++ b/objdiff-core/src/obj/read.rs @@ -273,6 +273,7 @@ fn map_sections( id, name: name.to_string(), address: section.address(), + offset: section.file_range().map(|(start, _)| start), size: section.size(), kind, data: SectionData(data), diff --git a/objdiff-core/src/obj/snapshots/objdiff_core__obj__read__test__combine_sections.snap b/objdiff-core/src/obj/snapshots/objdiff_core__obj__read__test__combine_sections.snap index 7568db7..3712df6 100644 --- a/objdiff-core/src/obj/snapshots/objdiff_core__obj__read__test__combine_sections.snap +++ b/objdiff-core/src/obj/snapshots/objdiff_core__obj__read__test__combine_sections.snap @@ -8,6 +8,7 @@ expression: "(sections, symbols)" id: ".text-0", name: ".text", address: 0, + offset: None, size: 8, kind: Code, data: SectionData( @@ -48,6 +49,7 @@ expression: "(sections, symbols)" id: ".data-combined", name: ".data", address: 0, + offset: None, size: 12, kind: Data, data: SectionData( @@ -83,6 +85,7 @@ expression: "(sections, symbols)" id: ".data-1", name: ".data", address: 0, + offset: None, size: 0, kind: Unknown, data: SectionData( @@ -98,6 +101,7 @@ expression: "(sections, symbols)" id: ".data-2", name: ".data", address: 0, + offset: None, size: 0, kind: Unknown, data: SectionData( diff --git a/objdiff-core/tests/snapshots/arch_arm__read_arm.snap b/objdiff-core/tests/snapshots/arch_arm__read_arm.snap index f3df1fe..0d515ff 100644 --- a/objdiff-core/tests/snapshots/arch_arm__read_arm.snap +++ b/objdiff-core/tests/snapshots/arch_arm__read_arm.snap @@ -1513,6 +1513,9 @@ Object { id: ".text-0", name: ".text", address: 0, + offset: Some( + 52, + ), size: 556, kind: Code, data: SectionData( @@ -1715,6 +1718,9 @@ Object { id: ".rela.text-0", name: ".rela.text", address: 0, + offset: Some( + 3980, + ), size: 276, kind: Unknown, data: SectionData( @@ -1732,6 +1738,9 @@ Object { id: ".data-0", name: ".data", address: 0, + offset: Some( + 608, + ), size: 76, kind: Data, data: SectionData( @@ -1886,6 +1895,9 @@ Object { id: ".rela.data-0", name: ".rela.data", address: 0, + offset: Some( + 4256, + ), size: 204, kind: Unknown, data: SectionData( @@ -1903,6 +1915,9 @@ Object { id: ".symtab-0", name: ".symtab", address: 0, + offset: Some( + 684, + ), size: 1680, kind: Unknown, data: SectionData( @@ -1920,6 +1935,9 @@ Object { id: ".strtab-0", name: ".strtab", address: 0, + offset: Some( + 2364, + ), size: 1615, kind: Unknown, data: SectionData( @@ -1937,6 +1955,9 @@ Object { id: ".shstrtab-0", name: ".shstrtab", address: 0, + offset: Some( + 4460, + ), size: 49, kind: Unknown, data: SectionData( diff --git a/objdiff-core/tests/snapshots/arch_arm__read_thumb.snap b/objdiff-core/tests/snapshots/arch_arm__read_thumb.snap index 9e86193..11f1095 100644 --- a/objdiff-core/tests/snapshots/arch_arm__read_thumb.snap +++ b/objdiff-core/tests/snapshots/arch_arm__read_thumb.snap @@ -3443,6 +3443,9 @@ Object { id: ".symtab-0", name: ".symtab", address: 0, + offset: Some( + 64, + ), size: 4240, kind: Unknown, data: SectionData( @@ -3458,6 +3461,9 @@ Object { id: ".strtab-0", name: ".strtab", address: 0, + offset: Some( + 4304, + ), size: 4913, kind: Unknown, data: SectionData( @@ -3473,6 +3479,9 @@ Object { id: ".shstrtab-0", name: ".shstrtab", address: 0, + offset: Some( + 9232, + ), size: 243, kind: Unknown, data: SectionData( @@ -3488,6 +3497,9 @@ Object { id: ".comment-0", name: ".comment", address: 0, + offset: Some( + 9488, + ), size: 36, kind: Unknown, data: SectionData( @@ -3503,6 +3515,9 @@ Object { id: ".debug_info-0", name: ".debug_info", address: 0, + offset: Some( + 9536, + ), size: 13724, kind: Unknown, data: SectionData( @@ -3518,6 +3533,9 @@ Object { id: ".rel.debug_info-0", name: ".rel.debug_info", address: 0, + offset: Some( + 23264, + ), size: 7680, kind: Unknown, data: SectionData( @@ -3533,6 +3551,9 @@ Object { id: ".debug_macinfo-0", name: ".debug_macinfo", address: 0, + offset: Some( + 30944, + ), size: 0, kind: Unknown, data: SectionData( @@ -3548,6 +3569,9 @@ Object { id: ".debug_loc-0", name: ".debug_loc", address: 0, + offset: Some( + 30944, + ), size: 0, kind: Unknown, data: SectionData( @@ -3563,6 +3587,9 @@ Object { id: " rel.debug_loc-0", name: " rel.debug_loc", address: 0, + offset: Some( + 30944, + ), size: 0, kind: Unknown, data: SectionData( @@ -3578,6 +3605,9 @@ Object { id: ".debug_line-0", name: ".debug_line", address: 0, + offset: Some( + 30944, + ), size: 180, kind: Unknown, data: SectionData( @@ -3593,6 +3623,9 @@ Object { id: ".rel.debug_line-0", name: ".rel.debug_line", address: 0, + offset: Some( + 31136, + ), size: 12, kind: Unknown, data: SectionData( @@ -3608,6 +3641,9 @@ Object { id: ".debug_line-1", name: ".debug_line", address: 0, + offset: Some( + 31152, + ), size: 0, kind: Unknown, data: SectionData( @@ -3623,6 +3659,9 @@ Object { id: ".rel.debug_line-1", name: ".rel.debug_line", address: 0, + offset: Some( + 31152, + ), size: 0, kind: Unknown, data: SectionData( @@ -3638,6 +3677,9 @@ Object { id: ".debug_pubnames-0", name: ".debug_pubnames", address: 0, + offset: Some( + 31152, + ), size: 18, kind: Unknown, data: SectionData( @@ -3653,6 +3695,9 @@ Object { id: ".rel.debug_pubnames-0", name: ".rel.debug_pubnames", address: 0, + offset: Some( + 31184, + ), size: 0, kind: Unknown, data: SectionData( @@ -3668,6 +3713,9 @@ Object { id: ".debug_aranges-0", name: ".debug_aranges", address: 0, + offset: Some( + 31184, + ), size: 0, kind: Unknown, data: SectionData( @@ -3683,6 +3731,9 @@ Object { id: ".debug_abbrev-0", name: ".debug_abbrev", address: 0, + offset: Some( + 31184, + ), size: 211, kind: Unknown, data: SectionData( @@ -3698,6 +3749,9 @@ Object { id: ".text-0", name: ".text", address: 0, + offset: Some( + 31408, + ), size: 244, kind: Code, data: SectionData( @@ -3811,6 +3865,9 @@ Object { id: ".rela.text-0", name: ".rela.text", address: 0, + offset: Some( + 31664, + ), size: 108, kind: Unknown, data: SectionData( diff --git a/objdiff-core/tests/snapshots/arch_mips__read_mips.snap b/objdiff-core/tests/snapshots/arch_mips__read_mips.snap index b67679a..ceab92d 100644 --- a/objdiff-core/tests/snapshots/arch_mips__read_mips.snap +++ b/objdiff-core/tests/snapshots/arch_mips__read_mips.snap @@ -677,6 +677,9 @@ Object { id: ".text-0", name: ".text", address: 0, + offset: Some( + 56, + ), size: 632, kind: Code, data: SectionData( @@ -1303,6 +1306,9 @@ Object { id: ".rel.text-0", name: ".rel.text", address: 0, + offset: Some( + 4292, + ), size: 608, kind: Unknown, data: SectionData( @@ -1320,6 +1326,9 @@ Object { id: ".data-0", name: ".data", address: 0, + offset: Some( + 688, + ), size: 0, kind: Data, data: SectionData( @@ -1337,6 +1346,7 @@ Object { id: ".bss-0", name: ".bss", address: 0, + offset: None, size: 0, kind: Bss, data: SectionData( @@ -1354,6 +1364,9 @@ Object { id: ".reginfo-0", name: ".reginfo", address: 0, + offset: Some( + 688, + ), size: 24, kind: Unknown, data: SectionData( @@ -1371,6 +1384,9 @@ Object { id: ".mdebug-0", name: ".mdebug", address: 0, + offset: Some( + 712, + ), size: 1932, kind: Unknown, data: SectionData( @@ -1388,6 +1404,9 @@ Object { id: ".mdebug.eabi64-0", name: ".mdebug.eabi64", address: 0, + offset: Some( + 2644, + ), size: 0, kind: Unknown, data: SectionData( @@ -1405,6 +1424,9 @@ Object { id: ".rodata-0", name: ".rodata", address: 0, + offset: Some( + 2648, + ), size: 43, kind: Data, data: SectionData( @@ -1422,6 +1444,9 @@ Object { id: ".sdata-0", name: ".sdata", address: 0, + offset: Some( + 2696, + ), size: 76, kind: Data, data: SectionData( @@ -1439,6 +1464,9 @@ Object { id: ".symtab-0", name: ".symtab", address: 0, + offset: Some( + 2772, + ), size: 864, kind: Unknown, data: SectionData( @@ -1456,6 +1484,9 @@ Object { id: ".strtab-0", name: ".strtab", address: 0, + offset: Some( + 3636, + ), size: 653, kind: Unknown, data: SectionData( @@ -1473,6 +1504,9 @@ Object { id: ".shstrtab-0", name: ".shstrtab", address: 0, + offset: Some( + 4900, + ), size: 95, kind: Unknown, data: SectionData( diff --git a/objdiff-core/tests/snapshots/arch_ppc__read_extab.snap b/objdiff-core/tests/snapshots/arch_ppc__read_extab.snap index cc1ac64..14387a1 100644 --- a/objdiff-core/tests/snapshots/arch_ppc__read_extab.snap +++ b/objdiff-core/tests/snapshots/arch_ppc__read_extab.snap @@ -314,6 +314,9 @@ Object { id: ".text-0", name: ".text", address: 0, + offset: Some( + 52, + ), size: 552, kind: Code, data: SectionData( @@ -340,6 +343,9 @@ Object { id: "extab-0", name: "extab", address: 0, + offset: Some( + 604, + ), size: 40, kind: Data, data: SectionData( @@ -366,6 +372,9 @@ Object { id: "extabindex-0", name: "extabindex", address: 0, + offset: Some( + 644, + ), size: 36, kind: Data, data: SectionData( @@ -432,6 +441,9 @@ Object { id: ".rela.text-0", name: ".rela.text", address: 0, + offset: Some( + 680, + ), size: 12, kind: Unknown, data: SectionData( @@ -449,6 +461,9 @@ Object { id: ".relaextab-0", name: ".relaextab", address: 0, + offset: Some( + 692, + ), size: 12, kind: Unknown, data: SectionData( @@ -466,6 +481,9 @@ Object { id: ".relaextabindex-0", name: ".relaextabindex", address: 0, + offset: Some( + 704, + ), size: 72, kind: Unknown, data: SectionData( @@ -483,6 +501,9 @@ Object { id: ".symtab-0", name: ".symtab", address: 0, + offset: Some( + 776, + ), size: 240, kind: Unknown, data: SectionData( @@ -500,6 +521,9 @@ Object { id: ".strtab-0", name: ".strtab", address: 0, + offset: Some( + 1016, + ), size: 121, kind: Unknown, data: SectionData( @@ -517,6 +541,9 @@ Object { id: ".shstrtab-0", name: ".shstrtab", address: 0, + offset: Some( + 1137, + ), size: 97, kind: Unknown, data: SectionData( @@ -534,6 +561,9 @@ Object { id: ".comment-0", name: ".comment", address: 0, + offset: Some( + 1234, + ), size: 164, kind: Unknown, data: SectionData( diff --git a/objdiff-core/tests/snapshots/arch_ppc__read_ppc.snap b/objdiff-core/tests/snapshots/arch_ppc__read_ppc.snap index 2152e56..1628a3e 100644 --- a/objdiff-core/tests/snapshots/arch_ppc__read_ppc.snap +++ b/objdiff-core/tests/snapshots/arch_ppc__read_ppc.snap @@ -163,6 +163,9 @@ Object { id: ".text-0", name: ".text", address: 0, + offset: Some( + 64, + ), size: 284, kind: Code, data: SectionData( @@ -391,6 +394,9 @@ Object { id: ".ctors-0", name: ".ctors", address: 0, + offset: Some( + 352, + ), size: 4, kind: Data, data: SectionData( @@ -419,6 +425,7 @@ Object { id: ".sbss-0", name: ".sbss", address: 0, + offset: None, size: 16, kind: Bss, data: SectionData( @@ -438,6 +445,9 @@ Object { id: ".rela.text-0", name: ".rela.text", address: 0, + offset: Some( + 356, + ), size: 216, kind: Unknown, data: SectionData( @@ -455,6 +465,9 @@ Object { id: ".rela.ctors-0", name: ".rela.ctors", address: 0, + offset: Some( + 572, + ), size: 12, kind: Unknown, data: SectionData( @@ -472,6 +485,9 @@ Object { id: ".symtab-0", name: ".symtab", address: 0, + offset: Some( + 584, + ), size: 176, kind: Unknown, data: SectionData( @@ -489,6 +505,9 @@ Object { id: ".strtab-0", name: ".strtab", address: 0, + offset: Some( + 760, + ), size: 105, kind: Unknown, data: SectionData( @@ -506,6 +525,9 @@ Object { id: ".shstrtab-0", name: ".shstrtab", address: 0, + offset: Some( + 865, + ), size: 77, kind: Unknown, data: SectionData( @@ -523,6 +545,9 @@ Object { id: ".comment-0", name: ".comment", address: 0, + offset: Some( + 960, + ), size: 132, kind: Unknown, data: SectionData( @@ -540,6 +565,9 @@ Object { id: ".note.split-0", name: ".note.split", address: 0, + offset: Some( + 1120, + ), size: 152, kind: Unknown, data: SectionData( diff --git a/objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff.snap b/objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff.snap index 0f88302..0f88c24 100644 --- a/objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff.snap +++ b/objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff.snap @@ -1107,6 +1107,9 @@ Object { id: ".drectve-0", name: ".drectve", address: 0, + offset: Some( + 1020, + ), size: 132, kind: Unknown, data: SectionData( @@ -1124,6 +1127,9 @@ Object { id: ".debug$S-0", name: ".debug$S", address: 0, + offset: Some( + 1152, + ), size: 3952, kind: Unknown, data: SectionData( @@ -1141,6 +1147,9 @@ Object { id: ".XBLD$W-0", name: ".XBLD$W", address: 0, + offset: Some( + 5484, + ), size: 16, kind: Data, data: SectionData( @@ -1158,6 +1167,9 @@ Object { id: ".XBLD$W-1", name: ".XBLD$W", address: 0, + offset: Some( + 5500, + ), size: 16, kind: Unknown, data: SectionData( @@ -1175,6 +1187,9 @@ Object { id: ".rdata-combined", name: ".rdata", address: 0, + offset: Some( + 5516, + ), size: 416, kind: Data, data: SectionData( @@ -1192,6 +1207,9 @@ Object { id: ".text-0", name: ".text", address: 0, + offset: Some( + 5872, + ), size: 1676, kind: Code, data: SectionData( @@ -2074,6 +2092,9 @@ Object { id: ".pdata-0", name: ".pdata", address: 0, + offset: Some( + 9408, + ), size: 40, kind: Data, data: SectionData( @@ -2132,6 +2153,9 @@ Object { id: ".rdata-1", name: ".rdata", address: 0, + offset: Some( + 9498, + ), size: 0, kind: Unknown, data: SectionData( @@ -2149,6 +2173,9 @@ Object { id: ".rdata-2", name: ".rdata", address: 0, + offset: Some( + 9502, + ), size: 0, kind: Unknown, data: SectionData( @@ -2166,6 +2193,9 @@ Object { id: ".rdata-3", name: ".rdata", address: 0, + offset: Some( + 9506, + ), size: 0, kind: Unknown, data: SectionData( @@ -2183,6 +2213,9 @@ Object { id: ".rdata-4", name: ".rdata", address: 0, + offset: Some( + 9510, + ), size: 0, kind: Unknown, data: SectionData( @@ -2200,6 +2233,9 @@ Object { id: ".rdata-5", name: ".rdata", address: 0, + offset: Some( + 9514, + ), size: 0, kind: Unknown, data: SectionData( @@ -2217,6 +2253,9 @@ Object { id: ".rdata-6", name: ".rdata", address: 0, + offset: Some( + 9518, + ), size: 0, kind: Unknown, data: SectionData( @@ -2234,6 +2273,9 @@ Object { id: ".rdata-7", name: ".rdata", address: 0, + offset: Some( + 9522, + ), size: 0, kind: Unknown, data: SectionData( @@ -2251,6 +2293,9 @@ Object { id: ".rdata-8", name: ".rdata", address: 0, + offset: Some( + 9526, + ), size: 0, kind: Unknown, data: SectionData( @@ -2268,6 +2313,9 @@ Object { id: ".rdata-9", name: ".rdata", address: 0, + offset: Some( + 9530, + ), size: 0, kind: Unknown, data: SectionData( @@ -2285,6 +2333,9 @@ Object { id: ".rdata-10", name: ".rdata", address: 0, + offset: Some( + 9534, + ), size: 0, kind: Unknown, data: SectionData( @@ -2302,6 +2353,9 @@ Object { id: ".rdata-11", name: ".rdata", address: 0, + offset: Some( + 9538, + ), size: 0, kind: Unknown, data: SectionData( @@ -2319,6 +2373,9 @@ Object { id: ".rdata-12", name: ".rdata", address: 0, + offset: Some( + 9542, + ), size: 0, kind: Unknown, data: SectionData( @@ -2336,6 +2393,9 @@ Object { id: ".rdata-13", name: ".rdata", address: 0, + offset: Some( + 9546, + ), size: 0, kind: Unknown, data: SectionData( @@ -2353,6 +2413,9 @@ Object { id: ".rdata-14", name: ".rdata", address: 0, + offset: Some( + 9550, + ), size: 0, kind: Unknown, data: SectionData( @@ -2370,6 +2433,9 @@ Object { id: ".rdata-15", name: ".rdata", address: 0, + offset: Some( + 9554, + ), size: 0, kind: Unknown, data: SectionData( @@ -2387,6 +2453,9 @@ Object { id: ".debug$S-1", name: ".debug$S", address: 0, + offset: Some( + 9558, + ), size: 40, kind: Unknown, data: SectionData( @@ -2404,6 +2473,9 @@ Object { id: ".debug$S-2", name: ".debug$S", address: 0, + offset: Some( + 9618, + ), size: 40, kind: Unknown, data: SectionData( @@ -2421,6 +2493,9 @@ Object { id: ".debug$T-0", name: ".debug$T", address: 0, + offset: Some( + 9678, + ), size: 48, kind: Unknown, data: SectionData( diff --git a/objdiff-core/tests/snapshots/arch_x86__read_x86.snap b/objdiff-core/tests/snapshots/arch_x86__read_x86.snap index 92dc5cc..4e2153e 100644 --- a/objdiff-core/tests/snapshots/arch_x86__read_x86.snap +++ b/objdiff-core/tests/snapshots/arch_x86__read_x86.snap @@ -130,6 +130,9 @@ Object { id: ".drectve-0", name: ".drectve", address: 0, + offset: Some( + 140, + ), size: 38, kind: Unknown, data: SectionData( @@ -147,6 +150,9 @@ Object { id: ".data-0", name: ".data", address: 0, + offset: Some( + 178, + ), size: 10, kind: Data, data: SectionData( @@ -173,6 +179,9 @@ Object { id: ".text-0", name: ".text", address: 0, + offset: Some( + 198, + ), size: 18, kind: Code, data: SectionData( diff --git a/objdiff-core/tests/snapshots/arch_x86__read_x86_64.snap b/objdiff-core/tests/snapshots/arch_x86__read_x86_64.snap index cc95831..97c31d4 100644 --- a/objdiff-core/tests/snapshots/arch_x86__read_x86_64.snap +++ b/objdiff-core/tests/snapshots/arch_x86__read_x86_64.snap @@ -860,6 +860,9 @@ Object { id: ".drectve-0", name: ".drectve", address: 0, + offset: Some( + 980, + ), size: 47, kind: Unknown, data: SectionData( @@ -877,6 +880,9 @@ Object { id: ".debug$S-0", name: ".debug$S", address: 0, + offset: Some( + 1027, + ), size: 156, kind: Unknown, data: SectionData( @@ -894,6 +900,9 @@ Object { id: ".text$mn-0", name: ".text$mn", address: 0, + offset: Some( + 1183, + ), size: 429, kind: Code, data: SectionData( @@ -1032,6 +1041,9 @@ Object { id: ".text$mn-1", name: ".text$mn", address: 0, + offset: Some( + 1762, + ), size: 141, kind: Code, data: SectionData( @@ -1049,6 +1061,9 @@ Object { id: ".text$mn-2", name: ".text$mn", address: 0, + offset: Some( + 1903, + ), size: 87, kind: Code, data: SectionData( @@ -1066,6 +1081,9 @@ Object { id: ".text$mn-3", name: ".text$mn", address: 0, + offset: Some( + 1990, + ), size: 105, kind: Code, data: SectionData( @@ -1083,6 +1101,9 @@ Object { id: ".text$mn-4", name: ".text$mn", address: 0, + offset: Some( + 2095, + ), size: 82, kind: Code, data: SectionData( @@ -1100,6 +1121,9 @@ Object { id: ".xdata-0", name: ".xdata", address: 0, + offset: Some( + 2177, + ), size: 8, kind: Data, data: SectionData( @@ -1117,6 +1141,9 @@ Object { id: ".pdata-0", name: ".pdata", address: 0, + offset: Some( + 2185, + ), size: 12, kind: Data, data: SectionData( @@ -1159,6 +1186,9 @@ Object { id: ".xdata-1", name: ".xdata", address: 0, + offset: Some( + 2227, + ), size: 8, kind: Data, data: SectionData( @@ -1176,6 +1206,9 @@ Object { id: ".pdata-1", name: ".pdata", address: 0, + offset: Some( + 2235, + ), size: 12, kind: Data, data: SectionData( @@ -1218,6 +1251,9 @@ Object { id: ".xdata-2", name: ".xdata", address: 0, + offset: Some( + 2277, + ), size: 8, kind: Data, data: SectionData( @@ -1235,6 +1271,9 @@ Object { id: ".pdata-2", name: ".pdata", address: 0, + offset: Some( + 2285, + ), size: 12, kind: Data, data: SectionData( @@ -1277,6 +1316,9 @@ Object { id: ".xdata-3", name: ".xdata", address: 0, + offset: Some( + 2327, + ), size: 8, kind: Data, data: SectionData( @@ -1294,6 +1336,9 @@ Object { id: ".pdata-3", name: ".pdata", address: 0, + offset: Some( + 2335, + ), size: 12, kind: Data, data: SectionData( @@ -1336,6 +1381,9 @@ Object { id: ".rdata-0", name: ".rdata", address: 0, + offset: Some( + 2377, + ), size: 256, kind: Data, data: SectionData( @@ -1386,6 +1434,9 @@ Object { id: ".xdata-4", name: ".xdata", address: 0, + offset: Some( + 2673, + ), size: 20, kind: Data, data: SectionData( @@ -1412,6 +1463,9 @@ Object { id: ".pdata-4", name: ".pdata", address: 0, + offset: Some( + 2703, + ), size: 12, kind: Data, data: SectionData( @@ -1454,6 +1508,9 @@ Object { id: ".voltbl-0", name: ".voltbl", address: 0, + offset: Some( + 2745, + ), size: 16, kind: Unknown, data: SectionData( @@ -1471,6 +1528,9 @@ Object { id: ".rtc$IMZ-0", name: ".rtc$IMZ", address: 0, + offset: Some( + 2761, + ), size: 8, kind: Data, data: SectionData( @@ -1497,6 +1557,9 @@ Object { id: ".rtc$TMZ-0", name: ".rtc$TMZ", address: 0, + offset: Some( + 2779, + ), size: 8, kind: Data, data: SectionData( @@ -1523,6 +1586,9 @@ Object { id: ".rdata-1", name: ".rdata", address: 0, + offset: Some( + 2797, + ), size: 4, kind: Data, data: SectionData( @@ -1540,6 +1606,9 @@ Object { id: ".rdata-2", name: ".rdata", address: 0, + offset: Some( + 2801, + ), size: 4, kind: Data, data: SectionData( @@ -1557,6 +1626,9 @@ Object { id: ".chks64-0", name: ".chks64", address: 0, + offset: Some( + 2805, + ), size: 192, kind: Unknown, data: SectionData( diff --git a/objdiff-core/tests/snapshots/arch_x86__read_x86_combine_sections.snap b/objdiff-core/tests/snapshots/arch_x86__read_x86_combine_sections.snap index a2a6ba3..e0c8293 100644 --- a/objdiff-core/tests/snapshots/arch_x86__read_x86_combine_sections.snap +++ b/objdiff-core/tests/snapshots/arch_x86__read_x86_combine_sections.snap @@ -7,6 +7,9 @@ expression: obj.sections id: ".drectve-0", name: ".drectve", address: 0, + offset: Some( + 1420, + ), size: 47, kind: Unknown, data: SectionData( @@ -24,6 +27,9 @@ expression: obj.sections id: ".debug$S-0", name: ".debug$S", address: 0, + offset: Some( + 1467, + ), size: 100, kind: Unknown, data: SectionData( @@ -41,6 +47,9 @@ expression: obj.sections id: ".rdata-0", name: ".rdata", address: 0, + offset: Some( + 1567, + ), size: 0, kind: Unknown, data: SectionData( @@ -58,6 +67,9 @@ expression: obj.sections id: ".rdata-1", name: ".rdata", address: 0, + offset: Some( + 1595, + ), size: 0, kind: Unknown, data: SectionData( @@ -75,6 +87,9 @@ expression: obj.sections id: ".text$mn-0", name: ".text$mn", address: 0, + offset: Some( + 1623, + ), size: 0, kind: Unknown, data: SectionData( @@ -92,6 +107,9 @@ expression: obj.sections id: ".data-combined", name: ".data", address: 0, + offset: Some( + 1689, + ), size: 56, kind: Data, data: SectionData( @@ -150,6 +168,9 @@ expression: obj.sections id: ".rdata-combined", name: ".rdata", address: 0, + offset: Some( + 1715, + ), size: 304, kind: Data, data: SectionData( @@ -424,6 +445,9 @@ expression: obj.sections id: ".rdata$r-1", name: ".rdata$r", address: 0, + offset: Some( + 1741, + ), size: 0, kind: Unknown, data: SectionData( @@ -441,6 +465,9 @@ expression: obj.sections id: ".rdata$r-2", name: ".rdata$r", address: 0, + offset: Some( + 1756, + ), size: 0, kind: Unknown, data: SectionData( @@ -458,6 +485,9 @@ expression: obj.sections id: ".data$rs-1", name: ".data$rs", address: 0, + offset: Some( + 1804, + ), size: 0, kind: Unknown, data: SectionData( @@ -475,6 +505,9 @@ expression: obj.sections id: ".rdata$r-3", name: ".rdata$r", address: 0, + offset: Some( + 1830, + ), size: 0, kind: Unknown, data: SectionData( @@ -492,6 +525,9 @@ expression: obj.sections id: ".rdata$r-4", name: ".rdata$r", address: 0, + offset: Some( + 1856, + ), size: 0, kind: Unknown, data: SectionData( @@ -509,6 +545,9 @@ expression: obj.sections id: ".rdata$r-5", name: ".rdata$r", address: 0, + offset: Some( + 1871, + ), size: 0, kind: Unknown, data: SectionData( @@ -526,6 +565,9 @@ expression: obj.sections id: ".rdata$r-6", name: ".rdata$r", address: 0, + offset: Some( + 1919, + ), size: 0, kind: Unknown, data: SectionData( @@ -543,6 +585,9 @@ expression: obj.sections id: ".data$rs-2", name: ".data$rs", address: 0, + offset: Some( + 1959, + ), size: 0, kind: Unknown, data: SectionData( @@ -560,6 +605,9 @@ expression: obj.sections id: ".rdata$r-7", name: ".rdata$r", address: 0, + offset: Some( + 1985, + ), size: 0, kind: Unknown, data: SectionData( @@ -577,6 +625,9 @@ expression: obj.sections id: ".rdata$r-8", name: ".rdata$r", address: 0, + offset: Some( + 2011, + ), size: 0, kind: Unknown, data: SectionData( @@ -594,6 +645,9 @@ expression: obj.sections id: ".rdata$r-9", name: ".rdata$r", address: 0, + offset: Some( + 2054, + ), size: 0, kind: Unknown, data: SectionData( @@ -611,6 +665,9 @@ expression: obj.sections id: ".rdata$r-10", name: ".rdata$r", address: 0, + offset: Some( + 2102, + ), size: 0, kind: Unknown, data: SectionData( @@ -628,6 +685,9 @@ expression: obj.sections id: ".text$mn-1", name: ".text$mn", address: 0, + offset: Some( + 2150, + ), size: 0, kind: Unknown, data: SectionData( @@ -645,6 +705,9 @@ expression: obj.sections id: ".rdata$r-11", name: ".rdata$r", address: 0, + offset: Some( + 2168, + ), size: 0, kind: Unknown, data: SectionData( @@ -662,6 +725,9 @@ expression: obj.sections id: ".text$mn-2", name: ".text$mn", address: 0, + offset: Some( + 2208, + ), size: 0, kind: Unknown, data: SectionData( @@ -679,6 +745,9 @@ expression: obj.sections id: ".text$mn-3", name: ".text$mn", address: 0, + offset: Some( + 2238, + ), size: 0, kind: Unknown, data: SectionData( @@ -696,6 +765,9 @@ expression: obj.sections id: ".text$mn-4", name: ".text$mn", address: 0, + offset: Some( + 2268, + ), size: 0, kind: Unknown, data: SectionData( @@ -713,6 +785,9 @@ expression: obj.sections id: ".text$mn-5", name: ".text$mn", address: 0, + offset: Some( + 2357, + ), size: 0, kind: Unknown, data: SectionData( @@ -730,6 +805,9 @@ expression: obj.sections id: ".text$mn-6", name: ".text$mn", address: 0, + offset: Some( + 2423, + ), size: 0, kind: Unknown, data: SectionData( @@ -747,6 +825,9 @@ expression: obj.sections id: ".text-combined", name: ".text", address: 0, + offset: Some( + 2489, + ), size: 320, kind: Code, data: SectionData( @@ -901,6 +982,9 @@ expression: obj.sections id: ".text$yd-0", name: ".text$yd", address: 0, + offset: Some( + 2527, + ), size: 0, kind: Unknown, data: SectionData( @@ -918,6 +1002,9 @@ expression: obj.sections id: ".rdata-2", name: ".rdata", address: 0, + offset: Some( + 2562, + ), size: 0, kind: Unknown, data: SectionData( @@ -935,6 +1022,9 @@ expression: obj.sections id: ".rdata-3", name: ".rdata", address: 0, + offset: Some( + 2590, + ), size: 0, kind: Unknown, data: SectionData( @@ -952,6 +1042,9 @@ expression: obj.sections id: ".data-0", name: ".data", address: 0, + offset: Some( + 2618, + ), size: 0, kind: Unknown, data: SectionData( @@ -969,6 +1062,9 @@ expression: obj.sections id: ".rdata$r-12", name: ".rdata$r", address: 0, + offset: Some( + 2646, + ), size: 0, kind: Unknown, data: SectionData( @@ -986,6 +1082,9 @@ expression: obj.sections id: ".rdata$r-13", name: ".rdata$r", address: 0, + offset: Some( + 2686, + ), size: 0, kind: Unknown, data: SectionData( @@ -1003,6 +1102,9 @@ expression: obj.sections id: ".CRT$XCU-0", name: ".CRT$XCU", address: 0, + offset: Some( + 2726, + ), size: 4, kind: Data, data: SectionData( @@ -1029,6 +1131,9 @@ expression: obj.sections id: ".chks64-0", name: ".chks64", address: 0, + offset: Some( + 2740, + ), size: 280, kind: Unknown, data: SectionData( diff --git a/objdiff-core/tests/snapshots/arch_x86__read_x86_jumptable.snap b/objdiff-core/tests/snapshots/arch_x86__read_x86_jumptable.snap index ab3f2f1..e56285c 100644 --- a/objdiff-core/tests/snapshots/arch_x86__read_x86_jumptable.snap +++ b/objdiff-core/tests/snapshots/arch_x86__read_x86_jumptable.snap @@ -195,6 +195,9 @@ Object { id: ".drectve-0", name: ".drectve", address: 0, + offset: Some( + 140, + ), size: 38, kind: Unknown, data: SectionData( @@ -212,6 +215,9 @@ Object { id: ".text-0", name: ".text", address: 0, + offset: Some( + 178, + ), size: 96, kind: Code, data: SectionData( @@ -294,6 +300,9 @@ Object { id: ".debug$F-0", name: ".debug$F", address: 0, + offset: Some( + 354, + ), size: 16, kind: Unknown, data: SectionData( diff --git a/objdiff-core/tests/snapshots/arch_x86__read_x86_local_labels.snap b/objdiff-core/tests/snapshots/arch_x86__read_x86_local_labels.snap index 3e5131f..a5f0112 100644 --- a/objdiff-core/tests/snapshots/arch_x86__read_x86_local_labels.snap +++ b/objdiff-core/tests/snapshots/arch_x86__read_x86_local_labels.snap @@ -143,6 +143,9 @@ Object { id: ".text-0", name: ".text", address: 0, + offset: Some( + 60, + ), size: 92, kind: Code, data: SectionData(