From 0fb7f3901cd26a384a6d64ea8990ea6515ca9bd0 Mon Sep 17 00:00:00 2001 From: Luke Street Date: Thu, 17 Jul 2025 21:19:06 -0600 Subject: [PATCH] Add PPC COFF tests; fix IMAGE_REL_PPC_PAIR handling --- objdiff-core/src/arch/arm.rs | 6 +- objdiff-core/src/arch/arm64.rs | 2 +- objdiff-core/src/arch/mips.rs | 8 +- objdiff-core/src/arch/mod.rs | 6 +- objdiff-core/src/arch/ppc/mod.rs | 59 +- objdiff-core/src/arch/superh/mod.rs | 2 +- objdiff-core/src/arch/x86.rs | 8 +- objdiff-core/src/obj/read.rs | 5 +- objdiff-core/tests/arch_ppc.rs | 28 + objdiff-core/tests/data/ppc/vmx128.obj | Bin 0 -> 12120 bytes .../arch_ppc__read_vmx128_coff-2.snap | 1826 ++++++++++++ .../arch_ppc__read_vmx128_coff-3.snap | 134 + .../snapshots/arch_ppc__read_vmx128_coff.snap | 2442 +++++++++++++++++ 13 files changed, 4485 insertions(+), 41 deletions(-) create mode 100644 objdiff-core/tests/data/ppc/vmx128.obj create mode 100644 objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff-2.snap create mode 100644 objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff-3.snap create mode 100644 objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff.snap diff --git a/objdiff-core/src/arch/arm.rs b/objdiff-core/src/arch/arm.rs index 0760187..fffc9cb 100644 --- a/objdiff-core/src/arch/arm.rs +++ b/objdiff-core/src/arch/arm.rs @@ -363,10 +363,10 @@ impl Arch for ArchArm { address: u64, _relocation: &object::Relocation, flags: RelocationFlags, - ) -> Result { + ) -> Result> { let section_data = section.data()?; let address = address as usize; - Ok(match flags { + Ok(Some(match flags { // ARM calls RelocationFlags::Elf(elf::R_ARM_PC24) | RelocationFlags::Elf(elf::R_ARM_XPC25) @@ -396,7 +396,7 @@ impl Arch for ArchArm { } flags => bail!("Unsupported ARM implicit relocation {flags:?}"), - } as i64) + } as i64)) } fn demangle(&self, name: &str) -> Option { diff --git a/objdiff-core/src/arch/arm64.rs b/objdiff-core/src/arch/arm64.rs index 2308bfc..5c4d972 100644 --- a/objdiff-core/src/arch/arm64.rs +++ b/objdiff-core/src/arch/arm64.rs @@ -115,7 +115,7 @@ impl Arch for ArchArm64 { address: u64, _relocation: &object::Relocation, flags: RelocationFlags, - ) -> Result { + ) -> Result> { bail!("Unsupported ARM64 implicit relocation {:#x}:{:?}", address, flags) } diff --git a/objdiff-core/src/arch/mips.rs b/objdiff-core/src/arch/mips.rs index 2608de6..fa6404b 100644 --- a/objdiff-core/src/arch/mips.rs +++ b/objdiff-core/src/arch/mips.rs @@ -232,7 +232,7 @@ impl Arch for ArchMips { address: u64, reloc: &object::Relocation, flags: RelocationFlags, - ) -> Result { + ) -> Result> { // Check for paired R_MIPS_HI16 and R_MIPS_LO16 relocations. if let RelocationFlags::Elf(elf::R_MIPS_HI16 | elf::R_MIPS_LO16) = flags { if let Some(addend) = self @@ -240,14 +240,14 @@ impl Arch for ArchMips { .get(section.index().0) .and_then(|m| m.get(&address).copied()) { - return Ok(addend); + return Ok(Some(addend)); } } let data = section.data()?; let code = data[address as usize..address as usize + 4].try_into()?; let addend = self.endianness.read_u32_bytes(code); - Ok(match flags { + Ok(Some(match flags { RelocationFlags::Elf(elf::R_MIPS_32) => addend as i64, RelocationFlags::Elf(elf::R_MIPS_26) => ((addend & 0x03FFFFFF) << 2) as i64, RelocationFlags::Elf(elf::R_MIPS_HI16) => ((addend & 0x0000FFFF) << 16) as i32 as i64, @@ -271,7 +271,7 @@ impl Arch for ArchMips { RelocationFlags::Elf(elf::R_MIPS_PC16) => 0, // PC-relative relocation RelocationFlags::Elf(R_MIPS15_S3) => ((addend & 0x001FFFC0) >> 3) as i64, flags => bail!("Unsupported MIPS implicit relocation {flags:?}"), - }) + })) } fn demangle(&self, name: &str) -> Option { diff --git a/objdiff-core/src/arch/mod.rs b/objdiff-core/src/arch/mod.rs index 6b5408a..6cd0c4f 100644 --- a/objdiff-core/src/arch/mod.rs +++ b/objdiff-core/src/arch/mod.rs @@ -364,7 +364,7 @@ pub trait Arch: Send + Sync + Debug { address: u64, relocation: &object::Relocation, flags: RelocationFlags, - ) -> Result; + ) -> Result>; fn demangle(&self, _name: &str) -> Option { None } @@ -463,8 +463,8 @@ impl Arch for ArchDummy { _address: u64, _relocation: &object::Relocation, _flags: RelocationFlags, - ) -> Result { - Ok(0) + ) -> Result> { + Ok(Some(0)) } fn data_reloc_size(&self, _flags: RelocationFlags) -> usize { 0 } diff --git a/objdiff-core/src/arch/ppc/mod.rs b/objdiff-core/src/arch/ppc/mod.rs index 48a71e7..83730c0 100644 --- a/objdiff-core/src/arch/ppc/mod.rs +++ b/objdiff-core/src/arch/ppc/mod.rs @@ -6,10 +6,10 @@ use alloc::{ vec::Vec, }; -use anyhow::{Result, bail, ensure}; +use anyhow::{Result, anyhow, bail, ensure}; use cwextab::{ExceptionTableData, decode_extab}; use flagset::Flags; -use object::{Endian as _, Object as _, ObjectSection as _, ObjectSymbol as _, elf, pe}; +use object::{Object as _, ObjectSection as _, ObjectSymbol as _, elf, pe}; use crate::{ arch::{Arch, DataType}, @@ -210,32 +210,35 @@ impl Arch for ArchPpc { fn implcit_addend( &self, - file: &object::File<'_>, + _file: &object::File<'_>, section: &object::Section, address: u64, _relocation: &object::Relocation, flags: RelocationFlags, - ) -> Result { - let section_data = section.data()?; - let address = address as usize; - let data = section_data - .get(address..address + 4) - .ok_or_else(|| anyhow::anyhow!("Invalid address {address} for section data"))? - .try_into()?; - let code = file.endianness().read_u32_bytes(data); - Ok(match flags { + ) -> Result> { + match flags { + // IMAGE_REL_PPC_PAIR contains the REF{HI,LO} displacement instead of a symbol index RelocationFlags::Coff(pe::IMAGE_REL_PPC_REFHI) - | RelocationFlags::Coff(pe::IMAGE_REL_PPC_REFLO) => (code & 0xffff) as i16 as i32, - RelocationFlags::Coff(pe::IMAGE_REL_PPC_REL24) => { - // let addend = (((code & 0x3fffffc) << 6) as i32) >> 6; - // println!("PPC_REL24 addend: {data:?} => {addend}"); - // addend - 0 - } - RelocationFlags::Coff(pe::IMAGE_REL_PPC_ADDR32) => code as i32, - RelocationFlags::Coff(pe::IMAGE_REL_PPC_PAIR) => 0, - flags => bail!("Unsupported PPC implicit relocation {flags:?}"), - } as i64) + | RelocationFlags::Coff(pe::IMAGE_REL_PPC_REFLO) => section + .relocations() + .skip_while(|&(a, _)| a < address) + .take_while(|&(a, _)| a == address) + .find(|(_, reloc)| { + matches!(reloc.flags(), object::RelocationFlags::Coff { + typ: pe::IMAGE_REL_PPC_PAIR + }) + }) + .map_or(Ok(Some(0)), |(_, reloc)| match reloc.target() { + object::RelocationTarget::Symbol(index) => { + Ok(Some(index.0 as u16 as i16 as i64)) + } + target => Err(anyhow!("Unsupported IMAGE_REL_PPC_PAIR target {target:?}")), + }), + // Skip PAIR relocations as they are handled by the previous case + RelocationFlags::Coff(pe::IMAGE_REL_PPC_PAIR) => Ok(None), + RelocationFlags::Coff(_) => Ok(Some(0)), + flags => Err(anyhow!("Unsupported PPC implicit relocation {flags:?}")), + } } fn demangle(&self, name: &str) -> Option { @@ -263,7 +266,15 @@ impl Arch for ArchPpc { elf::R_PPC_REL14 => Some("R_PPC_REL14"), _ => None, }, - _ => None, + RelocationFlags::Coff(r_type) => match r_type { + pe::IMAGE_REL_PPC_ADDR32 => Some("IMAGE_REL_PPC_ADDR32"), + pe::IMAGE_REL_PPC_REFHI => Some("IMAGE_REL_PPC_REFHI"), + pe::IMAGE_REL_PPC_REFLO => Some("IMAGE_REL_PPC_REFLO"), + pe::IMAGE_REL_PPC_REL24 => Some("IMAGE_REL_PPC_REL24"), + pe::IMAGE_REL_PPC_REL14 => Some("IMAGE_REL_PPC_REL14"), + pe::IMAGE_REL_PPC_PAIR => Some("IMAGE_REL_PPC_PAIR"), + _ => None, + }, } } diff --git a/objdiff-core/src/arch/superh/mod.rs b/objdiff-core/src/arch/superh/mod.rs index 0b98725..8c48953 100644 --- a/objdiff-core/src/arch/superh/mod.rs +++ b/objdiff-core/src/arch/superh/mod.rs @@ -139,7 +139,7 @@ impl Arch for ArchSuperH { address: u64, _relocation: &object::Relocation, flags: RelocationFlags, - ) -> Result { + ) -> Result> { bail!("Unsupported SuperH implicit relocation {:#x}:{:?}", address, flags) } diff --git a/objdiff-core/src/arch/x86.rs b/objdiff-core/src/arch/x86.rs index d89674e..6e3de36 100644 --- a/objdiff-core/src/arch/x86.rs +++ b/objdiff-core/src/arch/x86.rs @@ -232,14 +232,14 @@ impl Arch for ArchX86 { address: u64, _relocation: &object::Relocation, flags: RelocationFlags, - ) -> Result { + ) -> Result> { match self.arch { Architecture::X86 => match flags { RelocationFlags::Coff(pe::IMAGE_REL_I386_DIR32 | pe::IMAGE_REL_I386_REL32) | RelocationFlags::Elf(elf::R_386_32 | elf::R_386_PC32) => { let data = section.data()?[address as usize..address as usize + 4].try_into()?; - Ok(self.endianness.read_i32_bytes(data) as i64) + Ok(Some(self.endianness.read_i32_bytes(data) as i64)) } flags => bail!("Unsupported x86 implicit relocation {flags:?}"), }, @@ -248,13 +248,13 @@ impl Arch for ArchX86 { | RelocationFlags::Elf(elf::R_X86_64_32 | elf::R_X86_64_PC32) => { let data = section.data()?[address as usize..address as usize + 4].try_into()?; - Ok(self.endianness.read_i32_bytes(data) as i64) + Ok(Some(self.endianness.read_i32_bytes(data) as i64)) } RelocationFlags::Coff(pe::IMAGE_REL_AMD64_ADDR64) | RelocationFlags::Elf(elf::R_X86_64_64) => { let data = section.data()?[address as usize..address as usize + 8].try_into()?; - Ok(self.endianness.read_i64_bytes(data)) + Ok(Some(self.endianness.read_i64_bytes(data))) } flags => bail!("Unsupported x86-64 implicit relocation {flags:?}"), }, diff --git a/objdiff-core/src/obj/read.rs b/objdiff-core/src/obj/read.rs index 8196e37..51b863f 100644 --- a/objdiff-core/src/obj/read.rs +++ b/objdiff-core/src/obj/read.rs @@ -338,7 +338,10 @@ fn map_section_relocations( }; // TODO validate reloc here? let mut addend = if reloc.has_implicit_addend() { - arch.implcit_addend(obj_file, obj_section, address, &reloc, flags)? + match arch.implcit_addend(obj_file, obj_section, address, &reloc, flags)? { + Some(addend) => addend, + None => continue, // Skip relocation (e.g. COFF PAIR relocations) + } } else { reloc.addend() }; diff --git a/objdiff-core/tests/arch_ppc.rs b/objdiff-core/tests/arch_ppc.rs index 40e9d83..8086f14 100644 --- a/objdiff-core/tests/arch_ppc.rs +++ b/objdiff-core/tests/arch_ppc.rs @@ -85,3 +85,31 @@ fn diff_ppc() { assert_eq!(base_symbol_diff.target_symbol, Some(target_symbol_idx)); insta::assert_debug_snapshot!((target_symbol_diff, base_symbol_diff)); } + +#[test] +#[cfg(feature = "ppc")] +fn read_vmx128_coff() { + let diff_config = diff::DiffObjConfig { combine_data_sections: true, ..Default::default() }; + let obj = obj::read::parse(include_object!("data/ppc/vmx128.obj"), &diff_config).unwrap(); + insta::assert_debug_snapshot!(obj); + let symbol_idx = + obj.symbols.iter().position(|s| s.name == "?FloatingPointExample@@YAXXZ").unwrap(); + let diff = diff::code::no_diff_code(&obj, symbol_idx, &diff_config).unwrap(); + insta::assert_debug_snapshot!(diff.instruction_rows); + let output = common::display_diff(&obj, &diff, symbol_idx, &diff_config); + insta::assert_snapshot!(output); +} + +#[test] +#[cfg(feature = "ppc")] +fn read_dummy() { + let diff_config = diff::DiffObjConfig { combine_data_sections: true, ..Default::default() }; + let obj = obj::read::parse(include_object!("data/ppc/dummy.obj"), &diff_config).unwrap(); + insta::assert_debug_snapshot!(obj); + let symbol_idx = + obj.symbols.iter().position(|s| s.name == "?FloatingPointExample@@YAXXZ").unwrap(); + let diff = diff::code::no_diff_code(&obj, symbol_idx, &diff_config).unwrap(); + insta::assert_debug_snapshot!(diff.instruction_rows); + let output = common::display_diff(&obj, &diff, symbol_idx, &diff_config); + insta::assert_snapshot!(output); +} diff --git a/objdiff-core/tests/data/ppc/vmx128.obj b/objdiff-core/tests/data/ppc/vmx128.obj new file mode 100644 index 0000000000000000000000000000000000000000..a0494108dde30b70ec24bb1d2cdbec1e74e875d8 GIT binary patch literal 12120 zcmcgy4RBl4l|Hf^V~ip1DGo`xfj+wioHQ1atvIq9h-5nflRqUf#0jR7EXj#LmQ+bj zOrSgRZrGu0=%!4!lXRi0%s`hGW+!dg9fo0c6hvF-0&6I=hQikAWM@Jr+ZyOh2?Vm= zx%cY%Nr`v8OK0!Qd*^%KJ?GrNbML$F=Y88UntV32_tR^LlEf)zb41e7aCTo*T;g;P z$GPg#m6G)uIU>>Fu{|w2N;#>8u&yDRStOZjA-tsZI0kz*^|kCQsgVX0Uu<3q;MKf^ zi|O5afu8d@M>-P9hGy*}Hljn7dgSyvveEJEtQsAvMcu9>y7wwcJ_BKpH|R)}`)dVX zXdya{gVO>WUh;Y?%SBV^bLcl~@@gozqJFG*^*r^O=c#w?JoQ%2Q_nF^z4m$PbIWp!3Yd^#)3D z=>&L1>6AF0mxf_nA4`PeW07cgAkgayxLh7jr*VDX`VGEYHw|p+@9A#dx~XrAZ}a*c z&E+)mdN&VLkb^#dKQb!Wo~?r$w{O`5+EQ4%DvamGdpN#?IeaDAbgo}-_t5z8_)s>Q z$vTq5cT$t>N*&qMBUX-tgV&FQV{$hy(Vzl))|L;7jPCyfr3vb7ZFkIQ z+vzsi63KXSPts@`@EdJ|lu3t4bVfLpqEuwK)Is~gE~gWV*D(5n`!J8gMVjbCK#|6A zZot9P%^fF`KOIYCZ^J5|Ow)3*YpGI3xkTh?v_NMENG+S)?k*SEN!JhJvKsEHC>zVh zqjUwh!{BgN0Jo18;o6VuOT=|Lni-2{kx@(UgY@7iC9W4Ij)PSK5upLOrNCIyb37NY zWasumE`j8B1`rJ07457;Rk@lheJE6=4e?|si=gl)(cbmrq0tm7%MJE(KwX$FXz*%R z2kN8iPUx$~MZ>+c6qErsE6w8&%^I=GbfVF22$x{WGtKwD1{|Z$U{Mv!V0Pd zJWOJo9!G8|aldl1<9Jvg+|w`~+~-Y@YayE<JY+$qQvkag&S4#>5T zu*vO(+yHqmObG`>%mlRn!}OCKB7ato6=h=T&hwQ6aSh%LliGT~*hV zwS{Ng|J)X?OJ!U3qV8Nq43Zt+soJs=sG?ckZWbs6meUXZ$N5`_!NC1=SPcc)u;Ayl>dJp5q z6H2RsuSV7+veu%Ps>oU=IhonCV47y4aV*BFVmw&K%`8;42OcgmC%Hd4S?A>K7zgg_ zAxO+Gx&xBuB*)$v$S5Q)Pa}|S$UTsQkY9m32zd|W(~t)td5%2*$#V=bnrlFLhae5e z2O-^%Ux&OI@^2uAAP+9br+0mkM4+S;(g$i;%BF{upu^ z@+Xjgfcz;W-#%V|R$d$e%+xA>V*>L;eDi+p!RBT1c1ZyHMYn zoQ=*e+>%5`_)nDM^~RUoz+yjp}rc&j2r1*r~a3yRXxifr%%>p?EZw7)b^)*)(qI zs9l}D1Uaef-ZYv%IvnO)ghQRa6ZEFuKz|=yg{$qjk~*_al#ecC56zj~-Mw}!kqC`O zBW>BcQ_;3~I1mnHqkEF+yKf`|raXlE!hujWn~n`*mCbZ_qc684Wk0b7H?~4U_SXO$ zistIj2*`>BvKY=fy$PLxjd)gFwy;7hIXpIk(XG={HSib;#Iaxq?J@4U*nudt7b2UR zo(=7ht-lNen{Vjfv|jYrVqB>HLXo1si04`X2f82g`q7h(+IM>XwdKoKt+9FDb^T84 zO~L>1gN;9U<&3}g!DoN}{F>W-kANQ#`rFqA>Vu>A<$m_}>mKXcnZ=F%sNnmbd)3(T zy*Cn{PF_8=cg2CjL~jZH_J6o%W#rwd;9E8NkE(9^B^J?69(P-Q>r>bL=;fnd``tr- zbd2sfIZAXu@PFlZKm5jTCLPcHF!Plk2Yz)U(Q|@-@!E4f|E{VxzP010jxYSnJ%@-s zVE>re6t+A}@$&<&u@MxHK_iyOpi%Q_il0lwV^Ah?*O2vLWhj%4#FCD^pT$KuosC3C zGM~*!CKUf{4#LSuG?WO%@6N6ZzOzwLo$M<}xch2Mn5l<_HE#K)GHPE+A?%O7p zuP*65s!#**MD3U5D%3!eCil9@wJspKMd+&KyDEP6?n`D3y#C+^Kq~oC8*n3(h#0&DXXpFNU0&dmU#?(}Yi!2m+GzC| zHyS-FxXc}D18cNy4vnucZo~eX{A#z27c_E99+4TP@=F^&)KTvED$15sH+TzX>`Qlc zaye|fBO6NdL%o4lC$4sn(O(L1V*sy=G7g8Mp4A9I5C(6|EC%y(eVOx3w0q+G4*_N-J2EGZ{XQQ3J(BJ&}lBKfVxhG=!^%po{&x3 zc>dG>=(3StGkitQNl5Y(Jtt^JBUe%BplzR?@EoI{W~?ZBCMc-qjiM(+lX`xc(xGYS zJc9mAX~wQ1`ZT5I{Kc*&n^VvA7rShbK`;BC)VdlaG!j_ z{pE@9Sbg#y>OZ3yON-oBp1TD14$7L;41baPNsj3!FQRYY(_7^6@az$K|Acbj(^=%P z@I(c7%;NiRJxw;hH4YGSjfW>_`2^&IkCtm+^cOik5QiGaA@W<0zY6&+$X|taY8u^K z)Gpg5^!`8N$P=W6N6`0OLAv5-h+ggT(&a~e^jeoe4M&^k=Uups9JSHwo@uH-a+2Qg z6zI|;C+HWRJk=dJM!!VAUvgxErr@U*e%^$i1@QA0{M5kDui&Q|e%^+kD)@N^er)jb z@9;zL^J^7zh|6=EF?N0xbBIe38;HwN%-JxG=T;z25SJq65SJWtbX?E(m*R2~Itws{ zDHY#{OO8K|OT;%~Ll3rcOwZ_Eqo}Xk{S!|J@o0$nLtKjZo7QO?`<>RNZ$>O*>lkcag^6v&z(GeXCK5IAWstotv-f`@X*5B0Y;qc z6vUZ1T_6B(Sf;22N3Hl0y8%cO2mrbFBNYWon~;BdW<;P#gid(xn-&dak5i`smDli%Ypg< zYsqV(h>2!^ZV|aP*lSC~@8z!mhj#@)oZwk;xBLBK zEkMnHwd4fSfHZ+*F2DO@PA5i^^8hsi)>0o3+7Aszob1GJ37OLclH4Y6&49JU&lc!A zSTN#bCw|IcP8UdWL2%80wG;tb1f&ThbNS69b2>4STpUQY{3W0-gG4l$xs!@RG@0BK z(CtEx5hpvntvE!J$(;fkL@uJq^_YUqF~c`~pd?21r_HK+8aC z#7O2gDo!Uxl3NNSEtUg)4kYHFnQJHxbI{~kfLfqeOAWO|e&dmTG|T~5-1Mzc_57#ak5iNak@Z~%Yu{s_}WWXix~CNUnuz&w1!{Nn2_{s(R+|AI*;{vJY z1)@S8*M|I>{T?`uiY0Wpeg_vN((Hd0eA$Sj9>-;(28{4_0%xl&E>(i9`fY*pzS=*>*6u@u=?hcmDIX_qqA%Md0jD10THqo|m7D9kEEl@dTYe&o9QU z|9;tERc$+nb9u7P_vwznrz=dle_vftBTdD@+(z@ja8%TlHs7Nz}6ACb!$QT3iSn5==*j7;!7(7Ncur zRuhIHN}}fvK|BLg zo_MX}R7(cNOZ-RDF8@hkt6Gw;JB12PrjCnan)CUv{-wv!UTtf|nOm3(zqkPcsbv6v zsB}mybSN+q&yHpA=}si}%!&81<2cOvtaf3WnM0;3%Mwv_(5tp_q|K&M^zK#^>y*dg zrC{c=x>H%PPPrAY0CQO#P*$u{ZiQD#b6P#1tXQYqihFjhvc9dXSf|{IpH1en`o6Ma zopLMQq0VLXjIv^#ax0$Yb6NdNS+P#J6|XaMS-qvKSVzPm|K1~>rR2CHepd4$!Q-jo zNBk&KiVXwnQ~;mc@CybV5z)d7r{CfzC`NkjK!ke`o)<y%sZer_(SA!Wrns#mcl z@a}zfys(6eJGmS$C{i3&vgeJG72X}+3=?Iw+0Fk6P@g$EJnkKMAmu%t^dml+<4RhU z{J5R?1ESmyUS9FuM|p-HH)?2@eysOO-iOLntF(U9i1o{=!!;<^skZ72AY1Gzs%@xB zMLL9bTlNT+t;Rab|9)QYF5jTPr|(wtv$EIg-A(ICUly#t$_d@U-SCQ!%5iVUh*PA} zwHyB*ax$--(TeME#dWCS+Ea1uuDBMLrvHu+rN3^@e}^h+9By|D6SIb{@)}70mKL;! c%k;y}a(%a}UDj}2>ElJ|+lBfPQ!4+z0BxrxQ~&?~ literal 0 HcmV?d00001 diff --git a/objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff-2.snap b/objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff-2.snap new file mode 100644 index 0000000..95e93a6 --- /dev/null +++ b/objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff-2.snap @@ -0,0 +1,1826 @@ +--- +source: objdiff-core/tests/arch_ppc.rs +expression: diff.instruction_rows +--- +[ + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 120, + size: 4, + opcode: 342, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 124, + size: 4, + opcode: 443, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 128, + size: 4, + opcode: 444, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 132, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 136, + size: 4, + opcode: 455, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 140, + size: 4, + opcode: 459, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 144, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 148, + size: 4, + opcode: 455, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 152, + size: 4, + opcode: 459, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 156, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 160, + size: 4, + opcode: 455, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 164, + size: 4, + opcode: 459, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 168, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 172, + size: 4, + opcode: 455, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 176, + size: 4, + opcode: 459, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 180, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 184, + size: 4, + opcode: 455, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 188, + size: 4, + opcode: 459, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 192, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 196, + size: 4, + opcode: 455, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 200, + size: 4, + opcode: 459, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 204, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 208, + size: 4, + opcode: 455, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 212, + size: 4, + opcode: 459, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 216, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 220, + size: 4, + opcode: 455, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 224, + size: 4, + opcode: 459, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 228, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 232, + size: 4, + opcode: 455, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 236, + size: 4, + opcode: 459, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 240, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 244, + size: 4, + opcode: 455, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 248, + size: 4, + opcode: 459, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 252, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 256, + size: 4, + opcode: 455, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 260, + size: 4, + opcode: 459, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 264, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 268, + size: 4, + opcode: 455, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 272, + size: 4, + opcode: 459, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 276, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 280, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 284, + size: 4, + opcode: 267, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 288, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 292, + size: 4, + opcode: 194, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 296, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 300, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 304, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 308, + size: 4, + opcode: 194, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 312, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 316, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 320, + size: 4, + opcode: 267, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 324, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 328, + size: 4, + opcode: 194, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 332, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 336, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 340, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 344, + size: 4, + opcode: 194, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 348, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 352, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 356, + size: 4, + opcode: 267, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 360, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 364, + size: 4, + opcode: 194, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 368, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 372, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 376, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 380, + size: 4, + opcode: 194, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 384, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 388, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 392, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 396, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 400, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 404, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 408, + size: 4, + opcode: 76, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 412, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 416, + size: 4, + opcode: 194, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 420, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 424, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 428, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 432, + size: 4, + opcode: 194, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 436, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 440, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 444, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 448, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 452, + size: 4, + opcode: 203, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 456, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 460, + size: 4, + opcode: 194, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 464, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 468, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 472, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 476, + size: 4, + opcode: 194, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 480, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 484, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 488, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 492, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 496, + size: 4, + opcode: 267, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 500, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 504, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 508, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 512, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 516, + size: 4, + opcode: 267, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 520, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 524, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 528, + size: 4, + opcode: 267, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 532, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 536, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 540, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 544, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 548, + size: 4, + opcode: 267, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 552, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 556, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 560, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 564, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 568, + size: 4, + opcode: 267, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 572, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 576, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 580, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 584, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 588, + size: 4, + opcode: 267, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 592, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 596, + size: 4, + opcode: 187, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 600, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 604, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 608, + size: 4, + opcode: 267, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 612, + size: 4, + opcode: 264, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 616, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 620, + size: 4, + opcode: 267, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 624, + size: 4, + opcode: 263, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 628, + size: 4, + opcode: 439, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 632, + size: 4, + opcode: 348, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, + InstructionDiffRow { + ins_ref: Some( + InstructionRef { + address: 636, + size: 4, + opcode: 269, + branch_dest: None, + }, + ), + kind: None, + branch_from: None, + branch_to: None, + arg_diff: [], + }, +] diff --git a/objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff-3.snap b/objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff-3.snap new file mode 100644 index 0000000..822c759 --- /dev/null +++ b/objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff-3.snap @@ -0,0 +1,134 @@ +--- +source: objdiff-core/tests/arch_ppc.rs +expression: output +--- +[(Address(0), Normal, 5), (Spacing(4), Normal, 0), (Opcode("mflr", 342), Normal, 10), (Argument(Opaque("r12")), Normal, 0), (Eol, Normal, 0)] +[(Address(4), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stw", 443), Normal, 10), (Argument(Opaque("r12")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(-8)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(8), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stwu", 444), Normal, 10), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(-336)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(12), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r11")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@3f800000", demangled_name: None, address: 388, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(16), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lfs", 455), Normal, 10), (Argument(Opaque("f0")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@3f800000", demangled_name: None, address: 388, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r11")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(20), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stfs", 459), Normal, 10), (Argument(Opaque("f0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(272)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(24), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r10")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@40000000", demangled_name: None, address: 384, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(28), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lfs", 455), Normal, 10), (Argument(Opaque("f13")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@40000000", demangled_name: None, address: 384, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r10")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(32), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stfs", 459), Normal, 10), (Argument(Opaque("f13")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(276)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(36), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r9")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@40400000", demangled_name: None, address: 380, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(40), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lfs", 455), Normal, 10), (Argument(Opaque("f12")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@40400000", demangled_name: None, address: 380, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r9")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(44), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stfs", 459), Normal, 10), (Argument(Opaque("f12")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(280)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(48), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r8")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@40800000", demangled_name: None, address: 376, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(52), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lfs", 455), Normal, 10), (Argument(Opaque("f11")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@40800000", demangled_name: None, address: 376, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r8")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(56), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stfs", 459), Normal, 10), (Argument(Opaque("f11")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(284)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(60), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r7")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@40a00000", demangled_name: None, address: 372, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(64), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lfs", 455), Normal, 10), (Argument(Opaque("f10")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@40a00000", demangled_name: None, address: 372, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r7")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(68), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stfs", 459), Normal, 10), (Argument(Opaque("f10")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(256)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(72), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r6")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@40c00000", demangled_name: None, address: 368, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(76), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lfs", 455), Normal, 10), (Argument(Opaque("f9")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@40c00000", demangled_name: None, address: 368, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r6")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(80), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stfs", 459), Normal, 10), (Argument(Opaque("f9")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(260)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(84), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r5")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@40e00000", demangled_name: None, address: 364, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(88), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lfs", 455), Normal, 10), (Argument(Opaque("f8")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@40e00000", demangled_name: None, address: 364, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r5")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(92), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stfs", 459), Normal, 10), (Argument(Opaque("f8")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(264)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(96), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r4")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@41000000", demangled_name: None, address: 360, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(100), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lfs", 455), Normal, 10), (Argument(Opaque("f7")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@41000000", demangled_name: None, address: 360, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r4")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(104), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stfs", 459), Normal, 10), (Argument(Opaque("f7")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(268)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(108), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@3f000000", demangled_name: None, address: 356, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(112), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lfs", 455), Normal, 10), (Argument(Opaque("f6")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@3f000000", demangled_name: None, address: 356, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r3")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(116), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stfs", 459), Normal, 10), (Argument(Opaque("f6")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(224)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(120), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r11")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@3f000000", demangled_name: None, address: 356, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(124), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lfs", 455), Normal, 10), (Argument(Opaque("f5")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@3f000000", demangled_name: None, address: 356, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r11")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(128), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stfs", 459), Normal, 10), (Argument(Opaque("f5")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(228)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(132), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r10")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@3f000000", demangled_name: None, address: 356, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(136), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lfs", 455), Normal, 10), (Argument(Opaque("f4")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@3f000000", demangled_name: None, address: 356, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r10")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(140), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stfs", 459), Normal, 10), (Argument(Opaque("f4")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(232)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(144), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r9")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@3f000000", demangled_name: None, address: 356, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(148), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lfs", 455), Normal, 10), (Argument(Opaque("f3")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "__real@3f000000", demangled_name: None, address: 356, size: 4, kind: Object, section: Some(4), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r9")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(152), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stfs", 459), Normal, 10), (Argument(Opaque("f3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(236)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(156), Normal, 5), (Spacing(4), Normal, 0), (Opcode("li", 263), Normal, 10), (Argument(Opaque("r4")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(0)), Normal, 0), (Eol, Normal, 0)] +[(Address(160), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(272)), Normal, 0), (Eol, Normal, 0)] +[(Address(164), Normal, 5), (Spacing(4), Normal, 0), (Opcode("bl", 267), Normal, 10), (Symbol(Symbol { name: "__lvx", demangled_name: None, address: 640, size: 24, kind: Function, section: Some(5), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Eol, Normal, 0)] +[(Address(168), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r8")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(80)), Normal, 0), (Eol, Normal, 0)] +[(Address(172), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stvx128", 194), Normal, 10), (Argument(Opaque("v1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r8")), Normal, 0), (Eol, Normal, 0)] +[(Address(176), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r7")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(80)), Normal, 0), (Eol, Normal, 0)] +[(Address(180), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r7")), Normal, 0), (Eol, Normal, 0)] +[(Address(184), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r6")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(240)), Normal, 0), (Eol, Normal, 0)] +[(Address(188), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stvx128", 194), Normal, 10), (Argument(Opaque("v0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r6")), Normal, 0), (Eol, Normal, 0)] +[(Address(192), Normal, 5), (Spacing(4), Normal, 0), (Opcode("li", 263), Normal, 10), (Argument(Opaque("r4")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(0)), Normal, 0), (Eol, Normal, 0)] +[(Address(196), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(256)), Normal, 0), (Eol, Normal, 0)] +[(Address(200), Normal, 5), (Spacing(4), Normal, 0), (Opcode("bl", 267), Normal, 10), (Symbol(Symbol { name: "__lvx", demangled_name: None, address: 640, size: 24, kind: Function, section: Some(5), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Eol, Normal, 0)] +[(Address(204), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r5")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(96)), Normal, 0), (Eol, Normal, 0)] +[(Address(208), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stvx128", 194), Normal, 10), (Argument(Opaque("v1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r5")), Normal, 0), (Eol, Normal, 0)] +[(Address(212), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r4")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(96)), Normal, 0), (Eol, Normal, 0)] +[(Address(216), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v13")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r4")), Normal, 0), (Eol, Normal, 0)] +[(Address(220), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(208)), Normal, 0), (Eol, Normal, 0)] +[(Address(224), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stvx128", 194), Normal, 10), (Argument(Opaque("v13")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r3")), Normal, 0), (Eol, Normal, 0)] +[(Address(228), Normal, 5), (Spacing(4), Normal, 0), (Opcode("li", 263), Normal, 10), (Argument(Opaque("r4")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(0)), Normal, 0), (Eol, Normal, 0)] +[(Address(232), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(224)), Normal, 0), (Eol, Normal, 0)] +[(Address(236), Normal, 5), (Spacing(4), Normal, 0), (Opcode("bl", 267), Normal, 10), (Symbol(Symbol { name: "__lvx", demangled_name: None, address: 640, size: 24, kind: Function, section: Some(5), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Eol, Normal, 0)] +[(Address(240), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r11")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(112)), Normal, 0), (Eol, Normal, 0)] +[(Address(244), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stvx128", 194), Normal, 10), (Argument(Opaque("v1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r11")), Normal, 0), (Eol, Normal, 0)] +[(Address(248), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r10")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(112)), Normal, 0), (Eol, Normal, 0)] +[(Address(252), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v12")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r10")), Normal, 0), (Eol, Normal, 0)] +[(Address(256), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r9")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(304)), Normal, 0), (Eol, Normal, 0)] +[(Address(260), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stvx128", 194), Normal, 10), (Argument(Opaque("v12")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r9")), Normal, 0), (Eol, Normal, 0)] +[(Address(264), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r8")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(304)), Normal, 0), (Eol, Normal, 0)] +[(Address(268), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v11")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r8")), Normal, 0), (Eol, Normal, 0)] +[(Address(272), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r7")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(208)), Normal, 0), (Eol, Normal, 0)] +[(Address(276), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v10")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r7")), Normal, 0), (Eol, Normal, 0)] +[(Address(280), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r6")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(240)), Normal, 0), (Eol, Normal, 0)] +[(Address(284), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v9")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r6")), Normal, 0), (Eol, Normal, 0)] +[(Address(288), Normal, 5), (Spacing(4), Normal, 0), (Opcode("vmaddfp", 76), Normal, 10), (Argument(Opaque("v8")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("v9")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("v10")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("v11")), Normal, 0), (Eol, Normal, 0)] +[(Address(292), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r5")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(128)), Normal, 0), (Eol, Normal, 0)] +[(Address(296), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stvx128", 194), Normal, 10), (Argument(Opaque("v8")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r5")), Normal, 0), (Eol, Normal, 0)] +[(Address(300), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r4")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(128)), Normal, 0), (Eol, Normal, 0)] +[(Address(304), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v7")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r4")), Normal, 0), (Eol, Normal, 0)] +[(Address(308), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(192)), Normal, 0), (Eol, Normal, 0)] +[(Address(312), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stvx128", 194), Normal, 10), (Argument(Opaque("v7")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r3")), Normal, 0), (Eol, Normal, 0)] +[(Address(316), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r11")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(208)), Normal, 0), (Eol, Normal, 0)] +[(Address(320), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v6")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r11")), Normal, 0), (Eol, Normal, 0)] +[(Address(324), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r10")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(240)), Normal, 0), (Eol, Normal, 0)] +[(Address(328), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v5")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r10")), Normal, 0), (Eol, Normal, 0)] +[(Address(332), Normal, 5), (Spacing(4), Normal, 0), (Opcode("vmsum4fp128", 203), Normal, 10), (Argument(Opaque("v4")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("v5")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("v6")), Normal, 0), (Eol, Normal, 0)] +[(Address(336), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r9")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(144)), Normal, 0), (Eol, Normal, 0)] +[(Address(340), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stvx128", 194), Normal, 10), (Argument(Opaque("v4")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r9")), Normal, 0), (Eol, Normal, 0)] +[(Address(344), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r8")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(144)), Normal, 0), (Eol, Normal, 0)] +[(Address(348), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r8")), Normal, 0), (Eol, Normal, 0)] +[(Address(352), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r7")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(176)), Normal, 0), (Eol, Normal, 0)] +[(Address(356), Normal, 5), (Spacing(4), Normal, 0), (Opcode("stvx128", 194), Normal, 10), (Argument(Opaque("v3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r7")), Normal, 0), (Eol, Normal, 0)] +[(Address(360), Normal, 5), (Spacing(4), Normal, 0), (Opcode("li", 263), Normal, 10), (Argument(Opaque("r4")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(0)), Normal, 0), (Eol, Normal, 0)] +[(Address(364), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(288)), Normal, 0), (Eol, Normal, 0)] +[(Address(368), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r6")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(192)), Normal, 0), (Eol, Normal, 0)] +[(Address(372), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r6")), Normal, 0), (Eol, Normal, 0)] +[(Address(376), Normal, 5), (Spacing(4), Normal, 0), (Opcode("bl", 267), Normal, 10), (Symbol(Symbol { name: "__stvx", demangled_name: None, address: 664, size: 40, kind: Function, section: Some(5), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Eol, Normal, 0)] +[(Address(380), Normal, 5), (Spacing(4), Normal, 0), (Opcode("li", 263), Normal, 10), (Argument(Opaque("r4")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(0)), Normal, 0), (Eol, Normal, 0)] +[(Address(384), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(160)), Normal, 0), (Eol, Normal, 0)] +[(Address(388), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r5")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(176)), Normal, 0), (Eol, Normal, 0)] +[(Address(392), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r5")), Normal, 0), (Eol, Normal, 0)] +[(Address(396), Normal, 5), (Spacing(4), Normal, 0), (Opcode("bl", 267), Normal, 10), (Symbol(Symbol { name: "__stvx", demangled_name: None, address: 664, size: 40, kind: Function, section: Some(5), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Eol, Normal, 0)] +[(Address(400), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r4")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "$SG4433", demangled_name: None, address: 32, size: 32, kind: Object, section: Some(4), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(404), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r4")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "$SG4433", demangled_name: None, address: 32, size: 32, kind: Object, section: Some(4), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Eol, Normal, 0)] +[(Address(408), Normal, 5), (Spacing(4), Normal, 0), (Opcode("bl", 267), Normal, 10), (Symbol(Symbol { name: "printf", demangled_name: None, address: 0, size: 0, kind: Function, section: None, flags: FlagSet(Global), align: None, virtual_address: None }), Bright, 0), (Eol, Normal, 0)] +[(Address(412), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(240)), Normal, 0), (Eol, Normal, 0)] +[(Address(416), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r3")), Normal, 0), (Eol, Normal, 0)] +[(Address(420), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r11")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "$SG4434", demangled_name: None, address: 64, size: 8, kind: Object, section: Some(4), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(424), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r11")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "$SG4434", demangled_name: None, address: 64, size: 8, kind: Object, section: Some(4), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Eol, Normal, 0)] +[(Address(428), Normal, 5), (Spacing(4), Normal, 0), (Opcode("bl", 267), Normal, 10), (Symbol(Symbol { name: "?PrintVector@@YAXPBDU__vector4@@@Z", demangled_name: Some("void __cdecl PrintVector(char const *, struct __vector4)"), address: 0, size: 120, kind: Function, section: Some(5), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Eol, Normal, 0)] +[(Address(432), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r10")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(208)), Normal, 0), (Eol, Normal, 0)] +[(Address(436), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r10")), Normal, 0), (Eol, Normal, 0)] +[(Address(440), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r9")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "$SG4435", demangled_name: None, address: 72, size: 8, kind: Object, section: Some(4), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(444), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r9")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "$SG4435", demangled_name: None, address: 72, size: 8, kind: Object, section: Some(4), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Eol, Normal, 0)] +[(Address(448), Normal, 5), (Spacing(4), Normal, 0), (Opcode("bl", 267), Normal, 10), (Symbol(Symbol { name: "?PrintVector@@YAXPBDU__vector4@@@Z", demangled_name: Some("void __cdecl PrintVector(char const *, struct __vector4)"), address: 0, size: 120, kind: Function, section: Some(5), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Eol, Normal, 0)] +[(Address(452), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r8")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(192)), Normal, 0), (Eol, Normal, 0)] +[(Address(456), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r8")), Normal, 0), (Eol, Normal, 0)] +[(Address(460), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r7")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "$SG4436", demangled_name: None, address: 80, size: 12, kind: Object, section: Some(4), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(464), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r7")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "$SG4436", demangled_name: None, address: 80, size: 12, kind: Object, section: Some(4), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Eol, Normal, 0)] +[(Address(468), Normal, 5), (Spacing(4), Normal, 0), (Opcode("bl", 267), Normal, 10), (Symbol(Symbol { name: "?PrintVector@@YAXPBDU__vector4@@@Z", demangled_name: Some("void __cdecl PrintVector(char const *, struct __vector4)"), address: 0, size: 120, kind: Function, section: Some(5), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Eol, Normal, 0)] +[(Address(472), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r6")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(176)), Normal, 0), (Eol, Normal, 0)] +[(Address(476), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lvx128", 187), Normal, 10), (Argument(Opaque("v1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r0")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r6")), Normal, 0), (Eol, Normal, 0)] +[(Address(480), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r5")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "$SG4437", demangled_name: None, address: 92, size: 12, kind: Object, section: Some(4), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(484), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r5")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "$SG4437", demangled_name: None, address: 92, size: 12, kind: Object, section: Some(4), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Eol, Normal, 0)] +[(Address(488), Normal, 5), (Spacing(4), Normal, 0), (Opcode("bl", 267), Normal, 10), (Symbol(Symbol { name: "?PrintVector@@YAXPBDU__vector4@@@Z", demangled_name: Some("void __cdecl PrintVector(char const *, struct __vector4)"), address: 0, size: 120, kind: Function, section: Some(5), flags: FlagSet(Global | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Eol, Normal, 0)] +[(Address(492), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lis", 264), Normal, 10), (Argument(Opaque("r4")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "$SG4438", demangled_name: None, address: 104, size: 4, kind: Object, section: Some(4), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@h"), Normal, 0), (Eol, Normal, 0)] +[(Address(496), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r3")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r4")), Normal, 0), (Basic(", "), Normal, 0), (Symbol(Symbol { name: "$SG4438", demangled_name: None, address: 104, size: 4, kind: Object, section: Some(4), flags: FlagSet(Local | SizeInferred), align: None, virtual_address: None }), Bright, 0), (Basic("@l"), Normal, 0), (Eol, Normal, 0)] +[(Address(500), Normal, 5), (Spacing(4), Normal, 0), (Opcode("bl", 267), Normal, 10), (Symbol(Symbol { name: "printf", demangled_name: None, address: 0, size: 0, kind: Function, section: None, flags: FlagSet(Global), align: None, virtual_address: None }), Bright, 0), (Eol, Normal, 0)] +[(Address(504), Normal, 5), (Spacing(4), Normal, 0), (Opcode("addi", 263), Normal, 10), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(336)), Normal, 0), (Eol, Normal, 0)] +[(Address(508), Normal, 5), (Spacing(4), Normal, 0), (Opcode("lwz", 439), Normal, 10), (Argument(Opaque("r12")), Normal, 0), (Basic(", "), Normal, 0), (Argument(Signed(-8)), Normal, 0), (Basic("("), Normal, 0), (Argument(Opaque("r1")), Normal, 0), (Basic(")"), Normal, 0), (Eol, Normal, 0)] +[(Address(512), Normal, 5), (Spacing(4), Normal, 0), (Opcode("mtlr", 348), Normal, 10), (Argument(Opaque("r12")), Normal, 0), (Eol, Normal, 0)] +[(Address(516), Normal, 5), (Spacing(4), Normal, 0), (Opcode("blr", 269), Normal, 10), (Eol, Normal, 0)] diff --git a/objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff.snap b/objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff.snap new file mode 100644 index 0000000..0f88302 --- /dev/null +++ b/objdiff-core/tests/snapshots/arch_ppc__read_vmx128_coff.snap @@ -0,0 +1,2442 @@ +--- +source: objdiff-core/tests/arch_ppc.rs +expression: obj +--- +Object { + arch: ArchPpc { + extensions: Extensions( + 13, + ), + extab: None, + }, + endianness: Big, + symbols: [ + Symbol { + name: "@comp.id", + demangled_name: None, + address: 0, + size: 0, + kind: Object, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.drectve]", + demangled_name: None, + address: 0, + size: 132, + kind: Section, + section: Some( + 0, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.debug$S]", + demangled_name: None, + address: 0, + size: 3952, + kind: Section, + section: Some( + 1, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.XBLD$W]", + demangled_name: None, + address: 0, + size: 0, + kind: Section, + section: Some( + 2, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__C2_11886", + demangled_name: None, + address: 0, + size: 16, + kind: Object, + section: Some( + 2, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.XBLD$W]", + demangled_name: None, + address: 0, + size: 0, + kind: Section, + section: Some( + 3, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__C1_11886", + demangled_name: None, + address: 0, + size: 16, + kind: Object, + section: Some( + 3, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Section, + section: Some( + 4, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4415", + demangled_name: None, + address: 0, + size: 32, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4433", + demangled_name: None, + address: 32, + size: 32, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4434", + demangled_name: None, + address: 64, + size: 8, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4435", + demangled_name: None, + address: 72, + size: 8, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4436", + demangled_name: None, + address: 80, + size: 12, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4437", + demangled_name: None, + address: 92, + size: 12, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4438", + demangled_name: None, + address: 104, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4456", + demangled_name: None, + address: 108, + size: 40, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4457", + demangled_name: None, + address: 148, + size: 8, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4458", + demangled_name: None, + address: 156, + size: 8, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4459", + demangled_name: None, + address: 164, + size: 24, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4460", + demangled_name: None, + address: 188, + size: 20, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4461", + demangled_name: None, + address: 208, + size: 24, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4462", + demangled_name: None, + address: 232, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4476", + demangled_name: None, + address: 236, + size: 36, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4477", + demangled_name: None, + address: 272, + size: 20, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4478", + demangled_name: None, + address: 292, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4481", + demangled_name: None, + address: 296, + size: 40, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$SG4482", + demangled_name: None, + address: 336, + size: 20, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.text]", + demangled_name: None, + address: 0, + size: 0, + kind: Section, + section: Some( + 5, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "?PrintVector@@YAXPBDU__vector4@@@Z", + demangled_name: Some( + "void __cdecl PrintVector(char const *, struct __vector4)", + ), + address: 0, + size: 120, + kind: Function, + section: Some( + 5, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$M4492", + demangled_name: None, + address: 120, + size: 0, + kind: Unknown, + section: Some( + 5, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "printf", + demangled_name: None, + address: 0, + size: 0, + kind: Function, + section: None, + flags: FlagSet(Global), + align: None, + virtual_address: None, + }, + Symbol { + name: "$M4491", + demangled_name: None, + address: 12, + size: 0, + kind: Unknown, + section: Some( + 5, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.pdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Section, + section: Some( + 6, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "$T4493", + demangled_name: None, + address: 0, + size: 8, + kind: Object, + section: Some( + 6, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "_fltused", + demangled_name: None, + address: 0, + size: 0, + kind: Function, + section: None, + flags: FlagSet(Global), + align: None, + virtual_address: None, + }, + Symbol { + name: "?FloatingPointExample@@YAXXZ", + demangled_name: Some( + "void __cdecl FloatingPointExample(void)", + ), + address: 120, + size: 520, + kind: Function, + section: Some( + 5, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$M4514", + demangled_name: None, + address: 640, + size: 0, + kind: Unknown, + section: Some( + 5, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@3f000000", + demangled_name: None, + address: 356, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@41000000", + demangled_name: None, + address: 360, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@40e00000", + demangled_name: None, + address: 364, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@40c00000", + demangled_name: None, + address: 368, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@40a00000", + demangled_name: None, + address: 372, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@40800000", + demangled_name: None, + address: 376, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@40400000", + demangled_name: None, + address: 380, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@40000000", + demangled_name: None, + address: 384, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@3f800000", + demangled_name: None, + address: 388, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$M4513", + demangled_name: None, + address: 132, + size: 0, + kind: Unknown, + section: Some( + 5, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "$T4515", + demangled_name: None, + address: 8, + size: 8, + kind: Object, + section: Some( + 6, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "__lvx", + demangled_name: None, + address: 640, + size: 24, + kind: Function, + section: Some( + 5, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "__stvx", + demangled_name: None, + address: 664, + size: 40, + kind: Function, + section: Some( + 5, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "?ControlAndDataFlowExample@@YAXXZ", + demangled_name: Some( + "void __cdecl ControlAndDataFlowExample(void)", + ), + address: 704, + size: 632, + kind: Function, + section: Some( + 5, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$M4532", + demangled_name: None, + address: 1336, + size: 0, + kind: Unknown, + section: Some( + 5, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@c2480000", + demangled_name: None, + address: 392, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@41a00000", + demangled_name: None, + address: 396, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@00000000", + demangled_name: None, + address: 400, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@42c80000", + demangled_name: None, + address: 404, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@c0a00000", + demangled_name: None, + address: 408, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.rdata]", + demangled_name: None, + address: 0, + size: 0, + kind: Unknown, + section: None, + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "__real@41200000", + demangled_name: None, + address: 412, + size: 4, + kind: Object, + section: Some( + 4, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$M4531", + demangled_name: None, + address: 716, + size: 0, + kind: Unknown, + section: Some( + 5, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "$T4533", + demangled_name: None, + address: 16, + size: 8, + kind: Object, + section: Some( + 6, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "?ReservedRegisterExample@@YAXXZ", + demangled_name: Some( + "void __cdecl ReservedRegisterExample(void)", + ), + address: 1336, + size: 272, + kind: Function, + section: Some( + 5, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$M4536", + demangled_name: None, + address: 1608, + size: 0, + kind: Unknown, + section: Some( + 5, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "$M4535", + demangled_name: None, + address: 1348, + size: 0, + kind: Unknown, + section: Some( + 5, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "$T4537", + demangled_name: None, + address: 24, + size: 8, + kind: Object, + section: Some( + 6, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "main", + demangled_name: None, + address: 1608, + size: 68, + kind: Function, + section: Some( + 5, + ), + flags: FlagSet(Global | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "$M4540", + demangled_name: None, + address: 1676, + size: 0, + kind: Unknown, + section: Some( + 5, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "$M4539", + demangled_name: None, + address: 1620, + size: 0, + kind: Unknown, + section: Some( + 5, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "$T4541", + demangled_name: None, + address: 32, + size: 8, + kind: Object, + section: Some( + 6, + ), + flags: FlagSet(Local | SizeInferred), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.debug$S]", + demangled_name: None, + address: 0, + size: 40, + kind: Section, + section: Some( + 22, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.debug$S]", + demangled_name: None, + address: 0, + size: 40, + kind: Section, + section: Some( + 23, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + Symbol { + name: "[.debug$T]", + demangled_name: None, + address: 0, + size: 48, + kind: Section, + section: Some( + 24, + ), + flags: FlagSet(Local), + align: None, + virtual_address: None, + }, + ], + sections: [ + Section { + id: ".drectve-0", + name: ".drectve", + address: 0, + size: 132, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 1, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".debug$S-0", + name: ".debug$S", + address: 0, + size: 3952, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 1, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".XBLD$W-0", + name: ".XBLD$W", + address: 0, + size: 16, + kind: Data, + data: SectionData( + 16, + ), + flags: FlagSet(), + align: Some( + 8, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".XBLD$W-1", + name: ".XBLD$W", + address: 0, + size: 16, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-combined", + name: ".rdata", + address: 0, + size: 416, + kind: Data, + data: SectionData( + 416, + ), + flags: FlagSet(Combined), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".text-0", + name: ".text", + address: 0, + size: 1676, + kind: Code, + data: SectionData( + 1676, + ), + flags: FlagSet(), + align: Some( + 8, + ), + relocations: [ + Relocation { + flags: Coff( + 16, + ), + address: 92, + target_symbol: 8, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 96, + target_symbol: 8, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 100, + target_symbol: 30, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 132, + target_symbol: 54, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 136, + target_symbol: 54, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 144, + target_symbol: 52, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 148, + target_symbol: 52, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 156, + target_symbol: 50, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 160, + target_symbol: 50, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 168, + target_symbol: 48, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 172, + target_symbol: 48, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 180, + target_symbol: 46, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 184, + target_symbol: 46, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 192, + target_symbol: 44, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 196, + target_symbol: 44, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 204, + target_symbol: 42, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 208, + target_symbol: 42, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 216, + target_symbol: 40, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 220, + target_symbol: 40, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 228, + target_symbol: 38, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 232, + target_symbol: 38, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 240, + target_symbol: 38, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 244, + target_symbol: 38, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 252, + target_symbol: 38, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 256, + target_symbol: 38, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 264, + target_symbol: 38, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 268, + target_symbol: 38, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 284, + target_symbol: 57, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 320, + target_symbol: 57, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 356, + target_symbol: 57, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 496, + target_symbol: 58, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 516, + target_symbol: 58, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 520, + target_symbol: 9, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 524, + target_symbol: 9, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 528, + target_symbol: 30, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 540, + target_symbol: 10, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 544, + target_symbol: 10, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 548, + target_symbol: 28, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 560, + target_symbol: 11, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 564, + target_symbol: 11, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 568, + target_symbol: 28, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 580, + target_symbol: 12, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 584, + target_symbol: 12, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 588, + target_symbol: 28, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 600, + target_symbol: 13, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 604, + target_symbol: 13, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 608, + target_symbol: 28, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 612, + target_symbol: 14, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 616, + target_symbol: 14, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 620, + target_symbol: 30, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 716, + target_symbol: 72, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 720, + target_symbol: 72, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 728, + target_symbol: 70, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 732, + target_symbol: 70, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 740, + target_symbol: 68, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 744, + target_symbol: 68, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 752, + target_symbol: 66, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 756, + target_symbol: 66, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 764, + target_symbol: 54, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 768, + target_symbol: 54, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 776, + target_symbol: 64, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 780, + target_symbol: 64, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 788, + target_symbol: 62, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 792, + target_symbol: 62, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 800, + target_symbol: 66, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 804, + target_symbol: 66, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 948, + target_symbol: 57, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 984, + target_symbol: 57, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1020, + target_symbol: 57, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 1196, + target_symbol: 15, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 1200, + target_symbol: 15, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1204, + target_symbol: 30, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 1216, + target_symbol: 16, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 1220, + target_symbol: 16, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1224, + target_symbol: 28, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 1236, + target_symbol: 17, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 1240, + target_symbol: 17, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1244, + target_symbol: 28, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 1256, + target_symbol: 18, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 1260, + target_symbol: 18, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1264, + target_symbol: 28, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 1276, + target_symbol: 19, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 1280, + target_symbol: 19, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1284, + target_symbol: 28, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 1296, + target_symbol: 20, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 1300, + target_symbol: 20, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1304, + target_symbol: 28, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 1308, + target_symbol: 21, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 1312, + target_symbol: 21, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1316, + target_symbol: 30, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 1548, + target_symbol: 22, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 1552, + target_symbol: 22, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1556, + target_symbol: 30, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 1568, + target_symbol: 23, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 1572, + target_symbol: 23, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1576, + target_symbol: 28, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 1580, + target_symbol: 24, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 1584, + target_symbol: 24, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1588, + target_symbol: 30, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 1620, + target_symbol: 25, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 1624, + target_symbol: 25, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1628, + target_symbol: 30, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1632, + target_symbol: 35, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1636, + target_symbol: 59, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1640, + target_symbol: 75, + addend: 0, + }, + Relocation { + flags: Coff( + 16, + ), + address: 1644, + target_symbol: 26, + addend: 0, + }, + Relocation { + flags: Coff( + 17, + ), + address: 1648, + target_symbol: 26, + addend: 0, + }, + Relocation { + flags: Coff( + 6, + ), + address: 1652, + target_symbol: 30, + addend: 0, + }, + ], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".pdata-0", + name: ".pdata", + address: 0, + size: 40, + kind: Data, + data: SectionData( + 40, + ), + flags: FlagSet(), + align: Some( + 8, + ), + relocations: [ + Relocation { + flags: Coff( + 2, + ), + address: 0, + target_symbol: 28, + addend: 0, + }, + Relocation { + flags: Coff( + 2, + ), + address: 8, + target_symbol: 35, + addend: 0, + }, + Relocation { + flags: Coff( + 2, + ), + address: 16, + target_symbol: 59, + addend: 0, + }, + Relocation { + flags: Coff( + 2, + ), + address: 24, + target_symbol: 75, + addend: 0, + }, + Relocation { + flags: Coff( + 2, + ), + address: 32, + target_symbol: 79, + addend: 0, + }, + ], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-1", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-2", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-3", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-4", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-5", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-6", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-7", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-8", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-9", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-10", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-11", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-12", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-13", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-14", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".rdata-15", + name: ".rdata", + address: 0, + size: 0, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 4, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".debug$S-1", + name: ".debug$S", + address: 0, + size: 40, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 1, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".debug$S-2", + name: ".debug$S", + address: 0, + size: 40, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 1, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + Section { + id: ".debug$T-0", + name: ".debug$T", + address: 0, + size: 48, + kind: Unknown, + data: SectionData( + 0, + ), + flags: FlagSet(), + align: Some( + 1, + ), + relocations: [], + line_info: {}, + virtual_address: None, + }, + ], + split_meta: None, + path: None, + timestamp: None, + flow_analysis_results: {}, +}