Richard Guenther [Wed, 4 Jul 2012 13:47:18 +0000 (13:47 +0000)]
re PR middle-end/53433 (ICE in int_mode_for_mode, at stor-layout.c:424 during lto-bootstrap)
2012-07-04 Richard Guenther <rguenther@suse.de>
PR middle-end/53433
* gimple-fold.c (get_base_constructor): Do not return an
error_mark_node DECL_INITIAL.
From-SVN: r189260
Tristan Gingold [Wed, 4 Jul 2012 12:26:55 +0000 (12:26 +0000)]
isl.m4 (ISL_CHECK_VERSION): Set to yes if cross-compiling.
config/
2012-07-04 Tristan Gingold <gingold@adacore.com>
* isl.m4 (ISL_CHECK_VERSION): Set to yes if cross-compiling.
Fix comments.
2012-07-04 Tristan Gingold <gingold@adacore.com>
* configure: Regenerate.
From-SVN: r189257
Richard Guenther [Wed, 4 Jul 2012 12:10:40 +0000 (12:10 +0000)]
re PR middle-end/53844 (GCC generates suboptimal code for unused members of classes in some cases on multiple targets.)
2012-07-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/53844
* tree-ssa-dse.c (dse_possible_dead_store_p): Properly handle
the loop virtual PHI.
* g++.dg/tree-ssa/pr53844.C: New testcase.
From-SVN: r189256
Richard Guenther [Wed, 4 Jul 2012 12:09:09 +0000 (12:09 +0000)]
re PR middle-end/53849 (ICE: in add_referenced_var_1, at tree-dfa.c:567 with -O2 -ftree-parallelize-loops=2 -fno-tree-loop-im)
2012-07-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/53849
* tree-cfg.c (move_stmt_op): Only call add_referenced_var
for duplicated locals. Use add_referenced_var_1 to avoid
pushing/popping cfun.
* gcc.dg/pr53849.c: New testcase.
From-SVN: r189255
Kai Tietz [Wed, 4 Jul 2012 11:22:02 +0000 (13:22 +0200)]
winnt.c (i386_pe_reloc_rw_mask): New function.
* config/i386/winnt.c (i386_pe_reloc_rw_mask): New function.
* config/i386/i386-protos.h (i386_pe_reloc_rw_mask): Add
prototype.
* config/i386/cygming.h (TARGET_ASM_RELOC_RW_MASK): Define
as i386_pe_reloc_rw_mask.
From-SVN: r189254
Richard Guenther [Wed, 4 Jul 2012 10:36:07 +0000 (10:36 +0000)]
tree.c (find_decls_types_r): Handle TYPE_CONTEXT the same as in free_lang_data_in_type.
2012-07-04 Richard Guenther <rguenther@suse.de>
* tree.c (find_decls_types_r): Handle TYPE_CONTEXT the same
as in free_lang_data_in_type.
From-SVN: r189252
Tobias Grosser [Wed, 4 Jul 2012 09:15:09 +0000 (09:15 +0000)]
Makefile.in (OBJS): Add graphite-optimize-isl.o.
2012-07-04 Tobias Grosser <tobias@grosser.es>
Michael Matz <matz@suse.de>
* Makefile.in (OBJS): Add graphite-optimize-isl.o.
(graphite-optimize-isl.o): Add dependencies.
* common.opt (floop-nest-optimize): New flag.
* doc/invoke.texi (floop-nest-optimize): Document.
* graphite-dependences.c (compute_deps): Export.
* graphite-poly.h (compute_deps): Declare.
* graphite-optimize-isl.c: New file.
* graphite-poly.c (apply_poly_transforms): Run the loop
nest optimizer.
* tree-ssa-loop.c (gate_graphite_transforms): Enable graphite
if -floop-nest-optimize is enabled.
Co-Authored-By: Michael Matz <matz@suse.de>
From-SVN: r189249
Matthias Klose [Wed, 4 Jul 2012 07:50:30 +0000 (07:50 +0000)]
04_header: Remove empty directory.
2012-07-04 Matthias Klose <doko@ubuntu.com>
* testsuite/28_regex/headers/04_header: Remove empty directory.
* testsuite/28_regex/algorithms/02_match: Likewise.
From-SVN: r189248
GCC Administrator [Wed, 4 Jul 2012 00:18:24 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r189245
Oleg Endo [Tue, 3 Jul 2012 22:26:23 +0000 (22:26 +0000)]
predicates.md (logical_and_operand): New predicate.
* config/sh/predicates.md (logical_and_operand): New predicate.
* config/sh/constraints.md (Jmb, Jmw): New constraints.
* config/sh/sh.md (andsi3): Move expander above insns. Add handling
of 0xFFFF constant. Use logical_and_operand predicate and
satisfies_constraint_Jmb, satisfies_constraint_Jmw.
(*andsi3_compact): Make it an insn_and_split. Use
logical_and_operand predicate. Add Jmb,Jmw alternatives.
From-SVN: r189241
Paolo Carlini [Tue, 3 Jul 2012 19:24:07 +0000 (19:24 +0000)]
re PR libstdc++/53840 ([C++11] DR 921. Rational Arithmetic should use template aliases)
2012-07-03 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/53840
* include/std/ratio (ratio_multiply, ratio_divide, ratio_add,
ratio_subtract): Use template aliases.
* include/std/chrono (duration<>::duration(const duration<>&),
duration_cast): Adjust.
* testsuite/20_util/ratio/operations/53840.cc: New.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
* testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
From-SVN: r189239
Jason Merrill [Tue, 3 Jul 2012 18:10:39 +0000 (14:10 -0400)]
re PR c++/53826 ([alpha]: ICE in fold_convert_loc, at fold-const.c:2008)
PR c++/53826
* tree.c (build_zero_cst): Handle NULLPTR_TYPE.
From-SVN: r189238
Nick Clifton [Tue, 3 Jul 2012 15:49:25 +0000 (15:49 +0000)]
mep.c (mep_reorg_regmove): Use next_nonnote_non_debug_insn to advance to the next insn.
* config/mep/mep.c (mep_reorg_regmove): Use
next_nonnote_non_debug_insn to advance to the next insn. Do not
expect delete_insn to return an rtx.
From-SVN: r189234
Richard Guenther [Tue, 3 Jul 2012 13:38:37 +0000 (13:38 +0000)]
install.texi (CLooG): Clarify how CLooG needs to be configured and that it needs to be built against...
2012-07-03 Richard Guenther <rguenther@suse.de>
* doc/install.texi (CLooG): Clarify how CLooG needs to be
configured and that it needs to be built against ISL 0.10.
From-SVN: r189228
Jakub Jelinek [Tue, 3 Jul 2012 13:09:16 +0000 (15:09 +0200)]
re PR c++/53812 (lower_stmt (4.6), verify_gimple_stmt (4.7.0, 4.7.1))
PR c++/53812
* semantics.c (finish_goto_stmt): Surround computed goto argument
with CLEANUP_POINT_EXPR if needed.
* g++.dg/ext/label14.C: New test.
From-SVN: r189225
Uros Bizjak [Tue, 3 Jul 2012 12:02:33 +0000 (14:02 +0200)]
i386.c (ix86_option_override_internal): Fix wrong code model string in the error message.
* config/i386/i386.c (ix86_option_override_internal): Fix wrong
code model string in the error message.
From-SVN: r189219
Uros Bizjak [Tue, 3 Jul 2012 11:58:12 +0000 (13:58 +0200)]
re PR target/53811 (ICE: in insn_default_length, at config/i386/i386.md:529 (unrecognizable insn) with -mcmodel=large)
PR target/53811
* config/i386/i386.c (x86_output_mi_thunk): Check if fnaddr satisfies
sibcall_insn_operand. Move it to a temporary register if not.
testsuite/ChangLog:
PR target/53811
* g++.dg/other/pr53811.C: New test.
From-SVN: r189218
Richard Guenther [Tue, 3 Jul 2012 10:12:34 +0000 (10:12 +0000)]
Makfile.def (isl): Remove not necessary extra_exports and extra_make_flags.
2012-07-03 Richard Guenther <rguenther@suse.de>
* Makfile.def (isl): Remove not necessary extra_exports and
extra_make_flags.
(cloog): Use $$CPPFLAGS instead of ${CPPFLAGS}.
* Makefile.in: Regenerated.
From-SVN: r189212
Andreas Schwab [Tue, 3 Jul 2012 09:46:01 +0000 (09:46 +0000)]
re PR target/28896 (-fstack-limit-symbol and m68k and non 68020)
PR target/28896
* config/m68k/m68k.c (m68k_option_override): Reset stack_limit_rtx
if !TARGET_68020.
testsuite/
* gcc.target/m68k/stack-limit-1.c: New testcase.
From-SVN: r189210
Richard Guenther [Tue, 3 Jul 2012 09:44:53 +0000 (09:44 +0000)]
cloog.m4: Remove debugging print.
2012-07-03 Richard Guenther <rguenther@suse.de>
config/
* cloog.m4: Remove debugging print.
* Makefile.def (cloog): Add V=1 to extra_make_flags.
* configure.ac: If either the ISL or the CLooG check failed
do not try to build in-tree versions.
* Makefile.in: Regenerated.
* configure: Regenerated.
From-SVN: r189209
Rainer Orth [Tue, 3 Jul 2012 09:26:58 +0000 (09:26 +0000)]
Fix ISL check with static libisl
toplevel:
* configure: Regenerate.
config:
* isl.m4 (ISL_CHECK_VERSION): Add -lisl to LIBS, not LDFLAGS.
From-SVN: r189207
Eric Botcazou [Tue, 3 Jul 2012 09:06:08 +0000 (09:06 +0000)]
trans.c (Call_to_gnu): Robustify test for function case if the CICO mechanism is used.
* gcc-interface/trans.c (Call_to_gnu): Robustify test for function case
if the CICO mechanism is used.
From-SVN: r189204
Eric Botcazou [Tue, 3 Jul 2012 08:49:54 +0000 (08:49 +0000)]
utils2.c (build_simple_component_ref): Do not look through an extension if the type contains a placeholder.
* gcc-interface/utils2.c (build_simple_component_ref): Do not look
through an extension if the type contains a placeholder.
From-SVN: r189202
Eric Botcazou [Tue, 3 Jul 2012 08:28:34 +0000 (08:28 +0000)]
exp_disp.adb (Expand_Dispatching_Call): Propagate the convention on the designated subprogram type and also set...
* exp_disp.adb (Expand_Dispatching_Call): Propagate the convention on
the designated subprogram type and also set Is_Dispatch_Table_Entity.
(Expand_Interface_Thunk): Propagate the convention on the thunk.
(Set_CPP_Constructors_Old): Set Is_Constructor and Convention_CPP on
the internal view of the constructors.
(Set_CPP_Constructors): Likewise.
* sem_prag.adb (Analyze_Pragma) <Pragma_CPP_Constructor>: Set the
convention on the function.
* gcc-interface/gigi.h (is_cplusplus_method): Declare.
* gcc-interface/decl.c (Has_Thiscall_Convention): New macro.
(gnat_to_gnu_entity) <E_Subprogram_Type>: Test it to set the `thiscall'
calling convention
(get_minimal_subprog_decl): Likewise.
(is_cplusplus_method): New predicate.
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Access>: Issue an
error on access to C++ constructor or member function.
From-SVN: r189199
Eric Botcazou [Tue, 3 Jul 2012 07:57:46 +0000 (07:57 +0000)]
utils.c (gnat_pushdecl): Set TYPE_CONTEXT for types attached to a TYPE_DECL.
* gcc-interface/utils.c (gnat_pushdecl): Set TYPE_CONTEXT for types
attached to a TYPE_DECL.
From-SVN: r189195
Uros Bizjak [Tue, 3 Jul 2012 07:24:10 +0000 (09:24 +0200)]
xmmintrin.h (_mm_sfence): Use __builtin_ia32_pause.
gcc/
2012-07-03 Uros Bizjak <ubizjak@gmail.com>
* config/i386/xmmintrin.h (_mm_sfence): Use __builtin_ia32_pause.
libgomp/
2012-07-03 Uros Bizjak <ubizjak@gmail.com>
* config/linux/x86/futex.h (cpu_relax): Use __builtin_ia32_pause.
* testsuite/libgomp.c/sort-1.c (busy_wait): Ditto.
libitm/
2012-07-03 Uros Bizjak <ubizjak@gmail.com>
* config/x86/target.h (cpu_relax): Use __builtin_ia32_pause.
From-SVN: r189194
Uros Bizjak [Tue, 3 Jul 2012 07:15:09 +0000 (09:15 +0200)]
configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): Also require that the assembler accept 'rep bsf ...'...
* configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): Also require that the
assembler accept 'rep bsf ...', 'rep bsr ...', 'rep ret' and 'rep nop'.
* configure: Regenerated.
* config/i386/i386.md (simple_return_internal_long): Use %;
(ctz<mode>2): Likewise.
(*pause): Likewise.
From-SVN: r189193
Oleg Endo [Tue, 3 Jul 2012 07:15:08 +0000 (07:15 +0000)]
packed1.C: Remove SH from xfail list.
* g++.dg/other/packed1.C: Remove SH from xfail list.
From-SVN: r189192
Jason Merrill [Tue, 3 Jul 2012 05:03:34 +0000 (01:03 -0400)]
re PR c++/53619 ([C++11] wrong capture of "this" in lambda in case of multiple inheritance)
PR c++/53619
* pt.c (in_template_function): New.
* cp-tree.h: Declare it.
* class.c (build_base_path, resolves_to_fixed_type_p): Use it.
From-SVN: r189191
Jason Merrill [Tue, 3 Jul 2012 05:03:21 +0000 (01:03 -0400)]
re PR c++/53783 (lambda in lambda in template function rejected)
PR c++/53783
* pt.c (tsubst_copy_and_build) [LAMBDA_EXPR]: Use tsubst
for LAMBDA_EXPR_EXTRA_SCOPE.
From-SVN: r189190
Jason Merrill [Tue, 3 Jul 2012 03:30:09 +0000 (23:30 -0400)]
re PR c++/53788 (C++11 decltype sfinae static member function check (4.7.1))
PR c++/53788
* pt.c (build_non_dependent_expr): Don't wrap a dummy object.
From-SVN: r189188
Jason Merrill [Tue, 3 Jul 2012 03:29:58 +0000 (23:29 -0400)]
re PR c++/53816 (internal compiler error: tree check: expected field_decl, have identifier_node in fixed_type_or_null, at cp/class.c:6419, with -std=c++11 option)
PR c++/53816
* class.c (resolves_to_fixed_type_p): Check uses_template_parms
(current_function_decl) instead of processing_template_decl.
From-SVN: r189187
Paolo Carlini [Tue, 3 Jul 2012 00:47:17 +0000 (00:47 +0000)]
revert: re PR libstdc++/49561 ([C++0x] std::list::size complexity)
2012-07-02 Paolo Carlini <paolo.carlini@oracle.com>
Revert:
2011-10-04 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/49561
* include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
Add in C++0x mode.
(_List_base<>::_List_impl, _List_base<>::_M_get_node,
_List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
list<>::size, list<>::swap, list<>::splice): Use it.
(operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
* include/bits/list.tcc (list<>::erase): Likewise.
(list<>::merge): Adjust in C++0x mode.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
From-SVN: r189185
GCC Administrator [Tue, 3 Jul 2012 00:17:42 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r189184
Oleg Endo [Mon, 2 Jul 2012 22:59:59 +0000 (22:59 +0000)]
re PR target/53568 (SH Target: Add support for bswap built-ins)
PR target/53568
* gcc.target/sh/pr53568-1.c: New.
From-SVN: r189181
Oleg Endo [Mon, 2 Jul 2012 19:23:56 +0000 (19:23 +0000)]
re PR target/51244 ([SH] Inefficient conditional branch and code around T bit)
PR target/51244
* config/sh/predicates.md (t_reg_operand, negt_reg_operand): New
predicates.
* config/sh/sh-protos.h (get_t_reg_rtx): New prototype.
* config/sh/sh.c (get_t_reg_rtx): New function. Use it when invoking
gen_branch_true and gen_branch_false.
* config/sh/sh.md: Use get_t_reg_rtx when invoking gen_branch_true and
gen_branch_false.
(branch_true, branch_false): Use t_reg_operand predicate.
(*branch_true, *branch_false): Delete.
(movt): Use t_reg_operand predicate.
(*negnegt): Use negt_reg_operand predicate and fold little and big
endian variants.
(*movtt): Use t_reg_operand and fold little and big endian variants.
(*movt_qi): Delete.
PR target/51244
* gcc.target/sh/pr51244-1.c: Check that movt insn is not generated.
From-SVN: r189177
Jason Merrill [Mon, 2 Jul 2012 19:14:34 +0000 (15:14 -0400)]
re PR c++/53821 ([c++11] multiple definitions of lambda)
PR c++/53821
* semantics.c (maybe_add_lambda_conv_op): Don't set
DECL_INTERFACE_KNOWN.
From-SVN: r189175
Jason Merrill [Mon, 2 Jul 2012 19:14:23 +0000 (15:14 -0400)]
re PR c++/53524 (Bogus enum comparison warning)
PR c++/53524
gcc/cp/
* call.c (build_conditional_expr_1): Don't warn about comparison of
two enumerators before their enumeration is complete.
(build_new_op_1): Call decay_conversion before warn_logical_operator.
* decl.c (build_enumerator): Set DECL_CONTEXT of an enumerator to
its enumeration.
* decl2.c (mark_used): Call used_types_insert for enums.
* semantics.c (finish_id_expression): Don't decay CONST_DECL.
(finish_member_declaration): Don't change DECL_CONTEXT of enumerators.
* class.c (check_field_decls): Don't change DECL_CONTEXT of enums.
* typeck.c (convert_for_assignment): Don't decay CONST_DECL.
(build_class_member_access_expr): Look through unscoped enums.
* search.c (context_for_name_lookup): Look through unscoped enums.
* pt.c (tsubst_copy_and_build): Don't decay CONST_DECL.
(tsubst_copy): Use DECL_CONTEXT to find the enumeration.
* tree.c (decl_linkage): Likewise.
* cvt.c (ocp_convert): Check decayed expr for enum range warning.
gcc/c-family/
* c-common.c (get_priority): Call default_conversion.
From-SVN: r189174
Steven Bosscher [Mon, 2 Jul 2012 18:50:51 +0000 (18:50 +0000)]
stmt.c (emit_case_bit_tests): Remove.
gcc/
* stmt.c (emit_case_bit_tests): Remove.
(expand_case): Remove expand_switch_using_bit_tests_p code.
* tree-switch-conversion.c (hoist_edge_and_branch_if_true): New.
(MAX_CASE_BIT_TESTS): Moved from stmt.c to here.
(lshift_cheap_p): Likewise.
(expand_switch_using_bit_tests_p): Likewise.
(struct case_bit_test): Likewise.
(case_bit_test_cmp): Likewise.
(emit_case_bit_tests): New implementation for GIMPLE.
(gen_inbound_check): Do not release post-dominator info here.
(process_switch): Reorder code. Expand as bit tests if it
looks like a win.
(do_switchconv): Release post-dominator info here if something
changed.
(struct gimple_opt_pass): Verify more.
* tree.h (expand_switch_using_bit_tests_p): Remove prototype.
testsuite/
* gcc.dg/tree-ssa/pr36881.c: Fix test case to not expand as bit tests.
From-SVN: r189173
Janis Johnson [Mon, 2 Jul 2012 16:32:02 +0000 (16:32 +0000)]
fix typo in previous commit
From-SVN: r189167
Janis Johnson [Mon, 2 Jul 2012 16:24:26 +0000 (16:24 +0000)]
MAINTAINERS (Various Mainterers): Add myself as testsuite maintainer.
* MAINTAINERS (Various Mainterers): Add myself as testsuite
maintainer.
From-SVN: r189166
Martin Jambor [Mon, 2 Jul 2012 15:28:11 +0000 (17:28 +0200)]
re PR middle-end/38474 (compile time explosion in dataflow_set_preserve_mem_locs at -O3)
2012-07-02 Martin Jambor <mjambor@suse.cz>
PR middle-end/38474
* ipa-prop.c (compute_known_type_jump_func): Put BINFO check before a
dynamic type change check.
From-SVN: r189163
Joseph Myers [Mon, 2 Jul 2012 14:28:56 +0000 (15:28 +0100)]
be.po, [...]: Update.
* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, id.po, ja.po,
nl.po, ru.po, sr.po, sv.po, tr.po, vi.po, zh_CN.po, zh_TW.po:
Update.
From-SVN: r189160
Richard Guenther [Mon, 2 Jul 2012 14:05:07 +0000 (14:05 +0000)]
isl.m4 (_ISL_CHECK_CT_PROG): Omit main function header/footer.
2012-07-02 Richard Guenther <rguenther@suse.de>
config/
* isl.m4 (_ISL_CHECK_CT_PROG): Omit main function header/footer.
Fix version test.
* configure: Regenerated.
From-SVN: r189159
Richard Biener [Mon, 2 Jul 2012 13:16:58 +0000 (13:16 +0000)]
isl.m4: New file.
2012-07-02 Richard Guenther <rguenther@suse.de>
Michael Matz <matz@suse.de>
Tobias Grosser <tobias@grosser.es>
Sebastian Pop <sebpop@gmail.com>
* isl.m4: New file.
From-SVN: r189157
Richard Guenther [Mon, 2 Jul 2012 11:43:46 +0000 (11:43 +0000)]
cloog.m4: Set up to work against ISL only.
2012-07-02 Richard Guenther <rguenther@suse.de>
Michael Matz <matz@suse.de>
Tobias Grosser <tobias@grosser.es>
Sebastian Pop <sebpop@gmail.com>
config/
* cloog.m4: Set up to work against ISL only.
* isl.m4: New file.
* Makefile.def: Add ISL host module, remove PPL host module.
Adjust ClooG host module to use the proper ISL.
* Makefile.tpl: Pass ISL include flags instead of PPL ones.
* configure.ac: Include config/isl.m4. Add ISL host library,
remove PPL. Remove PPL configury, add ISL configury, adjust
ClooG configury.
* Makefile.in: Regenerated.
* configure: Likewise.
gcc/
* Makefile.in: Remove PPL flags in favor of ISL ones.
(BACKENDLIBS): Remove PPL libs.
(INCLUDES): Remove PPL includes in favor of ISL ones.
(graphite-clast-to-gimple.o): Remove graphite-dependences.h and
graphite-cloog-compat.h dependencies.
(graphite-dependences.o): Likewise.
(graphite-poly.o): Likewise.
* configure.ac: Declare ISL vars instead of PPL ones.
* configure: Regenerated.
* doc/install.texi: Replace PPL requirement documentation
with ISL one.
* graphite-blocking.c: Remove PPL code, add ISL equivalent.
* graphite-clast-to-gimple.c: Likewise.
* graphite-dependences.c: Likewise.
* graphite-interchange.c: Likewise.
* graphite-poly.h: Likewise.
* graphite-poly.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* graphite.c: Likewise.
* graphite-scop-detection.c: Re-arrange includes.
* graphite-cloog-util.c: Remove.
* graphite-cloog-util.h: Likewise.
* graphite-ppl.h: Likewise.
* graphite-ppl.c: Likewise.
* graphite-dependences.h: Likewise.
libgomp/
* testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
* testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
* testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
* testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
Co-Authored-By: Michael Matz <matz@suse.de>
Co-Authored-By: Sebastian Pop <sebpop@gmail.com>
Co-Authored-By: Tobias Grosser <tobias@grosser.es>
From-SVN: r189156
Richard Guenther [Mon, 2 Jul 2012 11:33:21 +0000 (11:33 +0000)]
[multiple changes]
2012-07-02 Richard Guenther <rguenther@suse.de>
Merge from graphite branch
2011-07-21 Tobias Grosser <tobias@grosser.es>
* configure: Regenerated.
* config/cloog.m4: Remove support for CLooG-ppl and CLooG-parma,
both cloog.org and legacy versions. The only supported version will
be CLooG with the isl backend.
2011-07-21 Tobias Grosser <tobias@grosser.es>
* configure: Regenerated.
* configure.ac: Require cloog isl 0.17.0
2011-07-21 Tobias Grosser <tobias@grosser.es>
* configure: Regenerated.
* config/cloog.m4: Do not define CLOOG_ORG
gcc/
* Makefile.in (graphite-clast-to-gimple.o, graphite-cloog-util.o):
Remove graphite-cloog-util.h.
* graphite-clast-to-gimple.c (gcc_type_for_iv_of_clast_loop,
build_iv_mapping, translate_clast_user, translate_clast,
free_scattering, initialize_cloog_names, build_cloog_prog,
create_params_index): Do not use old compatibility functions.
(clast_name_to_index, set_cloog_options): Remove code for legacy cloog.
* graphite-cloog-util.c (openscop_print_cloog_matrix): Do not use old
compatibility functions.
(new_Cloog_Scattering_from_ppl_Polyhedron): Remove code for legacy
cloog.
* graphite-cloog-util.h: Remove include of graphite-cloog-util.h.
* graphite.c (graphite.c): Do not call outdated cloog_initialize() and
cloog_finalize().
* graphite-cloog-compat.h: Remove.
2011-08-09 Tobias Grosser <tobias@grosser.es>
gcc/
* graphite-clast-to-gimple.c (new_clast_name_index): Store a copy
of the string, no just a reference.
(clast_name_index): Add a new field, that specifies if we need to free
the name.
(free_clast_name_index): If necessary, free the name string.
(clast_name_index_elt_info): Calculate the hash based on the string
content, not the memory location it is stored in.
(clast_name_to_level): Specify that we do not need to free the name.
(clast_name_to_index): Dito.
(clast_name_to_lb_ub): Dito.
(eq_clast_name_indexes): Compare the strings, not their base pointers.
(free_scattering): Removed.
(initialize_cloog_names): Renamed to add_names_to_union_domain().
(add_names_to_union_domain): Changed to work on a union_domain,
instead of a CloogNames structure.
(build_cloog_prog): Removed.
(build_cloog_union_domain): New.
(generate_cloog_input): New.
(scop_to_clast): Use CloogInput instead of CloogProgram.
(print_generated_program): Adapt to new scop_to_clast() and do not
print the CloogProgram any more.
(create_params_index): Removed, functionality integrated in
add_names_to_union_domain().
(gloog): Adapt to new scop_to_clast().
* graphite-clast-to-gimple.h (scop_to_clast): Remove.
2012-01-11 Tobias Grosser <tobias@grosser.es>
* graphite-clast-to-gimple.c (clast_name_to_index,
clast_name_to_lb_ub, clast_name_to_gcc): Change types.
(clast_to_gcc_expression): Add clast_expr_name as a new
case. Do not assume a clast_expr_term points always to a
clast_expr_name.
(type_for_clast_term): Do not assume a clast_expr_term points always to
a clast_expr_name.
(type_for_clast_name): New.
(type_for_clast_expr): Add clast_expr_name as a new case.
2011-08-03 Sebastian Pop <sebpop@gmail.com>
* graphite-cloog-util.c (new_Cloog_Domain_from_ppl_Polyhedron,
new_Cloog_Scattering_from_ppl_Polyhedron,
new_Cloog_Domain_from_ppl_Pointset_Powerset): Remove ATTRIBUTE_UNUSED.
From-SVN: r189155
Richard Guenther [Mon, 2 Jul 2012 09:16:29 +0000 (09:16 +0000)]
crontab: Disable snapshots from gcc-4_5-branch.
2012-07-02 Richard Guenther <rguenther@suse.de>
* crontab: Disable snapshots from gcc-4_5-branch.
* update_version_svn: Ingore gcc-4_5-branch.
From-SVN: r189110
Jakub Jelinek [Mon, 2 Jul 2012 06:56:24 +0000 (08:56 +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 TYPE_MODE (type)
instead of TYPE_MODE (wider_type) as can_vec_perm_p argument.
From-SVN: r189108
GCC Administrator [Mon, 2 Jul 2012 00:18:35 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r189106
Wei Guozhi [Sun, 1 Jul 2012 15:14:52 +0000 (15:14 +0000)]
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
Uros Bizjak [Sun, 1 Jul 2012 08:22:19 +0000 (10:22 +0200)]
ChangeLog: Fix whitespace.
* ChangeLog: Fix whitespace.
* c-family/ChangeLog: Ditto.
* testsuite/ChangeLog: Ditto.
From-SVN: r189101
Uros Bizjak [Sun, 1 Jul 2012 08:13:00 +0000 (10:13 +0200)]
c-pch.c (c_common_write_pch): Remove unused variables.
* c-pch.c (c_common_write_pch): Remove unused variables.
From-SVN: r189100
GCC Administrator [Sun, 1 Jul 2012 00:17:50 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r189099
Nathan Sidwell [Sat, 30 Jun 2012 11:42:52 +0000 (11:42 +0000)]
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
Cary Coutant [Sat, 30 Jun 2012 00:46:44 +0000 (00:46 +0000)]
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
GCC Administrator [Sat, 30 Jun 2012 00:17:59 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r189093
Eric Botcazou [Fri, 29 Jun 2012 22:39:29 +0000 (22:39 +0000)]
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
H.J. Lu [Fri, 29 Jun 2012 22:21:30 +0000 (22:21 +0000)]
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
Sterling Augustine [Fri, 29 Jun 2012 22:08:06 +0000 (22:08 +0000)]
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
Jakub Jelinek [Fri, 29 Jun 2012 20:26:51 +0000 (22:26 +0200)]
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
Richard Henderson [Fri, 29 Jun 2012 16:18:15 +0000 (09:18 -0700)]
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
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