- 12 Jul, 2005 1 commit
-
-
[[Split portion of a mixed commit.]] From-SVN: r101903.2
GCC Administrator committed
-
- 11 Jul, 2005 19 commits
-
-
* tree-flow.h (remove_empty_loops, single_dom_exit): Declare. * passes.c (init_optimization_passes): Add pass_empty_loop. * tree-pass.h (pass_empty_loop): Declare. * tree-ssa-loop-ivcanon.c (empty_loop_p, remove_empty_loop, try_remove_empty_loop, remove_empty_loops): New functions. * tree-ssa-loop-ivopts.c (single_dom_exit): Export. * tree-ssa-loop.c (tree_ssa_empty_loop, pass_empty_loop): New. * gcc.dg/tree-ssa/loop-10.c: New test. From-SVN: r101901
Zdenek Dvorak committed -
PR middle-end/16719 PR middle-end/18421 * config/m68k/m68k.h (HARD_REGNO_MODE_OK): Disallow bytes in address registers. * config/m68k/m68k.c (hard_regno_mode_ok): Likewise. * config/m68k/m68k.md: Replace 's' with 'i' in 4th alternative of addsi3_5200. From-SVN: r101900
Peter Barada committed -
From-SVN: r101896
Ian Lance Taylor committed -
* doc/tree-ssa.texi (Cleanups): Improve description of TRY_FINALLY_EXPR. (GIMPLE Exception Handling): Clarify TRY_CATCH_EXPR cases. From-SVN: r101895
Ian Lance Taylor committed -
2005-07-11 Daniel Berlin <dberlin@dberlin.org> * print-tree.c (print_node): Use DECL_ARGUMENT_FLD. * tree.h (DECL_ARGUMENT_FLD): New macro. 2005-07-11 Daniel Berlin <dberlin@dberlin.org> Fix PR tree-optimization/22404 * tree-ssa-structalias.c (create_variable_info_for): Use correct offset. From-SVN: r101894
Daniel Berlin committed -
From-SVN: r101893
Kazu Hirata committed -
* config/bfin/bfin.md (cmpsi, compare_eq, compare_ne, compare_lt, compare_le, compare_leu, compare_ltu): Use reg_or_const_int_operand for second comparison operand. * config/bfin/predicates.md (reg_or_const_int_operand): New. From-SVN: r101881
Bernd Schmidt committed -
* config/bfin/bfin.md (define_attr "type"): Add "sync". (define_insn_reservation "alu"): Likewise. (csync, ssync): Now of type sync. * config/bfin/bfin.h (TARGET_DEFAULT): Defaults to -mcsync-anomaly -mspecld-anomaly. * config/bfin/bfin.opt (mcsync): Remove. (mcsync-anomaly, mspecld-anomaly): Add. * config/bfin/bfin.c: Include "insn-codes.h". (bfin_reorg): Extend to handle the CSYNC anomaly as well. (TARGET_DEFAULT_TARGET_FLAGS): New. * doc/invoke.texi: Document -mcsync-anomaly, -mspecld-anomaly. From-SVN: r101880
Bernd Schmidt committed -
* basic-block.h: Give the BB flags enum a name, bb_flags. Add new flags BB_FORWARDER_BLOCK, and BB_NONTHREADABLE_BLOCK. * cfgcleanup.c (enum bb_flags): Remove here. (BB_FLAGS, BB_SET_FLAG, BB_CLEAR_FLAG): Remove. (notice_new_block): Set/test bb->flags instead of aux via BB_FLAGS. (update_forwarder_flag): Likewise. (thread_jump): Likewise. (try_forward_edges): Likewise. (try_optimize_cfg): Likewise. Clear bb->flags before updating the forwarder flags. Don't clear bb->aux for all basic blocks. Only reset the BB_FORWARDER_BLOCK and BB_NONTHREADABLE_BLOCK flags. From-SVN: r101876
Steven Bosscher committed -
ostream.tcc (basic_ostream<>::operator<<(long), [...]): Don't deal with oct and hex and casts to unsigned here... 2005-07-11 Paolo Carlini <pcarlini@suse.de> * include/bits/ostream.tcc (basic_ostream<>::operator<<(long), basic_ostream<>::operator<<(long long)): Don't deal with oct and hex and casts to unsigned here... * include/bits/locale_facets.tcc (__int_to_char(_CharT*, long, const _CharT*, ios_base::fmtflags), __int_to_char(_CharT*, long long, const _CharT*, ios_base::fmtflags)): ... do that here, instead, as per Table 57. (num_put<>::_M_insert_int): Tidy treatment of numeric base and sign. * include/std/std_ostream.h (operator<<(short), operator<<(int)): Adjust logic, as per the letter of the resolution of DR117 [WP]. * testsuite/22_locale/num_put/put/char/10.cc: New. * testsuite/22_locale/num_put/put/wchar_t/10.cc: Likewise. * testsuite/27_io/basic_ostream/inserters_arithmetic/char/7.cc: Likewise. * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/7.cc: Likewise. From-SVN: r101872
Paolo Carlini committed -
2005-07-11 Richard Guenther <rguenther@suse.de> * config/i386/i386.opt: New target option -msseregparm. * config/i386/i386.c (override_options): Error out for -msseregparm but no SSE support. (ix86_function_sseregparm): Check for global sseregparm. * doc/invoke.texi: Document -msseregparm. From-SVN: r101871
Richard Guenther committed -
(m32rle-*-linux*): Ditto. From-SVN: r101869
Kazuhiro Inaoka committed -
2005-07-11 Paolo Bonzini <bonzini@gnu.org> PR ada/22340 * Makefile.tpl (POSTSTAGE1_FLAGS_TO_PASS): Fix pasto. * Makefile.in: Regenerate. From-SVN: r101868
Paolo Bonzini committed -
* trans-stmt.c (gfc_trans_forall_loop): Clear maskindex before the outermost loop. (gfc_trans_assign_need_temp, gfc_trans_pointer_assign_need_temp, gfc_trans_forall_1, gfc_evaluate_where_mask, gfc_trans_where_2): Don't clear maskindexes here. * gfortran.fortran-torture/execute/forall_7.f90: New test. From-SVN: r101865
Jakub Jelinek committed -
cfgexpand.c (stack_protect_classify_type): Use TYPE_SIZE_UNIT (type) instead of TYPE_MAX_VALUE (TYPE_DOMAIN (type)) to get... * cfgexpand.c (stack_protect_classify_type): Use TYPE_SIZE_UNIT (type) instead of TYPE_MAX_VALUE (TYPE_DOMAIN (type)) to get array size in bytes. From-SVN: r101864
Jakub Jelinek committed -
PR middle-end/22239 PR target/20126 * loop.c (loop_givs_rescan): Use expand_simple_binop instead of gen_rtx_MINUS to handle non-replaceable (plus ((x) (const)). From-SVN: r101863
John David Anglin committed -
2005-07-07 Daniel Berlin <dberlin@dberlin.org> * tree-ssa-structalias.c (struct variable_info): Heapify complex. (varmap): Heapify varmap. (constraints): Heapify constraints. (struct constraint_graph): Heapify succs and preds. (constraint_vec_find): Update for heapification. (constraint_set_union): Ditto. (insert_into_complex): Ditto. (constraint_edge_vec_find): Ditto. (erase_graph_self_edge): Ditto. (add_graph_edge): Ditto. (get_graph_weights): Ditto. (merge_graph_nodes): Ditto. (build_constraint_graph): Ditto. (topo_visit): Ditto. (solve_graph): Ditto. (create_variable_info_for): Ditto. (init_base_vars): Ditto. (delete_points_to_sets): Free graph, varmap, and complex constraints. (condese_varmap_nodes): Free complex vector. (clear_edges_for_node): Clear succs and preds vector. From-SVN: r101862
Daniel Berlin committed -
2005-07-10 Daniel Berlin <dberlin@dberlin.org> * tree-ssa-structalias.c (update_alias_info): Change counting of references to not include vdefs. From-SVN: r101861
Daniel Berlin committed -
[[Split portion of a mixed commit.]] From-SVN: r101859.2
GCC Administrator committed
-
- 10 Jul, 2005 7 commits
-
-
2005-07-10 Andreas Tobler <a.tobler@schweiz.ch> * testsuite/libffi.call/cls_5_1_byte.c: New test file. * testsuite/libffi.call/cls_6_1_byte.c: Likewise. * testsuite/libffi.call/cls_7_1_byte.c: Likewise. From-SVN: r101855
Andreas Tobler committed -
2005-07-10 Daniel Berlin <dberlin@dberlin.org> * tree-ssa-alias.c (free_used_part_map): Add missing free. (up_insert): Ditto. From-SVN: r101854
Daniel Berlin committed -
* pa.c (pa_commutative_p): Make PLUS commutative when TARGET_NO_SPACE_REGS is true. From-SVN: r101853
John David Anglin committed -
From-SVN: r101849
Joseph Myers committed -
* gcc.target/mips/mips.exp (is_gp32_flag): New procedure. (dg-mips-options): Use it. From-SVN: r101847
Richard Sandiford committed -
* Makefile.in (tree-ssa-alias.o): Depend on tree-ssa-structalias.h * tree-cfg.c (CHECK_OP): Only test for is_gimple_val. * tree-dfa.c (dump_subvars_for): New. (debug_subvars_for): New. (dump_variable): Show subvariables if VAR has them. * tree-flow-inline.h (get_subvar_at): New. (overlap_subvar): Change offset and size to unsigned HOST_WIDE_INT. * tree-flow.h (struct ptr_info_def): Remove field pt_malloc. Update all users. (struct subvar): Change fields offset and size to unsigned HOST_WIDE_INT. (dump_subvars_for): Declare. (debug_subvars_for): Declare. (get_subvar_at): Declare. (okay_component_ref_for_subvars): Change 2nd and 3rd argument to unsigned HOST_WIDE_INT *. (overlap_subvar): Likewise. * tree-gimple.c (is_gimple_reg): Always return false for SFTs and memory tags. * tree-pass.h (pass_build_pta, pass_del_pta): Remove. Update all callers. * tree-ssa-alias.c: Include tree-ssa-structalias.h. (compute_may_aliases): Call compute_points_to_sets. (collect_points_to_info_for): Remove. (compute_points_to_and_addr_escape): Remove. (delete_alias_info): Call delete_points_to_sets. (compute_flow_sensitive_aliasing): If the call to find_what_p_points_to returns false, call set_pt_anything. (add_may_alias): Set TREE_ADDRESSABLE when adding a new alias. (set_pt_anything): Clear pi->pt_vars. (set_pt_malloc): Remove. (merge_pointed_to_info): Remove. (add_pointed_to_expr): Remove. (add_pointed_to_var): Remove. (collect_points_to_info_r): Remove. (is_escape_site): Make extern. (create_sft): New. (create_overlap_variables_for): Call it. * tree-ssa-copy.c (merge_alias_info): Never merge flow-sensitive alias information. * tree-ssa-operands.c (get_expr_operands): Adjust variables offset and size to be unsigned HOST_WIDE_INT. (add_to_addressable_set): Rename from note_addressable. Set TREE_ADDRESSABLE as the variables are added to the set. Update all users. (add_stmt_operand): Do not try to micro-optimize unmodifiable operands into VUSEs when adding V_MAY_DEFs for members in an alias set. * tree-ssa-operands.h (add_to_addressable_set): Declare. * tree-ssa-structalias.c: Include tree-ssa-structalias.h last. (struct variable_info): Add bitfield is_heap_var. (var_anyoffset, anyoffset_tree, anyoffset_id): Declare. (new_var_info): Initialize is_heap_var. (get_constraint_for): Add HEAP variables to the symbol table. Mark them with is_heap_var. (update_alias_info): New. Taken mostly from the old compute_points_to_and_addr_escape. (handle_ptr_arith): New. (find_func_aliases): Call update_alias_info. Call handle_ptr_info for tcc_binary expressions. Call mark_stmt_modified. (create_variable_info_for): If DECL has subvars, do not create variables for its subvars. Always add all the fields. (set_uids_in_ptset): If the solution includes ANYOFFSET and SFTs, then add all the SFTs of the structure. If VI->DECL is an aggregate with subvariables, add the SFT at VI->OFFSET. (find_what_p_points_to): If VI is an artificial variable, translate to bitfields in SSA_NAME_PTR_INFO. If the solution is empty, set pi->pt_vars to NULL (init_base_vars): Create ANYOFFSET. (compute_points_to_sets): Rename from create_alias_vars. Make extern. (pass_build_pta): Remove. (delete_points_to_sets): Rename from delete_alias_vars. (pass_del_pta): Remove. * tree-ssa-structalias.h (struct alias_info): Move from tree-ssa-alias.h. (NUM_REFERENCES, NUM_REFERENCES_CLEAR, NUM_REFERENCES_INC, NUM_REFERENCES_SET): Likewise. (compute_points_to_sets, delete_points_to_sets): Declare. testsuite/ChangeLog * gcc.dg/tree-ssa/pta-fp.c: Use -fdump-tree-alias1. From-SVN: r101841
Diego Novillo committed -
[[Split portion of a mixed commit.]] From-SVN: r101839.2
GCC Administrator committed
-
- 09 Jul, 2005 13 commits
-
-
2005-07-09 Jerry DeLisle <jvdelisle@verizon.net> PR libfortran/21875 (FM111.f) * io/read.c (next_char): Return a ' ' character when BLANK_ZERO or BLANK_NULL are active. (read_decimal): Interpret ' ' character correctly for BZ or BN. (read_radix): Interpret ' ' character correctly for BZ or BN. (read_f): Interpret ' ' character correctly for BZ or BN. * gfortran.dg/test (fmt_read_bz_bn.f90): New test case. From-SVN: r101837
Jerry DeLisle committed -
2005-07-09 Andrew Pinski <pinskia@physics.uc.edu> * decl.c (components_to_record): Use DECL_FCONTEXT instead of DECL_SECTION_NAME. (compare_field_bitpos): Likewise. From-SVN: r101834
Andrew Pinski committed -
* config/alpha/alpha.c (emit_insxl, alpha_expand_compare_and_swap_12, alpha_split_compare_and_swap_12, alpha_expand_lock_test_and_set_12, alpha_split_lock_test_and_set_12): New functions. * config/alpha/alpha-protos.h: Update. * config/alpha/alpha.md (UNSPEC_MB, UNSPEC_ATOMIC, UNSPEC_CMPXCHG, UNSPEC_XCHG): Rename from UNSPECV_FOO. * config/alpha/sync.md (I12MODE): New. (memory_barrier, mb_internal): Use unspec instead of unspec_volatile. (sync_<fetchop_name><I48MODE>): Likewise. (sync_nand<I48MODE>): Likewise. (sync_old_<fetchop_name><I48MODE>): Likewise. (sync_new_<fetchop_name><I48MODE>): Likewise. (sync_old_nand<I48MODE>, sync_new_nand<I48MODE>): Likewise. (sync_compare_and_swap<I48MODE>): Likewise. (sync_lock_test_and_set<I48MODE>): Likewise. (sync_compare_and_swap<I12MODE>): New. (sync_compare_and_swap<I12MODE>_1): New. (sync_lock_test_and_set<I12MODE>): New. (sync_lock_test_and_set<I12MODE>_1): New. * lib/target-supports.exp (check_effective_target_sync_char_short): Add alpha. From-SVN: r101833
Richard Henderson committed -
PR 21356 PR 22332 * passes.c (execute_todo): Cleanup the CFG before updating SSA. From-SVN: r101832
Diego Novillo committed -
2005-07-09 Andrew Pinski <pinskia@physics.uc.edu> * utils.c (create_var_decl): Only set DECL_COMMON on VAR_DECLs. Only set SET_DECL_ASSEMBLER_NAME on VAR_OR_FUNCTION_DECL_P. From-SVN: r101831
Andrew Pinski committed -
2005-07-09 Andrew Pinski <pinskia@physics.uc.edu> * cp-lang.c (shadowed_var_for_decl, decl_shadowed_for_var_lookup, decl_shadowed_for_var_insert): Move over to cp-objcp-common.c. (cp_init_ts): Call init_shadowed_var_for_decl. Remove include of gt-cp-cp-lang.h. * cp-objcp-common.c (shadowed_var_for_decl, decl_shadowed_for_var_lookup, decl_shadowed_for_var_insert): Moved from cp-lang.c. (init_shadowed_var_for_decl): New function to initialize shadowed_var_for_decl. Include gt-cp-cp-objcp-common.h. * Make-lang.in (gt-cp-lang.h): Remove. (gt-cp-cp-objcp-common.h): Add. (cp/cp-lang.o): Remove dependancy on gt-cp-lang.h. (cp/cp-objcp-common.o): Add dependancy on gt-cp-cp-objcp-common.h. * config-lang.in (gtfiles): Remove cp-lang.c and Add cp-objcp-common.c. * cp-tree (init_shadowed_var_for_decl): Add prototype. 2005-07-09 Andrew Pinski <pinskia@physics.uc.edu> * config-lang.in (gtfiles): Add cp-objcp-common.c. * objcp-lang.c (objcxx_init_ts): New function. (LANG_HOOKS_INIT_TS): Define. From-SVN: r101830
Andrew Pinski committed -
2005-07-07 Francois-Xavier Coudert <coudert@clipper.ens.fr> Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/22217 * io/write.c (extract_unit): New function; extract ints as unsigned signed int of the correct size. * io/write.c (write_int): Use it. * runtime/error.c: Adjust copyright years. Adjust size of buffer to maximum that can occur. 2005-07-07 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/22217 * gfortran.dg/negative-z-descriptor.f90: New test. From-SVN: r101829
Thomas Koenig committed -
* config/i386/i386.c (output_set_got): Don't omit OFFSET FLAT: in Intel syntax add %reg, OFFSET FLAT:_GLOBAL_OFFSET_TABLE_+(.-.Lx). From-SVN: r101819
Jakub Jelinek committed -
PR target/21656 * config/mips/elf.h (NO_IMPLICIT_EXTERN_C): Define. From-SVN: r101818
Richard Sandiford committed -
* config/rs6000/sync.md (load_locked_<mode>): Use Z for memory_operand constraint. (store_conditional_<mode>): Same. (sync_compare_and_swap<mode>): Same. (sync_lock_test_and_set<mode>): Same. From-SVN: r101813
David Edelsohn committed -
* config/cris/cris-protos.h (cris_gotless_symbol, cris_got_symbol) (cris_symbol): Remove prototypes for removed functions. (cris_pic_symbol_type_of, cris_valid_pic_const) (cris_expand_pic_call_address): Prototypes for new functions. * config/cris/cris/cris.c (cris_pic_sympart_only): Remove unused variable. (cris_print_operand) <case 'v', 'P'>: Remove cases for unused modifiers. <case ':'>: Add case for new punctuation character. <case 'd'>: Temporarily set flag_pic = 2 instead of incorrectly emitting (extra) PIC modifier. <case UNSPEC>: Do not assert for PLT. (cris_initial_frame_pointer_offset, cris_simple_epilogue) (cris_expand_prologue, cris_expand_epilogue): Check for pic_offset_table_rtx usage instead of taking current_function_uses_pic_offset_table as the final word. (cris_rtx_costs, cris_address_cost, cris_side_effect_mode_ok): Remove flag_pic difference. (cris_valid_pic_const, cris_pic_symbol_type_of): New functions, the moral equivalents of... (cris_symbol, cris_gotless_symbol, cris_got_symbol): Remove functions. (cris_legitimate_pic_operand): Just call cris_valid_pic_const. (cris_handle_option): Mark ARG as unused. (cris_expand_pic_call_address): New worker function for "call", "call_value". (cris_asm_output_symbol_ref, cris_asm_output_label_ref): Do not output PIC constructs here. (cris_output_addr_const_extra): Changes for emitting PIC modifiers as symbol-specific modifers, not whole or part of operands. * config/cris/cris/cris.h (EXTRA_CONSTRAINT): Remove 'U' case. (EXTRA_CONSTRAINT_S): Changed semantics: allow only CONST-wrapped constants and flag_pic. (CONSTANT_INDEX_P): Adjust for new functions. (enum cris_pic_symbol_type): New helper type. (PRINT_OPERAND_PUNCT_VALID_P): Add ':'. * config/cris/cris/cris.md (CRIS_UNSPEC_GOTREL) (CRIS_UNSPEC_GOTREAD, CRIS_UNSPEC_PLTGOTREAD): New define_constants. ("movsi"): Emit actual instructions for GOT and relative access. ("*movsi_got_load"): New pattern to set up the register holding the GOT pointer. ("*movsi_internal"): Operand 1 is not a plain general_operand. Adjust FIXME for 'S'. <output for 'S' alternative>: Sanity-check UNSPEC types for PIC. Use "movs" for -fpic cases. ("addsi3"): Add alternative for 'S'; use adds.w when possible. ("uminsi3","*expanded_call_value"): Remove 'S' alternative. ("call", "call_value"): Just call cris_expand_pic_call_address for PIC addresses. ("*expanded_call_no_gotplt", "*expanded_call_value_no_gotplt"): Remove special pattern. ("*expanded_call_side", "*expanded_call_value_side"): New patterns. (gotplt-to-plt, gotplt-to-plt-side-call) (gotplt-to-plt-side-call-value, gotplt-to-plt-side): New peephole2:s. * config/cris/cris/predicates.md ("cris_general_operand_or_gotless_symbol"): Remove unused predicate. ("cris_general_operand_or_symbol"): Adjust for new functions. From-SVN: r101812
Hans-Peter Nilsson committed -
2005-07-08 Andrew Pinski <pinskia@physics.uc.edu> * config/darwin.h (TARGET_C99_FUNCTIONS): Define to 1. From-SVN: r101809
Andrew Pinski committed -
[[Split portion of a mixed commit.]] From-SVN: r101807.2
GCC Administrator committed
-