diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-07-28 07:17:10 +0000 |
---|---|---|
committer | Sebastian Huber <sh@gcc.gnu.org> | 2017-07-28 07:17:10 +0000 |
commit | 16bab95a79485ac5139992bd5f190ad95602ddda (patch) | |
tree | b86d7338eca60abf956b9f82f201e11e4777c654 /libgcc | |
parent | d0ee55a1f7ce56b20e9d52904da026a316241930 (diff) | |
download | gcc-16bab95a79485ac5139992bd5f190ad95602ddda.zip gcc-16bab95a79485ac5139992bd5f190ad95602ddda.tar.gz gcc-16bab95a79485ac5139992bd5f190ad95602ddda.tar.bz2 |
[PowerPC/RTEMS] Add 64-bit support using ELFv2 ABI
Add 64-bit support for RTEMS using the ELFv2 ABI with 64-bit long
double.
gcc/
* config.gcc (powerpc-*-rtems*): Remove rs6000/eabi.h. Add
rs6000/biarch64.h.
* config/rs6000/rtems.h (ASM_DECLARE_FUNCTION_SIZE): New macro.
(ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Likewise.
(CRT_CALL_STATIC_FUNCTION): Likewise.
(ASM_DEFAULT_SPEC): New define.
(ASM_SPEC32): Likewise.
(ASM_SPEC64): Likewise.
(ASM_SPEC_COMMON): Likewise.
(ASM_SPEC): Likewise.
(INVALID_64BIT): Likewise.
(LINK_OS_DEFAULT_SPEC): Likewise.
(LINK_OS_SPEC32): Likewise.
(LINK_OS_SPEC64): Likewise.
(POWERPC_LINUX): Likewise.
(PTRDIFF_TYPE): Likewise.
(RESTORE_FP_PREFIX): Likewise.
(RESTORE_FP_SUFFIX): Likewise.
(SAVE_FP_PREFIX): Likewise.
(SAVE_FP_SUFFIX): Likewise.
(SIZE_TYPE): Likewise.
(SUBSUBTARGET_OVERRIDE_OPTIONS): Likewise.
(TARGET_64BIT): Likewise.
(TARGET_64BIT): Likewise.
(TARGET_AIX): Likewise.
(WCHAR_TYPE_SIZE): Likewise.
(WCHAR_TYPE): Undefine.
(TARGET_OS_CPP_BUILTINS): Add 64-bit PowerPC defines.
(CPP_OS_DEFAULT_SPEC): Use previous CPP_OS_RTEMS_SPEC.
(CPP_OS_RTEMS_SPEC): Delete.
(SUBSUBTARGET_EXTRA_SPECS): Remove cpp_os_rtems. Add
asm_spec_common, asm_spec32, asm_spec64, link_os_spec32, and
link_os_spec64.
* config/rs6000/t-rtems: Add mcpu=e6500/m64 multilibs.
libgcc/
* config/rs6000/ibm-ldouble.c: Disable if defined __rtems__.
From-SVN: r250652
Diffstat (limited to 'libgcc')
-rw-r--r-- | libgcc/ChangeLog | 4 | ||||
-rw-r--r-- | libgcc/config/rs6000/ibm-ldouble.c | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index cb25039..fc7b878 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,7 @@ +2017-07-28 Sebastian Huber <sebastian.huber@embedded-brains.de> + + * config/rs6000/ibm-ldouble.c: Disable if defined __rtems__. + 2017-07-24 Daniel Santos <daniel.santos@pobox.com> PR testsuite/80759 diff --git a/libgcc/config/rs6000/ibm-ldouble.c b/libgcc/config/rs6000/ibm-ldouble.c index 949b50c..e99652e 100644 --- a/libgcc/config/rs6000/ibm-ldouble.c +++ b/libgcc/config/rs6000/ibm-ldouble.c @@ -45,7 +45,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see This code currently assumes the most significant double is in the lower numbered register or lower addressed memory. */ -#if defined (__MACH__) || defined (__powerpc__) || defined (_AIX) +#if (defined (__MACH__) || defined (__powerpc__) || defined (_AIX)) \ + && !defined (__rtems__) #define fabs(x) __builtin_fabs(x) #define isless(x, y) __builtin_isless (x, y) |