tweak
[official-gcc.git] / gcc / ChangeLog.12
blobecb291925080d730da799ae5afb01517f2441578
1 Sat May  2 20:39:22 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3         * fold-const.c (fold): When commutting COND_EXPR and binary operation,
4         avoid quadratic behavior if have nested COND_EXPRs.
6 Tue Apr 28 17:30:05 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
8         * mips.h (HOST_WIDE_INT): Define if not already.
9         (compute_frame_size, mips_debugger_offset): Return HOST_WIDE_INT.
10         (DEBUGGER_{AUTO,ARG}_OFFSET): Cast second arg to HOST_WIDE_INT.
11         * /mips.c (mips_debugger_offset): Now returns HOST_WIDE_INT.
12         Likewise for internal variable frame_size.
14         * final.c (alter_subreg): Make new SUBREG if reload replacement
15         scheduled inside it.
17         * dwarf2out.c (add_bound_info, case SAVE_EXPR): Pass 
18         SAVE_EXPR_RTL address through fix_lexical_addr.
20 Mon Apr 27 18:57:18 1998  Jim Wilson  <wilson@cygnus.com>
22         * mips/sni-svr4.h (CPP_PREDEFINES): Add -Dsinix and -DSNI.
24 Mon Apr 20 14:48:29 1998  Michael Meissner  <meissner@cygnus.com>
26         * rs6000.md (mov{sf,df} define_splits): When splitting move of
27         constant to int reg, don't split  insns that do simple AND and OR
28         operations; just split each word and let normal movsi define split
29         handle it further.
31 Sun Apr 19 20:21:19 1998  Michael P. Hayes  <michaelh@ongaonga.chch.cri.nz>
33         * real.h (C4X_FLOAT_FORMAT): New macro.
34         * real.c (c4xtoe, etoc4x, toc4x): New functions.
36 Sun Apr 19 20:17:32 1998  Niklas Hallqvist  <niklas@petra.appli.se>
38         * m68k.c (notice_update_cc): Use modified_in_p to check for update.
40 Sun Apr 19 18:48:07 1998  K. Richard Pixley  <rich@kyoto.noir.com>
42         * fixincludes: Discard empty C++ comments.
43         Special case more files with C++ comments nested in C comments.
45 Sun Apr 19 18:30:11 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
47         * m68k.md ({add,sub}di3): Optimize for constant operand.
49 Sun Apr 19 18:27:11 1998  Alan Modra <alan@spri.levels.unisa.edu.au>
51         * i386.c (output_387_binary_op): Swap operands when popping if result
52         is st(0).
54 Sun Apr 19 17:58:01 1998  Peter Jeremy  <peter.jeremy@alcatel.com.au>
56         * expr.c (do_jump_by_parts_equality_rtx): Now public.
57         * expmed.c (do_cmp_and_jump): New function.
58         (expand_divmod): Use do_cmp_and_jmp instead of emit_cmp_insn and
59         emit_jump_insn.
61 Sun Apr 19 07:48:37 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
63         * c-typeck.c (build_c_cast): Check underlying type when seeing
64         if discarding const or volatile.
66         * c-decl.c (pushdecl): Avoid duplicate warning about implicit redecl.
68         * configure.in (stab.h): Check for it.
69         (i386-*-vsta): Include xm-i386.h too.
70         * dbxout.c (stab.h): Include based on autoconf results.
71         * vax/xm-vms.h (NO_STAB_H): Deleted.
72         * alpha/xm-vms.h, xm-mips.h, i386/xm-mingw32.h, i386/go32.h: Likewise.
73         * i386/xm-cygwin32.h: Likewise.
74         * i386/xm-vsta.h (NO_STAB_H): Likewise.
75         (i386/xm-i386.h): No longer include.
77         * mips.c: Cleanups and reformatting throughout.
78         ({expand,output}_block_move): Use HOST_WIDE_INT for sizes.
79         (mips_debugger_offset, compute_frame_size): Likewise.
80         (save_restore_insns, mips_expand_{pro,epi}logue): Likewise.
81         (siginfo): Deleted.
82         (override_options): Don't set up to call it; don't call setvbuf.
84 Mon Apr 13 06:40:17 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
86         * configure.in (sparc-*-vxsim*): Include xm-siglist.h and
87         define USG and POSIX.
89 Sun Apr 12 21:59:27 1998  Jeffrey A. Law  <law@cygnus.com>
91         * calls.c (expand_call): Fix typo in STRICT_ARGUMENT_NAMING.
93 Sun Apr 12 21:42:23 1998  D. Karthikeyan  <karthik@cdotd.ernet.in>
95         * m68k.h (TARGET_SWITCHES): Add missing comma.
97 Sun Apr 12 21:33:33 1998  Eric Valette  <valette@crf.canon.fr>
99         * configure.in (i[34567]86-*-rtemself*): New configuration.
100         * i386/rtemself.h: New file.
102 Sun Apr 12 21:08:28 1998  Jim Wilson  <wilson@cygnus.com>
104         * loop.c (loop_optimize): Reset max_uid_for_loop after
105         find_and_verify_loops call.
106         (strength_reduce): In auto_inc_opt code, verify v->insn has valid
107         INSN_LUID.
109 Sun Apr 12 20:54:59 1998  Richard Earnshaw (rearnsha@arm.com)
111         * configure.in (sparc-*-solaris2*): Add xm-siglist.h to xm_file.
112         Add USG and POSIX to xm_defines.
114 Sun Apr 12 20:47:37 1998  Pat Rankin  <rankin@eql.caltech.edu>
116         * cccp.c (eprint_string): New function.
117         (do_elif, do_else, verror): Use it instead of fwrite(,,,stderr).
118         (error_from_errno, vwarning): Likewise.
119         ({verror,vwarning,pedwarn}_with_line): Likewise.
120         (pedwarn_with_file_and_line, print_containing_files): Likewise.
122 Sun Apr 12 20:40:44 1998  Richard Henderson  <rth@dot.cygnus.com>
124         * configure.in (alpha*-*-linux-gnu*): Add alpha/t-crtbe.
125         Add crt{begin,end}.o in extra_parts and delete crt{begin,end}S.o.o
126         * alpha/t-crtbe, alpha/crt{begin,end}.asm: New files.
127         
128         * alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Accept '(' for s/sv/svi.
129         * alpha.c (print_operand): Handle it.
130         * alpha.md (fix_trunc[ds]fdi2): Use it.  Add earlyclobber pattern
131         for ALPHA_TP_INSN.
133 Sun Apr 12 13:09:46 1998  Scott Christley  <scottc@net-community.com>
135         * objc/encoding.c (objc_sizeof_type, _C_VOID): New case.
137 Sun Apr 12 13:04:55 1998  Nikolay Yatsenko  (nikolay@osf.org)
139         * configure.in (i[34567]86-*-osf1*): New entry.
140         * i386/osf1-c[in].asm: New files for OSF/1.
141         * i386/osf1elf{,gdb}.h, i386/[xt]-osf1elf, i386/xm-osf1elf.h: Likewise.
143 Sun Apr 12 10:03:51 1998  Noel Cragg  <noel@red-bean.com>
145         * fixincludes: Remove specification of parameters when renaming
146         functions in Alpha DEC Unix include files.
148 Sun Apr 12 07:33:46 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
150         * mips.c (large_int): Use HOST_WIDE_INT, not int.
151         (print_operand): Use HOST_WIDE_INT_PRINT_* macros.
153         * toplev.c (main): Sort order of handling of -d letters.
154         Use `F' instead of `D' for addressof_dump.
156         * libgcc2.c (_eh_compat): Deleted.
157         * Makefile.in (LIB2FUNCS): Delete _eh_compat.
159         * configure.in (alpha*-*-linux-gnu*): Don't include alpha/xm-linux.h.
161         * c-common.c (check_format_info): Properly test for nested pointers.
163         * pa.md (casesi0): Add missing mode for operand 0.
165         * function.c (purge_addressof_1, case MEM): If BLKmode, put ADDRESSOF
166         into stack.
168         * c-parse.in (label): Give warning if pedantic and label not integral.
170         * c-decl.c (grokdeclarator): Don't warn about return type if in
171         system header.
173         * reload.c (reload_nongroup): New variable.
174         (push{_secondary,}_reload): Initialize it.
175         (find_reloads): Compute it.
176         (debug_reload): Print it.
177         * reload.h (reload_nongroup): Declare.
178         * reload1.c (reload): Use reload_nongroup instead of local computation.
179         Check caller_save_spill_class against any nongroup reloads.
180         (reloads_conflict): No longer static.
182 Sun Apr 12 05:52:18 1998  John David Anglin  <dave@hiauly1.hia.nrc.ca>
184         * vax.md (call patterns): Operand 1 is always a CONST_INT.
186 Sat Apr 11 16:01:11 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
188         * convert.c (convert_to_{pointer,integer,real,complex}): Use switch.
189         Add missing integer-like types.
190         Simplify return of zero in error case.
191         (convert_to_pointer): Remove dubious abort.
192         (convert_to_integer, case POINTER_TYPE): Make recursive call.
193         (convert_to_integer, case COND_EXPR): Always convert arms.
194         * tree.c (type_precision): Deleted.
196         * cccp.c (do_warning): Give pedantic warning if -pedantic and not
197         in system file.
198         * cpplib.c (do_warning): Likewise.
200         * function.c (target_temp_slot_level): Define here.
201         (push_temp_slots_for_target, {get,set}_target_temp_slot_level): New.
202         * stmt.c (target_temp_slot_level): Don't define here.
203         * expr.h (temp_slot_level): New declaration.
205 Fri Apr 10 16:35:48 1998  Paul Eggert  <eggert@twinsun.com>
207         * c-common.c (decl_attributes): Support strftime format checking.
208         (record_function_format, {check,init_function}_format_info): Likewise.
209         (enum format_type): New type.
210         (record_function_format): Now static; takes value of type
211         enum format_type instead of int.
212         (time_char_table): New constant.
213         (struct function_format_info): format_type member renamed from is_scan.
214         (check_format_info): Use `warning' rather than sprintf followed by
215         `warning', to avoid mishandling `%' in warnings.
216         Change a `pedwarn' to `warning'.
217         * c-tree.h (record_function_format): Remove decl.
219 Thu Apr  2 17:34:27 1998  Manfred Hollstein  <manfred@s-direktnet.de>
221         * regclass.c (memory_move_secondary_cost): Protect uses of
222         SECONDARY_{INPUT,OUTPUT}_RELOAD_CLASS with #ifdef tests.
224 Thu Apr  2 07:06:57 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
226         * m68k.c (standard_68881_constant_p): Don't use fmovecr on 68060.
228 Thu Apr  2 06:19:25 1998  Ken Raeburn  <raeburn@cygnus.com>
230         * Makefile.in (version.c): Put "cvs log" output in build directory.
232         * reload.h (MEMORY_MOVE_COST): Define here if not already defined.
233         (memory_move_secondary_cost): Declare.
234         * regclass.c (MEMORY_MOVE_COST): Don't define default here.
235         (memory_move_secondary_cost) [HAVE_SECONDARY_RELOADS]: New function.
236         (regclass, record_reg_classes, copy_cost, record_address_regs):
237         Pass register class and direction of move to MEMORY_MOVE_COST.
238         (top_of_stack) [HAVE_SECONDARY_RELOADS]: New static array.
239         (init_regs) [HAVE_SECONDARY_RELOADS]: Initialize it.
240         * reload1.c (MEMORY_MOVE_COST): Don't define default here.
241         (emit_reload_insns, reload_cse_simplify_set): Pass register class
242         and direction of move to MEMORY_MOVE_COST.
243         * 1750a.h (MEMORY_MOVE_COST): Add extra ignored arguments.
244         * a29k.h, alpha.h, arc.h, arm.h, dsp16xx.h, i386.h, m32r.h: Likewise.
245         * m88k.h, rs6000.h: Likewise.
246         * mips.h (MEMORY_MOVE_COST): Likewise.
247         Add memory_move_secondary_cost result to cpu-specific cost.
249 Mon Mar 30 13:56:30 1998  Jim Wilson  <wilson@cygnus.com>
251         * mips/ultrix.h (SUBTARGET_CPP_SPEC): Define.
253 Wed Mar 25 16:09:01 1998  Michael Meissner  <meissner@cygnus.com>
255         * rs6000.h (FUNCTION_ARG_PADDING): Cast result to be enum direction.
256         (function_arg_padding): Declare.
258         * rs6000.c: Include stdlib.h if we have it.
259         (function_arg_padding): Change return type to int, cast enum's to int.
261         (From Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>)
262         * rs6000.c (rs6000_override_options): Change type of `i', `j' and
263         `ptt_size' from int to size_t.
264         (rs6000_file_start): Likewise for `i'.
265         (rs6000_replace_regno): Add default case in enumeration switch.
266         (output_epilog): Remove unused variable `i'.
267         (rs6000_longcall_ref): Remove unused variables `len', `p', `reg[12]'.
269         * rs6000.h (ADDITIONAL_REGISTER_NAMES): Add missing braces around
270         initializer.
271         (get_issue_rate, non_logical_cint_operand): Add prototype.
272         (rs6000_output_load_toc_table): Likewise.
274         * rs6000.md (udivmodsi4): Add explicit braces to avoid ambiguous
275         `else'.
277 Wed Mar 25 02:39:01 1998  Paul Eggert  <eggert@twinsun.com>
279         * configure.in (i[[34567]]86-*-solaris2*, powerpcle-*-solaris2*,
280         sparc-*-solaris2*): Use fixinc.svr4 if Solaris 2.0 through 2.4.
282 Mon Mar 23 07:27:19 1998  Philippe De Muyter  <phdm@macqel.be>
284         * m68k.md (ashldi_const): Allow shift count in range ]32,63].
285         (ashldi3): Allow constant shift count in range ]32,63].
286         (ashrdi_const, ashrid3, lshrdi_const, lshrdi3): Likewise.
288         * m68k.md (zero_extend[qh]idi2, iordi_zext): New patterns.
289         (zero_extendsidi2): Avoid useless copy.
290         (iorsi_zexthi_ashl16): Avoid "0" constraint for operand 2.
291         (iorsi_zext): New name for old unnamed pattern; indentation fixes.
293 Mon Mar 23 07:12:05 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
295         * final.c (only_leaf_regs_used): If pic_offset_table_rtx used,
296         make sure it is a permitted register.
298 Sun Mar 22 06:57:04 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
300         * expmed.c (extract_bit_field): Don't confuse SUBREG_WORD with
301         endian adjustment in SUBREG case.
302         Don't abort if can't make SUBREG needed for extv/extzv.
304 Sat Mar 21 08:02:17 1998  Richard Gorton  <gorton@amt.tay1.dec.com>
306         * alpha.md (zero_extendqi[hsd]i2): Use "and", not "zapnot".
308 Sat Mar 21 07:47:04 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
310         * unroll.c (verify_addresses): Use validate_replace_rtx.
311         (find_splittable_givs): If invalid address, show nothing same_insn.
313 Fri Mar 20 10:24:12 1998  Philippe De Muyter  <phdm@macqel.be>
315         * fold-const.c (fold, case CONVERT_EXPR): Replace sign-extension of
316         a zero-extended value by a single zero-extension.
318 Thu Mar 19 14:59:32 1998  Andrew Pochinsky  <avp@ctp.mit.edu>
320         * sparc.h (ASM_OUTPUT_LOOP_ALIGN): Fix error in last change.
322 Thu Mar 19 14:48:35 1998  Michael Meissner  <meissner@cygnus.com>
324         * gcc.c (default_arg): Don't wander off the end of allocated memory.
326         * rs6000/sysv4.h (RELATIVE_PREFIX_NOT_LINKDIR): Undef for System V
327         and EABI.
329 Thu Mar 19 06:17:59 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
331         * Makefile.in (toplev.o): Depend on Makefile.
333 Wed Mar 18 17:40:09 1998  Michael P. Hayes  <michaelh@ongaonga.chch.cri.nz>
335         * expr.c (convert_move): Add [QH]Imode/P[QH]Imode conversions.
336         * machmode.def (PQImode, PHImode): New modes.
338 Wed Mar 18 17:11:18 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
340         * m68k.md (movsf+1): Optimize moving a CONST_DOUBLE zero.
342 Wed Mar 18 17:07:54 1998  Ken Raeburn  <raeburn@cygnus.com>
344         * regclass.c (init_reg_sets): Delete init of reg-move cost tables.
345         (init_reg_sets_1): Put it here.
347 Wed Mar 18 16:43:11 1998  Jim Wilson  <wilson@cygnus.com>
349         * i960.md (tablejump): Handle flag_pic.
351         * profile.c (branch_prob): If see computed goto, call fatal.
353         * calls.c (expand_call): Fix typos in n_named_args computation.
355 Wed Mar 18 05:54:25 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
357         * fold-const.c (operand_equal_for_comparison_p): See if equal
358         when nop conversions are removed.
360         * expr.c (expand_expr, case COND_EXPR): If have conditional move,
361         don't use ORIGINAL_TARGET unless REG.
363         * function.c (fixup_var_refs_insns): Also delete insn storing pseudo
364         back into arg list.
366         * combine.c (gen_binary): Don't make AND that does nothing.
367         (simplify_comparison, case AND): Commute AND and SUBREG.
368         * i386.h (CONST_CONSTS, case CONST_INT): One-byte integers are cost 0.
370 Mon Mar 16 15:57:17 1998  Geoffrey Keating  <geoffk@ozemail.com.au>
372         * rs6000.c (small_data_operand): Ensure any address referenced
373         relative to small data area is inside SDA.
375 Sun Mar 15 16:01:19 1998  Andrew Pochinsky  <avp@ctp.mit.edu>
377         * sparc.h (ASM_OUTPUT_LOOP_ALIGN): Write nop's.
379 Sun Mar 15 15:53:39 1998  Philippe De Muyter  <phdm@macqel.be>
381         * libgcc2.c (exit): Don't call __bb_exit_func if HAVE_ATEXIT.
383 Sun Mar 15 15:44:41 1998  Paul Eggert  <eggert@twinsun.com>
385         * cccp.c: Fix bugs relating to NUL in input file name,
386         e.g. with `#line 2 "x\0y"'.
387         (PRINTF_PROTO_4): New macro.
388         (struct {file_buf,definition,if_stack}): New member nominal_fname_len.
389         (main, expand_to_temp_buffer): Store length of input file names.
390         (finclude, create_definition, do_line, conditional_skip): Likewise.
391         (skip_if_group, macroexpand): Likewise.
392         (make_{definition,undef,assertion}): Likewise.
393         (special_symbol, do_include): Use stored length of input file names.
394         (do_define, do_elif, do_else, output_line_directive, verror): Likewise.
395         (error_from_errno, vwarning, verror_with_line): Likewise.
396         (vwarning_with_line, pedwarn_with_file_and_line): Likewise.
397         (print_containing_files): Likewise.
398         (do_line): Fix off-by-1 problem: 1 too many bytes were being allocated.
399         (quote_string, pedwarn_with_file_and_line): New arg specifies length.
400         All callers changed.
402 Sun Mar 15 15:38:16 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
404         * c-typeck.c: Collect pending initializers in AVL tree instead of list.
405         (add_pending_init, pending_init_member): New functions.
406         (output_init_element): Use them.
407         (output_pending_init_elements): Rewritten to exploit AVL order.
409 Sun Mar 15 05:10:49 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
411         * gnu.h (GNU_CPP_PREDEFINES): Deleted; not valid in traditional C.
412         * {i386,mips}/gnu.h (CPP_PREDEFINES): Don't call GNU_CPP_PREDEFINES.
414         * flow.c (insn_dead_p): A CLOBBER of a dead pseudo is dead.
416         * alpha.h (REG_ALLOC_ORDER): Put $f1 after other nonsaved.
418         * sparc.c (sparc_type_code): Fix error in previous change.
420 Sat Mar 14 05:45:21 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
422         * i386/xm-aix.h, i386/xm-osf.h (i386/xm-i386.h): Don't include.
423         (USG): Don't define.
424         * i386/xm-isc.h (i386/xm-sysv3.h): Don't include.
425         * i386/xm-sco.h (i386/xm-sysv3.h): Likewise.
426         (BROKEN_LDEXP, SMALL_ARG_MAX, NO_SYS_SIGLIST): Don't define.
427         * m68k/xm-3b1.h (m68k/xm-m68k.h): Don't include.
428         (USG): Don't define.
429         * m68k/xm-atari.h (m68k/xm-m68kv.h): Don't include.
430         (HAVE_VPRINTF, FULL_PROTOTYPES): Don't define.
431         * m68k/xm-crds.h (m68k/xm-m68k.h): Don't include.
432         (USE_C_ALLOCA, unos, USG): Don't define.
433         * m68k/xm-mot3300.h (m68k/xm-m68k.h): Don't include.
434         (USE_C_ALLOCA, NO_SYS_SIGLIST): Don't define.
435         * m68k/xm-plexus.h (m68k/xm-m68k.h): Don't include.
436         (USE_C_ALLOCA, USG): Don't define.
437         * m88k/xm-sysv3.h (m88k/xm-m88k.h): Don't include.
438         * m68k/xm-next.h (m68k/xm-m68k.h): Don't include.
439         * ns32k/xm-pc532-min.h (ns32k/xm-ns32k.h): Don't include.
440         (USG): Don't define.
441         * rs6000/xm-mach.h: Don't include xm-rs6000.h.
442         * rs6000/xm-cygwin32.h (rs6000/xm-rs6000.h): Don't include.
443         (NO_STAB_H): Don't define.
444         * sparc/xm-linux.h (xm-linux.h): Don't include.
445         * sparc/xm-sol2.h (sparc/xm-sysv4.h): Don't include.
446         * a29k/xm-unix.h, alpha/xm-linux.h, arm/xm-linux.h: Deleted.
447         * arm/xm-netbsd.h, i386/xm-bsd386.h, i386/xm-gnu.h: Deleted.
448         * i386/xm-linux.h, i386/xm-sun.h, i386/xm-sysv3.h: Deleted.
449         * i386/xm-winnt.h,  m68k/xm-altos3068.h, m68k/xm-amix.h: Deleted.
450         * m68k/xm-amix.h, m68k/xm-hp320.h, m68k/xm-linux.h: Deleted.
451         * m68k/xm-m68kv.h, mips/xm-iris5.h, ns32k/xm-genix.h: Deleted.
452         * sparc/xm-pbd.h, vax/xm-vaxv.h, xm-svr3.h, xm-linux.h: Deleted.
453         * configure.in: Reflect above changes.
455         * xm-siglist.h, xm-alloca.h: New files.
456         * i386/xm-sysv4.h (i386/xm-i386.h, xm-svr4.h): Don't include.
457         (USE_C_ALLOCA, SMALL_ARG_MAX): Don't define.
458         * i386/xm-sco5.h (i386/xm-sysv3.h): Don't include.
459         (SYS_SIGLIST_DECLARED, USE_C_ALLOCA): Don't define.
460         * rs6000/xm-sysv4.h, sparc/xm-sysv4.h: Don't include xm-svr4.h.
461         * xm-svr4.h, i386/xm-dgux.h, mips/xm-news.h, mips/xm-sysv4.h: Deleted.
462         * configure.in: Reflect above changes.
464         * configure.in ({,host_,build_}xm_defines): New variables.
465         Set to USG instead of including xm-usg.h.
466         Write #define lines in config.h files from xm_defines vars.
467         * xm-usg.h: Deleted.
469 Fri Mar 13 07:10:59 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
471         * calls.c (expand_call): Fix typo in previous change.
473         * sparc.c (sparc_type_code): Avoid infinite loop when have
474         pointer to array of same pointer.
475         (sparc_type_code, case REAL_TYPE): Process subtypes here too.
477         * mips/bsd-4.h, mips/iris3.h, mips/news{4,5}.h: Don't include mips.h.
478         * mips/news5.h, mips/osfrose.h, mips/svr{3,4}-4.h: Likewise.
479         * mips/ultrix.h: Likewise.
480         * mips/cross64.h: Don't include iris6.h.
481         * mips/ecoff.h: Don't include mips.h or gofast.h.
482         * mips/elforion.h: Don't include elf64.h.
483         * mips/iris4.h: Don't include iris3.h.
484         * mips/iris4loser.h: Don't include iris4.h.
485         * mips/iris5gas.h: Don't include iris5.h.
486         * mips/elflorion.h, mips/nws3250v4.h, mips/xm-iris{3,4}.h: Deleted.
487         * mips/xm-nws3250v4.h, mips/xm-sysv.h: Deleted.
488         * mips/rtems64.h: Don't include elflorion.h.
489         * mips/sni-gas.h: Don't include sni-svr4.h.
490         * mips/svr4-t.h: Don't include svr4-5.h.
491         * mips/dec-osf1.h: Also include mips.h.
492         * mips/ecoffl.h, mips/elf.h: Also include mips.h and gofast.h.
493         * mips/iris5.h: Also include iris3.h and mips.h.
494         * xm-usg.h: New file.
495         * mips/xm-iris5.h: Don't include xm-mips.h; don't define USG.
496         * mips/xm-news.h, mips/xm-sysv4.h: Don't include xm-sysv.h.
497         * configure.in: Reflect above changes.
499 Thu Mar 12 07:18:48 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
501         * expr.h (STRICT_ARGUMENT_NAMING): Provide default value of 0.
502         * calls.c (expand_call): Use value of STRICT_ARGUMENT_NAMING.
503         * function.c (assign_parm): Likewise.
504         * mips/abi64.h (STRICT_ARGUMENT_NAMING): Return 0 for ABI_32.
505         * sparc.h (STRICT_ARGUMENT_NAMING): Only nonzero for V9.
507         * calls.c (expand_call, expand_library_call{,_value}, store_one_arg):
508         Rework handling of REG_PARM_STACK_SPACE to treat return value of
509         zero as if macro not defined; add new arg to emit_push_insn.
510         * expr.c (emit_push_insn): New arg, REG_PARM_STACK_SPACE.
511         * expr.h (emit_push_insn): Likewise.
512         * mips/abi64.h (REG_PARM_STACK_SPACE): Define.
514 Wed Mar 11 06:58:13 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
516         * m68k.h (CONST_OK_FOR_LETTER_P, case 'M'): Correct range check.
518 Wed Mar 11 06:15:52 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
520         * expr.c (emit_push_insn): Use loop to find movstr patterns
521         instead of explicit tests.
523         * Makefile.in (extraclean): Don't delete install1.texi.
525 Tue Mar 10 14:27:51 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
527         * combine.c (make_field_assignment): Don't get confused if OTHER
528         has VOIDmode and don't do anything if DEST is wider than a host word.
530         * vax.c (check_float_value): Cast bcopy args to char *.
532 Tue Mar 10 13:56:12 1998  Jim Wilson  <wilson@cygnus.com>
534         * mips/abi64.h (LONG_MAX_SPEC): Check MIPS_ABI_DEFAULT and
535         TARGET_DEFAULT and define __LONG_MAX__ appropriately.
536         Add support for -mabi=X, -mlong64, and -mgp{32,64} options.
537         * mips.c (mips_abi): Change type to int.
538         * mips.h (enum mips_abi_type): Delete.
539         (ABI_32, ABI_N32, ABI_64, ABI_EABI): Define as constants.
540         (mips_abi): Change type to int.
542 Mon Mar  2 08:06:58 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
544         * Version 2.8.1 released.
546         * Makefile.in (mostlyclean): Remove duplicate deletion of temp
547         files.  Delete more stamp files and [df]p-bit.c
548         (clean): Don't delete stamp files here.
549         (VERSION_DEP): New variable.
550         (distdir-finish): Pass a value of null for it.
551         (version.c): Use it.
552         Avoid broken pipe with cvs log.
554         * objc/Make-lang.in (objc/runtime-info.h): Rename emptyfile to
555         tmp-runtime and delete at end.
557 Sun Mar  1 05:50:25 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
559         * tree.c (build_reference_type): Handle obstacks like
560         build_pointer_type.
562         * Makefile.in (tmp-gcc.xtar): Renamed from gcc.xtar.
563         (gcc.xtar.gz): Deleted; merged with `dist'.
564         (diff): Create gcc-$(oldversion)-$(version).diff.
565         (distdir): Depend on distdir-cvs.
566         (distdir-cvs): New rule.
567         (distdir-start): Depend on version.c and TAGS.
568         (TAGS): Use tmp-tags instead of temp.
569         (dist): Create gcc-$(version).tar.gz.
571         * varasm.c (compare_constant_1): Fix typo in previous change.
573         * objc/Make-lang.in (objc-distdir): Properly rebuild objc-parse.c.
575 Sat Feb 28 16:58:08 1998  Tristan Gingold  <gingold@rossini.enst.fr>
577         * stmt.c (expand_decl): If -fcheck-memory-usage, put vars in memory.
578         * expr.c (get_memory_usage_from_modifier): Convert
579         EXPAND_{CONST_ADDRESS, INITIALIZER} to MEMORY_USE_DONT.
580   
581 Sat Feb 28 08:13:43 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
583         * i860/fx2800.h (DATA_ALIGNMENT): Use POINTER_TYPE_P.
584         * m68k/a-ux.h (FUNCTION_VALUE): Likewise.
585         * expr.c (get_pointer_alignment, compare, do_store_flag): Likewise.
586         (expand_builtin): Likewise.
587         * fold-const.c (force_fit_type, fold_convert, fold): Likewise.
588         * function.c (assign_parms): Likewise.
589         * integrate.c (expand_inline_function): Likewise.
590         * sdbout.c (sdbout_field_types): Likewise.
591         * tree.c (integer_pow2p, tree_log2, valid_machine_attribute): Likewise.
592         * stmt.c (expand_decl): Likewise.
593         ({,bc_}expand_decl_init): Also test for REFERENCE_TYPE.
595         * configure.in (version_dep): New variable; if srcdir is CVS working
596         directory, set to ChangeLog.
597         (version): Supply default if no version.c.
598         * Makefile.in (version.c): New rule.
600         * gcc.c (snapshot_warning): New function.
601         (main): Call it for snapshots.
603         * dwarf2out.c (expand_builtin_dwarf_reg_size): If reg_raw_mode
604         not valid for reg, use last size.  Also refine range assertion.
606 Sat Feb 28 05:04:47 1998  Michael P. Hayes  <michaelh@ongaonga.chch.cri.nz>
608         * enquire.c (cprop): Don't perform exhaustive search for char_min
609         and char_max when bits_per_byte > 16.
611 Thu Feb 26 15:12:03 1998  Christopher Taylor <cit@ckshq.com>
613         * fixincludes: Avoid using '0-~' in egrep.
615 Thu Feb 26 08:04:05 1998  Tristan Gingold  <gingold@messiaen.enst.fr>
617         * function.c (assign_parms): Call 'chkr_set_right' when DECL_RTL
618         is stack_parm.
619         * expr.c (get_memory_usage_from_modifier): Convert
620         EXPAND_{SUM, CONST_ADDRESS, INITIALIZER} to MEMORY_USE_RO.
622 Thu Feb 26 07:33:53 1998  Paul Eggert  <eggert@twinsun.com>
624         * c-lex.c (yylex): Don't munge errno before using it.
625         * cccp.c (error_from_errno, perror_with_name): Likewise.
626         * cpplib.c (cpp_error_from_errno): Likewise.
627         * gcc.c (pfatal_pexecute): Likewise.
628         * protoize.c (safe_write, find_file, process_aux_info_file): Likewise.
629         (rename_c_file, edit_file): Likewise.
631         * c-lex.c (yylex): Remove unused variable exceeds_double.
633 Thu Feb 26 07:05:14 1998  Michael P. Hayes  <michaelh@ongaonga.chch.cri.nz>
635         * reorg.c (fill_slots_from_thread): Don't steal delay list from target
636         if condition code of jump conflicts with opposite_needed.
638 Thu Feb 26 06:45:23 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
640         * Makefile.in (distdir-start): Don't copy CVS subdirectory of config.
642         * varasm.c ({compare,record}_constant_1, case CONSTRUCTOR):
643         Handle the case when we have TREE_PURPOSE values.
645 Thu Feb 26 05:59:01 1998  Philippe De Muyter  <phdm@macqel.be>
647         * fixincludes (sys/limits.h): Fix a nested comment problem with
648         HUGE_VAL definition on sysV68 R3V7.1.
650 Wed Feb 25 21:09:38 1998  Philippe De Muyter  <phdm@macqel.be>
652         * toplev.c (TICKS_PER_SECOND): Renamed from CLOCKS_PER_SECOND.
654 Wed Feb 25 20:50:08 1998  Michael P. Hayes  <michaelh@ongaonga.chch.cri.nz>
656         * reorg.c (fill_slots_from_thread): Mark resources referenced in
657         opposite_needed thread.  Return delay_list even when cannot get
658         any more delay insns from end of subroutine.
660 Wed Feb 25 19:50:01 1998  Mikael Pettersson <Mikael.Pettersson@sophia.inria.fr>
662         * gcc.c (lookup_compiler): Remove redundant test.
664 Wed Feb 25 07:24:22 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
666         * vax.md (call insns): Second operand to CALL rtl is SImode.
668         * configure.in (i[34567]86-*-mingw32): Support msv and crt suffix.
669         * i386/crtdll.h: New file.
671         * sparc.c (pic_setup_code): If -O0, write USE of pic_offset_table_rtx.
673         * expr.c (safe_from_p): Add new arg, TOP_P; all callers changed.
675 Sat Feb 21 07:02:39 1998  Jim Wilson  <wilson@cygnus.com>
677         * mips/iris5.h (DWARF2_UNWIND_INFO): Define to 0.
678         * mips/iris5gas.h (DWARF2_UNWIND_INFO): Define to 1.
680 Fri Feb 20 08:27:46 1998  Paul Eggert  <eggert@twinsun.com>
682         * sparc/sol2-sld.h: New file.
683         * configure.in (sparc-*-solaris2*): Use it when using system linker.
684         * toplev.c (main): Don't default to DWARF2_DEBUG with -ggdb 
685         if LINKER_DOES_NOT_WORK_WITH_DWARF2 is defined.
687 Fri Feb 20 08:21:49 1998  H.J. Lu  (hjl@gnu.org)
689         * alpha/elf.h (STARTFILE_SPEC, ENDFILE_SPEC): Support shared library.
690         (LIB_SPEC, DEFAULT_VTABLE_THUNKS): Defined #ifndef USE_GNULIBC_1.
691         * sparc/linux.h (DEFAULT_VTABLE_THUNKS): Likewise.
692         (LIB_SPEC): Add -lc for -shared #ifndef USE_GNULIBC_1.
693         * linux.h (LIB_SPEC): Likewise.
694         * sparc/linux64.h (LIB_SPEC): Likewise; also updated for glibc 2.
695         (LIBGCC_SPEC): Removed.
696         (CPP_SUBTARGET_SPEC): Add %{pthread:-D_REENTRANT}.
698 Fri Feb 20 05:22:12 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
700         * Makefile.in (distdir-start): Add dependence on bi-parser.[ch].
702 Thu Feb 19 18:07:11 1998  Jim Wilson  <wilson@cygnus.com>
704         * m68k.h (TARGET_SWITCHES): For 68000, 68302, subtract MASK_68881.
705         For 68303, 68332, cpu32, subtract MASK_68040_ONLY.
707 Wed Feb 18 09:37:29 1998  Paul Eggert  <eggert@twinsun.com>
709         * fixincludes (stdlib.h): Do not double-wrap the size_t typedef.
711 Wed Feb 18 07:32:11 1998  Jim Wilson  <wilson@cygnus.com>
713         * i960.c (emit_move_sequence): Handle unaligned stores to pseudos.
714         * i960.md (store_unaligned_[dt]i_reg): Handle register dest.
715         (store_unaligned_ti_reg): Likewise.
717         * m68k.h (MACHINE_STATE_{SAVE,RESTORE} [MOTOROLA]): Add %# and %/;
718         add : to make them into extended asms.
720 Wed Feb 18 07:08:05 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
722         * reg-stack.c (compare_for_stack_reg): Only handle FP conditional
723         move as next insn specially.
725         * reload.c (find_reloads): Always convert address reload for
726         non-reloaded operand to RELOAD_FOR_OPERAND_ADDRESS.
728         * emit-rtl.c (hard-reg-set.h): Include.
729         (get_lowpart_common): Don't make new REG for hard reg in a 
730         class that cannot change size.
731         * Makefile.in (emit-rtl.o): Depend on hard-reg-set.h.
733 Sat Feb 14 09:59:00 1998  Richard Earnshaw (rearnsha@arm.com)
735         * arm.md (movsfcc): Also validate operands[3] for hard float.
736         (movdfcc): Only accept fpu_add_operand for operands[3].8
738 Sat Feb 14 09:32:34 1998  Jim Wilson  <wilson@cygnus.com>
740         * dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
741         Convert CCmode to word_mode before calling GET_MODE_SIZE.
743 Sat Feb 14 09:27:42 1998  David Edelsohn  <edelsohn@mhpcc.edu>
745         * rs6000.h (MY_ISCOFF): Check for U803XTOCMAGIC.
747 Sat Feb 14 08:29:43 1998  Arvind Sankar  <arvind@cse.iitb.ernet.in>
749         * t-svr4 (TARGET_LIBGCC_CFLAGS): New definition.
751 Sat Feb 14 07:45:16 1998  Ken Rose (rose@acm.org)
753         * reorg.c (fill_slots_from_thread): New parameter, delay_list.
754         All callers changed.
756 Sat Feb 14 07:14:02 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
758         * reload.c (debug_reload): Properly output insn codes.
760         * pa.c (emit_move_sequence): If in reload, call find_replacement.
762         * gansidecl.h (bcopy, bzero, {,r}index): Don't define if IN_LIBGCC2.
764         * combine.c (distribute_notes, case REG_DEAD): When seeing if place
765         to put new note sets register, use reg_bitfield_target_p, as in
766         original code.
768         * gcc.c (process_command): If file is for linker, set lang to "*".
769         (lookup_compiler): Return 0 for language of "*".
771         * sched.c (attach_deaths, case SUBREG): Fix error in last change.
773         * i386.md (mov[sdx]fcc): Disable for now.
774         (mov[sd]fcc_1): Add earlyclobber for output on last alternative.
776 Sat Feb 14 06:42:50 1998  Jason Merrill  <jason@yorick.cygnus.com>
778         * except.c (get_dynamic_handler_chain): Only make call once per func.
779         (expand_fixup_region_{start,end}): New functions.
780         (expand_eh_region_start_tree): Store cleanup into finalization here.
781         * stmt.c (expand_cleanups): Use new functions to protect fixups.
783         * except.c (get_dynamic_handler_chain): Build up a FUNCTION_DECL.
784         * optabs.c (init_optabs): Don't init get_dynamic_handler_chain_libfunc.
785         * expr.h (get_dynamic_handler_chain_libfunc): Deleted.
787 Sat Feb 14 06:34:41 1998  Peter Lawrence  <Peter.Lawrence@Eng.Sun.COM>
789         * optabs.c (emit_conditional_move): Don't reverse condition for FP.
791 Fri Feb 13 07:22:04 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
793         * Makefile.in (mostlyclean): Only use s-* convention for stamp
794         files in main dir.
796         * configure.in: Add support for i786 (Pentium II); same as i686.
798 Thu Feb 12 20:16:35 1998  Michael Meissner  <meissner@cygnus.com>
800         * rs6000.md: Replace gen_rtx (CONST_INT,...) with GEN_INT.
802 Thu Feb 12 10:08:14 1998  John Hassey  <hassey@dg-rtp.dg.com>
804         * configure.in (i[3456]86-dg-dgux*): Don't need fixincludes.
806 Thu Feb 12 07:27:39 1998  Mumit Khan <khan@xraylith.wisc.edu>
807         
808         * i386/cygwin32.h (NO_IMPLICIT_EXTERN_C): Define.
809         about system headers.
810         (LIB_SPEC): Add -ladvapi32 -lshell32.
812 Thu Feb 12 07:19:31 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
814         * expr.c (expand_assignment): Fix typo in checking OFFSET.
816         * gbl-ctors.h (atexit): Don't define unless needed.
818         * combine.c (distribute_notes): Completely check for note operand being
819         only partially set on potential note target; adjust what notes
820         we make in that case.
822         * i386/xm-go32.h (HAVE_{BCOPY,BZERO,INDEX,RINDEX}): Deleted.
824 Wed Feb 11 08:53:27 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
826         * calls.c (emit_call_1): Size args now HOST_WIDE_INT.
827         (expand_call): struct_value_size now HOST_WIDE_INT.
829 Tue Feb 10 09:04:39 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
831         * integrate.c (initialize_for_inline): Ensure DECL_INCOMING_RTL
832         is always copied.
834 Tue Feb 10 06:10:49 1998  Paul Eggert  <eggert@twinsun.com>
836         * cccp.c (rescan): Fix bug with macro name appearing
837         immediately after L'x'.
839 Mon Feb  9 20:45:32 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
841         * c-common.c (format_char_info): Add new field zlen.
842         (print_char_table): Remove entry for 'Z' as a format character.
843         Initialize zlen field as appropriate.
844         (scan_char_table): Set zlen field to NULL in each entry.
845         (check_format_info): Recognize 'Z' as a length modifier, with a
846         warning in pedantic mode.
847         Avoid infinite loop when a repeated flag character is detected.
849 Mon Feb  9 09:24:04 1998  Paul Eggert  <eggert@twinsun.com>
851         * c-parse.in (primary): Minor wording fix in diagnostic.
853 Mon Feb  9 07:50:19 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
855         * c-decl.c (grokdeclarator): Remove warning on inline of varargs.
857         * reload.c (find_reloads): Check for const_to_mem case before
858         checking for invalid reload; use force_const_mem if no_input_reloads.
860         * function.c (push_function_context_to): Call init_emit last.
862         * protoize.c (my_link): Define as -1 in mingw32.
863         (link): Remove declaration.
865         * rs6000.c (setup_incoming_varargs): Always set rs6000_sysv_varargs_p.
867         * integrate.c (expand_inline_function): Clear label_map with bzero.
869         * unroll.c (copy_loop_body, case JUMP_INSN): Correct error in last
870         change: call single_set on COPY, not INSN.
872 Sun Feb  8 08:07:37 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
874         * msdos/top.sed, winnt/config-nt.sed: Change version number to 2.8.1.
876         * configure.in (i[3456]86-*-sco3.2v5*): Use cpio for headers.
878 Sat Feb  7 07:32:46 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
880         * i386/mingw32.h (LIBGCC_SPEC, STARTFILE_SPEC, MATH_LIBRARY):
881         Use msvcrt, not crtdll.
883 Fri Feb  6 20:32:06 1998  Geert Bosch  <bosch@gnat.com>
885         * i386/xm-os2.h (EMX, USG, BSTRING, HAVE_{PUTENV,VPRINTF,STRERROR}):
886         Define ifdef __EMX__.
887         (strcasecmp): Define to be stricmp if __EMX__.
888         (spawnv{,p}): Don't define if EMX.
889         (OBJECT_SUFFIX): Don't define if EMX.
890         (MKTEMP_EACH_FILE): Define.
892 Fri Feb  6 16:37:29 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
894         * objc/Make-lang.in (objc.stage1): Depend on stage1-start.
895         (objc.stage2, objc.stage3, objc.stage4): Likewise for the
896         respective stageN-start targets. 
897         (objc/sendmsg.o): Depend on objc/runtime-info.h.
899 Fri Feb  6 16:27:09 1998  Bernd Schmidt  <crux@Pool.Informatik.RWTH-Aachen.DE>
901         * stmt.c (expand_asm_operands): Properly treat asm statement
902         statements with no operands as volatile.
904 Fri Feb  6 16:03:25 1998  Greg McGary  <gkm@gnu.org>
906         * c-decl.c (pushdecl): Set DECL_ORIGINAL_TYPE once only.
908 Fri Feb  6 15:57:36 1998  Mumit Khan <khan@xraylith.wisc.edu>
910         * i386/cygwin32.h (STRIP_NAME_ENCODING): New macro.
912 Fri Feb  6 15:50:42 1998  Paul Eggert  <eggert@twinsun.com>
914         * libgcc2.c (__floatdi[xtds]f): Round properly even when rounding
915         large negative integer to plus or minus infinity.
917 Fri Feb  6 15:45:16 1998  Philippe De Muyter  <phdm@macqel.be>
919         * sdbout.c (plain_type_1): Return T_DOUBLE, not T_VOID, for
920         long double #ifndef EXTENDED_SDB_BASIC_TYPES.
922 Fri Feb  6 15:23:49 1998  John David Anglin  <dave@hiauly1.hia.nrc.ca>
924         * vax/ultrix.h (HAVE_ATEXIT): Define.
925         * x-vax: File deleted.
927 Fri Feb  6 14:34:19 1998  Douglas Rupp <rupp@gnat.com>
929         * gcc.c (process_command, case "-dumpversion"): Print spec_version.
931 Fri Feb  6 11:01:13 1998  Josh Littlefield  <josh@american.com>
933         * i386/gmon-sol2.c (internal_mcount): Do set-up when program starts
934         and install hook to do clean-up when it exits.
935         * i386/sol2-c1.asm (_mcount): Make a weak instead of global symbol.
936         * i386/sol2dbg.h (ASM_SPEC): Support Solaris bundled assembler's -V
937         argument; pass -s argument to assembler.
938         
939 Fri Feb  6 09:13:21 1998  Jim Wilson  (wilson@cygnus.com)
941         * function.c (assign_parms): New variable named_arg, with value
942         depending on STRICT_ARGUMENT_NAMING.  Use instead of ! last_named.
944         * crtstuff.c (__frame_dummy): New function for irix6.
945         (__do_global_ctors): Call __frame_dummy for irix6.
946         * mips/iris6.h (LINK_SPEC): Hide __frame_dummy too.
948 Fri Feb  6 09:08:21 1998  Mike Stump  <mrs@wrs.com>
950         * rtlanal.c (dead_or_set_regno_p): Ignore REG_DEAD notes after reload.
951         * genattrtab.c (reload_completed): Define.
953         * configure.in (i960-wrs-vxworks): Same as i960-wrs-vxworks5*.
955 Fri Feb  6 08:47:38 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
957         * Makefile.in (diff): Add INSTALL, configure, and config.in;
958         remove objc-*.
959         * objc/config-lang.in (diff_excludes): Add objc-parse.[cy].
961         * i386/xm-mingw32.h (link): Delete macro.
963         * alpha.c (output_prolog): Write out frame sizes as longs and
964         print too large sizes as zero.
966         * function.c (combine_temp_slots): No need to allocate and free rtx.
967         Don't do anything if too many slots in the list.
968         (put_var_into_stack): Don't use ADDRESSOF if not optimizing.
970         * function.c (purge_addressof_1): Force into mem if VOLATILE reference.
972         * calls.c (expand_call): Show VAR_DECL made for structure return
973         address is used; remove bogus set of MEM_IN_STRUCT_P.
974         * expr.c (expand_expr, case SAVE_EXPR, case TARGET_EXPR): Show used.
975         (expand_builtin, case BUILT_IN_LONGJMP): Show __dummy used.
976         * function.c (put_reg_into_stack): New arg USED_P; all callers changed.
978         * expr.c (expand_expr, case SAVE_EXPR): assign_temp with KEEP of 3.
979         * function.c (var_temp_slot_level): New variable.
980         (push_function_context_to, pop_function_context_from): Save/restore
981         it and target_temp_slot_level.
982         (assign_stack_temp): Implement KEEP of 3.
983         (push_temp_slots_for_block): New function.
984         (init_temp_slots): Initialize var_temp_slot_level.
985         * function.h (struct function, fields {var,target}_temp_slot_level):
986         New fields.
987         * stmt.c (expand_start_bindings): Call push_temp_slots_for_block.
989         * function.c (struct temp_slot): SIZE, BASE_OFF_SET, and FULL_SIZE
990         now HOST_WIDE_INT.
991         (assign_{,outer_}stack_local, assign_{,stack_}temp): Size arg is
992         now HOST_WIDE_INT.
993         (assign_stack_temp): Do size computations in HOST_WIDE_INT.
994         (fixup_var_refs_1, optimize_bit_field, instantiate_decls): Likewise.
995         (instantiate_virtual_regs_1, fix_lexical_address): Likewise.
996         * rtl.h (assign_stack_{local,temp}): Size arg is HOST_WIDE_INT.
997         (assign_temp): Likewise.
998         * expr.h (struct args_size): Field CONSTANT is now HOST_WIDE_INT.
1000         * sched.c (attach_deaths, case REG): Don't check for REG_UNUSED.
1001         (attach_deaths, case SUBREG, STRICT_LOW_PART, {ZERO,SIGN}_EXTRACT):
1002         Don't pass set_p of 1 if partial assignment.
1004         * tree.h (size_in_bytes): Returns HOST_WIDE_INT.
1005         * tree.c (size_in_bytes): Likewise.
1006         Tighen up logic some to avoid returning a bogus value instead of -1.
1008         * expr.c (get_inner_reference, case ARRAY_EXPR): Make WITH_RECORD_EXPR
1009         just for index.
1010         (expand_expr, case PLACEHOLDER_EXPR): Refine search again; look
1011         at each expression and look for pointer to type.
1013         * expr.c (safe_from_p, case ADDR_EXPR): If TREE_STATIC, no trampoline.
1014         (expand_expr, case ADDR_EXPR): Likewise.
1016         * expr.c (emit_block_move): Use conservative range for movstr mode.
1018         * configure.in: See if "cp -p" works if "ln -s" doesn't; else "cp".
1020         * combine.c (try_combine.c): Pass elim_i2 and elim_i1 to
1021         distribute_notes for i3dest_killed REG_DEAD note.
1023         * configure.in (mips-dec-netbsd*): Remove bogus setting of prefix.
1025         * c-decl.c (duplicate_decls): Set DECL_IGNORED_P in newdecl if
1026         different bindings levels.
1028         * configure.in: Test ln -s by symlinking gcc.c.
1030         * configure.in (i[3456]86-dg-dgux): Add wildcard for version.
1032         * crtstuff.c (__do_global_ctors_aux): Switch back to text section
1033         in proper place.
1035         * rtlanal.c (rtx_varies_p, case REG): pic_offset_table_rtx is fixed.
1036         * genattrtab.c (pic_offset_table_rtx): Define (dummy).
1037         * cse.c (set_nonvarying_address_components): Understand PIC refs.
1039         * loop.c (strength_reduce): When placing increment for auto-inc
1040         case, do comparison in loop order.
1042         * i860.c (output_delayed_branch): Add missing arg to recog.
1043         (output_delay_insn): Add missing arg to constrain_operands.
1045         * configure.in: Truncate target after finished comparing it with host.
1047         * i386.h (MAX_FIXED_MODE_SIZE): Delete.
1049         * c-parse.in (expr_no_comma): Clarify undefined error.
1051         * prefix.c (get_key_value): Don't default to PREFIX here.
1052         (translate_name): Remove bogus addition of "$" if getenv fails;
1053         clean up application of default value of PREFIX.
1055         * fold-const.c (fold_convert): Call force_fit_type even if input
1056         already overflows.
1058 Fri Feb  6 07:45:01 1998  Robert Hoehne <robert.hoehne@gmx.net>
1060         * i386/xm-go32.h (HAVE_{BCOPY,BZERO,BCMP,RINDEX,INDEX}): Define.
1062         * gcc.c (main): Treat paths starting with '$' or DOS drives
1063         as absolute in standard_startfile_prefix.
1065 Thu Feb  5 21:07:12 1998  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1067         * cpplib.c (IS_INCLUDE_DIRECTIVE_TYPE): Add casts from enum to int.
1068         * cccp.c (IS_INCLUDE_DIRECTIVE_TYPE, handle_directive): Likewise.
1070 Thu Feb  5 19:00:44 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1072         * expr.c (expand_expr, case CONSTRUCTOR): Correct shift count
1073         when making signed bit field; use EXPAND_NORMAL, not 0.
1075 Thu Feb  5 17:42:43 1998  Manfred Hollstein  <manfred@s-direktnet.de>
1077         * libgcc2.c (__clear_insn_cache): On sysV68 enable the memctl
1078         stuff only if MCT_TEXT is #define'd.
1080 Thu Feb  5 17:32:01 1998  Robert Hoehne  <robert.hoehne@gmx.net>
1082         * Makefile.in: Changed most stamp-* to s-*.
1084 Tue Feb  3 19:45:50 1998  James Hawtin <oolon@ankh.org>
1086         * i386/sol2.h (STARTFILE_SPEC, LIB_SPEC): Update -pg files.
1087         * configure.in (i[3456]86-*-solaris2*): Add gcrt1.o and gmon.o
1088         to extra_parts.
1090 Tue Feb  3 17:28:48 1998  Christopher C Chimelis <chris@classnet.med.miami.edu>
1092         * configure.in (alpha*-*-linux-gnu*): Add extra_parts for crtstuff.
1094 Tue Feb  3 17:18:19 1998  Richard Earnshaw  <rearnsha@arm.com>
1096         * arm.c (find_barrier): Fix one-too-many bug if fail to find barrier.
1098         * arm.c (arm_reload_in_hi): Handle cases where the MEM is too 
1099         complex for a simple offset.
1101 Tue Feb  3 16:14:21 1998  Robert Hoehne  <robert.hoehne@gmx.net>
1103         * i386/xm-go32.h (EXECUTABLE_SUFFIX): Define.
1105         * configure.in (i[3456]86-pc-msdosdjgpp*): New entry.
1107 Tue Feb  3 07:33:58 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1109         * explow.c (probe_stack_range): Properly check for small
1110         number of probes.
1112         * gcc.c (process_command, case 'V'): Validate arg.
1114         * configure.in (sbrk): Add check for needed declaration.
1115         * acconfig.h (NEED_DECLARATION_SBRK): New entry.
1116         * toplev.c (sbrk): Update declaration conditional.
1117         * mips-tfile.c (sbrk, free): Likewise.
1119         * sparc/sysv4.h (DBX_REGISTER_NUMBER): Remove abort.
1121         * mips.c (mips_expand_prologue): Pass reg 25 to gen_loadgp.
1122         * mips.md (loadgp): Add second operand for register number to add.
1123         (builtin_setjmp_receiver): Pass new label and reg 31 to loadgp.
1125         * toplev.c: Include insn-codes.h, insn-config.h, and recog.h.
1126         (compile_file): Try to emit nop to separate gcc_compiled symbol.
1127         * Makefile.in (toplev.o): Depends on insn-{codes,config}.h, recog.h.
1129 Tue Feb  3 06:58:46 1998  Mark Mitchell  <mmitchell@usa.net>
1131         * integrate.c (get_label_from_map): New function.
1132         (expand_inline_function): Use it.
1133         Initialize label_map to NULL_RTX instead of gen_label_rtx.
1134         (copy_rtx_and_substitute): Use get_label_from_map.
1135         * integrate.h (get_label_from_map): New function.
1136         (set_label_from_map): New macro.
1137         * unroll.c (unroll_loop, copy_loop_body): Use them.
1138         
1139 Mon Feb  2 16:33:01 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1141         * i386.md (mov{si,hi,sf,df,xf}cc{,_1}): Remove cases with branches.
1143         * rs6000/x-aix31 (INSTALL): Deleted.
1144         * mips/x-dec-osf1, mips/x-osfrose, i386/x-osfrose: Likewise.
1145         * arm/x-riscix: Likewise.
1147         * c-typeck.c (signed_or_unsigned_type): Properly handle pointer types.
1149 Mon Feb  2 15:33:58 1998  Michael P. Hayes  <michaelh@ongaonga.chch.cri.nz>
1151         * unroll.c (copy_loop_body):  Use single_set instead of
1152         PATTERN to detect increment of an iv inside a PARALLEL.
1154 Fri Jan 16 20:29:50 1998  Paul Eggert  <eggert@twinsun.com>
1156         * toplev.c (<unistd.h>): New include.
1157         (get_run_time): Prefer CLK_TCK (if available) to HZ, and
1158         prefer sysconf (_SC_CLK_TCK) (if available) to CLK_TCK.
1159         * configure.in (sysconf): Call AC_CHECK_FUNCS.
1161 Wed Jan 14 20:10:51 1998  Paul Eggert  <eggert@twinsun.com>
1163         * cccp.c: (rescan): Don't report line 0 as the possible real start
1164         of an unterminated string constant.
1165         Don't mishandle backslash-newlines that in are the output of
1166         a macro expansion.  Properly skip // style comments between a function
1167         macro name and '(', as well as backslash-newlines in comments there.
1168         (handle_directive): Handle / \ newline * between # and directive name.
1169         In #include directives, \ does not escape ".
1170         (do_include): For `#include "file', do not bother expanding into temp
1171         buffer.  When error encountered when expanding, do not try result.
1172         (skip_if_group): When skipping an include directive, use include
1173         tokenization, not normal tokenization.  Backslash-newline is still
1174         special when skipping.  Handle * \ newline / correctly in comments
1175         when skipping.
1176         (skip_quoted_string): After \ newline, set *backslash_newlines_p
1177         even if count_newlines is 0.
1178         (macroexpand): Newline space is not a special marker inside a string.
1179         (macroexpand, macarg): Do not generate \ddd for control characters
1180         when stringifying; the C Standard does not allow this.
1181         (macarg1): New arg MACRO.  All callers changed.
1182         Do not treat /*, //, or backslash-newline specially when processing
1183         the output of a macro.
1184         (discard_comments): Don't go past limit if looking for end of comment.
1185         Discard backslash-newline properly when discarding comments.
1186         (change_newlines): \" does not end a string.
1187         (make_definition): Do not treat backslash-newline specially, as it
1188         has already been removed before we get here.
1189         
1190         * profile.c (output_func_start_profiler): Don't fflush output
1191         if -quiet.
1192         * toplev.c (rest_of_compilation): Likewise.
1194         * i386/x-sco5 (CC): Remove trailing white space.
1195         * x-convex (CCLIBFLAGS): Likewise.
1196         * arm/t-semi (LIBGCC2_CFLAGS): Likewise.
1198 Wed Jan  7 18:02:42 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1200         * Version 2.8.0 released.
1202 Wed Jan  7 17:54:41 1998  J. Kean Johnston  <jkj@sco.com>
1204         * i386/sco5.h ({END,START}FILE_SPEC): Link with correct crtbegin.o
1205         and crtend.o when using -static.
1207 Wed Jan  7 17:49:14 1998  Jan Christiaan van Winkel <Jan.Christiaan.van.Winkel@ATComputing.nl>
1209         * cppexp.c (gansidecl.h): Include.
1211 Wed Jan  7 17:45:07 1998  Tristan Gingold  <gingold@puccini.enst.fr>
1213         * expr.c (get_push_address): Use copy_to_reg instead of force_operand.
1214         (emit_push_insn): Avoid null pointer deference if aggregate has no
1215         types.
1216         (expand_expr): Avoid finite but useless recursion.
1217         (expand_builtin): Fix typo in calling function.
1218         * function.c (assign_parms): Avoid useless call to chkr_set_right.
1220 Wed Jan  7 17:31:13 1998  Christian Iseli  <Christian.Iseli@lslsun.epfl.ch>
1222         * combine.c (force_to_mode): Return if operand is a CLOBBER.
1224 Wed Jan  7 17:23:24 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1226         * x-rs6000 (INSTALL): Remove.
1228         * jump.c (jump_optimize): Don't use a hard reg as an operand
1229         of a conditional move if small register classes.
1231 Wed Jan  7 17:09:28 1998  Jim Wilson  <wilson@cygnus.com>
1233         * cse.c (max_insn_uid): New variable.
1234         (cse_around_loop): Use it.
1235         (cse_main): Set it.
1237 See ChangeLog.11 for earlier changes.
1239 Use a consistent time stamp format in ChangeLog entries.
1240 Not everyone has Emacs 20 yet, so stick with Emacs 19 format for now.
1242 Local Variables:
1243 add-log-time-format: current-time-string
1244 End: