Commit Graph

54 Commits

Author SHA1 Message Date
gingerBill
ff92eb9112 Relative pointers 2020-05-15 17:37:00 +01:00
gingerBill
8b066b2456 Fix runtime.memset issue 2020-05-14 17:56:24 +01:00
gingerBill
e0a242e9a1 Enforce explicit context definition for procedure calls 2020-05-14 13:44:28 +01:00
gingerBill
f6c7a0c9b8 Fix -llvm-api memset "bug" 2020-05-13 23:51:51 +01:00
gingerBill
4236e870d7 Fix type assertion bug #619 2020-04-21 23:26:02 +01:00
gingerBill
90593fe6ae Endian specific floating point types (e.g. f32be) 2020-04-11 21:34:55 +01:00
gingerBill
baf5b9edc3 Add runtime.bswap_* required for -llvm-api 2020-04-11 19:26:16 +01:00
gingerBill
d4e95282c2 Fix llvm.memset for both backends 2020-03-08 18:42:30 +00:00
gingerBill
28502ba53b Fix context system; add more to -show-more-timings for LLVM API; Add ODIN_USE_LLVM_API global constant 2020-03-08 12:34:36 +00:00
gingerBill
db7a3ffd2a Merge branch 'master' into llvm-integration 2020-03-05 21:12:16 +00:00
gingerBill
e92fdb4a99 x if cond else y and x when cond else y expressions 2020-03-05 20:34:30 +00:00
gingerBill
2180f4a475 Basic work on obj generation 2020-02-23 10:04:25 +00:00
gingerBill
ab52f8d795 Move definition of mem.Allocator and log.Logger to package runtime, to reduce import cycle magic 2019-12-31 12:15:19 +00:00
gingerBill
10f0961184 Enumerated arrays [Enum_Type]Elem_Type 2019-12-27 12:51:02 +00:00
Patric Dexheimer
ff0bc3ccad minor details ;) 2019-12-24 11:50:26 -03:00
gingerBill
5b1312342e Fix runtime.mem_copy_non_overlapping to be like C's memcpy 2019-12-24 08:07:43 +00:00
gingerBill
d1c9fd4e01 Implement #complete switch by default, replace with #partial switch #511 2019-12-22 12:03:48 +00:00
gingerBill
58d4d424c6 Replace #vector[N]T with #simd[N]T to reduce confusion #498 2019-12-15 11:30:09 +00:00
gingerBill
9db81498d8 Make the string type elements "immutable", akin to char const * in C
Allows for extra security and optimization benefits
2019-12-01 14:10:59 +00:00
gingerBill
44e0e96612 Prepare SOA Struct code for slices and dynamic arrays *to be implemented* 2019-11-19 23:54:36 +00:00
gingerBill
d22e5b697d Add new #soa and #vector syntax 2019-11-17 10:30:37 -08:00
gingerBill
40546fbde2 Use runtime.mem_copy in package me 2019-11-03 19:59:41 +00:00
gingerBill
fe5c642d9f Fix runtime.cstring_len 2019-10-29 08:47:05 +00:00
gingerBill
7140f42915 Modify runtime to reduce dependencies on other packages 2019-10-23 21:43:13 +01:00
gingerBill
7bc146e6fd Built-in Quaternions (Not just an April Fool's Joke any more) 2019-08-26 11:33:05 +01:00
gingerBill
65d41d4248 Fix bit_field comparison against nil #414 2019-08-09 20:31:11 +01:00
gingerBill
77734ea967 Improve the performance of simple array comparisons 2019-07-27 11:59:50 +01:00
gingerBill
f25818e923 Make procedure parameters just named values rather than copied variables 2019-07-15 21:18:37 +01:00
gingerBill
b38a8cfb12 Move internal 128-bit stuff to a windows specific file 2019-06-01 12:26:54 +01:00
gingerBill
c40acd008e Add i128/u128 support for bit sets 2019-05-28 20:53:56 +01:00
gingerBill
3d2279fba0 Support 128-bit integers i128 u128 2019-05-28 20:27:45 +01:00
gingerBill
1354f53d02 Remove derived from context; Fix parsing issue for typeid specializations in record parameters; Fix runtime printing of types 2019-03-31 11:58:54 +01:00
gingerBill
a9b20c29b1 Fix slicing issue; Change path of math/bits in package json #363 2019-03-30 10:17:31 +00:00
gingerBill
1fd677b42e Remove *_remove from demo and use built-in versions 2019-03-25 21:29:21 +00:00
gingerBill
9e6d488063 Modify slice_expr_error_* logic to change depending on which parameters are passed 2019-03-25 21:20:12 +00:00
gingerBill
c785c3569f Fix runtime.*_expr_error error 2019-03-25 20:42:47 +00:00
gingerBill
5acea1bceb Source_Code_Location.hash; %#v printing for Source_Code_Location; allow typeid for map keys 2019-01-05 15:56:47 +00:00
gingerBill
e5f188241c Move error handling for bounds checking into separate procedures (eliminate caching issues) 2018-12-31 11:41:56 +00:00
gingerBill
8662df2b7f Update package strings 2018-12-26 19:33:56 +00:00
gingerBill
e496b95881 Subset and superset operators for bit_set: < <= > >= 2018-11-25 16:19:17 +00:00
gingerBill
73e9dbbf8c switch on typeid with type cases 2018-10-13 11:07:56 +01:00
gingerBill
0971a59493 Update runtime printing code 2018-10-11 18:19:29 +01:00
gingerBill
1a4e25f141 Prefix runtime procedures 2018-09-29 21:09:19 +01:00
gingerBill
5bdb424c6b context.allocator = a; Remove __ from runtime procs; improve division for complex numbers 2018-09-15 10:14:24 +01:00
gingerBill
220485a2d2 typeid as keyword (ready to implement polymorphic name parameters) 2018-09-02 15:56:36 +01:00
gingerBill
a65eadee63 Fix for in enum iteration 2018-08-22 18:56:41 +01:00
gingerBill
877a78d6ba Fix make error messages 2018-08-08 23:07:51 +01:00
gingerBill
3a1a7b40f9 Add runtime messages for make for the len/cap parameters 2018-08-08 13:04:40 +01:00
gingerBill
0718f14774 Reduce number of range and slice operators #239
Replace .. and ... with : and ..
2018-08-01 21:34:59 +01:00
gingerBill
0e91298fd1 Rename free to delete for non pointer types 2018-07-08 11:03:56 +01:00