Nick Clifton [Tue, 2 Nov 1999 17:06:24 +0000 (17:06 +0000)]
Fix compile time warnings
From-SVN: r30353
Jan Hubicka [Tue, 2 Nov 1999 16:37:23 +0000 (17:37 +0100)]
jump.c (jump_optimize_1): Swap the incscc and the conditional mode detection code
* jump.c (jump_optimize_1): Swap the incscc and the conditional mode
detection code
* unroll.c (unroll_loop): Remove LOOP notes when loop is
completely unrolled.
From-SVN: r30352
Bernd Schmidt [Tue, 2 Nov 1999 16:00:03 +0000 (16:00 +0000)]
Delete two useless declarations.
From-SVN: r30351
Catherine Moore [Tue, 2 Nov 1999 15:48:26 +0000 (15:48 +0000)]
Makefile.in (genattrtab): Don't use (HOST_RTLANAL).
* Makefile.in (genattrtab): Don't use (HOST_RTLANAL).
* rtl.h (rtx_equal_p): Move prototype.
* rtl.c (rtx_equal_function_value_matters): Move from
rtlanal.c
(rtx_equal_p): Likewise.
* rtlanal.c (rtx_equal_function_value_matters): Delete.
(rtx_equal_p): Likewise.
From-SVN: r30350
Diego Novillo [Tue, 2 Nov 1999 14:41:16 +0000 (14:41 +0000)]
resource.c (mark_target_live_regs): For unconditional branches...
* resource.c (mark_target_live_regs): For unconditional branches,
the resources found at the branch target should be added to the
resources found so far, not intersected.
From-SVN: r30349
Philippe De Muyter [Tue, 2 Nov 1999 10:25:28 +0000 (11:25 +0100)]
* xstrdup (sys/types.h): Include this file.
From-SVN: r30347
Jeffrey A Law [Tue, 2 Nov 1999 10:23:46 +0000 (10:23 +0000)]
* gcc.1 (PA options): Remove obsolete -mshared-libs options.
From-SVN: r30346
Jeffrey A Law [Tue, 2 Nov 1999 08:50:55 +0000 (08:50 +0000)]
* pa.h (ADDR_VEC_ALIGN): Define.
From-SVN: r30345
Jeff Law [Tue, 2 Nov 1999 08:45:07 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r30344
Alexandre Petit-Bianco [Tue, 2 Nov 1999 07:51:19 +0000 (07:51 +0000)]
parse.y (method_header:): Issue error message for rule `type error'.
Mon Nov 1 23:42:00 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (method_header:): Issue error message for rule `type
error'.
(synchronized:): Error report when not using synchronized.
From-SVN: r30343
Jason Merrill [Tue, 2 Nov 1999 07:33:05 +0000 (07:33 +0000)]
decl2.c (maybe_make_one_only): Always make things comdat on ELF targets, too.
* decl2.c (maybe_make_one_only): Always make things comdat on
ELF targets, too.
From-SVN: r30341
Jason Merrill [Tue, 2 Nov 1999 07:26:47 +0000 (02:26 -0500)]
tweak comment
From-SVN: r30340
Jason Merrill [Tue, 2 Nov 1999 07:24:27 +0000 (07:24 +0000)]
libgcc2.c (__do_global_dtors): Only do EH frame stuff if ! HAS_INIT_SECTION.
* libgcc2.c (__do_global_dtors): Only do EH frame stuff if
! HAS_INIT_SECTION.
From-SVN: r30339
Jeffrey A Law [Tue, 2 Nov 1999 07:22:47 +0000 (07:22 +0000)]
jump.c (jump_optimize_1): Also move LOOP_VTOP and LOOP_CONT notes when presented with "if (foo) break...
* jump.c (jump_optimize_1): Also move LOOP_VTOP and LOOP_CONT
notes when presented with "if (foo) break; end_of_loop" and
the break sequence gets moved out of the loop.
From-SVN: r30338
Jeffrey A Law [Tue, 2 Nov 1999 06:39:04 +0000 (06:39 +0000)]
unroll.c (unroll_loop): Allocate memory for MAP using xcalloc.
* unroll.c (unroll_loop): Allocate memory for MAP using xcalloc.
Remove explicit zero initializations of entries within MAP.
From-SVN: r30337
Richard Henderson [Tue, 2 Nov 1999 02:09:55 +0000 (18:09 -0800)]
* reg-stack.c (convert_regs_1): Handle EH edges specially.
From-SVN: r30336
Tom Tromey [Tue, 2 Nov 1999 00:12:10 +0000 (00:12 +0000)]
boehm.cc (_Jv_InitGC): Set GC_java_finalization.
* boehm.cc (_Jv_InitGC): Set GC_java_finalization.
(sum_blocks): Removed.
(_Jv_GCFreeMemory): Use GC_get_free_bytes.
From-SVN: r30335
Mark Mitchell [Mon, 1 Nov 1999 23:38:57 +0000 (23:38 +0000)]
Remove duplicate of friend18.C
From-SVN: r30334
Mark Mitchell [Mon, 1 Nov 1999 23:19:44 +0000 (23:19 +0000)]
bitmap.h (BITMAP_XMALLOC): New macro.
* bitmap.h (BITMAP_XMALLOC): New macro.
* flow.c (CLEAN_ALLOCA): Remove.
(delete_unreachable_blocks): Use xmalloc/xcalloc instead of alloca.
(life_analysis): Likewise.
(update_life_info): Don't use CLEAN_ALLOCA.
(life_analysis_1): Use xmalloc/xcalloc instead of alloca.
(calculate_global_regs_live): Likewise.
(print_rtl_with_bb): Likewise.
(verify_flow_info): Likewise.
* global.c (global_alloc): Likewise.
(global_conflicts): Likewise.
* integrate.c (save_for_inline_nocopy): Likewise.
(expand_inline_function): Likewise.
* jump.c (jump_optimize_1): Likewise.
(duplicate_loop_exit_test): Likewise.
(thread_jumps): Likewise.
* loop.c (loop_optimize): Likewise.
(combine_givs): Likewise.
(recombine_givs): Likewise.
* reorg.c (dbr_schedule): Likewise.
* unroll.c (unroll_loop): Likewise.
From-SVN: r30333
Tom Tromey [Mon, 1 Nov 1999 23:15:51 +0000 (23:15 +0000)]
Merged GC 5.0alpha4 with local changes, plus:
* Makefile.in: Rebuilt.
* Makefile.am (gctest_LDADD): Added THREADLIB.
(TESTS): New macro.
* configure: Rebuilt.
* configure.in (INCLUDES): New subst.
From-SVN: r30332
Mark Mitchell [Mon, 1 Nov 1999 22:42:01 +0000 (22:42 +0000)]
* combine.c (combine_instructions): Use xmalloc instead of alloca.
From-SVN: r30331
Richard Henderson [Mon, 1 Nov 1999 21:22:59 +0000 (13:22 -0800)]
toplev.c (rest_of_compilation): Don't optimize the CFG when rebuilding, just before dbr.
* toplev.c (rest_of_compilation): Don't optimize the CFG
when rebuilding, just before dbr.
From-SVN: r30330
Tom Tromey [Mon, 1 Nov 1999 20:48:52 +0000 (20:48 +0000)]
This commit was generated by cvs2svn to compensate for changes in r30327,
which included commits to RCS files with non-trunk default branches.
From-SVN: r30328
Tom Tromey [Mon, 1 Nov 1999 20:48:50 +0000 (20:48 +0000)]
Initial revision
From-SVN: r30324
Kaveh R. Ghazi [Mon, 1 Nov 1999 19:38:06 +0000 (19:38 +0000)]
* output.h (assemble_end_function, assemble_destructor,
assemble_constructor, assemble_gc_entry, assemble_global,
assemble_label, output_constant_pool) Constify a char*.
* varasm.c (assemble_destructor, assemble_constructor,
assemble_gc_entry, assemble_end_function, assemble_global,
assemble_label, output_constant_pool): Likewise.
From-SVN: r30323
Philippe De Muyter [Mon, 1 Nov 1999 18:14:50 +0000 (19:14 +0100)]
Patch from Philippe De Muyter <phdm@macqel.be>
From-SVN: r30322
Nick Clifton [Mon, 1 Nov 1999 14:23:53 +0000 (14:23 +0000)]
Add comments explaining what thumb_expand_prologue() does.
From-SVN: r30321
Richard Kenner [Mon, 1 Nov 1999 12:57:38 +0000 (12:57 +0000)]
regclass.c (record_reg_classes): In matching case, recompute costs since the direction of movement is different.
* regclass.c (record_reg_classes): In matching case, recompute
costs since the direction of movement is different.
From-SVN: r30319
Alexandre Petit-Bianco [Mon, 1 Nov 1999 09:48:46 +0000 (01:48 -0800)]
parse.y (resolve_qualified_expression_name): Prevent `this' from being used before the superclass constructor has been called.
Mon Nov 1 01:32:48 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (resolve_qualified_expression_name): Prevent `this' from
being used before the superclass constructor has been called.
(complete_function_arguments): Use CALL_EXPLICIT_CONSTRUCTOR_P
instead of `CALL_THIS_CONSTRUCTOR_P'.
(Fixed the incomplete last ChangeLog entry.)
From-SVN: r30318
Alexandre Petit-Bianco [Mon, 1 Nov 1999 09:45:18 +0000 (09:45 +0000)]
re GNATS gcj/48 (Compiler fails to catch constructor problem)
Mon Nov 1 01:32:48 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (resolve_qualified_expression_name): Prevent `this'
from being before the superclass constructor has been called.
(This fixes the net PR #48:
http://sourceware.cygnus.com/ml/java-prs/1999-q3/msg00106.html)
From-SVN: r30317
Jeffrey A Law [Mon, 1 Nov 1999 08:53:40 +0000 (08:53 +0000)]
* flow.c (calculate_global_regs_live): Fix thinko.
From-SVN: r30316
Jeff Law [Mon, 1 Nov 1999 08:45:06 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r30315
Mark Mitchell [Mon, 1 Nov 1999 06:57:01 +0000 (06:57 +0000)]
ggc-page.c (struct page_entry): Remove save_num_free_objects.
* ggc-page.c (struct page_entry): Remove save_num_free_objects.
(DIV_ROUND_UP): Robustify.
(ggc_recalculate_in_use_p): New function.
(release_pages): Don't inline it.
(ggc_alloc_obj): Don't refuse to allocate objects on pages for
outer contexts.
(ggc_pop_context): Use ggc_recalculate_in_use_p.
(clear_marks): Always save in_use_p.
(sweep_pages): Use ggc_recalculate_in_use_p.
(ggc_page_print_statistics): Avoid signed/unsigned comparisons.
Release pages before counting statistics.
From-SVN: r30314
Mark Mitchell [Mon, 1 Nov 1999 06:42:00 +0000 (06:42 +0000)]
toplev.c (rest_of_compilation): Fix thinko in this change:
* toplev.c (rest_of_compilation): Fix thinko in this change:
Fri Oct 29 15:25:07 1999 Arnaud Charlet <charlet@ACT-Europe.FR>
(rest_of_compilation): If inside an inlined external function,
pretend we are just being declared.
From-SVN: r30313
Jeffrey A Law [Mon, 1 Nov 1999 06:04:59 +0000 (06:04 +0000)]
integrate.c (expand_inline_function): Fix bugs in previous change from Oct 28, 1999.
* integrate.c (expand_inline_function): Fix bugs in previous
change from Oct 28, 1999.
From-SVN: r30312
Jeffrey A Law [Mon, 1 Nov 1999 05:35:03 +0000 (05:35 +0000)]
Makefile.in (convert.o, typeck.o): Depend on output.h
* Makefile.in (convert.o, typeck.o): Depend on output.h
* convert.c: Include output.h.
* typeck.c: Include output.h.
(initializer_constant_valid_p): Delete fucntion.
* ch-tree.h (initializer_constant_valid_p): Delete prototype.
From-SVN: r30311
Alexandre Oliva [Mon, 1 Nov 1999 05:19:07 +0000 (05:19 +0000)]
* gcc.dg/struct-ret-2.c: New test.
From-SVN: r30310
Alexandre Oliva [Mon, 1 Nov 1999 05:18:17 +0000 (05:18 +0000)]
* gcc.dg/array-1.c: New test.
From-SVN: r30309
Mark Mitchell [Mon, 1 Nov 1999 04:24:33 +0000 (04:24 +0000)]
stmt.c (expand_value_return): Fix typo in this change:
* stmt.c (expand_value_return): Fix typo in this change:
Thu Oct 28 18:06:50 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
(expand_value_return): Correctly convert VAL when promoting function
return; support RETURN_REG being a PARALLEL.
From-SVN: r30308
Mark Mitchell [Mon, 1 Nov 1999 04:23:27 +0000 (04:23 +0000)]
* stmt.c (expand_value_return): Fix typo in this change:
From-SVN: r30307
Mark Mitchell [Mon, 1 Nov 1999 04:08:54 +0000 (04:08 +0000)]
* expr.c (readonly_fields_p): Ignore everything except FIELD_DECLs.
From-SVN: r30306
Jeffrey A Law [Mon, 1 Nov 1999 02:19:25 +0000 (02:19 +0000)]
cse.c (cse_insn): If an insn has only a single set...
* cse.c (cse_insn): If an insn has only a single set, SRC_EQV
is nonzero and the single set does not have an elt, then assign
it an elt.
From-SVN: r30304
Kaveh R. Ghazi [Mon, 1 Nov 1999 01:47:41 +0000 (01:47 +0000)]
hard-reg-set.h (reg_names): Constify a char*.
* hard-reg-set.h (reg_names): Constify a char*.
* regclass.c (reg_names): Likewise.
* regs.h (reg_names): Likewise
* a29k/a29k.c (reg_names): Delete declaration.
* a29k/a29k.h (CONDITIONAL_REGISTER_USAGE): Constify a char*.
* arc/arc.c (arc_save_restore, arc_output_function_prologue,
arc_output_function_epilogue): Likewise.
* elxsi/elxsi.c (reg_names): Likewise.
* gmicro/gmicro.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Likewise.
* m32r/m32r.c (m32r_output_function_epilogue, emit_cond_move):
Likewise.
* m88k/m88k.c (output_function_profiler): Likewise.
* sparc/sparc.c (sparc_flat_output_function_prologue,
sparc_flat_output_function_epilogue): Likewise.
From-SVN: r30303
Mark Mitchell [Mon, 1 Nov 1999 01:46:29 +0000 (01:46 +0000)]
decl.c (finish_function): Call free_after_parsing for functions we are not immediately turning into RTL.
* decl.c (finish_function): Call free_after_parsing for functions
we are not immediately turning into RTL.
From-SVN: r30302
Richard Kenner [Mon, 1 Nov 1999 01:18:04 +0000 (20:18 -0500)]
Fix error in last change.
From-SVN: r30301
Bryce McKinlay [Mon, 1 Nov 1999 01:15:37 +0000 (01:15 +0000)]
PrintStream (PrintStream): Fix illegal usage of "this" before "super".
1999-11-01 Bryce McKinlay <bryce@albatross.co.nz>
* java/io/PrintStream (PrintStream): Fix illegal usage of "this"
before "super".
* java/io/OutputStreamWriter (OutputStreamWriter): ditto.
* java/io/InputStreamReader (InputStreamReader): ditto.
From-SVN: r30300
Richard Kenner [Mon, 1 Nov 1999 01:11:22 +0000 (20:11 -0500)]
[multiple changes]
Fri Oct 29 15:25:07 1999 Arnaud Charlet <charlet@ACT-Europe.FR>
* gcov.c (DIR_SEPARATOR): Provide default.
(output_data): Add test for MS-DOS format absolute filename.
(fancy_abort): Correct program name.
(open_files): Open all files in binary mode.
* libgcc2.c (__bb_exit_func): Likewise.
* profile.c (init_branch_prob): Specify binary when opening files.
* flags.h (flag_unwind_tables): New decl.
* toplev.c (flag_unwind_table): New definition.
(f_options): Add -funwind-tables.
(decode_g_option): Clarify warning when unknown -g option is given.
(rest_of_compilation): If inside an inlined external function,
pretend we are just being declared.
* dwarf2out.c (dwarf2out_do_frame): Check -funwind_tables.
(dwarf2out_frame_finish): Likewise.
Fri Oct 29 06:32:44 1999 Geoffrey Keating <geoffk@cygnus.com>
* flow.c (propagate_block): When the last reference to a label
before an ADDR_VEC is deleted because the reference is a dead
store, delete the ADDR_VEC.
Fri Oct 29 07:44:26 1999 Vasco Pedro <vp@di.fct.unl.pt>
* fold-const.c (merge_ranges): In not in0, but in1, handle
upper bounds equal like subset case.
Thu Oct 28 19:22:24 1999 Douglas Rupp <rupp@gnat.com>
* dbxout.c (dbxout_parms): Generate a second stabs line for parameters
passed in a register but moved to the stack.
Thu Oct 28 19:12:57 1999 Sam Tardieu <tardieu@act-europe.fr>
* gcc.c (pass_exit_codes, greatest_status): New variables.
(struct option_map): Add entry for "--pass-exit-codes".
(execute): Update greatest_status if error.
(display_help): Add documentation for -pass-exit-codes.
(process_command): Handle -pass-exit-codes.
(main): Look at pass_exit_codes and greatest_status on call to exit.
Thu Oct 28 18:06:50 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* reload.c (find_reloads): Refine test for no input reload
case to not includes reloads emitted after insn.
* function.c (find_temp_slots_from_address): Handle sum involving
a register that points to a temp slot.
(update_temp_slot_address): Make recursive call if both old and
new are PLUS with a common operand.
* calls.c (expand_call): Mark temp slot for result as having
address taken.
* rtlanal.c (reg_referenced_p, case IF_THEN_ELSE): New case.
* gcc.c (process_command): Add standard_exec_prefix with "GCC"
component as well as "BINUTILS".
* integrate.h (copy_rtx_and_substitute): New arg, FOR_LHS.
* integrate.c (copy_rtx_and_substitute): Likewise.
(expand_inline_function, integrate_parm_decls, integrate_decl_tree):
All callers changed.
* unroll.c (inital_reg_note_copy, copy_loop_body): Likewise.
* dbxout.c (dbxout_type, case INTEGER_TYPE_NODE): If can use
gdb extensions, write size of type; also be more consistent
in using references when this is a subtype.
* pa.md (extv, extzv, insv): Use define_expand to reject constant
that is out of range.
* loop.c (unknown_constant_address_altered): New variable.
(prescan_loop): Initialize it.
(note_addr_stored): Set it for RTX_UNCHANGING_P MEM.
(invariant_p, case MEM): Remove handling for volatile and readony;
check new variable if readonly.
(check_dbra_loop): Chdeck unknown_constant_address_altered.
* cse.c (canon_hash, case MEM): Do not record if BLKmode.
(addr_affects_sp_p): Removed from note_mem_written and only
define #ifdef AUTO_INC_DEC.
* alpha.c (input_operand, case ADDRESSOF): Treat as REG.
* regclass.c (record_reg_classes): Properly handle register move
directions.
* varasm.c (initializer_constant_valid_p, case MINUS_EXPR):
Don't think valid if both operands are invalid.
(struct constant_descriptor): New field RTL.
(mark_const_hash_entry): Mark it.
(record_constant{,_rtx}): Initialize it.
(output_constant_def): Allocate RTL in permanent obstack and
save in table.
({record,compare}_constant_1): Modes must match for
CONSTRUCTOR of ARRAY_TYPE.
* c-common.h (initializer_constant_valid_p): Delete decl from here.
* output.h (initializer_constant_valid_p): Move decl to here.
* c-common.c (initializer_constant_valid_p): Delete function from here.
* varasm.c (initializer_constant_valid_p): Move function to here.
* tree.h (STRIP_SIGN_NOPS): New macro.
* fold-const.c (optimize_minmax_comparison): New function.
(invert_truthvalue, case WITH_RECORD_EXPR): New case.
(fold): Use STRIP_SIGN_NOPS instead of STRIP_TYPE_NOPS.
(fold, case EQ_EXPR): Call optimize_minmax_comparison and add
cases with ABS_EXPR, NEGATE_EXPR, PLUS_EXPR, MINUS_EXPR, and
widening conversions.
(fold, case LE_EXPR): Rework changing unsigned to signed comparisons
to look at size of mode, not precision of type; also add missing cases.
(optimize_bit_field_compare, decode_field_reference): Don't try to
optimize COMPONENT_REF of a PLACEHOLDER_EXPR.
* dwarf2out.c (ctype.h): Include.
(dwarf2out_set_demangle_name_func): New function.
(size_of_line_info): Deleted.
(output_line_info): Compute size of line info table from difference
of labels.
(base_type_die, add_name_attribute): Call demangle function, if any.
(field_byte_offset): Use bits per word for variable length fields.
(gen_array_type_die): Add array name.
(gen_subprogram_die): Ignore DECL_INLINE if -fno-inline.
(dwarf2out_add_library_unit_info): New function.
* explow.c (set_stack_check_libfunc): New function.
(stack_check_libfunc): New static variable.
(probe_stack_range): Allow front-end to set up a libfunc to call.
* combine.c (simplify_comparison): When making comparison in wider
mode, check for having commuted an AND and a SUBREG.
(contains_muldiv): New function.
(try_combine): Call it when dividing a PARALLEL.
(simplify_rtx, case TRUNCATE): Don't remove for umulsi3_highpart.
(simplify_comparison, case ASHIFTRT): Recognize sign-extension of
a PLUS.
(record_value_for_reg): If TEM is a binary operation with two CLOBBERs,
use one of the CLOBBERs instead.
(if_then_else_cond): If comparing against zero, just return thing
being compared.
* optabs.c (expand_abs): If machine has MAX, ABS (x) is MAX (x, -x).
Don't generate shifts and subtract if have conditional arithmetic.
* rtl.h (delete_barrier): New declaration.
* jump.c (jump_optimize): Set up to handle conditional call.
In conditional arithmetic case, handle CALL_INSN followed by a BARRIER.
(delete_barrier): New function.
* rtl.c (read_rtx): Call fatal if bad RTL code; check for bad mode.
* recog.c (nonmemory_operand): Accept ADDRESSOF.
* tree.c (build_type_attribute_variant): Push to obstack of
ttype around type_hash_canon call.
* expr.c (placeholder_list): Move decl to file scope.
(expand_expr): Don't force access to volatile just because its
address is taken.
If ignoring reference operations, just expand the operands.
(expand_expr, case COMPONENT_REF): Propagate
EXPAND_CONST_ADDRESS to recursive call when expanding inner.
Refine test for using bitfield operations vs pointer punning.
(expand_expr, case CONVERT_EXPR): If converting to
BLKmode UNION_TYPE from BLKmode, just return inner object.
Use proper mode in store_field call.
Properly set sizes of object to store and total size in store_field
call for convert to union.
(expand_expr, case ARRAY_REF): If OP0 is in a register, put it in
memory (like for ADDR_EXPR). Also, don't put constant in register if
we'll want it in memory.
(readonly_fields_p): New function.
(expand_expr, case INDIRECT_REF): Call it if LHS.
(expand_assignment): Handle a RESULT_DECL where
DECL_RTL is a PARALLEL.
(do_jump, case WITH_RECORD_EXPR): New case.
(get_inner_reference): Always go inside a CONVERT_EXPR
and NOP_EXPR if both modes are the same.
(store_field): Use bitfield operations if size of bitsize is not same
as size of RHS's type.
Check for bitpos not a multiple of alignment in BLKmode case.
Do block move in largest possible alignment.
(store_constructor): Set BITSIZE to -1 for variable size and properly
in case of array of BLKmode.
(expand_expr_unaligned): New function.
(do_compare_and_jump): Call it.
* mips/iris5.h (SWITCHES_NEED_SPACES): New macro.
* collect2.c (main): Only allow -ofoo if SWITCHES_NEED_SPACES
does not include 'o'.
* function.c (instantiate_virtual_regs_1, case SET): Handle case where
both SET_DEST and SET_SRC reference a virtual register.
(gen_mem_addressof): Copy RTX_UNCHANGING_P from new REG to old REG.
* integrate.c (expand_inline_function): Handle case of setting
virtual stack vars register (from built in setjmp); when parameter
lives in memory, expand virtual_{stack_vars,incoming_args}_rtx early.
(subst_constant): Add new parm, MEMONLY.
(expand_inline_function, integrate_parm_decls): Pass new parm.
(integrate_decl_tree): Likewise.
(copy_rtx_and_substitute, case MEM): Do copy RTX_UNCHANGING_P.
(try_constants): Call subst_constants twice, with MEMONLY 0 and 1.
(copy_rtx_and_substitute, case SET): Add explicit calls to
copy_rtx_and_substitute for both sides.
* stmt.c (expand_asm_operands): Don't use TREE_STRING_LENGTH for
constraints.
(pushcase{,_range}): Convert to NOMINAL_TYPE after checking for
within INDEX_TYPE, instead of before.
(fixup_gotos): Use f->target_rtl, not the next insn,
since latter may be from a later fixup.
(expand_value_return): Correctly convert VAL when promoting function
return; support RETURN_REG being a PARALLEL.
(expand_return): When checking for result in regs and having
cleanup, consider PARALLEL in DECL_RTL as being in regs.
From-SVN: r30299
Jeff Law [Mon, 1 Nov 1999 00:55:24 +0000 (17:55 -0700)]
Remove experimental hunk that wasn't supposed to be checked in.
From-SVN: r30298
Jeffrey A Law [Mon, 1 Nov 1999 00:18:40 +0000 (00:18 +0000)]
* POTFILES.in: Add simplify-rtx.c
From-SVN: r30296
Jeffrey A Law [Mon, 1 Nov 1999 00:18:23 +0000 (00:18 +0000)]
simplify-rtx.c: New file.
* simplify-rtx.c: New file.
* Makefile.in (OBJS): Add simplify-rtx.o
(simplify-rtx.o): Add dependencies.
* rtl.h (simplify_gen_binary, simplify_rtx): Add prototypes.
* cse.c: Use simplify_gen_binary intead of cse_gen_binary.
(cse_gen_binary, simplify_unary_operation): Delete.
(simplify_binary_operation, simplify_plus_minus): Likewise.
(check_fold_consts, simplify_relation_operation): Likewise.
(simplify_ternary_operation): Likewise.
(delete_trivially_dead_insns): Simplify the contents of the
REG_EQUAL note before trying to substitute it into the source
of the reg-reg copy at the end of a libcall sequence.
From-SVN: r30295
Marc Lehmann [Sun, 31 Oct 1999 21:52:00 +0000 (21:52 +0000)]
toplev.c (rest_of_compilation): Seperate the setjmp/vfork clobber warning from -Wuninitialized and put it under -W.
Sun Oct 31 13:32:15 CET 1999 Marc Lehmann <pcg@goof.com>
* toplev.c (rest_of_compilation): Seperate the setjmp/vfork clobber
warning from -Wuninitialized and put it under -W.
* function.c (uninitialized_vars_warning): Warn only when the
corresponding flag is set.
From-SVN: r30294
Brendan Kehoe [Sun, 31 Oct 1999 19:41:33 +0000 (19:41 +0000)]
* cp-tree.h (flag_dump_translation_unit): Add decl.
From-SVN: r30293
Jeffrey A Law [Sun, 31 Oct 1999 17:36:58 +0000 (17:36 +0000)]
combine.c (combine_simplify_rtx): Renamed from simplify_rtx.
* combine.c (combine_simplify_rtx): Renamed from simplify_rtx. All
references/callers changed.
From-SVN: r30292
Jeffrey A Law [Sun, 31 Oct 1999 15:37:46 +0000 (15:37 +0000)]
mn10200.c (mn10200_va_arg): Force the return value into a register.
* mn10200.c (mn10200_va_arg): Force the return value into a
register.
From-SVN: r30291
Jeffrey A Law [Sun, 31 Oct 1999 15:35:07 +0000 (15:35 +0000)]
* fr30.h (EXTRA_CC_NAMES): Remove obsolete macro.
From-SVN: r30290
Jeffrey A Law [Sun, 31 Oct 1999 07:54:56 +0000 (07:54 +0000)]
cccp.c (macroexpand): Avoid out of range accesses for omitted arguments.
* cccp.c (macroexpand): Avoid out of range accesses for omitted
arguments.
From-SVN: r30289
Jeff Law [Sun, 31 Oct 1999 07:45:06 +0000 (01:45 -0600)]
Daily bump.
From-SVN: r30288
Stephen L Moshier [Sun, 31 Oct 1999 04:44:09 +0000 (04:44 +0000)]
* lex.c (yylex): Accept 'f' in mantissa of hex float constant.
From-SVN: r30285
Stephen L Moshier [Sun, 31 Oct 1999 04:42:55 +0000 (04:42 +0000)]
* c-lex.c (yylex): Accept 'f' in mantissa of hex float constant.
From-SVN: r30284
Stephen L Moshier [Sun, 31 Oct 1999 04:25:01 +0000 (04:25 +0000)]
* gcc.c-torture/execute/991030-1.c: New test.
From-SVN: r30283
Jeffrey A Law [Sun, 31 Oct 1999 04:22:46 +0000 (04:22 +0000)]
fold-const.c (fold): Fix thinko when optimizing comparisons against -0.0.
* fold-const.c (fold): Fix thinko when optimizing comparisons
against -0.0.
From-SVN: r30282
Todd T. Fries [Sun, 31 Oct 1999 03:36:38 +0000 (03:36 +0000)]
* check-init.c: Fix typo in comment.
From-SVN: r30281
David Starner [Sun, 31 Oct 1999 03:33:50 +0000 (03:33 +0000)]
gcc.texi (Passes): Update front-end files to their current location.
* gcc.texi (Passes): Update front-end files to their current
location.
From-SVN: r30280
Mark Mitchell [Sat, 30 Oct 1999 23:32:55 +0000 (23:32 +0000)]
decl.c (pop_cp_function_context): Don't call free on a NULL pointer.
* decl.c (pop_cp_function_context): Don't call free on a NULL
pointer.
* semantics.c: Include ggc.h.
(expand_body): Do garbage-collection after processing a template
function. Clear DECL_SAVED_TREE after generating RTL for a
function.
* Makefile.in (semantics.o): Depend on ggc.h.
From-SVN: r30279
Mark Mitchell [Sat, 30 Oct 1999 22:26:25 +0000 (22:26 +0000)]
Fix incorrect declaration of main
From-SVN: r30278
Richard Henderson [Sat, 30 Oct 1999 21:46:57 +0000 (14:46 -0700)]
alpha.h (SECONDARY_INPUT_RELOAD_CLASS): Call secondary_reload_class.
* alpha.h (SECONDARY_INPUT_RELOAD_CLASS): Call secondary_reload_class.
(SECONDARY_OUTPUT_RELOAD_CLASS): Likewise.
(PREDICATE_CODES): Add addition_operation.
* alpha-protos.h (addition_operation): Declare.
(secondary_reload_class): Likewise.
* alpha.c (addition_operation): New.
(secondary_reload_class): New, from old SECONDARY_INPUT_RELOAD_CLASS.
* alpha.md (adddi3): Turn into expander.
(*lda, *adddi_2): New.
(movsf, movdf patterns): Don't preference integer regs.
(movsi, movdi patterns): Don't preference fp regs.
From-SVN: r30277
Richard Henderson [Sat, 30 Oct 1999 21:40:05 +0000 (14:40 -0700)]
* genrecog.c (write_switch): Check for duplicate CODE cases.
From-SVN: r30276
Richard Henderson [Sat, 30 Oct 1999 21:36:13 +0000 (14:36 -0700)]
ggc-common.c: Update pre-function commentary.
* ggc-common.c: Update pre-function commentary.
* ggc-page.c: Likewise.
(poison): Remove.
(poison_pages): Use memset directly.
(ggc_alloc_obj): Likewise. Use a different pattern than poison_pages.
(ggc_collect): Poison before sweeping.
* ggc-simple.c: Update pre-function commentary.
(ggc_alloc_obj): Poison non-zeroed memory.
From-SVN: r30275
Mark Mitchell [Sat, 30 Oct 1999 21:26:13 +0000 (21:26 +0000)]
ggc-common.c (ggc_print_statistics): Make arguments to fprintf match format string, even on 64-bit hosts.
* ggc-common.c (ggc_print_statistics): Make arguments to fprintf
match format string, even on 64-bit hosts.
* gcc-page.c (ggc_page_print_statistics): Likewise.
From-SVN: r30274
Catherine Moore [Sat, 30 Oct 1999 19:43:20 +0000 (19:43 +0000)]
Revert last patch.
From-SVN: r30273
Jeff Law [Sat, 30 Oct 1999 07:45:07 +0000 (01:45 -0600)]
Daily bump.
From-SVN: r30272
Richard Henderson [Sat, 30 Oct 1999 06:41:19 +0000 (23:41 -0700)]
* jump.c, reg-stack.c, toplev.c: Revert Oct 27 change.
From-SVN: r30271
Jim Wilson [Sat, 30 Oct 1999 00:18:23 +0000 (00:18 +0000)]
Fix mn10200-elf libio build failure, and minor performance regression.
* stor-layout.c (layout_type): When compute TYPE_SIZE_UNIT from
TYPE_SIZE, convert type of result to sizetype.
From-SVN: r30270
Richard Henderson [Fri, 29 Oct 1999 21:45:05 +0000 (14:45 -0700)]
flow.c (count_or_remove_death_notes): Equate NULL with the universal set.
* flow.c (count_or_remove_death_notes): Equate NULL with the
universal set.
* jump.c, reg-stack.c, toplev.c: Revert Oct 27 change.
* toplev.c (rest_of_compilation): Rebuild CFG immediately before
dbr_schedule.
* i386.c (pic_label_no): Delete.
(ix86_attr_length_default): Don't use single_set to peek
inside a parallel.
* recog.c (peephole2_optimize): Allow recog_next_insn to index
the first insn after bb->end.
* i386.md (push mem peeps): Scratch is live after evaluation
of the memory.
(cmp mem peep): Similarly.
From-SVN: r30269
Alexandre Petit-Bianco [Fri, 29 Oct 1999 21:37:51 +0000 (14:37 -0700)]
class.c (add_method_1): Set DECL_INLINE to 1 for private, static and final method.
Fri Oct 29 14:35:18 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* class.c (add_method_1): Set DECL_INLINE to 1 for private, static
and final method.
From-SVN: r30268
Alexandre Petit-Bianco [Fri, 29 Oct 1999 21:32:28 +0000 (21:32 +0000)]
parse.y (expression_statement:): Call function to report improper invocation of a constructor.
Fri Oct 29 14:23:32 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (expression_statement:): Call function to report
improper invocation of a constructor.
(parse_ctor_invocation_error): New function.
From-SVN: r30267
Catherine Moore [Fri, 29 Oct 1999 18:53:46 +0000 (14:53 -0400)]
*** empty log message ***
From-SVN: r30266
Catherine Moore [Fri, 29 Oct 1999 18:49:29 +0000 (14:49 -0400)]
Fix up last patch.
From-SVN: r30265
Kaveh R. Ghazi [Fri, 29 Oct 1999 17:56:19 +0000 (17:56 +0000)]
alpha-protos.h (literal_section): Add prototype.
* alpha/alpha-protos.h (literal_section): Add prototype.
(alpha_need_linkage, alpha_start_function,alpha_end_function):
Constify a char*.
* alpha/alpha.c (alpha_ra_ever_killed, set_frame_related_p): Add
prototype.
(alpha_start_function, alpha_end_function, float_strings,
alpha_need_linkage): Constify a char*
* alpha/alpha.h (ASM_OUTPUT_ASCII, ASM_OUTPUT_MI_THUNK): Likewise.
* alpha/alpha32.h (ASM_OUTPUT_MI_THUNK): Likewise.
* alpha/elf.h (ASM_FINISH_DECLARE_OBJECT): Likewise.
* alpha/vms.h (ASM_OUTPUT_SECTION_NAME): Likewise.
From-SVN: r30264
Kaveh R. Ghazi [Fri, 29 Oct 1999 17:51:38 +0000 (17:51 +0000)]
flow.c (debug_flow_info): Add prototype.
* flow.c (debug_flow_info): Add prototype.
* gcc.c (main): Likewise.
* gcse.c (expr_reaches_here_p_work, pre_expr_reaches_here_p_work):
Likewise.
* reload1.c (failed_reload, set_reload_reg): Likewise.
* mips-tfile.c (main): Likewise.
(pfatal_with_name, fancy_abort, botch, fatal, catch_signal): Mark
with ATTRIBUTE_NORETURN.
From-SVN: r30262
Andrew Haley [Fri, 29 Oct 1999 17:34:54 +0000 (17:34 +0000)]
i386.h (ENCODE_SECTION_INFO): Don't do anything if DECL is not a memory ref.
Fri Oct 29 18:16:03 1999 Andrew Haley <aph@cygnus.com>
* config/i386/i386.h (ENCODE_SECTION_INFO): Don't do anything if
DECL is not a memory ref.
From-SVN: r30261
Catherine Moore [Fri, 29 Oct 1999 17:11:16 +0000 (13:11 -0400)]
Remove stray comment.
From-SVN: r30260
Catherine Moore [Fri, 29 Oct 1999 16:13:23 +0000 (16:13 +0000)]
i386.h (ix86_cpu): Remove extern attribute.
* config/i386/i386.h (ix86_cpu): Remove extern attribute.
* config/i386/i386.c (ix86_cpu): Add extern attribute.
From-SVN: r30259
Andrew Haley [Fri, 29 Oct 1999 15:36:21 +0000 (15:36 +0000)]
elf.h: remove NAME__MAIN and SYMBOL__MAIN.
Fri Oct 29 16:30:04 1999 Andrew Haley <aph@cygnus.com>
* config/mips/elf.h: remove NAME__MAIN and SYMBOL__MAIN.
* config/mips/elf64.h: ditto.
From-SVN: r30258
Catherine Moore [Fri, 29 Oct 1999 15:23:41 +0000 (15:23 +0000)]
expr.c (emit_push_insn): New argument alignment_pad.
* expr.c (emit_push_insn): New argument alignment_pad.
Update all callers. Adjust stack pointer based on alignment pad.
* function.c (pad_to_arg_alignment): New argument alignment_pad.
Update all callers. Track alignment_pad if boundary > PARM_BOUNDARY.
(locate_and_pad_parm): New argument alignment_pad. Update all
callers.
* expr.h (emit_push_insn): Update prototype.
(locate_and_pad_parm): Update prototype.
* calls.c (arg_data): Add new field alignment_pad.
(initialize_argument_information): Initialize alignment_pad.
From-SVN: r30257
Mark Mitchell [Fri, 29 Oct 1999 09:49:23 +0000 (09:49 +0000)]
except.c (free_eh_nesting_info): Free the info itself.
* except.c (free_eh_nesting_info): Free the info itself.
* function.c (free_after_compilation): Don't free NULL.
* gcse.c (alloc_pre_mem): Free the temp_bitmap, too.
(pre_edge_insert): Free inserted.
* stmt.c (free_stmt_status): Don't free NULL.
From-SVN: r30255
Mark Mitchell [Fri, 29 Oct 1999 09:35:38 +0000 (09:35 +0000)]
cp-tree.h (make_typename_type): Change prototype.
* cp-tree.h (make_typename_type): Change prototype.
* decl.c (make_typename_type): Only complain if so requested.
* parse.y (nested_name_specifier): Adjust calls.
(typename_sub0): Likewise.
(typename_sub1): Likewise.
* parse.c: Regenerated.
* pt.c (convert_template_argument): Pass complain to
make_typename_type.
(tsubst): Likewise.
From-SVN: r30254
Jeff Law [Fri, 29 Oct 1999 07:45:06 +0000 (01:45 -0600)]
Daily bump.
From-SVN: r30253
Zack Weinberg [Fri, 29 Oct 1999 04:31:14 +0000 (04:31 +0000)]
cpplib.h (struct cpp_buffer: fname, [...]): Mark const.
1999-10-28 21:27 -0700 Zack Weinberg <zack@bitmover.com>
* cpplib.h (struct cpp_buffer: fname, nominal_fname,
last_nominal_fname): Mark const.
(struct include_hash: name, nshort, control_macro): Mark
const.
(struct macrodef: symnam): Mark const.
(struct if_stack: fname): Mark const.
(is_idchar, is_idstart, is_hor_space, trigraph_table): Delete.
(IStable): New character-syntax array which encompasses all
the old is_foo arrays.
(is_idchar, is_numchar, is_idstart, is_numstart, is_hspace,
is_space): New macros for interrogating IStable.
(check_macro_name): Kill last argument. All callers changed.
* cppinit.c (initialize_char_syntax): Delete.
(is_idchar, is_idstart, is_hor_space, is_space,
trigraph_table): Delete.
(IStable): New. Initialize with clever macros to avoid
information duplication.
(builtin_array): Table of builtins to get rid of explicit list
in initialize_builtins.
(initialize_builtins): Use builtins_array.
(cpp_start_read): Call init_IStable, and set IStable['$'] if
opts->dollars_in_ident.
* cppexp.c: Change all refs to is_xyz[] arrays to use new
is_xyz() macros.
(cpp_parse_expr): Avoid 'format string is not constant'
warning. Use ISGRAPH to identify printable chars.
* cppfiles.c: Change all refs to is_xyz[] arrays to use new
is_xyz() macros.
(read_and_prescan): Map trigraphs to chars with open-coded
if-else-if-... sequence, not a lookup table.
* cpphash.c: Change all refs to is_xyz[] arrays to use new
is_xyz() macros.
* cpplib.c: Change all refs to is_xyz[] arrays to use new
is_xyz() macros. Kill SKIP_ALL_WHITE_SPACE (unused).
(check_macro_name): Remove ability to report an invalid
assertion name, which is never used.
(do_line): Constify a couple of char *'s.
* cppmain.c (main): Call cpp_cleanup before returning.
From-SVN: r30252
Mark Mitchell [Fri, 29 Oct 1999 04:17:33 +0000 (04:17 +0000)]
ggc.h (struct ggc_statistics): New type.
* ggc.h (struct ggc_statistics): New type.
(ggc_get_size): New function.
(ggc_print_statistics): Likewise.
* ggc-common.c (ggc_stats): New variable.
(ggc_mark_rtx_children): Keep statistics.
(ggc_mark_tree_children): Likewise.
(ggc_print_statistics): New function.
* ggc-page.c (struct globals): Add bytes_mapped field.
(alloc_anon): Update it.
(release_pages): Likewise.
(ggc_get_size): New function.
(ggc_page_print_statistics): New function.
* ggc-simple.c (ggc_get_size): New function.
From-SVN: r30251
Mark Mitchell [Fri, 29 Oct 1999 02:34:31 +0000 (02:34 +0000)]
semantics.c (finish_handler): End the scope of the handler before attaching it to the statement-tree.
* semantics.c (finish_handler): End the scope of the handler
before attaching it to the statement-tree.
From-SVN: r30250
Ian Lance Taylor [Thu, 28 Oct 1999 23:59:08 +0000 (23:59 +0000)]
improve ChangeLog message
From-SVN: r30249
Ian Lance Taylor [Thu, 28 Oct 1999 23:55:28 +0000 (23:55 +0000)]
rtti.c (build_dynamic_cast_1): Give a better error message for an attempt to dynamic_cast a polymorphic type.
* rtti.c (build_dynamic_cast_1): Give a better error message for
an attempt to dynamic_cast a polymorphic type.
From-SVN: r30248
Geoff Keating [Thu, 28 Oct 1999 20:37:37 +0000 (20:37 +0000)]
flow.c (propagate_block): When the last reference to a label before an ADDR_VEC is deleted because the...
* flow.c (propagate_block): When the last reference to a label
before an ADDR_VEC is deleted because the reference is a dead
store, delete the ADDR_VEC.
From-SVN: r30247
Richard Henderson [Thu, 28 Oct 1999 19:30:02 +0000 (12:30 -0700)]
resource.c (find_free_register): Don't use the frame pointer if frame_pointer_needed.
* resource.c (find_free_register): Don't use the frame pointer
if frame_pointer_needed.
From-SVN: r30246
Jim Wilson [Thu, 28 Oct 1999 18:29:10 +0000 (18:29 +0000)]
Fix stdarg bugs with MIPS EABI that caused newlib/libstdc++ build failures.
* config/mips/mips.c (mips_va_arg): Delete gen_jump as emit_jump arg.
(function_arg_pass_by_reference): Check for a NULL pointer in cum.
From-SVN: r30245
Jim Wilson [Thu, 28 Oct 1999 17:14:59 +0000 (17:14 +0000)]
Fix i960 varargs/stdarg build failures.
* config/i960/i960.c (i960_va_start): New locals base, num.
Use INDIRECT_REF instead of ARRAY_REF on valist.
(i960_va_arg): Use INDIRECT_REF instead of ARRAY_REF on valist.
From-SVN: r30244
Mark Mitchell [Thu, 28 Oct 1999 16:42:14 +0000 (16:42 +0000)]
gcse.c (delete_null_pointer_checks): Fix typo in this change: Thu Oct 28 02:15:22 1999 Jeffrey A Law (law@cygnus.com).
* gcse.c (delete_null_pointer_checks): Fix typo in this change:
Thu Oct 28 02:15:22 1999 Jeffrey A Law (law@cygnus.com).
From-SVN: r30243
Peter Gerwinski [Thu, 28 Oct 1999 11:39:31 +0000 (11:39 +0000)]
* tree.def (PLACEHOLDER_EXPR): Update comments.
From-SVN: r30241
Kaveh R. Ghazi [Thu, 28 Oct 1999 10:53:12 +0000 (10:53 +0000)]
c-common.c (check_format_info): Avoid non-literal format string warnings when `first_arg_num' is zero.
* c-common.c (check_format_info): Avoid non-literal format string
warnings when `first_arg_num' is zero.
From-SVN: r30240