mirror of
https://github.com/frida/tinycc
synced 2024-11-27 18:19:35 +03:00
Fixed -static linking on x86_64 Linux
This commit is contained in:
parent
51f6e52dd3
commit
337dc84b57
@ -625,11 +625,7 @@ static void gcall_or_jmp(int is_jmp)
|
|||||||
if ((vtop->r & (VT_VALMASK | VT_LVAL)) == VT_CONST &&
|
if ((vtop->r & (VT_VALMASK | VT_LVAL)) == VT_CONST &&
|
||||||
((vtop->r & VT_SYM) && (vtop->c.i-4) == (int)(vtop->c.i-4))) {
|
((vtop->r & VT_SYM) && (vtop->c.i-4) == (int)(vtop->c.i-4))) {
|
||||||
/* constant symbolic case -> simple relocation */
|
/* constant symbolic case -> simple relocation */
|
||||||
#ifdef TCC_TARGET_PE
|
|
||||||
greloca(cur_text_section, vtop->sym, ind + 1, R_X86_64_PC32, (int)(vtop->c.i-4));
|
greloca(cur_text_section, vtop->sym, ind + 1, R_X86_64_PC32, (int)(vtop->c.i-4));
|
||||||
#else
|
|
||||||
greloca(cur_text_section, vtop->sym, ind + 1, R_X86_64_PLT32, (int)(vtop->c.i-4));
|
|
||||||
#endif
|
|
||||||
oad(0xe8 + is_jmp, 0); /* call/jmp im */
|
oad(0xe8 + is_jmp, 0); /* call/jmp im */
|
||||||
} else {
|
} else {
|
||||||
/* otherwise, indirect call */
|
/* otherwise, indirect call */
|
||||||
|
Loading…
Reference in New Issue
Block a user