Help with YASM
From: Larry Finger
Date: Sun Nov 13 2022 - 22:34:33 EST
Hi,
I am the openSUSE maintainer for VirtualBox. A portion of the code is written in
yasm assembler. There are two sections of the code that refer to external
globals that now need to be referenced in a position-independent manner. After
much web searching, I have not found a method that works.
The first code snippet is a jump to an external location. The original code is
jmp NAME(dtrace_probe)
Based on a reference that I found, I changed this to
jmp [rel dtrace_probe wrt ..got]
This compiles without error, but I have no idea if it would work.
The second reference to an external variable is
lea T2, [NAME(g_afParity) wrt rip]
Trying to emulate the above change, I replaced this with
lea T2, [rel NAME(g_afParity) wrt rip ..got]
This one generates a compile error that there is a missing "]".
Thanks for any help, or pointers to reference works that I can read.
Larry