[gomp] Fix PTX worker spill/fill
Thomas Schwinge
thomas@codesourcery.com
Fri Jul 17 09:00:00 GMT 2015
Hi!
On Thu, 16 Jul 2015 12:23:52 -0400, Nathan Sidwell <nathan@acm.org> wrote:
> 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.
> --- config/nvptx/nvptx.c (revision 225831)
> +++ config/nvptx/nvptx.c (working copy)
> @@ -1257,7 +1257,7 @@ nvptx_gen_wcast (rtx reg, propagate_mask
>
> emit_insn (res);
> emit_insn (gen_adddi3 (data->ptr, data->ptr,
> - GEN_INT (GET_MODE_SIZE (GET_MODE (res)))));
> + GEN_INT (GET_MODE_SIZE (GET_MODE (reg)))));
> res = get_insns ();
> end_sequence ();
> }
Nice; this is actually the change to resolve the FAIL for
libgomp.oacc-c-c++-common/private-vars-loop-gang-5.c I had reported in
<http://news.gmane.org/find-root.php?message_id=%3C877fq41epd.fsf%40kepler.schwinge.homeip.net%3E>.
(The testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.c regression
reported earlier in that thread remains to be addressed.) Committed to
gomp-4_0-branch in r225922:
commit 7961bf7049729aebadf639a52174be14010da499
Author: tschwinge <tschwinge@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Fri Jul 17 08:30:10 2015 +0000
libgomp: Remove XFAIL libgomp.oacc-c-c++-common/private-vars-loop-gang-5.c for acc_device_nvidia
Problem got addressed in r225896.
libgomp/
* testsuite/libgomp.oacc-c-c++-common/private-vars-loop-gang-5.c:
Remove XFAIL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gomp-4_0-branch@225922 138bc75d-0d04-0410-961f-82ee72b054a4
---
libgomp/ChangeLog.gomp | 5 +++++
.../libgomp.oacc-c-c++-common/private-vars-loop-gang-5.c | 3 ---
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git libgomp/ChangeLog.gomp libgomp/ChangeLog.gomp
index b2e4b2c..0293ad5 100644
--- libgomp/ChangeLog.gomp
+++ libgomp/ChangeLog.gomp
@@ -1,3 +1,8 @@
+2015-07-17 Thomas Schwinge <thomas@codesourcery.com>
+
+ * testsuite/libgomp.oacc-c-c++-common/private-vars-loop-gang-5.c:
+ Remove XFAIL.
+
2015-07-15 Nathan Sidwell <nathan@codesourcery.com>
* plugin/plugin-nvptx.c (nvptx_exec): Show grid dimensions in
diff --git libgomp/testsuite/libgomp.oacc-c-c++-common/private-vars-loop-gang-5.c libgomp/testsuite/libgomp.oacc-c-c++-common/private-vars-loop-gang-5.c
index a710849..b070773 100644
--- libgomp/testsuite/libgomp.oacc-c-c++-common/private-vars-loop-gang-5.c
+++ libgomp/testsuite/libgomp.oacc-c-c++-common/private-vars-loop-gang-5.c
@@ -1,6 +1,3 @@
-/* main: Assertion `arr[i] == i + (i % 8) * 2' failed.
- { dg-xfail-run-if "TODO" { openacc_nvidia_accel_selected } { "*" } { "" } } */
-
#include <assert.h>
/* Test of gang-private array variable declared on loop directive, with
Grüße,
Thomas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 472 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20150717/a1a2d2af/attachment.sig>
More information about the Gcc-patches
mailing list