<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Thu, Dec 8, 2016 at 6:32 AM Rafael Avila de Espindola <<a href="mailto:rafael.espindola@gmail.com">rafael.espindola@gmail.com</a>> wrote:</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
It is entirely possible we just have another case where lld gets<br class="gmail_msg">
confused about a symbol being absolute or not. Can you provide the full<br class="gmail_msg">
original code in musl that fails with lld?<br class="gmail_msg"></blockquote><div><br></div><div>I missed your response on the list. The original code that fails with lld is pretty much equivalent to the new test case I've added:</div><div><br></div><div><div># RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t</div><div># RUN: echo "PROVIDE_HIDDEN(_BASE = 0);" > %t.script</div><div># RUN: ld.lld -shared --gc-sections --script %t.script -o %t1 %t</div><div># RUN: llvm-readobj --elf-output-style=GNU --file-headers --symbols %t1 | FileCheck %s</div><div># CHECK: 0000000000000000     0 NOTYPE  LOCAL  HIDDEN   ABS base</div><div><br></div><div>.text</div><div>.globl _start</div><div>_start:</div><div>        lea _BASE(%rip),%rax</div></div><div><br></div><div>Currently, lld fails with the following error:</div><div><br></div><div>bin/ld.lld: error: gc-start.o:(.text.internal+0x3): relocation R_X86_64_PC32 cannot refer to absolute symbol '_BASE' defined in (internal)<br></div></div></div>