aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorWalter Lee <walt@tilera.com>2013-03-25 23:50:52 +0000
committerWalter Lee <walt@gcc.gnu.org>2013-03-25 23:50:52 +0000
commit192ea533bec3909472c092822e1ca4b379dd6b2e (patch)
tree094cddcc439ff1c532c315ae73c2b4e969da365f /gcc
parent855e0d0b07d88325a59da5814be9c3e157d45226 (diff)
downloadgcc-192ea533bec3909472c092822e1ca4b379dd6b2e.zip
gcc-192ea533bec3909472c092822e1ca4b379dd6b2e.tar.gz
gcc-192ea533bec3909472c092822e1ca4b379dd6b2e.tar.bz2
Switch eh data to always use pc relative/indirect encoding, to avoid
relocations of unaligned words. From-SVN: r197073
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/tilegx/tilegx.c9
-rw-r--r--gcc/config/tilepro/tilepro.c5
3 files changed, 10 insertions, 11 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fbaaaaa..d163b48 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2013-03-25 Walter Lee <walt@tilera.com>
+
+ * config/tilegx/tilegx.c (tilegx_asm_preferred_eh_data_format):
+ Use indirect/pcrel encoding.
+ * config/tilepro/tilepro.c (tilepro_asm_preferred_eh_data_format):
+ Ditto.
+
2013-03-25 Steve Ellcey <sellcey@mips.com>
* config/mips/mmips-cpus.def (74kc, 74kf2_1, 74kf, 74kf, 74kf1_1,
diff --git a/gcc/config/tilegx/tilegx.c b/gcc/config/tilegx/tilegx.c
index 98f53f1..c6bdbe6 100644
--- a/gcc/config/tilegx/tilegx.c
+++ b/gcc/config/tilegx/tilegx.c
@@ -4786,13 +4786,8 @@ tilegx_reorg (void)
int
tilegx_asm_preferred_eh_data_format (int code ATTRIBUTE_UNUSED, int global)
{
- if (flag_pic)
- {
- int type = TARGET_32BIT ? DW_EH_PE_sdata4 : DW_EH_PE_sdata8;
- return (global ? DW_EH_PE_indirect : 0) | DW_EH_PE_pcrel | type;
- }
- else
- return DW_EH_PE_absptr;
+ int type = TARGET_32BIT ? DW_EH_PE_sdata4 : DW_EH_PE_sdata8;
+ return (global ? DW_EH_PE_indirect : 0) | DW_EH_PE_pcrel | type;
}
diff --git a/gcc/config/tilepro/tilepro.c b/gcc/config/tilepro/tilepro.c
index 29dff87..59618e4 100644
--- a/gcc/config/tilepro/tilepro.c
+++ b/gcc/config/tilepro/tilepro.c
@@ -4338,10 +4338,7 @@ tilepro_reorg (void)
int
tilepro_asm_preferred_eh_data_format (int code ATTRIBUTE_UNUSED, int global)
{
- if (flag_pic)
- return (global ? DW_EH_PE_indirect : 0) | DW_EH_PE_pcrel | DW_EH_PE_sdata4;
- else
- return DW_EH_PE_absptr;
+ return (global ? DW_EH_PE_indirect : 0) | DW_EH_PE_pcrel | DW_EH_PE_sdata4;
}