Commit Graph

58 Commits

Author SHA1 Message Date
gingerBill
63ab8b2418 Make irGen.output_base use full path rather than relative 2018-03-03 10:23:27 +00:00
gingerBill
d247ba4751 Hexadecimal floats for "perfect values" 0h42f60000 == 123; use bit_cast in compiler 2018-02-25 15:09:16 +00:00
gingerBill
ed2f49e8d2 Remove dead code; Fix issue regarding order of evaluation of function parameters (in C++) depending on the compiler (clang vs gcc vs msvc) 2018-02-04 20:07:05 +00:00
gingerBill
b03ce0e9b4 Modify implicit semicolon rules 2018-01-18 17:28:07 +00:00
gingerBill
386f5f596d Change to HeapAlloc et al on Windows 2018-01-18 13:11:51 +00:00
gingerBill
6b3c4cc379 Remove u128 and i128 2018-01-13 22:26:37 +00:00
gingerBill
cec9f7abfe Add -debug command (still in development) 2017-11-19 15:06:56 +00:00
gingerBill
3e05be8eb8 @(default_calling_convention = ...) for foreign blocks 2017-10-29 18:09:05 +00:00
Ginger Bill
6424966b7a Union tag stored as an integer 2017-10-08 15:16:13 +01:00
Ginger Bill
c1e720a49b match to switch; Optional semicolons after "import" statements 2017-10-01 17:09:57 +01:00
Ginger Bill
3bd762591a Fix path_is_directory for *nix 2017-09-07 21:33:37 +01:00
Ginger Bill
8e3b77aba8 Library collections 2017-09-07 20:55:59 +01:00
Ginger Bill
6c73f9d3fd Global variable dependency initialization ordering
Fuck graph theory
2017-08-20 18:28:21 +01:00
Ginger Bill
ba6ecf35cf Disable threading on *nix for the time being 2017-08-01 15:09:43 +01:00
Ginger Bill
0fae31fb54 Extra type safety; Fix typos 2017-07-31 11:36:00 +01:00
Ginger Bill
2db03cb4a5 Fix aprint* bug; NULL -> nullptr; Better error messages for overloaded functions 2017-07-06 22:43:55 +01:00
Ginger Bill
eed873c6ec Add free for maps (a previous oversight) 2017-07-05 13:51:25 +01:00
Ginger Bill
1d81b73df9 Basic command line flags: e.g. -opt=0 2017-06-24 22:58:50 +01:00
Ginger Bill
bba088bee7 Use UTF-8 command line on windows 2017-06-24 11:42:49 +01:00
Ginger Bill
b2fdb69b4d Named procedure calls 2017-06-11 12:01:40 +01:00
Ginger Bill
5cad7d44a6 Use templated Map for extra type safety 2017-06-08 13:26:48 +01:00
Ginger Bill
2b96be0ae8 Remove unnecessary typedef usage 2017-06-08 13:08:39 +01:00
Ginger Bill
2a89d8021c Use templated Array with bounds checking 2017-06-08 12:54:52 +01:00
Ginger Bill
9b61adb97d Build as C++ 2017-06-08 12:03:40 +01:00
Ginger Bill
4d30ef7eda Change extensions .cpp to .c 2016-11-23 12:29:50 +00:00
Ginger Bill
a77c6b3e55 Compile as C! Whoop! 2016-11-23 12:25:37 +00:00
Ginger Bill
ef8563a818 Remove auto 2016-11-23 12:03:26 +00:00
Ginger Bill
8ecfca0c9b Remove templated Map; replace with #include macro "templates" trick 2016-11-23 10:36:48 +00:00
Ginger Bill
cb7b9a413d Remove Array<T> and replace with macro version 2016-11-22 21:29:57 +00:00
Ginger Bill
3517f96668 Remove: string overloads; defer 2016-11-22 20:29:46 +00:00
Ginger Bill
36ad9dae43 128 bit integers
Kind of works but may be buggy due to LLVM not actually sure
2016-11-22 00:13:52 +00:00
Ginger Bill
09f39ae2cc Better constant strings for SSA; Fix Type_Info 2016-10-26 20:10:32 +01:00
Ginger Bill
a5c1e83ce4 Fix Type_Info bug overwriting type_info data. 2016-10-23 22:50:15 +01:00
Ginger Bill
bd5d095de4 Separate ssa_struct_gep and ssa_array_gep procedures 2016-10-23 14:46:52 +01:00
Ginger Bill
f60dc7b0a7 Minor Style Fixes 2016-10-22 19:41:58 +01:00
Ginger Bill
b705fa7f22 Change from gbArray(T) to Array<T> 2016-10-08 20:37:31 +01:00
Ginger Bill
17ab23f1f0 Const Aggregate Literals for IR; Module path fix 2016-09-30 23:34:32 +01:00
Ginger Bill
c6aac264fa Begin work on const llvm aggregate literals 2016-09-30 20:38:46 +01:00
Ginger Bill
6088cbeddb Fix: double declaration in SSA 2016-09-27 19:47:27 +01:00
Ginger Bill
b593332942 Minimal Dependency Map: Only build what is needed 2016-09-27 15:28:44 +01:00
Ginger Bill
fa7d7938e1 Fix push_* with better defer system 2016-09-23 19:45:45 +01:00
Ginger Bill
a31bab5aae Unicode file loading; push_allocator & push_context 2016-09-23 14:59:58 +01:00
Ginger Bill
3b266b194f enum_to_string fix; enum count, min_value, max_value 2016-09-19 22:26:07 +01:00
Ginger Bill
828095afd1 Better name mangler for SSA generation
TODO: Define better name mangling rules and allow for explicit name overload
2016-09-18 21:44:22 +01:00
Ginger Bill
fa09d805e2 Match statements; Type System change (Type_Record for all sum and product types) 2016-09-01 20:38:44 +01:00
Ginger Bill
d2c64be85c using on struct/union fields 2016-08-24 23:25:56 +01:00
gingerBill
5da6b74567 Compile with odin.exe and no run.bat
This is win32 only and requires CreateProcessA
2016-08-16 12:33:11 +01:00
gingerBill
dcbb2fcfbd Full Unicode Support 2016-08-15 15:02:45 +01:00
gingerBill
3ed75b22a3 string comparisons 2016-08-15 13:46:01 +01:00
gingerBill
19cc77dad3 Code generation for procedure literals 2016-08-11 21:53:44 +01:00