Commit Graph

2476 Commits

Author SHA1 Message Date
gingerBill bf5ce04b24 Improve rules for shifting behaviour
Example:
x: u64 = 123;
assert(x >> 64 == 0); // In C this would be 123 because (64 & 0b111111) == 0

a: u64 123;
assert(a << 64 == 0); // In C this would be 123 because (64 & 0b111111) == 0
2020-05-31 13:50:17 +01:00
gingerBill 8057af9e09 Fix #659 Compiler error when indexing constant slices 2020-05-31 12:20:47 +01:00
gingerBill d8bc2030e6 Fix big_int_to_f64 2020-05-30 16:45:49 +01:00
gingerBill 5eaef091e2 Update math/bits 2020-05-30 12:24:00 +01:00
gingerBill 84fd40de77 Fix rules for recursive initialization with procedure entities; Fix executable name if not given 2020-05-30 12:23:41 +01:00
gingerBill 1d7f99cbdf Remove mem_zero from make; Implement custom memset for windows amd64 2020-05-27 20:17:58 +01:00
gingerBill 3d4a3730b0 Add notin deprecation 2020-05-27 18:47:45 +01:00
gingerBill 1f31d573e4 Fix tokenization 2020-05-27 18:43:02 +01:00
gingerBill 237962182b Fix tokenizing for %% 2020-05-27 18:41:10 +01:00
gingerBill e84406a895 Move zero_size 2020-05-27 18:26:20 +01:00
gingerBill 1a0614b0d7 Improve performance of tokenization and parsing 2020-05-27 18:23:37 +01:00
gingerBill 876820789e Add rune_is_letter_or_digit for tokenizer 2020-05-27 12:54:11 +01:00
gingerBill 4e21a4d46a Optimize rune_is_* procedures for tokenizer 2020-05-27 12:43:49 +01:00
gingerBill 6ac0fb80a6 Minor tokenizer performance improvements 2020-05-27 12:32:11 +01:00
gingerBill 098699103d Begin work on supporting wasm32 architecture 2020-05-25 12:46:23 +01:00
gingerBill d6bcc25b69 Fix tokenizer for 0i #658 2020-05-24 21:43:36 +01:00
gingerBill a2c50d3666 Fix -vet for strings 2020-05-24 17:57:55 +01:00
gingerBill f06efffe22 Update strings case convertors to be unicode compliant 2020-05-24 17:50:27 +01:00
gingerBill e42f7008fc Change spaces to tabs 2020-05-24 16:40:48 +01:00
gingerBill 26c9d17040 Merge branch 'master' of https://github.com/odin-lang/Odin 2020-05-24 12:52:19 +01:00
gingerBill 2be87169ef Fix #656 2020-05-24 12:52:08 +01:00
Mikkel Hjortshøj 732c745bb3 Merge pull request #655 from ThisDrunkDane/master
Add case conversions by @dotbmp
2020-05-24 12:52:38 +02:00
Mikkel Hjortshoej c035fc337f Add case conversions by @dotbmp 2020-05-24 12:47:43 +02:00
gingerBill cbfbff7240 Add intrinsics.type_is_comparable; Add sort.linear_search 2020-05-23 14:02:21 +01:00
gingerBill 99e6eba20f Revert demo.odin 2020-05-23 13:57:45 +01:00
gingerBill 7d11ee605c Add sort.binary_search (uses interpolation sort for ordered numeric types) 2020-05-23 13:57:24 +01:00
gingerBill 4671207c61 Make the using import deprecation warning an error 2020-05-23 13:39:18 +01:00
gingerBill aa029fe8d9 Add "pure" procedure types 2020-05-23 13:38:06 +01:00
gingerBill ef539696b9 Strip carriage return \r from raw string literals 2020-05-23 11:39:29 +01:00
gingerBill 26fe9b0212 Fix SelectorCallExpr with no return values 2020-05-22 23:41:17 +01:00
gingerBill fd6e2ed5de Revert demo.odin 2020-05-22 14:56:32 +01:00
gingerBill 7bd1039a49 Selector Call Expressions: x->y(123) == x.y(x, 123) 2020-05-22 14:54:30 +01:00
gingerBill 76a230372f Merge branch 'master' of https://github.com/odin-lang/Odin 2020-05-22 12:32:36 +01:00
gingerBill 86b613fb15 Remove the need for type_of, size_of, align_of, offset_of to be keywords 2020-05-22 12:32:29 +01:00
gingerBill aacf524a47 Merge pull request #653 from lkppo/master
Fix the shebang portability of the build.sh script
2020-05-22 10:35:49 +01:00
Stéphane Aulery 8ad3a1f41f Fix the shebang portability of the build.sh script 2020-05-22 11:28:17 +02:00
gingerBill d09ac8943a Minor fixes to improve hash map/set performance 2020-05-21 16:27:40 +01:00
gingerBill 8e63c94393 Add string.h 2020-05-21 11:10:03 +01:00
gingerBill 0b16ed7c85 Use memcmp for str_eq 2020-05-21 11:05:38 +01:00
gingerBill 89d824216a Add extra information to -show-more-timings 2020-05-21 09:30:15 +01:00
gingerBill 3f23a0b3b0 Fix edge cases of relative pointers 2020-05-17 15:23:27 +01:00
gingerBill 7819fec0a1 Merge pull request #645 from Tetralux/llvm-noabc-obey-directive
LLVM C backend: Obey directives on blocks, procedures, and expressions
2020-05-16 18:15:25 +01:00
Tetralux 96ed948590 LLVM C backend: Obey directives on blocks, procedures, and expressions
e.g: #no_bounds_check / #bounds_check
2020-05-16 17:04:16 +00:00
gingerBill 3bd01d3a02 Merge pull request #644 from Tetralux/llvm-bounds-checks
Add bounds checks to LLVM C backend
2020-05-16 15:32:15 +01:00
Tetralux c4b492fb64 Add bounds checks to LLVM C backend 2020-05-16 14:25:36 +00:00
gingerBill e1bdaa981a Relative pointer and relative slices 2020-05-15 18:45:24 +01:00
gingerBill 95e8668b77 Relative pointers in old backend 2020-05-15 17:52:09 +01:00
gingerBill 90adf214d7 Merge branch 'master' of https://github.com/odin-lang/Odin 2020-05-15 17:37:14 +01:00
gingerBill ff92eb9112 Relative pointers 2020-05-15 17:37:00 +01:00
gingerBill 5f08c77d8b Merge pull request #641 from Tetralux/fix-container-arraypushelems
Fix container.Array.array_push_back_elems
2020-05-15 08:49:26 +01:00