mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-15 12:33:30 +08:00
Fix some 64-bit sparc build warnings.
* sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c (__makecontext): Fix signedness of pointer casts setting up 'sp'. * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL) Use 'long' for 'resultvar' otherwise things get truncated on 64-bit.
This commit is contained in:
parent
cb9d617437
commit
a1bcbd4035
@ -1,5 +1,10 @@
|
||||
2012-03-11 David S. Miller <davem@davemloft.net>
|
||||
|
||||
* sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c
|
||||
(__makecontext): Fix signedness of pointer casts setting up 'sp'.
|
||||
* sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL) Use 'long'
|
||||
for 'resultvar' otherwise things get truncated on 64-bit.
|
||||
|
||||
* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard):
|
||||
Fix masking out of the most significant byte of random value used.
|
||||
|
||||
|
@ -29,9 +29,9 @@ __makecontext (ucontext_t *ucp, void (*func) (void), int argc, ...)
|
||||
va_list ap;
|
||||
int i;
|
||||
|
||||
sp = (long *) ((long) ucp->uc_stack.ss_sp + ucp->uc_stack.ss_size);
|
||||
sp = (unsigned long *) ((long) ucp->uc_stack.ss_sp + ucp->uc_stack.ss_size);
|
||||
sp -= (argc > 6 ? argc : 6) + 32;
|
||||
sp = (long *) (((long) sp) & -16L);
|
||||
sp = (unsigned long *) (((long) sp) & -16L);
|
||||
topsp = sp + (argc > 6 ? argc : 6) + 16;
|
||||
|
||||
ucp->uc_mcontext.mc_gregs[MC_PC] = (long) func;
|
||||
|
@ -22,13 +22,13 @@
|
||||
#undef INLINE_SYSCALL
|
||||
#define INLINE_SYSCALL(name, nr, args...) \
|
||||
({ INTERNAL_SYSCALL_DECL(err); \
|
||||
unsigned int resultvar = INTERNAL_SYSCALL(name, err, nr, args); \
|
||||
unsigned long resultvar = INTERNAL_SYSCALL(name, err, nr, args);\
|
||||
if (INTERNAL_SYSCALL_ERROR_P (resultvar, err)) \
|
||||
{ \
|
||||
__set_errno (INTERNAL_SYSCALL_ERRNO (resultvar, err)); \
|
||||
resultvar = 0xffffffff; \
|
||||
resultvar = (unsigned long) -1; \
|
||||
} \
|
||||
(int) resultvar; \
|
||||
(long) resultvar; \
|
||||
})
|
||||
|
||||
#undef INTERNAL_SYSCALL_DECL
|
||||
|
Loading…
Reference in New Issue
Block a user