Commit Graph

124289 Commits

Author SHA1 Message Date
Joern Rennecke
2b607f9b9e vrp66.c: Make conditional on { target { ! int16 } } .
* gcc.dg/tree-ssa/vrp66.c: Make conditional on { target { ! int16 } } .
        * gcc.dg/tree-ssa/vrp66-int16-sw.c: New test.

From-SVN: r200679
2013-07-04 17:55:20 +01:00
Tejas Belagod
8990e73a27 Vector Cost Model.
2013-07-04  Tejas Belagod  <tejas.belagod@arm.com>

	Vector Cost Model.
        * config/aarch64/aarch64-protos.h (cpu_vector_cost): New.
        (tune_params): New member 'const vec_costs'.
        * config/aarch64/aarch64.c (generic_vector_cost): New.
        (generic_tunings): New member 'generic_vector_cost'.
        (aarch64_builtin_vectorization_cost): New.
        (aarch64_add_stmt_cost): New.
        (TARGET_VECTORIZE_ADD_STMT_COST): New.
        (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): New.

From-SVN: r200670
2013-07-04 14:23:59 +01:00
Paolo Carlini
93b47944fc re PR c++/54998 (Internal compiler error with union member initialization using default constructor)
2013-07-04  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/54998
	* g++.dg/cpp0x/nsdmi-list3.C: New.

From-SVN: r200667
2013-07-04 10:25:08 +00:00
Kai Tietz
3e67692874 exception.c: Add check for SjLj to SEH blocks.
2013-07-04  Kai Tietz  <ktietz@redhat.com>

	* exception.c: Add check for SjLj to SEH blocks.

From-SVN: r200663
2013-07-04 11:03:31 +02:00
Ray Chason
b727d9c4be re PR libstdc++/57808 (operators == and != for regex_token_iterator need to be const)
2013-07-04  Ray Chason  <chasonr@newsguy.com>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/57808
	* include/bits/regex.h (regex_token_iterator<>::operator==,
	regex_token_iterator<>::operator!=, regex_token_iterator<>::operator*,
	regex_token_iterator<>::operator->): Declare const.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>

From-SVN: r200662
2013-07-04 08:23:44 +00:00
GCC Administrator
033d86cc45 Daily bump.
From-SVN: r200654
2013-07-04 00:16:53 +00:00
Jakub Jelinek
f7bc421d11 re PR target/57777 (Python module fails compilation with "-march=core-avx2 -O3")
PR target/57777
	* config/i386/predicates.md (vsib_address_operand): Disallow
	SYMBOL_REF or LABEL_REF in parts.disp if TARGET_64BIT && flag_pic.

	* gcc.target/i386/pr57777.c: New test.

From-SVN: r200649
2013-07-03 22:23:38 +02:00
Jakub Jelinek
2febd8772b re PR c++/57771 (g++ misinterprets >> in static_cast)
PR c++/57771
	* parser.c (cp_parser_postfix_expression) <case RID_STATCAST>
	Temporarily set parser->greater_than_is_operator_p for
	cp_parser_expression and restore from saved value afterwards.

	* g++.dg/template/arg9.C: New test.

From-SVN: r200647
2013-07-03 22:20:30 +02:00
Hans-Peter Nilsson
e90d156864 re PR middle-end/55030 (gcc.c-torture/execute/builtins/memcpy-chk.c execution, -Os (et al))
PR middle-end/55030
	* stmt.c (expand_nl_goto_receiver): Remove almost-copy of
	expand_builtin_setjmp_receiver.
	(expand_label): Adjust, call expand_builtin_setjmp_receiver
	with NULL for the label parameter.
	* builtins.c (expand_builtin_setjmp_receiver): Don't clobber
	the frame-pointer.  Adjust comments.
	[HAVE_builtin_setjmp_receiver]: Emit builtin_setjmp_receiver
	only if LABEL is non-NULL.

From-SVN: r200643
2013-07-03 14:37:29 +00:00
Yufeng Zhang
cbd7413b3c [AArch64] Remove unused types and variable claimed to handle abi types.
gcc/

	* config/aarch64/aarch64.h (enum arm_abi_type): Remove.
	(ARM_ABI_AAPCS64): Ditto.
	(arm_abi): Ditto.
	(ARM_DEFAULT_ABI): Ditto.

From-SVN: r200637
2013-07-03 10:10:31 +00:00
James Greenhalgh
dec11868d2 [AArch64] Convert ld1, st1 arm_neon.h intrinsics to RTL builtins.
gcc/
	* config/aarch64/aarch64-builtins.c
	(aarch64_simd_expand_builtin): Handle AARCH64_SIMD_STORE1.
	* config/aarch64/aarch64-simd-builtins.def (ld1): New.
	(st1): Likewise.
	* config/aarch64/aarch64-simd.md
	(aarch64_ld1<VALL:mode>): New.
	(aarch64_st1<VALL:mode>): Likewise.
	* config/aarch64/arm_neon.h
	(vld1<q>_<fpsu><8, 16, 32, 64>): Convert to RTL builtins.

