xref: /netbsd-src/external/gpl3/gcc.old/dist/gcc/FSFChangeLog (revision 1debfc3d3fad8af6f31804271c18e67f77b4d718)
1*1debfc3dSmrgSat Jan  9 08:19:14 1999  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2*1debfc3dSmrg
3*1debfc3dSmrg	* toplev.c (rest_of_compilation): Set cse_not_expected earlier.
4*1debfc3dSmrg
5*1debfc3dSmrg	* optabs.c (emit_conditional_move): Undo canonicalization previously
6*1debfc3dSmrg	done by get_condition.
7*1debfc3dSmrg
8*1debfc3dSmrg	* jump.c (jump_optimize): Move simple optimizations in front
9*1debfc3dSmrg	of complex ones.
10*1debfc3dSmrg	Reset NEXT whenever deleting an insn in case NEXT was deleted.
11*1debfc3dSmrg	Disable some conditional move optimizations if have
12*1debfc3dSmrg	conditional arithmetic or if CSE not run yet.
13*1debfc3dSmrg	Add new optimization to conditionalize code if have conditional
14*1debfc3dSmrg	arithmetic.
15*1debfc3dSmrg	(can_reverse_comparison_p): Check REVERSIBLE_CC_MODE.
16*1debfc3dSmrg	(condjump{,_in_parallel}_p): Simplify.
17*1debfc3dSmrg
18*1debfc3dSmrgThu Jan  7 09:25:51 1999  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
19*1debfc3dSmrg
20*1debfc3dSmrg	* jump.c (delete_computation): Don't trust location of REG_DEAD
21*1debfc3dSmrg	note within a basic block.
22*1debfc3dSmrg
23*1debfc3dSmrgSat Dec 26 06:31:43 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
24*1debfc3dSmrg
25*1debfc3dSmrg	* cse.c (cse_insn): Always make SET a nop if dest is hard regster and
26*1debfc3dSmrg	src is equivalent.
27*1debfc3dSmrg
28*1debfc3dSmrg	* flow.c (print_rtl_with_bb): Write insns in epilogue delay list.
29*1debfc3dSmrg
30*1debfc3dSmrg	* combine.c (simplify_set): Update SET_SRC after force_to_mode call.
31*1debfc3dSmrg	If HAVE_conditional_arithmetic, make conditional if comparison
32*1debfc3dSmrg	operator is arg of arithmetic.
33*1debfc3dSmrg
34*1debfc3dSmrg	* genconfig.c (have_cond_arith_flag): New variable.
35*1debfc3dSmrg	(walk_insn_part, case IF_THEN_ELSE): Set it.
36*1debfc3dSmrg	(main): Define HAVE_conditional_arithmetic if have_cond_arith_flag.
37*1debfc3dSmrg
38*1debfc3dSmrg	* reorg.c (optimize_skip): Count insns in delay slots for epilogue
39*1debfc3dSmrg	as being after a conditional return.
40*1debfc3dSmrg
41*1debfc3dSmrgWed Dec 23 07:30:22 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
42*1debfc3dSmrg
43*1debfc3dSmrg	* mips.md (movdf [mips4]): Remove '=' in constraint when not output.
44*1debfc3dSmrg
45*1debfc3dSmrg	* toplev.c (fatal_function): New static variable.
46*1debfc3dSmrg	(set_fatal_function): New function.
47*1debfc3dSmrg	(vfatal): If fatal_function nonzero, call it.
48*1debfc3dSmrg
49*1debfc3dSmrgThu Dec 10 07:21:44 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
50*1debfc3dSmrg
51*1debfc3dSmrg	* expr.c (move_by_pieces_1): Give inner arg types of function passed
52*1debfc3dSmrg	as first operand.
53*1debfc3dSmrg
54*1debfc3dSmrg	* aclocal.m4 (GCC_HEADER_INTTYPES, GCC_CHECK_STRINGIFY): New macros.
55*1debfc3dSmrg	* configure.in: Use them instead of inline text.
56*1debfc3dSmrg	(malloc.h): Check for presence.
57*1debfc3dSmrg	(free, malloc, calloc, realloc): Include malloc.h to see if need decl.
58*1debfc3dSmrg	* system.h (malloc.h): Conditionally include.
59*1debfc3dSmrg	(free, malloc, calloc, realloc): Conditionally declare.
60*1debfc3dSmrg	* xm-mn10200.h (free, malloc, realloc, calloc): Remove redundant decls.
61*1debfc3dSmrg	* xm-mn10300.h, rs6000/xm-sysv4.h, xm-v850.h: Likewise.
62*1debfc3dSmrg	* xm-alpha.h: Likewise.
63*1debfc3dSmrg	(string.h): Remove reundant #include.
64*1debfc3dSmrg	* rtl.h (free): Remove declaration.
65*1debfc3dSmrg	* tree.h (free): Likewise.
66*1debfc3dSmrg
67*1debfc3dSmrg	* gcov.c (fatal): New function.
68*1debfc3dSmrg
69*1debfc3dSmrgWed Dec  9 06:25:12 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
70*1debfc3dSmrg
71*1debfc3dSmrg	* protoize.c: Remove extraneous #endif.
72*1debfc3dSmrg	Remove redundant declarations and includes.
73*1debfc3dSmrg	(fatal): New function, from gen*.c.
74*1debfc3dSmrg
75*1debfc3dSmrgWed Dec  9 06:16:26 1998  Craig Burley  (burley@gnu.ai.mit.edu)
76*1debfc3dSmrg
77*1debfc3dSmrg	* fold-const.c (multiple_of_p): New function.
78*1debfc3dSmrg	(fold): Turn some cases of *_DIV_EXPR into EXACT_DIV_EXPR.
79*1debfc3dSmrg
80*1debfc3dSmrgWed Dec  9 04:42:23 1998  H.J. Lu  (hjl@gnu.ai.mit.edu)
81*1debfc3dSmrg
82*1debfc3dSmrg	* expr.h, real.h: Add more prototypes.
83*1debfc3dSmrg
84*1debfc3dSmrgTue Dec  8 06:04:19 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
85*1debfc3dSmrg
86*1debfc3dSmrg	* c-typeck.c (c_expand_asm_operands): Fix text of error message
87*1debfc3dSmrg	and handle conversion as lvalue.
88*1debfc3dSmrg
89*1debfc3dSmrgMon Dec  7 21:35:31 1998  Paul Eggert  <eggert@twinsun.com>
90*1debfc3dSmrg
91*1debfc3dSmrg	* dwarf2out.c (dyn-string.h): Fix patching error.
92*1debfc3dSmrg	* toplev.c (<sys/times.h>): Include if HAVE_SYS_TIMES_H is defined.
93*1debfc3dSmrg
94*1debfc3dSmrgSun Dec  6 01:14:46 1998  Paul Eggert  <eggert@twinsun.com>
95*1debfc3dSmrg
96*1debfc3dSmrg	* collect2.c (mktemp): Remove unused decl.
97*1debfc3dSmrg
98*1debfc3dSmrgSat Dec  5 21:02:13 1998  Paul Eggert  <eggert@twinsun.com>
99*1debfc3dSmrg
100*1debfc3dSmrg	* cccp.c (fwrite): New VMS macro.
101*1debfc3dSmrg	(VMS_fwrite): New VMS function.
102*1debfc3dSmrg	(strerror): Declare only if NEED_DECLARATION_STRERROR.
103*1debfc3dSmrg	(warn_white_space): New var.
104*1debfc3dSmrg	(do_warning): Remove.
105*1debfc3dSmrg	(directive_table): Use do_error to print warnings.
106*1debfc3dSmrg	(eprint_string): Remove.  All callers now use fwrite instead.
107*1debfc3dSmrg	(check_white_space): New function.
108*1debfc3dSmrg	(fatal): Now extern.
109*1debfc3dSmrg	(main): Add new option --White-space, implied by -Wall.
110*1debfc3dSmrg	If DEPENDENCIES_OUTPUT has the form `FILE TARGET', have TARGET depend
111*1debfc3dSmrg	on source file as well as files it includes.
112*1debfc3dSmrg	(newline_fix, name_newline_fix): Assume that *BP == '\\',
113*1debfc3dSmrg	but don't assume that BP[1] == '\n'; all callers changed.
114*1debfc3dSmrg	(rescan): Warn about white space at end of line in string.
115*1debfc3dSmrg	Fix bug with counting newlines in strings as result of macro-expanding.
116*1debfc3dSmrg	(expand_to_temp_buffer): Do not stomp on the output buffer length;
117*1debfc3dSmrg	all callers changed.
118*1debfc3dSmrg	(handle_directive): No need to check bp < limit if *bp == '\n'.
119*1debfc3dSmrg	Allocate a larger directive buffer; expand newline to
120*1debfc3dSmrg	backslash-'n' in string literals.
121*1debfc3dSmrg	(timestamp): Don't assume that localtime succeeds.
122*1debfc3dSmrg	(finclude): Add call to check_white_space in included file.
123*1debfc3dSmrg	(collect_expansion): No need to check for p < limit at backslash.
124*1debfc3dSmrg	(do_line): Allow nulls in file name.
125*1debfc3dSmrg	(do_error): Also do warnings.
126*1debfc3dSmrg	(do_pragma): Handle escapes in strings correctly.
127*1debfc3dSmrg	(skip_quoted_string): Don't say ``Unterminated string or character''
128*1debfc3dSmrg	if it's known to be a character.
129*1debfc3dSmrg	Warn about white space at end of line in string.
130*1debfc3dSmrg	(struct argdata): New member expand_size.
131*1debfc3dSmrg	Rename member stringified_length to stringified_length_bound.
132*1debfc3dSmrg	All uses changed.
133*1debfc3dSmrg	(macroexpand): Record expand_size separately from expand_length.
134*1debfc3dSmrg	Generate nothing for backslash-newline in a string.
135*1debfc3dSmrg	Escape newlines in strings.
136*1debfc3dSmrg	(macarg): Have macarg1 count newlines.  Escape newlines in strings.
137*1debfc3dSmrg	(macarg1): Skip backslash-newline in strings.
138*1debfc3dSmrg	(change_newlines): Now takes struct argdata * (not U_CHAR * and int)
139*1debfc3dSmrg	returns void, not int.  Modify the arg in-place.
140*1debfc3dSmrg	(change_newlines, make_definition): In strings, replace
141*1debfc3dSmrg	backslash-newline with nothing, and non-backslashed newline
142*1debfc3dSmrg	with backslash-'n'.
143*1debfc3dSmrg
144*1debfc3dSmrg	* cexp.y (fatal): New decl (exported by cccp.c).
145*1debfc3dSmrg	(yylex): Allow multiple-char constants like 'abcde' that are longer
146*1debfc3dSmrg	than long; draft C9x requires this.  Don't treat (char)-1 like EOF.
147*1debfc3dSmrg	(parse_escape): Return -2 if backslash-newline is seen.
148*1debfc3dSmrg	Parse backslash-newline in numeric escapes.
149*1debfc3dSmrg	Parse \x using unsigned, not signed, for proper overflow detection.
150*1debfc3dSmrg
151*1debfc3dSmrgFri Dec  4 16:24:36 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
152*1debfc3dSmrg
153*1debfc3dSmrg	* Defer some __builtin_constant_p elaborations until after cse;
154*1debfc3dSmrg	original idea from rth@cygnus.com
155*1debfc3dSmrg	* rtl.def (CONSTANT_P_RTX): New RTL code.
156*1debfc3dSmrg	* expr.c (expand_builtin, case BUILT_IN_CONSTANT_P): Rework to
157*1debfc3dSmrg	consider constant CONSTRUCTOR constant and to defer some cases to cse.
158*1debfc3dSmrg	* cse.c (fold_rtx, case CONST): Add handling for CONSTANT_P_RTX.
159*1debfc3dSmrg	* regclass.c (reg_scan_mark_refs, case CONST): Likewise.
160*1debfc3dSmrg
161*1debfc3dSmrgTue Dec  1 09:35:45 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
162*1debfc3dSmrg
163*1debfc3dSmrg	* Makefile.in (C_AND_OBJC_OBJS): Add mbchar.o.
164*1debfc3dSmrg	(c-lex.o, cexp.o, cccp.o): Depend on mbchar.h.
165*1debfc3dSmrg	(mbchar.o): New rule.
166*1debfc3dSmrg	(CCCP_OBJS, CPPMAIN_OBJS): Include mbchar.o.
167*1debfc3dSmrg	* po/POTFILES.in (mbchar.[ch]): Add.
168*1debfc3dSmrg
169*1debfc3dSmrgTue Dec  1 09:32:27 1998  Dave Brolley  <brolley@cygnus.com>
170*1debfc3dSmrg
171*1debfc3dSmrg	* mbchar.[ch]: New files for multibyte character handling.
172*1debfc3dSmrg	* configure.in (enable_c_mbchar): New configure option.
173*1debfc3dSmrg	* cexp.y (mbchar.h): #include it.
174*1debfc3dSmrg	(yylex): Handle Multibyte characters in character literals.
175*1debfc3dSmrg	* cccp.c (mbchar.h): #include it.
176*1debfc3dSmrg	(main): Set character set based on LANG environment variable.
177*1debfc3dSmrg	(rescan): Handle multibyte characters in comments.
178*1debfc3dSmrg	(skip_if_group, validate_else, skip_to_end_of_comment): Likewise.
179*1debfc3dSmrg	(macarg1, discard_comments): Likewise.
180*1debfc3dSmrg	(rescan): Handle multibyte characters in string and character literals.
181*1debfc3dSmrg	(collect_expansion, skip_quoted_string, macroexpand): Likewise.
182*1debfc3dSmrg	(macarg1, discard_comments, change_newlines): Likewise.
183*1debfc3dSmrg	* c-lex.c (mbchar.h): #include it.
184*1debfc3dSmrg	(GET_ENVIRONMENT): New macro.
185*1debfc3dSmrg	(init_lex): Set character set based on LANG environment variable.
186*1debfc3dSmrg	(yylex): Handle multibyte characters in character and string literals.
187*1debfc3dSmrg
188*1debfc3dSmrgMon Nov 30 08:25:35 1998  Mark Mitchell  <mark@markmitchell.com>
189*1debfc3dSmrg
190*1debfc3dSmrg	* dyn-string.h: New file.
191*1debfc3dSmrg	* dyn-string.c: Likewise.
192*1debfc3dSmrg	* Makefile.in (OBJS): Add dyn-string.o.
193*1debfc3dSmrg	(dwarf2out.o): Add dyn-string.h dependency.
194*1debfc3dSmrg	(dyn-string.o): New rule.
195*1debfc3dSmrg	* dwarf2out.c (dyn-string.h): Include.
196*1debfc3dSmrg	(ASM_NAME_TO_STRING): Use dyn_string_append, rather than strcpy.
197*1debfc3dSmrg	(addr_const_to_string): Take a dyn_string_t, not a char * as a
198*1debfc3dSmrg	prototype.  Use dyn_string_append rather than strcat, throughout.
199*1debfc3dSmrg	(addr_to_string): Use dyn_string_t.
200*1debfc3dSmrg
201*1debfc3dSmrgMon Nov 30 06:57:49 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
202*1debfc3dSmrg
203*1debfc3dSmrg	* po/POTFILES.in (dyn-string.[ch]): New files.
204*1debfc3dSmrg
205*1debfc3dSmrg	* sched.c (swap_sort): Fix typo in last change.
206*1debfc3dSmrg
207*1debfc3dSmrgSun Nov 29 21:02:34 1998  Paul Eggert  <eggert@twinsun.com>
208*1debfc3dSmrg
209*1debfc3dSmrg	* po/POTFILES.in: Add gengenrtl.c, system.h.
210*1debfc3dSmrg
211*1debfc3dSmrgSun Nov 29 16:36:59 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
212*1debfc3dSmrg
213*1debfc3dSmrg	* expmed.c (emit_store_flag): Don't try to negate STORE_FLAG_VALUE.
214*1debfc3dSmrg
215*1debfc3dSmrg	* configure.in: Remove inadvertently added duplicate tests.
216*1debfc3dSmrg
217*1debfc3dSmrg	* reload1.c (emit_reload_insns): Fix typos in preserve death note code.
218*1debfc3dSmrg
219*1debfc3dSmrg	* Makefile.in (c-lex.o): Depends on $(RTL_H).
220*1debfc3dSmrg
221*1debfc3dSmrg	* genattr.c (fatal): No longer static.
222*1debfc3dSmrg	* genattrtab.c, gencodes.c, genconfig.c, genemit.c: Likewise.
223*1debfc3dSmrg	* genextract.c, genflags.c, gengenrtl.c, genopinit.c: Likewise.
224*1debfc3dSmrg	* genoutput.c, genpeep.c, genrecog.c: Likewise.
225*1debfc3dSmrg
226*1debfc3dSmrg	* 1750a.c: Use gen_rtx_FOO and GEN_INT, not gen_rtx; include system.h.
227*1debfc3dSmrg	* a29k.c, alpha.c, arc.c, arm.c, clipper.c, convex.c: Likewise.
228*1debfc3dSmrg	* dsp16xx.c, fx80.c, gmicro.c, h8300.c, i386.c, i860.c: Likewise.
229*1debfc3dSmrg	* i960.c, m32r.c, m68k.c, m88k.c, mips.c, mn10200.c: Likewise.
230*1debfc3dSmrg	* mn10300.c, ns32k.c, pa.c, pdp11.c, pyr.c, romp.c: Likewise.
231*1debfc3dSmrg	* rs6000.c, sh.c, sparc.c, spur.c, tahoe.c, v850.c: Likewise.
232*1debfc3dSmrg	* vax.c, we32k.c: Likewise.
233*1debfc3dSmrg	* elxsi.c, i370.c: Include system.h
234*1debfc3dSmrg	* gofast.h: Use gen_rtx_FOO and GEN_INT instead of gen_rtx.
235*1debfc3dSmrg	* 1750a.{md,h}, a29k{md,h}, alpha.{md,h}, alpha/vms.h: Likewise.
236*1debfc3dSmrg	* arc.{md,h}, arm.{md,h}, clipper.{md,h}, convex.{md,h}: Likewise.
237*1debfc3dSmrg	* dsp16xx.{md,h}, elxsi.h, fx80.{md,h}, gmicro.{md,h}: Likewise.
238*1debfc3dSmrg	* h8300.h, i370.{md,h}, i386.{md,h}, i386/cygwin32.h: Likewise.
239*1debfc3dSmrg	* i386/osfrose.h, i386/win-nt.h, i860.{md,h}, i960.{md,h}: Likewise.
240*1debfc3dSmrg	* m32r.{md,h}, m68k.{md,h}, m68k/a-ux.h, m68k/crds.h: Likewise.
241*1debfc3dSmrg	* m68k/isi.h, m68k/linux.h, m68k/lynx.h, m68k/m68kemb.h: Likewise.
242*1debfc3dSmrg	* m68k/m68kv4.h, m68k/mot3300.h, m68k/news.h, m68k/sun3.h: Likewise.
243*1debfc3dSmrg	* m88k.{md,h}, mips.{md,h}, mips/abi64.h, mn10200.{md,h}: Likewise.
244*1debfc3dSmrg	* mn10300.{md,h}, ns32k.{md,h}, pa.{md,h}, pyr.{md,h}: Likewise.
245*1debfc3dSmrg	* romp.{md,h}, rs6000.{md,h}, sh.{md,h}, sparc.{md.h}: Likewise.
246*1debfc3dSmrg	* spur{md,h}, tahoe.{md,h}, v850.{md,h}, vax.{md,h}: Likewise.
247*1debfc3dSmrg	* we32k.{md,h}: Likewise.
248*1debfc3dSmrg
249*1debfc3dSmrgSat Nov 28 19:32:33 1998  Jeffrey A Law  (law@cygnus.com)
250*1debfc3dSmrg
251*1debfc3dSmrg	* rtl.def (INLINE_HEADER): Fix type error found by gen_rtx_FOO changes.
252*1debfc3dSmrg
253*1debfc3dSmrg        * configure.in: If host != build, run autoconf to generate auto
254*1debfc3dSmrg	build.h for the build machine and include it in build_xm_files.
255*1debfc3dSmrg
256*1debfc3dSmrgSat Nov 28 19:20:06 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
257*1debfc3dSmrg
258*1debfc3dSmrg	* bc-emit.c, caller-save.c, calls.c, combine.c: Call gen_rtx_FOO.
259*1debfc3dSmrg	* cse.c, dwarf2out.c, emit-rtl.c, except.c, explow.c: Likewise.
260*1debfc3dSmrg	* expmed.c expr.c, final.c, function.c, genpeep.c, halfpic.c: Likewise.
261*1debfc3dSmrg	* integrate.c, jump.c, local-alloc.c, loop.c, optabs.c: Likewise.
262*1debfc3dSmrg	* profile.c, recog.c, reg-stack.c, regclass.c, regmove.c: Likewise.
263*1debfc3dSmrg	* reload.c, reload1.c, reorg.c, sched.c, stmt.c, stupid.c: Likewise.
264*1debfc3dSmrg	* unroll.c, varasm.c: Likewise.
265*1debfc3dSmrg
266*1debfc3dSmrg	* Makefile.in (*.o): Depend on system.h.
267*1debfc3dSmrg	* system.h (ANSI_PROTOTYPES): Add definition.
268*1debfc3dSmrg	* *.c, c-parse.in, cexp.y: Include system.h and delete any
269*1debfc3dSmrg	non-redundant includes, macro definitions, or declarations.
270*1debfc3dSmrg	* gen*.c, bc-emit.c, calls.c, cccp.c, combine.c, emit-rtl.c:
271*1debfc3dSmrg	Use ANSI_PROTOTYPES, not __STDC__ to select varargs vs. stdargs.
272*1debfc3dSmrg	* gcc.c, mips-tfile.c, prefix.c, toplev.c, tree.c: Likewise.
273*1debfc3dSmrg	* gen*.c (fatal): Fix error in varargs case.
274*1debfc3dSmrg	* genattrtab.c (fatal): Make same as other gen programs.
275*1debfc3dSmrg	* genattrtab.c: Write #include for system.h in output.
276*1debfc3dSmrg	* genemit.c, genextract.c, genoutput.c, genpeep.c: Likewise.
277*1debfc3dSmrg	* genrecog.c: Likewise.
278*1debfc3dSmrg
279*1debfc3dSmrgSat Nov 28 06:01:525 1998  John F. Carr  <jfc@mit.edu>
280*1debfc3dSmrg
281*1debfc3dSmrg	* emit-rtl.c (const_int_rtx): Now array of rtx_def, not rtx.
282*1debfc3dSmrg
283*1debfc3dSmrgSat Nov 28 05:53:45 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
284*1debfc3dSmrg
285*1debfc3dSmrg	* rtl.h (obstack_alloc_rtx): New declaration.
286*1debfc3dSmrg	* rtl.c (rtx_alloc): Try to clear as integer or HOST_WIDE_INT indirect.
287*1debfc3dSmrg	(obstack_alloc_rtx): New function.
288*1debfc3dSmrg
289*1debfc3dSmrgSat Nov 28 05:46:41 1998  Richard Henderson  <rth@cygnus.com>
290*1debfc3dSmrg
291*1debfc3dSmrg	* gengenrtl.c: New file.
292*1debfc3dSmrg	* Makefile.in (OBJS): Add genrtl.c.
293*1debfc3dSmrg	(GEN): Add gengenrtl.
294*1debfc3dSmrg	(STAGESTUFF): Add s-genrtl and gengenrtl$(exeext);
295*1debfc3dSmrg	(RTL_BASE_H): New, from RTL_H.
296*1debfc3dSmrg	(RTL_H): Contains RTL_BASE_H and genrtl.h
297*1debfc3dSmrg	(genrtl.o, genrtl.c, s-genrtl, gengenrtl): New rules.
298*1debfc3dSmrg	* emit-rtl.c (gen_rtx_{CONST_INT,REG,MEM}): New functions.
299*1debfc3dSmrg	(gen_rtx): Call them.
300*1debfc3dSmrg	* genemit.c (gen_exp, gen_insn): Call gen_rtx_FOO for constant FOO.
301*1debfc3dSmrg	* rtl.h (genrtl.h): Include ifndef NO_GENRTL_H.
302*1debfc3dSmrg	(gen_rtx_{CONST_INT,REG,MEM}): New declarations.
303*1debfc3dSmrg	(GEN_INT): Call gen_rtx_CONST_INT.
304*1debfc3dSmrg
305*1debfc3dSmrgFri Nov 27 20:16:12 1998  Michael Meissner  <meissner@cygnus.com>
306*1debfc3dSmrg
307*1debfc3dSmrg	* configure.in (AC_CHECK_FUNCS): Check for strchr and strrchr.
308*1debfc3dSmrg
309*1debfc3dSmrgFri Nov 27 20:13:36 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
310*1debfc3dSmrg
311*1debfc3dSmrg	* system.h: New file.
312*1debfc3dSmrg
313*1debfc3dSmrg	* configure.in (AC_CHECK_FUNCS): Remove check for vprintf.
314*1debfc3dSmrg	Add check for isascii and strsignal.
315*1debfc3dSmrg	Collapse multiple calls.
316*1debfc3dSmrg	(GCC_NEED_DECLARATIONS): Likewise, from GCC_NEED_DECLARATION.
317*1debfc3dSmrg	Check for bcopy, bcmp, bzero, strerror, atof, getcwd,
318*1debfc3dSmrg	strsignal and getwd.
319*1debfc3dSmrg	Add checks for getrlimit and setrlimit; search in sys/resource.h.
320*1debfc3dSmrg	(GCC_FUNC_PRINTF_PTR, GCC_C_VOLATILE, GCC_FUNC_VFPRINTF_DOPRNT): Call.
321*1debfc3dSmrg	(GCC_HEADER_STRING, AC_FUNC_VFORK, AC_HEADER_SYS_WAIT): Likewise.
322*1debfc3dSmrg
323*1debfc3dSmrg	* acconfig.h (NEED_DECLARATION_{STRERROR,GETCWD,GETWD,BZERO}: Add.
324*1debfc3dSmrg	(NEED_DECLARATION_{{G,S}ETRLIMIT,STRSIGNAL,BCOPY,BCMP}): Likewise.
325*1debfc3dSmrg	(STRING_WITH_STRINGS, HAVE_VOLATILE, HOST_PTR_PRINTF): Likewise.
326*1debfc3dSmrg
327*1debfc3dSmrg	* aclocal.m4 (GCC_NEED_DECLARATION): Accept optional second arg.
328*1debfc3dSmrg	Test STRING_WITH_STRINGS when deciding which headers to search for
329*1debfc3dSmrg	function declarations.
330*1debfc3dSmrg	(GCC_NEED_DECLARATIONS, GCC_HEADER_STRING): New autoconf test.
331*1debfc3dSmrg	(GCC_FUNC_{VFPRINTF_DOPRNT,PRINTF_PTR}, GCC_C_VOLATILE): Likewise.
332*1debfc3dSmrg
333*1debfc3dSmrgFri Nov 27 20:10:42 1998  Richard Henderson  <rth@cygnus.com>
334*1debfc3dSmrg
335*1debfc3dSmrg        * configure.in: Add cpp stringify test.
336*1debfc3dSmrg	(AC_CHECK_FUNCS): Check for sbrk.
337*1debfc3dSmrg	* acconfig.h (HAVE_CPP_STRINGIFY): New tag.
338*1debfc3dSmrg
339*1debfc3dSmrgFri Nov 27 20:09:27 1998  Manfred Hollstein  <manfred@s-direktnet.de>
340*1debfc3dSmrg
341*1debfc3dSmrg	* configure.in (AC_CHECK_FUNCS): Check for getrlimit and setrlimit.
342*1debfc3dSmrg
343*1debfc3dSmrgFri Nov 27 19:48:27 1998  Jeffrey A Law  <law@cygnus.com>
344*1debfc3dSmrg
345*1debfc3dSmrg	* configure.in (AC_CHECK_FUNCS): Add gettimeofday, atoq, atoll,
346*1debfc3dSmrg	strerror, stroul, abort and bsearch.
347*1debfc3dSmrg	* acconfig.h (NEED_DECLARATION_{ATOL,ABORT}): New tags.
348*1debfc3dSmrg
349*1debfc3dSmrgFri Nov 27 19:46:09 1998  Jim Wilson  <wilson@cygnus.com>
350*1debfc3dSmrg
351*1debfc3dSmrg	* acconfig.h (HAVE_INTTYPES_H): New tag.
352*1debfc3dSmrg	* configure.in (inttypes.h): Check for conflicts between sys/types.h
353*1debfc3dSmrg	and inttypes.h and verify that intmax_t is defined.
354*1debfc3dSmrg
355*1debfc3dSmrgFri Nov 27 08:07:53 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
356*1debfc3dSmrg
357*1debfc3dSmrg	* alpha.c (sext_add_operand): Use reg_not_elim_operand.
358*1debfc3dSmrg	(reg_not_elim_or_8bit_operand): New function.
359*1debfc3dSmrg	* alpha.h (PREDICATE_CODE): Add new entry and alphabetize.
360*1debfc3dSmrg	* alpha.md (mult patterns): Ensure eliminable reg not any input.
361*1debfc3dSmrg
362*1debfc3dSmrg	* Makefile.in (STAGESTUFF): Remove s-ver.
363*1debfc3dSmrg	(s-ver): Remove rule and revert back to version.c as target.
364*1debfc3dSmrg
365*1debfc3dSmrgFri Nov 27 02:39:36 1998  Paul Eggert  <eggert@twinsun.com>
366*1debfc3dSmrg
367*1debfc3dSmrg	* cccp.c (main): Make `-I -' equivalent to `-I-'.
368*1debfc3dSmrg
369*1debfc3dSmrgFri Nov 27 02:39:36 1998  Sam Kendall  <kendall@init.com>
370*1debfc3dSmrg
371*1debfc3dSmrg	* cccp.c (main): Avoid `++i' and `i' in same expression.
372*1debfc3dSmrg
373*1debfc3dSmrgThu Nov 26 19:42:02 1998  Stephen L Moshier  <moshier@mediaone.net>
374*1debfc3dSmrg
375*1debfc3dSmrg	* real.c (ereal_atof): New function for hexadecimal floating constants.
376*1debfc3dSmrg	* real.h (REAL_VALUE_HTOF): New macro for hex float conversion.
377*1debfc3dSmrg	* c-lex.c (yylex): Use it and check syntax of hex floats.
378*1debfc3dSmrg	* fold-const.c (real_hex_to_f): New function reads hex float
379*1debfc3dSmrg	if no REAL_ARITHMETIC.
380*1debfc3dSmrg
381*1debfc3dSmrgThu Nov 26 18:51:51 1998  Richard Henderson <rth@cygnus.com>
382*1debfc3dSmrg
383*1debfc3dSmrg	* alpha.c (reg_not_elim_operand): New function.
384*1debfc3dSmrg	* alpha.h (PREDICATE_CODES): Add it.
385*1debfc3dSmrg	* alpha.md: Remove reload-only patterns for (plus (plus (mult ...))).
386*1debfc3dSmrg	(s[48]{add,sub}q): Use new function as predicate for multiplicand.
387*1debfc3dSmrg
388*1debfc3dSmrgThu Nov 26 09:13:35 1998  Hans Cappelle  <cappelle@imec.be>
389*1debfc3dSmrg
390*1debfc3dSmrg	* reorg.c (fill_simple_delay_slots): Fix typo in sets_cc0_p call.
391*1debfc3dSmrg
392*1debfc3dSmrgThu Nov 26 06:15:46 1998  Paul Edwards  <avon@matra.com.au>
393*1debfc3dSmrg
394*1debfc3dSmrg	* genattr.c (fatal): Use vprintf if available.
395*1debfc3dSmrg	* genattrtab.c, gencodes.c, genconfig.c, genemit.c: Likewise.
396*1debfc3dSmrg	* genextract.c, genflags.c, genopinit.c, genoutput.c: Likewise.
397*1debfc3dSmrg	* genpeep.c: Likewise.
398*1debfc3dSmrg
399*1debfc3dSmrgWed Nov 25 08:02:23 1998  Ken Raeburn  <raeburn@cygnus.com>
400*1debfc3dSmrg
401*1debfc3dSmrg	* Makefile.in (version.c): Truncate tmp-version.c when writing to
402*1debfc3dSmrg	it, instead of appending.  Use timestamp file s-ver to prevent
403*1debfc3dSmrg	repeated rebuilding of file with unchanged contents.
404*1debfc3dSmrg	(STAGESTUFF): Add s-ver.
405*1debfc3dSmrg
406*1debfc3dSmrgWed Nov 25 07:53:24 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
407*1debfc3dSmrg
408*1debfc3dSmrg	* reload.h (form_sum): Add new parm, DIFF_P.
409*1debfc3dSmrg	* reload.c (form_sum): Likewise.
410*1debfc3dSmrg	(subst_indexed_address): Call it with new parm.
411*1debfc3dSmrg	* reload1.c (eliminate_regs, case MINUS): Make common with PLUS.
412*1debfc3dSmrg	(eliminate_regs_in_insn): Re-recognize if was MINUS.
413*1debfc3dSmrg	* alpha.md: Add patterns for (plus (minus (mult ..) ...) ...).
414*1debfc3dSmrg
415*1debfc3dSmrg	* libgcc2.c (__bb_init_prg): Avoid use of bzero.
416*1debfc3dSmrg
417*1debfc3dSmrg	* combine.c (make_extraction): Make extraction even if may
418*1debfc3dSmrg	span if INNER is not MEM.
419*1debfc3dSmrg
420*1debfc3dSmrgWed Nov 25 07:30:28 1998  David Addison <addy@quadrics.com>
421*1debfc3dSmrg
422*1debfc3dSmrg	* sparc.h (SPARC_INCOMING_INT_ARG_FIRST): Respect TARGET_FLAT.
423*1debfc3dSmrg
424*1debfc3dSmrgMon Nov 23 07:00:57 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
425*1debfc3dSmrg
426*1debfc3dSmrg	* function.c (purge_addressof_1): If validate_change fails, try
427*1debfc3dSmrg	validate_replace_rtx.
428*1debfc3dSmrg
429*1debfc3dSmrg	* expr.c (expand_expr, case ADDR_EXPR): Non-constant can be ADDRESSOF.
430*1debfc3dSmrg
431*1debfc3dSmrg	* expr.c (store_constructor_{,field}): New parameter ALIGN and
432*1debfc3dSmrg	use it when making recursive calls and clearing memory.
433*1debfc3dSmrg	(expand_expr, case CONSTRUCTOR): Call with new parameter.
434*1debfc3dSmrg
435*1debfc3dSmrg	* mips/abi64.h (FUNCTION_ARG_PASS_BY_REFERENCE): Remove ABI_EABI test.
436*1debfc3dSmrg	* mips.c (function_arg_pass_by_reference): Return 1 if would
437*1debfc3dSmrg	otherwise pass both in registers and on stack.
438*1debfc3dSmrg
439*1debfc3dSmrgFri Nov 13 06:56:24 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
440*1debfc3dSmrg
441*1debfc3dSmrg	* alpha/vms.h (struct avms_arg_info): Use int for num_args.
442*1debfc3dSmrg
443*1debfc3dSmrgMon Nov  2 07:35:26 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
444*1debfc3dSmrg
445*1debfc3dSmrg	* sched.c ({true,anti,output}_dependence): Volatile conflicts with
446*1debfc3dSmrg	anything where MEM_IN_STRUCT_P doesn't match.
447*1debfc3dSmrg
448*1debfc3dSmrgFri Oct 30 14:05:32 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
449*1debfc3dSmrg
450*1debfc3dSmrg	* expr.c (struct move_by_pieces): New fields {to,from}_readonly.
451*1debfc3dSmrg	(move_by_pieces): Initialize them.
452*1debfc3dSmrg	(move_by_pieces_1): Use them.
453*1debfc3dSmrg
454*1debfc3dSmrg
455*1debfc3dSmrgSun Oct 25 06:12:33 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
456*1debfc3dSmrg
457*1debfc3dSmrg	* optabs.c (emit_no_conflict_block): Allow insn of just USE or SET.
458*1debfc3dSmrg
459*1debfc3dSmrg	* explow.c (allocate_dynamic_stack_space): If operand 1 has VOIDmode,
460*1debfc3dSmrg	use Pmode.
461*1debfc3dSmrg
462*1debfc3dSmrg	* configure.in (AC_CHECK_HEADERS): Fix typo with sys/stat.h.
463*1debfc3dSmrg
464*1debfc3dSmrg	* Makefile.in (config.status): Use $(srcdir) for configure.
465*1debfc3dSmrg
466*1debfc3dSmrg	* sparc.md (*sethi_di_medium_pic): Add CLOBBER of register 1.
467*1debfc3dSmrg
468*1debfc3dSmrg	* x-alpha (CLIB): Add -lexc.
469*1debfc3dSmrg
470*1debfc3dSmrg	* i386/mingw32.h (OUTPUT_QUOTED_STRING): Don't use Cygwin format
471*1debfc3dSmrg	for drive letter.
472*1debfc3dSmrg
473*1debfc3dSmrg	* cccp.c (handle_directive): Complete support for #undef when -dM.
474*1debfc3dSmrg
475*1debfc3dSmrg	* configure.in (alpha*-*-vxworks*): Set MASK_SUPPORT_ARCH from host.
476*1debfc3dSmrg
477*1debfc3dSmrg	* m68k.md (adddi3, subdi3, anddi3, iordi3, xordi3): Use split_double.
478*1debfc3dSmrg
479*1debfc3dSmrgSat Oct 24 13:41:06 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
480*1debfc3dSmrg
481*1debfc3dSmrg	* local-alloc.c (alloc_qty_for_scratch, requires_inout): Allow
482*1debfc3dSmrg	matching up to operand number 9.
483*1debfc3dSmrg	* recog.c (constrain_operands): Likewise.
484*1debfc3dSmrg	* reg-stack.c (constrain_asm_operands): Likewise.
485*1debfc3dSmrg	* regclass.c (record_reg_classes): Likewise.
486*1debfc3dSmrg	* regmove.c (find_matches): Likewise.
487*1debfc3dSmrg	* reload.c (find_reloads): Likewise.
488*1debfc3dSmrg	* reload1.c (reload_cse_simplify_operands): Likewise.
489*1debfc3dSmrg
490*1debfc3dSmrgSat Oct 24 09:27:30 1998  David Edelsohn  <edelsohn@mhpcc.edu>
491*1debfc3dSmrg
492*1debfc3dSmrg	* regclass.c (record_reg_classes): Skip modifiers when looking
493*1debfc3dSmrg	for constraint that just matches a previous operand.
494*1debfc3dSmrg	Initialize classes[i] before handling matching operand.
495*1debfc3dSmrg
496*1debfc3dSmrgFri Oct 23 07:05:52 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
497*1debfc3dSmrg
498*1debfc3dSmrg	* fold-const.c (fold_range_test, fold): Use global_bindings_p,
499*1debfc3dSmrg	not checking current_function_decl, to see if in function.
500*1debfc3dSmrg
501*1debfc3dSmrgMon Oct 12 06:21:08 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
502*1debfc3dSmrg
503*1debfc3dSmrg	* function.c (gen_mem_addressof): Copy REG_USERVAR_P to new reg.
504*1debfc3dSmrg
505*1debfc3dSmrgSun Oct 11 14:40:24 1998  Ken Raeburn  <raeburn@cygnus.com>
506*1debfc3dSmrg
507*1debfc3dSmrg	* calls.c (store_one_arg): Use ARGS_SIZE_RTX to get size of argument
508*1debfc3dSmrg	when emitting chkr_set_right_libfunc call.
509*1debfc3dSmrg
510*1debfc3dSmrgMon Oct  5 18:28:33 1998  Hans-Peter Nilsson  <hp@axis.se>
511*1debfc3dSmrg
512*1debfc3dSmrg	* Makefile.in (version.c): Apply basename when using VERSION_DEP.
513*1debfc3dSmrg
514*1debfc3dSmrgMon Oct  5 18:08:31 1998  Ken Raeburn  <raeburn@cygnus.com>
515*1debfc3dSmrg
516*1debfc3dSmrg	* rs6000.c (rs6000_stack_info): Remove extra paren.
517*1debfc3dSmrg	(print_operand): Cast -1 to HOST_WIDE_INT before shifting it.
518*1debfc3dSmrg	* optabs.c (init_optabs): Create Checker symbols in Pmode.
519*1debfc3dSmrg
520*1debfc3dSmrgMon Oct  5 06:23:27 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
521*1debfc3dSmrg
522*1debfc3dSmrg	* function.c (purge_addressof_1): Add new parm IN_DEST.
523*1debfc3dSmrg	If have different modes and IN_DEST, try making STRICT_LOW_PART.
524*1debfc3dSmrg
525*1debfc3dSmrg	* regmove.c (regmove_profitable_p): Put obfree at right place.
526*1debfc3dSmrg
527*1debfc3dSmrgSun Oct  4 08:37:36 1998  Paul Edwards  <avon@matra.com.au>
528*1debfc3dSmrg
529*1debfc3dSmrg	* configure.in (AC_CHECK_HEADERS): Add sys/types.h and sys/stat.h.
530*1debfc3dSmrg	* gcc.c (sys/types.h, sys/stat.h): Only include if exist.
531*1debfc3dSmrg	* cccp.c, toplev.c: Likewise.
532*1debfc3dSmrg
533*1debfc3dSmrgSun Oct  4 07:11:34 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.eu>
534*1debfc3dSmrg
535*1debfc3dSmrg	* calls.c (expand_call): Don't call emit_group_store if target
536*1debfc3dSmrg	is the same as VALREG.
537*1debfc3dSmrg
538*1debfc3dSmrg	* loop.c (strength_reduce): Track maybe_multiple on giv scan.
539*1debfc3dSmrg	(find_mem_givs, record_giv): New argument maybe_multiple.
540*1debfc3dSmrg
541*1debfc3dSmrg	* reorg.c (fill_{simple,eager}_delay_slots): If insn no longer needs
542*1debfc3dSmrg	delay slots, just skip instead of aborting.
543*1debfc3dSmrg
544*1debfc3dSmrgSat Oct  3 08:04:28 1998  Ken Raeburn  <raeburn@cygnus.com>
545*1debfc3dSmrg
546*1debfc3dSmrg	* tree.h (DECL_NO_CHECK_MEMORY_USAGE): New macro.
547*1debfc3dSmrg	(struct tree_decl): New field no_check_memory_usage.
548*1debfc3dSmrg	* c-common.c (enum attrs): Add A_NO_CHECK_MEMORY_USAGE.
549*1debfc3dSmrg	(init_attributes): Register it as a new attribute.
550*1debfc3dSmrg	(decl_attributes): Set flags on functions given that attribute.
551*1debfc3dSmrg	* c-decl.c (duplicate_decls): Merge new attribute.
552*1debfc3dSmrg	* expr.h (current_function_check_memory_usage): Declare.
553*1debfc3dSmrg	* calls.c, expr.c, function.c, stmt.c: Replace uses of
554*1debfc3dSmrg	flag_check_memory_usage with current_function_check_memory_usage.
555*1debfc3dSmrg	* alpha.c, clipper.c, m88k.c, pa.c, sparc.c: Likewise.
556*1debfc3dSmrg	* function.h (struct function): New field check_memory_usage.
557*1debfc3dSmrg	* function.c (current_function_check_memory_usage): Define it.
558*1debfc3dSmrg	(push_function_context_to, pop_function_context_from): Save and
559*1debfc3dSmrg	restore it.
560*1debfc3dSmrg	(expand_function_start): Set it, based on global flag and function
561*1debfc3dSmrg	attribute.
562*1debfc3dSmrg
563*1debfc3dSmrg	* expr.c (expand_expr, case VAR_DECL): In memory-checking code, do
564*1debfc3dSmrg	check non-automatic variables.
565*1debfc3dSmrg
566*1debfc3dSmrgSat Oct  3 07:20:28 1998  Stephen L Moshier  <moshier@world.std.com>
567*1debfc3dSmrg
568*1debfc3dSmrg	* emit-rtl.c (gen_lowpart_common): Disable optimization of
569*1debfc3dSmrg	initialized float-int union if the value is a NaN.
570*1debfc3dSmrg
571*1debfc3dSmrgSat Oct  3 06:58:53 1998  David Edelsohn  <edelsohn@mhpcc.edu>
572*1debfc3dSmrg
573*1debfc3dSmrg	* rs6000.h (ASM_OUTPUT_ADDR_DIFF_ELT): Remove extraneous parameter.
574*1debfc3dSmrg
575*1debfc3dSmrgSat Oct  3 06:53:43 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
576*1debfc3dSmrg
577*1debfc3dSmrg	* regmove.c (regmove_profitable_p): Free allocated mem if we return 1.
578*1debfc3dSmrg
579*1debfc3dSmrg	* rs6000.h (CPP_PREDEFINES): Add -D_LONG_LONG.
580*1debfc3dSmrg
581*1debfc3dSmrgFri Oct  2 11:02:41 1998  Klaus Espenlaub <kespenla@student.informatik.uni-ulm.de>
582*1debfc3dSmrg
583*1debfc3dSmrg	* Makefile.in (stmp-fixinc, stmp-fixproto, install-multilib):
584*1debfc3dSmrg	Fix directory permissions.
585*1debfc3dSmrg	* objc/Makefile.in (copy-headers): Likewise.
586*1debfc3dSmrg
587*1debfc3dSmrgFri Oct  2 10:39:08 1998  Hans-Peter Nilsson  <hp@axis.se>
588*1debfc3dSmrg
589*1debfc3dSmrg	* expr.c (expand_expr, case CONSTRUCTOR): Change ">" to ">="
590*1debfc3dSmrg	making MOVE_RATIO use consistent.
591*1debfc3dSmrg
592*1debfc3dSmrgFri Oct  2 08:22:01 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
593*1debfc3dSmrg
594*1debfc3dSmrg	* h8300.c (get_shift_alg): Fix typo in asm string; "n" should be "\n".
595*1debfc3dSmrg
596*1debfc3dSmrgWed Sep 30 15:53:17 1998  Klaus Espenlaub  <kespenla@student.informatik.uni-ulm.de>
597*1debfc3dSmrg
598*1debfc3dSmrg	* rs6000.h (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Delete.
599*1debfc3dSmrg
600*1debfc3dSmrgWed Sep 30 14:27:49 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
601*1debfc3dSmrg
602*1debfc3dSmrg	* function.c (assign_parms): Undo change of June 9.
603*1debfc3dSmrg
604*1debfc3dSmrgWed Sep 30 14:21:39 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
605*1debfc3dSmrg
606*1debfc3dSmrg	* c-typeck.c (c_expand_asm_operands): Give error if non-lvalue for
607*1debfc3dSmrg	output operand.
608*1debfc3dSmrg
609*1debfc3dSmrg	* libgcc2.c (__bb_init_prg): Properly zero bb_hashbuckets.
610*1debfc3dSmrg
611*1debfc3dSmrgWed Sep 30 11:31:23 1998  Walter Gadeyne  <gadeynew@sebb.bel.alcatel.be>
612*1debfc3dSmrg
613*1debfc3dSmrg	* combine.c (num_sign_bit_copies, case UDIV): Return 1.
614*1debfc3dSmrg
615*1debfc3dSmrgWed Sep 30 10:44:15 1998  Tristan Gingold  <gingold@gavroche.enst.fr>
616*1debfc3dSmrg
617*1debfc3dSmrg	* c-decl.c (finish_decl): Set the assembler name to the current
618*1debfc3dSmrg	decl if it was specified.
619*1debfc3dSmrg	(finish_function): Use assembler name for constructor and
620*1debfc3dSmrg	destructor name.
621*1debfc3dSmrg	(duplicate_decls): Copy the assembler name.
622*1debfc3dSmrg
623*1debfc3dSmrgWed Sep 30 10:42:49 1998  Jim Wilson  <wilson@cygnus.com>
624*1debfc3dSmrg
625*1debfc3dSmrg	* regmove.c (struct match): Change char to int.
626*1debfc3dSmrg
627*1debfc3dSmrgTue Sep 29 09:57:26 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
628*1debfc3dSmrg
629*1debfc3dSmrg	* regmove.c (regmove_profitable_p): For shift, use 1 as third arg.
630*1debfc3dSmrg
631*1debfc3dSmrg	* function.c (find_fixup_replacement): Consider equivalent if
632*1debfc3dSmrg	rtx_equal_p, not just same rtx.
633*1debfc3dSmrg
634*1debfc3dSmrg	* reload.h (last_output_reload_regno): New declaration.
635*1debfc3dSmrg	* reload.c (find_reloads): No longer make it static and get last value.
636*1debfc3dSmrg	* reload1.c (last_output_reload_regno): New definition.
637*1debfc3dSmrg	(reload): Initialize it before each scan.
638*1debfc3dSmrg	(reload_as_needed): Likewise, and also when insn has no reloads.
639*1debfc3dSmrg
640*1debfc3dSmrg	* combine.c (simplify_comparison, case AND): Properly check for
641*1debfc3dSmrg	SUBREG of a low part and exclude paradoxcal SUBREG, not low part,
642*1debfc3dSmrg	for non-WORD_REGISTER_OPERATIONS machines.
643*1debfc3dSmrg
644*1debfc3dSmrg	* expr.c (get_inner_reference): Fix typo in last change.
645*1debfc3dSmrg
646*1debfc3dSmrgMon Sep 27 21:34:00 1998  Paul Eggert  <eggert@twinsun.com>
647*1debfc3dSmrg
648*1debfc3dSmrg	* po/en_UK.po (Project-Id-Version): Set to cc 2.8.1.19980813 for now.
649*1debfc3dSmrg	(PO-Revision-Date): Set to the current date.
650*1debfc3dSmrg
651*1debfc3dSmrgSun Sep 27 07:33:18 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
652*1debfc3dSmrg
653*1debfc3dSmrg	* m68k/vxm68k.h (LINK_SPEC): Always use -r.
654*1debfc3dSmrg	(WIDEST_HARDWARE_FP_SIZE): Define.
655*1debfc3dSmrg
656*1debfc3dSmrg	* reload.c (push_reload): If in STRICT_LOW_PART, always reload
657*1debfc3dSmrg	inside even if SUBREG_WORD is not zero.
658*1debfc3dSmrg
659*1debfc3dSmrg	* flow.c (print_rtl_with_bb): Don't say not in basic block if we
660*1debfc3dSmrg	aren't making basic blocks.8
661*1debfc3dSmrg
662*1debfc3dSmrgSat Sep 26 10:57:09 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
663*1debfc3dSmrg
664*1debfc3dSmrg	* function.c (optimize_bit_field): Don't remove SUBREG from dest
665*1debfc3dSmrg	if SUBREG_REG is multi-word.
666*1debfc3dSmrg
667*1debfc3dSmrgWed Sep 23 05:43:23 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
668*1debfc3dSmrg
669*1debfc3dSmrg	* reload.c (find_reloads_address): Deal with address which is
670*1debfc3dSmrg	an AND; clean up return values some more.
671*1debfc3dSmrg
672*1debfc3dSmrgFri Sep 11 13:02:26 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
673*1debfc3dSmrg
674*1debfc3dSmrg	* function.c (purge_addressof_1): Properly copy flags when making MEM.
675*1debfc3dSmrg
676*1debfc3dSmrgMon Sep  7 18:33:06 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
677*1debfc3dSmrg
678*1debfc3dSmrg	* expr.c (get_inner_reference): If not COMPONENT_REF or BITFIELD_REF
679*1debfc3dSmrg	and mode is BLKmode, set size_tree.
680*1debfc3dSmrg
681*1debfc3dSmrg	* expr.c (expand_builtin, case BUILT_IN_LONGJMP): Fix typo in
682*1debfc3dSmrg	last change.
683*1debfc3dSmrg
684*1debfc3dSmrgWed Sep  2 15:38:01 1998  Paul Eggert  <eggert@twinsun.com>
685*1debfc3dSmrg
686*1debfc3dSmrg	* libgcc2.c (__floatdisf): Use signed comparison to test
687*1debfc3dSmrg	whether u is close to zero; unsigned comparison is not what's
688*1debfc3dSmrg	wanted here.
689*1debfc3dSmrg
690*1debfc3dSmrgMon Aug 17 02:19:30 1998  David Edelsohn  <edelsohn@mhpcc.edu>
691*1debfc3dSmrg
692*1debfc3dSmrg	* xcoffout.c (UNKNOWN_STAB): Fix typo in previous change; missing
693*1debfc3dSmrg 	backslash before newline.
694*1debfc3dSmrg
695*1debfc3dSmrgMon Aug 17 00:12:42 1998  Paul Eggert  <eggert@twinsun.com>
696*1debfc3dSmrg
697*1debfc3dSmrg	* reorg.c (check_annul_list_true_false): Fix typo in Jul 17 change.
698*1debfc3dSmrg
699*1debfc3dSmrgSun Aug  2 01:10:15 1998  Paul Eggert  <eggert@twinsun.com>
700*1debfc3dSmrg
701*1debfc3dSmrg	Add Native Language Support.
702*1debfc3dSmrg	* intl/*, mkinstalldirs, po/*, exgettext, intl.c, intl.h: New files.
703*1debfc3dSmrg	* Makefile.in (AWK, datadir, localedir, top_builddir): New variables.
704*1debfc3dSmrg	(USE_NLS, INTLLIBS, POSUB, INTL_SUBDIRS, HOST_INTLLIBS): Likewise.
705*1debfc3dSmrg	(PREPEND_DOTDOT_TO_RELATIVE_PATHS, SUBDIR_FLAGS_TO_PASS): Likewise.
706*1debfc3dSmrg	(GCC_OBJS, COLLECT2_OBJS, CCCP_OBJS, CPPMAIN_OBJS): Likewise.
707*1debfc3dSmrg	(PROTO_OBJS, GCOV_OBJS, INTL_DISTCLEAN, GEN_PROTOS_OBJS): Likewise.
708*1debfc3dSmrg	(LIBDEPS, LIBS): Add $(INTLLIBS).
709*1debfc3dSmrg	(HOST_LIBDEPS, HOST_LIBS): Add $(HOST_INTLLIBS).
710*1debfc3dSmrg	(LIBS): Add @LIBS@.
711*1debfc3dSmrg	(ORDINARY_FLAGS_TO_PASS): New var, containing all the old values
712*1debfc3dSmrg	from FLAGS_TO_PASS, except for CC.
713*1debfc3dSmrg	(FLAGS_TO_PASS): Pass datadir, distdir, localedir.
714*1debfc3dSmrg	(OBJS): Add intl.o.
715*1debfc3dSmrg	(GEN): Add gencheck.
716*1debfc3dSmrg	(STAGESTUFF): Add tree-check.h, gencheck$(exeext).
717*1debfc3dSmrg	(native): Depend on intl.all.
718*1debfc3dSmrg	(xgcc, collect2, cccp, cppmain, {,un}protoize, gcov): Link intl.o.
719*1debfc3dSmrg	(c-typeck.o, c-lex.o, collect2.o, gcc.o, toplev.o): Depend on intl.h.
720*1debfc3dSmrg	(integrate.o, final.o, cccp.o, cppmain.o, cpplib.o): Likewise.
721*1debfc3dSmrg	(cpperror.o, s-proto, gcov.o): Likewise.
722*1debfc3dSmrg	(gencheck): Depend on $(HOST_LIBDEPS) instead of tree.h and tree.def.
723*1debfc3dSmrg	(gencheck.o, intl.o, $(top_builddir)/intl/libintl.a): New rules.
724*1debfc3dSmrg	($(srcdir)/cp/parse.c, intl.all, intl.install): Likewise.
725*1debfc3dSmrg	(intl.uninstall, intl.distdir, intl.mostlyclean, intl.clean): Likewise.
726*1debfc3dSmrg	(intl.distclean, intl.maintainer-clean, intl.distdir-fixup): Likewise.
727*1debfc3dSmrg	(distdir-check): Likewise.
728*1debfc3dSmrg	(gen-protos): Link cpperror.o, cppexp.o, cpphash.o, cpplib.o,
729*1debfc3dSmrg	prefix.o, version.o; needed for `cpp_notice'.
730*1debfc3dSmrg	(mostlyclean): Depend on intl.mostlyclean.
731*1debfc3dSmrg	(clean): Depend on intl.clean.
732*1debfc3dSmrg	(distclean): Depend on intl.disclean, unless the invoker defines
733*1debfc3dSmrg	INTL_DISTCLEAN to be empty.  Remove intl/libintl.h and libintl.h.
734*1debfc3dSmrg	(maintainer-clean): Make intl.maintainer-clean, but define
735*1debfc3dSmrg	INTL_DISTCLEAN to be empty.
736*1debfc3dSmrg	(install-normal): Depend on intl.install.
737*1debfc3dSmrg	(uninstall): Depend on intl.uninstall.
738*1debfc3dSmrg	(distdir-start): Make sure invoker configured with --enable-nls.
739*1debfc3dSmrg	Use $(AWK), not awk.  Make tmp/intl and tmp/po directories.
740*1debfc3dSmrg	(distdir-finish): Make distdir-check at the end.
741*1debfc3dSmrg	(distdir): Depend on intl.distdir, intl.distdir-fixup.
742*1debfc3dSmrg	(compare, compare3, gnucompare, gnucompare3): Handle intl subdirectory.
743*1debfc3dSmrg	(stage1-start, stage2-start, stage3-start, stage4-start): Likewise.
744*1debfc3dSmrg
745*1debfc3dSmrg	* acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT): New macros.
746*1debfc3dSmrg	(HAVE_LC_MESSAGES, HAVE_STPCPY, PACKAGE, VERSION): Likewise.
747*1debfc3dSmrg	* aclocal.m4 (AC_ISC_POSIX, AM_WITH_NLS): New functions.
748*1debfc3dSmrg	(AM_GNU_GETTEXT, AM_LC_MESSAGES, AM_PATH_PROG_WITH_TEST): Likewise.
749*1debfc3dSmrg
750*1debfc3dSmrg	* bi-arity.c, bi-opcode.c, bi-opname.c: Include config file first.
751*1debfc3dSmrg	* c-common.c: Don't include <ctype.h>.
752*1debfc3dSmrg	(tfaff): Now a function, not a string.  All users changed.
753*1debfc3dSmrg	(check_format_info): Use is_C_digit, not isdigit.
754*1debfc3dSmrg	Reword messages to ease localization.
755*1debfc3dSmrg	* c-decl.c (redeclaration_error_message): Now returns int, not message.
756*1debfc3dSmrg	(poplevel, duplicate_decls, pushdecl): Revamp to pass explicit
757*1debfc3dSmrg	strings to diagnostic generators.
758*1debfc3dSmrg	(duplicate_decls, parmlist_tags_warning, finish_struct): Reword
759*1debfc3dSmrg	messages to ease localization.
760*1debfc3dSmrg	* c-iterate.c (prdecl): Reword messages so that they do not require
761*1debfc3dSmrg	localization.
762*1debfc3dSmrg	* c-lex.c: Include limits.h if available.
763*1debfc3dSmrg	Include intl.h.
764*1debfc3dSmrg	Include ctype.h only if MAP_CHARACTER is defined.
765*1debfc3dSmrg	(UCHAR_MAX): Define if limits.h doesn't.
766*1debfc3dSmrg	(C_alnum_array): New var.
767*1debfc3dSmrg	(init_lex): Initialize it.
768*1debfc3dSmrg	(yyerror): Localize msgid arg.
769*1debfc3dSmrg	(yylex): Use is_C_alnum and is_C_digit, not isalnum and isdigit.
770*1debfc3dSmrg	* c-lex.h (C_alnum_array): New decl.
771*1debfc3dSmrg	(is_C_alnum, is_C_digit): New macros.
772*1debfc3dSmrg	* c-typeck.c: Include intl.h.
773*1debfc3dSmrg	(warning_init): Now takes just one arg.
774*1debfc3dSmrg	(incomplete_type_error): Reword messages to ease localization.
775*1debfc3dSmrg	(build_unary_op, lvalue_or_else, readonly_warning): Likewise.
776*1debfc3dSmrg	(build_modify_expr): Likewise.
777*1debfc3dSmrg	(build_unary_op, readonly_warning): Revamp to pass explicit
778*1debfc3dSmrg	strings to diagnostic generators.
779*1debfc3dSmrg	(build_modify_expr, warn_for_assignment, c_expand_return):
780*1debfc3dSmrg	Translate strings passed to functions expecting translated
781*1debfc3dSmrg	strings.
782*1debfc3dSmrg	(get_spelling): Remove; it was a no-op.  All callers changed.
783*1debfc3dSmrg	(error_init, pedwarn_init): Now takes one arg.  All callers changed.
784*1debfc3dSmrg	* c-tree.h (error_init, pedwarn_init): Likewise.
785*1debfc3dSmrg	* cccp.c: Include intl.h.
786*1debfc3dSmrg	(char_name): Remove.
787*1debfc3dSmrg	(check_macro_name): 2nd arg now int, not char *.  All callers changed.
788*1debfc3dSmrg	(macarg): Now returns int, not char *.  All callers changed.
789*1debfc3dSmrg	(notice, vnotice, pedwarn_strange_white_space): New functions.
790*1debfc3dSmrg	(verror): Now extern; used by cexp.y.
791*1debfc3dSmrg	(main): Set message locale, and defer memory allocation until after.
792*1debfc3dSmrg	(main, do_include, print_containing_files): Invoke `notice' to
793*1debfc3dSmrg	localize notices.
794*1debfc3dSmrg	(handle_directive): Invoke pedwarn_strange_white_space instead of
795*1debfc3dSmrg	using char_name.
796*1debfc3dSmrg	(do_include, check_macro_name): Reword messages to ease localization.
797*1debfc3dSmrg	(my_strerror): Likewise.
798*1debfc3dSmrg	(verror, vwarning): Invoke vnotice to localize msgid.
799*1debfc3dSmrg	(verror_with_line, vwarning_with_line): Likewise.
800*1debfc3dSmrg	(pedwarn_with_file_and_line, fatal): Likewise.
801*1debfc3dSmrg	(initialize_char_syntax): No need to initialize char_name.
802*1debfc3dSmrg	* cexp.y (yyerror): Now takes msgid format and args, not just string.
803*1debfc3dSmrg	(verror): New decl.
804*1debfc3dSmrg	(parse_number, yylex): Reword messages to ease localization.
805*1debfc3dSmrg	(verror): New test function.
806*1debfc3dSmrg	(pedwarn, warning): Translate msgid arg.
807*1debfc3dSmrg	* collect2.c: Include intl.h.
808*1debfc3dSmrg	(my_strerror): Reword messages so they do not require localization.
809*1debfc3dSmrg	(main, collect_execute, scan_prog_file, scan_libraries): Likewise.
810*1debfc3dSmrg	(read_file, end_file): Likewise.
811*1debfc3dSmrg	(notice): New function.
812*1debfc3dSmrg	(fatal, error, main): Use it to translate msgid strings.
813*1debfc3dSmrg	(collect_execute, maybe_unlink, write_c_file_stat): Likewise.
814*1debfc3dSmrg	(locatelib, scan_libraries, scan_prog_file, add_func_table): Likewise.
815*1debfc3dSmrg	(main): Set message locale, and defer memory allocation until after.
816*1debfc3dSmrg	(collect_wait): Reword messages to ease localization.
817*1debfc3dSmrg	(bad_header): Revamp to pass explicit strings to diagnostic generators.
818*1debfc3dSmrg	* combine.c (dump_combine_stats, dump_combine_total_stats):
819*1debfc3dSmrg	Use fnotice to translate diagnostic messages.
820*1debfc3dSmrg	* cppalloc.c (memory_full): Use `cpp_notice' to print diagnostic.
821*1debfc3dSmrg	* cpperror.c: Include intl.h.
822*1debfc3dSmrg	(cpp_print_containing_files): Use cpp_notice to translate messages.
823*1debfc3dSmrg	(cpp_message): is_error is -1 for notices.  Translate "warning:".
824*1debfc3dSmrg	(cpp_fatal): Translate msgid arg.
825*1debfc3dSmrg	* cppexp.c (cpp_lex): Pass explicit strings to diagnostic generators.
826*1debfc3dSmrg	(cpp_parse_expr): Use cpp_error, not fprintf, to report
827*1debfc3dSmrg	unimplemented operators.
828*1debfc3dSmrg	* cpplib.c: Include intl.h.
829*1debfc3dSmrg	(check_macro_name): 2nd arg now int, not char *.  All callers changed.
830*1debfc3dSmrg	(check_macro_name, do_define): Reword messages to ease localization.
831*1debfc3dSmrg	(do_define): Pass explicit strings to diagnostic generators.
832*1debfc3dSmrg	(do_define, cpp_start_read, cpp_handle_options): Use cpp_notice to
833*1debfc3dSmrg	translate messages.
834*1debfc3dSmrg	(cpp_error, cpp_warning, cpp_warning_with_line): Translate msgid arg.
835*1debfc3dSmrg	(cpp_pedwarn_with_file_and_line): Likewise.
836*1debfc3dSmrg	(cpp_notice): New function.
837*1debfc3dSmrg	(my_strerror): Reword message so it does not require localization.
838*1debfc3dSmrg	* cpplib.h (cpp_notice): New decl.
839*1debfc3dSmrg	* cppmain.c: Include intl.h.
840*1debfc3dSmrg	(main): Set message locale.
841*1debfc3dSmrg	* cse.c (cse_main): Use fnotice to print diagnostic.
842*1debfc3dSmrg	* final.c: Include intl.h; do not include ctype.h.
843*1debfc3dSmrg	(output_operand_lossage): Translate msgid arg.
844*1debfc3dSmrg	* fold-const.c (optimize_bit_field_compare, fold_truthop): Reword
845*1debfc3dSmrg	messages to ease localization.
846*1debfc3dSmrg	* gcc.c: Include intl.h.
847*1debfc3dSmrg	(my_strerror, snapshot_warning): Reword messages so they do not
848*1debfc3dSmrg	require localization.
849*1debfc3dSmrg	(init_spec, set_spec): Invoke `notice' to localize notices.
850*1debfc3dSmrg	(read_specs, execute, do_spec_1, main, snapshot_warning): Likewise.
851*1debfc3dSmrg	(struct switchstr): Don't use `valid' as identifier.
852*1debfc3dSmrg	(do_spec_1): Treat %e string as msgid format, which needs
853*1debfc3dSmrg	translation.
854*1debfc3dSmrg	(main): Set message locale.
855*1debfc3dSmrg	(pfatal_with_name): Invoke perror_with_name, not fatal.
856*1debfc3dSmrg	(perror_with_name): Invoke printf, not error.
857*1debfc3dSmrg	(pfatal_pexecute): Invoke pfatal_with_name, not fatal.
858*1debfc3dSmrg	(fatal, error): Translate msgid arg.
859*1debfc3dSmrg	(notice): New function.
860*1debfc3dSmrg	* gcov.c: Include intl.h; include stdarg.h if __STDC__ is defined.
861*1debfc3dSmrg	(main): Set message locale.
862*1debfc3dSmrg	(fnotice): New function.
863*1debfc3dSmrg	(xmalloc, fancy_abort, print_usage): Use it to to print diagnostics.
864*1debfc3dSmrg	(open_files, read_files, function_summary, output_data): Likewise.
865*1debfc3dSmrg	* integrate.c: Include intl.h.
866*1debfc3dSmrg	(function_cannot_inline_p): Mark msgids with N_.
867*1debfc3dSmrg	* pexecute.c: Include libintl.h if ENABLE_NLS, otherwise define
868*1debfc3dSmrg	gettext to be a noop.
869*1debfc3dSmrg	(_, N_): New macros.
870*1debfc3dSmrg	(install_error_msg): Wrap inside N_.
871*1debfc3dSmrg	(pexecute): Translate diagnostics.
872*1debfc3dSmrg	* protoize.c: Include intl.h.
873*1debfc3dSmrg	(__attribute__): New macro.
874*1debfc3dSmrg	(notice): New function.
875*1debfc3dSmrg	(my_strerror): Reword message so it does not require localization.
876*1debfc3dSmrg	(xmalloc, xrealloc, fancy_abort): Use `notice' to print diagnostic.
877*1debfc3dSmrg	(safe_write, usage, file_normally_convertible, abspath): Likewise.
878*1debfc3dSmrg	(find_file, aux_info_corrupted, save_def_or_dec): Likewise.
879*1debfc3dSmrg	(gen_aux_info_file, process_aux_info_file, rename_c_file): Likewise.
880*1debfc3dSmrg	(find_extern_def, find_static_definition): Likewise.
881*1debfc3dSmrg	(declare_source_confusing, edit_fn_declaration): Likewise.
882*1debfc3dSmrg	(edit_formals_lists, add_local_decl, add_global_decls): Likewise.
883*1debfc3dSmrg	(edit_fn_definition, scan_for_missed_items, edit_file, main): Likewise.
884*1debfc3dSmrg	(main): Set message locale.
885*1debfc3dSmrg	* real.c (NMSGS, ermsg): Remove.
886*1debfc3dSmrg	(mtherr): Pass explicit strings to diagnostic generators.
887*1debfc3dSmrg	Abort on invalid operations.
888*1debfc3dSmrg	* regclass.c (fix_register): Reword messages to ease localization.
889*1debfc3dSmrg	* toplev.c: Include intl.h; do not include ctype.h.
890*1debfc3dSmrg	(v_really_sorry, really_sorry): Remove unused functions.
891*1debfc3dSmrg	(count_error, fatal_io_error): Translate strings.
892*1debfc3dSmrg	(default_print_error_function): Reword messages to ease localization.
893*1debfc3dSmrg	Use `notice' to translate diagnostics.
894*1debfc3dSmrg	(report_error_function, main, print_version): Likewise.
895*1debfc3dSmrg	(vnotice, notice, fnotice): New functions.
896*1debfc3dSmrg	(vmessage): Remove.
897*1debfc3dSmrg	(v_message_with_file_and_line, vsorry): Translate msgid with vnotice.
898*1debfc3dSmrg	(v_message_with_file_and_line, v_message_with_decl): Use
899*1debfc3dSmrg	report_file_and_line.  Now takes int warning flag, not prefix;
900*1debfc3dSmrg	this is easier to localize.  All callers changed.
901*1debfc3dSmrg	(v_message_with_decl): Abort if first format spec is neither %%
902*1debfc3dSmrg	nor %s.  Translate "((anonymous))".
903*1debfc3dSmrg	(main): Set message locale.
904*1debfc3dSmrg	(set_target_switch): Don't use `valid' as an identifier.
905*1debfc3dSmrg	(__VERSION__): Reword message so it does not require localization.
906*1debfc3dSmrg	(print_switch_values): Translate "options passed" and "enabled".
907*1debfc3dSmrg	* tree.c (valid_machine_attribute): Don't use `valid' as identifier.
908*1debfc3dSmrg	* xcoffout.c (xcoff_output_standard_types): Use `error' to
909*1debfc3dSmrg	output diagnostic, so that it gets translated.
910*1debfc3dSmrg	* 1750a.c (memop_valid): Don't use `valid' as an identifier.
911*1debfc3dSmrg	* arc/initfini.c (__do_global_dtors): Put backslash before
912*1debfc3dSmrg	newline in strings, to pacify xgettext.
913*1debfc3dSmrg	* dsp16xx.c (dsp16xx_invalid_register_for_compare): New function.
914*1debfc3dSmrg	* dsp16xx.h: Declare it.
915*1debfc3dSmrg	* dsp16xx.md: Use it to report invalid registers.
916*1debfc3dSmrg	* i370.h: Include <ctype.h>.
917*1debfc3dSmrg	* i386.c: Include config.h first.
918*1debfc3dSmrg	* m32r/initfini.c  (__do_global_dtors): Put backslash before
919*1debfc3dSmrg	newline in strings, to pacify xgettext.
920*1debfc3dSmrg	* m88k/dguxbcs.h (CPP_SPEC): Likewise.
921*1debfc3dSmrg	* rs6000.c: Include config.h first.
922*1debfc3dSmrg	(rs6000_fatal_bad_address): New function.
923*1debfc3dSmrg	* rs6000.h: Declare it.
924*1debfc3dSmrg	* rs6000.md: Use it to report bad addresses.
925*1debfc3dSmrg	* v850.c: Include config.h first.
926*1debfc3dSmrg
927*1debfc3dSmrg	* configure.in: When generating config.h and mentioning file from
928*1debfc3dSmrg	the config directory, surround it with #ifdef IN_GCC.
929*1debfc3dSmrg	(AC_ARG_ENABLE): Add --enable-nls.
930*1debfc3dSmrg	(AM_GNU_GETTEXT): Add.  Override XGETTEXT so that we use exgettext
931*1debfc3dSmrg	instead of xgettext to extract strings.
932*1debfc3dSmrg	(all_outputs): Add intl/Makefile, po/Makefile.in.
933*1debfc3dSmrg	Do not use the shell variable 'l'.
934*1debfc3dSmrg	If libintl.h is created, echo '#include "intl/libintl.h"' >libintl.h.
935*1debfc3dSmrg	* cp/Make-lang.in (g++.o): Depend on gansidecl.h, intl.h, Makefile;
936*1debfc3dSmrg	do not depend on config.status.
937*1debfc3dSmrg	(GXX_OBJS): New var.
938*1debfc3dSmrg	(g++$(exeext)): Link intl.o.
939*1debfc3dSmrg	* cp/Makefile.in (top_builddir, INTLLIBS): New vars.
940*1debfc3dSmrg	(LIBS): Add $(INTLLIBS).
941*1debfc3dSmrg
942*1debfc3dSmrg	* patch-apollo-includes: Remove; this is part of README.APOLLO.
943*1debfc3dSmrg
944*1debfc3dSmrgMon Jul 27 18:28:58 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
945*1debfc3dSmrg
946*1debfc3dSmrg	* reload.c (find_reloads): If no_input_reloads, abort if
947*1debfc3dSmrg	reloads were made for addresses.
948*1debfc3dSmrg	* m68k.md (sxx): Operand 0 cannot be memory.
949*1debfc3dSmrg
950*1debfc3dSmrgFri Jul 17 07:31:04 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
951*1debfc3dSmrg
952*1debfc3dSmrg	* m68k.c (output_move_simode_const): Use subl to move 0 into addr reg.
953*1debfc3dSmrg	(output_move_[hq]imode): Likewise.
954*1debfc3dSmrg
955*1debfc3dSmrg	* m68k.md (extend[sd]fxf2): Accept constants and general reg as
956*1debfc3dSmrg	source operand if the destination is a floating point register.
957*1debfc3dSmrg
958*1debfc3dSmrgFri Jul 17 07:23:49 1998  Herman ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
959*1debfc3dSmrg
960*1debfc3dSmrg	* reorg.c (check_annul_list_true_false): New function.
961*1debfc3dSmrg	(steal_delay_list_from_{target,fallthrough}): Call it and also
962*1debfc3dSmrg	refine tests for when we may annul if already filled a slot.
963*1debfc3dSmrg	(fill_slots_from_thread): Likewise.
964*1debfc3dSmrg	(delete_from_delay_slot): Return newly-created thread.
965*1debfc3dSmrg	(try_merge_delay_isns): Use its new return value.
966*1debfc3dSmrg
967*1debfc3dSmrgSat Jul  4 11:07:33 1998  Eberhard Mattes  <mattes@azu.informatik.uni-stuttgart.de>
968*1debfc3dSmrg
969*1debfc3dSmrg	* function.c (assign_parms): Handle PARALLEL which include stack.
970*1debfc3dSmrg
971*1debfc3dSmrgSat Jul  4 09:44:29 1998  Paul Edwards  <avon@matra.com.au>
972*1debfc3dSmrg
973*1debfc3dSmrg	* tree.c, print-tree.c, c-lang.c: Include stdio.h before tree.h.
974*1debfc3dSmrg	* expr.c (bc_expand_component_address): Correct args to
975*1debfc3dSmrg	bc_push_offset_and_size.
976*1debfc3dSmrg	* reload1.c (reload_cse_simplify_operands): Add missing return value.
977*1debfc3dSmrg
978*1debfc3dSmrgFri Jul  3 07:17:19 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
979*1debfc3dSmrg
980*1debfc3dSmrg	* alpha.c (normal_memory_operand): Handle case when REG will be
981*1debfc3dSmrg	eliminated by reload.
982*1debfc3dSmrg
983*1debfc3dSmrgThu Jul  2 18:43:53 1998  James Carlson  <carlson@ironbridgenetworks.com>
984*1debfc3dSmrg
985*1debfc3dSmrg	* floatlib.c (HIDDEND_LL, MANTD_LL, PACKD_LL): New macros.
986*1debfc3dSmrg	(__addsf3): Fixed cases returning wrong type and causing unintended
987*1debfc3dSmrg	conversions and data corruption.
988*1debfc3dSmrg	(__mulsf3): Fixed rounding flaws caused wrong scaling.
989*1debfc3dSmrg	(__float{didf,sisf,disf},__fix{,uns}dfdi): New functions.
990*1debfc3dSmrg	(__{gt,ge,lt,le,eq,ne}df2): Likewise.
991*1debfc3dSmrg	(__truncdfsf2): Fixed normalization problems
992*1debfc3dSmrg	(__fixunsdfsi): Fixed compiler warning
993*1debfc3dSmrg	(__{add,sub,mul}df3): Rewrite to do real DP math.
994*1debfc3dSmrg	(__divdf3): Removed previous version by Barrett Richardson.
995*1debfc3dSmrg
996*1debfc3dSmrgThu Jul  2 17:57:20 1998  Douglas B. Rupp  <rupp@gnat.com>
997*1debfc3dSmrg
998*1debfc3dSmrg	* cpperror.c: Include errno.h.
999*1debfc3dSmrg
1000*1debfc3dSmrgThu Jul  2 16:46:36 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1001*1debfc3dSmrg
1002*1debfc3dSmrg	* c-decl.c (grokdeclarator): Don't warn about implicit int in
1003*1debfc3dSmrg	`typedef foo = bar'.
1004*1debfc3dSmrg
1005*1debfc3dSmrgTue Jun 30 18:32:49 1998  Geert Bosch  <bosch@gnat.com>
1006*1debfc3dSmrg
1007*1debfc3dSmrg	* alpha/vxworks.h (LINK_SPEC): Add -taso -T 0.
1008*1debfc3dSmrg
1009*1debfc3dSmrgTue Jun 30 09:39:32 1998  David Edelsohn  <edelsohn@mhpcc.edu>
1010*1debfc3dSmrg
1011*1debfc3dSmrg	* expr.c (expand_builtin_{set,long}jmp): If STACK_SAVEAREA_MODE
1012*1debfc3dSmrg	defined, override sa_mode using its value.
1013*1debfc3dSmrg	* explow.c (emit_stack_save): Likewise.
1014*1debfc3dSmrg
1015*1debfc3dSmrg	* rs6000/aix41.h (ASM_CPU_SPEC): Define relative to ASM_DEFAULT_SPEC.
1016*1debfc3dSmrg	(CPP_CPU_SPEC): Define relative to CPU_DEFAULT_SPEC.
1017*1debfc3dSmrg	* rs6000.c (processor_target_table, 620): Don't affect MASK_POWERPC64.
1018*1debfc3dSmrg	(rs6000_override_options): Ignore flag_pic for AIX.
1019*1debfc3dSmrg	(rs6000_immed_double_const): Delete.
1020*1debfc3dSmrg	({reg_or_u_short,u_short_cint}_operand): Don't assume 32-bit CONST_INT.
1021*1debfc3dSmrg	({non_logical_cint,logical}_operand): Likewise.
1022*1debfc3dSmrg	(num_insns_constant): mask64_operand is 2 insns.
1023*1debfc3dSmrg	(easy_fp_constant): Any CONST_DOUBLE_HIGH is okay for 64-bit.
1024*1debfc3dSmrg	(mask_constant): HOST_WIDE_INT parameter.
1025*1debfc3dSmrg	(non_and_cint_operand): Delete.
1026*1debfc3dSmrg	({mask,and}64_operand): New functions.
1027*1debfc3dSmrg	(function_arg{,_advance}): DImode arguments don't need special
1028*1debfc3dSmrg	alignment when 64-bit.
1029*1debfc3dSmrg	(setup_incoming_varargs): Reverse reg_size assignment.
1030*1debfc3dSmrg	(print_operand): HOST_WIDE_INT second parameter.
1031*1debfc3dSmrg	(print_operand, case 'B', 'S'): New cases.
1032*1debfc3dSmrg	(print_operand, case 'M'): Fix typo in lossage string.
1033*1debfc3dSmrg	(rs6000_stack_info): Reverse reg_size assignment.  Use total_raw_size
1034*1debfc3dSmrg	to compute AIX push_p.  Use reg_size to compute {cr,lr}_save_offset.
1035*1debfc3dSmrg	(rs6000_output_load_toc_table): Reverse init_ptr assignment.  Use
1036*1debfc3dSmrg	TARGET_64BIT not TARGET_POWERPC64.  Convert fprintf to fputs.
1037*1debfc3dSmrg	Load GOT highpart, don't add it.  Add lowpart with {cal|la}.
1038*1debfc3dSmrg	(rs6000_allocate_stack_space): Use {cal|la}.
1039*1debfc3dSmrg	(output_epilog): Use {cal|la}
1040*1debfc3dSmrg	(output_function_profiler): Add call glue to mcount call.
1041*1debfc3dSmrg	Load GOT highpart, don't add it.  Add lowpart with {cal|la}.
1042*1debfc3dSmrg	Use asm_fprintf and convert fprintf to fputs.
1043*1debfc3dSmrg
1044*1debfc3dSmrg	* rs6000.h (TARGET_SWITCHES): Add powerpc64.
1045*1debfc3dSmrg	(STACK_BOUNDARY): Depend on TARGET_32BIT.
1046*1debfc3dSmrg	(ADJUST_FIELD_ALIGN): Calculate array alignment using innermost type.
1047*1debfc3dSmrg	(CONST_OK_FOR_LETTER_P): Don't assume 32-bit CONST_INT.
1048*1debfc3dSmrg	(EXTRA_CONSTRAINTS): Remove 'S' and 'T'.  Replace 'S' with
1049*1debfc3dSmrg	64-bit mask operand.
1050*1debfc3dSmrg	(RS6000_SAVE_TOC): Depend on TARGET_32BIT.
1051*1debfc3dSmrg	(STACK_SAVEAREA_MODE): New macro.
1052*1debfc3dSmrg	(LEGITIMATE_CONSTANT_P): DImode okay for 64bit.
1053*1debfc3dSmrg	(RTX_COSTS, AND/IOR/XOR): Reflect current machine description.
1054*1debfc3dSmrg	(ASM_FILE_START): Emit 64-bit ABI directive.
1055*1debfc3dSmrg	(ASM_DECLARE_FUNCTION_NAME): Align CSECT on doubleword in 64-bit mode.
1056*1debfc3dSmrg	(ASM_OUTPUT_SPECIAL_POOL_ENTRY): DImode okay for 64-bit.
1057*1debfc3dSmrg	(PREDICATE_CODES): Add "and64_operand" and "mask64_operand".
1058*1debfc3dSmrg	Delete "non_and_cint_operand".  "input_operand" includes CONST_DOUBLE.
1059*1debfc3dSmrg
1060*1debfc3dSmrg	* rs6000.md (iorsi3, xorsi3): Use HOST_WIDE_INT for mask.
1061*1debfc3dSmrg	Restore define_split.
1062*1debfc3dSmrg	(floatsidf2, floatunssidf2): Remove !TARGET_POWERPC64 final constraint.
1063*1debfc3dSmrg	(floatsidf2_internal, floatunssidf2_internal2): Likewise.
1064*1debfc3dSmrg	Do not specify base register operand mode.
1065*1debfc3dSmrg	(floatsidf2_loadaddr): Don't specify base register operand mode.
1066*1debfc3dSmrg	(floatsidf2_store1, floatsidf2_store2): Operand 1 must be base
1067*1debfc3dSmrg	register; do not specify mode.  Remove !TARGET_POWERPC64 final
1068*1debfc3dSmrg	constraint.
1069*1debfc3dSmrg	(floatsidf2_load): Don't specify base register operand mode.
1070*1debfc3dSmrg	Remove !TARGET_POWERPC64 final constraint.
1071*1debfc3dSmrg	(fix_truncdfsi2_internal, fix_truncdfsi2_{store,load}): Don't specify
1072*1debfc3dSmrg	base register operand mode.
1073*1debfc3dSmrg	(mulsidi3): Add !TARGET_POWERPC64 constraint.
1074*1debfc3dSmrg	(adddi3): Split large constants early.
1075*1debfc3dSmrg	(absdi3): Shift by 63, not 31.
1076*1debfc3dSmrg	(rotldi3): Add masking combiner patterns.
1077*1debfc3dSmrg	(anddi3): Add rldic{r,l} masking.  Remove split of large constants.
1078*1debfc3dSmrg	(iordi3, xordi3): Split large constants early.
1079*1debfc3dSmrg	(movsi matcher): Remove S and T constraints.
1080*1debfc3dSmrg	(movsf const_double): create SImode constant from TARGET_DOUBLE.
1081*1debfc3dSmrg	(movdf_hardfloat32): Add default abort case.
1082*1debfc3dSmrg	(movdf easy_fp_const): create DImode constant from TARGET_DOUBLE.
1083*1debfc3dSmrg	(movdi): Remove 64-bit constant generator.  Try to convert
1084*1debfc3dSmrg	CONST_DOUBLE to CONST_INT.  Handle TOC memory constants.
1085*1debfc3dSmrg	(movdi_32): Add default abort case.
1086*1debfc3dSmrg	(movdi_64): Add numerous ways to split 64-bit constants.
1087*1debfc3dSmrg	Make catch-all define_split more optimal and never FAIL.
1088*1debfc3dSmrg	(movti_ppc64): Add default abort case.
1089*1debfc3dSmrg	(allocate_stack): Remove operand modes; use Pmode.
1090*1debfc3dSmrg	(restore_stack_block): Remove operand modes.  Generate Pmode
1091*1debfc3dSmrg	temporary.  Generate MEM and specify mode.
1092*1debfc3dSmrg	(save_stack_nonlocal, restore_stack_nonlocal):  Generate Pmode
1093*1debfc3dSmrg	temporary.  Save area is double Pmode.
1094*1debfc3dSmrg	(call_indirect_aix64, call_value_indirect_aix64): New patterns.
1095*1debfc3dSmrg	(call, call_value): Do not specify address operand mode.  Choose
1096*1debfc3dSmrg	appropriate AIX ABI.
1097*1debfc3dSmrg	(*call_local64, *ret_call_local64): New patterns.
1098*1debfc3dSmrg	(*call_nonlocal_aix64, *ret_call_nonlocal_aix64): New patterns.
1099*1debfc3dSmrg	(*ret_call_nonlocal_aix32): Use call_value_indirect for REG.
1100*1debfc3dSmrg	(compare): Materialize DImode truthvalues.
1101*1debfc3dSmrg
1102*1debfc3dSmrgTue Jun 30 06:31:40 1998  Richard Henderson <rth@dot.cygnus.com>
1103*1debfc3dSmrg
1104*1debfc3dSmrg	* alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Add '`'.
1105*1debfc3dSmrg	* alpha.c (print_operand): Handle it.
1106*1debfc3dSmrg	* alpha.md (fix_truncdfsi2, fix_truncsfsi2): New patterns and
1107*1debfc3dSmrg	related define_splits.
1108*1debfc3dSmrg
1109*1debfc3dSmrgTue Jun 30 06:02:07 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1110*1debfc3dSmrg
1111*1debfc3dSmrg	* calls.c (emit_library_call{,_value}): Pass null
1112*1debfc3dSmrg 	to REG_PARM_STACK_SPACE.
1113*1debfc3dSmrg
1114*1debfc3dSmrg	* alpha.c (normal_memory_operand): New function.
1115*1debfc3dSmrg	* alpha.h (EXTRA_CONSTRAINT, case 'Q'): Call it.
1116*1debfc3dSmrg
1117*1debfc3dSmrg	* fold-const.c (count_cond): New function.
1118*1debfc3dSmrg	(fold): Don't try to build COND_EXPR from binary op when both sides
1119*1debfc3dSmrg	are COND_EXPR unless not nested too deeply.
1120*1debfc3dSmrg
1121*1debfc3dSmrgThu Jun 25 09:54:55 1998  Nick Clifton  <nickc@cygnus.com>
1122*1debfc3dSmrg
1123*1debfc3dSmrg	* arm.h (REG_ALLOC_ORDER): Add ARG_POINTER_REGNUM, noticed by
1124*1debfc3dSmrg	grahams@rcp.co.uk.
1125*1debfc3dSmrg
1126*1debfc3dSmrgMon Jun 15 17:41:33 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1127*1debfc3dSmrg
1128*1debfc3dSmrg	* reload1.c (reload): Issue guidance message on stack frame too large
1129*1debfc3dSmrg	for reliable stack check.
1130*1debfc3dSmrg
1131*1debfc3dSmrg	* fold-const.c (fold_range_test): Prevent falling through with no ret.
1132*1debfc3dSmrg
1133*1debfc3dSmrgSat Jun 13 15:49:53 1998  Carol LePage  <carolo@kemah.hal.com>
1134*1debfc3dSmrg
1135*1debfc3dSmrg	* configure.in (sparc-hal-solaris2*): New target.
1136*1debfc3dSmrg	* sparc/hal.h, sparc/t-halos: New files.
1137*1debfc3dSmrg
1138*1debfc3dSmrgSat Jun 13 14:30:25 1998  David W. Schuler  <schuld@btv.ibm.com>
1139*1debfc3dSmrg
1140*1debfc3dSmrg	* i386/aix386ng.h (CPP_SPEC): Remove bogus quote.
1141*1debfc3dSmrg
1142*1debfc3dSmrgSat Jun 13 14:16:34 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1143*1debfc3dSmrg
1144*1debfc3dSmrg	* regmove.c (try_auto_increment): Fix typo.
1145*1debfc3dSmrg
1146*1debfc3dSmrg	* c-common.c (truthvalue_conversion): Protect side effects in the
1147*1debfc3dSmrg	expression when splitting a complex value.
1148*1debfc3dSmrg	* fold-const.c (fold): Likewise.
1149*1debfc3dSmrg
1150*1debfc3dSmrg	* expr.c (do_jump, case EQ_EXPR, NE_EXPR): When comparing complex
1151*1debfc3dSmrg	prevent operands from being evaluated twice.
1152*1debfc3dSmrg
1153*1debfc3dSmrgSat Jun 13 12:53:22 1998  Richard Earnshaw (rearnsha@arm.com)
1154*1debfc3dSmrg
1155*1debfc3dSmrg	* unroll.c (verify_addresses): Use validate_replace_rtx to undo
1156*1debfc3dSmrg	changes; abort if undo fails.
1157*1debfc3dSmrg
1158*1debfc3dSmrgSat Jun 13 11:46:38 1998  Anders Blomdell <anders.blomdell@control.lth.se>
1159*1debfc3dSmrg
1160*1debfc3dSmrg	* flags.h (flag_volatile_static): Declare.
1161*1debfc3dSmrg	* toplev.c (flag_volatile_static): Define.
1162*1debfc3dSmrg	(f_options): Include -fvolatile-static.
1163*1debfc3dSmrg	* varasm.c (make_decl_rtl): Support -fvolatile-static.
1164*1debfc3dSmrg
1165*1debfc3dSmrgSat Jun 13 08:26:21 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1166*1debfc3dSmrg
1167*1debfc3dSmrg	* reload1.c (reload_cse_regno_equal_p): If -ffloat-store, don't
1168*1debfc3dSmrg	consider a MEM in FP mode as equal.
1169*1debfc3dSmrg
1170*1debfc3dSmrg	* varasm.c (assemble_variable): Never put decl with specified section
1171*1debfc3dSmrg	name into bss.
1172*1debfc3dSmrg
1173*1debfc3dSmrg	* output.h (current_function_addresses_labels): Declare.
1174*1debfc3dSmrg	* function.h (struct function): New field `addresses_labels'.
1175*1debfc3dSmrg	* function.c (current_function_addresses_labels): Define.
1176*1debfc3dSmrg	({push,pop}_function_context): Save/restore it.
1177*1debfc3dSmrg	(init_function_start): Initialize it.
1178*1debfc3dSmrg	* rtl.h (FUNCTION_FLAGS_ADDRESSES_LABELS): New flag.
1179*1debfc3dSmrg	* expr.c (expand_expr, case LABEL_DECL): Show addresses labels.
1180*1debfc3dSmrg	* integrate.c (function_cannot_inline_p): Can't if addresses labels.
1181*1debfc3dSmrg	(initialize_for_inline): Save current_function_addresses_labels.
1182*1debfc3dSmrg	(output_inline_function): Restore it.
1183*1debfc3dSmrg
1184*1debfc3dSmrg	* reload.c (find_reloads, case 'o'): All reloaded addresses
1185*1debfc3dSmrg	are offsettable.
1186*1debfc3dSmrg	(find_reloads_address): If replacing address, don't return 1.
1187*1debfc3dSmrg
1188*1debfc3dSmrg	* profile.c (output_func_start_profiler): Add missing steps in
1189*1debfc3dSmrg	defining function.
1190*1debfc3dSmrg
1191*1debfc3dSmrgFri Jun 12 17:10:16 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1192*1debfc3dSmrg
1193*1debfc3dSmrg	* m68k.md (extendqidi2): Operand 1 must be in data register.
1194*1debfc3dSmrg
1195*1debfc3dSmrgTue Jun  9 07:24:01 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1196*1debfc3dSmrg
1197*1debfc3dSmrg	* cccp.c (handle_directive): If -dM, also include #undef.
1198*1debfc3dSmrg	* cpplib.c (handle_directive): Likewise.
1199*1debfc3dSmrg
1200*1debfc3dSmrg	* calls.c (expand_call): Allow function pointer to be a REFERENCE_TYPE.
1201*1debfc3dSmrg
1202*1debfc3dSmrg	* function.c (assign_parms): Use proper mode for location of arg
1203*1debfc3dSmrg	on stack when promotions are occurring.
1204*1debfc3dSmrg
1205*1debfc3dSmrg	* regmove.c ({next,prev}_insn_for_regmove): Properly handle end of
1206*1debfc3dSmrg 	function.
1207*1debfc3dSmrg
1208*1debfc3dSmrgMon Jun  8 15:26:49 1998  Juha Sarlin <juha@c3l.tyreso.se>
1209*1debfc3dSmrg
1210*1debfc3dSmrg	* h8300.c (get_shift_alg): Add special cases for shifts of 8 and 24.
1211*1debfc3dSmrg
1212*1debfc3dSmrgMon Jun  8 14:40:02 1998  John Wehle  (john@feith.com)
1213*1debfc3dSmrg
1214*1debfc3dSmrg	* i386.md (movsf_push, movsf_mem): Remove.
1215*1debfc3dSmrg	(movsf_push): Rename from movsf_push_nomove and move in front of
1216*1debfc3dSmrg	movsf; allow memory operands during and after reload.
1217*1debfc3dSmrg	(movsf_push_memory): New pattern.
1218*1debfc3dSmrg	(movsf): Don't bother checking for push_operand.  If TARGET_MOVE and
1219*1debfc3dSmrg	both operands refer to memory then force operand[1] into a register.
1220*1debfc3dSmrg	(movsf_normal): Change to unnamed pattern.
1221*1debfc3dSmrg	Likewise for movdf, movxf, and friends.
1222*1debfc3dSmrg
1223*1debfc3dSmrgMon Jun  8 13:18:04 1998  Martin v. Löwis  <loewis@informatik.hu-berlin.de>
1224*1debfc3dSmrg
1225*1debfc3dSmrg	* Makefile.in (TREE_H): Add tree-check.h.
1226*1debfc3dSmrg	(tree-check.h, s-check, gencheck): New targets.
1227*1debfc3dSmrg	(STAGESTUFF): Add s-check.
1228*1debfc3dSmrg	* gencheck.c: New file.
1229*1debfc3dSmrg	* tree.c (tree_check, tree_class_check, expr_check): New functions.
1230*1debfc3dSmrg	* tree.h (TREE_CHECK, TREE_CLASS_CHECK): Define.
1231*1debfc3dSmrg	(TYPE_CHECK, DECL_CHECK): Define.
1232*1debfc3dSmrg	Modify all access macros to use generated checking macros.
1233*1debfc3dSmrg	* acconfig.h (ENABLE_CHECKING): Undefine.
1234*1debfc3dSmrg	* configure.in (--enable-checking): New option.
1235*1debfc3dSmrg
1236*1debfc3dSmrgMon Jun  8 12:13:25 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.ed>
1237*1debfc3dSmrg
1238*1debfc3dSmrg	* regmove.c: Remove include for varargs or stdarg.
1239*1debfc3dSmrg
1240*1debfc3dSmrgMon Jun  8 07:49:41 1998  Andris Pavenis   <pavenis@lanet.lv>
1241*1debfc3dSmrg
1242*1debfc3dSmrg	* gcc.c (link_command_spec): Support LINK_COMMAND_SPEC.
1243*1debfc3dSmrg
1244*1debfc3dSmrgSun Jun  7 18:00:28 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1245*1debfc3dSmrg
1246*1debfc3dSmrg	* fold-const.c (fold, case EQ_EXPR): When folding VAR++ == CONST
1247*1debfc3dSmrg	or VAR-- == CONST construct a proper mask if VAR is a bitfield.
1248*1debfc3dSmrg	Cope with CONST being out of range for the bitfield.
1249*1debfc3dSmrg
1250*1debfc3dSmrgSun Jun  7 17:19:35 1998  Tom Quiggle  <quiggle@sgi.com>
1251*1debfc3dSmrg
1252*1debfc3dSmrg	* mips/iris6.h (DWARF2_FRAME_INFO): Define.
1253*1debfc3dSmrg	* dwarf2out.c (dwarf2out_do_frame): Do something if DWARF2_FRAME_INFO.
1254*1debfc3dSmrg
1255*1debfc3dSmrgSun Jun  7 15:29:04 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1256*1debfc3dSmrg
1257*1debfc3dSmrg	* regmove.c: New file.
1258*1debfc3dSmrg	* Makefile.in (OBJS): Add regmove.o.
1259*1debfc3dSmrg	(regmove.o): New rules.
1260*1debfc3dSmrg	(mostlyclean): Remove regmove dumps.
1261*1debfc3dSmrg	* toplev.c (regmove_{dump,dump_file,time}, flag_regmove): New vars.
1262*1debfc3dSmrg	(f_options): Add -foptimize-register-move.
1263*1debfc3dSmrg	(compile_file): Run regmove pass after combine pass and do its dump.
1264*1debfc3dSmrg	(main): Enable regmove dump when -dN or -da.
1265*1debfc3dSmrg	(fatal_insn): Flush regmove dump file.
1266*1debfc3dSmrg	* flags.h (flag_regmove): Declare.
1267*1debfc3dSmrg	* flow.c (find_use_as_address): Export.
1268*1debfc3dSmrg	* rtl.h (find_use_as_address): Declare.
1269*1debfc3dSmrg	* local-alloc.c (optimize_reg_copy_{1,2}): Removed, all calls deleted.
1270*1debfc3dSmrg	* reload1.c (count_occurrences): Export.
1271*1debfc3dSmrg	* reload.h (count_occurrences): Declare.
1272*1debfc3dSmrg
1273*1debfc3dSmrgSun Jun  7 09:30:31 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1274*1debfc3dSmrg
1275*1debfc3dSmrg	* Makefile.in (uninstall): Uninstall gcov.
1276*1debfc3dSmrg
1277*1debfc3dSmrg	* alpha.h (ASM_COMMENT_START): Define.
1278*1debfc3dSmrg
1279*1debfc3dSmrg	* alpha.h (EXTRA_CONSTRAINT, case 'S'): New case.
1280*1debfc3dSmrg	* alpha.md ({ashl,ashr,lshr}di3): Use 'S' for constraint.
1281*1debfc3dSmrg
1282*1debfc3dSmrg	* i386.md (cmpxf): Add missing extend pattern from SFmode and fix
1283*1debfc3dSmrg	operand numbers in one extend pattern from DFmode.
1284*1debfc3dSmrg
1285*1debfc3dSmrg	* pa.md ({pre,post}_{ld,st}wm and similar): When operand is being
1286*1debfc3dSmrg	incremented, use '+', not '=', for constraint.
1287*1debfc3dSmrg
1288*1debfc3dSmrg	* reload.c (find_reloads): Give preference to pseudo that was the
1289*1debfc3dSmrg 	reloaded output of previous insn.
1290*1debfc3dSmrg
1291*1debfc3dSmrg	* emit-rtl.c (init_emit_once): Provide default for DOUBLE_TYPE_SIZE.
1292*1debfc3dSmrg
1293*1debfc3dSmrg	* expr.c (init_expr_once): Free all RTL we generate here.
1294*1debfc3dSmrg	* expmed.c (init_expmed): Allocate all RTX in memory we'll free.
1295*1debfc3dSmrg
1296*1debfc3dSmrg	* genemit.c (main): Generate #include "reload.h".
1297*1debfc3dSmrg
1298*1debfc3dSmrg	* expr.c (expand_expr, case INDIRECT_EXPR): A dereference of
1299*1debfc3dSmrg	a REFERENCE_TYPE is always considered in a structure.  Likewise for
1300*1debfc3dSmrg	a dereference of a NOP_EXPR whose input is a pointer to aggregate.
1301*1debfc3dSmrg
1302*1debfc3dSmrgSat Jun  6 17:25:14 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1303*1debfc3dSmrg
1304*1debfc3dSmrg	* mips.md (reload_{in,out}di): Allow other operand to be invalid
1305*1debfc3dSmrg	MEM and get any reload replacement before using address.
1306*1debfc3dSmrg
1307*1debfc3dSmrgTue May 26 18:52:23 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1308*1debfc3dSmrg
1309*1debfc3dSmrg	* reload1.c (reload): Get MEM_IN_STRUCT_P and RTX_UNCHANGING_P
1310*1debfc3dSmrg	from reg_equiv_memory_loc; set the latter when changing REG to MEM.
1311*1debfc3dSmrg	(alter_reg): Don't set RTX_UNCHANGING_P for shared slots.
1312*1debfc3dSmrg
1313*1debfc3dSmrgMon May 25 12:07:12 1998  Hans-Peter Nilsson  <hp@axis.se>
1314*1debfc3dSmrg
1315*1debfc3dSmrg	* cplus-dem.c (MBUF_SIZE): Bumped from 512 to 32767.
1316*1debfc3dSmrg
1317*1debfc3dSmrgSun May 24 21:50:12 1998  Alan Modra <alan@spri.levels.unisa.edu.au>
1318*1debfc3dSmrg
1319*1debfc3dSmrg	* i386/linux{,-aout,oldld}.h (ASM_COMMENT_START): Define.
1320*1debfc3dSmrg
1321*1debfc3dSmrgSun May 24 11:58:37 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1322*1debfc3dSmrg
1323*1debfc3dSmrg	* m68k.md (adddi3, subdi3): Properly negate the DImode constant.
1324*1debfc3dSmrg
1325*1debfc3dSmrgSun May 24 11:30:08 1998  Torbjorn Granlund  <tege@matematik.su.se>
1326*1debfc3dSmrg
1327*1debfc3dSmrg	* m68k/lb1sf68.asm (__addsf3): Fix typo in exg on coldfire.
1328*1debfc3dSmrg
1329*1debfc3dSmrgSun May 24 09:38:17 1998  John Wehle  (john@feith.com)
1330*1debfc3dSmrg
1331*1debfc3dSmrg	* i386.md (movsi): Remove redundant integer push patterns.
1332*1debfc3dSmrg	Don't check for TARGET_PUSH_MEMORY when pushing constants or registers.
1333*1debfc3dSmrg
1334*1debfc3dSmrgSun May 24 08:59:27 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1335*1debfc3dSmrg
1336*1debfc3dSmrg	* fold-const.c (fold, case EQ_EXPR): Split COMPLEX_TYPE operands
1337*1debfc3dSmrg	if either is COMPLEX_CST in addition to COMPLEX_EXPR.
1338*1debfc3dSmrg
1339*1debfc3dSmrg	* expr.c (do_jump, case EQ_EXPR, case NE_EXPR): Check for COMPLEX
1340*1debfc3dSmrg	before testing for operand 1 being zero.
1341*1debfc3dSmrg
1342*1debfc3dSmrg	* genattrtab.c (optimize): Define.
1343*1debfc3dSmrg
1344*1debfc3dSmrg	* configure.lang: Fix substitution of target_alias.
1345*1debfc3dSmrg
1346*1debfc3dSmrgSat May 23 22:31:17 1998  Michael P. Hayes  <michaelh@ongaonga.chch.cri.nz>
1347*1debfc3dSmrg
1348*1debfc3dSmrg	* emit_rtl.c (double_mode): New variable.
1349*1debfc3dSmrg	(init_emit_once): Set and use it.
1350*1debfc3dSmrg	* real.c (ereal_atof, real_value_truncate): Handle double_mode not
1351*1debfc3dSmrg	being DFmode for C4x.
1352*1debfc3dSmrg
1353*1debfc3dSmrgSat May 23 22:19:55 1998  Mike Stump  <mrs@wrs.com>
1354*1debfc3dSmrg
1355*1debfc3dSmrg	* expr.c (expand_builtin_setjmp): Handle BUILTIN_SETJMP_FRAME_VALUE.
1356*1debfc3dSmrg	* i960.h (SETUP_FRAME_ADDRESSES, BUILTIN_SETJMP_FRAME_VALUE): Define.
1357*1debfc3dSmrg	* i960.md (ret, flush_register_windows): Define.
1358*1debfc3dSmrg	(nonlocal_goto): Likewise.  Nested function nonlocal gotos don't
1359*1debfc3dSmrg	work yet.
1360*1debfc3dSmrg
1361*1debfc3dSmrgSat May 23 18:45:59 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1362*1debfc3dSmrg
1363*1debfc3dSmrg	* m68k/t-linux: Remove stuff already included in config/t-linux.
1364*1debfc3dSmrg
1365*1debfc3dSmrgSat May 23 18:35:07 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1366*1debfc3dSmrg
1367*1debfc3dSmrg	* final.c: Select <stab.h> and "gstab.h" with NO_STAB_H.
1368*1debfc3dSmrg
1369*1debfc3dSmrg	* gcc.c (default_compilers): Remove ".ada" extension.
1370*1debfc3dSmrg
1371*1debfc3dSmrg	* combine.c (rtx_equal_for_field_assignment): Remove code that
1372*1debfc3dSmrg	checks get_last_value.
1373*1debfc3dSmrg
1374*1debfc3dSmrg	* Makefile.in (uninstall): Delete info files.
1375*1debfc3dSmrg
1376*1debfc3dSmrgSat May 23 18:28:27 1998  Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
1377*1debfc3dSmrg
1378*1debfc3dSmrg	* c-decl.c (start_decl): Use new macro SET_DEFAULT_DECL_ATTRIBUTES.
1379*1debfc3dSmrg	* c-lex.c (check_newline): Put last read character back on input
1380*1debfc3dSmrg	stream.
1381*1debfc3dSmrg
1382*1debfc3dSmrgSat May 23 18:13:53 1998  David Edelsohn  <edelsohn@mhpcc.edu>
1383*1debfc3dSmrg
1384*1debfc3dSmrg	* rs6000.md (floatsidf2_loadaddr): rs6000_fpmem_offset will be
1385*1debfc3dSmrg	negative in a stackless frame.
1386*1debfc3dSmrg	* rs6000.c (rs6000_stack_info): Don't include fixed-size link area
1387*1debfc3dSmrg	in stackless frame size.  Support 64-bit stackless frame size.
1388*1debfc3dSmrg	Combine fpmem offset calculations and don't add total_size to
1389*1debfc3dSmrg	offset if not pushing a stack frame.
1390*1debfc3dSmrg
1391*1debfc3dSmrg	* tree.c (get_inner_array_type): New function.
1392*1debfc3dSmrg	* tree.h (get_inner_array_type): Likewise.
1393*1debfc3dSmrg
1394*1debfc3dSmrgWed May 20 15:42:22 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1395*1debfc3dSmrg
1396*1debfc3dSmrg	* expmed.c (expand_divmod): Save last divison constant and
1397*1debfc3dSmrg	if rem is same as div, don't adjust rem cost.
1398*1debfc3dSmrg
1399*1debfc3dSmrgThu May 14 14:11:37 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1400*1debfc3dSmrg
1401*1debfc3dSmrg	* alpha/vxworks.h: New file.
1402*1debfc3dSmrg	* configure.in (alpha*-*-vxworks*): New target.
1403*1debfc3dSmrg
1404*1debfc3dSmrg	* alpha.c (tree.h): Include earlier.
1405*1debfc3dSmrg	(alpha_initialize_trampoline): New function.
1406*1debfc3dSmrg	* alpha.h (INITIALIZE_TRAMPOLINE): Call it.
1407*1debfc3dSmrg	* alpha/linux.h (INITIALIZE_TRAMPOLINE): Don't redefine.
1408*1debfc3dSmrg
1409*1debfc3dSmrgThu May 14 13:35:53 1998  Cyrille Comar  <comar@gnat.com>
1410*1debfc3dSmrg
1411*1debfc3dSmrg	* Makefile.in (STAGESTUFF): Add s-under.
1412*1debfc3dSmrg
1413*1debfc3dSmrgWed May 13 17:38:35 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1414*1debfc3dSmrg
1415*1debfc3dSmrg	* combine.c (simplify_comparison, case AND): Don't commute AND
1416*1debfc3dSmrg	with SUBREG if constant is whole mode and don't do if lowpart
1417*1debfc3dSmrg	and not WORD_REGISTER_OPERATIONS.
1418*1debfc3dSmrg
1419*1debfc3dSmrg	* expmed.c (expand_mult): Use 0 as add_target if should preserve
1420*1debfc3dSmrg	subexpressions.
1421*1debfc3dSmrg
1422*1debfc3dSmrgMon May 11 17:26:06 1998  Paul Eggert  <eggert@twinsun.com>
1423*1debfc3dSmrg
1424*1debfc3dSmrg	* dwarf2out.c: Undo most recent change.
1425*1debfc3dSmrg
1426*1debfc3dSmrgSun May 10 17:09:20 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1427*1debfc3dSmrg
1428*1debfc3dSmrg	* fold-const.c (fold_range_test, fold): If need to make SAVE_EXPR
1429*1debfc3dSmrg	to do optimization, suppress if contains_placeholder_p.
1430*1debfc3dSmrg
1431*1debfc3dSmrgThu May  7 18:14:31  Paul Eggert  <eggert@twinsun.com>
1432*1debfc3dSmrg
1433*1debfc3dSmrg	* dwarf2out.c: Don't assume `.section ".text"' causes assembler to
1434*1debfc3dSmrg	treat .text as label for start of section; instead, output
1435*1debfc3dSmrg	`.section ".text"; .LLtext0:' and use .LLtext0 in label contexts.
1436*1debfc3dSmrg	(ABBREV_LABEL, DEBUG_INFO_LABEL, DEBUG_LINE_LABEL, TEXT_LABEL): New.
1437*1debfc3dSmrg	(abbrev_label, debug_info_label, debug_line_label, text_label): New.
1438*1debfc3dSmrg	(dwarf2out_init): Initialize the vars.  Output defn for text_label.
1439*1debfc3dSmrg	(dwarf2out_finish): Output defns for the other 3 vars.
1440*1debfc3dSmrg	(dw_val_node): Rename val_section to val_section_label, as it's
1441*1debfc3dSmrg	now a label, not a section.
1442*1debfc3dSmrg	(add_AT_section_offset): Arg is now a label, not a section.
1443*1debfc3dSmrg	(print_die): In label contexts, output section label, not section.
1444*1debfc3dSmrg	(output_die, output_compilation_unit_header): Likewise.
1445*1debfc3dSmrg	(output_{pubnames,aranges,line_info}, dwarf2out_finish): Likewise.
1446*1debfc3dSmrg
1447*1debfc3dSmrg	* fixinc.wrap: Renamed from fixinc.math.  Put wrapper around
1448*1debfc3dSmrg	curses.h if it contains `typedef char bool;'.
1449*1debfc3dSmrg
1450*1debfc3dSmrg	* configure.in (arm-*-netbsd*): Rename fixinc.math to fixinc.wrap.
1451*1debfc3dSmrg	(i[34567]86-*-freebsdelf*, i[34567]86-*-freebsd*): Likewise.
1452*1debfc3dSmrg	(i[34567]86-*-netbsd*, i[34567]86-*-solaris2*): Likewise.
1453*1debfc3dSmrg	(m68k-*-netbsd*, mips-dec-netbsd*, ns32k-pc532-netbsd*): Likewise.
1454*1debfc3dSmrg	(powerpcle-*-solaris2*, sparc-*-netbsd*, sparc-*-solaris2*): Likewise.
1455*1debfc3dSmrg	(vax-*-netbsd*): Likewie.
1456*1debfc3dSmrg
1457*1debfc3dSmrgWed May  6 06:44:28 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1458*1debfc3dSmrg
1459*1debfc3dSmrg	* combine.c (simplify_rtx, case TRUNCATE): Reflect that it sign-extends
1460*1debfc3dSmrg	instead of zero-extending.
1461*1debfc3dSmrg
1462*1debfc3dSmrgSat May  2 20:39:22 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1463*1debfc3dSmrg
1464*1debfc3dSmrg	* fold-const.c (fold): When commutting COND_EXPR and binary operation,
1465*1debfc3dSmrg	avoid quadratic behavior if have nested COND_EXPRs.
1466*1debfc3dSmrg
1467*1debfc3dSmrgTue Apr 28 17:30:05 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1468*1debfc3dSmrg
1469*1debfc3dSmrg	* mips.h (HOST_WIDE_INT): Define if not already.
1470*1debfc3dSmrg	(compute_frame_size, mips_debugger_offset): Return HOST_WIDE_INT.
1471*1debfc3dSmrg	(DEBUGGER_{AUTO,ARG}_OFFSET): Cast second arg to HOST_WIDE_INT.
1472*1debfc3dSmrg	* mips.c (mips_debugger_offset): Now returns HOST_WIDE_INT.
1473*1debfc3dSmrg	Likewise for internal variable frame_size.
1474*1debfc3dSmrg
1475*1debfc3dSmrg	* final.c (alter_subreg): Make new SUBREG if reload replacement
1476*1debfc3dSmrg	scheduled inside it.
1477*1debfc3dSmrg
1478*1debfc3dSmrg	* dwarf2out.c (add_bound_info, case SAVE_EXPR): Pass
1479*1debfc3dSmrg	SAVE_EXPR_RTL address through fix_lexical_addr.
1480*1debfc3dSmrg
1481*1debfc3dSmrgMon Apr 27 18:57:18 1998  Jim Wilson  <wilson@cygnus.com>
1482*1debfc3dSmrg
1483*1debfc3dSmrg	* mips/sni-svr4.h (CPP_PREDEFINES): Add -Dsinix and -DSNI.
1484*1debfc3dSmrg
1485*1debfc3dSmrgMon Apr 20 14:48:29 1998  Michael Meissner  <meissner@cygnus.com>
1486*1debfc3dSmrg
1487*1debfc3dSmrg	* rs6000.md (mov{sf,df} define_splits): When splitting move of
1488*1debfc3dSmrg	constant to int reg, don't split  insns that do simple AND and OR
1489*1debfc3dSmrg	operations; just split each word and let normal movsi define split
1490*1debfc3dSmrg	handle it further.
1491*1debfc3dSmrg
1492*1debfc3dSmrgSun Apr 19 20:21:19 1998  Michael P. Hayes  <michaelh@ongaonga.chch.cri.nz>
1493*1debfc3dSmrg
1494*1debfc3dSmrg	* real.h (C4X_FLOAT_FORMAT): New macro.
1495*1debfc3dSmrg	* real.c (c4xtoe, etoc4x, toc4x): New functions.
1496*1debfc3dSmrg
1497*1debfc3dSmrgSun Apr 19 20:17:32 1998  Niklas Hallqvist  <niklas@petra.appli.se>
1498*1debfc3dSmrg
1499*1debfc3dSmrg	* m68k.c (notice_update_cc): Use modified_in_p to check for update.
1500*1debfc3dSmrg
1501*1debfc3dSmrgSun Apr 19 18:48:07 1998  K. Richard Pixley  <rich@kyoto.noir.com>
1502*1debfc3dSmrg
1503*1debfc3dSmrg	* fixincludes: Discard empty C++ comments.
1504*1debfc3dSmrg	Special case more files with C++ comments nested in C comments.
1505*1debfc3dSmrg
1506*1debfc3dSmrgSun Apr 19 18:30:11 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1507*1debfc3dSmrg
1508*1debfc3dSmrg	* m68k.md ({add,sub}di3): Optimize for constant operand.
1509*1debfc3dSmrg
1510*1debfc3dSmrgSun Apr 19 18:27:11 1998  Alan Modra <alan@spri.levels.unisa.edu.au>
1511*1debfc3dSmrg
1512*1debfc3dSmrg	* i386.c (output_387_binary_op): Swap operands when popping if result
1513*1debfc3dSmrg	is st(0).
1514*1debfc3dSmrg
1515*1debfc3dSmrgSun Apr 19 17:58:01 1998  Peter Jeremy  <peter.jeremy@alcatel.com.au>
1516*1debfc3dSmrg
1517*1debfc3dSmrg	* expr.c (do_jump_by_parts_equality_rtx): Now public.
1518*1debfc3dSmrg	* expmed.c (do_cmp_and_jump): New function.
1519*1debfc3dSmrg	(expand_divmod): Use do_cmp_and_jmp instead of emit_cmp_insn and
1520*1debfc3dSmrg	emit_jump_insn.
1521*1debfc3dSmrg
1522*1debfc3dSmrgSun Apr 19 07:48:37 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1523*1debfc3dSmrg
1524*1debfc3dSmrg	* c-typeck.c (build_c_cast): Check underlying type when seeing
1525*1debfc3dSmrg	if discarding const or volatile.
1526*1debfc3dSmrg
1527*1debfc3dSmrg	* c-decl.c (pushdecl): Avoid duplicate warning about implicit redecl.
1528*1debfc3dSmrg
1529*1debfc3dSmrg	* configure.in (stab.h): Check for it.
1530*1debfc3dSmrg	(i386-*-vsta): Include xm-i386.h too.
1531*1debfc3dSmrg	* dbxout.c (stab.h): Include based on autoconf results.
1532*1debfc3dSmrg	* vax/xm-vms.h (NO_STAB_H): Deleted.
1533*1debfc3dSmrg	* alpha/xm-vms.h, xm-mips.h, i386/xm-mingw32.h, i386/go32.h: Likewise.
1534*1debfc3dSmrg	* i386/xm-cygwin32.h: Likewise.
1535*1debfc3dSmrg	* i386/xm-vsta.h (NO_STAB_H): Likewise.
1536*1debfc3dSmrg	(i386/xm-i386.h): No longer include.
1537*1debfc3dSmrg
1538*1debfc3dSmrg	* mips.c: Cleanups and reformatting throughout.
1539*1debfc3dSmrg	({expand,output}_block_move): Use HOST_WIDE_INT for sizes.
1540*1debfc3dSmrg	(mips_debugger_offset, compute_frame_size): Likewise.
1541*1debfc3dSmrg	(save_restore_insns, mips_expand_{pro,epi}logue): Likewise.
1542*1debfc3dSmrg	(siginfo): Deleted.
1543*1debfc3dSmrg	(override_options): Don't set up to call it; don't call setvbuf.
1544*1debfc3dSmrg
1545*1debfc3dSmrgMon Apr 13 06:40:17 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1546*1debfc3dSmrg
1547*1debfc3dSmrg	* configure.in (sparc-*-vxsim*): Include xm-siglist.h and
1548*1debfc3dSmrg	define USG and POSIX.
1549*1debfc3dSmrg
1550*1debfc3dSmrgSun Apr 12 21:59:27 1998  Jeffrey A. Law  <law@cygnus.com>
1551*1debfc3dSmrg
1552*1debfc3dSmrg	* calls.c (expand_call): Fix typo in STRICT_ARGUMENT_NAMING.
1553*1debfc3dSmrg
1554*1debfc3dSmrgSun Apr 12 21:42:23 1998  D. Karthikeyan  <karthik@cdotd.ernet.in>
1555*1debfc3dSmrg
1556*1debfc3dSmrg	* m68k.h (TARGET_SWITCHES): Add missing comma.
1557*1debfc3dSmrg
1558*1debfc3dSmrgSun Apr 12 21:33:33 1998  Eric Valette  <valette@crf.canon.fr>
1559*1debfc3dSmrg
1560*1debfc3dSmrg	* configure.in (i[34567]86-*-rtemself*): New configuration.
1561*1debfc3dSmrg	* i386/rtemself.h: New file.
1562*1debfc3dSmrg
1563*1debfc3dSmrgSun Apr 12 21:08:28 1998  Jim Wilson  <wilson@cygnus.com>
1564*1debfc3dSmrg
1565*1debfc3dSmrg	* loop.c (loop_optimize): Reset max_uid_for_loop after
1566*1debfc3dSmrg	find_and_verify_loops call.
1567*1debfc3dSmrg	(strength_reduce): In auto_inc_opt code, verify v->insn has valid
1568*1debfc3dSmrg	INSN_LUID.
1569*1debfc3dSmrg
1570*1debfc3dSmrgSun Apr 12 20:54:59 1998  Richard Earnshaw (rearnsha@arm.com)
1571*1debfc3dSmrg
1572*1debfc3dSmrg	* configure.in (sparc-*-solaris2*): Add xm-siglist.h to xm_file.
1573*1debfc3dSmrg	Add USG and POSIX to xm_defines.
1574*1debfc3dSmrg
1575*1debfc3dSmrgSun Apr 12 20:47:37 1998  Pat Rankin  <rankin@eql.caltech.edu>
1576*1debfc3dSmrg
1577*1debfc3dSmrg	* cccp.c (eprint_string): New function.
1578*1debfc3dSmrg	(do_elif, do_else, verror): Use it instead of fwrite(,,,stderr).
1579*1debfc3dSmrg	(error_from_errno, vwarning): Likewise.
1580*1debfc3dSmrg	({verror,vwarning,pedwarn}_with_line): Likewise.
1581*1debfc3dSmrg	(pedwarn_with_file_and_line, print_containing_files): Likewise.
1582*1debfc3dSmrg
1583*1debfc3dSmrgSun Apr 12 20:40:44 1998  Richard Henderson  <rth@dot.cygnus.com>
1584*1debfc3dSmrg
1585*1debfc3dSmrg	* configure.in (alpha*-*-linux-gnu*): Add alpha/t-crtbe.
1586*1debfc3dSmrg	Add crt{begin,end}.o in extra_parts and delete crt{begin,end}S.o.o
1587*1debfc3dSmrg	* alpha/t-crtbe, alpha/crt{begin,end}.asm: New files.
1588*1debfc3dSmrg
1589*1debfc3dSmrg	* alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Accept '(' for s/sv/svi.
1590*1debfc3dSmrg	* alpha.c (print_operand): Handle it.
1591*1debfc3dSmrg	* alpha.md (fix_trunc[ds]fdi2): Use it.  Add earlyclobber pattern
1592*1debfc3dSmrg	for ALPHA_TP_INSN.
1593*1debfc3dSmrg
1594*1debfc3dSmrgSun Apr 12 13:09:46 1998  Scott Christley  <scottc@net-community.com>
1595*1debfc3dSmrg
1596*1debfc3dSmrg	* objc/encoding.c (objc_sizeof_type, _C_VOID): New case.
1597*1debfc3dSmrg
1598*1debfc3dSmrgSun Apr 12 13:04:55 1998  Nikolay Yatsenko  (nikolay@osf.org)
1599*1debfc3dSmrg
1600*1debfc3dSmrg	* configure.in (i[34567]86-*-osf1*): New entry.
1601*1debfc3dSmrg	* i386/osf1-c[in].asm: New files for OSF/1.
1602*1debfc3dSmrg	* i386/osf1elf{,gdb}.h, i386/[xt]-osf1elf, i386/xm-osf1elf.h: Likewise.
1603*1debfc3dSmrg
1604*1debfc3dSmrgSun Apr 12 10:03:51 1998  Noel Cragg  <noel@red-bean.com>
1605*1debfc3dSmrg
1606*1debfc3dSmrg	* fixincludes: Remove specification of parameters when renaming
1607*1debfc3dSmrg	functions in Alpha DEC Unix include files.
1608*1debfc3dSmrg
1609*1debfc3dSmrgSun Apr 12 07:33:46 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1610*1debfc3dSmrg
1611*1debfc3dSmrg	* mips.c (large_int): Use HOST_WIDE_INT, not int.
1612*1debfc3dSmrg	(print_operand): Use HOST_WIDE_INT_PRINT_* macros.
1613*1debfc3dSmrg
1614*1debfc3dSmrg	* toplev.c (main): Sort order of handling of -d letters.
1615*1debfc3dSmrg	Use `F' instead of `D' for addressof_dump.
1616*1debfc3dSmrg
1617*1debfc3dSmrg	* libgcc2.c (_eh_compat): Deleted.
1618*1debfc3dSmrg	* Makefile.in (LIB2FUNCS): Delete _eh_compat.
1619*1debfc3dSmrg
1620*1debfc3dSmrg	* configure.in (alpha*-*-linux-gnu*): Don't include alpha/xm-linux.h.
1621*1debfc3dSmrg
1622*1debfc3dSmrg	* c-common.c (check_format_info): Properly test for nested pointers.
1623*1debfc3dSmrg
1624*1debfc3dSmrg	* pa.md (casesi0): Add missing mode for operand 0.
1625*1debfc3dSmrg
1626*1debfc3dSmrg	* function.c (purge_addressof_1, case MEM): If BLKmode, put ADDRESSOF
1627*1debfc3dSmrg	into stack.
1628*1debfc3dSmrg
1629*1debfc3dSmrg	* c-parse.in (label): Give warning if pedantic and label not integral.
1630*1debfc3dSmrg
1631*1debfc3dSmrg	* c-decl.c (grokdeclarator): Don't warn about return type if in
1632*1debfc3dSmrg	system header.
1633*1debfc3dSmrg
1634*1debfc3dSmrg	* reload.c (reload_nongroup): New variable.
1635*1debfc3dSmrg	(push{_secondary,}_reload): Initialize it.
1636*1debfc3dSmrg	(find_reloads): Compute it.
1637*1debfc3dSmrg	(debug_reload): Print it.
1638*1debfc3dSmrg	* reload.h (reload_nongroup): Declare.
1639*1debfc3dSmrg	* reload1.c (reload): Use reload_nongroup instead of local computation.
1640*1debfc3dSmrg	Check caller_save_spill_class against any nongroup reloads.
1641*1debfc3dSmrg	(reloads_conflict): No longer static.
1642*1debfc3dSmrg
1643*1debfc3dSmrgSun Apr 12 05:52:18 1998  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1644*1debfc3dSmrg
1645*1debfc3dSmrg	* vax.md (call patterns): Operand 1 is always a CONST_INT.
1646*1debfc3dSmrg
1647*1debfc3dSmrgSat Apr 11 16:01:11 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1648*1debfc3dSmrg
1649*1debfc3dSmrg	* convert.c (convert_to_{pointer,integer,real,complex}): Use switch.
1650*1debfc3dSmrg	Add missing integer-like types.
1651*1debfc3dSmrg	Simplify return of zero in error case.
1652*1debfc3dSmrg	(convert_to_pointer): Remove dubious abort.
1653*1debfc3dSmrg	(convert_to_integer, case POINTER_TYPE): Make recursive call.
1654*1debfc3dSmrg	(convert_to_integer, case COND_EXPR): Always convert arms.
1655*1debfc3dSmrg	* tree.c (type_precision): Deleted.
1656*1debfc3dSmrg
1657*1debfc3dSmrg	* cccp.c (do_warning): Give pedantic warning if -pedantic and not
1658*1debfc3dSmrg	in system file.
1659*1debfc3dSmrg	* cpplib.c (do_warning): Likewise.
1660*1debfc3dSmrg
1661*1debfc3dSmrg	* function.c (target_temp_slot_level): Define here.
1662*1debfc3dSmrg	(push_temp_slots_for_target, {get,set}_target_temp_slot_level): New.
1663*1debfc3dSmrg	* stmt.c (target_temp_slot_level): Don't define here.
1664*1debfc3dSmrg	* expr.h (temp_slot_level): New declaration.
1665*1debfc3dSmrg
1666*1debfc3dSmrgFri Apr 10 16:35:48 1998  Paul Eggert  <eggert@twinsun.com>
1667*1debfc3dSmrg
1668*1debfc3dSmrg	* c-common.c (decl_attributes): Support strftime format checking.
1669*1debfc3dSmrg	(record_function_format, {check,init_function}_format_info): Likewise.
1670*1debfc3dSmrg	(enum format_type): New type.
1671*1debfc3dSmrg	(record_function_format): Now static; takes value of type
1672*1debfc3dSmrg	enum format_type instead of int.
1673*1debfc3dSmrg	(time_char_table): New constant.
1674*1debfc3dSmrg	(struct function_format_info): format_type member renamed from is_scan.
1675*1debfc3dSmrg	(check_format_info): Use `warning' rather than sprintf followed by
1676*1debfc3dSmrg	`warning', to avoid mishandling `%' in warnings.
1677*1debfc3dSmrg	Change a `pedwarn' to `warning'.
1678*1debfc3dSmrg	* c-tree.h (record_function_format): Remove decl.
1679*1debfc3dSmrg
1680*1debfc3dSmrgThu Apr  2 17:34:27 1998  Manfred Hollstein  <manfred@s-direktnet.de>
1681*1debfc3dSmrg
1682*1debfc3dSmrg	* regclass.c (memory_move_secondary_cost): Protect uses of
1683*1debfc3dSmrg	SECONDARY_{INPUT,OUTPUT}_RELOAD_CLASS with #ifdef tests.
1684*1debfc3dSmrg
1685*1debfc3dSmrgThu Apr  2 07:06:57 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1686*1debfc3dSmrg
1687*1debfc3dSmrg	* m68k.c (standard_68881_constant_p): Don't use fmovecr on 68060.
1688*1debfc3dSmrg
1689*1debfc3dSmrgThu Apr  2 06:19:25 1998  Ken Raeburn  <raeburn@cygnus.com>
1690*1debfc3dSmrg
1691*1debfc3dSmrg	* Makefile.in (version.c): Put "cvs log" output in build directory.
1692*1debfc3dSmrg
1693*1debfc3dSmrg	* reload.h (MEMORY_MOVE_COST): Define here if not already defined.
1694*1debfc3dSmrg	(memory_move_secondary_cost): Declare.
1695*1debfc3dSmrg	* regclass.c (MEMORY_MOVE_COST): Don't define default here.
1696*1debfc3dSmrg	(memory_move_secondary_cost) [HAVE_SECONDARY_RELOADS]: New function.
1697*1debfc3dSmrg	(regclass, record_reg_classes, copy_cost, record_address_regs):
1698*1debfc3dSmrg	Pass register class and direction of move to MEMORY_MOVE_COST.
1699*1debfc3dSmrg	(top_of_stack) [HAVE_SECONDARY_RELOADS]: New static array.
1700*1debfc3dSmrg	(init_regs) [HAVE_SECONDARY_RELOADS]: Initialize it.
1701*1debfc3dSmrg	* reload1.c (MEMORY_MOVE_COST): Don't define default here.
1702*1debfc3dSmrg	(emit_reload_insns, reload_cse_simplify_set): Pass register class
1703*1debfc3dSmrg	and direction of move to MEMORY_MOVE_COST.
1704*1debfc3dSmrg	* 1750a.h (MEMORY_MOVE_COST): Add extra ignored arguments.
1705*1debfc3dSmrg	* a29k.h, alpha.h, arc.h, arm.h, dsp16xx.h, i386.h, m32r.h: Likewise.
1706*1debfc3dSmrg	* m88k.h, rs6000.h: Likewise.
1707*1debfc3dSmrg	* mips.h (MEMORY_MOVE_COST): Likewise.
1708*1debfc3dSmrg	Add memory_move_secondary_cost result to cpu-specific cost.
1709*1debfc3dSmrg
1710*1debfc3dSmrgMon Mar 30 13:56:30 1998  Jim Wilson  <wilson@cygnus.com>
1711*1debfc3dSmrg
1712*1debfc3dSmrg	* mips/ultrix.h (SUBTARGET_CPP_SPEC): Define.
1713*1debfc3dSmrg
1714*1debfc3dSmrgWed Mar 25 16:09:01 1998  Michael Meissner  <meissner@cygnus.com>
1715*1debfc3dSmrg
1716*1debfc3dSmrg	* rs6000.h (FUNCTION_ARG_PADDING): Cast result to be enum direction.
1717*1debfc3dSmrg	(function_arg_padding): Declare.
1718*1debfc3dSmrg
1719*1debfc3dSmrg	* rs6000.c: Include stdlib.h if we have it.
1720*1debfc3dSmrg	(function_arg_padding): Change return type to int, cast enum's to int.
1721*1debfc3dSmrg
1722*1debfc3dSmrg	(From Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>)
1723*1debfc3dSmrg	* rs6000.c (rs6000_override_options): Change type of `i', `j' and
1724*1debfc3dSmrg	`ptt_size' from int to size_t.
1725*1debfc3dSmrg	(rs6000_file_start): Likewise for `i'.
1726*1debfc3dSmrg	(rs6000_replace_regno): Add default case in enumeration switch.
1727*1debfc3dSmrg	(output_epilog): Remove unused variable `i'.
1728*1debfc3dSmrg	(rs6000_longcall_ref): Remove unused variables `len', `p', `reg[12]'.
1729*1debfc3dSmrg
1730*1debfc3dSmrg	* rs6000.h (ADDITIONAL_REGISTER_NAMES): Add missing braces around
1731*1debfc3dSmrg	initializer.
1732*1debfc3dSmrg	(get_issue_rate, non_logical_cint_operand): Add prototype.
1733*1debfc3dSmrg	(rs6000_output_load_toc_table): Likewise.
1734*1debfc3dSmrg
1735*1debfc3dSmrg	* rs6000.md (udivmodsi4): Add explicit braces to avoid ambiguous
1736*1debfc3dSmrg	`else'.
1737*1debfc3dSmrg
1738*1debfc3dSmrgWed Mar 25 02:39:01 1998  Paul Eggert  <eggert@twinsun.com>
1739*1debfc3dSmrg
1740*1debfc3dSmrg	* configure.in (i[34567]86-*-solaris2*, powerpcle-*-solaris2*,
1741*1debfc3dSmrg	sparc-*-solaris2*): Use fixinc.svr4 if Solaris 2.0 through 2.4.
1742*1debfc3dSmrg
1743*1debfc3dSmrgMon Mar 23 07:27:19 1998  Philippe De Muyter  <phdm@macqel.be>
1744*1debfc3dSmrg
1745*1debfc3dSmrg	* m68k.md (ashldi_const): Allow shift count in range ]32,63].
1746*1debfc3dSmrg	(ashldi3): Allow constant shift count in range ]32,63].
1747*1debfc3dSmrg	(ashrdi_const, ashrid3, lshrdi_const, lshrdi3): Likewise.
1748*1debfc3dSmrg
1749*1debfc3dSmrg	* m68k.md (zero_extend[qh]idi2, iordi_zext): New patterns.
1750*1debfc3dSmrg	(zero_extendsidi2): Avoid useless copy.
1751*1debfc3dSmrg	(iorsi_zexthi_ashl16): Avoid "0" constraint for operand 2.
1752*1debfc3dSmrg	(iorsi_zext): New name for old unnamed pattern; indentation fixes.
1753*1debfc3dSmrg
1754*1debfc3dSmrgMon Mar 23 07:12:05 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1755*1debfc3dSmrg
1756*1debfc3dSmrg	* final.c (only_leaf_regs_used): If pic_offset_table_rtx used,
1757*1debfc3dSmrg	make sure it is a permitted register.
1758*1debfc3dSmrg
1759*1debfc3dSmrgSun Mar 22 06:57:04 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1760*1debfc3dSmrg
1761*1debfc3dSmrg	* expmed.c (extract_bit_field): Don't confuse SUBREG_WORD with
1762*1debfc3dSmrg	endian adjustment in SUBREG case.
1763*1debfc3dSmrg	Don't abort if can't make SUBREG needed for extv/extzv.
1764*1debfc3dSmrg
1765*1debfc3dSmrgSat Mar 21 08:02:17 1998  Richard Gorton  <gorton@amt.tay1.dec.com>
1766*1debfc3dSmrg
1767*1debfc3dSmrg        * alpha.md (zero_extendqi[hsd]i2): Use "and", not "zapnot".
1768*1debfc3dSmrg
1769*1debfc3dSmrgSat Mar 21 07:47:04 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1770*1debfc3dSmrg
1771*1debfc3dSmrg	* unroll.c (verify_addresses): Use validate_replace_rtx.
1772*1debfc3dSmrg	(find_splittable_givs): If invalid address, show nothing same_insn.
1773*1debfc3dSmrg
1774*1debfc3dSmrgFri Mar 20 10:24:12 1998  Philippe De Muyter  <phdm@macqel.be>
1775*1debfc3dSmrg
1776*1debfc3dSmrg	* fold-const.c (fold, case CONVERT_EXPR): Replace sign-extension of
1777*1debfc3dSmrg	a zero-extended value by a single zero-extension.
1778*1debfc3dSmrg
1779*1debfc3dSmrgThu Mar 19 14:59:32 1998  Andrew Pochinsky  <avp@ctp.mit.edu>
1780*1debfc3dSmrg
1781*1debfc3dSmrg	* sparc.h (ASM_OUTPUT_LOOP_ALIGN): Fix error in last change.
1782*1debfc3dSmrg
1783*1debfc3dSmrgThu Mar 19 14:48:35 1998  Michael Meissner  <meissner@cygnus.com>
1784*1debfc3dSmrg
1785*1debfc3dSmrg	* gcc.c (default_arg): Don't wander off the end of allocated memory.
1786*1debfc3dSmrg
1787*1debfc3dSmrg	* rs6000/sysv4.h (RELATIVE_PREFIX_NOT_LINKDIR): Undef for System V
1788*1debfc3dSmrg	and EABI.
1789*1debfc3dSmrg
1790*1debfc3dSmrgThu Mar 19 06:17:59 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1791*1debfc3dSmrg
1792*1debfc3dSmrg	* Makefile.in (toplev.o): Depend on Makefile.
1793*1debfc3dSmrg
1794*1debfc3dSmrgWed Mar 18 17:40:09 1998  Michael P. Hayes  <michaelh@ongaonga.chch.cri.nz>
1795*1debfc3dSmrg
1796*1debfc3dSmrg	* expr.c (convert_move): Add [QH]Imode/P[QH]Imode conversions.
1797*1debfc3dSmrg	* machmode.def (PQImode, PHImode): New modes.
1798*1debfc3dSmrg
1799*1debfc3dSmrgWed Mar 18 17:11:18 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1800*1debfc3dSmrg
1801*1debfc3dSmrg	* m68k.md (movsf+1): Optimize moving a CONST_DOUBLE zero.
1802*1debfc3dSmrg
1803*1debfc3dSmrgWed Mar 18 17:07:54 1998  Ken Raeburn  <raeburn@cygnus.com>
1804*1debfc3dSmrg
1805*1debfc3dSmrg	* regclass.c (init_reg_sets): Delete init of reg-move cost tables.
1806*1debfc3dSmrg	(init_reg_sets_1): Put it here.
1807*1debfc3dSmrg
1808*1debfc3dSmrgWed Mar 18 16:43:11 1998  Jim Wilson  <wilson@cygnus.com>
1809*1debfc3dSmrg
1810*1debfc3dSmrg	* i960.md (tablejump): Handle flag_pic.
1811*1debfc3dSmrg
1812*1debfc3dSmrg	* profile.c (branch_prob): If see computed goto, call fatal.
1813*1debfc3dSmrg
1814*1debfc3dSmrg	* calls.c (expand_call): Fix typos in n_named_args computation.
1815*1debfc3dSmrg
1816*1debfc3dSmrgWed Mar 18 05:54:25 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1817*1debfc3dSmrg
1818*1debfc3dSmrg	* fold-const.c (operand_equal_for_comparison_p): See if equal
1819*1debfc3dSmrg	when nop conversions are removed.
1820*1debfc3dSmrg
1821*1debfc3dSmrg	* expr.c (expand_expr, case COND_EXPR): If have conditional move,
1822*1debfc3dSmrg	don't use ORIGINAL_TARGET unless REG.
1823*1debfc3dSmrg
1824*1debfc3dSmrg	* function.c (fixup_var_refs_insns): Also delete insn storing pseudo
1825*1debfc3dSmrg	back into arg list.
1826*1debfc3dSmrg
1827*1debfc3dSmrg	* combine.c (gen_binary): Don't make AND that does nothing.
1828*1debfc3dSmrg	(simplify_comparison, case AND): Commute AND and SUBREG.
1829*1debfc3dSmrg	* i386.h (CONST_CONSTS, case CONST_INT): One-byte integers are cost 0.
1830*1debfc3dSmrg
1831*1debfc3dSmrgMon Mar 16 15:57:17 1998  Geoffrey Keating  <geoffk@ozemail.com.au>
1832*1debfc3dSmrg
1833*1debfc3dSmrg	* rs6000.c (small_data_operand): Ensure any address referenced
1834*1debfc3dSmrg	relative to small data area is inside SDA.
1835*1debfc3dSmrg
1836*1debfc3dSmrgSun Mar 15 16:01:19 1998  Andrew Pochinsky  <avp@ctp.mit.edu>
1837*1debfc3dSmrg
1838*1debfc3dSmrg	* sparc.h (ASM_OUTPUT_LOOP_ALIGN): Write nop's.
1839*1debfc3dSmrg
1840*1debfc3dSmrgSun Mar 15 15:53:39 1998  Philippe De Muyter  <phdm@macqel.be>
1841*1debfc3dSmrg
1842*1debfc3dSmrg	* libgcc2.c (exit): Don't call __bb_exit_func if HAVE_ATEXIT.
1843*1debfc3dSmrg
1844*1debfc3dSmrgSun Mar 15 15:44:41 1998  Paul Eggert  <eggert@twinsun.com>
1845*1debfc3dSmrg
1846*1debfc3dSmrg	* cccp.c: Fix bugs relating to NUL in input file name,
1847*1debfc3dSmrg	e.g. with `#line 2 "x\0y"'.
1848*1debfc3dSmrg	(PRINTF_PROTO_4): New macro.
1849*1debfc3dSmrg	(struct {file_buf,definition,if_stack}): New member nominal_fname_len.
1850*1debfc3dSmrg	(main, expand_to_temp_buffer): Store length of input file names.
1851*1debfc3dSmrg	(finclude, create_definition, do_line, conditional_skip): Likewise.
1852*1debfc3dSmrg	(skip_if_group, macroexpand): Likewise.
1853*1debfc3dSmrg	(make_{definition,undef,assertion}): Likewise.
1854*1debfc3dSmrg	(special_symbol, do_include): Use stored length of input file names.
1855*1debfc3dSmrg	(do_define, do_elif, do_else, output_line_directive, verror): Likewise.
1856*1debfc3dSmrg	(error_from_errno, vwarning, verror_with_line): Likewise.
1857*1debfc3dSmrg	(vwarning_with_line, pedwarn_with_file_and_line): Likewise.
1858*1debfc3dSmrg	(print_containing_files): Likewise.
1859*1debfc3dSmrg	(do_line): Fix off-by-1 problem: 1 too many bytes were being allocated.
1860*1debfc3dSmrg	(quote_string, pedwarn_with_file_and_line): New arg specifies length.
1861*1debfc3dSmrg	All callers changed.
1862*1debfc3dSmrg
1863*1debfc3dSmrgSun Mar 15 15:38:16 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1864*1debfc3dSmrg
1865*1debfc3dSmrg	* c-typeck.c: Collect pending initializers in AVL tree instead of list.
1866*1debfc3dSmrg	(add_pending_init, pending_init_member): New functions.
1867*1debfc3dSmrg	(output_init_element): Use them.
1868*1debfc3dSmrg	(output_pending_init_elements): Rewritten to exploit AVL order.
1869*1debfc3dSmrg
1870*1debfc3dSmrgSun Mar 15 05:10:49 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1871*1debfc3dSmrg
1872*1debfc3dSmrg	* gnu.h (GNU_CPP_PREDEFINES): Deleted; not valid in traditional C.
1873*1debfc3dSmrg	* {i386,mips}/gnu.h (CPP_PREDEFINES): Don't call GNU_CPP_PREDEFINES.
1874*1debfc3dSmrg
1875*1debfc3dSmrg	* flow.c (insn_dead_p): A CLOBBER of a dead pseudo is dead.
1876*1debfc3dSmrg
1877*1debfc3dSmrg	* alpha.h (REG_ALLOC_ORDER): Put $f1 after other nonsaved.
1878*1debfc3dSmrg
1879*1debfc3dSmrg	* sparc.c (sparc_type_code): Fix error in previous change.
1880*1debfc3dSmrg
1881*1debfc3dSmrgSat Mar 14 05:45:21 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1882*1debfc3dSmrg
1883*1debfc3dSmrg	* i386/xm-aix.h, i386/xm-osf.h (i386/xm-i386.h): Don't include.
1884*1debfc3dSmrg	(USG): Don't define.
1885*1debfc3dSmrg	* i386/xm-isc.h (i386/xm-sysv3.h): Don't include.
1886*1debfc3dSmrg	* i386/xm-sco.h (i386/xm-sysv3.h): Likewise.
1887*1debfc3dSmrg	(BROKEN_LDEXP, SMALL_ARG_MAX, NO_SYS_SIGLIST): Don't define.
1888*1debfc3dSmrg	* m68k/xm-3b1.h (m68k/xm-m68k.h): Don't include.
1889*1debfc3dSmrg	(USG): Don't define.
1890*1debfc3dSmrg	* m68k/xm-atari.h (m68k/xm-m68kv.h): Don't include.
1891*1debfc3dSmrg	(HAVE_VPRINTF, FULL_PROTOTYPES): Don't define.
1892*1debfc3dSmrg	* m68k/xm-crds.h (m68k/xm-m68k.h): Don't include.
1893*1debfc3dSmrg	(USE_C_ALLOCA, unos, USG): Don't define.
1894*1debfc3dSmrg	* m68k/xm-mot3300.h (m68k/xm-m68k.h): Don't include.
1895*1debfc3dSmrg	(USE_C_ALLOCA, NO_SYS_SIGLIST): Don't define.
1896*1debfc3dSmrg	* m68k/xm-plexus.h (m68k/xm-m68k.h): Don't include.
1897*1debfc3dSmrg	(USE_C_ALLOCA, USG): Don't define.
1898*1debfc3dSmrg	* m88k/xm-sysv3.h (m88k/xm-m88k.h): Don't include.
1899*1debfc3dSmrg	* m68k/xm-next.h (m68k/xm-m68k.h): Don't include.
1900*1debfc3dSmrg	* ns32k/xm-pc532-min.h (ns32k/xm-ns32k.h): Don't include.
1901*1debfc3dSmrg	(USG): Don't define.
1902*1debfc3dSmrg	* rs6000/xm-mach.h: Don't include xm-rs6000.h.
1903*1debfc3dSmrg	* rs6000/xm-cygwin32.h (rs6000/xm-rs6000.h): Don't include.
1904*1debfc3dSmrg	(NO_STAB_H): Don't define.
1905*1debfc3dSmrg	* sparc/xm-linux.h (xm-linux.h): Don't include.
1906*1debfc3dSmrg	* sparc/xm-sol2.h (sparc/xm-sysv4.h): Don't include.
1907*1debfc3dSmrg	* a29k/xm-unix.h, alpha/xm-linux.h, arm/xm-linux.h: Deleted.
1908*1debfc3dSmrg	* arm/xm-netbsd.h, i386/xm-bsd386.h, i386/xm-gnu.h: Deleted.
1909*1debfc3dSmrg	* i386/xm-linux.h, i386/xm-sun.h, i386/xm-sysv3.h: Deleted.
1910*1debfc3dSmrg	* i386/xm-winnt.h,  m68k/xm-altos3068.h, m68k/xm-amix.h: Deleted.
1911*1debfc3dSmrg	* m68k/xm-amix.h, m68k/xm-hp320.h, m68k/xm-linux.h: Deleted.
1912*1debfc3dSmrg	* m68k/xm-m68kv.h, mips/xm-iris5.h, ns32k/xm-genix.h: Deleted.
1913*1debfc3dSmrg	* sparc/xm-pbd.h, vax/xm-vaxv.h, xm-svr3.h, xm-linux.h: Deleted.
1914*1debfc3dSmrg	* configure.in: Reflect above changes.
1915*1debfc3dSmrg
1916*1debfc3dSmrg	* xm-siglist.h, xm-alloca.h: New files.
1917*1debfc3dSmrg	* i386/xm-sysv4.h (i386/xm-i386.h, xm-svr4.h): Don't include.
1918*1debfc3dSmrg	(USE_C_ALLOCA, SMALL_ARG_MAX): Don't define.
1919*1debfc3dSmrg	* i386/xm-sco5.h (i386/xm-sysv3.h): Don't include.
1920*1debfc3dSmrg	(SYS_SIGLIST_DECLARED, USE_C_ALLOCA): Don't define.
1921*1debfc3dSmrg	* rs6000/xm-sysv4.h, sparc/xm-sysv4.h: Don't include xm-svr4.h.
1922*1debfc3dSmrg	* xm-svr4.h, i386/xm-dgux.h, mips/xm-news.h, mips/xm-sysv4.h: Deleted.
1923*1debfc3dSmrg	* configure.in: Reflect above changes.
1924*1debfc3dSmrg
1925*1debfc3dSmrg	* configure.in ({,host_,build_}xm_defines): New variables.
1926*1debfc3dSmrg	Set to USG instead of including xm-usg.h.
1927*1debfc3dSmrg	Write #define lines in config.h files from xm_defines vars.
1928*1debfc3dSmrg	* xm-usg.h: Deleted.
1929*1debfc3dSmrg
1930*1debfc3dSmrgFri Mar 13 07:10:59 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1931*1debfc3dSmrg
1932*1debfc3dSmrg	* calls.c (expand_call): Fix typo in previous change.
1933*1debfc3dSmrg
1934*1debfc3dSmrg	* sparc.c (sparc_type_code): Avoid infinite loop when have
1935*1debfc3dSmrg	pointer to array of same pointer.
1936*1debfc3dSmrg	(sparc_type_code, case REAL_TYPE): Process subtypes here too.
1937*1debfc3dSmrg
1938*1debfc3dSmrg	* mips/bsd-4.h, mips/iris3.h, mips/news{4,5}.h: Don't include mips.h.
1939*1debfc3dSmrg	* mips/news5.h, mips/osfrose.h, mips/svr{3,4}-4.h: Likewise.
1940*1debfc3dSmrg	* mips/ultrix.h: Likewise.
1941*1debfc3dSmrg	* mips/cross64.h: Don't include iris6.h.
1942*1debfc3dSmrg	* mips/ecoff.h: Don't include mips.h or gofast.h.
1943*1debfc3dSmrg	* mips/elforion.h: Don't include elf64.h.
1944*1debfc3dSmrg	* mips/iris4.h: Don't include iris3.h.
1945*1debfc3dSmrg	* mips/iris4loser.h: Don't include iris4.h.
1946*1debfc3dSmrg	* mips/iris5gas.h: Don't include iris5.h.
1947*1debfc3dSmrg	* mips/elflorion.h, mips/nws3250v4.h, mips/xm-iris{3,4}.h: Deleted.
1948*1debfc3dSmrg	* mips/xm-nws3250v4.h, mips/xm-sysv.h: Deleted.
1949*1debfc3dSmrg	* mips/rtems64.h: Don't include elflorion.h.
1950*1debfc3dSmrg	* mips/sni-gas.h: Don't include sni-svr4.h.
1951*1debfc3dSmrg	* mips/svr4-t.h: Don't include svr4-5.h.
1952*1debfc3dSmrg	* mips/dec-osf1.h: Also include mips.h.
1953*1debfc3dSmrg	* mips/ecoffl.h, mips/elf.h: Also include mips.h and gofast.h.
1954*1debfc3dSmrg	* mips/iris5.h: Also include iris3.h and mips.h.
1955*1debfc3dSmrg	* xm-usg.h: New file.
1956*1debfc3dSmrg	* mips/xm-iris5.h: Don't include xm-mips.h; don't define USG.
1957*1debfc3dSmrg	* mips/xm-news.h, mips/xm-sysv4.h: Don't include xm-sysv.h.
1958*1debfc3dSmrg	* configure.in: Reflect above changes.
1959*1debfc3dSmrg
1960*1debfc3dSmrgThu Mar 12 07:18:48 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1961*1debfc3dSmrg
1962*1debfc3dSmrg	* expr.h (STRICT_ARGUMENT_NAMING): Provide default value of 0.
1963*1debfc3dSmrg	* calls.c (expand_call): Use value of STRICT_ARGUMENT_NAMING.
1964*1debfc3dSmrg	* function.c (assign_parm): Likewise.
1965*1debfc3dSmrg	* mips/abi64.h (STRICT_ARGUMENT_NAMING): Return 0 for ABI_32.
1966*1debfc3dSmrg	* sparc.h (STRICT_ARGUMENT_NAMING): Only nonzero for V9.
1967*1debfc3dSmrg
1968*1debfc3dSmrg	* calls.c (expand_call, expand_library_call{,_value}, store_one_arg):
1969*1debfc3dSmrg	Rework handling of REG_PARM_STACK_SPACE to treat return value of
1970*1debfc3dSmrg	zero as if macro not defined; add new arg to emit_push_insn.
1971*1debfc3dSmrg	* expr.c (emit_push_insn): New arg, REG_PARM_STACK_SPACE.
1972*1debfc3dSmrg	* expr.h (emit_push_insn): Likewise.
1973*1debfc3dSmrg	* mips/abi64.h (REG_PARM_STACK_SPACE): Define.
1974*1debfc3dSmrg
1975*1debfc3dSmrgWed Mar 11 06:58:13 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1976*1debfc3dSmrg
1977*1debfc3dSmrg	* m68k.h (CONST_OK_FOR_LETTER_P, case 'M'): Correct range check.
1978*1debfc3dSmrg
1979*1debfc3dSmrgWed Mar 11 06:15:52 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1980*1debfc3dSmrg
1981*1debfc3dSmrg	* expr.c (emit_push_insn): Use loop to find movstr patterns
1982*1debfc3dSmrg	instead of explicit tests.
1983*1debfc3dSmrg
1984*1debfc3dSmrg	* Makefile.in (extraclean): Don't delete install1.texi.
1985*1debfc3dSmrg
1986*1debfc3dSmrgTue Mar 10 14:27:51 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1987*1debfc3dSmrg
1988*1debfc3dSmrg	* combine.c (make_field_assignment): Don't get confused if OTHER
1989*1debfc3dSmrg	has VOIDmode and don't do anything if DEST is wider than a host word.
1990*1debfc3dSmrg
1991*1debfc3dSmrg	* vax.c (check_float_value): Cast bcopy args to char *.
1992*1debfc3dSmrg
1993*1debfc3dSmrgTue Mar 10 13:56:12 1998  Jim Wilson  <wilson@cygnus.com>
1994*1debfc3dSmrg
1995*1debfc3dSmrg	* mips/abi64.h (LONG_MAX_SPEC): Check MIPS_ABI_DEFAULT and
1996*1debfc3dSmrg	TARGET_DEFAULT and define __LONG_MAX__ appropriately.
1997*1debfc3dSmrg	Add support for -mabi=X, -mlong64, and -mgp{32,64} options.
1998*1debfc3dSmrg	* mips.c (mips_abi): Change type to int.
1999*1debfc3dSmrg	* mips.h (enum mips_abi_type): Delete.
2000*1debfc3dSmrg	(ABI_32, ABI_N32, ABI_64, ABI_EABI): Define as constants.
2001*1debfc3dSmrg	(mips_abi): Change type to int.
2002*1debfc3dSmrg
2003*1debfc3dSmrgMon Mar  2 08:06:58 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2004*1debfc3dSmrg
2005*1debfc3dSmrg	* Version 2.8.1 released.
2006*1debfc3dSmrg
2007*1debfc3dSmrg	* Makefile.in (mostlyclean): Remove duplicate deletion of temp
2008*1debfc3dSmrg 	files.  Delete more stamp files and [df]p-bit.c
2009*1debfc3dSmrg	(clean): Don't delete stamp files here.
2010*1debfc3dSmrg	(VERSION_DEP): New variable.
2011*1debfc3dSmrg	(distdir-finish): Pass a value of null for it.
2012*1debfc3dSmrg	(version.c): Use it.
2013*1debfc3dSmrg	Avoid broken pipe with cvs log.
2014*1debfc3dSmrg
2015*1debfc3dSmrg	* objc/Make-lang.in (objc/runtime-info.h): Rename emptyfile to
2016*1debfc3dSmrg 	tmp-runtime and delete at end.
2017*1debfc3dSmrg
2018*1debfc3dSmrgSun Mar  1 05:50:25 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2019*1debfc3dSmrg
2020*1debfc3dSmrg	* tree.c (build_reference_type): Handle obstacks like
2021*1debfc3dSmrg 	build_pointer_type.
2022*1debfc3dSmrg
2023*1debfc3dSmrg	* Makefile.in (tmp-gcc.xtar): Renamed from gcc.xtar.
2024*1debfc3dSmrg	(gcc.xtar.gz): Deleted; merged with `dist'.
2025*1debfc3dSmrg	(diff): Create gcc-$(oldversion)-$(version).diff.
2026*1debfc3dSmrg	(distdir): Depend on distdir-cvs.
2027*1debfc3dSmrg	(distdir-cvs): New rule.
2028*1debfc3dSmrg	(distdir-start): Depend on version.c and TAGS.
2029*1debfc3dSmrg	(TAGS): Use tmp-tags instead of temp.
2030*1debfc3dSmrg	(dist): Create gcc-$(version).tar.gz.
2031*1debfc3dSmrg
2032*1debfc3dSmrg	* varasm.c (compare_constant_1): Fix typo in previous change.
2033*1debfc3dSmrg
2034*1debfc3dSmrg	* objc/Make-lang.in (objc-distdir): Properly rebuild objc-parse.c.
2035*1debfc3dSmrg
2036*1debfc3dSmrgSat Feb 28 16:58:08 1998  Tristan Gingold  <gingold@rossini.enst.fr>
2037*1debfc3dSmrg
2038*1debfc3dSmrg	* stmt.c (expand_decl): If -fcheck-memory-usage, put vars in memory.
2039*1debfc3dSmrg	* expr.c (get_memory_usage_from_modifier): Convert
2040*1debfc3dSmrg	EXPAND_{CONST_ADDRESS, INITIALIZER} to MEMORY_USE_DONT.
2041*1debfc3dSmrg
2042*1debfc3dSmrgSat Feb 28 08:13:43 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2043*1debfc3dSmrg
2044*1debfc3dSmrg	* i860/fx2800.h (DATA_ALIGNMENT): Use POINTER_TYPE_P.
2045*1debfc3dSmrg	* m68k/a-ux.h (FUNCTION_VALUE): Likewise.
2046*1debfc3dSmrg	* expr.c (get_pointer_alignment, compare, do_store_flag): Likewise.
2047*1debfc3dSmrg 	(expand_builtin): Likewise.
2048*1debfc3dSmrg	* fold-const.c (force_fit_type, fold_convert, fold): Likewise.
2049*1debfc3dSmrg	* function.c (assign_parms): Likewise.
2050*1debfc3dSmrg	* integrate.c (expand_inline_function): Likewise.
2051*1debfc3dSmrg	* sdbout.c (sdbout_field_types): Likewise.
2052*1debfc3dSmrg	* tree.c (integer_pow2p, tree_log2, valid_machine_attribute): Likewise.
2053*1debfc3dSmrg	* stmt.c (expand_decl): Likewise.
2054*1debfc3dSmrg	({,bc_}expand_decl_init): Also test for REFERENCE_TYPE.
2055*1debfc3dSmrg
2056*1debfc3dSmrg	* configure.in (version_dep): New variable; if srcdir is CVS working
2057*1debfc3dSmrg	directory, set to ChangeLog.
2058*1debfc3dSmrg	(version): Supply default if no version.c.
2059*1debfc3dSmrg	* Makefile.in (version.c): New rule.
2060*1debfc3dSmrg
2061*1debfc3dSmrg	* gcc.c (snapshot_warning): New function.
2062*1debfc3dSmrg	(main): Call it for snapshots.
2063*1debfc3dSmrg
2064*1debfc3dSmrg	* dwarf2out.c (expand_builtin_dwarf_reg_size): If reg_raw_mode
2065*1debfc3dSmrg	not valid for reg, use last size.  Also refine range assertion.
2066*1debfc3dSmrg
2067*1debfc3dSmrgSat Feb 28 05:04:47 1998  Michael P. Hayes  <michaelh@ongaonga.chch.cri.nz>
2068*1debfc3dSmrg
2069*1debfc3dSmrg	* enquire.c (cprop): Don't perform exhaustive search for char_min
2070*1debfc3dSmrg	and char_max when bits_per_byte > 16.
2071*1debfc3dSmrg
2072*1debfc3dSmrgThu Feb 26 15:12:03 1998  Christopher Taylor <cit@ckshq.com>
2073*1debfc3dSmrg
2074*1debfc3dSmrg	* fixincludes: Avoid using '0-~' in egrep.
2075*1debfc3dSmrg
2076*1debfc3dSmrgThu Feb 26 08:04:05 1998  Tristan Gingold  <gingold@messiaen.enst.fr>
2077*1debfc3dSmrg
2078*1debfc3dSmrg	* function.c (assign_parms): Call 'chkr_set_right' when DECL_RTL
2079*1debfc3dSmrg	is stack_parm.
2080*1debfc3dSmrg	* expr.c (get_memory_usage_from_modifier): Convert
2081*1debfc3dSmrg	EXPAND_{SUM, CONST_ADDRESS, INITIALIZER} to MEMORY_USE_RO.
2082*1debfc3dSmrg
2083*1debfc3dSmrgThu Feb 26 07:33:53 1998  Paul Eggert  <eggert@twinsun.com>
2084*1debfc3dSmrg
2085*1debfc3dSmrg	* c-lex.c (yylex): Don't munge errno before using it.
2086*1debfc3dSmrg	* cccp.c (error_from_errno, perror_with_name): Likewise.
2087*1debfc3dSmrg	* cpplib.c (cpp_error_from_errno): Likewise.
2088*1debfc3dSmrg	* gcc.c (pfatal_pexecute): Likewise.
2089*1debfc3dSmrg	* protoize.c (safe_write, find_file, process_aux_info_file): Likewise.
2090*1debfc3dSmrg	(rename_c_file, edit_file): Likewise.
2091*1debfc3dSmrg
2092*1debfc3dSmrg	* c-lex.c (yylex): Remove unused variable exceeds_double.
2093*1debfc3dSmrg
2094*1debfc3dSmrgThu Feb 26 07:05:14 1998  Michael P. Hayes  <michaelh@ongaonga.chch.cri.nz>
2095*1debfc3dSmrg
2096*1debfc3dSmrg	* reorg.c (fill_slots_from_thread): Don't steal delay list from target
2097*1debfc3dSmrg	if condition code of jump conflicts with opposite_needed.
2098*1debfc3dSmrg
2099*1debfc3dSmrgThu Feb 26 06:45:23 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2100*1debfc3dSmrg
2101*1debfc3dSmrg	* Makefile.in (distdir-start): Don't copy CVS subdirectory of config.
2102*1debfc3dSmrg
2103*1debfc3dSmrg	* varasm.c ({compare,record}_constant_1, case CONSTRUCTOR):
2104*1debfc3dSmrg	Handle the case when we have TREE_PURPOSE values.
2105*1debfc3dSmrg
2106*1debfc3dSmrgThu Feb 26 05:59:01 1998  Philippe De Muyter  <phdm@macqel.be>
2107*1debfc3dSmrg
2108*1debfc3dSmrg	* fixincludes (sys/limits.h): Fix a nested comment problem with
2109*1debfc3dSmrg	HUGE_VAL definition on sysV68 R3V7.1.
2110*1debfc3dSmrg
2111*1debfc3dSmrgWed Feb 25 21:09:38 1998  Philippe De Muyter  <phdm@macqel.be>
2112*1debfc3dSmrg
2113*1debfc3dSmrg	* toplev.c (TICKS_PER_SECOND): Renamed from CLOCKS_PER_SECOND.
2114*1debfc3dSmrg
2115*1debfc3dSmrgWed Feb 25 20:50:08 1998  Michael P. Hayes  <michaelh@ongaonga.chch.cri.nz>
2116*1debfc3dSmrg
2117*1debfc3dSmrg	* reorg.c (fill_slots_from_thread): Mark resources referenced in
2118*1debfc3dSmrg	opposite_needed thread.  Return delay_list even when cannot get
2119*1debfc3dSmrg	any more delay insns from end of subroutine.
2120*1debfc3dSmrg
2121*1debfc3dSmrgWed Feb 25 19:50:01 1998  Mikael Pettersson <Mikael.Pettersson@sophia.inria.fr>
2122*1debfc3dSmrg
2123*1debfc3dSmrg	* gcc.c (lookup_compiler): Remove redundant test.
2124*1debfc3dSmrg
2125*1debfc3dSmrgWed Feb 25 07:24:22 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2126*1debfc3dSmrg
2127*1debfc3dSmrg	* vax.md (call insns): Second operand to CALL rtl is SImode.
2128*1debfc3dSmrg
2129*1debfc3dSmrg	* configure.in (i[34567]86-*-mingw32): Support msv and crt suffix.
2130*1debfc3dSmrg	* i386/crtdll.h: New file.
2131*1debfc3dSmrg
2132*1debfc3dSmrg	* sparc.c (pic_setup_code): If -O0, write USE of pic_offset_table_rtx.
2133*1debfc3dSmrg
2134*1debfc3dSmrg	* expr.c (safe_from_p): Add new arg, TOP_P; all callers changed.
2135*1debfc3dSmrg
2136*1debfc3dSmrgSat Feb 21 07:02:39 1998  Jim Wilson  <wilson@cygnus.com>
2137*1debfc3dSmrg
2138*1debfc3dSmrg	* mips/iris5.h (DWARF2_UNWIND_INFO): Define to 0.
2139*1debfc3dSmrg	* mips/iris5gas.h (DWARF2_UNWIND_INFO): Define to 1.
2140*1debfc3dSmrg
2141*1debfc3dSmrgFri Feb 20 08:27:46 1998  Paul Eggert  <eggert@twinsun.com>
2142*1debfc3dSmrg
2143*1debfc3dSmrg	* sparc/sol2-sld.h: New file.
2144*1debfc3dSmrg	* configure.in (sparc-*-solaris2*): Use it when using system linker.
2145*1debfc3dSmrg	* toplev.c (main): Don't default to DWARF2_DEBUG with -ggdb
2146*1debfc3dSmrg	if LINKER_DOES_NOT_WORK_WITH_DWARF2 is defined.
2147*1debfc3dSmrg
2148*1debfc3dSmrgFri Feb 20 08:21:49 1998  H.J. Lu  (hjl@gnu.org)
2149*1debfc3dSmrg
2150*1debfc3dSmrg	* alpha/elf.h (STARTFILE_SPEC, ENDFILE_SPEC): Support shared library.
2151*1debfc3dSmrg	(LIB_SPEC, DEFAULT_VTABLE_THUNKS): Defined #ifndef USE_GNULIBC_1.
2152*1debfc3dSmrg	* sparc/linux.h (DEFAULT_VTABLE_THUNKS): Likewise.
2153*1debfc3dSmrg	(LIB_SPEC): Add -lc for -shared #ifndef USE_GNULIBC_1.
2154*1debfc3dSmrg	* linux.h (LIB_SPEC): Likewise.
2155*1debfc3dSmrg	* sparc/linux64.h (LIB_SPEC): Likewise; also updated for glibc 2.
2156*1debfc3dSmrg	(LIBGCC_SPEC): Removed.
2157*1debfc3dSmrg	(CPP_SUBTARGET_SPEC): Add %{pthread:-D_REENTRANT}.
2158*1debfc3dSmrg
2159*1debfc3dSmrgFri Feb 20 05:22:12 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2160*1debfc3dSmrg
2161*1debfc3dSmrg	* Makefile.in (distdir-start): Add dependence on bi-parser.[ch].
2162*1debfc3dSmrg
2163*1debfc3dSmrgThu Feb 19 18:07:11 1998  Jim Wilson  <wilson@cygnus.com>
2164*1debfc3dSmrg
2165*1debfc3dSmrg	* m68k.h (TARGET_SWITCHES): For 68000, 68302, subtract MASK_68881.
2166*1debfc3dSmrg	For 68303, 68332, cpu32, subtract MASK_68040_ONLY.
2167*1debfc3dSmrg
2168*1debfc3dSmrgWed Feb 18 09:37:29 1998  Paul Eggert  <eggert@twinsun.com>
2169*1debfc3dSmrg
2170*1debfc3dSmrg	* fixincludes (stdlib.h): Do not double-wrap the size_t typedef.
2171*1debfc3dSmrg
2172*1debfc3dSmrgWed Feb 18 07:32:11 1998  Jim Wilson  <wilson@cygnus.com>
2173*1debfc3dSmrg
2174*1debfc3dSmrg	* i960.c (emit_move_sequence): Handle unaligned stores to pseudos.
2175*1debfc3dSmrg	* i960.md (store_unaligned_[dt]i_reg): Handle register dest.
2176*1debfc3dSmrg	(store_unaligned_ti_reg): Likewise.
2177*1debfc3dSmrg
2178*1debfc3dSmrg	* m68k.h (MACHINE_STATE_{SAVE,RESTORE} [MOTOROLA]): Add %# and %/;
2179*1debfc3dSmrg	add : to make them into extended asms.
2180*1debfc3dSmrg
2181*1debfc3dSmrgWed Feb 18 07:08:05 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2182*1debfc3dSmrg
2183*1debfc3dSmrg	* reg-stack.c (compare_for_stack_reg): Only handle FP conditional
2184*1debfc3dSmrg	move as next insn specially.
2185*1debfc3dSmrg
2186*1debfc3dSmrg	* reload.c (find_reloads): Always convert address reload for
2187*1debfc3dSmrg	non-reloaded operand to RELOAD_FOR_OPERAND_ADDRESS.
2188*1debfc3dSmrg
2189*1debfc3dSmrg	* emit-rtl.c (hard-reg-set.h): Include.
2190*1debfc3dSmrg	(get_lowpart_common): Don't make new REG for hard reg in a
2191*1debfc3dSmrg	class that cannot change size.
2192*1debfc3dSmrg	* Makefile.in (emit-rtl.o): Depend on hard-reg-set.h.
2193*1debfc3dSmrg
2194*1debfc3dSmrgSat Feb 14 09:59:00 1998  Richard Earnshaw (rearnsha@arm.com)
2195*1debfc3dSmrg
2196*1debfc3dSmrg	* arm.md (movsfcc): Also validate operands[3] for hard float.
2197*1debfc3dSmrg	(movdfcc): Only accept fpu_add_operand for operands[3].8
2198*1debfc3dSmrg
2199*1debfc3dSmrgSat Feb 14 09:32:34 1998  Jim Wilson  <wilson@cygnus.com>
2200*1debfc3dSmrg
2201*1debfc3dSmrg	* dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
2202*1debfc3dSmrg	Convert CCmode to word_mode before calling GET_MODE_SIZE.
2203*1debfc3dSmrg
2204*1debfc3dSmrgSat Feb 14 09:27:42 1998  David Edelsohn  <edelsohn@mhpcc.edu>
2205*1debfc3dSmrg
2206*1debfc3dSmrg	* rs6000.h (MY_ISCOFF): Check for U803XTOCMAGIC.
2207*1debfc3dSmrg
2208*1debfc3dSmrgSat Feb 14 08:29:43 1998  Arvind Sankar  <arvind@cse.iitb.ernet.in>
2209*1debfc3dSmrg
2210*1debfc3dSmrg	* t-svr4 (TARGET_LIBGCC_CFLAGS): New definition.
2211*1debfc3dSmrg
2212*1debfc3dSmrgSat Feb 14 07:45:16 1998  Ken Rose (rose@acm.org)
2213*1debfc3dSmrg
2214*1debfc3dSmrg        * reorg.c (fill_slots_from_thread): New parameter, delay_list.
2215*1debfc3dSmrg	All callers changed.
2216*1debfc3dSmrg
2217*1debfc3dSmrgSat Feb 14 07:14:02 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2218*1debfc3dSmrg
2219*1debfc3dSmrg	* reload.c (debug_reload): Properly output insn codes.
2220*1debfc3dSmrg
2221*1debfc3dSmrg	* pa.c (emit_move_sequence): If in reload, call find_replacement.
2222*1debfc3dSmrg
2223*1debfc3dSmrg	* gansidecl.h (bcopy, bzero, {,r}index): Don't define if IN_LIBGCC2.
2224*1debfc3dSmrg
2225*1debfc3dSmrg	* combine.c (distribute_notes, case REG_DEAD): When seeing if place
2226*1debfc3dSmrg	to put new note sets register, use reg_bitfield_target_p, as in
2227*1debfc3dSmrg	original code.
2228*1debfc3dSmrg
2229*1debfc3dSmrg	* gcc.c (process_command): If file is for linker, set lang to "*".
2230*1debfc3dSmrg	(lookup_compiler): Return 0 for language of "*".
2231*1debfc3dSmrg
2232*1debfc3dSmrg	* sched.c (attach_deaths, case SUBREG): Fix error in last change.
2233*1debfc3dSmrg
2234*1debfc3dSmrg	* i386.md (mov[sdx]fcc): Disable for now.
2235*1debfc3dSmrg	(mov[sd]fcc_1): Add earlyclobber for output on last alternative.
2236*1debfc3dSmrg
2237*1debfc3dSmrgSat Feb 14 06:42:50 1998  Jason Merrill  <jason@yorick.cygnus.com>
2238*1debfc3dSmrg
2239*1debfc3dSmrg	* except.c (get_dynamic_handler_chain): Only make call once per func.
2240*1debfc3dSmrg	(expand_fixup_region_{start,end}): New functions.
2241*1debfc3dSmrg	(expand_eh_region_start_tree): Store cleanup into finalization here.
2242*1debfc3dSmrg	* stmt.c (expand_cleanups): Use new functions to protect fixups.
2243*1debfc3dSmrg
2244*1debfc3dSmrg	* except.c (get_dynamic_handler_chain): Build up a FUNCTION_DECL.
2245*1debfc3dSmrg	* optabs.c (init_optabs): Don't init get_dynamic_handler_chain_libfunc.
2246*1debfc3dSmrg	* expr.h (get_dynamic_handler_chain_libfunc): Deleted.
2247*1debfc3dSmrg
2248*1debfc3dSmrgSat Feb 14 06:34:41 1998  Peter Lawrence  <Peter.Lawrence@Eng.Sun.COM>
2249*1debfc3dSmrg
2250*1debfc3dSmrg	* optabs.c (emit_conditional_move): Don't reverse condition for FP.
2251*1debfc3dSmrg
2252*1debfc3dSmrgFri Feb 13 07:22:04 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2253*1debfc3dSmrg
2254*1debfc3dSmrg	* Makefile.in (mostlyclean): Only use s-* convention for stamp
2255*1debfc3dSmrg	files in main dir.
2256*1debfc3dSmrg
2257*1debfc3dSmrg	* configure.in: Add support for i786 (Pentium II); same as i686.
2258*1debfc3dSmrg
2259*1debfc3dSmrgThu Feb 12 20:16:35 1998  Michael Meissner  <meissner@cygnus.com>
2260*1debfc3dSmrg
2261*1debfc3dSmrg	* rs6000.md: Replace gen_rtx (CONST_INT,...) with GEN_INT.
2262*1debfc3dSmrg
2263*1debfc3dSmrgThu Feb 12 10:08:14 1998  John Hassey  <hassey@dg-rtp.dg.com>
2264*1debfc3dSmrg
2265*1debfc3dSmrg	* configure.in (i[3456]86-dg-dgux*): Don't need fixincludes.
2266*1debfc3dSmrg
2267*1debfc3dSmrgThu Feb 12 07:27:39 1998  Mumit Khan <khan@xraylith.wisc.edu>
2268*1debfc3dSmrg
2269*1debfc3dSmrg	* i386/cygwin32.h (NO_IMPLICIT_EXTERN_C): Define.
2270*1debfc3dSmrg	about system headers.
2271*1debfc3dSmrg	(LIB_SPEC): Add -ladvapi32 -lshell32.
2272*1debfc3dSmrg
2273*1debfc3dSmrgThu Feb 12 07:19:31 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2274*1debfc3dSmrg
2275*1debfc3dSmrg	* expr.c (expand_assignment): Fix typo in checking OFFSET.
2276*1debfc3dSmrg
2277*1debfc3dSmrg	* gbl-ctors.h (atexit): Don't define unless needed.
2278*1debfc3dSmrg
2279*1debfc3dSmrg	* combine.c (distribute_notes): Completely check for note operand being
2280*1debfc3dSmrg	only partially set on potential note target; adjust what notes
2281*1debfc3dSmrg	we make in that case.
2282*1debfc3dSmrg
2283*1debfc3dSmrg	* i386/xm-go32.h (HAVE_{BCOPY,BZERO,INDEX,RINDEX}): Deleted.
2284*1debfc3dSmrg
2285*1debfc3dSmrgWed Feb 11 08:53:27 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2286*1debfc3dSmrg
2287*1debfc3dSmrg	* calls.c (emit_call_1): Size args now HOST_WIDE_INT.
2288*1debfc3dSmrg	(expand_call): struct_value_size now HOST_WIDE_INT.
2289*1debfc3dSmrg
2290*1debfc3dSmrgTue Feb 10 09:04:39 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2291*1debfc3dSmrg
2292*1debfc3dSmrg	* integrate.c (initialize_for_inline): Ensure DECL_INCOMING_RTL
2293*1debfc3dSmrg	is always copied.
2294*1debfc3dSmrg
2295*1debfc3dSmrgTue Feb 10 06:10:49 1998  Paul Eggert  <eggert@twinsun.com>
2296*1debfc3dSmrg
2297*1debfc3dSmrg	* cccp.c (rescan): Fix bug with macro name appearing
2298*1debfc3dSmrg	immediately after L'x'.
2299*1debfc3dSmrg
2300*1debfc3dSmrgMon Feb  9 20:45:32 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2301*1debfc3dSmrg
2302*1debfc3dSmrg	* c-common.c (format_char_info): Add new field zlen.
2303*1debfc3dSmrg	(print_char_table): Remove entry for 'Z' as a format character.
2304*1debfc3dSmrg	Initialize zlen field as appropriate.
2305*1debfc3dSmrg	(scan_char_table): Set zlen field to NULL in each entry.
2306*1debfc3dSmrg	(check_format_info): Recognize 'Z' as a length modifier, with a
2307*1debfc3dSmrg	warning in pedantic mode.
2308*1debfc3dSmrg	Avoid infinite loop when a repeated flag character is detected.
2309*1debfc3dSmrg
2310*1debfc3dSmrgMon Feb  9 09:24:04 1998  Paul Eggert  <eggert@twinsun.com>
2311*1debfc3dSmrg
2312*1debfc3dSmrg	* c-parse.in (primary): Minor wording fix in diagnostic.
2313*1debfc3dSmrg
2314*1debfc3dSmrgMon Feb  9 07:50:19 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2315*1debfc3dSmrg
2316*1debfc3dSmrg	* c-decl.c (grokdeclarator): Remove warning on inline of varargs.
2317*1debfc3dSmrg
2318*1debfc3dSmrg	* reload.c (find_reloads): Check for const_to_mem case before
2319*1debfc3dSmrg	checking for invalid reload; use force_const_mem if no_input_reloads.
2320*1debfc3dSmrg
2321*1debfc3dSmrg	* function.c (push_function_context_to): Call init_emit last.
2322*1debfc3dSmrg
2323*1debfc3dSmrg	* protoize.c (my_link): Define as -1 in mingw32.
2324*1debfc3dSmrg	(link): Remove declaration.
2325*1debfc3dSmrg
2326*1debfc3dSmrg	* rs6000.c (setup_incoming_varargs): Always set rs6000_sysv_varargs_p.
2327*1debfc3dSmrg
2328*1debfc3dSmrg	* integrate.c (expand_inline_function): Clear label_map with bzero.
2329*1debfc3dSmrg
2330*1debfc3dSmrg	* unroll.c (copy_loop_body, case JUMP_INSN): Correct error in last
2331*1debfc3dSmrg	change: call single_set on COPY, not INSN.
2332*1debfc3dSmrg
2333*1debfc3dSmrgSun Feb  8 08:07:37 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2334*1debfc3dSmrg
2335*1debfc3dSmrg	* msdos/top.sed, winnt/config-nt.sed: Change version number to 2.8.1.
2336*1debfc3dSmrg
2337*1debfc3dSmrg	* configure.in (i[3456]86-*-sco3.2v5*): Use cpio for headers.
2338*1debfc3dSmrg
2339*1debfc3dSmrgSat Feb  7 07:32:46 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2340*1debfc3dSmrg
2341*1debfc3dSmrg	* i386/mingw32.h (LIBGCC_SPEC, STARTFILE_SPEC, MATH_LIBRARY):
2342*1debfc3dSmrg	Use msvcrt, not crtdll.
2343*1debfc3dSmrg
2344*1debfc3dSmrgFri Feb  6 20:32:06 1998  Geert Bosch  <bosch@gnat.com>
2345*1debfc3dSmrg
2346*1debfc3dSmrg	* i386/xm-os2.h (EMX, USG, BSTRING, HAVE_{PUTENV,VPRINTF,STRERROR}):
2347*1debfc3dSmrg	Define ifdef __EMX__.
2348*1debfc3dSmrg	(strcasecmp): Define to be stricmp if __EMX__.
2349*1debfc3dSmrg	(spawnv{,p}): Don't define if EMX.
2350*1debfc3dSmrg	(OBJECT_SUFFIX): Don't define if EMX.
2351*1debfc3dSmrg	(MKTEMP_EACH_FILE): Define.
2352*1debfc3dSmrg
2353*1debfc3dSmrgFri Feb  6 16:37:29 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2354*1debfc3dSmrg
2355*1debfc3dSmrg	* objc/Make-lang.in (objc.stage1): Depend on stage1-start.
2356*1debfc3dSmrg	(objc.stage2, objc.stage3, objc.stage4): Likewise for the
2357*1debfc3dSmrg	respective stageN-start targets.
2358*1debfc3dSmrg	(objc/sendmsg.o): Depend on objc/runtime-info.h.
2359*1debfc3dSmrg
2360*1debfc3dSmrgFri Feb  6 16:27:09 1998  Bernd Schmidt  <crux@Pool.Informatik.RWTH-Aachen.DE>
2361*1debfc3dSmrg
2362*1debfc3dSmrg	* stmt.c (expand_asm_operands): Properly treat asm statement
2363*1debfc3dSmrg	statements with no operands as volatile.
2364*1debfc3dSmrg
2365*1debfc3dSmrgFri Feb  6 16:03:25 1998  Greg McGary  <gkm@gnu.org>
2366*1debfc3dSmrg
2367*1debfc3dSmrg	* c-decl.c (pushdecl): Set DECL_ORIGINAL_TYPE once only.
2368*1debfc3dSmrg
2369*1debfc3dSmrgFri Feb  6 15:57:36 1998  Mumit Khan <khan@xraylith.wisc.edu>
2370*1debfc3dSmrg
2371*1debfc3dSmrg	* i386/cygwin32.h (STRIP_NAME_ENCODING): New macro.
2372*1debfc3dSmrg
2373*1debfc3dSmrgFri Feb  6 15:50:42 1998  Paul Eggert  <eggert@twinsun.com>
2374*1debfc3dSmrg
2375*1debfc3dSmrg	* libgcc2.c (__floatdi[xtds]f): Round properly even when rounding
2376*1debfc3dSmrg	large negative integer to plus or minus infinity.
2377*1debfc3dSmrg
2378*1debfc3dSmrgFri Feb  6 15:45:16 1998  Philippe De Muyter  <phdm@macqel.be>
2379*1debfc3dSmrg
2380*1debfc3dSmrg	* sdbout.c (plain_type_1): Return T_DOUBLE, not T_VOID, for
2381*1debfc3dSmrg	long double #ifndef EXTENDED_SDB_BASIC_TYPES.
2382*1debfc3dSmrg
2383*1debfc3dSmrgFri Feb  6 15:23:49 1998  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2384*1debfc3dSmrg
2385*1debfc3dSmrg	* vax/ultrix.h (HAVE_ATEXIT): Define.
2386*1debfc3dSmrg	* x-vax: File deleted.
2387*1debfc3dSmrg
2388*1debfc3dSmrgFri Feb  6 14:34:19 1998  Douglas Rupp <rupp@gnat.com>
2389*1debfc3dSmrg
2390*1debfc3dSmrg	* gcc.c (process_command, case "-dumpversion"): Print spec_version.
2391*1debfc3dSmrg
2392*1debfc3dSmrgFri Feb  6 11:01:13 1998  Josh Littlefield  <josh@american.com>
2393*1debfc3dSmrg
2394*1debfc3dSmrg	* i386/gmon-sol2.c (internal_mcount): Do set-up when program starts
2395*1debfc3dSmrg	and install hook to do clean-up when it exits.
2396*1debfc3dSmrg	* i386/sol2-c1.asm (_mcount): Make a weak instead of global symbol.
2397*1debfc3dSmrg	* i386/sol2dbg.h (ASM_SPEC): Support Solaris bundled assembler's -V
2398*1debfc3dSmrg	argument; pass -s argument to assembler.
2399*1debfc3dSmrg
2400*1debfc3dSmrgFri Feb  6 09:13:21 1998  Jim Wilson  (wilson@cygnus.com)
2401*1debfc3dSmrg
2402*1debfc3dSmrg	* function.c (assign_parms): New variable named_arg, with value
2403*1debfc3dSmrg	depending on STRICT_ARGUMENT_NAMING.  Use instead of ! last_named.
2404*1debfc3dSmrg
2405*1debfc3dSmrg	* crtstuff.c (__frame_dummy): New function for irix6.
2406*1debfc3dSmrg	(__do_global_ctors): Call __frame_dummy for irix6.
2407*1debfc3dSmrg	* mips/iris6.h (LINK_SPEC): Hide __frame_dummy too.
2408*1debfc3dSmrg
2409*1debfc3dSmrgFri Feb  6 09:08:21 1998  Mike Stump  <mrs@wrs.com>
2410*1debfc3dSmrg
2411*1debfc3dSmrg	* rtlanal.c (dead_or_set_regno_p): Ignore REG_DEAD notes after reload.
2412*1debfc3dSmrg	* genattrtab.c (reload_completed): Define.
2413*1debfc3dSmrg
2414*1debfc3dSmrg	* configure.in (i960-wrs-vxworks): Same as i960-wrs-vxworks5*.
2415*1debfc3dSmrg
2416*1debfc3dSmrgFri Feb  6 08:47:38 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2417*1debfc3dSmrg
2418*1debfc3dSmrg	* Makefile.in (diff): Add INSTALL, configure, and config.in;
2419*1debfc3dSmrg	remove objc-*.
2420*1debfc3dSmrg	* objc/config-lang.in (diff_excludes): Add objc-parse.[cy].
2421*1debfc3dSmrg
2422*1debfc3dSmrg	* i386/xm-mingw32.h (link): Delete macro.
2423*1debfc3dSmrg
2424*1debfc3dSmrg	* alpha.c (output_prolog): Write out frame sizes as longs and
2425*1debfc3dSmrg	print too large sizes as zero.
2426*1debfc3dSmrg
2427*1debfc3dSmrg	* function.c (combine_temp_slots): No need to allocate and free rtx.
2428*1debfc3dSmrg	Don't do anything if too many slots in the list.
2429*1debfc3dSmrg	(put_var_into_stack): Don't use ADDRESSOF if not optimizing.
2430*1debfc3dSmrg
2431*1debfc3dSmrg	* function.c (purge_addressof_1): Force into mem if VOLATILE reference.
2432*1debfc3dSmrg
2433*1debfc3dSmrg	* calls.c (expand_call): Show VAR_DECL made for structure return
2434*1debfc3dSmrg	address is used; remove bogus set of MEM_IN_STRUCT_P.
2435*1debfc3dSmrg	* expr.c (expand_expr, case SAVE_EXPR, case TARGET_EXPR): Show used.
2436*1debfc3dSmrg	(expand_builtin, case BUILT_IN_LONGJMP): Show __dummy used.
2437*1debfc3dSmrg	* function.c (put_reg_into_stack): New arg USED_P; all callers changed.
2438*1debfc3dSmrg
2439*1debfc3dSmrg	* expr.c (expand_expr, case SAVE_EXPR): assign_temp with KEEP of 3.
2440*1debfc3dSmrg	* function.c (var_temp_slot_level): New variable.
2441*1debfc3dSmrg	(push_function_context_to, pop_function_context_from): Save/restore
2442*1debfc3dSmrg	it and target_temp_slot_level.
2443*1debfc3dSmrg	(assign_stack_temp): Implement KEEP of 3.
2444*1debfc3dSmrg	(push_temp_slots_for_block): New function.
2445*1debfc3dSmrg	(init_temp_slots): Initialize var_temp_slot_level.
2446*1debfc3dSmrg	* function.h (struct function, fields {var,target}_temp_slot_level):
2447*1debfc3dSmrg	New fields.
2448*1debfc3dSmrg	* stmt.c (expand_start_bindings): Call push_temp_slots_for_block.
2449*1debfc3dSmrg
2450*1debfc3dSmrg	* function.c (struct temp_slot): SIZE, BASE_OFF_SET, and FULL_SIZE
2451*1debfc3dSmrg	now HOST_WIDE_INT.
2452*1debfc3dSmrg	(assign_{,outer_}stack_local, assign_{,stack_}temp): Size arg is
2453*1debfc3dSmrg	now HOST_WIDE_INT.
2454*1debfc3dSmrg	(assign_stack_temp): Do size computations in HOST_WIDE_INT.
2455*1debfc3dSmrg	(fixup_var_refs_1, optimize_bit_field, instantiate_decls): Likewise.
2456*1debfc3dSmrg	(instantiate_virtual_regs_1, fix_lexical_address): Likewise.
2457*1debfc3dSmrg	* rtl.h (assign_stack_{local,temp}): Size arg is HOST_WIDE_INT.
2458*1debfc3dSmrg	(assign_temp): Likewise.
2459*1debfc3dSmrg	* expr.h (struct args_size): Field CONSTANT is now HOST_WIDE_INT.
2460*1debfc3dSmrg
2461*1debfc3dSmrg	* sched.c (attach_deaths, case REG): Don't check for REG_UNUSED.
2462*1debfc3dSmrg	(attach_deaths, case SUBREG, STRICT_LOW_PART, {ZERO,SIGN}_EXTRACT):
2463*1debfc3dSmrg	Don't pass set_p of 1 if partial assignment.
2464*1debfc3dSmrg
2465*1debfc3dSmrg	* tree.h (size_in_bytes): Returns HOST_WIDE_INT.
2466*1debfc3dSmrg	* tree.c (size_in_bytes): Likewise.
2467*1debfc3dSmrg	Tighen up logic some to avoid returning a bogus value instead of -1.
2468*1debfc3dSmrg
2469*1debfc3dSmrg	* expr.c (get_inner_reference, case ARRAY_EXPR): Make WITH_RECORD_EXPR
2470*1debfc3dSmrg	just for index.
2471*1debfc3dSmrg	(expand_expr, case PLACEHOLDER_EXPR): Refine search again; look
2472*1debfc3dSmrg	at each expression and look for pointer to type.
2473*1debfc3dSmrg
2474*1debfc3dSmrg	* expr.c (safe_from_p, case ADDR_EXPR): If TREE_STATIC, no trampoline.
2475*1debfc3dSmrg	(expand_expr, case ADDR_EXPR): Likewise.
2476*1debfc3dSmrg
2477*1debfc3dSmrg	* expr.c (emit_block_move): Use conservative range for movstr mode.
2478*1debfc3dSmrg
2479*1debfc3dSmrg	* configure.in: See if "cp -p" works if "ln -s" doesn't; else "cp".
2480*1debfc3dSmrg
2481*1debfc3dSmrg	* combine.c (try_combine.c): Pass elim_i2 and elim_i1 to
2482*1debfc3dSmrg	distribute_notes for i3dest_killed REG_DEAD note.
2483*1debfc3dSmrg
2484*1debfc3dSmrg	* configure.in (mips-dec-netbsd*): Remove bogus setting of prefix.
2485*1debfc3dSmrg
2486*1debfc3dSmrg	* c-decl.c (duplicate_decls): Set DECL_IGNORED_P in newdecl if
2487*1debfc3dSmrg	different bindings levels.
2488*1debfc3dSmrg
2489*1debfc3dSmrg	* configure.in: Test ln -s by symlinking gcc.c.
2490*1debfc3dSmrg
2491*1debfc3dSmrg	* configure.in (i[3456]86-dg-dgux): Add wildcard for version.
2492*1debfc3dSmrg
2493*1debfc3dSmrg	* crtstuff.c (__do_global_ctors_aux): Switch back to text section
2494*1debfc3dSmrg	in proper place.
2495*1debfc3dSmrg
2496*1debfc3dSmrg	* rtlanal.c (rtx_varies_p, case REG): pic_offset_table_rtx is fixed.
2497*1debfc3dSmrg	* genattrtab.c (pic_offset_table_rtx): Define (dummy).
2498*1debfc3dSmrg	* cse.c (set_nonvarying_address_components): Understand PIC refs.
2499*1debfc3dSmrg
2500*1debfc3dSmrg	* loop.c (strength_reduce): When placing increment for auto-inc
2501*1debfc3dSmrg	case, do comparison in loop order.
2502*1debfc3dSmrg
2503*1debfc3dSmrg	* i860.c (output_delayed_branch): Add missing arg to recog.
2504*1debfc3dSmrg	(output_delay_insn): Add missing arg to constrain_operands.
2505*1debfc3dSmrg
2506*1debfc3dSmrg	* configure.in: Truncate target after finished comparing it with host.
2507*1debfc3dSmrg
2508*1debfc3dSmrg	* i386.h (MAX_FIXED_MODE_SIZE): Delete.
2509*1debfc3dSmrg
2510*1debfc3dSmrg	* c-parse.in (expr_no_comma): Clarify undefined error.
2511*1debfc3dSmrg
2512*1debfc3dSmrg	* prefix.c (get_key_value): Don't default to PREFIX here.
2513*1debfc3dSmrg	(translate_name): Remove bogus addition of "$" if getenv fails;
2514*1debfc3dSmrg	clean up application of default value of PREFIX.
2515*1debfc3dSmrg
2516*1debfc3dSmrg	* fold-const.c (fold_convert): Call force_fit_type even if input
2517*1debfc3dSmrg	already overflows.
2518*1debfc3dSmrg
2519*1debfc3dSmrgFri Feb  6 07:45:01 1998  Robert Hoehne <robert.hoehne@gmx.net>
2520*1debfc3dSmrg
2521*1debfc3dSmrg	* i386/xm-go32.h (HAVE_{BCOPY,BZERO,BCMP,RINDEX,INDEX}): Define.
2522*1debfc3dSmrg
2523*1debfc3dSmrg        * gcc.c (main): Treat paths starting with '$' or DOS drives
2524*1debfc3dSmrg	as absolute in standard_startfile_prefix.
2525*1debfc3dSmrg
2526*1debfc3dSmrgThu Feb  5 21:07:12 1998  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2527*1debfc3dSmrg
2528*1debfc3dSmrg	* cpplib.c (IS_INCLUDE_DIRECTIVE_TYPE): Add casts from enum to int.
2529*1debfc3dSmrg	* cccp.c (IS_INCLUDE_DIRECTIVE_TYPE, handle_directive): Likewise.
2530*1debfc3dSmrg
2531*1debfc3dSmrgThu Feb  5 19:00:44 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2532*1debfc3dSmrg
2533*1debfc3dSmrg	* expr.c (expand_expr, case CONSTRUCTOR): Correct shift count
2534*1debfc3dSmrg	when making signed bit field; use EXPAND_NORMAL, not 0.
2535*1debfc3dSmrg
2536*1debfc3dSmrgThu Feb  5 17:42:43 1998  Manfred Hollstein  <manfred@s-direktnet.de>
2537*1debfc3dSmrg
2538*1debfc3dSmrg	* libgcc2.c (__clear_insn_cache): On sysV68 enable the memctl
2539*1debfc3dSmrg	stuff only if MCT_TEXT is #define'd.
2540*1debfc3dSmrg
2541*1debfc3dSmrgThu Feb  5 17:32:01 1998  Robert Hoehne  <robert.hoehne@gmx.net>
2542*1debfc3dSmrg
2543*1debfc3dSmrg	* Makefile.in: Changed most stamp-* to s-*.
2544*1debfc3dSmrg
2545*1debfc3dSmrgTue Feb  3 19:45:50 1998  James Hawtin <oolon@ankh.org>
2546*1debfc3dSmrg
2547*1debfc3dSmrg	* i386/sol2.h (STARTFILE_SPEC, LIB_SPEC): Update -pg files.
2548*1debfc3dSmrg	* configure.in (i[3456]86-*-solaris2*): Add gcrt1.o and gmon.o
2549*1debfc3dSmrg	to extra_parts.
2550*1debfc3dSmrg
2551*1debfc3dSmrgTue Feb  3 17:28:48 1998  Christopher C Chimelis <chris@classnet.med.miami.edu>
2552*1debfc3dSmrg
2553*1debfc3dSmrg	* configure.in (alpha*-*-linux-gnu*): Add extra_parts for crtstuff.
2554*1debfc3dSmrg
2555*1debfc3dSmrgTue Feb  3 17:18:19 1998  Richard Earnshaw  <rearnsha@arm.com>
2556*1debfc3dSmrg
2557*1debfc3dSmrg	* arm.c (find_barrier): Fix one-too-many bug if fail to find barrier.
2558*1debfc3dSmrg
2559*1debfc3dSmrg	* arm.c (arm_reload_in_hi): Handle cases where the MEM is too
2560*1debfc3dSmrg	complex for a simple offset.
2561*1debfc3dSmrg
2562*1debfc3dSmrgTue Feb  3 16:14:21 1998  Robert Hoehne  <robert.hoehne@gmx.net>
2563*1debfc3dSmrg
2564*1debfc3dSmrg	* i386/xm-go32.h (EXECUTABLE_SUFFIX): Define.
2565*1debfc3dSmrg
2566*1debfc3dSmrg	* configure.in (i[3456]86-pc-msdosdjgpp*): New entry.
2567*1debfc3dSmrg
2568*1debfc3dSmrgTue Feb  3 07:33:58 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2569*1debfc3dSmrg
2570*1debfc3dSmrg	* explow.c (probe_stack_range): Properly check for small
2571*1debfc3dSmrg	number of probes.
2572*1debfc3dSmrg
2573*1debfc3dSmrg	* gcc.c (process_command, case 'V'): Validate arg.
2574*1debfc3dSmrg
2575*1debfc3dSmrg	* configure.in (sbrk): Add check for needed declaration.
2576*1debfc3dSmrg	* acconfig.h (NEED_DECLARATION_SBRK): New entry.
2577*1debfc3dSmrg	* toplev.c (sbrk): Update declaration conditional.
2578*1debfc3dSmrg	* mips-tfile.c (sbrk, free): Likewise.
2579*1debfc3dSmrg
2580*1debfc3dSmrg	* sparc/sysv4.h (DBX_REGISTER_NUMBER): Remove abort.
2581*1debfc3dSmrg
2582*1debfc3dSmrg	* mips.c (mips_expand_prologue): Pass reg 25 to gen_loadgp.
2583*1debfc3dSmrg	* mips.md (loadgp): Add second operand for register number to add.
2584*1debfc3dSmrg	(builtin_setjmp_receiver): Pass new label and reg 31 to loadgp.
2585*1debfc3dSmrg
2586*1debfc3dSmrg	* toplev.c: Include insn-codes.h, insn-config.h, and recog.h.
2587*1debfc3dSmrg 	(compile_file): Try to emit nop to separate gcc_compiled symbol.
2588*1debfc3dSmrg	* Makefile.in (toplev.o): Depends on insn-{codes,config}.h, recog.h.
2589*1debfc3dSmrg
2590*1debfc3dSmrgTue Feb  3 06:58:46 1998  Mark Mitchell  <mmitchell@usa.net>
2591*1debfc3dSmrg
2592*1debfc3dSmrg	* integrate.c (get_label_from_map): New function.
2593*1debfc3dSmrg	(expand_inline_function): Use it.
2594*1debfc3dSmrg	Initialize label_map to NULL_RTX instead of gen_label_rtx.
2595*1debfc3dSmrg	(copy_rtx_and_substitute): Use get_label_from_map.
2596*1debfc3dSmrg	* integrate.h (get_label_from_map): New function.
2597*1debfc3dSmrg	(set_label_from_map): New macro.
2598*1debfc3dSmrg	* unroll.c (unroll_loop, copy_loop_body): Use them.
2599*1debfc3dSmrg
2600*1debfc3dSmrgMon Feb  2 16:33:01 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2601*1debfc3dSmrg
2602*1debfc3dSmrg	* i386.md (mov{si,hi,sf,df,xf}cc{,_1}): Remove cases with branches.
2603*1debfc3dSmrg
2604*1debfc3dSmrg	* rs6000/x-aix31 (INSTALL): Deleted.
2605*1debfc3dSmrg	* mips/x-dec-osf1, mips/x-osfrose, i386/x-osfrose: Likewise.
2606*1debfc3dSmrg	* arm/x-riscix: Likewise.
2607*1debfc3dSmrg
2608*1debfc3dSmrg	* c-typeck.c (signed_or_unsigned_type): Properly handle pointer types.
2609*1debfc3dSmrg
2610*1debfc3dSmrgMon Feb  2 15:33:58 1998  Michael P. Hayes  <michaelh@ongaonga.chch.cri.nz>
2611*1debfc3dSmrg
2612*1debfc3dSmrg	* unroll.c (copy_loop_body):  Use single_set instead of
2613*1debfc3dSmrg	PATTERN to detect increment of an iv inside a PARALLEL.
2614*1debfc3dSmrg
2615*1debfc3dSmrgFri Jan 16 20:29:50 1998  Paul Eggert  <eggert@twinsun.com>
2616*1debfc3dSmrg
2617*1debfc3dSmrg	* toplev.c (<unistd.h>): New include.
2618*1debfc3dSmrg	(get_run_time): Prefer CLK_TCK (if available) to HZ, and
2619*1debfc3dSmrg	prefer sysconf (_SC_CLK_TCK) (if available) to CLK_TCK.
2620*1debfc3dSmrg	* configure.in (sysconf): Call AC_CHECK_FUNCS.
2621*1debfc3dSmrg
2622*1debfc3dSmrgWed Jan 14 20:10:51 1998  Paul Eggert  <eggert@twinsun.com>
2623*1debfc3dSmrg
2624*1debfc3dSmrg	* cccp.c: (rescan): Don't report line 0 as the possible real start
2625*1debfc3dSmrg	of an unterminated string constant.
2626*1debfc3dSmrg	Don't mishandle backslash-newlines that in are the output of
2627*1debfc3dSmrg	a macro expansion.  Properly skip // style comments between a function
2628*1debfc3dSmrg	macro name and '(', as well as backslash-newlines in comments there.
2629*1debfc3dSmrg	(handle_directive): Handle / \ newline * between # and directive name.
2630*1debfc3dSmrg	In #include directives, \ does not escape ".
2631*1debfc3dSmrg	(do_include): For `#include "file', do not bother expanding into temp
2632*1debfc3dSmrg	buffer.  When error encountered when expanding, do not try result.
2633*1debfc3dSmrg	(skip_if_group): When skipping an include directive, use include
2634*1debfc3dSmrg	tokenization, not normal tokenization.  Backslash-newline is still
2635*1debfc3dSmrg	special when skipping.  Handle * \ newline / correctly in comments
2636*1debfc3dSmrg	when skipping.
2637*1debfc3dSmrg	(skip_quoted_string): After \ newline, set *backslash_newlines_p
2638*1debfc3dSmrg	even if count_newlines is 0.
2639*1debfc3dSmrg	(macroexpand): Newline space is not a special marker inside a string.
2640*1debfc3dSmrg	(macroexpand, macarg): Do not generate \ddd for control characters
2641*1debfc3dSmrg	when stringifying; the C Standard does not allow this.
2642*1debfc3dSmrg	(macarg1): New arg MACRO.  All callers changed.
2643*1debfc3dSmrg	Do not treat /*, //, or backslash-newline specially when processing
2644*1debfc3dSmrg	the output of a macro.
2645*1debfc3dSmrg	(discard_comments): Don't go past limit if looking for end of comment.
2646*1debfc3dSmrg	Discard backslash-newline properly when discarding comments.
2647*1debfc3dSmrg	(change_newlines): \" does not end a string.
2648*1debfc3dSmrg	(make_definition): Do not treat backslash-newline specially, as it
2649*1debfc3dSmrg	has already been removed before we get here.
2650*1debfc3dSmrg
2651*1debfc3dSmrg	* profile.c (output_func_start_profiler): Don't fflush output
2652*1debfc3dSmrg	if -quiet.
2653*1debfc3dSmrg	* toplev.c (rest_of_compilation): Likewise.
2654*1debfc3dSmrg
2655*1debfc3dSmrg	* i386/x-sco5 (CC): Remove trailing white space.
2656*1debfc3dSmrg	* x-convex (CCLIBFLAGS): Likewise.
2657*1debfc3dSmrg	* arm/t-semi (LIBGCC2_CFLAGS): Likewise.
2658*1debfc3dSmrg
2659*1debfc3dSmrgWed Jan  7 18:02:42 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2660*1debfc3dSmrg
2661*1debfc3dSmrg	* Version 2.8.0 released.
2662*1debfc3dSmrg
2663*1debfc3dSmrgWed Jan  7 17:54:41 1998  J. Kean Johnston  <jkj@sco.com>
2664*1debfc3dSmrg
2665*1debfc3dSmrg	* i386/sco5.h ({END,START}FILE_SPEC): Link with correct crtbegin.o
2666*1debfc3dSmrg	and crtend.o when using -static.
2667*1debfc3dSmrg
2668*1debfc3dSmrgWed Jan  7 17:49:14 1998  Jan Christiaan van Winkel <Jan.Christiaan.van.Winkel@ATComputing.nl>
2669*1debfc3dSmrg
2670*1debfc3dSmrg	* cppexp.c (gansidecl.h): Include.
2671*1debfc3dSmrg
2672*1debfc3dSmrgWed Jan  7 17:45:07 1998  Tristan Gingold  <gingold@puccini.enst.fr>
2673*1debfc3dSmrg
2674*1debfc3dSmrg	* expr.c (get_push_address): Use copy_to_reg instead of force_operand.
2675*1debfc3dSmrg	(emit_push_insn): Avoid null pointer deference if aggregate has no
2676*1debfc3dSmrg	types.
2677*1debfc3dSmrg	(expand_expr): Avoid finite but useless recursion.
2678*1debfc3dSmrg	(expand_builtin): Fix typo in calling function.
2679*1debfc3dSmrg	* function.c (assign_parms): Avoid useless call to chkr_set_right.
2680*1debfc3dSmrg
2681*1debfc3dSmrgWed Jan  7 17:31:13 1998  Christian Iseli  <Christian.Iseli@lslsun.epfl.ch>
2682*1debfc3dSmrg
2683*1debfc3dSmrg	* combine.c (force_to_mode): Return if operand is a CLOBBER.
2684*1debfc3dSmrg
2685*1debfc3dSmrgWed Jan  7 17:23:24 1998  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2686*1debfc3dSmrg
2687*1debfc3dSmrg	* x-rs6000 (INSTALL): Remove.
2688*1debfc3dSmrg
2689*1debfc3dSmrg	* jump.c (jump_optimize): Don't use a hard reg as an operand
2690*1debfc3dSmrg	of a conditional move if small register classes.
2691*1debfc3dSmrg
2692*1debfc3dSmrgWed Jan  7 17:09:28 1998  Jim Wilson  <wilson@cygnus.com>
2693*1debfc3dSmrg
2694*1debfc3dSmrg	* cse.c (max_insn_uid): New variable.
2695*1debfc3dSmrg	(cse_around_loop): Use it.
2696*1debfc3dSmrg	(cse_main): Set it.
2697*1debfc3dSmrg
2698*1debfc3dSmrgSee ChangeLog.11 for earlier changes.
2699*1debfc3dSmrg
2700*1debfc3dSmrg
2701*1debfc3dSmrgCopyright (C) 1998-1999 Free Software Foundation, Inc.
2702*1debfc3dSmrg
2703*1debfc3dSmrgCopying and distribution of this file, with or without modification,
2704*1debfc3dSmrgare permitted in any medium without royalty provided the copyright
2705*1debfc3dSmrgnotice and this notice are preserved.
2706