mirror of
https://github.com/frida/tinycc
synced 2024-11-24 16:49:44 +03:00
6a4f3cf127
tested on win32/64 to pass the tests when enabled - libtcc.c : let tcc define __leading_underscore if enabled tcc_add_symbol() : add _ automatically - tccelf.c : remove tcc_get_symbol_err(), find_c_sym() currently symbol length is limited to 256 in several places, so we can use a fixed local buffer for now as well. - win32/lib/crtinit.c : new file for init/fini - lib/*.S, tests7* : use __leading_underscore - bt-log.c: this file wont work relibaly if compiled with gcc
19 lines
566 B
C
19 lines
566 B
C
//+---------------------------------------------------------------------------
|
|
|
|
#include <tchar.h>
|
|
#include <windows.h>
|
|
#include "crtinit.c"
|
|
|
|
BOOL WINAPI DllMain (HINSTANCE hDll, DWORD dwReason, LPVOID lpReserved);
|
|
|
|
BOOL WINAPI _dllstart(HINSTANCE hDll, DWORD dwReason, LPVOID lpReserved)
|
|
{
|
|
BOOL bRet;
|
|
if (dwReason == DLL_PROCESS_ATTACH) /* ignore DLL_THREAD_ATTACH */
|
|
run_ctors(0, 0, 0);
|
|
bRet = DllMain (hDll, dwReason, lpReserved);
|
|
if (dwReason == DLL_PROCESS_DETACH) /* ignore DLL_THREAD_DETACH */
|
|
run_dtors();
|
|
return bRet;
|
|
}
|