friss added inline comments.
================ Comment at: lldb/test/Shell/SymbolFile/DWARF/valueobject-pass-by-reg.s:14-40 +# typedef union +# { +# unsigned raw; +# struct +# { +# unsigned a : 8; +# unsigned b : 8; ---------------- This gives a much more compact debug info section: ``` typedef union { unsigned raw; struct { unsigned a : 8; unsigned b : 8; unsigned c : 6; unsigned d : 2; unsigned e : 6; unsigned f : 2; }; } U; // This appears first in the debug info and pulls the type definition in... static U __attribute__((used)) _type_anchor; // ... then our useful variable appears last in the debug info and we can // tweak the assembly without needing to edit a lot of offsets by hand. static U ug; extern void f(U); // Omit debug info for main. __attribute__((nodebug)) int main() { ug.raw = 0x64A40101; f(ug); f((U)ug.raw); } ``` You can easily edit out the TEXT section, the line table and the accelerator tables and patch the location expression to give you a minimal binary. ================ Comment at: lldb/test/Shell/SymbolFile/DWARF/valueobject-pass-by-reg.s:62-63 + + .section __TEXT,__text,regular,pure_instructions + .build_version macos, 10, 15 sdk_version 10, 15, 6 + .file 1 "/tmp" "weird.c" ---------------- I don't think you need the TEXT segment at all, or at least you can make it empty. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85376/new/ https://reviews.llvm.org/D85376 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits