pub fn roundtrip(input: &Path, output: &Path) -> Result<()>Expand description
Run the round-trip pipeline on input, write the result to output,
and verify byte-equality with the input.
The pipeline routes by detected format:
- ELF64-LE is parsed via
ud_format::elf::Elf64Fileand re-emitted. This actually exercises the format reader/writer, so any drift in either path is caught here. - Anything else (32-bit ELF, PE, Mach-O, raw bytes) falls through to a byte-copy. The round-trip contract still holds — it’s just the trivial identity until we grow support.
The shape of this function will not change as later phases replace
pipeline_bytes with real decompile-then-compile logic. The contract
is “input bytes equal output bytes or you get an error”, forever.