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