Mikael Morin [Thu, 5 Jul 2012 15:18:26 +0000 (15:18 +0000)]
re PR fortran/53732 ("mismatching comparison operand types" on compile)
fortran/
PR fortran/53732
* trans-array.c (gfc_add_loop_ss_code): Disable self recursive calls
handling nested loop(s) if the subscript flag is true.
testsuite/
PR fortran/53732
* gfortran.dg/inline_sum_4.f90: New test.
From-SVN: r189292
Richard Guenther [Thu, 5 Jul 2012 15:15:45 +0000 (15:15 +0000)]
tree-pretty-print.c (dump_generic_node): Properly test the result of exact_log2.
2012-07-05 Richard Guenther <rguenther@suse.de>
* tree-pretty-print.c (dump_generic_node): Properly test
the result of exact_log2.
From-SVN: r189291
Joseph Myers [Thu, 5 Jul 2012 14:30:03 +0000 (15:30 +0100)]
* hr.po: New.
From-SVN: r189289
Andreas Krebbel [Thu, 5 Jul 2012 10:46:19 +0000 (10:46 +0000)]
2012-07-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390-protos.h (s390_expand_movmem)
(s390_expand_cmpmem): Add return value.
* config/s390/s390.c (s390_expand_movmem, s390_expand_cmpmem):
Return FALSE to use the library function in some cases.
* config/s390/s390.md (movmem, cmpmem): Evaluate return value of C
helper functions.
From-SVN: r189288
Andreas Krebbel [Thu, 5 Jul 2012 10:45:24 +0000 (10:45 +0000)]
config.gcc: Enable ifunc attribute by default on s390 and s390x.
2012-07-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config.gcc: Enable ifunc attribute by default on s390 and s390x.
From-SVN: r189287
Steven Bosscher [Thu, 5 Jul 2012 10:12:14 +0000 (10:12 +0000)]
expr.c (try_casesi): Remove bogus ATTRIBUTE_UNUSED markers.
gcc/
* expr.c (try_casesi): Remove bogus ATTRIBUTE_UNUSED markers.
* stmt.c (dump_case_nodes): New.
(expand_case): Split out code generation parts into new functions.
(expand_switch_as_decision_tree_p): Split out from expand_case.
(emit_case_decision_tree): Likewise.
(emit_case_dispatch_table): Likewise.
testsuite/
* gcc.c-torture/compile/
20000326-1.c: Fix to not optimize to empty.
From-SVN: r189285
Matthew Gretton-Dann [Thu, 5 Jul 2012 09:10:29 +0000 (09:10 +0000)]
Add files forgotten in last commit (ChangeLog has them already):
gcc/testsuite:
* gcc.target/arm/fma.c: New testcase.
* gcc.target/arm/fma.h: Likewise.
* gcc.target/arm/fma-sp.c: Likewise.
From-SVN: r189284
Matthew Gretton-Dann [Thu, 5 Jul 2012 09:07:00 +0000 (09:07 +0000)]
iterators.md (SDF): New mode iterator.
* gcc/config/arm/iterators.md (SDF): New mode iterator.
(V_if_elem): Add support for SF and DF modes.
(V_reg): Likewise.
(F_constraint): New mode iterator attribute.
(F_fma_type): Likewise.
config/arm/vfp.md (fma<SDF:mode>4): New pattern.
(*fmsub<SDF:mode>4): Likewise.
(*fmnsub<SDF:mode>4): Likewise.
(*fmnadd<SDF:mode>4): Likewise.
* gcc/testsuite/gcc.target/arm/fma-sp.c: New testcase.
* gcc/testsuite/gcc.target/arm/fma.c: Likewise.
* gcc/testsuite/gcc.target/arm/fma.h: Likewise.
From-SVN: r189283
Uros Bizjak [Thu, 5 Jul 2012 07:22:17 +0000 (09:22 +0200)]
re PR fortran/53449 (fortran fails to build with LTO bootstrap)
* expmed.c (expand_mult): Initialize coeff and is_neg.
java/ChangeLog:
* jcf-io.c (read_zip_member): Initialize d_stream.
fortran/ChangLog:
PR fortran/53449
* parse.c (gfc_parse_file): Initialize errors_before.
From-SVN: r189281
Sandra Loosemore [Thu, 5 Jul 2012 02:53:03 +0000 (22:53 -0400)]
libgomp.texi (Library Index): Renamed from "Index" to prevent conflict with index.html on case-insensitive...
2012-07-04 Sandra Loosemore <sandra@codesourcery.com>
libgomp/
* libgomp.texi (Library Index): Renamed from "Index" to prevent
conflict with index.html on case-insensitive file systems.
From-SVN: r189278
Jonathan Wakely [Thu, 5 Jul 2012 01:14:35 +0000 (01:14 +0000)]
* include/std/condition_variable: Update copyright years.
From-SVN: r189277
GCC Administrator [Thu, 5 Jul 2012 00:17:30 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r189272
Oleg Endo [Wed, 4 Jul 2012 23:32:13 +0000 (23:32 +0000)]
predicates.md (zero_extend_operand): New predicate.
* config/sh/predicates.md (zero_extend_operand): New predicate.
* config/sh/sh.md (zero_extendhisi2): Simplify by using new
zero_extend_operand predicate.
(zero_extendqisi2): Likewise.
From-SVN: r189269
Jonathan Wakely [Wed, 4 Jul 2012 22:17:18 +0000 (22:17 +0000)]
re PR libstdc++/53830 (condition_variable_any - deadlock issue)
PR libstdc++/53830
* include/std/condition_variable (condition_variable_any::wait):
Move _Unlock type to class scope.
(condition_variable_any::wait_until): Reuse it.
* testsuite/30_threads/condition_variable_any/53830.cc: New.
From-SVN: r189268
Jason Merrill [Wed, 4 Jul 2012 21:34:07 +0000 (17:34 -0400)]
re PR c++/53848 (ICE in decl_linkage at ../../gcc-trunk/gcc/cp/tree.c:3215)
PR c++/53848
* decl.c (build_enumerator): Don't use build_lang_decl_loc.
From-SVN: r189267
Uros Bizjak [Wed, 4 Jul 2012 13:49:19 +0000 (15:49 +0200)]
re PR middle-end/53321 (LTO bootstrap failed with bootstrap-profiled)
PR middle-end/53321
* ipa.c (symtab_remove_unreachable_nodes): Partially revert r187375
to not call cgraph_propagate_frequency if something was changed.
testsuite/ChangLog:
PR middle-end/53321
* g++.dg/torture/pr53321.C: New test.
From-SVN: r189261
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