Commit 7bcc3c86 by Nathan Sidwell Committed by Nathan Sidwell

target-supports.exp (check_effective_target_offload_nvptx): New.

	* lib/target-supports.exp (check_effective_target_offload_nvptx): New.
	* gcc.dg/goacc/nvptx-merged-loop.c: New.

From-SVN: r230353
parent 5f0ba745
2015-11-13 Nathan Sidwell <nathan@codesourcery.com>
* lib/target-supports.exp (check_effective_target_offload_nvptx): New.
* gcc.dg/goacc/nvptx-merged-loop.c: New.
2015-11-13 Steven G. Kargl <kargl@gccc.gnu.org>
PR fortran/68319
......
/* { dg-do link } */
/* { dg-require-effective-target offload_nvptx } */
/* { dg-options "-fopenacc -O2 -foffload=-fdump-rtl-mach\\ -dumpbase\\ nvptx-merged-loop.c\\ -Wa,--no-verify" } */
#define N (32*32*32+17)
void __attribute__ ((noinline)) Foo (int *ary)
{
int ix;
#pragma acc parallel num_workers(32) vector_length(32) copyout(ary[0:N])
{
/* Loop partitioning should be merged. */
#pragma acc loop worker vector
for (unsigned ix = 0; ix < N; ix++)
{
ary[ix] = ix;
}
}
}
int main ()
{
int ary[N];
Foo (ary);
return 0;
}
/* { dg-final { scan-rtl-dump "Merging loop .* into " "mach" } } */
......@@ -6716,3 +6716,11 @@ proc check_effective_target_vect_max_reduc { } {
}
return 0
}
# Return 1 if there is an nvptx offload compiler.
proc check_effective_target_offload_nvptx { } {
return [check_no_compiler_messages offload_nvptx object {
int main () {return 0;}
} "-foffload=nvptx-none" ]
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment