From: Tom Rix Date: Wed, 20 Jun 2001 14:45:54 +0000 (+0000) Subject: Fix for default alignment of .comm on aix ppc X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3b87be35460d6b086736e33d2a13b61ed8c2a593;p=thirdparty%2Fbinutils-gdb.git Fix for default alignment of .comm on aix ppc --- diff --git a/gas/ChangeLog b/gas/ChangeLog index 6d9ad983627..6f390b63031 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,7 @@ +2000-06-20 Tom Rix + + * config/tc-ppc.c (ppc_comm): Change default alignment to 4 bytes. + 2001-06-18 Philip Blundell * config/tc-arm.c (do_msr): Remove restriction on usage of diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c index a893209cd51..ef708714a16 100644 --- a/gas/config/tc-ppc.c +++ b/gas/config/tc-ppc.c @@ -2340,7 +2340,8 @@ static boolean ppc_stab_symbol; /* The .comm and .lcomm pseudo-ops for XCOFF. XCOFF puts common symbols in the .bss segment as though they were local common - symbols, and uses a different smclas. */ + symbols, and uses a different smclas. The native Aix 4.3.3 assember + aligns .comm and .lcomm to 4 bytes. */ static void ppc_comm (lcomm) @@ -2382,7 +2383,7 @@ ppc_comm (lcomm) { /* The third argument to .comm is the alignment. */ if (*input_line_pointer != ',') - align = 3; + align = 2; else { ++input_line_pointer; @@ -2390,7 +2391,7 @@ ppc_comm (lcomm) if (align <= 0) { as_warn (_("ignoring bad alignment")); - align = 3; + align = 2; } } } @@ -2399,11 +2400,7 @@ ppc_comm (lcomm) char *lcomm_name; char lcomm_endc; - if (size <= 1) - align = 0; - else if (size <= 2) - align = 1; - else if (size <= 4) + if (size <= 4) align = 2; else align = 3; diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index a0c959e7f3c..15a6de27313 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2001-06-20 Tom Rix + + * gas/ppc/aix.exp: New file, aix specific tests. + * gas/ppc/align.s: New file, .comm alignment test. + 2001-06-18 Philip Blundell * gas/arm/arm.exp (msr_bad): Deleted.