search for: r_mips_got16

Displaying 8 results from an estimated 8 matches for "r_mips_got16".

2015 Nov 21
2
[lld] Hiding original type of GOT related relocations
Hi, There are more than one MIPS relocations which need GOT entry creation. Let's consider two of them R_MIPS_GOT16 and R_MIPS_CALL16 [1]. R_MIPS_GOT16 is applicable to local and external symbols and performs a different calculation in each cases [2]. R_MIPS_CALL16 is applicable to external symbols only and a linker should show an error if it finds R_MIPS_CALL16 with a local target. Now LLD in the `InputSectionB...
2012 Mar 22
2
[LLVMdev] Sorting relocation entries
...$ cat z29.s lw $3, %got(scope_top)($gp) lw $2, %got(body_ok)($gp) lw $3, %lo(scope_top)($3) addiu $2, $2, %lo(body_ok) This is the assembled program generated by gas: $ mips-linux-gnu-objdump -dr z29.gas.o 748: 8f830000 lw v1,0(gp) 748: R_MIPS_GOT16 .bss 74c: 8f820000 lw v0,0(gp) 74c: R_MIPS_GOT16 .bss 750: 8c630000 lw v1,0(v1) 750: R_MIPS_LO16 .bss 754: 244245d4 addiu v0,v0,17876 754: R_M...
2012 Mar 19
2
[LLVMdev] Sorting relocation entries
What would be the best way to sort relocation entries before they are written out in ELFObjectWriter::WriteRelocationsFragment? According to the Mips ABI documents I have, there are certain restrictions on the order relocations appear in the table (e.g. R_MIPS_HI16 and R_MIPS_GOT16 must be followed immediately by a R_MIPS_LO16). When I enable post RA scheduling, some of the restrictions are violated in the generated object code, which results in incorrect relocation values generated by the linker. I am considering imitating what gas does in function mips_frob_file (line 1552...
2012 Mar 22
0
[LLVMdev] Sorting relocation entries
...)($gp) >  lw  $2, %got(body_ok)($gp) >  lw  $3, %lo(scope_top)($3) >  addiu $2, $2, %lo(body_ok) > > This is the assembled program generated by gas: > $  mips-linux-gnu-objdump -dr z29.gas.o > >     748:       8f830000        lw      v1,0(gp) >                        748: R_MIPS_GOT16       .bss >     74c:       8f820000        lw      v0,0(gp) >                        74c: R_MIPS_GOT16       .bss >     750:       8c630000        lw      v1,0(v1) >                        750: R_MIPS_LO16        .bss >     754:       244245d4        addiu   v0,v0,17876 >        ...
2012 Mar 21
0
[LLVMdev] Sorting relocation entries
...gt; What would be the best way to sort relocation entries before they are > written out in ELFObjectWriter::WriteRelocationsFragment? > > According to the Mips ABI documents I have, there are certain > restrictions on the order relocations appear in the table (e.g. > R_MIPS_HI16 and R_MIPS_GOT16 must be followed immediately by a > R_MIPS_LO16). When I enable post RA scheduling, some of the > restrictions are violated in the generated object code, which results > in incorrect relocation values generated by the linker. > > I am considering imitating what gas does in function...
2012 Mar 22
2
[LLVMdev] Sorting relocation entries
...($gp) >> lw $3, %lo(scope_top)($3) >> addiu $2, $2, %lo(body_ok) >> >> This is the assembled program generated by gas: >> $ mips-linux-gnu-objdump -dr z29.gas.o >> >> 748: 8f830000 lw v1,0(gp) >> 748: R_MIPS_GOT16 .bss >> 74c: 8f820000 lw v0,0(gp) >> 74c: R_MIPS_GOT16 .bss >> 750: 8c630000 lw v1,0(v1) >> 750: R_MIPS_LO16 .bss >> 754: 244245d4 addiu v0,v...
2012 Mar 23
0
[LLVMdev] Sorting relocation entries
...o(scope_top)($3) >>>  addiu $2, $2, %lo(body_ok) >>> >>> This is the assembled program generated by gas: >>> $  mips-linux-gnu-objdump -dr z29.gas.o >>> >>>     748:       8f830000        lw      v1,0(gp) >>>                        748: R_MIPS_GOT16       .bss >>>     74c:       8f820000        lw      v0,0(gp) >>>                        74c: R_MIPS_GOT16       .bss >>>     750:       8c630000        lw      v1,0(v1) >>>                        750: R_MIPS_LO16        .bss >>>     754:       244245d4...
2012 Mar 23
1
[LLVMdev] Sorting relocation entries
...gt; addiu $2, $2, %lo(body_ok) >>>> >>>> This is the assembled program generated by gas: >>>> $ mips-linux-gnu-objdump -dr z29.gas.o >>>> >>>> 748: 8f830000 lw v1,0(gp) >>>> 748: R_MIPS_GOT16 .bss >>>> 74c: 8f820000 lw v0,0(gp) >>>> 74c: R_MIPS_GOT16 .bss >>>> 750: 8c630000 lw v1,0(v1) >>>> 750: R_MIPS_LO16 .bss >>>>...