On 10/23/15 09:16, Jakub Jelinek wrote:
On Fri, Oct 23, 2015 at 09:13:43AM -0400, Nathan Sidwell wrote:
You're correct that the SESE region could be split across a function
boundary in the manner you describe, but the complexity of dealing with
that in the backend's partitioning code would be high. Let's not try and
enable that from the get-go.
Sure, but then you probably need to tweak the fnsplit pass to guarantee
that.
Ok, I'll take a look at that too.
The gimple_call_set_ctrl_altering approach is looking good for the moment.
Richard, if that works out, so we only have to check unique_p on the last insn
of a bb, does that satisfy your concerns? (Of course I'll repost patch 1 for
review).
WRT the other patches I think the status is:
01-trunk-unique.patch
Internal function with a 'uniqueness' property
* reworking as described.
02-trunk-nvptx-partition.patch
NVPTX backend patch set for partitioned execution
* approved with minor edits
03-trunk-hook.patch
OpenACC hook
* approved with minor edit
04-trunk-c.patch
C FE changes
* Being addressed by Cesar
05-trunk-cxx.patch
C++ FE changes
* Being addressed by Cesar
06-trunk-red-init.patch
Placeholder to keep reductions functioning
* Approved
07-trunk-loop-mark.patch
Annotate OpenACC loops in device-agnostic manner
* Addressing minor comments
08-trunk-dev-lower.patch
Device-specific lowering of loop markers
* Question asked & answered about non-ptx behaviour
09-trunk-lower-gate.patch
Run oacc_device_lower pass regardless of errors
* Approved
10-trunk-libgomp.patch
Libgomp change (remove dimension check)
* Approved
11-trunk-tests.patch
Initial set of execution tests
* Approved, but C& C++ error tests needed
I'll repost:
01-trunk-unique.patch
Internal function with a 'uniqueness' property
That has some obvious knock on changes to 02, 07 and 08, do you want those
reposted for review?
Cesar will repost:
04-trunk-c.patch
C FE changes
05-trunk-cxx.patch
C++ FE changes
The remaining patch:
08-trunk-dev-lower.patch
Device-specific lowering of loop markers
seems to be waiting on Jakub?
nathan