Jonathan Wakely [Sun, 7 Dec 2014 00:51:37 +0000 (00:51 +0000)]
* doc/invoke.texi (Warning Options): Fix spelling and grammar.
From-SVN: r218461
GCC Administrator [Sun, 7 Dec 2014 00:16:29 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r218460
James Greenhalgh [Sat, 6 Dec 2014 19:19:37 +0000 (19:19 +0000)]
extend jump thread for finite state automata
PR tree-optimization/54742
* params.def (max-fsm-thread-path-insns, max-fsm-thread-length,
max-fsm-thread-paths): New.
* doc/invoke.texi (max-fsm-thread-path-insns, max-fsm-thread-length,
max-fsm-thread-paths): Documented.
* tree-cfg.c (split_edge_bb_loc): Export.
* tree-cfg.h (split_edge_bb_loc): Declared extern.
* tree-ssa-threadedge.c (simplify_control_stmt_condition): Restore the
original value of cond when simplification fails.
(fsm_find_thread_path): New.
(fsm_find_control_statement_thread_paths): New.
(thread_through_normal_block): Call find_control_statement_thread_paths.
* tree-ssa-threadupdate.c (dump_jump_thread_path): Pretty print
EDGE_FSM_THREAD.
(verify_seme): New.
(duplicate_seme_region): New.
(thread_through_all_blocks): Generate code for EDGE_FSM_THREAD edges
calling duplicate_seme_region.
* tree-ssa-threadupdate.h (jump_thread_edge_type): Add EDGE_FSM_THREAD.
* testsuite/gcc.dg/tree-ssa/ssa-dom-thread-6.c: New test.
* testsuite/gcc.dg/tree-ssa/ssa-dom-thread-7.c: New test.
Co-Authored-By: Brian Rzycki <b.rzycki@samsung.com>
Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
From-SVN: r218451
Tobias Burnus [Sat, 6 Dec 2014 16:53:40 +0000 (17:53 +0100)]
error.c (gfc_error_check): Use bool not int.
2014-12-06 Tobias Burnus <burnus@net-b.de>
* error.c (gfc_error_check): Use bool not int.
* gfortran.h (gfc_error_check): Update prototype.
* match.c (gfc_match_if): Update call.
* parse.c (decode_statement, decode_omp_directive,
decode_gcc_attribute): Ditto.
From-SVN: r218450
Tobias Burnus [Sat, 6 Dec 2014 16:33:11 +0000 (17:33 +0100)]
error.c (gfc_buffer_error, [...]): Use bool not
2014-12-06 Tobias Burnus <burnus@net-b.de>
Manuel López-Ibáñez <manu@gcc.gnu.org>
* error.c (gfc_buffer_error, gfc_error_flag_test): Use bool not
* int.
(buffer_flag): Remove static variable.
(buffered_p): Add static variable.
(gfc_error_init_1): Call gfc_buffer_error.
(gfc_warning_1, gfc_warning, gfc_warning_now_1, gfc_error,
gfc_error_now_1): Update for static variable change.
* gfortran.h (gfc_buffer_error, gfc_error_flag_test): Update
prototype.
* parse.c (use_modules, decode_specification_statement,
next_fixed, next_statement, match_deferred_characteristics):
Update calls.
* decl.c (gfc_match_data_decl): Ditto.
* match.c (gfc_match_name): Ditto.
Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org>
From-SVN: r218449
Bruce Korb [Sat, 6 Dec 2014 15:08:55 +0000 (15:08 +0000)]
clarification
From-SVN: r218448
Marek Polacek [Sat, 6 Dec 2014 13:10:31 +0000 (13:10 +0000)]
re PR tree-optimization/64183 (Complete unroll doesn't happen for a while-loop)
PR tree-optimization/64183
* c-gimplify.c (c_gimplify_expr): Don't convert the RHS of a
shift-expression if it is integer_type_node. Use types_compatible_p.
* gcc.dg/tree-ssa/pr64183.c: New test.
From-SVN: r218447
H.J. Lu [Sat, 6 Dec 2014 11:32:46 +0000 (11:32 +0000)]
Don't assert "alg != libcall" for -minline-stringops-dynamically
gcc/
PR target/64200
* config/i386/i386.c (decide_alg): Don't assert "alg != libcall"
for TARGET_INLINE_STRINGOPS_DYNAMICALLY.
gcc/testsuite/
PR target/64200
* gcc.target/i386/memcpy-strategy-4.c: New test.
From-SVN: r218446
Tim Shen [Sat, 6 Dec 2014 11:31:12 +0000 (11:31 +0000)]
Fix ChangeLog format.
From-SVN: r218444
GCC Administrator [Sat, 6 Dec 2014 00:16:31 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r218443
Jakub Jelinek [Fri, 5 Dec 2014 23:00:09 +0000 (00:00 +0100)]
re PR sanitizer/64170 (ICE compiling Linux Kernel drivers/media/rc/imon.c in imon_incoming_packet)
PR sanitizer/64170
* sanopt.c (maybe_optimize_asan_check_ifn): If base_checks is
non-NULL, call maybe_get_dominating_check on it even if g is
non-NULL.
* gcc.dg/asan/pr64170.c: New test.
From-SVN: r218440
Jeff Law [Fri, 5 Dec 2014 22:19:26 +0000 (15:19 -0700)]
md.texi: Note problems using function calls to determine insn lengths and point readers...
* doc/md.texi: Note problems using function calls to determine
insn lengths and point readers to a potential workaround.
From-SVN: r218439
Andreas Schwab [Fri, 5 Dec 2014 20:25:19 +0000 (20:25 +0000)]
* combine.c (is_parallel_of_n_reg_sets)
(can_split_parallel_of_n_reg_sets): Only define if !HAVE_cc0.
From-SVN: r218436
Andrew Pinski [Fri, 5 Dec 2014 19:44:47 +0000 (19:44 +0000)]
aarch64-simd-builtins.def (bswap): Use CF2 rather than CF10 so 2 is appended on the code.
2014-12-05 Andrew Pinski <apinski@cavium.com>
* config/aarch64/aarch64-simd-builtins.def (bswap): Use CF2 rather
than CF10 so 2 is appended on the code.
* config/aarch64/aarch64-simd.md (bswap<mode>): Rename to ...
(bswap<mode>2): This so it matches for the optabs.
From-SVN: r218435
Thomas Preud'homme [Fri, 5 Dec 2014 18:36:57 +0000 (18:36 +0000)]
regrename.c (find_best_rename_reg): Rename to ...
2014-12-05 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/
* regrename.c (find_best_rename_reg): Rename to ...
(find_rename_reg): This. Also add a parameter to skip tick check.
* regrename.h: Likewise.
* config/c6x/c6x.c (try_rename_operands): Adapt to above renaming.
From-SVN: r218434
Martin Jambor [Fri, 5 Dec 2014 18:14:37 +0000 (19:14 +0100)]
re PR ipa/64192 (r218369 causes some regressions with -m32.)
2014-12-05 Martin Jambor <mjambor@suse.cz>
PR ipa/64192
* ipa-prop.c (ipa_compute_jump_functions_for_edge): Convert alignment
from bits to bytes after checking they are byte-aligned.
From-SVN: r218433
Renlin Li [Fri, 5 Dec 2014 18:00:55 +0000 (18:00 +0000)]
[AArch64]Clarify the usage of SCHED in AARCH64_CORE macro
gcc/
2014-12-05 Renlin Li <renlin.li@arm.com>
* config/aarch64/aarch64-opts.h (AARCH64_CORE): Rename IDENT to SCHED.
* config/aarch64/aarch64.h (AARCH64_CORE): Likewise.
* config/aarch64/aarch64.c (AARCH64_CORE): Rename X to IDENT,
IDENT to SCHED.
From-SVN: r218432
Michael Meissner [Fri, 5 Dec 2014 17:50:40 +0000 (17:50 +0000)]
re PR target/53199 (__builtin_bswap64 and __builtin_bswap32 generate errors if -mcpu=power6)
2014-12-05 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/53199
* gcc.target/powerpc/pr53199.c: Limit tests to 64-bit.
From-SVN: r218431
Bin Cheng [Fri, 5 Dec 2014 17:06:33 +0000 (17:06 +0000)]
[AArch64]load store pair optimization using sched_fusion pass.
From-SVN: r218430
Olivier Hainque [Fri, 5 Dec 2014 17:01:42 +0000 (17:01 +0000)]
defaults.h: (DWARF_REG_TO_UNWIND_COLUMN): Define default.
2014-12-05 Olivier Hainque <hainque@adacore.com>
gcc/
* defaults.h: (DWARF_REG_TO_UNWIND_COLUMN): Define default.
* dwarf2cfi.c (init_one_dwarf_reg_size): Honor
DWARF_REG_TO_UNWIND_COLUMN.
libgcc/
* unwind-dw2.c (DWARF_REG_TO_UNWIND_COLUMN): Remove default def,
now provided by defaults.h.
From-SVN: r218429
Olivier Hainque [Fri, 5 Dec 2014 16:53:22 +0000 (16:53 +0000)]
dwarf2cfi.c (init_one_dwarf_reg_size): New helper, processing one particular reg for expand_builtin_init_dwarf_reg_sizes.
2014-12-05 Olivier Hainque <hainque@adacore.com>
* dwarf2cfi.c (init_one_dwarf_reg_size): New helper, processing
one particular reg for expand_builtin_init_dwarf_reg_sizes.
(expand_builtin_init_dwarf_reg_sizes): Rework to use helper and
account for dwarf register spans.
From-SVN: r218428
Sandra Loosemore [Fri, 5 Dec 2014 16:18:30 +0000 (11:18 -0500)]
pr63341-1.c: Remove explicit "dg-do run".
2014-12-05 Sandra Loosemore <sandra@codesourcery.com>
gcc/testsuite/
* gcc.dg/vect/pr63341-1.c: Remove explicit "dg-do run".
* gcc.dg/vect/pr63341-2.c: Likewise.
* gcc.dg/vect/pr63379.c: Likewise.
* gcc.dg/vect/pr63605.c: Likewise.
From-SVN: r218427
Ilya Enkovich [Fri, 5 Dec 2014 16:00:52 +0000 (16:00 +0000)]
re PR target/64003 (valgrind complains about get_attr_length_nobnd in insn-attrtab.c from i386.md)
PR target/64003
* config/i386/i386.md (*jcc_1_bnd): New.
(*jcc_2_bnd): New.
(jump_bnd): New.
(*jcc_1): Remove bnd prefix.
(*jcc_2): Likewise.
(jump): Likewise.
From-SVN: r218426
Renlin Li [Fri, 5 Dec 2014 15:54:57 +0000 (15:54 +0000)]
[AArch64] Use selected cpu's tuning when no tuning parameter is specified
gcc/
2014-12-05 Renlin Li <renlin.li@arm.com>
* config/aarch64/aarch64.c (aarch64_parse_cpu): Don't define
selected_tune.
(aarch64_override_options): Use selected_cpu's tuning.
From-SVN: r218425
David Edelsohn [Fri, 5 Dec 2014 15:04:55 +0000 (15:04 +0000)]
xcoff.h (ASM_OUTPUT_ALIGNED_LOCAL): Append alignment to section name.
* config/rs6000/xcoff.h (ASM_OUTPUT_ALIGNED_LOCAL): Append
alignment to section name. Increase default alignment to word.
From-SVN: r218424
Andre Vehreschild [Fri, 5 Dec 2014 14:15:27 +0000 (15:15 +0100)]
re PR fortran/60414 (internal compiler error: tree check)
2014-12-05 Andre Vehreschild <vehre@gmx.de>
PR fortran/60414
* interface.c (compare_parameter): Remove class argument rank
check short circuit.
2014-12-05 Andre Vehreschild <vehre@gmx.de>
PR fortran/60414
* gfortran.dg/unlimited_polymorphism_18.f90: New test.
From-SVN: r218422
Martin Jambor [Fri, 5 Dec 2014 11:06:26 +0000 (12:06 +0100)]
cgraph.h (cgraph_node): New method expand_all_artificial_thunks.
2014-12-05 Martin Jambor <mjambor@suse.cz>
* cgraph.h (cgraph_node): New method expand_all_artificial_thunks.
(cgraph_edge): New method redirect_callee_duplicating_thunks.
* cgraphclones.c (duplicate_thunk_for_node): Donot expand newly
created thunks.
(redirect_edge_duplicating_thunks): Turned into edge method
redirect_callee_duplicating_thunks.
(cgraph_node::expand_all_artificial_thunks): New method.
(create_clone): Call expand_all_artificial_thunks.
* ipa-cp.c (perhaps_add_new_callers): Call
redirect_callee_duplicating_thunks instead of redirect_callee.
Also call expand_all_artificial_thunks.
From-SVN: r218417
Jonathan Wakely [Fri, 5 Dec 2014 10:35:51 +0000 (10:35 +0000)]
hashtable_policy.h (_Map_base::operator[], [...]): Simplify definitions with trailing return types.
* include/bits/hashtable_policy.h (_Map_base::operator[],
_Map_base::at): Simplify definitions with trailing return types.
From-SVN: r218416
Ilya Enkovich [Fri, 5 Dec 2014 10:01:33 +0000 (10:01 +0000)]
re PR target/64056 (gcc.target/i386/chkp-strlen-4.c etc. FAIL)
gcc/
PR target/64056
* doc/sourcebuild.texi: Add mempcpy and stpcpy for Effective-Target Keywords.
gcc/testsuite/
PR target/64056
* lib/target-supports.exp (check_effective_target_stpcpy): New.
* gcc.target/i386/chkp-strlen-2.c: Add stpcpy target check.
From-SVN: r218415
GCC Administrator [Fri, 5 Dec 2014 00:16:33 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r218413
Manuel López-Ibáñez [Fri, 5 Dec 2014 00:01:35 +0000 (00:01 +0000)]
This test should have been added in revision 218407.
gcc/testsuite/
2014-12-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
* gfortran.dg/line_length_5.f90: New test.
From-SVN: r218410
Manuel López-Ibáñez [Thu, 4 Dec 2014 23:59:35 +0000 (23:59 +0000)]
error.c (gfc_diagnostic_build_locus_prefix): Use diagnostic_expand_location.
gcc/fortran/ChangeLog:
2014-12-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
* error.c (gfc_diagnostic_build_locus_prefix): Use
diagnostic_expand_location.
gcc/ChangeLog:
2014-12-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
* diagnostic.h (diagnostic_expand_location): New inline function.
* diagnostic.c (diagnostic_build_prefix): Use it.
(diagnostic_show_locus): Likewise.
From-SVN: r218409
H.J. Lu [Thu, 4 Dec 2014 23:53:24 +0000 (23:53 +0000)]
Always define HAVE_LD_PIE_COPYRELOC
PR bootstrap/64189
* configure.ac (HAVE_LD_PIE_COPYRELOC): Always define.
* configure: Regenerated.
From-SVN: r218408
Manuel López-Ibáñez [Thu, 4 Dec 2014 23:35:29 +0000 (23:35 +0000)]
line-map.c (linemap_position_for_loc_and_offset): Add new linemap_assert_fails.
libcpp/ChangeLog:
2014-12-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
* line-map.c (linemap_position_for_loc_and_offset): Add new
linemap_assert_fails.
gcc/fortran/ChangeLog:
2014-12-05 Manuel López-Ibáñez <manu@gcc.gnu.org>
* scanner.c (gfc_next_char_literal): Use gfc_warning_now.
(load_file): Use the line length as the column hint for
linemap_line_start. Reserve a location for the highest column of
the line.
From-SVN: r218407
Manuel López-Ibáñez [Thu, 4 Dec 2014 23:09:41 +0000 (23:09 +0000)]
diagnostic.c (diagnostic_color_init): New.
gcc/ChangeLog:
2014-12-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
* diagnostic.c (diagnostic_color_init): New.
* diagnostic.h: Declare.
* gcc.c (driver::global_initializations): Use it.
(driver_handle_option): Handle -fdiagnostics-color_.
* toplev.c: Do not include diagnostic-color.h.
(process_options): Do not initialize color diagnostics here.
* common.opt (fdiagnostics-color=): Add Driver.
* opts-global.c (init_options_once): Initialize color here.
* opts.c (common_handle_option): Use diagnostics_color_init.
* diagnostic-color.h: Fix comment.
From-SVN: r218406
David Malcolm [Thu, 4 Dec 2014 21:33:22 +0000 (21:33 +0000)]
Avoid overuse of name "buffer" in tree-pretty-print.c
gcc/ChangeLog:
* tree-pretty-print.c (INDENT): Rename "buffer" to "pp".
(NIY): Likewise.
(buffer): Rename this variable to...
(tree_pp): ...this.
(do_niy): Rename param from "buffer" to "pp".
(dump_decl_name): Likewise.
(dump_function_name): Likewise.
(dump_function_declaration): Likewise.
(dump_array_domain): Likewise.
(dump_omp_clause): Likewise.
(dump_omp_clauses): Likewise.
(dump_location): Likewise.
(dump_block_node): Likewise.
(dump_generic_node): Likewise.
(print_declaration): Likewise.
(print_struct_decl): Likewise.
(print_call_name): Likewise.
(pretty_print_string): Likewise.
(newline_and_indent): Likewise.
(print_generic_decl): Update for renaming of "buffer" to
"tree_pp".
(print_generic_stmt): Likewise.
(print_generic_stmt_indented): Likewise.
(print_generic_expr): Likewise.
(maybe_init_pretty_print): Likewise.
From-SVN: r218405
David Malcolm [Thu, 4 Dec 2014 21:23:57 +0000 (21:23 +0000)]
PR jit/63854: Fix double-initialization within tree-pretty-print.c
gcc/ChangeLog:
PR jit/63854
* tree-pretty-print.c: Eliminate include of <new>.
(buffer): Convert this variable from a pretty_printer to a
pretty_printer *.
(initialized): Eliminate this variable in favor of the NULL-ness
of "buffer".
(print_generic_decl): Update for "buffer" becoming a pointer.
(print_generic_stmt): Likewise.
(print_generic_stmt_indented): Likewise.
(print_generic_expr): Likewise.
(maybe_init_pretty_print): Likewise, allocating "buffer" on the
heap and using its non-NULL-ness to ensure idempotency.
From-SVN: r218404
David Malcolm [Thu, 4 Dec 2014 21:11:04 +0000 (21:11 +0000)]
PR jit/63854: Fix leak of ipa hooks
gcc/ChangeLog:
PR jit/63854
* ipa-prop.c (ipa_register_cgraph_hooks): Guard insertion of
ipa_add_new_function on function_insertion_hook_holder being
non-NULL.
* ipa-reference.c (ipa_reference_c_finalize): Remove
node_removal_hook_holder and node_duplication_hook_holder if
they've been added to symtab.
* toplev.c (toplev::finalize): Call ipa_reference_c_finalize
before cgraph_c_finalize so that the former can access "symtab".
From-SVN: r218403
Jason Merrill [Thu, 4 Dec 2014 20:37:30 +0000 (15:37 -0500)]
re PR c++/64029 (const int (&in)[]{1,2,3,4,5}; results in internal compiler error: Segmentation fault)
PR c++/64029
* decl.c (grok_reference_init): Complete array type.
From-SVN: r218402
Jason Merrill [Thu, 4 Dec 2014 20:37:24 +0000 (15:37 -0500)]
re PR c++/64080 ([C++14]ICE in cxx_eval_store_expression)
PR c++/64080
* constexpr.c (cxx_eval_store_expression): Handle non-decl store
targets.
From-SVN: r218401
Jason Merrill [Thu, 4 Dec 2014 20:37:14 +0000 (15:37 -0500)]
fix comment
From-SVN: r218400
David Malcolm [Thu, 4 Dec 2014 20:00:25 +0000 (20:00 +0000)]
Update docs to reflect use of gimple subclasses
gcc/ChangeLog:
* doc/cfg.texi (GIMPLE statement iterators): Add note about
gphi_iterator, and use one in the example.
* doc/gimple.texi (Tuple specific accessors): Add missing
GIMPLE_GOTO section and menu item.
(gimple_build_asm, gimple gimple_build_assign_with_ops)
gimple_call_mark_uninlinable, gimple_call_cannot_inline_p): Remove
description of removed functions.
(gimple_build_assign, gimple_build_bind, gimple_build_call,
gimple_build_call_from_tree, gimple_build_call_vec,
gimple_build_catch, gimple_build_cond,
gimple_build_cond_from_tree, gimple_build_debug_bind,
gimple_build_eh_filter, gimple_build_label, gimple_build_goto,
gimple_build_omp_atomic_load, gimple_build_omp_atomic_store,
gimple_build_omp_continue, gimple_build_omp_critical,
gimple_build_omp_for, gimple_build_omp_parallel,
gimple_build_omp_sections, gimple_build_omp_single,
gimple_build_return, gimple_build_resx, gimple_build_switch,
gimple_build_try): Update return type within description to
reflect changes in gimple.h to using gimple subclasses.
(gimple_build_asm_vec): Update return type, params and
description.
(gimple_asm_ninputs): Update param.
(gimple_asm_noutputs, gimple_asm_nclobbers, gimple_asm_input_op
gimple_asm_set_input_op, gimple_asm_output_op
gimple_asm_set_output_op, gimple_asm_clobber_op,
gimple_asm_set_clobber_op, gimple_asm_string,
gimple_asm_volatile_p, gimple_asm_set_volatile, gimple_bind_vars,
gimple_bind_set_vars, gimple_bind_append_vars, gimple_bind_body,
gimple_bind_set_body, gimple_bind_add_stmt, gimple_bind_add_seq,
gimple_bind_block, gimple_bind_set_block, gimple_call_set_fn,
gimple_call_return_type, gimple_call_set_chain,
gimple_call_set_tail, gimple_call_tail_p,
gimple_call_copy_skip_args, gimple_catch_types,
gimple_catch_types_ptr, gimple_catch_handler,
gimple_catch_set_types, gimple_catch_set_handler,
gimple_cond_set_code, gimple_cond_set_lhs, gimple_cond_set_rhs,
gimple_cond_true_label, gimple_cond_set_true_label,
gimple_cond_set_false_label, gimple_cond_false_label,
gimple_cond_make_false, gimple_cond_make_true,
gimple_eh_filter_set_types, gimple_eh_filter_set_failure,
gimple_eh_must_not_throw_fndecl,
gimple_eh_must_not_throw_set_fndecl, gimple_label_label,
gimple_label_set_label, gimple_goto_set_dest,
gimple_omp_atomic_load_set_lhs, gimple_omp_atomic_load_lhs,
gimple_omp_atomic_load_set_rhs, gimple_omp_atomic_load_rhs,
gimple_omp_atomic_store_set_val, gimple_omp_atomic_store_val,
gimple_omp_continue_control_def,
gimple_omp_continue_control_def_ptr,
gimple_omp_continue_set_control_def,
gimple_omp_continue_control_use,
gimple_omp_continue_control_use_ptr,
gimple_omp_continue_set_control_use, gimple_omp_critical_name,
gimple_omp_critical_name_ptr, gimple_omp_critical_set_name,
gimple_omp_parallel_clauses_ptr, gimple_omp_parallel_set_clauses,
gimple_omp_parallel_child_fn, gimple_omp_parallel_child_fn_ptr,
gimple_omp_parallel_set_child_fn, gimple_omp_parallel_data_arg,
gimple_omp_parallel_data_arg_ptr,
gimple_omp_parallel_set_data_arg, gimple_omp_single_set_clauses,
gimple_phi_set_result, gimple_phi_set_arg, gimple_resx_region,
gimple_resx_set_region, gimple_return_retval,
gimple_return_set_retval, gimple_switch_num_labels,
gimple_switch_set_num_labels, gimple_switch_index,
gimple_switch_set_index, gimple_switch_label,
gimple_switch_set_label, gimple_switch_default_label,
gimple_switch_set_default_label, gimple_try_set_eval,
gimple_try_set_cleanup): Update initial param within description
to reflect changes in gimple.h to using gimple subclasses.
(Adding a new GIMPLE statement code): Update to reflect gimple
statement subclassing.
From-SVN: r218399
Sriraman Tallam [Thu, 4 Dec 2014 19:40:50 +0000 (19:40 +0000)]
x86-64: Optimize access to globals in PIE with copy reloc
Normally, with -fPIE/-fpie, GCC accesses globals that are extern to the
module using the GOT. This is two instructions, one to get the address
of the global from the GOT and the other to get the value. If it turns
out that the global gets defined in the executable at link-time, it still
needs to go through the GOT as it is too late then to generate a direct
access.
Examples:
foo.cc
------
int a_glob;
int main () {
return a_glob; // defined in this file
}
With -O2 -fpie -pie, the generated code directly accesses the global via
PC-relative insn:
5e0 <main>:
mov 0x165a(%rip),%eax # 1c40 <a_glob>
foo.cc
------
extern int a_glob;
int main () {
return a_glob; // defined in this file
}
With -O2 -fpie -pie, the generated code accesses global via GOT using
two memory loads:
6f0 <main>:
mov 0x1609(%rip),%rax # 1d00 <_DYNAMIC+0x230>
mov (%rax),%eax
This is true even if in the latter case the global was defined in the
executable through a different file.
Some experiments on google benchmarks shows that the extra memory loads
affects performance by 1% to 5%.
Solution - Copy Relocations:
When the linker supports copy relocations, GCC can always assume that
the global will be defined in the executable. For globals that are truly
extern (come from shared objects), the linker will create copy relocations
and have them defined in the executable. Result is that no global access
needs to go through the GOT and hence improves performance.
This optimization only applies to undefined, non-weak global data.
Undefined, weak global data access still must go through the GOT.
This patch checks if linker supports PIE with copy reloc, which is
enabled in gold and bfd linker in bininutils 2.25, at configure time
and enables this optimization if the linker support is available.
gcc/
* configure.ac (HAVE_LD_PIE_COPYRELOC): Defined to 1 if
Linux/x86-64 linker supports PIE with copy reloc.
* config.in: Regenerated.
* configure: Likewise.
* config/i386/i386.c (legitimate_pic_address_disp_p): Allow
pc-relative address for undefined, non-weak, non-function
symbol reference in 64-bit PIE if linker supports PIE with
copy reloc.
* doc/sourcebuild.texi: Document pie_copyreloc target.
gcc/testsuite/
* gcc.target/i386/pie-copyrelocs-1.c: New test.
* gcc.target/i386/pie-copyrelocs-2.c: Likewise.
* gcc.target/i386/pie-copyrelocs-3.c: Likewise.
* gcc.target/i386/pie-copyrelocs-4.c: Likewise.
* lib/target-supports.exp (check_effective_target_pie_copyreloc):
New procedure.
Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com>
From-SVN: r218397
Marek Polacek [Thu, 4 Dec 2014 19:20:12 +0000 (19:20 +0000)]
re PR middle-end/56917 (-ftrapv detects a overflow wrongly.)
PR middle-end/56917
* fold-const.c (fold_unary_loc): Perform the negation in A's type
when transforming ~ (A - 1) or ~ (A + -1) to -A.
* c-c++-common/ubsan/pr56917.c: New test.
From-SVN: r218395
Tobias Burnus [Thu, 4 Dec 2014 18:18:21 +0000 (19:18 +0100)]
Makefile.in: Remove CLOOGLIB and CLOOGINC.
2014-12-04 Tobias Burnus <burnus@net-b.de>
* Makefile.in: Remove CLOOGLIB and CLOOGINC.
From-SVN: r218389
Thomas Preud'homme [Thu, 4 Dec 2014 16:39:47 +0000 (16:39 +0000)]
check_GNU_style.sh: Warn for incorrect number of spaces in function call only if 0 or 2+ spaces found.
2014-12-04 Thomas Preud'homme <thomas.preudhomme@arm.com>
contrib/
* check_GNU_style.sh: Warn for incorrect number of spaces in function
call only if 0 or 2+ spaces found.
From-SVN: r218382
Richard Biener [Thu, 4 Dec 2014 14:44:57 +0000 (14:44 +0000)]
match-and-simplify.texi: Update for recent changes.
2014-12-04 Richard Biener <rguenther@suse.de>
* doc/match-and-simplify.texi: Update for recent changes.
From-SVN: r218372
Martin Jambor [Thu, 4 Dec 2014 14:37:01 +0000 (15:37 +0100)]
ipa-prop.h (ipa_alignment): New type.
2014-12-04 Martin Jambor <mjambor@suse.cz>
* ipa-prop.h (ipa_alignment): New type.
(ipa_jump_func): New field alignment.
(ipcp_transformation_summary) New type.
(ipcp_grow_transformations_if_necessary): Declare.
(ipa_node_agg_replacements): Removed.
(ipcp_transformations): Declare.
(ipcp_get_transformation_summary): New function.
(ipa_get_agg_replacements_for_node): Use it.
* ipa-cp.c (ipcp_param_lattices): New field alignment.
(print_all_lattices): Also print alignment.
(alignment_bottom_p): New function.
(set_alignment_to_bottom): Likewise.
(set_all_contains_variable): Also set alignment to bottom.
(initialize_node_lattices): Likewise.
(propagate_alignment_accross_jump_function): New function.
(propagate_constants_accross_call): Call it.
(ipcp_store_alignment_results): New function.
(ipcp_driver): Call it.
* ipa-prop.c (ipa_node_agg_replacements): Removed.
(ipcp_transformations): New.
(ipa_print_node_jump_functions_for_edge): Also print alignment.
(ipa_set_jf_unknown): New function.
(detect_type_change_from_memory_writes): Use ipa_set_jf_unknown.
(ipa_compute_jump_functions_for_edge): Also calculate alignment.
(update_jump_functions_after_inlining): Use ipa_set_jf_unknown.
(ipcp_grow_transformations_if_necessary): New function.
(ipa_set_node_agg_value_chain): Use ipcp_transformations.
(ipa_node_removal_hook): Likewise.
(ipa_node_duplication_hook): Also duplicate alignment results.
(ipa_write_jump_function): Also stream alignments.
(ipa_read_jump_function): Use ipa_set_jf_unknown, also stream
alignments.
(write_agg_replacement_chain): Renamed to
write_ipcp_transformation_info, also stream alignments.
(read_agg_replacement_chain): Renamed to
read_ipcp_transformation_info, also stream alignments.
(ipa_prop_write_all_agg_replacement): Renamed to
ipcp_write_transformation_summaries. Stream always.
(ipa_prop_read_all_agg_replacement): Renamed to
ipcp_read_transformation_summaries.
(ipcp_update_alignments): New function.
(ipcp_transform_function): Call it, free also alignments.
testsuite/
* gcc.dg/ipa/propalign-1.c: New test.
* gcc.dg/ipa/propalign-2.c: Likewise.
From-SVN: r218369
Richard Biener [Thu, 4 Dec 2014 12:35:42 +0000 (12:35 +0000)]
gimple-fold.c (replace_stmt_with_simplification): Properly fail when maybe_push_res_to_seq fails.
2014-12-04 Richard Biener <rguenther@suse.de>
* gimple-fold.c (replace_stmt_with_simplification): Properly
fail when maybe_push_res_to_seq fails.
From-SVN: r218353
Ganesh Gopalasubramanian [Thu, 4 Dec 2014 10:51:54 +0000 (10:51 +0000)]
Add prefetch support for aarch64
From-SVN: r218349
Francois-Xavier Coudert [Thu, 4 Dec 2014 10:31:56 +0000 (10:31 +0000)]
install.texi: Remove mentions of cloog and ppl.
* doc/install.texi: Remove mentions of cloog and ppl.
* doc/invoke.texi: Likewise
From-SVN: r218348
Jakub Jelinek [Thu, 4 Dec 2014 09:46:45 +0000 (10:46 +0100)]
re PR c++/56493 (Performance regression in google dense hashmap)
PR c++/56493
* convert.c (convert_to_real, convert_to_expr, convert_to_complex):
Handle COMPOUND_EXPR.
* c-c++-common/pr56493.c: New test.
From-SVN: r218345
Kyrylo Tkachov [Thu, 4 Dec 2014 09:31:00 +0000 (09:31 +0000)]
[testsuite] Cache return value of check_effective_target_tiny
* lib/target-supports.exp (check_effective_target_tiny): Cache
predicate value.
From-SVN: r218344
Richard Biener [Thu, 4 Dec 2014 08:49:49 +0000 (08:49 +0000)]
builtins.c (target_newline): Export.
2014-12-04 Richard Biener <rguenther@suse.de>
* builtins.c (target_newline): Export.
(target_percent_s_newline): Likewise.
(fold_builtin_1): Do not fold printf functions here.
(fold_builtin_2): Likewise.
(fold_builtin_3): Likewise, do not fold strncat.
(fold_builtin_strncat): Move to gimple-fold.c.
(fold_builtin_printf): Likewise.
* builtins.h (target_newline): Declare.
(target_percent_s_newline): Likewise.
* gimple-fold.c (gimple_fold_builtin_strncat): Move from
builtins.c and gimplify.
(gimple_fold_builtin_printf): Likewise.
(gimple_fold_builtin): Fold strncat, printf, printf_unlocked,
vprintf, printf_chk and vprintf_chk here.
From-SVN: r218343
Jack Howarth [Thu, 4 Dec 2014 08:46:03 +0000 (08:46 +0000)]
re PR testsuite/64145 (gcc.dg/graphite/isl-codegen-loop-dumping.c UNRESOLVED after r217315.)
PR testsuite/64145
* gcc.dg/graphite/isl-codegen-loop-dumping.c: Restore
-fgraphite-identity.
From-SVN: r218342
Jack Howarth [Thu, 4 Dec 2014 08:45:33 +0000 (08:45 +0000)]
isl.m4: Don't pass -DCLOOG_INT_GMP on islinc.
* config/isl.m4: Don't pass -DCLOOG_INT_GMP on islinc.
* configure: Regenerated.
From-SVN: r218341
Tim Shen [Thu, 4 Dec 2014 04:25:12 +0000 (04:25 +0000)]
re PR libstdc++/64140 (match_results.prefix() returns an incorrect result if regex_iterator holds a zero-length match)
PR libstdc++/64140
* include/bits/regex.tcc (regex_iterator<>::operator++): Update
prefix.matched after modifying prefix.first.
* testsuite/28_regex/iterators/regex_iterator/char/64140.cc: New
testcase.
From-SVN: r218340
David Edelsohn [Thu, 4 Dec 2014 02:13:22 +0000 (02:13 +0000)]
rs6000.md (floatsidf2_internal): Use std::swap.
* config/rs6000/rs6000.md (floatsidf2_internal): Use std::swap.
(floatunssidf2_internal): Same.
* config/rs6000/rs6000.c (rs6000_emit_vector_compare): Same.
(rs6000_emit_int_cmove): Same.
(rs6000_sched_reorder): Same.
(altivec_expand_vec_perm_const): Same.
(rs6000_expand_vec_perm_const_1): Same.
From-SVN: r218339
GCC Administrator [Thu, 4 Dec 2014 00:16:27 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r218338
Ulrich Weigand [Wed, 3 Dec 2014 21:59:10 +0000 (21:59 +0000)]
re PR rtl-optimization/64010 ([msp430-elf] struct function dereference clobbers parameter passed to function)
PR rtl-optimization/64010
* reload.c (push_reload): Before reusing a register contained
in an operand as input reload register, ensure that it is not
used in CALL_INSN_FUNCTION_USAGE.
From-SVN: r218335
Ulrich Drepper [Wed, 3 Dec 2014 21:10:14 +0000 (21:10 +0000)]
Makefile.in: Use $(LN_S) instead of $(LN) -s and remove file first if it exists.
* Makefile.in: Use $(LN_S) instead of $(LN) -s and remove file first
if it exists.
From-SVN: r218334
Jakub Jelinek [Wed, 3 Dec 2014 20:35:45 +0000 (21:35 +0100)]
* expmed.c (expand_mult): Use std::swap.
From-SVN: r218332
Jakub Jelinek [Wed, 3 Dec 2014 20:35:08 +0000 (21:35 +0100)]
re PR c/59708 (clang-compatible checked arithmetic builtins)
PR c/59708
* expmed.c (expand_widening_mult): Return const0_rtx if
coeff is 0.
From-SVN: r218331
Jakub Jelinek [Wed, 3 Dec 2014 19:59:10 +0000 (20:59 +0100)]
gimple.texi (gimple_build_assign_with_ops): Remove.
* doc/gimple.texi (gimple_build_assign_with_ops): Remove.
(gimple_build_assign): Document the new overloads.
From-SVN: r218330
François Dumont [Wed, 3 Dec 2014 19:47:00 +0000 (19:47 +0000)]
re PR libstdc++/13631 (Problems in messages)
2014-12-03 François Dumont <fdumont@gcc.gnu.org>
PR libstdc++/13631
* include/bits/codecvt.h (codecvt<char, char, mbstate_t>): friend class
std::messages<char>.
(codecvt<wchar_t, char, mbstate_t>): friend class
std::messages<wchar_t>.
* config/locale/gnu/messages_member.h
(messages<char>::do_open): Specialized.
(messages<char>::do_close): Likewise.
(messages<wchar_t>::do_open): Likewise.
(messages<wchar_t>::do_close): Likewise.
* config/locale/gnu/messages_member.cc:
(messages<char>::do_open): Implement. Use bind_textdomain_codeset based
on codecvt<char, char, mbstate_t>._M_c_locale_codecvt code set. Use
internal cache to keep opened domain name with locale information.
(messages<wchar_t>::do_open): Likewise with
codecvt<wchar_t, char, mbstate_t>.
(messages<char>::do_close): Implement. Clean cache information.
(messages<wchar_t>::do_close): Likewise.
(get_glibc_msg): New. Use dgettext rather than gettext using cached
domain name associated to catalog id.
(messages<char>::do_get): Use latter.
(messages<wchar_t>::do_get): Likewise and use also cached locale
codecvt<wchar_t, char, mbstate_t> facet to convert wchar_t default
value to char and the result back to wchar_t.
* testsuite/22_locale/messages/13631.cc: New.
* testsuite/22_locale/messages/members/char/2.cc: Use also fr_FR locale
for charset conversion to get the expected accented character.
From-SVN: r218329
Paolo Carlini [Wed, 3 Dec 2014 18:41:42 +0000 (18:41 +0000)]
re PR c++/63558 (cannot silence "jump to case label" with fpermissive)
/cp
2014-12-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/63558
* decl.c (identify_goto): Return a bool if diagnostic is emitted.
(check_previous_goto_1): Consistently emit permerror + inform.
(check_goto): Likewise.
/testsuite
2014-12-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/63558
* g++.dg/init/goto3.C: New.
* g++.dg/eh/goto2.C: Adjust.
* g++.dg/ext/vla14.C: Likewise.
* g++.dg/gomp/block-1.C: Likewise.
* g++.dg/gomp/block-2.C: Likewise.
* g++.dg/gomp/block-3.C: Likewise.
* g++.dg/gomp/block-5.C: Likewise.
* g++.dg/gomp/target-1.C: Likewise.
* g++.dg/gomp/target-2.C: Likewise.
* g++.dg/gomp/taskgroup-1.C: Likewise.
* g++.dg/gomp/teams-1.C: Likewise.
* g++.dg/init/goto2.C: Likewise.
* g++.dg/warn/pedantic1.C: Likewise.
* g++.old-deja/g++.jason/jump.C: Likewise.
* g++.old-deja/g++.law/arm6.C: Likewise.
* g++.old-deja/g++.other/goto1.C: Likewise.
* g++.old-deja/g++.other/goto3.C: Likewise.
* g++.old-deja/g++.other/init9.C: Likewise.
From-SVN: r218328
Michael Meissner [Wed, 3 Dec 2014 18:39:22 +0000 (18:39 +0000)]
re PR target/64019 (ICE in extract_constrain_insn)
[gcc]
2014-12-03 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/64019
* config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Do
not create LO_SUM address for constant addresses if the type can
go in Altivec registers.
[gcc/testsuite]
2014-12-03 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/64019
* gcc.target/powerpc/pr64019.c: New file.
From-SVN: r218327
Manuel López-Ibáñez [Wed, 3 Dec 2014 17:50:06 +0000 (17:50 +0000)]
re PR fortran/44054 (Handle -Werror, -Werror=, -fdiagnostics-show-option, !GCC$ diagnostic (pragmas) and color)
gcc/testsuite/ChangeLog:
2014-12-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR fortran/44054
* gfortran.dg/warnings_are_errors_1.f90: Update warnings to errors.
* gfortran.dg/warnings_are_errors_1.f: Likewise.
gcc/fortran/ChangeLog:
2014-12-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR fortran/44054
* gfortran.h (gfc_warning): Now returns bool. Add overload that
accepts opt.
(gfc_warning_1): Declare.
* error.c
(pp_warning_buffer,warningcount_buffered,werrorcount_buffered): New.
(gfc_buffer_error): Set pp_warning_buffer.flush_p.
(gfc_clear_pp_buffer): New.
(gfc_warning_1): Renamed from gfc_warning.
(gfc_warning): Add three new overloads. One that takes just a
format string and ellipsis, another that takes also a warning
option, and another that takes also va_list instead of ellipsis.
(gfc_clear_warning): Clear pp_warning_buffer.
(gfc_warning_check): Flush pp_warning_buffer and update warning
and werror counters.
(gfc_diagnostics_init): Init pp_warning_buffer.
* Update all gfc_warning calls that do not multiple
locations to use %qs and OPT_W*, otherwise use gfc_warning_1.
gcc/ChangeLog:
2014-12-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR fortran/44054
* pretty-print.c (output_buffer::output_buffer): Init flush_p to true.
(pp_flush): Flush only if flush_p.
(pp_really_flush): New.
* pretty-print.h (struct output_buffer): Add flush_p.
(pp_really_flush): Declare.
From-SVN: r218326
Jakub Jelinek [Wed, 3 Dec 2014 16:44:27 +0000 (17:44 +0100)]
Makefile.in (ALL_HOST_BACKEND_OBJS): Add $(GENGTYPE_OBJS), gcc-ar.o, gcc-nm.o and gcc-ranlib.o.
* Makefile.in (ALL_HOST_BACKEND_OBJS): Add $(GENGTYPE_OBJS),
gcc-ar.o, gcc-nm.o and gcc-ranlib.o.
(GENGTYPE_OBJS): New.
(gengtype-lex.o, gengtype-parse.o, gengtype-state.o, gengtype.o):
Remove explicit dependencies.
(CFLAGS-gengtype-lex.o, CFLAGS-gengtype-parse.o,
CFLAGS-gengtype-state.o, CFLAGS-gengtype.o): Add -DHOST_GENERATOR_FILE
instead of -DGENERATOR_FILE.
(CFLAGS-errors.o): New.
* gengtype.c: Instead of testing GENERATOR_FILE define, test
HOST_GENERATOR_FILE. If defined, include config.h and define
GENERATOR_FILE afterwards, otherwise include bconfig.h.
* gengtype-parse.c: Likewise.
* gengtype-state.c: Likewise.
* gengtype-lex.l: Likewise.
* errors.c: Likewise.
From-SVN: r218325
David Edelsohn [Wed, 3 Dec 2014 16:28:13 +0000 (16:28 +0000)]
* g++.dg/ext/visibility/anon[12].C: Require visibility support.
From-SVN: r218324
Joern Rennecke [Wed, 3 Dec 2014 16:25:25 +0000 (16:25 +0000)]
epiphany.c (epiphany_override_options): If TARGET_SOFT_CMPSF is not enabled, set flag_finite_math_only.
gcc:
* config/epiphany/epiphany.c (epiphany_override_options):
If TARGET_SOFT_CMPSF is not enabled, set flag_finite_math_only.
* config/epiphany/epiphany.md (mov<mode>cc): Don't use
reverse_condition_maybe_unordered if flag_finite_math_only is set.
gcc/testsuite:
* gcc.target/epiphany/fcmp-1.c: New test.
From-SVN: r218323
Marek Polacek [Wed, 3 Dec 2014 16:16:33 +0000 (16:16 +0000)]
regex_compiler.h (_S_cache_size): Multiply the RHS of the shift-expression by _UseCache::value.
* include/bits/regex_compiler.h (_S_cache_size): Multiply the
RHS of the shift-expression by _UseCache::value.
From-SVN: r218322
Jonathan Wakely [Wed, 3 Dec 2014 16:09:21 +0000 (16:09 +0000)]
re PR libstdc++/64168 (FAIL: 30_threads/async/sync.cc execution test)
PR libstdc++/64168
* include/std/future (_Deferred_state::_M_has_deferred): Fix return.
From-SVN: r218321
Andrew Stubbs [Wed, 3 Dec 2014 14:59:06 +0000 (14:59 +0000)]
Revert r215321.
2014-12-03 Andrew Stubbs <ams@codesourcery.com>
Revert:
2014-09-17 Andrew Stubbs <ams@codesourcery.com>
* config/arm/arm.c (arm_option_override): Reject -mfpu=neon
when architecture is older than ARMv7.
From-SVN: r218319
Richard Biener [Wed, 3 Dec 2014 14:08:07 +0000 (14:08 +0000)]
builtins.c (target_percent_c): Export.
2014-12-03 Richard Biener <rguenther@suse.de>
* builtins.c (target_percent_c): Export.
(fold_builtin_fprintf): Move to gimple-fold.c.
(fold_builtin_2): Do not fold fprintf functions.
(fold_builtin_3): Likewise.
(fold_builtin_4): Remove.
(fold_builtin_n): Do not call fold_builtin_4.
* builtins.h (target_percent_c): Declare.
* gimple-fold.c (gimple_fold_builtin_fprintf): Move from
builtins.c and gimplify.
(gimple_fold_builtin): Fold fprintf, fprintf_unlocked, vfprintf,
fprintf_chk and vfprintf_chk here.
From-SVN: r218317
Martin Jambor [Wed, 3 Dec 2014 14:05:51 +0000 (15:05 +0100)]
re PR ipa/64153 (r218205 miscompiles libgomp)
2014-12-03 Martin Jambor <mjambor@suse.cz>
PR ipa/64153
* ipa-inline-analysis.c (evaluate_conditions_for_known_args): Check
type sizes before view_converting.
From-SVN: r218316
Uros Bizjak [Wed, 3 Dec 2014 13:58:07 +0000 (14:58 +0100)]
configure.tgt (x86_64): Tune -m32 multilib to generic.
libitm/ChangeLog:
* configure.tgt (x86_64): Tune -m32 multilib to generic.
libgomp/ChangeLog:
* configure.tgt (x86_64-*-linux*): Tune -m32 multilib to generic.
From-SVN: r218315
Petr Murzin [Wed, 3 Dec 2014 13:39:51 +0000 (13:39 +0000)]
avx512bw-kunpckdq-1.c: Fix regexps for assembler scanning.
gcc/testsuite/
2014-12-03 Petr Murzin <petr.murzin@intel.com>
* gcc.target/i386/avx512bw-kunpckdq-1.c: Fix regexps for assembler
scanning.
* gcc.target/i386/avx512bw-kunpckwd-1.c: Ditto.
* gcc.target/i386/avx512bw-vdbpsadbw-1.c: Ditto.
* gcc.target/i386/avx512bw-vmovdqu16-1.c: Ditto.
* gcc.target/i386/avx512bw-vmovdqu8-1.c: Ditto.
* gcc.target/i386/avx512bw-vpabsb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpabsw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpackssdw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpacksswb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpackusdw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpackuswb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpaddb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpaddsb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpaddsw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpaddusb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpaddusw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpaddw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpalignr-1.c: Ditto.
* gcc.target/i386/avx512bw-vpavgb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpavgw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpblendmb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpblendmw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpbroadcastb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpbroadcastw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpeqb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpequb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpequw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpeqw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpgeb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpgeub-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpgeuw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpgew-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpgtb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpgtub-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpgtuw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpgtw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpleb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpleub-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpleuw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmplew-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpltb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpltub-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpltuw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpltw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpneqb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpnequb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpnequw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpneqw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpub-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpuw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpcmpw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpermi2w-1.c: Ditto.
* gcc.target/i386/avx512bw-vpermt2w-1.c: Ditto.
* gcc.target/i386/avx512bw-vpermw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmaddubsw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmaddwd-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmaxsb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmaxsw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmaxub-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmaxuw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpminsb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpminsw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpminub-1.c: Ditto.
* gcc.target/i386/avx512bw-vpminuw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmovb2m-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmovm2b-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmovm2w-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmovswb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmovsxbw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmovuswb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmovw2m-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmovwb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmovzxbw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmulhrsw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmulhuw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmulhw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpmullw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpshufb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpshufhw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpshuflw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpslldq-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsllvw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsllw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsllwi-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsravw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsraw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsrawi-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsrldq-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsrlvw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsrlw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsrlwi-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsubb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsubsb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsubsw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsubusb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsubusw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpsubw-1.c: Ditto.
* gcc.target/i386/avx512bw-vptestmb-1.c: Ditto.
* gcc.target/i386/avx512bw-vptestmw-1.c: Ditto.
* gcc.target/i386/avx512bw-vptestnmb-1.c: Ditto.
* gcc.target/i386/avx512bw-vptestnmw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpunpckhbw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpunpckhwd-1.c: Ditto.
* gcc.target/i386/avx512bw-vpunpcklbw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpunpcklwd-1.c: Ditto.
* gcc.target/i386/avx512cd-vpbroadcastmb2q-1.c: Ditto.
* gcc.target/i386/avx512cd-vpbroadcastmw2d-1.c: Ditto.
* gcc.target/i386/avx512cd-vpconflictd-1.c: Ditto.
* gcc.target/i386/avx512cd-vpconflictq-1.c: Ditto.
* gcc.target/i386/avx512cd-vplzcntd-1.c: Ditto.
* gcc.target/i386/avx512cd-vplzcntq-1.c: Ditto.
* gcc.target/i386/avx512dq-vandnpd-1.c: Ditto.
* gcc.target/i386/avx512dq-vandnps-1.c: Ditto.
* gcc.target/i386/avx512dq-vandpd-1.c: Ditto.
* gcc.target/i386/avx512dq-vandps-1.c: Ditto.
* gcc.target/i386/avx512dq-vbroadcastf32x2-1.c: Ditto.
* gcc.target/i386/avx512dq-vbroadcastf32x8-1.c: Ditto.
* gcc.target/i386/avx512dq-vbroadcastf64x2-1.c: Ditto.
* gcc.target/i386/avx512dq-vbroadcasti32x2-1.c: Ditto.
* gcc.target/i386/avx512dq-vbroadcasti32x8-1.c: Ditto.
* gcc.target/i386/avx512dq-vbroadcasti64x2-1.c: Ditto.
* gcc.target/i386/avx512dq-vcvtpd2qq-1.c: Ditto.
* gcc.target/i386/avx512dq-vcvtpd2uqq-1.c: Ditto.
* gcc.target/i386/avx512dq-vcvtps2qq-1.c: Ditto.
* gcc.target/i386/avx512dq-vcvtps2uqq-1.c: Ditto.
* gcc.target/i386/avx512dq-vcvtqq2pd-1.c: Ditto.
* gcc.target/i386/avx512dq-vcvtqq2ps-1.c: Ditto.
* gcc.target/i386/avx512dq-vcvttpd2qq-1.c: Ditto.
* gcc.target/i386/avx512dq-vcvttpd2uqq-1.c: Ditto.
* gcc.target/i386/avx512dq-vcvttps2qq-1.c: Ditto.
* gcc.target/i386/avx512dq-vcvttps2uqq-1.c: Ditto.
* gcc.target/i386/avx512dq-vcvtuqq2pd-1.c: Ditto.
* gcc.target/i386/avx512dq-vcvtuqq2ps-1.c: Ditto.
* gcc.target/i386/avx512dq-vextractf32x8-1.c: Ditto.
* gcc.target/i386/avx512dq-vextractf64x2-1.c: Ditto.
* gcc.target/i386/avx512dq-vextracti32x8-1.c: Ditto.
* gcc.target/i386/avx512dq-vextracti64x2-1.c: Ditto.
* gcc.target/i386/avx512dq-vfpclasspd-1.c: Ditto.
* gcc.target/i386/avx512dq-vfpclassps-1.c: Ditto.
* gcc.target/i386/avx512dq-vfpclasssd-1.c: Ditto.
* gcc.target/i386/avx512dq-vfpclassss-1.c: Ditto.
* gcc.target/i386/avx512dq-vinsertf32x8-1.c: Ditto.
* gcc.target/i386/avx512dq-vinsertf64x2-1.c: Ditto.
* gcc.target/i386/avx512dq-vinserti32x8-1.c: Ditto.
* gcc.target/i386/avx512dq-vinserti64x2-1.c: Ditto.
* gcc.target/i386/avx512dq-vorpd-1.c: Ditto.
* gcc.target/i386/avx512dq-vorps-1.c: Ditto.
* gcc.target/i386/avx512dq-vpmovd2m-1.c: Ditto.
* gcc.target/i386/avx512dq-vpmovm2d-1.c: Ditto.
* gcc.target/i386/avx512dq-vpmovm2q-1.c: Ditto.
* gcc.target/i386/avx512dq-vpmovq2m-1.c: Ditto.
* gcc.target/i386/avx512dq-vpmullq-1.c: Ditto.
* gcc.target/i386/avx512dq-vrangepd-1.c: Ditto.
* gcc.target/i386/avx512dq-vrangeps-1.c: Ditto.
* gcc.target/i386/avx512dq-vrangesd-1.c: Ditto.
* gcc.target/i386/avx512dq-vrangess-1.c: Ditto.
* gcc.target/i386/avx512dq-vreducepd-1.c: Ditto.
* gcc.target/i386/avx512dq-vreduceps-1.c: Ditto.
* gcc.target/i386/avx512dq-vreducesd-1.c: Ditto.
* gcc.target/i386/avx512dq-vreducess-1.c: Ditto.
* gcc.target/i386/avx512dq-vxorpd-1.c: Ditto.
* gcc.target/i386/avx512dq-vxorps-1.c: Ditto.
* gcc.target/i386/avx512er-vexp2pd-1.c: Ditto.
* gcc.target/i386/avx512er-vexp2ps-1.c: Ditto.
* gcc.target/i386/avx512er-vrcp28pd-1.c: Ditto.
* gcc.target/i386/avx512er-vrcp28ps-1.c: Ditto.
* gcc.target/i386/avx512er-vrcp28sd-1.c: Ditto.
* gcc.target/i386/avx512er-vrcp28ss-1.c: Ditto.
* gcc.target/i386/avx512er-vrsqrt28pd-1.c: Ditto.
* gcc.target/i386/avx512er-vrsqrt28ps-1.c: Ditto.
* gcc.target/i386/avx512er-vrsqrt28sd-1.c: Ditto.
* gcc.target/i386/avx512er-vrsqrt28ss-1.c: Ditto.
* gcc.target/i386/avx512f-broadcast-gpr-1.c: Ditto.
* gcc.target/i386/avx512f-ceil-sfix-vec-2.c: Ditto.
* gcc.target/i386/avx512f-floor-sfix-vec-2.c: Ditto.
* gcc.target/i386/avx512f-gather-5.c: Ditto.
* gcc.target/i386/avx512f-i32gatherd512-1.c: Ditto.
* gcc.target/i386/avx512f-i32gatherpd512-1.c: Ditto.
* gcc.target/i386/avx512f-i32gatherps512-1.c: Ditto.
* gcc.target/i386/avx512f-i32gatherq512-1.c: Ditto.
* gcc.target/i386/avx512f-i32scatterd512-1.c: Ditto.
* gcc.target/i386/avx512f-i32scatterpd512-1.c: Ditto.
* gcc.target/i386/avx512f-i32scatterps512-1.c: Ditto.
* gcc.target/i386/avx512f-i32scatterq512-1.c: Ditto.
* gcc.target/i386/avx512f-i64gatherd512-1.c: Ditto.
* gcc.target/i386/avx512f-i64gatherpd512-1.c: Ditto.
* gcc.target/i386/avx512f-i64gatherps512-1.c: Ditto.
* gcc.target/i386/avx512f-i64gatherq512-1.c: Ditto.
* gcc.target/i386/avx512f-i64scatterd512-1.c: Ditto.
* gcc.target/i386/avx512f-i64scatterpd512-1.c: Ditto.
* gcc.target/i386/avx512f-i64scatterps512-1.c: Ditto.
* gcc.target/i386/avx512f-i64scatterq512-1.c: Ditto.
* gcc.target/i386/avx512f-kandnw-1.c: Ditto.
* gcc.target/i386/avx512f-kandw-1.c: Ditto.
* gcc.target/i386/avx512f-kmovw-1.c: Ditto.
* gcc.target/i386/avx512f-knotw-1.c: Ditto.
* gcc.target/i386/avx512f-kortestw-1.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-vaddpd-1.c: Ditto.
* gcc.target/i386/avx512f-vaddps-1.c: Ditto.
* gcc.target/i386/avx512f-vaddsd-1.c: Ditto.
* gcc.target/i386/avx512f-vaddss-1.c: Ditto.
* gcc.target/i386/avx512f-valignd-1.c: Ditto.
* gcc.target/i386/avx512f-valignq-1.c: Ditto.
* gcc.target/i386/avx512f-vblendmpd-1.c: Ditto.
* gcc.target/i386/avx512f-vblendmps-1.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastf32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastf64x4-1.c: Ditto.
* gcc.target/i386/avx512f-vbroadcasti32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vbroadcasti64x4-1.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastsd-1.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastss-1.c: Ditto.
* gcc.target/i386/avx512f-vcmppd-1.c: Ditto.
* gcc.target/i386/avx512f-vcmpps-1.c: Ditto.
* gcc.target/i386/avx512f-vcmpsd-1.c: Ditto.
* gcc.target/i386/avx512f-vcmpss-1.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-vcompressps-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtdq2pd-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtdq2ps-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtpd2dq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtpd2ps-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtpd2udq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtph2ps-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2dq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2pd-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2ph-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2udq-1.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-vcvtsd2usi-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtsd2usi64-1.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-vcvtss2si-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtss2si64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtss2usi-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtss2usi64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttpd2dq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttpd2udq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttps2dq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttps2udq-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2si-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2si64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2usi-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2usi64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttss2si-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttss2si64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttss2usi-1.c: Ditto.
* gcc.target/i386/avx512f-vcvttss2usi64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtudq2pd-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtudq2ps-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtusi2sd-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtusi2sd64-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtusi2ss-1.c: Ditto.
* gcc.target/i386/avx512f-vcvtusi2ss64-1.c: Ditto.
* gcc.target/i386/avx512f-vdivpd-1.c: Ditto.
* gcc.target/i386/avx512f-vdivps-1.c: Ditto.
* gcc.target/i386/avx512f-vdivsd-1.c: Ditto.
* gcc.target/i386/avx512f-vdivss-1.c: Ditto.
* gcc.target/i386/avx512f-vec-init.c: Ditto.
* gcc.target/i386/avx512f-vexpandpd-1.c: Ditto.
* gcc.target/i386/avx512f-vexpandps-1.c: Ditto.
* gcc.target/i386/avx512f-vextractf32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vextractf64x4-1.c: Ditto.
* gcc.target/i386/avx512f-vextracti32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vextracti64x4-1.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmps-1.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmss-1.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXps-1.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXss-1.c: Ditto.
* gcc.target/i386/avx512f-vfmaddsubXXXpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmaddsubXXXps-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXps-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXss-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubaddXXXpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfmsubaddXXXps-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXps-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXss-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXpd-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXps-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXsd-1.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXss-1.c: Ditto.
* gcc.target/i386/avx512f-vgetexppd-1.c: Ditto.
* gcc.target/i386/avx512f-vgetexpps-1.c: Ditto.
* gcc.target/i386/avx512f-vgetexpsd-1.c: Ditto.
* gcc.target/i386/avx512f-vgetexpss-1.c: Ditto.
* gcc.target/i386/avx512f-vgetmantpd-1.c: Ditto.
* gcc.target/i386/avx512f-vgetmantps-1.c: Ditto.
* gcc.target/i386/avx512f-vgetmantsd-1.c: Ditto.
* gcc.target/i386/avx512f-vgetmantss-1.c: Ditto.
* gcc.target/i386/avx512f-vinsertf32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vinsertf64x4-1.c: Ditto.
* gcc.target/i386/avx512f-vinserti32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vinserti64x4-1.c: Ditto.
* gcc.target/i386/avx512f-vmaxpd-1.c: Ditto.
* gcc.target/i386/avx512f-vmaxps-1.c: Ditto.
* gcc.target/i386/avx512f-vmaxsd-1.c: Ditto.
* gcc.target/i386/avx512f-vmaxss-1.c: Ditto.
* gcc.target/i386/avx512f-vminpd-1.c: Ditto.
* gcc.target/i386/avx512f-vminps-1.c: Ditto.
* gcc.target/i386/avx512f-vminsd-1.c: Ditto.
* gcc.target/i386/avx512f-vminss-1.c: Ditto.
* gcc.target/i386/avx512f-vmovapd-1.c: Ditto.
* gcc.target/i386/avx512f-vmovaps-1.c: Ditto.
* gcc.target/i386/avx512f-vmovddup-1.c: Ditto.
* gcc.target/i386/avx512f-vmovdqa32-1.c: Ditto.
* gcc.target/i386/avx512f-vmovdqa64-1.c: Ditto.
* gcc.target/i386/avx512f-vmovdqu32-1.c: Ditto.
* gcc.target/i386/avx512f-vmovdqu64-1.c: Ditto.
* gcc.target/i386/avx512f-vmovntdq-1.c: Ditto.
* gcc.target/i386/avx512f-vmovntdqa-1.c: Ditto.
* gcc.target/i386/avx512f-vmovntpd-1.c: Ditto.
* gcc.target/i386/avx512f-vmovntps-1.c: Ditto.
* gcc.target/i386/avx512f-vmovshdup-1.c: Ditto.
* gcc.target/i386/avx512f-vmovsldup-1.c: Ditto.
* gcc.target/i386/avx512f-vmovupd-1.c: Ditto.
* gcc.target/i386/avx512f-vmovups-1.c: Ditto.
* gcc.target/i386/avx512f-vmulpd-1.c: Ditto.
* gcc.target/i386/avx512f-vmulps-1.c: Ditto.
* gcc.target/i386/avx512f-vmulsd-1.c: Ditto.
* gcc.target/i386/avx512f-vmulss-1.c: Ditto.
* gcc.target/i386/avx512f-vpabsd512-1.c: Ditto.
* gcc.target/i386/avx512f-vpabsq512-1.c: Ditto.
* gcc.target/i386/avx512f-vpaddd-1.c: Ditto.
* gcc.target/i386/avx512f-vpaddq-1.c: Ditto.
* gcc.target/i386/avx512f-vpandd-1.c: Ditto.
* gcc.target/i386/avx512f-vpandnd-1.c: Ditto.
* gcc.target/i386/avx512f-vpandnq-1.c: Ditto.
* gcc.target/i386/avx512f-vpandq-1.c: Ditto.
* gcc.target/i386/avx512f-vpblendmd-1.c: Ditto.
* gcc.target/i386/avx512f-vpblendmq-1.c: Ditto.
* gcc.target/i386/avx512f-vpbroadcastd-1.c: Ditto.
* gcc.target/i386/avx512f-vpbroadcastq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpd-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpeqd-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpeqq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpequd-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpequq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpged-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgeq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgeud-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgeuq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtd-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtud-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtuq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpled-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpleq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpleud-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpleuq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpltd-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpltq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpltud-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpltuq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpneqd-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpneqq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpnequd-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpnequq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpud-1.c: Ditto.
* gcc.target/i386/avx512f-vpcmpuq-1.c: Ditto.
* gcc.target/i386/avx512f-vpcompressd-1.c: Ditto.
* gcc.target/i386/avx512f-vpcompressq-1.c: Ditto.
* gcc.target/i386/avx512f-vpermd-1.c: Ditto.
* gcc.target/i386/avx512f-vpermi2d-1.c: Ditto.
* gcc.target/i386/avx512f-vpermi2pd-1.c: Ditto.
* gcc.target/i386/avx512f-vpermi2ps-1.c: Ditto.
* gcc.target/i386/avx512f-vpermi2q-1.c: Ditto.
* gcc.target/i386/avx512f-vpermilpd-1.c: Ditto.
* gcc.target/i386/avx512f-vpermilpdi-1.c: Ditto.
* gcc.target/i386/avx512f-vpermilps-1.c: Ditto.
* gcc.target/i386/avx512f-vpermilpsi-1.c: Ditto.
* gcc.target/i386/avx512f-vpermpd-1.c: Ditto.
* gcc.target/i386/avx512f-vpermpdi-1.c: Ditto.
* gcc.target/i386/avx512f-vpermps-1.c: Ditto.
* gcc.target/i386/avx512f-vpermq-imm-1.c: Ditto.
* gcc.target/i386/avx512f-vpermq-var-1.c: Ditto.
* gcc.target/i386/avx512f-vpermt2d-1.c: Ditto.
* gcc.target/i386/avx512f-vpermt2pd-1.c: Ditto.
* gcc.target/i386/avx512f-vpermt2ps-1.c: Ditto.
* gcc.target/i386/avx512f-vpermt2q-1.c: Ditto.
* gcc.target/i386/avx512f-vpexpandd-1.c: Ditto.
* gcc.target/i386/avx512f-vpexpandq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmaxsd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmaxsq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmaxud-1.c: Ditto.
* gcc.target/i386/avx512f-vpmaxuq-1.c: Ditto.
* gcc.target/i386/avx512f-vpminsd-1.c: Ditto.
* gcc.target/i386/avx512f-vpminsq-1.c: Ditto.
* gcc.target/i386/avx512f-vpminud-1.c: Ditto.
* gcc.target/i386/avx512f-vpminuq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovdb-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovdw-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovqb-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovqd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovqw-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdb-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdw-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqb-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqw-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxbd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxbq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxdq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxwd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxwq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovusdb-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovusdw-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqb-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqw-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxbd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxbq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxdq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxwd-1.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxwq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmuldq-1.c: Ditto.
* gcc.target/i386/avx512f-vpmulld-1.c: Ditto.
* gcc.target/i386/avx512f-vpmuludq-1.c: Ditto.
* gcc.target/i386/avx512f-vpord-1.c: Ditto.
* gcc.target/i386/avx512f-vporq-1.c: Ditto.
* gcc.target/i386/avx512f-vprold-1.c: Ditto.
* gcc.target/i386/avx512f-vprolq-1.c: Ditto.
* gcc.target/i386/avx512f-vprolvd-1.c: Ditto.
* gcc.target/i386/avx512f-vprolvq-1.c: Ditto.
* gcc.target/i386/avx512f-vprord-1.c: Ditto.
* gcc.target/i386/avx512f-vprorq-1.c: Ditto.
* gcc.target/i386/avx512f-vprorvd-1.c: Ditto.
* gcc.target/i386/avx512f-vprorvq-1.c: Ditto.
* gcc.target/i386/avx512f-vpshufd-1.c: Ditto.
* gcc.target/i386/avx512f-vpslld-1.c: Ditto.
* gcc.target/i386/avx512f-vpslldi-1.c: Ditto.
* gcc.target/i386/avx512f-vpsllq-1.c: Ditto.
* gcc.target/i386/avx512f-vpsllqi-1.c: Ditto.
* gcc.target/i386/avx512f-vpsllvd-1.c: Ditto.
* gcc.target/i386/avx512f-vpsllvq-1.c: Ditto.
* gcc.target/i386/avx512f-vpsllvq512-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrad-1.c: Ditto.
* gcc.target/i386/avx512f-vpsradi-1.c: Ditto.
* gcc.target/i386/avx512f-vpsraq-1.c: Ditto.
* gcc.target/i386/avx512f-vpsraqi-1.c: Ditto.
* gcc.target/i386/avx512f-vpsravd-1.c: Ditto.
* gcc.target/i386/avx512f-vpsravq-1.c: Ditto.
* gcc.target/i386/avx512f-vpsravq512-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrld-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrldi-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrlq-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrlqi-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrlvd-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrlvq-1.c: Ditto.
* gcc.target/i386/avx512f-vpsrlvq512-1.c: Ditto.
* gcc.target/i386/avx512f-vpsubd-1.c: Ditto.
* gcc.target/i386/avx512f-vpsubq-1.c: Ditto.
* gcc.target/i386/avx512f-vpternlogd-1.c: Ditto.
* gcc.target/i386/avx512f-vpternlogq-1.c: Ditto.
* gcc.target/i386/avx512f-vptestmd-1.c: Ditto.
* gcc.target/i386/avx512f-vptestmq-1.c: Ditto.
* gcc.target/i386/avx512f-vptestnmd-1.c: Ditto.
* gcc.target/i386/avx512f-vptestnmq-1.c: Ditto.
* gcc.target/i386/avx512f-vpunpckhdq-1.c: Ditto.
* gcc.target/i386/avx512f-vpunpckhqdq-1.c: Ditto.
* gcc.target/i386/avx512f-vpunpckldq-1.c: Ditto.
* gcc.target/i386/avx512f-vpunpcklqdq-1.c: Ditto.
* gcc.target/i386/avx512f-vpxord-1.c: Ditto.
* gcc.target/i386/avx512f-vpxorq-1.c: Ditto.
* gcc.target/i386/avx512f-vrcp14pd-1.c: Ditto.
* gcc.target/i386/avx512f-vrcp14ps-1.c: Ditto.
* gcc.target/i386/avx512f-vrcp14sd-1.c: Ditto.
* gcc.target/i386/avx512f-vrcp14ss-1.c: Ditto.
* gcc.target/i386/avx512f-vrndscalepd-1.c: Ditto.
* gcc.target/i386/avx512f-vrndscaleps-1.c: Ditto.
* gcc.target/i386/avx512f-vrndscalesd-1.c: Ditto.
* gcc.target/i386/avx512f-vrndscaless-1.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14pd-1.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14ps-1.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14sd-1.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14ss-1.c: Ditto.
* gcc.target/i386/avx512f-vscalefpd-1.c: Ditto.
* gcc.target/i386/avx512f-vscalefps-1.c: Ditto.
* gcc.target/i386/avx512f-vscalefsd-1.c: Ditto.
* gcc.target/i386/avx512f-vscalefss-1.c: Ditto.
* gcc.target/i386/avx512f-vshuff32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vshuff64x2-1.c: Ditto.
* gcc.target/i386/avx512f-vshufi32x4-1.c: Ditto.
* gcc.target/i386/avx512f-vshufi64x2-1.c: Ditto.
* gcc.target/i386/avx512f-vshufpd-1.c: Ditto.
* gcc.target/i386/avx512f-vshufps-1.c: Ditto.
* gcc.target/i386/avx512f-vsqrtpd-1.c: Ditto.
* gcc.target/i386/avx512f-vsqrtps-1.c: Ditto.
* gcc.target/i386/avx512f-vsqrtsd-1.c: Ditto.
* gcc.target/i386/avx512f-vsqrtss-1.c: Ditto.
* gcc.target/i386/avx512f-vsubpd-1.c: Ditto.
* gcc.target/i386/avx512f-vsubps-1.c: Ditto.
* gcc.target/i386/avx512f-vsubsd-1.c: Ditto.
* gcc.target/i386/avx512f-vsubss-1.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-vunpckhps-1.c: Ditto.
* gcc.target/i386/avx512f-vunpcklpd-1.c: Ditto.
* gcc.target/i386/avx512f-vunpcklps-1.c: Ditto.
* gcc.target/i386/avx512f_cond_move.c: Ditto.
* gcc.target/i386/avx512f_evex_reg_asm-2.c: Ditto.
* gcc.target/i386/avx512ifma-vpmaddhuq-1.c: Ditto.
* gcc.target/i386/avx512ifma-vpmaddluq-1.c: Ditto.
* gcc.target/i386/avx512pf-vgatherpf0dpd-1.c: Ditto.
* gcc.target/i386/avx512pf-vgatherpf0dps-1.c: Ditto.
* gcc.target/i386/avx512pf-vgatherpf0qpd-1.c: Ditto.
* gcc.target/i386/avx512pf-vgatherpf0qps-1.c: Ditto.
* gcc.target/i386/avx512pf-vgatherpf1dpd-1.c: Ditto.
* gcc.target/i386/avx512pf-vgatherpf1dps-1.c: Ditto.
* gcc.target/i386/avx512pf-vgatherpf1qpd-1.c: Ditto.
* gcc.target/i386/avx512pf-vgatherpf1qps-1.c: Ditto.
* gcc.target/i386/avx512pf-vscatterpf0dpd-1.c: Ditto.
* gcc.target/i386/avx512pf-vscatterpf0dps-1.c: Ditto.
* gcc.target/i386/avx512pf-vscatterpf0qpd-1.c: Ditto.
* gcc.target/i386/avx512pf-vscatterpf0qps-1.c: Ditto.
* gcc.target/i386/avx512pf-vscatterpf1dpd-1.c: Ditto.
* gcc.target/i386/avx512pf-vscatterpf1dps-1.c: Ditto.
* gcc.target/i386/avx512pf-vscatterpf1qpd-1.c: Ditto.
* gcc.target/i386/avx512pf-vscatterpf1qps-1.c: Ditto.
* gcc.target/i386/avx512vbmi-vpermb-1.c: Ditto.
* gcc.target/i386/avx512vbmi-vpermi2b-1.c: Ditto.
* gcc.target/i386/avx512vbmi-vpermt2b-1.c: Ditto.
* gcc.target/i386/avx512vbmi-vpmultishiftqb-1.c: Ditto.
* gcc.target/i386/avx512vl-i32gatherd-1.c: Ditto.
* gcc.target/i386/avx512vl-i32gatherpd-1.c: Ditto.
* gcc.target/i386/avx512vl-i32gatherps-1.c: Ditto.
* gcc.target/i386/avx512vl-i32gatherq-1.c: Ditto.
* gcc.target/i386/avx512vl-i32scatterd-1.c: Ditto.
* gcc.target/i386/avx512vl-i32scatterpd-1.c: Ditto.
* gcc.target/i386/avx512vl-i32scatterps-1.c: Ditto.
* gcc.target/i386/avx512vl-i32scatterq-1.c: Ditto.
* gcc.target/i386/avx512vl-i64gatherd-1.c: Ditto.
* gcc.target/i386/avx512vl-i64gatherpd-1.c: Ditto.
* gcc.target/i386/avx512vl-i64gatherps-1.c: Ditto.
* gcc.target/i386/avx512vl-i64gatherq-1.c: Ditto.
* gcc.target/i386/avx512vl-i64scatterd-1.c: Ditto.
* gcc.target/i386/avx512vl-i64scatterpd-1.c: Ditto.
* gcc.target/i386/avx512vl-i64scatterps-1.c: Ditto.
* gcc.target/i386/avx512vl-i64scatterq-1.c: Ditto.
* gcc.target/i386/avx512vl-vaddpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vaddps-1.c: Ditto.
* gcc.target/i386/avx512vl-valignd-1.c: Ditto.
* gcc.target/i386/avx512vl-valignq-1.c: Ditto.
* gcc.target/i386/avx512vl-vblendmpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vblendmps-1.c: Ditto.
* gcc.target/i386/avx512vl-vbroadcastf32x4-1.c: Ditto.
* gcc.target/i386/avx512vl-vbroadcasti32x4-1.c: Ditto.
* gcc.target/i386/avx512vl-vbroadcastsd-1.c: Ditto.
* gcc.target/i386/avx512vl-vbroadcastss-1.c: Ditto.
* gcc.target/i386/avx512vl-vcmppd-1.c: Ditto.
* gcc.target/i386/avx512vl-vcmpps-1.c: Ditto.
* gcc.target/i386/avx512vl-vcompresspd-1.c: Ditto.
* gcc.target/i386/avx512vl-vcompressps-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvtdq2pd-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvtdq2ps-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvtpd2dq-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvtpd2ps-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvtpd2udq-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvtph2ps-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvtps2dq-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvtps2pd-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvtps2ph-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvtps2udq-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvttpd2dq-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvttpd2udq-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvttps2dq-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvttps2udq-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvtudq2pd-1.c: Ditto.
* gcc.target/i386/avx512vl-vcvtudq2ps-1.c: Ditto.
* gcc.target/i386/avx512vl-vdivpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vdivps-1.c: Ditto.
* gcc.target/i386/avx512vl-vexpandpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vexpandps-1.c: Ditto.
* gcc.target/i386/avx512vl-vextractf32x4-1.c: Ditto.
* gcc.target/i386/avx512vl-vextracti32x4-1.c: Ditto.
* gcc.target/i386/avx512vl-vfixupimmpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vfixupimmps-1.c: Ditto.
* gcc.target/i386/avx512vl-vfmaddXXXpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vfmaddXXXps-1.c: Ditto.
* gcc.target/i386/avx512vl-vfmaddsubXXXpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vfmaddsubXXXps-1.c: Ditto.
* gcc.target/i386/avx512vl-vfmsubXXXpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vfmsubXXXps-1.c: Ditto.
* gcc.target/i386/avx512vl-vfmsubaddXXXpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vfmsubaddXXXps-1.c: Ditto.
* gcc.target/i386/avx512vl-vfnmaddXXXpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vfnmaddXXXps-1.c: Ditto.
* gcc.target/i386/avx512vl-vfnmsubXXXpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vfnmsubXXXps-1.c: Ditto.
* gcc.target/i386/avx512vl-vgetexppd-1.c: Ditto.
* gcc.target/i386/avx512vl-vgetexpps-1.c: Ditto.
* gcc.target/i386/avx512vl-vgetmantpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vgetmantps-1.c: Ditto.
* gcc.target/i386/avx512vl-vinsertf32x4-1.c: Ditto.
* gcc.target/i386/avx512vl-vinserti32x4-1.c: Ditto.
* gcc.target/i386/avx512vl-vmaxpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vmaxps-1.c: Ditto.
* gcc.target/i386/avx512vl-vminpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vminps-1.c: Ditto.
* gcc.target/i386/avx512vl-vmovapd-1.c: Ditto.
* gcc.target/i386/avx512vl-vmovaps-1.c: Ditto.
* gcc.target/i386/avx512vl-vmovddup-1.c: Ditto.
* gcc.target/i386/avx512vl-vmovdqa32-1.c: Ditto.
* gcc.target/i386/avx512vl-vmovdqa64-1.c: Ditto.
* gcc.target/i386/avx512vl-vmovdqu32-1.c: Ditto.
* gcc.target/i386/avx512vl-vmovdqu64-1.c: Ditto.
* gcc.target/i386/avx512vl-vmovntdqa-1.c: Ditto.
* gcc.target/i386/avx512vl-vmovshdup-1.c: Ditto.
* gcc.target/i386/avx512vl-vmovsldup-1.c: Ditto.
* gcc.target/i386/avx512vl-vmovupd-1.c: Ditto.
* gcc.target/i386/avx512vl-vmovups-1.c: Ditto.
* gcc.target/i386/avx512vl-vmulpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vmulps-1.c: Ditto.
* gcc.target/i386/avx512vl-vpabsd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpabsq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpaddd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpaddq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpandd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpandnd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpandnq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpandq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpblendmd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpblendmq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpbroadcastd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpbroadcastmb2q-1.c: Ditto.
* gcc.target/i386/avx512vl-vpbroadcastmw2d-1.c: Ditto.
* gcc.target/i386/avx512vl-vpbroadcastq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpeqd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpeqq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpequd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpequq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpged-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpgeq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpgeud-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpgeuq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpgtd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpgtq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpgtud-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpgtuq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpled-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpleq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpleud-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpleuq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpltd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpltq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpltud-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpltuq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpneqd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpneqq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpnequd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpnequq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpud-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcmpuq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcompressd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpcompressq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpconflictd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpconflictq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermi2d-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermi2pd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermi2ps-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermi2q-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermilpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermilpdi-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermilps-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermilpsi-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermpdi-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermps-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermq-imm-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermq-var-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermt2d-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermt2pd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermt2ps-1.c: Ditto.
* gcc.target/i386/avx512vl-vpermt2q-1.c: Ditto.
* gcc.target/i386/avx512vl-vpexpandd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpexpandq-1.c: Ditto.
* gcc.target/i386/avx512vl-vplzcntd-1.c: Ditto.
* gcc.target/i386/avx512vl-vplzcntq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmaxsd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmaxsq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmaxud-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmaxuq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpminsd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpminsq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpminud-1.c: Ditto.
* gcc.target/i386/avx512vl-vpminuq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovdb-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovdw-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovqb-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovqd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovqw-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovsdb-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovsdw-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovsqb-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovsqd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovsqw-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovsxbd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovsxbq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovsxdq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovsxwd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovsxwq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovusdb-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovusdw-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovusqb-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovusqd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovusqw-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovzxbd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovzxbq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovzxdq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovzxwd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmovzxwq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmuldq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmulld-1.c: Ditto.
* gcc.target/i386/avx512vl-vpmuludq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpord-1.c: Ditto.
* gcc.target/i386/avx512vl-vporq-1.c: Ditto.
* gcc.target/i386/avx512vl-vprold-1.c: Ditto.
* gcc.target/i386/avx512vl-vprolq-1.c: Ditto.
* gcc.target/i386/avx512vl-vprolvd-1.c: Ditto.
* gcc.target/i386/avx512vl-vprolvq-1.c: Ditto.
* gcc.target/i386/avx512vl-vprord-1.c: Ditto.
* gcc.target/i386/avx512vl-vprorq-1.c: Ditto.
* gcc.target/i386/avx512vl-vprorvd-1.c: Ditto.
* gcc.target/i386/avx512vl-vprorvq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsadbw-1.c: Ditto.
* gcc.target/i386/avx512vl-vpshufd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpslld-1.c: Ditto.
* gcc.target/i386/avx512vl-vpslldi-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsllq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsllqi-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsllvd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsllvq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsrad-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsradi-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsraq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsraqi-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsravd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsravq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsrld-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsrldi-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsrlq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsrlqi-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsrlvd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsrlvq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsubd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpsubq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpternlogd-1.c: Ditto.
* gcc.target/i386/avx512vl-vpternlogq-1.c: Ditto.
* gcc.target/i386/avx512vl-vptestmd-1.c: Ditto.
* gcc.target/i386/avx512vl-vptestmq-1.c: Ditto.
* gcc.target/i386/avx512vl-vptestnmd-1.c: Ditto.
* gcc.target/i386/avx512vl-vptestnmq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpunpckhdq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpunpckhqdq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpunpckldq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpunpcklqdq-1.c: Ditto.
* gcc.target/i386/avx512vl-vpxord-1.c: Ditto.
* gcc.target/i386/avx512vl-vpxorq-1.c: Ditto.
* gcc.target/i386/avx512vl-vrcp14pd-1.c: Ditto.
* gcc.target/i386/avx512vl-vrcp14ps-1.c: Ditto.
* gcc.target/i386/avx512vl-vrndscalepd-1.c: Ditto.
* gcc.target/i386/avx512vl-vrndscaleps-1.c: Ditto.
* gcc.target/i386/avx512vl-vrsqrt14pd-1.c: Ditto.
* gcc.target/i386/avx512vl-vrsqrt14ps-1.c: Ditto.
* gcc.target/i386/avx512vl-vscalefpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vscalefps-1.c: Ditto.
* gcc.target/i386/avx512vl-vshuff32x4-1.c: Ditto.
* gcc.target/i386/avx512vl-vshuff64x2-1.c: Ditto.
* gcc.target/i386/avx512vl-vshufi32x4-1.c: Ditto.
* gcc.target/i386/avx512vl-vshufi64x2-1.c: Ditto.
* gcc.target/i386/avx512vl-vshufpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vshufps-1.c: Ditto.
* gcc.target/i386/avx512vl-vsqrtpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vsqrtps-1.c: Ditto.
* gcc.target/i386/avx512vl-vsubpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vsubps-1.c: Ditto.
* gcc.target/i386/avx512vl-vunpckhpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vunpckhps-1.c: Ditto.
* gcc.target/i386/avx512vl-vunpcklpd-1.c: Ditto.
* gcc.target/i386/avx512vl-vunpcklps-1.c: Ditto.
From-SVN: r218313
H.J. Lu [Wed, 3 Dec 2014 13:16:25 +0000 (13:16 +0000)]
Revert r218266
gcc/
PR rtl-optimization/64151
PR rtl-optimization/64156
* ira-costs.c (scan_one_insn): Revert r218266.
gcc/testsuite/
PR rtl-optimization/64151
PR rtl-optimization/64156
* gcc.target/aarch64/remat1.c: Removed. Revert r218267.
From-SVN: r218312
Richard Biener [Wed, 3 Dec 2014 13:10:39 +0000 (13:10 +0000)]
builtins.c (fold_builtin_fpclassify): Change to take array of arguments instead of CALL_EXPR tree.
2014-12-03 Richard Biener <rguenther@suse.de>
* builtins.c (fold_builtin_fpclassify): Change to take
array of arguments instead of CALL_EXPR tree.
(MAX_ARGS_TO_FOLD_BUILTIN): Remove.
(fold_builtin_n): Dispatch to fold_builtin_varargs.
(fold_call_expr): Always use fold_builtin_n.
(fold_builtin_call_array): Change to not build the unfolded call,
always use fold_builtin_n.
(fold_builtin_varargs): Change to take array of arguments instead
of CALL_EXPR tree.
(fold_call_stmt): Always use fold_builtin_n.
* tree.c (build_call_expr_loc_array): Use fold_build_call_array_loc.
* fold-const.c (fold_build_call_array_loc): Build the call
if fold_builtin_call_array returned NULL_TREE.
* gimple-fold.c (gimple_fold_stmt_to_constant_1): Do not build
a CALL_EXPR and use fold_builtin_call_array instead of
fold_call_expr.
cp/
* constexpr.c (cxx_eval_builtin_function_call): Use
fold_build_call_array_loc.
From-SVN: r218311
Alan Lawrence [Wed, 3 Dec 2014 12:12:07 +0000 (12:12 +0000)]
[AArch64] Remove/merge redundant iterators
* config/aarch64/aarch64-simd.md (aarch64_simd_dup<mode>, orn<mode>3,
bic<mode>3, add<mode>3, sub<mode>3, neg<mode>2, abs<mode>2, and<mode>3,
ior<mode>3, xor<mode>3, one_cmpl<mode>2,
aarch64_simd_lshr<mode> ,arch64_simd_ashr<mode>,
aarch64_simd_imm_shl<mode>, aarch64_simd_reg_sshl<mode>,
aarch64_simd_reg_shl<mode>_unsigned, aarch64_simd_reg_shr<mode>_signed,
ashl<mode>3, lshr<mode>3, ashr<mode>3, vashl<mode>3,
reduc_plus_scal_<mode>, aarch64_vcond_internal<mode><mode>,
vcondu<mode><mode>, aarch64_cm<optab><mode>, aarch64_cmtst<mode>):
Change VDQ to VDQ_I.
(mul<mode>3): Change VDQM to VDQ_BHSI.
(aarch64_simd_vec_set<mode>,vashr<mode>3, vlshr<mode>3, vec_set<mode>,
aarch64_mla<mode>, aarch64_mls<mode>, <su><maxmin><mode>3,
aarch64_<sur>h<addsub><mode>): Change VQ_S to VDQ_BHSI.
(*aarch64_<su>mlal<mode>, *aarch64_<su>mlsl<mode>,
aarch64_<ANY_EXTEND:su><ADDSUB:optab>l<mode>,
aarch64_<ANY_EXTEND:su><ADDSUB:optab>w<mode>, aarch64_<sur>shll_n<mode>):
Change VDW to VD_BHSI.
(*aarch64_combinez<mode>, *aarch64_combinez_be<mode>):
Change VDIC to VD_BHSI.
* config/aarch64/aarch64-simd-builtins.def (saddl, uaddl, ssubl, usubl,
saddw, uaddw, ssubw, usubw, shadd, uhadd, srhadd, urhadd, sshll_n,
ushll_n): Change BUILTIN_VDW to BUILTIN_VD_BHSI.
* config/aarch64/iterators.md (SDQ_I, VDQ, VQ_S, VSDQ_I_BHSI, VDQM, VDW,
VDIC, VDQQHS): Remove.
(Vwtype): Update comment (changing VDW to VD_BHSI).
From-SVN: r218310
Jonathan Wakely [Wed, 3 Dec 2014 12:00:02 +0000 (12:00 +0000)]
hashtable.h: Fix whitespace and simplify function definitions with trailing return types.
* include/bits/hashtable.h: Fix whitespace and simplify function
definitions with trailing return types.
From-SVN: r218309
Richard Biener [Wed, 3 Dec 2014 11:55:14 +0000 (11:55 +0000)]
re PR tree-optimization/14541 ([tree-ssa] built-in math functions are not fully optimized at tree level)
2014-12-03 Richard Biener <rguenther@suse.de>
PR middle-end/14541
* builtins.c (fold_builtin_logarithm): Implement simplifications ...
* match.pd: ... here as patterns.
From-SVN: r218308
Prachi Godbole [Wed, 3 Dec 2014 11:16:00 +0000 (11:16 +0000)]
p5600.md (define_automaton, [...]): Replace p5600_agen_pipe and p5600_alu_pipe with p5600_agen_alq_pipe.
2014-12-03 Prachi Godbole <prachi.godbole@imgtec.com>
* config/mips/p5600.md (define_automaton, define_cpu_unit): Replace
p5600_agen_pipe and p5600_alu_pipe with p5600_agen_alq_pipe.
(p5600_int_arith_1, p5600_int_arith_2, p5600_int_arith_4): Change
reservation order.
From-SVN: r218307
Tom de Vries [Wed, 3 Dec 2014 10:28:25 +0000 (10:28 +0000)]
Rename fuse-caller-save
2014-12-03 Tom de Vries <tom@codesourcery.com>
PR rtl-optimization/63957
* doc/invoke.texi: Replace -fuse-caller-save with -fipa-ra.
* final.c (rest_of_handle_final): Replace flag_use_caller_save with
flag_ipa_ra.
(get_call_reg_set_usage): Same.
* lra-assigns.c (lra_assign): Same.
* lra-constraints.c (need_for_call_save_p): Same.
* lra-lives.c (process_bb_lives): Same.
* lra.c (lra): Same.
* calls.c (expand_call): Same.
(emit_library_call_value_1): Same.
* config/arm/arm.c (arm_option_override): Same.
* opts.c (default_options_table): Replace OPT_fuse_caller_save with
OPT_fipa_ra.
* target.def (call_fusage_contains_non_callee_clobbers): Replace
fuse-caller-save with fipa-ra.
* doc/tm.texi (TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS): Same.
* common.opt: Same.
* gcc.dg/ira-shrinkwrap-prep-1.c: Replace -fno-use-caller-save with
-fno-ipa-ra.
* gcc.dg/ira-shrinkwrap-prep-2.c: Same.
* gcc.target/aarch64/aapcs64/aapcs64.exp: Same.
* gcc.dg/fuse-caller-save.c: Replace -fuse-caller-save with -fipa-ra.
* gcc.target/aarch64/fuse-caller-save.c: Same.
* gcc.target/arm/fuse-caller-save.c: Same.
* gcc.target/i386/fuse-caller-save-rec.c: Same.
* gcc.target/i386/fuse-caller-save-xmm-run.c: Same.
* gcc.target/i386/fuse-caller-save-xmm.c: Same.
* gcc.target/i386/fuse-caller-save.c: Same.
* gcc.target/mips/fuse-caller-save-micromips.c: Same.
* gcc.target/mips/fuse-caller-save-mips16.c: Same.
* gcc.target/mips/fuse-caller-save.c: Same.
* gcc.target/mips/mips.exp: Replace use-caller-save with ipa-ra in
-ffoo/-fno-foo options.
From-SVN: r218305
Yury Gribov [Wed, 3 Dec 2014 09:23:28 +0000 (09:23 +0000)]
Improve optimization of ASan checks.
2014-12-03 Yury Gribov <y.gribov@samsung.com>
gcc/
* sanopt.c (maybe_get_single_definition): New function.
(maybe_get_dominating_check): Ditto.
(can_remove_asan_check): Ditto.
(struct tree_map_traits): New struct.
(struct sanopt_ctx): Use custom traits for asan_check_map.
(maybe_optimize_ubsan_null_ifn): Move code to
maybe_get_dominating_check.
(maybe_optimize_asan_check_ifn): Move code and take non-SSA expressions
into account when optimizing.
(sanopt_optimize_walker): Optimize ASan checks even when
recovering.
From-SVN: r218304
Ilya Enkovich [Wed, 3 Dec 2014 08:45:45 +0000 (08:45 +0000)]
constraints.md (Yr): New.
gcc/
* config/i386/constraints.md (Yr): New.
* config/i386/i386.h (reg_class): Add NO_REX_SSE_REGS.
(REG_CLASS_NAMES): Likewise.
(REG_CLASS_CONTENTS): Likewise.
* config/i386/sse.md (*vec_concatv2sf_sse4_1): Add alternatives
which use only NO_REX_SSE_REGS.
(vec_set<mode>_0): Likewise.
(*vec_setv4sf_sse4_1): Likewise.
(sse4_1_insertps): Likewise.
(*sse4_1_extractps): Likewise.
(*sse4_1_mulv2siv2di3<mask_name>): Likewise.
(*<sse4_1_avx2>_mul<mode>3<mask_name>): Likewise.
(*sse4_1_<code><mode>3<mask_name>): Likewise.
(*sse4_1_<code><mode>3): Likewise.
(*sse4_1_eqv2di3): Likewise.
(sse4_2_gtv2di3): Likewise.
(*vec_extractv4si): Likewise.
(*vec_concatv2si_sse4_1): Likewise.
(vec_concatv2di): Likewise.
(<sse4_1>_blend<ssemodesuffix><avxsizesuffix>): Likewise.
(<sse4_1>_blendv<ssemodesuffix><avxsizesuffix>): Likewise.
(<sse4_1>_dp<ssemodesuffix><avxsizesuffix>): Likewise.
(<vi8_sse4_1_avx2_avx512>_movntdqa): Likewise.
(<sse4_1_avx2>_mpsadbw): Likewise.
(<sse4_1_avx2>packusdw<mask_name>): Likewise.
(<sse4_1_avx2>_pblendvb): Likewise.
(sse4_1_pblendw): Likewise.
(sse4_1_phminposuw): Likewise.
(sse4_1_<code>v8qiv8hi2<mask_name>): Likewise.
(sse4_1_<code>v4qiv4si2<mask_name>): Likewise.
(sse4_1_<code>v4hiv4si2<mask_name>): Likewise.
(sse4_1_<code>v2qiv2di2<mask_name>): Likewise.
(sse4_1_<code>v2hiv2di2<mask_name>): Likewise.
(sse4_1_<code>v2siv2di2<mask_name>): Likewise.
(sse4_1_ptest): Likewise.
(<sse4_1>_round<ssemodesuffix><avxsizesuffix>): Likewise.
(sse4_1_round<ssescalarmodesuffix>): Likewise.
* config/i386/subst.md (mask_prefix4): New.
* config/i386/x86-tune.def (X86_TUNE_AVOID_4BYTE_PREFIXES): New.
gcc/testsuites/
* gcc.target/i386/sse2-init-v2di-2.c: Adjust to changed
vec_concatv2di template.
From-SVN: r218303
Segher Boessenkool [Wed, 3 Dec 2014 06:00:54 +0000 (07:00 +0100)]
re PR rtl-optimization/52714 (ICE in fixup_reorder_chain, at cfglayout.c:880)
PR rtl-optimization/52714
* combine.c (try_combine): Allow combining two insns into two
new insns if at least one of those is a noop.
gcc/testsuite/
* gcc.target/m68k/pr52714.c: New testcase.
From-SVN: r218302
Bin Cheng [Wed, 3 Dec 2014 05:25:40 +0000 (05:25 +0000)]
target.def (fusion_priority): Wrap code with @smallexample.
* target.def (fusion_priority): Wrap code with @smallexample.
* doc/tm.texi: Regenerated.
From-SVN: r218301
Jonathan Wakely [Wed, 3 Dec 2014 01:34:03 +0000 (01:34 +0000)]
re PR libstdc++/64161 (bootstrap error: condition_variable.cc:134:7: error: 'atexit' is not a member of 'std')
PR libstdc++/64161
* src/c++11/condition_variable.cc: Include <cstdlib>.
From-SVN: r218300
GCC Administrator [Wed, 3 Dec 2014 00:16:28 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r218299
Tobias Burnus [Tue, 2 Dec 2014 23:39:49 +0000 (00:39 +0100)]
error.c (warnings_not_errors): Use bool.
2014-12-02 Tobias Burnus <burnus@net-b.de>
Manuel López-Ibáñez <manu@gcc.gnu.org>
* error.c (warnings_not_errors): Use bool.
(gfc_clear_error): Update.
(gfc_get_errors): Ditto. Use bool argument.
* gfortran.h (gfc_get_errors): Update prototype.
* resolve.c (resolve_global_procedure): Update call.
Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org>
From-SVN: r218296
Manuel López-Ibáñez [Tue, 2 Dec 2014 23:16:21 +0000 (23:16 +0000)]
libcpp uses diagnostic->override_column to give a custom column number to diagnostics.
libcpp uses diagnostic->override_column to give a custom column number to
diagnostics. This is taken into account when building the prefix, but it was
missing when placing the caret.
2014-12-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
* diagnostic.c (diagnostic_show_locus): Honor override_column when
placing the caret.
From-SVN: r218295
Tobias Burnus [Tue, 2 Dec 2014 22:41:01 +0000 (23:41 +0100)]
download_prerequisites: Download ISL 0.14 instead of 0.12.2.
2014-12-02 Tobias Burnus <burnus@net-b.de>
* download_prerequisites: Download ISL 0.14 instead of 0.12.2.
From-SVN: r218294
Dmitry Vyukov [Tue, 2 Dec 2014 18:58:59 +0000 (10:58 -0800)]
asan: support for globals in kernel
2014-12-02 Dmitry Vyukov <dvyukov@google.com>
* asan.c: (asan_finish_file): Use default priority for constructors
in kernel mode.
From-SVN: r218281
Uros Bizjak [Tue, 2 Dec 2014 17:32:27 +0000 (18:32 +0100)]
avx512ifma-vpmaddhuq-2.c: Define AVX512IFMA.
* gcc.target/i386/avx512ifma-vpmaddhuq-2.c: Define AVX512IFMA.
* gcc.target/i386/avx512ifma-vpmaddluq-2.c: Ditto.
* gcc.target/i386/avx512vbmi-vpermb-2.c: Define AVX512VBMI.
* gcc.target/i386/avx512vbmi-vpermi2b-2.c: Ditto.
* gcc.target/i386/avx512vbmi-vpermt2b-2.c: Ditto.
* gcc.target/i386/avx512vbmi-vpmultishiftqb-2.c: Ditto.
From-SVN: r218280
Marek Polacek [Tue, 2 Dec 2014 17:23:34 +0000 (17:23 +0000)]
constexpr.c (cxx_eval_check_shift_p): New function.
* constexpr.c (cxx_eval_check_shift_p): New function.
(cxx_eval_binary_expression): Call it. Set NON_CONSTANT_P if it
returns true.
* g++.dg/cpp0x/constexpr-shift1.C: New test.
* g++.dg/cpp1y/constexpr-shift1.C: New test.
* g++.dg/ubsan/pr63956.C: Add dg-errors.
From-SVN: r218279
Manuel López-Ibáñez [Tue, 2 Dec 2014 16:03:31 +0000 (16:03 +0000)]
line-map.h (linemap_assert_fails): Declare.
libcpp/ChangeLog:
2014-12-02 Manuel López-Ibáñez <manu@gcc.gnu.org>
* include/line-map.h (linemap_assert_fails): Declare.
* line-map.c (linemap_position_for_loc_and_offset): Use it.
From-SVN: r218277
Manuel López-Ibáñez [Tue, 2 Dec 2014 16:00:33 +0000 (16:00 +0000)]
line-map.c (linemap_add): Fix typo.
2014-12-02 Manuel López-Ibáñez <manu@gcc.gnu.org>
* line-map.c (linemap_add): Fix typo.
(linemap_line_start): Fix whitespace.
From-SVN: r218276
Ulrich Weigand [Tue, 2 Dec 2014 14:27:46 +0000 (14:27 +0000)]
re PR target/64115 (ICE: : in rs6000_delegitimize_address, at config/rs6000/rs6000.c:7051)
PR target/64115
* config/rs6000/rs6000.c (rs6000_delegitimize_address): Remove
invalid UNSPEC_TOCREL sanity check under ENABLE_CHECKING.
From-SVN: r218273