Commit Graph

  • d2d50f6d4f cleaned up test suit Marvin Kaiser 2020-01-14 11:47:04 +01:00
  • be43cc9a77 implement for loops Marvin Kaiser 2020-01-14 10:21:04 +01:00
  • 1980e1ba8c Move the SCOL for var_assigns and var_decl to the statement rule Marvin Kaiser 2020-01-14 10:39:46 +01:00
  • f6818b6983 fix syntax issues Marvin Kaiser 2020-01-14 10:23:12 +01:00
  • 586c2bb5d9 renamed whileLoop to WhileLoop Marvin Kaiser 2020-01-14 08:50:45 +01:00
  • 5eb0679bf3 Renamed doWhileLoop to DoWhileLoop Marvin Kaiser 2020-01-14 08:48:51 +01:00
  • e52ad061f9 Implemented do while loops Marvin Kaiser 2020-01-13 16:43:38 +01:00
  • 02e57b7db5 Added tests for self-altering expressions Marvin Kaiser 2020-01-13 16:17:20 +01:00
  • bd4ae1d605 Added while loop Marvin Kaiser 2020-01-13 16:00:42 +01:00
  • 33215a1b4a Merge branch '10-vergleichsoperatoren' into 'master' Marvin Kaiser 2019-12-20 10:02:10 +01:00
  • 079cdf4969 Implemented != expression Marvin Kaiser 2019-12-20 09:09:01 +01:00
  • a79b7c9362 Implemented boolean expressions Marvin Kaiser 2019-12-20 09:01:03 +01:00
  • f341401ccc Implemented pretty printing and evaluating of boolean expressions Marvin Kaiser 2019-12-20 08:42:20 +01:00
  • 00145848da Added classes for boolean expressions Marvin Kaiser 2019-12-20 08:41:05 +01:00
  • c5419b85c7 Extend grammar: added boolean expressions Marvin Kaiser 2019-12-20 08:40:17 +01:00
  • d1f8a18bef add missing visit of lhs in a modulo expresion nitrix 2019-12-19 14:47:26 +01:00
  • c3ad231650 ignore test binary nitrix 2019-12-19 14:46:53 +01:00
  • 3f2987074d Fix: Variable Declaration with initialization not correctly pretty printed Marvin Kaiser 2019-12-18 10:37:05 +01:00
  • 9f68e6b8d1 Added test for recursive calls Marvin Kaiser 2019-12-17 19:09:09 +01:00
  • 2bc3b1898b remove openjdk-13-jdk-headless nitrix 2019-12-17 18:53:12 +01:00
  • 3a9e84aefe fix image name nitrix 2019-12-17 18:46:04 +01:00
  • 5ae34f6587 install openjdk and openjre before executing tests nitrix 2019-12-17 18:42:41 +01:00
  • 7d530263a4 add the target directory as an artifact nitrix 2019-12-17 18:34:28 +01:00
  • 514595baf6 execute apt update before installing build-essential nitrix 2019-12-17 18:19:00 +01:00
  • b8f1017192 use mvn package instead of clean install nitrix 2019-12-17 18:16:34 +01:00
  • e3bfbee80b install build-essentials before executing the tests nitrix 2019-12-17 18:12:05 +01:00
  • ab80f16092 updated gitlab pipeline Marvin Kaiser 2019-12-17 17:47:48 +01:00
  • 9d71927241 updated ci pipeline Marvin Kaiser 2019-12-17 17:43:18 +01:00
  • 6d97ec4b55 added docker tags to ci configuration Marvin Kaiser 2019-12-17 17:36:15 +01:00
  • 6e21697f2e Added gitlab ci configuration Marvin Kaiser 2019-12-17 17:31:17 +01:00
  • 08f486203b Fix: Arguments that don't fit into registeres are passed in the incorrect order Marvin Kaiser 2019-12-17 17:22:44 +01:00
  • 5745062704 Fix: Subtraction tests not working. Was: incorrect order of expression evaluation Marvin Kaiser 2019-12-17 16:53:20 +01:00
  • c8bca94ca8 Added tests that check that klang passes parameters to functions in the same way that gcc does it Marvin Kaiser 2019-12-17 16:47:00 +01:00
  • d3847682d6 Fix: Offset calculation for stack parameters Marvin Kaiser 2019-12-17 16:45:54 +01:00
  • e71ccf1cdc Fix: Additional parameters not pushed onto stack Marvin Kaiser 2019-12-17 16:45:32 +01:00
  • d4dfe27bc0 Added error counting to tests. Tests return ERROR_FAILURE when not all test were successful Marvin Kaiser 2019-12-17 16:13:04 +01:00
  • 3710c1f903 Added rule to evaluate the source code Marvin Kaiser 2019-12-17 15:53:15 +01:00
  • b4b2bceae5 added pretty printing rule to makefile Marvin Kaiser 2019-12-17 15:52:19 +01:00
  • 086e9dae76 Added possibility to select pretty printing / evaluating via argument Marvin Kaiser 2019-12-17 15:52:06 +01:00
  • a01a27bd77 Updated makefile to include functions to run/build the project Marvin Kaiser 2019-12-17 15:47:50 +01:00
  • 59664e73b0 Created testsuite and makefile to run testsuite Marvin Kaiser 2019-12-17 15:13:31 +01:00
  • aaf1c3195d if statement asm generation now omits else labels if no else was defined Marvin Kaiser 2019-12-17 15:12:36 +01:00
  • bf50587cdb Comment out syso's that print something that's not assembly code Marvin Kaiser 2019-12-17 15:10:37 +01:00
  • b022f41bb5 Remove *.k and *.c from gitignore, we need them for tests Marvin Kaiser 2019-12-17 15:10:06 +01:00
  • 12f5ef9121 Merge branch 'feature/variable-declaration' into 'master' Dennis Kaiser 2019-12-16 22:44:12 +01:00
  • 1c686fb0ea Implement variable declaration nitrix 2019-12-16 22:41:58 +01:00
  • ee19cb9a00 create VariableDeclaration nodes and check if a variable is redeclared or undefined nitrix 2019-12-16 22:41:45 +01:00
  • b9b36f7ba1 Add new node for the variable declaration nitrix 2019-12-16 22:41:12 +01:00
  • dc7dce48d9 add variable deklaration nitrix 2019-12-16 22:40:33 +01:00
  • 90f18be80d Merge branch 'feature/nestes-expressions' into 'master' Dennis Kaiser 2019-12-16 21:52:31 +01:00
  • 63c5f70358 add new node types to the visitors nitrix 2019-12-16 21:46:43 +01:00
  • e1eb64f576 use new node types, implement new visitors nitrix 2019-12-16 21:46:18 +01:00
  • 9e5046a20a implement new node types according to the new grammar nitrix 2019-12-16 21:45:55 +01:00
  • 629f67b39c make expressions nestable nitrix 2019-12-16 21:44:37 +01:00
  • de7625750e remove obsolete visitor nitrix 2019-12-16 21:44:01 +01:00
  • 121d5c6fe7 ignore c and out files nitrix 2019-12-16 21:43:28 +01:00
  • fdab293ab4 Merge branch 'master' of gitlab.cs.hs-rm.de:mkais001/klang nitrix 2019-12-16 11:52:18 +01:00
  • 64b88c192c ignore klang sourcecode and assembly files nitrix 2019-12-16 11:52:05 +01:00
  • ecae26c8a7 Fix: offset calculation for function definitions Fix: Jumps / Labels in if statement Marvin Kaiser 2019-12-02 17:13:11 +01:00
  • b7e6567d69 Fixed main function asm code Fixed: IntegerValues not passed via rax Fixed: Some values passed via stack, not via rax Marvin Kaiser 2019-11-26 09:14:44 +01:00
  • 2c2696207f output the generated assembler code nitrix 2019-11-26 08:08:06 +01:00
  • 7d17accad5 implement assembler code generation nitrix 2019-11-26 08:07:43 +01:00
  • 37e4db94f2 Implemented GetVars Visitor Marvin Kaiser 2019-11-25 15:29:22 +01:00
  • 5d62ef1d30 start implement a asm code generator visitor nitrix 2019-11-25 14:45:52 +01:00
  • fda65c7d93 implement return statement nitrix 2019-11-25 14:45:35 +01:00
  • 07ff7b9f06 Implement return statement node nitrix 2019-11-25 14:44:41 +01:00
  • c5dc08c1e0 add return statement to the grammar nitrix 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 nitrix 2019-11-18 18:57:25 +01:00
  • 2af9f369cf implement variable assignment nitrix 2019-11-18 18:54:24 +01:00
  • b38369b7a5 implemented variables and function call evaluation nitrix 2019-11-18 18:02:10 +01:00
  • 13caee0667 Added function call and function definition Marvin Kaiser 2019-11-18 16:39:12 +01:00
  • 9385618252 print and evaluate the source code nitrix 2019-11-12 12:03:59 +01:00
  • 38d34a7cbc implement else if nesting nitrix 2019-11-11 22:27:27 +01:00
  • ea6bde3305 enforce parantheses around the conditional expression of an if statement nitrix 2019-11-11 16:22:43 +01:00
  • 0021e4da60 shortened import statements nitrix 2019-11-11 16:20:08 +01:00
  • d97f84e95f use pretty print visitor nitrix 2019-11-11 15:50:37 +01:00
  • 9fa61ed1a4 implement pretty print visitor nitrix 2019-11-11 15:50:25 +01:00
  • af363c729f add method for visiting blocks nitrix 2019-11-11 15:50:08 +01:00
  • b473a627b0 add stub for visiting block statement nitrix 2019-11-11 15:49:46 +01:00
  • d5639db187 actually implement the visitor nitrix 2019-11-11 15:49:25 +01:00
  • 67670693e8 explicitly set the type of Blocks to null nitrix 2019-11-11 15:46:55 +01:00
  • 6dbc1fe4fb implement visitors for block and braced_block nitrix 2019-11-11 11:46:05 +01:00
  • 42ae4c88fb require at least one statement in block nitrix 2019-11-11 11:40:17 +01:00
  • 16b8efaa8b delete build artifacts nitrix 2019-11-11 11:37:58 +01:00
  • c26cb6ddf5 add context analysis and custom visitors nitrix 2019-11-04 17:35:15 +01:00
  • bef26434c6 add ignore for antlr generated files nitrix 2019-11-04 15:44:20 +01:00
  • 10bca83b2e Merge branch 'extendable_grammer' into 'master' Marvin Kaiser 2019-11-04 15:42:33 +01:00
  • d14a7d7cbd Added basic typing structure Marvin Kaiser 2019-11-04 15:41:32 +01:00
  • 8ad114107a removed unnecessary comment Marvin Kaiser 2019-10-29 10:33:24 +01:00
  • dfefee8a71 removed "then" from if statement Marvin Kaiser 2019-10-29 10:32:17 +01:00
  • d43fa90bc3 Added if statement Marvin Kaiser 2019-10-29 10:30:18 +01:00
  • 64c41122d0 Rewrote grammar, implemented two visitors Marvin Kaiser 2019-10-29 09:51:43 +01:00
  • ea248733d0 add launch config to immediately run the code nitrix 2019-10-28 22:11:39 +01:00
  • 4e15cdb49e use CharStream instead of ANTLRInputStream nitrix 2019-10-28 22:08:39 +01:00
  • ce39b5cc02 remove obsolete Value class since we currently only use plain-old Integers nitrix 2019-10-28 21:53:20 +01:00
  • 13d38a53aa implement new for simplified grammar nitrix 2019-10-28 21:52:32 +01:00
  • a6c732e99c update grammar definition to the example from the lecture nitrix 2019-10-28 21:51:50 +01:00
  • fb10c23c49 remove obsolete visitor implementation nitrix 2019-10-28 21:50:58 +01:00
  • ec89390e4a remove obsolete files nitrix 2019-10-28 21:50:27 +01:00
  • 5bb85af67f updated antlr4 to latest version Marvin Kaiser 2019-10-28 17:06:20 +01:00