Fix windows aot loader fail to resolve symbol issue (#540)
This commit is contained in:
@ -8,20 +8,47 @@
|
||||
#define R_386_32 1 /* Direct 32 bit */
|
||||
#define R_386_PC32 2 /* PC relative 32 bit */
|
||||
|
||||
#if !defined(_WIN32) && !defined(_WIN32_)
|
||||
void __divdi3();
|
||||
void __udivdi3();
|
||||
void __moddi3();
|
||||
void __umoddi3();
|
||||
#else
|
||||
#pragma function (floor)
|
||||
#pragma function (ceil)
|
||||
|
||||
static int64
|
||||
__divdi3(int64 a, int64 b)
|
||||
{
|
||||
return a / b;
|
||||
}
|
||||
|
||||
static uint64
|
||||
__udivdi3(uint64 a, uint64 b)
|
||||
{
|
||||
return a / b;
|
||||
}
|
||||
|
||||
static int64
|
||||
__moddi3(int64 a, int64 b)
|
||||
{
|
||||
return a % b;
|
||||
}
|
||||
|
||||
static uint64
|
||||
__umoddi3(uint64 a, uint64 b)
|
||||
{
|
||||
return a % b;
|
||||
}
|
||||
#endif
|
||||
|
||||
static SymbolMap target_sym_map[] = {
|
||||
REG_COMMON_SYMBOLS
|
||||
#if !defined(_WIN32) && !defined(_WIN32_)
|
||||
/* compiler-rt symbols that come from compiler(e.g. gcc) */
|
||||
REG_SYM(__divdi3),
|
||||
REG_SYM(__udivdi3),
|
||||
REG_SYM(__moddi3),
|
||||
REG_SYM(__umoddi3)
|
||||
#endif
|
||||
};
|
||||
|
||||
static void
|
||||
|
||||
@ -14,10 +14,12 @@
|
||||
#define IMAGE_REL_AMD64_REL32 4 /* The 32-bit relative address from
|
||||
the byte following the relocation */
|
||||
|
||||
void __divdi3();
|
||||
void __udivdi3();
|
||||
void __moddi3();
|
||||
void __umoddi3();
|
||||
#if defined(_WIN64) || defined(_WIN64_)
|
||||
#pragma function (floor)
|
||||
#pragma function (ceil)
|
||||
#pragma function (floorf)
|
||||
#pragma function (ceilf)
|
||||
#endif
|
||||
|
||||
static SymbolMap target_sym_map[] = {
|
||||
REG_COMMON_SYMBOLS
|
||||
|
||||
Reference in New Issue
Block a user