Marvin Kaiser
|
d27df13ec1
|
added boolean operators
|
2020-01-20 16:01:25 +01:00 |
|
|
|
1186bb4550
|
add bool literal
|
2020-01-20 15:26:55 +01:00 |
|
Marvin Kaiser
|
34d0e1bb0e
|
Added cli argument to either generate main method or not
|
2020-01-14 18:37:34 +01:00 |
|
Marvin Kaiser
|
7af6565e07
|
Added more tests for while
|
2020-01-14 12:24:25 +01:00 |
|
Marvin Kaiser
|
3ca9fe4de1
|
Added automatic counting of successes/failures in tests
|
2020-01-14 12:15:20 +01:00 |
|
Marvin Kaiser
|
d2d50f6d4f
|
cleaned up test suit
|
2020-01-14 11:47:04 +01:00 |
|
Marvin Kaiser
|
be43cc9a77
|
implement for loops
|
2020-01-14 11:04:31 +01:00 |
|
Marvin Kaiser
|
1980e1ba8c
|
Move the SCOL for var_assigns and var_decl to the statement rule
|
2020-01-14 10:39:46 +01:00 |
|
Marvin Kaiser
|
f6818b6983
|
fix syntax issues
|
2020-01-14 10:23:12 +01:00 |
|
Marvin Kaiser
|
586c2bb5d9
|
renamed whileLoop to WhileLoop
|
2020-01-14 08:50:45 +01:00 |
|
Marvin Kaiser
|
5eb0679bf3
|
Renamed doWhileLoop to DoWhileLoop
|
2020-01-14 08:48:51 +01:00 |
|
Marvin Kaiser
|
e52ad061f9
|
Implemented do while loops
|
2020-01-13 16:43:38 +01:00 |
|
Marvin Kaiser
|
02e57b7db5
|
Added tests for self-altering expressions
|
2020-01-13 16:17:20 +01:00 |
|
Marvin Kaiser
|
bd4ae1d605
|
Added while loop
|
2020-01-13 16:08:44 +01:00 |
|
Marvin Kaiser
|
079cdf4969
|
Implemented != expression
|
2019-12-20 09:09:01 +01:00 |
|
Marvin Kaiser
|
a79b7c9362
|
Implemented boolean expressions
|
2019-12-20 09:01:03 +01:00 |
|
Marvin Kaiser
|
f341401ccc
|
Implemented pretty printing and evaluating of boolean expressions
|
2019-12-20 08:42:20 +01:00 |
|
Marvin Kaiser
|
00145848da
|
Added classes for boolean expressions
|
2019-12-20 08:41:05 +01:00 |
|
Marvin Kaiser
|
c5419b85c7
|
Extend grammar: added boolean expressions
|
2019-12-20 08:40:17 +01:00 |
|
|
|
d1f8a18bef
|
add missing visit of lhs in a modulo expresion
|
2019-12-19 14:47:26 +01:00 |
|
Marvin Kaiser
|
3f2987074d
|
Fix: Variable Declaration with initialization not correctly pretty printed
|
2019-12-18 10:37:05 +01:00 |
|
Marvin Kaiser
|
9f68e6b8d1
|
Added test for recursive calls
|
2019-12-17 19:09:09 +01:00 |
|
Marvin Kaiser
|
08f486203b
|
Fix: Arguments that don't fit into registeres are passed in the incorrect order
|
2019-12-17 17:22:44 +01:00 |
|
Marvin Kaiser
|
5745062704
|
Fix: Subtraction tests not working. Was: incorrect order of expression evaluation
|
2019-12-17 16:53:20 +01:00 |
|
Marvin Kaiser
|
c8bca94ca8
|
Added tests that check that klang passes parameters to functions in the same way that gcc does it
|
2019-12-17 16:48:09 +01:00 |
|
Marvin Kaiser
|
d3847682d6
|
Fix: Offset calculation for stack parameters
|
2019-12-17 16:45:54 +01:00 |
|
Marvin Kaiser
|
e71ccf1cdc
|
Fix: Additional parameters not pushed onto stack
|
2019-12-17 16:45:32 +01:00 |
|
Marvin Kaiser
|
d4dfe27bc0
|
Added error counting to tests. Tests return ERROR_FAILURE when not all test were successful
|
2019-12-17 16:13:04 +01:00 |
|
Marvin Kaiser
|
086e9dae76
|
Added possibility to select pretty printing / evaluating via argument
|
2019-12-17 15:52:06 +01:00 |
|
Marvin Kaiser
|
59664e73b0
|
Created testsuite and makefile to run testsuite
|
2019-12-17 15:13:31 +01:00 |
|
Marvin Kaiser
|
aaf1c3195d
|
if statement asm generation now omits else labels if no else was defined
|
2019-12-17 15:12:36 +01:00 |
|
Marvin Kaiser
|
bf50587cdb
|
Comment out syso's that print something that's not assembly code
|
2019-12-17 15:10:37 +01:00 |
|
|
|
1c686fb0ea
|
Implement variable declaration
|
2019-12-16 22:41:58 +01:00 |
|
|
|
ee19cb9a00
|
create VariableDeclaration nodes and check if a variable is redeclared or undefined
|
2019-12-16 22:41:45 +01:00 |
|
|
|
b9b36f7ba1
|
Add new node for the variable declaration
|
2019-12-16 22:41:12 +01:00 |
|
|
|
dc7dce48d9
|
add variable deklaration
|
2019-12-16 22:40:33 +01:00 |
|
|
|
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 |
|
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 |
|