From-SVN: r200634
2013-07-03 09:48:02 +00:00
GCC Administrator
b280989824 Daily bump.
From-SVN: r200630
2013-07-03 00:16:47 +00:00
Sriraman Tallam
786fb9b6c4 Allow functions for AVX target inline functions for lower target.
Allow functions for AVX target inline functions for lower target.  This bug was
reported here: http://gcc.gnu.org/ml/gcc-patches/2013-06/msg01620.html

2013-07-02  Sriraman Tallam  <tmsriram@google.com>

	* config/i386/i386.c (gate_insert_vzeroupper): Check if target
	ISA is AVX.
	(ix86_option_override_internal):Turn on all -mavx target flags by
	default as they are dependent on AVX anyway.

	* gcc.target/i386/avx-inline.c: New test.

From-SVN: r200627
2013-07-03 00:03:06 +00:00
Cary Coutant
4b04355371 dwarf2out.c (loc_checksum): Call hash_loc_operands for a deterministic hash.
gcc/
	* dwarf2out.c (loc_checksum): Call hash_loc_operands for a
	deterministic hash.
	(loc_checksum_ordered): Likewise.
	(hash_loc_operands): Remove inline keyword.

From-SVN: r200626
2013-07-02 15:18:39 -07:00
Maciej W. Rozycki
45165729bb call-1.c: Accept JALRS and JALR.
2013-07-02  Maciej W. Rozycki  <macro@codesourcery.com>

        * gcc.target/mips/call-1.c: Accept JALRS and JALR.
        * gcc.target/mips/call-2.c: Likewise.
        * gcc.target/mips/call-3.c: Likewise.
        * gcc.target/mips/lazy-binding-1.c: Likewise.

From-SVN: r200621
2013-07-02 15:13:26 -04:00
Joseph Myers
29d7014cc2 * ru.po: Update.
From-SVN: r200604
2013-07-02 14:11:06 +01:00
Kirill Yukhin
cf9eb1c0ce Added missed file from previous fixincludes commit.
fixincludes/tests/base/linux/compiler.h: New.

From-SVN: r200603
2013-07-02 12:52:34 +00:00
Jakub Jelinek
c4e87a1393 re PR tree-optimization/57741 (ICE in tree.c:build_int_cst_wide starting in revision 200394)
PR tree-optimization/57741
	* tree-vect-loop.c (vect_is_simple_iv_evolution): Disallow
	non-INTEGRAL_TYPE_P non-SCALAR_FLOAT_TYPE_P SSA_NAME step_exprs,
	or SCALAR_FLOAT_TYPE_P SSA_NAMEs if !flag_associative_math.
	Allow REAL_CST step_exprs if flag_associative_math.
	(get_initial_def_for_induction): Handle SCALAR_FLOAT_TYPE_P step_expr.

	* gcc.dg/vect/pr57741-1.c: New test.
	* gcc.dg/vect/pr57741-2.c: New test.
	* gcc.dg/vect/pr57741-3.c: New test.

From-SVN: r200600
2013-07-02 13:54:09 +02:00
Ian Bolton
f8411fcce9 AArch64 - Update insv tests for big endian
From-SVN: r200597
2013-07-02 11:02:17 +00:00
Ian Bolton
26366d2816 AArch64 Support abs standard pattern for DI mode
From-SVN: r200596
2013-07-02 10:59:59 +00:00
Ian Bolton
2879bb2b18 AArch64 Support BFXIL in backend
From-SVN: r200595
2013-07-02 10:57:30 +00:00
Kyrylo Tkachov
afc5e8a6a7 arm.md (arm_andsi3_insn): Add alternatives for 16-bit encoding.
2013-07-02  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.md (arm_andsi3_insn): Add alternatives for 16-bit
	encoding.
	(iorsi3_insn): Likewise.
	(arm_xorsi3): Likewise.

From-SVN: r200593
2013-07-02 10:21:36 +00:00
GCC Administrator
4bc21884b4 Daily bump.
From-SVN: r200588
2013-07-02 00:16:45 +00:00
Balaji V. Iyer
f6bc3427ac +2013-07-01 Balaji V.
+2013-07-01  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+	
+	PR c/57766
+       * c-c++-common/cilk-plus/AN/sec_implicit_ex.c (NUMBER): Changed
+       array sizes from 100 to 20.
+

From-SVN: r200581
2013-07-01 09:26:42 -07:00
Paolo Carlini
019fdb7923 stl_list.h (list<>::insert(iterator, size_type, const value_type&), [...]): Adjust C++11 signatures to take const_iterator(s).
2013-07-01  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_list.h (list<>::insert(iterator,
	size_type, const value_type&), list<>::insert(iterator,
	initializer_list<>), list<>::insert(iterator, _InputIterator,
	_InputIterator), list<>::splice(iterator, list&&),
	list<>::splice(iterator, list&), list<>::splice(iterator, list&&,
	iterator), list<>::splice(iterator, list&, iterator),
	list<>::splice(iterator, list&&, iterator, iterator),
	list<>::splice(iterator, list&, iterator, iterator)): Adjust C++11
	signatures to take const_iterator(s).
	* include/bits/list.tcc (list<>::insert(const_iterator, size_type,
	const value_type&), list<>::insert(const_iterator, _InputIterator,
	_InputIterator)): Define.
	* include/ext/vstring.h (__versa_string<>::insert(iterator,
	size_type, _CharT), __versa_string<>::insert(iterator,
	_InputIterator, _InputIterator), __versa_string<>::insert(iterator,
	std::initializer_list<>), __versa_string<>::replace(iterator,
	iterator, _InputIterator, _InputIterator), __versa_string<>::
	replace(iterator, iterator, std::initializer_list<>)): Adjust C++11
	signatures to take const_iterator(s).
	(__versa_string<>::_M_replace_dispatch): Take const_iterators.
	* include/ext/vstring.tcc: Likewise.
	* include/debug/list: Adjust.
	* include/profile/list: Likewise.
	* testsuite/23_containers/list/operations/splice/const_iterator.cc:
	New.
	* testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
	Extend.
	* 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/23_containers/list/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* 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.

