aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2005-03-11re PR target/20415 (Vector init builtin produces invalid instruction pshufw)Richard Henderson3-6/+23
PR target/20415 * config/i386/mmx.md (vec_dupv4hi): Fix predicate. * config/i386/i386.c (ix86_expand_vector_init_duplicate): Update to match. From-SVN: r96304
2005-03-11Main.java (main): Handle '-p'.Tom Tromey2-2/+12
libjava: * gnu/gcj/tools/gcj_dbtool/Main.java (main): Handle '-p'. (usage): Document '-p'. * Makefile.in: Rebuilt. * Makefile.am (dbexecdir): New variable. (db_name): Likewise. (dbexec_DATA): Likewise. ($(db_name)): New target. (AM_CXXFLAGS): Define LIBGCJ_DEFAULT_DATABASE. * java/lang/natRuntime.cc (insertSystemProperties): Set default system database. gcc/java: * gcj.texi (Invoking gcj-dbtool): Document 'gcj-dbtool -p'. (libgcj Runtime Properties): Document the default .db. From-SVN: r96303
2005-03-11mips.h (mips_fix_vr4130_string): Declare.Richard Sandiford12-19/+150
* config/mips/mips.h (mips_fix_vr4130_string): Declare. (TARGET_FIX_VR4130): New macro. (TARGET_OPTIONS): Add -mfix-vr4130. (ISA_HAS_MACCHI): New macro. (ASM_SPEC): Add -mfix-vr4130. * config/mips/mips.c (mips_fix_vr4130_string): New variable. (override_options): Handle mips_fix_vr4130_string. (mips_avoid_hazards): Clear all_noreorder_p if we're working around VR4130 errata and the macc alternatives are not available. * config/mips/mips.md (mfhilo_<mode>): Turn into a define_expand. (*mfhilo_<mode>, *mfhilo_<mode>_macc): New insns. * config/mips/vr.h (DEFAULT_VR_ARCH): Set to mfix-vr4130. (MULTILIB_DEFAULTS): Remove leading "march=". (DRIVER_SELF_SPECS): Likewise. Make -mfix-vr4130 imply -march=vr4130 if no architecture option is given. * config/mips/t-vr (MULTILIB_OPTIONS): Use -mfix-vr4130 for the VR4130 multilibs. (MULTILIB_MATCHES): Map -march=vr4130 to the -mfix-vr4130 multilibs. * doc/invoke.texi: Document -mfix-vr4130. From-SVN: r96301
2005-03-11mips.c (override_options): Only warn about -mint64 deprecation if TARGET_INT64.Richard Sandiford2-1/+6
* config/mips/mips.c (override_options): Only warn about -mint64 deprecation if TARGET_INT64. From-SVN: r96299
2005-03-11builtin-attrs.def (ATTR_NONNULL_LIST, [...]): New "nonnull" attribute lists ↵Kaveh R. Ghazi3-60/+69
which are non-specific regarding the nonnull... * builtin-attrs.def (ATTR_NONNULL_LIST, ATTR_NOTHROW_NONNULL, ATTR_CONST_NOTHROW_NONNULL, ATTR_PURE_NOTHROW_NONNULL, ATTR_MALLOC_NOTHROW_NONNULL): New "nonnull" attribute lists which are non-specific regarding the nonnull parameter positions. (ATTR_NONNULL_1_2, ATTR_NONNULL_1_4, ATTR_NOTHROW_NONNULL_1_2, ATTR_NOTHROW_NONNULL_1_4, ATTR_CONST_NOTHROW_NONNULL_1, ATTR_PURE_NOTHROW_NONNULL_1, ATTR_PURE_NOTHROW_NONNULL_1_2, ATTR_MALLOC_NOTHROW_NONNULL_1): Delete. * builtins.def: Use the non-specific "nonnull" attibute lists. From-SVN: r96298
2005-03-11basic-block.h (single_succ_p, [...]): Improve comments.Zdenek Dvorak2-4/+13
* basic-block.h (single_succ_p, single_pred_p, single_succ_edge, single_pred_edge, single_succ, single_pred): Improve comments. From-SVN: r96293
2005-03-11basic-block.h (single_succ_p, [...]): New inline functions.Zdenek Dvorak47-324/+448
* basic-block.h (single_succ_p, single_pred_p, single_succ_edge, single_pred_edge, single_succ, single_pred): New inline functions. * bb-reorder.c (rotate_loop, find_traces_1_round, add_labels_and_missing_jumps, fix_up_fall_thru_edges, duplicate_computed_gotos): Use the single_succ/pred functions. * cfganal.c (forwarder_block_p): Ditto. * cfgbuild.c (compute_outgoing_frequencies): Ditto. * cfgcleanup.c (try_simplify_condjump, try_forward_edges, outgoing_edges_match, try_crossjump_to_edge, try_optimize_cfg, merge_seq_blocks): Ditto. * cfghooks.c (split_edge, tidy_fallthru_edges): Ditto. * cfglayout.c (fixup_reorder_chain): Ditto. * cfgloop.c (mark_single_exit_loops, update_latch_info, canonicalize_loop_headers, verify_loop_structure): Ditto. * cfgloopmanip.c (remove_path, unloop, loop_delete_branch_edge, mfb_update_loops, create_preheader, force_single_succ_latches, create_loop_notes): Ditto. * cfgrtl.c (rtl_can_merge_blocks, try_redirect_by_replacing_jump, force_nonfallthru_and_redirect, rtl_tidy_fallthru_edge, commit_one_edge_insertion, purge_dead_edges, cfg_layout_can_merge_blocks_p): Ditto. * except.c (sjlj_emit_function_enter): Ditto. * flow.c (init_propagate_block_info): Ditto. * function.c (thread_prologue_and_epilogue_insns): Ditto. * gcse.c (find_implicit_sets, bypass_conditional_jumps, insert_insn_end_bb): Ditto. * ifcvt.c (merge_if_block, find_if_block, find_if_case_1, find_if_case_2): Ditto. * lambda-code.c (perfect_nestify): Ditto. * lcm.c (optimize_mode_switching): Ditto. * loop-doloop.c (doloop_modify): Ditto. * loop-init.c (loop_optimizer_init): Ditto. * loop-iv.c (simplify_using_initial_values): Ditto. * loop-unroll.c (unroll_loop_runtime_iterations): Ditto. * loop-unswitch.c (unswitch_loop): Ditto. * modulo-sched.c (generate_prolog_epilog): Ditto. * predict.c (combine_predictions_for_insn, estimate_probability, tree_estimate_probability, last_basic_block_p, estimate_bb_frequencies): Ditto. * profile.c (branch_prob): Ditto. * regrename.c (copyprop_hardreg_forward): Ditto. * sched-rgn.c (is_cfg_nonregular, find_rgns, update_live): Ditto. * tracer.c (layout_superblocks): Ditto. * tree-cfg.c (tree_can_merge_blocks_p, tree_merge_blocks, cfg_remove_useless_stmts_bb, cleanup_control_flow, cleanup_control_expr_graph, disband_implicit_edges, tree_find_edge_insert_loc, bsi_commit_edge_inserts, tree_verify_flow_info, tree_make_forwarder_block, tree_forwarder_block_p, remove_forwarder_block, remove_forwarder_block_with_phi, merge_phi_nodes): Ditto. * tree-if-conv.c (tree_if_conversion): Ditto. * tree-mudflap.c (mf_build_check_statement_for): Ditto. * tree-ssa-dce.c (remove_dead_stmt): Ditto. * tree-ssa-dom.c (dom_opt_finalize_block): Ditto. * tree-ssa-loop-ch.c (should_duplicate_loop_header_p, copy_loop_headers): Ditto. * tree-ssa-loop-im.c (loop_commit_inserts): Ditto. * tree-ssa-loop-ivopts.c (compute_phi_arg_on_exit): Ditto. * tree-ssa-loop-manip.c (split_loop_exit_edge, ip_normal_pos, lv_adjust_loop_entry_edge, tree_ssa_loop_version): Ditto. * tree-ssa-loop-niter.c (simplify_using_initial_conditions): Ditto. * tree-ssa-loop-unswitch.c (simplify_using_entry_checks): Ditto. * tree-ssa-phiopt.c (tree_ssa_phiopt, value_replacement): Ditto. * tree-ssa-pre.c (compute_antic_aux, insert_aux, init_pre): Ditto. * tree-ssa-threadupdate.c (redirect_edges): Ditto. * tree-tailcall.c (independent_of_stmt_p, find_tail_calls, eliminate_tail_call, tree_optimize_tail_calls_1): Ditto. * tree-vect-analyze.c (vect_analyze_loop_form): Ditto. * tree-vect-transform.c (vect_update_ivs_after_vectorizer): Ditto. * tree-vectorizer.c (slpeel_update_phi_nodes_for_guard, slpeel_add_loop_guard): Ditto. From-SVN: r96292
2005-03-11[multiple changes]Francois-Xavier Coudert2-0/+13
2005-03-12 Francois-Xavier Coudert <coudert@clipper.ens.fr> PR libfortran/20124 * gfortran.dg/pr20124.f90: New Test 2005-03-11 Francois-Xavier Coudert <coudert@clipper.ens.fr> PR libfortran/20124 * write.c (output_float): Adds a nzero_real variable to store the number of leading zeros whatever the format width is. Corrects the rounding of numbers less than 10^(-width). Fixes typo in an error message. Updates copyright years From-SVN: r96291
2005-03-10re PR tree-optimization/15784 (fold misses binary optimization)Jeff Law3-5/+26
PR tree-optimization/15784 * fold-const.c (fold): Fold ~A + 1 to -A. Fold -A - 1 and -1 - A to ~A. * stmt.c (expand_case): Don't change index_type. Convert minval to the proper type. From-SVN: r96289
2005-03-11re PR tree-optimization/20130 (Fold a * -1 - 1 into ~a;)James A. Morrison4-0/+27
2005-03-11 James A. Morrison <phython@gcc.gnu.org> PR tree-optimization/20130 * fold-const.c (fold): Fold x * -1 into -x. From-SVN: r96283
2005-03-11re PR rtl-optimization/20331 (Wrong code generation for the argument of the ↵Kaz Kojima2-4/+10
pure function in PIC) PR rtl-optimization/20331 * rtlanal.c (modified_between_p): Check its address first for MEM. (modified_in_p): Likewise. From-SVN: r96282
2005-03-11* config.gcc (hppa*64*-*-hpux11*): Use pa/t-hpux-shlib.Joseph Myers2-1/+5
From-SVN: r96280
2005-03-11re PR target/20095 (gcc.dg/cleanup-5.c fails on ia64-hpux)Steve Ellcey2-1/+7
PR target/20095 * gcc.dg/cleanup-5.c: xfail for ia64-hp-hpux11.* From-SVN: r96279
2005-03-11* objc.dg/stabs-1.m (dg-final): Change regexp pattern for hppa SOM.John David Anglin2-1/+5
From-SVN: r96278
2005-03-11Daily bump.GCC Administrator1-1/+1
From-SVN: r96276
2005-03-10expr.c (expand_expr_real_1): If possible, use a conditional move for ↵Steven Bosscher2-8/+55
expanding MIN_EXPR and MAX_EXPR. * expr.c (expand_expr_real_1): If possible, use a conditional move for expanding MIN_EXPR and MAX_EXPR. Use temp for moving around rtx-en. From-SVN: r96269
2005-03-10forced1.C: Fix comment.Steve Ellcey5-4/+11
* g++.dg/eh/forced1.C: Fix comment. * g++.dg/eh/forced2.C: Ditto. * g++.dg/eh/forced3.C: Ditto. * g++.dg/eh/forced4.C: Ditto. From-SVN: r96267
2005-03-10re PR rtl-optimization/20412 (RTL checking failure in the combiner)Andrew Pinski4-1/+32
PR rtl-opt/20412 * simplify-rtx.c (simplify_relational_operation_1): Fix typo - check the correct mode. PR rtl-opt/20412 * gcc.c-torture/compile/pr20412.c: New test. From-SVN: r96264
2005-03-10builtins.c (expand_builtin_signbit): Extend to handle floating point modes ↵Roger Sayle4-34/+67
wider than the largest integer type... * builtins.c (expand_builtin_signbit): Extend to handle floating point modes wider than the largest integer type, using the operand_subword_force function to obtain the signbit's word. * gcc.dg/builtins-32.c: Add new run-time tests for long double. From-SVN: r96263
2005-03-10re PR target/20322 (Miscompilation of libcpp/expr.c at -O2+)Jakub Jelinek4-0/+77
PR target/20322 * combine.c (try_combine): If recog_for_combine added CLOBBERs to NEWI2PAT, fail to combine if they are used by NEWPAT. * gcc.dg/20050307-1.c: New test. From-SVN: r96260
2005-03-10* doc/invoke.texi: Add 8540 to list of cpus in rs6000 cpu section.Aldy Hernandez2-1/+5
From-SVN: r96256
2005-03-10re PR java/20312 (No warning on bad method)Ranjit Mathew2-5/+7
PR java/20312 * parse.y (checks_throws_clauses): Check exceptions list even when the base class does not come from a source file being compiled. (java_complete_lhs): Remove unused variable 'wfl'. From-SVN: r96251
2005-03-10* tree-outof-ssa.c (analyze_edges_for_bb): Update a comment.Kazu Hirata2-2/+3
From-SVN: r96250
2005-03-10tree-outof-ssa.c (analyze_edges_for_bb): Make the return type void.Kazu Hirata2-15/+20
* tree-outof-ssa.c (analyze_edges_for_bb): Make the return type void. (perform_edge_inserts): Unconditionally call free_dominator_info. From-SVN: r96249
2005-03-10* config/xtensa/xtensa.h (MEMBER_TYPE_FORCES_BLK): Define.Bob Wilson2-0/+13
From-SVN: r96245
2005-03-10* bitmap.c (bitmap_copy): Remove manual loop unrolling.Nathan Sidwell2-11/+3
From-SVN: r96243
2005-03-10value-prof.c (rtl_find_values_to_profile): Use gcc_assert and gcc_unreachable.Nathan Sidwell1-4/+2
* value-prof.c (rtl_find_values_to_profile): Use gcc_assert and gcc_unreachable. (rtl_register_value_prof_hooks, tree_value_profile_transformations, tree_register_value_prof_hooks): Likewise. * var-tracking.c (stack_adjust_offset_pre_post, variable_htab_free, variable_union, dataflow_set_different_2, count_uses, variable_was_changed, set_frame_base_location, set_variable_part, emit_note_insn_var_location, vt_emit_notes, vt_add_function_parameters): Likewise. * varasm.c (named_section_real, named_section, make_decl_rtl, asm_emit_uninitialised, assemble_integer, decode_addr_const, const_hash_1, compare_constant, copy_constant, force_const_mem, output_constant_pool_2, output_constant_pool_1, output_constant, output_constructor, make_decl_one_only, decl_tls_model, default_no_named_section, default_elf_select_section_1, default_unique_section_1): Likewise. * vec.c (vec_gc_o_reserve, vec_heap_o_reserve): Likewise. * vmsdbgout.c (addr_const_to_string): Likewise. From-SVN: r96242
2005-03-10value-prof.c (rtl_find_values_to_profile): Use gcc_assert and gcc_unreachable.Nathan Sidwell6-193/+151
* value-prof.c (rtl_find_values_to_profile): Use gcc_assert and gcc_unreachable. (rtl_register_value_prof_hooks, tree_value_profile_transformations, tree_register_value_prof_hooks): Likewise. * var-tracking.c (stack_adjust_offset_pre_post, variable_htab_free, variable_union, dataflow_set_different_2, count_uses, variable_was_changed, set_frame_base_location, set_variable_part, emit_note_insn_var_location, vt_emit_notes, vt_add_function_parameters): Likewise. * varasm.c (named_section_real, named_section, make_decl_rtl, asm_emit_uninitialised, assemble_integer, decode_addr_const, const_hash_1, compare_constant, copy_constant, force_const_mem, output_constant_pool_2, output_constant_pool_1, output_constant, output_constructor, make_decl_one_only, decl_tls_model, default_no_named_section, default_elf_select_section_1, default_unique_section_1): Likewise. * vec.c (vec_gc_o_reserve, vec_heap_o_reserve): Likewise. * vmsdbgout.c (addr_const_to_string): Likewise. From-SVN: r96241
2005-03-10re PR target/20375 (C++ ICE in assign_parm_find_entry_rtl)Nathan Sidwell4-29/+41
PR c++/20375 * function.c (struct assign_parm_data_one): Remove last_named field. (assign_parm_find_data_types): Don't determine last_named. Reorder named_parm determination. (assign_parms): Only setup varargs on the last non-varadic parameter. testsuite: PR c++/20375 * g++.dg/other/stdarg3.C: New. From-SVN: r96237
2005-03-10PR c++/18384, c++/18327Jakub Jelinek4-19/+27
PR c++/18384, c++/18327 * decl.c (reshape_init_array): Use UHWI type for max_index_cst and index. Convert max_index to size_type_node if it isn't host_integerp (, 1). * g++.dg/init/array19.C: New test. From-SVN: r96236
2005-03-10(load_sda_base_32): New pattern. Loads sda base address on medium model.Kazuhiro Inaoka2-0/+13
From-SVN: r96233
2005-03-10Makefile.in (tree-optimize.o): Add CFGLOOP_H dependence.Zdenek Dvorak17-38/+261
* Makefile.in (tree-optimize.o): Add CFGLOOP_H dependence. * cfgloop.c (flow_loop_nodes_find): Export. * cfgloop.h (flow_loop_nodes_find, fix_loop_structure): Declare. * cfgloopmanip.c (fix_loop_structure): New function. * predict.c (predict_loops): Clean up the loops information. * tree-cfg.c (cleanup_tree_cfg_loop): New function. (tree_can_merge_blocks_p, remove_bb, tree_forwarder_block_p): Respect loop structure. * tree-flow.h (cleanup_tree_cfg_loop): Declare. (rewrite_into_loop_closed_ssa): Declaration changed. * tree-loop-linear.c (linear_transform_loops): Add argument to rewrite_into_loop_closed_ssa call. * tree-ssa-loop-ch.c (copy_loop_headers): Ditto. * tree-ssa-loop-im.c (move_computations): Ditto. * tree-ssa-loop.c (tree_loop_optimizer_init): Ditto. * tree-vectorizer.c (vectorize_loops): Ditto. * tree-optimize.c: Include cfgloop.h. (execute_todo): Choose whether to call cleanup_tree_cfg or cleanup_tree_cfg_loop. * tree-ssa-loop-ivcanon.c (canonicalize_loop_induction_variables, (tree_unroll_loops_completely): Enable cleanup_tree_cfg_loop call. * tree-ssa-loop-unswitch.c (tree_ssa_unswitch_loops): Enable cleanup_tree_cfg_loop call. * tree-ssa-loop-manip.c (find_uses_to_rename_bb): New function. (find_uses_to_rename, rewrite_into_loop_closed_ssa): Support work on part of cfg. From-SVN: r96232
2005-03-10Daily bump.GCC Administrator1-1/+1
From-SVN: r96228
2005-03-10re PR inline-asm/20314 (Bogus differ in number of alternatives error)Jakub Jelinek6-3/+185
PR inline-asm/20314 * gimplify.c (gimplify_asm_expr): Handle input/output constraints with multiple alternatives. * stmt.c (parse_output_constraint): Fix a typo. * gcc.dg/torture/pr20314-1.c: New test. * gcc.dg/torture/pr20314-2.c: New test. From-SVN: r96222
2005-03-09xtensa.h (TRAMPOLINE_TEMPLATE): Use "no-transform" assembly directive ↵Bob Wilson2-2/+7
instead of deprecated "no-generics". * config/xtensa/xtensa.h (TRAMPOLINE_TEMPLATE): Use "no-transform" assembly directive instead of deprecated "no-generics". From-SVN: r96218
2005-03-09s390.c (s390_secondary_output_reload_class): Adapt check for non-offsettable ↵Ulrich Weigand5-5/+59
memory references to cope with outstanding... * config/s390/s390.c (s390_secondary_output_reload_class): Adapt check for non-offsettable memory references to cope with outstanding reload replacements. * config/s390/s390.md ("reload_outti"): Call find_replacement to avoid losing outstanding address reloads. ("reload_outdi", "reload_outdf"): Likewise. testsuite/ChangeLog: * gcc.dg/20050309-1.c: New test. From-SVN: r96214
2005-03-09builtins.c (fold_builtin_cbrt, [...]): Rearrange code.Kaveh R. Ghazi5-83/+161
* builtins.c (fold_builtin_cbrt, fold_builtin_pow): Rearrange code. Add more cbrt transformations. testsuite: * gcc.dg/builtins-10.c: Reactivate disabled test. * gcc.dg/torture/builtin-power-1.c: Likewise. Also add tests for new cbrt transformations. From-SVN: r96206
2005-03-09* fold-const.c (fold_unary_to_constant): Add FIX_ROUND_EXPR case.Kaveh R. Ghazi2-0/+5
From-SVN: r96204
2005-03-09fold-const.c (fold_unary, [...]): Take decomposed arguments, code, type, ↵Kazu Hirata2-16/+18
op0, and op1 in case of fold_binary. * fold-const.c (fold_unary, fold_binary): Take decomposed arguments, code, type, op0, and op1 in case of fold_binary. (fold): Update calls to fold_unary and fold_binary. From-SVN: r96202
2005-03-09fold-const.c (fold_unary, [...]): Return NULL_TREE when a given tree is not ↵Kazu Hirata2-33/+44
simplified. * fold-const.c (fold_unary, fold_binary, fold_ternary): Return NULL_TREE when a given tree is not simplified. (fold): Return the original tree when any of the functions mentioned above NULL_TREE. From-SVN: r96201
2005-03-09re PR java/20338 (Program compiled with gcj crashes when accessing private ↵Ranjit Mathew2-2/+9
static method from nested class) PR java/20338 * decl.c (finish_method): Emit _Jv_InitClass for private static methods inside inner classes as well. From-SVN: r96200
2005-03-09re PR c++/20208 (No array-to-pointer decay happens for template functions)Mark Mitchell4-0/+28
PR c++/20208 * pt.c (tsubst_decl): Apply array-to-pointer and function-to-pointer conversions to function arguments. (regenerate_decl_from_template): Likewise. PR c++/20208 * g++.dg/template/array13.C: New test. From-SVN: r96197
2005-03-09builtins.c (fold_builtin_unordered_cmp): Change prototype to take a fndecl ↵Roger Sayle2-11/+17
and an arglist instead of a CALL_EXPR, exp. * builtins.c (fold_builtin_unordered_cmp): Change prototype to take a fndecl and an arglist instead of a CALL_EXPR, exp. From-SVN: r96196
2005-03-09re PR c++/16859 (Empty initializer for array of unknown size spuriously ↵Paolo Carlini2-0/+10
accepted) 2005-03-09 Paolo Carlini <pcarlini@suse.de> PR c++/16859 * g++.dg/init/brace4.C: New test. From-SVN: r96195
2005-03-09re PR c++/16859 (Empty initializer for array of unknown size spuriously ↵Paolo Carlini2-4/+15
accepted) 2005-03-09 Paolo Carlini <pcarlini@suse.de> PR c++/16859 * decl.c (complete_array_type): In pedantic mode, return 3 for an empty initializer list as the initializer for an array of unknown bound (8.5.1/4). (maybe_deduce_size_from_array_init): Fix final test to use the above. From-SVN: r96194
2005-03-09cfgbuild.c (state, [...]): Move just before make_edges.Kazu Hirata2-19/+35
* cfgbuild.c (state, STATE, SET_STATE, BLOCK_USED_BY_TABLEJUMP, FULL_STATE): Move just before make_edges. (make_edges): Speed up by skipping blocks with BLOCK_ORIGINAL. (find_basic_blocks): Set the state of each basic block to BLOCK_NEW. From-SVN: r96193
2005-03-09re PR c++/20186 (ICE with static_cast and type dependent variable (templates))Nathan Sidwell4-1/+69
cp: PR c++/20186 * pt.c (contains_dependent_cast_p): New. (fold_non_dependent_expr): Call it. testsuite: PR c++/20186 * g++.dg/template/non-dependent12.C: New. From-SVN: r96190
2005-03-09* tree-ssa-loop-im.c (lhs): Remove.Kazu Hirata2-2/+3
From-SVN: r96189
2005-03-09* tree-ssa-alias.c (may_alias_p): Remove v_ann.Kazu Hirata2-2/+3
From-SVN: r96188
2005-03-09* tree-sra.c (decide_block_copy): Remove inst_count.Kazu Hirata2-2/+3
From-SVN: r96187