[LLVMdev] symbols for exception handling
reed kotler
rkotler at mips.com
Fri Nov 2 19:53:41 PDT 2012
mips16 has some unusual requirements for label symbols in .s.
I think that arm thumb has the same issue but have not located yet how
this is handled.
When you have a label of an instruction in mips16, when you reference
the label, the linker
adds a 1 to the address. When you call an odd numbered address, the
procesor switches to mips16 mode and when you call an even numbered
address it switches to mips32 mode.
This causes some problems in the exception tables.
Basically, labels that are not landing pad symbols that are inserted for
exception handling
and dwarf purposes, must declared :
$mysym = .
as opposed to:
$mysym:
Has this problem of making this distinction already been solved in llvm
and if so, how is this done?
Tia.
Reed
More information about the llvm-dev
mailing list