From-SVN: r200580
2013-07-01 16:17:46 +00:00
Sofiane Naci
31f8442be7 arm.md (attribute "wtype"): Delete.
* arm.md (attribute "wtype"): Delete.  Move attribute values from here
	to ...
	(attribute "type"): ... here, and prefix with "wmmx_".
	(attribute "core_cycles"): Update for attribute changes.
	* iwmmxt.md (tbcstv8qi): Update for attribute changes.
	(tbcstv4hi): Likewise.
	(tbcstv2si): Likewise.
	(iwmmxt_iordi3): Likewise.
	(iwmmxt_xordi3): Likewise.
	(iwmmxt_anddi3): Likewise.
	(iwmmxt_nanddi3): Likewise.
	(iwmmxt_arm_movdi): Likewise.
	(iwmmxt_movsi_insn): Likewise.
	(mov<mode>_internal): Likewise.
	(and<mode>3_iwmmxt): Likewise.
	(ior<mode>3_iwmmxt): Likewise.
	(xor<mode>3_iwmmxt): Likewise.
	(add<mode>3_iwmmxt): Likewise.
	(ssaddv8qi3): Likewise.
	(ssaddv4hi3): Likewise.
	(ssaddv2si3): Likewise.
	(usaddv8qi3): Likewise.
	(usaddv4hi3): Likewise.
	(usaddv2si3): Likewise.
	(sub<mode>3_iwmmxt): Likewise.
	(sssubv8qi3): Likewise.
	(sssubv4hi3): Likewise.
	(sssubv2si3): Likewise.
	(ussubv8qi3): Likewise.
	(ussubv4hi3): Likewise.
	(ussubv2si3): Likewise.
	(mulv4hi3_iwmmxt): Likewise.
	(smulv4hi3_highpart): Likewise.
	(umulv4hi3_highpart): Likewise.
	(iwmmxt_wmacs): Likewise.
	(iwmmxt_wmacsz): Likewise.
	(iwmmxt_wmacu): Likewise.
	(iwmmxt_wmacuz): Likewise.
	(iwmmxt_clrdi): Likewise.
	(iwmmxt_clrv8qi): Likewise.
	(iwmmxt_clr4hi): Likewise.
	(iwmmxt_clr2si): Likewise.
	(iwmmxt_uavgrndv8qi3): Likewise.
	(iwmmxt_uavgrndv4hi3): Likewise.
	(iwmmxt_uavgv8qi3): Likewise.
	(iwmmxt_uavgv4hi3): Likewise.
	(iwmmxt_tinsrb): Likewise.
	(iwmmxt_tinsrh): Likewise.
	(iwmmxt_tinsrw): Likewise.
	(iwmmxt_textrmub): Likewise.
	(iwmmxt_textrmsb): Likewise.
	(iwmmxt_textrmuh): Likewise.
	(iwmmxt_textrmsh): Likewise.
	(iwmmxt_textrmw): Likewise.
	(iwmxxt_wshufh): Likewise.
	(eqv8qi3): Likewise.
	(eqv4hi3): Likewise.
	(eqv2si3): Likewise.
	(gtuv8qi3): Likewise.
	(gtuv4hi3): Likewise.
	(gtuv2si3): Likewise.
	(gtv8qi3): Likewise.
	(gtv4hi3): Likewise.
	(gtv2si3): Likewise.
	(smax<mode>3_iwmmxt): Likewise.
	(umax<mode>3_iwmmxt): Likewise.
	(smin<mode>3_iwmmxt): Likewise.
	(umin<mode>3_iwmmxt): Likewise.
	(iwmmxt_wpackhss): Likewise.
	(iwmmxt_wpackwss): Likewise.
	(iwmmxt_wpackdss): Likewise.
	(iwmmxt_wpackhus): Likewise.
	(iwmmxt_wpackwus): Likewise.
	(iwmmxt_wpackdus): Likewise.
	(iwmmxt_wunpckihb): Likewise.
	(iwmmxt_wunpckihh): Likewise.
	(iwmmxt_wunpckihw): Likewise.
	(iwmmxt_wunpckilb): Likewise.
	(iwmmxt_wunpckilh): Likewise.
	(iwmmxt_wunpckilw): Likewise.
	(iwmmxt_wunpckehub): Likewise.
	(iwmmxt_wunpckehuh): Likewise.
	(iwmmxt_wunpckehuw): Likewise.
	(iwmmxt_wunpckehsb): Likewise.
	(iwmmxt_wunpckehsh): Likewise.
	(iwmmxt_wunpckehsw): Likewise.
	(iwmmxt_wunpckelub): Likewise.
	(iwmmxt_wunpckeluh): Likewise.
	(iwmmxt_wunpckeluw): Likewise.
	(iwmmxt_wunpckelsb): Likewise.
	(iwmmxt_wunpckelsh): Likewise.
	(iwmmxt_wunpckelsw): Likewise.
	(ror<mode>3): Likewise.
	(ashr<mode>3_iwmmxt): Likewise.
	(lshr<mode>3_iwmmxt): Likewise.
	(ashl<mode>3_iwmmxt): Likewise.
	(ror<mode>3_di): Likewise.
	(ashr<mode>3_di): Likewise.
	(lshr<mode>3_di): Likewise.
	(ashl<mode>3_di): Likewise.
	(iwmmxt_wmadds): Likewise.
	(iwmmxt_wmaddu): Likewise.
	(iwmmxt_tmia): Likewise.
	(iwmmxt_tmiaph): Likewise.
	(iwmmxt_tmiabb): Likewise.
	(iwmmxt_tmiatb): Likewise.
	(iwmmxt_tmiabt): Likewise.
	(iwmmxt_tmiatt): Likewise.
	(iwmmxt_tmovmskb): Likewise.
	(iwmmxt_tmovmskh): Likewise.
	(iwmmxt_tmovmskw): Likewise.
	(iwmmxt_waccb): Likewise.
	(iwmmxt_wacch): Likewise.
	(iwmmxt_waccw): Likewise.
	(iwmmxt_waligni): Likewise.
	(iwmmxt_walignr): Likewise.
	(iwmmxt_walignr0): Likewise.
	(iwmmxt_walignr1): Likewise.
	(iwmmxt_walignr2): Likewise.
	(iwmmxt_walignr3): Likewise.
	(iwmmxt_wsadb): Likewise.
	(iwmmxt_wsadh): Likewise.
	(iwmmxt_wsadbz): Likewise.
	(iwmmxt_wsadhz): Likewise.
	* iwmmxt2.md (iwmmxt_wabs<mode>3): Update for attribute changes.
	(iwmmxt_wabsdiffb): Likewise.
	(iwmmxt_wabsdiffh): Likewise.
	(iwmmxt_wabsdiffw): Likewise.
	(iwmmxt_waddsubhx): Likewise
	(iwmmxt_wsubaddhx): Likewise.
	(addc<mode>3): Likewise.
	(iwmmxt_avg4): Likewise.
	(iwmmxt_avg4r): Likewise.
	(iwmmxt_wmaddsx): Likewise.
	(iwmmxt_wmaddux): Likewise.
	(iwmmxt_wmaddsn): Likewise.
	(iwmmxt_wmaddun): Likewise.
	(iwmmxt_wmulwsm): Likewise.
	(iwmmxt_wmulwum): Likewise.
	(iwmmxt_wmulsmr): Likewise.
	(iwmmxt_wmulumr): Likewise.
	(iwmmxt_wmulwsmr): Likewise.
	(iwmmxt_wmulwumr): Likewise.
	(iwmmxt_wmulwl): Likewise.
	(iwmmxt_wqmulm): Likewise.
	(iwmmxt_wqmulwm): Likewise.
	(iwmmxt_wqmulmr): Likewise.
	(iwmmxt_wqmulwmr): Likewise.
	(iwmmxt_waddbhusm): Likewise.
	(iwmmxt_waddbhusl): Likewise.
	(iwmmxt_wqmiabb): Likewise.
	(iwmmxt_wqmiabt): Likewise.
	(iwmmxt_wqmiatb): Likewise.
	(iwmmxt_wqmiatt): Likewise.
	(iwmmxt_wqmiabbn): Likewise.
	(iwmmxt_wqmiabtn): Likewise.
	(iwmmxt_wqmiatbn): Likewise.
	(iwmmxt_wqmiattn): Likewise.
	(iwmmxt_wmiabb): Likewise.
	(iwmmxt_wmiabt): Likewise.
	(iwmmxt_wmiatb): Likewise.
	(iwmmxt_wmiatt): Likewise.
	(iwmmxt_wmiabbn): Likewise.
	(iwmmxt_wmiabtn): Likewise.
	(iwmmxt_wmiatbn): Likewise.
	(iwmmxt_wmiattn): Likewise.
	(iwmmxt_wmiawbb): Likewise.
	(iwmmxt_wmiawbt): Likewise.
	(iwmmxt_wmiawtb): Likewise.
	(iwmmxt_wmiawtt): Likewise.
	(iwmmxt_wmiawbbn): Likewise.
	(iwmmxt_wmiawbtn): Likewise.
	(iwmmxt_wmiawtbn): Likewise.
	(iwmmxt_wmiawttn): Likewise.
	(iwmmxt_wmerge): Likewise.
	(iwmmxt_tandc<mode>3): Likewise.
	(iwmmxt_torc<mode>3): Likewise.
	(iwmmxt_torvsc<mode>3): Likewise.
	(iwmmxt_textrc<mode>3): Likewise.
	* marvell-f-iwmmxt.md (wmmxt_shift): Update for attribute changes.
	(wmmxt_pack): Likewise.
	(wmmxt_mult_c1): Likewise.
	(wmmxt_mult_c2): Likewise.
	(wmmxt_alu_c1): Likewise.
	(wmmxt_alu_c2): Likewise.
	(wmmxt_alu_c3): Likewise.
	(wmmxt_transfer_c1): Likewise.
	(wmmxt_transfer_c2): Likewise.
	(wmmxt_transfer_c3): Likewise.
	(marvell_f_iwmmxt_wstr): Likewise.
	(marvell_f_iwmmxt_wldr): Likewise.

