diff options
author | Nick Clifton <nickc@redhat.com> | 2000-12-04 23:05:17 +0000 |
---|---|---|
committer | Nick Clifton <nickc@gcc.gnu.org> | 2000-12-04 23:05:17 +0000 |
commit | c84df4c5696d09b71bab1421d2cd0d8119dcfb7b (patch) | |
tree | f55c836f5c4626cca728b4ef89f0c76b1fb092b7 /gcc | |
parent | c4f0b011c74598c5fce423229858df86c8972b34 (diff) | |
download | gcc-c84df4c5696d09b71bab1421d2cd0d8119dcfb7b.zip gcc-c84df4c5696d09b71bab1421d2cd0d8119dcfb7b.tar.gz gcc-c84df4c5696d09b71bab1421d2cd0d8119dcfb7b.tar.bz2 |
Do not create interworking functions if the target architecture does not
support Thumb instructions.
From-SVN: r38017
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/arm/lib1funcs.asm | 14 |
2 files changed, 12 insertions, 8 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 05034cf..9538f2d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2000-12-04 Nick Clifton <nickc@redhat.com> + + * config/arm/lib1funcs.asm (interwork_call_via_, call_via_): Do + not create these functions if the target architecture does not + support Thumb instructions. + 2000-12-04 Joseph S. Myers <jsm28@cam.ac.uk> * ONEWS: New file with the current contents of NEWS up to EGCS diff --git a/gcc/config/arm/lib1funcs.asm b/gcc/config/arm/lib1funcs.asm index ea816ab..4e762b4 100644 --- a/gcc/config/arm/lib1funcs.asm +++ b/gcc/config/arm/lib1funcs.asm @@ -657,10 +657,9 @@ Lover12: assembler because their presence allows interworked code to be linked even when the GCC library is this one. */ -/* Do not build the interworking functions when the target cpu - is the arm v3 architecture. (This is one of the multilib - options). */ -#if defined L_call_via_rX && ! defined __ARM_ARCH_3__ +/* Do not build the interworking functions when the target architecture does + not support Thumb instructions. (This can be a multilib option). */ +#if defined L_call_via_rX && (defined __ARM_ARCH_4T__ || defined __ARM_ARCH_5T__ || defined __ARM_ARCH_5TE__) /* These labels & instructions are used by the Arm/Thumb interworking code. The address of function to be called is loaded into a register and then @@ -699,10 +698,9 @@ Lover12: #endif /* L_call_via_rX */ /* ------------------------------------------------------------------------ */ -/* Do not build the interworking functions when the target cpu - is the arm v3 architecture. (This is one of the multilib - options). */ -#if defined L_interwork_call_via_rX && ! defined __ARM_ARCH_3__ +/* Do not build the interworking functions when the target architecture does + not support Thumb instructions. (This can be a multilib option). */ +#if defined L_interwork_call_via_rX && (defined __ARM_ARCH_4T__ || defined __ARM_ARCH_5T__ || defined __ARM_ARCH_5TE__) /* These labels & instructions are used by the Arm/Thumb interworking code, when the target address is in an unknown instruction set. The address |