ソースを参照

Fix AIX assembler issue by enabling WriteExtraFooter with modified output

git-svn-id: trunk@27620 -
pierre 11 年 前
コミット
d7c5b4502f
2 ファイル変更5 行追加3 行削除
  1. 1 0
      compiler/aggas.pas
  2. 4 3
      compiler/ppcgen/agppcgas.pas

+ 1 - 0
compiler/aggas.pas

@@ -1715,6 +1715,7 @@ implementation
         end;
 
       AsmLn;
+      WriteExtraFooter;
 {$ifdef EXTDEBUG}
       if current_module.mainsource<>'' then
        Comment(V_Debug,'Done writing gas-styled assembler output for '+current_module.mainsource);

+ 4 - 3
compiler/ppcgen/agppcgas.pas

@@ -469,6 +469,8 @@ unit agppcgas;
         { make sure we always have a code and toc section, the linker expects
           that }
         AsmWriteln(#9'.csect .text[PR]');
+        { set _text_s, to be used by footer below } 
+        AsmWriteln(#9'_text_s:');
         AsmWriteln(#9'.toc');
       end;
 
@@ -477,12 +479,11 @@ unit agppcgas;
       begin
         inherited WriteExtraFooter;
         { link between data and text section }
-        AsmWriteln('_section_.text:');
         AsmWriteln(#9'.csect .data[RW],4');
 {$ifdef cpu64bitaddr}
-        AsmWrite(#9'.llong _section_.text')
+        AsmWriteln('text_pos:'#9'.llong _text_s')
 {$else cpu64bitaddr}
-        AsmWrite(#9'.long _section_.text')
+        AsmWriteln('text_pos:'#9'.long _text_s')
 {$endif cpu64bitaddr}
       end;