Commit Graph

36880 Commits

Author SHA1 Message Date
Jason Merrill
07b2f2fd6e c-common.h (RETURN_NULLIFIED_P): Lose.
* c-common.h (RETURN_NULLIFIED_P): Lose.
        * c-semantics.c (genrtl_return_stmt): Don't check it.

        Support named return value optimization for inlines, too.
        * decl.c (finish_function): Nullify returns here.
        * semantics.c (genrtl_start_function): Not here.
        (cp_expand_stmt): Don't mess with CLEANUP_STMTs.
        (nullify_returns_r): No longer static.  Just clear RETURN_EXPR.
        Also nullify the CLEANUP_STMT for the nrv.
        * cp-tree.h: Declare it.
        * optimize.c (declare_return_variable): Replace the nrv with the
        return variable.
        * typeck.c (check_return_expr): Be more flexible on alignment check.
        Ignore cv-quals when checking for a matching type.

From-SVN: r44762
2001-08-10 10:01:33 -04:00
Richard Sandiford
67070ffeb0 mips.c (mips_add_large_offset_to_sp): New function.
* config/mips/mips.c (mips_add_large_offset_to_sp): New function.
	(mips_annotate_frame_insn): New function.
	(mips_emit_frame_related_store): New function.
	(save_restore_insns): Don't mark instructions that set up the base
	registers as frame-related.  Add REG_FRAME_RELATED_EXPR notes to
	the store instructions instead.
	(mips_expand_prologue): If the stack size is moved into a temporary
	register, do not mark that move as frame-related.  Add a
	REG_FRAME_RELATED_EXPR note to the stack adjustment instruction.

From-SVN: r44761
2001-08-10 13:08:16 +00:00
Richard Sandiford
a8205f0329 mips.c (save_restore_insns): Don't mark the RA's stack slot as unchanging if current_function_calls_eh_return.
* config/mips/mips.c (save_restore_insns): Don't mark the RA's
	stack slot as unchanging if current_function_calls_eh_return.

From-SVN: r44760
2001-08-10 13:03:44 +00:00
Richard Sandiford
2359d013c4 mips.md (reload_outcc): Use HARD_REGNO_NREGS to access the second half of the TFmode scratch operand.
* config/mips/mips.md (reload_outcc): Use HARD_REGNO_NREGS to
	access the second half of the TFmode scratch operand.

From-SVN: r44759
2001-08-10 13:01:31 +00:00
Anthony Green
ca11a2e959 Restore HPUX gcj bootstrap.
From-SVN: r44758
2001-08-10 07:52:21 +00:00
Benjamin Kosnik
0b293f29ab Makefile.am (check-no): Add.
2001-08-09  Benjamin Kosnik  <bkoz@redhat.com>

	* po/Makefile.am (check-no): Add.
	(check-yes): Same.
	* po/Makefile.in: Regenerate.

From-SVN: r44756
2001-08-10 07:39:21 +00:00
Gerald Pfeifer
ca52d04686 install.texi (Specific, avr): Fix cross-reference to the main manual to work both for info and HTML versions.
* doc/install.texi (Specific, avr): Fix cross-reference to the
	main manual to work both for info and HTML versions.

From-SVN: r44755
2001-08-10 07:20:28 +00:00
GCC Administrator
7c08e8b25a Daily bump.
From-SVN: r44753
2001-08-10 07:16:10 +00:00
Benjamin Kosnik
58b08ac3e1 acconfig.h (_GLIBCPP_MEM_LIMITS): Define.
2001-08-09  Benjamin Kosnik  <bkoz@redhat.com>

	* acconfig.h (_GLIBCPP_MEM_LIMITS): Define.
	* config.h.in: Regenerate.
	* acinclude.m4 (GLIBCPP_CHECK_SETRLIMIT): Check for setrlimit
	function.
	* aclocal.m4: Regenerate.
	* configure.in: Remove duplicate AM_CONFIG_HEADER.
	(AM_CONFIG_HEADER): Remove testsuite/testsuite_hooks.h.
	Only call GLIBCPP_CHECK_SETRLIMIT for native compiles.
	* configure: Regenerate.
	* testsuite_hooks.h.in: Move to...
	* testsuite_hooks.h: Here, include c++config.h. Use it.

	* Makefile.am (SUBDIRS): Move testsuite to last directory.
	* Makefile.in: Regenerate.
	* po/Makefile.am (stamp-po): Add.

From-SVN: r44752
2001-08-10 06:50:34 +00:00
John David Anglin
396ad5177c stmt.c (expand_null_return_1): Remove code to generate simple returns and "use_goto" argument.
* stmt.c (expand_null_return_1): Remove code to generate simple returns
	and "use_goto" argument.
	(expand_null_return, expand_value_return): Update all callers.
	* function.c (expand_function_end): Remove code to generate simple
	return.
	* config/vax/vax.md (epilogue): New expander for function return.
	* doc/md.texi (epilogue): Remove "if defined".

