[x264-devel] checkasm: Fix compilation on hardened x86-64 ELF systems

Henrik Gramner git at videolan.org
Mon May 22 00:00:07 CEST 2017

x264 | branch: master | Henrik Gramner <henrik at gramner.com> | Fri Mar 24 22:27:42 2017 +0100| [a472b60daae0cac17d91ddf62ad4f474ded63e5b] | committer: Henrik Gramner

checkasm: Fix compilation on hardened x86-64 ELF systems

Normal PC-relative relocations cannot be used for resolving the address of
external symbols on systems where ASLR results in the offset being larger
than 32 bits. We are required to to go through the PLT instead.

> http://git.videolan.org/gitweb.cgi/x264.git/?a=commit;h=a472b60daae0cac17d91ddf62ad4f474ded63e5b

 tools/checkasm-a.asm | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/tools/checkasm-a.asm b/tools/checkasm-a.asm
index 34d5bebe..d1da9b79 100644
--- a/tools/checkasm-a.asm
+++ b/tools/checkasm-a.asm
@@ -153,7 +153,11 @@ cglobal checkasm_call, 2,15,16,max_args*8+8
     mov  r9, rax
     mov r10, rdx
     lea  r0, [error_message]
+    call puts wrt ..plt
     call puts
     mov  r1, [rsp+max_args*8]
     mov  dword [r1], 0
     mov  rdx, r10

More information about the x264-devel mailing list