소스 검색

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

git-svn-id: trunk@45525 -
florian 5 년 전
부모
커밋
651f5cb8a1
1개의 변경된 파일5개의 추가작업 그리고 1개의 파일을 삭제
  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;