summaryrefslogtreecommitdiffstats
path: root/src/front/ast.py (unfollow)
Commit message (Collapse)AuthorFilesLines
2009-07-07self.s1 should be never None in a sequenceAndreas Nüßlein1-3/+1
2009-07-07push command line params onto stackBenedikt Böhm1-1/+6
2009-07-06implement print statementBenedikt Böhm1-0/+12
2009-07-04fix function call as statement, fix EBNF errorsBenedikt Böhm1-2/+1
2009-07-04adapt parser for backend changesBenedikt Böhm1-25/+42
- emit a prologue/epilogue for functions - emit a "JMP main" instruction in the beginning - track the last function label across genrate calls - split scope in params and local variables (they have a different layout on the stack)
2009-07-03cleanup astBenedikt Böhm1-57/+30
2009-07-02implement three-address-code objects instead of printfAndreas Nüßlein1-43/+78
2009-06-30implemented scope and most of astAndreas Nüßlein1-110/+172
2009-06-29fix function_callBenedikt Böhm1-1/+1
- function_call is now an expression and a statement - call keyword is required to make lookahead = 1 work
2009-06-23added parserAlexander Sulfrian1-1/+20
- commited parser (Michael Popov) - changed encoding of parser.py to utf8
2009-05-26tac and ast updates - added eval to ast-elemsAndreas Nüßlein1-17/+117
every ast-element now has a .eval-method that creates the ThreeAddressCode for said element. Also: tac-elements are stored linear in a list (, duh)
2009-05-21implement AST interfaces, which also superseeds parser tokensBenedikt Böhm1-0/+87