Project

General

Profile

Actions

Task #6509

closed

merge embedded switch nodes with conditions depending exactly from the same variable(s)

Added by Sergey Smolov about 8 years ago. Updated about 8 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
Category:
Engine (Parser)
Target version:
Start date:
01/17/2016
Due date:
% Done:

0%

Estimated time:
Detected in build:
svn
Published in build:

Description

Backend that merges embedded switch statements. Supposing that they have f(x) and g(x) conditions respectively,
it merges them into one switch with the following condition:

cond(f, C) ? fg : f

where cond(f, C) is an extression that is built from f condition and it's possible values of it's child C case statement (that is a parent for g switch statement), and fg is a concatenation. All the chidl case statements for g statements should modify their values to the bitvector datatype and should have "cond(f, C)" prefix.

Actions

Also available in: Atom PDF