mirror of
https://github.com/mirror/tinycc.git
synced 2025-01-27 06:10:06 +08:00
arm: Handle R_ARM_NONE relocs
These relocations are used to express a dependency on a certain symbol (e.g. for EABIs exception handling to the __aeabi_unwind_cpp_pr{0,1,2} routines). Just ignore them in reloc processing.
This commit is contained in:
parent
5879c854fb
commit
0688afdd34
4
tccelf.c
4
tccelf.c
@ -769,6 +769,10 @@ ST_FUNC void relocate_section(TCCState *s1, Section *s)
|
||||
if ((0x0ffffff0 & *(int*)ptr) == 0x012FFF10)
|
||||
*(int*)ptr ^= 0xE12FFF10 ^ 0xE1A0F000; /* BX Rm -> MOV PC, Rm */
|
||||
break;
|
||||
case R_ARM_NONE:
|
||||
/* Nothing to do. Normally used to indicate a dependency
|
||||
on a certain symbol (like for exception handling under EABI). */
|
||||
break;
|
||||
default:
|
||||
fprintf(stderr,"FIXME: handle reloc type %x at %x [%p] to %x\n",
|
||||
type, (unsigned)addr, ptr, (unsigned)val);
|
||||
|
Loading…
Reference in New Issue
Block a user