Displaying 2 results from an estimated 2 matches for "libdump".
Did you mean:
ldbdump
2016 Feb 08
2
[LLD] Incorrect comparision of pointers to function defined in DSO
..."./a.out.lld"; look at the
> diff header to know which is output from the gold executable vs lld
> executable):
>
> --- ld_debug-a.out.gold 2016-02-08 14:07:27.255734743 -0800
> +++ ld_debug-a.out.lld 2016-02-08 14:07:27.255734743 -0800
> relocation processing: ./libdump.so (lazy)
> symbol=set_data; lookup in file=./a.out.lld [0]
> - binding file ./libdump.so [0] to ./a.out.lld [0]: normal symbol
> `set_data'
> + symbol=set_data; lookup in file=./libdump.so [0]
> + binding file ./libdump.so [0] to ./libdump.so [0]: normal symb...
2016 Feb 08
3
[LLD] Incorrect comparision of pointers to function defined in DSO
...to somebody?
The reproduction script:
% cat so.c
void set_data(void *v) {}
void *data = &set_data;
% cat main.c
int printf(const char *, ...);
extern void *data;
void set_data(void *v);
int main(void)
{
printf("%p = %p\n", &set_data, data);
}
% clang -fPIC -shared so.c -o libdump.so
% clang -c main.c
% clang main.o -Wl,-rpath -Wl,. -L. -ldump
% ./a.out
0x400600 = 0x400600 # The same addresses
% lld -flavor gnu --sysroot=/ --build-id --no-add-needed --eh-frame-hdr \
-m elf_x86_64 --hash-style=both \
-dynamic-linker /lib64/ld-linux-x86-64.so.2 \
/usr/lib/x86_64...