platform/upstream/linaro-gcc.git
9 years agoAvoid overuse of name "buffer" in tree-pretty-print.c
dmalcolm [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218405 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218404 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoPR jit/63854: Fix leak of ipa hooks
dmalcolm [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".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218403 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c++/64029
jason [Thu, 4 Dec 2014 20:37:30 +0000 (20:37 +0000)]
PR c++/64029
* decl.c (grok_reference_init): Complete array type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218402 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c++/64080
jason [Thu, 4 Dec 2014 20:37:24 +0000 (20:37 +0000)]
PR c++/64080
* constexpr.c (cxx_eval_store_expression): Handle non-decl store
targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218401 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agofix comment
jason [Thu, 4 Dec 2014 20:37:14 +0000 (20:37 +0000)]
fix comment

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218400 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoUpdate docs to reflect use of gimple subclasses
dmalcolm [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218399 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218397 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR middle-end/56917
mpolacek [Thu, 4 Dec 2014 19:20:12 +0000 (19:20 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218395 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-04 Tobias Burnus <burnus@net-b.de>
burnus [Thu, 4 Dec 2014 18:18:21 +0000 (18:18 +0000)]
2014-12-04  Tobias Burnus  <burnus@net-b.de>

        * Makefile.in: Remove CLOOGLIB and CLOOGINC.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218389 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-04 Thomas Preud'homme <thomas.preudhomme@arm.com>
thopre01 [Thu, 4 Dec 2014 16:39:47 +0000 (16:39 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218382 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-04 Richard Biener <rguenther@suse.de>
rguenth [Thu, 4 Dec 2014 14:44:57 +0000 (14:44 +0000)]
2014-12-04  Richard Biener  <rguenther@suse.de>

* doc/match-and-simplify.texi: Update for recent changes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218372 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-04 Martin Jambor <mjambor@suse.cz>
jamborm [Thu, 4 Dec 2014 14:37:01 +0000 (14:37 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218369 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-04 Richard Biener <rguenther@suse.de>
rguenth [Thu, 4 Dec 2014 12:35:42 +0000 (12:35 +0000)]
2014-12-04  Richard Biener  <rguenther@suse.de>

* gimple-fold.c (replace_stmt_with_simplification): Properly
fail when maybe_push_res_to_seq fails.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218353 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218349 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * doc/install.texi: Remove mentions of cloog and ppl.
fxcoudert [Thu, 4 Dec 2014 10:31:56 +0000 (10:31 +0000)]
* doc/install.texi: Remove mentions of cloog and ppl.
* doc/invoke.texi: Likewise

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218348 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c++/56493
jakub [Thu, 4 Dec 2014 09:46:45 +0000 (09:46 +0000)]
PR c++/56493
* convert.c (convert_to_real, convert_to_expr, convert_to_complex):
Handle COMPOUND_EXPR.

* c-c++-common/pr56493.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218345 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218344 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-04 Richard Biener <rguenther@suse.de>
rguenth [Thu, 4 Dec 2014 08:49:49 +0000 (08:49 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218343 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR testsuite/64145
fxcoudert [Thu, 4 Dec 2014 08:46:03 +0000 (08:46 +0000)]
PR testsuite/64145
* gcc.dg/graphite/isl-codegen-loop-dumping.c: Restore
-fgraphite-identity.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218342 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/isl.m4: Don't pass -DCLOOG_INT_GMP on islinc.
fxcoudert [Thu, 4 Dec 2014 08:45:33 +0000 (08:45 +0000)]
* config/isl.m4: Don't pass -DCLOOG_INT_GMP on islinc.
* configure: Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218341 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR libstdc++/64140
timshen [Thu, 4 Dec 2014 04:25:12 +0000 (04:25 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218340 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/rs6000/rs6000.md (floatsidf2_internal): Use std::swap.
dje [Thu, 4 Dec 2014 02:13:22 +0000 (02:13 +0000)]
    * 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218339 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218338 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR rtl-optimization/64010
uweigand [Wed, 3 Dec 2014 21:59:10 +0000 (21:59 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218335 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * Makefile.in: Use $(LN_S) instead of $(LN) -s and remove file first
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218334 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * expmed.c (expand_mult): Use std::swap.
jakub [Wed, 3 Dec 2014 20:35:45 +0000 (20:35 +0000)]
* expmed.c (expand_mult): Use std::swap.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218332 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c/59708
jakub [Wed, 3 Dec 2014 20:35:08 +0000 (20:35 +0000)]
PR c/59708
* expmed.c (expand_widening_mult): Return const0_rtx if
coeff is 0.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218331 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * doc/gimple.texi (gimple_build_assign_with_ops): Remove.
jakub [Wed, 3 Dec 2014 19:59:10 +0000 (19:59 +0000)]
* doc/gimple.texi (gimple_build_assign_with_ops): Remove.
(gimple_build_assign): Document the new overloads.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218330 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-03 François Dumont <fdumont@gcc.gnu.org>
fdumont [Wed, 3 Dec 2014 19:47:00 +0000 (19:47 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218329 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago/cp
paolo [Wed, 3 Dec 2014 18:41:42 +0000 (18:41 +0000)]
/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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218328 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[gcc]
meissner [Wed, 3 Dec 2014 18:39:22 +0000 (18:39 +0000)]
[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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218327 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/testsuite/ChangeLog:
manu [Wed, 3 Dec 2014 17:50:06 +0000 (17:50 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218326 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * Makefile.in (ALL_HOST_BACKEND_OBJS): Add $(GENGTYPE_OBJS),
jakub [Wed, 3 Dec 2014 16:44:27 +0000 (16:44 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218325 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * g++.dg/ext/visibility/anon[12].C: Require visibility support.
dje [Wed, 3 Dec 2014 16:28:13 +0000 (16:28 +0000)]
    * g++.dg/ext/visibility/anon[12].C: Require visibility support.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218324 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc:
amylaar [Wed, 3 Dec 2014 16:25:25 +0000 (16:25 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218323 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * include/bits/regex_compiler.h (_S_cache_size): Multiply the
mpolacek [Wed, 3 Dec 2014 16:16:33 +0000 (16:16 +0000)]
* include/bits/regex_compiler.h (_S_cache_size): Multiply the
RHS of the shift-expression by _UseCache::value.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218322 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR libstdc++/64168
redi [Wed, 3 Dec 2014 16:09:21 +0000 (16:09 +0000)]
PR libstdc++/64168
* include/std/future (_Deferred_state::_M_has_deferred): Fix return.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218321 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoRevert r215321.
ams [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218319 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-03 Richard Biener <rguenther@suse.de>
rguenth [Wed, 3 Dec 2014 14:08:07 +0000 (14:08 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218317 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-03 Martin Jambor <mjambor@suse.cz>
jamborm [Wed, 3 Dec 2014 14:05:51 +0000 (14:05 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218316 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibitm/ChangeLog:
uros [Wed, 3 Dec 2014 13:58:07 +0000 (13:58 +0000)]
libitm/ChangeLog:

* configure.tgt (x86_64): Tune -m32 multilib to generic.

libgomp/ChangeLog:

* configure.tgt (x86_64-*-linux*): Tune -m32 multilib to generic.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218315 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/testsuite/
tocarip [Wed, 3 Dec 2014 13:39:51 +0000 (13:39 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218313 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoRevert r218266
hjl [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218312 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-03 Richard Biener <rguenther@suse.de>
rguenth [Wed, 3 Dec 2014 13:10:39 +0000 (13:10 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218311 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Remove/merge redundant iterators
alalaw01 [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).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218310 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * include/bits/hashtable.h: Fix whitespace and simplify function
redi [Wed, 3 Dec 2014 12:00:02 +0000 (12:00 +0000)]
* include/bits/hashtable.h: Fix whitespace and simplify function
definitions with trailing return types.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218309 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-03 Richard Biener <rguenther@suse.de>
rguenth [Wed, 3 Dec 2014 11:55:14 +0000 (11:55 +0000)]
2014-12-03  Richard Biener  <rguenther@suse.de>

PR middle-end/14541
* builtins.c (fold_builtin_logarithm): Implement simplifications ...
* match.pd: ... here as patterns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218308 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-03 Prachi Godbole <prachi.godbole@imgtec.com>
prachigodbole [Wed, 3 Dec 2014 11:16:00 +0000 (11:16 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218307 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218305 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoImprove optimization of ASan checks.
ygribov [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218304 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
ienkovich [Wed, 3 Dec 2014 08:45:45 +0000 (08:45 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218303 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR rtl-optimization/52714
segher [Wed, 3 Dec 2014 06:00:54 +0000 (06:00 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218302 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * target.def (fusion_priority): Wrap code with @smallexample.
amker [Wed, 3 Dec 2014 05:25:40 +0000 (05:25 +0000)]
* target.def (fusion_priority): Wrap code with @smallexample.
* doc/tm.texi: Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218301 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR libstdc++/64161
redi [Wed, 3 Dec 2014 01:34:03 +0000 (01:34 +0000)]
PR libstdc++/64161
* src/c++11/condition_variable.cc: Include <cstdlib>.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218300 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218299 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-02 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 2 Dec 2014 23:39:49 +0000 (23:39 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218296 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibcpp uses diagnostic->override_column to give a custom column number to
manu [Tue, 2 Dec 2014 23:16:21 +0000 (23:16 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218295 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-02 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 2 Dec 2014 22:41:01 +0000 (22:41 +0000)]
2014-12-02  Tobias Burnus  <burnus@net-b.de>

        * download_prerequisites: Download ISL 0.14 instead of 0.12.2.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218294 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoasan: support for globals in kernel
dvyukov [Tue, 2 Dec 2014 18:58:59 +0000 (18:58 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218281 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gcc.target/i386/avx512ifma-vpmaddhuq-2.c: Define AVX512IFMA.
uros [Tue, 2 Dec 2014 17:32:27 +0000 (17:32 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218280 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * constexpr.c (cxx_eval_check_shift_p): New function.
mpolacek [Tue, 2 Dec 2014 17:23:34 +0000 (17:23 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218279 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibcpp/ChangeLog:
manu [Tue, 2 Dec 2014 16:03:31 +0000 (16:03 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218277 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-02 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Tue, 2 Dec 2014 16:00:33 +0000 (16:00 +0000)]
2014-12-02  Manuel López-Ibáñez  <manu@gcc.gnu.org>

        * line-map.c (linemap_add): Fix typo.
        (linemap_line_start): Fix whitespace.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218276 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/64115
uweigand [Tue, 2 Dec 2014 14:27:46 +0000 (14:27 +0000)]
PR target/64115
* config/rs6000/rs6000.c (rs6000_delegitimize_address): Remove
invalid UNSPEC_TOCREL sanity check under ENABLE_CHECKING.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218273 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoStop only if there aren't any usable algorithms
hjl [Tue, 2 Dec 2014 14:10:23 +0000 (14:10 +0000)]
Stop only if there aren't any usable algorithms

When searching for an usable algorithm with -minline-all-stringops,
decide_alg stops when it sees libcall even if there is a usable
algorithm.  It goes into an infinite loop.  This patch changes
decide_alg to stop searching only if there aren't any usable algorithms.
Testd on Linux/x86-64.

gcc/

PR target/64108
* config/i386/i386.c (decide_alg): Stop only if there aren't
any usable algorithms.

gcc/testsuite/

PR target/64108
* gcc.target/i386/memset-strategy-2.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218272 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-02 Tom de Vries <tom@codesourcery.com>
vries [Tue, 2 Dec 2014 13:35:10 +0000 (13:35 +0000)]
2014-12-02  Tom de Vries  <tom@codesourcery.com>

PR rtl-optimization/63718
* config/arm/arm.c (arm_option_override): Disable fuse-caller-save for
Thumb1.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218271 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * doc/xml/manual/status_cxx2011.xml: Update.
redi [Tue, 2 Dec 2014 13:26:18 +0000 (13:26 +0000)]
* doc/xml/manual/status_cxx2011.xml: Update.
* doc/xml/manual/status_cxx2014.xml: Update.
* doc/html/manual/status.html: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218270 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-02 Richard Biener <rguenther@suse.de>
rguenth [Tue, 2 Dec 2014 13:09:13 +0000 (13:09 +0000)]
2014-12-02  Richard Biener  <rguenther@suse.de>

* match.pd: When combining divisions exclude the degenerate
case involving INT_MIN from overflow handling.

* gcc.dg/torture/20141202-1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218269 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd a test for PR ipa/63814
hjl [Tue, 2 Dec 2014 12:47:29 +0000 (12:47 +0000)]
Add a test for PR ipa/63814

PR ipa/63814
* g++.dg/ipa/pr63814.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218268 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64/testsuite] Add missing testcase
jiwang [Tue, 2 Dec 2014 11:57:08 +0000 (11:57 +0000)]
[AArch64/testsuite] Add missing testcase

  Add the missing testcase.
  (forget svn add in previous commit ...)

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218267 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[PATCH] Improve spillcost of literal pool loads
jiwang [Tue, 2 Dec 2014 11:55:08 +0000 (11:55 +0000)]
[PATCH] Improve spillcost of literal pool loads

2014-12-02  Wilco Dijkstra  <wdijkstr@arm.com>

  gcc/
    ira-costs.c (scan_one_insn): Improve spill cost adjustment.

  gcc/testsuite
    gcc.target/aarch64/remat1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218266 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-02 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 2 Dec 2014 10:12:27 +0000 (10:12 +0000)]
2014-12-02  Martin Jambor  <mjambor@suse.cz>

PR ipa/63814
* ipa-cp.c (same_node_or_its_all_contexts_clone_p): New function.
(cgraph_edge_brings_value_p): New parameter dest, use
same_node_or_its_all_contexts_clone_p and check availability.
(cgraph_edge_brings_value_p): Likewise.
(get_info_about_necessary_edges): New parameter dest, pass it to
cgraph_edge_brings_value_p.  Update caller.
(gather_edges_for_value): Likewise.
(perhaps_add_new_callers): Use cgraph_edge_brings_value_p to check
both the destination and availability.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218265 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/64113
uros [Tue, 2 Dec 2014 10:04:14 +0000 (10:04 +0000)]
PR target/64113
* config/alpha/alpha.md (call_value_osf_tlsgd): Do not split insn
using post-reload splitter.  Use peephole2 pass instead.
(call_value_osf_tlsldm): Ditto.
(TLS_CALL): New int iterator.
(tls): New int attribute.
(call_value_osf_<tls>): Merge insn pattern from call_value_osf_tlsgd
and call_value_tlsldm using TLS_CALL int iterator.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218264 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-02 Richard Biener <rguenther@suse.de>
rguenth [Tue, 2 Dec 2014 09:30:15 +0000 (09:30 +0000)]
2014-12-02  Richard Biener  <rguenther@suse.de>
Prathamesh Kulkarni  <bilbotheelffriend@gmail.com>

* genmatch.c: Include hash-set.h.
(fatal_at): Add source_location overload.
(parser::record_operlist): New method.
(parser::push_simplify): Likewise.
(parser::oper_lists_set): New member.
(parser::oper_lists): Likewise.
(parser::parse_operation): Record seen operator list references.
(parser::parse_c_expr): Likewise.
(parser::parse_simplify): Init oper_lists_set and oper_lists
and use push_simplify.
(parser::parser): Init oper_lists_set and oper_lists.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218261 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-02 Richard Biener <rguenther@suse.de>
rguenth [Tue, 2 Dec 2014 09:03:44 +0000 (09:03 +0000)]
2014-12-02  Richard Biener  <rguenther@suse.de>

* match.pd: Restrict division combining to trunc_div and
exact_div.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218260 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-02 Richard Biener <rguenther@suse.de>
rguenth [Tue, 2 Dec 2014 08:50:57 +0000 (08:50 +0000)]
2014-12-02  Richard Biener  <rguenther@suse.de>

PR fortran/64137
* trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Check
proper expressions type, use proper type for computing
-Huge - 1.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218259 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/sparc/sparc.c (sparc_atomic_assign_expand_fenv):
jakub [Tue, 2 Dec 2014 07:45:36 +0000 (07:45 +0000)]
* config/sparc/sparc.c (sparc_atomic_assign_expand_fenv):
Remove NULL last argument from create_tmp_var calls.
* config/mips/mips.c (mips_atomic_assign_expand_fenv): Likewise.
* config/arm/arm-builtins.c (arm_atomic_assign_expand_fenv): Likewise.
* config/i386/i386.c (add_condition_to_bb,
ix86_atomic_assign_expand_fenv): Likewise.
* config/mep/mep.c (mep_gimplify_va_arg_expr): Likewise.
* config/xtensa/xtensa.c (xtensa_gimplify_va_arg_expr): Likewise.
* config/aarch64/aarch64-builtins.c
(aarch64_atomic_assign_expand_fenv): Likewise.
* config/stormy16/stormy16.c (xstormy16_gimplify_va_arg_expr):
Likewise.
* config/rs6000/rs6000.c (rs6000_atomic_assign_expand_fenv): Likewise.
* config/alpha/alpha.c (alpha_atomic_assign_expand_fenv): Likewise.
* config/sh/sh.c (sh_gimplify_va_arg_expr): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218257 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/alpha/alpha.c (alpha_gimple_fold_builtin): Use
jakub [Tue, 2 Dec 2014 07:32:54 +0000 (07:32 +0000)]
* config/alpha/alpha.c (alpha_gimple_fold_builtin): Use
gimple_build_assign instead of gimple_build_assign_with_ops and swap
the order of first two arguments.
* config/aarch64/aarch64-builtins.c (aarch64_gimple_fold_builtin):
Likewise.  Remove last NULL_TREE argument.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218256 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDefine *_at_thread_exit() functions.
redi [Tue, 2 Dec 2014 01:51:25 +0000 (01:51 +0000)]
Define *_at_thread_exit() functions.

* config/abi/pre/gnu.ver: Add new exports.
* include/std/condition_variable (notify_all_at_thread_exit): Declare.
(__at_thread_exit_elt): New base class.
* include/std/future: Add comments documenting the implementation.
(__future_base::_State_baseV2::_State_baseV2()): Use brace-or-equal
initializers and define constructor as defaulted.
(__future_base::_State_baseV2::_M_ready): Replace member function
with member variable.
(__future_base::_State_baseV2::_M_set_result): Set _M_ready.
(__future_base::_State_baseV2::_M_set_delayed_result): Define.
(__future_base::_State_baseV2::_M_break_promise): Set _M_ready.
(__future_base::_State_baseV2::_Make_ready): New helper class.
(__future_base::_Deferred_state::_M_has_deferred): Remove requirement
for caller to own mutex.
(__future_base::_Async_state_impl::~_Async_state_impl): Call join
directly.
(__future_base::_Task_state_base::_M_run): Take arguments by
reference.
(__future_base::_Task_state_base::_M_run_delayed): Declare new pure
virtual function.
(__future_base::_Task_state::_M_run_delayed): Define override.
(promise::set_value_at_thread_exit): Define.
(promise::set_exception_at_thread_exit): Define.
(packaged_task::make_ready_at_thread_exit): Define.
* src/c++11/condition_variable.cc (notify_all_at_thread_exit): Define.
* src/c++11/future.cc
(__future_base::_State_baseV2::_Make_ready::_M_set): Define.
* testsuite/30_threads/condition_variable/members/3.cc: New.
* testsuite/30_threads/packaged_task/members/at_thread_exit.cc: New.
* testsuite/30_threads/promise/members/at_thread_exit.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218255 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Tue, 2 Dec 2014 00:16:25 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218254 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agotestsuite/
olegendo [Mon, 1 Dec 2014 23:53:12 +0000 (23:53 +0000)]
testsuite/
PR rtl-optimization/59278
* gcc.target/sh/pr59278.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218251 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR rtl-optimization/59278
segher [Mon, 1 Dec 2014 23:48:26 +0000 (23:48 +0000)]
PR rtl-optimization/59278
combine (reg_dead_at_p): Consider REG_UNUSED notes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218250 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * combine.c (try_combine): Use is_parallel_of_n_reg_sets some more.
segher [Mon, 1 Dec 2014 22:37:34 +0000 (22:37 +0000)]
* combine.c (try_combine): Use is_parallel_of_n_reg_sets some more.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218249 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * combine.c (is_parallel_of_n_reg_sets): New function.
segher [Mon, 1 Dec 2014 22:36:12 +0000 (22:36 +0000)]
* combine.c (is_parallel_of_n_reg_sets): New function.
(can_split_parallel_of_n_reg_sets): New function.
(try_combine): If I2 is a PARALLEL of two SETs, split it into
two insns if possible.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218248 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-12-01 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 1 Dec 2014 19:07:37 +0000 (19:07 +0000)]
2014-12-01  Tobias Burnus  <burnus@net-b.de>
            Jack Howarth  <howarth@bromo.med.uc.edu>

        PR middle-end/64017
        * configure.ac
        * (ac_has_isl_schedule_constraints_compute_schedule):
        New check.
        * doc/install.texi (ISL): Permit ISL 0.14.
        * graphite-optimize-isl.c (getScheduleForBandList,
        * optimize_isl):
        Conditionally use ISL 0.13+ functions.
        * graphite-interchange.c: Make 'extern "C"' conditional.
        * graphite-isl-ast-to-gimple.c: Ditto.
        * graphite-poly.c: Ditto.
        * graphite-sese-to-poly.c: Ditto.
        * config.in: Regenerate.
        * gcc/configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218247 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoImprovements to documentation of gcc_jit_context_release
dmalcolm [Mon, 1 Dec 2014 18:53:44 +0000 (18:53 +0000)]
Improvements to documentation of gcc_jit_context_release

gcc/jit/ChangeLog:
* docs/examples/tut02-square.c (main): Release the context
earlier, to show that this is possible.  Update error-handling
to avoid a double-release of the context, and to avoid
releasing a NULL result.
* docs/intro/tutorial02.rst: Discuss gcc_jit_context_release.
* docs/topics/functions.rst (GCC_JIT_FUNCTION_EXPORTED): Emphasize
* docs/topics/results.rst (gcc_jit_result): Mention that this
controls the lifetimes of machine code functions.
(gcc_jit_result_get_code): Spell out the requirements for this
to succeed, and the lifetime of the result.
(gcc_jit_result_release): Mention that this invalidates any code
that was obtained from the result.
* docs/_build/texinfo/libgccjit.texi: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218245 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago/cp
paolo [Mon, 1 Dec 2014 18:52:05 +0000 (18:52 +0000)]
/cp
2014-12-01  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60859
* decl.c (reshape_init_r): Do not reject value-initialization of
scalar array element.

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

PR c++/60859
* g++.dg/cpp0x/initlist88.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218244 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoPR jit/64018: Add description of error-handling to the JIT tutorial
dmalcolm [Mon, 1 Dec 2014 18:47:31 +0000 (18:47 +0000)]
PR jit/64018: Add description of error-handling to the JIT tutorial

gcc/jit/ChangeLog:
PR jit/64018
* docs/intro/tutorial02.rst: Spell out lifetime of generated code.
Add description of error-handling, taken in part from...
* docs/topics/contexts.rst (Error-handling): Expand, and move some
content to tutorial02.rst.
* docs/_build/texinfo/libgccjit.texi: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218243 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * combine.c (distribute_links): Handle multiple SETs.
segher [Mon, 1 Dec 2014 18:28:07 +0000 (18:28 +0000)]
* combine.c (distribute_links): Handle multiple SETs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218242 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * combine.c (struct insn_link): New field `regno'.
segher [Mon, 1 Dec 2014 18:26:20 +0000 (18:26 +0000)]
* combine.c (struct insn_link): New field `regno'.
(alloc_insn_link): New parameter `regno'.  Use it.
(find_single_use): Check the new field.
(can_combine_def_p, can_combine_use_p): New functions.  Split
off from ...
(create_log_links): ... here.  Correct data type of `regno'.
Adjust call to alloc_insn_link.
(adjust_for_new_dest): Find regno, use it in call to
alloc_insn_link.
(try_combine): Check reg_used_between_p when combining a PARALLEL
as earlier insn.  Adjust call to alloc_insn_link.
(distribute_links): Check the new field.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218241 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoPR jit/64020: Fixes to handling of builtins
dmalcolm [Mon, 1 Dec 2014 18:23:37 +0000 (18:23 +0000)]
PR jit/64020: Fixes to handling of builtins

PR jit/64020
* docs/topics/types.rst (Standard types) Add new enum values to
the table of enum gcc_jit_types: GCC_JIT_TYPE_COMPLEX_FLOAT,
GCC_JIT_TYPE_COMPLEX_DOUBLE, GCC_JIT_TYPE_COMPLEX_LONG_DOUBLE.
Widen the left-hand column so that
GCC_JIT_TYPE_COMPLEX_LONG_DOUBLE will fit.
* docs/_build/texinfo/libgccjit.texi: Regenerate.

* jit-builtins.c: Include stringpool.h and jit-playback.h.
Move everything out of the gcc::jit::recording namespace into
just gcc::jit.
(struct builtin_data): Add fields "fnclass", "attr", and
"implicit_p".
(DEF_BUILTIN): Update macro so populate the new fields.
(builtins_manager::builtins_manager): Update for move out of
recording namespace.  Initialize the m_attributes array.
(builtins_manager::get_builtin_function): Likewise.
(builtins_manager::get_builtin_function_by_id): New function.
(builtins_manager::make_builtin_function): Update for move out of
recording namespace.  Add fix for PR jit/64020 by detecting
specific builtin ids and having them ensure that builtins for
other ids are created as necessary.
(builtins_manager::get_type): Update for move out of recording
namespace.
(builtins_manager::make_type): Likewise.  Add some missing
#undefs.
(builtins_manager::make_primitive_type): Update for move out of
recording namespace.  Implement the three BT_COMPLEX_ cases and
BT_DOUBLE_PTR.
(builtins_manager::make_fn_type): Update for move out of recording
namespace.
(builtins_manager::make_ptr_type): Likewise.
(builtins_manager::finish_playback): New function.
(builtins_manager::get_class): New function.
(builtins_manager::implicit_p): New function.
(builtins_manager::get_attrs_tree): Two new functions.
(builtins_manager::make_attrs_tree): New function.

* jit-builtins.h: Move everything out of the gcc::jit::recording
namespace into just gcc::jit.
(enum built_in_attribute): New.
(builtins_manager::builtins_manager): Update decl for namespace
change.
(builtins_manager::get_builtin_function): Likewise.
(builtins_manager::get_class): New.
(builtins_manager::implicit_p): New.
(builtins_manager::get_attrs_tree): Two new functions.
(builtins_manager::make_attrs_tree): New function.
(builtins_manager::finish_playback): New.
(builtins_manager::get_builtin_function_by_id): New.
(builtins_manager::make_builtin_function): Update decl for
namespace change.
(builtins_manager::get_type): Likewise.
(builtins_manager::make_type): Likewise.
(builtins_manager::make_primitive_type): Likewise.
(builtins_manager::make_fn_type): Likewise.
(builtins_manager::make_ptr_type): Likewise.
(builtins_manager): Likewise for fields.  Add new field
"m_attributes".

* jit-common.h (NUM_GCC_JIT_TYPES): Update.
(builtins_manager): Update forward decl to reflect namespace
change.

* jit-playback.c: Include attribs.h and jit-builtins.h.
(gcc::jit::playback::context::get_tree_node_for_type): Add cases
for the new COMPLEX_ types.
(gcc::jit::playback::context::new_function): If creating a
builtin, set the DECL_BUILT_IN_CLASS and attributes on the fndecl,
and call set_builtin_decl.
(gcc::jit::playback::context::replay): If we have a
builtins_manager, call its finish_playback method when we're done.

* jit-playback.h:
(gcc::jit::playback::context::get_builtins_manager): New function.

* jit-recording.c
(gcc::jit::recording::context::get_builtins_manager): New function.
(gcc::jit::recording::get_builtin_function): Use
get_builtins_manager, in case we're a child context.
(gcc::jit::recording::memento_of_get_type::dereference): Add the
COMPLEX_ types.
(gcc::jit::recording::memento_of_get_type::is_int): Likewise.
(gcc::jit::recording::memento_of_get_type::is_float): Likewise.
(gcc::jit::recording::memento_of_get_type::is_bool): Likewise.
(get_type_strings): Likewise.

* jit-recording.h
(gcc::jit::recording::context::get_builtins_manager): New.

* libgccjit.h (enum gcc_jit_types): Add
GCC_JIT_TYPE_COMPLEX_FLOAT, GCC_JIT_TYPE_COMPLEX_DOUBLE,
GCC_JIT_TYPE_COMPLEX_LONG_DOUBLE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218240 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agojit-builtins.c: Fix segfault on unsupported builtins
dmalcolm [Mon, 1 Dec 2014 18:16:37 +0000 (18:16 +0000)]
jit-builtins.c: Fix segfault on unsupported builtins

gcc/jit/ChangeLog:
* jit-builtins.c
(gcc::jit::recording::builtins_manager::get_builtin_function):
Check for NULL return from make_builtin_function.
(gcc::jit::recording::builtins_manager::make_builtin_function):
Check for NULL return from get_type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218239 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agojit-playback: Move dso-creation into its own function
dmalcolm [Mon, 1 Dec 2014 18:02:45 +0000 (18:02 +0000)]
jit-playback: Move dso-creation into its own function

gcc/jit/ChangeLog:
* jit-playback.c (gcc::jit::playback::context::compile): Move DSO
creation code into...
(gcc::jit::playback::context::convert_to_dso): New function.
* jit-playback.h (gcc::jit::playback::context::convert_to_dso):
New function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218238 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agojit-playback: Move argv-creation to its own function
dmalcolm [Mon, 1 Dec 2014 17:56:34 +0000 (17:56 +0000)]
jit-playback: Move argv-creation to its own function

gcc/jit/ChangeLog:
* jit-playback.c (gcc::jit::playback::context::compile): Use an
auto_vec<const char *> rather than a const char *[20] for the
top-level argv, and move the logic to build it to...
(gcc::jit::playback::context::make_fake_args): New function.
* jit-playback.h (gcc::jit::playback::context::make_fake_args):
New function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218237 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoMove gcc_jit_result implementation to a new files jit-result.{h|c}
dmalcolm [Mon, 1 Dec 2014 17:52:03 +0000 (17:52 +0000)]
Move gcc_jit_result implementation to a new files jit-result.{h|c}

gcc/jit/ChangeLog:
* Make-lang.in (jit_OBJS): Add jit/jit-result.o.
* jit-playback.c: Include new header jit-result.h.
(gcc::jit::result::result): Move to new file jit-result.c.
(gcc::jit::result::~result): Likewise.
(gcc::jit::playback::result): Likewise.
* jit-recording.h (class gcc::jit::result): Move to new
header jit-result.h.
* jit-result.c: New file, to contain...
(gcc::jit::result::result): Move here from jit-playback.c,
removing erroneous "playback" namespace from comment.
(gcc::jit::result::~result): Likewise.
(gcc::jit::playback::result): Likewise.
* jit-result.h: New file, to contain...
(class gcc::jit::result): Move from jit-recording.h.
* libgccjit.c: Include jit-result.h.
(gcc_jit_result_get_code): Update comment to reflect move
of implementation.
(gcc_jit_result_release): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218236 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoPR jit/63854: Fix leaks in toyvm.c
dmalcolm [Mon, 1 Dec 2014 17:40:03 +0000 (17:40 +0000)]
PR jit/63854: Fix leaks in toyvm.c

gcc/jit/ChangeLog:
PR jit/63854
* docs/examples/tut04-toyvm/toyvm.c
(toyvm_compiled_function): New typedef.
(toyvm_compiled_func) Rename to...
(toyvm_compiled_code) ...this.
(struct toyvm_compiled_function): New struct.
(toyvm_function_compile): Return a toyvm_compiled_function *
rather than a toyvm_compiled_func, so that the caller can fully
clean things up.  Free "funcname".
(test_script): Update for change to toyvm_function_compile.
Clean up the toyvm_compiled_function.
(main): Likewise.
(docs/intro/tutorial04.rst): Update to reflect the above changes,
and to better spell out the lifetime of the compiled code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218234 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoPR jit/63854: Fix leak in real.c for i386:init_ext_80387_constants
dmalcolm [Mon, 1 Dec 2014 17:28:28 +0000 (17:28 +0000)]
PR jit/63854: Fix leak in real.c for i386:init_ext_80387_constants

gcc/ChangeLog:
PR jit/63854
* real.c (real_from_string): Add missing mpfr_clear.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218233 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64][obvious] Gate fuse_adrp_add_1.c test on aarch64_small.
ktkachov [Mon, 1 Dec 2014 17:26:35 +0000 (17:26 +0000)]
[AArch64][obvious] Gate fuse_adrp_add_1.c test on aarch64_small.

* gcc.target/aarch64/fuse_adrp_add_1.c: Gate test on aarch64_small.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218232 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoPR jit/63854: Fix leak within jit-builtins.c
dmalcolm [Mon, 1 Dec 2014 17:22:19 +0000 (17:22 +0000)]
PR jit/63854: Fix leak within jit-builtins.c

gcc/jit/ChangeLog:
PR jit/63854
* jit-builtins.c
(gcc::jit::recording::builtins_manager::make_fn_type): Call the
context's new_function_type method, rather than directly creating
a function_type instance.
* jit-recording.c
(gcc::jit::recording::context::new_function_type): New method,
adapted from part of...
(gcc::jit::recording::context::new_function_ptr_type): ...this.
Update to call new_function_type.
* jit-recording.h
(gcc::jit::recording::context::new_function_type): New method.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218231 138bc75d-0d04-0410-961f-82ee72b054a4