Explorar o código

* ARM: (V)LDM do not load from the registers in the reg. set

git-svn-id: trunk@45525 -
florian %!s(int64=5) %!d(string=hai) anos
pai
achega
651f5cb8a1
Modificáronse 1 ficheiros con 5 adicións e 1 borrados
  1. 5 1
      compiler/arm/aoptcpu.pas

+ 5 - 1
compiler/arm/aoptcpu.pas

@@ -191,7 +191,11 @@ Implementation
             else
               ;
           end;
-          if instructionLoadsFromReg then exit; {Bailout if we found something}
+          if (i=0) and (p.opcode in [A_LDM,A_VLDM]) then
+            exit;
+
+          if instructionLoadsFromReg then
+            exit; {Bailout if we found something}
           Inc(I);
         end;
     end;