diff options
Diffstat (limited to 'toolchain-layer/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99507.patch')
-rw-r--r-- | toolchain-layer/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99507.patch | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/toolchain-layer/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99507.patch b/toolchain-layer/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99507.patch new file mode 100644 index 0000000000..f3d5eee6e7 --- /dev/null +++ b/toolchain-layer/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99507.patch @@ -0,0 +1,20 @@ +2011-05-03 Tom de Vries <tom@codesourcery.com> + + gcc/ + * stmt.c (set_jump_prob): Make robust against *inv_scale == 0. + +=== modified file 'gcc/stmt.c' +--- old/gcc/stmt.c 2011-02-07 13:23:30 +0000 ++++ new/gcc/stmt.c 2011-05-06 19:17:34 +0000 +@@ -2312,7 +2312,9 @@ + set_jump_prob (rtx jump, int prob, int *inv_scale) + { + /* j[i] = p[i] * scale / REG_BR_PROB_BASE. */ +- int jump_prob = prob * REG_BR_PROB_BASE / *inv_scale; ++ int jump_prob = (*inv_scale > 0 ++ ? prob * REG_BR_PROB_BASE / *inv_scale ++ : REG_BR_PROB_BASE / 2); + /* f[i] = REG_BR_PROB_BASE - j[i]. */ + int fallthrough_prob = REG_BR_PROB_BASE - jump_prob; + + |