Commit Graph

41160 Commits

Author SHA1 Message Date
GCC Administrator
fcab624bb8 Daily bump.
From-SVN: r50222
2002-03-02 08:17:34 +00:00
Kaveh R. Ghazi
27b41650c1 Makefile.in (CRTSTUFF_CFLAGS): Add -fno-zero-initialized-in-bss.
* Makefile.in (CRTSTUFF_CFLAGS): Add -fno-zero-initialized-in-bss.
	* doc/invoke.texi (-fno-zero-initialized-in-bss): Document.
	* flags.h (flag_zero_initialized_in_bss): Declare.
	* toplev.c (flag_zero_initialized_in_bss): New flag.
	(lang_independent_options): Add flag_zero_initialized_in_bss.
	* tree.c (initializer_zerop): New function.
	* tree.h (initializer_zerop): Declare.
	* varasm.c (assemble_variable): If we can emit bss, put zero
	initializers in the bss section.

From-SVN: r50218
2002-03-02 03:52:17 +00:00
Alan Modra
ca734b39f3 rs6000.h (ASM_WEAKEN_DECL): AIX assembler doesn't like more than one symbol per .weak directive.
* config/rs6000/rs6000.h (ASM_WEAKEN_DECL): AIX assembler doesn't
	like more than one symbol per .weak directive.

From-SVN: r50217
2002-03-02 10:41:11 +10:30
Richard Henderson
49b723064f ia64.c (ia64_initial_elimination_offset): Do not adjust argument_pointer by pretend_args_size.
* config/ia64/ia64.c (ia64_initial_elimination_offset): Do not
        adjust argument_pointer by pretend_args_size.
        (ia64_va_start): Adjust va_start address by -pretend_args_size.

From-SVN: r50212
2002-03-01 15:56:33 -08:00
Kazu Hirata
fbf0fe412c * config/h8300/h8300.c (h8300_adjust_insn_length): Clean up.
From-SVN: r50207
2002-03-01 22:07:44 +00:00
Jan Hubicka
0010687d23 toplev.c (rest_of_compilation): Delete dead jumptables before loop.
* toplev.c (rest_of_compilation): Delete dead jumptables before
	loop.
	* flow.c (delete_dead_jumptables): Make global.
	* rtl.h (delete_dead_jumptables): Declare.

From-SVN: r50205
2002-03-01 20:07:01 +00:00
Michael Matz
e8b028d6ee Reduced testcase of a 252.eon (SPEC2000) problem.
From-SVN: r50204
2002-03-01 19:27:05 +00:00
Richard Henderson
9d8b90045a 981223-1.x: New.
* gcc.c-torture/compile/981223-1.x: New.
        * gcc.c-torture/compile/920625-1.x: New.

From-SVN: r50202
2002-03-01 10:39:21 -08:00
David Edelsohn
9429c84cd6 rs6000.h (HANDLE_PRAGMA_PACK): Delete.
* config/rs6000/rs6000.h (HANDLE_PRAGMA_PACK): Delete.
        * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Define.
        * config/rs6000/xcoff.h (COLLET_EXPORT_LIST): Delete.

From-SVN: r50200
2002-03-01 12:33:21 -05:00
Michael Matz
bfba94bddc typeck.c (cp_pointer_int_sum): Complete inner type which is used later by size_in_bytes().
2002-03-01  Michael Matz  <matz@suse.de>

        * typeck.c (cp_pointer_int_sum): Complete inner type which is
        used later by size_in_bytes().

From-SVN: r50197
2002-03-01 13:50:28 +00:00
Anthony Green
b41a6f95b4 Oops. A ChangeLog entry got committed prematurely with my last change.
This fixes is.

From-SVN: r50196
2002-03-01 13:43:09 +00:00
Kazu Hirata
f0b6f9a6f9 h8300-protos.h: Fix formatting.
* config/h8300/h8300-protos.h: Fix formatting.
	* config/h8300/h8300.c: Likewise.
	* config/h8300/h8300.h: Likewise.

