Commit Graph

117614 Commits

Author SHA1 Message Date
Wei Guozhi 44cd681003 re PR target/53447 (missed optimization of 64bit ALU operation with small constant)
PR target/53447
	* config/arm/arm-protos.h (const_ok_for_dimode_op): New prototype.
	* config/arm/arm.c (const_ok_for_dimode_op): New function.
	* config/arm/constraints.md (Dd): New constraint.
	* config/arm/predicates.md (arm_adddi_operand): New predicate.
	* config/arm/arm.md (adddi3): Extend it to handle constants.
	(arm_adddi3): Likewise.
	(addsi3_carryin_<optab>): Extend it to handle sbc case.
	(addsi3_carryin_alt2_<optab>): Likewise.
	* config/arm/neon.md (adddi3_neon): Extend it to handle constants.

	* gcc.target/arm/pr53447-1.c: New testcase.
	* gcc.target/arm/pr53447-2.c: New testcase.
	* gcc.target/arm/pr53447-3.c: New testcase.
	* gcc.target/arm/pr53447-4.c: New testcase.

From-SVN: r189102
2012-07-01 15:14:52 +00:00
Uros Bizjak 9faeb49326 ChangeLog: Fix whitespace.
* ChangeLog: Fix whitespace.
	* c-family/ChangeLog: Ditto.
	* testsuite/ChangeLog: Ditto.

From-SVN: r189101
2012-07-01 10:22:19 +02:00
Uros Bizjak fbc873ad61 c-pch.c (c_common_write_pch): Remove unused variables.
* c-pch.c (c_common_write_pch): Remove unused variables.

From-SVN: r189100
2012-07-01 10:13:00 +02:00
GCC Administrator 49e3e71be2 Daily bump.
From-SVN: r189099
2012-07-01 00:17:50 +00:00
Nathan Sidwell cb686b9933 coverage.c (bbg_file_stamp): New.
* coverage.c (bbg_file_stamp): New.
	(read_counts_file): Merge incoming stamp with bbg_file_stamp.
	(build_info): Write bbg_file_stamp.
	(coverage_init): Initialize bbg_file_stamp.  Read counts file
	before writing graph header.
	(coverage_finish): Don't unlink the data file if we can generate a
	unique file stamp.
	* tree.h (crc32_unsigned): Declare.
	* tree.c (crc32_unsigned_bits): New, broken out of ...
	(crc32_byte): ... here.  Use it.
	(crc32_unsigned): New.

From-SVN: r189095
2012-06-30 11:42:52 +00:00
Cary Coutant 1ec205bf20 dwarf2out.c (add_pubname_string): Don't check for want_pubnames.
2012-06-29   Cary Coutant  <ccoutant@google.com>

gcc/
	* dwarf2out.c (add_pubname_string): Don't check for want_pubnames.
	(gen_subprogram_die): Don't add pubname if want_pubnames is false.
	(gen_variable_die): Likewise.
	(gen_namespace_die): Likewise.

From-SVN: r189094
2012-06-29 17:46:44 -07:00
GCC Administrator 9d006871a1 Daily bump.
From-SVN: r189093
2012-06-30 00:17:59 +00:00
Eric Botcazou 0118b9193d tree-eh.c (lower_try_finally_switch): Really put the location of the last statement of the finally block onto the switch.
* tree-eh.c (lower_try_finally_switch): Really put the location of the
	last statement of the finally block onto the switch.

From-SVN: r189086
2012-06-29 22:39:29 +00:00
H.J. Lu dc7267351e Use int for WCHAR_TYPE only for TARGET_LP64
PR target/53539
	* config/i386/gnu-user64.h (WCHAR_TYPE): Use "int" only for
	TARGET_LP64.

From-SVN: r189085
2012-06-29 15:21:30 -07:00
Sterling Augustine dfa15de2a2 dwarf2out.c (add_pubname): Add comment.
2012-06-29  Sterling Augustine  <saugustine@google.com>

	* dwarf2out.c (add_pubname): Add comment.
	(add_pubtype): Fix indentation.
	(gen_enumeration_type_die): Likewise.

