Fix dll on arm.
Do not output the arm stack unwinding section (SHT_ARM_EXIDX).
This commit is contained in:
parent
a0a0f4d029
commit
3cfaaaf1eb
1 changed files with 7 additions and 0 deletions
7
tccelf.c
7
tccelf.c
|
@ -1794,6 +1794,13 @@ static int alloc_sec_names(TCCState *s1, int file_type, Section *strsec)
|
||||||
/* we output all sections if debug or object file */
|
/* we output all sections if debug or object file */
|
||||||
s->sh_size = s->data_offset;
|
s->sh_size = s->data_offset;
|
||||||
}
|
}
|
||||||
|
#ifdef TCC_TARGET_ARM
|
||||||
|
/* XXX: Suppress stack unwinding section. */
|
||||||
|
if (s->sh_type == SHT_ARM_EXIDX) {
|
||||||
|
s->sh_flags = 0;
|
||||||
|
s->sh_size = 0;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
if (s->sh_size || (s->sh_flags & SHF_ALLOC))
|
if (s->sh_size || (s->sh_flags & SHF_ALLOC))
|
||||||
s->sh_name = put_elf_str(strsec, s->name);
|
s->sh_name = put_elf_str(strsec, s->name);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue