* in case a 32x32 -> 64 multiplication is converted into shl, the type casts need to be restored

git-svn-id: trunk@44197 -
This commit is contained in:
florian 2020-02-16 20:14:27 +00:00
parent 9989d408fd
commit 27e89e07a3

View File

@ -3903,6 +3903,10 @@ implementation
((right.nodetype = ordconstn) and
ispowerof2(tordconstnode(right).value,i2))) then
begin
{ it could be that we are converting a 32x32 -> 64 multiplication:
in this case, we have to restore the type conversion }
inserttypeconv_internal(left,resultdef);
inserttypeconv_internal(right,resultdef);
if ((left.nodetype = ordconstn) and
ispowerof2(tordconstnode(left).value,i)) then
begin