From-SVN: r189084
2012-06-29 22:08:06 +00:00
Jakub Jelinek 271be5165c tree-vect-generic.c (expand_vector_divmod): For even/odd widening multiply, put even always as first argument to VEC_PERM_EXPR.
* tree-vect-generic.c (expand_vector_divmod): For even/odd
	widening multiply, put even always as first argument to
	VEC_PERM_EXPR.

From-SVN: r189082
2012-06-29 22:26:51 +02:00
Richard Henderson 0fcc85cd9e Use builtin_widen_mult_even/odd in tree-vect-generic division expansion
* tree-vect-generic.c: Include target.h.
        (expand_vector_divmod): Use builtin_mul_widen_even/odd if supported.
        * Makefile.in (tree-vect-generic.o): Update.

From-SVN: r189081
2012-06-29 09:18:15 -07:00
Steven Bosscher d4a10d0a62 configure.ac: Skip C if explicitly selected.
toplevel/
	* configure.ac: Skip C if explicitly selected.
	* configure: Regenerate.

gcc/
	* configure.ac: Remove special gtfiles case for C.
	* configure: Regenerate.
	* Makefile.in: Remove C front-end hooks and build hooks that
	will be picked up from c/Make-lang.in now.
	Add tree-mudflap to C_COMMON_OBJS.
	* gengtype.c (files_rules): Adjust gt-files for c/c-decl.c.
	* config/vms/vms.c: Look for c-tree.h in c/.
	* doc/gty.texi: Remove reference to c-config-lang.in.
	* doc/sourcebuild.texi: Document the c/ subdirectory.

c/
	* Make-lang.in: New file, rules migrated from gcc/Makefile.in
	and add language Makefile hooks.
	* config-lang.in: New file.
	* c-config-lang.in: Moved from gcc/config-lang.in to here, and
	add the required "normal" config-lang.in rules.
	* c-lang.h: Moved from gcc/ to here.
	* c-tree.h: Likewise.
	* c-objc-common.c: Likewise.
	* c-objc-common.h: Likewise.
	* c-typeck.c: Likewise.
	* c-convert.c: Likewise.
	* c-lang.c: Likewise.
	* c-aux-info.c: Likewise.
	* c-errors.c: Likewise.
	* gccspec.c: Likewise.
	* c-decl.c: Likewise.  Include gt-c-c-decl.h, not gt-c-decl.h.
	* c-parser.c: Likewise.  Include gt-c-c-parser.h, not gt-c-parser.h.

c-family/
	* cppspec.c: Moved from gcc/ to here.

objc/
	* Make-ang.in: Adjust for move of C front-end files.
	* config-lang.in: Likewise.
	* objc-encoding.c: Look for cp-tree.h in cp/, and for c-tree.h
	and c-lang.h in c/.
	* objc-runtime-shared-support.c: Likewise.
	* objc-next-runtime-abi-01.c: Likewise.
	* objc-next-runtime-abi-02.c: Likewise.
	* objc-gnu-runtime-abi-01.c: Likewise.
	* objc-act.c: Likewise.
	* objc-lang.c: Likewise.

cp/
	* Make-lang.in: Remove tree-mudflap.o from CXX_AND_OBJCXX_OBJS.

From-SVN: r189080
2012-06-29 16:12:35 +00:00
Steven Bosscher cc193fba85 system.h (CASE_USE_BIT_TESTS): Poison.
* system.h (CASE_USE_BIT_TESTS): Poison.
	* stmt.c (CASE_USE_BIT_TESTS): Fold away into its only user ...
	(expand_switch_using_bit_tests_p): ...here.
	* doc/tm.texi.in (CASE_USE_BIT_TESTS): Remove documentation.
	* doc/tm.texi (CASE_USE_BIT_TESTS): Regenerate.