From-SVN: r44750
2001-08-10 02:14:26 +00:00
David Edelsohn
e4124eb384 Fix sparcv9 typo.
From-SVN: r44749
2001-08-09 22:08:33 -04:00
Zack Weinberg
e361dcd34a Makefile.in: Partially revert my previous change...
* Makefile.in: Partially revert my previous change:
	put -DGENERATOR_FILE back in HOST_CFLAGS, take it out
	of the hashtab.o and safe-ctype.o rules.

From-SVN: r44748
2001-08-09 23:12:38 +00:00
Richard Henderson
2cc07db4b0 Move constructor/destructor handling into target hooks.
From-SVN: r44747
2001-08-09 15:33:35 -07:00
Richard Henderson
ef8d8b8922 crtbegin.asm (__JCR_LIST__): New.
* config/alpha/crtbegin.asm (__JCR_LIST__): New.
        (__do_global_dtors_aux): Use gp-relative static data to avoid
        one dynamic relocation.
        (__do_frame_setup): Register Java classes.
        * config/alpha/crtend.asm (__JCR_END__): New.

From-SVN: r44746
2001-08-09 13:22:15 -07:00
David Edelsohn
3b87de3d00 os_defines.h: Define std_limits.h macros.
* config/os/aix/bits/os_defines.h: Define std_limits.h macros.
	* config/os/generic/bits/os_defines.h: Likewise.
	* config/os/gnu-linux/bits/os_defines.h: Likewise.
	* config/os/hpux/bits/os_defines.h: Likewise.
	* config/os/irix/irix6.5/bits/os_defines.h: Likewise.
	* config/os/solaris/solaris2.7/bits/os_defines.h: Likewise.

From-SVN: r44745
2001-08-09 14:01:36 -04:00
Jason Merrill
f237d906c7 tweak comment
From-SVN: r44744
2001-08-09 13:52:35 -04:00
Zack Weinberg
1b0c37d730 Makefile.in (HOST_CFLAGS): Take out -DGENERATOR_FILE.
* Makefile.in (HOST_CFLAGS): Take out -DGENERATOR_FILE.
	 (CONFIG_H, TCONFIG_H, TM_P_H): Update.
	 (GEN, STAGESTUFF): Add new files.
	 (insn-constants.h, s-constants, tm-preds.h, s-preds,
	 genconstants, genpreds, genconstants.o, genpreds.o): New rules.
	 (hashtab.o, safe-ctype.o): Add -DGENERATOR_FILE.
	 * mkconfig.sh: Include tm-preds.h in tm_p.h; insn-constants.h
	 as well as insn-codes.h and insn-flags.h in config.h; and no
	 extra headers in tconfig.h and hconfig.h.

	 * gencodes.c: Eliminate code to generate predicate declarations
	 or #defines for md-file constants.
	 * genconstants.c, genpreds.c: New files.

	 * i386.md: Re-order guard expressions such that TARGET_64BIT
	 comes first, when this permits better optimization.  Add
	 TARGET_64BIT to more x86-64 patterns.  Add comment explaining
	 why this is desirable.

From-SVN: r44743
2001-08-09 17:11:00 +00:00
Jakub Jelinek
a734f2a306 fde-glibc.c: Require glibc 2.2.4+ headers.
* config/ia64/fde-glibc.c: Require glibc 2.2.4+ headers.
	(find_fde_for_dso): Remove.
	(_Unwind_IteratePhdrCallback): New.
	(_Unwind_FindTableEntry): Use dl_iterate_phdr.
	* config/ia64/crtbegin.asm (__ia64_app_header): Remove.

From-SVN: r44742
2001-08-09 18:22:23 +02:00
Richard Kenner
21d9368703 expr.c (emit_single_push_insn): Only exists ifdef PUSH_ROUNDING.
* expr.c (emit_single_push_insn): Only exists ifdef PUSH_ROUNDING.
	(move_by_pieces_1): If would call it, abort if no PUSH_ROUNDING.

From-SVN: r44740
2001-08-09 11:28:24 -04:00
Graham Stott
b1b6b0cb9c sched-vis.c (MAX_VISUAL_NO_UNIT): Define.
* sched-vis.c (MAX_VISUAL_NO_UNIT): Define.
        (vis_no_unit): Use it.
        (visualize_no_unit): Add the insn only if room exists.

From-SVN: r44739
2001-08-09 13:32:57 +00:00
Graham Stott
a4e11a5c69 predict.c (estimate_probability): Replace magic numbers with appropriate enumeration.
* predict.c (estimate_probability): Replace magic numbers with
	appropriate enumeration.

From-SVN: r44738
2001-08-09 13:23:01 +00:00
Graham Stott
a0e4ce74cc cppexp.c (EXTRACT_PRIO): Uppercase and parenthsize macro parameter.
* cppexp.c (EXTRACT_PRIO): Uppercase and parenthsize macro
	parameter.
	(EXTRACT_FLAGS): Likewise.

From-SVN: r44737
2001-08-09 13:14:57 +00:00
Aldy Hernandez
77416b3d7e mips.c (mips_legitimate_address_p): Check for CONST_INT in last patch.
* config/mips/mips.c	(mips_legitimate_address_p): Check for
        CONST_INT in last patch.

