Commit Graph

28 Commits

Author SHA1 Message Date
Nathan Braswell
19e97113f1 Accidentally messed up bootstrapping by returning a long in a function with return type int, which was an error in earlier versions of kraken, but the type check got removed during one of the simplifications, so would error when bootstrapping. Really, this should still be an error - I will try to fix this tonight. To make the boostrap process work, though, I've added an extra bootstrapping stage that builds the version without the return type check along the way. 2018-03-08 09:48:48 -05:00
Nathan Braswell
8da84b56c2 working bytecode with call and a real stack and psudo abi. Found a bug where -= doesn't behave correctly when the lhs is a function returning a reference because it's lowered to a = a - b where a is the same ast_node, I think 2018-03-07 01:58:19 -05:00
Nathan Braswell
61feff50a8 Update captain.sh to be able to build the new function_value_lower version 2017-08-16 01:23:17 -04:00
Nathan Braswell
2a53d5539d Modify captain.sh to use /usr/bin/env bash 2016-11-23 23:57:01 +00:00
Nathan Braswell
c633cb5b04 CTCE Pass first implementation, but it's very slow. 2016-07-09 15:33:15 -07:00
Nathan Braswell
a5deef8c30 Transitioned to using CTCE for Kraken compile information 2016-07-06 00:22:33 -07:00
Nathan Braswell
067c72f77c Finish transition to the new #link syntax 2016-07-03 22:53:05 -07:00
Nathan Braswell
9de3e07715 forgot to add a dependency in captain.sh 2016-06-24 01:45:10 -07:00
Nathan Braswell
59f5c6f667 found segfault member 2016-06-17 01:01:59 -04:00
Nathan Braswell
d44293a48b Defer is now lowered in its own pass as a first step towards refactoring other things into their own passes as well 2016-06-15 01:36:59 -07:00
Nathan Braswell
26b5070242 Whoops, had to add a hotfix to captain.sh. The ext var commit needed it's own grammer 2016-05-22 15:09:45 -07:00
Nathan Braswell
ce2eff42a6 Moved over compiler information printing and error to use stderr, enabled interpreter testing in tester. The interpreter passes 34/74 tests 2016-05-22 14:10:19 -07:00
Nathan Braswell
cf8090f825 Moved c stdlib variadic functions over to use ... 2016-05-19 23:34:29 -07:00
Nathan Braswell
e63b7cf770 Enough interpreter to do math on constant integers 2016-05-13 03:10:36 -04:00
Nathan Braswell
91bc03ccb8 Fixed off by one error in captain.sh bootstrapping 2016-05-12 23:59:13 -04:00
Nathan Braswell
88f922f67b Added caching to captain.sh 2016-05-10 14:05:12 -04:00
Nathan Braswell
7aa1d9983b Some bugfixes/added errors, convert most to not use simple_passthrough 2016-04-30 15:38:28 -04:00
Nathan Braswell
d126cbf24b Added short/long and unsigned types for all int based types 2016-04-29 16:19:23 -04:00
Nathan Braswell
914fc57c13 Change over everything to sizeof intrinsic 2016-04-28 19:22:23 -04:00
Nathan Braswell
b52d38f648 Added in version numbers/hashes pulled from git - captain.sh generates at build time compiler_version.krak to be imported by kraken.main 2016-04-27 15:59:28 -04:00
Nathan Braswell
bfc3b72b00 Implement a hash_map and swap gss over to use it, making self-compilation 10 seconds faster on my laptop. captain.sh has been extended with the ability to bootstrap over any number of git commits. 2016-04-22 02:58:14 -04:00
Collin Richards
ee847eb866 Fix captain.sh bootstrap installation
Trying to copy a file that didn't exist yet caused
the script to break when running it the first time.
2016-04-19 20:35:22 -04:00
Nathan Braswell
8d0996fb47 Added in bitwise operators 2016-04-19 18:39:01 -04:00
Nathan Braswell
0961636ab0 Fix syntax problem in captain.sh 2016-04-19 12:49:08 -04:00
Nathan Braswell
04d2af4168 Bugfixes, remove the cast_ptr function 2016-04-19 06:04:22 -04:00
Nathan Braswell
730e1a58ed Fix so defer defer / defer {} works. Note - defer defer almost definitly doesn't work the way you think it will 2016-04-13 21:45:21 -04:00
Nathan Braswell
09158cd2b9 Fix vector out of bounds access for parser, ast_transformation, and c_generator, remove many printlns in prep for better error handling, add features to captian.sh to facillitate development 2016-03-30 16:13:10 -04:00
Nathan Braswell
8c18e00aa7 spelling 2016-03-29 13:29:49 -04:00