sparc.c:save_regs() offsets passed to dwarf2 code

David S. Miller davem@jenolan.rutgers.edu
Sun Sep 21 12:15:00 GMT 1997


What particular value of 'offset' is the dwarf2out_reg_save() code
expecting as the final argument?

While bootstrapping a sparc64 native target (linux) egcs barfs while
compiling enquire.c, the function fprop() spills %f16 and this gets
save_regs() to actually do some work from output_function_prologue.

real_offset tends to be negative in these cases, and offset is
positive.

A value relative to real_offset is what is passed to the dwarf code,
this causes an assertion failure (for offset>=0) in reg_save().

What was intended here?  (note that STACK_BIAS is involved in these
cases, so this may be contributing, but somehow I doubt it)

Later,
David "Sparc" Miller
davem@caip.rutgers.edu



More information about the Gcc mailing list