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