]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
flow.c (flow_analysis): Be consistent with find_basic_blocks in determining when...
[gcc.git] / gcc / ChangeLog
CommitLineData
100d81d4
JM
1Fri Dec 12 01:19:48 1997 Jason Merrill <jason@yorick.cygnus.com>
2
9b8d9d6b
JM
3 * flow.c (flow_analysis): Be consistent with find_basic_blocks in
4 determining when a new basic block starts.
5
74c3447c
JM
6 * alpha/osf2or3.h (LIB_SPEC): Restore missing defn.
7
8 * pa.h (TEXT_SPACE_P): Use TREE_CODE_CLASS.
9 * pa.md (iorsi3): Add missing args to *_operand calls.
10
100d81d4
JM
11 * except.c (call_get_eh_context): Don't mess with sequences.
12 (emit_eh_context): Include the call in the sequence here.
13
5a5ab947
PE
141997-12-11 Paul Eggert <eggert@twinsun.com>
15
16 * collect2.c (write_c_file_glob): Allocate initial frame object
17 in static storage and pass its address.
18
01eb7f9a
JM
19Thu Dec 11 23:33:48 1997 Jason Merrill <jason@yorick.cygnus.com>
20
21 * except.c (call_get_eh_context): Don't take a parm.
22 Put the call at the top of the function.
23 (emit_eh_context): Adjust.
24 (get_eh_context): Replace with former use_eh_context.
25 (get_eh_context_once, get_saved_pc_ref): Remove.
26 (start_eh_unwinder, end_eh_unwinder, emit_unwinder): Remove.
27 * except.h: Adjust.
28 * integrate.c (expand_inline_function): Adjust.
29 * toplev.c (rest_of_compilation): Don't call emit_unwinder.
30
d19814a3
ML
31Fri Oct 10 17:58:31 CEST 1997 Marc Lehmann <pcg@goof.com>
32
33 * i386/xm-go32.h (EXECUTABLE_SUFFIX): Define.
34 (DIR_SEPARATOR, NO_SYS_SIGLIST): Likewise.
35
7567d496
MH
36Thu Dec 11 23:55:17 1997 Manfred Hollstein <manfred@s-direktnet.de>
37
38 * fixincludes (str{len,spn,cspn} return value): Handle different
39 layout on sysV88.
40 (hypot): Provide a fake for hypot which is broken on
41 m88k-motorola-sysv3.
42
0a6969ad
JC
43Thu Dec 11 23:50:17 1997 John F. Carr <jfc@mit.edu>
44
45 * tree.c, tree.h: Change tree_code_type, tree_code_length, and
46 tree_code_name from pointers to arrays.
47 * tree.c: Remove standard_tree_code_* variables, no longer used.
48 * print-tree.c: Remove declaration of tree_code_name.
49
50 * cp/lex.c (init_lex): Update for tree_code_* changes.
51 * objc/objc-act.c (init_objc): Likewise.
52
53 * tree.def, cp/cp-tree.def, objc/objc-tree.def: Update for tree_code
54 changes.
55
c55dcc7d
FF
56Thu Dec 11 23:34:54 1997 Fred Fish <fnf@ninemoons.com>
57
58 * config.sub: Add support for BeOS target.
59 * configure.in: Likewise.
60 * ginclude/stdarg.h: Likewise.
61 * ginclude/stddef.h: Likewise.
62 * ginclude/varargs.h: Likewise.
63 * rs6000/beos.h: New file for BeOS.
64 * rs6000/t-beos: Likewise.
65 * rs6000/x-beos: Likewise.
66 * rs6000/xm-beos.h: Likewise.
67 * toplev.c (get_run_time): Just return 0 on BeOS.
68
9cf3ae46
JL
69Thu Dec 11 23:25:23 1997 Jeffrey A Law (law@cygnus.com)
70 Toon Moene (toon@moene.indiv.nluug.nl)
71
72 * m68k.h (GO_IF_LEGITIMATE_ADDRESS): No longer cater to horribly
73 old and broken Sun3 assemblers. Newer versions handle large
74 offsets correctly as does the GNU assembler.
75
7cc273ad
L
76Thu Dec 11 23:06:48 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
77
78 * objc/objc-act.c (lang_report_error_function): Disable.
79 * objc/objc-parse.y: Include "output.h".
80 (yyerror): Remove redundant decl.
81 (yyprint): Fix prototype.
82 (apply_args_register_offset): Remove redundant decl.
83 (get_file_function_name): Likewise.
84
74d7ab55
JM
85Thu Dec 11 22:02:10 1997 Jason Merrill <jason@yorick.cygnus.com>
86
87 * flow.c (find_basic_blocks): A CALL_INSN that can throw starts
88 a new basic block.
89 (find_basic_blocks_1): Likewise.
90
0776059e
JM
91Thu Dec 11 21:08:48 1997 Jason Merrill <jason@yorick.cygnus.com>
92
93 * except.c (use_eh_context): Don't copy_rtx a REG.
94 (emit_throw): Lose old unwinder support.
95 (expand_internal_throw): Likewise.
96 * libgcc2.c (struct eh_context): Likewise.
97 (new_eh_context): Likewise.
98 (__get_eh_info): Lose redundant cast.
99 (__get_dynamic_handler_chain): Likewise.
100 (__get_saved_pc): Lose.
101 Lose all old unwinder support code.
102
154bba13
TT
103Thu Dec 11 20:42:18 1997 Teemu Torma <tot@trema.com>
104
105 Thread-safe EH support for pthreads, DCE threads and Solaris threads.
106
107 * integrate.c (expand_inline_function): If the inline fn uses eh
108 context, make sure that the current fn has one.
109 * toplev.c (rest_of_compilation): Call emit_eh_context.
110 * except.c (use_eh_context): New fn.
111 (get_eh_context_once): New fn.
112 (call_get_eh_context): New fn.
113 (emit_eh_context): New fn.
114 (get_eh_context): Call either get_eh_context_once or
115 call_get_eh_context, depending on what we have.
116 (get_dynamic_handler_chain): Call get_eh_context_once.
117 * except.h: Prototypes for fns above.
118 * optabs.c (get_eh_context_libfunc): Removed.
119 (init_optabs): Don't initialize it.
120 * expr.h (get_eh_context_libfunc): Removed.
121 * rtl.h, rtl.c: New reg_note REG_EH_CONTEXT.
122 * config/pa/pa.h (CPP_SPEC): Support for -threads.
123 * config/pa/pa-hpux10.h (LIB_SPEC): Ditto.
124 * config/pa/t-pa (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
125 New multilib for -threads.
126 * config/sparc/t-sol2: Added multilibs for -threads and
127 made -pthreads alias to it.
128 * config/sparc/sol2.h (CPP_SPEC, LIB_SPEC):
129 Added -threads and -pthreads options.
130 * libgcc-thr.h: New file.
131 * libgcc2.c: (__get_cpp_eh_context): Removed.
132 (struct cpp_eh_context): Removed.
133 (struct eh_context): Replaced cpp_eh_context with generic language
134 specific pointer.
135 (__get_eh_info): New function.
136 (__throw): Check eh_context::info.
137 (__sjthrow): Ditto.
138 * libgcc2.c: Include libgcc-thr.h.
139 (new_eh_context, __get_eh_context,
140 eh_pthread_initialize, eh_context_initialize, eh_context_static,
141 eh_context_specific, eh_context_free): New functions.
142 (get_eh_context, eh_context_key): New variables.
143 (__sjthrow, __sjpopnthrow, __eh_pcnthrow, __throw): Use
144 get_eh_context to get the context.
145 (longjmp): Move the declaration inside
146 #ifdef DONT_USE_BUILTIN_SETJMP.
147 * frame.c: Include libgcc-thr.h.
148 (object_mutex): Mutex to protect the object list.
149 (find_fde, __register_frame, __register_frame_table,
150 __deregister_frame): Hold the lock while accessing objects.
151 * except.h (get_eh_context): Declare.
152 * except.c (current_function_ehc): Define.
153 (current_function_dhc, current_function_dcc): Removed.
154 (get_eh_context): New function.
155 (get_dynamic_handler_chain): Use get_eh_context.
156 (get_saved_pc_ref): Ditto.
157 (get_dynamic_cleanup_chain): Removed references to
158 current_function_dcc.
159 (save_eh_status, restore_eh_status): Save and restore
160 current_function_ehc instead.
161 * optabs.c (get_eh_context_libfunc): New variable.
162 (init_optabs): Initialize it.
163 * expr.h: Declare get_eh_context_libfunc.
164 * function.h (struct function): Replaced dhc and dcc with ehc.
165 * except.c (get_saved_pc_ref): New functions.
166 (eh_saved_pc_rtx, eh_saved_pc): Deleted.
167 (expand_internal_throw_indirect): Use get_saved_pc_ref() instead
168 of eh_saved_pc.
169 (end_eh_unwinder): Likewise.
170 (init_eh): Remove initialization of eh_saved_pc.
171 * optabs.c (get_saved_pc_libfunc): New variable.
172 (init_optabs): Initialize it.
173 * expr.h: Declare get_saved_pc_libfunc.
174 * except.h (eh_saved_pc_rtx): Deleted.
175 (get_saved_pc_ref): Declared.
176
177 From Scott Snyder <snyder@d0sgif.fnal.gov>:
178 * libgcc2.c (__get_saved_pc): New.
179 (__eh_type, __eh_pc): Deleted.
180 (__eh_pcnthrow): Use __get_saved_pc() instead of __eh_pc.
181 (__get_dynamic_handler_chain): Move __dynamic_handler_chain inside
182 this fcn.
183
68d75312
JC
184Thu Dec 11 17:23:48 1997 John F. Carr <jfc@mit.edu>
185
b16d8734
JC
186 * sparc/sol2.h: Use 64 bit multiply and divide functions in
187 Solaris libc. Define TARGET_LIVE_G0 and TARGET_BROKEN_SAVERESTORE
188 as 0.
189
68d75312
JC
190 * rtl.h (global_rtl): New variable, replacing separate variables for
191 commonly used rtl.
192 (const_int_rtx): Now array of rtx_def, not rtx.
193 * emit-rtl.c: Update for new rtl data structures.
194 * genattrtab.c: Define global_rtl.
195
44517326 196Thu Dec 11 15:50:29 1997 David Edelsohn <edelsohn@mhpcc.edu>
f40421ce 197
44517326
DE
198 * configure.in ({rs6000,powerpc}-*-*): Enable Haifa scheduler by
199 default.
f40421ce 200
8587487b
AG
201Wed Dec 10 12:30:18 1997 Anthony Green <green@cygnus.com>
202
203 * crtstuff.c (__do_global_ctors): Fix typo.
204
08ce3276
MH
205Tue Dec 9 09:43:59 1997 Manfred Hollstein <manfred@s-direktnet.de>
206
207 * toplev.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
208 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
209
c229cba9
DE
210Tue Dec 9 09:38:58 1997 David Edelsohn <edelsohn@mhpcc.edu>
211
212 * rs6000.h (FUNCTION_ARG_PADDING): Define.
213 * rs6000.c (function_arg_padding): New function.
214
b2c59d0b
MH
215Tue Dec 9 10:34:21 1997 Manfred Hollstein <manfred@s-direktnet.de>
216
217 * m68k.c: Include tree.h only once.
218
c1132c27
RK
219Tue Dec 9 09:32:33 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
220
221 * integrate.c (save_for_inline_copying): Make a new reg_parm_stack_loc.
222
ac957f13
JL
223Tue Dec 9 01:16:06 1997 Jeffrey A Law (law@cygnus.com)
224
225 * Partially cleaned up prototyping code from HJ.
a1d061a1 226 * tree.h: Add many prototypes.
ac957f13
JL
227 * haifa-sched.c (haifa_classify_insn): Renamed from classify_insn.
228 All references changed.
229 * rtl.h: Protect from multiple inclusions. Add many prototypes.
230
f40421ce 231Tue Dec 9 01:15:15 1997 Fred Fish <fnf@ninemoons.com>
ac957f13
JL
232
233 * libgcc2.c (string.h): Hoist inclusion to occur before first use of
234 string functions like strlen.
235
0a232106
MH
236Tue Dec 9 00:57:38 1997 Manfred Hollstein <manfred@s-direktnet.de>
237
238 * configure.in: Check for functions getrlimit and setrlimit.
239 * cccp.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
240 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
241
25b76cc1
JS
242Mon Dec 8 23:53:26 1997 Jay Sachs <sachs@bull.cs.williams.edu>
243
244 * Makefile.in (compare*): Handle losing behavior from 4.4bsd make.
245
26250081
RH
246Mon Dec 8 21:03:28 1997 Richard Henderson <rth@cygnus.com>
247
248 * alpha.c (REG_RA, alpha_return_addr, output_epilog):
249 Fix merge problems.
250
251 * alpha.c (override_options): Don't know about scheduling for EV6.
252 * alpha.md (ev5 function units): Don't overload as ev6.
253
254 * alpha.c (alpha_adjust_cost): Simplify. Fix typo in ev5 mult case.
255 * alpha.md (define_attr type): Add mvi.
256 (ev5_e0): Define sceduling parameters for it.
257 (TARGET_MAX insns): Type is mvi not shift.
258
7120f213
RH
259Mon Dec 8 18:15:00 1997 Richard Henderson <rth@cygnus.com>
260
261 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix backported gcc-2.8 bug.
262
afa80947
R
263Mon Dec 8 21:17:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
264
265 * cstamp-h, auto-config.h: Delete.
266
51ca169b
JL
267Sun Dec 7 19:19:03 1997 Jeffrey A Law (law@cygnus.com)
268
269 * version.c: Bump for snapshot.
270
16169366
JL
271Sat Dec 6 22:22:22 1997 Jeffrey A Law (law@cygnus.com)
272
273 * cccp.c: Fix typo brought over in merge.
274
efeb5d4f 275 * Merge in changes from gcc-2.8.
0fe09481 276
da932f04
JL
277Mon Nov 3 05:45:32 1997 Philippe De Muyter <phdm@macqel.be>
278
279 * m68k.c: Include tree.h for dwarf2out_cfi_label.
280
281 * gcc.c (process_command): Do not take address of function fatal when
282 calling lang_specific_driver.
283
284Sat Dec 6 01:02:38 1997 Mumit Khan <khan@xraylith.wisc.edu>
285
286 * config/i386/cygwin32.h (DWARF2_UNWIND): Exception handling
287 doesn't work with it yet, so set it to 0.
288 * config/i386/xm-cygwin32.h (NO_SYS_SIGLIST): Define.
289
290Sat Dec 6 01:01:02 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
291
292 * cse.c (cse_insn): Check for invalid entries when taking references.
293
81797aba
JL
294Fri Dec 5 18:26:25 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
295
296 * loop.c (invariant_p): Don't test flag_rerun_loop_opt.
297 (loop_optimize, scan_loop, strength_reduce): New argument unroll_p.
298 * toplev.c (rest_of_compilation): Pass it. Remove code to
299 save / clear / restore flag_unroll_{,all_}loops.
300
301Fri Dec 5 16:26:03 1997 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
302
303 * i386.c (notice_update_cc): Remove bogus pentium GCC code.
304
305Fri Dec 5 16:25:14 1997 Jeffrey A Law (law@cygnus.com)
306
307 * stmt.c (warn_if_unused_value): Don't warn for TRY_CATCH_EXPR.
308
5dfa7520
JM
309Thu Dec 4 11:51:00 1997 Jason Merrill <jason@yorick.cygnus.com>
310
d07daca1
JM
311 * except.c (get_dynamic_handler_chain): Only make the call once per
312 function.
313
5dfa7520
JM
314 * except.c (expand_end_all_catch): Fix for sjlj exceptions.
315
4d7b7169
R
316Thu Dec 4 12:30:40 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
317
318 * sh.c (final_prescan_insn): Use local label prefix
319 when emitting .uses pseudo-ops.
320
e701eb4d
JM
321Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
322
323 * libgcc2.c (__throw): Use __builtin_return_addr instead of __eh_pc.
324 * except.c: Lose outer_context_label_stack.
325 (expand_eh_region_end): Rethrow from outer_context here.
326 (expand_fixup_region_end): Let expand_eh_region_end do the rethrow.
327 (expand_internal_throw): Take no args.
328 (expand_internal_throw_indirect): Lose.
329 (expand_leftover_cleanups, expand_start_all_catch): Use expand_rethrow.
330 (expand_start_all_catch): Start a rethrow region.
331 (expand_end_all_catch): End it.
332 (expand_rethrow): New fn.
333 * except.h: Reflect above changes.
334 * flow.c: Revert change of Nov 27.
335
6a242b6a
JL
336Thu Dec 4 00:24:09 1997 Jeffrey A Law (law@cygnus.com)
337
338 * i386/t-sol2 (CRTSTUFF_T_CFLAGS): Turn on the optimizer.
339
9762d48d
JM
340Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
341
342 * except.c (expand_fixup_region_end): New fn.
343 (expand_fixup_region_start): Likewise.
344 (expand_eh_region_start_tree): Store cleanup into finalization here.
345 * stmt.c (expand_cleanups): Use them to protect fixups.
346
868e82ab
GK
347Wed Dec 3 11:41:13 1997 Gavin Koch <gavin@cygnus.com>
348
349 * mips/mips.md (muldi3_r4000): Broaden the output template
350 and attribute assignments to handle three operand dmult;
351 rename to muldi3_internal2.
352 (muldi3): Call the new muldi3_internal2 for R4000, and
353 any GENERATE_MULT3 chip.
354
716cc7f7
JM
355Tue Dec 2 19:40:43 1997 Jason Merrill <jason@yorick.cygnus.com>
356
357 * stmt.c (expand_decl_cleanup): Update thisblock after eh_region_start.
358
9fb82071
JW
359Tue Dec 2 12:54:33 1997 Jim Wilson <wilson@cygnus.com>
360
361 * unroll.c (find_splittable_givs): Remove last change. Handle givs
362 with a dest_reg that was created by loop.
363
f2d76545
JL
364Sat Nov 29 12:44:57 1997 David Edelsohn <edelsohn@mhpcc.edu>
365
366 * rs6000.c (function_arg_partial_nregs): Undo Nov. 26 patch.
367
368 * rs6000/aix41.h (ASM_CPU_SPEC): Define.
369
b4dfb707
JL
370Fri Nov 28 10:00:27 1997 Jeffrey A Law (law@cygnus.com)
371
372 * configure.in: Fix NCR entries.
373
80c2681c
JL
374Thu Nov 27 12:20:19 1997 Jeffrey A Law (law@cygnus.com)
375
586a5f99
JL
376 * flow.c (find_basic_blocks): Handle cfg issues for rethrows and
377 nested exceptions correctly.
378
80c2681c
JL
379 * unroll.c (find_splittable_givs): Don't split givs with a dest_reg
380 that was created by loop.
381
f45ebe47
JL
382Thu Nov 27 09:34:58 1997 Jason Merrill <jason@yorick.cygnus.com>
383
384 * expr.c (preexpand_calls): Don't look past a TRY_CATCH_EXPR.
385
386 * except.c (expand_start_all_catch): One more do_pending_stack_adjust.
387
034e84c4
MM
388Wed Nov 26 15:47:30 1997 Michael Meissner <meissner@cygnus.com>
389
8fbd2dc7
MM
390 * rs6000.c (SMALL_DATA_REG): Register to use for small data relocs.
391 (print_operand): Use SMALL_DATA_REG for the register involved in
392 small data relocations.
393 (print_operand_address): Ditto.
394
395 * rs6000/linux.h (LINK_SPEC): Pass -dynamic-linker /lib/ld.so.1 if
396 -dynamic linker is not used.
397
a226df46
MM
398 * rs6000.md (call insns): For local calls, use @local suffix under
399 System V. Don't use @plt under Solaris.
400
034e84c4
MM
401 * rs6000.c (output_function_profiler): Put label address in r0, and
402 store LR in 4(sp) for System V/eabi.
403
404 * rs6000.h (ASM_OUTPUT_REG_{PUSH,POP}): Keep stack aligned to 16
405 byte boundary, and maintain stack backchain.
406
f2d76545
JL
407Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
408
409 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
410 fix_truncsfdi2): Change *.
411
33e5c8c3
JM
412Wed Nov 26 11:12:26 1997 Jason Merrill <jason@yorick.cygnus.com>
413
414 * toplev.c (main): Complain about -gdwarfn.
415
f45ebe47
JL
416Tue Nov 25 22:43:30 1997 Jason Merrill <jason@yorick.cygnus.com>
417
418 * dwarfout.c (output_type): If finalizing, write out nested types
419 of types we've already written.
420
92dcf4c8
MM
421Tue Nov 25 20:32:24 1997 Michael Meissner <meissner@cygnus.com>
422
423 (patches originally from Geoffrey Keating)
424 * rs6000.c (function_arg): Excess floating point arguments don't
425 go into GPR registers after exhausting FP registers under the
426 System V.4 ABI.
427 (function_arg_partial_nregs): Ditto.
428
429 * rs6000.md (call insns): If -fPIC or -mrelocatable, add @plt
430 suffix to calls.
431
f4744807
JM
432Tue Nov 25 23:37:27 1997 Jason Merrill <jason@yorick.cygnus.com>
433
434 * integrate.c (output_inline_function): Just unset DECL_INLINE.
435
436Tue Nov 25 23:33:29 1997 scott snyder <snyder@d0sgif.fnal.gov>
437
438 * dwarf2out.c (outout_call_frame_info): Ensure that the info has
439 proper alignment.
440
441 * libgcc2.c (__throw): Initialize HANDLER.
442
0609f021
JW
443Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
444
445 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
446 fix_truncsfdi2): Change *X to ?*X.
447
c905c108
RH
448Tue Nov 25 10:00:42 1997 Richard Henderson (rth@cygnus.com)
449
450 * alpha.h (CONST_OK_FOR_LETTER): Fix 'L' handling.
451
5041a61c
JL
452Tue Nov 25 10:00:42 1997 Jeffrey A Law (law@cygnus.com)
453
454 * crtstuff.c (do_global_dtors_aux): Handle multiple calls better.
455
bb727b5a
JM
456Tue Nov 25 01:26:55 1997 Bruno Haible <haible@ilog.fr>:
457
458 * dwarf2out.c (ASM_OUTPUT_DWARF_DELTA1): Implement.
459
460Mon Nov 24 22:41:55 1997 Jason Merrill <jason@yorick.cygnus.com>
461
462 * except.c (get_dynamic_handler_chain): Build up a FUNCTION_DECL.
463 * optabs.c (init_optabs): Lose get_dynamic_handler_chain_libfunc.
464 * expr.h: Likewise.
465
f45ebe47
JL
466Sat Nov 22 18:58:20 1997 Jeffrey A Law (law@cygnus.com)
467
468 * pa-hpux10.h (NEW_HP_ASSEMBLER): Define.
469 * pa.h (LEGITIMATE_CONSTANT_P): Reject LABEL_REFs if not using
470 gas and not using the new HP assembler.
471
ef85603e
JL
472Fri Nov 21 15:20:05 1997 Jeffrey A Law (law@cygnus.com)
473
474 * Makefile.in (program_transform_cross_name): Clean up "-e" confusion.
475 (GCC_INSTALL_NAME, GCC_CROSS_NAME): Likewise.
476
6cc1f5cb
AC
477Fri Nov 21 19:37:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
478
479 * config/mips/elf64.h (MULTILIB_DEFAULTS): Test for
480 TARGET_ENDIAN_DEFAULT == zero instead of testing for macro
481 definition.
482
72eb1038
BH
483Fri Nov 21 12:49:56 1997 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
484
485 * stmt.c (expand_end_bindings): Allow jump into block with cleanups.
486
1418bb67
JM
487Fri Nov 21 12:18:51 1997 Jason Merrill <jason@yorick.cygnus.com>
488
489 * except.h: Add outer_context_label_stack.
490 * except.c: Likewise.
491 (expand_start_all_catch): Push the outer_context for the try block
492 onto outer_context_label_stack.
493 (expand_end_all_catch): Use it and pop it.
494
9dab7833
RL
495Fri Nov 21 10:13:11 1997 Robert Lipe (robertl@dgii.com)
496
497 * i386/sco5.h (HAVE_ATEXIT): Revert last change.
498
858e4e8c
RH
499Thu Nov 20 16:11:50 1997 Richard Henderson <rth@cygnus.com>
500
501 * alpha.c (alpha_emit_set_const_1): Handle narrow hosts better.
502
a21d14e9
KK
503Thu Nov 20 16:11:50 1997 Klaus Kaempf <kkaempf@progis.de>
504
505 * alpha/vms.h (ASM_OUTPUT_ADDR_VEC_ELT): Add an L for the local label
506 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
507
ced78d8b
JM
508Thu Nov 20 14:42:15 1997 Jason Merrill <jason@yorick.cygnus.com>
509
510 * Makefile.in (LIB2FUNCS): Remove C++ memory management support.
511 * libgcc2.c: Remove __builtin_new, __builtin_vec_new, set_new_handler,
512 __builtin_delete, and __builtin_vec_delete.
513
514 * except.c (output_exception_table): Don't bother with
515 __EXCEPTION_END__.
516
a09ff88b
JL
517Thu Nov 20 16:11:50 1997 Jeffrey A Law (law@cygnus.com)
518
1b8b89f1
JL
519 * pa.md (pre_stwm, post_stwm, pre_ldwm, post_ldwm): Base register
520 is an in/out operand.
521 (zero extended variants of stwm/stwm patterns): Similarly.
522
a09ff88b
JL
523 * mips/x-iris (FIXPROTO_DEFINES): Add -D_SGI_SOURCE.
524
7bb9fb0e
JM
525Thu Nov 20 13:19:32 1997 Jason Merrill <jason@yorick.cygnus.com>
526
527 * dwarf2out.c (ASM_OUTPUT_DWARF_OFFSET4): Rename from VALUE4.
528 Use assemble_name.
529 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Use assemble_name.
530 (output_call_frame_info): Emit a \n after using it.
531
9101297d
DL
532Thu Nov 20 00:38:46 1997 Dave Love <d.love@dl.ac.uk>
533
534 * configure.in: Add AC_ARG_ENABLE for Haifa as documentation.
535
2ed2af28
PDM
536Wed Nov 19 12:03:04 1997 Philippe De Muyter <phdm@macqel.be>
537
538 * dwarf2out.c (CIE_LENGTH_LABEL, FDE_LENGTH_LABEL): New macros.
539 (ASM_OUTPUT_DWARF_VALUE4): New macro.
540 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Define if SET_ASM_OP is
541 defined.
542 (output_call_frame_info): Do not output forward label differences
543 if ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL is defined.
544 * m68k/mot3300.h (SET_ASM_OP): Define when not using gas.
545
4dff12bf
R
546Tue Nov 18 23:03:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
547
548 * sh.md (attribute "type"): Add nil.
549 (movsi_ie): y/y alternative is type nil.
550 (movsf_ie): Replace ry/yr/X alternative by r/y/X , y/r/X and y/y/X
551 alternatives.
552 (movsf_ie+1): Delete.
553
218c2cdb
JW
554Tue Nov 18 15:39:59 1997 Jim Wilson <wilson@cygnus.com>
555
556 * mips/mips.c (save_restore_insns): If gp_offset or fp_offset are
557 large_int, emit two insns instead of one splitable insn.
558 * dwarf2out.c (dwarf2out_frame_debug): When set cfa_store_offset
559 from cfa_temp_value, use cfa_offset. Add assert checking that
560 cfa_reg is SP.
561
d5b79362
TT
562Mon Nov 17 15:35:38 1997 Tom Tromey <tromey@cygnus.com>
563
564 * cccp.c (deps_output): Properly quote file names for make.
565
de1ea87a
JL
566Mon Nov 17 13:21:40 1997 Jeffrey A Law (law@cygnus.com)
567
568 * t-h8300 (MULTILIB_EXCEPTIONS): Define.
569
cb0112a7
RL
570Fri Nov 7 15:33:11 1997 Robert Lipe (robertl@dgii.com)
571
572 * i386/sco5.h (HAVE_ATEXIT): Delete definition.
573
85c3ba60
JL
574Sun Nov 16 23:52:48 1997 Jeffrey A Law (law@cygnus.com)
575
576 * cse.c (cse_insn): Don't look at JUMP_LABEL field of a conditionl
577 return.
578 (cse_end_of_basic_block): Similarly.
579
9155d500
KJ
580Sun Nov 16 23:01:40 1997 J. Kean Johnston <jkj@sco.com>
581
582 * i386/sco5.h (ASM_OUTPUT_ALIGNED_BSS): Define.
583 (SELECT_RTX_SECTION): Define.
584 (LIBGCC_SPEC, LIB_SPEC): Do the right thing for PIC.
585
4931312c
MH
586Sun Nov 16 22:47:03 1997 Manfred Hollstein <manfred@s-direktnet.de>
587
588 * Makefile.in (compare, compare-lean): Define $stage for each
589 shell command.
590 (gnucompare, gnucompare-lean): Likewise.
591
8dfe3c62
RH
592Sun Nov 16 22:02:16 1997 Richard Henderson (rth@cygnus.com)
593
594 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix offsets.
595
596 * alpha.h (ASM_OUTPUT_ADDR_DIFF_ELT): Add an L for the local label
597 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
598
874a8709
FF
599Fri Nov 14 09:09:20 1997 Fred Fish (fnf@cygnus.com)
600
601 * dwarfout.c (byte_size_attribute): Add local var upper_bound
602 and add case to handle STRING_TYPE.
603 * dwarfout.c (output_string_type_die): Fix code to generate
604 correct string length attribute for fixed length strings.
605 Still needs support for varying length strings.
606
ea466196
JL
607Fri Nov 14 08:46:56 1997 Jeffrey A Law (law@cygnus.com)
608
609 * toplev.c (get_run_time): Do something sensible for cygwin32.
610
202f590e
RH
611Fri Nov 14 07:24:20 1997 Richard Henderson <rth@cygnus.com>
612
f35bcbc5
RH
613 * expr.c (expand_builtin_setjmp): Set
614 current_function_has_nonlocal_label.
615 * stupid.c (stupid_life_analysis): If has_nonlocal_label, kill
616 call-saved registers across calls.
617
618 * alpha.md (exception_receiver): Remove.
619 (nonlocal_goto_receiver_osf): New
620 (nonlocal_goto_receiver_vms): Renamed from nonlocal_goto_receiver.
621 (nonlocal_goto_receiver): New, select _osf or _vms.
622
531ea24e
RH
623 * alpha.c (output_prolog [*]): Prefix entry labels with '$' to
624 keep them from being propogated to the object file.
625 (alpha_write_linkage): Likewise.
626 * alpha.md (call_vms): Likewise.
627 (call_value_vms): Likewise.
628 (unnamed osf call insns): Likewise.
629
630 * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Don't omit L from local label.
631 (ASM_GENERATE_INTERNAL_LABEL): Likewise.
632
202f590e
RH
633 * alpha.c (call_operand): Any reg is valid for WinNT.
634 * alpha.md (call_nt, call_value_nt): Don't force address into $27.
635 (anon nt calls): Add 'R' alternative.
636 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE,
637 INITIALIZE_TRAMPOLINE): Handle lack of original $27 and 32-bit ptrs.
638
238ad62b
JL
639Fri Nov 14 06:59:33 1997 Jeffrey A Law (law@cygnus.com)
640
f78b5ca1
JL
641 * calls.c (expand_call): Handle pcc_struct_value correctly for C++.
642
238ad62b
JL
643 * i386/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Delete defines.
644 * i386/xm-mingw32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
645 * rs6000/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
646
da275344
MM
647Thu Nov 13 20:37:33 1997 Michael Meissner <meissner@tiktok.cygnus.com>
648
649 * reload1.c (new_spill_reg): Improve fixed or forbidden register
650 spill error message.
651
1f1e1545
KG
652Thu Nov 13 20:29:08 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
653
654 * prefix.c: Use stdarg.h only ifdef __STDC__. Otherwise,
655 use varargs.h. Wrap header with <>, not "".
656
daa4b717
JL
657Thu Nov 13 20:21:17 1997 Jeffrey A Law (law@cygnus.com)
658
659 * integrate.c (save_for_inline_copying): Add return value from
660 savealloc.
661
9bb5394e
BK
662Thu Nov 13 19:12:33 1997 Brendan Kehoe <brendan@cygnus.com>
663
664 * fixincludes: Be a little more restrictive on what we will
665 substitute to replace definitions of MAXINT for HPUX.
666
9571f69b
MM
667Thu Nov 13 18:41:02 1997 Michael Meissner <meissner@cygnus.com>
668
669 * dbxout.c (dbxout_symbol_location): Don't assume that variables
670 whose address is the stack or argument pointers are indirect
671 pointers.
672
e7cbb6b6
PE
6731997-11-13 Paul Eggert <eggert@twinsun.com>
674
675 * cccp.c, cpplib.c (compare_defs):
676 Don't complain about arg name respellings unless pedantic.
677 * cpplib.c (compare_defs): Accept pfile as new arg.
678 All callers changed.
679
9f29ca78
R
680Thu Nov 13 23:33:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
681
682 * fold-const.c (fold_truthop): Fix bug in last change.
683
41c9120b
PE
6841997-11-13 Paul Eggert <eggert@twinsun.com>
685
686 Fix some confusion with IEEE minus zero.
687
688 * real.h (REAL_VALUES_IDENTICAL): New macro.
689
690 * expr.c (is_zeros_p): Don't consider -0.0 to be all zeros.
691 * fold-const.c (operand_equal_p): Don't consider -0.0 to be
692 identical to 0.0.
693 * tree.c (simple_cst_equal): Don't consider -0.0 to have the
694 same tree structure as 0.0.
695
696 * varasm.c (immed_real_const_1): Use new REAL_VALUES_IDENTICAL
697 macro instead of doing it by hand.
698
323d8e7b
JL
699Thu Nov 13 16:56:14 1997 Jeffrey A Law (law@cygnus.com)
700
701 * v850/lib1funcs.asm: Minor whitespace changes.
702 * v850.c: Fix minor formatting problems in many places.
703 (construct_restore_jr, construct_save_jarl): Remove unwanted aborts.
704
13529ea4
JW
705Thu Nov 13 12:53:44 1997 Jim Wilson <wilson@cygnus.com>
706
707 * mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete code swapping xplus0 and
708 xplus1 when xplus0 is not a register.
709
759c135e
JL
710Thu Nov 13 11:41:42 1997 Jeffrey A Law (law@cygnus.com)
711
8930b063
JL
712 * flow.c (find_basic_blocks): During marking phase, if we encounter
713 an insn with a REG_LABEL note, make the target block live and
714 create an edge from the insn to the target block. Do not make
715 edges from all blocks to the target block.
716
0be28489
JL
717 * m68k/x-next (OTHER_FIXINCLUDES_DIRS): Include /NextDeveloper/Headers.
718
759c135e
JL
719 * confiugre.in: Tweak NCR entries.
720 * configure: Rebuilt.
721
47ad8c61
MM
722Thu Nov 13 11:07:41 1997 Michael Meissner <meissner@cygnus.com>
723
724 * rs6000.c (num_insns_constant): Use REAL_VALUE_FROM_CONST_DOUBLE to
725 pick apart floating point values, instead of using CONST_DOUBLE_LOW
726 and CONST_DOUBLE_HIGH.
727
728 * rs6000.md (define_splits for DF constants): Use the appropriate
729 REAL_VALUE_* interface to pick apart DF floating point constants in
730 a machine independent fashion.
731
5a6b3365
R
732Thu Nov 13 00:06:58 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
733
734 * fold-const.c (fold_truthop): When changing a one-bit comparison
735 against zero into a comparison against mask, do a proper sign
736 extension.
737
2ec1535d
JL
738Wed Nov 12 09:37:01 1997 Jeffrey A Law (law@cygnus.com)
739
3a88cbd1
JL
740 * except.c: Do not include "assert.h".
741 (save_eh_status): Turn asserts into conditional aborts.
742 (restore_eh_status, scan_region): Likewise.
743 * dwarfout.c: Do not include "assert.h".
744 (bit_offset_attribute): Turn asserts into conditional aborts.
745 (bit_size_attribute, output_inlined_enumeration_type_die): Likewise.
746 (output_inlined_structure_type_die): Likewise.
747 (output_inlined_union_type_die): Likewise
748 (output_tagged_type_instantiation): Likewise.
749 (dwarfout_file_scope_decl): Likewise.
750 * dwarf2out.c: Do not include "assert.h"
751 (expand_builtin_dwarf_reg_size): Turn asserts into conditional aborts.
752 (reg_save, initial_return_save, dwarf2out_frame_debug): Likewise.
753 (add_child_die, modified_type_die, add_bit_offset_attribute): Likewise.
754 (add_bit_size_attribute, scope_die_for): Likewise.
755 (output_pending_types_for_scope): Likewise.
756 (get_inlined_enumeration_type_die): Likewise.
757 (get_inlined_structure_type_die): Likewise.
758 (get_inlined_union_type_die, gen_subprogram_die): Likewise.
759 (gen_tagged_type_instantiation_die): Likewise.
760
2ec1535d
JL
761 * flow.c (find_basic_blocks): Refine further to get a more correct
762 cfg, especially in the presense of exception handling, computed
763 gotos, and other non-trivial cases. Call abort if an inaccuracy
764 is detected in the cfg.
765
a6124a42
R
766Tue Nov 11 21:47:27 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
767
768 * glimits.h (SHRT_MIN): Define in a way suitable for 16 bit hosts.
769
770 * c-lex.c (whitespace_cr, skip_white_space_on_line): New functions.
771 (skip_white_space): Use whitespace_cr.
772 (check_newline): Handle whitespace more consistently.
773
8f3189a4
JW
774Tue Nov 11 16:25:49 1997 Jim Wilson <wilson@cygnus.com>
775
776 * i386/cygwin32.h (CPP_PREDEFINES): Delete -DPOSIX.
777 * i386/xm-cygwin32.h (POSIX): Define.
778
6d1350cd
GK
779Mon Nov 10 20:53:11 1997 Gavin Koch <gavin@cygnus.com>
780
781 * config/mips/mips.h (MASK_DEBUG_H): Set to zero, so this bit
782 is available elsewhere.
783
d1f4474e
DE
784Mon Nov 10 16:21:58 1997 Doug Evans <devans@canuck.cygnus.com>
785
786 * sparc/sparc.md (mov[sdt]f_const_insn): Fix condition to match
787 what the instruction can handle.
788
c7ae64f2
JM
789Mon Nov 10 03:02:19 1997 Jason Merrill <jason@yorick.cygnus.com>
790
791 * stmt.c (expand_decl_cleanup_no_eh): New fn.
792
793 * except.c (expand_leftover_cleanups): do_pending_stack_adjust.
794
ea64ef27
JL
795Mon Nov 10 00:05:56 1997 Jeffrey A Law (law@cygnus.com)
796
797 * alias.c (MAX_ALIAS_LOOP_PASSES): Define.
798 (init_alias_analysis): Break out of loops after MAX_ALIAS_LOOP_PASSES.
799
47ad8c61
MM
800Sun Nov 9 14:34:47 1997 David Edelsohn <edelsohn@mhpcc.edu>
801
802 * rs6000.md (lshrdi3_power): Delete '&' from first alternative and
803 swap instruction order.
804
0ff27f58
JL
805Sun Nov 9 02:07:16 1997 Jeffrey A Law (law@cygnus.com)
806
807 * fixinc.svr4 (__STDC__): Add another case.
808
7091039c
R
809Sun Nov 9 02:00:29 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
810
811 * a29k.h (ELIGIBLE_FOR_EPILOGUE_DELAY): Avoid loads from varying
812 addresses in the epilogue delay slot.
813
553914ad
MH
814Sun Nov 9 01:40:40 1997 Manfred Hollstein (manfred@s-direktnet.de)
815
816 * m88k/dgux.h (ASM_CPU_SPEC): Reformatted to suppress wrong whitespace
817 in generated `specs' file.
818
64fde701
JW
819Sun Nov 9 01:37:11 1997 Jim Wilson (wilson@cygnus.com)
820
821 * flags.h (flag_rerun_loop_opt): Declare.
822 * loop.c (invariant_p, case LABEL_REF): Check flag_rerun_loop_opt.
823 * toplev.c (flag_rerum_loop_opt): Delete static.
824
1245df60
R
825Sat Nov 8 18:20:21 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
826
1245df60
R
827 Bring over from FSF:
828
829 Thu Oct 30 12:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
830
831 * va-sh.h (__va_arg_sh1): Define.
832 (va_arg): Use it.
833 SH3E doesn't use any integer registers for subsequent arguments
834 once a non-float value was passed in the stack.
835 * sh.c (machine_dependent_reorg): If optimizing, put explicit
836 alignment in front label for ADDR_DIFF_VEC.
837 * sh.h (PASS_IN_REG_P): Fix SH3E case.
838 (ADJUST_INSN_LENGTH): If not optimizing, add two extra bytes length.
839
840 Tue Oct 28 15:06:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
841
842 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Undefine before including
843 svr4.h.
844
845 Mon Oct 27 16:11:52 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
846
847 * sh.c (machine_dependent_reorg): When -flag_delayed_branches,
848 put an use_sfunc_addr before each sfunc.
849 * sh.md (use_sfunc_addr, dummy_jump): New insns.
850 (casesi): For TARGET_SH2, emit a dummy_jump after LAB.
851
852 Tue Oct 21 07:12:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
853
854 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Don't redefine.
855
97991933
JM
856Fri Nov 7 10:22:24 1997 Jason Merrill <jason@yorick.cygnus.com>
857
858 * frame.c (add_fdes, count_fdes): Go back to checking pc_begin for
859 linked once FDEs.
860
eaf407a5
JL
861Wed Nov 5 14:26:05 1997 Jeffrey A Law (law@cygnus.com)
862
863 * alias.c (find_base_value): Only return the known base value for
864 pseudo registers.
865
4f9ca067
JW
866Wed Nov 5 11:27:14 1997 Jim Wilson <wilson@cygnus.com>
867
868 * i386.c (load_pic_register): Call prologue_get_pc_and_set_got.
869 * i386.md (prologue_set_got, prologue_get_pc): Add UNSPEC_VOLATILE
870 to pattern.
871 (prologue_get_pc_and_set_got): New pattern.
872
f4e31cf5
RH
873Tue Nov 4 20:36:50 1997 Richard Henderson (rth@cygnus.com)
874
875 * alpha.c (summarize_insn): Handle ASM_OPERANDS. Don't recurse
876 for SUBREG, just fall through.
877
878 * alpha.c (alpha_handle_trap_shadows): Init sum.defd to zero.
879
880 * alpha.md (attr trap): Make TRAP_YES non-zero for sanity's sake.
881
f754c4a1
JL
882Tue Nov 4 18:49:42 1997 Jeffrey A Law (law@cygnus.com)
883
3ed18aeb
JL
884 * fixincludes: Fix "hypot" prototype in NeXT math.h.
885
3fe40e05
JL
886 * Makefile.in (USE_ALLOCA): Always include alloca.o.
887 (USE_HOST_ALLOCA): Likewise.
888
f754c4a1
JL
889 * rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
890 and LABEL_REFS fields.
891 * rtl.h (LABEL_REFS): Update.
892
ab00eb0a
JW
893Tue Nov 4 16:55:11 1997 Jim Wilson <wilson@cygnus.com>
894
ff3467a9
JW
895 * combine.c (try_combine): When setting elim_i2, check whether newi2pat
896 sets i2dest. When calling distribute_notes for i3dest_killed, pass
897 elim_i2 and elim_i1. When setting elim_i1, check if newi2pat
898 sets i1dest.
899
4911814e
JW
900 * mips.md (insv, extzv, extv): Add change_address call.
901 (movsi_ulw, movsi_usw): Change QImode to BLKmode in pattern.
902
474eff88
JW
903 * integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
904
3feffdfe
JW
905 * reload.c (find_reloads, case 'm' and 'o'): Reject HIGH constants.
906
ab00eb0a
JW
907 * mips.c (mips_expand_epilogue): Emit blockage insn before call to
908 save_restore_insns if no FP and GP will be restored.
7636d567 909
31c8581d
JW
910 * dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
911 Convert CCmode to word_mode before calling GET_MODE_SIZE.
912
7636d567
JW
913 * acconfig.h (HAVE_INTTYPES_H): Undef.
914 * configure.in (inttypes.h): Check for conflicts between sys/types.h
915 and inttypes.h, and verify that intmax_t is defined.
916 * config/mips/x-iris (CC, OPT, OLDCC): Comment out.
917 * config/mips/x-iris3: Likewise.
918
73774bc7
JL
919Tue Nov 4 16:07:15 1997 Jeffrey A Law (law@cygnus.com)
920
921 * alias.c (find_base_value): When copying arguments, return the
922 tenative value for a hard register.
923
645ebf37
DE
924Tue Nov 4 13:40:35 1997 Doug Evans <devans@canuck.cygnus.com>
925
926 * c-lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
927 (yylex): Record wide strings using target endianness, not host.
928
f7620587
JL
929Tue Nov 4 13:13:12 1997 Jeffrey A Law (law@cygnus.com)
930
931 * mn10200.h (ASM_OUTPUT_BSS): Delete.
932 (ASM_OUTPUT_ALIGNED_BSS): New macro
933 * mn10300.h (ASM_OUTPUT_BSS): Delete.
934 (ASM_OUTPUT_ALIGNED_BSS): New macro.
935 * v850.h (ASM_OUTPUT_BSS): Delete.
936 (ASM_OUTPUT_ALIGNED_BSS): New macro.
937
1686f1a2
R
938Tue Nov 4 00:55:48 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
939
940 * profile.c (branch_prob): Insert an insn after a NOTE_INSN_SETJMP.
941
f6857708
JL
942Mon Nov 3 14:36:50 1997 Jeffrey A Law (law@cygnus.com)
943
944 * configure.in (sco5): Use cpio to install header files.
945
e566af04
MH
946Sun Nov 2 23:31:43 1997 Manfred Hollstein <manfred@s-direktnet.de>
947
948 * aclocal.m4 (conftestdata_from, conftestdata_to): Names shortened to
949 14 char length.
950 * configure: Rebuild.
951
cbd44549
RL
952Sun Nov 2 19:44:00 1997 Robert Lipe (robertl@dgii.com)
953
954 * i386/sco5.h: enable -gstabs once again.
955
56636818
JL
956Sun Nov 2 19:27:21 1997 Jeffrey A Law (law@cygnus.com)
957
958 * arm.c (output_move_double): Allocate 3 entries in otherops array.
959
9ad8a5f0
MS
960Sat Nov 1 21:43:00 1997 Mike Stump (mrs@wrs.com)
961
962 * except.c (expand_ex_region_start_for_decl): Emit EH_REGION_BEG
963 notes for sjlj exceptions too.
964 (expand_eh_region_end): Similarly for EH_REGION_END notes.
965 (exception_optimize): Optimize EH regions for sjlj exceptions too.
966 * final.c (final_scan_insn): Don't output labels for EH REGION
967 notes if doing sjlj exceptions.
968
f8671389
JL
969Sat Nov 1 19:15:28 1997 Jeffrey A Law (law@cygnus.com)
970
8072f69c
JL
971 * alias.c (init_alias_analysis): Handle -fno-alias-check when
972 optimizing correctly.
973
6cad9e32
JL
974 * expr.c (expand_builtin_setjmp): Don't emit a SETJMP note
975 or set current_function_calls_setjmp anymore.
976
f8671389
JL
977 * flow.c (find_basic_blocks): If we delete the label for an
978 exception handler, remove it from the EH label list and remove
979 the EH_BEGIN/EH_END notes for that EH region.
980
a886ae74
JM
981Sat Nov 1 16:44:49 1997 Jason Merrill (jason@cygnus.com)
982
983 * flow.c (find_basic_blocks): Generate correct flow control
984 information when exception handling notes are present.
985
c2c85462
JL
986Sat Nov 1 13:42:19 1997 Jeffrey A Law (law@cygnus.com)
987
988 * dwarf2out.c (output_call_frame_info): Fix length argument
989 to ASM_OUTPUT_ASCII.
990 (output_die, output_pubnames, output_line_info): Likewise.
991
8c316ae2
JL
992Fri Oct 31 07:10:09 1997 Jeffrey A Law (law@cygnus.com)
993
27ca375a
JL
994 * version.c: Bump for snapshot.
995
8d4e65a6
JL
996 * dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_ASCII to
997 output ASCII by default. Only use ASM_OUTPUT_DWARF_STRING if
998 flag_debug_asm is on.
999 (output_die, output_pubnames, output_line_info): Likewise.
1000
ec907dd8
JL
1001 * alias.c (init_alias_analysis): Add struct_value_incoming_rtx
1002 and static_chain_rtx into the potential base values array if
1003 they are registers.
1004
1005 * alias.c (new_reg_base_value): New array of potential base values.
1006 (unique_id): Now file scoped static.
1007 (find_base_value, case REG): Return the value in reg_base_value
1008 array for the REG if it exists. Else, return the value from
1009 new_reg_base_value if copying args and REG is a hard register.
1010 (find_base_value, case PLUS): If either operand of the PLUS is
1011 a REG, try to get its base value. Handle base + index and
1012 index + base.
1013 (record_set): Use new_reg_base_value instead of reg_base_value.
1014 (init_alias_analysis): Allocate space for new_reg_base_value too.
1015 Rework code to iterate over the insns propagating base value
1016 information until nothing changes.
1017
8c316ae2
JL
1018 * global.c (global_alloc): Free the conflict matrix after
1019 reload has finished.
1020
6874c264
JM
1021Fri Oct 31 01:45:31 1997 Jason Merrill <jason@yorick.cygnus.com>
1022
1023 * libgcc2.c (L_eh): Define __eh_pc.
1024 Replace __eh_type with generic pointer __eh_info.
1025
59fe8c2c
R
1026Fri Oct 31 00:34:55 1996 J"orn Rennecke <amylaar@cygnus.co.uk>
1027
1028 * expr.c (expand_increment): When enqueing a postincrement for a MEM,
1029 use copy_to_reg if address is not a general_operand.
1030
d1271ded
R
1031Fri Oct 31 00:16:55 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1032
1033 * profile.c (output_func_start_profiler): Clear flag_inline_functions
1034 for the duration of the call to rest_of_compilation.
1035
ac52b80b
DE
1036Thu Oct 30 14:40:10 1997 Doug Evans <devans@canuck.cygnus.com>
1037
1038 * configure.in (sparc-*-elf*): Use sparc/elf.h, sparc/t-elf.
1039 Set extra_parts.
1040 (sparc*-*-*): Recognize --with-cpu=v9.
1041 * sparc/elf.h: New file.
1042 * sparc/t-elf: New file.
1043
f8912297
JL
1044Thu Oct 30 13:26:12 1997 Jeffrey A Law (law@cygnus.com)
1045
1046 * mn10300.c (const_8bit_operand): New function.
1047 (mask_ok_for_mem_btst): New funtion.
1048 * mn10300.md (btst patterns with mem operands): Use new functions
1049 to avoid creating btst instructions with invalid operands.
1050
05ef204d
MM
1051Wed Oct 29 16:57:19 1997 Michael Meissner <meissner@cygnus.com>
1052
1053 * rs6000/xm-sysv4.h: Include xm-linux.h instead of xm-svr4.h if we
1054 are running on PowerPC Linux.
1055
feecabdf
GK
1056Wed Oct 29 13:10:11 1997 Gavin Koch <gavin@cygnus.com>
1057
1058 * config/mips/elf64.h (PREFERRED_DEBUGGING_TYPE): Only define
1059 if not previously defined.
1060
de957303
DE
1061Tue Oct 28 23:55:27 1997 Doug Evans (devans@cygnus.com)
1062
1063 * function.c (assign_parms): Correct mode of stack_parm if
1064 entry_parm underwent a mode conversion.
1065
ba3b3878
BK
10661997-10-28 Brendan Kehoe <brendan@lisa.cygnus.com>
1067
1068 * global.c (global_alloc): Use xmalloc instead of alloca for
1069 CONFLICTS, since max_allocno * allocno_row_words alone can be more
1070 than 2.5Mb sometimes.
1071
d540ae2c
RH
1072Tue Oct 28 15:29:15 1997 Richard Henderson <rth@cygnus.com>
1073
1074 * reload1.c (eliminate_regs [SET]): If [SUBREG] widened the mode of
1075 DEST for the spill, adjust mode of SRC to compensate.
1076
42f4929d
RH
1077Tue Oct 28 14:36:45 1997 Richard Henderson <rth@cygnus.com>
1078
1079 * alpha.md (reload_inqi): Check for MEM before strict_memory_address_p,
1080 since any_memory_operand() allows pseudos during reload.
1081 (reload_inhi, reload_outqi, reload_outhi): Likewise.
1082
08417478
JW
1083Tue Oct 28 11:53:14 1997 Jim Wilson <wilson@cygnus.com>
1084
1085 * m68k.md (btst patterns): Add 5200 support.
1086
750e8348
TM
1087Tue Oct 28 11:58:40 1997 Toon Moene <toon@moene.indiv.nluug.nl>
1088
1089 * fold-const.c (fold): For ((a * C1) / C3) or (((a * C1) + C2) / C3)
1090 optimizations, look inside dividend to determine if the expression
1091 can be simplified by using EXACT_DIV_EXPR.
1092
ede19932
JM
1093Tue Oct 28 10:19:01 1997 Jason Merrill <jason@yorick.cygnus.com>
1094
1095 From Brendan:
1096 * dwarf2out.c (output_call_frame_info): Use l1 instead of ".".
1097
66d91cb9
RH
1098Tue Oct 28 00:32:14 1997 Richard Henderson <rth@cygnus.com>
1099
1100 * alpha.c (summarize_insn [SUBREG]): Propogate SET.
1101
4f3f5e9f
RH
1102Mon Oct 27 23:59:26 1997 Richard Henderson <rth@cygnus.com>
1103
1104 * alpha.c (alpha_handle_trap_shadows): Don't call get_attr_trap
1105 on a CLOBBER.
1106
f3352b9e
RH
1107Mon Oct 27 21:25:20 1997 Richard Henderson <rth@cygnus.com>
1108
1109 * alpha.md (movqi, movhi): Make sure new insns created during reload
1110 won't need reloading themselves.
1111 (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Likewise.
1112
0cecc190
JL
1113Mon Oct 27 16:11:10 1997 Jeffrey A Law (law@cygnus.com)
1114
1115 * mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Disable reg+reg.
1116
a09ba5a2
RH
1117Sun Oct 26 13:50:44 1997 Richard Henderson <rth@cygnus.com>
1118
1119 * alpha.c (alpha_sa_mask [VMS]): Don't include $26 in the mask.
1120 Patch from Klaus Kaempf <kkaempf@progis.de>.
1121
7581a30f
JW
1122Sun Oct 26 13:31:47 1997 Jim Wilson (wilson@cygnus.com)
1123
1124 * expr.c (expand_expr, case INDIRECT_REF): Optimize a reference
1125 to an element in a constant string.
1126
d84e64d4
JM
1127Sun Oct 26 11:41:49 1997 Jason Merrill <jason@yorick.cygnus.com>
1128
1129 * dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32
1130 bit PC-relative offset. The exception range table pointer is now in
1131 the CIE.
1132 * frame.c (dwarf_cie, dwarf_fde): Rename CIE_pointer to CIE_delta.
1133 (count_fdes, add_fdes, get_cie): Adjust.
1134 (cie_info, extract_cie_info, __frame_state_for): Adjust eh_ptr uses.
1135
1136 From H.J. Lu:
1137 * frame.c (count_fdes, add_fdes): Skip linked once FDE entries.
1138
96286722
RH
1139Sun Oct 26 11:52:01 1997 Richard Henderson <rth@cygnus.com>
1140
1141 * alias.c (memrefs_conflict_p): Treat arg_pointer_rtx just
1142 like stack_pointer_rtx.
1143
e85988b5
MH
1144Sun Oct 26 11:32:16 1997 Manfred Hollstein <manfred@s-direktnet.de>
1145
361e618f
MH
1146 * Makefile.in (bootstrap-lean): Combined with `normal' bootstrap
1147 targets using "$@" to provide support for similar but not identical
1148 targets without having to duplicate code.
1149 (bootstrap4): New goal.
1150
e85988b5
MH
1151 * Makefile.in (compare, compare-lean, compare3): Combined to one
1152 ruleset determining actions to be performed via $@.
1153 (compare4, compare4-lean): New targets.
1154 (gnucompare, gnucompare3): Combined to one ruleset determining
1155 actions to be performed via $@. Also, note which files failed
1156 the comparison test in .bad_compare.
1157 (gnucompare-lean, gnucompare3-lean, gnucompare4-lean): New targets.
1158
91585c63
TM
1159Sun Oct 26 10:06:11 1997 Toon Moene <toon@moene.indiv.nluug.nl>
1160
1161 * fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
1162 if the dividend is a multiple of the divisor.
1163
da0af5a5
JL
1164Sun Oct 26 09:21:40 1997 Jeffrey A Law (law@cygnus.com)
1165
7337c67f
JL
1166 * Makefile.in (LIBGCC2_CFLAGS): Add -fexceptions.
1167
adb9effb 1168 * alias.c (find_base_term): Handle PRE_INC, PRE_DEC, POST_INC,
6d849a2a 1169 and POS_DEC.
6d849a2a
JL
1170
1171 * alias.c (true_dependence): Fix typo.
1172
6d6d0fa0
JL
1173 * toplev.c (flag_rerun_loop_opt): New variable.
1174 (f_options): Handle -frerun-loop-opt.
1175 (rest_of_compilation): If -frerun-loop-opt, then run the loop
1176 optimizer twice.
1177 (main): Enable -frerun-loop-opt by default for -O2 or greater.
1178
da0af5a5
JL
1179 * loop.c (simplify_giv_expr): Adding two invariants results
1180 in an invariant.
1181
ca0f2220
RH
1182Sun Oct 26 09:15:15 1997 Richard Henderson <rth@cygnus.com>
1183
1184 * expr.c (get_inner_reference): Remove the array bias after
1185 converting the index to Pmode.
1186
a6f7ba17
JL
1187Sat Oct 25 12:20:58 1997 Jeffrey A Law (law@cygnus.com)
1188
1189 * mn10300.h (TARGET_SWITCHES): Add -mmult-bug and -mno-mult-bug.
1190 (TARGET_MULT_BUG): Define.
1191 (TARGET_DEFAULT): Default to TARGET_MULT_BUG.
1192 * mn10300.md (mulsi3): Handle TARGET_MULT_BUG.
1193
17ad8a3b
JL
1194Fri Oct 24 17:40:34 1997 Jeffrey A Law (law@cygnus.com)
1195
1196 * mn10200.c (indirect_memory_operand): Delete unused function.
1197 * mn10200.h (EXTRA_CONSTRAINT): Handle 'R'.
1198 * mn10200.md (bset, bclr insns): Handle output in a reg too.
1199
e16b49d3
RH
1200Fri Oct 24 15:54:57 1997 Richard Henderson <rth@cygnus.com>
1201
1202 * alpha.md (call patterns): Revert Oct 16 change; if we are to elide
1203 the callee's ldgp, we must do it ourselves, and we use the jsr tag
1204 for more than scheduling.
1205
27f65411
DE
1206Fri Oct 24 13:23:04 1997 Doug Evans <devans@canuck.cygnus.com>
1207
1208 * sparc/sparc.h (ASM_SPEC): Delete asm_arch.
1209
e9ad4573
JL
1210Fri Oct 24 13:19:40 1997 Jeffrey A Law (law@cygnus.com)
1211
1212 * mn10300.c (symbolic_operand, legitimize_address): New functions.
1213 * mn10300.h (LEGITIMIZE_ADDRESS): Call legitimize_address.
1214 (GO_IF_LEGITIMATE_ADDRESS): Don't allow base + symbolic.
1215
66724f0a
JL
1216Thu Oct 23 09:35:12 1997 Jeffrey A Law (law@cygnus.com)
1217
1218 * version.c: Bump for snapshot.
1219
c401498b
R
1220Thu Oct 23 08:03:59 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1221
1222 * dbxout.c (dbxout_start_new_source_file): Use output_quoted_string
1223 for FILENAME.
1224
b22b9b3e
JL
1225Wed Oct 22 00:34:12 1997 Jeffrey A Law (law@cygnus.com)
1226
56bf1fd9
JL
1227 * toplev.c (flag_exceptions): Default value is 2.
1228 (compile_file): If flag_exceptions still has the value 2, then
1229 set it to 0.
1230
a04232e5
JL
1231 * rs6000.c (struct machine_function): Add pic_offset_table_rtx.
1232 (rs6000_save_machine_status): Save pic_offset_table_rtx.
1233 (rs6000_restore_machine_status: Restore pic_offset_table_rtx.
1234
0bd83abd
JL
1235 * local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions
1236 are shared.
1237
b22b9b3e
JL
1238 * rs6000.md (*movsi_got_internal_mem): New pattern.
1239 (*movsi_got_internal_mem splitter): New define_split.
1240
c1e385db
JW
1241Tue Oct 21 18:14:03 1997 Jim Wilson <wilson@cygnus.com>
1242
1243 * obstack.h (obstack_empty_p): Fix spurious space after backslash.
1244
1a986152
GK
1245Tue Oct 21 18:34:01 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
1246
1247 * rs6000.c: Avoid creating a stack frame under SYSV ABI if we
1248 only need to save LR.
1249
5d29a95f
JL
1250Tue Oct 21 10:06:40 1997 Jeffrey A Law (law@cygnus.com)
1251
c6ee9150
JL
1252 * mn10300.md (movqi, movhi): Avoid using address registers as
1253 destinations unless absolutely necessary.
1254
d5255ba2
JL
1255 * mn10200.c (expand_prologue): Fix typo.
1256
9d2128b8
JL
1257 * mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed
1258 addresses.
1259 * mn10200.md (neghi2): Provide an alternative which works if
1260 the input and output register are the same.
1261
576e5acc
JL
1262 * mn10300.c (print_operand): Handle 'S'.
1263 * mn10300.md (ashlsi3, lshrsi3, ashrsi3): Use %S for
1264 shift amount in last alternative
1265
5d29a95f
JL
1266 * mn10300.c (expand_epilogue): Rework to handle register restores
1267 in "ret" and "retf" instructions correctly.
1268
3bf1b082
JW
1269Mon Oct 20 16:47:08 1997 Jim Wilson <wilson@cygnus.com>
1270
1271 * expmed.c (extract_bit_field): Don't make flag_force_mem disable
1272 extzv for memory operands.
1273
1274 * cse.c (simplify_ternary_operation, case IF_THEN_ELSE): Collapse
1275 redundant conditional moves to single operand.
1276
ddbd8d36
NC
1277Mon Oct 20 15:30:26 1997 Nick Clifton <nickc@cygnus.com>
1278
1279 * v850.h: Move define of __v850__ from CPP_PREDEFINES
1280 to CPP_SPEC.
1281
1282 * xm-v850.h: Use __v850 rather than __v850__ to
1283 identify v850 port.
1284
a944a4eb
JW
1285Mon Oct 20 14:15:02 1997 Jim Wilson <wilson@cygnus.com>
1286
1287 * mips/mips.c (compute_frame_size): Not a leaf function if
1288 profile_flag set.
1289
2d5b6dea
GK
1290Mon Oct 20 14:16:38 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
1291
1292 * rs6000/t-ppccomm: Use -msdata=none for crtstuff.
1293
f0a9fa6c
DE
1294Mon Oct 20 12:28:17 1997 Doug Evans <devans@canuck.cygnus.com>
1295
1296 * sparc/sparc.h (SPARC_V9,SPARC_ARCH64): Delete.
1297 (DEFAULT_ARCH32_P): New macro.
1298 (TARGET_ARCH{32,64}): Allow compile time or runtime selection.
1299 (enum cmodel): Declare.
1300 (sparc_cmodel_string,sparc_cmodel): Declare.
1301 (SPARC_DEFAULT_CMODEL): Provide default.
1302 (TARGET_{MEDLOW,MEDANY}): Renamed to TARGET_CM_{MEDLOW,MEDANY}.
1303 (TARGET_FULLANY): Deleted.
1304 (TARGET_CM_MEDMID): New macro.
1305 (CPP_CPU_DEFAULT_SPEC): Renamed from CPP_DEFAULT_SPEC.
1306 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
1307 (CPP_PREDEFINES): Take out stuff now handled by %(cpp_arch).
1308 (CPP_SPEC): Rewrite.
1309 (CPP_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
1310 (CPP_{ENDIAN,SUBTARGET}_SPEC): New macros.
1311 (ASM_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
1312 (ASM_SPEC): Add %(asm_arch).
1313 (EXTRA_SPECS): Rename cpp_default to cpp_cpu_default.
1314 Rename asm_default to asm_cpu_default.
1315 Add cpp_arch32, cpp_arch64, cpp_arch_default, cpp_arch, cpp_endian,
1316 cpp_subtarget, asm_arch32, asm_arch64, asm_arch_default, asm_arch.
1317 (NO_BUILTIN_{PTRDIFF,SIZE}_TYPE): Define ifdef SPARC_BI_ARCH.
1318 ({PTRDIFF,SIZE}_TYPE): Provide 32 and 64 bit values.
1319 (MASK_INT64,MASK_LONG64): Delete.
1320 (MASK_ARCH64): Renamed to MASK_64BIT.
1321 (MASK_{MEDLOW,MEDANY,FULLANY,CODE_MODEL}): Delete.
1322 (EMBMEDANY_BASE_REG): Renamed from MEDANY_BASE_REG.
1323 (TARGET_SWITCHES): Always provide 64 bit options.
1324 (ARCH64_SWITCHES): Delete.
1325 (TARGET_OPTIONS): New option -mcmodel=.
1326 (INT_TYPE_SIZE): Always 32.
1327 (MAX_LONG_TYPE_SIZE): Define ifdef SPARC_BI_ARCH.
1328 (INIT_EXPANDERS): sparc64_init_expanders renamed to sparc_init_....
1329 (FUNCTION_{,BLOCK_}PROFILER): Delete TARGET_EMBMEDANY support.
1330 (PRINT_OPERAND_PUNCT_VALID_P): Add '_'.
1331 * sparc/linux-aout.h (CPP_PREDEFINES): Take out stuff handled by
1332 CPP_SPEC.
1333 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
1334 * sparc/linux.h: Likewise.
1335 * sparc/linux64.h (SPARC_V9,SPARC_ARCH64): Delete.
1336 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
1337 (TARGET_DEFAULT): Delete MASK_LONG64, MASK_MEDANY, add MASK_64BIT.
1338 (SPARC_DEFAULT_CMODEL): Define.
1339 (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
1340 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
1341 (LONG_DOUBLE_TYPE_SIZE): Define.
1342 (ASM_SPEC): Add %(asm_arch).
1343 * sparc/sol2.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
1344 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
1345 (TARGET_CPU_DEFAULT): Add ultrasparc case.
1346 * sparc/sp64-aout.h (SPARC_V9,SPARC_ARCH64): Delete.
1347 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT.
1348 (SPARC_DEFAULT_CMODEL): Define.
1349 * sparc/sp64-elf.h (SPARC_V9,SPARC_ARCH64): Delete.
1350 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT. Delete
1351 MASK_LONG64, MASK_MEDANY.
1352 (SPARC_DEFAULT_CMODEL): Define.
1353 (CPP_PREDEFINES): Delete.
1354 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
1355 (ASM_SPEC): Add %(asm_arch).
1356 (LONG_DOUBLE_TYPE_SIZE): Define.
1357 (DWARF2_DEBUGGING_INFO): Define.
1358 * sparc/splet.h (CPP_SPEC): Delete.
1359 * sparc/sysv4.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
1360 (FUNCTION_BLOCK_PROFILER): Delete TARGET_EMBMEDANY support.
1361 (BLOCK_PROFILER): Likewise.
1362 * sparc/sparc.c (sparc_cmodel_string,sparc_cmodel): New globals.
1363 (sparc_override_options): Handle code model selection.
1364 (sparc_init_expanders): Renamed from sparc64_init_expanders.
1365 * sparc/sparc.md: TARGET_<code_model> renamed to TARGET_CM_....
1366 TARGET_MEDANY renamed to TARGET_CM_EMBMEDANY.
1367 (sethi_di_embmedany_{data,text}): Renamed from sethi_di_medany_....
1368 (sethi_di_fullany): Delete.
1369
a3b0df2d
KK
1370Mon Oct 20 02:00:18 1997 Klaus Kaempf <kkaempf@progis.de>
1371 Jeff Law <law@cygnus.com>
1372 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1373
3a133c72
KK
1374 * alpha/vms.h (DIVSI3_LIBCALL): OTS$ functions are upper case.
1375 (DIVDI3_LIBCALL, UDIVSI3_LIBCALL, UDIVDI3_LIBVALL): Likewise.
1376 (MODSI3_LIBCALL, MODDI3_LIBCALL): Likewise.
1377 (UMODSI3_LIBCALL, UMODDI3_LIBCALL): Likewise.
1378 * alpha/alpha.md (arg_home): Likewise.
1379
a3b0df2d
KK
1380 * alpha/alpha.c (vmskrunch): Delete
1381 * alpha/vms.h (ENCODE_SECTION_INFO, ASM_DECLARE_FUNCTION_NAME): Delete.
1382 * alpha.c (output_prolog, VMS): Use alloca for entry_label and don't
1383 truncate to 64 characters.
1384
1385 * make-l2.com: Support openVMS/Alpha.
1386
1387 * vmsconfig.com: Fix to work on openVMS/Alpha and openVMS/VAX.
1388
7d4f2e6c
R
1389Sun Oct 19 19:00:35 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1390
1391 * longlong.h (count_leading_zeros): Add missing casts to USItype.
1392
decd44ac
JL
1393Sun Oct 19 18:44:06 1997 Jeffrey A Law (law@cygnus.com)
1394
1395 * i386/bsd386.h (ASM_COMMENT_START): Define.
1396
d1485032
JM
1397Sat Oct 18 13:47:15 1997 Jason Merrill <jason@yorick.cygnus.com>
1398
1399 * tree.c (restore_tree_status): Also free up temporary storage
1400 when we finish a toplevel function.
1401 (dump_tree_statistics): Print stats for backend obstacks.
1402
6bd35f86
DE
1403Sat Oct 18 12:47:31 1997 Doug Evans <dje@canuck.cygnus.com>
1404
1405 * expr.c (use_group_regs): Don't call use_reg for MEMs.
1406
d1485032
JM
1407Sat Oct 18 09:49:46 1997 Jason Merrill <jason@yorick.cygnus.com>
1408
1409 * libgcc2.c (__throw): Don't copy the return address.
1410 * dwarf2out.c (expand_builtin_dwarf_reg_size): Ignore return address.
1411
1412 * except.c (exceptions_via_longjmp): Initialize to 2 (uninitialized).
1413 * toplev.c (main): Initialize exceptions_via_longjmp.
1414
1415 * tree.c: Add extra_inline_obstacks.
1416 (save_tree_status): Use it.
1417 (restore_tree_status): If this is a toplevel inline obstack and we
1418 didn't want to save anything on it, recycle it.
1419 (print_inline_obstack_statistics): New fn.
1420 * function.c (pop_function_context_from): Pass context to
1421 restore_tree_status.
1422 * obstack.h (obstack_empty_p): New macro.
1423
6981eacf
JL
1424Sat Oct 18 00:43:59 1997 Jeffrey A Law (law@cygnus.com)
1425
1426 * i386/freebsd.h (ASM_COMMENT_START): Fix.
1427
1933ec7e
JW
1428Fri Oct 17 23:48:52 1997 Jim Wilson (wilson@cygnus.com)
1429
1430 * v850.c (ep_memory_offset): New function.
1431 (ep_memory_operand, substitute_ep_register, v850_reorg): Call it.
1432
1433 * v850.h (CONST_OK_FOR_*): Add and correct comments.
1434 (CONSTANT_ADDRESS_P): Add comment.
1435 (EXTRA_CONSTRAINT): Define 'U'.
1436 * v850.md: Add comments on bit field instructions.
1437 (addsi3): Delete &r/r/r alternative. Add r/r/U alternative.
1438 (lshrsi3): Use N not J constraint.
1439
1440 * v850.md (v850_tst1+1): New define_split for tst1 instruction.
1441
1442 * v850.c (reg_or_0_operand): Call register_operand.
1443 (reg_or_int5_operand): Likewise.
1444 * v850.h (MASK_BIG_SWITCH, TARGET_BIG_SWITCH): New macros.
1445 (TARGET_SWITCHES): Add "big-switch".
1446 (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE,
1447 ASM_OUTPUT_BEFORE_BASE_LABEL): Add support for TARGET_BIG_SWITCH.
1448 (CASE_DROPS_THROUGH): Comment out.
1449 (CASE_VECTOR_PC_RELATIVE, JUMP_TABLES_IN_TEXT_SECTION): Define.
1450 * v850.md (cmpsi): Delete compare mode.
1451 (casesi): New pattern.
1452
1453 * v850.h (CONST_OK_FOR_N): Delete redundant compare against zero.
1454 * v850.md (ashlsi3): Use SImode not QImode for shift count.
1455 (lshrsi3): Likewise.
1456
1457 * v850.c (print_operand): Add 'c', 'C', and 'z' support. Delete
1458 unreachable switch statement after 'b' support. Remove "b" from
1459 strings for 'b' support.
1460 * v850.md (branch_normal, branch_invert): Change %b to b%b.
1461
13c2de98
JL
1462Fri Oct 17 23:33:20 1997 Jeffrey A Law (law@cygnus.com)
1463
1464 * Makefile.in (LIBGCC2_CFLAGS): Avoid a backslash then an
1465 empty line if @inhibit_libc@ is empty.
1466
b2167bee
RL
1467Fri Oct 17 23:24:40 1997 Robert Lipe (robertl@dgii.com)
1468
1469 * i386/sco5.h: Let ELF use dwarf2 unwinding. COFF uses sjlj.
1470 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Defined.
1471 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
1472 (DWARF2_UNWIND_INFO): Let this track object file format.
1473 (EXTRA_SECTIONS): Add in_eh.
1474 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Define.
1475 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
1476
bf2a2c6b
DM
1477Fri Oct 17 17:13:42 1997 David S. Miller <davem@tanya.rutgers.edu>
1478
1479 * sparc/linux64.h (LINK_SPEC): Dynamic linker is ld-linux64.so.2.
da2a90f7
DM
1480 * sparc/sparc.h (FUNCTION_PROFILER): Fix format string when
1481 TARGET_MEDANY.
f4f8e370
DE
1482 * sparc/sparc.c (dwarf2out_cfi_label): Extern no longer needed.
1483 (output_double_int): Output DI mode values correctly when
1484 HOST_BITS_PER_WIDE_INT is 64.
9d162eb2
DE
1485 (output_fp_move_quad): If TARGET_V9 and not TARGET_HARD_QUAD, use
1486 fmovd so it works if a quad float ends up in one of the upper 32
1487 float regs.
7e37212e
DM
1488 * sparc/sparc.md (pic_{lo_sum,sethi}_di): New patterns
1489 necessary for PIC support on sparc64.
bf2a2c6b 1490
9ff84e67
DE
1491Fri Oct 17 13:39:56 1997 Doug Evans <dje@canuck.cygnus.com>
1492
1493 * sparc/sp64-elf.h (TARGET_DEFAULT): Delete MASK_STACK_BIAS.
1494 * sparc/sparc.h (PROMOTE_MODE): Promote small ints if arch64.
1495 (PROMOTE_FUNCTION_ARGS,PROMOTE_FUNCTION_RETURN): Define.
1496 (SPARC_FIRST_FP_REG, SPARC_FP_REG_P): New macros.
1497 (SPARC_{OUTGOING,INCOMING}_INT_ARG_FIRST): New macros.
1498 (SPARC_FP_ARG_FIRST): New macro.
1499 (CONDITIONAL_REGISTER_USAGE): All v9 fp regs are volatile now.
1500 (REG_ALLOC_ORDER,REG_LEAF_ALLOC_ORDER): Reorganize fp regs.
1501 (NPARM_REGS): There are 32 fp argument registers now.
1502 (FUNCTION_ARG_REGNO_P): Likewise.
1503 (FIRST_PARM_OFFSET): Update to new v9 abi.
1504 (REG_PARM_STACK_SPACE): Define for arch64.
1505 (enum sparc_arg_class): Delete.
1506 (sparc_arg_count,sparc_n_named_args): Delete.
1507 (struct sparc_args): Redefine and use for arch32 as well as arch64.
1508 (GET_SPARC_ARG_CLASS,ROUND_REG,ROUND_ADVANCE): Delete.
1509 (FUNCTION_ARG_ADVANCE): Rewrite.
1510 (FUNCTION_ARG,FUNCTION_INCOMING_ARG): Rewrite.
1511 (FUNCTION_ARG_{PARTIAL_NREGS,PASS_BY_REFERENCE}): Rewrite.
1512 (FUNCTION_ARG_CALLEE_COPIES): Delete.
1513 (FUNCTION_ARG_{PADDING,BOUNDARY}): Define.
1514 (STRICT_ARGUMENT_NAMING): Define.
1515 (doublemove_string): Declare.
1516 * sparc/sparc.c (sparc_arg_count,sparc_n_named_args): Delete.
1517 (single_move_string): Use GEN_INT, and HOST_WIDE_INT.
1518 (doublemove_string): New function.
1519 (output_move_quad): Clean up some of the arch64 support.
1520 (compute_frame_size): Add REG_PARM_STACK_SPACE if arch64.
1521 Don't add 8 bytes of reserved space if arch64.
1522 (sparc_builtin_saveregs): Combine arch32/arch64 versions.
1523 (init_cumulative_args): New function.
1524 (function_arg_slotno): New static function.
1525 (function_arg,function_arg_partial_nregs): New functions.
1526 (function_arg_{pass_by_reference,advance}): New functions.
1527 (function_arg_padding): New function.
c1215820 1528 * ginclude/va-sparc.h: Rewrite v9 support.
9ff84e67 1529
b8fb2d72
CI
1530Fri Oct 17 12:29:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
1531
f22376c7
CI
1532 * regclass.c (record_address_regs): Look at REG_OK_FOR_{BASE,INDEX}_P
1533 for hard regs to determine base and index registers.
1534
b8fb2d72
CI
1535 * reload.c (debug_reload_to_stream): New function. Specify stream
1536 into which to write debug info.
1537 (debug_reload): Modify to call debug_reload_to_stream with stderr.
1538
b79ee7eb
RH
1539Thu Oct 16 15:07:51 1997 Richard Henderson <rth@cygnus.com>
1540
1541 * combine.c (can_combine_p): Don't combine with an asm whose
1542 output is a hard register.
1543
5c19a356
MS
1544Thu Oct 16 15:43:26 1997 Mike Stump (mrs@wrs.com)
1545
1546 * c-decl.c (start_struct): Ensure that structs with forward
1547 declarations are in fact packed when -fpack-struct is given.
1548
1549 * stor-layout.c (layout_record): Ignore STRUCTURE_SIZE_BOUNDARY if
1550 we are packing a structure. This allows a structure with only
1551 bytes to be aligned on a byte boundary and have no padding on a
1552 m68k.
1553
02bef6da
RK
1554Thu Oct 16 15:17:54 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1555
1556 * rs6000.h (ROUND_TYPE_ALIGN): Don't blow up if no fields in record.
1557
9ecc37f0
RH
1558Thu Oct 16 11:20:30 1997 Richard Henderson <rth@cygnus.com>
1559
1560 * alpha.c (alpha_return_addr_rtx): New variable.
1561 (alpha_save_machine_status): New; save it.
1562 (alpha_restore_machine_status): New; restore it.
1563 (alpha_init_expanders): New; clear it.
1564 (alpha_return_addr): New; set it.
1565 (alpha_ra_ever_killed): New; if alpha_return_addr_rtx, regs_ever_live
1566 is overly conservative, so search the insns explicitly.
1567 (alpha_sa_mask [VMS]): Check alpha_ra_ever_killed.
1568 (alpha_sa_size [VMS && !VMS]): Likewise.
1569 * alpha.h (RETURN_ADDR_RTX): Call alpha_return_addr.
1570 (INIT_EXPANDERS): New definition.
1571
1572 * alpha.c: Move REG_PV, REG_RA somewhere more visible in the file.
1573 (output_prolog [!VMS]): Use them.
1574
1575 * alpha.c (output_prolog [!VMS]): Move gp detection to ...
1576 (alpha_does_function_need_gp): ... a new function. Refine the
1577 CALL_INSN test to just TYPE_JSR.
1578 * alpha.md (most call insns): Fix some jsr/ibr type transpositions.
1579
bda2ffef
JL
1580Thu Oct 16 09:36:47 1997 Jeffrey A Law (law@cygnus.com)
1581
1582 * version.c: Bump for snapshot.
1583
96b63cd7
RK
1584Wed Oct 15 21:38:18 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1585
1586 * pa.c (move_operand): Respect -mdisable-indexing.
1587 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
1588
f192bf8b
DE
1589Wed Oct 15 21:34:45 1997 David Edelsohn <edelsohn@mhpcc.edu>
1590
1591 * rs6000.md (udivsi3, divsi3): Split into MQ and non-MQ cases for
1592 PPC601.
1593 (umulsidi3,umulsi3_highpart): Ditto.
1594 (smulsi3_highpart_no_mq): Add !TARGET_POWER.
1595
2ea844d3
RH
1596Wed Oct 15 18:21:46 1997 Richard Henderson <rth@cygnus.com>
1597
1598 * alpha.c (final_prescan_insn): Gut, remove and transform to ...
1599 (alpha_handle_trap_shadows): ... a new function. Handle the entire
1600 function in one go. Emit RTL for trapb, instead of printf directly.
1601 (alpha_reorg): New function. Call alpha_handle_trap_shadows.
1602 (trap_pending): Kill global variable.
1603 (output_epilog): Don't call final_prescan_insn.
1604 (struct shadow_summary): Elide $31 and $f31; now it fits in a word.
1605 * alpha.h (FINAL_PRESCAN_INSN): Remove.
1606 (MACHINE_DEPENENT_REORG): Define.
1607 * alpha.md (jsr patterns with trapb): Stupid and useless. Kill.
1608 (trapb): New insn.
1609
74835ed8
RH
1610Wed Oct 15 18:16:05 1997 Richard Henderson <rth@cygnus.com>
1611
1612 Tune Haifa scheduler for Alpha:
1613 * alpha.h (ISSUE_RATE): Define.
1614 * alpha.c (alpha_adjust_cost): Handle EV5 mult delay; don't apply
1615 EV4 adjustments to EV5.
1616 * alpha.md: Remove all scaling from function unit delays. Rework
1617 EV5 function units to match the CPU.
1618 (umuldi3_highpart): EV5 added the IMULH insn class.
1619
cdc0de30
JL
1620Wed Oct 15 17:42:41 1997 Jeffrey A Law (law@cygnus.com)
1621
1622 * pa.c (following_call): Fail if the CALL_INSN is an indirect
1623 call.
1624
041c97f2
MM
1625Tue Oct 14 12:01:00 1997 Mark Mitchell <mmitchell@usa.net>
1626
1627 * cplus-dem.c (demangle_signature): Don't look for return types on
1628 constructors. Handle member template constructors.
1629
f0632762
JM
1630Tue Oct 14 11:30:29 1997 Jason Merrill <jason@yorick.cygnus.com>
1631
1632 * tree.c (expr_tree_cons, build_expr_list, expralloc): New fns.
22ef8a13 1633 * tree.h: Declare them.
f0632762 1634
dec88383
DE
1635Fri Oct 10 13:46:56 1997 Doug Evans <dje@canuck.cygnus.com>
1636
1637 * configure.in: Handle --with-newlib.
1638 * Makefile.in (LIBGCC2_CFLAGS): Add @inhibit_libc@.
1639
1640 * sparc/t-sp64 (LIBGCC2_CFLAGS): Delete.
1641
0e1f3f5e
JL
1642Wed Oct 8 14:37:44 1997 Jeffrey A Law (law@cygnus.com)
1643
1644 * config/ptx4.h: Fix typo.
1645
12504ae0
JL
1646Wed Oct 8 08:57:20 1997 Jeffrey A Law (law@cygnus.com)
1647
1648 * version.c: Bump for snapshot.
1649
5643c767
MH
1650Tue Oct 7 16:27:34 1997 Manfred Hollstein <manfred@s-direktnet.de>
1651
1652 * aclocal.m4: Substitute INSTALL.
1653 * configure: Re-built.
1654
aa0c1401
JL
1655Tue Oct 7 15:37:35 1997 Jeffrey A Law (law@cygnus.com)
1656
f644bd14
JL
1657 * integrate.c (save_for_inline_copying): Avoid undefined pointer
1658 operations.
1659 (expand_inline_function): Likewise.
1660
aa0c1401
JL
1661 * dwarf2out.c (output_call_frame_info): Reinstate last change
1662 using flag_debug_asm check instead of flag_verbose_asm.
1663
6c2df6c9
JW
1664Tue Oct 7 12:57:26 1997 Jim Wilson <wilson@cygnus.com>
1665
1666 * dwarf2out.c (output_call_frame_info): Remove last change.
1667
13ab2b83
AS
16681997-10-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1669
1670 * frame.c (__frame_state_for): Execute the FDE insns until the
1671 current pc value is strictly bigger than the target pc value.
1672
066c2fea
JM
1673Tue Oct 7 11:00:42 1997 Jason Merrill <jason@yorick.cygnus.com>
1674
1675 * regclass.c (init_reg_modes): If we can't find a mode for the
1676 register, use the previous one.
1677
2f308fec
RH
1678Tue Oct 7 10:55:34 1997 Richard Henderson <rth@cygnus.com>
1679
1680 * haifa-sched.c (print_block_visualization): Call fprintf directly,
1681 don't sprintf through an alloca'ed buffer.
1682
43984e29
TK
1683Tue Oct 7 10:52:29 1997 Thomas Koenig (ig25@rz.uni-karlsruhe.de)
1684
1685 * reload.c (decompose): Always initialize val.base.
1686
e9e30253
MH
1687Tue Oct 7 10:19:26 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
1688
1689 * m68k/mot3300.h (ASM_OUTPUT_ALIGN): Accept any alignment
1690 instead of aborting.
1691 * dwarf2out.c (output_call_frame_info): Call app_enable and
1692 app_disable to let GNU as accept the generated comments.
1693
496651db
MM
1694Tue Oct 7 11:41:21 1997 Michael Meissner <meissner@cygnus.com>
1695
1696 * tree.h (get_file_function_name): Add declaration.
1697 * dwarf2out.c (output_call_frame_info): No need to cast
1698 get_file_function_name call anymore.
1699 * profile.c (toplevel): Remove get_file_function_name
1700 declaration.
1701 * c-lang.c (finish_file): Ditto.
1702
e6347456
CS
1703Tue Oct 7 10:01:45 1997 Chip Salzenberg <chip@rio.atlantic.net>
1704
1705 * Makefile.in (program_transform_name): Let autoconf substitute
1706 the correct value.
1707
1447b516
JL
1708Tue Oct 7 09:54:35 1997 Jeffrey A Law (law@cygnus.com)
1709
1710 * haifa-sched.c (schedule_block): If the first real insn in a
1711 block has any special notes attached to it, remove them.
1712
1a42ead7
RH
1713Tue Oct 7 09:48:51 1997 Richard Henderson <rth@cygnus.com>
1714
1715 * alpha.h (FLOAT_STORE_FLAG_VALUE): It's 2.0 not 0.5.
1716
4b6140f1
MH
1717Mon Oct 6 12:47:32 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
1718
1719 * m88k.c (m88k_begin_prologue): Remove superfluous backslash.
1720
dc84d7bc
JL
1721Mon Oct 6 12:04:24 1997 Jeffrey A Law (law@cygnus.com)
1722
1723 * Makefile.in (check-g77): New test target.
1724 (CHECK-TARGETS): Add check-g77.
1725
c0da11c4
JM
1726Fri Oct 3 11:56:36 1997 Jason Merrill <jason@yorick.cygnus.com>
1727
1728 * toplev.c (rest_of_compilation): Defer all non-nested inlines.
1729
d8d64559
MM
1730Fri Oct 3 15:49:27 1997 Michael Meissner <meissner@cygnus.com>
1731
1732 * flow.c (print_rtl_with_bb): Cast alloca return value for
1733 in_bb_p.
1734
e414ab29
RH
1735Thu Oct 2 21:15:03 1997 Richard Henderson <rth@cygnus.com>
1736
1737 * i386.h (RETURN_ADDR_RTX): New definition that works for
1738 __builtin_return_address(0) and -fomit-frame-pointer.
1739
15039abe
JW
1740Wed Oct 1 13:43:53 1997 Jim Wilson <wilson@cygnus.com>
1741
1742 Bring over from FSF.
1743 Tue Aug 5 16:10:45 1997 Jason Merrill <jason@yorick.cygnus.com>
1744
1745 * mips.c (function_arg): Handle passing a struct
1746 containing a double in a DFmode register without the PARALLEL.
1747
281de624
ILT
1748Wed Oct 1 11:13:25 1997 Ian Lance Taylor <ian@cygnus.com>
1749
d8d64559 1750 * pexecute.c: Use spawn if __CYGWIN32__.
281de624 1751
d8d64559 1752 * pexecute.c: Include "config.h" first, as per autoconf manual
281de624
ILT
1753 (from Paul Eggert <eggert@twinsun.com>).
1754
3cbdd5fc
PDM
1755Wed Oct 1 01:44:36 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
1756
1757 * m68k/x-mot3300 (XCFLAGS): Disable as's long/short jump
1758 optimisation for f/expr.o and f/stb.o.
1759
135d84b8
JL
1760Tue Sep 30 23:48:57 1997 Jeffrey A Law (law@cygnus.com)
1761
1762 * cse.c (this_insn_cc0_mode): Initialize.
1763
55d89719
TK
1764Tue Sep 30 23:09:40 1997 Thomas Koenig <ig25@mvmap66.ciw.uni-karlsruhe.de>
1765
d3878e49
TK
1766 * cccp.c (expand_to_temp_buffer): Initialize all members of obuf.
1767
1768 * haifa-sched.c (get_block_head_tail): Remove unneeded initialization.
55d89719 1769
e9d0757e
RH
1770Tue Sep 30 23:06:43 1997 Richard Henderson <rth@cygnus.com>
1771
1772 * alpha.md (beq): For registers and ints 0-255, use cmpeq+bne, since
1773 that pair will dual-issue on the 21164 and plus+beq won't.
1774 (bne): Likewise for cmpeq+beq.
1775
3f34faec
JW
1776Tue Sep 30 16:07:58 1997 Jim Wilson <wilson@cygnus.com>
1777
1778 * except.c (find_exception_handler_labels): Correct argument to free.
1779
3226dac5 1780Tue Sep 30 11:00:00 1997 Brendan Kehoe <brendan@lisa.cygnus.com>
988cea7d
BK
1781
1782 * except.c (find_exception_handler_labels): Free LABELS when we're
1783 done.
1784
3a6eabfa
JL
1785Mon Sep 29 14:04:35 1997 Jeffrey A Law (law@cygnus.com)
1786
1787 * version.c: Bump for snapshot.
1788
974c50f9
JM
1789Mon Sep 29 10:51:53 1997 Jason Merrill <jason@yorick.cygnus.com>
1790
1791 * flow.c (find_basic_blocks): Mark calls as potentially jumping
1792 to the EH labels.
1793
9b16d2c4
JL
1794Mon Sep 29 09:58:06 1997 Jeffrey A Law (law@cygnus.com)
1795
1796 * configure.in: Substitute for "install" too.
1797 * configure: Rebuilt.
1798
b1e3ddfd
AJ
1799Mon Sep 29 00:38:42 1997 Aaron Jackson <jackson@negril.msrce.howard.edu>
1800
1801 * Makefile.in (bootstrap-lean, compare-lean): New targets.
1802
6662a38d
RH
1803Mon Sep 29 00:18:16 1997 Richard Henderson (rth@cygnus.com)
1804
c02f035f
RH
1805 * alias.c (base_alias_check): Two symbols can conflict if they
1806 are accessed via AND.
1807 (memrefs_conflict_p): Likewise.
1808
7a14fdc5
RH
1809 * alpha.h (SETUP_INCOMING_VARARGS): Emit a blockage insn
1810 after flushing argument registers to the stack.
1811
6662a38d
RH
1812 * Makefile.in (mostlyclean): Remove .regmove files.
1813
f3447109
JM
1814Sun Sep 28 18:59:58 1997 Jason Merrill <jason@yorick.cygnus.com>
1815
1816 * libgcc2.c (__throw): Fix thinko.
1817
37f6b6bf
MM
1818Sun Sep 28 12:00:52 1997 Mark Mitchell <mmitchell@usa.net>
1819
1820 * cplus-dem.c (demangle_template): Add new parameter. Handle new
1821 template-function mangling.
1822 (consume_count_with_underscores): New function.
1823 (demangle_signature): Handle new name-mangling scheme.
1824
adfc539e
PDM
1825Sun Sep 28 01:55:04 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
1826
1827 * flow.c (print_rtl_with_bb): Cast alloca return values for variables
1828 start and end.
1829
92cbe4d2
JL
1830Sun Sep 28 01:05:16 1997 Jeffrey A Law (law@cygnus.com)
1831
1832 * frame.c: Remove last change.
1833 * dwarf2.h: Remove last change.
1834 * tree.h: Add declarations of DWARF2 unwind info support
1835 functions.
1836
2f3ca9e7
JM
1837Sat Sep 27 11:02:38 1997 Jason Merrill <jason@yorick.cygnus.com>
1838
1839 * c-decl.c (init_decl_processing): Add __builtin_dwarf_reg_size.
1840 * tree.h (built_in_function): Likewise.
1841 * expr.c (expand_builtin): Likewise.
1842 * except.h: Likewise.
1843 * dwarf2out.c (expand_builtin_dwarf_reg_size): New fn.
1844 * libgcc2.c (copy_reg): New fn.
1845 (__throw): Use it.
1846
407cb092
PE
1847Fri Sep 26 08:54:59 1997 Paul Eggert <eggert@twinsun.com>
1848
1849 * c-typeck.c (build_binary_op): Warn about comparing signed vs
1850 unsigned if -W is specified and -Wno-sign-compare is not.
1851 * c-decl.c (warn_sign_compare): Initialize to -1.
1852 (c_decode_option): -Wall no longer implies -Wsign-compare.
1853
3ba10494
AS
1854Fri Sep 26 09:00:13 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1855
a7cc7f29
AS
1856 * frame.c: Include gansidecl.h for PROTO.
1857 * dwarf2out.c: Move inclusion of dwarf2.h down so that PROTO is
1858 defined. Don't declare dwarf2out_cfi_label here.
1859 * dwarf2.h: Add declarations of DWARF2 unwind info support
1860 functions.
1861 * m68k.c: Include dwarf2.h.
1862 (output_function_prologue): Add dwarf2 support.
1863 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM): New macros.
1864 (INCOMING_FRAME_SP_OFFSET): Likewise.
1865
3ba10494
AS
1866 * integrate.c (expand_inline_function): Make sure there is at
1867 least one insn that can be used as an insertion point.
1868
c5cec899
JM
1869Wed Sep 24 21:34:06 1997 Jason Merrill <jason@yorick.cygnus.com>
1870
1871 * dwarf2out.c: s/flag_verbose_asm/flag_debug_asm/
1872
e166cb18
JL
1873Wed Sep 24 22:05:30 1997 Jeffrey A Law (law@cygnus.com)
1874
1875 * version.c: Bump for snapshot.
1876
01a94cba
DE
1877Wed Sep 24 17:36:23 1997 Doug Evans <dje@canuck.cygnus.com>
1878
1879 Bring over from FSF.
1880
1881 Wed Sep 24 19:17:08 1997 Doug Evans <dje@cygnus.com>
1882
1883 * sparc/sparc.md (get_pc_via_call): Renamed from get_pc_sp32.
1884 (get_pc_via_rdpc): Renamed from get_pc_sp64.
1885 * sparc/sparc.c (finalize_pic): Update call to gen_get_pc_via_call.
1886
1887 Wed Sep 24 18:38:22 1997 David S. Miller <davem@tanya.rutgers.edu>
1888
1889 * sparc/sparc.h (ASM_CPU_SPEC): Pass -Av9a for v8plus, ultrasparc.
1890 (TARGET_OPTIONS): Add -malign-loops=, -malign-jumps=,
1891 -malign-functions=.
1892 (sparc_align_{loops,jumps,funcs}_string): Declare.
1893 (sparc_align_{loops,jumps,funcs}): Declare.
1894 (DEFAULT_SPARC_ALIGN_FUNCS): New macro.
1895 (FUNCTION_BOUNDARY): Use sparc_align_funcs.
1896 (STACK_BIAS): Define.
1897 (SPARC_SIMM*_P): Cast to unsigned HOST_WIDE_INT first, then perform
1898 test.
1899 (SPARC_SETHI_P): New macro.
1900 (CONST_OK_FOR_LETTER_P): Use it.
1901 (ASM_OUTPUT_ALIGN_CODE): Define.
1902 (ASM_OUTPUT_LOOP_ALIGN): Define.
1903 * sparc/sparc.c (sparc_align_{loops,jumps,funcs}_string): New globals.
1904 (sparc_align_{loops,jumps,funcs}): New globals.
1905 (sparc_override_options): Handle -malign-loops=, -malign-jumps=,
1906 -malign-functions=.
1907 (move_operand): Use SPARC_SETHI_P.
1908 (arith_double_operand): Cast to unsigned HOST_WIDE_INT first, then
1909 perform test.
1910 (arith11_double_operand): Likewise.
1911 (arith10_double_operand): Likewise.
1912 (finalize_pic): Finish sparc64 support.
1913 (emit_move_sequence): Use SPARC_SETHI_P. Simplify low part of
1914 64 bit constants if able.
1915 (output_fp_move_quad): Don't use fmovq unless TARGET_HARD_QUAD.
1916 (sparc_builtin_saveregs, sparc64 case): Don't save fp regs if
1917 ! TARGET_FPU.
1918 * sparc/sparc.md (*): Use GEN_INT instead of gen_rtx.
1919 (get_pc_sp32): Use for sparc64 as well.
1920 (lo_sum_di_sp{32,64}): Fix handling on 64 bit hosts.
1921 (sethi_di_sp64_const): Likewise.
1922 (movtf_cc_sp64): Check TARGET_HARD_QUAD.
1923 (cmp_zero_extract_sp64): Use unsigned HOST_WIDE_INT in cast.
1924 (ashlsi3, ashldi3, ashrsi3, ashrdi3, lshrsi3, lshrdi3): Likewise.
1925
1926 Tue Sep 23 19:02:46 1997 Doug Evans <dje@cygnus.com>
1927
1928 * sparc/linux-aout.h (COMMENT_BEGIN): Delete.
1929 * sparc/linux.h (COMMENT_BEGIN): Likewise.
1930 * sparc/linux64.h (COMMENT_BEGIN): Likewise.
1931
1932 Tue Sep 23 14:48:18 1997 David S. Miller <davem@tanya.rutgers.edu>
1933
1934 Add sparc64 linux support.
1935 * configure.in (sparc64-*-linux*): Recognize. Add sparc/xm-sparc.h
1936 to xm_file list on 32-bit sparc-linux.
1937 * sparc/xm-sp64.h: New file.
1938 * sparc/linux64.h: New file.
1939 * sparc/xm-linux.h: Include some standard headers if not inhibit_libc.
1940 Don't include xm-sparc.h.
1941 * config/xm-linux.h (HAVE_PUTENV, HAVE_ATEXIT): Define.
1942 * glimits.h (LONG_MAX): Handle sparc64.
1943
1944 Sat Sep 20 03:07:54 1997 Doug Evans <dje@cygnus.com>
1945
1946 * sparc/sysv4.h (ASM_COMMENT_START): Delete.
1947 * sparc.h (ASM_COMMENT_START): Define.
1948 * sparc.c (output_function_prologue): Use it.
1949 (sparc_flat_output_function_{epi,pro}logue): Likewise.
1950
1951 Wed Sep 17 15:04:19 1997 Doug Evans <dje@cygnus.com>
1952
1953 * sparc/sysv4.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Delete,
1954 use sparc.h's copies.
1955 * sparc/sparc.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Print
1956 ascii form as well.
1957
1958 Mon Sep 8 08:45:19 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1959
1960 * sparc.c (dwarf2out_cfi_label): Add declaration.
1961 (save_regs, output_function_prologue): Remove cast for it.
1962 (sparc_flat_{save_restore,output_function_prologue): Likewise.
1963 ({save,restore}_regs): No longer inline.
1964
ce2157a1
JL
1965Tue Sep 23 12:34:51 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1966
1967 * fold-const.c (make_range): Correctly handle cases of converting
1968 from unsigned to signed type.
1969
1970Tue Sep 23 12:34:51 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
1971
1972 * fold-const.c (merge_ranges): Make sure that if one range is subset
1973 of another, it will always be the second range. Correct (+,-) case to
1974 account for this.
1975
c5cec899
JM
1976Tue Sep 23 08:32:51 1997 Jason Merrill <jason@yorick.cygnus.com>
1977
1978 * final.c (final_end_function): Also do dwarf2 thing if
1979 DWARF2_DEBUGGING_INFO.
1980 (final_start_function): Likewise.
1981
c107334d
DM
1982Tue Sep 23 01:15:50 1997 David S. Miller <davem@tanya.rutgers.edu>
1983
e13a25d5
DM
1984 * expmed.c (expand_divmod): If compute_mode is not the same as
1985 mode, handle the case where convert_modes() causes op1 to no
1986 longer be a CONST_INT.
1987
c107334d
DM
1988 * reorg.c (dbr_schedule): At end of this pass, add REG_BR_PRED
1989 note holding get_jump_flags() calculation to all JUMP_INSNs.
1990 * rtl.h (enum reg_note): New note types REG_BR_PRED and REG_SAVE_AREA.
1991 * rtl.c (reg_note_name): Add new note types.
1992
8d7532d9
JL
1993Tue Sep 23 00:59:54 1997 Jeffrey A Law (law@cygnus.com)
1994
0774afd7 1995 * rtlanal.c (computed_jump_p): Fix typo in last change.
8d7532d9 1996
7019d00e
L
1997Tue Sep 23 00:42:44 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
1998
1999 * loop.c (indirect_jump_in_function_p): Return 0
2000 by default.
2001
b9dfb357
JL
2002Tue Sep 23 00:33:55 1997 Jeffrey A Law (law@cygnus.com)
2003
2004 * rs6000/xm-rs6000.h: Fix thinko in last change.
2005 * rs6000/xm-sysv4.h: Likewise.
2006
4b7e467b
JW
2007Mon Sep 22 19:33:53 1997 Jim Wilson <wilson@cygnus.com>
2008
2009 * mips.c (save_restore_insns): Only set RTX_FRAME_RELATED_P if store_p.
2010
8c8e6faa
JL
2011Mon Sep 22 14:41:00 1997 Jeffrey A Law (law@cygnus.com)
2012
2013 * reg-stack.c (find_blocks): Fix thinko in last change.
2014
078e983e
AS
20151997-09-21 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2016
2017 * m68k.c (output_function_prologue): Add dwarf2 support.
2018
2019 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM,
2020 INCOMING_FRAME_SP_OFFSET): New definitions.
2021
d7027667
DM
2022Mon Sep 22 11:36:42 1997 David S. Miller <davem@tanya.rutgers.edu>
2023
9524f769
DM
2024 * combine.c (try_combine): Use NULL_RTX instead of '0' where
2025 appropriate in calls to gen_rtx().
2026 * cse.c (cse_main): Likewise.
2027 * emit-rtl.c (gen_label_rtx): Likewise.
2028 * expr.c (init_expr_once): Likewise.
2029 * haifa-sched.c (flush_pending_lists, sched_analyze_insn,
2030 sched_analyze, init_rgn_data_dependences,
2031 compute_block_backward_dependences): Likewise.
2032 * sched.c (schedule_insns): Likewise.
2033 * varasm.c (immed_double_const): Likewise.
2034
d7027667
DM
2035 * sparc.h (INCOMING_FRAME_SP_OFFSET): Define to
2036 SPARC_STACK_BIAS for sake of dwarf2 on sparc64.
2037
fbf8b71c
KJ
2038Mon Sep 22 11:21:33 1997 J. Kean Johnston <jkj@sco.com>
2039
2040 * i386/sco5.h: Make ELF default file format and add -mcoff/-melf..
2041 (MULTILIB_DEFAULTS): Define.
2042 (ASM_SPEC, CPP_SPEC): Handle -mcoff.
2043 (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Likewise.
2044 (LIBGCC_SPEC): Likewise.
2045 (MASK_COFF, TARGET_COFF, TARGET_ELF): Define.
2046 (SUBTARGET_SWITCHES): Add -mcoff and -melf.
2047 * i386/t-sco5 (CRTSTUFF_T_CFLAGS): Add -fPIC.
2048 (CRTSTUFF_T_CFLAGS_S): Tweak for COFF.
2049 (EXTRA_PARTS, TAROUTOPTS): Delete.
2050 (libgcc1-elf, libgcc2-elf, libgcc-elf targets): Delete.
2051 (MULTILIB_OPTIONS): Define.
2052 (MULTILIB_DIRNAMES, MULTILIB_EXCEPTIONS): Likewise.
2053 (MULTILIB_MATCHE, MULTILIB_EXTRA_OPTS): Likewise.
2054
c14a951f
JL
2055Mon Sep 22 02:10:43 1997 Jeffrey A Law (law@cygnus.com)
2056
2057 * version.c: Bump for snapshot.
2058
7014927a
JL
2059Sun Sep 21 17:45:45 1997 Jeffrey A Law (law@cygnus.com)
2060
37aa45a2
JL
2061 * loop.c (loop_number): Delete function. Change all references
2062 to use uid_loop_num array.
2063 * loop.h (loop_number): Delete declaration.
2064 * unroll.c (unroll_loop): Change "loop_number" references to
2065 use uid_loop_num instead.
2066
b47404d1
JL
2067 * loop.c (loop_unroll_factor): Move outside #ifdef HAIFA
2068 conditional.
2069 (loop_unroll_iter): Remove unused variable and all references.
2070 (loop_optimize): Always allocate and clear space for loop_unroll_factor.
2071 (insert_bct): Fix minor formatting problems.
2072 * loop.h (loop_unroll_factor): Move decl outside #ifdef HAIFA.
2073 (loop_unroll_iter): Removed unused decl.
2074 * unroll.c (unroll_loop): Remove code to set loop_unroll_iter.
2075 Always record the unrolling factor.
2076
cb3bb2a7
JL
2077 * cse.c (simplify_relational_operation): Set h0u just like h0s.
2078 Similarly for h1u and h1s.
2079
d5ff3a2e 2080 * flow.c (jmp_uses_reg_or_mem): Deleted unused function.
2a1777af
JL
2081 (find_basic_blocks): Use computed_jump_p to determine if a
2082 particular JUMP_INSN is a computed jump.
2083 * reg-stack.c (find_blocks): Use computed_jump_p to determine
2084 if a particular JUMP_INSN is a computed jump.
2085 * rtlanal.c (jmp_uses_reg_or_mem): New function.
2086 (computed_jump_p): Likewise.
2087 * rtl.h (computed_jump_p): Declare.
2088 * genattrtab.c (pc_rtx): Define and initialize.
2089 * loop.c (loop_optimize): Always determine if the current
2090 function has a computed jump.
2091 (indirect_jump_in_function_p): Use computed_jump_p to determine
2092 if a particular JUMP_INSN is a computed jump.
2093
7014927a
JL
2094 * loop.c (fix_bct_param): Delete unused function.
2095 (check_bct_param): Likewise.
2096
6d53d7c2
JM
2097Sat Sep 20 16:22:06 1997 Jason Merrill <jason@yorick.cygnus.com>
2098
2099 * frame.c (__deregister_frame): Check properly for initialized object.
2100
5a5e9503 2101Fri Sep 19 20:51:03 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
71e4fbe6
L
2102
2103 * alpha/linux.h (HANDLE_SYSV_PRAGMA): Defined.
2104
272299b9
R
2105Fri Sep 19 18:53:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
2106
cc5e1642
R
2107 * jump.c (thread_jumps): check can_reverse_comparison_p before
2108 threading a reversed-condition jump.
2109
272299b9
R
2110 * sched.c (update_flow_info): Don't pass SCRATCH to dead_or_set_p.
2111 * haifa-sched.c (update_flow_info): Likewise.
2112
18511014
JL
2113Thu Sep 18 21:13:40 1997 Jeffrey A Law (law@cygnus.com)
2114
e6493727
JL
2115 * Makefile.in (BOOT_CFLAGS): Use -O2.
2116
1e467e19
JL
2117 * configure.in (strtoul, bsearch): Have autoconf check for these
2118 functions.
2119 * configure, config.in: Rebuilt.
2120
18511014
JL
2121 * m68k/xm-mot3300.h (alloca): Properly declare if __STDC__.
2122 * mips/mips.h (alloca): Likewise.
2123 * rs6000/xm-rs6000.h (alloca): Likewise.
2124 * rs6000/xm-sysv4.h: Likewise.
2125
6020d360
JM
2126Thu Sep 18 14:22:22 1997 Jason Merrill <jason@yorick.cygnus.com>
2127
2128 * final.c (final_scan_insn): Hand BARRIERs off to the dwarf2 code.
2129 * dwarf2out.c (dwarf2out_frame_debug): Pass the whole insn along.
2130 (dwarf2out_stack_adjust): A BARRIER resets the args space to 0.
2131
2132 * except.c (end_eh_unwinder): Subtract 1 from return address.
2133 * libgcc2.c (__throw): Likewise.
2134 (find_exception_handler): Don't change PC here. Compare end with >.
2135
b24bcfb3
NC
2136Thu Sep 18 10:43:07 1997 Nick Clifton <nickc@cygnus.com>
2137
2138 * v850.c (compute_register_save_size): Correct register
2139 number.
2140 * v850.md (save_interrupt, return_interrupt): Correct
2141 register number.
2142 * v850/lib1funcs.asm (save_interrupt): Correct register number.
2143 (return_interrupt): Use stack pointer, not element pointer.
2144
93cf819d
BK
21451997-09-18 Brendan Kehoe <brendan@lisa.cygnus.com>
2146
2147 * configure.in, configure: Make sure to create the stage* and include
2148 symbolic links in each subdirectory.
2149
f0501149
JL
2150Thu Sep 18 01:47:06 1997 Jeffrey A Law (law@cygnus.com)
2151
2152 * pa.md (reload_peepholes): Don't allow addresses with side
2153 effects for the memory operand.
2154
4f870c04
JM
2155Wed Sep 17 18:19:53 1997 Jason Merrill <jason@yorick.cygnus.com>
2156
2157 * libgcc2.c (find_exception_handler): Subtract one from our PC when
2158 looking for a handler, to avoid hitting the beginning of the next
2159 region.
2160
2161 * except.c (expand_builtin_set_return_addr_reg): Use force_operand.
2162
4eb66248
JL
2163Wed Sep 17 18:33:59 1997 Jeffrey A Law (law@cygnus.com)
2164
2165 * mips/abi64.h (LONG_MAX_SPEC): Define.
2166 * mips.h (LONG_MAX_SPEC): Define.
2167 (CPP_SPEC): Include long_max_spec.
2168 (EXTRA_SPECS): Include long_max_spec.
2169
44158507
JL
2170Wed Sep 17 14:11:38 1997 Jeffrey A Law (law@cygnus.com)
2171
2172 * v850.c (construct_save_jarl): Fix thinko in last change.
2173
bf520cd9
JL
2174Wed Sep 17 09:53:07 1997 Jeffrey A Law (law@cygnus.com)
2175
2176 * version.c: Bump for snapshot.
2177
255fe733
JM
2178Tue Sep 16 14:22:36 1997 Jason Merrill <jason@yorick.cygnus.com>
2179
c0727e2a
JM
2180 * libgcc2.c (find_exception_handler): Not found is -1.
2181
255fe733
JM
2182 * integrate.c (expand_inline_function): Move expand_start_bindings
2183 after expanding the arguments.
2184
21002281
JW
2185Tue Sep 16 11:13:46 1997 Jim Wilson <wilson@cygnus.com>
2186
2187 * expr.c (expand_expr): Remove previous incorrect change.
2188 If target and slot has no DECL_RTL, then call mark_addressable
2189 again for the slot after we give it RTL.
2190
e693cc28 2191Tue Sep 16 09:18:52 1997 Jason Merrill (jason@cygnus.com)
f633220c 2192
e693cc28
UD
2193 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
2194 again for the slot after we give it RTL.
f633220c 2195
145870b5
NC
2196Tue Sep 16 00:13:20 1997 Nick Clifton <nickc@cygnus.com>
2197
84e75068 2198 * v850.c (register_is_ok_for_epilogue,
145870b5
NC
2199 pattern_is_ok_for_epilogue, construct_restore_jr,
2200 pattern_is_ok_for_prologue, construct_save_jarl): New functions.
2201
84e75068 2202 * v850.h (pattern_is_ok_for_prologue,
145870b5
NC
2203 pattern_is_ok_for_epilogue, register_is_ok_for_epilogue): New
2204 predicates.
2205
84e75068 2206 * v850.md: Replace prologue and epilogue patterns with a
145870b5
NC
2207 match_parallel pattern.
2208
76143254
JL
2209Mon Sep 15 22:53:01 1997 Jeffrey A Law (law@cygnus.com)
2210
2211 * aclocal.m4: Add replacement for AC_PROG_INSTALL.
2212 * configure.in: Use EGCS_PROG_INSTALL.
2213
4401bf24
JL
2214Mon Sep 15 22:40:55 1997 Jim Wilson (wilson@cygnus.com)
2215
2216 * dwarf2out.c (gen_subprogram_die): Handle redefinition of an
2217 extern inline function.
2218
2219Mon Sep 15 22:40:55 1997 Richard Henderson (rth@cygnus.com)
2220
2221 * dwarf2out.c (reg_loc_descriptor): Fix prototype.
2222 (concat_loc_descriptor): New function.
2223 (loc_descriptor): Call it.
2224 (add_AT_location_description): Also elide the descriptor if both
2225 halves of a CONCAT are pseudos.
2226 (add_location_or_const_value_attribute): Recognize CONCAT too.
2227
0d24ff5d
RH
2228Mon Sep 15 15:24:00 1997 Richard Henderson <rth@cygnus.com>
2229
4bb43724
RH
2230 * alpha.md (movdi): Handle CONST_DOUBLE for TARGET_BUILD_CONSTANTS.
2231
0d24ff5d
RH
2232 * alpha/alpha.c (output_prolog): New variable sa_reg. Use it for
2233 out-or-range reg_offset.
2234 (output_epilog): Likewise.
2235
05ef8897
JL
2236Mon Sep 15 15:39:26 1997 Jeffrey A Law (law@cygnus.com)
2237
2238 * cse.c (simplify_relational_operation): If MODE specifies a
2239 mode wider than HOST_WIDE_INT, then the high word of a CONST_INT
2240 is derived from the sign bit of the low word.
2241
ca55abae
JM
2242Mon Sep 15 11:43:38 1997 Jason Merrill <jason@yorick.cygnus.com>
2243
2244 Support dwarf2 unwinding on PUSH_ROUNDING targets like the x86.
2245
2246 * dwarf2.h: Add DW_CFA_GNU_args_size.
2247 * frame.c (execute_cfa_insn): Likewise.
2248 * dwarf2out.c (dwarf_cfi_name, output_cfi): Likewise.
2249 (dwarf2out_args_size, dwarf2out_stack_adjust): New fns.
2250 (dwarf2out_frame_debug): If this isn't a prologue or epilogue
2251 insn, hand it off to dwarf2out_stack_adjust.
2252 (dwarf2out_begin_prologue): Initialize args_size.
2253 * frame.h (struct frame_state): Add args_size.
2254 * libgcc2.c (__throw): Use args_size.
2255 * final.c (final_scan_insn): If we push args, hand off all insns
2256 to dwarf2out_frame_debug.
2257 * defaults.h (DWARF2_UNWIND_INFO): OK for !ACCUMULATE_OUTGOING_ARGS.
2258
2259 * dwarf2out.c dwarf2out_frame_debug): Fix typo.
2260 Handle epilogue restore of SP from FP.
2261 * emit-rtl.c (gen_sequence): Still generate a sequence if the
2262 lone insn has RTX_FRAME_RELATED_P set.
2263
2264 * frame.c (extract_cie_info): Handle "e" augmentation.
2265 * dwarf2out.c (ASM_OUTPUT_DWARF_*): Provide definitions in the
2266 absence of UNALIGNED_*_ASM_OP.
2267 (UNALIGNED_*_ASM_OP): Only provide defaults if OBJECT_FORMAT_ELF.
2268 (output_call_frame_info): Use "e" instead of "z" for augmentation.
2269 Don't emit augmentation fields length.
2270 (dwarf2out_do_frame): Move outside of #ifdefs.
2271 * defaults.h (DWARF2_UNWIND_INFO): Don't require unaligned data
2272 opcodes.
2273
2274 * sparc.h (UNALIGNED_INT_ASM_OP et al): Don't define here after all.
2275 * sparc/sysv4.h (UNALIGNED_INT_ASM_OP): Define here.
2276 * sparc/sunos4.h (DWARF2_UNWIND_INFO): Define to 0.
2277 * sparc/sun4gas.h: New file.
2278 * configure.in: Use sun4gas.h if SunOS 4 --with-gnu-as.
2279
2280 * collect2.c (write_c_file_stat, write_c_file_glob): Declare
2281 __register_frame_table and __deregister_frame.
2282
1d77fa53
BK
22831997-09-15 Brendan Kehoe <brendan@cygnus.com>
2284
2285 * except.c (find_exception_handler_labels): Use xmalloc instead of
2286 alloca, since MAX_LABELNO - MIN_LABELNO can be more than 1 million
2287 in some cases.
2288
8be52aaa
JL
2289Sun Sep 14 21:01:23 1997 Jeffrey A Law (law@cygnus.com)
2290
2291 * Makefile.in: Various changes to build info files
2292 in the object tree rather than the source tree.
2293
a3ee3246
JL
2294Sun Sep 14 12:24:30 1997 Jeffrey A Law (law@cygnus.com)
2295
2296 * fixinc.math: New file to fix math.h on some systems.
2297 * configure.in (freebsd, netbsd): Use fixinc.math on these
2298 systems.
2299 * configure: Rebuilt.
2300
124da275
JL
2301Sun Sep 14 11:11:05 1997 Jeffrey A Law (law@cygnus.com)
2302
2303 * regmove.c (regmove_optimize): If we end up moving the
2304 original insn due to lifetime overlaps, make sure to move
2305 REG_NOTES too.
2306
fca9d4b0
MH
2307Sat Sep 13 15:51:11 1997 Manfred Hollstein <manfred@s-direktnet.de>
2308
2309 * Makefile.in (INSTALL_{PROGRAM,DATA}): Use value found by configure.
2310
326ee7a3
JL
2311Sat Sep 13 12:57:26 1997 Jeffrey A Law (law@cygnus.com)
2312
2313 * haifa-sched.c (add_branch_dependences): Make each insn in
2314 a SCHED_GROUP_P block explicitly depend on the previous insn.
2315
ca55abae
JM
2316Fri Sep 12 13:49:58 1997 Jason Merrill <jason@yorick.cygnus.com>
2317
2318 * except.h: Prototype dwarf2 hooks.
2319 * expr.c: Adjust.
2320
5188d2b2
JW
2321Thu Sep 11 17:43:55 1997 Jim Wilson <wilson@cygnus.com>
2322
2323 * configure.in (native_prefix): Delete.
2324 (mips-dec-netbsd): Don't set prefix.
2325 (*linux*): Don't set prefix.
2326
2e384318
FF
2327Thu Sep 11 15:48:32 1997 Fred Fish <fnf@ninemoons.com>
2328
70988851
FF
2329 * protoize.c: Include <varargs.h> only if HAVE_VARARGS_H is
2330 defined. If not defined, include <sys/varargs.h> if
2331 HAVE_SYS_VARARGS_H is defined.
2332 * configure.in: Test for varargs.h and sys/varargs.h.
2333 * configure: Regenerate with autoconf.
2334 * config.in: Regenerate with autoheader.
2335
2e384318
FF
2336 * cpplib.c (quote_string): Cast first arg of sprintf call
2337 from "unsigned char *" to "char *".
2338 (output_line_command): Ditto.
2339 (macroexpand): Ditto.
2340 (do_line): Cast atoi arg from "unsigned char *" to "char *".
2341
3fb2f401
JL
2342Wed Sep 10 21:37:30 1997 Jeffrey A Law (law@cygnus.com)
2343
f2e4e16f
JL
2344 * version.c: Bump for snapshot.
2345
3fb2f401
JL
2346 * Makefile.in (compare): Exit with nonzero status if there
2347 are comparison failures. Note which files failed the
2348 comparison test in .bad_compare.
2349
d26cb668
L
2350Wed Sep 10 17:05:46 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
2351
2352 * config/alpha/elf.h (CPP_PREDEFINES): Remove -D__PIC__ -D__pic__.
2353
ac64120e
JW
2354Wed Sep 10 16:37:28 1997 Fred Fish <fnf@ninemoons.com>
2355
2356 * Makefile.in (LN, LN_S): New macros, use where appropriate.
2357 * aclocal.m4 (GCC_PROG_LN_S, GCC_PROG_LN): New tests.
2358 * configure.in: Use GCC_PROG_LN_S and GCC_PROG_LN.
2359 * configure: Regenerated.
2360
2361Thu Sep 11 11:09:43 1997 Jeffrey A Law (law@cygnus.com)
2362
2363 * loop.c (strength_reduce): Fix typo.
2364
db87ec0b
JW
2365Wed Sep 10 16:01:15 1997 Jim Wilson <wilson@cygnus.com>
2366
2367 * m88k/m88k.c (struct option): Rename to struct options.
2368 * m88k/dolph.h (INITIALIZE_TRAMPOLINE): Delete here.
2369 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE): Delete ifdef and comments.
2370 * libgcc2.c (__enable_execute_stack): Check for __sysV88__ not
2371 __DOLPHIN__ or sysV88.
2372
04395f96
JW
2373Wed Sep 10 14:58:40 1997 Jim Wilson <wilson@cygnus.com>
2374
2375 * emit-rtl.c (gen_lowpart_common): For a SUBREG, add in word when
2376 create new subreg.
2377
becdcf6d
JL
2378Wed Sep 10 15:19:22 1997 Jeffrey A Law (law@cygnus.com)
2379
2380 * config.sub: Accept 'amigados' for backward compatability.
2381
04395f96 2382Wed Sep 10 14:05:08 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
3979dfb8
JW
2383
2384 * Makefile.in (testsuite/site.exp): New target.
2385 (check-gcc, check-g++): Depend on testsuite/site.exp.
2386 Don't stop for failure.
2387
ca55abae
JM
2388Wed Sep 10 12:59:57 1997 Jason Merrill <jason@yorick.cygnus.com>
2389
2390 * expr.c (expand_builtin): Only support __builtin_dwarf_fp_regnum()
2391 if DWARF2_UNWIND_INFO.
2392
2393Wed Sep 10 11:49:20 1997 Jason Merrill <jason@yorick.cygnus.com>
2394
2395 Add support for exception handling using DWARF 2 frame unwind info.
2396 Currently works on SPARC and MIPS, and almost on x86.
2397
2398 * libgcc2.c (get_reg, put_reg, get_return_addr, put_return_addr,
2399 next_stack_level, in_reg_window): Helper fns.
2400 (__throw): Implement for DWARF2_UNWIND_INFO.
2401
2402 * expr.c (expand_builtin): Handle builtins used by __throw.
2403 * tree.h (enum built_in_function): Add builtins used by __throw.
2404 * c-decl.c (init_decl_processing): Declare builtins used by __throw.
2405 * dwarf2out.c (expand_builtin_dwarf_fp_regnum): Used by __throw.
2406 * except.c (expand_builtin_unwind_init): Hook for dwarf2 __throw.
2407 (expand_builtin_extract_return_addr): Likewise.
2408 (expand_builtin_frob_return_addr): Likewise.
2409 (expand_builtin_set_return_addr_reg): Likewise.
2410 (expand_builtin_eh_stub): Likewise.
2411 (expand_builtin_set_eh_regs): Likewise.
2412 (eh_regs): Choose two call-clobbered registers for passing back values.
2413
2414 * frame.c, frame.h: New files for parsing dwarf 2 frame info.
2415 * Makefile.in (LIB2ADD): New variable. Add $(srcdir)/frame.c.
2416 (libgcc2.a): Use it instead of $(LIB2FUNCS_EXTRA) $(LANG_LIB2FUNCS)
2417 (stmp-multilib): Likewise.
2418 ($(T)crtbegin.o, $(T)crtend.o): Add -fno-exceptions.
2419
2420 * except.c: #include "defaults.h".
2421 (exceptions_via_longjmp): Default depends on DWARF2_UNWIND_INFO.
2422 (emit_throw): Don't defeat assemble_external if DWARF2_UNWIND_INFO.
2423 (register_exception_table_p): New fn.
2424 (start_eh_unwinder): Don't do anything if DWARF2_UNWIND_INFO.
2425 (end_eh_unwinder): Likewise.
2426
2427 * crtstuff.c: Wrap .eh_frame section, use EH_FRAME_SECTION_ASM_OP,
2428 call __register_frame and __deregister_frame as needed.
2429 * varasm.c (eh_frame_section): New fn if EH_FRAME_SECTION_ASM_OP.
2430 * dwarf2out.c (EH_FRAME_SECTION): Now a function-like macro. Check
2431 EH_FRAME_SECTION_ASM_OP.
2432 * sparc/sysv4.h (EH_FRAME_SECTION_ASM_OP): Define.
2433 * mips/iris6.h: (EH_FRAME_SECTION_ASM_OP): Define.
2434 (LINK_SPEC): Add __EH_FRAME_BEGIN__ to hidden symbols.
2435
2436 * dwarf2out.c (output_call_frame_info): If no support for
2437 EXCEPTION_SECTION, mark the start of the frame info with a
2438 collectable tag.
2439 * collect2.c (frame_tables): New list.
2440 (is_ctor_dtor): Recognise frame entries.
2441 (scan_prog_file): Likewise.
2442 (main): Pass -fno-exceptions to sub-compile. Also do collection
2443 if there are any frame entries.
2444 (write_c_file_stat): Call __register_frame_table and
2445 __deregister_frame as needed.
2446 (write_c_file_glob): Likewise.
2447
2448 * defaults.h (DWARF2_UNWIND_INFO): Default to 1 if supported.
2449 Also require unaligned reloc support.
2450 * sparc.h (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
2451 UNALIGNED_DOUBLE_INT_ASM_OP): Define here.
2452 * sparc/sysv4.h: Not here.
2453
2454 * toplev.c (compile_file): Call dwarf2out_frame_{init,finish}.
2455 * dwarf2out.c (dwarf2out_init): Don't call dwarf2out_frame_init.
2456 (dwarf2out_finish): Don't call dwarf2out_frame_finish.
2457
2458 * libgcc2.c (L_eh): Reorganize, moving code shared by different
2459 EH implementations to the top.
2460 (find_exception_handler): Split out. Start from 0. Compare against
2461 end with >=.
2462 (__find_first_exception_table_match): Use it.
2463 * except.c (output_exception_table): Don't do anything if there's
2464 no table. Don't output a first entry of zeroes.
2465 (eh_outer_context): Adjust properly.
2466 (add_eh_table_entry): Use xrealloc.
2467 * toplev.c (compile_file): Just call output_exception_table.
2468
2469Wed Sep 10 11:30:36 1997 Jason Merrill <jason@cygnus.com>
2470
2471 * i386.c (ix86_prologue): Add dwarf2 support for !do_rtl case.
2472
2473Wed Sep 10 08:17:10 1997 Torbjorn Granlund <tege@pdc.kth..se>
2474
2475 * except.c (eh_outer_context): Do masking using expand_and.
2476
b4d940a2
JL
2477Wed Sep 10 01:38:30 1997 Doug Evans <dje@cygnus.com>
2478
2479 Add port done awhile ago for the ARC cpu.
2480 * arc/arc.h: New file.
2481 * arc/arc.c: New file.
2482 * arc/arc.md: New file.
2483 * arc/initfini.c: New file.
2484 * arc/lib1funcs.asm: New file.
2485 * arc/t-arc: New file.
2486 * arc/xm-arc.h: New file.
2487 * ginclude/va-arc.h: New file.
2488 * ginclude/stdarg.h: Include va-arc.h ifdef __arc__.
2489 * ginclude/varargs.h: Likewise.
2490 * Makefile.in (USER_H): Add va-arc.h.
2491 * configure.in (arc-*-elf*): Recognize.
2492 * longlong.h: Add ARC support.
2493
2494Wed Sep 10 01:32:54 1997 Jeffrey A Law (law@cygnus.com)
2495
2496 * expr.c (clear_storage): Use CONST0_RTX instead of const0_rtx.
2497 when clearing non-BLKmode data.
2498
10211581
JL
2499Wed Sep 10 00:29:29 1997 Manfred Hollstein <manfred@s-direktnet.de>
2500
9dfc6eba
MH
2501 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE) Define.
2502 * libgcc2.c (__enable_execute_stack): Provide for sysV88 too.
2503
55259219
MH
2504 * xm-m88k.h (USG): Only define if it hasn't already been defined.
2505
2506 * Makefile.in (risky-stage1): Delete gratutious whitespace.
2507
ee291069
MH
2508 * Makefile.in (clean): Delete libgcc1-test.
2509
10211581
JL
2510 * Makefile.in (INSTALL): cd to $(srcdir) before running texinfo.
2511
2512Tue Sep 9 17:07:36 1997 Stan Cox <coxs@dg-rtp.dg.com>
48f0be1b
SC
2513
2514 * m88k.c (m88k_expand_prologue): Set MEM_IN_STRUCT_P of va_list
2515 template.
2516
ca55abae
JM
2517Tue Sep 9 09:50:02 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2518
2519 * dwarf2out.c (output_call_frame_info): Call named_section.
2520
8f3d79e0
JL
2521Tue Sep 9 09:12:17 1997 Jeffrey A Law (law@cygnus.com)
2522
2523 * haifa-sched.c (print_value): Fix last change.
2524
ca55abae
JM
2525Tue Sep 9 01:30:37 1997 Jason Merrill <jason@yorick.cygnus.com>
2526
2527 * mips.h (DWARF_FRAME_REGNUM): Use the same numbering regardless of
2528 write_symbols.
2529
2530Mon Sep 8 16:32:43 1997 Jason Merrill <jason@yorick.cygnus.com>
2531
2532 * mips.c (function_prologue): Set up the CFA when ABI_32.
2533
2534 * sparc.c (save_regs): Check dwarf2out_do_frame instead of DWARF2_DEBUG
2535 for dwarf2 unwind info.
2536 (output_function_prologue, sparc_flat_output_function_prologue): Same.
2537
2538 * final.c (final_end_function): Check dwarf2out_do_frame instead
2539 of DWARF2_DEBUG for dwarf2 unwind info.
2540 (final_scan_insn): Likewise.
2541 (final_start_function): Likewise. Initialize dwarf2 frame debug here.
2542 (final): Not here.
2543
2544 * expr.c (expand_builtin_return_addr): Only SETUP_FRAME_ADDRESSES if
2545 count > 0.
2546
2547 * varasm.c (exception_section): Check EXCEPTION_SECTION first.
2548
74aca74b
NC
2549Mon Sep 8 15:15:11 1997 Nick Clifton <nickc@cygnus.com>
2550
2551 * v850.h (ASM_SPEC): Pass on target processor.
2552 (CPP_PREDEFINES): Only define if not already specified.
2553 (TARGET_VERSION): Only define if not already specified.
2554 (MASK_CPU, MASK_V850, MASK_DEFAULT): Bits to specify target
2555 processor.
2556 (EXTRA_SWITCHES): Extra entries in the switches array.
2557 (TARGET_DEFAULT): Set default target processor.
2558
c0b04148
JW
2559Mon Sep 8 18:26:35 1997 Jim Wilson <wilson@cygnus.com>
2560
2561 * m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): In MOTOROLA
2562 cases, add %# and %/, and add : to make them into extended asms.
2563
52b7724b
WL
2564Sun Sep 7 23:57:50 1997 Weiwen Liu <liu@hepunix.physics.yale.edu>
2565
2566 * alias.c (init_alias_analysis): Clean up incompatible pointer
2567 type warning in bzero.
2568 * regmove.c (regmove_optimize): Ditto.
2569 * haifa-sched.c (find_rgns): Ditto.
2570
2571 * haifa-sched.c (print_value): Clean up ptr->int cast
2572 warnings.
2573
0c82f6bf
FF
2574Sun Sep 7 23:18:32 1997 Fred Fish <fnf@ninemoons.com>
2575
2576 * INSTALL: Change 'amigados' to 'amigaos' to match current usage.
2577 * install.texi (Configurations): Ditto.
2578 * config.sub: Ditto.
2579
1fed1f51
WL
2580Sun Sep 7 22:56:56 1997 Weiwen Liu (liu@hepvms.physics.yale.edu)
2581
2582 * Makefile.in (sdbout.o): Depend on insn-config.h.
2583
239e68f6
JW
2584Sun Sep 7 18:44:50 1997 Jim Wilson <wilson@cygnus.com>
2585
2586 * m68k/m68k.h (TARGET_SWITCHES): For 68000, 68302, subtract MASK_68881.
2587 For 68303, 68332, cpu32, subtract MASK_68040_ONLY.
2588
267c09ab
JM
2589Sun Sep 7 18:30:46 1997 Jason Merrill <jason@yorick.cygnus.com>
2590
2591 * dwarf2out.c (dwarf2out_frame_debug): Assume that in a PARALLEL
2592 prologue insn, only the first elt is significant.
2593 (output_call_frame_info): For exception handling, always use 4-byte
2594 fields as specified by the dwarf2 spec.
2595 Don't skip trivial FDEs.
2596
db7cafb0
JL
2597Sun Sep 7 14:19:39 1997 Jeffrey A Law (law@cygnus.com)
2598
2599 * version.c: Bump for snapshot.
2600
2601Sun Sep 7 14:17:36 1997 Torbjorn Granlund (tege@pdc.kth.se)
2602
2603 * expmed.c (expand_divmod): Make op1_is_pow2 depend on unsignedp
2604 for negative constants. Promote EXACT_DIV_EXPR to TRUNC_DIV_EXPR
2605 when op1_is_pow2.
2606
2607Sun Sep 7 13:46:46 1997 Jeffrey A Law (law@cygnus.com)
2608
bf520cd9
JL
2609 * final.c (shorten_branches): During first pass, assume worst
2610 possible alignment for ADDR_VEC and ADDR_VEC_DIFF insns.
db7cafb0
JL
2611
2612 * Makefile.in (distclean): Remove various things left around
2613 by running the testsuite.
2614
7ed46111
MH
2615Sun Sep 7 13:16:06 1997 Manfred Hollstein <manfred@s-direktnet.de>
2616
2617 * configure.in (out_file): Emit definition to config.status in order
2618 to have a defined value for configure.lang.
2619 * configure: Re-built.
2620
e41cea70
JJH
2621Sun Sep 7 09:59:08 1997 Jan-Jaap van der Heijden (J.J.vanderHeijden@student.utwente.nl)
2622
bf520cd9 2623 * configure.in: Make symlink to as-new rather than as.new. Similarly
e41cea70
JJH
2624 for ld-new.
2625 * configure: Rebuilt.
2626
1aeb1f6f
JW
2627Fri Sep 5 16:54:55 1997 Jim Wilson <wilson@cygnus.com>
2628
2629 * profile.c (output_func_start_profiler): Set DECL_EXTERNAL to zero.
2630
770a0113
CK
2631Fri Sep 5 16:16:44 1997 Christian Kuehnke <Christian.Kuehnke@arbi.Informatik.Uni-Oldenburg.DE>
2632
2633 * sparc/sparc.md: Add ultrasparc scheduling support.
2634 * sparc/sparc.h (RTX_COSTS): For MULT give v9 a cost of 25 insns.
2635
f5ffa999
PDM
2636Fri Sep 5 14:04:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2637
2638 * integrate.c (save_for_inline_copying): Use 0, not NULL_PTR,
2639 as initial value for real_label_map.
2640 (copy_for_inline): Likewise.
2641
acceac1a
R
2642Fri Sep 5 13:36:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
2643
2644 * sched.c (update_flow_info) When looking if to set found_split_dest
2645 or found_orig_dest, look at all parts of a PARALLEL.
2646 * haifa-sched.c (update_flow_info): Likewise.
2647
f84271d9
JL
2648Fri Sep 5 10:08:44 1997 Jeffrey A Law (law@cygnus.com)
2649
2650 * v850: New directory for v850 port.
2651 * v850/lib1funcs.asm: New file.
2652 * t-v850, v850.c, v850.h, v850.md, xm-v850.h: New files.
2653 * ginclude/va-v850.h: New file.
2654 * ginclude/varargs.h, ginclude/stdarg.h: Include va-mn10200.h.
2655 * configure.in (mn10200-*-*): New target.
2656 * configure: Rebuilt.
2657 * config.sub: Handle v850-elf.
2658 * Makefile.in (USER_H): Add va-mn10200.h.
2659 * invoke.texi: Document v850 stuff.
2660
89cc6098
JW
2661Fri Sep 5 09:37:50 1997 Jim Wilson (wilson@cygnus.com)
2662
04940ba5
JW
2663 * sdbout.c (plain_type_1, case ARRAY_TYPE): Verify that TYPE_DOMAIN
2664 has integer TYPE_{MAX,MIN}_VALUE before using them.
2665
89cc6098
JW
2666 * m68k/m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Add
2667 __HPUX_ASM__ versions.
2668
c74f7db8
JL
2669Fri Sep 5 09:08:44 1997 Jeffrey A Law (law@cygnus.com)
2670
bf520cd9 2671 * install.sh: Delete duplicate install script.
c74f7db8 2672
914ec131
SC
2673Thu Sep 4 23:14:27 1997 Stan Cox (coxs@dg-rtp.dg.com)
2674
2675 * reg-stack.c (subst_stack_regs): Pop the stack register for a
2676 computed goto which sets the same stack register.
2677
2678 * reg-stack.c (compare_for_stack_reg): Swap only if the source and
2679 destination are both on the regstack.
2680 (subst_stack_regs_pat): Put the destination at the top of the regstack.
2681
c1090daa
JW
2682Thu Sep 4 15:02:27 1997 Jim Wilson <wilson@cygnus.com>
2683
d5d1738a
JW
2684 * mips.md (nonlocal_goto_receiver): Define.
2685
f4da7881
JW
2686 * profile.c (output_arc_profiler): Check next_insert_after for non
2687 NULL before deferencing it.
2688
c1090daa
JW
2689 * i386/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define to -fPIC.
2690
da594c94
JL
2691Thu Sep 4 14:51:57 1997 Jeffrey A Law (law@cygnus.com)
2692
2693 * i386.h (CPP_CPU_DEFAULT): Avoid using #elif.
2694
3e28fe44
MM
2695Thu Sep 4 15:01:49 1997 Michael Meissner <meissner@cygnus.com>
2696
2697 * toplev.c (rest_of_compilation): For passes starting with
2698 flow_analysis, use print_rtl_with_bb instead of print_rtl.
2699
2700 * print-rtl.c (print_rtl_single): Print a single rtl value to a
2701 file.
2702
2703 * flow.c (print_rtl_with_bb): Print which insns start and end
2704 basic blocks. For the start of a basic block, also print the live
2705 information.
2706
7053ca72
JW
2707Thu Sep 4 11:51:43 1997 Jim Wilson <wilson@cygnus.com>
2708
417b0fa2
JW
2709 * toplev.c (main): Change #elif to #else/#ifdef
2710
7053ca72
JW
2711 * tlink.c: Include ctype.h.
2712 * ginclude/va-mips.h: Add _VA_MIPS_H_ENUM ifdef/define/endif.
2713
f05a8b25
MM
2714Thu Sep 4 11:17:16 1997 Mikeael Meissner (meissner@cygnus.com)
2715
2716 * bitmap.c: Conditionally include stdlib.h.
bf520cd9 2717 (free): Provide a declaration if NEED_DECLARATION_FREE.
f05a8b25 2718
02d7a569
JS
2719Thu Sep 4 09:58:53 1997 Joel Sherrill (joel@OARcorp.com)
2720
2721 * i960/i960.h: Added default for SUBTARGET_SWITCHES macro.
2722
6030b6af
JW
2723Thu Sep 4 09:53:20 1997 Jim Wilson (wilson@cygnus.com)
2724
2725 * profile.c (output_arc_profiler): Verify next_insert_after is an
2726 INSN before and after skipping a stack pop.
2727
04da53bd
R
2728Thu Sep 4 07:39:19 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
2729
2730 * final.c (shorten_branches): Don't count the lengths of deleted
2731 instructions.
2732
780532a4
JL
2733Thu Sep 4 09:43:01 1997 Jeffrey A Law (law@cygnus.com)
2734
2735 * version.c: Bump for snapshot.
2736
22fa5b8a
MM
2737Thu Sep 4 11:04:21 1997 Michael Meissner <meissner@cygnus.com>
2738
2739 * bitmap.h (EXECUTE_IF_AND_IN_BITMAP): New macro, to iterate over
2740 two bitmaps ANDed together.
2741 (bitmap_print): Declare.
2742
2743 * bitmap.c (function_obstack): Don't declare any more.
2744 (bitmap_obstack): Obstack for allocating links from.
2745 (bitmap_obstack_init): New static to say whether to initialize
2746 bitmap_obstack.
2747 (bitmap_element_allocate): Use bitmap_obstack to allocate from.
2748 (bitmap_release_memory): Free all memory allocated from
2749 bitmap_obstack.
2750
2751 * basic-block.h (EXECUTE_IF_AND_IN_REG_SET): New macro, invoke
2752 EXECUTE_IF_AND_IN_BITMAP.
2753
57163df0
JW
2754Wed Sep 3 10:39:42 1997 Jim Wilson <wilson@cygnus.com>
2755
fa8b6024
JW
2756 * alias.c (true_dependence): Address with AND can alias scalars.
2757 (anti_dependence, output_dependence): Likewise.
2758
57163df0
JW
2759 * alias.c (true_dependence): Test x for BLKmode, in addition to mem.
2760
8aa4e786
JS
2761Wed Sep 3 09:28:50 CDT 1997 Joel Sherrill (joel@OARcorp.com)
2762
2763 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h, m68k/rtems.h,
2764 mips/rtems64.h, pa/rtems.h, rs6000/rtems.h, sh/rtems.h,
2765 sparc/rtems.h (subtarget_switches): Removed SUBTARGET_SWITCHES
2766 definitions. Use -qrtems instead of -mrtems.
2767
feb21122
RL
2768Wed Sep 3 09:05:41 1997 Robert Lipe (robert@dgii.com)
2769
2770 * xm-sco5.h (sys_siglist): Define.
2771 (SYS_SIGLIST_DECLARED): Likewise.
2772
704af6a1
JL
2773Tue Sep 2 23:33:33 1997 Jeffrey A Law (law@cygnus.com)
2774
2775 * expr.c (convert_move): Handle truncation from TQFmode to QFmode.
2776
127cd405
TG
2777Wed Sep 3 02:09:30 1997 Torbjorn Granlund <tege@pdc.kth..se>
2778
2779 * except.c (eh_outer_context): Expand masking operation using
2780 expand_binop.
2781
8cf02b47
JW
2782Tue Sep 2 18:09:39 1997 Jim Wilson <wilson@cygnus.com>
2783
2784 * alpha.md (floatdisf2-1): New pattern.
2785
49dad301
JL
2786Tue Sep 2 18:41:55 1997 Jeffrey A Law (law@cygnus.com)
2787
068f1cb8
JL
2788 * xm-svr4.h (SYS_SIGLIST_DECLARED): Define.
2789 * xm-news.h (SYS_SIGLIST_DECLARED): Likewise.
f04e7122 2790 * xm-sysv4.h (SYS_SIGLIST_DECLARED): Likewise.
068f1cb8
JL
2791 * gcc.texi: Note that if you define sys_siglist that you should
2792 also define SYS_SIGLIST_DECLARED.
2793
49dad301
JL
2794 * mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instructions
2795 are relative to the next instruction, not the current instruction.
2796
a1729519
JW
2797Tue Sep 2 14:22:43 1997 Jim Wilson <wilson@cygnus.com>
2798
2799 * local-alloc.c (contains_replace_regs): New function.
2800 (update_equiv_regs): When adding a REG_EQUIV note for a set of a MEM,
2801 verify that there is no existing REG_EQUIV note, and add a call to
2802 contains_place_regs.
2803
290c8b1f
L
2804Tue Sep 2 12:48:11 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
2805
2806 * config/alpha/elf.h (CPP_PREDEFINES): Add -D__PIC__ -D__pic__.
2807 (STARTFILE_SPEC): Always use crtbegin.o%s
2808 (ENDFILE_SPEC): Always use crtend.o%s.
2809
a6a503ed
JW
2810Tue Sep 2 12:00:36 1997 Jim Wilson <wilson@cygnus.com>
2811
2812 * alpha/alpha.h (PREFERRED_RELOAD_CLASS): Return NO_REGS if NO_REGS
2813 is passed in.
2814 * emit-rtl.c (gen_lowpart_common): Add code to convert CONST_INT to
2815 SFmode for 64 bit hosts.
2816
a94729bc
PH
2817Tue Sep 2 13:42:38 1997 Paul N. Hilfinger <hilfingr@CS.Berkeley.EDU>
2818
2819 * fixincludes: Permits spaces between # and define. Discard C++
2820 comments in sys/pci.h on HP/UX 10.20.
2821
c9e03727
JL
2822Mon Sep 1 22:13:18 1997 Jeffrey A Law (law@cygnus.com)
2823
2824 * version.c: Bump for snapshot.
2825
2eddfed1
JL
2826 * pa.c (restore_unscaled_index_insn_codes): New function.
2827 (record_unscaled_index_insn_codes): Likewise.
2828 (output_function_prologue): Call restore_unscaled_index_insn_codes.
2829 (output_function_epilogue): Free memory for unscaled_index_insn_codes.
2830 (pa_reorg): Call record_unscaled_index_insn_codes.
2831
c9e03727
JL
2832 * haifa-sched.c (move_insn): Handle notes correctly for insns
2833 with SCHED_GROUP_P set.
2834
a5d6a95b
L
2835Mon Sep 1 16:58:57 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
2836
2837 * alpha/xm-linux.h (USE_BFD): Undef before define.
2838
bc4ddc77
JW
2839Mon Sep 1 16:25:34 1997 Jim Wilson <wilson@cygnus.com>
2840
2841 * cse.c (cse_insn): Don't record BLKmode values.
2842
f3e0ca6c
SW
2843Mon Sep 1 11:25:47 1997 Stephen Williams (steve@icarus.icarus.com)
2844
2845 * i960.h (LINK_SPEC): Handle "-mjX" and "-mrp" switches.
2846
e3512ac2
JL
2847Mon Sep 1 08:29:46 1997 Jeffrey A Law (law@cygnus.com)
2848
a63d08e6
JL
2849 * cccp.c (sys_errlist): Remove special 4.4bsd declaration.
2850 * collect2.c (sys_errlist): Likewise.
2851 * cpplib.c (sys_errlist): Likewise.
2852 * gcc.c (sys_errlist): Likewise.
2853 * protoize (sys_errlist): Likewise.
2854 * configure.in: Check for strerror.
2855 * xm-freebsd.h (HAVE_STRERROR): Remove definition.
2856 * xm-gnu.h (HAVE_STRERROR): Likewise.
2857 * xm-linux.h (HAVE_STRERROR): Likewise.
2858 * xm-netbsd.h (HAVE_STRERROR): Likewise.
2859 * xm-bsd386.h (HAVE_STRERROR): Likewise.
2860 * xm-cygwin32.h (HAVE_STRERROR): Likewise.
2861 * xm-dos.h (HAVE_STRERROR): Likewise.
2862 * xm-mingw32.h (HAVE_STRERROR): Likewise.
2863 * xm-pa.h (HAVE_STRERROR): Likewise.
2864 * xm-papro.h (HAVE_STRERROR): Likewise.
2865 * xm-sysv4.h (HAVE_STRERROR): Likewise.
2866 * configure, config.in: Rebuilt.
2867
db814993
JL
2868 * Makefile.in: Add several missing "else true" clauses.
2869
e3512ac2
JL
2870 * collect2.c: Change DONT_DECLARE_SYS_SIGLIST to SYS_SIGLIST_DECLARED.
2871 * mips-tfile.c: Likewise.
2872 * gcc.texi: DONT_DECLARE_SYS_SIGLIST: Remove docs.
2873 * xm-linux.h (DONT_DECLARE_SYS_SIGLIST): Delete definition.
2874 * xm-freebsd.h, xm-bsd386.h, xm-sysv4.h, xm-sol2.h: Likewise.
2875 * configure.in: Check for sys_siglist declaration.
2876 * configure, config.in: Rebuilt.
2877
5d84b57e
JS
2878Mon Sep 1 08:04:07 1997 Joel Sherrill (joel@OARcorp.com)
2879
2880 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h,
2881 m68k/rtems.h, mips/rtems64.h, pa/rtems.h, rs6000/rtems.h,
2882 sparc/rtems.h (subtarget_switches): Added -mrtems as a switch.
2883 * i960/i960.h: Added SUBTARGET_SWITCHES macro.
2884 * rs6000/sysv4.h (extra_subtarget_switches): Added new
2885 macro EXTRA_SUBTARGET_SWITCHES.
2886 * configure.in (sh*-*-rtems*): New target.
2887 * sh/rtems.h: New file.
2888 * sh/sh.h: Added SUBTARGET_SWITCHES macro.
2889 * configure: Rebuilt.
2890
2599dcc7
JW
2891Sat Aug 30 22:54:26 1997 Jim Wilson <wilson@cygnus.com>
2892
2893 * unroll.c (calculate_giv_inc): Handle increment with code PLUS.
2894
3b7e5ef4
DE
2895Sat Aug 30 10:49:46 1997 David Edelsohn <edelsohn@mhpcc.edu>
2896
2897 * rs6000.md: Make DF fused-add operations pay attention to
2898 -mno-fused-add.
2899
5cd5f4a7
JW
2900Fri Aug 29 19:19:54 1997 Jim Wilson <wilson@cygnus.com>
2901
2902 * i386/xm-sysv4.h (DONT_DECLARE_SYS_SIGLIST): Define.
2903
63e7fe9b
JL
2904Fri Aug 29 16:13:51 1997 Jeffrey A Law (law@cygnus.com)
2905
2906 * pa.md (reload_peepholes): Make sure operand is a REG before
2907 examining REGNO. Allow general registers too.
2908
eb7b11fd
JW
2909Fri Aug 29 11:42:04 1997 Jim Wilson <wilson@cygnus.com>
2910
2911 * varasm.c (mark_constants): Don't look inside CONST_DOUBLEs.
2912
c760091a
PT
2913Fri Aug 29 09:33:20 1997 Philipp Thomas (kthomas@lxi165.gwdg.de)
2914
5cd5f4a7 2915 * dwarf2out.c (build_abbrev_table): Use xrealloc, not xmalloc
c760091a
PT
2916 to reallocate abbrev_die_table.
2917
57583338
JW
2918Thu Aug 28 15:14:46 1997 Jim Wilson <wilson@cygnus.com>
2919
2920 * m68k/m68k.md (iorsi_zexthi_ashl16): Disable.
2921
eae4b970
AS
29221997-08-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2923
4f91a0f8
AS
2924 * Makefile.in (config.status): Depend on version.c
2925
eae4b970
AS
2926 * expr.h (insn_gen_function): Reenable prototype.
2927
2928 * expr.c (move_by_pieces_1, clear_by_pieces_1): Fix prototype of
2929 first parameter.
2930
00fc09e1
JW
2931Thu Aug 28 13:01:43 1997 Jim Wilson <wilson@cygnus.com>
2932
2933 * i386.c (ix86_expand_epilogue): Emit blockage instruction when pic.
2934
2601ebca
JL
2935Thu Aug 28 07:03:15 1997 Jeffrey A Law (law@cygnus.com)
2936
2937 * version.c: Bump for latest snapshot.
2938
2939 * bc-optab.c: Conditionally include stdlib.h.
2940 (free): Provide a declaration if NEED_DECLARATION_FREE.
2941 * tree.c (free): Provide a declaration if NEED_DECLARATION_FREE.
2942 * rtl.h (free): Remove declaration.
2943 * tree.h (free): Remvoe declaration.
2944
2945 * configure: Rebuilt.
2946
e5eb27e5
JL
2947Wed Aug 27 21:32:20 1997 Jeffrey A Law (law@cygnus.com)
2948
2949 * flags.h (flag_move_all_movables): Declare.
2950 (flag_reduce_all_givs): Likewise.
2951 * loop.c (move_movables): Handle flag_move_all_movables.
2952 (strength_reduce): Handle flag_reduce_all_givs.
2953 * toplev.c (flag_move_all_movables): Define.
2954 (flag_reduce_all_givs): Likewise.
2955 (f_options): Add -fmove-all-movables and -freduce-all-givs.
2956 * invoke.texi: Document new options, including alias stuff that
2957 wasn't included last time.
2958
d995a6dc
BM
2959Wed Aug 27 18:08:51 1997 Bob Manson (manson@cygnus.com)
2960
2961 * t-h8300: Use TARGET_LIBGCC2_CFLAGS instead of LIBGCC2_CFLAGS.
2962 * t-mn10200: Ditto.
2963 * t-vxsparc: Ditto.
2964 * t-vxworks68: Ditto.
2965 * t-vxworks960: Ditto.
2966 * t-vx29k: Ditto.
2967
ba64ca33
RH
2968Wed Aug 27 16:35:29 1997 Richard Henderson <rth@cygnus.com>
2969
2970 * alpha/xm-alpha.h (alloca): Define alloca to builtin_alloca for GNUC
2971 if not already defined, and USE_C_ALLOCA not defined.
2972
ca20876d
JW
2973Wed Aug 27 16:08:43 1997 Jim Wilson <wilson@cygnus.com>
2974
7818d6fc
JW
2975 * config.guess: Replace with script that uses ../config.guess.
2976
ca20876d
JW
2977 * config/alpha/elf.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1
2978 if USE_GNULIBC_1 is not defined.
2979
704a6306
RH
2980Wed Aug 27 15:49:12 1997 Richard Henderson <rth@cygnus.com>
2981
2982 * alpha/elf.h (LINK_SPEC): Conditionalize on USE_GNULIBC_1.
2983 * config.guess: Recognize alpha-linux-gnulibc1.
2984 * configure.in (alpha-*-linux-gnulibc1): New target.
2985 (alpha-*-linux-gnu*): Don't build crtbegin/end.
2986
67f68fd2
JW
2987Wed Aug 27 11:52:58 1997 Jim Wilson <wilson@cygnus.com>
2988
2989 * m68k.md (iorsi3_internal): Readd ! TARGET_5200 check lost in
2990 last change.
2991
88016fb7
DE
2992Wed Aug 27 01:56:18 1997 Doug Evans <dje@seba.cygnus.com>
2993
2994 * loop.c (combine_movables): Earlier insns don't match later ones.
2995
bba17b29
L
2996Wed Aug 27 01:24:25 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
2997
2998 * config/linux.h (CC1_SPEC): Define it only if not defined.
2999
3000 * config/m68k/linux.h (CC1_SPEC): Undefine it before include
3001 <linux.h>
3002
3003 * config/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1 if
3004 USE_GNULIBC_1 is not defined.
3005
33d2808b 3006 * config/rs6000/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1.
bba17b29
L
3007
3008 * config/sparc/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined
3009 as 1 if USE_GNULIBC_1 is not defined.
3010
ed4044e0
JL
3011Wed Aug 27 00:49:14 1997 Jeffrey A Law (law@cygnus.com)
3012
f345de42
JL
3013 * reorg.c (dbr_schedule): Allow current_function_return_rtx
3014 to be something other than a REG.
3015 * function.c (expand_function_end): Fix current_function_return_rtx
3016 if it was a pseudo.
3017
ed4044e0
JL
3018 * t-freebsd (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
3019 * x-netbsd: Likewise
3020 * x-dgux (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS
3021 (INSTALL_HEADERS): Delete.
3022 * x-dguxbcs: Likewise.
3023 * x-hp3bsd44: Likewise
3024 * x-pa: Likewise.
3025
47d36400
BS
3026Wed Aug 27 00:30:00 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
3027
3028 * i386.md (pop): pop increments the stack pointer.
3029 (prologue_set_stack_ptr): New pattern.
3030 * i386.c (ix86_expand_prologue): Use prologue_set_stack_ptr
3031 instead of subsi3.
3032
fc79eafe
JW
3033Tue Aug 26 18:50:32 1997 Jim Wilson <wilson@cygnus.com>
3034
3035 * reload.c (find_reloads, case '0'): Reject matching a non-offsettable
3036 address where an offsettable address is required.
3037
c5da853f
MH
3038Tue Aug 26 17:54:56 1997 Michael P. Hayes (michaelh@ongaonga.chch.cri.nz>
3039
3040 * loop.c (check_final_value): Don't miss a biv increment in a
3041 parallel.
3042
d4ef15f2
JW
3043Tue Aug 26 12:03:49 1997 Jim Wilson (wilson@cygnus.com)
3044
3045 * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Check
3046 TYPE_DECL_IS_STUB instead of DECL_NAME.
3047
10549cbd
JW
3048Mon Aug 25 23:27:10 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
3049
3050 * objc/Make-lang.in ($(OBJC_O)): Also depend on cc1obj.
3051
3052Mon Aug 25 23:27:10 1997 Jim Meyering <meyering@eng.ascend.com>
3053
3054 * objc/Make-lang.in ($(OBJC_O)): Also depend on $(GCC_PASSES).
3055
484df988
JL
3056Mon Aug 25 13:12:24 1997 Jeffrey A Law (law@cygnus.com)
3057
3058 * haifa-sched.c (find_pre_sched_live): Remove #if 0 code.
3059 (find_post_sched_live): Likewise.
3060
3061 * haifa-sched.c (schedule_block): Remove old code to get arguments
3062 from hard regs into pseudos early.
3063
39dfb55a
JL
3064Mon Aug 25 08:55:00 1997 Jeffrey A Law (law@cygnus.com)
3065
3066 * version.c: Bump for new snapshot.
3067
3068 * local-alloc.c (update_equiv_regs): All the target to reject
3069 promotion of some REG_EQUAL to REG_EQUIV notes.
3070 * pa.h (DONT_RECORD_EQUIVALENCE): Define.
3071
3072 * pa.c (secondary_reload_class): (mem (mem ... )) does not need
3073 secondary reloads.
3074
3075 * pa.c (hppa_builtin_saveregs): Emit a blockage insn after the
3076 store of the argument registers.
3077
3078Mon Aug 25 08:39:02 1997 Craig Burley (burley@gnu.ai.mit.edu)
3079
3080 * fold-const.c (multiple_of_p): New function.
3081 (fold): Turn some cases of *_DIV_EXPR into EXACT_DIV_EXPR.
3082
d78778eb
JL
3083Mon Aug 25 01:47:41 1997 Jeffrey A Law (law@cygnus.com)
3084
3085 * expr.h (insn_gen_function): Temporarily remove prototype.
3086
feb9ea1a
JW
3087Sun Aug 24 17:22:21 1997 Jim Wilson <wilson@cygnus.com>
3088
3089 * Makefile.in (install-info): Don't cd into srcdir. Add srcdir to
3090 filenames. Use sed to extract base filename for install.
3091
b6ffe602
JC
3092Sat Aug 23 18:19:40 1997 John F. Carr <jfc@mit.edu>
3093
3094 * unroll.c (find_splittable_givs): Only share if two givs have the
3095 same add and multiply values.
3096
2ebfd230
JW
3097Sat Aug 23 14:36:27 1997 Jim Wilson <wilson@cygnus.com>
3098
3099 * m68k/next.h (GO_IF_INDEXABLE_BASE): Fix typo in undef.
3100 * m68k/m68kemb.h (LIB_SPEC): Add missing comment end before it.
3101
251ffdee
JL
3102Sat Aug 23 00:18:22 1997 Jeffrey A Law (law@cygnus.com)
3103
3104 * pa.c (pa_reorg): Always put begin_brtab and end_brtab insns
3105 around branch tables.
3106 * pa.md (begin_brtab, end_brtab): Only emit the .begin_brtab
3107 and .end_brtab directives if TARGET_GAS.
3108
19372aa1
JW
3109Fri Aug 22 14:05:55 1997 Jim Wilson <wilson@cygnus.com>
3110
27314274
JW
3111 * alias.c (true_dependence): Pass x_addr not x to varies.
3112
19372aa1
JW
3113 * acconfig.h (NEED_DECLARATION_CALLOC): Add.
3114 * configure.in: Add GCC_NEED_DECLARATION call for calloc.
3115 * rs6000/xm-rs6000.h (malloc, realloc, calloc, free): Delete
3116 declarations.
3117 * config.in, configure: Regenerate.
3118
2a2c8203
JC
3119Thu Aug 21 23:52:16 1997 John F. Carr <jfc@mit.edu>
3120
3121 * alias.c (find_base_value): Improve handling of PLUS, MINUS, and
3122 LO_SUM.
3123 (record_set): Handle LO_SUM like PLUS.
3124 (init_alias_analysis): When following chains of base addresses,
3125 do not stop on reaching a hard register.
3126
d80357b7
JL
3127Thu Aug 21 20:17:37 1997 Jeffrey A Law (law@cygnus.com)
3128
3129 * version.c: Bump for new snapshot.
3130
b4f32d7b
JW
3131Thu Aug 21 17:28:00 1997 Jim Wilson <wilson@cygnus.com>
3132
3133 * alpha.h (ARCH_ASM_FILE_START): Define.
3134 (ASM_FILE_START): Use ARCH_ASM_FILE_START.
3135 * osf12.h, osf2or3.h (ARCH_ASM_FILE_START): Redefine to null string.
3136
ca363bb6
JL
3137Thu Aug 21 10:22:19 1997 Jeffrey A Law (law@cygnus.com)
3138
3139 * Makefile.in (install-common): Put gcov comment at start of line.
3140
7557aa98
JL
3141Wed Aug 20 22:47:33 1997 Jeffrey A Law (law@cygnus.com)
3142
3143 * alias.c (init_alias_analysis): When simplifying the reg_base_value
3144 array, simplify entries for hard registers too.
3145
c34e3ae4
DL
3146Wed Aug 20 12:35:47 1997 Dave Love <d.love@dl.ac.uk>
3147
3148 * dwarf2.h (enum dwarf_call_frame_info): Remove trailing comma from
3149 list.
3150
e3eef942
JW
3151Wed Aug 20 11:58:33 1997 Jim Wilson <wilson@cygnus.com>
3152
3153 * stmt.c (start_cleanup_deferal, end_cleanup_deferal): Test
3154 block_stack before dereferencing it.
3155
3156Wed Aug 20 11:57:11 1997 Michael Meissner <meissner@cygnus.com>
246853b9
MM
3157
3158 * rs6000.h (ISSUE_RATE): Define instead of MACHINE_issue_rate.
3159
04f41951
JM
3160Tue Aug 19 17:10:56 1997 Jason Merrill <jason@yorick.cygnus.com>
3161
3162 * cplus-dem.c: Add 'extern' to prepends_underscore.
3163
e933cbe0
JL
3164Tue Aug 19 09:34:57 1997 Jeffrey A Law (law@cygnus.com)
3165
62d65906
JL
3166 * haifa-sched.c (ISSUE_RATE): Renamed from MACHINE_issue_rate.
3167 (get_issue_rate): Delete.
3168 * pa.h (ISSUE_RATE): Define.
3169
2da05a5b
JL
3170 * configure.in: Turn on haifa by default for the PA.
3171 * configure: Rebuilt.
3172 * pa.c (override_options): Accept -mschedule=7200 option.
3173 (pa_adjust_cost): No longer need to scale costs for newer
3174 processors.
3175 * pa.h (enum processor_type): Add PROCESSOR_7200.
3176 * pa.md: Revamp scheduling parameters to work better with
3177 haifa. Add scheduling parameters for the 7200.
3178
4f64eaca
JL
3179 * haifa-sched.c (move_insn): Reemit notes for SCHED_GROUP_P
3180 insns too.
3181 (schedule_block): When adjusting basic_block_{head,end}, account
3182 for movement of SCHED_GROUP_P insns too.
3183
3184 * haifa-sched.c (debug_dependencies): Fix thinko.
3185
e933cbe0
JL
3186 * Makefile.in (EXPECT, RUNTEST, RUNTESTFLAGS): Define.
3187 (site.exp, check, check-g++, check-gcc): New targets.
3188
4f64eaca 3189 * haifa-sched.c: Make lots of variables static.
61822835 3190
e9576d2c
L
3191Tue Aug 19 07:18:34 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
3192
3193 * expr.h, real.h: Finish prototyping.
3194
61822835
JL
3195Mon Aug 18 21:49:02 1997 Jim Wilson <wilson@cygnus.com>
3196
3197 * reload.c (find_reloads): Add code to convert RELOAD_FOR_OPADDR_ADDR
3198 reloads to RELOAD_FOR_OPERAND_ADDRESS reloads.
3199 * reload1.c: Undo bugfix from Aug 11.
3200
f24b370a
MM
3201Mon Aug 18 17:39:02 1997 Mike Meissner <meissner@cygnus.com>
3202
3203 * configure.in ({powerpc,rs6000}*-*-*, --with-cpu): Remove single
3204 quotes around the name.
3205 * configure: Regenerate.
3206
1c4c5851
JW
3207Mon Aug 18 13:46:47 1997 Jim Wilson <wilson@cygnus.com>
3208
3209 * Makefile.in (stmp-multilib-sub): Fix typo in last change.
3210
71abb567
MH
3211Thu Aug 7 10:33:13 1997 Manfred Hollstein <manfred@s-direktnet.de>
3212
3213 * Makefile.in (sub-makes): Pass the current value of LANGUAGES down
3214 to sub-makes to avoid building more passes than the user might have
3215 requested on the command line.
3216
6042434a
DL
3217Sun Aug 17 15:42:17 1997 Dave Love (d.love@dl.ac.uk)
3218
3219 * configure.in: Expurgate `broken_install' (install is
3220 autoconfed).
3221
3222 * configure.lang: Substitute autoconfed ${INSTALL} (not currently
3223 relevant).
3224
38ea060f
JL
3225Sat Aug 16 01:08:12 1997 Jeffrey A Law (law@cygnus.com)
3226
3227 * loop.c (is_power_of_2, is_conditional_branch): Delete unused
3228 functions and declarations.
3229 (analyze_loop_iterations): Use condjump_p.
3230 (insert_bct): Likewise. Use exact_log2.
3231
f187056f
JL
3232Fri Aug 15 23:48:32 1997 Jeffrey A Law (law@cygnus.com)
3233
3234 * haifa-sched.c (find_post_sched_live): Call FREE_REG_SET as needed.
3235 (schedule_region): Likewise.
3236 (schedule_insns): Likewise.
3237
3238 * PROJECTS: Update with Haifa stuff.
3239
9af06254
JL
3240Fri Aug 15 12:49:56 1997 Jeffrey A Law (law@cygnus.com)
3241
3242 * version.c: Change the version string to look like:
11c21791 3243 egcs-2.90.00 970814 (gcc2-970802 experimental).
9af06254 3244
0945e937
JL
3245 * loop.c (is_conditional_branch): Make definition match declaration.
3246
9af06254
JL
3247 * gcc.c: Take out experimental snapshot warning message.
3248
ebc25a17
MM
3249Fri Aug 15 13:43:39 1997 Michael Meissner <meissner@cygnus.com>
3250
3251 * haifa-sched.c (debug_dependencies): Use GET_NOTE_INSN_NAME to
3252 print out the names of the notes. Print out the name of the insn
3253 that is not a note, and not an {,CALL_,JUMP_}INSN.
3254
610ce97e
JM
3255Wed Aug 13 17:32:38 1997 Jason Merrill <jason@yorick.cygnus.com>
3256
3257 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
3258 again for the slot after we give it RTL.
3259
992d1248
DE
3260Wed Aug 13 01:03:37 1997 Doug Evans <dje@canuck.cygnus.com>
3261
3262 * configure.in (haifa configury): Fix typo.
3263 * configure: Regenerate.
3264
7bb6fbd1
JL
3265Tue Aug 12 10:20:36 1997 Jeffrey A Law (law@cygnus.com)
3266
3267 * version.c: Bump version to "gcc-3.0.0 970802 experimental".
3268
3269 * gcc.info*: Rebuilt.
3270
3271 * COPYING.g77, README.g77: New files.
3272 * real.c (ereal_unto_float, ereal_unto_double): New functions.
3273 * real.h (ereal_unto_float, ereal_unto_double): Declare them.
3274 (REAL_VALUE_UNTO_TARGET_DOUBLE, REAL_VALUE_UNTO_TARGET_SINGLE): Define.
3275
8c660648
JL
3276Mon Aug 11 14:50:55 1997 Jeffrey A Law (law@cygnus.com)
3277
3278 * Integrate Haifa instruction scheduler.
3279 * Makefile.in (ALL_CFLAGS): Add SCHED_CFLAGS. Prefix all references
3280 to sched with $(SCHED_CFLAGS.
3281 * configure.in: Handle --enable-haifa.
3282 * configure: Rebuilt.
3283 * flags.h: Add new flags for haifa instruction scheduler.
3284 * genattrtab.c (expand_units): For haifa, don't subtract one
3285 when computing blockage.
3286 * toplev.h (flag_schedule_interblock): Haifa scheduler flag.
3287 (flag_schedule_speculative): Ditto.
3288 (flag_schedule_speculative_load): Ditto.
3289 (flag_schedule_speculative_load_dangerous): Ditto.
3290 (flag_schedule_reverse_before_reload): Ditto.
3291 (flag_schedule_reverse_after_reload): Ditto.
3292 (flag_branch_on_count_reg): Ditto.
3293 (f_options): Add Haifa switches.
3294 (main): Turn off some Haifa options if appropriate macro is
3295 defined. Process Haifa switches.
3296 * unroll.c (iteration_info): No longer static, since Haifa
3297 scheduler uses it.
3298 (unroll_loop): Inform HAIFA scheduler about loop unrolling factor.
3299 * unroll.c (unroll_loop): Set loop_unroll_iter, loop_start_value.
3300 * loop.h (loop_unroll_factor, loop_number): Add HAIFA decls.
3301 * loop.h (loop_initial_value,loop_unroll_iter): New globals.
3302 * loop.c (loop_optimize): If HAIFA is defined, allocate additional
3303 storage for the Haifa scheduler.
3304 (mark_loop_jump): If HAIFA defined, set LABEL_OUTSIDE_LOOP_P and
3305 LABEL_NEXTREF.
3306 (strength_reduce): If HAIFA and HAVE_decrement_and_branch_on_count
3307 are defined, call analyze_loop_iterations and insert_bct to use
3308 countdown loops.
3309 (record_giv): Refine test for jumps out of loops if HAIFA is
3310 defined.
3311 (analyze_loop_iterations): New function to identify if we can use
3312 a countdown loop.
3313 (insert_bct): Insert countdown loop.
3314 (instrument_loop_bct): Low level code to insert countdown loop.
3315 (loop_number): Calculate UID of loop.
3316 (indirect_jump_in_function_p): Return true if an indirect jump is
3317 in the function.
3318 (is_power_of_2): Return true if value is a power of 2.
3319 (is_conditional_branch): Return true if insn is a conditional
3320 jump.
3321 (fix_bct_param): Process -fbct-{min,max}-N switches.
3322 (check_bct_param): Return true if loop should be instrumented.
3323 * loop.c (loop_initial_value,loop_unroll_iter): New globals.
3324 (loop_optimize): Initialize.
3325 (get_condition_for_loop): Ditto.
3326 * loop.c (strength_reduce): Inside of code that uses #ifdef
3327 HAVE_decrement_and_branch_on_count code, test it to make sure the
3328 condition is true.
3329 (instrument_loop_bct): Ditto.
3330 * haifa-sched.c: New file.
3331
3332
3333 * Integrate regmove pass.
3334 * Makefile.in (OBJS): Add regmove.o
3335 (regmove.o): Add dependencies.
3336 * flow.c (find_use_as_address): No longer static.
3337 * rtl.h (find_use_as_address): Declare.
3338 * toplev.c (regmove_dump, flag_regmove): Define.
3339 (f_options): Add -fregmove.
3340 (regmove_dump_file, regmove_time): Define.
3341 (fatal_insn): Close the regmove dump file.
3342 (compile_file): Initialize regmove_time; open/close the regmove dump
3343 file as needed. Print regmove time as needed.
3344 (rest_of_compilation): Run regmove pass if requested, dump
3345 RTL after regmove if requested.
3346 (main): If -O2 or more, turn on regmove. Handle dump switches.
3347 * regmove.c: New file.
3348
aa32d841
JL
3349Mon Aug 11 14:15:02 1997 Jeffrey A Law (law@cygnus.com)
3350
3351 * Integrate tlink patch from jason@cygnus.com
3352 * gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
3353 (process_command): Increment n_switches for them. Don't discard
3354 their args. Validate them.
3355 (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
3356 From Rohan Lenard.
3357 (process_command): Set include_prefixes from COMPILER_PATH.
3358 (main): Set COLLECT_GCC_OPTIONS sooner.
3359 * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
3360 * tlink.c, hash.c, hash.h: New files.
3361 * Makefile.in (USE_COLLECT2): Always use collect2.
3362 (collect2): Depend on and link in hash.o and tlink.o.
3363 (tlink.o, hash.o): Add dependencies.
3364
5fa39bfe
JL
3365Mon Aug 11 10:04:49 1997 Jeffrey A Law (law@cygnus.com)
3366
9ae8ffe7
JL
3367 * Integrate alias analysis changes from jfc@mit.edu
3368 * Makefile.in (OBJS): Add alias.o
3369 (alias.o): Add dependencies.
3370 * alias.c: New file.
3371 * sched.c: Remove alias analysis code. It lives in alias.c now.
9ae8ffe7 3372 (sched_analyze_2): Add new arguments to true_dependence.
9ae8ffe7
JL
3373 (schedule_insns): Always call init_alias_analysis.
3374 * calls.c (expand_call): Note calls to malloc, calloc, and realloc;
3375 mark return value from such functions as a pointer and keep track of
3376 them for alias analysis. If a return value from a function is a
3377 pointer, mark it as such.
3378 * combine.c (distribute_notes): Handle REG_NOALIAS.
3379 * cse.c (struct write_data): Delete. No longer needed.
3380 (invalidate): Don't call set_nonvarying_address_components anymore.
3381 Use true_dependence to decide if an entry should be removed from
3382 the hash table.
3383 (invalidate_memory): Remove WRITES argument, simplify appropriately.
3384 Fix all callers.
3385 (note_mem_written): Similarly for WRITE_PTR argument.
3386 (invalidate_from_clobbers): Similarly for W argument.
3387 (invalidate_for_call): Remove memory elements from the hash table.
3388 (refers_to_mem_p, cse_rtx_addr_varies_p): Deleted.
3389 (cse_rtx_varies_p): New function. Derived from old
3390 cse_rtx_addr_varies_p.
3391 (cse_insn): Remove WRITES_MEMORY and INIT variables and all references.
3392 Don't call note_mem_written anymore. Stack pushes invalidate the stack
3393 pointer if PUSH_ROUNDING is defined. No longer need to call
3394 cse_rtx_addr_varies_p to decide if a MEM should be invalidated.
3395 (skipped_writes_memory): Remove variable.
3396 (invalidate_skipped_set): Simplify and wewrite to use invalidate_memory.
3397 (invalidate_skipped_block): Simplify for new alias analysis code.
3398 (cse_set_around_loop): Likewise.
3399 (cse_main): Call init_alias_analysis.
3400 * flags.h (flag_alias_check, flag_argument_noalias): Declare.
3401 * toplev.c (flag_alias_check, flag_argument_noalias): Define.
3402 (f_options): Add new alias checking arguments.
3403 (main): Set flag_alias_check when optimizing.
3404 * local_alloc (validate_equiv_mem_from_store): Add new arguments
3405 to true_dependence.
3406 (memref_referenced_p): Likewise.
3407 * loop.c (NUM_STORES): Increase to 30.
3408 (prescan_loop): Only non-constant calls set unknown_address_altered.
3409 (invariant_p): Add new arguments to true_dependence.
3410 (record_giv): Initialize unrolled and shared fields.
3411 (emit_iv_add_mult): Call record_base_value as needed.
3412 * loop.h (struct induction): Add unrolled and shared fields.
3413 * unroll.c (unroll_loop): Call record_base_value as needed.
3414 (copy_loop_body): Likewise.
3415 (final_biv_value): Likewise.
3416 (final_giv_value): Likewise.
3417 (find_splittable_regs): Likewise. Only create one new pseudo
3418 if we have multiple address GIVs that were combined with the same
3419 dst_reg GIV. Note when a new register is created due to unrolling.
3420 * rtl.c (reg_note_name): Add REG_NOALIAS.
3421 * rtl.h (enum reg_note): Similarly.
3422 (rtx_varies_p, may_trap_p, side_effects_p): Declare.
3423 (volatile_refs_p, volatile_insn_p, remove_note): Likewise.
3424 (note_stores, refers_to_regno_p, reg_overlap_mentioned_p): Likewise.
3425 (true_dependence, read_dependence, anti_dependence): Likewise.
3426 (output_dependence, init_alias_analysis, end_alias_analysis): Likewise.
3427 (mark_user_reg, mark_reg_pointer): Likewise.
3428
3429
3430 * Integrate reload bugfix from Wilon which enables the PA port
5fa39bfe
JL
3431 to bootstrap again.
3432 * reload1.c (reload): Sum needs for both OPADDR_ADDR and and
3433 OPERAND_ADDRESS when computing how many registers an insn needs.
3434 (reload_reg_free_p): OPADDR_ADDR and OPERAND_ADDRESS reloads do
3435 conflict.
3436 (reload_reg_free_before_p): Treat OPERAND_ADDRESS reloads just like
3437 OPADDR_ADDR reload.
3438 (reload_reg_reaches_end_p): For RELOAD_FOR_OPADDR_ADDR insns, registers
3439 in reload_reg_use_in_op_addr do not reach the end.
3440 do not reach the end.
3441 (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
3442 RELOAD_FOR_OPERAND_ADDRESS.
3443
3444Sun Aug 10 12:00:20 1997 Jeffrey A Law (law@cygnus.com)
3445
2dcfcb56 3446 * egcs project officially starts.
861bb6c1 3447
This page took 0.486666 seconds and 5 git commands to generate.