Browse Source

* when converting Hi() to a shr node, convert the right shr const parameter to
sinttype, instead of u32inttype. This:
1) is consistent with what type conversion tshlshrnode.pass_typecheck inserts
on the right side
2) avoids the expensive conversion to 32-bit and the even more expensive
performing the operation in 32-bit on i8086

git-svn-id: trunk@26352 -

nickysn 11 years ago
parent
commit
e1332304ef
1 changed files with 1 additions and 1 deletions
  1. 1 1
      compiler/ninl.pas

+ 1 - 1
compiler/ninl.pas

@@ -3277,7 +3277,7 @@ implementation
               end;
               end;
               if shiftconst <> 0 then
               if shiftconst <> 0 then
                 result := ctypeconvnode.create_internal(cshlshrnode.create(shrn,left,
                 result := ctypeconvnode.create_internal(cshlshrnode.create(shrn,left,
-                    cordconstnode.create(shiftconst,u32inttype,false)),resultdef)
+                    cordconstnode.create(shiftconst,sinttype,false)),resultdef)
               else
               else
                 result := ctypeconvnode.create_internal(left,resultdef);
                 result := ctypeconvnode.create_internal(left,resultdef);
               left := nil;
               left := nil;