117739 Commits

Author SHA1 Message Date
Kai Tietz
0ff7968cc0 constexpr-52672.C (ul_ptr): Use SIZE_TYPE instead of hard-coded 'unsigned long'.
* g++.dg/cpp0x/constexpr-52672.C (ul_ptr): Use SIZE_TYPE instead of
        hard-coded 'unsigned long'.

From-SVN: r189056
2012-06-28 22:29:20 +02:00
Richard Henderson
9965157413 Document MULT_HIGHPART_EXPR
From-SVN: r189054
2012-06-28 12:01:28 -07:00
Jakub Jelinek
5deb57cb1b re PR tree-optimization/51581 (Integer division by constant is not vectorized)
PR tree-optimization/51581
	* tree-vect-stmts.c (permute_vec_elements): Add forward decl.
	(vectorizable_operation): Handle vectorization of MULT_HIGHPART_EXPR
	also using VEC_WIDEN_MULT_*_EXPR or builtin_mul_widen_* plus
	VEC_PERM_EXPR if vector MULT_HIGHPART_EXPR isn't supported.
	* tree-vect-patterns.c (vect_recog_divmod_pattern): Use
	MULT_HIGHPART_EXPR instead of VEC_WIDEN_MULT_*_EXPR and shifts.

	* gcc.dg/vect/pr51581-4.c: New test.

From-SVN: r189053
2012-06-28 19:53:58 +02:00
Jakub Jelinek
c9ba330781 re PR tree-optimization/53645 (Missed optimization for vector integer division lowering)
PR tree-optimization/53645
	* tree-vect-generic.c (expand_vector_divmod): Use MULT_HIGHPART_EXPR
	instead of VEC_WIDEN_MULT_{HI,LO}_EXPR followed by VEC_PERM_EXPR
	if possible.

	* gcc.c-torture/execute/pr53645-2.c: New test.

From-SVN: r189052
2012-06-28 19:52:51 +02:00
Georg-Johann Lay
b04ffa5653 re PR other/53595 (Code size increase of +10% between two 4.7.1 snapshot)
PR 53595
	* config/avr/avr.c (avr_hard_regno_call_part_clobbered): New.
	* config/avr/avr-protos.h (avr_hard_regno_call_part_clobbered): New.
	* config/avr/avr.h (HARD_REGNO_CALL_PART_CLOBBERED): Forward to
	avr_hard_regno_call_part_clobbered.

From-SVN: r189049
2012-06-28 13:53:51 +00:00
Christophe Lyon
bd8e704ff4 configure.ac (CFLAGS_FOR_TARGET, [...]): Make sure they contain -O2.
* configure.ac (CFLAGS_FOR_TARGET, CXXFLAGS_FOR_TARGET): Make sure
they contain -O2.
* configure: Regenerate.

From-SVN: r189046
2012-06-28 11:50:15 +00:00
Richard Guenther
4519d74588 re PR middle-end/53790 (ICE on dereferencing a extern union in asm statement)
2012-06-28  Richard Guenther  <rguenther@suse.de>

	PR middle-end/53790
	* expr.c (expand_expr_real_1): Verify if the type is complete
	before inspecting its size.

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

From-SVN: r189045
2012-06-28 11:45:14 +00:00
Andreas Schwab
7db2226d07 gpl.texi: Remove.
* doc/include/gpl.texi: Remove.
* doc/sourcebuild.texi (Texinfo Manuals): Don't mention gpl.texi.

From-SVN: r189044
2012-06-28 11:42:36 +00:00
Jakub Jelinek
4ee4c52c64 re PR tree-optimization/53645 (Missed optimization for vector integer division lowering)
PR tree-optimization/53645
	* tree-vect-generic.c (add_rshift): New function.
	(expand_vector_divmod): New function.
	(expand_vector_operation): Use it for vector integer
	TRUNC_{DIV,MOD}_EXPR by VECTOR_CST.
	* tree-vect-patterns.c (vect_recog_divmod_pattern): Replace
	unused lguup variable with dummy_int.

	* gcc.c-torture/execute/pr53645.c: New test.

