On Mon, May 14, 2012 at 4:23 PM, Richard Henderson <r...@redhat.com> wrote:
> On 05/12/12 06:00, Steven Bosscher wrote:
>>         * toplev.c (process_options): Fail for sjlj exceptions if the
>> target machine
>>         has no casesi insn and no tablejump insn.
>
> Looks good.  How many targets have neither case/tablejump?

Those are m32c, moxie, and rl78.

For rl78 there is a comment in gcc/config/rl78/rl78.h that suggests
there should be a tablejump insn, but it's not there. This is
unfortunate because rl78 is a "#define DWARF2_UNWIND_INFO 0" target,
i.e. it defaults to (and only supports??) SJLJ-based exceptions.

Ciao!
Steven


P.S. What the other targets have, is listed below:

alpha           "tablejump"
arm             "casesi" "tablejump"
avr             "casesi"
bfin            "tablejump"
c6x             "casesi" "tablejump"
cr16            "tablejump"
cris            "casesi"
epiphany        "tablejump"
fr30            "tablejump"
frv             "casesi" "tablejump"
h8300           "tablejump"
i386            "tablejump"
ia64            "tablejump"
iq2000          "tablejump"
lm32            "tablejump"
m32r            "tablejump"
m68k            "tablejump"
mcore           "tablejump"
mep             "tablejump"
microblaze      "tablejump"
mips            "tablejump"
mmix            "tablejump"
mn10300         "casesi" "tablejump"
pa              "casesi"
pdp11           "tablejump"
picochip        "tablejump"
rs6000          "tablejump"
rx              "tablejump"
s390            "casesi"
score           "tablejump"
sh              "casesi"
sparc           "tablejump"
spu             "casesi" "tablejump"
stormy16        "casesi"
tilegx          "tablejump"
tilepro         "tablejump"
v850            "casesi" "tablejump"
vax             "casesi"
xtensa          "tablejump"

Reply via email to