From-SVN: r50192
2002-03-01 09:14:08 +00:00
Kazu Hirata
bc8db8a122 h8300.c (print_operand): Support 16-bit constant addresses.
* config/h8300/h8300.c (print_operand): Support 16-bit
	constant addresses.
	* config/h8300/h8300.h (TINY_CONSTANT_ADDRESS_P): New.

From-SVN: r50191
2002-03-01 08:57:14 +00:00
GCC Administrator
2631798eca Daily bump.
From-SVN: r50190
2002-03-01 08:19:04 +00:00
Richard Henderson
32b069d30c expmed.c (store_bit_field): Prevent generation of CONCATs...
* expmed.c (store_bit_field): Prevent generation of CONCATs;
        pun complex values as integers; use gen_lowpart instead of
        gen_rtx_SUBREG.
        (extract_bit_field): Likewise.

From-SVN: r50185
2002-03-01 00:13:04 -08:00
Phil Edwards
fdc9bf2946 cp-tree.h: Require __GNUC__ to be #defined.
2002-03-01  Phil Edwards  <pme@gcc.gnu.org>

	* cp-tree.h:  Require __GNUC__ to be #defined.
	(build_init):  Add missing prototype.

From-SVN: r50183
2002-03-01 07:19:29 +00:00
Alan Modra
79c4e63fcb tm.texi (ASM_WEAKEN_DECL): Document.
* doc/tm.texi (ASM_WEAKEN_DECL): Document.
	(ASM_WEAKEN_LABEL): Mention ASM_WEAKEN_DECL.
	(SUPPORTS_WEAK): Likewise.
	* output.h (add_weak): Add tree param.
	* varasm.c (add_weak): Likewise.  Save decl.
	(struct weak_syms): Add decl field.
	(mark_weak_decls): New function.
	(init_varasm_once): ggc_add_root mark_weak_decls.
	(assemble_start_function): Use ASM_WEAKEN_DECL.
	(assemble_variable): Likewise.
	(assemble_alias): Likewise.
	(declare_weak): Pass decl to add_weak.
	(weak_finish): Use ASM_WEAKEN_DECL. Try to find decl.
	(remove_from_pending_weak_list): Declare and define for
	ASM_WEAKEN_DECL.
	* c-pragma.c (handle_pragma_weak): Adjust add_weak call.
	* c-pragma.h (HANDLE_PRAGMA_WEAK): Define if ASM_WEAKEN_DECL too.
	* defaults.h (SUPPORTS_WEAK): Likewise.
	* config/rs6000/linux64.h (ASM_DECLARE_FUNCTION_NAME): Don't emit
	.weak for code sym.  Do emit .size for descriptor sym.
	(ASM_DECLARE_FUNCTION_SIZE): Define.
	* config/rs6000/rs6000.h (ASM_WEAKEN_DECL): Define.
	(ASM_OUTPUT_DEF_FROM_DECLS): Don't emit .weak here.  Don't output
	.lglobl unless TARGET_XCOFF.  Formatting fixes.
	* config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Don't emit
	.weak for code sym.
	(HANDLE_PRAGMA_WEAK): Remove.
	(ASM_WEAKEN_LABEL): Remove.
	* config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Define.

Co-Authored-By: David Edelsohn <edelsohn@gnu.org>

From-SVN: r50181
2002-03-01 16:30:38 +10:30
Anthony Green
562ff1637f Add pointer support to the reflection code.
From-SVN: r50180
2002-03-01 05:36:31 +00:00
Richard Henderson
cc36a670f7 * g++.dg/opt/vtgc1.C: Adjust patterns for ia64.
From-SVN: r50179
2002-02-28 18:39:38 -08:00
Jason Merrill
6f30f1f13c tree.h (TARGET_EXPR_SLOT, [...]): New macros.
* tree.h (TARGET_EXPR_SLOT, TARGET_EXPR_INITIAL): New macros.
        (TARGET_EXPR_CLEANUP): New macro.
cp/
        * except.c: Don't include decl.h or obstack.h.  Do include
        tree-inline.h.
        (build_throw): Destroy temporaries from the thrown
        expression before calling __cxa_throw.  Construct a thrown
        temporary directly into the exception object.
        (stabilize_throw_expr): New function.
        (wrap_cleanups_r): New function.
        * tree.c (stabilize_expr): New function.
        * init.c (build_init): New function.
        * Make-lang.in (cp/except.o): Adjust .h deps.

