Hi Kelvin,

On Fri, Dec 09, 2016 at 11:39:36AM -0700, Kelvin Nilsen wrote:
> +#ifndef HAVE_AS_POWER9
> +#define HAVE_AS_POWER9 0
> +#endif
> +#ifndef HAVE_AS_POWER8
> +#define HAVE_AS_POWER8 0
> +#endif
> +#ifndef HAVE_AS_POPCNTD
> +#define HAVE_AS_POPCNTD 0
> +#endif
> +#ifndef HAVE_AS_DFP
> +#define HAVE_AS_DFP 0
> +#endif
> +#ifndef HAVE_AS_POPCNTB
> +#define HAVE_AS_POPCNTB 0
> +#endif

Hrm.  The only other file that uses these is rs6000.h, and it uses ifdef;
it's a bit confusing to redefine it here.

> +      if (!have_cpu)
> +     {
> +       /* PowerPC 64-bit LE requires at least ISA 2.07.  */
> +       const char *default_cpu = ((!TARGET_POWERPC64)
> +                                  ? "powerpc"
> +                                  : ((BYTES_BIG_ENDIAN)
> +                                     ? "powerpc64"
> +                                     : "powerpc64le"));

Please lose all parens here (except maybe the very outer ones, emacs needs
that it seems?)

> +      gcc_assert (d->icode > 0);

gcc_assert (d->icode != CODE_FOR_nothing);  (throughout)

> +      /* It is expected that these dst built-in functions have
> +      d->icode equal to CODE_FOR_nothing.  */

> +      /* It is expected that these htm built-in functions have
> +      d->icode equal to CODE_FOR_nothing.  */

Should they?  Expected who what where?  _Should_ have or _can_ have?
I think you mean
  /* d->icode can be CODE_FOR_nothing here.  */

> +/* It is desirable to require-effective-target to be p5_ok, but there's
> +   no such effective target, so we're just assuming that the effective
> +   target is at minimum power5 ok.  This test will fail if the
> +   effective target is not power 5 ok, but there is no dg directive to
> +   "unsupport" this test on such a platform.  */

You could write one...

> +/* This test follows the pattern of pr78056-2.c, which has been
> + * exercised with binutils 2.25.  This test, however, has not
> + * been exercised because the author of the test does not have access
> + * to a development environment that succesfully bootstraps gcc
> + * while at the same lacking assembler support for power 6.  */

Heh.  Yeah, supporting downlevel assemblers makes the testing matrix
explode.  We probably should refuse any binutils that does not at least
support p8 (on Linux only?)  (To be clear, I'm not asking you to do this).


Segher

Reply via email to