platform/upstream/gcc.git
11 years agolra-constraints.c (inherit_in_ebb): Process static hard regs too.
Vladimir Makarov [Thu, 27 Jun 2013 16:20:38 +0000 (16:20 +0000)]
lra-constraints.c (inherit_in_ebb): Process static hard regs too.

2013-06-27  Vladimir Makarov  <vmakarov@redhat.com>

* lra-constraints.c (inherit_in_ebb): Process static hard regs
too.  Process OP_INOUT regs for splitting too.

From-SVN: r200475

11 years agotree-vect-stmts.c (vectorizable_store): Move ptr_incr var decl before the loop, initi...
Jakub Jelinek [Thu, 27 Jun 2013 15:35:57 +0000 (17:35 +0200)]
tree-vect-stmts.c (vectorizable_store): Move ptr_incr var decl before the loop, initialize to NULL.

* tree-vect-stmts.c (vectorizable_store): Move ptr_incr var
decl before the loop, initialize to NULL.
(vectorizable_load): Initialize ptr_incr to NULL.

From-SVN: r200471

11 years agoaot-compile.in: Fix typo in option list.
Roland Lutz [Thu, 27 Jun 2013 13:58:20 +0000 (13:58 +0000)]
aot-compile.in: Fix typo in option list.

2013-06-20  Roland Lutz  <rlutz@hedmen.org>

  * contrib/aot-compile.in: Fix typo in option list.

From-SVN: r200469

11 years agore PR c++/57208 (Latest chromium compilation fails with enabled LTO)
Martin Jambor [Thu, 27 Jun 2013 13:49:28 +0000 (15:49 +0200)]
re PR c++/57208 (Latest chromium compilation fails with enabled LTO)

2013-06-27  Martin Jambor  <mjambor@suse.cz>

PR lto/57208
* ipa-ref.h (ipa_maybe_record_reference): Declare.
* ipa-ref.c (ipa_maybe_record_reference): New function.
* cgraphclones.c (cgraph_create_virtual_clone): Use it.
* ipa-cp.c (create_specialized_node): Record potential references from
aggvals.
* Makefile.in (ipa-ref.o): Add IPA_REF_H to dependencies.

From-SVN: r200468

11 years agoaarch64.c (aarch64_force_temporary): Add an extra parameter 'mode' of type 'enum...
Yufeng Zhang [Thu, 27 Jun 2013 12:32:07 +0000 (12:32 +0000)]
aarch64.c (aarch64_force_temporary): Add an extra parameter 'mode' of type 'enum machine_mode mode'...

gcc/

* config/aarch64/aarch64.c (aarch64_force_temporary): Add an extra
parameter 'mode' of type 'enum machine_mode mode'; change to pass
'mode' to force_reg.
(aarch64_add_offset): Update calls to aarch64_force_temporary.
(aarch64_expand_mov_immediate): Likewise.

From-SVN: r200467

11 years agoaarch64.c (aarch64_add_offset): Change to pass 'mode' to aarch64_plus_immediate and...
Yufeng Zhang [Thu, 27 Jun 2013 12:30:11 +0000 (12:30 +0000)]
aarch64.c (aarch64_add_offset): Change to pass 'mode' to aarch64_plus_immediate and gen_rtx_PLUS.

gcc/

* config/aarch64/aarch64.c (aarch64_add_offset): Change to pass
'mode' to aarch64_plus_immediate and gen_rtx_PLUS.

From-SVN: r200466

11 years ago*: Move inside testsuite/21_strings/basic_string/modifiers/.
Paolo Carlini [Thu, 27 Jun 2013 12:15:34 +0000 (12:15 +0000)]
*: Move inside testsuite/21_strings/basic_string/modifiers/.

