Commit Graph

3400 Commits

Author SHA1 Message Date
gingerBill
7fcd5ecbd5 Change how lb_populate_function_pass_manager works by using the default LLVM passes when not using minimal optimizations 2021-04-22 12:35:01 +01:00
gingerBill
b68b090f13 Add intrinsics: overflow_add, overflow_sub, overflow_mul; Change byte swap behaviour in -llvm-api to be the same as the intrinsic 2021-04-22 11:33:46 +01:00
gingerBill
542098dc6f Add intrinsics: byte_swap (integers and floats); count_ones; trailing_zeros; reverse_bits 2021-04-22 11:06:16 +01:00
gingerBill
0a66f8c9a3 Remove intrinsics.x86_mmx type 2021-04-22 10:39:20 +01:00
gingerBill
158e4c0b6c Add @(cold) tag 2021-04-22 10:35:37 +01:00
gingerBill
47c7dc6a9b Add new intrinsics: debug_trap, trap, read_cycle_counter, expect 2021-04-22 10:35:17 +01:00
gingerBill
65551ba8fb Add optimization_mode attribute for procedures
Allowed modes: "none", "minimal", "size", "speed"
Currently: none == minimal and size == speed
2021-04-22 00:04:47 +01:00
gingerBill
c7d92562c2 Fix typo 2021-04-21 23:40:19 +01:00
gingerBill
5b3802b8ca Add new -o:<string> flag as an alternative to -opt:<integer> 2021-04-21 23:39:48 +01:00
gingerBill
2fb0383e82 Add -build-mode:llvm-ir for -llvm-api backend 2021-04-21 23:25:08 +01:00
gingerBill
8077d5f565 Merge branch 'master' of https://github.com/odin-lang/Odin 2021-04-21 10:52:34 +01:00
gingerBill
6b45856e81 Remove useless error message for constant binary expressions with non-constant operations 2021-04-21 10:52:26 +01:00
gingerBill
28e5df6e7f Merge pull request #907 from awwdev/fix-variable-name-in-path_unix
fix variable name in path_unix
2021-04-20 21:14:25 +01:00
André
22867ec6f0 fix variable name in path_unix
replace the immutable variable "path" (that is a parameter) with a new variable "path_str"
2021-04-20 22:09:10 +02:00
gingerBill
d0a50ff0a3 Merge pull request #905 from jasmcaus/patch-1
Fix potential Typo
2021-04-20 10:44:54 +01:00
gingerBill
e9b1d4f633 Fix #906 2021-04-20 10:34:41 +01:00
gingerBill
ba9f0dd553 Hack ABI for windows passing pointers to structures 2021-04-19 23:03:22 +01:00
gingerBill
c3b3194a00 Update builtin procedures to support the new allocator features (without breaking other code) 2021-04-19 22:44:20 +01:00
gingerBill
201cad51a9 Fix typo 2021-04-19 22:41:52 +01:00
gingerBill
d21e522208 Add code that was accidentally removed 2021-04-19 22:35:59 +01:00
gingerBill
f1bdd2e60f Improve #optional_ok logic for procedures; Add #optional_second for package runtime usage 2021-04-19 22:31:14 +01:00
gingerBill
0eb75886d1 Allow assignment of procedure calls with #optional_ok to single values 2021-04-19 16:02:36 +01:00
gingerBill
3612569624 Allow casting of #optional_ok call expressions 2021-04-19 15:46:12 +01:00
gingerBill
c83d13d0cb Fix update_expr_type behaviour, along with fixing procedure groups updating the proc expr type 2021-04-19 15:12:10 +01:00
gingerBill
f98c4d6837 Improve the Allocator interface to support returning Allocator_Error to allow for safer calls
Virtually all code (except for user-written custom allocators) should work as normal. Extra features will need to be added to make the current procedures support the `Allocator_Error` return value (akin to #optional_ok)
2021-04-19 12:31:31 +01:00
gingerBill
a4d0092b16 Remove temporary reference types 2021-04-19 11:02:09 +01:00
gingerBill
eb49b5f84a Fix override_entity_in_scope behaviour to correctly to report the changes upstream better 2021-04-19 11:01:00 +01:00
Jason Dsouza
9d949ef82e Fix potential Typo : S32 ==> I32 2021-04-19 11:41:02 +05:30
gingerBill
ae04af4e4e Add package flags 2021-04-18 20:19:03 +01:00
gingerBill
3baddd4116 Improve init_string determination for constants 2021-04-18 20:13:20 +01:00
gingerBill
6ae468828c Improve odin-doc type information for Named types by storing the base type 2021-04-18 19:59:24 +01:00
gingerBill
b59e110fec Add calling_convention to Type 2021-04-18 19:26:36 +01:00
gingerBill
4282688e60 Add calling_convention to odin-doc Type format 2021-04-18 19:26:21 +01:00
gingerBill
9b3fb25a41 Fix enumerated arrays for .odin-doc 2021-04-18 19:15:14 +01:00
gingerBill
2ce9873464 Remove dead comment 2021-04-18 18:53:19 +01:00
gingerBill
986844a0f0 Change elem_counts to i64le from u64 2021-04-18 18:48:56 +01:00
gingerBill
7c1f538c02 Change u32 to u32le 2021-04-18 18:46:29 +01:00
gingerBill
2f1c896290 Add -doc-format command for the new .odin-doc file format (to be used to generate documentation tools) 2021-04-18 18:33:15 +01:00
gingerBill
8827818b1d Clean-up fallback io.read_at and io.write_at behaviour 2021-04-14 21:25:46 +01:00
gingerBill
e19958152a Fix floattidf 2021-04-14 20:45:05 +01:00
gingerBill
05a181d719 Fix style issues; Use new attribute @(cold) where appropriate in the new sync package 2021-04-14 20:19:02 +01:00
gingerBill
d24784074c Add extra error to io.Error 2021-04-14 20:17:54 +01:00
gingerBill
cd2476e084 Add buffer_read_at buffer_write_at 2021-04-14 20:13:26 +01:00
gingerBill
ebbc33fdb5 Mockup of the new package os interface (incomplete and non-functioning) 2021-04-14 19:39:12 +01:00
gingerBill
3a4373641b Correct call site attributes 2021-04-14 17:16:10 +01:00
gingerBill
9adec628c1 Add @(cold) attribute to procedure declarations 2021-04-14 17:15:28 +01:00
gingerBill
3e54cddf64 Merge pull request #902 from Kelimion/run_as_user
Add support to core:windows to add/delete users.
2021-04-14 12:15:30 +01:00
gingerBill
d602709133 Fix typo 2021-04-14 12:14:44 +01:00
gingerBill
8e1120bc09 Fix typo 2021-04-13 19:23:12 +01:00
gingerBill
ebed29fc09 Revert *nix thread stuff to old sync
(I was just testing)
2021-04-13 19:09:04 +01:00