Commit Graph

213 Commits

Author SHA1 Message Date
Marvin Kaiser 34d0e1bb0e Added cli argument to either generate main method or not 2020-01-14 18:37:34 +01:00
Marvin Kaiser 5275b63940 added make target to only cleanup the tests. Can be used for quicker test development without having to recompile the klang compiler 2020-01-14 12:25:04 +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 1ceba78059 Updated cicd yaml to work with latest test suite 2020-01-14 11:50:56 +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 33215a1b4a Merge branch '10-vergleichsoperatoren' into 'master'
Resolve "Vergleichsoperatoren"

Closes #10

See merge request mkais001/klang!5
2019-12-20 10:02:10 +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
nitrix d1f8a18bef add missing visit of lhs in a modulo expresion 2019-12-19 14:47:26 +01:00
nitrix c3ad231650 ignore test binary 2019-12-19 14:46:53 +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
nitrix 2bc3b1898b remove openjdk-13-jdk-headless 2019-12-17 18:53:12 +01:00
nitrix 3a9e84aefe fix image name 2019-12-17 18:46:04 +01:00
nitrix 5ae34f6587 install openjdk and openjre before executing tests 2019-12-17 18:42:41 +01:00
nitrix 7d530263a4 add the target directory as an artifact 2019-12-17 18:34:28 +01:00
nitrix 514595baf6 execute apt update before installing build-essential 2019-12-17 18:19:00 +01:00
nitrix b8f1017192 use mvn package instead of clean install 2019-12-17 18:16:34 +01:00
nitrix e3bfbee80b install build-essentials before executing the tests 2019-12-17 18:12:05 +01:00
Marvin Kaiser ab80f16092 updated gitlab pipeline 2019-12-17 17:47:48 +01:00
Marvin Kaiser 9d71927241 updated ci pipeline 2019-12-17 17:43:18 +01:00
Marvin Kaiser 6d97ec4b55 added docker tags to ci configuration 2019-12-17 17:36:15 +01:00
Marvin Kaiser 6e21697f2e Added gitlab ci configuration 2019-12-17 17:31:17 +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 3710c1f903 Added rule to evaluate the source code 2019-12-17 15:53:15 +01:00
Marvin Kaiser b4b2bceae5 added pretty printing rule to makefile 2019-12-17 15:52:19 +01:00
Marvin Kaiser 086e9dae76 Added possibility to select pretty printing / evaluating via argument 2019-12-17 15:52:06 +01:00
Marvin Kaiser a01a27bd77 Updated makefile to include functions to run/build the project 2019-12-17 15:47:50 +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
Marvin Kaiser b022f41bb5 Remove *.k and *.c from gitignore, we need them for tests 2019-12-17 15:10:06 +01:00
Dennis Kaiser 12f5ef9121 Merge branch 'feature/variable-declaration' into 'master'
Feature/variable declaration

See merge request mkais001/klang!3
2019-12-16 22:44:12 +01:00