Marc Espie [Tue, 14 Sep 1999 07:42:59 +0000 (07:42 +0000)]
Makefile.in: Prepend $(SHELL) to move-if-change calls.
* Makefile.in: Prepend $(SHELL) to move-if-change calls.
* msdos/top.sed: Take into account a prepended $(SHELL) to
move-if-change.
* winnt/config-nt.sed: Likewise. Kill bogus substitution.
From-SVN: r29395
J"orn Rennecke [Tue, 14 Sep 1999 07:39:14 +0000 (07:39 +0000)]
regmove.c (fixup_match_1): Don't change an unchanging register.
* regmove.c (fixup_match_1): Don't change an unchanging register.
(stable_but_for_p): Renamed to:
(stable_and_no_regs_but_for_p). Reject unchanging registers too.
Changed all callers.
From-SVN: r29394
Andreas Schwab [Tue, 14 Sep 1999 07:34:59 +0000 (07:34 +0000)]
loop.c (strength_reduce): Don't call reg_used_between_p if the insn from BL2 is after the insn from BL.
* loop.c (strength_reduce): Don't call reg_used_between_p if the
insn from BL2 is after the insn from BL.
From-SVN: r29393
Jeff Law [Tue, 14 Sep 1999 07:18:02 +0000 (01:18 -0600)]
Fix typo in comment.
From-SVN: r29392
Jeff Law [Tue, 14 Sep 1999 06:52:41 +0000 (00:52 -0600)]
Fix typos in a recent revision.
From-SVN: r29391
Marc Espie [Tue, 14 Sep 1999 06:35:01 +0000 (06:35 +0000)]
libiberty.h (basename): OpenBSD has a correct prototype.
* libiberty.h (basename): OpenBSD has a correct prototype.
(xrealloc): Remove outdated comment.
From-SVN: r29390
Richard Henderson [Tue, 14 Sep 1999 04:19:34 +0000 (21:19 -0700)]
recog.h (INSN_OUTPUT_FORMAT_*): New.
* recog.h (INSN_OUTPUT_FORMAT_*): New.
(struct insn_data): Merge `template' and `outfun' into `output'.
Add `output_format'.
* genoutput.c (INSN_OUTPUT_FORMAT_*): New.
(struct data): Remove `outfun'; add `output_format'.
(name_for_index): Remove declaration.
(output_insn_data): Handle output formats.
(process_template): Emit the bare array for @.
(gen_expand, gen_split): Set output_format to NONE.
* output.h (get_insn_template): Declare.
* final.c (get_insn_template): New.
(final_scan_insn): Use it.
* toplev.c (compile_file): Likewise.
* c4x/c4x.c (c4x_process_after_reload): Likewise.
* i860/i860.c (output_delayed_branch): Likewise.
(output_delay_insn): Likewise.
From-SVN: r29389
Alexandre Oliva [Tue, 14 Sep 1999 02:31:19 +0000 (02:31 +0000)]
* rtl.c (obstack_alloc_rtx): Removed.
From-SVN: r29388
Mark Mitchell [Tue, 14 Sep 1999 00:50:07 +0000 (00:50 +0000)]
cp-tree.h (build_target_expr): New function.
* cp-tree.h (build_target_expr): New function.
* call.c (build_conditional_expr): Use build_target_expr.
(convert_like): Likewise.
(build_over_call): Likewise.
* cvt.c (build_up_reference): Likewise.
* decl.c (build_cleanup_on_safe_obstack): Fold into ...
(destroy_local_var): Here.
(build_target_expr): New function.
* tree.c (build_cplus_new): Use it.
(get_target_expr): Likewise.
From-SVN: r29387
Zack Weinberg [Tue, 14 Sep 1999 00:02:56 +0000 (00:02 +0000)]
gmicro.md: Disable move DF->DI anonymous pattern.
1999-09-13 17:03 -0700 Zack Weinberg <zack@bitmover.com>
* config/gmicro/gmicro.md: Disable move DF->DI anonymous pattern.
From-SVN: r29386
Richard Henderson [Mon, 13 Sep 1999 22:22:48 +0000 (15:22 -0700)]
i386.c (call_insn_operand): Reject const_int.
* i386.c (call_insn_operand): Reject const_int.
(expander_call_insn_operand): Use call_insn_operand.
From-SVN: r29385
Kaveh R. Ghazi [Mon, 13 Sep 1999 21:46:32 +0000 (21:46 +0000)]
* gcc.c (getrusage): Wrap prototype arguments in PROTO().
From-SVN: r29384
Zack Weinberg [Mon, 13 Sep 1999 19:20:51 +0000 (19:20 +0000)]
Fix typos commenting out movdicc, movdfcc
From-SVN: r29383
Zack Weinberg [Mon, 13 Sep 1999 19:19:17 +0000 (19:19 +0000)]
i370.md (mulsi, [...]): Use DImode operation.
1999-09-13 12:18 -0700 Zack Weinberg <zack@bitmover.com>
* config/i370/i370.md (mulsi, divsi, modsi anonymous insns):
Use DImode operation.
From-SVN: r29382
Zack Weinberg [Mon, 13 Sep 1999 19:16:24 +0000 (19:16 +0000)]
gcc.c: Include sys/resource.h.
1999-09-13 12:13 -0700 Zack Weinberg <zack@bitmover.com>
* gcc.c: Include sys/resource.h.
(report_times): New flag.
(execute): If report_times is set, calculate and report the
CPU time consumed by each subprocess.
(rus, prus): New globals.
(option_map): Add --time.
(display_help): Document -time.
(process_command): Set report_times if -time is given.
Turn off -pipe if -time is given.
* invoke.texi: Document new option -time.
* configure.in: Check for getrusage. Check if we have to
prototype getrusage.
* acconfig.h: Add NEED_DECLARATION_GETRUSAGE.
* configure: Regenerate.
* config.in: Regenerate.
From-SVN: r29381
Dave Brolley [Mon, 13 Sep 1999 16:58:44 +0000 (16:58 +0000)]
cppinit.c (append_include_chain): Initialize 'next' and 'alloc' fields.
Mon Sep 13 12:57:06 1999 Dave Brolley <brolley@cygnus.com>
* cppinit.c (append_include_chain): Initialize 'next' and 'alloc'
fields.
From-SVN: r29380
Nathan Sidwell [Mon, 13 Sep 1999 14:23:16 +0000 (14:23 +0000)]
sizeof3.C: Remove XFAILS.
* g++.old-deja/g++.other/sizeof3.C: Remove XFAILS.
* g++.old-deja/g++.other/sizeof4.C: Remove XFAILS.
From-SVN: r29379
Nathan Sidwell [Mon, 13 Sep 1999 13:41:30 +0000 (13:41 +0000)]
typeck.c (expr_sizeof): Don't decay arrays and functions.
* typeck.c (expr_sizeof): Don't decay arrays and functions.
Remove misleading comment.
(build_compound_expr): Don't decay arrays.
From-SVN: r29378
Nathan Sidwell [Mon, 13 Sep 1999 13:14:43 +0000 (13:14 +0000)]
Set *correct* g++ options.
From-SVN: r29377
Mark Klein [Mon, 13 Sep 1999 12:30:08 +0000 (12:30 +0000)]
* config/mpeix.mt: New for MPEiX port.
From-SVN: r29374
Jeffrey A Law [Mon, 13 Sep 1999 12:28:55 +0000 (12:28 +0000)]
* gcc.c-torture/compile/990913-1.c: New test.
From-SVN: r29373
Jason Merrill [Mon, 13 Sep 1999 10:12:07 +0000 (10:12 +0000)]
call.c (build_conditional_expr): Always use a TARGET_EXPR for class rvalues again.
* call.c (build_conditional_expr): Always use a TARGET_EXPR for
class rvalues again.
From-SVN: r29372
Nick Clifton [Mon, 13 Sep 1999 09:14:21 +0000 (09:14 +0000)]
Move definition of 'thenan' to its own object file in order to save space.
From-SVN: r29371
Jeff Law [Mon, 13 Sep 1999 07:45:11 +0000 (01:45 -0600)]
Daily bump.
From-SVN: r29370
Andreas Schwab [Mon, 13 Sep 1999 07:41:20 +0000 (07:41 +0000)]
tree.c (fix_sizetype): Exchange the types for TYPE_SIZE and TYPE_SIZE_UNIT.
* tree.c (fix_sizetype): Exchange the types for TYPE_SIZE and
TYPE_SIZE_UNIT.
From-SVN: r29369
Kaveh Ghazi [Mon, 13 Sep 1999 04:40:51 +0000 (04:40 +0000)]
Fix typo in last change.
From-SVN: r29368
Kaveh R. Ghazi [Mon, 13 Sep 1999 03:57:40 +0000 (03:57 +0000)]
Makefile.in (gcc.o, [...]): Depend on gcc.h.
* Makefile.in (gcc.o, gccspec.o, cppspec.o): Depend on gcc.h.
* gcc.h: New file.
(lang_specific_driver): Don't take a function pointer parameter.
All callers changed.
* gcc.c: Include gcc.h.
(do_spec, fancy_abort,lang_specific_driver,lang_specific_pre_link,
lang_specific_extra_outfiles, fatal): Don't declare.
(multilib_defaults_raw): Constify.
(read_specs): Call memset, rather than bzero.
(main): Call return, not exit.
(lookup_compiler): Call memcpy, not bcopy.
(fatal): Make extern.
* cppspec.c: Include gcc.h.
(lang_specific_driver): Initialize variable `quote'. Constify a
char*. All calls to the function pointer parameter now
explicitly call `fatal'.
* gccspec.c (lang_specific_driver): Include gcc.h.
cp:
* Make-lang.in (g++spec.o): Depend on system.h and gcc.h.
* g++spec.c: Include gcc.h.
(lang_specific_driver): Constify a char*. Call xcalloc, not
xmalloc/bzero. All calls to the function pointer parameter now
explicitly call `fatal'.
f:
* Make-lang.in (g77spec.o): Depend on system.h and gcc.h.
* g77spec.c: Include gcc.h.
(g77_xargv): Constify.
(g77_fn): Add parameter prototypes.
(lookup_option, append_arg): Add static prototypes.
(g77_newargv): Constify.
(lookup_option, append_arg, lang_specific_driver): Constify a char*.
(lang_specific_driver): All calls to the function pointer
parameter now explicitly call `fatal'.
java:
* Make-lang.in (jvspec.o): Depend on system.h and gcc.h.
* jvspec.c: Include gcc.h. Don't include gansidecl.h.
(do_spec, lang_specific_pre_link, lang_specific_driver,
input_filename, input_filename_length): Don't declare.
(main_class_name, jvgenmain_spec, lang_specific_driver):
Constify a char*.
(lang_specific_driver): All calls to the function pointer
parameter now explicitly call `fatal'.
From-SVN: r29367
Mark Mitchell [Mon, 13 Sep 1999 00:35:00 +0000 (00:35 +0000)]
call.c (implicit_conversion): Robustify.
* call.c (implicit_conversion): Robustify. Handle OFFSET_REFs.
* cvt.c (ocp_convert): Complete the from and destination types.
Adjust warning about functions always being `true' in conditionals.
* decl.c (duplicate_decls): Don't play funny games with abort.
* error.c (dump_expr): Handle OVERLOADs.
* spew.c (probe_obstack): Remove.
* typeck.c (condition_conversion): Use perform_implicit_conversion.
From-SVN: r29366
Mark Mitchell [Sun, 12 Sep 1999 21:19:02 +0000 (21:19 +0000)]
decl.c (add_decl_to_level): Remove TREE_PERMANENT assertion.
* decl.c (add_decl_to_level): Remove TREE_PERMANENT assertion.
(init_decl_processing): Don't set TREE_PERMANENT for the
error_mark_node.
(start_decl): Don't rebuild non-permanent ARRAY_TYPEs.
(grokdeclarator): Likewise.
(grokparms): Don't check TREE_PERMANENT when building up lists.
* decl2.c (grokfield): Don't assert TREE_PERMANENT.
(mark_inline_for_output): Likewise.
* expr.c (cplus_expand_expr): Don't check TREE_PERMANENT.
* init.c (build_offset_ref): Don't check TREE_PERMANENT.
* lex.c (check_newline): Don't check ggc_p; it is always one.
* pt.c (process_template_parm): Don't check TREE_PERMANENT.
* spew.c (yylex): Don't copy_node or probe_obstacks for
non-permanent CONSTANTs and STRINGs.
* tree.c (build_cplus_array_type_1): Don't fuss with
TREE_PERMANENT on ARRAY_TYPEs.
From-SVN: r29365
Richard Earnshaw [Sun, 12 Sep 1999 18:51:35 +0000 (18:51 +0000)]
arm.c (note_invalid_constants): Use recog_data.operand_type for recog_op_type.
* arm.c (note_invalid_constants): Use recog_data.operand_type
for recog_op_type.
From-SVN: r29364
Bernd Schmidt [Sun, 12 Sep 1999 15:15:54 +0000 (15:15 +0000)]
Fix stupid mistake
From-SVN: r29363
Bernd Schmidt [Sun, 12 Sep 1999 15:03:28 +0000 (15:03 +0000)]
Add missing declarations
From-SVN: r29362
Bernd Schmidt [Sun, 12 Sep 1999 14:54:56 +0000 (14:54 +0000)]
Use structures not many single arrays in reload
From-SVN: r29361
Bernd Schmidt [Sun, 12 Sep 1999 14:03:23 +0000 (14:03 +0000)]
define_function cleanup
From-SVN: r29360
Richard Henderson [Sun, 12 Sep 1999 12:46:27 +0000 (05:46 -0700)]
* alpha.md (adddi3): Make `pattern' array static.
From-SVN: r29359
Richard Henderson [Sun, 12 Sep 1999 12:46:08 +0000 (05:46 -0700)]
Replace insn_foo with insn_data.foo.
From-SVN: r29358
Michael Hayes [Sun, 12 Sep 1999 10:24:02 +0000 (10:24 +0000)]
c4x.h (c4x_rpts_cycles_string, [...]): Constify char *.
* config/c4x/c4x.h (c4x_rpts_cycles_string,
c4x_cpu_version_string): Constify char *.
* config/c4x/c4x.c (c4x_rpts_cycles_string,
c4x_cpu_version_string): Likewise.
From-SVN: r29357
Jeff Law [Sun, 12 Sep 1999 07:45:08 +0000 (01:45 -0600)]
Daily bump.
From-SVN: r29356
Richard Henderson [Sun, 12 Sep 1999 06:30:39 +0000 (23:30 -0700)]
tree.c (save_tree_status): Revert 10 Sep change.
* tree.c (save_tree_status): Revert 10 Sep change.
(restore_tree_status): Likewise. Call obstack_free with NULL
before freeing the obstack proper.
From-SVN: r29355
Richard Henderson [Sun, 12 Sep 1999 06:26:04 +0000 (23:26 -0700)]
* cse.c (cse_main): If gc'ing, collect around cse_basic_block.
From-SVN: r29354
Richard Henderson [Sun, 12 Sep 1999 06:25:44 +0000 (23:25 -0700)]
ggc-simple.c (ggc_pop_context): Fold outstanding bytes into surrounding context.
* ggc-simple.c (ggc_pop_context): Fold outstanding bytes into
surrounding context.
From-SVN: r29353
Alexandre Petit-Bianco [Sun, 12 Sep 1999 03:20:31 +0000 (03:20 +0000)]
re GNATS gcj/18 (Internal error: segfault on invalid cast)
Sat Sep 11 16:46:44 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (find_applicable_accessible_methods_list): Search
abstract classes as interfaces.
(Fix to Java PR #18:
http://sourceware.cygnus.com/ml/java-prs/1999-q3/msg00015.html)
From-SVN: r29352
Mark Mitchell [Sun, 12 Sep 1999 02:49:34 +0000 (02:49 +0000)]
tree.c (type_hash_canon): Put all types in the hash-table, when GC'ing.
* tree.c (type_hash_canon): Put all types in the hash-table, when
GC'ing.
From-SVN: r29351
Mark Mitchell [Sun, 12 Sep 1999 02:45:30 +0000 (02:45 +0000)]
decl.c (add_decl_to_level): Remove TREE_PERMANENT assertion.
* decl.c (add_decl_to_level): Remove TREE_PERMANENT assertion.
(init_decl_processing): Don't set TREE_PERMANENT for the
error_mark_node.
(start_decl): Don't rebuild non-permanent ARRAY_TYPEs.
(grokdeclarator): Likewise.
(grokparms): Don't check TREE_PERMANENT when building up lists.
* decl2.c (grokfield): Don't assert TREE_PERMANENT.
(mark_inline_for_output): Likewise.
* expr.c (cplus_expand_expr): Don't check TREE_PERMANENT.
* init.c (build_offset_ref): Don't check TREE_PERMANENT.
* lex.c (check_newline): Don't check ggc_p; it is always one.
* pt.c (process_template_parm): Don't check TREE_PERMANENT.
* spew.c (yylex): Don't copy_node or probe_obstacks for
non-permanent CONSTANTs and STRINGs.
* tree.c (build_cplus_array_type_1): Don't fuss with
TREE_PERMANENT on ARRAY_TYPEs.
From-SVN: r29350
Richard Henderson [Sun, 12 Sep 1999 01:51:28 +0000 (18:51 -0700)]
Replace recog_foo with recog_data.foo.
From-SVN: r29349
Mark Mitchell [Sun, 12 Sep 1999 01:12:59 +0000 (01:12 +0000)]
cp-tree.def (CLEANUP_STMT): New node.
* cp-tree.def (CLEANUP_STMT): New node.
* cp-tree.h (language_function): Add name_declared.
(current_function_name_declared): New macro.
(CLEANUP_DECL): New macro.
(CLEANUP_EXPR): Likewise.
(emit_local_var): Likewise.
(finish_decl_cleanup): New function.
* cvt.c (build_up_reference): Simplify.
(ocp_convert): Remove dead code.
* decl.c (start_decl): Remove call to add_decl_stmt.
(grok_reference_init): Adjust, to handle bindings temporaries to
references. Remove dead code.
(initialize_local_var): Don't generate RTL for
declarations here, or build cleanups here. Don't fuss with
obstacks. Replace expand_start_target_temps calls with explicit
setting of stms_are_full_exprs_p.
(destroy_local_var): New function.
(emit_local_var): Likewise.
(cp_finish_decl): Use them, as appropriate.
(start_function): Announce template functions.
(store_parm_decls): Don't call declare_function_name here.
(finish_stmt): Don't start emit base-initialization code when just
building the statement-tree.
* init.c (create_temporary_var): Move add_decl_stmt call ...
(get_temp_regvar): Here.
* pt.c (tsubst_expr): Make DECL_INITIAL look like what
cp_finish_decl would expect. Don't call add_decl_stmt.
* semantics.c (begin_compound_stmt): Call declare_function_name,
if appropriate.
(finish_decl_cleanup): New function.
(expand_stmt): Use emit_local_var to output variables.
(expand_body): Set current_funtion_name_declared.
From-SVN: r29348
Alexandre Petit-Bianco [Sat, 11 Sep 1999 22:22:57 +0000 (22:22 +0000)]
class.c (finish_class): We're now outside a valid method declaration.
Thu Sep 9 17:33:28 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* class.c (finish_class): We're now outside a valid method
declaration. Tell the rest of gcc so.
From-SVN: r29347
Craig Burley [Sat, 11 Sep 1999 21:53:17 +0000 (21:53 +0000)]
New shell scripts to ease dealing with Netlib f2c vis-a-vis g77 libg2c
From-SVN: r29346
Zack Weinberg [Sat, 11 Sep 1999 21:13:01 +0000 (21:13 +0000)]
Remove trailing whitespace from lines
From-SVN: r29283
Richard Henderson [Sat, 11 Sep 1999 19:50:42 +0000 (12:50 -0700)]
Update copyright.
From-SVN: r29282
Alex Samuel [Sat, 11 Sep 1999 19:48:37 +0000 (19:48 +0000)]
Alex Samuel <samuel@codesourcery.com>
* ggc.h (rtvec_def): Forward declare.
(tree_node): Likewise.
(ggc_root): Define.
(roots): Declare.
(ggc_set_mark_rtx): Add prototype.
(ggc_set_mark_rtvec): Likewise.
(ggc_set_mark_tree): Likewise.
* ggc-simple.c (ggc_root): Don't define.
(roots): Don't declare.
(ggc_mark_rtx): Remove.
(ggc_mark_rtvec): Likewise.
(ggc_mark_tree): Likewise.
(ggc_mark_varray): Likewise.
(ggc_mark_tree_hash_table_entry): Likewise.
(ggc_mark_tree_hash_table): Likewise.
(ggc_set_mart_rtx): New function.
(ggc_set_mark_rtvec): Likewise.
(ggc_set_mark_tree): Likewise.
(ggc_add_root): Remove.
(ggc_add_rtx_root): Likewise.
(ggc_remove_tree_root): Likewise.
(ggc_add_string_root): Likewise.
(ggc_add_tree_varray_root): Likewise.
(ggc_add_tree_hash_table_root): Likewise.
(ggc_del_root): Likewise.
(ggc_mark_rtx_ptr): Likewise.
(ggc_mark_tree_ptr): Likewise.
(ggc_mark_string_ptr): Likewise.
(ggc_mark_tree_varray_ptr): Likewise.
(ggc_mark_tree_hash_table_ptr): Likewise.
* ggc-common.c: New file.
* Makefile.in (OBJS): Add ggc-common.o.
(ggc-common.o): List dependencies.
From-SVN: r29281
Jeff Law [Sat, 11 Sep 1999 07:45:09 +0000 (01:45 -0600)]
Daily bump.
From-SVN: r29280
Zack Weinberg [Sat, 11 Sep 1999 05:38:06 +0000 (05:38 +0000)]
cppalloc.c (xstrdup): Use memcpy.
1999-09-10 22:37 -0700 Zack Weinberg <zack@bitmover.com>
* cppalloc.c (xstrdup): Use memcpy.
* cpperror.c (cpp_print_containing_files): Don't use
cpp_notice.
* cpplib.c (conditional_skip): Set temp->lineno.
(do_endif): Make error message less obscure.
(if_directive_name): New function.
(cpp_get_token [case EOF]): Unwind the if stack and generate
error messages for each unterminated conditional in this file.
(parse_string): Do not behave differently if -traditional.
From-SVN: r29279
Tom Tromey [Fri, 10 Sep 1999 22:03:10 +0000 (22:03 +0000)]
configure: Rebuilt.
* configure: Rebuilt.
* configure.in: Build include/Makefile.
* Makefile.in: Rebuilt.
* Makefile.am (SUBDIRS): Added gcj and include.
(install-data-local): New target.
(extra_headers): New macro.
* include/Makefile.in: New file.
* include/Makefile.am: New file.
* interpret.cc: Don't include gcj/field.h or gcj/cni.h.
* java/lang/reflect/natField.cc: Don't include gcj/field.h or
gcj/cni.h.
* boehm.cc: Don't include java-threads.h or gcj/field.h.
* resolve.cc: Include config.h.
* defineclass.cc: Include config.h.
* include/java-interp.h: Don't include config.h.
* include/jvm.h: Include java-threads.h, Object.h, java-gc.h,
cni.h.
* gcj/javaprims.h: Regenerated namespace decls.
* classes.pl (scan): Don't put `;' after closing brace.
* Makefile.in: Rebuilt.
* Makefile.am (INCLUDES): Added -I for top_srcdir.
* configure.in: Create gcj/Makefile.
* gcj/Makefile.in: New file.
* gcj/Makefile.am: New file.
* java/lang/Object.h: Don't include any other headers.
* gcj/array.h: Renamed from include/java-array.h.
* gcj/field.h: Renamed from include/java-field.h.
* gcj/method.h: Renamed from include/java-method.h.
* gcj/cni.h, gcj/javaprims.h: Moved from include/.
Updated all files to reflect new include structure.
From-SVN: r29278
Tom Tromey [Fri, 10 Sep 1999 21:45:39 +0000 (21:45 +0000)]
gjavah.c (add_class_decl): Generate include for gcj/array.h, not java-array.h.
* gjavah.c (add_class_decl): Generate include for gcj/array.h, not
java-array.h.
(decode_signature_piece): Don't emit "::" in JArray<>.
(print_namelet): Only print trailing `;' when printing a class.
From-SVN: r29277
Richard Henderson [Fri, 10 Sep 1999 21:06:36 +0000 (14:06 -0700)]
builtins.c (expand_builtin_va_arg): Cope with an array-type va_list decomposing to pointer-type.
* builtins.c (expand_builtin_va_arg): Cope with an array-type
va_list decomposing to pointer-type.
* rs6000.c (rs6000_va_start) Unwrap the ARRAY_TYPE to get at fields.
(rs6000_va_arg): Likewise.
From-SVN: r29276
Jim Wilson [Fri, 10 Sep 1999 20:28:12 +0000 (20:28 +0000)]
Fix too small buffer problem found by ia64 port.
* except.c (start_dynamic_handler): Compute size using
STACK_SAVEAREA_MODE.
From-SVN: r29275
Kaveh R. Ghazi [Fri, 10 Sep 1999 20:03:36 +0000 (20:03 +0000)]
protoize.c: Remove various __STDC__ and POSIX hacks.
* protoize.c: Remove various __STDC__ and POSIX hacks. Don't
include directory headers. Don't define strrchr. Don't provide
my_* replacement functions. Prefer PTR over `pointer_type'.
Don't prototype system functions. Don't redefine getopt.
(shortpath, fancy_abort, notice, savestring, dupnstr, substr,
safe_read, safe_write, save_pointers, restore_pointers,
is_id_char, in_system_include_dir, directory_specified_p,
file_excluded_p, unexpand_if_needed, abspath, check_aux_info,
find_corresponding_lparen, referenced_file_is_newer,
save_def_or_dec, munge_compile_params, gen_aux_info_file,
process_aux_info_file, identify_lineno, check_source,
seek_to_line, forward_to_next_token_char, output_bytes,
output_string, output_up_to, other_variable_style_function,
find_rightmost_formals_list, do_cleaning, careful_find_l_paren,
do_processing, is_syscalls_file, rename_c_file, find_extern_def,
find_static_definition, connect_defs_and_decs, add_local_decl,
add_global_decls, needs_to_be_converted, visit_each_hash_node,
add_symbol, lookup, free_def_dec, find_file, reverse_def_dec_list,
edit_fn_declaration, edit_formals_lists, edit_fn_definition,
scan_for_missed_items, edit_file, string_list_cons): Add static
prototypes.
(standard_exec_prefix, target_machine, target_version,
default_syscalls_dir, string_list, string_list_cons, find_file,
do_cleaning): Constify a char*.
(safe_read, safe_write): Use PTR, not a char*.
(is_id_char): Take an int, not a char.
(main): Add prototype. Call return, not exit.
From-SVN: r29274
Richard Henderson [Fri, 10 Sep 1999 18:45:22 +0000 (11:45 -0700)]
loop.c (basic_induction_var): Typo NULL_RTX -> NULL.
* loop.c (basic_induction_var): Typo NULL_RTX -> NULL.
(strength_reduce): Release the varrays from the no-bivs early exit.
* reload1.c (order_regs_for_reload): Init hard_reg_n_uses before
the loop over the registers.
* tree.c (save_tree_status): Set maybepermanent_firstobj NULL
for a new obstack.
(restore_tree_status): Check that instead when freeing the obstack.
From-SVN: r29273
Mark Mitchell [Fri, 10 Sep 1999 17:55:50 +0000 (17:55 +0000)]
Fix missing ChangeLog entry
From-SVN: r29272
Andrew Haley [Fri, 10 Sep 1999 16:07:18 +0000 (16:07 +0000)]
tree.c (type_hash_lookup): Check for equal TYPE_ALIGN fields when comparing types.
Fri Sep 10 16:48:26 1999 Andrew Haley <aph@cygnus.com>
* tree.c (type_hash_lookup): Check for equal TYPE_ALIGN fields
when comparing types.
From-SVN: r29271
Richard Henderson [Fri, 10 Sep 1999 15:50:22 +0000 (08:50 -0700)]
loop.c (basic_induction_var): Typo NULL_RTX -> NULL.
* loop.c (basic_induction_var): Typo NULL_RTX -> NULL.
(strength_reduce): Release the varrays from the no-bivs early exit.
* reload1.c (order_regs_for_reload): Init hard_reg_n_uses before
the loop over the registers.
* tree.c (save_tree_status): Set maybepermanent_firstobj NULL
for a new obstack.
(restore_tree_status): Check that instead when freeing the obstack.
From-SVN: r29270
Andrew Haley [Fri, 10 Sep 1999 14:12:01 +0000 (14:12 +0000)]
alias.c (rtx_equal_for_memref_p): Allow CONST_DOUBLEs to be used as pointers.
Wed Sep 8 16:12:04 1999 Andrew Haley <aph@cygnus.com>
* alias.c (rtx_equal_for_memref_p): Allow CONST_DOUBLEs to be used
as pointers.
From-SVN: r29269
Nathan Sidwell [Fri, 10 Sep 1999 11:05:30 +0000 (11:05 +0000)]
rfg4.C: Revert erroneous change, add -w.
* g++.old-deja/g++.jason/rfg4.C: Revert erroneous change, add -w.
* g++.old-deja/g++.jason/rfg5.C: Likewise.
From-SVN: r29268
Bernd Schmidt [Fri, 10 Sep 1999 11:01:50 +0000 (11:01 +0000)]
Fix ashlqi3 bug
From-SVN: r29267
Bernd Schmidt [Fri, 10 Sep 1999 10:36:02 +0000 (10:36 +0000)]
Move declarations and building code for common tree nodes to tree.[ch]
From-SVN: r29266
Mark Mitchell [Fri, 10 Sep 1999 10:19:47 +0000 (10:19 +0000)]
cp-tree.h (language_function): Rename expanding_p to x_expanding_p.
* cp-tree.h (language_function): Rename expanding_p to
x_expanding_p. Rename named_label_uses to x_named_label_uses.
(expanding_p): Adjust accordingly.
(TREE_VIA_PRIVATE): Fix typo in comment.
(DECL_REFERENCE_SLOT): Remove.
(SET_DECL_REFERENCE_SLOT): Likewise.
* decl.c (named_label_uses): Adjust. Remove chicken comment.
(push_overloaded_decl): Don't truncate the chain of bindings when
adding an overloaded function.
(grok_reference_init): Don't use DECL_REFERENCE_SLOT.
(initialize_local_var): Fix typo in comment.
(store_parm_decls): Don't set DECL_REFERENCE_SLOT. Tidy up.
* decl2.c (start_objects): Make the fact that we are expanding
the generated function right away explicit.
(start_static_storage_duration_function): Likewise.
(finish_file): Fix typo in comment.
* init.c (build_vec_init): Correct bugs in handling cleanups.
* semantics.c (maybe_convert_cond): New function.
(FINISH_COND): Always store the condition, even if there's
a declaration.
(finish_if_stmt_cond): Use maybe_convert_cond.
(finish_while_stmt_cond): Likewise.
(finish_do_stmt): Likewise.
(finish_for_cond): Likewise.
(expand_cond): Adjust.
From-SVN: r29265
Mark Mitchell [Fri, 10 Sep 1999 09:30:57 +0000 (09:30 +0000)]
cp-tree.h (finish_cleanup_try_block): New function.
* cp-tree.h (finish_cleanup_try_block): New function.
* semantics.c (finish_cleanup_try_block): Add comment.
From-SVN: r29264
Mark Mitchell [Fri, 10 Sep 1999 09:21:37 +0000 (09:21 +0000)]
cp-tree.h (FN_TRY_BLOCK_P): New macro.
* cp-tree.h (FN_TRY_BLOCK_P): New macro.
* init.c (perform_member_init): Remove obstack machinations.
(expand_cleanup_for_base): Likewise.
(finish_init_stmts): Mark the statement-expression as used.
* method.c (emit_thunk): Use tree-generating functions, not
RTL.
(do_build_copy_constructor): Likewise.
(do_build_assign_ref): Likewise.
(synthesize_method): Likewise. Keep track of line numbers.
* pt.c (tsubst_expr): Handle various kinds of try blocks.
* semantics.c (expand_stmts): Remove.
(begin_function_try_block): Set FN_TRY_BLOCK_P.
(finish_function_try_block): Be careful rechaining
function try blocks.
(expand_stmt): Loop through all the statements at a given level.
(exapnd_body): Be careful with line-numbers here too. Prepare for
being called directly from the parser.
From-SVN: r29263
Mark Mitchell [Fri, 10 Sep 1999 09:10:24 +0000 (09:10 +0000)]
cp-tree.h (finish_function): Adjust prototype.
* cp-tree.h (finish_function): Adjust prototype.
* decl.c (finish_function): Return the function compiled.
* pt.c (instantiate_decl): Don't play games with obstacks.
* tree.c (mapcar): Handle OFFSET_REF and BIT_FIELD_REF.
(search_tree): Likewise.
* typeck.c: Fix typo in comment.
* typeck2.c (store_init_value): Add comment.
From-SVN: r29262
Mark Mitchell [Fri, 10 Sep 1999 08:52:07 +0000 (08:52 +0000)]
cp-tree.h (finish_function): Adjust prototype.
* cp-tree.h (finish_function): Adjust prototype.
* decl.c (finish_function): Return the function compiled.
* pt.c (instantiate_decl): Don't play games with obstacks.
* tree.c (mapcar): Handle OFFSET_REF and BIT_FIELD_REF.
(search_tree): Likewise.
* typeck.c: Fix typo in comment.
* typeck2.c (store_init_value): Add comment.
From-SVN: r29261
Mark Mitchell [Fri, 10 Sep 1999 08:30:08 +0000 (08:30 +0000)]
cp-tree.h (CPTI_ATEXIT): New macro.
* cp-tree.h (CPTI_ATEXIT): New macro.
(atexit_node): Likewise.
* decl.c (destroy_local_static): New function, broken out from ...
(expand_static_init): Here.
From-SVN: r29260
Mark Mitchell [Fri, 10 Sep 1999 08:14:16 +0000 (08:14 +0000)]
rtti.c (get_tinfo_var): These should always be global
* rtti.c (get_tinfo_var): These should always be global
(expand_si_desc): Use tree, not RTL, functions to generate code.
(expand_class_desc): Likewise.
(expand_ptr_desc): Likewise.
(expand_attr_desc): Likewise.
(expand_generic_desc): Likewise.
(synthesize_tinfo_fn): Likewise.
From-SVN: r29259
Mark Mitchell [Fri, 10 Sep 1999 08:08:52 +0000 (08:08 +0000)]
Regenerated
From-SVN: r29258
Jeff Law [Fri, 10 Sep 1999 07:45:10 +0000 (01:45 -0600)]
Daily bump.
From-SVN: r29257
Mark Mitchell [Fri, 10 Sep 1999 05:31:24 +0000 (05:31 +0000)]
semantics.c (RECHAIN_STMTS): Remove `last' parameter.
* semantics.c (RECHAIN_STMTS): Remove `last' parameter.
(RECHAIN_STMTS_FROM_LAST): Remove. Replace all uses with
RECHAIN_STMTS.
(RECHAIN_STMST_FROM_CHAIN): Likewise.
From-SVN: r29256
Richard Henderson [Fri, 10 Sep 1999 03:16:49 +0000 (20:16 -0700)]
c-decl.c (finish_function): When processing a nested function...
* c-decl.c (finish_function): When processing a nested function,
push and pop GC context around rest_of_compilation.
From-SVN: r29255
Jason Merrill [Fri, 10 Sep 1999 01:13:10 +0000 (21:13 -0400)]
revert:
Thu Sep 9 12:20:34 1999 Nick Clifton <nickc@cygnus.com>
* toplev.c (documented_lang_options):
From-SVN: r29253
Mark Mitchell [Fri, 10 Sep 1999 01:09:05 +0000 (01:09 +0000)]
* parse.y (simple_stmt): Fix typo in last change.
From-SVN: r29252
Tom Tromey [Fri, 10 Sep 1999 00:10:04 +0000 (00:10 +0000)]
configure: Rebuilt.
* configure: Rebuilt.
* configure.in: Fixed typo; variable is THREADSPEC and not
THREADSPECS.
From-SVN: r29251
Richard Henderson [Thu, 9 Sep 1999 23:45:55 +0000 (16:45 -0700)]
i386.c (override_options): Remove ppro, pentium2, and p2 as aliases.
* i386.c (override_options): Remove ppro, pentium2, and p2 as aliases.
Default ix86_arch to PROCESSOR_I386.
* i386.h (CC1_CPU_SPEC): Don't add -march=foo. Remove -mno-foo.
(CPP_486_SPEC, CPP_586_SPEC, CPP_686_SPEC): Delete.
(CPP_CPU_DEFAULT_SPEC): Define to __tune_foo__.
(CC1_CPU_SPEC): Make -march=foo define __foo__, and provide
__tune_foo__ if no -mcpu. Make -mcpu=bar define __tune_bar__.
(EXTRA_SPECS): Remove deleted specs.
From-SVN: r29250
Mark Mitchell [Thu, 9 Sep 1999 23:24:34 +0000 (23:24 +0000)]
cp-tree.h (EXPR_STMT_ASSIGNS_THIS): New macro.
* cp-tree.h (EXPR_STMT_ASSIGNS_THIS): New macro.
(STMT_IS_FULL_EXPR_P): Likewise.
(STMT_LINENO_FOR_FN_P): Likewise.
(prep_stmt): New function.
(building_stmt_tree): Tweak for safety.
* pt.c (tsubst_expr): Use prep_stmt throughout.
(add_tree): Move it to semantics.c
* semantics.c (add_tree): Move it here.
(finish_expr_stmt_real): New function.
(finish_expr_stmt): Use it.
(finish_if_stmt_cond): Use FINISH_COND.
(finish_while_stmt_cond): Likewise.
(finish_for_cond): Likewise.
(finish_stmt_tree): Tweak line-number handling.
(prep_stmt): New function.
(expand_stmt): Use it.
From-SVN: r29249
Richard Henderson [Thu, 9 Sep 1999 23:04:12 +0000 (16:04 -0700)]
function.c (assign_stack_local_1): Allocate from function->x_frame_offset, not frame_offset.
* function.c (assign_stack_local_1): Allocate from
function->x_frame_offset, not frame_offset.
From-SVN: r29248
Mark Mitchell [Thu, 9 Sep 1999 22:41:05 +0000 (22:41 +0000)]
New test
From-SVN: r29247
Mark Mitchell [Thu, 9 Sep 1999 22:28:15 +0000 (22:28 +0000)]
cp-tree.h (begin_switch_stmt): Adjust prototype.
* cp-tree.h (begin_switch_stmt): Adjust prototype.
(finish_switch_cond): Likewise.
* parse.y (simple_stmt): Adjust accordingly.
* parse.c: Regenerated.
* pt.c (tsubst_expr): Adjust accordingly.
* semantics.c (expand_cond): New function.
(FINISH_COND): New macro.
(begin_switch_stmt): Build the SWITCH_STMT here.
(finish_switch_stmt_cond): Not here.
(expand_stmt): Adjust calls to begin_switch_stmt and
finish_switch_cond. Use expand_cond throughout.
From-SVN: r29246
Mark Mitchell [Thu, 9 Sep 1999 21:49:02 +0000 (21:49 +0000)]
dump.c (dequeue_and_dump): Dump types for constants.
* dump.c (dequeue_and_dump): Dump types for constants.
Describe DECL_ARG_TYPE more intuitively.
Handle ARRAY_REF.
From-SVN: r29245
Mark Mitchell [Thu, 9 Sep 1999 21:47:28 +0000 (21:47 +0000)]
decl.c (lang_mark_tree): Mark TYPE_LANG_SPECIFIC.
* decl.c (lang_mark_tree): Mark TYPE_LANG_SPECIFIC.
(lang_cleanup_tree): Remove.
* lex.c (make_lang_type): Use ggc_alloc to allocate
TYPE_LANG_SPECIFIC.
From-SVN: r29244
Mark Mitchell [Thu, 9 Sep 1999 21:45:27 +0000 (21:45 +0000)]
Fix typo in last change.
From-SVN: r29243
Mark Mitchell [Thu, 9 Sep 1999 21:41:38 +0000 (21:41 +0000)]
ggc.h (lang_cleanup_tree): Remove.
* ggc.h (lang_cleanup_tree): Remove.
* gcc-simple.c (ggc_free_tree): Don't call lang_cleanup_tree.
* ggc-callbacks.c (lang_cleanup_tree): Remove.
* c-decl.c (finish_struct): Use ggc_alloc to allocate
TYPE_LANG_SPECIFIC when garbage collecting.
(lang_cleanup_tree): Remove.
From-SVN: r29242
Jason Merrill [Thu, 9 Sep 1999 21:36:20 +0000 (21:36 +0000)]
defaults.h (EH_FRAME_SECTION, [...]): Define here.
* defaults.h (EH_FRAME_SECTION, EH_FRAME_SECTION_ASM_OP): Define here.
* crtstuff.c: Not here.
* dwarf2out.c: Or here.
* libgcc2.c (__do_global_ctors, __do_global_dtors): Handle EH frame
info.
From-SVN: r29241
Mark Mitchell [Thu, 9 Sep 1999 19:02:39 +0000 (19:02 +0000)]
Reorganize per-function data.
* cp-tree.h (saved_scope): Add function_decl, bindings.
(language_function): Rename binding_level to bindings.
(cp_function_chain): Use the current_function, not the
outer_function_chain.
(current_class_ptr): Make it work, even when there's no
current function.
(current_class_ref): Likewise.
(SF_DEFAULT, SF_PRE_PARSED, SF_INCLASS_INLINE, SF_EXPAND): New
macros.
(clear_temp_name): Remove.
* decl.c (check_function_type): New function, broken out from
start_function.
(current_binding_level): Adjust definition.
(pushlevel): Simplify.
(poplevel): Don't use named_label_uses when we're outside
a function scope.
(mark_saved_scope): Mark function_decl and bindings.
(maybe_push_to_top_level): Don't unconditionally push a new
function context. Save bindings and the current_function_decl.
Don't clear named_labels.
(pop_from_top_level): Pop function context if appropriate.
(init_decl_processing): Set init_lang_status and free_lang_status,
rather than save_lang_status and restore_lang_status.
(start_function): Take SF_* flags. Don't clear per-function data.
Reorder and simplify to use new per-function data code. Add
asserts.
(store_parm_decls): Don't call init_function_start here.
(finish_function): Adjust for new handling of per-function data.
(push_cp_function_context): Simplify.
(mark_cp_function_context): Change binding_level to bindings.
* decl2.c (clear_temp_name): Remove.
(start_objects): Use SF flags to start_function.
(start_static_storage_duration_function): Likewise.
* except.c (start_anon_func): Remove redundant calls to
push_function_context_to. Use SF flags to start function.
(end_anon_func): Remove redundant call to pop_function_context
from.
* lex.c (reinit_parse_for_function): Don't initialize per-function
data.
* method.c (emit_thunk): Clear current_function after calling
assemble_end_function. Use SF flags for start_function.
(synthesize_method): Use SF flags for start_function.
* parse.c: Regenerated.
* parse.y (fn.defpen): Likewise.
(pending_inline): Clear current_function, even if something goes
wrong.
* pt.c (instantiate_decl): Use SF flags to start_function.
Don't save and restore expanding_p.
(add_tree): Handle the case where we are outside any function.
(end_tree): Likewise.
* rtti.c (sythesize_tinfo_fn): Use SF flags to start_function.
* semantics.c (begin_function_definition): Likewise.
(expand_body): Likewise.
From-SVN: r29240
Mark Mitchell [Thu, 9 Sep 1999 18:55:37 +0000 (18:55 +0000)]
function.h (free_after_compilation): Remove decl parameter.
* function.h (free_after_compilation): Remove decl parameter.
(free_varasm_status0: Likewise.
(free_emit_status): Likewise.
(free_stmt_status): Likewise.
(free_after_compilation): Likewise.
(init_lang_status): New variable.
(free_lang_status): Likewise.
* emit-rtl.c (free_emit_status): Make decl parameter implicit.
* function.c (init_lang_status): New variable.
(free_lang_status): Likewise.
(push_function_context_to): Don't set function::decl here.
(free_after_copmilation): Make decl parameter implicit. Call
free_lang_status if defined.
(prepare_function_start): Call init_lang_status if defined.
(init_function_start): Set function::decl here.
* profile.c (output_func_start_profiler): Don't call pushdecl
until we've actually started the function.
* stmt.c (free_stmt_status): Make decl parameter implicit.
* toplev.c (rest_of_compilation): Don't pass decl to
free_after_compilation.
* varasm.c (free_varasm_status): Likewise.
From-SVN: r29239
Mark Mitchell [Thu, 9 Sep 1999 18:33:45 +0000 (18:33 +0000)]
cp-tree.h (scratch_tree_cons): Remove.
* cp-tree.h (scratch_tree_cons): Remove.
* call.c: Replace all uses of expr_tree_cons, saveable_tree_cons,
and perm_tree_cons with plain tree_cons.
* class.c: Likewise.
* decl.c: Likewise.
* decl2.c: Likewise.
* except.c: Likewise.
* expr.c: Likewise.
* init.c: Likewise.
* lex.c: Likewise.
* method.c: Likewise.
* parse.y: Likewise.
* pt.c: Likewise.
* repo.c: Likewise.
* rtti.c: Likewise.
* search.c: Likewise.
* typeck.c: Likewise.
* parse.c: Regenerated.
* tree.c (build_srcloc): Simplify.
From-SVN: r29238
Richard Henderson [Thu, 9 Sep 1999 17:41:45 +0000 (10:41 -0700)]
* g++.old-deja/g++.other/delete6.C: Use size_t with operator new.
From-SVN: r29237
Bernd Schmidt [Thu, 9 Sep 1999 16:24:08 +0000 (16:24 +0000)]
Add a missing GC root
From-SVN: r29236
Richard Earnshaw [Thu, 9 Sep 1999 14:30:54 +0000 (14:30 +0000)]
arm.c: Include "ggc.h".
* arm.c: Include "ggc.h".
(arm_add_gc_roots): New function.
(arm_override_options): Call it.
(aof_pic_entry): Add a GC root for aof_pic_label when it's allocated.
* arm.md (define_asm_attributes): Add a pool_range attribute.
From-SVN: r29235
Nathan Sidwell [Thu, 9 Sep 1999 12:11:22 +0000 (12:11 +0000)]
lookup11.C: New test.
* g++.old-deja/g++.other/lookup11.C: New test.
* g++.old-deja/g++.bugs/900428_01.C: Rework now we understand
what is permitted and what we want.
* g++.old-deja/g++.jason/rfg4.C: Rework to remove ill-formed
overload use.
* g++.old-deja/g++.jason/rfg5.C: Likewise
From-SVN: r29234
Nathan Sidwell [Thu, 9 Sep 1999 12:07:46 +0000 (12:07 +0000)]
extend.texi (Volatiles): New node.
gcc/ChangeLog:
* extend.texi (Volatiles): New node.
gcc/cp/ChangeLog:
* cp-tree.h (convert_to_void): Prototype new function.
(require_complete_type_in_void): Remove prototype.
* cvt.c (convert_to_void): New function.
(ocp_convert): Use convert_to_void.
* decl.c (cplus_expand_expr_stmt): Likewise, for complete
expressions.
* typeck.c (require_complete_type_in_void): Remove function.
(build_compound_expr): Use convert_to_void.
(build_static_cast): Likewise.
(build_c_cast): Likewise.
* semantics.c (finish_expr_stmt): Do not decay full expressions.
* typeck.c (build_x_compound_expr): Add FIXME.
From-SVN: r29233
Nick Clifton [Thu, 9 Sep 1999 11:22:50 +0000 (11:22 +0000)]
Pass -pedantic command line switch on to cpplib
From-SVN: r29232
Richard Henderson [Thu, 9 Sep 1999 10:43:57 +0000 (03:43 -0700)]
ggc-simple.c (IS_MARKED, [...]): New.
* ggc-simple.c (IS_MARKED, IGNORE_MARK): New.
(GGC_ANY_MAGIC, GGC_ANY_MAGIC_MARK): New.
(struct ggc_any): Replace `mark' with `magic_mark'.
(ggc_alloc_string): Use memcpy, not bcopy.
(ggc_alloc_any): Set magic_mark. Update bytes_alloced_since_gc.
(ggc_free_{rtx,rtvec,tree,string}): Mark inline.
(ggc_free_any): New.
(ggc_mark_string): Use IGNORE_MARK. Calc back to struct gcc_string.
(ggc_mark): Use IGNORE_MARK. Abort if magic doesn't match.
(ggc_collect): Re-enable collection avoidance. Use GGC_ANY_MARK.
Use IS_MARKED. Use ggc_free_any.
From-SVN: r29231