Hi, On Thu, 30 Nov 2017, Martin Sebor wrote:
> > addic 4,9,-1 # 70 [c=4 l=4] *adddi3_imm_carry_m1 > > subfe 4,4,9 # 71 [c=4 l=4] *subfdi3_carry_in_internal > > b .L5 # 81 [c=4 l=4] jump > > Not everyone who reads the verbose assembly is familiar with > GCC internals. Users read it to help debug problems in their > code. They shouldn't have to also study GCC source code to > understand what the contents mean. Um, I think that's a bit overactive. How would you know what adddi3_imm_carry_m1 really means without knowing the particular GCC backend? Or what the above magic number after # means? Or, for that matter, what "length" means? Could be byte-length, sure. But OTOH, for a RISC target it's always four, so why print it? The GCC developers surely meant cycle-length with that, nothing else makes sense. My point is, to interpret the asm dumps there's no way around having some knowledge and getting used to it. In addition I doubt they're used heavily to debug programs. Rather they're used to study the interaction between compiler and program (and potentially to find miscompilations or strangenesses the compiler emits). As such even -fverbose-asm is a low-level compiler debugging tool, not something for an end-user that needs stability or documentation. Ciao, Michael.