[PATCH,PTX] Add support for CUDA 9

Richard Biener rguenther@suse.de
Tue Feb 27 14:12:00 GMT 2018


On Tue, 27 Feb 2018, Thomas Schwinge wrote:

> Hi!
> 
> Given that several users have run into this, is this (trunk r256891) OK
> to commit to open release branches, too.

Sure.

> On Fri, 19 Jan 2018 09:42:08 +0100, Tom de Vries <Tom_deVries@mentor.com> wrote:
> > On 01/19/2018 01:59 AM, Cesar Philippidis wrote:
> > > Here's the updated patch with the changes that you requested. There are
> > > no new regressions in trunk. I tested it on my desktop running driver
> > > 387.34 on a Pascal GPU.
> > > 
> > > Is this OK for trunk?
> > 
> > OK with 'PR target/83790' added to the changelog entry.
> > 
> > Thanks,
> > - Tom
> > 
> > > 
> > > trunk-cuda9.diff
> > > 
> > > 
> > > 2018-01-18  Cesar Philippidis  <cesar@codesourcery.com>
> > > 
> > > 	gcc/
> > > 	* config/nvptx/nvptx.c (output_init_frag): Don't use generic address
> > > 	spaces for function labels.
> > > 
> > > 	gcc/testsuite/
> > > 	* gcc.target/nvptx/indirect_call.c: New test.
> > > 
> > > diff --git a/gcc/config/nvptx/nvptx.c b/gcc/config/nvptx/nvptx.c
> > > index 86fc13f4fc0..4cb87c8ad07 100644
> > > --- a/gcc/config/nvptx/nvptx.c
> > > +++ b/gcc/config/nvptx/nvptx.c
> > > @@ -1899,9 +1899,15 @@ output_init_frag (rtx sym)
> > >     
> > >     if (sym)
> > >       {
> > > -      fprintf (asm_out_file, "generic(");
> > > +      bool function = (SYMBOL_REF_DECL (sym)
> > > +		       && (TREE_CODE (SYMBOL_REF_DECL (sym)) == FUNCTION_DECL));
> > > +      if (!function)
> > > +	fprintf (asm_out_file, "generic(");
> > >         output_address (VOIDmode, sym);
> > > -      fprintf (asm_out_file, val ? ") + " : ")");
> > > +      if (!function)
> > > +	fprintf (asm_out_file, ")");
> > > +      if (val)
> > > +	fprintf (asm_out_file, " + ");
> > >       }
> > >   
> > >     if (!sym || val)
> > > diff --git a/gcc/testsuite/gcc.target/nvptx/indirect_call.c b/gcc/testsuite/gcc.target/nvptx/indirect_call.c
> > > new file mode 100644
> > > index 00000000000..39992a7137b
> > > --- /dev/null
> > > +++ b/gcc/testsuite/gcc.target/nvptx/indirect_call.c
> > > @@ -0,0 +1,19 @@
> > > +/* { dg-options "-O2 -msoft-stack" } */
> > > +/* { dg-do run } */
> > > +
> > > +int
> > > +f1 (int a)
> > > +{
> > > +  return a + 1;
> > > +}
> > > +
> > > +int (*f2)(int) = f1;
> > > +
> > > +int
> > > +main ()
> > > +{
> > > +  if (f2 (100) != 101)
> > > +    __builtin_abort();
> > > +
> > > +  return 0;
> > > +}
> 
> 
> Grüße
>  Thomas
> 
> 

-- 
Richard Biener <rguenther@suse.de>
SUSE LINUX GmbH, GF: Felix Imendoerffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nuernberg)


More information about the Gcc-patches mailing list