Commit Graph

1693 Commits

Author SHA1 Message Date
gingerBill
8ee67e41f4 Fix #optional_ok; Fix container.Array 2020-04-19 23:08:50 +01:00
gingerBill
97f7a558fa #optional_ok tag for procedures 2020-04-19 21:45:04 +01:00
gingerBill
aa620e8ea1 Fix Procedure value printing in ir.cpp 2020-04-17 16:20:50 +01:00
gingerBill
92402603b9 Change find_or_generator_context_ptr behaviours 2020-04-17 14:02:45 +01:00
gingerBill
4438b3e7af Fix LLVM API backend for procedure "constant" values 2020-04-17 13:50:28 +01:00
gingerBill
602a651613 Fix name mangling for @(private) entities 2020-04-15 21:58:16 +01:00
gingerBill
f229084baa Basic polymorphic named procedure parameters for procedures and records 2020-04-13 15:48:56 +01:00
gingerBill
f09b6a4c90 Simplify compiler's Map and create a StringMap specifically for strings 2020-04-13 13:02:30 +01:00
gingerBill
65a2125dba Add -build-mode=obj 2020-04-13 12:00:40 +01:00
gingerBill
9e698b720f Change behaviour for zero-sized value types of array-related types; Fix make behaviour to always zero memory 2020-04-12 10:41:44 +01:00
gingerBill
5157619eb7 Support endian specific float on -llvm-api; fix unary - for endian floats 2020-04-11 21:51:43 +01:00
gingerBill
90593fe6ae Endian specific floating point types (e.g. f32be) 2020-04-11 21:34:55 +01:00
gingerBill
a736d0e83f Fix @force on non-windows platforms 2020-04-11 19:40:01 +01:00
gingerBill
7ba339e6bd Fix link_name for variables 2020-04-11 19:34:29 +01:00
gingerBill
baf5b9edc3 Add runtime.bswap_* required for -llvm-api 2020-04-11 19:26:16 +01:00
gingerBill
62dc99dbef Begin to make the -llvm-api more general 2020-04-10 19:52:17 +01:00
gingerBill
29a3cb25d3 Add extra guards for window-only performance checking 2020-04-07 11:47:28 +01:00
gingerBill
7ff690500a Fix psapi.h to be windows only 2020-04-07 11:41:55 +01:00
gingerBill
d0b913dad1 Add extra internal memory analysis 2020-04-06 12:17:54 +01:00
gingerBill
d659e679fd Fix defer after return for -llvm-api 2020-04-06 12:17:27 +01:00
gingerBill
ae97c1111a Fix -llvm-api for typeid comparison with a Type itself 2020-04-06 11:38:53 +01:00
gingerBill
f38d7b02f3 Fix phi node check with untyped types 2020-04-05 14:20:26 +01:00
gingerBill
5e706bab56 Fix typeid comparison bug in ir.cpp 2020-04-04 21:23:11 +01:00
gingerBill
b362ce9a22 Fix selector expressions for map[unknown-key] expressions for -llvm-api 2020-04-04 20:56:56 +01:00
gingerBill
b54b5aabac Fix crash on aliasing compiler-only packages (e.g. intrinsics) with _ at the global scope. 2020-04-04 19:45:54 +01:00
Kevin Watters
957e6f7f08 Add a missing space after /LIBPATH linker options. 2020-03-28 21:05:32 -04:00
gingerBill
1b3ee7153c Fix #599 - llvm-api GEP for structs with custom alignment 2020-03-28 16:08:14 +00:00
gingerBill
6d6f8f8da9 LLVM API fixes: for in ^map; complex/quaternion negation 2020-03-28 15:42:46 +00:00
gingerBill
b98a4c6d69 Fix #597 2020-03-27 13:33:31 +00:00
gingerBill
4be385d648 Add more helpers to package reflect 2020-03-27 13:30:22 +00:00
gingerBill
b21993a1c4 Allow ability to reference compound literals like C99 for -llvm-api 2020-03-26 17:33:54 +00:00
gingerBill
dd69fcba07 Merge branch 'master' into llvm-integration 2020-03-26 15:56:55 +00:00
gingerBill
7909872877 Allow referencing a compound literal to act like C99 2020-03-26 15:56:08 +00:00
gingerBill
0a920b5439 Fix map references in selector expressions 2020-03-25 15:55:00 +00:00
gingerBill
921ee82c97 Fix range statements for enumerated arrays without an element value but with an index 2020-03-25 15:11:35 +00:00
gingerBill
b7893082ce Allow map indices to be referenced &m[key] and return a valid pointer if it exists otherwise nil 2020-03-24 15:51:17 +00:00
gingerBill
6bfe9b6656 Merge branch 'master' into llvm-integration 2020-03-24 15:48:57 +00:00
gingerBill
da703edbf4 Allow map indices to be referenced &m[key] and return a valid pointer if it exists otherwise nil 2020-03-24 15:48:31 +00:00
gingerBill
796331fea6 Support by-reference semantics in for value_ref, i in &some_array and for key, value_ref in &some_map 2020-03-24 15:33:34 +00:00
gingerBill
820095ddac Merge branch 'master' into llvm-integration 2020-03-24 15:29:44 +00:00
gingerBill
d57fbf48f0 Support by-reference semantics in for value_ref, index in &some_array and for key, value_ref in &some_map 2020-03-24 15:28:58 +00:00
gingerBill
53c842e9ba Change to new by-reference semantics for switch v in &value 2020-03-24 14:43:28 +00:00
gingerBill
1e375ba8de Merge branch 'master' into llvm-integration 2020-03-24 14:31:09 +00:00
gingerBill
5cbb266ef5 Change behaviour of switch v in &value to make v have by-reference semantics 2020-03-24 14:29:54 +00:00
gingerBill
0730e01b24 Merge branch 'master' into llvm-integration 2020-03-22 20:57:04 +00:00
gingerBill
dfc63dcb60 Fix for in for pointer to map expressions 2020-03-22 20:56:46 +00:00
gingerBill
8093062e3b Wrap all LLVM C includes 2020-03-19 15:36:13 +00:00
gingerBill
ed4d21045b Add LLVM_BACKEND_SUPPORT macro to make the backend optional 2020-03-19 15:14:31 +00:00
gingerBill
93955a0fd8 Remove context.std* parameters; Fix unary boolean not 2020-03-19 15:03:02 +00:00
gingerBill
fc0002ab67 Fix enum type info generation 2020-03-19 12:28:39 +00:00