sysdep/i386/backtrace.h infinite loop?

Andrew Haley aph@redhat.com
Wed Feb 21 11:51:00 GMT 2007


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.
Andrew.


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /