Robert P. J. DAY says:
According to Mike Frysinger, this patch was removed from Gentoo in the
2.3.x series and didn't seem to cause any adverse effects. So toss it
from the patch directories for glibc 2.5 and up.
1 diff -durN gcc-4.2.1.orig/gcc/stmt.c gcc-4.2.1/gcc/stmt.c
2 --- gcc-4.2.1.orig/gcc/stmt.c 2007-07-19 05:25:32.000000000 +0200
3 +++ gcc-4.2.1/gcc/stmt.c 2007-08-03 20:37:19.000000000 +0200
6 = (TREE_CODE (orig_type) != ENUMERAL_TYPE
7 && estimate_case_costs (case_list));
8 - balance_case_nodes (&case_list, NULL);
9 + /* When optimizing for size, we want a straight list to avoid
10 + jumps as much as possible. This basically creates an if-else
13 + balance_case_nodes (&case_list, NULL);
14 emit_case_nodes (index, case_list, default_label, index_type);
15 emit_jump (default_label);
19 if (!node_has_low_bound (node, index_type))
21 + if (!optimize_size) /* don't jl to the .default_label. */
22 emit_cmp_and_jump_insns (index,