http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57583
--- Comment #6 from Hans-Peter Nilsson <hp at gcc dot gnu.org> --- (In reply to Andreas Schwab from comment #5) > The assembler already handles jump targets that are too far away (via the > BROKEN_DOT_WORD hack), this issue is about growing the table itself too > large so that the overflow table is not reachable any more within 32K. There's no confusion here. While a less involved patch will suffice where just the table is too big, CASE_VECTOR_SHORTEN_MODE can detect and handle both issues. I think it will also allow for jump-tables closer to the 4K entries than the significantly lower limit you'll find workable with a less involved patch and relying on BROKEN_DOT_WORD.