Browse Source

Define wasm `_start` entry point in Odin code

gingerBill 3 years ago
parent
commit
e15f714660
1 changed files with 19 additions and 0 deletions
  1. 19 0
      core/runtime/entry_wasm.odin

+ 19 - 0
core/runtime/entry_wasm.odin

@@ -0,0 +1,19 @@
+//+private
+//+build wasm32, wasm64
+package runtime
+
+import "core:intrinsics"
+
+when !ODIN_TEST && !ODIN_NO_ENTRY_POINT {
+	@(link_name="_start", linkage="strong", require, export)
+	_start :: proc "c" () {
+		context = default_context()
+		#force_no_inline _startup_runtime()
+		intrinsics.__entry_point()
+	}
+	@(link_name="_end", linkage="strong", require, export)
+	_end :: proc "c" () {
+		context = default_context()
+		#force_no_inline _cleanup_runtime()
+	}
+}