From-SVN: r44736
2001-08-09 11:31:23 +00:00
GCC Administrator
86557ec241 Daily bump.
From-SVN: r44734
2001-08-09 07:16:10 +00:00
Alexandre Petit-Bianco
4009bb7d50 check-init.c (flags.h): Include
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-08 21:19:12 -07:00
Anthony Green
6351543d13 class.c (emit_register_classes): Use assemble_jcr if possible.
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-08 23:33:51 +00:00
Benjamin Kosnik
e8406c89d1 Makefile.am (libstdc___la_LDFLAGS): Use -release instead of -version-info, use substituted VERSION info.
2001-08-08  Benjamin Kosnik  <bkoz@redhat.com>

	* src/Makefile.am (libstdc___la_LDFLAGS): Use -release instead of
	-version-info, use substituted VERSION info.
	* src/Makefile.in: Regenerate.

From-SVN: r44730
2001-08-08 22:39:28 +00:00
Kazu Hirata
30f7a3786c dbxout.c: Fix comment formatting.
* 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-08 22:06:48 +00:00
Franz Sirl
35e17f7e33 global.c (retry_global_alloc): Avoid shadowing allocno.
2001-08-08  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
	* global.c (retry_global_alloc): Avoid shadowing allocno.

From-SVN: r44728
2001-08-08 21:53:46 +00:00
Mark Mitchell
2b1e238298 * except.c (remove_fixup_regions): Fix typo.
From-SVN: r44727
2001-08-08 21:22:30 +00:00
John David Anglin
0ca179b2de * g++spec.c (lang_specific_driver): Quote argument after `-Xlinker'.
From-SVN: r44725
2001-08-08 20:57:38 +00:00
Jan van Male
b9f2270425 emit-rtl.c (adjust_address, [...]): Cast offset to unsigned HOST_WIDE_INT to 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-08 22:32:31 +02:00
Jan Hubicka
a4b07e7ff8 sibcall.c (return_value_pseudo): New static variable.
* 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-08 19:09:11 +00:00
Jan Hubicka
9d98f8f9c4 calls.c (ECF_ALWAYS_RETURN): New constant.
* 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 19:07:47 +00:00
Aldy Hernandez
82423cbad3 * config/mips/mips.c (mips_legitimate_address_p): Limit "la" addresses.
From-SVN: r44721
2001-08-08 17:02:56 +00:00
Jason Merrill
5755cd3808 alias.c (get_alias_set): Return a previously calculated alias set for a 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 12:56:51 -04:00
Jan Hubicka
0f0138b6b2 * predict.def: Set hitrates according our experimental run.
From-SVN: r44719
2001-08-08 16:46:22 +00:00
H.J. Lu
b2bcb32d28 mips.c (mips_unique_section): New.
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-08 08:40:57 -07:00
Bernd Schmidt
9170044420 Make cselib_subst_to_values global.
From-SVN: r44717
2001-08-08 10:38:57 +00:00
Bernd Schmidt
4b6c534074 Use cselib for alias analysis in sched_ebb
From-SVN: r44716
2001-08-08 10:36:07 +00:00
Jason Merrill
d26f648a0a xfail
From-SVN: r44715
2001-08-08 06:31:38 -04:00
Bernd Schmidt
7dcc803eca Turn patterns/splits into define_insn_and_split
From-SVN: r44714
2001-08-08 10:05:40 +00:00
Bernd Schmidt
b7933c21dc Make cselib COND_EXEC-safe
From-SVN: r44713
2001-08-08 10:00:56 +00:00
Graham Stott
674fc07da0 final.c (shorten_branches): Update the INSN_ADDRESSES of insns within fixed length SEQUENCE.
* final.c (shorten_branches): Update the INSN_ADDRESSES of insns
	within fixed length SEQUENCE.

From-SVN: r44712
2001-08-08 08:22:05 +00:00
Graham Stott
5f9689e59f diagnostic.h (diagnostic_format_decoder): Parenthesize macro parameter.
* 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 08:10:58 +00:00
Graham Stott
6d8c73f7e5 * alias.c (find_base_decl): Delete redundent assignment.
From-SVN: r44710
2001-08-08 08:03:51 +00:00
Graham Stott
8e0d15d405 dependence.c (INDEX_LIMIT_CHECK): Uppercase macro parameter.
* dependence.c (INDEX_LIMIT_CHECK): Uppercase macro parameter.
        (abs): Uppercase and paranthesize macro parameter.
        (MEM_DEPENDENCY): Add whitespace.

From-SVN: r44709
2001-08-08 07:52:37 +00:00
Graham Stott
e550374314 mips.c (mips_legitimate_address_p): Fix enable checking failure check for CONST_INT
* config/mips/mips.c (mips_legitimate_address_p): Fix enable checking
        failure check for CONST_INT

From-SVN: r44708
2001-08-08 07:49:06 +00:00
Graham Stott
5b57e28b23 flow.c (back_edge_of_syntactic_loop_p): Add whitespace.
* 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-08 07:45:10 +00:00
GCC Administrator
ece4fc823e Daily bump.
From-SVN: r44705
2001-08-08 07:16:08 +00:00