aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2000-03-05basic-block.h (ALLOCA_REG_SET): Remove.Mark Mitchell5-10/+28
* basic-block.h (ALLOCA_REG_SET): Remove. (INITIALIZE_REG_SET): New macro. * flow.c (update_life_info): Use it. (calculate_global_regs_live): Likewise. (propagate_block): Likewise. * global.c (build_insn_chain): Likewise. * haifa-sched.c (schedule_region): Likewise. From-SVN: r32350
2000-03-05dwarf2out.c (UNALIGNED_WORD_ASM_OP): Support 2 bytes pointer.Stephane Carrez2-15/+30
* dwarf2out.c (UNALIGNED_WORD_ASM_OP): Support 2 bytes pointer. (ASM_OUTPUT_DWARF_ADDR_CONST): Use UNALIGNED_WORD_ASM_OP. (DWARF_ARANGES_PAD_SIZE): New define. (output_aranges): Use it to pad the address range header. (DWARF_ROUND): Fix for non power of 2 rounding. From-SVN: r32347
2000-03-05* mkdeps.c (deps_calc_target): Remove incorrect 'const'.Jason Merrill2-1/+5
From-SVN: r32346
2000-03-05expr.c (cplus_expand_expr, [...]): Use expand_start_stmt_expr and ↵Mark Mitchell4-5/+19
expand_end_stmt_expr directly. * expr.c (cplus_expand_expr, case STMT_EXPR): Use expand_start_stmt_expr and expand_end_stmt_expr directly. Set RTL_EXPR_HAS_NO_SCOPE. * pt.c (instantiate_decl): Clear TI_PENDING_TEMPLATE_FLAG a little later. * dump.c (dequeue_and_dump): Dump SCOPE_NO_CLEANUPS_P. From-SVN: r32345
2000-03-05tree.def (RTL_EXPR): Update documentation.Mark Mitchell5-11/+59
* tree.def (RTL_EXPR): Update documentation. * tree.h (RTL_EXPR_HAS_NO_SCOPE): New macro. * expr.c (expand_expr): Handle RTL_EXPR_HAS_NO_SCOPE. * function.c (preserve_rtl_expr_temp): New function. (preserve_rtl_expr_temps): Likewise. (preserve_rtl_expr_result): Use it. From-SVN: r32344
2000-03-05Revert this patch:Mark Mitchell9-4/+89
2000-03-04 Mark Mitchell <mark@codesourcery.com> From-SVN: r32343
2000-03-05impint.C: New test.Nathan Sidwell14-1/+85
* g++.old-deja/g++.warn/impint.C: New test. * g++.old-deja/g++.martin/sts_vectini.C: Add -w option. * g++.old-deja/g++.pt/explicit10.C: Specify -w option. * g++.old-deja/g++.pt/explicit12.C: Likewise. * g++.old-deja/g++.pt/explicit13.C: Likewise. * g++.old-deja/g++.pt/explicit17.C: Likewise. * g++.old-deja/g++.pt/explicit18.C: Likewise. * g++.old-deja/g++.pt/explicit19.C: Likewise. * g++.old-deja/g++.pt/explicit23.C: Likewise. * g++.old-deja/g++.pt/explicit31.C: Likewise. * g++.old-deja/g++.pt/explicit35.C: Likewise. * g++.old-deja/g++.pt/explicit6.C: Likewise. * g++.old-deja/g++.pt/memclass7.C: Likewise. From-SVN: r32342
2000-03-05call.c (convert_like): Macrofy.Nathan Sidwell4-59/+111
* call.c (convert_like): Macrofy. (convert_like_with_context): New macro. (convert_like_real): Renamed from convert_like. Add calling context parameters, for diagnostics. Add recursive flag. Call dubious_conversion_warnings for outer conversion. (build_user_type_conversion): Use convert_like_with_context. (build_over_call): Likewise. Don't warn about dubious conversions here. Adjust convert_default_arg calls. (convert_default_arg): Add context parameters for diagnostics. Pass throught to convert_like_with_context. * cp-tree.h (convert_default_arg): Add context parameters. (dubious_conversion_warnings): Prototype new function. * typeck.c (convert_arguments): Adjust convert_default_arg call. (dubious_conversion_warnings): New function, broken out of convert_for_assignment. (convert_for_assignment): Adjust. From-SVN: r32341
2000-03-05Daily bump.Jeff Law2-2/+2
From-SVN: r32338
2000-03-05function.h (struct sequence_stack): Remove rtl_expr.Mark Mitchell2-51/+3
* function.h (struct sequence_stack): Remove rtl_expr. (struct emit_staus): Likewise. (seq_rtl_expr): Remove. * tree.h (free_temps_for_rtl_expr): Don't declare. (start_sequence_for_rtl_expr): Likewise. * rtl.h (preserve_rtl_expr_result): Likewise. * emit-rtl.c (start_sequence): Don't set sequence_rtl_expr. (start_sequence_for_rtl_expr): Remove. (push_topmost_sequence): Don't save sequence_rtl_expr. (pop_topmost_sequence): Remove comment about not restoring it. (end_sequence): Don't set seq_rtl_expr. (init_emit): Don't initialize it. (mark_sequence_stack): Don't mark it. (mark_emit_status): Likewise. * except.c (protect_with_terminate): Use start_sequence_for_rtl_expr, not start_sequence. * expr.c (expand_expr, case RTL_EXPR): Don't call preserve_rtl_expr_result or free_temps_for_rtl_expr. * function.c (assign_stack_temp_for_type): Don't set rtl_expr. (preserve_rtl_expr_result): Remove. (free_temps_for_rtl_expr): Likewise. (pop_temp_slots): Likewise. (mark_temp_slot): Don't mark the rtl_expr. * stmt.c (expand_start_stmt_expr): Use start_sequence, not start_sequence_for_rtl_expr. From-SVN: r32335
2000-03-05* regmove.c (copy_src_to_dest) Do not create src->dest moveThomas Schuster2-0/+6
for unchanging destination. From-SVN: r32334
2000-03-05function.h (struct sequence_stack): Remove rtl_expr.Mark Mitchell9-34/+95
* function.h (struct sequence_stack): Remove rtl_expr. (struct emit_staus): Likewise. (seq_rtl_expr): Remove. * tree.h (free_temps_for_rtl_expr): Don't declare. (start_sequence_for_rtl_expr): Likewise. * rtl.h (preserve_rtl_expr_result): Likewise. * emit-rtl.c (start_sequence): Don't set sequence_rtl_expr. (start_sequence_for_rtl_expr): Remove. (push_topmost_sequence): Don't save sequence_rtl_expr. (pop_topmost_sequence): Remove comment about not restoring it. (end_sequence): Don't set seq_rtl_expr. (init_emit): Don't initialize it. (mark_sequence_stack): Don't mark it. (mark_emit_status): Likewise. * except.c (protect_with_terminate): Use start_sequence_for_rtl_expr, not start_sequence. * expr.c (expand_expr, case RTL_EXPR): Don't call preserve_rtl_expr_result or free_temps_for_rtl_expr. (assign_stack_temp_for_type): Don't set rtl_expr. (preserve_rtl_expr_result): Remove. (free_temps_for_rtl_expr): Likewise. (pop_temp_slots): Likewise. (mark_temp_slot): Don't mark the rtl_expr. * stmt.c (expand_start_stmt_expr): Use start_sequence, not start_sequence_for_rtl_expr. From-SVN: r32333
2000-03-04declare dwarf2out_ignore_blockJason Merrill1-0/+1
From-SVN: r32332
2000-03-04Makefile.in (JAVA_OBJS): Added boehm.o.Tom Tromey7-8/+186
* Makefile.in (JAVA_OBJS): Added boehm.o. (boehm.o): New target. * Make-lang.in (JAVA_SRCS): Added boehm.c. * java-tree.h (flag_use_boehm_gc): Declare. (get_boehm_type_descriptor): Declare. * lang.c (lang_f_options): Added `use-boehm-gc'. (flag_use_boehm_gc): New global. * lang-options.h: Added -fuse-boehm-gc. * boehm.c: New file. * class.c (get_dispatch_table): If class uses a Boehm type descriptor, put it in the vtable. (make_class_data): Removed dead code. From-SVN: r32331
2000-03-04mkdeps.c, mkdeps.h: New files.Zack Weinberg9-182/+415
* mkdeps.c, mkdeps.h: New files. * po/POTFILES.in: Add them. * Makefile.in (LIBCPP_OBJS): Add mkdeps.o. (cpplib.o, cppinit.o): Depend on mkdeps.h. (mkdeps.o): New target. * cppfiles.c: Delete deps_output. * cppinit.c: Include mkdeps.h. Delete known_suffixes, OBJECT_SUFFIX, and base_name. (cpp_cleanup): Use deps_free. Free ihash->name when clearing the include hash. (initialize_dependency_output): Use deps_init, deps_add_target, deps_calc_target, and deps_add_dep. Remove all the unnecessary string bashing. (cpp_finish): Use deps_write. Remove an unnecessary nesting level. * cpplib.c (do_include): Use deps_add_dep. * cpplib.h (struct cpp_reader): Replace deps_buffer, deps_allocated_size, deps_size, deps_column members with single pointer to a struct deps. Delete prototype of deps_output. From-SVN: r32329
2000-03-04* decl.c (init_decl_processing): Initialize sizetype properly.Per Bothner2-1/+6
From-SVN: r32328
2000-03-04* cppinit.c: Fix thinko in previous patch.Zack Weinberg2-1/+5
From-SVN: r32327
2000-03-04machmode.h (mode_for_size, [...]): SIZE now signed.Richard Kenner4-27/+60
* machmode.h (mode_for_size, smallest_mode_for_size): SIZE now signed. * stor-layout.c (mode_for_size, smallest_mode_for_size): Likewise. (mode_for_size_tree): New function. (layout_decl, layout_type): Call it and clean up BLKmode checks. * tree.h (mode_for_size_tree): New declaration. From-SVN: r32326
2000-03-04* toplev.c (debug_ignore_block): Mark arg BLOCK as possibly unused.Richard Kenner2-1/+5
From-SVN: r32325
2000-03-04stmt.c (is_body_block): Move...Jason Merrill7-71/+52
* stmt.c (is_body_block): Move... * dwarfout.c, dwarf2out.c: ...from here. * tree.h: Declare it. * emit-rtl.c (remove_unncessary_notes): Don't remove the body block. * final.c (final_start_function): Do call remove_unnecessary_notes when scheduling. From-SVN: r32324
2000-03-04Daily bump.Jeff Law2-2/+2
From-SVN: r32323
2000-03-04* config/vax/xm-vms.h: Define OBJECT_SUFFIX and EXECUTABLE_SUFFIX.Zack Weinberg2-0/+5
From-SVN: r32322
2000-03-04cpplib.h (_dollar_ok): New macro.Zack Weinberg6-54/+77
* cpplib.h (_dollar_ok): New macro. (is_idchar, is_idstart): Use it. (IStable): Rename to _cpp_IStable. Declare it const if gcc >=2.7 or C99. Delete all references to FAKE_CONST. (is_idchar, is_idstart, is_numchar, is_numstart, is_hspace, is_space): Update for renamed IStable. * cppinit.c: Delete all references to FAKE_CONST and CAT macros. Define init_IStable as empty macro if gcc >=2.7 or C99. Change TABLE() to ISTABLE and hardcode name of table. (cpp_start_read): Don't change the IStable based on dollars_in_ident. * cpphash.c (unsafe_chars): Add pfile argument. All callers changed. Handle '$' for char1 correctly. * cpplib.c (cpp_get_token): Use is_numchar when parsing numbers. * cppexp.c (tokentab2): Make const. (cpp_lex): Make toktab const. * cppinit.c (include_defaults_array): Make const. (initialize_standard_includes): Make default_include const. From-SVN: r32321
2000-03-03dwarf2out.c (dwarf2out_frame_debug): Add cast to silence warning.Jason Merrill8-51/+93
* dwarf2out.c (dwarf2out_frame_debug): Add cast to silence warning. (dwarf2out_decl): Functions can now have DECL_IGNORED_P. (gen_decl_die): Likewise. * dwarfout.c (dwarfout_file_scope_decl): Likewise. (output_decl): Likewise. * varasm.c (make_function_rtl): If we change the name used in the rtl, update DECL_ASSEMBLER_NAME accordingly. (make_decl_rtl): Likewise. * toplev.c (rest_of_compilation): Tweak formatting. * toplev.c (rest_of_compilation): find_loop_tree_blocks before remove_unnecessary_notes. (debug_ignore_block): New fn. * toplev.h: Declare it. * emit-rtl.c (remove_unncessary_notes): Call it. * dwarf2out.c (dwarf2out_ignore_block): New fn. * dwarf2out.h: Declare it. * final.c (final_start_function): Don't call remove_unnecessary_notes if we did insn scheduling. From-SVN: r32320
2000-03-03decl2.c (key_method): Break out from...Jason Merrill4-117/+91
* decl2.c (key_method): Break out from... (import_export_vtable, import_export_class): ...here. * decl.c (finish_function): Don't mess with flag_keep_inline_functions. * decl2.c (finish_vtable_vardecl): Don't check decl_function_context. * search.c (note_debug_info_needed, dfs_debug_mark, dfs_debug_unmarkedp): Uncomment. Adjust for new scheme. * decl2.c (finish_vtable_vardecl): Call note_debug_info_needed. From-SVN: r32319
2000-03-04cppinit.c (cpp_handle_option): Set opts->pedantic directly.Zack Weinberg3-4/+7
* cppinit.c (cpp_handle_option): Set opts->pedantic directly. * cpplib.h: Delete SET_CPP_PEDANTIC. From-SVN: r32318
2000-03-03expr.c (expand_expr, [...]): Use bitfield case if result is a RECORD_TYPE.Richard Kenner2-1/+16
* expr.c (expand_expr, case COMPONENT_REF): Use bitfield case if result is a RECORD_TYPE. From-SVN: r32317
2000-03-03elf.h (CTOR_LISTS_DEFINED_EXTERNALLY): Added.Jonathan Larmour2-0/+9
2000-03-03 Jonathan Larmour <jlarmour@cygnus.co.uk> * config/mips/elf.h (CTOR_LISTS_DEFINED_EXTERNALLY): Added. From-SVN: r32316
2000-03-03alpha.c (alpha_emit_set_const_1): Re-order cases to prefer addition over ↵Richard Henderson2-36/+41
compliments over shifts. * alpha.c (alpha_emit_set_const_1): Re-order cases to prefer addition over compliments over shifts. From-SVN: r32315
2000-03-03decl.c (cp_finish_decl): Remove obsolete obstack comments, fix typos.Nathan Sidwell2-7/+7
* decl.c (cp_finish_decl): Remove obsolete obstack comments, fix typos. From-SVN: r32313
2000-03-03* cppinit.c (cpp_handle_option): Use SET_CPP_PEDANTIC.Jason Merrill2-2/+3
From-SVN: r32312
2000-03-03reload1.c (reload_combine_note_use): Handle return register USEs.J"orn Rennecke2-0/+31
* reload1.c (reload_combine_note_use): Handle return register USEs. REG case: Handle multi-hard-register hard regs. From-SVN: r32310
2000-03-03* md.texi: Document use of '*' in insn pattern name.Richard Kenner2-0/+9
From-SVN: r32309
2000-03-03* calls.c (special_function_p): operator new may not be malloc-like.Jason Merrill2-8/+7
From-SVN: r32308
2000-03-03Daily bump.Jeff Law2-2/+2
From-SVN: r32307
2000-03-03* gcse.c (dump_hash_table): Really fix error in last change.Jason Merrill2-3/+7
From-SVN: r32306
2000-03-02Denis Chertykov <denisc@overta.ru>Denis Chertykov3-119/+103
* avr.c (print_operand): Use print_operand_address instead of output_addr_const. * avr/libgcc.S: Cleanup code. From-SVN: r32305
2000-03-02* alpha.c (alpha_emit_set_const_1): Also try c + small constant.Richard Henderson2-0/+12
From-SVN: r32304
2000-03-03Remove unncessary printf callsMark Mitchell1-3/+0
From-SVN: r32303
2000-03-03* tree.h (TYPE_ALIGN_UNIT): New macro.Mark Mitchell18-150/+502
From-SVN: r32302
2000-03-02i386.c: (constant_call_address_operand): Reject CONST_INT.Clinton Popetz2-1/+8
* config/i386/i386.c: (constant_call_address_operand): Reject CONST_INT. From-SVN: r32300
2000-03-02cpplib.h (CPP_PEDANTIC): Only true if system_header_p is not set for the buffer.Jason Merrill3-9/+17
* cpplib.h (CPP_PEDANTIC): Only true if system_header_p is not set for the buffer. (SET_CPP_PEDANTIC): New macro. * cpplib.c (do_include): Don't bother checking system_header_p. (do_warning, do_ident, do_assert, do_unassert): Likewise. From-SVN: r32299
2000-03-03New test - more cpp corner casesZack Weinberg1-0/+3
From-SVN: r32298
2000-03-02* pt.c (instantiate_decl): Clear TI_PENDING_TEMPLATE_FLAG.Jason Merrill2-2/+9
From-SVN: r32297
2000-03-02function.h (struct expr_status): Add x_arg_space_so_far.Jason Merrill4-3/+33
* function.h (struct expr_status): Add x_arg_space_so_far. (arg_space_so_far): New macro. * expr.c (init_expr): Initialize it. * calls.c (emit_call_1): Reset it. (compute_argument_block_size, expand_call): Use it. (expand_call, store_one_arg): Increment it. From-SVN: r32296
2000-03-02varasm.c (output_constant): Strip off a CONVERT_EXPR to a UNION_TYPE.Richard Kenner2-2/+13
* varasm.c (output_constant): Strip off a CONVERT_EXPR to a UNION_TYPE. From-SVN: r32295
2000-03-02cppfiles.c (cpp_read_file): New function.Zack Weinberg6-277/+299
* cppfiles.c (cpp_read_file): New function. * cpphash.c (collect_expansion): Make sure to reset last_token to NORM when we hit a string. Handle trailing whitespace properly when the expansion is empty. (create_definition): Disable line commands while parsing the directive line. (dump_definition): If pfile->lineno == 0, output a line command ahead of the dump, and add a trailing newline. * cppinit.c (append_include_chain): Add fifth argument, which indicates whether or not system headers are C++ aware. (initialize_standard_includes): New function, broken out of read_and_prescan. Pass 'cxx_aware' value from the include_defaults_array on to append_include_chain. (dump_special_to_buffer): Const-ify char array. (builtin_array): Don't dump __BASE_FILE__. (cpp_start_read): Use cpp_read_file. Reorder code for clarity. Don't output line commands here for -D/-A/-U switches. Don't call deps_output for files included with -include or -imacros. * cpplib.c (do_define): Don't pay any attention to the second argument. (cpp_expand_to_buffer): Disable line commands while scanning. (output_line_command): Work in the file buffer. * cpplib.h: Remove no_record_file flag from struct cpp_reader. Fix formatting of comments. Prototype cpp_read_file. From-SVN: r32293
2000-03-02cp-tree.h (build_java_class_ref): Declare.Tom Tromey4-11/+154
* cp-tree.h (build_java_class_ref): Declare. * init.c (build_java_class_ref): No longer static. * except.c (expand_throw): Generate a Java-style `throw' if the thrown object is a "Java" object. (initialize_handler_parm): Generate a Java-style lookup of exception info if the caught object is a "Java" object. (catch_language, catch_language_init): New globals. (decl_is_java_type): New function. (expand_start_catch_block): Don't call push_eh_info() or push_eh_cleanup() when handling a Java-style "catch". Pass Java class reference to build_catch_block. From-SVN: r32292
2000-03-02c-common.c (c_common_nodes_and_builtins): Make sizetype_endlink reference ↵Richard Kenner8-23/+55
the language-equivalent of sizetype. * c-common.c (c_common_nodes_and_builtins): Make sizetype_endlink reference the language-equivalent of sizetype. * c-typeck.c (comptypes): Treat sizetype like its language equivalent. * fold-const.c (size_binop, size_diffop): Put back checks. * gcse.c (dump_hash_table): Fix minor error in last change. * stor-layout.c (set_sizetype): Set TYPE_DOMAIN of sizetype. Clear TYPE_{NEXT,MAIN}_VARIANT and TYPE_{POINTER,REFERENCE}_to of all sizetypes. * cp/typeck.c (comptypes): Treat sizetype like its language equivalent. From-SVN: r32291
2000-03-02* calls.c (expand_call) Do not attempt to combine stack adjustmentsJan Hubicka2-1/+7
with inhibit_defer_pop set. From-SVN: r32290