From-SVN: r189043
2012-06-28 13:38:01 +02:00
Arnaud Charlet
304b6b3eda * gnat.dg/deep_old.adb, gnat.dg/old_errors.adb: Removed, obsolete.
From-SVN: r189042
2012-06-28 13:08:49 +02:00
Andreas Schwab
e6fdc91823 * libgomp.texi: Include gpl_v3.texi instead of gpl.texi.
From-SVN: r189041
2012-06-28 09:01:38 +00:00
Olivier Hainque
ecd49d513b expr.c (convert_move): Latch mem integer inputs into a register before expanding a multi-instructions...
* expr.c (convert_move): Latch mem integer inputs into a
        register before expanding a multi-instructions sequence.

From-SVN: r189040
2012-06-28 07:56:40 +00:00
Benjamin Kosnik
e07b233d2e c++config: Remove __regex nested namespace.
2012-06-27  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/c++config: Remove __regex nested namespace.
	* include/bits/regex_compiler.h: Change __regex to
	__detail. Adjust doxygen markup, add regex-details group.
	* include/bits/regex_constants.h: Same.
	* include/bits/regex_cursor.h: Same.
	* include/bits/regex_error.h: Same.
	* include/bits/regex_grep_matcher.h: Same.
	* include/bits/regex_grep_matcher.tcc: Same.
	* include/bits/regex_nfa.h: Same.
	* include/bits/regex_nfa.tcc: Same.
	* include/bits/regex.h: Same. Remove static from global constants.

	* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.

	* include/bits/locale_classes.tcc: Add use_facet, has_facet to
	locales group.

From-SVN: r189039
2012-06-28 07:50:34 +00:00
Alexandre Oliva
7fefe030cc re PR debug/53671 (Many guality test failures)
PR debug/53671
PR debug/49888
* gcc.dg/guality/pr49888.c: Account for the possibility that
the variable is optimized out at the first test.

