This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: sysdep/i386/backtrace.h infinite loop?
Andrew Haley wrote:
Marco Trudel writes:
> Maybe a stupid question, but how can this loop in
> sysdep/i386/backtrace.h ever end:
>
> register _Jv_uintptr_t *_ebp __asm__ ("ebp");
> _Jv_uintptr_t rfp;
> for (rfp = *_ebp; rfp; rfp = *(_Jv_uintptr_t *)rfp)
> {
> // only read access for rfp
> }
>
> Maybe because "*(_Jv_uintptr_t *)rfp" is changing it, but I can't see how...
It looks to me like it's walking down a linked list until it hits NULL.
Yeah, but where happens the down-walking? In my opinion we do
always-the-same-value-walking...
Marco