- 20 Oct, 2000 17 commits
-
-
* regrename.c (rr_replace_reg): Rewrite to use recog_data to perform substitutions, and apply_change_group to see if it worked. From-SVN: r36971
Richard Henderson committed -
* fold-const.c (force_fit_type): Unsigned values can overflow if they are sizetype. (int_const_binop): Don't use cache if overflows. * cp/typeck.c (dubious_conversion_warning): Suppress if TYPE_IS_SIZETYPE. From-SVN: r36970
Richard Kenner committed -
From-SVN: r36969
Richard Henderson committed -
From-SVN: r36968
Richard Kenner committed -
* combine.c (struct undo): Change int to unsigned int. (do_SUBST_INT): Args are unsigned int. (make_extraction, force_to_mode): Use proper type when forming mask. (make_field_assignment): Likewise. From-SVN: r36967
Richard Kenner committed -
2000-10-20 Jeffrey Oldham <oldham@codesourcery.com> * decl.c (revert_static_member_fn): Fixed typo. From-SVN: r36966
Jeffrey Oldham committed -
c-common.c (check_format_info_recurse): Extract string constant initializers from non-volatile constant arrays and... * c-common.c (check_format_info_recurse): Extract string constant initializers from non-volatile constant arrays and check them as formats. * c-typeck.c (decl_constant_value): Don't check pedantic or check for DECL_MODE (decl) != BLKmode. (decl_constant_value_for_broken_optimization): New function which includes these checks. (default_conversion, convert_for_assignment, digest_init): Use decl_constant_value_for_broken_optimization instead of decl_constant_value. testsuite: * gcc.dg/format-array-1.c: New test. From-SVN: r36965
Joseph Myers committed -
From-SVN: r36964
Mark Mitchell committed -
* config/avr/avr-protos.h (avr_output_bld): New. (out_shift_with_cnt): Add t_len argument. * config/avr/avr.c (avr_num_arg_regs): Remove -mpack-args. (output_movqi, output_movhi, output_movsisf): Optimize loading any constant with exactly one bit set to NO_LD_REGS. (out_shift_with_cnt): Optimize output code for size or speed, depending on optimize_size. Handle small shift counts as well (if not hand-optimized in ?sh??i3_out). Shifts can be done with or without a scratch register, with help of __tmp_reg__ or __zero_reg__ if necessary. Add T_LEN argument to pass the length of TEMPLATE in words, return total insn length in *LEN. (ashlqi3_out, ashrqi3_out, lshrqi3_out): Change all calls to out_shift_with_cnt to work with the above change. (ashlhi3_out, ashlsi3_out, ashrhi3_out, ashrsi3_out, lshrhi3_out, lshrsi3_out): Likewise. Optimize more known shift count cases. Remove cases already well optimized in out_shift_with_cnt. (avr_output_bld): New function. * config/avr/avr.h (MASK_PACK_ARGS, TARGET_PACK_ARGS): Remove. (TARGET_SWITCHES): Remove -mpack-args backward compatibility. * config/avr/avr.md (*reload_inqi, *reload_inhi, *reload_insi): Add reload_completed to insn condition - only for peepholes. (ashlqi3, ashrqi3, lshrqi3): Correct insn length for shift counts in a register or memory. (ashlhi3, ashlsi3, ashrhi3, ashrsi3, lshrhi3, lshrsi3): Likewise. Do not require a scratch register. (*ashlhi3_const, *ashlsi3_const, *ashrhi3_const, *ashrsi3_const, *lshrhi3_const, *lshrsi3_const): New insns and matching peepholes. Optimize shifts by known count using a scratch register, but only if one is still available after register allocation. From-SVN: r36963
Marek Michalkiewicz committed -
From-SVN: r36962
Alexandre Oliva committed -
From-SVN: r36961
Jeff Law committed -
From-SVN: r36960
J. David Anglin committed -
codecvt_unicode_char.cc (test01): Adjust creation of state_type for unicode_codecvt to take into account the byte... 2000-10-19 Benjamin Kosnik <bkoz@purist.soma.redhat.com> * testsuite/22_locale/codecvt_unicode_char.cc (test01): Adjust creation of state_type for unicode_codecvt to take into account the byte order markings. Add distinct tests for UCS-2BE and UCS-2LE. * testsuite/22_locale/codecvt_unicode_wchar_t.cc (test01): Same. * include/bits/codecvt.h (__enc_traits): Add support for encodings that need a byte order marker. Needed for correct unicode support. * src/locale.cc: Remove explicit qualification std::. (locale::locale(const char* __name)): Revert, as named locale support not finished. * src/localename.cc (locale::_Impl:: _Impl(size_t __numfacets, size_t __refs, bool __has_name = false, string __name): Move default argument... * include/bits/localefwd.h: Here. From-SVN: r36959
Benjamin Kosnik committed -
* class.c (subobject_offset_fn): New type. (dfs_record_base_offsets): Remove. (record_base_offsets): Likewise. (dfs_search_base_offsets): Likewise. (record_subobject_offset): New function. (check_subobject_offset): Likewise. (walk_subobject_offsets): Likewise. (record_subobject_offsets): Likewise. (layout_conflict_p): Reimplement. (layout_nonempty_base_or_field): Correct handling of type conflicts during layout. (layout_empty_base): Likewise. (build_base_field): Adjust to handle new representation of empty base offset table. (build_base_fields): Likewise. (layout_virtual_bases): Likewise. (splay_tree_compare_integer_csts): New function. (layout_class_type): Use a splay_tree, rather than a varray, to represent the offsets of empty bases. From-SVN: r36958
Mark Mitchell committed -
* alias.c: (mark_constant_function): Don't check pure functions. Initialize and end alias analysis. (nonlocal_mentioned_p): Rename from nonlocal_reference_p. Don't make a special exception for recursion. Handle UNSPEC_VOLATILE. Don't assume ASM_OPERANDS is non-local unless it's volatile. * local-alloc.c (equivalence): New structure. (reg_equiv): Define. (contains_replace_regs): Remove array and use field in reg_equiv. (memref_referenced_p): Likewise. (no_equiv): Likewise. (update_equiv_regs): Likewise. (equiv_init_varies_p, equiv_init_movable_p): New functions. (update_equiv_regs): Use them. Use rtx_varies_p instead of function_invariant_p. Process insns from end to beginning. Allow a REG_EQUIV insn within the same loop as a use to be moved, also allow it to be moved out of a loop. Update REG_DEAD notes when substituting into an insn. From-SVN: r36957
John Wehle committed -
parse.y (find_most_specific_methods_list): Select the only non-abstract method even if max has been set. 2000-07-18 Bryce McKinlay <bryce@albatross.co.nz> * parse.y (find_most_specific_methods_list): Select the only non-abstract method even if max has been set. Fixes gcj/285, gcj/298. (http://gcc.gnu.org/ml/gcc-patches/2000-10/msg00646.html) From-SVN: r36956
Bryce McKinlay committed -
* c-decl.c (start_decl): Check for error_mark_node type before using COMPLETE_TYPE_P. (finish_decl): Likewise. Don't give an error if decl type is already error_mark_node. From-SVN: r36955
Jim Wilson committed
-
- 19 Oct, 2000 9 commits
-
-
* haifa-sched.c (compute_trg_info): Add explanatory comments. New local update_blocks. Use update_blocks to remove duplicates when computing update blocks. Check for bblst_table overflow. (schedule_block): Add explanatory comment. Reduce bblst_size by factor of 2. * config/ia64/ia64.md (movdi_symbolic): Document loss of REG_LABEL notes. From-SVN: r36954
Jim Wilson committed -
* cp-tree.h (DECL_ANTICIPATED): Don't require a FUNCTION_DECL. * decl.c (select_decl): Don't return declarations that are DECL_ANTICIPATED. From-SVN: r36953
Mark Mitchell committed -
From-SVN: r36952
Chandrakala Chavva committed -
From-SVN: r36951
Chandrakala Chavva committed -
From-SVN: r36950
Chandrakala Chavva committed -
From-SVN: r36949
Jan Hubicka committed -
2000-07-19 Alexandre Petit-Bianco <apbianco@cygnus.com> * parse.y (process_imports): Consider that one might be trying to import an innerclass. Fixes gcj/254 (http://gcc.gnu.org/ml/gcc-patches/2000-10/msg00631.html) From-SVN: r36948
Alexandre Petit-Bianco committed -
From-SVN: r36947
Jeff Law committed -
2000-10-18 Alexandre Petit-Bianco <apbianco@cygnus.com> * gjavah.c (add_class_decl): Removed unused variables `tname', `tlen' and `name_index'. * java-tree.h (BUILD_FILENAME_IDENTIFIER_NODE): New macro. * jcf-parse.c (jcf_parse_source): Use it and set EXPR_WFL_FILENAME in `wfl_operator' with value. (yyparse): Use BUILD_FILENAME_IDENTIFIER_NODE. (jcf_figure_file_type): Fixed identation. * lex.c (java_get_line_col): Use EOF. Tuned `^' placement. * parse.y (analyze_clinit_body): New function. (static_initializer:): Reset `current_static_block'. (java_parser_context_restore_global): Set EXPR_WFL_FIILENAME_NODE in `wfl_operator' with new value. (lookup_cl): Use EXPR_WFL_FILENAME. (maybe_yank_clinit): Handle bogus <clinit> bodies, call analyze_clinit_body. (build_outer_field_access): Access to this$<n> built from current_class, not its outer context. (build_access_to_thisn): Fixed leading comment. Tidied things up. (resolve_qualified_expression_name): Handle `T.this' and `T.this.f()'. (patch_method_invocation): Use `is_static_flag' when already initialized. (patch_newarray): Removed assignment in ternary operator. (http://gcc.gnu.org/ml/gcc-patches/2000-10/msg00629.html) From-SVN: r36946
Alexandre Petit-Bianco committed
-
- 18 Oct, 2000 14 commits
-
-
2000-10-18 Benjamin Kosnik <bkoz@purist.soma.redhat.com> * libsupc++/Makefile.am (exception): Change exception.cc to exception_support.cc. (CXXLINK): Remove bogus --tag CC. * libsupc++/Makefile.in: Regenerate. * libsupc++/exception.cc: Move to... * libsupc++/exception_support.cc: ...here. * src/Makefile.am: Remove bogus --tag CC. * src/Makefile.in: Regenerate. * include/bits/locale_facets.tcc (use_facet): Simplify. * include/bits/locale_facets.h (use_facet<ctype<char> >): Correct use_facet declaration. Replace 'const ctype<T>' with ctype<T>. (use_facet<ctype<wchar_t> >): Same. * src/locale-inst.cc: Remove explicit instantiation. * src/locale.cc: Correct signature here too. (_Bad_use_facet::what()): Correct error string. * include/bits/localefwd.h: Correct comment. * mkcheck.in (C_DIR): Change libsupc++/include to libsupc++. From-SVN: r36945
Benjamin Kosnik committed -
2000-10-18 Chip Salzenberg <chip@valinux.com> * libio/libio.h (_IO_USER_LOCK): Define. From-SVN: r36944
Chip Salzenberg committed -
2000-10-18 Benjamin Kosnik <bkoz@purist.soma.redhat.com> * libsupc++/Makefile.am (exception): Change exception.cc to exception_support.cc. (CXXLINK): Remove bogus --tag CC. * libsupc++/Makefile.in: Regenerate. * libsupc++/exception.cc: Move to... * libsupc++/exception_support.cc: ...here. * src/Makefile.am: Remove bogus --tag CC. * src/Makefile.in: Regenerate. * include/bits/locale_facets.tcc (use_facet): Simplify. * include/bits/locale_facets.h (use_facet<ctype<char> >): Correct use_facet declaration. Replace 'const ctype<T>' with ctype<T>. (use_facet<ctype<wchar_t> >): Same. * src/locale-inst.cc: Remove explicit instantiation. * src/locale.cc: Correct signature here too. (_Bad_use_facet::what()): Correct error string. * include/bits/localefwd.h: Correct comment. * mkcheck.in (C_DIR): Change libsupc++/include to libsupc++. From-SVN: r36943
Benjamin Kosnik committed -
From-SVN: r36942
Chandrakala Chavva committed -
2000-10-18 Geoffrey Keating <geoffk@cygnus.com> David V. Henkel-Wallace <gumby@cygnus.com> * config/i386/t-netware: Bring in from the Red Hat tree. * config/i386/netware.h: Likewise. * config/netware.h: Likewise. * config/rs6000/netware.h: Delete. * configure.in: Add i[34567]86-*-netware. * configure: Hand-edit to match configure.in change. Co-Authored-By: David V. Henkel-Wallace <gumby@cygnus.com> From-SVN: r36941
Geoff Keating committed -
* c-common.h (flag_no_builtin): Declare. (flag_no_nonansi_builtin): Likewise. (c_common_nodes_and_builtins): Change prototype. * c-common.c (flag_no_builtin): New variable. (flag_no_nonansi_builtin): Likewise. (c_common_nodes_and_builtins): Remove parameters. Adjust accordingly. * c-decl.c (flag_no_builtin): Remove. (flag_no_nonansi_builtin): Likewise. (init_decl_processing): Adjust call to c_common_nodes_and_builtins. * cp-tree.h (cp_tree_index): Add CPTI_FAKE_STD. (fake_std_node): New macro. * decl.c (in_std): Rename to ... (in_fake_std): ... this. (flag_no_builtin): Remove. (flag_no_nonansi_builtin): Likewise. (walk_namespaces_r): Use fake_std_node. (push_namespace): Use std_identifier. (pop_namespace): Use in_fake_std. (lookup_name_real): Use fake_std_node. (init_decl_processing): When -fhonor-std, create the `std' namespace. Don't create a dummy fake_std_node in that case. Adjust call to c_common_nodes_and_builtins. Use std_identifier. (builtin_function): Put builtins whose names don't begin with `_' in the std namespace. * decl2.c (flag_no_builtin): Remove. (flag_no_nonansi_builtin): Likewise. (set_decl_namespace): Use fake_std_node. (validate_nonmember_using_decl): Likewise. (do_using_directive): Likewise. (handle_class_head): Likewise. * dump.c (dequeue_and_dump): Likewise. * except.c (init_exception_processing): Use std_identifier. * init.c (build_member_call): Use fake_std_node. * rtti.c (init_rtti_processing): Use std_identifier. From-SVN: r36940
Mark Mitchell committed -
2000-10-18 Marc Espie <espie@openbsd.org> * tm.texi (LIBGCC_SPEC): Synch with reality. From-SVN: r36939
Marc Espie committed -
From-SVN: r36938
Marc Espie committed -
* iostream.cc (ends): Release the acquired lock. (endl): Likewise. From-SVN: r36937
Jakub Jelinek committed -
* c-common.c (check_format_types): Check for writing through a NULL pointer argument. testsuite: * gcc.dg/c90-printf-1.c, gcc.dg/c90-scanf-1.c: Add tests for writing through null pointers; remove comment about testing unterminated strings. From-SVN: r36936
Joseph Myers committed -
* tm.texi (Exception Region Output): Document DWARF_CIE_DATA_ALIGNMENT. * dwarf2out.c (DWARF_CIE_DATA_ALIGNMENT): Wrap definition in #ifndef. [ENABLE_CHECKING] (reg_save): Abort if offset is not a multiple of DWARF_CIE_DATA_ALIGNMENT. From-SVN: r36935
Hans-Peter Nilsson committed -
* basic-block.h (struct loop): Delete fields pre_header_root and pre_header_trace and replace with pre_header_edges and num_pre_header_edges. * flow.c (flow_loop_dump): Dump pre_header_edges. (flow_loops_free): Free pre_header_edges. (flow_loop_pre_header_scan): Calculate pre_header_edges. From-SVN: r36934
Michael Hayes committed -
* contrib.texi: Update references to steering committee members and Jeff Law's entry. From-SVN: r36933
Gerald Pfeifer committed -
From-SVN: r36932
Jeff Law committed
-