platform/upstream/gcc.git
10 years agoDaily bump.
GCC Administrator [Wed, 8 Jan 2014 00:17:21 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r206410

10 years agore PR c++/58856 (spurious 'wrong number of template arguments' error for template...
Jason Merrill [Tue, 7 Jan 2014 21:28:33 +0000 (16:28 -0500)]
re PR c++/58856 (spurious 'wrong number of template arguments' error for template alias)

PR c++/58856
* pt.c (num_innermost_template_parms): New.
(get_underlying_template): Use it.

From-SVN: r206406

10 years agore PR c++/58965 ([c++11] ICE with member initializer in static union)
Jason Merrill [Tue, 7 Jan 2014 21:24:37 +0000 (16:24 -0500)]
re PR c++/58965 ([c++11] ICE with member initializer in static union)

PR c++/58965
* mangle.c (write_guarded_var_name): Handle null DECL_NAME.

From-SVN: r206405

10 years agoUpdate gcc/testsuite/ChangeLog with r206403's cosmetic changes.
Adam Butcher [Tue, 7 Jan 2014 20:44:03 +0000 (20:44 +0000)]
Update gcc/testsuite/ChangeLog with r206403's cosmetic changes.

From-SVN: r206404

10 years agoFix paths in my previous cp/ChangeLog entries (r206368-r206371) and fix layout in...
Adam Butcher [Tue, 7 Jan 2014 20:36:16 +0000 (20:36 +0000)]
Fix paths in my previous cp/ChangeLog entries (r206368-r206371) and fix layout in cpp1y PR testcases as pointed out by Jakub.

From-SVN: r206403

10 years agoPR 57386/target
Roland Stigge [Tue, 7 Jan 2014 19:57:11 +0000 (19:57 +0000)]
PR 57386/target

2014-01-07  Roland Stigge  <stigge@antcom.de>
    Michael Meissner  <meissner@linux.vnet.ibm.com>

PR 57386/target
* config/rs6000/rs6000.c (rs6000_legitimate_offset_address_p):
Only check TFmode for SPE constants.  Don't check TImode or
TDmode.

Co-Authored-By: Michael Meissner <meissner@linux.vnet.ibm.com>
From-SVN: r206401

10 years agoregex_compiler.h (_AnyMatcher<>::_AnyMatcher(), [...]): Fix _AnyMatcher behavior...
Tim Shen [Tue, 7 Jan 2014 19:17:50 +0000 (19:17 +0000)]
regex_compiler.h (_AnyMatcher<>::_AnyMatcher(), [...]): Fix _AnyMatcher behavior of POSIX style and move _M_flags to template parameter...

2014-01-07  Tim Shen  <timshen91@gmail.com>

* include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
_AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
_CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
_BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
_BracketMatcher<>::_M_add_char(),
_BracketMatcher<>::_M_add_collating_element(),
_BracketMatcher<>::_M_add_equivalence_class(),
_BracketMatcher<>::_M_add_character_class(),
_BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
_BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
Fix _AnyMatcher behavior of POSIX style and move _M_flags
to template parameter; Add cache for _BracketMatcher. Adjust
declarations from here...
* include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
imbuing a regex will trigger a recompilation to rebuild the cache.
* include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
_Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
different template bool parameters.
* include/bits/regex_executor.h: Remove unnecessary declarations.
* include/std/regex: Adjust including orders.
* testsuite/28_regex/traits/char/user_defined.cc: New.
* testsuite/28_regex/traits/wchar_t/user_defined.cc: New.

From-SVN: r206400

10 years ago[AArch64] big.LITTLE option rewriting bug
James Greenhalgh [Tue, 7 Jan 2014 17:21:13 +0000 (17:21 +0000)]
[AArch64] big.LITTLE option rewriting bug

gcc/

* config/aarch64/aarch64-elf.h (ASM_SPEC): Remove identity spec for
-mcpu.

From-SVN: r206399

10 years agoarm.c (arm_expand_neon_args): Call expand_expr with EXPAND_MEMORY for NEON_ARG_MEMORY...
Yufeng Zhang [Tue, 7 Jan 2014 16:18:04 +0000 (16:18 +0000)]
arm.c (arm_expand_neon_args): Call expand_expr with EXPAND_MEMORY for NEON_ARG_MEMORY...

gcc/

* config/arm/arm.c (arm_expand_neon_args): Call expand_expr
with EXPAND_MEMORY for NEON_ARG_MEMORY; check if the returned
rtx is const0_rtx or not.

gcc/testsuite/

* gcc.target/arm/neon/vst1Q_laneu64-1.c: New test.

From-SVN: r206395

10 years agore PR target/58115 (testcase gcc.target/i386/intrinsics_4.c failure)
Richard Sandiford [Tue, 7 Jan 2014 15:26:41 +0000 (15:26 +0000)]
re PR target/58115 (testcase gcc.target/i386/intrinsics_4.c failure)

gcc/
PR target/58115
* target-globals.c (save_target_globals): Remove this_fn_optab
handling.
* toplev.c: Include optabs.h.
(target_reinit): Temporarily restore the global options if another
set of options are in force.

gcc/testsuite/
* gcc.target/i386/intrinsics_4.c (bar): New function.

From-SVN: r206394

10 years agoUpdate Solaris baselines
Rainer Orth [Tue, 7 Jan 2014 12:46:53 +0000 (12:46 +0000)]
Update Solaris baselines

* config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
* config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
* config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.

From-SVN: r206389

10 years agosemantics.c (trait_expr_value, [...]): Implement the letter of 20.11.6 about Base...
Paolo Carlini [Tue, 7 Jan 2014 09:40:28 +0000 (09:40 +0000)]
semantics.c (trait_expr_value, [...]): Implement the letter of 20.11.6 about Base and Derived naming the same class...

/cp
2014-01-07  Paolo Carlini  <paolo.carlini@oracle.com>

* semantics.c (trait_expr_value, [CPTK_IS_BASE_OF]): Implement
the letter of 20.11.6 about Base and Derived naming the same
class type modulo cv-qualifiers.

/testsuite
2014-01-07  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/ext/is_base_of_incomplete-2.C: New.

From-SVN: r206386

10 years agore PR rtl-optimization/58668 (internal compiler error: in cond_exec_process_insns...
Jakub Jelinek [Tue, 7 Jan 2014 07:54:47 +0000 (08:54 +0100)]
re PR rtl-optimization/58668 (internal compiler error: in cond_exec_process_insns, at ifcvt.c:339)

PR rtl-optimization/58668
* cfgcleanup.c (flow_find_cross_jump): Don't count
any jumps if dir_p is NULL.  Remove p1 variable, use active_insn_p
to determine what is counted.
(flow_find_head_matching_sequence): Use active_insn_p to determine
what is counted.
(try_head_merge_bb): Adjust for the flow_find_head_matching_sequence
counting change.
* ifcvt.c (count_bb_insns): Use active_insn_p && !JUMP_P to
determine what is counted.

* gcc.dg/pr58668.c: New test.

From-SVN: r206385

10 years agore PR tree-optimization/59643 (Predictive commoning unnecessarily punts on scimark2...
Jakub Jelinek [Tue, 7 Jan 2014 07:49:10 +0000 (08:49 +0100)]
re PR tree-optimization/59643 (Predictive commoning unnecessarily punts on scimark2 SOR)

PR tree-optimization/59643
* tree-predcom.c (split_data_refs_to_components): If one dr is
read and one write, determine_offset fails and the write isn't
in the bad component, just put the read into the bad component.

* gcc.dg/pr59643.c: New test.
* gcc.c-torture/execute/pr59643.c: New test.

From-SVN: r206384

10 years agore PR pch/59436 (FAIL: 17_intro/headers/c++200x/stdc++.cc (test for excess errors))
Mike Stump [Tue, 7 Jan 2014 07:47:57 +0000 (07:47 +0000)]
re PR pch/59436 (FAIL: 17_intro/headers/c++200x/stdc++.cc (test for excess errors))

PR pch/59436
* tree-core.h (struct tree_optimization_option): Change optabs
type from unsigned char * to void *.
* optabs.c (init_tree_optimization_optabs): Adjust
TREE_OPTIMIZATION_OPTABS initialization.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r206383

10 years agoDaily bump.
GCC Administrator [Tue, 7 Jan 2014 00:16:59 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r206382

10 years agore PR fortran/59589 ([OOP] Memory leak when deallocating polymorphic)
Janus Weil [Mon, 6 Jan 2014 23:21:39 +0000 (00:21 +0100)]
re PR fortran/59589 ([OOP] Memory leak when deallocating polymorphic)

2014-01-06  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59589
* class.c (comp_is_finalizable): New function to dermine if a given
component is finalizable.
(finalize_component, generate_finalization_wrapper): Use it.

2014-01-06  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59589
* gfortran.dg/class_allocate_16.f90: New.

From-SVN: r206379

10 years agore PR target/59644 (r206243 miscompiles Linux kernel)
Jakub Jelinek [Mon, 6 Jan 2014 21:38:27 +0000 (22:38 +0100)]
re PR target/59644 (r206243 miscompiles Linux kernel)

PR target/59644
* config/i386/i386.h (struct machine_function): Add
no_drap_save_restore field.
* config/i386/i386.c (ix86_save_reg): Use
!cfun->machine->no_drap_save_restore instead of
crtl->stack_realign_needed.
(ix86_finalize_stack_realign_flags): Don't clear drap_reg unless
this function clears frame_pointer_needed.  Set
cfun->machine->no_drap_save_restore if clearing frame_pointer_needed
and DRAP reg is needed.

* gcc.target/i386/pr59644.c: New test.

From-SVN: r206375

10 years agogo/build: Set GOARCH on arm64 systems.
Ian Lance Taylor [Mon, 6 Jan 2014 19:24:23 +0000 (19:24 +0000)]
go/build: Set GOARCH on arm64 systems.

I am reliably informed that the architecture name and letter for the
plan9/inferno compilers for 64-bit ARM systems will be "arm64" and "7"
respectively, so let's get that bit in nice and early.

From Michael Hudson-Doyle.
https://codereview.appspot.com/34830045/

From-SVN: r206374

10 years agore PR c/57773 (-Wpedantic incorrect warning for enum bit-field)
Marek Polacek [Mon, 6 Jan 2014 18:53:01 +0000 (18:53 +0000)]
re PR c/57773 (-Wpedantic incorrect warning for enum bit-field)

PR c/57773
* doc/implement-c.texi: Mention that other integer types are
permitted as bit-field types in strictly conforming mode.
c/
* c-decl.c (check_bitfield_type_and_width): Warn for implementation
defined bit-field types only in ISO C.
testsuite/
* gcc.dg/pr57773.c: New test.

From-SVN: r206373

10 years agore PR c++/59638 ([c++1y] ICE with pointer to function that has auto as parameter)
Adam Butcher [Mon, 6 Jan 2014 18:22:48 +0000 (18:22 +0000)]
re PR c++/59638 ([c++1y] ICE with pointer to function that has auto as parameter)

Fix PR c++/59638

PR c++/59638
* cp/parser.c (cp_parser_init_declarator): Undo fully implicit
template parameter list when declarator is not a function.

* g++.dg/cpp1y/pr59638.C: New testcase.

From-SVN: r206371

10 years agore PR c++/59629 ([c++11] ICE with invalid use of auto in lambda function)
Adam Butcher [Mon, 6 Jan 2014 18:22:38 +0000 (18:22 +0000)]
re PR c++/59629 ([c++11] ICE with invalid use of auto in lambda function)

Fix PR c++/59629

PR c++/59629
* cp/parser.c (cp_parser_lambda_expression): Save/reset/restore
auto_is_implicit_function_template_parm_p around lambda body.

* g++.dg/cpp1y/pr59629.C: New testcase.

From-SVN: r206370

10 years agore PR c++/59636 ([c++1y] ICE with missing template parameter in lambda)
Adam Butcher [Mon, 6 Jan 2014 18:22:29 +0000 (18:22 +0000)]
re PR c++/59636 ([c++1y] ICE with missing template parameter in lambda)

Fix PR c++/59636

PR c++/59636
* cp/parser.c (cp_parser_template_parameter): Early out with
error_mark_node if parameter declaration was not parsed.

* g++.dg/cpp1y/pr59636.C: New testcase.

From-SVN: r206369

10 years agore PR c++/59635 ([c++1y] ICE with auto and ... as lambda parameter)
Adam Butcher [Mon, 6 Jan 2014 18:22:19 +0000 (18:22 +0000)]
re PR c++/59635 ([c++1y] ICE with auto and ... as lambda parameter)

Fix PR c++/59635

PR c++/59635
* cp/lambda.c (maybe_add_lambda_conv_op): Handle marking conversion
function as unimplemented for generic lambdas with varargs.

* g++.dg/cpp1y/pr59635.C: New testcase.

From-SVN: r206368

10 years agolibiberty: fix --enable-install-libiberty flag [PR 56780]
Mike Frysinger [Mon, 6 Jan 2014 18:15:31 +0000 (18:15 +0000)]
libiberty: fix --enable-install-libiberty flag [PR 56780]

Commit 199570 fixed the --disable-install-libiberty behavior, but it also
added a bug where the enable path never works because the initial clear
of target_header_dir wasn't deleted.  So we end up initializing properly
at the top only to reset it at the end all the time.

From-SVN: r206367

10 years agomodulo-sched.c (schedule_reg_moves): Clear distance1_uses if it is newly allocated.
Felix Yang [Mon, 6 Jan 2014 16:46:12 +0000 (16:46 +0000)]
modulo-sched.c (schedule_reg_moves): Clear distance1_uses if it is newly allocated.

2014-01-02  Felix Yang  <fei.yang0953@gmail.com>

* modulo-sched.c (schedule_reg_moves): Clear distance1_uses if it
is newly allocated.

From-SVN: r206366

10 years agoReverted r205593
Bernd Edlinger [Mon, 6 Jan 2014 16:34:52 +0000 (16:34 +0000)]
Reverted r205593
2013-12-02  Bernd Edlinger  <bernd.edlinger@hotmail.de>

PR target/58115
* function.c (invoke_set_current_function_hook): Call
targetm.set_current_function after setting this_fn_optabs.

From-SVN: r206364

10 years ago* aarch64.c (aarch64_rtx_costs): Fix cost calculation for MADD.
Richard Earnshaw [Mon, 6 Jan 2014 15:58:44 +0000 (15:58 +0000)]
* aarch64.c (aarch64_rtx_costs): Fix cost calculation for MADD.

From-SVN: r206363

10 years agocp-demangle.c (struct d_print_info): New fields next_saved_scope...
Gary Benson [Mon, 6 Jan 2014 14:14:21 +0000 (14:14 +0000)]
cp-demangle.c (struct d_print_info): New fields next_saved_scope...

libiberty/
2014-01-06  Gary Benson  <gbenson@redhat.com>

* cp-demangle.c (struct d_print_info): New fields
next_saved_scope, copy_templates, next_copy_template and
num_copy_templates.
(d_count_templates): New function.
(d_print_init): New parameter "dc".
Estimate numbers of templates and scopes required.
(d_print_free): Removed function.
(cplus_demangle_print_callback): Allocate stack for
templates and scopes.  Removed call to d_print_free.
(d_copy_templates): Removed function.
(d_save_scope): New function.
(d_get_saved_scope): Likewise.
(d_print_comp): Replace state saving/restoring code with
calls to d_save_scope and d_get_saved_scope.

From-SVN: r206362

10 years agore PR ipa/59008 (ICEs in try_make_edge_direct_simple_call / propagate_controlled_uses)
Martin Jambor [Mon, 6 Jan 2014 14:05:25 +0000 (15:05 +0100)]
re PR ipa/59008 (ICEs in try_make_edge_direct_simple_call / propagate_controlled_uses)

2014-01-06  Martin Jambor  <mjambor@suse.cz>

PR ipa/59008
* ipa-cp.c (ipcp_discover_new_direct_edges): Changed param_index type
to int.
* ipa-prop.c (ipa_print_node_params): Fix indentation.

testsuite/
        * gcc.dg/ipa/pr59008.c: New test.

From-SVN: r206361

10 years agoClear hardware capabilities for gcc.dg/vect/vect-simd-clone-*.c
Rainer Orth [Mon, 6 Jan 2014 13:56:53 +0000 (13:56 +0000)]
Clear hardware capabilities for gcc.dg/vect/vect-simd-clone-*.c

* gcc.dg/vect/vect.exp: Add clearcap_ldflags to DEFAULT_VECTCFLAGS
if supported.

From-SVN: r206360

10 years agoCorrectly require C99 support in avx512f tests
Rainer Orth [Mon, 6 Jan 2014 13:45:29 +0000 (13:45 +0000)]
Correctly require C99 support in avx512f tests

* gcc.target/i386/avx512f-vcmppd-2.c: Add -std=c99.
Require c99_runtime.
* gcc.target/i386/avx512f-vcmpps-2.c: Likewise.

* gcc.target/i386/avx512f-vfixupimmpd-2.c: Add -std=gnu99.
Require c99_runtime.
* gcc.target/i386/avx512f-vfixupimmps-2.c: Likewise.
* gcc.target/i386/avx512f-vfixupimmsd-2.c: Likewise.
* gcc.target/i386/avx512f-vfixupimmss-2.c: Likewise.

* gcc.target/i386/avx512f-vgetmantpd-2.c: Add -std=c99.
Require c99_runtime.
Make CALC void static.
* gcc.target/i386/avx512f-vgetmantps-2.c: Likewise.

* gcc.target/i386/avx512f-vgetmantsd-2.c: Add -std=c99.
Require c99_runtime.
* gcc.target/i386/avx512f-vgetmantss-2.c: Likewise.

From-SVN: r206359

10 years agoRequire avx in gcc.target/i386/pr59501-*.c
Rainer Orth [Mon, 6 Jan 2014 13:35:07 +0000 (13:35 +0000)]
Require avx in gcc.target/i386/pr59501-*.c

* gcc.target/i386/pr59501-1.c: Require avx effective target.
* gcc.target/i386/pr59501-2.c: Likewise.
* gcc.target/i386/pr59501-3.c: Likewise.
* gcc.target/i386/pr59501-4.c: Likewise.
* gcc.target/i386/pr59501-5.c: Likewise.
* gcc.target/i386/pr59501-6.c: Likewise.

From-SVN: r206358

10 years agoDeclare fma in gcc.target/i386/pr59390.c
Rainer Orth [Mon, 6 Jan 2014 13:22:59 +0000 (13:22 +0000)]
Declare fma in gcc.target/i386/pr59390.c

* gcc.target/i386/pr59390.c: Replace math.h by fma declaration.
* gcc.target/i386/pr59390_1.c: Likewise.
* gcc.target/i386/pr59390_2.c: Likewise.

From-SVN: r206357

10 years agore PR debug/59350 (ICE: in vt_expand_var_loc_chain, at var-tracking.c:8212)
Eric Botcazou [Mon, 6 Jan 2014 11:39:41 +0000 (11:39 +0000)]
re PR debug/59350 (ICE: in vt_expand_var_loc_chain, at var-tracking.c:8212)

PR debug/59350
PR debug/59510
* var-tracking.c (add_stores): Preserve the value of the source even if
we don't record the store.

From-SVN: r206356

10 years agore PR fortran/59023 (ICE in gfc_search_interface with BIND(C))
Janus Weil [Mon, 6 Jan 2014 11:31:34 +0000 (12:31 +0100)]
re PR fortran/59023 (ICE in gfc_search_interface with BIND(C))

2014-01-06  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59023
PR fortran/59662
* resolve.c (resolve_global_procedure): Don't apply to c-binding
procedures.
(gfc_verify_binding_labels): Remove duplicate line.

2014-01-06  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59023
* gfortran.dg/bind_c_procs_2.f90: New.

From-SVN: r206355

10 years agoconfig.gcc (arm*-*-*): Check --with-arch against arm-arches.def.
Terry Guo [Mon, 6 Jan 2014 08:16:30 +0000 (08:16 +0000)]
config.gcc (arm*-*-*): Check --with-arch against arm-arches.def.

2014-01-06  Terry Guo  <terry.guo@arm.com>

* config.gcc (arm*-*-*): Check --with-arch against arm-arches.def.

From-SVN: r206354

10 years agoruntime: Remove unused runtime_cpuid variables.
Ian Lance Taylor [Mon, 6 Jan 2014 03:01:58 +0000 (03:01 +0000)]
runtime: Remove unused runtime_cpuid variables.

From-SVN: r206353

10 years agoDaily bump.
GCC Administrator [Mon, 6 Jan 2014 00:16:27 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r206351

10 years agore PR bootstrap/59541 (Revision 206070 breaks bootstrap on Darwin: config/darwin...
Iain Sandoe [Sun, 5 Jan 2014 21:47:43 +0000 (21:47 +0000)]
re PR bootstrap/59541 (Revision 206070 breaks bootstrap on Darwin: config/darwin.c:3665:1: error: control reaches end of non-void function [-Werror=return-type])

gcc:

PR bootstrap/59541
* config/darwin.c (darwin_function_section): Adjust return values to
correspond to optimisation changes made in r206070.

From-SVN: r206348

10 years agoreassoc-33.c: Don't run on hppa*-*-*.
John David Anglin [Sun, 5 Jan 2014 18:25:53 +0000 (18:25 +0000)]
reassoc-33.c: Don't run on hppa*-*-*.

* gcc.dg/tree-ssa/reassoc-33.c: Don't run on hppa*-*-*.
* gcc.dg/tree-ssa/reassoc-34.c: Likewise.
* gcc.dg/tree-ssa/reassoc-35.c: Likewise.
* gcc.dg/tree-ssa/reassoc-36.c: Likewise.
* gcc.dg/tree-ssa/forwprop-28.c: Skip compile on hppa*-*-*.
* gcc.dg/tree-ssa/vrp47.c: Likewise.
* gcc.dg/tree-ssa/vrp87.c: Likewise.

From-SVN: r206346

10 years agoi386.c (ix86_data_alignment): Calculate max_align from prefetch_block tune setting.
Uros Bizjak [Sun, 5 Jan 2014 15:42:07 +0000 (16:42 +0100)]
i386.c (ix86_data_alignment): Calculate max_align from prefetch_block tune setting.

* config/i386/i386.c (ix86_data_alignment): Calculate max_align
from prefetch_block tune setting.
(nocona_cost): Correct size of prefetch block to 64.

From-SVN: r206345

10 years agoDaily bump.
GCC Administrator [Sun, 5 Jan 2014 00:16:49 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r206340

10 years agoarm.c (arm_get_frame_offsets): Revamp long lines.
Eric Botcazou [Sat, 4 Jan 2014 21:51:51 +0000 (21:51 +0000)]
arm.c (arm_get_frame_offsets): Revamp long lines.

* config/arm/arm.c (arm_get_frame_offsets): Revamp long lines.
(arm_expand_epilogue_apcs_frame): Take into account the number of bytes
used to save the static chain register in the computation of the offset
from which the FP registers need to be restored.

From-SVN: r206337

10 years agore PR tree-optimization/59519 (ICE on valid code at -O3 on x86_64-linux-gnu in slpeel...
Jakub Jelinek [Sat, 4 Jan 2014 11:23:16 +0000 (12:23 +0100)]
re PR tree-optimization/59519 (ICE on valid code at -O3 on x86_64-linux-gnu in slpeel_update_phi_nodes_for_guard1, at tree-vect-loop-manip.c:486)

PR tree-optimization/59519
* tree-vect-loop-manip.c (slpeel_update_phi_nodes_for_guard1): Don't
ICE if get_current_def (current_new_name) is already non-NULL, as long
as it is a phi result of some other phi in *new_exit_bb that has
the same argument.

* gcc.dg/vect/pr59519-1.c: New test.
* gcc.dg/vect/pr59519-2.c: New test.

From-SVN: r206333

10 years agosse.md (avx512f_load<mode>_mask): Emit vmovup{s,d} or vmovdqu* for misaligned_operand.
Jakub Jelinek [Sat, 4 Jan 2014 09:57:36 +0000 (10:57 +0100)]
sse.md (avx512f_load<mode>_mask): Emit vmovup{s,d} or vmovdqu* for misaligned_operand.

* config/i386/sse.md (avx512f_load<mode>_mask): Emit vmovup{s,d}
or vmovdqu* for misaligned_operand.
(<sse>_loadu<ssemodesuffix><avxsizesuffix><mask_name>,
<sse2_avx_avx512f>_loaddqu<mode><mask_name>): Handle <mask_applied>.
* config/i386/i386.c (ix86_expand_special_args_builtin): Set
aligned_mem for AVX512F masked aligned load and store builtins and for
non-temporal moves.

* gcc.target/i386/avx512f-vmovdqu32-1.c: Allow vmovdqu64 instead of
vmovdqu32.

From-SVN: r206332

10 years agore PR fortran/59547 ([OOP] Problem with using tbp specification function in multiple...
Janus Weil [Sat, 4 Jan 2014 09:25:04 +0000 (10:25 +0100)]
re PR fortran/59547 ([OOP] Problem with using tbp specification function in multiple class procedures)

2014-01-04  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59547
* class.c (add_proc_comp): Copy pure attribute.

2014-01-04  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59547
* gfortran.dg/typebound_proc_32.f90: New.

From-SVN: r206331

10 years agoDaily bump.
GCC Administrator [Sat, 4 Jan 2014 00:16:56 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r206330

10 years agore PR c++/58950 (Missing "statement has no effect")
Marc Glisse [Fri, 3 Jan 2014 21:12:48 +0000 (22:12 +0100)]
re PR c++/58950 (Missing "statement has no effect")

2014-01-03  Marc Glisse  <marc.glisse@inria.fr>

PR c++/58950
gcc/cp/
* cvt.c (convert_to_void): Handle VEC_PERM_EXPR and VEC_COND_EXPR.
gcc/testsuite/
* g++.dg/pr58950.C: New file.

From-SVN: r206325

10 years agore PR c++/58567 (ICE with invalid loop variable in template using openmp)
Tobias Burnus [Fri, 3 Jan 2014 20:24:50 +0000 (21:24 +0100)]
re PR c++/58567 (ICE with invalid loop variable in template using openmp)

2014-01-03  Tobias Burnus  <burnus@net-b.de>

        PR c++/58567
        * pt.c (tsubst_omp_for_iterator): Early return for
        * error_mark_node.

2014-01-03  Tobias Burnus  <burnus@net-b.de>

        PR c++/58567
        * g++.dg/gomp/pr58567.C: New.

From-SVN: r206322

10 years agore PR tree-optimization/59651 (Vectorizer failing to spot dependence causes incorrect...
Bingfeng Mei [Fri, 3 Jan 2014 15:40:57 +0000 (15:40 +0000)]
re PR tree-optimization/59651 (Vectorizer failing to spot dependence causes incorrect code generation.)

2014-01-03  Bingfeng Mei <bmei@broadcom.com>

PR tree-optimization/59651
* tree-vect-loop-manip.c (vect_create_cond_for_alias_checks):
Address range for negative step should be added by TYPE_SIZE_UNIT.

PR tree-optimization/59651
* gcc.dg/torture/pr59651.c: New test.
* gcc.dg/vect/pr59651.c: Ditto.

From-SVN: r206319

10 years agom68k.c (handle_move_double): Handle pushes with overlapping registers also for regist...
Andreas Schwab [Fri, 3 Jan 2014 13:57:45 +0000 (13:57 +0000)]
m68k.c (handle_move_double): Handle pushes with overlapping registers also for registers other than the...

* config/m68k/m68k.c (handle_move_double): Handle pushes with
overlapping registers also for registers other than the stack
pointer.

From-SVN: r206317

10 years agore PR other/59661 (documentation: __builtin_FUNCTION / _FILE listed as returning...
Marek Polacek [Fri, 3 Jan 2014 12:28:31 +0000 (12:28 +0000)]
re PR other/59661 (documentation: __builtin_FUNCTION / _FILE listed as returning int)

PR other/59661
* doc/extend.texi: Fix the return value of __builtin_FUNCTION and
__builtin_FILE.

From-SVN: r206315

10 years agore PR target/59625 (asm goto and TARGET_FOUR_JUMP_LIMIT)
Jakub Jelinek [Fri, 3 Jan 2014 12:22:17 +0000 (13:22 +0100)]
re PR target/59625 (asm goto and TARGET_FOUR_JUMP_LIMIT)

PR target/59625
* config/i386/i386.c (ix86_avoid_jump_mispredicts): Don't consider
asm goto as jump.

* gcc.target/i386/pr59625.c: New test.

From-SVN: r206314

10 years agoCore DR 1442 PR c++/59165
Paolo Carlini [Fri, 3 Jan 2014 11:11:31 +0000 (11:11 +0000)]
Core DR 1442 PR c++/59165

/cp
2014-01-03  Paolo Carlini  <paolo.carlini@oracle.com>

Core DR 1442
PR c++/59165
* parser.c (cp_parser_perform_range_for_lookup): Don't pass true
as include_std to perform_koenig_lookup.
(cp_parser_postfix_expression): Adjust.
* pt.c (tsubst_copy_and_build): Likewise.
* semantics.c (perform_koenig_lookup): Remove bool parameter.
(omp_reduction_lookup): Adjust.
* name-lookup.c (lookup_arg_dependent_1): Remove bool parameter.
(lookup_arg_dependent): Likewise.
(lookup_function_nonclass): Adjust.
* name-lookup.h: Adjust declaration.
* cp-tree.h: Likewise.

/testsuite
2014-01-03  Paolo Carlini  <paolo.carlini@oracle.com>

Core DR 1442
PR c++/59165
* g++.dg/cpp0x/range-for28.C: New.
* g++.dg/cpp0x/range-for3.C: Update.

From-SVN: r206313

10 years agoi386.md (MODE_SIZE): New mode attribute.
Jakub Jelinek [Fri, 3 Jan 2014 10:51:42 +0000 (11:51 +0100)]
i386.md (MODE_SIZE): New mode attribute.

* config/i386/i386.md (MODE_SIZE): New mode attribute.
(push splitter): Use <P:MODE_SIZE> instead of
GET_MODE_SIZE (<P:MODE>mode).
(lea splitter): Use <MODE_SIZE> instead of GET_MODE_SIZE (<MODE>mode).
(mov -1, reg peephole2): Likewise.
* config/i386/sse.md (*mov<mode>_internal,
<sse>_storeu<ssemodesuffix><avxsizesuffix>,
<sse2_avx_avx512f>_storedqu<mode>, <sse>_andnot<mode>3,
*<code><mode>3, *andnot<mode>3<mask_name>,
<mask_codefor><code><mode>3<mask_name>): Likewise.
* config/i386/subst.md (mask_mode512bit_condition,
sd_mask_mode512bit_condition): Likewise.

From-SVN: r206312

10 years ago* gnatvsn.ads (Current_Year): Bump to 2014.
Eric Botcazou [Fri, 3 Jan 2014 08:42:16 +0000 (08:42 +0000)]
* gnatvsn.ads (Current_Year): Bump to 2014.

From-SVN: r206311

10 years agoibm-ldouble.c (__gcc_qdiv): Scale up arguments in case of small numerator and finite...
Joseph Myers [Fri, 3 Jan 2014 02:05:44 +0000 (02:05 +0000)]
ibm-ldouble.c (__gcc_qdiv): Scale up arguments in case of small numerator and finite nonzero result.

libgcc:
* config/rs6000/ibm-ldouble.c (__gcc_qdiv): Scale up arguments in
case of small numerator and finite nonzero result.

gcc/testsuite:
* gcc.target/powerpc/rs6000-ldouble-3.c: New test.

From-SVN: r206310

10 years agoFix PR/59303 -- uninit analysis enhancement
Xinliang David Li [Fri, 3 Jan 2014 00:40:57 +0000 (00:40 +0000)]
Fix PR/59303 -- uninit analysis enhancement

From-SVN: r206309

10 years agoDaily bump.
GCC Administrator [Fri, 3 Jan 2014 00:16:50 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r206308

10 years agoRotate cp/ChangeLog
Jakub Jelinek [Thu, 2 Jan 2014 22:52:20 +0000 (23:52 +0100)]
Rotate cp/ChangeLog

From-SVN: r206305

10 years agore PR libstdc++/59087 (Issues including complex.h in C++11/1y mode because of C's...
Marc Glisse [Thu, 2 Jan 2014 22:45:56 +0000 (23:45 +0100)]
re PR libstdc++/59087 (Issues including complex.h in C++11/1y mode because of C's complex.h)

2014-01-02  Marc Glisse  <marc.glisse@inria.fr>

PR c++/59087
gcc/cp/
* parser.c (cp_parser_userdef_numeric_literal): Mention
-fext-numeric-literals in the message.

From-SVN: r206304

10 years agore PR c++/59641 (ICE with invalid expression in vector arithmetic)
Marc Glisse [Thu, 2 Jan 2014 22:43:24 +0000 (23:43 +0100)]
re PR c++/59641 (ICE with invalid expression in vector arithmetic)

2014-01-02  Marc Glisse  <marc.glisse@inria.fr>

PR c++/59641
gcc/cp/
* call.c (build_conditional_expr_1): Check the return value of
force_rvalue.
gcc/testsuite/
* g++.dg/cpp0x/pr59641.C: New file.

From-SVN: r206303

10 years agocall.c (convert_like_real): Check complain.
Marc Glisse [Thu, 2 Jan 2014 22:30:43 +0000 (23:30 +0100)]
call.c (convert_like_real): Check complain.

2014-01-02  Marc Glisse  <marc.glisse@inria.fr>

gcc/cp/
* call.c (convert_like_real): Check complain.
gcc/testsuite/
* g++.dg/cpp0x/initlist-explicit-sfinae.C: New file.

From-SVN: r206302

10 years agoUpdate copyright years in libstdc++-v3/
Richard Sandiford [Thu, 2 Jan 2014 22:30:10 +0000 (22:30 +0000)]
Update copyright years in libstdc++-v3/

From-SVN: r206301

10 years agore PR c++/59378 (Internal compiler error when using __builtin_shuffle in a template...
Marc Glisse [Thu, 2 Jan 2014 22:26:24 +0000 (23:26 +0100)]
re PR c++/59378 (Internal compiler error when using __builtin_shuffle in a template function)

2014-01-02  Marc Glisse  <marc.glisse@inria.fr>

PR c++/59378
gcc/cp/
* typeck.c (build_x_vec_perm_expr): Handle non-dependent arguments
in templates.
gcc/testsuite/
* g++.dg/ext/pr59378.C: New file.

From-SVN: r206300

10 years agoUpdate copyright years in libobjc/
Richard Sandiford [Thu, 2 Jan 2014 22:26:09 +0000 (22:26 +0000)]
Update copyright years in libobjc/

From-SVN: r206299

10 years agoUpdate copyright years in libitm/
Richard Sandiford [Thu, 2 Jan 2014 22:26:00 +0000 (22:26 +0000)]
Update copyright years in libitm/

From-SVN: r206298

10 years agoUpdate copyright years in libgomp/
Richard Sandiford [Thu, 2 Jan 2014 22:25:54 +0000 (22:25 +0000)]
Update copyright years in libgomp/

From-SVN: r206297

10 years agoUpdate copyright years in libgfortran/
Richard Sandiford [Thu, 2 Jan 2014 22:25:45 +0000 (22:25 +0000)]
Update copyright years in libgfortran/

From-SVN: r206296

10 years agoUpdate copyright years in libgcc/
Richard Sandiford [Thu, 2 Jan 2014 22:25:22 +0000 (22:25 +0000)]
Update copyright years in libgcc/

From-SVN: r206295

10 years agoUpdate copyright years in libdecnumber/
Richard Sandiford [Thu, 2 Jan 2014 22:24:52 +0000 (22:24 +0000)]
Update copyright years in libdecnumber/

From-SVN: r206294

10 years agoUpdate copyright years in libcpp/
Richard Sandiford [Thu, 2 Jan 2014 22:24:45 +0000 (22:24 +0000)]
Update copyright years in libcpp/

From-SVN: r206293

10 years agoUpdate copyright years in libbacktrace/
Richard Sandiford [Thu, 2 Jan 2014 22:24:37 +0000 (22:24 +0000)]
Update copyright years in libbacktrace/

From-SVN: r206292

10 years agoUpdate copyright years in libatomic/
Richard Sandiford [Thu, 2 Jan 2014 22:24:30 +0000 (22:24 +0000)]
Update copyright years in libatomic/

From-SVN: r206291

10 years agoUpdate copyright years in libada/
Richard Sandiford [Thu, 2 Jan 2014 22:24:25 +0000 (22:24 +0000)]
Update copyright years in libada/

From-SVN: r206290

10 years agoUpdate copyright years in gcc/
Richard Sandiford [Thu, 2 Jan 2014 22:23:26 +0000 (22:23 +0000)]
Update copyright years in gcc/

From-SVN: r206289

10 years agoarc-common.c, [...]: Use the standard form for the copyright notice.
Richard Sandiford [Thu, 2 Jan 2014 22:09:02 +0000 (22:09 +0000)]
arc-common.c, [...]: Use the standard form for the copyright notice.

gcc/
* common/config/arc/arc-common.c, config/arc/arc-modes.def,
config/arc/arc-protos.h, config/arc/arc.c, config/arc/arc.h,
config/arc/arc.md, config/arc/arc.opt, config/arm/arm_neon_builtins.def,
config/arm/crypto.def, config/i386/avx512cdintrin.h,
config/i386/avx512erintrin.h, config/i386/avx512fintrin.h,
config/i386/avx512pfintrin.h, config/i386/btver2.md,
config/i386/shaintrin.h, config/i386/slm.md, config/linux-protos.h,
config/linux.c, config/winnt-c.c, diagnostic-color.c,
diagnostic-color.h, gimple-ssa-isolate-paths.c, vtable-verify.c,
vtable-verify.h: Use the standard form for the copyright notice.

gcc/c-family/
* array-notation-common.c, c-cilkplus.c: Use the standard form for
the copyright notice.

gcc/c/
* c-array-notation.c: Use the standard form for the copyright notice.

gcc/cp/
* cp-array-notation.c, cp-cilkplus.c, vtable-class-hierarchy.c: Use
the standard form for the copyright notice.

gcc/testsuite/
* gcc.target/arc/arc.exp: Use the standard form for the copyright
notice.

libgcc/
* config/arc/asm.h, config/arc/crtg.S, config/arc/crtgend.S,
config/arc/crti.S, config/arc/crtn.S, config/arc/divtab-arc700.c,
config/arc/dp-hack.h, config/arc/fp-hack.h,
config/arc/ieee-754/adddf3.S, config/arc/ieee-754/addsf3.S,
config/arc/ieee-754/arc600-dsp/divdf3.S,
config/arc/ieee-754/arc600-dsp/divsf3.S,
config/arc/ieee-754/arc600-dsp/muldf3.S,
config/arc/ieee-754/arc600-dsp/mulsf3.S,
config/arc/ieee-754/arc600-mul64/divdf3.S,
config/arc/ieee-754/arc600-mul64/divsf3.S,
config/arc/ieee-754/arc600-mul64/muldf3.S,
config/arc/ieee-754/arc600-mul64/mulsf3.S,
config/arc/ieee-754/arc600/divsf3.S,
config/arc/ieee-754/arc600/mulsf3.S,
config/arc/ieee-754/divdf3.S, config/arc/ieee-754/divsf3-stdmul.S,
config/arc/ieee-754/divsf3.S, config/arc/ieee-754/divtab-arc-df.c,
config/arc/ieee-754/divtab-arc-sf.c, config/arc/ieee-754/eqdf2.S,
config/arc/ieee-754/eqsf2.S, config/arc/ieee-754/extendsfdf2.S,
config/arc/ieee-754/fixdfsi.S, config/arc/ieee-754/fixsfsi.S,
config/arc/ieee-754/fixunsdfsi.S, config/arc/ieee-754/floatsidf.S,
config/arc/ieee-754/floatsisf.S, config/arc/ieee-754/floatunsidf.S,
config/arc/ieee-754/gedf2.S, config/arc/ieee-754/gesf2.S,
config/arc/ieee-754/gtdf2.S, config/arc/ieee-754/gtsf2.S,
config/arc/ieee-754/muldf3.S, config/arc/ieee-754/mulsf3.S,
config/arc/ieee-754/orddf2.S, config/arc/ieee-754/ordsf2.S,
config/arc/ieee-754/truncdfsf2.S, config/arc/ieee-754/uneqdf2.S,
config/arc/ieee-754/uneqsf2.S, config/arc/initfini.c,
config/arc/lib1funcs.S, config/arc/t-arc, config/arc/t-arc-newlib,
config/cris/umulsidi3.S, config/msp430/cmpsi2.S,
config/msp430/epilogue.S, config/msp430/lib2bitcountHI.c,
config/msp430/lib2divHI.c, config/msp430/lib2divQI.c,
config/msp430/lib2divSI.c, config/msp430/lib2mul.c,
config/msp430/msp430-divmod.h, config/msp430/msp430-mul.h,
config/msp430/slli.S, config/msp430/srai.S, config/msp430/srli.S,
config/rl78/divmodhi.S, config/rl78/divmodqi.S, config/rl78/divmodsi.S,
config/rl78/signbit.S, vtv_end.c, vtv_end_preinit.c, vtv_start.c,
vtv_start_preinit.c: Use the standard form for the copyright notice.

libgomp/
* hashtab.h: Use the standard form for the copyright notice.

libstdc++-v3/
* testsuite/18_support/new_handler.cc,
testsuite/18_support/terminate_handler.cc,
testsuite/18_support/unexpected_handler.cc: Use the standard form for
the copyright notice.

From-SVN: r206288

10 years agoSmall ChangeLog fixes.
Jakub Jelinek [Thu, 2 Jan 2014 21:56:58 +0000 (22:56 +0100)]
Small ChangeLog fixes.

From-SVN: r206287

10 years agognat_ugn.texi: Bump @copying's copyright year.
Tobias Burnus [Thu, 2 Jan 2014 21:25:41 +0000 (22:25 +0100)]
gnat_ugn.texi: Bump @copying's copyright year.

2014-01-02  Tobias Burnus  <burnus@net-b.de>

gcc/ada/
        * gnat_ugn.texi: Bump @copying's copyright year.

gcc/
        * gcc.c (process_command): Update copyright notice dates.
        * gcov-dump.c: Ditto.
        * gcov.c: Ditto.
        * doc/cpp.texi: Bump @copying's copyright year.
        * doc/cppinternals.texi: Ditto.
        * doc/gcc.texi: Ditto.
        * doc/gccint.texi: Ditto.
        * doc/gcov.texi: Ditto.
        * doc/install.texi: Ditto.
        * doc/invoke.texi: Ditto.

gcc/fortran/
        * gfortranspec.c (lang_specific_driver): Update copyright notice
        dates.
        * gfc-internals.texi: Bump @copying's copyright year.
        * gfortran.texi: Ditto.
        * intrinsic.texi: Ditto.
        * invoke.texi: Ditto.

gcc/go/
        * gcc/go/gccgo.texi: Ditto.

gcc/java/
        * jcf-dump.c (version): Update copyright notice dates.
        * gcj.texi: Bump @copying's copyright year.

libgomp/
        * libgomp.texi: Bump @copying's copyright year.

libitm/
        * libitm.texi: Bump @copying's copyright year.

libjava/
        * classpath/gnu/java/rmi/registry/RegistryImpl.java (version):
        * Update
        copyright notice dates.
        * classpath/tools/gnu/classpath/tools/orbd/Main.java (run):
        * Ditto.
        * gnu/gcj/convert/Convert.java (version): Update copyright
        * notice
        dates.
        * gnu/gcj/tools/gcj_dbtool/Main.java (main): Ditto.

libquadmath/
        * libquadmath.texi: Bump @copying's copyright year.

From-SVN: r206286

10 years agore PR fortran/59654 ([OOP] Broken function table with complex OO use case)
Janus Weil [Thu, 2 Jan 2014 17:27:11 +0000 (18:27 +0100)]
re PR fortran/59654 ([OOP] Broken function table with complex OO use case)

2014-01-02  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59654
* resolve.c (resolve_typebound_procedures): No need to create the vtab
here.

2014-01-02  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59654
* gfortran.dg/dynamic_dispatch_12.f90: New.

From-SVN: r206281

10 years agoChangelog: Fix year of my last commit.
Jan-Benedict Glaw [Thu, 2 Jan 2014 13:15:01 +0000 (13:15 +0000)]
Changelog: Fix year of my last commit.

2014-01-02  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

* Changelog: Fix year of my last commit.

From-SVN: r206280

10 years agoDaily bump.
GCC Administrator [Thu, 2 Jan 2014 00:16:58 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r206277

10 years agonios2.h (BITS_PER_UNIT): Don't define it.
Jan-Benedict Glaw [Wed, 1 Jan 2014 12:19:58 +0000 (12:19 +0000)]
nios2.h (BITS_PER_UNIT): Don't define it.

2013-12-31  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

* config/nios2/nios2.h (BITS_PER_UNIT): Don't define it.

[BR]: http://gcc.gnu.org/ml/gcc-patches/2013-12/msg01990.html

From-SVN: r206274

10 years agoDaily bump.
GCC Administrator [Wed, 1 Jan 2014 00:16:30 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r206273

10 years agotarget-supports.exp (check_effective_target_avx512f): Make sure the builtin isn't...
Jakub Jelinek [Wed, 1 Jan 2014 00:02:57 +0000 (01:02 +0100)]
target-supports.exp (check_effective_target_avx512f): Make sure the builtin isn't optimized away as unused.

* lib/target-supports.exp (check_effective_target_avx512f): Make sure
the builtin isn't optimized away as unused.

From-SVN: r206270

10 years agosse.md (*mov<mode>_internal): Guard EXT_REX_SSE_REGNO_P (REGNO ()) uses with REG_P.
Jakub Jelinek [Tue, 31 Dec 2013 23:53:17 +0000 (00:53 +0100)]
sse.md (*mov<mode>_internal): Guard EXT_REX_SSE_REGNO_P (REGNO ()) uses with REG_P.

* config/i386/sse.md (*mov<mode>_internal): Guard
EXT_REX_SSE_REGNO_P (REGNO ()) uses with REG_P.

From-SVN: r206269

10 years agore PR rtl-optimization/59647 (ICE in simplify_const_unary_operation, at simplify...
Jakub Jelinek [Tue, 31 Dec 2013 23:48:36 +0000 (00:48 +0100)]
re PR rtl-optimization/59647 (ICE in simplify_const_unary_operation, at simplify-rtx.c:1597)

PR rtl-optimization/59647
* cse.c (cse_process_notes_1): Don't substitute negative VOIDmode
new_rtx into UNSIGNED_FLOAT rtxes.

* g++.dg/opt/pr59647.C: New test.

From-SVN: r206267

10 years agoavx512fintrin.h (_mm_add_round_sd): New.
Alexander Ivchenko [Tue, 31 Dec 2013 12:13:49 +0000 (12:13 +0000)]
avx512fintrin.h (_mm_add_round_sd): New.

gcc/
* config/i386/avx512fintrin.h (_mm_add_round_sd): New.
(_mm_add_round_sd): Ditto.
(_mm_add_round_ss): Ditto.
(_mm_sub_round_sd): Ditto.
(_mm_sub_round_ss): Ditto.
(_mm_rcp14_sd): Ditto.
(_mm_rcp14_ss): Ditto.
(_mm_sqrt_round_sd): Ditto.
(_mm_sqrt_round_ss): Ditto.
(_mm_mul_round_sd): Ditto.
(_mm_mul_round_ss): Ditto.
(_mm_div_round_sd): Ditto.
(_mm_div_round_ss): Ditto.
(_mm_scalef_round_sd): Ditto.
(_mm_scalef_round_ss): Ditto.
(_mm_scalef_round_sd): Ditto.
(_mm_scalef_round_ss): Ditto.
(_mm_cvt_roundsd_ss): Ditto.
(_mm_cvt_roundsd_sd): Ditto.
(_mm_getexp_round_ss): Ditto.
(_mm_getexp_round_sd): Ditto.
(_mm_getmant_round_sd): Ditto.
(_mm_getmant_round_ss): Ditto.
(_mm_roundscale_round_ss): Ditto.
(_mm_roundscale_round_sd): Ditto.
(_mm_max_round_sd): Ditto.
(_mm_max_round_ss): Ditto.
(_mm_min_round_sd): Ditto.
(_mm_min_round_ss): Ditto.
(_mm_fmadd_round_sd): Ditto.
(_mm_fmadd_round_ss): Ditto.
(_mm_fmsub_round_sd): Ditto.
(_mm_fmsub_round_ss): Ditto.
(_mm_fnmadd_round_sd): Ditto.
(_mm_fnmadd_round_ss): Ditto.
(_mm_fnmsub_round_sd): Ditto.
(_mm_fnmsub_round_ss): Ditto.
(_mm_scalef_sd): Ditto.
(_mm_scalef_ss): Ditto.
(_mm_getexp_ss): Ditto.
(_mm_getexp_sd): Ditto.
(_mm_getmant_sd): Ditto.
(_mm_getmant_ss): Ditto.
(_mm_roundscale_ss): Ditto.
(_mm_roundscale_sd): Ditto.
* config/i386/i386-builtin-types.def: New types to support
new built-ins: <V2DF, V2DF, V2DF, INT, INT>, <V4SF, V4SF, V4SF, INT, INT>,
<(V4SF, V4SF, V2DF, INT>, <V2DF, V2DF, V4SF, INT>,
<V4SF, V4SF, V4SF, V4SF, IN>.
* config/i386/i386.c (enum ix86_builtins): Add IX86_BUILTIN_ADDSD_ROUND,
IX86_BUILTIN_ADDSS_ROUND, IX86_BUILTIN_CVTSD2SS_ROUND,
IX86_BUILTIN_CVTSS2SD_ROUND, IX86_BUILTIN_DIVSD_ROUND,
IX86_BUILTIN_GETEXPSD128, IX86_BUILTIN_DIVSS_ROUND,
IX86_BUILTIN_GETEXPSS128, IX86_BUILTIN_GETMANTSD128,
IX86_BUILTIN_GETMANTSS128, IX86_BUILTIN_MAXSD_ROUND,
IX86_BUILTIN_MAXSS_ROUND, IX86_BUILTIN_MINSD_ROUND,
IX86_BUILTIN_MINSS_ROUND, IX86_BUILTIN_MULSD_ROUND,
IX86_BUILTIN_MULSS_ROUND, IX86_BUILTIN_RCP14SD,
IX86_BUILTIN_RCP14SS, IX86_BUILTIN_RNDSCALESD,
IX86_BUILTIN_RNDSCALESS, IX86_BUILTIN_RSQRT14SD,
IX86_BUILTIN_RSQRT14SS, IX86_BUILTIN_SCALEFSD,
IX86_BUILTIN_SCALEFSS, IX86_BUILTIN_SQRTSD_ROUND,
IX86_BUILTIN_SQRTSS_ROUND, IX86_BUILTIN_SUBSD_ROUND,
IX86_BUILTIN_SUBSS_ROUND, IX86_BUILTIN_VFMADDSD3_ROUND,
IX86_BUILTIN_VFMADDSS3_ROUND, IX86_BUILTIN_VFMSUBSD3_MASK3,
IX86_BUILTIN_VFMSUBSS3_MASK3.
(builtin_description bdesc_args[]): Add
__builtin_ia32_rcp14sd, __builtin_ia32_rcp14ss,
__builtin_ia32_rsqrt14pd512_mask, __builtin_ia32_rsqrt14ps512_mask,
__builtin_ia32_rsqrt14sd, __builtin_ia32_rsqrt14ss,
__builtin_ia32_addsd_round, __builtin_ia32_addss_round,
__builtin_ia32_cvtsd2ss_round, __builtin_ia32_cvtss2sd_round,
__builtin_ia32_divsd_round, __builtin_ia32_divss_round,
__builtin_ia32_getexpsd128_round, __builtin_ia32_getexpss128_round,
__builtin_ia32_getmantsd_round, __builtin_ia32_getmantss_round,
__builtin_ia32_maxsd_round, __builtin_ia32_maxss_round,
__builtin_ia32_minsd_round, __builtin_ia32_minss_round,
__builtin_ia32_mulsd_round, __builtin_ia32_mulss_round,
__builtin_ia32_rndscalesd_round, __builtin_ia32_rndscaless_round,
__builtin_ia32_scalefsd_round, __builtin_ia32_scalefss_round,
__builtin_ia32_sqrtsd_round, __builtin_ia32_sqrtss_round,
__builtin_ia32_subsd_round, __builtin_ia32_subss_round,
__builtin_ia32_vfmaddsd3_round, __builtin_ia32_vfmaddss3_round.
(ix86_expand_round_builtin): Expand new FTYPEs.
* config/i386/sse.md (<sse>_vm<plusminus_insn><mode>3): Support
EVEX's embedded rouding.
(<sse>_vm<multdiv_mnemonic><mode>3): Ditto.
(<sse>_vmsqrt<mode>2): Ditto.
(<sse>_vm<code><mode>3): Ditto.
(sse2_cvtsd2ss): Ditto.
(sse2_cvtss2sd): Ditto.
(*avx512f_vmscalef<mode>): Ditto.
(avx512f_sgetexp<mode>): Ditto.
(*avx512f_rndscale<mode>): Ditto.
(avx512f_getmant<mode>): Ditto.
(*srcp14<mode>): Make visible.
(*rsqrt14<mode>): Ditto.
* config/i386/subst.md (mask_mode512bit_condition): Fix
mode calculation.
(sd_mask_mode512bit_condition): Ditto.
(round_mode512bit_condition): Ditto.
(round_modev4sf_condition): Ditto.
(round_mask_scalar_operand3): Remove.
(round_prefix): New.
(round_saeonly_op3): Ditto.
(round_saeonly_prefix): Ditto.

testsuite/
* gcc.target/i386/avx-1.c: Update for AVX-512 scalar insns.
* gcc.target/i386/avx512f-vaddsd-1.c: New.
* gcc.target/i386/avx512f-vaddss-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtsd2ss-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtss2sd-1.c: Ditto.
* gcc.target/i386/avx512f-vdivsd-1.c: Ditto.
* gcc.target/i386/avx512f-vdivss-1.c: Ditto.
* gcc.target/i386/avx512f-vextractf32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vextracti32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXss-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXss-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXss-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXss-1.c: Ditto.
* gcc.target/i386/avx512f-vgetexpsd-1.c: Ditto.
* gcc.target/i386/avx512f-vgetexpsd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetexpss-1.c: Ditto.
* gcc.target/i386/avx512f-vgetexpss-2.c: Ditto.
* gcc.target/i386/avx512f-vgetmantsd-1.c: Ditto.
* gcc.target/i386/avx512f-vgetmantsd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetmantss-1.c: Ditto.
* gcc.target/i386/avx512f-vgetmantss-2.c: Ditto.
* gcc.target/i386/avx512f-vmaxsd-1.c: Ditto.
* gcc.target/i386/avx512f-vmaxss-1.c: Ditto.
* gcc.target/i386/avx512f-vminsd-1.c: Ditto.
* gcc.target/i386/avx512f-vminss-1.c: Ditto.
* gcc.target/i386/avx512f-vmulsd-1.c: Ditto.
* gcc.target/i386/avx512f-vmulss-1.c: Ditto.
* gcc.target/i386/avx512f-vrcp14sd-1.c: Ditto.
* gcc.target/i386/avx512f-vrcp14sd-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14ss-1.c: Ditto.
* gcc.target/i386/avx512f-vrcp14ss-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscalesd-1.c: Ditto.
* gcc.target/i386/avx512f-vrndscalesd-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscaless-1.c: Ditto.
* gcc.target/i386/avx512f-vrndscaless-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14sd-1.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14sd-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14ss-1.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14ss-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefsd-1.c: Ditto.
* gcc.target/i386/avx512f-vscalefsd-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefss-1.c: Ditto.
* gcc.target/i386/avx512f-vscalefss-2.c: Ditto.
* gcc.target/i386/avx512f-vsqrtsd-1.c: Ditto.
* gcc.target/i386/avx512f-vsqrtss-1.c: Ditto.
* gcc.target/i386/avx512f-vsubsd-1.c: Ditto.
* gcc.target/i386/avx512f-vsubss-1.c: Ditto.
* gcc.target/i386/sse-14.c: Update for AVX-512 scalar insns.
* gcc.target/i386/sse-23.c: Ditto.
* gcc.target/i386/testimm-10.c: Ditto.

Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>
From-SVN: r206265

10 years agore PR tree-optimization/59622 (internal compiler error: verify_gimple failed)
Jakub Jelinek [Tue, 31 Dec 2013 11:57:39 +0000 (12:57 +0100)]
re PR tree-optimization/59622 (internal compiler error: verify_gimple failed)

PR tree-optimization/59622
* gimple-fold.c (gimple_fold_call): Don't replace OBJ_TYPE_REF
call fndecl with 0 possible targets with BUILT_IN_UNREACHABLE,
instead only for !inplace add a __builtin_unreachable () call
before the call.

* g++.dg/opt/pr59622.C: New test.

From-SVN: r206264

10 years agoi386-common.c (OPTION_MASK_ISA_SHA_SET): New.
Alexander Ivchenko [Tue, 31 Dec 2013 11:39:07 +0000 (11:39 +0000)]
i386-common.c (OPTION_MASK_ISA_SHA_SET): New.

gcc/

* common/config/i386/i386-common.c (OPTION_MASK_ISA_SHA_SET): New.
(OPTION_MASK_ISA_SHA_UNSET): Ditto.
(ix86_handle_option): Handle OPT_msha.
* config.gcc (extra_headers): Add shaintrin.h.
* config/i386/cpuid.h (bit_SHA): New.
* config/i386/driver-i386.c (host_detect_local_cpu): Detect SHA
instructions.
* config/i386/i386-c.c (ix86_target_macros_internal): Handle
OPTION_MASK_ISA_SHA.
* config/i386/i386.c (ix86_target_string): Add -msha.
(ix86_option_override_internal): Add PTA_SHA.
(ix86_valid_target_attribute_inner_p): Handle OPT_msha.
(enum ix86_builtins): Add IX86_BUILTIN_SHA1MSG1,
IX86_BUILTIN_SHA1MSG2, IX86_BUILTIN_SHA1NEXTE, IX86_BUILTIN_SHA1RNDS4,
IX86_BUILTIN_SHA256MSG1, IX86_BUILTIN_SHA256MSG2,
IX86_BUILTIN_SHA256RNDS2.
(bdesc_args): Add BUILTINS defined above.
(ix86_init_mmx_sse_builtins): Add __builtin_ia32_sha1msg1,
__builtin_ia32_sha1msg2, __builtin_ia32_sha1nexte,
__builtin_ia32_sha1rnds4, __builtin_ia32_sha256msg1,
__builtin_ia32_sha256msg2, __builtin_ia32_sha256rnds2.
(ix86_expand_args_builtin): Handle V4SI_FTYPE_V4SI_V4SI_V4SI, add
warning for CODE_FOR_sha1rnds4.
* config/i386/i386.h (TARGET_SHA): New.
(TARGET_SHA_P): Ditto.
* config/i386/i386.opt (-msha): Document it.
* config/i386/immintrin.h: Add shaintrin.h.
* config/i386/shaintrin.h: New.
* config/i386/sse.md (unspec): Add UNSPEC_SHA1MSG1, UNSPEC_SHA1MSG2,
UNSPEC_SHA1NEXTE, UNSPEC_SHA1RNDS4, UNSPEC_SHA256MSG1,
UNSPEC_SHA256MSG2, UNSPEC_SHA256RNDS2.
(sha1msg1): New.
(sha1msg2): Ditto.
(sha1nexte): Ditto.
(sha1rnds4): Ditto.
(sha256msg1): Ditto.
(sha256msg2): Ditto.
(sha256rnds2): Ditto.
* doc/invoke.texi: Add -msha.

testsuite/

* gcc.target/i386/avx-1.c: Add define for __builtin_ia32_sha1rnds4.
* gcc.target/i386/i386.exp (check_effective_target_sha): New.
* gcc.target/i386/sha-check.h: New file.
* gcc.target/i386/sha1msg1-1.c: Ditto.
* gcc.target/i386/sha1msg1-2.c: Ditto.
* gcc.target/i386/sha1msg2-1.c: Ditto.
* gcc.target/i386/sha1msg2-2.c: Ditto.
* gcc.target/i386/sha1nexte-1: Ditto.
* gcc.target/i386/sha1nexte-2: Ditto.
* gcc.target/i386/sha1rnds4-1.c: Ditto.
* gcc.target/i386/sha1rnds4-2.c: Ditto.
* gcc.target/i386/sha256msg1-1.c: Ditto.
* gcc.target/i386/sha256msg1-2.c: Ditto.
* gcc.target/i386/sha256msg2-1.c: Ditto.
* gcc.target/i386/sha256msg2-2.c: Ditto.
* gcc.target/i386/sha256rnds2-1.c: Ditto.
* gcc.target/i386/sha256rnds2-2.c: Ditto.
* gcc.target/i386/sse-13.c: Add __builtin_ia32_sha1rnds4.
* gcc.target/i386/sse-14.c: Add _mm_sha1rnds4_epu32.
* gcc.target/i386/sse-22.c: Ditto.
* gcc.target/i386/sse-23.c: Add __builtin_ia32_sha1rnds4.

Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>
From-SVN: r206263

10 years agoavx512cd-check.h: New file.
Alexander Ivchenko [Tue, 31 Dec 2013 11:34:58 +0000 (11:34 +0000)]
avx512cd-check.h: New file.

testsuite/

* gcc.target/i386/avx512cd-check.h: New file.
* gcc.target/i386/avx512cd-vpbroadcastmb2q-1.c: Ditto.
* gcc.target/i386/avx512cd-vpbroadcastmb2q-2.c: Ditto.
* gcc.target/i386/avx512cd-vpbroadcastmw2d-1.c: Ditto.
* gcc.target/i386/avx512cd-vpbroadcastmw2d-2.c: Ditto.
* gcc.target/i386/avx512cd-vpconflictd-1.c: Ditto.
* gcc.target/i386/avx512cd-vpconflictd-2.c: Ditto.
* gcc.target/i386/avx512cd-vpconflictq-1.c: Ditto.
* gcc.target/i386/avx512cd-vpconflictq-2.c: Ditto.
* gcc.target/i386/avx512cd-vplzcntd-1.c: Ditto.
* gcc.target/i386/avx512cd-vplzcntd-2.c: Ditto.
* gcc.target/i386/avx512cd-vplzcntq-1.c: Ditto.
* gcc.target/i386/avx512cd-vplzcntq-2.c: Ditto.
* gcc.target/i386/avx512cd-vptestnmd-1.c: Ditto.
* gcc.target/i386/avx512cd-vptestnmd-2.c: Ditto.
* gcc.target/i386/avx512cd-vptestnmq-1.c: Ditto.
* gcc.target/i386/avx512cd-vptestnmq-2.c: Ditto.
* gcc.target/i386/avx512er-vexp2pd-1.c: Ditto.
* gcc.target/i386/avx512er-vexp2pd-2.c: Ditto.
* gcc.target/i386/avx512er-vexp2ps-1.c: Ditto.
* gcc.target/i386/avx512er-vexp2ps-2.c: Ditto.
* gcc.target/i386/avx512er-vrcp28pd-1.c: Ditto.
* gcc.target/i386/avx512er-vrcp28pd-2.c: Ditto.
* gcc.target/i386/avx512er-vrcp28ps-1.c: Ditto.
* gcc.target/i386/avx512er-vrcp28ps-2.c: Ditto.
* gcc.target/i386/avx512er-vrsqrt28pd-1.c: Ditto.
* gcc.target/i386/avx512er-vrsqrt28pd-2.c: Ditto.
* gcc.target/i386/avx512er-vrsqrt28ps-1.c: Ditto.
* gcc.target/i386/avx512er-vrsqrt28ps-2.c: Ditto.
* gcc.target/i386/avx512f-broadcast-gpr-1.c: Ditto.
* gcc.target/i386/avx512f-broadcast-gpr-2.c: Ditto.
* gcc.target/i386/avx512f-ceil-sfix-vec-1.c: Ditto.
* gcc.target/i386/avx512f-ceil-sfix-vec-2.c: Ditto.
* gcc.target/i386/avx512f-dummy.c: Ditto.
* gcc.target/i386/avx512f-floor-sfix-vec-1.c: Ditto.
* gcc.target/i386/avx512f-floor-sfix-vec-2.c: Ditto.
* gcc.target/i386/avx512f-gather-1.c: Ditto.
* gcc.target/i386/avx512f-gather-2.c: Ditto.
* gcc.target/i386/avx512f-gather-3.c: Ditto.
* gcc.target/i386/avx512f-gather-4.c: Ditto.
* gcc.target/i386/avx512f-gather-5.c: Ditto.
* gcc.target/i386/avx512f-i32gatherd512-1.c: Ditto.
* gcc.target/i386/avx512f-i32gatherd512-2.c: Ditto.
* gcc.target/i386/avx512f-i32gatherpd512-1.c: Ditto.
* gcc.target/i386/avx512f-i32gatherpd512-2.c: Ditto.
* gcc.target/i386/avx512f-i32gatherps512-1.c: Ditto.
* gcc.target/i386/avx512f-i32gatherps512-2.c: Ditto.
* gcc.target/i386/avx512f-i32gatherq512-1.c: Ditto.
* gcc.target/i386/avx512f-i32gatherq512-2.c: Ditto.
* gcc.target/i386/avx512f-i32scatterd512-1.c: Ditto.
* gcc.target/i386/avx512f-i32scatterd512-2.c: Ditto.
* gcc.target/i386/avx512f-i32scatterpd512-1.c: Ditto.
* gcc.target/i386/avx512f-i32scatterpd512-2.c: Ditto.
* gcc.target/i386/avx512f-i32scatterps512-1.c: Ditto.
* gcc.target/i386/avx512f-i32scatterps512-2.c: Ditto.
* gcc.target/i386/avx512f-i32scatterq512-1.c: Ditto.
* gcc.target/i386/avx512f-i32scatterq512-2.c: Ditto.
* gcc.target/i386/avx512f-i64gatherd512-1.c: Ditto.
* gcc.target/i386/avx512f-i64gatherd512-2.c: Ditto.
* gcc.target/i386/avx512f-i64gatherpd512-1.c: Ditto.
* gcc.target/i386/avx512f-i64gatherpd512-2.c: Ditto.
* gcc.target/i386/avx512f-i64gatherps512-1.c: Ditto.
* gcc.target/i386/avx512f-i64gatherps512-2.c: Ditto.
* gcc.target/i386/avx512f-i64gatherq512-1.c: Ditto.
* gcc.target/i386/avx512f-i64gatherq512-2.c: Ditto.
* gcc.target/i386/avx512f-i64scatterd512-1.c: Ditto.
* gcc.target/i386/avx512f-i64scatterd512-2.c: Ditto.
* gcc.target/i386/avx512f-i64scatterpd512-1.c: Ditto.
* gcc.target/i386/avx512f-i64scatterpd512-2.c: Ditto.
* gcc.target/i386/avx512f-i64scatterps512-1.c: Ditto.
* gcc.target/i386/avx512f-i64scatterps512-2.c: Ditto.
* gcc.target/i386/avx512f-i64scatterq512-1.c: Ditto.
* gcc.target/i386/avx512f-i64scatterq512-2.c: Ditto.
* gcc.target/i386/avx512f-inline-asm.c: Ditto.
* gcc.target/i386/avx512f-kandnw-1.c: Ditto.
* gcc.target/i386/avx512f-kandw-1.c: Ditto.
* gcc.target/i386/avx512f-klogic-2.c: Ditto.
* gcc.target/i386/avx512f-knotw-1.c: Ditto.
* gcc.target/i386/avx512f-kortestw-1.c: Ditto.
* gcc.target/i386/avx512f-kortestw-2.c: Ditto.
* gcc.target/i386/avx512f-korw-1.c: Ditto.
* gcc.target/i386/avx512f-kunpckbw-1.c: Ditto.
* gcc.target/i386/avx512f-kxnorw-1.c: Ditto.
* gcc.target/i386/avx512f-kxorw-1.c: Ditto.
* gcc.target/i386/avx512f-rounding.c: Ditto.
* gcc.target/i386/avx512f-set-v16sf-1.c: Ditto.
* gcc.target/i386/avx512f-set-v16sf-2.c: Ditto.
* gcc.target/i386/avx512f-set-v16sf-3.c: Ditto.
* gcc.target/i386/avx512f-set-v16sf-4.c: Ditto.
* gcc.target/i386/avx512f-set-v16sf-5.c: Ditto.
* gcc.target/i386/avx512f-set-v16si-1.c: Ditto.
* gcc.target/i386/avx512f-set-v16si-2.c: Ditto.
* gcc.target/i386/avx512f-set-v16si-3.c: Ditto.
* gcc.target/i386/avx512f-set-v16si-4.c: Ditto.
* gcc.target/i386/avx512f-set-v16si-5.c: Ditto.
* gcc.target/i386/avx512f-set-v8df-1.c: Ditto.
* gcc.target/i386/avx512f-set-v8df-2.c: Ditto.
* gcc.target/i386/avx512f-set-v8df-3.c: Ditto.
* gcc.target/i386/avx512f-set-v8df-4.c: Ditto.
* gcc.target/i386/avx512f-set-v8df-5.c: Ditto.
* gcc.target/i386/avx512f-set-v8di-1.c: Ditto.
* gcc.target/i386/avx512f-set-v8di-2.c: Ditto.
* gcc.target/i386/avx512f-set-v8di-3.c: Ditto.
* gcc.target/i386/avx512f-set-v8di-4.c: Ditto.
* gcc.target/i386/avx512f-set-v8di-5.c: Ditto.
* gcc.target/i386/avx512f-setzero-pd-1.c: Ditto.
* gcc.target/i386/avx512f-setzero-ps-1.c: Ditto.
* gcc.target/i386/avx512f-setzero-si512-1.c: Ditto.
* gcc.target/i386/avx512f-vaddpd-1.c: Ditto.
* gcc.target/i386/avx512f-vaddpd-2.c: Ditto.
* gcc.target/i386/avx512f-vaddps-1.c: Ditto.
* gcc.target/i386/avx512f-vaddps-2.c: Ditto.
* gcc.target/i386/avx512f-vaddsd-1.c: Ditto.
* gcc.target/i386/avx512f-vaddsd-2.c: Ditto.
* gcc.target/i386/avx512f-vaddss-1.c: Ditto.
* gcc.target/i386/avx512f-vaddss-2.c: Ditto.
* gcc.target/i386/avx512f-valignd-1.c: Ditto.
* gcc.target/i386/avx512f-valignd-2.c: Ditto.
* gcc.target/i386/avx512f-valignq-1.c: Ditto.
* gcc.target/i386/avx512f-valignq-2.c: Ditto.
* gcc.target/i386/avx512f-vblendmpd-1.c: Ditto.
* gcc.target/i386/avx512f-vblendmpd-2.c: Ditto.
* gcc.target/i386/avx512f-vblendmps-1.c: Ditto.
* gcc.target/i386/avx512f-vblendmps-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastf32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastf32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastf64x4-1.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastf64x4-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcasti32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vbroadcasti32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcasti64x4-1.c: Ditto.
* gcc.target/i386/avx512f-vbroadcasti64x4-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastsd-1.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastsd-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastss-1.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastss-2.c: Ditto.
* gcc.target/i386/avx512f-vcmppd-1.c: Ditto.
* gcc.target/i386/avx512f-vcmppd-2.c: Ditto.
* gcc.target/i386/avx512f-vcmpps-1.c: Ditto.
* gcc.target/i386/avx512f-vcmpps-2.c: Ditto.
* gcc.target/i386/avx512f-vcmpsd-1.c: Ditto.
* gcc.target/i386/avx512f-vcmpsd-2.c: Ditto.
* gcc.target/i386/avx512f-vcmpss-1.c: Ditto.
* gcc.target/i386/avx512f-vcmpss-2.c: Ditto.
* gcc.target/i386/avx512f-vcomisd-1.c: Ditto.
* gcc.target/i386/avx512f-vcomiss-1.c: Ditto.
* gcc.target/i386/avx512f-vcompresspd-1.c: Ditto.
* gcc.target/i386/avx512f-vcompresspd-2.c: Ditto.
* gcc.target/i386/avx512f-vcompressps-1.c: Ditto.
* gcc.target/i386/avx512f-vcompressps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtdq2pd-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtdq2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtdq2ps-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtdq2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtpd2dq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtpd2dq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtpd2ps-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtpd2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtpd2udq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtpd2udq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtph2ps-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtph2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2dq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2dq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2pd-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2ph-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2ph-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2udq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2udq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtsd2si-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtsd2si64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtsd2ss-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtsd2ss-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtsd2usi-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtsd2usi-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtsd2usi64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtsd2usi64-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtsi2sd64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtsi2ss-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtsi2ss64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtss2sd-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtss2sd-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtss2si-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtss2si64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtss2usi-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtss2usi-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtss2usi64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtss2usi64-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttpd2dq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttpd2dq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttpd2udq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttpd2udq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttps2dq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttps2dq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttps2udq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttps2udq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2si-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2si-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2si64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2si64-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2usi-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2usi-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2usi64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2usi64-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttss2si-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttss2si-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttss2si64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttss2si64-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttss2usi-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttss2usi-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttss2usi64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttss2usi64-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtudq2pd-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtudq2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtudq2ps-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtudq2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtusi2sd-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtusi2sd-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtusi2sd64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtusi2sd64-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtusi2ss-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtusi2ss-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtusi2ss64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtusi2ss64-2.c: Ditto.
* gcc.target/i386/avx512f-vdivpd-1.c: Ditto.
* gcc.target/i386/avx512f-vdivpd-2.c: Ditto.
* gcc.target/i386/avx512f-vdivps-1.c: Ditto.
* gcc.target/i386/avx512f-vdivps-2.c: Ditto.
* gcc.target/i386/avx512f-vdivsd-1.c: Ditto.
* gcc.target/i386/avx512f-vdivsd-2.c: Ditto.
* gcc.target/i386/avx512f-vdivss-1.c: Ditto.
* gcc.target/i386/avx512f-vdivss-2.c: Ditto.
* gcc.target/i386/avx512f-vec-init.c: Ditto.
* gcc.target/i386/avx512f-vec-unpack.c: Ditto.
* gcc.target/i386/avx512f-vexpandpd-1.c: Ditto.
* gcc.target/i386/avx512f-vexpandpd-2.c: Ditto.
* gcc.target/i386/avx512f-vexpandps-1.c: Ditto.
* gcc.target/i386/avx512f-vexpandps-2.c: Ditto.
* gcc.target/i386/avx512f-vextractf32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vextractf32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vextractf64x4-1.c: Ditto.
* gcc.target/i386/avx512f-vextractf64x4-2.c: Ditto.
* gcc.target/i386/avx512f-vextracti32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vextracti32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vextracti64x4-1.c: Ditto.
* gcc.target/i386/avx512f-vextracti64x4-2.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmps-1.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmps-2.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmsd-2.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmss-1.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmss-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXps-1.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXsd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXss-1.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXss-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddsubXXXpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmaddsubXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddsubXXXps-1.c: Ditto.
* gcc.target/i386/avx512f-vfmaddsubXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXps-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXsd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXss-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXss-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubaddXXXpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubaddXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubaddXXXps-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubaddXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXps-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXsd-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXss-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXss-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXps-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXsd-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXss-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXss-2.c: Ditto.
* gcc.target/i386/avx512f-vgetexppd-1.c: Ditto.
* gcc.target/i386/avx512f-vgetexppd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetexpps-1.c: Ditto.
* gcc.target/i386/avx512f-vgetexpps-2.c: Ditto.
* gcc.target/i386/avx512f-vgetexpsd-1.c: Ditto.
* gcc.target/i386/avx512f-vgetexpsd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetexpss-1.c: Ditto.
* gcc.target/i386/avx512f-vgetexpss-2.c: Ditto.
* gcc.target/i386/avx512f-vgetmantpd-1.c: Ditto.
* gcc.target/i386/avx512f-vgetmantpd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetmantps-1.c: Ditto.
* gcc.target/i386/avx512f-vgetmantps-2.c: Ditto.
* gcc.target/i386/avx512f-vgetmantsd-1.c: Ditto.
* gcc.target/i386/avx512f-vgetmantsd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetmantss-1.c: Ditto.
* gcc.target/i386/avx512f-vgetmantss-2.c: Ditto.
* gcc.target/i386/avx512f-vinsertf32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vinsertf32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vinsertf64x4-1.c: Ditto.
* gcc.target/i386/avx512f-vinsertf64x4-2.c: Ditto.
* gcc.target/i386/avx512f-vinserti32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vinserti32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vinserti64x4-1.c: Ditto.
* gcc.target/i386/avx512f-vinserti64x4-2.c: Ditto.
* gcc.target/i386/avx512f-vmaxpd-1.c: Ditto.
* gcc.target/i386/avx512f-vmaxpd-2.c: Ditto.
* gcc.target/i386/avx512f-vmaxps-1.c: Ditto.
* gcc.target/i386/avx512f-vmaxps-2.c: Ditto.
* gcc.target/i386/avx512f-vmaxsd-1.c: Ditto.
* gcc.target/i386/avx512f-vmaxsd-2.c: Ditto.
* gcc.target/i386/avx512f-vmaxss-1.c: Ditto.
* gcc.target/i386/avx512f-vmaxss-2.c: Ditto.
* gcc.target/i386/avx512f-vminpd-1.c: Ditto.
* gcc.target/i386/avx512f-vminpd-2.c: Ditto.
* gcc.target/i386/avx512f-vminps-1.c: Ditto.
* gcc.target/i386/avx512f-vminps-2.c: Ditto.
* gcc.target/i386/avx512f-vminsd-1.c: Ditto.
* gcc.target/i386/avx512f-vminsd-2.c: Ditto.
* gcc.target/i386/avx512f-vminss-1.c: Ditto.
* gcc.target/i386/avx512f-vminss-2.c: Ditto.
* gcc.target/i386/avx512f-vmovapd-1.c: Ditto.
* gcc.target/i386/avx512f-vmovapd-2.c: Ditto.
* gcc.target/i386/avx512f-vmovaps-1.c: Ditto.
* gcc.target/i386/avx512f-vmovaps-2.c: Ditto.
* gcc.target/i386/avx512f-vmovddup-1.c: Ditto.
* gcc.target/i386/avx512f-vmovddup-2.c: Ditto.
* gcc.target/i386/avx512f-vmovdqa32-1.c: Ditto.
* gcc.target/i386/avx512f-vmovdqa32-2.c: Ditto.
* gcc.target/i386/avx512f-vmovdqa64-1.c: Ditto.
* gcc.target/i386/avx512f-vmovdqa64-2.c: Ditto.
* gcc.target/i386/avx512f-vmovdqu32-1.c: Ditto.
* gcc.target/i386/avx512f-vmovdqu32-2.c: Ditto.
* gcc.target/i386/avx512f-vmovdqu64-1.c: Ditto.
* gcc.target/i386/avx512f-vmovdqu64-2.c: Ditto.
* gcc.target/i386/avx512f-vmovntdq-1.c: Ditto.
* gcc.target/i386/avx512f-vmovntdq-2.c: Ditto.
* gcc.target/i386/avx512f-vmovntpd-1.c: Ditto.
* gcc.target/i386/avx512f-vmovntpd-2.c: Ditto.
* gcc.target/i386/avx512f-vmovntps-1.c: Ditto.
* gcc.target/i386/avx512f-vmovntps-2.c: Ditto.
* gcc.target/i386/avx512f-vmovsd-1.c: Ditto.
* gcc.target/i386/avx512f-vmovsd-2.c: Ditto.
* gcc.target/i386/avx512f-vmovshdup-1.c: Ditto.
* gcc.target/i386/avx512f-vmovshdup-2.c: Ditto.
* gcc.target/i386/avx512f-vmovsldup-1.c: Ditto.
* gcc.target/i386/avx512f-vmovsldup-2.c: Ditto.
* gcc.target/i386/avx512f-vmovss-1.c: Ditto.
* gcc.target/i386/avx512f-vmovss-2.c: Ditto.
* gcc.target/i386/avx512f-vmovupd-1.c: Ditto.
* gcc.target/i386/avx512f-vmovupd-2.c: Ditto.
* gcc.target/i386/avx512f-vmovups-1.c: Ditto.
* gcc.target/i386/avx512f-vmovups-2.c: Ditto.
* gcc.target/i386/avx512f-vmulpd-1.c: Ditto.
* gcc.target/i386/avx512f-vmulpd-2.c: Ditto.
* gcc.target/i386/avx512f-vmulps-1.c: Ditto.
* gcc.target/i386/avx512f-vmulps-2.c: Ditto.
* gcc.target/i386/avx512f-vmulsd-1.c: Ditto.
* gcc.target/i386/avx512f-vmulsd-2.c: Ditto.
* gcc.target/i386/avx512f-vmulss-1.c: Ditto.
* gcc.target/i386/avx512f-vmulss-2.c: Ditto.
* gcc.target/i386/avx512f-vpabsd-2.c: Ditto.
* gcc.target/i386/avx512f-vpabsd512-1.c: Ditto.
* gcc.target/i386/avx512f-vpabsq-2.c: Ditto.
* gcc.target/i386/avx512f-vpabsq512-1.c: Ditto.
* gcc.target/i386/avx512f-vpaddd-1.c: Ditto.
* gcc.target/i386/avx512f-vpaddd-2.c: Ditto.
* gcc.target/i386/avx512f-vpaddq-1.c: Ditto.
* gcc.target/i386/avx512f-vpaddq-2.c: Ditto.
* gcc.target/i386/avx512f-vpandd-1.c: Ditto.
* gcc.target/i386/avx512f-vpandd-2.c: Ditto.
* gcc.target/i386/avx512f-vpandnd-1.c: Ditto.
* gcc.target/i386/avx512f-vpandnd-2.c: Ditto.
* gcc.target/i386/avx512f-vpandnq-1.c: Ditto.
* gcc.target/i386/avx512f-vpandnq-2.c: Ditto.
* gcc.target/i386/avx512f-vpandq-1.c: Ditto.
* gcc.target/i386/avx512f-vpandq-2.c: Ditto.
* gcc.target/i386/avx512f-vpblendmd-1.c: Ditto.
* gcc.target/i386/avx512f-vpblendmd-2.c: Ditto.
* gcc.target/i386/avx512f-vpblendmq-1.c: Ditto.
* gcc.target/i386/avx512f-vpblendmq-2.c: Ditto.
* gcc.target/i386/avx512f-vpbroadcastd-1.c: Ditto.
* gcc.target/i386/avx512f-vpbroadcastd-2.c: Ditto.
* gcc.target/i386/avx512f-vpbroadcastq-1.c: Ditto.
* gcc.target/i386/avx512f-vpbroadcastq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpd-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpeqd-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpeqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpeqq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpeqq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtd-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpud-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpud-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpuq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpuq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcompressd-1.c: Ditto.
* gcc.target/i386/avx512f-vpcompressd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcompressq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcompressq-2.c: Ditto.
* gcc.target/i386/avx512f-vpermd-1.c: Ditto.
* gcc.target/i386/avx512f-vpermd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2d-1.c: Ditto.
* gcc.target/i386/avx512f-vpermi2d-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2pd-1.c: Ditto.
* gcc.target/i386/avx512f-vpermi2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2ps-1.c: Ditto.
* gcc.target/i386/avx512f-vpermi2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2q-1.c: Ditto.
* gcc.target/i386/avx512f-vpermi2q-2.c: Ditto.
* gcc.target/i386/avx512f-vpermilpd-1.c: Ditto.
* gcc.target/i386/avx512f-vpermilpd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermilpdi-1.c: Ditto.
* gcc.target/i386/avx512f-vpermilpdi-2.c: Ditto.
* gcc.target/i386/avx512f-vpermilps-1.c: Ditto.
* gcc.target/i386/avx512f-vpermilps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermilpsi-1.c: Ditto.
* gcc.target/i386/avx512f-vpermilpsi-2.c: Ditto.
* gcc.target/i386/avx512f-vpermpd-1.c: Ditto.
* gcc.target/i386/avx512f-vpermpd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermpdi-1.c: Ditto.
* gcc.target/i386/avx512f-vpermpdi-2.c: Ditto.
* gcc.target/i386/avx512f-vpermps-1.c: Ditto.
* gcc.target/i386/avx512f-vpermps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermq-imm-1.c: Ditto.
* gcc.target/i386/avx512f-vpermq-imm-2.c: Ditto.
* gcc.target/i386/avx512f-vpermq-var-1.c: Ditto.
* gcc.target/i386/avx512f-vpermq-var-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2d-1.c: Ditto.
* gcc.target/i386/avx512f-vpermt2d-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2pd-1.c: Ditto.
* gcc.target/i386/avx512f-vpermt2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2ps-1.c: Ditto.
* gcc.target/i386/avx512f-vpermt2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2q-1.c: Ditto.
* gcc.target/i386/avx512f-vpermt2q-2.c: Ditto.
* gcc.target/i386/avx512f-vpexpandd-1.c: Ditto.
* gcc.target/i386/avx512f-vpexpandd-2.c: Ditto.
* gcc.target/i386/avx512f-vpexpandq-1.c: Ditto.
* gcc.target/i386/avx512f-vpexpandq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmaxsd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmaxsd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmaxsq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmaxsq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmaxud-1.c: Ditto.
* gcc.target/i386/avx512f-vpmaxud-2.c: Ditto.
* gcc.target/i386/avx512f-vpmaxuq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmaxuq-2.c: Ditto.
* gcc.target/i386/avx512f-vpminsd-1.c: Ditto.
* gcc.target/i386/avx512f-vpminsd-2.c: Ditto.
* gcc.target/i386/avx512f-vpminsq-1.c: Ditto.
* gcc.target/i386/avx512f-vpminsq-2.c: Ditto.
* gcc.target/i386/avx512f-vpminud-1.c: Ditto.
* gcc.target/i386/avx512f-vpminud-2.c: Ditto.
* gcc.target/i386/avx512f-vpminuq-1.c: Ditto.
* gcc.target/i386/avx512f-vpminuq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovdb-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovdb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovdw-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovdw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovqb-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovqb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovqd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovqw-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovqw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdb-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdw-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqb-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqw-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxbd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxbd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxbq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxbq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxdq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxdq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxwd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxwd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxwq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxwq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusdb-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovusdb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusdw-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovusdw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqb-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqw-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxbd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxbd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxbq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxbq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxdq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxdq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxwd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxwd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxwq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxwq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmuldq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmuldq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmulld-1.c: Ditto.
* gcc.target/i386/avx512f-vpmulld-2.c: Ditto.
* gcc.target/i386/avx512f-vpmuludq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmuludq-2.c: Ditto.
* gcc.target/i386/avx512f-vpord-1.c: Ditto.
* gcc.target/i386/avx512f-vpord-2.c: Ditto.
* gcc.target/i386/avx512f-vporq-1.c: Ditto.
* gcc.target/i386/avx512f-vporq-2.c: Ditto.
* gcc.target/i386/avx512f-vprold-1.c: Ditto.
* gcc.target/i386/avx512f-vprold-2.c: Ditto.
* gcc.target/i386/avx512f-vprolq-1.c: Ditto.
* gcc.target/i386/avx512f-vprolq-2.c: Ditto.
* gcc.target/i386/avx512f-vprolvd-1.c: Ditto.
* gcc.target/i386/avx512f-vprolvd-2.c: Ditto.
* gcc.target/i386/avx512f-vprolvq-1.c: Ditto.
* gcc.target/i386/avx512f-vprolvq-2.c: Ditto.
* gcc.target/i386/avx512f-vprord-1.c: Ditto.
* gcc.target/i386/avx512f-vprord-2.c: Ditto.
* gcc.target/i386/avx512f-vprorq-1.c: Ditto.
* gcc.target/i386/avx512f-vprorq-2.c: Ditto.
* gcc.target/i386/avx512f-vprorvd-1.c: Ditto.
* gcc.target/i386/avx512f-vprorvd-2.c: Ditto.
* gcc.target/i386/avx512f-vprorvq-1.c: Ditto.
* gcc.target/i386/avx512f-vprorvq-2.c: Ditto.
* gcc.target/i386/avx512f-vpshufd-1.c: Ditto.
* gcc.target/i386/avx512f-vpshufd-2.c: Ditto.
* gcc.target/i386/avx512f-vpslld-1.c: Ditto.
* gcc.target/i386/avx512f-vpslld-2.c: Ditto.
* gcc.target/i386/avx512f-vpslldi-1.c: Ditto.
* gcc.target/i386/avx512f-vpslldi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsllq-1.c: Ditto.
* gcc.target/i386/avx512f-vpsllq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsllqi-1.c: Ditto.
* gcc.target/i386/avx512f-vpsllqi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsllvd-1.c: Ditto.
* gcc.target/i386/avx512f-vpsllvd-2.c: Ditto.
* gcc.target/i386/avx512f-vpsllvq-1.c: Ditto.
* gcc.target/i386/avx512f-vpsllvq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsllvq512-1.c: Ditto.
* gcc.target/i386/avx512f-vpsllvq512-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrad-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrad-2.c: Ditto.
* gcc.target/i386/avx512f-vpsradi-1.c: Ditto.
* gcc.target/i386/avx512f-vpsradi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsraq-1.c: Ditto.
* gcc.target/i386/avx512f-vpsraq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsraqi-1.c: Ditto.
* gcc.target/i386/avx512f-vpsraqi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsravd-1.c: Ditto.
* gcc.target/i386/avx512f-vpsravd-2.c: Ditto.
* gcc.target/i386/avx512f-vpsravq-1.c: Ditto.
* gcc.target/i386/avx512f-vpsravq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsravq512-1.c: Ditto.
* gcc.target/i386/avx512f-vpsravq512-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrld-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrld-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrldi-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrldi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrlq-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrlq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrlqi-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrlqi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrlvd-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrlvd-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrlvq-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrlvq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrlvq512-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrlvq512-2.c: Ditto.
* gcc.target/i386/avx512f-vpsubd-1.c: Ditto.
* gcc.target/i386/avx512f-vpsubd-2.c: Ditto.
* gcc.target/i386/avx512f-vpsubq-1.c: Ditto.
* gcc.target/i386/avx512f-vpsubq-2.c: Ditto.
* gcc.target/i386/avx512f-vpternlogd-1.c: Ditto.
* gcc.target/i386/avx512f-vpternlogd-2.c: Ditto.
* gcc.target/i386/avx512f-vpternlogq-1.c: Ditto.
* gcc.target/i386/avx512f-vpternlogq-2.c: Ditto.
* gcc.target/i386/avx512f-vptestmd-1.c: Ditto.
* gcc.target/i386/avx512f-vptestmd-2.c: Ditto.
* gcc.target/i386/avx512f-vptestmq-1.c: Ditto.
* gcc.target/i386/avx512f-vptestmq-2.c: Ditto.
* gcc.target/i386/avx512f-vpunpckhdq-1.c: Ditto.
* gcc.target/i386/avx512f-vpunpckhdq-2.c: Ditto.
* gcc.target/i386/avx512f-vpunpckhqdq-1.c: Ditto.
* gcc.target/i386/avx512f-vpunpckhqdq-2.c: Ditto.
* gcc.target/i386/avx512f-vpunpckldq-1.c: Ditto.
* gcc.target/i386/avx512f-vpunpckldq-2.c: Ditto.
* gcc.target/i386/avx512f-vpunpcklqdq-1.c: Ditto.
* gcc.target/i386/avx512f-vpunpcklqdq-2.c: Ditto.
* gcc.target/i386/avx512f-vpxord-1.c: Ditto.
* gcc.target/i386/avx512f-vpxord-2.c: Ditto.
* gcc.target/i386/avx512f-vpxorq-1.c: Ditto.
* gcc.target/i386/avx512f-vpxorq-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14pd-1.c: Ditto.
* gcc.target/i386/avx512f-vrcp14pd-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14ps-1.c: Ditto.
* gcc.target/i386/avx512f-vrcp14ps-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14sd-1.c: Ditto.
* gcc.target/i386/avx512f-vrcp14sd-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14ss-1.c: Ditto.
* gcc.target/i386/avx512f-vrcp14ss-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscalepd-1.c: Ditto.
* gcc.target/i386/avx512f-vrndscalepd-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscaleps-1.c: Ditto.
* gcc.target/i386/avx512f-vrndscaleps-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscalesd-1.c: Ditto.
* gcc.target/i386/avx512f-vrndscalesd-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscaless-1.c: Ditto.
* gcc.target/i386/avx512f-vrndscaless-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14pd-1.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14pd-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14ps-1.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14ps-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14sd-1.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14sd-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14ss-1.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14ss-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefpd-1.c: Ditto.
* gcc.target/i386/avx512f-vscalefpd-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefps-1.c: Ditto.
* gcc.target/i386/avx512f-vscalefps-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefsd-1.c: Ditto.
* gcc.target/i386/avx512f-vscalefsd-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefss-1.c: Ditto.
* gcc.target/i386/avx512f-vscalefss-2.c: Ditto.
* gcc.target/i386/avx512f-vshuff32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vshuff32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vshuff64x2-1.c: Ditto.
* gcc.target/i386/avx512f-vshuff64x2-2.c: Ditto.
* gcc.target/i386/avx512f-vshufi32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vshufi32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vshufi64x2-1.c: Ditto.
* gcc.target/i386/avx512f-vshufi64x2-2.c: Ditto.
* gcc.target/i386/avx512f-vshufpd-1.c: Ditto.
* gcc.target/i386/avx512f-vshufpd-2.c: Ditto.
* gcc.target/i386/avx512f-vshufps-1.c: Ditto.
* gcc.target/i386/avx512f-vshufps-2.c: Ditto.
* gcc.target/i386/avx512f-vsqrtpd-1.c: Ditto.
* gcc.target/i386/avx512f-vsqrtpd-2.c: Ditto.
* gcc.target/i386/avx512f-vsqrtps-1.c: Ditto.
* gcc.target/i386/avx512f-vsqrtps-2.c: Ditto.
* gcc.target/i386/avx512f-vsqrtsd-1.c: Ditto.
* gcc.target/i386/avx512f-vsqrtsd-2.c: Ditto.
* gcc.target/i386/avx512f-vsqrtss-1.c: Ditto.
* gcc.target/i386/avx512f-vsqrtss-2.c: Ditto.
* gcc.target/i386/avx512f-vsubpd-1.c: Ditto.
* gcc.target/i386/avx512f-vsubpd-2.c: Ditto.
* gcc.target/i386/avx512f-vsubps-1.c: Ditto.
* gcc.target/i386/avx512f-vsubps-2.c: Ditto.
* gcc.target/i386/avx512f-vsubsd-1.c: Ditto.
* gcc.target/i386/avx512f-vsubsd-2.c: Ditto.
* gcc.target/i386/avx512f-vsubss-1.c: Ditto.
* gcc.target/i386/avx512f-vsubss-2.c: Ditto.
* gcc.target/i386/avx512f-vucomisd-1.c: Ditto.
* gcc.target/i386/avx512f-vucomiss-1.c: Ditto.
* gcc.target/i386/avx512f-vunpckhpd-1.c: Ditto.
* gcc.target/i386/avx512f-vunpckhpd-2.c: Ditto.
* gcc.target/i386/avx512f-vunpckhps-1.c: Ditto.
* gcc.target/i386/avx512f-vunpckhps-2.c: Ditto.
* gcc.target/i386/avx512f-vunpcklpd-1.c: Ditto.
* gcc.target/i386/avx512f-vunpcklpd-2.c: Ditto.
* gcc.target/i386/avx512f-vunpcklps-1.c: Ditto.
* gcc.target/i386/avx512f-vunpcklps-2.c: Ditto.
* gcc.target/i386/avx512f_cond_move.c: Ditto.
* gcc.target/i386/avx512f_evex_reg_asm-1.c: Ditto.
* gcc.target/i386/avx512f_evex_reg_asm-2.c: Ditto.
* gcc.target/i386/avx512pf-vgatherpf0dps-1.c: Ditto.
* gcc.target/i386/avx512pf-vgatherpf0qps-1.c: Ditto.
* gcc.target/i386/avx512pf-vgatherpf1dps-1.c: Ditto.
* gcc.target/i386/avx512pf-vgatherpf1qps-1.c: Ditto.
* gcc.target/i386/avx512pf-vscatterpf0dps-1.c: Ditto.
* gcc.target/i386/avx512pf-vscatterpf0qps-1.c: Ditto.
* gcc.target/i386/avx512pf-vscatterpf1dps-1.c: Ditto.
* gcc.target/i386/avx512pf-vscatterpf1qps-1.c: Ditto.
* gcc.target/i386/sse-12.c: Updated options.
* gcc.target/i386/sse-13.c: Updated options, added defines for
__builtin_ia32_addpd512_mask, __builtin_ia32_addps512_mask,
__builtin_ia32_addsd_mask, __builtin_ia32_addss_mask,
__builtin_ia32_alignd512_mask, __builtin_ia32_alignq512_mask,
__builtin_ia32_cmpd512_mask, __builtin_ia32_cmppd512_mask,
__builtin_ia32_cmpps512_mask, __builtin_ia32_cmpq512_mask,
__builtin_ia32_cmpsd_mask, __builtin_ia32_cmpss_mask,
__builtin_ia32_cvtdq2ps512_mask, __builtin_ia32_cvtpd2dq512_mask,
__builtin_ia32_cvtpd2ps512_mask, __builtin_ia32_cvtpd2udq512_mask,
__builtin_ia32_cvtps2dq512_mask, __builtin_ia32_cvtps2pd512_mask,
__builtin_ia32_cvtps2udq512_mask, __builtin_ia32_cvtsd2ss_mask,
__builtin_ia32_cvtsi2sd64, __builtin_ia32_cvtsi2ss32,
__builtin_ia32_cvtsi2ss64, __builtin_ia32_cvtss2sd_mask,
__builtin_ia32_cvttpd2dq512_mask, __builtin_ia32_cvttpd2udq512_mask,
__builtin_ia32_cvttps2dq512_mask, __builtin_ia32_cvttps2udq512_mask,
__builtin_ia32_cvtudq2ps512_mask, __builtin_ia32_cvtusi2sd64,
__builtin_ia32_cvtusi2ss32, __builtin_ia32_cvtusi2ss64,
__builtin_ia32_divpd512_mask, __builtin_ia32_divps512_mask,
__builtin_ia32_divsd_mask, __builtin_ia32_divss_mask,
__builtin_ia32_extractf32x4_mask, __builtin_ia32_extractf64x4_mask,
__builtin_ia32_extracti32x4_mask, __builtin_ia32_extracti64x4_mask,
__builtin_ia32_fixupimmpd512_mask, __builtin_ia32_fixupimmpd512_maskz,
__builtin_ia32_fixupimmps512_mask, __builtin_ia32_fixupimmps512_maskz,
__builtin_ia32_fixupimmsd_mask, __builtin_ia32_fixupimmsd_maskz,
__builtin_ia32_fixupimmss_mask, __builtin_ia32_fixupimmss_maskz,
__builtin_ia32_gatherdiv8df, __builtin_ia32_gatherdiv8di,
__builtin_ia32_gatherdiv16sf, __builtin_ia32_gatherdiv16si,
__builtin_ia32_gathersiv16sf, __builtin_ia32_gathersiv16si,
__builtin_ia32_gathersiv8df, __builtin_ia32_gathersiv8di,
__builtin_ia32_getexppd512_mask, __builtin_ia32_getexpps512_mask,
__builtin_ia32_getexpsd128_mask, __builtin_ia32_getexpss128_mask,
__builtin_ia32_getmantpd512_mask, __builtin_ia32_getmantps512_mask,
__builtin_ia32_getmantsd_mask, __builtin_ia32_getmantss_mask,
__builtin_ia32_insertf32x4_mask, __builtin_ia32_insertf64x4_mask,
__builtin_ia32_inserti32x4_mask, __builtin_ia32_inserti64x4_mask,
__builtin_ia32_maxpd512_mask, __builtin_ia32_maxps512_mask,
__builtin_ia32_maxsd_mask, __builtin_ia32_maxss_mask,
__builtin_ia32_minpd512_mask, __builtin_ia32_minps512_mask,
__builtin_ia32_minsd_mask, __builtin_ia32_minss_mask,
__builtin_ia32_mulpd512_mask, __builtin_ia32_mulps512_mask,
__builtin_ia32_mulsd_mask, __builtin_ia32_mulss_mask,
__builtin_ia32_permdf512_mask, __builtin_ia32_permdi512_mask,
__builtin_ia32_prold512_mask, __builtin_ia32_prolq512_mask,
__builtin_ia32_prord512_mask, __builtin_ia32_prorq512_mask,
__builtin_ia32_pshufd512_mask, __builtin_ia32_pslldi512_mask,
__builtin_ia32_psllqi512_mask, __builtin_ia32_psradi512_mask,
__builtin_ia32_psraqi512_mask, __builtin_ia32_psrldi512_mask,
__builtin_ia32_psrlqi512_mask, __builtin_ia32_pternlogd512_mask,
__builtin_ia32_pternlogd512_maskz, __builtin_ia32_pternlogq512_mask,
__builtin_ia32_pternlogq512_maskz, __builtin_ia32_rndscalepd_mask,
__builtin_ia32_rndscaleps_mask, __builtin_ia32_rndscalesd_mask,
__builtin_ia32_rndscaless_mask, __builtin_ia32_scalefpd512_mask,
__builtin_ia32_scalefps512_mask, __builtin_ia32_scalefsd_mask,
__builtin_ia32_scalefss_mask, __builtin_ia32_scatterdiv8df,
__builtin_ia32_scatterdiv8di, __builtin_ia32_scatterdiv16sf,
__builtin_ia32_scatterdiv16si, __builtin_ia32_scattersiv16sf,
__builtin_ia32_scattersiv16si, __builtin_ia32_scattersiv8df,
__builtin_ia32_scattersiv8di, __builtin_ia32_shuf_f32x4_mask,
__builtin_ia32_shuf_f64x2_mask, __builtin_ia32_shuf_i32x4_mask,
__builtin_ia32_shuf_i64x2_mask, __builtin_ia32_shufpd512_mask,
__builtin_ia32_shufps512_mask, __builtin_ia32_sqrtpd512_mask,
__builtin_ia32_sqrtps512_mask, __builtin_ia32_sqrtsd_mask,
__builtin_ia32_sqrtss_mask, __builtin_ia32_subpd512_mask,
__builtin_ia32_subps512_mask, __builtin_ia32_subsd_mask,
__builtin_ia32_subss_mask, __builtin_ia32_ucmpd512_mask,
__builtin_ia32_ucmpq512_mask, __builtin_ia32_vcomisd,
__builtin_ia32_vcomiss, __builtin_ia32_vcvtph2ps512_mask,
__builtin_ia32_vcvtps2ph512_mask, __builtin_ia32_vcvtsd2si32,
__builtin_ia32_vcvtsd2si64, __builtin_ia32_vcvtsd2usi32,
__builtin_ia32_vcvtsd2usi64, __builtin_ia32_vcvtss2si32,
__builtin_ia32_vcvtss2si64, __builtin_ia32_vcvtss2usi32,
__builtin_ia32_vcvtss2usi64, __builtin_ia32_vcvttsd2si32,
__builtin_ia32_vcvttsd2si64, __builtin_ia32_vcvttsd2usi32,
__builtin_ia32_vcvttsd2usi64, __builtin_ia32_vcvttss2si32,
__builtin_ia32_vcvttss2si64, __builtin_ia32_vcvttss2usi32,
__builtin_ia32_vcvttss2usi64, __builtin_ia32_vfmaddpd512_mask,
__builtin_ia32_vfmaddpd512_mask3, __builtin_ia32_vfmaddpd512_maskz,
__builtin_ia32_vfmaddps512_mask, __builtin_ia32_vfmaddps512_mask3,
__builtin_ia32_vfmaddps512_maskz, __builtin_ia32_vfmaddsd3_mask,
__builtin_ia32_vfmaddsd3_mask3, __builtin_ia32_vfmaddsd3_maskz,
__builtin_ia32_vfmaddss3_mask, __builtin_ia32_vfmaddss3_mask3,
__builtin_ia32_vfmaddss3_maskz, __builtin_ia32_vfmaddsubpd512_mask,
__builtin_ia32_vfmaddsubpd512_mask3,
__builtin_ia32_vfmaddsubpd512_maskz,
__builtin_ia32_vfmaddsubps512_mask,
__builtin_ia32_vfmaddsubps512_mask3,
__builtin_ia32_vfmaddsubps512_maskz,
__builtin_ia32_vfmsubaddpd512_mask3,
__builtin_ia32_vfmsubaddps512_mask3, __builtin_ia32_vfmsubpd512_mask3,
__builtin_ia32_vfmsubps512_mask3, __builtin_ia32_vfmsubsd3_mask3,
__builtin_ia32_vfmsubss3_mask3, __builtin_ia32_vfnmaddpd512_mask,
__builtin_ia32_vfnmaddps512_mask, __builtin_ia32_vfnmsubpd512_mask,
__builtin_ia32_vfnmsubpd512_mask3, __builtin_ia32_vfnmsubps512_mask,
__builtin_ia32_vfnmsubps512_mask3, __builtin_ia32_vpermilpd512_mask,
__builtin_ia32_vpermilps512_mask, __builtin_ia32_exp2ps_mask,
__builtin_ia32_exp2pd_mask, __builtin_ia32_exp2ps_mask,
__builtin_ia32_exp2pd_mask, __builtin_ia32_rsqrt28ps_mask,
__builtin_ia32_rsqrt28pd_mask, __builtin_ia32_gatherpfdps,
__builtin_ia32_gatherpfqps, __builtin_ia32_scatterpfdps,
__builtin_ia32_scatterpfqps, __builtin_ia32_addpd512_mask,
__builtin_ia32_addps512_mask, __builtin_ia32_addsd_mask,
__builtin_ia32_addss_mask, __builtin_ia32_alignd512_mask,
__builtin_ia32_alignq512_mask, __builtin_ia32_cmpd512_mask,
__builtin_ia32_cmppd512_mask, __builtin_ia32_cmpps512_mask,
__builtin_ia32_cmpq512_mask, __builtin_ia32_cmpsd_mask,
__builtin_ia32_cmpss_mask, __builtin_ia32_cvtdq2ps512_mask,
__builtin_ia32_cvtpd2dq512_mask, __builtin_ia32_cvtpd2ps512_mask,
__builtin_ia32_cvtpd2udq512_mask, __builtin_ia32_cvtps2dq512_mask,
__builtin_ia32_cvtps2pd512_mask, __builtin_ia32_cvtps2udq512_mask,
__builtin_ia32_cvtsd2ss_mask, __builtin_ia32_cvtsi2sd64,
__builtin_ia32_cvtsi2ss32, __builtin_ia32_cvtsi2ss64,
__builtin_ia32_cvtss2sd_mask, __builtin_ia32_cvttpd2dq512_mask,
__builtin_ia32_cvttpd2udq512_mask, __builtin_ia32_cvttps2dq512_mask,
__builtin_ia32_cvttps2udq512_mask, __builtin_ia32_cvtudq2ps512_mask,
__builtin_ia32_cvtusi2sd64, __builtin_ia32_cvtusi2ss32,
__builtin_ia32_cvtusi2ss64, __builtin_ia32_divpd512_mask,
__builtin_ia32_divps512_mask, __builtin_ia32_divsd_mask,
__builtin_ia32_divss_mask, __builtin_ia32_extractf32x4_mask,
__builtin_ia32_extractf64x4_mask, __builtin_ia32_extracti32x4_mask,
__builtin_ia32_extracti64x4_mask, __builtin_ia32_fixupimmpd512_mask,
__builtin_ia32_fixupimmpd512_maskz, __builtin_ia32_fixupimmps512_mask,
__builtin_ia32_fixupimmps512_maskz, __builtin_ia32_fixupimmsd_mask,
__builtin_ia32_fixupimmsd_maskz, __builtin_ia32_fixupimmss_mask,
__builtin_ia32_fixupimmss_maskz, __builtin_ia32_gatherdiv8df,
__builtin_ia32_gatherdiv8di, __builtin_ia32_gatherdiv16sf,
__builtin_ia32_gatherdiv16si, __builtin_ia32_gathersiv16sf,
__builtin_ia32_gathersiv16si, __builtin_ia32_gathersiv8df,
__builtin_ia32_gathersiv8di, __builtin_ia32_getexppd512_mask,
__builtin_ia32_getexpps512_mask, __builtin_ia32_getexpsd128_mask,
__builtin_ia32_getexpss128_mask, __builtin_ia32_getmantpd512_mask,
__builtin_ia32_getmantps512_mask, __builtin_ia32_getmantsd_mask,
__builtin_ia32_getmantss_mask, __builtin_ia32_insertf32x4_mask,
__builtin_ia32_insertf64x4_mask, __builtin_ia32_inserti32x4_mask,
__builtin_ia32_inserti64x4_mask, __builtin_ia32_maxpd512_mask,
__builtin_ia32_maxps512_mask, __builtin_ia32_maxsd_mask,
__builtin_ia32_maxss_mask, __builtin_ia32_minpd512_mask,
__builtin_ia32_minps512_mask, __builtin_ia32_minsd_mask,
__builtin_ia32_minss_mask, __builtin_ia32_mulpd512_mask,
__builtin_ia32_mulps512_mask, __builtin_ia32_mulsd_mask,
__builtin_ia32_mulss_mask, __builtin_ia32_permdf512_mask,
__builtin_ia32_permdi512_mask, __builtin_ia32_prold512_mask,
__builtin_ia32_prolq512_mask, __builtin_ia32_prord512_mask,
__builtin_ia32_prorq512_mask, __builtin_ia32_pshufd512_mask,
__builtin_ia32_pslldi512_mask, __builtin_ia32_psllqi512_mask,
__builtin_ia32_psradi512_mask, __builtin_ia32_psraqi512_mask,
__builtin_ia32_psrldi512_mask, __builtin_ia32_psrlqi512_mask,
__builtin_ia32_pternlogd512_mask, __builtin_ia32_pternlogd512_maskz,
__builtin_ia32_pternlogq512_mask, __builtin_ia32_pternlogq512_maskz,
__builtin_ia32_rndscalepd_mask, __builtin_ia32_rndscaleps_mask,
__builtin_ia32_rndscalesd_mask, __builtin_ia32_rndscaless_mask,
__builtin_ia32_scalefpd512_mask, __builtin_ia32_scalefps512_mask,
__builtin_ia32_scalefsd_mask, __builtin_ia32_scalefss_mask,
__builtin_ia32_scatterdiv8df, __builtin_ia32_scatterdiv8di,
__builtin_ia32_scatterdiv16sf, __builtin_ia32_scatterdiv16si,
__builtin_ia32_scattersiv16sf, __builtin_ia32_scattersiv16si,
__builtin_ia32_scattersiv8df, __builtin_ia32_scattersiv8di,
__builtin_ia32_shuf_f32x4_mask, __builtin_ia32_shuf_f64x2_mask,
__builtin_ia32_shuf_i32x4_mask, __builtin_ia32_shuf_i64x2_mask,
__builtin_ia32_shufpd512_mask, __builtin_ia32_shufps512_mask,
__builtin_ia32_sqrtpd512_mask, __builtin_ia32_sqrtps512_mask,
__builtin_ia32_sqrtsd_mask, __builtin_ia32_sqrtss_mask,
__builtin_ia32_subpd512_mask, __builtin_ia32_subps512_mask,
__builtin_ia32_subsd_mask, __builtin_ia32_subss_mask,
__builtin_ia32_ucmpd512_mask, __builtin_ia32_ucmpq512_mask,
__builtin_ia32_vcomisd, __builtin_ia32_vcomiss,
__builtin_ia32_vcvtph2ps512_mask, __builtin_ia32_vcvtps2ph512_mask,
__builtin_ia32_vcvtsd2si32, __builtin_ia32_vcvtsd2si64,
__builtin_ia32_vcvtsd2usi32, __builtin_ia32_vcvtsd2usi64,
__builtin_ia32_vcvtss2si32, __builtin_ia32_vcvtss2si64,
__builtin_ia32_vcvtss2usi32, __builtin_ia32_vcvtss2usi64,
__builtin_ia32_vcvttsd2si32, __builtin_ia32_vcvttsd2si64,
__builtin_ia32_vcvttsd2usi32, __builtin_ia32_vcvttsd2usi64,
__builtin_ia32_vcvttss2si32, __builtin_ia32_vcvttss2si64,
__builtin_ia32_vcvttss2usi32, __builtin_ia32_vcvttss2usi64,
__builtin_ia32_vfmaddpd512_mask, __builtin_ia32_vfmaddpd512_mask3,
__builtin_ia32_vfmaddpd512_maskz, __builtin_ia32_vfmaddps512_mask,
__builtin_ia32_vfmaddps512_mask3, __builtin_ia32_vfmaddps512_maskz,
__builtin_ia32_vfmaddsd3_mask, __builtin_ia32_vfmaddsd3_mask3,
__builtin_ia32_vfmaddsd3_maskz, __builtin_ia32_vfmaddss3_mask,
__builtin_ia32_vfmaddss3_mask3, __builtin_ia32_vfmaddss3_maskz,
__builtin_ia32_vfmaddsubpd512_mask,
__builtin_ia32_vfmaddsubpd512_mask3,
__builtin_ia32_vfmaddsubpd512_maskz,
__builtin_ia32_vfmaddsubps512_mask,
__builtin_ia32_vfmaddsubps512_mask3,
__builtin_ia32_vfmaddsubps512_maskz,
__builtin_ia32_vfmsubaddpd512_mask3,
__builtin_ia32_vfmsubaddps512_mask3, __builtin_ia32_vfmsubpd512_mask3,
__builtin_ia32_vfmsubps512_mask3, __builtin_ia32_vfmsubsd3_mask3,
__builtin_ia32_vfmsubss3_mask3, __builtin_ia32_vfnmaddpd512_mask,
__builtin_ia32_vfnmaddps512_mask, __builtin_ia32_vfnmsubpd512_mask,
__builtin_ia32_vfnmsubpd512_mask3, __builtin_ia32_vfnmsubps512_mask,
__builtin_ia32_vfnmsubps512_mask3, __builtin_ia32_vpermilpd512_mask,
__builtin_ia32_vpermilps512_mask, __builtin_ia32_gatherpfdps,
__builtin_ia32_gatherpfqps, __builtin_ia32_scatterpfdps,
__builtin_ia32_scatterpfqps, __builtin_ia32_exp2pd_mask,
__builtin_ia32_exp2ps_mask, __builtin_ia32_rcp28pd_mask,
__builtin_ia32_rcp28ps_mask, __builtin_ia32_rsqrt28pd_mask,
__builtin_ia32_rsqrt28ps_mask.
* gcc.target/i386/sse-14.c (test_1y): New.
(test_2y): Ditto.
(test_2vx): Ditto.
(test_3x): Ditto.
(test_3v): Ditto.
(test_3vx): Ditto.
(test_4x): Ditto.
(test_4y): Ditto.
(test_4v): Ditto.
(pragma GCC target): Add avx512f, avx512er, avx512cd, avx512pf.
(tests): Add  _mm512_cvt_roundepi32_ps, _mm512_cvt_roundepu32_ps,
_mm512_cvt_roundpd_epi32, _mm512_cvt_roundpd_epu32,
_mm512_cvt_roundpd_ps, _mm512_cvt_roundph_ps,
_mm512_cvt_roundps_epi32, _mm512_cvt_roundps_epu32,
_mm512_cvt_roundps_pd, _mm512_cvtps_ph, _mm512_cvtt_roundpd_epi32,
_mm512_cvtt_roundpd_epu32, _mm512_cvtt_roundps_epi32,
_mm512_cvtt_roundps_epu32, _mm512_extractf32x4_ps,
_mm512_extractf64x4_pd, _mm512_extracti32x4_epi32,
_mm512_extracti64x4_epi64, _mm512_getexp_round_pd,
_mm512_getexp_round_ps, _mm512_getmant_round_pd,
_mm512_getmant_round_ps, _mm512_permute_pd, _mm512_permute_ps,
_mm512_permutex_epi64, _mm512_permutex_pd, _mm512_rol_epi32,
_mm512_rol_epi64, _mm512_ror_epi32, _mm512_ror_epi64,
_mm512_shuffle_epi32, _mm512_slli_epi32, _mm512_slli_epi64,
_mm512_sqrt_round_pd, _mm512_sqrt_round_ps, _mm512_srai_epi32,
_mm512_srai_epi64, _mm512_srli_epi32, _mm512_srli_epi64,
_mm_cvt_roundsd_i32, _mm_cvt_roundsd_u32, _mm_cvt_roundss_i32,
_mm_cvt_roundss_u32, _mm_cvtt_roundsd_i32, _mm_cvtt_roundsd_u32,
_mm_cvtt_roundss_i32, _mm_cvtt_roundss_u32, _mm512_getmant_pd,
_mm512_getmant_ps, _mm_cvt_roundi32_ss, _mm512_add_round_pd,
_mm512_add_round_ps, _mm512_alignr_epi32, _mm512_alignr_epi64,
_mm512_cmp_epi32_mask, _mm512_cmp_epi64_mask, _mm512_cmp_epu32_mask,
_mm512_cmp_epu64_mask, _mm512_cmp_pd_mask, _mm512_cmp_ps_mask,
_mm512_div_round_pd, _mm512_div_round_ps, _mm512_i32gather_epi32,
_mm512_i32gather_epi64, _mm512_i32gather_pd, _mm512_i32gather_ps,
_mm512_i64gather_epi32, _mm512_i64gather_epi64, _mm512_i64gather_pd,
_mm512_i64gather_ps, _mm512_insertf32x4, _mm512_insertf64x4,
_mm512_inserti32x4, _mm512_inserti64x4,
_mm512_maskz_cvt_roundepi32_ps, _mm512_maskz_cvt_roundepu32_ps,
_mm512_maskz_cvt_roundpd_epi32, _mm512_maskz_cvt_roundpd_epu32,
_mm512_maskz_cvt_roundpd_ps, _mm512_maskz_cvt_roundph_ps,
_mm512_maskz_cvt_roundps_epi32, _mm512_maskz_cvt_roundps_epu32,
_mm512_maskz_cvt_roundps_pd, _mm512_maskz_cvtps_ph,
_mm512_maskz_cvtt_roundpd_epi32, _mm512_maskz_cvtt_roundpd_epu32,
_mm512_maskz_cvtt_roundps_epi32, _mm512_maskz_cvtt_roundps_epu32,
_mm512_maskz_extractf32x4_ps, _mm512_maskz_extractf64x4_pd,
_mm512_maskz_extracti32x4_epi32, _mm512_maskz_extracti64x4_epi64,
_mm512_maskz_getexp_round_pd, _mm512_maskz_getexp_round_ps,
_mm512_maskz_getmant_round_pd, _mm512_maskz_getmant_round_ps,
_mm512_maskz_permute_pd, _mm512_maskz_permute_ps,
_mm512_maskz_permutex_epi64, _mm512_maskz_permutex_pd,
_mm512_maskz_rol_epi32, _mm512_maskz_rol_epi64,
_mm512_maskz_ror_epi32, _mm512_maskz_ror_epi64,
_mm512_maskz_shuffle_epi32, _mm512_maskz_slli_epi32,
_mm512_maskz_slli_epi64, _mm512_maskz_sqrt_round_pd,
_mm512_maskz_sqrt_round_ps, _mm512_maskz_srai_epi32,
_mm512_maskz_srai_epi64, _mm512_maskz_srli_epi32,
_mm512_maskz_srli_epi64, _mm512_max_round_pd, _mm512_max_round_ps,
_mm512_min_round_pd, _mm512_min_round_ps, _mm512_mul_round_pd,
_mm512_mul_round_ps, _mm512_scalef_round_pd, _mm512_scalef_round_ps,
_mm512_shuffle_f32x4, _mm512_shuffle_f64x2, _mm512_shuffle_i32x4,
_mm512_shuffle_i64x2, _mm512_shuffle_pd, _mm512_shuffle_ps,
_mm512_sub_round_pd, _mm512_sub_round_ps, _mm_add_round_sd,
_mm_add_round_ss, _mm_cmp_sd_mask, _mm_cmp_ss_mask,
_mm_cvt_roundi64_sd, _mm_cvt_roundi64_ss, _mm_cvt_roundsd_ss,
_mm_cvt_roundss_sd, _mm_cvt_roundu32_ss, _mm_cvt_roundu64_sd,
_mm_cvt_roundu64_ss, _mm_div_round_sd, _mm_div_round_ss,
_mm_getexp_round_sd, _mm_getexp_round_ss, _mm_getmant_round_sd,
_mm_getmant_round_ss, _mm_mul_round_sd, _mm_mul_round_ss,
_mm_scalef_round_sd, _mm_scalef_round_ss, _mm_sqrt_round_sd,
_mm_sqrt_round_ss, _mm_sub_round_sd, _mm_sub_round_ss,
_mm512_cmp_round_pd_mask, _mm512_cmp_round_ps_mask,
_mm512_maskz_roundscale_round_pd, _mm512_maskz_roundscale_round_ps,
_mm_cmp_round_sd_mask, _mm_cmp_round_ss_mask, _mm_comi_round_sd,
_mm_comi_round_ss, _mm_roundscale_round_sd, _mm_roundscale_round_ss,
_mm512_fmadd_round_pd, _mm512_fmadd_round_ps,
_mm512_fmaddsub_round_pd, _mm512_fmaddsub_round_ps,
_mm512_fmsub_round_pd, _mm512_fmsub_round_ps,
_mm512_fmsubadd_round_pd, _mm512_fmsubadd_round_ps,
_mm512_fnmadd_round_pd, _mm512_fnmadd_round_ps,
_mm512_fnmsub_round_pd, _mm512_fnmsub_round_ps,
_mm512_mask_cmp_epi32_mask, _mm512_mask_cmp_epi64_mask,
_mm512_mask_cmp_epu32_mask, _mm512_mask_cmp_epu64_mask,
_mm512_mask_cmp_pd_mask, _mm512_mask_cmp_ps_mask,
_mm512_mask_cvt_roundepi32_ps, _mm512_mask_cvt_roundepu32_ps,
_mm512_mask_cvt_roundpd_epi32, _mm512_mask_cvt_roundpd_epu32,
_mm512_mask_cvt_roundpd_ps, _mm512_mask_cvt_roundph_ps,
_mm512_mask_cvt_roundps_epi32, _mm512_mask_cvt_roundps_epu32,
_mm512_mask_cvt_roundps_pd, _mm512_mask_cvtps_ph,
_mm512_mask_cvtt_roundpd_epi32, _mm512_mask_cvtt_roundpd_epu32,
_mm512_mask_cvtt_roundps_epi32, _mm512_mask_cvtt_roundps_epu32,
_mm512_mask_extractf32x4_ps, _mm512_mask_extractf64x4_pd,
_mm512_mask_extracti32x4_epi32, _mm512_mask_extracti64x4_epi64,
_mm512_mask_getexp_round_pd, _mm512_mask_getexp_round_ps,
_mm512_mask_getmant_round_pd, _mm512_mask_getmant_round_ps,
_mm512_mask_permute_pd, _mm512_mask_permute_ps,
_mm512_mask_permutex_epi64, _mm512_mask_permutex_pd,
_mm512_mask_rol_epi32, _mm512_mask_rol_epi64, _mm512_mask_ror_epi32,
_mm512_mask_ror_epi64, _mm512_mask_shuffle_epi32,
_mm512_mask_slli_epi32, _mm512_mask_slli_epi64,
_mm512_mask_sqrt_round_pd, _mm512_mask_sqrt_round_ps,
_mm512_mask_srai_epi32, _mm512_mask_srai_epi64,
_mm512_mask_srli_epi32, _mm512_mask_srli_epi64,
_mm512_maskz_add_round_pd, _mm512_maskz_add_round_ps,
_mm512_maskz_alignr_epi32, _mm512_maskz_alignr_epi64,
_mm512_maskz_div_round_pd, _mm512_maskz_div_round_ps,
_mm512_maskz_insertf32x4, _mm512_maskz_insertf64x4,
_mm512_maskz_inserti32x4, _mm512_maskz_inserti64x4,
_mm512_maskz_max_round_pd, _mm512_maskz_max_round_ps,
_mm512_maskz_min_round_pd, _mm512_maskz_min_round_ps,
_mm512_maskz_mul_round_pd, _mm512_maskz_mul_round_ps,
_mm512_maskz_scalef_round_pd, _mm512_maskz_scalef_round_ps,
_mm512_maskz_shuffle_f32x4, _mm512_maskz_shuffle_f64x2,
_mm512_maskz_shuffle_i32x4, _mm512_maskz_shuffle_i64x2,
_mm512_maskz_shuffle_pd, _mm512_maskz_shuffle_ps,
_mm512_maskz_sub_round_pd, _mm512_maskz_sub_round_ps,
_mm512_ternarylogic_epi32, _mm512_ternarylogic_epi64,
_mm_fmadd_round_sd, _mm_fmadd_round_ss, _mm_fmsub_round_sd,
_mm_fmsub_round_ss, _mm_fnmadd_round_sd, _mm_fnmadd_round_ss,
_mm_fnmsub_round_sd, _mm_fnmsub_round_ss, _mm_mask_cmp_sd_mask,
_mm_mask_cmp_ss_mask, _mm_maskz_add_round_sd, _mm_maskz_add_round_ss,
_mm_maskz_cvt_roundsd_ss, _mm_maskz_cvt_roundss_sd,
_mm_maskz_div_round_sd, _mm_maskz_div_round_ss,
_mm_maskz_getexp_round_sd, _mm_maskz_getexp_round_ss,
_mm_maskz_getmant_round_sd, _mm_maskz_getmant_round_ss,
_mm_maskz_mul_round_sd, _mm_maskz_mul_round_ss,
_mm_maskz_scalef_round_sd, _mm_maskz_scalef_round_ss,
_mm_maskz_sqrt_round_sd, _mm_maskz_sqrt_round_ss,
_mm_maskz_sub_round_sd, _mm_maskz_sub_round_ss,
_mm512_i32scatter_epi32, _mm512_i32scatter_epi64,
_mm512_i32scatter_pd, _mm512_i32scatter_ps, _mm512_i64scatter_epi32,
_mm512_i64scatter_epi64, _mm512_i64scatter_pd, _mm512_i64scatter_ps,
_mm512_mask_roundscale_round_pd, _mm512_mask_roundscale_round_ps,
_mm512_mask_cmp_round_pd_mask, _mm512_mask_cmp_round_ps_mask,
_mm_fixupimm_round_sd, _mm_fixupimm_round_ss,
_mm_mask_cmp_round_sd_mask, _mm_mask_cmp_round_ss_mask,
_mm_maskz_roundscale_round_sd, _mm_maskz_roundscale_round_ss,
_mm512_mask3_fmadd_round_pd, _mm512_mask3_fmadd_round_ps,
_mm512_mask3_fmaddsub_round_pd, _mm512_mask3_fmaddsub_round_ps,
_mm512_mask3_fmsub_round_pd, _mm512_mask3_fmsub_round_ps,
_mm512_mask3_fmsubadd_round_pd, _mm512_mask3_fmsubadd_round_ps,
_mm512_mask3_fnmadd_round_pd, _mm512_mask3_fnmadd_round_ps,
_mm512_mask3_fnmsub_round_pd, _mm512_mask3_fnmsub_round_ps,
_mm512_mask_add_round_pd, _mm512_mask_add_round_ps,
_mm512_mask_alignr_epi32, _mm512_mask_alignr_epi64,
_mm512_mask_div_round_pd, _mm512_mask_div_round_ps,
_mm512_mask_fmadd_round_pd, _mm512_mask_fmadd_round_ps,
_mm512_mask_fmaddsub_round_pd, _mm512_mask_fmaddsub_round_ps,
_mm512_mask_fmsub_round_pd, _mm512_mask_fmsub_round_ps,
_mm512_mask_fmsubadd_round_pd, _mm512_mask_fmsubadd_round_ps,
_mm512_mask_fnmadd_round_pd, _mm512_mask_fnmadd_round_ps,
_mm512_mask_fnmsub_round_pd, _mm512_mask_fnmsub_round_ps,
_mm512_mask_i32gather_epi32, _mm512_mask_i32gather_epi64,
_mm512_mask_i32gather_pd, _mm512_mask_i32gather_ps,
_mm512_mask_i64gather_epi32, _mm512_mask_i64gather_epi64,
_mm512_mask_i64gather_pd, _mm512_mask_i64gather_ps,
_mm512_mask_insertf32x4, _mm512_mask_insertf64x4,
_mm512_mask_inserti32x4, _mm512_mask_inserti64x4,
_mm512_mask_max_round_pd, _mm512_mask_max_round_ps,
_mm512_mask_min_round_pd, _mm512_mask_min_round_ps,
_mm512_mask_mul_round_pd, _mm512_mask_mul_round_ps,
_mm512_mask_scalef_round_pd, _mm512_mask_scalef_round_ps,
_mm512_mask_shuffle_f32x4, _mm512_mask_shuffle_f64x2,
_mm512_mask_shuffle_i32x4, _mm512_mask_shuffle_i64x2,
_mm512_mask_shuffle_pd, _mm512_mask_shuffle_ps,
_mm512_mask_sub_round_pd, _mm512_mask_sub_round_ps,
_mm512_mask_ternarylogic_epi32, _mm512_mask_ternarylogic_epi64,
_mm512_maskz_fmadd_round_pd, _mm512_maskz_fmadd_round_ps,
_mm512_maskz_fmaddsub_round_pd, _mm512_maskz_fmaddsub_round_ps,
_mm512_maskz_fmsub_round_pd, _mm512_maskz_fmsub_round_ps,
_mm512_maskz_fmsubadd_round_pd, _mm512_maskz_fmsubadd_round_ps,
_mm512_maskz_fnmadd_round_pd, _mm512_maskz_fnmadd_round_ps,
_mm512_maskz_fnmsub_round_pd, _mm512_maskz_fnmsub_round_ps,
_mm512_maskz_ternarylogic_epi32, _mm512_maskz_ternarylogic_epi64,
_mm_mask3_fmadd_round_sd, _mm_mask3_fmadd_round_ss,
_mm_mask3_fmsub_round_sd, _mm_mask3_fmsub_round_ss,
_mm_mask3_fnmadd_round_sd, _mm_mask3_fnmadd_round_ss,
_mm_mask3_fnmsub_round_sd, _mm_mask3_fnmsub_round_ss,
_mm_mask_add_round_sd, _mm_mask_add_round_ss, _mm_mask_cvt_roundsd_ss,
_mm_mask_cvt_roundss_sd, _mm_mask_div_round_sd, _mm_mask_div_round_ss,
_mm_mask_fmadd_round_sd, _mm_mask_fmadd_round_ss,
_mm_mask_fmsub_round_sd, _mm_mask_fmsub_round_ss,
_mm_mask_fnmadd_round_sd, _mm_mask_fnmadd_round_ss,
_mm_mask_fnmsub_round_sd, _mm_mask_fnmsub_round_ss,
_mm_mask_getexp_round_sd, _mm_mask_getexp_round_ss,
_mm_mask_getmant_round_sd, _mm_mask_getmant_round_ss,
_mm_mask_mul_round_sd, _mm_mask_mul_round_ss,
_mm_mask_scalef_round_sd, _mm_mask_scalef_round_ss,
_mm_mask_sqrt_round_sd, _mm_mask_sqrt_round_ss, _mm_mask_sub_round_sd,
_mm_mask_sub_round_ss, _mm_maskz_fmadd_round_sd,
_mm_maskz_fmadd_round_ss, _mm_maskz_fmsub_round_sd,
_mm_maskz_fmsub_round_ss, _mm_maskz_fnmadd_round_sd,
_mm_maskz_fnmadd_round_ss, _mm_maskz_fnmsub_round_sd,
_mm_maskz_fnmsub_round_ss, _mm512_mask_i32scatter_epi32,
_mm512_mask_i32scatter_epi64, _mm512_mask_i32scatter_pd,
_mm512_mask_i32scatter_ps, _mm512_mask_i64scatter_epi32,
_mm512_mask_i64scatter_epi64, _mm512_mask_i64scatter_pd,
_mm512_mask_i64scatter_ps, _mm_mask_getmant_sd, _mm_mask_getmant_ss,
_mm_mask_roundscale_round_sd, _mm_mask_roundscale_round_ss,
_mm512_mask_fixupimm_round_pd, _mm512_mask_fixupimm_round_ps,
_mm512_maskz_fixupimm_round_pd, _mm512_maskz_fixupimm_round_ps,
_mm_mask_fixupimm_round_sd, _mm_mask_fixupimm_round_ss,
_mm_maskz_fixupimm_round_sd, _mm_maskz_fixupimm_round_ss,
_mm512_mask_prefetch_i32gather_ps, _mm512_mask_prefetch_i32scatter_ps,
_mm512_mask_prefetch_i64gather_ps, _mm512_mask_prefetch_i64scatter_ps,
_mm512_exp2a23_round_pd, _mm512_exp2a23_round_ps,
_mm512_rcp28_round_pd, _mm512_rcp28_round_ps, _mm512_rsqrt28_round_pd,
_mm512_rsqrt28_round_ps, _mm512_maskz_exp2a23_round_pd,
_mm512_maskz_exp2a23_round_ps, _mm512_maskz_rcp28_round_pd,
_mm512_maskz_rcp28_round_ps, _mm512_maskz_rsqrt28_round_pd,
_mm512_maskz_rsqrt28_round_ps, _mm512_mask_exp2a23_round_pd,
_mm512_mask_exp2a23_round_ps, _mm512_mask_rcp28_round_pd,
_mm512_mask_rcp28_round_ps, _mm512_mask_rsqrt28_round_pd,
_mm512_mask_rsqrt28_round_ps.
* gcc.target/i386/testimm-10.c: New file.
* gcc.target/i386/testround-1.c: Ditto.
* gcc.target/i386/testround-2.c: Ditto.
* gcc.target/x86_64/abi/avx512f/test_m512_returning.c: Ditto.
* gcc.target/x86_64/abi/avx512f/test_passing_m512.c: Ditto.
* gcc.target/x86_64/abi/avx512f/test_passing_structs.c: Ditto.
* gcc.target/x86_64/abi/avx512f/test_passing_unions.c: Ditto.
* gcc.target/i386/avx512cd-check.h: Ditto.
* gcc.target/i386/avx512er-check.h: Ditto.
* gcc.target/i386/avx512f-check.h: Ditto.
* gcc.target/i386/avx512f-helper.h: Ditto.
* gcc.target/i386/avx512f-mask-type.h: Ditto.
* gcc.target/i386/avx512f-os-support.h: Ditto.
* gcc.target/i386/i386.exp (check_effective_target_avx512f): New.
(check_effective_target_avx512cd): Ditto.
(check_effective_target_avx512er): Ditto.
* gcc.target/i386/m128-check.h (CHECK_FP_EXP): Ditto.
* gcc.target/i386/m512-check.h: Ditto.
* gcc.target/x86_64/abi/avx512f/abi-avx512f.exp: New file.
* gcc.target/x86_64/abi/avx512f/args.h: Ditto.
* gcc.target/x86_64/abi/avx512f/asm-support.S: Ditto.
* gcc.target/x86_64/abi/avx512f/avx512f-check.h: Ditto.
* lib/target-supports.exp (check_effective_target_avx512f): New.

Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>
From-SVN: r206262

10 years agoconfig.gcc (extra_headers): Add avx512fintrin.h, avx512cdintrin.h, avx512erintrin...
Alexander Ivchenko [Tue, 31 Dec 2013 11:30:14 +0000 (11:30 +0000)]
config.gcc (extra_headers): Add avx512fintrin.h, avx512cdintrin.h, avx512erintrin.h, avx512pfintrin.h.

gcc/

* config.gcc (extra_headers): Add avx512fintrin.h, avx512cdintrin.h,
avx512erintrin.h, avx512pfintrin.h.
* config/i386/avx512cdintrin.h: New file.
* config/i386/avx512erintrin.h: New file.
* config/i386/avx512fintrin.h: New file.
* config/i386/avx512pfintrin.h: New file.
* config/i386/i386-builtin-types.def: Add V16UHI, V32SF, V16SF, V8DF,
V8DI, V16SI, V64QI, PV8DF, PV8DI, PV16SI, PV16SF, PCV8DF, PCV16SF,
PCV8DI, PCV16SI, V16QI_FTYPE_V16SI, V8DF_FTYPE_V8SI, V8DF_FTYPE_V8DF,
V8HI_FTYPE_V8DI, V16SF_FTYPE_V16SF, V8SI_FTYPE_V8DI, V8SF_FTYPE_V8DF,
V8SF_FTYPE_V8DF_V8SF_QI, V16HI_FTYPE_V16SI, V16SF_FTYPE_FLOAT,
V16SI_FTYPE_INT, V8DF_FTYPE_DOUBLE, V8DI_FTYPE_INT64,
V16SF_FTYPE_V4SF, V8DF_FTYPE_V4DF, V8DI_FTYPE_V4DI, V16QI_FTYPE_V8DI,
UINT_FTYPE_V4SF, UINT64_FTYPE_V4SF, UINT_FTYPE_V2DF,
UINT64_FTYPE_V2DF, V16SI_FTYPE_V16SI, V16SI_FTYPE_V16SI_V16SI_HI,
V8DI_FTYPE_V8DI, V8DI_FTYPE_V8DI_V8DI_QI, V16SI_FTYPE_PV4SI,
V16SF_FTYPE_PV4SF, V8DI_FTYPE_PV4DI, V8DF_FTYPE_PV4DF,
V8UHI_FTYPE_V8UHI, V8USI_FTYPE_V8USI, V2DF_FTYPE_V2DF_UINT,
V2DF_FTYPE_V2DF_UINT64, V4DF_FTYPE_V8DF_INT,
V4DF_FTYPE_V8DF_INT_V4DF_QI, V8DF_FTYPE_V8DF_V8DI,
V4SF_FTYPE_V4SF_UINT, V4SF_FTYPE_V4SF_UINT64,
INT_FTYPE_V4SF_V4SF_INT_INT, INT_FTYPE_V2DF_V2DF_INT_INT,
V16SF_FTYPE_V16SF_INT, V4SF_FTYPE_V16SF_INT,
V4SF_FTYPE_V16SF_INT_V4SF_QI, V16SF_FTYPE_V16SF_V16SF,
V16SF_FTYPE_V16SF_V16SI, V8DF_FTYPE_V8DF_V4DF_INT_V8DF_QI,
V8DF_FTYPE_V8DF_V8DF_INT_V8DF_QI, V8DF_FTYPE_V8DF_INT_V8DF_QI,
V8DF_FTYPE_V8DF_V8DF_V8DI_INT_QI_INT, V8DF_FTYPE_V8DF_V8DF,
V16SF_FTYPE_V16SF_V16SF_INT, V16SF_FTYPE_V16SF_V16SF_INT_V16SF_HI,
V16SF_FTYPE_V16SF_INT_V16SF_HI, V16SI_FTYPE_V16SI_V4SI_INT_V16SI_HI,
V16SF_FTYPE_V16SF_V16SF_V16SI_INT,
V16SF_FTYPE_V16SF_V16SF_V16SI_INT_HI,
V16SF_FTYPE_V16SF_V16SF_V16SI_INT_HI_INT,
V4SF_FTYPE_V4SF_V4SF_V4SI_INT_QI,
V4SF_FTYPE_V4SF_V4SF_V4SI_INT_QI_INT,
V2DF_FTYPE_V2DF_V2DF_V2DI_INT_QI,
V2DF_FTYPE_V2DF_V2DF_V2DI_INT_QI_INT, V16SF_FTYPE_V16SF_V4SF_INT,
V16SF_FTYPE_V16SF_V4SF_INT_V16SF_HI, V16HI_FTYPE_V16SF_INT,
V16HI_FTYPE_V16SF_INT_V16HI_HI, V16HI_FTYPE_V16HI_V16HI_INT_V16HI_HI,
V16SI_FTYPE_V16SI_V4SI, V16SI_FTYPE_V16SI_V4SI_INT,
V4SI_FTYPE_V16SI_INT, V4SI_FTYPE_V16SI_INT_V4SI_QI,
V16SI_FTYPE_V16SI_V16SI, V16SI_FTYPE_V16SI_V16SI_INT_V16SI_HI,
V16SI_FTYPE_V16SI_SI, V16SI_FTYPE_V16SI_INT,
V16SI_FTYPE_V16SI_V4SI_V16SI_HI, V16SI_FTYPE_V16SI_INT_V16SI_HI,
V8DI_FTYPE_V8DI_V8DI, V16SI_FTYPE_V8DF_V8DF,
V8DI_FTYPE_V8DI_V8DI_INT_V8DI_QI, V8DI_FTYPE_V8DI_V4DI_INT_V8DI_QI,
V8DI_FTYPE_V8DI_V2DI, V4DI_FTYPE_V8DI_INT,
V4DI_FTYPE_V8DI_INT_V4DI_QI, V8DI_FTYPE_V8DI_V2DI_V8DI_QI,
V8DI_FTYPE_V8DI_INT_V8DI_QI, VOID_FTYPE_PDOUBLE_V8DF,
VOID_FTYPE_PFLOAT_V16SF, VOID_FTYPE_PV8DI_V8DI, HI_FTYPE_HI,
HI_FTYPE_HI_HI, HI_FTYPE_HI_INT, QI_FTYPE_V8DI_V8DI,
QI_FTYPE_V8DI_V8DI_QI, HI_FTYPE_V16SI_V16SI, HI_FTYPE_V16SI_V16SI_HI,
QI_FTYPE_V8DI_V8DI_INT, QI_FTYPE_V8DI_V8DI_INT_QI,
HI_FTYPE_V16SI_V16SI_INT, HI_FTYPE_V16SI_V16SI_INT ,HI,
QI_FTYPE_V8DF_V8DF_INT, QI_FTYPE_V8DF_V8DF_INT_QI,
QI_FTYPE_V8DF_V8DF_INT_QI_INT, HI_FTYPE_V16SF_V16SF_INT,
HI_FTYPE_V16SF_V16SF_INT_HI, HI_FTYPE_V16SF_V16SF_INT_HI_INT,
QI_FTYPE_V2DF_V2DF_INT, QI_FTYPE_V2DF_V2DF_INT_QI,
QI_FTYPE_V2DF_V2DF_INT_QI_INT, QI_FTYPE_V4SF_V4SF_INT,
QI_FTYPE_V4SF_V4SF_INT_QI, QI_FTYPE_V4SF_V4SF_INT_QI_INT,
V16SI_FTYPE_HI, V8DI_FTYPE_QI, V8DF_FTYPE_V8DF_V8DF_V8DF,
V16SF_FTYPE_V16SF_V16SF_V16SF, V8DF_FTYPE_V8DF_V8DF_QI,
V8DF_FTYPE_V8SF_V8DF_QI, V8DF_FTYPE_V8SI_V8DF_QI,
V8DI_FTYPE_V8SI_V8DI_QI, V8DI_FTYPE_V8HI_V8DI_QI,
V8DI_FTYPE_V16QI_V8DI_QI, V8DI_FTYPE_V8DI_V8DI_V8DI_QI,
V8DF_FTYPE_V8DI_V8DF_V8DF, V8DF_FTYPE_V8DI_V8DF_V8DF_QI,
V8DF_FTYPE_V8DF_V8DI_V8DF_QI, V8DF_FTYPE_V8DF_V8DF_V8DF_QI,
V16SI_FTYPE_V16SI_V16SI_V16SI_HI, V2DF_FTYPE_V2DF_V2DF_V2DF_QI,
V2DF_FTYPE_V2DF_V4SF_V2DF_QI, V16SF_FTYPE_V16SF_V16SF_HI,
V16SF_FTYPE_V16SI_V16SF_HI, V16SF_FTYPE_V16SF_V16SF_V16SF_HI,
V16SF_FTYPE_V16SI_V16SF_V16SF, V16SF_FTYPE_V16SI_V16SF_V16SF_HI,
V16SF_FTYPE_V16SF_V16SI_V16SF_HI, V4SF_FTYPE_V4SF_V2DF_V4SF_QI,
V4SF_FTYPE_V4SF_V4SF_V4SF_QI, V16SF_FTYPE_V4SF_V16SF_HI,
V8DF_FTYPE_V4DF_V8DF_QI, V8DF_FTYPE_V2DF_V8DF_QI,
V16SI_FTYPE_V4SI_V16SI_HI, V16SI_FTYPE_SI_V16SI_HI,
V16SI_FTYPE_V16HI_V16SI_HI, V16SI_FTYPE_V16QI_V16SI_HI,
V8SI_FTYPE_V8DF_V8SI_QI, V8DI_FTYPE_V4DI_V8DI_QI,
V8DI_FTYPE_V2DI_V8DI_QI, V8DI_FTYPE_DI_V8DI_QI,
V16SF_FTYPE_PCV16SF_V16SF_HI, V8DF_FTYPE_PCV8DF_V8DF_QI,
V16SI_FTYPE_PCV16SI_V16SI_HI, V8DI_FTYPE_PCV8DI_V8DI_QI,
V2DF_FTYPE_PCDOUBLE_V2DF_QI, V4SF_FTYPE_PCFLOAT_V4SF_QI,
V16QI_FTYPE_V16SI_V16QI_HI, V16HI_FTYPE_V16SI_V16HI_HI,
V8SI_FTYPE_V8DI_V8SI_QI, V8HI_FTYPE_V8DI_V8HI_QI,
V16QI_FTYPE_V8DI_V16QI_QI, VOID_FTYPE_PV8DF_V8DF_QI,
VOID_FTYPE_PV16SF_V16SF_HI, VOID_FTYPE_PV8DI_V8DI_QI,
VOID_FTYPE_PV16SI_V16SI_HI, VOID_FTYPE_PDOUBLE_V2DF_QI,
VOID_FTYPE_PFLOAT_V4SF_QI, V16SI_FTYPE_V16SF_V16SI_HI,
V8DI_FTYPE_V8DI_V8DI_V8DI_INT_QI,
V16SI_FTYPE_V16SI_V16SI_V16SI_INT_HI, V8DI_FTYPE_V8DI_V8DI_V8DI,
V16SI_FTYPE_V16SI_V16SI_V16SI, V8DF_FTYPE_V8DF_V8DI_V8DF,
V16SF_FTYPE_V16SF_V16SI_V16SF, V4SF_FTYPE_V4SF_V4SF_INT_V4SF_QI,
V2DF_FTYPE_V2DF_V2DF_INT_V2DF_QI, V8DI_FTYPE_V16SI_V16SI_V8DI_QI,
UINT64_FTYPE_V2DF_INT, UINT64_FTYPE_V4SF_INT, UINT_FTYPE_V2DF_INT,
UINT_FTYPE_V4SF_INT, INT64_FTYPE_V2DF_INT, INT64_FTYPE_V4SF_INT,
INT_FTYPE_V2DF_INT, INT_FTYPE_V4SF_INT, V2DF_FTYPE_V2DF_UINT64_INT,
V4SF_FTYPE_V4SF_UINT64_INT, V4SF_FTYPE_V4SF_UINT_INT,
V2DF_FTYPE_V2DF_INT64_INT, V4SF_FTYPE_V4SF_INT64_INT,
V4SF_FTYPE_V4SF_INT_INT, V16SI_FTYPE_V16SF_V16SI_HI_INT,
V16SF_FTYPE_V16SI_V16SF_HI_INT, V16SF_FTYPE_V16SF_V16SF_HI_INT,
V16SF_FTYPE_V16HI_V16SF_HI_INT, V8SI_FTYPE_V8DF_V8SI_QI_INT,
V8SF_FTYPE_V8DF_V8SF_QI_INT, V8DF_FTYPE_V8DF_V8DF_QI_INT,
V8DF_FTYPE_V8SF_V8DF_QI_INT, V16SF_FTYPE_V16SF_V16SF_V16SF_HI_INT,
V8DF_FTYPE_V8DF_V8DF_V8DF_QI_INT, V4SF_FTYPE_V4SF_V4SF_V4SF_QI_INT,
V4SF_FTYPE_V4SF_V2DF_V4SF_QI_INT, V2DF_FTYPE_V2DF_V2DF_V2DF_QI_INT,
V2DF_FTYPE_V2DF_V4SF_V2DF_QI_INT, V2DF_FTYPE_V2DF_V2DF_V2DF_INT,
V16SF_FTYPE_V16SF_INT_V16SF_HI_INT, V8DF_FTYPE_V8DF_INT_V8DF_QI_INT,
V4SF_FTYPE_V4SF_V4SF_INT_V4SF_QI_INT,
V2DF_FTYPE_V2DF_V2DF_INT_V2DF_QI_INT, V8DI_FTYPE_V8DI_SI_V8DI_V8DI,
V16SF_FTYPE_V16SF_PCFLOAT_V16SI_HI_INT,
V16SF_FTYPE_V16SF_PCFLOAT_V8DI_HI_INT,
V8DF_FTYPE_V8DF_PCDOUBLE_V8SI_QI_INT,
V8DF_FTYPE_V8DF_PCDOUBLE_V16SI_QI_INT,
V8SF_FTYPE_V8SF_PCFLOAT_V8DI_QI_INT,
V8DF_FTYPE_V8DF_PCDOUBLE_V8DI_QI_INT,
V16SI_FTYPE_V16SI_PCINT_V16SI_HI_INT,
V16SI_FTYPE_V16SI_PCINT_V8DI_HI_INT,
V8DI_FTYPE_V8DI_PCINT64_V8SI_QI_INT,
V8DI_FTYPE_V8DI_PCINT64_V16SI_QI_INT,
V8SI_FTYPE_V8SI_PCINT_V8DI_QI_INT,
V8DI_FTYPE_V8DI_PCINT64_V8DI_QI_INT,
VOID_FTYPE_PFLOAT_HI_V16SI_V16SF_INT,
VOID_FTYPE_PDOUBLE_QI_V8SI_V8DF_INT,
VOID_FTYPE_PFLOAT_QI_V8DI_V8SF_INT,
VOID_FTYPE_PDOUBLE_QI_V8DI_V8DF_INT,
VOID_FTYPE_PINT_HI_V16SI_V16SI_INT,
VOID_FTYPE_PLONGLONG_QI_V8SI_V8DI_INT,
VOID_FTYPE_PINT_QI_V8DI_V8SI_INT,
VOID_FTYPE_PLONGLONG_QI_V8DI_V8DI_INT,
VOID_FTYPE_HI_V16SI_PCINT_INT_INT, VOID_FTYPE_QI_V8DI_PCINT_INT_INT.
(ALIAS): Add DEF_FUNCTION_TYPE_ALIAS (V16SI_FTYPE_V8DF_V8DF, ROUND).
* config/i386/i386.c (enum ix86_builtins): Add IX86_BUILTIN_ADDPD512,
IX86_BUILTIN_ADDPS512, IX86_BUILTIN_ADDSD_MASK,
IX86_BUILTIN_ADDSS_MASK, IX86_BUILTIN_ALIGND512,
IX86_BUILTIN_ALIGNQ512, IX86_BUILTIN_BLENDMD512,
IX86_BUILTIN_BLENDMPD512, IX86_BUILTIN_BLENDMPS512,
IX86_BUILTIN_BLENDMQ512, IX86_BUILTIN_BROADCASTF32X4_512,
IX86_BUILTIN_BROADCASTF64X4_512, IX86_BUILTIN_BROADCASTI32X4_512,
IX86_BUILTIN_BROADCASTI64X4_512, IX86_BUILTIN_BROADCASTSD512,
IX86_BUILTIN_BROADCASTSS512, IX86_BUILTIN_CMPD512,
IX86_BUILTIN_CMPPD512, IX86_BUILTIN_CMPPS512, IX86_BUILTIN_CMPQ512,
IX86_BUILTIN_CMPSD_MASK, IX86_BUILTIN_CMPSS_MASK, IX86_BUILTIN_COMIDF,
IX86_BUILTIN_COMISF, IX86_BUILTIN_COMPRESSPD512,
IX86_BUILTIN_COMPRESSPDSTORE512, IX86_BUILTIN_COMPRESSPS512,
IX86_BUILTIN_COMPRESSPSSTORE512, IX86_BUILTIN_CVTDQ2PD512,
IX86_BUILTIN_CVTDQ2PS512, IX86_BUILTIN_CVTPD2DQ512,
IX86_BUILTIN_CVTPD2PS512, IX86_BUILTIN_CVTPD2UDQ512,
IX86_BUILTIN_CVTPH2PS512, IX86_BUILTIN_CVTPS2DQ512,
IX86_BUILTIN_CVTPS2PD512, IX86_BUILTIN_CVTPS2PH512,
IX86_BUILTIN_CVTPS2UDQ512, IX86_BUILTIN_CVTSD2SS_MASK,
IX86_BUILTIN_CVTSI2SD64, IX86_BUILTIN_CVTSI2SS32,
IX86_BUILTIN_CVTSI2SS64, IX86_BUILTIN_CVTSS2SD_MASK,
IX86_BUILTIN_CVTTPD2DQ512, IX86_BUILTIN_CVTTPD2UDQ512,
IX86_BUILTIN_CVTTPS2DQ512, IX86_BUILTIN_CVTTPS2UDQ512,
IX86_BUILTIN_CVTUDQ2PD512, IX86_BUILTIN_CVTUDQ2PS512,
IX86_BUILTIN_CVTUSI2SD32, IX86_BUILTIN_CVTUSI2SD64,
IX86_BUILTIN_CVTUSI2SS32, IX86_BUILTIN_CVTUSI2SS64,
IX86_BUILTIN_DIVPD512, IX86_BUILTIN_DIVPS512, IX86_BUILTIN_DIVSD_MASK,
IX86_BUILTIN_DIVSS_MASK, IX86_BUILTIN_EXPANDPD512,
IX86_BUILTIN_EXPANDPD512Z, IX86_BUILTIN_EXPANDPDLOAD512,
IX86_BUILTIN_EXPANDPDLOAD512Z, IX86_BUILTIN_EXPANDPS512,
IX86_BUILTIN_EXPANDPS512Z, IX86_BUILTIN_EXPANDPSLOAD512,
IX86_BUILTIN_EXPANDPSLOAD512Z, IX86_BUILTIN_EXTRACTF32X4,
IX86_BUILTIN_EXTRACTF64X4, IX86_BUILTIN_EXTRACTI32X4,
IX86_BUILTIN_EXTRACTI64X4, IX86_BUILTIN_FIXUPIMMPD512_MASK,
IX86_BUILTIN_FIXUPIMMPD512_MASKZ, IX86_BUILTIN_FIXUPIMMPS512_MASK,
IX86_BUILTIN_FIXUPIMMPS512_MASKZ, IX86_BUILTIN_FIXUPIMMSD128_MASK,
IX86_BUILTIN_FIXUPIMMSD128_MASKZ, IX86_BUILTIN_FIXUPIMMSS128_MASK,
IX86_BUILTIN_FIXUPIMMSS128_MASKZ, IX86_BUILTIN_GETEXPPD512,
IX86_BUILTIN_GETEXPPS512, IX86_BUILTIN_GETEXPSD128,
IX86_BUILTIN_GETEXPSS128, IX86_BUILTIN_GETMANTPD512,
IX86_BUILTIN_GETMANTPS512, IX86_BUILTIN_GETMANTSD128,
IX86_BUILTIN_GETMANTSS128, IX86_BUILTIN_INSERTF32X4,
IX86_BUILTIN_INSERTF64X4, IX86_BUILTIN_INSERTI32X4,
IX86_BUILTIN_INSERTI64X4, IX86_BUILTIN_LOADAPD512,
IX86_BUILTIN_LOADAPS512, IX86_BUILTIN_LOADDQUDI512,
IX86_BUILTIN_LOADDQUSI512, IX86_BUILTIN_LOADSD, IX86_BUILTIN_LOADSS,
IX86_BUILTIN_LOADUPD512, IX86_BUILTIN_LOADUPS512,
IX86_BUILTIN_MAXPD512, IX86_BUILTIN_MAXPS512, IX86_BUILTIN_MAXSD_MASK,
IX86_BUILTIN_MAXSS_MASK, IX86_BUILTIN_MINPD512, IX86_BUILTIN_MINPS512,
IX86_BUILTIN_MINSD_MASK, IX86_BUILTIN_MINSS_MASK,
IX86_BUILTIN_MOVAPD512, IX86_BUILTIN_MOVAPS512,
IX86_BUILTIN_MOVDDUP512, IX86_BUILTIN_MOVDQA32LOAD512,
IX86_BUILTIN_MOVDQA32STORE512, IX86_BUILTIN_MOVDQA32_512,
IX86_BUILTIN_MOVDQA64LOAD512, IX86_BUILTIN_MOVDQA64STORE512,
IX86_BUILTIN_MOVDQA64_512, IX86_BUILTIN_MOVESD, IX86_BUILTIN_MOVESS,
IX86_BUILTIN_MOVNTDQ512, IX86_BUILTIN_MOVNTPD512,
IX86_BUILTIN_MOVNTPS512, IX86_BUILTIN_MOVSHDUP512,
IX86_BUILTIN_MOVSLDUP512, IX86_BUILTIN_MULPD512,
IX86_BUILTIN_MULPS512, IX86_BUILTIN_MULSD_MASK,
IX86_BUILTIN_MULSS_MASK, IX86_BUILTIN_PABSD512, IX86_BUILTIN_PABSQ512,
IX86_BUILTIN_PADDD512, IX86_BUILTIN_PADDQ512, IX86_BUILTIN_PANDD512,
IX86_BUILTIN_PANDND512, IX86_BUILTIN_PANDNQ512, IX86_BUILTIN_PANDQ512,
IX86_BUILTIN_PBROADCASTD512, IX86_BUILTIN_PBROADCASTD512_GPR,
IX86_BUILTIN_PBROADCASTMB512, IX86_BUILTIN_PBROADCASTMW512,
IX86_BUILTIN_PBROADCASTQ512, IX86_BUILTIN_PBROADCASTQ512_GPR,
IX86_BUILTIN_PBROADCASTQ512_MEM, IX86_BUILTIN_PCMPEQD512_MASK,
IX86_BUILTIN_PCMPEQQ512_MASK, IX86_BUILTIN_PCMPGTD512_MASK,
IX86_BUILTIN_PCMPGTQ512_MASK, IX86_BUILTIN_PCOMPRESSD512,
IX86_BUILTIN_PCOMPRESSDSTORE512, IX86_BUILTIN_PCOMPRESSQ512,
IX86_BUILTIN_PCOMPRESSQSTORE512, IX86_BUILTIN_PEXPANDD512,
IX86_BUILTIN_PEXPANDD512Z, IX86_BUILTIN_PEXPANDDLOAD512,
IX86_BUILTIN_PEXPANDDLOAD512Z, IX86_BUILTIN_PEXPANDQ512,
IX86_BUILTIN_PEXPANDQ512Z, IX86_BUILTIN_PEXPANDQLOAD512,
IX86_BUILTIN_PEXPANDQLOAD512Z, IX86_BUILTIN_PMAXSD512,
IX86_BUILTIN_PMAXSQ512, IX86_BUILTIN_PMAXUD512,
IX86_BUILTIN_PMAXUQ512, IX86_BUILTIN_PMINSD512,
IX86_BUILTIN_PMINSQ512, IX86_BUILTIN_PMINUD512,
IX86_BUILTIN_PMINUQ512, IX86_BUILTIN_PMOVDB512,
IX86_BUILTIN_PMOVDW512, IX86_BUILTIN_PMOVQB512,
IX86_BUILTIN_PMOVQD512, IX86_BUILTIN_PMOVQW512,
IX86_BUILTIN_PMOVSDB512, IX86_BUILTIN_PMOVSDW512,
IX86_BUILTIN_PMOVSQB512, IX86_BUILTIN_PMOVSQD512,
IX86_BUILTIN_PMOVSQW512, IX86_BUILTIN_PMOVSXBD512,
IX86_BUILTIN_PMOVSXBQ512, IX86_BUILTIN_PMOVSXDQ512,
IX86_BUILTIN_PMOVSXWD512, IX86_BUILTIN_PMOVSXWQ512,
IX86_BUILTIN_PMOVUSDB512, IX86_BUILTIN_PMOVUSDW512,
IX86_BUILTIN_PMOVUSQB512, IX86_BUILTIN_PMOVUSQD512,
IX86_BUILTIN_PMOVUSQW512, IX86_BUILTIN_PMOVZXBD512,
IX86_BUILTIN_PMOVZXBQ512, IX86_BUILTIN_PMOVZXDQ512,
IX86_BUILTIN_PMOVZXWD512, IX86_BUILTIN_PMOVZXWQ512,
IX86_BUILTIN_PMULDQ512, IX86_BUILTIN_PMULLD512,
IX86_BUILTIN_PMULUDQ512, IX86_BUILTIN_PORD512, IX86_BUILTIN_PORQ512,
IX86_BUILTIN_PROLD512, IX86_BUILTIN_PROLQ512, IX86_BUILTIN_PROLVD512,
IX86_BUILTIN_PROLVQ512, IX86_BUILTIN_PRORD512, IX86_BUILTIN_PRORQ512,
IX86_BUILTIN_PRORVD512, IX86_BUILTIN_PRORVQ512,
IX86_BUILTIN_PSHUFD512, IX86_BUILTIN_PSLLD512, IX86_BUILTIN_PSLLDI512,
IX86_BUILTIN_PSLLQ512, IX86_BUILTIN_PSLLQI512,
IX86_BUILTIN_PSLLVV16SI, IX86_BUILTIN_PSLLVV8DI,
IX86_BUILTIN_PSRAD512, IX86_BUILTIN_PSRADI512, IX86_BUILTIN_PSRAQ512,
IX86_BUILTIN_PSRAQI512, IX86_BUILTIN_PSRAVV16SI,
IX86_BUILTIN_PSRAVV8DI, IX86_BUILTIN_PSRLD512, IX86_BUILTIN_PSRLDI512,
IX86_BUILTIN_PSRLQ512, IX86_BUILTIN_PSRLQI512,
IX86_BUILTIN_PSRLVV16SI, IX86_BUILTIN_PSRLVV8DI,
IX86_BUILTIN_PSUBD512, IX86_BUILTIN_PSUBQ512, IX86_BUILTIN_PTESTMD512,
IX86_BUILTIN_PTESTMQ512, IX86_BUILTIN_PTESTNMD512,
IX86_BUILTIN_PTESTNMQ512, IX86_BUILTIN_PUNPCKHDQ512,
IX86_BUILTIN_PUNPCKHQDQ512, IX86_BUILTIN_PUNPCKLDQ512,
IX86_BUILTIN_PUNPCKLQDQ512, IX86_BUILTIN_PXORD512,
IX86_BUILTIN_PXORQ512, IX86_BUILTIN_RCP14PD512,
IX86_BUILTIN_RCP14PS512, IX86_BUILTIN_RCP14SD, IX86_BUILTIN_RCP14SS,
IX86_BUILTIN_RNDSCALEPD, IX86_BUILTIN_RNDSCALEPS,
IX86_BUILTIN_RNDSCALESD, IX86_BUILTIN_RNDSCALESS,
IX86_BUILTIN_RSQRT14PD512, IX86_BUILTIN_RSQRT14PS512,
IX86_BUILTIN_RSQRT14SD, IX86_BUILTIN_RSQRT14SS,
IX86_BUILTIN_SCALEFPD512, IX86_BUILTIN_SCALEFPS512,
IX86_BUILTIN_SCALEFSD, IX86_BUILTIN_SCALEFSS, IX86_BUILTIN_SHUFPD512,
IX86_BUILTIN_SHUFPS512, IX86_BUILTIN_SHUF_F32x4,
IX86_BUILTIN_SHUF_F64x2, IX86_BUILTIN_SHUF_I32x4,
IX86_BUILTIN_SHUF_I64x2,
IX86_BUILTIN_SQRTPD512_MASK, IX86_BUILTIN_SQRTPS512_MASK,
IX86_BUILTIN_SQRTSD_MASK,
IX86_BUILTIN_SQRTSS_MASK, IX86_BUILTIN_STOREAPD512,
IX86_BUILTIN_STOREAPS512, IX86_BUILTIN_STOREDQUDI512,
IX86_BUILTIN_STOREDQUSI512, IX86_BUILTIN_STORESD,
IX86_BUILTIN_STORESS, IX86_BUILTIN_STOREUPD512,
IX86_BUILTIN_STOREUPS512, IX86_BUILTIN_SUBPD512,
IX86_BUILTIN_SUBPS512, IX86_BUILTIN_SUBSD_MASK,
IX86_BUILTIN_SUBSS_MASK, IX86_BUILTIN_UCMPD512, IX86_BUILTIN_UCMPQ512,
IX86_BUILTIN_UNPCKHPD512, IX86_BUILTIN_UNPCKHPS512,
IX86_BUILTIN_UNPCKLPD512, IX86_BUILTIN_UNPCKLPS512,
IX86_BUILTIN_VCVTSD2SI32, IX86_BUILTIN_VCVTSD2SI64,
IX86_BUILTIN_VCVTSD2USI32, IX86_BUILTIN_VCVTSD2USI64,
IX86_BUILTIN_VCVTSS2SI32, IX86_BUILTIN_VCVTSS2SI64,
IX86_BUILTIN_VCVTSS2USI32, IX86_BUILTIN_VCVTSS2USI64,
IX86_BUILTIN_VCVTTSD2SI32, IX86_BUILTIN_VCVTTSD2SI64,
IX86_BUILTIN_VCVTTSD2USI32, IX86_BUILTIN_VCVTTSD2USI64,
IX86_BUILTIN_VCVTTSS2SI32, IX86_BUILTIN_VCVTTSS2SI64,
IX86_BUILTIN_VCVTTSS2USI32, IX86_BUILTIN_VCVTTSS2USI64,
IX86_BUILTIN_VFMADDPD512_MASK, IX86_BUILTIN_VFMADDPD512_MASK3,
IX86_BUILTIN_VFMADDPD512_MASKZ, IX86_BUILTIN_VFMADDPS512_MASK,
IX86_BUILTIN_VFMADDPS512_MASK3, IX86_BUILTIN_VFMADDPS512_MASKZ,
IX86_BUILTIN_VFMADDSD3_MASK, IX86_BUILTIN_VFMADDSD3_MASK3,
IX86_BUILTIN_VFMADDSD3_MASKZ, IX86_BUILTIN_VFMADDSS3_MASK,
IX86_BUILTIN_VFMADDSS3_MASK3, IX86_BUILTIN_VFMADDSS3_MASKZ,
IX86_BUILTIN_VFMADDSUBPD512_MASK, IX86_BUILTIN_VFMADDSUBPD512_MASK3,
IX86_BUILTIN_VFMADDSUBPD512_MASKZ, IX86_BUILTIN_VFMADDSUBPS512_MASK,
IX86_BUILTIN_VFMADDSUBPS512_MASK3, IX86_BUILTIN_VFMADDSUBPS512_MASKZ,
IX86_BUILTIN_VFMSUBADDPD512_MASK3, IX86_BUILTIN_VFMSUBADDPS512_MASK3,
IX86_BUILTIN_VFMSUBPD512_MASK3, IX86_BUILTIN_VFMSUBPS512_MASK3,
IX86_BUILTIN_VFMSUBSD3_MASK3, IX86_BUILTIN_VFMSUBSS3_MASK3,
IX86_BUILTIN_VFNMADDPD512_MASK, IX86_BUILTIN_VFNMADDPS512_MASK,
IX86_BUILTIN_VFNMSUBPD512_MASK, IX86_BUILTIN_VFNMSUBPD512_MASK3,
IX86_BUILTIN_VFNMSUBPS512_MASK, IX86_BUILTIN_VFNMSUBPS512_MASK3,
IX86_BUILTIN_VPCLZCNTD512, IX86_BUILTIN_VPCLZCNTQ512,
IX86_BUILTIN_VPCONFLICTD512, IX86_BUILTIN_VPCONFLICTQ512,
IX86_BUILTIN_VPERMDF512, IX86_BUILTIN_VPERMDI512,
IX86_BUILTIN_VPERMI2VARD512, IX86_BUILTIN_VPERMI2VARPD512,
IX86_BUILTIN_VPERMI2VARPS512, IX86_BUILTIN_VPERMI2VARQ512,
IX86_BUILTIN_VPERMILPD512, IX86_BUILTIN_VPERMILPS512,
IX86_BUILTIN_VPERMILVARPD512, IX86_BUILTIN_VPERMILVARPS512,
IX86_BUILTIN_VPERMT2VARD512, IX86_BUILTIN_VPERMT2VARD512_MASKZ,
IX86_BUILTIN_VPERMT2VARPD512, IX86_BUILTIN_VPERMT2VARPD512_MASKZ,
IX86_BUILTIN_VPERMT2VARPS512, IX86_BUILTIN_VPERMT2VARPS512_MASKZ,
IX86_BUILTIN_VPERMT2VARQ512, IX86_BUILTIN_VPERMT2VARQ512_MASKZ,
IX86_BUILTIN_VPERMVARDF512, IX86_BUILTIN_VPERMVARDI512,
IX86_BUILTIN_VPERMVARSF512, IX86_BUILTIN_VPERMVARSI512,
IX86_BUILTIN_VTERNLOGD512_MASK, IX86_BUILTIN_VTERNLOGD512_MASKZ,
IX86_BUILTIN_VTERNLOGQ512_MASK, IX86_BUILTIN_VTERNLOGQ512_MASKZ,
IX86_BUILTIN_KAND16, IX86_BUILTIN_KANDN16, IX86_BUILTIN_KNOT16,
IX86_BUILTIN_KOR16, IX86_BUILTIN_KORTESTC16, IX86_BUILTIN_KORTESTZ16,
IX86_BUILTIN_KUNPCKBW, IX86_BUILTIN_KXNOR16, IX86_BUILTIN_KXOR16,
IX86_BUILTIN_GATHER3SIV8DI,
IX86_BUILTIN_SCATTERDIV16SF, IX86_BUILTIN_SCATTERDIV16SI,
IX86_BUILTIN_SCATTERDIV8DF, IX86_BUILTIN_SCATTERDIV8DI,
IX86_BUILTIN_SCATTERSIV16SF, IX86_BUILTIN_SCATTERSIV16SI,
IX86_BUILTIN_SCATTERSIV8DF, IX86_BUILTIN_SCATTERSIV8DI,
IX86_BUILTIN_GATHERPFDPS, IX86_BUILTIN_GATHERPFQPS,
IX86_BUILTIN_SCATTERPFDPS, IX86_BUILTIN_SCATTERPFQPS,
IX86_BUILTIN_EXP2PD_MASK, IX86_BUILTIN_EXP2PS_MASK,
IX86_BUILTIN_RCP28PD, IX86_BUILTIN_RCP28PS,
IX86_BUILTIN_RSQRT28PD, IX86_BUILTIN_RSQRT28PS.
(bdesc_special_args): Add __builtin_ia32_compressstoresf512_mask,
__builtin_ia32_compressstoresi512_mask,
__builtin_ia32_compressstoredf512_mask,
__builtin_ia32_compressstoredi512_mask,
__builtin_ia32_expandloadsf512_mask,
__builtin_ia32_expandloadsf512_maskz,
__builtin_ia32_expandloadsi512_mask,
__builtin_ia32_expandloadsi512_maskz,
__builtin_ia32_expandloaddf512_mask,
__builtin_ia32_expandloaddf512_maskz,
__builtin_ia32_expandloaddi512_mask,
__builtin_ia32_expandloaddi512_maskz,
__builtin_ia32_loaddqusi512_mask, __builtin_ia32_loaddqudi512_mask,
__builtin_ia32_loadsd_mask, __builtin_ia32_loadss_mask,
__builtin_ia32_loadupd512_mask, __builtin_ia32_loadups512_mask,
__builtin_ia32_loadaps512_mask, __builtin_ia32_movdqa32load512_mask,
__builtin_ia32_loadapd512_mask, __builtin_ia32_movdqa64load512_mask,
__builtin_ia32_movntps512, __builtin_ia32_movntpd512,
__builtin_ia32_movntdq512, __builtin_ia32_storedqusi512_mask,
__builtin_ia32_storedqudi512_mask, __builtin_ia32_storesd_mask,
__builtin_ia32_storess_mask, __builtin_ia32_storeupd512_mask,
__builtin_ia32_storeups512_mask, __builtin_ia32_storeaps512_mask,
__builtin_ia32_movdqa32store512_mask, __builtin_ia32_storeapd512_mask,
__builtin_ia32_movdqa64store512_mask, __builtin_ia32_alignd512_mask,
__builtin_ia32_alignq512_mask, __builtin_ia32_blendmd_512_mask,
__builtin_ia32_blendmpd_512_mask, __builtin_ia32_blendmps_512_mask,
__builtin_ia32_blendmq_512_mask, __builtin_ia32_broadcastf32x4_512,
__builtin_ia32_broadcastf64x4_512, __builtin_ia32_broadcasti32x4_512,
__builtin_ia32_broadcasti64x4_512, __builtin_ia32_broadcastsd512,
__builtin_ia32_broadcastss512, __builtin_ia32_cmpd512_mask,
__builtin_ia32_cmpq512_mask, __builtin_ia32_compressdf512_mask,
__builtin_ia32_compresssf512_mask, __builtin_ia32_cvtdq2pd512_mask,
__builtin_ia32_vcvtps2ph512_mask, __builtin_ia32_cvtudq2pd512_mask,
__builtin_ia32_cvtusi2sd32, __builtin_ia32_expanddf512_mask,
__builtin_ia32_expanddf512_maskz, __builtin_ia32_expandsf512_mask,
__builtin_ia32_expandsf512_maskz, __builtin_ia32_extractf32x4_mask,
__builtin_ia32_extractf64x4_mask, __builtin_ia32_extracti32x4_mask,
__builtin_ia32_extracti64x4_mask, __builtin_ia32_insertf32x4_mask,
__builtin_ia32_insertf64x4_mask, __builtin_ia32_inserti32x4_mask,
__builtin_ia32_inserti64x4_mask, __builtin_ia32_movapd512_mask,
__builtin_ia32_movaps512_mask, __builtin_ia32_movddup512_mask,
__builtin_ia32_movdqa32_512_mask, __builtin_ia32_movdqa64_512_mask,
__builtin_ia32_movesd_mask, __builtin_ia32_movess_mask,
__builtin_ia32_movshdup512_mask, __builtin_ia32_movsldup512_mask,
__builtin_ia32_pabsd512_mask, __builtin_ia32_pabsq512_mask,
__builtin_ia32_paddd512_mask, __builtin_ia32_paddq512_mask,
__builtin_ia32_pandd512_mask, __builtin_ia32_pandnd512_mask,
__builtin_ia32_pandnq512_mask, __builtin_ia32_pandq512_mask,
__builtin_ia32_pbroadcastd512, __builtin_ia32_pbroadcastd512_gpr_mask,
__builtin_ia32_broadcastmb512, __builtin_ia32_broadcastmw512,
__builtin_ia32_pbroadcastq512, __builtin_ia32_pbroadcastq512_gpr_mask,
__builtin_ia32_pbroadcastq512_mem_mask,
__builtin_ia32_pcmpeqd512_mask, __builtin_ia32_pcmpeqq512_mask,
__builtin_ia32_pcmpgtd512_mask, __builtin_ia32_pcmpgtq512_mask,
__builtin_ia32_compresssi512_mask, __builtin_ia32_compressdi512_mask,
__builtin_ia32_expandsi512_mask, __builtin_ia32_expandsi512_maskz,
__builtin_ia32_expanddi512_mask, __builtin_ia32_expanddi512_maskz,
__builtin_ia32_pmaxsd512_mask, __builtin_ia32_pmaxsq512_mask,
__builtin_ia32_pmaxud512_mask, __builtin_ia32_pmaxuq512_mask,
__builtin_ia32_pminsd512_mask, __builtin_ia32_pminsq512_mask,
__builtin_ia32_pminud512_mask, __builtin_ia32_pminuq512_mask,
__builtin_ia32_pmovdb512_mask, __builtin_ia32_pmovdw512_mask,
__builtin_ia32_pmovqb512_mask, __builtin_ia32_pmovqd512_mask,
__builtin_ia32_pmovqw512_mask, __builtin_ia32_pmovsdb512_mask,
__builtin_ia32_pmovsdw512_mask, __builtin_ia32_pmovsqb512_mask,
__builtin_ia32_pmovsqd512_mask, __builtin_ia32_pmovsqw512_mask,
__builtin_ia32_pmovsxbd512_mask, __builtin_ia32_pmovsxbq512_mask,
__builtin_ia32_pmovsxdq512_mask, __builtin_ia32_pmovsxwd512_mask,
__builtin_ia32_pmovsxwq512_mask, __builtin_ia32_pmovusdb512_mask,
__builtin_ia32_pmovusdw512_mask, __builtin_ia32_pmovusqb512_mask,
__builtin_ia32_pmovusqd512_mask, __builtin_ia32_pmovusqw512_mask,
__builtin_ia32_pmovzxbd512_mask, __builtin_ia32_pmovzxbq512_mask,
__builtin_ia32_pmovzxdq512_mask, __builtin_ia32_pmovzxwd512_mask,
__builtin_ia32_pmovzxwq512_mask, __builtin_ia32_pmuldq512_mask,
__builtin_ia32_pmulld512_mask, __builtin_ia32_pmuludq512_mask,
__builtin_ia32_pord512_mask, __builtin_ia32_porq512_mask,
__builtin_ia32_prold512_mask, __builtin_ia32_prolq512_mask,
__builtin_ia32_prolvd512_mask, __builtin_ia32_prolvq512_mask,
__builtin_ia32_prord512_mask, __builtin_ia32_prorq512_mask,
__builtin_ia32_prorvd512_mask, __builtin_ia32_prorvq512_mask,
__builtin_ia32_pshufd512_mask, __builtin_ia32_pslld512_mask,
__builtin_ia32_pslldi512_mask, __builtin_ia32_psllq512_mask,
__builtin_ia32_psllqi512_mask, __builtin_ia32_psllv16si_mask,
__builtin_ia32_psllv8di_mask, __builtin_ia32_psrad512_mask,
__builtin_ia32_psradi512_mask, __builtin_ia32_psraq512_mask,
__builtin_ia32_psraqi512_mask, __builtin_ia32_psrav16si_mask,
__builtin_ia32_psrav8di_mask, __builtin_ia32_psrld512_mask,
__builtin_ia32_psrldi512_mask, __builtin_ia32_psrlq512_mask,
__builtin_ia32_psrlqi512_mask, __builtin_ia32_psrlv16si_mask,
__builtin_ia32_psrlv8di_mask, __builtin_ia32_psubd512_mask,
__builtin_ia32_psubq512_mask, __builtin_ia32_ptestmd512,
__builtin_ia32_ptestmq512, __builtin_ia32_ptestnmd512,
__builtin_ia32_ptestnmq512, __builtin_ia32_punpckhdq512_mask,
__builtin_ia32_punpckhqdq512_mask, __builtin_ia32_punpckldq512_mask,
__builtin_ia32_punpcklqdq512_mask, __builtin_ia32_pxord512_mask,
__builtin_ia32_pxorq512_mask, __builtin_ia32_rcp14pd512_mask,
__builtin_ia32_rcp14ps512_mask, __builtin_ia32_rcp14sd_mask,
__builtin_ia32_rcp14ss_mask, __builtin_ia32_rsqrt14pd512_mask,
__builtin_ia32_rsqrt14ps512_mask, __builtin_ia32_rsqrt14sd_mask,
__builtin_ia32_rsqrt14ss_mask, __builtin_ia32_shufpd512_mask,
__builtin_ia32_shufps512_mask, __builtin_ia32_shuf_f32x4_mask,
__builtin_ia32_shuf_f64x2_mask, __builtin_ia32_shuf_i32x4_mask,
__builtin_ia32_shuf_i64x2_mask, __builtin_ia32_ucmpd512_mask,
__builtin_ia32_ucmpq512_mask, __builtin_ia32_unpckhpd512_mask,
__builtin_ia32_unpckhps512_mask, __builtin_ia32_unpcklpd512_mask,
__builtin_ia32_unpcklps512_mask, __builtin_ia32_vplzcntd_512_mask,
__builtin_ia32_vplzcntq_512_mask,
__builtin_ia32_vpconflictsi_512_mask,
__builtin_ia32_vpconflictdi_512_mask, __builtin_ia32_permdf512_mask,
__builtin_ia32_permdi512_mask, __builtin_ia32_vpermi2vard512_mask,
__builtin_ia32_vpermi2varpd512_mask,
__builtin_ia32_vpermi2varps512_mask,
__builtin_ia32_vpermi2varq512_mask, __builtin_ia32_vpermilpd512_mask,
__builtin_ia32_vpermilps512_mask, __builtin_ia32_vpermilvarpd512_mask,
__builtin_ia32_vpermilvarps512_mask,
__builtin_ia32_vpermt2vard512_mask,
__builtin_ia32_vpermt2vard512_maskz,
__builtin_ia32_vpermt2varpd512_mask,
__builtin_ia32_vpermt2varpd512_maskz,
__builtin_ia32_vpermt2varps512_mask,
__builtin_ia32_vpermt2varps512_maskz,
__builtin_ia32_vpermt2varq512_mask,
__builtin_ia32_vpermt2varq512_maskz, __builtin_ia32_permvardf512_mask,
__builtin_ia32_permvardi512_mask, __builtin_ia32_permvarsf512_mask,
__builtin_ia32_permvarsi512_mask, __builtin_ia32_pternlogd512_mask,
__builtin_ia32_pternlogd512_maskz, __builtin_ia32_pternlogq512_mask,
__builtin_ia32_pternlogq512_maskz, __builtin_ia32_copysignps512,
__builtin_ia32_copysignpd512, __builtin_ia32_sqrtpd512,
__builtin_ia32_sqrtps512, __builtin_ia32_exp2ps,
__builtin_ia32_roundpd_az_vec_pack_sfix512,
__builtin_ia32_floorpd_vec_pack_sfix512,
__builtin_ia32_ceilpd_vec_pack_sfix512, __builtin_ia32_kandhi,
__builtin_ia32_kandnhi, __builtin_ia32_knothi, __builtin_ia32_korhi,
__builtin_ia32_kortestchi, __builtin_ia32_kortestzhi,
__builtin_ia32_kunpckhi, __builtin_ia32_kxnorhi,
__builtin_ia32_kxorhi, __builtin_ia32_addpd512_mask,
__builtin_ia32_addps512_mask, __builtin_ia32_addsd_mask,
__builtin_ia32_addss_mask, __builtin_ia32_cmppd512_mask,
__builtin_ia32_cmpps512_mask, __builtin_ia32_cmpsd_mask,
__builtin_ia32_cmpss_mask, __builtin_ia32_vcomisd,
__builtin_ia32_vcomiss, __builtin_ia32_cvtdq2ps512_mask,
__builtin_ia32_cvtpd2dq512_mask, __builtin_ia32_cvtpd2ps512_mask,
__builtin_ia32_cvtpd2udq512_mask, __builtin_ia32_vcvtph2ps512_mask,
__builtin_ia32_cvtps2dq512_mask, __builtin_ia32_cvtps2pd512_mask,
__builtin_ia32_cvtps2udq512_mask, __builtin_ia32_cvtsd2ss_mask,
__builtin_ia32_cvtsi2sd64, __builtin_ia32_cvtsi2ss32,
__builtin_ia32_cvtsi2ss64, __builtin_ia32_cvtss2sd_mask,
__builtin_ia32_cvttpd2dq512_mask, __builtin_ia32_cvttpd2udq512_mask,
__builtin_ia32_cvttps2dq512_mask, __builtin_ia32_cvttps2udq512_mask,
__builtin_ia32_cvtudq2ps512_mask, __builtin_ia32_cvtusi2sd64,
__builtin_ia32_cvtusi2ss32, __builtin_ia32_cvtusi2ss64,
__builtin_ia32_divpd512_mask, __builtin_ia32_divps512_mask,
__builtin_ia32_divsd_mask, __builtin_ia32_divss_mask,
__builtin_ia32_fixupimmpd512_mask, __builtin_ia32_fixupimmpd512_maskz,
__builtin_ia32_fixupimmps512_mask, __builtin_ia32_fixupimmps512_maskz,
__builtin_ia32_fixupimmsd_mask, __builtin_ia32_fixupimmsd_maskz,
__builtin_ia32_fixupimmss_mask, __builtin_ia32_fixupimmss_maskz,
__builtin_ia32_getexppd512_mask, __builtin_ia32_getexpps512_mask,
__builtin_ia32_getexpsd128_mask, __builtin_ia32_getexpss128_mask,
__builtin_ia32_getmantpd512_mask, __builtin_ia32_getmantps512_mask,
__builtin_ia32_getmantsd_mask, __builtin_ia32_getmantss_mask,
__builtin_ia32_maxpd512_mask, __builtin_ia32_maxps512_mask,
__builtin_ia32_maxsd_mask, __builtin_ia32_maxss_mask,
__builtin_ia32_minpd512_mask, __builtin_ia32_minps512_mask,
__builtin_ia32_minsd_mask, __builtin_ia32_minss_mask,
__builtin_ia32_mulpd512_mask, __builtin_ia32_mulps512_mask,
__builtin_ia32_mulsd_mask, __builtin_ia32_mulss_mask,
__builtin_ia32_rndscalepd_mask, __builtin_ia32_rndscaleps_mask,
__builtin_ia32_rndscalesd_mask, __builtin_ia32_rndscaless_mask,
__builtin_ia32_scalefpd512_mask, __builtin_ia32_scalefps512_mask,
__builtin_ia32_scalefsd_mask, __builtin_ia32_scalefss_mask,
__builtin_ia32_sqrtpd512_mask, __builtin_ia32_sqrtps512_mask,
__builtin_ia32_sqrtsd_mask, __builtin_ia32_sqrtss_mask,
__builtin_ia32_subpd512_mask, __builtin_ia32_subps512_mask,
__builtin_ia32_subsd_mask, __builtin_ia32_subss_mask,
__builtin_ia32_vcvtsd2si32, __builtin_ia32_vcvtsd2si64,
__builtin_ia32_vcvtsd2usi32, __builtin_ia32_vcvtsd2usi64,
__builtin_ia32_vcvtss2si32, __builtin_ia32_vcvtss2si64,
__builtin_ia32_vcvtss2usi32, __builtin_ia32_vcvtss2usi64,
__builtin_ia32_vcvttsd2si32, __builtin_ia32_vcvttsd2si64,
__builtin_ia32_vcvttsd2usi32, __builtin_ia32_vcvttsd2usi64,
__builtin_ia32_vcvttss2si32, __builtin_ia32_vcvttss2si64,
__builtin_ia32_vcvttss2usi32, __builtin_ia32_vcvttss2usi64,
__builtin_ia32_vfmaddpd512_mask, __builtin_ia32_vfmaddpd512_mask3,
__builtin_ia32_vfmaddpd512_maskz, __builtin_ia32_vfmaddps512_mask,
__builtin_ia32_vfmaddps512_mask3, __builtin_ia32_vfmaddps512_maskz,
__builtin_ia32_vfmaddsd3_mask, __builtin_ia32_vfmaddsd3_mask3,
__builtin_ia32_vfmaddsd3_maskz, __builtin_ia32_vfmaddss3_mask,
__builtin_ia32_vfmaddss3_mask3, __builtin_ia32_vfmaddss3_maskz,
__builtin_ia32_vfmaddsubpd512_mask,
__builtin_ia32_vfmaddsubpd512_mask3,
__builtin_ia32_vfmaddsubpd512_maskz,
__builtin_ia32_vfmaddsubps512_mask,
__builtin_ia32_vfmaddsubps512_mask3,
__builtin_ia32_vfmaddsubps512_maskz,
__builtin_ia32_vfmsubaddpd512_mask3,
__builtin_ia32_vfmsubaddps512_mask3, __builtin_ia32_vfmsubpd512_mask3,
__builtin_ia32_vfmsubps512_mask3, __builtin_ia32_vfmsubsd3_mask3,
__builtin_ia32_vfmsubss3_mask3, __builtin_ia32_vfnmaddpd512_mask,
__builtin_ia32_vfnmaddps512_mask, __builtin_ia32_vfnmsubpd512_mask,
__builtin_ia32_vfnmsubpd512_mask3, __builtin_ia32_vfnmsubps512_mask,
__builtin_ia32_vfnmsubps512_mask3, __builtin_ia32_exp2pd_mask,
__builtin_ia32_exp2ps_mask, __builtin_ia32_rcp28pd_mask,
__builtin_ia32_rcp28ps_mask, __builtin_ia32_rsqrt28pd_mask,
__builtin_ia32_rsqrt28ps_mask, __builtin_ia32_gathersiv16sf,
__builtin_ia32_gathersiv8df, __builtin_ia32_gatherdiv16sf,
__builtin_ia32_gatherdiv8df, __builtin_ia32_gathersiv16si,
__builtin_ia32_gathersiv8di, __builtin_ia32_gatherdiv16si,
__builtin_ia32_gatherdiv8di, __builtin_ia32_gatheraltsiv8df ,
__builtin_ia32_gatheraltdiv8sf , __builtin_ia32_gatheraltsiv8di ,
__builtin_ia32_gatheraltdiv8si , __builtin_ia32_scattersiv16sf,
__builtin_ia32_scattersiv8df, __builtin_ia32_scatterdiv16sf,
__builtin_ia32_scatterdiv8df, __builtin_ia32_scattersiv16si,
__builtin_ia32_scattersiv8di, __builtin_ia32_scatterdiv16si,
__builtin_ia32_scatterdiv8di, __builtin_ia32_gatherpfdps,
__builtin_ia32_gatherpfqps, __builtin_ia32_scatterpfdps,
__builtin_ia32_scatterpfqps.
(ix86_init_mmx_sse_builtins): Handle builtins with AVX512 embeded
rounding, builtins for AVX512 gathers/scatters.
(ix86_expand_args_builtin): Handle new functions types, add warnings
for masked builtins.
(ix86_erase_embedded_rounding): Handle patterns with embedded rounding.
(ix86_expand_sse_comi_round): Ditto.
(ix86_expand_round_builtin): Ditto.
(ix86_expand_builtin): Handle AVX512's gathers/scatters and kortest{z}.
Call ix86_expand_round_builtin.
* config/i386/immintrin.h: Add avx512fintrin.h, avx512erintrin.h,
avx512pfintrin.h, avx512cdintrin.h.

testsuite/

* gcc.target/i386/avx-1.c: Extend to AVX-512.
* gcc.target/i386/sse-22.c: Ditto.
* gcc.target/i386/sse-23.c: Ditto.

Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>
From-SVN: r206261

10 years agoi386.c (MAX_CLASSES): Increase number of classes.
Alexander Ivchenko [Tue, 31 Dec 2013 11:09:42 +0000 (11:09 +0000)]
i386.c (MAX_CLASSES): Increase number of classes.

gcc/
* config/i386/i386.c (MAX_CLASSES): Increase number of classes.
(classify_argument): Extend for 512 bit vectors.
(construct_container): Ditto.
(function_arg_advance_32): Ditto.
(function_arg_advance_64): Ditto.
(function_arg_32): Ditto.
(function_arg_64): Ditto.
(function_value_32): Ditto.
(return_in_memory_32): Ditto.
(ix86_gimplify_va_arg): Ditto.
(standard_sse_constant_p): Ditto.
(standard_sse_constant_opcode): Ditto.
(ix86_expand_vector_convert_uns_vsivsf): Ditto.
(ix86_build_const_vector): Ditto.
(ix86_build_signbit_mask): Ditto.
(ix86_expand_sse_cmp): Extend for AVX512.
(ix86_expand_sse_movcc): Ditto.
(ix86_expand_int_vcond): Ditto.
(ix86_expand_vec_perm): Ditto.
(ix86_expand_sse_unpack): Ditto.
(ix86_constant_alignment): Ditto.
(ix86_builtin_vectorized_function): Ditto.
(ix86_vectorize_builtin_gather): Ditto.
(avx_vpermilp_parallel): Ditto.
(ix86_rtx_costs): Ditto.
(ix86_expand_vector_init_duplicate): Ditto.
(ix86_expand_vector_init_concat): Ditto.
(ix86_expand_vector_init_general): Ditto.
(ix86_expand_vector_extract): Ditto.
(emit_reduc_half): Ditto.
(ix86_vector_mode_supported_p): Ditto.
(ix86_emit_swdivsf): Ditto.
(ix86_emit_swsqrtsf): Ditto.
(expand_vec_perm_1): Ditto.
(ix86_vectorize_vec_perm_const_ok): Ditto.
(ix86_expand_mul_widen_evenodd): Ditto.
(ix86_expand_sse2_mulvxdi3): Ditto.
(ix86_preferred_simd_mode): Ditto.
(ix86_autovectorize_vector_sizes): Ditto.
(ix86_expand_vec_perm_vpermi2): New.
(ix86_vector_duplicate_value): Ditto.
(IX86_BUILTIN_SQRTPD512, IX86_BUILTIN_EXP2PS, IX86_BUILTIN_SQRTPS_NR512,
IX86_BUILTIN_GATHER3ALTDIV16SF, IX86_BUILTIN_GATHER3ALTDIV16SI,
IX86_BUILTIN_GATHER3ALTSIV8DF, IX86_BUILTIN_GATHER3ALTSIV8DI,
IX86_BUILTIN_GATHER3DIV16SF, IX86_BUILTIN_GATHER3DIV16SI,
IX86_BUILTIN_GATHER3DIV8DF, IX86_BUILTIN_GATHER3DIV8DI,
IX86_BUILTIN_GATHER3SIV16SF, IX86_BUILTIN_GATHER3SIV16SI,
IX86_BUILTIN_GATHER3SIV8DF, IX86_BUILTIN_CEILPD_VEC_PACK_SFIX512,
IX86_BUILTIN_CPYSGNPS512, IX86_BUILTIN_CPYSGNPD512,
IX86_BUILTIN_FLOORPD_VEC_PACK_SFIX512,
IX86_BUILTIN_ROUNDPD_AZ_VEC_PACK_SFIX512): Ditto.
* config/i386/sse.md (*mov<mode>_internal): Disable SSE typeless
stores vectors > 128bit (AVX*).
(<sse>_storeu<ssemodesuffix><avxsizesuffix>): Ditto.
(<sse2_avx_avx512f>_storedqu<mode>): Extend for AVX-512, disable
SSE typeless stores vectors > 128bit (AVX*).
(fixuns_trunc<mode><sseintvecmodelower>2): Extend for AVX-512.
(vec_pack_ufix_trunc_<mode>): Ditto.
(vec_unpacku_float_hi_v16si): New.
* tree-vect-stmts.c (vectorizable_load): Support AVX512's gathers.
* tree-vectorizer.h (MAX_VECTORIZATION_FACTOR): Extend for 512 bit
vectors.

testsuite/
* gcc.target/i386/pr49002-2.c: allow vmovapd generation.

Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com>
From-SVN: r206260

10 years agoFix typo in PR number (59613) of recent commit.
Nick Clifton [Tue, 31 Dec 2013 08:48:09 +0000 (08:48 +0000)]
Fix typo in PR number (59613) of recent commit.

From-SVN: r206258

10 years agoMAINTAINERS: Add Sandra Loosemore and Chung-Lin Tang as nios2 port maintainers.
Chung-Lin Tang [Tue, 31 Dec 2013 07:16:53 +0000 (07:16 +0000)]
MAINTAINERS: Add Sandra Loosemore and Chung-Lin Tang as nios2 port maintainers.

2013-12-31  Chung-Lin Tang  <cltang@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

* MAINTAINERS: Add Sandra Loosemore and Chung-Lin Tang as
nios2 port maintainers.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r206257

10 years agoCommit of nios2 port to trunk:
Chung-Lin Tang [Tue, 31 Dec 2013 07:05:35 +0000 (07:05 +0000)]
Commit of nios2 port to trunk:

contrib/
2013-12-31  Chung-Lin Tang  <cltang@codesourcery.com>

* config-list.mk: Add nios2-elf, nios2-linux-gnu. Corrected
ordering of some configs.

gcc/
2013-12-31  Chung-Lin Tang  <cltang@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>
    Based on patches from Altera Corporation

* config.gcc (nios2-*-*): Add nios2 config targets.
* configure.ac (TLS_SECTION_ASM_FLAG): Add nios2 case.
("$cpu_type"): Add nios2 as new cpu type.
* configure: Regenerate.
* config/nios2/nios2.c: New file.
* config/nios2/nios2.h: New file.
* config/nios2/nios2-opts.h: New file.
* config/nios2/nios2-protos.h: New file.
* config/nios2/elf.h: New file.
* config/nios2/elf.opt: New file.
* config/nios2/linux.h: New file.
* config/nios2/nios2.opt: New file.
* config/nios2/nios2.md: New file.
* config/nios2/predicates.md: New file.
* config/nios2/constraints.md: New file.
* config/nios2/t-nios2: New file.
* common/config/nios2/nios2-common.c: New file.
* doc/invoke.texi (Nios II options): Document Nios II specific
options.
* doc/md.texi (Nios II family): Document Nios II specific
constraints.
* doc/extend.texi (Function Specific Option Pragmas): Document
Nios II supported target pragma functionality.

gcc/testsuite/
2013-12-31  Sandra Loosemore  <sandra@codesourcery.com>
    Chung-Lin Tang  <cltang@codesourcery.com>
    Based on patches from Altera Corporation

* gcc.dg/stack-usage-1.c (SIZE): Define case for __nios2__.
* gcc.dg/20040813-1.c: Skip for nios2-*-*.
* gcc.dg/20020312-2.c: Add __nios2__ case.
* g++.dg/other/PR23205.C: Skip for nios2-*-*.
* g++.dg/other/pr23205-2.C: Skip for nios2-*-*.
* g++.dg/cpp0x/constexpr-rom.C: Skip for nios2-*-*.
* g++.dg/cpp0x/alias-decl-debug-0.C: Skip for nios2-*-*.
* g++.old-deja/g++.jason/thunk3.C: Skip for nios2-*-*.
* lib/target-supports.exp (check_profiling_available): Check for
nios2-*-elf.
* gcc.c-torture/execute/pr47237.x:: Skip for nios2-*-*.
* gcc.c-torture/execute/20101011-1.c: Skip for nios2-*-*.
* gcc.c-torture/execute/builtins/lib/chk.c (memset): Place
char-based memset loop before inline check, to prevent
problems when called to initialize .bss. Update comments.
* gcc.target/nios2/nios2.exp: New DejaGNU file.
* gcc.target/nios2/nios2-custom-1.c: New test.
* gcc.target/nios2/nios2-trap-insn.c: New test.
* gcc.target/nios2/nios2-builtin-custom.c: New test.
* gcc.target/nios2/nios2-builtin-io.c: New test.
* gcc.target/nios2/nios2-stack-check-1.c: New test.
* gcc.target/nios2/nios2-stack-check-2.c: New test.
* gcc.target/nios2/nios2-rdctl.c: New test.
* gcc.target/nios2/nios2-wrctl.c: New test.
* gcc.target/nios2/nios2-wrctl-zero.c: New test.
* gcc.target/nios2/nios2-wrctl-not-zero.c: New test.
* gcc.target/nios2/nios2-rdwrctl-1.c: New test.
* gcc.target/nios2/nios2-reg-constraints.c: New test.
* gcc.target/nios2/nios2-ashlsi3-one_shift.c: New test.
* gcc.target/nios2/nios2-mul-options-1.c: New test.
* gcc.target/nios2/nios2-mul-options-2.c: New test.
* gcc.target/nios2/nios2-mul-options-3.c: New test.
* gcc.target/nios2/nios2-mul-options-4.c: New test.
* gcc.target/nios2/nios2-nor.c: New test.
* gcc.target/nios2/nios2-stxio.c: New test.
* gcc.target/nios2/custom-fp-1.c: New test.
* gcc.target/nios2/custom-fp-2.c: New test.
* gcc.target/nios2/custom-fp-3.c: New test.
* gcc.target/nios2/custom-fp-4.c: New test.
* gcc.target/nios2/custom-fp-5.c: New test.
* gcc.target/nios2/custom-fp-6.c: New test.
* gcc.target/nios2/custom-fp-7.c: New test.
* gcc.target/nios2/custom-fp-8.c: New test.
* gcc.target/nios2/custom-fp-cmp-1.c: New test.
* gcc.target/nios2/custom-fp-conversion.c: New test.
* gcc.target/nios2/custom-fp-double.c: New test.
* gcc.target/nios2/custom-fp-float.c: New test.
* gcc.target/nios2/nios2-int-types.c: New test.
* gcc.target/nios2/nios2-cache-1.c: New test.
* gcc.target/nios2/nios2-cache-2.c: New test.

libgcc/
2013-12-31  Sandra Loosemore  <sandra@codesourcery.com>
    Chung-Lin Tang  <cltang@codesourcery.com>
    Based on patches from Altera Corporation

* config.host (nios2-*-*,nios2-*-linux*): Add nios2 host cases.
* config/nios2/lib2-nios2.h: New file.
* config/nios2/lib2-divmod-hi.c: New file.
* config/nios2/linux-unwind.h: New file.
* config/nios2/lib2-divmod.c: New file.
* config/nios2/linux-atomic.c: New file.
* config/nios2/t-nios2: New file.
* config/nios2/crti.asm: New file.
* config/nios2/t-linux: New file.
* config/nios2/lib2-divtable.c: New file.
* config/nios2/lib2-mul.c: New file.
* config/nios2/tramp.c: New file.
* config/nios2/crtn.asm: New file.

From-SVN: r206256

10 years agoDaily bump.
GCC Administrator [Tue, 31 Dec 2013 00:16:59 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r206255

10 years agore PR c++/41090 (Using static label reference in c++ class constructor produces wrong...
Mike Stump [Mon, 30 Dec 2013 19:34:53 +0000 (19:34 +0000)]
re PR c++/41090 (Using static label reference in c++ class constructor produces wrong code)

PR c++/41090
* g++.dg/ext/label13.C: Update to not expect failures.

From-SVN: r206252

10 years agoFix spacing.
Mike Stump [Mon, 30 Dec 2013 19:06:25 +0000 (19:06 +0000)]
Fix spacing.

From-SVN: r206251