308 Commits

Author SHA1 Message Date
63c5f70358 add new node types to the visitors 2019-12-16 21:46:43 +01:00
e1eb64f576 use new node types, implement new visitors 2019-12-16 21:46:18 +01:00
9e5046a20a implement new node types according to the new grammar 2019-12-16 21:45:55 +01:00
629f67b39c make expressions nestable 2019-12-16 21:44:37 +01:00
de7625750e remove obsolete visitor 2019-12-16 21:44:01 +01:00
121d5c6fe7 ignore c and out files 2019-12-16 21:43:28 +01:00
fdab293ab4 Merge branch 'master' of gitlab.cs.hs-rm.de:mkais001/klang 2019-12-16 11:52:18 +01:00
64b88c192c ignore klang sourcecode and assembly files 2019-12-16 11:52:05 +01:00
Marvin Kaiser
ecae26c8a7 Fix: offset calculation for function definitions
Fix: Jumps / Labels in if statement
2019-12-02 17:13:11 +01:00
Marvin Kaiser
b7e6567d69 Fixed main function asm code
Fixed: IntegerValues not passed via rax
Fixed: Some values passed via stack, not via rax
2019-11-26 09:14:44 +01:00
2c2696207f output the generated assembler code 2019-11-26 08:08:06 +01:00
7d17accad5 implement assembler code generation 2019-11-26 08:07:43 +01:00
Marvin Kaiser
37e4db94f2 Implemented GetVars Visitor 2019-11-25 15:29:22 +01:00
5d62ef1d30 start implement a asm code generator visitor 2019-11-25 14:45:52 +01:00
fda65c7d93 implement return statement 2019-11-25 14:45:35 +01:00
07ff7b9f06 Implement return statement node 2019-11-25 14:44:41 +01:00
c5dc08c1e0 add return statement to the grammar 2019-11-25 14:44:14 +01:00
d8985bf070 print SCOL after the program's expression, remove whitespace before the OPAR of the funtion definition 2019-11-18 18:57:25 +01:00
2af9f369cf implement variable assignment 2019-11-18 18:54:24 +01:00
b38369b7a5 implemented variables and function call evaluation 2019-11-18 18:02:10 +01:00
Marvin Kaiser
13caee0667 Added function call and function definition 2019-11-18 16:39:12 +01:00
9385618252 print and evaluate the source code 2019-11-12 12:03:59 +01:00
38d34a7cbc implement else if nesting 2019-11-11 22:27:27 +01:00
ea6bde3305 enforce parantheses around the conditional expression of an if statement 2019-11-11 16:22:43 +01:00
0021e4da60 shortened import statements 2019-11-11 16:20:08 +01:00
d97f84e95f use pretty print visitor 2019-11-11 15:50:37 +01:00
9fa61ed1a4 implement pretty print visitor 2019-11-11 15:50:25 +01:00
af363c729f add method for visiting blocks 2019-11-11 15:50:08 +01:00
b473a627b0 add stub for visiting block statement 2019-11-11 15:49:46 +01:00
d5639db187 actually implement the visitor 2019-11-11 15:49:25 +01:00
67670693e8 explicitly set the type of Blocks to null 2019-11-11 15:46:55 +01:00
6dbc1fe4fb implement visitors for block and braced_block 2019-11-11 11:46:05 +01:00
42ae4c88fb require at least one statement in block 2019-11-11 11:40:17 +01:00
16b8efaa8b delete build artifacts 2019-11-11 11:37:58 +01:00
c26cb6ddf5 add context analysis and custom visitors 2019-11-04 17:35:15 +01:00
bef26434c6 add ignore for antlr generated files 2019-11-04 15:44:20 +01:00
Marvin Kaiser
10bca83b2e Merge branch 'extendable_grammer' into 'master'
More Grammar and Typing System

See merge request mkais001/klang!1
2019-11-04 15:42:33 +01:00
Marvin Kaiser
d14a7d7cbd Added basic typing structure 2019-11-04 15:41:32 +01:00
Marvin Kaiser
8ad114107a removed unnecessary comment 2019-10-29 10:33:24 +01:00
Marvin Kaiser
dfefee8a71 removed "then" from if statement 2019-10-29 10:32:17 +01:00
Marvin Kaiser
d43fa90bc3 Added if statement 2019-10-29 10:30:18 +01:00
Marvin Kaiser
64c41122d0 Rewrote grammar, implemented two visitors 2019-10-29 09:51:43 +01:00
ea248733d0 add launch config to immediately run the code 2019-10-28 22:11:39 +01:00
4e15cdb49e use CharStream instead of ANTLRInputStream 2019-10-28 22:08:39 +01:00
ce39b5cc02 remove obsolete Value class since we currently only use plain-old Integers 2019-10-28 21:53:20 +01:00
13d38a53aa implement new for simplified grammar 2019-10-28 21:52:32 +01:00
a6c732e99c update grammar definition to the example from the lecture 2019-10-28 21:51:50 +01:00
fb10c23c49 remove obsolete visitor implementation 2019-10-28 21:50:58 +01:00
ec89390e4a remove obsolete files 2019-10-28 21:50:27 +01:00
Marvin Kaiser
5bb85af67f updated antlr4 to latest version 2019-10-28 17:06:20 +01:00