From-SVN: r50177
2002-02-28 20:49:00 -05:00
Richard Henderson
e38ff265da linker-map.gnu: Export operator new with unsigned long, and with std::nothrow_t.
* config/linker-map.gnu: Export operator new with unsigned long,
        and with std::nothrow_t.  Likewise operator delete.

From-SVN: r50176
2002-02-28 17:27:57 -08:00
Steve Ellcey
7879b81e6c rtl.texi (SUBREG_PROMOTED_UNSIGNED_P): Change definition to take ptr_extend into account as third type of extension.
* doc/rtl.texi (SUBREG_PROMOTED_UNSIGNED_P): Change definition
        to take ptr_extend into account as third type of extension.
        (SUBREG_PROMOTED_UNSIGNED_SET): Definition of new macro to set bit
        fields used by SUBREG_PROMOTED_UNSIGNED_P.
        * rtl.h (SUBREG_PROMOTED_UNSIGNED_SET): New macro.
        (SUBREG_PROMOTED_UNSIGNED_P): Change to return -1 as well as 0 or 1.
        * calls.c (precompute_arguments): Use new macro.
        (expand_call): Ditto.
        * combine.c (nonzero_bits): Ditto.
        (record_promoted_value): Ditto.
        * expr.c (store_expr): Ditto.
        (expand_expr): Ditto.
        * function.c (assign_parms): Ditto.

From-SVN: r50174
2002-02-28 17:19:52 -08:00
Alexandre Oliva
42d579d879 gcc.c (init_gcc_specs): Get -static and -static-libgcc to override -shared and -shared-libgcc.
* gcc.c (init_gcc_specs): Get -static and -static-libgcc to
override -shared and -shared-libgcc.

From-SVN: r50171
2002-03-01 00:50:39 +00:00
Alexandre Oliva
6bff33fb01 configure.in (libstdcxx_flags): Don't add libstdc++-v3 flags for libjava.
* configure.in (libstdcxx_flags): Don't add libstdc++-v3 flags for
libjava.
(CXX_FOR_TARGET): Explain why -shared-libgcc here.

From-SVN: r50169
2002-03-01 00:49:53 +00:00
Bryce McKinlay
2060fd4ca6 * expr.c (build_java_arraystore_check): Fix formatting.
From-SVN: r50167
2002-02-28 23:27:09 +00:00
David O'Brien
e005418551 config.gcc (sparc64-*-freebsd): Explicitly accept a cpu specification of "ultrasparc".
2002-02-28  David O'Brien  <obrien@FreeBSD.org>
	* config.gcc (sparc64-*-freebsd): Explicitly accept a cpu specification
	of "ultrasparc".
	* config/sparc/freebsd.h: Do not use MASK_FASTER_STRUCTS.  It appears
	to be broken.

Approved by:  Richard Henderson <rth@redhat.com>
              Message-ID: <20020228100723.A30279@redhat.com>

From-SVN: r50165
2002-02-28 23:06:25 +00:00
Paolo Carlini
694d519fb0 locale_facets.tcc (num_get::_M_extract_int): Admit grouping for octals and hexadecimals too.
2002-02-28  Paolo Carlini  <pcarlini@unitus.it>

        * include/bits/locale_facets.tcc (num_get::_M_extract_int):
        Admit grouping for octals and hexadecimals too.
        * testsuite/22_locale/num_get_members_char.cc: Add test04.
        (test01): Tweak "." -> "," in void* test.
        * testsuite/22_locale/num_get_members_wchar_t.cc: Ditto.

        * testsuite/27_io/ios_manip_basefield.cc: Remove static keyword.
        * testsuite/27_io/ios_manip_fmtflags.cc: Remove two of them.

From-SVN: r50162
2002-02-28 21:16:45 +00:00
Richard Henderson
abda4f1c2d ia64.c (ia64_adjust_cost): All non-MM consumers have 4 cycle latency from MM producers.
* config/ia64/ia64.c (ia64_adjust_cost): All non-MM consumers have
        4 cycle latency from MM producers.
        (ia64_internal_sched_reorder): Likewise with pipeline flush.

