Przeglądaj źródła

Solaris assembler does not accept %st instead of %st(0), at least for some instructions

git-svn-id: trunk@32198 -
pierre 9 lat temu
rodzic
commit
1abf9df1b0
1 zmienionych plików z 5 dodań i 1 usunięć
  1. 5 1
      compiler/x86/agx86att.pas

+ 5 - 1
compiler/x86/agx86att.pas

@@ -224,7 +224,11 @@ interface
       begin
         case o.typ of
           top_reg :
-            owner.writer.AsmWrite(gas_regname(o.reg));
+            { Solaris assembler does not accept %st instead of %st(0) }
+            if (owner.asminfo^.id=as_solaris_as) and (o.reg=NR_ST) then
+              owner.writer.AsmWrite(gas_regname(NR_ST0))
+            else
+              owner.writer.AsmWrite(gas_regname(o.reg));
           top_ref :
             if o.ref^.refaddr in [addr_no,addr_pic,addr_pic_no_got] then
               WriteReference(o.ref^)