aboutsummaryrefslogtreecommitdiff
path: root/win32
diff options
context:
space:
mode:
authorgrischka <grischka>2011-07-14 19:09:49 +0200
committergrischka <grischka>2011-07-14 19:09:49 +0200
commitdf4c0892f3fb5170042652cd648a29c94c3a2eca (patch)
tree0db41a085d08276f9804b4905949c60ff1f7500f /win32
parent232650f8b3a786e82071c12a1ee8eea60684279a (diff)
downloadtinycc-df4c0892f3fb5170042652cd648a29c94c3a2eca.tar.gz
tinycc-df4c0892f3fb5170042652cd648a29c94c3a2eca.tar.bz2
tccrun: win64: add unwind function table for dynamic code
This works only when tcc.exe is compiled using MSC. MinGW does something in the startup code that defeats it.
Diffstat (limited to 'win32')
-rw-r--r--win32/lib/chkstk.S8
-rw-r--r--win32/lib/kernel32.def2
2 files changed, 2 insertions, 8 deletions
diff --git a/win32/lib/chkstk.S b/win32/lib/chkstk.S
index d53b31e..2726061 100644
--- a/win32/lib/chkstk.S
+++ b/win32/lib/chkstk.S
@@ -57,17 +57,9 @@ P0:
/* ---------------------------------------------- */
/* setjmp/longjmp support */
-.globl tinyc_no_getbp
-tinyc_no_getbp:
- .byte 0x90
-
.globl tinyc_getbp
tinyc_getbp:
- xor %rax,%rax
- cmp %al,tinyc_no_getbp(%rax)
- je t1
mov %rbp,%rax
-t1:
ret
/* ---------------------------------------------- */
diff --git a/win32/lib/kernel32.def b/win32/lib/kernel32.def
index 85dd980..5d56705 100644
--- a/win32/lib/kernel32.def
+++ b/win32/lib/kernel32.def
@@ -549,7 +549,9 @@ ResetEvent
ResetNLSUserInfoCache
ResetWriteWatch
ResumeThread
+RtlAddFunctionTable
RtlFillMemory
+RtlInstallFunctionTableCallback
RtlMoveMemory
RtlUnwind
RtlZeroMemory