diff options
author | Tom Rix <trix@redhat.com> | 2001-06-20 13:34:10 +0000 |
---|---|---|
committer | Tom Rix <trix@redhat.com> | 2001-06-20 13:34:10 +0000 |
commit | 1ad63b2f000e4fea64a8fa6a11a3015aadd6e8fe (patch) | |
tree | 3cd51a4f6839101cc4113ff174f16def51bbcf52 /gas/config/tc-ppc.c | |
parent | 1fe213d94107550465599da19836632e0de4c020 (diff) | |
download | gdb-1ad63b2f000e4fea64a8fa6a11a3015aadd6e8fe.zip gdb-1ad63b2f000e4fea64a8fa6a11a3015aadd6e8fe.tar.gz gdb-1ad63b2f000e4fea64a8fa6a11a3015aadd6e8fe.tar.bz2 |
Fix for problem with default alignment of .comm
Diffstat (limited to 'gas/config/tc-ppc.c')
-rw-r--r-- | gas/config/tc-ppc.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c index b98f751..f0e23d5 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; |