| Submitter | Matthew Gretton-Dann |
|---|---|
| Date | Sept. 25, 2012, 7:12 p.m. |
| Message ID | <3828314.5fHR3eBOVy@e103209-lin> |
| Download | mbox | patch |
| Permalink | /patch/186880/ |
| State | New |
| Headers | show |
Comments
On Tue, Sep 25, 2012 at 9:12 PM, Matthew Gretton-Dann <matthew.gretton-dann@linaro.org> wrote: >> No, I mean using the onlyjump_p predicate. > > Again sorry for the delay. Attached is an updated patch using the onlyjump_p > predicate as suggested by Steven. + if (onlyjump_p (BB_END (pred->src))) Eh, don't you want (!onlyjump_p (BB_END (pred->src))) ? Note the "not". You also have to deal with non-jump BB_END insns. Ciao! Steven
Patch
diff --git a/gcc/postreload-gcse.c b/gcc/postreload-gcse.c index b9e9f25..412c8fc 100644 --- a/gcc/postreload-gcse.c +++ b/gcc/postreload-gcse.c @@ -925,6 +925,9 @@ bb_has_well_behaved_predecessors (basic_block bb) if (JUMP_TABLE_DATA_P (BB_END (pred->src))) return false; + + if (onlyjump_p (BB_END (pred->src))) + return false; } return true; }