diff options
Diffstat (limited to 'sysdeps/i386/stackguard-macros.h')
-rw-r--r-- | sysdeps/i386/stackguard-macros.h | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/sysdeps/i386/stackguard-macros.h b/sysdeps/i386/stackguard-macros.h index 0397629..574a409 100644 --- a/sysdeps/i386/stackguard-macros.h +++ b/sysdeps/i386/stackguard-macros.h @@ -1,12 +1,7 @@ #include <stdint.h> #define STACK_CHK_GUARD \ - ({ uintptr_t x; asm ("movl %%gs:0x14, %0" : "=r" (x)); x; }) + (*(uintptr_t __seg_gs *) offsetof (tcbhead_t, stack_guard)) #define POINTER_CHK_GUARD \ - ({ \ - uintptr_t x; \ - asm ("movl %%gs:%c1, %0" : "=r" (x) \ - : "i" (offsetof (tcbhead_t, pointer_guard))); \ - x; \ - }) + (*(uintptr_t __seg_gs *) offsetof (tcbhead_t, pointer_guard)) |