[Courgette] Refactor: Add CourgetteFlow; improve courgette_tool.cc help text.
High level flows in Courgette has messy error-handling code that's
hard to read. This CL adds CourgetteFlow to absorb commonly used data
and error-handling code, and improve readability of high-level logic.
- Fix Courgette-disadj (debugging flow), which likely was broken by
http://crrev.com/2793153003; Adjust() is called but AssemblyProgram
did not annotate Labels.
- Add BasicBuffer interface, implemented by RegionBuffer and (existing)
- PatchGeneratorX86_32::Transform(): Implemented TODO to instantiate
"new" AssemblyProgram to reduce Courgette-gen peak memory.
- courgette_tools.cc: Make help text more uniform.
9 files changed