2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/21_strings/basic_string/append/*: Move inside
testsuite/21_strings/basic_string/modifiers/.
* testsuite/21_strings/basic_string/assign/*: Likewise.
* testsuite/21_strings/basic_string/insert/*: Likewise.
* testsuite/21_strings/basic_string/replace/*: Likewise.
* testsuite/21_strings/basic_string/modifiers/pop_back/char/
pop_back.cc: Rename to 1.cc.
* testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/
pop_back.cc: Likewise.
* testsuite/ext/vstring/assign/*: Move inside
testsuite/ext/vstring/modifiers/.

From-SVN: r200465

11 years agore PR c++/57172 ([C++11][DR 1164] Template overload resolution ambiguous for T&&...
Marc Glisse [Thu, 27 Jun 2013 11:34:48 +0000 (13:34 +0200)]
re PR c++/57172 ([C++11][DR 1164] Template overload resolution ambiguous for T&& versus T&)

2013-06-27  Marc Glisse  <marc.glisse@inria.fr>

PR c++/57172
gcc/cp/
* pt.c (more_specialized_fn): If both arguments are references,
give priority to an lvalue.

gcc/testsuite/
* g++.dg/cpp0x/pr57172.C: New testcase.

From-SVN: r200463

11 years agostl_deque.h (deque<>::insert(iterator, const value_type&), [...]): Adjust C++11 signa...
Paolo Carlini [Thu, 27 Jun 2013 09:51:21 +0000 (09:51 +0000)]
stl_deque.h (deque<>::insert(iterator, const value_type&), [...]): Adjust C++11 signatures to take a const_iterator.

2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/stl_deque.h (deque<>::insert(iterator,
const value_type&), deque<>::insert(iterator, value_type&&),
deque<>::emplace(iterator, _Args&&...)): Adjust C++11 signatures to
take a const_iterator.
(deque<>::erase): Simplify.
* include/bits/stl_list.h: Likewise.
(_List_iterator<>::_M_const_cast): Add.
* include/bits/stl_vector.h: Likewise.
* include/bits/stl_bvector.h: Likewise.
(_Bit_iterator::_M_const_cast): Add.
* include/bits/deque.tcc: Adjust definitions.
* include/bits/list.tcc: Likewise.
* include/bits/vector.tcc: Likewise.
* include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
Define trivial version in C++98 mode.
* include/ext/vstring.h (__versa_string<>::insert(iterator, _CharT),
__versa_string<>::replace(iterator, iterator, const __versa_string&),
__versa_string<>::replace(iterator, iterator, const _CharT*,
size_type), __versa_string<>::replace(iterator, iterator,
const _CharT*), __versa_string<>::replace(iterator, iterator,
size_type, _CharT)): Adjust C++11 signatures to take a pair of
const_iterators.
* include/debug/deque: Adjust.
* include/debug/list: Likewise.
* include/debug/vector: Likewise.
* include/profile/deque: Likewise.
* include/profile/list: Likewise.
* include/profile/vector: Likewise.
(vector<>::emplace): Add.
* testsuite/util/exception/safety.h: Update.
* testsuite/23_containers/deque/modifiers/emplace/const_iterator.cc:
New.
* testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
Likewise.
* testsuite/23_containers/list/modifiers/emplace/const_iterator.cc:
Likewise.
* testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
Likewise.
* testsuite/23_containers/vector/bool/modifiers/insert/
const_iterator.cc: Likewise.
* testsuite/23_containers/vector/modifiers/emplace/const_iterator.cc:
Likewise.
* testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
Likewise.
* testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
Likewise.
* testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
Likewise.
* testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
Likewise.
* testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
Likewise.

* testsuite/ext/vstring/modifiers/char/54577.cc: Move to testsuite/
ext/vstring/modifiers/erase/char/.
* testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Move to testsuite/
ext/vstring/modifiers/wchar_t/.
* testsuite/ext/vstring/modifiers/char/pop_back.cc: Move to testsuite/
ext/vstring/modifiers/pop_back/char/.
* testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: Move to
testsuite/ext/vstring/modifiers/pop_back/wchar_t/.

* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.

From-SVN: r200458

11 years agos390.c: Rename UNSPEC_CCU_TO_INT to UNSPEC_STRCMPCC_TO_INT and UNSPEC_CCZ_TO_INT...
Andreas Krebbel [Thu, 27 Jun 2013 07:44:11 +0000 (07:44 +0000)]
s390.c: Rename UNSPEC_CCU_TO_INT to UNSPEC_STRCMPCC_TO_INT and UNSPEC_CCZ_TO_INT to...

2013-06-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c: Rename UNSPEC_CCU_TO_INT to
UNSPEC_STRCMPCC_TO_INT and UNSPEC_CCZ_TO_INT to UNSPEC_CC_TO_INT.
(struct machine_function): Add tbegin_p.
(s390_canonicalize_comparison): Fold CC mode compares to
conditional jump if possible.
(s390_emit_jump): Return the emitted jump.
(s390_branch_condition_mask, s390_branch_condition_mnemonic):
Handle CCRAWmode compares.
(s390_option_override): Default to -mhtm if available.
(s390_reg_clobbered_rtx): Handle floating point regs as well.
(s390_regs_ever_clobbered): Use s390_regs_ever_clobbered also for
FPRs instead of df_regs_ever_live_p.
(s390_optimize_nonescaping_tx): New function.
(s390_init_frame_layout): Extend clobbered_regs array to cover
FPRs as well.
(s390_emit_prologue): Call s390_optimize_nonescaping_tx.
(s390_expand_tbegin): New function.
(enum s390_builtin): New enum definition.
(code_for_builtin): New array definition.
(s390_init_builtins): New function.
(s390_expand_builtin): New function.
(TARGET_INIT_BUILTINS): Define.
(TARGET_EXPAND_BUILTIN): Define.
* common/config/s390/s390-common.c (processor_flags_table): Add
PF_TX.
* config/s390/predicates.md (s390_comparison): Handle CCRAWmode.
(s390_alc_comparison): Likewise.
* config/s390/s390-modes.def: Add CCRAWmode.
* config/s390/s390.h (processor_flags): Add PF_TX.
(TARGET_CPU_HTM): Define macro.
(TARGET_HTM): Define macro.
(TARGET_CPU_CPP_BUILTINS): Define __HTM__ for htm.
* config/s390/s390.md: Rename UNSPEC_CCU_TO_INT to
UNSPEC_STRCMPCC_TO_INT and UNSPEC_CCZ_TO_INT to UNSPEC_CC_TO_INT.
(UNSPECV_TBEGIN, UNSPECV_TBEGINC, UNSPECV_TEND, UNSPECV_TABORT)
(UNSPECV_ETND, UNSPECV_NTSTG, UNSPECV_PPA): New unspecv enum
values.
(TBEGIN_MASK, TBEGINC_MASK): New constants.
("*cc_to_int"): Move up.
("*mov<mode>cc", "*cjump_64", "*cjump_31"): Accept integer
constants other than 0.
("*ccraw_to_int"): New insn and splitter definition.
("tbegin", "tbegin_nofloat", "tbegin_retry")
("tbegin_retry_nofloat", "tbeginc", "tend", "tabort")
("tx_assist"): New expander.
("tbegin_1", "tbegin_nofloat_1", "*tbeginc_1", "*tend_1")
("*tabort_1", "etnd", "ntstg", "*ppa"): New insn definition.
* config/s390/s390.opt: Add -mhtm option.
* config/s390/s390-protos.h (s390_emit_jump): Add return type.
* config/s390/htmxlintrin.h: New file.
* config/s390/htmintrin.h: New file.
* config/s390/s390intrin.h: New file.
* doc/extend.texi: Document htm builtins.
* config.gcc: Add the new header files to extra_headers.

2013-06-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* gcc.target/s390/htm-1.c: New file.
* gcc.target/s390/htm-nofloat-1.c: New file.
* gcc.target/s390/htm-xl-intrin-1.c: New file.

2013-06-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/target.h: Include htmintrin.h.
(_HTM_ITM_RETRIES): New macro definition.
(htm_available, htm_init, htm_begin, htm_begin_success)
(htm_commit, htm_abort, htm_abort_should_retry): New functions.

From-SVN: r200454

11 years agoDR 1589
Jason Merrill [Thu, 27 Jun 2013 02:35:52 +0000 (22:35 -0400)]
DR 1589

DR 1589
* g++.dg/cpp0x/initlist72.C: New.

From-SVN: r200451

11 years agotypeck2.c (store_init_value): Diagnose a non-constant initializer for in-class static.
Jason Merrill [Thu, 27 Jun 2013 02:35:46 +0000 (22:35 -0400)]
typeck2.c (store_init_value): Diagnose a non-constant initializer for in-class static.

* typeck2.c (store_init_value): Diagnose a non-constant
initializer for in-class static.

From-SVN: r200450

11 years agore PR c++/57408 (lambda, Variable length arrays, thread, internal compiler error...
Jason Merrill [Thu, 27 Jun 2013 02:35:39 +0000 (22:35 -0400)]
re PR c++/57408 (lambda, Variable length arrays, thread, internal compiler error: in expand_expr_real_1, at expr.c:9327)

PR c++/57408
* semantics.c (add_capture): Set type to error_mark_node after
error.

From-SVN: r200449

11 years agoDaily bump.
GCC Administrator [Thu, 27 Jun 2013 00:16:41 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r200447

11 years agoRevert 200443.
Michael Eager [Thu, 27 Jun 2013 00:02:40 +0000 (00:02 +0000)]
Revert 200443.

From-SVN: r200444

11 years agoAdd sync_compare_and_swapsi and sync_test_and_setsi.
David Holsgrove [Wed, 26 Jun 2013 23:55:52 +0000 (23:55 +0000)]
Add sync_compare_and_swapsi and sync_test_and_setsi.

2013-06-16  David Holsgrove <david.holsgrove@xilinx.com>

Add sync_compare_and_swapsi and sync_test_and_setsi.

* gcc/config/microblaze/sync.md: New file.
* gcc/config/microblaze/microblaze.md: Add UNSPEC_SYNC_CAS,
UNSPEC_SYNC_XCHG and include sync.md.
* gcc/config/microblaze/microblaze.c: Add print_operand 'y'.
* gcc/config/microblaze/constraints.md: Add memory_contraint
'Q' which is a single register.

From-SVN: r200443

11 years agocompiler: disallow fallthrough in last case of switch.
Ian Lance Taylor [Wed, 26 Jun 2013 22:58:03 +0000 (22:58 +0000)]
compiler: disallow fallthrough in last case of switch.

In spec: A "fallthrough" statement may appear as the last
statement of all but the last clause of an expression switch.

From-SVN: r200440

11 years agoabi_tag.cc: Avoid spurious fails with check-debug.
Paolo Carlini [Wed, 26 Jun 2013 22:48:06 +0000 (22:48 +0000)]
abi_tag.cc: Avoid spurious fails with check-debug.

2013-06-25  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/23_containers/map/modifiers/erase/abi_tag.cc: Avoid
spurious fails with check-debug.
* testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc:
Likewise.
* testsuite/23_containers/set/modifiers/erase/abi_tag.cc: Likewise.
* testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc:
Likewise.

From-SVN: r200438

11 years agocompiler: reject integer division by zero constant.
Ian Lance Taylor [Wed, 26 Jun 2013 22:42:35 +0000 (22:42 +0000)]
compiler: reject integer division by zero constant.

From-SVN: r200436

11 years agogcc/
Thomas Schwinge [Wed, 26 Jun 2013 21:23:43 +0000 (23:23 +0200)]
gcc/
* config/i386/gnu.h [TARGET_LIBC_PROVIDES_SSP]
(TARGET_CAN_SPLIT_STACK, TARGET_THREAD_SPLIT_STACK_OFFSET):
Undefine.

From-SVN: r200434

11 years agocompiler: forbid identifiers named "init" in package scope.
Ian Lance Taylor [Wed, 26 Jun 2013 15:47:53 +0000 (15:47 +0000)]
compiler: forbid identifiers named "init" in package scope.

From-SVN: r200426

11 years agore PR fortran/29800 (-fbounds-check: For derived types, write not also compound name)
Tobias Burnus [Wed, 26 Jun 2013 15:39:25 +0000 (17:39 +0200)]
re PR fortran/29800 (-fbounds-check: For derived types, write not also compound name)

2013-06-26  Tobias Burnus  <burnus@net-b.de>

        PR fortran/29800
        * trans-array.c (gfc_conv_array_ref): Improve out-of-bounds
        diagnostic message.
        * trans-array.c (gfc_conv_array_ref): Update prototype.
        * trans-expr.c (gfc_conv_variable): Update call.

2013-06-26  Tobias Burnus  <burnus@net-b.de>

        PR fortran/29800
        * gfortran.dg/bounds_check_17.f90: New.

From-SVN: r200425

11 years agopower8.md: New.
Michael Meissner [Wed, 26 Jun 2013 14:46:44 +0000 (14:46 +0000)]
power8.md: New.

* config/rs6000/power8.md: New.
* config/rs6000/rs6000-cpus.def (RS6000_CPU table): Adjust processor
setting for power8 entry.
* config/rs6000/t-rs6000 (MD_INCLUDES): Add power8.md.
* config/rs6000/rs6000.c (is_microcoded_insn, is_cracked_insn): Adjust
test for Power4/Power5 only.
(insn_must_be_first_in_group, insn_must_be_last_in_group): Add Power8
support.
(force_new_group): Adjust comment.
* config/rs6000/rs6000.md: Include power8.md.

Co-Authored-By: Pat Haugen <pthaugen@us.ibm.com>
Co-Authored-By: Peter Bergner <bergner@vnet.ibm.com>
From-SVN: r200423

11 years agoarm.h (MAX_CONDITIONAL_EXECUTE): Define macro.
Greta Yorsh [Wed, 26 Jun 2013 09:40:40 +0000 (10:40 +0100)]
arm.h (MAX_CONDITIONAL_EXECUTE): Define macro.

2013-06-26  Greta Yorsh  <Greta.Yorsh@arm.com>

* config/arm/arm.h (MAX_CONDITIONAL_EXECUTE): Define macro.
* config/arm/arm-protos.h (arm_max_conditional_execute): New
declaration.
(tune_params): Update comment.
* config/arm/arm.c (arm_cortex_a15_tune): Set max_cond_insns to 2.
(arm_max_conditional_execute): New function.
(thumb2_final_prescan_insn): Use max_insn_skipped and
MAX_INSN_PER_IT_BLOCK to compute maximum instructions in a block.

From-SVN: r200419

11 years agore PR c++/57640 (Explicit call of system literal operator complains about leading...
Ed Smith-Rowland [Wed, 26 Jun 2013 03:35:54 +0000 (03:35 +0000)]
re PR c++/57640 (Explicit call of system literal operator complains about leading underscore.)

gcc/cp:

2013-06-25  Ed Smith-Rowland  <3dw4rd@verizon.net>

PR c++/57640
* parser.c (cp_parser_unqualified_id): Add declarator_p to checks
to trigger warning, (cp_literal_operator_id): Remove bogus TODO comment.

gcc/testsuite:

2013-06-25  Ed Smith-Rowland  <3dw4rd@verizon.net>

PR c++/57640
* g++.dg/cpp1y/pr57640.C: New.

From-SVN: r200415

11 years ago+2013-06-25 Balaji V.
Balaji V. Iyer [Wed, 26 Jun 2013 02:31:27 +0000 (02:31 +0000)]
+2013-06-25 Balaji V.

+2013-06-25  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-c++-common/cilk-plus/AN/gather_scatter.c: Fixed a bug of stack
+       overflow due to size of arrays.
+

From-SVN: r200414

11 years agoStatus page for C++2014 library features
Ed Smith-Rowland [Wed, 26 Jun 2013 01:24:25 +0000 (01:24 +0000)]
Status page for C++2014 library features

2013-06-25  Ed Smith-Rowland  <3dw4rd@verizon.net>

Status page for C++2014 library features
* doc/xml/faq.xml: Add link to new C++14 status page.
* doc/xml/manual/intro.xml: Ditto.
* doc/xml/manual/status_cxx2014.xml: New.

From-SVN: r200413

11 years agoabi_tag.cc: Avoid spurious fails with check-debug.
Paolo Carlini [Wed, 26 Jun 2013 00:29:40 +0000 (00:29 +0000)]
abi_tag.cc: Avoid spurious fails with check-debug.

2013-06-25  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/23_containers/map/modifiers/erase/abi_tag.cc: Avoid
spurious fails with check-debug.
* testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc:
Likewise.
* testsuite/23_containers/set/modifiers/erase/abi_tag.cc: Likewise.
* testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc:
Likewise.

From-SVN: r200411

11 years agoDaily bump.
GCC Administrator [Wed, 26 Jun 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r200410

11 years agoReplaced Dynamic arrays with vec trees in Array Notation for C.
Balaji V. Iyer [Tue, 25 Jun 2013 20:41:21 +0000 (20:41 +0000)]
Replaced Dynamic arrays with vec trees in Array Notation for C.

gcc/c-family/ChangeLog
2013-06-21  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * array-notation-common.c (length_mismatch_in_expr): Changed the
        parameter type's from a dynamic array to a vec_tree.  Also removed
        the size parameters.
        * c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per
        the change above.

gcc/cp/ChangeLog
2013-06-21  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * cp-array-notation.c (cp_length_mismatch_in_expr_p): Remove.
        (expand_an_in_modify_expr): Changed a function call from the above
        removed function to length_mismatch_in_expr_p.

gcc/c/ChangeLog
2013-06-21  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * c-array-notation.c (make_triplet_val_inv): New function.
        (create_cmp_incr): Likewise.
        (create_array_refs): Likewise.
        (fix_builtin_array_notation_fn): Replaced all mallocs with tree vec.
        Also modularized common parts between functions and called the function.
        (build_array_notation_expr): Likewise.
        (fix_conditional_array_notations_1): Likewise.
        (fix_array_notation_expr): Likewise.
        (fix_array_notation_call_expr): Likewise.

From-SVN: r200405

11 years agoUpdate shift1.go test for recent changes.
Ian Lance Taylor [Tue, 25 Jun 2013 16:51:46 +0000 (16:51 +0000)]
Update shift1.go test for recent changes.

From-SVN: r200400

11 years agocompiler: Fix type determination issues.
Ian Lance Taylor [Tue, 25 Jun 2013 16:34:28 +0000 (16:34 +0000)]
compiler: Fix type determination issues.

From-SVN: r200398

11 years ago* zh_TW.po: Update.
Joseph Myers [Tue, 25 Jun 2013 16:30:13 +0000 (17:30 +0100)]
* zh_TW.po: Update.

From-SVN: r200396

11 years agore PR tree-optimization/57705 (Non-constant step induction vars not vectorized)
Jakub Jelinek [Tue, 25 Jun 2013 12:35:21 +0000 (14:35 +0200)]
re PR tree-optimization/57705 (Non-constant step induction vars not vectorized)

PR tree-optimization/57705
* tree-vect-loop.c (vect_is_simple_iv_evolution): Allow
SSA_NAME step, provided that it is not defined inside the loop.
(vect_analyze_scalar_cycles_1): Disallow SSA_NAME step in nested
loop.
(get_initial_def_for_induction): Handle SSA_NAME IV step.

* gcc.dg/vect/pr57705.c: New test.
* gcc.dg/vect/vect-iv-7.c: Add noclone attribute, remove xfail.

From-SVN: r200394

11 years agore PR middle-end/57670 (Member-pointer calls should not be redirected to builtin_unre...
Martin Jambor [Tue, 25 Jun 2013 11:09:21 +0000 (13:09 +0200)]
re PR middle-end/57670 (Member-pointer calls should not be redirected to builtin_unreachable)

2013-06-25  Martin Jambor  <mjambor@suse.cz>

PR middle-end/57670
* cgraph.h (cgraph_indirect_call_info): New flag member_ptr.
* ipa-prop.c (ipa_print_node_jump_functions): Mark member pointer
calls in the dump.
(ipa_note_param_call): Initialize member_ptr flag.
(ipa_analyze_indirect_call_uses): Set member_ptr flag.
(ipa_make_edge_direct_to_target): Bail out if member_ptr is set.
(ipa_write_indirect_edge_info): Stream member_ptr flag.
(ipa_read_indirect_edge_info): Likewise.

testsuite/
* g++.dg/ipa/pr57670.C (H): New test.

From-SVN: r200393

11 years agore PR libstdc++/57704 (std::char_traits<char>::lt is not standards-compliant)
Paolo Carlini [Tue, 25 Jun 2013 08:39:31 +0000 (08:39 +0000)]
re PR libstdc++/57704 (std::char_traits<char>::lt is not standards-compliant)

2013-06-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/57704
* include/bits/char_traits.h (char_traits<char>::lt): Implement
LWG 467.
* testsuite/21_strings/char_traits/requirements/char/57704.cc: New.

From-SVN: r200392

11 years agore PR middle-end/56977 (gcc -Og incorrectly warns about 'constant zero length parameter')
Richard Biener [Tue, 25 Jun 2013 08:21:31 +0000 (08:21 +0000)]
re PR middle-end/56977 (gcc -Og incorrectly warns about 'constant zero length parameter')

2013-06-25  Richard Biener  <rguenther@suse.de>

PR middle-end/56977
* passes.c (init_optimization_passes): Move pass_fold_builtins
and pass_dce earlier with -Og.

* gcc.dg/pr56977.c: New testcase.

From-SVN: r200391

11 years agoMakefile.in (clean, distclean): Remove auto-target.h and stamp-h correctly.
Chung-Ju Wu [Tue, 25 Jun 2013 08:02:11 +0000 (08:02 +0000)]
Makefile.in (clean, distclean): Remove auto-target.h and stamp-h correctly.

libgcc/
2013-06-25  Chung-Ju Wu  <jasonwucj@gmail.com>

        * Makefile.in (clean, distclean): Remove auto-target.h and stamp-h
        correctly.

From-SVN: r200390

11 years agoexpr.c (expand_expr_real_1): Fix formatting glitches.
Eric Botcazou [Tue, 25 Jun 2013 07:23:19 +0000 (07:23 +0000)]
expr.c (expand_expr_real_1): Fix formatting glitches.

* expr.c (expand_expr_real_1) <ARRAY_REF>: Fix formatting glitches.
<BIT_FIELD_REF>: Remove trailing TAB.
* varasm.c (output_constructor_bitfield): Fix formatting glitch and
remove blank line.

From-SVN: r200389

11 years agoDaily bump.
GCC Administrator [Tue, 25 Jun 2013 00:16:42 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r200387

11 years agoffi.c (ffi_prep_args_SYSV): Move var declaration before statements.
Alan Modra [Tue, 25 Jun 2013 00:08:47 +0000 (09:38 +0930)]
ffi.c (ffi_prep_args_SYSV): Move var declaration before statements.

* src/powerpc/ffi.c (ffi_prep_args_SYSV): Move var declaration
before statements.
(ffi_prep_args64): Support little-endian.
(ffi_closure_helper_SYSV, ffi_closure_helper_LINUX64): Likewise.
* src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Likewise.
* src/powerpc/ppc_closure.S (ffi_closure_SYSV): Likewise.

From-SVN: r200383

11 years agocompiler: generate dummy names for blank-named constants.
Ian Lance Taylor [Mon, 24 Jun 2013 23:12:48 +0000 (23:12 +0000)]
compiler: generate dummy names for blank-named constants.

Otherwise such const declarations are not checked.

From-SVN: r200381

11 years agocompiler: Add support for method values.
Ian Lance Taylor [Mon, 24 Jun 2013 22:11:12 +0000 (22:11 +0000)]
compiler: Add support for method values.

From-SVN: r200379

11 years agofiles.c (_cpp_stack_include): Fix the highest_location when header file is guarded...
Dehao Chen [Mon, 24 Jun 2013 17:31:45 +0000 (17:31 +0000)]
files.c (_cpp_stack_include): Fix the highest_location when header file is guarded by #ifndef and is included...

2013-06-24  Dehao Chen  <dehao@google.com>

* files.c (_cpp_stack_include): Fix the highest_location when header
file is guarded by #ifndef and is included twice.

From-SVN: r200376

11 years agoconfigure.ac (AC_CHECK_FUNCS_ONCE): Put into if statement.
Steve Ellcey [Mon, 24 Jun 2013 15:24:19 +0000 (15:24 +0000)]
configure.ac (AC_CHECK_FUNCS_ONCE): Put into if statement.

2013-06-24  Steve Ellcey  <sellcey@mips.com>

* configure.ac (AC_CHECK_FUNCS_ONCE): Put into if statement.
* configure: Regenerate.

From-SVN: r200374

11 years agore PR libstdc++/57691 (freestanding libstdc++ has compile error)
Bernd Edlinger [Mon, 24 Jun 2013 13:46:58 +0000 (13:46 +0000)]
re PR libstdc++/57691 (freestanding libstdc++ has compile error)

2013-06-24  Bernd Edlinger  <bernd.edlinger@hotmail.de>

PR libstdc++/57691
* include/c_global/cstdlib (atexit, at_quick_exit): If !_GLIBCC_HOSTED,
declare per the letter of the C++ standard in terms of void.
* include/c_std/cstdlib: Likewise.

From-SVN: r200371

11 years agore PR tree-optimization/57358 (segmentation fault with attribute(optimize(O0)))
Martin Jambor [Mon, 24 Jun 2013 12:51:43 +0000 (14:51 +0200)]
re PR tree-optimization/57358 (segmentation fault with attribute(optimize(O0)))

2013-06-24  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/57358
* ipa-prop.c (ipa_func_spec_opts_forbid_analysis_p): New function.
(ipa_compute_jump_functions_for_edge): Bail out if it returns true.
(ipa_analyze_params_uses): Generate pessimistic info when true.

testsuite
* gcc.dg/ipa/pr57358.c: New test.

From-SVN: r200369

11 years agore PR tree-optimization/57539 (ice in ipa_edge_duplication_hook)
Martin Jambor [Mon, 24 Jun 2013 12:40:17 +0000 (14:40 +0200)]
re PR tree-optimization/57539 (ice in ipa_edge_duplication_hook)

2013-06-24  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/57539
* cgraphclones.c (cgraph_clone_node): Add parameter new_inlined_to, set
global.inlined_to of the new node to it.  All callers changed.
* ipa-inline-transform.c (clone_inlined_nodes): New variable
inlining_into, pass it to cgraph_clone_node.
* ipa-prop.c (ipa_propagate_indirect_call_infos): Do not call
ipa_free_edge_args_substructures.
(ipa_edge_duplication_hook): Only add edges from inlined nodes to
rdesc linked list.  Do not assert rdesc edges have inlined caller.
Assert we have found an rdesc in the rdesc list.

From-SVN: r200368

11 years agopointer-set.h (struct pointer_set_t): Move here from pointer-set.c.
Richard Biener [Mon, 24 Jun 2013 12:17:16 +0000 (12:17 +0000)]
pointer-set.h (struct pointer_set_t): Move here from pointer-set.c.

2013-06-24  Richard Biener  <rguenther@suse.de>

* pointer-set.h (struct pointer_set_t): Move here from
pointer-set.c.
(pointer_set_lookup): Declare.
(class pointer_map): New template class implementing a
generic pointer to T map.
(pointer_map<T>::pointer_map, pointer_map<T>::~pointer_map,
pointer_map<T>::contains, pointer_map<T>::insert,
pointer_map<T>::traverse): New functions.
* pointer-set.c (struct pointer_set_t): Moved to pointer-set.h.
(pointer_set_lookup): New function.
(pointer_set_contains): Use pointer_set_lookup.
(pointer_set_insert): Likewise.
(insert_aux): Remove.
(struct pointer_map_t): Embed a pointer_set_t.
(pointer_map_create): Adjust.
(pointer_map_destroy): Likewise.
(pointer_map_contains): Likewise.
(pointer_map_insert): Likewise.
(pointer_map_traverse): Likewise.
* tree-streamer.h (struct streamer_tree_cache_d): Use a
pointer_map<unsigned> instead of a pointer_map_t.
* tree-streamer.c (streamer_tree_cache_insert_1): Adjust.
(streamer_tree_cache_lookup): Likewise.
(streamer_tree_cache_create): Likewise.
(streamer_tree_cache_delete): Likewise.
* lto-streamer.h (struct lto_tree_ref_encoder): Use a
pointer_map<unsigned> instead of a pointer_map_t.
(lto_init_tree_ref_encoder): Adjust.
(lto_destroy_tree_ref_encoder): Likewise.
* lto-section-out.c (lto_output_decl_index): Likewise.
(lto_record_function_out_decl_state): Likewise.
* dominance.c (iterate_fix_dominators): Use pointer_map<int>.

From-SVN: r200367

11 years agore PR testsuite/57686 (FAIL: gcc.dg/torture/pr57584.c with -m32)
Richard Biener [Mon, 24 Jun 2013 11:14:31 +0000 (11:14 +0000)]
re PR testsuite/57686 (FAIL: gcc.dg/torture/pr57584.c with -m32)

2013-06-24  Richard Biener  <rguenther@suse.de>

PR testsuite/57686
* gcc.dg/torture/pr57584.c: Remove target specific bits.

From-SVN: r200364

11 years agore PR tree-optimization/57488 (loop terminates early at -O3)
Richard Biener [Mon, 24 Jun 2013 10:22:22 +0000 (10:22 +0000)]
re PR tree-optimization/57488 (loop terminates early at -O3)

2013-06-24  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57488
* tree-ssa-pre.c (insert): Clear NEW sets before each iteration.

* gcc.dg/torture/pr57488.c: New testcase.

From-SVN: r200363

11 years ago[multiple changes]
Tobias Burnus [Mon, 24 Jun 2013 08:43:55 +0000 (10:43 +0200)]
[multiple changes]

2013-06-24  Steven G. Kargl  <sgk@troutmask.apl.washington.edu>
            Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
            Dominique d'Humieres  <dominiq@lps.ens.fr>

        PR fortran/52413
        * simplify.c (gfc_simplify_fraction): Fix the sign of negative values.

2013-06-24  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
            Dominique d'Humieres  <dominiq@lps.ens.fr>

        PR fortran/52413
        * gfortran.dg/fraction.f90: New.

From-SVN: r200361

11 years agoconfigure.ac: Check for fp_except and fp_except_t.
Tobias Burnus [Mon, 24 Jun 2013 08:34:05 +0000 (10:34 +0200)]
configure.ac: Check for fp_except and fp_except_t.

2013-06-24  Tobias Burnus  <burnus@net-b.de>

        * configure.ac: Check for fp_except and fp_except_t.
        * config/fpu-sysv.h: Conditionally use either type.
        * configure: Regenerate.
        * config.h.in: Regenerate.

From-SVN: r200360

11 years agofix duplication of test
Alan Modra [Mon, 24 Jun 2013 01:04:35 +0000 (10:34 +0930)]
fix duplication of test

From-SVN: r200359

11 years agors6000.c (vspltis_constant): Correct for little-endian.
Alan Modra [Mon, 24 Jun 2013 00:52:34 +0000 (10:22 +0930)]
rs6000.c (vspltis_constant): Correct for little-endian.

gcc/
* config/rs6000/rs6000.c (vspltis_constant): Correct for little-endian.
(gen_easy_altivec_constant): Likewise.
* config/rs6000/predicates.md (easy_vector_constant_add_self,
easy_vector_constant_msb): Likewise.
gcc/testsuite/
* gcc.target/powerpc/altivec-consts.c: Correct for little-endian.
Add scan-assembler-not "lvx".
* gcc.target/powerpc/le-altivec-consts.c: New.

From-SVN: r200357

11 years agoDaily bump.
GCC Administrator [Mon, 24 Jun 2013 00:16:45 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r200356

11 years agosfinae47.C: New.
Paolo Carlini [Sun, 23 Jun 2013 23:36:34 +0000 (23:36 +0000)]
sfinae47.C: New.

2013-06-23  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp0x/sfinae47.C: New.

From-SVN: r200353

11 years agore PR target/57688 (-O3 -march=native generates illegal opcode on AMD Phenom)
Jakub Jelinek [Sun, 23 Jun 2013 19:06:00 +0000 (21:06 +0200)]
re PR target/57688 (-O3 -march=native generates illegal opcode on AMD Phenom)

PR target/57688
* common/config/i386/i386-common.c (ix86_handle_option): For OPT_mlzcnt
add missing return true.

From-SVN: r200352

11 years agore PR target/52483 (SH Target: Loads from volatile memory leave redundant sign/zero...
Oleg Endo [Sun, 23 Jun 2013 08:39:55 +0000 (08:39 +0000)]
re PR target/52483 (SH Target: Loads from volatile memory leave redundant sign/zero extensions)

PR target/52483
* config/sh/predicates.md (general_extend_operand): Invoke
general_movsrc_operand for memory operands.
(general_movsrc_operand): Allow reg+reg addressing, do not use
general_operand for memory operands.

PR target/52483
* gcc.target/sh/pr52483-1.c: New.
* gcc.target/sh/pr52483-2.c: New.
* gcc.target/sh/pr52483-3.c: New.
* gcc.target/sh/pr52483-4.c: New.
* gcc.target/sh/pr52483-5.c: New.

From-SVN: r200350

11 years agoAllow mmintrin headers to work with function specific target opts.
Sriraman Tallam [Sun, 23 Jun 2013 06:15:19 +0000 (06:15 +0000)]
Allow mmintrin headers to work with function specific target opts.

Allow mmintrin headers to work with function specific target opts.  Please
see discussion here:
http://gcc.gnu.org/ml/gcc-patches/2013-04/msg00740.html

* config/i386/i386.c (ix86_pragma_target_parse):  Restore target
when current target options does not apply.
* config/i386/i386-protos.h (ix86_reset_previous_fndecl): New function.
* config/i386/i386.c (ix86_reset_previous_fndecl): Ditto.
* config/i386/bmiintrin.h: Pass appropriate target attributes to header.
* config/i386/mmintrin.h: Ditto.
* config/i386/nmmintrin.h: Ditto.
* config/i386/avx2intrin.h: Ditto.
* config/i386/fxsrintrin.h: Ditto.
* config/i386/tbmintrin.h: Ditto.
* config/i386/xsaveintrin.h: Ditto.
* config/i386/f16cintrin.h: Ditto.
* config/i386/xtestintrin.h: Ditto.
* config/i386/xsaveoptintrin.h: Ditto.
* config/i386/bmi2intrin.h: Ditto.
* config/i386/lzcntintrin.h: Ditto.
* config/i386/smmintrin.h: Ditto.
* config/i386/wmmintrin.h: Ditto.
* config/i386/x86intrin.h: Remove all header include guards.
* config/i386/prfchwintrin.h: Ditto.
* config/i386/pmmintrin.h: Ditto.
* config/i386/tmmintrin.h: Ditto.
* config/i386/xmmintrin.h: Ditto.
* config/i386/popcntintrin.h: Ditto.
* config/i386/rdseedintrin.h: Ditto.
* config/i386/ammintrin.h: Ditto.
* config/i386/emmintrin.h: Ditto.
* config/i386/immintrin.h: Remove all header include guards.
* config/i386/fma4intrin.h: Ditto.
* config/i386/lwpintrin.h: Ditto.
* config/i386/xopintrin.h: Ditto.
* config/i386/ia32intrin.h: Ditto.
* config/i386/avxintrin.h: Ditto.
* config/i386/rtmintrin.h: Ditto.
* config/i386/fmaintrin.h: Ditto.
* config/i386/mm3dnow.h: Ditto.

* testsuite/gcc.target/i386/intrinsics_1.c: New test.
* testsuite/gcc.target/i386/intrinsics_2.c: Ditto.
* testsuite/gcc.target/i386/intrinsics_3.c: Ditto.
* testsuite/gcc.target/i386/intrinsics_4.c: Ditto.
* testsuite/gcc.target/i386/intrinsics_5.c: Ditto.
* testsuite/gcc.target/i386/intrinsics_6.c: Ditto.
* testsuite/gcc.target/i386/avx-1.c: Provide macros for builtins
needing immediate arguments in f16cintrin.h and rtmintrin.h.

From-SVN: r200349

11 years agoc-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
Gabriel Dos Reis [Sun, 23 Jun 2013 02:27:03 +0000 (02:27 +0000)]
c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.

2013-06-22  Gabriel Dos Reis  <gdr@integrable-solutions.net>

* c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
* c-cppbuiltin.c (c_cpp_builtins): Likewise.
* c-opts.c (c_common_post_options): Likewise.

cp/
2013-06-22  Gabriel Dos Reis  <gdr@integrable-solutions.net>

* call.c (null_ptr_cst_p): Use cxx11 in lieu of cxx0x.
* class.c (add_implicitly_declared_members): Likewise.
(check_field_decl): Likewise.
(finalize_literal_type_property): Likewise.
(check_bases_and_members): Likewise.
* decl.c (poplevel): Likewise.
(case_conversion): Likewise.
(check_initializer): Likewise.
(grokfndecl): Likewise.
(check_static_variable_definition): Likewise.
(compute_array_index_type): Likewise.
(grokdeclarator): Likewise.
(build_enumerator): Likewise.
* friend.c (make_friend_class): Likewise.
* lex.c (init_reswords): Likewise.
* method.c (synthesized_method_walk): Likewise.
(implicitly_declare_fn): Likewise.
* parser.c (cp_parser_diagnose_invalid_type_name): Likewise.
(cp_parser_constant_expression): Likewise.
(cp_parser_for_init_statement): Likewise.
(cp_parser_block_declaration): Likewise.
(cp_parser_type_name): Likewise.
(cp_parser_enum_specifier): Likewise.
(cp_parser_enumerator_list): Likewise.
(cp_parser_member_declaration): Likewise.
(cp_nth_tokens_can_be_std_attribute_p): Likewise.
(cp_parser_template_declaration_after_export): Likewise.
* pt.c (convert_nontype_argument_function): Likewise.
(convert_nontype_argument): Likewise.
(convert_template_argument): Likewise.
(tsubst_copy_and_build): Likewise.
(build_non_dependent_expr): Likewise.
* semantics.c (non_const_var_error): Likewise.
(potential_constant_expression_1): Likewise.
* tree.c (lvalue_kind): Likewise.
(build_vec_init_expr): Likewise.
(cast_valid_in_integral_constant_expression_p): Likewise.
* typeck.c (build_x_conditional_expr): Likewise.
* typeck2.c (check_narrowing): Likewise.

From-SVN: r200348

11 years agoi386-common.c: Handle LZCNT.
Sriraman Tallam [Sun, 23 Jun 2013 00:57:40 +0000 (00:57 +0000)]
i386-common.c: Handle LZCNT.

2013-06-22  Sriraman Tallam  <tmsriram@google.com>

* common/config/i386/i386-common.c: Handle LZCNT.

From-SVN: r200347

11 years agoDaily bump.
GCC Administrator [Sun, 23 Jun 2013 00:16:45 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r200346

11 years agore PR libstdc++/57674 (wrong distribution for std::binomial_distribution::operator...
Paolo Carlini [Sat, 22 Jun 2013 21:07:02 +0000 (21:07 +0000)]
re PR libstdc++/57674 (wrong distribution for  std::binomial_distribution::operator()(g,param))

2013-06-22  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/57674
* include/bits/random.h (binomial_distribution<>::_M_waiting):
Add double parameter.
* include/bits/random.tcc (binomial_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&)): Pass
__param._M_q to _M_waiting.
(_M_waiting): Adjust.
* testsuite/26_numerics/random/binomial_distribution/
operators/values.cc: Add tests.

From-SVN: r200341

11 years agoFix __atomic_store_n typo in recent manual change
Andi Kleen [Sat, 22 Jun 2013 17:23:08 +0000 (17:23 +0000)]
Fix __atomic_store_n typo in recent manual change

gcc/:
2013-06-22  Andi Kleen  <ak@linux.intel.com>

       * doc/extend.texi: Use __atomic_store_n instead of
       __atomic_store in HLE example.

From-SVN: r200333

11 years agosh.c: Remove <cstdlib> workaround.
Oleg Endo [Sat, 22 Jun 2013 12:00:09 +0000 (12:00 +0000)]
sh.c: Remove <cstdlib> workaround.

* config/sh/sh.c: Remove <cstdlib> workaround.

Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r200328

11 years agoDaily bump.
GCC Administrator [Sat, 22 Jun 2013 00:16:37 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r200324

11 years agotrans-array.c (gfc_trans_deferred_array): Call the finalizer for nonallocatable local...
Tobias Burnus [Fri, 21 Jun 2013 21:51:41 +0000 (23:51 +0200)]
trans-array.c (gfc_trans_deferred_array): Call the finalizer for nonallocatable local variables.

2013-06-21  Tobias Burnus  <burnus@net-b.de>

        * trans-array.c (gfc_trans_deferred_array): Call the
        finalizer for nonallocatable local variables.
        * trans-decl.c (gfc_get_symbol_decl): Add local
        finalizable vars to the deferred list.
        (gfc_trans_deferred_vars): Call gfc_trans_deferred_array
        for those.

2013-06-21  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/finalize_17.f90: New.

From-SVN: r200321

11 years agotrans-array.c (gfc_alloc_allocatable_for_assignment): Allocate at least one byte.
Tobias Burnus [Fri, 21 Jun 2013 21:24:59 +0000 (23:24 +0200)]
trans-array.c (gfc_alloc_allocatable_for_assignment): Allocate at least one byte.

2013-06-21  Tobias Burnus  <burnus@net-b.de>

        * trans-array.c (gfc_alloc_allocatable_for_assignment): Allocate
        at least one byte.
        * trans-expr.c (alloc_scalar_allocatable_for_assignment): Ditto.

2013-06-21  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/realloc_on_assign_18.f90: New.

From-SVN: r200320

11 years agoImplemented Cilk Plus Array Notation for C++
Balaji V. Iyer [Fri, 21 Jun 2013 19:36:47 +0000 (19:36 +0000)]
Implemented Cilk Plus Array Notation for C++

Implemented Cilk Plus Array Notation for C++
gcc/c-family/ChangeLog
2013-06-21  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * c-common.h (struct cilkplus_an_parts): New structure.
        (struct cilkplus_an_loop_parts): Likewise.
        (cilkplus_extract_an_triplets): New prototype.
        (fix_sec_implicit_args): Likewise.
        * array-notation-common.c (cilkplus_extract_an_triplets): New function.
        (fix_sec_implicit_args): Likewise.

gcc/cp/ChangeLog
2013-06-21  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * call.c (convert_like_real): Added a check if array notation is present
        in expression.  If so, then no conversion of arguments is necessary.
        (build_over_call): Likewise.
        * typeck.c (cp_build_function_call_vec): Likewise.
        (convert_for_assignment): Likewise.
        (cp_build_array_ref): Reject array notations with a rank greater than 1
        as an array's index.
        (cp_build_binary_op): If array notations are preent in op, then call
        find_correct_array_notation_type.
        (cp_build_addr_expr_1): Handle ARRAY_NOTATION_REF similar to ARRAY_REF.
        * cp-array-notation.c: New file.
        * cp-objcp-common.c (cp_common_init_ts): Marked ARRAY_NOTATION_REF tree
        as typed.
        * cp-tree.h (fix_array_notation_exprs): New prototype.
        * semantics.c (finish_return_stmt): Reject array notations as
        return value.
        (cxx_eval_constant_expression): Added ARRAY_NOTATION_REF case.
        (potential_constant_expression_1): Likewise.
        * tree.c (lvalue_kind): Likewise.
        * error.c (dump_decl): Likewise.
        (dump_expr): Likewise.
        * pt.c (ARRAY_NOTATION_REF): Likewise.
        (type_unification_real): Do not unify any arguments if array notations
        are found in arg.
        (instantiate_decl): Added a check for array notaitons inside the
        function body.  If so, then expand them.
        * parser.c (cp_parser_array_notation): New function.
        (cp_parser_postfix_open_square_expression): Added a check for colons
        inside square braces.  If found, then handle the array access as an
        array notation access.  Also, disable auto-correction from a single
        colon to scope when Cilk Plus is enabled.
        (cp_parser_compound_statement): Added a check for array notations
        inside the statement.  If found, then expand them.
        (cp_parser_ctor_initializer_opt_and_function_body): Likewise.
        (cp_parser_function_definition_after_declarator): Likewise.
        (cp_parser_selection_statement): Searched for array notations inside
        condition.  If so, then emit an error.
        (cp_parser_iteration_statement): Likewise.
        (cp_parser_direct_declarator): Reject array notations inside a
        variable or array declaration.
        * Make-lang.in (CXX_AND_OBJCXX_OBJS): Added cp/cp-array-notation.o.

gcc/testsuite/ChangeLog
2013-06-21  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * c-c++-common/cilk-plus/AN/array_test1.c: Make this an execution test.
        Also changed the returns from error as distinct values so that debugging
        can get easier.
        * c-c++-common/cilk-plus/AN/if_test_errors.c (main): Made certain
        errors specific to C, if necessary.  Also added new error hooks for C++.
        * c-c++-common/cilk-plus/AN/misc.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/parser_errors.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/parser_errors2.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/parser_errors3.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/pr57541.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/parser_errors4.c (main): In addition to the
        same changes as parser_errors3.c, spaces were added between colons to
        not confuse C++ compiler with 2 colons as scope.
        * c-c++-common/cilk-plus/AN/vla.c: Make this test C specific.
        * g++.dg/cilk-plus/AN/array_test1_tplt.cc: New test.
        * g++.dg/cilk-plus/AN/array_test2_tplt.cc: Likewise.
        * g++.dg/cilk-plus/AN/array_test_ND_tplt.cc: Likewise.
        * g++.dg/cilk-plus/AN/braced_list.cc: Likewise.
        * g++.dg/cilk-plus/AN/builtin_fn_custom_tplt.cc: Likewise.
        * g++.dg/cilk-plus/AN/builtin_fn_mutating_tplt.cc: Likewise.
        * g++.dg/cilk-plus/AN/fp_triplet_values_tplt.c: Likewise.
        * g++.dg/cilk-plus/AN/preincr_test.cc: Likewise.
        * g++.dg/cilk-plus/AN/postincr_test.cc: Likewise.
        * g++.dg/cilk-plus/cilk-plus.exp: New script.
        * gcc/testsuite/g++.dg/dg.exp: Included Cilk Plus C++ tests in the list.

From-SVN: r200319

11 years agore PR other/53317 (Conversion from __int128 to __float128)
Joseph Myers [Fri, 21 Jun 2013 19:08:01 +0000 (20:08 +0100)]
re PR other/53317 (Conversion from __int128 to __float128)

PR other/53317

gcc/testsuite:
* gcc.dg/torture/fp-int-convert-float128-timode-2.c: New test.

libgcc:
* soft-fp/adddf3.c: Update from glibc.
* soft-fp/addsf3.c: Likewise.
* soft-fp/addtf3.c: Likewise.
* soft-fp/divdf3.c: Likewise.
* soft-fp/divsf3.c: Likewise.
* soft-fp/divtf3.c: Likewise.
* soft-fp/double.h: Likewise.
* soft-fp/eqdf2.c: Likewise.
* soft-fp/eqsf2.c: Likewise.
* soft-fp/eqtf2.c: Likewise.
* soft-fp/extenddftf2.c: Likewise.
* soft-fp/extended.h: Likewise.
* soft-fp/extendsfdf2.c: Likewise.
* soft-fp/extendsftf2.c: Likewise.
* soft-fp/fixdfdi.c: Likewise.
* soft-fp/fixdfsi.c: Likewise.
* soft-fp/fixsfdi.c: Likewise.
* soft-fp/fixsfsi.c: Likewise.
* soft-fp/fixtfdi.c: Likewise.
* soft-fp/fixtfsi.c: Likewise.
* soft-fp/fixunsdfdi.c: Likewise.
* soft-fp/fixunsdfsi.c: Likewise.
* soft-fp/fixunssfdi.c: Likewise.
* soft-fp/fixunssfsi.c: Likewise.
* soft-fp/fixunstfdi.c: Likewise.
* soft-fp/fixunstfsi.c: Likewise.
* soft-fp/floatdidf.c: Likewise.
* soft-fp/floatdisf.c: Likewise.
* soft-fp/floatditf.c: Likewise.
* soft-fp/floatsidf.c: Likewise.
* soft-fp/floatsisf.c: Likewise.
* soft-fp/floatsitf.c: Likewise.
* soft-fp/floatundidf.c: Likewise.
* soft-fp/floatundisf.c: Likewise.
* soft-fp/floatunditf.c: Likewise.
* soft-fp/floatunsidf.c: Likewise.
* soft-fp/floatunsisf.c: Likewise.
* soft-fp/floatunsitf.c: Likewise.
* soft-fp/gedf2.c: Likewise.
* soft-fp/gesf2.c: Likewise.
* soft-fp/getf2.c: Likewise.
* soft-fp/ledf2.c: Likewise.
* soft-fp/lesf2.c: Likewise.
* soft-fp/letf2.c: Likewise.
* soft-fp/muldf3.c: Likewise.
* soft-fp/mulsf3.c: Likewise.
* soft-fp/multf3.c: Likewise.
* soft-fp/negdf2.c: Likewise.
* soft-fp/negsf2.c: Likewise.
* soft-fp/negtf2.c: Likewise.
* soft-fp/op-1.h: Likewise.
* soft-fp/op-2.h: Likewise.
* soft-fp/op-4.h: Likewise.
* soft-fp/op-8.h: Likewise.
* soft-fp/op-common.h: Likewise.
* soft-fp/quad.h: Likewise.
* soft-fp/single.h: Likewise.
* soft-fp/soft-fp.h: Likewise.
* soft-fp/subdf3.c: Likewise.
* soft-fp/subsf3.c: Likewise.
* soft-fp/subtf3.c: Likewise.
* soft-fp/truncdfsf2.c: Likewise.
* soft-fp/trunctfdf2.c: Likewise.
* soft-fp/trunctfsf2.c: Likewise.
* soft-fp/unorddf2.c: Likewise.
* soft-fp/unordsf2.c: Likewise.
* soft-fp/unordtf2.c: Likewise.
* config/aarch64/sfp-machine.h (_FP_QNANNEGATEDP): Define to 0.
* config/arm/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/c6x/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/i386/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/ia64/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/lm32/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/moxie/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/rs6000/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/score/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/tilegx/sfp-machine32.h (_FP_QNANNEGATEDP): Likewise.
* config/tilegx/sfp-machine64.h (_FP_QNANNEGATEDP): Likewise.
* config/tilepro/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.

From-SVN: r200318

11 years agocompiler: do not skip compilation of blank-named functions.
Ian Lance Taylor [Fri, 21 Jun 2013 17:56:49 +0000 (17:56 +0000)]
compiler: do not skip compilation of blank-named functions.

Fixes issue 22.

From-SVN: r200316

11 years agore PR libstdc++/57666 (valarray<T>::operator= in c++11 mode does not adapt to size)
Paolo Carlini [Fri, 21 Jun 2013 14:23:15 +0000 (14:23 +0000)]
re PR libstdc++/57666 (valarray<T>::operator= in c++11 mode does not adapt to size)

2013-06-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/57666
* include/std/valarray (valarray<>::operator=(const _Expr<>&)):
Implement correctly C++11 26.6.2.3/1.
* testsuite/26_numerics/valarray/dr630-3.C: New.

From-SVN: r200305

11 years agoFix HLE example in manual
Andi Kleen [Fri, 21 Jun 2013 13:51:48 +0000 (13:51 +0000)]
Fix HLE example in manual

The HLE example in the manual only commits when using bool
for the flag, because __atomic_clear only writes bool, and
HLE requires the acquire and release to match.

So when the example is copied with e.g. an int variable it
does not commit and causes slower than expected performance.

Some people are running into problems because of this.

Switch it over to use __atomic_store.

Also fix a minor typo nearby.

gcc/:
2013-06-21  Andi Kleen  <ak@linux.intel.com>

* doc/extend.texi: Dont use __atomic_clear in HLE
example.  Fix typo.

From-SVN: r200304

11 years agoImprove __atomic_clear/test_and_set documentation
Andi Kleen [Fri, 21 Jun 2013 13:51:37 +0000 (13:51 +0000)]
Improve __atomic_clear/test_and_set documentation

Document that __atomic_clear and __atomic_test_and_set should
only be used with bool.

gcc/:
2013-06-21  Andi Kleen  <ak@linux.intel.com>

* doc/extend.texi: Document that __atomic_clear and
  __atomic_test_and_set should only be used with bool.

From-SVN: r200303

11 years ago* config/fpu-sysv.h (get_fpu_except_flags): Fix typo.
Eric Botcazou [Fri, 21 Jun 2013 13:16:57 +0000 (13:16 +0000)]
* config/fpu-sysv.h (get_fpu_except_flags): Fix typo.

From-SVN: r200298

11 years agogimple-fold.c (gimple_extract_devirt_binfo_from_cst): Use types_same_for_odr.
Jan Hubicka [Fri, 21 Jun 2013 06:43:39 +0000 (08:43 +0200)]
gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Use types_same_for_odr.

* gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Use
types_same_for_odr.
* tree.c (decls_same_for_odr): New function.
(same_for_edr): New function.
(types_same_for_odr): New function.
(get_binfo_at_offset): Use it.
* tree.h (types_same_for_odr): Declare.

From-SVN: r200288

11 years agocompiler: Really only make descriptors when needed.
Ian Lance Taylor [Fri, 21 Jun 2013 00:29:54 +0000 (00:29 +0000)]
compiler: Really only make descriptors when needed.

From-SVN: r200280

11 years agore PR c++/55149 (capturing VLA in lambda)
Jason Merrill [Fri, 21 Jun 2013 00:28:30 +0000 (20:28 -0400)]
re PR c++/55149 (capturing VLA in lambda)

PR c++/55149
* decl.c (compute_array_index_type): Don't reject VLAs in SFINAE
context if we're in C++14 mode.
* tree.c (array_of_runtime_bound_p): Return true for a dependent
bound that is not potentually constant.
* cp-tree.h (DECL_VLA_CAPTURE_P, REFERENCE_VLA_OK): New.
* pt.c (tsubst) [REFERENCE_TYPE]: Check REFERENCE_VLA_OK.
* semantics.c (build_lambda_object): Don't rvalue a VLA capture.
(build_capture_proxy): Set REFERENCE_VLA_OK.
(vla_capture_type): Make it a proper C++ class.
(add_capture): Set DECL_VLA_CAPTURE_P.  Don't pre-digest the
initializer.

From-SVN: r200279

11 years ago* decl.c (compute_array_index_type): Use size_one_node.
Jason Merrill [Fri, 21 Jun 2013 00:28:23 +0000 (20:28 -0400)]
* decl.c (compute_array_index_type): Use size_one_node.

From-SVN: r200278

11 years agoDaily bump.
GCC Administrator [Fri, 21 Jun 2013 00:16:34 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r200277

11 years agocompiler: Only make function descriptors if needed.
Ian Lance Taylor [Fri, 21 Jun 2013 00:11:53 +0000 (00:11 +0000)]
compiler: Only make function descriptors if needed.

From-SVN: r200273

11 years agoarray-notation-common.c (find_inv_trees): Removed an unwanted typecasting.
Balaji V. Iyer [Thu, 20 Jun 2013 22:52:07 +0000 (22:52 +0000)]
array-notation-common.c (find_inv_trees): Removed an unwanted typecasting.

2013-06-20  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * array-notation-common.c (find_inv_trees): Removed an unwanted
        typecasting.
        * c-common.h (struct inv_list::additional_tcodes): Changed type from
        enum rid to enum tree_code.

From-SVN: r200272

11 years agosystem.h: Include <cstdlib> as well as <stdlib.h>.
Oleg Endo [Thu, 20 Jun 2013 19:22:02 +0000 (19:22 +0000)]
system.h: Include <cstdlib> as well as <stdlib.h>.

* system.h: Include <cstdlib> as well as <stdlib.h>.

Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r200265

11 years agopt.c (process_partial_specialization): Build a TEMPLATE_DECL for a partial specializa...
Jason Merrill [Thu, 20 Jun 2013 18:33:02 +0000 (14:33 -0400)]
pt.c (process_partial_specialization): Build a TEMPLATE_DECL for a partial specialization.

* pt.c (process_partial_specialization): Build a TEMPLATE_DECL for
a partial specialization.
(tsubst_decl): Don't clobber CLASSTYPE_TI_TEMPLATE of a partial
specialization.
(most_specialized_class): Adjust.

From-SVN: r200263

11 years ago* cp-tree.h (DECL_TEMPLATE_PARMS, DECL_TEMPLATE_RESULT)
Jason Merrill [Thu, 20 Jun 2013 18:32:56 +0000 (14:32 -0400)]
* cp-tree.h (DECL_TEMPLATE_PARMS, DECL_TEMPLATE_RESULT)
(DECL_TEMPLATE_INSTANTIATIONS, DECL_TEMPLATE_SPECIALIZATIONS): Use
TEMPLATE_DECL_CHECK.

From-SVN: r200262

11 years agore PR target/57655 (ICE: in create_pre_exit, at mode-switching.c:418 with -mno-fp...
Uros Bizjak [Thu, 20 Jun 2013 18:13:31 +0000 (20:13 +0200)]
re PR target/57655 (ICE: in create_pre_exit, at mode-switching.c:418 with -mno-fp-ret-in-387 -mvzeroupper -mxop and __builtin_ilogbl())

PR target/57655
* config/i386/i386.c (construct_container): Report error if
long double is used with disabled x87 float returns.

testsuite/ChangeLog:

PR target/57655
* gcc.target/i386/pr57655.c: New test.

From-SVN: r200260

11 years agore PR tree-optimization/57660 (FAIL: gcc.dg/tree-ssa/forwprop-28.c scan-tree-dump...
Jeff Law [Thu, 20 Jun 2013 17:16:41 +0000 (11:16 -0600)]
re PR tree-optimization/57660 (FAIL: gcc.dg/tree-ssa/forwprop-28.c scan-tree-dump-times forwprop1 "Replaced" 8)

        PR tree-optimization/57660
        * gcc.dg/tree-ssa/forwprop-28.c: Don't run test on various
        * targets
        based on their branch cost.

From-SVN: r200258

11 years ago* ChangeLog: Add some missing lines.
Uros Bizjak [Thu, 20 Jun 2013 17:11:51 +0000 (19:11 +0200)]
* ChangeLog: Add some missing lines.

From-SVN: r200256

11 years agofpu-387.h (_FPU_MASK_ALL): New.
Uros Bizjak [Thu, 20 Jun 2013 17:08:51 +0000 (19:08 +0200)]
fpu-387.h (_FPU_MASK_ALL): New.

* config/fpu-387.h (_FPU_MASK_ALL): New.
(_FPU_EX_ALL): Ditto.
(set_fpu): Use fstcw to store x87 FPU control word. Use fnclex to
clear stalled exception flags.  Correctly clear stalled SSE
exception flags.  Simplify code.
(get_fpu_except_flags): Simplify code.

From-SVN: r200255

11 years agolibgomp.exp: Reorder lib loads into dependency order.
Iain Sandoe [Thu, 20 Jun 2013 16:48:26 +0000 (16:48 +0000)]
libgomp.exp: Reorder lib loads into dependency order.

2013-06-20  Iain Sandoe  <iain@codesourcery.com>
        Cesar Philippidis  <cesar@codesourcery.com>

* testsuite/lib/libgomp.exp: Reorder lib loads into dependency order.
Do not load_gcc_lib gcc-dg.exp and add a comment as to why.
* testsuite/libgomp.c/c.exp: load_gcc_lib gcc-dg.exp.
* testsuite/libgomp.fortran/fortran.exp: Likewise.
* testsuite/libgomp.graphite/graphite.exp: Likewise.
* testsuite/libgomp.c++/c++.exp: load_gcc_lib gcc-dg.exp.
Use dg-runtest rather than gfortran-dg-runtest.

Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com>
From-SVN: r200253

11 years agolibitm.exp: Reorder lib loads into dependency order.
Iain Sandoe [Thu, 20 Jun 2013 16:44:23 +0000 (16:44 +0000)]
libitm.exp: Reorder lib loads into dependency order.

2013-06-20  Iain Sandoe  <iain@codesourcery.com>
        Cesar Philippidis  <cesar@codesourcery.com>

* testsuite/lib/libitm.exp: Reorder lib loads into dependency order.
Do not load_gcc_lib gcc-dg.exp and add a comment as to why.
* testsuite/libitm.c/c.exp: load_gcc_lib gcc-dg.exp.
* testsuite/libitm.c++/c++.exp: load_gcc_lib gcc-dg.exp.

Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com>
From-SVN: r200252

11 years agolibitm: Handle HTM fastpath in status query functions.
Torvald Riegel [Thu, 20 Jun 2013 16:40:54 +0000 (16:40 +0000)]
libitm: Handle HTM fastpath in status query functions.

* query.cc (_ITM_inTransaction): Abort when using the HTM fastpath.
(_ITM_getTransactionId): Same.
* config/x86/target.h (htm_transaction_active): New.

From-SVN: r200251

11 years agolibitm: Fix handling of reentrancy in the HTM fastpath.
Torvald Riegel [Thu, 20 Jun 2013 16:40:38 +0000 (16:40 +0000)]
libitm: Fix handling of reentrancy in the HTM fastpath.

PR libitm/57643
* beginend.cc (gtm_thread::begin_transaction): Handle reentrancy in
the HTM fastpath.

From-SVN: r200250

11 years agogcc: Delete.
Eric Botcazou [Thu, 20 Jun 2013 16:31:22 +0000 (16:31 +0000)]
gcc: Delete.

* ada/acats/tests/gcc: Delete.
* gnat.dg/style: Likewise.

From-SVN: r200249

11 years ago* gcc.dg/tree-ssa/forwprop-28.c: Add missing dg-final.
Jeff Law [Thu, 20 Jun 2013 15:52:57 +0000 (09:52 -0600)]
* gcc.dg/tree-ssa/forwprop-28.c: Add missing dg-final.

From-SVN: r200248

11 years agolto-cgraph.c (input_symtab): Do not set cgraph state.
Jan Hubicka [Thu, 20 Jun 2013 14:23:15 +0000 (16:23 +0200)]
lto-cgraph.c (input_symtab): Do not set cgraph state.

* lto-cgraph.c (input_symtab): Do not set cgraph state.
* lto.c (read_cgraph_and_symbols): Set cgraph state.

From-SVN: r200247

11 years agopkg.m4 (PKG_CHECK_MODULES): Use AC_PATH_TOOL to check for pkg-config.
Matthias Klose [Thu, 20 Jun 2013 13:16:57 +0000 (13:16 +0000)]
pkg.m4 (PKG_CHECK_MODULES): Use AC_PATH_TOOL to check for pkg-config.

2013-06-20  Matthias Klose  <doko@ubuntu.com>

        * pkg.m4 (PKG_CHECK_MODULES): Use AC_PATH_TOOL to check for pkg-config.
        * classpath/m4/pkg.m4 (PKG_CHECK_MODULES): Likewise.
        * configure: Regenerate.
        * classpath/configure: Regenerate.

From-SVN: r200244

11 years agolibtool-version: Bump soversion.
Matthias Klose [Thu, 20 Jun 2013 13:02:05 +0000 (13:02 +0000)]
libtool-version: Bump soversion.

2013-06-20  Matthias Klose  <doko@ubuntu.com>

        * libtool-version: Bump soversion.

From-SVN: r200242

11 years agore PR rtl-optimization/57425 (RTL alias analysis unprepared to handle stack slot...
Joern Rennecke [Thu, 20 Jun 2013 12:43:29 +0000 (12:43 +0000)]
re PR rtl-optimization/57425 (RTL alias analysis unprepared to handle stack slot sharing)

        PR rtl-optimization/57425
        PR rtl-optimization/57569
        * alias.c (write_dependence_p): Remove parameters mem_mode and
        canon_mem_addr.  Add parameters x_mode, x_addr and x_canonicalized.
        Changed all callers.
        (canon_anti_dependence): Get comments and semantics in sync.
        Add parameter mem_canonicalized.  Changed all callers.
        * rtl.h (canon_anti_dependence): Update prototype.

From-SVN: r200241