* fixed writing of local static symbols on AIX

o the order of .lcomm operands was inverted and can't specify an alignment
   o the section in which to place them can't be adorned using [RW] access
     specifiers (it's always in .bss, which is [RW] by definition)

git-svn-id: trunk@22644 -
This commit is contained in:
Jonas Maebe 2012-10-14 15:59:49 +00:00
parent d7e0f07aab
commit bc35f4b3db
2 changed files with 3 additions and 3 deletions

View File

@ -810,9 +810,9 @@ implementation
begin begin
asmwrite(#9'.lcomm '); asmwrite(#9'.lcomm ');
asmwrite(ReplaceForbiddenAsmSymbolChars(tai_datablock(hp).sym.name)); asmwrite(ReplaceForbiddenAsmSymbolChars(tai_datablock(hp).sym.name));
asmwrite(',_data.bss_[RW],'); asmwrite(',');
asmwrite(tostr(tai_datablock(hp).size)+','); asmwrite(tostr(tai_datablock(hp).size)+',');
asmwriteln(tostr(last_align)); asmwrite('_data.bss_');
end; end;
end end
else else

View File

@ -282,7 +282,7 @@ implementation
if isglobal then if isglobal then
list.concat(tai_stab.Create_ansistr(stabx_bs,'.data[RW]')) list.concat(tai_stab.Create_ansistr(stabx_bs,'.data[RW]'))
else else
list.concat(tai_stab.Create_ansistr(stabx_bs,'_data.bss_[RW]')); list.concat(tai_stab.Create_ansistr(stabx_bs,'_data.bss_'));
inherited; inherited;
if ismem then if ismem then
list.concat(tai_stab.Create_ansistr(stabx_es,'')); list.concat(tai_stab.Create_ansistr(stabx_es,''));