Explorar o código

* x86: BZHI optimisation now sets the subtract and shift nodes to 'do not execute' as they are skipped over.

J. Gareth "Curious Kit" Moreton %!s(int64=2) %!d(string=hai) anos
pai
achega
2a44ffe51b
Modificáronse 1 ficheiros con 2 adicións e 0 borrados
  1. 2 0
      compiler/x86/nx86add.pas

+ 2 - 0
compiler/x86/nx86add.pas

@@ -2051,6 +2051,8 @@ unit nx86add;
                    secondpass(left);
 
                    { Skip the subtract and shift nodes completely }
+                   Include(right.flags, nf_do_not_execute);
+                   Include(taddnode(right).left.flags, nf_do_not_execute);
 
                    { Helps avoid all the awkward typecasts }
                    indexnode := tshlshrnode(taddnode(right).left).right;