Quellcode durchsuchen

+ added comment on movsd hack

git-svn-id: trunk@23031 -
florian vor 12 Jahren
Ursprung
Commit
ab1815273c
1 geänderte Dateien mit 5 neuen und 2 gelöschten Zeilen
  1. 5 2
      compiler/x86/rax86att.pas

+ 5 - 2
compiler/x86/rax86att.pas

@@ -882,8 +882,11 @@ Implementation
                 begin
                 begin
                   actopcode:=tasmop(PtrUInt(iasmops.Find(copy(s,1,len))));
                   actopcode:=tasmop(PtrUInt(iasmops.Find(copy(s,1,len))));
 
 
-                  if (actopcode = A_NONE) and
-                     (upper(s) = 'MOVSD') then actopcode := A_MOVSD;
+                  { movsd needs special handling because it has two namings in at&t syntax (movsl for string handling and
+                    movsd for the sse instruction) while only one in intel syntax (movsd, both string and sse)
+                    this cannot be expressed by the instruction table format so we have to hack around this here }
+                  if (actopcode = A_NONE) and (upper(s) = 'MOVSD') then
+                    actopcode := A_MOVSD;
 
 
                   { two-letter suffix is allowed by just a few instructions (movsx,movzx),
                   { two-letter suffix is allowed by just a few instructions (movsx,movzx),
                     and it is always required whenever allowed }
                     and it is always required whenever allowed }