summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorktietz <ktietz@138bc75d-0d04-0410-961f-82ee72b054a4>2012-12-10 10:00:19 +0000
committerktietz <ktietz@138bc75d-0d04-0410-961f-82ee72b054a4>2012-12-10 10:00:19 +0000
commitad49e9c0063171bb3f844dee1f483ed335434071 (patch)
tree7546173bc75430dca4ec2646c9785a4e5906f36f
parentf1a88d1ee58d70f9a23993fb3e4fbc820960c8cd (diff)
downloadppe42-gcc-ad49e9c0063171bb3f844dee1f483ed335434071.tar.gz
ppe42-gcc-ad49e9c0063171bb3f844dee1f483ed335434071.zip
* stmt.c (expand_sjlj_dispatch_table): Fix off by one.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194351 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog2
-rw-r--r--gcc/stmt.c2
2 files changed, 3 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ee799892b31..b5c23a7fe5f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,7 @@
2012-12-10 Kai Tietz <ktietz@redhat.com>
+ * stmt.c (expand_sjlj_dispatch_table): Fix off by one.
+
PR target/53912
* stmt.c (compute_cases_per_edge): Cast from pointer via intptr_t.
(expand_case): Likewise.
diff --git a/gcc/stmt.c b/gcc/stmt.c
index 2227810f55b..eb7f9224060 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -2282,7 +2282,7 @@ expand_sjlj_dispatch_table (rtx dispatch_index,
tree range = maxval;
rtx default_label = gen_label_rtx ();
- for (int i = ncases - 1; i > 0; --i)
+ for (int i = ncases - 1; i >= 0; --i)
{
tree elt = dispatch_table[i];
tree low = CASE_LOW (elt);
OpenPOWER on IntegriCloud