Browse Source

Add `procs_windows_amd64.asm` for use with `-no-crt`

gingerBill 3 years ago
parent
commit
07ec93bfeb
2 changed files with 15 additions and 9 deletions
  1. 13 0
      core/runtime/procs_windows_amd64.asm
  2. 2 9
      core/runtime/procs_windows_amd64.odin

+ 13 - 0
core/runtime/procs_windows_amd64.asm

@@ -0,0 +1,13 @@
+global __chkstk
+global _tls_index
+global _fltused
+
+section .data
+	_tls_index: dd 0
+	_fltused:   dd 0x9875
+	
+
+section .text
+__chkstk: ; proc "c" (rawptr)
+	; TODO implement correctly
+	ret

+ 2 - 9
core/runtime/procs_windows_amd64.odin

@@ -20,13 +20,6 @@ windows_trap_type_assertion :: proc "contextless" () -> ! {
 }
 }
 
 
 when ODIN_NO_CRT {
 when ODIN_NO_CRT {
-	@(private, export, link_name="_tls_index")
-	_tls_index: u32
-
-	@(private, export, link_name="_fltused")
-	_fltused: i32 = 0x9875
-	
-	@(private, export, link_name="__chkstk")
-	__chkstk :: proc "c" (rawptr) {
-	}
+	@(require)
+	foreign import crt_lib "procs_windows_amd64.asm"
 }
 }