Hi!

On Mon, Feb 03, 2020 at 08:26:02PM -0600, Bill Schmidt wrote:
> Includes header documentation and initial set of include directives.

Please use full sentences in commit messages.

> +/* This program generates built-in function initialization and
> +   recognition code for Power targets, based on text files that
> +   describe the built-in functions and vector overloads:
> +
> +     rs6000-bif.def       Table of built-in functions
> +     rs6000-overload.def  Table of overload functions

I really don't think using the new acronym "bif" helps; built-in
functions already are often called "builtins" (or "intrinsics", which is
problematic itself).

> +     ext     Process as a vec_extract function

Please spell out "extract"?  There are too many other words starting with
"ext", some of which you could expect here ("extend", "extension", maybe
even "extra");

> +     ldv     Needs special handling for vec_ld semantics
> +     stv     Needs special handling for vec_st semantics

Call those "vec_ld" and "vec_st", then?  Or should I get used to it, the
names aren't obvious, but cut-and-paste always is ;-)

> +[TARGET_ALTIVEC]

Can this be a C expression?  Most gen* programs just copy similar things
to the generated C code, which can be interesting to debug, but works
perfectly well otherwise.

> +  const vector signed char __builtin_altivec_abs_v16qi (vector signed char);
> +    ABS_V16QI absv16qi2 {abs}
> +  const vector signed short __builtin_altivec_abs_v8hi (vector signed short);
> +    ABS_V8HI absv8hi2 {abs}
> +
> +   Note the use of indentation, which is recommended but not required.

It does require a single newline at the end of each such line, right?
Does that work aout almost always, or do you get very long lines?

> +     [<overload-id>, <external-name>, <internal-name>]

Hrm, "internal" suggests "name within the GCC code", but that is not what
it means.  Maybe something like abi-name and builtin-name?

> +  Blank lines may be used as desired in these files.

Between stanzas and stuff only?  There are places where newlines are
significant and not just whitespace, right?

Great docs, thanks!


Segher

Reply via email to