Displaying 2 results from an estimated 2 matches for "l_data_table".
Did you mean:
_data_table
2013 Mar 08
0
[LLVMdev] ARM assembler's syntax in clang
....syntax unified
.align 4
.global foo
.thumb
.thumb_func
foo:
/* these lines are from compiler's assembly output($(CC) -S):
* extern int data_table[];
* int *wheres_data_table(void) {
* return &data_table[0];
* }
*/
movw r1, :lower16:(L_data_table$non_lazy_ptr-(LPC0_0+4))
movt r1, :upper16:(L_data_table$non_lazy_ptr-(LPC0_0+4))
LPC0_0:
add r1, pc
ldr r1, [r1]
bx lr
.section __DATA,__nl_symbol_ptr,non_lazy_symbol_pointers
.align 2
L_data_table$non_lazy_ptr:
.indirect_symbol _data_table...
2013 Mar 07
2
[LLVMdev] ARM assembler's syntax in clang
Hi Ashi,
> ld: illegal text-relocation to _data_table in table.o from foo in
> use_table.o for architecture armv7
It looks like you're using iOS. I'm not familiar with the exact
workings of that platform, but I think a similar message would occur
in ELF-land.
If iOS *is* comparable, your issue is that symbols in dynamically
loaded objects can't (usually) be referenced directly