summaryrefslogtreecommitdiff
path: root/gas/config/tc-sh.h
diff options
context:
space:
mode:
Diffstat (limited to 'gas/config/tc-sh.h')
-rw-r--r--gas/config/tc-sh.h20
1 files changed, 11 insertions, 9 deletions
diff --git a/gas/config/tc-sh.h b/gas/config/tc-sh.h
index 099e915391..f5ab8a9182 100644
--- a/gas/config/tc-sh.h
+++ b/gas/config/tc-sh.h
@@ -130,18 +130,20 @@ extern void sh_coff_reloc_mangle
extern int tc_coff_sizemachdep PARAMS ((fragS *));
#ifdef BFD_ASSEMBLER
-#define SUB_SEGMENT_ALIGN(SEG) 4
+#define SEG_NAME(SEG) segment_name (SEG)
#else
+#define SEG_NAME(SEG) obj_segment_name (SEG)
+#endif
+
/* We align most sections to a 16 byte boundary. */
-#define SUB_SEGMENT_ALIGN(SEG) \
- (strncmp (obj_segment_name (SEG), ".stabstr", 8) == 0 \
- ? 0 \
- : ((strncmp (obj_segment_name (SEG), ".stab", 5) == 0 \
- || strcmp (obj_segment_name (SEG), ".ctors") == 0 \
- || strcmp (obj_segment_name (SEG), ".dtors") == 0) \
- ? 2 \
+#define SUB_SEGMENT_ALIGN(SEG) \
+ (strncmp (SEG_NAME (SEG), ".stabstr", 8) == 0 \
+ ? 0 \
+ : ((strncmp (SEG_NAME (SEG), ".stab", 5) == 0 \
+ || strcmp (SEG_NAME (SEG), ".ctors") == 0 \
+ || strcmp (SEG_NAME (SEG), ".dtors") == 0) \
+ ? 2 \
: (sh_small ? 2 : 4)))
-#endif
#endif /* OBJ_COFF */