Ira Rosen
3533e50347
re PR middle-end/42193 (454.calculix in SPEC CPU 2006 failed to compile at -O3)
...
PR tree-optimization/42193
* tree-vect-stmts.c (vectorizable_operation): Set vectorization factor
to 1 in case of basic block SLP.
(vectorizable_load): Likewise.
From-SVN: r154738
2009-11-29 17:30:20 +00:00
Jan Hubicka
6744a6abc3
cgraph.c (same_body_alias_1): Break out of
...
* cgraph.c (same_body_alias_1): Break out of
(same_body_alias): ... here; remove comdat check; it is handled
in cp already.
(cgraph_add_thunk): New.
(dump_cgraph_node): Dump aliases and thunks.
* cgraph.h (cgraph_thunk_info): New structure.
(struct cgraph_node): Add thunk info.
(cgraph_add_thunk): New.
* cgraphunit.c (cgraph_emit_thunks): Remove.
(cgraph_finalize_compilation_unit): Do not call cgraph_emit_thunks.
(assemble_thunk): New function.
(cgraph_expand_function): Handle thunks.
(thunk_adjust): New.
(init_lowered_empty_function): New.
* optimize.c (maybe_clone_body): Emit thunks associated to alias.
* Make-lang.in (method.o): Add dependency on gimple.h.
* method.c: Include gimple.h
(make_alias_for_thunk): Use same body alias instead of assemble_alias.
(use_thunk): Drop codegen; use cgraph_add_thunk; gimplify
generic thunks.
* semantics.c (expand_or_defer_fn): Emit associated thunks.
* cp-objcp-common.h (LANG_HOOKS_CALLGRAPH_EMIT_ASSOCIATED_THUNKS): Remove.
* lto-cgraph.c (lto_output_node): Stream thunk info.
(input_node): Likewise.
* langhooks.h (lang_hooks_for_callgraph): Remove emit_associated_thunks.
* langhooks-def.h (LANG_HOOKS_CALLGRAPH_EMIT_ASSOCIATED_THUNKS): Remove.
(LANG_HOOKS_CALLGRAPH_INITIALIZER): Update.
* i386.c (x86_output_mi_thunk): Make output prettier.
From-SVN: r154736
2009-11-29 10:32:08 +00:00
GCC Administrator
e55690913e
Daily bump.
...
From-SVN: r154734
2009-11-29 00:16:52 +00:00
Dodji Seketeli
9af66ed16e
re PR c++/36408 (ICE with statement expression in template)
...
Fix PR c++/36408
gcc/cp/ChangeLog:
PR c++/36408
* cp-tree.h (empty_expr_stmt_p): Declare ...
* semantics.c (empty_expr_stmt_p): ... this.
* pt.c (tsubst_copy_and_build) <STMT_EXPR>: Use it.
gcc/testsuite/ChangeLog:
PR c++/36408
* g++.dg/template/stmtexpr2.C: New test.
From-SVN: r154731
2009-11-28 23:55:52 +01:00
Jakub Jelinek
288d6a77c3
sarray.c (sarray_free): Use old_buckets variable.
...
* sarray.c (sarray_free): Use old_buckets variable.
* encoding.c (objc_layout_structure_next_member): Remove unused
bfld_type_size variable.
* decContext.c (decContextTestEndian): Move adj definition into
#if DECCHECK guarded code.
From-SVN: r154730
2009-11-28 21:31:39 +01:00
Jakub Jelinek
14ca4cf89c
pack_generic.c (pack_internal): Remove unused zero_sized variable.
...
* intrinsics/pack_generic.c (pack_internal): Remove unused
zero_sized variable.
* intrinsics/unpack_generic.c (unpack0): Remove unused size
variable.
* io/write.c (namelist_write_newline): Remove unused length
variable.
* io/unix.c (find_file): Remove unused id variable.
* m4/ifunction.m4 (SCALAR_ARRAY_FUNCTION): Remove unused sstride
variable.
* generated/maxloc1_16_i1.c: Regenerated.
* generated/maxloc1_16_i16.c: Regenerated.
* generated/maxloc1_16_i2.c: Regenerated.
* generated/maxloc1_16_i4.c: Regenerated.
* generated/maxloc1_16_i8.c: Regenerated.
* generated/maxloc1_16_r10.c: Regenerated.
* generated/maxloc1_16_r16.c: Regenerated.
* generated/maxloc1_16_r4.c: Regenerated.
* generated/maxloc1_16_r8.c: Regenerated.
* generated/maxloc1_4_i1.c: Regenerated.
* generated/maxloc1_4_i16.c: Regenerated.
* generated/maxloc1_4_i2.c: Regenerated.
* generated/maxloc1_4_i4.c: Regenerated.
* generated/maxloc1_4_i8.c: Regenerated.
* generated/maxloc1_4_r10.c: Regenerated.
* generated/maxloc1_4_r16.c: Regenerated.
* generated/maxloc1_4_r4.c: Regenerated.
* generated/maxloc1_4_r8.c: Regenerated.
* generated/maxloc1_8_i1.c: Regenerated.
* generated/maxloc1_8_i16.c: Regenerated.
* generated/maxloc1_8_i2.c: Regenerated.
* generated/maxloc1_8_i4.c: Regenerated.
* generated/maxloc1_8_i8.c: Regenerated.
* generated/maxloc1_8_r10.c: Regenerated.
* generated/maxloc1_8_r16.c: Regenerated.
* generated/maxloc1_8_r4.c: Regenerated.
* generated/maxloc1_8_r8.c: Regenerated.
* generated/maxval_i1.c: Regenerated.
* generated/maxval_i16.c: Regenerated.
* generated/maxval_i2.c: Regenerated.
* generated/maxval_i4.c: Regenerated.
* generated/maxval_i8.c: Regenerated.
* generated/maxval_r10.c: Regenerated.
* generated/maxval_r16.c: Regenerated.
* generated/maxval_r4.c: Regenerated.
* generated/maxval_r8.c: Regenerated.
* generated/minloc1_16_i1.c: Regenerated.
* generated/minloc1_16_i16.c: Regenerated.
* generated/minloc1_16_i2.c: Regenerated.
* generated/minloc1_16_i4.c: Regenerated.
* generated/minloc1_16_i8.c: Regenerated.
* generated/minloc1_16_r10.c: Regenerated.
* generated/minloc1_16_r16.c: Regenerated.
* generated/minloc1_16_r4.c: Regenerated.
* generated/minloc1_16_r8.c: Regenerated.
* generated/minloc1_4_i1.c: Regenerated.
* generated/minloc1_4_i16.c: Regenerated.
* generated/minloc1_4_i2.c: Regenerated.
* generated/minloc1_4_i4.c: Regenerated.
* generated/minloc1_4_i8.c: Regenerated.
* generated/minloc1_4_r10.c: Regenerated.
* generated/minloc1_4_r16.c: Regenerated.
* generated/minloc1_4_r4.c: Regenerated.
* generated/minloc1_4_r8.c: Regenerated.
* generated/minloc1_8_i1.c: Regenerated.
* generated/minloc1_8_i16.c: Regenerated.
* generated/minloc1_8_i2.c: Regenerated.
* generated/minloc1_8_i4.c: Regenerated.
* generated/minloc1_8_i8.c: Regenerated.
* generated/minloc1_8_r10.c: Regenerated.
* generated/minloc1_8_r16.c: Regenerated.
* generated/minloc1_8_r4.c: Regenerated.
* generated/minloc1_8_r8.c: Regenerated.
* generated/minval_i1.c: Regenerated.
* generated/minval_i16.c: Regenerated.
* generated/minval_i2.c: Regenerated.
* generated/minval_i4.c: Regenerated.
* generated/minval_i8.c: Regenerated.
* generated/minval_r10.c: Regenerated.
* generated/minval_r16.c: Regenerated.
* generated/minval_r4.c: Regenerated.
* generated/minval_r8.c: Regenerated.
* generated/product_c10.c: Regenerated.
* generated/product_c16.c: Regenerated.
* generated/product_c4.c: Regenerated.
* generated/product_c8.c: Regenerated.
* generated/product_i1.c: Regenerated.
* generated/product_i16.c: Regenerated.
* generated/product_i2.c: Regenerated.
* generated/product_i4.c: Regenerated.
* generated/product_i8.c: Regenerated.
* generated/product_r10.c: Regenerated.
* generated/product_r16.c: Regenerated.
* generated/product_r4.c: Regenerated.
* generated/product_r8.c: Regenerated.
* generated/sum_c10.c: Regenerated.
* generated/sum_c16.c: Regenerated.
* generated/sum_c4.c: Regenerated.
* generated/sum_c8.c: Regenerated.
* generated/sum_i1.c: Regenerated.
* generated/sum_i16.c: Regenerated.
* generated/sum_i2.c: Regenerated.
* generated/sum_i4.c: Regenerated.
* generated/sum_i8.c: Regenerated.
* generated/sum_r10.c: Regenerated.
* generated/sum_r16.c: Regenerated.
* generated/sum_r4.c: Regenerated.
* generated/sum_r8.c: Regenerated.
From-SVN: r154729
2009-11-28 21:29:51 +01:00
Richard Guenther
f1c1964807
re PR middle-end/42183 (internal compiler error: verify_stmts failed)
...
2009-11-28 Richard Guenther <rguenther@suse.de>
PR tree-optimization/42183
* tree-nrv.c (tree_nrv): Bail out if the RESULT_DECL has its
address taken. Merge the addressable state of the NRV
variable and the result instead of copying it.
* g++.dg/torture/pr42183.C: New testcase.
From-SVN: r154728
2009-11-28 19:11:22 +00:00
Jakub Jelinek
c750c20870
jvspec.c (lang_specific_driver): Remove unused saw_verbose_flag variable.
...
* jvspec.c (lang_specific_driver): Remove unused
saw_verbose_flag variable.
* jcf-dump.c (main): Remove unused general_purpose_bits
variable.
* builtins.c (initialize_builtins): Remove unused float_ftype_float
variable.
* expr.c (java_stack_pop): Remove unused val variable.
(build_jni_stub): Remove unused res_type variable.
* verify-impl.c (check_field_constant): Remove unused len variable.
From-SVN: r154727
2009-11-28 17:21:52 +01:00
Jakub Jelinek
0f900dfafa
matrix-reorg.c (analyze_matrix_allocation_site): Remove unused malloc_fname variable.
...
* matrix-reorg.c (analyze_matrix_allocation_site): Remove unused
malloc_fname variable.
(check_allocation_function): Remove unused gsi and bb_level_0
variables.
(transform_access_sites): Remove unused d_type_size and d_type_size_k
variables.
* omega.c (resurrect_subs): Remove unused n variable.
(omega_solve_geq): Remove unused neweqns variable.
* lto-streamer-in.c (lto_read_tree): Remove unused end_marker variable.
* tree-inline.c (declare_return_variable): Remove USE_P argument,
return use instead of var.
(remap_decl, remap_block): Remove unused fn variable.
(expand_call_inline): Remove unused retvar variable, adjust
declare_return_variable caller.
(optimize_inline_calls): Remove unused prev_fn variable.
* tree-vect-slp.c (vect_analyze_slp_instance): Remove unused ncopies
variable.
(vect_create_mask_and_perm): Remove unused group_size and dr_chain_size
variables.
* tree-ssa-loop-niter.c (split_to_var_and_offset): Handle MINUS_EXPR
properly.
* tree-vect-loop.c (vect_analyze_loop_form): Remove unused backedge
variable.
(vect_create_epilog_for_reduction): Remove unused bytesize variable.
* omp-low.c (workshare_safe_to_combine_p): Remove par_entry_bb
parameter. Remove unused par_stmt variable.
(determine_parallel_type): Adjust workshare_safe_to_combine_p caller.
(expand_omp_sections): Remove unused l1 variable.
(lower_omp_for): Remove unused ilist variable.
* tree-loop-distribution.c (mark_nodes_having_upstream_mem_writes):
Remove unused has_upstream_mem_write_p variable.
* recog.c (decode_asm_operands): Remove unused noperands variable.
* tree-ssa-alias.c (refs_may_alias_p_1): Remove unused size1 and
size2 variable.
* libgcov.c (__gcov_merge_delta): Remove unused last variable.
* tree-call-cdce.c (gen_conditions_for_pow_int_base): Remove unused
base_nm variable.
(gen_conditions_for_pow): Remove unused ec variable.
* tree-ssa-sccvn.c (vn_reference_lookup_3): Remove unused size
variable.
* ipa-struct-reorg.c (program_redefines_malloc_p): Remove unused
fndecl variable.
* tree-ssa-sink.c (statement_sink_location): Remove unused code
variable.
* regmove.c (copy_src_to_dest): Remove unused insn_uid and move_uid
variables.
* tree-complex.c (create_one_component_var): Remove unused inner_type
variable.
* calls.c (emit_call_1): Don't GEN_INT (struct_value_size)
unnecessarily when GEN_*CALL omits that argument.
* regrename.c (regrename_optimize): Remove unused regs_seen variable.
(build_def_use): Remove unused icode variable.
* ipa-pure-const.c (check_call): Remove unused callee and avail
variables.
* tree-dfa.c (add_referenced_var): Remove unused v_ann variable.
* tree-vect-patterns.c (vect_recog_pow_pattern): Remove unused type
variable.
(vect_pattern_recog): Remove unused stmt variable.
* sel-sched-ir.c (make_regions_from_the_rest): Remove unused
new_regions variable.
* postreload.c (reload_cse_simplify_operands): Remove unused mode
variable.
* tree-parloops.c (create_call_for_reduction_1): Remove unused
addr_type variable.
(create_parallel_loop): Remove unused res variable.
(gen_parallel_loop): Remove unused nloop variable.
* tree-vect-loop-manip.c (vect_loop_versioning): Likewise.
* value-prof.c (gimple_mod_subtract_transform,
gimple_stringops_transform): Remove unused value variable.
(gimple_stringops_values_to_profile): Remove unused fcode variable.
* tree-vrp.c (register_new_assert_for): Remove unused found variable.
(vrp_visit_switch_stmt): Remove unused n variable.
* tree-vect-stmts.c (vectorizable_conversion): Remove unused expr
variable.
(vectorizable_operation): Remove unused shift_p variable.
(vectorizable_store): Remove unused first_stmt_vinfo variable.
* tree-ssa-operands.c (add_stmt_operand): Remove unused v_ann variable.
* tree-vect-data-refs.c (vect_analyze_data_refs): Remove unused bb
variable.
(vect_permute_store_chain): Remove unused scalar_dest variable.
(vect_supportable_dr_alignment): Remove unused invariant_in_outerloop
variable.
* tree-ssa-threadupdate.c (thread_single_edge): Remove unused
local_info variable.
* tree-optimize.c (tree_rest_of_compilation): Remove unused node
variable.
* optabs.c (expand_binop): Remove unused equiv_value variable.
(emit_libcall_block): Remove unused prev variable.
(init_optabs): Remove unused int_mode variable.
* tree-ssa-structalias.c (scc_visit): Remove unused have_ref_node
variable.
(do_structure_copy): Remove unused lhsbase and rhsbase variables.
(find_func_aliases): Remove unused rhstype variable.
(ipa_pta_execute): Remove unused varid variable.
gcc/objc/
* objc-act.c (generate_shared_structures): Remove unused sc_spec and
decl_specs variables.
(objc_build_message_expr): Remove unused loc variable.
(objc_finish_message_expr): Remove unused saved_rtype variable.
(encode_field_decl): Remove unused type variable.
gcc/lto/
* lto-lang.c (handle_nonnull_attribute): Remove unused attr_arg_num
variable.
From-SVN: r154726
2009-11-28 17:21:00 +01:00
Andy Hutchinson
e86b4c032a
* config/avr/avr.h (ASM_OUTPUT_EXTERNAL): Add.
...
From-SVN: r154724
2009-11-28 12:39:45 +00:00
Jakub Jelinek
c4fae39e15
trans-common.c (create_common): Remove unused offset variable.
...
* trans-common.c (create_common): Remove unused offset variable.
* io.c (gfc_match_wait): Remove unused loc variable.
* trans-openmp.c (gfc_trans_omp_clauses): Remove unused old_clauses
variable.
(gfc_trans_omp_do): Remove unused outermost variable.
* iresolve.c (gfc_resolve_alarm_sub, gfc_resolve_fseek_sub): Remove
unused status variable.
* module.c (number_use_names): Remove unused c variable.
(load_derived_extensions): Remove unused nuse variable.
* trans-expr.c (gfc_conv_substring): Remove unused var variable.
* trans-types.c (gfc_get_array_descr_info): Remove unused offset_off
variable.
* matchexp.c (match_primary): Remove unused where variable.
* trans-intrinsic.c (gfc_conv_intrinsic_bound): Remove unused cond2
variable.
(gfc_conv_intrinsic_sizeof): Remove unused source variable.
(gfc_conv_intrinsic_transfer): Remove unused stride variable.
(gfc_conv_intrinsic_function): Remove unused isym variable.
* arith.c (gfc_hollerith2real, gfc_hollerith2complex,
gfc_hollerith2logical): Remove unused len variable.
* parse.c (parse_derived): Remove unused derived_sym variable.
* decl.c (variable_decl): Remove unused old_locus variable.
* resolve.c (check_class_members): Remove unused tbp_sym variable.
(resolve_ordinary_assign): Remove unused assign_proc variable.
(resolve_equivalence): Remove unused value_name variable.
* data.c (get_array_index): Remove unused re variable.
* trans-array.c (gfc_conv_array_transpose): Remove unused src_info
variable.
(gfc_conv_resolve_dependencies): Remove unused aref and temp_dim
variables.
(gfc_conv_loop_setup): Remove unused dim and len variables.
(gfc_walk_variable_expr): Remove unused head variable.
* match.c (match_typebound_call): Remove unused var variable.
* intrinsic.c (gfc_convert_chartype): Remove unused from_ts variable.
From-SVN: r154722
2009-11-28 13:13:21 +01:00
Jakub Jelinek
76dcaf33d5
re PR objc++/42156 (Hundreds of objc++ testsuite regressions)
...
PR obj-c++/42156
* objc-act.c (objc_build_struct): INIT_TYPE_OBJC_INFO for
type variants that don't have it initialized yet.
From-SVN: r154721
2009-11-28 13:12:32 +01:00
David Binderman
11895e28ee
ira-color.c (put_allocno_into_bucket): Remove set but not used local variable hard_regs_num.
...
2009-11-28 David Binderman <dcb314@hotmail.com>
* ira-color.c (put_allocno_into_bucket): Remove set but not used
local variable hard_regs_num.
* ira-lives.c (process_single_reg_class_operands): Remove cover_class.
* loop-unswitch.c (unswitch_loop): Remove zero_bitmap.
* lower-subreg.c (decompose_multiword_subregs): Remove next.
From-SVN: r154720
2009-11-28 09:49:56 +00:00
Kai Tietz
dcbb944675
20081210-1_0.c (uintptr_t): Use for w64 target type 'unsigned long long'.
...
2009-11-28 Kai Tietz <kai.tietz@onevision.com>
* gcc.dg/lto/20081210-1_0.c (uintptr_t): Use for
w64 target type 'unsigned long long'.
From-SVN: r154719
2009-11-28 09:10:30 +01:00
GCC Administrator
51b60ac8d2
Daily bump.
...
From-SVN: r154718
2009-11-28 00:16:45 +00:00
Martin Jambor
c4ea52007a
re PR middle-end/42006 (Termination problem with -O2 and -O3)
...
2009-11-27 Martin Jambor <mjambor@suse.cz>
PR middle-end/42006
* tree-sra.c (get_replaced_param_substitute): Call create_tmp_var
instead of create_tmp_var. Set DECL_GIMPLE_REG_P to one manually
for vector and complex types.
(get_adjustment_for_base): Describe return value in the comment.
* testsuite/gcc.c-torture/execute/pr42006.c: New test.
From-SVN: r154715
2009-11-27 23:34:40 +01:00
Nick Clifton
ba96438334
stormy16-lib2.c: Arrange for separate compilation of each function.
...
* config/stormy16/stormy16-lib2.c: Arrange for separate
compilation of each function.
(__ffshi2): New function.
(__stormy16_count_leading_zeros): New function.
* config/stormy16/t-stormy16 (LIB2FUNCS_EXTRA): Use stub files to
compile each function into its own object file.
(stormy16-lib2-ashlsi3.c): New stub file.
(stormy16-lib2-ashrsi3.c): New stub file.
(stormy16-lib2-clzhi2.c): New stub file.
(stormy16-lib2-count-leading-zeros.c): New stub file.
(stormy16-lib2-ctzhi2.c): New stub file.
(stormy16-lib2-divsi3.c): New stub file.
(stormy16-lib2-ffshi2.c): New stub file.
(stormy16-lib2-lshrsi3.c): New stub file.
(stormy16-lib2-modsi3.c): New stub file.
(stormy16-lib2-parityhi2.c): New stub file.
(stormy16-lib2-popcounthi2.c): New stub file.
(stormy16-lib2-udivmodsi4.c): New stub file.
(stormy16-lib2-udivsi3.c): New stub file.
(stormy16-lib2-umodsi3.c): New stub file.
* longlong.h (count_leading_zeros): Define macro for stormy16
target.
(COUNT_LEADING_ZEROS_0): Likewise.
From-SVN: r154713
2009-11-27 18:56:10 +00:00
Paolo Carlini
c7f06e1309
re PR c++/38656 (Broken diagnostic: 'template_id_expr' not supported by pp_c_expression)
...
cp/
2009-11-27 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/38656
* cxx-pretty-print.c (pp_cxx_expression): Handle TEMPLATE_ID_EXPR.
testsuite/
2009-11-27 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/38656
* g++.dg/cpp0x/error2.C: New.
From-SVN: r154712
2009-11-27 16:36:43 +00:00
Richard Henderson
b0d49a6e80
sse.md (vec_interleave_highv16qi, [...]): Remove expanders.
...
* config/i386/sse.md (vec_interleave_highv16qi,
vec_interleave_lowv16qi, vec_interleave_highv8hi,
vec_interleave_lowv8hi, vec_interleave_highv4si,
vec_interleave_lowv4si, vec_interleave_highv2di,
vec_interleave_lowv2di, vec_interleave_highv4sf,
vec_interleave_lowv4sf, vec_interleave_highv2df,
vec_interleave_lowv2df): Remove expanders.
(sse_unpcklps, sse_unpckhps, sse2_unpckhpd_exp, sse2_unpcklpd_exp,
sse2_punpckhqdq, sse2_punpcklqdq, sse2_punpckhbw, sse2_punpcklbw,
sse2_punpckhwd, sse2_punpcklwd, sse2_punpckhdq, sse2_punpckldq):
Rename to their proper vec_interleave equivalent. Update all users
to the new name.
* config/i386/i386.c, config/i386/i386.md: Update all users.
From-SVN: r154711
2009-11-27 07:58:50 -08:00
Michael Matz
315adedaf3
re PR rtl-optimization/42084 (Wrong result with -Os -fno-delete-null-pointer-checks)
...
PR rtl-optimization/42084
* cfgexpand.c (maybe_cleanup_end_of_block): Add new parameter,
use it to stop walking.
(expand_gimple_cond): Adjust call to above.
testsuite/
* gcc.dg/pr42084.c: New test.
From-SVN: r154709
2009-11-27 15:35:50 +00:00
Rainer Orth
67c330aec4
re PR target/41810 (Cannot build gcc: gthr-default.h:466: error: '__mutex' was not declared in this scope)
...
PR target/41810
* gthr-solaris.h (__gthread_mutex_destroy): Remove UNUSED.
[SUPPORTS_WEAK && GTHREAD_USE_WEAK] (__gthread_active_p): Use
__extension__ to allow cast from function pointer to object
pointer in C++.
* doc/install.texi (--enable-threads): Clarify use of Solaris
threads.
From-SVN: r154708
2009-11-27 15:17:04 +00:00
Steven Bosscher
7400e46be6
Remove support for Itanium1 (Merced)
...
* config/ia64/itanium1.md: Remove.
* config/ia64/ia64.md: Do not include it.
* config/ia64/ia64.c (ia64_handle_option): Remove "itanium",
"itanium1", and "merced" from the processor alias table.
(clocks, add_cycles): Remove global variables.
(ia64_sched_reorder2): Don't set/use them.
(ia64_dfa_new_cycle, ia64_h_i_d_extended, ia64_reorg): Likewise.
(bundling): Likewise. Remove extra pass for MMMUL/MMSHF.
From-SVN: r154707
2009-11-27 14:30:34 +00:00
Andreas Krebbel
3a892e4495
s390.c (last_scheduled_insn): New variable.
...
2009-11-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.c (last_scheduled_insn): New variable.
(s390_fpload_toreg, s390_z10_prevent_earlyload_conflicts): New
functions.
(s390_sched_reorder, s390_sched_variable_issue): New functions.
(TARGET_SCHED_VARIABLE_ISSUE, TARGET_SCHED_REORDER): Target hooks
defined.
From-SVN: r154705
2009-11-27 13:12:25 +00:00
Michael Matz
d815d34e46
re PR c++/41906 (ICE with catch(...) and -fpermissive)
...
PR c++/41906
* tree-eh.c (lower_catch): Stop after expanding a catch-all.
testsuite/
* g++.dg/tree-ssa/pr41906.C: New testcase.
From-SVN: r154704
2009-11-27 13:08:58 +00:00
Richard Guenther
b56ae8c7c7
timevar.def (TV_LOOP_MOVE_INVARIANTS, [...]): New timevars.
...
2009-11-27 Richard Guenther <rguenther@suse.de>
* timevar.def (TV_LOOP_MOVE_INVARIANTS, TV_LOOP_UNSWITCH,
TV_LOOP_UNROLL, TV_LOOP_DOLOOP): New timevars.
* loop-init.c (pass_rtl_move_loop_invariants): Use
TV_LOOP_MOVE_INVARIANTS.
(pass_rtl_unswitch): Use TV_LOOP_UNSWITCH.
(pass_rtl_unroll_and_peel): Use TV_LOOP_UNROLL.
(pass_rtl_doloop): Use TV_LOOP_DOLOOP.
From-SVN: r154703
2009-11-27 12:43:08 +00:00
Andreas Krebbel
9c517bf372
emit-rtl.c (next_active_insn, [...]): Correct comment.
...
2009-11-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* emit-rtl.c (next_active_insn, prev_active_insn): Correct
comment.
From-SVN: r154702
2009-11-27 12:00:28 +00:00
Jakub Jelinek
f1ed99cda5
i386.c (ix86_emit_restore_sse_regs_using_mov): Remove unused insn variable.
...
* config/i386/i386.c (ix86_emit_restore_sse_regs_using_mov): Remove
unused insn variable.
* genemit.c (output_peephole2_scratches): Only declare and initialize
_regs_allocated if it will be ever used.
* cfgloopmanip.c (create_empty_if_region_on_edge): Remove unused
succ_bb variable.
(create_empty_loop_on_edge): Remove unused freq and cnt variables.
* unwind-c.c (PERSONALITY_FUNCTION): Remove unused action_record
variable.
From-SVN: r154701
2009-11-27 12:37:06 +01:00
Jakub Jelinek
e96fee3e91
opts.c (decode_options): If optimize is bigger than 255, set it to 255.
...
* opts.c (decode_options): If optimize is bigger than 255,
set it to 255.
* gcc.dg/O16384.c: New test.
From-SVN: r154699
2009-11-27 12:31:55 +01:00
Paolo Carlini
85539630e3
re PR c++/35112 (ICE and broken diagnostic with ambiguous class name)
...
/cp
2009-11-27 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/35112
* pt.c (print_overloaded_functions): New.
(print_candidates): Call the latter.
* parser.c (cp_parser_class_name): Do not duplicate the diagnostics
after the cp_parser_lookup_name call.
/testsuite
2009-11-27 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/35112
* g++.dg/parse/crash53.C: New.
* g++.dg/parse/error17.C: Adjust, error messages are not
duplicated anymore.
* g++.dg/template/dtor7.C: Remove xfail-ed dg-bogus directives.
From-SVN: r154698
2009-11-27 10:44:49 +00:00
GCC Administrator
58b9741ecb
Daily bump.
...
From-SVN: r154697
2009-11-27 00:16:49 +00:00
Uros Bizjak
22b9d529e8
vperm-v4sf-1.c (dg-options): Use -msse2.
...
* gcc.target/i386/vperm-v4sf-1.c (dg-options): Use -msse2.
* gcc.target/i386/vperm-v4sf-2.c: Require effective target ssse3.
* gcc.target/i386/vperm-v4si-2.c: Ditto.
* gcc.target/i386/vperm-v4si-2x.c: Require effective target xop.
From-SVN: r154694
2009-11-27 00:24:10 +01:00
Richard Henderson
08f3084be2
sse.md (mulv16qi3): Change back from an expander to an insn-and-split.
...
* config/i386/sse.md (mulv16qi3): Change back from an expander
to an insn-and-split.
(mulv4si): Mention AVX not XOP for AVX exception.
(*sse2_mulv4si3): Likewise.
(mulv2di3): Use vmulld not vpmacsdd for XOP expansion. Tidy.
testsuite/
* gcc.target/i386/xop-imul64-vector.c: Look for vpmulld not vpmacsdd.
From-SVN: r154693
2009-11-26 15:09:56 -08:00
Jerry DeLisle
5e1a89f009
re PR fortran/41807 (data statement with nested type constructors)
...
2009-11-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/41807
* trans-const.c (gfc_conv_const): Set se->expr to a constant on error.
From-SVN: r154690
2009-11-26 21:52:52 +00:00
Bernd Schmidt
15b83b0f47
cfgexpand (n_stack_vars_conflict): New static variable.
...
* cfgexpand (n_stack_vars_conflict): New static variable.
(triangular_index): Reduce likelyhood of overflow by performing
the division before the multiplication.
(resize_stack_vars_conflict): Call fatal_error if overflow
occurred in triangular_index. Update n_stack_vars_conflict.
From-SVN: r154689
2009-11-26 21:46:45 +00:00
Bernd Schmidt
a96caf8085
re PR rtl-optimization/38582 (excessive time in rename registers)
...
PR rtl-opt/38582
* regrename.c (struct du_head): New members id, conflicts,
hard_conflicts and cannot_rename.
(enum scan_actions): Remove terminate_all_read and
terminate_overlapping_read; add mark_all_read.
(scan_actions_name): Likewise.
(du_head_p): New typedef. Define a vector type for it.
(id_to_chain): New static variable.
(note_sets, clear_dead_regs): Delete functions.
(free_chain_data): New function.
(merge_overlapping_regs): Simply walk the conflicts bitmap.
Remove argument B, all callers changed.
(regrename_optimize): Allocate id_to_chain. Ignore chains that have
the cannot_rename bit set. Update regno and nregs of a renamed chain.
Call free_chain_data when done.
(do_replace): Remove death notes when the renamed reg is set in the
last insn; add them if not.
(mark_conflict, note_sets_clobbers): New static function.
(fail_current_block, current_id, open_chains_set, live_hard_regs): New
static variables.
(scan_rtx_reg): Keep track of conflicts between chains, and between
chains and hard regs. Don't terminate chains when we find a read we
can't handle, mark it unrenameable instead. For terminate_write,
terminate chains that are written with an exact match or a superset
of registers. Set fail_current_block if multi-word lifetimes are too
complex to handle.
(scan_rtx_address): Use mark_all_read instead of terminate_all_read.
(build_def_use): Initialize current_id, live_chains and live_hard_regs;
free memory for them when done.
Rearrange the steps so that earlyclobbers are noted before reads
are processed. Add new steps to keep track of hard register lifetimes
outside insn operands.
From-SVN: r154688
2009-11-26 21:41:42 +00:00
Bernd Schmidt
6bda9bdf52
re PR rtl-optimization/38582 (excessive time in rename registers)
...
PR rtl-opt/38582
* regrename.c (struct du_chain): Remove member earlyclobber.
(scan_rtx_reg): Don't set it. Remove argument earlyclobber,
all callers changed.
(scan_rtx): Remove argument earlyclobber, all callers changed.
(hide_operands, restore_operands, record_out_operands): New functions,
broken out of build_def_use.
(build_def_use): Call them as necessary.
From-SVN: r154687
2009-11-26 21:35:35 +00:00
Jason Merrill
c5c39ab37a
PR c++/42026, DR 239
...
PR c++/42026, DR 239
* parser.c (cp_parser_postfix_expression): A local extern also
prevents arg-dependent lookup.
From-SVN: r154686
2009-11-26 15:58:47 -05:00
Jason Merrill
1e1779fe22
add missing testsuite/ChangeLog entry
...
From-SVN: r154685
2009-11-26 15:58:41 -05:00
Gabriel Dos Reis
612e541cfc
* decl.c (grokdeclarator): Remove period at end of diagnosic message.
...
From-SVN: r154684
2009-11-26 20:00:43 +00:00
Jerry DeLisle
ba2335f224
re PR fortran/41278 (internal compiler error related to matmul and transpose)
...
2009-11-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/41278
* gfortran.dg/array_function_5.f90: New test.
From-SVN: r154681
2009-11-26 19:10:29 +00:00
Jerry DeLisle
4252ed2bd7
re PR fortran/41278 (internal compiler error related to matmul and transpose)
...
2009-11-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/41278
* trans-array.c (gfc_conv_array_transpose): Delete unnecessary assert.
From-SVN: r154680
2009-11-26 19:05:37 +00:00
Janus Weil
2d71b918d4
re PR fortran/42048 ([F03] Erroneous syntax error message on TBP call)
...
2009-11-26 Janus Weil <janus@gcc.gnu.org>
PR fortran/42048
PR fortran/42167
* gfortran.h (gfc_is_function_return_value): New prototype.
* match.c (gfc_match_call): Use new function
'gfc_is_function_return_value'.
* primary.c (gfc_is_function_return_value): New function to check if a
symbol is the return value of an encompassing function.
(match_actual_arg,gfc_match_rvalue,match_variable): Use new function
'gfc_is_function_return_value'.
* resolve.c (resolve_common_blocks,resolve_actual_arglist): Ditto.
2009-11-26 Janus Weil <janus@gcc.gnu.org>
PR fortran/42048
PR fortran/42167
* gfortran.dg/select_type_10.f03: New test case.
* gfortran.dg/typebound_call_11.f03: Extended test case.
From-SVN: r154679
2009-11-26 20:01:02 +01:00
Eric Botcazou
90dcfecb47
utils.c (copy_type): Unshare the language-specific data and the contents of the language-specific...
...
* gcc-interface/utils.c (copy_type): Unshare the language-specific data
and the contents of the language-specific slot if needed.
From-SVN: r154678
2009-11-26 17:47:48 +00:00
Eric Botcazou
da49a7837a
trans.c (gnat_to_gnu): Set the source location of the operator on both branches of the test in the...
...
* gcc-interface/trans.c (gnat_to_gnu) <N_In>: Set the source location
of the operator on both branches of the test in the generic case.
From-SVN: r154677
2009-11-26 17:46:16 +00:00
Richard Guenther
a61f9cc067
tree-ssa-dce.c (nr_walks): New variable.
...
2009-11-26 Richard Guenther <rguenther@suse.de>
* tree-ssa-dce.c (nr_walks): New variable.
(mark_aliased_reaching_defs_necessary): Adjust oracle cut-off.
(perform_tree_ssa_dce): Init nr_walks.
From-SVN: r154676
2009-11-26 17:00:19 +00:00
Jason Merrill
6780e186fc
re PR c++/10690 ([DR 115] Even when used within typeid(), a template-id generating an overload set with only one function should silently decay to a pointer to function)
...
PR c++/10690
* rtti.c (get_tinfo_decl_dynamic): Call resolve_nondeduced_context.
From-SVN: r154675
2009-11-26 10:59:52 -05:00
Michael Matz
87cd42599c
tree-eh.c (lower_eh_constructs_2): Don't add assignments below statements that can't fall thru.
...
* tree-eh.c (lower_eh_constructs_2): Don't add assignments
below statements that can't fall thru.
testsuite/
* g++.dg/tree-ssa/pr41905.C: New testcase.
From-SVN: r154674
2009-11-26 15:54:07 +00:00
Michael Matz
6dc3bf569b
builtins.c (expand_builtin_printf, [...]): Remove.
...
* builtins.c (expand_builtin_printf, expand_builtin_fprintf,
expand_builtin_sprintf): Remove.
(expand_builtin): Don't call them.
From-SVN: r154673
2009-11-26 13:49:35 +00:00
Richard Guenther
d9b99b4ceb
tree-ssa-dce.c (perform_tree_ssa_dce): Allocate visited bitmap.
...
2009-11-26 Richard Guenther <rguenther@suse.de>
* tree-ssa-dce.c (perform_tree_ssa_dce): Allocate visited bitmap.
From-SVN: r154672
2009-11-26 13:09:02 +00:00
Nick Clifton
0d8f38d337
rx.c (rx_expand_epilogue): Add checks for sibcalls being used incorrectly.
...
* config/rx/rx.c (rx_expand_epilogue): Add checks for sibcalls
being used incorrectly.
(rx_function_ok_for_sibcall): New function. Do not allow indirect
sibcalls, or sibcalls from interrupt functions.
(TARGET_FUNCTION_OK_FOR_SIBCALL): Define.
* config/rx/rx.md (sibcall): Convert to a define_expand. Check
for a MEM inside a MEM.
(sibcall_value): Likewise.
(sibcall_internal): New pattern containing old sibcall pattern.
(sibcall_value_internal): Likewise.
From-SVN: r154671
2009-11-26 10:44:28 +00:00