Commit Graph

  • 6ff2db47b4 shuffle to private/public wrapper Colin Davidson 2023-01-06 13:33:47 -08:00
  • a11b6a9e5f Merge pull request #2265 from JooperGH/more_dwmapi_bindings gingerBill 2023-01-06 12:18:10 +00:00
  • 978568684c Merge pull request #2295 from matias-eduardo/patch-1 gingerBill 2023-01-06 12:16:51 +00:00
  • e8e7d3ea31 Merge pull request #2293 from colrdavidson/fix_futexes gingerBill 2023-01-06 12:09:44 +00:00
  • c03cc21908 Add GetKeyboardState to user32 matias 2023-01-06 07:04:38 -04:00
  • 8ef406324b Multi thread more of the backend where possible gingerBill 2023-01-05 17:26:51 +00:00
  • 23d0c52bf4 Refactor llvm backend code into separate procedures to make it simpler to profile gingerBill 2023-01-05 16:42:02 +00:00
  • 5eee8077dd enum-ifiy function pass managers for lbModule gingerBill 2023-01-05 15:56:45 +00:00
  • 029cb6581b Unify function pass managers for auxiliary procedures (e.g. startup type info, runtime, objc names) gingerBill 2023-01-05 12:54:53 +00:00
  • 025e87d974 Multithread LLVM procedure generation gingerBill 2023-01-05 12:39:57 +00:00
  • 213a0499a1 Begin multithreading the llvm backend when -use-separate-modules is enabled gingerBill 2023-01-05 12:29:16 +00:00
  • 1517f1d779 Add uncomment add_type_info_type calls for type assertions gingerBill 2023-01-05 11:54:21 +00:00
  • 50a2493fd3 add get thread count to openbsd Colin Davidson 2023-01-05 01:48:00 -08:00
  • b455ccd261 fix more things? Colin Davidson 2023-01-05 01:37:50 -08:00
  • a58650728e fix futex error handling Colin Davidson 2023-01-05 01:27:37 -08:00
  • b22ddb1453 fix windows structs Colin Davidson 2023-01-05 01:25:18 -08:00
  • cb7dd12222 name raw union Colin Davidson 2023-01-05 01:18:44 -08:00
  • 0484bdbb7e fix darwin/freebsd Colin Davidson 2023-01-05 01:14:51 -08:00
  • 8f39c45e9b use raw_union? Colin Davidson 2023-01-05 01:11:46 -08:00
  • 944396128b add get core count Colin Davidson 2023-01-05 01:06:55 -08:00
  • bbb2164e38 Inline map gets; cast explicitly on TOMBSTONE checking gingerBill 2023-01-05 01:25:37 +00:00
  • be23d83fc8 Remove unnecessary check is align_formula* et al gingerBill 2023-01-05 00:47:09 +00:00
  • 291ea33939 Initialize TypePath constructor like to keep the Futex constructor happy gingerBill 2023-01-04 22:34:59 +00:00
  • 9455918eec Fix min dep type info problem caused by const ref of map_set gingerBill 2023-01-04 22:20:18 +00:00
  • 8a99b8af3e Narrow mutex usage gingerBill 2023-01-04 15:55:10 +00:00
  • 12e42d92d3 Localize GenProcsData to the entity itself gingerBill 2023-01-04 15:35:24 +00:00
  • faa735d0c7 Localize gen_types mutexes gingerBill 2023-01-04 15:15:12 +00:00
  • d4e18109da Move walking of dependencies for procedures to just before calculating the min dep set gingerBill 2023-01-04 13:52:38 +00:00
  • d06a0e7093 Improve the PtrSet to be as simple and small as possible gingerBill 2023-01-04 13:30:27 +00:00
  • b3a55b8b6f Remove unused procedures gingerBill 2023-01-03 18:42:13 +00:00
  • ec69101101 Convert minimum_dependency_type_info_set to use a PtrMap gingerBill 2023-01-03 18:39:37 +00:00
  • 17fa8cb6ef Add extra mutex to TypePth just in case gingerBill 2023-01-03 18:21:42 +00:00
  • 855ebceadc Minimize add_type_info_type usage gingerBill 2023-01-03 17:26:05 +00:00
  • 2720e98127 Add +ignore along with +build ignore gingerBill 2023-01-03 17:25:51 +00:00
  • bb80c1b059 Add type_and_value_mutex to DeclInfo gingerBill 2023-01-03 17:07:53 +00:00
  • 85e390deba Minimize calling of Ast::thread_safe_file() when cloning gingerBill 2023-01-03 15:55:22 +00:00
  • dc317c8cd8 Make BlockingMutex gingerBill 2023-01-03 15:50:31 +00:00
  • 774fea1e63 Use RwMutex for gen_procs gingerBill 2023-01-03 15:47:25 +00:00
  • 485c606672 Clarify RwLocks for add_dependenies_from_unpacking gingerBill 2023-01-03 15:37:35 +00:00
  • 3dee3205b2 Use RwMutex for DeclInfo `deps gingerBill 2023-01-03 15:34:52 +00:00
  • c7a704d345 Use RwMutex for the Scope gingerBill 2023-01-03 15:26:47 +00:00
  • 0fb3032b73 General improves to alloc_ast_node and other unnecessary checks gingerBill 2023-01-03 14:45:09 +00:00
  • 69934c3b0b More for_array(i, y) to for (x : y) translations gingerBill 2023-01-03 13:04:09 +00:00
  • 7380b7e61b Add more uses of C++ style for loops over for_array macro gingerBill 2023-01-03 12:37:41 +00:00
  • 747a11a954 Allow all set entry types to be implicitly cast to their key/value type to allow for easier iteration gingerBill 2023-01-03 12:18:35 +00:00
  • 252be0fb41 Make all maps use heap allocator implicitly gingerBill 2023-01-03 11:59:52 +00:00
  • 600f2b7284 Use heap_allocator for all hash set types gingerBill 2023-01-03 11:53:59 +00:00
  • 670274ad8f More explicit uses of mutexes gingerBill 2023-01-02 23:56:37 +00:00
  • e10fe91eba Narrow global gen_procs_mutex further gingerBill 2023-01-02 23:50:48 +00:00
  • fd62ee14cd Code moving around gingerBill 2023-01-02 23:31:38 +00:00
  • 8ece92f1f6 Minimize the parapoly mutex usage a bit gingerBill 2023-01-02 23:21:16 +00:00
  • 69b075782b Use a package local mutex for add_type_and_value gingerBill 2023-01-02 22:40:28 +00:00
  • 6bd3a9d422 Be very explicit where the gen_procs_mutex can be unlock gingerBill 2023-01-02 22:23:49 +00:00
  • bc9ee8e1a4 Remove loops within futex signals on Linux gingerBill 2023-01-02 22:13:49 +00:00
  • d36c3c2590 Re enable type_and_value_mutex gingerBill 2023-01-02 22:06:05 +00:00
  • 52b319dbfd Fix darwin's futex implementation in the compiler gingerBill 2023-01-02 21:53:41 +00:00
  • 318d92f9a8 Comment out type_and_value_mutex usage gingerBill 2023-01-02 21:37:21 +00:00
  • 7ffffeeccc Comment out many mutex guards in type_(size|align)_of_internal gingerBill 2023-01-02 21:35:40 +00:00
  • f16d8e77b3 Narrow fullpath_mutex usage gingerBill 2023-01-02 20:55:49 +00:00
  • 5b335bb88c Narrow g_type_mutex usage gingerBill 2023-01-02 20:48:24 +00:00
  • df2767311f Use mutex_try_lock in check_proc_info gingerBill 2023-01-02 20:42:22 +00:00
  • 09c26e6be0 Narrow type info mutex usage gingerBill 2023-01-02 20:38:37 +00:00
  • d2ec2d1606 Remove another use of a global mutex gingerBill 2023-01-02 19:46:55 +00:00
  • 0d87b2e8db Use local mutexes rather than a global one for the dependency insertion gingerBill 2023-01-02 19:39:35 +00:00
  • 1568971732 Fix pool running gingerBill 2023-01-02 18:04:16 +00:00
  • 0e040be941 Add define for darwin gingerBill 2023-01-02 17:49:16 +00:00
  • 9737b65d9c Explicitly call store for futex gingerBill 2023-01-02 17:18:59 +00:00
  • ad52003077 Remove some unneeded checks gingerBill 2023-01-02 17:15:29 +00:00
  • c386509112 Minor clean up of thread pool code gingerBill 2023-01-02 17:06:29 +00:00
  • c293f5b7eb Remove unneeded mutex gingerBill 2023-01-02 16:56:05 +00:00
  • fa562ec5d6 Remove unneeded local_entity_map gingerBill 2023-01-02 15:40:25 +00:00
  • 529383f5b1 Correct a race condition when checking the procedure body gingerBill 2023-01-02 15:30:04 +00:00
  • f01cff7ff0 Multithread checker gingerBill 2023-01-02 12:31:00 +00:00
  • 015fe924b8 Remove use of queues for procedure checking. gingerBill 2023-01-02 12:28:38 +00:00
  • a5ce8a8c0b Multi thread check_export_entities gingerBill 2023-01-02 01:31:14 +00:00
  • bfdcf900ef Remove global_ prefix from global_thread_pool_* procedures gingerBill 2023-01-02 00:56:06 +00:00
  • 54f89dd84b Multithread check_collect_entities_all using new thread pool gingerBill 2023-01-02 00:53:11 +00:00
  • da479c7628 Minor style change gingerBill 2023-01-02 00:35:12 +00:00
  • 3c90a05957 Replace condition+mutex with futex gingerBill 2023-01-02 00:26:17 +00:00
  • d16ddf7926 Use C++ style for loop over for_array macro in parser.cpp where posible gingerBill 2023-01-01 16:32:51 +00:00
  • 5c519f0e8d Remove the synchronization primitive init/destroy calls gingerBill 2023-01-01 16:19:21 +00:00
  • 74e6d9144e Get around the std::atomic issue gingerBill 2023-01-01 16:15:35 +00:00
  • 20d451396d Begin work on futex-ifying the threading primitives gingerBill 2023-01-01 15:06:57 +00:00
  • 60d0390ef8 Unify compiler Futex interface gingerBill 2023-01-01 14:48:31 +00:00
  • 782f1b4718 Merge pull request #2278 from wjlroe/stb-darwin-universal-libraries gingerBill 2023-01-01 14:10:35 +00:00
  • 85f0a1067c Merge pull request #2280 from DragosPopse/master gingerBill 2023-01-01 14:09:51 +00:00
  • c08ff891ad Merge pull request #2287 from odin-lang/compiler-improvements-2022-12 gingerBill 2023-01-01 13:29:20 +00:00
  • 168cec1e9d Merge pull request #2283 from colrdavidson/threadpool-swap gingerBill 2023-01-01 13:28:36 +00:00
  • 28fb35f2f7 Merge pull request #2263 from odin-lang/compiler-improvements-2022-12 gingerBill 2023-01-01 13:26:43 +00:00
  • c1384afe2f Merge branch 'master' into compiler-improvements-2022-12 gingerBill 2023-01-01 13:10:49 +00:00
  • 547c7bce1b Merge pull request #2284 from thePHTest/master gingerBill 2022-12-30 11:19:31 +00:00
  • 0bb93d40d3 fixup are_types_identical for comparing procs and checking if parameter names differ Phil 2022-12-29 16:10:13 -08:00
  • 27ba1d596c rework openbsd futexes a little Colin Davidson 2022-12-29 12:00:16 -08:00
  • 98e5523f2f cover openbsd too Colin Davidson 2022-12-29 11:46:43 -08:00
  • 223b66f422 oops if->elif Colin Davidson 2022-12-29 11:06:35 -08:00
  • 04a4dbcdaf add freebsd support Colin Davidson 2022-12-29 11:05:31 -08:00
  • ef9e31cb31 fix ulock/uwait imports Colin Davidson 2022-12-28 22:08:39 -08:00
  • e019673a18 fix build Colin Davidson 2022-12-28 21:52:41 -08:00
  • 5f27f2dd7f move to work-stealing threadpool Colin Davidson 2022-12-28 21:44:17 -08:00
  • cfccf73cdd Merge branch 'odin-lang:master' into master Dragos Popescu 2022-12-26 19:22:47 +02:00