2014 Student Research Conference:
27th Annual Student Research Conference

Constructing a Control-Flow Graph from Linear Code
Nicholas Becker
Dr. Robert Matthews, Faculty Mentor

Control-flow graphs (CFGs) are an essential component of the optimization phase of many compilers. They are used for static analysis, the process by which compilers find opportunities for optimization and justify those optimizations without actually running the code. With a CFG, one can understand how control moves among the different basic blocks of the program and reason about how values might flow through the program. From there, one can then move on to solving bigger problems, such as identifying unused variables or redundant expressions, two common data-flow analysis problems. For this paper, I developed and implemented an algorithm to generate a control-flow graph from TrAL, the simple assembly language used for instruction purposes in CS 420: Compilers.

Keywords: control-flow graph, CFG, compilers, optimization

Topic(s):Computer Science

Presentation Type: Oral Paper

Session: 307-1
Location: VH 1236
Time: 1:00

Add to Custom Schedule

   SRC Privacy Policy