Commit Graph

547 Commits

Author SHA1 Message Date
gingerBill
8dc70f797c Increase use of temporary_allocator() where possible 2023-03-16 15:16:17 +00:00
gingerBill
c1c7128634 Minimize severe memory usage by enforcing the heap_allocator() in places 2023-03-16 15:04:57 +00:00
gingerBill
94c1331c07 Implement @(fini) (opposite of @(init)) 2023-02-15 11:31:51 +00:00
gingerBill
de0a3e0ab9 Minor change to byval for readonly parameters 2023-02-03 15:07:44 +00:00
gingerBill
d26110da7f Change attributes for the static map get 2023-02-03 14:25:30 +00:00
gingerBill
60e73d91f6 Remove internal readonly attribute 2023-02-03 13:42:23 +00:00
gingerBill
5eeb436626 Temporarily make all map get calls dynamic 2023-02-03 12:43:21 +00:00
gingerBill
eb457d688d Make static map calls the default; add -dynamic-map-calls 2023-02-03 12:16:58 +00:00
gingerBill
55176e52fc Use heap_allocator() with -debug; Reinstate the arena guards 2023-01-23 11:38:18 +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
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
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
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
9b47a5eddb Fix macro issue 2023-01-11 00:49:04 +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
69934c3b0b More for_array(i, y) to for (x : y) translations 2023-01-03 13:04:09 +00:00
gingerBill
529383f5b1 Correct a race condition when checking the procedure body 2023-01-02 15:30:04 +00:00
gingerBill
bfdcf900ef Remove global_ prefix from global_thread_pool_* procedures 2023-01-02 00:56:06 +00:00
gingerBill
44caa96d50 Set the file's filename and directory in init_ast_file 2022-12-20 14:56:44 +00:00
gingerBill
c1f5be24e2 Remove dead code in the compiler 2022-12-18 22:49:10 +00:00
gingerBill
6cdec65ca1 gb_internal LLVM backend 2022-12-18 22:32:05 +00:00
gingerBill
ff6b76986a Use C++11 loops for some arrays 2022-12-09 12:32:54 +00:00
gingerBill
5c3624eb86 Fix map looping 2022-12-09 12:18:49 +00:00
gingerBill
34a048f7da Replace compiler for loops for the hash-table types to simplify code usage 2022-12-09 11:29:28 +00:00
gingerBill
0a0db23b17 Remove copy elision code 2022-11-22 15:49:27 +00:00
gingerBill
d2019e3e4d Enforce pointer cast 2022-11-13 23:50:45 +00:00
gingerBill
3edb3d8d8c Simplify the handling of the hashing calls for maps 2022-11-13 23:24:08 +00:00
gingerBill
22840ddf97 Add noinline LLVM attribute to static map procedures 2022-11-11 15:35:05 +00:00
gingerBill
f9576c2f5b Add internal linkage to static map calls 2022-11-11 15:28:20 +00:00
gingerBill
16fc961010 Begin work on map static set 2022-11-11 14:45:22 +00:00
gingerBill
d2701d8b13 Make __dynamic_map_set take the hash rather than compute it internally 2022-11-11 13:04:38 +00:00
gingerBill
a0bd31646b Make map get internal calls take the hash value rather than compute it internally 2022-11-11 13:02:23 +00:00
gingerBill
0d37da54b4 Add minor optimization for lb_map_cell_index_static 2022-11-11 11:41:28 +00:00
gingerBill
033525fe13 Force inline of hasher proc where possible 2022-11-11 11:10:26 +00:00
gingerBill
8852d090b6 Correct static map get; make get take a pointer to simplify compiler internals 2022-11-10 12:46:53 +00:00
gingerBill
1bcec3f769 Change map internal calls to use a pointer 2022-11-09 22:21:36 +00:00
gingerBill
a71daee545 Allow for -use-static-map-calls which generates a get procedure per map; add runtime.map_get 2022-11-08 14:58:05 +00:00
gingerBill
046dd55032 Change __dynamic_map_get signature 2022-11-08 13:02:32 +00:00