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