This is the mail archive of the gdb@sourceware.cygnus.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: IA32: printing FP register variables


> Consider two threads of control, each with one variable on the FP stack.
> 
> At some point they merge.  One variable has to be on the bottom, the other
> on the top.
> 
> regstack has to track this stuff and emit appropriate code at block boundaries
> to move stuff around via copies.

Currently, flow will consider both variables live in the predecessor blocks
if they are live in the successor block.  We'd need better data & control
flow analysis to find cases where a varaible is indeed live only in a
subset of the predecessor blocks.

So I guess that you are talking about the case when the variables were
allocated in different positions in the register stack in the different
predecessor blocks.  That means that the number of live registers in the
FP stack doesn't change at the basic block boundary, but but the positions of
two or more variables change.  Since the stack usage stays the same,
the number of variables that change location is the same no matter if
we count from the top or from the bottom of the stack.
We'll have to emit enough debugging information as it takes then to
describe all these position changes.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]