Steven Bosscher [Fri, 29 Jun 2012 16:12:35 +0000 (16:12 +0000)]
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
Steven Bosscher [Fri, 29 Jun 2012 14:48:08 +0000 (14:48 +0000)]
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
Richard Guenther [Fri, 29 Jun 2012 14:27:24 +0000 (14:27 +0000)]
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
Richard Guenther [Fri, 29 Jun 2012 13:56:51 +0000 (13:56 +0000)]
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
Steven Bosscher [Fri, 29 Jun 2012 13:56:40 +0000 (13:56 +0000)]
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
Richard Guenther [Fri, 29 Jun 2012 13:17:44 +0000 (13:17 +0000)]
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
Andreas Schwab [Fri, 29 Jun 2012 10:59:48 +0000 (10:59 +0000)]
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
Nick Clifton [Fri, 29 Jun 2012 08:45:32 +0000 (08:45 +0000)]
* config/lm32/lm32.c (lm32_compute_frame_size): Fix typo.
From-SVN: r189067
Jakub Jelinek [Fri, 29 Jun 2012 05:51:08 +0000 (07:51 +0200)]
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
Janis Johnson [Fri, 29 Jun 2012 03:56:57 +0000 (03:56 +0000)]
* g++.dg/cpp0x/nullptr19.c: Remove exta directives on same line.
From-SVN: r189063
Janis Johnson [Fri, 29 Jun 2012 03:56:08 +0000 (03:56 +0000)]
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
Janis Johnson [Fri, 29 Jun 2012 03:55:21 +0000 (03:55 +0000)]
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
GCC Administrator [Fri, 29 Jun 2012 00:18:55 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r189060
Kai Tietz [Thu, 28 Jun 2012 20:29:20 +0000 (22:29 +0200)]
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
Richard Henderson [Thu, 28 Jun 2012 19:01:28 +0000 (12:01 -0700)]
Document MULT_HIGHPART_EXPR
From-SVN: r189054
Jakub Jelinek [Thu, 28 Jun 2012 17:53:58 +0000 (19:53 +0200)]
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
Jakub Jelinek [Thu, 28 Jun 2012 17:52:51 +0000 (19:52 +0200)]
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
Georg-Johann Lay [Thu, 28 Jun 2012 13:53:51 +0000 (13:53 +0000)]
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
Christophe Lyon [Thu, 28 Jun 2012 11:50:15 +0000 (13:50 +0200)]
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
Richard Guenther [Thu, 28 Jun 2012 11:45:14 +0000 (11:45 +0000)]
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
Andreas Schwab [Thu, 28 Jun 2012 11:42:36 +0000 (11:42 +0000)]
gpl.texi: Remove.
* doc/include/gpl.texi: Remove.
* doc/sourcebuild.texi (Texinfo Manuals): Don't mention gpl.texi.
From-SVN: r189044
Jakub Jelinek [Thu, 28 Jun 2012 11:38:01 +0000 (13:38 +0200)]
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
Arnaud Charlet [Thu, 28 Jun 2012 11:08:49 +0000 (11:08 +0000)]
* gnat.dg/deep_old.adb, gnat.dg/old_errors.adb: Removed, obsolete.
From-SVN: r189042
Andreas Schwab [Thu, 28 Jun 2012 09:01:38 +0000 (09:01 +0000)]
* libgomp.texi: Include gpl_v3.texi instead of gpl.texi.
From-SVN: r189041
Olivier Hainque [Thu, 28 Jun 2012 07:56:40 +0000 (07:56 +0000)]
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
Benjamin Kosnik [Thu, 28 Jun 2012 07:50:34 +0000 (07:50 +0000)]
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
Alexandre Oliva [Thu, 28 Jun 2012 07:41:02 +0000 (07:41 +0000)]
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
Alexandre Oliva [Thu, 28 Jun 2012 07:39:51 +0000 (07:39 +0000)]
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
Alexandre Oliva [Thu, 28 Jun 2012 07:39:25 +0000 (07:39 +0000)]
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
GCC Administrator [Thu, 28 Jun 2012 00:19:19 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r189033
Richard Henderson [Wed, 27 Jun 2012 21:30:57 +0000 (14:30 -0700)]
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
Richard Henderson [Wed, 27 Jun 2012 21:30:51 +0000 (14:30 -0700)]
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
Richard Henderson [Wed, 27 Jun 2012 21:30:41 +0000 (14:30 -0700)]
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
Jason Merrill [Wed, 27 Jun 2012 19:19:18 +0000 (15:19 -0400)]
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
Jason Merrill [Wed, 27 Jun 2012 19:19:09 +0000 (15:19 -0400)]
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
Jason Merrill [Wed, 27 Jun 2012 19:19:01 +0000 (15:19 -0400)]
comment
From-SVN: r189023
Janus Weil [Wed, 27 Jun 2012 17:38:00 +0000 (19:38 +0200)]
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
Jakub Jelinek [Wed, 27 Jun 2012 14:45:55 +0000 (16:45 +0200)]
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
Ramana Radhakrishnan [Wed, 27 Jun 2012 14:19:17 +0000 (14:19 +0000)]
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
Kai Tietz [Wed, 27 Jun 2012 14:03:08 +0000 (16:03 +0200)]
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
Nick Clifton [Wed, 27 Jun 2012 13:03:47 +0000 (13:03 +0000)]
rx.md (comparesi3_extend): Remove = modifier from input operand.
* config/rx/rx.md (comparesi3_extend): Remove = modifier from
input operand.
From-SVN: r189014
Richard Guenther [Wed, 27 Jun 2012 11:32:30 +0000 (11:32 +0000)]
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
Richard Guenther [Wed, 27 Jun 2012 11:29:04 +0000 (11:29 +0000)]
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
Nick Clifton [Wed, 27 Jun 2012 07:22:52 +0000 (07:22 +0000)]
* config/rx/rx.md (simple_return): Use the simple_return rtx.
From-SVN: r189010
Richard Henderson [Wed, 27 Jun 2012 03:20:08 +0000 (20:20 -0700)]
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
Richard Henderson [Wed, 27 Jun 2012 03:19:59 +0000 (20:19 -0700)]
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
Richard Henderson [Wed, 27 Jun 2012 03:19:51 +0000 (20:19 -0700)]
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
GCC Administrator [Wed, 27 Jun 2012 00:18:00 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r189003
Steven Bosscher [Tue, 26 Jun 2012 21:47:18 +0000 (21:47 +0000)]
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
Alexandre Oliva [Tue, 26 Jun 2012 20:33:32 +0000 (20:33 +0000)]
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
Janis Johnson [Tue, 26 Jun 2012 20:17:00 +0000 (20:17 +0000)]
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
Arnaud Charlet [Tue, 26 Jun 2012 20:11:28 +0000 (22:11 +0200)]
[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
Sterling Augustine [Tue, 26 Jun 2012 18:26:08 +0000 (18:26 +0000)]
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
Sterling Augustine [Tue, 26 Jun 2012 18:25:15 +0000 (18:25 +0000)]
Obvious ChangeLog formatting fix.
From-SVN: r188993
Sterling Augustine [Tue, 26 Jun 2012 17:54:02 +0000 (17:54 +0000)]
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
Steven Bosscher [Tue, 26 Jun 2012 17:26:19 +0000 (17:26 +0000)]
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
Bill Schmidt [Tue, 26 Jun 2012 16:27:50 +0000 (16:27 +0000)]
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
Matt Turner [Tue, 26 Jun 2012 14:59:45 +0000 (14:59 +0000)]
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
Richard Guenther [Tue, 26 Jun 2012 13:55:34 +0000 (13:55 +0000)]
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
Richard Guenther [Tue, 26 Jun 2012 13:08:50 +0000 (13:08 +0000)]
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
Steven Bosscher [Tue, 26 Jun 2012 11:27:41 +0000 (11:27 +0000)]
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
Steven Bosscher [Tue, 26 Jun 2012 10:47:01 +0000 (10:47 +0000)]
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
Jan Hubicka [Tue, 26 Jun 2012 10:15:18 +0000 (12:15 +0200)]
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
Dehao Chen [Tue, 26 Jun 2012 10:13:11 +0000 (10:13 +0000)]
tree-inline.c: (expand_call_inline): Ensure that lexical block's source location is consistant...
2012-06-26 Dehao Chen <dehao@google.com>
* tree-inline.c: (expand_call_inline): Ensure that lexical block's
source location is consistant with the call stmt.
From-SVN: r188981
Ulrich Weigand [Tue, 26 Jun 2012 09:05:48 +0000 (09:05 +0000)]
re PR regression/53729 (PR53636 fix caused bb-slp-16.c to FAIL on sparc64 and powerpc64)
PR tree-optimization/53729
PR tree-optimization/53636
* tree-vect-slp.c (vect_slp_analyze_bb_1): Delay call to
vect_verify_datarefs_alignment until after statements have
been marked as relevant/irrelevant.
* tree-vect-data-refs.c (vect_verify_datarefs_alignment):
Skip irrelevant statements.
(vect_enhance_data_refs_alignment): Use STMT_VINFO_RELEVANT_P
instead of STMT_VINFO_RELEVANT.
(vect_get_data_access_cost): Do not check for supportable
alignment before calling vect_get_load_cost/vect_get_store_cost.
* tree-vect-stmts.c (vect_get_store_cost): Do not abort when
handling unsupported alignment.
(vect_get_load_cost): Likewise.
From-SVN: r188979
Steven Bosscher [Tue, 26 Jun 2012 08:46:08 +0000 (08:46 +0000)]
rl78.h: Do not undefine DONT_USE_BUILTIN_SETJMP.
* config/rl78/rl78.h: Do not undefine DONT_USE_BUILTIN_SETJMP.
Do not define JMP_BUF_SIZE.
From-SVN: r188978
Jakub Jelinek [Tue, 26 Jun 2012 08:02:20 +0000 (10:02 +0200)]
re PR tree-optimization/53748 (ice in fold_convert_loc)
PR tree-optimization/53748
* tree-ssa-phiopt.c (conditional_replacement): Only optimize
if arg0/arg1 have integral or pointer types.
* gcc.c-torture/compile/pr53748.c: New test.
From-SVN: r188975
Jason Merrill [Tue, 26 Jun 2012 03:42:34 +0000 (23:42 -0400)]
re PR c++/53498 (Compiler crashes during C++11 template magic compilation)
PR c++/53498
PR c++/53305
* pt.c (tsubst_decl) [PARM_DECL]: Don't recurse into DECL_CHAIN
if cp_unevaluated_operand is set.
(tsubst_copy) [PARM_DECL]: Don't copy before tsubsting.
From-SVN: r188973
Janis Johnson [Tue, 26 Jun 2012 03:10:43 +0000 (03:10 +0000)]
target-supports-dg.exp (testname-for-summary): New.
* lib/target-supports-dg.exp (testname-for-summary): New.
* lib/profopt.exp (profopt_execute): Define testname_with_flags.
* lib/gcc-dg.exp (cleanup-coverage-files, cleanup-repo-notes,
cleanup-stack-usage, cleanup-dump, cleanup-saved-temps, scan-module,
scan-module-absence, output-exists, output-exists-not: Use
testname-for-summary.
(dg-test): Clean up testname_with_flags.
* lib/scanasm.exp (scan-assembler, scan-assembler-not, scan-hidden,
scan-not-hidden, scan-file, scan-file-not, scan-stack-usage,
scan-stack-usage-not, scan-assembler-times, scan-assembler-dem,
scan-assembler-dem-not, object-size: Use testname-for-summary.
* lib/gcov.exp (run-gcov): Likewise.
* lib/scandump.exp (scan-dump, scan-dump-times, scan-dump-not,
scan-dump-dem, scan-dump-dem-note): Likewise.
From-SVN: r188972
GCC Administrator [Tue, 26 Jun 2012 00:17:54 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r188971
Edward Smith-Rowland [Tue, 26 Jun 2012 00:14:00 +0000 (00:14 +0000)]
Add C++11 isms to tr2/dynamic_bitset and tr2/bool_set.
From-SVN: r188967
Sterling Augustine [Mon, 25 Jun 2012 22:56:04 +0000 (22:56 +0000)]
Obvious ChangeLog fix.
From-SVN: r188966
Benjamin Kosnik [Mon, 25 Jun 2012 22:20:15 +0000 (22:20 +0000)]
user.cfg.in: Change COMPACT_LATEX to NO.
2012-06-25 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Change COMPACT_LATEX to NO.
From-SVN: r188965
Janis Johnson [Mon, 25 Jun 2012 22:01:34 +0000 (22:01 +0000)]
profopt.exp: Make prof_option_list local to profopt-execute.
* lib/profopt.exp: Make prof_option_list local to profopt-execute.
* g++.dg/tree-prof/tree-prof.exp (PROFOPT_OPTIONS): Define after
including profopt.opt; save and restore existing value.
* g++.dg/bprob/bprob.exp: Likewise.
* gcc.dg/matrix/matrix.exp: Likewise.
* gcc.dg/tree-prof/tree-prof.exp: Likewise.
* gcc.misc-tests/bprob.exp: Likewise; also replace formerly-ignored
PROFOPT_OPTIONS.
From-SVN: r188964
Sterling Augustine [Mon, 25 Jun 2012 20:59:42 +0000 (20:59 +0000)]
Obvious fix to Changelog entry.
From-SVN: r188961
Richard Henderson [Mon, 25 Jun 2012 20:42:11 +0000 (13:42 -0700)]
i386: Delete sse sdot_prod; add sdot_prodv4si for xop
Now that we support mult_even/odd hooks, the vectorizer can
generate the exact same code for plain sse dot_prod by itself,
as well as other reductions other than plus.
From-SVN: r188960
Richard Henderson [Mon, 25 Jun 2012 20:42:00 +0000 (13:42 -0700)]
i386: Add widen_multiply_even/odd builtins and hooks
From-SVN: r188959
Richard Henderson [Mon, 25 Jun 2012 20:41:51 +0000 (13:41 -0700)]
i386: Use vpmacsdd for mulv4si3
From-SVN: r188958
Richard Henderson [Mon, 25 Jun 2012 20:41:42 +0000 (13:41 -0700)]
i386: Cleanup and unify widening multiply patterns
Prepares for exposing builtin_mul_widen_even/odd hooks
for more efficient reduction. Adds QImode multiplication.
Shares code between mulv4si3 and the widening multiplies.
From-SVN: r188957
Richard Henderson [Mon, 25 Jun 2012 20:41:27 +0000 (13:41 -0700)]
Testcase for pr53749
From-SVN: r188956
Jason Merrill [Mon, 25 Jun 2012 20:39:47 +0000 (16:39 -0400)]
re PR c++/52988 (std::async not executed on function returning nullptr_t)
PR c++/52988
* typeck.c (decay_conversion): Don't discard side-effects from
expressions of nullptr_t.
From-SVN: r188955
Christophe Lyon [Mon, 25 Jun 2012 20:11:35 +0000 (22:11 +0200)]
Commit for Christophe Lyon.
2012-06-25 Christophe Lyon <christophe.lyon@st.com>
* config/arm/neon.md (UNSPEC_VLD1_DUP): Remove.
(neon_vld1_dup): Restrict to VQ operands.
(neon_vld1_dupv2di): New, fixes vld1q_dup_s64.
2012-06-25 Christophe Lyon <christophe.lyon@st.com>
* gcc.target/arm/neon-vld1_dupQ.c: New.
From-SVN: r188951
Florian Weimer [Mon, 25 Jun 2012 17:03:10 +0000 (19:03 +0200)]
C++: Reject variably modified types in operator new
From-SVN: r188948
Matthew Gretton-Dann [Mon, 25 Jun 2012 16:30:53 +0000 (16:30 +0000)]
arm.h (TARGET_CPU_CPP_BUILTINS): Add new built-ins.
2012-05-25 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
James Greenhalgh <james.greenhalgh@arm.com>
* gcc/config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Add new built-ins.
(TARGET_FMA): New macro.
(TARGET_ARM_QBIT, TARGET_ARM_SAT): Likewise.
(TARGET_ARM_ARCH): Likewise.
(TARGET_ARM_ARCH_ISA_THUMB): Likewise.
(TARGET_V6M, TARGET_V7M): Likewise.
(TARGET_ARM_ARCH_PROFILE): Likewise.
(TARGET_ARM_FEATURE_LDREX): Likewise.
(TARGET_ARM_FP, TARGET_NEON_FP): Likewise.
(ARM_MIN_ENUM_SIZE): Likewise.
* gcc/config/arm/arm.c (arm_file_start): Refactor appropriately.
(base_architecture): New enumeration.
(arm_base_arch): New global variable.
(processors): Add field base_arch.
(ARM_ARCH, ARM_CORE): Adjust accordingly.
(arm_option_override): Add initialization of arm_base_arch.
* gcc/doc/cpp.texi (system-specific predefined macros.): Change.
* gcc/testsuite/gcc.target/arm/ftest-support-arm.h New testcase.
* gcc/testsuite/gcc.target/arm/ftest-support-thumb.h Likewise.
* gcc/testsuite/gcc.target/arm/ftest-support.h Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv4-arm.c: Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv4t-arm.c: Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv4t-thumb.c: Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv5t-arm.c Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv5t-thumb.c Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv5te-arm.c: Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv5te-thumb.c: Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv6-arm.c Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv6-thumb.c Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv6k-arm.c Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv6k-thumb.c Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv6m-thumb.c: Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv6t2-arm.c: Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv6t2-thumb.c: Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv6z-arm.c: Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv6z-thumb.c: Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv7a-arm.c Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv7a-thumb.c Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv7m-thumb.c: Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv7em-thumb.c: Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv7r-arm.c Likewise.
* gcc/testsuite/gcc.target/arm/ftest-armv7r-thumb.c Likewise.
* gcc/testsuite/lib/target-supports.exp
(check_effective_target_arm_arch_FUNC): Add support for more
architectures.
(add_options_for_arm_arch_FUNC): Likewise.
(check_effective_target_arm_arch_FUNC_multilib): New functions.
Co-Authored-By: James Greenhalgh <james.greenhalgh@arm.com>
From-SVN: r188946
Ian Lance Taylor [Mon, 25 Jun 2012 16:26:27 +0000 (16:26 +0000)]
gotest: Only look in data segment for ppc64, not ppc*.
From Andreas Schwab.
From-SVN: r188944
Ian Lance Taylor [Mon, 25 Jun 2012 16:20:03 +0000 (16:20 +0000)]
libgo: Update to Go 1.0.2 release.
From-SVN: r188943
Jason Merrill [Mon, 25 Jun 2012 15:17:59 +0000 (11:17 -0400)]
re PR c++/53202 (Copy constructor not called when starting a thread)
PR c++/53202
* semantics.c (build_data_member_initialization): Always keep
initializer for empty base.
(cxx_eval_bare_aggregate): Discard it here.
From-SVN: r188940
Jason Merrill [Mon, 25 Jun 2012 15:17:48 +0000 (11:17 -0400)]
re PR c++/53565 (FAIL: libgomp.c++/for-7.C)
PR c++/53565
* pt.c (tsubst_omp_for_iterator): Simplify DECL_EXPR handling.
(tsubst_expr) [OMP_FOR]: Here, too.
From-SVN: r188939
Jakub Jelinek [Mon, 25 Jun 2012 14:52:59 +0000 (16:52 +0200)]
re PR target/53759 (gcc -mavx emits vshufps for __builtin_ia32_loadlps)
PR target/53759
* config/i386/sse.md (sse_loadlps): Use x m x constraints instead
of x x x in the vmovlps load alternative.
* gcc.target/i386/pr53759.c: New test.
From-SVN: r188937
Richard Sandiford [Mon, 25 Jun 2012 14:20:19 +0000 (14:20 +0000)]
re PR debug/53740 (--enable-checking=yes,rtl bootstrap failure with ada)
PR debug/53740
* df.h, df-problems.c, dce.c: Revert last patch.
From-SVN: r188935
Richard Sandiford [Mon, 25 Jun 2012 13:25:39 +0000 (13:25 +0000)]
re PR debug/53740 (--enable-checking=yes,rtl bootstrap failure with ada)
gcc/
PR debug/53740
* df.h (dead_debug_add): Remove third argument.
* df-problems.c (dead_debug_add): Likewise. Use the REGNO of the
REG that we want to replace instead.
(dead_debug_insert_temp): Use the REGNO of the reg that we want
to replace instead of DF_REF_REGNO. Require there to always be
at least one such use. Check for cases where the same location
has more than df_ref associated with it.
(df_note_bb_compute): Remove third dead_debug_add argument.
* dce.c (word_dce_process_block): Likewise.
From-SVN: r188934
Steven Bosscher [Mon, 25 Jun 2012 13:09:42 +0000 (13:09 +0000)]
v850.c: Remove redundant extern declarations for last_assemble_variable_decl and...
* config/v850/v850.c: Remove redundant extern declarations for
last_assemble_variable_decl and size_directive_output.
* doc/tm.texi.in: Document JMP_BUF_SIZE.
* doc/tm.texi: Regenerate.
* config/sparc/sparc.h (JMP_BUF_SIZE): Do not define.
* config/pa/pa.h (JMP_BUF_SIZE): Likewise.
* config/stormy16/stormy16.h: Likewise.
* config/picochip/picochip.c: Do not define DONT_USE_BUILTIN_SETJMP.
* doc/sourcebuild.texi: Add missing subdirectories.
From-SVN: r188933
Tristan Gingold [Mon, 25 Jun 2012 08:30:30 +0000 (08:30 +0000)]
i386.h: Fix typo.
2012-06-25 Tristan Gingold <gingold@adacore.com>
* config/i386/i386.h: Fix typo.
From-SVN: r188931
Tristan Gingold [Mon, 25 Jun 2012 08:25:43 +0000 (08:25 +0000)]
winnt.c (i386_pe_seh_end_prologue): Move code to ...
2012-06-25 Tristan Gingold <gingold@adacore.com>
* config/i386/winnt.c (i386_pe_seh_end_prologue): Move code to ...
(seh_cfa_adjust_cfa): ... that function.
(seh_emit_stackalloc): Do not emit out of range values.
* config/i386/i386.md: Delete unused UNSPEC_REG_SAVE,
UNSPEC_DEF_CFA constants.
* config/i386/i386.h (SEH_MAX_FRAME_SIZE): Define.
* config/i386/i386.c (ix86_frame_pointer_required): Required
for very large frames on SEH target.
(ix86_compute_frame_layout): Save area is before frame pointer
on SEH target. Handle very large frames.
(ix86_expand_prologue): Likewise.
From-SVN: r188928
Iain Sandoe [Mon, 25 Jun 2012 07:52:21 +0000 (07:52 +0000)]
MAINTAINERS (Write After Approval): Update my email address.
* MAINTAINERS (Write After Approval): Update my email address.
From-SVN: r188927
Jakub Jelinek [Mon, 25 Jun 2012 06:48:04 +0000 (08:48 +0200)]
re PR c++/53594 ([C++11] Spurious -Wuninitialized warning for member with NSDMI)
PR c++/53594
* class.c (check_bases_and_members): Avoid -Wuninitialized
diagnostics for non-static const members or references if they
use NSDMI.
* g++.dg/cpp0x/nsdmi7.C: New test.
From-SVN: r188925
Benjamin Kosnik [Mon, 25 Jun 2012 06:01:13 +0000 (06:01 +0000)]
02_match: To...
2012-06-24 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/28_regex/algorithms/02_match: To...
* testsuite/28_regex/algorithms/match: ...this.
* testsuite/28_regex/headers/04_header/regex/std_c++0x_neg.cc: Remove
duplicate.
From-SVN: r188923
GCC Administrator [Mon, 25 Jun 2012 00:18:06 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r188922
Steven Bosscher [Sun, 24 Jun 2012 17:58:46 +0000 (17:58 +0000)]
output.h: (current_function_is_leaf...
* output.h: (current_function_is_leaf,
current_function_sp_is_unchanging,
current_function_uses_only_leaf_regs): Remove.
* function.c (current_function_is_leaf,
current_function_sp_is_unchanging,
current_function_uses_only_leaf_regs): Remove.
(rest_of_handle_check_leaf_regs): Set crtl->uses_only_leaf_regs
instead of current_function_uses_only_leaf_regs.
* function.h (struct rtl_data): New fields sp_is_unchanging,
is_leaf, uses_only_leaf_regs.
* resource.c (init_resource_info): Replace current_function_is_leaf,
current_function_sp_is_unchanging, and
current_function_uses_only_leaf_regs with new crtl fields.
* sdbout.c (sdbout_symbol): Likewise.
* df-core.c (rest_of_handle_df_initialize): Likewise.
* ira.c (ira): Likewise.
* final.c (final_start_function): Likewise.
* reorg.c (fill_simple_delay_slots): Likewise.
* regrename.c (check_new_reg_p): Likewise.
* stack-ptr-mod.c (notice_stack_pointer_modification_1): Likewise.
(notice_stack_pointer_modification): Likewise.
* dbxout.c (dbxout_symbol): Likewise.
(dbxout_parms): Likewise.
* sel-sched.c (init_regs_for_mode): Likewise.
* dwarf2out.c (dbx_reg_number): Likewise.
(multiple_reg_loc_descriptor): Likewise.
* config/i386/i386.c (ix86_frame_pointer_required): Likewise.
(gen_pop): Likewise.
(ix86_select_alt_pic_regnum): Likewise.
(ix86_compute_frame_layout): Likewise.
(ix86_finalize_stack_realign_flags): Likewise.
(ix86_expand_epilogue): Likewise.
* config/rs6000/rs6000.c (rs6000_stack_info): Likewise.
* config/h8300/h8300.c (byte_reg): Likewise.
* config/c6x/c6x.c (must_reload_pic_reg_p): Likewise.
(c6x_save_reg): Likewise.
(c6x_compute_frame_layout): Likewise.
* config/pa/pa.c (pa_compute_frame_size): Likewise.
(pa_output_function_prologue): Likewise.
* config/stormy16/stormy16.c (struct xstormy16_stack_layout): Likewise.
* config/sparc/sparc.md (attr "leaf_function"): Likewise.
* config/sparc/sparc.c (sparc_initial_elimination_offset): Likewise.
(sparc_expand_prologue): Likewise.
(sparc_flat_expand_prologue): Likewise.
(sparc_asm_function_prologue): Likewise.
(sparc_output_mi_thunk): Likewise.
(sparc_frame_pointer_required): Likewise.
* config/epiphany/epiphany.c (epiphany_compute_function_type): Likewise.
(epiphany_compute_frame_size): Likewise.
* config/lm32/lm32.c (lm32_compute_frame_size): Likewise.
* config/cris/cris.c (cris_md_asm_clobbers): Likewise.
(cris_frame_pointer_required): Likewise.
* config/tilepro/tilepro.c (emit_sp_adjust): Likewise.
(tilepro_current_function_is_leaf): Likewise.
* config/arm/arm.c (arm_compute_save_reg0_reg12_mask): Likewise.
* config/pdp11/pdp11.c (pdp11_expand_epilogue): Likewise.
* config/ia64/ia64.c (find_gr_spill): Likewise.
(ia64_compute_frame_size): Likewise.
(ia64_can_eliminate): Likewise.
(ia64_initial_elimination_offset): Likewise.
* config/m68k/m68k.c (m68k_save_reg): Likewise.
(m68k_expand_epilogue): Likewise.
* config/rx/rx.c (rx_get_stack_layout): Likewise.
* config/tilegx/tilegx.c (tilegx_current_function_is_leaf): Likewise.
* config/picochip/picochip.c (picochip_can_eliminate_link_sp_save):
Likewise.
(picochip_output_frame_debug): Likewise.
* config/sh/sh.c (sh_media_register_for_return): Likewise.
(sh_allocate_initial_value): Likewise.
(sh_output_mi_thunk): Likewise.
* config/microblaze/microblaze.c (microblaze_must_save_register): Likewise.
(compute_frame_size): Likewise.
(microblaze_initial_elimination_offset): Likewise.
(microblaze_expand_prologue): Likewise.
(microblaze_expand_epilogue): Likewise.
* config/frv/frv.c (frv_expand_epilogue): Likewise.
(frv_frame_pointer_required): Likewise.
* config/spu/spu.c (get_pic_reg): Likewise.
(direct_return): Likewise.
(spu_expand_prologue): Likewise.
(spu_expand_epilogue): Likewise.
(spu_initial_elimination_offset): Likewise.
* config/mips/mips.c (mips_global_pointer): Likewise.
(mips_cfun_might_clobber_call_saved_reg_p): Likewise.
(mips_compute_frame_info): Likewise.
* config/mep/mep.c (mep_interrupt_saved_reg): Likewise.
(mep_reload_pointer): Likewise.
* config/rl78/rl78.c (need_to_save): Likewise.
* config/cr16/cr16.c (cr16_compute_save_regs): Likewise.
* config/score/score.c (score_compute_frame_size): Likewise.
(score_function_prologue): Likewise.
* config/bfin/bfin.c (must_save_p): Likewise.
(expand_prologue_reg_save): Likewise.
(expand_epilogue_reg_restore): Likewise.
(bfin_frame_pointer_required): Likewise.
(n_regs_saved_by_prologue): Likewise.
(add_to_reg): Likewise.
(expand_interrupt_handler_prologue): Likewise.
(expand_interrupt_handler_epilogue): Likewise.
(bfin_expand_prologue): Likewise.
* config/avr/avr.c (avr_regs_to_save): Likewise.
(avr_prologue_setup_frame): Likewise.
(expand_epilogue): Likewise.
* config/s390/s390.c (s390_regs_ever_clobbered): Likewise.
(s390_register_info): Likewise.
(s390_frame_info): Likewise.
(s390_init_frame_layout): Likewise.
(s390_emit_prologue): Likewise.
From-SVN: r188918
Steven Bosscher [Sun, 24 Jun 2012 13:22:29 +0000 (13:22 +0000)]
system.h: Poison ASM_BYTE_OP and ASM_OUTPUT_BYTE.
* system.h: Poison ASM_BYTE_OP and ASM_OUTPUT_BYTE.
* vmsdbgout: Do not undefine it if defined.
Rename local ASM_BYTE_OP definition to VMS_ASM_BYTE_OP.
* config/microblaze/microblaze/h: Do no define ASM_BYTE_OP.
* config/mep/mep.h: Do not define ASM_OUTPUT_BYTE.
From-SVN: r188917