From-SVN: r189078
2012-06-29 14:48:08 +00:00
Richard Guenther 7211c82f34 re PR tree-optimization/47061 (VRP doesn't propagate through x<<=1, but it does for x*=2)
2012-06-29  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/47061
	* gcc.dg/tree-ssa/vrp71.c: New testcase.

From-SVN: r189076
2012-06-29 14:27:24 +00:00
Richard Guenther 76744c1746 re PR tree-optimization/37541 (VRP fails to optimize single-bit ranges)
2012-06-29  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/37541
	* gcc.dg/tree-ssa/pr37508.c: Adjust and un-XFAIL.

From-SVN: r189075
2012-06-29 13:56:51 +00:00
Steven Bosscher 67a0732fb2 system.h (IFCVT_EXTRA_FIELDS): Poison.
* system.h (IFCVT_EXTRA_FIELDS): Poison.
	(IFCVT_INIT_EXTRA_FIELDS): Poison.
	* basic-block.h (struct ce_if_block): Remove IFCVT_EXTRA_FIELDS.
	* ifcvt.c (find_if_header): Use IFCVT_MACHDEP_INIT instead of
	IFCVT_INIT_EXTRA_FIELDS.
	* gengtype-parse.c (struct_field_seq): Remove obsolete comment.
	* config/frv/frv.h (IFCVT_INIT_EXTRA_FIELDS): Rename to
	IFCVT_MACHDEP_INIT.
	* config/frv/frv.c (frv_ifcvt_init_extra_fields): Rename to
	frv_ifcvt_machdep_init.
	* doc/tm.texi.in (IFCVT_INIT_EXTRA_FIELDS, IFCVT_EXTRA_FIELDS):
	Remove documentation.
	(IFCVT_MACHDEP_INIT): Document.
	* doc/tm.texi: Regenerate.

From-SVN: r189074
2012-06-29 13:56:40 +00:00
Richard Guenther a1ebcd97b8 re PR tree-optimization/52589 (VRP missed optimization)
2012-06-29  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/52589
	* gcc.dg/tree-ssa/vrp70.c: New testcase.

From-SVN: r189073
2012-06-29 13:17:44 +00:00
Andreas Schwab 8a8b3779de copying-lib.texi (Library Copying): Don't use @heading inside @enumerate.
* copying-lib.texi (Library Copying): Don't use @heading inside
@enumerate.

From-SVN: r189072
2012-06-29 10:59:48 +00:00
Nick Clifton 126ea3e196 * config/lm32/lm32.c (lm32_compute_frame_size): Fix typo.
From-SVN: r189067
2012-06-29 08:45:32 +00:00
Jakub Jelinek 2b5bb7da8f tree-vect-stmts.c (vectorizable_operation): Check both VEC_WIDEN_MULT_LO_EXPR and VEC_WIDEN_MULT_HI_EXPR optabs.
* tree-vect-stmts.c (vectorizable_operation): Check both
	VEC_WIDEN_MULT_LO_EXPR and VEC_WIDEN_MULT_HI_EXPR optabs.
	Verify that operand[0]'s mode is TYPE_MODE (wide_vectype).

From-SVN: r189064
2012-06-29 07:51:08 +02:00
Janis Johnson 90686faa40 * g++.dg/cpp0x/nullptr19.c: Remove exta directives on same line.
From-SVN: r189063
2012-06-29 03:56:57 +00:00
Janis Johnson c1827cf043 error46.C: Add missing comment to dg-message.
* g++.dg/template/error46.C: Add missing comment to dg-message.
	* g++.dg/template/crash107.C: Likewise.
	* g++.dg/template/error47.C: Likewise.
	* g++.dg/template/crash108.C: Likewise.
	* g++.dg/overload/operator5.C: Likewise.

From-SVN: r189062
2012-06-29 03:56:08 +00:00
Janis Johnson b03aa1faa2 Wstrict-aliasing-converted-assigned.c: Fix syntax errors in dg-message directives, add comments.
* gcc.dg/Wstrict-aliasing-converted-assigned.c: Fix syntax
	errors in dg-message directives, add comments.

From-SVN: r189061
2012-06-29 03:55:21 +00:00
GCC Administrator 2b774880bc Daily bump.
From-SVN: r189060
2012-06-29 00:18:55 +00:00
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