https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98860
--- Comment #42 from Jakub Jelinek <jakub at gcc dot gnu.org> --- As a start, perhaps compiling void foo (void) { int a = 1; asm ("nop"); a = 2; asm ("nop"); a = 3; } with -gdwarf-5 -O2 -dA to get the assembly. But bet it can be reduced manually somewhat, it would e.g. just drop the function altogether and in .debug_info have just DW_TAG_compile_unit DIE with its attributes and drop DW_TAG_subprogram etc., and only have DW_AT_ranges on it that points to minimal .debug_rnglists. Or keep the DW_TAG_subprogram in there but just say the ranges and nothing else for it. But if it needs to cover both 64-bit and 32-bit assembly for PE, either you need two sets of assembly in the configure or tweak it by hand. You can have a look e.g. at what the HAVE_AS_WORKING_DWARF_N_FLAG testing uses as assembly as an example.