gcc

~vcs-imports/gcc/+git/gcc:matz/polyimpro

Last commit made on 2019-02-27
Get this branch:
git clone -b matz/polyimpro https://git.launchpad.net/~vcs-imports/gcc/+git/gcc

Branch merges

Branch information

Name:
matz/polyimpro
Repository:
lp:~vcs-imports/gcc/+git/gcc

Recent commits

ae4844c... by Michael Matz <email address hidden>

Fix miscompiles

there's a separate PBB for the out-of-ssa "copies" from BB to successor.
We always must add reads of incoming args even if the definition was
within the BB as it's bound to be in a different PBB.
Also generate those out-of-ssa copies only for the black box for
which they were analyzed, not for all of them.

e5cc8a7... by Michael Matz <email address hidden>

separate components for black boxes

this now splits them per component instead of per basic block.
regresses some testcases. Possibly due to incorrect handling of
cross BB borders in the code generator (if there are multiple components
within a basic block the phi nodes and some other statements are
emitted multiple times).

4941e9c... by Michael Matz <email address hidden>

Move data refs to poly_bb

from gimple_poly_bb. poly_bb is going to be smaller than a basic
block, so needs its own data refs (including the scalar ones).
Now only the conditions (which are per basic block) remain in
gimple_poly_bb. Maybe domain and iterators could move from
poly_bb to gimple_poly_bb as those are per basic block as well (?).

b0e4f01... by Michael Matz <email address hidden>

Add black box search

searches for stmts related to each other within a basic block.
Only those need to be within one polyhedral black box.
Relatedness follows from SSA edges (those would bind the individual
statements to each other via dependencies if they were left separate).
This state searches for components but the clobbers them still together
into one PBB for the whole basic block.

25b9cf4... by Michael Matz <email address hidden>

Tidy

remove gimple_poly_bb.pbb
push pbb to scop in new_poly_bb

7d60be4... by Michael Matz <email address hidden>

start moving some code

2ee1b37... by Michael Matz <email address hidden>

add split_memrefs

this is essentially what we want to reach in the end, only related
data-refs should be part of a black box. Simulate this by splitting
bbs after each write.

7469464... by Michael Matz <email address hidden>

tidy code

d9fb0d2... by amonakov <amonakov@138bc75d-0d04-0410-961f-82ee72b054a4>

doc: showcase a "union of vectors" pattern (PR 88698)

 PR c/88698
 * doc/extend.texi (Vector Extensions): Add an example of using vector
 types together with x86 intrinsics.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@268522 138bc75d-0d04-0410-961f-82ee72b054a4

6c23b2c... by marxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4>

Do not dereference NULL pointer in resolve_ref (PR fortran/89185).

2019-02-04 Martin Liska <email address hidden>

 PR fortran/89185
 * resolve.c (resolve_ref): Remove breakout variable as
 we need to prevent prev = &(*prev)->next to happen
 with *prev == NULL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@268521 138bc75d-0d04-0410-961f-82ee72b054a4