Commit Graph
100 Commits
Author SHA1 Message Date
gingerBill 4e2a2ac80a Fix formatting of code 2021-03-10 10:53:30 +00:00
gingerBill 84bb349900 Merge branch 'master' of https://github.com/odin-lang/Odin 2021-03-09 11:40:42 +00:00
gingerBill 3ff7bded64 Add intrinsics.volatile_store and intrinsics.volatile_load 2021-03-09 11:40:36 +00:00
gingerBill 083cec6c88 Remove dead code 2021-03-06 16:11:54 +00:00
gingerBill 45cd5c0b1c Remove test code 2021-03-06 16:11:39 +00:00
gingerBill 572b9d1b3f Fix context bug with deferred_* attributes which caused a new context to be created every time 2021-03-06 16:11:01 +00:00
gingerBill 0ae1b96182 Fix ir_print.cpp i32 line/column values 2021-03-05 15:42:59 +00:00
gingerBill 1988856eed Minimize the size of runtime.Source_Code_Location to use i32 instead of int 2021-03-05 12:56:36 +00:00
gingerBill 15dbc99cb9 Minimize TokenPos size by using i32 for line/column/offset and file_id instead of String
To make `i32` safe, the parser limits the file size of odin files to a maximum of 2GiB (which will be good enough for the vast vast majority of cases)
2021-03-04 16:45:30 +00:00
gingerBill 17eb0ce525 Minor update to math/linalg 2021-03-03 22:18:18 +00:00
gingerBill 619a977856 Improve math/linalg to support both f32 and f64 basic procedures for the specific*.odin files 2021-03-03 16:44:41 +00:00
gingerBill b727b6438b Minimize unneeded casts 2021-03-03 14:31:17 +00:00
gingerBill 75f127af7c Add -vet-extra (checks for unneeded casts and transmutes) 2021-03-03 14:17:48 +00:00
gingerBill c2794b62a9 Clean up logic for << and >> behaviour 2021-03-02 16:48:39 +00:00
gingerBill 4e63ab5edc Re-enable "LLVM Function Pass" 2021-03-02 13:36:57 +00:00
gingerBill 2a1bec9fbb Clean up lb_end_procedure_body logic 2021-03-02 00:43:25 +00:00
gingerBill 6faf024ab4 Remove unneeded return value from incl and excl 2021-03-02 00:40:40 +00:00
gingerBill 35edf45514 Add make_soa and delete_soa; Reorganize soa procedures into a separate file 2021-03-01 18:07:09 +00:00
gingerBill 667aa3671e Fix Addressing for SOA on store; Add intrinsics.type_struct_field_count(T) 2021-03-01 17:54:49 +00:00
gingerBill b428e9ee14 Improve lb_end_procedure_body logic 2021-03-01 15:14:21 +00:00
gingerBill 868117cddd Remove hack in lb_addr_store 2021-03-01 12:59:17 +00:00
gingerBill 9e0210f7f6 Merge branch 'master' of https://github.com/odin-lang/Odin 2021-03-01 12:15:38 +00:00
gingerBill 302742689b Patch win64 ABI problem caused by a bug in LLVM for 128 bit integers 2021-03-01 12:15:28 +00:00
gingerBill 6ffb4d2683 Minor changes to function pass manager in llvm_backend.cpp 2021-02-27 17:47:57 +00:00
gingerBill 4f298a5314 Fix LLVM -opt:2 bug for initializing global variables 2021-02-27 15:54:22 +00:00
gingerBill a2557142cc Update package os for package path/filepath support on macOS 2021-02-27 11:30:43 +00:00
gingerBill fa09640e7e Fix slice.concatenate 2021-02-27 10:58:10 +00:00
gingerBill 1f9a2df42b Fix crash when a forced dependency doesn't exist 2021-02-27 10:57:44 +00:00
gingerBill ee04dde7c2 HACK check_unchecked_bodies further! 2021-02-26 15:34:12 +00:00
gingerBill 88599eeac1 Update build-m1.sh to remove unneeded macro define 2021-02-26 15:29:41 +00:00
gingerBill 54194af71c Fix patch (yeah... I know) 2021-02-26 15:29:10 +00:00
gingerBill 575c7ff031 Patch issue with minimum dependency system and how it interacts with para poly procedures 2021-02-26 15:09:32 +00:00
gingerBill ac155d9036 Merge branch 'master' of https://github.com/odin-lang/Odin 2021-02-26 10:56:40 +00:00
gingerBill d772710ae7 Add message to assert in ir_build_expr_internal 2021-02-26 10:56:32 +00:00
gingerBill d0ac9f605d Merge branch 'master' of https://github.com/odin-lang/Odin 2021-02-25 13:17:07 +00:00
gingerBill 3eae69effc Make USE_NEW_LLVM_ABI_SYSTEM the actual behaviour and remove the previous approach 2021-02-25 13:17:00 +00:00
gingerBill 84deee75cc Make lb_create_enum_attribute ignore certain attributes (they are not properly supported by the actual LLVM C API) 2021-02-25 11:39:46 +00:00
gingerBill 82275082ff Add #force_inline parsing directly to expression statements 2021-02-25 10:01:12 +00:00
gingerBill fc48e9638a Merge branch 'master' of https://github.com/odin-lang/Odin 2021-02-25 09:55:56 +00:00
gingerBill 4a69bfada1 Remove #force_inline for and only have #unroll for 2021-02-25 09:55:48 +00:00
gingerBill 4d13a43590 Enforce -llvm-api on Mac M1 2021-02-25 00:39:44 +00:00
gingerBill b2fdb53e26 fix timings.cpp for M1 2021-02-25 00:39:26 +00:00
gingerBill 58422711d1 Remove sret attribute in llvm_abi.cpp 2021-02-25 00:22:47 +00:00
gingerBill ba817d153c Get compiling on Mac Mini M1 2021-02-24 23:21:34 +00:00
gingerBill 2d88c6c6a5 Begin work on aarch64 ABI for -llvm-api 2021-02-24 16:49:19 +00:00
gingerBill a6fdb5eb5e Add -DUSE_NEW_LLVM_ABI_SYSTEM by default to Windows build for -llvm-api 2021-02-24 16:00:05 +00:00
gingerBill 425bb0579e Default to -microarch:generic 2021-02-24 15:59:31 +00:00
gingerBill 8f9111e552 Build tag to make all declarations within a file private to the package //+private 2021-02-23 20:40:48 +00:00
gingerBill 731e6ca3a6 Merge branch 'master' of https://github.com/odin-lang/Odin 2021-02-23 20:40:09 +00:00
gingerBill 79eb46bce3 Replace inline uses in the rest of core with #force_inline 2021-02-23 20:39:59 +00:00
gingerBill 533dde4648 Add deprecation message for inline and no_inline to use #force_inline and #force_no_inline instead 2021-02-23 16:22:28 +00:00
gingerBill 6988b12012 Replace inline with #force_inline in sys/es/api.odin 2021-02-23 16:15:37 +00:00
gingerBill aa93305015 Replace usage of inline proc with #force_inline proc in the core library 2021-02-23 16:14:47 +00:00
gingerBill 41b854f192 Remove #opaque types 2021-02-23 15:45:06 +00:00
gingerBill 28f279329d Remove bit_field keyword and parsing logic 2021-02-23 15:29:54 +00:00
gingerBill fe33a64b2e Remove #opaque usage in core library 2021-02-23 15:21:05 +00:00
gingerBill f95185a16e Fix new flags 2021-02-23 15:05:03 +00:00
gingerBill 01313eec7f Add flags -ignore-warnings and -warnings-as-errors 2021-02-23 14:59:28 +00:00
gingerBill a1693c0184 Deprecate inline for in favour of #unroll for 2021-02-23 14:45:15 +00:00
gingerBill 657c0ac4f5 Update odin/parser 2021-02-23 14:38:46 +00:00
gingerBill 908a403d78 Add #force_inline, #force_no_inline and #unroll for the transition to deprecate and then remove the keywords inline and no_inline
`inline for` will be replaced with `#unroll for`
2021-02-23 14:37:05 +00:00
gingerBill 28ed310f31 Remove "pure" and "pure_none" calling conventions 2021-02-23 13:10:23 +00:00
gingerBill a652c24ac3 Remove opaque keyboard 2021-02-23 13:02:18 +00:00
gingerBill 595885d3db Remove bit_field in type info, runtime, and general core library 2021-02-19 11:36:23 +00:00
gingerBill efdee0dafb Remove bit_field type from Odin (keyword and dead runtime code still exists) 2021-02-19 11:31:14 +00:00
gingerBill f332cf498d Merge branch 'master' of https://github.com/odin-lang/Odin 2021-02-19 00:05:02 +00:00
gingerBill 6ae619c0a6 Add to package math/bits bitfield_extract and bitfield_insert 2021-02-19 00:04:48 +00:00
gingerBill 5cced38a6e Add kernel32 memory api 2021-02-11 15:31:51 +00:00
gingerBill d5dfa14f18 Clear up fmt.wprint* length logic 2021-02-11 10:44:38 +00:00
gingerBill fa02dc9736 Fix #840 2021-02-11 10:15:58 +00:00
gingerBill 92431c83ec Change default_temp_allocator_proc behaviour to use the default_allocator when the backing data has not been set. 2021-02-09 14:00:59 +00:00
gingerBill f5418837f0 Minor style clean up 2021-02-04 15:02:07 +00:00
gingerBill 825c5a963f Improve fmt's %#v behaviour for nested records 2021-02-04 14:52:23 +00:00
gingerBill f50ea36c70 Fix miscorrect type usage 2021-02-04 14:24:42 +00:00
gingerBill de9b6e3f6e Correct sys/win32 to match sys/windows 2021-02-04 13:50:48 +00:00
gingerBill 415379e1cf Fix delete_map 2021-02-02 16:30:34 +00:00
gingerBill d168c7936e Fix slices of slices in procedures for -llvm-api 2021-01-27 15:56:32 +00:00
gingerBill aed63a6e8b Update package reflect 2021-01-27 15:27:59 +00:00
gingerBill 98521618e6 Merge branch 'master' of https://github.com/odin-lang/Odin 2021-01-27 15:27:45 +00:00
gingerBill e64eb74eef Fix #831 2021-01-27 15:27:38 +00:00
gingerBill 53d8ec4d15 Add extra error checks 2021-01-18 11:34:09 +00:00
gingerBill 2990b3efd5 Fix #825 2021-01-17 11:59:51 +00:00
gingerBill c653e400db Add extra error checking in parser.cpp 2021-01-15 16:15:03 +00:00
gingerBill e884f8c165 Fix typo 2021-01-15 15:46:15 +00:00
gingerBill 3bcccf88d5 vet all core packages 2021-01-09 23:43:34 +00:00
gingerBill 9e8c46b8de Add time.Tick for performance related timings 2021-01-09 01:08:16 +00:00
gingerBill fba4bfb2d5 Minor cleanup of slice/slice.odin code 2021-01-09 00:40:30 +00:00
gingerBill 79432be784 Add the mini ginger* hashes to package hash 2021-01-09 00:33:34 +00:00
gingerBill 56980e51da Update package io 2021-01-09 00:30:10 +00:00
gingerBill 37253f2621 Add encoding/csv Writer 2021-01-09 00:21:47 +00:00
gingerBill da380d6fc4 Add encoding/csv Reader 2021-01-08 23:24:35 +00:00
gingerBill bf183b2c2c Update c/frontend/preprocessor 2021-01-06 11:22:15 +00:00
gingerBill a07d199a48 Add slice.map_keys, slice.map_values, slice.map_entries, slice.map_entry_infos 2021-01-06 11:21:22 +00:00
gingerBill fa0e4c1294 Add -no-entry-point to help 2021-01-04 08:56:42 +00:00
gingerBill 60fe3c9ec6 Remove unused import from doc.odin 2021-01-02 16:50:24 +00:00
gingerBill a6ce417a35 Clean up doc.odin 2021-01-02 16:44:32 +00:00
gingerBill 6523aefdcc Merge branch 'master' of https://github.com/odin-lang/Odin 2021-01-02 16:36:51 +00:00
gingerBill 31c4a9d770 Add packages "core:c/frontend/tokenizer" and "core:c/frontend/preprocessor" 2021-01-02 16:36:43 +00:00
gingerBill 98ad912509 Fix typo 2020-12-27 16:16:04 +00:00
gingerBill 3558848da8 Fix ir_print.cpp for typeid constants 2020-12-17 17:36:59 +00:00