gcc.git
10 years agosymtab.c (symtab_node::equal_address_to): New function.
Jan Hubicka [Sun, 7 Dec 2014 07:35:11 +0000 (08:35 +0100)]
symtab.c (symtab_node::equal_address_to): New function.

* symtab.c (symtab_node::equal_address_to): New function.
* cgraph.h (symtab_node::equal_address_to): Declare.
* fold-const.c (fold_comparison, fold_binary_loc): Use it.

* c-family/c-common.c: Refuse weaks for symbols that can not change
visibility.

* gcc.dg/addr_equal-1.c: New testcase.

From-SVN: r218462

10 years ago* doc/invoke.texi (Warning Options): Fix spelling and grammar.
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

10 years agoDaily bump.
GCC Administrator [Sun, 7 Dec 2014 00:16:29 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r218460

10 years agoextend jump thread for finite state automata
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

10 years agoerror.c (gfc_error_check): Use bool not int.
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

10 years agoerror.c (gfc_buffer_error, [...]): Use bool not
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

10 years agoclarification
Bruce Korb [Sat, 6 Dec 2014 15:08:55 +0000 (15:08 +0000)]
clarification

From-SVN: r218448

10 years agore PR tree-optimization/64183 (Complete unroll doesn't happen for a while-loop)
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

10 years agoDon't assert "alg != libcall" for -minline-stringops-dynamically
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

10 years agoFix ChangeLog format.
Tim Shen [Sat, 6 Dec 2014 11:31:12 +0000 (11:31 +0000)]
Fix ChangeLog format.

From-SVN: r218444

10 years agoDaily bump.
GCC Administrator [Sat, 6 Dec 2014 00:16:31 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r218443

10 years agore PR sanitizer/64170 (ICE compiling Linux Kernel drivers/media/rc/imon.c in imon_inc...
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

10 years agomd.texi: Note problems using function calls to determine insn lengths and point reade...
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

10 years ago* combine.c (is_parallel_of_n_reg_sets)
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

10 years agoaarch64-simd-builtins.def (bswap): Use CF2 rather than CF10 so 2 is appended on the...
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

10 years agoregrename.c (find_best_rename_reg): Rename to ...
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

10 years agore PR ipa/64192 (r218369 causes some regressions with -m32.)
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

10 years ago[AArch64]Clarify the usage of SCHED in AARCH64_CORE macro
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

10 years agore PR target/53199 (__builtin_bswap64 and __builtin_bswap32 generate errors if -mcpu...
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

10 years ago[AArch64]load store pair optimization using sched_fusion pass.
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

10 years agodefaults.h: (DWARF_REG_TO_UNWIND_COLUMN): Define default.
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

10 years agodwarf2cfi.c (init_one_dwarf_reg_size): New helper, processing one particular reg...
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

10 years agopr63341-1.c: Remove explicit "dg-do run".
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

10 years agore PR target/64003 (valgrind complains about get_attr_length_nobnd in insn-attrtab...
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

10 years ago[AArch64] Use selected cpu's tuning when no tuning parameter is specified
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

10 years agoxcoff.h (ASM_OUTPUT_ALIGNED_LOCAL): Append alignment to section name.
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

10 years agore PR fortran/60414 (internal compiler error: tree check)
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

10 years agocgraph.h (cgraph_node): New method expand_all_artificial_thunks.
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

10 years agohashtable_policy.h (_Map_base::operator[], [...]): Simplify definitions with trailing...
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

10 years agore PR target/64056 (gcc.target/i386/chkp-strlen-4.c etc. FAIL)
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

10 years agoDaily bump.
GCC Administrator [Fri, 5 Dec 2014 00:16:33 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r218413

10 years agoThis test should have been added in revision 218407.
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

10 years agoerror.c (gfc_diagnostic_build_locus_prefix): Use diagnostic_expand_location.
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

10 years agoAlways define HAVE_LD_PIE_COPYRELOC
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

10 years agoline-map.c (linemap_position_for_loc_and_offset): Add new linemap_assert_fails.
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

10 years agodiagnostic.c (diagnostic_color_init): New.
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

10 years agoAvoid overuse of name "buffer" in tree-pretty-print.c
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

10 years agoPR jit/63854: Fix double-initialization within tree-pretty-print.c
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

10 years agoPR jit/63854: Fix leak of ipa hooks
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

10 years agore PR c++/64029 (const int (&in)[]{1,2,3,4,5}; results in internal compiler error...
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

10 years agore PR c++/64080 ([C++14]ICE in cxx_eval_store_expression)
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

10 years agofix comment
Jason Merrill [Thu, 4 Dec 2014 20:37:14 +0000 (15:37 -0500)]
fix comment

From-SVN: r218400

10 years agoUpdate docs to reflect use of gimple subclasses
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

10 years agox86-64: Optimize access to globals in PIE with copy reloc
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

10 years agore PR middle-end/56917 (-ftrapv detects a overflow wrongly.)
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

10 years agoMakefile.in: Remove CLOOGLIB and CLOOGINC.
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

10 years agocheck_GNU_style.sh: Warn for incorrect number of spaces in function call only if...
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

10 years agomatch-and-simplify.texi: Update for recent changes.
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

10 years agoipa-prop.h (ipa_alignment): New type.
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

10 years agogimple-fold.c (replace_stmt_with_simplification): Properly fail when maybe_push_res_t...
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

10 years agoAdd prefetch support for aarch64
Ganesh Gopalasubramanian [Thu, 4 Dec 2014 10:51:54 +0000 (10:51 +0000)]
Add prefetch support for aarch64

From-SVN: r218349

10 years agoinstall.texi: Remove mentions of cloog and ppl.
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

10 years agore PR c++/56493 (Performance regression in google dense hashmap)
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

10 years ago[testsuite] Cache return value of check_effective_target_tiny
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

10 years agobuiltins.c (target_newline): Export.
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

10 years agore PR testsuite/64145 (gcc.dg/graphite/isl-codegen-loop-dumping.c UNRESOLVED after...
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

10 years agoisl.m4: Don't pass -DCLOOG_INT_GMP on islinc.
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

10 years agore PR libstdc++/64140 (match_results.prefix() returns an incorrect result if regex_it...
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

10 years agors6000.md (floatsidf2_internal): Use std::swap.
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

10 years agoDaily bump.
GCC Administrator [Thu, 4 Dec 2014 00:16:27 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r218338

10 years agore PR rtl-optimization/64010 ([msp430-elf] struct function dereference clobbers param...
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

10 years agoMakefile.in: Use $(LN_S) instead of $(LN) -s and remove file first if it exists.
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

10 years ago* expmed.c (expand_mult): Use std::swap.
Jakub Jelinek [Wed, 3 Dec 2014 20:35:45 +0000 (21:35 +0100)]
* expmed.c (expand_mult): Use std::swap.

From-SVN: r218332

10 years agore PR c/59708 (clang-compatible checked arithmetic builtins)
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

10 years agogimple.texi (gimple_build_assign_with_ops): Remove.
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

10 years agore PR libstdc++/13631 (Problems in messages)
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

10 years agore PR c++/63558 (cannot silence "jump to case label" with fpermissive)
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

10 years agore PR target/64019 (ICE in extract_constrain_insn)
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

10 years agore PR fortran/44054 (Handle -Werror, -Werror=, -fdiagnostics-show-option, !GCC$ diagn...
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

10 years agoMakefile.in (ALL_HOST_BACKEND_OBJS): Add $(GENGTYPE_OBJS), gcc-ar.o, gcc-nm.o and...
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

10 years ago* g++.dg/ext/visibility/anon[12].C: Require visibility support.
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

10 years agoepiphany.c (epiphany_override_options): If TARGET_SOFT_CMPSF is not enabled, set...
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

10 years agoregex_compiler.h (_S_cache_size): Multiply the RHS of the shift-expression by _UseCac...
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

10 years agore PR libstdc++/64168 (FAIL: 30_threads/async/sync.cc execution test)
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

10 years agoRevert r215321.
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

10 years agobuiltins.c (target_percent_c): Export.
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

10 years agore PR ipa/64153 (r218205 miscompiles libgomp)
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

10 years agoconfigure.tgt (x86_64): Tune -m32 multilib to generic.
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

10 years agoavx512bw-kunpckdq-1.c: Fix regexps for assembler scanning.
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

10 years agoRevert r218266
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

10 years agobuiltins.c (fold_builtin_fpclassify): Change to take array of arguments instead of...
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

10 years ago[AArch64] Remove/merge redundant iterators
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

11 years agohashtable.h: Fix whitespace and simplify function definitions with trailing return...
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

11 years agore PR tree-optimization/14541 ([tree-ssa] built-in math functions are not fully optim...
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

11 years agop5600.md (define_automaton, [...]): Replace p5600_agen_pipe and p5600_alu_pipe with...
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

11 years agoRename fuse-caller-save
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

11 years agoImprove optimization of ASan checks.
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

11 years agoconstraints.md (Yr): New.
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

11 years agore PR rtl-optimization/52714 (ICE in fixup_reorder_chain, at cfglayout.c:880)
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

11 years agotarget.def (fusion_priority): Wrap code with @smallexample.
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

11 years agore PR libstdc++/64161 (bootstrap error: condition_variable.cc:134:7: error: 'atexit...
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

11 years agoDaily bump.
GCC Administrator [Wed, 3 Dec 2014 00:16:28 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r218299

11 years agoerror.c (warnings_not_errors): Use bool.
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

11 years agolibcpp uses diagnostic->override_column to give a custom column number to diagnostics.
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

11 years agodownload_prerequisites: Download ISL 0.14 instead of 0.12.2.
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

11 years agoasan: support for globals in kernel
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

11 years agoavx512ifma-vpmaddhuq-2.c: Define AVX512IFMA.
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

11 years agoconstexpr.c (cxx_eval_check_shift_p): New function.
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

11 years agoline-map.h (linemap_assert_fails): Declare.
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

11 years agoline-map.c (linemap_add): Fix typo.
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