Commit 6f0668cf by Richard Earnshaw Committed by Richard Earnshaw

bpabi.S: Add EABI alignment attributes to objects.

	* 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.

From-SVN: r158470
parent f5631ae6
2010-04-17 Richard Earnshaw <rearnsha@arm.com> 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-protos.h (tune_params): New structure.
* arm.c (current_tune): New variable. * arm.c (current_tune): New variable.
(arm_constant_limit): Delete. (arm_constant_limit): Delete.
......
...@@ -22,6 +22,16 @@ ...@@ -22,6 +22,16 @@
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>. */ <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 #ifdef L_aeabi_lcmp
FUNC_START aeabi_lcmp FUNC_START aeabi_lcmp
......
...@@ -22,6 +22,16 @@ ...@@ -22,6 +22,16 @@
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>. */ <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 #ifdef L_aeabi_lcmp
ARM_FUNC_START aeabi_lcmp ARM_FUNC_START aeabi_lcmp
......
...@@ -35,6 +35,15 @@ ...@@ -35,6 +35,15 @@
#else #else
#define TYPE(x) #define TYPE(x)
#endif #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 # Note - this macro is complemented by the FUNC_END macro
# in crtn.asm. If you change this macro you must also change # in crtn.asm. If you change this macro you must also change
......
...@@ -26,6 +26,16 @@ ...@@ -26,6 +26,16 @@
.previous .previous
#endif #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 # This file just makes sure that the .fini and .init sections do in
# fact return. Users may put any desired instructions in those sections. # fact return. Users may put any desired instructions in those sections.
# This file is the last thing linked into any executable. # This file is the last thing linked into any executable.
......
...@@ -31,10 +31,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ...@@ -31,10 +31,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#ifdef __ARM_EABI__ #ifdef __ARM_EABI__
/* Some attributes that are common to all routines in this file. */ /* 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. */ alignment from the caller. */
/* .eabi_attribute 24, 0 -- default setting. */ /* .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. */ alignment in any callee. */
.eabi_attribute 25, 1 .eabi_attribute 25, 1
#endif /* __ARM_EABI__ */ #endif /* __ARM_EABI__ */
......
...@@ -27,6 +27,16 @@ ...@@ -27,6 +27,16 @@
.previous .previous
#endif #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__ #ifndef __symbian__
#include "lib1funcs.asm" #include "lib1funcs.asm"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment