From 531a1af274c4bf2597435e2a4ffb0d3a8989fae5 Mon Sep 17 00:00:00 2001 From: Kim Knuttila Date: Thu, 30 Nov 1995 18:47:11 +0000 Subject: idata alignment in .s files --- gas/ChangeLog | 5 +++++ gas/config/tc-ppc.c | 25 +++++++++++++++++++++++-- 2 files changed, 28 insertions(+), 2 deletions(-) (limited to 'gas') diff --git a/gas/ChangeLog b/gas/ChangeLog index fa65630..b925148 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +Thu Nov 30 13:25:49 1995 Kim Knuttila + + * config/tc-ppc.c (ppc_pe_section): To get the alignment right for + the various idata sections, we check the name on the .section pseudo. + Thu Nov 30 11:23:42 1995 Manfred Hollstein KS/EF4A 60/1F/110 #40283 * config/obj-coff.c (fixup_segment): If TC_M88K is defined, do not diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c index f6ec614..26481e1 100644 --- a/gas/config/tc-ppc.c +++ b/gas/config/tc-ppc.c @@ -3125,8 +3125,6 @@ ppc_pe_section (ignore) segT sec; int align; - align = 4; /* default alignment to 16 byte boundary */ - section_name = input_line_pointer; c = get_symbol_end (); @@ -3140,6 +3138,29 @@ ppc_pe_section (ignore) exp = 0; flags = SEC_NO_FLAGS; + if (strcmp (name, ".idata$2") == 0) + { + align = 0; + } + else if (strcmp (name, ".idata$3") == 0) + { + align = 0; + } + else if (strcmp (name, ".idata$4") == 0) + { + align = 2; + } + else if (strcmp (name, ".idata$5") == 0) + { + align = 2; + } + else if (strcmp (name, ".idata$6") == 0) + { + align = 1; + } + else + align = 4; /* default alignment to 16 byte boundary */ + if (*input_line_pointer == ',') { ++input_line_pointer; -- cgit v1.1