浏览代码

* 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
             else
               ;
               ;
           end;
           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);
           Inc(I);
         end;
         end;
     end;
     end;