summaryrefslogtreecommitdiff
path: root/gcc/config/arm/vxworks.h
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-18 09:44:21 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-18 09:44:21 +0000
commite348ff3e8521ed7cf9b5ca04ec462ad773c598a9 (patch)
treef265953e69b78d5f07f6dcd4e973c24c2e324993 /gcc/config/arm/vxworks.h
parente13cda6d61d70c7375050bd34fd32887442f0e8e (diff)
downloadgcc-e348ff3e8521ed7cf9b5ca04ec462ad773c598a9.tar.gz
gcc/
* config/arm/arm-protos.h (arm_cannot_force_const_mem): Declare. * config/arm/arm.c (TARGET_CANNOT_FORCE_CONST_MEM): Redefine to arm_cannot_force_const_mem. (arm_cannot_force_const_mem): New function. * config/arm/arm.h (ARM_OFFSETS_MUST_BE_WITHIN_SECTIONS_P): New macro. (LEGITIMATE_CONSTANT_P): Test arm_cannot_force_const_mem instead of arm_tls_referenced_p. * config/arm/arm.md (movsi): Split out-of-section constants when ARM_OFFSETS_MUST_BE_WITHIN_SECTIONS_P. * config/arm/vxworks.h (ARM_OFFSETS_MUST_BE_WITHIN_SECTIONS_P): Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126718 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/arm/vxworks.h')
-rw-r--r--gcc/config/arm/vxworks.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/config/arm/vxworks.h b/gcc/config/arm/vxworks.h
index 58fea14f985..fb6c79b0331 100644
--- a/gcc/config/arm/vxworks.h
+++ b/gcc/config/arm/vxworks.h
@@ -106,3 +106,11 @@ Boston, MA 02110-1301, USA. */
the past before this macro was changed. */
#undef DEFAULT_STRUCTURE_SIZE_BOUNDARY
#define DEFAULT_STRUCTURE_SIZE_BOUNDARY 8
+
+/* The kernel loader does not allow relocations to overflow, so we
+ cannot allow arbitrary relocation addends in kernel modules or RTP
+ executables. Also, the dynamic loader uses the resolved relocation
+ value to distinguish references to the text and data segments, so we
+ cannot allow arbitrary offsets for shared libraries either. */
+#undef ARM_OFFSETS_MUST_BE_WITHIN_SECTIONS_P
+#define ARM_OFFSETS_MUST_BE_WITHIN_SECTIONS_P 1