gingerBill
|
b6ca10cd5e
|
Fix memory leak in os.get_current_directory on failure on *nix systems
|
2023-01-16 15:29:45 +00:00 |
|
gingerBill
|
7416f72565
|
Make static value atomic too
|
2023-01-16 15:12:34 +00:00 |
|
gingerBill
|
b51be71a6f
|
Remove initialization on static atomic
|
2023-01-16 15:11:24 +00:00 |
|
gingerBill
|
e488cf4601
|
Enforce atomic on hasher id
|
2023-01-16 15:09:29 +00:00 |
|
gingerBill
|
5d397804f7
|
Fix #2286 by printing an error correctly
|
2023-01-16 13:22:37 +00:00 |
|
gingerBill
|
a5a7226885
|
Remove auto_cast
|
2023-01-16 12:09:09 +00:00 |
|
gingerBill
|
2dca39b557
|
Remove auto_cast procedure field flag
Fixes #2285
|
2023-01-16 12:06:03 +00:00 |
|
gingerBill
|
b55fa268bf
|
Fix #2267 by making it an error
|
2023-01-16 12:03:46 +00:00 |
|
gingerBill
|
c819c350d6
|
Add error message for atomic intrinsics to prevent arbitrary types
|
2023-01-16 11:58:14 +00:00 |
|
gingerBill
|
d55248ab0f
|
Fix #2301
|
2023-01-16 11:45:15 +00:00 |
|
gingerBill
|
68b2d4b9e2
|
Fix #2305
|
2023-01-16 11:41:58 +00:00 |
|
gingerBill
|
54f02f59db
|
Fix compiler error on clang
|
2023-01-16 11:03:24 +00:00 |
|
gingerBill
|
64047cbf05
|
Fix #2304
|
2023-01-16 11:02:42 +00:00 |
|
gingerBill
|
b0619980b2
|
Add /NOIMPLIB /NOEXP on MSVC linker by default when building an executable
|
2023-01-14 13:42:29 +00:00 |
|
gingerBill
|
9aa9429135
|
Update debugf usage
|
2023-01-14 13:42:04 +00:00 |
|
gingerBill
|
518f30e523
|
Bring PtrMap inline with StringMap
|
2023-01-14 13:23:17 +00:00 |
|
gingerBill
|
868aa4c14a
|
Minor changes to StringMap allocation
|
2023-01-14 12:58:45 +00:00 |
|
gingerBill
|
1ab90de493
|
Minimize StringMap structure usage
|
2023-01-14 12:33:42 +00:00 |
|
gingerBill
|
1064bcd060
|
Clean up use of StringMap
|
2023-01-13 12:13:26 +00:00 |
|
gingerBill
|
1e21125527
|
Split out object generation more
|
2023-01-12 21:49:53 +00:00 |
|
gingerBill
|
4a8c37dd52
|
Prepare for arbitrary separate modules
|
2023-01-12 21:45:02 +00:00 |
|
gingerBill
|
3b22c6620c
|
Begin to generalize modules away from AstPackage * in -use-separate-modules
|
2023-01-12 17:13:25 +00:00 |
|
gingerBill
|
402a165b60
|
Correct missing procedures in other build modules which cause a linkage problem
|
2023-01-12 16:59:16 +00:00 |
|
gingerBill
|
34f9170189
|
Fix race condition with polymorphic record generation
|
2023-01-12 16:06:09 +00:00 |
|
gingerBill
|
38136e15fc
|
add_deps_from_child_to_parent always
|
2023-01-12 15:44:55 +00:00 |
|
gingerBill
|
e97bf2ef35
|
Minimize contention on the deps for decls
|
2023-01-12 15:38:23 +00:00 |
|
gingerBill
|
d6c54148d9
|
Minor clean up
|
2023-01-12 15:23:59 +00:00 |
|
gingerBill
|
cbe3791b42
|
Replace all queues with MPSCQueue where possible
|
2023-01-12 13:11:17 +00:00 |
|
gingerBill
|
b470ceb470
|
Correct mpsc_dequeue
|
2023-01-12 12:59:09 +00:00 |
|
gingerBill
|
c15db05199
|
Implement MPSCQueue
|
2023-01-12 12:41:53 +00:00 |
|
gingerBill
|
9428f792ed
|
Comment out allocator guards for the time being
|
2023-01-12 01:09:36 +00:00 |
|
gingerBill
|
520ff731de
|
Add ArenaTemp to the compiler
|
2023-01-12 00:47:20 +00:00 |
|
gingerBill
|
e9cfe698ba
|
Make the heap_allocator just be the permanent_allocator
This improves the speed of the compiler with very little memory increase (which surprised me, Ginger Bill)
|
2023-01-12 00:20:25 +00:00 |
|
gingerBill
|
5fa66ac6a8
|
Fix random race condition for poly records
|
2023-01-12 00:18:58 +00:00 |
|
gingerBill
|
d7d6608142
|
Remove unneeded CI stage
|
2023-01-11 22:08:25 +00:00 |
|
gingerBill
|
7f2ef2ac67
|
Move check for type info above
|
2023-01-11 21:52:04 +00:00 |
|
gingerBill
|
7124d541a1
|
General optimizations
|
2023-01-11 18:10:27 +00:00 |
|
gingerBill
|
3c7e45a46f
|
Remove possible race condition in type_size_of/type_align_of
|
2023-01-11 17:45:18 +00:00 |
|
gingerBill
|
6ec014e980
|
Make -threaded-checker the default not (opt out with -no-threaded-checker)
|
2023-01-11 17:27:06 +00:00 |
|
gingerBill
|
9b47a5eddb
|
Fix macro issue
|
2023-01-11 00:49:04 +00:00 |
|
gingerBill
|
3e8c63ad31
|
Add Odin check -threaded-checker test for windows
|
2023-01-10 20:46:00 +00:00 |
|
gingerBill
|
8ef406324b
|
Multi thread more of the backend where possible
|
2023-01-05 17:26:51 +00:00 |
|
gingerBill
|
23d0c52bf4
|
Refactor llvm backend code into separate procedures to make it simpler to profile
|
2023-01-05 16:42:02 +00:00 |
|
gingerBill
|
5eee8077dd
|
enum-ifiy function pass managers for lbModule
|
2023-01-05 15:56:45 +00:00 |
|
gingerBill
|
029cb6581b
|
Unify function pass managers for auxiliary procedures (e.g. startup type info, runtime, objc names)
|
2023-01-05 12:54:53 +00:00 |
|
gingerBill
|
025e87d974
|
Multithread LLVM procedure generation
|
2023-01-05 12:39:57 +00:00 |
|
gingerBill
|
213a0499a1
|
Begin multithreading the llvm backend when -use-separate-modules is enabled
|
2023-01-05 12:29:16 +00:00 |
|
gingerBill
|
1517f1d779
|
Add uncomment add_type_info_type calls for type assertions
|
2023-01-05 11:54:21 +00:00 |
|
gingerBill
|
bbb2164e38
|
Inline map gets; cast explicitly on TOMBSTONE checking
|
2023-01-05 01:25:37 +00:00 |
|
gingerBill
|
be23d83fc8
|
Remove unnecessary check is align_formula* et al
|
2023-01-05 00:47:09 +00:00 |
|
gingerBill
|
291ea33939
|
Initialize TypePath constructor like to keep the Futex constructor happy
|
2023-01-04 22:34:59 +00:00 |
|
gingerBill
|
9455918eec
|
Fix min dep type info problem caused by const ref of map_set
|
2023-01-04 22:20:18 +00:00 |
|
gingerBill
|
8a99b8af3e
|
Narrow mutex usage
|
2023-01-04 15:55:10 +00:00 |
|
gingerBill
|
12e42d92d3
|
Localize GenProcsData to the entity itself
|
2023-01-04 15:35:24 +00:00 |
|
gingerBill
|
faa735d0c7
|
Localize gen_types mutexes
|
2023-01-04 15:15:12 +00:00 |
|
gingerBill
|
d4e18109da
|
Move walking of dependencies for procedures to just before calculating the min dep set
|
2023-01-04 13:52:38 +00:00 |
|
gingerBill
|
d06a0e7093
|
Improve the PtrSet to be as simple and small as possible
|
2023-01-04 13:30:27 +00:00 |
|
gingerBill
|
b3a55b8b6f
|
Remove unused procedures
|
2023-01-03 18:42:13 +00:00 |
|
gingerBill
|
ec69101101
|
Convert minimum_dependency_type_info_set to use a PtrMap
|
2023-01-03 18:39:37 +00:00 |
|
gingerBill
|
17fa8cb6ef
|
Add extra mutex to TypePth just in case
|
2023-01-03 18:21:42 +00:00 |
|
gingerBill
|
855ebceadc
|
Minimize add_type_info_type usage
|
2023-01-03 17:26:05 +00:00 |
|
gingerBill
|
2720e98127
|
Add +ignore along with +build ignore
|
2023-01-03 17:25:51 +00:00 |
|
gingerBill
|
bb80c1b059
|
Add type_and_value_mutex to DeclInfo
|
2023-01-03 17:07:53 +00:00 |
|
gingerBill
|
85e390deba
|
Minimize calling of Ast::thread_safe_file() when cloning
|
2023-01-03 15:57:09 +00:00 |
|
gingerBill
|
dc317c8cd8
|
Make BlockingMutex
|
2023-01-03 15:50:31 +00:00 |
|
gingerBill
|
774fea1e63
|
Use RwMutex for gen_procs
|
2023-01-03 15:47:25 +00:00 |
|
gingerBill
|
485c606672
|
Clarify RwLocks for add_dependenies_from_unpacking
|
2023-01-03 15:37:35 +00:00 |
|
gingerBill
|
3dee3205b2
|
Use RwMutex for DeclInfo `deps
|
2023-01-03 15:34:52 +00:00 |
|
gingerBill
|
c7a704d345
|
Use RwMutex for the Scope
|
2023-01-03 15:26:47 +00:00 |
|
gingerBill
|
0fb3032b73
|
General improves to alloc_ast_node and other unnecessary checks
|
2023-01-03 14:45:09 +00:00 |
|
gingerBill
|
69934c3b0b
|
More for_array(i, y) to for (x : y) translations
|
2023-01-03 13:04:09 +00:00 |
|
gingerBill
|
7380b7e61b
|
Add more uses of C++ style for loops over for_array macro
|
2023-01-03 12:37:41 +00:00 |
|
gingerBill
|
747a11a954
|
Allow all set entry types to be implicitly cast to their key/value type to allow for easier iteration
|
2023-01-03 12:18:35 +00:00 |
|
gingerBill
|
252be0fb41
|
Make all maps use heap allocator implicitly
|
2023-01-03 11:59:52 +00:00 |
|
gingerBill
|
600f2b7284
|
Use heap_allocator for all hash set types
|
2023-01-03 11:53:59 +00:00 |
|
gingerBill
|
670274ad8f
|
More explicit uses of mutexes
|
2023-01-02 23:56:37 +00:00 |
|
gingerBill
|
e10fe91eba
|
Narrow global gen_procs_mutex further
|
2023-01-02 23:50:48 +00:00 |
|
gingerBill
|
fd62ee14cd
|
Code moving around
|
2023-01-02 23:31:38 +00:00 |
|
gingerBill
|
8ece92f1f6
|
Minimize the parapoly mutex usage a bit
|
2023-01-02 23:21:16 +00:00 |
|
gingerBill
|
69b075782b
|
Use a package local mutex for add_type_and_value
|
2023-01-02 22:40:28 +00:00 |
|
gingerBill
|
6bd3a9d422
|
Be very explicit where the gen_procs_mutex can be unlock
|
2023-01-02 22:23:49 +00:00 |
|
gingerBill
|
bc9ee8e1a4
|
Remove loops within futex signals on Linux
|
2023-01-02 22:13:49 +00:00 |
|
gingerBill
|
d36c3c2590
|
Re enable type_and_value_mutex
|
2023-01-02 22:06:05 +00:00 |
|
gingerBill
|
52b319dbfd
|
Fix darwin's futex implementation in the compiler
|
2023-01-02 21:53:41 +00:00 |
|
gingerBill
|
318d92f9a8
|
Comment out type_and_value_mutex usage
|
2023-01-02 21:37:21 +00:00 |
|
gingerBill
|
7ffffeeccc
|
Comment out many mutex guards in type_(size|align)_of_internal
|
2023-01-02 21:35:40 +00:00 |
|
gingerBill
|
f16d8e77b3
|
Narrow fullpath_mutex usage
|
2023-01-02 20:55:49 +00:00 |
|
gingerBill
|
5b335bb88c
|
Narrow g_type_mutex usage
|
2023-01-02 20:48:24 +00:00 |
|
gingerBill
|
df2767311f
|
Use mutex_try_lock in check_proc_info
|
2023-01-02 20:42:22 +00:00 |
|
gingerBill
|
09c26e6be0
|
Narrow type info mutex usage
|
2023-01-02 20:38:37 +00:00 |
|
gingerBill
|
d2ec2d1606
|
Remove another use of a global mutex
|
2023-01-02 19:46:55 +00:00 |
|
gingerBill
|
0d87b2e8db
|
Use local mutexes rather than a global one for the dependency insertion
|
2023-01-02 19:39:35 +00:00 |
|
gingerBill
|
1568971732
|
Fix pool running
|
2023-01-02 18:04:16 +00:00 |
|
gingerBill
|
0e040be941
|
Add define for darwin
|
2023-01-02 17:49:16 +00:00 |
|
gingerBill
|
9737b65d9c
|
Explicitly call store for futex
|
2023-01-02 17:18:59 +00:00 |
|
gingerBill
|
ad52003077
|
Remove some unneeded checks
|
2023-01-02 17:15:29 +00:00 |
|
gingerBill
|
c386509112
|
Minor clean up of thread pool code
|
2023-01-02 17:06:29 +00:00 |
|
gingerBill
|
c293f5b7eb
|
Remove unneeded mutex
|
2023-01-02 16:56:05 +00:00 |
|
gingerBill
|
fa562ec5d6
|
Remove unneeded local_entity_map
|
2023-01-02 15:40:25 +00:00 |
|
gingerBill
|
529383f5b1
|
Correct a race condition when checking the procedure body
|
2023-01-02 15:30:04 +00:00 |
|