Commit Graph

124127 Commits

Author SHA1 Message Date
Jakub Jelinek
2444244ecf re PR target/57623 (BEXTR intrinsic has memory operands switched around (fails to compile code))
PR target/57623
	* config/i386/i386.md (bmi2_bzhi_<mode>3): Swap AND arguments
	to match RTL canonicalization.  Swap predicates and
	constraints of operand 1 and 2.

	* gcc.target/i386/bmi2-bzhi-1.c: New test.

From-SVN: r200477
2013-06-27 18:44:17 +02:00
Vladimir Makarov
2f25972039 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
2013-06-27 16:20:38 +00:00
Jakub Jelinek
fef4d2b3eb 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
2013-06-27 17:35:57 +02:00
Roland Lutz
d0c8b5fc8f 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
2013-06-27 13:58:20 +00:00
Martin Jambor
79ee9826b3 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
2013-06-27 15:49:28 +02:00
Yufeng Zhang
e18b4a817c 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
2013-06-27 12:32:07 +00:00
Yufeng Zhang
9c023bf0bd 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
2013-06-27 12:30:11 +00:00
Paolo Carlini
17ee10dbec *: 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
2013-06-27 12:15:34 +00:00
Marc Glisse
85afa0754c 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
2013-06-27 11:34:48 +00:00
Paolo Carlini
7b61c5a9cb 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
2013-06-27 09:51:21 +00:00
Andreas Krebbel
5a3fe9b607 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
2013-06-27 07:44:11 +00:00
Jason Merrill
b47a3fef9c DR 1589
DR 1589
	* g++.dg/cpp0x/initlist72.C: New.

From-SVN: r200451
2013-06-26 22:35:52 -04:00
Jason Merrill
46812ec24c 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
2013-06-26 22:35:46 -04:00
Jason Merrill
447cf5546f 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
2013-06-26 22:35:39 -04:00
GCC Administrator
412ec6cfb9 Daily bump.
From-SVN: r200447
2013-06-27 00:16:41 +00:00
Michael Eager
e2c600d251 Revert 200443.
From-SVN: r200444
2013-06-27 00:02:40 +00:00
David Holsgrove
8eedc3ebe7 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
2013-06-26 23:55:52 +00:00
Ian Lance Taylor
33e84ed46b 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
2013-06-26 22:58:03 +00:00
Paolo Carlini
a9826e56fa 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
2013-06-26 22:48:06 +00:00
Ian Lance Taylor
69908ca8b6 compiler: reject integer division by zero constant.
From-SVN: r200436
2013-06-26 22:42:35 +00:00
Thomas Schwinge
9e2166298a gcc/
* config/i386/gnu.h [TARGET_LIBC_PROVIDES_SSP]
	(TARGET_CAN_SPLIT_STACK, TARGET_THREAD_SPLIT_STACK_OFFSET):
	Undefine.

From-SVN: r200434
2013-06-26 23:23:43 +02:00
Ian Lance Taylor
cf5ef6bd80 compiler: forbid identifiers named "init" in package scope.
From-SVN: r200426
2013-06-26 15:47:53 +00:00
Tobias Burnus
31f02c7752 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
2013-06-26 17:39:25 +02:00
Michael Meissner
fd8c65e7d3 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
2013-06-26 14:46:44 +00:00
Greta Yorsh
b24a2ce5b2 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
2013-06-26 10:40:40 +01:00
Ed Smith-Rowland
1a3fab15bc 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
2013-06-26 03:35:54 +00:00
Balaji V. Iyer
af4c64a70e +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
2013-06-25 19:31:27 -07:00
Ed Smith-Rowland
3ed8a9cd21 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
2013-06-26 01:24:25 +00:00
Paolo Carlini
be768ae0fb 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
2013-06-26 00:29:40 +00:00
GCC Administrator
240740fbd1 Daily bump.
From-SVN: r200410
2013-06-26 00:16:47 +00:00
Balaji V. Iyer
713b46fafe 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
2013-06-25 13:41:21 -07:00
Ian Lance Taylor
818cac82f7 Update shift1.go test for recent changes.
From-SVN: r200400
2013-06-25 16:51:46 +00:00
Ian Lance Taylor
69d8df4439 compiler: Fix type determination issues.
From-SVN: r200398
2013-06-25 16:34:28 +00:00
Joseph Myers
7292300cda * zh_TW.po: Update.
From-SVN: r200396
2013-06-25 17:30:13 +01:00
Jakub Jelinek
f6fdeb62ee 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
2013-06-25 14:35:21 +02:00
Martin Jambor
c13bc3d998 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
2013-06-25 13:09:21 +02:00
Paolo Carlini
6cdbb7e8a1 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
2013-06-25 08:39:31 +00:00
Richard Biener
8a845901e4 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
2013-06-25 08:21:31 +00:00
Chung-Ju Wu
9d2cdf2500 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
2013-06-25 08:02:11 +00:00
Eric Botcazou
33be0bec7e 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
2013-06-25 07:23:19 +00:00
GCC Administrator
6122e82486 Daily bump.
From-SVN: r200387
2013-06-25 00:16:42 +00:00
Alan Modra
40b45a6d76 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
2013-06-25 09:38:47 +09:30
Ian Lance Taylor
fe7144f48e compiler: generate dummy names for blank-named constants.
Otherwise such const declarations are not checked.

From-SVN: r200381
2013-06-24 23:12:48 +00:00
Ian Lance Taylor
571d3f918f compiler: Add support for method values.
From-SVN: r200379
2013-06-24 22:11:12 +00:00
Dehao Chen
39953c7972 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
2013-06-24 17:31:45 +00:00
Steve Ellcey
b4005c71a2 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
2013-06-24 15:24:19 +00:00
Bernd Edlinger
a4e28c8103 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
2013-06-24 13:46:58 +00:00
Martin Jambor
5fe8e75785 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
2013-06-24 14:51:43 +02:00
Martin Jambor
44a6024459 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
2013-06-24 14:40:17 +02:00
Richard Biener
7c5848b899 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
2013-06-24 12:17:16 +00:00