From-SVN: r50160
2002-02-28 11:48:40 -08:00
Jakub Jelinek
c0f0864904 * mklibgcc.in: Don't use GNU make extension.
From-SVN: r50156
2002-02-28 19:56:55 +01:00
Neil Booth
f79f265107 c-parse.in (STATIC): New terminal.
* c-parse.in (STATIC): New terminal.
	(scspec): New non-terminal.  Update productions accordingly.
	(program): Remove bogus ifc / end ifc.
	(array_declarator): Simplify production using STATIC.

From-SVN: r50155
2002-02-28 18:51:14 +00:00
Jim Meyering
001e3fee0d cpplex.c (cpp_parse_escape): Restore mistakenly-removed code: \a still means TARGET_BELL.
* cpplex.c (cpp_parse_escape): Restore mistakenly-removed code:
	\a still means TARGET_BELL.

From-SVN: r50154
2002-02-28 18:46:17 +00:00
Richard Henderson
89076bb365 haifa-sched.c (sched_emit_insn): New.
* haifa-sched.c (sched_emit_insn): New.
        (schedule_block): Use last_scheduled_insn to track last insn.
        * sched-int.h (sched_emit_insn): Prototype.
        * config/ia64/ia64.c (last_issued): Remove.
        (ia64_variable_issue): Don't set it.
        (nop_cycles_until): Use sched_emit_insn.

From-SVN: r50153
2002-02-28 10:32:12 -08:00
Andrew MacLeod
e3aaacf471 sparc.c (sparc64_initialize_trampoline): Generate sign extended constants.
* config/sparc/sparc.c (sparc64_initialize_trampoline): Generate sign
	extended constants.

From-SVN: r50152
2002-02-28 18:31:00 +00:00
Kazu Hirata
7f47359462 h8300.c: Fix formatting.
* config/h8300/h8300.c: Fix formatting.
	* config/h8300/h8300.h: Likewise.

From-SVN: r50150
2002-02-28 18:13:06 +00:00
Jason Merrill
28dc79bca6 search.c (lookup_base_r): Don't clear is_non_public just because we found a friendly scope.
* search.c (lookup_base_r): Don't clear is_non_public just because
        we found a friendly scope.

From-SVN: r50143
2002-02-28 10:46:31 -05:00
Jason Merrill
07f521fc06 search.c (lookup_base_r): Don't clear is_non_public just because we found a friendly scope.
* search.c (lookup_base_r): Don't clear is_non_public just because
        we found a friendly scope.

From-SVN: r50140
2002-02-28 10:32:38 -05:00
Marek Michalkiewicz
b96c434c39 avr.c (avr_hard_regno_mode_ok): Do not allow r29 which may overwrite the high byte of the frame pointer.
* config/avr/avr.c (avr_hard_regno_mode_ok): Do not allow r29
	which may overwrite the high byte of the frame pointer.

From-SVN: r50138
2002-02-28 15:23:54 +00:00
Bo Thorsen
9b420a6a58 linux64.h (LINK_SPEC): Fix 32/64 bit compilation.
2002-02-28  Bo Thorsen  <bo@suse.de>

	* config/i386/linux64.h (LINK_SPEC): Fix 32/64 bit compilation.
	(STARTFILE_SPEC): Add 64 bit files.
	(ENDFILE_SPEC): Likewise.

From-SVN: r50137
2002-02-28 16:16:17 +01:00
Jason Merrill
46cfb1010d c-decl.c (finish_function): Only warn about missing return statement with -Wreturn-type.
* c-decl.c (finish_function): Only warn about missing return
        statement with -Wreturn-type.
        * cp/decl.c (finish_function): Only warn about missing return
        statement with -Wreturn-type.

