diff options
| author | rearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-04-17 15:34:25 +0000 |
|---|---|---|
| committer | rearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-04-17 15:34:25 +0000 |
| commit | b61d50b69f955fb9f2e18631676cbb83e56f222d (patch) | |
| tree | 09377ffdcae03300a7a994b1d96b0edc65ccf809 | |
| parent | f39b90606c3c2bbaa6c975a629a4d2633198fb66 (diff) | |
| download | ppe42-gcc-b61d50b69f955fb9f2e18631676cbb83e56f222d.tar.gz ppe42-gcc-b61d50b69f955fb9f2e18631676cbb83e56f222d.zip | |
* arm/bpabi.S: Add EABI alignment attributes to objects.
* arm/bpabi-v6m.S: Likewise.
* arm/crti.asm: Likewise.
* arm/crtn.asm: Likewise.
* arm/lib1funcs.asm: Likewise.
* arm/libunwind.S: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158470 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | gcc/ChangeLog | 9 | ||||
| -rw-r--r-- | gcc/config/arm/bpabi-v6m.S | 10 | ||||
| -rw-r--r-- | gcc/config/arm/bpabi.S | 10 | ||||
| -rw-r--r-- | gcc/config/arm/crti.asm | 9 | ||||
| -rw-r--r-- | gcc/config/arm/crtn.asm | 10 | ||||
| -rw-r--r-- | gcc/config/arm/lib1funcs.asm | 4 | ||||
| -rw-r--r-- | gcc/config/arm/libunwind.S | 10 |
7 files changed, 60 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 700faedc68d..3653f88a75e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,14 @@ 2010-04-17 Richard Earnshaw <rearnsha@arm.com> + * arm/bpabi.S: Add EABI alignment attributes to objects. + * arm/bpabi-v6m.S: Likewise. + * arm/crti.asm: Likewise. + * arm/crtn.asm: Likewise. + * arm/lib1funcs.asm: Likewise. + * arm/libunwind.S: Likewise. + +2010-04-17 Richard Earnshaw <rearnsha@arm.com> + * arm-protos.h (tune_params): New structure. * arm.c (current_tune): New variable. (arm_constant_limit): Delete. diff --git a/gcc/config/arm/bpabi-v6m.S b/gcc/config/arm/bpabi-v6m.S index 75d50d967a7..db1d0ed2529 100644 --- a/gcc/config/arm/bpabi-v6m.S +++ b/gcc/config/arm/bpabi-v6m.S @@ -22,6 +22,16 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see <http://www.gnu.org/licenses/>. */ +#ifdef __ARM_EABI__ +/* Some attributes that are common to all routines in this file. */ + /* Tag_ABI_align_needed: This code does not require 8-byte + alignment from the caller. */ + /* .eabi_attribute 24, 0 -- default setting. */ + /* Tag_ABI_align_preserved: This code preserves 8-byte + alignment in any callee. */ + .eabi_attribute 25, 1 +#endif /* __ARM_EABI__ */ + #ifdef L_aeabi_lcmp FUNC_START aeabi_lcmp diff --git a/gcc/config/arm/bpabi.S b/gcc/config/arm/bpabi.S index ccc569e9821..10e0f95654d 100644 --- a/gcc/config/arm/bpabi.S +++ b/gcc/config/arm/bpabi.S @@ -22,6 +22,16 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see <http://www.gnu.org/licenses/>. */ +#ifdef __ARM_EABI__ +/* Some attributes that are common to all routines in this file. */ + /* Tag_ABI_align_needed: This code does not require 8-byte + alignment from the caller. */ + /* .eabi_attribute 24, 0 -- default setting. */ + /* Tag_ABI_align_preserved: This code preserves 8-byte + alignment in any callee. */ + .eabi_attribute 25, 1 +#endif /* __ARM_EABI__ */ + #ifdef L_aeabi_lcmp ARM_FUNC_START aeabi_lcmp diff --git a/gcc/config/arm/crti.asm b/gcc/config/arm/crti.asm index 310d7840dee..bda56c56fe8 100644 --- a/gcc/config/arm/crti.asm +++ b/gcc/config/arm/crti.asm @@ -35,6 +35,15 @@ #else #define TYPE(x) #endif +#ifdef __ARM_EABI__ +/* Some attributes that are common to all routines in this file. */ + /* Tag_ABI_align_needed: This code does not require 8-byte + alignment from the caller. */ + /* .eabi_attribute 24, 0 -- default setting. */ + /* Tag_ABI_align_preserved: This code preserves 8-byte + alignment in any callee. */ + .eabi_attribute 25, 1 +#endif /* __ARM_EABI__ */ # Note - this macro is complemented by the FUNC_END macro # in crtn.asm. If you change this macro you must also change diff --git a/gcc/config/arm/crtn.asm b/gcc/config/arm/crtn.asm index 006b7d5260a..e4d59803ad1 100644 --- a/gcc/config/arm/crtn.asm +++ b/gcc/config/arm/crtn.asm @@ -26,6 +26,16 @@ .previous #endif +#ifdef __ARM_EABI__ +/* Some attributes that are common to all routines in this file. */ + /* Tag_ABI_align_needed: This code does not require 8-byte + alignment from the caller. */ + /* .eabi_attribute 24, 0 -- default setting. */ + /* Tag_ABI_align_preserved: This code preserves 8-byte + alignment in any callee. */ + .eabi_attribute 25, 1 +#endif /* __ARM_EABI__ */ + # This file just makes sure that the .fini and .init sections do in # fact return. Users may put any desired instructions in those sections. # This file is the last thing linked into any executable. diff --git a/gcc/config/arm/lib1funcs.asm b/gcc/config/arm/lib1funcs.asm index cd64da35860..34aa23e6979 100644 --- a/gcc/config/arm/lib1funcs.asm +++ b/gcc/config/arm/lib1funcs.asm @@ -31,10 +31,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see #ifdef __ARM_EABI__ /* Some attributes that are common to all routines in this file. */ - /* Tag_ABI_align8_needed: This code does not require 8-byte + /* Tag_ABI_align_needed: This code does not require 8-byte alignment from the caller. */ /* .eabi_attribute 24, 0 -- default setting. */ - /* Tag_ABI_align8_preserved: This code preserves 8-byte + /* Tag_ABI_align_preserved: This code preserves 8-byte alignment in any callee. */ .eabi_attribute 25, 1 #endif /* __ARM_EABI__ */ diff --git a/gcc/config/arm/libunwind.S b/gcc/config/arm/libunwind.S index 800e7e0caa9..b04e41731fa 100644 --- a/gcc/config/arm/libunwind.S +++ b/gcc/config/arm/libunwind.S @@ -27,6 +27,16 @@ .previous #endif +#ifdef __ARM_EABI__ +/* Some attributes that are common to all routines in this file. */ + /* Tag_ABI_align_needed: This code does not require 8-byte + alignment from the caller. */ + /* .eabi_attribute 24, 0 -- default setting. */ + /* Tag_ABI_align_preserved: This code preserves 8-byte + alignment in any callee. */ + .eabi_attribute 25, 1 +#endif /* __ARM_EABI__ */ + #ifndef __symbian__ #include "lib1funcs.asm" |