From-SVN: r200576
2013-07-01 09:29:38 +00:00
Dominique d'Humieres
81bcd96bc7 re PR fortran/54788 (ICE on pointer-array element assignment)
2013-07-01  Dominique d'Humieres  <dominiq@lps.ens.fr>

        PR fortran/54788
        * array.c (spec_size): handle the case as==NULL.

2013-07-01  Dominique d'Humieres  <dominiq@lps.ens.fr>

        PR fortran/54788
        * gfortran.dg/pointer_remapping_8.f90: New.

From-SVN: r200575
2013-07-01 09:53:55 +02:00
GCC Administrator
9cd5e6c594 Daily bump.
From-SVN: r200574
2013-07-01 00:16:50 +00:00
Paolo Carlini
06eed9f588 stl_deque.h (deque<>::insert(iterator, size_type, const value_type&), [...]): Adjust C++11 signatures to take a const_iterator.
2013-06-30  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_deque.h (deque<>::insert(iterator,
	size_type, const value_type&), deque<>::insert(iterator,
	initializer_list<>), deque<>::insert(iterator, _InputIterator,
	_InputIterator)): Adjust C++11 signatures to take a const_iterator.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/stl_bvector.h: Likewise.
	* include/debug/deque: Adjust.
	* include/debug/vector: Likewise.
	* include/profile/deque: Likewise.
	* include/profile/vector: Likewise.
	* testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
	Extend.
	* testsuite/23_containers/vector/bool/modifiers/insert/
	const_iterator.cc: Likewise.
	* testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
	Likewise.

	* 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/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: r200571
