aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2001-08-08check-init.c (flags.h): IncludeAlexandre Petit-Bianco10-153/+541
2001-08-08 Alexandre Petit-Bianco <apbianco@redhat.com> * check-init.c (flags.h): Include (check_init): Don't report uninitialized static class initialization flags, don't free bit index when doing static class initialization optimization. (check_for_initialization): Return type changed to `unsigned int.' (attach_initialized_static_class): New function. * class.c (add_method_1): Create the initialized static class table if necessary. (finish_class): Always emit deferred inline methods. * decl.c (emit_init_test_initialization): Moved to expr.c (complete_start_java_method): Don't traverse DECL_FUNCTION_INIT_TEST_TABLE. (lang_mark_tree): Mark hash tables in function decls. * expr.c (emit_init_test_initialization): Moved from decl.c. (build_class_init): Create LAG_DECL_SPECIFIC for the static class initialization flag, set DECL_CONTEXT and LOCAL_CLASS_INITIALIZATION_FLAG. (java_lang_expand_expr): Emit initialization code for static class initialized flags when entering block, if necessary. * gcj.texi (-fno-optimize-static-class-initialization): Documented. * java-tree.h (flag_optimize_sci): New global variable declaration. (DECL_FUNCTION_INITIALIZED_CLASS_TABLE): New macro. (DECL_FUNCTION_STATIC_METHOD_INVOCATION_COMPOUND): Likewise. (LOCAL_FINAL_P): Fixed typo in comment. (FINAL_VARIABLE_P): Likewise. (LOCAL_CLASS_INITIALIZATIO_FLAG): New macro. (LOCAL_CLASS_INITIALIZATIO_FLAG_P): Likewise. (struct lang_decl): New fields `ict', `smic' and `cif.' (check_for_initialization): New returned value for global. (attach_initialized_static_class): New global function. (STATIC_CLASS_INIT_OPT_P): New macro. * lang-options.h (-fno-optimize-static-class-initialization): New flag. * lang.c (java_decode_option): Handle `-fno-optimize-static-class-initialization' * parse.y (start_complete_expand_method): New function. (java_expand_method_bodies): Likewise. (attach_init_test_initialization_flags): Likewise. (adjust_init_test_initialization): Likewise. (emit_test_initialization): Likewise. (java_complete_expand_methods): Nullify abstract and native method bodies. (java_complete_expand_method): New locals `fbody', `block_body' and `exception_copy.' Reorganized: directly return on empty method bodies, call `start_complete_expand_method', remember definitely initialized static class in function, don't expand method bodies. (java_expand_classes): Call `java_expand_method_bodies' before `finish_class' when compiling to native. (resolve_expression_name): Use `orig' after building outer class field access. (patch_invoke): Remember static method invokations. (http://gcc.gnu.org/ml/gcc-patches/2001-08/msg00454.html) From-SVN: r44733
2001-08-08class.c (emit_register_classes): Use assemble_jcr if possible.Anthony Green4-36/+104
2001-08-08 Anthony Green <green@redhat.com> * java/class.c (emit_register_classes): Use assemble_jcr if possible. Keep the original mechanism as a fallback. * defaults.h (JCR_SECTION_NAME): Define if we have named section and weak symbol support. * crtstuff.c (__JCR_LIST__): Define. (__JCR_END__): Define. (_Jv_RegiserClasses): Define weak symbol if possible. (__do_global_ctors_aux): Register classes for ELF targets with weak symbol support. From-SVN: r44731
2001-08-08dbxout.c: Fix comment formatting.Kazu Hirata17-91/+110
* dbxout.c: Fix comment formatting. * dependence.c: Likewise. * df.c: Likewise. * diagnostic.c: Likewise. * dominance.c: Likewise. * doprint.c: Likewise. * dwarf2out.c: Likewise. * dwarfout.c: Likewise. * emit-rtl.c: Likewise. * except.c: Likewise. * explow.c: Likewise. * expmed.c: Likewise. * expr.c: Likewise. * flow.c: Likewise. * fold-const.c: Likewise. * function.c: Likewise. From-SVN: r44729
2001-08-08global.c (retry_global_alloc): Avoid shadowing allocno.Franz Sirl2-4/+8
2001-08-08 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> * global.c (retry_global_alloc): Avoid shadowing allocno. From-SVN: r44728
2001-08-08* except.c (remove_fixup_regions): Fix typo.Mark Mitchell2-1/+5
From-SVN: r44727
2001-08-08* g++spec.c (lang_specific_driver): Quote argument after `-Xlinker'.John David Anglin2-0/+5
From-SVN: r44725
2001-08-08emit-rtl.c (adjust_address, [...]): Cast offset to unsigned HOST_WIDE_INT to ↵Jan van Male4-33/+42
avoid warning. 2001-08-08 Jan van Male <jan.vanmale@fenk.wau.nl> * emit-rtl.c (adjust_address, adjust_address_nv): Cast offset to unsigned HOST_WIDE_INT to avoid warning. * final.c (final): Cast INSN_UID to unsigned to avoid warning. * flow.c (set_block_for_new_insns): Likewise. From-SVN: r44724
2001-08-08sibcall.c (return_value_pseudo): New static variable.Jan Hubicka2-1/+47
* sibcall.c (return_value_pseudo): New static variable. (skip_copy_to_return_value): Handle return_value_pseudo. (call_ends_block_p): Ensure that return_value_pseudo is set. (optimize_sibling_and_tail_recursive_call): Discover the load of pseudo return value in alternate exit block. From-SVN: r44723
2001-08-08calls.c (ECF_ALWAYS_RETURN): New constant.Jan Hubicka5-4/+28
* calls.c (ECF_ALWAYS_RETURN): New constant. (emit_call_1): Add REG_ALWAYS_RETURN note if needed. (expand_call): Use LCF_ALWAYS_RETURN for __bb_fork_func. (emit_library_call_value_1): Handle LCT_ALWAYS_RETRUN. * flow.c (need_fake_edge_p): Handle REG_ALWAYS_RETURN. * rtl.c (reg_note_name): New name. * rtl.h (enum reg_note): Add REG_ALWAYS_RETURN. From-SVN: r44722
2001-08-08* config/mips/mips.c (mips_legitimate_address_p): Limit "la" addresses.Aldy Hernandez2-3/+10
From-SVN: r44721
2001-08-08alias.c (get_alias_set): Return a previously calculated alias set for a ↵Jason Merrill4-2/+19
VAR_DECL. * alias.c (get_alias_set): Return a previously calculated alias set for a VAR_DECL. * function.c (gen_mem_addressof): Calculate the alias set before touching the RTL. From-SVN: r44720
2001-08-08* predict.def: Set hitrates according our experimental run.Jan Hubicka3-5/+22
From-SVN: r44719
2001-08-08mips.c (mips_unique_section): New.H.J. Lu8-141/+286
2001-08-08 H.J. Lu <hjl@gnu.org> * config/mips/mips.c (mips_unique_section): New. Copied from config/mips/elf.h. * config/mips/mips-protos.h (mips_unique_section): New prototype. * config/mips/elf.h (UNIQUE_SECTION): Use mips_unique_section. * config/mips/little.h: New. Generic little endian mips targets. Only mips*-*-linux* is converted to use it so far. * config/mips/linux.h: Include "gofast.h" and "mips/mips.h". (WCHAR_TYPE): Defined (WCHAR_TYPE_SIZE): Likewise. (INIT_SUBTARGET_OPTABS): Likewise. (BSS_SECTION_ASM_OP): Likewise. (SBSS_SECTION_ASM_OP): Likewise. (ASM_OUTPUT_ALIGNED_BSS): Likewise. (ASM_DECLARE_OBJECT_NAME): Likewise. (UNIQUE_SECTION): Likewise. (EXTRA_SECTIONS): Likewise. (ASM_OUTPUT_CONSTRUCTOR): Likewise. (ASM_OUTPUT_DESTRUCTOR): Likewise. (ASM_OUTPUT_DEF): Likewise. (HANDLE_SYSV_PRAGMA): Removed. (NO_IMPLICIT_EXTERN_C): Likewise. (TARGET_MEM_FUNCTIONS): Likewise. (STARTFILE_SPEC): Likewise. (ENDFILE_SPEC): Likewise. (LIB_SPEC): Likewise. (INVOKE__main): Likewise. (CTOR_LIST_BEGIN): Likewise. (CTOR_LIST_END): Likewise. (DTOR_LIST_BEGIN): Likewise. (DTOR_LIST_END): Likewise. (SET_ASM_OP): Likewise. (ASM_OUTPUT_SOURCE_LINE): Likewise. (ASM_OUTPUT_DEF): Likewise. (ASM_OUTPUT_IDENT): Likewise. * config/mips/mips.h (ASM_SPEC): Undefine before define. (CPLUSPLUS_CPP_SPEC): Likewise. (ASM_APP_ON) Redefine only if not defined. (ASM_APP_OFF): Likewise. (ASM_OUTPUT_SOURCE_LINE): Likewise. (ASM_OUTPUT_IDENT): Likewise. * config.gcc: Update tm_file for Linux/mips. From-SVN: r44718
2001-08-08Make cselib_subst_to_values global.Bernd Schmidt3-3/+21
From-SVN: r44717
2001-08-08Use cselib for alias analysis in sched_ebbBernd Schmidt6-9/+53
From-SVN: r44716
2001-08-08xfailJason Merrill1-1/+1
From-SVN: r44715
2001-08-08Turn patterns/splits into define_insn_and_splitBernd Schmidt2-31/+13
From-SVN: r44714
2001-08-08Make cselib COND_EXEC-safeBernd Schmidt2-0/+15
From-SVN: r44713
2001-08-08final.c (shorten_branches): Update the INSN_ADDRESSES of insns within fixed ↵Graham Stott2-1/+25
length SEQUENCE. * final.c (shorten_branches): Update the INSN_ADDRESSES of insns within fixed length SEQUENCE. From-SVN: r44712
2001-08-08diagnostic.h (diagnostic_format_decoder): Parenthesize macro parameter.Graham Stott2-4/+11
* diagnostic.h (diagnostic_format_decoder): Parenthesize macro parameter. (diagnostic_prefixing_rule): Likewise. (diagnostic_line_cutoff): Likewise. (diagnostic_kind_count): Likewise. From-SVN: r44711
2001-08-08* alias.c (find_base_decl): Delete redundent assignment.Graham Stott2-1/+4
From-SVN: r44710
2001-08-08dependence.c (INDEX_LIMIT_CHECK): Uppercase macro parameter.Graham Stott2-6/+12
* dependence.c (INDEX_LIMIT_CHECK): Uppercase macro parameter. (abs): Uppercase and paranthesize macro parameter. (MEM_DEPENDENCY): Add whitespace. From-SVN: r44709
2001-08-08mips.c (mips_legitimate_address_p): Fix enable checking failure check for ↵Graham Stott2-1/+6
CONST_INT * config/mips/mips.c (mips_legitimate_address_p): Fix enable checking failure check for CONST_INT From-SVN: r44708
2001-08-08flow.c (back_edge_of_syntactic_loop_p): Add whitespace.Graham Stott2-2/+15
* flow.c (back_edge_of_syntactic_loop_p): Add whitespace. (libcall_dead_p): Likewise. (mark_used_regs): Constify fmt. (find_use_as_address): Likewise. From-SVN: r44707
2001-08-08Daily bump.GCC Administrator2-2/+2
From-SVN: r44705
2001-08-08c-typeck.c (RESTORE_SPELLING_DEPTH): Uppercase and parenthesize macro parameter.Graham Stott2-1/+6
* c-typeck.c (RESTORE_SPELLING_DEPTH): Uppercase and parenthesize macro parameter. From-SVN: r44704
2001-08-08combine.c (combine_simplify_rtx): Update comment and remove erroneous test.Graham Stott2-3/+7
* combine.c (combine_simplify_rtx): Update comment and remove erroneous test. From-SVN: r44703
2001-08-07cppinit.c (cpp_finish): Pop the final buffer without comment.Neil Booth3-12/+25
* cppinit.c (cpp_finish): Pop the final buffer without comment. * cpplex.c (_cpp_lex_token): Don't pop the final buffer; and take care to avoid multiple no-newline at EOF warnings in that case. From-SVN: r44701
2001-08-07calls.c (expand_call): Do not emit INSN_SETJMP note.Jan Hubicka17-130/+132
* calls.c (expand_call): Do not emit INSN_SETJMP note. (emit_library_call_value_1): Likewise. (emit_call_1): Emit REG_SETJMP note. * cse.c (cse_end_of_basic_block): Use REG_SETJMP instead of INSN_SETJMP * cselib.c (cselib_process_insn): Likewise. * flow.c (propagate_block): Likewise. * loop.c (find_and_verify_loops): Likewise. * reload.c (find_equiv_regs): Likewise. * reload1.c (reload): Likewise. * resource.c (mark_referenced_resources, mark_set_resources): Likewise. * sched-deps (sched_analyze_insn, sched_analyze): Likewise. * final.c (final_scan_insn): Remove NOTE_INSN_SETJMP. * haifa-sched.c (unlink_other_notes): Likewise. (reemit_notes): Likewise. * sched-ebb.c (sched_ebb): Likewise. * sched-rgc.c (sched_region): Likewise. * rtl.c (note_insn_name): Likewise. (reg_note_name): Add REG_SETJMP * rtl.h (reg_note): Add REG_SETJMP. (insn_note): Remove NOTE_INSN_SETJMP. * profile.c (branch_prob): Add fake edges for setjmp. From-SVN: r44700
2001-08-07config.gcc: Quote target_cpu_default2 correctly for powerpc*-*-* targets.Daniel Jacobowitz2-1/+6
* config.gcc: Quote target_cpu_default2 correctly for powerpc*-*-* targets. From-SVN: r44699
2001-08-07cpplib.h, line-map.h: Update comments.Neil Booth4-40/+49
* cpplib.h, line-map.h: Update comments. * cppmain.c (printer_init): Move inline. (maybe_print_line, print_line): Take a map pointer. (cb_ident, cb_define, cb_undef, cb_include, cb_def_pragma): Update. (cb_file_change): Don't use prior value of print.map. From-SVN: r44697
2001-08-07* doc/install.texi: Document fine-grained multilib configuration.David Edelsohn2-0/+26
From-SVN: r44695
2001-08-07rtlanal.c (find_first_parameter_load): Call note_stores only on the ↵Jan Hubicka2-1/+7
instructions. * rtlanal.c (find_first_parameter_load): Call note_stores only on the instructions. From-SVN: r44693
2001-08-07revert get_alias_set change for nowJason Merrill2-10/+0
From-SVN: r44692
2001-08-07re PR c++/3820 (GCC 3.0 crashes with empty base class)Nathan Sidwell6-41/+125
cp: PR c++/3820 Stop using TYPE_NONCOPIED_PARTS. * call.c (build_over_call): Be careful when copy constructing or assigning to an empty class. * class.c (check_bases_and_members): It has a COMPLEX_ASSIGN_REF if it has a vptr. (layout_class_type): Don't add empty class padding to TYPE_NONCOPIED_PARTS. (finish_struct_1): Don't add the VFIELD either. * cp-tree.h (TYPE_HAS_TRIVIAL_INIT_REF): Mention _copy_ initialization. testsuite: * g++.dg/abi/empty4.C: New test. From-SVN: r44691
2001-08-07alias.c (nonlocal_mentioned_p): Rename CONST_CALL_P to CONST_OR_PURE_CALL_PJan Hubicka17-24/+50
* alias.c (nonlocal_mentioned_p): Rename CONST_CALL_P to CONST_OR_PURE_CALL_P * calls.c (emit_call_1): Likewise. * cse.c (cse_insn, invalidate_skipped_block): Likewise. * cselib.c (cselib_process_insn): Likewise. * df.c (df_insns_modify): Likewise. * flow.c (need_fake_edge_p): Likewise. (propagate_one_insn): Likewise. * haifa-sched.c (reemit_notes): Likewise. * integrate.c (copy_insn_list): Likewise. * jump.c (delete_prior_computation): Likewise. * local-alloc.c (validate_equiv_mem): Likewise. * loop.c (scan_loop): Likewise. * predict.c (estimate_probability): Likewise. * reload.c (reload): Likewise. * sched-deps (sched_analyze): Likewise. * rtl.h (CONST_CALL_P): rename to CONST_OR_PURE_CALL_P. * gcse.c (compute_hash_table): Likewise. (mark_call): Likewise. (store_killed_in_insn): Likewise. From-SVN: r44688
2001-08-07oopsJason Merrill1-1/+1
From-SVN: r44687
2001-08-07* tree.c (walk_tree): Walk siblings even if !walk_subtrees.Jason Merrill2-4/+14
From-SVN: r44686
2001-08-07improve commentJason Merrill1-1/+3
From-SVN: r44685
2001-08-07* c-semantics.c (make_rtl_for_local_static): Use DECL_RTL_SET_P.Jason Merrill2-1/+3
From-SVN: r44684
2001-08-07alias.c (get_alias_set): Return a previously calculated alias set for a ↵Jason Merrill3-0/+37
VAR_DECL. * alias.c (get_alias_set): Return a previously calculated alias set for a VAR_DECL. From-SVN: r44683
2001-08-07Daily bump.GCC Administrator2-2/+2
From-SVN: r44681
2001-08-06varasm.c (assemble_gc_entry): Remove.Richard Henderson3-24/+5
* varasm.c (assemble_gc_entry): Remove. * output.h: Likewise. From-SVN: r44680
2001-08-06varasm.c (assemble_constructor): Take a symbol_ref and a priority instead of ↵Richard Henderson12-61/+106
a bare string. * varasm.c (assemble_constructor): Take a symbol_ref and a priority instead of a bare string. Move priority handling here from cp/decl2.c. * output.h: Update decls. * c-decl.c (c_expand_body): Update calls to assemble_constructor and assemble_destructor. * profile.c (output_func_start_profiler): Likewise. * objc/objc-act.c (finish_objc): Likewise. (build_module_descriptor): Return the symbol not the symbol name. * ch/grant.c (chill_finish_compile): Pass a symbol_ref and priority to assemble_constructor. * cp/decl2.c (finish_objects): Pass a symbol_ref and priority to assemble_{constructor,destructor}. Remove priority handling. * java/class.c (emit_register_classes): Pass a symbol_ref and priority to assemble_constructor. From-SVN: r44678
2001-08-06darwin.h (DOUBLE_INT_ASM_OP): Add whitespace.David Edelsohn6-38/+44
* config/rs6000/darwin.h (DOUBLE_INT_ASM_OP): Add whitespace. * config/rs6000/linux64.h (RS6000_MCOUNT): Define. ({SAVE,RESTORE}_FP_{PREFFIX,SUFFIX}): Define. * config/rs6000/rs6000.h (ASM_OUTPUT_DOUBLE_INT): Remove whitespace. * config/rs6000/sysv4.h (DOUBLE_INT_ASM_OP): Add whitespace. * config/rs6000/xcoff.h (DOUBLE_INT_ASM_OP): Add whitespace. From-SVN: r44677
2001-08-06tweak commentJason Merrill1-1/+1
From-SVN: r44676
2001-08-06f90-intrinsic-bit.x: XFAIL on irix6.* and solaris2.*David Billinghurst3-0/+26
2001-08-06 David Billinghurst <David.Billinghurst@riotinto.com> * g77.f-torture/execute/f90-intrinsic-bit.x: XFAIL on irix6.* and solaris2.* * g77.f-torture/compile/pr3743.x: Likewise From-SVN: r44671
2001-08-06cpperror.c (print_containing_files): Moved to line-map.c.Neil Booth10-188/+161
* cpperror.c (print_containing_files): Moved to line-map.c. (print_location): line-map.c handles re-listing or otherwise. * cpphash.h (struct lexer_state): Remove next_bol. (struct cpp_buffer): Remove include_stack_listed. * cpplib.c (do_line, cpp_push_buffer, _cpp_pop_buffer): Remove faked buffer handling. (_cpp_do_file_change): Tweak. * cpplib.h (enum cpp_buffer_type): Remove BUF_FAKE. * cppmain.c (struct printer): Remove filename. (print_line, cb_file_change): Update accordingly. * line-map.c: Include intl.h. (init_line_maps): Initialize last_listed. (free_line_maps): Sanity check, warn if ENABLED_CHECKING. (add_line_map): Sanity check inputs, warn if ENABLED_CHECKING. (print_containing_files): New. * line-map.h (struct line_maps): New member last_listed. (print_containing_files, INCLUDED_FROM): New. * Makefile.in: Update. * po/POTFILES.in: Add line-map.c. From-SVN: r44670
2001-08-06* expr.c (store_constructor): Don't clobber memory targets.Richard Henderson2-1/+8
From-SVN: r44667
2001-08-06except.c (convert_from_eh_region_ranges_1): Never mark USE or CLOBBER insns ↵Richard Henderson1-0/+2
as throwing. * except.c (convert_from_eh_region_ranges_1): Never mark USE or CLOBBER insns as throwing. From-SVN: r44666