ChangeLog revision 33965
1Sat Jun 29 12:33:39 1996  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2
3	* Version 2.7.2.1 released.
4
5Tue Jun 11 20:18:03 1996  Per Bothner <bothner@cygnus.com>
6
7	* fix-header.c (read_scna_file):  Invoke FIXPROTO_INIT if defined.
8	* alpha.h (FIXPROTO_INIT):  Define new macro.
9
10Fri May 10 18:35:00 1996  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
11
12	* loop.c (maybe_eliminate_biv_1): Disable all but two cases
13	of biv elimination with givs and restrict those two cases to
14	an ADD_VAL that is an address.
15
16Mon Apr 22 16:50:19 1996  Jeremy Bettis  <jeremy@hksys.com>
17
18	* objc/hash.c (hash_value_for_key): Prevent endless loop when 0 was
19	stored in a hashtable.
20
21Wed Apr 17 17:53:23 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
22
23	* rs6000.c (expand_block_move_mem): Copy RTX_UNCHANGING_P.
24	(expand_block_move): Copy dest/src to registers using
25	copy_addr_to_reg, call expand_block_move_mem to copy all of the
26	bits.
27
28Mon Apr  8 13:46:28 1996  Michael Meissner  <meissner@tiktok.cygnus.com>
29
30	* rs6000.c (output_{prolog,epilog}): For V.4/eabi systems, change
31	prologue and epilogue so that accesses beyond the current stack
32	pointer are not done like they are for AIX.
33
34Fri Mar 26 05:43:06 1996  Torbjorn Granlund  <tege@noisy.matematik.su.se>
35
36	* vax.md (insv matcher): Call CC_STATUS_INIT.
37	* vax.h (NOTICE_UPDATE_CC): Handle ZERO_EXTRACT destination.
38
39Sat Mar 23 18:25:39 1996  J"orn Rennecke (amylaar@meolyon.hanse.de)
40
41	* c-typeck.c (set_init_index): Check for use outside an array
42	initializer.
43
44Sat Mar 23 09:21:40 1996  Doug Evans  <dje@canuck.cygnus.com>
45
46	* sparc/sparc.h (CONDITIONAL_REGISTER_USAGE): Don't unfix %g[234]
47	if fixed with -ffixed-.
48
49Wed Mar 13 20:36:10 1996  Jim Wilson  <wilson@chestnut.cygnus.com>
50
51	* mips.c (mips_expand_prologue): Change TYPE_NEEDS_CONSTRUCTING to
52	TREE_ADDRESSABLE;
53	* pa.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
54
55Tue Mar 12 14:36:02 1996  Jason Merrill  <jason@yorick.cygnus.com>
56
57	* lex.c (real_yylex): Warn about using the `namespace' keyword.
58
59Tue Feb 27 08:18:12 1996  Richard Earnshaw (rearnsha@armltd.co.uk)
60
61	* arm.md (mov{si,sf,df}cc and matchers): All conditional move
62	patterns must have a mode.
63
64Mon Feb 19 07:35:07 1996  Torbjorn Granlund  <tege@tmg.se>
65
66        * rs6000.md (not:SI with assign and compare): Fix typo.
67
68Wed Jan 24 18:00:12 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
69
70	* alpha.c (alpha_write_verstamp): Only emit MS_STAMP and LS_STAMP,
71	not the extra numbers.
72
73Wed Jan 17 21:22:40 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
74
75	* cp/decl2.c (grokfield): Call cplus_decl_attributes with the attrlist.
76	Pass a null tree to grokdeclarator for its ATTRLIST arg, since it's
77	only ever used for functions in it.
78
79Tue Jan 16 06:01:28 1996  Thomas Graichen  <graichen@omega.physik.fu-berlin.de>
80
81	* i386/freebsd.h (ASM_WEAKEN_LABEL): Deleted; not supported.
82
83Sun Jan  7 17:11:11 1996  David Edelsohn  <edelsohn@mhpcc.edu>
84
85	* collect2.c (scan_libraries): Correct Import File ID interpretation.
86
87Thu Dec 28 22:24:53 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
88
89	* rs6000.md (common mode functions): Add condition reg clobbers.
90
91Tue Dec 19 15:08:31 1995  Jason Merrill  <jason@yorick.cygnus.com>
92
93	* collect2.c: Remove auto_export functionality.
94
95Mon Dec 18 18:40:34 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
96
97        * svr4.h (ASM_IDENTIFY_GCC): Don't output stab here.
98	(ASM_IDENTIFY_GCC_AFTER_SOURCE): Output stab here instead of
99	above.
100
101Sat Dec 16 07:03:33 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
102
103	* stor-layout.c (layout_record): When PCC_BITFIELD_TYPE_MATTERS,
104	compute bitpos using field_size % type_align instead of field_size.
105
106Fri Dec 15 18:41:50 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
107
108	* fixincludes (sys/wait.h):  Add forward declaration of struct rusage
109	on AIX 3.2.5.
110
111Sat Dec  9 18:05:03 1995  Jim Wilson  <wilson@cygnus.com>
112
113	* expr.c (expand_expr, case INDIRECT_REF): Correct typo in May 8
114	change.
115
116Sun Nov 26 14:47:42 1995  Richard Kenner  <kenner@mole.gnu.ai.mit.edu>
117
118	* Version 2.7.2 released.
119
120	* function.c (fixup_var_refs_1): Make pseudo for DEST
121	in PROMOTED_MODE unless in a SUBREG.
122
123	* cse.c (insert): Don't put a REG into qty_const.
124
125	* msdos/top.sed: Change version to 2.7.2.
126	* winnt/config-nt.sed: Likewise.
127
128Sun Nov 26 14:41:49 1995  Douglas Rupp  (drupp@cs.washington.edu)
129
130	* Makefile.in (stamp-objlist): Change .o to $objext.
131
132	* alpha/win-nt.h (CPP_PREDEFINES): Set __unaligned and __stdcall
133	to null.
134	(ASM_SPEC): Add a translation for -g to -Zi.
135	* winnt/ld.c (main): Don't pass -g to link.
136	* winnt/oldnames.c: Reformat and add some new functions for gnat1.
137	* winnt/win-nt.h (LINK_SPEC): Pass -g to ld.exe.
138	Increase default stack size.
139	* configure ({alpha-dec,i386-ibm}-winnt3.5): Add oldnames.o
140	to extra_objs.
141	* libgcc2.c (trampoline): Add getpagesize and mprotect for WINNT.
142	
143Sun Nov 26 14:25:26 1995  Uwe Seimet  (seimet@chemie.uni-kl.de)
144
145        * atari.h (FUNCTION_VALUE): Deleted; incorrect.
146
147Sun Nov 26 14:23:03 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
148
149	* fixincludes (curses.h): Allow space or tab after bool keyword,
150	instead of tab or tab.
151
152Sun Nov 26 14:14:11 1995  Oliver Kellogg  (oliver.kellogg@space.otn.dasa.de)
153
154	* 1750a.md (pattern for HImode PSHM): Corrected.
155	(trunchiqi2, zero_extendqihi2, extendhftqf2): Corrected.
156	(pattern for movhi of CONST_INT to REG): Corrected.
157	(divmodqi pattern for DISN): Corrected.
158	(all shift patterns): Corrected.
159
160	* 1750a.h (REG_OK_FOR_INDEX_P, REG_OK_FOR_BASE_P): Corrected.
161 	(ASM_OUTPUT_[datatype]): Corrected datalbl[].size computation
162	for output of arrays.
163
164Sun Nov 26 14:08:57 1995  Dave Love  <d.love@dl.ac.uk>
165
166        * mips/iris5.h (NO_IMPLICIT_EXTERN_C): Define this again so
167	that unistd.h doesn't get badly `fixed' for C++.  libg++ will now
168	build with this definition.
169
170Sun Nov 26 14:02:43 1995  Robert E. Brown  (brown@grettir.bibliotech.com)
171
172	* configure: Better workaround for Nextstep bug.
173
174Sun Nov 26 13:55:07 1995  Torbjorn Granlund  <tege@bozo.matematik.su.se>
175
176	* rs6000.md (load_multiple matcher): Fix typo in opcode.
177
178Sun Nov 26 13:51:08 1995  Lee Iverson  <leei@Canada.AI.SRI.COM>
179
180	* final.c (final_start_function): Move call to sdbout_begin_function
181	back to final_scan_insn on MIPS systems so parameter descriptions are
182	recognized.
183
184Sun Nov 26 13:43:06 1995  DJ Delorie  (dj@delorie.co)m
185
186	* msdos/top.sed: Don't insert "go32".
187
188Sun Nov 26 12:08:23 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
189
190	* combine.c (nonzero_bits, case REG):  Put POINTERS_EXTEND_UNSIGNED
191	code before stack pointer code.  Return nonzero at end of stack
192	pointer code.
193
194	* sparc.h (PRINT_OPERAND_ADDRESS): Handle CONST inside PLUS.
195
196	* Makefile.in (cppalloc.o): Add a rule to build it.
197
198	* alpha.c (alpha_emit_set_const): Don't output SImode sequences
199	that rely on invisible overflow.  Sign extend new when SImode.
200	Don't recur if new == c.  Don't allow shift outside mode.  Make
201	logical right shift be unsigned.
202
203Sun Nov 26 11:37:50 1995  Arne H. Juul  (arnej@idt.unit.no)
204
205	* Makefile.in (compare*): Add "|| true" to avoid spurious
206	failure messages from some versions of make.
207
208Sun Nov 26 11:20:09 1995  Dmitry K. Butskoy  (buc@stu.spb.su)
209
210        * expr.c (truthvalue_conversion): Add declaration.
211
212Sun Nov 12 18:09:35 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
213
214	* Version 2.7.1 released.
215
216	* function.c (put_reg_into_stack): New arg volatile_p.
217	(put_var_into_stack): Call with new arg.
218
219Sat Nov 11 08:25:34 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
220
221	* reload.c (output.h): Include it.
222	* Makefile.in (reload.o): Add dependence on output.h.
223
224Thu Nov  9 11:24:20 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
225
226	* mips.h (HARD_REGNO_NREGS): If FP_REG_P, always use UNITS_PER_FPREG
227	to calculate number of words needed.
228
229Thu Nov  9 11:04:50 1995  Oliver Kellogg  (Oliver.Kellogg@space.otn.dasa.de)
230
231	* 1750a.md (cmphf): Addd Base Reg with Offset address mode (LB,STB,..)
232	(movqi,movhi,movhf,addqi3,addhf3,subqi3,subhf3,mulqihi3): Likewise.
233	(mulhf3,divhf3,andqi3,iorqi3): Likewise.
234	(define_peephole): Remove the Base mode peepholes. Replace the
235	special addqi define_insn for "LIM Ra,sym,Rb" by a define_peephole.
236	(ashlqi3): Took out futile 0th alternative.
237	(lshrqi3, lshrhi3, ashrqi3, ahsrhi3): Correct case of non-constant
238	shift count.
239
240	* 1750a.h (REG_ALLOC_ORDER): Define.
241	(REGNO_OK_FOR_BASE_P): Include stack pointer in test against
242	reg_renumber[REGNO].
243	(ASM_OUTPUT_DESTRUCTOR): Remove bogus assembler comment.
244
245Thu Nov  9 11:01:33 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
246
247	* expr.c (expand_expr, case ARRAY_REF): Properly convert types
248	of index, size, and multiplication.
249
250Wed Nov  8 09:00:22 1995  Richard Earnshaw (rearnsha@armltd.co.uk)
251
252	* arm.md (mov*cc_{,soft_}insn): Use match_operator to test the
253	comparison and check that the condition code register is used.
254
255Wed Nov  8 08:49:35 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
256
257	* rs6000/sysv4.h (ASM_OUTPUT_{CONSTRUCTOR,DESTRUCTOR}): Undef before
258	including svr4.h.
259
260Tue Nov  7 10:58:12 1995  Torbjorn Granlund  <tege@bozo.matematik.su.se>
261
262	* m68k.md (subxf3): Properly name pattern.
263
264Tue Nov  7 10:53:09 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
265
266	* libgcc2.c (__{C,D}TOR_LIST): For AIX, initialize these arrays to
267	0,0, just like NeXT to avoid a warning message from the AIX 4.1
268	linker.
269
270Tue Nov  7 09:58:34 1995  John F. Carr <jfc@mit.edu>
271
272	* cppexp.c (cpp_lex): Correctly parse character constants.
273
274Tue Nov  7 09:52:15 1995  Jason Merrill  <jason@yorick.cygnus.com>
275
276	* rs6000.h (ASM_OUTPUT_{DES,CONS}TRUCTOR): Define.
277
278Mon Nov  6 10:27:15 1995  Doug Evans  <dje@cygnus.com>
279
280	* combine.c (force_to_mode): Fix typo.
281
282Sun Nov  5 18:37:02 1995  Torbjorn Granlund  <tege@bozo.matematik.su.se>
283
284	* m68k.md (cmpxf): Don't call force_const_mem, it looses for PIC;
285	get predicates right instead.  Get rid of separate DEFINE_EXPAND.
286	(addxf3, subxf3, mulxf3, divxf3): Likewise.
287	(All XFmode patterns): Delete `F' and `G' constraints.
288	(absxf2, negxf2): Delete spurious condition on TARGET_FPA.
289
290Sun Nov  5 11:05:44 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
291
292	* fixincludes (malloc.h):  Fix return type of {m,re}alloc.
293
294Sun Nov  5 11:02:26 1995  J"orn Rennecke (amylaar@meolyon.hanse.de)
295
296        * cse.c (invalidate): For a pseudo register, do a loop to
297	invalidate all table entries, irrespective of mode.
298
299Sun Nov  5 10:57:43 1995  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
300
301	* combine.c (force_to_mode): Put in last change properly.
302
303Sun Nov  5 10:53:49 1995  Jeffrey A Law  (law@cygnus.com)
304
305	* pa.h (CONDITIONAL_REGISTER_USAGE): Make sure FP regs
306	get disabled regardless of PA1.0 vs PA1.1 code generation
307	when TARGET_SOFT_FLOAT or TARGET_DISABLE_FPREGS is on.
308
309Sun Nov  5 10:49:43 1995  Doug Evans  <dje@lisa.cygnus.com>
310
311	* i960.c (emit_move_sequence): Add a scratch register to
312	multi-reg stores.
313	(i960_output_move_{double,quad}): New functions.
314	(i960_print_operand): Handle new operand types E, F.
315	* i960.md (movdi matchers): Rewrite.
316	(store_unaligned_di_reg): New pattern.
317	(movti matchers): Rewrite.
318	(store_unaligned_ti_reg): New pattern.
319	
320Sun Nov  5 10:45:24 1995  Ian Lance Taylor  (ian@cygnus.com)
321
322	* mips.h (MULTILIB_DEFAULTS): Define.
323	* mips/elf64.h, mips/iris6.h (MULTILIB_DEFAULTS): Define.
324
325Sun Nov  5 10:41:48 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
326
327	* reload.c (push_reload): Delete abort for RELOAD_OTHER case added
328	in last change.
329	* reload1.c (emit_reload_insns): For RELOAD_OTHER output reloads,
330	output the reload insns in descending order of reloads.
331	
332	* sh.md (mulsidi3-1, mulsidi3, umulsidi3-1, umulsidi3): Enable.
333	(smulsi3_highpart-1, smulsi3_highpart): New patterns.
334	(umulsi3_highpart-1, umulsi3_highpart): Likewise.
335	(movdi-1): Add r/x constraint.
336	* t-sh (MULTILIB_OPTIONS): Add m2.
337	(MULTILIB_DIRNAMES): Add m2.
338	(MULTILIB_MATCHES): Define.
339
340	* sparc.h (RTX_COSTS, case MULT): Check for TARGET_SPARCLITE.
341
342	* abi64.h, elf64.h (CPP_SPEC): Add -EB and -EL support.
343
344Sat Nov  4 10:36:26 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
345
346	* sh.md (casesi_worker): Change constraint from = to +.
347
348	* svr4.h (ASM_IDENTIFY_GCC_AFTER_SOURCE): Delete.
349	(ASM_IDENTIFY_GCC): Output stab here.
350
351Sat Nov  4 10:32:37 1995  John Carr  <jfc@mit.edu>
352
353	* cpplib.c (finclude): Set current input pointer when input
354	is not a regular file.
355
356	* cppmain.c: Define progname, required by cpplib.
357
358Sun Oct 29 07:48:36 1995  Michael Meissner  <meissner@cygnus.com>
359
360	* xcoffout.h (DBX_FINISH_SYMBOL): Deal with names created via
361	the __asm__ construct that start with a leading '*'.
362	* xcoffout.c (xcoff_declare_function): Likewise.
363
364Sun Oct 29 07:45:41 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
365
366	* stupid.c (stupid_mark_refs): Handle SUBREG of pseudo-reg in a
367	SET_DEST same as we handle a pseudo-reg in a SET_DEST.
368
369Sun Oct 29 07:43:15 1995  Pat Rankin  <rankin@eql.caltech.edu>
370
371	* libgcc2.c (L_eh: __unwind_function): Implement for VAX.
372	* vax.h (RETURN_ADDRESS_OFFSET, RETURN_ADDR_RTX): Define.
373
374Sun Oct 29 12:39:08 1995  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>a
375
376	* i386/sol2.h (CPP_PREDEFINES): Add -D__SVR4.
377
378Sun Oct 29 07:14:36 1995  J"orn Rennecke (amylaar@meolyon.hanse.de)
379
380	* reload.c (find_equiv_reg): Check for nonsaving setjmp.
381
382Fri Oct 27 15:15:56 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
383
384	* Makefile.in (out_object_file): Depend on TREE_H.
385
386Fri Oct 27 06:42:36 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
387
388	* alpha.c (call_operand): Only allow reg 27 on NT too.
389	* alpha.md (call_value_nt, call_nt): Force non-SYMBOL_REF
390	into reg 27, just like for OSF.
391
392	* rs6000.c (struct asm_option): Changed from struct option.
393	(expand_block_move_mem): Remove erroneously-added line.
394
395	* expr.c (clear_storage): SIZE is now rtx, not int.
396	(store_constructor): Call clear_storage with rtx.
397	(get_inner_reference): Convert index to precision of
398	sizetype, not POINTER_SIZE.
399	(expand_expr, case ARRAY_REF): Likewise.
400	* expr.h (clear_storage): Second arg is rtx, not int.
401
402Fri Oct 27 05:45:58 1995  J"orn Rennecke (amylaar@meolyon.hanse.de)
403
404	* combine.c (force_to_mode, case ASHIFTRT): Properly handle
405	mask wider than HOST_WIDE_INT.
406
407        * c-decl.c (pushdecl): Don't test TREE_PUBLIC when deciding whether
408	to register a duplicate decl in the current block.
409
410Thu Oct 26 21:55:39 1995  Jason Merrill  <jason@sethra.cygnus.com>
411
412	* calls.c (expand_call): Don't trust the callee to copy a
413 	TREE_ADDRESSABLE type.
414	* function.c (assign_parms): Likewise.
415
416Thu Oct 26 19:25:05 1995  Mike Stump  <mrs@cygnus.com>
417
418	* libgcc2.c (__unwind_function): Provide a default definition for
419	implementations that don't yet have a function unwinder.
420
421Thu Oct 26 18:08:19 1995  Paul Eggert  <eggert@twinsun.com>
422
423	* cccp.c (handle_directive): Don't treat newline as white
424	space when coalescing white space around a backslash-newline.
425
426Thu Oct 26 17:57:34 1995  Ian Lance Taylor  <ian@cygnus.com>
427
428	* mips-tdump.c (enum st): Define st_Struct, st_Union, and st_Enum.
429	(st_to_string): Handle them.
430	(type_to_string): Add fdp argument; pass it to emit_aggregate.
431	(print_symbol): Add fdp argument; pass it to type_to_string.
432	Handle st_Struct, st_Union, and st_Enum.
433	(emit_aggregate): Add fdp argument.  Handle opaque types.  Map
434	through RFD entries.
435	(print_file_desc): Pass FDR to print_symbol.
436	(main): Pass null FDR to type_to_string.
437
438Thu Oct 26 08:07:10 1995  Michael Meissner  <meissner@cygnus.com>
439
440	* configure (powerpc-ibm-aix[456789]*): Use rs6000/t-newas,
441	not rs6000/t-rs6000.
442	(rs6000-ibm-aix3.2.[456789]*): Likewise.
443	(rs6000-ibm-aix[456789]*): Likewise.
444
445	* rs6000/t-newas: Copy from t-rs6000.
446	* t-rs6000: Don't build -mcpu=common multilib variants of libgcc.a.
447
448	* rs6000.md (load_multiple insn): If address register is among regs,
449	don't load it with a lwsi instruction, which is undefined on PowerPC.
450
451Thu Oct 26 08:01:32 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
452
453	* dwarfout.c (output_compile_unit_die): Handle language_string
454	of "GNU F77".
455
456	* reload.c (find_reloads_address): When check for out of range constant
457	plus register, accept any hard register instead of just fp, ap, sp.
458
459	* combine.c (distribute_notes): For Oct 19 change, add additional
460	check to verify that place has a valid INSN_CUID.
461
462	* sparc/t-vxsparc (LIBGCC1_TEST): Define.
463
464	* sh.md (negdi2): Use TARGET_LITTLE_ENDIAN.
465
466	* combine.c (force_to_mode, case ASHIFTRT): Verify mode bitsize is
467	within HOST_BITS_PER_WIDE_INT before shifting by it.
468
469	* final.c (final_scan_insn): When recur for instruction in delay slot,
470	add loop around recursive call in case the instruction gets split.
471
472Thu Oct 26 07:28:45 1995  J"orn Rennecke (amylaar@meolyon.hanse.de)
473
474	* genrecog.c (write_tree_1): Avoid emitting '-2147483648'.
475
476	* jump.c (duplicate_loop_exit_test): Return 0 if found
477	a NOTE_INSN_LOOP_CONT.
478
479Tue Oct 24 15:30:14 1995  Jeffrey A Law  <law@cygnus.com>
480
481	* calls.c (expand_call): Make sure valreg is at least
482	a full word.
483
484Sun Oct 22 19:35:41 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
485
486	* sh.h (INIT_SECTION_ASM_OP): Delete.
487	(HAVE_ATEXIT): Define.
488
489Sun Oct 22 07:46:04 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
490
491	* libgcc2.c (__fixuns[xds]fsi): #undef MIN and MAX before #include
492	of limits.h.
493
494	* pa.c (pa_adjust_cost): Use pa_cpu, not pa_cpu_attr.
495
496Sun Oct 22 07:38:58 1995  J"orn Rennecke (amylaar@meolyon.hanse.de)
497
498        * alpha.h (CONST_OK_FOR_LETTER_P): Use 'U' for unsigned constants.
499        * alpha.c (alpha_emit_set_const): Likewise.
500        * mips.c (gen_int_relational): Likewise.
501
502Sun Oct 22 07:14:35 1995  Douglas Rupp  (drupp@cs.washington.edu)
503
504	* i386.c (i386_return_pops_args): Don't need a FUNDECL to
505	check for type attributes in FUNTYPE.
506
507Sat Oct 21 18:17:42 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
508
509	* sh.md (define_delay): Don't accept any instruction for an annulled
510	slot, only accept those for which in_delay_slot is yes.
511	* sh.c (find_barrier): When hi_const returns true, increment count_si
512	by two if found_si is true.
513	Always use get_attr_length to compute length of instructions.
514	If count_hi or count_si out of range at end, need two PREV_INSN calls
515	not one.
516	When create new label, set LABEL_NUSES to 1.
517	(reg_unused_after): Ifdef out code for handling labels.
518	(prepare_scc_operands): New local variable mode.  Set it from
519	sh_compare_op0 or sh_compare_op1.  Use it instead of SImode in
520	force_reg calls.
521	
522	* optabs.c (expand_float): Emit missing barrier after unconditional
523	jump.
524
525Sat Oct 21 14:16:46 1995  Torbjorn Granlund  <tege@bozo.matematik.su.se>
526
527	* alpha.md (cmpdf): Make conditional on TARGET_FP.
528
529Fri Oct 20 19:11:12 1995  J"orn Rennecke (amylaar@meolyon.hanse.de)
530
531	* combine.c (distribute_notes): Delete instructions without
532	side effect that set a subreg of an unused register.
533
534	* m68k.h (PREFERRED_RELOAD_CLASS): Check for !G constants
535	for DATA_OR_FP_REGS also.
536
537Fri Oct 20 18:57:10 1995  Ian Lance Taylor  <ian@cygnus.com>
538
539	* genmultilib: Output negations of unused alternatives, even if
540	one of the alternatives is selected.
541
542Fri Oct 20 18:48:50 1995  Jeff Law  (law@hurl.cygnus.com)
543
544	* integrate.c (output_inline_function): Turn on flag_no_inline
545	to avoid function integration once we begin writing deferred
546	output functions.
547
548Fri Oct 20 18:46:33 1995  Michael Meissner  <meissner@wogglebug.tiac.net>
549
550	* rs6000.c (float_conv_temp): Delete global variable.
551	(stack_temps): New static array to hold stack temps.
552	(offsettable_mem_operand): Delete function.
553	(offsettable_addr_operand, rs6000_stack_temp): New functions.
554	(output_epilog): Zero stack_temps.
555
556	* rs6000.h (offsettable_addr_operand): Declare instead of
557	offsettable_mem_operand.
558	(PREDICATE_CODES): Use offsettable_addr_operand.
559	(float_conv_temp): Delete variable.
560
561	* rs6000.md (move_to_float insns): Change move_to_float so
562	that it doesn't have a clobber of the memory address, and instead
563	passes the stack temp's memory address as one of the unspec args.
564	(fix_truncdfsi2): Use rs6000_stack_temp to allocate the temp.
565	(multiply, shift insns): Fix all cases of multiply and shift insns so
566	that the right mnemonics are used for -mcpu=common with both
567	-m{old,new}-mnemonics.
568
569Fri Oct 20 17:58:19 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
570
571	* expr.c (safe_from_p, case RTL_EXPR): Return 0 if RTL_EXPR_SEQUENCE
572	exists.  Delete code to return 0 if exp_rtl is zero.
573
574	* function.c (init_function_start): Don't call init_insn_lengths here.
575	* toplev.c (rest_of_compilation): Call it here.
576
577Thu Oct 19 19:19:06 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
578
579	* c-common.c (check_format_info): Make test for null pointer
580	more general.
581
582Thu Oct 19 18:56:16 1995  Satoshi Adachi  (adachi@wisdom.aa.ap.titech.ac.jp)
583
584	* fixincludes (stdlib.h): Be more general in edit to change
585	declaration of {c,m,re}alloc.
586
587Thu Oct 19 18:48:53 1995  Torbjorn Granlund  <tege@bozo.matematik.su.se>
588
589	* libgcc2.c (__udiv_w_sdiv): If we don't have sdiv_qrnnd, define
590	dummy variant of __udiv_w_sdiv.
591	
592Thu Oct 19 18:45:21 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
593
594	* alpha.h (ASM_SPEC): If GNU as is the default, then pass -g to
595	the assembler if -malpha-as.  If GNU as is not the default, then pass
596	-g to the assembler is not -mgas.
597
598	* combine.c (distribute_notes): When search for new place to put
599	REG_DEAD note, call distribute_links if this new place is between
600	i2 and i3, and i2 uses the register.
601
602Thu Oct 19 18:41:36 1995  Michael Meissner  <meissner@cygnus.com>
603
604	* rs6000.md (float{,uns}sidf2): Rewrite to break the conversion
605	process into several general insns.
606	(move_to_float): New insns to move 2 integer regs into a float register
607	through memory, taking endianess into account.  Make sure that the
608	floating temporary is a valid address.  Use one temporary for all
609	floats converted.
610	(fix_truncdfsi2): Take endianess into account.
611
612	* rs6000.c ({low_32_bit,offsettable_mem}_operand): The function
613	low_32_bit_operand is now unused, delete it.  New function
614	offsettable_mem_operand to determine if a memory address is
615	offsettable.
616	* rs6000.h ({low_32_bit,offsettable_mem}_operand): Ditto.
617	(PREDICATE_CODES): Ditto.
618
619	* rs6000.{c,h} (float_conv_temp): New global.
620	* rs6000.c (output_epilog): Zero out float_conv_temp.
621
622	* Makefile.in (libgcc{1,2}.a): Allow LIB{1,2}FUNCS_EXTRA files to
623	end in .S as well as .c and .asm.
624
625Wed Oct 18 17:56:45 1995  Jose Alonso  (sidinf@fpsp.fapesp.br)
626
627	* c-typeck.c (parser_build_binary_op): Warn about x^y==z, etc.
628
629Mon Oct  9 12:38:06 1995  Michael Meissner  <meissner@cygnus.com>
630
631	* protoize.c (reverse_def_dec_list): Silence compiler warnings.
632
633Mon Oct  9 12:35:54 1995  Andrew Cagney  <cagney@highland.com.au>
634
635	* ginclude/va-ppc.h (va_arg): Deal with long longs that would be
636	passed in the 7th register, and are passed in the stack instead.
637
638Fri Oct  6 13:47:10 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
639
640	* alpha.h (ASM_SPEC): Add -g.
641
642Fri Oct  6 13:42:50 1995  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
643
644	* alpha.h (alpha_{arg,auto}_offset): Make extern.
645
646Fri Oct  6 13:24:43 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
647
648	* rs6000.h (RETURN_ADDRESS_OFFSET): Correct previous change.
649
650Fri Oct  6 13:14:43 1995  Doug Evans  <dje@canuck.cygnus.com>
651
652	* rtlanal.c (reg_set_last): Fix call to reg_set_between_p.
653
654Tue Oct  3 12:31:38 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
655
656	* stor-layout.c (layout_type, case ARRAY_TYPE): Strip MAX_EXPR
657	from upper bound when computing length if it just protects against
658	negative length.
659
660	* expr.c (emit_move_insn_1): When doing multi-word move, show
661	output is clobbered.
662
663Tue Oct  3 12:26:07 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
664
665	* cse.c (set_nonvarying_address_components, case AND): Add *pend to
666	end.  Add constant to start instead of subtracting it.
667
668Tue Oct  3 12:23:28 1995  Torbjorn Granlund  <tege@bozo.matematik.su.se>
669
670	* combine.c (simplify_rtx): In code that attempts to simplify
671 	conditional expressions, if the result is an NE around another
672	comparison, return the original expression.
673
674	* longlong.h (mips umul_ppmm): Use `l' and `h' constraints;
675	remove mflo and mfhi instructions.
676
677Tue Oct  3 12:21:29 1995  Michael Meissner  <meissner@cygnus.com>
678
679	* ginclude/va-ppc.h (va_start, stdarg case): Call
680	__builtin_next_arg, and ignore the result, so that the compiler
681	can report the proper error, if the second argument is not the
682	last argument.
683
684Tue Oct  3 12:02:51 1995  Kohtala Marko  <Marko.Kohtala@ntc.nokia.com>
685
686	* function.c (assign_stack_temp): Adjust full_size field of
687	temp_slot when splitting an unused slot.
688
689Tue Oct  3 11:51:59 1995  Mike Stump  <mrs@cygnus.com>
690
691	* expr.c (expand_builtin_return_addr): Break out functionality
692	from expand_builtin.
693	(expand_builtin): Call expand_builtin_return_addr.
694	* rs6000.h (RETURN_ADDR_RTX): Remove call to copy_to_reg.
695	Offset to return address is 4 when !TARGET_64BIT and v4_call_p,
696	8 otherwise.
697	* sparc.h (RETURN_ADDR_RTX): Remove call to copy_to_reg.
698	* alpha.h (RETURN_ADDR_RTX): New definition.
699
700Sun Oct  1 21:23:30 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
701
702	* tree.c (staticp, case INDIRECT_EXPR): Disable case.
703
704	* expr.c (expand_expr, case COMPONENT_REF): If getting component
705	of union of variable size, propagate TARGET.
706
707Fri Sep 29 07:48:09 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
708
709	* expr.c (store_expr): When storing promoted value, don't return
710	MEM if address contains target.
711
712Thu Sep 28 14:30:03 1995  Paul Eggert  <eggert@twinsun.com>
713
714	* cccp.c (rescan): Expand `#if foo && #bar' without a bogus
715	complaint about preprocessor directives within macro args.
716	Expand `foo' in `foo#bar' without requiring a space before `#'.
717
718Thu Sep 28 14:24:26 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
719
720	* m68k.md (anonymous DImode shift patterns setting cc0): Turned
721	off due to reload problems.
722
723Thu Sep 28 14:05:22 1995  Niklas Hallqvist  (niklas@appli.se)
724
725	* Makefile.in (USER_H): Move up so can override.
726	(INSTALL_ASSERT_H): New definition.
727	(install-headers): Use it.
728	(stmp-int-hdrs): Handle USER_H being empty.
729	* config/x-netbsd (INSTALL_ASSERT_H): Define as empty.
730
731	* i386/netbsd.h (WCHAR_{TYPE,UNSIGNED,TYPE_SIZE}): Now int.
732	* m68k/netbsd.h, ns32k/netbsd.h, sparc/netbsd.h: Likewise.
733	* vax/netbsd.h: Likewise.
734	(SIZE_TYPE): Use unsigned int.
735
736	* m68k.c (output_scc_di): Swap operands when needed.
737	* m68k.h (LEGITIMATE_PIC_OPERAND): Allow SYMBOL_REF_FLAG symref.
738	* m68k.md: Make both assembler syntaxes do the same for PIC calls.
739
740Tue Sep 26 16:51:44 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
741
742	* mips.c (override_options): Don't allow anything but integers to
743	go in the HI/LO registers.
744
745Tue Sep 26 16:36:18 1995  John F. Carr  <jfc@mit.edu>
746
747	* c-common.c (check_format_info): Don't warn about format type
748	mismatch if the argument is an ERROR_MARK.
749
750Mon Sep 25 17:50:50 1995  Craig Burley  (burley@gnu.ai.mit.edu)
751
752	* stor-layout.c (put_pending_sizes): New function.
753	* tree.h (put_pending_sizes): Add declaration.
754	* tree.c (save_expr): Return original for ERROR_MARK.
755
756Fri Sep 22 19:20:01 1995  Jeff Law  (law@hurl.cygnus.com)
757
758	* expr.c (expand_builtin, case BUILT_IN_MEMCPY): Strip off
759	all NOP exprs from the source and destination nodes, then
760	set MEM_IN_STRUCT_P.
761
762Fri Sep 22 18:50:31 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
763
764	* rs6000/eabi.h (ASM_OUTPUT_INT): Test for whether the integer
765	being output is also a constant so &sym - &sym2 is not fixed up.
766
767Fri Sep 22 18:49:07 1995  Peter Flass  (FLASS@LBDRSCS.BITNET)
768
769	* i370.md (cmpsi): Add missing constraints to operand 1.
770
771Fri Sep 22 18:27:33 1995  Torbjorn Granlund  <tege@matematik.su.se>
772
773	* i386.h (CONST_OK_FOR_LETTER_P): Make `N' match range 0..255
774	for `outb' instruction.
775
776	* pyr.h (PRINT_OPERAND): Handle code `R' for REG.
777        * longlong.h (pyr umul_ppmm): Use it.
778
779Fri Sep 22 18:24:38 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
780
781	* c-parse.in (enumlist): Propagate error_mark_node.
782
783	* c-aux-info.c (gen_type): Handle ERROR_MARK.
784
785	* alpha.md (movdi): Avoid memory sharing problem when in reload.
786
787Wed Sep 20 14:27:09 1995  Peter Flass <flass@lbdrscs.bitnet>
788
789        * mvs.h (FUNCTION_PROLOGUE): Maintain savearea forward chain
790	per MVS standards.
791
792Wed Sep 20 14:20:52 1995  Torbjorn Granlund  <tege@matematik.su.se>
793
794        * pyr.md (cmphi recognizer): Make condition match constraints.
795	(cmpqi recognizer): Likewise.
796
797Wed Sep 20 12:42:59 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
798
799	* integrate.c (expand_inline_function): Do copy something setting
800	the result register if it is setting it to itself and has a REG_NOTE.
801
802	* integrate.c (set_decl_{origin_self,abstract_flags}): Treat
803	a DECL_INITIAL of error_mark_node the same as one of NULL_TREE.
804
805Tue Sep 19 19:30:18 1995  Dave Pitts  (dpitts@nyx.cs.du.edu)
806
807	* i370.md (cmphi, movhi, movstricthi, extendhisi2): Correct generation
808	of short integer (Halfword)
809	({add,sub,mul,and,ior,xor}hi3): Likewise.
810	* i370/mvs.h (MACROPROLOGUE): New macro.
811	(FUNCTION_{PRO,EPI}LOGUE): Added ability to use IBM supplied function
812	prologue macros.
813	(FUNCTION_PROLOGUE): Corrected function "in-line" prologue alignment
814	problems.
815	(ASM_DECLARE_FUNCTION_NAME): Changed alignment to FullWord.
816	(ASM_OUTPUT_{SHORT,ASCII}): Reworked.
817
818Tue Sep 19 19:22:15 1995  Douglas Rupp  (drupp@cs.washington.edu)
819
820	* winnt/win-nt.h: Renamed from winnt/win-nt.h.
821	(LINK_SPEC): Add -noinhibit-exec.
822	* {alpha,i386}/win-nt.h: Renamed from {alpha,i386}/winnt.h.
823	Include winnt/win-nt.h, not winnt/winnt.h.
824	* winnt/oldnames.c: New file.
825	* winnt/headers.mak (fixinc-nt.obj): Fix typo.
826	* winnt/config-nt.bat: Change winnt.h to win-nt.h.
827	* i386/config-nt.sed: Likewise.
828	* configure ({alpha,i386}-*-winnt3*): Likewise.
829
830Mon Sep 18 14:00:45 1995  Oliver Kellogg  (Oliver.Kellogg@space.otn.dasa.de)
831
832	* 1750a.h (enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS):
833	Added R2 and R0_1.
834	(REG_CLASS_FROM_LETTER): New letters 't' and 'z'.
835	(EXTRA_CONSTRAINT): New letter 'Q'.
836
837Sun Sep 17 12:39:22 1995  Jeff Law  (law@snake.cs.utah.edu)
838
839	* pa.h (ASM_DECLARE_FUNCTION_NAME): If a parameter's type
840	has TYPE_NEEDS_CONSTRUCTING on, then it's passed by invisible
841	reference.
842
843Sat Sep 16 17:42:33 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
844
845	* loop.c (find_and_verify_loops): Fix error in last change.
846
847Sat Sep 16 08:38:22 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
848
849	* alpha.h (GO_IF_LEGITIMATE_ADDRESS): Disallow SYMBOL_REF for
850	current function.
851
852	* cse.c (recorded_label_ref): New variable.
853	(insert): Set instead of cse_jumps_altered.
854	(cse_main): Initialize it and return 1 if nonzero at end.
855
856Fri Sep 15 18:26:49 1995  Torbjorn Granlund  (tege@matematik.su.se)
857
858	* fold-const (div_and_round_double): Change `carry', `quo_est',
859	and `scale' from plain int to `unsigned HOST_WIDE_INT'.
860
861Fri Sep 15 18:24:24 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
862
863	* cse.c (insert): Set cse_jumps_altered when inserting a LABEL_REF.
864
865Fri Sep 15 17:29:41 1995  Oliver Kellogg  (Oliver.Kellogg@space.otn.dasa.de)
866
867	* 1750a.c (b_mode_operand): New function.
868	(print_operand): Added code 'Q'.
869
870Fri Sep 15 17:27:23 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
871
872	* loop.c (find_and_verify_loops): When moving exit blocks out of
873	the loop, verify that the target of P is within the current loop.
874
875	* reorg.c (fill_slots_from_thread): Update thread if it is split.
876
877Fri Sep 15 17:06:51 1995  Michael Meissner  <meissner@cygnus.com>
878
879	* rs6000.md (decrement_and_branchsi and related insns): Don't use
880	a "2" to select a register preference for operand 1 if operand 2
881	hasn't been seen yet.
882	Add appropriate clobbers in decrement_and_branchsi. 
883	Add patterns where the pc/label_ref are interchanged.
884
885	* Makefile.in (gnucompare, stmp-multilib-sub): Remove extra . in
886	front of $(objext).
887
888	* rs6000.c (output_toc): Align DF constants if STRICT_ALIGNMENT.
889
890	* config/fp-bit.c (FLO_union_type): Add words field if double
891	precision to get at the separate words.
892  	(FLO_union_type, pack_d, unpack_d): Use FLOAT_BIT_ORDER_MISMATCH
893	to determine when the bitfields need to be reversed, and
894	FLOAT_WORD_ORDER_MISMATCH when the words need to be reversed.
895
896Fri Sep 15 16:41:43 1995  Jeff Law  (law@snake.cs.utah.edu)
897
898	* reorg.c (fill_simple_delay_slots): When filling insn's delay slot
899	with JUMP_INSN, don't assume it immediately follows insn on
900	unfilled slots obstack.
901
902	* Makefile.in (caller-save.o): Depend on insn-codes.h.
903
904Thu Sep 14 17:41:49 1995  Jim Meyering  (meyering@comco.com)
905
906	* protoize.c (do_cleaning): Don't blank out backslash-escaped
907	newlines in double quoted strings.
908
909Thu Sep 14 16:20:35 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
910
911	* emit-rtl.c (gen_lowpart): If gen_lowpart_common fails
912	for a REG, load it into a pseudo and try again.
913
914Thu Sep 14 14:15:16 1995  Stan Cox  (coxs@dg-rtp.dg.com)
915
916	* m88k.h (VERSION_INFO1): Removed BCS reference.
917	* m88k/dgux.h (ASM_SPEC, *_LEGEND):
918	Added -mno-legend option. -mstandard no longer implies that legend
919	legend information not be produced.
920	(LINK_SPEC): Removed -z text 
921
922Tue Sep 12 19:05:39 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
923
924	* cccp.c (is_system_include): Call skip_redundant_dir_prefix.
925
926Tue Sep 12 18:58:21 1995  John Carr  <jfc@mit.edu>
927
928	* sparc.md: Change `*return "string"' to "string" in patterns.
929
930Tue Sep 12 18:48:47 1995  Craig Burley  (burley@gnu.ai.mit.edu)
931
932	* function.c (put_var_into_stack): For CONCAT case, order of
933	placement depends on FRAME_GROWS_DOWNWARD, not STACK_GROWS_DOWNWARD.
934
935Tue Sep 12 18:34:10 1995  Doug Evans  <dje@canuck.cygnus.com>
936
937	* va-sparc.h (v9 varargs va_start): Handle __builtin_va_alist
938	being stack argument.
939
940	* sparc.h (STATIC_CHAIN_REGNUM): Use %g5 for sparc64.
941	(TRAMPOLINE_TEMPLATE): Rewrite for sparc64.
942	(TRAMPOLINE_SIZE): Is 40 for sparc64.
943	* sparc.c (sparc64_initialize_trampoline): Rewrite.
944
945Tue Sep 12 18:30:22 1995  Douglas Rupp  (drupp@cs.washington.edu)
946
947	* cp/Make-lang.in (cc1plus) : Removed unnecessary $(exeext).
948
949	* configure: Added code to handle gcc_extra_objs.
950	(alpha-winnt): Changed xmake_file to winnt/x-winnt.
951	Added extra_gcc_objs=spawnv.o; changed extra_programs to ld.exe.
952	(i386-winnt): Changed xmake_file to winnt/x-winnt.
953	Added extra_gcc_objs=spawnv.o; changed extra_programs to ld.exe.
954	* configure.bat: Changed to used common winnt/config-nt.bat.
955	* Makefile.in: Changed various .o's to .$(objext)'s
956	(specs): Removed unnecessary $(exeext).
957	(EXTRA_GCC_OBJS): New variable.
958	(clean): Removed $(LIB2FUNCS_EXTRA)
959	* objc/Makefile: Changed archive command for libobjc.a to use $?
960	for objects.
961
962	* alpha/x-winnt, i386/x-winnt: Deleted.
963	* alpha/config-nt.bat, i386/config-nt.bat: Deleted.
964	* alpha/config-nt.sed, i386/config-nt.sed: Moved architecture
965	independent commands to config/winnt/config-nt.sed.
966	* alpha/winnt.h: Added -D_M_ALPHA to CPP_PREDEFINES.
967	Changed LIB_SPEC to be compatible with Gnu ld for NT.
968	* i386/winnt.h: Added -D_cdecl=__attribute__((__cdecl__)).
969	Change LIB_SPEC to be compatible with Gnu ld for NT.
970	* winnt/config-nt.bat, winnt/config-nt.sed: New files.
971	* winnt/dirent.{c,h}, winnt/fixinc-nt.c, winnt/headers.mak: New files.
972	* winnt/ld.c: Changed precedence of libraries to look for
973	libfoo.lib before libfoo.a
974	Changed to work like Gnu ld for NT.
975	* winnt/libgcc.mak, winnt/mklibgcc.c: New files.
976	* winnt/spawnv.c: Changed spawn function entry points to __spawn*
977	instead of spawn*.
978	* winnt/x-winnt: New file.
979	* fixinc-nt.sed: New file.
980	* fixinc.winnt: Rewritten to use fixinc-nt.sed.
981
982	* gcc.c: Remove fix_argv kludge.
983
984Tue Sep 12 13:24:17 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
985
986	* rs6000.md (power subdi3 pattern): Fix pattern to have 5
987	alternatives, and correct 4th alternative to match reality.
988
989	* rs6000.md (adddi3, subdi3, negdi2): Add constraints so output reg
990	does not overlap one reg with one of the inputs.
991
992Tue Sep 12 13:09:48 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
993
994	* m68k.c (output_scc_di): Fixed for non-SGS_CMP_ORDER syntax.
995
996	* collect2.c (scan_libraries): Cast lsyms' alloca to LDSYM*.
997
998Tue Sep 12 13:04:12 1995  Niklas Hallqvist  (niklas@appli.se)
999
1000	* stmt.c (expand_start_stmt_expr): Do stack adjust in right place.
1001
1002	* stdarg.h (__gnuc_va_list): Make char * for NetBSD.
1003
1004Tue Sep 12 12:44:46 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1005
1006	* ginclude/va-ppc.h (va_arg): Reorganize to avoid BIND_EXPRs of
1007 	aggregate or array type.
1008
1009Tue Sep 12 12:42:27 1995  Ian Lance Taylor  <ian@cygnus.com>
1010
1011	* fixincludes: Fix HP/UX <sys/file.h> for g++ -pedantic-errors.
1012
1013	* fixincludes (curses.h): typedef bool need not take up entire line.
1014
1015Mon Sep 11 19:05:42 1995  Stan Cox  (coxs@dg-rtp.dg.com)
1016
1017	* c-typeck.c (digest_init): Don't recursively call digest_init
1018	when in traditional mode if the type is invalid.
1019
1020Mon Sep 11 18:58:26 1995  Oliver Kellogg  (Oliver.Kellogg@space.otn.dasa.de)
1021
1022	* 1750a.md: Added DLB/DSTB peepholes for HFmode.
1023	Corrected mnemonics for HImode DSTB peephole.
1024
1025Mon Sep 11 18:48:06 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
1026
1027	* config/fp-bit.c (FLO_union_type): Remove bitfields to set sign,
1028	exponent, and mantissa, and add value_raw field, which is an
1029	integer of the appropriate type.  If _DEBUG_BITFLOAT is defined,
1030	provide little and big endian bitfields.  If the macro
1031	FLOAT_BIT_ORDER_MISMATCH is defined, use explicit bitfields.
1032	(pack_d, unpack_d): Switch to use value_raw and explicit shifts
1033	and masks so that we don't have to worry about whether the target
1034	is big or little endian unless FLOAT_BIT_ORDER_MISMATCH is
1035	defined.  If single precision floating point, rename to pack_f and
1036	unpack_f, so there is no confusion in the debugger.
1037	
1038	* rs6000.h (rs6000_abi): New enumeration to describe which
1039	ABI we're conforming to.
1040	(rs6000_stack): Use abi enum, not AIX vs. V.4 boolean.
1041	(ASM_OUTPUT_OPTIONS): New macro to print output options in .s file.
1042	(ASM_FILE_START): Use it.
1043	(output_options,rs6000_float_const): Declare new functions.
1044
1045	* rs6000.c (output_option{,s}): New functions to write -f, -m,
1046	and -W options to the asm file.
1047	(rs6000_float_const): New function to generate floating point
1048	constants portably used in signed,unsigned -> double conversions.
1049	(rs6000_stack_info,debug_stack_info): Use ABI enumeration instead
1050	of AIX vs. V.4 boolean.
1051
1052	* rs6000.md (float{,uns}sidf2): Call rs6000_float_const to
1053	portably build the proper floating point constant for conversions.
1054	(movdi): Properly handle movdi of CONST_{INT,DOUBLE} on little
1055	endian systems.
1056
1057	* rs6000/sysv4.h (LIBGCC2_WORDS_BIG_ENDIAN): Define to be 0/1
1058	depending on the target endianess.
1059	(ASM_FILE_START): Define, to call output_options in addition to
1060	output_file_directive.
1061	(TRAMPOLINE_SIZE): Correct size to match code.
1062
1063	* rs6000/eabi{,le}sim.h (CPP_SPEC): Define the correct endian
1064	macro for varargs/stdargs use.
1065
1066Mon Sep 11 18:41:58 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
1067
1068	* c-decl.c (redeclaration_error_message): For TYPE_DECLs, return 0
1069	if TYPE_MAIN_VARIANT of old type is same as new type.
1070
1071Mon Sep 11 17:39:35 1995  Rob Ryan (robr@cmu.edu)
1072
1073	* xcoffout.c (xcoff_inlining): New variable, used in place of
1074	xcoff_current_include_file when determining whether to use
1075	absolute line numbers.
1076	(xcoffout_source_file): Switched to using xcoff_inlining to
1077	determine when to emit .bi/.ei directives.
1078
1079Mon Sep 11 16:55:06 1995  Torbjorn Granlund  <tege@matematik.su.se>
1080
1081	* m68k.md (cmpdi): Change patterns to allocate scratch register at
1082	RTL generation time.
1083	(tstdi): Likewise.
1084
1085Sun Sep  3 09:03:50 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1086
1087	* fold-const.c (size_binop): Don't pass 1 to NOTRUNC.
1088
1089Thu Aug 31 19:27:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1090
1091	* libgcc2.c: Include longlong.h.
1092	[L_udivdi3 || L_divdi3 || L_umoddi3 || L_moddi3] (__udivmoddi4):
1093	Define this `static inline' when defining these, so they all
1094	remain leaf functions.
1095
1096Thu Aug 31 18:38:21 1995  Paul Eggert  <eggert@twinsun.com>
1097
1098	* c-parse.in (ends_in_label): New %union member.
1099	(stmts, stmt_or_label): Use new member to avoid lexical lookahead hack.
1100	(lineno_stmt_or_labels): New rule.
1101	(lineno_stmt_or_label, stmt_or_label): Yield nonzero if it ends
1102	in a label.
1103
1104Thu Aug 31 08:31:40 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1105
1106	* cse.c (canon_hash, CONST_DOUBLE): Hash integer and real
1107	differently.
1108	* varasm.c (struct rtx_const): Add new field DI to union.
1109	(decode_rtx_const, case CONST_DOUBLE): Use to hash CONST_DOUBLE
1110	representing an integer.
1111
1112	* va-alpha.h (__gnuc_va_list): Make __offset an int.
1113	* alpha.c (alpha_builtin_saveregs): Properly compute address
1114	of __offset both both OSF and WINNT.
1115
1116	* xm-alpha.h (sbrk): Don't define here.
1117	* gmon.c (sbrk): Define here for __alpha.
1118	* toplev.c (sbrk): Likewise.
1119	* mips-tfile.c (malloc, calloc, realloc): Don't define for anybody.
1120
1121	* reload.c (push_reload): Add case for output reload of a SUBREG
1122	of a hard reg when output mode is invalid for that mode.
1123	In both that case and existing case for in, don't remove SUBREG.
1124	* reload1.c (emit_reload_insn): Emit RELOAD_OTHER output reloads last.
1125
1126Tue Aug 29 19:16:06 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1127
1128	* c-common.c (decl_attribute, case A_PACKED): Check is_type first.
1129	(decl_attribute, case A_T_UNION): Likewise.
1130	Don't access TYPE_FIELDS if DECL is zero.
1131	* c-decl.c (finish_struct): If transparent_union attribute
1132	specified, validate it once we finish laying the union out.
1133
1134Mon Aug 28 05:58:03 1995  Paul Eggert  <eggert@twinsun.com>
1135
1136	* arm.c (arm_gen_movstrqi): Remove unused variable const_sxteen.
1137
1138	* bi-lexer.c (buffer, inpoint): Remove unused variables.
1139
1140	* i370/mvs.h, i370/mvs370.c (mvs_label_emitted): Renamed
1141	from mvs_label_emited.
1142
1143	* msdos/configur.bat: Fix misspelling of `maintainer-clean'.
1144
1145Sat Aug 26 06:57:17 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1146
1147	* reload.c (push_secondary_reload): If X is a paradoxical SUBREG,
1148	get mode and thing to reload from inside.
1149	* reload1.c (emit_reload_insns): Do nothing for SUBREG whose
1150	operand is unused subsequently.
1151	In secondary reload case, if paradoxical SUBREG for output, reload
1152	thing inside SUBREG, just like gen_reload.
1153
1154Fri Aug 25 19:26:53 1995  Paul Eggert  <eggert@twinsun.com>
1155
1156	* c-typeck.c (set_init_label): Don't die if an entire
1157	brace-pair level is superfluous in the containing level.
1158
1159Fri Aug 25 19:22:46 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
1160
1161	* configure (powerpc{,le}-eabisim): Add support for a new target
1162	that works under the PSIM simulator.
1163	* rs6000/eabisim.h, rs6000/eabilesim.h, rs6000/t-eabisim: New files.
1164
1165	* rs6000/eabi.h (STRICT_ALIGNMENT): If little endian, always set
1166	strict alignment to 1.
1167
1168Fri Aug 25 19:22:23 1995  David Edelsohn  <edelsohn@mhpcc.edu>
1169
1170	* rs6000.md ({add,sub,mulsi}di3): Support both endian possibilities.
1171	(negdi2): Likewise.
1172
1173Fri Aug 25 19:10:41 1995  Oliver Kellogg  (Oliver.Kellogg@space.otn.dasa.de)
1174
1175	* 1750a.md: Added peephole definitions for Load/Store Base insns
1176	and eliminating redundant load in an equivalent store/load sequence.
1177
1178Fri Aug 25 18:33:27 1995  Craig Burley  (burley@gnu.ai.mit.edu)
1179
1180	* toplev.c (report_error_function): Don't attempt to use input
1181	file stack to identify nesting of #include's if file name oflocation
1182	diagnosed is not same as input_filename.
1183
1184Fri Aug 25 07:31:47 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1185
1186	* integrate.c (output_inline_function): Switch to function obstack.
1187
1188Mon Aug 21 13:29:54 1995  J"orn Rennecke (amylaar@meolyon.hanse.de)
1189
1190	* i386.c (arithmetic_comparison_operator): New function.
1191	(print_operand): Take into account that overflow flag is not
1192	set the same as after a compare instruction.
1193	* i386.md (decrement_and_branch_until_zero): Use
1194	arithmetic_comparison_operator to decide if there is comparison
1195	suitable to be expressed by condition code from an arithmetic op.
1196
1197Mon Aug 21 13:26:13 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
1198
1199	* m68k.md (adddi3, subdi3): "&" added to clobber's constraints.
1200
1201Mon Aug 21 12:11:14 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
1202
1203	* t-sparclite (MULTILIB_*, LIBGCC, INSTALL_LIBGCC): Define.
1204
1205	* sh.md (movdi-1, movdf-1): Make conditional on reload_completed,
1206	delete conditions checking for pseudo registers and Q addresses.
1207	Add code to handle SUBREG.
1208
1209	* local-alloc.c (wipe_dead_reg): Make a register mentioned in a
1210	REG_INC note die after the instruction.
1211
1212	* m68k.md: For all dbra pattern, change constraint from 'g' to 'd*g'.
1213
1214	* Makefile.in: (underscore.c): Rename rule to stamp-under, and
1215	touch stamp-under at the end.  Add new rule for underscore.c that
1216	depends on stamp-under.
1217
1218	* sh.c (reg_unused_after): For a SEQUENCE, make sure all insns are
1219	safe before returning 1.
1220
1221	* sh.h (PROMOTE_FUNCTION_ARGS, PROMOTE_FUNCTION_RETURN): Define.
1222
1223	* sh.c (output_stack_adjust): Add new argument reg.  Use it instead
1224	of stack_pointer_rtx.
1225	(sh_expand_prologue, sh_expand_epilogue): Pass new argument to
1226	output_stack_adjust.
1227
1228Sat Aug 19 17:34:15 1995  Jim Wilson  <wilson@phydeaux.cygnus.com>
1229
1230	* sparc/gmon-sol2.c (_mcount): Define.
1231	* sparc/sol2.h (STARTFILE_SPEC, ENDFILE_SPEC): Delete superfluous
1232	-pg tests.
1233	(LINK_SPEC): Add libp directories to -Y when -pg.
1234
1235	* unroll.c (calculate_giv_inc): Handle increment computed by ASHIFT.
1236
1237Sat Aug 19 17:28:56 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
1238
1239	* m68k.md (subdi3): Should not be commutative.
1240	(one_cmpldi2): Fixed typo with register operand.
1241
1242Sat Aug 19 17:20:43 1995  Michael Meissner  <meissner@cygnus.com>
1243
1244	* rs6000.c (output_prolog): Fixup code to set stack pointer
1245	if stack size > 32k.
1246	* rs6000.md (sync_isync): Renamed from sync; added an isync insn
1247	after the sync to properly deal with PowerPC's with split I/D caches.
1248	* sysv4.h (INITIALIZE_TRAMPOLINE): Sync function now named sync_isync.
1249
1250Sat Aug 19 17:07:09 1995  Doug Evans  <dje@canuck.cygnus.com>
1251
1252	* h8300.h (STATIC_CHAIN_REGNUM): Use r3.
1253	(REGISTER_NAMES): Print r7 as sp.
1254	(ADDITIONAL_REGISTER_NAMES): Recognize r7.
1255	(ASM_OUTPUT_ALIGN): Alignment is power of 2.
1256	* h8300.md (fancy_btst,fancy_btst1): Branch target must be
1257	operand 0 for length attribute to work.
1258
1259Sat Aug 19 16:43:11 1995  Paul Franklin  <paul@cs.washington.edu>
1260
1261	* assert.h: Declare __eprintf with attribute noreturn.
1262
1263Sat Aug 19 16:40:12 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1264
1265	* stddef.h: Don't define wchar_t if __cplusplus is defined.
1266
1267Tue Aug 15 18:01:01 1995  Paul Eggert  <eggert@twinsun.com>
1268
1269	* cccp.c (warning_with_line): Fix typo in declaration when
1270	!HAVE_VPRINTF and defined (__STDC__).
1271
1272Tue Aug 15 17:57:54 1995  Stephen L Moshier <moshier@world.std.com>
1273
1274	* real.c (ediv, emul): Set sign bit of IEEE -0.0 result.
1275
1276Tue Aug 15 17:49:47 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1277
1278	* expr.c (safe_from_p): Only safe if EXP is variable-size and X
1279	is BLKmode.
1280
1281	* stmt.c (fixup_gotos): When some fixups done, reset to point
1282	to next instead of zeroing TREE_VALUE, which may be shared.
1283
1284Mon Aug 14 09:15:45 1995  Doug Evans  <dje@canuck.cygnus.com>
1285
1286	* m68k/m68kemb.h (STARTFILE_SPEC): Define as empty.
1287
1288Mon Aug 14 09:08:57 1995  Pat Rankin  <rankin@eql.caltech.edu>
1289
1290	* vax.c (vms_check_external): Update `pending_head' properly
1291	when the first list element is removed.
1292
1293Mon Aug 14 09:01:32 1995  Jeffrey A. Law  <law@adder.cygnus.com>
1294
1295	* pa.md (call expanders): Emit a blockage insn after restoring
1296	%r19 when generating PIC.
1297
1298Sun Aug 13 21:58:49 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1299
1300	* toplev.c (main): Change text of unsupported -g option warning.
1301
1302Sun Aug 13 21:47:57 1995  Andrew McCallum  <mccallum@graphite.cs.rochester.edu>
1303
1304	* objc/selector.c (sel_get_any_typed_uid): New function.
1305	* objc/objc-api.h (sel_get_any_typed_uid): Declare new function.
1306
1307Sun Aug 13 21:43:17 1995  John Carr  <jfc@mit.edu>
1308
1309	* c-typeck.c (c_expand_asm_operands): Check for read-only output
1310	operand where the variable is read-only but the type is not.
1311
1312Sun Aug 13 21:16:12 1995  David Edelsohn  <edelsohn@mhpcc.edu>
1313
1314	* rs6000.c (direct_return): Epilogue required if CR saved.
1315
1316Sun Aug 13 19:09:25 1995  Jeff Law  (law@snake.cs.utah.edu)
1317
1318	* configure (hppa1.?-hp-hpux10): Recognize and treat just like hpux9.
1319
1320Sun Aug 13 19:07:23 1995  Doug Evans  <dje@canuck.cygnus.com>
1321
1322	* i960.md (movdi matchers): Fix src/dest order in unaligned
1323	reg->reg case.
1324
1325Sun Aug 13 18:49:01 1995  DJ Delorie  <dj@delorie.com>
1326
1327	* i386/xm-dos.h (HAVE_STRERROR): New definition.
1328
1329	* msdos/configur.bat: Add missing carriage return.
1330
1331Sun Aug 13 18:40:55 1995  Andrew Cagney  <cagney@highland.com.au>
1332
1333	* Makefile.in (USER_H): Add va-ppc.h.
1334
1335Sun Aug 13 18:36:17 1995  M. Warner Losh  <imp@village.org>
1336
1337	* stmt.c (expand_asm_operands): Type '0'..'4' operands may
1338	allow regs, so move them to the default case. 
1339
1340Sun Aug 13 18:32:35 1995  Paul Eggert  <eggert@twinsun.com>
1341
1342	* cccp.c (warning_with_line): New function.
1343	(trigraph_pcp): Use it, to avoid reporting line number.
1344	(vwarning_with_line): Don't report line number if zero.
1345
1346Sun Aug 13 18:23:08 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1347
1348	* toplev.c (vmessage): Support four arguments.
1349
1350Sun Aug 13 18:19:51 1995  Michael Meissner  <meissner@cygnus.com>
1351
1352	* ginclude/stdarg.h: Add ppc svr4 calling sequence support.
1353	* ginclude/varargs.h: Likewise.
1354	* ginclude/va-ppc.h: New file.
1355
1356Sun Aug 13 18:05:20 1995  Michael Gschwind  <mike@donoussa.vlsivie.tuwien.ac.at>
1357
1358	* configure (pdp-*-*): Add support for t-pdp11.
1359	* t-pdp11: New file.
1360	* Makefile.in (LIBGCC2_CFLAGS): Add TARGET_LIBGCC2_CFLAGS.
1361
1362Sun Aug 13 14:50:58 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
1363
1364	* final.c (final_start_function): Always call sdbout_begin_function
1365	and xcoffout_begin_function, even if no line number info.
1366
1367	* mips/abi64.h (SETUP_INCOMING_VARARGS): In if statement, only
1368	subtract one for stdarg.  Don't subtract PRETEND_SIZE from
1369	argument pointer when calculating stack address.
1370	* mips.h (INITIAL_ELIMINATION_OFFSET): For 64 bit ABI, subtract
1371	current_function_pretend_args_size when converting from argument
1372	pointer.
1373	* va-mips.h (va_start): For stdarg, delete separate define for
1374	64 bit ABI.  For varargs, don't subtract 64, and only add -8 when
1375	all argument registers are used.
1376
1377	* gcc.c (main): When concat gcc_exec_prefix and
1378	standard_startfile_prefix, put machine_suffix in the middle.
1379
1380	* iris6.h (INIT_SECTION_ASM_OP): Don't define.
1381	(LD_INIT_SWITCH, LD_FINI_SWITCH, HAS_INIT_SECTION): Don't undef.
1382	(ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Ifdef out.
1383	* configure (mips-sgi-irix6, mips-sgi-irix5cross64): Define
1384	use_collect2 to yes.
1385
1386	* combine.c (move_deaths): When have a multi-reg hard register,
1387	if don't find a note, then recur for each individual hard register.
1388
1389	* cse.c (set_nonvarying_address_components): Handle addresses
1390	which are the sum of two constant pseudo regs.
1391	(cse_rtx_addr_varies_p): Likewise.
1392
1393	* Makefile.in (gfloat.h): Add a - before the rm command.
1394
1395	* loop.c (find_and_verify_loops): Set dest_loop only if
1396	JUMP_LABEL (insn) is non-zero.
1397
1398Mon Jul 31 14:31:53 1995  Ian Lance Taylor  <ian@cygnus.com>
1399
1400	* fixincludes: Avoid clobbering VxWorks drv/netif/if_med.h file.
1401
1402Sat Jul 29 16:21:42 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1403
1404	* collect2.c: (XCOFF_SCAN_LIBS): Define if OBJECT_FORMAT_COFF and
1405	XCOFF_DEBUGGING_FORMAT.
1406	(SCAN_LIBRARIES): Also define if XCOFF_SCAN_LIBS.
1407
1408Sat Jul 29 16:19:42 1995  Stuart D. Gathman  <stuart@bmsi.com>
1409
1410	* collect2.c (scan_libraries): Implement for AIX.
1411
1412Sat Jul 29 09:59:33 1995  Michael Gschwind  <mike@lanai.vlsivie.tuwien.ac.at>
1413
1414	* configure: (pdp11-*-bsd) New target.
1415	* 2bsd.h: New file.
1416
1417	* pdp11.c (output_move_double): Handle CONST_INT parameters properly. 
1418	* pdp11.h (RTX_COSTS): Fill in missing default values.
1419	* pdp11.md (truncdfsf2, extendsfdf2, floatsidf2, fix_truncdfsi2):
1420	Allow register parameters, required by gcc to generate correct code. 
1421	* xm-pdp11.h: Include tm.h.
1422
1423Sat Jul 29 09:55:17 1995  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1424
1425	* configure (m68k-*-linux*aout*, m68k-*-linux*): New targets.
1426	* m68k/linux-aout.h, m68k/linux.h, m68k/t-linux, m68k/xm-linux.h: New.
1427	* m68k.md [USE_GAS]: Output `jbsr' instead of `jsr' for normal
1428	function calls and `bsr.l' instead of `bsr' for pic function calls.
1429
1430Sat Jul 29 09:44:13 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
1431
1432	* sh.h (CAN_DEBUG_WITHOUT_FP): Comment out.
1433
1434	* reload.c (find_reloads_address_1, case PLUS): When handle SUBREG,
1435	add SUBREG_WORD offset to SUBREG_REG register number.
1436	(find_reloads_address_1, case SUBREG): If a pseudo register inside
1437	a SUBREG is larger than the class, then reload the entire SUBREG.
1438	* sh.h (SUBREG_OK_FOR_INDEX_P): New macro.
1439	(INDEX_REGISTER_RTX_P): Use it.
1440
1441Sat Jul 29 09:33:19 1995  Doug Evans  <dje@canuck.cygnus.com>
1442
1443	* mips/netbsd.h (CPP_SPEC): Fix typo.
1444
1445	* configure (a29k-*-vxworks*): Define extra_parts for crt{begin,end}.o.
1446	* t-a29k, t-a29kbase, t-vx29k ({,CROSS_}LIBGCC1): Define as empty.
1447
1448Sat Jul 29 09:15:17 1995  Jeffrey A. Law  <law@rtl.cygnus.com>
1449
1450	* pa/lib2funcs.asm (gcc_plt_call): Rewrite to avoid the need
1451	for being called by _sr4export.  Inline expand $$dyncall to
1452 	avoid the need for long-call and PIC support.
1453
1454Sat Jul 29 07:30:04 1995  Oliver Kellogg  (Oliver.Kellogg@space.otn.dasa.de)
1455
1456	* ms1750.inc (ucim.m, ucr.m, uc.m): New.
1457	* 1750a.md (cmpqi): Account for unsigned comparisons.
1458	(rotrqi3, rotrhi3): Reworked.
1459	* 1750a.c (notice_update_cc): INCM and DECM set condition codes.
1460	(unsigned_comparison_operator, next_cc_user_is_unsigned): New fcns.
1461	* 1750a.h (FUNCTION_EPILOGUE): Local variables freed from SP, not FP.
1462	(ASM_OUTPUT_BYTE): Make distinct from ASM_OUTPUT_CHAR.
1463	(ASM_OUTPUT_CONSTRUCTOR): Add FILE arg to assemble_name.
1464
1465Fri Jul 28 09:40:07 1995  Jeffrey A. Law  <law@rtl.cygnus.com>
1466
1467        * pa.h (DO_GLOBAL_DTORS_BODY): Use an asm statement to keep optimizer
1468	from deleting an assignment it believes dead.
1469
1470Fri Jul 28 08:47:51 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
1471
1472	* unroll.c (unroll_loop): When preconditioning, output code to
1473	execute loop once if initial value is greater than or equal to final
1474	value.
1475
1476	* configure (lang_specs_files, lang_options_files): Add $srcdir to
1477	file names when adding them to these variables.
1478
1479	* c-typeck.c (pointer_int_sum): Don't distribute if intop is unsigned
1480	and not the same size as ptrop.
1481
1482	* function.c (assign_stack_temp): When split a slot, set base_offset
1483	and full_size in the newly created slot.
1484	(combine_temp_slots): Update full_size when slots are combined.
1485
1486	* sh.c (reg_unused_after): New function.
1487	* sh.md (define_peephole): Add peepholes to use r0+rN addressing mode
1488	for some address reloads.
1489
1490	* final.c (final_start_function): If SDB_DEBUG, call
1491	sdbout_begin_function.  If XCOFF_DEBUG, call xcoffout_begin_function
1492	instead of xcoffout_output_first_source_line.
1493	(final_scan_insn): Don't call sdbout_begin_function or
1494	xcoffout_begin_function.
1495	* xcoffout.c (xcoffout_output_first_source_line): Delete.
1496	(xcoffout_begin_function): Call dbxout_parms and
1497	ASM_OUTPUT_SOURCE_LINE.
1498
1499	* va-mips.h: Change every occurance of #if __mips>=3 to
1500	#ifdef __mips64.
1501	* mips/abi64.h (CPP_SPEC): Output -D__mips64 when -mips3, or -mips4,
1502	or -mgp64.  Output -U__mips64 when -mgp32.
1503	* mips/dec-bsd.h, mips/elf64.h, mips/iris3.h: Likewise.
1504	* mips/iris5.h, mips/mips.h, mips/netbsd.h, mips/osfrose.h: Likewise.
1505
1506	* i960.c (i960_function_epilogue): Don't clear g14 for functions with
1507	an argument block.
1508	(i960_output_reg_insn): Likewise.
1509	(i960_output_call_insn): Clear g14 for functions wtih an argument
1510	block.
1511
1512Fri Jul 28 08:43:52 1995  Doug Evans  <dje@canuck.cygnus.com>
1513
1514	* i960.c (i960_arg_size_and_align): Correct alignment of XFmode
1515	values in library calls.
1516	* i960.md (movdi matchers): Support odd numbered regs.
1517
1518Fri Jul 28 08:37:25 1995  Michael Gschwind  <mike@lanai.vlsivie.tuwien.ac.at>
1519
1520	* pdp11.md (divhi3, modhi3, divmodhi4): Rewrite.
1521	
1522Wed Jul 26 10:15:52 1995  Hallvard B Furuseth  (h.b.furuseth@usit.uio.no)
1523
1524	* collect2.c (end_file): Fix typo in error message text.
1525
1526Wed Jul 26 09:22:22 1995  Jeff Law  (law@snake.cs.utah.edu)
1527
1528	* xm-pa.h (USE_C_ALLOCA): Always define.
1529	* xm-pahpux.h (USE_C_ALLOCA): Likewise.
1530
1531	* x-pa (CC): Remove useless definition.
1532	* xm-pa.h (HAVE_STRERROR): Define.
1533	(__BSD_NET2__): Define.
1534
1535Wed Jul 26 09:10:25 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1536
1537	* expr.c (preexpand_calls): Don't look past a CLEANUP_POINT_EXPR.
1538
1539Wed Jul 26 08:43:42 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
1540
1541	* cse.c (cse_insn): When do special handling for (set REG0 REG1),
1542	must delete REG_EQUAL note from insn if it mentions REG0.
1543
1544	* loop.c (find_and_verify_loops): When moving blocks of code, verify
1545	that the just destination is not in an inner nested loop.
1546	(mark_loop_jump): Don't mark label as loop exit if it jumps to
1547	an inner nested loop.
1548
1549Wed Jul 26 08:40:31 1995  Paul Eggert  <eggert@twinsun.com>
1550
1551	* cccp.c (do_include, read_name_map): Omit leading "./" and
1552	trailing "/" when it makes sense.
1553	(skip_redundant_dir_prefix): New function.
1554
1555Wed Jul 26 08:36:41 1995  Michael Meissner  <meissner@cygnus.com>
1556
1557	* stmt.c (emit_nop): Do not emit a nop if there is a single
1558	insn before a label or at the start of a function.
1559
1560Wed Jul 26 08:21:21 1995  Doug Evans  <dje@cygnus.com>
1561
1562	* Makefile.in (gfloat.h): Delete previous copy before updating.
1563
1564Wed Jul 26 08:18:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1565
1566	* Makefile.in (STAGESTUFF): Add stamp-crtS.
1567	(crtbeginS.o, crtendS.o, stamp-crtS): New rules; just like
1568	crtbegin.o et al, but compiled using -fPIC.
1569	* configure (*-*-gnu*): Add crtbeginS.o and crtendS.o to $extra_parts.
1570
1571Wed Jul 26 08:11:52 1995  Michael Gschwind  <mike@java.vlsivie.tuwien.ac.at>
1572
1573	* pdp11.md: Fixed typos ('bhos' -> 'bhis').
1574
1575Wed Jul 26 08:05:41 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
1576
1577	* hp320.h, m68k.h, m68kv4.h (LEGITIMATE_PIC_OPERAND_P): Reject
1578	CONST_DOUBLE with MEM with invalid pic address.
1579	* reload1.c (real.h): Include it.
1580	* Makefile.in (reload1.o): Depends on real.h.
1581
1582Wed Jul 26 07:58:22 1995  Ian Lance Taylor  <ian@cygnus.com>
1583
1584	* gcc.c (MULTILIB_DIRS): Provide default if not defined.
1585	(multilib_defaults): New static variable.
1586	(default_arg): New static function.
1587	(set_multilib_dir): Ignore default arguments.
1588	(print_multilib_info): Ignore entries which use default arguments.
1589
1590Tue Jul 25 10:06:09 1995  Michael Meissner  <meissner@cygnus.com>
1591
1592	* rs6000.md (allocate_stack): Don't copy the LR register to
1593	the new stack end.
1594	* rs6000.c (rs6000_stack_info): Correctly store the LR in
1595	the caller's frame, not the current frame, for V.4 calls.
1596	* rs6000/eabi.asm (_save*, _rest*): Provide all mandated V.4 save
1597	and restore functions, except for the save*_g functions which
1598	return the GOT address.
1599
1600Fri Jul 21 14:24:25 1995  Michael Meissner  <meissner@cygnus.com>
1601
1602	* rs6000/eabi.h (__eabi): Load up r13 to be the small data
1603	pointer, unless -mrelocatable.
1604
1605	* rs6000/aix3newas.h (LINK_SPEC): Import machine independent
1606	functions if -mcpu=common.
1607	* rs6000/milli.exp: Import file referenced in aix3newas.h.
1608
1609	* rs6000/eabi.asm (__eabi): Support for fixing up user initialized
1610	pointers when -mrelocatable is used.
1611	* rs6000/eabi.h (ASM_OUTPUT_INT): Record any pointers initialized
1612	by the user if -mrelocatable, to be fixed up by __eabi.
1613	(CONST_SECTION_ASM_OP): If -mrelocatable, put read-only stuff in .data,
1614	not .rodata, to allow user initialized pointers to be updated by __eabi.
1615
1616	* rs6000.h (TARGET_SWITCHES): Add -mdebug-{stack,arg}.
1617	(TARGET_{ELF,NO_TOC,TOC}): Add defaults for non system V.
1618	(rs6000_stack): New structure to describe stack layout.
1619	(RS6000_{REG_SAVE,SAVE_AREA,VARARGS_*}): New macros used to
1620	support both AIX and V.4 calling sequences.
1621	(FP_ARG_*, GP_ARG_*): Ditto.
1622	(FP_SAVE_INLINE): Ditto.
1623	(STARTING_FRAME_OFFSET): Modify to support both AIX and V.4
1624	calling sequences.
1625	(FIRST_PARM_OFFSET): Ditto.
1626	(REG_PARM_STACK_SPACE): Ditto.
1627	(STACK_POINTER_OFFSET): Ditto.
1628	(FUNCTION_ARG_REGNO_P): Ditto.
1629	({,INIT_}CUMULATIVE_ARGS): Ditto.
1630	(LEGITIMATE_LO_SUM_ADDRESS_P): Ditto.
1631	(FUNCTION_ARG{,_ADVANCE,PARTIAL_NREGS,PASS_BY_REFERENCE}): Ditto.
1632	(SETUP_INCOMING_VARARGS): Ditto.
1633	(EXPAND_BUILTIN_SAVEREGS): Ditto.
1634	(CAN_ELIMINATE): Ditto.
1635	(INITIAL_ELIMINATION_OFFSET): Ditto.
1636	(LEGITIMATE_CONSTANT_POOL_{BASE,ADDRESS}_P): Ditto.
1637	(GO_IF_{LEGITIMATE_ADDRESS,MODE_DEPENDENT_ADDRESS}): Ditto.
1638	(LEGITIMIZE_ADDRESS): Ditto.
1639	(CONST_COSTS): Ditto.
1640	(ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Ditto.
1641	(ASM_OUTPUT_REG_{PUSH,POP}): Use reg_names to print registers.
1642	(function declarations): Add new rs6000.c function declarations,
1643	and delete decls of deleted functions.
1644	(SHIFT_COUNT_TRUNCATED): Parenthesize the expression.
1645	
1646	* rs6000.c (init_cumulative_args): New function to support AIX
1647	and V.4 calling sequences.
1648	(function_arg{,_advance,partial_nregs,pass_by_reference}): Ditto.
1649	(setup_incoming_varargs): Ditto.
1650	(expand_builtin_saveregs): Ditto.
1651	(rs6000_stack_info): Ditto.
1652	(debug_stack_info): Ditto.
1653	(direct_return): Changes to support AIX and V.4 calling sequences.
1654	(first_reg_to_save): Ditto.
1655	(svr4_traceback): Ditto.
1656	(output_{prolog,epilog}): Ditto.
1657	(print_operand): Use reg_names to print registers.  Add support
1658	for V.4 HIGH/LO_SUM address modes.
1659	(must_save_cr): Function deleted, in rewrite of AIX/V.4 calling
1660	sequence support.
1661	(rs6000_sa_size): Ditto.
1662	(rs6000_pushes_stack): Ditto.
1663	(output_toc): Add abort if no toc.
1664
1665	* rs6000.md (call insns): Add a new argument to flag a V.4
1666	function needs to set bit 6 of the CR.
1667	(elf_{low,high}): New V.4 functions to create addresses via HIGH
1668	and LO_SUM patterns.
1669	(movsi): Use elf_{low,high} if appropriate.
1670	(mov{si,di}_update): Name these patterns for allocate_stack.
1671	(allocate_stack): Support for V.4 stack layout.
1672	(sync): New pattern for V.4 trampolines to issue the sync
1673	instruction.
1674	
1675	* rs6000/sysv4.h (TARGET_SWTICHES): Add -mcall-{aix,sysv}, and
1676	-mprototype.  Remove separate flag bit for -mno-toc.
1677	(SUBTARGET_OVERRIDE_OPTIONS): Don't test for -mno-toc.
1678	(FP_ARG_*): Adjust for V.4 calling sequences.
1679	(RS6000_*): Ditto.
1680	(FP_SAVE_INLINE): Ditto.
1681	(toc_section): Eliminate use of AIX style full TOC.
1682	(TRAMPOLINE_{TEMPLATE,SIZE}): Redefine for V.4 support.
1683	(INITIALIZE_TRAMPOLINE): Ditto.
1684	
1685	* rs6000/eabi.h (CPP_SPEC): Define _CALL_SYSV or _CALL_AIX,
1686	depending on whether -mcall-sysv or -mcall-aix was used.
1687	* rs6000/eabile.h (CPP_SPEC): Ditto.
1688	* rs6000/sysv4le.h (CPP_SPEC): Ditto.
1689
1690	* rs6000/t-eabigas (MULTILIB_{OPTIONS,DIRNAMES}): Delete no-toc
1691	libraries, explicit big endian libraries.
1692	* rs6000/t-ppcgas (MULTILIB_{OPTIONS,DIRNAMES}): Ditto.
1693	
1694	* rs6000/t-eabiaix: New file for eabi, using -mcall-aix as the
1695	default.
1696	* rs6000/eabiaix.h: Ditto.
1697
1698	* rs6000/t-eabilegas: New file for eabi on little endian systems.
1699	* rs6000/t-ppclegas: New file for V.4 on little endian systems.
1700
1701	* rs6000/t-rs6000 (MULTILIB_{OPTIONS,DIRNAMES}): Build libgcc.a
1702	for -mcpu=common.
1703
1704	* configure (powerpc-*-eabiaix): New configuration for defaulting
1705	to old-style AIX calling sequence.
1706	(powerpcle*): Use new t-{eabi,ppc}legas files, to avoid building
1707	explicit little endian multilib libraries.
1708
1709Fri Jul 21 13:23:06 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1710
1711	* toplev.c (main): Don't define sbrk #ifdef __alpha__.
1712
1713Tue Jul 18 19:23:44 1995  Paul Eggert  <eggert@twinsun.com>
1714
1715	* cccp.c (do_include): Prefix -H output lines with spaces, not dots.
1716	(output_dots): Remove.
1717
1718	* cccp.c (main): cplusplus_comments now defaults to 1.
1719	But clear it if	-traditional or the new option -lang-c89 is given.
1720	* gcc.c (default_compilers, cpp): Specify -lang-c89 if -ansi is given.
1721	This turns off C++ comment recognition.
1722
1723Tue Jul 18 19:16:38 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
1724
1725	* va-sparc.h (va_arg): Add support for 128 bit long double type.
1726
1727Tue Jul 18 19:11:18 1995  Jorn Rennecke  (amylaar@meolyon.hanse.de)
1728
1729	* c-common.c (decl_attributes, case A_ALIGNED): Handle is_type
1730	case properly.
1731
1732Tue Jul 18 19:03:02 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1733
1734	* fold-const.c (fold, case CONVERT_EXPR): Don't merge conversions
1735	if outer is to handle a type with differing precision.
1736
1737Mon Jul 17 14:37:35 1995  Pat Rankin  (rankin@eql.caltech.edu)
1738
1739	* vax/vms.h (HAVE_ATEXIT): Define.
1740	(DO_GLOBAL_CTORS_BODY): Don't call atexit; let __do_global_ctors do it.
1741	* vax/xm-vms.h (HAVE_VPRINTF): Define.
1742
1743Mon Jul 17 06:41:19 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1744
1745	* c-typeck.c ({unsigned,signed}_type): Handle intXX_type_node types.
1746
1747	* xm-alpha.h (sbrk): Add declaration.
1748
1749	* convert.c (convert_to_integer): If TYPE is a enumeral type or
1750	if its precision is not the same as the size of its mode, 
1751	convert in two steps.
1752
1753	* m68k.md (tstdi, cmpdi): Use match_scratch, not match_operand.
1754
1755Fri Jul 14 19:23:42 1995  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1756
1757	* c-decl.c (field_decl_cmp): Rewritten to make sure that a null
1758	name always sorts low against other names.
1759	* c-typeck.c (lookup_field): Change name comparison to match what
1760	field_decl_cmp does.
1761
1762Fri Jul 14 18:46:24 1995  Michael Meissner  <meissner@cygnus.com>
1763
1764	* rs6000.md (movsi): Convert a CONST_DOUBLE into a CONST_INT of
1765	the low part.
1766
1767Fri Jul 14 18:30:52 1995  Doug Evans  <dje@cygnus.com>
1768
1769	* toplev.c (main): Reword dwarf/c++/-g warning.
1770
1771Fri Jul 14 18:19:34 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1772
1773	* expr.h (NO_DEFER_POP): Remove last change.
1774	* expr.c (stor_expr): Force stack adjust before NO_DEFER_POP.
1775	(expand_expr, case COND_EXPR): Likewise.
1776	* stmt.c (expand_start_stmt_expr): Likewise.
1777
1778Fri Jul 14 07:58:35 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
1779
1780	* function.c (struct temp_slot): New fields base_offset, full_size.
1781	(assign_stack_temp): For !FRAME_GROWS_DOWNWARD, set p->size to size.
1782	Set new fields base_offset and full_size.
1783	(combine_temp_slots): Use new fields base_offset and full_size instead
1784	of slot and size.
1785
1786	* loop.c (loop_number_exit_count): New global variable.
1787	(loop_optimize): Allocate space for it.
1788	(find_and_verify_loops, mark_loop_jump): Set it.
1789	(strength_reduce, check_dbra_loop): Use loop_number_exit_count
1790	instead of loop_number_exit_labels.
1791	* loop.h (loop_number_exit_count): Declare it.
1792	* unroll.c (find_splittable_{regs,givs}, final_[bg]iv_value): Use
1793	loop_number_exit_count instead of loop_number_exit_labels.
1794	(reg_dead_after_loop): Check loop_number_exit_count, and fail
1795	if the count doesn't match loop_number_exit_labels.
1796
1797	* cse.c (cse_insn): Ifdef out code that pre-truncates src_folded.
1798
1799	* sparc.md (sethi_di_sp64): Return null string at end.
1800
1801	* function.h (struct function): Add stdarg field.
1802	* function.c (current_function_stdarg): New global variable.
1803	(push_function_context_to): Save it.
1804	(pop_function_context_from): Restore it.
1805	(assign_parms): Set it.
1806	(init_function_start): Clear it.
1807	* output.h (current_function_stdarg): Declare it.
1808	* i960.md: Modify all patterns which handle stores to memory to also
1809	check current_function_varargs and current_function_stdarg.
1810
1811	* reorg.c (fill_simple_delay_slots): When trying to take instruction
1812	from after the branch, don't continue past target label.  Local
1813	variables passed_label and target_uses are no longer necessary.
1814
1815Thu Jul 13 19:30:04 1995  Jeff Law  (law@snake.cs.utah.edu)
1816
1817	* pa.c (output_bb): Fix error in long backwards branch with
1818	nullified delay slot.
1819
1820Thu Jul 13 19:26:13 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
1821
1822	* expmed.c (SHIFT_COUNT_TRUNCATED): Use #ifdef not #if.
1823
1824Mon Jul 10 20:16:44 1995  Paul Eggert  <eggert@twinsun.com>
1825
1826	* cccp.c (rescan): Don't address outside of array when
1827	preprocessing C++ comments.
1828
1829Mon Jul 10 20:05:46 1995  Michael Meissner  <meissner@tiktok.cygnus.com>
1830
1831	* rs6000.c (expand_block_move): Remove #if 0 conditionals
1832	against using larger block moves.
1833
1834	* t-rs6000 (EXTRA_PARTS): Copy milli.exp to release dir.
1835	(milli.exp): Copy to build dir from machine dependend dir.
1836
1837Mon Jul 10 20:03:29 1995  Richard Earnshaw (rearnsha@armltd.co.uk)
1838
1839	* arm.md (matcher for (shiftable_op (cond-exp) (reg))): If
1840	shiftable_op is minus, then subtract from zero when cond fails.
1841
1842Mon Jul 10 19:58:26 1995  John F. Carr <jfc@mit.edu>
1843
1844	* sparc.h (SELECT_SECTION): Use TREE_CODE_CLASS instead of directly
1845	referencing tree_code_type.
1846	
1847Mon Jul 10 19:54:31 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
1848
1849	* protoize.c (reverse_def_dec_list): Delete const qualifiers from
1850	local variables, and delete casts which were casting away const.
1851
1852Mon Jul 10 19:14:39 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1853
1854	* c-lang.c (finish_file): Add missing parm to start_function call.
1855
1856	* jump.c (jump_optimize): Pass outer_code arg to rtx_cost.
1857
1858	* varasm.c (assemble_name, bc_assemble_integer): Call
1859	bc_emit_labelref with proper args.
1860
1861	* function.c (setjmp_args_warning): Remove bogus arg.
1862
1863Mon Jul 10 18:20:54 1995  Fergus Henderson  (fjh@cs.mu.oz.au)
1864
1865	* gcc.c (p{fatal,error}_with_name, perror_exec): Quote filename.
1866
1867Mon Jul 10 18:12:51 1995  Gran Uddeborg (uddeborg@carmen.se)
1868
1869	* i386/iscdbx.h (STARTFILE_SPEC): Handle -Xp.
1870
1871Wed Jul  5 02:42:17 1995  Per Bothner  (bothner@spiff.gnu.ai.mit.edu)
1872
1873	* cpphash.h (enum node_type):  Remove unneeded and non-standard
1874	forward declaration.
1875
1876Sat Jul  1 20:15:39 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
1877
1878	* mips/t-mips, mips/t-mips-gas (MULTILIB_*, LIBGCC, INSTALL_LIBGCC):
1879	Delete.
1880
1881	* sparc/sol2.h (LINK_SPEC): Revert March 16 change.  Do not add -R
1882	for each -L.
1883	
1884	* collect2.c (libcompare): Verify that file name extensions are valid.
1885	Put files with invalid extensions last in the sort.
1886
1887	* integrate.c (integrate_decl_tree): Set DECL_ABTRACT_ORIGIN before
1888	pushdecl call for local variables.
1889
1890Sat Jul  1 08:13:38 1995  Richard Earnshaw (rearnsha@armltd.co.uk)
1891
1892	* cpplib.c (output_line_command): If not emitting #line directives
1893	delay returning until after adjust_position has been called.
1894
1895	* arm.md (mov{si,sf,df}cc): Call gen_compare_reg to generate
1896	the condition code register.
1897
1898Sat Jul  1 06:55:09 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1899
1900	* fold-const.c (decode_field_reference): New parm PAND_MASK.
1901	(unextend): New parm MASK.
1902	(fold_truthop): Pass new parms to decode_field_reference and unextend.
1903
1904	* va-alpha.h (__va_tsize): Use __extension__ to avoid warning
1905	on use of `long long'.
1906
1907	* expr.h (NO_DEFER_POP): Do any pending stack adjusts.
1908
1909	* recog.c (register_operand): Disallow subreg of reg not allowed to
1910	change size.
1911
1912Thu Jun 29 05:51:57 1995  Jeff Law  (law@snake.cs.utah.edu)
1913
1914	* pa.md (reload addsi3): New pattern to avoid reload lossage
1915	with register eliminations.
1916
1917	* pa.c (output_cbranch): When checking for a jump to the given
1918	insn's delay slot, handle the case where JUMP_LABEL for the
1919	given insn does not point to the first label in a series of
1920	labels.
1921	(output_bb, output_dbra, output_movb): Likewise.
1922
1923Wed Jun 28 18:04:56 1995  Jeff Law  (law@snake.cs.utah.edu)
1924
1925	* pa.h (PIC_OFFEST_TABLE_REGNUM_SAVED): Define to %r4.
1926	(CONDITIONAL_REGISTER_USAGE): Make it fixed when compiling
1927	PIC code.
1928	(INIT_EXPANDERS): Delete.
1929	* pa.c (hppa_save_pic_table_rtx): Delete variable.
1930	(hppa_expand_prologue): For PIC generation, copy the PIC
1931	register into a fixed callee register at the end of the
1932	prologue of non-leaf functions.
1933	* pa.md (call expanders): Reload the PIC register from the
1934	fixed callee saved register.  Don't try to save the PIC
1935	register before the call.
1936
1937Wed Jun 28 18:01:14 1995  Stan Cox  (coxs@dg-rtp.dg.com)
1938
1939	* m88k/dguxbcs.h (ASM_SPEC): Removed -h flag.
1940	* m88k/dgux.h (ASM_SPEC): Likewise.
1941
1942Wed Jun 28 17:01:58 1995  David Edelsohn  <edelsohn@mhpcc.edu>
1943
1944	* rs6000.c (processor_target_table): Remove CPU name synonyms.
1945	* rs6000.h (CPP_SPEC): Likewise.
1946	* rs6000/sysv4.h (CPP_SPEC): Likewise.
1947	(ASM_SPEC): Likewise.
1948	* rs6000/sysv4le.h (CPP_SPEC): Likewise.
1949	* rs6000/eabile.h (CPP_SPEC): Likewise.
1950	* rs6000/powerpc.h (CPP_SPEC): Likewise.
1951	(ASM_SPEC): Set assembler target according to compiler target.
1952	* rs6000/aix3newas.h (CPP_SPEC): Likewise.
1953	(ASM_SPEC): Likewise.
1954	* rs6000/aix41.h (CPP_SPEC): Likewise.
1955	(ASM_SPEC): Likewise.
1956
1957Wed Jun 28 16:25:53 1995  Gran Uddeborg  (uddeborg@carmen.se)
1958
1959	* i386/x-isc3 (INSTALL_HEADERS_DIR): Delete; done by configure.
1960
1961Wed Jun 28 16:10:47 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
1962
1963	* xm-rs6000.h (alloca): Extern decl added for non-GNU compiler.
1964
1965Wed Jun 28 11:31:30 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1966
1967	* cpplib.c (progname): Remove definition from here.
1968
1969	* final.c (final_scan_insn): Fix error in last change.
1970
1971	* rtlanal.c (reg_set_p_1): Now static; add extra parm.
1972
1973	* stmt.c: Delete redundant forward decls.
1974	(expand_anon_union_decl): Correctly call expand_decl.
1975
1976	* toplev.c (strip_off_ending): Strip off any ending; don't
1977	pretend we know what valid endings are.
1978
1979	* svr4.h (ASM_OUTPUT_SECTION_NAME): Don't crash if DECL is null.
1980
1981	* rs6000.md ({load,store}_multiple): Don't use indirect_operand
1982	in define_insn; use explicit MEM of register_operand instead.
1983
1984Tue Jun 27 11:42:56 1995  Stephen L Moshier  <moshier@world.std.com>
1985
1986	* i386/i386.c (print_operand, case `J'): Use jns for GE and js for
1987	LT.
1988
1989Tue Jun 27 07:58:55 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
1990
1991	* expr.c (expand_expr, TARGET_EXPR): Only use original_target
1992	if !ignore.
1993
1994Tue Jun 27 07:27:26 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
1995
1996	* fold-const.c (fold_truthop): Commute unextend and convert on
1997	l_const and r_const.
1998
1999	* c-common.c (decl_attributes, case A_CONSTRUCTOR, A_DESTRUCTOR):
2000	Set TREE_USED.
2001
2002	* final.c (final_scan_insn): Don't call alter_cond unless
2003	condition is on cc0.
2004
2005	* stmt.c (expand_asm_operands): Handle input operands that may not
2006	be in a register.
2007
2008Mon Jun 26 19:23:05 1995  Richard Earnshaw (rearnsha@armltd.co.uk)
2009
2010	* arm/lib1funcs.asm (L_dvmd_tls): Renamed from L_divmodsi_tools.
2011	* arm/t-semi (LIB1ASMFUNCS): Rename _dvmd_tls from _divmodsi_tools.
2012
2013Mon Jun 26 19:18:06 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
2014
2015	* unroll.c (find_splittable_regs): When completely unrolling loop,
2016	check for non-invariant initial biv values.
2017
2018Mon Jun 26 19:13:54 1995  Gran Uddeborg  <uddeborg@carmen.se>
2019
2020	* configure (i[345]86-*-isc*): Fix misspelled "rfile" to "ifile".
2021
2022Mon Jun 26 18:58:22 1995  Mike Stump  <mrs@cygnus.com>
2023
2024	* expr.c (expand_expr, case COND_EXPR): Protect the condition from
2025	being evaluated more than once.
2026	(do_jump, case TRUTH_ANDIF_EXPR, TRUTH_ORIF_EXPR): Likewise.
2027
2028Mon Jun 26 18:52:36 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
2029
2030	* fixincludes (string.h):  Fix return value for mem{ccpy,chr,cpy,set}
2031	and str{len,spn,cspn} on sysV68.
2032
2033Mon Jun 26 06:54:50 1995  Michael Meissner  (meissner@cygnus.com)
2034
2035	* i386/osfrose.h (LONG_DOUBLE_TYPE_SIZE): Go back to making long
2036	double == double.
2037
2038Thu Jun 22 19:14:41 1995  Pat Rankin  (rankin@eql.caltech.edu)
2039
2040	* make-cc1.com (if DO_LINK): Skip c-parse.* processing when
2041	only relinking.
2042	(gas_message): Update to reflect current version, and give
2043	a different message if/when no version of gas is found.xo
2044
2045Thu Jun 22 18:52:37 1995  Richard Earnshaw (rearnsha@armltd.co.uk)
2046
2047	* arm/lib1funcs.asm (___modsi3): Correctly set SIGN register for
2048	modulo involving negative numbers.
2049
2050Thu Jun 22 18:32:27 1995  Uwe Seimet  (seimet@chemie.uni-kl.de)
2051
2052        * xm-atari.h (HZ): Now 100 and don't define if already defined.
2053
2054Thu Jun 22 18:26:12 1995  Jeffrey A Law  (law@snake.cs.utah.edu)
2055
2056	* calls.c (expand_call): Correctly handle returning BLKmode
2057	structures in registers when the size of the structure is not
2058	a multiple of word_size.
2059	* stmt.c (expand_return): Likewise.
2060
2061	* pa-gux7.h (LIB_SPEC): Undefine before redefining.
2062	* pa-hpux.h (LIB_SPEC): Likewise.
2063	* pa-hpux7.h (LIB_SPEC): Likewise.
2064
2065	* genmultilib: Work around hpux8 /bin/sh case bug.
2066
2067	* pa.h (LIB_SPEC): Define to avoid -lg.
2068
2069Thu Jun 22 18:19:09 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
2070
2071	* expr.c (expand_expr, TARGET_EXPR): Use original_target.
2072
2073	* collect2.c (locatelib): Fix parsing of LD_LIBRARY_PATH.
2074
2075Thu Jun 22 18:15:54 1995  Paul Eggert  <eggert@twinsun.com>
2076
2077	* configure: Create an empty Makefile.sed first, to work
2078	around a Nextstep 3.3 bug.
2079
2080Thu Jun 22 18:03:44 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2081
2082	* Makefile.in (STAGESTUFF): Add stamp-crt.
2083	(crtbegin.o, crtend.o): Now depend on stamp-crt.
2084	(stamp-crt): New rule, to actually build crt{begin,end}.o.
2085	
2086	* collect2.c (main): Unlink export_file before we return.
2087
2088Thu Jun 22 14:25:56 1995  Michael Meissner  (meissner@cygnus.com)
2089
2090	* rs6000.h (STRIP_NAME_ENCODING): Store NAME and strlen(NAME) into
2091	local variables; cast result of alloca to avoid compiler warnings.
2092
2093Tue Jun 20 18:25:29 1995  Douglas Rupp  (drupp@cs.washington.edu)
2094
2095	* alpha/config-nt.sed, i386/config-nt.sed: Edit to add
2096	a missing $(exeext) for CCCP.
2097
2098Tue Jun 20 18:18:00 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2099
2100	* protoize.c (default_include): Use name and two ints to be
2101	compatible with definition of INCLUDE_DEFAULTS.
2102
2103Mon Jun 19 19:24:29 1995  Ted Lemon  <mellon@toccata.fugue.com>
2104
2105      * mips/netbsd.h (ASM_DECLARE_FUNCTION_NAME): Don't emit function label.
2106
2107Mon Jun 19 18:34:55 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
2108
2109	* fixincludes: Don't define wchar_t under C++.
2110
2111Mon Jun 19 17:12:41 1995  Paul Eggert  <eggert@twinsun.com>
2112
2113	* cccp.c (collect_expansion): Work around enum bug in vax
2114	ultrix 4.3 pcc.
2115	* tree.c (simple_cst_equal): Likewise.
2116
2117Mon Jun 19 16:53:00 1995  Douglas Rupp  (drupp@cs.washington.edu)
2118
2119	* winnt/spawnv.c: New file.
2120
2121Mon Jun 19 16:30:29 1995  Glenn Brown  <glenn@mars.myri.com>
2122
2123 	* caller-save.c (save_call_clobbered_regs): If AUTO_INC_DEC, mark
2124	register indicated by REG_INC notes as live so they will be saved.
2125
2126Mon Jun 19 16:21:12 1995  Jeffrey A Law  (law@snake.cs.utah.edu)
2127
2128	* pa.h (PRINT_OPERAND_ADDRESS, case LOW_SUM): Fix logic bug
2129	in last change. 
2130
2131Mon Jun 19 14:11:49 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
2132
2133	* integrate.c (integrate_decl_tree): Only set DECL_ABSTRACT_ORIGIN
2134	if the decl returned by pushdecl is the one we started with.
2135
2136	* mips.h (current_function_name): Delete declaration.
2137	(ASM_DECLARE_FUNCTION_NAME): Don't set current_function_name.
2138	* gnu.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
2139	* mips.c (current_function_decl): Delete declaration.
2140	(function_prologue): New variable fnname.  Use it instead of
2141	current_function_name.
2142	(function_epilogue): Likewise.
2143
2144Mon Jun 19 13:13:15 1995  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2145
2146	* alpha.h (ASM_OUTPUT_ASCII): Always reset line count when
2147	starting new line.
2148
2149	* scan-decls.c (scan_decls): Fix typo when resetting PREV_ID_START.
2150
2151	* i386/config-nt.sed, alpha/config-nt.sed: Change version to 2.7.1.
2152
2153Mon Jun 19 13:06:14 1995  DJ Delorie  (dj@delorie.com)
2154
2155	* msdos/top.sed: Support new build variables.
2156	* msdos/configur.bat: Make options.h and specs.h.
2157	Change realclean to maintainer-clean.
2158
2159Fri Jun 16 06:54:03 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2160
2161	* Version 2.7.0 Released.
2162
2163	* obstack.c: Always enable this code for now.
2164
2165	* alpha.c (alpha_builtin_saveregs): Use ptr_mode and conversions
2166	when need so works for both OSF and NT.
2167	* va-alpha.h (__va_tsize): Round to long long not long.
2168
2169Thu Jun 15 17:54:52 1995  Bdale Garbee  <bdale@gag.com>
2170
2171	* configure (a29k-*-coff): Synonym for a29k-*-udi.
2172
2173Thu Jun 15 17:51:21 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2174
2175	* function.c (assign_parms): Do all conversions in CONVERSION_INSNS.
2176
2177Thu Jun 15 17:36:49 1995  Michael Meissner  <meissner@cygnus.com>
2178
2179	* reg-stack.c (record_reg_life): Call record_reg_life_pat with 0
2180	for douse argument so that USE's created to mark variables within
2181	blocks don't get marked as set.
2182
2183Thu Jun 15 06:28:15 1995  Dennis Glatting  (dennisg@CyberSAFE.COM)
2184
2185	* configure: Change one sed command to work around m68k-next bug.
2186
2187Wed Jun 14 22:14:39 1995  Jason Merrill  <jason@deneb.cygnus.com>
2188
2189	* collect2.c (main): Don't turn off auto_export because of -g.
2190	(main): Ignore the argument to -o.
2191
2192	* alpha.h (LINK_SPEC): Don't pass -init __main anymore.
2193	* alpha/osf12.h (LINK_SPEC): Ditto.
2194	* mips/iris5.h (LINK_SPEC): Ditto.
2195
2196	* collect2.c (main): Place o_file after an initial .o (like crt0.o).
2197	If we have LD_INIT_SWITCH, use init and fini functions for
2198	executables, too.  Specify the unique function names.
2199	(write_c_file_stat): Fix the case of destructors but no constructors.
2200	Don't include the generic-named functions for executables.
2201	(write_c_file): If we have LD_INIT_SWITCH, always use
2202	write_c_file_stat.
2203
2204	* collect2.c (main): Also add _GLOBAL__D? to export list.
2205
2206	* ginclude/iso646.h: Do nothing if compiled as C++.
2207
2208Wed Jun 14 17:39:10 1995  Roland McGrath  (roland@gnu.ai.mit.edu)
2209
2210	* c-common.c (format_char_info, case 'm'): Set type to void.
2211	(check_format_info): If type is void, ignore operand.
2212
2213Wed Jun 14 17:04:10 1995  Paul F. Kunz  (Paul_Kunz@SLAC.Stanford.EDU)
2214
2215	* expr.c (expand_builtin_apply_args): Put back original
2216	register save and restore order.
2217
2218Wed Jun 14 16:56:22 1995  Michael Meissner  <meissner@cygnus.com>
2219
2220	* rs6000/eabi.h (INVOKE__main): Define, so __eabi is called after
2221	main's arguments are saved.
2222
2223	* rs6000.c (output_prolog): Don't call __eabi here, let
2224	compiler call it after the arguments to main are saved.
2225	(output_{prolog,epilog}): Don't use functions under V.4 to save
2226	and restore floating point registers.
2227
2228Wed Jun 14 16:52:12 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
2229
2230	* m68k/mot3300.h (PCC_BITFIELD_TYPE_MATTERS): Defined.
2231
2232Wed Jun 14 16:48:53 1995  Jerry Frain  (jerry@tivoli.com)
2233
2234	* Makefile.in (stage[1-4]): Correctly link `as', `ld', and `collect2'.
2235
2236Wed Jun 14 05:52:04 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2237
2238	* objc-act.c (hack_method_prototype): Set DECL_CONTEXT of parms.
2239
2240	* expmed.c (emit_store_flag): Always set LAST.
2241
2242	* c-decl.c (start_function): New parameter for attributes.
2243	* c-tree.h (start_function): Likewise.
2244	* c-lang.c (finish_file): Pass extra parm to start_function.
2245	* objc-act.c (build_module_descriptor, really_start_method): Likewise.
2246	* c-parse.in (fndef, nested_function, notype_nested_function):
2247	Likewise.
2248
2249	* function.c (assign_parms): Use convert_to_mode instead of
2250	gen_lowpart when converting incoming parm.
2251
2252Tue Jun 13 19:10:32 1995  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2253
2254	* rs6000.md (decrement_and_branch): Finish last fix; update matching
2255	constraint.
2256
2257Tue Jun 13 18:32:51 1995  Torbjorn Granlund  <tege@bozo.matematik.su.se>
2258
2259	* fold-const.c (fold): When converting a COND_EXPR to an ABS_EXPR,
2260	get the types right for ABS_EXPR to work.
2261
2262Mon Jun 12 17:09:55 1995  Michael Tiemann  (tiemann@axon.cygnus.com)
2263
2264	* reorg.c (fill_simple_delay_slots): Set MAYBE_NEVER according to
2265	code of TRIAL_DELAY, not TRIAL.
2266
2267Mon Jun 12 15:02:37 1995  Doug Evans  <dje@cygnus.com>
2268
2269	* configure: Restore code to make ld symlink if ! use_collect2.
2270
2271	* gcc.c (link_command_spec): Undo patch of May 11.
2272	-nostdlib implies -nostartfiles again.
2273	* dsp16xx.h (CROSS_LINK_SPEC): Likewise.
2274	* i386/freebsd.h (LINK_SPEC): Undo patch of May 24.
2275	Don't pass "-e start" if nostdlib.
2276	* i386/sun.h (LINK_SPEC): Likewise.
2277	* m68k/sun2o4.h (LINK_SPEC): Likewise.
2278	* m68k/sun3.h (LINK_SPEC): Likewise.
2279	* m68k/vxm68k.h (LINK_SPEC): Likewise.
2280	* mips/netbsd.h (LINK_SPEC): Likewise.
2281	* config/netbsd.h (LINK_SPEC): Likewise.
2282	* rs6000/mach.h (LINK_SPEC): Likewise.
2283	* sparc.h (LINK_SPEC): Likewise.
2284	* sparc/vxsparc.h (LINK_SPEC): Likewise.
2285
2286	* gcc.c (link_command_spec): New argument -nodefaultlibs.
2287
2288Sun Jun 11 20:47:53 1995  Stephen L Moshier  (moshier@world.std.com)
2289
2290	* Makefile.in (fix-header.o): Depends on xsys-protos.h.
2291
2292Sun Jun 11 15:07:58 1995  Tim Carver  (timc@ibeam.intel.com)
2293
2294	* reload1.c (emit_reload_insns): Don't call HARD_REGNO_NREGS
2295	on psuedo when clearing reg_last_reload_reg.
2296
2297Sun Jun 11 14:07:05 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
2298
2299	* m68k.md ({add,sub}di{_mem,3}): Patterns merged.
2300
2301Sun Jun 11 13:43:26 1995  Torbjorn Granlund  <tege@bozo.matematik.su.se>
2302
2303	* m68k.md (cmpdi matcher): Set cc_status before returning.
2304
2305	* config/xm-freebsd.h (DONT_DECLARE_SYS_SIGLIST): Define.
2306
2307Sun Jun 11 13:38:49 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
2308
2309	* fixincludes (math.h):  Keep declaration of abs on HPUX.
2310
2311Sun Jun 11 12:31:42 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2312
2313	* stor-layout.c (variable_size): Do nothing if SIZE is constant.
2314
2315	* stmt.c (expand_asm_operands): See if output operand permits
2316	register.  If not, mark output addressable, call expand_operand
2317	on it, and give error if not MEM.
2318
2319	* function.c (assign_parms): Handle promotions of both
2320	passed and nominal modes separately and insert needed conversions.
2321	(promoted_input_arg): Return 0 if nominal and passed modes differ.
2322
2323	* stmt.c (all_cases_count, case INTEGER_TYPE): Fix typo in checking
2324	for integer bounds.
2325
2326Sat Jun 10 08:55:25 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2327
2328	* libgcc2.c (_floatdidf): Correctly set float sizes.
2329
2330	* c-decl.c (c_decode_option, case "-Wall"): Don't set extra_warnings.
2331
2332	* Makefile.in (cpplib.o, fix-header.o): Update dependencies.
2333	(cpperror.o, cppexp.o, cpphash.o): New rules, to show .h dependencies.
2334
2335Fri Jun  9 18:06:10 1995  Doug Evans  <dje@canuck.cygnus.com>
2336
2337	* cse.c (cse_basic_block): Fix test for whether block ends with a
2338	barrier.  Return next insn, not 0, if block ends in a barrier.
2339
2340Fri Jun  9 17:58:29 1995  Paul Eggert  <eggert@twinsun.com>
2341
2342	* fold-const.c (lshift_double): Replace `&' with `%' to fix typo.
2343	([lr]shift_double): Truncate shift count only if SHIFT_COUNT_TRUNCATED.
2344	Remove unnecessary `count >= prec' test.
2345
2346	* cexp.y (left_shift): Ignore integer overflow.
2347
2348	* cexp.y (skip_evaluation): New variable.
2349	(&&, ||, ?:): Increment it in unevaluated subexpressions.
2350	(/, %, integer_overflow): Suppress diagnostics if skip_evaluation != 0.
2351	(yyerror): Clear skip_evaluation.
2352
2353Fri Jun  9 17:49:05 1995  Torbjorn Granlund  <tege@bozo.matematik.su.se>
2354
2355	* m68k.md (tstdi): Rewrite.
2356
2357Fri Jun  9 17:28:55 1995  Per Bothner  <bothner@cygnus.com>
2358
2359	* scan-decls.c (scan_decls):  Handle declarations with
2360	multiple comma-separated declarators.
2361
2362Thu Jun  8 19:16:12 1995  Richard Earnshaw (rearnsha@armltd.co.uk)
2363
2364	* arm.md (mov[sd]f expands): Don't allow fp constants in pseudos
2365	when TARGET_SOFT_FLOAT.
2366
2367Thu Jun  8 19:11:43 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
2368
2369	* expmed.c (store_split_bit_field): When adjust arg in
2370	BYTES_BIT_ENDIAN case, use number of bits in arg for MEM operands
2371	and BITS_PER_WORD for other operands.
2372	(extract_fixed_bit_field): Undo last change.
2373
2374	* unroll.c (verify_addresses): New function.
2375	(find_splittable_givs): Use it instead of memory_address_p.
2376
2377Thu Jun  8 18:58:18 1995  Torbjorn Granlund  <tege@bozo.matematik.su.se>
2378
2379	* expmed.c (expand_divmod): Always check result of emit_store_flag.
2380
2381Thu Jun  8 12:02:34 1995  David D Zuhn  (zoo@armadillo.com)
2382
2383	* cpplib.c (cpp_push_buffer): Include filename in error message.
2384
2385Thu Jun  8 11:53:45 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2386
2387	* function.c (assign_parms): Don't call promote_mode on arg
2388	unless PROMOTE_FUNCTION_ARGS defined.
2389
2390	* rs6000.md (decrement_and_branch): Ensure label is operand 0.
2391
2392	* rs6000.md (aux_truncdfsf2): New pattern.
2393	(movsf): Use it instead of invalid SUBREG and truncdfsf2.
2394
2395	* varasm.c (assemble_name): Disable warn_id_clash around
2396	get_identifier call.
2397
2398Wed Jun  7 17:22:25 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
2399
2400	* configure (gdb_needs_out_file_path): New variable.
2401	(m68k-motorola-sysv): Set gdb_needs_out_file_path if not using gas.
2402	(.gdbinit): If gdb_needs_out_file_path is set, add a 'dir' command
2403	for $(out_file).
2404
2405Wed Jun  7 17:17:19 1995  Torbjorn Granlund  <tege@bozo.matematik.su.se>
2406
2407	* fold-const.c (fold): When folding `<' type nodes, make true_value
2408	and false_value have correct types.
2409
2410Wed Jun  7 05:06:42 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
2411
2412	* collect2.c (COFF scan_prog_file): Use the AIX duplicate entry.
2413
2414Tue Jun  6 18:43:09 1995  Jeffrey A Law  (law@snake.cs.utah.edu)
2415
2416	* pa.h (FUNCTION_ARG_CALLEE_COPIES): Define.
2417
2418Tue Jun  6 18:21:18 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2419
2420	* expr.c (expand_expr, case PLACEHOLDER_EXPR): Consider two types
2421	identical if their TYPE_MAIN_VARIANTs are the same.
2422
2423	* c-decl.c (start_decl): Set DECL_COMMON before calling 
2424	decl_attributes.
2425
2426	* a29k.c (print_operands): Cast args to bcopy to char *.
2427
2428	* c-decl.c (duplicate_decls): Don't clear DECL_CONTEXT of
2429	new decl if it is a function.
2430
2431Tue Jun  6 17:57:44 1995  Eberhard Mattes  (mattes@azu.informatik.uni-stuttgart.de)
2432
2433	* gcc.c (do_spec_1, case 'g'): Handle %O as suffix if MKTEMP_EACH_FILE.
2434
2435Tue Jun  6 17:53:05 1995  Michael Meissner  <meissner@cygnus.com>
2436
2437	* rs6000.c (expand_block_move): Update source and destination pointers
2438	inside the loop moving the bytes, not outside.
2439
2440Tue Jun  6 14:58:37 1995  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2441
2442	* m68k.h (CONDITIONAL_REGISTER_USAGE): Don't mark pic reg as fixed.
2443	* m68k.c (finalize_pic): Emit USE insn at start and end of function.
2444
2445Tue Jun  6 13:46:57 1995  Jim Wilson  <wilson@mole.gnu.ai.mit.edu>
2446
2447	* sh.c (print_operand): Check for annulled branches.
2448	(output_movedouble): Handle SUBREG addresses.
2449	(output_branch): Handle annulled branches.
2450	(sh_expand_prologue): Correct number of saved registers for
2451	varargs functions.
2452	* sh.h: Add some comments.
2453	* sh.md: Add some comments.  Cleanup formatting.
2454	(type attribute): Add pstore and call.
2455	(return define_delay): Reorganize to make clearer.
2456	(call/sfunc define_delay): Define.
2457	(cbranch define_delay): Define to have annul-true delay slot.
2458	(subsi3): Use arith_reg_operand for operand 2.
2459	(shift patterns): Use const_int_operand instead of immediate_operand
2460	for shift counts.
2461	(push): Add pstore constraint case.
2462	(movsi_i): Move t/z constraint pair to the front of the list.
2463	(calli, call_valuei): Add "call" attribute.
2464	
2465Mon Jun  5 19:23:13 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
2466
2467	* sched.c (attach_deaths): In last change, use find_reg_note instead
2468	of find_regno_note.
2469
2470Mon Jun  5 19:17:31 1995  Tom Quiggle  (quiggle@lovelace.engr.sgi.com)
2471
2472	* mips/iris5.h (MACHINE_TYPE): Say "IRIX 5.x", not "5.0".
2473	(NO_DOLLAR_IN_LABEL): Undefine.
2474	* mips.h (sdb_begin_function_line): New declaration.
2475	(PUT_SDB_FUNCTION_END): New definition.
2476
2477Mon Jun  5 18:56:10 1995  Michael Meissner  <meissner@cygnus.com>
2478
2479	* rs6000.c (expand_block_move): Don't do block moves where we clobber
2480	fixed numbers of regs, instead move just 1-8 bytes at a time.
2481
2482	* Makefile.in (STAGESTUFF): Copy files produced by -da and
2483	-save-temps to the stage subdirectories.
2484
2485Mon Jun  5 08:18:46 1995  Torbjorn Granlund  <tege@bozo.matematik.su.se>
2486
2487	* combine.c (reg_dead_at_p): When scanning backwards, stop at BARRIER.
2488
2489	* m68k.c (print_operand): Handle 'R' for registers.
2490	* m68k.md (cmpdi): Rewrite to avoid bogus matching constraints.
2491
2492	* optabs.c (expand_binop): In last change, don't defererence TARGET
2493	if it is 0.
2494
2495	* pa.md (movsicc): Use MATCH_DUP for operand 4 and 5.
2496
2497Mon Jun  5 08:14:56 1995  Jeffrey A Law  (law@cs.utah.edu)
2498
2499	* pa.c (hppa_encode_label): Allocate stuff on permanent_obstack
2500	rather than via malloc.
2501
2502	* c-common.c (decl_attributes): Fix typo in size passed to alloca.
2503
2504Mon Jun  5 08:10:55 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2505
2506	* alpha.md: Use "some_operand" for patterns valid only during
2507	reload and meant to handle adding more PLUS operators during
2508	register elimination.
2509
2510Mon Jun  5 07:31:53 1995  Stephen L Moshier  (moshier@world.std.com)
2511
2512	* cse.c (simplify_unary_operation, case FLOAT, UNSIGNED_FLOAT):
2513	Truncate to requested mode.
2514
2515Sat Jun  3 22:08:51 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
2516
2517	* sched.c (attach_deaths): Don't add a REG_DEAD note if a REG_UNUSED
2518	note is already present.
2519
2520Sat Jun  3 18:36:57 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2521
2522	* pa.h (hppa_builtin_saveregs): Add declaration.
2523
2524Sat Jun  3 18:11:26 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
2525
2526	* Makefile.in (scan-decls.o):  Depends on cpplib.h.
2527
2528Fri Jun  2 19:23:47 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2529
2530	* optabs.c (expand_binop): Don't use non-REG TARGET in 2-word case.
2531
2532Thu Jun  1 19:30:30 1995  Tor Egge  (tegge@flipper.pvv.unit.no)
2533
2534	* m88k.h (RETURN_POPS_ARGS): New argument.
2535	* m88k/dolphin.ld: Added start of comment.
2536
2537Thu Jun  1 19:12:28 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2538
2539	* configure (a29k-*-bsd*): Fix typo in last change.
2540
2541Thu Jun  1 18:51:53 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
2542
2543	* expmed.c (extract_fixed_bit_field): For REG case, compute total_bits
2544	from mode instead of assuming BITS_PER_WORD.
2545
2546Thu Jun  1 18:34:31 1995  Michael Meissner  <meissner@cygnus.com>
2547
2548	* rs6000.h (FIXED_R13): Default to 0.
2549	({FIXED,CALL_USED}_REGISTERS): Use FIXED_R13 for register 13.
2550	* sysv4.h (FIXED_R13): Define to be 1.
2551
2552Wed May 31 20:57:26 1995  Torbjorn Granlund  <tege@matematik.su.se>
2553
2554	* m68k.md ([su]mulsi3_highpart): Pass correct number of arguments to
2555	const_uint32_operand.
2556	* m68k.c (const_uint32_operand): Reject negative numbers.
2557
2558	* expmed.c (expand_mult_highpart): Use wide_op1 for all multiplies.
2559	(expand_divmod): Undo Nov 12 change.  Instead, add special case
2560	for division by MIN_INT in signed TRUNC_DIV_EXPR case.
2561
2562Wed May 31 20:44:21 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
2563
2564	* m68k.md (one_cmpldi2): New pattern.
2565	({a,l}shrdi{3,_const}): Allow 63 as shift count.
2566
2567Wed May 31 14:56:31 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2568
2569	* varasm.c (assemble_start_function, assemble_variable):
2570	Make sure first_global_object_name is in permanent obstack.
2571
2572	* reload1.c (alter_reg): Clean up setting of RTX_UNCHANGING_P
2573	when making a MEM.
2574
2575	* reorg.c (struct resources): New field unch_memory.
2576	(CLEAR_RESOURCES, mark_target_live_regs, dbr_schedule): Clear it.
2577	(mark_{referenced,set}_resources, redundant_insn): Set it.
2578	(fill_simple_delay_slots): Likewise.
2579	(resource_conflicts_p): Test it.
2580
2581	* unroll.c (copy_loop_body): Fix typo in call to sets_cc0_p.
2582
2583	* integrate.c (output_inline_function): Don't call expand_function_end.
2584
2585	* calls.c (prepare_call_address): Only call use_reg on
2586	static_chain_rtx if it is a REG.
2587
2588	* configure (a29k-*-bsd*): Use t-a29k.
2589	* t-a29k: New file.
2590	* a29k/t-a29kbare (LIBGCC1_TEST): New null definition.
2591	* a29k/t-vx29k (LIBGCC1_TEST): Likewise.
2592
2593Wed May 31 14:17:42 1995  Jeffrey A Law  (law@snake.cs.utah.edu)
2594
2595	* configure (hppa*-*-bsd*): Do not run fixincludes.
2596	(hppa*-*-osf*): Likewise.
2597	(hppa*-*-lites*): Likewise.
2598
2599	* pa.h (PRINT_OPERAND_ADDRESS): Use "RR'" rather than "R'" for
2600	symbolic addresses.
2601	* pa.md (symbolic HIGH patterns): Likewise.
2602	(symbolic LO_SUM pattern): Likewise.
2603
2604Wed May 31 14:11:53 1995  Michael Meissner  <meissner@cygnus.com>
2605
2606	* rs6000.md (all movstri recognizers): Eliminate updating the pointers.
2607	* rs6000.c (expand_block_move): Don't pass argument of # bytes to
2608	increment pointers by to movstrsi expanders.
2609
2610	* rs6000.c (rs6000_override_options): Fix typo with -mstring handling.
2611
2612	* rs6000.h (TARGET_SWITCHES): Set MASK_STRING_SET explicitly
2613	if -mno-string, so that it can override the processor default.
2614
2615Wed May 31 07:31:53 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
2616
2617	* c-common.c (truthvalue_conversion, BIT_AND_EXPR): Make sure that
2618	the result has boolean_type_node.
2619
2620Tue May 30 19:03:21 1995  J.T. Conklin  <jtc@cygnus.com>
2621
2622	* stddef.h: Undefine _BSD_XXX_T_ if _GCC_XXX_T is defined on BSD
2623	Net/2 derived systems.
2624
2625Tue May 30 08:17:37 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
2626
2627	* m68k.md (decrement_and_branch_until_zero): Operand 0 constraint
2628	changed from "+g" to "+d*am".
2629	(similar anonymous HImode pattern): Likewise.
2630
2631	* m68k.md (tstdi): Use tst/subx #0 instead of neg/negx.
2632	Allow "a" and ">" for operand 0.
2633
2634Mon May 29 19:24:43 1995  Niklas Hallqvist  (niklas@appli.se)
2635
2636	* m68k.md (addsi_lshrsi_31): Use match_dup, not constraint "1",
2637	for matching inputs.
2638
2639Mon May 29 12:39:58 1995  Allen Briggs <briggs@rrinc.com>
2640
2641	* i386/isc.h ({STARTFILE,LIB,CPP}_SPEC): Handle -Xp like -posix.
2642	* i386/x-isc3 (X_CFLAGS): Add -Xp.
2643 
2644Mon May 29 12:28:41 1995  J.T. Conklin  (jtc@cygnus.com)
2645
2646	* configure (sparc-*-netbsd): Add missing asterisk at end.
2647
2648Mon May 29 08:55:48 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2649
2650	* combine.c (recog_for_combine): New parm PADDED_SCRATCHES; set it.
2651	(try_combine): Accumulate number of scratches and update max_scratch.
2652	(simplify_set): Add extra parm to recog_for_combine.
2653
2654	* romp.md (call): Put USE for r0 in CALL_INSN; call call_internal
2655	to emit insn.
2656	(call_internal): New name for anonymous call.
2657	(call_value, call_value_internal): Likewise.
2658
2659	* winnt/xm-winnt.h: Protect most definitions with #ifndef.
2660	* alpha/xm-winnt.h: Include alpha/xm-alpha.h, then winnt/xm-winnt.h.
2661	(POSIX): Undefine.
2662	* xm-alpha.h: Don't include alloca.h for winnt.
2663
2664Sun May 28 18:34:01 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2665
2666	* configure: Make sed commands more uniform.
2667
2668	* Makefile.in: Properly use $(srcdir) for files that have it
2669	in their reference as a target of a rule.
2670	(libgcc1.a): Add missing RANLIB_TEST use.
2671
2672	* stmt.c (expand_computed_goto): Call do_pending_stack_adjust.
2673
2674Sun May 28 18:08:41 1995  Torbjorn Granlund  <tege@mole.gnu.ai.mit.edu>
2675
2676	* m68k.md (divmodhi4, udivmodhi4): Use "dmsK" for operand 2.
2677
2678Fri May 26 17:01:22 1995  Paul Eggert  <eggert@twinsun.com>
2679
2680	* fixincludes: Fix bogus recursive <stdlib.h> in NEWS-OS 4.0C.
2681
2682Fri May 26 08:02:14 1995  Michael Meissner  (meissner@cygnus.com)
2683
2684	* c-typeck.c (initializer_constant_valid_p): For the CONSTRUCTOR
2685	case, if the type is a record, recurse, just like for unions.
2686
2687Thu May 25 07:56:14 1995  Paul Eggert  <eggert@twinsun.com>
2688
2689	* fixincludes: Add `sel', `tahoe', `r3000', `r4000' to the
2690	list of pre-ANSI symbols that need to be surrounded with __ __.
2691	Allow white space between `#' and `if' when looking for lines to patch.
2692
2693	* objc/sarray.h (PRECOMPUTE_SELECTORS, struct soffset):
2694	Use #ifdef __sparc__, not sparc.
2695
2696	* m68k.md (addsi_lshrsi_31, ashldi_const, ashrdi_const, lshrdi_const):
2697	Replace `mov' with `move'.
2698
2699Thu May 25 07:35:37 1995  Allen Briggs  <briggs@rrinc.com>
2700
2701	* libgcc2.c (L_eh, i386): Remove in-line comments in assembly
2702	code--the '#' character is not valid for the SYSV as.
2703 
2704Thu May 25 07:28:54 1995  Pat Rankin  (rankin@eql.caltech.edu)
2705
2706	* Makefile.in (BC_ALL): Restore it from May 22 change; vms uses it.
2707	(STAGESTUFF): Use it.
2708
2709Thu May 25 07:11:56 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2710
2711	* alpha.c (alpha_emit_set_const): Don't call expand_binop for
2712	other than add if SImode and can't create pseudos.
2713
2714Wed May 24 21:38:24 1995  Jim Wilson  <wilson@cygnus.com>
2715
2716	* sched.c (reemit_notes): New function.
2717	(schedule_block): Call reemit_notes twice.  Reorganize code for
2718	handling SCHED_GROUP_P insns, so that reemit_notes works.
2719
2720	* sh/sh.c (shiftcosts, genshifty_op): Add SH3 support.
2721	* sh/sh.md (ashlsi3, lshrsi3): Add SH3 support.
2722	(ashlsi3_d, ashrsi3_d, lshrsi3_d): New patterns for SH3.
2723	(ashrsi2_31): Remove r/!r constraint.
2724
2725Wed May 24 17:00:47 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
2726
2727	* tree.c (type_list_equal): Call simple_cst_equal before checking
2728        types.
2729
2730Wed May 24 16:49:49 1995  Douglas Rupp  (drupp@cs.washington.edu)
2731
2732	* Makefile.in (libgcc2.a): Handle case of separate srcdir.
2733
2734Wed May 24 16:22:01 1995  Paul Eggert  <eggert@twinsun.com>
2735
2736	* configure: Define $(MAKE) if `make' doesn't.
2737
2738Wed May 24 15:50:51 1995  Doug Evans  <dje@cygnus.com>
2739
2740	* dsp16xx.h (CROSS_LINK_SPEC): ENDFILE_SPEC moved to -nostartfiles.
2741	* i386/freebsd.h (LINK_SPEC): Don't pass "-e start" if nostartfiles
2742	rather than nostdlib.
2743	* i386/sun.h (LINK_SPEC): Likewise.
2744	* m68k/sun2o4.h (LINK_SPEC): Likewise.
2745	* m68k/sun3.h (LINK_SPEC): Likewise.
2746	* m68k/vxm68k.h (LINK_SPEC): Likewise.
2747	* mips/netbsd.h (LINK_SPEC): Likewise.
2748	* config/netbsd.h (LINK_SPEC): Likewise.
2749	* rs6000/mach.h (LINK_SPEC): Likewise.
2750	* sparc.h (LINK_SPEC): Likewise.
2751	* sparc/vxsparc.h (LINK_SPEC): Likewise.
2752
2753	* m88k/m88k.h (FUNCTION_ARG_BOUNDARY): Use GET_MODE_BITSIZE.
2754
2755Wed May 24 15:44:04 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
2756
2757	* fold-const.c (fold): Make sure that a folded TRUTH_NOT_EXPR
2758        retains the same type.
2759
2760	* c-common.c (truthvalue_conversion): Also accept TRUTH_NOT_EXPR.
2761
2762Wed May 24 15:41:51 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2763
2764	* cplus-dem.c (strstr, strncmp, strlen): Remove declarations.
2765
2766	* tree.c (type_list_equal, simple_cst_list_equal, index_type_equal):
2767	Check for simple_cst_equal return value of -1.
2768
2769Wed May 24 10:05:24 1995  Michael Meissner  <meissner@cygnus.com>
2770
2771	* libgcc1-test.c (start, _start): Provide declarations, so that
2772	the GNU linker doesn't give a warning message about defaulting the
2773	start address.
2774
2775	* rs6000/sysv4.h (STRIP_NAME_ENCODING): Redefine back to the
2776	original defination, rather than the defination used in rs6000.h.
2777	(ASM_OUTPUT_SOURCE_LINE): Use STRIP_NAME_ENCODING.
2778	* rs6000.h (STRIP_NAME_ENCODING): Skip leading '*'.
2779
2780	* rs6000.h (MASK_STRING_SET, TARGET_STRING_SET): Add target
2781	flags bit for whether -mstring was actually used.
2782	(TARGET_SWITCHES): Add MASK_STRING to all power targets.  Set
2783	MASK_STRING_SET for -mstring and -mno-string.
2784	(TARGET_DEFAULT): Add MASK_STRING.
2785
2786	* rs6000.c (rs6000_override_options): Add MASK_STRING to
2787	all power targets.  Make an explicit -mstring/-mno-string override
2788	the -mcpu=processor default.
2789
2790	* rs6000/eabile.h (CPP_SPEC): Copy from sysvle.h to provide the
2791	appropriate little endian defaults.
2792
2793	* rs6000/sysv4.h (ASM_OUTPUT_SOURCE_LINE): Use assemble_name to
2794	output the canonical name.
2795
2796Wed May 24 01:21:15 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
2797
2798	* rs6000.h (STRIP_NAME_ENCODING): Define.
2799	(RS6000_OUTPUT_BASENAME): Use it.
2800
2801Tue May 23 19:54:21 1995  Doug Evans  <dje@cygnus.com>
2802
2803	* gcc.c (link_command_spec): Move ENDFILE_SPEC from -nostdlib
2804	to -nostartfiles.
2805
2806Tue May 23 17:01:50 1995  Jim Wilson  <wilson@cygnus.com>
2807
2808	* alpha.md (negsi2-2): Change output pattern to #.
2809
2810	* mips.c (embedded_pic_offset): Output RTL to initialize
2811	embedded_pic_fnaddr_rtx.
2812	(mips_finalize_pic): Delete.
2813	* mips.h (mips_finalize_pic): Delete declaration.
2814	(FINALIZE_PIC): Delete.
2815	(INIT_EXPANDERS): Clear embedded_pic_fnaddr_rtx.
2816	* mips.md (get_fnaddr): Add = to output contraint.
2817
2818	* sh.c (shift_amounts): Correct entry for shifts by 29.
2819	* sh.md (sett): New pattern.
2820	(movsi_i): Change source constraint for move to T reg to be 'z'.
2821
2822	* mips/ecoff.h (STARTFILE_SPEC): Define to null string.
2823	* mips/elfl.h, mips/elfl64.h: Correct typo in comment.
2824
2825	* mips/elflorion.h, mips/elforion.h (MIPS_CPU_DEFAULT): Delete.
2826	* mips.c (override_options): Delete #ifdef MIPS_CPU_DEFAULT code.
2827	Add #ifdef MIPS_CPU_DEFAULT_STRING code before the first
2828	mips_cpu_string test.
2829
2830Tue May 23 07:22:36 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2831
2832	* romp.c (hash_rtx): Avoid warning on int-to-pointer conversion.
2833	(output_fpops): Cast args to bcopy to char *.
2834
2835	* cpplib.c (initialize_builtins): Add missing parm to timestamp call.
2836
2837	* Makefile.in (install-libobjc): Don't depend on libobjc.a.
2838
2839	* c-parse.in: Objc shift/reduce conflicts now 48.
2840	(parm): Use setspecs/restore here.
2841	(parmlist_or_identifiers): Not here.
2842
2843Mon May 22 19:30:30 1995  Doug Evans  <dje@cygnus.com>
2844
2845	* h8300.md (movsf_h8300h): Add missing post-inc case to constraints.
2846
2847Mon May 22 14:38:36 1995  Michael Meissner  <meissner@cygnus.com>
2848
2849	* rs6000.c (rs6000_override_options): Do SUBTARGET_OVERRIDE_OPTIONS
2850	here.
2851	* rs6000.h (OVERRIDE_OPTIONS): Not here.
2852
2853	* rs6000.c (expand_block_move): Handle moves without string
2854	instructions by generating a series of loads and stores.
2855	(output_prolog): Support -mno-toc on V.4 and eabi systems.
2856
2857	* rs6000/sysv4.h (TARGET_SWITCHES): Add -mtoc and -mno-toc.
2858	(SUBTARGET_OVERRIDE_OPTIONS): Add some warnings for incompatible
2859	switches.
2860	(TOC_SECTION_FUNCTION): Make -mno-toc like -mrelocatable in that
2861	we don't put the minimal toc pointer in the global toc section.
2862	(LINK_SPEC): Use -oformat to set link output format, not -m.
2863
2864	* rs6000/t-eabigas (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Build
2865	libgcc.a variants with -mno-toc support.
2866	* rs6000/t-ppcgas (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Ditto.
2867
2868Mon May 22 07:10:52 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2869
2870	* cplus-dem.c (mystrstr): Replacement for strstr.
2871
2872	* configure: Split up long sed command.
2873	* Makefile.in (SYMLINK): Deleted; unused.
2874	(oldobjext): Deleted; no longer used.
2875	(FLAGS_TO_PASS): Include objext and exeext.
2876	(STAGESTUFF, protoize.o, unprotoize.o): Use $(objext), not .o.
2877	(test_protoize_simple, compare{,3}, gnucompare{,3}): Likewise.
2878	(STAGESTUFF, specs, gcc-cross, collect2): Add missing $(exeext).
2879	(libgcc1.null, libgcc[12].a, stage[1-4]): Likewise.
2880	(xgcc, cc1, cc1obj, enquire): Use $@ instead of filename for -o value.
2881	(collect2, mips-tfile, mips-tdump, gen*): Likewise.
2882	(bi-arity, bi-opcode, bi-opname, cccp, cppmain): Likewise.
2883	(protoize, unprotoize, gen-protos, fix-header): Likewise.
2884	(crtbegin.o, crtend.o): Don't use -o; move output to proper
2885	filename (using objext) instead.
2886	(BI_ALL, BC_ALL, bytecode): Deleted; unused.
2887	(bi-*.o, cexp.o, stamp-{proto,fixinc}): Remove unneeded $(srcdir).
2888	(getopt{,1}.o, SYSCALLS.c.X): Likewise.
2889	(install-driver): New target.
2890	(install-normal): Depend on it.
2891	(install-common): Don't depend on xgcc.
2892	(maketest): Deleted; no longer used.
2893	(stage[1-4]): Use name collect-ld, not real-ld.
2894	(risky-stage[1-4]): Use stage[1-4] as dependencies; don't copy.
2895	* alpha/config-nt.bat, i386/config-nt.bat: Make {,h,t}config.h
2896	and tm.h by writing a single #include line.
2897	Update way specs.h and options.h are written.
2898	* alpha/config-nt.sed, i386/config-nt.sed: Set new variables
2899	into Makefile.
2900	Build winnt.obj.
2901	Edit CCCP definition.
2902	* alpha/x-winnt, i386/x-winnt (oldobjext): Deleted.
2903	Add rules for .c.obj, .adb.obj, and .ads.obj.
2904	(LIB2FUNCS_EXTRA, spawnv.o): New rules.
2905	* i386/x-winnt (objext): Now .obj, not .o.
2906
2907	* gcc.c (HAVE_OBJECT_SUFFIX): New macro.
2908	(process_command): Convert x.o to x.foo for OBJECT_SUFFIX of ".foo".
2909	(do_spec_1): Avoid shadow variable "i" and always use for loop var.
2910
2911	* c-decl.c (finish_decl_top_level): Removed; no longer used.
2912	* objc-act.c: Numerous formatting changes.
2913	(NULLT): Deleted; all uses changed to NULL_TREE.
2914	(get_{static,object}_reference, objc_add_static_instance):
2915	Use push_obstacks instead of saving obstacks manually.
2916	(build_{selector,class}_reference_decl): Likewise.
2917	(build_objc_string_decl, build_protocol_reference): Likewise.
2918	(comp_{method,proto}_with_proto): Likewise.
2919	(create_builtin_decl, synth_module_prologue): Set DECL_ARTIFICIAL
2920	for internal objects.
2921	(build_{selector,class}_reference_decl, add_objc_decls): Likewise.
2922	(generate_objc_symtab_decl, build_module_descriptor): Likewise.
2923	(build_protocol_reference): Likewise.
2924	(build_objc_string_decl, synch_forward_declarations): Likewise.
2925	Delete call to end_temporary_allocation.
2926	(generate_static_references, generate_strings): Likewise.
2927	(build_selector_translation_table, generate_category): Likewise.
2928	(generate_{ivars,protocol}_list, build_protocol_reference): Likewise.
2929	(build_objc_string_object): If next_runtime, put everything in
2930	permanent obstack.
2931	(objc_add_static_instance): Use build_decl instead of start_decl
2932	and finish_decl_top_level.
2933	(build_{class_reference,objc_string}_decl): Clear DECL_CONTEXT.
2934	(start_class): Exit with FATAL_EXIT_CODE, not 1.
2935	(add_objc_decls): Don't set DECL_IN_SYSTEM_HEADER.
2936
2937	* tree.c (valid_machine_attribute): Handle attribute on
2938	pointer-to-function types.
2939
2940Sun May 21 17:16:37 1995  J. T. Conklin <jtc@cygnus.com>
2941
2942	* mips/netbsd.h (HAVE_STRERROR): Remove.
2943	* mips/xm-netbsd.h: New file.
2944	* mips/t-mips-netbsd: Deleted.
2945	* configure (mips-dec-netbsd): Use xm-netbsd.h and t-libc-ok.
2946
2947Sun May 21 17:16:37 1995  Arne H. Juul  (arnej@pvv.unit.no)
2948
2949	* mips/netbsd.h: Use __start as entry point. Ifdef some
2950	paths on CROSS_COMPILE.
2951
2952Sun May 21 08:39:26 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2953
2954	* c-parse.in (datadef, fndef, ivar_decl, mydecls):
2955	Restore declspec_stack since setspecs is used.
2956	(parmlist_or_identifiers): Use setspecs before parsing parms
2957	and restore after parsing parms.
2958
2959Sun May 21 01:04:52 1995  Jeffrey A. Law  <law@snake.cs.utah.edu>
2960
2961	* pa.c (hppa_encode_label): New variable "permanent" to
2962	where/how memory is allocated for the new label.  All
2963	callers changed.
2964
2965Sat May 20 16:53:30 1995  Mike Meissner  <meissner@cygnus.com>
2966
2967	* rs6000.md (insv, extz): Fail if the structure is QI or HI reg to
2968	avoid paradoxical subreg's being created in RTL phase, which uses
2969	SImode to load from memory if  structure is later moved to stack.
2970
2971Sat May 20 06:44:59 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
2972
2973	* m68k.md (udivmodhi4): Output "divu" instead of "divs".
2974
2975Sat May 20 06:11:32 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
2976
2977	* reload.c (push_reload): Don't reload inside a SUBREG
2978	when SUBREG_WORD is nonzero.
2979
2980	* c-decl.c (shadow_tag_warned): Don't warn about useless keyword
2981	if in system header file.
2982
2983	* tree.c (simple_cst_equal): Don't look at language-specific 
2984	nodes since we don't know what's in them.
2985
2986	* cpperror.c: #include config.h before any other .h file.
2987	* collect2.c: Likewise.
2988
2989	* i386/config-nt.bat: Add missing ^M on two lines.
2990	Add case for Fortran; fix typo in Ada case.
2991	* alpha/config-nt.bat: Add case for Fortran; fix typo in Ada case.
2992
2993	* m68k/t-next (LIBGCC1, CROSS_LIBGCC1): Make not, not "libgcc1.null".
2994	(OTHER_FIXINCLUDES_DIRS, LIMITS_H_TEST): Delete from here.
2995	* m68k/x-next (OTHER_FIXINCLUDES_DIR, LIMITS_H_TEST): Move to here.
2996
2997Fri May 19 19:30:20 1995  Stan Cox  (gcc@dg-rtp.dg.com)
2998
2999      * crtstuff.c: Added reference to INIT_SECTION_PREAMBLE for systems that
3000      do something which must be undone prior to __do_global_ctors.
3001
3002Fri May 19 19:27:08 1995  Alan Modra  <alan@SPRI.Levels.UniSA.Edu.Au>
3003
3004	* i386/linux-aout.h (CPP_SPEC): Add defines for -fPIC.
3005	* i386/linux-oldld.h (CPP_SPEC): Likewise.
3006
3007Fri May 19 17:46:28 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
3008
3009	* collect2.c (strstr): Deleted.
3010	* cplus-dem.c (strstr): Define ifndef POSIX.
3011
3012Fri May 19 11:16:51 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3013
3014	* cpplib.c (collect_expansion):  Don't escape '@' inside string.
3015
3016Fri May 19 06:59:21 1995  Pat Rankin  (rankin@eql.caltech.edu)
3017
3018	* vmsconfig.com (process_objc_lib, configure_makefile): New routines.
3019	(bc_all.list, ./vax.md, objc-objs.opt, objc-hdrs.list): New files
3020	created at config time.
3021	(bc_all.opt, ./md.): No longer created.
3022	* make-cc1.com: Handle revised filenames from vmsconfig.com;
3023	(DO_OBJCLIB): New variable, plus code to compile objc/*.{c,m}.
3024
3025Wed May 17 16:15:31 1995  Torbjorn Granlund  <tege@cygnus.com>
3026
3027	* i960.c (i960_output_ldconst): New code for XFmode.
3028	Also, move SFmode code to immediately after DFmode code.
3029	(S_MODES, D_MODES): Handle XFmode.
3030	(XF_MODES): Was TF_MODES, handle XFmode instead of TFmode.
3031	(hard_regno_mode_ok): Replace TFmode with XFmode.
3032	(i960_output_long_double): New function.
3033
3034	* i960.h (DATA_ALIGNMENT): Define.
3035	(ROUND_TYPE_ALIGN): Align XFmode scalars at 128 bit boundaries.
3036	(ROUND_TYPE_SIZE): Round up the size of XFmode objects to 128 bits.
3037	(CONST_DOUBLE_OK_FOR_LETTER_P): Use CONST0_RTX and CONST1_RTX
3038	so that all FP modes are recognized.
3039	(ASM_OUTPUT_LONG_DOUBLE): Define.
3040
3041	* i960.md: Change all TFmode patterns to have XFmode.
3042	(movxf recognizer, frame version): Use movt, ldt, and stt.
3043	(movxf recognizer, non-frame version): Delete.
3044	(extenddfxf2): Delete * before f constraint.
3045	(extendsfxf2): Likewise.
3046
3047Wed May 17 17:53:35 1995  Jim Wilson  <wilson@mole.gnu.ai.mit.edu>
3048
3049	* unroll.c (unroll_loop): Increment copy_start_luid if copy_start
3050	is loop_start.
3051
3052Wed May 17 17:44:57 1995  Lee Iverson  <leei@Canada.AI.SRI.COM>
3053
3054	* fold-const.c (invert_truthvalue, case CLEANUP_POINT_EXPR): New case.
3055
3056Tue May 16 18:51:16 1995  Michael Meissner  <meissner@cygnus.com>
3057
3058	* rs6000/rs6000.h (TARGET_SWITCHES): Add -mstring to enable string
3059	instructions, and -mno-string to disable them.
3060	(MOVE_MAX): Don't test TARGET_MULTIPLE anymore.
3061	(MAX_MOVE_MAX): Set to 8, not 16.
3062	(expand_block_move): Add declaration.
3063
3064	* rs6000/rs6000.c (expand_block_move): New function to expand
3065	block moves when -mstring is used.
3066
3067	* rs6000/rs6000.md (movti): Use TARGET_STRING, not TARGET_MULTIPLE.
3068	(load_multiple, store_multiple): Ditto.
3069	(string insns): Add 8, 6, 4, 2, and 1 register variants for using
3070	the native string instructions if -mstring.
3071
3072	* rs6000/sysv4.h (CPP_SPEC): If little endian, define
3073	_LITTLE_ENDIAN and set littleendian assertion.  If big endian,
3074	define _BIG_ENDIAN and set bigendian assertion.
3075	* rs6000/sysv4le.h (CPP_SPEC): Copy from sysv4.h, and change
3076	default to little endian.
3077
3078	* rs6000/rs6000.c (override_options): Check for -mmultiple and
3079	-mstring on little endian systems here.
3080	* rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Don't do the check
3081	here.
3082
3083Tue May 16 18:36:41 1995  Douglas Rupp  (drupp@cs.washington.edu)
3084
3085	* alpha.c: Changed WINNT to _WIN32.
3086	* alpha/config-nt.bat, i386/config-nt.bat: Added commands to
3087	generate specs.h and options.h.
3088	* i386/config-nt.sed: Changed link32 to link.
3089	* winnt/ld.c (main): Removed call to free.
3090	* configure.bat: Added line to echo usage on invalid input.
3091	* gcc.c (fix_argv): Removed call to free.
3092	* gcc.c, getpwd.c, protoize.c, sdbout.c: Changed WINNT to _WIN32.
3093	* toplev.c: Likewise.
3094
3095Tue May 16 18:04:47 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
3096
3097	* toplev.c (pfatal_with_name, fatal_io_error, vfatal):
3098	Use FATAL_EXIT_CODE instead of magic number.
3099	* cccp.c, cpplib.c, cpplib.h: Use FATAL_EXIT_CODE instead
3100	of FAILURE_EXIT_CODE.
3101	* fix-header.c, gen-protos.c: Likewise.
3102	* cpperror.c, cppmain.c: Likewise.
3103	Include config.h #ifndef EMACS.
3104	* xm-alpha.h, xm-rs6000.h, xm-vms.h (FAILURE_EXIT_CODE): Remove.
3105
3106Tue May 16 17:46:57 1995  Adam Fedor  <fedor@colorado.edu>
3107
3108	* objc/archive.c (__objc_write_class): Write class version.
3109	(__objc_write_selector, objc_{write,read}_selector): Handle null
3110	selector.
3111
3112        * objc/sarray.h (struct sarray): Make capacity size_t.
3113        * objc/sarray.c (sarray_realloc): Make array index variables size_t.
3114
3115Tue May 16 06:59:08 1995  Paul Eggert  <eggert@twinsun.com>
3116
3117	* dsp16xx.c (print_operand_address): Fix misspellings in messages.
3118	* i370/mvs.h (FUNCTION_PROFILER): Likewise.
3119	* mips-tdump.c (type_to_string): Likewise.
3120	* print-tree.c (print_node): Likewise.
3121
3122	* protoize.c (edit_fn_definition): Fix mispelled local `have_flotsam'.
3123
3124	* objc/sendmsg.c (__objc_init_install_dtable): Fix misspelling
3125	in name of local label `already_initialized'.
3126
3127	* winnt/winnt.h (STDC_VALUE): Was misspelled.
3128
3129	* m68k/ccur-GAS.h (FUNCTION_BOUNDARY): Was misspelled.
3130
3131	* 1750a.h (DEFAULT_PCC_STRUCT_RETURN): Was misspelled.
3132
3133Mon May 15 23:41:25 1995  Jeffrey A. Law  <law@snake.cs.utah.edu>
3134
3135	* pa.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Make sure to encode section
3136	info for all libcalls.
3137
3138Mon May 15 20:58:00 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
3139
3140	* collect2.c (strstr): Define ifndef POSIX.
3141
3142	* defaults.h (SUPPORTS_WEAK): Provide default.
3143	* aoutos.h, sparc/sunos4.h: Don't support weak symbols.
3144	* netbsd.h, svr4.h, i386/freebsd.h, i386/osfrose.h,
3145        m88k/m88k.h: Define ASM_WEAKEN_LABEL instead of WEAK_ASM_OP.
3146	* c-pragma.h: Check ASM_WEAKEN_LABEL instead of WEAK_ASM_OP.
3147        HANDLE_PRAGMA_WEAK is never defined in a tm.h file.
3148	* c-decl.c (duplicate_decls): Propagate DECL_WEAK.
3149	* tree.h (DECL_WEAK): New macro.
3150	(tree_decl): Add weak_flag.
3151	* varasm.c (assemble_start_function): Declare the symbol weak if
3152	appropriate.
3153	(assemble_variable): Ditto.
3154	(assemble_alias): Ditto.  Mark the decl as written.
3155	(declare_weak): Check for weak declaration after definition.
3156	Set DECL_WEAK.  
3157	(weak_finish): Use ASM_WEAKEN_LABEL.
3158	* libgcc2.c: The C++ free-store management functions are weak
3159        aliases on targets that always support them.
3160
3161Mon May 15 19:01:43 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
3162
3163	* configure (out_object_file): New variable; put value in Makefile.
3164	* Makefile.in (out_object_file): Use in place of aux-output.o.
3165
3166	* fold-const.c (const_binop): Don't pass OVERFLOW to force_fit_type
3167	if type is unsigned.
3168
3169Mon May 15 18:48:26 1995  Paul Eggert <eggert@twinsun.com>
3170
3171        * install.sh (transformbasename): Fix misspelling.
3172
3173	* tahoe.h (CHECK_FLOAT_VALUE): Fix misspelling of OVERFLOW parameter.
3174
3175	* i386.h (VALID_MACHINE_{DECL,TYPE_ATTRIBUTE): Fix typo.
3176
3177	* fx80.h (CHECK_FLOAT_VALUE): Fix misspelled use of parameter.
3178
3179	* a29k.c (spec_reg_operand): Fix misspelling of `default:'.
3180
3181Mon May 15 18:36:41 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
3182
3183	* m68k.md (b{eq,ne,ge,lt}0_di): Fixed for non-MOTOROLA syntax.
3184	* m68k/xm-mot3300.h (alloca): Extern decl added for non-GNU compiler.
3185
3186Mon May 15 13:14:29 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3187
3188	* cppexp.c (cpp_reader):  Test for '#' (start of assertion) *after*
3189	skipping hspace, not before.
3190
3191Mon May 15 08:13:54 1995  Pat Rankin  (rankin@eql.caltech.edu)
3192
3193	* vmsconfig.com: Construct options.h and specs.h to #include
3194	all "*/lang-{options|specs}.h" files found.
3195
3196Sun May 14 21:32:49 1995  Doug Evans  <dje@cygnus.com>
3197
3198	* alpha/alpha.md (movsicc, case NE): Don't generate unrecognizable
3199	insn.
3200	(movdicc, case NE): Likewise.
3201
3202Sun May 14 15:44:54 1995  Jim Wilson  <wilson@mole.gnu.ai.mit.edu>
3203
3204	* unroll.c (unroll_loop): Make local_regno have size
3205	max_reg_before_loop.  Don't do local register optimization if
3206	copy_end has no INSN_LUID.
3207
3208Sun May 14 10:38:23 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
3209
3210	* objc-act.c (start_method_def): Mark _self as possibly unused.
3211
3212	* configure: Create specs.h and options.h from */lang-specs.h
3213	and */lang-options.h.
3214	Set lang_specs_files and lang_options_file variables in Makefile.
3215	* Makefile.in (lang_{specs,options}_files): New variables.
3216	(gcc.o): Depends on $(lang_specs_files).
3217	(toplev.o): Depends on $(lang_options_file); merge two dep lists.
3218	(distclean): Remove spes.h and options.
3219	* gcc.c (default_compilers): Remove entries for Ada, C++, Chill,
3220	and Fortran; #include specs.h instead.
3221	* toplev.c (lang_options): Remove entries for Ada, C++, and Fortran;
3222	include options.h instead.
3223
3224Sat May 13 23:11:21 1995  DJ Delorie  <dj@delorie.com>
3225
3226	* configure (i[345]86-go32-msdos, i[345]86-*-go32): New targets.
3227
3228Sat May 13 10:58:38 1995  Jim Wilson  <wilson@cygnus.com>
3229
3230	* loop.c (record_giv): When computing replaceable, use
3231	back_branch_in_range_p instead of looking for branches to named
3232	labels.
3233	* loop.h (back_branch_in_range_p): Declare.
3234	* unroll.c (back_branch_in_range_p): No longer static.
3235
3236Sat May 13 06:47:11 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
3237
3238	* combine.c (simplify_shift_count, case LSHIFTRT): Don't merge
3239	shifts of different modes if first is any right shift.
3240
3241Sat May 13 05:39:09 1995  Richard Earnshaw (rearnsha@armltd.co.uk)
3242
3243	* configure (arm-semi-aout): New configuration.
3244	* config.sub: Add support for semi-hosted ARM.
3245	* arm/t-semi, arm/semi.h: New files.
3246
3247Fri May 12 21:51:22 1995  Doug Evans  <dje@cygnus.com>
3248
3249	* flow.c (find_basic_blocks): Only perform n_basic_blocks sanity
3250	check on first pass, and on second pass ensure it has the correct
3251	value.
3252
3253Fri May 12 19:23:11 1995  Jim Wilson  <wilson@cygnus.com>
3254
3255	* c-typeck.c (build_binary_op): Warn when ~unsigned is compared
3256	against unsigned, and type promotions result in an unexpected
3257	answer.
3258
3259Fri May 12 19:10:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3260
3261	* configure (*-*-gnu*): Always use ELF; set tm_file=${cpu_type}/gnu.h.
3262	* config/i386/gnu.h: Contents replaced with old i386/gnuelf.h.
3263	* config/i386/gnuelf.h: File removed.
3264
3265Fri May 12 17:29:57 1995  Ken Raeburn  (raeburn@cygnus.com)
3266
3267	* m68k/lb1sf68.asm (__IMMEDIATE_PREFIX__): Default to #.
3268	(IMM): New macro.
3269	(all code): Use IMM macro instead of hardcoding # for immediate
3270	operands.
3271
3272Fri May 12 16:52:10 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
3273
3274	* m68k.c (output_scc_di): New function.
3275	(extend_operator) : Allow DImode target.
3276	* m68k.h (HARD_REGNO_MODE_OK): Don't allow d7/a0 as DImode reg pair.
3277	* m68k.md (tstdi, cmpdi, addsi_lshrsi_31, ashldi_extsi): New patterns.
3278	(extendqidi2, extendhidi2, extendsidi2): Allow "general_operand"
3279	instead of "register_operand" 0.
3280	(adddid_sexthishl32, subdid_sexthishl32, subdi_dishl32): Likewise.
3281	(adddi_dilshr32): Operand 0 constraint changed from "ro" to "do";
3282	Code generation fixed.
3283	(adddi_mem, subdi_mem): Fixed for "<" and ">" operand 0.
3284	(adddi3, subdi3): Operand 2 constraint changed from "ao" to "*ao"
3285	(ashldi_sexthi, ashrdi_const32): Allow only "register_operand"
3286	instead of "general_operand" 0.
3287	(ash[lr]di_const, ash[lr]di3): Allow also 8 and 16 as shift count.
3288	(subreg1ashrdi_const32): Pattern deleted.
3289	(subreghi1ashrdi_const32, subregsi1ashrdi_const32): New pattern.
3290	(lshrsi_31): New implementation.
3291	(scc0_di, scc_di, beq0_di, bne0_di, bge0_di, blt0_di): New patterns.
3292	 
3293Fri May 12 16:50:49 1995  Jeffrey A. Law  <law@mole.gnu.ai.mit.edu>
3294
3295	* pa.md (bb patterns): Fix bugs in length computation exposed by
3296	recent branch shortening and genattrtab changes.
3297
3298Fri May 12 16:22:27 1995  Ken Raeburn  <raeburn@cygnus.com>
3299
3300	* cccp.c (enum node_type): Add T_IMMEDIATE_PREFIX_TYPE.
3301	(special_symbol): Handle it; emit value of IMMEDIATE_PREFIX.
3302	(IMMEDIATE_PREFIX): Default to empty string.
3303	(initialize_builtins): Install __IMMEDIATE_PREFIX__ builtin,
3304	parallel to __REGISTER_PREFIX__.
3305
3306Fri May 12 14:40:03 1995  Pat Rankin  (rankin@eql.caltech.edu)
3307
3308	* cccp.c: #if VMS, don't define `stat' macro to be VMS_stat.
3309	Compare enums explicitly to 0 to work around VAX C bug.
3310	(do_include): Cast alloca's value.
3311
3312	* make-cc1.com (bc_loop): Process comma-separated list rather
3313	than space-separated one; restore .h suffix stripped by vmsconfig;
3314	(loop1): More robust handling of directory prefix on file names.
3315	* vmsconfig.com (TPU makefile.in): Reorganize and reformat code.
3316	Make generated .opt files have more consistent format (all comma
3317	separated, excess whitespace eliminated);
3318	(additional_compiler): New routine.
3319	(process_makefile): Use it to handle cc1plus via cp/Make-lang.in.
3320
3321Fri May 12 13:35:07 1995  Doug Evans  <dje@cygnus.com>
3322
3323	* arm.h: Replace ARM_REG_PREFIX with REGISTER_PREFIX.
3324	Replace ARM_COMMENT_CHAR with ASM_COMMENT_START.
3325	(REGISTER_PREFIX): Define.
3326	(USER_LABEL_PREFIX, LOCAL_LABEL_PREFIX): Define.
3327	(SECONDARY_OUTPUT_RELOAD_CLASS): Handle DFmodes only if
3328	TARGET_HARD_FLOAT.
3329	(PREDICATE_CODES): Add soft_df_operand.
3330	* arm.c: Replace ARM_REG_PREFIX with REGISTER_PREFIX.
3331	Replace ARM_COMMENT_CHAR with ASM_COMMENT_START.
3332	(arm_asm_output_label): Use USER_LABEL_PREFIX.
3333	(soft_df_operand): New function.
3334	* arm.md (movsicc): New pattern.
3335	(movsfcc, movdfcc, *movsicc_insn, *movsfcc_hard_insn): Likewise.
3336	(*movsfcc_soft_insn, *movdfcc_insn): Likewise.
3337	(*movdf_soft_insn): Rewrite.
3338	(movsi matcher): Fix typo in type attribute.
3339
3340Fri May 12 10:25:40 1995  Michael Meissner  (meissner@cygnus.com)
3341
3342	* i386.h (TARGET_RTD): Use MASK_RTD, not MASK_REGPARM.
3343	(TARGET_SWITCHES): Add -m{,no-}align-double switch.
3344	(TARGET_OPTIONS): Add -mregparm= switch to set number of registers
3345	to use for passing arguments.  Add -malign-loops= switch to set
3346	the alignment for loops.  Add -malign-jumps= switch to set the
3347	alignment for code that is jumped to.  Add -malign-functions=
3348	switch to set the initial alignment of functions.
3349	(TARGET_REGPARM): Delete, in favor of -mregparm=
3350	(TARGET_SWITCHES): Delete -mregparm, add -mdebug-arg switches.
3351	(RETURN_POPS_ARGS): Call i386_return_pops_args to do the real work.
3352	(VALID_MACHINE_DECL_ATTRIBUTE): Define as function call.
3353	(VALID_MACHINE_TYPE_ATTRIBUTE): Define as function call.
3354	(COMP_TYPE_ATTRIBUTES): Define as function call.
3355	(REGPARM_MAX): Maximum number of regs to use for passing arguments.
3356	(CUMULATIVE_ARGS): Make this a structure, not an int.
3357	(INIT_CUMULATIVE_ARGS, FUNCTION_ARG{,_ADVANCE}): Call function.
3358	(FUNCTION_ARG_PARTIAL_NREGS): Likewise.
3359	(MAX_CODE_ALIGN): Maximum value to align loops/jumps to.
3360	(BIGGEST_ALIGNMENT): Return 64 if -malign-double, 32 otherwise.
3361	(ASM_OUTPUT_ALIGN_CODE): Use value of -malign-jumps= switch.
3362	(ASM_OUTPUT_LOOP_ALIGN): Use value of -malign-loops= switch.
3363	(toplevel): Declare all new functions and external variables added
3364	in i386.c.
3365
3366	* i386.c (i386_regparm_string, i386_regparm): New variables
3367	for -mregparm= switch to set the number of registers to use for
3368	passing arguments.
3369	(i386_align_loops_string, i386_align_loops): New variables for
3370	-malign-loops= switch to set alignment to use for loops.
3371	(i386_align_jumps_string, i386_align_jumps): New variables for
3372	-malign-jumps= switch to set alignment to use for labels that are
3373	jumped to.
3374	(override_options): Support new switches.
3375	(i386_valid_decl_attribute_p): New function to validate decl
3376	specific attributes.  Presently returns 0.
3377	(i386_valid_type_attribute_p):  New function to validate type
3378	specific attributes.  Recognize "stdcall", which says function
3379	with fixed numbers of arguments is responsible for popping stack,
3380	"cdecl", which says to use the normal C calling sequence, even if
3381	-mrtd is used, and "regparm", which specifies the number of
3382	registers to use for passing arguments.
3383	(i386_comp_type_attributes): New function, to validate whether
3384	attributes are compatible.
3385	(i386_return_pops_args): New function, to return whether or not
3386	the function pops its argument list or not, taking into account
3387	-mrtd, and the stdcall/cdecl attributes.
3388	(init_cumulative_args): Rewrite as a function, taking variable
3389	argument functions, and regparm support into account.
3390	(function_arg{,_advance,_partial_nreg}): Likewise.
3391	(print_operand): Support %J, to print appropriate jump insn.
3392
3393	* i386.md (decrement_and_branch_until_zero): Define pattern,
3394	so that loops that count down to zero, don't have an unneeded
3395	compare after the decrement.  Add a general insn recognizer for
3396	add to a value and compare against zero.
3397
3398	* i386/go32.h, i386/winnt.h (VALID_MACHINE_DECL_ATTRIBUTE):
3399	Delete, code folded into the mainline.
3400	(RETURN_POPS_ARGS): Likewise.
3401
3402	* i386/winnt.h (ENCODE_SECTION_INFO): The stdcall attribute is now
3403	stored on the type field, rather than the decl.
3404
3405	* i386/gas.h (ASM_OUTPUT_ALIGN_CODE, ASM_OUTPUT_LOOP_ALIGN): Use
3406	i386_align_{loops,jumps} variables to do alignment.
3407	* i386/osfrose.h, i386/svr3dbx.h: Likewise.
3408
3409Fri May 12 12:48:19 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
3410
3411	* stor-layout.c (layout_type, case ARRAY_TYPE): Compute length using
3412	MAX of length and zero if sizetype signed and neither bound constant.
3413
3414	* i386/gnuelf.h, i386/linux-oldld.h, i386/lynx-ng.h, i386/v3gas.h:
3415	Use <...> in #include instead of "...".
3416	* m68k/lynx-ng.h, sparc/lynx-ng.h: Likewise.
3417
3418	* c-parse.in (myparm): Handle attributes.
3419	* objc-act.c (unused_list): New variable.
3420	(build_tmp_function_decl): Call push_parm_decl with new format.
3421	(start_class): Initialize unused_list.
3422	(start_method_def): Call push_parm_decl with new format and
3423	mark _cmp as possibly unused.
3424
3425	* combine.c (simplify_shift_const): Don't change SHIFT_MODE
3426	for LSHIFTRT either.
3427
3428	* unroll.c (unroll_loop): Don't move reg if used in copy_end and
3429	that is a JUMP_INSN.
3430
3431Fri May 12 12:31:37 1995  Doug Evans  <dje@cygnus.com>
3432
3433	* arm/lib1funcs.asm: New file.
3434
3435Fri May 12 11:52:03 1995  Kung Hsu  <kung@cygnus.com>
3436
3437	* configure (a29k-*-vxworks*): New target.
3438	* config.sub (vxworks29k): New alias.
3439	* a29k/t-vx29k: New file.
3440	* a29k/vx29k.h: New file.
3441
3442Fri May 12 11:17:28 1995  Jim Wilson  <wilson@mole.gnu.ai.mit.edu>
3443
3444	* loop.c (check_dbra_loop): When reversing loop when
3445	no_use_except_counting is false, there must be only one biv.
3446
3447Fri May 12 07:10:00 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
3448
3449	* unroll.c (unroll_loop): Only use local_regno for pseudos.
3450
3451	* genattrtab.c (write_test_expr, case MATCH_DUP): Use operands[N]
3452	instead of JUMP_LABEL (which may not be set).
3453	(walk_attr_value, case MATCH_DUP): Set must_extract.
3454
3455	* c-parse.in: Adjust number of shift/reduce conflicts.
3456	(parm): Support attributes.
3457	* c-decl.c (push_parm_decl): Pass any attributes to decl_attributes.
3458
3459Fri May 12 00:36:26 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3460
3461	* cpplib.c (skip_quoted_string):  Removed - no longer needed.
3462	(skip_if_group):  Use cpp_get_token instead of skip_quoted_string.
3463
3464	* cpplib.h (struct cpp_reader):  Remove start_line field.
3465	Add multiline_string_line field.
3466
3467	* cpplib.c (cpp_error_with_line, cpp_warning_with_line,
3468	cpp_pedwarn_with_line):  Take extra column number parameter.
3469	(macroexpand, cpp_get_token):  Fix reporting of unterminated strings.
3470	(line_for_error):  Removed - no longer needed.
3471
3472Fri May 12 02:21:34 1995  Jim Wilson  <wilson@cygnus.com>
3473
3474	* mips/svr4-t.h (MD_STARTFILE_PREFIX, MD_EXEC_PREFIX,
3475	STARTFILE_SPEC, LINK_SPEC): Define.
3476	* configure (mips-tandem-sysv4): Use t-mips not t-svr4.
3477
3478Thu May 11 19:18:54 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3479
3480	* cpplib.c (line_for_error):  Make it work; add extra parameter.
3481	(skip_quoted_string, cpp_get_token):  Update calls to line_for_error.
3482	(macroexpand):  Remember initial line so we can report it if the
3483	call is unterminated.  Also, simplify error logic slightly.	 
3484	(do_include):  Cast alloca return value, to avoid pcc warning.
3485
3486	* cppexp.c (parse_number):  Cleanup some Cygnus crud for MPW.
3487
3488Thu May 11 21:35:23 1995  Torbjorn Granlund  <tege@cygnus.com>
3489
3490	From Moshier:
3491	* i960.c (i960_output_ldconst): Let split_double handle DImode.
3492	(i960_print_operand): Use REAL_VALUE_TO_DECIMAL for decimal strings.
3493	(i960_output_double, i960_output_float):  Likewise; also change arg
3494	VALUE from `double' to `REAL_VALUE_TYPE'.
3495
3496Thu May 11 21:09:25 1995  Per Bothner  (bothner@wombat.gnu.ai.mit.edu)
3497
3498	* cpperror.c (cpp_print_containing_files):  Remove some
3499	Cygnus-local stuff.
3500
3501Thu May 11 21:06:47 1995  Doug Evans  <dje@canuck.cygnus.com>
3502
3503	* gcc.c (link_command_spec): Make -nostdlib no longer imply
3504	-nostartfiles.
3505
3506Thu May 11 18:48:57 1995  Paul Eggert  <eggert@twinsun.com>
3507
3508	* c-common.c (convert_and_check): Don't diagnose overflow in constant
3509	expression merely because conversion overflowed.
3510
3511Thu May 11 18:43:59 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
3512
3513	* c-decl.c (grokdeclarator): Use PARM_FLAG to see if should
3514	make PARM_DECL.
3515	* c-parse.in (nested_function, notype_nested_function):
3516	Allow old-style arg definitions (use xdecls).
3517
3518	* c-decl.c (finish_struct): Properly update DECL_PACKED.
3519
3520Thu May 11 15:24:15 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
3521
3522	* fold-const.c (fold): Also fold CLEANUP_POINT_EXPRs into
3523        TRUTH_*_EXPRs and into the first operand.
3524	(operand_equal_for_comparison_p): Also make sure the second operand
3525	is integral.
3526
3527Thu May 11 14:22:03 1995  Ted Lemon  <mellon@toccata.fugue.com>
3528
3529	* config/mips/netbsd.h: New file.
3530	* config/mips/t-mips-netbsd: New file.
3531	* config/mips/x-netbsd: New file.
3532
3533	* configure (mips-dec-netbsd*): Add entry.
3534
3535	* mips.h (LOCAL_LABEL_PREFIX, USER_LABEL_PREFIX): Define.
3536	(PUT_SDB_BLOCK_START, PUT_SDB_BLOCK_END, ASM_OUTPUT_LABEL_REF,
3537	ASM_OUTPUT_INTERNAL_LABEL, ASM_GENERATE_INTERNAL_LABEL,
3538	ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Use them.
3539
3540	* mips.c (mips_output_lineno): Use LOCAL_LABEL_PREFIX.
3541
3542Thu May 11 14:22:03 1995  Stan Cox  (gcc@dg-rtp.dg.com)
3543
3544	* dwarfout.c (output_decl): Don't output DIE for struct or union type
3545	with no name or with ERROR_MARK for the fields.
3546
3547Thu May 11 06:36:34 1995  Michael Meissner  (meissner@cygnus.com)
3548
3549	* flow.c (mark_used_regs): If a SUBREG does not have a REG in the
3550	SUBREG_REG position, recursively call mark_used_regs, instead of
3551	segfaulting.
3552
3553Thu May 11 06:44:34 1995  Pat Rankin  (rankin@eql.caltech.edu)
3554
3555	* expr.c (do_jump, case EQ_EXPR, NE_EXPR): Fix typo for complex.
3556
3557Wed May 10 12:34:46 1995  Michael Meissner  <meissner@cygnus.com>
3558
3559	* configure: Add support for the little endian variant of the
3560	PowerPC System V.4 and Eabi targets.  If the GNU assembler was not
3561	specified, don't build libgcc.a variants on the PowerPC systems
3562	that use -mrelocatable, -mlittle, and -mbig.
3563
3564	* genmultilib: For MULTILIB_MATCHES arguments, map question marks
3565	into equal signs after spliting the left and right side of
3566	equivalent options, to all support for options like: -mcpu=403.
3567
3568	* rs6000/rs6000.md (rs6000_immed_double_const): New function that
3569	is like immed_double_const, except that it reverses the two words
3570	in the constant if the target is little endian.
3571
3572	* rs6000/rs6000.md (floatsidf2): Use rs6000_immed_double_const,
3573	not immed_double_const.
3574	(floatunssidf2): Ditto.
3575
3576	* rs6000/rs6000.h: Add declarations for all functions in rs6000.c.
3577
3578	* rs6000/sysv4.h (TARGET_SWITCHES): Add -mlittle, -mlittle-endian,
3579	-mbig, and -mbig-endian for bi-endian support.
3580	(ASM_SPEC): Pass -mlittle/-mbig to the assembler if it was passed
3581	to us.
3582	(LINK_SPEC): If explicit little or big endian support was
3583	requested, tell the GNU linker to use the appropriate target
3584	format.
3585
3586	* rs6000/t-eabi (MULTILIB_*): Build libgcc.a variants for software
3587	floating point.  Remove mrelocatable libgcc.a variant.
3588
3589	* rs6000/t-eabigas: New file, cloned from t-eabi.  Build
3590	mrelocatable libgcc.a variant in addition to the other variants.
3591
3592	* rs6000/t-ppc: New file, for PowerPC System V.4 support without
3593	the GNU assembler.
3594
3595	* rs6000/t-ppcgas: New file, for PowerPC System V.4 support with
3596	the GNU assembler.
3597
3598	* rs6000/eabile.h: New file, little endian eabi config file.
3599	* rs6000/sysv4le.h: New file, little endian V.4 config file.
3600
3601Wed May 10 14:22:28 1995  Doug Evans  <dje@cygnus.com>
3602
3603	* libgcc1-test.c (main_without__main): Renamed from `main'.
3604	* Makefile.in (libgcc1-test): Tell the user to ignore warnings.
3605
3606	* configure: Support --enable-foo, --disable-foo.
3607
3608Wed May 10 10:34:00 1995  Lee Iverson  <leei@Canada.AI.SRI.COM>
3609
3610	* unroll.c: Add declarations of static functions.
3611	(unroll_loop): Renumber regs local to loop for each unrolled iteration.
3612
3613Wed May 10 08:27:03 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
3614
3615	* alpha.c (alpha_set_emit_const): Cleanups to work properly
3616	when run on 32-bit host.
3617
3618	* configure: Instead of symlinking tm.h and {h,t,}config.h,
3619	make them files that #include the proper file; pass to Makefile.
3620	Pass out_file and md_file to Makefile instead of making symlinks.
3621	* Makefile.in (out_file, md_file, tm_file, {build,host}_xm_file):
3622	New symbols, to be overridden by configure.
3623	(insn-*): Use $(md_file), not md.
3624	(aux-output.o): Use $(out_file), not aux-output.c.
3625	($(MD_FILE)): Rework to use new conventions.
3626	(gen*.o, bi-*.o): Depend on $(build_xm_file), not hconfig.h.
3627	(scan.o, fix-header.o, scan-decls.o): Likewise.
3628	(distclean): Adjust files removed for new convention.
3629
3630Tue May  9 19:26:42 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
3631
3632	* rs6000/rs6000.h (LIBGCC_SPEC): Do link with libgcc when -shared.
3633
3634	* Makefile.in (STAGESTUFF): Add underscore.c.
3635	(underscore.c): Rename temporary files to begin with 'tmp-' so that
3636	they will be removed by 'make mostlyclean'.
3637
3638Tue May  9 19:19:55 1995  Mike Stump  <mrs@cygnus.com>
3639
3640	* toplev.c (lang_options): Add new flag -ffor-scope.
3641
3642Tue May  9 19:11:47 1995  Lee Iverson  (leei@ai.sri.com)
3643
3644	* objc/init.c (objc_init_statics): Fix missing part of last change.
3645
3646Tue May  9 18:25:34 1995  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3647
3648	* i386/gnu.h, i386/linux.h, i386/linux-aout.h, i386/lynx.h:
3649	Use <...> in #include instead of "..." to avoid recursion.
3650	* i386/netbsd.h, i386/xm-gnu.h, i386/xm-linux.h: Likewise.
3651	* i386/xm-lynx.h, i386/xm-freebsd.h, i386/xm-netbsd.h: Likewise.
3652	* m68k/lynx.h, m68k/netbsd.h, m68k/xm-lynx.h: Likewise.
3653	* m68k/xm-netbsd.h, mips/gnu.h, ns32k/netbsd.h: Likewise.
3654	* ns32k/xm-netbsd.h, rs6000/lynx.h, rs6000/xm-lynx.h: Likewise.
3655	* sparc/lynx.h, sparc/netbsd.h, sparc/xm-lynx.h: Likewise.
3656	* sparc/xm-netbsd.h, vax/netbsd.h, vax/xm-netbsd.h: Likewise.
3657
3658Tue May  9 15:52:05 1995  Michael Meissner  <meissner@cygnus.com>
3659
3660	* config.sub: Recognize powerpcle as the little endian varient of
3661	the PowerPC.  Recgonize ppc as a PowerPC variant, and ppcle as a
3662	powerpcle variant.  Convert pentium into i586, not i486.  Add p5
3663	alias for i586.  Map new x86 variants p6, k5, nexgen into i586
3664	temporarily.
3665
3666Tue May  9 15:43:27 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
3667
3668	* rs6000/rs6000.h (LINK_SPEC, LIB_SPEC): Don't mess with libg
3669        if -shared.
3670	* rs6000/aix41ppc.h (LINK_SPEC): Ditto.
3671
3672	* rs6000/powerpc.h: Don't emit .extern directives.
3673
3674Tue May  9 14:08:09 1995  Jim Wilson  <wilson@cygnus.com>
3675
3676	* sh/lib1funcs.asm (__ashrsi3, __ashlsi3, __lshrsi3): Use .byte
3677	instead of .word offsets in switch table.
3678
3679Tue May  9 11:44:47 1995  Jeremy Bettis  <jbettis@cse.unl.edu>
3680
3681	* objc/sendmsg.c (__objc_send_initialize): Call superclass if object
3682	does not implement +initialize.
3683  
3684Tue May  9 02:44:16 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
3685
3686	* rs6000/xm-rs6000.h (COLLECT_EXPORT_LIST): Define if not
3687        cross-compiling.
3688	* rs6000/xm-mach.h: #undef COLLECT_EXPORT_LIST.
3689	* rs6000/rs6000.h (COLLECT_SCAN_OBJECTS): Lose.
3690
3691	* collect2.c (collect_exit): Unlink export_file.
3692	(prefix_from_string): Broken out from prefix_from_env.
3693	(prefix_from_env): Call it.
3694	(main): Under AIX, recognize -bE: and -bexport:, and don't
3695	automatically export everything if we see one.  Otherwise, scan the
3696	objects individually and add all their symbols to an export file to be
3697	passed to the linker.
3698	(write_export_file): New function.
3699	(scan_prog_file): Ignore symbols starting with '.'
3700
3701	* c-common.c (declare_hidden_char_array): Mark decl artificial.
3702
3703Mon May  8 18:13:57 1995  Adam Fedor  <fedor@colorado.edu>
3704
3705	* objc/init.c (_objc_load_callback): Add declaration. 
3706	(__objc_exec_class): Call _objc_load_callback after every Class
3707	or Category is added.
3708	* objc/objc-api.h (_objc_load_callback): Add declaration.
3709
3710Mon May  8 17:56:28 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
3711
3712	* expr.c (expand_expr, case INDIRECT_REF): Set RTX_UNCHANGING_P
3713	if both TREE_READONLY and TREE_STATIC set.
3714
3715	* c-typeck.c (convert_for_assignment): Don't give errors about
3716	adding const or volatile unless both sides point to functions.
3717
3718Mon May  8 11:48:23 1995  Michael Meissner  <meissner@cygnus.com>
3719
3720	* configure: If ../ld/Makefile, symlink ../ld/ld.new to collect-ld,
3721	not real-ld.  Don't test for $use_collect2 any more.
3722
3723Sun May  7 17:52:23 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
3724
3725	* calls.c (expand_call): Improve -Winline warnings.
3726
3727Sun May  7 17:28:27 1995  DJ Delorie  (dj@delorie.com)
3728
3729	* configure.bat: Use "go32" instead of "msdos" for future expansion.
3730
3731	* i386/go32.h: Add support for win32's stdcall functions.
3732
3733	* configure.bat: Add ^M to end of each line.
3734	* i386/config-nt.bat, alpha/config-nt.bat: Likewise.
3735
3736Sun May  7 02:12:26 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
3737
3738	* tree.h (DECL_ARTIFICIAL): New macro.
3739
3740	* function.c (expand_function_end): Don't warn about unused
3741        anonymous or artificial parms.
3742
3743Fri May  5 18:41:22 1995  Jim Meyering  (meyering@comco.com)
3744
3745	* configure: Fix typo in name of "maintainer-clean".
3746
3747Fri May  5 14:58:01 1995  Jeffrey A. Law  <law@snake.cs.utah.edu>
3748
3749 	* pa.c (emit_move_sequence): Force problematical constants
3750	into memory during the reload pass when generating PIC.
3751
3752Fri May  5 13:30:33 1995  Doug Evans  <dje@cygnus.com>
3753
3754	* objc/NXConstStr.m: NXConstantString.h renamed to NXConststr.h.
3755
3756Fri May  5 07:10:15 1995  Stephen L Moshier  (moshier@world.std.com)
3757
3758	* real.c (emdnorm, toe64, etoe64): Significand of Intel long double
3759	denormals is shifted down one bit.
3760
3761Fri May  5 07:04:12 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
3762
3763	* c-typeck.c (process_init_element): Don't clear_momentary if
3764	constructor_stack is not empty.
3765
3766	* objc/Makefile (SHELL): Now /bin/sh.
3767
3768	* c-typeck.c (build_binary_op): Also warn about ordered
3769	comparison of pointer with zero if -Wall.
3770
3771	* expr.c (do_jump, case EQ_EXPR, NE_EXPR): Properly compare complex.
3772
3773Thu May  4 18:01:25 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
3774
3775	* objc/Makefile: NXConstantString renamed to NXConstStr.
3776	* objc/NXConstStr.m: Renamed from objc/NXConstantString.m.
3777	* objc/NXConstStr.h: Renamed from objc/NXConstantString.h.
3778
3779Thu May  4 17:38:21 1995  J.T. Conklin  <jtc@netbsd.org>
3780
3781	* configure (vax-*-netbsd*): New configuration.
3782	* vax/netbsd.h, vax/xm-netbsd.h: New files.
3783
3784Thu May  4 16:39:05 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
3785
3786	* collect2.c (main): Add check for 'collect-ld', just like
3787        'real-ld', except that old versions won't be looking for it in the
3788        path.  Don't look for 'real-ld' in the path anymore.  Sigh.
3789
3790	* collect2.c: #include demangle.h and obstack.h.
3791	(obstack_chunk_alloc): Define.
3792	(obstack_chunk_free): Define.
3793	(generic): Don't define.  Don't use.
3794	(main): Initialize obstacks and demangling.
3795
3796	* collect2.c (dump_file): Adjust space padding in output to
3797        maintain tabulation with Solaris ld.  Don't demangle if the
3798        environment variable COLLECT_NO_DEMANGLE is set.
3799
3800        * collect2.c (main): Redirect the output of the first link and
3801        demangle it.  Don't collect static c/dtors unless USE_COLLECT2 is
3802        defined.  Null-terminate the list of objects.
3803	(dump_file): New function.
3804	(file_exists): New function.
3805	(collect_exit): Renamed from my_exit.  Dump and remove the temporary
3806	ld output file.
3807	(collect_execute): Break out from fork_execute.  Support redirection.
3808	(fork_execute): Call it.
3809	(fatal_perror, fatal, error): Make non-static.
3810	(xcalloc, xmalloc): Don't use generic.
3811	(xrealloc): Define.
3812	(collect_wait): Break out for do_wait.  Just return the exit status.
3813	(do_wait): Call it.
3814
3815	* collect2.c: Check SUNOS4_SHARED_LIBRARIES using #if, not #ifdef.
3816
3817	* Makefile.in (collect2): Now uses cplus-dem.o and underscore.o.
3818	(collect2.o): Pass MAYBE_USE_COLLECT2 to compile.
3819	(underscore.c): Rules for creation.
3820
3821	* cplus-dem.c, demangle.h: Copy from libiberty.
3822
3823Thu May  4 14:12:35 1995  Jim Wilson  <wilson@cygnus.com>
3824
3825	* sdbout.c (plain_type): Pass additional argument to plain_type_1.
3826	(plain_type_1): New parameter level.  Increment it when making
3827	recursive calls.  Force the type to void_type_mode before starting
3828	a 7th level of recursion.
3829
3830	* sh.c (general_movsrc_operand, general_movdst_operand): Delete
3831	references to POST_DEC and PRE_INC.
3832	* sh.h: Clean up whitespace, comments, etc.
3833	(TARGET_SH, RTL_BIT, DT_BIT, C_BIT, R_BIT, TARGET_DUMP_RTL,
3834	TARGET_DUMP_R, TARGET_CDUMP): Delete.
3835	(TARGET_SWITCHES): Delete -mR, -mc, -mr options.
3836	(CONST_DOUBLE_OK_FOR_LETTER_P): Delete 'G' contraint.
3837	(FUNCTION_VALUE): Simplify.
3838	(REG_OK_FOR_PRE_POST_P, IS_INDEX): Delete.
3839	(BASE_REGISTER_RTX_P, INDEX_REGISTER_RTX_P): Rewrite to allow
3840	SUBREGs.
3841	(GO_IF_LEGITIMATE_INDEX): Delete unused REGNO argument.
3842	(GO_IF_LEGITIMATE_ADDRESS): Use BASE_REGISTER_RTX_P instead of
3843	REG_OK_FOR_PRE_POST_P.  Don't accept PRE_INC or POST_DEC addresses.
3844	(PREDICATE_CODES, PROMOTE_MODE): Define.	
3845
3846Wed May  3 09:57:55 1995  Michael Meissner  <meissner@cygnus.com>
3847
3848	* rs6000/rs6000.md (non power abs insns): If not powerpc, use
3849	sf/subfc instructions, not subf.
3850
3851Wed May  3 08:49:06 1995  Alan Modra  <alan@SPRI.Levels.UniSA.Edu.Au>
3852
3853	* protoize.c (gen_aux_info_file): Use strerror #ifdef HAVE_STRERROR.
3854
3855Wed May  3 01:06:01 1995  Jeffrey A. Law  <law@mole.gnu.ai.mit.edu>
3856
3857	* pa.c (output_call): Fix typo/thinko in last change.
3858	(output_function_epilogue): Align the data section before
3859	emitting deferred plabels.
3860
3861	From Torbjorn:
3862	* pa.c (before functions): Declare deferred_plabels and
3863	n_deferred_plabels.
3864	(output_call): When generating pic, don't use LP and RP.  Use 32 bit
3865	plabel instead.
3866	(output_function_epilogue): Output plabels accumulated in output_call.
3867
3868Tue May  2 17:15:08 1995  Jeffrey A. Law  <law@mole.gnu.ai.mit.edu>
3869
3870	* pa.c (hppa_expand_epilogue): Fix thinko in last change.
3871
3872Tue May  2 16:54:35 1995  Doug Evans  <dje@cygnus.com>
3873
3874	* jump.c (jump_optimize, can_reach_end determination): A barrier can
3875	follow the return insn.
3876
3877Tue May  2 12:39:55 1995  Mike Stump  <mrs@cygnus.com>
3878
3879	* fold-const.c (fold): Ensure that we don't alter the expression's
3880	type when folding CLEANUP_POINT_EXPRs.
3881
3882Tue May  2 13:36:08 1995  Michael Meissner  <meissner@cygnus.com>
3883
3884	* expmed.c (emit_store_flag): When creating store flag
3885	instructions from simpler parts, such as XOR, ABS, etc. do not
3886	reuse pseudo registers if expensive optimizations, instead create new
3887	pseudos for each insn result.
3888
3889Tue May  2 01:25:29 1995  Jeffrey A. Law  <law@snake.cs.utah.edu>
3890
3891	* pa.c (hppa_expand_epilogue): Correctly handle restore of %rp
3892	for functions with a stack size of exactly 8kbytes and no frame
3893	pointer.
3894
3895Mon May  1 19:27:08 1995  Jim Wilson  <wilson@cygnus.com>
3896
3897	* sdbout.c (sdbout_one_type): Don't switch to text section if
3898	in function with section attribute.
3899
3900	* combine.c (combine_instrutions): Set subst_prev_insn to zero.
3901	(try_combine, undo_all): Likewise.
3902	(get_last_value): Return zero if subst_prev_insn set.
3903
3904	* sparc.h (INIT_TARGET_OPTABS): Move INIT_SUBTARGET_OPTABS to end.
3905
3906	* Makefile.in (install-dir): chmod a+rx all newly created directories.
3907
3908	* expr.c (expand_expr, case SAVE_EXPR): Handle the case where
3909	mode is VOIDmode.
3910
3911Fri Apr 28 15:39:38 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3912
3913	* cpplib.h (cpp_buffer):  Note new escape combination "@ ".
3914	* cpplib.c (macroexpand):  Delete "@ " if stringifying.
3915	(cpp_skip_hspace):  Also skip "@ " if input buffer has_escapes.
3916	(collect_expansion):   Cleanup white-space handling.
3917	(create_definition):  Remove all leading spaces, not just first one.
3918	(cpp_expand_to_buffer):  Set has_escapes on resulting input buffer.
3919	(macroexpand):  Set output_escapes during whole function (and
3920	specifically during calls of macarg).
3921	(macroexpand):  Set "@ " before and after expansion result.
3922	(push_macro_expansion):  Remove unneeded initial "@ ", not " ".
3923	(cpp_get_token):  Remove unneeded "@ " (not " ") at end of expansion.
3924	(cpp_get_token):  Handle "@ ".
3925
3926	* cpplib.c (read_name_map):  Add cpp_reader parameter.  Access
3927	map_list from former (instead of having it be static).
3928	(open_include_file):  Extra parameter (because of above changes).
3929	(do_include, lookup_import):  Update calls of open_include_file.
3930
3931	* cpplib.c (do_include):  Fix memory leak.
3932
3933	* cpplib.c (delete_assertion):  Also delete tokenlist.
3934	(do_unassert):  Don't delete tokenlist (handled by delete_assertion).
3935	(cpp_cleanup):  New function.  Frees resources used by a cpp_reader.
3936	* cpphash.c (cpp_hash_cleanup):  New function.
3937	(delete_macro):  Enable commented-out code.
3938	(file_cleanup):  Free actual buffer.
3939
3940	* cpplib.c (cpp_options):  Add map_list.
3941
3942	* cpplib.h (PARSE_GETC):  Removed.  Bogus and unused.
3943	* cppmain.c (main):  Remove commented-out code that used PARSE_GETC.
3944
3945	* cpplib.c:  Don't #include <string.h>.  Causes clashes
3946	on Nextstep (when index/rindex are macros).
3947	(cpp_grow_buffer, int_parse_file):  Cast to U_CHAR*, rather than char*.
3948
3949Sun Apr 30 08:11:23 1995  Alan Modra  (alan@spri.levels.unisa.edu.au)
3950
3951	* stdarg.h, varargs.h (va_arg): Don't assume __va_rounded_size (char)
3952	has the value of 4.
3953
3954Sun Apr 30 07:13:43 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
3955
3956	* vax.h (NOTICE_UPDATE_CC): Correctly handle aob insns.
3957
3958	* expr.c (expand_expr, case CONSTRUCTOR): Don't set target to
3959	zero if more then one word.
3960	Pass size and alignment to move_by_pieces_ninsns in bytes, not bits.
3961
3962	* cse.c (cse_insn): Properly set IN_MEMORY for SET_DEST.
3963
3964	* tree.c (substitute_in_expr): Preserve TREE_READONLY.
3965
3966	* c-common.c (enum attrs): Add A_UNUSED.
3967	(init_attributes): Initialize it.
3968	(decl_attributes, case A_UNUSED): New case.
3969
3970Sat Apr 29 15:42:03 1995  Paul Eggert  <eggert@twinsun.com>
3971
3972	* cccp.c (do_include): Re-fix minor memory leak by using
3973	alloca instead of xmalloc and free.
3974
3975	* cccp.c (macarg): Except for reporting error, treat unterminated
3976	macro call as if it were terminated, since `macroexpand' relies
3977	on *argptr being filled in.
3978
3979Sat Apr 29 06:09:35 1995  Torbjorn Granlund  <tege@cygnus.com>
3980
3981	* pa.c (output_mul_insn): Simplify, it is never called with
3982	UNSIGNEDP set.
3983
3984	* pa.md (divsi3, udivsi3, modsi3, umodsi3): Simplify.
3985	(ashlsi3): Clean up indentation and commentary.
3986
3987Fri Apr 28 12:48:01 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
3988
3989	* integrate.c (expand_inline_function): Don't emit any notes until
3990        after we've expanded the actual parameters.
3991
3992Fri Apr 28 11:51:06 1995  Stan Cox  (gcc@dg-rtp.dg.com)
3993
3994        * m88k/dgux.h: (ENDFILE_SPEC, LIB_SPEC) Fix crtbegin and crtend 
3995        (SELECT_RTX_SECTION) Put relocatable pic constants in data section
3996
3997        * m88k/dguxbcs.h: (LIB_SPEC) Likewise
3998
3999        * m88k/m88k.c: (symbolic_operand) Put relocatable pic constants in data
4000
4001        * m88k/m88k.h: (FRAME_POINTER_REQUIRED) Add -momit-leaf-frame-pointer
4002
4003        * m88k/m88k.md: (umulsidi3) Doesn't work for 88110 with mod/div changes
4004
4005        * m88k/x-dgux: (GCC_FOR_TARGET) tdesc gets mixed up for crtbegin/crtend
4006
4007Fri Apr 28 06:36:47 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4008
4009	* c-typeck.c (pop_init_level, output_init_element): Pass
4010	require_constant_* to digest_init.
4011
4012	* alpha.c (alpha_emit_set_const): Now returns rtx and take MODE arg.
4013	Rework to use a new pseudo for intermediate values if high opt level.
4014	Also use expand_{bin,un}op.
4015	* alpha.h (alpha_emit_set_const): Add declaration.
4016	* alpha.md (mov[sd]i and splits): Change call to alpha_emit_set_const.
4017
4018	* reg-stack.c (stack_result): Fix bug in last change.
4019
4020Fri Apr 28 01:08:43 1995  Doug Evans  <dje@cygnus.com>
4021
4022	* objc-act.c: Update calls to start_decl, finish_struct,
4023	pass NULLs for attributes.
4024
4025Thu Apr 27 21:13:14 1995  Doug Evans  <dje@cygnus.com>
4026
4027	* sparc.md (tablejump): Only if ! TARGET_MEDANY.
4028	(casesi): New pattern for TARGET_MEDANY case.
4029
4030	* c-common.c (decl_attributes): Always continue if attribute not found.
4031	* c-typeck.c (common_type): Call lookup_attribute instead of
4032	value_member.
4033	* tree.c (attribute_hash_list): New function.
4034	(build_type_attribute_variant): Call it.
4035	(valid_machine_attribute): Handle attributes with arguments.
4036	(is_attribute_p): New function.
4037	(lookup_attribute): New function.
4038	(attribute_in_list): Deleted.
4039	(attribute_list_contained): Check TREE_PURPOSE and TREE_VALUE.
4040	* tree.h (valid_machine_attribute): Add prototype.
4041	(is_attribute_p, lookup_attribute): Likewise.
4042	* i386/winnt.h (RETURN_POPS_ARGS): Call lookup_attribute.
4043	(ENCODE_SECTION_INFO): Likewise.
4044	(CPP_PREDEFINES): Use __stdcall__, __cdecl__.
4045	(VALID_MACHINE_DECL_ATTRIBUTE): Call is_attribute_p.
4046	`args' must be NULL.
4047
4048Thu Apr 27 21:10:41 1995  David Edelsohn  <edelsohn@mhpcc.edu>
4049
4050	* rs6000.md (insv): New anonymous patterns to combine insert with
4051	arbitrary ashift, ashiftrt, lshiftrt, or zero_extract.  (Based on
4052	patch from John Brooks <jbrooks@ea.com>.)
4053	(ashlsi3): Remove extraneous operand processing.
4054
4055Thu Apr 27 18:47:24 1995  Jim Wilson  <wilson@cygnus.com>
4056
4057	* sh/ashlsi3.c, sh/ashrsi3.c, sh/lshrsi3.c: Delete.
4058	* sh/lib1funcs.asm (ashiftrt_r4_*): Rewrite for efficiency.
4059	(ashrsi3, lshrsi3, lshrsi3): Add.
4060	* t-sh (LIB1ASMFUNCS): Add new functions.
4061	(LIBGCC2_CFLAGS): Delete.
4062	(LIB2FUNCS_EXTRA): Remove deleted files.
4063	(ashlsi3.c, ashrsi3.c, lshrsi3.c): Remove rules for deleted files.
4064
4065	* stmt.c (expand_return): When returning BLKmode structure, use
4066	operand_subword instead of doing arithmetic on the register number.
4067	Also, for structures smaller than word_mode, copy it into a word_mode
4068	temporary and then subreg it.
4069
4070	* sparc.md: Delete two define_peepholes which print `bad peephole'.
4071
4072Thu Apr 27 16:17:01 1995  Torbjorn Granlund  <tege@cygnus.com>
4073
4074	* toplev.c (rest_of_compilation): Call shorten_branches even when
4075	!optimize.
4076	* final.c (shorten_branches): For non-optimizing compiles, break
4077	after first pass.
4078
4079Thu Apr 27 14:22:50 1995  Michael Meissner  <meissner@cygnus.com>
4080
4081	* i386/linux-oldld.h: New file, that is cloned from linux-aout.h,
4082	except that it does not pass -m i386linux to the linker.  This is
4083	to support the original Linux ld that is on most distributions.
4084
4085	* configure (i[345]86-*-linux*oldld*): Use i386/linux-oldld.h as
4086	the target file.
4087
4088Thu Apr 27 08:56:50 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4089
4090	* tree.c (valid_machine_attribute): Update last change.
4091
4092Thu Apr 27 08:06:33 1995  Philippe De Muyter (phdm@info.ucl.ac.be)
4093
4094	* fix-header.c, cpplib.c: Don't include <sys/stat.h> twice.
4095	* cpplib.c (cpp_grow_buffer, init_parse_file): Cast {xmalloc,xrealloc}
4096	for token_buffer to U_CHAR* instead of char*.
4097
4098	* m68k/x-mot3300: New file.
4099	* configure (m68k-motorola-sysv*): Use x-mot3300 instead of x-alloca.
4100
4101Thu Apr 27 07:04:09 1995  Paul Eggert  <eggert@twinsun.com>
4102
4103	* cccp.c (do_include): Fix minor memory leak.
4104
4105	* cccp.c (struct argdata): Remove unused `comments' member.
4106	(macarg): Don't set `comments' member.
4107
4108	* cccp.c (collect_expansion): Assume leading white space
4109	already removed.
4110	Don't allocate unnecessary space for expansion.
4111
4112	* cccp.c (deps_output): Don't generate overly long output lines.
4113	Do not invoke self recursively with spacer == 0; this simplifies
4114	the code a bit.
4115
4116Wed Apr 26 19:20:02 1995  Andrew McCallum  <mccallum@leopard.cs.rochester.edu>
4117
4118	* objc/Object.h: Changed Class * to Class in order to match NEXTSTEP
4119	and OpenStep runtime.
4120	* objc/Object.m, objc/Object.h, objc/archive.c, objc/class.c: Likewise.
4121	* objc/encoding.c, objc/init.c, objc/objc-api.h, objc/objc.h: Likewise.
4122	* objc/objects.c, objc/runtime.h, objc/selector.c: Likewise.
4123	* objc/sendmsg.c, objc/typedstream.h: Likewise.
4124
4125Wed Apr 26 19:18:52 1995  Pieter Schoenmakers  <tiggr@es.ele.tue.nl>
4126
4127	* objc/objc-api.h (objc_static_instances): New struct to record
4128	static instances of a certain class.
4129	(objc_module): New tag STATICS to point to the table of
4130	objc_statics_instances.
4131
4132	* objc/init.c (OBJC_VERSION): Version 7.
4133	(objc_init_statics): New function.
4134	(__objc_exec_class): Invoke objc_init_statics if needed.
4135
4136	* objc/NXConstantString.m, objc/NXConstantString.h: New files.
4137	* objc/Makefile (OBJC_O): Added bare-bones implementation of
4138	NXConstantString.
4139
4140	* objc-act.c (OBJC_VERSION): Version 7.
4141	(build_objc_string_object): Build a full declaration if not using
4142	the next runtime.
4143	(objc_add_static_instance): New function.
4144	(init_module_descriptor): Add reference to static instances table.
4145	(build_module_descriptor): Add field for static instances table.
4146	(get_objc_string_decl): New function.
4147	(generate_static_references): New function.
4148	(finish_objc): Call generate_static_references if needed.
4149
4150	* c-tree.h (finish_decl_top_level): New declaration.
4151	* c-decl.c (finish_decl_top_level): New function.
4152
4153Wed Apr 26 18:04:32 1995  Dirk Steinberg  (Dirk.Steinberg@gmd.de)
4154
4155	* stddef.h: Treat _MACHINE_ANSI_H_ like _ANSI_H_.
4156
4157Wed Apr 26 14:09:59 1995  Jim Wilson  <wilson@cygnus.com>
4158
4159	* sparc.h (NEGTF2_LIBCALL): Define.
4160	(INIT_TARGET_OPTABS): Add support for all TFmode *_LIBCALL macros.
4161	* optabs.c (init_optabs): Delete all uses of undocumented TImode and
4162	TFmode *_LIBCALL macros.
4163
4164	* combine.c (simplify_rtx, case TRUNCATE): Add.  Use force_to_mode.
4165	(force_to_mode, case AND): Allow some simplifications when GET_MODE (x)
4166	has more bits than HOST_BITS_PER_WIDE_INT.
4167	* mips/mips.md (truncdiqi2+[456]): Add patterns to simplify ZERO_EXTEND
4168	of a TRUNCATE.
4169
4170Wed Apr 26 13:01:22 1995  Doug Evans  <dje@cygnus.com>
4171
4172	* sparc.md (memop define_splits): Rewrite to not use memop.
4173	Preserve MEM_IN_STRUCT_P, MEM_VOLATILE_P, RTX_UNCHANGING_P bits.
4174	* sparc.c (memop): Deleted.
4175	(splittable_symbolic_memory_operand): New function.
4176	(splittable_immediate_memory_operand): New function.
4177
4178Wed Apr 26 12:54:26 1995  Jeffrey A. Law  <law@snake.cs.utah.edu>
4179
4180	* configure: Add hppa1.1-hp-lites support.
4181
4182Wed Apr 26 08:04:46 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4183
4184	* sh.md (ashrsi2_31): Don't use dead_or_set_p after reload.
4185	* pyr.md: Remove bad peepholes that improperly use dead_or_set_p.
4186
4187	* function.c (expand_function_end): Warn about unused parms
4188	if both -Wunused and -W.
4189
4190	* tree.h (TYPE_PARSE_INFO): Delete unused field.
4191	(TYPE_PACKED): Add new macro.
4192	(struct tree_type): Delete unused field `parse_info'.
4193	Add new field `packed_flag'.
4194	* c-tree.h (finish_enum, finish_struct): Add ATTRIBUTES argument.
4195	* c-common.c (init_attributes): Don't require decl for A_PACKED.
4196	(decl_attributes, case A_PACKED): Set TYPE_PACKED for type.
4197	* c-parse.in: Update number of shift/reduce conflicts.
4198	(structsp): Pass attribute arg to finish_struct.
4199	Support attributes on enums and pass to finish_enum.
4200	* c-decl.c (finish_struct): Add ATTRIBUTES argument, call
4201	decl_attributes and set DECL_PACKED from TYPE_PACKED.
4202	(finish_enum): Add ATTRIBUTES argument, call decl_attributes,
4203	and make enum narrow if TYPE_PACKED.
4204	* print-tree.c (print_node): Print TYPE_PACKED.
4205
4206	* c-decl.c (init_decl_processing): Don't give builtin__constant_p an
4207	argument type.
4208	* expr.c (expand_builtin, case BUILT_IN_CONSTANT_P): A pointer to a
4209	string constant is a constant.
4210
4211	* c-typeck.c (output_init_element): Constructor is not simple if
4212	a bitfield is being assigned a non-integer.
4213
4214	* c-typeck.c (push_init_level): Update constructor_depth when we
4215	push spelling level.
4216
4217Tue Apr 25 19:50:06 1995  Jeffrey A. Law  <law@snake.cs.utah.edu>
4218
4219	* pa.c (emit_move_sequence): Handle function label arithmetic for
4220	PIC code generation too.
4221
4222Tue Apr 25 18:52:43 1995  Stephen R. van den Berg  (berg@pool.informatik.rwth-aachen.de)
4223
4224	* reg-stack.c (current_function_returns_real): Deleted (unused).
4225	(FP_mode_reg): Trimmed to a smaller size, less overhead.
4226	(FP_MODE_REG): New macro over which FP_mode_reg will be accessed.
4227	(mark_regs_pat, straighten_stack): New functions.
4228	(reg_to_stack): Amend initialisation of FP_mode_reg.
4229	Mark FP registers mentioned in USE insns before NOTE_INSN_FUNCTION_BEG.
4230	(get_true_reg): Eliminate FP subreg accesses in favour of the
4231	actual FP register in use.
4232	(record_reg_life_pat): Make it work on SUBREGs as well.  Make use of
4233	the new mark_regs_pat function.  Handle USE insns if called unnested.
4234	(record_reg_life): Don't check for QImode again, we know that it
4235	is there.  Process CALL_INSNs like all other insns, they might `use'
4236	some FP argument registers if register passing.
4237	(stack_result_p): Changed in stack_result and returning an rtx.
4238	(stack_reg_life_analysis): Take a new stackentry state argument.
4239	Use stack_result and the rtx to mark using mark_regs_pat.  This ensures
4240	that types that need multiple FP registers are handled correctly.
4241	Delete the no_live_regs shortcut to save space.
4242	Use stackentry state to determine filled registers.
4243	(replace_reg): Accept COMPLEX_FLOAT as well.
4244	(move_for_stack_reg): Optimise away some pointer dereferencing.
4245	(subst_stack_regs): Make sure the stack is in the right order
4246	and of the right size for register passing.
4247	(goto_block_pat): Make sure the stack is in the right order
4248	to return possible multi-register values from the function.
4249	(convert_regs): Fix comment about CALL_INSN, it's no longer valid.
4250	Make sure the stack is of the right size and in the right order
4251	to return possible multi-register values from the function.
4252
4253	* function.c (assign_parms): If STACK_REGS is defined, generate USE
4254	insns before the function body, thus showing which registers are filled
4255	with parameters.
4256	* expr.c (expand_builtin_apply_args): Likewise.
4257	Reverse order of saving registers, more compact code for i387.
4258	(expand_builtin_apply): Likewise.
4259	* emit-rtl.c (gen_highpart): Add comment about broken implementation.
4260	* i386.md (untyped_call): Make it return a complex double.
4261
4262        * c-parse.in (attrib): Permit null-length argument list to attributes.
4263
4264	* tree.c (valid_machine_attribute): Use new function attribute_in_list,
4265	makes sure type_attribute_variants are reused even when attributes have
4266	parameters.
4267	Assign any new type to TREE_TYPE (decl).
4268	(attribute_in_list): New function.
4269	(attribute_list_contained): Use it.
4270	* tree.h (attribute_in_list): New declaration.
4271
4272Tue Apr 25 18:25:53 1995  Jim Wilson  <wilson@cygnus.com>
4273
4274	* expr.c (struct move_by_pieces): Add to_struct and from_struct fields.
4275	(move_by_pieces): Set to_struct and from_struct fields.
4276	(move_by_pieces_1): Set MEM_IN_STRUCT_P of to1 and from1.
4277	(expand_builtin, case BUILT_IN_MEMCPY): New variable type.
4278	Set MEM_IN_STRUCT_P of src_mem and dest_mem.
4279
4280	* Makefile.in (clean): Delete libgcc1-asm.a.
4281
4282	* m68k/vxm68k.h (CPP_SPEC): Define.
4283
4284	* c-decl.c (pushdecl): Don't test DECL_EXTERNAL when deciding whether
4285	to register a duplicate decl in the current block.
4286
4287	* cross64.h (INIT_ENVIRONMENT): Define as string not putenv call.
4288	* gcc.c (main): Pass INIT_ENVIRONMENT to putenv.
4289
4290	* stmt.c (expand_return): When returning BLKmode structure in
4291	registers, copy it to a psuedo-reg instead of to hard registers.
4292
4293Tue Apr 25 15:14:58 1995  Michael Meissner  <meissner@cygnus.com>
4294
4295	* rs6000.h (LEGITIMIZE_ADDRESS): Don't create a DF address using two
4296	regs if -msoft-float or -mcpu=403.
4297
4298Tue Apr 25 15:45:44 1995  Richard Henderson  (richard@atheist.tamu.edu)
4299
4300	* m68k.md (divhi3, udivhi3, modhi3, umodhi3): Deleted
4301	these insns plus some surrounding trash.
4302 	(divmodhi4, udivmodhi4): Added these insns.
4303
4304Tue Apr 25 10:12:40 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4305
4306	* alpha.c (alpha_builtin_saveregs): Refine last change to work
4307	for both stdarg and varargs.
4308
4309	* tree.c (chain_member_purpose): Make similar to chain_member_value.
4310
4311	* Makefile.in, configure: Change "realclean" to "maintainer-clean".
4312
4313	* protoize.c: Removed __NetBSD__ from conditional.
4314	Declare strerror if HAVE_STRERROR is defined; otherwise
4315	declare sys_errlist and sys_nerr.
4316	(my_strerror): New function.
4317	(errno): Don't define if already defined as a macro.
4318	
4319	* alpha.c (current_file_function_operand): Return false if profiling.
4320
4321	* expr.c (convert_move): Don't access a hard reg in an invalid
4322	mode when doing a truncation.
4323
4324	* alpha.c (add_operand): Test for exactly the constants allowed by
4325	the constraints.
4326	* alpha.h (CONST_OK_FOR_LETTER_P, case 'L'): Reject 0x80000000.
4327
4328	* c-parse.in (initdcl, notype_initdcl): Pass attributes to
4329	start_decl; delete call to decl_attributes.
4330	* c-tree.h (start_decl): Two new tree parameters.
4331	* c-decl.c (start_decl): New args for attributes; call decl_attributes.
4332
4333	* c-decl.c (duplicate_decls): Don't look at TYPE_ACTUAL_ARG_TYPES
4334	if it is not set.
4335
4336	* xm-1750a.h: New file.
4337
4338	* alpha.c (alpha_builtin_saveregs): Add to incoming args addr
4339	if less than 6 named args, not less than or equal to.
4340
4341Mon Apr 24 15:25:19 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4342
4343	* mips-tfile.c (fatal, error): Make first arg const to avoid warning.
4344
4345	* stmt.c (expand_end_bindings): Write a BARRIER after call
4346	to abort in nonlocal handler.
4347
4348	* stmt.c (expand_decl_init): Call preserve_temp_slots to keep
4349	around any temp whose address was taken.
4350
4351Fri Apr 21 16:26:15 1995  Torbjorn Granlund  <tege@adder.cygnus.com>
4352
4353	* pa.md (call_internal_reg): Fix typos in length calculation.
4354	(call_value_internal_reg): Likewise.
4355
4356Fri Apr 21 13:17:15 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4357
4358	* config/gnu.h (STANDARD_INCLUDE_DIR): New macro.
4359	* config/mips/gnu.h (STANDARD_INCLUDE_DIR): Macro moved there.
4360
4361Fri Apr 21 08:23:58 1995  Tom Quiggle  (quiggle@lovelace.engr.sgi.com)
4362
4363	* toplev.c (lang_options): Add -I for GNAT.
4364	* gcc.c (default_compilers): Pass -I to gnat1.
4365
4366Fri Apr 21 07:58:06 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4367
4368	* tree.c (integer_all_onesp): Test to size of mode, not TYPE_PRECISION.
4369
4370	* toplev.c (main): Turn on -fforce-mem for -O2.
4371
4372	* fold-const.c ([lr]rotate_double): Replace; old versions were bogus.
4373	(fold, shift and rotate): Don't call tree_int_cst_sgn on non-integer.
4374	(fold, case LROTATE_EXPR): If constant count, convert to RROTATE_EXPR.
4375	(fold, case RROTATE_EXPR): Sometimes commute logical op with rotate.
4376	Delete pair of counteracting shifts.
4377
4378	* combine.c (simplify_logical, case AND): If still an AND, get
4379	new values for op0 and op1.
4380
4381Thu Apr 20 17:52:10 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
4382
4383	* sh.c: Completely rewritten.
4384	* sh.h (FAST_BIT, CONSTLEN_2_BIT, CONSTLEN_3_BIT, CONSTLEN_0_BIT,
4385	TARGET_FASTCODE, TARGET_CLEN3, TARGET_CLEN0, TARGET_OPTIONS): Delete.
4386	(TARGET_SWITCHES): Delete -mclen3 and -mclen0 options.
4387	(TARGET_DEFAULT): Is zero.
4388	(OVERRIDE_OPTIONS): Delete code to set max_count_si and max_count_hi.
4389	(SPECIAL_REG): New macro.
4390	(HARD_REGNO_MODE_OK): Allow any mode in any general register.
4391	(GO_IF_LEGITIMATE_ADDRESS): Delete constant + reg address case.
4392	(MOVE_RATIO): Define to 2 when TARGET_SMALLCODE.
4393	(max_si, max_hi, max_count_si, max_count_hi): Delete.
4394	* sh.md: Delete spurious constraints from all define_expands.
4395	(rotlsi3_1): Set T reg instead of clobbering it.
4396	(ashrsi3): Use expand_ashiftrt instead of gen_shifty_op.
4397	(movsi_i, movhi_i, movsf_i): Add conditions to reject patterns
4398	needing a reload.
4399	(movdi-2, movdf_k): Correct conditions to reject patterns needing
4400	a reload.
4401	([inverse_]branch_{true,false}): Pass operands to output_branch.
4402	(jump): Delete unnecessary braces.
4403	(call, call_value): Don't use expand_acall.  Force operand0 into
4404	a register.
4405
4406Thu Apr 20 12:57:16 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
4407
4408	* function.c (assign_parms): Use TREE_ADDRESSABLE rather than
4409        TYPE_NEEDS_CONSTRUCTING to decide whether a parameter needs to be
4410        passed by invisible reference.
4411
4412	* calls.c (expand_call): Ditto.  Abort if we try to pre-evaluate a
4413        parameter of TREE_ADDRESSABLE type.
4414
4415Wed Apr 19 17:50:24 1995  Torbjorn Granlund  <tege@cygnus.com>
4416
4417	* pa.h (TARGET_SWITCHES): Fix typo.
4418
4419Tue Apr 18 18:06:03 1995  Per Bothner  <bothner@kalessin.cygnus.com>
4420
4421	* expr.c (store_constructor):  Use BYTES_BIG_ENDIAN rather
4422	than BITS_BIG_ENDIAN to layout bits within bitstring.
4423	* tree.c (get_set_constructor_bytes):  Likewise.
4424
4425Tue Apr 18 17:22:46 1995  Per Bothner  (bothner@wombat.gnu.ai.mit.edu)
4426
4427	* config/m68k/{x-hp320,x-hp320g} (FIXPROTO_DEFINES):
4428	Define _HPUX_SOURCE so putenv and other functions get seen.
4429
4430Tue Apr 18 03:57:35 1995  Michael Meissner  (meissner@cygnus.com)
4431
4432	* varasm.c (weak_decls): Make this a unique structure, instead of
4433	a tree structure.
4434	(handle_pragma_weak): Don't redeclare asm_out_file.  Use new weak
4435	structure to copy name and value to.  Protect name and value by
4436	copying them to the permanent obstack.
4437	(declare_weak): Call handle_pragma_weak, instead of duplicating
4438	the code.
4439	(finish_weak): Rewrite to use new weak symbols list structure.
4440
4441	* c-pragma.h: New file to define the c-pragma.c interfaces.
4442	* c-pragma.c: Include it.
4443	* varasm.c: Include it.
4444	* c-lex.c: Include it.
4445	* cp/lex.c: Include it.
4446
4447	* varasm.c (handle_pragma_weak): No longer pass output file
4448	stream, since weak pragmas are delayed until the end of the
4449	compilation.
4450	* c-pragma.c (handle_pragma_token): Call handle_pragma_weak
4451	without file stream argument.
4452
4453	* Makefile.in (varasm.o, c-lex.o, c-pragma.o): Add dependencies on
4454	c-pragma.h.
4455
4456	* config/rs6000.md (movdf): If -msoft-float, do not generate
4457	memory to memory references, like is already done for the
4458	-mhard-float case.  Remove an extra test for -mhard-float inside
4459	of -mhard-float code.
4460
4461Tue Apr 18 06:19:50 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4462
4463	* fold-const.c (size_int): Arg is unsigned HOST_WIDE_INT.
4464	* tree.h (size_int): Likewise.
4465
4466Mon Apr 17 23:36:57 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
4467
4468	* rs6000/aix41.h: Restore March 11th changes, plus
4469        (ASM_OUTPUT_EXTERNAL): Do add [DS] or [RW], just don't emit
4470        anything.
4471	* rs6000/aix3newas.h (ASM_OUTPUT_EXTERNAL): Ditto.
4472
4473Mon Apr 17 15:58:52 1995  Per Bothner  <bothner@kalessin.cygnus.com>
4474
4475	* config/mips/x-iris (FIXPROTO_DEFINES):  Add -D_LANGUAGE_C_PLUS_PLUS.
4476	* config/mips/x-iris6:  Likewise.
4477
4478	* cpplib.c:  Rename  make_definition to cpp_define.
4479	* cpplib.h (cpp_define):  New declaration.
4480
4481	* cpplib.c (special_symbol):  For T_SPECLINE, calculate __LINE__
4482	in enclosing file buffer, not current buffer (if macro expanding).
4483	(cpp_get_token):  Fix thinko (in code for chopping unneeded space).
4484
4485Mon Apr 17 11:36:07 1995  Jim Wilson  <wilson@cygnus.com>
4486
4487	* abi64.h (CPP_SPECS): Define and use _ABI64 instead of
4488	_MIPS_SIM_ABI64.
4489	(SETUP_INCOMING_VARARGS): Set MEM_IN_STRUCT_P if big endian target.
4490	* iris6.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Define.
4491
4492	* combine.c (get_last_value): Ignore BARRIER when scanning backwards.
4493	(move_deaths): New variables before_dead and after_dead.  Set them
4494	to instructions that have valid INSN_CUID values and use in test.
4495
4496	* combine.c (subst_prev_insn): New variable.
4497	(try_combine): Set it.
4498	(get_last_value): Use it.
4499
4500	* reload.c (find_reloads): Recompute reg_equiv_address from
4501	reg_equiv_memory_loc before using it.
4502	(find_reloads_toplev, make_memloc): Likewise.
4503
4504	* expr.c (expand_builtin, case BUILT_IN_MEMCPY): Call force_operand
4505	on dest_rtx before returning it.
4506
4507	* function.c (instantiate_decls): Use temporary allocation if
4508	DECL_DEFER_OUTPUT is set.
4509
4510Sat Apr 15 23:19:03 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
4511
4512	* aoutos.h (ASM_OUTPUT_DEF): Define instead of SET_ASM_OP.
4513	* sparc/sunos4.h (ASM_OUTPUT_DEF): Ditto.
4514
4515	* varasm.c (weak_finish): Don't handle aliases.
4516	(declare_weak): Ditto.
4517	(assemble_alias): Handle aliases.
4518
4519	* c-common.c (enum attrs): Add A_ALIAS.
4520	(init_attributes): Ditto.
4521	(decl_attributes): Ditto.
4522
4523Sat Apr 15 13:26:34 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4524
4525	* calls.c (expand_call): Call preserve_temp_slots on temps
4526	made for BLKmode args returned in registers.
4527
4528	* pa.c (override_options): Fix typo.
4529
4530Sat Apr 15 12:11:46 1995  Brendan Kehoe  <brendan@cygnus.com>
4531
4532	* alpha/alpha.c (output_epilog): Initialize fp_offset to 0, and
4533	make sure it's non-zero before we try to use it to restore the
4534	frame pointer.
4535
4536Fri Apr 14 19:45:05 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
4537
4538	* ginclude/va-{clipper,pa,pyr,sparc,spur}.h (va_arg): Reorganize
4539        to avoid BIND_EXPRs and COND_EXPRs of aggregate type.
4540
4541Fri Apr 14 19:31:14 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4542
4543	* config/svr4.h (ASM_OUTPUT_SECTION_NAME): Make the section
4544 	read-only executable "ax" if DECL is a FUNCTION_DECL; read-only
4545 	"a" (previously the case always) if DECL is TREE_READONLY;
4546 	otherwise writable "aw".
4547
4548Fri Apr 14 18:49:11 1995  Linus Torvalds  <Linus.Torvalds@cs.Helsinki.FI>
4549
4550	* alpha.md (probe_stack): Probe with write, not read. 
4551	(allocate_stack): Update and correct stack probe code.
4552	* alpha.c (output_prolog): Changed stack probe at function entry.
4553
4554Fri Apr 14 18:42:34 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4555
4556	* jump.c (delete_insn): When deleting after label, delete
4557	a BARRIER as well.
4558
4559Fri Apr 14 14:40:48 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
4560
4561	* toplev.c (compile_file): Call weak_finish.
4562
4563	* c-common.c (enum attrs): Add A_WEAK.
4564	(init_attributes): Ditto.
4565	(decl_attributes): Support __attribute__ ((weak)) by
4566        calling declare_weak.
4567
4568	* sparc/sunos4.h (HANDLE_PRAGMA_WEAK, WEAK_ASM_OP, SET_ASM_OP):
4569        Define to support weak symbols with -fgnu-linker.
4570	* aoutos.h: Ditto.
4571
4572	* varasm.c (handle_pragma_weak): Add declared weak symbols to
4573        weak_decls rather than emitting them immediately.
4574	(declare_weak): Add the indicated declaration to weak_decls.
4575	(weak_finish): Emit .weak directives for any weak symbols.
4576
4577	* libgcc2.c: The C++ free-store management functions are weak.
4578
4579Fri Apr 14 13:00:29 1995  Michael Meissner  (meissner@cygnus.com)
4580
4581	* rs6000/rs6000.c (output_prolog): For eabi systems, emit main's
4582	call to __eabi before setting up the minimal TOC used with the
4583	-mrelocatable support.
4584
4585	* rs6000/eabi.h (INVOKE__main): Don't define any more,
4586	output_prolog will emit the call.
4587
4588Fri Apr 14 09:09:03 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4589
4590	* alpha.c (call_operand): Any reg is valid for NT.
4591	(output_prologue): Never need GP for Windows/NT.
4592	Set SYMBOL_REF_FLAG in current function decl.
4593
4594Thu Apr 13 20:19:30 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
4595
4596	* alpha/xm-alpha.h (HAVE_VPRINTF): Define.
4597	(HAVE_PUTENV): Define.
4598	(POSIX): Define.
4599
4600Thu Apr 13 19:57:44 1995  Doug Evans  <dje@cygnus.com>
4601
4602	* emit-rtl.c (gen_sequence): If the insn has a non-null
4603	CALL_INSN_FUNCTION_USAGE field, output it as a sequence so the
4604	latter isn't discarded.
4605
4606	* c-parse.in: Update expected conflict count.
4607
4608Thu Apr 13 08:10:20 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4609
4610	* configure.bat: Arg 2 is which machine (i386 or alpha).
4611	* configure (alpha-*-winnt3*): New configuration.
4612	* alpha.c: Don't #include stamp.h for WINNT.
4613	(input_operand, case CONST): Allow ptr_mode and DImode.
4614	* alpha.h (WINDOWS_NT): Provide default definition.
4615	(ASM_OUTPUT_INT): Use output_addr_const.
4616	(ASM_OUTPUT_ADDR_DIFF_ELT): Use .long for NT.
4617	* alpha.md (calll, tablejump, movsi): New variants for NT.
4618	* alpha/winnt.h, alpha/xm-winnt.h, alpha/x-winnt: New files.
4619	* alpha/config-nt.bat, alpha/config-nt.sed: New files.
4620	* i386/config-nt.bat: Add Ada fragments to Makefile.
4621	* i386/config-nt.sed: Adjust for deletion of config.run in Makefile.in
4622	Change version to 2.6.3.
4623	Add some missing tabs.
4624	* winnt/winnt.h (TARGET_MEM_FUNCTIONS): Define.
4625	(LINK_SPEC): Delete "align:0x1000".
4626	* winnt/xm-winnt.h (OBJECT_SUFFIX): Define.
4627	* ginclude/stdarg.h, ginclude/varargs.h: Clean up code that
4628	defines *DEFINED* symbols.
4629
4630	* configure (a29k-*-sym1*): Same as a29k-*-bsd*.
4631	* a29k.h (ASM_OUTPUT_SECTION_NAME): New macro.
4632
4633Wed Apr 12 14:36:03 1995  Jim Wilson  <wilson@cygnus.com>
4634
4635	* dbxout.c (dbxout_type_fields): Correct arguments to CHARS macro
4636	in flag_minimal_debug case.
4637	(dbxout_symbol_name): Use DECL_ASSEMBLER_NAME unconditionally.
4638	* sdbout.c (sdbout_record_type_name): Correct indentation.
4639	(sdbout_symbol): Use DECL_ASSEMBLER_NAME unconditionally.
4640	(sdbout_one_type): Likewise.
4641
4642Tue Apr 11 13:24:13 1995  Per Bothner  <bothner@kalessin.cygnus.com>
4643
4644	* fix-header.c (main):  Fix loop over required_functions_list.
4645	(fatal):  Also print inc_filename.
4646
4647	* cpplib.c (cpp_push_buffer):  Added missing initializatuon of buf.
4648	(cpp_file_buffer):  Compare against CPP_NULL_BUFFER, not NULL.
4649	(finclude):  No longer call cpp_push_buffer - let callers do it.
4650	(do_include):  Add call to cpp_push_buffer.
4651	(push_parse_file):  Call cpp_push_buffer early, so initial
4652	defines can use file and line from a valid cpp_buffer.
4653	(nreverse_pending):  New function.
4654	(push_parse_file):  Use nreverse_pending.
4655	(push_parse_file):  For -include files, just push them in reverse
4656	order - we don't need to scan them now.
4657	(cpp_error_from_errno, cpp_perror_with_name):  Don't emit extra '\n'.
4658
4659Tue Apr 11 13:36:44 1995  Jim Wilson  <wilson@cygnus.com>
4660
4661	* configure (mips-dec-mach3): Add.
4662
4663	* sh.c (shiftby_operand): Delete.
4664	* sh.h (TARGET_SWITCHES): -m3 and -m3l also set SH2_BIT.
4665	(OVERRIDE_OPTIONS): Don't add CPU_SH2 to CPU_SH3 when TARGET_SH3.
4666	* sh.md (ashlsi3): Use nonmemory_operand as a predicate instead of
4667	shiftby_operand.  Don't use shiftby_operand in the output statement.
4668	(lshrsi3): Likewise.
4669
4670	* c-decl.c (poplevel): Do output inline function if
4671	DECL_ABSTRACT_ORIGIN points to itself.
4672
4673	* varasm.c (output_constant): Cast assemble_string argument to char *.
4674
4675Mon Apr 10 14:29:28 1995  Torbjorn Granlund  <tege@adder.cygnus.com>
4676
4677	* recog.c (constrain_operands, case 'E'): Make this work like
4678	constraint character `F' when REAL_ARITHMETIC is defined.
4679	* regclass.c (record_reg_classes, case 'E'): Likewise.
4680	* reload.c (find_reloads, case 'E'): Likewise.
4681
4682Mon Apr 10 14:30:31 1995  Michael Meissner  <meissner@cygnus.com>
4683
4684	* rs6000/aix3newas.h, rs6000/aix41.h: Eliminate March 11th changes
4685	to undefine ASM_OUTPUT_EXTERNAL{,_LIBCALL}, since this causes the
4686	compiler not to bootstrap.
4687
4688Mon Apr 10 07:17:39 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4689
4690	* cppalloc.c: #include config.h.
4691	* cppexp.c: Add declarations of xmalloc and xrealloc.
4692	(cpp_parse_expr): Cast args to bcopy to char *.
4693	* cpphash.c: Add declaration of xmalloc.
4694	* cpplib.c (init_parse_options, cpp_reader): Cast args to bcopy,
4695	bcmp, and bzero to char *.
4696	(add_import, push_parse_file, init_parse_file): Likewise.
4697
4698	* c-common.c (enum attrs): New attribute, A_NOCOMMON.
4699	(init_attribute): Initialize it.
4700	(decl_attributes): Implement it.
4701	* varasm.c (make_decl_rtl): Allow section attribute if -fno-common
4702	or variable is not to be placed in common for some other reason.
4703
4704	* combine.c (simplify_set): Don't move a SUBREG to dest if it
4705	is changing the size of a hard reg in CLASS_CANNOT_CHANGE_SIZE.
4706
4707	* reload.c (find_equiv_reg): If goal is a pseudo that got memory,
4708	a store into memory makes it invalid.
4709	* reload1.c (reload_as_needed): Call forget_old_reloads_1 on
4710	pattern before reg elimination.
4711
4712Mon Apr 10 00:26:14 1995  Jeffrey A. Law  <law@snake.cs.utah.edu>
4713
4714	* pa.c (pa_reorg): Bump label use count for each entry in an
4715	exploded ADDR_VEC.
4716
4717Sun Apr  9 09:22:51 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4718
4719	* i386.md (adddi3, subdi3): Need scratch reg whenever operand 0 in
4720	mem and operands 1 not '0'.
4721	(subdi3): Don't treat two non-equal MEMs as non-aliasing.
4722
4723Sat Apr  8 22:53:38 1995  Jeffrey A. Law  <law@snake.cs.utah.edu>
4724
4725	* pa.c (pa_reorg): Fix typo.
4726
4727Sat Apr  8 19:36:36 1995  Michael Meissner  <meissner@cygnus.com>
4728
4729	* rs6000/rs6000.h (SELECT_SECTION): TREE_CODE_CLASS must be called
4730	with a tree code, not a tree value.
4731
4732Sat Apr  8 12:41:01 1995  Mike Stump  <mrs@cygnus.com>
4733
4734	* cpphash.c: Don't use const on compilers that don't support it.
4735
4736Sat Apr  8 16:32:22 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4737
4738	* expr.c (expand_increment): Handle case where INCREMENTED
4739	has a non-trivial conversion.
4740
4741Fri Apr  7 19:33:21 1995  Phil Nelson  (phil@cs.wwu.edu)
4742
4743	* ns32k.h (TRAMPOLINE_TEMPLATE, TRANSFER_FROM_TRAMPOLINE):
4744	Fix assembler syntax errors.
4745
4746Fri Apr  7 19:27:23 1995  Pat Rankin  (rankin@eql.caltech.edu)
4747
4748	* cccp.c (VMS_fstat, VMS_stat):  New functions.
4749
4750Fri Apr  7 19:25:21 1995  Paul Eggert  <eggert@twinsun.com>
4751
4752	* cccp.c (collect_expansion): If traditional, set stringify
4753	member to SHARP_TOKEN regardless of the value of
4754	stringify_sharp_token_type.
4755
4756Fri Apr  7 07:48:35 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4757
4758	* cse.c (simplify_unary_operation): #ifdef POINTERS_EXTEND_UNSIGNED,
4759	handle sign- or zero-extending addresses.
4760
4761	* optabs.c (init{,_integral,_floating,_complex}_libfuncs):
4762	Change SUFFIX to "char" to avoid confusion with prototype.
4763
4764	* explow.c (convert_memory_address): No longer static.
4765	New arg, TO_MODE.
4766	Do something special for SYMBOL_REF, LABEL_REF, and CONST.
4767	(memory_address): Add extra arg to call to convert_memory_address.
4768	* rtl.h (convert_memory_address): Add extra arg.
4769	* expr.c (expand_expr, case ADDR_EXPR): Always call
4770	convert_memory_address when converting; add extra arg.
4771	* stmt.c (expand_computed_goto): Convert from ptr_mode to Pmode.
4772
4773	* gcc.c (OBJECT_SUFFIX): Default now ".o", not "o".
4774	(all specs): Remove "." before %O; use %O in a few missing cases.
4775	* i386/os2.h (OBJECT_SUFFIX): Delete from here.
4776	* i386/xm-os2.h (OBJECT_SUFFIX): Move to here; now has period.
4777
4778	* Makefile.in (STAGESTUFF): Use $(exeext) for executables.
4779
4780Fri Apr  7 03:32:29 1995  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
4781
4782	* config.sub: Accept -lites* as op sys.
4783
4784Thu Apr  6 23:08:50 1995  Per Bothner  <bothner@kalessin.cygnus.com>
4785
4786	* cpplib.c (bcopy, bzero, bcmp):  Remove #undefs.
4787	* cppalloc.c (xcalloc):  Re-implement using calloc,
4788	rather than malloc+bzero.
4789	* cpplib.c (SELF_DIR_DUMMY):  New macro.
4790	(do_include):  Don't pass searchptr to finclude if it is dsp,
4791	since that is on the stack, and would cause a dangling pointer.
4792	If handling #include_next, recognize SELF_DIR_DUMMY.
4793
4794Fri Apr  7 00:54:24 1995  Jeffrey A. Law  <law@snake.cs.utah.edu>
4795
4796	* pa.h (MACHINE_DEPENDENT_REORG): Define.
4797	* pa.md (switch_jump): New pattern for jumps which implement
4798	a switch table.
4799	* pa.c (pa_reorg): New function to explode jump tables.
4800	(pa_adjust_insn_length): Account for jumps in switch tables with
4801	unfilled delay slots.
4802
4803Thu Apr  6 14:31:10 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
4804
4805	* c-typeck.c (build_binary_op): Don't call common_type for
4806        uncommon pointer types.
4807
4808Wed Apr  5 13:53:17 1995  Per Bothner  <bothner@kalessin.cygnus.com>
4809
4810	Re-write fixproto/fix-header/etc to use cpplib:
4811	* fix-header.c:  Comment out support for adding missing extern "C"
4812	using #ifdef ADD_MISSING_EXTERN_C instead of #if 0.
4813	* fixproto:  Removed case of required functions.   Instead use ...
4814	* fix-header.c (std_include_table):  ... new required-functions table.
4815	(cpp_file_line_for_message, cpp_print_containing_files, cpp_message):
4816	New stub functions, to intercept cpplib error message.
4817	* fixproto:  Don't call $CPP, since fix-header now incorporates cpplib.
4818	* gen-protos.c (fatal, hashf):  New functions.
4819	(main):  Use hashf, instead of hash.
4820	* scan-decls.c (scan_decls, skip_to_closing_brace):  Re-write to
4821	take a cpp_reader* as argument, not a FILE*.
4822	* scan.h (hash):  Make parameter const.
4823	* scan.c (hash):  Removed.
4824	* scan.c (memory_full, xmalloc, xrealloc):  Removed.
4825	Use functions from cppalloc.c instead.
4826	* Makefile.in (gen-prtos, fix-header, stmp-fixproto):  Update.
4827
4828Wed Apr  5 13:24:14 1995  Per Bothner  <bothner@kalessin.cygnus.com>
4829
4830	* cpplib.c (cpp_get_token): If traditional, return after comment,
4831	instead of reading more, so end-of-line can be peeked at.
4832	* cpperror.c (cpp_file_line_for_message, cpp_message):  New
4833	functions, that do the actual printing of error messages.
4834	(cpp_print_file_and_line, cpp_error, cpp_warning, cpp_pedwarn,
4835	cpp_error_with_line, cpp_warning_with_line, cpp_pedwarn_with_line,
4836	cpp_pedwarn_with_file_and_line, cpp_error_from_errno, my_strerror,
4837	cpp_perror_with_name):  Re-write to use cpp_file_line_for_message
4838	and cpp_message, and move to cpplib.c.
4839
4840Tue Apr  4 23:35:49 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4841
4842	* config/gnu.h (GNU_CPP_PREDEFINES): Remove -D__HURD__.
4843
4844Tue Apr  4 17:15:54 1995  Jeffrey A. Law  <law@mole.gnu.ai.mit.edu>
4845
4846	* pa.h (DO_GLOBAL_DTORS_BODY): Fix pointer -> integer assignment
4847	problem.
4848
4849	* reorg.c (fill_simple_delay_slots): Don't use a JUMP_INSN
4850	a the target of another JUMP_INSN to fill a delay slot.
4851
4852Mon Apr  3 19:03:48 1995  Torbjorn Granlund  <tege@adder.cygnus.com>
4853
4854	* cse.c (simplify_unary_operation): Sign-extend constants when
4855	they have the most significant bit set for the target.
4856
4857	* m68k.md (umulsi3_highpart): Test for CONST_INT and CONST_DOUBLE,
4858	not CONSTANT_P.
4859	(smulsi3_highpart): Likewise.
4860	* m68k.c (const_uint32_operand): New function.
4861	(const_sint32_operand): New function.
4862	* m68k.md (const_umulsi3_highpart): Use const_uint32_operand instead
4863	of immediate_operand for op3.  Delete mode.
4864	(const_smulsi3_highpart): Analogous change.
4865
4866Mon Apr  3 19:03:48 1995  Jim Wilson  <wilson@cygnus.com>
4867
4868	* cse.c (simplify_binary_operation): Sign-extend constants when
4869	they have the most significant bit set for the target.
4870
4871	* combine.c (force_to_mode, case PLUS): Sign extend masks that are
4872	negative in OP_MODE.
4873	(simplify_and_const_int): Sign-extend constants when they have the
4874	most significant bit set for the target.
4875	(merge_outer_ops): Likewise.
4876	(simplify_shift_const): Likewise.
4877
4878Mon Apr  3 18:23:48 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
4879
4880	* toplev.c (lang_options): Add -f{no-,}repo.
4881
4882Mon Apr  3 18:13:15 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4883
4884	* combine.c (nonzero_bits, case REG): Check POINTERS_EXTEND_UNSIGNED.
4885	(num_sign_bit_copies, case REG): Likewise.
4886	* explow.c (convert_memory_address): New function.
4887	(memory_address): Call if it needed.
4888	(promote_mode, case POINTER_TYPE): Use Pmode and pointer extension.
4889	(allocate_dynamic_stack_space): Convert size from ptr_mode.
4890	* expr.c (clear_storage, expand_assignment, store_{expr,constructor}):
4891	Use ptr_mode instead of Pmode in some places.
4892	(expand_expr, expand_builtin): Likewise.
4893	(push_block, store_expr): Convert size to Pmode.
4894	(expand_expr, case ADDR_EXPR): Convert from Pmode to ptr_mode.
4895
4896Mon Apr  3 18:00:52 1995  Jim Wilson  <wilson@cygnus.com>
4897
4898	* explow.c (allocate_dynamic_stack_space): Correct typo in last
4899	change.
4900
4901	* sh.c (gen_shifty_op, case ASHIFTRT): Return 0 if shift count is not
4902	a constant.
4903
4904Mon Apr  3 12:17:10 1995  Michael Meissner  (meissner@cygnus.com)
4905
4906	* expmed.c (extract_bit_field): When converting a SUBREG into a
4907	REG, if the system is big endian, adjust the bit offset
4908	appropriately.
4909
4910Mon Apr  3 00:08:45 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4911
4912	* config/i386/linux.h: Include "config/linux.h" instead of
4913 	"linux.h", to avoid recursion.
4914
4915Sun Apr  2 23:50:27 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4916
4917	* config/i386/gnuelf.h: Include i386/linux.h instead of
4918 	i386/linuxelf.h.
4919
4920Sun Apr  2 17:35:10 1995  Jim Wilson  <wilson@cygnus.com>
4921
4922	* cse.c (simplify_relational_operation): Don't simplify A-B for
4923	compare of A and B when the compare is unsigned.
4924
4925Sun Apr  2 08:23:38 1995  Paul Eggert  <eggert@twinsun.com>
4926
4927	* fixincludes (stdio.h): BSDI 2.0 changed the spelling of _VA_LIST_
4928	to _BSD_VA_LIST_.
4929
4930Sun Apr  2 07:57:28 1995  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
4931
4932	* i386/xm-bsd386.h: New file.
4933	* configure (i[345]86-*-bsd*): Add xm_file.
4934
4935	* gcc.c (default_compilers): Pass -W and -w to gnat1.
4936
4937	* winnt/winnt.h (STDC_VALUE): Add #undef.
4938	* i386/winnt.h (LIB_SPEC): Likewise.
4939
4940Sun Apr  2 07:55:25 1995  Douglas Rupp  (drupp@cs.washington.edu)
4941
4942	* i386/winnt.h (RETURN_POPS_ARGS, ENCODE_SECTION_INFO): Call
4943	chain_member_purpose, not chain_member_value.
4944	(ASM_FILE_START, LIB_SPEC): Move to here.
4945	* winnt/winnt.h (ASM_FILE_START, LIB_SPEC): Delete from here.
4946	* tree.c (chain_member_purpose): New function.
4947
4948Sat Apr  1 12:19:14 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
4949
4950	* c-typeck.c (build_binary_op): New variable build_type controls
4951	type given to expression when created.  Set to integer_type_node for
4952	comparison ops instead of result_type so result_type still holds type
4953	in which comparison is done.  When checking for comparison between
4954	signed and unsigned, use result_type rather than (possibly shortened)
4955	type of op0.  Don't warn about equality comparison of signed operand
4956	to unsigned constant that fits in signed type.
4957
4958Sat Apr  1 09:47:02 1995  Douglas Rupp  (drupp@cs.washington.edu)
4959
4960	* i386/winnt.h (CPP_PREDEFINES): Add definitions for __stdcall
4961	and __cdecl.
4962	* winnt/winnt.h (LIB_SPEC): Add OLDNAMES.LIB.
4963	* winnt/xm-winnt.h: Remove unneeded #define's for non-ANSI functions.
4964	* fixinc.winnt: Remove unneeded fixes relating to __stdcall.
4965
4966	* objc/Makefile (SHELL): New definition.
4967
4968Sat Apr  1 08:25:26 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
4969
4970	* cse.c (cse_insn): When emitting a BARRIER, don't put it after
4971	a deleted insn.
4972
4973	* reload.c (push_reload): Initialize secondary_{in,out}_icode.
4974
4975	* gcc.c (print_multilib_info): Don't use LAST_PATH if not set.
4976
4977Sat Apr  1 08:15:59 1995  Pat Rankin  (rankin@eql.caltech.edu)
4978
4979	* vax.md (extv, extzv): Don't use immediate value for operand 1.
4980
4981Sat Apr  1 07:48:29 1995  Yury Shevchuk  (sizif@botik.yaroslavl.su)
4982
4983	* stmt.c (expand_asm_operands): Properly ignore invalid reg in clobber.
4984
4985Sat Apr  1 07:02:24 1995  Paul Eggert  <eggert@twinsun.com>
4986
4987	* cccp.c: General code cleanup.
4988	Add prototypes for static functions.
4989	Remove unnecessary casts to (char *); add casts to (U_CHAR *).
4990	Add parentheses suggested by `gcc -Wparentheses'.
4991	Rename local variables as suggested by `gcc -Wshadow'.
4992	<fcntl.h>, <stdlib.h>, <string.h>, <unistd.h>: New includes.
4993	<sys/time.h>, <sys/resource.h>: Include only if defined(RLIMIT_STACK).
4994	<time.h>: Include, unless <sys/time.h> already does.
4995	(HAVE_FCNTL_H, HAVE_STDLIB_H, HAVE_SYS_TIME_H): New symbols.
4996	(HAVE_UNISTD_H, STDC_HEADERS, TIME_WITH_SYS_TIME): Likewise.
4997	(__attribute__, PROTO, VA_START, PRINTF_ALIST, PRINTF_DCL): New macros.
4998	(PRINTF_PROTO{,_1,_2,_3}, DO_PROTO): Likewise.
4999	(bcopy, bzero, bcmp): If #defined by configuration file, use that.
5000	If STDC_HEADERS is defined, use standard C functions.
5001	If BSTRING is defined, or USG and VMS are not defined, use
5002	the C library.  Otherwise, use my_bcopy, my_bzero, my_bcmp.
5003	(localtime): Remove no-longer-necessary explicit declaration.
5004	(getenv, index, rindex): Don't declare explicitly if the
5005	appropriate system header should declare it.
5006	(fdopen): Remove no-longer-used declaration.
5007	(vprintf): Define a subsitute macro if !defined(HAVE_VPRINTF).
5008	(main): Replace `fdopen (dup (fileno (stdout)), "w"))'
5009	with `stdout'.
5010	(get_lintcmd, rescan, create_definition): Use bcmp instead of strncmp
5011	when both operands are known to be free of null bytes.
5012	(check_macro_name, compare_defs, collect_expansion): Likewise.
5013	(do_assert, compare_token_lists, assertion_lookup, do_line): Likewise.
5014	(skip_if_group, lookup): Likewise.
5015	(rescan): Remove unused label `startagain'.
5016	Abort instead of printing nonsense if the stack is corrupted
5017	when there was an unterminated successful conditional.
5018	(pcfinclude): Include explicit double-cast through GENERICPTR
5019	to identify particularly egregious type puns.
5020	(create_definition, do_define, check_macro_name): Use %.*s
5021	printf format to avoid painful copying-and-casting.
5022	(do_once): Return void, not (unused) int.
5023	(do_ident, do_pragma, do_sccs): Accept extra arguments so that
5024	all directive-handler's types match.
5025	(do_sccs): Define only if SCCS_DIRECTIVE is defined.
5026	(skip_if_group, dump_single_macro): Add `default: break;' to
5027	keep -Wswitch happy.
5028	(error, warning, error_with_line, vwarning_with_line, pedwarn): Use
5029	stdarg/vararg/vfprintf instead of passing bogus char * args around.
5030	(pedwarn_with_line, pedwarn_with_file_and_line, fatal):  Likewise.
5031	(verror, vwarning, verror_with_line, vwarning_with_line): New fcns.
5032	(dump_single_macro): Abort if ap points to garbage.
5033	(make_definition, make_undef, make_assertion): Parameter now char *.
5034	(xmalloc, xrealloc, xcalloc, savestring, index0): Make sizes size_t
5035	instead of unsigned; make pointer parameters GENERICPTR, not char *.
5036	(xcalloc): Use bzero to clear memory instead of using own loop.
5037
5038Fri Mar 31 08:33:07 1995  Ken Raeburn  (raeburn@wombat.gnu.ai.mit.edu)
5039
5040	* longlong.h (umul_ppmm mc68000): Use %# instead of #.
5041
5042Fri Mar 31 06:37:54 1995  Michael Meissner  (meissner@cygnus.com)
5043
5044	* stor-layout.c (layout_decl): Implment -fpack-struct.
5045	(layout_record): Ditto.
5046
5047	* flags.h (flag_pack_struct): New flag variable.
5048
5049	* toplev.c (flag_pack_struct): New flag variable.
5050	(f_options): Add -fpack-struct support.
5051
5052	* Makefile.in (stor-layout.o): Add flags.h dependency.
5053
5054Fri Mar 31 08:40:16 1995  Douglas Rupp  (drupp@cs.washington.edu)
5055
5056	* configure (i[345]86-*-winnt3*): Add tmake_file.
5057	* i386/x-winnt (winnt.o): Deleted.
5058	* i386/t-winnt: New file.
5059
5060Fri Mar 31 07:26:37 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
5061
5062	* m68k/netbsd.h, m68k/hp3bsd44.h: Remove #include of machine/ansi.h.
5063
5064	* configure (a29k-*-bsd): Set tmake_file to t-libc-ok.
5065
5066	* stmt.c (expand_asm_operands): Properly handle output that can't
5067	be directly written into.
5068
5069	* c-parse.in (structsp): Correct error in last change.
5070	* c-common.c (init_attributes): A_FORMAT is only for decls.
5071
5072Thu Mar 30 18:27:34 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
5073
5074	* libgcc2.c: Remove explicit 0-initializations of static variables.
5075
5076Thu Mar 30 18:22:39 1995  Fergus Henderson  <fjh@cs.mu.oz.au>
5077
5078	* c-typeck.c (internal_build_compound_expr): Warn if LHS of comma
5079	expression has no side effects, or computes value which is not used.
5080	* stmt.c (make warn_if_unused_value): No longer static.
5081	* tree.h (warn_if_unused_value): Add declaration.
5082
5083Thu Mar 30 18:15:11 1995  Jim Wilson  <wilson@cygnus.com>
5084
5085	* combine.c (get_last_value): Revert back to use prev_nonnote_insn
5086	instead of prev_real_insn.  Modify test that ignores USE insns.
5087
5088	* rs6000.h (SELECT_SECTION): Apply constant DECL_INITIAL test
5089	only to DECLs.
5090
5091	* explow.c (allocate_dynamic_stack_space): Test STACK_BOUNDARY against
5092	BIGGEST_ALIGNMENT at run time instead of at compile time.
5093	Give MUST_ALIGN macro a value, and test this value in if statements.
5094
5095Thu Mar 30 08:59:56 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
5096
5097	* c-parse.in: Now have 27 shift/reduce conflicts.
5098	(attribute_list): Just make chain of all attributes.
5099	(attrib): Consistently put name as PURPOSE, args, if any, as VALUE.
5100	(structsp): Allow attributes on any struct or union.
5101	* c-common.c (enum attrs): New enum class.
5102	(attrtab, attrtab_idx): New variables.
5103	(add_attribute, init_attributes): New functions.
5104	(decl_attributes): Major rewrite.
5105	* tree.c (valid_machine_attribute): Now receive name and args.
5106
5107Thu Mar 30 07:20:14 1995  Paul Eggert  <eggert@twinsun.com>
5108
5109	* protoize.c: Use the phrase `preprocessing directive' consistently.
5110	* cccp.c (handle_directive, do_line, skip_if_group): Likewise.
5111	(output_line_directive): Renamed from output_line_command.
5112	(no_line_directives): Renamed from no_line_commands.
5113
5114	* cccp.c (rescan): Don't recognize preprocessing directives
5115	within macro args.  Warn if one is found.
5116
5117Thu Mar 30 06:20:36 1995  H.J. Lu   (hjl@nynexst.com)
5118
5119	* configure (i[345]86-*-linux*): Set xmake_file=x-linux,
5120	tm_file=i386/linux.h, and don't set extra_parts.
5121	(i[345]86-*-linux*aout*): New configuration.
5122	(i[345]86-*-linuxelf): Deleted.
5123	* config/linux{,-aout}.h, config/x-linux, config/xm-linux.h: New files.
5124	* config/i386/linux-aout.h: New file.
5125	* config/i386/linux.h: Extensive modifications to use ELF format
5126	as default.
5127	(LIB_SPEC): Don't use libc_p.a for -p. don't use libg.a
5128	unless for -ggdb.
5129	(LINUX_DEFAULT_ELF): Defined.
5130	* config/i386/linuxelf.h,config/i386/x-linux: Files deleted.
5131	* config/i386/xm-linux.h: Just include xm-i386.h and xm-linux.h.
5132
5133Wed Mar 29 19:09:36 1995  Mike Stump  <mrs@cygnus.com>
5134
5135	* libgcc2.c (__throw_type_match): Update to use new calling convention.
5136
5137Wed Mar 29 14:53:23 1995  Jim Wilson  <wilson@cygnus.com>
5138
5139	* gcc.c (process_command): Delete code modifying gcc_exec_prefix.
5140	(main): Put it here after last use of gcc_exec_prefix.  For cross
5141	compiler, set startfile_prefixes if gcc_exec_prefix is set and
5142	standard_startfile_prefix is a relative path.
5143
5144	* combine.c (make_compound_operation, AND case): Undo July 7, 1994
5145	change.
5146
5147	* mips/mips.md (call_internal1, call_value_internal1): Move %* from
5148	start of assembler output to immediately before the jal.
5149
5150	* mips/mips.c (function_prologue): Put SDB_DEBUGGING_INFO ifdef around
5151	code for SDB_DEBUG support.
5152	(mips_select_rtx_section, mips_select_section): Change rdata_section
5153	to READONLY_DATA_SECTION and sdata_section to SMALL_DATA_SECTION.
5154	* mips/mips.h (SMALL_DATA_SECTION): Define.
5155
5156	* reorg.c (mark_referenced_resources): Make setjmp use all registers.
5157
5158	* flow.c (mark_used_regs, case SUBREG): Only fall through to REG case
5159	if operand is a REG.
5160
5161	* i960/i960.h (TARGET_SWITCHES): Make -mold-align set
5162	TARGET_FLAG_STRICT_ALIGN.
5163	(STRICT_ALIGNMENT): Test TARGET_STRICT_ALIGN.
5164
5165	* sh/sh.c (andcosts): Modify costs to match the hardware, and add
5166	explanatory comments.
5167
5168	* sparc/sol2.h (CPP_PREDEFINES): Add -D__SVR4.
5169
5170Wed Mar 29 14:30:30 1995  Michael Meissner  <meissner@cygnus.com>
5171
5172	* rs6000/rs6000.md (movsf): When moving to/from integer registers,
5173	don't move floating point to memory if it is being simulated with
5174	-msoft-float.
5175
5176Wed Mar 29 06:47:36 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
5177
5178	* c-parse.in (initdcl): Only call decl_attributes once.
5179	* c-common.c (decl_attributes): Clean up test for __mode__.
5180
5181Tue Mar 28 08:34:37 1995  John Hassey  (hassey@dg-rtp.dg.com)
5182
5183	* i386.md (adddi3): Don't treat two non-equal MEMs as non-aliasing.
5184
5185Tue Mar 28 08:20:49 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
5186
5187	* a29k.h (CONSTANT_ADDRESS_P): Provide consistent definition.
5188
5189Tue Mar 28 07:26:41 1995  Paul Eggert <eggert@twinsun.com>
5190
5191	* cccp.c (do_xifdef, do_endif): Remove unnecessary pointer comparisons.
5192
5193Mon Mar 27 20:45:15 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
5194
5195	* calls.c (expand_call, store_one_arg): Don't set KEEP in calls
5196	to assign_stack_temp.
5197	* function.c (preserve_temp_slots): Clear ADDR_TAKEN on item
5198	that we are preserving.
5199
5200Mon Mar 27 14:39:35 1995  Ian Lance Taylor  <ian@cygnus.com>
5201
5202	* mips/mips.h (FIRST_PSEUDO_REGISTER): Increment.
5203	(FIXED_REGISTERS, CALL_USED_REGISTERS): Add new register.
5204	(MD_REG_LAST): Increment.
5205	(ST_REG_FIRST, ST_REG_LAST): Increment.
5206	(HILO_REGNUM): Define.
5207	(enum reg_class): Add HILO_REG.
5208	(REG_CLASS_NAMES): Add "HILO_REG".
5209	(REG_CLASS_CONTENTS): Add HILO_REG initializer, and adjust ST_REGS
5210	and ALL_REGS initializers.
5211	(SECONDARY_RELOAD_CLASS): Remove.
5212	(SECONDARY_INPUT_RELOAD_CLASS): Define.
5213	(SECONDARY_OUTPUT_RELOAD_CLASS): Define.
5214	(REGISTER_MOVE_COST): Treat HILO_REG as MD_REGS.
5215	(REGISTER_NAMES): Add initialization line.
5216	(DEBUG_REGISTER_NAMES): Add "accum".
5217	* mips/mips.md: For each instruction which sets HI or LO, clobber
5218	HILO_REGNUM with (clobber (match_scratch:MODE N "=a")).  Change
5219	each explicit reference to register 66 to register 67.
5220	(mulsidi3): Change to define_expand.
5221	(mulsidi3_internal): New name of old mulsidi3.
5222	(mulsidi3_64bit): New insn.
5223	(umulsidi3): Change to define_expand.
5224	(umulsidi3_internal): New name of old umulsidi3.
5225	(umulsidi3_64bit): New insn.
5226	(madddi_64bit, umaddi_64bit): New insns.
5227	(movdi_internal2): Add case for setting HILO_REG to zero.
5228	(reload_indi, reload_outdi): New define_expands.
5229	(movsi_internal1, movsi_internal2): Add cases for setting MD_REGS
5230	to zero, and for setting a general reg to HILO_REG.
5231	(reload_outsi): New define_expand.
5232	* mips/mips.c (mips_reg_names): Add "accum".
5233	(mips_sw_reg_names): Likewise.
5234	(mips_regno_to_class): Map HILO_REGNUM to HILO_REG.
5235	(mips_move_1word): Handle moving HILO_REGNUM to a general
5236	register.  Make sure that the normal MD_REG cases aren't used for
5237	HILO_REGNUM.  Handle moving zero to a MD_REG.
5238	(mips_move_2words): Make sure that the normal MD_REG cases aren't
5239	used for HILO_REGNUM.  Handle moving zero to a MD_REG.
5240	(override_options): Set mips_char_to_class for 'a' and 'b'.
5241	(mips_secondary_reload_class): Add in_p argument.  Handle
5242	HILO_REGNUM.
5243
5244Mon Mar 27 07:16:05 1995  Warner Losh  <imp@village.org>
5245
5246	* gcc.c: Removed __NetBSD__ from conditional.
5247	Declare strerror if HAVE_STRERROR is defined; otherwise
5248	declare sys_errlist and sys_nerr.
5249	(my_strerror): New function.
5250
5251Fri Mar 24 18:08:14 1995  Jason Merrill  <jason@python.cygnus.com>
5252
5253	* i386/linux.h (LIB_SPEC): Don't try to link with libraries we
5254	know only exist in archive form unless -static.
5255
5256Fri Mar 24 16:12:16 1995  Doug Evans  <dje@cygnus.com>
5257
5258	* Makefile.in (multilib.h): Depend on Makefile, not config.status.
5259
5260Fri Mar 24 15:01:17 1995  Michael Meissner  <meissner@cygnus.com>
5261
5262	* rs6000/rs6000.h (TARGET_MULTIPLE_SET): New target_flags bit that
5263	indicates -mmultiple or -mno-multiple was explicitly passed by the
5264	user, and not set as part of the cpu defaults.
5265	(TARGET_SWITCHES): Set TARGET_MULTIPLE_SET bit for both -mmultiple
5266	and -mno-multiple.
5267
5268	* rs6000/rs6000.c (rs6000_override_options): If -mmultiple or
5269	-mno-multiple was explicitly used, don't override the setting with
5270	the processor default.
5271
5272Wed Mar 22 21:42:13 1995  Doug Evans  <dje@cygnus.com>
5273
5274	* i960/i960.c (i960_function_arg_advance): Ensure all regs marked
5275	as used if stack is also used (for va_start).
5276	(i960_setup_incoming_varargs): Rewrite to be similar to Intel's
5277	version, but don't allocate reg block unless necessary.
5278	* ginclude/va-i960.h (varargs va_start): Save g14 explicitly.
5279	Account for arguments preceding va_alist.
5280
5281Wed Mar 22 13:24:55 1995  Torbjorn Granlund  <tege@adder.cygnus.com>
5282
5283	* pa.c (singlemove_string): Handle SFmode constants again.  Simplify.
5284	(zdepi_cint_p): Make some variables HOST_WIDE_INT.
5285	(lhs_lshift_cint_operand): Likewise.
5286	(output_and): Likewise.
5287	(output_ior): Likewise.
5288
5289Wed Mar 22 12:40:09 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
5290
5291	* sh.md (udivsi3): Don't clobber register 6.
5292	(udivsi3, divsi3, mulsi3_call): Use a pseudo-reg with regclass 'z'
5293	for output rather than hard register 0.
5294	(block_move_real): Don't clobber registers 4 and 5.
5295
5296	* mips.c (mips_select_section): Apply constant DEC_INITIAL tests
5297	only to VAR_DECLs.
5298
5299Wed Mar 22 03:53:17 1995  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5300
5301	* config.sub (rm400, rm600): New machine names.
5302	(sinix5.*, sinix): New os aliases.
5303	(mips-siemens): Default os to sysv4.
5304
5305Mon Mar 20 21:56:47 1995  Per Bothner  <bothner@kalessin.cygnus.com>
5306
5307	Merged Paul Eggert's patch to cccp.c of Wed Mar  8 18:21:51 1995:
5308	* cpplib.c (do_include): Fix type typo: pcfbuflimit is char *, not int.
5309	
5310	Merged Doug Evans' patch to cccp.c of Mon Feb 27 17:06:47 1995:
5311	* cpplib.c (do_include): Check for redundant file before opening in
5312	relative path case.  Don't call fstat unnecessarily.
5313
5314	Merged J.T. Conklin's patch to cccp.c of Wed Feb 22 20:29:31 1995:
5315	* cpperror.c:  Removed __NetBSD__ from conditional.
5316
5317	Merged Kenner's patch to cccp.c & cexp.y of Tue Sep 20 17:49:47 1994:
5318	* cppexp.c (struct operation):  Make value by HOST_WIDE_INT.
5319	(cpp_parse_expr):  Change return type to HOST_WIDE_INT.
5320	* cpplib (eval_if_expr):  Likewise.
5321	(do_if, do_elif):  Update appropriately.
5322	* cpplib.h (cpp_parse_expr):  Removed, to avoid defining HOST_WIDE_INT.
5323
5324	Merged Paul Eggert's patch to cccp.c of Mon Aug  8 19:42:09 1994:
5325	* cpplib.c (create_definition): Warn about `#define a@', since a 
5326	diagnostic is now required (see ISO TC1's addition to subclause 6.8).
5327	Also warn about `#define is-empty(x) (!x)'.
5328
5329Tue Mar 21 00:10:50 1995  Jeffrey A. Law  <law@mole.gnu.ai.mit.edu>
5330
5331	* x-pa (CC): Add "-Dbsd4_4".
5332
5333Mon Mar 20 18:40:31 1995  Per Bothner  <bothner@kalessin.cygnus.com>
5334
5335	* toplev.c (print_error_function):  New function hook.
5336	(default_print_error_function):  New function.  Default value
5337	of print_error_function.  Code moved here from report_error_function.
5338	(report_error_function):  Use print_error_function hook.
5339
5340Mon Mar 20 20:27:43 1995  Doug Evans  <dje@cygnus.com>
5341
5342	* cccp.c (do_xifdef): Handle c++ comments.
5343	(do_endif): Likewise.
5344
5345Mon Mar 20 15:31:45 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
5346
5347	* configure (i386 configurations): Prepend i386/ to t-crt*.
5348
5349Mon Mar 20 07:58:04 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
5350
5351	* stmt.c (fixup_gotos): Add missing call from last change.
5352
5353	* objc/misc.c: Put Alpha-specific decls before #include of runtime.h.
5354
5355	* alpha.h (EXTRA_SECTIONS): Write zeros first time in .rdata.
5356
5357Sat Mar 18 16:37:24 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
5358
5359	* flow.c (mark_used_regs, case SUBREG): Set reg_changes_size even
5360	for integer modes.
5361	(mark_used_regs): Set reg_changes_size for RHS, if necessary.
5362	* combine.c (gen_lowpart_for_combine): Set reg_changes_size, if needed.
5363	* reload.c (push_reload): Reload a SUBREG if paradoxical and
5364	class is CLASS_CANNOT_CHANGE_SIZE.
5365	* reload1.c (gen_reload): Handle paradoxical SUBREGs.
5366	* alpha.h (SECONDARY_{INPUT,OUTPUT}_RELOAD_CLASS): Need GENERAL_REGS
5367	for paradoxical SUBREG and FLOAT_REGS.
5368	(SECONDARY_NEEDED_MODE): Use actual mode for 4 bytes or wider.
5369	* alpha.md (movsi): Allow FP regs and add case for store of FP reg.
5370	Remove cvtlq from MEM to FP reg case.
5371
5372	* rtl.h (emit_insns_after): Add declaration.
5373	* stmt.c (fixup_gotos): Do a cleanup for a block when it is exited
5374	even if label if not defined yet.
5375
5376	* function.c (pop_function_context): Fix error in last change;
5377	reference old value of current_function_decl before we modify it.
5378
5379Fri Mar 17 21:57:44 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
5380
5381	* toplev.c (rest_of_compilation): Handle -Wreturn-type properly
5382	for inlines we aren't compiling yet.
5383
5384Fri Mar 17 21:26:48 1995  Mike Stump  <mrs@cygnus.com>
5385
5386	* libgcc2.c (__register_exceptions): Handle empty tables.
5387
5388Fri Mar 17 11:48:31 1995  Douglas Rupp  (drupp@cs.washington.edu)
5389
5390	* i386/winnt.c (winnt_function_prologue): Deleted.
5391	(gen_stdcall_suffix): New function.
5392
5393Thu Mar 16 17:36:52 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
5394
5395	* svr4.h (LINK_SPEC): If the user did not specify -h name, use the
5396	output file name, if any.
5397	* sparc/sol2.h (LINK_SPEC): Ditto.  Also, if the user did not
5398	specify -R path, add an -R for each -L.
5399
5400	Move SunOS 4-specific assembler switches into the appropriate place.
5401	* m68k/sun[23].h (ASM_SPEC): Add %{R} %{j} %{J} %{h} %{d2}
5402	%{keep-local-as-symbols:-L}.
5403	* i386/sun.h (ASM_SPEC): Add %{R} %{keep-local-as-symbols:-L}.
5404	* sparc/sparc.h (ASM_SPEC): Ditto.
5405	* gcc.c (default_compilers): Remove %{R} %{j} %{J} %{h} %{d2}
5406	%{keep-local-as-symbols:-L} from assembler rules.
5407
5408Thu Mar 16 16:58:09 1995  Michael Meissner  <meissner@cygnus.com>
5409
5410	* rs6000/eabi-ctors.c: New file, handle C++ static constructors
5411	and destructors without requiring anything else from a libc.
5412
5413	* rs6000/t-eabi (LIB2FUNCS_EXTRA): Build eabi-ctors.c.
5414
5415	* rs6000/eabi.asm: Do not load up register 2 if there is no .got
5416	section.  Jump to the __do_global_ctors function at the end of
5417	processing to call C++ static constructors, and it will return to
5418	__eabi's caller.  Use normal volatile registers, instead of saving
5419	and restoring registers 30 and 31.
5420
5421	* rs6000/eabi.h (STARTFILE_SPEC): Define as null.
5422	(LIB_SPEC): Ditto.
5423	(ENDFILE_SPEC): Ditto.
5424	(LIBGCC_SPEC): Always look for libgcc.a.
5425
5426Thu Mar 16 17:05:14 1995  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
5427
5428	* stmt.c (warn_if_unused_value, case SAVE_EXPR): New case.
5429	(warn_if_unused_value, case NOP_EXPR): OK if CALL_EXPR inside.
5430
5431	* c-common.c (decl_attributes): Allow alignment for TYPE_DECLs.
5432
5433	* Makefile.in (xsys-protos.h): Fix typo in -U operand.
5434
5435Thu Mar 16 13:49:10 1995  Per Bothner  <bothner@rtl.cygnus.com>
5436
5437	* cpplib.c, cpplib.h:  New files - a C PreProcessor library.
5438	* cpphash.c, cpphash.h, cppalloc.c, cpperror.c, cppexp.c:
5439	New files - utility features used by cpplib.
5440	* cppmain.c:  New file - cpp replacement main program for cpplib.
5441	* Makefile.in:  New rules to build cppmain.
5442
5443Thu Mar 16 16:11:05 1995  Douglas Rupp  (drupp@cs.washington.edu)
5444
5445	* i386/winnt.h (FUNCTION_PROLOGUE, HAVE_probe, gen_probe): Deleted.
5446	(ENCODE_SECTION_INFO, VALID_MACHINE_DECL_ATTRIBUTE): New macro.
5447
5448Thu Mar 16 15:58:24 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
5449
5450	* combine.c (apply_distributive_law, case SUBREG): Fix typo when
5451	checking for paradoxical SUBREG.
5452
5453Wed Mar 15 18:45:08 1995  Doug Evans  <dje@cygnus.com>
5454
5455	* libgcc1-test.c: Renamed from cross-test.c.
5456	* Makefile.in (LIBGCC1_TEST): Renamed from CROSS_TEST.
5457	(all.cross): Delete $(ENQUIRE) dependency.
5458	(libgcc1-test): Renamed from cross-test.
5459	Delete unnecessary gcc-cross and $(LIBGCC) dependencies.
5460	Link with -nostartfiles -nostdlib
5461	`$(GCC_FOR_TARGET) --print-libgcc-file-name`.
5462	(libgcc1-test.o): Renamed from cross-test.o.
5463	Change gcc-cross dependency to xgcc since the latter is used.
5464
5465Wed Mar 15 13:49:21 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
5466
5467	* tree.c (save_tree_status): Now takes a tree 'context' instead of
5468	a boolean 'toplevel' as an argument.  If 'context' is not
5469	current_function_decl, create a new obstack for the new function.
5470	Also save inline_obstacks.
5471	(restore_tree_status): No longer takes a second argument.  Also
5472	restore inline_obstacks.
5473	(temporary_allocation): Clear inline_obstacks.
5474	(permanent_allocation): Free up the obstacks in inline_obstacks.
5475
5476	* function.h (struct function): New fields contains_functions and
5477	inline_obstacks.
5478
5479	* function.c (push_function_context_to): Now takes a tree
5480	'context' instead of a boolean 'toplevel' as an argument.
5481	Also save current_function_contains_functions.
5482	(push_function_context): Pass current_function_decl to it.
5483	(pop_function_context_from): Takes 'context' instead of 'toplevel'.
5484	Set current_function_contains_functions properly.
5485	(pop_function_context): Pass current_function_decl to it.
5486
5487Wed Mar 15 14:53:09 1995  Michael Meissner  <meissner@cygnus.com>
5488
5489	* rs6000/rs6000.md (abssi2): Turn into a define_expand.  If
5490	TARGET_POWER, do old code that uses the abs instruction.  If not,
5491	do abs in three instructions, using a temporary register, which
5492	enables generating more reasonable code for sne.  Add a recognizer
5493	for negative of the absolute value.  Add define_splits for the
5494	PowerPC.
5495	(sne insn): Add a recognizer for sne on the PowerPc to use two
5496	instructions, compared to the four generated using the absolute
5497	value insn.
5498
5499Tue Mar 14 18:38:40 1995  J.T. Conklin  <jtc@cygnus.com>
5500
5501	* m68k.md ({add,sub,mul,div}[sdx]f3): Add new patterns for recognizing
5502	SImode, HImode, and QImode operands.
5503
5504Mon Mar 13 18:59:36 EST 1995  David Edelsohn  <edelsohn@mhpcc.edu>
5505
5506	* rs6000.h (CPP_SPEC): Add PPC403.
5507	(processor_type): Add PPC403.
5508	(RTX_COSTS): Add PPC403.
5509	* powerpc.h (CPP_SPEC): Add PPC403.
5510	* sysv4.h (CPP_SPEC): Add PPC403.
5511	* rs6000.c (processor_target_table): Add PPC403.
5512	* rs6000.md (define_attr cpu and function units): Add PPC403.
5513
5514Mon Mar 13 14:40:23 1995  Michael Meissner  <meissner@cygnus.com>
5515
5516	* rs6000/rs6000.md (call, call_value insns): Do not put a nop
5517	after a bl instruction on System V.4 and eABI.
5518
5519	* rs6000/sysv.4 (SUBTARGET_SWITCHES): Add support for
5520	-mno-traceback to suppress the V.4 traceback word.
5521	(ASM_DECLARE_FUNCTION_NAME): Don't put out a traceback work if
5522	-mno-traceback.
5523
5524Mon Mar 13 13:36:37 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
5525
5526	* t-svr4, i386/t-{crtpic,sol2}, m88k/t-svr4, sparc/t-sol2:
5527	Use -fPIC, rather than -fpic, for building crtstuff.
5528
5529Sat Mar 11 17:27:08 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
5530
5531	* configure: Use aix3newas.h for AIX 3.2.4 and 5.
5532	* rs6000/aix41.h: Undefine ASM_OUTPUT_EXTERNAL{,_LIBCALL}.
5533	* rs6000/aix3newas.h: New file.  Define ASM_SPEC to -u, and
5534	undefine ASM_OUTPUT_EXTERNAL{,_LIBCALL}.
5535
5536Sat Mar 11 06:42:50 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
5537
5538	* dbxout.c (dbxout_symbol): Properly handle decl whose DECL_NAME
5539	points to a TYPE_DECL with a zero TYPE_NAME.
5540
5541Fri Mar 10 18:18:33 1995  Torbjorn Granlund  <tege@cygnus.com>
5542
5543	* pa.h (PROMOTE_MODE): Define.
5544
5545Fri Mar 10 14:37:58 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
5546
5547	* sdbout.c (sdbout_record_type_name): If TYPE_NAME is
5548	a TYPE_DECL, get name from DECL_NAME.
5549
5550Fri Mar 10 14:09:26 1995  Doug Evans  <dje@cygnus.com>
5551
5552	* arm/riscix.h (SUBTARGET_SWITCHES): Renamed from
5553	ARM_EXTRA_TARGET_SWITCHES.
5554	* arm/riscix1-1.h (SUBTARGET_SWITCHES): Likewise.
5555	* arm.h (SUBTARGET_SWITCHES): Likewise.
5556	(TARGET_HARD_FLOAT, TARGET_SOFT_FLOAT): Define.
5557	(TARGET_SWITCHES): Add -msoft-float, -mhard-float.
5558	(BYTES_BIG_ENDIAN): Delete #ifndef/#endif.
5559	(CONDITIONAL_REGISTER_USAGE): If -msoft-float, disable fp regs.
5560	(FUNCTION_VALUE): R16 is return reg only if !-msoft-float.
5561	(LIBCALL_VALUE): Likewise.
5562	* arm.md (all fp patterns): Conditionalize on TARGET_HARD_FLOAT.
5563	(*movsf_soft_insn, *movdf_soft_insn): New patterns.
5564
5565Fri Mar 10 13:53:46 1995  Jim Wilson  <wilson@cygnus.com>
5566
5567	* reorg.c (steal_delay_list_from_target): Exit at the top if the
5568	branch in SEQ is not a single set.
5569
5570	* sh.md (movdi define_split, movdf define_split): Correct indentation
5571	and formatting.  Make the condition fail if an operand is a MEM
5572	with an auto-inc address.
5573
5574	* varasm.c (copy_constant): Copy operand of ADDR_EXPR if it is a
5575	constant.
5576
5577	* mips/abi64.h (SETUP_INCOMING_VARARGS): Correct arguments to
5578	move_block_from_reg call.
5579
5580	* expr.c (expand_assignment): When offset is zero, make new MEM
5581	before setting MEM_VOLATILE_P.
5582
5583	* reload.c (find_reloads, case 'o'): Accept a fully reloaded
5584	auto-increment address.
5585
5586	* combine.c (max_uid_cuid): New static variable.
5587	(INSN_CUID): Call abort if INSN is out of range.
5588	(combine_instructions): Set max_uid_cuid.  Set uid_cuid directly
5589	instead of through INSN_CUID.
5590	(get_last_value): Use prev_real_insn instead of prev_nonnote_insn.
5591	Ignore USE insns generated by combine.
5592
5593Fri Mar 10 13:47:08 1995  Rod Barman  <rodb@cs.ubc.ca>
5594
5595	* m68k/fpgnulib.c (__fixdfsi): Catch values < 0.5 in magnitude.
5596
5597Fri Mar 10 12:02:33 1995  Ian Lance Taylor  <ian@cygnus.com>
5598
5599	* fixincludes: Fix `typedef struct term;' on hppa1.1-hp-hpux9.
5600
5601Fri Mar 10 05:50:11 1995  Oliver Kellogg  (Oliver.Kellogg@RST13.DASA.DBMAIL.d400.de)
5602
5603	* 1750a.c (sectname): Reverse Init and Normal.
5604	(print_operand_address, case PLUS): Add case for LABEL_REF.
5605	(print_operand_address, case LABEL_REF): Split fom SYMBOL_REF.
5606	(print_operand_address, case CODE_LABEL): New case.
5607	(ASM_FILE_END): Delete.
5608	* 1750a.h (FUNCTION_EPILOGUE): Restore stack before freeing local vars.
5609	(DEFAULT_SIGNED_CHAR): Now 1.
5610	(DATA_SECTION_ASM_OP): Use pseudo-op for read-only data (later copied).
5611	(JUMP_TABLES_IN_TEXT_SECTION): Define.
5612	(ASM_OUTPUT_ASCII): Split into multiple lines if long.
5613	(ASM_OUTPUT_{CHAR,SHORT,INT,LONG_INT}): Split up.
5614	(ASM_OUTPUT_COMMON): Call check_section.
5615
5616Thu Mar  9 12:46:53 1995  Michael Meissner  <meissner@cygnus.com>
5617
5618	* rs6000.md (movsf): Do not call truncdfsf2 for non PowerPC
5619	when expanding a store to memory and -msoft-float was used.
5620
5621Thu Mar  9 08:51:35 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
5622
5623	* c-decl.c (start_function): Handle new parameter ATTRIBUTES.
5624	* c-tree.h (start_function): Add new parameter.
5625	* c-lang.c (finish_file): Pass new parm to start_function.
5626	* objc-act.c (build_module_descriptor, really_start_method): Likewise.
5627	* c-parse.in (fndef, nested_function): Pass prefix_attributes
5628	to start_function.
5629	(setspecs): Save prefix_attributes in declspec_stack.
5630	(decl rules): Restore prefix_attributes along with current_declspecs.
5631	(setattrs): Concatenate prefix_attributes to previous value.
5632	* c-common.c (decl_attributes): Handle prefix and suffix attributes
5633	the same way.
5634
5635	* print-tree.c (print_node): Fix typo in printing large INTEGER_CST.
5636
5637	* varasm.c (assemble_variable): Consistently use DECL_SIZE for
5638	everything.
5639
5640	* c-typeck.c (convert_for_assignment): Fix typo in testing for
5641	pointer to function type.
5642
5643	* varasm.c (record_constant_1): Handle NON_LVALUE_EXPR.
5644	Rewrite to use switch instead of if/then/elseif/else.
5645
5646Wed Mar  8 18:21:51 1995  Paul Eggert  <eggert@twinsun.com>
5647
5648	* cccp.c (do_include): Fix type typo: pcfbuflimit is char *, not int.
5649
5650Wed Mar  8 17:30:29 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
5651
5652	* fold-const.c (force_fit_type): Always propagate OVERFLOW.
5653
5654	* rtl.def (INLINE_HEADER): Add new "e" field.
5655	* rtl.h (FORCED_LABELS): New field; other fields adjusted.
5656	(gen_inline_header_rtx): New parm FORCED_LABELS.
5657	* emit-rtl.c (gen_inline_header): Add new parm FORCED_LABELS.
5658	* integrate.c (initialize_for_inline, output_inline_function):
5659	Handle FORCED_LABELS.
5660
5661Wed Mar  8 13:47:20 1995  Jason Merrill  (jason@cygnus.com)
5662
5663	* alpha.h (WORD_SWITCH_TAKES_ARG): Add -rpath.
5664	(LINK_SPEC): Pass through -taso and -rpath.
5665	* alpha/osf12.h (LINK_SPEC): Ditto.
5666
5667Wed Mar  8 09:59:56 1995  Michael Meissner  <meissner@cygnus.com>
5668
5669	* rs6000/eabi.asm: Rewrite so that the initialized pointers go
5670	into the .got2 section, which allows eabi.asm to be assembled with
5671	the -mrelocatable option.  Move the data picked up from the bl
5672	instruction to before the traceback tag.
5673
5674	* rs6000/sysv4.h (CPP_SPEC): Define _RELOCATABLE if -mrelocatable
5675	switch is used.
5676
5677	* libgcc2.c (__new_handler): Don't initialize the pointer variable
5678	with the address of __default_new_handler, which may not work in
5679	some shared library mechanisms.
5680	(__builtin_new): If __new_handler is NULL, call the function
5681	__default_new_handler.
5682
5683Tue Mar  7 17:34:59 1995  Ian Lance Taylor  <ian@cygnus.com>
5684
5685	* i960.h (PROCESS_PRAGMA): Define.
5686	(ROUND_TYPE_ALIGN): Pass maximum of COMPUTED and SPECIFIED to
5687	i960_round_align.
5688	(ROUND_TYPE_SIZE): Delete.
5689	* i960.c (process_pragma): Uncomment, and rewrite for gcc 2.
5690	(i960_round_size): Delete.
5691	(i960_round_align): Don't adjust suggested alignment downward.
5692	Restrict alignment to value set by #pragma align.
5693
5694Tue Mar  7 12:14:46 1995  Doug Evans  <dje@cygnus.com>
5695
5696	* configure (sparc64-*-elf): Add crtbegin.o, crtend.o to extra_parts.
5697	* sparc/sp64-elf.h (TARGET_VERSION): Define.
5698	(CPP_PREDEFINES): Delete sun, sparc, unix.  Delete OS assertions.
5699	(ASM_SPEC): Define.
5700	(LINK_SPEC): Delete solaris stuff, this is an embedded target.
5701	(STARTFILE_SPEC, ENDFILE_SPEC): Define.
5702
5703Mon Mar  6 17:54:01 1995  Doug Evans  <dje@cygnus.com>
5704
5705	* Makefile.in (install-common): Fix typo in installation of cpp.
5706	Likewise with gcc-cross.
5707
5708Mon Mar  6 02:29:05 1995  Jeffrey A. Law  <law@mole.gnu.ai.mit.edu>
5709
5710	* pa.md (movsicc): New expander.
5711
5712Fri Mar  3 13:34:20 1995  Michael Meissner  (meissner@cygnus.com)
5713
5714	* rs6000/sysv4.h (ASM_SPEC): If -mrelocatable was passed to
5715	compiler, pass it on to the assembler.
5716
5717Fri Mar  3 12:11:28 1995  Ian Lance Taylor  <ian@cygnus.com>
5718
5719	* fixincludes: Add fixes for VxWorks header files.
5720	* ginclude/stddef.h: If VxWorks typedef macros are defined, invoke
5721	them as appropriate.
5722
5723Fri Mar  3 05:48:54 1995  Paul Eggert  <eggert@twinsun.com>
5724
5725	* cccp.c (dump_single_macro): Fix typo: % wasn't properly
5726	doubled in printf formats.
5727
5728Thu Mar  2 19:44:02 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
5729
5730	* expr.c (expand_expr, CLEANUP_POINT_EXPR): Force the operand out
5731	of memory before running cleanups.
5732
5733Thu Mar  2 19:15:24 1995  Paul Eggert  <eggert@twinsun.com>
5734
5735	* cccp.c (rescan): Prevent accidental token-pasting to
5736	get !=, *=, /=, ==, or ^=.
5737
5738Thu Mar  2 15:37:13 1995  Jason Merrill  <jason@phydeaux.cygnus.com>
5739
5740	* c-typeck.c (build_binary_op): Avoid spurious warning
5741	comparing enumerator to unsigned variable.
5742
5743Thu Mar  2 18:18:38 1995  J.T. Conklin  <jtc@netbsd.org>
5744
5745	* m68k.md (sqrtsf2,sqrtdf2): Use fp precision specifiers.
5746
5747Thu Mar  2 18:09:01 1995  Stephen L Moshier  (moshier@world.std.com)
5748
5749	* c-lex.c (yylex, case !NOT_FLOAT): Remove previous change.
5750
5751Thu Mar  2 15:26:50 1995  Richard Kenner  (kenner@vlsi1.ultra.nyu.edu)
5752
5753	* Makefile.in (bootstrap*): Pass new STAGE_PREFIX to recursive makes.
5754
5755Wed Mar  1 14:52:16 1995  Ian Lance Taylor  <ian@cygnus.com>
5756
5757	* i960/i960-coff.h (ASM_FILE_START): Define.
5758	(CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Define.
5759	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Define.
5760	(CTORS_SECTION_FUNCTION, DTORS_SECTION_FUNCTION): Define.
5761	(INT_ASM_OP): Define.
5762	(ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Define.
5763	* i960/vx960-coff.h (CPP_PREDEFINES): Define.
5764	(CPP_SPEC): Define.
5765	(CC1_SPEC): Default to -mca.
5766
5767Wed Mar  1 11:10:54 1995  Michael Meissner  (meissner@cygnus.com)
5768
5769	* rs6000/rs6000.c (output_prologue): Do not emit the word that
5770	gives the PC relative location to the local GOT table for the
5771	-mrelocatable option here.
5772	* rs6000/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Emit it here.
5773
5774	* t-eabi (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Build -msoft-float
5775	and -mrelocatable versions of the library.
5776
5777	* rs6000/powerpc.h (CPP_PREDEFINES): Define the cpu and machine as
5778	powerpc, not rs6000.
5779
5780	* libgcc2.c (_unwind_function): Clone for powerpc, using the
5781	PowerPC mnemonics.
5782
5783	* rs6000/rs6000.md (uminsi3, umaxsi3): Silence warnings that
5784	-2147483648 is too large to fit in a signed integer on 32-bit
5785	hosts.
5786
5787Wed Mar  1 06:48:31 1995  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
5788
5789	* fold-const.c (decode_field_reference): Don't check TREE_CODE
5790	of EXP; let get_inner_reference decide if have reference.
5791	Allow no bit reference if have AND_MASK.
5792	(all_ones_mask_p): Use tree_int_cst_equal, not operand_equal_p.
5793	(unextend): New function.
5794	(fold_truthop): For constant cases, use new function, rework 
5795	conversion, and warn if comparison can never be true.
5796
5797	* expr.c (store_expr): Do conversion in two steps for promoted lhs.
5798
5799See ChangeLog.9 for earlier changes.
5800