Jan Hubicka [Mon, 8 Jun 2015 00:13:40 +0000 (00:13 +0000)]
Fix my previous commit.
From-SVN: r224202
Jan Hubicka [Sun, 7 Jun 2015 21:30:58 +0000 (23:30 +0200)]
alias.c (get_alias_set): Be ready for TYPE_CANONICAL of ptr_type_node to not be ptr_to_node.
* alias.c (get_alias_set): Be ready for TYPE_CANONICAL
of ptr_type_node to not be ptr_to_node.
* tree.c (gimple_types_compatible_p): Do not match TREE_CODE of
TREE_TYPE of pointers.
* gimple-expr.c (useless_type_conversion): Reorder the check for
function pointers and TYPE_CANONICAL.
* lto.c (hash_canonical_type): Do not hash TREE_CODE of TREE_TYPE of
pointers.
* gfortran.dg/lto/bind_c-1_0.f90: New testcase.
* gfortran.dg/lto/bind_c-1_1.c: New testcase.
* gcc.dg/lto/c-compatible-types_0.c: Rename to ...
* gcc.dg/lto/c-compatible-types-1_0.c: this one; fix template
* gcc.dg/lto/c-compatible-types_1.c: Rename to ...
* gcc.dg/lto/c-compatible-types-1_1.c: this one; harden for
-fshort-enum.
From-SVN: r224201
François Dumont [Sun, 7 Jun 2015 20:45:57 +0000 (20:45 +0000)]
stl_tree.h (_Rb_tree<>::__is_transparent<>): Move to outer scope and rename to ...
2015-06-07 François Dumont <fdumont@gcc.gnu.org>
* include/bits/stl_tree.h (_Rb_tree<>::__is_transparent<>): Move to
outer scope and rename to ...
(std::__hash_is_transparent<>): ... this.
* include/debug/stl_map.h (map::find<>,
map::lower_bound<>, map::upper_bound<>, map::equal_range<>): New
member function templates to perform heterogeneous lookup.
* include/debug/stl_multimap.h (multimap::find<>,
multimap::lower_bound<>, multimap::upper_bound<>,
multimap::equal_range<>): Likewise.
* include/debug/stl_multiset.h (multiset::find<>,
multiset::lower_bound<>, multiset::upper_bound<>,
multiset::equal_range<>): Likewise.
* include/debug/stl_set.h (set::find<>,
set::lower_bound<>, set::upper_bound<>, set::equal_range<>): Likewise.
* include/profile/stl_map.h (map::find<>, map::count<>,
map::lower_bound<>, map::upper_bound<>, map::equal_range<>): Likewise.
* include/profile/stl_multimap.h (multimap::find<>, multimap::count<>,
multimap::lower_bound<>, multimap::upper_bound<>,
multimap::equal_range<>): Likewise.
* include/profile/stl_multiset.h (multiset::find<>, multiset::count<>,
multiset::lower_bound<>, multiset::upper_bound<>,
multiset::equal_range<>): Likewise.
* include/profile/stl_set.h (set::find<>, set::count<>,
set::lower_bound<>, set::upper_bound<>, set::equal_range<>): Likewise.
* testsuite/23_containers/map/operations/1.cc: Check const variants.
* testsuite/23_containers/multimap/operations/1.cc: Likewise.
* testsuite/23_containers/multiset/operations/1.cc: Likewise.
* testsuite/23_containers/set/operations/1.cc: Likewise.
From-SVN: r224200
GCC Administrator [Sun, 7 Jun 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r224198
John David Anglin [Sat, 6 Jun 2015 18:33:06 +0000 (18:33 +0000)]
re PR bootstrap/66319 (gcov-tool.c:84:65: error: invalid conversion from 'int (*)(const c har*, const stat*, int, FTW*)' to 'int (*)(const char*, const stat*, int, FTW)')
PR bootstrap/66319
* config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Rearrange builtin
defines. Define _LARGEFILE_SOURCE and _LARGEFILE64_SOURCE for c++.
Define _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for c++ if unix95 or
later.
* config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Likewise.
Define _INCLUDE_STDC_SOURCE_PRE_199901, _INCLUDE_STDC_SOURCE_199901,
_INCLUDE_XOPEN_SOURCE_PRE_500, _INCLUDE_XOPEN_SOURCE_520,
_INCLUDE_XOPEN_SOURCE_PRE_600 and _INCLUDE_XOPEN_SOURCE_600 for c++
and non iso if unix2003.
From-SVN: r224192
Thomas Koenig [Sat, 6 Jun 2015 16:16:03 +0000 (16:16 +0000)]
re PR fortran/47359 (Recursive functions of intrinsic names generates invalid assembler)
2015-06-06 Thomas Koenig <tkoenig@netcologne.de>
PR fortran/47359
* ChangeLog: Correct PR number in previous commit.
From-SVN: r224191
Thomas Koenig [Sat, 6 Jun 2015 16:12:39 +0000 (16:12 +0000)]
re PR fortran/47359 (Recursive functions of intrinsic names generates invalid assembler)
2015-06-06 Thomas Koenig <tkoenig@netcologne.de>
PR fortran/47359
* arith.c (eval_intrinsic_op): Set warn flag for
gfc_type_convert_binary if -Wconversion or -Wconversion-extra
are set.
(wprecision_real_real): New function.
(wprecision_int_real): New function.
(gfc_int2int): If -fno-range-check and -Wconversion are specified
and it is a narrowing conversion, warn.
(gfc_int2real): If there is a change in value for the conversion,
warn.
(gfc_int2complex): Likewise.
(gfc_real2int): If there is a fractional part to the real number,
warn with -Wconversion, otherwise warn with -Wconversion-extra.
(gfc_real2real): Emit warning if the constant was changed by
conversion with either -Wconversion or -Wconversion-extra. With
-Wconversion-extra, warn if no warning was issued earlier.
(gfc_real2complex): Likewise.
(gfc_complex2int): For -Wconversion or -Wconversion-extra, if
there was an imaginary part, warn; otherwise, warn for change in
value. Warn with -Wconversion-extra if no other warning was
issued.
(gfc_complex2real): For -Wconversion or -Wconversion-extra, if
there was an imaginary part, warn; otherwise, warn for change in
value. Warn with -Wconversion-extra if no other warning was
issued.
(gfc_complex2complex): For -Wconversion, warn if the value of
either the real or the imaginary part was changed. Warn for
-Wconversion-extra if no prior warning was issued.
* expr.c (gfc_check_assign): Remove check for change in value.
* primary.c (match_real_constant): For -Wconversion-extra, check
against a number in which the last non-zero digit has been
replaced with a zero. If the number compares equal, warn.
* intrinsic.c (gfc_convert_type_warn): Do not warn about constant
conversions.
2015-06-06 Thomas Koenig <tkoenig@netcologne.de>
PR fortran/47359
* gfortran.dg/array_constructor_type_17.f03: Adjust error message.
* gfortran.dg/warn_conversion.f90: Add warning for change in value
for assignment.
* gfortran.dg/warn_conversion_3.f90: Add warnings.
* gfortran.dg/warn_conversion_5.f90: New test.
* gfortran.dg/warn_conversion_6.f90: New test.
* gfortran.dg/warn_conversion_7.f90: New test.
From-SVN: r224190
Aldy Hernandez [Sat, 6 Jun 2015 15:16:02 +0000 (15:16 +0000)]
* dwarf2out.c (gen_lexical_block_die): Initialize stmt_die.
From-SVN: r224189
Richard Sandiford [Sat, 6 Jun 2015 13:14:45 +0000 (13:14 +0000)]
emit-rtl.c, [...]: Replace rtx base types with more derived ones.
gcc/
* emit-rtl.c, expr.c, gcse.c, optabs.c, optabs.h, print-rtl.c,
rtl.h, bb-reorder.c, builtins.c, calls.c, cfgbuild.c, cfgexpand.c,
cfgrtl.c, cilk-common.c, config/i386/i386.md, cse.c, dwarf2cfi.c,
except.c, final.c, function.c, gcse-common.c, genemit.c,
haifa-sched.c, ifcvt.c, jump.c, loop-invariant.c, loop-iv.c,
lra-constraints.c, lra.c, reload1.c, resource.c, rtlanal.c,
sched-deps.c, sched-ebb.c, sel-sched-ir.c, sel-sched.c,
shrink-wrap.c, stmt.c, store-motion.c: Replace rtx base types with
more derived ones.
From-SVN: r224187
Eric Botcazou [Sat, 6 Jun 2015 07:49:11 +0000 (07:49 +0000)]
Add missing entry.
From-SVN: r224185
Eric Botcazou [Sat, 6 Jun 2015 07:44:03 +0000 (07:44 +0000)]
utils.c (note_types_used_by_globals): Tweak comment.
* gcc-interface/utils.c (note_types_used_by_globals): Tweak comment.
* gcc-interface/decl.c (gnat_to_gnu_entity): Likewise.
From-SVN: r224184
Mikhail Maltsev [Sat, 6 Jun 2015 05:39:16 +0000 (05:39 +0000)]
Promote types of rtl expressions to rtx_insn in gen_split and gen_peephole2
* combine.c (combine_split_insns): Remove cast.
* config/bfin/bfin.c (hwloop_fail): Add cast in try_split call.
* config/sh/sh.c (sh_try_split_insn_simple): Remove cast.
* config/sh/sh_treg_combine.cc (sh_treg_combine::execute): Add cast.
* emit-rtl.c (try_split): Promote type of trial argument to rtx_insn.
* genemit.c (gen_split): Change return type of generated functions to
rtx_insn.
* genrecog.c (get_failure_return): Use NULL instead of NULL_RTX.
(print_subroutine_start): Promote rtx to rtx_insn in gen_split_* and
gen_peephole2_* functions.
(print_subroutine, main): Likewise.
* recog.c (peephole2_optimize): Remove cast.
(peep2_next_insn): Promote return type to rtx_insn.
* recog.h (peep2_next_insn): Fix prototype.
* rtl.h (try_split, split_insns): Likewise.
From-SVN: r224183
DJ Delorie [Sat, 6 Jun 2015 05:15:16 +0000 (01:15 -0400)]
msp430.c (msp430_asm_integer): Support addition and subtraction too.
* config/msp430/msp430.c (msp430_asm_integer): Support addition
and subtraction too.
From-SVN: r224182
GCC Administrator [Sat, 6 Jun 2015 00:16:17 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r224181
Kaz Kojima [Fri, 5 Jun 2015 23:36:26 +0000 (23:36 +0000)]
re PR libstdc++/6641 (-D__USE_MALLOC doesn't link)
PR target/6641
* Split Snd constraint into Sid and Ssd. Disparage Sid/z alternative
of *mov<mode> insn to avoid spill failure.
From-SVN: r224177
Steven G. Kargl [Fri, 5 Jun 2015 23:01:22 +0000 (23:01 +0000)]
re PR fortran/66347 (Seg fault (ICE) on compile)
2015-06-05 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/66347
* resolve.c (apply_default_init_local): Do not dereference a NULL
pointer.
2015-06-05 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/66347
* gfortran.dg/blockdata_9.f: New test.
From-SVN: r224175
David Malcolm [Fri, 5 Jun 2015 21:20:07 +0000 (21:20 +0000)]
Remove jit_langhook_post_compilation_parsing_cleanups
gcc/jit/ChangeLog:
* dummy-frontend.c
(jit_langhook_post_compilation_parsing_cleanups): Remove.
(LANG_HOOKS_POST_COMPILATION_PARSING_CLEANUPS): Remove
* jit-playback.c (gcc::jit::playback::context::new_global): Add
call to varpool_node::finalize_decl.
(gcc::jit::playback::context::finalize_global_decls): Remove.
* jit-playback.h
(gcc::jit::playback::context::finalize_global_decls): Remove.
From-SVN: r224173
Thomas Koenig [Fri, 5 Jun 2015 20:51:08 +0000 (20:51 +0000)]
re PR fortran/66385 (ICE: FORALL writing multiple elements of one array)
2015-06-05 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/66385
* frontend-passes.c (combine_array_constructor): Return early if
inside a FORALL loop.
2015-06-05 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/66385
* gfortran.dg/forall_17.f90: New test.
From-SVN: r224172
David Malcolm [Fri, 5 Jun 2015 20:23:19 +0000 (20:23 +0000)]
Fix build of jit after debug-early merger
gcc/jit/ChangeLog:
* dummy-frontend.c (jit_langhook_write_globals): Rename to...
(jit_langhook_post_compilation_parsing_cleanups): ...this, and
eliminate calls to finalize_compilation_unit and
write_global_decls_2.
(LANG_HOOKS_WRITE_GLOBALS): Rename to...
(LANG_HOOKS_POST_COMPILATION_PARSING_CLEANUPS): ...this and
redirect from jit_langhook_write_globals to
jit_langhook_post_compilation_parsing_cleanups.
* jit-playback.c
(gcc::jit::playback::context::write_global_decls_1): Rename to...
(gcc::jit::playback::context::finalize_global_decls): ...this.
(gcc::jit::playback::context::write_global_decls_1): Delete.
* jit-playback.h
(gcc::jit::playback::context::write_global_decls_1): Rename to...
(gcc::jit::playback::context::finalize_global_decls): ...this.
(gcc::jit::playback::context::write_global_decls_1): Delete.
From-SVN: r224170
Aldy Hernandez [Fri, 5 Jun 2015 19:40:40 +0000 (19:40 +0000)]
* jcf-parse.c: Include toplev.h.
From-SVN: r224168
Jason Merrill [Fri, 5 Jun 2015 19:14:02 +0000 (15:14 -0400)]
re PR c++/66405 (ICE: in tsubst, at cp/pt.c:11984)
PR c++/66405
* pt.c (argument_pack_element_is_expansion_p): Return 2 if
the expansion has extra args.
(use_pack_expansion_extra_args_p): Return true in that case.
From-SVN: r224163
Jason Merrill [Fri, 5 Jun 2015 19:13:56 +0000 (15:13 -0400)]
re PR c++/66405 (ICE: in tsubst, at cp/pt.c:11984)
PR c++/66405
* pt.c (type_dependent_expression_p): EXPR_PACK_EXPANSION is
dependent even if it has a type.
From-SVN: r224162
Aldy Hernandez [Fri, 5 Jun 2015 18:44:53 +0000 (18:44 +0000)]
Merge debug-early branch into mainline.
* dwarf2out.c: Remove deferred_locations*.
(dwarf2_debug_hooks): Add early_finish hook.
Remove global_decl hook.
Add early_global_decl and late_global_decl hook.
New global early_dwarf.
New structure set_early_dwarf.
(output_die): Indicate whether a DIE was generated early
when generating assembly with -dA.
(struct limbo_die_struct): Document created_for field.
Remove file_table_last_lookup.
(remove_AT): Return TRUE if successful.
(remove_child_TAG): Clear die_parent.
(reparent_child): New function abstracted from...
(splice_child_die): ...here.
(new_die): ICE if a DIE ends up in limbo too late.
(check_die): New.
(defer_location): Remove.
(add_subscript_info): Reuse DW_TAG_subrange_type if available.
(fill_variable_array_bounds): New.
(decl_start_label): Call fill_variable_array_bounds.
(gen_formal_parameter_die): Rewrite to reuse previously generated
DIEs.
(gen_subprogram_die): Same.
(gen_variable_die): Same.
(gen_const_die): Same.
(gen_label_die): Same.
(gen_lexical_block_die): Same.
(decl_will_get_specification_p): New.
(local_function_static): New.
(gen_struct_or_union_type_die): Fill in variable-length fields.
(gen_typedef_die): Fill in variable-length typedefs.
(gen_tagged_type_die): Gracefully return on error_mark_node.
Handle re-entrancy.
(gen_type_die_with_usage): Handle variable-length types.
Remove duplicate code for ARRAY_TYPE case.
(process_scope_var): Only process imported modules during early
dwarf.
(dwarf2out_early_global_decl): New.
(dwarf2out_late_global_decl): Rename from dwarf2out_global_decl.
(dwarf2out_type_decl): Set early_dwarf while calling
dwarf2out_decl.
(dwarf2out_decl): Verify that we did not recreate a previously
generated DIE.
Do not return on DECL_EXTERNALs in VAR_DECLs.
Abstract some code to local_function_static.
(lookup_filename): Remove use of file_table_last_lookup.
Gracefully exit on missing file_name.
(dwarf2out_finish): Verify limbo list.
Remove deferred_locations_list use.
Move deferred_asm_name and limbo flushing to...
(dwarf2out_early_finish): ...here. New.
(dwarf2out_c_finalize): Remove set of deferred_location_list,
deferred_asm_name, and file_table_last_lookup.
* cgraph.h (referred_to_p): Add default argument.
* cgraphunit.c (referred_to_p): Add and handle include_self
argument.
(analyze_functions): Add first_time argument.
Call check_global_declaration for all symbols.
Call late_global_decl for nodes for moribund nodes.
(finalize_compilation_unit): Add new argument to
analyze_functions.
Call early_global_decl for functions.
Call early_finish debug hook.
* dbxout.c (dbxout_early_global_decl): New.
(dbxout_late_global_decl): New. Adapted from dbxout_global_decl.
(dbx_debug_hooks): Add new hooks.
(xcoff_debug_hooks): Same.
* debug.c (do_nothing_debug_hooks): Add early_finish field.
Add early and late debug hooks.
Remove global_decl hook.
* debug.h (struct gcc_debug_hooks): Add early_finish,
early_global_decl, and late_global_decl fields.
Remove global_decl field.
Document gcc_debug_hooks.
* gengtype.c (output_typename): Remove.
* godump.c (go_early_global_decl): New.
(go_late_global_decl): New.
(go_global_decl): Remove.
(dump_go_spec_init): Remove global_decl. Add
{early,late}_global_decl.
* langhooks-def.h (LANG_HOOKS_WRITE_GLOBALS): Remove.
(LANG_HOOKS_POST_COMPILATION_PARSING_CLEANUPS): New.
* langhooks.c (lhd_warn_unused_global_decl): Adjust comment.
(write_global_declarations): Remove.
(global_decl_processing): New.
* langhooks.h (struct lang_hooks_for_decls): Remove
final_write_globals field.
Add post_compilation_parsing_cleanups field.
* passes.c (rest_of_decl_compilation): Call early_global_decl.
* sdbout.c: Add early and late_global_decl hooks. Remove
sdbout_global_decl hook.
Add early_finish field for sdb_debug_hooks.
(sdbout_global_decl): Remove.
(sdbout_early_global_decl): New.
(sdbout_late_global_decl): New.
* timevar.def (TV_PHASE_LATE_PARSING_CLEANUPS): New.
* toplev.c (check_global_declaration): Rename from
check_global_declaration_1.
Adapt to use symtab infrastructure.
(check_global_declarations): Remove.
(emit_debug_global_declarations): Remove.
(compile_file): Remove call to final_write_globals langhook.
Run the actual compilation process.
Perform any post compilation parser cleanups.
Generate late debug info.
* toplev.h (check_global_declaration): New.
(check_global_declaration_1): Remove.
(check_global_declarations): Remove.
(write_global_declarations): Remove.
(emit_debug_global_declarations): Remove.
(global_decl_processing): New.
* tree-core.h (struct tree_block): Add DIE field.
* tree.h (BLOCK_DIE): New.
* vmsdbgout.c (vmsdbgout_global_decl): Remove function and its use
throughout.
(vmsdbgout_early_global_decl): New.
(vmsdbgout_late_global_decl): New.
Add early_finish debug hook field to vmsdbg_debug_hooks.
Remove vmsdbgout_decl to vmsdbgout_function_decl.
Add early and late_global_decl debug hooks.
From-SVN: r224161
Jonathan Wakely [Fri, 5 Jun 2015 17:17:53 +0000 (18:17 +0100)]
status_cxx2017.xml: Update status tables.
* doc/xml/manual/status_cxx2017.xml: Update status tables.
* doc/html/manual/*: Regenerate.
* include/std/type_traits (bool_constant): Define.
* testsuite/20_util/bool_constant/requirements.cc: New.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Likewise.
From-SVN: r224160
Steven G. Kargl [Fri, 5 Jun 2015 16:54:53 +0000 (16:54 +0000)]
[multiple changes]
2015-06-03 Russell Whitesides <russelldub@gmail.com>
Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/40958
PR fortran/60780
PR fortran/66377
* module.c (load_equiv): Add check for loading duplicate EQUIVALENCEs
from different modules. Eliminate the pruning of unused
equivalence-objects
2015-06-03 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/66377
gfortran.dg/equiv_9.f90: New test.
From-SVN: r224159
Jonathan Wakely [Fri, 5 Jun 2015 16:31:05 +0000 (17:31 +0100)]
shared_mutex (__shared_mutex_pthread, [...]): New helper types implementing the shared mutex requirements.
* include/std/shared_mutex (__shared_mutex_pthread,
__shared_mutex_cv): New helper types implementing the shared mutex
requirements.
(shared_mutex): New type for C++17.
(shared_timed_mutex): Derive from one of the new helper types.
* testsuite/30_threads/shared_mutex/cons/1.cc: New.
* testsuite/30_threads/shared_mutex/cons/assign_neg.cc: New.
* testsuite/30_threads/shared_mutex/cons/copy_neg.cc: New.
* testsuite/30_threads/shared_mutex/requirements/standard_layout.cc:
New.
* testsuite/30_threads/shared_mutex/try_lock/1.cc: New.
* testsuite/30_threads/shared_mutex/try_lock/2.cc: New.
From-SVN: r224158
Julian Brown [Fri, 5 Jun 2015 16:01:45 +0000 (16:01 +0000)]
print-sysroot-suffix.sh: Handle MULTILIB_REUSE settings.
2015-06-05 Julian Brown <julian@codesourcery.com>
Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config/print-sysroot-suffix.sh: Handle MULTILIB_REUSE settings.
* config/t-sysroot-suffix (sysroot-suffix.h): Pass MULTILIB_REUSE
to print-sysroot-suffix.sh script.
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r224156
Jonathan Wakely [Fri, 5 Jun 2015 16:00:04 +0000 (17:00 +0100)]
Fix date of ChangeLog entry.
From-SVN: r224155
Tom de Vries [Fri, 5 Jun 2015 15:57:34 +0000 (15:57 +0000)]
Add transform_to_exit_first_loop_alt
2015-06-05 Tom de Vries <tom@codesourcery.com>
merge from gomp4 branch:
2015-05-28 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/65443
* tree-parloops.c (replace_imm_uses, replace_uses_in_bb_by)
(replace_uses_in_bbs_by, transform_to_exit_first_loop_alt)
(try_transform_to_exit_first_loop_alt): New function.
(transform_to_exit_first_loop): Use
try_transform_to_exit_first_loop_alt.
* gcc.dg/parloops-exit-first-loop-alt-2.c: New test.
* gcc.dg/parloops-exit-first-loop-alt-3.c: New test.
* gcc.dg/parloops-exit-first-loop-alt.c: New test.
* testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: New test.
* testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: New test.
* testsuite/libgomp.c/parloops-exit-first-loop-alt.c: New test.
From-SVN: r224154
Ville Voutilainen [Fri, 5 Jun 2015 14:44:26 +0000 (17:44 +0300)]
Add __is_nothrow_swappable and take it into use.
2015-06-04 Ville Voutilainen <ville.voutilainen@gmail.com>
Add __is_nothrow_swappable and take it into use.
* include/bits/algorithmfwd.h (swap): Only declare for C++98 mode.
* include/bits/move.h (swap): Add constraints in C++11 and later.
* include/bits/stl_pair.h (swap): Use __is_nothrow_swappable
for the free swap function for pair.
* include/bits/stl_queue.h (swap): Use __is_nothrow_swappable
for the free swap functions for queue and priority_queue.
* include/bits/stl_stack.h (swap): Use __is_nothrow_swappable
for the free swap function for stack.
* include/debug/array (swap): Use __is_nothrow_swappable
for the free swap function for array.
* include/profile/array (swap): Likewise.
* include/std/array (swap): Likewise.
* include/std/tuple (_Tuple_impl::_M_swap): Use __is_nothrow_swappable.
* include/std/type_traits (__is_swappable_impl::__is_swappable,
__is_nothrow_swappable_impl, __is_nothrow_swappable): New.
* testsuite/20_util/is_nothrow_swappable/requirements/
explicit_instantiation.cc: New.
* testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
New.
* testsuite/20_util/is_nothrow_swappable/value.cc: New.
From-SVN: r224153
Nathan Sidwell [Fri, 5 Jun 2015 13:35:30 +0000 (13:35 +0000)]
re PR c++/52595 ([DR 325] commas and non-static data member initializers don't mix)
cp/
PR c++/52595
* parser.c (cp_parser_cache_defarg): Continue looking for
declarators when scanning a potential template argument list of an
NSDMI.
testsuite/
PR c++/52595
* g++,dg/cpp0x/nsdmi-defer5.C: Add template case.
From-SVN: r224152
Uros Bizjak [Fri, 5 Jun 2015 10:57:07 +0000 (12:57 +0200)]
* config/linux/x86/futex_bits.h (sys_futex0): Cosmetics.
From-SVN: r224151
Uros Bizjak [Fri, 5 Jun 2015 10:56:14 +0000 (12:56 +0200)]
futex.h (futex_wait): Remove doouble initialization.
* config/linux/x86/futex.h (futex_wait) [__x86_64__]:
Remove doouble initialization.
From-SVN: r224150
Kugan Vivekanandarajah [Fri, 5 Jun 2015 09:17:08 +0000 (09:17 +0000)]
neon-reload-class.c: Remove movw and movt.
gcc/testsuite/ChangeLog:
2015-06-05 Kugan Vivekanandarajah <kuganv@linaro.org>
* gcc.target/arm/neon-reload-class.c: Remove movw and movt.
From-SVN: r224149
James Greenhalgh [Fri, 5 Jun 2015 08:47:44 +0000 (08:47 +0000)]
[Patch] The comparison in a compare exchange should not take place in VOIDmode
gcc/
* builtins.c (expand_builtin_atomic_compare_exchange): Call
emit_cmp_and_jump_insns with the mode of target.
From-SVN: r224148
Venkataramanan Kumar [Fri, 5 Jun 2015 06:38:32 +0000 (06:38 +0000)]
sse.md (sse3_mwait): Swap the operand constriants.
2015-06-05 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
* config/i386/sse.md (sse3_mwait): Swap the operand constriants.
From-SVN: r224146
DJ Delorie [Fri, 5 Jun 2015 05:00:05 +0000 (01:00 -0400)]
msp430.md (movsi_s): New.
* config/msp430/msp430.md (movsi_s): New. Special case for
storing a 20-bit symbol into a 32-bit register.
* config/msp430/msp430.c (msp430_subreg): Add support for it.
* config/msp430/predicates.md (msp430_symbol_operand): New.
From-SVN: r224145
GCC Administrator [Fri, 5 Jun 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r224143
Paolo Carlini [Thu, 4 Jun 2015 21:18:46 +0000 (21:18 +0000)]
diag-5.mm: Adjust per r224097.
2015-06-04 Paolo Carlini <paolo.carlini@oracle.com>
* obj-c++.dg/tls/diag-5.mm: Adjust per r224097.
From-SVN: r224139
Sriraman Tallam [Thu, 4 Jun 2015 21:14:10 +0000 (21:14 +0000)]
c-common.c (noplt): New attribute.
2015-06-04 Sriraman Tallam <tmsriram@google.com>
* c-family/c-common.c (noplt): New attribute.
(handle_noplt_attribute): New handler.
* calls.c (prepare_call_address): Check for noplt
attribute.
* config/i386/i386.c (ix86_expand_call): Check
for noplt attribute.
(ix86_nopic_noplt_attribute_p): New function.
(ix86_output_call_insn): Output indirect call for non-pic
no plt calls.
* doc/extend.texi (noplt): Document new attribute.
* doc/invoke.texi: Document new attribute.
* testsuite/gcc.target/i386/noplt-1.c: New test.
* testsuite/gcc.target/i386/noplt-2.c: New test.
* testsuite/gcc.target/i386/noplt-3.c: New test.
* testsuite/gcc.target/i386/noplt-4.c: New test.
This patch does two things:
* Adds new generic function attribute "noplt" that is similar in functionality
to -fno-plt except that it applies only to calls to functions that are marked
with this attribute.
* For x86_64, it makes -fno-plt(and the attribute) also work for non-PIC code by
directly generating an indirect call via a GOT entry.
From-SVN: r224138
Thomas Koenig [Thu, 4 Jun 2015 18:55:29 +0000 (18:55 +0000)]
re PR fortran/58749 (PACK(ADJUSTL([" a"," b"]), [.TRUE.,.FALSE.]) causes an internal compiler error)
2015-06-04 Thomas Koenig <tkoenig@netcologne.de>
PR fortran/58749
* iresolve.c (gfc_resolve_adjustl): If string has a charlen,
copy it to the function.
(gfc_resolve_adjustr): Likewise.
2015-06-04 Thomas Koenig <tkoenig@netcologne.de>
PR fortran/58749
* gfortran.dg/adjustl_1.f90: New test.
From-SVN: r224137
Andrew MacLeod [Thu, 4 Jun 2015 17:49:54 +0000 (17:49 +0000)]
coretypes.h: Include machmode.h...
2015-06-04 Andrew MacLeod <amacleod@redhat.com>
* coretypes.h: Include machmode.h, signop.h, wide-int.h, double-int.h,
real.h, and fixed-value.h when included in host source files.
* double-int.h: Remove redundant #includes listed above.
* fixed-value.h: Likewise.
* real.h: Likewise.
* wide-int.h: Likewise.
* inchash.h: Likewise.
* rtl.h: Add some include files When included from a generator file.
* target.h: Remove wide-int.h and insn-modes.h from the include list.
* internal-fn.h: Don't include coretypes.h.
* alias.c: Adjust includes for restructured coretypes.h.
* asan.c: Likewise.
* attribs.c: Likewise.
* auto-inc-dec.c: Likewise.
* auto-profile.c: Likewise.
* bb-reorder.c: Likewise.
* bt-load.c: Likewise.
* builtins.c: Likewise.
* caller-save.c: Likewise.
* calls.c: Likewise.
* ccmp.c: Likewise.
* cfg.c: Likewise.
* cfganal.c: Likewise.
* cfgbuild.c: Likewise.
* cfgcleanup.c: Likewise.
* cfgexpand.c: Likewise.
* cfghooks.c: Likewise.
* cfgloop.c: Likewise.
* cfgloop.h: Likewise.
* cfgloopanal.c: Likewise.
* cfgloopmanip.c: Likewise.
* cfgrtl.c: Likewise.
* cgraph.c: Likewise.
* cgraphbuild.c: Likewise.
* cgraphclones.c: Likewise.
* cgraphunit.c: Likewise.
* cilk-common.c: Likewise.
* combine-stack-adj.c: Likewise.
* combine.c: Likewise.
* compare-elim.c: Likewise.
* convert.c: Likewise.
* coverage.c: Likewise.
* cppbuiltin.c: Likewise.
* cprop.c: Likewise.
* cse.c: Likewise.
* cselib.c: Likewise.
* data-streamer-in.c: Likewise.
* data-streamer-out.c: Likewise.
* data-streamer.c: Likewise.
* dbxout.c: Likewise.
* dce.c: Likewise.
* ddg.c: Likewise.
* debug.c: Likewise.
* df-core.c: Likewise.
* df-problems.c: Likewise.
* df-scan.c: Likewise.
* df.h: Likewise.
* dfp.c: Likewise.
* dojump.c: Likewise.
* dominance.c: Likewise.
* domwalk.c: Likewise.
* double-int.c: Likewise.
* dse.c: Likewise.
* dumpfile.c: Likewise.
* dwarf2asm.c: Likewise.
* dwarf2cfi.c: Likewise.
* dwarf2out.c: Likewise.
* dwarf2out.h: Likewise.
* emit-rtl.c: Likewise.
* et-forest.c: Likewise.
* except.c: Likewise.
* explow.c: Likewise.
* expmed.c: Likewise.
* expr.c: Likewise.
* final.c: Likewise.
* fixed-value.c: Likewise.
* fold-const.c: Likewise.
* function.c: Likewise.
* fwprop.c: Likewise.
* gcc-plugin.h: Likewise.
* gcse.c: Likewise.
* generic-match-head.c: Likewise.
* ggc-page.c: Likewise.
* gimple-builder.c: Likewise.
* gimple-expr.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-iterator.c: Likewise.
* gimple-low.c: Likewise.
* gimple-match-head.c: Likewise.
* gimple-pretty-print.c: Likewise.
* gimple-ssa-isolate-paths.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* gimple-streamer-in.c: Likewise.
* gimple-streamer-out.c: Likewise.
* gimple-streamer.h: Likewise.
* gimple-walk.c: Likewise.
* gimple.c: Likewise.
* gimplify-me.c: Likewise.
* gimplify.c: Likewise.
* godump.c: Likewise.
* graph.c: Likewise.
* graphite-blocking.c: Likewise.
* graphite-dependences.c: Likewise.
* graphite-interchange.c: Likewise.
* graphite-isl-ast-to-gimple.c: Likewise.
* graphite-optimize-isl.c: Likewise.
* graphite-poly.c: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* graphite.c: Likewise.
* haifa-sched.c: Likewise.
* hooks.h: Likewise.
* hw-doloop.c: Likewise.
* ifcvt.c: Likewise.
* incpath.c: Likewise.
* init-regs.c: Likewise.
* internal-fn.c: Likewise.
* ipa-chkp.c: Likewise.
* ipa-comdats.c: Likewise.
* ipa-cp.c: Likewise.
* ipa-devirt.c: Likewise.
* ipa-icf-gimple.c: Likewise.
* ipa-icf.c: Likewise.
* ipa-inline-analysis.c: Likewise.
* ipa-inline-transform.c: Likewise.
* ipa-inline.c: Likewise.
* ipa-polymorphic-call.c: Likewise.
* ipa-profile.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-pure-const.c: Likewise.
* ipa-ref.c: Likewise.
* ipa-reference.c: Likewise.
* ipa-split.c: Likewise.
* ipa-utils.c: Likewise.
* ipa-visibility.c: Likewise.
* ipa.c: Likewise.
* ira-build.c: Likewise.
* ira-color.c: Likewise.
* ira-conflicts.c: Likewise.
* ira-costs.c: Likewise.
* ira-emit.c: Likewise.
* ira-lives.c: Likewise.
* ira.c: Likewise.
* jump.c: Likewise.
* langhooks.c: Likewise.
* lcm.c: Likewise.
* loop-doloop.c: Likewise.
* loop-init.c: Likewise.
* loop-invariant.c: Likewise.
* loop-iv.c: Likewise.
* loop-unroll.c: Likewise.
* lower-subreg.c: Likewise.
* lra-assigns.c: Likewise.
* lra-coalesce.c: Likewise.
* lra-constraints.c: Likewise.
* lra-eliminations.c: Likewise.
* lra-lives.c: Likewise.
* lra-remat.c: Likewise.
* lra-spills.c: Likewise.
* lra.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-compress.c: Likewise.
* lto-opts.c: Likewise.
* lto-section-in.c: Likewise.
* lto-section-out.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-streamer-out.c: Likewise.
* lto-streamer.c: Likewise.
* mcf.c: Likewise.
* mode-switching.c: Likewise.
* modulo-sched.c: Likewise.
* omega.c: Likewise.
* omp-low.c: Likewise.
* optabs.c: Likewise.
* opts-global.c: Likewise.
* passes.c: Likewise.
* plugin.c: Likewise.
* postreload-gcse.c: Likewise.
* postreload.c: Likewise.
* predict.c: Likewise.
* print-rtl.c: Likewise.
* print-tree.c: Likewise.
* profile.c: Likewise.
* real.c: Likewise.
* realmpfr.c: Likewise.
* realmpfr.h: Likewise.
* recog.c: Likewise.
* ree.c: Likewise.
* reg-stack.c: Likewise.
* regcprop.c: Likewise.
* reginfo.c: Likewise.
* regrename.c: Likewise.
* regs.h: Likewise.
* regstat.c: Likewise.
* reload.c: Likewise.
* reload1.c: Likewise.
* reorg.c: Likewise.
* resource.c: Likewise.
* rtl-chkp.c: Likewise.
* rtlanal.c: Likewise.
* rtlhooks.c: Likewise.
* sanopt.c: Likewise.
* sched-deps.c: Likewise.
* sched-ebb.c: Likewise.
* sched-rgn.c: Likewise.
* sched-vis.c: Likewise.
* sdbout.c: Likewise.
* sel-sched-dump.c: Likewise.
* sel-sched-ir.c: Likewise.
* sel-sched.c: Likewise.
* sese.c: Likewise.
* shrink-wrap.c: Likewise.
* shrink-wrap.h: Likewise.
* simplify-rtx.c: Likewise.
* stack-ptr-mod.c: Likewise.
* statistics.c: Likewise.
* stmt.c: Likewise.
* stor-layout.c: Likewise.
* store-motion.c: Likewise.
* stringpool.c: Likewise.
* symtab.c: Likewise.
* target-globals.c: Likewise.
* targhooks.c: Likewise.
* toplev.c: Likewise.
* tracer.c: Likewise.
* trans-mem.c: Likewise.
* tree-affine.c: Likewise.
* tree-affine.h: Likewise.
* tree-browser.c: Likewise.
* tree-call-cdce.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-chkp-opt.c: Likewise.
* tree-chkp.c: Likewise.
* tree-chrec.c: Likewise.
* tree-complex.c: Likewise.
* tree-data-ref.c: Likewise.
* tree-dfa.c: Likewise.
* tree-diagnostic.c: Likewise.
* tree-dump.c: Likewise.
* tree-eh.c: Likewise.
* tree-emutls.c: Likewise.
* tree-if-conv.c: Likewise.
* tree-inline.c: Likewise.
* tree-into-ssa.c: Likewise.
* tree-iterator.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-nested.c: Likewise.
* tree-nrv.c: Likewise.
* tree-object-size.c: Likewise.
* tree-outof-ssa.c: Likewise.
* tree-parloops.c: Likewise.
* tree-phinodes.c: Likewise.
* tree-predcom.c: Likewise.
* tree-pretty-print.c: Likewise.
* tree-pretty-print.h: Likewise.
* tree-profile.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-alias.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-coalesce.c: Likewise.
* tree-ssa-copy.c: Likewise.
* tree-ssa-copyrename.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-ssa-dse.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* tree-ssa-live.c: Likewise.
* tree-ssa-loop-ch.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* tree-ssa-loop.c: Likewise.
* tree-ssa-loop.h: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-operands.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-scopedtables.c: Likewise.
* tree-ssa-sink.c: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa-tail-merge.c: Likewise.
* tree-ssa-ter.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-ssa-threadupdate.c: Likewise.
* tree-ssa-uncprop.c: Likewise.
* tree-ssa-uninit.c: Likewise.
* tree-ssa.c: Likewise.
* tree-ssanames.c: Likewise.
* tree-stdarg.c: Likewise.
* tree-streamer-in.c: Likewise.
* tree-streamer-out.c: Likewise.
* tree-streamer.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-tailcall.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-slp.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree-vectorizer.c: Likewise.
* tree-vrp.c: Likewise.
* tree.c: Likewise.
* tsan.c: Likewise.
* ubsan.c: Likewise.
* valtrack.c: Likewise.
* value-prof.c: Likewise.
* var-tracking.c: Likewise.
* varasm.c: Likewise.
* varpool.c: Likewise.
* vmsdbgout.c: Likewise.
* vtable-verify.c: Likewise.
* web.c: Likewise.
* wide-int-print.cc: Likewise.
* wide-int-print.h: Likewise.
* wide-int.cc: Likewise.
* xcoffout.c: Likewise.
* config/aarch64/aarch64-builtins.c: Likewise.
* config/aarch64/aarch64.c: Likewise.
* config/aarch64/cortex-a57-fma-steering.c: Likewise.
* config/alpha/alpha.c: Likewise.
* config/arc/arc.c: Likewise.
* config/arm/aarch-common.c: Likewise.
* config/arm/arm-builtins.c: Likewise.
* config/arm/arm-c.c: Likewise.
* config/arm/arm.c: Likewise.
* config/avr/avr-c.c: Likewise.
* config/avr/avr-log.c: Likewise.
* config/avr/avr.c: Likewise.
* config/bfin/bfin.c: Likewise.
* config/c6x/c6x.c: Likewise.
* config/cr16/cr16.c: Likewise.
* config/cris/cris.c: Likewise.
* config/darwin-c.c: Likewise.
* config/darwin.c: Likewise.
* config/default-c.c: Likewise.
* config/epiphany/epiphany.c: Likewise.
* config/epiphany/mode-switch-use.c: Likewise.
* config/epiphany/resolve-sw-modes.c: Likewise.
* config/fr30/fr30.c: Likewise.
* config/frv/frv.c: Likewise.
* config/ft32/ft32.c: Likewise.
* config/glibc-c.c: Likewise.
* config/h8300/h8300.c: Likewise.
* config/i386/i386-c.c: Likewise.
* config/i386/i386.c: Likewise.
* config/i386/msformat-c.c: Likewise.
* config/i386/winnt-cxx.c: Likewise.
* config/i386/winnt-stubs.c: Likewise.
* config/i386/winnt.c: Likewise.
* config/ia64/ia64-c.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/iq2000/iq2000.c: Likewise.
* config/lm32/lm32.c: Likewise.
* config/m32c/m32c-pragma.c: Likewise.
* config/m32c/m32c.c: Likewise.
* config/m32r/m32r.c: Likewise.
* config/m68k/m68k.c: Likewise.
* config/mcore/mcore.c: Likewise.
* config/mep/mep-pragma.c: Likewise.
* config/mep/mep.c: Likewise.
* config/microblaze/microblaze-c.c: Likewise.
* config/microblaze/microblaze.c: Likewise.
* config/mips/mips.c: Likewise.
* config/mmix/mmix.c: Likewise.
* config/mn10300/mn10300.c: Likewise.
* config/moxie/moxie.c: Likewise.
* config/msp430/msp430-c.c: Likewise.
* config/msp430/msp430.c: Likewise.
* config/nds32/nds32-cost.c: Likewise.
* config/nds32/nds32-fp-as-gp.c: Likewise.
* config/nds32/nds32-intrinsic.c: Likewise.
* config/nds32/nds32-isr.c: Likewise.
* config/nds32/nds32-md-auxiliary.c: Likewise.
* config/nds32/nds32-memory-manipulation.c: Likewise.
* config/nds32/nds32-pipelines-auxiliary.c: Likewise.
* config/nds32/nds32-predicates.c: Likewise.
* config/nds32/nds32.c: Likewise.
* config/nios2/nios2.c: Likewise.
* config/nvptx/nvptx.c: Likewise.
* config/pa/pa.c: Likewise.
* config/pdp11/pdp11.c: Likewise.
* config/rl78/rl78-c.c: Likewise.
* config/rl78/rl78.c: Likewise.
* config/rs6000/rs6000-c.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/rx/rx.c: Likewise.
* config/s390/s390-c.c: Likewise.
* config/s390/s390.c: Likewise.
* config/sh/sh-c.c: Likewise.
* config/sh/sh-mem.cc: Likewise.
* config/sh/sh.c: Likewise.
* config/sh/sh_optimize_sett_clrt.cc: Likewise.
* config/sh/sh_treg_combine.cc: Likewise.
* config/sol2-c.c: Likewise.
* config/sol2-cxx.c: Likewise.
* config/sol2-stubs.c: Likewise.
* config/sol2.c: Likewise.
* config/sparc/sparc-c.c: Likewise.
* config/sparc/sparc.c: Likewise.
* config/spu/spu-c.c: Likewise.
* config/spu/spu.c: Likewise.
* config/stormy16/stormy16.c: Likewise.
* config/tilegx/mul-tables.c: Likewise.
* config/tilegx/tilegx-c.c: Likewise.
* config/tilegx/tilegx.c: Likewise.
* config/tilepro/mul-tables.c: Likewise.
* config/tilepro/tilepro-c.c: Likewise.
* config/tilepro/tilepro.c: Likewise.
* config/v850/v850-c.c: Likewise.
* config/v850/v850.c: Likewise.
* config/vax/vax.c: Likewise.
* config/visium/visium.c: Likewise.
* config/vms/vms-c.c: Likewise.
* config/vms/vms.c: Likewise.
* config/vxworks.c: Likewise.
* config/winnt-c.c: Likewise.
* config/xtensa/xtensa.c: Likewise.
* common/config/bfin/bfin-common.c: Likewise.
ada
2015-06-04 Andrew MacLeod <amacleod@redhat.com>
* gcc-interface/cuintp.c: Adjust includes for restructured coretypes.h.
* gcc-interface/decl.c: Likewise.
* gcc-interface/misc.c: Likewise.
* gcc-interface/targtyps.c: Likewise.
* gcc-interface/trans.c: Likewise.
* gcc-interface/utils.c: Likewise.
* gcc-interface/utils2.c: Likewise.
c
2015-06-04 Andrew MacLeod <amacleod@redhat.com>
* c-array-notation.c: Adjust includes for restructured coretypes.h.
* c-aux-info.c: Likewise.
* c-convert.c: Likewise.
* c-decl.c: Likewise.
* c-errors.c: Likewise.
* c-lang.c: Likewise.
* c-objc-common.c: Likewise.
* c-parser.c: Likewise.
* c-typeck.c: Likewise.
c-family
2015-06-04 Andrew MacLeod <amacleod@redhat.com>
* array-notation-common.c: Adjust includes for restructured coretypes.h.
* c-ada-spec.c: Likewise.
* c-cilkplus.c: Likewise.
* c-common.c: Likewise.
* c-common.h: Likewise.
* c-cppbuiltin.c: Likewise.
* c-dump.c: Likewise.
* c-format.c: Likewise.
* c-gimplify.c: Likewise.
* c-indentation.c: Likewise.
* c-lex.c: Likewise.
* c-omp.c: Likewise.
* c-opts.c: Likewise.
* c-pch.c: Likewise.
* c-ppoutput.c: Likewise.
* c-pragma.c: Likewise.
* c-pretty-print.c: Likewise.
* c-semantics.c: Likewise.
* c-ubsan.c: Likewise.
* cilk.c: Likewise.
* stub-objc.c: Likewise.
cp
2015-06-04 Andrew MacLeod <amacleod@redhat.com>
* call.c: Adjust includes for restructured coretypes.h.
* class.c: Likewise.
* constexpr.c: Likewise.
* cp-array-notation.c: Likewise.
* cp-gimplify.c: Likewise.
* cp-lang.c: Likewise.
* cp-objcp-common.c: Likewise.
* cp-tree.h: Likewise.
* cp-ubsan.c: Likewise.
* cvt.c: Likewise.
* decl.c: Likewise.
* decl2.c: Likewise.
* dump.c: Likewise.
* error.c: Likewise.
* except.c: Likewise.
* expr.c: Likewise.
* friend.c: Likewise.
* init.c: Likewise.
* lambda.c: Likewise.
* lex.c: Likewise.
* mangle.c: Likewise.
* method.c: Likewise.
* name-lookup.c: Likewise.
* optimize.c: Likewise.
* parser.c: Likewise.
* pt.c: Likewise.
* ptree.c: Likewise.
* repo.c: Likewise.
* rtti.c: Likewise.
* search.c: Likewise.
* semantics.c: Likewise.
* tree.c: Likewise.
* typeck.c: Likewise.
* typeck2.c: Likewise.
* vtable-class-hierarchy.c: Likewise.
fortran
2015-06-04 Andrew MacLeod <amacleod@redhat.com>
* convert.c: Adjust includes for restructured coretypes.h.
* cpp.c: Likewise.
* decl.c: Likewise.
* f95-lang.c: Likewise.
* iresolve.c: Likewise.
* match.c: Likewise.
* module.c: Likewise.
* options.c: Likewise.
* target-memory.c: Likewise.
* trans-array.c: Likewise.
* trans-common.c: Likewise.
* trans-const.c: Likewise.
* trans-decl.c: Likewise.
* trans-expr.c: Likewise.
* trans-intrinsic.c: Likewise.
* trans-io.c: Likewise.
* trans-openmp.c: Likewise.
* trans-stmt.c: Likewise.
* trans-types.c: Likewise.
* trans.c: Likewise.
go
2015-06-04 Andrew MacLeod <amacleod@redhat.com>
* go-backend.c: Adjust includes for restructured coretypes.h.
* go-c.h: Likewise.
* go-gcc.cc: Likewise.
* go-lang.c: Likewise.
java
2015-06-04 Andrew MacLeod <amacleod@redhat.com>
* boehm.c: Adjust includes for restructured coretypes.h.
* builtins.c: Likewise.
* class.c: Likewise.
* constants.c: Likewise.
* decl.c: Likewise.
* except.c: Likewise.
* expr.c: Likewise.
* java-gimplify.c: Likewise.
* jcf-dump.c: Likewise.
* jcf-io.c: Likewise.
* jcf-parse.c: Likewise.
* jvgenmain.c: Likewise.
* lang.c: Likewise.
* mangle.c: Likewise.
* mangle_name.c: Likewise.
* resource.c: Likewise.
* typeck.c: Likewise.
* verify-glue.c: Likewise.
* verify-impl.c: Likewise.
jit
2015-06-04 Andrew MacLeod <amacleod@redhat.com>
* dummy-frontend.c: Adjust includes for restructured coretypes.h.
* jit-common.h: Likewise.
* jit-playback.c: Likewise.
lto
2015-06-04 Andrew MacLeod <amacleod@redhat.com>
* lto-lang.c: Adjust includes for restructured coretypes.h.
* lto-object.c: Likewise.
* lto-partition.c: Likewise.
* lto-symtab.c: Likewise.
* lto.c: Likewise.
objc
2015-06-04 Andrew MacLeod <amacleod@redhat.com>
* objc-act.c: Adjust includes for restructured coretypes.h.
* objc-encoding.c: Likewise.
* objc-gnu-runtime-abi-01.c: Likewise.
* objc-lang.c: Likewise.
* objc-map.c: Likewise.
* objc-next-runtime-abi-01.c: Likewise.
* objc-next-runtime-abi-02.c: Likewise.
* objc-runtime-shared-support.c: Likewise.
objcp
2015-06-04 Andrew MacLeod <amacleod@redhat.com>
* objcp-decl.c: Adjust includes for restructured coretypes.h.
* objcp-lang.c: Likewise.
From-SVN: r224136
Jan Hubicka [Thu, 4 Jun 2015 16:38:50 +0000 (18:38 +0200)]
lto.c (hash_canonical_type): Use tree_code_for_canonical_type_merging.
* lto.c (hash_canonical_type): Use tree_code_for_canonical_type_merging.
* tree.h (tree_code_for_canonical_type_merging): New function.
* tree.c (gimple_canonical_types_compatible_p): Use
tree_code_for_canonical_type_merging..
* gcc.dg/lto/c-compatible-types_0.c: New testcase.
* gcc.dg/lto/c-compatible-types_1.c: New testcase.
From-SVN: r224135
Richard Sandiford [Thu, 4 Jun 2015 15:19:58 +0000 (15:19 +0000)]
* MAINTAINERS (gen* on machine desc): Add self.
From-SVN: r224127
Pierre-Marie de Rodat [Thu, 4 Jun 2015 10:38:17 +0000 (10:38 +0000)]
decl.c (gnat_to_gnu_entity): If processing a definition...
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Function>: If
processing a definition, create definitions for padding types
around return types.
From-SVN: r224121
Uros Bizjak [Thu, 4 Jun 2015 10:06:11 +0000 (12:06 +0200)]
re PR target/66369 (gcc 4.8.3/5.1.0 miss optimisation with vpmovmskb)
PR target/66369
* config/i386/sse.md (<sse2_avx2>_pmovmsk): Merge from avx2_pmovmskb
and sse2_pmovmskb using VI1_AVX2 mode iterator.
(*<sse>_movmsk<ssemodesuffix><avxsizesuffix>_zext): New insn pattern.
(*<sse2_avx2>_pmovmskb_zext): Ditto.
From-SVN: r224120
Sandra Loosemore [Thu, 4 Jun 2015 10:02:12 +0000 (06:02 -0400)]
[patch, testsuite, ARM] don't clobber dg-do-what-default in advsimd-intrinsics.exp
gcc/testsuite/
* gcc.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp:
Move set of dg-do-what-default after early return.
From-SVN: r224119
Ramana Radhakrishnan [Thu, 4 Jun 2015 09:19:51 +0000 (09:19 +0000)]
Remove TARGET_RELAXED_ORDERING and optimize for weak memory models.
This patch removes the special casing for targets with relaxed
memory ordering and handles guard accesses with equivalent
atomic load acquire operations. In this process we change the
algorithm to load the guard variable with an atomic load that
has ACQUIRE semantics.
This then means that on targets which have weak memory models, the
fast path is inlined and can directly use a load-acquire instruction
where available (and yay! one more hook gone).
2015-06-04 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR c++/66192
PR target/66200
* doc/tm.texi: Regenerate.
* doc/tm.texi.in (TARGET_RELAXED_ORDERING): Delete.
* target.def (TARGET_RELAXED_ORDERING): Likewise.
* config/alpha/alpha.c (TARGET_RELAXED_ORDERING): Likewise.
* config/ia64/ia64.c (TARGET_RELAXED_ORDERING): Likewise.
* config/rs6000/rs6000.c (TARGET_RELAXED_ORDERING): Likewise.
* config/sparc/linux.h (SPARC_RELAXED_ORDERING): Likewise.
* config/sparc/linux64.h (SPARC_RELAXED_ORDERING): Likewise.
* config/sparc/sparc.c (TARGET_RELAXED_ORDERING): Likewise.
* config/sparc/sparc.h (SPARC_RELAXED_ORDERING): Likewise.
* system.h (TARGET_RELAXED_ORDERING): Poison.
2015-06-04 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR c++/66192
PR target/66200
* cp-tree.h (get_guard_cond): Adjust declaration
* decl.c (expand_static_init): Use atomic load acquire
and adjust call to get_guard_cond.
* decl2.c (build_atomic_load_byte): New function.
(get_guard_cond): Handle thread_safety.
(one_static_initialization_or_destruction): Adjust call to
get_guard_cond.
From-SVN: r224118
Kyrylo Tkachov [Thu, 4 Jun 2015 08:29:31 +0000 (08:29 +0000)]
[AArch64] Always register fma_steering pass but gate it on the target option instead
* config/aarch64/aarch64.c (aarch64_override_options): Unconditionally
register fma steering pass.
* config/aarch64/cortex-a57-fma-steering.c (gate): Add gating on
AARCH64_TUNE_FMA_STEERING.
From-SVN: r224116
Marek Polacek [Thu, 4 Jun 2015 08:17:45 +0000 (08:17 +0000)]
re PR c/66341 (Some casts wrongly produce a lvalue)
PR c/66341
* c-typeck.c (build_c_cast): Wrap VALUE into NON_LVALUE_EXPR if
it is a lvalue.
* gcc.dg/lvalue-8.c: New test.
From-SVN: r224115
GCC Administrator [Thu, 4 Jun 2015 00:16:22 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r224112
Jan Hubicka [Wed, 3 Jun 2015 23:13:49 +0000 (01:13 +0200)]
lto.c (iterative_hash_canonical_type, [...]): only hash main variants of types
* lto.c (iterative_hash_canonical_type,
gimple_register_canonical_type): only hash main variants of types
* tree.c (verify_type_variant): Verify that type and variant is
compatible.
(gimple_canonical_types_compatible_p): Look for main variants.
From-SVN: r224107
Jason Merrill [Wed, 3 Jun 2015 21:09:25 +0000 (17:09 -0400)]
re PR c++/44282 (fastcall is not mangled at all)
PR c++/44282
* mangle.c (mangle_decl): Always SET_IDENTIFIER_GLOBAL_VALUE.
(write_CV_qualifiers_for_type): Set G.need_abi_warning.
(decl_implicit_alias_p): Split out from maybe_remove_implicit_alias.
* cp-tree.h (DECL_REALLY_EXTERN): Handle null DECL_LANG_SPECIFIC.
From-SVN: r224101
François Dumont [Wed, 3 Jun 2015 20:15:35 +0000 (20:15 +0000)]
2015-06-03 François Dumont fdumont@gcc.gnu.org>
* testsuite/23_containers/list/61347.cc: Add dg-require-normal-mode.
From-SVN: r224100
Manuel López-Ibáñez [Wed, 3 Jun 2015 19:23:20 +0000 (19:23 +0000)]
re PR c++/66130 ("invalid use of non-static member function" message could be clearer)
2015-06-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
Paolo Carlini <paolo.carlini@oracle.com>
PR c++/66130
* typeck.c (invalid_nonstatic_memfn_p): Add location_t parameter and
use it in the diagnostic.
(decay_conversion): Adjust call.
* semantics.c (finish_decltype_type): Likewise.
* call.c (resolve_args, build_new_op_1,
perform_implicit_conversion_flags): Adjust calls.
* cvt.c (ocp_convert, convert_to_void): Likewise.
* cp-tree.h (invalid_nonstatic_memfn_p): Update declaration.
2015-06-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
Paolo Carlini <paolo.carlini@oracle.com>
PR c++/66130
* g++.dg/other/pr66130.C: New.
* g++.dg/cpp0x/pr66130.C: Likewise.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r224099
Paolo Carlini [Wed, 3 Jun 2015 17:08:39 +0000 (17:08 +0000)]
decl.c (check_tag_decl): Use declspecs->locations as locations in error_at and warning_at calls.
/cp
2015-06-03 Paolo Carlini <paolo.carlini@oracle.com>
* decl.c (check_tag_decl): Use declspecs->locations as locations in
error_at and warning_at calls.
/testsuite
2015-06-03 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/cpp0x/decl-loc1.C: New.
* g++.dg/cpp0x/constexpr-neg1.C: Adjust.
* g++.dg/cpp0x/constexpr-object1.C: Likewise.
* g++.dg/init/ctor8.C: Likewise.
* g++.dg/parse/semicolon4.C: Likewise.
From-SVN: r224097
Marek Polacek [Wed, 3 Jun 2015 16:54:24 +0000 (16:54 +0000)]
re PR sanitizer/66190 (ICE: tree code ‘call_expr’ is not supported in LTO streams with -fsanitize=null)
PR sanitizer/66190
* cp-gimplify.c (struct cp_genericize_data): Add no_sanitize_p.
(cp_genericize_r): Don't instrument static initializers.
(cp_genericize_tree): Initialize wtd.no_sanitize_p.
* g++.dg/ubsan/static-init-1.C: New test.
* g++.dg/ubsan/static-init-2.C: New test.
* g++.dg/ubsan/static-init-3.C: New test.
From-SVN: r224096
Michael Meissner [Wed, 3 Jun 2015 16:38:10 +0000 (16:38 +0000)]
config.gcc (powerpc*-*-*): Add support for a new configure option --with-advance-toolchain=<xxx> which...
2015-06-03 Michael Meissner <meissner@linux.vnet.ibm.com>
* config.gcc (powerpc*-*-*): Add support for a new configure
option --with-advance-toolchain=<xxx> which overrides using the
default header files, libraries and dynamic linker.
* config/rs6000/linux64.h (SUBSUBTARGET_EXTRA_SPECS): Add new
specs to support the configure --with-advance-toolchain=<xxx>
option.
(INCLUDE_EXTRA_SPEC): Likewise.
(LINK_OS_EXTRA_SPEC32): Likewise.
(LINK_OK_EXTRA_SPEC64): Likewise.
(LINK_OS_NEW_DTAGS_SPEC): Likewise.
(DYNAMIC_LINKER_PREFIX): Likewise.
(CPP_OS_DEFAULT_SPEC): Use the new specs for providing advance
toolchain support.
(GLIBC_DYNAMIC_LINKER32): Likewise.
(GLIBC_DYNAMIC_LINKER64): Likewise.
(LINK_OS_LINUX_SPEC32): Likewise.
(LINK_OS_LINUX_SPEC64): Likewise.
* doc/install.texi (--enable-advance-toolchain=<xx>): Document new
configuration option.
From-SVN: r224095
Uros Bizjak [Wed, 3 Jun 2015 15:46:41 +0000 (17:46 +0200)]
re PR target/66275 (__attribute__((sysv_abi)) with x86_64-w64-mingw32-gcc generates incorrect code)
PR target/66275
* config/i386/i386.c (ix86_function_arg_regno): Use ix86_cfun_abi
to determine current function ABI.
(ix86_function_value_regno_p): Ditto.
testsuite/ChangeLog:
PR target/66275
* gcc.target/i386/pr66275.c: New test.
From-SVN: r224094
Prathamesh Kulkarni [Wed, 3 Jun 2015 15:10:44 +0000 (15:10 +0000)]
c-decl.c (warn_cxx_compat_finish_struct): New parameters code, record_loc.
2015-06-03 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
c/
* c-decl.c (warn_cxx_compat_finish_struct): New parameters code, record_loc.
Warn for empty struct.
(finish_struct): Pass TREE_CODE(t) and loc to warn_cxx_compat_finish_struct.
testsuite/
* gcc.dg/Wcxx-compat-22.c: New testcase.
* c-c++-common/Wsizeof-pointer-memaccess1.c: Pass -Wno-c++-compat.
* c-c++-common/Wsizeof-pointer-memaccess2.c: Likewise.
* c-c++-common/pr58346-1.c: Likewise.
* c-c++-common/transparent-union-1.c: Likewise.
From-SVN: r224083
Martin Liska [Wed, 3 Jun 2015 14:49:13 +0000 (16:49 +0200)]
Fix GNU coding style in memory statistics.
* alloc-pool.h (struct pool_usage): Correct GNU coding style.
* bitmap.h (struct bitmap_usage): Likewise.
* ggc-common.c (struct ggc_usage): Likewise.
* mem-stats.h (struct mem_location): Likewise.
(struct mem_usage): Likewise.
* vec.c (struct vec_usage): Likewise.
From-SVN: r224082
Jeff Law [Wed, 3 Jun 2015 13:39:45 +0000 (07:39 -0600)]
Fix FT32 ChangeLogs
From-SVN: r224080
Benigno B. Junior [Wed, 3 Jun 2015 13:29:51 +0000 (13:29 +0000)]
netbsd-elf.h (NETBSD_LINK_SPEC_ELF): Turn -symbolic into -Bsymbolic.
2015-06-03 Benigno B. Junior <bbj@gentoo.org>
* config/netbsd-elf.h (NETBSD_LINK_SPEC_ELF): Turn -symbolic into
-Bsymbolic.
From-SVN: r224079
Andres Tiraboschi [Wed, 3 Jun 2015 13:27:11 +0000 (13:27 +0000)]
plugins.texi (enum plugin_event): New event.
* doc/plugins.texi (enum plugin_event): New event.
* plugin.c (register_callback): Handle PLUGIN_START_PARSE_FUNCTION
and PLUGIN_FINISH_FUNCTION.
* plugin.def (PLUGIN_START_PARSE_FUNCTION): Add plugin event
(PLUGIN_FINISH_PARSE_FUNCTION): Likewise.
cp/
* decl.c (start_function): Call plugin before parsing.
(finish_function): Call plugin after parsing.
c/
* c-decl.c (start_function): Call plugin before parsing.
(finish_function): Call plugin after parsing.
testsuite/
* g++.dg/plugin/plugin.exp: Add def-plugin-test.C.
* g++.dg/plugin/def_plugin.c: New file.
* g++.dg/plugin/def-plugin-test.C: New file.
From-SVN: r224078
Richard Biener [Wed, 3 Jun 2015 13:10:13 +0000 (13:10 +0000)]
tree-vect-data-refs.c (vect_analyze_group_access): Properly compute GROUP_GAP for the first element.
2015-06-03 Richard Biener <rguenther@suse.de>
* tree-vect-data-refs.c (vect_analyze_group_access): Properly
compute GROUP_GAP for the first element.
* tree-vect-slp.c (vect_build_slp_tree_1): Remove restriction
on in-group gaps.
* gcc.dg/vect/bb-slp-36.c: New testcase.
From-SVN: r224077
Nick Clifton [Wed, 3 Jun 2015 12:59:38 +0000 (12:59 +0000)]
rl78-real.md: Add peepholes to avoid a register copy when calling a function.
* config/rl78/rl78-real.md: Add peepholes to avoid a register
copy when calling a function.
* config/rl78/rl78.c (need_to_save): Do not push the frame
pointer in an interrupt handler prologue if it is never used.
From-SVN: r224076
Kyrylo Tkachov [Wed, 3 Jun 2015 12:47:36 +0000 (12:47 +0000)]
[ifcvt][obvious] Fix typo in comment
* ifcvt (end_ifcvt_sequence): Fix typo in comment above.
From-SVN: r224075
Ilya Enkovich [Wed, 3 Jun 2015 11:31:08 +0000 (11:31 +0000)]
ipa-chkp.c (chkp_maybe_create_clone): Create alias reference when cloning alias node.
gcc/
* ipa-chkp.c (chkp_maybe_create_clone): Create alias
reference when cloning alias node.
gcc/testsuite/
* gcc.dg/lto/chkp-removed-alias_0.c: New.
From-SVN: r224074
Martin Liska [Wed, 3 Jun 2015 09:36:08 +0000 (11:36 +0200)]
Fix memory report layout at various places.
* alloc-pool.h (struct pool_usage): Correct space padding.
* ggc-page.c (ggc_print_statistics): Align columns in a report.
* mem-stats.h (struct mem_usage): Add argument to print_dash_line.
* tree.c (dump_tree_statistics): Align columns in a report.
From-SVN: r224071
Martin Liska [Wed, 3 Jun 2015 09:33:32 +0000 (11:33 +0200)]
Port pool-allocator memory stats to a new infrastructure.
* alloc-pool.c (allocate_pool_descriptor): Remove.
(struct pool_output_info): Likewise.
(print_alloc_pool_statistics): Likewise.
(dump_alloc_pool_statistics): Likewise.
* alloc-pool.h (struct pool_usage): New struct.
(pool_allocator::initialize): Change usage of memory statistics
to a new interface.
(pool_allocator::release): Likewise.
(pool_allocator::allocate): Likewise.
(pool_allocator::remove): Likewise.
* mem-stats-traits.h (enum mem_alloc_origin): Add new enum value
for a pool allocator.
* mem-stats.h (struct mem_location): Add new ctor.
(struct mem_usage): Add counter for number of
instances.
(mem_alloc_description::register_descriptor): New overload of
* mem-stats.h (mem_location::to_string): New function.
* bitmap.h (struct bitmap_usage): Use this new function.
* ggc-common.c (struct ggc_usage): Likewise.
the function.
From-SVN: r224070
Richard Sandiford [Wed, 3 Jun 2015 09:29:42 +0000 (09:29 +0000)]
defaults.h (SWITCHABLE_TARGET, [...]): Move out of GCC_INSN_FLAGS_H block.
gcc/
* defaults.h (SWITCHABLE_TARGET, TARGET_SUPPORTS_WIDE_INT): Move out
of GCC_INSN_FLAGS_H block.
From-SVN: r224069
Eric Botcazou [Wed, 3 Jun 2015 09:28:07 +0000 (09:28 +0000)]
* gcc-interface/utils.c (copy_type): Also set TYPE_CANONICAL.
From-SVN: r224068
Eric Botcazou [Wed, 3 Jun 2015 09:22:09 +0000 (09:22 +0000)]
trans.c (gnat_to_gnu): Fix typo in latest change.
* gcc-interface/trans.c (gnat_to_gnu) <N_Simple_Return_Statement>: Fix
typo in latest change.
From-SVN: r224066
Andrew Bennett [Wed, 3 Jun 2015 09:15:25 +0000 (09:15 +0000)]
Update check after force_const_mem call in the plus_constant function to see if the value returned is not a NULL_RTX.
2015-06-03 Andrew Bennett <andrew.bennett@imgtec.com>
gcc/
* explow.c (plus_constant): Update check after force_const_mem call
to see if the value returned is not a NULL_RTX.
From-SVN: r224064
Ilya Enkovich [Wed, 3 Jun 2015 08:29:28 +0000 (08:29 +0000)]
ipa.c (symbol_table::remove_unreachable_nodes): Don't remove instumentation thunks calling reachable functions.
gcc/
* ipa.c (symbol_table::remove_unreachable_nodes): Don't
remove instumentation thunks calling reachable functions.
* lto-cgraph.c (output_refs): Always output IPA_REF_CHKP.
* lto/lto-partition.c (privatize_symbol_name_1): New.
(privatize_symbol_name): Privatize both decl and orig_decl
names for instrumented functions.
* cgraph.c (cgraph_node::verify_node): Add transparent
alias chain check for instrumented node.
gcc/testsuite/
* gcc.dg/lto/chkp-privatize-1_0.c: New.
* gcc.dg/lto/chkp-privatize-1_1.c: New.
* gcc.dg/lto/chkp-privatize-2_0.c: New.
* gcc.dg/lto/chkp-privatize-2_1.c: New.
From-SVN: r224063
Marek Polacek [Wed, 3 Jun 2015 08:24:50 +0000 (08:24 +0000)]
re PR c/64223 (same warning repeated twice with same line number)
PR c/64223
PR c/29358
* tree.c (attribute_value_equal): Handle attribute format.
(cmp_attrib_identifiers): Factor out of lookup_ident_attribute.
* gcc.dg/pr64223-1.c: New test.
* gcc.dg/pr64223-2.c: New test.
From-SVN: r224062
Richard Biener [Wed, 3 Jun 2015 08:02:10 +0000 (08:02 +0000)]
re PR tree-optimization/63916 (value-numbering fails to forward variable addresses)
2015-06-03 Richard Biener <rguenther@suse.de>
PR tree-optimization/63916
* tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address):
Forward-propagate non-invariant addresses by splicing their
reference ops if the result isn't going to be used by PRE.
(vn_reference_lookup_3): Remove pointless assert.
* gcc.dg/tree-ssa/ssa-fre-45.c: New testcase.
From-SVN: r224061
Richard Biener [Wed, 3 Jun 2015 07:57:13 +0000 (07:57 +0000)]
re PR middle-end/66375 (wrong code at -O2 and -O3 on x86_64-linux-gnu)
2015-06-03 Richard Biener <rguenther@suse.de>
PR tree-optimization/66375
* tree-scalar-evolution.c (follow_ssa_edge_binary): First
add to the evolution before following SSA edges.
* gcc.dg/torture/pr66375.c: New testcase.
From-SVN: r224060
Bin Cheng [Wed, 3 Jun 2015 07:33:50 +0000 (07:33 +0000)]
tree-ssa-loop-ivopts.c (dump_iv): New parameter.
* tree-ssa-loop-ivopts.c (dump_iv): New parameter.
(dump_use, dump_cand, find_induction_variables): Pass new argument
to dump_iv.
(record_use): Preserve the ssa name information in IV.
From-SVN: r224058
Richard Sandiford [Wed, 3 Jun 2015 06:28:11 +0000 (06:28 +0000)]
genpreds.c (mark_mode_tests): Mark all MATCH_CODEs as NO_MODE_TEST.
gcc/
* genpreds.c (mark_mode_tests): Mark all MATCH_CODEs as
NO_MODE_TEST.
(add_mode_tests): Don't add mode tests if the predicate only
accepts scalar constant integers. Otherwise, allow the mode
of "op" to be VOIDmode if the predicate does accept such integers.
From-SVN: r224056
Bin Cheng [Wed, 3 Jun 2015 06:06:35 +0000 (06:06 +0000)]
pr65447.c: Increase searching number.
gcc/testsuite
* gcc.dg/tree-ssa/pr65447.c: Increase searching number.
Also fix date mis-match in ChangeLog.
From-SVN: r224055
Jim Wilson [Wed, 3 Jun 2015 00:46:19 +0000 (00:46 +0000)]
re PR target/66258 (compiling a stdarg function with arch +nofp generates an ICE)
gcc/
PR target/66258
* config/aarch64/aarch64.c (aarch64_function_value_regno_p): Change
!TARGET_GENERAL_REGS_ONLY to TARGET_FLOAT.
(aarch64_secondary_reload): Likewise
(aarch64_expand_builtin_va_start): Change TARGET_GENERAL_REGS_ONLY
to !TARGET_FLOAT.
(aarch64_gimplify_va_arg_expr, aarch64_setup_incoming_varargs):
Likewise.
From-SVN: r224054
GCC Administrator [Wed, 3 Jun 2015 00:16:17 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r224053
Kugan Vivekanandarajah [Tue, 2 Jun 2015 22:53:15 +0000 (22:53 +0000)]
re PR target/65768 (sub-optimimal code for constant Uses in loop)
gcc/ChangeLog:
2015-06-03 Kugan Vivekanandarajah <kuganv@linaro.org>
Zhenqiang Chen <zhenqiang.chen@linaro.org>
PR target/65768
* cprop.c (try_replace_reg): Check cost of constants before propagating.
gcc/testsuite/ChangeLog:
2015-06-03 Kugan Vivekanandarajah <kuganv@linaro.org>
PR target/65768
* gcc.target/arm/maskdata.c: Remove -fno-gcse.
Co-Authored-By: Zhenqiang Chen <zhenqiang.chen@linaro.org>
From-SVN: r224048
Steven G. Kargl [Tue, 2 Jun 2015 22:11:10 +0000 (22:11 +0000)]
Add the PR number that I forgot in m y previous commit.
From-SVN: r224044
Steven G. Kargl [Tue, 2 Jun 2015 22:08:14 +0000 (22:08 +0000)]
simplify.c (gfc_simplify_reshape): Convert assert into returning NULL, which triggers an error condition.
2015-06-02 Steven G. Kargl <kargl@gcc.gnu.org>
* simplify.c (gfc_simplify_reshape): Convert assert into returning
NULL, which triggers an error condition.
2015-06-02 Steven G. Kargl <kargl@gcc.gnu.org>
* gfortran.dg/reshape_7.f90: New test.
From-SVN: r224043
Michael Meissner [Tue, 2 Jun 2015 21:58:24 +0000 (21:58 +0000)]
rs6000-modes.def (IFmode): Define IFmode to provide access to the IBM extended double floating point mode...
2015-06-02 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/rs6000-modes.def (IFmode): Define IFmode to
provide access to the IBM extended double floating point mode if
long double is IEEE 128-bit floating point.
(KFmode): Define KFmode to provide access to IEEE 128-bit floating
point if long double is the IBM extended double type.
* config/rs6000/rs6000.opt (-mfloat128-none): New switches to
enable adding IEEE 128-bit floating point support.
(-mfloat128-software): Likewise.
(-mfloat128-sw): Likewise.
* config/rs6000/rs6000.c (rs6000_hard_regno_mode_ok): Do not allow
128-bit floating point types to occupy any register if
-mlong-double-64. Do not allow use of IFmode/KFmode unless
-mfloat128-software is enabled.
(rs6000_debug_reg_global): Add IEEE 128-bit floating point debug
support.
(rs6000_option_override_internal): Add -mfloat128-* support.
(rs6000_init_builtins): Setup __ibm128 and __float128 type modes.
* config/rs6000/rs6000.h (rs6000_builtin_type_index): Add ibm128
and float128 type nodes.
(ieee128_float_type_node): Likewise.
(ibm128_float_type_node): Likewise.
From-SVN: r224042
David Malcolm [Tue, 2 Jun 2015 18:45:50 +0000 (18:45 +0000)]
PR c/66220: Fix false positive from -Wmisleading-indentation
gcc/c-family/ChangeLog:
PR c/66220:
* c-indentation.c (should_warn_for_misleading_indentation): Use
expand_location rather than expand_location_to_spelling_point.
Don't warn if the guarding statement is more indented than the
next/body stmts.
gcc/testsuite/ChangeLog:
PR c/66220:
* c-c++-common/Wmisleading-indentation.c (fn_35): New.
(fn_36): New.
From-SVN: r224041
David Malcolm [Tue, 2 Jun 2015 18:39:49 +0000 (18:39 +0000)]
Avoid unnecessary work when -Wmisleading-indentation isn't enabled
gcc/c-family/ChangeLog:
* c-indentation.c (warn_for_misleading_indentation): Bail out
immediately if -Wmisleading-indentation isn't enabled.
From-SVN: r224040
Jason Merrill [Tue, 2 Jun 2015 17:50:23 +0000 (13:50 -0400)]
re PR bootstrap/66319 (gcov-tool.c:84:65: error: invalid conversion from 'int (*)(const c har*, const stat*, int, FTW*)' to 'int (*)(const char*, const stat*, int, FTW)')
PR bootstrap/66319
* configure.ac: Use -std=gnu++98.
From-SVN: r224039
Jason Merrill [Tue, 2 Jun 2015 17:50:18 +0000 (13:50 -0400)]
* g++.dg/warn/Wsystem-headers1.C: Use extern "C".
From-SVN: r224038
Patrick Palka [Tue, 2 Jun 2015 17:50:13 +0000 (00:50 +0700)]
cp-tree.h (init_error): Remove declaration.
* cp-tree.h (init_error): Remove declaration.
* error.c (scratch_pretty_printer): Rename to ...
(actual_pretty_printer): ... this.
(cxx_pp): Constify and update accordingly.
(init_error): Remove definition.
* lex.c (cxx_init): Do not call init_error.
From-SVN: r224037
Steve Ellcey [Tue, 2 Jun 2015 17:12:16 +0000 (17:12 +0000)]
test_installed (--target=): New option.
2015-06-02 Steve Ellcey <sellcey@imgtec.com>
* test_installed (--target=): New option.
From-SVN: r224034
Prathamesh Kulkarni [Tue, 2 Jun 2015 16:42:27 +0000 (16:42 +0000)]
re PR target/49551 (tentative declaration after definition and -fdata-sections cause ICE in C front-end.)
2015-06-02 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
PR c/49551
* c-decl.c (merge_decls): Merge DECL_COMMON.
* gcc.dg/pr49551.c: New test-case.
From-SVN: r224033
Szabolcs Nagy [Tue, 2 Jun 2015 16:39:19 +0000 (16:39 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2015-06-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r224032
Szabolcs Nagy [Tue, 2 Jun 2015 16:21:18 +0000 (16:21 +0000)]
[AArch64][PR 66136] rewrite geniterators.sh in awk
2015-06-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
PR target/66136
* config/aarch64/geniterators.sh: Rewrite in awk.
From-SVN: r224031
Martin Liska [Tue, 2 Jun 2015 14:10:17 +0000 (16:10 +0200)]
Pool allocator fallout: fix uninialized class members.
* alloc-pool.h (pool_allocator::pool_allocator): Set implicit
values to avoid -Wmaybe-uninitialized errors.
From-SVN: r224030
Richard Biener [Tue, 2 Jun 2015 12:33:02 +0000 (12:33 +0000)]
re PR debug/65549 (crash in htab_hash_string with -flto -g)
2015-06-02 Richard Biener <rguenther@suse.de>
PR debug/65549
* dwarf2out.c (lookup_context_die): New function.
(resolve_addr): Avoid forcing a full DIE for the
target of a DW_TAG_GNU_call_site during late compilation.
Instead create a stub DIE without a type if we have a
context DIE present.
* g++.dg/lto/pr65549_0.C: New testcase.
From-SVN: r224029
Thomas Schwinge [Tue, 2 Jun 2015 11:48:56 +0000 (13:48 +0200)]
[PR libgomp/65742, PR middle-end/66332] XFAIL acc_on_device compile-time evaluation
The OpenACC 2.0a specification mandates differently, but we currently do get a
library call in the host code.
PR libgomp/65742
PR middle-end/66332
gcc/testsuite/
* c-c++-common/goacc/acc_on_device-2.c: XFAIL for C, too.
From-SVN: r224028
Uros Bizjak [Tue, 2 Jun 2015 11:23:48 +0000 (13:23 +0200)]
mangle-regparm.C (dg-do): Fix x86_32 target selector.
* g++.dg/abi/mangle-regparm.C (dg-do): Fix x86_32 target selector.
From-SVN: r224026