Hi, Roma.
Your next task is IR high-level development.
IR consists of different layers: Module, Function, Basic Block, Instruction.
Module is the highest item of hierarchy. It includes list of Functions, list of
global objects
Function represents a single function. Function includes list of Basic Blocks,
list of Arguments, list of local objects, pointer to parent Module, name of
functions.
Basic Block is a largest possible code block that has a single point of entry
and single point of exit. BB includes list of instrutions (operations) and
pointer ro parent Function.
Instruction has already been implemented (class Operation). You need to include
pointer to parent Basic Block.
I suggest to implement these classes in order from lower to higher one. Also
need to add unit tests for new functionality.
Original issue reported on code.google.com by
rob.khas...@gmail.comon 23 Nov 2013 at 9:21