Rainer Orth [Wed, 16 Apr 2014 09:09:42 +0000 (09:09 +0000)]
Correctly detect native TLS support with 64-bit gas on Solaris/x86 (PR target/60817)
PR target/60817
* configure.ac (set_have_as_tls): Merge i[34567]86-*-* and
x86_64-*-* cases.
Pass necessary as flags on 64-bit Solaris/x86.
Use lowercase relocs for x86_64-*-*.
* configure: Regenerate.
From-SVN: r209440
GCC Administrator [Wed, 16 Apr 2014 00:17:04 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r209439
Jan Hubicka [Tue, 15 Apr 2014 21:01:04 +0000 (23:01 +0200)]
ipa-devirt.c (referenced_from_vtable_p): New predicate.
* ipa-devirt.c (referenced_from_vtable_p): New predicate.
(maybe_record_node, likely_target_p): Use it.
From-SVN: r209435
Jonathan Wakely [Tue, 15 Apr 2014 20:15:38 +0000 (21:15 +0100)]
shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Remove name of unused parameter.
* include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
Remove name of unused parameter.
From-SVN: r209434
Jonathan Wakely [Tue, 15 Apr 2014 19:05:57 +0000 (20:05 +0100)]
* include/experimental/string_view: Fix inconsistent exception specs.
From-SVN: r209433
Jonathan Wakely [Tue, 15 Apr 2014 19:05:52 +0000 (20:05 +0100)]
container.cc: Do not use uninitialized members in mem-initializers.
* testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
not use uninitialized members in mem-initializers.
* testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
* testsuite/util/testsuite_common_types.h: Update comment.
From-SVN: r209432
Jonathan Wakely [Tue, 15 Apr 2014 19:05:45 +0000 (20:05 +0100)]
re PR c++/60786 (In C++11 an explicit instantiation with an unqualified name must be in the right namespace)
PR c++/60786
* testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1.cc: Fix invalid explicit instantiations with unqualified names.
* testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
2.cc: Likweise.
* testsuite/20_util/tuple/53648.cc: Likweise.
* testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
Likewise.
* testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
Likewise.
* testsuite/23_containers/unordered_map/requirements/
debug_container.cc: Likewise.
* testsuite/23_containers/unordered_map/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/unordered_multimap/requirements/debug.cc:
Likewise.
* testsuite/23_containers/unordered_multimap/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/unordered_multiset/requirements/debug.cc:
Likewise.
* testsuite/23_containers/unordered_multiset/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/unordered_set/requirements/
debug_container.cc: Likewise.
* testsuite/23_containers/unordered_set/requirements/
explicit_instantiation/3.cc: Likewise.
From-SVN: r209431
Jonathan Wakely [Tue, 15 Apr 2014 18:28:57 +0000 (19:28 +0100)]
* include/std/atomic: Uglify parameter names.
From-SVN: r209429
Jonathan Wakely [Tue, 15 Apr 2014 18:28:50 +0000 (19:28 +0100)]
shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use delegating constructor.
* include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
delegating constructor.
* include/bits/shared_ptr_base.h
(__shared_ptr::__shared_ptr(nullptr_t)): Likewise
From-SVN: r209428
Jonathan Wakely [Tue, 15 Apr 2014 18:28:41 +0000 (19:28 +0100)]
atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add const to constexpr member functions.
* include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
const to constexpr member functions.
From-SVN: r209427
Bill Schmidt [Tue, 15 Apr 2014 18:20:01 +0000 (18:20 +0000)]
re PR target/60839 (PowerPC: internal compiler error: in extract_insn, at recog.c:2154)
2014-04-15 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR target/60839
Revert following patch
2014-04-02 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/60735
* config/rs6000/rs6000.c (rs6000_hard_regno_mode_ok): If we have
software floating point or no floating point registers, do not
allow any type in the FPRs. Eliminate a test for SPE SIMD types
in GPRs that occurs after we tested for GPRs that would never be
true.
* config/rs6000/rs6000.md (mov<mode>_softfloat32, FMOVE64):
Rewrite tests to use TARGET_DOUBLE_FLOAT and TARGET_E500_DOUBLE,
since the FMOVE64 type is DFmode/DDmode. If TARGET_E500_DOUBLE,
specifically allow DDmode, since that does not use the SPE SIMD
instructions.
From-SVN: r209425
Mark Wielaard [Tue, 15 Apr 2014 17:18:20 +0000 (17:18 +0000)]
Add DW_AT_const_value as unsigned or int depending on type and value used.
As the comment in the code already indicated DWARF2 does provide
DW_FORM_sdata/DW_FORM_udata to represent signed/unsigned data.
Enumeration constants wider than HOST_WIDE_INT are already handled
separately. Those constant values that do fit a HOST_WIDE_INT can
be encoded as signed or unsigned depending on type and value for
more efficient encoding.
* dwarf2out.c (gen_enumeration_type_die): Add DW_AT_const_value
as unsigned or int depending on type and value used.
From-SVN: r209424
Richard Biener [Tue, 15 Apr 2014 16:04:11 +0000 (16:04 +0000)]
re PR rtl-optimization/56965 (nonoverlapping_component_refs_p is bogus and slow)
2014-04-15 Richard Biener <rguenther@suse.de>
PR rtl-optimization/56965
* alias.c (ncr_compar, nonoverlapping_component_refs_p): Move ...
* tree-ssa-alias.c (ncr_compar, nonoverlapping_component_refs_p):
... here.
* alias.c (true_dependence_1): Do not call
nonoverlapping_component_refs_p.
* tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Call
nonoverlapping_component_refs_p.
(indirect_refs_may_alias_p): Likewise.
* gcc.dg/torture/pr56965-1.c: New testcase.
* gcc.dg/torture/pr56965-2.c: Likewise.
From-SVN: r209423
Jonathan Wakely [Tue, 15 Apr 2014 15:25:52 +0000 (16:25 +0100)]
re PR libstdc++/60594 (std::function of a type with a declared (but not defined) return type fails to compile)
PR libstdc++/60594
* include/std/functional (function::_Callable): Exclude own type
from the callable checks.
* testsuite/20_util/function/60594.cc: New.
From-SVN: r209422
Teresa Johnson [Tue, 15 Apr 2014 15:12:00 +0000 (15:12 +0000)]
cfg.c (dump_bb_info): Fix flags check.
2014-04-15 Teresa Johnson <tejohnson@google.com>
* cfg.c (dump_bb_info): Fix flags check.
* tree-cfg.c (remove_bb): Only dump TDF_BLOCKS when removing.
2014-04-15 Teresa Johnson <tejohnson@google.com>
* gcc.dg/tree-prof/update-loopch.c: Update expected output.
From-SVN: r209421
Paolo Carlini [Tue, 15 Apr 2014 14:31:40 +0000 (14:31 +0000)]
decl.c (duplicate_decls): Remove redundant TYPE_NAME use.
2014-04-15 Paolo Carlini <paolo.carlini@oracle.com>
* decl.c (duplicate_decls): Remove redundant TYPE_NAME use.
* name-lookup.c (pushdecl_maybe_friend_1): Likewise.
(do_class_using_decl): Likewise.
* mangle.c (dump_substitution_candidates): Use TYPE_NAME_STRING.
From-SVN: r209420
Kyrylo Tkachov [Tue, 15 Apr 2014 14:04:06 +0000 (14:04 +0000)]
re PR rtl-optimization/60663 (Errors out on valid inline asm)
PR rtl-optimization/60663
* config/arm/arm.c (arm_new_rtx_costs): Improve ASM_OPERANDS case,
avoid 0 cost.
From-SVN: r209419
Jonathan Wakely [Tue, 15 Apr 2014 13:48:07 +0000 (14:48 +0100)]
re PR libstdc++/60695 (std::atomic<X> doesn't work when X is of zero size)
PR libstdc++/60695
* include/std/atomic (atomic<_Tp>): Add static assertion.
* testsuite/29_atomics/atomic/60695.cc: New.
From-SVN: r209418
Richard Biener [Tue, 15 Apr 2014 13:25:44 +0000 (13:25 +0000)]
lto-streamer.h (LTO_major_version): Bump to 4.
2014-04-15 Richard Biener <rguenther@suse.de>
* lto-streamer.h (LTO_major_version): Bump to 4.
From-SVN: r209417
Richard Biener [Tue, 15 Apr 2014 12:56:16 +0000 (12:56 +0000)]
common.opt (lto_partition_model): New enum.
2014-04-15 Richard Biener <rguenther@suse.de>
* common.opt (lto_partition_model): New enum.
(flto-partition=): Merge separate options with a single with argument,
add -flto-partition=one support.
* flag-types.h (enum lto_partition_model): Declare.
* opts.c (finish_options): Remove duplicate -flto-partition=
option check.
* lto-wrapper.c (run_gcc): Adjust.
lto/
* lto.c: Include params.h.
(do_whole_program_analysis): Switch on flag_lto_partition value,
add support for LTO_PARTITION_ONE.
* lto-partition.h (lto_balanced_map): Adjust.
* lto-partition.c (lto_balanced_map): Get number of desired
partitions as argument to support -flto-partition=one.
From-SVN: r209416
Eric Botcazou [Tue, 15 Apr 2014 11:09:33 +0000 (11:09 +0000)]
* gcc-interface/trans.c (Case_Statement_to_gnu): Revert latest change.
From-SVN: r209415
Jonathan Wakely [Tue, 15 Apr 2014 10:52:06 +0000 (11:52 +0100)]
re PR libstdc++/60734 (Undefined behavior in g++-v4/bits/stl_tree.h)
PR libstdc++/60734
* include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
From-SVN: r209414
Richard Biener [Tue, 15 Apr 2014 10:18:28 +0000 (10:18 +0000)]
alias.c (ncr_compar): New function.
2014-04-15 Richard Biener <rguenther@suse.de>
* alias.c (ncr_compar): New function.
(nonoverlapping_component_refs_p): Re-implement in O (n log n).
From-SVN: r209413
Richard Biener [Tue, 15 Apr 2014 10:09:40 +0000 (10:09 +0000)]
alias.c (record_component_aliases): Do not walk BINFOs.
2014-04-15 Richard Biener <rguenther@suse.de>
* alias.c (record_component_aliases): Do not walk BINFOs.
From-SVN: r209412
Eric Botcazou [Tue, 15 Apr 2014 09:23:21 +0000 (09:23 +0000)]
decl.c (gnat_to_gnu_entity): Create a mere scalar constant instead of a reference for renaming of scalar literal.
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Create a mere
scalar constant instead of a reference for renaming of scalar literal.
Do not create a new object for constant renaming except for a function
call. Make sure a VAR_DECL is created for the renaming pointer.
* gcc-interface/trans.c (constant_decl_with_initializer_p): New.
(fold_constant_decl_in_expr): New function.
(Identifier_to_gnu): Use constant_decl_with_initializer_p.
For a constant renaming, try to fold a constant DECL in the result.
(lvalue_required_p) <N_Object_Renaming_Declaration>: Always return 1.
(Identifier_to_gnu): Reference the renamed object of constant renaming
pointers directly.
(Case_Statement_to_gnu): Do not re-fold the bounds of integer types.
Assert that the case values are constant.
* gcc-interface/utils.c (invalidate_global_renaming_pointers): Do not
invalidate constant renaming pointers.
Co-Authored-By: Pierre-Marie de Rodat <derodat@adacore.com>
From-SVN: r209411
Eric Botcazou [Tue, 15 Apr 2014 08:59:12 +0000 (08:59 +0000)]
utils.c (type_for_vector_element_p): New predicate.
* gcc-interface/utils.c (type_for_vector_element_p): New predicate.
(build_vector_type_for_size): New function.
(build_vector_type_for_array): Likewise.
(unchecked_convert): Build an intermediate vector type to convert
from a generic array type to a vector type.
(handle_vector_size_attribute): Reimplement.
(handle_vector_type_attribute): Likewise.
From-SVN: r209410
Eric Botcazou [Tue, 15 Apr 2014 08:47:29 +0000 (08:47 +0000)]
decl.c (prepend_one_attribute_pragma): Call Is_OK_Static_Expression in lieu of Is_Static_Expression to detect valid...
* gcc-interface/decl.c (prepend_one_attribute_pragma): Call
Is_OK_Static_Expression in lieu of Is_Static_Expression to
detect valid arguments.
From-SVN: r209409
Richard Biener [Tue, 15 Apr 2014 08:21:56 +0000 (08:21 +0000)]
tree-ssa-structalias.c (find_func_aliases_for_builtin_call): Add struct function argument and adjust.
2014-04-15 Richard Biener <rguenther@suse.de>
* tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
Add struct function argument and adjust.
(find_func_aliases_for_call): Likewise.
(find_func_aliases): Likewise.
(find_func_clobbers): Likewise.
(intra_create_variable_infos): Likewise.
(compute_points_to_sets): Likewise.
(ipa_pta_execute): Adjust. Do not push/pop cfun.
From-SVN: r209408
Eric Botcazou [Tue, 15 Apr 2014 08:16:10 +0000 (08:16 +0000)]
Minor tweaks
From-SVN: r209407
Richard Biener [Tue, 15 Apr 2014 08:08:06 +0000 (08:08 +0000)]
tree.c (iterative_hash_expr): Use enum tree_code_class to store TREE_CODE_CLASS.
2014-04-15 Richard Biener <rguenther@suse.de>
* tree.c (iterative_hash_expr): Use enum tree_code_class
to store TREE_CODE_CLASS.
(tree_block): Likewise.
(tree_set_block): Likewise.
* tree.h (fold_build_pointer_plus_loc): Use
convert_to_ptrofftype_loc.
From-SVN: r209406
Jakub Jelinek [Tue, 15 Apr 2014 08:02:46 +0000 (10:02 +0200)]
re PR plugins/59335 (Plugin doesn't build on trunk)
PR plugins/59335
* Makefile.in (PLUGIN_HEADERS): Add various headers that have been
added in 4.9.
* Make-lang.h (CP_PLUGIN_HEADERS): Add type-utils.h.
From-SVN: r209404
Eric Botcazou [Tue, 15 Apr 2014 08:01:01 +0000 (08:01 +0000)]
cfgloop.h (struct loop): Move force_vectorize down.
* cfgloop.h (struct loop): Move force_vectorize down.
* gimplify.c (gimple_boolify) <ANNOTATE_EXPR>: Handle new kinds.
(gimplify_expr) <ANNOTATE_EXPR>: Minor tweak.
* lto-streamer-in.c (input_cfg): Read dont_vectorize field.
* lto-streamer-out.c (output_cfg): Write dont_vectorize field.
* tree-cfg.c (replace_loop_annotate): Revamp and handle new kinds.
* tree-core.h (enum annot_expr_kind): Add new kind values.
* tree-inline.c (copy_loops): Copy dont_vectorize field and reorder.
* tree-pretty-print.c (dump_generic_node) <ANNOTATE_EXPR>: Handle new
kinds.
* tree.def (ANNOTATE_EXPR): Tweak comment.
ada/
* gcc-interface/trans.c (gnat_gimplify_stmt): Propagate loop hints.
From-SVN: r209403
Max Ostapenko [Tue, 15 Apr 2014 07:31:51 +0000 (10:31 +0300)]
null-deref-1.c: Change regexp to pass test under qemu-arm.
2014-04-15 Max Ostapenko <m.ostapenko@partner.samsung.com>
* c-c++-common/asan/null-deref-1.c: Change regexp to pass test
under qemu-arm.
* c-c++-common/ubsan/div-by-zero-1.c: Likewise.
* c-c++-common/ubsan/div-by-zero-2.c: Likewise.
* c-c++-common/ubsan/div-by-zero-3.c: Likewise.
* c-c++-common/ubsan/load-bool-enum.c (foo): Likewise.
* c-c++-common/ubsan/null-1.c: Likewise.
* c-c++-common/ubsan/null-10.c: Likewise.
* c-c++-common/ubsan/null-11.c: Likewise.
* c-c++-common/ubsan/null-2.c: Likewise.
* c-c++-common/ubsan/null-3.c: Likewise.
* c-c++-common/ubsan/null-4.c: Likewise.
* c-c++-common/ubsan/null-5.c: Likewise.
* c-c++-common/ubsan/null-6.c: Likewise.
* c-c++-common/ubsan/null-7.c: Likewise.
* c-c++-common/ubsan/null-8.c: Likewise.
* c-c++-common/ubsan/null-9.c: Likewise.
* c-c++-common/ubsan/overflow-add-2.c: Likewise.
* c-c++-common/ubsan/overflow-int128.c: Likewise.
* c-c++-common/ubsan/overflow-mul-2.c: Likewise.
* c-c++-common/ubsan/overflow-mul-4.c: Likewise.
* c-c++-common/ubsan/overflow-negate-1.c: Likewise.
* c-c++-common/ubsan/overflow-sub-2.c: Likewise.
* c-c++-common/ubsan/pr59333.c: Likewise.
* c-c++-common/ubsan/pr59667.c: Likewise.
* c-c++-common/ubsan/pr60613-2.c: Likewise.
* c-c++-common/ubsan/pr60636.c: Likewise.
* c-c++-common/ubsan/shift-1.c: Likewise.
* c-c++-common/ubsan/shift-2.c: Likewise.
* c-c++-common/ubsan/vla-1.c: Likewise.
From-SVN: r209402
GCC Administrator [Tue, 15 Apr 2014 00:16:39 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r209399
Jonathan Wakely [Mon, 14 Apr 2014 23:17:52 +0000 (00:17 +0100)]
N3887 Consistent Metafunction Aliases
* include/std/tuple (tuple_element_t): Define.
* testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
test.
* testsuite/20_util/tuple/tuple_element_t.cc: New.
From-SVN: r209395
Chris Manghane [Mon, 14 Apr 2014 22:43:47 +0000 (22:43 +0000)]
Sync to current external repository.
user: Ian Lance Taylor <iant@golang.org>
date: Thu Apr 10 09:25:24 2014 -0700
files: go/expressions.cc
description:
compiler: add checks for constant overflow
Prevent extremely large constants from eating all of memory.
user: Chris Manghane <cmang@golang.org>
date: Mon Apr 07 16:57:09 2014 -0700
files: go/gogo-tree.cc go/gogo.cc go/gogo.h go/statements.cc
description:
compiler: Use backend interface for variable initialization.
user: Chris Manghane <cmang@golang.org>
date: Thu Apr 03 19:56:05 2014 -0700
files: go/backend.h go/gogo-tree.cc go/gogo.cc go/gogo.h
description:
compiler: Use backend interface to build function code.
changeset: 1269:
6e30875d539e
user: Chris Manghane <cmang@golang.org>
date: Wed Apr 02 13:16:00 2014 -0700
files: go/backend.h go/gogo-tree.cc go/gogo.cc go/gogo.h
description:
compiler: Use backend interface for building function defer wrappers.
user: Chris Manghane <cmang@golang.org>
date: Mon Mar 31 12:42:49 2014 -0700
files: go/expressions.cc go/gogo-tree.cc go/gogo.cc go/gogo.h
description:
compiler: Use backend interface for memory allocation.
user: Chris Manghane <cmang@golang.org>
date: Thu Mar 27 14:22:49 2014 -0700
files: go/backend.h go/expressions.cc go/expressions.h
description:
compiler: Use backend interface for fixed array construction.
user: Chris Manghane <cmang@golang.org>
date: Mon Mar 17 21:25:04 2014 -0700
files: go/expressions.cc
description:
compiler: Check for loops in self-referential array types. Fixes issue 7525.
user: Chris Manghane <cmang@golang.org>
date: Mon Mar 17 14:31:59 2014 -0700
files: go/gogo.cc go/parse.cc
description:
compiler: Don't declare blank labels. Fixes issue 7539.
user: Chris Manghane <cmang@golang.org>
date: Mon Mar 17 13:12:32 2014 -0700
files: go/backend.h go/expressions.cc go/expressions.h go/runtime.def
description:
compiler: Use backend interface for call expressions.
user: Chris Manghane <cmang@golang.org>
date: Wed Mar 12 13:34:27 2014 -0700
files: go/expressions.cc go/expressions.h go/gogo-tree.cc go/statements.cc
description:
compiler: Use backend interface map construction.
user: Chris Manghane <cmang@golang.org>
date: Tue Mar 11 12:53:06 2014 -0700
files: go/backend.h go/expressions.cc go/gogo-tree.cc go/gogo.h
description:
compiler: Use backend interface for string expressions.
user: Chris Manghane <cmang@golang.org>
date: Sat Mar 08 15:56:59 2014 -0800
files: go/backend.h go/expressions.cc go/expressions.h
description:
compiler: Use backend interface for array and string indexing.
user: Chris Manghane <cmang@golang.org>
date: Fri Mar 07 16:02:18 2014 -0800
files: go/expressions.cc
description:
compiler: Use backend interface for constant expressions.
user: Chris Manghane <cmang@golang.org>
date: Thu Mar 06 16:00:18 2014 -0800
files: go/expressions.cc
description:
compiler: Use backend interface for struct construction.
user: Chris Manghane <cmang@golang.org>
date: Wed Mar 05 13:09:37 2014 -0800
files: go/expressions.cc
description:
compiler: Use backend interface for type conversions.
user: Chris Manghane <cmang@golang.org>
date: Tue Mar 04 07:03:47 2014 -0800
files: go/expressions.cc go/expressions.h go/gogo-tree.cc go/gogo.h go/runtime.def libgo/runtime/chan.c
description:
compiler: Use backend interface for channel receive.
user: Chris Manghane <cmang@golang.org>
date: Mon Mar 03 15:18:57 2014 -0800
files: go/backend.h go/expressions.cc go/runtime.def
description:
compiler: Use backend interface for builtin calls.
user: Chris Manghane <cmang@golang.org>
date: Mon Mar 03 07:44:35 2014 -0800
files: go/expressions.cc go/expressions.h go/types.cc go/types.h
description:
compiler: Use backend interface for string info.
user: Chris Manghane <cmang@golang.org>
date: Fri Feb 28 10:45:55 2014 -0800
files: go/expressions.cc go/expressions.h go/gogo-tree.cc go/statements.cc
description:
compiler: Use backend interface for map indexing.
user: Chris Manghane <cmang@golang.org>
date: Wed Feb 26 14:13:10 2014 -0800
files: go/expressions.cc go/expressions.h
description:
compiler: Use backend interface for slice value expressions.
user: Chris Manghane <cmang@golang.org>
date: Wed Feb 26 13:12:19 2014 -0800
files: go/backend.h go/expressions.cc go/expressions.h go/gogo-tree.cc go/runtime.def go/statements.cc
description:
compiler: Use backend interface for interface values.
user: Chris Manghane <cmang@golang.org>
date: Mon Feb 24 12:30:13 2014 -0800
files: go/expressions.cc go/expressions.h go/parse.cc go/statements.cc
description:
compiler: Change Heap_composite_expression to Heap_expression.
user: Chris Manghane <cmang@golang.org>
date: Thu Feb 20 19:47:06 2014 -0800
files: go/expressions.cc go/expressions.h go/gogo-tree.cc go/gogo.cc go/gogo.h go/types.cc go/types.h
description:
compiler: Use backend interface for interface method table expressions.
user: Chris Manghane <cmang@golang.org>
date: Mon Feb 03 14:36:20 2014 -0800
files: go/expressions.cc go/expressions.h
description:
compiler: Add compound expressions to the frontend.
* go-gcc.cc: Include "convert.h".
(Gcc_backend::string_constant_expression): New function.
(Gcc_backend::real_part_expression): Likewise.
(Gcc_backend::imag_part_expression): Likewise.
(Gcc_backend::complex_expression): Likewise.
(Gcc_backend::constructor_expression): Likewise.
(Gcc_backend::array_constructor_expression): Likewise.
(Gcc_backend::pointer_offset_expression): Likewise.
(Gcc_backend::array_index_expression): Likewise.
(Gcc_backend::call_expression): Likewise.
(Gcc_backend::exception_handler_statement): Likewise.
(Gcc_backend::function_defer_statement): Likewise.
(Gcc_backend::function_set_parameters): Likewise.
(Gcc_backend::function_set_body): Likewise.
(Gcc_backend::convert_expression): Handle various type
conversions.
From-SVN: r209393
Jan Hubicka [Mon, 14 Apr 2014 19:59:00 +0000 (21:59 +0200)]
ipa-devirt.c (maybe_record_node): Ignore all non-methods (including cxa_pure_virtual).
* ipa-devirt.c (maybe_record_node): Ignore all non-methods (including
cxa_pure_virtual).
From-SVN: r209391
Paolo Carlini [Mon, 14 Apr 2014 18:10:27 +0000 (18:10 +0000)]
tree.h (TYPE_IDENTIFIER): Declare.
2014-04-14 Paolo Carlini <paolo.carlini@oracle.com>
* tree.h (TYPE_IDENTIFIER): Declare.
* tree.c (subrange_type_for_debug_p): Use it.
* godump.c (go_format_type): Likewise.
* dwarf2out.c (is_cxx_auto, modified_type_die,
gen_type_die_with_usage, gen_type_die_with_usage): Likewise.
* dbxout.c (dbxout_type, dbxout_symbol): Likewise.
/cp
2014-04-14 Paolo Carlini <paolo.carlini@oracle.com>
* cp-tree.h (TYPE_IDENTIFIER): Remove declaration.
/objcp
2014-04-14 Paolo Carlini <paolo.carlini@oracle.com>
* objcp-decl.h (OBJC_TYPE_NAME, OBJC_SET_TYPE_NAME): Use
TYPE_IDENTIFIER.
/ada
2014-04-14 Paolo Carlini <paolo.carlini@oracle.com>
* gcc-interface/decl.c (gnat_to_gnu_entity, components_to_record):
Use TYPE_IDENTIFIER.
* gcc-interface/utils.c (make_aligning_type, maybe_pad_type,
finish_record_type, rest_of_record_type_compilation): Likewise.
From-SVN: r209390
Jan Hubicka [Mon, 14 Apr 2014 17:53:34 +0000 (19:53 +0200)]
re PR lto/60820 (ice in ctor_for_folding, at varpool.c:291)
PR lto/60820
* varpool.c (varpool_remove_node): Do not alter decls when streaming.
From-SVN: r209389
Uros Bizjak [Mon, 14 Apr 2014 17:49:36 +0000 (19:49 +0200)]
i386.c (examine_argument): Return bool.
* config/i386/i386.c (examine_argument): Return bool. Return true if
parameter should be passed in memory.
<case X86_64_COMPLEX_X87_CLASS>: Adjust.
(construct_container): Update calls to examine_argument.
(function_arg_advance_64): Ditto.
(return_in_memory_32): Merge with ix86_return_in_memory.
(return_in_memory_64): Ditto.
(return_in_memory_ms_64): Ditto.
From-SVN: r209388
Jan Hubicka [Mon, 14 Apr 2014 17:18:54 +0000 (19:18 +0200)]
ipa-utils.c (ipa_merge_profiles): Merge profile_id.
* ipa-utils.c (ipa_merge_profiles): Merge profile_id.
* coverage.c (coverage_compute_profile_id): Handle externally visible
symbols.
* lto/lto-symtab.c (lto_cgraph_replace_node): Don't re-merge
tp_first_run.
From-SVN: r209387
Martin Jambor [Mon, 14 Apr 2014 17:17:27 +0000 (19:17 +0200)]
tree-sra.c (ipa_sra_preliminary_function_checks): Skip DECL_DISREGARD_INLINE_LIMITS functions.
2014-04-14 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (ipa_sra_preliminary_function_checks): Skip
DECL_DISREGARD_INLINE_LIMITS functions.
From-SVN: r209386
H.J. Lu [Mon, 14 Apr 2014 17:01:03 +0000 (17:01 +0000)]
Revert the last change on *fixuns_trunc<mode>_1
PR target/60827
* config/i386/i386.md (*fixuns_trunc<mode>_1): Revert the last
change.
From-SVN: r209385
H.J. Lu [Mon, 14 Apr 2014 16:49:24 +0000 (16:49 +0000)]
Check optimize_insn_for_speed_p in *fixuns_trunc<mode>_1
Since fixuns_trunc<mode>si2 expander checks optimize_insn_for_size_p
before generating *fixuns_trunc<mode>_1, we should use
optimize_insn_for_speed_p in *fixuns_trunc<mode>_1 for consistency.
PR target/60827
* config/i386/i386.md (*fixuns_trunc<mode>_1): Check
optimize_insn_for_speed_p instead of
optimize_function_for_speed_p.
From-SVN: r209383
Jonathan Wakely [Mon, 14 Apr 2014 15:32:58 +0000 (16:32 +0100)]
re PR libstdc++/60497 (unique_ptr<T> tries to complete its type T even though it's not required to be a complete type)
PR libstdc++/60497
* include/std/tuple (get): Qualify calls to prevent ADL.
* testsuite/20_util/tuple/60497.cc: New.
From-SVN: r209381
Jonathan Wakely [Mon, 14 Apr 2014 15:13:02 +0000 (16:13 +0100)]
allocator.h (operator==, operator!=): Add exception specifications.
* include/bits/allocator.h (operator==, operator!=): Add exception
specifications.
From-SVN: r209379
Jonathan Wakely [Mon, 14 Apr 2014 14:51:35 +0000 (15:51 +0100)]
Limit operations on vector::pointer to NullablePointer requirements.
* include/bits/stl_vector.h (_Vector_base::_Vector_impl,
_Vector_base::_M_allocate): NullablePointer requirements do not
include initialization from literal zero, use value-initialization.
* include/bits/vector.tcc (vector::_M_insert_aux,
vector::_M_explace_back_aux): Likewise for assignment.
From-SVN: r209377
Yufeng Zhang [Mon, 14 Apr 2014 14:40:02 +0000 (14:40 +0000)]
invoke.texi (free): Document AArch64.
gcc/
* doc/invoke.texi (free): Document AArch64.
From-SVN: r209376
Eric Botcazou [Mon, 14 Apr 2014 14:18:26 +0000 (14:18 +0000)]
snames.ads-tmpl (Name_Ivdep): New pragma-related name.
* snames.ads-tmpl (Name_Ivdep): New pragma-related name.
* sem_prag.adb (Analyze_Pragma) <Pragma_Loop_Optimize>: Add support
for Ivdep hint.
* gnat_rm.texi (Implementation Defined Pragmas): Document new Ivdep
hint for Loop_Optimize.
* gnat_ugn.texi (Vectorization of loops): Mention new Ivdep hint.
* gcc-interface/trans.c (Pragma_to_gnu) <Pragma_Loop_Optimize>: Deal
with new Ivdep hint.
* gcc-interface/ada-tree.h (LOOP_STMT_IVDEP): New macro.
* gcc-interface/trans.c (Pragma_to_gnu) <Pragma_Loop_Optimize>: Deal
with new Ivdep hint.
(gnat_gimplify_stmt) <LOOP_STMT>: Propagate the loop hints.
From-SVN: r209375
Richard Biener [Mon, 14 Apr 2014 13:57:00 +0000 (13:57 +0000)]
re PR tree-optimization/60042 (vectorizer still does too many dependence tests for himeno:jacobi)
2014-04-14 Richard Biener <rguenther@suse.de>
PR tree-optimization/60042
* tree-ssa-pre.c (inhibit_phi_insertion): Remove.
(insert_into_preds_of_block): Do not prevent PHI insertion
for REFERENCE exprs here ...
(eliminate_dom_walker::before_dom_children): ... but prevent
their use here under similar conditions when applied to the
IL after PRE optimizations.
From-SVN: r209374
Richard Biener [Mon, 14 Apr 2014 13:55:46 +0000 (13:55 +0000)]
passes.def: Move early points-to after early SRA.
2014-04-14 Richard Biener <rguenther@suse.de>
* passes.def: Move early points-to after early SRA.
From-SVN: r209373
Richard Biener [Mon, 14 Apr 2014 13:53:35 +0000 (13:53 +0000)]
tree-ssa-forwprop.c (simplify_gimple_switch): Enhance check for which sign-changes we allow when...
2014-04-14 Richard Biener <rguenther@suse.de>
* tree-ssa-forwprop.c (simplify_gimple_switch): Enhance
check for which sign-changes we allow when forwarding
a converted value into a switch.
* g++.dg/tree-ssa/forwprop-switch.C: New testcase.
From-SVN: r209372
Eric Botcazou [Mon, 14 Apr 2014 13:51:42 +0000 (13:51 +0000)]
opt.ads (Suppress_Back_Annotation): Remove as unused.
* opt.ads (Suppress_Back_Annotation): Remove as unused.
* fe.h (Back_Annotate_Rep_Info): Likewise.
(Global_Discard_Names): Likewise.
(List_Representation_Info): Declare.
* types.h (Uint_Minus_1): Likewise.
* repinfo.ads: Document back-annotation change.
* gcc-interface/gigi.h (init_gnat_decl): Declare.
(destroy_gnat_decl): Likewise.
* gcc-interface/decl.c (annotate_value): Do not create the cache of
annotated values here but...
<CALL_EXPR>: Only inline the call if -gnatR3 is specified or we are
in ASIS mode.
(init_gnat_decl): ...here instead. New function.
(destroy_gnat_decl): Likewise.
* gcc-interface/trans.c (gigi): Call {init|destroy}_gnat_decl.
* gcc-interface/utils.c (init_gnat_utils): Minor reformatting.
Co-Authored-By: Robert Dewar <dewar@adacore.com>
From-SVN: r209371
Eric Botcazou [Mon, 14 Apr 2014 13:33:23 +0000 (13:33 +0000)]
stor-layout.c (place_field): Finalize non-constant offset for the field, if any.
* stor-layout.c (place_field): Finalize non-constant offset for the
field, if any.
ada/
* gcc-interface/decl.c (create_field_decl_from): Finalize non-constant
offset for the field, if any.
From-SVN: r209369
Rainer Orth [Mon, 14 Apr 2014 12:52:00 +0000 (12:52 +0000)]
Skip gcc.dg/lto/pr55113 on Solaris 10+/x86
* gcc.dg/lto/pr55113_0.c: Skip on i?86-*-solaris2.1[0-1]*.
From-SVN: r209367
Richard Biener [Mon, 14 Apr 2014 11:49:42 +0000 (11:49 +0000)]
re PR c/60819 (dse1 removing not-dead insn (aliasing issue?))
2014-04-14 Richard Biener <rguenther@suse.de>
Marc Glisse <marc.glisse@inria.fr>
PR c/60819
c-family/
* c-common.c (convert_vector_to_pointer_for_subscript): Properly
apply may-alias the scalar pointer type when applicable.
* gcc.target/i386/vec-may_alias.c: New testcase.
Co-Authored-By: Marc Glisse <marc.glisse@inria.fr>
From-SVN: r209365
Richard Biener [Mon, 14 Apr 2014 11:48:22 +0000 (11:48 +0000)]
tree-switch-conversion.c (lshift_cheap_p): Get speed_p as argument.
2014-04-14 Richard Biener <rguenther@suse.de>
* tree-switch-conversion.c (lshift_cheap_p): Get speed_p
as argument.
(expand_switch_using_bit_tests_p): Likewise.
(process_switch): Compute and pass on speed_p based on the
switch stmt.
* tree-ssa-math-opts.c (gimple_expand_builtin_pow): Use
optimize_bb_for_speed_p.
From-SVN: r209364
Eric Botcazou [Mon, 14 Apr 2014 10:42:12 +0000 (10:42 +0000)]
cfgloop.h (struct loop): Rename force_vect into force_vectorize.
* cfgloop.h (struct loop): Rename force_vect into force_vectorize.
* function.h (struct function): Rename has_force_vect_loops into
has_force_vectorize_loops.
* lto-streamer-in.c (input_cfg): Adjust for renaming.
(input_struct_function_base): Likewise.
* lto-streamer-out.c (output_cfg): Likewise.
(output_struct_function_base): Likewise.
* omp-low.c (expand_omp_simd): Likewise.
* tree-cfg.c (move_sese_region_to_fn): Likewise.
* tree-if-conv.c (ifcvt_can_use_mask_load_store): Likewise.
(version_loop_for_if_conversion): Likewise.
(tree_if_conversion): Likewise.
(main_tree_if_conversion): Likewise.
(gate_tree_if_conversion): Likewise.
* tree-inline.c (copy_loops): Likewise.
* tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely_1): Likewise.
* tree-ssa-loop.c (tree_loop_vectorize): Likewise.
* tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Likewise.
* tree-vect-loop.c (vect_estimate_min_profitable_iters): Likewise.
* tree-vectorizer.c (vectorize_loops): Likewise.
* tree-vectorizer.h (unlimited_cost_model): Likewise.
From-SVN: r209362
Rainer Orth [Mon, 14 Apr 2014 10:23:25 +0000 (10:23 +0000)]
Fix vect_widen_mult_si_to_di_pattern on non-x86/ia64 targets
* lib/target-supports.exp
(check_effective_target_vect_widen_mult_si_to_di_pattern):
Initialize et_vect_widen_mult_si_to_di_pattern_saved.
Fix formatting.
From-SVN: r209361
Paolo Carlini [Mon, 14 Apr 2014 09:29:09 +0000 (09:29 +0000)]
pt.c (mark_template_parm): Use template_parm_level_and_index.
2014-04-14 Paolo Carlini <paolo.carlini@oracle.com>
* pt.c (mark_template_parm): Use template_parm_level_and_index.
From-SVN: r209360
Richard Biener [Mon, 14 Apr 2014 08:35:22 +0000 (08:35 +0000)]
re PR lto/60720 (clisp fails to build with -flto: internal compiler error: tree check: expected array_type, have record_type in array_ref_low_bound, at expr.c:6941)
2014-04-14 Richard Biener <rguenther@suse.de>
PR lto/60720
* lto-streamer-out.c (wrap_refs): New function.
(lto_output): Wrap symbol references in global initializes in
type-preserving MEM_REFs.
* gcc.dg/lto/pr60720_0.c: New testcase.
* gcc.dg/lto/pr60720_1.c: Likewise.
From-SVN: r209359
Christian Bruel [Mon, 14 Apr 2014 08:31:34 +0000 (10:31 +0200)]
sh-mem.cc (sh_expand_strlen): Unroll last word.
2014-04-14 Christian Bruel <christian.bruel@st.com>
* config/sh/sh-mem.cc (sh_expand_strlen): Unroll last word.
From-SVN: r209358
Christian Bruel [Mon, 14 Apr 2014 08:27:56 +0000 (10:27 +0200)]
sh.md (setmemqi): New expand pattern.
2014-04-14 Christian Bruel <christian.bruel@st.com>
* config/sh/sh.md (setmemqi): New expand pattern.
* config/sh/sh.h (CLEAR_RATIO): Define.
* config/sh/sh-mem.cc (sh_expand_setmem): Define.
* config/sh/sh-protos.h (sh_expand_setmem): Declare.
From-SVN: r209357
Richard Biener [Mon, 14 Apr 2014 08:11:08 +0000 (08:11 +0000)]
re PR tree-optimization/55022 (air.f90 is miscompliled with -m64 -O2 -fgraphite-identity after revision 190619)
2014-04-14 Richard Biener <rguenther@suse.de>
PR middle-end/55022
* fold-const.c (negate_expr_p): Don't negate directional rounding
division.
(fold_negate_expr): Likewise.
* gcc.dg/graphite/pr55022.c: New testcase.
From-SVN: r209356
Richard Biener [Mon, 14 Apr 2014 08:09:06 +0000 (08:09 +0000)]
re PR tree-optimization/59817 (ICE in extract_affine_chrec with -O2 -ftree-loop-linear)
2014-04-14 Richard Biener <rguenther@suse.de>
PR tree-optimization/59817
PR tree-optimization/60453
* graphite-scop-detection.c (graphite_can_represent_scev): Complete
recursion to catch all CHRECs in the scalar evolution and restrict
the predicate for the remains appropriately.
* gfortran.dg/graphite/pr59817.f: New testcase.
* gcc.dg/graphite/pr59817-1.c: Likewise.
* gcc.dg/graphite/pr59817-2.c: Likewise.
From-SVN: r209355
Jason Merrill [Mon, 14 Apr 2014 04:25:55 +0000 (00:25 -0400)]
revert: gcc-dg.exp (dg-build-dso): New.
Revert:
* lib/gcc-dg.exp (dg-build-dso): New.
(gcc-dg-test-1): Handle dg-do-what "dso".
From-SVN: r209353
GCC Administrator [Mon, 14 Apr 2014 00:17:13 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r209352
Paul Thomas [Sun, 13 Apr 2014 11:58:55 +0000 (11:58 +0000)]
re PR fortran/58085 (Wrong indexing of an array in ASSOCIATE)
2014-04-13 Paul Thomas <pault@gcc.gnu.org>
PR fortran/58085
PR fortran/60717
* trans.h: Add 'use_offset' bitfield to gfc_se.
* trans-array.c (gfc_conv_expr_descriptor): Use 'use_offset'
as a trigger to unconditionally recalculate the offset for
array slices and constant arrays.
trans-expr.c (gfc_conv_intrinsic_to_class): Use it.
trans-stmt.c (trans_associate_var): Ditto.
(gfc_conv_procedure_call): Ditto.
2014-04-13 Paul Thomas <pault@gcc.gnu.org>
PR fortran/60717
* gfortran.dg/unlimited_polymorphic_17.f90: New test.
PR fortran/58085
* gfortran.dg/associate_15.f90: New test.
From-SVN: r209347
GCC Administrator [Sun, 13 Apr 2014 00:17:14 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r209344
Igor Zamyatin [Sat, 12 Apr 2014 17:59:29 +0000 (17:59 +0000)]
re PR middle-end/60467 (ICE with -fcilkplus)
gcc/c-family/
PR middle-end/60467
* cilk.c (cilk_set_spawn_marker): Remove FUNCTION_DECL
as possible argument for Cilk_spawn.
gcc/testsuite/
PR middle-end/60467
* c-c++-common/cilk-plus/CK/invalid_spawns.c: Add new invalid
case to check.
From-SVN: r209337
Igor Zamyatin [Sat, 12 Apr 2014 17:57:15 +0000 (17:57 +0000)]
re PR middle-end/60469 (simple cilk plus program ICEs)
gcc/c/
PR middle-end/60469
* c-array-notation.c (fix_builtin_array_notation_fn): Use
create_tmp_var instead build_decl for creating temps.
(build_array_notation_expr): Likewise.
(fix_conditional_array_notations_1): Likewise.
(fix_array_notation_expr): Likewise.
(fix_array_notation_call_expr): Likewise.
gcc/testsuite/
PR middle-end/60469
* c-c++-common/cilk-plus/CK/pr60469.c: New test.
From-SVN: r209336
Richard Sandiford [Sat, 12 Apr 2014 10:40:10 +0000 (10:40 +0000)]
constraints.md: Add new register constraint "kb".
gcc/
2014-04-12 Catherine Moore <clm@codesourcery.com>
* config/mips/constraints.md: Add new register constraint "kb".
* config/mips/mips.md (*mov<mode>_internal): Use constraint "kb".
(*movhi_internal): Likewise.
(*movqi_internal): Likewise.
* config/mips/mips.h (M16_STORE_REGS): New register class.
(REG_CLASS_NAMES): Add M16_STORE_REGS.
(REG_CLASS_CONTENTS): Likewise.
* config/mips/mips.c (mips_regno_to_class): Add M16_STORE_REGS.
gcc/testsuite/
* gcc.target/mips/umips-store16-1.c: New test.
From-SVN: r209334
GCC Administrator [Sat, 12 Apr 2014 00:16:54 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r209333
Jerry DeLisle [Sat, 12 Apr 2014 00:04:41 +0000 (00:04 +0000)]
re PR fortran/60810 (list directed io from array results in end of file)
2014-04-11 Jerry DeLisle <jvdelisle@gcc.gnu>
PR libfortran/60810
io/unit.c (is_trim_ok): If internal unit is array, do not trim.
From-SVN: r209329
Tobias Burnus [Fri, 11 Apr 2014 22:43:54 +0000 (00:43 +0200)]
re PR c/60194 (-Wformat should also warn when using %d (instead of %u) for unsigned arguments)
2014-04-11 Tobias Burnus <burnus@net-b.de>
PR c/60194
gcc/
* doc/invoke.texi (-Wformat-signedness): Document it.
(Wformat=2): Mention that this enables -Wformat-signedness.
gcc/c-family/
* c.opt (Wformat-signedness): Add
* c-format.c(check_format_types): Use it.
gcc/testsuite/
* * g++.dg/warn/warn_format_signedness.C: New.
* gcc.dg/format/warn-signedness.c: New.
From-SVN: r209328
Tobias Burnus [Fri, 11 Apr 2014 22:35:47 +0000 (00:35 +0200)]
re PR fortran/58880 ([OOP] ICE on valid with FINAL function and type extension)
2014-04-11 Tobias Burnus <burnus@net-b.de>
PR fortran/58880
PR fortran/60495
* resolve.c (gfc_resolve_finalizers): Ensure that vtables
and finalization wrappers are generated.
2014-04-11 Tobias Burnus <burnus@net-b.de>
PR fortran/58880
PR fortran/60495
* gfortran.dg/finalize_25.f90: New.
From-SVN: r209327
Barry Tannenbaum [Fri, 11 Apr 2014 19:56:42 +0000 (19:56 +0000)]
re PR bootstrap/60644 (Build of i686-pc-linux-android is broken)
Fix for PR other/60644.
+2014-04-11 Barry Tannenbaum <barry.m.tannenbaum@intel.com>
+
+ PR other/60644
+ * runtime/os-unix.c: Replaced all occurrances of ANDROID with
+ __ANDROID__.
+ * runtime/bug.h: Likewise.
+ * include/cilk/metaprogramming.h: Likewise.
+ * include/cilk/reducer_min_max.h: Likewise.
+
From-SVN: r209324
Marc Glisse [Fri, 11 Apr 2014 19:23:49 +0000 (21:23 +0200)]
re PR libstdc++/59434 ([lwg/2106] move_iterator is broken for input iterators with an rvalue as reference type)
2014-04-11 Marc Glisse <marc.glisse@inria.fr>
PR libstdc++/59434
* include/bits/stl_iterator.h (move_iterator::reference,
move_iterator::operator*): Implement LWG 2106.
* testsuite/24_iterators/move_iterator/dr2106.cc: New file.
From-SVN: r209323
Jan Hubicka [Fri, 11 Apr 2014 19:22:20 +0000 (21:22 +0200)]
lto.c: Include ipa-inline.h
* lto.c: Include ipa-inline.h
(do_whole_program_analysis): Free inline summary after partitioning.
From-SVN: r209322
Marc Glisse [Fri, 11 Apr 2014 18:57:59 +0000 (20:57 +0200)]
complex (__complex_exp, pow): Specify the template parameter in calls to std::polar, for expression templates.
2014-04-11 Marc Glisse <marc.glisse@inria.fr>
* include/std/complex (__complex_exp, pow): Specify the template
parameter in calls to std::polar, for expression templates.
From-SVN: r209321
Joern Rennecke [Fri, 11 Apr 2014 18:40:04 +0000 (18:40 +0000)]
gcc:
* common/config/epiphany/epiphany-common.c
(epiphany_option_optimization_table): Enable section anchors by
default at -O1 or higher.
* config/epiphany/epiphany.c (TARGET_MAX_ANCHOR_OFFSET): Define.
(TARGET_MIN_ANCHOR_OFFSET): Likewise.
(epiphany_rtx_costs) <SET>: For binary operators, the set as such
carries no extra cost.
(epiphany_legitimate_address_p): For BLKmode, apply SImode check.
* config/epiphany/epiphany.h (ASM_OUTPUT_DEF): Define.
* config/epiphany/predicates.md (memclob_operand): New predicate.
* config/epiphany/epiphany.md (stack_adjust_add, stack_adjust_str):
Use memclob_operand predicate and X constraint for operand 3.
gcc/testsuite:
* gcc.target/epiphany/t1068-2.c: New file.
From-SVN: r209320
Joern Rennecke [Fri, 11 Apr 2014 18:29:30 +0000 (18:29 +0000)]
epiphany.c (epiphany_rtx_cost): Compare with CC_N_NE / CC_C_LTU / CC_C_GTU carries no extra cost for its operands.
gcc:
* config/epiphany/epiphany.c (epiphany_rtx_cost): Compare
with CC_N_NE / CC_C_LTU / CC_C_GTU carries no extra cost for
its operands.
gcc/testsuite:
* gcc.target/epiphany/btst-1.c: New test.
From-SVN: r209319
Joern Rennecke [Fri, 11 Apr 2014 18:27:45 +0000 (19:27 +0100)]
re PR rtl-optimization/60651 (Mode switching instructions are sometimes emitted in the wrong order)
gcc/testsuite:
PR rtl-optimization/60651
* gcc.target/epiphany/mode-switch.c: New test.
From-SVN: r209318
Jason Merrill [Fri, 11 Apr 2014 18:25:13 +0000 (14:25 -0400)]
re PR c++/57926 (Atomic functions broken with C++ but not C?)
PR c++/57926
* c-common.c (sync_resolve_size, get_atomic_generic_size): Call
default_conversion for an array argument.
From-SVN: r209316
Jason Merrill [Fri, 11 Apr 2014 18:25:07 +0000 (14:25 -0400)]
parser.h (struct cp_token): Rename ambiguous_p to error_reported.
* parser.h (struct cp_token): Rename ambiguous_p to error_reported.
* parser.c: Adjust.
(cp_lexer_get_preprocessor_token): Always clear it.
(cp_parser_lambda_expression): Use it to avoid duplicate diagnostics.
From-SVN: r209315
Jason Merrill [Fri, 11 Apr 2014 18:25:02 +0000 (14:25 -0400)]
DR 1467 PR c++/51747
DR 1467
PR c++/51747
* decl.c (reshape_init_r): Handle a single element of class type.
From-SVN: r209314
Jason Merrill [Fri, 11 Apr 2014 18:24:57 +0000 (14:24 -0400)]
DR 1338
DR 1338
* decl.c (cxx_init_decl_processing): Set DECL_IS_MALLOC on
built-in operator new.
From-SVN: r209313
Joern Rennecke [Fri, 11 Apr 2014 18:12:53 +0000 (18:12 +0000)]
re PR rtl-optimization/60651 (Mode switching instructions are sometimes emitted in the wrong order)
gcc:
PR rtl-optimization/60651
* mode-switching.c (optimize_mode_switching): Make sure to emit
sets of a lower numbered entity before sets of a higher numbered
entity to a mode of the same or lower priority.
When creating a seginfo for a basic block that starts with a code
label, move the insertion point past the code label.
(new_seginfo): Document and enforce requirement that
NOTE_INSN_BASIC_BLOCK only appears for empty blocks.
* doc/tm.texi.in: Document ordering constraint for emitted mode sets.
* doc/tm.texi: Regenerate.
gcc/testsuite:
PR rtl-optimization/60651
* gcc.target/epiphany/mode-switch.c: New test.
From-SVN: r209312
Joern Rennecke [Fri, 11 Apr 2014 18:04:43 +0000 (18:04 +0000)]
re PR target/60811 (arc/arc.c:2135: possible bad argument to abs)
PR target/60811
* config/arc/arc.c (arc_save_restore): Fix assert typo.
From-SVN: r209311
Paolo Carlini [Fri, 11 Apr 2014 17:36:44 +0000 (17:36 +0000)]
re PR c++/58600 ([c++11] ICE on wrong usage of alignas)
/cp
2014-04-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58600
* name-lookup.c (parse_using_directive): Return early if the
attribs argument is error_mark_node; use get_attribute_name.
/testsuite
2014-04-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58600
* g++.dg/cpp0x/gen-attrs-58.C: New.
* g++.dg/cpp0x/gen-attrs-59.C: Likewise.
From-SVN: r209310
Jason Merrill [Fri, 11 Apr 2014 17:08:47 +0000 (13:08 -0400)]
DR 1030 PR c++/51253
DR 1030
PR c++/51253
* cp-tree.h (CALL_EXPR_LIST_INIT_P): New.
* call.c (struct z_candidate): Add flags field.
(add_candidate): Add flags parm.
(add_function_candidate, add_conv_candidate, build_builtin_candidate)
(add_template_candidate_real): Pass it.
(build_over_call): Set CALL_EXPR_LIST_INIT_P.
* tree.c (build_aggr_init_expr): Copy it.
* semantics.c (simplify_aggr_init_expr): Preevaluate args if it's set.
From-SVN: r209309
Jakub Jelinek [Fri, 11 Apr 2014 12:55:17 +0000 (14:55 +0200)]
* crontab: Enable snapshots from gcc-4_9-branch.
From-SVN: r209306
Jakub Jelinek [Fri, 11 Apr 2014 12:50:55 +0000 (14:50 +0200)]
* BASE-VER: Set to 4.9.0.
From-SVN: r209305
Tobias Burnus [Fri, 11 Apr 2014 12:47:20 +0000 (14:47 +0200)]
re PR other/59055 (gcc.texinfo warnings)
PR other/59055
* doc/bugreport.texi (Bugs): Remove nodes pointing to the
nirvana.
* doc/gcc.texi (Service): Update description in the @menu
* doc/invoke.texi (Option Summary): Remove misplaced and
duplicated @menu.
From-SVN: r209303
Janne Blomqvist [Fri, 11 Apr 2014 12:03:05 +0000 (15:03 +0300)]
Improve RANDOM_SEED documentation example.
2014-04-11 Janne Blomqvist <jb@gcc.gnu.org>
* intrinsic.texi (RANDOM_SEED): Improve example.
From-SVN: r209301
Steve Ellcey [Fri, 11 Apr 2014 11:52:14 +0000 (11:52 +0000)]
re PR middle-end/60556 (tip of tree crash with mips compiler)
PR middle-end/60556
* expr.c (convert_move): Use emit_store_flag_force instead of
emit_store_flag. Pass lowpart_mode instead of VOIDmode as 5th
argument to it.
* gcc.c-torture/compile/pr60556.c: New test.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r209300
Richard Biener [Fri, 11 Apr 2014 11:45:44 +0000 (11:45 +0000)]
re PR middle-end/60797 (gcc hangs with error: only weak aliases are supported in this configuration)
2014-04-11 Richard Biener <rguenther@suse.de>
PR middle-end/60797
* varasm.c (assemble_alias): Avoid endless error reporting
recursion by setting TREE_ASM_WRITTEN.
* gcc.dg/pr60797.c: New testcase.
From-SVN: r209299
Andreas Krebbel [Fri, 11 Apr 2014 10:42:27 +0000 (10:42 +0000)]
s390.md: Add a splitter for NOT rtx.
2014-04-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.md: Add a splitter for NOT rtx.
From-SVN: r209295
Andreas Krebbel [Fri, 11 Apr 2014 10:36:58 +0000 (10:36 +0000)]
htm-nofloat-1.c: Rename to ...
2014-04-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gcc.target/s390/htm-nofloat-1.c: Rename to ...
* gcc.target/s390/htm-nofloat-compile-1.c: ... this one.
* gcc.target/s390/htm-nofloat-2.c: Add check for htm target and
rename to ...
* gcc.target/s390/htm-nofloat-1.c: ... this one.
* gcc.target/s390/s390.exp: Make sure the assembler supports htm
instructions as well.
From-SVN: r209294
Jakub Jelinek [Fri, 11 Apr 2014 10:11:01 +0000 (12:11 +0200)]
re PR rtl-optimization/60663 (Errors out on valid inline asm)
PR rtl-optimization/60663
* cse.c (cse_insn): Set src_volatile on ASM_OPERANDS in
PARALLEL.
* gcc.target/arm/pr60663.c: New test.
From-SVN: r209293