[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [spr1794] local variables

[This question has been assigned the tracking identifier "spr1794".
Please refer to it in any followup communication.]

   Does anyone understand why one cannot look at (and possible change)
   local variables while examining the stack in the debugger on a 
   SPARC machine?
   This is one of the losers of LISP on the SPARCs (IMHO).
   (I guess, it seems like one ought to be able to read and change the contents
   of the registers on the SPARC, does it have to do with pipelining?)

The reason has nothing to do with pipelining.  The sparc compiler does
heavy register usage and value-flow optimization.  As a consequence,
at run time a particular variable from the lisp source does not always
live in a single particular register or stack location, and
conversely, a particular register or stack location does not contain a
single particular variable at different times during the execution of
a function.  Presently the compiler has no way to communicate a map of
variable locations to the debugger.  We agree this is a serious
limitation and are working on fixing it for the 4.0 release.