Преглед на файлове

+ add for MLA the same register interferences as for MUL
* register interferences for MUL/MLA are only needed for less than ARMv6

git-svn-id: trunk@21385 -

florian преди 13 години
родител
ревизия
21b94f675f
променени са 1 файла, в които са добавени 4 реда и са изтрити 2 реда
  1. 4 2
      compiler/arm/rgcpu.pas

+ 4 - 2
compiler/arm/rgcpu.pas

@@ -57,7 +57,7 @@ unit rgcpu;
   implementation
 
     uses
-      verbose, cutils,globtype,
+      verbose, cutils,globtype,globals,cpuinfo,
       cgobj,
       procinfo;
 
@@ -368,8 +368,10 @@ unit rgcpu;
         if p.typ=ait_instruction then
           begin
             case taicpu(p).opcode of
+              A_MLA,
               A_MUL:
-                add_edge(getsupreg(taicpu(p).oper[0]^.reg),getsupreg(taicpu(p).oper[1]^.reg));
+                if current_settings.cputype<cpu_armv6 then
+                  add_edge(getsupreg(taicpu(p).oper[0]^.reg),getsupreg(taicpu(p).oper[1]^.reg));
               A_UMULL,
               A_UMLAL,
               A_SMULL,