I've committed this patch to remove library versions of the num threads and
thread id. This has been busted since my reorg of the tid and ntid builtins,
but wasn't noticed because they're not used anyway.
nathan
2015-07-10 Nathan Sidwell
* config/nvptx/gomp
than
2015-07-10 Nathan Sidwell
* config/nvptx/mkoffload.c (Q): New macro.
(proacess): Use it for emitting code.
Index: config/nvptx/mkoffload.c
===
--- config/nvptx/mkoffload.c(revision 225703)
+++ config/nv
On 07/12/15 05:39, Thomas Schwinge wrote:
Hi!
On Fri, 10 Jul 2015 18:50:20 -0400, Nathan Sidwell
wrote:
it looks like the most recent merge from trunk to gomp4 was early May. I think
it is time for another one -- can you handle that?
Indeed :-) -- and, as it happens, resolving the "
On 07/13/15 07:26, Thomas Schwinge wrote:
Hi!
On Fri, 10 Jul 2015 11:04:14 +0200, I wrote:
On Thu, 09 Jul 2015 20:25:22 -0400, Nathan Sidwell wrote:
This is the patch I committed.
2. Don't be shy to remove a bunch of XFAILs, in fact all :-) of those
remaining from the test cases
Ilya,
GOMP_offload_register's target data argument is 'void *'. Is there any reason
it shouldn't be 'const void *'? It would seem to me that that would be better?
(a cursory look at i386/intelmic-mkoffload.c suggests a lack of consts in the
variable decls there. ptx suffers the same problem
Bernd,
this patch changes the offload target data type from an array of void *, to a
struct, which is somewhat easier to deal with than remembering numeric indices
and type casts.
This is step 1 in reworking the launch API.
ok?
nathan
2015-07-13 Nathan Sidwell
gcc/
* config/nvptx
On 07/13/15 09:49, Ilya Verbin wrote:
On Mon, Jul 13, 2015 at 09:42:50 -0400, Nathan Sidwell wrote:
GOMP_offload_register's target data argument is 'void *'. Is there
any reason it shouldn't be 'const void *'? It would seem to me that
that would be better?
(a
tch in this series to break the API between mkoffload and
libgomp -- adding version numbering. I could do this just for PTX (and have an
inferior long term solution), or modify intelmic too. Preference?
nathan
2015-07-14 Nathan Sidwell
gcc/
* config/i386/intelmic-mkoffload.c (generate_
On 07/14/15 04:25, Thomas Schwinge wrote:
addr = gen_rtx_MEM (mode, addr);
addr = gen_rtx_UNSPEC (mode, gen_rtvec (1, addr), UNSPEC_SHARED_DATA);
- if (pm & PM_read)
+ if (pm == PM_read)
res = gen_rtx_SET (addr, reg);
- if (pm & PM_write)
+ else
On 07/15/15 04:42, Ilya Verbin wrote:
2015-07-15 2:59 GMT+03:00 Nathan Sidwell :
The other thing this does is change the interface between libgommp and the plugin's
load_image and unload_image routines. I've added the ability to return a pointer to
target-specific connection data
ading the target images before
destroying the memory maps containing said images. Mkoffloads now emits a
static destructor call.
Ok for gomp4?
nathan
2015-07-15 Nathan Sidwell
libgomp/
* target.c (gomp_offload_image_to_device): Rename to ...
(gomp_load_image_to_device): ...
I've applied this obvious patch to trunk to make mkoffloads work for C++. The
equivalent is already on the gomp4 branch.
nathan
2015-07-15 Nathan Sidwell
* config/nvptx/mkoffload.c (process): Add C++ protection to
emitted code.
Index: config/nvptx/mkoffl
I'm almost tempted to commit as obvious. I noticed that the callers of these
functions from code generated by mkoffload declare the 2nd arg as an int,
because they have no visibility of the enum. I thought it wise to make the
definitions match.
ok for trunk?
nathan
2015-07-15 N
I've applied this patch to gomp4 branch. I found it useful to know the compute
grid dimensions when spawning a kernel.
nathan
2015-07-15 Nathan Sidwell
* plugin/plugin-nvptx.c (nvptx_exec): Show grid dimensions in
debug message.
Index: plugin/plugin-nv
for trunk?
nathan
2015-07-15 Nathan Sidwell
gcc/
* config/nvptx/mkoffload.c (process): Constify host data.
* config/i386/intelmic-mkoffload.c (generate_target_descr_file):
Constify host data.
(generate_host_descr_file): Likewise.
libgomp/
* target.c (struct_offload_image_descr): Constify
On 07/15/15 20:55, Bernd Schmidt wrote:
On 07/15/2015 08:55 PM, Nathan Sidwell wrote:
I've applied this obvious patch to trunk to make mkoffloads work for
C++. The equivalent is already on the gomp4 branch.
Not really objecting, but why is this necessary? We control how to compile the
On 07/16/15 07:41, Ilya Verbin wrote:
On Wed, Jul 15, 2015 at 20:56:50 -0400, Nathan Sidwell wrote:
Index: gcc/config/nvptx/mkoffload.c
===
- fprintf (out, "extern void *__OFFLOAD_TABLE__[];\n\n");
+ fprintf (out, &qu
I've committed this patch to fix a bug in the worker spill/fill code. We ended
up not incrementing the pointer, resulting in the stack frame being filled with
the same value.
Thanks to Jim for finding the failure.
nathan
2015-07-16 Nathan Sidwell
* config/nvptx/nvptx.c (nvptx_gen_
(and
to not use e.g. mixed-case "nVidia" or "acc_device_nvidia" names, which
are contrary to the recommendations in the spec).
OK to apply, or any comments?
thanks!
--
Nathan Sidwell
On 07/13/15 10:33, Bernd Schmidt wrote:
On 07/13/2015 03:57 PM, Nathan Sidwell wrote:
this patch changes the offload target data type from an array of void *,
to a struct, which is somewhat easier to deal with than remembering
numeric indices and type casts.
This is step 1 in reworking the
Jakub, Ilya,
this patch against trunk constifies the offload target data. I'm having
difficulty building an intelmic toolchain, so the changes there aren't tested.
Ilya, if you could check them, that'd be great.
nathan
2015-07-16 Nathan Sidwell
gcc/
* config/nvptx/mkoff
On 07/17/15 07:05, Jakub Jelinek wrote:
On Fri, Jul 17, 2015 at 02:01:12PM +0300, Ilya Verbin wrote:
On Thu, Jul 16, 2015 at 16:08:47 -0400, Nathan Sidwell wrote:
Jakub, Ilya,
this patch against trunk constifies the offload target data. I'm
having difficulty building an intelmic toolchai
On 07/17/15 10:44, Jakub Jelinek wrote:
On Wed, Jul 15, 2015 at 03:04:30PM -0400, Nathan Sidwell wrote:
I'm almost tempted to commit as obvious. I noticed that the callers of
these functions from code generated by mkoffload declare the 2nd arg as an
int, because they have no visibility o
On 07/17/15 15:42, Jason Merrill wrote:
On 07/08/2015 10:50 AM, Nathan Sidwell wrote:
On 06/30/15 19:21, Nathan Sidwell wrote:
On 06/30/15 00:19, Jason Merrill wrote:
On 06/29/2015 06:57 PM, Nathan Sidwell wrote:
* method.c (synthesized_method_walk): Skip virtual bases of
abstract
Tom,
as we discussed this patch removes the GOACC_kernels call, which forwards to
GOACC_parallel. We simply call GOACC_parallel directly.
ok for gomp4 branch?
nathan
2015-07-19 Nathan Sidwell
gcc/
* omp-low.c (expand_omp_target): Convert to
BUILT_IN_GOACC_PARALLEL. Remove
this trunk patch refactors libgomp's goacc_wait, which is used for two different
purposes.
1) when openacc pragmas specify a (non-zero) waits.
2) when the wait pragma itself specifies a zero number of waits.
this leads to #2 calling goacc_wait with num_waits=0, and forces #1 to never do
that.
-allocated vector of offloaded functions,
with some totally bogus code in the unload routine. This is currently not used,
because there is no unloading destructor. The patch fixes that.
A followup patch will then be able to enable unloading.
ok for trunk?
nathan
2015-07-18 Nathan Sidwell
funcs that should be converted to something else before the end of
compilation.
nathan
2015-07-19 Nathan Sidwell
gcc/
* omp-low.c (expand_omp_target): Convert to
BUILT_IN_GOACC_PARALLEL. Remove BUILT_IN_GOACC_KERNELS cases.
* omp-builtins.def (BUILT_IN_GOACC_KERNELS): Delete.
libgomp/
*
On 07/20/15 05:54, Tom de Vries wrote:
Turning it into an internal fn will make it harder to convert a
GOACC_kernels_internal call into a GOACC_parallel call, which we're doing here
I wondered ...
On 07/18/15 11:37, Thomas Schwinge wrote:
Hi Nathan!
For OpenACC nvptx offloading, there must still be something wrong; here's
a count of the (non-deterministic!) regressions of ten runs of the
libgomp testsuite. As private-vars-loop-worker-5.c fails most often, it
probably makes sense to loo
a single array describing the builtins and
allowing direct indexing using the builtin number, rather than iteration when
expanding.
ok?
nathan
2015-07-20 Nathan Sidwell
* config/nvptx/nvptx.c (nvptx_builtins): Delete enum.
(nvptx_types): New enum.
(builtin_description): Add type and
On 07/20/15 09:01, Nathan Sidwell wrote:
On 07/18/15 11:37, Thomas Schwinge wrote:
Hi Nathan!
For OpenACC nvptx offloading, there must still be something wrong; here's
a count of the (non-deterministic!) regressions of ten runs of the
libgomp testsuite. As private-vars-loop-worker-5.c
On 07/19/15 17:04, Nathan Sidwell wrote:
Hi,
this patch fixes the ptx plugin's management of offloaded functions. Currently
it has a single global list of functions. But it should track this information
per ptx device instance. I've moved the linked list into the per-device data
On 07/19/15 08:37, Nathan Sidwell wrote:
this trunk patch refactors libgomp's goacc_wait, which is used for two different
purposes.
1) when openacc pragmas specify a (non-zero) waits.
2) when the wait pragma itself specifies a zero number of waits.
this leads to #2 calling goacc_wait
thful.
ok for trunk?
nathan
2015-07-20 Nathan Sidwell
libgomp/
* target.c (gomp_offload_image_to_device): Rename to ...
(gomp_load_image_to_device): ... here.
(GOMP_offload_register): Adjust call.
(gomp_init_device): Likewise.
(gomp_unload_image_from_device): New. Broken o
On 07/21/15 05:51, Jakub Jelinek wrote:
On Mon, Jul 20, 2015 at 07:08:55PM -0400, Nathan Sidwell wrote:
2015-07-20 Nathan Sidwell
libgomp/
* target.c (gomp_offload_image_to_device): Rename to ...
(gomp_load_image_to_device): ... here.
(GOMP_offload_register
Advice
sought.
ok?
nathan
2015-07-21 Nathan Sidwell
include/
* gomp-constants.h (GOMP_VERSION, GOMP_VERSION_NVIDIA_PTX): New.
(GOMP_VERSION_PACK, GOMP_VERSION_LIB, GOMP_VERSION_DEV): New.
libgomp/
* plugin/plugin-nvptx.c: Include gomp-constants.h.
(GOMP_OFFLOAD_load_image): Replace wit
On 07/21/15 09:20, Ilya Verbin wrote:
On Tue, Jul 21, 2015 at 08:15:41 -0400, Nathan Sidwell wrote:
On 07/21/15 05:51, Jakub Jelinek wrote:
On Mon, Jul 20, 2015 at 07:08:55PM -0400, Nathan Sidwell wrote:
2015-07-20 Nathan Sidwell
libgomp/
* target.c
On 07/21/15 09:25, Nathan Sidwell wrote:
This trunk patch implements new register and unregister entry points to allow
specifying data version information. (I'll shortly be posting patches changing
the PTX offload data format.)
We now have GOMP_offload_{,un}register_2, which take an addit
On 07/18/15 11:37, Thomas Schwinge wrote:
Hi Nathan!
On Thu, 09 Jul 2015 20:25:22 -0400, Nathan Sidwell wrote:
This is the patch I committed. [...]
Prompted by your recent "-O0 patch" to »[f]ix PTX worker spill/fill«, I
used the attached patch 0001-O0-libgomp-C-C-testing.patch to
On 07/20/15 11:08, Nathan Sidwell wrote:
On 07/20/15 09:01, Nathan Sidwell wrote:
On 07/18/15 11:37, Thomas Schwinge wrote:
Hi Nathan!
For OpenACC nvptx offloading, there must still be something wrong; here's
a count of the (non-deterministic!) regressions of ten runs of the
li
On 07/21/15 11:21, Nathan Sidwell wrote:
On 07/21/15 09:25, Nathan Sidwell wrote:
This trunk patch implements new register and unregister entry points to allow
specifying data version information. (I'll shortly be posting patches changing
the PTX offload data format.)
We now
trunk?
nathan
2015-07-24 Nathan Sidwell
* gimplify.c (omp_default_clause): New function. Reorganize flow
for clarity. Broken out of ...
(omp_notice_variable): ... here.
Index: gcc/gimplify.c
===
--- gcc/gimplify.c (revision
On 07/24/15 11:22, Jakub Jelinek wrote:
On Fri, Jul 24, 2015 at 11:10:59AM -0400, Nathan Sidwell wrote:
+case OMP_CLAUSE_DEFAULT_NONE:
+ {
+ const char *accn;
Can you rename this variable to something that makes sense?
kind, or construct, or name, or directive?
Hm, yeah
On 07/24/15 12:30, Jakub Jelinek wrote:
So there is no version anywhere? I remember in the design ideas the plan
was that the data section containing the target info (that originally has
been meant to be passed as GOMP_target parameter, but later on has been
changed to the register/unregister a
I've committed this to gomp4 branch. It's the openacc equivalent of the omp
cleanup I committed earlier to both trunk and gomp4.
nathan
2015-07-24 Nathan Sidwell
* gimplify.c (device_resident_p): New function, broken out of
omp_notice_variable.
(oacc_default_clause): Ne
ading functions, so don't expect
a NULL value. We can simply check the returned value and only need dlerror when
we get NULL. The counting that DLSYM_OPT does was somewhat funky too. IMHO
better for that macro to simply return a truth value.
ok for trunk?
nathan
2015-07-24 Nathan Sidwell
On 07/24/15 15:51, Ilya Verbin wrote:
On Fri, Jul 24, 2015 at 15:26:38 -0400, Nathan Sidwell wrote:
mber into mkoffload:process () like:
865 fprintf (out, "static const void *target_data[] = {\n");
866 fprintf (out, " MAGIC, VERSION, ptx_code, (void*) %u, var_mappings, (vo
I've committed this to gomp4 branch. It fixes some tests that were incorrect
and fail with some development I am working on.
nathan
2015-07-25 Nathan Sidwell
* testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Copy lresult,
not result for logical reductions.
* testsuite/libgomp.o
unted on that bit and
simply added a 'void *' cast when calling it.
I've not checked the intelmic library, and suspect that will need some consts
adding -- is that something you can do Ilya?
nathan
2015-07-26 Nathan Sidwell
libgomp/
* libgomp.h (struct acc_dispatch_t):
tweaked the setting of GOVD_ flags
slightly, to make the firstprivate handling I'm working on less invasive.
nathan
2015-07-26 Nathan Sidwell
* gimplify.c (oacc_default_clause): Fallthrough to unspecified
handling. Propagate mapping from outer scop
On 07/27/15 04:23, Jakub Jelinek wrote:
On Sun, Jul 26, 2015 at 11:01:09AM -0400, Nathan Sidwell wrote:
I found some more missing consts. The size, kind, var and function arrays
emitted by omp-low are read only, but are not so marked. This patch
First of all, the hostaddrs array is going to
On 07/27/15 07:43, Jakub Jelinek wrote:
On Mon, Jul 27, 2015 at 07:33:59AM -0400, Nathan Sidwell wrote:
They are only global objects if they are filled with constants.
Right know for kinds array that is true always, for sizes array if no VLAs
nor variable length array sections are used.
They
On 07/24/15 09:32, Nathan Sidwell wrote:
On 07/21/15 11:21, Nathan Sidwell wrote:
I committed a version to gomp4 branch, but would still like to get this to trunk
ASAP.
I committed this update to the gomp4 branch to match the updated version
currently under review for trunk.
nathan
On 07/27/15 11:21, Tom de Vries wrote:
On 26/07/15 19:09, Nathan Sidwell wrote:
I've committed this update to my earlier breakout of default handling.
After complaining about something because of 'none', we should fall
through to the default handling, to prevent ICEing later (on
On 07/27/15 11:21, Tom de Vries wrote:
On 26/07/15 19:09, Nathan Sidwell wrote:
I've committed this update to my earlier breakout of default handling.
After complaining about something because of 'none', we should fall
through to the default handling, to prevent ICEing later (on
On 07/28/15 06:14, Thomas Schwinge wrote:
Hi Nathan!
On Sat, 25 Jul 2015 16:02:01 -0400, Nathan Sidwell wrote:
I've committed this to gomp4 branch. It fixes some tests that were incorrect
Hmm, I fail to see what you deem incorrect in the following two Fortran
test cases? Imp
(
nathan
--
Nathan Sidwell
ck them up and overwrite with any dynamic
ones passed in from the launch function.
nathan
2015-07-28 Nathan Sidwell
include/
* gomp-constants.h (GOMP_DIM_GANG, GOMP_DIM_WORKER,
GOMP_DIM_VECTOR): New.
(GOMP_DIM_MAX, GOMP_DIM_MASK): New.
(GOMP_LAUNCH_END, GOMP_LAUNCH_DIM,
Oh, one more thing. I placed constants for the 3 launch dimensions into
gomp-constants.h, as they are needed by both library and compiler. Working on a
patch to remove the current set of constants from omp-low.h
nathan
I've committed this to the gomp4 branch. It cleans up the existing OACC_foo
constants defined in omp-low.h, replacing them with the ones I just defined in
gomp-constants.h
nathan
2015-07-28 Nathan Sidwell
* omp-low.h (enum oacc_loop_levels): Delete.
(OACC_LOOP_MASK): Delete.
On 07/29/15 05:22, Thomas Schwinge wrote:
Hi Nathan!
On Tue, 28 Jul 2015 12:52:02 -0400, Nathan Sidwell wrote:
I've committed this patch to the gomp4 branch to redo the launch API. I'll post
a version for trunk once the versioning patch gets approved & committed.
Thanks!
(
On 07/29/15 08:24, Nathan Sidwell wrote:
On 07/29/15 05:22, Thomas Schwinge wrote:
Likewise for the other torture testing flags.
Investigating ... (I've seen those failures be intermittent)
Interestingly the fails go away with an unoptimized libgomp. I've observed
somethi
X version number, as that just got incremented for the
launch API change.
nathan
2015-07-29 Nathan Sidwell
gcc/
* config/nvptx/mkoffload.c (process): Reimplement emission of ptx
objects to set of arrays.
libgomp/
* plugin/plugin-nvptx.c (struct targ_ptx_
Jakub,
this patch augments the lto wrapper to print out the arguments to spawned
commands when verbose. I found this useful in debugging recent development.
ok for trunk?
nathan
2015-07-29 Nathan Sidwell
* lto-wrapper.c (verbose_exec): New.
(compile_offload_image, run_gcc): Call it
xical scopes to find a data
clause for the object, before applying the default behaviour. This patch
reorganizes things to make that the case.
nathan
2015-07-29 Nathan Sidwell
gcc/
* gimplify.c (oacc_default_clause): Outer scope searching moved to
omp_notice_variable.
(omp_notice_variable)
On 07/30/15 04:28, Richard Biener wrote:
On Thu, Jul 30, 2015 at 10:15 AM, Jakub Jelinek wrote:
On Thu, Jul 30, 2015 at 10:09:05AM +0200, Richard Biener wrote:
On Thu, Jul 30, 2015 at 1:05 AM, Nathan Sidwell wrote:
Jakub,
this patch augments the lto wrapper to print out the arguments to
uffle down, as that was missing.
nathan
2015-07-30 Nathan Sidwell
gcc/
* config/nvptx/nvptx.mc (UNSPEC_BROADCAST, UNSPEC_SHFL_DOWN):
Replace with ...
(UNSPEC_SHUFFLE): ... this.
(nvptx_broadcast): Replace with ...
(nvptx_shuffle): ...
On 07/29/15 17:45, Nathan Sidwell wrote:
On 07/29/15 08:24, Nathan Sidwell wrote:
On 07/29/15 05:22, Thomas Schwinge wrote:
Likewise for the other torture testing flags.
Investigating ... (I've seen those failures be intermittent)
Interestingly the fails go away with an unopti
s piece of implementation is completed.
Whilst there I noticed the shuffle, pack and unpack insns lacked register
constraints, so I added them.
nathan
2015-07-30 Nathan Sidwell
gcc/
* config/nvptx/nvptx.md (UNSPECV_UNLOCK): New.
(nvptx_shuffle): Add constraints.
(nvptx_unpack,
On 07/31/15 04:43, Jakub Jelinek wrote:
Hi!
I wonder if we shouldn't change:
TREE_TYPE (ctx->receiver_decl)
= build_qualified_type (build_reference_type (type), TYPE_QUAL_RESTRICT);
in fixup_child_record_type to add:
if (is_gimple_omp_offloaded (ctx->stmt))
type = build_qualif
On 07/24/15 15:26, Nathan Sidwell wrote:
Jakub,
this version makes the following changes to the earlier version.
*) Renames things to FOO_ver, rather than FOO_2
*) No attempt to deal with cross-version plugins and libgomp.
*) Adds GOMP_OFFLOAD_version function to plugin. (I went with your
On 07/31/15 08:16, Nathan Sidwell wrote:
On 07/24/15 15:26, Nathan Sidwell wrote:
Jakub,
this version makes the following changes to the earlier version.
*) Renames things to FOO_ver, rather than FOO_2
*) No attempt to deal with cross-version plugins and libgomp.
*) Adds GOMP_OFFLOAD_version
On 07/17/15 15:59, Nathan Sidwell wrote:
On 07/17/15 15:42, Jason Merrill wrote:
On 07/08/2015 10:50 AM, Nathan Sidwell wrote:
On 06/30/15 19:21, Nathan Sidwell wrote:
On 06/30/15 00:19, Jason Merrill wrote:
On 06/29/2015 06:57 PM, Nathan Sidwell wrote:
* method.c
(i.e. DLSYM (version);
plus the v != GOMP_VERSION checking).
Fixed.
ok? I'll commit a version of this to gomp4 branch shortly.
nathan
2015-08-01 Nathan Sidwell
gcc/
* config/nvptx/mkoffload.c (process): Replace
GOMP_offload_{,un}register with GOMP_offload_{,un}register_ver.
lib
On 08/01/15 20:06, Nathan Sidwell wrote:
ok? I'll commit a version of this to gomp4 branch shortly.
this is the gomp4 committed version.
nathan
2015-08-01 Nathan Sidwell
include/
* gomp-constants.h (GOMP_VERSION_INTEL_MIC): New.
libgomp/
* plugin/plugin-nv
I committed this to gomp4 branch to note why device type 3 is missing.
Someone's bound to forget ...
nathan
2015-08-01 Nathan Sidwell
include/
* gomp-constants.h: Note why device 3 is missing.
libgomp/
* openacc.h: Note why device 3 is missing.
* openacc.f90: Lik
I've committed this to gomp4 branch. It expands the acc_on_device builtin
earlier in the new oacc_xform pass. This will allow more optimization earlier on.
The existing expansion point now only needs to deal with the host-side case.
nathan
2015-08-02 Nathan Sidwell
gcc/
* omp-
I've committed this to gomp4. The ptx backend can now examine the openacc
attribute to determine launch dimensions and figure out whether vector or worker
single neutering is needed.
nathan
2015-08-03 Nathan Sidwell
* config/nvptx/nvptx.c (nvptx_reorg): Check get_oacc_fn_attri
On 08/03/15 07:37, Thomas Schwinge wrote:
Hi!
On Sun, 2 Aug 2015 21:23:30 -0400, Nathan Sidwell wrote:
I've committed this to gomp4 branch. It expands the acc_on_device builtin
earlier in the new oacc_xform pass. This will allow more optimization earlier
on.
Thanks!
The exi
On 08/02/15 23:44, Jason Merrill wrote:
It seems to me that DR 1658 ignores vbases of abstract classes for determining
whether a destructor is deleted, but says nothing about exception
specifications.
DR 1351 specifically ignores vbases of abstract classes for determining the
exception specifi
On 08/03/15 07:15, Thomas Schwinge wrote:
Hi!
On Sat, 1 Aug 2015 20:20:49 -0400, Nathan Sidwell wrote:
this is the gomp4 committed version.
--- liboffloadmic/plugin/libgomp-plugin-intelmic.cpp(revision 226462)
+++ liboffloadmic/plugin/libgomp-plugin-intelmic.cpp(working copy
from declare handling, as that wasn't
creating the expected omp_region context object. The previous handling of
firstprivate just happened to work. Jim has been working on resolving that problem.
nathan
2015-08-03 Nathan Sidwell
* gimplify.c (GOVD_GANGLOCAL): Delete.
(oacc_default_cla
I've committed this to gomp4. I was reusing a size_t variable in a loop where
unsigned would do, and fprintf got upset.
nathan
2015-08-03 Nathan Sidwell
* config/nvptx/mkoffload.c (process): Avoid printf formatting
warning.
Index: config/nvptx/mkoffl
calls or be accessible by
the user.
A later patch will optimize the OACC_DIM_SIZE function in the oacc-xform pass.
nathan
2015-08-03 Nathan Sidwell
gcc/
* internal-fn.def (GOACC_DIM_SIZE, GOACC_DFIM_POS): New.
* internal-fn.c (expand_GOACC_DIM_SIZE, expand_GOACC_DIM_POS): New.
* config
I've committed this to gomp4 branch. It tidies up the error message processing
and removes some code that shows a remarkable confusion about how shared
libraries work.
nathan
--
Nathan Sidwell - Director, Sourcery Services - Mentor Embedded
2015-08-03 Nathan Sidwell
libgomp/
* p
On 08/03/15 19:52, Nathan Sidwell wrote:
I've committed this to gomp4 branch. It tidies up the error message processing
and removes some code that shows a remarkable confusion about how shared
libraries work.
I've also committed it to trunk as obvious.
nathan
.
I also realized the lockk and unlock expanders needed to emit memory barriers to
that writes made by one thread in the protected region could be seen by other
threads in the region.
nathan
2015-08-04 Nathan Sidwell
* config/nvptx/nvptx.md (UNSPECV_MEMBAR): New.
(nvptx_membar): New
I've applied this to gomp4 branch.
There was an inconsistency with the 'S' assembly formatter, in that it didn't
print the leading '.', but the others did. Also the pseudo's structure is no
longer used.
nathan
2015-08-04 Nathan Sidwell
* config/nvp
This removal of unused structure is now committed to trunk too.
nathan
2015-08-04 Nathan Sidwell
* config/nvptx/nvptx.h (struct nvptx_pseudo_info): Delete.
(machine_function): Remove pseudos field.
Index: gcc/config/nvptx/nvptx.h
omically commit them.
nathan
--
Nathan Sidwell
ected diagnostic. I'll be fixing that
shortly.
nathan
2015-08-04 Nathan Sidwell
gcc/
* doc/tm.texi.in (TARGET_GOACC_VALIDATE_DIMS): Add hook.
* doc/tm.texi: Regenerated.
* target.def (TARGET_GOACC): New hook prefix.
(validate_dims): New.
* targhooks.h (default_goacc_validate_dims
I've committed this to fix the spinlock problem Cesar fell over. While there I
added more checking on the worker dimension.
nathan
2015-08-06 Nathan Sidwell
* config/nvptx/nvptx.c (nvptx_expand_lock_unlock): Create label.
(nvptx_validate_dims): Check worker dimension is not to
I realized other targets might need to do different things with the openacc fork
and join buitins. I created a new target hook and default implementation. The
default deletes the internal functions if there is no RTL expander for them.
nathan
2015-08-06 Nathan Sidwell
* doc/tm.texi.in
On 08/06/15 17:56, Cesar Philippidis wrote:
On 08/06/2015 01:41 AM, Nathan Sidwell wrote:
I've committed this to fix the spinlock problem Cesar fell over. While
there I added more checking on the worker dimension.
I hit a couple of more bugs with the spinlocks. First, the address
On 08/06/15 18:33, Cesar Philippidis wrote:
Looking at set_oacc_fn_attrib, it appears that const values are also
considered dynamic. See the attached test case more more info. Is that
the expected behavior? If not, I could take a look at this after I
finished my reduction patch.
It's annoying
02/15 02:06, Nathan Sidwell wrote:
On 07/31/15 12:10, Jakub Jelinek wrote:
This will hopefully be just GOMP_4.1 instead in the end, but it can
change when gomp-4_1-branch is merged to trunk, we don't guarantee
ABI stability at this point.
Sure.
I'd prefer version to go after d
on (unless -Wsystem-headers).
This version implements Richard's suggestion of warning flags.
nathan
2015-09-16 Nathan Sidwell
c-family/
* c.opt (Wmultiple-inheritance, Wvirtual-inheritance, Wtemplates,
Wnamespaces): New C++ warnings.
cp/
* decl.c (xref_basetypes): Check virtual
I noticed some unreachable code. Committed this.
2015-09-16 Nathan Sidwell
* omp-low.c (lower_oacc_reductions): Remove dead initialization
and unreachable code.
Index: gcc/omp-low.c
===
--- gcc/omp-low.c (revision 227792
I've applied this patch, which breaks out the offload function dimension
checking to a separate function. I'll be making use of that shortly, and
execute_oacc_transform was getting unnecessarily large.
nathan
2015-09-16 Nathan Sidwell
* omp-low.c (oacc_validate_dims): Ne
301 - 400 of 2551 matches
Mail list logo