ASM code fixes for PIC compilation.
This commit is contained in:
parent
3fde53501d
commit
04c1e6d017
@ -20,8 +20,8 @@
|
||||
|
||||
|
||||
FUNCTION(__x86_setup_system_time):
|
||||
movq %rdi, cv_factor
|
||||
movq %rsi, cv_factor_nsecs
|
||||
movq %rdi, cv_factor(%rip)
|
||||
movq %rsi, cv_factor_nsecs(%rip)
|
||||
ret
|
||||
FUNCTION_END(__x86_setup_system_time)
|
||||
|
||||
@ -31,7 +31,7 @@ FUNCTION(system_time):
|
||||
// (rdtsc * cv_factor) >> 32.
|
||||
// Factor is pre-shifted left by 32 bits.
|
||||
|
||||
movq cv_factor, %rcx
|
||||
movq cv_factor(%rip), %rcx
|
||||
|
||||
// Load 64-bit TSC into %eax (low), %edx (high).
|
||||
rdtsc
|
||||
@ -56,7 +56,7 @@ FUNCTION(system_time_nsecs):
|
||||
// Factor has not been pre-shifted here, otherwise we may lose the upper
|
||||
// 32 bits.
|
||||
|
||||
movq cv_factor_nsecs, %rcx
|
||||
movq cv_factor_nsecs(%rip), %rcx
|
||||
|
||||
// Load 64-bit TSC into %eax (low), %edx (high).
|
||||
rdtsc
|
||||
|
@ -24,7 +24,7 @@ FUNCTION(_longjmp):
|
||||
push %rax
|
||||
|
||||
// __longjmp_return restores the signal mask and sets the return value.
|
||||
call __longjmp_return
|
||||
call __longjmp_return@PLT
|
||||
ret
|
||||
FUNCTION_END(siglongjmp)
|
||||
|
||||
|
@ -24,7 +24,7 @@ FUNCTION(sigsetjmp):
|
||||
movq %r15, JMP_REGS_R15(%rdi)
|
||||
|
||||
// __setjmp_save_sigs handles signal mask and return value.
|
||||
jmp __setjmp_save_sigs
|
||||
jmp __setjmp_save_sigs@PLT
|
||||
FUNCTION_END(setjmp)
|
||||
|
||||
|
||||
@ -32,7 +32,7 @@ FUNCTION_END(setjmp)
|
||||
FUNCTION(setjmp):
|
||||
// Jump to sigsetjmp with a zero saveMask.
|
||||
xorl %esi, %esi
|
||||
jmp sigsetjmp
|
||||
jmp sigsetjmp@PLT
|
||||
FUNCTION_END(setjmp)
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user