"SfR Fresh" - the SfR Freeware/Shareware Archive 
Member "gcc-4.1-20080630/gcc/ChangeLog-1997" of archive gcc-4.1-20080630.tar.gz:
As a special service "SfR Fresh" has tried to format the requested source page into HTML format using source code syntax highlighting with prefixed line numbers.
Alternatively you can here view or download the uninterpreted source code file.
That can be also achieved for any archive member file by clicking within an archive contents listing on the first character of the file(path) respectively on the according byte size field.
1 Wed Dec 31 14:42:18 1997 Ian Lance Taylor <ian@cygnus.com>
2
3 * configure.in: Set and substitute host_exeext. Use it when creating
4 the assembler and linker symlinks.
5 * configure: Rebuild.
6 * Makefile.in (exeext): Set to @host_exeext@.
7 (build_exeext): New variable, set to @build_exeext@.
8 (FLAGS_TO_PASS): Pass down build_exeext.
9 (STAGESTUFF): Use build_exeext, not exeext, for gen* and bi*
10 programs.
11
12 Wed Dec 31 10:05:44 1997 Jeffrey A Law (law@cygnus.com)
13
14 * mn10200.md (addsi3, subsi3): Fix thinkos.
15
16 Tue Dec 30 00:04:49 1997 Richard Henderson <rth@cygnus.com>
17
18 * sparc.h (ASM_OUTPUT_MI_THUNK): Move %o7 through %g1 instead of
19 save+restore. Fix pic+big_offset delay slot. Use "pic" case for
20 unix always, since we want to be able to thunk to functions in a
21 shared library from an application.
22
23 Mon Dec 29 14:37:31 1997 Ian Lance Taylor <ian@cygnus.com>
24
25 * mips/t-ecoff (CROSS_LIBGCC1): Define to libgcc1-asm.a.
26 (LIB1ASMSRC, LIB1ASMFUNCS): Define.
27
28 Mon Dec 29 14:03:38 1997 Jeffrey A Law (law@cygnus.com)
29
30 * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
31 offset's mode is not ptr_mode, convert it.
32
33 Mon Dec 29 15:58:18 1997 Michael Meissner <meissner@cygnus.com>
34
35 * libgcc2.c (inhibit_libc): Don't define inhibit_libc when cross
36 compiling if it was already defined.
37
38 Sun Dec 28 00:32:16 1997 Jeffrey A Law (law@cygnus.com)
39
40 * flow.c (find_basic_blocks): Don't create a new basic block
41 for calls in a LIBCALL block.
42
43 Sun Dec 28 00:30:24 1997 David Edelsohn <edelsohn@mhpcc.edu>
44
45 * config/fp-bit.c (L_df_to_sf): Fix typo in last change.
46
47 Sat Dec 27 22:43:12 1997 Jeffrey A Law (law@cygnus.com)
48
49 * cse.c (rtx_cost): Remove conflicting default case.
50
51 Sat Dec 27 21:20:02 1997 Richard Henderson <rth@cygnus.com>
52
53 * configure.in: Move default enabling of Haifa out of for loop.
54 * configure: Rebuild.
55
56 Thu Dec 25 01:02:54 1997 Jeffrey A Law (law@cygnus.com)
57
58 * version.c: Bump for snapshot.
59
60 1997-12-25 Teemu Torma <tot@trema.com>
61
62 * Makefile.in (GTHREAD_FLAGS): New var.
63 (LIBGCC2_CFLAGS): Added $(GTHREAD_FLAGS).
64 (distclean): Remove gthr-default.h.
65
66 * configure.in: Accept dce as a thread package.
67 Check for thread.h and pthread.h.
68 Link gthr-default.h to appropriate thread file and set
69 gthread_flags.
70 (hppa1.1-*-hpux10*): If --enable-threads, use dce threads and
71 include multilib definitions from pa/t-dce-thr.
72 (sparc-*-solaris2*): Enable threads by default, if thread.h or
73 pthread.h is found, preferring posix threads over solaris ones.
74
75 * config/pa/t-dce-thr: New file.
76 * config/pa/t-pa: Removed multilibs.
77 * config/sparc/t-sol2: Likewise.
78
79 * gthr.h: New file.
80 * gthr-single.h: New file.
81 * gthr-posix.h: New file.
82 * gthr-solaris.h: New file.
83 * gthr-dce.h: New file.
84 * libgcc-thr.h: Removed.
85 * objc/thr-dce.c: New file copied from thr-decosf1.c.
86
87 * frame.c: Include gthr.h instead of libgcc-thr.h.
88 * libgcc2.c: Include gthr.h instead of libgcc-thr.h.
89 (eh_context_initialize): If __gthread_once fails, use static eh
90 context.
91 (eh_context_free): Call __gthread_key_dtor.
92
93 Wed Dec 24 23:33:17 1997 Jeffrey A Law (law@cygnus.com)
94
95 * expr.h (MUST_PASS_IN_STACK): Allow target port to override.
96
97 Wed Dec 24 23:12:14 1997 Jim Wilson <wilson@cygnus.com>
98
99 * cse.c (max_insn_uid): New variable.
100 (cse_around_loop): Use max_insn_uid.
101 (cse_main): Set max_insn_uid.
102
103 * abi64.h (LONG_MAX_SPEC): Check MIPS_ABI_DEFAULT and TARGET_DEFAULT,
104 and define __LONG_MAX__ appropriately. Add support for -mabi=X,
105 -mlong64, and -mgp{32,64} options.
106 * mips.c (mips_abi): Change type to int.
107 * mips.h (enum mips_abi_type): Delete.
108 (ABI_32, ABI_N32, ABI_64, ABI_EABI): Define as constants.
109 (mips_abi): Change type to int.
110
111 Wed Dec 24 22:38:34 1997 John Carr <jfc@mit.edu>
112
113 * flags.h, toplev.c, calls.c, alias.c: Remove flag_alias_check;
114 optimization is now always enabled.
115
116 * calls.c (expand_call): Recognize C++ operator new as malloc-like
117 function.
118
119 * alias.c (memrefs_conflict_p): Eliminate tests now done by
120 base_alias_check.
121 (*_dependence): Call canon_rtx before base_alias_check.
122 (init_alias_once): New function to precompute set of registers which
123 can hold Pmode function arguments.
124
125 * rtl.h: Declare init_alias_once.
126
127 * toplev.c (compile_file): Call init_alias_once.
128
129 Wed Dec 24 22:34:55 1997 Jeffrey A Law (law@cygnus.com)
130
131 * tree.c (restore_tree_status): Do not dereference a null pointer.
132
133 Tue Dec 23 12:56:46 1997 Paul Eggert <eggert@twinsun.com>
134
135 * genattrtab.c (main): Check HAVE_{G,S}ETRLIMIT in addition to
136 RLIMIT_STACK. This maintains consistency with the recent, similar
137 patch to cccp.c and toplev.c.
138
139 Tue Dec 23 05:17:28 1997 Richard Henderson <rth@cygnus.com>
140
141 * genattrtab.c (expand_units): For large nr opclasses, expand
142 function_units_used with ORX to prevent blowups. Tag with FFS.
143 (num_unit_opclasses): New variable.
144 (gen_unit): Update it.
145 (enum operator): Add ORX_OP.
146 (operate_exp): Treat ORX as or, except don't expand across an if.
147 Reuse number rtx's after operating on them.
148 (check_attr_value): Accept IOR, AND, & FFS.
149 (write_test_expr): Transmute `in_comparison' to `flags'. Allow
150 for attribute value caching. Handle CONST_STRING, IF_THEN_ELSE.
151 (write_expr_attr_cache, write_toplevel_expr): New functions.
152 (write_attr_get): Handle FFS-tagged expressions.
153 (make_canonical): Don't expand const attributes.
154 (convert_const_symbol_ref): Dike out.
155 (evaluate_eq_attr): Handle SYMBOL_REF.
156 (main): Don't emit get_attr_foo for const attributes.
157
158 * alpha.c (override_options): Reinstate PROCESSOR_EV6.
159 (alpha_adjust_cost): Add EV6 tuning; streamline EV5 tests.
160 * alpha.h (REGISTER_MOVE_COST): Increase ftoi/itof cost slightly.
161 * alpha.md: Redo all of the scheduling, adding EV6 support, and
162 combining function units where possible.
163 (attr "type"): Split loads, stores, cmov into int/fp. Combine
164 multiplies and divides. Add EV6 sqrt, ftoi, itof.
165 (attr "opsize"): New attribute.
166 (sqrtsf2-1, sqrtdf2-1): Provide proper TP_INSN patterns.
167 (movsf2-[12], movdf2-[12]): Provide CIX varients; don't allow CIX
168 to control register allocation.
169 (movsi2-1, movdi2-1): Likewise.
170
171 Tue Dec 23 03:53:21 1997 Richard Henderson <rth@cygnus.com>
172
173 * alpha.h (CPP_PREDEFINES, LIB_SPEC, LINK_SPEC, STARTFILE_SPEC,
174 MD_STARTFILE_PREFIX, ASM_FILE_START, ASM_SPEC, ASM_FINAL_SPEC):
175 Move OSF/1 specific defines out.
176 * alpha/elf.h (TARGET_VERSION, CPP_PREDEFINES, DEFAULT_VTABLE_THUNKS):
177 Move Linux specific defines out.
178 (LINK_SPEC): Genericize.
179 (ASM_FILE_START): Emit .arch if using more than the base insn set.
180 (ASM_OUTPUT_SOURCE_LINE): Remove; identical to alpha.h version.
181 (SDB_DEBUGGING_INFO): Remove; gas can't handle it.
182 (HANDLE_SYSV_PRAGMA): Define.
183 * alpha/osf.h: New file.
184 * alpha/linux.h: Split. Retain file-format independent defines.
185 Import Linux bits from elf.h.
186 (CPP_PREDEFINES): Take a file-format specific SUB_CPP_PREDEFINES.
187 (FUNCTION_PROFILER): _mcount takes its address in $28.
188 (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Remove undef.
189 * alpha/linux-ecoff.h: New file.
190 * alpha/linux-elf.h: New file.
191 * alpha/vms.h (LIB_SPEC, LINK_SPEC): Copy from osf.h.
192 * alpha/win-nt.h (TARGET_DEFAULT): Define.
193 * configure.in (alpha*-*-osf*, alpha*-*-linux*) [tm_file]:
194 Add new headers as appropriate.
195
196 * configure.in (alpha*): Enable Haifa by default.
197 (*-*-winnt3*): Change to winnt*, since we're not v3 specific.
198 * configure: Rebuild.
199
200 Tue Dec 23 03:14:54 1997 Richard Henderson <rth@cygnus.com>
201
202 * Makefile.in (clean): Remove the stages with their objects here ...
203 (distclean): ... instead of here.
204
205 Mon Dec 22 11:24:01 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
206
207 * cse.c (rtx_cost): Add default case in enumeration switch.
208 * fix-header.c (recognized_macro): Likewise.
209 (recognized_extern): Likewise.
210 (write_rbrac): Likewise.
211 * objc/objc-act.c (encode_aggregate): Likewise.
212 (gen_declarator): Likewise.
213 (gen_declspecs): Likewise.
214
215 Mon Dec 22 09:58:51 1997 Jeffrey A Law (law@cygnus.com)
216
217 * haifa-sched.c (create_reg_dead_note): Detect and handle another
218 case where we kill more regs after sched than were killed before
219 sched.
220 * sched.c (create_reg_dead_note): Similarly.
221
222 Mon Dec 22 09:18:37 1997 Jeffrey A Law (law@cygnus.com)
223
224 * c-pragma.c: Include flags.h.
225
226 Sun Dec 21 22:10:59 1997 Mumit Khan <khan@xraylith.wisc.edu>
227
228 * i386/cygwin32.h (NO_IMPLICIT_EXTERN_C): Don't assume anything
229 about system headers.
230 (LIB_SPEC): Add -ladvapi32 -lshell32 to be consistent with mingw32
231 and also to resolve symbols in prefix.c.
232
233 * i386/xm-cygwin32.h (HAVE_BCOPY): Define. This avoids a conflict
234 between gansidecl.h and newlib's _ansi.h when building libgcc2.a,
235 when the definitions in auto-config.h is not visible.
236 (HAVE_BZERO): Likewise.
237 (HAVE_BCMP): Likewise.
238 (HAVE_RINDEX): Likewise.
239 (HAVE_INDEX): Likewise.
240
241 Sun Dec 21 21:54:22 1997 Jeffrey A Law (law@cygnus.com)
242
243 * pa.c (emit_move_sequence): Handle a function label source
244 operand.
245
246 Sun Dec 21 16:13:55 1997 Nick Clifton <nickc@cygnus.com>
247
248 * c-pragma.c (handle_pragma_token): Generate warning messages
249 about unknown pragmas if warn_unknown_pragmas is set.
250
251 * c-decl.c (c_decode_option): Parse -Wunknown-pragmas command
252 line option to set variable: warn_unknown_pragmas.
253
254 Sun Dec 21 15:51:10 1997 Manfred Hollstein <manfred@lts.sel.alcatel.de>
255
256 * m68k/mot3300.h (ASM_BYTE_OP): Don't include '\t' in the
257 definition.
258 (ASM_OUTPUT_ASCII): Prefix ASM_BYTE_OP by one single '\t'.
259
260 Sun Dec 21 13:58:39 1997 Jeffrey A Law (law@cygnus.com)
261
262 * Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS): Define.
263 (libgcc2.a): Depend on $(DPBIT) and $(FPBIT). Add rules to
264 generate more fine grained floating point emulation libraries.
265 * config/fp-bit.c: Add protecting #ifdef to all functions so
266 that they can be compiled separately. If !FINE_GRAINED_LIBRARIES,
267 then compile all suitable functions.
268 (pack_d, unpack_d, fpcmp_parts): Add declarations, define with two
269 underscores to avoid namespace pollution.
270 * t-mn10200 (LIB2FUNCS_EXTRA): Remove fp-bit.c.
271 (FPBIT): Define.
272 * t-mn10300 (LIB2FUNCS_EXTRA): Remove fp-bit.c and dp-bit.c.
273 (FPBIT): Define.
274 (DPBIT): Define.
275
276 Sat Dec 20 11:26:47 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
277 Jeff Law <law@cygnus.com>
278
279 * bitmap.c (bitmap_clear): Ensure `inline' is at the beginning
280 of the declaration.
281 * c-decl.c (finish_decl): Use parentheses around && within ||.
282 * rtl.c: Include stdlib.h.
283 (read_skip_spaces): Add parentheses around assignments used as
284 truth values.
285 (read_rtx): Initialize list_rtx.
286 * cppexp.c (parse_number): Use || when operands are truth values.
287 * alias.c (find_base_value): Add default case.
288 (memrefs_conflict): Likewise.
289 * combine.c (sets_function_arg_p): Likewise.
290 * genemit.c (gen_exp): Likewise.
291 * local-alloc.c (contains_replace_regs): Likewise.
292 * rtlanal.c (jmp_uses_reg_or_mem): Likewise.
293 * fold-const.c (fold_convert): Use "&&" for truth values.
294 (fold): Add default case.
295 * sdbout.c (sdbout_field_types): Fix typo in declaration.
296 (sdbout_one_type): Add default case.
297 * alpha.c (alpha_sa_mask): Prototype only if OPEN_VMS.
298 (some_operand): Add default case.
299 (input_operand): Likewise.
300 (signed_comparison_operator): Likewise.
301 (divmod_operator): Likewise.
302 (alpha_set_memflags_1): Likewise.
303 * reload1.c (reload_cse_simplify_operands): Ensure function
304 always returns a value.
305 * scan-decls.c (scan_decls): Likewise.
306 * c-lex.c (skip_white_space): Fix typo in declaration.
307 * c-typeck.c (comp_target_types): Add parentheses around assignment
308 used as truth value.
309 (print_spelling): Likewise.
310 (constructor_implicit, constructor_result): Remove unused variables.
311 * collect2.c (scan_library): Protect prototype with
312 #ifdef SCAN_LIBRARIES.
313 * emit-rtl.c (find_line_note): Fix typo in declaration.
314 * final.c (asm_insn_count): Protect prototype with
315 #ifdef HAVE_ATTR_length.
316 * flow.c (find_auto_inc): Protect prototype with #ifdef AUTO_INC_DEC.
317 (try_pre_increment_1, try_pre_increment): Likewise.
318 * regclass.c (auto_inc_dec_reg_p): Protect prototype with
319 #ifdef FORBIDDEN_INC_DEC_CLASSES. Make return type explicit.
320 * gcov-io.h (__store_long, __write_long, __read_long): Fix
321 unsigned/signed comparisons.
322 * gcov.c (read_files): Remove unused "first_type" variable.
323 (scan _for_source_files): Initialize s_ptr.
324 (function_summary): Eliminate "%lf" formatting, use %ld for
325 longs.
326 (output_data): Initialize branch_probs and last_line_num.
327 Eliminate "%lf" formatting, use "%ld" for longs.
328
329 Fri Dec 19 17:31:11 1997 Ian Lance Taylor <ian@cygnus.com>
330
331 * mips16.S: New file.
332
333 * libgcc2.c (varargs): Handle mips16.
334
335 * expr.c (do_tablejump): Let CASE_VECTOR_PC_RELATIVE be an
336 expression.
337 * stmt.c (expand_end_case): Likewise.
338 * alpha.h (CASE_VECTOR_PC_RELATIVE): Update.
339 * fx80.h, gmicro.h, m68k.h, m88k.h, ns32k.h: Likewise.
340 * rs6000.h, sh.h, tahoe.h, v850.h, vax.h: Likewise.
341
342 Tue Dec 16 15:14:09 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
343
344 * objc/Make-lang.in: Create runtime-info.h and libobjc_entry.o in
345 the build directory.
346 (libobjc.a): Update dependency list.
347 (libobjc.dll): Likewise. Use libobjc_entry.o from the build
348 directory.
349 (objc/sendmsg.o): Add -Iobjc to find runtime-info.h.
350 (objc.mostlyclean): Remove runtime-info.h.
351
352 Fri Dec 19 00:19:42 1997 Richard Henderson <rth@cygnus.com>
353
354 * tree.c (build_range_type): Allow creation of ranges with no maximum.
355 * dbxout.c (dbxout_range_type): Handle missing TYPE_MAX_VALUE.
356 * dwarf2out.c (add_subscript_info): Likewise.
357 * dwarfout.c (subscript_data_attribute, byte_size_attribute): Likewise.
358 * sdbout.c (plain_type_1): Likewise.
359 * stmt.c (pushcase_range, all_cases_count, node_has_high_bound):
360 Likewise.
361 * fold-const.c (int_const_binop, fold_convert, make_range, fold):
362 Likewise.
363
364 Thu Dec 18 17:05:10 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
365
366 * mips.c (fatal): Remove declaration.
367
368 1997-12-18 Mark Mitchell <mmitchell@usa.net>
369
370 * integrate.c (get_label_from_map): New function.
371 (expand_inline_function): Use it. Initialize the label_map to
372 NULL_RTX instead of gen_label_rtx.
373 (copy_rtx_and_substitute): Use get_label_from_map.
374 * integrate.h (get_label_from_map): New function.
375 (set_label_from_map): New macro.
376 * unroll.c (unroll_loop): Use them.
377 (copy_loop_body): Likewise.
378
379 Thu Dec 18 19:19:57 1997 Ian Lance Taylor <ian@cygnus.com>
380
381 * mips/mips.h (INIT_SUBTARGET_OPTABS): Define if not defined.
382 (INIT_TARGET_OPTABS): Define.
383 * mips/ecoff.h: Include gofast.h before mips.h.
384 (INIT_SUBTARGET_OPTABS): Define instead of INIT_TARGET_OPTABS.
385 * mips/elf64.h: Likewise.
386 * mips/elf.h (ASM_OUTPUT_SECTION_NAME): Define.
387
388 Thu Dec 18 14:51:12 1997 Jason Merrill <jason@yorick.cygnus.com>
389
390 * except.c: Remove register_exception_table{,_p}.
391
392 Thu Dec 18 14:57:29 1997 Gavin Koch <gavin@cygnus.com>
393
394 * unroll.c (calculate_giv_inc): Handle constant increment found in
395 a MEM with an appropriate REG_EQUAL note.
396
397 * calls.c (expand_call): Implement LOAD_ARGS_REVERSED.
398
399 * dwarf2out.c (dwarf2out_frame_debug): Handle adjustments of the
400 frame pointer in the prologue.
401
402 Thu Dec 18 00:19:38 1997 Robert Lipe <robertl@dgii.com>
403
404 * i386/x-sco5 (CLIB): Deleted.
405 (ALLOCA): Added.
406 * i386/xm-sco5.h (USE_C_ALLOCA): Added.
407
408 Tue Dec 16 18:51:00 1997 Bill Moyer <billm@cygnus.com>
409
410 * config/m68k/m68k.c (output_function_prologue): Typecast
411 dwarf2out_cfi_label to (char *).
412 * config/m68k/m68kemb.h (STARTFILE_SPEC): Redefined to "".
413
414 Wed Dec 17 15:06:04 1997 Richard Henderson <rth@cygnus.com>
415
416 * sparc.md (jump): Don't use the annul bit around an empty loop.
417 Patch from Kevin.Kelly@East.Sun.COM.
418
419 Wed Dec 17 00:51:36 1997 Stan Cox (scox@cygnus.com)
420
421 * jump.c (jump_optimize): Don't use the return register as a
422 source1 of a conditional move.
423
424 Tue Dec 16 23:45:40 1997 Richard Henderson <rth@cygnus.com>
425
426 * sparc.c (DF_MODES): Or the mask not the bit number.
427 (function_arg) [ARCH64]: Send unprototyped arg to fp reg first.
428
429 Wed Dec 17 00:13:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
430
431 * combine.c (force_to_mode): Return immediately if operand is a
432 CLOBBER.
433
434 Tue Dec 16 23:44:54 1997 Manfred Hollstein <manfred@s-direktnet.de>
435
436 * fixincludes (size_t): Add support for Motorola's stdlib.h
437 which fails to provide a definition for size_t.
438 (fabs/hypot): Provide a prototype for fabs on m88k-motorola-sysv3.
439 (strlen,strspn,strcspn return value): Handle different layout on sysV88.
440 (hypot): Provide a fake for hypot for m88k-motorola-sysv3.
441
442 * m68k/xm-mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Define to
443 prevent unresolved externals in libio.
444 * m88k/xm-sysv3.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Likewise.
445
446 Tue Dec 16 23:25:45 1997 H.J. Lu (hjl@gnu.org)
447
448 * config/sparc/linux64.h (LIBGCC_SPEC): Removed.
449 (CPP_SUBTARGET_SPEC): Add %{pthread:-D_REENTRANT}.
450 (LIB_SPEC): Updated for glibc 2.
451
452 Tue Dec 16 20:11:36 1997 Jeffrey A Law (law@cygnus.com)
453
454 * ginclude/stdarg.h: Undo BeOS changes, they break hpux.
455 * ginclude/varargs.h: Likewise.
456
457 Tue Dec 16 00:32:01 1997 Jeffrey A Law (law@cygnus.com)
458
459 * version.c: Bump for snapshot.
460
461 Tue Dec 16 00:14:29 1997 H.J. Lu (hjl@gnu.org)
462
463 * frame.h (__register_frame, __register_frame_table,
464 __deregister_frame): New.
465 * frame.c (__register_frame, __register_frame_table,
466 __deregister_frame): New.
467 * frame.c (__deregister_frame_info): Return void *.
468 * frame.h (__deregister_frame_info): Likewise.
469 * collect2.c (__deregister_frame_info): Likewise.
470
471 Mon Dec 15 18:40:08 1997 Richard Henderson <rth@cygnus.com>
472
473 * expmed.c (expand_shift): If SHIFT_COUNT_TRUNCATED, drop a SUBREG.
474
475 Mon Dec 15 18:31:43 1997 Richard Henderson <rth@cygnus.com>
476
477 * alpha.c (alpha_cpu_name): New variable.
478 (alpha_mlat_string): Likewise.
479 (alpha_memory_latency): Likewise.
480 (override_options): Handle -mmemory-latency.
481 (alpha_adjust_cost): Adjust load cost for latency.
482 * alpha.h (TARGET_OPTIONS): Add memory-latency.
483 (REGISTER_MOVE_COST): Define in terms of memory_latency. Take
484 TARGET_CIX into account.
485 (MEMORY_MOVE_COST): Define in terms of memory_latency.
486 * invoke.texi (DEC Alpha Options): Document -mmemory-latency.
487
488 * alpha.h (ASM_COMMENT_START): New macro.
489
490 Mon Dec 15 17:48:05 1997 Richard Henderson <rth@cygnus.com>
491
492 * reload.h, reload1.c (eliminate_regs), caller-save.c, dbxout.c,
493 dwarfout.c, dwarf2out.c, reload.c, sdbout.c: Revert March 15 change.
494
495 * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
496 SUBREG_REG if the word count is unchanged.
497 * reload1.c (eliminate_regs) [case SET]: If W_R_O, preserve
498 subregs of identical word size for push_reload.
499
500 Mon Dec 15 11:41:32 1997 Mark Mitchell <mmitchell@usa.net>
501
502 * toplev.c (rest_of_compilation): Don't call save_for_inline_copy
503 if all we're doing is dealing with -Wreturn-type.
504
505 Mon Dec 15 09:44:39 1997 Richard Henderson <rth@cygnus.com>
506
507 * alpha.md (zero_extendqihi2, zero_extendqisi2, zero_extendqidi2):
508 Use and 255 instead of zapnot 1, since it schedules better.
509
510 Mon Dec 15 08:48:24 1997 Jeffrey A Law (law@cygnus.com)
511
512 * stmt.c (expand_asm_operands): If an ASM has no outputs, then treat
513 it as volatile.
514
515 Mon Dec 15 00:04:48 1997 Jeffrey A Law (law@cygnus.com)
516
517 * haifa-sched.c (remove_dependencies): Set RTX_INTEGRATED_P on
518 dependency we delete. Properly update prev for multiple consecutive
519 deletions.
520 (priority): Skip deleted dependence.
521
522 Fri Dec 12 18:54:23 1997 Per Bothner <bothner@cygnus.com>
523
524 * expr.c (expand_builtin): Support BUILT_IN_FMOD - just call fmod.
525
526 Fri Dec 12 01:19:48 1997 Jason Merrill <jason@yorick.cygnus.com>
527
528 * flow.c (flow_analysis): Be consistent with find_basic_blocks in
529 determining when a new basic block starts.
530
531 * alpha/osf2or3.h (LIB_SPEC): Restore missing defn.
532
533 * pa.h (TEXT_SPACE_P): Use TREE_CODE_CLASS.
534 * pa.md (iorsi3): Add missing args to *_operand calls.
535
536 * except.c (call_get_eh_context): Don't mess with sequences.
537 (emit_eh_context): Include the call in the sequence here.
538
539 1997-12-11 Paul Eggert <eggert@twinsun.com>
540
541 * collect2.c (write_c_file_glob): Allocate initial frame object
542 in static storage and pass its address.
543
544 Thu Dec 11 23:33:48 1997 Jason Merrill <jason@yorick.cygnus.com>
545
546 * except.c (call_get_eh_context): Don't take a parm.
547 Put the call at the top of the function.
548 (emit_eh_context): Adjust.
549 (get_eh_context): Replace with former use_eh_context.
550 (get_eh_context_once, get_saved_pc_ref): Remove.
551 (start_eh_unwinder, end_eh_unwinder, emit_unwinder): Remove.
552 * except.h: Adjust.
553 * integrate.c (expand_inline_function): Adjust.
554 * toplev.c (rest_of_compilation): Don't call emit_unwinder.
555
556 Fri Oct 10 17:58:31 1997 Marc Lehmann <pcg@goof.com>
557
558 * i386/xm-go32.h (EXECUTABLE_SUFFIX): Define.
559 (DIR_SEPARATOR, NO_SYS_SIGLIST): Likewise.
560
561 Thu Dec 11 23:55:17 1997 Manfred Hollstein <manfred@s-direktnet.de>
562
563 * fixincludes (strlen,strspn,strcspn return value): Handle different
564 layout on sysV88.
565 (hypot): Provide a fake for hypot which is broken on
566 m88k-motorola-sysv3.
567
568 Thu Dec 11 23:50:17 1997 John F. Carr <jfc@mit.edu>
569
570 * tree.c, tree.h: Change tree_code_type, tree_code_length, and
571 tree_code_name from pointers to arrays.
572 * tree.c: Remove standard_tree_code_* variables, no longer used.
573 * print-tree.c: Remove declaration of tree_code_name.
574
575 * cp/lex.c (init_lex): Update for tree_code_* changes.
576 * objc/objc-act.c (init_objc): Likewise.
577
578 * tree.def, cp/cp-tree.def, objc/objc-tree.def: Update for tree_code
579 changes.
580
581 Thu Dec 11 23:34:54 1997 Fred Fish <fnf@ninemoons.com>
582
583 * config.sub: Add support for BeOS target.
584 * configure.in: Likewise.
585 * ginclude/stdarg.h: Likewise.
586 * ginclude/stddef.h: Likewise.
587 * ginclude/varargs.h: Likewise.
588 * rs6000/beos.h: New file for BeOS.
589 * rs6000/t-beos: Likewise.
590 * rs6000/x-beos: Likewise.
591 * rs6000/xm-beos.h: Likewise.
592 * toplev.c (get_run_time): Just return 0 on BeOS.
593
594 Thu Dec 11 23:25:23 1997 Jeffrey A Law (law@cygnus.com)
595 Toon Moene (toon@moene.indiv.nluug.nl)
596
597 * m68k.h (GO_IF_LEGITIMATE_ADDRESS): No longer cater to horribly
598 old and broken Sun3 assemblers. Newer versions handle large
599 offsets correctly as does the GNU assembler.
600
601 Thu Dec 11 23:06:48 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
602
603 * objc/objc-act.c (lang_report_error_function): Disable.
604 * objc/objc-parse.y: Include "output.h".
605 (yyerror): Remove redundant decl.
606 (yyprint): Fix prototype.
607 (apply_args_register_offset): Remove redundant decl.
608 (get_file_function_name): Likewise.
609
610 Thu Dec 11 22:02:10 1997 Jason Merrill <jason@yorick.cygnus.com>
611
612 * flow.c (find_basic_blocks): A CALL_INSN that can throw starts
613 a new basic block.
614 (find_basic_blocks_1): Likewise.
615
616 Thu Dec 11 21:08:48 1997 Jason Merrill <jason@yorick.cygnus.com>
617
618 * except.c (use_eh_context): Don't copy_rtx a REG.
619 (emit_throw): Lose old unwinder support.
620 (expand_internal_throw): Likewise.
621 * libgcc2.c (struct eh_context): Likewise.
622 (new_eh_context): Likewise.
623 (__get_eh_info): Lose redundant cast.
624 (__get_dynamic_handler_chain): Likewise.
625 (__get_saved_pc): Lose.
626 Lose all old unwinder support code.
627
628 Thu Dec 11 20:42:18 1997 Teemu Torma <tot@trema.com>
629
630 Thread-safe EH support for pthreads, DCE threads and Solaris threads.
631
632 * integrate.c (expand_inline_function): If the inline fn uses eh
633 context, make sure that the current fn has one.
634 * toplev.c (rest_of_compilation): Call emit_eh_context.
635 * except.c (use_eh_context): New fn.
636 (get_eh_context_once): New fn.
637 (call_get_eh_context): New fn.
638 (emit_eh_context): New fn.
639 (get_eh_context): Call either get_eh_context_once or
640 call_get_eh_context, depending on what we have.
641 (get_dynamic_handler_chain): Call get_eh_context_once.
642 * except.h: Prototypes for fns above.
643 * optabs.c (get_eh_context_libfunc): Removed.
644 (init_optabs): Don't initialize it.
645 * expr.h (get_eh_context_libfunc): Removed.
646 * rtl.h, rtl.c: New reg_note REG_EH_CONTEXT.
647 * config/pa/pa.h (CPP_SPEC): Support for -threads.
648 * config/pa/pa-hpux10.h (LIB_SPEC): Likewise.
649 * config/pa/t-pa (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
650 New multilib for -threads.
651 * config/sparc/t-sol2: Added multilibs for -threads and
652 made -pthreads alias to it.
653 * config/sparc/sol2.h (CPP_SPEC, LIB_SPEC):
654 Added -threads and -pthreads options.
655 * libgcc-thr.h: New file.
656 * libgcc2.c (__get_cpp_eh_context): Removed.
657 (struct cpp_eh_context): Removed.
658 (struct eh_context): Replaced cpp_eh_context with generic language
659 specific pointer.
660 (__get_eh_info): New function.
661 (__throw): Check eh_context::info.
662 (__sjthrow): Likewise.
663 * libgcc2.c: Include libgcc-thr.h.
664 (new_eh_context, __get_eh_context,
665 eh_pthread_initialize, eh_context_initialize, eh_context_static,
666 eh_context_specific, eh_context_free): New functions.
667 (get_eh_context, eh_context_key): New variables.
668 (__sjthrow, __sjpopnthrow, __eh_pcnthrow, __throw): Use
669 get_eh_context to get the context.
670 (longjmp): Move the declaration inside
671 #ifdef DONT_USE_BUILTIN_SETJMP.
672 * frame.c: Include libgcc-thr.h.
673 (object_mutex): Mutex to protect the object list.
674 (find_fde, __register_frame, __register_frame_table,
675 __deregister_frame): Hold the lock while accessing objects.
676 * except.h (get_eh_context): Declare.
677 * except.c (current_function_ehc): Define.
678 (current_function_dhc, current_function_dcc): Removed.
679 (get_eh_context): New function.
680 (get_dynamic_handler_chain): Use get_eh_context.
681 (get_saved_pc_ref): Likewise.
682 (get_dynamic_cleanup_chain): Removed references to
683 current_function_dcc.
684 (save_eh_status, restore_eh_status): Save and restore
685 current_function_ehc instead.
686 * optabs.c (get_eh_context_libfunc): New variable.
687 (init_optabs): Initialize it.
688 * expr.h: Declare get_eh_context_libfunc.
689 * function.h (struct function): Replaced dhc and dcc with ehc.
690 * except.c (get_saved_pc_ref): New functions.
691 (eh_saved_pc_rtx, eh_saved_pc): Deleted.
692 (expand_internal_throw_indirect): Use get_saved_pc_ref() instead
693 of eh_saved_pc.
694 (end_eh_unwinder): Likewise.
695 (init_eh): Remove initialization of eh_saved_pc.
696 * optabs.c (get_saved_pc_libfunc): New variable.
697 (init_optabs): Initialize it.
698 * expr.h: Declare get_saved_pc_libfunc.
699 * except.h (eh_saved_pc_rtx): Deleted.
700 (get_saved_pc_ref): Declared.
701
702 From Scott Snyder <snyder@d0sgif.fnal.gov>:
703 * libgcc2.c (__get_saved_pc): New.
704 (__eh_type, __eh_pc): Deleted.
705 (__eh_pcnthrow): Use __get_saved_pc() instead of __eh_pc.
706 (__get_dynamic_handler_chain): Move __dynamic_handler_chain inside
707 this fcn.
708
709 Thu Dec 11 17:23:48 1997 John F. Carr <jfc@mit.edu>
710
711 * sparc/sol2.h: Use 64 bit multiply and divide functions in
712 Solaris libc. Define TARGET_LIVE_G0 and TARGET_BROKEN_SAVERESTORE
713 as 0.
714
715 * rtl.h (global_rtl): New variable, replacing separate variables for
716 commonly used rtl.
717 (const_int_rtx): Now array of rtx_def, not rtx.
718 * emit-rtl.c: Update for new rtl data structures.
719 * genattrtab.c: Define global_rtl.
720
721 Thu Dec 11 15:50:29 1997 David Edelsohn <edelsohn@mhpcc.edu>
722
723 * configure.in ({rs6000,powerpc}-*-*): Enable Haifa scheduler by
724 default.
725
726 Wed Dec 10 12:30:18 1997 Anthony Green <green@cygnus.com>
727
728 * crtstuff.c (__do_global_ctors): Fix typo.
729
730 Tue Dec 9 09:43:59 1997 Manfred Hollstein <manfred@s-direktnet.de>
731
732 * toplev.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
733 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
734
735 Tue Dec 9 09:38:58 1997 David Edelsohn <edelsohn@mhpcc.edu>
736
737 * rs6000.h (FUNCTION_ARG_PADDING): Define.
738 * rs6000.c (function_arg_padding): New function.
739
740 Tue Dec 9 10:34:21 1997 Manfred Hollstein <manfred@s-direktnet.de>
741
742 * m68k.c: Include tree.h only once.
743
744 Tue Dec 9 09:32:33 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
745
746 * integrate.c (save_for_inline_copying): Make a new reg_parm_stack_loc.
747
748 Tue Dec 9 01:16:06 1997 Jeffrey A Law (law@cygnus.com)
749
750 * Partially cleaned up prototyping code from HJ.
751 * tree.h: Add many prototypes.
752 * haifa-sched.c (haifa_classify_insn): Renamed from classify_insn.
753 All references changed.
754 * rtl.h: Protect from multiple inclusions. Add many prototypes.
755
756 Tue Dec 9 01:15:15 1997 Fred Fish <fnf@ninemoons.com>
757
758 * libgcc2.c (string.h): Hoist inclusion to occur before first use of
759 string functions like strlen.
760
761 Tue Dec 9 00:57:38 1997 Manfred Hollstein <manfred@s-direktnet.de>
762
763 * configure.in: Check for functions getrlimit and setrlimit.
764 * cccp.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
765 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
766
767 Mon Dec 8 23:53:26 1997 Jay Sachs <sachs@bull.cs.williams.edu>
768
769 * Makefile.in (compare*): Handle losing behavior from 4.4bsd make.
770
771 Mon Dec 8 21:03:28 1997 Richard Henderson <rth@cygnus.com>
772
773 * alpha.c (REG_RA, alpha_return_addr, output_epilog):
774 Fix merge problems.
775
776 * alpha.c (override_options): Don't know about scheduling for EV6.
777 * alpha.md (ev5 function units): Don't overload as ev6.
778
779 * alpha.c (alpha_adjust_cost): Simplify. Fix typo in ev5 mult case.
780 * alpha.md (define_attr type): Add mvi.
781 (ev5_e0): Define sceduling parameters for it.
782 (TARGET_MAX insns): Type is mvi not shift.
783
784 Mon Dec 8 18:15:00 1997 Richard Henderson <rth@cygnus.com>
785
786 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix backported gcc-2.8 bug.
787
788 Mon Dec 8 21:17:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
789
790 * cstamp-h, auto-config.h: Delete.
791
792 Sun Dec 7 19:19:03 1997 Jeffrey A Law (law@cygnus.com)
793
794 * version.c: Bump for snapshot.
795
796 Sat Dec 6 22:22:22 1997 Jeffrey A Law (law@cygnus.com)
797
798 * cccp.c: Fix typo brought over in merge.
799
800 * Merge in changes from gcc-2.8.
801
802 Mon Nov 3 05:45:32 1997 Philippe De Muyter <phdm@macqel.be>
803
804 * m68k.c: Include tree.h for dwarf2out_cfi_label.
805
806 * gcc.c (process_command): Do not take address of function fatal when
807 calling lang_specific_driver.
808
809 Sat Dec 6 01:02:38 1997 Mumit Khan <khan@xraylith.wisc.edu>
810
811 * config/i386/cygwin32.h (DWARF2_UNWIND): Exception handling
812 doesn't work with it yet, so set it to 0.
813 * config/i386/xm-cygwin32.h (NO_SYS_SIGLIST): Define.
814
815 Sat Dec 6 01:01:02 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
816
817 * cse.c (cse_insn): Check for invalid entries when taking references.
818
819 Fri Dec 5 18:26:25 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
820
821 * loop.c (invariant_p): Don't test flag_rerun_loop_opt.
822 (loop_optimize, scan_loop, strength_reduce): New argument unroll_p.
823 * toplev.c (rest_of_compilation): Pass it. Remove code to
824 save / clear / restore flag_unroll_{,all_}loops.
825
826 Fri Dec 5 16:26:03 1997 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
827
828 * i386.c (notice_update_cc): Remove bogus pentium GCC code.
829
830 Fri Dec 5 16:25:14 1997 Jeffrey A Law (law@cygnus.com)
831
832 * stmt.c (warn_if_unused_value): Don't warn for TRY_CATCH_EXPR.
833
834 Thu Dec 4 11:51:00 1997 Jason Merrill <jason@yorick.cygnus.com>
835
836 * except.c (get_dynamic_handler_chain): Only make the call once per
837 function.
838
839 * except.c (expand_end_all_catch): Fix for sjlj exceptions.
840
841 Thu Dec 4 12:30:40 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
842
843 * sh.c (final_prescan_insn): Use local label prefix
844 when emitting .uses pseudo-ops.
845
846 Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
847
848 * libgcc2.c (__throw): Use __builtin_return_addr instead of __eh_pc.
849 * except.c: Lose outer_context_label_stack.
850 (expand_eh_region_end): Rethrow from outer_context here.
851 (expand_fixup_region_end): Let expand_eh_region_end do the rethrow.
852 (expand_internal_throw): Take no args.
853 (expand_internal_throw_indirect): Lose.
854 (expand_leftover_cleanups, expand_start_all_catch): Use expand_rethrow.
855 (expand_start_all_catch): Start a rethrow region.
856 (expand_end_all_catch): End it.
857 (expand_rethrow): New fn.
858 * except.h: Reflect above changes.
859 * flow.c: Revert change of Nov 27.
860
861 Thu Dec 4 00:24:09 1997 Jeffrey A Law (law@cygnus.com)
862
863 * i386/t-sol2 (CRTSTUFF_T_CFLAGS): Turn on the optimizer.
864
865 Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
866
867 * except.c (expand_fixup_region_end): New fn.
868 (expand_fixup_region_start): Likewise.
869 (expand_eh_region_start_tree): Store cleanup into finalization here.
870 * stmt.c (expand_cleanups): Use them to protect fixups.
871
872 Wed Dec 3 11:41:13 1997 Gavin Koch <gavin@cygnus.com>
873
874 * mips/mips.md (muldi3_r4000): Broaden the output template
875 and attribute assignments to handle three operand dmult;
876 rename to muldi3_internal2.
877 (muldi3): Call the new muldi3_internal2 for R4000, and
878 any GENERATE_MULT3 chip.
879
880 Tue Dec 2 19:40:43 1997 Jason Merrill <jason@yorick.cygnus.com>
881
882 * stmt.c (expand_decl_cleanup): Update thisblock after eh_region_start.
883
884 Tue Dec 2 12:54:33 1997 Jim Wilson <wilson@cygnus.com>
885
886 * unroll.c (find_splittable_givs): Remove last change. Handle givs
887 with a dest_reg that was created by loop.
888
889 Sat Nov 29 12:44:57 1997 David Edelsohn <edelsohn@mhpcc.edu>
890
891 * rs6000.c (function_arg_partial_nregs): Undo Nov. 26 patch.
892
893 * rs6000/aix41.h (ASM_CPU_SPEC): Define.
894
895 Fri Nov 28 10:00:27 1997 Jeffrey A Law (law@cygnus.com)
896
897 * configure.in: Fix NCR entries.
898
899 Thu Nov 27 12:20:19 1997 Jeffrey A Law (law@cygnus.com)
900
901 * flow.c (find_basic_blocks): Handle cfg issues for rethrows and
902 nested exceptions correctly.
903
904 * unroll.c (find_splittable_givs): Don't split givs with a dest_reg
905 that was created by loop.
906
907 Thu Nov 27 09:34:58 1997 Jason Merrill <jason@yorick.cygnus.com>
908
909 * expr.c (preexpand_calls): Don't look past a TRY_CATCH_EXPR.
910
911 * except.c (expand_start_all_catch): One more do_pending_stack_adjust.
912
913 Wed Nov 26 15:47:30 1997 Michael Meissner <meissner@cygnus.com>
914
915 * rs6000.c (SMALL_DATA_REG): Register to use for small data relocs.
916 (print_operand): Use SMALL_DATA_REG for the register involved in
917 small data relocations.
918 (print_operand_address): Likewise.
919
920 * rs6000/linux.h (LINK_SPEC): Pass -dynamic-linker /lib/ld.so.1 if
921 -dynamic linker is not used.
922
923 * rs6000.md (call insns): For local calls, use @local suffix under
924 System V. Don't use @plt under Solaris.
925
926 * rs6000.c (output_function_profiler): Put label address in r0, and
927 store LR in 4(sp) for System V/eabi.
928
929 * rs6000.h (ASM_OUTPUT_REG_{PUSH,POP}): Keep stack aligned to 16
930 byte boundary, and maintain stack backchain.
931
932 Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
933
934 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
935 fix_truncsfdi2): Change *.
936
937 Wed Nov 26 11:12:26 1997 Jason Merrill <jason@yorick.cygnus.com>
938
939 * toplev.c (main): Complain about -gdwarfn.
940
941 Tue Nov 25 22:43:30 1997 Jason Merrill <jason@yorick.cygnus.com>
942
943 * dwarfout.c (output_type): If finalizing, write out nested types
944 of types we've already written.
945
946 Tue Nov 25 20:32:24 1997 Michael Meissner <meissner@cygnus.com>
947
948 (patches originally from Geoffrey Keating)
949 * rs6000.c (function_arg): Excess floating point arguments don't
950 go into GPR registers after exhausting FP registers under the
951 System V.4 ABI.
952 (function_arg_partial_nregs): Likewise.
953
954 * rs6000.md (call insns): If -fPIC or -mrelocatable, add @plt
955 suffix to calls.
956
957 Tue Nov 25 23:37:27 1997 Jason Merrill <jason@yorick.cygnus.com>
958
959 * integrate.c (output_inline_function): Just unset DECL_INLINE.
960
961 Tue Nov 25 23:33:29 1997 scott snyder <snyder@d0sgif.fnal.gov>
962
963 * dwarf2out.c (outout_call_frame_info): Ensure that the info has
964 proper alignment.
965
966 * libgcc2.c (__throw): Initialize HANDLER.
967
968 Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
969
970 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
971 fix_truncsfdi2): Change *X to ?*X.
972
973 Tue Nov 25 10:00:42 1997 Richard Henderson (rth@cygnus.com)
974
975 * alpha.h (CONST_OK_FOR_LETTER): Fix 'L' handling.
976
977 Tue Nov 25 10:00:42 1997 Jeffrey A Law (law@cygnus.com)
978
979 * crtstuff.c (do_global_dtors_aux): Handle multiple calls better.
980
981 Tue Nov 25 01:26:55 1997 Bruno Haible <haible@ilog.fr>
982
983 * dwarf2out.c (ASM_OUTPUT_DWARF_DELTA1): Implement.
984
985 Mon Nov 24 22:41:55 1997 Jason Merrill <jason@yorick.cygnus.com>
986
987 * except.c (get_dynamic_handler_chain): Build up a FUNCTION_DECL.
988 * optabs.c (init_optabs): Lose get_dynamic_handler_chain_libfunc.
989 * expr.h: Likewise.
990
991 Sat Nov 22 18:58:20 1997 Jeffrey A Law (law@cygnus.com)
992
993 * pa-hpux10.h (NEW_HP_ASSEMBLER): Define.
994 * pa.h (LEGITIMATE_CONSTANT_P): Reject LABEL_REFs if not using
995 gas and not using the new HP assembler.
996
997 Fri Nov 21 15:20:05 1997 Jeffrey A Law (law@cygnus.com)
998
999 * Makefile.in (program_transform_cross_name): Clean up "-e" confusion.
1000 (GCC_INSTALL_NAME, GCC_CROSS_NAME): Likewise.
1001
1002 Fri Nov 21 19:37:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
1003
1004 * config/mips/elf64.h (MULTILIB_DEFAULTS): Test for
1005 TARGET_ENDIAN_DEFAULT == zero instead of testing for macro
1006 definition.
1007
1008 Fri Nov 21 12:49:56 1997 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
1009
1010 * stmt.c (expand_end_bindings): Allow jump into block with cleanups.
1011
1012 Fri Nov 21 12:18:51 1997 Jason Merrill <jason@yorick.cygnus.com>
1013
1014 * except.h: Add outer_context_label_stack.
1015 * except.c: Likewise.
1016 (expand_start_all_catch): Push the outer_context for the try block
1017 onto outer_context_label_stack.
1018 (expand_end_all_catch): Use it and pop it.
1019
1020 Fri Nov 21 10:13:11 1997 Robert Lipe (robertl@dgii.com)
1021
1022 * i386/sco5.h (HAVE_ATEXIT): Revert last change.
1023
1024 Thu Nov 20 16:11:50 1997 Richard Henderson <rth@cygnus.com>
1025
1026 * alpha.c (alpha_emit_set_const_1): Handle narrow hosts better.
1027
1028 Thu Nov 20 16:11:50 1997 Klaus Kaempf <kkaempf@progis.de>
1029
1030 * alpha/vms.h (ASM_OUTPUT_ADDR_VEC_ELT): Add an L for the local label
1031 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
1032
1033 Thu Nov 20 14:42:15 1997 Jason Merrill <jason@yorick.cygnus.com>
1034
1035 * Makefile.in (LIB2FUNCS): Remove C++ memory management support.
1036 * libgcc2.c: Remove __builtin_new, __builtin_vec_new, set_new_handler,
1037 __builtin_delete, and __builtin_vec_delete.
1038
1039 * except.c (output_exception_table): Don't bother with
1040 __EXCEPTION_END__.
1041
1042 Thu Nov 20 16:11:50 1997 Jeffrey A Law (law@cygnus.com)
1043
1044 * pa.md (pre_stwm, post_stwm, pre_ldwm, post_ldwm): Base register
1045 is an in/out operand.
1046 (zero extended variants of stwm/stwm patterns): Similarly.
1047
1048 * mips/x-iris (FIXPROTO_DEFINES): Add -D_SGI_SOURCE.
1049
1050 Thu Nov 20 13:19:32 1997 Jason Merrill <jason@yorick.cygnus.com>
1051
1052 * dwarf2out.c (ASM_OUTPUT_DWARF_OFFSET4): Rename from VALUE4.
1053 Use assemble_name.
1054 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Use assemble_name.
1055 (output_call_frame_info): Emit a \n after using it.
1056
1057 Thu Nov 20 00:38:46 1997 Dave Love <d.love@dl.ac.uk>
1058
1059 * configure.in: Add AC_ARG_ENABLE for Haifa as documentation.
1060
1061 Wed Nov 19 12:03:04 1997 Philippe De Muyter <phdm@macqel.be>
1062
1063 * dwarf2out.c (CIE_LENGTH_LABEL, FDE_LENGTH_LABEL): New macros.
1064 (ASM_OUTPUT_DWARF_VALUE4): New macro.
1065 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Define if SET_ASM_OP is
1066 defined.
1067 (output_call_frame_info): Do not output forward label differences
1068 if ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL is defined.
1069 * m68k/mot3300.h (SET_ASM_OP): Define when not using gas.
1070
1071 Tue Nov 18 23:03:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1072
1073 * sh.md (attribute "type"): Add nil.
1074 (movsi_ie): y/y alternative is type nil.
1075 (movsf_ie): Replace ry/yr/X alternative by r/y/X , y/r/X and y/y/X
1076 alternatives.
1077 (movsf_ie+1): Delete.
1078
1079 Tue Nov 18 15:39:59 1997 Jim Wilson <wilson@cygnus.com>
1080
1081 * mips/mips.c (save_restore_insns): If gp_offset or fp_offset are
1082 large_int, emit two insns instead of one splitable insn.
1083 * dwarf2out.c (dwarf2out_frame_debug): When set cfa_store_offset
1084 from cfa_temp_value, use cfa_offset. Add assert checking that
1085 cfa_reg is SP.
1086
1087 Mon Nov 17 15:35:38 1997 Tom Tromey <tromey@cygnus.com>
1088
1089 * cccp.c (deps_output): Properly quote file names for make.
1090
1091 Mon Nov 17 13:21:40 1997 Jeffrey A Law (law@cygnus.com)
1092
1093 * t-h8300 (MULTILIB_EXCEPTIONS): Define.
1094
1095 Fri Nov 7 15:33:11 1997 Robert Lipe (robertl@dgii.com)
1096
1097 * i386/sco5.h (HAVE_ATEXIT): Delete definition.
1098
1099 Sun Nov 16 23:52:48 1997 Jeffrey A Law (law@cygnus.com)
1100
1101 * cse.c (cse_insn): Don't look at JUMP_LABEL field of a conditional
1102 return.
1103 (cse_end_of_basic_block): Similarly.
1104
1105 Sun Nov 16 23:01:40 1997 J. Kean Johnston <jkj@sco.com>
1106
1107 * i386/sco5.h (ASM_OUTPUT_ALIGNED_BSS): Define.
1108 (SELECT_RTX_SECTION): Define.
1109 (LIBGCC_SPEC, LIB_SPEC): Do the right thing for PIC.
1110
1111 Sun Nov 16 22:47:03 1997 Manfred Hollstein <manfred@s-direktnet.de>
1112
1113 * Makefile.in (compare, compare-lean): Define $stage for each
1114 shell command.
1115 (gnucompare, gnucompare-lean): Likewise.
1116
1117 Sun Nov 16 22:02:16 1997 Richard Henderson (rth@cygnus.com)
1118
1119 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix offsets.
1120
1121 * alpha.h (ASM_OUTPUT_ADDR_DIFF_ELT): Add an L for the local label
1122 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
1123
1124 Fri Nov 14 09:09:20 1997 Fred Fish (fnf@cygnus.com)
1125
1126 * dwarfout.c (byte_size_attribute): Add local var upper_bound
1127 and add case to handle STRING_TYPE.
1128 * dwarfout.c (output_string_type_die): Fix code to generate
1129 correct string length attribute for fixed length strings.
1130 Still needs support for varying length strings.
1131
1132 Fri Nov 14 08:46:56 1997 Jeffrey A Law (law@cygnus.com)
1133
1134 * toplev.c (get_run_time): Do something sensible for cygwin32.
1135
1136 Fri Nov 14 07:24:20 1997 Richard Henderson <rth@cygnus.com>
1137
1138 * expr.c (expand_builtin_setjmp): Set
1139 current_function_has_nonlocal_label.
1140 * stupid.c (stupid_life_analysis): If has_nonlocal_label, kill
1141 call-saved registers across calls.
1142
1143 * alpha.md (exception_receiver): Remove.
1144 (nonlocal_goto_receiver_osf): New.
1145 (nonlocal_goto_receiver_vms): Renamed from nonlocal_goto_receiver.
1146 (nonlocal_goto_receiver): New, select _osf or _vms.
1147
1148 * alpha.c (output_prolog [*]): Prefix entry labels with '$' to
1149 keep them from being propagated to the object file.
1150 (alpha_write_linkage): Likewise.
1151 * alpha.md (call_vms): Likewise.
1152 (call_value_vms): Likewise.
1153 (unnamed osf call insns): Likewise.
1154
1155 * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Don't omit L from local label.
1156 (ASM_GENERATE_INTERNAL_LABEL): Likewise.
1157
1158 * alpha.c (call_operand): Any reg is valid for WinNT.
1159 * alpha.md (call_nt, call_value_nt): Don't force address into $27.
1160 (anon nt calls): Add 'R' alternative.
1161 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE,
1162 INITIALIZE_TRAMPOLINE): Handle lack of original $27 and 32-bit ptrs.
1163
1164 Fri Nov 14 06:59:33 1997 Jeffrey A Law (law@cygnus.com)
1165
1166 * calls.c (expand_call): Handle pcc_struct_value correctly for C++.
1167
1168 * i386/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Delete defines.
1169 * i386/xm-mingw32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
1170 * rs6000/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
1171
1172 Thu Nov 13 20:37:33 1997 Michael Meissner <meissner@tiktok.cygnus.com>
1173
1174 * reload1.c (new_spill_reg): Improve fixed or forbidden register
1175 spill error message.
1176
1177 Thu Nov 13 20:29:08 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1178
1179 * prefix.c: Use stdarg.h only ifdef __STDC__. Otherwise,
1180 use varargs.h. Wrap header with <>, not "".
1181
1182 Thu Nov 13 20:21:17 1997 Jeffrey A Law (law@cygnus.com)
1183
1184 * integrate.c (save_for_inline_copying): Add return value from
1185 savealloc.
1186
1187 Thu Nov 13 19:12:33 1997 Brendan Kehoe <brendan@cygnus.com>
1188
1189 * fixincludes: Be a little more restrictive on what we will
1190 substitute to replace definitions of MAXINT for HPUX.
1191
1192 Thu Nov 13 18:41:02 1997 Michael Meissner <meissner@cygnus.com>
1193
1194 * dbxout.c (dbxout_symbol_location): Don't assume that variables
1195 whose address is the stack or argument pointers are indirect
1196 pointers.
1197
1198 1997-11-13 Paul Eggert <eggert@twinsun.com>
1199
1200 * cccp.c, cpplib.c (compare_defs):
1201 Don't complain about arg name respellings unless pedantic.
1202 * cpplib.c (compare_defs): Accept pfile as new arg.
1203 All callers changed.
1204
1205 Thu Nov 13 23:33:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1206
1207 * fold-const.c (fold_truthop): Fix bug in last change.
1208
1209 1997-11-13 Paul Eggert <eggert@twinsun.com>
1210
1211 Fix some confusion with IEEE minus zero.
1212
1213 * real.h (REAL_VALUES_IDENTICAL): New macro.
1214
1215 * expr.c (is_zeros_p): Don't consider -0.0 to be all zeros.
1216 * fold-const.c (operand_equal_p): Don't consider -0.0 to be
1217 identical to 0.0.
1218 * tree.c (simple_cst_equal): Don't consider -0.0 to have the
1219 same tree structure as 0.0.
1220
1221 * varasm.c (immed_real_const_1): Use new REAL_VALUES_IDENTICAL
1222 macro instead of doing it by hand.
1223
1224 Thu Nov 13 16:56:14 1997 Jeffrey A Law (law@cygnus.com)
1225
1226 * v850/lib1funcs.asm: Minor whitespace changes.
1227 * v850.c: Fix minor formatting problems in many places.
1228 (construct_restore_jr, construct_save_jarl): Remove unwanted aborts.
1229
1230 Thu Nov 13 12:53:44 1997 Jim Wilson <wilson@cygnus.com>
1231
1232 * mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete code swapping xplus0 and
1233 xplus1 when xplus0 is not a register.
1234
1235 Thu Nov 13 11:41:42 1997 Jeffrey A Law (law@cygnus.com)
1236
1237 * flow.c (find_basic_blocks): During marking phase, if we encounter
1238 an insn with a REG_LABEL note, make the target block live and
1239 create an edge from the insn to the target block. Do not make
1240 edges from all blocks to the target block.
1241
1242 * m68k/x-next (OTHER_FIXINCLUDES_DIRS): Include /NextDeveloper/Headers.
1243
1244 * confiugre.in: Tweak NCR entries.
1245 * configure: Rebuilt.
1246
1247 Thu Nov 13 11:07:41 1997 Michael Meissner <meissner@cygnus.com>
1248
1249 * rs6000.c (num_insns_constant): Use REAL_VALUE_FROM_CONST_DOUBLE to
1250 pick apart floating point values, instead of using CONST_DOUBLE_LOW
1251 and CONST_DOUBLE_HIGH.
1252
1253 * rs6000.md (define_splits for DF constants): Use the appropriate
1254 REAL_VALUE_* interface to pick apart DF floating point constants in
1255 a machine independent fashion.
1256
1257 Thu Nov 13 00:06:58 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1258
1259 * fold-const.c (fold_truthop): When changing a one-bit comparison
1260 against zero into a comparison against mask, do a proper sign
1261 extension.
1262
1263 Wed Nov 12 09:37:01 1997 Jeffrey A Law (law@cygnus.com)
1264
1265 * except.c: Do not include "assert.h".
1266 (save_eh_status): Turn asserts into conditional aborts.
1267 (restore_eh_status, scan_region): Likewise.
1268 * dwarfout.c: Do not include "assert.h".
1269 (bit_offset_attribute): Turn asserts into conditional aborts.
1270 (bit_size_attribute, output_inlined_enumeration_type_die): Likewise.
1271 (output_inlined_structure_type_die): Likewise.
1272 (output_inlined_union_type_die): Likewise.
1273 (output_tagged_type_instantiation): Likewise.
1274 (dwarfout_file_scope_decl): Likewise.
1275 * dwarf2out.c: Do not include "assert.h"
1276 (expand_builtin_dwarf_reg_size): Turn asserts into conditional aborts.
1277 (reg_save, initial_return_save, dwarf2out_frame_debug): Likewise.
1278 (add_child_die, modified_type_die, add_bit_offset_attribute): Likewise.
1279 (add_bit_size_attribute, scope_die_for): Likewise.
1280 (output_pending_types_for_scope): Likewise.
1281 (get_inlined_enumeration_type_die): Likewise.
1282 (get_inlined_structure_type_die): Likewise.
1283 (get_inlined_union_type_die, gen_subprogram_die): Likewise.
1284 (gen_tagged_type_instantiation_die): Likewise.
1285
1286 * flow.c (find_basic_blocks): Refine further to get a more correct
1287 cfg, especially in the presense of exception handling, computed
1288 gotos, and other non-trivial cases. Call abort if an inaccuracy
1289 is detected in the cfg.
1290
1291 Tue Nov 11 21:47:27 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1292
1293 * glimits.h (SHRT_MIN): Define in a way suitable for 16 bit hosts.
1294
1295 * c-lex.c (whitespace_cr, skip_white_space_on_line): New functions.
1296 (skip_white_space): Use whitespace_cr.
1297 (check_newline): Handle whitespace more consistently.
1298
1299 Tue Nov 11 16:25:49 1997 Jim Wilson <wilson@cygnus.com>
1300
1301 * i386/cygwin32.h (CPP_PREDEFINES): Delete -DPOSIX.
1302 * i386/xm-cygwin32.h (POSIX): Define.
1303
1304 Mon Nov 10 20:53:11 1997 Gavin Koch <gavin@cygnus.com>
1305
1306 * config/mips/mips.h (MASK_DEBUG_H): Set to zero, so this bit
1307 is available elsewhere.
1308
1309 Mon Nov 10 16:21:58 1997 Doug Evans <devans@canuck.cygnus.com>
1310
1311 * sparc/sparc.md (mov[sdt]f_const_insn): Fix condition to match
1312 what the instruction can handle.
1313
1314 Mon Nov 10 03:02:19 1997 Jason Merrill <jason@yorick.cygnus.com>
1315
1316 * stmt.c (expand_decl_cleanup_no_eh): New fn.
1317
1318 * except.c (expand_leftover_cleanups): do_pending_stack_adjust.
1319
1320 Mon Nov 10 00:05:56 1997 Jeffrey A Law (law@cygnus.com)
1321
1322 * alias.c (MAX_ALIAS_LOOP_PASSES): Define.
1323 (init_alias_analysis): Break out of loops after MAX_ALIAS_LOOP_PASSES.
1324
1325 Sun Nov 9 14:34:47 1997 David Edelsohn <edelsohn@mhpcc.edu>
1326
1327 * rs6000.md (lshrdi3_power): Delete '&' from first alternative and
1328 swap instruction order.
1329
1330 Sun Nov 9 02:07:16 1997 Jeffrey A Law (law@cygnus.com)
1331
1332 * fixinc.svr4 (__STDC__): Add another case.
1333
1334 Sun Nov 9 02:00:29 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1335
1336 * a29k.h (ELIGIBLE_FOR_EPILOGUE_DELAY): Avoid loads from varying
1337 addresses in the epilogue delay slot.
1338
1339 Sun Nov 9 01:40:40 1997 Manfred Hollstein (manfred@s-direktnet.de)
1340
1341 * m88k/dgux.h (ASM_CPU_SPEC): Reformatted to suppress wrong whitespace
1342 in generated `specs' file.
1343
1344 Sun Nov 9 01:37:11 1997 Jim Wilson (wilson@cygnus.com)
1345
1346 * flags.h (flag_rerun_loop_opt): Declare.
1347 * loop.c (invariant_p, case LABEL_REF): Check flag_rerun_loop_opt.
1348 * toplev.c (flag_rerum_loop_opt): Delete static.
1349
1350 Sat Nov 8 18:20:21 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1351
1352 Bring over from FSF:
1353
1354 Thu Oct 30 12:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1355
1356 * va-sh.h (__va_arg_sh1): Define.
1357 (va_arg): Use it.
1358 SH3E doesn't use any integer registers for subsequent arguments
1359 once a non-float value was passed in the stack.
1360 * sh.c (machine_dependent_reorg): If optimizing, put explicit
1361 alignment in front label for ADDR_DIFF_VEC.
1362 * sh.h (PASS_IN_REG_P): Fix SH3E case.
1363 (ADJUST_INSN_LENGTH): If not optimizing, add two extra bytes length.
1364
1365 Tue Oct 28 15:06:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1366
1367 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Undefine before including
1368 svr4.h.
1369
1370 Mon Oct 27 16:11:52 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1371
1372 * sh.c (machine_dependent_reorg): When -flag_delayed_branches,
1373 put an use_sfunc_addr before each sfunc.
1374 * sh.md (use_sfunc_addr, dummy_jump): New insns.
1375 (casesi): For TARGET_SH2, emit a dummy_jump after LAB.
1376
1377 Tue Oct 21 07:12:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1378
1379 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Don't redefine.
1380
1381 Fri Nov 7 10:22:24 1997 Jason Merrill <jason@yorick.cygnus.com>
1382
1383 * frame.c (add_fdes, count_fdes): Go back to checking pc_begin for
1384 linked once FDEs.
1385
1386 Wed Nov 5 14:26:05 1997 Jeffrey A Law (law@cygnus.com)
1387
1388 * alias.c (find_base_value): Only return the known base value for
1389 pseudo registers.
1390
1391 Wed Nov 5 11:27:14 1997 Jim Wilson <wilson@cygnus.com>
1392
1393 * i386.c (load_pic_register): Call prologue_get_pc_and_set_got.
1394 * i386.md (prologue_set_got, prologue_get_pc): Add UNSPEC_VOLATILE
1395 to pattern.
1396 (prologue_get_pc_and_set_got): New pattern.
1397
1398 Tue Nov 4 20:36:50 1997 Richard Henderson (rth@cygnus.com)
1399
1400 * alpha.c (summarize_insn): Handle ASM_OPERANDS. Don't recurse
1401 for SUBREG, just fall through.
1402
1403 * alpha.c (alpha_handle_trap_shadows): Init sum.defd to zero.
1404
1405 * alpha.md (attr trap): Make TRAP_YES nonzero for sanity's sake.
1406
1407 Tue Nov 4 18:49:42 1997 Jeffrey A Law (law@cygnus.com)
1408
1409 * fixincludes: Fix "hypot" prototype in NeXT math.h.
1410
1411 * Makefile.in (USE_ALLOCA): Always include alloca.o.
1412 (USE_HOST_ALLOCA): Likewise.
1413
1414 * rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
1415 and LABEL_REFS fields.
1416 * rtl.h (LABEL_REFS): Update.
1417
1418 Tue Nov 4 16:55:11 1997 Jim Wilson <wilson@cygnus.com>
1419
1420 * combine.c (try_combine): When setting elim_i2, check whether newi2pat
1421 sets i2dest. When calling distribute_notes for i3dest_killed, pass
1422 elim_i2 and elim_i1. When setting elim_i1, check if newi2pat
1423 sets i1dest.
1424
1425 * mips.md (insv, extzv, extv): Add change_address call.
1426 (movsi_ulw, movsi_usw): Change QImode to BLKmode in pattern.
1427
1428 * integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
1429
1430 * reload.c (find_reloads, case 'm' and 'o'): Reject HIGH constants.
1431
1432 * mips.c (mips_expand_epilogue): Emit blockage insn before call to
1433 save_restore_insns if no FP and GP will be restored.
1434
1435 * dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
1436 Convert CCmode to word_mode before calling GET_MODE_SIZE.
1437
1438 * acconfig.h (HAVE_INTTYPES_H): Undef.
1439 * configure.in (inttypes.h): Check for conflicts between sys/types.h
1440 and inttypes.h, and verify that intmax_t is defined.
1441 * config/mips/x-iris (CC, OPT, OLDCC): Comment out.
1442 * config/mips/x-iris3: Likewise.
1443
1444 Tue Nov 4 16:07:15 1997 Jeffrey A Law (law@cygnus.com)
1445
1446 * alias.c (find_base_value): When copying arguments, return the
1447 tentative value for a hard register.
1448
1449 Tue Nov 4 13:40:35 1997 Doug Evans <devans@canuck.cygnus.com>
1450
1451 * c-lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
1452 (yylex): Record wide strings using target endianness, not host.
1453
1454 Tue Nov 4 13:13:12 1997 Jeffrey A Law (law@cygnus.com)
1455
1456 * mn10200.h (ASM_OUTPUT_BSS): Delete.
1457 (ASM_OUTPUT_ALIGNED_BSS): New macro.
1458 * mn10300.h (ASM_OUTPUT_BSS): Delete.
1459 (ASM_OUTPUT_ALIGNED_BSS): New macro.
1460 * v850.h (ASM_OUTPUT_BSS): Delete.
1461 (ASM_OUTPUT_ALIGNED_BSS): New macro.
1462
1463 Tue Nov 4 00:55:48 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1464
1465 * profile.c (branch_prob): Insert an insn after a NOTE_INSN_SETJMP.
1466
1467 Mon Nov 3 14:36:50 1997 Jeffrey A Law (law@cygnus.com)
1468
1469 * configure.in (sco5): Use cpio to install header files.
1470
1471 Sun Nov 2 23:31:43 1997 Manfred Hollstein <manfred@s-direktnet.de>
1472
1473 * aclocal.m4 (conftestdata_from, conftestdata_to): Names shortened to
1474 14 char length.
1475 * configure: Rebuild.
1476
1477 Sun Nov 2 19:44:00 1997 Robert Lipe (robertl@dgii.com)
1478
1479 * i386/sco5.h: Enable -gstabs once again.
1480
1481 Sun Nov 2 19:27:21 1997 Jeffrey A Law (law@cygnus.com)
1482
1483 * arm.c (output_move_double): Allocate 3 entries in otherops array.
1484
1485 Sat Nov 1 21:43:00 1997 Mike Stump <mrs@wrs.com>
1486
1487 * except.c (expand_eh_region_start_for_decl): Emit EH_REGION_BEG
1488 notes for sjlj exceptions too.
1489 (expand_eh_region_end): Similarly for EH_REGION_END notes.
1490 (exception_optimize): Optimize EH regions for sjlj exceptions too.
1491 * final.c (final_scan_insn): Don't output labels for EH REGION
1492 notes if doing sjlj exceptions.
1493
1494 Sat Nov 1 19:15:28 1997 Jeffrey A Law (law@cygnus.com)
1495
1496 * alias.c (init_alias_analysis): Handle -fno-alias-check when
1497 optimizing correctly.
1498
1499 * expr.c (expand_builtin_setjmp): Don't emit a SETJMP note
1500 or set current_function_calls_setjmp anymore.
1501
1502 * flow.c (find_basic_blocks): If we delete the label for an
1503 exception handler, remove it from the EH label list and remove
1504 the EH_BEGIN/EH_END notes for that EH region.
1505
1506 Sat Nov 1 16:44:49 1997 Jason Merrill (jason@cygnus.com)
1507
1508 * flow.c (find_basic_blocks): Generate correct flow control
1509 information when exception handling notes are present.
1510
1511 Sat Nov 1 13:42:19 1997 Jeffrey A Law (law@cygnus.com)
1512
1513 * dwarf2out.c (output_call_frame_info): Fix length argument
1514 to ASM_OUTPUT_ASCII.
1515 (output_die, output_pubnames, output_line_info): Likewise.
1516
1517 Fri Oct 31 07:10:09 1997 Jeffrey A Law (law@cygnus.com)
1518
1519 * version.c: Bump for snapshot.
1520
1521 * dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_ASCII to
1522 output ASCII by default. Only use ASM_OUTPUT_DWARF_STRING if
1523 flag_debug_asm is on.
1524 (output_die, output_pubnames, output_line_info): Likewise.
1525
1526 * alias.c (init_alias_analysis): Add struct_value_incoming_rtx
1527 and static_chain_rtx into the potential base values array if
1528 they are registers.
1529
1530 * alias.c (new_reg_base_value): New array of potential base values.
1531 (unique_id): Now file scoped static.
1532 (find_base_value, case REG): Return the value in reg_base_value
1533 array for the REG if it exists. Else, return the value from
1534 new_reg_base_value if copying args and REG is a hard register.
1535 (find_base_value, case PLUS): If either operand of the PLUS is
1536 a REG, try to get its base value. Handle base + index and
1537 index + base.
1538 (record_set): Use new_reg_base_value instead of reg_base_value.
1539 (init_alias_analysis): Allocate space for new_reg_base_value too.
1540 Rework code to iterate over the insns propagating base value
1541 information until nothing changes.
1542
1543 * global.c (global_alloc): Free the conflict matrix after
1544 reload has finished.
1545
1546 Fri Oct 31 01:45:31 1997 Jason Merrill <jason@yorick.cygnus.com>
1547
1548 * libgcc2.c (L_eh): Define __eh_pc.
1549 Replace __eh_type with generic pointer __eh_info.
1550
1551 Fri Oct 31 00:34:55 1996 J"orn Rennecke <amylaar@cygnus.co.uk>
1552
1553 * expr.c (expand_increment): When enqueing a postincrement for a MEM,
1554 use copy_to_reg if address is not a general_operand.
1555
1556 Fri Oct 31 00:16:55 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1557
1558 * profile.c (output_func_start_profiler): Clear flag_inline_functions
1559 for the duration of the call to rest_of_compilation.
1560
1561 Thu Oct 30 14:40:10 1997 Doug Evans <devans@canuck.cygnus.com>
1562
1563 * configure.in (sparc-*-elf*): Use sparc/elf.h, sparc/t-elf.
1564 Set extra_parts.
1565 (sparc*-*-*): Recognize --with-cpu=v9.
1566 * sparc/elf.h: New file.
1567 * sparc/t-elf: New file.
1568
1569 Thu Oct 30 13:26:12 1997 Jeffrey A Law (law@cygnus.com)
1570
1571 * mn10300.c (const_8bit_operand): New function.
1572 (mask_ok_for_mem_btst): New function.
1573 * mn10300.md (btst patterns with mem operands): Use new functions
1574 to avoid creating btst instructions with invalid operands.
1575
1576 Wed Oct 29 16:57:19 1997 Michael Meissner <meissner@cygnus.com>
1577
1578 * rs6000/xm-sysv4.h: Include xm-linux.h instead of xm-svr4.h if we
1579 are running on PowerPC Linux.
1580
1581 Wed Oct 29 13:10:11 1997 Gavin Koch <gavin@cygnus.com>
1582
1583 * config/mips/elf64.h (PREFERRED_DEBUGGING_TYPE): Only define
1584 if not previously defined.
1585
1586 Tue Oct 28 23:55:27 1997 Doug Evans (devans@cygnus.com)
1587
1588 * function.c (assign_parms): Correct mode of stack_parm if
1589 entry_parm underwent a mode conversion.
1590
1591 1997-10-28 Brendan Kehoe <brendan@lisa.cygnus.com>
1592
1593 * global.c (global_alloc): Use xmalloc instead of alloca for
1594 CONFLICTS, since max_allocno * allocno_row_words alone can be more
1595 than 2.5Mb sometimes.
1596
1597 Tue Oct 28 15:29:15 1997 Richard Henderson <rth@cygnus.com>
1598
1599 * reload1.c (eliminate_regs [SET]): If [SUBREG] widened the mode of
1600 DEST for the spill, adjust mode of SRC to compensate.
1601
1602 Tue Oct 28 14:36:45 1997 Richard Henderson <rth@cygnus.com>
1603
1604 * alpha.md (reload_inqi): Check for MEM before strict_memory_address_p,
1605 since any_memory_operand() allows pseudos during reload.
1606 (reload_inhi, reload_outqi, reload_outhi): Likewise.
1607
1608 Tue Oct 28 11:53:14 1997 Jim Wilson <wilson@cygnus.com>
1609
1610 * m68k.md (btst patterns): Add 5200 support.
1611
1612 Tue Oct 28 11:58:40 1997 Toon Moene <toon@moene.indiv.nluug.nl>
1613
1614 * fold-const.c (fold): For ((a * C1) / C3) or (((a * C1) + C2) / C3)
1615 optimizations, look inside dividend to determine if the expression
1616 can be simplified by using EXACT_DIV_EXPR.
1617
1618 Tue Oct 28 10:19:01 1997 Jason Merrill <jason@yorick.cygnus.com>
1619
1620 From Brendan:
1621 * dwarf2out.c (output_call_frame_info): Use l1 instead of ".".
1622
1623 Tue Oct 28 00:32:14 1997 Richard Henderson <rth@cygnus.com>
1624
1625 * alpha.c (summarize_insn [SUBREG]): Propagate SET.
1626
1627 Mon Oct 27 23:59:26 1997 Richard Henderson <rth@cygnus.com>
1628
1629 * alpha.c (alpha_handle_trap_shadows): Don't call get_attr_trap
1630 on a CLOBBER.
1631
1632 Mon Oct 27 21:25:20 1997 Richard Henderson <rth@cygnus.com>
1633
1634 * alpha.md (movqi, movhi): Make sure new insns created during reload
1635 won't need reloading themselves.
1636 (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Likewise.
1637
1638 Mon Oct 27 16:11:10 1997 Jeffrey A Law (law@cygnus.com)
1639
1640 * mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Disable reg+reg.
1641
1642 Sun Oct 26 13:50:44 1997 Richard Henderson <rth@cygnus.com>
1643
1644 * alpha.c (alpha_sa_mask [VMS]): Don't include $26 in the mask.
1645 Patch from Klaus Kaempf <kkaempf@progis.de>.
1646
1647 Sun Oct 26 13:31:47 1997 Jim Wilson (wilson@cygnus.com)
1648
1649 * expr.c (expand_expr, case INDIRECT_REF): Optimize a reference
1650 to an element in a constant string.
1651
1652 Sun Oct 26 11:41:49 1997 Jason Merrill <jason@yorick.cygnus.com>
1653
1654 * dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32
1655 bit PC-relative offset. The exception range table pointer is now in
1656 the CIE.
1657 * frame.c (dwarf_cie, dwarf_fde): Rename CIE_pointer to CIE_delta.
1658 (count_fdes, add_fdes, get_cie): Adjust.
1659 (cie_info, extract_cie_info, __frame_state_for): Adjust eh_ptr uses.
1660
1661 From H.J. Lu:
1662 * frame.c (count_fdes, add_fdes): Skip linked once FDE entries.
1663
1664 Sun Oct 26 11:52:01 1997 Richard Henderson <rth@cygnus.com>
1665
1666 * alias.c (memrefs_conflict_p): Treat arg_pointer_rtx just
1667 like stack_pointer_rtx.
1668
1669 Sun Oct 26 11:32:16 1997 Manfred Hollstein <manfred@s-direktnet.de>
1670
1671 * Makefile.in (bootstrap-lean): Combined with `normal' bootstrap
1672 targets using "$@" to provide support for similar but not identical
1673 targets without having to duplicate code.
1674 (bootstrap4): New goal.
1675
1676 * Makefile.in (compare, compare-lean, compare3): Combined to one
1677 ruleset determining actions to be performed via $@.
1678 (compare4, compare4-lean): New targets.
1679 (gnucompare, gnucompare3): Combined to one ruleset determining
1680 actions to be performed via $@. Also, note which files failed
1681 the comparison test in .bad_compare.
1682 (gnucompare-lean, gnucompare3-lean, gnucompare4-lean): New targets.
1683
1684 Sun Oct 26 10:06:11 1997 Toon Moene <toon@moene.indiv.nluug.nl>
1685
1686 * fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
1687 if the dividend is a multiple of the divisor.
1688
1689 Sun Oct 26 09:21:40 1997 Jeffrey A Law (law@cygnus.com)
1690
1691 * Makefile.in (LIBGCC2_CFLAGS): Add -fexceptions.
1692
1693 * alias.c (find_base_term): Handle PRE_INC, PRE_DEC, POST_INC,
1694 and POS_DEC.
1695
1696 * alias.c (true_dependence): Fix typo.
1697
1698 * toplev.c (flag_rerun_loop_opt): New variable.
1699 (f_options): Handle -frerun-loop-opt.
1700 (rest_of_compilation): If -frerun-loop-opt, then run the loop
1701 optimizer twice.
1702 (main): Enable -frerun-loop-opt by default for -O2 or greater.
1703
1704 * loop.c (simplify_giv_expr): Adding two invariants results
1705 in an invariant.
1706
1707 Sun Oct 26 09:15:15 1997 Richard Henderson <rth@cygnus.com>
1708
1709 * expr.c (get_inner_reference): Remove the array bias after
1710 converting the index to Pmode.
1711
1712 Sat Oct 25 12:20:58 1997 Jeffrey A Law (law@cygnus.com)
1713
1714 * mn10300.h (TARGET_SWITCHES): Add -mmult-bug and -mno-mult-bug.
1715 (TARGET_MULT_BUG): Define.
1716 (TARGET_DEFAULT): Default to TARGET_MULT_BUG.
1717 * mn10300.md (mulsi3): Handle TARGET_MULT_BUG.
1718
1719 Fri Oct 24 17:40:34 1997 Jeffrey A Law (law@cygnus.com)
1720
1721 * mn10200.c (indirect_memory_operand): Delete unused function.
1722 * mn10200.h (EXTRA_CONSTRAINT): Handle 'R'.
1723 * mn10200.md (bset, bclr insns): Handle output in a reg too.
1724
1725 Fri Oct 24 15:54:57 1997 Richard Henderson <rth@cygnus.com>
1726
1727 * alpha.md (call patterns): Revert Oct 16 change; if we are to elide
1728 the callee's ldgp, we must do it ourselves, and we use the jsr tag
1729 for more than scheduling.
1730
1731 Fri Oct 24 13:23:04 1997 Doug Evans <devans@canuck.cygnus.com>
1732
1733 * sparc/sparc.h (ASM_SPEC): Delete asm_arch.
1734
1735 Fri Oct 24 13:19:40 1997 Jeffrey A Law (law@cygnus.com)
1736
1737 * mn10300.c (symbolic_operand, legitimize_address): New functions.
1738 * mn10300.h (LEGITIMIZE_ADDRESS): Call legitimize_address.
1739 (GO_IF_LEGITIMATE_ADDRESS): Don't allow base + symbolic.
1740
1741 Thu Oct 23 09:35:12 1997 Jeffrey A Law (law@cygnus.com)
1742
1743 * version.c: Bump for snapshot.
1744
1745 Thu Oct 23 08:03:59 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1746
1747 * dbxout.c (dbxout_start_new_source_file): Use output_quoted_string
1748 for FILENAME.
1749
1750 Wed Oct 22 00:34:12 1997 Jeffrey A Law (law@cygnus.com)
1751
1752 * toplev.c (flag_exceptions): Default value is 2.
1753 (compile_file): If flag_exceptions still has the value 2, then
1754 set it to 0.
1755
1756 * rs6000.c (struct machine_function): Add pic_offset_table_rtx.
1757 (rs6000_save_machine_status): Save pic_offset_table_rtx.
1758 (rs6000_restore_machine_status: Restore pic_offset_table_rtx.
1759
1760 * local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions
1761 are shared.
1762
1763 * rs6000.md (*movsi_got_internal_mem): New pattern.
1764 (*movsi_got_internal_mem splitter): New define_split.
1765
1766 Tue Oct 21 18:14:03 1997 Jim Wilson <wilson@cygnus.com>
1767
1768 * obstack.h (obstack_empty_p): Fix spurious space after backslash.
1769
1770 Tue Oct 21 18:34:01 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
1771
1772 * rs6000.c: Avoid creating a stack frame under SYSV ABI if we
1773 only need to save LR.
1774
1775 Tue Oct 21 10:06:40 1997 Jeffrey A Law (law@cygnus.com)
1776
1777 * mn10300.md (movqi, movhi): Avoid using address registers as
1778 destinations unless absolutely necessary.
1779
1780 * mn10200.c (expand_prologue): Fix typo.
1781
1782 * mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed
1783 addresses.
1784 * mn10200.md (neghi2): Provide an alternative which works if
1785 the input and output register are the same.
1786
1787 * mn10300.c (print_operand): Handle 'S'.
1788 * mn10300.md (ashlsi3, lshrsi3, ashrsi3): Use %S for
1789 shift amount in last alternative.
1790
1791 * mn10300.c (expand_epilogue): Rework to handle register restores
1792 in "ret" and "retf" instructions correctly.
1793
1794 Mon Oct 20 16:47:08 1997 Jim Wilson <wilson@cygnus.com>
1795
1796 * expmed.c (extract_bit_field): Don't make flag_force_mem disable