diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-06-04 04:06:38 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-06-04 04:06:38 +0000 |
commit | f2cc13dca29bdf300dc4a2c521f591902e9a3637 (patch) | |
tree | 746fbf6770987cdd4f33bdefab1d56212eff1733 /gcc/doc | |
parent | fabbeb08bc3466ada44ba1837a9785f47fee25fd (diff) | |
download | gcc-f2cc13dca29bdf300dc4a2c521f591902e9a3637.tar.gz |
* config/alpha/alpha.c (reg_or_const_int_operand): New.
(some_operand, input_operand): Accept CONST_VECTOR.
(alpha_extra_constraint): Add 'W'.
(alpha_expand_zap_mask): New.
(alpha_expand_builtin_vector_binop): New.
(enum alpha_builtin): New.
(zero_arg_builtins, one_arg_builtins, two_arg_builtins): New.
(alpha_init_builtins, alpha_expand_builtin): New.
(TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): New.
* config/alpha/alpha.h (VECTOR_MODE_SUPPORTED_P): New.
(PREDICATE_CODES): Update.
* config/alpha/alpha-protos.h: Update.
* config/alpha/alpha.md (UNSPEC_CMPBGE, UNSPEC_ZAP,
UNSPEC_AMASK, UNSPEC_IMPLVER, UNSPEC_PERR, UNSPECV_RPCC): New.
(movv8qi, movv8qi_fix, movv8qi_nofix): New.
(movv4hi, movv4hi_fix, movv4hi_nofix): New.
(movv2si, movv2si_fix, movv2si_nofix): New.
(uminv8qi3, sminv8qi3, uminv4hi3, sminv4hi3): New.
(umaxv8qi3, smaxv8qi3, umaxv4hi3, smaxv4hi3): New.
(builtin_cmpbge, builtin_extql, builtin_extqh, builtin_zap,
builtin_zap_1, builtin_zapnot, builtin_zapnot_1, builtin_amask,
builtin_implver, builtin_rpcc, builtin_minub8, builtin_minsb8,
builtin_minuw4, builtin_minsw4, builtin_maxub8, builtin_maxsb8,
builtin_maxuw4, builtin_maxsw4, builtin_perr, builtin_pklb,
pklb, builtin_pkwb, pkwb, builtin_unpkbl, unpkbl,
builtin_unpkbw, unpkbw): New.
* doc/extend.texi (Alpha Built-in Functions): New.
* gcc.dg/alpha-base-1.c, gcc.dg/alpha-base-2.c: New.
* gcc.dg/alpha-max-1.c, gcc.dg/alpha-max-2.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@54229 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/extend.texi | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index 4b8d496c64e..88786e4b144 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -4754,10 +4754,52 @@ to those machines. Generally these generate calls to specific machine instructions, but allow the compiler to schedule those calls. @menu +* Alpha Built-in Functions:: * X86 Built-in Functions:: * PowerPC AltiVec Built-in Functions:: @end menu +@node Alpha Built-in Functions +@subsection Alpha Built-in Functions + +These built-in functions are available for the Alpha family of +processors, depending on the command-line switches used. + +The following built-in functions are always available. They +all generate the machine instruction that is part of the name. + +@example +long __builtin_alpha_implver (void) +long __builtin_alpha_rpcc (void) +long __builtin_alpha_amask (long) +long __builtin_alpha_cmpbge (long, long) +long __builtin_alpha_extql (long, long) +long __builtin_alpha_extqh (long, long) +long __builtin_alpha_zap (long, long) +long __builtin_alpha_zapnot (long, long) +@end example + +The following built-in functions are always with @option{-mmax} +or @option{-mcpu=@var{cpu}} where @var{cpu} is @code{pca56} or +later. They all generate the machine instruction that is part +of the name. + +@example +long __builtin_alpha_pklb (long) +long __builtin_alpha_pkwb (long) +long __builtin_alpha_unpkbl (long) +long __builtin_alpha_unpkbw (long) +long __builtin_alpha_minub8 (long, long) +long __builtin_alpha_minsb8 (long, long) +long __builtin_alpha_minuw4 (long, long) +long __builtin_alpha_minsw4 (long, long) +long __builtin_alpha_maxub8 (long, long) +long __builtin_alpha_maxsb8 (long, long) +long __builtin_alpha_maxuw4 (long, long) +long __builtin_alpha_maxsw4 (long, long) +long __builtin_alpha_perr (long, long) +@end example + @node X86 Built-in Functions @subsection X86 Built-in Functions |