From-SVN: r189038
2012-06-28 07:41:02 +00:00
Alexandre Oliva
a992a6d1f4 re PR rtl-optimization/53706 (Bootstrap failure due to "Invalid write of size 8 at 0xBDC35E: variable_htab_free (var-tracking.c:1418))
PR debug/53706
PR debug/47624
* var-tracking.c (vt_emit_notes): Release loc_exp_dep_pool...
(vt_finalize): ... here instead, if needed.

From-SVN: r189037
2012-06-28 07:39:51 +00:00
Alexandre Oliva
6f9e260c80 re PR debug/53740 (--enable-checking=yes,rtl bootstrap failure with ada)
PR debug/53740
PR debug/52983
PR debug/48866
* dce.c (word_dce_process_block): Check whether inserting debug
temps are needed even for needed insns.
(dce_process_block): Likewise.
* df-problems.c (dead_debug_add): Add comment about multi-regs.
(dead_debug_insert_temp): Likewise.  Don't subreg when we're
setting fewer regs than a multi-reg requires.

From-SVN: r189036
2012-06-28 07:39:25 +00:00
GCC Administrator
b94a8a1239 Daily bump.
From-SVN: r189033
2012-06-28 00:19:19 +00:00
Richard Henderson
64a5dc5698 alpha: Cleaup builtins and folding
* config/alpha/alpha.c (alpha_dimode_u): New.
        (alpha_init_builtins): Initialize it, and use it.
        (alpha_fold_builtin_cmpbge): Use alpha_dimode_u.
        (alpha_fold_builtin_zapnot, alpha_fold_builtin_insxx): Likewise.
        (alpha_fold_vector_minmax, alpha_fold_builtin_perr): Likewise.
        (alpha_fold_builtin_pklb, alpha_fold_builtin_pkwb): Likewise.
        (alpha_fold_builtin_unpkbl, alpha_fold_builtin_unpkbw): Likewise.
        (alpha_fold_builtin_cttz, alpha_fold_builtin_ctlz): Likewise.
        (alpha_fold_builtin_ctpop): Likewise.
        (alpha_fold_builtin_umulh): Remove.
        (alpha_fold_builtin): Use MULT_HIGHPART_EXPR for UMULH; fix
        typo in MAX_ARGS check.

From-SVN: r189028
2012-06-27 14:30:57 -07:00
Richard Henderson
98449720f7 Add MULT_HIGHPART_EXPR
* tree.def (MULT_HIGHPART_EXPR): New.
        * cfgexpand.c (expand_debug_expr): Ignore it.
        * expr.c (expand_expr_real_2): Handle it.
        * fold-const.c (int_const_binop_1): Likewise.
        * optabs.c (optab_for_tree_code): Likewise.
        * tree-cfg.c (verify_gimple_assign_binary): Likewise.
        * tree-inline.c (estimate_operator_cost): Likewise.
        * tree-pretty-print.c (dump_generic_node): Likewise.
        (op_code_prio, op_symbol_code): Likewise.
        * tree.c (commutative_tree_code): Likewise.  Also handle
        WIDEN_MULT_EXPR, VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR.

From-SVN: r189027
2012-06-27 14:30:51 -07:00
Richard Henderson
ff4d1662c8 i386: Fix logic error in r188785
PR target/53749
        * config/i386/i386.c (ix86_rtx_costs): Fix typo vs UNITS_PER_WORD
        in 2012-06-23 change.  Adjust two other DImode tests as well.

From-SVN: r189026
2012-06-27 14:30:41 -07:00
Jason Merrill
ae52af05e0 parser.c (cp_parser_check_for_invalid_template_id): tag_type parm.
* parser.c (cp_parser_check_for_invalid_template_id): tag_type parm.
	(cp_parser_simple_type_specifier, cp_parser_class_head): Adjust.
	(cp_parser_elaborated_type_specifier): Adjust.
	* decl.c (duplicate_decls): Return error_mark_node on template
	mismatch.

From-SVN: r189025
2012-06-27 15:19:18 -04:00
Jason Merrill
b298aa9b28 re PR c++/53563 (ICE in start_decl, at cp/decl.c:4427)
PR c++/53563
	* parser.c (cp_parser_template_id): Add tag_type parm.
	(cp_parser_template_name): Likewise.
	(cp_parser_id_expression, cp_parser_unqualified_id): Adjust.
	(cp_parser_pseudo_destructor_name, cp_parser_type_name): Adjust.
	(cp_parser_simple_type_specifier, cp_parser_class_name): Adjust.
	(cp_parser_elaborated_type_specifier, cp_parser_class_head): Adjust.

From-SVN: r189024
2012-06-27 15:19:09 -04:00
Jason Merrill
a05deb55a5 comment
From-SVN: r189023
2012-06-27 15:19:01 -04:00
Janus Weil
362aa47460 re PR fortran/41951 ([OOP] Not diagnosing ambiguous operators (TB vs. INTERFACE))
2012-06-27  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/41951
	PR fortran/49591
	* interface.c (check_new_interface): Rename, add 'loc' argument,
	make non-static.
	(gfc_add_interface): Rename 'check_new_interface'
	* gfortran.h (gfc_check_new_interface): Add prototype.
	* resolve.c (resolve_typebound_intrinsic_op): Add typebound operator
	targets to non-typebound operator list.


2012-06-27  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/41951
	PR fortran/49591
	* gfortran.dg/typebound_operator_16.f03: New.

From-SVN: r189022
2012-06-27 19:38:00 +02:00
Jakub Jelinek
b585a51fb9 sse4_1-pmuldq.c (TEST): Initialize even src1.i and src2.i fields even in the second half of the arrays.
* gcc.target/i386/sse4_1-pmuldq.c (TEST): Initialize
	even src1.i and src2.i fields even in the second half of the arrays.

From-SVN: r189018
2012-06-27 16:45:55 +02:00
Ramana Radhakrishnan
c523fc894c re PR c++/51033 (generic vector subscript and shuffle support was not added to C++)
2012-06-27  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

	PR C++/51033
	* semantics.c (constexpr_call): Fix typo in comment.
	(cxx_eval_vec_perm_expr): New.
	(cxx_eval_constant_expression): Fold VEC_PERM_EXPRs.

2012-06-27  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

	PR c++/51033.
	* g++.dg/torture/vshuf-16.inc: New test.
	* g++.dg/torture/vshuf-2.inc: New test.
	* g++.dg/torture/vshuf-4.inc: New test.
	* g++.dg/torture/vshuf-8.inc: New test.
	* g++.dg/torture/vshuf-main.inc: New test.
	* g++.dg/torture/vshuf-v16hi.C: New test.
	* g++.dg/torture/vshuf-v16qi.C: New test.
	* g++.dg/torture/vshuf-v2df.C: New test.
	* g++.dg/torture/vshuf-v2di.C: New test.
	* g++.dg/torture/vshuf-v2sf.C: New test.
	* g++.dg/torture/vshuf-v2si.C: New test.
	* g++.dg/torture/vshuf-v4df.C: New test.
	* g++.dg/torture/vshuf-v4di.C: New test.
	* g++.dg/torture/vshuf-v4sf.C: New test.
	* g++.dg/torture/vshuf-v4si.C: New test.
	* g++.dg/torture/vshuf-v8hi.C: New test.
	* g++.dg/torture/vshuf-v8qi.C: New test.
	* g++.dg/torture/vshuf-v8si.C: New test.

From-SVN: r189017
2012-06-27 14:19:17 +00:00
Kai Tietz
6f3a2e2390 re PR preprocessor/37215 (ICE on 'gcc -E -dM -fpreprocessed - < /dev/null')
PR preprocessor/37215
        * c-ppoutput.c (preprocess_file): Check for nonempty buffer.

From-SVN: r189016
2012-06-27 16:03:08 +02:00
Nick Clifton
4b3650e36c rx.md (comparesi3_extend): Remove = modifier from input operand.
* config/rx/rx.md (comparesi3_extend): Remove = modifier from
	input operand.

From-SVN: r189014
2012-06-27 13:03:47 +00:00
Richard Guenther
195b4c507f re PR middle-end/53676 (empty loop is not always removed now)
2012-06-27  Richard Guenther  <rguenther@suse.de>

	PR middle-end/53676
	* tree-chrec.c (chrec_convert_1): Represent truncation to
	a type with undefined overflow as truncation to an unsigned
	type converted to the type with undefined overflow.
	* tree-scalar-evolution.c (interpret_rhs_expr): For computing
	the scalar evolution of a truncated widened operation avoid
	looking at the non-existing evolution of the widened operation
	result.

	* gcc.dg/tree-ssa/scev-6.c: New testcase.

From-SVN: r189013
2012-06-27 11:32:30 +00:00
Richard Guenther
be7493cabb re PR tree-optimization/53774 (Reassociator generates non-canonical addition)
2012-06-27  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/53774
	* tree-ssa-reassoc.c (get_rank): All default defs have
	precomputed rank.
	(init_reassoc): Precompute rank for all SSA default defs.

From-SVN: r189012
2012-06-27 11:29:04 +00:00
Nick Clifton
d3f7b31ee5 * config/rx/rx.md (simple_return): Use the simple_return rtx.
From-SVN: r189010
2012-06-27 07:22:52 +00:00
Richard Henderson
a247af8371 i386: Correct costs on CONST_DOUBLE and CONST_VECTOR
We were always falling through to the memory default.
Also use standard_sse_constant_p on CONST_VECTOR.

        * config/i386/i386.c (ix86_rtx_costs): Use standard_sse_constant_p
        and don't fall thru from standard_80387_constant_p to the memory
        fallback,

From-SVN: r189007
2012-06-26 20:20:08 -07:00
Richard Henderson
87b7851620 i386: Implement widen_smul_*_v4si for plain sse2
If we don't implement this pattern, the vectorizer is happy to
unpack the v4si and use the full mulv2di3.  This results in
more element shuffling than is required.

        * config/i386/i386.c (bdesc_args): Update.  Change
        IX86_BUILTIN_VEC_WIDEN_SMUL_ODD_V4SI to OPTION_MASK_ISA_SSE2.
        (IX86_BUILTIN_VEC_WIDEN_SMUL_EVEN_V4SI): New.
        (ix86_builtin_mul_widen_even): Use it.
        (ix86_builtin_mul_widen_odd): Relax SMUL_ODD from sse4 to sse2.
        (ix86_expand_mul_widen_evenodd): Handle signed for sse2.
        * config/i386/sse.md (vec_widen_<s>mult_hi_<V124_AVX2>): Allow
        for all SSE2.
        (vec_widen_<s>mult_lo_<V124_AVX2>): Likewise.
        (vec_widen_<s>mult_odd_<VI4_AVX2>): Likewise.  Relax from V124_AVX2.
        (vec_widen_smult_even_v4si): New.

From-SVN: r189006
2012-06-26 20:19:59 -07:00
Richard Henderson
298301d9e7 i386: Expand mul<VI8_AVX2> earlier
Move the expansion code to i386.c next to mulv4si3.  Eliminate
one shift by adding the highparts before shifting.  Correct costs.

        * config/i386/sse.md (mul<VI8_AVX2>3): Change from insn_and_split
        to expander; move guts to ...
        * config/i386/i386.c (ix86_expand_sse2_mulvxdi3): ... here.  Add
        highparts before shifting up.
        * config/i386/i386-protos.h: Update.

From-SVN: r189005
2012-06-26 20:19:51 -07:00
GCC Administrator
e2a3a0987f Daily bump.
From-SVN: r189003
2012-06-27 00:18:00 +00:00
Steven Bosscher
4e2edffd23 system.h (USE_COMMON_FOR_ONE_ONLY): Poison.
* system.h (USE_COMMON_FOR_ONE_ONLY): Poison.
	* defaults.h (USE_COMMON_FOR_ONE_ONLY): Do not provide default.
	* config/darwin.h (USE_COMMON_FOR_ONE_ONLY): Do not define.

From-SVN: r188999
2012-06-26 21:47:18 +00:00
Alexandre Oliva
de2c775d66 var-tracking.c (vt_add_function_parameter): Use a preserved VALUE for the MEM address of an incoming parameter.
* var-tracking.c (vt_add_function_parameter): Use a preserved
VALUE for the MEM address of an incoming parameter.

From-SVN: r188998
2012-06-26 20:33:32 +00:00
Janis Johnson
2ef1bce664 scandump.exp (scan-dump, [...]): Use printable pattern in test name.
* lib/scandump.exp (scan-dump, scan-dump-not, scan-dump-dem,
	scan-dump-dem-not): Use printable pattern in test name.

From-SVN: r188996
2012-06-26 20:17:00 +00:00
Arnaud Charlet
8a0320ad5e [multiple changes]
2012-06-26  Vincent Pucci  <pucci@adacore.com>

	* exp_ch3.adb (Build_Init_Statements): Don't check the parents
	in the Rep Item Chain of the task for aspects Interrupt_Priority,
	Priority, CPU and Dispatching_Domain.
	* exp_ch9.adb (Expand_N_Task_Type_Declaration): fields _Priority,
	_CPU and _Domain are present in the corresponding record type
	only if the task entity has a pragma, attribute definition
	clause or aspect specification.
	(Make_Initialize_Protection): Don't check the parents in the Rep Item
	Chain of the task for aspects Interrupt_Priority, Priority, CPU and
	Dispatching_Domain.
	* freeze.adb (Freeze_Entity): Use of Evaluate_Aspects_At_Freeze_Point
	call replaced by Analyze_Aspects_At_Freeze_Point.
	* sem_ch13.adb, sem_ch13.ads (Analyze_Aspects_At_Freeze_Point):
	Renaming of Evaluate_Aspects_At_Freeze_Point.

2012-06-26  Yannick Moy  <moy@adacore.com>

	* sem_attr.adb (Analyze_Attribute): Detect if 'Old is used outside a
	postcondition, and issue an error in such a case.

2012-06-26  Yannick Moy  <moy@adacore.com>

	* gnat_rm.texi: Minor editing.

2012-06-26  Tristan Gingold  <gingold@adacore.com>

	* raise-gcc.c: Minor cleanup: remove unused prototype.
	* seh_init.c: Do not create an image wide unwind info to catch
	SEH when SEH unwind info are emitted by the compiler.

From-SVN: r188995
2012-06-26 22:11:28 +02:00
Sterling Augustine
59b7e90faf pubtypes-2.c: Update expected output.
2012-06-26  Sterling Augustine  <saugustine@google.com>
	    Dominique Dhumieres  <dominiq@lps.ens.fr>

	* gcc.dg/pubtypes-2.c: Update expected output.
	* gcc.dg/pubtypes-3.c: Likewise.
	* gcc.dg/pubtypes-4.c: Likewise.



Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>

From-SVN: r188994
2012-06-26 18:26:08 +00:00
Sterling Augustine
1542460a84 Obvious ChangeLog formatting fix.
From-SVN: r188993
2012-06-26 18:25:15 +00:00
Sterling Augustine
d44f5f2552 dwarf2out.c (output_pubnames): Add check for DW_TAG_enumerator.
2012-06-26  Sterling Augustine <saugustine@google.com>

        * dwarf2out.c (output_pubnames): Add check for DW_TAG_enumerator.
        (prune_unused_types): Likewise.

From-SVN: r188992
2012-06-26 17:54:02 +00:00
Steven Bosscher
01a07a642e system.h (UNALIGNED_SHORT_ASM_OP, [...]): Poison.
* system.h (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
	UNALIGNED_LONG_ASM_OP, UNALIGNED_DOUBLE_INT_ASM_OP): Poison.
	* vmsdbgout.c (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
	UNALIGNED_LONG_ASM_OP, UNALIGNED_DOUBLE_INT_ASM_OP): Rename to
	VMS_UNALIGNED_SHORT_ASM_OP, VMS_UNALIGNED_INT_ASM_OP,
	VMS_UNALIGNED_LONG_ASM_OP, and VMS_UNALIGNED_DOUBLE_INT_ASM_OP.
	* config/microblaze/microblaze.h (UNALIGNED_SHORT_ASM_OP,
	UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_INT_ASM_OP): Do not define.
	* doc/tm.texi.in: Remove UNALIGNED_INT_ASM_OP reference from the
	documentation.
	* doc/tm.texi: Regenerate.
	* doc/cpp.texi: Make example for #error generic.
	* config/frv/frv.h: Fix example text to match tm.texi.

From-SVN: r188991
2012-06-26 17:26:19 +00:00
Bill Schmidt
f9453c07d6 tree-pass.h (pass_strength_reduction): New decl.
gcc:

2012-06-26  Bill Schmidt  <wschmidt@linux.ibm.com>

	* tree-pass.h (pass_strength_reduction): New decl.
	* tree-ssa-loop-ivopts.c (initialize_costs): Make non-static.
	(finalize_costs): Likewise.
	* timevar.def (TV_TREE_SLSR): New timevar.
	* gimple-ssa-strength-reduction.c: New.
	* tree-flow.h (initialize_costs): New decl.
	(finalize_costs): Likewise.
	* Makefile.in (tree-ssa-strength-reduction.o): New dependencies.
	* passes.c (init_optimization_passes): Add pass_strength_reduction.

gcc/testsuite:

2012-06-26  Bill Schmidt  <wschmidt@linux.ibm.com>

	* gcc.dg/tree-ssa/slsr-1.c: New test.
	* gcc.dg/tree-ssa/slsr-2.c: Likewise.
	* gcc.dg/tree-ssa/slsr-3.c: Likewise.
	* gcc.dg/tree-ssa/slsr-4.c: Likewise.

From-SVN: r188989
2012-06-26 16:27:50 +00:00
Matt Turner
703ae70c62 re PR target/35294 (iwmmxt intrinsics, internal compiler error)
* doc/extend.texi (__builtin_arm_tinsrb): Add missing second
	parameter.
	(__builtin_arm_tinsrh): Likewise.
	(__builtin_arm_tinsrw): Likewise.
	(__builtin_arm_wsadb): Add missing v2si parameter.
	(__builtin_arm_wsadh): Likewise.
	(__builtin_arm_getwcx): Delete.
	(__builtin_arm_setwcx): Delete.
	(__builtin_arm_getwcgr0): Add.
	(__builtin_arm_getwcgr1): Add.
	(__builtin_arm_getwcgr2): Add.
	(__builtin_arm_getwcgr3): Add.
	(__builtin_arm_setwcgr0): Add.
	(__builtin_arm_setwcgr1): Add.
	(__builtin_arm_setwcgr2): Add.
	(__builtin_arm_setwcgr3): Add.

	PR target/35294
	* gcc.target/arm/mmx-2.c: New.

From-SVN: r188988
2012-06-26 14:59:45 +00:00
Richard Guenther
72e732f89d re PR c++/53752 (ice in write_array_type)
2012-06-26  Richard Guenther  <rguenther@suse.de>

	PR c++/53752
	* mangle.c (write_array_type): Truncate the number-of-elements
	result.

	* g++.dg/torture/pr53752.C: New testcase.

From-SVN: r188986
2012-06-26 13:55:34 +00:00
Richard Guenther
3c04921bfd revert: tree-inline.c (estimate_num_insns): Estimate call cost for tailcalls properly.
2012-06-26  Richard Guenther  <rguenther@suse.de>

	Revert
	2012-06-21  Richard Guenther  <rguenther@suse.de>

	* tree-inline.c (estimate_num_insns): Estimate call cost for
	tailcalls properly.

From-SVN: r188985
2012-06-26 13:08:50 +00:00
Steven Bosscher
a8d56c302b re PR middle-end/33190 (tm.texi describes some non-existing hooks)
PR other/33190
	* doc/tm.texi.in: Document LOGICAL_OP_NON_SHORT_CIRCUIT.
	* doc/tm.texi: Regenerate.

From-SVN: r188984
2012-06-26 11:27:41 +00:00
Steven Bosscher
0c93ed527c re PR middle-end/33190 (tm.texi describes some non-existing hooks)
PR other/33190
	* config/mips/mips.h: Do not define ALL_COP_ADDITIONAL_REGISTER_NAMES.
	* config/frv/frv.h: Do not define REVERSE_CONDEXEC_PREDICATES_P.
	* doc/tm.texi.in: Remove documentation for unused target macros
	ALL_COP_ADDITIONAL_REGISTER_NAMES, DBX_OUTPUT_LBRAC, DBX_OUTPUT_NFUN,
	DBX_OUTPUT_RBRAC, RANGE_TEST_NON_SHORT_CIRCUIT, REAL_VALUE_TRUNCATE,
	REVERSE_CONDEXEC_PREDICATES_P, TARGET_ALIGN_ANON_BITFIELDS, and
	TARGET_NARROW_VOLATILE_BITFIELDS.
	Document that MD_HANDLE_UNWABI is a macro in libgcc.
	* doc/tm.texi: Regenerate.
	* system.h: Poison target macros
	ALL_COP_ADDITIONAL_REGISTER_NAMES, DBX_OUTPUT_LBRAC, DBX_OUTPUT_NFUN,
	DBX_OUTPUT_RBRAC, RANGE_TEST_NON_SHORT_CIRCUIT, REAL_VALUE_TRUNCATE,
	REVERSE_CONDEXEC_PREDICATES_P, TARGET_ALIGN_ANON_BITFIELDS, and
	TARGET_NARROW_VOLATILE_BITFIELDS

From-SVN: r188983
2012-06-26 10:47:01 +00:00
Jan Hubicka
3d2e04fdee re PR lto/53572 (Some public symbols don't get to serialized LTO)
PR lto/53572
	* cgraph.h (varpool_can_remove_if_no_refs): Fix handling of
	used symbols.

From-SVN: r188982
2012-06-26 10:15:18 +00:00