Commit 41a7c215 by Cameron McInally Committed by Uros Bizjak

re PR target/38836 (Documentation for x86 builtins is outdated)

2013-07-25  Cameron McInally  <cameron.mcinally@nyu.edu>

	* doc/extend.texi: Fix return types for __builtin_ia32_cmp*s builtins.

2013-07-25  Cameron McInally  <cameron.mcinally@nyu.edu>

	PR target/38836
	* doc/extend.texi: Remove obsolete builtins. Fix
	typo for __builtin_ia32_loadss and __builtin_ia32_cmpnltss.

From-SVN: r201252
parent 49bde175
2013-07-25 Cameron McInally <cameron.mcinally@nyu.edu>
* doc/extend.texi: Fix return types for __builtin_ia32_cmp*s builtins.
2013-07-25 Cameron McInally <cameron.mcinally@nyu.edu>
PR target/38836
* doc/extend.texi: Remove obsolete builtins. Fix
typo for __builtin_ia32_loadss and __builtin_ia32_cmpnltss.
2013-07-25 Jan Hubicka <jh@suse.cz> 2013-07-25 Jan Hubicka <jh@suse.cz>
* cgraph.c (release_function_body): Break out from ... * cgraph.c (release_function_body): Break out from ...
...@@ -8,8 +18,8 @@ ...@@ -8,8 +18,8 @@
(create_specialized_node): Update. (create_specialized_node): Update.
* lto-cgraph.c (output_node_opt_summary): Do not translate old_tree * lto-cgraph.c (output_node_opt_summary): Do not translate old_tree
into index. into index.
* cgraphclones.c (cgraph_create_virtual_clone): Do not copy DECL_ARGUMENTS, * cgraphclones.c (cgraph_create_virtual_clone): Do not copy
DECL_INITIAL and DECL_RESULT. DECL_ARGUMENTS, DECL_INITIAL and DECL_RESULT.
* ipa-prop.c (ipa_populate_param_decls): Look for origin of clones. * ipa-prop.c (ipa_populate_param_decls): Look for origin of clones.
* tree-inline.c (initialize_cfun): Initialize DECL_ARGUMENTS and * tree-inline.c (initialize_cfun): Initialize DECL_ARGUMENTS and
DECL_RESULT. DECL_RESULT.
...@@ -44,7 +54,8 @@ ...@@ -44,7 +54,8 @@
* cgraph.c (cgraph_remove_node): Do not release function body * cgraph.c (cgraph_remove_node): Do not release function body
when in cgraph streaming. when in cgraph streaming.
* ipa.c (process_references, symtab_remove_unreachable_nodes): Objects * ipa.c (process_references, symtab_remove_unreachable_nodes): Objects
in other partitions are not considered reachable; fix handling of clones. in other partitions are not considered reachable; fix handling of
clones.
2013-07-25 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> 2013-07-25 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
...@@ -57,8 +68,7 @@ ...@@ -57,8 +68,7 @@
PR target/57748 PR target/57748
* config/arm/arm.md ("*sibcall_insn): Replace use of * config/arm/arm.md ("*sibcall_insn): Replace use of
Ss with US. Adjust output for v5 and v4t. Ss with US. Adjust output for v5 and v4t.
(*sibcall_value_insn): Likewise and loosen predicate on (*sibcall_value_insn): Likewise and loosen predicate on operand0.
operand0.
* config/arm/constraints.md ("Ss"): Rename to US. * config/arm/constraints.md ("Ss"): Rename to US.
...@@ -85,8 +95,7 @@ ...@@ -85,8 +95,7 @@
(toplev.o): Add CONTEXT_H to dependencies. (toplev.o): Add CONTEXT_H to dependencies.
(context.o): New. (context.o): New.
* toplev.c (general_init): Create the singleton gcc::context * toplev.c (general_init): Create the singleton gcc::context instance.
instance.
* context.c: New. * context.c: New.
......
...@@ -9925,8 +9925,6 @@ v8qi __builtin_ia32_pmaxub (v8qi, v8qi) ...@@ -9925,8 +9925,6 @@ v8qi __builtin_ia32_pmaxub (v8qi, v8qi)
v4hi __builtin_ia32_pmaxsw (v4hi, v4hi) v4hi __builtin_ia32_pmaxsw (v4hi, v4hi)
v8qi __builtin_ia32_pminub (v8qi, v8qi) v8qi __builtin_ia32_pminub (v8qi, v8qi)
v4hi __builtin_ia32_pminsw (v4hi, v4hi) v4hi __builtin_ia32_pminsw (v4hi, v4hi)
int __builtin_ia32_pextrw (v4hi, int)
v4hi __builtin_ia32_pinsrw (v4hi, int, int)
int __builtin_ia32_pmovmskb (v8qi) int __builtin_ia32_pmovmskb (v8qi)
void __builtin_ia32_maskmovq (v8qi, v8qi, char *) void __builtin_ia32_maskmovq (v8qi, v8qi, char *)
void __builtin_ia32_movntq (di *, di) void __builtin_ia32_movntq (di *, di)
...@@ -9957,26 +9955,26 @@ v4sf __builtin_ia32_addss (v4sf, v4sf) ...@@ -9957,26 +9955,26 @@ v4sf __builtin_ia32_addss (v4sf, v4sf)
v4sf __builtin_ia32_subss (v4sf, v4sf) v4sf __builtin_ia32_subss (v4sf, v4sf)
v4sf __builtin_ia32_mulss (v4sf, v4sf) v4sf __builtin_ia32_mulss (v4sf, v4sf)
v4sf __builtin_ia32_divss (v4sf, v4sf) v4sf __builtin_ia32_divss (v4sf, v4sf)
v4si __builtin_ia32_cmpeqps (v4sf, v4sf) v4sf __builtin_ia32_cmpeqps (v4sf, v4sf)
v4si __builtin_ia32_cmpltps (v4sf, v4sf) v4sf __builtin_ia32_cmpltps (v4sf, v4sf)
v4si __builtin_ia32_cmpleps (v4sf, v4sf) v4sf __builtin_ia32_cmpleps (v4sf, v4sf)
v4si __builtin_ia32_cmpgtps (v4sf, v4sf) v4sf __builtin_ia32_cmpgtps (v4sf, v4sf)
v4si __builtin_ia32_cmpgeps (v4sf, v4sf) v4sf __builtin_ia32_cmpgeps (v4sf, v4sf)
v4si __builtin_ia32_cmpunordps (v4sf, v4sf) v4sf __builtin_ia32_cmpunordps (v4sf, v4sf)
v4si __builtin_ia32_cmpneqps (v4sf, v4sf) v4sf __builtin_ia32_cmpneqps (v4sf, v4sf)
v4si __builtin_ia32_cmpnltps (v4sf, v4sf) v4sf __builtin_ia32_cmpnltps (v4sf, v4sf)
v4si __builtin_ia32_cmpnleps (v4sf, v4sf) v4sf __builtin_ia32_cmpnleps (v4sf, v4sf)
v4si __builtin_ia32_cmpngtps (v4sf, v4sf) v4sf __builtin_ia32_cmpngtps (v4sf, v4sf)
v4si __builtin_ia32_cmpngeps (v4sf, v4sf) v4sf __builtin_ia32_cmpngeps (v4sf, v4sf)
v4si __builtin_ia32_cmpordps (v4sf, v4sf) v4sf __builtin_ia32_cmpordps (v4sf, v4sf)
v4si __builtin_ia32_cmpeqss (v4sf, v4sf) v4sf __builtin_ia32_cmpeqss (v4sf, v4sf)
v4si __builtin_ia32_cmpltss (v4sf, v4sf) v4sf __builtin_ia32_cmpltss (v4sf, v4sf)
v4si __builtin_ia32_cmpless (v4sf, v4sf) v4sf __builtin_ia32_cmpless (v4sf, v4sf)
v4si __builtin_ia32_cmpunordss (v4sf, v4sf) v4sf __builtin_ia32_cmpunordss (v4sf, v4sf)
v4si __builtin_ia32_cmpneqss (v4sf, v4sf) v4sf __builtin_ia32_cmpneqss (v4sf, v4sf)
v4si __builtin_ia32_cmpnlts (v4sf, v4sf) v4sf __builtin_ia32_cmpnltss (v4sf, v4sf)
v4si __builtin_ia32_cmpnless (v4sf, v4sf) v4sf __builtin_ia32_cmpnless (v4sf, v4sf)
v4si __builtin_ia32_cmpordss (v4sf, v4sf) v4sf __builtin_ia32_cmpordss (v4sf, v4sf)
v4sf __builtin_ia32_maxps (v4sf, v4sf) v4sf __builtin_ia32_maxps (v4sf, v4sf)
v4sf __builtin_ia32_maxss (v4sf, v4sf) v4sf __builtin_ia32_maxss (v4sf, v4sf)
v4sf __builtin_ia32_minps (v4sf, v4sf) v4sf __builtin_ia32_minps (v4sf, v4sf)
...@@ -10010,18 +10008,12 @@ int __builtin_ia32_movmskps (v4sf) ...@@ -10010,18 +10008,12 @@ int __builtin_ia32_movmskps (v4sf)
The following built-in functions are available when @option{-msse} is used. The following built-in functions are available when @option{-msse} is used.
@table @code @table @code
@item v4sf __builtin_ia32_loadaps (float *)
Generates the @code{movaps} machine instruction as a load from memory.
@item void __builtin_ia32_storeaps (float *, v4sf)
Generates the @code{movaps} machine instruction as a store to memory.
@item v4sf __builtin_ia32_loadups (float *) @item v4sf __builtin_ia32_loadups (float *)
Generates the @code{movups} machine instruction as a load from memory. Generates the @code{movups} machine instruction as a load from memory.
@item void __builtin_ia32_storeups (float *, v4sf) @item void __builtin_ia32_storeups (float *, v4sf)
Generates the @code{movups} machine instruction as a store to memory. Generates the @code{movups} machine instruction as a store to memory.
@item v4sf __builtin_ia32_loadsss (float *) @item v4sf __builtin_ia32_loadss (float *)
Generates the @code{movss} machine instruction as a load from memory. Generates the @code{movss} machine instruction as a load from memory.
@item void __builtin_ia32_storess (float *, v4sf)
Generates the @code{movss} machine instruction as a store to memory.
@item v4sf __builtin_ia32_loadhps (v4sf, const v2sf *) @item v4sf __builtin_ia32_loadhps (v4sf, const v2sf *)
Generates the @code{movhps} machine instruction as a load from memory. Generates the @code{movhps} machine instruction as a load from memory.
@item v4sf __builtin_ia32_loadlps (v4sf, const v2sf *) @item v4sf __builtin_ia32_loadlps (v4sf, const v2sf *)
...@@ -10205,19 +10197,11 @@ v2df __builtin_ia32_hsubpd (v2df, v2df) ...@@ -10205,19 +10197,11 @@ v2df __builtin_ia32_hsubpd (v2df, v2df)
v4sf __builtin_ia32_hsubps (v4sf, v4sf) v4sf __builtin_ia32_hsubps (v4sf, v4sf)
v16qi __builtin_ia32_lddqu (char const *) v16qi __builtin_ia32_lddqu (char const *)
void __builtin_ia32_monitor (void *, unsigned int, unsigned int) void __builtin_ia32_monitor (void *, unsigned int, unsigned int)
v2df __builtin_ia32_movddup (v2df)
v4sf __builtin_ia32_movshdup (v4sf) v4sf __builtin_ia32_movshdup (v4sf)
v4sf __builtin_ia32_movsldup (v4sf) v4sf __builtin_ia32_movsldup (v4sf)
void __builtin_ia32_mwait (unsigned int, unsigned int) void __builtin_ia32_mwait (unsigned int, unsigned int)
@end smallexample @end smallexample
The following built-in functions are available when @option{-msse3} is used.
@table @code
@item v2df __builtin_ia32_loadddup (double const *)
Generates the @code{movddup} machine instruction as a load from memory.
@end table
The following built-in functions are available when @option{-mssse3} is used. The following built-in functions are available when @option{-mssse3} is used.
All of them generate the machine instruction that is part of the name All of them generate the machine instruction that is part of the name
with MMX registers. with MMX registers.
...@@ -11000,7 +10984,6 @@ v2sf __builtin_ia32_pfrcp (v2sf) ...@@ -11000,7 +10984,6 @@ v2sf __builtin_ia32_pfrcp (v2sf)
v2sf __builtin_ia32_pfrcpit1 (v2sf, v2sf) v2sf __builtin_ia32_pfrcpit1 (v2sf, v2sf)
v2sf __builtin_ia32_pfrcpit2 (v2sf, v2sf) v2sf __builtin_ia32_pfrcpit2 (v2sf, v2sf)
v2sf __builtin_ia32_pfrsqrt (v2sf) v2sf __builtin_ia32_pfrsqrt (v2sf)
v2sf __builtin_ia32_pfrsqrtit1 (v2sf, v2sf)
v2sf __builtin_ia32_pfsub (v2sf, v2sf) v2sf __builtin_ia32_pfsub (v2sf, v2sf)
v2sf __builtin_ia32_pfsubr (v2sf, v2sf) v2sf __builtin_ia32_pfsubr (v2sf, v2sf)
v2sf __builtin_ia32_pi2fd (v2si) v2sf __builtin_ia32_pi2fd (v2si)
......
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