From: n...@ccl4.org (Nicholas Clark)
Date: Tue, 26 Oct 2004 16:41:54 +0100
Local: Tues, Oct 26 2004 11:41 am
Subject: Re: [perl #32137] stack walking failing to detect pointer in local variable on x86 Linux
On Tue, Oct 26, 2004 at 03:21:18PM +0200, Leopold Toetsch wrote:It also doesn't help that a << 8 * sizeof(a) is undefined behaviour in C
> Nicholas Clark wrote:
> >The for loop inside trace_mem_block steps right over it. This if fails:
> > /* Do a quick approximate range check by bit-masking */
> Argh, yes. I have pointed out quite a time ago that this mask check
> I'd drop the mask test - or if possible you can fix it ;)
so gcc is not wrong returning 0xFFFFFFFF for ~(size_t)0 << i; when i=32
[Thanks to Abhijit on IRC for confirming my suspicion on this one]
so I checked in a change to find_common_mask to remove that undefined
> Thanks for your thorough analysis,No problem. Thanks for your support when I got stuck.
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.