Skip to content

thunderstriker1998/compilerdesign

Repository files navigation

compilerdesign

Implementation of compiler design concepts in lex,yacc(Dragon Book)

  • folder ifelse -> if a given "if" statement doesnt have a corresponding "else", add an empty "else{}" statement.
  • folder loops -> convert the given "for" and "dowhile" loop to "while" loop such that its semantic meaning is maintained.
  • folder threeaddr_backpatching-> three address code for if,if-else,while statements
  • folder labelled -> given an arithmetic expression ,generate its corresponding assembly code for any value for required register and available number of registers.
  • folder dag_opt_all ->it generates dag for a given block of statements and removes copy propagation, constant folding and common sub expression and generates optimized three address statements for that block.
  • folder symbol table -> given a set of declaration statements, it generates its symbol table.
  • folder syntax tree -> creates a syntax tree for an arithmetic expression.
  • folder threeaddr_array -> creates three address statements for expressions invloving array reference.
  • folder threeaddr_all -> creates three address statements for any kind of c statements(including array reference of any dimension).

About

Implementation of compiler design concepts in lex,yacc(Dragon Book)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published