* do not do full boolean evaluation on LOC_FLAGS

git-svn-id: trunk@44270 -
This commit is contained in:
florian 2020-03-06 16:16:37 +00:00
parent 424c8a0ac0
commit f8339a43ea

View File

@ -1270,7 +1270,7 @@ implementation
{ full boolean evaluation is only useful if the nodes are not too complex and if no flags/jumps must be converted,
further, we need to know the expectloc }
if (node_complexity(right)<=2) and
not(left.expectloc in [LOC_FLAGS,LOC_JUMP,LOC_INVALID]) and not(right.expectloc in [LOC_FLAGS,LOC_JUMP,LOC_INVALID]) then
not(left.expectloc in [LOC_JUMP,LOC_INVALID]) and not(right.expectloc in [LOC_JUMP,LOC_INVALID]) then
begin
{ we need to copy the whole tree to force another pass_1 }
include(localswitches,cs_full_boolean_eval);