2013-06-30 16:24:30 +00:00
Paolo Carlini
e8f24c86b8 *: Move inside testsuite/21_strings/basic_string/operations/data/.
2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/21_strings/basic_string/operations/*: Move inside
	testsuite/21_strings/basic_string/operations/data/.
	* testsuite/21_strings/basic_string/compare/*: Move inside
	testsuite/21_strings/basic_string/operations/.
	* testsuite/21_strings/basic_string/find/*: Likewise.
	* testsuite/21_strings/basic_string/rfind/*: Likewise.
	* testsuite/21_strings/basic_string/substr/*: Likewise.

From-SVN: r200570
2013-06-30 14:48:37 +00:00
GCC Administrator
0de64ae21c Daily bump.
From-SVN: r200568
2013-06-30 00:16:24 +00:00
Yufeng Zhang
bdb7bf8a4e Obvious fix in aarch64.c; remove junk added accidentally by previous commit.
From-SVN: r200565
2013-06-29 09:29:13 +00:00
François Dumont
41349aec29 hashtable_policy.h (_Insert_base): Consider hint in insert methods.
2013-06-29  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/hashtable_policy.h (_Insert_base): Consider hint in
	insert methods.
	* include/bits/hashtable.h: Likewise.
	* testsuite/23_containers/unordered_multimap/insert/hint.cc: New.
	* testsuite/performance/23_containers/insert/unordered_multiset_hint.cc:
	New.
	* testsuite/23_containers/unordered_set/instantiation_neg.cc:
	Adjust dg-error line number.
	* testsuite/23_containers/unordered_set/
	not_default_constructible_hash_neg.cc: Likewise.
	* doc/xml/manual/containers.xml: Document hinting in unordered
	containers.

From-SVN: r200564
2013-06-29 07:55:12 +00:00
Ed Smith-Rowland
c865f9238a lex.c (lex_raw_string(), [...]): Constrain suffixes treated as concatenated literal and macro to just the...
libcpp:

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

	* lex.c (lex_raw_string(), lex_string()): Constrain suffixes treated
	as concatenated literal and macro to just the patterns found in
	inttypes.h; (is_macro()): New.


gcc/cp:

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

	* cp-tree.h (UDLIT_OP_ANSI_PREFIX): Remove space.
	* parser.c (cp_parser_operator()): Parse user-defined string
	literal as literal operator.


gcc/testsuite:

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

	* g++.dg/cpp0x/udlit-nospace-neg.C: Adjust.
	* g++.dg/cpp1y/udlit-enc-prefix-neg.C: New.
	* g++.dg/cpp1y/udlit-userdef-string.C: New.
	* g++.dg/cpp1y/complex_literals.h: New.

From-SVN: r200563
2013-06-29 03:41:58 +00:00
GCC Administrator
efc58ac548 Daily bump.
From-SVN: r200562
2013-06-29 00:16:32 +00:00
Paolo Carlini
a5e90b2af3 re PR c++/57645 (Explicitly-declared destructor with no exception specification is always noexcept(true))
/cp
2013-06-28  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/57645
	* class.c (deduce_noexcept_on_destructors): Save, set, and restore
	TYPE_HAS_NONTRIVIAL_DESTRUCTOR (t) around the main loop over the
	destructors.

/testsuite
2013-06-28  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/57645
	* g++.dg/cpp0x/noexcept21.C: New.

From-SVN: r200559
2013-06-29 00:11:03 +00:00
Vladimir Makarov
e6631d3801 revert: lra-constraints.c (need_for_split_p): Check call used hard regs living through calls.
2013-06-28  Vladimir Makarov  <vmakarov@redhat.com>

	Revert:
	2013-06-28  Vladimir Makarov  <vmakarov@redhat.com>
	* lra-constraints.c (need_for_split_p): Check call used hard regs
	living through calls.

	* lra-constraints.c (inherit_in_ebb): Reset live_hard_regs for
	call used regs for call insn.

From-SVN: r200558
2013-06-28 23:55:52 +00:00
Jakub Jelinek
53c1275b31 re PR target/57736 (ICE in emit_move_insn with __builtin_ia32_rdtsc)
PR target/57736
	* config/i386/i386.c (ix86_expand_builtin): If target == NULL
	and mode is VOIDmode, don't create a VOIDmode pseudo to copy result
	into.

	* gcc.target/i386/pr57736.c: New test.

From-SVN: r200555
2013-06-28 22:25:35 +02:00
Balaji V. Iyer
1141ed3f71 Implemented Jason Merrill's suggestions on Array Notation C++.
gcc/ChangeLog
2013-06-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * builtins.def: Fixed the function type of CILKPLUS_BUILTIN.

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

        * c-parser.c (c_parser_array_notation): Removed rejection of array
        notations in an array of function pointers.

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

        * array-notation-common.c (length_mismatch_in_expr_p): Collapsed two
        if-statements and compared the trees directly using tree_int_cst_equal.
        (find_rank): Checked for array notations in function name to handle
        array notations in function pointers.
        (extract_array_notation_exprs): Likewise.
        (replace_array_notations): Likewise.
        (cilkplus_extract_an_triplets): Replaced safe_push with
        safe_grow_cleared.  Also removed an unnecessary check to see if the
        node is of type ARRAY_NOTATION_REF.
        (fix_sec_implicit_args): Removed an unnecessary check for ADDR_EXPR.
        Also switched two if-statements to remove an unnecessary comparison.


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

        * parser.c (cp_parser_array_notation): Removed rejection array notation
        of type function pointers. Added handling of array expressions when
        Cilk Plus is enabled.  Took out type-checking.
        (cp_parser_postfix_open_square_expression): Moved normal array expr.
        parsing into cp_parser_array_notation when cilkplus is enabled.
        (cp_parser_compound_statement): Removed expansion of array notations.
        (cp_parser_ctor_initializer_opt_and_function_body): Likewise.
        (cp_parser_function_definition_after_declarator): Likewise.
        (cp_parser_selection_statement): Removed error reporting.
        (cp_parser_iteration_statement): Likewise.
        (cp_parser_direct_declarator): Removed error checking/reporting if
        array notations are used in the declarator.
        * pt.c (instantiate_decl): Likewise.
        (type_unification_real): Removed a check for ARRAY_NOTATION_REF.
        (cxx_eval_constant_expression): Removed ARRAY_NOTATION_REF case.
        (potential_constant_expression_1): Returned false for ARRAY_NOTATION_REF
        case.
        * cp-gimplify.c (cp_genericize): Added expansion of array notation
        expressions here.
        * cp-array-notation.c (make_triplet_val_inv): Removed loc and cry 
        parameters.  Replaced build_decls with get_temp_regvar with type as
        ptrdiff.
        (create_array_refs): Made the type-casting to ptrdiff_type.
        (replace_invariant_var): Added a check for void return type before 
	creating new var.  Replaced build_decl and build_min_nt_loc with
        get_temp_regvar.
        (expand_an_in_modify_expr): Ditto.  Replaced body of redundant else with
        gcc_unreachable.  Removed few unwanted checks.  Made induction variable
        type as ptrdiff_type.  Removed loc and complain arguments passed into
        make_triplet_val_inv.  Replaced all modify expression's code from NOP
        EXPR to INIT EXPR.  Replaced all forceful appending into stmt. list
        with the non-forceful one.  Replaced some integer conversion and
        equality-checking to using tree_int_cst_equal.
        (expand_sec_reduce_builtin): All changes mentioned in above function
        expand_an_in_modify_expr.  Made the new variable type of
        SEC_REDUCE_ANY/ALL_{NON}ZERO intrinsic functions as bool.
        (expand_array_notation_exprs): Removed SWITCH_EXPR case.  Moved all
        the error reporting from parser to this function.  Removed unwanted
        statements and checks from SWITCH_STMT, WHILE_STMT, and DO_STMT cases.
        (cilkplus_an_triplet_types_ok_p): Removed rejection of array notation
        in function pointers.
        (cp_expand_cond_array_notations): Added a new if statements to check
        if condition has a zero rank.  If so, then just return.
        (expand_return_expr): Added a check for return expressions with a rank.
        Replaced get_tmp_regvar with a create_temporary_var.
        (build_array_notation_ref): Simplified and removed unwanted if-stmts.
        Moved common code outside if-statements.  Moved type-checking from
        parser to here.
        * semantics.c (finish_return_stmt): Removed a check for return exprs.
        with a rank.
        * call.c (convert_like_real): Removed a check for array notation
        expression in a function.
        (build_over_call): Likewise.
        (magic_varargs_p): Added a check for builtin array notation function.
        Made this function non-static and removed its prototype.
        * cp-tree.h (magic_varargs_p): New prototype.
        * typeck.c (cp_build_function_call_vec): Removed automatic setting of
        nargs to the param->length when builtin reduction function is used.
        (convert_arguments): Replaced check for a constant_p function with
        margic_varargs_p function call.
        (cp_build_binary_op): Removed calling of the function
        find_correct_array_notation_type.
        (cp_build_addr_expr_1): Removed an unwanted if-statement.
        (convert_for_assignment): Removed automatic return of rhs when array
        notation builtin function is used.

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

        * c-c++-common/cilk-plus/AN/decl-ptr-colon.c (main): Made this testcase
        c specific.
        * c-c++-common/cilk-plus/AN/decl-ptr-colon.c (main): Changed dg-error
        strings to match the fixed error messages.
        * c-c++-common/cilk-plus/AN/misc.c (main): Likewise.
        * c-c++-common/cilk-plus/AN/rank_mismatch.c (main): Added a new error
        message check.

From-SVN: r200554
2013-06-28 13:04:36 -07:00
Vladimir Makarov
e32e4c4a88 lra-constraints.c (need_for_split_p): Check call used hard regs living through calls.
2013-06-28  Vladimir Makarov  <vmakarov@redhat.com>

	* lra-constraints.c (need_for_split_p): Check call used hard regs
	living through calls.

From-SVN: r200553
2013-06-28 19:43:39 +00:00
Michael Meissner
f161bfd330 re PR target/57744 (Power8 support has problems with quad word atomic instructions)
[gcc]
2013-06-28  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/57744
	* config/rs6000/rs6000.h (MODES_TIEABLE_P): Do not allow PTImode
	to tie with any other modes.  Eliminate Altivec vector mode tests,
	since these are a subset of ALTIVEC or VSX vector modes.  Simplify
	code, to return 0 if testing MODE2 for a condition, if we've
	already tested MODE1 for the same condition.

[gcc/testsuite]
2013-06-28  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/57744
	* gcc.target/powerpc/pr57744.c: New test to make sure lqarx and
	stqcx. get even registers.

From-SVN: r200538
2013-06-28 16:15:17 +00:00
Paolo Carlini
7d9800e39a *: Move inside testsuite/21_strings/basic_string/operations/data/.
2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/21_strings/basic_string/operations/*: Move inside
	testsuite/21_strings/basic_string/operations/data/.
	* testsuite/21_strings/basic_string/compare/*: Move inside
	testsuite/21_strings/basic_string/operations/.
	* testsuite/21_strings/basic_string/find/*: Likewise.
	* testsuite/21_strings/basic_string/rfind/*: Likewise.
	* testsuite/21_strings/basic_string/substr/*: Likewise.

From-SVN: r200537
2013-06-28 16:01:08 +00:00
Marcus Shawcroft
7eda14e188 [AArch64] Fix layout of aarch64_cannot_force_const_mem.
From-SVN: r200532
2013-06-28 15:22:48 +00:00
Marcus Shawcroft
c822f852e9 [AArch64] Update comment w.r.t SYMBOL_TINY_ABSOLUTE address model.
From-SVN: r200531
2013-06-28 15:17:19 +00:00
Marcus Shawcroft
946c8f7bff Disable strassen.f90 test for aarch64 tiny memory.
This test case is too large to fit into the aarch64 tiny memory model.

From-SVN: r200521
2013-06-28 12:45:57 +00:00
Marcus Shawcroft
da4f13a4f9 [AArch64] Remove aarch64_symbolic_constant_p.
From-SVN: r200519
2013-06-28 12:26:20 +00:00
Kyrylo Tkachov
956a95a55f constraints.md (Ts): New constraint.
2013-06-28  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/constraints.md (Ts): New constraint.
	* config/arm/arm.md (arm_movqi_insn): Add alternatives for
	16-bit encodings.
	(compare_scc): Use "Ts" constraint for operand 0.
	(ior_scc_scc): Likewise.
	(and_scc_scc): Likewise.
	(and_scc_scc_nodom): Likewise.
	(ior_scc_scc_cmp): Likewise for operand 7.
	(and_scc_scc_cmp): Likewise.
	* config/arm/thumb2.md (thumb2_movsi_insn):
	Add alternatives for 16-bit encodings.
	(thumb2_movhi_insn): Likewise.
	(thumb2_movsicc_insn): Likewise.
	(thumb2_and_scc): Take 'and' outside cond_exec.  Use "Ts" constraint.
	(thumb2_negscc): Use "Ts" constraint.
	Move mvn instruction outside cond_exec block.
	* config/arm/vfp.md (thumb2_movsi_vfp): Add alternatives
	for 16-bit encodings.

From-SVN: r200515
2013-06-28 11:16:03 +00:00
Kyrylo Tkachov
31dfce1008 arm.md (arm_mulsi3_v6): Add alternative for 16-bit encoding.
2013-06-28  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/arm.md (arm_mulsi3_v6): Add alternative for 16-bit
	encoding.
	(mulsi3addsi_v6): Disable predicable variant for arm_restrict_it.
	(mulsi3subsi): Likewise.
	(mulsidi3adddi): Likewise.
	(mulsidi3_v6): Likewise.
	(umulsidi3_v6): Likewise.
	(umulsidi3adddi_v6): Likewise.
	(smulsi3_highpart_v6): Likewise.
	(umulsi3_highpart_v6): Likewise.
	(mulhisi3tb): Likewise.
	(mulhisi3bt): Likewise.
	(mulhisi3tt): Likewise.
	(maddhisi4): Likewise.
	(maddhisi4tb): Likewise.
	(maddhisi4tt): Likewise.
	(maddhidi4): Likewise.
	(maddhidi4tb): Likewise.
	(maddhidi4tt): Likewise.
	(zeroextractsi_compare0_scratch): Likewise.
	(insv_zero): Likewise.
	(insv_t2): Likewise.
	(anddi_notzesidi_di): Likewise.
	(anddi_notsesidi_di): Likewise.
	(andsi_notsi_si): Likewise.
	(iordi_zesidi_di): Likewise.
	(xordi_zesidi_di): Likewise.
	(andsi_iorsi3_notsi): Likewise.
	(smax_0): Likewise.
	(smax_m1): Likewise.
	(smin_0): Likewise.
	(not_shiftsi): Likewise.
	(unaligned_loadsi): Likewise.
	(unaligned_loadhis): Likewise.
	(unaligned_loadhiu): Likewise.
	(unaligned_storesi): Likewise.
	(unaligned_storehi): Likewise.
	(extv_reg): Likewise.
	(extzv_t2): Likewise.
	(divsi3): Likewise.
	(udivsi3): Likewise.
	(arm_zero_extendhisi2addsi): Likewise.
	(arm_zero_extendqisi2addsi): Likewise.
	(compareqi_eq0): Likewise.
	(arm_extendhisi2_v6): Likewise.
	(arm_extendqisi2addsi): Likewise.
	(arm_movt): Likewise.
	(thumb2_ldrd): Likewise.
	(thumb2_ldrd_base): Likewise.
	(thumb2_ldrd_base_neg): Likewise.
	(thumb2_strd): Likewise.
	(thumb2_strd_base): Likewise.
	(thumb2_strd_base_neg): Likewise.
	(arm_negsi2): Add alternative for 16-bit encoding.
	(arm_one_cmplsi2): Likewise.

From-SVN: r200513
2013-06-28 10:56:27 +00:00
Marc Glisse
ee429bdfe0 re PR c++/57509 (Segmentation fault when using __builtin_shuffle in templated class.)
2013-06-28  Marc Glisse  <marc.glisse@inria.fr>

	PR c++/57509
	* g++.dg/ext/pr57509.C: Pass vectors by reference to avoid warnings.

From-SVN: r200511
2013-06-28 10:31:39 +00:00
Kyrylo Tkachov
1572e697b7 predicates.md (arm_cond_move_operator): New predicate.
2013-06-28  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/predicates.md (arm_cond_move_operator): New predicate.
	* config/arm/arm.md (movsfcc): Use arm_cond_move_operator predicate.
	(movdfcc): Likewise.
	* config/arm/vfp.md (*thumb2_movsf_vfp):
	Disable predication for arm_restrict_it.
	(*thumb2_movsfcc_vfp): Disable for arm_restrict_it.
	(*thumb2_movdfcc_vfp): Likewise.
	(*abssf2_vfp, *absdf2_vfp, *negsf2_vfp, *negdf2_vfp,*addsf3_vfp,
	*adddf3_vfp, *subsf3_vfp, *subdf3_vfpc, *divsf3_vfp,*divdf3_vfp,
	*mulsf3_vfp, *muldf3_vfp, *mulsf3negsf_vfp, *muldf3negdf_vfp,
	*mulsf3addsf_vfp, *muldf3adddf_vfp, *mulsf3subsf_vfp,
	*muldf3subdf_vfp, *mulsf3negsfaddsf_vfp, *fmuldf3negdfadddf_vfp,
	*mulsf3negsfsubsf_vfp, *muldf3negdfsubdf_vfp, *fma<SDF:mode>4,
	*fmsub<SDF:mode>4, *fnmsub<SDF:mode>4, *fnmadd<SDF:mode>4,
	*extendsfdf2_vfp, *truncdfsf2_vfp, *extendhfsf2, *truncsfhf2,
	*truncsisf2_vfp, *truncsidf2_vfp, fixuns_truncsfsi2, fixuns_truncdfsi2,
	*floatsisf2_vfp, *floatsidf2_vfp, floatunssisf2, floatunssidf2,
	*sqrtsf2_vfp, *sqrtdf2_vfp, *cmpsf_vfp, *cmpsf_trap_vfp, *cmpdf_vfp,
	*cmpdf_trap_vfp, <vrint_pattern><SDF:mode>2):
	Disable predication for arm_restrict_it.

From-SVN: r200510
2013-06-28 10:05:27 +00:00