Refactoring common HAL host code to enable marl integration.
This will let us toggle between the existing scheduling model (simple serial/in-order on a single worker thread) to marl (out-of-order on a pool of workers). Keeping the existing serial model is useful for systems where marl may not be supported yet (wasm, esoteric embedded devices, etc) and should also be easier to debug (as no fibers confusing debuggers).
Progress on #49.
Closes https://github.com/google/iree/pull/2112
PiperOrigin-RevId: 316718605
diff --git a/.gitmodules b/.gitmodules
index 3ed8ebc..2cee5eb 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -50,3 +50,6 @@
[submodule "third_party/mlir-emitc"]
path = third_party/mlir-emitc
url = https://github.com/iml130/mlir-emitc.git
+[submodule "third_party/marl"]
+ path = third_party/marl
+ url = https://github.com/google/marl.git