From-SVN: r50132
2002-02-28 08:30:04 -05:00
Bryce McKinlay
022dcc4605 expr.c (java_array_data_offset): Removed function.
* expr.c (java_array_data_offset): Removed function.
	(JAVA_ARRAY_LENGTH_OFFSET): Removed macro.
	(build_java_array_length_access): Obtain "length" value using a
	COMPONENT_REF, instead of INDIRECT_REF and arithmetic.
	(build_java_arrayaccess): Correct comment. Access "data" using a
	COMPONENT_REF, and return an ARRAY_REF instead of an INDIRECT_REF.
	(build_java_arraystore_check): New function.
	(expand_java_arraystore): Use build_java_arraystore_check.
	* parse.y (patch_assignment): Simplify code to insert a store check
	when lvalue is an ARRAY_REF. Use build_java_arraystore_check.
	* check-init.c (check_init): Update to reflect that an array length
	access is now a COMPONENT_REF.
	* gcj.texi (Code Generation): Improve documentation of
	-fno-bounds-check. Add documentation for -fno-store-check.
	* java-tree.h (flag_store_check): Declare.
	(build_java_arraystore_check): Declare.
	* lang.c (flag_store_check): Initialize to 1.
	(lang_f_options): Add store-check option.
	* jvspec.c: Don't pass store-check option to jvgenmain.
	* lang-options.h: Add help string for -fno-store-check.

From-SVN: r50129
2002-02-28 11:40:29 +00:00
Jan Hubicka
70da1d030d cfgrtl.c (purge_dead_edges): Fix handling of EH edges.
* cfgrtl.c (purge_dead_edges): Fix handling of EH edges.

	* i386.h (CONDITIONAL_REGISTER_USAGE): Do not write to
	PIC_OFFSET_TABLE_REGNUM when it is INVALID_REGNUM

From-SVN: r50128
2002-02-28 11:03:16 +00:00
Jan Hubicka
38c1593d57 basic-block.h (BB_REACHABLE): Renumber.
* basic-block.h (BB_REACHABLE): Renumber.
	(BB_DIRTY, BB_NEW): New flags.
	(clear_bb_flags): Declare.
	(update_life_info_in_dirty_blocks): Declare.
	* cfg.c (clear_bb_flags): New function.
	* cfgrtl.c (create_basic_block_structure): Set flags to BB_NEW.
	* emit-rtl.c (add_insn_after, add_insn_before, remove_insn,
	reorder_insns, emit_insn_after): Mark block as dirty.
	* flow.c (update_life_info): Fix clearing of PROP_LOG_LINKS.
	(update_life_info_in_dirty_blocks): New function.
	* recog.c (apply_change_group): Dirtify block.

	* cse.c (cse_insn): Reorder emitting of jump insn to keep
	cfg consistent.
	* gcse.c (delete_null_pointer_checks): Likewise.

	* toplev.c (dump_file_index): Move cse2 after bp,
	add DFI_null
	(dump_file_info): Similary.
	(rest_of_compilation): Avoid most of CFG rebuilds;
	do first if converision after null pointer checks, do cse2
	after branch prediction; avoid full liveness rebuild after
	initializing subregs.
	* invoke.texi (-d options): Document -du, renumber.

	* cfgcleanup.c (bb_flags): Remove BB_UPDATE_LIFE.
	(notice_new_block): Do not set BB_UPDATE_LIFE.
	(try_forward_edges, merge_blocks_move_predecessor_nojumps,
	 merge_blocks_move_successor_nojumps, merge_blocks,
	 try_crossjump_to_edge): Likewise.
	(try_optimize_cfg): Likewise; use update_life_info_in_dirty_blocks.
	* cfgrtl.c (merge_blocks_nomove): Copy b's flags to a.
	* ifcvt.c (SET_UPDATE_LIFE, UPDATE_LIFE): Kill.
	(merge_of_block): Do not use life_data_ok.
	(find_if_case_1): Do not use SET_UPDATE_LIFE.
	(if_convert): Use BB_DIRTY mechanizm to update life.
	* lcm.c (optimize_mode_switching): Update
	update_life_info_in_dirty_blocks

