| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
struct ucontext in <sys/ucontext.h> is used for user-level context
and is kernel indenpendent. It is separate from struct ucontext
defined in kernel header files.
|
|
|
|
|
| |
Remove the `q' suffix from x86-64 xor/rol instructions so that they
work for both x86-64 and x32.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
2011-11-21 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/x86_64/x32/divdi3.c: New.
* sysdeps/x86_64/x32/ffs.c: Likewise.
* sysdeps/x86_64/x32/gmp-mparam.h: Likewise.
* sysdeps/x86_64/x32/symbol-hacks.h: Likewise.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2011-11-21 H.J. Lu <hongjiu.lu@intel.com>
* elf/tst-auditmod1.c: Support la_x32_gnu_pltenter and
la_x32_gnu_pltexit.
(pltexit): Cast int_retval to ptrdiff_t.
* elf/tst-auditmod3b.c: Likewise.
* elf/tst-auditmod4b.c: Likewise.
* elf/tst-auditmod5b.c: Likewise.
* elf/tst-auditmod6b.c: Likewise.
* elf/tst-auditmod6c.c: Likewise.
* elf/tst-auditmod7b.c: Likewise.
* sysdeps/generic/ldsodefs.h (audit_ifaces): Add x32_gnu_pltenter
and x32_gnu_pltexit.
* sysdeps/x86_64/bits/link.h: Check __x86_64__ instead of
__ELF_NATIVE_CLASS.
(la_x32_gnu_pltenter): New.
(la_x32_gnu_pltexit): Likewise.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
2011-11-21 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/x86_64/elf/start.S: Include <sysdep.h>. Simulate
popping 4byte argument count for x32. Use RXX_LP.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
It is almost identical to 64bit syscalls.list, except for llseek, which
is handled by x32 llseek.S.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Since x32 uses LFS like 64bit platforms, we use 64bit filesystem functions
for x32.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2011-11-21 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/unix/sysv/linux/x86_64/Makefile (gen-as-const-headers):
Add sigaltstack.sym.
* sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S: Include
"sigaltstack.h".
(____longjmp_chk): Use RXX_LP, sizeSS, oSS_FLAGS, oSS_SP and
oSS_SIZE for alternate signal stack.
* sysdeps/unix/sysv/linux/x86_64/sigaltstack.sym: New.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2011-11-21 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: Include
<stdint.h>.
(GET_PC): Cast to uintptr_t first.
(GET_FRAME): Likewise.
(GET_STACK): Likewise.
* sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h: Don't include
<bits/wordsize.h>. Check __x86_64__ instead of __WORDSIZE.
(DR_CONTROL_RESERVED): Use ULL instead of UL suffix.
* sysdeps/unix/sysv/linux/x86_64/sys/procfs.h (elf_greg_t): Use
"unsigned long long int" if __x86_64__ is defined.
Check __x86_64__ instead of __WORDSIZE.
(elf_prstatus): Use "unsigned long long int" instead of
"unsigned long int" if __x86_64__ is defined.
* sysdeps/unix/sysv/linux/x86_64/sys/reg.h: Don't
include <bits/wordsize.h>. Check __x86_64__ instead of
__WORDSIZE.
* sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h: Don't
include <bits/wordsize.h>. Check __x86_64__ instead of
__WORDSIZE.
(greg_t): Use "long long int" if __x86_64__ is defined.
(mcontext_t): Replace "unsigned long" with "unsigned long long".
(ucontext_t): Likewise.
* sysdeps/unix/sysv/linux/x86_64/sys/user.h: Don't
include <bits/wordsize.h>. Check __x86_64__ instead of
__WORDSIZE.
(user_regs_struct): Use "unsigned long long" instead of
"unsigned long" if __x86_64__ is defined.
(user): Likewise. Pad if __LP64__ isn't defined.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2011-11-21 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/x86_64/bits/wordsize.h: Moved to ...
* sysdeps/x86_64/64/bits/wordsize.h: Here.
(__WORDSIZE_COMPAT32): Removed.
* sysdeps/x86_64/x32/bits/wordsize.h: New.
Since wordsize-32 and wordsize-64 in sysdeps/x86_64/x32/Implies
and sysdeps/x86_64/64/Implies put sysdeps/wordsize-32/bits/wordsize.h
and sysdeps/wordsize-64/bits/wordsize.h before
sysdeps/x86_64/x32/bits/wordsize.h, we add
sysdeps/x86_64/64/bits/wordsize.h and sysdeps/x86_64/x32/bits/wordsize.h
to make sure that the proper wordsize.h is used.
Since we added sysdeps/unix/sysv/linux/x86_64/bits/utmp.h and
sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h to support x32, there
is no need to define __WORDSIZE_COMPAT32 anymore.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2011-11-21 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/unix/sysv/linux/x86_64/bits/a.out.h: Don't include
<bits/wordsize.h>. Check __x86_64__ instead of __WORDSIZE.
* sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/msq.h: Don't include
<bits/wordsize.h>.
(msgqnum_t): Use __UNATIVE_LONG_TYPE.
(msglen_t): Likewise.
(msqid_ds): Check __x86_64__ instead of __WORDSIZE. Use
__UNATIVE_LONG_TYPE.
* sysdeps/unix/sysv/linux/x86_64/bits/sem.h (semid_ds): Use
__UNATIVE_LONG_TYPE.
* sysdeps/unix/sysv/linux/x86_64/bits/shm.h (shmatt_t): Use
__UNATIVE_LONG_TYPE.
(shmid_ds): Add __unused1 and __unused2 only if __x86_64__ isn't
defined. Use __UNATIVE_LONG_TYPE.
(shminfo): Use __UNATIVE_LONG_TYPE.
(shm_info): Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/sigcontext.h: Don't
include <bits/wordsize.h>. Check __x86_64__ instead of
__WORDSIZE.
(sigcontext): Use "unsigned long long int" instead of
"unsigned long int" if __x86_64__ is defined. Pad if __LP64__
isn't defined.
* sysdeps/unix/sysv/linux/x86_64/bits/stat.h (_STAT_VER_SVR4):
Check __x86_64__ instead of __WORDSIZE.
(_STAT_VER_LINUX): Likewise.
(stat): Check __x86_64__ instead of __WORDSIZE. Use
__UNATIVE_LONG_TYPE.
(stat64): Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/ipc.h: New.
* sysdeps/unix/sysv/linux/x86_64/bits/ipctypes.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/mqueue.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/resource.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/statvfs.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/timex.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: Likewise.
|
| |
|
| |
|
| |
|