RFC: Add __pointer_guard_t for pointer_guard

H.J. Lu hjl.tools@gmail.com
Fri May 18 02:42:00 GMT 2012


On Thu, May 17, 2012 at 6:23 PM, Mike Frysinger <vapier@gentoo.org> wrote:
> On Thursday 17 May 2012 21:15:09 H.J. Lu wrote:
>> on x32, PTR_DEMANGLE/PTR_MANGLE are used on 64-bit registers, which
>> requires the pointer_guard field in tcbhead_t to be 64-bit. But
>> uintptr_t is 32-bit on x32.  This patch adds __pointer_guard_t for
>> pointer_guard and reorders tcbhead_t for x32.  By pure luck, stack_guard
>> and __private_tm offsets used by GCC stay the same.  Any comments?
>
> it's not possible to fix the asm code to work on 32bit values on x32 systems ?
> it kind of sucks we have to add a new type which is uintptr_t for most
> targets.
> -mike

The pointer_guard field in tcbhead_t must be 64-bit for x32
even if the pointer size is 32bit.  Another possibility is to add a
4 byte pad after pointer_guard.  The only drawback is its value
can't be changed.

-- 
H.J.



More information about the Libc-alpha mailing list