diff options
author | Dmitry V. Levin <ldv@altlinux.org> | 2014-03-18 23:37:43 +0000 |
---|---|---|
committer | Dmitry V. Levin <ldv@altlinux.org> | 2014-03-20 22:21:51 +0000 |
commit | 0160e161081c08480bb4fd63a292040c7611f6ec (patch) | |
tree | 97232fedb8036542c2af8e5715894e88222816e6 /syscall.c | |
parent | a07cfcc133f4adf5116a32b199c4230e022475da (diff) | |
download | strace-0160e161081c08480bb4fd63a292040c7611f6ec.tar.gz strace-0160e161081c08480bb4fd63a292040c7611f6ec.tar.bz2 strace-0160e161081c08480bb4fd63a292040c7611f6ec.tar.xz |
ARM EABI: disable OABI support by default
OABI is rarely used in ARM EABI systems nowadays, so disable its support
by default. Add --enable-arm-oabi option to enable ARM OABI support.
* configure.ac: New option --enable-arm-oabi.
* syscall.c (get_scno) [ARM]: Check ENABLE_ARM_OABI macro defined by
configure instead of undocumented STRACE_KNOWS_ONLY_EABI macro.
Diffstat (limited to 'syscall.c')
-rw-r--r-- | syscall.c | 5 |
1 files changed, 2 insertions, 3 deletions
@@ -1360,8 +1360,7 @@ get_scno(struct tcb *tcp) } /* Note: we support only 32-bit CPUs, not 26-bit */ -# ifndef STRACE_KNOWS_ONLY_EABI -# warning STRACE_KNOWS_ONLY_EABI not set, will PTRACE_PEEKTEXT on every syscall (slower tracing) +# if !defined(__ARM_EABI__) || ENABLE_ARM_OABI if (arm_regs.ARM_cpsr & 0x20) /* Thumb mode */ goto scno_in_r7; @@ -1385,7 +1384,7 @@ get_scno(struct tcb *tcp) scno_in_r7: scno = arm_regs.ARM_r7; } -# else +# else /* __ARM_EABI__ || !ENABLE_ARM_OABI */ scno = arm_regs.ARM_r7; # endif scno = shuffle_scno(scno); |