* t-h8300 (MULTILIB_EXCEPTIONS): Define.
[platform/upstream/gcc.git] / gcc / ChangeLog
1 Mon Nov 17 13:21:40 1997  Jeffrey A Law  (law@cygnus.com)
2
3         * t-h8300 (MULTILIB_EXCEPTIONS): Define.
4
5 Fri Nov  7 15:33:11 1997  Robert Lipe (robertl@dgii.com)
6
7         * i386/sco5.h (HAVE_ATEXIT): Delete definition.
8
9 Sun Nov 16 23:52:48 1997  Jeffrey A Law  (law@cygnus.com)
10
11         * cse.c (cse_insn): Don't look at JUMP_LABEL field of a conditionl
12         return.
13         (cse_end_of_basic_block): Similarly.
14  
15 Sun Nov 16 23:01:40 1997  J. Kean Johnston  <jkj@sco.com>
16
17         * i386/sco5.h (ASM_OUTPUT_ALIGNED_BSS): Define.
18         (SELECT_RTX_SECTION): Define.
19         (LIBGCC_SPEC, LIB_SPEC): Do the right thing for PIC.
20
21 Sun Nov 16 22:47:03 1997  Manfred Hollstein  <manfred@s-direktnet.de>
22
23         * Makefile.in (compare, compare-lean): Define $stage for each
24         shell command.
25         (gnucompare, gnucompare-lean): Likewise.
26
27 Sun Nov 16 22:02:16 1997  Richard Henderson  (rth@cygnus.com)
28
29         * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix offsets.
30
31         * alpha.h (ASM_OUTPUT_ADDR_DIFF_ELT): Add an L for the local label
32         to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
33
34 Fri Nov 14 09:09:20 1997  Fred Fish  (fnf@cygnus.com)
35
36         * dwarfout.c (byte_size_attribute):  Add local var upper_bound
37         and add case to handle STRING_TYPE.
38         * dwarfout.c (output_string_type_die):  Fix code to generate
39         correct string length attribute for fixed length strings.
40         Still needs support for varying length strings.
41
42 Fri Nov 14 08:46:56 1997  Jeffrey A Law  (law@cygnus.com)
43
44         * toplev.c (get_run_time): Do something sensible for cygwin32.
45
46 Fri Nov 14 07:24:20 1997  Richard Henderson  <rth@cygnus.com>
47
48         * expr.c (expand_builtin_setjmp): Set
49         current_function_has_nonlocal_label.
50         * stupid.c (stupid_life_analysis): If has_nonlocal_label, kill
51         call-saved registers across calls.
52
53         * alpha.md (exception_receiver): Remove.
54         (nonlocal_goto_receiver_osf): New
55         (nonlocal_goto_receiver_vms): Renamed from nonlocal_goto_receiver.
56         (nonlocal_goto_receiver): New, select _osf or _vms.
57
58         * alpha.c (output_prolog [*]): Prefix entry labels with '$' to
59         keep them from being propogated to the object file.
60         (alpha_write_linkage): Likewise.
61         * alpha.md (call_vms): Likewise.
62         (call_value_vms): Likewise.
63         (unnamed osf call insns): Likewise.
64
65         * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Don't omit L from local label.
66         (ASM_GENERATE_INTERNAL_LABEL): Likewise.
67
68         * alpha.c (call_operand): Any reg is valid for WinNT.
69         * alpha.md (call_nt, call_value_nt): Don't force address into $27.
70         (anon nt calls): Add 'R' alternative.
71         * alpha/win-nt.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE,
72         INITIALIZE_TRAMPOLINE): Handle lack of original $27 and 32-bit ptrs.
73
74 Fri Nov 14 06:59:33 1997  Jeffrey A Law  (law@cygnus.com)
75
76         * calls.c (expand_call): Handle pcc_struct_value correctly for C++.
77
78         * i386/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Delete defines.
79         * i386/xm-mingw32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
80         * rs6000/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
81
82 Thu Nov 13 20:37:33 1997  Michael Meissner  <meissner@tiktok.cygnus.com>
83
84         * reload1.c (new_spill_reg): Improve fixed or forbidden register
85         spill error message.
86
87 Thu Nov 13 20:29:08 1997  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
88
89         * prefix.c: Use stdarg.h only ifdef __STDC__.  Otherwise,
90         use varargs.h.  Wrap header with <>, not "".
91
92 Thu Nov 13 20:21:17 1997  Jeffrey A Law  (law@cygnus.com)
93
94         * integrate.c (save_for_inline_copying): Add return value from
95         savealloc.
96
97 Thu Nov 13 19:12:33 1997  Brendan Kehoe  <brendan@cygnus.com>
98
99         * fixincludes: Be a little more restrictive on what we will
100         substitute to replace definitions of MAXINT for HPUX.
101
102 Thu Nov 13 18:41:02 1997  Michael Meissner  <meissner@cygnus.com>
103
104         * dbxout.c (dbxout_symbol_location): Don't assume that variables
105         whose address is the stack or argument pointers are indirect
106         pointers.
107
108 1997-11-13  Paul Eggert  <eggert@twinsun.com>                               
109         
110         * cccp.c, cpplib.c (compare_defs):
111         Don't complain about arg name respellings unless pedantic.
112         * cpplib.c (compare_defs): Accept pfile as new arg.              
113         All callers changed.                                               
114
115 Thu Nov 13 23:33:50 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
116
117         * fold-const.c (fold_truthop): Fix bug in last change.
118
119 1997-11-13  Paul Eggert  <eggert@twinsun.com>
120
121         Fix some confusion with IEEE minus zero.
122
123         * real.h (REAL_VALUES_IDENTICAL): New macro.
124
125         * expr.c (is_zeros_p): Don't consider -0.0 to be all zeros.
126         * fold-const.c (operand_equal_p): Don't consider -0.0 to be
127         identical to 0.0.
128         * tree.c (simple_cst_equal): Don't consider -0.0 to have the
129         same tree structure as 0.0.
130
131         * varasm.c (immed_real_const_1): Use new REAL_VALUES_IDENTICAL
132         macro instead of doing it by hand.
133
134 Thu Nov 13 16:56:14 1997  Jeffrey A Law  (law@cygnus.com)
135
136         * v850/lib1funcs.asm: Minor whitespace changes.
137         * v850.c: Fix minor formatting problems in many places.
138         (construct_restore_jr, construct_save_jarl): Remove unwanted aborts.
139
140 Thu Nov 13 12:53:44 1997  Jim Wilson  <wilson@cygnus.com>
141
142         * mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete code swapping xplus0 and
143         xplus1 when xplus0 is not a register.
144
145 Thu Nov 13 11:41:42 1997  Jeffrey A Law  (law@cygnus.com)
146
147         * flow.c (find_basic_blocks): During marking phase, if we encounter
148         an insn with a REG_LABEL note, make the target block live and
149         create an edge from the insn to the target block.  Do not make
150         edges from all blocks to the target block.
151
152         * m68k/x-next (OTHER_FIXINCLUDES_DIRS): Include /NextDeveloper/Headers.
153
154         * confiugre.in: Tweak NCR entries.
155         * configure: Rebuilt.
156
157 Thu Nov 13 11:07:41 1997  Michael Meissner  <meissner@cygnus.com>
158
159         * rs6000.c (num_insns_constant): Use REAL_VALUE_FROM_CONST_DOUBLE to
160         pick apart floating point values, instead of using CONST_DOUBLE_LOW
161         and CONST_DOUBLE_HIGH.
162
163         * rs6000.md (define_splits for DF constants): Use the appropriate
164         REAL_VALUE_* interface to pick apart DF floating point constants in
165         a machine independent fashion.
166
167 Thu Nov 13 00:06:58 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
168
169         * fold-const.c (fold_truthop): When changing a one-bit comparison
170         against zero into a comparison against mask, do a proper sign
171         extension.
172
173 Wed Nov 12 09:37:01 1997  Jeffrey A Law  (law@cygnus.com)
174
175         * except.c: Do not include "assert.h".
176         (save_eh_status): Turn asserts into conditional aborts.
177         (restore_eh_status, scan_region): Likewise.
178         * dwarfout.c: Do not include "assert.h".
179         (bit_offset_attribute): Turn asserts into conditional aborts.
180         (bit_size_attribute, output_inlined_enumeration_type_die): Likewise.
181         (output_inlined_structure_type_die): Likewise.
182         (output_inlined_union_type_die): Likewise
183         (output_tagged_type_instantiation): Likewise.
184         (dwarfout_file_scope_decl): Likewise.
185         * dwarf2out.c: Do not include "assert.h"
186         (expand_builtin_dwarf_reg_size): Turn asserts into conditional aborts.
187         (reg_save, initial_return_save, dwarf2out_frame_debug): Likewise.
188         (add_child_die, modified_type_die, add_bit_offset_attribute): Likewise.
189         (add_bit_size_attribute, scope_die_for): Likewise.
190         (output_pending_types_for_scope): Likewise.
191         (get_inlined_enumeration_type_die): Likewise.
192         (get_inlined_structure_type_die): Likewise.
193         (get_inlined_union_type_die, gen_subprogram_die): Likewise.
194         (gen_tagged_type_instantiation_die): Likewise.
195
196         * flow.c (find_basic_blocks): Refine further to get a more correct
197         cfg, especially in the presense of exception handling, computed
198         gotos, and other non-trivial cases.  Call abort if an inaccuracy
199         is detected in the cfg.
200
201 Tue Nov 11 21:47:27 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
202
203         * glimits.h (SHRT_MIN): Define in a way suitable for 16 bit hosts.
204
205         * c-lex.c (whitespace_cr, skip_white_space_on_line): New functions.
206         (skip_white_space): Use whitespace_cr.
207         (check_newline): Handle whitespace more consistently.
208
209 Tue Nov 11 16:25:49 1997  Jim Wilson  <wilson@cygnus.com>
210
211         * i386/cygwin32.h (CPP_PREDEFINES): Delete -DPOSIX.
212         * i386/xm-cygwin32.h (POSIX): Define.
213
214 Mon Nov 10 20:53:11 1997  Gavin Koch  <gavin@cygnus.com>
215
216         * config/mips/mips.h (MASK_DEBUG_H): Set to zero, so this bit
217         is available elsewhere.
218
219 Mon Nov 10 16:21:58 1997  Doug Evans  <devans@canuck.cygnus.com>
220
221         * sparc/sparc.md (mov[sdt]f_const_insn): Fix condition to match
222         what the instruction can handle.
223
224 Mon Nov 10 03:02:19 1997  Jason Merrill  <jason@yorick.cygnus.com>
225
226         * stmt.c (expand_decl_cleanup_no_eh): New fn.
227
228         * except.c (expand_leftover_cleanups): do_pending_stack_adjust.
229
230 Mon Nov 10 00:05:56 1997  Jeffrey A Law  (law@cygnus.com)
231
232         * alias.c (MAX_ALIAS_LOOP_PASSES): Define.
233         (init_alias_analysis): Break out of loops after MAX_ALIAS_LOOP_PASSES.
234
235 Sun Nov  9 14:34:47 1997  David Edelsohn  <edelsohn@mhpcc.edu>
236
237         * rs6000.md (lshrdi3_power): Delete '&' from first alternative and
238         swap instruction order.
239
240 Sun Nov  9 02:07:16 1997  Jeffrey A Law  (law@cygnus.com)
241
242         * fixinc.svr4 (__STDC__): Add another case.
243
244 Sun Nov  9 02:00:29 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
245
246         * a29k.h (ELIGIBLE_FOR_EPILOGUE_DELAY): Avoid loads from varying
247         addresses in the epilogue delay slot.
248
249 Sun Nov  9 01:40:40 1997  Manfred Hollstein  (manfred@s-direktnet.de)
250
251         * m88k/dgux.h (ASM_CPU_SPEC): Reformatted to suppress wrong whitespace
252         in generated `specs' file.
253
254 Sun Nov  9 01:37:11 1997  Jim Wilson  (wilson@cygnus.com)
255
256         * flags.h (flag_rerun_loop_opt): Declare.
257         * loop.c (invariant_p, case LABEL_REF): Check flag_rerun_loop_opt.
258         * toplev.c (flag_rerum_loop_opt): Delete static.
259
260 Sat Nov  8 18:20:21 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
261
262         Bring over from FSF:
263
264         Thu Oct 30 12:21:06 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
265
266         * va-sh.h (__va_arg_sh1): Define.
267         (va_arg): Use it.
268         SH3E doesn't use any integer registers for subsequent arguments
269         once a non-float value was passed in the stack.
270         * sh.c (machine_dependent_reorg): If optimizing, put explicit
271         alignment in front label for ADDR_DIFF_VEC.
272         * sh.h (PASS_IN_REG_P): Fix SH3E case.
273         (ADJUST_INSN_LENGTH): If not optimizing, add two extra bytes length.
274
275         Tue Oct 28 15:06:44 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
276
277         * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Undefine before including
278         svr4.h.
279
280         Mon Oct 27 16:11:52 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
281
282         * sh.c (machine_dependent_reorg): When -flag_delayed_branches,
283         put an use_sfunc_addr before each sfunc.
284         * sh.md (use_sfunc_addr, dummy_jump): New insns.
285         (casesi): For TARGET_SH2, emit a dummy_jump after LAB.
286
287         Tue Oct 21 07:12:28 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
288
289         * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Don't redefine.
290
291 Fri Nov  7 10:22:24 1997  Jason Merrill  <jason@yorick.cygnus.com>
292
293         * frame.c (add_fdes, count_fdes): Go back to checking pc_begin for
294         linked once FDEs.
295
296 Wed Nov  5 14:26:05 1997  Jeffrey A Law  (law@cygnus.com)
297
298         * alias.c (find_base_value): Only return the known base value for
299         pseudo registers.
300
301 Wed Nov  5 11:27:14 1997  Jim Wilson  <wilson@cygnus.com>
302
303         * i386.c (load_pic_register): Call prologue_get_pc_and_set_got.
304         * i386.md (prologue_set_got, prologue_get_pc): Add UNSPEC_VOLATILE
305         to pattern.
306         (prologue_get_pc_and_set_got): New pattern.
307
308 Tue Nov  4 20:36:50 1997  Richard Henderson  (rth@cygnus.com)
309
310         * alpha.c (summarize_insn): Handle ASM_OPERANDS.  Don't recurse
311         for SUBREG, just fall through.
312
313         * alpha.c (alpha_handle_trap_shadows): Init sum.defd to zero.
314
315         * alpha.md (attr trap): Make TRAP_YES non-zero for sanity's sake.
316
317 Tue Nov  4 18:49:42 1997  Jeffrey A Law  (law@cygnus.com)
318
319         * fixincludes: Fix "hypot" prototype in NeXT math.h.
320
321         * Makefile.in (USE_ALLOCA): Always include alloca.o.
322         (USE_HOST_ALLOCA): Likewise.
323
324         * rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
325         and LABEL_REFS fields.
326         * rtl.h (LABEL_REFS): Update.
327
328 Tue Nov  4 16:55:11 1997  Jim Wilson  <wilson@cygnus.com>
329
330         * combine.c (try_combine): When setting elim_i2, check whether newi2pat
331         sets i2dest.  When calling distribute_notes for i3dest_killed, pass
332         elim_i2 and elim_i1.  When setting elim_i1, check if newi2pat
333         sets i1dest.
334
335         * mips.md (insv, extzv, extv): Add change_address call.
336         (movsi_ulw, movsi_usw): Change QImode to BLKmode in pattern.
337
338         * integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
339
340         * reload.c (find_reloads, case 'm' and 'o'): Reject HIGH constants.
341
342         * mips.c (mips_expand_epilogue): Emit blockage insn before call to
343         save_restore_insns if no FP and GP will be restored.
344
345         * dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
346         Convert CCmode to word_mode before calling GET_MODE_SIZE.
347
348         * acconfig.h (HAVE_INTTYPES_H): Undef.
349         * configure.in (inttypes.h): Check for conflicts between sys/types.h
350         and inttypes.h, and verify that intmax_t is defined.
351         * config/mips/x-iris (CC, OPT, OLDCC): Comment out.
352         * config/mips/x-iris3: Likewise.
353
354 Tue Nov  4 16:07:15 1997  Jeffrey A Law  (law@cygnus.com)
355
356         * alias.c (find_base_value): When copying arguments, return the
357         tenative value for a hard register.
358
359 Tue Nov  4 13:40:35 1997  Doug Evans  <devans@canuck.cygnus.com>
360
361         * c-lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
362         (yylex): Record wide strings using target endianness, not host.
363
364 Tue Nov  4 13:13:12 1997  Jeffrey A Law  (law@cygnus.com)
365
366         * mn10200.h (ASM_OUTPUT_BSS): Delete.
367         (ASM_OUTPUT_ALIGNED_BSS): New macro
368         * mn10300.h (ASM_OUTPUT_BSS): Delete.
369         (ASM_OUTPUT_ALIGNED_BSS): New macro.
370         * v850.h (ASM_OUTPUT_BSS): Delete.
371         (ASM_OUTPUT_ALIGNED_BSS): New macro.
372
373 Tue Nov  4 00:55:48 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
374  
375         * profile.c (branch_prob): Insert an insn after a NOTE_INSN_SETJMP.
376
377 Mon Nov  3 14:36:50 1997  Jeffrey A Law  (law@cygnus.com)
378
379         * configure.in (sco5): Use cpio to install header files.
380
381 Sun Nov  2 23:31:43 1997  Manfred Hollstein  <manfred@s-direktnet.de>
382
383         * aclocal.m4 (conftestdata_from, conftestdata_to): Names shortened to
384         14 char length.
385         * configure: Rebuild.
386
387 Sun Nov  2 19:44:00 1997  Robert Lipe (robertl@dgii.com)
388
389         * i386/sco5.h: enable -gstabs once again.
390
391 Sun Nov  2 19:27:21 1997  Jeffrey A Law  (law@cygnus.com)
392
393         * arm.c (output_move_double): Allocate 3 entries in otherops array.
394
395 Sat Nov  1 21:43:00 1997  Mike Stump  (mrs@wrs.com)
396
397         * except.c (expand_ex_region_start_for_decl): Emit EH_REGION_BEG
398         notes for sjlj exceptions too.
399         (expand_eh_region_end): Similarly for EH_REGION_END notes.
400         (exception_optimize): Optimize EH regions for sjlj exceptions too.
401         * final.c (final_scan_insn): Don't output labels for EH REGION
402         notes if doing sjlj exceptions.
403
404 Sat Nov  1 19:15:28 1997  Jeffrey A Law  (law@cygnus.com)
405
406         * alias.c (init_alias_analysis): Handle -fno-alias-check when
407         optimizing correctly.
408
409         * expr.c (expand_builtin_setjmp): Don't emit a SETJMP note
410         or set current_function_calls_setjmp anymore.
411
412         * flow.c (find_basic_blocks): If we delete the label for an
413         exception handler, remove it from the EH label list and remove
414         the EH_BEGIN/EH_END notes for that EH region.
415
416 Sat Nov  1 16:44:49 1997  Jason Merrill  (jason@cygnus.com)
417
418         * flow.c (find_basic_blocks): Generate correct flow control
419         information when exception handling notes are present.
420
421 Sat Nov  1 13:42:19 1997  Jeffrey A Law  (law@cygnus.com)
422
423         * dwarf2out.c (output_call_frame_info): Fix length argument
424         to ASM_OUTPUT_ASCII.
425         (output_die, output_pubnames, output_line_info): Likewise.
426
427 Fri Oct 31 07:10:09 1997  Jeffrey A Law  (law@cygnus.com)
428
429         * version.c: Bump for snapshot.
430
431         * dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_ASCII to
432         output ASCII by default.  Only use ASM_OUTPUT_DWARF_STRING if
433         flag_debug_asm is on.
434         (output_die, output_pubnames, output_line_info): Likewise.
435
436         * alias.c (init_alias_analysis): Add struct_value_incoming_rtx
437         and static_chain_rtx into the potential base values array if
438         they are registers.
439
440         * alias.c (new_reg_base_value): New array of potential base values.
441         (unique_id): Now file scoped static.
442         (find_base_value, case REG): Return the value in reg_base_value
443         array for the REG if it exists.  Else, return the value from
444         new_reg_base_value if copying args and REG is a hard register.
445         (find_base_value, case PLUS): If either operand of the PLUS is
446         a REG, try to get its base value.  Handle base + index and
447         index + base.
448         (record_set): Use new_reg_base_value instead of reg_base_value.
449         (init_alias_analysis): Allocate space for new_reg_base_value too.
450         Rework code to iterate over the insns propagating base value
451         information until nothing changes.
452
453         * global.c (global_alloc): Free the conflict matrix after
454         reload has finished.
455
456 Fri Oct 31 01:45:31 1997  Jason Merrill  <jason@yorick.cygnus.com>
457
458         * libgcc2.c (L_eh): Define __eh_pc.
459         Replace __eh_type with generic pointer __eh_info.
460
461 Fri Oct 31 00:34:55 1996  J"orn Rennecke <amylaar@cygnus.co.uk>
462
463         * expr.c (expand_increment): When enqueing a postincrement for a MEM,
464         use copy_to_reg if address is not a general_operand.
465
466 Fri Oct 31 00:16:55 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
467
468         * profile.c (output_func_start_profiler): Clear flag_inline_functions
469         for the duration of the call to rest_of_compilation.
470
471 Thu Oct 30 14:40:10 1997  Doug Evans  <devans@canuck.cygnus.com>
472
473         * configure.in (sparc-*-elf*): Use sparc/elf.h, sparc/t-elf.
474         Set extra_parts.
475         (sparc*-*-*): Recognize --with-cpu=v9.
476         * sparc/elf.h: New file.
477         * sparc/t-elf: New file.
478
479 Thu Oct 30 13:26:12 1997  Jeffrey A Law  (law@cygnus.com)
480
481         * mn10300.c (const_8bit_operand): New function.
482         (mask_ok_for_mem_btst): New funtion.
483         * mn10300.md (btst patterns with mem operands): Use new functions
484         to avoid creating btst instructions with invalid operands.
485
486 Wed Oct 29 16:57:19 1997  Michael Meissner  <meissner@cygnus.com>
487
488         * rs6000/xm-sysv4.h: Include xm-linux.h instead of xm-svr4.h if we
489         are running on PowerPC Linux.
490
491 Wed Oct 29 13:10:11 1997  Gavin Koch  <gavin@cygnus.com>
492
493         * config/mips/elf64.h (PREFERRED_DEBUGGING_TYPE): Only define
494         if not previously defined.
495
496 Tue Oct 28 23:55:27 1997  Doug Evans  (devans@cygnus.com)
497
498         * function.c (assign_parms): Correct mode of stack_parm if
499         entry_parm underwent a mode conversion.
500
501 1997-10-28  Brendan Kehoe  <brendan@lisa.cygnus.com>
502
503         * global.c (global_alloc): Use xmalloc instead of alloca for
504         CONFLICTS, since max_allocno * allocno_row_words alone can be more
505         than 2.5Mb sometimes.
506
507 Tue Oct 28 15:29:15 1997  Richard Henderson  <rth@cygnus.com>
508
509         * reload1.c (eliminate_regs [SET]): If [SUBREG] widened the mode of
510         DEST for the spill, adjust mode of SRC to compensate.
511
512 Tue Oct 28 14:36:45 1997  Richard Henderson  <rth@cygnus.com>
513
514         * alpha.md (reload_inqi): Check for MEM before strict_memory_address_p,
515         since any_memory_operand() allows pseudos during reload.
516         (reload_inhi, reload_outqi, reload_outhi): Likewise.
517
518 Tue Oct 28 11:53:14 1997  Jim Wilson  <wilson@cygnus.com>
519
520         * m68k.md (btst patterns): Add 5200 support.
521
522 Tue Oct 28 11:58:40 1997  Toon Moene  <toon@moene.indiv.nluug.nl>
523
524         * fold-const.c (fold): For ((a * C1) / C3) or (((a * C1) + C2) / C3)
525         optimizations, look inside dividend to determine if the expression
526         can be simplified by using EXACT_DIV_EXPR.
527
528 Tue Oct 28 10:19:01 1997  Jason Merrill  <jason@yorick.cygnus.com>
529
530         From Brendan:
531         * dwarf2out.c (output_call_frame_info): Use l1 instead of ".".
532
533 Tue Oct 28 00:32:14 1997  Richard Henderson  <rth@cygnus.com>
534
535         * alpha.c (summarize_insn [SUBREG]): Propogate SET.
536
537 Mon Oct 27 23:59:26 1997  Richard Henderson  <rth@cygnus.com>
538
539         * alpha.c (alpha_handle_trap_shadows): Don't call get_attr_trap
540         on a CLOBBER.
541
542 Mon Oct 27 21:25:20 1997  Richard Henderson  <rth@cygnus.com>
543
544         * alpha.md (movqi, movhi): Make sure new insns created during reload
545         won't need reloading themselves.
546         (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Likewise.
547
548 Mon Oct 27 16:11:10 1997  Jeffrey A Law  (law@cygnus.com)
549
550         * mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Disable reg+reg.
551
552 Sun Oct 26 13:50:44 1997  Richard Henderson  <rth@cygnus.com>
553
554         * alpha.c (alpha_sa_mask [VMS]): Don't include $26 in the mask.
555         Patch from Klaus Kaempf <kkaempf@progis.de>.
556
557 Sun Oct 26 13:31:47 1997  Jim Wilson  (wilson@cygnus.com)
558
559         * expr.c (expand_expr, case INDIRECT_REF): Optimize a reference
560         to an element in a constant string.
561
562 Sun Oct 26 11:41:49 1997  Jason Merrill  <jason@yorick.cygnus.com>
563
564         * dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32
565         bit PC-relative offset.  The exception range table pointer is now in
566         the CIE.
567         * frame.c (dwarf_cie, dwarf_fde): Rename CIE_pointer to CIE_delta.
568         (count_fdes, add_fdes, get_cie): Adjust.
569         (cie_info, extract_cie_info, __frame_state_for): Adjust eh_ptr uses.
570
571         From H.J. Lu:
572         * frame.c (count_fdes, add_fdes): Skip linked once FDE entries.
573
574 Sun Oct 26 11:52:01 1997  Richard Henderson  <rth@cygnus.com>
575
576         * alias.c (memrefs_conflict_p): Treat arg_pointer_rtx just
577         like stack_pointer_rtx.
578
579 Sun Oct 26 11:32:16 1997  Manfred Hollstein  <manfred@s-direktnet.de>
580
581         * Makefile.in (bootstrap-lean): Combined with `normal' bootstrap
582         targets using "$@" to provide support for similar but not identical
583         targets without having to duplicate code.
584         (bootstrap4): New goal.
585
586         * Makefile.in (compare, compare-lean, compare3): Combined to one
587         ruleset determining actions to be performed via $@.
588         (compare4, compare4-lean): New targets.
589         (gnucompare, gnucompare3): Combined to one ruleset determining
590         actions to be performed via $@. Also, note which files failed
591         the comparison test in .bad_compare.
592         (gnucompare-lean, gnucompare3-lean, gnucompare4-lean): New targets.
593
594 Sun Oct 26 10:06:11 1997  Toon Moene  <toon@moene.indiv.nluug.nl>
595
596         * fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
597         if the dividend is a multiple of the divisor.
598
599 Sun Oct 26 09:21:40 1997  Jeffrey A Law  (law@cygnus.com)
600
601         * Makefile.in (LIBGCC2_CFLAGS): Add -fexceptions.
602
603         * alias.c (find_base_term): Handle PRE_INC, PRE_DEC, POST_INC,
604         and POS_DEC.
605
606         * alias.c (true_dependence): Fix typo.
607
608         * toplev.c (flag_rerun_loop_opt): New variable.
609         (f_options): Handle -frerun-loop-opt.
610         (rest_of_compilation): If -frerun-loop-opt, then run the loop
611         optimizer twice.
612         (main): Enable -frerun-loop-opt by default for -O2 or greater.
613
614         * loop.c (simplify_giv_expr): Adding two invariants results
615         in an invariant.
616
617 Sun Oct 26 09:15:15 1997  Richard Henderson  <rth@cygnus.com>
618
619         * expr.c (get_inner_reference): Remove the array bias after 
620         converting the index to Pmode.
621
622 Sat Oct 25 12:20:58 1997  Jeffrey A Law  (law@cygnus.com)
623
624         * mn10300.h (TARGET_SWITCHES): Add -mmult-bug and -mno-mult-bug.
625         (TARGET_MULT_BUG): Define.
626         (TARGET_DEFAULT): Default to TARGET_MULT_BUG.
627         * mn10300.md (mulsi3): Handle TARGET_MULT_BUG.
628
629 Fri Oct 24 17:40:34 1997  Jeffrey A Law  (law@cygnus.com)
630
631         * mn10200.c (indirect_memory_operand): Delete unused function.
632         * mn10200.h (EXTRA_CONSTRAINT): Handle 'R'.
633         * mn10200.md (bset, bclr insns): Handle output in a reg too.
634
635 Fri Oct 24 15:54:57 1997  Richard Henderson  <rth@cygnus.com>
636
637         * alpha.md (call patterns): Revert Oct 16 change; if we are to elide
638         the callee's ldgp, we must do it ourselves, and we use the jsr tag
639         for more than scheduling.
640
641 Fri Oct 24 13:23:04 1997  Doug Evans  <devans@canuck.cygnus.com>
642
643         * sparc/sparc.h (ASM_SPEC): Delete asm_arch.
644
645 Fri Oct 24 13:19:40 1997  Jeffrey A Law  (law@cygnus.com)
646
647         * mn10300.c (symbolic_operand, legitimize_address): New functions.
648         * mn10300.h (LEGITIMIZE_ADDRESS): Call legitimize_address.
649         (GO_IF_LEGITIMATE_ADDRESS): Don't allow base + symbolic.
650
651 Thu Oct 23 09:35:12 1997  Jeffrey A Law  (law@cygnus.com)
652
653         * version.c: Bump for snapshot.
654
655 Thu Oct 23 08:03:59 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
656
657         * dbxout.c (dbxout_start_new_source_file): Use output_quoted_string
658         for FILENAME.
659
660 Wed Oct 22 00:34:12 1997  Jeffrey A Law  (law@cygnus.com)
661
662         * toplev.c (flag_exceptions): Default value is 2.
663         (compile_file): If flag_exceptions still has the value 2, then
664         set it to 0.
665
666         * rs6000.c (struct machine_function): Add pic_offset_table_rtx.
667         (rs6000_save_machine_status): Save pic_offset_table_rtx.
668         (rs6000_restore_machine_status: Restore pic_offset_table_rtx.
669
670         * local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions
671         are shared.
672
673         * rs6000.md (*movsi_got_internal_mem): New pattern.
674         (*movsi_got_internal_mem splitter): New define_split.
675
676 Tue Oct 21 18:14:03 1997  Jim Wilson  <wilson@cygnus.com>
677
678         * obstack.h (obstack_empty_p): Fix spurious space after backslash.
679
680 Tue Oct 21 18:34:01 1997  Geoffrey KEATING  <geoffk@ozemail.com.au>
681
682         * rs6000.c: Avoid creating a stack frame under SYSV ABI if we
683         only need to save LR.
684
685 Tue Oct 21 10:06:40 1997  Jeffrey A Law  (law@cygnus.com)
686
687         * mn10300.md (movqi, movhi): Avoid using address registers as
688         destinations unless absolutely necessary.
689
690         * mn10200.c (expand_prologue): Fix typo.
691
692         * mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed
693         addresses.
694         * mn10200.md (neghi2): Provide an alternative which works if
695         the input and output register are the same.
696
697         * mn10300.c (print_operand): Handle 'S'.
698         * mn10300.md (ashlsi3, lshrsi3, ashrsi3): Use %S for
699         shift amount in last alternative
700
701         * mn10300.c (expand_epilogue): Rework to handle register restores
702         in "ret" and "retf" instructions correctly.
703
704 Mon Oct 20 16:47:08 1997  Jim Wilson  <wilson@cygnus.com>
705
706         * expmed.c (extract_bit_field): Don't make flag_force_mem disable
707         extzv for memory operands.
708
709         * cse.c (simplify_ternary_operation, case IF_THEN_ELSE): Collapse
710         redundant conditional moves to single operand.
711
712 Mon Oct 20 15:30:26 1997  Nick Clifton  <nickc@cygnus.com>
713
714         * v850.h: Move define of __v850__ from CPP_PREDEFINES
715         to CPP_SPEC.
716         
717         * xm-v850.h: Use __v850 rather than __v850__ to
718         identify v850 port.
719
720 Mon Oct 20 14:15:02 1997  Jim Wilson  <wilson@cygnus.com>
721
722         * mips/mips.c (compute_frame_size): Not a leaf function if
723         profile_flag set.
724
725 Mon Oct 20 14:16:38 1997  Geoffrey KEATING  <geoffk@ozemail.com.au>
726
727         * rs6000/t-ppccomm: Use -msdata=none for crtstuff.
728
729 Mon Oct 20 12:28:17 1997  Doug Evans  <devans@canuck.cygnus.com>
730
731         * sparc/sparc.h (SPARC_V9,SPARC_ARCH64): Delete.
732         (DEFAULT_ARCH32_P): New macro.
733         (TARGET_ARCH{32,64}): Allow compile time or runtime selection.
734         (enum cmodel): Declare.
735         (sparc_cmodel_string,sparc_cmodel): Declare.
736         (SPARC_DEFAULT_CMODEL): Provide default.
737         (TARGET_{MEDLOW,MEDANY}): Renamed to TARGET_CM_{MEDLOW,MEDANY}.
738         (TARGET_FULLANY): Deleted.
739         (TARGET_CM_MEDMID): New macro.
740         (CPP_CPU_DEFAULT_SPEC): Renamed from CPP_DEFAULT_SPEC.
741         (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
742         (CPP_PREDEFINES): Take out stuff now handled by %(cpp_arch).
743         (CPP_SPEC): Rewrite.
744         (CPP_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
745         (CPP_{ENDIAN,SUBTARGET}_SPEC): New macros.
746         (ASM_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
747         (ASM_SPEC): Add %(asm_arch).
748         (EXTRA_SPECS): Rename cpp_default to cpp_cpu_default.
749         Rename asm_default to asm_cpu_default.
750         Add cpp_arch32, cpp_arch64, cpp_arch_default, cpp_arch, cpp_endian,
751         cpp_subtarget, asm_arch32, asm_arch64, asm_arch_default, asm_arch.
752         (NO_BUILTIN_{PTRDIFF,SIZE}_TYPE): Define ifdef SPARC_BI_ARCH.
753         ({PTRDIFF,SIZE}_TYPE): Provide 32 and 64 bit values.
754         (MASK_INT64,MASK_LONG64): Delete.
755         (MASK_ARCH64): Renamed to MASK_64BIT.
756         (MASK_{MEDLOW,MEDANY,FULLANY,CODE_MODEL}): Delete.
757         (EMBMEDANY_BASE_REG): Renamed from MEDANY_BASE_REG.
758         (TARGET_SWITCHES): Always provide 64 bit options.
759         (ARCH64_SWITCHES): Delete.
760         (TARGET_OPTIONS): New option -mcmodel=.
761         (INT_TYPE_SIZE): Always 32.
762         (MAX_LONG_TYPE_SIZE): Define ifdef SPARC_BI_ARCH.
763         (INIT_EXPANDERS): sparc64_init_expanders renamed to sparc_init_....
764         (FUNCTION_{,BLOCK_}PROFILER): Delete TARGET_EMBMEDANY support.
765         (PRINT_OPERAND_PUNCT_VALID_P): Add '_'.
766         * sparc/linux-aout.h (CPP_PREDEFINES): Take out stuff handled by
767         CPP_SPEC.
768         (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
769         * sparc/linux.h: Likewise.
770         * sparc/linux64.h (SPARC_V9,SPARC_ARCH64): Delete.
771         (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
772         (TARGET_DEFAULT): Delete MASK_LONG64, MASK_MEDANY, add MASK_64BIT.
773         (SPARC_DEFAULT_CMODEL): Define.
774         (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
775         (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
776         (LONG_DOUBLE_TYPE_SIZE): Define.
777         (ASM_SPEC): Add %(asm_arch).
778         * sparc/sol2.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
779         (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
780         (TARGET_CPU_DEFAULT): Add ultrasparc case.
781         * sparc/sp64-aout.h (SPARC_V9,SPARC_ARCH64): Delete.
782         (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT.
783         (SPARC_DEFAULT_CMODEL): Define.
784         * sparc/sp64-elf.h (SPARC_V9,SPARC_ARCH64): Delete.
785         (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT.  Delete
786         MASK_LONG64, MASK_MEDANY.
787         (SPARC_DEFAULT_CMODEL): Define.
788         (CPP_PREDEFINES): Delete.
789         (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
790         (ASM_SPEC): Add %(asm_arch).
791         (LONG_DOUBLE_TYPE_SIZE): Define.
792         (DWARF2_DEBUGGING_INFO): Define.
793         * sparc/splet.h (CPP_SPEC): Delete.
794         * sparc/sysv4.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
795         (FUNCTION_BLOCK_PROFILER): Delete TARGET_EMBMEDANY support.
796         (BLOCK_PROFILER): Likewise.
797         * sparc/sparc.c (sparc_cmodel_string,sparc_cmodel): New globals.
798         (sparc_override_options): Handle code model selection.
799         (sparc_init_expanders): Renamed from sparc64_init_expanders.
800         * sparc/sparc.md: TARGET_<code_model> renamed to TARGET_CM_....
801         TARGET_MEDANY renamed to TARGET_CM_EMBMEDANY.
802         (sethi_di_embmedany_{data,text}): Renamed from sethi_di_medany_....
803         (sethi_di_fullany): Delete.
804
805 Mon Oct 20 02:00:18 1997  Klaus Kaempf <kkaempf@progis.de>
806                           Jeff Law <law@cygnus.com>
807                           Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
808
809         * alpha/vms.h (DIVSI3_LIBCALL): OTS$ functions are upper case.
810         (DIVDI3_LIBCALL, UDIVSI3_LIBCALL, UDIVDI3_LIBVALL): Likewise.
811         (MODSI3_LIBCALL, MODDI3_LIBCALL): Likewise.
812         (UMODSI3_LIBCALL, UMODDI3_LIBCALL): Likewise.
813         * alpha/alpha.md (arg_home): Likewise.
814
815         * alpha/alpha.c (vmskrunch): Delete
816         * alpha/vms.h (ENCODE_SECTION_INFO, ASM_DECLARE_FUNCTION_NAME): Delete.
817         * alpha.c (output_prolog, VMS): Use alloca for entry_label and don't
818         truncate to 64 characters.
819
820         * make-l2.com: Support openVMS/Alpha.
821
822         * vmsconfig.com: Fix to work on openVMS/Alpha and openVMS/VAX.
823
824 Sun Oct 19 19:00:35 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
825
826         * longlong.h (count_leading_zeros): Add missing casts to USItype.
827
828 Sun Oct 19 18:44:06 1997  Jeffrey A Law  (law@cygnus.com)
829
830         * i386/bsd386.h (ASM_COMMENT_START): Define.
831
832 Sat Oct 18 13:47:15 1997  Jason Merrill  <jason@yorick.cygnus.com>
833
834         * tree.c (restore_tree_status): Also free up temporary storage
835         when we finish a toplevel function.
836         (dump_tree_statistics): Print stats for backend obstacks.
837
838 Sat Oct 18 12:47:31 1997  Doug Evans  <dje@canuck.cygnus.com>
839
840         * expr.c (use_group_regs): Don't call use_reg for MEMs.
841
842 Sat Oct 18 09:49:46 1997  Jason Merrill  <jason@yorick.cygnus.com>
843
844         * libgcc2.c (__throw): Don't copy the return address.
845         * dwarf2out.c (expand_builtin_dwarf_reg_size): Ignore return address.
846
847         * except.c (exceptions_via_longjmp): Initialize to 2 (uninitialized).
848         * toplev.c (main): Initialize exceptions_via_longjmp.
849
850         * tree.c: Add extra_inline_obstacks.
851         (save_tree_status): Use it.
852         (restore_tree_status): If this is a toplevel inline obstack and we
853         didn't want to save anything on it, recycle it.
854         (print_inline_obstack_statistics): New fn.
855         * function.c (pop_function_context_from): Pass context to 
856         restore_tree_status.
857         * obstack.h (obstack_empty_p): New macro.
858
859 Sat Oct 18 00:43:59 1997  Jeffrey A Law  (law@cygnus.com)
860
861         * i386/freebsd.h (ASM_COMMENT_START): Fix.
862
863 Fri Oct 17 23:48:52 1997  Jim Wilson  (wilson@cygnus.com)
864
865         * v850.c (ep_memory_offset): New function.
866         (ep_memory_operand, substitute_ep_register, v850_reorg): Call it.
867
868         * v850.h (CONST_OK_FOR_*): Add and correct comments.
869         (CONSTANT_ADDRESS_P): Add comment.
870         (EXTRA_CONSTRAINT): Define 'U'.
871         * v850.md: Add comments on bit field instructions.
872         (addsi3): Delete &r/r/r alternative.  Add r/r/U alternative.
873         (lshrsi3): Use N not J constraint. 
874
875         * v850.md (v850_tst1+1): New define_split for tst1 instruction.
876
877         * v850.c (reg_or_0_operand): Call register_operand.
878         (reg_or_int5_operand): Likewise.
879         * v850.h (MASK_BIG_SWITCH, TARGET_BIG_SWITCH): New macros.
880         (TARGET_SWITCHES): Add "big-switch".
881         (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE,
882         ASM_OUTPUT_BEFORE_BASE_LABEL): Add support for TARGET_BIG_SWITCH.
883         (CASE_DROPS_THROUGH): Comment out.
884         (CASE_VECTOR_PC_RELATIVE, JUMP_TABLES_IN_TEXT_SECTION): Define.
885         * v850.md (cmpsi): Delete compare mode.
886         (casesi): New pattern.
887
888         * v850.h (CONST_OK_FOR_N): Delete redundant compare against zero.
889         * v850.md (ashlsi3): Use SImode not QImode for shift count.
890         (lshrsi3): Likewise.
891
892         * v850.c (print_operand): Add 'c', 'C', and 'z' support.  Delete
893         unreachable switch statement after 'b' support.  Remove "b" from
894         strings for 'b' support.
895         * v850.md (branch_normal, branch_invert): Change %b to b%b.
896
897 Fri Oct 17 23:33:20 1997  Jeffrey A Law  (law@cygnus.com)
898
899         * Makefile.in (LIBGCC2_CFLAGS): Avoid a backslash then an
900         empty line if @inhibit_libc@ is empty.
901
902 Fri Oct 17 23:24:40 1997  Robert Lipe (robertl@dgii.com)
903
904         * i386/sco5.h: Let ELF use dwarf2 unwinding.  COFF uses sjlj.
905         (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Defined.
906         (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
907         (DWARF2_UNWIND_INFO): Let this track object file format.
908         (EXTRA_SECTIONS): Add in_eh.
909         (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Define.
910         (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
911
912 Fri Oct 17 17:13:42 1997  David S. Miller  <davem@tanya.rutgers.edu>
913
914         * sparc/linux64.h (LINK_SPEC): Dynamic linker is ld-linux64.so.2.
915         * sparc/sparc.h (FUNCTION_PROFILER): Fix format string when
916         TARGET_MEDANY.
917         * sparc/sparc.c (dwarf2out_cfi_label): Extern no longer needed.
918         (output_double_int): Output DI mode values correctly when
919         HOST_BITS_PER_WIDE_INT is 64.
920         (output_fp_move_quad): If TARGET_V9 and not TARGET_HARD_QUAD, use
921         fmovd so it works if a quad float ends up in one of the upper 32
922         float regs.
923         * sparc/sparc.md (pic_{lo_sum,sethi}_di): New patterns
924         necessary for PIC support on sparc64.
925
926 Fri Oct 17 13:39:56 1997  Doug Evans  <dje@canuck.cygnus.com>
927
928         * sparc/sp64-elf.h (TARGET_DEFAULT): Delete MASK_STACK_BIAS.
929         * sparc/sparc.h (PROMOTE_MODE): Promote small ints if arch64.
930         (PROMOTE_FUNCTION_ARGS,PROMOTE_FUNCTION_RETURN): Define.
931         (SPARC_FIRST_FP_REG, SPARC_FP_REG_P): New macros.
932         (SPARC_{OUTGOING,INCOMING}_INT_ARG_FIRST): New macros.
933         (SPARC_FP_ARG_FIRST): New macro.
934         (CONDITIONAL_REGISTER_USAGE): All v9 fp regs are volatile now.
935         (REG_ALLOC_ORDER,REG_LEAF_ALLOC_ORDER): Reorganize fp regs.
936         (NPARM_REGS): There are 32 fp argument registers now.
937         (FUNCTION_ARG_REGNO_P): Likewise.
938         (FIRST_PARM_OFFSET): Update to new v9 abi.
939         (REG_PARM_STACK_SPACE): Define for arch64.
940         (enum sparc_arg_class): Delete.
941         (sparc_arg_count,sparc_n_named_args): Delete.
942         (struct sparc_args): Redefine and use for arch32 as well as arch64.
943         (GET_SPARC_ARG_CLASS,ROUND_REG,ROUND_ADVANCE): Delete.
944         (FUNCTION_ARG_ADVANCE): Rewrite.
945         (FUNCTION_ARG,FUNCTION_INCOMING_ARG): Rewrite.
946         (FUNCTION_ARG_{PARTIAL_NREGS,PASS_BY_REFERENCE}): Rewrite.
947         (FUNCTION_ARG_CALLEE_COPIES): Delete.
948         (FUNCTION_ARG_{PADDING,BOUNDARY}): Define.
949         (STRICT_ARGUMENT_NAMING): Define.
950         (doublemove_string): Declare.
951         * sparc/sparc.c (sparc_arg_count,sparc_n_named_args): Delete.
952         (single_move_string): Use GEN_INT, and HOST_WIDE_INT.
953         (doublemove_string): New function.
954         (output_move_quad): Clean up some of the arch64 support.
955         (compute_frame_size): Add REG_PARM_STACK_SPACE if arch64.
956         Don't add 8 bytes of reserved space if arch64.
957         (sparc_builtin_saveregs): Combine arch32/arch64 versions.
958         (init_cumulative_args): New function.
959         (function_arg_slotno): New static function.
960         (function_arg,function_arg_partial_nregs): New functions.
961         (function_arg_{pass_by_reference,advance}): New functions.
962         (function_arg_padding): New function.
963         * ginclude/va-sparc.h: Rewrite v9 support.
964
965 Fri Oct 17 12:29:48 1997  Christian Iseli  <Christian.Iseli@lslsun.epfl.ch>
966
967         * regclass.c (record_address_regs): Look at REG_OK_FOR_{BASE,INDEX}_P
968         for hard regs to determine base and index registers.
969
970         * reload.c (debug_reload_to_stream): New function.  Specify stream
971         into which to write debug info.
972         (debug_reload): Modify to call debug_reload_to_stream with stderr.
973
974 Thu Oct 16 15:07:51 1997  Richard Henderson  <rth@cygnus.com>
975
976         * combine.c (can_combine_p): Don't combine with an asm whose
977         output is a hard register.
978
979 Thu Oct 16 15:43:26 1997  Mike Stump  (mrs@wrs.com)
980
981         * c-decl.c (start_struct): Ensure that structs with forward
982         declarations are in fact packed when -fpack-struct is given.
983
984         * stor-layout.c (layout_record): Ignore STRUCTURE_SIZE_BOUNDARY if
985         we are packing a structure.  This allows a structure with only
986         bytes to be aligned on a byte boundary and have no padding on a
987         m68k.
988
989 Thu Oct 16 15:17:54 1997  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
990
991         * rs6000.h (ROUND_TYPE_ALIGN): Don't blow up if no fields in record.
992
993 Thu Oct 16 11:20:30 1997  Richard Henderson  <rth@cygnus.com>
994
995         * alpha.c (alpha_return_addr_rtx): New variable.
996         (alpha_save_machine_status): New; save it.
997         (alpha_restore_machine_status): New; restore it.
998         (alpha_init_expanders): New; clear it.
999         (alpha_return_addr): New; set it.
1000         (alpha_ra_ever_killed): New; if alpha_return_addr_rtx, regs_ever_live
1001         is overly conservative, so search the insns explicitly.
1002         (alpha_sa_mask [VMS]): Check alpha_ra_ever_killed.
1003         (alpha_sa_size [VMS && !VMS]): Likewise.
1004         * alpha.h (RETURN_ADDR_RTX): Call alpha_return_addr.
1005         (INIT_EXPANDERS): New definition.
1006         
1007         * alpha.c: Move REG_PV, REG_RA somewhere more visible in the file.
1008         (output_prolog [!VMS]): Use them.
1009
1010         * alpha.c (output_prolog [!VMS]): Move gp detection to ...
1011         (alpha_does_function_need_gp): ... a new function.  Refine the 
1012         CALL_INSN test to just TYPE_JSR.
1013         * alpha.md (most call insns): Fix some jsr/ibr type transpositions.
1014
1015 Thu Oct 16 09:36:47 1997  Jeffrey A Law  (law@cygnus.com)
1016
1017         * version.c: Bump for snapshot.
1018
1019 Wed Oct 15 21:38:18 1997  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1020
1021         * pa.c (move_operand): Respect -mdisable-indexing.
1022         * pa.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
1023
1024 Wed Oct 15 21:34:45 1997  David Edelsohn  <edelsohn@mhpcc.edu>
1025
1026         * rs6000.md (udivsi3, divsi3): Split into MQ and non-MQ cases for
1027         PPC601.
1028         (umulsidi3,umulsi3_highpart): Ditto.
1029         (smulsi3_highpart_no_mq): Add !TARGET_POWER.
1030
1031 Wed Oct 15 18:21:46 1997  Richard Henderson  <rth@cygnus.com>
1032
1033         * alpha.c (final_prescan_insn): Gut, remove and transform to ...
1034         (alpha_handle_trap_shadows): ... a new function.  Handle the entire
1035         function in one go.  Emit RTL for trapb, instead of printf directly.
1036         (alpha_reorg): New function.  Call alpha_handle_trap_shadows.
1037         (trap_pending): Kill global variable.
1038         (output_epilog): Don't call final_prescan_insn.
1039         (struct shadow_summary): Elide $31 and $f31; now it fits in a word.
1040         * alpha.h (FINAL_PRESCAN_INSN): Remove.
1041         (MACHINE_DEPENENT_REORG): Define.
1042         * alpha.md (jsr patterns with trapb): Stupid and useless.  Kill.
1043         (trapb): New insn.
1044
1045 Wed Oct 15 18:16:05 1997  Richard Henderson  <rth@cygnus.com>
1046
1047         Tune Haifa scheduler for Alpha:
1048         * alpha.h (ISSUE_RATE): Define.
1049         * alpha.c (alpha_adjust_cost): Handle EV5 mult delay; don't apply
1050         EV4 adjustments to EV5.
1051         * alpha.md: Remove all scaling from function unit delays.  Rework
1052         EV5 function units to match the CPU.
1053         (umuldi3_highpart): EV5 added the IMULH insn class.
1054
1055 Wed Oct 15 17:42:41 1997  Jeffrey A Law  (law@cygnus.com)
1056
1057         * pa.c (following_call): Fail if the CALL_INSN is an indirect
1058         call.
1059
1060 Tue Oct 14 12:01:00 1997  Mark Mitchell  <mmitchell@usa.net>
1061
1062         * cplus-dem.c (demangle_signature): Don't look for return types on
1063         constructors.  Handle member template constructors.
1064
1065 Tue Oct 14 11:30:29 1997  Jason Merrill  <jason@yorick.cygnus.com>
1066
1067         * tree.c (expr_tree_cons, build_expr_list, expralloc): New fns.
1068         * tree.h: Declare them.
1069
1070 Fri Oct 10 13:46:56 1997  Doug Evans  <dje@canuck.cygnus.com>
1071
1072         * configure.in: Handle --with-newlib.
1073         * Makefile.in (LIBGCC2_CFLAGS): Add @inhibit_libc@.
1074
1075         * sparc/t-sp64 (LIBGCC2_CFLAGS): Delete.
1076
1077 Wed Oct  8 14:37:44 1997  Jeffrey A Law  (law@cygnus.com)
1078
1079         * config/ptx4.h: Fix typo.
1080
1081 Wed Oct  8 08:57:20 1997  Jeffrey A Law  (law@cygnus.com)
1082
1083         * version.c: Bump for snapshot.
1084
1085 Tue Oct  7 16:27:34 1997  Manfred Hollstein  <manfred@s-direktnet.de>
1086
1087         * aclocal.m4: Substitute INSTALL.
1088         * configure: Re-built.
1089
1090 Tue Oct  7 15:37:35 1997  Jeffrey A Law  (law@cygnus.com)
1091
1092         * integrate.c (save_for_inline_copying): Avoid undefined pointer
1093         operations.
1094         (expand_inline_function): Likewise.
1095
1096         * dwarf2out.c (output_call_frame_info): Reinstate last change
1097         using flag_debug_asm check instead of flag_verbose_asm.
1098
1099 Tue Oct  7 12:57:26 1997  Jim Wilson  <wilson@cygnus.com>
1100
1101         * dwarf2out.c (output_call_frame_info): Remove last change.
1102
1103 1997-10-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1104
1105         * frame.c (__frame_state_for): Execute the FDE insns until the
1106         current pc value is strictly bigger than the target pc value.
1107
1108 Tue Oct  7 11:00:42 1997  Jason Merrill  <jason@yorick.cygnus.com>
1109
1110         * regclass.c (init_reg_modes): If we can't find a mode for the 
1111         register, use the previous one.
1112
1113 Tue Oct  7 10:55:34 1997  Richard Henderson  <rth@cygnus.com>
1114
1115         * haifa-sched.c (print_block_visualization): Call fprintf directly,
1116         don't sprintf through an alloca'ed buffer.
1117
1118 Tue Oct  7 10:52:29 1997  Thomas Koenig (ig25@rz.uni-karlsruhe.de)
1119
1120         * reload.c (decompose): Always initialize val.base.
1121
1122 Tue Oct  7 10:19:26 1997  Manfred Hollstein  (manfred@lts.sel.alcatel.de)
1123
1124         * m68k/mot3300.h (ASM_OUTPUT_ALIGN): Accept any alignment
1125         instead of aborting.
1126         * dwarf2out.c (output_call_frame_info): Call app_enable and
1127         app_disable to let GNU as accept the generated comments.
1128
1129 Tue Oct  7 11:41:21 1997  Michael Meissner  <meissner@cygnus.com>
1130
1131         * tree.h (get_file_function_name): Add declaration.
1132         * dwarf2out.c (output_call_frame_info): No need to cast
1133         get_file_function_name call anymore.
1134         * profile.c (toplevel): Remove get_file_function_name
1135         declaration.
1136         * c-lang.c (finish_file): Ditto.
1137
1138 Tue Oct  7 10:01:45 1997  Chip Salzenberg <chip@rio.atlantic.net>
1139
1140         * Makefile.in (program_transform_name): Let autoconf substitute
1141         the correct value.
1142
1143 Tue Oct  7 09:54:35 1997  Jeffrey A Law  (law@cygnus.com)
1144
1145         * haifa-sched.c (schedule_block): If the first real insn in a
1146         block has any special notes attached to it, remove them.
1147
1148 Tue Oct  7 09:48:51 1997  Richard Henderson  <rth@cygnus.com>
1149
1150         * alpha.h (FLOAT_STORE_FLAG_VALUE): It's 2.0 not 0.5.
1151
1152 Mon Oct  6 12:47:32 1997  Manfred Hollstein  (manfred@lts.sel.alcatel.de)
1153
1154         * m88k.c (m88k_begin_prologue): Remove superfluous backslash.
1155
1156 Mon Oct  6 12:04:24 1997  Jeffrey A Law  (law@cygnus.com)
1157
1158         * Makefile.in (check-g77): New test target.
1159         (CHECK-TARGETS): Add check-g77.
1160
1161 Fri Oct  3 11:56:36 1997  Jason Merrill  <jason@yorick.cygnus.com>
1162
1163         * toplev.c (rest_of_compilation): Defer all non-nested inlines.
1164
1165 Fri Oct  3 15:49:27 1997  Michael Meissner  <meissner@cygnus.com>
1166
1167         * flow.c (print_rtl_with_bb): Cast alloca return value for
1168         in_bb_p.
1169
1170 Thu Oct  2 21:15:03 1997  Richard Henderson  <rth@cygnus.com>
1171
1172         * i386.h (RETURN_ADDR_RTX): New definition that works for 
1173         __builtin_return_address(0) and -fomit-frame-pointer.
1174
1175 Wed Oct  1 13:43:53 1997  Jim Wilson  <wilson@cygnus.com>
1176
1177         Bring over from FSF.
1178         Tue Aug  5 16:10:45 1997  Jason Merrill  <jason@yorick.cygnus.com>
1179
1180         * mips.c (function_arg): Handle passing a struct 
1181         containing a double in a DFmode register without the PARALLEL.
1182
1183 Wed Oct  1 11:13:25 1997  Ian Lance Taylor  <ian@cygnus.com>
1184
1185         * pexecute.c: Use spawn if __CYGWIN32__.
1186
1187         * pexecute.c: Include "config.h" first, as per autoconf manual
1188         (from Paul Eggert  <eggert@twinsun.com>).
1189
1190 Wed Oct  1 01:44:36 1997  Philippe De Muyter  <phdm@info.ucl.ac.be>
1191
1192         * m68k/x-mot3300 (XCFLAGS): Disable as's long/short jump
1193         optimisation for f/expr.o and f/stb.o.
1194
1195 Tue Sep 30 23:48:57 1997  Jeffrey A Law  (law@cygnus.com)
1196
1197         * cse.c (this_insn_cc0_mode): Initialize.
1198
1199 Tue Sep 30 23:09:40 1997  Thomas Koenig <ig25@mvmap66.ciw.uni-karlsruhe.de>
1200
1201         * cccp.c (expand_to_temp_buffer): Initialize all members of obuf.
1202
1203         * haifa-sched.c (get_block_head_tail): Remove unneeded initialization.
1204
1205 Tue Sep 30 23:06:43 1997  Richard Henderson  <rth@cygnus.com>
1206
1207         * alpha.md (beq): For registers and ints 0-255, use cmpeq+bne, since
1208         that pair will dual-issue on the 21164 and plus+beq won't.
1209         (bne): Likewise for cmpeq+beq.
1210
1211 Tue Sep 30 16:07:58 1997  Jim Wilson  <wilson@cygnus.com>
1212
1213         * except.c (find_exception_handler_labels): Correct argument to free.
1214
1215 Tue Sep 30 11:00:00 1997  Brendan Kehoe  <brendan@lisa.cygnus.com>
1216
1217         * except.c (find_exception_handler_labels): Free LABELS when we're
1218         done.
1219
1220 Mon Sep 29 14:04:35 1997  Jeffrey A Law  (law@cygnus.com)
1221
1222         * version.c: Bump for snapshot.
1223
1224 Mon Sep 29 10:51:53 1997  Jason Merrill  <jason@yorick.cygnus.com>
1225
1226         * flow.c (find_basic_blocks): Mark calls as potentially jumping
1227         to the EH labels.
1228
1229 Mon Sep 29 09:58:06 1997  Jeffrey A Law  (law@cygnus.com)
1230
1231         * configure.in: Substitute for "install" too.
1232         * configure: Rebuilt.
1233
1234 Mon Sep 29 00:38:42 1997 Aaron Jackson <jackson@negril.msrce.howard.edu>
1235
1236         * Makefile.in (bootstrap-lean, compare-lean): New targets.
1237
1238 Mon Sep 29 00:18:16 1997  Richard Henderson  (rth@cygnus.com)
1239
1240         * alias.c (base_alias_check): Two symbols can conflict if they
1241         are accessed via AND.
1242         (memrefs_conflict_p): Likewise.
1243
1244         * alpha.h (SETUP_INCOMING_VARARGS): Emit a blockage insn
1245         after flushing argument registers to the stack.
1246
1247         * Makefile.in (mostlyclean): Remove .regmove files.
1248
1249 Sun Sep 28 18:59:58 1997  Jason Merrill  <jason@yorick.cygnus.com>
1250
1251         * libgcc2.c (__throw): Fix thinko.
1252
1253 Sun Sep 28 12:00:52 1997  Mark Mitchell  <mmitchell@usa.net>
1254
1255         * cplus-dem.c (demangle_template): Add new parameter.  Handle new
1256         template-function mangling.
1257         (consume_count_with_underscores): New function.
1258         (demangle_signature): Handle new name-mangling scheme.
1259
1260 Sun Sep 28 01:55:04 1997  Philippe De Muyter  <phdm@info.ucl.ac.be>
1261
1262         * flow.c (print_rtl_with_bb): Cast alloca return values for variables
1263         start and end.
1264
1265 Sun Sep 28 01:05:16 1997  Jeffrey A Law  (law@cygnus.com)
1266
1267         * frame.c: Remove last change.
1268         * dwarf2.h: Remove last change.
1269         * tree.h: Add declarations of DWARF2 unwind info support
1270         functions.
1271
1272 Sat Sep 27 11:02:38 1997  Jason Merrill  <jason@yorick.cygnus.com>
1273
1274         * c-decl.c (init_decl_processing): Add __builtin_dwarf_reg_size.
1275         * tree.h (built_in_function): Likewise.
1276         * expr.c (expand_builtin): Likewise.
1277         * except.h: Likewise.
1278         * dwarf2out.c (expand_builtin_dwarf_reg_size): New fn.
1279         * libgcc2.c (copy_reg): New fn.
1280         (__throw): Use it.
1281
1282 Fri Sep 26 08:54:59 1997  Paul Eggert  <eggert@twinsun.com>
1283
1284         * c-typeck.c (build_binary_op): Warn about comparing signed vs
1285         unsigned if -W is specified and -Wno-sign-compare is not.
1286         * c-decl.c (warn_sign_compare): Initialize to -1.
1287         (c_decode_option): -Wall no longer implies -Wsign-compare.
1288
1289 Fri Sep 26 09:00:13 1997  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1290
1291         * frame.c: Include gansidecl.h for PROTO.
1292         * dwarf2out.c: Move inclusion of dwarf2.h down so that PROTO is
1293         defined.  Don't declare dwarf2out_cfi_label here.
1294         * dwarf2.h: Add declarations of DWARF2 unwind info support
1295         functions.
1296         * m68k.c: Include dwarf2.h.
1297         (output_function_prologue): Add dwarf2 support.
1298         * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM): New macros.
1299         (INCOMING_FRAME_SP_OFFSET): Likewise.
1300
1301         * integrate.c (expand_inline_function): Make sure there is at
1302         least one insn that can be used as an insertion point.
1303
1304 Wed Sep 24 21:34:06 1997  Jason Merrill  <jason@yorick.cygnus.com>
1305
1306         * dwarf2out.c: s/flag_verbose_asm/flag_debug_asm/
1307
1308 Wed Sep 24 22:05:30 1997  Jeffrey A Law  (law@cygnus.com)
1309
1310         * version.c: Bump for snapshot.
1311
1312 Wed Sep 24 17:36:23 1997  Doug Evans  <dje@canuck.cygnus.com>
1313
1314         Bring over from FSF.
1315
1316         Wed Sep 24 19:17:08 1997  Doug Evans  <dje@cygnus.com>
1317
1318         * sparc/sparc.md (get_pc_via_call): Renamed from get_pc_sp32.
1319         (get_pc_via_rdpc): Renamed from get_pc_sp64.
1320         * sparc/sparc.c (finalize_pic): Update call to gen_get_pc_via_call.
1321
1322         Wed Sep 24 18:38:22 1997  David S. Miller  <davem@tanya.rutgers.edu>
1323
1324         * sparc/sparc.h (ASM_CPU_SPEC): Pass -Av9a for v8plus, ultrasparc.
1325         (TARGET_OPTIONS): Add -malign-loops=, -malign-jumps=,
1326         -malign-functions=.
1327         (sparc_align_{loops,jumps,funcs}_string): Declare.
1328         (sparc_align_{loops,jumps,funcs}): Declare.
1329         (DEFAULT_SPARC_ALIGN_FUNCS): New macro.
1330         (FUNCTION_BOUNDARY): Use sparc_align_funcs.
1331         (STACK_BIAS): Define.
1332         (SPARC_SIMM*_P): Cast to unsigned HOST_WIDE_INT first, then perform
1333         test.
1334         (SPARC_SETHI_P): New macro.
1335         (CONST_OK_FOR_LETTER_P): Use it.
1336         (ASM_OUTPUT_ALIGN_CODE): Define.
1337         (ASM_OUTPUT_LOOP_ALIGN): Define.
1338         * sparc/sparc.c (sparc_align_{loops,jumps,funcs}_string): New globals.
1339         (sparc_align_{loops,jumps,funcs}): New globals.
1340         (sparc_override_options): Handle -malign-loops=, -malign-jumps=,
1341         -malign-functions=.
1342         (move_operand): Use SPARC_SETHI_P.
1343         (arith_double_operand): Cast to unsigned HOST_WIDE_INT first, then
1344         perform test.
1345         (arith11_double_operand): Likewise.
1346         (arith10_double_operand): Likewise.
1347         (finalize_pic): Finish sparc64 support.
1348         (emit_move_sequence): Use SPARC_SETHI_P.  Simplify low part of
1349         64 bit constants if able.
1350         (output_fp_move_quad): Don't use fmovq unless TARGET_HARD_QUAD.
1351         (sparc_builtin_saveregs, sparc64 case): Don't save fp regs if
1352         ! TARGET_FPU.
1353         * sparc/sparc.md (*): Use GEN_INT instead of gen_rtx.
1354         (get_pc_sp32): Use for sparc64 as well.
1355         (lo_sum_di_sp{32,64}): Fix handling on 64 bit hosts.
1356         (sethi_di_sp64_const): Likewise.
1357         (movtf_cc_sp64): Check TARGET_HARD_QUAD.
1358         (cmp_zero_extract_sp64): Use unsigned HOST_WIDE_INT in cast.
1359         (ashlsi3, ashldi3, ashrsi3, ashrdi3, lshrsi3, lshrdi3): Likewise.
1360
1361         Tue Sep 23 19:02:46 1997  Doug Evans  <dje@cygnus.com>
1362
1363         * sparc/linux-aout.h (COMMENT_BEGIN): Delete.
1364         * sparc/linux.h (COMMENT_BEGIN): Likewise.
1365         * sparc/linux64.h (COMMENT_BEGIN): Likewise.
1366
1367         Tue Sep 23 14:48:18 1997  David S. Miller  <davem@tanya.rutgers.edu>
1368
1369         Add sparc64 linux support.
1370         * configure.in (sparc64-*-linux*): Recognize.  Add sparc/xm-sparc.h
1371         to xm_file list on 32-bit sparc-linux.
1372         * sparc/xm-sp64.h: New file.
1373         * sparc/linux64.h: New file.
1374         * sparc/xm-linux.h: Include some standard headers if not inhibit_libc.
1375         Don't include xm-sparc.h.
1376         * config/xm-linux.h (HAVE_PUTENV, HAVE_ATEXIT): Define.
1377         * glimits.h (LONG_MAX): Handle sparc64.
1378
1379         Sat Sep 20 03:07:54 1997  Doug Evans  <dje@cygnus.com>
1380
1381         * sparc/sysv4.h (ASM_COMMENT_START): Delete.
1382         * sparc.h (ASM_COMMENT_START): Define.
1383         * sparc.c (output_function_prologue): Use it.
1384         (sparc_flat_output_function_{epi,pro}logue): Likewise.
1385
1386         Wed Sep 17 15:04:19 1997  Doug Evans  <dje@cygnus.com>
1387
1388         * sparc/sysv4.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Delete,
1389         use sparc.h's copies.
1390         * sparc/sparc.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Print
1391         ascii form as well.
1392
1393         Mon Sep  8 08:45:19 1997  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1394
1395         * sparc.c (dwarf2out_cfi_label): Add declaration.
1396         (save_regs, output_function_prologue): Remove cast for it.
1397         (sparc_flat_{save_restore,output_function_prologue): Likewise.
1398         ({save,restore}_regs): No longer inline.
1399
1400 Tue Sep 23 12:34:51 1997  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1401
1402         * fold-const.c (make_range): Correctly handle cases of converting
1403         from unsigned to signed type.
1404
1405 Tue Sep 23 12:34:51 1997  Bernd Schmidt  <crux@pool.informatik.rwth-aachen.de>
1406
1407         * fold-const.c (merge_ranges): Make sure that if one range is subset
1408         of another, it will always be the second range.  Correct (+,-) case to
1409         account for this.
1410
1411 Tue Sep 23 08:32:51 1997  Jason Merrill  <jason@yorick.cygnus.com>
1412
1413         * final.c (final_end_function): Also do dwarf2 thing if
1414         DWARF2_DEBUGGING_INFO.
1415         (final_start_function): Likewise.
1416
1417 Tue Sep 23 01:15:50 1997  David S. Miller  <davem@tanya.rutgers.edu>
1418
1419         * expmed.c (expand_divmod): If compute_mode is not the same as
1420         mode, handle the case where convert_modes() causes op1 to no
1421         longer be a CONST_INT.
1422
1423         * reorg.c (dbr_schedule): At end of this pass, add REG_BR_PRED
1424         note holding get_jump_flags() calculation to all JUMP_INSNs.
1425         * rtl.h (enum reg_note): New note types REG_BR_PRED and REG_SAVE_AREA.
1426         * rtl.c (reg_note_name): Add new note types.
1427
1428 Tue Sep 23 00:59:54 1997  Jeffrey A Law  (law@cygnus.com)
1429
1430         * rtlanal.c (computed_jump_p): Fix typo in last change.
1431
1432 Tue Sep 23 00:42:44 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
1433
1434         * loop.c (indirect_jump_in_function_p): Return 0
1435         by default.
1436
1437 Tue Sep 23 00:33:55 1997  Jeffrey A Law  (law@cygnus.com)
1438
1439         * rs6000/xm-rs6000.h: Fix thinko in last change.
1440         * rs6000/xm-sysv4.h: Likewise.
1441
1442 Mon Sep 22 19:33:53 1997  Jim Wilson  <wilson@cygnus.com>
1443
1444         * mips.c (save_restore_insns): Only set RTX_FRAME_RELATED_P if store_p.
1445
1446 Mon Sep 22 14:41:00 1997  Jeffrey A Law  (law@cygnus.com)
1447
1448         * reg-stack.c (find_blocks): Fix thinko in last change.
1449
1450 1997-09-21  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1451
1452         * m68k.c (output_function_prologue): Add dwarf2 support.
1453
1454         * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM,
1455         INCOMING_FRAME_SP_OFFSET): New definitions.
1456  
1457 Mon Sep 22 11:36:42 1997  David S. Miller  <davem@tanya.rutgers.edu>
1458
1459         * combine.c (try_combine): Use NULL_RTX instead of '0' where
1460         appropriate in calls to gen_rtx().
1461         * cse.c (cse_main): Likewise.
1462         * emit-rtl.c (gen_label_rtx): Likewise.
1463         * expr.c (init_expr_once): Likewise.
1464         * haifa-sched.c (flush_pending_lists, sched_analyze_insn,
1465         sched_analyze, init_rgn_data_dependences,
1466         compute_block_backward_dependences): Likewise.
1467         * sched.c (schedule_insns): Likewise.
1468         * varasm.c (immed_double_const): Likewise.
1469
1470         * sparc.h (INCOMING_FRAME_SP_OFFSET): Define to
1471         SPARC_STACK_BIAS for sake of dwarf2 on sparc64.
1472
1473 Mon Sep 22 11:21:33 1997  J. Kean Johnston  <jkj@sco.com>
1474
1475         * i386/sco5.h: Make ELF default file format and add -mcoff/-melf..
1476         (MULTILIB_DEFAULTS): Define.
1477         (ASM_SPEC, CPP_SPEC): Handle -mcoff.
1478         (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Likewise.
1479         (LIBGCC_SPEC): Likewise.
1480         (MASK_COFF, TARGET_COFF, TARGET_ELF): Define.
1481         (SUBTARGET_SWITCHES): Add -mcoff and -melf.
1482         * i386/t-sco5 (CRTSTUFF_T_CFLAGS): Add -fPIC.
1483         (CRTSTUFF_T_CFLAGS_S): Tweak for COFF.
1484         (EXTRA_PARTS, TAROUTOPTS): Delete.
1485         (libgcc1-elf, libgcc2-elf, libgcc-elf targets): Delete.
1486         (MULTILIB_OPTIONS): Define.
1487         (MULTILIB_DIRNAMES, MULTILIB_EXCEPTIONS): Likewise.
1488         (MULTILIB_MATCHE, MULTILIB_EXTRA_OPTS): Likewise.
1489
1490 Mon Sep 22 02:10:43 1997  Jeffrey A Law  (law@cygnus.com)
1491
1492         * version.c: Bump for snapshot.
1493
1494 Sun Sep 21 17:45:45 1997  Jeffrey A Law  (law@cygnus.com)
1495
1496         * loop.c (loop_number): Delete function.  Change all references
1497         to use uid_loop_num array.
1498         * loop.h (loop_number): Delete declaration.
1499         * unroll.c (unroll_loop): Change "loop_number" references to
1500         use uid_loop_num instead.
1501
1502         * loop.c (loop_unroll_factor): Move outside #ifdef HAIFA
1503         conditional.
1504         (loop_unroll_iter): Remove unused variable and all references.
1505         (loop_optimize): Always allocate and clear space for loop_unroll_factor.
1506         (insert_bct): Fix minor formatting problems.
1507         * loop.h (loop_unroll_factor): Move decl outside #ifdef HAIFA.
1508         (loop_unroll_iter): Removed unused decl.
1509         * unroll.c (unroll_loop): Remove code to set loop_unroll_iter.
1510         Always record the unrolling factor.
1511
1512         * cse.c (simplify_relational_operation): Set h0u just like h0s.
1513         Similarly for h1u and h1s.
1514
1515         * flow.c (jmp_uses_reg_or_mem): Deleted unused function.
1516         (find_basic_blocks): Use computed_jump_p to determine if a
1517         particular JUMP_INSN is a computed jump.
1518         * reg-stack.c (find_blocks): Use computed_jump_p to determine
1519         if a particular JUMP_INSN is a computed jump.
1520         * rtlanal.c (jmp_uses_reg_or_mem): New function.
1521         (computed_jump_p): Likewise.
1522         * rtl.h (computed_jump_p): Declare.
1523         * genattrtab.c (pc_rtx): Define and initialize.
1524         * loop.c (loop_optimize): Always determine if the current
1525         function has a computed jump.
1526         (indirect_jump_in_function_p): Use computed_jump_p to determine
1527         if a particular JUMP_INSN is a computed jump.
1528
1529         * loop.c (fix_bct_param): Delete unused function.
1530         (check_bct_param): Likewise.
1531
1532 Sat Sep 20 16:22:06 1997  Jason Merrill  <jason@yorick.cygnus.com>
1533
1534         * frame.c (__deregister_frame): Check properly for initialized object.
1535
1536 Fri Sep 19 20:51:03 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
1537
1538         * alpha/linux.h (HANDLE_SYSV_PRAGMA): Defined.
1539
1540 Fri Sep 19 18:53:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1541
1542         * jump.c (thread_jumps): check can_reverse_comparison_p before
1543         threading a reversed-condition jump.
1544
1545         * sched.c (update_flow_info): Don't pass SCRATCH to dead_or_set_p.
1546         * haifa-sched.c (update_flow_info): Likewise.
1547
1548 Thu Sep 18 21:13:40 1997  Jeffrey A Law  (law@cygnus.com)
1549
1550         * Makefile.in (BOOT_CFLAGS): Use -O2.
1551
1552         * configure.in (strtoul, bsearch): Have autoconf check for these
1553         functions.
1554         * configure, config.in: Rebuilt.
1555
1556         * m68k/xm-mot3300.h (alloca): Properly declare if __STDC__.
1557         * mips/mips.h (alloca): Likewise.
1558         * rs6000/xm-rs6000.h (alloca): Likewise.
1559         * rs6000/xm-sysv4.h: Likewise.
1560
1561 Thu Sep 18 14:22:22 1997  Jason Merrill  <jason@yorick.cygnus.com>
1562
1563         * final.c (final_scan_insn): Hand BARRIERs off to the dwarf2 code.
1564         * dwarf2out.c (dwarf2out_frame_debug): Pass the whole insn along.
1565         (dwarf2out_stack_adjust): A BARRIER resets the args space to 0.
1566
1567         * except.c (end_eh_unwinder): Subtract 1 from return address.
1568         * libgcc2.c (__throw): Likewise.
1569         (find_exception_handler): Don't change PC here.  Compare end with >.
1570
1571 Thu Sep 18 10:43:07 1997  Nick Clifton  <nickc@cygnus.com>
1572  
1573         * v850.c (compute_register_save_size): Correct register
1574         number.
1575         * v850.md (save_interrupt, return_interrupt): Correct
1576         register number.
1577         * v850/lib1funcs.asm (save_interrupt): Correct register number.
1578         (return_interrupt): Use stack pointer, not element pointer.
1579
1580 1997-09-18  Brendan Kehoe  <brendan@lisa.cygnus.com>
1581
1582         * configure.in, configure: Make sure to create the stage* and include
1583         symbolic links in each subdirectory.
1584
1585 Thu Sep 18 01:47:06 1997  Jeffrey A Law  (law@cygnus.com)
1586
1587         * pa.md (reload_peepholes): Don't allow addresses with side
1588         effects for the memory operand.
1589
1590 Wed Sep 17 18:19:53 1997  Jason Merrill  <jason@yorick.cygnus.com>
1591
1592         * libgcc2.c (find_exception_handler): Subtract one from our PC when
1593         looking for a handler, to avoid hitting the beginning of the next
1594         region.
1595
1596         * except.c (expand_builtin_set_return_addr_reg): Use force_operand.
1597
1598 Wed Sep 17 18:33:59 1997  Jeffrey A Law  (law@cygnus.com)
1599
1600         * mips/abi64.h (LONG_MAX_SPEC): Define.
1601         * mips.h (LONG_MAX_SPEC): Define.
1602         (CPP_SPEC): Include long_max_spec.
1603         (EXTRA_SPECS): Include long_max_spec.
1604
1605 Wed Sep 17 14:11:38 1997  Jeffrey A Law  (law@cygnus.com)
1606
1607         * v850.c (construct_save_jarl): Fix thinko in last change.
1608
1609 Wed Sep 17 09:53:07 1997  Jeffrey A Law  (law@cygnus.com)
1610
1611         * version.c: Bump for snapshot.
1612
1613 Tue Sep 16 14:22:36 1997  Jason Merrill  <jason@yorick.cygnus.com>
1614
1615         * libgcc2.c (find_exception_handler): Not found is -1.
1616
1617         * integrate.c (expand_inline_function): Move expand_start_bindings
1618         after expanding the arguments.
1619
1620 Tue Sep 16 11:13:46 1997  Jim Wilson  <wilson@cygnus.com>
1621
1622         * expr.c (expand_expr): Remove previous incorrect change.
1623         If target and slot has no DECL_RTL, then call mark_addressable
1624         again for the slot after we give it RTL.
1625
1626 Tue Sep 16 09:18:52 1997  Jason Merrill  (jason@cygnus.com)
1627
1628         * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
1629         again for the slot after we give it RTL.
1630
1631 Tue Sep 16 00:13:20 1997  Nick Clifton  <nickc@cygnus.com>
1632
1633         * v850.c (register_is_ok_for_epilogue,
1634         pattern_is_ok_for_epilogue, construct_restore_jr,
1635         pattern_is_ok_for_prologue, construct_save_jarl): New functions.
1636
1637         * v850.h (pattern_is_ok_for_prologue,
1638         pattern_is_ok_for_epilogue, register_is_ok_for_epilogue): New
1639         predicates.
1640
1641         * v850.md: Replace prologue and epilogue patterns with a
1642         match_parallel pattern.
1643
1644 Mon Sep 15 22:53:01 1997  Jeffrey A Law  (law@cygnus.com)
1645
1646         * aclocal.m4: Add replacement for AC_PROG_INSTALL.
1647         * configure.in: Use EGCS_PROG_INSTALL.
1648
1649 Mon Sep 15 22:40:55 1997  Jim Wilson  (wilson@cygnus.com)
1650
1651         * dwarf2out.c (gen_subprogram_die): Handle redefinition of an
1652         extern inline function.
1653
1654 Mon Sep 15 22:40:55 1997  Richard Henderson  (rth@cygnus.com)
1655
1656         * dwarf2out.c (reg_loc_descriptor): Fix prototype.
1657         (concat_loc_descriptor): New function.
1658         (loc_descriptor): Call it.
1659         (add_AT_location_description): Also elide the descriptor if both
1660         halves of a CONCAT are pseudos.
1661         (add_location_or_const_value_attribute): Recognize CONCAT too.
1662
1663 Mon Sep 15 15:24:00 1997  Richard Henderson  <rth@cygnus.com>
1664
1665         * alpha.md (movdi): Handle CONST_DOUBLE for TARGET_BUILD_CONSTANTS.
1666
1667         * alpha/alpha.c (output_prolog): New variable sa_reg.  Use it for
1668         out-or-range reg_offset.
1669         (output_epilog): Likewise.
1670
1671 Mon Sep 15 15:39:26 1997  Jeffrey A Law  (law@cygnus.com)
1672
1673         * cse.c (simplify_relational_operation): If MODE specifies a
1674         mode wider than HOST_WIDE_INT, then the high word of a CONST_INT
1675         is derived from the sign bit of the low word.
1676
1677 Mon Sep 15 11:43:38 1997  Jason Merrill  <jason@yorick.cygnus.com>
1678
1679         Support dwarf2 unwinding on PUSH_ROUNDING targets like the x86.
1680
1681         * dwarf2.h: Add DW_CFA_GNU_args_size.
1682         * frame.c (execute_cfa_insn): Likewise.
1683         * dwarf2out.c (dwarf_cfi_name, output_cfi): Likewise.
1684         (dwarf2out_args_size, dwarf2out_stack_adjust): New fns.
1685         (dwarf2out_frame_debug): If this isn't a prologue or epilogue
1686         insn, hand it off to dwarf2out_stack_adjust.
1687         (dwarf2out_begin_prologue): Initialize args_size.
1688         * frame.h (struct frame_state): Add args_size.
1689         * libgcc2.c (__throw): Use args_size.
1690         * final.c (final_scan_insn): If we push args, hand off all insns
1691         to dwarf2out_frame_debug.
1692         * defaults.h (DWARF2_UNWIND_INFO): OK for !ACCUMULATE_OUTGOING_ARGS.
1693
1694         * dwarf2out.c dwarf2out_frame_debug): Fix typo.
1695         Handle epilogue restore of SP from FP.
1696         * emit-rtl.c (gen_sequence): Still generate a sequence if the 
1697         lone insn has RTX_FRAME_RELATED_P set.
1698
1699         * frame.c (extract_cie_info): Handle "e" augmentation.
1700         * dwarf2out.c (ASM_OUTPUT_DWARF_*): Provide definitions in the
1701         absence of UNALIGNED_*_ASM_OP.
1702         (UNALIGNED_*_ASM_OP): Only provide defaults if OBJECT_FORMAT_ELF.
1703         (output_call_frame_info): Use "e" instead of "z" for augmentation.
1704         Don't emit augmentation fields length.
1705         (dwarf2out_do_frame): Move outside of #ifdefs.
1706         * defaults.h (DWARF2_UNWIND_INFO): Don't require unaligned data
1707         opcodes.
1708
1709         * sparc.h (UNALIGNED_INT_ASM_OP et al): Don't define here after all.
1710         * sparc/sysv4.h (UNALIGNED_INT_ASM_OP): Define here.
1711         * sparc/sunos4.h (DWARF2_UNWIND_INFO): Define to 0.
1712         * sparc/sun4gas.h: New file.
1713         * configure.in: Use sun4gas.h if SunOS 4 --with-gnu-as.
1714
1715         * collect2.c (write_c_file_stat, write_c_file_glob): Declare 
1716         __register_frame_table and __deregister_frame.
1717
1718 1997-09-15  Brendan Kehoe  <brendan@cygnus.com>
1719
1720         * except.c (find_exception_handler_labels): Use xmalloc instead of
1721         alloca, since MAX_LABELNO - MIN_LABELNO can be more than 1 million
1722         in some cases.
1723
1724 Sun Sep 14 21:01:23 1997  Jeffrey A Law  (law@cygnus.com)
1725
1726         * Makefile.in: Various changes to build info files
1727         in the object tree rather than the source tree.
1728
1729 Sun Sep 14 12:24:30 1997  Jeffrey A Law  (law@cygnus.com)
1730
1731         * fixinc.math: New file to fix math.h on some systems.
1732         * configure.in (freebsd, netbsd): Use fixinc.math on these
1733         systems.
1734         * configure: Rebuilt.
1735
1736 Sun Sep 14 11:11:05 1997  Jeffrey A Law  (law@cygnus.com)
1737
1738         * regmove.c (regmove_optimize): If we end up moving the
1739         original insn due to lifetime overlaps, make sure to move
1740         REG_NOTES too.
1741
1742 Sat Sep 13 15:51:11 1997  Manfred Hollstein  <manfred@s-direktnet.de>
1743
1744         * Makefile.in (INSTALL_{PROGRAM,DATA}): Use value found by configure.
1745
1746 Sat Sep 13 12:57:26 1997  Jeffrey A Law  (law@cygnus.com)
1747
1748         * haifa-sched.c (add_branch_dependences): Make each insn in
1749         a SCHED_GROUP_P block explicitly depend on the previous insn.
1750
1751 Fri Sep 12 13:49:58 1997  Jason Merrill  <jason@yorick.cygnus.com>
1752
1753         * except.h: Prototype dwarf2 hooks.
1754         * expr.c: Adjust.
1755
1756 Thu Sep 11 17:43:55 1997  Jim Wilson  <wilson@cygnus.com>
1757
1758         * configure.in (native_prefix): Delete.
1759         (mips-dec-netbsd): Don't set prefix.
1760         (*linux*): Don't set prefix.
1761
1762 Thu Sep 11 15:48:32 1997  Fred Fish  <fnf@ninemoons.com>
1763
1764         * protoize.c: Include <varargs.h> only if HAVE_VARARGS_H is
1765         defined.  If not defined, include <sys/varargs.h> if
1766         HAVE_SYS_VARARGS_H is defined.
1767         * configure.in: Test for varargs.h and sys/varargs.h.
1768         * configure: Regenerate with autoconf.
1769         * config.in: Regenerate with autoheader.
1770
1771         * cpplib.c (quote_string): Cast first arg of sprintf call
1772         from "unsigned char *" to "char *".
1773         (output_line_command): Ditto.
1774         (macroexpand): Ditto.
1775         (do_line): Cast atoi arg from "unsigned char *" to "char *".
1776
1777 Wed Sep 10 21:37:30 1997  Jeffrey A Law  (law@cygnus.com)
1778
1779         * version.c: Bump for snapshot.
1780
1781         * Makefile.in (compare): Exit with nonzero status if there
1782         are comparison failures.  Note which files failed the
1783         comparison test in .bad_compare.
1784
1785 Wed Sep 10 17:05:46 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
1786
1787         * config/alpha/elf.h (CPP_PREDEFINES): Remove -D__PIC__ -D__pic__.
1788
1789 Wed Sep 10 16:37:28 1997  Fred Fish  <fnf@ninemoons.com>
1790
1791         * Makefile.in (LN, LN_S): New macros, use where appropriate.
1792         * aclocal.m4 (GCC_PROG_LN_S, GCC_PROG_LN): New tests.
1793         * configure.in: Use GCC_PROG_LN_S and GCC_PROG_LN.
1794         * configure: Regenerated.
1795
1796 Thu Sep 11 11:09:43 1997  Jeffrey A Law  (law@cygnus.com)
1797
1798         * loop.c (strength_reduce): Fix typo.
1799
1800 Wed Sep 10 16:01:15 1997  Jim Wilson  <wilson@cygnus.com>
1801
1802         * m88k/m88k.c (struct option): Rename to struct options.
1803         * m88k/dolph.h (INITIALIZE_TRAMPOLINE): Delete here.
1804         * m88k/sysv3.h (INITIALIZE_TRAMPOLINE): Delete ifdef and comments.
1805         * libgcc2.c (__enable_execute_stack): Check for __sysV88__ not
1806         __DOLPHIN__ or sysV88.
1807
1808 Wed Sep 10 14:58:40 1997  Jim Wilson  <wilson@cygnus.com>
1809
1810         * emit-rtl.c (gen_lowpart_common): For a SUBREG, add in word when
1811         create new subreg.
1812
1813 Wed Sep 10 15:19:22 1997  Jeffrey A Law  (law@cygnus.com)
1814
1815         * config.sub: Accept 'amigados' for backward compatability.
1816
1817 Wed Sep 10 14:05:08 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
1818
1819         * Makefile.in (testsuite/site.exp): New target.
1820         (check-gcc, check-g++): Depend on testsuite/site.exp.
1821         Don't stop for failure.
1822
1823 Wed Sep 10 12:59:57 1997  Jason Merrill  <jason@yorick.cygnus.com>
1824
1825         * expr.c (expand_builtin): Only support __builtin_dwarf_fp_regnum()
1826         if DWARF2_UNWIND_INFO.
1827
1828 Wed Sep 10 11:49:20 1997  Jason Merrill  <jason@yorick.cygnus.com>
1829
1830         Add support for exception handling using DWARF 2 frame unwind info.
1831         Currently works on SPARC and MIPS, and almost on x86.
1832         
1833         * libgcc2.c (get_reg, put_reg, get_return_addr, put_return_addr,
1834         next_stack_level, in_reg_window): Helper fns.
1835         (__throw): Implement for DWARF2_UNWIND_INFO.
1836
1837         * expr.c (expand_builtin): Handle builtins used by __throw.
1838         * tree.h (enum built_in_function): Add builtins used by __throw.
1839         * c-decl.c (init_decl_processing): Declare builtins used by __throw.
1840         * dwarf2out.c (expand_builtin_dwarf_fp_regnum): Used by __throw.
1841         * except.c (expand_builtin_unwind_init): Hook for dwarf2 __throw.
1842         (expand_builtin_extract_return_addr): Likewise.
1843         (expand_builtin_frob_return_addr): Likewise.
1844         (expand_builtin_set_return_addr_reg): Likewise.
1845         (expand_builtin_eh_stub): Likewise.
1846         (expand_builtin_set_eh_regs): Likewise.
1847         (eh_regs): Choose two call-clobbered registers for passing back values.
1848
1849         * frame.c, frame.h: New files for parsing dwarf 2 frame info.
1850         * Makefile.in (LIB2ADD): New variable.  Add $(srcdir)/frame.c.
1851         (libgcc2.a): Use it instead of $(LIB2FUNCS_EXTRA) $(LANG_LIB2FUNCS)
1852         (stmp-multilib): Likewise.
1853         ($(T)crtbegin.o, $(T)crtend.o): Add -fno-exceptions.
1854
1855         * except.c: #include "defaults.h".
1856         (exceptions_via_longjmp): Default depends on DWARF2_UNWIND_INFO.
1857         (emit_throw): Don't defeat assemble_external if DWARF2_UNWIND_INFO.
1858         (register_exception_table_p): New fn.
1859         (start_eh_unwinder): Don't do anything if DWARF2_UNWIND_INFO.
1860         (end_eh_unwinder): Likewise.
1861
1862         * crtstuff.c: Wrap .eh_frame section, use EH_FRAME_SECTION_ASM_OP, 
1863         call __register_frame and __deregister_frame as needed.
1864         * varasm.c (eh_frame_section): New fn if EH_FRAME_SECTION_ASM_OP.
1865         * dwarf2out.c (EH_FRAME_SECTION): Now a function-like macro.  Check
1866         EH_FRAME_SECTION_ASM_OP.
1867         * sparc/sysv4.h (EH_FRAME_SECTION_ASM_OP): Define.
1868         * mips/iris6.h: (EH_FRAME_SECTION_ASM_OP): Define.
1869         (LINK_SPEC): Add __EH_FRAME_BEGIN__ to hidden symbols.
1870
1871         * dwarf2out.c (output_call_frame_info): If no support for
1872         EXCEPTION_SECTION, mark the start of the frame info with a
1873         collectable tag.
1874         * collect2.c (frame_tables): New list.
1875         (is_ctor_dtor): Recognise frame entries.
1876         (scan_prog_file): Likewise.
1877         (main): Pass -fno-exceptions to sub-compile.  Also do collection
1878         if there are any frame entries.
1879         (write_c_file_stat): Call __register_frame_table and
1880         __deregister_frame as needed.
1881         (write_c_file_glob): Likewise.
1882
1883         * defaults.h (DWARF2_UNWIND_INFO): Default to 1 if supported.  
1884         Also require unaligned reloc support.
1885         * sparc.h (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
1886         UNALIGNED_DOUBLE_INT_ASM_OP): Define here.
1887         * sparc/sysv4.h: Not here.
1888
1889         * toplev.c (compile_file): Call dwarf2out_frame_{init,finish}.
1890         * dwarf2out.c (dwarf2out_init): Don't call dwarf2out_frame_init.
1891         (dwarf2out_finish): Don't call dwarf2out_frame_finish.
1892
1893         * libgcc2.c (L_eh): Reorganize, moving code shared by different
1894         EH implementations to the top.
1895         (find_exception_handler): Split out.  Start from 0.  Compare against
1896         end with >=.
1897         (__find_first_exception_table_match): Use it.
1898         * except.c (output_exception_table): Don't do anything if there's
1899         no table.  Don't output a first entry of zeroes.
1900         (eh_outer_context): Adjust properly.
1901         (add_eh_table_entry): Use xrealloc.
1902         * toplev.c (compile_file): Just call output_exception_table.
1903
1904 Wed Sep 10  11:30:36 1997  Jason Merrill  <jason@cygnus.com>
1905
1906         * i386.c (ix86_prologue): Add dwarf2 support for !do_rtl case.
1907
1908 Wed Sep 10 08:17:10 1997  Torbjorn Granlund  <tege@pdc.kth..se>
1909
1910         * except.c (eh_outer_context): Do masking using expand_and.
1911
1912 Wed Sep 10 01:38:30 1997  Doug Evans  <dje@cygnus.com>
1913
1914         Add port done awhile ago for the ARC cpu.
1915         * arc/arc.h: New file.
1916         * arc/arc.c: New file.
1917         * arc/arc.md: New file.
1918         * arc/initfini.c: New file.
1919         * arc/lib1funcs.asm: New file.
1920         * arc/t-arc: New file.
1921         * arc/xm-arc.h: New file.
1922         * ginclude/va-arc.h: New file.
1923         * ginclude/stdarg.h: Include va-arc.h ifdef __arc__.
1924         * ginclude/varargs.h: Likewise.
1925         * Makefile.in (USER_H): Add va-arc.h.
1926         * configure.in (arc-*-elf*): Recognize.
1927         * longlong.h: Add ARC support.
1928
1929 Wed Sep 10 01:32:54 1997  Jeffrey A Law  (law@cygnus.com)
1930
1931         * expr.c (clear_storage): Use CONST0_RTX instead of const0_rtx.
1932         when clearing non-BLKmode data.
1933
1934 Wed Sep 10 00:29:29 1997  Manfred Hollstein  <manfred@s-direktnet.de>
1935
1936         * m88k/sysv3.h (INITIALIZE_TRAMPOLINE) Define.
1937         * libgcc2.c (__enable_execute_stack): Provide for sysV88 too.
1938
1939         * xm-m88k.h (USG): Only define if it hasn't already been defined.
1940
1941         * Makefile.in (risky-stage1): Delete gratutious whitespace.
1942
1943         * Makefile.in (clean): Delete libgcc1-test.
1944
1945         * Makefile.in (INSTALL): cd to $(srcdir) before running texinfo.
1946
1947 Tue Sep  9 17:07:36 1997  Stan Cox  <coxs@dg-rtp.dg.com>
1948
1949         * m88k.c (m88k_expand_prologue): Set MEM_IN_STRUCT_P of va_list
1950         template.
1951
1952 Tue Sep  9 09:50:02 1997  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1953
1954         * dwarf2out.c (output_call_frame_info): Call named_section.
1955
1956 Tue Sep  9 09:12:17 1997  Jeffrey A Law  (law@cygnus.com)
1957
1958         * haifa-sched.c (print_value): Fix last change.
1959
1960 Tue Sep  9 01:30:37 1997  Jason Merrill  <jason@yorick.cygnus.com>
1961
1962         * mips.h (DWARF_FRAME_REGNUM): Use the same numbering regardless of
1963         write_symbols.
1964
1965 Mon Sep  8 16:32:43 1997  Jason Merrill  <jason@yorick.cygnus.com>
1966
1967         * mips.c (function_prologue): Set up the CFA when ABI_32.
1968
1969         * sparc.c (save_regs): Check dwarf2out_do_frame instead of DWARF2_DEBUG
1970         for dwarf2 unwind info.
1971         (output_function_prologue, sparc_flat_output_function_prologue): Same.
1972
1973         * final.c (final_end_function): Check dwarf2out_do_frame instead
1974         of DWARF2_DEBUG for dwarf2 unwind info.
1975         (final_scan_insn): Likewise.
1976         (final_start_function): Likewise.  Initialize dwarf2 frame debug here.
1977         (final): Not here.
1978
1979         * expr.c (expand_builtin_return_addr): Only SETUP_FRAME_ADDRESSES if
1980         count > 0.
1981
1982         * varasm.c (exception_section): Check EXCEPTION_SECTION first.
1983
1984 Mon Sep  8 15:15:11 1997  Nick Clifton  <nickc@cygnus.com>
1985
1986         * v850.h (ASM_SPEC): Pass on target processor.
1987         (CPP_PREDEFINES): Only define if not already specified.
1988         (TARGET_VERSION): Only define if not already specified.
1989         (MASK_CPU, MASK_V850, MASK_DEFAULT): Bits to specify target
1990         processor.
1991         (EXTRA_SWITCHES): Extra entries in the switches array.
1992         (TARGET_DEFAULT): Set default target processor.
1993
1994 Mon Sep  8 18:26:35 1997  Jim Wilson  <wilson@cygnus.com>
1995
1996         * m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): In MOTOROLA
1997         cases, add %# and %/, and add : to make them into extended asms.
1998
1999 Sun Sep  7 23:57:50 1997  Weiwen Liu  <liu@hepunix.physics.yale.edu>
2000
2001         * alias.c (init_alias_analysis): Clean up incompatible pointer
2002         type warning in bzero.
2003         * regmove.c (regmove_optimize): Ditto.
2004         * haifa-sched.c (find_rgns): Ditto.
2005
2006         * haifa-sched.c (print_value): Clean up ptr->int cast
2007         warnings.
2008
2009 Sun Sep  7 23:18:32 1997  Fred Fish  <fnf@ninemoons.com>
2010
2011         * INSTALL: Change 'amigados' to 'amigaos' to match current usage.
2012         * install.texi (Configurations): Ditto.
2013         * config.sub: Ditto.
2014
2015 Sun Sep  7 22:56:56 1997  Weiwen Liu  (liu@hepvms.physics.yale.edu)
2016
2017         * Makefile.in (sdbout.o): Depend on insn-config.h.
2018
2019 Sun Sep  7 18:44:50 1997  Jim Wilson  <wilson@cygnus.com>
2020
2021         * m68k/m68k.h (TARGET_SWITCHES): For 68000, 68302, subtract MASK_68881.
2022         For 68303, 68332, cpu32, subtract MASK_68040_ONLY.
2023
2024 Sun Sep  7 18:30:46 1997  Jason Merrill  <jason@yorick.cygnus.com>
2025
2026         * dwarf2out.c (dwarf2out_frame_debug): Assume that in a PARALLEL
2027         prologue insn, only the first elt is significant.
2028         (output_call_frame_info): For exception handling, always use 4-byte
2029         fields as specified by the dwarf2 spec.
2030         Don't skip trivial FDEs.
2031
2032 Sun Sep  7 14:19:39 1997  Jeffrey A Law  (law@cygnus.com)
2033
2034         * version.c: Bump for snapshot.
2035
2036 Sun Sep  7 14:17:36 1997  Torbjorn Granlund  (tege@pdc.kth.se)
2037
2038         * expmed.c (expand_divmod): Make op1_is_pow2 depend on unsignedp
2039         for negative constants.  Promote EXACT_DIV_EXPR to TRUNC_DIV_EXPR
2040         when op1_is_pow2.
2041
2042 Sun Sep  7 13:46:46 1997  Jeffrey A Law  (law@cygnus.com)
2043
2044         * final.c (shorten_branches): During first pass, assume worst
2045         possible alignment for ADDR_VEC and ADDR_VEC_DIFF insns.
2046
2047         * Makefile.in (distclean): Remove various things left around
2048         by running the testsuite.
2049
2050 Sun Sep  7 13:16:06 1997  Manfred Hollstein  <manfred@s-direktnet.de>
2051
2052         * configure.in (out_file): Emit definition to config.status in order
2053         to have a defined value for configure.lang.
2054         * configure: Re-built.
2055
2056 Sun Sep  7 09:59:08 1997  Jan-Jaap van der Heijden (J.J.vanderHeijden@student.utwente.nl)
2057
2058         * configure.in: Make symlink to as-new rather than as.new.  Similarly
2059         for ld-new.
2060         * configure: Rebuilt.
2061
2062 Fri Sep  5 16:54:55 1997  Jim Wilson  <wilson@cygnus.com>
2063
2064         * profile.c (output_func_start_profiler): Set DECL_EXTERNAL to zero.
2065
2066 Fri Sep  5 16:16:44 1997  Christian Kuehnke  <Christian.Kuehnke@arbi.Informatik.Uni-Oldenburg.DE>
2067
2068         * sparc/sparc.md: Add ultrasparc scheduling support.
2069         * sparc/sparc.h (RTX_COSTS): For MULT give v9 a cost of 25 insns.
2070
2071 Fri Sep  5 14:04:59 1997  Philippe De Muyter  <phdm@info.ucl.ac.be>
2072
2073         * integrate.c (save_for_inline_copying): Use 0, not NULL_PTR,
2074         as initial value for real_label_map.
2075         (copy_for_inline): Likewise.
2076
2077 Fri Sep  5 13:36:44 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
2078
2079         * sched.c (update_flow_info) When looking if to set found_split_dest
2080         or found_orig_dest, look at all parts of a PARALLEL.
2081         * haifa-sched.c (update_flow_info): Likewise.
2082
2083 Fri Sep  5 10:08:44 1997  Jeffrey A Law  (law@cygnus.com)
2084
2085         * v850: New directory for v850 port.
2086         * v850/lib1funcs.asm: New file.
2087         * t-v850, v850.c, v850.h, v850.md, xm-v850.h: New files.
2088         * ginclude/va-v850.h: New file.
2089         * ginclude/varargs.h, ginclude/stdarg.h: Include va-mn10200.h.
2090         * configure.in (mn10200-*-*): New target.
2091         * configure: Rebuilt.
2092         * config.sub: Handle v850-elf.
2093         * Makefile.in (USER_H): Add va-mn10200.h. 
2094         * invoke.texi: Document v850 stuff.
2095
2096 Fri Sep  5 09:37:50 1997  Jim Wilson  (wilson@cygnus.com)
2097
2098         * sdbout.c (plain_type_1, case ARRAY_TYPE): Verify that TYPE_DOMAIN
2099         has integer TYPE_{MAX,MIN}_VALUE before using them.
2100
2101         * m68k/m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Add
2102         __HPUX_ASM__ versions.
2103
2104 Fri Sep  5 09:08:44 1997  Jeffrey A Law  (law@cygnus.com)
2105
2106         * install.sh: Delete duplicate install script.
2107
2108 Thu Sep  4 23:14:27 1997  Stan Cox  (coxs@dg-rtp.dg.com)
2109
2110         * reg-stack.c (subst_stack_regs): Pop the stack register for a
2111         computed goto which sets the same stack register.
2112
2113         * reg-stack.c (compare_for_stack_reg): Swap only if the source and
2114         destination are both on the regstack.
2115         (subst_stack_regs_pat): Put the destination at the top of the regstack.
2116
2117 Thu Sep  4 15:02:27 1997  Jim Wilson  <wilson@cygnus.com>
2118
2119         * mips.md (nonlocal_goto_receiver): Define.
2120
2121         * profile.c (output_arc_profiler): Check next_insert_after for non
2122         NULL before deferencing it.
2123
2124         * i386/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define to -fPIC.
2125
2126 Thu Sep  4 14:51:57 1997  Jeffrey A Law  (law@cygnus.com)
2127
2128         * i386.h (CPP_CPU_DEFAULT): Avoid using #elif.
2129
2130 Thu Sep  4 15:01:49 1997  Michael Meissner  <meissner@cygnus.com>
2131
2132         * toplev.c (rest_of_compilation): For passes starting with
2133         flow_analysis, use print_rtl_with_bb instead of print_rtl.
2134
2135         * print-rtl.c (print_rtl_single): Print a single rtl value to a
2136         file.
2137
2138         * flow.c (print_rtl_with_bb): Print which insns start and end
2139         basic blocks.  For the start of a basic block, also print the live
2140         information.
2141
2142 Thu Sep  4 11:51:43 1997  Jim Wilson  <wilson@cygnus.com>
2143
2144         * toplev.c (main): Change #elif to #else/#ifdef
2145
2146         * tlink.c: Include ctype.h.
2147         * ginclude/va-mips.h: Add _VA_MIPS_H_ENUM ifdef/define/endif.
2148
2149 Thu Sep  4 11:17:16 1997  Mikeael Meissner  (meissner@cygnus.com)
2150
2151         * bitmap.c: Conditionally include stdlib.h.
2152         (free): Provide a declaration if NEED_DECLARATION_FREE.
2153
2154 Thu Sep  4 09:58:53 1997  Joel Sherrill  (joel@OARcorp.com)
2155
2156         * i960/i960.h: Added default for SUBTARGET_SWITCHES macro.
2157
2158 Thu Sep  4 09:53:20 1997  Jim Wilson  (wilson@cygnus.com)
2159
2160         * profile.c (output_arc_profiler): Verify next_insert_after is an
2161         INSN before and after skipping a stack pop.
2162
2163 Thu Sep  4 07:39:19 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
2164
2165         * final.c (shorten_branches): Don't count the lengths of deleted
2166         instructions.
2167
2168 Thu Sep  4 09:43:01 1997  Jeffrey A Law  (law@cygnus.com)
2169
2170         * version.c: Bump for snapshot.
2171
2172 Thu Sep  4 11:04:21 1997  Michael Meissner  <meissner@cygnus.com>
2173
2174         * bitmap.h (EXECUTE_IF_AND_IN_BITMAP): New macro, to iterate over
2175         two bitmaps ANDed together.
2176         (bitmap_print): Declare.
2177
2178         * bitmap.c (function_obstack): Don't declare any more.
2179         (bitmap_obstack): Obstack for allocating links from.
2180         (bitmap_obstack_init): New static to say whether to initialize
2181         bitmap_obstack.
2182         (bitmap_element_allocate): Use bitmap_obstack to allocate from.
2183         (bitmap_release_memory): Free all memory allocated from
2184         bitmap_obstack.
2185
2186         * basic-block.h (EXECUTE_IF_AND_IN_REG_SET): New macro, invoke
2187         EXECUTE_IF_AND_IN_BITMAP.
2188
2189 Wed Sep  3 10:39:42 1997  Jim Wilson  <wilson@cygnus.com>
2190
2191         * alias.c (true_dependence): Address with AND can alias scalars.
2192         (anti_dependence, output_dependence): Likewise.
2193         
2194         * alias.c (true_dependence): Test x for BLKmode, in addition to mem.
2195
2196 Wed Sep  3 09:28:50 CDT 1997  Joel Sherrill (joel@OARcorp.com)
2197
2198         * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h, m68k/rtems.h,
2199           mips/rtems64.h, pa/rtems.h, rs6000/rtems.h, sh/rtems.h,
2200           sparc/rtems.h (subtarget_switches): Removed SUBTARGET_SWITCHES
2201           definitions.  Use -qrtems instead of -mrtems.
2202
2203 Wed Sep  3 09:05:41 1997  Robert Lipe  (robert@dgii.com)
2204
2205         * xm-sco5.h (sys_siglist): Define.
2206         (SYS_SIGLIST_DECLARED): Likewise.
2207
2208 Tue Sep  2 23:33:33 1997  Jeffrey A Law  (law@cygnus.com)
2209
2210         * expr.c (convert_move): Handle truncation from TQFmode to QFmode.
2211
2212 Wed Sep  3 02:09:30 1997  Torbjorn Granlund  <tege@pdc.kth..se>
2213
2214         * except.c (eh_outer_context): Expand masking operation using
2215         expand_binop.
2216
2217 Tue Sep  2 18:09:39 1997  Jim Wilson  <wilson@cygnus.com>
2218
2219         * alpha.md (floatdisf2-1): New pattern.
2220
2221 Tue Sep  2 18:41:55 1997  Jeffrey A Law  (law@cygnus.com)
2222
2223         * xm-svr4.h (SYS_SIGLIST_DECLARED): Define.
2224         * xm-news.h (SYS_SIGLIST_DECLARED): Likewise.
2225         * xm-sysv4.h (SYS_SIGLIST_DECLARED): Likewise.
2226         * gcc.texi: Note that if you define sys_siglist that you should
2227         also define SYS_SIGLIST_DECLARED.
2228
2229         * mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instructions
2230         are relative to the next instruction, not the current instruction.
2231
2232 Tue Sep  2 14:22:43 1997  Jim Wilson  <wilson@cygnus.com>
2233
2234         * local-alloc.c (contains_replace_regs): New function.
2235         (update_equiv_regs): When adding a REG_EQUIV note for a set of a MEM,
2236         verify that there is no existing REG_EQUIV note, and add a call to
2237         contains_place_regs.
2238
2239 Tue Sep  2 12:48:11 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
2240
2241         * config/alpha/elf.h (CPP_PREDEFINES): Add -D__PIC__ -D__pic__.
2242         (STARTFILE_SPEC): Always use crtbegin.o%s
2243         (ENDFILE_SPEC): Always use crtend.o%s.
2244
2245 Tue Sep  2 12:00:36 1997  Jim Wilson  <wilson@cygnus.com>
2246
2247         * alpha/alpha.h (PREFERRED_RELOAD_CLASS): Return NO_REGS if NO_REGS
2248         is passed in.
2249         * emit-rtl.c (gen_lowpart_common): Add code to convert CONST_INT to
2250         SFmode for 64 bit hosts.
2251         
2252 Tue Sep  2 13:42:38 1997  Paul N. Hilfinger  <hilfingr@CS.Berkeley.EDU>
2253
2254         * fixincludes: Permits spaces between # and define.  Discard C++
2255         comments in sys/pci.h on HP/UX 10.20.
2256
2257 Mon Sep  1 22:13:18 1997  Jeffrey A Law  (law@cygnus.com)
2258
2259         * version.c: Bump for snapshot.
2260
2261         * pa.c (restore_unscaled_index_insn_codes): New function.
2262         (record_unscaled_index_insn_codes): Likewise.
2263         (output_function_prologue): Call restore_unscaled_index_insn_codes.
2264         (output_function_epilogue): Free memory for unscaled_index_insn_codes.
2265         (pa_reorg): Call record_unscaled_index_insn_codes.
2266
2267         * haifa-sched.c (move_insn): Handle notes correctly for insns
2268         with SCHED_GROUP_P set.
2269         
2270 Mon Sep  1 16:58:57 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
2271
2272         * alpha/xm-linux.h (USE_BFD): Undef before define.
2273
2274 Mon Sep  1 16:25:34 1997  Jim Wilson  <wilson@cygnus.com>
2275
2276         * cse.c (cse_insn): Don't record BLKmode values.
2277
2278 Mon Sep  1 11:25:47 1997  Stephen Williams  (steve@icarus.icarus.com)
2279
2280         * i960.h (LINK_SPEC): Handle "-mjX" and "-mrp" switches.
2281
2282 Mon Sep  1 08:29:46 1997  Jeffrey A Law  (law@cygnus.com)
2283
2284         * cccp.c (sys_errlist): Remove special 4.4bsd declaration.
2285         * collect2.c (sys_errlist): Likewise.
2286         * cpplib.c (sys_errlist): Likewise.
2287         * gcc.c (sys_errlist): Likewise.
2288         * protoize (sys_errlist): Likewise.
2289         * configure.in: Check for strerror.
2290         * xm-freebsd.h (HAVE_STRERROR): Remove definition.
2291         * xm-gnu.h (HAVE_STRERROR): Likewise.
2292         * xm-linux.h (HAVE_STRERROR): Likewise.
2293         * xm-netbsd.h (HAVE_STRERROR): Likewise.
2294         * xm-bsd386.h (HAVE_STRERROR): Likewise.
2295         * xm-cygwin32.h (HAVE_STRERROR): Likewise.
2296         * xm-dos.h (HAVE_STRERROR): Likewise.
2297         * xm-mingw32.h (HAVE_STRERROR): Likewise.
2298         * xm-pa.h (HAVE_STRERROR): Likewise.
2299         * xm-papro.h (HAVE_STRERROR): Likewise.
2300         * xm-sysv4.h (HAVE_STRERROR): Likewise.
2301         * configure, config.in: Rebuilt.
2302
2303         * Makefile.in: Add several missing "else true" clauses.
2304
2305         * collect2.c: Change DONT_DECLARE_SYS_SIGLIST to SYS_SIGLIST_DECLARED.
2306         * mips-tfile.c: Likewise.
2307         * gcc.texi: DONT_DECLARE_SYS_SIGLIST: Remove docs.
2308         * xm-linux.h (DONT_DECLARE_SYS_SIGLIST): Delete definition.
2309         * xm-freebsd.h, xm-bsd386.h, xm-sysv4.h, xm-sol2.h: Likewise.
2310         * configure.in: Check for sys_siglist declaration.
2311         * configure, config.in: Rebuilt.
2312
2313 Mon Sep  1 08:04:07 1997  Joel Sherrill (joel@OARcorp.com)
2314
2315         * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h, 
2316         m68k/rtems.h, mips/rtems64.h, pa/rtems.h, rs6000/rtems.h,
2317         sparc/rtems.h (subtarget_switches): Added -mrtems as a switch.
2318         * i960/i960.h: Added SUBTARGET_SWITCHES macro.
2319         * rs6000/sysv4.h (extra_subtarget_switches): Added new
2320         macro EXTRA_SUBTARGET_SWITCHES.
2321         * configure.in (sh*-*-rtems*): New target.
2322         * sh/rtems.h: New file.
2323         * sh/sh.h: Added SUBTARGET_SWITCHES macro.
2324         * configure: Rebuilt.
2325
2326 Sat Aug 30 22:54:26 1997  Jim Wilson  <wilson@cygnus.com>
2327
2328         * unroll.c (calculate_giv_inc): Handle increment with code PLUS.
2329
2330 Sat Aug 30 10:49:46 1997  David Edelsohn  <edelsohn@mhpcc.edu>
2331
2332         * rs6000.md: Make DF fused-add operations pay attention to
2333         -mno-fused-add.
2334
2335 Fri Aug 29 19:19:54 1997  Jim Wilson  <wilson@cygnus.com>
2336
2337         * i386/xm-sysv4.h (DONT_DECLARE_SYS_SIGLIST): Define.
2338
2339 Fri Aug 29 16:13:51 1997  Jeffrey A Law  (law@cygnus.com)
2340
2341         * pa.md (reload_peepholes): Make sure operand is a REG before
2342         examining REGNO.  Allow general registers too.
2343
2344 Fri Aug 29 11:42:04 1997  Jim Wilson  <wilson@cygnus.com>
2345
2346         * varasm.c (mark_constants): Don't look inside CONST_DOUBLEs.
2347
2348 Fri Aug 29 09:33:20 1997  Philipp Thomas  (kthomas@lxi165.gwdg.de)
2349
2350         * dwarf2out.c (build_abbrev_table): Use xrealloc, not xmalloc
2351         to reallocate abbrev_die_table.
2352
2353 Thu Aug 28 15:14:46 1997  Jim Wilson  <wilson@cygnus.com>
2354
2355         * m68k/m68k.md (iorsi_zexthi_ashl16): Disable.
2356
2357 1997-08-27  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2358
2359         * Makefile.in (config.status): Depend on version.c
2360
2361         * expr.h (insn_gen_function): Reenable prototype.
2362
2363         * expr.c (move_by_pieces_1, clear_by_pieces_1): Fix prototype of
2364         first parameter.
2365
2366 Thu Aug 28 13:01:43 1997  Jim Wilson  <wilson@cygnus.com>
2367
2368         * i386.c (ix86_expand_epilogue): Emit blockage instruction when pic.
2369
2370 Thu Aug 28 07:03:15 1997  Jeffrey A Law  (law@cygnus.com)
2371
2372         * version.c: Bump for latest snapshot.
2373
2374         * bc-optab.c: Conditionally include stdlib.h.
2375         (free): Provide a declaration if NEED_DECLARATION_FREE.
2376         * tree.c (free): Provide a declaration if NEED_DECLARATION_FREE.
2377         * rtl.h (free): Remove declaration.
2378         * tree.h (free): Remvoe declaration.
2379
2380         * configure: Rebuilt.
2381
2382 Wed Aug 27 21:32:20 1997  Jeffrey A Law  (law@cygnus.com)
2383
2384         * flags.h (flag_move_all_movables): Declare.
2385         (flag_reduce_all_givs): Likewise.
2386         * loop.c (move_movables): Handle flag_move_all_movables.
2387         (strength_reduce): Handle flag_reduce_all_givs.
2388         * toplev.c (flag_move_all_movables): Define.
2389         (flag_reduce_all_givs): Likewise.
2390         (f_options): Add -fmove-all-movables and -freduce-all-givs.
2391         * invoke.texi: Document new options, including alias stuff that
2392         wasn't included last time.
2393
2394 Wed Aug 27 18:08:51 1997  Bob Manson  (manson@cygnus.com)
2395
2396         * t-h8300: Use TARGET_LIBGCC2_CFLAGS instead of LIBGCC2_CFLAGS.
2397         * t-mn10200: Ditto.
2398         * t-vxsparc: Ditto.
2399         * t-vxworks68: Ditto.
2400         * t-vxworks960: Ditto.
2401         * t-vx29k: Ditto.
2402
2403 Wed Aug 27 16:35:29 1997  Richard Henderson  <rth@cygnus.com>
2404
2405         * alpha/xm-alpha.h (alloca): Define alloca to builtin_alloca for GNUC
2406         if not already defined, and USE_C_ALLOCA not defined.
2407
2408 Wed Aug 27 16:08:43 1997  Jim Wilson  <wilson@cygnus.com>
2409
2410         * config.guess: Replace with script that uses ../config.guess.
2411
2412         * config/alpha/elf.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1
2413         if USE_GNULIBC_1 is not defined.
2414
2415 Wed Aug 27 15:49:12 1997  Richard Henderson  <rth@cygnus.com>
2416
2417         * alpha/elf.h (LINK_SPEC): Conditionalize on USE_GNULIBC_1.
2418         * config.guess: Recognize alpha-linux-gnulibc1.
2419         * configure.in (alpha-*-linux-gnulibc1): New target.
2420         (alpha-*-linux-gnu*): Don't build crtbegin/end.
2421
2422 Wed Aug 27 11:52:58 1997  Jim Wilson  <wilson@cygnus.com>
2423
2424         * m68k.md (iorsi3_internal): Readd ! TARGET_5200 check lost in
2425         last change.
2426
2427 Wed Aug 27 01:56:18 1997  Doug Evans  <dje@seba.cygnus.com>
2428
2429         * loop.c (combine_movables): Earlier insns don't match later ones.
2430
2431 Wed Aug 27 01:24:25 1997  H.J. Lu   (hjl@gnu.ai.mit.edu)
2432
2433         * config/linux.h (CC1_SPEC): Define it only if not defined.
2434
2435         * config/m68k/linux.h (CC1_SPEC): Undefine it before include
2436         <linux.h>
2437
2438         * config/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1 if
2439         USE_GNULIBC_1 is not defined.
2440
2441         * config/rs6000/linux.h (DEFAULT_VTABLE_THUNKS): New.  Defined as 1.
2442
2443         * config/sparc/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined
2444         as 1 if USE_GNULIBC_1 is not defined.
2445
2446 Wed Aug 27 00:49:14 1997  Jeffrey A Law  (law@cygnus.com)
2447
2448         * reorg.c (dbr_schedule): Allow current_function_return_rtx
2449         to be something other than a REG.
2450         * function.c (expand_function_end): Fix current_function_return_rtx
2451         if it was a pseudo.
2452
2453         * t-freebsd (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
2454         * x-netbsd: Likewise
2455         * x-dgux (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS
2456         (INSTALL_HEADERS): Delete.
2457         * x-dguxbcs: Likewise.
2458         * x-hp3bsd44: Likewise
2459         * x-pa: Likewise.
2460
2461 Wed Aug 27 00:30:00 1997  Bernd Schmidt  <crux@pool.informatik.rwth-aachen.de>
2462
2463         * i386.md (pop): pop increments the stack pointer.
2464         (prologue_set_stack_ptr): New pattern.
2465         * i386.c (ix86_expand_prologue): Use prologue_set_stack_ptr
2466         instead of subsi3.
2467
2468 Tue Aug 26 18:50:32 1997  Jim Wilson  <wilson@cygnus.com>
2469
2470         * reload.c (find_reloads, case '0'): Reject matching a non-offsettable
2471         address where an offsettable address is required.
2472
2473 Tue Aug 26 17:54:56 1997  Michael P. Hayes  (michaelh@ongaonga.chch.cri.nz>
2474
2475         * loop.c (check_final_value): Don't miss a biv increment in a
2476         parallel.
2477
2478 Tue Aug 26 12:03:49 1997  Jim Wilson  (wilson@cygnus.com)
2479
2480         * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Check
2481         TYPE_DECL_IS_STUB instead of DECL_NAME.
2482
2483 Mon Aug 25 23:27:10 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
2484
2485         * objc/Make-lang.in ($(OBJC_O)): Also depend on cc1obj.
2486
2487 Mon Aug 25 23:27:10 1997  Jim Meyering <meyering@eng.ascend.com>
2488
2489         * objc/Make-lang.in ($(OBJC_O)): Also depend on $(GCC_PASSES).
2490
2491 Mon Aug 25 13:12:24 1997  Jeffrey A Law  (law@cygnus.com)
2492
2493         * haifa-sched.c (find_pre_sched_live): Remove #if 0 code.
2494         (find_post_sched_live): Likewise.
2495
2496         * haifa-sched.c (schedule_block): Remove old code to get arguments
2497         from hard regs into pseudos early.
2498
2499 Mon Aug 25 08:55:00 1997  Jeffrey A Law  (law@cygnus.com)
2500
2501         * version.c: Bump for new snapshot.
2502
2503         * local-alloc.c (update_equiv_regs): All the target to reject
2504         promotion of some REG_EQUAL to REG_EQUIV notes.
2505         * pa.h (DONT_RECORD_EQUIVALENCE): Define.
2506
2507         * pa.c (secondary_reload_class): (mem (mem ... )) does not need
2508         secondary reloads.
2509
2510         * pa.c (hppa_builtin_saveregs): Emit a blockage insn after the
2511         store of the argument registers.
2512
2513 Mon Aug 25 08:39:02 1997  Craig Burley  (burley@gnu.ai.mit.edu)
2514
2515         * fold-const.c (multiple_of_p): New function.
2516         (fold): Turn some cases of *_DIV_EXPR into EXACT_DIV_EXPR.
2517
2518 Mon Aug 25 01:47:41 1997  Jeffrey A Law  (law@cygnus.com)
2519
2520         * expr.h (insn_gen_function): Temporarily remove prototype.
2521
2522 Sun Aug 24 17:22:21 1997  Jim Wilson  <wilson@cygnus.com>
2523
2524         * Makefile.in (install-info): Don't cd into srcdir.  Add srcdir to
2525         filenames.  Use sed to extract base filename for install.
2526
2527 Sat Aug 23 18:19:40 1997  John F. Carr  <jfc@mit.edu>
2528
2529         * unroll.c (find_splittable_givs): Only share if two givs have the
2530         same add and multiply values.
2531
2532 Sat Aug 23 14:36:27 1997  Jim Wilson  <wilson@cygnus.com>
2533
2534         * m68k/next.h (GO_IF_INDEXABLE_BASE): Fix typo in undef.
2535         * m68k/m68kemb.h (LIB_SPEC): Add missing comment end before it.
2536
2537 Sat Aug 23 00:18:22 1997  Jeffrey A Law  (law@cygnus.com)
2538
2539         * pa.c (pa_reorg): Always put begin_brtab and end_brtab insns
2540         around branch tables.
2541         * pa.md (begin_brtab, end_brtab): Only emit the .begin_brtab
2542         and .end_brtab directives if TARGET_GAS.
2543
2544 Fri Aug 22 14:05:55 1997  Jim Wilson  <wilson@cygnus.com>
2545
2546         * alias.c (true_dependence): Pass x_addr not x to varies.
2547
2548         * acconfig.h (NEED_DECLARATION_CALLOC): Add.
2549         * configure.in: Add GCC_NEED_DECLARATION call for calloc.
2550         * rs6000/xm-rs6000.h (malloc, realloc, calloc, free): Delete
2551         declarations.
2552         * config.in, configure: Regenerate.
2553
2554 Thu Aug 21 23:52:16 1997  John F. Carr  <jfc@mit.edu>
2555
2556         * alias.c (find_base_value): Improve handling of PLUS, MINUS, and
2557         LO_SUM.
2558         (record_set): Handle LO_SUM like PLUS.
2559         (init_alias_analysis): When following chains of base addresses,
2560         do not stop on reaching a hard register.
2561
2562 Thu Aug 21 20:17:37 1997  Jeffrey A Law  (law@cygnus.com)
2563
2564         * version.c: Bump for new snapshot.
2565
2566 Thu Aug 21 17:28:00 1997  Jim Wilson  <wilson@cygnus.com>
2567
2568         * alpha.h (ARCH_ASM_FILE_START): Define.
2569         (ASM_FILE_START): Use ARCH_ASM_FILE_START.
2570         * osf12.h, osf2or3.h (ARCH_ASM_FILE_START): Redefine to null string.
2571
2572 Thu Aug 21 10:22:19 1997  Jeffrey A Law  (law@cygnus.com)
2573
2574         * Makefile.in (install-common): Put gcov comment at start of line.
2575
2576 Wed Aug 20 22:47:33 1997  Jeffrey A Law  (law@cygnus.com)
2577
2578         * alias.c (init_alias_analysis): When simplifying the reg_base_value
2579         array, simplify entries for hard registers too.
2580
2581 Wed Aug 20 12:35:47 1997  Dave Love  <d.love@dl.ac.uk>
2582
2583         * dwarf2.h (enum dwarf_call_frame_info): Remove trailing comma from
2584         list.
2585
2586 Wed Aug 20 11:58:33 1997  Jim Wilson  <wilson@cygnus.com>
2587
2588         * stmt.c (start_cleanup_deferal, end_cleanup_deferal): Test
2589         block_stack before dereferencing it.
2590
2591 Wed Aug 20 11:57:11 1997  Michael Meissner  <meissner@cygnus.com>
2592
2593         * rs6000.h (ISSUE_RATE): Define instead of MACHINE_issue_rate.
2594
2595 Tue Aug 19 17:10:56 1997  Jason Merrill  <jason@yorick.cygnus.com>
2596
2597         * cplus-dem.c: Add 'extern' to prepends_underscore.
2598
2599 Tue Aug 19 09:34:57 1997  Jeffrey A Law  (law@cygnus.com)
2600
2601         * haifa-sched.c (ISSUE_RATE): Renamed from MACHINE_issue_rate.
2602         (get_issue_rate): Delete.
2603         * pa.h (ISSUE_RATE): Define.
2604
2605         * configure.in: Turn on haifa by default for the PA.
2606         * configure: Rebuilt.
2607         * pa.c (override_options): Accept -mschedule=7200 option.
2608         (pa_adjust_cost): No longer need to scale costs for newer
2609         processors.
2610         * pa.h (enum processor_type): Add PROCESSOR_7200.
2611         * pa.md: Revamp scheduling parameters to work better with
2612         haifa.  Add scheduling parameters for the 7200.
2613
2614         * haifa-sched.c (move_insn): Reemit notes for SCHED_GROUP_P
2615         insns too.
2616         (schedule_block): When adjusting basic_block_{head,end}, account
2617         for movement of SCHED_GROUP_P insns too.
2618
2619         * haifa-sched.c (debug_dependencies): Fix thinko.
2620
2621         * Makefile.in (EXPECT, RUNTEST, RUNTESTFLAGS): Define.
2622         (site.exp, check, check-g++, check-gcc): New targets.
2623
2624         * haifa-sched.c: Make lots of variables static.
2625
2626 Tue Aug 19 07:18:34 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)
2627
2628         * expr.h, real.h: Finish prototyping.
2629
2630 Mon Aug 18 21:49:02 1997  Jim Wilson  <wilson@cygnus.com>
2631
2632         * reload.c (find_reloads): Add code to convert RELOAD_FOR_OPADDR_ADDR
2633         reloads to RELOAD_FOR_OPERAND_ADDRESS reloads.
2634         * reload1.c: Undo bugfix from Aug 11.
2635
2636 Mon Aug 18 17:39:02 1997  Mike Meissner  <meissner@cygnus.com>
2637
2638         * configure.in ({powerpc,rs6000}*-*-*, --with-cpu): Remove single
2639         quotes around the name.
2640         * configure: Regenerate.
2641
2642 Mon Aug 18 13:46:47 1997  Jim Wilson  <wilson@cygnus.com>
2643
2644         * Makefile.in (stmp-multilib-sub): Fix typo in last change.
2645
2646 Thu Aug  7 10:33:13 1997  Manfred Hollstein  <manfred@s-direktnet.de>
2647
2648         * Makefile.in (sub-makes): Pass the current value of LANGUAGES down
2649         to sub-makes to avoid building more passes than the user might have
2650         requested on the command line.
2651
2652 Sun Aug 17 15:42:17 1997  Dave Love  (d.love@dl.ac.uk)
2653
2654         * configure.in: Expurgate `broken_install' (install is
2655         autoconfed).
2656
2657         * configure.lang: Substitute autoconfed ${INSTALL} (not currently
2658         relevant).
2659
2660 Sat Aug 16 01:08:12 1997  Jeffrey A Law  (law@cygnus.com)
2661
2662         * loop.c (is_power_of_2, is_conditional_branch): Delete unused
2663         functions and declarations.
2664         (analyze_loop_iterations): Use condjump_p.
2665         (insert_bct): Likewise.  Use exact_log2.
2666         
2667 Fri Aug 15 23:48:32 1997  Jeffrey A Law  (law@cygnus.com)
2668
2669         * haifa-sched.c (find_post_sched_live): Call FREE_REG_SET as needed.
2670         (schedule_region): Likewise.
2671         (schedule_insns): Likewise.
2672
2673         * PROJECTS: Update with Haifa stuff.
2674
2675 Fri Aug 15 12:49:56 1997  Jeffrey A Law  (law@cygnus.com)
2676
2677         * version.c: Change the version string to look like:
2678         egcs-2.90.00 970814 (gcc2-970802 experimental).
2679
2680         * loop.c (is_conditional_branch): Make definition match declaration.
2681
2682         * gcc.c: Take out experimental snapshot warning message.
2683
2684 Fri Aug 15 13:43:39 1997  Michael Meissner  <meissner@cygnus.com>
2685
2686         * haifa-sched.c (debug_dependencies): Use GET_NOTE_INSN_NAME to
2687         print out the names of the notes.  Print out the name of the insn
2688         that is not a note, and not an {,CALL_,JUMP_}INSN.
2689
2690 Wed Aug 13 17:32:38 1997  Jason Merrill  <jason@yorick.cygnus.com>
2691
2692         * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
2693         again for the slot after we give it RTL.
2694
2695 Wed Aug 13 01:03:37 1997  Doug Evans  <dje@canuck.cygnus.com>
2696
2697         * configure.in (haifa configury): Fix typo.
2698         * configure: Regenerate.
2699
2700 Tue Aug 12 10:20:36 1997  Jeffrey A Law  (law@cygnus.com)
2701
2702         * version.c: Bump version to "gcc-3.0.0 970802 experimental".
2703
2704         * gcc.info*: Rebuilt.
2705
2706         * COPYING.g77, README.g77: New files.
2707         * real.c (ereal_unto_float, ereal_unto_double): New functions.
2708         * real.h (ereal_unto_float, ereal_unto_double): Declare them.
2709         (REAL_VALUE_UNTO_TARGET_DOUBLE, REAL_VALUE_UNTO_TARGET_SINGLE): Define.
2710
2711 Mon Aug 11 14:50:55 1997  Jeffrey A Law  (law@cygnus.com)
2712
2713         * Integrate Haifa instruction scheduler.
2714         * Makefile.in (ALL_CFLAGS): Add SCHED_CFLAGS.  Prefix all references
2715         to sched with $(SCHED_CFLAGS.
2716         * configure.in: Handle --enable-haifa.
2717         * configure: Rebuilt.
2718         * flags.h: Add new flags for haifa instruction scheduler.
2719         * genattrtab.c (expand_units): For haifa, don't subtract one
2720         when computing blockage.
2721         * toplev.h (flag_schedule_interblock): Haifa scheduler flag.
2722         (flag_schedule_speculative): Ditto.
2723         (flag_schedule_speculative_load): Ditto.
2724         (flag_schedule_speculative_load_dangerous): Ditto.
2725         (flag_schedule_reverse_before_reload): Ditto.
2726         (flag_schedule_reverse_after_reload): Ditto.
2727         (flag_branch_on_count_reg): Ditto.
2728         (f_options): Add Haifa switches.
2729         (main): Turn off some Haifa options if appropriate macro is
2730         defined.  Process Haifa switches.
2731         * unroll.c (iteration_info): No longer static, since Haifa
2732         scheduler uses it.
2733         (unroll_loop): Inform HAIFA scheduler about loop unrolling factor.
2734         * unroll.c (unroll_loop): Set loop_unroll_iter, loop_start_value.
2735         * loop.h (loop_unroll_factor, loop_number): Add HAIFA decls.
2736         * loop.h (loop_initial_value,loop_unroll_iter): New globals.
2737         * loop.c (loop_optimize): If HAIFA is defined, allocate additional
2738         storage for the Haifa scheduler.
2739         (mark_loop_jump): If HAIFA defined, set LABEL_OUTSIDE_LOOP_P and
2740         LABEL_NEXTREF.
2741         (strength_reduce): If HAIFA and HAVE_decrement_and_branch_on_count
2742         are defined, call analyze_loop_iterations and insert_bct to use
2743         countdown loops.
2744         (record_giv): Refine test for jumps out of loops if HAIFA is
2745         defined.
2746         (analyze_loop_iterations): New function to identify if we can use
2747         a countdown loop.
2748         (insert_bct): Insert countdown loop.
2749         (instrument_loop_bct): Low level code to insert countdown loop.
2750         (loop_number): Calculate UID of loop.
2751         (indirect_jump_in_function_p): Return true if an indirect jump is
2752         in the function.
2753         (is_power_of_2): Return true if value is a power of 2.
2754         (is_conditional_branch): Return true if insn is a conditional
2755         jump.
2756         (fix_bct_param): Process -fbct-{min,max}-N switches.
2757         (check_bct_param): Return true if loop should be instrumented.
2758         * loop.c (loop_initial_value,loop_unroll_iter): New globals.
2759         (loop_optimize): Initialize.
2760         (get_condition_for_loop): Ditto.
2761         * loop.c (strength_reduce): Inside of code that uses #ifdef
2762         HAVE_decrement_and_branch_on_count code, test it to make sure the
2763         condition is true.
2764         (instrument_loop_bct): Ditto.
2765         * haifa-sched.c: New file.
2766         
2767
2768         * Integrate regmove pass.
2769         * Makefile.in (OBJS): Add regmove.o
2770         (regmove.o): Add dependencies.
2771         * flow.c (find_use_as_address): No longer static.
2772         * rtl.h (find_use_as_address): Declare.
2773         * toplev.c (regmove_dump, flag_regmove): Define.
2774         (f_options): Add -fregmove.
2775         (regmove_dump_file, regmove_time): Define.
2776         (fatal_insn): Close the regmove dump file.
2777         (compile_file): Initialize regmove_time; open/close the regmove dump
2778         file as needed.  Print regmove time as needed.
2779         (rest_of_compilation): Run regmove pass if requested, dump
2780         RTL after regmove if requested.
2781         (main): If -O2 or more, turn on regmove.  Handle dump switches.
2782         * regmove.c: New file.
2783         
2784 Mon Aug 11 14:15:02 1997  Jeffrey A Law  (law@cygnus.com)
2785
2786         * Integrate tlink patch from jason@cygnus.com
2787         * gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
2788         (process_command): Increment n_switches for them.  Don't discard
2789         their args.  Validate them.
2790         (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
2791         From Rohan Lenard.
2792         (process_command): Set include_prefixes from COMPILER_PATH.
2793         (main): Set COLLECT_GCC_OPTIONS sooner.
2794         * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
2795         * tlink.c, hash.c, hash.h: New files.
2796         * Makefile.in (USE_COLLECT2): Always use collect2.
2797         (collect2): Depend on and link in hash.o and tlink.o.
2798         (tlink.o, hash.o): Add dependencies.
2799
2800 Mon Aug 11 10:04:49 1997  Jeffrey A Law  (law@cygnus.com)
2801
2802         * Integrate alias analysis changes from jfc@mit.edu
2803         * Makefile.in (OBJS): Add alias.o
2804         (alias.o): Add dependencies.
2805         * alias.c: New file.
2806         * sched.c: Remove alias analysis code.  It lives in alias.c now.
2807         (sched_analyze_2): Add new arguments to true_dependence.
2808         (schedule_insns): Always call init_alias_analysis.
2809         * calls.c (expand_call): Note calls to malloc, calloc, and realloc;
2810         mark return value from such functions as a pointer and keep track of
2811         them for alias analysis.  If a return value from a function is a
2812         pointer, mark it as such.
2813         * combine.c (distribute_notes): Handle REG_NOALIAS.
2814         * cse.c (struct write_data): Delete.  No longer needed.
2815         (invalidate): Don't call set_nonvarying_address_components anymore.
2816         Use true_dependence to decide if an entry should be removed from
2817         the hash table.
2818         (invalidate_memory): Remove WRITES argument, simplify appropriately.
2819         Fix all callers.
2820         (note_mem_written): Similarly for WRITE_PTR argument.
2821         (invalidate_from_clobbers): Similarly for W argument.
2822         (invalidate_for_call): Remove memory elements from the hash table.
2823         (refers_to_mem_p, cse_rtx_addr_varies_p): Deleted.
2824         (cse_rtx_varies_p): New function.  Derived from old
2825         cse_rtx_addr_varies_p.
2826         (cse_insn): Remove WRITES_MEMORY and INIT variables and all references.
2827         Don't call note_mem_written anymore.  Stack pushes invalidate the stack
2828         pointer if PUSH_ROUNDING is defined.  No longer need to call
2829         cse_rtx_addr_varies_p to decide if a MEM should be invalidated.
2830         (skipped_writes_memory): Remove variable.
2831         (invalidate_skipped_set): Simplify and wewrite to use invalidate_memory.
2832         (invalidate_skipped_block): Simplify for new alias analysis code.
2833         (cse_set_around_loop): Likewise.
2834         (cse_main): Call init_alias_analysis.
2835         * flags.h (flag_alias_check, flag_argument_noalias): Declare.
2836         * toplev.c (flag_alias_check, flag_argument_noalias): Define.
2837         (f_options): Add new alias checking arguments.
2838         (main): Set flag_alias_check when optimizing.
2839         * local_alloc (validate_equiv_mem_from_store): Add new arguments
2840         to true_dependence.
2841         (memref_referenced_p): Likewise.
2842         * loop.c (NUM_STORES): Increase to 30.
2843         (prescan_loop): Only non-constant calls set unknown_address_altered.
2844         (invariant_p): Add new arguments to true_dependence.
2845         (record_giv): Initialize unrolled and shared fields.
2846         (emit_iv_add_mult): Call record_base_value as needed.
2847         * loop.h (struct induction): Add unrolled and shared fields.
2848         * unroll.c  (unroll_loop): Call record_base_value as needed.
2849         (copy_loop_body): Likewise.
2850         (final_biv_value): Likewise.
2851         (final_giv_value): Likewise.
2852         (find_splittable_regs): Likewise.  Only create one new pseudo
2853         if we have multiple address GIVs that were combined with the same
2854         dst_reg GIV.  Note when a new register is created due to unrolling.
2855         * rtl.c (reg_note_name): Add REG_NOALIAS.
2856         * rtl.h (enum reg_note): Similarly.
2857         (rtx_varies_p, may_trap_p, side_effects_p): Declare.
2858         (volatile_refs_p, volatile_insn_p, remove_note): Likewise.
2859         (note_stores, refers_to_regno_p, reg_overlap_mentioned_p): Likewise.
2860         (true_dependence, read_dependence, anti_dependence): Likewise.
2861         (output_dependence, init_alias_analysis, end_alias_analysis): Likewise.
2862         (mark_user_reg, mark_reg_pointer): Likewise.
2863
2864
2865         * Integrate reload bugfix from Wilon which enables the PA port
2866         to bootstrap again.
2867         * reload1.c (reload): Sum needs for both OPADDR_ADDR and and
2868         OPERAND_ADDRESS when computing how many registers an insn needs.
2869         (reload_reg_free_p): OPADDR_ADDR and OPERAND_ADDRESS reloads do
2870         conflict.
2871         (reload_reg_free_before_p): Treat OPERAND_ADDRESS reloads just like
2872         OPADDR_ADDR reload.
2873         (reload_reg_reaches_end_p): For RELOAD_FOR_OPADDR_ADDR insns, registers
2874         in reload_reg_use_in_op_addr do not reach the end.
2875         do not reach the end.
2876         (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
2877         RELOAD_FOR_OPERAND_ADDRESS.
2878
2879 Sun Aug 10 12:00:20 1997  Jeffrey A Law  (law@cygnus.com)
2880
2881         * egcs project officially starts.
2882