aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-ppc.h
diff options
context:
space:
mode:
Diffstat (limited to 'gas/config/tc-ppc.h')
-rw-r--r--gas/config/tc-ppc.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/gas/config/tc-ppc.h b/gas/config/tc-ppc.h
index 790994e..4e175b0 100644
--- a/gas/config/tc-ppc.h
+++ b/gas/config/tc-ppc.h
@@ -285,8 +285,6 @@ extern int ppc_force_relocation (struct fix *);
|| (FIX)->fx_r_type == BFD_RELOC_PPC64_D34 \
|| (FIX)->fx_r_type == BFD_RELOC_PPC64_D28))
-#define TC_VALIDATE_FIX_SUB(FIX, SEG) 0
-
#endif /* OBJ_ELF */
#define RELOC_EXPANSION_POSSIBLE
@@ -303,6 +301,10 @@ extern int ppc_force_relocation (struct fix *);
/* XCOFF allows undefined differences which will be encoded with
R_NEG relocations. */
#define UNDEFINED_DIFFERENCE_OK
+
+#define TC_VALIDATE_FIX_SUB(FIX, SEG) \
+ (md_register_arithmetic || (SEG) != reg_section)
+
#endif /* OBJ_XCOFF */
/* Various frobbings of labels and their addresses. */