summaryrefslogtreecommitdiffstats
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* implement memory bounds checkingBenedikt Böhm2009-07-075-1/+15
|
* push command line params onto stackBenedikt Böhm2009-07-074-8/+19
|
* make instruction 64-bit wide to support more than 32 registersBenedikt Böhm2009-07-079-74/+81
|
* minor fixesBenedikt Böhm2009-07-062-1/+2
|
* implement print statementBenedikt Böhm2009-07-068-11/+37
|
* fix generation of LW, SW opcodesBenedikt Böhm2009-07-061-1/+2
|
* fix segmentation fault on syntax errorBenedikt Böhm2009-07-061-7/+7
|
* fix function call as statement, fix EBNF errorsBenedikt Böhm2009-07-042-16/+14
|
* simplify generatorJana Rekittke2009-07-041-45/+12
|
* cleanupBenedikt Böhm2009-07-044-28/+8
|
* remove test filesBenedikt Böhm2009-07-045-195/+0
|
* adapt emulator for generator changes:Benedikt Böhm2009-07-0414-219/+450
| | | | | | | | - new instructions (push, pop, call, ret) - new pseudo-registers (bp, sp, rv) - new binary format - dynamic register file size - removed obsolete instructions
* implement the code generatorJana Rekittke2009-07-042-3/+182
|
* adapt parser for backend changesBenedikt Böhm2009-07-043-34/+69
| | | | | | | | - 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)
* cleanupBenedikt Böhm2009-07-031-32/+0
|
* rename BEQ to BEZ and make TACList iterableBenedikt Böhm2009-07-031-1/+4
|
* cleanup astBenedikt Böhm2009-07-031-57/+30
|
* adapt instructions changes from back/tac.pyJana Rekittke2009-07-023-29/+29
|
* implement three-address-code objects instead of printfAndreas Nüßlein2009-07-027-90/+157
|
* implemented scope and most of astAndreas Nüßlein2009-06-305-172/+238
|
* fix function_callBenedikt Böhm2009-06-295-84/+41
| | | | | - function_call is now an expression and a statement - call keyword is required to make lookahead = 1 work
* Merge branch 'master' of git@git.animux.de:swppyBenedikt Böhm2009-06-296-92/+260
|\ | | | | | | | | Conflicts: src/front/__init__.py
| * fixed error with not newline at file endAlexander Sulfrian2009-06-284-40/+43
| | | | | | | | | | | | moved __init__.py with testcode from src/front to src/ added in lexer "\n\n" at source end to have a newline at file end added unexpected end of file message, if matched token is None
| * added parserAlexander Sulfrian2009-06-234-69/+232
| | | | | | | | | | - commited parser (Michael Popov) - changed encoding of parser.py to utf8
* | simplify scope, symbol and typesBenedikt Böhm2009-06-093-48/+20
| |
* | Merge branch 'master' of git@git.animux.de:swppyBenedikt Böhm2009-05-262-5/+38
|\|
| * added a main_test (currently for back)Andreas Nüßlein2009-05-262-5/+38
| |
* | fix __init__.pyBenedikt Böhm2009-05-261-3/+1
|/
* tac and ast updates - added eval to ast-elemsAndreas Nüßlein2009-05-262-44/+162
| | | | | | 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)
* add scope, and symbol class, obsoletes SymbolTableBenedikt Böhm2009-05-253-30/+54
|
* added ThreeAddressCode classAndreas Nüßlein2009-05-221-0/+50
|
* implement AST interfaces, which also superseeds parser tokensBenedikt Böhm2009-05-213-59/+111
|
* remove symbol table from lexerBenedikt Böhm2009-05-204-33/+40
|
* convert tags to a typesafe enum so we can print strings instead of intsBenedikt Böhm2009-05-201-42/+50
|
* beautify symbol tableBenedikt Böhm2009-05-202-17/+20
|
* implemented lexer (with tokens and symbolTable)Alexander Sulfrian2009-05-204-61/+215
| | | | | | todo: beautify code, implement token classes for parser implemented test function with testcode moved token class to single file (token.py)
* parse tree not needed anymoreBenedikt Böhm2009-05-191-3/+0
|
* define interfacesBenedikt Böhm2009-05-198-0/+174
|
* fix CMP instructionBenedikt Böhm2009-05-191-2/+2
|
* move stuff around and create initial source structureBenedikt Böhm2009-05-1823-0/+736