------- Comment #7 from hp at gcc dot gnu dot org  2008-04-02 19:56 -------
It's not just about creating a properly filled (or handling the NULLs in the)
addr_vec after generating the tablejump or casesi: for machines with casesi,
passing a NULL default_label (operand[4]; fifth operand) is...unexpected. 
While this could be pushed from the middle-end to the target domain by defining
the NULL default label as a valid case that the target casesi pattern must
handle (hard to do without casesi being a define_expand), I think it'd be
better to just pass any label as default_label any at the try_casesi call.

Here's a related minor optimization opportunity for casesi: if default_label is
set to the last case label, the max index / the range and the table size, can
be shrunk by one.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35800

Reply via email to