wilson [Fri, 5 Nov 1999 07:08:13 +0000 (07:08 +0000)]
Fix cse bug that broke the ia64 port.
* cse.c (cse_insn): Revert Oct 31 change. When computing src_elt,
if REG_RETVAL check succeeds, then put classp in src_elt.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30406
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 5 Nov 1999 06:49:38 +0000 (06:49 +0000)]
* function.c (pad_to_arg_alignment): Only update argument_pad
if the argument's alignment is greater than STACK_BOUNDARY.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30405
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Fri, 5 Nov 1999 00:49:03 +0000 (00:49 +0000)]
* bitmap.h (BITMAP_XFREE): New.
* flow.c (life_analysis): Use it.
(life_analysis_1): Free blocks.
* combine.c (undo_commit): New.
(try_combine): Use it. Don't zap undobuf.undos.
(combine_instructions): Don't zap undobuf.undos; free the
undobuf.frees list.
* local-alloc.c (local_alloc): Free qty_phys_num_sugg.
* stmt.c (cost_table_): New.
(estimate_case_costs): Use it instead of xmalloc.
* toplev.c (compile_file): Reuse dumpname memory instead
of strdup'ing it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30404
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Fri, 5 Nov 1999 00:41:11 +0000 (00:41 +0000)]
* haifa-sched.c (init_rgn_data_dependences): Correctly
size bb_pending_lists_length when zeroing.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30403
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Fri, 5 Nov 1999 00:37:48 +0000 (00:37 +0000)]
* reg-stack.c (convert_regs_1): Initialize target_stack->top
after verifying an EH edge.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30402
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Fri, 5 Nov 1999 00:35:10 +0000 (00:35 +0000)]
* function.c (diddle_return_value): New.
(expand_function_end): Use it.
* stmt.c (expand_null_return): Likewise.
(expand_value_return): Likewise.
* reg-stack.c (subst_stack_regs_pat): Handle clobbers at top-level.
* reload1.c (reload): Don't remove return value clobbers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30401
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 4 Nov 1999 21:35:22 +0000 (21:35 +0000)]
* rtl.c (read_rtx): Use fatal_with_file_and_line not fatal.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30400
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 4 Nov 1999 20:51:04 +0000 (20:51 +0000)]
* cse.c (cse_main): Use xmalloc, not alloca.
(cse_basic_block): Likewise.
* local-alloc.c (local_alloc): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30399
138bc75d-0d04-0410-961f-
82ee72b054a4
oliva [Thu, 4 Nov 1999 19:51:48 +0000 (19:51 +0000)]
* rtl.c: Include toplev.h.
(fatal): Remove declaration.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30398
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Thu, 4 Nov 1999 19:47:01 +0000 (19:47 +0000)]
* java/lang/natClass.cc (method_cache_count): Removed.
(_Jv_FindMethodInCache): Don't loop looking for the hash entry.
(_Jv_AddMethodToCache): Don't loop.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30397
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Thu, 4 Nov 1999 19:39:50 +0000 (19:39 +0000)]
* Makefile.in: Rebuilt.
* Makefile.am (libgcjgc_la_SOURCES): Removed quick_threads.c.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30396
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Thu, 4 Nov 1999 18:53:24 +0000 (18:53 +0000)]
* misc.c (GC_init_inner): Don't call GC_init_linuxppc().
(GC_thr_init): Don't declare.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30395
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Thu, 4 Nov 1999 17:25:07 +0000 (17:25 +0000)]
* configure: Rebuilt.
* configure.in: Removed qt threads case.
* dyn_load.c: Don't mention QUICK_THREADS.
* os_dep.c: Don't mention QUICK_THREADS.
* misc.c: Don't mention QUICK_THREADS.
* gcconfig.h: Don't mention QUICK_THREADS.
* gc_priv.h: Removed QUICK_THREADS code.
* quick_threads.c: Removed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30394
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Thu, 4 Nov 1999 17:12:25 +0000 (17:12 +0000)]
* configure.in: Removed `qt' threads case.
* include/quick-threads.h: Removed.
* quick-threads.cc: Removed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30393
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Thu, 4 Nov 1999 16:45:11 +0000 (16:45 +0000)]
* include/quick-threads.h (_Jv_ThreadCancel): Removed.
(_Jv_ThreadDestroy): Likewise.
* include/no-threads.h (_Jv_ThreadCancel): Removed.
(_Jv_ThreadDestroy): Likewise.
* include/posix-threads.h (struct _Jv_Thread_t): Removed
`exception' field.
(_Jv_ThreadCancel): Removed decl.
(_Jv_ThreadDestroy): Removed.
* posix-threads.cc (_Jv_ThreadCancel): Removed.
(throw_cleanup): Removed.
(really_start): Don't push or pop cleanup.
(_Jv_ThreadInitData): Don't initialize `exception' field.
* java/lang/Thread.java (stop): Officially unimplemented.
* java/lang/natThread.cc (stop): Officially unimplemented.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30392
138bc75d-0d04-0410-961f-
82ee72b054a4
korbb [Thu, 4 Nov 1999 14:50:44 +0000 (14:50 +0000)]
Allow for systems that do not have S_IR* defined values
Do not call realloc with a NULL pointer
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30391
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 4 Nov 1999 13:39:28 +0000 (13:39 +0000)]
* haifa-sched.c (schedule_block): Fix thinko.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30390
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 4 Nov 1999 08:45:07 +0000 (08:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30389
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Thu, 4 Nov 1999 07:23:58 +0000 (07:23 +0000)]
* flags.h (flag_renumber_insns): Declare.
* emit-rtl.c (renumber_insns): Check flag_renumber_insns. Print
renumbering table.
* rtl.h (renumber_insns): Change prototype.
* toplev.c (flag_renumber_insns): Define.
(rest_of_compilation): Pass rtl_dump_file to flag_renumber_insns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30388
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Thu, 4 Nov 1999 06:44:29 +0000 (06:44 +0000)]
* rtl.h (renumber_insns): New function.
(remove_unnecessary_notes): Likewise.
* emit-rtl.c (renumber_insns): Define.
(remove_unncessary_notes): Likewise.
* toplev.c (rest_of_compilation): Remove dead code.
Use renumber_insns and remove_unncessary_notes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30387
138bc75d-0d04-0410-961f-
82ee72b054a4
davem [Wed, 3 Nov 1999 23:25:02 +0000 (23:25 +0000)]
Wed Nov 3 15:11:27 1999 David S. Miller <davem@redhat.com>
* config/sparc/sparc.md: Remove insn type fpsqrt, add fpsqrts
and fpsqrtd. Use them and create fdiv function unit to more
accurately represent fpu sqrt pipeline semantics on UltraSparc.
* config/sparc/sparc.c: Account for fpsqrt{s,d} changes.
Wed Nov 3 15:11:27 1999 Matteo Frigo <athena@fftw.org>
* config/sparc/sparc.md: Adjust FADD/FMUL result latencies to
3 on UltraSparc.
* config/sparc/sparc.c (ultra_schedule_insn): Insert launched
insn into ready list, do not use just a raw swap.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30386
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Wed, 3 Nov 1999 23:18:57 +0000 (23:18 +0000)]
* rtl.h (renumber_insns): New function.
(remove_unnecessary_notes): Likewise.
* emit-rtl.c (renumber_insns): Define.
(remove_unncessary_notes): Likewise.
* toplev.c (rest_of_compilation): Remove dead code.
Use renumber_insns and remove_unncessary_notes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30385
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Wed, 3 Nov 1999 22:45:45 +0000 (22:45 +0000)]
* gcse.c (struct null_pointer_info): New type.
(get_bitmap_width): New function.
(current_block): Remove.
(nonnull_local): Likewise.
(nonnull_killed): Likewise.
(invalidate_nonnull_info): Take a null_pointer_info as input.
(delete_null_pointer_checks_1): New function.
(delete_null_pointer_checks): Use it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30384
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Wed, 3 Nov 1999 22:44:10 +0000 (22:44 +0000)]
* haifa-sched.c (find_rgns): Replace uses of alloca with xmalloc.
(split_edges): Likewise.
(schedule_block): Likewise.
(compute_block_backward_dependencies): Likewise.
(schedule_region): Likewise.
(schedule_insns): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30383
138bc75d-0d04-0410-961f-
82ee72b054a4
clm [Wed, 3 Nov 1999 21:55:51 +0000 (21:55 +0000)]
* defaults.h (ASM_OUTPUT_ALTERNATE_LABEL_NAME): Provide default.
* emit-rtl.c (gen_label_rtx): Support LABEL_ALTERNATE_NAME.
* final.c (final_scan_insn): Emit LABEL_ALTERNATE_NAME.
* ggc-common.c (ggc_mark_rtx_children): Mark LABEL_ALTERNATE_NAME.
* jump.c (delete_unreferenced_labels): Don't delete if
LABEL_ALTERNATE_NAME is set.
* print-rtl.c (print_rtx): Dump alternate name.
* rtl.def (CODE_LABEL): Change format to "iuuis00s".
* rtl.h (LABEL_ALTERNATE_NAME): Define.
* rtl.texi (LABEL_ALTERNATE_NAME): Document.
* tm.texi (ASM_OUTPUT_ALTERNATE_LABEL_NAME): Document.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30382
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Wed, 3 Nov 1999 21:34:04 +0000 (21:34 +0000)]
* class.c (check_bitfield_decl): New function, split out from
finish_stuct_1.
(check_field_decl): Likewise. Recursively examine members of
anonymous structs.
(finish_struct_1): Use them.
* cp-tree.h (ANON_UNION_TYPE_P): New macro.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30381
138bc75d-0d04-0410-961f-
82ee72b054a4
ghazi [Wed, 3 Nov 1999 20:40:32 +0000 (20:40 +0000)]
* fix-header.c (recognized_extern, recognized_function): Constify
a char*.
* lcm.c (compute_laterin): Remove unused variable `temp_bitmap'.
(pre_edge_lcm): Mark parameter `file' with ATTRIBUTE_UNUSED.
(compute_available): Remove unused variable `last'.
(compute_nearerout): Remove unused variable `temp_bitmap'.
(pre_edge_rev_lcm): Mark parameter `file' with ATTRIBUTE_UNUSED.
Remove unused variable `x'.
* scan.h (recognized_function, recognized_extern): Constify a
char*.
* simplify-rtx.c (simplify_rtx): Remove unused variable `new'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30380
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Wed, 3 Nov 1999 19:25:13 +0000 (19:25 +0000)]
Actually removed files which were supposedly
removed a long time ago.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30379
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Wed, 3 Nov 1999 18:42:17 +0000 (18:42 +0000)]
* varasm.c (decode_rtx_const): Use XSTR to access the string
of a SYMBOL_REF.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30378
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Wed, 3 Nov 1999 18:11:23 +0000 (18:11 +0000)]
* c-decl.c (duplicate_decls): Copy DECL_MODE too.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30377
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Wed, 3 Nov 1999 17:26:59 +0000 (17:26 +0000)]
* gcconfig.h: Merged in local changes from old config.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30376
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 3 Nov 1999 13:25:17 +0000 (13:25 +0000)]
* pa.c (ireg_operand): New function.
* pa.h (PREDICATE_CODES): Handle ireg_operand.
* pa.md (parallel_addb, parallel_movb): Use ireg_operand.
Fix out of date comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30375
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 3 Nov 1999 12:45:21 +0000 (12:45 +0000)]
* pa.md (negdi2): Turn into expander + anonymous pattern.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30374
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 3 Nov 1999 12:43:35 +0000 (12:43 +0000)]
* reload.c (find_reloads): Fix typos in recent change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30373
138bc75d-0d04-0410-961f-
82ee72b054a4
crux [Wed, 3 Nov 1999 11:23:27 +0000 (11:23 +0000)]
Copy reg notes in eliminate_regs_in_insn.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30372
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 3 Nov 1999 10:28:30 +0000 (10:28 +0000)]
* dwarf2out.c: Do not include ctype.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30371
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 3 Nov 1999 08:45:39 +0000 (08:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30369
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Wed, 3 Nov 1999 06:58:48 +0000 (06:58 +0000)]
* decl.c (grokfndecl): Remove dead code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30368
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Wed, 3 Nov 1999 06:54:37 +0000 (06:54 +0000)]
* dump.c (dequeue_and_dump): Fix thinko for catch-clauses.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30367
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Wed, 3 Nov 1999 06:52:46 +0000 (06:52 +0000)]
1999-11-02 Scott Snyder <snyder@fnal.gov>
* decl2.c (build_expr_from_tree): Handle REALPART_EXPR and
IMAGPART_EXPR.
* pt.c (tsubst_copy): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30366
138bc75d-0d04-0410-961f-
82ee72b054a4
bryce [Wed, 3 Nov 1999 03:10:22 +0000 (03:10 +0000)]
1999-11-02 Bryce McKinlay <bryce@albatross.co.nz>
* posix-threads.cc: Don't include boehm-config.h. Include gcconfig.h
instead.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30365
138bc75d-0d04-0410-961f-
82ee72b054a4
bryce [Wed, 3 Nov 1999 03:04:52 +0000 (03:04 +0000)]
1999-11-02 Bryce McKinlay <bryce@albatross.co.nz>
* gcconfig.h: Don't define MPROTECT_VDB on Linux/i386.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30364
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Wed, 3 Nov 1999 02:52:18 +0000 (02:52 +0000)]
* regclass.c (record_reg_classes): Always use may_move_cost when
seeing how operand fits with various register classes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30362
138bc75d-0d04-0410-961f-
82ee72b054a4
bryce [Wed, 3 Nov 1999 02:13:40 +0000 (02:13 +0000)]
1999-11-02 Bryce McKinlay <bryce@albatross.co.nz>
* posix-threads.cc: Don't include boehm-config.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30361
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Wed, 3 Nov 1999 01:26:31 +0000 (01:26 +0000)]
* quick_threads.c: Include gcconfig.h, not boehm-config.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30360
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Wed, 3 Nov 1999 01:15:40 +0000 (01:15 +0000)]
* boehm.cc: Don't include boehm-config.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30359
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Wed, 3 Nov 1999 01:11:03 +0000 (01:11 +0000)]
* configure: Rebuilt.
* configure.in: Don't create boehm-config.h.
* Makefile.in: Rebuilt.
* Makefile.am (libgcjgc_la_SOURCES): Reference gcconfig.h, not
config.h.
($(all_objs)): Depend on gcconfig.h.
* gc_priv.h: Reference GCCONFIG_H, not CONFIG_H.
* gcconfig.h: Define GCCONFIG_H, not CONFIG_H.
* config.h: Removed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30358
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 2 Nov 1999 23:43:44 +0000 (23:43 +0000)]
* resource.c: Revert Oct 26 20:42 and Oct 27 00:56 changes.
* toplev.c: Revert Nov 1 13:22 change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30357
138bc75d-0d04-0410-961f-
82ee72b054a4
oliva [Tue, 2 Nov 1999 21:08:34 +0000 (21:08 +0000)]
* gcc.dg/ultrasp1.c: Removed xfail.
* gcc.dg/struct-ret-2.c: Likewise.
* gcc.dg/array-1.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30356
138bc75d-0d04-0410-961f-
82ee72b054a4
jle [Tue, 2 Nov 1999 20:29:50 +0000 (20:29 +0000)]
Tue Nov 2 14:21:37 1999 Jason Eckhardt <jle@cygnus.com>
* config/pa/pa.md (height reduction patterns): Add checks for
overlapping operands to avoid semantic-destroying splits for
height reduction patterns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30355
138bc75d-0d04-0410-961f-
82ee72b054a4
oliva [Tue, 2 Nov 1999 17:46:16 +0000 (17:46 +0000)]
* configure.in (m68k-hp-hpux*, xm_alloca.h): The underscore should
have been an hyphen, fixed.
* configure: Rebuilt.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30354
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Tue, 2 Nov 1999 17:06:24 +0000 (17:06 +0000)]
Fix compile time warnings
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30353
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 2 Nov 1999 16:37:23 +0000 (16:37 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30352
138bc75d-0d04-0410-961f-
82ee72b054a4
crux [Tue, 2 Nov 1999 16:00:03 +0000 (16:00 +0000)]
Delete two useless declarations.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30351
138bc75d-0d04-0410-961f-
82ee72b054a4
clm [Tue, 2 Nov 1999 15:48:26 +0000 (15:48 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30350
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Tue, 2 Nov 1999 14:41:16 +0000 (14:41 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30349
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 2 Nov 1999 10:25:28 +0000 (10:25 +0000)]
* xstrdup (sys/types.h): Include this file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30347
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 2 Nov 1999 10:23:46 +0000 (10:23 +0000)]
* gcc.1 (PA options): Remove obsolete -mshared-libs options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30346
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 2 Nov 1999 08:50:55 +0000 (08:50 +0000)]
* pa.h (ADDR_VEC_ALIGN): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30345
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 2 Nov 1999 08:45:07 +0000 (08:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30344
138bc75d-0d04-0410-961f-
82ee72b054a4
apbianco [Tue, 2 Nov 1999 07:51:19 +0000 (07:51 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30343
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30341
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 2 Nov 1999 07:26:47 +0000 (07:26 +0000)]
tweak comment
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30340
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30339
138bc75d-0d04-0410-961f-
82ee72b054a4
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; end_of_loop" and
the break sequence gets moved out of the loop.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30338
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 2 Nov 1999 06:39:04 +0000 (06:39 +0000)]
* unroll.c (unroll_loop): Allocate memory for MAP using xcalloc.
Remove explicit zero initializations of entries within MAP.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30337
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Tue, 2 Nov 1999 02:09:55 +0000 (02:09 +0000)]
* reg-stack.c (convert_regs_1): Handle EH edges specially.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30336
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Tue, 2 Nov 1999 00:12:10 +0000 (00:12 +0000)]
* boehm.cc (_Jv_InitGC): Set GC_java_finalization.
(sum_blocks): Removed.
(_Jv_GCFreeMemory): Use GC_get_free_bytes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30335
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 1 Nov 1999 23:38:57 +0000 (23:38 +0000)]
Remove duplicate of friend18.C
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30334
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 1 Nov 1999 23:19:44 +0000 (23:19 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30333
138bc75d-0d04-0410-961f-
82ee72b054a4
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30332
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 1 Nov 1999 22:42:01 +0000 (22:42 +0000)]
* combine.c (combine_instructions): Use xmalloc instead of alloca.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30331
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Mon, 1 Nov 1999 21:22:59 +0000 (21:22 +0000)]
* toplev.c (rest_of_compilation): Don't optimize the CFG
when rebuilding, just before dbr.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30330
138bc75d-0d04-0410-961f-
82ee72b054a4
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30328
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Mon, 1 Nov 1999 20:48:50 +0000 (20:48 +0000)]
Initial revision
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30324
138bc75d-0d04-0410-961f-
82ee72b054a4
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30323
138bc75d-0d04-0410-961f-
82ee72b054a4
korbb [Mon, 1 Nov 1999 18:14:50 +0000 (18:14 +0000)]
Patch from Philippe De Muyter <phdm@macqel.be>
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30322
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Mon, 1 Nov 1999 14:23:53 +0000 (14:23 +0000)]
Add comments explaining what thumb_expand_prologue() does.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30321
138bc75d-0d04-0410-961f-
82ee72b054a4
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30319
138bc75d-0d04-0410-961f-
82ee72b054a4
apbianco [Mon, 1 Nov 1999 09:48:46 +0000 (09:48 +0000)]
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.)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30318
138bc75d-0d04-0410-961f-
82ee72b054a4
apbianco [Mon, 1 Nov 1999 09:45:18 +0000 (09:45 +0000)]
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)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30317
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 1 Nov 1999 08:53:40 +0000 (08:53 +0000)]
* flow.c (calculate_global_regs_live): Fix thinko.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30316
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 1 Nov 1999 08:45:06 +0000 (08:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30315
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 1 Nov 1999 06:57:01 +0000 (06:57 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30314
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 1 Nov 1999 06:42:00 +0000 (06:42 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30313
138bc75d-0d04-0410-961f-
82ee72b054a4
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30312
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 1 Nov 1999 05:35:03 +0000 (05:35 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30311
138bc75d-0d04-0410-961f-
82ee72b054a4
oliva [Mon, 1 Nov 1999 05:19:07 +0000 (05:19 +0000)]
* gcc.dg/struct-ret-2.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30310
138bc75d-0d04-0410-961f-
82ee72b054a4
oliva [Mon, 1 Nov 1999 05:18:17 +0000 (05:18 +0000)]
* gcc.dg/array-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30309
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 1 Nov 1999 04:24:33 +0000 (04:24 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30308
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 1 Nov 1999 04:23:27 +0000 (04:23 +0000)]
* stmt.c (expand_value_return): Fix typo in this change:
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30307
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 1 Nov 1999 04:08:54 +0000 (04:08 +0000)]
* expr.c (readonly_fields_p): Ignore everything except FIELD_DECLs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30306
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 1 Nov 1999 02:19:25 +0000 (02:19 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30304
138bc75d-0d04-0410-961f-
82ee72b054a4
ghazi [Mon, 1 Nov 1999 01:47:41 +0000 (01:47 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30303
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30302
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Mon, 1 Nov 1999 01:18:04 +0000 (01:18 +0000)]
Fix error in last change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30301
138bc75d-0d04-0410-961f-
82ee72b054a4
bryce [Mon, 1 Nov 1999 01:15:37 +0000 (01:15 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30300
138bc75d-0d04-0410-961f-
82ee72b054a4
kenner [Mon, 1 Nov 1999 01:11:22 +0000 (01:11 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30299
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 1 Nov 1999 00:55:24 +0000 (00:55 +0000)]
Remove experimental hunk that wasn't supposed to be checked in.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30298
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 1 Nov 1999 00:18:40 +0000 (00:18 +0000)]
* POTFILES.in: Add simplify-rtx.c
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30296
138bc75d-0d04-0410-961f-
82ee72b054a4