Commit Graph

455 Commits

Author SHA1 Message Date
gingerBill
fb8fa5217d Begin minimize Type size by replacing Array with Slice etc 2021-09-13 00:58:39 +01:00
gingerBill
582559f7ac Correct did you mean logic and make thread-safe-er 2021-08-27 11:18:38 +01:00
gingerBill
6d49df1d87 Don't use the thread pool if worker count is 0 2021-08-26 21:40:54 +01:00
gingerBill
ac191bd31f Simplify logic for -thread-count:1 2021-08-26 21:30:23 +01:00
gingerBill
ad3a3547d6 Unify thread pool logic across the rest of the compiler, using a global thread pool 2021-08-26 21:22:30 +01:00
gingerBill
382ca20916 Correct procedure checking flag handling, and correct the (bodge) handle of unchecked procedure bodies 2021-08-23 19:24:53 +01:00
gingerBill
6a77fc4cdd Add multi-pointer types [^]T 2021-08-21 23:10:21 +01:00
gingerBill
fa4f3aa7ad Correct atomic usage 2021-08-19 17:51:19 +01:00
gingerBill
38841dd46e Fix race condition from add_entity_use due to Entity.identifier 2021-08-19 17:38:18 +01:00
gingerBill
df372dbd5b Migrate and remove more from gb.h 2021-08-19 15:38:21 +01:00
gingerBill
5c4d95d539 Move more of gb.h's Synchronization code into common.cpp 2021-08-19 15:19:36 +01:00
gingerBill
7845769d4b Remove unused code 2021-08-19 15:03:10 +01:00
gingerBill
54af47a138 Remove useless code 2021-08-18 23:38:06 +01:00
gingerBill
b84ee3ab8f Fix odin test not executing any tests 2021-08-18 23:33:27 +01:00
gingerBill
a01c946c20 Add mutex to Scope lookups and insertions 2021-08-18 11:17:14 +01:00
gingerBill
cdb3a5205c Add mutex for add_type_and_value 2021-08-17 19:54:09 +01:00
gingerBill
94d298755a Fix race condition when adding a dependency 2021-08-16 15:33:26 +01:00
gingerBill
9cfe20cfb4 Correct error message for add_import_dependency_node 2021-08-08 13:13:31 +01:00
gingerBill
67bedcba4b Reorganize stages in checker 2021-08-03 13:41:28 +01:00
gingerBill
4987ef89f1 Reorganize some of the checker stages 2021-08-03 13:40:47 +01:00
gingerBill
3e961af5f1 Sort files by name in packages 2021-08-02 22:55:22 +01:00
gingerBill
9e6e769141 Add sanity checks to checker 2021-08-02 18:32:17 +01:00
gingerBill
ccbdf086ff Add @(warning=<string>) 2021-08-02 16:58:50 +01:00
gingerBill
7f3d4cb504 Remove the literal conversion logic to the parser from the tokenizer 2021-08-02 00:53:45 +01:00
gingerBill
be76da2c90 Begin optimizing tokenizer; Replace gb_utf8_decode with utf8_decode (CC but easier to change later) 2021-08-01 23:56:17 +01:00
gingerBill
541c79c01a Add mutex for @(builtin) attributes 2021-07-28 00:27:16 +01:00
gingerBill
416dd93bf7 Add accidentally removed call 2021-07-27 23:39:35 +01:00
gingerBill
7c80577160 Correct race condition on untyped expr info map logic on global evaluations 2021-07-27 23:37:55 +01:00
gingerBill
a5d6fda433 Define which mutexes are blocking and recursive explicitly 2021-07-27 23:14:01 +01:00
gingerBill
4bc3796f9b Short circuit check_with_workers logic on worker_count == 0 2021-07-27 23:00:51 +01:00
gingerBill
5e12f5a746 Unify threading logic 2021-07-27 22:55:32 +01:00
gingerBill
4080ba4026 Remove global semaphore and place in CheckerInfo 2021-07-27 21:42:43 +01:00
gingerBill
e17593be94 Remove dead mutex 2021-07-27 21:14:06 +01:00
gingerBill
44aa69748c Correct logic for check_import_entities - collect file decls 2021-07-27 21:13:03 +01:00
gingerBill
9cd5ea59dd Big simplification and improvement of the entity collection system, reducing unneeded steps for packages 2021-07-27 20:45:50 +01:00
gingerBill
116e98b378 Improve default scope size 2021-07-27 10:59:39 +01:00
gingerBill
6cd06ab95f Minor fix 2021-07-25 13:07:31 +01:00
gingerBill
99080d41f3 INTERNAL USE ONLY: //+lazy build flag 2021-07-25 13:06:09 +01:00
gingerBill
2938ec028f Remove dead code 2021-07-15 00:37:59 +01:00
gingerBill
981b9fb7a8 Remove need for scope mutex, make Scope singly linked list tree with atomic pointers 2021-07-14 23:49:35 +01:00
gingerBill
10f4d8df32 Override libtommath allocation procedures 2021-07-14 23:36:23 +01:00
gingerBill
e15858e2be Remove random load balancing in thread_proc_body 2021-07-14 22:53:02 +01:00
gingerBill
6d8302825c Add Greed Work Stealing and Random Load Balancing for check_procedure_bodies 2021-07-14 01:13:39 +01:00
gingerBill
fae8bf96dd Muilthread check_collect_entities_all 2021-07-14 00:46:03 +01:00
gingerBill
bc59dc6389 Remove duplicate code 2021-07-14 00:36:48 +01:00
gingerBill
bd8e2f82be Replace non-recursive mutexes with BlockingMutex; Minor improves to initialization improves 2021-07-14 00:34:34 +01:00
gingerBill
69027b6840 Remove dead mutexes 2021-07-13 23:10:12 +01:00
gingerBill
7a9b7af078 Reduce mutex usage and convert things to queues from arrays 2021-07-13 23:09:24 +01:00
gingerBill
31c7afce1b Minor code clean up to reuse the ProcInfo consumption code 2021-07-13 21:19:13 +01:00
gingerBill
698eeaf7c3 Add (internal flag) -show-debug-messages 2021-07-13 17:40:06 +01:00