Commit Graph

397 Commits

Author SHA1 Message Date
gingerBill
ec9667ef5a Remove debug code 2021-07-10 17:11:54 +01:00
gingerBill
9f7154a039 Prepare for multithreading the semantic checker by giving mutexes to variables of contention
NOTE(bill): I know this is dodgy, but I want to make sure it is correct logic before improve those data structures
2021-07-10 15:14:25 +01:00
gingerBill
4a932616fc Improve CheckerContext usage 2021-07-10 13:02:13 +01:00
gingerBill
73fe36f19c Remove dead variable 2021-07-10 11:59:41 +01:00
gingerBill
e692efbe09 Improve update expr type semantics for ternary expressions 2021-07-10 11:08:51 +01:00
gingerBill
31f1e0aeae Fix #1019 2021-06-15 01:13:16 +01:00
gingerBill
8e62f9c83c Correct is_operand_value for Swizzle addressing modes 2021-06-08 14:23:44 +01:00
gingerBill
84b851f578 Add warning to variables which may overflow the stack on declaration; #Fix 661 2021-06-06 12:42:39 +01:00
gingerBill
785c27daa7 Fix 128-bit integer to float cast by explicitly calling the procedure direct; Fix #781 2021-06-06 12:35:38 +01:00
gingerBill
3bf00e6125 Comment on the required generate_minimum_dependency_set entities 2021-05-31 20:50:21 +01:00
gingerBill
8fd4fe25d6 Remove unneeded minimum dependencies 2021-05-31 20:44:48 +01:00
gingerBill
4d80f8598d Fix polymorphic record "too few" lacking error message 2021-05-31 20:33:14 +01:00
gingerBill
c440296ae8 Add @(link_section=<string>) for global variables 2021-05-24 15:41:22 +01:00
gingerBill
7b7081d607 Remove old dead code 2021-05-15 18:59:54 +01:00
gingerBill
d70b5475eb Minor code clean up 2021-05-07 13:18:01 +01:00
gingerBill
3a556eb304 Add -test-name:<string> flag to allow specific tests to be ran 2021-05-03 15:44:57 +01:00
gingerBill
102c29575b Allow @(test) to be ran outside of *_test.odin files 2021-04-28 10:49:40 +01:00
gingerBill
e7e1866e50 Fix #893 2021-04-27 13:09:37 +01:00
gingerBill
a38586420c Fix race condition with procedure aliases checking for declarations on constant aliases 2021-04-26 19:46:42 +01:00
gingerBill
43b55223af Merge branch 'master' into old-backend-removal 2021-04-26 11:46:58 +01:00
gingerBill
8d0428a8b3 Merge pull request #915 from wilsonk/issue-820
Fix for issue 720 (import name is not an identifier)
2021-04-26 10:50:06 +01:00
Kelly Wilson
86c1aed20d Fix for issue 820 (import name is not an identifier) 2021-04-25 23:26:12 -06:00
gingerBill
cb2e6ea31d Remove use_llvm_api related checks and other related things 2021-04-25 20:03:05 +01:00
gingerBill
6383714bff Remove old procedure ABI code 2021-04-25 19:56:46 +01:00
gingerBill
c9b82a21e9 Move check_builtin_procedure to check_builtin.cpp 2021-04-23 10:01:52 +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
0a66f8c9a3 Remove intrinsics.x86_mmx type 2021-04-22 10:39:20 +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
eb49b5f84a Fix override_entity_in_scope behaviour to correctly to report the changes upstream better 2021-04-19 11:01:00 +01:00
gingerBill
9adec628c1 Add @(cold) attribute to procedure declarations 2021-04-14 17:15:28 +01:00
gingerBill
19470683e7 Add runtime.extendhfsf2 to dependency list 2021-04-05 18:57:09 +01:00
gingerBill
b3e788b9d9 Fix missing complex32/quaternion64 checks 2021-04-01 10:56:57 +01:00
gingerBill
54e6c50769 Implement f16 functionality 2021-04-01 10:06:00 +01:00
gingerBill
b94ab4dc05 Make check_single_global_entity use create_checker_context 2021-03-15 14:05:38 +00:00
gingerBill
f5142aaec4 Change from test_* prefix to @(test) attribute for odin test 2021-03-14 18:43:21 +00:00
gingerBill
2aa588209e odin test to work with the new core:testing package 2021-03-14 18:01:31 +00:00
Jose Luis Rey Mendez
4e8ec4ce38 Fix nullref access violation when building with no entry point 2021-03-06 20:02:16 -03: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
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
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
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
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
e64eb74eef Fix #831 2021-01-27 15:27:38 +00:00
gingerBill
2990b3efd5 Fix #825 2021-01-17 11:59:51 +00:00
gingerBill
05a3bdad58 Allow nested procedures to access @(static) and @(thread_local) variables 2020-12-04 11:28:14 +00:00
gingerBill
97c66c9c73 Add intrinsics.type_hasher_proc; Make map work with generic hasher procedure 2020-11-29 15:27:53 +00:00