Browse Source

* removed -Oodfa warnings

git-svn-id: trunk@29986 -
Jonas Maebe 10 years ago
parent
commit
879afbb7be

+ 2 - 0
compiler/aarch64/agcpugas.pas

@@ -120,6 +120,8 @@ unit agcpugas;
                     { todo }
                     internalerror(2014121502);
                 end
+              else
+                internalerror(2015022301);
             end
           end
         else

+ 2 - 0
compiler/aarch64/cgcpu.pas

@@ -2136,6 +2136,8 @@ implementation
               number of registers }
             if loadop=A_LDP then
               regcount:=regcount and not(1);
+            { initialise for dfa }
+            regs[low(regs)]:=NR_NO;
             { max 4 loads/stores -> max 8 registers (in case of ldp/stdp) }
             for i:=1 to regcount do
               regs[i]:=getintregister(list,opsize);

+ 4 - 1
compiler/aarch64/ncpuadd.pas

@@ -278,7 +278,10 @@ interface
               op:=A_CMP
             else
               op:=A_CMN;
-          end;
+          end
+        else
+          { for DFA }
+          op:=A_NONE;
 
         case nodetype of
           equaln,

+ 2 - 0
compiler/aarch64/racpugas.pas

@@ -511,6 +511,8 @@ Unit racpugas;
               if (is_operand<>(actopcode=A_B)) and
                  (length(hs)>1) then
                 begin
+                  { workaround for DFA bug }
+                  result:=low(tasmcond);
                   for result:=low(tasmcond) to high(tasmcond) do
                     begin
                       if hs=uppercond2str[result] then