From-SVN: r50127
2002-02-28 10:11:01 +00:00
GCC Administrator
bde131d34d Daily bump.
From-SVN: r50126
2002-02-28 08:17:15 +00:00
Neil Booth
63e1b1c4b0 Makefile.in (integrate.o): Update.
* Makefile.in (integrate.o): Update.
	* c-decl.c (copy_lang_decl): Rename.
	* c-lang.c (LANG_HOOKS_DUP_LANG_SPECIFIC_DECL): Redefine.
	* integrate.c: Include langhooks.h.
	(copy_decl_for_inlining): Update to use langhook.
	* langhooks-def.h (lhd_do_nothing_t,
	LANG_HOOKS_DUP_LANG_SPECIFIC_DECL): New.
	(LANG_HOOKS_INITIALIZER): Update.
	* langhooks.c (lhd_do_nothing_t): New.
	* langhooks.h (struct lang_hooks): Add dup_lang_specific_decl.
	* tree.h (copy_lang_decl): Remove.
ada:
	* misc.c (copy_lang_decl): Remove.
cp:
	* class.c (build_clone): Update.
	* cp-lang.c (LANG_HOOKS_DUP_LANG_SPECIFIC_DECL): Redefine.
	* cp-tree.h (cxx_dup_lang_specific_decl): New.
	* lex.c (copy_lang_decl): Rename cxx_dup_lang_specific_decl.
	(copy_decl): Update.
	* method.c (make_thunk): Update.
f:
	* com.c (copy_lang_decl): Delete.
java:
	* decl.c (copy_lang_decl): Rename java_dup_lang_specific_decl.
	* java-tree.h (java_dup_lang_specific_decl): New.
	* lang.c (LANG_HOOKS_DUP_LANG_SPECIFIC_DECL): Redefine.
objc:
	* objc-lang.c (LANG_HOOKS_DUP_LANG_SPECIFIC_DECL): Redefine.

From-SVN: r50122
2002-02-28 07:39:44 +00:00
Andrew MacLeod
f472fa2949 dwarf2out.c (stack_adjust_offset): Add support for POST_INC, POST_DEC, and POST_MODIFY.
* dwarf2out.c (stack_adjust_offset): Add support for POST_INC,
	POST_DEC, and POST_MODIFY.

From-SVN: r50121
2002-02-28 03:09:41 +00:00
Adam Megacz
d627547118 natInetAddress.cc: Changed USE_WINSOCK to WIN32, added '#undef STRICT'.
2002-02-27  Adam Megacz <adam@xwt.org>

        * java/net/natInetAddress.cc: Changed USE_WINSOCK to WIN32, added
        '#undef STRICT'.

From-SVN: r50120
2002-02-28 01:03:37 +00:00
Zack Weinberg
273cf2e462 c-typeck.c (digest_init): Remove unused parameter; all callers changed.
* c-typeck.c (digest_init): Remove unused parameter; all
	callers changed.

From-SVN: r50118
2002-02-27 22:14:59 +00:00
Hans-Peter Nilsson
ffde667543 * gcc.c-torture/execute/20020227-1.c: New test.
From-SVN: r50117
2002-02-27 21:16:55 +00:00
Hans-Peter Nilsson
f086058e0d * gcc.c-torture/execute/20020227-1.c: New test.
From-SVN: r50116
2002-02-27 21:11:19 +00:00
Mark Mitchell
16d3e075ec visibility13.C: Remove "instantiated from here" ERROR lines.
* g++.old-deja/g++.law/visibility13.C: Remove "instantiated from
	here" ERROR lines.
	* g++.old-deja/g++.oliva/partord1.C: Likewise.
	* g++.old-deja.g++.other/defarg1.C: Likewise.
	* g++.old-deja/g++.pt/calls2.C: Likewise.
	* g++.old-deja/g++.pt/crash20.C: Likewise.
	* g++.old-deja/g++.pt/crash30.C: Likewise.
	* g++.old-deja/g++.pt/crash36.C: Likewise.
	* g++.old-deja/g++.pt/crash6.C: Likewise.
	* g++.old-deja/g++.pt/defarg13.C: Likewise.
	* g++.old-deja/g++.pt/derived3.C: Likewise.
	* g++.old-deja/g++.pt/error1.C: Likewise.
	* g++.old-deja/g++.pt/friend21.C: Likewise.
	* g++.old-deja/g++.pt/friend23.C: Likewise.
	* g++.old-deja/g++.pt/infinite1.C: Likewise.
	* g++.old-deja/g++.robertl/eb128.C: Likewise.

From-SVN: r50115
2002-02-27 20:29:45 +00:00