]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
alpha.md (extxl+1,+2): New patterns to work around combine lossage.
[gcc.git] / gcc / ChangeLog
CommitLineData
b08b85c4
RH
1Mon Aug 10 01:21:01 1998 Richard Henderson <rth@cygnus.com>
2
3 * alpha.md (extxl+1,+2): New patterns to work around
4 combine lossage.
5
93e42b0f
GT
6Sat Aug 8 19:20:22 1998 Gary Thomas (gdt@linuxppc.org)
7
8 * rs6000.c (rs6000_allocate_stack_space) Fix typo which
9 caused bad assembly code to be generated.
10
495c8b28
JL
11Sat Aug 8 18:53:28 1998 Jeffrey A Law (law@cygnus.com)
12
13 * netbsd.h: Fix typo.
14
b72612b0
RL
15Mon Aug 3 00:06:42 1998 Robert Lipe <robertl@dgii.com>
16
17 * config.sub: Fix typo.
18
b28dd840
HPN
19Sun Aug 2 22:39:08 1998 Hans-Peter Nilsson <hp@axis.se>
20
21 * invoke.texi (Environment Variables): Typo: Change "ascpects"
22 into "aspects".
23 (Running Protoize): Typo: Change "ther" into "other".
24
6414d0c1
JL
25Sun Aug 2 00:42:50 1998 Jeffrey A Law (law@cygnus.com)
26
27 * i386/netbsd.h: Undo previous change to DWARF2_UNWIND_INFO.
28 * m68k/netbsd.h: Likewise.
29 * ns32k/netbsd.h: Likewise.
30 * sparc/netbsd.h: Likewise.
31
790d5d02
RH
32Sat Aug 1 17:59:30 1998 Richard Henderson <rth@cygnus.com>
33
34 * ginclude/va-alpha.h (va_list): Use a typedef, not a define.
35 * ginclude/va-clipper.h (va_list): Likewise.
36
ef792183
MM
37Fri Jul 31 20:22:02 1998 Michael Meissner <meissner@cygnus.com>
38
39 * rs6000.c (rs6000_override_options): If big endian and -Os, use
40 load/store multiple instructions unless user overrides.
41
b2d3117c
JL
42Fri Jul 31 17:08:59 1998 Jeffrey A Law (law@cygnus.com)
43
44 * ns32k/netbsd.h: Fix typo.
45
5f97de0a
DE
46Fri Jul 31 10:23:55 1998 Doug Evans <devans@canuck.cygnus.com>
47
48 * m32r/m32r.h (ASM_OUTPUT_SOURCE_LINE): Always output line number
49 labels with .debugsym if no parallel insns.
50
30e2dcbf
RH
51Thu Jul 30 19:15:53 1998 Richard Henderson <rth@cygnus.com>
52
53 * alpha.md (fp cmp): Replicate patterns for ALPHA_TP_INSN.
54 (fcmov): Remove ALPHA_TP_INSN patterns -- fcmov doesn't trap.
55
624d5e13
DE
56Thu Jul 30 19:50:15 1998 David Edelsohn <edelsohn@mhpcc.edu>
57
58 * rs6000/x-aix43 (AR_FOR_TARGET_FLAGS): Delete.
59 (AR_FOR_TARGET): Define.
60
b170964a
MM
61Thu Jul 30 12:29:12 1998 Mark Mitchell <mark@markmitchell.com>
62
63 * dyn-string.h: New file.
64 * dyn-string.c: Likewise.
65 * Makefile.in (OBJS): Add dyn-string.o.
66 (dwarf2out.o): Add dyn-string.h dependency.
67 (dyn-string.o): List dependencies.
68 * dwarf2out.c: Include dyn-string.h.
69 (ASM_NAME_TO_STRING): Use dyn_string_append, rather than strcpy.
70 (addr_const_to_string): Take a dyn_string_t, not a char* as a
71 prototype. Use dyn_string_append rather than strcat, throughout.
72 (addr_to_string): Use dyn_string_t.
73
07417085
KR
74Thu Jul 30 13:08:07 1998 Ken Raeburn <raeburn@cygnus.com>
75
76 Function entry/exit profiling instrumentation:
77 * expr.h (profile_function_entry_libfunc,
78 profile_function_exit_libfunc): Declare new variables.
79 * optabs.c: Define them here.
80 (init_optabs): Initialize them.
81 * tree.h (struct tree_decl): New flag
82 no_instrument_function_entry_exit.
83 (DECL_NO_INSTRUMENT_FUNCTION_ENTRY_EXIT): New accessor macro.
84 * c-decl.c (duplicate_decls): Merge it.
85 * c-common.c (enum attrs): New value A_NO_INSTRUMENT_FUNCTION.
86 (init_attributes): Use it for "no_instrument_function".
87 (decl_attributes): Handle it, for functions that have not yet been
88 compiled. Set decl flag.
89 * flags.h (flag_instrument_function_entry_exit): Declare new
90 variable.
91 * toplev.c (flag_instrument_function_entry_exit): Define it here.
92 (f_options): New option "instrument-functions".
93 * function.h (struct function): New field instrument_entry_exit.
94 * function.c (current_function_instrument_entry_exit): New
95 variable.
96 (push_function_context_to, pop_function_context_from): Save and
97 restore.
98 (expand_function_start): Set current_ variable, maybe emit return
99 label and entry profile call.
100 (expand_function_end): Maybe emit exit profile call.
101
3192f024
JL
102Thu Jul 30 00:58:34 1998 Jeffrey A Law (law@cygnus.com)
103
104 * i386.md (movqi): When optimizing a load of (const_int 1) into a
105 NON_QI_REG_P, pretend the register is SImode.
106
58600d24
TV
107Wed Jul 29 23:49:23 1998 Todd Vierling <tv@netbsd.org>
108
109 * configure.in: Use xm-netbsd.h as the NetBSD xm file (not xm-siglist).
110 Accept arm32 as arm, m68k4k as m68k, mipsle as mips-dec, and any
111 manufacturer id for ns32k.
112 * configure: Regenerated.
113 * config/netbsd.h: When using ASM_WEAKEN_LABEL, make it global too.
114 * config/t-netbsd: Don't compile libgcc1-test as the fns are in libc.
115 * config/i386/netbsd.h: Undefine DWARF2_UNWIND_INFO, not define as 0.
116 * config/m68k/netbsd.h: Same.
117 * config/ns32k/netbsd.h: Same.
118 * config/sparc/netbsd.h: Same.
119
47d41103
JL
120Wed Jul 29 22:39:21 1998 Jeffrey A Law (law@cygnus.com)
121
122 * unroll.c (unroll_loop): Do not abort for an UNROLL_MODULO
123 or UNROLL_COMPLETELY loop that starts with a jump to its
124 exit code.
125
a238cd8b
DE
126Wed Jul 29 22:18:14 1998 David Edelsohn <edelsohn@mhpcc.edu>
127
128 * rs6000/rs6000.md (absdi2 define_split): Swap operands of MINUS.
129 * rs6000/rs6000.c (mask64_operand): Use HOST_BITS_PER_WIDE_INT.
130 (print_operand, case 'B'): Don't fall through.
131 (print_operand, case 'S'): Correct mask begin/end computation.
132 Use HOST_BITS_PER_WIDE_INT.
133 * rs6000/rs6000.h (CPP_PREDEFINES): Define _LONG_LONG.
134 (CONDITIONAL_REGISTER_USAGE): GPR13 fixed if TARGET_64BIT.
135 * rs6000/aix41.h (CPP_PREDEFINES): Same.
136 * rs6000/aix43.h (CPP_PREDEFINES): Same.
137
e0d75375
NC
138Wed Jul 29 11:47:10 1998 Nick Clifton <nickc@cygnus.com>
139
140 * config/arm/thumb.md (extendqisi2_insn): Remove earlyclobber
141 constraint from second alternative.
142
4e88d51b
JM
143Tue Jul 28 23:29:04 1998 Jason Merrill <jason@yorick.cygnus.com>
144
145 * configure.in: Fix --without/--disable cases for local-prefix,
146 gxx-include-dir and checking.
147
e85b2d66
DM
148Tue Jul 28 22:01:23 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
149
150 * configure.in (enable_haifa): Set by default for sparc64 too.
151 configure: Rebuilt.
152
ac478ac0
JM
153Tue Jul 28 23:29:04 1998 Jason Merrill <jason@yorick.cygnus.com>
154
155 * i386/cygwin32.h (VALID_MACHINE_TYPE_ATTRIBUTE): New macro.
156 * i386/winnt.c (associated_type): New fn.
157 (i386_pe_valid_type_attribute_p): New fn.
158 (i386_pe_check_vtable_importexport): Remove.
159 (i386_pe_dllexport_p): Use associated_type.
160 (i386_pe_dllimport_p): Likewise.
161
162 From Antonio M. O. Neto <anmendes@cruzeironet.com.br>:
163 * i386.c (i386_valid_type_attribute_p): Also accept
164 attributes for METHOD_TYPEs.
165
28372f41
PG
166Tue Jul 28 23:17:39 1998 Peter Gerwinski <peter@gerwinski.de>
167
168 * tree.c (build_range_type): Copy TYPE_SIZE_UNIT.
169
e67ac8e6
CB
170Tue Jul 28 22:31:12 1998 Craig Burley <burley@gnu.org>
171
172 * gcc.c: Fix commentary describing %g, %u, %U, and %O.
173
f4494d38
JL
174 * gcc.c (do_spec_1): Fix handling of %g%O and %U%O to prevent
175 them from generating a new base name for each occurence of
176 a specific suffix.
e67ac8e6 177
1ed0205e
VM
1781998-07-28 Vladimir N. Makarov <vmakarov@cygnus.com>
179
180 * cse.c (cse_insn): Enable subsitution inside libcall only for REG,
181 SUBREG, MEM.
182 * rtlanal.c (replace_rtx): Prohibit replaces in CONST_DOUBLE.
183
4d17a06f
MM
184Tue Jul 28 11:33:09 1998 Mark Mitchell <mark@markmitchell.com>
185
186 * cplus-dem.c (type_kind_t): New type.
187 (demangle_template_value_parm): Add type_kind_t parameter. Rely
188 on this paramter, rather than demangling the type again.
189 (demangle_integral_value): Pass tk_integral.
190 (demangle_template_: Pass the value returned from do_type.
191 (do_type): Return a type_kind_t. Pass tk_integral to
192 demangle_template_value_parm for array bounds.
193 (demangle_fund_type): Likewise.
194
b3abfd6f
JM
195Mon Jul 27 00:54:41 1998 Jason Merrill <jason@yorick.cygnus.com>
196
197 * tree.c (simple_cst_equal, case CONSTRUCTOR): OK if the elts are
198 identical.
199
198f32a6
JL
200Mon Jul 27 22:18:36 1998 Jeffrey A Law (law@cygnus.com)
201
202 * pa.c (move_operand): Accept CONSTANT_P_RTX.
203
74a4fbfc
DB
204Mon Jul 27 17:18:52 1998 Dave Brolley <brolley@cygnus.com>
205
206 * stor-layout.c (layout_type): Handle arrays of bits, for Chill.
207
208 * expr.c (get_inner_reference): Handle zero-based, unsigned, array
209 index conversion.
210
217b83c9
JL
211Mon Jul 27 14:51:33 1998 Jeffrey A Law (law@cygnus.com)
212
213 * mn10300.h (DEBUGGER_AUTO_OFFSET): Define.
214 (DEBUGGER_ARG_OFFSET): Likewise.
215
216 * mn10300.md (movsf): Remove last change. Not needed.
217
45e0984c
DB
218Mon Jul 27 14:22:36 1998 Dave Brolley <brolley@cygnus.com>
219
220 * c-lex.c (yylex): Fix boundary conditions in character literal and
221 string literal loops.
222
84530511
SC
223Mon Jul 27 11:43:54 1998 Stan Cox <scox@cygnus.com>
224
225 * longlong.h (count_leading_zeros): Sparclite scan instruction was
226 being invoked incorrectly.
227
228 * i386.c (ix86_prologue): Added SUBTARGET_PROLOGUE invocation.
229 * i386/cygwin32.h (STARTFILE_SPEC, LIB_SPEC, SUBTARGET_PROLOGUE):
230 Add -pg support.
231 * i386/win32.h: New file. Hybrid mingw32.h/cygwin32.h configuration.
232 * configure.in: Added i[34567]86-*-win32
233 * config.sub: Ditto.
234 * configure: Rebuilt.
235
60aeab7f
L
236Sun Jul 26 01:11:12 1998 H.J. Lu (hjl@gnu.org)
237
61dd26e6
L
238 * i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Return 0 when eliminating
239 the frame pointer and compiling PIC code and reload has not completed.
240
60aeab7f
L
241 * i386.c (output_to_reg): Add code to emulate non-popping DImode
242 case.
243
9616dd8d
JL
244Sun Jul 26 01:01:32 1998 Jeffrey A Law (law@cygnus.com)
245
246 * regmove.c (regmove_optimize): Fix typo initializing regmove_bb_head.
247
b0a766e8
GP
248Sat Jul 25 23:29:23 1998 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
249
250 * Makefile.in (install-info): Only try to update the info
251 directory file if it exists in the first place.
252
4f057fe7 253Fri Jul 24 18:58:37 1998 Klaus Espenlaub <kespenla@student.informatik.uni-ulm.de>
4cacd7a0
KE
254
255 * rs6000.h (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Delete.
256
e2bc7d00
JL
257Fri Jul 24 14:20:26 1998 Jeffrey A Law (law@cygnus.com)
258
259 * mn10300.md (movqi, movhi, movsi, movsf): Correctly handle
260 CONST_DOUBLE source.
261
0d1be583
NC
262Fri Jul 24 11:17:04 1998 Nick Clifton <nickc@cygnus.com>
263
264 * config/arm/thumb.c (thumb_print_operand): Decode %_ in asm
265 strings as the insertion of USER_LABEL_PREFIX.
266 * config/arm/thumb.h (PRINT_OPERAND_PUNCT_VALID_P): Accept _ as a
267 valid code.
268 * config/arm/thumb.md: Use %_ as a prefix to gcc library function
269 calls.
270
28144186
JW
271Thu Jul 23 18:53:20 1998 Jim Wilson <wilson@cygnus.com>
272
273 * dbxout.c (dbxout_range_type): Only call dbxout_type_index for
274 already defined type.
275
71bca506
JL
276Thu Jul 23 13:49:41 1998 Jeffrey A Law (law@cygnus.com)
277
278 * expr.c (check_max_integer_computation_mode): Allow conversions
279 of constant integers to MAX_INTEGER_COMPUTATION_MODE.
280 (expand_expr): Likewise.
281
57b630a9
APB
282Thu Jul 23 11:12:06 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
283
284 * expr.c (expand_expr): Expand RETURN_EXPR.
285
71208e03
JW
286Thu Jul 23 11:00:29 1998 Jim Wilson <wilson@cygnus.com>
287
288 * dwarf2out.c (dwarf2out_finish): Call stripattributes on TEXT_SECTION.
289
49bcd085
CM
290Wed Jul 22 19:10:00 1998 Catherine Moore <clm@cygnus.com>
291
292 * dwarf2out.c (output_aranges): Call stripattributes
293 for TEXT_SECTION references.
294 (output_line_info): Likewise.
295
60f25009
DM
296Wed Jul 22 14:08:54 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
297
298 * profile.c (branch_prob): Call allocate_reg_info after outputting
299 profile rtl in instrument_arcs.
300
1d3337fc
JW
301Wed Jul 22 12:47:49 1998 Jim Wilson <wilson@cygnus.com>
302
303 * fixinc.irix (math.h): Install wrapper instead of copying.
304
2491f72d
APB
305Wed Jul 22 12:37:14 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
306
307 * tree.def (EXPR_WITH_FILE_LOCATION): Defined as an 'e' expression
308 so WFL are expanded correctly when contained in a COMPOUND_EXPR.
309 * tree.h (EXPR_WFL_EMIT_LINE_NOTE): Change macro not to use
310 lang_flag_0. Added documentation in the flag table.
311
244058f7
KK
312Tue Jul 21 23:28:35 1998 Klaus Kaempf <kkaempf@rmi.de>
313
314 * cccp.c (do_include): Fix vax c style include handling.
315
f3677175
JM
316Tue Jul 21 13:28:19 1998 Jason Merrill <jason@yorick.cygnus.com>
317
318 * cplus-dem.c (do_type): Use demangle_template_value_parm for arrays.
319
320Sun Jul 12 01:27:05 1998 Jason Merrill <jason@yorick.cygnus.com>
321
322 * fold-const.c (non_lvalue): Don't deal with null pointer
323 constants here.
324 (fold, case COMPOUND_EXPR): Wrap a constant 0 in a NOP_EXPR.
325
e675f625
DE
326Tue Jul 21 15:49:31 1998 David Edelsohn <edelsohn@mhpcc.edu>
327
328 * rs6000.h (PREDICATE_CODES): Add CONSTANT_P_RTX.
329 * rs6000.md (movsi, movdi): Add CONSTANT_P_RTX.
330 * rs6000.c (short_cint_operand): Add CONSTANT_P_RTX.
331 (u_short_cint_operand): Same.
332 (reg_or_cint_operand): Same.
333 (logical_operand): Same.
334 (input_operand): Same.
335 (reg_or_short_operand): Use u_short_cint_operand.
336
1ca2e73f
RH
337Tue Jul 21 08:56:42 1998 Richard Henderson <rth@cygnus.com>
338
339 * alpha.md (fix_truncdfsi2, fix_truncsfsi2): Remove the define_expands,
340 but keep the insns and splits. Adjust so when the ultimate destination
341 is memory, use cvtql.
342
bd80fbde
RH
343Tue Jul 21 08:55:09 1998 Richard Henderson <rth@cygnus.com>
344
345 * flow.c (regno_uninitialized): Fixed regs are never uninitialized.
346
4089dfab
JL
347Tue Jul 21 00:31:01 1998 Jeffrey A Law (law@cygnus.com)
348
50ea20cf
JL
349 * gcc.c (do_spec): Call "error" not "warning".
350
0b9d02c6
JL
351 * configure.in: Fix minor problems with gas feature detection code.
352 * configure: Rebuilt.
353
4089dfab
JL
354 * gcc.c (do_spec): Issue a warning for '%[]' usage.
355
356 * Undo this change.
357 * gcc.c: Delete %[spec] support.
358 (do_spec_1, case '('): Likewise.
359 (do_spec_1, case '['): Call error.
360
952fc2ed
RH
361Mon Jul 20 22:34:17 1998 Richard Henderson <rth@cygnus.com>
362
363 * alpha.h (CPP_SPEC): Tidy. Hook to cpp_cpu and cpp_subtarget.
364 (CPP_SUBTARGET_SPEC): Default to empty string.
365 (CPP_AM_*, CPP_IM_*, CPP_CPU_*, CPP_CPU_SPEC): New.
366 (EXTRA_SPECS, SUBTARGET_EXTRA_SPECS): New.
367 * alpha/elf.h (LD_SPEC): Use %(elf_dynamic_linker).
368 * alpha/linux-elf.h (SUBTARGET_EXTRA_SPECS): New.
369 (LIB_SPEC): Tidy.
370 * alpha/linux.h (CPP_PREDEFINES): Tidy.
371 * alpha/netbsd-elf.h (SUBTARGET_EXTRA_SPECS): New.
372 * alpha/netbsd.h (CPP_PREDEFINES): Tidy.
373 * alpha/osf.h (CPP_PREDEFINES): Remove bits subsumed by CPP_CPU_SPEC.
374 * alpha/win-nt.h (CPP_PREDEFINES): Likewise.
375 * alpha/vsf.h (CPP_PREDEFINES): Likewise.
376 (CPP_SUBTARGET_SPEC): New. Do this instead of overriding CPP_SPEC.
377 * alpha/vxworks.h: Likewise.
378
e4f5c5d6
KR
379Mon Jul 20 22:51:57 1998 Ken Raeburn <raeburn@cygnus.com>
380
381 * mips.md (reload_outsi): Added missing REGNO call.
382 (smulsi3_highpart, umulsi3_highpart): Provide prototype for
383 function pointer.
384 (mul_acc_di, mul_acc_64bit_di): Don't use match_op_dup, use
385 another match_operator and compare the codes.
386
387 * mips.h (MASK_DEBUG_E, MASK_DEBUG_I): Set to zero.
388
389 * MIPS multiply pattern fixes:
390 * mips.h (enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS):
391 Add union classes for HI, LO, or HILO plus general registers.
392 (GENERATE_MADD): Deleted.
393 * mips.md (mulsi3_mult3): Don't disparage output-LO alternative.
394 Add TARGET_MAD to condition.
395 (mulsi3): Test HAVE_mulsi3_mult3, not specific flags.
396 (mul_acc_si): Expand GENERATE_MADD here; it's the only use. Use
397 "*d" for accumulator, to give preference to LO initially but not
398 during reload.
399
56f48ce9
DB
400Mon Jul 20 16:16:38 1998 Dave Brolley <brolley@cygnus.com>
401
402 * configure.in (enable_c_mbchar): New configure option.
403 (extra_cpp_objs): Always available now.
404
405 * cexp.y (mbchar.h): #include it.
406 (yylex): Handle Multibyte characters in character literals.
407
408 * cccp.c (mbchar.h): #include it.
409 (main): Set character set based on LANG environment variable.
410 (rescan): Handle multibyte characters in comments.
411 (skip_if_group): See above.
412 (validate_else): See above.
413 (skip_to_end_of_comment): See above.
414 (macarg1): See above.
415 (discard_comments): See above.
416 (rescan): Handle multibyte characters in string and character literals.
417 (collect_expansion): See above.
418 (skip_quoted_string): See above.
419 (macroexpand): See above.
420 (macarg1): See above.
421 (discard_comments): See above.
422 (change_newlines): See above.
423
424 * c-lex.c (mbchar.h): #include it.
425 (GET_ENVIRONMENT): New macro.
426 (init_lex): Set character set based on LANG environment variable.
427 (yylex): Handle multibyte characters in character literals.
428 (yylex): Handle multibyte characters in string literals.
429
430 * Makefile.in (mbchar.o): New target.
431 (cccp$(exeext)): @extra_cpp_objs@ is always available.
432 (cppmain$(exeext)): @extra_cpp_objs@ is always available.
433
434 * mbchar.[ch]: New files for multibyte character handling.
435
689fcba8
DM
436Mon Jul 20 01:11:11 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
437
438 * jump.c (jump_optimize): When simplifying noop moves and
439 PUSH_ROUNDING, fix thinko so we use same criterion for identifying
440 the PUSHes to rewrite in second loop as we did in the first.
441
d94f5c58
KG
442Sun Jul 19 08:23:53 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
443
444 * cplus-dem.c (demangle_nested_args): Make function definition
445 static to match the prototype.
446
402cdad5
RH
447Fri Jul 17 14:58:44 1998 Richard Henderson <rth@cygnus.com>
448
449 * alloca.c: Respect USE_C_ALLOCA.
450 * gencheck.c (xmalloc): Ignore __GNUC__ for definition.
451 * gengenrtl.c (xmalloc): Likewise.
452
45f97e2e
RH
453Fri Jul 17 14:18:14 1998 Richard Henderson <rth@cygnus.com>
454
455 * loop.h (struct induction): Add no_const_addval.
456 * loop.c (the_movables, reg_address_cost): New variables.
457 (init_loop): Init reg_address_cost.
458 (loop_optimize): Call end_alias_analysis.
459 (scan_loop): Init the_movables.
460 (record_giv): Init induction->no_const_addval.
461 (basic_induction_var) [PLUS]: Use rtx_equal_p instead of ==.
462 [REG]: Rearrange loop search test to catch more cases.
463 (general_induction_var): Return success not benefit; take an extra
464 argument for that. Change all callers.
465 (simplify_giv_expr) [PLUS]: Always combine invariants. Use sge_plus.
466 [MULT]: Use rtx_equal_p instead of ==. Combine simple invariants.
467 [default]: Search the_movables for additional combinations.
468 (sge_plus_constant, sge_plus): New functions.
469 (express_from_1): New function.
470 (express_from): Always define. Rewrite using express_from_1.
471 (combine_givs_p): Handle more cases. Ignore address cost.
472 (cmp_combine_givs_stats): New function.
473 (combine_givs_used_once, combine_givs_benefit_from): New functions.
474 (combine_givs): Rewrite to do best-fit combination.
475
476 * fold-const.c (operand_equal_p): Handle RTL_EXPR.
477 (fold): Do a complete (A*C)+(B*C) association check.
478
07362cb3
JW
479Fri Jul 17 11:21:55 1998 Jim Wilson <wilson@cygnus.com>
480
481 * function.c (fixup_var_refs_insns): Handle CLOBBER of a CONCAT.
482
2fed503d
JL
483Fri Jul 17 11:48:55 1998 Jeffrey A Law (law@cygnus.com)
484
485 * mn10300.c (MODES_TIEABLE_P): Fix typo.
486
f022f9bc
RE
487Fri Jul 17 03:26:12 1998 Rihcard Earnshaw (rearnsha@arm.com)
488
489 * tree.c (valid_machine_attribute): Only create a new type variant if
490 there is a decl to use it.
491
4249dc2b
NC
492Thu Jul 16 14:48:04 1998 Nick Clifton <nickc@cygnus.com>
493
494 * gcc.c (do_spec_1): Cope with %g/%u/%U options which do not have
495 a suffix.
496
18651083
HPN
497Fri Jul 17 03:24:40 1998 Hans-Peter Nilsson <hp@axis.se>
498
499 * extend.texi (Explicit Reg Vars): Typo: change "may deleted" into "may
500 be deleted"
501
fed2012b
JL
502Thu Jul 16 14:48:47 1998 Jeffrey A Law (law@cygnus.com)
503
6673b2ea
JL
504 * mn10300.c (count_tst_insns): New arg oreg_countp. Callers changed.
505 Simplify tests for clearing an address register.
506 (expand_prologue): Corresponding changes.
507
fed2012b
JL
508 * mn10300.md (movXX patterns): Make sure the destination is an
509 ADDRESS_REG when substituting "zero_areg" for (const_int 0).
510 (logical patterns): Split into expanders + patterns
511 (zero and sign extension patterns): Similarly.
512 (shift patterns): Similarly.
513
a2d92646
RH
514Thu Jul 16 01:17:44 1998 Richard Henderson <rth@cygnus.com>
515
516 * loop.c (emit_iv_add_mult): Scan the entire insn list generated
517 for the sequence, recording base values.
518
5d46457e
RH
519Wed Jul 15 10:49:55 1998 Richard Henderson <rth@cygnus.com>
520
521 * i386.h (CPP_CPU_SPEC): Remove -Asystem(unix).
522
40f943dd
NC
523Tue Jul 14 14:15:30 1998 Nick Clifton <nickc@cygnus.com>
524
525 * gcc.c: Remove ANSI-C ism from --help code.
526
527 * toplev.c: Support --help with USE_CPPLIB.
528
9d5f0428
JL
529Tue Jul 14 14:46:08 1998 Jeffrey A Law (law@cygnus.com)
530
a2c9d57c
JL
531 * configure.in: Rework gas feature code to work with symlink based
532 source trees.
533
0deaf590
JL
534 * extend.texi: Clarify some issues related to local variables
535 assigned to explicit registers.
536
284280b5
JL
537 * mn10300.md (mulsi): Turn into expander + pattern.
538
9d5f0428
JL
539 * mn10300.md (movsi, movsf, movdi, movdf): Remove "x" from I -> a
540 alternative.
541
b33cfaba
RE
542Tue Jul 14 07:41:59 1998 Richard Earnshaw (rearnsha@arm.com)
543
544 * arm/tcoff.h (USER_LABEL_PREFIX): Make it empty to match coff.h.
545
40fd4eab
JL
546Tue Jul 14 03:02:44 1998 Jeffrey A Law (law@cygnus.com)
547
548 * version.c: Bump again to distinguish mainline tree from the
549 egcs-1.1 branch.
550
a68b2bde
JL
551Tue Jul 14 02:20:38 1998 Jeffrey A Law (law@cygnus.com)
552
553 * version.c: Bump to avoid problems with old spec files during
554 bootstrap.
555
1c44748c
DM
556Mon Jul 13 23:11:44 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
557
558 * config/sparc/sparc.c (output_scc_insn): Enclose || conditions in
559 parens while walking over notes.
560 * config/sparc/sparc.md (reg movdi split): Clean up matching
561 conditions.
562 (all DI arithop splits on 32-bit): Handle immediate arguments
563 correctly when they are CONST_INTs.
564
dffe9c09
KI
565Mon Jul 13 23:57:21 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
566
567 * m68k/m68k.h (TARGET_SWITCHES): Clear MASK_68040_ONLY for
568 -m68020-40, -m68020-60 and -m5200.
569
a5dd9832
WL
570Mon Jul 13 23:52:05 1998 Weiwen Liu <weiwen.liu@yale.edu>
571
572 * gcc.c (do_spec_1): Fix %O handling for secure temporary file
573 creation.
574
acefd904
RC
575Mon Jul 13 23:42:36 1998 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
576
577 * sh/elf.h (MAX_OFILE_ALIGNMENT): Undefine before including svr4.h.
578
1228a9bd
JW
579Mon Jul 13 23:36:08 1998 Jim Wilson <wilson@cygnus.com>
580
581 * i386/i386.h (CPP_486_SPEC, CPP_586_SPEC, CPP_686_SPEC): New specs.
582 (CPP_CPU_DEFAULT_SPEC, CPP_CPU_SPEC): Use them.
583 (EXTRA_SPECS): Support them.
584 * gcc.c: Delete %[spec] support.
585 (do_spec_1, case '('): Likewise.
586 (do_spec_1, case '['): Call error.
587 * i386/aix386ng.h, cygwin32.h, freebsd-elf.h, gas.h, isc.h,
588 linux-aout.h, linux-oldld.h, linux.h, osfelf.h, osfrose.h, sco.h,
589 sco4.h, sco4dbx.h, sco5.h, sol2.h, sysv3.h (CPP_SPEC): Delete
590 %[cpp_cpu].
591
4a8c52e0
AS
592Mon Jul 13 23:31:04 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
593
594 * m68k.c (output_scc_di): Use cmpw #0 only for address registers.
595
42801468
JL
596Mon Jul 13 23:26:43 1998 Jeffrey A Law (law@cygnus.com)
597
598 * tree.h (tree_common): Note front-end dependencies on layout of
599 this structure.
600
b941bcbc
CB
601Mon Jul 13 23:18:39 1998 Craig Burley <burley@gnu.org>
602
603 * stmt.c (expand_expr_stmt): If not assigning fresh
604 value to last_expr_value, zero it, so old garbage
605 doesn't get dereferenced.
606
48e87cef
HP
607Mon Jul 13 23:06:55 1998 Henning.Petersen@t-online.de (Henning Petersen)
608
609 * gcse.c (hash_scan_insn): Add missing argument declaration.
610
74c55ab0
JW
611Mon Jul 13 18:59:13 1998 Jim Wilson <wilson@cygnus.com>
612
613 * configure.in (mips-sgi-irix5cross64, mips-sgi-irix5*): Remove
614 HAVE_INTTYPES_H from xm_defines. Define xm_file to mips/xm-iris5.h.
615 * mips/xm-iris5.h (USG): Delete.
616
b8468bc7
NC
617Mon Jul 13 17:18:47 1998 Nick Clifton <nickc@cygnus.com>
618
619 * cccp.c (main): Add support for parsing --help.
620 (display_help): New function: display command line switches.
621
622 * cpplib.c (cpp_handle_option): Add support for parsing --help.
623 (display_help): New function: display command line switches.
624
625 * gcc.c (main): Add support for parsing --help, and passing it on
626 to the sub-processes invoked by gcc.
627 (display_help): New function: display comman line switches.
628
629 * tm.texi (TARGET_SWITCHES and TARGET_OPTIONS): Document
630 'description' field added to structure.
631
632 * toplev.c: Add support for parsing --help.
633 Add documentation strings to command line option tables.
634 (display_help): New function: display comman line switches.
635
c6b0465b
JC
636Mon Jul 13 16:15:10 1998 John Carr <jfc@mit.edu>
637
638 * sparc.c, sparc.h, sparc.md: New trampoline code.
639 Allow integer operand 1 to V8+ DImode shift instructions.
640 Fix bugs in V8+ wide multiply patterns.
641 In 32 bit mode, split DImode register moves and logical instructions.
642 Write V9 branch prediction flag.
643 Use V9 conditional move more often for scc.
644
e69fd6e5
PDM
645Mon Jul 13 15:10:09 1998 Philippe De Muyter <phdm@macqel.be>
646
647 * invoke.texi(-fno-builtin): Explain that the names of built-in
648 functions begin with `__builtin_', not `__'.
649
518b6ce3
R
650Mon Jul 13 19:01:52 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
651
652 * reload1.c (reload_reg_free_before_p): Abort for RELOAD_FOR_OUTPUT.
653
c78ea267
MM
654Mon Jul 13 10:50:17 1998 Mark Mitchell <mark@markmitchell.com>
655
656 * cplus-dem.c (SCOPE_STRING): Remove DMGL_JAVA stuff.
657 (cplus_demangle_opname): Initialize work.
658 (demangle_template): Remove is_java_array.
659 (do_type): Remove DMGL_JAVA stuff.
660 (long_options): Remove "java".
661 (main): Remove 'j' option.
662
b5f88157
JL
663Mon Jul 13 10:19:00 1998 Jeffrey A Law (law@cygnus.com)
664
e69fd6e5
PDM
665 * mn10300.h (REG_CLASS_FROM_LETTER): Map 'y' to SP_REGS.
666 Handle 'x' as NO_REGS for this cpu.
667 (REGNO_OK_FOR_BIT_BASE_P): Define.
668 (REG_OK_FOR_BIT_BASE_P): Define.
669 (GO_IF_LEGITIMATE_ADDRESS): Use them.
670 (REG_OK_FOR_INDEX_P): Tweak.
671 * mn13000.c (REG_SAVE_BYTES): Define.
672 (expand_epilogue, initial_offset): Use it.
673 (secondary_reload_class): Slightly reformat.
674 (output_tst): Tweak comments.
675 * mn10300.md: Change 'x' to 'y' for SP_REGS. Then add 'x' to many
676 patterns.
677 (addsi3): Turn into a define_expand/define_insn pair. Rework code for
678 three operand addition case to be more efficient.
679 (subsi3): Turn into a define_expand/define_insn pair.
680
b5f88157
JL
681 * expr.c (expand_expr): Only set MEM_IN_STRUCT_P if the memory address
682 is not varying for REFERENCE_TYPE or when we think we might have found
683 an optimized access to the first element in an array.
684
f903b91f
DM
685Mon Jul 13 02:24:08 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
686
687 * regclass.c (reg_scan_mark_refs): New arg min_regno. Only update
688 regscan information for REGs with numbers greater than or equal to
689 this. All callers changed.
690 (reg_scan_update): New function to efficiently update regscan
691 information on the fly.
692 * rtl.h: Add prototype.
693 * jump.c (jump_optimize): Call it when we make a transformation
694 which generates new pseudo-REGs.
695
cb689bb6
JL
696Sun Jul 12 13:08:14 1998 Jeffrey A Law (law@cygnus.com)
697
698 * collect2.c (main): Use "-x c" instead of "-lang-c" for force the
699 compiler into C mode.
700
555f90c5
JM
701Sun Jul 12 01:27:05 1998 Jason Merrill <jason@yorick.cygnus.com>
702
e70b4d8f
JM
703 * cplus-dem.c (demangle_nested_args): Return a value.
704
555f90c5
JM
705 * tree.h (TYPE_P): New macro.
706
59e621fc
MM
707Sat Jul 11 16:19:48 1998 Mark Mitchell <mark@markmitchell.com>
708
709 * cplus-dem.c (string): Move definition before work_stuff.
710 (work_stuff): Add volatile_type, forgetting_types,
711 previous_argument, and nrepeats fields.
712 (SCOPE_STRING): New macro.
713 (demangle_template): Add `remember' parameter. Add comment.
714 Register the `B' code type here, if remembering. Tidy. Fix crash
715 on NULL tmpl_argvec. Be consistent with use of tname/trawname.
716 (demangle_nested_args): New function.
717 (internal_cplus_demangle): Handle volatile-qualified member
718 functions.
719 (mop_up): Delete the previous_argument string if present.
720 (demangle_signature): Tidy. Handle volatile-qualified member
721 functions. Handle back-references using the `B' code. Use extra
722 parameter to demangle_template and SCOPE_STRING where appropriate.
723 (demangle_template_value_parm): Fix thinko; 'B' is not an integral
724 code.
725 (demangle_class): Use SCOPE_STRING.
726 (gnu_special): Pass additional argument to demangle_template.
727 Use SCOPE_STRING.
728 (demangle_qualified): Save qualified types for later
729 back-references. Handle constructors and destructors for template
730 types correctly.
731 (do_type): Tidy. Use SCOPE_STRING. Pass extra argument to
732 demangle_template. Use demangled_nested_args. Don't remember
733 qualified types here; that's now done in demangle_qualified.
734 Similarly for templates.
735 (do_arg): Improve commment. Handle 'n' repeat code.
736 (remember_type): Check forgetting_types.
737 (demangle_args): Deal with 'n' repeat codes. Tidy.
738
34757369
RE
739Sat Jul 11 02:59:08 1998 Richard Earnshaw <rearnsha@arm.com>
740
741 * arm.md (extendhisi2_mem, movhi, movhi_bytes): Propagate the volatile
742 and structure attribute flags to MEMs generated.
743 (splits for sign-extended HI & QI mode from memory): Also propagate
744 the volatile flag.
745
a717c1f9
RE
746 * configure.in (thumb-*-coff*): Don't cause fixincludes to be run.
747
4dfb04c6
MM
748Fri Jul 10 19:06:59 1998 Michael Meissner <meissner@cygnus.com>
749
750 * varray.h: Include system.h if it hasn't already been included
751 before to get size_t declared.
752
a87ef323
DM
753Fri Jul 10 12:53:58 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
754
755 * jump.c (jump_optimize): If after_regscan and our transformations
756 generate new REGs, rerun reg_scan.
757
3410b2f3
AM
758Fri Jul 10 11:50:43 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
759
760 * config/i960/i960.c (i960_address_cost): MEMA operands with
761 positive offsets < 4096 are free.
762
03c5634a
AS
763Fri Jul 10 12:34:37 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
764
765 * config/m68k/m68k.c (const_uint32_operand): Recognize
766 CONSTANT_P_RTX.
767 (const_sint32_operand): Likewise.
768
df22a2d6
JL
769Thu Jul 9 22:58:59 1998 Jeffrey A Law (law@cygnus.com)
770
771 * Makefile.in (alias.o): Depend on $(EXPR_H).
772
91d7e7ac
R
773Thu Jul 9 18:24:56 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
774
775 * reload1.c (choose_reload_regs): If using an equivalence from
776 find_equiv_reg and reg_reloaded_valid is not set for this register,
777 clear the associated spill_reg_store.
778
9da46522
R
779Thu Jul 9 18:12:49 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
780
781 * reload1.c (emit_reload_insns): If an output reload copies only
782 to a secondary reload register, indicate that the secondary reload
783 does the actual store.
784
930176e7
R
785Thu Jul 9 18:01:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
786
787 * reload.c (find_equiv_reg): If need_stable_sp is set,
788 check if stack pointer is changed directly in a PARALLEL.
789
1eb6762b
JL
790Thu Jul 9 10:38:14 1998 Jeffrey A Law (law@cygnus.com)
791
792 * jump.c (duplicate_loop_exit_test): Fix thinko.
793
b098f56d
JS
794Thu Jul 9 01:30:37 1998 Joel Sherrill <joel@OARcorp.com>
795 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
796
797 * config/i386/rtemself.h: Updated to keep in sync with
798 config/i386/linux.h.
799
800 * configure.in: Added sh-rtemself.
801 * configure: Rebuilt.
802 * config/sh/rtems.h: Removed -D__ELF__ since it is now COFF.
803 * config/sh/rtemself.h: New file.
804
805 * config/rs6000/rtems.h: Defined STARTFILE_DEFAULT_SPEC.
806
02e39abc
JL
807Wed Jul 8 21:43:14 1998 Jeffrey A Law (law@cygnus.com)
808
00ccc16d
JL
809 * configure.in: Check if the assembler supports ".balign" and
810 ".p2align" and define HAVE_GAS_BALIGN_AND_P2ALIGN appropriately.
811 * acconfig.h (HAVE_GAS_BALIGN_AND_P2ALIGN): New tag.
812 * i386/gas.h (ASM_OUTPUT_ALIGN): If the assembler has support for
813 ".balign" then use it.
814
5dd2add6
JL
815 * print-rtl.c (print_rtx): Revert previous patch.
816
752e74f9
JL
817 * jump.c (duplicate_loop_exit_test): Do not duplicate the loop exit
818 test if the exit code has an insn with ASM_OPERANDS.
819
a6610106 820 * i386/cygwin32.h (STDIO_PROTO): Fix typo.
a5508152 821 * m32r.h (STDIO_PROTO): Fix typo.
a6610106 822
5f0c590d
JL
823 * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Handle addresses created by
824 LEGITIMIZE_RELOAD_ADDRESS.
825 * tm.texi (LEGITIMIZE_RELOAD_ADDRESS): Note that this macro must be
826 able to handle addresses created by previous invocations of the macro.
827
2710ffc8
JL
828 * flow.c (find_auto_inc): Remove most recent change. Real bug was
829 elsewhere.
830
02e39abc
JL
831 * cse.c (count_reg_usage): Count registers used in addresses of
832 CLOBBERs.
833
6e9856ba
JW
834Wed Jul 8 15:08:29 1998 Jim Wilson <wilson@cygnus.com>
835
d7f8f047
JW
836 * Makefile.in (STAGESTUFF): Readd line lost during June 9 FSF merge.
837
6e9856ba
JW
838 * configure.in (mips64orion-*-rtems*): Use elf64.h not elfl64.h.
839
795add94
VM
8401998-07-08 Vladimir N. Makarov <vmakarov@cygnus.com>
841
15bfc37c
VM
842 * config/fp-bit.c (__gexf2, __fixxfsi, __floatsixf): Add function
843 stubs.
844
795add94
VM
845 * toplev.c (lang_options): Add -Wlong-long, -Wno-long-long
846 options.
847 * c-decl.c (warn_long_long): Define.
848 (c_decode_option): Parse -Wlong-long, -Wno-long-long options.
849 (grokdeclarator): Add flag `warn_long_long' as guard for
850 warning "ANSI C does not support `long long'".
851 * invoke.texi: Add description of options -Wlong-long,
852 -Wno-long-long.
853 * gcc.1: The same as above.
854
67a00b49
JL
855Wed Jul 8 02:43:34 1998 Jeffrey A Law (law@cygnus.com)
856
b98b49ac
JL
857 * rtlanal.c (reg_overlap_mentioned_p): Handle STRICT_LOW_PART. If
858 either argument is CONSTANT_P, then return zero.
859 * reload.c (reg_overlap_mentioned_for_reload_p): Similarly.
860
67a00b49
JL
861 * configure.in: Also look at $srcdir/gas/configure to find a
862 gas version #.
863
a596f4d7
CW
864Wed Jul 8 00:28:22 1998 Carlo Wood <carlo@runaway.xs4all.nl>
865
866 * dsp16xx.h : Clean up of macro OPTIMIZATION_OPTIONS
867
43e26b30
MK
868Tue Jul 7 21:18:14 1998 Mumit Khan <khan@xraylith.wisc.edu>
869
870 * i386/cygwin32.h (ASM_DECLARE_FUNCTION_NAME): Merge duplicate
871 definitions from last two patches.
872
3c785e47
R
873Tue Jul 7 23:03:34 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
874
875 * reload1.c (choose_reload_regs): Don't set reload_override_in
876 if EQUIV is clobbered in INSN and the reload is done after INSN.
877
41b083c4
R
878Tue Jul 7 21:23:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
879
880 * expr.c (emit_queue): If emitting a SEQUENCE, set QUEUED_INSN
881 to the first insn of the sequence.
882
759bd8b7
R
883Tue Jul 7 21:05:25 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
884
43e26b30 885 * cse.c (cse_insn): Don't make change without validation.
759bd8b7 886
d76b9d09
JL
887Tue Jul 7 11:40:05 1998 Jeffrey A Law (law@cygnus.com)
888
889 * mn10200.md (various zero/sign extension patterns): zero and sign
890 extensions which use "sub" clobber cc0.
891
cf9cf73e
JL
892Tue Jul 7 09:12:08 PDT 1998 Jeff Law (law@cygnus.com)
893
894 * version.c: Bump for snapshot.
895
29b1f862
JL
896Tue Jul 7 10:07:20 1998 Jeffrey A Law (law@cygnus.com)
897
898 * print-rtl.c (print_rtx): Use REAL_VALUE_TYPE instead of "double".
899
61632854
RH
900Tue Jul 7 08:41:27 1998 Richard Henderson (rth@cygnus.com)
901
902 * print-rtl.c (print_rtx): Only print fp values when REAL_VALUE_TYPE
903 is a double.
904
43396c9e
JL
905Tue Jul 7 00:31:58 PDT 1998 Jeff Law (law@cygnus.com)
906
907 * version.c: Bump for snapshot.
908
27da1b4d
MK
909Tue Jul 7 01:03:03 1998 Mumit Khan <khan@xraylith.wisc.edu>
910
911 Support for dllimport and dllexport attributes for i386-pe.
912
913 * tree.h (DECL_NON_ADDR_CONST_P): New accessor macro.
914 (struct tree_decl): Add non_addr_const_p field.
915 * tree.c (staticp): Use.
916
917 * i386/cygwin32.h (CPP_PREDEFINES): Map __declspec(x) to GCC
918 attributes.
919 (SUBTARGET_SWITCHES): Switches to turn on/off dllimport|export
920 attributes. Also accept -mwindows option.
921 (VALID_MACHINE_DECL_ATTRIBUTE): New macro.
922 (MERGE_MACHINE_DECL_ATTRIBUTE): New macro.
923 (REDO_SECTION_INFO_P): New macro.
924 (DRECTVE_SECTION_FUNCTION): New macro.
925 (drectve_section): Cover function to implement above.
926 (SWITCH_TO_SECTION_FUNCTION): New macro.
927 (switch_to_section): Covert function to implement above.
928 (EXTRA_SECTIONS): Add in_drectve.
929 (EXTRA_SECTION_FUNCTIONS): Add in_drectve and switch_to_section.
930 (ENCODE_SECTION_INFO): Delete old macro and redefine as a function.
931 (STRIP_NAME_ENCODING): Handle new attributes.
932 (ASM_OUTPUT_LABELREF): New macro.
933 (ASM_OUTPUT_FUNCTION_NAME): New macro.
934 (ASM_OUTPUT_COMMON): New macro.
935 (ASM_OUTPUT_DECLARE_OBJECT_NAME): New macro.
936
937 * i386/mingw32.h (CPP_PREDEFINES): Map __declspec(x) to GCC
938 attributes.
939
940 * i386/winnt.c (i386_pe_valid_decl_attribute_p): New function.
941 (i386_pe_merge_decl_attributes): New function.
942 (i386_pe_check_vtable_importexport): New function.
943 (i386_pe_dllexport_p): New function.
944 (i386_pe_dllimport_p): New function.
945 (i386_pe_dllexport_name_p): New function.
946 (i386_pe_dllimport_name_p): New function.
947 (i386_pe_mark_dllexport): New function.
948 (i386_pe_mark_dllimport): New function.
949 (i386_pe_encode_section_info): New function.
950 (i386_pe_unique_section): Strip encoding from name first.
951
bceb30e7
MH
952Tue Jul 7 00:50:17 1998 Manfred Hollstein (manfred@s-direktnet.de)
953
954 * libgcc2.c (L_exit): Provide a fake for atexit on systems which
955 define ON_EXIT but not HAVE_ATEXIT.
956
7edf1e04
FS
957Tue Jul 7 00:44:35 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
958
959 * m68k.md (zero_extend QI to HI): Correctly handle TARGET_5200.
960
3403c6ca
UD
961Tue Jul 7 00:36:41 1998 Ulrich Drepper <drepper@cygnus.com>
962
79325812
UD
963 * i386.c: Remove random whitespace at end of lines.
964
3403c6ca
UD
965 * i386.c (ix86_epilogue): For pentium processors, try to deallocate
966 4 or 8 byte stacks with pop instructions instead of an add instruction.
967
eb04ab5a
KK
968Tue Jul 7 00:30:08 1998 Klaus Kaempf <kkaempf@rmi.de>
969
970 * alpha.c: Include tree.h before expr.h.
971
4a870dba
JM
972Mon Jul 6 22:50:48 1998 Jason Merrill <jason@yorick.cygnus.com>
973
4051959b
JM
974 * c-parse.in (struct_head, union_head, enum_head): New nonterminals.
975 (structsp): Use them. Update files generated from c-parse.in.
976 * extend.texi (Type Attributes): Document it.
977
4a870dba
JM
978 * c-decl.c: Add warn_multichar.
979 (c_decode_option): Handle -Wno-multichar.
980 * c-lex.c (yylex): Check it.
981 * c-tree.h: Declare it.
982 * toplev.c (lang_options): Add it.
983 * invoke.texi: Document it.
984
ed79bb3d
R
985Mon Jul 6 22:47:55 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
986
a5546290
R
987 * reload.c (find_equiv_reg): When looking for stack pointer + const,
988 make sure we don't use a stack adjust.
989
1b4d8b2b
R
990 * reload.c (find_equiv_reg): If need_stable_sp is set,
991 check if stack pointer is changed directly.
992
b294ca38
R
993 * reload1.c (delete_dead_insn): Don't delete feeding insn
994 if that insn has side effects.
995
6186ed06
R
996 * flow.c (find_auto_inc): Clear UNCHANGING bit of register that is
997 changed.
998
979e20e9
R
999 * reload1.c (reload_reg_free_before_p): RELOAD_FOR_OPADDR_ADDR
1000 precedes RELOAD_FOR_OUTADDR_ADDRESS.
1001
ed79bb3d
R
1002 * gcse.c (hash_scan_insn): New argument IN_LIBCALL_BLOCK. Changed
1003 caller.
1004
392582fa
KI
1005Mon Jul 6 22:21:56 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
1006
1007 * m68k.c (output_scc_di): Use cmpw #0 instead of tstl when
1008 testing address registers on the 68000.
1009
702d7434
AB
1010Mon Jul 6 22:17:19 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
1011
48d4389d
AB
1012 * i386.c (is_fp_test): Fix thinko.
1013
702d7434
AB
1014 * jump.c (jump_optimize) Check for CONST_INT before using INTVAL.
1015
eafdfea8
RH
1016Mon Jul 6 22:14:31 1998 Richard Henderson (rth@cygnus.com)
1017
800d5c9e
RH
1018 * print-rtl.c (print_rtx): Display the real-value equivalent of
1019 a const_double when easy.
1020
1021 * real.h (REAL_VALUE_TO_TARGET_SINGLE): Use a union to pun types.
1022 Zero memory first for predictability.
1023 (REAL_VALUE_TO_TARGET_DOUBLE): Likewise.
1024 * varasm.c (immed_real_const_1): Notice width of H_W_I == double.
1025
eafdfea8
RH
1026 * regclass.c (allocate_reg_info): Initialize the entire reg_data
1027 virtual array.
1028
ad214bc2
ILT
1029Mon Jul 6 22:09:32 1998 Ian Lance Taylor <ian@cygnus.com>
1030 Jeff Law <law@cygnus.com>
1031
672a233f
ILT
1032
1033 * i386/cygwin32.h: Add some declaration of external functions.
1034 (ASM_DECLARE_FUNCTION_NAME): Define.
1035 (ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL): Define.
1036 (ASM_FILE_END): Define.
1037 * i386/winnt.c (i386_pe_declare_function_type): New function.
1038 (struct extern_list, extern_head): Define.
1039 (i386_pe_record_external_function): New function.
1040 (i386_pe_asm_file_end): New function.
1041
ad214bc2
ILT
1042 * cpplib.c (cpp_options_init): Initialize cplusplus_comments to 1,
1043 matching July 18, 1995 change to cccp.c. If -traditional then
1044 disable cplusplus_comments.
1045
3b39dde8
JL
1046Mon Jul 6 21:28:14 1998 Jeffrey A Law (law@cygnus.com)
1047
fcc60894
JL
1048 * combine.c (expand_compound_operation): Fix thinko in code to optimize
1049 (zero_extend:DI (subreg:SI (foo:DI) 0)) to foo:DI.
1050
3b39dde8
JL
1051 * Disable the following change from gcc2. Not appropriate for egcs:
1052
1053 Sun Jun 7 09:30:31 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1054 * reload.c (find_reloads): Give preference to pseudo that was the
1055 reloaded output of previous insn.
1056
092f7be3
KG
1057Mon Jul 6 21:07:14 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1058
1059 * aclocal.m4 (GCC_FUNC_PRINTF_PTR): Don't define HOST_PTR_PRINTF.
1060 Instead, define a new macro HAVE_PRINTF_PTR which only signifies
1061 whether we have the %p format specifier or not.
1062
1063 * acconfig.h: Delete stub for HOST_PTR_PRINTF, add HAVE_PRINTF_PTR.
1064
1065 * machmode.h (HOST_PTR_PRINTF): When determining the definition,
1066 check HAVE_PRINTF_PTR to see whether "%p" is okay.
1067
1068 * mips-tfile.c: Include machmode.h to get HOST_PTR_PRINTF.
1069
1070 * Makefile.in (mips-tfile.o): Depend on machmode.h.
1071
93de5c31
MM
1072Mon Jul 6 10:42:05 1998 Mark Mitchell <mark@markmitchell.com>
1073
1074 * jump.c (duplicate_loop_exit_test): Don't refuse to copy a
1075 section of code just because it contains
1076 NOTE_INSN_BLOCK_{BEG,END}.
1077 * stmt.c (expand_end_loop): Likewise. Also, don't refuse to
1078 move CALL_INSNs or CODE_LABELs. When moving code, don't move
1079 NOTE_INSN_BLOCK_{BEG,END}.
1080
2f541799
MM
1081Mon Jul 6 09:38:15 1998 Mark Mitchell <mark@markmitchell.com>
1082
1083 * cse.c (CSE_ADDRESS_COST): New macro, based on ADDRESS_COST, but
1084 dealing with ADDRESSOF.
1085 (find_best_addr): Use it.
1086
4fc8ff92
RH
1087Mon Jul 6 09:27:08 1998 Richard Henderson <rth@cygnus.com>
1088
1089 * alpha/vms.h (TRAMPOLINE_TEMPLATE): Revert last change.
1090
10c301ac
DL
1091Mon Jul 6 09:25:06 1998 Dave Love <d.love@dl.ac.uk>
1092
1093 * libgcc2.c (__eprintf): Make args consistent with prototype in
1094 assert.h.
1095
9de2c71a
MM
1096Mon Jul 6 00:28:43 1998 Mark Mitchell <mark@markmitchell.com>
1097
1098 * cse.c (cse_insn): When SETting (MEM (ADDRESSOF (X))) to Y,
1099 don't claim that the former is equivalent to the latter.
1100
a4017712
JL
1101Sun Jul 5 23:58:19 1998 Jeffrey A Law (law@cygnus.com)
1102
7bd8b2a8
JL
1103 * cse.c (cse_insn): Second arg is an RTX now. Update all callers.
1104 (cse_basic_block): Keep track of the current RETVAL insn for a
1105 libcall instead of just noting that we're in a libcall.
1106
adc05e6c
JL
1107 * combine.c (simplify_comparison): Do not commute a AND into
1108 a paradoxical SUBREG if not WORD_REGISTER_OPERATIONS.
1109
a4017712
JL
1110 * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Protect with
1111 HAVE_GAS_MAX_SKIP_P2ALIGN.
1112 * i386/linux.h: Likewise.
1113
f7e0e539
DM
1114Fri Jul 3 02:33:35 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
1115
1116 * sparc.c (sparc_operand, move_operand, arith_operand,
1117 arith11_operand, arith10_operand, arith_double_operand,
1118 arith11_double_operand, arith10_double_operand, small_int,
1119 uns_small_int): Recognize CONSTANT_P_RTX.
1120 (output_sized_memop, output_move_with_extension,
1121 output_load_address, output_size_for_block_move,
1122 output_block_move, delay_operand): Remove, has not been
1123 enabled or referenced for years.
1124 * sparc.md (movstrsi, block_move_insn): Likewise.
1125 * sparc.h (PREDICATE_CODES): Define.
1126 * linux-aout.h (MACHINE_STATE_{SAVE,RESTORE}): Override with
1127 version which uses getcc/setcc traps to save/restore condition
1128 codes.
1129 * linux64.h: Likewise.
1130 * sunos4.h: Likewise.
1131 * linux.h: Likewise.
1132 * sol2.h: Likewise.
1133 * sun4o3.h: Likewise.
1134
d420e567
RH
1135Fri Jul 3 02:28:05 1998 Richard Henderson <rth@cygnus.com>
1136
1137 * alpha.c (alpha_initialize_trampoline): Hack around Pmode/ptr_mode
1138 lossage on VMS. Reported by kkaempf@rmi.de.
1139 * alpha/vms.h (TRAMPOLINE_TEMPLATE): Add missing 0.
1140
4abfe235
NC
1141Thu Jul 2 17:41:14 1998 Nick Clifton <nickc@cygnus.com>
1142
1143 * config/m32r/m32r.h (MUST_PASS_IN_STACK): Override default
1144 version.
1145
39403d82
DE
1146Thu Jul 2 14:34:48 1998 David Edelsohn <edelsohn@mhpcc.edu>
1147
1148 * expr.h (STACK_SIZE_MODE): New macro.
1149 * explow.c (allocate_dynamic_stack_space): Use it for
1150 mode of allocate_stack pattern increment operand.
1151 * tm.texi (STACK_SAVEAREA_MODE, STACK_SIZE_MODE): Document.
1152 * md.texi (stack_save_block, ...): Reflect use of macro.
1153
1154 * rs6000.h (PROMOTE_MODE): Always promote to word_mode.
1155 (PROMOTE_FUNCTION_ARGS): Define.
1156 (PROMOTE_FUNCTION_RETURN): Define.
1157 (FUNCTION_VALUE): Promote to word_mode if smaller.
1158 Convert to gen_rtx_FOO.
1159 * rs6000.md (call_indirect): Store doubleword in 64-bit mode.
1160 Convert to gen_rtx_FOO.
1161 * rs6000.c: Convert to gen_rtx_FOO.
1162
848205e6
MM
1163Thu Jul 2 14:16:11 1998 Michael Meissner <meissner@cygnus.com>
1164
1165 * varray.{c,h}: New files to provide virtual array support.
6feacd09 1166
848205e6
MM
1167 * Makefile.in (OBJS): Add varray.o.
1168 (varray.o): Add new file.
6feacd09
MM
1169 (REGS_H): New variable for dependencies for files including
1170 regs.h. Add varray.h and files it includes. Change all regs.h
1171 dependencies to $(REGS_H).
848205e6
MM
1172
1173 * toplev.c (x{m,re}alloc): If size is 0, allocate 1 byte.
1174 (xcalloc): Provide frontend for calloc.
1175 * {tree,rtl}.h (xcalloc): Add declaration.
1176
6feacd09
MM
1177 * basic-block.h (REG_BASIC_BLOCK): Convert reg_n_info to be a
1178 varray.
1179
1180 * regs.h (toplevel): Include varray.h.
1181 (reg_n_info): Switch to use a varray.
1182 (REG_*): Ditto.
1183 (allocate_reg_info): Change num_regs argument to be size_t.
1184
1185 * regclass.c (reg_info_data): New structure to remember groups of
1186 reg_info structures allocated that are to be zeroed.
1187 ({pref,alt}class_buffer): New statics to hold buffers
1188 allocate_reg_info allocates for {pref,alt}class_buffer.
1189 (regclass): Use {pref,alt}class_buffer to initialize
1190 {pref,alt}class.
1191 (allocate_reg_info): Switch to make reg_n_info use varrays.
1192 Allocate buffers for the preferred and alter register class
1193 information. Change num_regs argument to be size_t, not int.
1194
1195 * flow.c (reg_n_info): Switch to use varrays.
1196
f7c9c2bb
RL
1197Thu Jul 2 10:11:47 1998 Robert Lipe <robertl@dgii.com>
1198
1199 * install.texi (sco3.2v5): Document new --with-gnu-as flag.
1200 * config/i386/sco5.h (JUMP_TABLES_IN_TEXT_SECTION): Defined as
1201 in other targets.
1202 (USE_GAS): Conditionalize away native assembler usage.
1203 * config/i386/sco5gas.h: New file.
1204 * config/i386/t-sco5gas: New file.
1205 * configure.in (ix86-sco3.2v5*): Use new files if --with-gnu-as
1206
c92293e7
CM
1207Thu Jul 2 08:20:00 1998 Catherine Moore <clm@cygnus.com>
1208
1209 * haifa-sched.c (alloc_EXPR_LIST): Change to use
1210 unused_expr_list.
1211
ee5b121e
DL
1212Thu Jul 2 14:13:28 1998 Dave Love <d.love@dl.ac.uk>
1213
1214 * Makefile.in (install-info): Don't use $realfile. Ignore
1215 possible errors from the install-info program.
1216
729a2bc6
AB
1217Thu Jul 2 01:53:32 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
1218
1219 * combine.c (simplify_comparison): Apply SUBREG_REG to SUBREGs.
1220
95912252
RH
1221Wed Jul 1 23:06:03 1998 Richard Henderson <rth@cygnus.com>
1222
1223 * i386.h (HARD_REGNO_MODE_OK): Kill spurrious test.
1224 (MODES_TIEABLE_P): Tie SImode and HImode.
1225
56159047
AJ
12261998-07-01 Andreas Jaeger <aj@arthur.rhein-neckar.de>
1227
1228 * invoke.texi (Optimize Options): Fix typo.
1229
00a2e46c
JW
1230Wed Jul 1 22:25:43 1998 Jim Wilson <wilson@cygnus.com>
1231
1232 * xcoffout.c (xcoffout_begin_function): Call xcoffout_block for
1233 the zero'th block.
1234
4c95db67
KR
1235Wed Jul 1 23:12:58 1998 Ken Raeburn <raeburn@cygnus.com>
1236
1237 * h8300.c (print_operand): Delete %L support.
1238 * h8300.md (branch_true, branch_false): Use %= with a prefix
1239 instead of %L for local branch labels.
1240
370b1b83
R
1241Wed Jul 1 21:27:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1242
1243 * reload1.c (emit_reload_insns): Use proper register classes for
1244 SECONDARY_INPUT_RELOAD_CLASS / SECONDARY_MEMORY_NEEDED code.
1245
826e3854
R
1246Wed Jul 1 21:17:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1247
1248 * reload.c (find_reloads): If there are multiple
1249 RELOAD_FOR_INPUT_ADDRESS / RELOAD_FOR_OUTPUT_ADDRESS reloads for
1250 one operand, change RELOAD_FOR_INPADDR_ADDRESS /
1251 RELOAD_FOR_OUTADDR_ADDRESS for all but the first
1252 RELOAD_FOR_INPUT_ADDRESS / RELOAD_FOR_OUTPUT_ADDRESS reloads.
1253
8543c01e
R
1254Wed Jul 1 17:23:23 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1255
1256 * regmove.c (fixup_match_2): Check that P has RTX_CLASS 'i' before
1257 using its PATTERN.
1258
aac5cc16
RH
1259Wed Jul 1 05:04:41 1998 Richard Henderson <rth@cygnus.com>
1260
1261 * expr.c (emit_group_load, emit_group_store): Rewrite considering
1262 the size and alignment of the structure being manipulated.
1263 * expr.c, calls.c, function.c: Update all callers.
1264 * expr.h: Update prototypes.
1265 * cse.c (invalidate): Cope with parallels.
1266
1eac9f59
RH
1267Wed Jul 1 04:22:23 1998 Richard Henderson <rth@cygnus.com>
1268
1269 * sparc.c (function_arg_record_value): Take a MODE arg with which to
1270 create the PARALLEL. Update all callers.
1271
822a3443
RH
1272Wed Jul 1 04:10:35 1998 Richard Henderson <rth@cygnus.com>
1273
1274 * expr.c (expand_assignment, store_constructor, expand_expr): Use
1275 convert_memory_address instead of convert_to_mode when possible.
1276
c714f03d
RH
1277Wed Jul 1 03:48:00 1998 Richard Henderson <rth@cygnus.com>
1278
1279 * alpha.c (alpha_initialize_trampoline): Take arguments describing
1280 the layout. Use ptr_mode. Disable hint generation. Use gen_imb.
1281 * alpha.h (INITIALIZE_TRAMPOLINE): Pass extra args to the init func.
1282 (TRANSFER_FROM_TRAMPOLINE): Move ...
1283 * alpha/osf.h: ... here.
1284 * alpha/vms.h (INITIALIZE_TRAMPOLINE): Use alpha_initialize_trampoline.
1285 (TRANSFER_FROM_TRAMPOLINE): Remove undef.
1286 * alpha/win-nt.h: Likewise.
1287 * alpha/vxworks.h: Likewise.
1288
1289 * alpha/linux.h: Revert gcc2 merge lossage.
1290
03369c93
AS
1291Wed Jul 1 10:56:55 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1292
1293 * c-decl.c (grokdeclarator): Don't warn about implicit int in
1294 `typedef foo = bar'.
1295
e06c10eb
RL
1296Wed Jul 1 02:12:33 1998 Robert Lipe <robertl@dgii.com>
1297
1298 * i386.c (asm_output_function_prefix): Make 686 function
1299 prologues not issue .types for non-global lables.
1300
154f82c7
DT
1301Tue Jun 30 23:46:53 1998 Dmitrij Tejblum <tejblum@arc.hq.cti.ru>
1302
1303 * i386/freebsd.h (WCHAR_TYPE): Chagne to an "int".
1304 (WCHAR_TYPE_SIZE): Update appropriately.
1305
20b20440
JL
1306Tue Jun 30 23:16:39 1998 Jeffrey A Law (law@cygnus.com)
1307
762a1d90
JL
1308 * flow.c (recompute_reg_usage): Does not return a value.
1309 * rtl.h (recompute_reg_usage): Update prototype.
1310
20b20440
JL
1311 * jump.c (jump_optimize): Show that the jump chain is not
1312 valid when not optimizing.
1313
cff48d8f
RH
1314Tue Jun 30 16:01:01 1998 Richard Henderson <rth@cygnus.com>
1315
1316 * rtl.def (CONSTANT_P_RTX): New.
1317 * rtl.h (CONSTANT_P): Recognize it.
1318 * cse.c (fold_rtx): Eliminate it.
1319 * expr.c (can_handle_constant_p): New variable.
1320 (init_expr_once): Initialize it.
1321 (expand_builtin): Generate CONSTANT_P_RTX if the expression is not
1322 immediately recognizable as a constant.
1323
1324 * alpha.c (reg_or_6bit_operand): Recognize CONSTANT_P_RTX.
1325 (reg_or_8bit_operand, cint8_operand, add_operand): Likewise.
1326 (sext_add_operand, and_operand, or_operand): Likewise.
1327 (reg_or_cint_operand, some_operand, input_operand): Likewise.
1328 * alpha.h (PREDICATE_CODES): Add CONSTANT_P_RTX where needed.
1329
2067f1f5
BK
13301998-06-30 Benjamin Kosnik <bkoz@bliss.nabi.net>
1331
1332 * dbxout.c (dbxout_type_methods): Remove warn_template_debugging.
1333
d2cabf16
KG
1334Tue Jun 30 14:03:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1335
1336 * aclocal.m4 (GCC_NEED_DECLARATION): Accept an optional second
1337 argument, which is typically preprocessor code used to draw in
1338 additional header files when looking for a function declaration.
1339 (GCC_NEED_DECLARATIONS): Likewise.
1340
1341 * configure.in (GCC_NEED_DECLARATIONS): Add checks for getrlimit
1342 and setrlimit, search for them in sys/resource.h.
1343
1344 * acconfig.h: Add stubs for NEED_DECLARATION_GETRLIMIT and
1345 NEED_DECLARATION_SETRLIMIT.
1346
1347 * system.h: Prototype getrlimit/setrlimit if necessary.
1348
70198e3d
MM
1349Tue Jun 30 10:54:48 1998 Mark Mitchell <mark@markmitchell.com>
1350
84001dd0
MM
1351 * rtl.texi: Don't say that RTX_INTEGRATED_P is not depended
1352 upon.
70198e3d 1353
ba1a5707
DE
1354Tue Jun 30 13:11:42 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
1355
1356 * rs6000/sysv4.h (asm output): add tabs for asm directives.
1357
1358Tue Jun 30 13:11:42 1998 David Edelsohn <edelsohn@mhpcc.edu>
1359
1360 * Makefile.in (FLAGS_TO_PASS): Set AR_FLAGS to AR_FOR_TARGET_FLAGS.
1361
51db713f
KG
1362Tue Jun 30 08:59:15 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1363
1364 * gansidecl.h (ATTRIBUTE_UNUSED): Use __unused__ not `unused'.
1365 Don't define NULL here. Also, remove all vestiges of autoconf
1366 based checks for bcmp/bcopy/bzero/index/rindex.
1367
1368 * system.h: Immediately after including stdio.h, check for and if
1369 necessary provide a default definition of NULL.
1370
b8705408
MM
1371Tue Jun 30 08:22:05 1998 Michael Meissner <meissner@cygnus.com>
1372
1373 * reload1.c (reload_cse_simplify_operands): Call
1374 fatal_insn_not_found, not abort.
1375
20f2d03a
JL
1376Tue Jun 30 02:34:02 1998 Jeffrey A Law (law@cygnus.com)
1377
1378 * choose-temp.c (make_temp_file): Accept new argument for the
1379 file suffix to use. Allocate space for it and add it to the
1380 template.
1381 * mkstemp.c (mkstemps): Renamed from mkstemp. Accept new argument
1382 for the length of the suffix. Update template struture checks
1383 to handle optinal suffix.
1384 * collect2.c (make_temp_file): Update prototype.
1385 (main): Put proper suffixes on temporary files.
1386 * gcc.c (make_temp_file): Update prototype.
1387 (do_spec_1): Put proper suffixes on temporary files.
1388
dbde0d5d
BH
1389Tue Jun 30 00:56:19 1998 Bruno Haible <haible@ilog.fr>
1390
1391 * invoke.texi: Document new implicit structure initialization
1392 warning.
1393
ad2c71b7
JL
1394Mon Jun 29 22:12:06 1998 Jeffrey A Law (law@cygnus.com)
1395
9ec36da5
JL
1396 * Merge from gcc2 June 9, 1998 snapshot. See ChangeLog.13 for
1397 details.
1398
ad2c71b7
JL
1399 * pa.c, pa.h, pa.md: Convert to gen_rtx_FOO.
1400
4f70758f
KG
1401Mon Jun 29 20:12:41 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1402
1403 * Makefile.in (fix-header): Don't needlessly depend on cpperror.o.
1404
1405 * alias.c (CHECK_ALIAS_SETS_FOR_CONSISTENCY): Cast expansion to
1406 void since it is evaluated in a comma list.
1407
1408 * mips.h (ASM_GENERATE_INTERNAL_LABEL): Always sprintf `NUM'
1409 argument as a long and cast `NUM' to long to ensure it is of the
1410 proper width. Wrap macro arguments in parens when they appear in
1411 the expansion.
1412
1413 * sol2.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
1414
1415 * sparc.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
1416 (ASM_DECLARE_RESULT): Fix fprintf format specifier to match
1417 function argument return type.
1418 (REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P, REGNO_OK_FOR_FP_P,
1419 REGNO_OK_FOR_CCFP_P): Use `(unsigned)' not `U'.
1420
1421 * cpplib.c (cpp_message_from_errno): Remove unneeded argument to
1422 cpp_message.
1423
1424 * dbxout.c: Fix the comments after an #endif to reflect the actual
1425 condition tested in the preceding #if.
1426
1427 * except.c (find_all_handler_type_matches): Switch to old-style
1428 function definition.
1429
1430 * expr.c (expand_builtin): Remove unused variable `type' twice.
1431
1432 * gbl-ctors.h (DO_GLOBAL_CTORS_BODY): Cast -1 before comparing it
1433 to an unsigned long.
1434
1435 * haifa-sched.c (print_insn_chain): Remove unused function.
1436
1437 * objc/objc-act.c (build_msg_pool_reference): Hide prototype and
1438 definition.
1439
1440 * toplev.c: When testing whether to include dbxout.h, also include
1441 it when XCOFF_DEBUGGING_INFO is defined.
1442
1443 * unroll.c (unroll_loop): Add parentheses around assignment used
1444 as truth value.
1445
a611ae14
CM
1446Mon Jun 29 12:18:00 1998 Catherine Moore <clm@cygnus.com>
1447
1448 * config/lb1spc.asm (.div, .udiv): Replace routines.
1449
b4213325
MM
1450Mon Jun 29 09:44:24 1998 Mark Mitchell <mark@markmitchell.com>
1451
1452 * rtl.h: Update comment about special gen_rtx variants.
1453 * emit-rtl.c (gen_rtx): Handle MEMs using gen_rtx_MEM.
1454
39d45901
JL
1455Sun Jun 28 20:58:51 1998 Jeffrey A Law (law@cygnus.com)
1456
1457 * choose-temp.c (choose_temp_base): Restore original variant of
1458 this function for compatibility.
1459 (make_temp_file): This is the new, preferred interface to create
1460 temporary files.
1461 * collect2.c (choose_temp_base): Delete declaration.
1462 (make_temp_file): Declare.
1463 (temp_filename_length, temp_filename): Delete.
1464 (main): Use make_temp_file to get temporary files. Use --lang-c
1465 to force the resulting ctort/dtor file to be compiled with the C
1466 compiler. Make sure to remove temporary files on all exit paths.
1467 * gcc.c (make_temp_file): Provide prototype if MKTEMP_EACH_FILE is
1468 defined.
1469 (choose_temp_base): Only provide prototype if MKTEMP_EACH_FILE is
1470 not defined.
1471 (do_spec): Use make_temp_file if MKTEMP_EACH_FILE is defined.
1472
6cd5dccd
KG
1473Sun Jun 28 08:57:09 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1474
1475 * configure.in (GCC_NEED_DECLARATIONS): Add strerror, getcwd and
1476 getwd.
1477
1478 * acconfig.m4: Add stubs for NEED_DECLARATION_STRERROR,
1479 NEED_DECLARATION_GETCWD and NEED_DECLARATION_GETWD.
1480
1481 * cccp.c: Remove strerror()/sys_nerr/sys_errlist decls.
1482 (my_strerror): Add prototype and make it static.
1483
1484 * collect2.c: Likewise.
1485
1486 * cpplib.c: Likewise.
1487
1488 * gcc.c: Likewise, but keep `my_strerror' extern.
1489
1490 * protoize.c: Likewise.
1491
1492 * pexecute.c (my_strerror): Add argument to prototype.
1493
1494 * system.h: Add prototypes for getcwd, getwd and strerror. Add
1495 extern decls for sys_nerr and sys_errlist. Make abort decl
1496 explicitly extern.
1497
1498 * getpwd.c: Remove decls for getwd and getcwd.
1499
984e3c38
JL
1500Sun Jun 28 02:11:16 PDT 1998 Jeff Law (law@cygnus.com)
1501
1502 * version.c: Bump for snapshot.
1503
0bef9b8d
RH
1504Sat Jun 27 23:32:25 1998 Richard Henderson <rth@cygnus.com>
1505
1506 * jump.c (jump_optimize): Use side_effects_p & may_trap_p instead
1507 of rtx_unsafe_p. Use modified_between_p instead of reg_set_between_p.
1508 Allow FP moves to be optimized.
1509 (rtx_unsafe_p): Delete.
1510
97a7f457
RH
1511Sat Jun 27 23:02:04 1998 Richard Henderson <rth@cygnus.com>
1512
1513 * objc/archive.c: Remove <string.h> prototypes.
1514
b00c2351
JL
1515Sat Jun 27 22:37:05 1998 Jeffrey A Law (law@cygnus.com)
1516
f89223a9
JL
1517 * tm.texi (NEED_MATH_LIBRARY): Document new target macro.
1518
b00c2351
JL
1519 * Makefile.in (gencheck): Remove $(TREE_H) dependency.
1520
d2a0c2ee
JC
1521Sat Jun 27 20:20:00 1998 John Carr <jfc@mit.edu>
1522
1523 * dsp16xx.h (FIRST_PSEUDO_REGISTER): Add parentheses to definition.
1524 * dsp16xx.c (next_cc_user_unsigned): New function.
1525 Remove save_next_cc_user_code.
1526 (print_operand): Use HOST_WIDE_INT_PRINT_* macros.
1527 * dsp16xx.md: Call next_cc_user_unsigned instead of using
1528 save_next_cc_user_code.
1529 Use gen_rtx_* functions instead of gen_rtx.
1530
1531Sat Jun 27 20:18:34 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
1532
39403d82 1533 * rs6000.h: Add trap_comparison_operator to PREDICATE_CODES.
d2a0c2ee 1534
4c649323
JL
1535Sat Jun 27 16:45:42 1998 Jeffrey A Law (law@cygnus.com)
1536
1537 * flow.c (count_reg_sets): New function.
1538 (count_reg_sets_1, count_ref_references): Likewise.
1539 (recompute_reg_usage): Likewise.
1540 * rtl.h (recompute_reg_usage): Add prototype.
1541 * toplev.c (rest_of_compilation): Call recompute_reg_usage just
1542 before local register allocation.
1543
ea56ab2a
RH
1544Sat Jun 27 13:15:30 1998 Richard Henderson <rth@cygnus.com>
1545
1546 * alpha.md (negsf, negdf): Revert Jan 22 change.
1547
50793ea3
KG
1548Sat Jun 27 07:35:21 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1549
7f43495a
KG
1550 * mkstemp.c: Include gansidecl.h. Rename uint64_t to gcc_uint64_t.
1551 (mkstemp): Remove size specifier for variable `letters'. Call
1552 gettimeofday, not __gettimeofday.
1553
50793ea3
KG
1554 * Makefile.in (EXPR_H): New dependency variable.
1555 (c-typeck.o): Depend on $(EXPR_H) instead of expr.h.
1556 (c-iterate.o): Likewise.
1557 (gencheck): Depend on $(TREE_H) instead of tree.h, etc.
1558 (stor-layout.o): Depend on $(EXPR_H) instead of expr.h.
1559 (toplev.o): Likewise. Also depend on $(RECOG_H) instead of recog.h.
1560 (varasm.o): Depend on $(EXPR_H) instead of expr.h.
1561 (function.o): Likewise.
1562 (stmt.o): Likewise.
1563 (except.o): Likewise.
1564 (expr.o): Likewise.
1565 (calls.o): Likewise.
1566 (expmed.o): Likewise.
1567 (explow.o): Likewise.
1568 (optabs.o): Likewise.
1569 (sdbout.o): Likewise.
1570 (dwarf2out.o): Likewise.
1571 (emit-rtl.o): Likewise.
1572 (integrate.o): Likewise.
1573 (jump.o): Likewise.
1574 (cse.o): Likewise.
1575 (gcse.o): Likewise. Also depend on $(BASIC_BLOCK_H) instead of
1576 basic-block.h.
1577 (loop.o): Depend on $(EXPR_H) instead of expr.h.
1578 (unroll.o): Likewise.
1579 (combine.o): Likewise.
1580 (reload.o): Likewise.
1581 (reload1.o): Likewise.
1582 (caller-save.o): Likewise.
1583 (reorg.o): Likewise.
1584 (alias.o): Don't depend on insn-codes.h.
1585 (regmove.o): Depend on $(RECOG_H)/$(EXPR_H) instead of recog.h/expr.h.
1586 (insn-emit.o): Depend on $(EXPR_H) instead of expr.h.
1587 (insn-opinit.o): Likewise.
1588
003ac91d
JL
1589Sat Jun 27 01:35:14 1998 Jeffrey A Law (law@cygnus.com)
1590
1591 * choose-temp.c (choose_temp_base): Remove MPW bits. Use mkstemp
1592 instead of mktemp.
1593 * gcc.c (MKTEMP_EACH_FILE): Define.
1594 (main): No need to call choose_temp_base if we are going to
1595 use choose_temp_base to create each file later.
1596 * mkstemp.c: New file. Adapted from glibc.
1597 * Makefile.in (xgcc, colect2, protoize, unprotoize): Link in mkstemp.o
1598 (mkstemp.o): Add dependencies.
1599
1600 * configure.in (gettimeofday): Check for its existance.
1601 * config.in (HAVE_GETTIMEOFDAY): Define.
1602 * configure: Rebuilt.
1603
b4e95693
MM
16041998-06-26 Michael Meissner <meissner@cygnus.com>
1605
1606 * rs6000.md (ne 0, non power case): Add missing & constraint.
463b558b
MM
1607 Name pattern ne0.
1608 (negative abs insns): Add pattern names.
b4e95693 1609
265ce5bb
DL
1610Fri Jun 26 17:36:42 1998 Dave Love <d.love@dl.ac.uk>
1611
1612 * Makefile.in (install-info): Run install-info program in separate
1613 loop.
1614
e4da5f6d
MM
1615Fri Jun 26 16:03:15 1998 Michael Meissner <meissner@cygnus.com>
1616
1617 * haifa-sched.c (schedule_block): Add hooks for the machine
1618 description to reorder the ready list, and update how many more
1619 instructions can be issued this cycle.
1620 * tm.texi (MD_SCHED_{INIT,REORDER,VARIABLE_ISSUE}): Document.
1621
db3d4438
DM
1622Fri Jun 26 11:54:11 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
1623
1624 * config/sparc/sparc.h (REGNO_OK_FOR_{INDEX,BASE,FP,CCFP}_P):
1625 Explicitly mark the constant being compared against as unsigned.
1626 * config/sparc/sparc.c (sparc_select, cpu_default, cpu_table):
1627 Fully initialize final members.
1628 (mem_aligned_8): Explicit init of offset to zero.
1629 (output_function_prologue): Explicit init of n_regs to zero.
1630 (output_function_epilogue): Likewise, and mark arg size as
1631 unused.
1632 (init_cumulative_args): Mark libname and indirect as unused.
1633 (function_arg_pass_by_reference): Likewise for cum and named.
1634 (sparc_builtin_saveregs): Likewise for arglist.
1635 (sparc_flat_eligible_for_epilogue_delay): Likewise for slot.
1636
ed4c4348
RE
1637Fri Jun 26 06:58:54 1998 Richard Earnshaw (rearnsha@arm.com)
1638
1639 * arm.h (SECONDARY_INPUT_RELOAD_CLASS): Only need a secondary reload
1640 if reloading a MEM.
1641
1642 * arm.h (arm_adjust_cost): Renamed bogus prototype from
1643 arm_adjust_code.
1644 (bad_signed_byte_operand): Add prototype.
1645 * arm.c (arm_override_options): Make I unsigned.
1646 (const_ok_for_arm): Add casts to the constants.
1647 (load_multiple_operation): Don't redeclare elt in sub-block.
1648 (arm_gen_movstrqi): Delete external declaration of optimize.
1649 (gen_compare_reg): Declare parameter fp.
1650
1651 * arm.c (final_prescan_insn): Only initialize scanbody if the insn
1652 has a pattern.
1653
3c303f52
KG
1654Fri Jun 26 09:31:24 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1655
1656 * alpha.c: Include system.h and toplev.h.
1657 (cint8_operand): Mark parameter `mode' with ATTRIBUTE_UNUSED.
1658 (const48_operand): Likewise.
1659 (mode_width_operand): Likewise.
1660 (mode_mask_operand): Likewise.
1661 (mul8_operand): Likewise.
1662 (current_file_function_operand): Likewise.
1663 (signed_comparison_operator): Likewise.
1664 (divmod_operator): Likewise.
1665 (any_memory_operand): Likewise.
1666 (alpha_return_addr): Likewise for parameter `frame'.
1667 (alpha_builtin_saveregs): Likewise for parameter `arglist'.
1668 (vms_valid_decl_attribute_p): Likewise for parameters `decl' and
1669 `attributes'.
1670 (alpha_start_function): Likewise for parameter `decl'. Use
1671 HOST_WIDE_INT_PRINT_DEC in call to fprintf. Fix various format
1672 specifiers. Remove unused variables `lab' and `name'.
1673 (alpha_end_function): Mark parameter `decl' with ATTRIBUTE_UNUSED.
1674 (check_float_value): Likewise for parameter `overflow'.
1675 (alpha_need_linkage): Likewise for parameters `name' and `is_local'.
1676
1677 * alpha.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Define as
1678 taking an argument.
1679 (ASM_OUTPUT_SHORT): Cast argument to `int' in call to fprintf.
1680 (ASM_OUTPUT_CHAR): Likewise.
1681 (ASM_OUTPUT_BYTE): Likewise.
1682 (PRINT_OPERAND_ADDRESS): Use HOST_WIDE_INT_PRINT_DEC in call to
1683 fprintf.
1684 (PUT_SDB_EPILOGUE_END): Mention argument `NAME' in definition.
1685 Add prototypes for functions in alpha.c.
1686
1687 * alpha.md (ashldi3): Add default case in switch.
1688
6d6393e3
MH
16891998-06-26 Manfred Hollstein <manfred@s-direktnet.de>
1690
1691 * Makefile.in (gcc_version, gcc_version_trigger): New macros.
1692 (version): Initialize from $(gcc_version).
1693
1694 * configure.in (version): Rename to gcc_version.
1695 (gcc_version_trigger): New variable; call AC_SUBST for it and
1696 emit it into the generated config.status.
1697 * configure: Regenerate.
1698
30d68b86
MM
1699Thu Jun 25 12:47:41 1998 Mark Mitchell <mark@markmitchell.com>
1700
1701 * fold-const.c (make_range): Don't go looking at TREE_OPERANDs of
1702 nodes that are not expressions.
1703
41472af8
MM
1704Thu Jun 25 15:08:16 1998 Mark Mitchell <mark@markmitchell.com>
1705
1706 * invoke.texi (-fstrict-aliasing): Document.
1707 * rtl.texi (MEM_ALIAS_SET): Document.
1708
1709 * flags.h (flag_strict_aliasing): Declare.
1710 * toplev.c (flag_strict_aliasing): Define.
1711 (f_options): Add -strict-aliasing.
1712 (main): Set flag_strict_aliasing if -O2 or higher.
1713
1714 * tree.h (tree_type): Add alias_set field.
1715 (TYPE_ALIAS_SET): New macro.
1716 (TYPE_ALIAS_SET_KNOWN_P): Likewise.
1717 (get_alias_set): Declare.
1718 * tree.c (lang_get_alias_set): Define.
1719 (make_node): Initialize TYPE_ALIAS_SET.
1720 (get_alias_set): New function.
1721 * print-tree.c (print_node): Dump the alias set for a type.
1722
1723 * c-tree.h (c_get_alias_set): Declare.
1724 * c-common.c (c_get_alias_set): New function.
1725 * c-decl.c (init_decl_processing): Set lang_get_alias_set.
1726
1727 * expr.c (protect_from_queue): Propogage alias sets.
1728 (expand_assignment): Calculate alias set for new MEMs.
1729 (expand_expr): Likewise.
1730 * function.c (put_var_into_stack): Likewise.
1731 (put_reg_into_stack): Likewise.
1732 (gen_mem_addressof): Likewise.
1733 (assign_parms): Likewise.
1734 * stmt.c (expand_decl): Likewise.
1735 * varasm.c (make_decl_rtl): Eliminate redundant clearing of
1736 DECL_RTL. Calculate alias set for new MEMs.
1737
1738 * rtl.def (REG): Add dummy operand.
1739 (MEM): Add extra operand to store the MEM_ALIAS_SET.
1740 * rtl.h (MEM_ALIAS_SET): New macro.
1741 (gen_rtx_MEM): Declare.
1742 * emit-rtl.c (gen_rtx_MEM): New function.
1743 * gengenrtl.c (sepcial_rtx): Make MEMs special.
1744
1745 * alias.c (CHECK_ALIAS_SETS_FOR_CONSISTENCY): New macro.
1746 (DIFFERENT_ALIAS_SETS_P): Likewise.
1747 (canon_rtx): Propogate the alias set to the new MEM.
1748 (true_dependence): Check the alias sets.
1749 (anti_dependence): Likewise.
1750 (output_dependence): Likewise.
1751 * explow.c (stabilize): Progoate alias sets.
1752 * integrate.c (copy_rtx_and_substitute): Likewise.
1753 * final.c (alter_subreg): Make sure not to leave MEM_IN_STRUCT_P
1754 in an unpredictable state. Propogate alias sets.
1755 * reload1.c (reload): Clear MEM_ALIAS_SET for new MEMs about which
1756 we have no alias information.
1757
9c606f69
AM
1758Thu Jun 25 16:59:18 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
1759
1760 * except.h (CATCH_ALL_TYPE): Definition moved to eh-common.h.
1761 (find_all_handler_type_matches): Add function prototype.
1762 * eh-common.h (CATCH_ALL_TYPE): Definition added.
1763 * except.c (find_all_handler_type_matches): Add function to find all
1764 runtime type info in the exception table.
1765 (output_exception_table_entry): Special case for CATCH_ALL_TYPE.
1766
296b8152
KG
1767Thu Jun 25 15:47:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1768
1769 * Makefile.in (xcoffout.o): Depend on toplev.h, output.h and dbxout.h.
1770
1771 * config/fp-bit.c (_fpmul_parts): Move variables `x', `ylow',
1772 `yhigh' and `bit' into the scope in which they are used.
1773 (_fpdiv_parts): Remove unused variables `low', `high', `r0', `r1',
1774 `y0', `y1', `q', `remainder', `carry', `d0' and `d1'.
1775
1776 * rs6000.c: Move include of output.h below tree.h. Include toplev.h.
1777 (any_operand): Mark unused parameters `op' and `mode' with
1778 ATTRIBUTE_UNUSED.
1779 (count_register_operand): Likewise for parameter `mode'.
1780 (fpmem_operand): Likewise.
1781 (short_cint_operand): Likewise.
1782 (u_short_cint_operand): Likewise.
1783 (non_short_cint_operand): Likewise.
1784 (got_operand): Likewise.
1785 (got_no_const_operand): Likewise.
1786 (non_add_cint_operand): Likewise.
1787 (non_logical_cint_operand): Likewise.
1788 (mask_operand): Likewise.
1789 (current_file_function_operand): Likewise.
1790 (small_data_operand): Likewise for parameters `op' and `mode' but
1791 only when !TARGET_ELF.
1792 (init_cumulative_args): Mark parameters `libname' with
1793 ATTRIBUTE_UNUSED.
1794 (function_arg_pass_by_reference): Likewise for parameters `cum',
1795 `mode' and `named'.
1796 (expand_builtin_saveregs): Likewise for parameter `args'.
1797 (load_multiple_operation): Likewise for parameter `mode'.
1798 (store_multiple_operation): Likewise.
1799 (branch_comparison_operator): Likewise.
1800 (secondary_reload_class): Likewise.
1801 (print_operand): Add parentheses around & operation.
1802 (output_prolog): Mark parameter `size' with ATTRIBUTE_UNUSED.
1803 (output_epilog): Likewise. Cast argument to fprintf to int.
1804 (rs6000_adjust_cost): Mark parameter `dep_insn' with ATTRIBUTE_UNUSED.
1805 (rs6000_valid_decl_attribute_p): Likewise for parameters `decl',
1806 `attributes', `identifier' and `args'.
1807 (rs6000_valid_type_attribute_p): Likewise for parameter `attributes'.
1808 (rs6000_comp_type_attributes): Likewise for parameters `type1' and
1809 `type2'.
1810 (rs6000_set_default_type_attributes): Likewise for parameter `type'.
1811
1812 * rs6000.h (RTX_COSTS): Add parentheses around & operation.
1813 (toc_section, private_data_section, trap_comparison_operator): Add
1814 prototypes.
1815
1816 * dbxout.h (dbxout_parms, dbxout_reg_parms, dbxout_syms): Add
1817 prototypes.
1818
1819 * xcoffout.c: Include toplev.h, outout.h and dbxout.h.
1820
1821 * xcoffout.h (stab_to_sclass, xcoffout_begin_function,
1822 xcoffout_begin_block, xcoffout_end_epilogue,
1823 xcoffout_end_function, xcoffout_end_block,
1824 xcoff_output_standard_types, xcoffout_declare_function,
1825 xcoffout_source_line): Add prototypes.
1826
ff73fb53
NC
1827Thu Jun 25 09:54:55 1998 Nick Clifton <nickc@cygnus.com>
1828
1829 * config/arm/arm.h (REG_ALLOC_ORDER): Add ARG_POINTER_REGNUM,
1830 noticed by grahams@rcp.co.uk.
1831
ca242225
DB
1832Thu Jun 25 11:12:29 1998 Dave Brolley <brolley@cygnus.com>
1833
1834 * gcc.c (default_compilers): Use new | syntax to eliminate
1835 string concatenation.
1836
acd92049
RH
1837Thu Jun 25 01:00:48 1998 Richard Henderson <rth@cygnus.com>
1838
1839 * alpha.c (alpha_function_name): Delete.
1840 (alpha_ra_ever_killed): Notice current_function_is_thunk.
1841 (alpha_sa_mask, alpha_sa_size, alpha_does_function_need_gp): Likewise.
1842 (alpha_start_function): Reorg from output_prologue.
1843 (alpha_end_function): Reorg from output_epilogue.
1844 * alpha.h (ASM_DECLARE_FUNCTION_NAME): Call alpha_start_function.
1845 (ASM_DECLARE_FUNCTION_SIZE): New.
1846 (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Delete.
1847 (PROFILE_BEFORE_PROLOGUE): Set.
1848 (ASM_OUTPUT_MI_THUNK): Remove bits now output by start/end_function.
1849 * alpha/win-nt.h (ASM_OUTPUT_MI_THUNK): Likewise.
1850
dd014274
JL
1851Thu Jun 25 01:18:47 1998 John Wehle (john@feith.com)
1852
1853 * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Define.
1854
18551998-06-25 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
89752202
HB
1856
1857 * expr.c (expand_assignment): Rework address calculation for structure
1858 field members to expose more invariant computations to the loop
1859 optimizer.
1860 (expand_expr): Likewise.
1861
c358412f
JL
1862Wed Jun 24 22:44:22 1998 Jeffrey A Law (law@cygnus.com)
1863
1864 * local-alloc.c (block_alloc): Do not try to avoid false dependencies
1865 when SMALL_REGISTER_CLASSES is nonzero.
1866
a59fb797
KK
1867Wed Jun 24 17:55:15 1998 Klaus Kaempf <kkaempf@progis.de>
1868
1869 * alpha.md (call_vms, call_value_vms): Strip leading * from symbol.
1870
55a6ba9f
JC
1871Wed Jun 24 16:27:23 1998 John Carr <jfc@mit.edu>
1872
1873 * expr.c (get_memory_rtx): New function.
1874 (expand_builtin): Call get_memory_rtx for MEM arguments to builtin
1875 string functions.
1876
1877 * expmed.c (init_expmed): Initialize all elements of *_cost arrays.
1878
9e6a5703
JC
1879 * optabs.c: Use gen_rtx_FOO (...) instead of gen_rtx (FOO, ...).
1880 * expr.c: Likewise.
1881 * explow.c: Likewise.
1882 * combine.c: Likewise.
1883 * reload1.c: Likewise.
1884 * gcse.c: Likewise.
1885
135edcfd
DB
1886Wed Jun 24 15:13:01 1998 Dave Brolley <brolley@cygnus.com>
1887
1888 * README.gnat: Add patch for new lang_decode_options interface.
1889
9a9deafc
AM
1890Wed Jun 24 09:14:04 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
1891
1892 * except.c (start_catch_handler): Do nothing if EH is not on.
1893
854b2357
MH
18941998-06-24 Manfred Hollstein <manfred@s-direktnet.de>
1895
1896 * configure.in (gxx_include_dir): Initialize default value depending on
6d6393e3
MH
1897 new flag --enable-version-specific-runtime-libs; remove superfluous
1898 default initialization afterwards.
854b2357
MH
1899 * configure: Regenerate.
1900
d3b107b4
DM
1901Wed Jun 24 01:32:12 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
1902
1903 * toplev.c (rest_of_compilation): Revert May 15 change.
1904
c22eaf8a
KR
1905Tue Jun 23 21:27:27 1998 Ken Raeburn <raeburn@cygnus.com>
1906
1907 * reload.c (find_reloads): Fix check for failure to match any
1908 alternative, to account for Mar 26 change in initial "best" cost.
1909
d2f8cffa
DB
1910Tue Jun 23 16:44:21 1998 Dave Brolley <brolley@cygnus.com>
1911
1912 * cpplib.c (do_line): Typo broke #line directive.
1913 (cpp_message_from_errno): New function.
1914 (cpp_error_from_errno): Call cpp_message_from_errno.
1915 * cpplib.h (cpp_message_from_errno): New function.
1916
48b24bcd
AM
1917Tue Jun 23 13:38:18 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
1918
1919 * libgcc2.c (__get_eh_table_version, __get_eh_table_language): New
1920 functions to return exception descriptor information.
1921 (find_exception_handler): Pass match_info field to runtime matcher,
1922 not a descriptor table entry.
1923
daf21dfd
DL
1924Tue Jun 23 09:30:58 1998 Dave Love <d.love@dl.ac.uk>
1925
1926 * cpp.texi, gcc.texi: Add @dircategory, @direntry meant to
1927 accompany previous Makefile.in (install-info) change.
1928
48b24bcd 1929Tue Jun 23 10:06:07 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
5816cb14
AM
1930
1931 * eh-common.h (struct __eh_info): Remove coerced value field.
1932 * libgcc2.c (find_exception_handler): Don't set coerced_value field.
1933 * except.c (get_dynamic_handler_chain, get_dynamic_cleanup_chain): Use
1934 POINTER_SIZE instead of Pmode.
1935 (expand_start_all_catch): Call start_catch_handler() if we are not
1936 using new style exceptions.
1937
83de03df
CM
1938Tue Jun 23 06:45:00 1998 Catherine Moore <clm@cygnus.com>
1939
1940 * varasm.c (assemble_variable): Remove reference to warn_bss_align.
1941
5b8e7fa3
DM
1942Mon Jun 22 23:57:31 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
1943
1944 * config/sparc/sparc.md (zero_extendhidi2, extendhisi2,
1945 extendqihi2, extendqisi2, extendqidi2, extendhidi2, adddi3,
1946 subdi3, negdi2, call, call_value, untyped_return, nonlocal_goto,
1947 splits and peepholes): Change remaining generic gen_rtx calls to
1948 specific genrtl ones.
254110c2
DM
1949 * config/sparc/sparc.c: Likewise.
1950
9bf09437
RH
1951Mon Jun 22 22:21:46 1998 Richard Henderson <rth@cygnus.com>
1952
1953 * gcc.c (handle_braces): Recognize | between options as an or.
1954
e31ca113
JW
1955Mon Jun 22 23:13:47 1998 John Wehle (john@feith.com)
1956
2b005260
JW
1957 * i386/freebsd-elf.h (JUMP_TABLES_IN_TEXT_SECTION): Define as flag_pic.
1958 * i386/sysv4.h (JUMP_TABLES_IN_TEXT_SECTION): Define as flag_pic.
1959
e31ca113
JW
1960 * i386.md (exception_receiver): Define.
1961
aeb2f500
JW
1962Mon Jun 22 12:01:48 1998 Jim Wilson <wilson@cygnus.com>
1963
225695a4
JW
1964 * Makefile.in (PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME,
1965 PROTOIZE_CROSS_NAME, UNPROTOIZE_CROSS_NAME): New variables.
1966 (install-common): Use them.
1967
aeb2f500
JW
1968 * gcse.c (add_label_notes): New function.
1969 (pre_insert_insn): Call it.
1970 * unroll.c (unroll_loop): Look for insns with a REG_LABEL note, and
1971 pass the label to set_label_in_map.
1972
efef624b
DL
1973Mon Jun 22 19:01:14 1998 Dave Love <d.love@dl.ac.uk>
1974
1975 * Makefile.in (install-info): Fix typpo in previous change.
1976
4bcfa7a8
CM
1977Mon Jun 22 11:10:00 1998 Catherine Moore <clm@cygnus.com>
1978
1979 * varasm.c (assemble_variable): Emit alignment warning.
1980
296433e1
KG
1981Mon Jun 22 08:18:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1982
1983 * Makefile.in (varasm.o): Depend on sdbout.h.
1984 (sdbout.o): Depend on toplev.h.
1985
1986 * collect2.c (scan_prog_file): Cast fprintf argument to `long' and
1987 use %ld specifier.
1988
1989 * final.c (shorten_branches): Cast first arg of `bzero' to char *.
1990
1991 * genextract.c (main): When creating insn-extract.c, mark variable
1992 `i' with ATTRIBUTE_UNUSED.
1993
1994 * genpeep.c (main): When creating insn-peep.c, mark variables
1995 `insn', `x' and `pat' with ATTRIBUTE_UNUSED.
1996
1997 * objc/init.c (__objc_tree_print): Wrap function definition in
1998 macro `DEBUG'.
1999
2000 * objc/objc-act.c (encode_array): Cast sprintf argument to `long'
2001 and use %ld specifier.
2002 (adorn_decl): Likewise, twice.
2003
e016950d
KG
2004 * reload1.c (reload_cse_regs): Cast first arg of `bzero' to char *.
2005
2006 * sdbout.c: Include output.h and toplev.h.
2007 (PUT_SDB_INT_VAL): Use HOST_WIDE_INT_PRINT_DEV to print argument
2008 `a'. Cast `a' to HOST_WIDE_INT to force it to always be so.
2009 (PUT_SDB_SIZE): Likewise.
2010
2011 * sdbout.h (sdbout_mark_begin_function): Add prototype.
2012
2013 * stmt.c (check_for_full_enumeration_handling): Cast argument of
2014 `warning' to long and use %ld specifier.
2015
2016 * toplev.c (main): Likewise for `fprintf'.
2017
2018 * toplev.h (output_file_directive): Add prototype.
2019
2020 * unroll.c (unroll_loop): Use HOST_WIDE_INT_PRINT_DEC specifier in
2021 call to `fprintf'.
2022 (precondition_loop_p): Likewise.
2023
2024 * varasm.c Include sdbout.h.
2025 (assemble_static_space): Move sometimes-unused variable `rounded'
2026 into the scope in which it is used.
b3fb0b5e
KG
2027
2028 * mips.c (gpr_mode): Don't say `static' twice.
2029
2030 * cpplib.c (cpp_handle_option): Don't pass unneeded NULL to cpp_fatal.
2031
2032 * objc/objc-act.c (init_selector): Hide prototype and definition.
2033
2034 * optabs.c (gen_cond_trap): Remove unused variable `icode'.
2035
2036 * regmove.c (copy_src_to_dest): Likewise for `i'.
e016950d 2037
cd1661d6
KG
2038 * mips-tfile.c (add_local_symbol): Cast width format specifier to int.
2039 (add_ext_symbol): Likewise.
2040 (add_file): Likewise.
2041 (parse_def): Likewise.
2042 (write_varray): Use HOST_PTR_PRINTF to print a pointer. Fix
2043 remaining format specifiers and arguments.
2044 (write_object): Likewise, several times.
2045 (read_seek): Likewise.
2046 (out_of_bounds): Likewise.
2047 (allocate_cluster): Likewise.
2048 (xmalloc): Likewise.
2049 (xcalloc): Likewise.
2050 (xrealloc): Likewise.
2051 (xfree): Likewise.
2052
2053 * mips-tdump.c (print_symbol): Likewise.
2054
824d9076
DL
2055Sun Jun 21 17:05:34 1998 Dave Love <d.love@dl.ac.uk>
2056
2057 * Makefile.in (install-info): Use install-info program if
2058 available, per GNU standard.
2059
9a8b0889
JL
2060Sun Jun 21 18:56:44 1998 Jeffrey A Law (law@cygnus.com)
2061
ecff22ab
JL
2062 * invoke.texi: Document -mrelax for the mn10300 and mn10200.
2063
04821e98
JL
2064 * basic-block.h (init_regset_vector): Delete declaration.
2065 * flow.c (init_regset_vector): Make it static and add a prototype.
2066
4d7fc9e7
JL
2067 * bitmap.h (debug_bitmap): Declare.
2068
9a8b0889
JL
2069 * haifa-sched.c (debug_ready_list): Make static.
2070
2071 * toplev.h (fancy_abort): Declare.
2072
27fa83c1
L
2073Sun Jun 21 18:30:13 1998 H.J. Lu (hjl@gnu.org)
2074
4d7fc9e7
JL
2075 * basic-block.h (init_regset_vector): New declaration.
2076
2086b675
L
2077 * Makefile.in (sdbout.o): Add insn-codes.h to dependency.
2078
f6781658
L
2079 * global.c: Include machmode.h amd move hard-reg-set.h before
2080 rtl.h.
2081
cc4fe0e2
L
2082 * haifa-sched.c (insn_issue_delay, birthing_insn_p,
2083 adjust_priority, print_insn_chaino): New declaration.
2084 (schedule_insns): Remove declaration.
2085 (init_target_units, get_visual_tbl_length,
2086 init_block_visualization): Add prototype.
2087
8a1ef8c9
L
2088 * integrate.c (pushdecl, poplevel): Remove declaration.
2089
9a8b0889
JL
2090 * rtl.h (expand_expr): Remove declaration.
2091
27fa83c1
L
2092 * loop.c (oballoc): Remove declaration.
2093 (replace_call_address): Add prototype.
2094
e4ad60fe
JL
2095Sun Jun 21 01:08:17 PDT 1998 Jeff Law (law@cygnus.com)
2096
2097 * version.c: Bump for snapshot.
2098
c0067dc8
JW
2099Sun Jun 21 01:16:38 1998 John Wehle (john@feith.com)
2100
2101 * i386.c (output_fp_conditional_move): Don't bother handling
2102 (cc_prev_status.flags && CC_NO_OVERFLOW) since the INSN patterns
2103 prevent this from happening.
2104
2105 * i386.md (nonlocal_goto_receiver): Delete.
2106
a24da858
L
2107Sun Jun 21 00:42:20 1998 H.J. Lu (hjl@gnu.org)
2108
1442f4eb
L
2109 * Makefile.in (crtbeginS.o, crtendS.o): Add -fno-exceptions and
2110 -DCRTSTUFFS_O.
2111 (INSTALL): cd $(srcdir) before make.
2112
a24da858
L
2113 * flow.c (allocate_for_life_analysis, init_regset_vector):
2114 Remove declaration.
2115
2116 * function.h (get_first_block_beg): New declaration.
2117
2118 * gbl-ctors.h (__do_global_dtors): Add prototype.
2119
2120 * gcov-io.h (__fetch_long): New declaration.
2121 (__store_long): Likewise.
2122 (__read_long): Likewise.
2123 (__write_long): Likewise.
2124
2125 * gcov.c (print_usage): New declaration.
2126
2127 * Makefile.in (c-iterate.o): Depend on insn-codes.h too.
2128
4ef873c2
JL
2129Sat Jun 20 00:36:16 1998 Jeffrey A Law (law@cygnus.com)
2130
c16ddde3
JL
2131 * calls.c (expand_call): Initialize "src" and "dest".
2132 * stmt.c (expand_return): Likewise.
2133 * expmed.c (extract_split_bit_field): Similarly for "result"
2134 * gcse.c (compute_hash_table): Mark first arg as unused.
2135 * jump.c (jump_optimize): Initialize reversep.
2136 * tree.c (make_node): Initialize length.
2137
f67aab2c
JL
2138 * c-common.c (check_format_info): Initialize length_char and
2139 fci to keep -Wall quiet.
2140
767f5b14
JL
2141 * except.c (jumpif_rtx): Put declaration and definition
2142 inside a suitable #ifdef.
2143 (jumpifnot_rtx): Delete dead function.
2144
5a77b5f3
JL
2145 * i386.h (output_int_conditional_move): Declare.
2146 (output_fp_conditional_move): Likewise.
2305ac0d 2147 (ix86_can_use_return_insn_p): Likewise.
5a77b5f3 2148
4ef873c2
JL
2149 * optabs.c (init_traps): Put prototype inside a suitable #ifdef.
2150
2e107e9e
GS
2151Sat Jun 20 00:27:40 1998 Graham <grahams@rcp.co.uk>
2152
2153 * alias.c: Include toplev.h
2154 * caller-save.c: Include toplev.h
2155 * combine.c: Include toplev.h
2156 * flow.c Include toplev.h
2157 * global.c: Include toplev.h
2158 * jump.c: Include toplev.h
2159 * local-alloc.c: Include toplev.h
2160 * loop.c: Include toplev.h
2161 * regmove.c: Include toplev.h
2162 * stupid.c: Include toplev.h
2163 * unroll.c: Include toplev.h
2164 * Makefile.in: Add toplev.h dependencies.
2165
29a4c5ed
JM
2166Fri Jun 19 22:40:25 1998 Jason Merrill <jason@yorick.cygnus.com>
2167
2168 * regmove.c (copy_src_to_dest): Add decl for loop_depth.
32bd96ff
JM
2169
2170 * svr4.h (ASM_GENERATE_INTERNAL_LABEL): Cast arg to unsigned.
2171 * dwarf2out.c (ASM_OUTPUT_DWARF_DATA1): Likewise.
2172 Add parens to various macros.
2173
9dfcc8db
BH
2174Fri Jun 19 23:22:42 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
2175
2176 * c-typeck.c (pop_init_level): Warn about implicit zero initialization
2177 of struct members.
2178
ee830309
JM
2179Fri Jun 19 23:06:33 1998 Jason Merrill <jason@yorick.cygnus.com>
2180
2181 * varasm.c (assemble_start_function): Add weak_global_object_name.
2182 * tree.c (get_file_function_name): Use it.
2183
2c975716
JL
2184Fri Jun 19 22:55:14 1998 Jeffrey A Law (law@cygnus.com)
2185
561592c5
JL
2186 * except.c (jumpif_rtx): Make static and add prototype.
2187 (jumpifnot_rtx): Likewise.
2188
90bf9bc4
JL
2189 * README.gnat: Add a build patch from Fred Fish.
2190
2c975716
JL
2191 * c-lang.c (GNU_xref_begin, GNU_xref_end): Deleted.
2192
3ca4021d
JL
2193 * Makefile.in (c-iterate.o): Depend on expr.h.
2194
3559eb28
L
2195Fri Jun 19 20:38:34 1998 H.J. Lu (hjl@gnu.org)
2196
19864289
L
2197 * except.h (emit_unwinder, end_eh_unwinder): Removed.
2198
90bf9bc4
JL
2199 * dwarfout.c (getpwd): Add prototype.
2200 (is_pseudo_reg, type_main_variant, is_tagged_type,
2201 is_redundant_typedef): New declaration.
2202 (output_decl): Add prototype for FUNC.
2203 (type_main_variant): Make it static.
2204 (is_tagged_type): Likewise.
2205 (is_redundant_typedef): Likewise.
2206
0d091530
L
2207 * expr.c (do_jump_by_parts_greater_rtx): Removed.
2208 (truthvalue_conversion): Likewise.
2209
3ca4021d
JL
2210 * c-iterate.c: Include "expr.h".
2211 (expand_expr): Use proper values when calling the function.
2212
0ddc9a94
L
2213 * explow.c (emit_stack_save): Add prototype for FCN.
2214 (emit_stack_restore): Likewise.
2215
e179bf0f
L
2216 * dwarf2out.c (getpwd): Add prototype.
2217
79a2acc8
L
2218 * dwarf2out.h (debug_dwarf, debug_dwarf_die): New declarations.
2219
f5a8bfff 2220 * c-typeck.c (c_expand_asm_operands): Use proper values when calling
79a2acc8 2221 expand_expr.
f5a8bfff 2222
3ab6dd7c
L
2223 * c-lex.c (yyprint): Add prototype.
2224 (check_newline, build_objc_string): Remove declaration.
2225
0bb0a00b
L
2226 * c-tree.h (comptypes_record_hook): Removed.
2227 (finish_incomplete_decl): New prototype.
2228
960b4ee6
L
2229 * alias.c (find_base_value): Add prototype.
2230 (true_dependence): Add prototype for function argument.
2231
3559eb28
L
2232 * c-aux-info.c (xmalloc): Remove declaration.
2233
bb5177ac
RL
2234Fri Jun 19 20:23:05 1998 Robert Lipe <robertl@dgii.com>
2235
2236 * i386.c: Include system.h. Remove redundant includes.
2237 (optimization_options): Mark param 'size' with ATTRIBUTE_UNUSED.
2238 (i386_cc_probably_useless_p): Likewise for 'decl', 'attributes',
2239 'identifier', 'args'.
2240 (i386_valid_type_attribute_p): Likewise for 'attributes'.
2241 (i386_comp_type_attribute_p): Likewise for 'type1', 'type2'.
2242 (function_arg_partial_nregs): Likewise for 'cum', 'mode', 'type',
2243 and 'named'.
2244 (symbolic_operand): Likewise for 'mode'.
2245 (call_insn_operand): Likewise.
2246 (expander_call_insn_operand): Likewise.
2247 (ix86_logical_operator): Likewise.
2248 (ix86_binary_operator_ok): Likewise.
2249 (emit_pic_move): Likewise.
2250 (VOIDmode_compare_op): Likewise.
2251 (is_mul): Likewise.
2252 (str_immediate_operand): Likewise.
2253 (ix86_uary_operator_ok): Likewise for 'code', 'mode', and 'operands'.yy
2254 (asm_output_function_prefix): Likewise for 'name'.
2255 (function_prologue): Likewise for 'file', and 'size'.
2256 (function_epilogue): Likewise.
2257
7e7ca3a1
JW
22581998-06-19 Jim Wilson <wilson@cygnus.com>
2259
2260 * loop.h (struct induction): Clarify comment for unrolled field.
2261 * unroll.c (find_splittable_givs): Move set of unrolled field
2262 after address validity check.
2263
c0418205
MM
2264Fri Jun 19 18:38:04 1998 Michael Meissner <meissner@cygnus.com>
2265
2266 * config/fp-bit.c (INLINE): Only define if not already defined.
2267
fe2fa3c4
MH
22681998-06-19 Manfred Hollstein <manfred@s-direktnet.de>
2269
2270 * Makefile.in (installdirs): Loop over directories in $(libsubdir)
2271 creating probably missing ones, instead of single if statements.
2272
f0b8d9aa
AS
2273Fri Jun 19 10:43:52 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2274
2275 * c-common.c (truthvalue_conversion): Protect side effects in the
2276 expression when splitting a complex value.
2277 * fold-const.c (fold): Likewise.
2278
94fb3933
KK
2279Fri Jun 19 02:31:16 1998 Klaus Kaempf (kkaempf@progis.de)
2280
2281 * cccp.c (hack_vms_include_specification): rewrite to handle
2282 '#include <dir/file.h>' correctly.
2283
de3eb7b7
L
2284Fri Jun 19 02:24:11 1998 H.J. Lu (hjl@gnu.org)
2285
2286 * config/i386/linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Defined.
2287
b4d030e5
JW
2288Fri Jun 19 02:10:10 1998 John Wehle (john@feith.com)
2289
9c8c5afb
JW
2290 * i386.c (notice_update_cc): Integer conditional moves don't
2291 affect cc0.
2292
b4d030e5
JW
2293 * i386.md (movsfcc, movdfcc, movxfcc): Use emit_store_flag
2294 to support LT, LE, GE, and GT signed integer comparisons.
2295 (movsfcc+1, movsfcc+2, movdfcc+1, movdfcc+2,
2296 movxfcc+1, movxfcc+2): Pattern doesn't match if the comparison
2297 is LT, LE, GE, or GT.
2298 (movdicc): Remove code resulting from an earlier patch which
2299 didn't apply correctly.
2300
bb173ade
RK
2301Fri Jun 19 02:00:19 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2302
2303 * reload1.c (reload_cse_regno_equal_p): If -ffloat-store, don't
2304 consider a MEM in FP mode as equal.
2305
11346e89
JL
2306Fri Jun 19 01:02:17 1998 Jeffrey A Law (law@cygnus.com)
2307
2308 * c-decl.c (duplicate_decls): Avoid setting TREE_ASM_WRITTEN for
2309 duplicate declarations of a function.
2310
76a8de12
L
2311Fri Jun 19 00:33:33 1998 H.J. Lu (hjl@gnu.org)
2312
2313 * config/float-i386.h: New.
2314
2315 * configure.in (i[34567]86-*-linux-*): Set float_format to i386.
2316
7c74b010
JW
2317Thu Jun 18 20:11:00 1998 Jim Wilson <wilson@cygnus.com>
2318
2319 * sched.c (schedule_insns): Use xmalloc not alloca for max_uid
2320 indexed arrays. Call free at the end of the function for them.
2321 * haifa-sched.c (schedule_insns): Likewise.
2322
243e7835
JW
2323Thu Jun 18 18:16:01 1998 Jim Wilson <wilson@cygnus.com>
2324
2325 * dwarf2out.c (size_of_string): Do count backslashes.
2326
bf3ad139
NC
2327Thu Jun 18 11:43:54 1998 Nick Clifton <nickc@cygnus.com>
2328
2329 * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Disallow REG+REG
2330 addressing when one register is the frame pointer or stack
2331 pointer. Disallow REG+CONST addressing in HI mode.
2332
f9df0a1d
R
2333Thu Jun 18 17:30:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2334
2335 * reload.c (find_reloads): Don't narrow scope of RELOAD_OTHER to
2336 RELOAD_FOR_INSN.
2337
cab634f2
KG
2338Thu Jun 18 09:36:50 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2339
2340 * Makefile.in (c-lang.o): Depend on output.h.
2341
2342 * c-lang.c: Include output.h.
2343
2344 * sparc.c (sparc_builtin_saveregs): Remove unused variable `fntype'.
2345
2346 * except.c (expand_builtin_eh_stub): Likewise for variable `jump_to'.
2347
2348 * genrecog.c (write_subroutine): When writing insn-recog.c, mark
2349 variables `insn', `pnum_clobbers', `x[0 .. max_depth]' and `tem'
2350 with ATTRIBUTE_UNUSED.
2351
2352 * regmove.c (copy_src_to_dest): Make function static to match its
2353 prototype.
2354
2355 * reload1.c Include hard-reg-set.h before rtl.h to get macro
2356 HARD_CONST. Include machmode.h before hard-reg-set.h.
2357
2358 * rtl.h: Prototype `retry_global_alloc' and wrap with macro
2359 HARD_CONST to protect usage of typedef HARD_REG_SET.
2360
2361 * tree.c: Prototype `_obstack_allocated_p'.
2362
2363 * varasm.c: Wrap prototype of `asm_output_aligned_bss' in macro
2364 BSS_SECTION_ASM_OP.
2365
0b17dd98
KG
2366Thu Jun 18 09:20:47 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2367
2368 * pa.c: Include system.h and toplev.h. Remove redundant code.
2369 (call_operand_address): Mark parameter `mode' with ATTRIBUTE_UNUSED.
2370 (symbolic_operand): Likewise.
2371 (symbolic_memory_operand): Likewise.
2372 (pic_label_operand): Likewise.
2373 (fp_reg_operand): Likewise.
2374 (pre_cint_operand): Likewise.
2375 (post_cint_operand): Likewise.
2376 (ireg_or_int5_operand): Likewise.
2377 (int5_operand): Likewise.
2378 (uint5_operand): Likewise.
2379 (int11_operand): Likewise.
2380 (uint32_operand): Likewise.
2381 (ior_operand): Likewise.
2382 (lhs_lshift_cint_operand): Likewise.
2383 (pc_or_label_operand): Likewise.
2384 (legitimize_pic_address): Likewise.
2385 (hppa_legitimize_address): Likewise for parameter `old'.
2386 (output_block_move): Likewise for parameter `size_is_constant'.
2387 (output_function_prologue): Likewise for parameter `size'.
2388 (output_function_epilogue): Likewise.
2389 (return_addr_rtx): Likewise for parameter `count'.
2390 (output_mul_insn): Likewise for parameter `unsignedp'.
2391 (hppa_builtin_saveregs): Likewise for parameter `arglist'.
2392 (output_bb): Likewise for parameter `operands'.
2393 (output_bvb): Likewise.
2394 (function_label_operand): Likewise for parameter `mode'.
2395 (plus_xor_ior_operator): Likewise.
2396 (shadd_operand): Likewise.
2397 (non_hard_reg_operand): Likewise.
2398 (eq_neq_comparison_operator): Likewise.
2399 (movb_comparison_operator): Likewise.
2400 (pa_combine_instructions): Likewise for parameter `insns'.
2401
2402 * pa.h: Add prototypes for functions `output_deferred_plabels',
2403 `override_options', `output_ascii', `output_function_prologue',
2404 `output_function_epilogue', `print_operand',
2405 `symbolic_expression_p', `reloc_needed', `compute_frame_size',
2406 `hppa_address_cost', `and_mask_p', `symbolic_memory_operand',
2407 `pa_adjust_cost', `pa_adjust_insn_length' and
2408 `secondary_reload_class'.
2409
ca8c3b37
JM
2410Wed Jun 17 22:28:48 1998 Jason Merrill <jason@yorick.cygnus.com>
2411
2412 * configure.in: Don't turn on collect2 unconditionally.
2413
1d22a2c1
MM
2414Wed Jun 17 20:20:48 1998 Mark Mitchell <mark@markmitchell.com>
2415
2416 * cse.c (cse_basic_block): Don't include NOTE insns in the count
2417 that is used to decide whether or not it is time to erase the
2418 equivalence table.
2419
b74390de
FS
2420Wed Jun 17 18:30:43 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
2421
2422 * rs6000/linux.h (JUMP_TABLES_IN_TEXT_SECTION): Define to zero.
2423
e0cd0770
JC
2424Wed Jun 17 19:05:03 1998 John Carr <jfc@mit.edu>
2425
2426 * haifa-sched.c (haifa_classify_insn): TRAP_IF is risky.
2427 (sched_analyze_2): Allow scheduling TRAP_IF.
2428
2429 * reorg.c (mark_referenced_resources): Examine operands of TRAP_IF.
2430
2431 * rtl.h (TRAP_CODE): New macro.
2432
2433 * rtl.def (TRAP_IF): Change second operand type to rtx.
2434
2435 * optabs.c (gen_cond_trap): New function.
2436 (init_traps): New function.
2437 (init_optabs): Call init_traps.
2438 * expr.h: Declare gen_cond_trap.
2439
2440 * jump.c (jump_optimize): Optimize jumps to and around traps.
2441
2442 * sparc.md: Define trap instructions.
2443
2444 * rs6000.md: Define trap instructions.
2445 * rs6000.c (print_operand): New code 'V' for trap condition.
2446 (trap_comparison_operator): New function.
2447
2448 * m88k.md: Update use of TRAP_IF.
2449
2450 * tree.h (enum built_in_function): New function code BUILT_IN_TRAP.
2451 * c-decl.c (init_decl_processing): New builtin __builtin_trap.
2452 * expr.c (expand_builtin): Handle BUILT_IN_TRAP.
2453
2454 * expr.c (expand_builtin): Error if __builtin_longjmp second argument
2455 is not 1.
2456
4fdf79cb
CM
2457Wed Jun 17 15:20:00 PDT 1998 Catherine Moore <clm@cygnus.com>
2458
2459 * reload1.c (spill_hard_reg): Check mode of register when
2460 spilling from scratch_list.
2461
d7e78529
AM
2462Wed Jun 17 16:25:38 EDT 1998 Andrew MacLeod (amacleod@cygnus.com)
2463
2464 * except.c (add_new_handler): fix bug in finding last region handler.
2465 * libgcc2.c (find_exception_handler): Pass exception table pointer
2466 to runtime type matcher, not the match info field.
2467
3301dc51
AM
2468Wed Jun 17 15:57:48 EDT 1998 Andrew MacLeod (amacleod@cygnus.com)
2469
2470 * eh-common.h (struct eh_context): Add comment for hidden use of
2471 field dynamic_handler_chain.
2472 * except.c (get_dynamic_handler_chain): Comment on, and use the
2473 correct offset of the dynamic_handler_chain field.
2474
33f264af
JW
24751998-06-17 12:46:56 1998 Jim Wilson <wilson@cygnus.com>
2476
2477 * mips/iris6.h (LINK_SPEC): Add -woff 131.
2478
d460fb3c
JM
24791998-06-17 Jason Merrill <jason@yorick.cygnus.com>
2480
2481 * dwarf2out.c: Disable EH_FRAME_SECTION if we don't have .init.
2482
2483 * configure.in: Don't disable collect2 when we have GNU ld.
2484
4c738570
JL
2485Wed Jun 17 08:38:13 1998 Jeffrey A Law (law@cygnus.com)
2486
7d12cee1
JL
2487 * fold-const.c (make_range): Do not widen the type of the expression.
2488
dbecbbe4
JL
2489 * expr.c (check_max_integer_computation_mode): New function.
2490 (expand_expr): Avoid integer computations in modes wider than
2491 MAX_INTEGER_COMPUTATION_MODE.
2492 * fold-const.c (fold): Likewise.
2493 * tree.h (check_max_integer_computation_mode): Declare.
2494 * tm.texi (MAX_INTEGER_COMPUTATION_MODE): Document it.
2495
4b95eb49
JL
2496 * configure.in (nm): Make a link to "nm" in the build tree too.
2497
4c738570
JL
2498 * mn10300.md (andsi3): Fix typo.
2499
33ab8de0
RH
2500Tue Jun 16 22:58:40 1998 Richard Henderson <rth@cygnus.com>
2501
2502 * reload1.c (reload_cse_regs): Call bzero instead of looping.
2503
bf20f341
JW
2504Tue Jun 16 18:30:35 1998 Jim Wilson <wilson@cygnus.com>
2505
2506 * dwarf2out.c (stripattributes): Prepend '*' to the section name.
2507
9c0e94a5
RH
2508Tue Jun 16 16:49:26 1998 Richard Henderson <rth@cygnus.com>
2509
2510 * alpha.c (alpha_expand_prologue, alpha_expand_epilogue): New fns.
2511 (output_prologue, output_epilogue): Merge VMS and OSF versions;
2512 Remove anything related to the actual code generation.
2513 (output_end_prologue): New function.
2514 (alpha_sa_mask, alpha_sa_size): Merge VMS and OSF versions.
2515 (alpha_does_function_need_gp): Return false for VMS.
2516 (alpha_function_needs_gp): Make static.
2517 (add_long_const): Delete.
2518 (summarize_insn): Don't assume a SUBREG is of a REG.
2519 Prototype all static functions. Rename VMS-specific global
2520 variables vms_*.
2521 * alpha.h (TARGET_CAN_FAULT_IN_PROLOGUE): Default to 0.
2522 (FUNCTION_BOUNDARY): Align to cache line.
2523 (LOOP_ALIGN, ALIGN_LABEL_AFTER_BARRIER): Align to octaword.
2524 (FUNCTION_END_PROLOGUE): New macro.
2525 * alpha.md (attribute length): New. Mark all insns.
2526 (return_internal, prologue_stack_probe_loop) New patterns.
2527 (prologue, init_fp, epilogue): New patterns.
2528 Disable peepholes.
2529 * linux.h (TARGET_CAN_FAULT_IN_PROLOGUE): Define.
2530
ad1da1de
DB
2531Tue Jun 16 17:36:35 1998 Dave Brolley <brolley@cygnus.com>
2532
2533 * toplev.c (lang_options): Add -trigraphs option for cpplib.
2534
75528b80
R
2535Tue Jun 16 23:33:24 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2536
2537 * reload1.c (reload_reg_free_before_p): RELOAD_FOR_OUTADDR_ADDRESS
2538 is earlier than RELOAD_FOR_OUTPUT_ADDRESS; RELOAD_FOR_INPADDR_ADDRESS
2539 is earlier than RELOAD_FOR_INPUT_ADDRESS.
2540
42b82dd3
JW
2541Tue Jun 16 13:15:16 1998 Jim Wilson <wilson@cygnus.com>
2542
2543 * libgcc1-test.c (memcpy): Define.
2544
6f6074ea
MM
2545Tue Jun 16 13:44:02 1998 Michael Meissner <meissner@cygnus.com>
2546
2547 * genattrtab.c (struct attr_desc): Change int flags to bit
2548 fields. Add bit fields for this being function_units_used
2549 or *_blockage_range attributes.
2550 (write_unit_name): New function to print a function unit name
2551 given unit #.
2552 (expand_units): Indicate whether this is function_units_used or
2553 *_blockage_range attributes.
2554 (write_toplevel_expr): Print function_units_used and
2555 *_blockage_range attributes in a more friendly fashion.
2556 (make_internal_attr): Indicate whether this attribute is either
2557 function_units_used or *_blockage_range.
2558
ddc8bed2
MM
2559Mon Jun 15 17:06:43 1998 Michael Meissner <meissner@cygnus.com>
2560 Jim Wilson <wilson@cygnus.com>
3bd89472 2561
ddc8bed2
MM
2562 * regmove.c (copy_src_to_dest): Do not copy src to dest if either
2563 the source or destination is special.
3bd89472 2564
ddc8bed2 2565Mon Jun 15 13:20:33 1998 Jim Wilson <wilson@cygnus.com>
a7db2896 2566
ddc8bed2 2567 * c-decl.c (shadow_tag_warned): Use specs not declspecs in for loop.
a7db2896 2568
d61d494a
JL
2569Mon Jun 15 07:16:29 PDT 1998 Jeff Law (law@cygnus.com)
2570
2571 * version.c: Bump for snapshot.
2572
a08432bd
KW
2573Sat Jun 13 13:10:40 1998 Krister Walfridsson <cato@df.lth.se>
2574
2575 * config/sparc/netbsd.h (DEFAULT_PCC_STRUCT_RETURN): Undefine before
2576 redefining it.
2577
a4ea8d97
DE
2578Fri Jun 12 18:06:45 1998 Doug Evans <devans@egcs.cygnus.com>
2579
2580 * m32r/m32r.h (STARTFILE_SPEC): Delete crtsysc.o.
416db271 2581 (ENDFILE_SPEC): Add -lgloss.
a4ea8d97 2582
38831dfe
KG
2583Fri Jun 12 14:57:59 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2584
2585 * mips.c (small_int): Mark parameter `mode' with ATTRIBUTE_UNUSED.
2586 (large_int): Likewise.
2587 (pc_or_label_operand): Likewise.
2588 (call_insn_operand): Likewise.
2589 (consttable_operand): Likewise.
2590 (m16_uimm3_b): Likewise.
2591 (m16_simm4_1): Likewise.
2592 (m16_nsimm4_1): Likewise.
2593 (m16_simm5_1): Likewise.
2594 (m16_nsimm5_1): Likewise.
2595 (m16_uimm5_4): Likewise.
2596 (m16_nuimm5_4): Likewise.
2597 (m16_simm8_1): Likewise.
2598 (m16_nsimm8_1): Likewise.
2599 (m16_uimm8_1): Likewise.
2600 (m16_nuimm8_1): Likewise.
2601 (m16_uimm8_m1_1): Likewise.
2602 (m16_uimm8_4): Likewise.
2603 (m16_nuimm8_4): Likewise.
2604 (m16_simm8_8): Likewise.
2605 (m16_nsimm8_8): Likewise.
2606 (m16_usym8_4): Likewise.
2607 (m16_usym5_4): Likewise.
2608 (mips_move_1word): Change type of variable `i' from int to size_t.
2609 (mips_move_2words): Likewise.
2610 (output_block_move): Mark parameter `libname' with ATTRIBUTE_UNUSED.
2611 (function_arg_advance): Use HOST_PTR_PRINTF to print an address.
2612 (function_arg): Likewise.
2613 (function_arg_partial_nregs): Mark parameter `named' with
2614 ATTRIBUTE_UNUSED.
2615 (override_options): Use ISDIGIT instead of isdigit.
2616 (mips_output_external): Mark parameter `file' with ATTRIBUTE_UNUSED.
2617 (final_prescan_insn): Likewise for parameters `opvec' and `noperands'.
2618 (save_restore_insns): Cast HOST_WIDE_INT arguments passed to
2619 function `fatal' to long before printing. Use
2620 HOST_WIDE_INT_PRINT_DEC in fprintf. Both changes done several
2621 times in this function.
2622 (function_prologue): Mark parameter `size' with ATTRIBUTE_UNUSED.
2623 (function_epilogue): Likewise for parameters `file' and `size'.
2624 Print an int with "%d" not "%ld".
2625 (mips_select_rtx_section): Mark parameter `x' with ATTRIBUTE_UNUSED.
2626 (mips_function_value): Likewise for parameter `func'.
2627 (function_arg_pass_by_reference): Likewise for parameters `cum'
2628 and `named'.
2629 (extend_operator): Likewise for parameter `mode'
2630 (highpart_shift_operator): Likewise.
2631
2632 * mips.md (mul_acc_si): Remove unused variable `macc'.
2633
77a45a2e
RH
2634Fri Jun 12 09:33:44 1998 Richard Henderson <rth@cygnus.com>
2635
2636 * fold-const.c (fold): Revert last change. It breaks constant
2637 expressions somehow.
2638
8d62b411
AS
2639Fri Jun 12 10:23:36 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2640
2641 * expr.c (do_jump, case EQ_EXPR, NE_EXPR): When comparing complex
2642 prevent operands from being evaluated twice.
2643
cac45626
SO
2644Fri Jun 12 00:50:27 1998 Sergey Okhapkin <sos@prospect.com.ru>
2645
2646 * toplev.c (lang_options): Add -remap as a preprocessor option.
2647
9bc6d2c2
JW
2648Fri Jun 12 00:30:32 1998 John Wehle (john@feith.com)
2649
2650 * i386.md (cmpsi_1, cmphi_1, cmpqi_1): Remove code
2651 which set CC_REVERSED since reload should ensure that
2652 the operands are already the correct type.
2653
fb95c8c9
JW
2654Thu Jun 11 17:14:15 1998 Jim Wilson <wilson@cygnus.com>
2655
2656 * except.c (expand_builtin_eh_stub): Call emit_move_insn rather than
2657 calling gen_rtx_SET.
2658
95009288
DE
2659Thu Jun 11 18:45:49 1998 David Edelsohn <edelsohn@mhpcc.edu>
2660
2661 * config/rs6000/x-aix43 (AR): Delete.
2662 (AR_FOR_TARGET_FLAGS): Add -X32_64 here.
2663
bf6f78d1
DS
2664Thu Jun 11 16:19:17 1998 David W. Schuler <schuld@btv.ibm.com>
2665
2666 * config/i386/aix386ng.h (CPP_SPEC): Remove extraneous quote.
2667
45cc4c09
JW
2668Thu Jun 11 12:40:27 1998 Jim Wilson <wilson@cygnus.com>
2669
2670 * mips.c (override_options): Replace word_mode with explicit
2671 TARGET_64BIT check.
2672
ecb75b7a
MM
2673Thu Jun 11 14:50:02 1998 Michael Meissner <meissner@cygnus.com>
2674
2675 * regmove.c (regmove_optimize): If we can't replace the
2676 destination in an insn that sets the source, generate an explicit
2677 move of the source to the destination.
2678 (copy_src_to_dest): New function.
2679 (toplevel): Include basic-block.h
2680
2681 * Makefile.in (regmove.o): Add basic-block.h dependencies.
2682
8e34149d
DB
2683Thu Jun 11 10:30:09 1998 Dave Brolley <brolley@cygnus.com>
2684
2685 * toplev.c (lang_options): Add missing options (nostdinc, idirafter).
2686
8358a974
MM
2687Wed Jun 10 23:39:32 1998 Mark Mitchell <mark@markmitchell.com>
2688
2689 * rtl.h (rtx_def): Improve documentation.
2690 (MEM_IN_STRUCT_P): Likewise.
2691
e80716de
GS
2692Wed Jun 10 23:23:17 1998 Graham <grahams@rcp.co.uk>
2693
2694 * c-decl.c (start_decl): Correct test for -Wmain.
2695
b3fbc9ad
GS
2696 * c-decl.c (grokdeclarator): Remove unused variable "last".
2697
3e2b9a3d
JW
2698Wed Jun 10 14:52:27 1998 Jim Wilson <wilson@cygnus.com>
2699
2700 * expr.c (expand_builtin_setjmp): Store const1_rtx in target.
2701 (expand_builtin_longjmp): Abort if value isn't const1_rtx.
2702 Delete code storing value in static_chain_rtx.
2703 (expand_builtin, case BUILT_IN_LONGJMP): Pass NULL_RTX for target
2704 to second expand_expr call.
2705
748b909e
MM
2706Wed Jun 10 13:08:41 1998 Mark Mitchell <mark@markmitchell.com>
2707
2708 * mips/mips.c: Remove -mabi=o32 and -mabi=n64.
2709
e061d1ce
DB
2710Wed Jun 10 13:41:23 1998 Dave Brolley <brolley@cygnus.com>
2711
2712 * cppmain.c (fatal): New function.
2713 * configure.in (cpp_main): New configuration variable.
2714 * configure: Regenerated.
e80716de
GS
2715 * Makefile.in (CCCP): Use a configuration variable to select basex
2716 for cccp.
e061d1ce
DB
2717 (cppmain$(exeext)): Add @extra_cpp_objs@.
2718
a0d85b75
DB
2719Wed Jun 10 13:07:02 1998 Dave Brolley <brolley@cygnus.com>
2720
2721 * objc/objc-act.c: Add cpplib declarations.
2722 (lang_decode_option): Initialize cpplib if necessary.
2723 (lang_decode_option): New argc/argv interface.
2724 * tree.h (lang_decode_option): New argc/argv interface.
2725 * toplev.c (lang_options): Add cpp options.
2726 (main): New interface for lang_decode_option.
2727 * gcc.c (default_compilers): Don't call cpp for a cpplib-enabled C compiler
2728 unless -E, -M or -MM is specified.
2729 * cpplib.h (cpp_handle_option): New function.
2730 * cpplib.c (cpp_handle_option): New function.
2731 (cpp_handle_options): Now calls cpp_handle_option.
2732 * c-tree.h (c_decode_option): New argc/argv interface.
2733 * c-lex.c (init_parse): cpplib now initialized in c_decode_option.
2734 * c-lang.c (lang_decode_option): New argc/argv interface.
2735 * c-decl.c: Add cpplib declarations.
2736 (c_decode_option): New argc/argv interface.
2737 (c_decode_option): Call cpp_handle_option.
2738 (c_decode_option): Now returns number of strings processed.
2739
95193030
RE
2740Wed Jun 10 09:47:13 1998 Richard Earnshaw (rearnsha@arm.com)
2741
2742 * unroll.c (verify_addresses): Use validate_replace_rtx to undo the
2743 changes. Abort if the undo fails.
2744
e74e8c84
VM
27451998-06-10 Vladimir N. Makarov <vmakarov@cygnus.com>
2746
2747 * config/rs6000/rs6000.c (output_prolog): Change locations and
2748 directions of saving and restoring arguments of main on the stack.
2749
0254c561
JC
2750Wed Jun 10 08:56:27 1998 John Carr <jfc@mit.edu>
2751
2752 * reload1.c (reload_cse_simplify_operands): Do not call gen_rtx_REG
2753 for each alternative. Do not replace a CONST_INT with a REG unless
2754 the reg is cheaper.
2755
0365438d
JL
2756Wed Jun 10 02:11:55 1998 Jeffrey A Law (law@cygnus.com)
2757
07fb7f79
JL
2758 * decl.c (init_decl_processing): Fix typo.
2759
bfed8dac
JL
2760 * mips.c (gpr_mode): New variable.
2761 (override_options): Initialize gpr_mode.
2762 (compute_frame_size): Use "gpr_mode" instead of "word_mode" to
2763 determine size and offset of general purpose registers save slots.
2764 (save_restore_insns, mips_expand_prologue): Similarly.
2765
0365438d
JL
2766 * reload.c (find_reloads_toplev): Use gen_lowpart common to convert
2767 between constant representations when we have (SUBREG (REG)) with
2768 REG equivalent to a constant.
2769
e6bcfef9
JS
2770Wed Jun 10 01:39:00 1998 Juha Sarlin <juha@c3l.tyreso.se>
2771
2772 * h8300.c (get_shift_alg): Add special cases for shifts of 8 and 24.
2773
ac1fdb22
RH
2774Tue Jun 9 22:05:34 1998 Richard Henderson <rth@cygnus.com>
2775
2776 * fold-const.c (fold): Even with otherwise constant trees, look for
2777 opportunities to combine integer constants.
2778
1c5d60f5
JW
2779Wed Jun 3 23:41:24 EDT 1998 John Wehle (john@feith.com)
2780
9d932d43
JW
2781 * i386.c (notice_update_cc): Clear cc_status.value2 in the
2782 case of UNSPEC 5 (bsf).
2783
1c5d60f5
JW
2784 * i386.md (movsfcc, movdfcc, movxfcc): The floating point
2785 conditional move instructions don't support signed integer
2786 comparisons.
2787
f1be41ad
NC
2788Tue Jun 9 14:31:19 1998 Nick Clifton <nickc@cygnus.com>
2789
2790 * config/v850/t-v850 (TCFLAGS): Add assembler options to warn of
2791 overlfows.
2792
2793 * config/v850/lib1funcs.asm (__return_interrupt): Use 'addi
2794 16,sp,sp' ratehr than 'add 16,sp'. Patch courtesy of Biomedin
2795 <glctr@abc.it>.
2796
0d3453df
AM
2797Tue Jun 9 16:23:13 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
2798
2799 * except.c (expand_start_catch): Rename to start_catch_handler.
2800 (expand_end_catch): Delete function.
2801 (expand_end_all_catch): Remove catch status that expand_end_catch
2802 use to do.
2803 * except.h (expand_start_catch): Rename prototype.
2804 (expand_end_catch): Delete prototype.
2805
3398f47f
MM
2806Tue Jun 9 12:57:32 1998 Mark Mitchell <mark@markmitchell.com>
2807
2808 * invoke.texi: Add documentation for -mips4 and -mabi=*.
2809
6805ef53
KK
2810Tue Jun 9 12:12:34 1998 Klaus Kaempf (kkaempf@progis.de)
2811
2812 * alpha/vms.h (EXTRA_SECTIONS): Add in_ctors and in_dtors.
2813 (EXTRA_SECTION_FUNCTIONS): Add ctors_section and dtors_section.
2814 (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Define.
2815
9ae4ec46
JC
2816Tue Jun 9 12:10:27 1998 John Carr <jfc@mit.edu>
2817
2818 * haifa-sched.c (update_flow_info): Use UNITS_PER_WORD, not MOVE_MAX,
2819 as the threshold to permit splitting memory operations.
2820
624a8b3a
JL
2821Tue Jun 9 12:36:16 1998 Jeffrey A Law (law@cygnus.com)
2822
1c5d60f5
JW
2823 * mips.c (gpr_mode): New variable.
2824 (override_options): Initialize gpr_mode.
2825 (compute_frame_size): Use "gpr_mode" instead of "word_mode" to
2826 determine size and offset of general purpose registers save slots.
2827 (save_restore_insns, mips_expand_prologue): Similarly.
2828
624a8b3a
JL
2829 * Makefile.in (LIB2FUNCS_EH): Define. Just "_eh" for now.
2830 (LIBGCC2_CFLAGS): Remove -fexceptions.
2831 (LIB2FUNCS): Remove "_eh".
2832 (libgcc2.a): Iterate over LIB2FUNCS_EH and build everything in
2833 it with -fexceptions.
2834
2835 * Makefile.in (local-alloc.o): Depend on insn-attr.h.
2836 * local-alloc.c (block_alloc): Avoid creating false
2837 dependencies for targets which use instruction scheduling.
2838
674576f1
RH
2839Tue Jun 9 02:40:49 1998 Richard Henderson <rth@cygnus.com>
2840
2841 * mips/elf.h (ASM_DECLARE_OBJECT_NAME): Define.
2842 (ASM_FINISH_DECLARE_OBJECT): Define;
2843 * mips/elf64.h: Likewise.
2844
5dd57225 2845Tue Jun 9 01:08:47 1998 Richard Henderson <rth@cygnus.com>
602ad236 2846
5dd57225 2847 * toplev.c (flag_new_exceptions): Remove extraneous `extern'.
b8211569 2848
5dd57225 2849Mon Jun 8 23:24:48 PDT 1998 Jeff Law (law@cygnus.com)
ac4bac77
JL
2850
2851 * version.c: Bump for snapshot.
2852
a2f270cc
DE
2853Mon Jun 8 23:24:58 1998 David Edelsohn <edelsohn@mhpcc.edu>
2854
2855 * rs6000.md (mulsidi3): Add !TARGET_POWERPC64 constraint.
2856 (mulsidi3_ppc64): Delete.
2857
50b2596f
KG
2858Mon Jun 8 20:57:40 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2859
2860 * Makefile.in (varasm.o): Depend on dbxout.h.
2861 (cse.o): Depend on toplev.h and output.h.
2862 (gcse.o): Depend on output.h.
2863
2864 * mips.c: Include system.h and toplev.h and remove redundant code.
2865 Include output.h after tree.h so all its prototypes get activated.
2866 * mips.md (table_jump): Remove unused variable `dest'.
2867
2868 * sparc.h: Add prototype for `v8plus_regcmp_op'.
2869
2870 * crtstuff.c (fini_dummy, init_dummy): Mark function definitions
2871 with __attribute__ ((__unused__)).
2872 (__frame_dummy): Provide prototype before use, wrap it with
2873 EH_FRAME_SECTION_ASM_OP.
2874
2875 * cse.c: Move inclusion of <setjmp.h> above local headers.
2876 Include toplev.h and output.h.
2877
2878 * dbxout.h: Add prototype for `dbxout_begin_function'.
2879
2880 * final.c (final_scan_insn): Wrap variable `max_skip' in macro
2881 ASM_OUTPUT_MAX_SKIP_ALIGN.
2882
2883 * gcse.c: Include system.h and output.h.
2884 (dump_cuid_table, dump_rd_table, dump_cprop_data, dump_pre_data):
2885 Make extern instead of static.
2886 (compute_can_copy): Only declare variables `reg' and `insn' when
2887 AVOID_CCMODE_COPIES is not defined.
2888 (record_set_info): Mark parameter `setter' with ATTRIBUTE_UNUSED.
2889 (hash_scan_clobber): Likewise for `x' and `insn'.
2890 (hash_scan_call): Likewise.
2891 (record_last_set_info): Likewise for `setter'.
2892 (mark_call): Likewise for `pat'.
2893 (pre_insert_insn): Wrap variable `note' in macro HAVE_cc0.
2894
2895 * libgcc2.c (__bb_init_prg): Replace bzero with memset and fix the
2896 length parameter so that it multiplies the number of elements by
2897 the sizeof(element).
2898
2899 * output.h: Add prototype for `weak_finish'.
2900
2901 * recog.h: Likewise for `validate_replace_src'.
2902
2903 * rtl.h: Likewise for `optimize_save_area_alloca',
2904 `fix_sched_param', `purge_addressof', `gcse_main',
2905 `regmove_optimize', `dbr_schedule', `branch_prob' and
2906 `end_branch_prob'.
2907
2908 * toplev.h: Likewise for `set_float_handler' and
2909 `output_quoted_string'.
2910
2911 * varasm.c: Include dbxout.h.
2912
33d7a521
JW
2913Mon Jun 8 18:12:06 1998 Jim Wilson <wilson@cygnus.com>
2914
2915 * mips.c (mips_secondary_reload_class): Use gp_reg_p instead of
2916 GP_REG_P. Use gr_regs instead of GR_REGS.
2917
cb923660
KR
2918Mon Jun 8 16:54:12 1998 Ken Raeburn <raeburn@cygnus.com>
2919 Jeff Law <law@cygnus.com>
2920
2921 * Revamped multiply support for MIPS chips.
2922 * mips.c (extend_operator): New function.
2923 (highpart_shift_operator): Likewise.
2924 * mips.h: Declare new functions.
2925 (PREDICATE_CODES): Add support for new predicates.
2926 * mips.md (mulsi3 expander): Simplify.
2927 (mulsi_mult3): Add another constraint alternative. Support
2928 3 operand multiply instructions as found on various mips
2929 parts.
2930 (mulsi3_r4650): Delete pattern, now handled by mulsi_mult3.
2931 (mul_acc_si): New pattern and associated splitters.
2932 (mulsidi3 expander): Rework to use mulsidi3_64bit and
2933 mulsidi3_internal.
2934 (umulsidi3): New expander.
2935 (mulsidi3_internal): Accept either sign or zero extended
2936 operands and generate code as appropriate appropriately.
2937 (mulsidi3_64bit): Similarly.
2938 (smulsi3_highpart): Turn into an expander and generate code
2939 to match new patterns.
2940 (umulsi3_highpart): Likewise.
2941 (xmulsi3_highpart_internal): New pattern.
2942 (maddi patterns): Delete. Replace with:
2943 (mul_acc_di, mul-acc_64bit_di): New patterns.
2944
a1622f83
AM
2945Mon Jun 8 14:16:15 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
2946
2947 * eh-common.h: Remove NEW_EH_MODEL compile time flag, and replace with
2948 flag_new_exceptions runtime flag.
2949 (struct old_exception_table): New struct which represents what
2950 the exception table looks like without the new model.
2951 (NEW_EH_RUNTIME): New value used as a tag in the exception table to
2952 flag that this is a new style table.
2953 * except.h: Remove compile time flag NEW_EH_MODEL.
2954 (expand_builtin_eh_stub_old): New prototype.
2955 * tree.h (enum built_in_function): Add BUILT_IN_EH_STUB_OLD.
2956 * expr.c (expand_builtin): New builtin func BUILT_IN_EH_STUB_OLD.
2957 * c-decl.c (init_decl_processing): Add new builtin function
2958 __builtin_eh_stub_old.
2959 * final.c (final_scan_insn): Replace compile time flag NEW_EH_MODEL.
2960 * flags.h (flag_new_exceptions): New runtime flag.
2961 * toplev.c (flag_new_exceptions): Initialize default to 0,
2962 -fnew-exceptions sets to 1.
2963 * except.c (output_exception_table_entry): Output New style exception
2964 identifier into table, and replace compile time flag NEW_EH_MODEL
2965 with runtime flag flag_new_exceptions.
2966 (output_exception_table): Replace compile time flag NEW_EH_MODEL.
2967 (expand_builtin_eh_stub_old): Duplicates original functionality of
2968 expand_builtin_eh_stub.
2969 (expand_builtin_eh_stub): Replace compile time flag NEW_EH_MODEL.
2970 * libgcc2.c (find_exception_handler): Remove NEW_EH_MODEL #ifdefs.
2971 (old_find_exception_handler): New func, same as find_exception_handler
2972 except it works on the old style exception table.
2973 (__throw): Replace NEW_EH_MODEL. Detect new model based on presence
2974 of identifier in the exception table, and call appropriate routines.
2975
aeb302bb
JM
2976Mon Jun 8 01:21:13 1998 Jason Merrill <jason@yorick.cygnus.com>
2977
2978 * function.c: Define current_function_cannot_inline.
2979 (push_function_context_to): Save it.
2980 (pop_function_context_from): Restore it.
2981 * function.h (struct function): Provide it a home.
2982 * output.h: Declare it.
2983 * integrate.c (function_cannot_inline_p): Check it.
2984
8b015896 2985Mon Jun 8 10:43:15 1998 Richard Henderson <rth@cygnus.com>
9a14a3ab 2986
8b015896
RH
2987 * expr.c (force_operand): Detect PIC address loads before
2988 splitting arithmetic.
2b4065a4 2989
8b015896 2990Mon Jun 8 09:22:38 PDT 1998 Jeff Law (law@cygnus.com)
209c9866
JL
2991
2992 * version.c: Bump for snapshot.
2993
79990a39
GS
2994Mon Jun 8 02:55:56 1998 Graham <grahams@rcp.co.uk>
2995
2996 * tree.c (tree_class_check): Add braces to eliminate ambigious
2997 else warning.
2998 (tree_check): Likewise.
2999
49fa02d9
L
3000Mon Jun 8 02:49:23 1998 H.J. Lu (hjl@gnu.org)
3001
3002 * reg-stack.c (subst_stack_regs_pat): Make sure the top of
3003 stack is the destination for conditional move insn.
3004
52267fcb
JM
3005Mon Jun 8 01:21:13 1998 Jason Merrill <jason@yorick.cygnus.com>
3006
3007 * tree.h (TREE_VEC_END): Cast unused value to void.
3008
3009 * i386.c (print_operand): Use %lx for long operand.
3010
2b01d264
RH
3011Mon Jun 8 00:04:07 1998 Richard Henderson <rth@cygnus.com>
3012
3013 * alpha.c (summarize_insn): Ignore rtl slot format 'i'.
3014
cb9e12a7
JC
3015Sun Jun 7 14:15:45 1998 John Carr <jfc@mit.edu>
3016
3017 * sol2.h (INIT_SUBTARGET_OPTABS): Use Solaris libc float/long long
3018 conversion functions.
3019
b53beeb2
RH
3020Sun Jun 7 14:02:58 1998 Richard Henderson <rth@cygnus.com>
3021
3022 * toplev.c (flag_exceptions): Default to 0.
3023 (compile_file): Remove flag_exceptions == 2 hack.
3024 (main): Call lang_init_options.
3025 * tree.h: Declare it.
3026 * c-lang.c: Implement it.
3027 * objc/objc-act.c: Likewise.
3028
dfdfa60f
DE
3029Sun Jun 7 12:27:30 1998 David Edelsohn <edelsohn@mhpcc.edu>
3030
3031 * rs6000.md (restore_stack_block): Generate MEM and specify mode.
3032 * rs6000.h (STACK_SAVEAREA_MODE): SAVE_FUNCTION is VOIDmode.
3033 * rs6000.c (rs6000_output_load_toc_table): Use fputs.
3034 (output_function_profiler): Use asm_fprintf and fputs.
3035
83e0821b
KG
3036Sat Jun 6 12:17:12 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3037
3038 * gencheck.c: Remove redundant stdio.h include. Add a definition
3039 of xmalloc for when we are forced to link with alloca.o.
3040
3041 * reload1.c (reload_reg_free_for_value_p): Use `(unsigned)1'
3042 instead of `1U'.
3043
3044 * fold-const.c (constant_boolean_node): Make definition static to
3045 match the prototype.
3046
6ff0d2a0
PB
3047Fri Jun 5 15:53:17 1998 Per Bothner <bothner@cygnus.com>
3048
3049 * gcc.c (lang_specific_pre_link): New LANG_SPECIFIC_DRIVER function.
3050 (lang_specific_extra_outfiles): New LANG_SPECIFIC_DRIVER variable.
3051 (do_spec, input_filename, input_filename_length): Make public.
3052 (main): Adjust outfiles allocation by lang_specific_extra_outfiles.
3053 Call lang_specific_pre_link befor elinking.
3054
2db45993
JL
3055Fri Jun 5 12:29:28 1998 Jeffrey A Law (law@cygnus.com)
3056
3057 * haifa-sched.c (rank_for_schedule): For "equally good insns", prefer
3058 the insn which has the most insns dependent on it.
3059
74186471
JC
3060Fri Jun 5 09:03:22 1998 John Carr <jfc@mit.edu>
3061
3062 * alias.c (find_base_value): Avoid reading past end of reg_base_value.
3063
989f090c
RH
3064Fri Jun 5 03:05:34 1998 Richard Henderson <rth@cygnus.com>
3065
3066 * alpha.md (insxh-1): New insxl pattern for combine.
3067
b657fc39
L
3068Fri Jun 5 01:12:15 1998 H.J. Lu (hjl@gnu.org)
3069
3070 * i386/i386.c (output_fp_conditional_move): New function
3071 to output floating point conditional move.
3072 (output_int_conditional_move): New function to output integer
3073 conditional move.
3074
3075 * i386/i386.md (movsicci+5, movhicc+5, movdicc+5): Call
3076 output_int_conditional_move () to output int conditional move.
3077 (movsfcc+5, movdfcc+5, movxfcc+5): Call
3078 output_fp_conditional_move () to output floating point
3079 conditional move.
3080
3081 * i386/i386.c (put_condition_code): In INT mode, check
3082 cc_prev_status.flags & CC_NO_OVERFLOW for GE and LT.
3083
202fe2d6
DB
3084Thu Jun 4 16:09:51 1998 Dave Brolley <brolley@cygnus.com>
3085
3086 * dbxout.c (dbxout_type): Output arrays of bits as if
3087 they were bitstrings for Chill
3088
a260abc9
DE
3089Thu Jun 4 14:35:27 1998 David Edelsohn <edelsohn@mhpcc.edu>
3090
3091 * tree.c (get_inner_array_type): New function.
3092 * tree.h (get_inner_array_type): Prototype.
3093 * expr.h (STACK_SAVEAREA_MODE): New macro.
3094 * expr.c (expand_builtin_setjmp): Initialize sa_mode using
3095 STACK_SAVEAREA_MODE.
3096 (expand_builtin_longjmp): Likewise.
3097 * explow.c (emit_stack_save): Likewise.
3098 (allocate_dynamic_stack_space): Use Pmode not insn_operand_mode.
3099
3100 * rs6000/aix41.h (ASM_CPU_SPEC): Define relative to ASM_DEFAULT_SPEC.
3101 (CPP_CPU_SPEC): Define relative to CPU_DEFAULT_SPEC.
3102 * rs6000/aix43.h: New file.
3103 * rs6000/t-aix43: New file.
3104 * rs6000/x-aix41: New file.
3105 * rs6000/x-aix43: New file.
3106 * configure.in (rs6000-ibm-aix*): Use them.
3107 * rs6000/powerpc.h: Delete.
3108 * rs6000/sysv4.h: Move necessary powerpc.h definitions to here.
3109 * rs6000/netware.h: and here.
3110 * rs6000/win-nt.h: and here.
3111
3112 * rs6000/rs6000.c (processor_target_table, 620): Do not affect
3113 MASK_POWERPC64.
3114 (rs6000_override_options): Ignore flag_pic for AIX.
3115 (rs6000_immed_double_const): Delete.
3116 (u_short_cint_operand): Don't assume 32-bit CONST_INT.
3117 (reg_or_u_short_operand): Don't assume 32-bit CONST_INT.
3118 (num_insns_constant): mask64_operand() is 2 insns.
3119 (logical_operand): Don't assume 32-bit CONST_INT.
3120 (non_logical_cint_operand): Don't assume 32-bit CONST_INT.
3121 (easy_fp_constant): Any CONST_DOUBLE_HIGH is okay for 64-bit.
3122 (mask_constant): HOST_WIDE_INT parameter.
3123 (non_and_cint_operand): Delete.
3124 (mask64_operand): New function.
3125 (and64_operand): New function.
3126 (function_arg_advance): DImode arguments do not need special
3127 alignment when 64-bit.
3128 (function_arg): Likewise.
3129 (setup_incoming_varargs): Reverse reg_size assignment.
3130 (print_operand): HOST_WIDE_INT second parameter.
3131 (print_operand, 'B'): New case.
3132 (print_operand, 'M'): Fix typo in lossage string.
3133 (print_operandm 'S'): New case.
3134 (rs6000_stack_info): Reverse reg_size assignment. Use total_raw_size
3135 to compute AIX push_p. Use reg_size to compute {cr,lr}_save_offset.
3136 (rs6000_output_load_toc_table): Reverse init_ptr assignment. Use
3137 TARGET_64BIT not TARGET_POWERPC64. Convert fprintf to fputs.
3138 Load GOT highpart, don't add it. Add lowpart with {cal|la}.
3139 (rs6000_allocate_stack_space): Use {cal|la}.
3140 (output_epilog): Use {cal|la}
3141 (output_function_profiler): Add call glue to mcount call.
3142 Load GOT highpart, don't add it. Add lowpart with {cal|la}.
3143
3144 * rs6000/rs6000.h (TARGET_SWITCHES): Add powerpc64.
3145 (STACK_BOUNDARY): Depend on TARGET_32BIT.
3146 (ADJUST_FIELD_ALIGN): Calculate array alignment using innermost type.
3147 (CONST_OK_FOR_LETTER_P): Don't assume 32-bit CONST_INT.
3148 (EXTRA_CONSTRAINTS): Remove NT 'S' and 'T'. Replace 'S' with
3149 64-bit mask operand.
3150 (RS6000_SAVE_TOC): Depend on TARGET_32BIT.
3151 (STACK_SAVEAREA_MODE): New macro.
3152 (LEGITIMATE_CONSTANT_P): DImode okay for 64bit.
3153 (LEGITIMIZE_RELOAD_ADDRESS): New macro.
3154 (RTX_COSTS, AND/IOR/XOR): Reflect current machine description.
3155 (ASM_FILE_START): Emit 64-bit ABI directive.
3156 (ASM_DECLARE_FUNCTION_NAME): Align CSECT on doubleword in 64-bit mode.
3157 (ASM_OUTPUT_SPECIAL_POOL_ENTRY): DImode okay for 64-bit.
3158 (PREDICATE_CODES): Add "and64_operand" and "mask64_operand".
3159 Delete "non_and_cint_operand". "input_operand" includes CONST_DOUBLE.
3160
3161 * rs6000/rs6000.md (iorsi3, xorsi3): Use HOST_WIDE_INT for mask.
3162 Restore define_splits.
3163 (floatsidf2, floatunssidf2): Remove !TARGET_POWERPC64 final constraint.
3164 (floatsidf2_internal, floatunssidf2_internal2): Likewise.
3165 Do not specify base register operand mode.
3166 (floatsidf2_loadaddr): Do not specify base register operand mode.
3167 (floatsidf2_store1, floatsidf2_store2): Operand 1 must be base
3168 register; do not specify mode. Remove !TARGET_POWERPC64 final
3169 constraint.
3170 (floatsidf2_load): Do not specify base register operand mode. Remove
3171 !TARGET_POWERPC64 final constraint.
3172 (fix_truncdfsi2_internal, fix_truncdfsi2_{store,load}): Do not specify
3173 base register operand mode.
3174 (adddi3): Split large constants early.
3175 (absdi3): Shift by 63, not 31.
3176 (*mulsidi3_ppc64): New pattern.
3177 (rotldi3): Add masking combiner patterns.
3178 (anddi3): Add rldic{r,l} masking. Remove split of large constants
3179 because PPC insns zero-extend.
3180 (iordi3, xordi3): Split large constants early.
3181 (movsi matcher): Remove S and T constraints.
3182 (movsf const_double): create SImode constant from TARGET_DOUBLE.
3183 (movdf_hardfloat32): Add default abort() case.
3184 (movdf easy_fp_const): create DImode constant from TARGET_DOUBLE.
3185 (movdi): Remove 64-bit constant generator. Try to convert
3186 CONST_DOUBLE to CONST_INT. Handle TOC memory constants.
3187 (movdi_32): Add default abort() case.
3188 (movdi_64): Add numerous ways to split 64-bit constants.
3189 Make catch-all define_split more optimal and never FAIL.
3190 (movti_ppc64): Add default abort() case.
3191 (allocate_stack): Remove operand modes. Use Pmode.
3192 (restore_stack_block): Remove operand modes. Generate Pmode
3193 temporary.
3194 (save_stack_nonlocal, restore_stack_nonlocal): Generate Pmode
3195 temporary. Save area is double Pmode.
3196 (call_indirect_aix64, call_value_indirect_aix64): New patterns.
3197 (call, call_value): Do not specify address operand mode. Choose
3198 appropriate AIX ABI.
3199 (*call_local64, *ret_call_local64): New patterns.
3200 (*call_nonlocal_aix64, *ret_call_nonlocal_aix64): New patterns.
3201 (*ret_call_nonlocal_aix32): Use call_value_indirect for REG.
3202 (compare): Materialize DImode truthvalues.
3203
ff439b5f
CB
3204Thu Jun 4 01:26:57 1998 Craig Burley <burley@gnu.org>
3205
3206 * expr.c (safe_from_p): Avoid combinatorial explosion
3207 over duplicate SAVE_EXPRs by ensuring we never recurse
3208 on one that has already been visited.
3209
7d2a46a8
GS
3210Thu Jun 4 00:54:21 1998 Graham <grahams@rcp.co.uk>
3211
3212 * loop.c (check_dbra_loop): Initialise final_value before
3213 normalizing the loop.
3214
f5470689
R
3215Wed Jun 3 20:00:04 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3216
3217 * reload1.c (reload_reg_free_for_value_p): New arguments out and
3218 reloadnum. Changed all callers.
3219
9b91d8f4
UD
32201998-06-03 Ulrich Drepper <drepper@cygnus.com>
3221
3222 * system.h: Add _() and N_() macros in preparation for gettext.
3223
7fdc2757
AS
3224Wed Jun 3 11:02:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3225
bc516719
AS
3226 * c-common.c (check_format_info): Put back check for C9x `hh'
3227 length modifier. Warn about %n format writing into const. Remove
3228 obsolete comment.
9b91d8f4 3229 (format_char_info): Fix comments.
bc516719 3230
7fdc2757
AS
3231 * configure.in: Set float_format to m68k for all m68k targets that
3232 do not override LONG_DOUBLE_TYPE_SIZE.
3233 * config/float-m68k.h: New file.
3234
dc2a47ed
RH
3235Tue Jun 2 23:14:01 1998 Richard Henderson <rth@cygnus.com>
3236
3237 * jump.c (jump_optimize): Remove debug messages accidentally left in
3238 with the previous change.
3239
f0348c25
RH
3240Tue Jun 2 22:46:08 1998 Richard Henderson <rth@cygnus.com>
3241
3242 * expr.c (store_expr): Revert stray patch associated with
3243 1998-05-23 commit.
3244
4f4f436f
RH
3245Tue Jun 2 21:59:01 1998 Richard Henderson <rth@cygnus.com>
3246
3247 * jump.c (rtx_unsafe_p): New function.
3248 (jump_optimize): Use it on if/then/else transformations and
3249 conditional move transformations.
3250
df0e526f
AS
3251Tue Jun 2 22:50:10 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3252
3253 * fold-const.c (fold, case EQ_EXPR): When folding VAR++ == CONST
3254 or VAR-- == CONST construct a proper mask if VAR is a bitfield.
3255 Cope with CONST being out of range for the bitfield.
3256
2638126a
BS
3257Tue Jun 2 22:28:31 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
3258
3259 * expr.c (emit_move_insn_1): When moving complex values in several
3260 steps, emit a CLOBBER to show the destination dies.
3261
6c8538cc
JL
3262Tue Jun 2 22:17:26 1998 Jeffrey A Law (law@cygnus.com)
3263
ccdb9251
JL
3264 * Makefile.in (site.exp): Use the object testsuite directory as
3265 the temporary directory.
3266
6c8538cc
JL
3267 * expr.c (expand_expr, case ADDR_EXPR): Handle taking the
3268 address of an ADDRESSOF rtx.
3269
0bc02db4
MS
32701998-06-02 Mike Stump <mrs@wrs.com>
3271
3272 * expr.c (expand_builtin_setjmp): Handle BUILTIN_SETJMP_FRAME_VALUE.
3273 * i960.h (SETUP_FRAME_ADDRESSES, BUILTIN_SETJMP_FRAME_VALUE): Define.
3274 * i960.md (ret, flush_register_windows): Define.
3275 (nonlocal_goto): Likewise. Nested function nonlocal gotos don't
3276 work yet.
3277 * tm.texi (BUILTIN_SETJMP_FRAME_VALUE): Document new macro.
3278
d46f7484
RH
3279Tue Jun 2 14:02:38 1998 Richard Henderson <rth@cygnus.com>
3280
3281 * alpha.md (divsi3, udivsi3, modsi3, umodsi3): Enable, and work
3282 around an OSF/1 library bug wrt sign-extension of inputs.
3283
e3c81d20
RH
3284Tue Jun 2 13:02:44 1998 Richard Henderson <rth@cygnus.com>
3285
3286 * vax/netbsd.h (DWARF2_UNWIND_INFO): Must be undef, not defined 0.
3287
44ec7e59 3288Mon Jun 1 03:44:03 1998 Catherine Moore <clm@cygnus.com>
9b91d8f4 3289
44ec7e59
CM
3290 * config/sh/sh.h (MAX_OFILE_ALIGNMENT): Define.
3291
3292 * varasm.c (assemble_variable): Augment alignment warning.
3293
9224220f
MM
3294Mon Jun 1 12:14:28 1998 Michael Meissner <meissner@cygnus.com>
3295
3296 * config/fp-bit.c (_fp{add,div}_parts): Return correct IEEE result
3297 in the presence of IEEE negative 0's.
3298
726e2d54
JW
3299Sun May 31 16:11:41 1998 John Wehle (john@feith.com)
3300
3301 * reload.c (find_reloads): Record the existing mode if
3302 operand_mode == VOIDmode before replacing a register with
3303 a constant.
3304 * i386.md (tstsi, tsthi, tstqi, tstsf, tstdf, tstxf): Set
3305 i386_compare_op1 to const0_rtx for the benefit of the
3306 conditional move patterns.
3307 (movsicc, movhicc, movsfcc, movdfcc, movxfcc, movdicc): Rewrite
3308 based on suggestions from Jim Wilson.
3309
97f959a5
JL
3310Sun May 31 00:44:02 PDT 1998 Jeff Law (law@cygnus.com)
3311
3312 * version.c: Bump for snapshot.
3313
b5662334
BK
3314Sun May 31 00:34:17 1998 Bruce Korb <korbb@datadesign.com>
3315
3316 * Makefile.in (fixinc.sh): Update rules again.
3317
674032e2
JL
3318Sun May 31 00:27:47 1998 Jeffrey A Law (law@cygnus.com)
3319
3320 * extend.texi: Bring back reference to trampoline paper.
3321
3322Sun May 31 00:22:34 1998 Ulrich Drepper <drepper@cygnus.com>
3323
3324 * Makefile.in (USER_H): Add stdbool.h.
3325 * ginclude/stdbool.h: New file.
3326
d3903c22
JL
3327Fri May 29 01:48:25 1998 Jeffrey A Law (law@cygnus.com)
3328
c71407f9
JL
3329 * jump.c (thread_jumps): Do not look at the NOTE_LINE_NUMBER
3330 of a non-note insn.
3331
d3903c22
JL
3332 * gcse.c (pre_delete): Fix code to determine the mode of
3333 the reaching pseudo register.
3334
8376d400
BS
3335Fri May 29 01:07:28 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
3336
3337 * Makefile.in (GEN): Add gencheck
3338 (STAGESTUFF): Add tree-check.h and gencheck.
3339
71d085b0
BK
3340Fri May 29 00:57:37 1998 Bruce Korb <korbb@datadesign.com>
3341
3342 * Makefile.in (cstamp-h.in): Remove before trying to recreate.
3343 (fixinc.sh): Set some additional environment variables before
3344 calling mkfixinc.sh.
3345
f4d1453e
JL
3346Thu May 28 12:57:05 1998 Jeffrey A Law (law@cygnus.com)
3347
3348 * reload.c (find_reloads): Do not force a reloads of match_operators.
9b91d8f4 3349
9f8e6243
AM
3350Thu May 28 10:22:22 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
3351
3352 * except.h (remove_handler): Add new prototype.
3353 * except.c (remove_handler): New function to remove handlers
3354 from an exception region.
3355 * flow.c (find_basic_blocks_1): Remove handlers from regions when
3356 handler label is deleted; remove exception regions with no handlers.
3357
d05a5492
MM
3358Thu May 28 09:36:39 1998 Michael Meissner <meissner@cygnus.com>
3359
3360 * except.h (rtx): Define rtx type correctly if needed.
3361 * function.h (rtx): Ditto.
3362 (tree): Define tree type correctly if needed.
3363
3364 * c-pragma.c (toplevel): Include rtl.h.
3365
3366 * stor-layout.c (toplevel): Move include of rtl.h before
3367 except.h.
3368
3369 * Makefile.in (c-pragma.o): Add except.h, rtl.h dependencies.
3370 (tree.o): Add except.h dependency.
9b91d8f4 3371
ed385fd9
JL
3372Wed May 27 22:02:40 1998 Jeffrey A Law (law@cygnus.com)
3373
5bc80b30
JL
3374 * reload1.c: Revert accidental checkin.
3375
ed385fd9
JL
3376 * configure.lang: Fix thinko when adding a definition for
3377 target_alias to the Makefile.
3378
00c26dc2
CM
3379Wed May 27 02:50:00 1998 Catherine Moore (clm@cygnus.com)
3380
9b91d8f4 3381 * config/sparc/lb1spc.asm (.rem and .urem): Replace
00c26dc2
CM
3382 routines.
3383
d499463f
RE
3384Wed May 27 02:48:31 1998 Richard Earnshaw (rearnsha@arm.com)
3385
3386 * arm.c (arm_gen_constant): Rework to eliminate uninitialized
3387 variable warnings. Don't generate scratch registers if only
3388 counting insns.
3389 (find_barrier): Eliminate unused variable SRC.
3390
62fe00be
MH
33911998-05-27 Manfred Hollstein <manfred@s-direktnet.de>
3392
3393 * toplev.h (rtx_def): Provide global declaration to avoid
3394 `limited scope' warnings.
3395
1a4bf22f
MK
3396Tue May 26 23:47:52 1998 Mumit Khan <khan@xraylith.wisc.edu>
3397
3398 * Makefile.in (gencheck.o): Use HOST_CC.
3399 * i386/t-mingw32: New file.
3400 * configure.in (i386-*-mingw32*): Use.
3401
4d818c85
RE
3402Tue May 26 07:31:04 1998 Richard Earnshaw (rearnsha@arm.com)
3403
3404 * arm.c (bad_signed_byte_operand): New predicate function.
3405 * arm.h (PREDICATE_CODES): Add it to the list.
3406 * arm.md (*extendqi[sh]i_insn): Split any addresses that ldrsb
3407 can't handle.
3408 (define_split): Two new splits for above insns.
3409
ad076f4e
RE
3410 * arm.c: Include toplev.h.
3411 (arm_override_options): Add parentheses around use of tune_flags.
3412 (arm_split_constant): Remove unused variable.
3413 (arm_gen_constant, arm_gen_movstrqi, add_constant): Likewise.
3414 (output_func_prologue, arm_expand_prologue): Likewise.
3415 (arm_canonicalize_comparison): Make I unsigned; rework constants
3416 accordignly. Add missing paratheses around << operation.
3417 (arm_rtx_costs): Correctly parenthesise MULT costs. Add a DEFAULT
3418 clause.
3419 ({load,store}_multiple_sequence): Initialize BASE_REG.
3420 (select_dominance_cc_mode): Add DEFAULT clauses.
3421 (broken_move): Return zero if the destination is not a register.
3422 (arm_reorg): Move unused REGNO declaration into the dead code.
3423 * arm.h (CANONICALIZE_COMPARISON): Ensure OP1 is updated.
3424
a1ec8ea1
JL
3425Mon May 25 22:49:56 PDT 1998 Jeff Law (law@cygnus.com)
3426
3427 * version.c: Bump for snapshot.
3428
c7f58590
JL
3429Mon May 25 11:56:24 PDT 1998 Jeff Law (law@cygnus.com)
3430
3431 * version.c: Bump for snapshot.
3432
33b019ad
DB
3433Mon May 25 14:00:13 1998 Dave Brolley <brolley@cygnus.com>
3434
3435 * cpperror.c (v_cpp_message): Remove static prototype.
3436 * cpplib.c (v_cpp_message): Move prototype to cpplib.h.
3437 * cpplib.h (v_cpp_message): Add protoptype.
3438 (stdarg.h,varargs.h): Needed for v_cpp_message prototype.
3439
61819ba5
JL
3440Sun May 24 20:36:15 PDT 1998 Jeff Law (law@cygnus.com)
3441
3442 * version.c: Bump for snapshot.
3443
f5c57ba7
JL
3444Sun May 24 02:08:57 PDT 1998 Jeff Law (law@cygnus.com)
3445
3446 * version.c: Bump for snapshot.
3447
7a87758d
AS
34481998-05-24 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3449
3450 * m68k.h: Declare more functions used in macros.
3451 (REG_CLASS_CONTENTS): Completely embrace initializer.
3452 * m68k.md (adddi3, subdi3): Add abort call to avoid warning
3453 about returning no value.
3454 * cse.c (find_best_addr): Declare p and found_better only if
3455 needed.
3456 * dbxout.c (dbxout_continue): Define only if DBX_CONTIN_LENGTH > 0.
3457 * dwarfout.c (string_length_attribute): #if 0 away.
3458 * function.c (expand_function_end): Define varible blktramp only
3459 if needed.
3460 * jump.c (find_insert_position): Define only if !HAVE_cc0.
3461 * loop.c (combine_givs_p): Define variable tem only if needed.
3462 * real.c: Comment out unused functions eabs, eround,
3463 e{24,53,64,113}toasc and eiinfin.
3464
3465
10ad38ca
AO
3466Sat May 23 23:44:53 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
3467
3468 * Makefile.in (boostrap2-lean, bootstrap3-lean,
3469 bootstrap4-lean): New targets.
3470
57fec042
JL
3471Sat May 23 23:35:14 1998 Jeffrey A Law (law@cygnus.com)
3472
3473 * warn_summary, test_summary: Moved into the contrib directory.
3474
97263b8c
MH
34751998-05-23 Manfred Hollstein <manfred@s-direktnet.de>
3476
e7f62ad3
MH
3477 * Makefile.in (ENQUIRE_CFLAGS, ENQUIRE_LDFLAGS): Move down to the end
3478 of the Makefile.
3479 (FLOAT_H_TEST): Likewise.
3480 (ENQUIRE): Likewise.
3481 (float.h-nat): Likewise.
3482 (float.h-cross): Likewise.
3483 (enquire): Likewise.
3484 (enquire.o): Likewise.
3485 (stmp-int-hdrs): Fix comment about enquire; depend upon gfloat.h.
3486 (stmp-headers): Move actions to stmp-int-hdrs, retaining only a
3487 no-op.
3488 (FLOAT_H): Remove old float.h-nat version; move current definition
3489 to CROSS_FLOAT_H location.
3490 (all.cross): Remove comments about enquire stuff.
3491
8d45987f
MH
3492 * Makefile.in (all.cross): Swap $(LIBGCC) and $(STMP_FIXPROTO).
3493 (rest.encap): Likewise.
e7f62ad3 3494 (libgcc2.ready): Depend upon $(STMP_FIXPROTO)
8d45987f 3495
97263b8c
MH
3496 * toplev.h (tree_node): Provide global declaration to avoid
3497 `limited scope' warnings.
3498
a8c24967
RL
3499Sat May 23 23:23:35 1998 Robert Lipe <robertl@dgii.com>
3500
3501 * test_summary: Display section breaks for each entry
3502 in a multilibbed target's output.
3503
bd070e1a
RH
35041998-05-23 Richard Henderson <rth@cygnus.com>
3505
3506 * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
3507 offset's mode is not ptr_mode, convert it.
3508
697073d9
JM
35091998-05-22 Jason Merrill <jason@yorick.cygnus.com>
3510
3511 * fold-const.c (ssize_binop): New fn.
3512 * tree.h: Declare it.
3513
07704a9a
RE
3514Fri May 22 03:42:05 1998 Richard Earnshaw (rearnsha@arm.com)
3515
9b91d8f4 3516 * genextract.c (print_path): Handle zero-length path as a special
07704a9a
RE
3517 case.
3518
911c3b7d
HPN
3519Fri May 22 01:38:07 1998 Hans-Peter Nilsson <hp@axis.se>
3520
3521 * cplus-dem.c (MBUF_SIZE): Bumped from 512 to 32767.
3522
75197b37
BS
3523Fri May 22 00:57:00 1998 Bernd Schmidt (crux@pool.informatik.rwth-aachen.de>
3524
3525 * final.c (JUMP_TABLES_IN_TEXT_SECTION): Provide a default value.
3526 (shorten_branches, final_scan_insn): Test value of
3527 JUMP_TABLES_IN_TEXT_SECTION instead of just testing whether it
3528 is defined.
3529 * tm.texi (JUMP_TABLES_IN_TEXT_SECTION): Corresponding changes.
3530 * arm/coff.h: Define JUMP_TABLES_IN_TEXT_SECTION to 1.
28ec9418 3531 * arm/tcoff.h: Likewise.
75197b37
BS
3532 * i386/386bsd.h: Likewise.
3533 * i386/freebsd-elf.h: Likewise.
3534 * i386/freebsd.h: Likewise.
3535 * i386/netbsd.h: Likewise.
3536 * i386/ptx4-i.h: Likewise.
3537 * i386/sysv4.h: Likewise.
3538 * pa/pa.h: Likewise.
3539 * rs6000/linux.h: Likewise.
3540 * rs6000/rs6000.h: Likewise.
3541 * sh/sh.h: Likewise.
3542 * sparc/sp64-elf.h: Likewise.
3543 * v850/v850.h: Likewise.
3544 * rs6000/sysv4.h: Define JUMP_TABLES_IN_TEXT_SECTION to 0.
3545 * i386/linux.h: Define JUMP_TABLES_IN_TEXT_SECTION to (flag_pic).
3546
1a29f703
R
3547Thu May 21 19:50:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3548
3549 * regmove.c (gen_add3_insn): New function.
3550 (fixup_match_2): Use it instead of calling gen_addsi3.
3551
aee21ba9
JL
3552Thu May 21 23:09:50 1998 Jeffrey A Law (law@cygnus.com)
3553
37433f49
JL
3554 * Makefile.in (gencheck): Depend on HOST_LIBDEPS.
3555
aee21ba9
JL
3556 * alias.c (rtx_equal_for_memref_p): Handle SCRATCH as a memory
3557 address.
3558
12b195d9
ML
3559Thu May 21 20:18:13 1998 Martin von Loewis <loewis@informatik.hu-berlin.de>
3560
3561 * Makefile.in (TREE_H): Add tree-check.h.
3562 (tree-check.h, gencheck): New targets.
3563 * gencheck.c: New file.
3564 * tree.c (tree_check, tree_class_check): New functions.
3565 * tree.h (TREE_CHECK, TREE_CLASS_CHECK): Define.
3566 (TYPE_CHECK, DECL_CHECK): Define.
3567 Modify all access macros to use generated checking macros.
3568
9e423e6d
JW
3569Wed May 20 23:44:28 EDT 1998 John Wehle (john@feith.com)
3570
3571 * acconfig.h (HAVE_GAS_MAX_SKIP_P2ALIGN): New tag.
3572 * configure.in: Check for it.
3573 * i386/gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Use it.
3574 * final.c (uid_align, uid_shuid, label_align): Make static.
3575 (label_align): Change type to struct label_alignment pointer.
3576 (LABEL_TO_ALIGNMENT, shorten_branches): Update due to type change.
3577 (LABEL_TO_MAX_SKIP): Define.
3578 (LABEL_ALIGN_MAX_SKIP, LOOP_ALIGN_MAX_SKIP,
3579 LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Provide defaults.
3580 (shorten_branches): Record the maximum bytes to skip when
3581 aligning a label.
3582 (final_scan_insn): Use the maximum bytes to skip when aligning a label
3583 if ASM_OUTPUT_MAX_SKIP_ALIGN is available.
3584 * i386.h (LOOP_ALIGN_MAX_SKIP,
3585 LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Define.
3586 * i386.c (override_options): i386_align_jumps and i386_align_loops
3587 default to 4 if ASM_OUTPUT_MAX_SKIP_ALIGN is available.
3588 * invoke.texi: Document new i386 align-loops and align-jumps behavior.
3589
1cc75298
MM
35901998-05-21 Mark Mitchell <mmitchell@usa.net>
3591
3592 * cplus-dem.c (do_type): Handle volatile qualification.
9b91d8f4 3593
178ca02d
PB
3594Thu May 21 12:23:17 1998 Per Bothner <bothner@cygnus.com>
3595
3596 * function.c (init_function_start): Don't call emit_line_note if
3597 lineno is 0. (Can happen when compiling Java .class files.)
3598
cecbf6e2
R
3599Thu May 21 19:50:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3600
3601 * reload1.c (reload_reg_free_for_value_p): Fix RELOAD_FOR_INPUT
3602 end of lifetime and RELOAD_FOR_OUTPUT start of lifetime.
3603
b52ce03d
R
3604Thu May 21 19:32:27 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3605
3606 * combine.c (nonzero_bits): For paradoxical subregs, take
3607 LOAD_EXTENDED_OP into account.
3608
c8724862
DB
3609Thu May 21 11:51:15 1998 Dave Brolley <brolley@cygnus.com>
3610
3611 * configure.in (extra_c_objs): add prefix.o.
3612 (extra_cxx_objs): extra objects for C++ with cpplib.
3613 * configure: Regenerate.
3614
3615 * c-tree.h: (get_directive_line): Different prototype for cpplib.
3616 (GET_DIRECTIVE_LINE): Macro wrapper for get_directive_line.
3617
3618 * c-lex.h: (get_directive_line): Not needed here for cpplib.
3619
3620 * c-lex.c: (yy_cur,yy_lim,yy_get_token): Move to c-common.c.
3621 (GET_DIRECTIVE_LINE): Move to c-common.c and rename to get_directive_line.
3622
3623 * c-common.c (parse_in,parse_options,cpp_token): Declare for cpplib.
3624 (yy_cur,yy_lim,yy_get_token,get_directive,line): Moved here from c-lex.c
3625
fd97443c
KG
3626Thu May 21 09:04:42 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3627
3628 * gengenrtl.c (type_from_format, accessor_from_format): Change
3629 type of parameter `c' from `char' to `int'.
3630
0e4347ce
JL
3631Wed May 20 22:28:34 1998 Jeffrey A Law (law@cygnus.com)
3632
2a3edac9
JL
3633 * warn_summary, test_summary: New scripts from
3634 Kaveh Ghazi and Alexandre Oliva respectively.
3635
0e4347ce
JL
3636 * gcse.c (current_function_calls_longjmp): Declare.
3637
4e5a8d7b
JM
36381998-05-20 Jason Merrill <jason@yorick.cygnus.com>
3639
3640 * dwarf2out.c (base_type_die): Use int_size_in_bytes.
3641
7506f491
DE
3642Wed May 20 01:11:02 1998 Doug Evans (devans@cygnus.com)
3643 Jeff Law (law@cygnus.com)
3644
3645 * Global CSE and constant/copy propagation.
3646 * Makefile.in (OBJS): Add gcse.o
3647 (STAGESTUFF): Add *.gcse.
3648 (gcse.o): Add dependencies.
3649 (mostlyclean): Remove *.gcse and */*.gcse.
3650 * gcse.c: New file.
3651 * loop.c (loop_optimize): Move call to init_alias_analysis.
3652 * recog.c (validate_replace_src): New function.
3653 * toplev.c (gcse_dump): New global variable.
3654 (flag_gcse, gcse_time): Likewise.
3655 (compile_file): Initialize gcse_time and clean out the gcse dump
3656 file if necessary.
3657 (rest_of_compilation): Call gcse_main as requested. Dump RTL
3658 after gcse if requested.
3659 (main): Enable gcse for -O2 and above. Handle -dG. Enable gcse
3660 dumps for -da.
3661 * gcc.texi: Add gcse related internal documentation.
3662 * invoke.texi: Note new command line options for gcse.
3663 * tm.texi: Document AVOID_CCMODE_COPIES.
3664 * mips.h (AVOID_CCMODE_COPIES): Define.
3665
40859b41
JL
3666Tue May 19 22:31:20 1998 Jeffrey A Law (law@cygnus.com)
3667
3668 * Makefile.in (deduced.h): Only run scan-types if $(SYSTEM_HEADER_DIR)
3669 exists.
aef1617c 3670 (stmp-fixproto): Simlarly for running fixproto.
40859b41
JL
3671 * cross-make (SYSTEM_HEADER_DIR): Now $(tooldir)/sys-include.
3672
f85c8be7
JW
3673Tue May 19 19:08:52 1998 Jim Wilson <wilson@cygnus.com>
3674
3675 * config/mips/mips.c (double_memory_operand): Accept any MEM during
3676 reload when TARGET_64BIT.
3677
c7391272
JW
3678Tue May 19 18:21:25 1998 Jim Wilson <wilson@cygnus.com>
3679
3680 Finish incomplete change started by Kenner.
3681 * configure.in (*-*-linux-gnu*): Delete NO_STAB_H from xm_defines.
3682 (powerpcle-*-cygwin32): Delete xm_defines.
3683 * final.c, mips-tfile.c, xcoffout.c, config/mips/mips.c: Use
3684 HAVE_STAB_H instead of NO_STAB_H.
3685 * config/xm-linux.h (NO_STAB_H): Delete.
3686 (HAVE_STAB_H): Undefine.
3687 * config/i386/xm-go32.h (NO_STAB_H): Delete.
3688
af02da67
JW
36891998-05-19 Jim Wilson <wilson@cygnus.com>
3690
3691 * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Ignore
3692 LANG_TYPE trees with DECL_SOURCE_LINE of 0.
3693
79edd21c
TV
3694Tue May 19 15:07:54 1998 Todd Vierling <tv@netbsd.org>
3695
3696 * arm/netbsd.h: Ensure DWARF2_UNWIND_INFO is undefined.
3697
6e684430
R
3698Tue May 19 17:19:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3699
3700 * reload1.c (reload_reg_free_for_value_p): New function.
3701 (allocate_reload_reg, choose_reload_regs): Use it.
3702
7ecb5d27
AM
3703Tue May 19 11:51:00 EDT 1998 Andrew MacLeod (amacleod@cygnus.com)
3704
3705 * except.c (expand_start_catch): Correct logic for when to
3706 generate a new handler label, and when to use the old one.
3707
487a6e06
KG
3708Tue May 19 11:08:52 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3709
3710 * Makefile.in (print-rtl.o): Depend on bitmap.h.
3711 (dbxout.o): Depend on toplev.h.
3712 ($(SCHED_PREFIX)sched.o): Likewise.
3713 ($(out_object_file)): Likewise for system.h and toplev.h.
3714 (cppmain.o): Depend on gansidecl.h.
3715 (cpplib.o): Likewise.
3716 (cpperror.o): Likewise.
3717 (cppexp.o): Likewise.
3718 (cpphash.o): Likewise.
3719 (cppalloc.o): Likewise.
3720 (fix-header.o): Depend on cpplib.h and cpphash.h.
3721 (scan-decls.o): Depend on gansidecl.h.
3722
3723 * basic-block.h (free_regset_vector): Add prototype.
3724
3725 * cccp.c (check_precompiled): Mark parameter `fname' with
3726 ATTRIBUTE_UNUSED.
3727 (do_assert): Likewise for `op' and `keyword'.
3728 (do_unassert): Likewise.
3729 (do_line): Likewise for `keyword'.
3730 (do_error): Likewise for `op' and `keyword'.
3731 (do_warning): Likewise.
3732 (do_ident): Likewise for `keyword'.
3733 (do_pragma): Likewise for `limit', `op' and `keyword'.
3734 (do_sccs): Likewise.
3735 (do_if): Likewise for `keyword'.
3736 (do_elif): Likewise.
3737 (do_else): Likewise.
3738 (do_endif): Likewise.
3739
3740 * collect2.c (getenv): Remove redundant prototype.
3741 (collect_exit, collect_execute, dump_file): Likewise.
3742 (dump_list): Wrap prototype and definition in COLLECT_EXPORT_LIST.
3743 (dump_prefix_list): Hide prototype and definition.
3744
3745 * sparc.c: Include toplev.h.
3746 (intreg_operand): Mark parameter `mode' with ATTRIBUTE_UNUSED.
3747 (symbolic_memory_operand): Likewise.
3748 (sp64_medium_pic_operand): Likewise.
3749 (data_segment_operand): Likewise.
3750 (text_segment_operand): Likewise.
3751 (splittable_symbolic_memory_operand): Likewise.
3752 (splittable_immediate_memory_operand): Likewise.
3753 (eq_or_neq): Likewise.
3754 (normal_comp_operator): Likewise.
3755 (noov_compare_op): Likewise.
3756 (v9_regcmp_op): Likewise.
3757 (v8plus_regcmp_op): Likewise.
3758 (extend_op): Likewise.
3759 (cc_arithop): Likewise.
3760 (cc_arithopn): Likewise.
3761 (small_int): Likewise.
3762 (uns_small_int): Likewise.
3763 (clobbered_register): Likewise.
3764 (legitimize_pic_address): Likewise.
3765 (delay_operand): Likewise.
3766 (sparc_builtin_saveregs): Remove unused variable `stdarg'.
3767
3768 * sparc.h (order_regs_for_local_alloc, eligible_for_return_delay,
3769 sparc_issue_rate, v8plus_regcmp_p): Add prototypes.
3770
3771 * sparc.md (cmpdi_v8plus): Add abort for default case in switch.
3772
3773 * cppalloc.c: Include gansidecl.h.
3774
3775 * cpperror.c: Include stdarg.h/varargs.h and gansidecl.h.
3776 (cpp_file_line_for_message): Mark parameter `pfile' with
3777 ATTRIBUTE_UNUSED.
3778 (v_cpp_message): New function.
3779 (cpp_message): Use it. Also convert to variable arguments.
3780 (cpp_fatal): Likewise.
3781 (cpp_pfatal_with_name): Constify parameter `name'.
3782
3783 * cppexp.c: Move gansidecl.h before cpplib.h.
3784 * cpphash.c: Likewise.
3785 * cpphash.h (hashf, delete_macro): Add prototypes.
3786
3787 * cpplib.c: Include stdarg.h/varargs.h and move gansidecl.h before
3788 cpplib.h. Don't include errno.h.
3789 (update_path): Add arguments to prototype.
3790 (cpp_fatal, cpp_file_line_for_message, cpp_message, delete_macro,
3791 cpp_print_containing_files): Remove redundant prototypes.
3792 (cpp_hash_cleanup, add_import, append_include_chain,
3793 make_assertion, path_include, initialize_builtins,
3794 initialize_char_syntax, finclude, validate_else, comp_def_part,
3795 lookup_import, redundant_include_p, is_system_include,
3796 read_name_map, read_filename_string, open_include_file,
3797 check_macro_name, compare_defs, compare_token_lists,
3798 eval_if_expression, change_newlines): Add prototype arguments.
3799 (hashf): Remove redundant prototype.
3800 (read_token_list, free_token_list, safe_read, xcalloc, savestring,
3801 conditional_skip, skip_if_group): Add prototype arguments.
3802 (fdopen): Remove redundant prototype.
3803 (do_define, do_line, do_include, do_undef, do_error, do_pragma,
3804 do_ident, do_if, do_xifdef, do_else, do_elif, do_endif, do_sccs,
3805 do_once, do_assert, do_unassert, do_warning): Add prototype arguments.
3806 (struct directive): Add prototype arguments to function pointer
3807 member `func'.
3808 (handle_directive): Add missing arguments to call to `do_line'.
3809 (do_include): Mark parameters `unused1' and `unused2' with
3810 ATTRIBUTE_UNUSED.
3811 (do_line): Likewise for `keyword' and new parameters `unused1' and
3812 `unused2'.
3813 (do_error): Likewise for `keyword'.
3814 (do_warning): Likewise. Also add missing argument `pfile' in call
3815 to cpp_pedwarn.
3816 (do_once): Mark parameter `keyword', `unused1' and `unused2' with
9b91d8f4 3817 ATTRIBUTE_UNUSED.
487a6e06
KG
3818 (do_ident): Likewise for `keyword', `buf' and `limit'.
3819 (do_pragma): Likewise. Also add missing arguments in call to do_once.
3820 (do_sccs): Mark parameter `keyword', `buf' and `limit' with
9b91d8f4 3821 ATTRIBUTE_UNUSED.
487a6e06
KG
3822 (do_if): Likewise for `keyword'.
3823 (do_elif): Likewise.
3824 (eval_if_expression): Likewise for `buf' and `length'.
3825 (do_xifdef): Likewise for `unused1' and `unused2'.
3826 (do_else): Likewise for `keyword', `buf' and `limit'.
3827 (do_endif): Likewise.
3828 (parse_name): Add missing argument `pfile' in call to cpp_pedwarn.
3829 (cpp_handle_options): Remove superfluous NULL argument in call to
3830 cpp_fatal.
3831 (cpp_handle_options): Likewise.
3832 (do_assert): Mark parameter `keyword', `buf' and `limit' with
3833 ATTRIBUTE_UNUSED.
3834 (do_unassert): Likewise.
3835 (cpp_print_file_and_line): Add missing argument `pfile' in call to
3836 cpp_file_line_for_message.
3837 (v_cpp_error): New function.
3838 (cpp_error): Use it. Also accept variable arguments.
3839 (v_cpp_warning): New function.
3840 (cpp_warning): Use it. Also accept variable arguments.
3841 (cpp_pedwarn): Accept variable arguments.
3842 (v_cpp_error_with_line): New function
3843 (cpp_error_with_line): Use it. Accept variable arguments.
3844 (v_cpp_warning_with_line): New function.
3845 (cpp_warning_with_line): Use it. Accept variable arguments. Hide
3846 definition.
3847 (cpp_pedwarn_with_line): Accept variable arguments.
3848 (cpp_pedwarn_with_file_and_line): Likewise.
3849 (cpp_error_from_errno): Constify parameter `name'. Add missing
3850 argument `pfile' in call to cpp_file_line_for_message.
3851 (cpp_perror_with_name): Constify parameter `name'.
3852
3853 * cpplib.h: Define PARAMS() in terms of PROTO().
3854 (fatal): Remove redundant prototype.
3855 (cpp_error, cpp_warning, cpp_pedwarn, cpp_error_with_line,
3856 cpp_pedwarn_with_line, cpp_pedwarn_with_file_and_line,
9b91d8f4 3857 cpp_error_from_errno, cpp_perror_with_name, cpp_pfatal_with_name,
487a6e06
KG
3858 cpp_fatal, cpp_message, cpp_pfatal_with_name,
3859 cpp_file_line_for_message, cpp_print_containing_files): Add
3860 arguments to prototypes.
3861 (scan_decls, cpp_finish): Add prototypes.
3862
3863 * cppmain.c: Include gansidecl.h.
3864 (main): Remove unused variable `i'.
9b91d8f4 3865
487a6e06
KG
3866 * dbxout.c: Include toplev.h.
3867
3868 * demangle.h (do_tlink, collect_execute, collect_exit,
3869 collect_wait, dump_file, file_exists): Add prototype.
3870
3871 * dwarf2out.c (dwarf_type_encoding_name, decl_start_label): Hide
3872 prototype and definition.
3873 (gen_unspecified_parameters_die): Don't assign results of call to
3874 function new_die() to unused variable `parm_die'.
3875 (dwarf2out_line): Mark parameter `filename' with ATTRIBUTE_UNUSED.
3876 (dwarf2out_define): Likewise for `lineno' and `buffer'.
3877
3878 * dwarfout.c (output_unsigned_leb128, output_signed_leb128): Hide
3879 prototype and definition.
3880 (output_die): Add prototype arguments to function pointer arg.
3881 (output_unspecified_parameters_die): Mark parameter `arg' with
3882 ATTRIBUTE_UNUSED.
3883
3884 * except.c (output_exception_table_entry): Remove unused variable
3885 `eh_entry'.
3886
3887 * except.h (expand_fixup_region_start, expand_fixup_region_end):
3888 Add prototypes.
3889
3890 * expr.c (do_jump_by_parts_equality_rtx): Remove prototype.
3891
3892 * expr.h (do_jump_by_parts_equality_rtx): Add prototype.
3893
3894 * fix-header.c: Include stdarg.h/varargs.h, move gansidecl.h
3895 before cpplib.h, include cpphash.h, remove redundant prototype of
3896 cpp_fatal, don't define `const', add a prototype for `fatal'.
3897 (cpp_file_line_for_message): Add missing arguments `pfile'.
3898 (v_cpp_message): New function.
3899 (cpp_message): Use it.
3900 (v_fatal): New function.
3901 (fatal, cpp_fatal): Use it.
3902 (cpp_pfatal_with_name): Constify parameter `name'.
3903
3904 * flow.c (free_regset_vector): Remove redundant prototype.
3905
3906 * function.c (round_down): Wrap prototype and definition with
3907 macro ARGS_GROW_DOWNWARD.
3908 (record_insns): Wrap prototype and definition with
3909 defined (HAVE_prologue) || defined (HAVE_epilogue).
3910
3911 * gansidecl.h (ATTRIBUTE_PRINTF_4, ATTRIBUTE_PRINTF_5): New macros.
3912
3913 * gen-protos.c: Include gansidecl.h.
3914 (hashf): Don't make it static, constify parameter `name'.
3915
3916 * genattrtab.c (check_attr_test): Change XEXP() to XSTR() to match
3917 specifier %s in calls to function `fatal'.
3918
3919 * haifa-sched.c: Include toplev.h.
3920 (find_rgns): Remove unused variable `j'.
3921
3922 * integrate.c (note_modified_parmregs): Mark parameter `x' with
3923 ATTRIBUTE_UNUSED.
3924 (mark_stores): Likewise.
3925
3926 * jump.c (mark_modified_reg): Likewise.
3927
3928 * output.h (insn_current_reference_address): Add prototype.
3929 (eh_frame_section): Likewise.
3930
3931 * print-rtl.c: Include bitmap.h.
3932
3933 * reload1.c (reload): Wrap variables `note' and `next' in macro
3934 PRESERVE_DEATH_INFO_REGNO_P.
3935 (forget_old_reloads_1): Mark parameter `ignored' with
3936 ATTRIBUTE_UNUSED.
3937 (choose_reload_regs): Remove unused variable `in'.
3938 (reload_cse_invalidate_mem): Mark parameter `ignore' with
3939 ATTRIBUTE_UNUSED.
3940 (reload_cse_check_clobber): Likewise.
3941
3942 * rtl.h (expand_null_return, reg_classes_intersect_p): Add prototype.
3943 (mark_elimination): Fix typo in prototype.
3944
3945 * scan-decls.c: Include gansidecl.h.
3946
3947 * tree.h (using_eh_for_cleanups, supports_one_only): Add prototype.
9b91d8f4 3948
c7fdfd49
JL
3949Mon May 18 22:37:33 1998 Jeffrey A Law (law@cygnus.com)
3950
3951 * function.c (identify_blocks): Fix thinko when setting the
3952 block number for NOTE_INSN_BLOCK_END.
3953
53f2d033
NC
3954Mon May 18 15:30:42 1998 Nick Clifton <nickc@cygnus.com>
3955
f122eb7a 3956 * config/v850/lib1funcs.asm: Add .text pseudo op to start of
9b91d8f4 3957 ___udivsi3.
f122eb7a
NC
3958
3959 * config/v850/lib1funcs.asm: Fix .size pseudo ops to use three
9b91d8f4 3960 underscores for the prefixes to the names of the maths functions.
f122eb7a 3961
53f2d033
NC
3962 * dbxout.c (dbxout_parms): Revert to using DECL_ARG_TYPE. Add
3963 comment explaining why.
3964
ead17059
RH
3965Mon May 18 13:20:23 1998 Richard Henderson <rth@cygnus.com>
3966
3967 * tree.h (TYPE_SIZE_UNIT): New.
3968 (struct tree_type): Add size_unit member.
3969 * stor-layout.c (layout_type): Initialize it.
3970 * expr.c (get_inner_reference) [ARRAY_REF]: Use it.
3971 * tree.c (size_in_bytes, int_size_in_bytes): Likewise.
3972
069b95ce
RE
3973Mon May 18 12:07:37 1998 Richard Earnshaw (rearnsha@arm.com)
3974
3975 * stor-layout.c (layout_record): Fix off-by-one error when checking
3976 length of the TYPE_BINFO vector.
3977
972a4adb
NC
3978Mon May 18 10:59:23 1998 Nick Clifton <nickc@cygnus.com>
3979
3980 * dbxout.c (dbxout_parms): Use TREE_ARG to compute the type of a
3981 function parameter passed in memory.
3982
76ead72b
RL
3983Mon May 18 09:02:09 1998 Robert Lipe <robertl@dgii.com>
3984
3985 * dwarfout.h, dwarf2out.h, dbxout.h, sdbout.h: New files.
3986 Prototypes for externally used functions in respective C files.
3987 * dwarfout.c, dbxout.c, dwarf2out.c, sdbout.c, toplev,c,
3988 final.c: Include above files.
3989 * Makefile.in (toplev.o): Add dependency for above four headers.
3990 (final.o): Likewise.
3991 (dwarfout.o, dbxout.o, dwarf2out.o, sdbout.o): Depend on four
3992 respective header files.
3993
b0ccd8de
JL
3994Mon May 18 01:23:33 1998 Jeffrey A Law (law@cygnus.com)
3995
7e717196
JL
3996 * Makefile.in (TARGET_TOOLPREFIX): No longer define.
3997 (AR_FOR_TARGET, RANLIB_FOR_TARGET): Define to use versions in
3998 the build tree if they exist.
3999 (AR, AR_FLAGS, OLDAR, OLDAR_FLAGS, RANLIB, RANLIB_TEST): Update
4000 appropriately.
4001 (objdir): Let configure substitute value.
4002 (FLOAT_H): Let configure select a pre-built version from the
4003 config subdir.
4004 * build-make (INSTALL_TARGET, ALL): Disable, no longer needed.
4005 * configure.in: Substitute for objdir.
4006
88111b26
JL
4007 * Makefile.in (build_canonical, host_canonical): Let configure
4008 substitute values for these variables.
4009 * configure.in: Substitute for build_canonical, host_canonical
4010 and target_subdir in generated Makefile.
4011
d8af60bf
JL
4012 * output.h (find_basic_blocks): Declare.
4013 (free_basic_block_vars, set_block_num, life_analysis): Likewise.
4014
b0ccd8de
JL
4015 * Makefile.in (BISON): Use bison from the build tree if it exists.
4016 (FLEX): Similarly.
4017
88117d44
NC
4018Mon May 18 00:08:19 1998 Nick Clifton <nickc@cygnus.com>
4019
4020 * gcc.c (SWITCH_CURTAILS_COMPILATION): Definition.
4021 (DEFAULT_SWITCH_CURTAILS_COMPILATION): True for options -S and -c.
4022 (process_command): If HAVE_EXECUTABLE_SUFFIX is defined then scan
4023 command line arguments to see if an executable is not being
4024 created, and if so - do not append the suffix.
4025
4026 * tm.texi (SWITCH_CURTAILS_COMPILATION): Add description of new
4027 driver macro.
4028
e5e8a8bf
JW
4029Sun May 17 23:59:45 1998 John Wehle (john@feith.com)
4030
4031 * i386.h (ALIGN_DFmode): Delete.
4032 (CONSTANT_ALIGNMENT): Define.
4033 * varasm.c (force_const_mem): Use it.
4034
b771b6b4
RH
4035Sun May 17 19:31:05 1998 Richard Henderson <rth@cygnus.com>
4036
4037 * alpha.c (alpha_emit_conditional_branch): Clear cmp_code after
4038 using it with swap_condition, not before.
4039
0211b6ab
JW
4040Sun May 17 13:44:32 1998 Jim Wilson <wilson@cygnus.com>
4041
4042 * alias.c (mode_alias_check): Delete.
4043 (true_dependence, anti_dependence, output_dependence): Revert April 21
4044 change.
4045
c5991f68
KW
4046Sun May 17 08:45:21 1998 Krister Walfridsson <cato@df.lth.se>
4047
3fe4d12a 4048 * toplev.c (output_lang_identify): Enable prototype and definition.
c5991f68 4049
18f315a4
JL
4050Sun May 17 01:12:27 PDT 1998 Jeff Law (law@cygnus.com)
4051
4052 * version.c: Bump for snapshot.
4053
2a831d01
RH
4054Sat May 16 23:20:32 1998 Richard Henderson <rth@cygnus.com>
4055
4056 * alpha/osf.h (HAVE_STAMP_H): Define.
4057 * alpha.c: Use it.
4058 * alpha/netbsd.h, alpha/netbsd-elf.h: New files.
4059 * configure.in (alpha*-*-netbsd*): New.
4060 Based on patches from Paul H. Anderson <pha@pdq.com>.
4061
4062 * configure.in (alpha*-*-linux-*): Kill xm_defines.
4063 (alpha*-*-linux-gnulibc1*) [fixincludes]: Define.
4064 * alpha/xm-linux.h: Remove file.
4065
620422fd
DE
4066Sat May 16 18:32:45 1998 Doug Evans <devans@canuck.cygnus.com>
4067
4068 * dbxout.c (dbxout_parms): If mode of type of parameter living
4069 in memory doesn't match mode of DECL_RTL, make big endian correction.
4070
d2f2cb19
JW
4071Fri May 15 21:40:06 1998 John Wehle (john@feith.com)
4072
4073 * i386.md (movdi-1, movdi): Rewrite based on SI move patterns.
4074
bbc0e641
JM
4075Fri May 15 18:55:22 1998 Jason Merrill <jason@yorick.cygnus.com>
4076
4077 * tree.h (BINFO_SIZE, TYPE_BINFO_SIZE): New macros.
4078 * stor-layout.c (layout_record): Set it.
4079
4080Fri May 15 18:49:30 1998 Mark Mitchell <mmitchell@usa.net>
4081
4082 * toplev.c (rest_of_compilation): Don't defer nested functions.
4083
92834d7d
BM
4084Fri May 15 17:42:52 1998 Bob Manson <manson@charmed.cygnus.com>
4085
4086 * config/rs6000/rs6000.c (rs6000_stack_info): Align the stack bottom
4087 to an 8-byte boundary if info_ptr->fpmem_p.
4088
829002bb
BM
4089Fri May 15 17:36:11 1998 Bill Moyer <ttk@cygnus.com>
4090
4091 * loop.c (basic_induction_var): Added test preventing
4092 CCmode parameter passed to convert_modes().
4093
b24f65cd
APB
4094Fri May 15 17:26:18 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
4095
4096 * expr.c (expand_expr, case EXPR_WITH_FILE_LOCATION): Save/restore
4097 input_filename and lineno around expand_expr call. Set them to values
4098 in WFL before expand_expr call.
4099
b09293cc
BK
4100Fri May 15 12:44:57 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
4101
4102 * stor-layout.c (set_sizetype): Set TYPE_NAME on bitsizetype.
4103
f628873f
MM
4104Fri May 15 07:20:03 1998 Mark Mitchell <mmitchell@usa.net>
4105
4106 * fold-const.c (constant_boolean_node): New function.
4107 (fold): Use it.
4108
61fb6bac
R
4109Fri May 15 11:21:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4110
4111 * sh.c (gen_shl_and): Don't sign extend constant for kind two.
4112 Abort if trying to split kind 3 or 4 outside of combine.
4113
8f9661dd
JL
4114Fri May 15 01:47:37 1998 Jeffrey A Law (law@cygnus.com)
4115
4116 * mips.c (print_operand, case 'x'): Use HOST_WIDE_INT_PRINT_HEX.
4117
b22284e1
MK
4118Fri May 15 01:42:45 1998 Mumit Khan <khan@xraylith.wisc.edu>
4119
4120 * objc/Make-lang.in (OBJC_O): Add missing exeext.
4121 (libobjc.a, runtime-info.h): Likewise.
4122
8a022443
JW
4123Fri May 15 01:29:39 1998 John Wehle (john@feith.com)
4124
4125 * i386.h (DATA_ALIGNMENT): Define.
4126
aa6498c2
R
4127Fri May 15 05:35:37 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4128
4129 * reload1.c (delete_output_reload): Ignore single USE that
4130 was emitted for the pseudo use of this INSN.
4131 If the no reference to REG between OUTPUT_RELOAD_INSN and INSN
4132 remains, we can always delete OUTPUT_RELOAD_INSN.
4133
41372177
JW
4134Thu May 14 18:38:50 1998 Jim Wilson <wilson@cygnus.com>
4135
4136 * reload.c (find_reloads): Don't penalize SCRATCH output reload.
4137
ddc5654a
JL
4138Thu May 14 15:10:30 1998 Jeffrey A Law (law@cygnus.com)
4139
4140 * Makefile.in (expr.o): Remove dependency on deleted modemap.def file.
4141
9a0d1e1b
AM
4142Thu May 14 16:30:47 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
4143
4144 * eh-common.h: New file for basic EH data structures.
4145 * except.h: Various prototypes and structures for NEW_EH_MODEL
4146 * function.h (struct function): Add a struct eh_stack for the catch
4147 clause stack.
9b91d8f4 4148 * except.c (gen_exception_label): New function to generate an
9a0d1e1b
AM
4149 exception label.
4150 (push_eh_entry): Use gen_exception_label() and init 'label_used' field.
4151 (push_entry): New function to push an existing entry onto a stack.
9b91d8f4 4152 (receive_exception_label): New function to emit the code required
9a0d1e1b
AM
4153 at the start of all catch blocks.
4154 (struct func_eh_entry): New structure for maintaining handlers
4155 associated with EH regions.
4156 (new_eh_region_entry): New function to register an EH region.
4157 (add_new_handler): New function to register a handler with a region.
4158 (get_new_handler): Creates anew handler entry for registering.
4159 (find_func_region): New function to convert a NOTE eh region number
4160 to an Eh region index.
4161 (get_first_handler): New function to get the first handler in a region.
4162 (clear_function_eh_region): New function to release memory.
4163 (duplicate_handlers): New function to duplicate a list of handlers.
4164 (expand_eh_region_end): Create a new region entry node as well.
4165 (expand_leftover_cleanups): Call receive_exception_label() and
4166 register the cleanup as a handler to the current region.
4167 (expand_start_catch): New function to start a catch clause.
4168 (expand_end_catch): New function to end a catch clause.
4169 (expand_start_all_catch): restructure to not do the equivilent of
4170 what expand_start_catch() does now. Push the exception region being
4171 handled onto the catch stack.
4172 (output_exception_table_entry): Issue an entry for each handler
4173 associated with a region.
4174 (set_exception_lang_code): New function for setting the language code.
4175 (set_exception_version_code): New function to set the version number.
4176 (output_exception_table): Output version and language codes.
4177 (find_exception_handler_labels): Find handler labels using new scheme.
4178 (is_exception_handler_label): New function, returns 1 if label is
4179 present as a handler in some exception region.
4180 (check_exception_handler_labels): Use the new scheme.
4181 (init_eh_for_function): Initialize the catch stack.
4182 (save_eh_status): Save the catch stack.
4183 (restore_eh_status): Restore the catch stack.
4184 (scan_region): Don't remove unreferenced handler label. Flow does it.
4185 (get_reg_for_handler): New function to get the eh_context pointer
4186 passed by __throw.
4187 (expand_builtin_eh_stub): Changes required for NEW_EH_MODEL only.
4188 * final.c (final_scan_insn): With NEW_EH_MODEL, add EH table
4189 entry when processing END region rather that START region.
4190 * flow.c (find_basic_blocks_1): Find all potential handler regions
4191 now that we don't automatically know what the labels might be.
4192 Let scan_region() remove unreferenced EH BEGIN/END labels.
4193 * integrate.c (get_label_from_map): Put inlined labels onto the
4194 permanent obstack since we dont know which ones might be exception
4195 labels.
4196 (save_for_inline_copying): Make new copies of all the handlers.
4197 (expand_inline_function): Make new copies of all the handlers.
4198 * libgcc2.c: Remove local struct decls, and include eh-common.h.
9b91d8f4 4199 (find_exception_handler): With NEW_EH_MODEL the first matching
9a0d1e1b
AM
4200 region we find is the right one. Add eh_info as a new parameter.
4201 (__throw): Pass eh_info to find_exception_handler. Set handler
4202 and pass use different regs under NEW_EH_MODEL.
4203
2129b081
JW
4204Thu May 14 12:58:21 1998 Jim Wilson <wilson@cygnus.com>
4205
4206 * i960.h (hard_regno_mode_ok): Changed to function from array of
4207 unsigned.
4208 (HARD_REGNO_MODE_OK): Call function instead of testing bit.
4209 * i960.c (hard_regno_mode_ok): Changed to function from array of
4210 unsigned.
4211
029b38ff
R
4212Thu May 14 08:41:46 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4213
4214 * reload.c (remove_replacements): New function.
4215 * reload.h (remove_replacements): Declare.
4216 * reload1.c (choose_reload_regs): Disable some reloads that
4217 belong to inherited reloads.
4218
efdb3590
R
4219Thu May 14 02:17:17 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4220
9dd07f87
R
4221 * loop.c (scan_loop): Don't call move_moveables for optimize_size.
4222
efdb3590
R
4223 * reload1.c (merge_assigned_reloads): When merging, reset
4224 reload_spill_index for the eliminated reload.
4225
5d27de7d
JL
4226Wed May 13 17:51:13 1998 Jeffrey A Law (law@cygnus.com)
4227
4228 * haifa-sched.c (schedule_insns): Fix merge goof.
4229
92d4501f
JW
42301998-05-13 Jim Wilson <wilson@cygnus.com>
4231
4232 * varasm.c (make_decl_rtl): Revert April 1 change.
4233 * alpha/alpha.h, alpha/win-nt.h, arm/arm.h, i386/unix.h, i960/i960.h,
4234 m68k/linux.h, pa/pa.h, sparc/sparc.h, vax/vax.h (ASM_OUTPUT_MI_THUNK):
4235 Get function name from the SYMBOL_REF in the DECL_RTL, not from
4236 DECL_ASSEMBLER_NAME.
4237 * i386/winnt.c (gen_stdcall_suffix): Comment for questionable use of
4238 DECL_ASSEMBLER_NAME.
4239
d6cc54f6
JW
4240Wed May 13 13:09:19 1998 Jim Wilson <wilson@cygnus.com>
4241
4242 * i386.c (notice_update_cc, output_float_compare): Disable
4243 TARGET_CMOVE support.
4244
6d3352d9 4245Wed May 13 15:28:59 1998 Michael Meissner <meissner@cygnus.com>
0dfa1860
MM
4246 Jeff Law <law@cygnus.com>
4247
ae78d276
MM
4248 * rtlanal.c (find_reg_note): Ignore notes that are not on on
4249 insns of class 'i'.
4250 (find_regno_note): Likewise.
4251
82ce5b75
MM
4252 * Makefile.in (stor-layout.o): Depend on except.h
4253 (varasm.o, function.o): Likewise.
4254 (expr.o): Depend on except.h, modemap.def and hard-reg-set.h.
4255
0dfa1860
MM
4256 * Makefile.in (HOST_RTL): Add $(HOST_PREFIX)bitmap.o.
4257 (rtl.o, emit-rtl.o): Add dependency on bitmap.h.
4258 ($(HOST_PREFIX_1)rtl.o): Likewise.
4259 ($(HOST_PREFIX_1)bitmap.o): New host object.
4260 * emit-rtl.c (toplevel): Include bitmap.h.
4261 (gen_rtx): Handle 't' and 'b' nodes.
4262 * print-rtl.c (print_rtx): Handle printing NOTE_INSN_LIVE notes.
4263 Print block number for block begin/end notes. Print 't' type
4264 nodes as a pointer. Know that the 3rd argument of live range
4265 start/stop notes is really a range_info rtx. If type is 'b', print
4266 out argument as a bitmap.
4267 * rtl.c: Include bitmap.c.
4268 (copy_rtx): Copy tree nodes as is. Copy bitmaps if type is 'b'.
4269 (note_insn_name): Add NOTE_INSN_RANGE_{START,END}, NOTE_INSN_LIVE.
4270 * rtl.def (RANGE_LIVE): New node to hold live information while we
4271 recalculate the basic blocks.
4272 (RANGE_REG, RANGE_INFO): New rtl types for live range splitting.
9b91d8f4 4273 (RANGE_VAR): New node, to hold information saved in symbol node for New
0dfa1860
MM
4274 communicating live range information to the debug output functions.
4275 * rtl.h (rtunion_def): Add rttree and rtbit fields.
4276 (XBITMAP, XTREE): New accessor macros.
4277 (NOTE_LIVE_INFO): Overload NOTE_SOURCE_FILE for NOTE_INSN_LIVE notes.
4278 (NOTE_RANGE_INFO): Similarly for NOTE_INSN_RANGE_{START,END} notes.
4279 (NOTE_BLOCK_LIVE_RANGE_BLOCK): Define.
4280 (NOTE_INSN_RANGE_START, NOTE_INSN_RANGE_END, NOTE_INSN_LIVE): New notes.
4281 (RANGE_LIVE_{BITMAP,ORIG_BLOCK}): New accessor macros.
4282 (RANGE_REG_{SYMBOL,BLOCK}_NODE, RANGE_VAR_*): New accessor macros.
4283 (RANGE_INFO_*): Likewise.
4284 * sched.c (sched_analyze): Keep live range start/stop notes.
4285 (unlink_other_notes): Likewise.
4286 * haifa-sched.c (sched_analyze): Keep live range start/stop notes.
4287 (unlink_other_notes): Likewise.
4288 * tree.h (BLOCK_LIVE_RANGE_{START,END,VAR_FLAG}): New accessor macros.
4289 (BLOCK_LIVE_RANGE_FLAG): Likewise.
4290 (DECL_LIVE_RANGE_RTL): Likewise.
4291 (struct tree_block): Add live_range_flag, live_range_var_flag,
4292 live_range_start and live_range_end.
4293 (struct tree_decl): Add live_range_rtl field.
4294 * gengenrtl.c (type_from_format): Handle 'b' and 't'.
4295 (accessor_from_format): Likewise.
6d3352d9
MM
4296
4297 * haifa-sched.c (schedule_block): Make verbose output line up.
47312d84 4298 Also add a blank line in printing the individual ready lists.
6d3352d9 4299
63e76c87
KG
4300Wed May 13 15:43:44 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4301
4302 * Makefile.in (c-lang.o): Depend on c-tree.h, c-lex.h and toplev.h.
4303 (c-lex.o): Depend on output.h.
4304 (c-common.o): Likewise.
4305 (stmt.o): Likewise.
4306 (calls.o): Likewise.
4307 (integrate.o): Depend on toplev.h.
4308 (regclass.o): Depend on output.h.
4309 (final.o): Depend on reload.h.
4310
4311 * c-common.c: Include output.h.
4312 (check_format_info): Remove unused variable `integral_format'.
4313
4314 * c-decl.c (print_lang_decl): Mark parameters `file', `node' and
4315 `indent' with ATTRIBUTE_UNUSED.
4316 (print_lang_type): Likewise.
4317 (maybe_build_cleanup): Likewise for parameter `decl'.
4318 (copy_lang_decl): Likewise for parameter `node'.
4319
4320 * c-lang.c: Include c-tree.h, c-lex.h and toplev.h.
4321 (lang_print_xnode): Mark parameters `file', `node' and `indent'
4322 with ATTRIBUTE_UNUSED.
4323 (lookup_interface): Likewise for parameter `arg'.
4324 (is_class_name): Likewise.
4325 (maybe_objc_check_decl): Likewise for parameter `decl'.
4326 (maybe_objc_comptypes): Likewise for parameters `lhs', `rhs' and
4327 `reflexive'.
4328 (maybe_objc_method_name): Likewise for parameter `decl'.
4329 (build_objc_string): Likewise for parameters `len' and `str'.
4330
4331 * c-lex.c: Include output.h.
4332
4333 * c-lex.h (position_after_white_space): Correct typo in prototype.
4334
4335 * c-tree.h (finish_file, c_expand_start_cond, c_expand_start_else,
4336 c_expand_end_cond, init_iterators): Add prototypes.
4337
4338 * caller-save.c (set_reg_live): Mark parameters `reg' and `setter'
4339 with ATTRIBUTE_UNUSED.
4340
4341 * calls.c: Include output.h.
4342
4343 * cccp.c (pipe_closed): Mark parameter `signo' with
4344 ATTRIBUTE_UNUSED.
4345
4346 * combine.c: Move inclusion of expr.h to after insn-config.h.
4347
4348 * iris6.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Don't define
4349 as empty, rather define as ((void)0).
4350
4351 * sparc.c (sparc_check_64): Add braces around ambiguous `else'.
4352 Add parentheses around assignment used as truth value.
4353
4354 * cplus-dem.c (squangle_mop_up): Change return type to void.
4355 (internal_cplus_demangle): Remove unused parameter `options'.
4356 All callers changed.
4357 (cplus_demangle_opname): Remove function wide variable `int i' and
4358 replace with `size_t i' at each location where it is used.
4359 (cplus_demangle_opname): change type of `i' from int to size_t.
4360
4361 * cppexp.c (right_shift): Mark parameter `pfile' with
4362 ATTRIBUTE_UNUSED.
4363
4364 * cpphash.c (cpp_lookup): Likewise.
4365 (cpp_hash_cleanup): Likewise.
4366
4367 * cpplib.c (parse_name): Add a prototype and make it static.
4368 (null_underflow): Mark parameter `pfile' with ATTRIBUTE_UNUSED.
4369 (null_cleanup): Likewise for parameters `pbuf' and `pfile'.
4370 (macro_cleanup): Likewise for parameter `pfile'.
4371 (file_cleanup): Likewise.
4372
4373 * cpplib.h (cpp_reader_init, cpp_options_init, cpp_start_read,
4374 cpp_read_check_assertion, skip_rest_of_line): Add prototypes.
4375
4376 * crtstuff.c (force_to_data, __CTOR_LIST__, force_to_data,
4377 __DTOR_END__, __FRAME_END__): Mark with ATTRIBUTE_UNUSED.
4378
4379 * cse.c (cse_check_loop_start): Mark parameter `set' with
4380 ATTRIBUTE_UNUSED.
4381
4382 * dbxout.c (flag_minimal_debug, have_used_extensions,
4383 source_label_number): Move inside macro wrapper check against
4384 defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO).
4385
4386 * dwarf2out.c (gen_entry_point_die): Hide prototype and definition.
4387
4388 * except.h (doing_eh): Provide prototype.
4389
4390 * expr.c: Move inclusion of expr.h to after insn-config.h.
4391
4392 * final.c: Include reload.h.
4393 (shorten_branches): Cast the first argument of bzero to char *.
4394
4395 * fix-header.c (cpp_print_containing_files): Mark parameter
4396 `pfile' with ATTRIBUTE_UNUSED.
4397 (cpp_fatal): Likewise.
4398
4399 * flow.c (find_basic_blocks_1): Cast the first argument of bzero
4400 to char *.
4401
4402 * genattrtab.c (make_length_attrs): Change the type of variable
4403 `i' from int to size_t.
4404 (zero_fn): Mark parameter `exp' with ATTRIBUTE_UNUSED.
4405 (one_fn): Likewise.
9b91d8f4 4406
63e76c87
KG
4407 * genextract.c (main): When generating insn-extract.c, mark
4408 variable `junk' with ATTRIBUTE_UNUSED.
4409
4410 * gengenrtl.c (gencode): When generating genrtl.c, cast the first
4411 argument of bzero to char*.
4412
4413 * integrate.c: Include toplev.h.
4414
4415 * libgcc2.c: Wrap `struct exception_table' and
4416 `find_exception_handler' in macro DWARF2_UNWIND_INFO.
4417
4418 * objc/Make-lang.in (objc-act.o): Depend on toplev.h.
9b91d8f4 4419
63e76c87
KG
4420 * objc/objc-act.c: Include toplev.h.
4421 (lang_print_xnode): Mark parameters `file', `node' and `indent'
4422 with ATTRIBUTE_UNUSED.
4423 (finish_protocol): Likewise for parameter `protocol'.
4424
4425 * output.h (declare_weak): Add prototype.
4426 (decode_reg_name): Don't wrap with TREE_CODE macro.
4427 (assemble_alias): Add prototype.
4428
4429 * regclass.c: Include output.h.
4430
4431 * reload.h (reloads_conflict): Add prototype.
4432
4433 * rtl.h (print_rtl_single, mark_elimiation, reg_class_subset_p,
4434 output_func_start_profiler): Add prototypes.
4435
4436 * rtlanal.c (reg_set_p_1): Mark parameters `x' and `pat' with
4437 ATTRIBUTE_UNUSED.
4438
4439 * scan-decls.c: Include scan.h.
4440
4441 * scan.h (recognized_function, recognized_extern): Add prototypes.
4442
4443 * stmt.c: Include output.h.
4444
4445 * toplev.c (error_for_asm, warning_for_asm): Remove prototypes.
4446 (output_lang_identify): Hide prototype and definition.
4447 (float_signal): Mark parameter `signo' with ATTRIBUTE_UNUSED.
4448 (pipe_closed): Likewise.
4449
4450 * toplev.h (count_error, strip_off_ending, error_for_asm,
4451 warning_for_asm): Add prototypes.
4452
a494747c 4453Wed May 13 12:54:19 1998 Michael Meissner <meissner@cygnus.com>
a494747c 4454
32e705c4
MM
4455 * toplev.c (rest_of_compilation): "Charge" final for any time
4456 doing various cleanup operations after finishing compilation
4457 of a function.
4458
9b91d8f4 4459 * flow.c (dump_flow_info): Also print number of sets and
6fc4610b
MM
4460 whether or not the pseudo is a user variable.
4461
a494747c
MM
4462 * flow.c (reg_n_max): New global variable.
4463 * regclass.c (allocate_reg_info): Keep reg_n_max up to date.
4464 Delete regno_max variable.
4465 * regs.h (REG_N_CHECK): Define.
4466 (REG_N_REFS, REG_N_SETS, REG_N_DEATHS): Use REG_N_CHECK.
4467 (REG_N_CHANGES_SIZE, REG_N_CALLS_CROSSED, REG_LIVE_LENGTH): Likewise.
4468 (REGNO_FIRST_UID, REGNO_LAST_UID, REGNO_LAST_NOTE_UID): Likewise.
4469
21622caf
JL
4470Wed May 13 12:54:19 1998 Martin von Loewis <martin@mira.isdn.cs.tu-berlin.de>
4471
4472 * acconfig.h (ENABLE_CHECKING): Undefine.
4473 * configure.in (--enable-checking): New option.
4474
d668e863
R
4475Wed May 13 08:52:08 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4476
4477 * reload1.c (merge_assigned_reloads): Can merge
4478 RELOAD_FOR_INPUT_ADDRESS and RELOAD_FOR_OTHER_ADDRESS even
4479 if RELOAD_FOR_INPUT with the same reload_reg_rtx is present.
4480
b706d7f2
JW
4481Tue May 12 20:05:57 1998 Jim Wilson <wilson@cygnus.com>
4482
4483 * collect2.c (main): Ignore do_collecting when COLLECT_EXPORT_LIST.
4484
4117a96b
R
4485Wed May 13 03:23:45 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4486
4487 * reload1.c (gen_reload): Create REG_EQUIV notes.
4488
4d3eb414
R
4489Tue May 12 22:21:07 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4490
4491 * reload1.c (reload): Fix check for USEs to use code of pattern.
4492 (choose_reload_regs): Remove dead variable use_insn.
4493
b10c8966
JL
4494Tue May 12 14:04:49 1998 Jeffrey A Law (law@cygnus.com)
4495
9b91d8f4 4496 * pa.h (DBX_CONTIN_LENGTH): Reduce to 3000 bytes.
b10c8966 4497
cbb13457
MM
4498Tue May 12 15:16:02 1998 Michael Meissner <meissner@cygnus.com>
4499
4500 * haifa-sched.c (HAIFA_INLINE): Define to be __inline unless
4501 already defined.
4502 (find_insn_{,mem_}list): Use HAIFA_INLINE, not __inline.
4503 (insn_{unit,issue_delay}): Ditto.
4504 (blockage_range): Ditto.
4505 (actual_hazard{,_this_instance}): Ditto.
4506 (schedule_unit): Ditto.
4507 (potential_hazard): Ditto.
4508 (insn_cost): Ditto.
4509 (swap_sort): Ditto.
4510 (queue_insn): Ditto.
4511 (birthing_insn_p): Ditto.
4512 (adjust_priority): Ditto.
4513 (get_block_head_tail): Ditto.
4514 (init_rgn_data_dependences): Ditto.
4515
1478d88a
KK
4516Tue May 12 10:27:54 1998 Klaus Kaempf <kkaempf@progis.de>
4517
4518 * alpha/vms.h (COMMON_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON): Define.
4519
a688e0b7
GK
4520Tue May 12 11:44:14 1998 Gavin Koch <gavin@cygnus.com>
4521
4522 * config/mips/mips.h (ASM_OUTPUT_ALIGN): Remove trailing semi-colon.
4523
ec350bdd
GK
4524Tue May 12 11:38:31 1998 Gavin Koch <gavin@cygnus.com>
4525
4526 * config/mips/mips.md (dslot): Move after definition of "cpu"
4527 attribute. Handle r3900 case.
4528
d4ba0ead
KG
4529Tue May 12 10:21:36 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4530
4531 * system.h: Define the STRINGIFY macro here.
4532 * protoize.c: Not here.
4533 * gengenrtl.c (DEF_RTL_EXPR): Use the STRINGIFY macro.
4534
8a198bd2
JW
4535Tue May 12 00:47:33 1998 John Wehle (john@feith.com)
4536
9b91d8f4 4537 * varasm.c (assemble_variable): Compute the alignment of the data
8a198bd2
JW
4538 earlier so that both initialized and uninitialized variables are
4539 effected by DATA_ALIGNMENT.
4540 * tm.texi (DATA_ALIGNMENT): Updated appropriately.
4541
eace3df1
JL
4542Mon May 11 19:57:58 1998 Jeffrey A Law (law@cygnus.com)
4543
4544 * mips.c: Prototype static functions.
4545
a9e95099
JW
4546Mon May 11 17:43:03 1998 Jim Wilson <wilson@cygnus.com>
4547
b1a7d591
JW
4548 * regmove.c (fixup_match_2, find_matches, regmove_profitable):
4549 Add explanatory comments.
4550
a9e95099
JW
4551 * sparc.h (SPARC_INCOMING_INT_ARG_FIRST): Support TARGET_FLAT.
4552
0f177d7c
RH
4553Mon May 11 17:24:27 1998 Richard Henderson <rth@cygnus.com>
4554
4555 * sparc.md (ffsdi2): Disable. Simplify the expression as well.
4556
28233641
JW
4557Mon May 11 13:30:44 1998 Jim Wilson <wilson@cygnus.com>
4558
4559 * varasm.c (make_decl_rtl): Disable April 1 change.
4560
e55a5ea6
RH
4561Mon May 11 09:14:41 1998 Richard Henderson <rth@cygnus.com>
4562
4563 * configure.in (alpha-*-linux-gnu): Undo lossage from gcc2 merge.
4564
e83015a9
RH
4565Mon May 11 08:24:18 1998 Richard Henderson <rth@cygnus.com>
4566
4567 * alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Add '`'.
4568 * alpha.c (print_operand): Handle it.
9b91d8f4 4569 * alpha.md (fix_truncdfsi2, fix_truncsfsi2): New patterns and
e83015a9
RH
4570 related define_splits. Also add peepholes for SImode reload
4571 plus sign_extend lossage.
4572
320e7c40
KG
4573Mon May 11 09:33:10 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4574
4575 * genattr.c: Include stdarg.h/varargs.h. Change function
4576 `fatal' to use variable arguments instead of faking it with
4577 integer parameters. Provide a prototype which also
4578 checks the format specifiers using ATTRIBUTE_PRINTF_1.
4579
4580 * genattrtab.c: Likewise.
4581 * gencodes.c: Likewise.
4582 * genconfig.c: Likewise.
4583 * genemit.c: Likewise.
4584 * genextract.c: Likewise.
4585 * genflags.c: Likewise.
4586 * genopinit.c: Likewise.
4587 * genpeep.c: Likewise.
4588 * genrecog.c: Likewise.
4589 * genoutput.c: Likewise. Similarly for function `error'.
4590
e9b4fabf
JL
4591Sun May 10 02:27:03 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4592
4593 * acconfig.h (HAVE_VOLATILE): Insert stub for autoconf.
4594 * alocal.m4 (GCC_C_VOLATILE): New autoconf test.
4595 * configure.in: Use GCC_C_VOLATILE.
4596 * system.h (volatile): Define as empty if no volatile support is
4597 available.
4598
4599Sun May 10 01:21:43 1998 Jeffrey A Law (law@cygnus.com)
4600
4601 * genemit.c (output_add_clobbers): Removed unused variable 'i' from
4602 generated fucntion.
4603
f283421d
RH
4604Sat May 9 02:02:15 1998 Richard Henderson <rth@cygnus.com>
4605
4606 * loop.c (get_condition): Don't combine when either compare is MODE_CC.
4607 * alpha.c (alpha_emit_conditional_branch): New function. Taken from
4608 the body of beq; additionally set the mode of the branch to CCmode for
9b91d8f4 4609 FP compares and not fast_math.
f283421d
RH
4610 (alpha_emit_conditional_move): Always use a compare insn for FP
4611 when not fast_math, as well as setting CCmode on the cmov.
4612 * alpha.md (beq, bne, blt, et al): Call alpha_emit_conditional_branch.
4613
4614 * machmode.h (COMPLEX_MODE_P): New macro.
4615
53c0919d
RH
4616Sat May 9 01:53:23 1998 Richard Henderson <rth@cygnus.com>
4617
4618 * haifa-sched.c (print_exp): Fix typo.
4619
23d297ab
JL
4620Fri May 8 21:48:50 PDT 1998 Jeff Law (law@cygnus.com)
4621
4622 * version.c: Bump for snapshot.
4623
cf879efa
MM
4624Fri May 8 18:23:08 1998 Michael Meissner <meissner@cygnus.com>
4625
4626 * final.c (final_scan_insn): Call fatal_insn instead of abort if
4627 we could not split an insn when required to.
4628
5b8ae21f
MM
4629 * m32r.md ({add,sub}di3): Add define_splits and appropriate low
4630 level insns.
4631 (peepholes): Disable peepholes that call dead_or_set_p.
4632 (movsi): Rewrite to handle addresses better after last change.
4633 Add define_split to split load of addresses in large/medium modes.
4634 (prologue): Call m32r_expand_prologue.
4635 (movsi_{push,pop}): Generators for push/pop.
4636 (movsi): Support PRE_{INC,DEC}, POST_INC.
4637 (mov{di,df}): Rewrite. Always split the insns.
4638 (movsf): Add define_split to get register load in correct mode.
4639 (cmp_ne_small_const_insn): Use 'N' instead of 'S' constraint.
4640 (attributes): Rewrite attributes so that type indicates both the
4641 type and the length of the insn directly.
4642 (all insns): Change to use new type attributes.
4643 (debug): New attribute to convey whether -mdebug was used.
4644 (opt_space): New attribute to convey whether -Os was used.
4645 (function units): Loads are 3 cycles, not 2. Better classify all
4646 insns into short/long.
4647 (load/store/extend insns): Add separate case for load/store
4648 indirect operations without an offset.
4649 (divsi3): Division is a long operation, not short.
4650
4651 * m32r.h (LEGITIMATE_LO_SUM_ADDRESS_P): Do not allow LO_SUM for
4652 modes > 1 word.
4653 (GO_IF_MODE_DEPENDENT_ADDRESS): LO_SUM is now mode dependent.
4654 (CONST_OK_FOR_LETTER_P): Make 'N' handle reverse 8 bit compares.
4655 (EXTRA_CONSTRAINT): Remove 'S' special support. Add 'U' for
4656 operands with PRE_{INC,DEC}, POST_INC.
4657 (FUNCTION_PROFILER): Call abort instead of doing nothing.
4658 (GO_IF_LEGITIMATE_ADDRESS): Allow PRE_{INC,DEC}, POST_INC of
4659 SImode variables.
4660 (gen_split_move_double): Declare.
4661 (EXTRA_CONSTRAINT): Add 'T' for memory reference with no offset.
4662
4663 * m32r.c (gen_split_move_double): Fix typo. Also, don't call
4664 emit_move_insn, build up SET's directly.
4665 (toplevel): Include system.h, not stdio.h.
4666 (move_double_src_operand): Allow any DF or DI mode constant.
4667 (gen_split_move_double): Split moves of DI or DF values into the
4668 appropriate moves, loads, or stores. Don't handle use of auto
4669 inc/dec if using dead index. Do handle overlapping moves, etc.
4670 (m32r_frame_info): Remove prologue_size field.
4671 (m32r_compute_frame_size): Don't calculate prologue size.
4672 (m32r_output_function_prologue): Change to pretty much a NOP.
4673 (m32r_expand_prologue): Expand prologue as a series of INSNs.
4674 (m32r_print_operand): Add support for PRE_{INC,DEC}, POST_INC.
4675 (m32r_print_operand_address): Ditto.
9b91d8f4 4676
d7c2e385
L
4677Fri May 8 14:13:21 1998 H.J. Lu (hjl@gnu.org)
4678
4679 * reload1.c (emit_reload_insns): When performing expensive
4680 optimizations, do not output the last reload insn if OLD is
4681 not the dest of NSN and is in the src and is clobbered by INSN.
4682
560bd19e
KG
4683Fri May 8 09:47:29 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4684
4685 * Makefile.in (genrtl.o): Depend on system.h.
4686 * gengenrtl.c (gencode): When creating genrtl.c, have it
4687 include system.h.
4688
0d33d22e
AS
4689Fri May 8 10:57:33 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4690
4691 * config/m68k/t-linux: Remove extra stuff already included in
4692 config/t-linux.
4693
dea4ae0d
MH
4694Fri May 8 09:53:24 Paul Eggert <eggert@twinsun.com>
4695
4696 * fixinc.wrap: Renamed from fixinc.math. Put wrapper around
4697 curses.h if it contains `typedef char bool;', as suggested by
4698 Manfred Hollstein <manfred@s-direktnet.de>.
4699
4700 * configure.in: Rename fixinc.math to fixinc.wrap.
4701
02e56202
JW
4702Thu May 7 19:26:34 1998 Jim Wilson <wilson@cygnus.com>
4703
bbeb7b65
JW
4704 * gcc.c (read_specs): Handle missing blank line at end of specs file.
4705
02e56202
JW
4706 * i386.md (movsicc, movhicc, movsicc_1, movhicc_1, movsfcc_1,
4707 movdfcc_1): Disable.
4708
e445171e
JW
4709Thu May 7 15:39:14 1998 Jim Wilson <wilson@cygnus.com>
4710
4711 * configure.in (enable_threads): Rename to enable_threads_flag before
4712 main loop. Set enable_threads to enable_threads_flag inside main
4713 loop.
4714
a1b5a7e1
MM
4715Thu May 7 17:38:03 1998 Michael Meissner <meissner@cygnus.com>
4716
4717 * r6000/eabi.asm (__eabi): Restore LR in case __eabi is called
4718 multiple times.
4719
76b4b31e
KG
4720Thu May 7 14:26:05 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4721
4722 * aclocal.m4 (GCC_FUNC_VFPRINTF_DOPRNT): New macro.
9b91d8f4 4723
76b4b31e
KG
4724 * configure.in: Add a call to GCC_FUNC_VFPRINTF_DOPRNT.
4725 (AC_CHECK_HEADERS): Remove unused check for varargs.h,sys/varargs.h.
4726 (AC_CHECK_FUNCS): Remove unused check for vprintf.
9b91d8f4 4727
76b4b31e
KG
4728 * Makefile.in: Add support for linking in vfprintf.c and doprint.c.
4729 (cccp.o): Depend on gansidecl.h.
4730 (cexp.o): Likewise.
4731
4732 * cccp.c: Convert from using PRINTF_ALIST/PRINTF_DCL to VPROTO as
4733 per the rest of gcc source.
4734 * cexp.y: Likewise. Include gansidecl.h and remove all code made
4735 redundant.
4736
4737 * cccp.c: Remove checks for HAVE_VPRINTF and the associated code
4738 used when vfprintf is missing.
4739 * cexp.y: Likewise.
4740 * gcc.c: Likewise.
4741 * genattrtab.c: Likewise.
4742 * mips-tfile.c: Likewise.
4743 * toplev.c: Likewise.
4744
4745 * vfprintf.c: New file.
4746 * doprint.c: New file.
4747
bebc4663
JL
4748Thu May 7 10:18:41 1998 Jeffrey A Law (law@cygnus.com)
4749
4750 * config/linux.h (ASM_COMMENT_START): Remove from here,
4751 * config/linux-aout.h (ASM_COMMENT_START): and here,
4752 * config/i386/linux.h (ASM_COMMENT_START): to here,
4753 * config/i386/linux-aout.h (ASM_COMMENT_START): and here.
4754 * config/i386/linux-oldld.h (ASM_COMMENT_START): Define
4755 here as '#' too.
4756
436bf9fb
AS
4757Thu May 7 10:55:59 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4758
4759 * config/m68k/m68k.md (adddi3, subdi3): Properly negate the DImode
9b91d8f4 4760 constant.
436bf9fb 4761
f103890b
RL
4762Wed May 6 22:32:37 CDT 1998 Robert Lipe <robertl@dgii.com>
4763
4764 * Makefile.in (dwarfout.o) Add toplev.h dependency.
4765 * dwarfout.c, i386.c: Include toplev.h
4766 * toplev.h: (pfatal_with_name) Add prototype.
4767
024b5658
JM
4768Wed May 6 19:02:29 1998 Jason Merrill <jason@yorick.cygnus.com>
4769
4770 * Makefile.in: Fix .SUFFIXES.
4771
410c3875
AM
4772Wed May 6 19:31:32 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
4773
4774 * config/linux.h (ASM_COMMENT_START): Define as "#".
4775 * config/linux-aout.h (ASM_COMMENT_START): Likewise.
4776
7e073314
JW
4777Wed May 6 15:51:39 1998 Jim Wilson <wilson@cygnus.com>
4778
71ebb3b8
JW
4779 * objc/Make-lang.h (objc-parse.o): Add toplev.h dependency.
4780 * objc/objc-parse.y, objc/objc-parse.c: Regenerate.
4781
a0c8e1b2
JW
4782 * toplev.c: Include toplev.h.
4783 * Makefile.in (c-common.o, c-convert.o, c-decl.o, c-iterate.o,
4784 c-lex.o, c-parse.o, c-pragma.o, c-typeck.o, calls.o, convert.o,
4785 dwarf2out.o, except.o, expr.o, final.o, fold-const.o, function.o,
4786 hash.o, profile.o, real.o, reg-stack.o, regclass.o, reload.o,
4787 reload1.o, stmt.o, stor-layout.o, tlink.o, tree.o, varasm.o): Add
4788 toplev.h dependency.
9b91d8f4 4789
1b15c5de
JW
4790 * mips/mips.c (save_restore_insns): Change FRAME_POINTER_REGNUM to
4791 HARD_FRAME_POINTER_REGNUM.
4792
7e073314
JW
4793 * expr.c (target_temp_slot_level): Delete duplicate definition.
4794
d06eab0d
JL
4795Wed May 6 16:46:01 1998 Jeffrey A Law (law@cygnus.com)
4796
df03cab5 4797 * stmt.c (mark_seen_cases): Make it have external linkage again.
0586a4ce
JL
4798 * expr.h (mark_seen_cases): Add declaration, but only when tree.h
4799 has been included.
df03cab5 4800
6b879bcc
JL
4801 * haifa-sched.c (print_value, case SUBREG): Fix typo.
4802
6b28fd63
JL
4803 * i386.c (output_387_binary_op): Add some braces to avoid warnings.
4804 * i386.h (REG_CLASS_CONTENTS): Similarly.
4805
cc132865
JL
4806 * toplev.c (-fsched-max): Delete flag.
4807 (-fsched-interblock-max-blocks,-fsched-interblock-max-insns): Likewise.
4808 * haifa-sched.c: Remove -fsched-max-N, -fsched-interblock-max-blocks-N
4809 and -fsched-interblock-max-insns-N support. Remove INTERBLOCK_DEBUG
4810 conditionals.
4811
4812 * haifa-sched.c (find_rgns): Correctly handle reducible loops with
4813 inner loops which are not reducible.
4814
fd4a1ca5
JL
4815 * loop.c (regs_match_p): Fix typo in prototype.
4816
d06eab0d
JL
4817 * regmove.c (try_auto_increment): Wrap declaration inside an
4818 #ifdef AUTO_INC_DEC.
4819
31bfbf1f
MM
4820Wed May 6 17:07:47 1998 Michael Meissner <meissner@cygnus.com>
4821
4822 * final.c (output_operand_lossage): Call fatal with the operand
4823 lossage message instead of calling abort.
4824
e9a780ec
KG
4825Wed May 6 15:37:27 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4826
4827 * c-common.c: Convert to using ctype macros defined in system.h.
4828 * c-lex.c: Likewise.
4829 * cccp.c: Likewise.
4830 * collect2.c: Likewise.
4831 * rs6000.c: Likewise.
4832 * cpplib.c: Likewise.
4833 * fix-header.c: Likewise.
4834 * gcc.c: Likewise.
4835 * gen-protos.c: Likewise.
4836 * pexecute.c: Likewise.
4837 * protoize.c: Likewise.
4838 * rtl.c: Likewise.
4839 * scan.c: Likewise.
4840 * stmt.c: Likewise.
4841 * tlink.c: Likewise.
9b91d8f4 4842 * toplev.c: Likewise.
e9a780ec 4843
d4c3e60e
GK
4844Wed May 6 14:44:14 1998 Gavin Koch <gavin@cygnus.com>
4845
9b91d8f4 4846 * config/mips/r3900.h (SUBTARGET_ASM_DEBUGGING_SPEC) :
d4c3e60e
GK
4847 Replace -gdwarf-2 with -g0.
4848
90fbb8c9
KG
4849Wed May 6 11:43:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4850
4851 * Makefile.in (mips-tfile.o, mips-tdump.o): Depend on system.h.
4852 * mips-tdump.c: Include system.h, remove redundant headers.
4853 * mips-tfile.c: Likewise. Also, convert all ctype function calls
4854 to calls of the macro versions defined in system.h.
4855
4856 * objc/Make-lang.in (objc-act.o): Depend on system.h.
4857 * objc/objc-act.c: Include system.h, remove redundant headers.
4858
8f81384f
KG
4859Wed May 6 11:21:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4860
4861 * configure.in (AC_CHECK_FUNCS): Add isascii.
4862 (GCC_NEED_DECLARATIONS): Add atof.
4863
4864 * system.h: Provide prototypes for abort, atof, atol and sbrk here.
4865 * rtl.c, rtl.h, toplev.c, tree.h: Not here.
4866
e572c0c6
KG
4867Wed May 6 10:52:49 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4868
4869 * system.h: Wrap time.h and sys/file.h in autoconf checks.
4870 Provide default definitions for O_RDONLY and O_WRONLY here.
4871
4872 * cccp.c, cpplib.c, fix-header.c, gcc.c, protoize.c: Not here.
4873
8830da36
MM
48741998-05-06 Mark Mitchell <mmitchell@usa.net>
4875
4876 * tree.h (IS_EXPR_CODE_CLASS): Remove bogus '3'.
4877
c5ff95e6
RL
4878Wed May 6 06:35:38 1998 Robert Lipe <robertl@dgii.com>
4879
4880 * toplev.h: New file. Protypes for functions in toplev.c.
4881 * tree.h, rtl.h: Deleted protos for functions in toplev.c.
9b91d8f4
UD
4882 * c-common.c, c-convert.c, c-decl.c, c-iterate.c, c-lex.c,
4883 c-parse.in, c-parse.y, c-pragma.c, c-typeck.c, calls.c,
4884 convert.c, dwarf2out.c, except.c, expr.c, final.c, fold-const.c,
4885 function.c, hash.c, profile.c, real.c, reg-stack.c, regclass.c,
4886 reload.c, reload1.c, stmt.c, stor-layout.c, tlink.c, tree.c,
c5ff95e6
RL
4887 varasm.c: include it.
4888
15ebe47d
JL
4889Wed May 6 01:09:01 1998 Jeffrey A Law (law@cygnus.com)
4890 Jim Wilson (wilson@cygnus.com)
4891
4892 * haifa-sched.c (find_rgns): In no_loops case, fix test for leaf
4893 blocks. Check for 1 successor which is the EXIT_BLOCK.
4894
4895 * haifa-sched.c (find_rgns): Detect unreachable blocks, including
4896 unreachable loops with more than one block.
4897
dbbfa8c8
MH
4898Wed May 6 08:22:24 1998 Manfred Hollstein <manfred@s-direktnet.de>
4899
4900 * fix-header.c (write_rbrac): Add "abort" to functions which need to
4901 be protected.
4902
f5963e61
JL
4903Wed May 6 00:09:36 1998 Jeffrey A Law (law@cygnus.com)
4904
4905 * Check in merge from gcc2. See ChangeLog.12 for details.
4906
3d90c2b5
JW
4907Tue May 5 14:33:49 1998 Jim Wilson <wilson@cygnus.com>
4908
c6a9dea8
JW
4909 * c-common.c (scan_char_table): Separate 's' and 'c'. 'c' does not
4910 accept 'a' flag. 'S' does accept 'a' flag.
4911 (check_format_info): When pedantic, warn for m/C/S/a/A formats,
4912 and `a' flag.
4913
3d90c2b5
JW
4914 * elf64.h (MULTILIB_DEFAULTS): Move definition after mips.h include.
4915
97b57a81
AS
4916Tue May 5 10:50:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4917
4918 * config/m68k/m68k.h: Declare functions from m68k.c used in
4919 macros and machine description.
4920 (ASM_OUTPUT_LONG_DOUBLE): Always use `l' flag in print format for
4921 long values.
4922 (ASM_OUTPUT_FLOAT): Likewise.
4923 (ASM_OUTPUT_FLOAT_OPERAND): Likewise.
4924
c5c63738
JM
4925Tue May 5 01:28:12 1998 Jason Merrill <jason@yorick.cygnus.com>
4926
4927 * tree.def: Add NAMESPACE_DECL.
4928 * dwarfout.c (type_ok_for_scope): Ignore NAMESPACE_DECLs for now.
4929 * dwarf2out.c (push_decl_scope): Likewise.
4930 (scope_die_for): Likewise.
4931 * tree.c (decl_function_context): Use TREE_CODE_CLASS to determine
4932 how to get next context level.
4933
2e14a41b
JW
4934Tue May 5 01:43:16 1998 Jim Wilson <wilson@cygnus.com>
4935
4936 * i386.c (output_fix_trunc): Add code to emulate non-popping DImode
4937 case.
4938
f78c792c
JL
4939Tue May 5 01:15:06 1998 Jeffrey A Law (law@cygnus.com)
4940
8b05263d
JL
4941 * h8300.h (ADDITIONAL_REGISTER_NAMES): Add "er" registers.
4942
f78c792c
JL
4943 * reorg.c (fill_slots_from_thread): Update REG_DEAD/REG_UNUSED notes
4944 for any insns skipped at the start of a block because they were
4945 redundant.
4946
4330b0e7
JW
4947Mon May 4 20:23:51 1998 Jim Wilson <wilson@cygnus.com>
4948
4949 * alpha.h (DBX_CONTIN_LENGTH): Decrease to 3000.
4950
b57062ca
UD
49511998-05-04 Ulrich Drepper <drepper@cygnus.com>
4952
4953 * c-common.c (format_char_info): Add new field hhlen.
4954 (print_char_table, scan_char_table, time_char_table): Initialize
4955 hhlen field appropriately.
4956 (char_format_info): Recognize hh modifier and lookup correct char
4957 table entry.
4958
06eaa86f
JW
4959Mon May 4 19:15:29 1998 Jim Wilson <wilson@cygnus.com>
4960
4961 * expr.c (expand_expr, case INDIRECT_REF): Don't optimize string
4962 reference if this is a store.
4963
9ed5dc54
RH
4964Mon May 4 17:25:17 1998 Richard Henderson <rth@cygnus.com>
4965
4966 * sparc.c (output_move_quad): Fix typo in mov_by_64 argument.
4967
fb6d9312
RL
4968Sun May 3 23:57:25 1998 Robert Lipe <robertl@dgii.com>
4969
4970 Make UnixWare 7 bootstrap support work with final shipping product.
b57062ca 4971 * configure.in: (i[34567]86-*-sysv5): append, not overwrite, xm_file.
fb6d9312
RL
4972 Pick up xm-siglist and xm-alloca.
4973 (xm_defines): Add USG so dbxout will build.
4974 * configure: Regenerate.
4975
b53beeb2 4976Sun May 3 13:51:34 PDT 1998 Richard Henderson <rth@cygnus.com>
82d6b402
RH
4977
4978 Support for official Sparc V9 ABI:
4979 * sparc.c (sparc_override_options): Force stack bias off for !arch64.
4980 Care for flag_pcc_struct_return default.
4981 (output_move_quad): Rewrite to move by halves on v9 and in the
4982 proper direction.
4983 (move_quad_direction): New function.
4984 (output_fp_move_quad): Use it to determine the direction of copy.
4985 (function_arg_slotno): Return -1 for FP reg overflow as well.
4986 (function_arg_record_value*): New functions.
4987 (function_arg): Use them. Streamline unprototyped parameter passing.
4988 (function_arg_pass_by_reference): Pass TCmode by reference.
4989 (function_value): New function.
4990 * sparc.h (PTRDIFF_TYPE, SIZE_TYPE): For -pedantic's sake, don't use
4991 long long in 64-bit mode.
4992 (RETURN_IN_MEMORY): v9 returns structs < 32-bytes in regs.
4993 (DEFAULT_PCC_STRUCT_RETURN): Make the default detectable.
4994 (BASE_RETURN_VALUE_REG): Consider complex float types for arch64.
4995 (BASE_OUTGOING_VALUE_REG, BASE_PASSING_ARG_REG): Likewise.
4996 (BASE_INCOMING_ARG_REG): Likewise.
4997 (FUNCTION_VALUE): Call function_value.
4998 (FUNCTION_OUTGOING_VALUE, LIBCALL_VALUE): Likewise.
4999 * sparc.md (movdi_sp32_v9): Disable for arch64.
5000 (movsf, movdf, movtf): Sort all ulternatives using fp regs first.
5001 (call_value_address_sp64): Remove register class constraints.
5002 (call_value_symbolic_sp64): Likewise.
5003 (nonlocal_goto): Pass label reg directly to goto_handlers. Constrain
5004 v9 case to 32-bit constants.
5005 (goto_handler_and_restore_v9): Provide a version for arch64.
5006 * sparc/linux64.h (SIZE_TYPE, PTRDIFF_TYPE): Remove private definition.
5007 * sparc/sp64-aout.h (TARGET_DEFAULT): Turn on stack bias.
5008 (CPP_PREDEFINES): New.
5009 * sparc/sp64-elf.h: Likewise.
5010 (PREFERRED_DEBUGGING_TYPE): Dwarf2.
5011 (ASM_OUTPUT_DWARF2_ADDR_CONST): New.
5012 * sparc/sysv4.h (SIZE_TYPE, PTRDIFF_TYPE): Undo svr4.h's changes.
5013
e40abc32
JL
5014Sat May 2 17:47:17 PDT 1998 Jeff Law (law@cygnus.com)
5015
5016 * version.c: Bump for snapshot.
5017
b60a8416
R
5018Sat May 2 01:37:29 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5019
5020 * reload.c (find_reloads): Emit USEs to mark where a pseudo
1e89ac8a 5021 is reloaded with the MEM of its stack slot.
b60a8416
R
5022 * reload1.c (cannot_omit_stores): Delete.
5023 (reload): Don't initialize it.
5024 Don't apply avoid_return_reg logic to USEs.
5025 When done, remove USEs that have a REG_EQUAL note on them.
5026 (emit_reload_insns): Handle case where we have inherited a MEM.
4d3eb414 5027 (choose_reload_regs): Likewise.
b60a8416
R
5028 (delete_output_reload): Don't use cannot_omit_stores.
5029
c1879238
JW
5030Thu Apr 30 18:59:03 1998 Jim Wilson <wilson@cygnus.com>
5031
5032 * Makefile.in (cpp.info, gcc.info): Put -o option before input file.
5033
459b3825
MM
5034Thu Apr 30 16:57:34 1998 Michael Meissner <meissner@cygnus.com>
5035
5036 * haifa-sched.c (print_{exp,value}): Various changes to make the
5037 debug output easier to read. Also, use only one buffer, and make
5038 sure the buffer we are passed in doesn't overflow.
5039 (safe_concat): Concatenate to a buffer without overflow.
5040
3fe4d12a 5041Thu Apr 30 16:57:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
459b3825
MM
5042
5043 * haifa-sched.c (alloc_{INSN,EXPR}_LIST): Make static to agree
5044 with the prototype.
b57062ca 5045
93da030f
R
5046Wed Apr 29 21:45:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5047
5048 * sched.c (new_insn_dead_notes): Check if the register was
5049 used in the original instruction.
5050 * haifa-sched.c (new_insn_dead_notes): Likewise.
5051
0c84c618
JW
5052Wed Apr 29 13:46:03 1998 Jim Wilson <wilson@cygnus.com>
5053
5054 * dwarf2out.c (scope_die_for): If could not find proper scope,
5055 check for and handle tagged type with incorrect TYPE_CONTEXT.
5056
bf5f0e90
JC
5057Wed Apr 29 15:34:40 1998 John Carr <jfc@mit.edu>
5058
5059 * calls.c (expand_call): Fix recognition of C++ operator new.
5060
5061 * alias.c (mode_alias_check): Disable type based alias detection.
5062
a0281dae
GK
5063Wed Apr 29 15:06:42 1998 Gavin Koch <gavin@cygnus.com>
5064
5065 * config/mips/elf.h (ASM_OUTPUT_DEF,ASM_WEAKEN_LABEL,
5066 ASM_OUTPUT_WEAK_ALIAS): Define.
5067 * config/mips/elf64.h: Same.
5068 * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK,
5069 ASM_WEAKEN_LABEL): Removed.
5070
55666054
AS
5071Wed Apr 29 10:53:29 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5072
5073 * calls.c (expand_call): Bump the length limit on the specially
5074 recognized function names to 17.
5075
2cea586a
JW
5076Tue Apr 28 17:53:33 1998 Jim Wilson <wilson@cygnus.com>
5077
f60d6248
JW
5078 * ginclude/stddef.h: Add check for _MACHINE_ANSI_H_ for BSD/OS
5079 when undefining macros at the end.
5080
bf931ec8
JW
5081 * expr.c (expand_builtin, case BUILT_IN_MEMSET): Break if either
5082 val or len has TREE_SIDE_EFFECTS set.
5083
2cea586a
JW
5084 * sparc.md (mulsidi3): Call const v8plus and v8plus routines.
5085 (mulsidi3_v8plus, const_mulsidi3_v8plus): Delete asterisk from name.
5086 (smuldi3_highpart): Call const v8plus routine.
5087 (smulsi3_highpart_v8plus): Renamed from smulsidi3_highpart_v8plus.
5088 (const_smulsi3_highpart_v8plus): New pattern.
5089 (smulsi3_highpart_sp32): Renamed from smulsidi3_highpart_sp32.
5090 (umulsidi3): Call const v8plus routine.
5091 (umulsi3_highpart): Handle const before v8plus. Call const v8plus
5092 routine.
5093 (umulsi3_highpart_v8plus): Renamed from umulsidi3_highpart_v8plus.
5094 (umulsi3_highpart_sp32): Renamed from umulsidi3_highpart_sp32.
5095
2b7972b0
MM
5096Tue Apr 28 08:55:26 1998 Michael Meissner <meissner@cygnus.com>
5097
5098 * m32r.c (*_oper{and|ator}): Change enum arguments and return
5099 values to int, so they can be prototyped even in files that don't
5100 include rtl.h.
5101 ({small,large}_insn_p): Ditto.
5102 (m32r_select_cc_mode): Ditto.
5103 (gen_compare): Ditto.
5104 (function_arg_partial_nregs): Ditto.
5105 (m32r_setup_incoming_varargs): Ditto.
5106 (init_reg_tables): Add prototype.
5107 (m32r_frame_info): Add prolog_size field.
5108 (m32r_compute_frame_size): Calculate the size of the prologue.
5109 (m32r_first_insn_address): Return prologue size.
5110 (m32r_output_function_prologue): Calculate frame size before
5111 printing out information. Print out the prologue size.
5112
5113 * m32r.h: Prototype all functions in m32r.c.
5114 (FIRST_INSN_ADDRESS): Declare, returning prologue size.
5115
5116 * m32r.md (bcc functions): Cast enum's to int.
5117
5118 * m32r.c (conditional_move_operand): Silence a debug message.
5119 ({small,long}_insn): New predicates.
b57062ca 5120
2b7972b0
MM
5121 * m32r.h (TARGET_M32R): New macro.
5122 (PREDICATE_CODES): Rearrange somewhat, add small_insn/long_insn.
5123 (HAIFA_P): Define as 1/0 depending on whether the Haifa scheduler
5124 was selected.
5125 (ISSUE_RATE): Define as 2.
5126
5127 * m32r.md (insn_size): New attribute.
5128 ({,rev_}branch_insn): Add .s qualifier to branches believed to be
5129 short.
5130 (m32r): New attribute.
5131
5132 * configure.in (enable_haifa): Switch m32r to Haifa by default.
5133 * configure: Regenerate.
5134
5135 (Changes from Nick Clifton <nickc@cygnus.com>)
5136 * m32r.h (EXTRA_CONSTRAINT): Implement 'S' constraint to perfoirm
5137 the equivalent of a negated 'I' constraint.
5138 (PRESERVE_DEATH_INFO_REGNO_P): Define in order to allow peephole
5139 optimisation to work.
5140
5141 * m32r.md (cmp_ne_small_const_insn): Use 'S' constriant rather
5142 than 'I' since the value is negated.
5143 (peephole): Add peephole optimisation to cope with optimization of
5144 divide and subtracts of the same operands.
5145
5146 * m32r.c zero_and_one, emit_cond_move): Add support for MVFC.
b57062ca 5147 * m32r.h: Ditto.
2b7972b0
MM
5148 * m32r.md: Ditto.
5149
5150 * m32r.h (PREDICATE_CODES): Add declaration of machine specific
5151 predicates.
5152
bd55c374
MH
5153Tue Apr 28 07:25:53 1998 Manfred Hollstein <manfred@s-direktnet.de>
5154
5155 * Makefile.in (libgcc2.ready): Revert last patch (Apr 24).
5156
3a6bd8c0
NC
5157Mon Apr 27 18:39:47 1998 Nick Clifton <nickc@cygnus.com>
5158
5159 * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Check against
5160 frame_pointer_rtx not FRAME_POINTER_REGNUM.
5161
0628fde6
JW
5162Mon Apr 27 18:36:28 1998 Jim Wilson <wilson@cygnus.com>
5163
561cf7b1
JW
5164 * reg-stack.c: Revert last patch (Apr 20).
5165 (convert_regs): Set insn to PREV_INSN (next) after do while loop.
5166
1688d6d2
JW
5167 * m68k/lb1sf68.asm (Laddsf$3): Fix typos in mcf5200 exg code.
5168
0628fde6
JW
5169 * loop.c (check_dbra_loop): New locals jump, first_compare, and
5170 compare_and_branch. Call get_condition to set first_compare.
5171 Set compare_and_branch to number of compare/branch instructions.
5172 Replace PREV_INSN (PREV_INSN (loop_end)) with first_compare.
5173 Replace '2' with compare_and_branch.
5174
07623417
AM
5175Mon Apr 27 15:53:30 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
5176
5177 * cplus-dem.c (demangle_qualified): Replace missing else.
5178
97d6fd65
R
5179Mon Apr 27 20:22:08 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5180
5181 * sh.c (gen_ashift_hi): Don't make SUBREG of a SUBREG.
5182
3d5a0820
R
5183Mon Apr 27 18:23:51 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5184
5185 * sh.c (sh_expand_prologue, sh_expand_epilogue):
5186 If TARGET_DOUBLE_ALIGN, preserve 64 bit stack alignment.
5187 * sh.h (STACK_BOUNDARY): Likewise.
5188
ef41dabb
R
5189Mon Apr 27 17:22:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5190
5191 * sh.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
5192
14bf4a33
MM
5193Mon Apr 27 08:55:23 1998 Michael Meissner <meissner@cygnus.com>
5194
22c4957e
MM
5195 * system.h (abort): If abort is not defined, and neither is
5196 USE_SYSTEM_ABORT, redefine abort to call fprintf and exit,
5197 reporting the line and filename of the error.
5198
5199 * .gdbinit: Add breakpoints on exit and fancy_abort.
5200
563c063f
MM
5201 * final.c (split_double): Avoid a compiler warning if
5202 BITS_PER_WORD is less than or equal to HOST_BIT_PER_WIDE_INT.
5203
14bf4a33
MM
5204 * rtl.h (JUMP_{CROSS_JUMP,NOOP_MOVES,AFTER_REGSCAN}): New macros
5205 for calling jump_optimize.
5206
5207 * toplev.c (rest_of_compilation): Call jump_optimize using JUMP_*
5208 macros, rather than 0/1's.
5209
5d02ee66
RH
5210Sun Apr 26 23:19:10 1998 Richard Henderson <rth@cygnus.com>
5211
5212 * alpha.h (CONST_COSTS): Zero is always free.
5213 (RTX_COSTS): Add EV6 costs. Abort if alpha_cpu is unknown.
5214
7bf40741
AS
5215Sun Apr 26 15:38:50 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5216
5217 * cplus-dem.c (gnu_special): Fix off-by-one bug when checking the
5218 length in the name of a virtual table.
5219
556ccd9b
RH
5220Sun Apr 26 01:21:06 1998 Richard Henderson <rth@cygnus.com>
5221
5222 * alpha.c (print_operand): Don't add 'v' suffix for ALPHA_FPTM_N.
5223
1206d294
JL
5224Sat Apr 25 22:11:38 PDT 1998 Jeff Law (law@cygnus.com)
5225
5226 * version.c: Bump for snapshot.
5227
4f242db3
JL
5228Sat Apr 25 17:17:15 1998 Jeffrey A Law (law@cygnus.com)
5229
5230 * fold-const.c (fold_convert): Fix typo.
5231
de12be17
JC
5232Sat Apr 25 17:55:54 1998 John Carr <jfc@mit.edu>
5233
5234 * alias.c (alias_invariant): New variable.
5235 (record_base_value): New argument INVARIANT.
5236 (memrefs_conflict_p): If a register has an entry in the alias_invariant
5237 array, try substituting that value for the register.
5238
5239 * rtl.h: Declare record_base_value.
5240
5241 * loop.c, unroll.c: Update callers of record_base_value.
5242
5243 * alias.c (find_base_value, find_base_term): SIGN_EXTEND and
5244 ZERO_EXTEND do not affect base values.
5245
fe81dd69
JL
5246Fri Apr 24 15:57:02 1998 Jeffrey A Law (law@cygnus.com)
5247
fb2c5c00
JL
5248 * dbxout.c (dbxout_type): Fix typo.
5249 (dbxout_range_type): Another HOST_WIDE_INT_PRINT_DEC fix.
5250
fe81dd69
JL
5251 * configure.in: Use CC_FOR_BUILD, not BUILD_CC.
5252
87d1ea79
JC
5253Fri Apr 24 16:11:47 1998 John Carr <jfc@mit.edu>
5254
5255 * expr.c (expand_builtin, case MEMSET): Set MEM_IN_STRUCT_P
5256 if the argument is the address of a structure or array.
5257
5258 * configure.in: Enable Haifa scheduler by default for SPARC.
5259
e89d3e6f
R
5260Fri Apr 24 20:55:47 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5261
5262 * cse.c (cse_set_around_loop): Don't do optimization when
5263 new pseudos are created.
5264
442f4018
JL
5265Fri Apr 24 11:00:18 1998 Jeffrey A Law (law@cygnus.com)
5266
5267 * dbxout.c (dbxout_type_fields): Use HOST_WIDE_INT_PRINT_DEC
5268 appropriately.
5269 (dbxout_type_method_1, dbxout_type): Likewise.
5270 (print_int_cst_octal, print_octal, dbxout_symbol): Likewise.
5271 (dbxout_type): Fix check for when to print a type range in
5272 octal vs decimal.
5273
7174c937
R
5274Fri Apr 24 16:45:03 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5275
5276 * (gen_shl_and, in case 1): Fix comparison with mask.
5277
0b812758
NC
5278Fri Apr 24 06:46:40 1998 Nick Clifton <nickc@cygnus.com>
5279
5280 * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Disallow frame
5281 pointer as second register in REG+REG pair.
5282
753a73c8
KG
5283Fri Apr 24 09:22:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5284
5285 * c-common.c (check_format_info): Don't check for the 'x' format
5286 character twice, instead check for 'x' and 'X'
5287
4a1991b3
MH
5288Fri Apr 24 08:02:30 1998 Manfred Hollstein <manfred@s-direktnet.de>
5289
5290 * Makefile.in (libgcc2.ready): Add explicit dependancy from
5291 $(STMP_FIXPROTO) to ensure all necessary include files have
5292 been created and to guarantee proper parallel builds.
5293
aec373f1
R
5294Fri Apr 24 04:42:35 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5295
5296 * sh.c (sh_expand_prologue, in !SH3E code): Don't push an extra
5297 register for stdarg functions.
5298 * sh.h (current_function_varargs): Declare.
5299 (FUNCTION_ARG): Ignore NAMED for stdarg functions.
5300
f5880dbe
JW
53011998-04-23 Jim Wilson <wilson@cygnus.com>
5302
f1f53f0b
JW
5303 * frame.c, libgcc2.c (stdlib.h, unistd.h): Don't include when
5304 inhibit_libc is defined.
5305
f5880dbe
JW
5306 * c-aux-info.c (gen_type): Use DECL_NAME only for TYPE_DECL.
5307
8ade1519
JW
5308Thu Apr 23 19:09:33 1998 Jim Wilson <wilson@cygnus.com>
5309
5310 * profile.c (tablejump_entry_p): New function.
5311 (branch_prob): Add code to recognize MIPS tablejump entry branch.
5312 Use tablejump_entry_p in MIPS and HPPA tablejump checking code.
5313
a2538ff7
NC
5314Thu Apr 23 15:01:13 1998 Nick Clifton <nickc@cygnus.com>
5315
5316 * config/arm/arm.c (find_barrier): Return as soon as a barrier is
5317 found, rather than at end of the loop, after the insn has been
b57062ca 5318 changed.
a2538ff7 5319
d0c42859
R
5320Thu Apr 23 20:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
5321
5322 * sh.c (gen_ashift_hi): Implement right shifts via gen_ashift.
5323 * sh.md (ashrhi3_k, lshrhi3_k, lshrhi3_m, lshrhi3, lshrhi3+1): Delete.
5324
693e265f
MM
5325Wed Apr 22 17:07:35 1998 Michael Meissner <meissner@cygnus.com>
5326
5327 * loop.c (note_addr_stored): Correct function to take 2 arguments,
5328 instead of 1.
5329
5330 * rtl.def (MATCH_INSN2): Add new matching pattern.
b57062ca 5331 * genrecog.c (add_to_sequence): Support MATCH_INSN2.
693e265f 5332
27eef9ce
JC
5333Wed Apr 22 15:52:22 1998 John Carr <jfc@mit.edu>
5334
5335 * emit-rtl.c (gen_highpart): The high part of a CONST_INT is not zero
5336 if HOST_BITS_PER_WIDE_INT is larger than BITS_PER_WORD.
b57062ca 5337
27eef9ce
JC
5338 * final.c (split_double): Sign extend both halves of a split CONST_INT.
5339
d972dd33
JL
5340Wed Apr 22 10:42:45 1998 Jeffrey A Law (law@cygnus.com)
5341
5342 * mips.c (compute_frame_size): Change only argument to a HOST_WIDE_INT.
5343
5e5199e8
AM
5344Wed Apr 22 10:53:49 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
5345
5346 * cplus-dem.c (struct work stuff): Add field for B and K mangle codes.
5347 (cplus_demangle_opname): Call mop_up_squangle.
b57062ca 5348 (cplus_demangle): Initialize squangle info, then call
5e5199e8 5349 internal_cplus_demangle. (Most code moved there as well)
b57062ca 5350 (internal_cplus_demangle): New function, performs most of what use
5e5199e8
AM
5351 to be done in cplus_demangle, but is only called with this file.
5352 (squangle_mop_up): New function to clean up B and K code data.
5353 (mop_up): set pointers to NULL after freeing.
b57062ca 5354 (demangle_signature, demangle_template, demangle_class): Add
5e5199e8
AM
5355 switch elements to handle K and B codes.
5356 (demangle_prefix, gnu_special, demangle_qualified): Add
5357 code to handle K and B codes.
5358 (do_type, demangle_fund_type): Handle B and K codes.
5359 (remember_Ktype): New function to store K info.
5360 (register_Btype, remember_Btype): New functions for B codes.
5361 (forget_B_and_K_types): New function to destroy B and K info.
5362
0dacbd0e
JW
53631998-04-21 Jim Wilson <wilson@cygnus.com>
5364
5365 * stmt.c (check_seenlabel): When search for line number note for
5366 warning, handle case where there is no such note.
5367
4ceb7595
JC
5368Tue Apr 21 20:48:37 1998 John Carr <jfc@mit.edu>
5369
5370 * genemit.c (gen_exp): Allow machine description to set mode of
5371 MATCH_OP_DUP.
5372
d09c9385
JC
5373Tue Apr 21 16:36:01 1998 John Carr <jfc@mit.edu>
5374
5375 * alias.c (mode_alias_check): New function.
5376 (true_dependence, anti_dependence, output_dependence): Call
5377 mode_alias_check.
5378
1eeed24e
JL
5379Tue Apr 21 12:05:32 1998 Jeffrey A Law (law@cygnus.com)
5380
d1c17572
JL
5381 * mips.h (STACK_BOUNDARY): Allow specific targets to override.
5382 (MIPS_STACK_ALIGN): Similarly.
5383
a6d7e156
JL
5384 * c-common.c (type_for_mode): Handle TI types.
5385 * c-decl.c (intTI_type_node, unsigned_int_TI_type_node): Define.
5386 (init_decl_processing): Handle TI types.
5387 * c-tree.h (intTI_type_node, unsigned_int_TI_type_node): Declare.
5388
1eeed24e
JL
5389 * mips.c (block_move_loop): Test Pmode == DImode instead of
5390 TARGET_MIPS64.
5391 (expand_block_move, save_restore_insns): Likewise.
5392 (function_prologue, mips_expand_prologue): Likewise.
5393 (mips_expand_epilogue): Likewise.
5394 * mips.h (POINTER_SIZE): Allow specific targets to override.
5395 (Pmode): Allow specific targets to override.
5396 (FUNCTION_PROFILER): Test Pmode == DImode instead of TARGET_MIPS64
5397 (POINTER_BOUNDARY, FUNCTION_MODE): Likewise.
5398 (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE): Likewise.
5399 (TRAMPOLINE_ALIGNMENT, INITIALIZE_TRAMPOLINE): Likewise.
5400 (CASE_VECTOR_MODE, ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
5401 (ASM_OUTPUT_ADDR_DIFF_ELT, SIZE_TYPE, PTRDIFF_TYPE): Likewise.
5402 * mips.md (indirect, tablejump & casesi support): Test for
5403 Pmode == DImode instead of TARGET_MIPS64.
5404 (call patterns): Likewise.
5405
d2f5ef70
KG
5406Tue Apr 21 09:43:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5407
5408 * objc/sendmsg.c: Define gen_rtx_MEM() to 1, as is already done
5409 for gen_rtx(MEM, ...).
5410
cb85a2f3
RH
5411Tue Apr 21 02:15:36 1998 Richard Henderson <rth@cygnus.com>
5412
5413 * sparc.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Rewrite
5414 to not be so gross, and to properly function with PIC.
5415
bb27e6c9
JW
5416Mon Apr 20 20:44:25 1998 Jim Wilson <wilson@cygnus.com>
5417
99b13ed3
JW
5418 * frame.c (heapsort): Rename to frame_heapsort.
5419
bb27e6c9
JW
5420 * gcc.c (do_spec_1, case '['): Move flag out of loop and initialize it.
5421
a9a05945
DE
5422Mon Apr 20 12:43:09 1998 Doug Evans <devans@canuck.cygnus.com>
5423
5424 * flow.c (sbitmap_vector_alloc): Ensure sbitmaps properly aligned.
5425
dc0f0eb8
JW
5426Mon Apr 20 15:04:14 1998 John Wehle (john@feith.com)
5427
5428 * i386.md (movsf_push, movdf_push, movxf_push): Allow memory
5429 operands during and after reload.
5430
95707627
R
5431Mon Apr 20 22:37:50 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5432
ba70e85a
JR
5433 * final.c (shorten_branches, init_insn_lengths): Move code
5434 to free label_align, uid_shuid, insn_lengths, insn_addresses
5435 and uid_align from the former function into the latter one;
5436 Add code to clear these variables.
5437 * sh.h (label_align): Remove declaration.
95707627 5438
0cd355fe
MM
5439Mon Apr 20 14:48:29 1998 Michael Meissner <meissner@cygnus.com>
5440
763d7ce8
MM
5441 * gcc.c (lang_specific_driver): Declare prototype properly so
5442 fatal can be passed to it without error.
5443
f55b1ca8
MM
5444 * configure.in (AC_CHECK_FUNCS): Check for strchr and strrchr.
5445 * configure: Regenerate.
5446 * config.in: Add #undef's for strchr and strrchr.
5447
5448 * protoize.c (toplevel): If we have rindex, but not strrchr, map
5449 rindex to strrchr.
5450 (file_could_be_converted): Use strrchr, not rindex since rindex is
5451 not defined on Linux systems when _POSIX_SOURCE is defined.
5452 (file_normally_convertible): Ditto.
5453 (process_aux_info_file): Ditto.
5454 (main): Ditto.
5455
0cd355fe
MM
5456 * rs6000.md (mov{sf,df} define_splits): When splitting a move of
5457 a constant to an integer register, don't split the insns that do
5458 the simple AND and OR operations, rather just split each word, and
5459 let the normal movsi define split handle it further.
5460
a0798779
R
5461Mon Apr 20 18:19:40 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5462
5463 * sh.c (find_barrier): Fix bug in ADDR_DIFF_VEC handling.
5464 (split_branches): Call init_insn_lengths.
5465
ced8dd8c
MM
5466Mon Apr 20 07:37:49 1998 Michael Meissner <meissner@cygnus.com>
5467
5468 * i386.c: Include expr.h to get the change_address prototype
5469 declared.
b57062ca 5470
f37eb5cb
L
5471Mon Apr 20 01:00:05 1998 H.J. Lu (hjl@gnu.org)
5472
5473 * reg-stack.c (subst_asm_stack_regs): Change to return the last
5474 new insn generated by this function.
5475 (subst_stack_regs): Likewise.
5476 (convert_regs): Record the last newly generated insn and use
5477 it for change_stack () instead of INSN.
5478
49fb8382
MH
5479Sun Apr 19 15:41:24 1998 Manfred Hollstein <manfred@s-direktnet.de>
5480
5481 * fix-header.c (enum special_file): Undefine enumerators if they
5482 are already defined by include files.
5483 * fixproto (rel_source_file in unistd.h stdlib.h): Prefix file protection
5484 macro with '__' to not pollute user namespace.
5485
c6a754f2
RH
5486Sun Apr 19 02:42:06 1998 Richard Henderson <rth@cygnus.com>
5487
5488 * haifa-sched.c (queue_to_ready): Fix typo in prototype.
5489
399cc148
JL
5490Sat Apr 18 23:52:35 PDT 1998 Jeff Law (law@cygnus.com)
5491
5492 * version.c: Bump for snapshot.
5493
84b77fba
JW
5494Sat Apr 18 18:30:22 1998 Jim Wilson <wilson@cygnus.com>
5495
07415a17
JL
5496 * i386.md (fix_truncsfdi2+[123]): Add + to operand 1 constraints.
5497
84b77fba
JW
5498 * i386.h (CPP_CPU_DEFAULT): Renamed to CPP_CPU_DEFAULT_SPEC.
5499 Add missing -Dpentium* options.
5500 (CPP_CPU_SPEC): Delete redundant definition. Include cpp_cpu_default
5501 instead of CPP_CPU_DEFAULT.
5502 (EXTRA_SPECS): Add entry for cpp_cpu_default.
5503
db72d7a1
DE
5504Sat Apr 18 19:06:59 1998 David Edelsohn <edelsohn@mhpcc.edu>
5505
5506 * rs6000.md (floatsidf2_loadaddr): rs6000_fpmem_offset will be
5507 negative in a stackless frame.
5508 * rs6000.c (rs6000_stack_info): Don't include fixed-size link area
5509 in stackless frame size. Support 64-bit stackless frame size.
5510 Combine fpmem offset calculations and don't add total_size to
5511 offset if not pushing a stack frame.
5512
a1ecb5ca
JW
5513Sat Apr 18 15:41:16 1998 Jim Wilson <wilson@cygnus.com>
5514
5515 * regmove.c (fixup_match_1): In three places, in flag_exceptions
5516 check, change p to q.
5517
a2a05b0a
JW
5518Sat Apr 18 15:30:49 1998 Jim Wilson <wilson@cygnus.com>
5519
5520 * gcc.c (lang_specific_driver): Add new parm type to prototype.
5521 (added_libraries): New file scope static variable.
5522 (process_command): Initialize added_libraries. Pass it to
5523 lang_specific_driver.
5524 (main): Use added_libraries in check for no input files.
b57062ca 5525
284d86e9
JC
5526Sat Apr 18 01:23:11 1998 John Carr <jfc@mit.edu>
5527
5528 * sparc.c, sparc.h, sparc.md, sol2.h: Many changes related to V9
5529 code generation. Use 64 bit instructions in 32 bit mode when
5530 possible. Use V9 return instruction. UltraSPARC optimizations.
5531
5532 * sparc.h: Change gen_rtx (CODE to gen_rtx_CODE (.
5533
43be8193
JL
5534Fri Apr 17 22:38:17 1998 Jeffrey A Law (law@cygnus.com)
5535
ea8693a4
JL
5536 * global.c (global_alloc): Don't pass HARD_CONST (0) to find_reg,
5537 just pass zero. That will work regardless of the size of HARD_REG_SET.
5538
43be8193
JL
5539 * libgcc2.c (__floatdisf): Fix a couple typos.
5540
45df6aea
JW
5541Fri Apr 17 17:28:26 1998 Jim Wilson <wilson@cygnus.com>
5542
5543 * Makefile.in (mostlyclean): Delete *.mach and *.bp files.
5544
6cca74ab
GM
5545Fri Apr 17 16:35:35 1998 Greg McGary <gkm@gnu.org>
5546
5547 * emit-rtl.c (gen_highpart): initialize `word' properly for pseudo.
5548
77e6b0eb
JC
5549Fri Apr 17 14:30:37 1998 John Carr <jfc@mit.edu>
5550
5551 * emit-rtl.c (operand_subword_force): If a register can not be
5552 accessed by words, copy it to a pseudo register.
5553
27f4cfdb
JW
5554Fri Apr 17 14:30:37 1998 Jim Wilson <wilson@cygnus.com>
5555
5556 * rs6000/vxppc.h (CPP_SPEC): Add support for mrelocatable*.
5557
f4a73984
MM
5558Fri Apr 17 17:01:25 1998 Michael Meissner <meissner@cygnus.com>
5559
5560 * tree.h (mark_seen_cases): Delete declaration.
5561
00769100
JL
5562Fri Apr 17 13:32:20 1998 Jeffrey A Law (law@cygnus.com)
5563
5564 * stmt.c (mark_seen_cases): Make static and add prototype.
5565
2467749d
KG
5566Fri Apr 17 11:21:43 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5567
5568 * frame.c: Include stdlib.h and unistd.h to possibly get various
5569 function prototypes. The fixproto script guarantees these header
5570 files exist on the target system.
5571 * libgcc2.c: Likewise.
b57062ca 5572
2467749d
KG
5573 * gthr-single.h (__gthread_mutex_lock, __gthread_mutex_trylock,
5574 __gthread_mutex_unlock): Add __attribute__ ((__unused__)) to the
5575 function parameters.
5576 * libgcc2.c (__udiv_w_sdiv): Likewise.
5577
74c5186c
JL
5578Thu Apr 16 22:41:02 1998 Jeffrey A Law (law@cygnus.com)
5579
ac546323
JL
5580 * varasm.c (asm_output_bss): Add prototype.
5581 (asm_output_aligned_bss): Likewise.
5582
5583 * unroll.c (verify_addresses): Add prototype.
5584
5585 * toplev.c: Add many prototypes. Too many to mention here.
5586
5587 * stmt.c (check_seenlabel): Add prototype.
5588
5589 * rtlanal.c (reg_set_p_1): Add prototype.
5590 (reg_set_last_1): Likewise.
5591
5592 * reorg.c (find_dead_or_set_registers): Add prototype.
b57062ca 5593
ac546323
JL
5594 * regmove (try_auto_increment): Add prototype.
5595
5596 * reg-stack.c (pop_stack): Add prototype.
5597
5598 * recog.c (validate_replace_rtx_1): Add prototype.
5599 (find_cosntant_term_loc): Likewise.
5600
a777ae13
JL
5601 * loop.c (regs_patch_p): Add prototype.
5602 (add_label_notes, count_nonfixed_reads): Likewise.
5603 (find_single_use_in_loop): Likewise.
5604 (express_from): Surround prototype with #ifdef.
5605 (giv_sort): Similarly.
5606
5607 * jump.c (mark_modified_reg): Add prototype.
5608
5609 * haifa-sched.c (is_prisky): Add prototype.
5610 (queue_to_ready): Likewise.
5611
5612 * genextract.c (gen_insn): Add prototype.
5613
5614 * genemit.c (max_operand_1): Add prototype.
5615 (max_operand_vec, print_code, gen_exp, gen_insn): Likewise.
5616 (gen_expand, gen_explit, output_add_clobbers): Likewise.
5617 (output_init_mov_optab): Likewise.
5618
5619 * genattrtab.c (attr_hash_add_rtx): Add prototype.
5620 (attr_hash_add_string, write_length_unit_log): Likewise.
5621
5622 * genattr.c (init_range): Add prototype.
5623
5624 * combine.c (sets_function_arg_p): Add prototype.
5625
5626 * expr.c (store_constructor_field): Add prototype.
5627 (get_memory_usage_from_modifier): Likewise
5628
5629 * expmed.c (synth_mult): Add prototype.
5630 (choose_multiplier, invert_mod2n): Likewise.
5631
242c13b0
JL
5632 * except.c (push_eh_entry): Add prototype.
5633 (pop_eh_entry, enqueue_eh_entry, dequeu_eh_entry): Likewise.
5634 (call_get_eh_context, start_dynamic_cleanup): Likewise.
5635 (start_dynamic_handler, can_throw): Likewise.
5636 (output_exception_table_entry, scan_region): Likewise.
5637 (eh_regs, set_insn_eh_region): Likewise.
5638
1ad4f46b
JL
5639 * dwarfout.c (decl_class_context): Add prototype.
5640 (output_inheritance_die, type_ok_for_scope): Likewise.
5641
e822c593
JL
5642 * c-lex.c (skip_white_space_on_line): Add prototype.
5643
70fec650
JL
5644 * alias.c (record_set): Add prototype.
5645 (find_base_term, base_alias_check): Likewise.
b57062ca 5646
1ac4f799
JL
5647 * function.c (assign_outer_stack_local): Make static and add prototype.
5648
a2e68776
JL
5649 * haifa-sched.c (build_control_flow): Accept raw data as inputs
5650 instead of computing it locally. Callers changed.
5651 (find_rgns): Several new arguments. Callers changed.
5652 Generally clean up and comment better. Use dominators to
5653 identify reducible loops. Convert some flag arrays to bitmaps.
5654 Convert most of the code to work on pred/succ lists instead of
5655 an edge table. Add comments for future improvements.
5656 (schedule_insns): Allocate temporary tables for flow data, call
5657 routines to compute flow data and pass it along to children as
5658 arguments.
5659 (debug_control_flow): Delete. Use dump_bb_data instead.
5660
97b1ef1c
JL
5661 * basic-block.h (compute_dominators): Declare.
5662
74c5186c
JL
5663 * flow.c (dump_sbitmap, dump_sbitmap_vector): New debugging
5664 functions.
5665 * basic-block.h: Declare them.
5666
7ce55772
JW
5667Thu Apr 16 13:45:51 1998 Jim Wilson <wilson@cygnus.com>
5668
5669 * reg-stack.c (constrain_asm_operands): Set n_alternatives to zero if
5670 no operands.
5671
e88caebd
APB
5672Wed Apr 15 11:33:09 1998 Alexandre Petit-Bianco <apbianco@sendai.cygnus.com>
5673
5674 * tree.c (build_expr_wfl): Use NULL_TREE if the file name is NULL.
5675 Propagate TREE_SIDE_EFFECTS and TREE_TYPE iff the encapsulated
5676 node is non NULL. Cache last file name and file name identifier node.
5677
a62e870c
MM
56781998-04-15 Mark Mitchell <mmitchell@usa.net>
5679
5680 * c-common.c (declare_hidden_char_array): Use TYPE_DOMAIN to get
5681 the length of an array, not TREE_TYPE.
5682
5e89e58b
JL
5683Wed Apr 15 15:31:34 1998 Jeffrey A Law (law@cygnus.com)
5684
5685 * flow.c (sbitmap_union_of_successors): New function.
5686 * basic-block.h (sbitmap_union_of_successors): Declare it.
5687
df6faf79
JW
5688Wed Apr 15 12:38:03 1998 Jim Wilson <wilson@cygnus.com>
5689
5690 * configure.in (gnu_ld): Rename to gnu_ld_flag before main loop.
5691 Set gnu_ld to gnu_ld_flag inside main loop.
5692 (gas): Likewise.
5693
5c60e5c0
DB
5694Wed Apr 15 14:50:05 1998 Dave Brolley <brolley@cygnus.com>
5695
5696 * toplev.c (compile_file): Call init_parse using new interface.
5697 (init_lex): Remove declaration.
5698
5699 * c-lex.c (init_parse): Now returns char* containing filename.
5700
2872409d
JL
5701Wed Apr 15 12:37:10 1998 Jeffrey A Law (law@cygnus.com)
5702
5703 * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Do nothing if not optimizing.
5704
4db83042
MM
5705Wed Apr 15 12:10:18 1998 Michael Meissner <meissner@cygnus.com>
5706
5707 * Makefile.in (gen{config,flags,codes,emit}): Link in host print-rtl.o.
5708 (gen{extract,peep,opinit,output}): Ditto.
5709
5710 * gen{attr,codes,config,emit,output}.c (insn_attr_name): Provide a
5711 global definition so print-rtl.o can be linked in.
5712 * gen{peep,recog}.c (insn_attr_name): Ditto.
5713
9aeba741
RP
5714Tue Apr 14 07:30:57 1998 K. Richard Pixley <rich@kyoto.noir.com>
5715
5716 * fixincludes: discard empty C++ comments, as found in sys/time.h
5717 on hpux-11.0.
5718
7878eae7
AS
5719Wed Apr 15 10:47:21 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5720
5721 * config/m68k/m68k.md (adddi3, subdi3): Optimize for constant
5722 operand.
5723
fcb7cb6c
JL
5724Wed Apr 15 01:21:21 1998 Jeffrey A Law (law@cygnus.com)
5725
5726 * emit-rtl.c (operand_subword): Rework slightly to avoid
5727 bogus warning from previous change.
5728
47747e53
RH
5729Tue Apr 14 23:39:13 1998 Richard Henderson <rth@cygnus.com>
5730
5731 * alpha.md: Revert Oct 27 change, as it is superceeded by Kenner's
5732 Nov 8 find_replacement change. Move decls of get_unaligned_address
5733 * alpha.h: ... here.
5734
8450a694
JC
5735Tue Apr 14 22:00:39 1998 John Carr <jfc@mit.edu>
5736
7940255d
JC
5737 * function.c (assign_parms): Initialize unsignedp before passing
5738 its pointer to promote_mode.
5739
8450a694
JC
5740 * genattrtab.c (check_attr_test): Handle MATCH_INSN like MATCH_OPERAND.
5741 (write_test_expr): Allow MATCH_INSN.
5742
c70afde1
PE
5743Tue Apr 14 21:57:57 1998 Paul Eggert <eggert@twinsun.com>
5744
5745 * install.texi: Update section on warnings that can be safely ignored.
5746
cf877a42
JW
5747Tue Apr 14 14:55:16 1998 Jim Wilson <wilson@cygnus.com>
5748
5749 * mips.md (reload_outdi): Change the scratch mode from DImode to
5750 TImode. New variable scratch, used instead of operand[2] in template.
5751 Add code for MIPS16 HILO_REGNUM case where output reg is not M16_REG_P.
5752
996d9dac
MM
5753Tue Apr 14 16:19:03 1998 Michael Meissner <meissner@cygnus.com>
5754
5755 * expr.c (MOVE_RATIO): Set to 3 if optimizing for space.
5756
de2d990f
KW
5757Tue Apr 14 11:31:28 1998 Krister Walfridsson <cato@df.lth.se>
5758
5759 * i386/bsd386.h (ASM_OUTPUT_ALIGN): Redefine.
5760
d5daf098
JL
5761Tue Apr 14 09:02:32 1998 Jeffrey A Law (law@cygnus.com)
5762
6862dfac
JL
5763 * svr4.h (ASM_DECLARE_OBJECT_NAME): Use HOST_WIDE_INT_PRINT_DEC.
5764 (ASM_FINISH_DECLARE_OBJECT): Likewise.
5765
b7cb92ad
JL
5766 * Idea and part of the patch from HJ.
5767 * Makefile.in: auto-host.h renamed from auto-config.h. All references
5768 changed.
5769 (distclean): Remove auto-build.h too.
5770 * configure.in: Rename host autoconf generated file to auto-host.h.
5771 If host != build, then run autoconf to generate auto-build.h for
5772 the build machine and include it in build_xm_files.
5773 Check for wait.h and sys/wait.h.
5774
d5daf098
JL
5775 * combine.c (simplify_rtx, case TRUNCATE): Respect value of
5776 TRULY_NOOP_TRUNCATION.
5777
7d02bbef
JM
5778Mon Apr 13 11:31:49 1998 Jason Merrill <jason@yorick.cygnus.com>
5779
5780 * tree.h (BINFO_OFFSET_ZEROP): Use integer_zerop.
5781
4754172c
CM
5782Sun Apr 12 20:55:32 1998 Catherine Moore <clm@cygnus.com>
5783
5784 * invoke.texi (ld options) Include memset requirements
5785 for options -nodstdlib and -nodefaultlibs.
5786
bb72a084
PE
57871998-04-12 Paul Eggert <eggert@twinsun.com>
5788
5789 This change is from an idea suggested by Arthur David Olson.
5790
5791 * c-common.c (decl_attributes, record_function_format,
5792 check_format_info, init_function_format_info):
5793 Add support for strftime format checking.
5794 (enum format_type): New type.
5795 (record_function_format): Now static, and takes value of type
5796 enum format_type instead of int.
5797 (time_char_table): New constant.
5798 (struct function_format_info): format_type member renamed from is_scan.
5799 (check_format_info): Use `warning' rather than sprintf followed by
5800 `warning', to avoid mishandling `%' in warnings.
5801 Change `pedwarn' to `warning', since these warnings do not necessarily
5802 mean the program does not conform to the C Standard, as the code
5803 need not be executed.
5804
5805 * c-tree.h (record_function_format): Remove decl; no longer extern.
5806
5807 * extend.texi: Add documentation for strftime format checking.
5808
1be12a4a
JL
5809Sun Apr 12 20:23:03 1998 Jeffrey A Law (law@cygnus.com)
5810
71922625
JL
5811 * mips/ecoffl.h: Do not include mips.h.
5812 * mips/elf.h: Likewise.
5813
1be12a4a
JL
5814 * configure.in (mips-*-ecoff): Do not mention mips/mips.h in tm_files.
5815 * mips/ecoff.h: Include "mips/mips.h".
5816
9fe69077
JL
5817Sat Apr 11 22:42:54 PDT 1998 Jeff Law (law@cygnus.com)
5818
5819 * version.c: Bump for snapshot.
5820
c6a26dc4
JL
5821Sat Apr 11 01:24:28 1998 Jeffrey A Law (law@cygnus.com)
5822
5823 * cse.c (count_reg_usage): Correctly handle REG_NONNEG notes.
5824 (delete_trivially_dead_insns): Renamed from delete_dead_from_cse.
5825 * toplev.c (rest_of_compilation): Call delete_trivially_dead_insns instead of delete_dead_from_cse. Also call delete_trivially_dead_insns
5826 between loop optimization passes.
5827 * rtl.h: Updated appropriately.
5828
bbb81923
JL
5829Fri Apr 10 22:28:32 1998 Jeffrey A Law (law@cygnus.com)
5830
5831 Reinstall this patch from Jason.
5832 * function.c (push_function_context_to): Don't call init_emit.
5833
29cb1e1f
NC
5834Fri Apr 10 13:40:20 1998 Nick Clifton <nickc@cygnus.com>
5835
5836 * rtl.c (read_skip_spaces): Prevent infinite loops upon
5837 encountering unterminated comments.
5838
3f518020
JL
5839Fri Apr 10 10:43:41 1998 Jeffrey A Law (law@cygnus.com)
5840
5841 * emit-rtl.c (operand_subword): Properly handle CONST_INTs for
5842 64x32 cross builds.
4b104d6e
JL
5843
5844 * configure.in: Handle --with-fast-fixincludes.
5845 (fixincludes): If --with-fast-fixincludes, then use a different
5846 fixincludes program by default.
5847 * Makefile.in (fixinc.sh): New rule.
5848
b76c90cf
L
5849Fri Apr 10 00:36:31 1998 H.J. Lu (hjl@gnu.org)
5850
5851 * i386.md (movqi+1): Handle invalid QI register.
5852 (movsf_push-1): Likewise.
5853
2e076ddf
NC
5854Thu Apr 9 16:53:59 1998 Nick Clifton <nickc@cygnus.com>
5855
5856 * config/m32r/m32r.c: call_address_operand(): Only accept symbolic
5857 addresses.
5858 symbolic_memort_operand(), call32_operand(), int8_operand(),
5859 int16_operand(), uint24_operand(), reg_or_int8_operand(): Removed.
5860 Not used.
5861 uint16_operand(): Made static.
5862
b1d6ccb8
JL
5863Thu Apr 9 01:43:04 1998 Jeffrey A Law (law@cygnus.com)
5864
5865 * calls.c (expand_call): Fix typo.
5866
e56e519d
DB
5867Thu Apr 9 00:18:44 1998 Dave Brolley (brolley@cygnus.com)
5868
5869 * c-lex.c (finput): New global.
5870 (init_parse): Always included. Handle !USE_CPPLIB using
5871 code originally in compile_file.
5872 (finish_parse): Update for CPPLIB.
5873 * toplev.c (init_parse, finish_parse): Declare.
5874 (finput): Delete variable. Now in front-ends.
5875 (compile_file): Remove code which is now handled by init_parse
5876 which is unconditionally called. Similarly for finish_parse.
5877
85d7aed9
GK
5878Wed Apr 8 23:13:50 1998 Gavin Koch <gavin@cygnus.com>
5879
5880 * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK,
5881 ASM_WEAKEN_LABEL): Add.
5882
574badbc
RH
5883Wed Apr 8 18:21:30 1998 Richard Henderson <rth@cygnus.com>
5884
5885 * alpha/crtbegin.asm, alpha/crtend.asm, alpha/t-crtb: New files.
5886 * configure.in (alpha-*-linux*): Use them.
5887
bf1e5319 5888Fri Apr 3 17:02:13 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
b57062ca 5889
bf1e5319
APB
5890 * tree.def (EXPR_WITH_FILE_LOCATION): New tree node definition.
5891 * tree.h (EXPR_WFL_{NODE,FILENAME,FILENAME_NODE,LINENO,
5892 COLNO,LINECOL,SET_LINECOL,EMIT_LINE_NOTE}): New macros.
5893 (build_expr_wfl): New prototype declaration.
5894 * tree.c (build_expr_wfl): New function, to build
5895 EXPR_WITH_FILE_LOCATION nodes.
5896 (copy_node): Don't zero TREE_CHAIN if copying a
5897 EXPR_WITH_FILE_LOCATION node.
5898 * print-tree.c (print_node): Handle EXPR_WITH_FILE_LOCATION.
5899 * expr.c (expand_expr): Handle EXPR_WITH_FILE_LOCATION.
5900
ee5254ff
JL
5901Wed Apr 8 12:51:19 1998 Jeffrey A Law (law@cygnus.com)
5902
62db76ee
JL
5903 * configure.in (v850): Use t-v850.
5904 (ix86-wrs-vxworks): Recognize 786 just like other x86 configurations.
5905
10a998b0
JL
5906 * protoize.c (creat, read, write): Do not declare.
5907
e105f02c
JL
5908 * jump.c (mark_jump_label): Record REG_LABEL notes for insns which
5909 refer to the CODE_LABEL before a dispatch table.
5910
56b2d7a7
JL
5911 * invoke.texi: Add ARC options.
5912
c74c0cff
JL
5913 * gcc.c (proces_command): Improve error message for -o with
5914 either -c or -S.
5915
2d58da15
JL
5916 * i386/x-cygwin32 (CLIB): Link in advapi32.
5917
40ef2fc5
JL
5918 * alpha.h (ASM_IDENTIFY_GCC): Define to nothing.
5919 (ASM_IDENTIFY_LANGUAGE): Likewise.
5920
df89b5e7
JL
5921 * i386.md (movqi recognizer): Don't perfom byte increment into
5922 a NON_QI_REG_P.
5923
f09ff199
JL
5924 * configure.in (x86-dg-dgux): Run fixinc.dgux.
5925
df89b5e7 5926 * i370.h: Fix typo in GEN_INT changes.
f962b99f 5927
c3709629
JL
5928 * bitmap.c (bitmap_element_allocate): Use "void" for arglist instead
5929 of an empty arglist in prototype.
5930
ee5254ff
JL
5931 * Makefile.in: Remove bytecode crud that crept back in after the
5932 gcc2 merge.
5933
0806342b
BK
59341998-04-08 Brendan Kehoe <brendan@cygnus.com>
5935
5936 * c-lex.h (is_class_name): Fix arg type to be tree, not void.
5937 (make_pointer_declarator, reinit_parse_for_function): Fix typo.
5938
6f734908
RE
5939Wed Apr 8 06:16:45 1998 Richard Earnshaw (rearnsha@arm.com)
5940
5941 * arm.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
5942
56c0e996
BS
5943Wed Apr 8 00:44:18 1998 Bernd Schmidt (crux@pool.informatik.rwth-aachen.de>
5944
5945 * c-lex.c (is_class_name): Delete declaration.
5946 (whitespace_cr): Make static and add prototype.
5947 * c-lex.h (make_pointer_declarator, reinit_parse_for_function,
5948 yylex, get_directive_line): Turn declarations into prototypes.
5949 (position_after_whitespace, check_newline, yyerror,, is_class_name,
5950 forget_protocol_qualifiers, remember_protocol_qualifiers): Add
5951 prototypes.
5952 * genattr.c (extend_range, write_upcase, gen_attr, write_units): Add
5953 prototypes.
5954 * gencodes.c (gen_insn): Add prototype.
5955 * genconfig.c (walk_insn, gen_insn, gen_expand, gen_split,
5956 gen_peephole): Add prototypes.
5957 * genflags.c (num_operands, gen_proto, gen_nonproto, gen_insn): Add
5958 prototypes.
5959 * gengenrtl.c (type_from_format, accessor_from_format, special_rtx,
5960 special_format, find_formats, gendecl, genmacro, gendef, genlegend,
5961 genheader, gencode): Add prototypes.
5962 * genopinit.c (gen_insn): Add prototype.
5963 * genoutput.c (output_prologue, output_epilogue, scan_operands,
5964 process_template, validate_insn_alternatives, gen_insn, gen_peephole,
5965 gen_expand, gen_split, n_occurrences): Add prototypes.
5966 * genpeep.c (gen_peephole): Add prototype.
5967 * loop.c (find_and_verify_loops, mark_loop_jump, prescan_loop,
5968 reg_in_basic_block_p, consec_sets_invariant_p, libcall_other_reg,
5969 labels_in_range_p, count_loop_regs_set, note_addr_stored,
5970 loop_reg_used_before_p, scan_loop, replace_call_address,
5971 skip_consec_insns, libcall_benefit, ignore_some_movables,
5972 force_movables, combine_movables, rtx_equal_for_loop_p, move_movables,
5973 strength_reduce, valid_initial_value_p, find_mem_givs, record_biv,
5974 check_final_value, record_giv, update_giv_derive, basic_induction_var,
5975 simplify_giv_expr, general_induction_var, consec_sets_giv,
5976 check_dbra_loop, express_from, combine_givs_p, combine_givs,
5977 product_cheap_p, maybe_eliminate_biv, maybe_eliminate_biv_1,
5978 last_use_this_basic_block, record_initial, update_reg_last_use,
5979 iteration_info, analyze_loop_iterations, insert_bct,
5980 instrument_loop_bct, indirect_jump_in_function_p): Turn declarations
5981 into prototypes.
5982
cc46ae8e
JL
5983Tue Apr 7 21:48:52 1998 Jeffrey A Law (law@cygnus.com)
5984
5985 * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
5986
e7d075bf
KR
59871998-04-07 Ken Raeburn <raeburn@cygnus.com>
5988
5989 * config/mips/mips.c (siginfo): Deleted.
5990 (override_options): Don't install SIGINFO signal handler.
5991
668d07be
JW
5992Tue Apr 7 11:58:04 1998 Jim Wilson <wilson@cygnus.com>
5993
5994 * loop.c (check_dbra_loop): When normalize comparison_val, add check
5995 to verify it is non-negative.
5996
cd36edbd
RH
5997Tue Apr 7 02:01:47 1998 Richard Henderson <rth@cygnus.com>
5998
5999 * alpha.c (alpha_expand_block_move): Correctly collect block offsets.
6000 (alpha_expand_block_clear): Likewise.
6001
e814ca97
RH
6002Mon Apr 6 23:36:01 1998 Richard Henderson <rth@cygnus.com>
6003
6004 * tree.h (sizetype_tab): Fix previous change for K&R.
6005
f1d9e6d2
JL
6006Mon Apr 6 22:23:29 PDT 1998 Jeff Law (law@cygnus.com)
6007
6008 * version.c: Bump for snapshot.
6009
22ec3928
RE
6010Mon Apr 6 23:16:10 1998 Richard Earnshaw (rearnsha@arm.com)
6011
6012 * configure.in (sparc-*-solaris2*): Add xm-siglist.h to xm_file.
6013 Add USG and POSIX to xm_defines.
6014
10da1131
BM
6015Mon Apr 6 21:49:57 1998 Bob Manson <manson@charmed.cygnus.com>
6016
6017 * gcc.c: Add linker spec.
6018 (link_command_spec): Use %(linker) instead of ld.
6019 (main): If collect2 is requested as the linker, see if it exists;
6020 if not, use ld instead.
6021
6022 * Makefile.in (USE_COLLECT2): It's named collect2 now, not ld.
6023 (ld:) Deleted.
6024 (install-collect2): Install as collect2, not ld.
6025
6026 * configure.in(will_use_collect2): It's named collect2 now.
6027
6028 * collect2: Remove checks to see if we were invoked recursively.
6029 (collect_execute): Use _spawnvp under cygwin32.
6030
a8afd67b
JW
6031Mon Apr 6 17:23:41 1998 Jim Wilson <wilson@cygnus.com>
6032
6033 * haifa-sched.c (build_control_flow): Set unreachable for block whose
6034 only predecessor is itself.
6035
944fc8ab
KG
6036Mon Apr 6 16:08:04 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6037
6038 * c-parse.in: Include system.h, and remove stuff now made redundant.
6039 * cccp.c: Likewise.
6040 * cexp.y: Likewise.
6041 * protoize.c: Likewise. Properly check for cpp stringification.
6042
6043 * Makefile.in (c-parse.o, cccp.o, cexp.o, protoize.o, unprotoize.o):
b57062ca 6044 Depend on system.h.
944fc8ab
KG
6045
6046 * objc/Make-lang.in (objc-parse.o): Likewise.
6047
3286ab57
KG
6048Mon Apr 6 14:59:58 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6049
6050 * gansidecl.h: Check if compiler supports __attribute__. Provide
6051 definitions for ATTRIBUTE_UNUSED and ATTRIBUTE_PRINTF using
6052 __attribute__ when its available. Also provide definitions for
6053 ATTRIBUTE_PRINTF_1, ATTRIBUTE_PRINTF_2 and ATTRIBUTE_PRINTF_3 in
6054 terms of ATTRIBUTE_PRINTF.
b57062ca 6055
3286ab57
KG
6056 * genoutput.c (process_template): Use ATTRIBUTE_UNUSED in place
6057 of __attribute__.
6058
d276f2bb
CM
6059Mon Apr 6 07:17:52 1998 Catherine Moore <clm@cygnus.com>
6060
6061 * combine.c (can_combine_p): Include successor in volatile test.
6062
64ad9df2
R
6063Mon Apr 6 14:16:33 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6064
6065 * sh.h (CASE_VECTOR_SHORTEN_MODE): Fix logic when to set
6066 offset_unsigned.
6067
dc544d2c
JL
6068Mon Apr 6 02:03:29 1998 Jeffrey A Law (law@cygnus.com)
6069
6070 * objc/objc-act.c (encode_aggregate_within): Avoid GNU extensions
6071 in prototype and definition.
b57062ca 6072
38c413cd
JL
6073Mon Apr 6 00:48:56 PDT 1998 Jeff Law (law@cygnus.com)
6074
6075 * version.c: Bump for snapshot.
6076
59dd0a31
RH
6077Mon Apr 6 00:08:50 1998 Richard Henderson <rth@cygnus.com>
6078
b57062ca 6079 * alpha.c (alpha_expand_block_clear): Add missing offset arg to
59dd0a31
RH
6080 alpha_expand_unaligned_store_words.
6081
f31fce3f
JW
6082Sun Apr 5 21:31:24 1998 John Wehle (john@feith.com)
6083
6084 * i386.md (movsf_push, movsf_mem): Remove.
6085 (movsf_push): Rename from movsf_push_nomove and move in front of
6086 movsf. Use nonmemory_operand predicate and don't bother checking
6087 TARGET_MOVE.
6088 (movsf_push_memory): New pattern.
6089 (movsf): Don't bother checking for push_operand. If TARGET_MOVE and
6090 both operands refer to memory then force operand[1] into a register.
6091 (movsf_normal): Change to unnamed pattern.
6092 Likewise for movdf, movxf, and friends.
6093
27ebc03e
JL
6094Sun Apr 5 18:45:51 PDT 1998 Jeff Law (law@cygnus.com)
6095
6096 * version.c: Bump for snapshot.
6097
6ecd4e53 6098Sun Apr 5 16:31:10 1998 Richard Henderson <rth@cygnus.com>
98bd9f0f 6099
6ecd4e53 6100 * configure.in (alpha-dec-osf*): Match osf1.3 correctly.
98bd9f0f 6101
b57062ca 6102Sun Apr 5 16:53:37 1998 Don Bowman <don@pixsci.com>
ac08ebd0 6103
6ecd4e53 6104 * configure.in (mips-wrs-vxworks): New target.
ac08ebd0 6105
6ecd4e53 6106Sat Apr 4 23:34:32 PST 1998 Jeff Law (law@cygnus.com)
f4a788ac 6107
f3978531
JL
6108 * expmed.c (synth_mult): The value -1, has no zeros, so it can
6109 never have the form ...011.
6110
f4a788ac
JL
6111 * version.c: Bump for snapshot.
6112
5cb6195d
RH
6113Sat Apr 4 20:16:46 1998 Richard Henderson <rth@cygnus.com>
6114
6115 * i386.c (asm_output_function_prefix, load_pic_register):
6116 Use ASM_GENERATE_INTERNAL_LABEL properly.
6117 (output_pic_addr_const): Recognize %X to supress any PIC sym suffix.
6118 (print_operand): Ignore it.
6119 (load_pic_register): Use it for the got load call.
6120 * i386.md (prologue_set_got, prologue_get_pc): Likewise.
6121 (prologue_get_pc_and_set_got): Likewise.
6122 * i386.h: Update print_operand docs.
6123
ce193852
RH
6124Sat Apr 4 19:08:37 1998 Richard Henderson <rth@cygnus.com>
6125
6126 * i386.md (ffssi, ffshi): Rewrite as define_expands.
6127 (ffssi_1, ffshi_1): New (unspec [] 5) support patterns.
6128 * i386.c (notice_update_cc): Recognize unspec 5.
6129
0022a940
DMT
6130Sat Apr 4 18:07:16 1998 David Mosberger-Tang (davidm@mostang.com)
6131
6132 * alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Accept '(' for s/sv/svi.
6133 * alpha.c (print_operand): Handle it.
6134 * alpha.md (fix_truncsfdi2): Use it. Add earlyclobber pattern
6135 for ALPHA_TP_INSN.
6136 (fix_truncdfdi2): Likewise.
6137
896cced4
RH
6138Sat Apr 4 17:42:05 1998 Richard Henderson <rth@cygnus.com>
6139
6140 * tree.h (sizetype_tab[2], sbitsizetype, ubitsizetype): Merge all
6141 of these into a single struct, with additional [us]sizetype entries.
6142 * stor-layout.c (set_sizetype): Initialize [us]sizetype.
6143 * fold-const.c (size_int_wide): Don't rely on sizetype_tab being
6144 an array.
6145
8983c716
RH
6146Sat Apr 4 17:04:41 1998 Richard Henderson <rth@cygnus.com>
6147
6148 * configure.in (alpha-*-linux-*): Undo tm_file changes from gcc2 merge.
6149
4ed43ff8
RH
6150Sat Apr 4 13:50:01 1998 Richard Henderson <rth@cygnus.com>
6151
6152 * haifa-sched.c (split_block_insns): Don't supress insn splitting
6153 on subsequent passes.
6154
6155 * alpha.c (hard_fp_register_operand): New function.
6156 * alpha.h (PREDICATE_CODES): Add it.
6157 * alpha.md (extendsidi2): Kill bogus f<-f cvtql+cvtlq case. Add an
6158 f<-m case and accompanying define_split.
6159 (trapb): Use a unique unspec_volatile number.
6160
8e7bc3cd
RH
6161Sat Apr 4 13:32:08 1998 Richard Henderson <rth@cygnus.com>
6162
6163 * configure.in (alpha-*-linux-gnu*): Undo Feb 3 change brought in
6164 from gcc2 merge.
6165
e5e809f4
JL
6166Sat Apr 4 10:23:41 1998 Jeffrey A Law (law@cygnus.com)
6167
6168 * Check in merge from gcc2. See ChangeLog.11 and ChangeLog.12
6169 for details.
6170
6171 * haifa-sched.c: Mirror recent changes from gcc2.
6172
516c2342
JL
6173Fri Apr 3 00:17:01 1998 Jeffrey A Law (law@cygnus.com)
6174
e9eaed43
JL
6175 * Makefile.in (insn*.o): Depend on system.h.
6176
516c2342
JL
6177 * pa.c (output_global_address): Initialize base.
6178 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Initialize index.
6179
7cc34889
MS
61801998-04-03 Mike Stump <mrs@wrs.com>
6181
6182 * gthr.h: Support systems that don't have weak, but have threads.
6183 * configure.in (*wrs-vxworks*): Use VxWorks threads by default.
6184 * gthr-vxworks.h: New file.
6185 * objc/thr-vxworks.h: Dummy file from thr-single.c for now.
6186
52c18286
JW
6187Thu Apr 2 18:00:52 1998 Jim Wilson <wilson@cygnus.com>
6188
6189 * i386.md (movqi+1): Change alternative 1 from *r/r to *r/*rn.
6190
c1ac292d
VM
61911998-04-02 Vladimir N. Makarov <vmakarov@cygnus.com>
6192
6193 * ginclude/va-i960.h (va_end): Change void * to void.
6194
4cb1caaf
KG
6195Thu Apr 2 13:51:10 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6196
6197 * Makefile.in (choose-temp.o): Depend on system.h.
6198
6199 * choose-temp.c: Include system.h when IN_GCC.
6200
a9a2595b
JR
6201Thu Apr 2 02:37:07 1998 Joern Rennecke (amylaar@cygnus.co.uk)
6202 Richard Henderson <rth@cygnus.com>
6203
6204 * reload.c (find_reloads_address): Try LEGITIMIZE_RELOAD_ADDRESS.
6205 (move_replacements): New function.
6206 * reload.h: Prototype it.
b57062ca 6207
a9a2595b 6208 * alpha.h (LEGITIMIZE_RELOAD_ADDRESS): New definition.
b57062ca 6209
79363e2f
RH
6210Thu Apr 2 01:01:34 1998 Richard Henderson <rth@cygnus.com>
6211
6212 * configure (alpha-*-linuxecoff, alpha-*-linux-gnulibc1):
6213 Run fixincludes.
6214
4901a643
RH
6215 * emit-rtl.c (gen_lowpart_common): Skip count by HARD_REGNO_NREGS.
6216 (gen_highpart): Likewise.
ce4d78eb
RH
6217 * final.c (alter_subreg): Allow the target to hook by-mode subreg
6218 hard register number changes.
b57062ca 6219
715f9c99
JL
6220Wed Apr 1 22:26:22 1998 Jeffrey A Law (law@cygnus.com)
6221
4e86caed
JL
6222 * fold-const.c optimze_bit_field_compare): Initialize rnbitpos,
6223 rnbitsize, rnmode and rinner.
6224 (make_range): Initialize type.
6225 (fold): Initialize arg0, arg1 and varop.
6226
6227 * function.c (instantiate_virtual_regs_1): Initialize offset, regnoi
6228 and regnor.
6229 (expand_function_start): Initialize last_ptr.
6230
6231 * stor-layout.c (layout_record): Initialize desired_align.
6232 (get_best_mode): Initialize unit.
6233
6234 * tree.c (copy_node): Initialize length.
6235
aefdd5ab
JL
6236 * c-lex.c (yylex): Initialize traditional_type, ansi_type and type.
6237
6238 * caller-save.c (insert_save_restore): Initialize pat, code and
6239 numregs.
6240
6241 * emit-rtl.c (push_to_sequence): Initialize top.
6242 (push_topmost_sequence): Likewise.
6243
6244 * genattrtab.c (simplify_by_exploding): Initialize defval.
6245
6246 * profile.c (branch_prob): Initialize dest.
6247
6248 * rtl.h (note_stores): Remove duplicate prototype.
6249 (GEN_INT): Re-instate cast of second arg to HOST_WIDE_INT.
6250
6251 * cplus-dem.c (gnu_special): Don't get confused by .<digits>
6252 strings that are not actually lengths.
6253
729da3f5
JL
6254 * genattrtab.c: Make generated file use system.h, instead of
6255 including stdio.h, etc directly.
6256 * genextract.c, genopinit.c, genoutput.c: Likewise.
6257 * genpeep.c, genrecog.c: Likewise
6258
6259 * genoutput.c (process_template): Mark operands in the generated
6260 function as potentially unused if compiling with GNU CC.
6261
2a8034f8
JL
6262 * i386/freebsd-elf.h (CPP_PREDEFINES): Update from FreeBSD folks.
6263
715f9c99
JL
6264 * pa.md (reload peepholes): Remove unused variable "mode".
6265
75d3a15b
NC
6266Wed Apr 1 17:06:19 1998 Nick Clifton <nickc@cygnus.com>
6267
6268 * config/arm/thumb.h: Add super interworking support.
6269 * config/arm/thumb.c: Add super interworking support.
6270 * config/arm/thumb.md: Add super interworking support.
75d3a15b
NC
6271 * config/arm/lib1funcs.asm: Add interworking support.
6272 * config/arm/lib1thumb.asm: Add super interworking support.
75d3a15b
NC
6273 * config/arm/t-semi: Add interworking support.
6274 * config/arm/t-thumb: Add interworking support.
75d3a15b 6275 * config/arm/README-interworking: New file.
b57062ca 6276
63959c22
JW
6277Wed Apr 1 14:38:10 1998 Jim Wilson <wilson@cygnus.com>
6278
6279 * config/mips/iris6.h (MD_EXEC_PREFIX): Set to /usr/bin/.
6280 (MD_STARTFILE_PREFIX): Unset.
6281
c651e1e0
MM
62821998-04-01 Mark Mitchell <mmitchell@usa.net>
6283
6284 * varasm.c (make_decl_rtl): Update the DECL_ASSEMBLER_NAME for a
6285 entity in a local scope.
6286
6287 * fold-const.c (fold): Call truthvalue_conversion for values which
6288 are folded to boolean type.
6289
3a598fbe
JL
6290Wed Apr 1 06:09:53 1998 Jeffrey A Law (law@cygnus.com)
6291
6292 * 1750a.md, arm.c, clipper.c, clipper.md: Use GEN_INT consistently.
6293 * convex.h, dsp16xx.c, fx80.md, gmicro.c, gmicro.md: Likewise.
6294 * i370.h, i370.md, i860.c, i860.h, i860.md, i960.c: Likewise.
6295 * i960.h, i960.md, m32r.md, m68k.md, m68kv4.h, m88k.c: Likewise.
6296 * m88k.md, ns32k.c, ns32k.md, pdp11.c, pdp11.h, pdp11.md: Likewise.
6297 * pyr.c, pyr.h, pyr.md, romp.c, romp.h, romp.md: Likewise.
6298 * rs6000.md, sparc.c, sparc.h, sparc.md, spur.c, spur.md: Likewise.
6299 * tahoe.md, vax.h, vax.md, we32k.c, we32k.h, we32k.md: Likewise.
6300 * md.texi: Likewise.
6301
b5026c50
MH
6302Wed Apr 1 08:33:44 1998 Manfred Hollstein <manfred@s-direktnet.de>
6303
6304 * fixincludes (limits.h): Fix nested comments in Motorola's
6305 limits.h and sys/limits.h.
6306
c8d86b9a
JW
6307Tue Mar 31 16:57:33 1998 Jim Wilson <wilson@cygnus.com>
6308
1a7cb241
JW
6309 * alpha.c (alpha_expand_unaligned_load): Use tgt instead of addr
6310 as dest of expand_binop call.
6311
221a9f65
JW
6312 * alpha.md (extzv): Correct check for valid operand[2] values.
6313
a7ebd547
JW
6314 * profile.c (branch_prob): Add code to recognize HPPA tablejump entry
6315 branch.
6316
c8d86b9a
JW
6317 * toplev.c (rest_of__compilation): Call init_recog_no_volatile at end.
6318
97be8f06
SC
6319Mon Mar 30 13:11:05 1998 Stan Cox <scox@cygnus.com>
6320
6321 * libgcc2.c: (__main, __do_global_dtors, __do_global_ctors):
6322 For __CYGWIN32__ use the versions in winsup/dcrt0.cc.
b57062ca 6323
97be8f06
SC
6324 * gcc.c, cccp.c, cpplib.c, collect2.c (GET_ENVIRONMENT): Added.
6325 cygwin32 can override this to allow both unix and win32 style PATHs.
6326
6327 * i386/xm-cygwin32.h (GET_ENVIRONMENT): Defined to allow win32
6328 style environment paths.
b57062ca 6329
b04cd507
KG
6330Mon Mar 30 14:43:20 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6331
6332 * Makefile.in (cppalloc.o, cpperror.o, cppexp.o, cpphash.o,
6333 cpplib.o, cppmain.o, fix-header.o, gcov.o, gen-protos.o,
6334 gengenrtl.o, halfpic.o, hash.o, scan-decls.o, scan.o): Depend on
6335 system.h.
b57062ca 6336
b04cd507
KG
6337 * cpphash.c: Include config.h.
6338 * cppalloc.c: Include system.h. Add parameters to various
6339 function prototypes.
6340 * cpperror.c: Likewise.
6341 * cppexp.c: Likewise.
6342 * cpphash.c: Likewise.
6343 * cpplib.c: Likewise.
6344 * cppmain.c: Likewise.
6345 * fix-header.c: Likewise.
6346 * gcov.c: Likewise.
6347 * gen-protos.c: Likewise.
6348 * gengenrtl.c: Likewise.
6349 * halfpic.c: Likewise.
6350 * hash.c: Likewise.
6351 * scan-decls.c: Likewise.
6352 * scan.c: Likewise.
6353
1aa5d112
JW
6354Mon Mar 30 11:06:45 1998 Jim Wilson <wilson@cygnus.com>
6355
6356 * README.gnat: Add lang_print_xnode definition.
6357
e18db50d
AS
6358Mon Mar 30 11:12:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6359
6360 * config/m68k/m68k.c (standard_68881_constant_p): Don't use
6361 fmovecr on the 68060.
6362
c0d45032
JL
6363Mon Mar 30 00:21:03 1998 Jeffrey A Law (law@cygnus.com)
6364
6365 * genemit.c (DONE): Rework so that it works in the true arm if
6366 an if-else conditional.
6367 (FAIL): Likewise.
6368
31ed227b
JL
6369Sun Mar 29 12:45:23 1998 Jeffrey A Law (law@cygnus.com)
6370
c3670418
JL
6371 * rs6000.c: Do not include stdioh or ctype.h anymore.
6372
234042f4
JL
6373 * Makefile.in (c-typeck.o): Delete on expr.h, insn-codes.h and
6374 $(RTL_H).
6375 (stor-layout.o): Likewise.
6376 * c-typeck.c: Include rtl.h and expr.h.
6377 * stor-layout.c: Likewise.
6378
72e19470
JL
6379 * cpplib.c (cpp_file_line_for_message): Delete unused parameter.
6380 All callers changed.
6381 (do_sccs): Wrap in an SCCS_DIRECTIVE ifdef.
6382 * fix-header.c (cpp_file_line_for_message): Delete unused paramter.
6383 All callers changed.
6384
40c3a857
JL
6385 * collect2.c (is_in_list): Wrap inside COLLECT_EXPORT_LIST ifdef.
6386
c80150b7
JL
6387 * local-alloc.c (reg_classes_overlap_p): Delete dead function.
6388
31ed227b
JL
6389 * tree.h (lang_print_xnode): Provide prototype.
6390
fe776296
JL
6391Sat Mar 28 23:50:44 PST 1998 Jeff Law (law@cygnus.com)
6392
6393 * version.c: Bump for snapshot.
6394
f1b03ce1
JL
6395Sun Mar 29 00:42:21 1998 Jeffrey A Law (law@cygnus.com)
6396
3ac2735b
JL
6397 * objc/sendmsg.c (__objc_block_forward): Add braces for return
6398 value if INVISIBLE_STRUCT_RETURN.
6399
f2b147f7
JL
6400 * pa.c (arith_double_operand): Fix parens.
6401
c4fa3460
JL
6402 * haifa-sched.c (print_pattern): Correct arg to sprintf.
6403
f1b03ce1
JL
6404 * Makefile.in (libgcc1.null): Make return type for __foo void.
6405
2e61a5a5
JL
6406Sat Mar 28 14:37:20 1998 Jeffrey A Law (law@cygnus.com)
6407
ba0b8436
JL
6408 * pa.h: Add declarations for many functions defined in pa.c.
6409
67ac5957
JL
6410 * genpeep.c (main): Remove unused variable 'i' from the generated
6411 file.
6412
c38d8c5b
JL
6413 * genemit.c (gen_expand): Do not emit "_done" or "_fail" labels.
6414 (gen_split): Likewise.
6415 (main): Rework generated definitions of DONE and FAIL so that they
6416 no longer use gotos. Avoids warnings about unused labels.
6417
d6e6c585
JL
6418 * integrate.c (copy_rtx_and_substitute): Rework to avoid need for
6419 unused "junk" variable.
6420
2e61a5a5
JL
6421 * genattrtab.c (write_complex_function): Add a default case in
6422 generated switch statement to keep -W -Wall quiet.
6423
0b26e56d
NC
6424Sat Mar 28 10:47:21 1998 Nick Clifton <nickc@cygnus.com>
6425
157a620e
NC
6426 * invoke.texi: Document more ARM and Thumb command line options.
6427
0b26e56d
NC
6428 * config/arm/xm-thumb.h: New file.
6429
600a4ce7
CB
6430Sat Mar 28 01:37:33 1998 Craig Burley <burley@gnu.ai.mit.edu>
6431
6432 * stmt.c (expand_expr_stmt): Must generate code for
6433 statements within an expression (gcc's `({ ... )}')
6434 even if -fsyntax-only.
6435
4d1d8045
BS
6436Sat Mar 28 01:06:12 1998 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
6437 Jeffrey A Law (law@cygnus.com)
6438
6439 * basic-block.h (basic_block_computed_jump_target): Declare.
6440 * flags.h: (current_function_has_computed_jump): Declare.
6441 * flow.c: (basic_block_computed_jump_target): Define.
6442 (flow_analysis): Allocate it. Set current_function_has_computed_jump
6443 to 0.
6444 (find_basic_blocks): Set current_function_has_computed_jump and
6445 elements of basic_block_computed_jump_target to 1 as appropriate.
6446 * function.c: (current_function_has_computed_jump): Define.
6447 * global.c (global_conflicts): Don't allocate pseudos into stack regs
6448 at the start of a block that is reachable by a computed jump.
6449 * reg-stack.c (stack_reg_life_analysis): If must restart, do so
6450 immediately.
6451 (subst_stack_regs): Undo change from Sep 4 1997.
6452 (uses_reg_or_mem): Now unused, deleted.
6453 * stupid.c (stupid_life_analysis): Compute
6454 current_function_has_computed_jump.
6455 (stupid_find_reg): Don't allocate stack regs if the function has a
6456 computed goto.
6457 * haifa-sched.c (is_cfg_nonregular): Delete code to determine if
6458 the current function has a computed jump. Use the global value
6459 instead.
6460
56f28b73
JL
6461Sat Mar 28 00:21:37 1998 Jeffrey A Law (law@cygnus.com)
6462
6463 * i386/freebsd.h (CPP_PREDEFINES): Remove __386BSD__.
6464 (DWARF2_UNWIND_INFO): Define to zero.
6465
6ed4bb9a
MM
6466Fri Mar 27 16:04:49 1998 Michael Meissner <meissner@cygnus.com>
6467
6468 * gcc.c (set_std_prefix): Add declaration.
6469 (process_command): If GCC_EXEC_PREFIX is set, remove /lib/gcc-lib/
6470 suffix, and update the standard prefix prefix.c uses.
6471
6472 * prefix.c (std_prefix): New global to hold default prefix value.
6473 (get_key_value): Change to use std_prefix instead of PREFIX.
6474 (translate_name): Ditto.
6475 (update_path): Ditto.
6476 (get_key_value): Release allocated scratch storage.
6477 (set_std_prefix): New function to reset the standard prefix.
6478
1f3fa20e
R
6479Fri Mar 27 18:08:21 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6480
7daa142b 6481 * sh.c (find_barrier): Fix calculations for alignment increase.
1f3fa20e 6482
d8a0154e
MH
6483Fri Mar 27 08:56:52 1998 Manfred Hollstein <manfred@s-direktnet.de>
6484
6485 * Makefile.in (stmp-fixinc): If we're actually fixing include
6486 files, copy gcc's assert.h into the fixed include dir.
6487 * fixincludes (assert.h): Avoid any attempts to fix a probably
6488 broken system specific assert.h file.
6489 * fixproto (stdlib.h): Make sure, it'll contain a definition of
6490 size_t.
6491
64d3b4ca
JL
6492Fri Mar 27 00:49:46 1998 Jeffrey A Law (law@cygnus.com)
6493
6494 * regclass.c (reg_scan_mark_refs): Be more selective about
6495 when we mark a register with REGNO_POINTER_FLAG.
6496
e6e52be0
R
6497Thu Mar 26 23:00:11 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6498
6499 reload inheritance improvement:
6500 * reload1.c (reg_reloaded_contents, reg_reloaded_insn):
6501 Change meaning: index is now hard reg number.
6502 (reg_reloaded_valid, reg_reloaded_dead): New variables.
6503 (reload_spill_index): Content is now a hard reg number.
6504 (reload_as_needed): Change to fit new variable meaning.
6505 (forget_old_reloads_1, allocate_reload_reg): Likewise.
6506 (choose_reload_regs, emit_reload_insns): Likewise.
6507
812f2051
R
6508Thu Mar 26 18:34:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6509
6510 * regclass.c (record_reg_classes): '?' increases cost by two.
6511
6512 * reload.c (find_reloads): Double previous costs. Output
6513 reloads cost one unit extra.
6514
6515 * reload1.c (eliminate_regs): Delete LOAD_EXTENDED_OP code that
6516 boiled down to && ! 0.
6517
6518 * reload.c (find_equiv_reg): Also consider a goal offset from the
6519 frame pointer to be constant.
6520
04d02ece
R
6521Thu Mar 26 17:34:46 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6522
6523 * sh.h (OPTIMIZATION_OPTIONS): Define.
6524
6f28d3e9
RH
6525Thu Mar 26 00:19:47 1998 Richard Henderson <rth@cygnus.com>
6526
6527 * combine.c (make_compound_operation): Simplify (subreg (*_extend) 0).
6528
b09fa787
JL
6529Wed Mar 25 23:53:11 1998 Jeffrey A Law (law@cygnus.com)
6530
6531 * pa.c (pa_adjust_cost): Avoid redundant calls to get_attr_type.
6532
a16b4c9c
JW
6533Wed Mar 25 13:40:48 1998 Jim Wilson <wilson@cygnus.com>
6534
6535 * c-common.c (check_format_info): Initialize type, is_type. New local
6536 integral_format. Don't warn for 'L' when pedantic. Do warn for 'L'
6537 when pedantic if used with integral format specifier.
6538
c4d38ccb
MM
6539Wed Mar 25 16:09:01 1998 Michael Meissner <meissner@cygnus.com>
6540
6541 * rs6000.h (FUNCTION_ARG_PADDING): Cast result to be enum
6542 direction.
6543 (function_arg_padding): Declare.
6544
6545 * rs6000.c: Include system.h.
6546 (function_arg_padding): Change return type to int, cast enum's to
6547 int.
6548
6549 (From Kaveh R. Ghazi <ghazi@caip.rutgers.edu>)
6550 * collect2.c (scan_prog_file): Add explicit braces to avoid
6551 ambiguous `else'.
b57062ca 6552
c4d38ccb
MM
6553 * dbxout.c (dbxout_type_fields): Add braces around empty body in
6554 an if-statement.
6555 (dbxout_type): Likewise.
b57062ca 6556
c4d38ccb
MM
6557 * rs6000.c (rs6000_override_options): Change type of `i', `j' and
6558 `ptt_size' from int to size_t.
6559 (rs6000_file_start): Likewise for `i'.
6560 (rs6000_replace_regno): Add default case in enumeration switch.
6561 (output_epilog): Remove unused variable `i'.
6562 (rs6000_longcall_ref): Remove unused variables `len', `p', `reg1'
6563 and `reg2'.
b57062ca 6564
c4d38ccb
MM
6565 * rs6000.h (ADDITIONAL_REGISTER_NAMES): Add missing braces around
6566 initializer.
6567 (get_issue_rate, non_logical_cint_operand): Add prototype.
6568 (rs6000_output_load_toc_table): Ditto.
b57062ca 6569
c4d38ccb
MM
6570 * rs6000.md (udivmodsi4): Add explicit braces to avoid ambiguous
6571 `else'.
b57062ca 6572
e98e406f
NC
6573Wed Mar 25 10:05:19 1998 Nick Clifton <nickc@cygnus.com>
6574
6575 * config/arm/thumb.c: New File. Support for ARM's Thumb
b57062ca 6576 instruction set.
e98e406f
NC
6577 * config/arm/thumb.h: New File. Thumb definitions.
6578 * config/arm/thumb.md: New File. Thumb machine description.
6579 * config/arm/tcoff.h: New File. Thumb COFF support.
6580 * config/arm/t-thumb: New File. Thumb makefile fragment.
6581 * config/arm/lib1thumb.asm: New File. Thumb libgcc support functions.
6582
6583 * configure.in: Add Thumb-coff target.
6584 * configure: Add Thumb-coff target.
6585 * config.sub: Add Thumb-coff target.
6586
8cf619da
JW
6587Wed Mar 25 10:30:32 1998 Jim Wilson <wilson@cygnus.com>
6588
6589 * loop.c (scan_loop): Initialize move_insn_first to zero.
6590
fe0714d3
JS
6591Wed Mar 25 01:06:49 1998 Joel Sherrill (joel@OARcorp.com)
6592
6593 * config/i386/go32-rtems.h: Defined TARGET_MEM_FUNCTIONS.
6594 * config/i386/rtems.h: Likewise.
6595 * config/i960/rtems.h: Likewise.
6596 * config/m68k/rtems.h: Likewise.
6597 * config/mips/rtems64.h: Likewise.
6598 * config/pa/rtems.h: Likewise.
6599 * config/rs6000/rtems.h: Likewise.
6600 * config/sh/rtems.h: Likewise.
6601 * config/sparc/rtems.h: Likewise.
6602
428be702
RK
6603Wed Mar 25 00:57:26 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6604
6605 * pa.c (emit_move_sequence): If in reload, call find_replacement.
6606
ae8c5963
NC
6607Tue Mar 24 10:44:11 1998 Nick Clifton <nickc@cygnus.com>
6608
2ea9a965
NC
6609 * Makefile.in (gcov$(exeext)): Support .exe extension to gcov.
6610
ae8c5963
NC
6611 * collect2.c (find_a_file): Add debugging.
6612 (find_a_file): Test for win32 style absolute paths if
6613 DIR_SERPARATOR is defined.
6614 (prefix_from_string): Add debugging.
6615 (main): Test for debug command line switch at start of program
b57062ca 6616 execution.
ae8c5963 6617 (main): Use GET_ENVIRONMENT rather than getenv().
72cf6902
NC
6618 (prefix_from_env): Use GET_ENVIRONMENT.
6619
050367a3
MM
66201998-03-24 Mark Mitchell <mmitchell@usa.net>
6621
6622 * cplus-dem.c (optable): Add sizeof.
6623 (demangle_template_value_parm): New function containing code
6624 previously found in demangle_template.
b57062ca 6625 (demangle_integral_value): New function which handles complicated
050367a3
MM
6626 integral expressions.
6627 (demangle_template): Use them.
6628
0b93b64e
KG
6629Tue Mar 24 12:13:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6630
6631 * Makefile.in (genconfig.o, genflags.o, gencodes.o, genemit.o,
6632 genopinit.o, genrecog.o, genextract.o, genpeep.o, genattr.o,
6633 genattrtab.o, genoutput.o): Depend on system.h.
b57062ca 6634
0b93b64e
KG
6635 * genattr.c: Include system.h. Add arguments to various function
6636 prototypes. Remove redundant prototype of read_rtx().
6637 * genattrtab.c: Likewise.
6638 * gencodes.c: Likewise.
6639 * genconfig.c: Likewise.
6640 * genemit.c: Likewise.
6641 * genextract.c: Likewise.
6642 * genflags.c: Likewise.
6643 * genopinit.c: Likewise.
6644 * genoutput.c: Likewise.
6645 * genpeep.c: Likewise.
6646 * genrecog.c: Likewise.
6647
bc289659
ML
66481998-03-24 Martin von Loewis <loewis@informatik.hu-berlin.de>
6649
6650 * c-lang.c (lang_print_xnode): New function.
6651 * objc/objc-act.c (lang_print_xnode): Likewise.
6652 * print-tree.c (print_node): Call it
6653
990ac8d7
L
6654Mon Mar 23 23:59:11 1998 H.J. Lu (hjl@gnu.org)
6655
6656 * c-parse.in: Recognize protocol qualifiers in class
6657 definitions for objc.
6658 Include "output.h".
6659 (yyerror): Remove redundant decl.
6660 (yyprint): Fix prototype.
6661
65d98182
JL
6662Mon Mar 23 23:49:47 1998 Jeffrey A Law (law@cygnus.com)
6663
47a0b68f
JL
6664 * cse.c (rtx_cost): Only call CONST_COSTS if it is defined.
6665
65d98182
JL
6666 * stmt.c (unroll_block_trees): Free block_vector if needed.
6667
3cac0a21
PDM
6668Mon Mar 23 23:26:42 1998 Philippe De Muyter <phdm@macqel.be>
6669
4b8bef1d
PDM
6670 * m68k/m68k.md (zero_extendqidi2, zero_extendhidi2): New patterns.
6671 (zero_extendsidi2): Avoid useless copy.
6672 (iordi_zext): New pattern.
6673 (iorsi_zexthi_ashl16): Pattern reworked to avoid "0" constraint for
6674 operand 2.
6675 (iorsi_zext): New name for old unnamed pattern; indentation fixes.
6676
3cac0a21
PDM
6677 * m68k/m68k.md (ashldi_const): Allow shift count in range ]32,63].
6678 (ashldi3): Allow constant shift count in range ]32,63].
6679 (ashrdi_const, ashrid3, lshrdi_const, lshrdi3): Likewise.
6680
4da05956
MM
66811998-03-22 Mark Mitchell <mmitchell@usa.net>
6682
6683 * tree.h (IS_EXPR_CODE_CLASS): New macro.
6684
545f2aab
JL
6685Mon Mar 23 23:18:48 1998 Jeffrey A Law (law@cygnus.com)
6686
6687 * h8300.h (CONST_COSTS): Remove definition.
6688 (DEFAULT_RTX_COSTS): Define.
6689
eef15f9f
JS
6690Mon Mar 23 22:58:22 1998 Joel Sherrill (joel@OARcorp.com)
6691
6692 * config/sh/rtems.h: Switched from ELF to COFF.
6693
4bca6986
R
6694Mon Mar 23 14:14:20 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6695
6696 * freebsd.h (ASM_OUTPUT_ALIGN): Redefine.
6697
8ca77a11
JL
6698Sat Mar 21 23:52:56 PST 1998 Jeff Law (law@cygnus.com)
6699
6700 * version.c: Bump for snapshot.
6701
e09e14e9
NC
6702Sun Mar 22 00:50:42 1998 Nick Clifton <nickc@cygnus.com>
6703 Geoff Noer <noer@cygnus.com>
6704
6705 * Makefile.in: Various fixes for building cygwin32 native toolchains.
6706
35d541d4
NC
6707 * objc/Makefile.in: Various fixes for building cygwin32 native toolchains.
6708 * objc/Make-lang.in: Likewise.
6709
4a0cf2aa
NC
6710 * config/i386/xm-cygwin32.h (PATH_SEPARATOR): Set to a semi-colon.
6711
535b86ce
G
6712Sun Mar 22 00:21:46 1998 R. Ganesan <rganesan@novell.com>
6713
6714 * configure.in: Handle with-PACKAGE=no correctly
6715
670ee920
KG
6716Fri Mar 20 17:36:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6717
6718 * Makefile.in (alias.o, bitmap.o, c-aux-info.o, c-common.o,
6719 c-decl.o, c-iterate.o, c-lang.o, c-lex.o, c-pragma.o, c-typeck.o,
6720 caller-save.o, calls.o, collect2.o, combine.o, cse.o, dbxout.o,
6721 dwarf2out.o, dwarfout.o, emit-rtl.o, except.o, explow.o, expmed.o,
6722 expr.o, final.o, flow.o, function.o, getpwd.o, global.o,
6723 integrate.o, jump.o, local-alloc.o, loop.o, optabs.o, pexecute.o,
6724 prefix.o, print-rtl.o, print-tree.o, profile.o, real.o, recog.o,
6725 reg-stack.o, regclass.o, regmove.o, reload.o, reload1.o, reorg.o,
6726 rtl.o, rtlanal.o, sdbout.o, stmt.o, stor-layout.o, stupid.o,
6727 tlink.o, toplev.o, tree.o, unroll.o, varasm.o, xcoffout.o): Depend
6728 on system.h.
6729
6730 * alias.c, bitmap.c, c-aux-info.c, c-common.c, c-decl.c,
6731 c-iterate.c, c-lang.c, c-lex.c, c-pragma.c, c-typeck.c,
6732 caller-save.c, calls.c, collect2.c, combine.c, cse.c, dbxout.c,
6733 dwarf2out.c, dwarfout.c, emit-rtl.c, except.c, explow.c, expmed.c,
6734 expr.c, final.c, flow.c, function.c, gcc.c, getpwd.c, global.c,
6735 integrate.c, jump.c, local-alloc.c, loop.c, optabs.c, pexecute.c,
6736 prefix.c, print-rtl.c, print-tree.c, profile.c, real.c, recog.c,
6737 reg-stack.c, regclass.c, regmove.c, reload.c, reload1.c, reorg.c,
6738 rtl.c, rtlanal.c, sched.c, sdbout.c, stmt.c, stor-layout.c,
6739 stupid.c, tlink.c, toplev.c, tree.c, unroll.c, varasm.c,
6740 xcoffout.c: Include system.h. Organize include ordering so
6741 that stdarg/varargs comes before other system headers. Remove
6742 spurious casts of functions assured of a prototype in system.h.
6743
7aa74e4c
SC
6744Fri Mar 20 11:19:40 1998 Stan Cox <scox@equinox.cygnus.com>
6745
6746 * reg-stack.c (pop_stack): Define. Pops any register on the
6747 regstack and adjusts regstack.
6748 (compare_for_stack_reg): Use pop_stack.
b57062ca 6749
d005a5a4
JL
6750Thu Mar 19 23:51:01 1998 Jeffrey A Law (law@cygnus.com)
6751
6752 * configure.in (hppa1.0-hp-hpux10): Handle threads for this
6753 config too.
6754
ba3ad5e0
PDM
6755Thu Mar 19 20:30:31 1998 Philippe De Muyter <phdm@macqel.be>
6756
09b4ce12
PDM
6757 * libgcc2.c (exit): Do not call __bb_exit_func if HAVE_ATEXIT.
6758
ba3ad5e0
PDM
6759 * fold-const.c (fold): Replace sign-extension of a zero extended
6760 value by a single zero extension.
6761
6e1f1f93
JM
6762Thu Mar 19 00:58:07 1998 Jason Merrill <jason@yorick.cygnus.com>
6763
6764 * except.c (init_eh): Do nothing.
6765 (save_eh_status): Call init_eh_for_function, not init_eh.
6766 * function.c (push_function_context_to): Don't call init_emit.
6767
838b0e4e
MM
6768Thu Mar 19 13:39:52 1998 Michael Meissner <meissner@cygnus.com>
6769
6770 * rs6000/sysv4.h (RELATIVE_PREFIX_NOT_LINKDIR): Undef for System V
6771 and EABI.
6772
ecb06768
KG
6773Thu Mar 19 10:10:36 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6774
6775 * final.c (shorten_branches): Add parentheses around +/- in
6776 operand of &.
6777
6778 * flow.c (life_analysis): Wrap variable `i' in macro ELIMINABLE_REGS.
6779
dfba7a1b
MH
6780Thu Mar 19 09:15:17 1998 Manfred Hollstein <manfred@s-direktnet.de>
6781
6782 * regclass.c (memory_move_secondary_cost): Wrap uses of
6783 SECONDARY_INPUT_RELOAD_CLASS and SECONDARY_OUTPUT_RELOAD_CLASS
6784 with #ifdef tests.
6785
4faca093
MH
6786Thu Mar 19 09:06:35 1998 Manfred Hollstein <manfred@s-direktnet.de>
6787
6788 * config/m68k/m68k.md (addqi3): Fix typo gen_INT vs. GEN_INT.
6789
6790 * flow.c (life_analysis): #include <sys/types.h> to make sure
6791 size_t is defined.
6792 * cplus-dem.c (demangle_function_name): Likewise.
6793
af7da199
MH
6794Thu Mar 19 09:00:01 1998 Manfred Hollstein <manfred@s-direktnet.de>
6795
6796 * final.c (insn_noperands): Change type to unsigned int.
6797 (final_scan_insn): Likewise for noperands;
6798 properly check operand number boundaries.
6799
10a25232
RH
6800Wed Mar 18 16:20:30 1998 Richard Henderson <rth@cygnus.com>
6801
6802 * alpha.md (extzv): Don't reject register operands. Fix
6803 mode of operand 1.
6804
99d1a24c
RH
6805Wed Mar 18 16:14:23 1998 Richard Henderson <rth@cygnus.com>
6806
6807 * dbxout.c (dbxout_function_end): Fix last change. The correct
6808 predicate is ASM_OUTPUT_SECTION_NAME.
6809
5bac82c5
JW
6810Wed Mar 18 12:43:20 1998 Jim Wilson <wilson@cygnus.com>
6811
6812 * sh.md (ashlsi_c-1): Delete 3rd argument to gen_ashlsi_c.
6813 (ashlsi): Use match_dup 1 instead of match_operand 2.
6814
52de9b6c
RK
6815Wed Mar 18 13:46:07 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6816
6817 * fold-const.c (operand_equal_for_comparison_p): See if equal
6818 when nop conversions are removed.
6819
7c00d1fe
RK
6820Wed Mar 18 13:42:01 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6821
6822 * expr.c (expand_expr, case COND_EXPR): If have conditional move,
6823 don't use ORIGINAL_TARGET unless REG.
6824
343665b9
R
6825Wed Mar 18 16:53:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6826
6827 * netbsd.h (ASM_OUTPUT_ALIGN): Redefine.
6828
1a61c29f
JW
6829Wed Mar 18 12:43:20 1998 Jim Wilson <wilson@cygnus.com>
6830
6831 * loop.c (struct movable): New field move_insn_first.
6832 (scan_loop): In consec sets code, set it. Clear it otherwise.
6833 (move_movables): In consec sets code, use it. Copy REG_NOTES from
6834 p to i1 only if i1 does not have REG_NOTES. Delete obsolete ifdefed
6835 out code.
6836
cbe36725
RH
6837Wed Mar 18 09:52:56 1998 Richard Henderson <rth@cygnus.com>
6838
6839 * rtl.c (read_rtx): Fall back on homebrew atoll if HOST_WIDE_INT
6840 is large, and the system doesn't provide atoll or atoq.
b57062ca 6841 (atoll): New.
cbe36725
RH
6842
6843 * alpha/xm-vms.h (HAVE_ATOLL): Define.
6844 Reported by Klaus Kaempf <kkaempf@progis.de>.
b57062ca 6845
081f5e7e
KG
6846Wed Mar 18 09:56:26 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6847
6848 * c-lang.c (finish_file): Wrap variable `void_list_node' with macro
6849 test !ASM_OUTPUT_CONSTRUCTOR || !ASM_OUTPUT_DESTRUCTOR.
6850
6851 * calls.c (emit_call_1): Wrap variable `already_popped' with macro
b57062ca 6852 test !ACCUMULATE_OUTGOING_ARGS.
081f5e7e
KG
6853
6854 * collect2.c (write_c_file_glob): Wrap function definition in
6855 macro test !LD_INIT_SWITCH.
6856
6857 * combine.c (try_combine): Wrap variables `cc_use' and
6858 `compare_mode' in macro test EXTRA_CC_MODES.
6859
6860 * cpplib.c (do_ident): Remove unused variable `len'.
6861 (skip_if_group): Remove unused variables `at_beg_of_line' and
6862 `after_ident'.
6863 (cpp_get_token): Remove unused variable `dummy'.
6864
6865 * dbxout.c (scope_labelno): Move static variable definition inside
6866 the one function scope where it is used.
6867 (dbxout_function_end): Wrap prototype and definition in
6868 macro test !NO_DBX_FUNCTION_END.
6869
6870 * dwarf2out.c (add_subscript_info): Wrap variable `dimension_number'
6871 in macro test !MIPS_DEBUGGING_INFO.
6872
6873 * expr.c (expand_builtin_setjmp): Move declaration of variable `i'
6874 into the scope where it is used. Wrap empty else-statement body
6875 in braces.
6876
6877 * fix-header.c: Fix typo in comment.
6878 (inf_skip_spaces): Cast results of INF_UNGET to (void).
6879 (check_protection, main): Likewise.
6880
6881 * flow.c (find_basic_blocks_1): Remove dangling comment text.
6882
6883 * function.c (contains): Wrap prototype and definition in macro
6884 test HAVE_prologue || HAVE_epilogue.
6885 (fixup_var_refs_1): Remove unused variable `width'.
6886
6887 * gen-protos.c (main): Remove unused variable `optr'.
6888
6889 * haifa-sched.c (debug_control_flow): Remove unused variable `j'.
6890
6891 * libgcc2.c (__udiv_w_sdiv): Provide dummy return value of 0.
6892 (__sjpopnthrow): Remove unused variable `jmpbuf'.
6893 (__throw): Remove unused variable `val'.
6894
6895 * protoize.c: Check for a previously existing definition before
b57062ca 6896 defining *_OK macros.
081f5e7e
KG
6897
6898 * scan-decls.c (scan_decls): Remove unused variable `old_written'.
6899
76ce4776
R
6900Tue Mar 17 00:45:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6901
6902 * vax.h (ADDR_VEC_ALIGN): Define.
6903
e29ef920
MM
6904Mon Mar 16 15:57:17 1998 Michael Meissner <meissner@cygnus.com>
6905
6906 * gcc.c (default_arg): Don't wander off the end of allocated
6907 memory.
6908
dbf55e53
MM
6909 (From Geoffrey Keating <geoffk@ozemail.com.au>)
6910 * rs6000.c (small_data_operand): Ensure that any address
b57062ca 6911 referenced relative to the small data area is inside the SDA.
dbf55e53 6912
883482b2 6913Mon Mar 16 12:55:15 1998 Jim Wilson <wilson@cygnus.com>
b57062ca 6914
883482b2
JW
6915 * config/m68k/netbsd.h (ASM_SPEC): Add %{m68060}.
6916
9ad82ff8 6917Mon Mar 16 15:50:20 EST 1998 Andrew MacLeod <amacleod@cygnus.com>
a0b61d14
AM
6918
6919 * except.h (in_same_eh_region): New prototype.
6920 (free_insn_eh_region, init_insn_eh_region): New prototypes.
6921 * except.c (insn_eh_region, maximum_uid): New static variables.
6922 (set_insn_eh_region): New static function to set region numbers.
6923 (free_insn_eh_region): New function to free EH region table.
6924 (init_insn_eh_region): New function to initialize EH region table.
6925 (in_same_eh_region): New function used to determine if two rtl
6926 instructions are in the same exception region or not.
6927 * final.c (final): Initialize the table indicating which instructions
6928 belong in which exception region.
6929 * genpeep.c (main): Add "except.h" to include file list in generated
b57062ca
UD
6930 file insn-peep.c.
6931 * config/sparc/sparc.md: Add calls to 'in_same_eh_region' in 4
6932 peepholes involving calls and unconditional branches.
a0b61d14 6933
66bd0128
JW
6934Mon Mar 16 11:16:50 1998 Jim Wilson <wilson@cygnus.com>
6935
6936 * README.gnat: New file.
6937
1d8eaa6b
AS
6938Mon Mar 16 11:14:20 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6939
6940 * config/m68k/m68k.c: Include <stdlib.h> for atoi. Include
6941 "recog.h" for offsettable_memref_p.
6942 (legitimize_pic_address): Remove unused variable `offset'.
6943 (notice_update_cc): Change return type to void. Add default label
6944 to switch.
6945 (standard_68881_constant_p): Remove unused variable mode.
6946 (print_operand): Define local variable i only if SUPPORT_SUN_FPA.
6947 (const_int_cost): Explicitly declare as returning int.
6948 (output_dbcc_and_branch): Change return type to void.
6949
6950 * config/m68k/linux.h, config/m68k/m68k.md, config/m68k/m68k.c,
6951 config/m68k/m68k.h: Replace gen_rtx (XXX, ...) with gen_rtx_XXX
6952 (...). Use GEN_INT instead of gen_rtx_CONST_INT.
6953
60ba47b4
JL
6954Sun Mar 15 22:30:44 PST 1998 Jeff Law (law@cygnus.com)
6955
6956 * version.c: Bump for snapshot.
6957
68137318
AS
6958Fri Mar 13 11:30:12 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6959
6960 * config/m68k/m68k.h (CONST_OK_FOR_LETTER_P): Fix logic in range
6961 check for 'M' constraint.
6962
7a50f126
JW
6963Thu Mar 12 14:47:14 1998 Jim Wilson <wilson@cygnus.com>
6964
6965 * cccp.c (create_definition): If pedantic, call pedwarn for macro
6966 varargs feature.
6967
57dbca5e
BS
6968Thu Mar 12 13:43:25 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
6969
6970 * i386.c (ix86_logical_operator): New function.
6971 (split_di): Ensure that when a MEM is split, the resulting MEMs have
6972 SImode.
6973 * i386.md (anddi3, xordi3, iordi3): New patterns. Add a define_split
6974 to implement them.
6975
8625fab5
KG
6976Thu Mar 12 15:13:16 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6977 Richard Earnshaw <rearnsha@arm.com>
6978 Nick Clifton <nickc@cygnus.com>
b57062ca 6979
8625fab5 6980 * tm.texi (DEFAULT_RTX_COSTS): Document new macro.
b57062ca 6981
8625fab5 6982 * arm.h (DEFAULT_RTX_COSTS): Define instead of RTX_COSTS.
b57062ca 6983
8625fab5
KG
6984 * cse.c (rtx_cost): Provide a default case in an enumeration
6985 switch, and call DEFAULT_RTX_COSTS if it's defined.
b57062ca 6986
6ce22dac
MH
6987Thu Mar 12 10:02:38 1998 Manfred Hollstein <manfred@s-direktnet.de>
6988
6989 * basic-block.h (compute_preds_succs): Change return type in
6990 prototype to void.
6991 * flow.c (compute_preds_succs): Likewise in function definition.
6992
6993 * regmove.c (find_matches): Cast char used as array index to unsigned char
6994 to supress warning.
6995
9c318306
MH
6996Thu Mar 12 09:39:40 1998 Manfred Hollstein <manfred@s-direktnet.de>
6997
6998 * i386.h (RTX_COSTS): Insert braces around nested if.
6999 (ADDITIONAL_REGISTER_NAMES): Insert braces around structured
7000 elements.
7001
7002 * gcc.c (default_compilers): Properly put brackets around array elements in
7003 initializer.
7004
7005 * getopt.c (_getopt_internal): Add explicit braces around nested if;
7006 reformatted.
7007
7008 * reg-stack.c (record_asm_reg_life): Add explicit braces around nested if's.
7009 (record_reg_life_pat): Add explicit parens around && and || in expression.
7010 (stack_reg_life_analysis): Add parens around assignment used as expression.
7011 (convert_regs): Likewise.
7012
56c5d8bf
MH
7013Thu Mar 12 09:25:29 1998 Manfred Hollstein <manfred@s-direktnet.de>
7014
7015 * bitmap.c (bitmap_element_allocate): Remove unused parameter;
7016 change callers accordingly.
7017
7018 * cplus-dem.c (arm_special): Remove unused parameter work in prototype
7019 and definition; change all callers accordingly.
7020
7021 * except.c (init_eh): Avoid assignment of unused return value of
7022 build_pointer_type; cast it to void, instead, and remove unused
7023 variable type.
7024
7025 * gcc.c (lang_specific_driver): Define prototype only #ifdef
7026 LANG_SPECIFIC_DRIVER.
7027 (temp_names): Define only #ifdef MKTEMP_EACH_FILE.
7028
7029 * genoutput.c (output_epilogue): Initialize next_name to 0.
7030
7031 * real.c (efrexp): #if 0 prototype and function definition.
7032 (eremain): Likewise.
7033 (uditoe): Likewise.
7034 (ditoe): Likewise.
7035 (etoudi): Likewise.
7036 (etodi): Likewise.
7037 (esqrt): Likewise.
7038
7039 * reload.c (push_secondary_reload): Define prototype only
7040 #ifdef HAVE_SECONDARY_RELOADS.
7041
7042 * varasm.c (assemble_static_space): Define rounded only
7043 #ifndef ASM_OUTPUT_ALIGNED_LOCAL.
7044
4fce8e83
MH
7045Thu Mar 12 09:11:35 1998 Manfred Hollstein <manfred@s-direktnet.de>
7046
7047 * i386.md (andsi): Add default case in enumeration switch.
7048 (iorsi3): Likewise.
7049 (iorhi3): Likewise.
7050 (xorsi3): Likewise.
7051
85066503
MH
7052Thu Mar 12 08:37:02 1998 Manfred Hollstein <manfred@s-direktnet.de>
7053
7054 * c-decl (finish_struct): Change type of min_align to unsigned.
7055
7056 * cplus-dem.c (demangle_function_name): Change type of variable i to size_t;
7057 remove unused variable len.
7058
7059 * dwarf2out.c (reg_save): Add explicit cast of -1 to unsigned and a
7060 comment indicating this is proper behaviour.
7061 (reg_loc_descriptor): Remove redundant comparison of unsigned variable
7062 reg >= 0.
7063 (based_loc_descr): Likewise.
7064
7065 * enquire.c (bitpattern): Change type of variable i to unsigned.
7066
7067 * final.c (output_asm_insn): Don't cast insn_noperands to unsigned.
7068
7069 * flow.c (life_analysis): Change type of variable i to size_t;
7070 remove unused variable insn.
7071
7072 * gcc.c (translate_options): Change type of variables optlen, arglen and
7073 complen to size_t.
7074 (input_filename_length): Change type to size_t.
7075 (do_spec_1): Change type of variable bufsize to size_t.
7076 (main): Change type of variables i and j to size_t;
7077 remove subblock local definition of variable i.
7078 (lookup_compiler): Change type of second argument to size_t;
7079 change type of variable i to size_t.
7080
7081 * genemit.c (output_init_mov_optab): Change type of variable i to size_t.
b57062ca 7082
85066503
MH
7083 * genopinit.c (get_insn): Change type of variable pindex to size_t.
7084
7085 * genrecog.c (add_to_sequence): Change type of variable i to size_t.
7086
7087 * global.c (global_alloc): Change type of variable i to size_t.
7088
7089 * regclass.c (init_reg_sets): Change type of variables i and j to unsigned.
7090
7091 * stmt.c (expand_end_bindings): Change type of variable i to size_t.
7092 (expand_end_case): Change type of variable count to size_t.
7093
7094 * toplev.c (main): Change type of variable j to size_t.
7095 (set_target_switch): Change type of variable j to size_t.
7096 (print_switch_values): Change type of variable j to size_t;
7097 remove unused variable flags.
7098
7099 * varasm.c (assemble_variable): Change type of variable align to size_t.
7100 (const_hash_rtx): Change type of variable i to size_t.
7101
6d89b990
MM
71021998-03-11 Mark Mitchell <mmitchell@usa.net>
7103
7104 * dbxout.c (dbxout_type_methods): Only treat TYPE_METHODS as a
7105 TREE_VEC if that's what it really is.
7106
01c7f350
MM
7107Wed Mar 11 15:16:01 1998 Michael Meissner <meissner@cygnus.com>
7108
7109 * {haifa-,}sched.c (rank_for_schedule): Only take void * arguments
7110 as per ISO C spec.
7111
754d1a92
TT
7112Wed Mar 11 12:05:20 1998 Teemu Torma <tot@trema.com>
7113
7114 * gthr.h: Changed the comment about return values.
7115 * gthr-solaris.h (__gthread_once): Do not use errno; return the
b57062ca 7116 error number instead of -1.
754d1a92
TT
7117 (__gthread_key_create): Any non-zero return value is an error.
7118 * libgcc2.c (eh_context_initialize): Check for non-zero return
7119 value from __gthread_once.
7120 Check that the value of get_eh_context was really changed.
7121
77008a44
R
7122Wed Mar 11 18:26:25 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7123
7124 * sh.h (LOOP_ALIGN): Only align when optimizing.
7125 * sh.c (find_barrier): Clear inc for CODE_LABELs.
7126 When not optimizing, calculate alignment for BARRIERs directly.
7127
a8aa4e0b
R
7128Wed Mar 11 15:07:18 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7129
7130 * final.c (shorten_branches): Remove conditionalizing on
7131 SHORTEN_WITH_ADJUST_INSN_LENGTH
7132 * sh.h, pa.h (SHORTEN_WITH_ADJUST_INSN_LENGTH): Remove.
7133
832544bd
JL
7134Wed Mar 11 02:37:41 1998 Jeffrey A Law (law@cygnus.com)
7135
7136 * flow.c (find_basic_blocks_1): Keep the cfg accurate when removing
7137 an unconditional jump around deleted blocks.
7138
bdd3e6ab
JW
7139Mon Mar 9 12:02:23 1998 Jim Wilson <wilson@cygnus.com>
7140
11a932c0
JW
7141 * profile.c (branch_prob): If see computed goto, call fatal instead of
7142 abort.
7143
eeb54a49 7144 * config/mips/sni-svr4.h (CPP_PREDEFINE): Add -DSNI and -Dsinix.
b57062ca 7145
35011dd5
JW
7146 * configure.in (alpha-dec-osf): Add default case for osf* to switch.
7147 Patch from Bruno Haible.
7148
bdd3e6ab
JW
7149 * function.c (put_reg_into_stack): Copy MEM_IN_STRUCT_P from new.
7150 (assign_parms): Set aggregate if hide_last_arg and last_named.
7151
af035616
R
7152Mon Mar 9 19:57:56 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7153
7154 * final.c (shorten_branches): Initialize insn_addresses.
7155
97e3c422
R
7156Mon Mar 9 14:10:23 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7157
7158 * sh.h (MUST_PASS_IN_STACK): Define.
7159
5e75ef4a
JL
7160Sun Mar 8 13:01:56 1998 Jeffrey A Law (law@cygnus.com)
7161
7162 * final.c (shorten_branches): Fix minor logic error in
7163 ADDR_DIFF_VEC shortening support.
7164
99613661
JL
7165Sun Mar 8 02:17:42 PST 1998 Jeff Law (law@cygnus.com)
7166
7167 * version.c: Bump for snapshot.
7168
8ea2b111
JL
7169Sat Mar 7 00:54:15 1998 Jeffrey A Law (law@cygnus.com)
7170
168cbdf9
JL
7171 * haifa-sched.c (is_cfg_nonregular): Change return type to
7172 an int. No longer compute "estimated" number of edges. Use
7173 computed_jump_p instead of duplicating the code. Fixup/add
7174 some comments.
7175 (build_control_flow): Returns a value indicating an irregularity
7176 in the cfg was detected. Count the number of edges in the cfg.
7177 allocate various edge tables.
7178 (find_rgns): No longer look for unreachable blocks.
7179 (schedule_insns): Do not allocate memory for edge tables here.
7180 Free memory for edge tables before returning. Do not perform
7181 cross block scheduling if build_control_flow returns nonzero.
7182 * flow.c (compute_preds_succs): More accurately determine when
7183 a block drops in.
7184
52becdc0
JL
7185 * basic-block.h (free_basic_block_vargs): Provide prototype.
7186
8ea2b111
JL
7187 * cccp.c (main): Fix dumb mistakes in last change.
7188
33f7f353
JR
7189Fri Mar 6 21:28:45 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7190
7191 * rtl.h (addr_diff_vec_flags): New typedef.
7192 (union rtunion_def): New member rt_addr_diff_vec_flags.
7193 (ADDR_DIFF_VEC_FLAGS): New macro.
7194
7195 * sh.c (output_branch): Fix offset overflow problems.
7196
7197 * final.c (shorten_branches): Implement CASE_VECTOR_SHORTEN_MODE.
7198 (final_scan_insn): New argument BODY for ASM_OUTPUT_ADDR_DIFF_ELT.
7199 * rtl.def (ADDR_DIFF_VEC): Three new fields (min, max and flags).
7200 * stmt.c (expand_end_case): Supply new arguments to
7201 gen_rtx_ADDR_DIFF_VEC.
7202 * 1750a.h (ASM_OUTPUT_ADDR_DIFF_ELT): New argument BODY.
7203 * alpha.h, arc.h, clipper.h, convex.h : Likewise.
7204 * dsp16xx.h, elxsi.h, fx80.h, gmicro.h, h8300.h : Likewise.
7205 * i370.h, i386.h, i860.h, i960.h, m32r.h, m68k.h, m88k.h : Likewise.
7206 * mips.h, mn10200.h, mn10300.h, ns32k.h, pa.h, pyr.h : Likewise.
7207 * rs6000.h, sh.h, sparc.h, spur.h, tahoe.h, v850.h : Likewise.
7208 * vax.h, we32k.h, alpha/vms.h, arm/aof.h, arm/aout.h : Likewise.
7209 * i386/386bsd.h, i386/freebsd-elf.h : Likewise.
7210 * i386/freebsd.h, i386/linux.h : Likewise.
7211 * i386/netbsd.h, i386/osfrose.h, i386/ptx4-i.h, i386/sco5.h : Likewise.
7212 * i386/sysv4.h, m68k/3b1.h, m68k/dpx2.h, m68k/hp320.h : Likewise.
7213 * m68k/mot3300.h, m68k/sgs.h : Likewise.
7214 * m68k/tower-as.h, ns32k/encore.h, sparc/pbd.h : Likewise.
7215 * sh.h (INSN_ALIGN, INSN_LENGTH_ALIGNMENT): Define.
7216 (CASE_VECTOR_SHORTEN_MODE): Define.
7217 (short_cbranch_p, align_length, addr_diff_vec_adjust): Don't declare.
7218 (med_branch_p, braf_branch_p): Don't declare.
7219 (mdep_reorg_phase, barrier_align): Declare.
7220 (ADJUST_INSN_LENGTH): Remove alignment handling.
7221 * sh.c (uid_align, uid_align_max): Deleted.
7222 (max_uid_before_fixup_addr_diff_vecs, branch_offset): Deleted.
7223 (short_cbranch_p, med_branch_p, braf_branch_p, align_length): Deleted.
7224 (cache_align_p, fixup_aligns, addr_diff_vec_adjust): Deleted.
7225 (output_far_jump): Don't use braf_branch_p.
7226 (output_branchy_insn): Don't use branch_offset.
7227 (find_barrier): Remove checks for max_uid_before_fixup_addr_diff_vecs.
7228 Remove paired barrier stuff.
7229 Don't use cache_align_p.
7230 Take alignment insns into account.
7231 (fixup_addr_diff_vecs): Reduce to only fixing up the base label of
7232 the addr_diff_vec.
7233 (barrier_align, branch_dest): New function.
7234 (machine_dependent_reorg, split_branches): Remove infrastructure
7235 for branch shortening that is now provided in the backend.
7236 * sh.md (short_cbranch_p, med_branch_p, med_cbranch_p): New attributes.
7237 (braf_branch_p, braf_cbranch_p): Likewise.
7238 (attribute length): Use new attributes.
7239 (casesi_worker): Get mode and unsignednedd from ADDR_DIFF_VEC.
7240 (addr_diff_vec_adjust): Delete.
7241 (align_2): Now a define_expand.
7242 (align_log): Now length 0.
7243
170a16c7
MM
7244Fri Mar 6 14:41:33 1998 Michael Meissner <meissner@cygnus.com>
7245
7246 * m32r.md (right): Correctly check for length == 2, not 1.
7247
688f0603
KG
7248Fri Mar 6 14:00:04 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7249
7250 * mips/mips.h: Prototype `machine_dependent_reorg'.
7251 (ASM_OUTPUT_ALIGN): Remove unused variable `mask'.
7252
19cbe68d
JR
7253Fri Mar 6 11:43:35 1998 Joern Rennecke (amylaar@cygnus.co.uk)
7254
7255 * final.c (shorten_branches): Restore accidentally removed code.
7256
8add77ce
AS
7257Fri Mar 6 11:00:49 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
7258
7259 * configure.in: Remove duplicate uses of AC_PROG_CC and
7260 AC_PROG_MAKE_SET.
7261
fbb5ed67
RH
7262Fri Mar 6 00:59:30 1998 Richard Henderson <rth@cygnus.com>
7263
7264 * configure.in (target_cpu_default2): Correct typo for alphapca56.
7265
5ece9746
JL
7266Thu Mar 5 23:24:50 1998 Jeffrey A Law (law@cygnus.com)
7267 Doug Evans (devans@cygnus.com)
7268
7269 * haifa-sched.c (build_jmp_edges): Delete dead function.
7270 (build_control_flow): Use cfg routines from flow.c
7271 (schedule_insns): Remove debugging code accidentally checked
7272 in earlier today.
7273
7274 * basic-block.h: Add external integer list structures, typdefs,
7275 accessor macros and function declarations. Simlarly for
7276 basic block pred/succ support and simple bitmap stuff.
7277 * flow.c: Add functions for integer list, basic block pred/succ
7278 support and simple bitmap support.
7279 (compute_dominators): New function to compute dominators and
7280 post dominators.
7281 (find_basic_blocks): Split into two functions.
7282 (life_analysis): Likewise.
7283 (flow_analysis): Removed. Now handled by calling find_basic_blocks,
7284 the life_analysis from toplev.c
7285 * toplev.c (rest_of_compilation): Call find_basic_blocks, then
7286 life_analysis instead of flow_analysis.
7287
ac9b3c97
R
7288Thu Mar 5 23:06:26 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7289
7290 * jump.c (jump_optimize): Call mark_jump_label also for deleted
7291 insns.
7292 (mark_jump_label): Don't increment ref counts for deleted insns.
7293
6e92f4b6
KG
7294Thu Mar 5 09:55:15 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7295
7296 * mips/iris6.h (TARGET_DEFAULT): Parenthesize macro definition.
b57062ca 7297
6e92f4b6
KG
7298 * mips/mips.c: Include stdlib.h and unistd.h.
7299 (mips_asm_file_end): Add braces around empty body in an if-statement.
7300 (function_prologue): Wrap variable `fnname' in
7301 !FUNCTION_NAME_ALREADY_DECLARED. Correct format specifier in fprintf.
7302 (mips_select_rtx_section, mips_select_section): Declare as void.
b57062ca 7303
6e92f4b6
KG
7304 * mips/mips.h: Add prototypes for extern functions in mips.c.
7305 (FUNCTION_ARG_REGNO_P): Add parentheses around && within ||.
7306 (ENCODE_SECTION_INFO): Add braces around empty body in an
7307 if-statement.
b57062ca 7308
6e92f4b6
KG
7309 * mips/mips.md (movdi): Add parentheses around && within ||.
7310 (movsf, movdf): Likewise.
7311 (branch_zero, branch_zero_di): Add default case in
7312 enumeration switch.
b57062ca 7313
6e92f4b6 7314
9ba3994a
RH
7315Thu Mar 5 02:45:48 1998 Richard Henderson <rth@cygnus.com>
7316
7317 * alpha/alpha.h (TARGET_WINDOWS_NT, TARGET_OPEN_VMS): Just make them
7318 real constants, since they can't be changed.
7319 (TARGET_AS_CAN_SUBTRACT_LABELS): New.
7320 * alpha/alpha.md (builtin_setjmp_receiver): Use it.
7321 * alpha/osf.h (TARGET_AS_CAN_SUBTRACT_LABELS): New.
7322 * alpha/osf2or3.h (TARGET_AS_CAN_SUBTRACT_LABELS): New.
7323 * alpha/vms.h (TARGET_OPEN_VMS): New.
7324 * alpha/win-nt.h (TARGET_WINDOWS_NT): New.
7325
5ec105cd
RH
7326Thu Mar 5 02:41:27 1998 Richard Henderson <rth@cygnus.com>
7327
7328 * reload.c (find_reloads): Always force (subreg (mem)) to be
7329 reloaded if WORD_REGISTER_OPERATIONS.
7330
ebb7b10b
RH
7331Thu Mar 5 02:14:44 1998 Richard Henderson <rth@cygnus.com>
7332
7333 * haifa-sched.c (free_list): Rename from free_pnd_lst.
7334 (free_pending_lists): Rename free_pnd_lst uses.
7335 (remove_dependence): Place expunged element on unused_insn_list.
7336 (alloc_INSN_LIST, alloc_EXPR_LIST): New. Change all callers of
7337 gen_rtx_*_LIST and alloc_rtx to use them.
7338 (compute_block_backward_dependences): Free the reg_last_* lists.
7339
cb37ce62
JL
7340Thu Mar 5 00:05:40 1998 Jeffrey A Law (law@cygnus.com)
7341
7342 * cccp.c (main): Avoid undefined behavior when setting pend_includes
7343 and pend_files.
7344
ce514f57
FS
7345Wed Mar 4 21:58:25 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
7346
b57062ca 7347 * rs6000/linux.h: don't define DEFAULT_VTABLE_THUNKS to 1 if
ce514f57
FS
7348 USE_GNULIBC_1 is defined
7349 * configure.in: add a new case powerpc-*-linux-gnulibc1 which
7350 includes the t-linux-gnulibc1 fragment
7351
89a5e42b
JW
7352Wed Mar 4 12:11:36 1998 Jim Wilson <wilson@cygnus.com>
7353
7354 * mips.md (movdf_internal1a): Fix misplaced parenthesis in condition.
7355
1dd8faa8
R
7356Wed Mar 4 18:47:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7357
7358 * final.c (final_scan_insn, case CODE_LABEL: Cleanup.
7359
e2faec75
R
7360Wed Mar 4 15:51:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7361
7362 * final.c (shorten_branches): Tag the loop alignment onto the
7363 first label after NOTE_INSN_LOOP_BEG even if there is an
7364 intervening insn.
7365
de7987a6
R
7366Tue Mar 3 21:48:35 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7367
26024475
R
7368 * final.c (insn_current_reference_address):
7369 Use SEQ instead of BRANCH as argument to align_fuzz, to get a
7370 proper alignment chain.
7371
de7987a6
R
7372 * final.c (max_labelno): New static variable.
7373 (final_scan_insn): Check max_labelno before outputting an
7374 alignment for a label.
de7987a6
R
7375 (shorten_branches): Remove unused variable length_align.
7376
27d8f9ea
KG
7377Tue Mar 3 14:27:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7378
7379 * sparc.c (ultrasparc_adjust_cost): Add default case in
7380 enumeration switch.
b57062ca 7381
27d8f9ea
KG
7382 * sparc.h: Add prototypes for extern functions defined in
7383 sparc.c.
7384
bd334356
NC
7385Tue Mar 3 10:00:11 1998 Nick Clifton <nickc@cygnus.com>
7386
7387 * toplev.c: Only generate <name>.dbr file when dumping RTL if
b57062ca 7388 DEALY_SLOTS is defined.
bd334356 7389
1838fe6d
MH
7390Tue Mar 3 07:36:37 1998 Manfred Hollstein <manfred@s-direktnet.de>
7391
7392 * reorg.c (fill_eager_delay_slots): Add new argument delay_list
7393 in call to fill_slots_from_thread.
7394
b0021153
RH
7395Mon Mar 2 13:45:03 1998 Richard Henderson <rth@cygnus.com>
7396
b57062ca 7397 * alpha/linux.h (CPP_PREDEFINES): Correct connecting whitespace
b0021153
RH
7398 to SUB_CPP_PREDEFINES. Reported by asun@saul4.u.washington.edu.
7399
687d0ab6 7400Mon Mar 2 22:59:28 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
fc470718
R
7401
7402 * final.c (insn_last_address, insn_current_align, uid_align):
7403 New variables.
7404 (in_align_chain, align_fuzz, align_shrink_fuzz): New functions.
7405 (insn_current_reference_address): Likewise.
7406 (shorten_branches, final_scan_insn): Implement LABEL_ALIGN,
7407 LABEL_ALIGN_AFTER_BARRIER and LOOP_ALIGN target macros.
7408 (label_to_alignment): New function.
7409 * genattrtab.c (write_test_expr): If one of LABEL_ALIGN,
7410 LABEL_ALIGN_AFTER_BARRIER or LOOP_ALIGN is defined, call
7411 insn_current_reference_address instead of insn_current_address.
7412 (or_attr_value, write_length_unit_log): New functions.
7413 (main): Call write_length_unit_log.
7414 (write_const_num_delay_slots): Output extra '\n'.
7415 * alpha.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE):
7416 replace with:
7417 (LOOP_ALIGN, ALIGN_LABEL_AFTER_BARRIER).
7418 * i386.h, i386/osfrose.h, i386/svr3dbx.h, m68k.h, sparc.h: Likewise.
7419 * arc.h, m32r.h (ASM_OUTPUT_LOOP_ALIGN): replace with:
7420 (LOOP_ALIGN).
7421 * i960.h, m88k.h: (ASM_OUTPUT_ALIGN_CODE): Replace with:
7422 (LABEL_ALIGN_AFTER_BARRIER).
7423 * ns32k/encore.h, ns32k/merlin.h, ns32k.h, ns32k/sequent.h: Likewise.
7424 * ns32k/tek6000.h: Likewise.
7425 * i386/gas.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE): Delete.
7426 * i386.md (casesi+1): Use ASM_OUTPUT_ALIGN instead of
7427 ASM_OUTPUT_ALIGN_CODE.
7428
54f00917
JL
7429Mon Mar 2 01:05:50 PST 1998 Jeff Law (law@cygnus.com)
7430
7431 * version.c: Bump for snapshot.
7432
38630f7e
JL
7433Mon Mar 2 00:52:18 PST 1998 Jeff Law (law@cygnus.com)
7434
7435 * version.c: Bump for snapshot.
7436
ab63953e
JL
7437Sun Mar 1 18:25:49 1998 Michael P. Hayes <michaelh@ongaonga.chch.cri.nz>
7438
7439 * reorg.c (fill_slots_from_thread): Don't steal delay list from target
b57062ca 7440 if condition code of jump conflicts with opposite_needed.
ab63953e
JL
7441
7442 * reorg.c (fill_slots_from_thread): Mark resources referenced in
7443 opposite_needed thread. Return delay_list even when cannot get
7444 any more delay insns from end of subroutine.
7445
7446Sun Mar 1 18:26:21 1998 Ken Rose (rose@acm.org)
7447
7448 * reorg.c (fill_slots_from_thread): New parameter, delay_list.
7449 All callers changed.
7450
7451Sun Mar 1 18:25:37 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
72dd050a
BH
7452
7453 * frame.c (start_fde_sort, fde_split, heapsort, fde_merge,
7454 end_fde_sort): New functions for fast sorting of an FDE array.
7455 (fde_insert): Simplified.
7456 (add_fdes): Change argument list.
7457 (frame_init): Use the new functions.
7458
de153e82
JL
7459Sun Mar 1 18:06:21 1998 Jeffrey A Law (law@cygnus.com)
7460
925b1f33
JL
7461 * ginclude/va-ppc.h (va_arg): Fix typo in long long support.
7462
c7271385
JL
7463 * i386.c (reg_mentioned_in_mem): Fix dangling else statement.
7464
de153e82
JL
7465 * fold-const.c (fold_range_test): Always return a value.
7466
81023100
MK
7467Sun Mar 1 17:57:34 1998 Mumit Khan <khan@xraylith.wisc.edu>
7468
7469 * config/i386/winnt.c (i386_pe_unique_section): Put read-only
7470 data in the text section unless READONLY_DATA_SECTION is defined.
7471
818e50a5
JL
7472Sun Mar 1 17:48:46 1998 Jeffrey A Law (law@cygnus.com)
7473
7474 * c-parse.in (undeclared variable error): Tweak error message to
7475 be clearer.
7476
c93dc3ac
JL
7477Sun Mar 1 10:22:36 PST 1998 Jeff Law (law@cygnus.com)
7478
7479 * version.c: Bump for snapshot.
7480
90ca38bb
MM
74811998-02-28 Mark Mitchell <mmitchell@usa.net>
7482
7483 * final.c (final_scan_insn): Undo overzealous removal of `set'.
7484
3d85c12e
KG
7485Sat Feb 28 07:54:03 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7486
5feca984
KG
7487 * pa.h (CONST_COSTS): When checking the CONST_DOUBLE enumerated
7488 case, add parentheses to specify the proper order of precedence in
7489 the if-statement.
b57062ca 7490
5feca984 7491
51723711
KG
7492 * c-aux-info.c: Include string.h/strings.h.
7493
7494 * pa.c: Include stdlib.h.
7495 (pa_combine_instructions): Prototype the function.
7496 (pa_can_combine_p, forward_branch_p, shadd_constant_p): Likewise.
7497 (reloc_needed): Add default case for enumeration switch.
7498 (remove_useless_addtr_insns): Remove unused variable `all'.
7499 (hppa_expand_prologue): Add explicit braces to avoid
7500 ambiguous `else'.
7501 (output_function_epilogue): Remove unused variable `i'.
7502 (output_millicode_call): Remove unused variable `link'.
7503 (shadd_constant_p, forward_branch_p): Make the function static.
7504 (following_call): Explicitly declare to return int.
7505 (pa_reorg): Declare as void.
7506 (pa_combine_instructions): Declare as static void. Add
7507 parentheses around && within ||.
b57062ca 7508
51723711
KG
7509 * pa.h: Add prototypes for pa_reorg, symbolic_operand,
7510 following_call, function_label_operand, lhs_lshift_cint_operand
7511 and zdepi_cint_p.
7512
7513 * pa.md: Add parentheses around && within ||.
7514
7515 * cppalloc.c: Include stdlib.h.
7516
7517 * cpperror.c (cpp_print_containing_files): Remove unused variable
7518 `i'. Fix format specifier in fprintf.
7519
7520 * cse.c (cse_around_loop): Add explicit braces to avoid
7521 ambiguous `else'.
7522 (delete_dead_from_cse): Wrap variable `tem' in macro HAVE_cc0.
7523
7524 * expr.c (expand_expr): Add parentheses around && within ||.
7525
7526 * final.c (app_enable): Replace fprintf with fputs where there are
7527 no format specifiers and no trailing argument after the string.
7528 Eg, when printing ASM_APP_ON/ASM_APP_OFF.
7529 (app_disable): Likewise.
7530 (final_end_function): Likewise.
7531 (final_scan_insn): Likewise. Remove unused variable `set'.
7532 (profile_function): Wrap empty if-statement body in {} brackets.
7533
7534 * function.c: Include stdlib.h.
7535 (pad_below): Wrap prototype and definition in ARGS_GROW_DOWNWARD.
7536 (reposition_prologue_and_epilogue_notes): Add parentheses
7537 around assignment used as truth value.
7538
7539 * integrate.c (expand_inline_function): Wrap variable
7540 `cc0_insn' in macro HAVE_cc0.
7541
7542 * jump.c (jump_optimize): Wrap variable `q' in macro
7543 HAVE_cc0. Remove unused variable `prev1'.
7544
7545 * libgcc2.c (__bb_exit_trace_func): Add parentheses around &&
7546 within ||. Fix format specifier in fprintf.
7547 (__bb_init_prg): Add parentheses around assignment used as
7548 truth value.
7549
7550 * local-alloc.c: Include stdlib.h.
7551 (requires_inout): Add parentheses around assignment used
7552 as truth value.
7553
7554 * loop.c (analyze_loop_iterations): Wrap prototype and definition
7555 in macro HAVE_decrement_and_branch_on_count.
7556 (insert_bct, instrument_loop_bct): Likewise.
7557 (move_movables): Add parentheses around assignment used as
7558 truth value.
7559 (consec_sets_invariant_p): Likewise.
7560 (maybe_eliminate_biv_1): Wrap variable `new' in macro HAVE_cc0.
7561
7562 * objc/objc-act.c: Include stdlib.h.
7563 (lookup_method_in_protocol_list): Wrap empty else-statement body
7564 in braces.
7565 (lookup_protocol_in_reflist): Likewise.
7566 (objc_add_static_instance): Remove unused variables `decl_expr'
7567 and `decl_spec'.
7568 (get_objc_string_decl): Remove unused variable `decl'.
7569 (generate_static_references): Remove unused variables `idecl' and
7570 `instance'.
7571 (check_protocols): Wrap empty else-statement body in braces.
b57062ca 7572
51723711
KG
7573 * protoize.c: Include stdlib.h.
7574 (substr): Add parentheses around assignment used as truth value.
7575 (abspath): Likewise.
7576 (shortpath): Likewise.
7577
7578 * regmove.c (fixup_match_1): Add parentheses around assignment
7579 used as truth value.
7580
7581 * reload.c (push_secondary_reload): Remove unused variable `i'.
7582 (find_reloads): Add parentheses around assignment used as truth
7583 value.
7584
7585 * reload1.c: Include stdlib.h.
7586
7587 * rtl.h: Correct typo in prototype of offsettable_memref_p.
7588
7589 * stmt.c (add_case_node): Add parentheses around assignment used
7590 as truth value.
7591 (case_tree2list): Likewise.
7592
7593 * tree.c (valid_machine_attribute): Wrap variable `decl_attr_list'
7594 in macro VALID_MACHINE_DECL_ATTRIBUTE. Wrap variable
7595 `type_attr_list' in macro VALID_MACHINE_TYPE_ATTRIBUTE.
7596 (merge_attributes): Add explicit braces to avoid ambiguous
7597 `else'.
7598
7599 * unroll.c (copy_loop_body): Wrap variable `cc0_insn' in
7600 macro HAVE_cc0.
b57062ca 7601
51723711 7602 * varasm.c: Include stdlib.h.
b57062ca 7603
51723711 7604
c5801053
KG
7605 * system.h: Remove sys/stat.h.
7606 * gcc.c: Add sys/stat.h.
7607
3d85c12e
KG
7608 * genattr.c: Wrap prototype of `free' in NEED_DECLARATION_FREE.
7609 * genattrtab.c: Likewise.
7610 * genconfig.c: Likewise.
7611 * genemit.c: Likewise.
7612 * genextract.c: Likewise.
7613 * genflags.c: Likewise.
7614 * genopinit.c: Likewise.
7615 * genoutput.c: Likewise.
7616 * genpeep.c: Likewise.
7617 * genrecog.c: Likewise.
7618 * tlink.c: Likewise. Also wrap `getenv' in NEED_DECLARATION_GETENV.
7619
0fd12b04
AS
7620Fri Feb 27 11:02:47 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
7621
bd762873
AS
7622 * invoke.texi: Use @itemx for a secondary item in a @table.
7623
0fd12b04
AS
7624 * config/m68k/m68k.md (movsf+1): Optimize moving a CONST_DOUBLE
7625 zero.
7626
c3cf395b
ILT
7627Thu Feb 26 00:13:21 1998 Ian Lance Taylor <ian@cygnus.com>
7628
7629 * choose-temp.c: Fix handling of sys/file.h to work in libiberty.
7630
b94b5c16
JL
7631Wed Feb 25 23:40:54 1998 Jeffrey A Law (law@cygnus.com)
7632
7633 * i386.c (struct machine_function): Add new fields for PIC stuff.
7634 (save_386_machine_status): Fix argument to xmalloc. Save pic_label_rtx
7635 and pic_label_name.
7636 (restore_386_machine_status): Corresponding changes.
7637 (clear_386_stack_locals): Also clear pic_label_rtx and pic_label_name.
7638
8dfafd99
JL
7639Wed Feb 25 01:31:40 1998 Jeffrey A Law (law@cygnus.com)
7640
7641 * c-parse.y (undeclared variable error): Tweak error message
7642 to be clearer.
7643
bb8ebb7f
RH
7644Tue Feb 24 23:54:07 1998 Richard Henderson <rth@cygnus.com>
7645
7646 * flags.h (g_switch_value, g_switch_set): Declare.
7647 * alpha.c (override_options): Set g_switch_value=8 if not set.
7648 * alpha/elf.h (CC1_SPEC): New.
7649 (ASM_SPEC): New.
7650 (LINK_SPEC): Pass along the -G value we were given.
7651 (LOCAL_ASM_OP): Remove.
7652 (ASM_OUTPUT_ALIGNED_LOCAL): Output to .bss or .sbss by size.
7653 (MAX_OFILE_ALIGNMENT): New.
7654 (BSS_SECTION_ASM_OP, SBSS_SECTION_ASM_OP, SDATA_SECTION_ASM_OP): New.
7655 (EXTRA_SECTIONS): Add sbss and sdata.
7656 (SECTION_FUNCTION_TEMPLATE): New.
7657 (EXTRA_SECTION_FUNCTIONS): Use it.
7658 (CTORS_SECTION_FUNCTION, DTORS_SECTION_FUNCTION): Remove.
7659 (SELECT_SECTION): Use sdata when small enough.
7660 * alpha/linux.h (ASM_SPEC): Remove.
b57062ca 7661
bb8ebb7f 7662
3e07bdbd
BH
7663Mon Feb 23 15:09:18 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
7664 * config.sub (sco5): Fix typo.
7665
9d1ebd25
MH
7666Mon Feb 23 18:19:31 1998 Manfred Hollstein <manfred@s-direktnet.de>
7667
7668 * config/t-linux (LIBGCC1, CROSS_LIBGCC1, LIBGCC1_TEST): Add macros and
7669 set to empty.
7670 * config/t-linux-aout (LIBGCC1, CROSS_LIBGCC1, LIBGCC1_TEST): Likewise.
7671 * config/alpha/t-linux: Remove file.
7672 * config/sparc/t-linux: Remove file.
7673 * config/m68k/t-linux (LIBGCC1, CROSS_LIBGCC1): Remove.
7674 * config/m68k/t-linux-aout (LIBGCC1, CROSS_LIBGCC1): Likewise.
7675 * configure.in (alpha*-*-linux-gnulibc1*): Use t-linux instead of alpha/t-linux
7676 for tmake_file.
7677 (alpha*-*-linux-gnu*): Likewise.
7678 (sparc-*-linux-gnulibc1*): Use t-linux instead of sparc/t-linux for tmake_file.
7679 (sparc-*-linux-gnu*): Likewise.
84bc3b4f
RL
7680
7681Mon Feb 23 10:47:39 1998 Robert Lipe <robertl@dgii.com>
7682 * collect2.c (ldd_file_name): Bracket declaration with same
7683 manifests as use.
7684 (full_real_ld_suffix): Deleted. Variable was calloced and
7685 written into, but never read.
7686
9e89df50
MS
76871998-02-23 Mike Stump <mrs@wrs.com>
7688
7689 * configure.in: Add support for i386-wrs-vxworks configuration.
7690 * i386/vxi386.h: New file.
7691
1160f9ec
BH
7692Sun Feb 22 21:16:51 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
7693
7694 * tree.c (contains_placeholder_p): Ensure function always returns
7695 a value.
7696 * sparc.md (movdi_sp64_insn): Add default case in enumeration switch.
7697 (movsf_const_insn, movdf_const_insn, movtf_const_insn): Likewise.
7698
328da75c
JL
7699Sun Feb 22 20:58:19 1998 Jeffrey A Law (law@cygnus.com)
7700
7701 * vms.h (SELECT_SECTION): Use TREE_CODE_CLASS correctly.
7702
deabc777
PE
77031998-02-22 Paul Eggert <eggert@twinsun.com>
7704
7705 * config/sparc/sol2-sld.h (LINKER_DOES_NOT_WORK_WITH_DWARF2):
7706 Define this new symbol.
7707 (DWARF2_DEBUGGING_INFO, DWARF_DEBUGGING_INFO): Do not #undef.
7708 * toplev.c (main): Do not default to DWARF2_DEBUG with -ggdb if
7709 LINKER_DOES_NOT_WORK_WITH_DWARF2 is defined.
7710
0e84e8fb
JW
7711Sun Feb 22 20:07:32 1998 Jim Wilson <wilson@cygnus.com>
7712
7713 * iris5.h (DWARF2_UNWIND_INFO): Define to 0.
7714 * iris5gas.h (DWARF2_UNWIND_INFO): Define to 1.
7715
9c37957a
RH
7716Sun Feb 22 15:29:48 1998 Richard Henderson <rth@cygnus.com>
7717
7718 * objc/Object.m (-error): Call objc_verror with our va_list.
7719
e3c49f52
DE
7720Sun Feb 22 09:45:39 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7721
7722 * collect2.c (scan_prog_file): Completely cover uses of variable
7723 `exports' with macro COLLECT_EXPORT_LIST.
7724
7725Sat Feb 21 20:36:23 1998 Jeff Law (law@cygnus.com)
d935d60e
JL
7726
7727 * version.c: Bump for snapshot.
7728
3c674857
MM
7729Fri Feb 20 16:22:13 1998 Michael Meissner <meissner@cygnus.com>
7730
7731 * sched.c (schedule_block): Remove code to get arguments from hard
7732 regs into pseudos early. Same as Aug 25, 1997 change to
7733 haifa-sched.c.
7734
c2d731c4
JM
77351998-02-20 Jason Merrill <jason@yorick.cygnus.com>
7736
7737 * collect2.c (main): Still handle !do_collecting for non-AIX targets.
7738
7d02bbef
JM
77391998-02-16 Mark Mitchell <mmitchell@usa.net>
7740
7741 * toplev.c (rest_of_compilation): Do not defer the output of a
7742 nested function.
7743
9766dbcf
MT
7744Fri Feb 20 10:39:47 1998 Michael Tiemann <michael@impact.tiemann.org>
7745
7746 * ginclude/va-mips.h (va_arg): Remove trailing space after '\'
7747 continuation character (line 243).
7748
01a7aaea
AS
7749Fri Feb 20 12:10:26 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
7750
7751 * genrecog.c (main): Remove duplicated sentence in emitted comment.
7752
db126753
DE
7753Thu Feb 19 22:36:53 1998 Andrey Slepuhin <pooh@msu.net>
7754 David Edelsohn <edelsohn@mhpcc.edu>
7755
7756 * collect2.c (XCOFF_SCAN_LIBS): Remove.
7757 (export_flag): New variable.
7758 (export_file): #ifdef COLLECT_EXPORT_LIST.
7759 (import_file, exports, imports, undefined): New variables.
7760 (libs, cmdline_lib_dirs, libpath_lib_dirs, libpath, libexts): Same.
7761 (dump_list, dump_prefix_list, is_in_list): New functions.
7762 (write_export_file): $ifdef COLLECT_EXPORT_LIST.
7763 (write_import_file, resolve_lib_name): New functions.
7764 (use_import_list, ignore_library): Same.
7765 (collect_exit): maybe_unlink import_file and #ifdef.
7766 (handler): Same.
7767 (main): New variable importf, #ifdef exportf. Move parsing of
7768 -shared before general argument parsing. Resolve AIX library
7769 paths and import libgcc.a symbols. Treat .so shared libraries the
7770 same as objects and .a libraries. Create alias for object_lst and
7771 increment it instead of original pointer. Scan AIX libraries as
7772 objects earlier instead of using scan_libraries. Perform AIX
7773 tlink later to resolve templates instead of forking ld.
7774 (GCC_OK_SYMBOL): Ensure symbol not in undef section.
7775 (GCC_UNDEF_SYMBOL): New macro.
7776 (scan_prog_file): Loop for members of AIX libraries. Handle
7777 export/import of ctors/dtors.
7778 (aix_std_libs): New variable.
7779 (scan_libraries, XCOFF): Delete.
7780
7781Thu Feb 19 22:36:52 1998 Robert Lipe <robertl@dgii.com>
7782
7783 * collect2.c (full_real_ld_suffix): #ifdef CROSS_COMPILE.
7784
e642002f
MS
77851998-02-19 Mike Stump <mrs@wrs.com>
7786
7787 * Makefile.in: Use $tooldir for sys-include to match toplevel
7788 configure.
7789
aff48bca
JL
7790Thu Feb 19 01:32:37 1998 Jeffrey A Law (law@cygnus.com)
7791 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7792
7793 * emit-rtl.c (gen_lowpart_common): Suppress last change if __complex__.
7794
7795 * emit-rtl.c (hard-reg-set.h): Include.
b57062ca 7796 (get_lowpart_common): Don't make new REG for hard reg in a
aff48bca
JL
7797 class that cannot change size.
7798 * Makefile.in (emit-rtl.o): Depend on hard-reg-set.h.
7799
7800 * combine.c: Revert previous patch.
7801
0a9bdce3
PE
78021998-02-19 Paul Eggert <eggert@twinsun.com>
7803
7804 * config/sparc/sol2-sld.h: New file.
7805 * configure.in (sparc-*-solaris2*): Use it when using the
7806 system linker.
7807
3875b31d
JL
7808Thu Feb 19 00:46:59 1998 Jeffrey A Law (law@cygnus.com)
7809
7810 * loop.c (force_movables): Fix typo.
7811
bb5fa67f
MH
7812Thu Feb 19 08:26:30 1998 Manfred Hollstein <manfred@s-direktnet.de>
7813
7814 * m88k.h: Change file pattern to match reality.
7815
7f83c0e7
JL
7816Wed Feb 18 23:19:52 1998 Jeffrey A Law (law@cygnus.com)
7817
7818 * varasm.c (output_constant_pool): Fix dumb thinko in last
7819 change.
dffc0da4
JL
7820
7821 * pa.h (ASM_OUTPUT_FUNCTION_PREFIX): Correctly translate from
7822 a function name to a section name.
7823
d9525bec
BK
78241998-02-18 Doug Evans <devans@cygnus.com>
7825
7826 * tree.h (merge_machine_{type,decl}_attributes): Declare.
7827 (split_specs_attrs, strip_attrs): Add prototypes.
7828 * tree.c (merge_machine_{type,decl}_attributes): New functions.
7829 * c-decl.c (duplicate_decls): Call merge_machine_decl_attributes.
7830 Update olddecl's attributes too.
7831 * c-common.c (strip_attrs): New function.
7832 * c-typeck.c (common_type): Call merge_machine_type_attributes.
7833 * varasm.c (make_function_rtl): New target macro REDO_SECTION_INFO_P.
7834 (make_decl_rtl): Likewise.
7835
78361998-02-18 Jim Wilson <wilson@cygnus.com>
7837
7838 * c-decl.c (shadow_tag_warned): Call split_specs_attrs.
7839
f9a366ac
JL
7840Wed Feb 18 09:09:50 1998 Jeffrey A Law (law@cygnus.com)
7841
7842 Remove this change until we can fix it correctly.
7843 * collect2.c: Bracket declaration of 'exportf' and
7844 'full_real_ld_suffix'.
7845
206ae7cf
BS
7846Wed Feb 18 08:44:25 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
7847
7848 * Makefile.in (STAGESTUFF): Add genrtl.c, genrtl.h and gengenrtl.
7849
0a7ed33c
BS
7850Tue Feb 17 23:30:20 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
7851
7852 * c-common.c (c_expand_start_cond, c_expand_end_cond,
7853 c_expand_start_else): Don't warn about non-ambiguous else even if
7854 braces are missing.
7855
68c9728a 7856Tue Feb 17 23:56:50 1998 Robert Lipe <robertl@dgii.com>
0a7ed33c 7857
68c9728a
RL
7858 * sco5.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT,
7859 ASM_OUTPUT_LONG_DOUBLE): Delete. Use the ones from i386.h
7860 instead.
7861
15941d29
RH
7862Tue Feb 17 22:56:14 1998 Richard Henderson <rth@cygnus.com>
7863
7864 * combine.c (simplify_rtx): Obey CLASS_CANNOT_CHANGE_SIZE when
7865 simplifying a subreg of a hard reg.
7866 (expand_compound_operation): Likewise.
7867 (force_to_mode): Likewise.
7868
5835e573
KG
7869Tue Feb 17 22:37:22 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7870
2fde567e
KG
7871 * fold-const.c: Include "system.h" to get stdlib.h and stdio.h.
7872 (lshift_double): Add parentheses around + or - inside shift.
7873 (rshift_double): Likewise.
7874 (size_int_wide): Explicitly set type of `bit_p' to `int'.
7875
7876 * Makefile.in (fold-const.o): Depend on system.h.
7877
8e85ff2c
KG
7878 * Makefile.in (gcc.o): Depend on system.h, in accordance with last
7879 change to gcc.c.
7880
5835e573
KG
7881 * haifa-sched.c: Include "system.h" to get <stdlib.h> and <stdio.h>.
7882 (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
7883 (sched_note_set): Remove unused parameter `b', all callers changed.
7884 (schedule_block): Likewise for `rgn'.
7885 (split_hard_reg_notes): Likewise for `orig_insn'.
7886 (check_live): Likewise for `trg'.
7887 (update_live): Likewise.
7888 (check_live_1): Explcitly declare variable `i' as int.
7889 (update_live_1): Likewise.
7890 (insn_issue_delay): Remove unused variable `link'.
7891 (sched_analyze_2): Add default case in enumeration switch.
7892 (schedule_insns): Remove unused variable `i'.
7893
7894 * Makefile.in ($(SCHED_PREFIX)sched.o): Depend on system.h.
7895
b1a0c816
JL
7896Tue Feb 17 22:31:04 1998 Jeffrey A Law (law@cygnus.com)
7897
7898 * loop.c (rtx_equal_for_loop_p): Add some braces to disambiguate
7899 a dangling else clause.
7900
365ca18b
GK
7901Tue Feb 17 21:28:12 1998 Gavin Koch <gavin@cygnus.com>
7902
7903 * mips/mips.h (CAN_ELIMINATE): Don't eliminate the frame
7904 pointer for the stack pointer in MIPS16 and 64BIT.
7905
feb60352
R
7906Tue Feb 17 21:17:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7907
7908 * rtl.h (force_line_numbers, restore_line_number_status): Declare.
7909 * emit-rtl.c (force_line_numbers, restore_line_number_status):
7910 New functions.
7911 * stmt.c (struct nesting): Replace seenlabel with line_number_status.
7912 (expand_start_case): Adjust to this change.
7913 (check_seenlabel): New function.
7914 (pushcase, pushcase_range, expand_endcase): Use it.
7915
93f83bd5
R
7916Tue Feb 17 10:14:32 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7917
7918 * i386.md (adddi3): Add =!r,0,0,X alternative.
7919
b9af8fb0
DE
7920Mon Feb 16 16:13:43 1998 David Edelsohn <edelsohn@mhpcc.edu>
7921
7922 * rs6000.h (MY_ISCOFF): Add numeric value of U803XTOCMAGIC.
7923 * x-aix31 (INSTALL): Delete.
7924
a4dee8a5
GK
7925Mon Feb 16 09:24:32 1998 Gavin Koch <gavin@cygnus.com>
7926
b57062ca 7927 * mips/mips.c (mips_expand_epilogue): Update tsize_rtx if
a4dee8a5
GK
7928 tsize changes to something other than zero.
7929
8898f8a1
GK
7930Mon Feb 16 09:11:48 1998 Gavin Koch <gavin@cygnus.com>
7931
7932 * ginclude/va-mips.h: Replace casts of pointers to int with
7933 casts of pointers to __PTRDIFF_TYPE__.
7934
9ba7a303
JC
7935Mon Feb 16 08:17:14 1998 John Carr <jfc@mit.edu>
7936
7937 * loop.c (strength_reduce, record_biv, record_giv): Use
7938 HOST_WIDE_INT_PRINT_DEC to print CONST_INT values.
7939
b7f6588d
JM
79401998-02-16 Jason Merrill <jason@yorick.cygnus.com>
7941
7942 * tree.c (first_rtl_op): New fn.
7943 (unsave_expr_now): Use it.
7944 * print-tree.c (print_node): Likewise.
7945 * tree.c (has_cleanups): New fn.
7946 * fold-const.c (fold, case CLEANUP_POINT_EXPR): Use it. Be more
7947 conservative about pushing the cleanup point down.
7948 * tree.h: Declare them.
7949
8e7336f8
JL
7950Sun Feb 15 23:28:44 1998 Jeffrey A Law (law@cygnus.com)
7951
7952 * toplev.c (flag_schedule_reverse_before_reload): Delete variable.
7953 (flag_schedule_reverse_after_reload): Likewise.
7954 (f_options): Remove reverse scheduling support.
7955 * flags.h (flag_schedule_reverse_before_reload): Delete declaration.
7956 (flag_schedule_reverse_after_reload): Likewise.
7957 * haifa-sched.c (rank_for_schedule): Remove support for reverse
7958 scheduling.
b57062ca 7959
79e11844
KG
7960Sun Feb 15 21:33:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7961
17248a6b
KG
7962 * gcc.c: Get system includes, prototypes and macros via "system.h"
7963 instead of doing it manually. Change all calls of the ctype
7964 macros to custom versions defined in "system.h".
7965
79e11844
KG
7966 * system.h: Fix return type of bcmp prototype from `void' to `int'.
7967 Make bcopy, bcmp and bzero prototypes explicitly `extern'.
7968 Add a prototype for getenv.
7969
c9b4de06
JW
7970Sun Feb 15 17:05:41 1998 Jim Wilson <wilson@cygnus.com>
7971
7972 * mips/mips.h (INITIAL_ELIMINATION_OFFSET): Readd Jun 6 change.
7973
9f8f10de
JC
7974Sun Feb 15 15:23:15 1998 John Carr <jfc@mit.edu>
7975
7976 * alias.c: Include <stdlib.h> and <string.h>.
7977 (init_alias_analysis): Pass NULL_RTX instead of 0 to record_set.
7978
d757d141
JL
7979Sat Feb 14 11:23:09 PST 1998 Jeff Law (law@cygnus.com)
7980
7981 * version.c: Bump for snapshot.
7982
7a0a1f09
RE
7983Sat Feb 14 05:08:21 1998 Richard Earnshaw (rearnsha@arm.com)
7984
7985 * arm.md (movsfcc): Also validate operands[3] when compiling hard
7986 float.
7987 (movdfcc): Only accept fpu_add_operand for operands[3].
7988
99e90438
RE
7989 * arm/t-semi (STMP_FIXPROTO): Define to nothing.
7990 * arm/t-semiaof (STMP_FIXPROTO): Likewise.
7991
29a82058
JL
7992Sat Feb 14 02:02:41 1998 Jeffrey A Law (law@cygnus.com)
7993
7994 * varasm.c (output_constant_pool): Bring back 'done' label inside
7995 an appropriate #ifdef.
7996
b57062ca 7997 * bitmap.c (bitmap_element_allocate): Wrap variable 'i' in an
29a82058
JL
7998 appropriate #ifdef.
7999 (bitmap_copy, bitmap_operation): Likewise.
8000 * combine.c (combinable_i3pat): Similarly for 'src'.
8001 * function.c (fixup_var_refs_1): Similarly for 'outerdest'.
8002 (locate_and_pad_parm): Similarly for 'reg_parm_stack_space'.
8003 * regclass.c (copy_cost): Similarly for 'secondary_class'.
8004 * reload.c (make_memloc): Simliarly for 'i'.
8005 (find_reloads_address_1): Similarly for 'link'.
8006 * reload1.c (reload): Similarly for 'previous_frame_pointer_needed'.
8007 (emit_reload_insns): Similarly for 'second_reloadreg'.
8008 * unroll.c (iteration_info): Similarly for 'v'.
8009
8010 * caller-save.c (insert_save_restore): Remove unused variable 'i'.
8011 * calls.c (expand_call): Similarly for 'i'.
8012 (emit_library_call, emit_library_call_value): Similarly for 'mode'.
8013 * fold-const.c (strip_compund_expr): Similarly for 'type'.
8014 * function.c (fixup_var_refs_1): Similarly for 'width'.
8015 (fixup_memory_subreg): Similarly for 'saved'.
8016 (locate_and_pad_parm): Similarly for 'boundary_in_bytes.'
8017 (setjmp_protect): Similarly for 'sub'.
8018 (thread_prologue_and_epilogue_insns): Similarly for 'insn'.
8019 * loop.c (record_giv): Similarly for 'p'.
8020 (combine_givs): Similarly for 'temp_iv'.
8021 (indirect_jump_in_function_p): Similarly for 'is_indirect_jump'.
8022 * recog.c (validate_replace_rtx_1): Similarly for 'width'.
8023 * tree.c (get_set_constructor_bytes): Similarly for 'vals'.
8024 * unroll.c (unroll_loop): Similarly for 'copy'.
8025 (iteration_info): Similarly for 'b'.
8026 * varasm.c (assemble_string): Similarly for 'i'.
8027 * i386.h (LEGITIMIZE_ADDRESS): Similarly for 'orig_x'.
8028
7d02bbef
JM
80291998-02-13 Martin von Loewis <loewis@informatik.hu-berlin.de>
8030
8031 * c-lang.c (lang_print_xnode): New function.
8032 * objc/objc-act.c (lang_print_xnode): Likewise.
8033 * print-tree.c (print_node): Call it
8034
e3e7774e
JW
8035Fri Feb 13 14:38:34 1998 Jim Wilson <wilson@cygnus.com>
8036
8037 * dwarf2out.c (decl_scope_node): New type.
8038 (decl_scope_table): Change type to use it.
8039 (decl_scope_table_allocated, decl_scope_depth): Change type to int.
8040 (push_decl_scope): Use new type. New locals containing_scope, i.
8041 Add code to handle setting previous field.
8042 (scope_die_for): Change type of local i to int. Add code to use
8043 previous field.
8044 (dwarf2out_init): Use new type.
8045
442f0a30
JM
80461998-02-13 Jason Merrill <jason@yorick.cygnus.com>
8047
8048 * except.c (emit_throw): Lose throw_used.
8049
fcdc0d6e
R
8050Fri Feb 13 20:36:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
8051
8052 * sched.c (update_flow_info, REG_WAS_0): Ignore if setting insn
8053 was deleted.
8054 * haifa-sched.c (update_flow_info, REG_WAS_0): Likewise.
8055
b7673cdb
JL
8056Fri Feb 13 12:18:40 1998 Jeffrey A Law (law@cygnus.com)
8057
8058 * genextract.c (main): Fix typo.
8059
9e4767ca 8060Fri Feb 13 08:41:49 1998 Robert Lipe <robertl@dgii.com>
69d4ca36 8061
b57062ca 8062 * c-lang.c (finish_file): Bracket declaration of static_ctors,
69d4ca36
RL
8063 static_dtors.
8064
8065 * calls.c (expand_call): Bracket declaration of 'rtx_before_call',
8066 'old_stack_arg_under_construction'
b57062ca 8067 (emit_library_call): Bracket declaration of 'upper_bound',
69d4ca36
RL
8068 'lower_bound', 'i', 'reg_parm_stack_space'
8069 (emit_library_call_value): Likewise.
b57062ca 8070 (store_one_arg):
69d4ca36
RL
8071
8072 * collect2.c: include <unistd.h> when appropriate.
8073 Bracket declaration of 'exportf' and 'full_real_ld_suffix'.
8074
8075 * emit-rtl.c (prev_cc0_setter): Remove unused variable 'link'.
b57062ca 8076
69d4ca36
RL
8077 * explow.c (plus_constant_for_output_wide): Remove unused variable
8078 'code'.
b57062ca 8079 (memory_address): Remove unused variable 'orig_x'.
69d4ca36
RL
8080
8081 * genattrtab.c (make_canonical): Remove unreferenced label 'cond:'.
8082 (write_const_num_delay_slots): Remove unused variable 'i'.
8083
8084 * genopinit.c (main): Remove unused variables 'dummy', 'insn_ptr'.
8085 (gen_insn): Remove unused variable 'obstack_ptr'.
8086
8087 * libgcc2.c (__bb_exit_func): Remove unused variables 'ret',
8088 'j', 'tmp', 'i'.
8089 (__bb_exit_trace_func): Remove unused variable 'e'.
8090
8091 * optabs.c (expand_binop): remove unused variables 'lhs', 'rhs',
8092 'funexp'.
8093 (expand_unop): Remove unused variable 'funexp'.
b57062ca 8094 (expand_complex_abs): Remove unused variable 'funexp'.
69d4ca36
RL
8095 (init_optabs): Bracket declaration of 'j'.
8096 (init_complex_libfuncs): Deleted. Dead static function.
b57062ca 8097
69d4ca36
RL
8098 * profile.c (branch_prob): Remove unused variables 'insn', 'dest'.
8099
8100 * reg-stack.c: Fix typo in proto for 'get_asm_operand_lengths'
8101 (reg_to_stack): 'initialized', 'before_function_beg'
8102 explictly type as ints instead of defaulting.
8103 (emit_swap_insn): Remove unused variable 'i2'.
8104 (compare_for_stack_reg): Remove unused variable 'src_note'.
8105
8106 * rtlanal.c (computed_jump_p): Remove unused variable 'computed_jump'.
8107
8108 * sched.c (actual_hazard): Bracket declaration of 'this_cost'.
8109
8110 * stmt.c (add_case_node): Add parens for assignment used as truth.
8111 (all_cases_count): Remove unused variable 'count_high'.
8112 (mark_seen_cases): Remove unused variable 'i'.
8113 (check_for_full_enumeration_handling): Remove unused variable 't'.
8114 Bracket declaration of 'all_values', 'l'.
b57062ca 8115
69d4ca36
RL
8116 * tlink.c: Include <stdlib.h>, <unistd.h>, <string.h>/<strings.h>.
8117
b57062ca
UD
8118 * varasm.c (assemble_string): Remove unused variable 'i'.
8119 (immed_double_const): Remove unused variable 'in_current_obstack'.
69d4ca36
RL
8120 (immed_real_const_1): Likewise.
8121 (output_constant_pool): Remove unreferenced label 'done'.
8122 (output_constant): Remove unused variable 'x'.
b57062ca 8123
69d4ca36
RL
8124 * i386/i386.h (ENCODE_SECTION_INFO): TREE_PUBLIC is an int, not
8125 a string.
8126
8127 * i386/sco5.h (ASM_OUTPUT_ASCII): Add parens for assignment used
8128 as truth.
8129
e3258cef
R
8130Fri Feb 13 10:21:41 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
8131
8132 * combine.c (can_combine_p): Handle USEs in PARALLELs.
8133
1398405b
L
8134Fri Feb 13 01:34:14 1998 H.J. Lu (hjl@gnu.org)
8135
8136 * config/linux.h (LIB_SPEC): Add -lc for -shared if
8137 USE_GNULIBC_1 is not defined.
8138 * config/sparc/linux.h; Ditto.
8139
8140 * config/sparc/linux64.h (LIB_SPEC): Add -lc for -shared.
8141
8142 * config/alpha/linux-elf.h (LIB_SPEC): New. Defined if
8143 USE_GNULIBC_1 is not defined.
8144
03453a9f
FS
8145Fri Feb 13 01:29:29 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
8146
8147 * rs6000/sysv4.h (ENDFILE_SPEC): add missing %(endfile_linux)
8148 for -mcall-linux
8149
aca69483 8150Fri Feb 13 01:23:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 8151
aca69483
KG
8152 * system.h: New file to get common systems includes and various
8153 definitions and declarations based on autoconf macros.
8154
5e0e0f03
JL
8155Fri Feb 13 00:46:19 1998 Jeffrey A Law (law@cygnus.com)
8156
8157 * cccp.c (new_include_prefix): Correctly handle -I./.
8158
89e9f3a8
MM
8159Thu Feb 12 20:16:35 1998 Michael Meissner <meissner@cygnus.com>
8160
8161 * rs6000.md: Replace gen_rtx (CONST_INT,...) with GEN_INT.
8162
8bd6ecc2 8163Thu Feb 12 16:45:17 1998 Robert Lipe <robertl@dgii.com>
89e9f3a8 8164
b57062ca 8165 * expr.c (expand_assignment): Correct typo exposed by -Wall.
8bd6ecc2
RL
8166 offset should have been a truth value, not an assignment.
8167
614bb5d4
JL
8168Thu Feb 12 15:26:50 1998 Jeffrey A Law (law@cygnus.com)
8169
8170 * cse.c (delete_dead_from_cse): If a libcall produces a constant
8171 result and that result can be substituted into SET_SRC of the
8172 insn with the REG_RETVAL note, then perform the substitution
8173 and delete the libcall.
8174
00bb4b62
GK
8175Thu Feb 12 14:04:09 1998 Gavin Koch <gavin@cygnus.com>
8176
b57062ca 8177 * mips.md (trucndihi2,truncdiqi2): Change these to support
00bb4b62
GK
8178 mips16.
8179
3871c609
GK
8180Thu Feb 12 11:34:55 1998 Gavin Koch <gavin@cygnus.com>
8181
8182 * mips/mips.c (movdi_operand): Direct referances to symbols
8183 that arn't mips16 consts in mips16 mode arn't valid operands.
8184
8185 * mips/mips.c (mips_move_2words): Add gprel handling.
8186
2e72fa6a
GK
8187Thu Feb 12 11:18:37 1998 Gavin Koch <gavin@cygnus.com>
8188
b57062ca 8189 * mips.md (extendsidi2): Allow extension to/from a non-mips16
2e72fa6a
GK
8190 register.
8191
a4910340
ML
8192Thu Feb 12 00:04:16 1998 Marc Lehmann <pcg@goof.com>
8193
8194 * i386.c: Conditionally include <stdlib.h>, <string.h>, and
8195 <strings.h>.
8196
cc1e5b9a
KG
8197Wed Feb 11 11:43:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8198
8199 * Makefile.in (WARN_CFLAGS): New variable.
8200 (bootstrap, bootstrap2, bootstrap3, bootstrap4): Use it.
8201
53949fac
MM
82021998-02-11 Mark Mitchell <mmitchell@usa.net>
8203
8204 * config/i386/i386.c (reg_mentioned_in_mem): Don't abort when
8205 falling through default case in switch.
8206 (i386_aligned_p): Likewise.
8207
9504c31c
LI
8208Wed Feb 11 12:59:56 1998 Lee Iverson <leei@Canada.AI.SRI.COM>
8209
8210 * mips/mips.h (mips_abi_string): Correct typo in comment.
8211
7e4e0956
GK
8212Wed Feb 11 08:29:56 1998 Gavin Koch <gavin@cygnus.com>
8213
8214 * mips/mips.md (movdi): These PLUS's need to be Pmode.
8215
8fb3ae15
KG
8216Wed Feb 11 01:47:54 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8217
8218 * Makefile.in (dwarf2out.o, emit-rtl.o, jump.o, cse.o, unroll.o,
8219 reorg.o, regmove.o): Depend on insn-codes.h, it gets included
8220 indirectly via expr.h.
8221
a2d53b28
RH
8222Wed Feb 11 01:44:13 1998 Richard Henderson <rth@cygnus.com>
8223
8224 * stor-layout.c (layout_type): Do upper - lower in the native type,
8225 so as to properly handle negative indices.
8226
381127e8
RL
8227Wed Feb 11 01:35:55 1998 Robert Lipe <robertl@dgii.com>
8228
8229 * except.c (start_dynamic_cleanup): Remove unused variable 'dhc'.
8230 (expand_eh_region_start_tree): Remove unused variable 'note'.
8231 (exception_optimize): Remove unused variable 'regions'.
8232 (expand_builtin_eh_stub): Remove unused variable 'temp'.
8233 (copy_eh_entry): Deleted. Dead function.
8234
b57062ca 8235 * expr.c (move_block_to_reg) Bracket declaration of 'pat' and
381127e8
RL
8236 'last' with same #if HAVE_load_multiple as use of it.
8237 (move_block_from_reg): Likewise.
8238 (emit_move_insn_1): Remove unused variable 'insns'.
b57062ca
UD
8239 (store_constructor): Bracket declaration of startb, endb with
8240 #if TARGET_MEMFUNCTIONS. Remove unused variables 'set_word_size'
381127e8 8241 'target', and 'xtarget'.
b57062ca 8242 (expand_builtin_setjmp): Remove unused variables 'op0',
381127e8 8243 'next_arg_reg', 'old_inhibit_defer_pop'.
b57062ca 8244 (expand_builtin): Remove unused variable 'offset'.
381127e8
RL
8245 (do_store_flag): Remove unused variables 'pattern', 'jump_pat'.
8246 (emit_queue): Add parens for assignment used as conditional.
8247 (expand_expr): case TARGET_EXPR: Remove unused variable 'temp'.
8248
00c79232
ML
8249Wed Feb 11 01:30:49 1998 Marc Lehmann <pcg@goof.com>
8250
b57062ca 8251 * i386.c: Added include for recog.h.
00c79232
ML
8252 (override_options): Removed unused variable p. Initialized regno to
8253 avoid warning.
8254 (order_regs_for_local_alloc): Initialized regno to avoid warning.
8255 (legitimize_address): Likewise for 'other'.
8256 (i386_aligned_reg_p): Added default case with abort ().
8257 (print_operand): Likewise.
8258 (reg_mentioned_in_mem): Likewise.
8259 (ix86_expand_binary_operator): Removed unused variables i & insn.
8260 (ix86_expand_unary_operator): Removed unused variable insn.
8261 (output_fp_cc0_set): Removed unused variable unordered_label.
8262
f64cecad
JC
8263Wed Feb 11 01:23:03 1998 John F. Carr <jfc@mit.edu>
8264
8265 * i386.c, i386.h, i386.md: Change gen_rtx (X, ...) to gen_rtx_X (...).
8266 Use GEN_INT instead of gen_rtx (CONST_INT). Make printf arguments
8267 and format string match.
8268
0200b5ed
JL
8269Wed Feb 11 01:17:39 1998 Jeffrey A Law (law@cygnus.com)
8270
8271 * flow.c (life_analysis): Do not conside the stack pointer live at
8272 the end of a function if the fucntio ncalls alloca.
8273 (mark_used_regs): Similarly.
8274
74ccf2c2
JC
82751998-02-10 John F Carr <jfc@mit.edu>
8276
8277 * config/sparc/sparc.md (movdi_v8plus): Output stx on alternative
8278 1, fzero on alternative 8.
8279
60e2d0ca
RK
8280Tue Feb 10 09:02:19 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
8281
8282 * rs6000.c (setup_incoming_varargs): Always set rs6000_sysv_varargs_p.
8283
2fd0af53
R
8284Tue Feb 10 03:35:43 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
8285
8286 * reload.c (find_reloads_toplev): Handle arbitrary non-paradoxical
8287 SUBREGs of CONST_INTs.
8288
a96c3544
JC
8289Mon Feb 9 17:52:36 1998 John Carr <jfc@mit.edu>
8290
8291 * mips.c (print_operand, function_prologue): Make printf format
8292 match argument type.
8293
2514cbc9
KG
8294Mon Feb 9 02:37:25 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8295
8296 * alpha.c (alpha_return_addr): Remove unused variable `first'.
8297 (alpha_ra_ever_killed): Remove unused variables `ra' and `i'.
8298 (output_epilog): Remove unused variable `frame_size_from_reg_save'.
8299
72b0c616
RK
8300Sun Feb 8 14:56:03 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
8301
8302 * loop.c (strength_reduce): When placing increment for auto-inc
8303 case, do comparison in loop order.
b57062ca 8304
2e0dd623
JC
8305Sun Feb 8 13:21:38 1998 John Carr <jfc@mit.edu>
8306
8307 * bitmap.c (bitmap_debug_file): HOST_PTR_PRINTF converts a pointer,
8308 not a HOST_WIDE_INT.
8309
8310 * calls.c (expand_call): Change test of expand_inline_function
8311 return value to stop compiler warning.
8312
8313 * genattrtab.c (RTL_HASH): Cast pointer to long, not HOST_WIDE_INT.
8314
7bf825d2
JW
8315Sun Feb 8 12:04:24 1998 Jim Wilson (wilson@cygnus.com)
8316 Jeff Law (law@cygnus.com)
8317
8318 * regmove.c: Fix various minor formatting problems.
8319 (optimize_reg_copy_1): Stop search at CALL_INSNs if flag_exceptions
8320 is true. Make end of basic block tests consistent through regmove.c.
8321 (optimize_reg_copy_2, optimize_reg_copy_3): Likewise.
8322 (fixup_match_2, fixup_match_1, regmove_optimize): Likewise.
8323
7d4679ea
KG
8324Sun Feb 8 01:49:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8325
8326 * gansidecl.h: Check for a conflicting macro definition before
8327 attempting to prototype bcopy, bcmp or bzero.
8328
b515ab3d
JL
8329Sun Feb 8 00:09:59 1998 Jeffrey A Law (law@cygnus.com)
8330
060fbabf
JL
8331 * expr.c (clear_pending_stack_adjust): Handle case where a function
8332 calls alloca, but the user has specified -fomit-fframe-pointer.
8333
b515ab3d
JL
8334 * function.c (assign_parms): Fix typo in last change.
8335
ccd043a9
RL
8336Sat Feb 7 23:54:29 1998 Robert Lipe <robertl@dgii.com>
8337
ededb2fc
RL
8338 * gcc.c: Include <strings.h>/<string.h>, <stdlib.h>, <unistd.h>,
8339 <fcntl.h>.
8340 (free_path_suffix): Remove unreferenced static function.
8341 (process_command): Remove unused variable temp.
8342 (default_arg): Remove unused variable i.
8343 (do_spec_1): Add parens for assignment used as truth value.
8344 (main): Likewise.
8345 (validate_all_switches): Likewise.
8346 (main): Remove unused variables i, first_time>
8347
ccd043a9
RL
8348 * c-common.c: Include <stdlib.h> and <string.h>/<strings.h>.
8349
8350 * calls.c (expand_call): Remove unused variables funtree,
8351 n_regs, and tmpmode.
8352
8353 * dbxout.c, except.c: Include <string.h>/<strings.h>.
8354
8355 * explow.c: (plus_constant_for_output_wide) Removed unused
8356 variable all_constant.
8357
8358 * c-decl.c, genattr.c, genattrtab.c, getconfig.c, genemit.c
8359 genextract.c, genflags.c, genopinit.c genoutput.c, genpeep.c,
8360 genrecog.c, global.c, integrate.c , stupid.c : Include
8361 <stdlib.h>.
8362
8363 * genextract.c: (walk_rtx) Remove unused variable link.
8364
8365 * genrecog.c: (concat) Remove unreferenced static function.
8366
8367 * prefix.c: Include <string.h>/<strings.h>, <stdlib.h>
8368
b57062ca
UD
8369 * stmt.c: Include <stdlib.h>.
8370 (expand_asm_operands): Remove unused variable val1.
ccd043a9
RL
8371 (expand_return): Remove unused variable block.
8372 (pushcase): Remove unused variables l and n.
8373 (pushcaserange): Likewise.
8374
8375 * unroll.c (unroll_loop): Remove unused variable temp.
8376
6553db01
GM
8377Sat Feb 7 23:46:09 1998 Greg McGary <gkm@gnu.org>
8378
8379 * c-decl.c (pushdecl): Set DECL_ORIGINAL_TYPE once only.
8380
8479e1db
KG
8381Sat Feb 7 15:11:28 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8382
8383 * aclocal.m4 (GCC_FUNC_PRINTF_PTR): New macro to test the printf
8384 functions for whether they support the %p format specifier.
8385 * acconfig.h (HOST_PTR_PRINTF): Insert stub for autoconf.
8386 * configure.in (GCC_FUNC_PRINTF_PTR): Use it.
8387 * configure, config.in: Rebuild.
8388
bf9c83fe
JW
8389Fri Feb 6 14:20:16 1998 Jim Wilson <wilson@cygnus.com>
8390
8391 * function.c (assign_parms): New variable named_arg, with value
8392 depending on STRICT_ARGUMENT_NAMING. Use instead of ! last_named.
8393
09e4daf5
GK
8394Fri Feb 6 14:34:28 1998 Gavin Koch <gavin@cygnus.com>
8395
b57062ca 8396 * mips/t-r3900: New - same as t-ecoff but eliminate
09e4daf5
GK
8397 multilibs: mips1 and mips3.
8398 * configure.in (tx39*): Use new mips/t-r3900.
8399 * configure: Rebuild.
8400 * mips/r3900.h (MULTILIB_DEFAULTS): Eliminate mips1.
8401
b57d9225
JM
84021998-02-06 Jason Merrill <jason@yorick.cygnus.com>
8403
8404 * dwarf2out.c: Add old_args_size.
8405 (dwarf2out_args_size): Use it.
8406 (dwarf2out_begin_prologue): Initialize it.
8407 (dwarf2out_stack_adjust): If !asynchronous_exceptions, save up
8408 pushed args until we see a call.
8409 * final.c (final_scan_insn): Hand CALL_INSNs off to the dwarf2 code
8410 before outputting them.
8411
84121998-02-06 Kriang Lerdsuwanakij <lerdsuwa@scf.usc.edu>
8413
8414 * cplus-dem.c (demangle_template_template_parm): New function.
8415 (demangle_template): Handle template template parameters.
8416
259620a8
MM
84171998-02-02 Mark Mitchell <mmitchell@usa.net>
8418
8419 * calls.c (expand_call): Don't confuse member functions named
8420 realloc, setjmp, and so forth with the standard library
8421 functions of the same names.
8422
78418280
JL
8423Thu Feb 5 21:59:49 1998 Jeffrey A Law (law@cygnus.com)
8424
8425 * stmt.c (expand_asm_operands): Correctly identify asm statements
94e5565f 8426 no output operands.
78418280 8427
6d819282 8428Thu Feb 5 21:56:06 1998 Mumit Khan <khan@xraylith.wisc.edu>
b57062ca 8429
6d819282
MK
8430 * c-common.c (decl_attributes): Flag unrecognized attribute
8431 functions as warnings instead of as errors.
8432
aec98e42
ML
84331998-02-05 Marc Lehmann <pcg@goof.com>
8434
8435 * integrate.c (INTEGRATE_THRESHOLD): Inline only small functions
8436 when -Os is specified.
8437 * toplev.c (main): Don't disable flag_inline_functions anymore when
8438 -Os is in effect.
8439
1230327b
R
8440Fri Feb 6 00:27:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
8441
8442 * regmove.c: Update.
8443 * flags.h (flag_regmove): Declare.
8444 * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Don't declare.
8445 * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2):
8446 Moved into regmove; changed caller.
8447 * toplev.c (rest_of_compilation): Call regmove_optimize also for
8448 expensive_optimizations.
8449
1aca1e76
JL
8450Thu Feb 5 13:38:42 PST 1998 Jeff Law (law@cygnus.com)
8451
8452 * version.c: Bump for snapshot.
8453
2993ce4c
R
8454Thu Feb 5 01:45:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
8455 Undo this change (the problem was actually in reload):
8456 Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
8457
8458 * sh.md (movqi_i+1): New peephole.
8459
0340ed6c
JL
8460Tue Feb 3 01:11:12 1998 Jeffrey A Law (law@cygnus.com)
8461
e535528b
JL
8462 * jump.c (jump_optimize): Lose calls to modified_in_p they are
8463 not needed anymore due to changes elsewhere in jump.c.
8464
0340ed6c
JL
8465 * jump.c (jump_optimize): Fix first arg to modified_in_p in
8466 previous change.
8467
6fd1c67b
RH
8468Mon Feb 2 19:18:14 1998 Richard Henderson <rth@cygnus.com>
8469
8470 * expr.c (expand_builtin_setjmp): Accept two new arguments for
8471 the labels to branch to on first and subsequent executions. Don't
8472 play with __dummy. Rename `setjmp' insn to `builtin_setjmp_setup',
8473 and provide it with the jmp_buf. Use only one of
8474 `builtin_setjmp_receiver' or `nonlocal_goto_receiver',
8475 and provide the former with the target label.
8476 (expand_builtin) [BUILTIN_SETJMP]: Generate a label for use by setjmp.
8477 (expand_builtin) [BUILTIN_LONGJMP]: Split out to ...
8478 (expand_builtin_longjmp): ... here. Recognize a `builtin_longjmp'
8479 insn to replace all of the normal nonlocal_goto code. Don't play
8480 with __dummy. Correct arguments to nonlocal_goto.
8481 * expr.h (expand_builtin_setjmp): Update prototype.
8482 * except.c (start_dynamic_handler): When using builtin_setjmp,
8483 generate more accurate flow information.
8484
8485 * alpha.md (nonlocal_goto_receiver_osf): Delete.
8486 (nonlocal_goto_receiver_vms): Rename to nonlocal_goto_receiver.
8487 (builtin_longjmp, builtin_setjmp_receiver): New.
8488 * sparc.md (update_return): Disambiguate unspec number.
8489 (nonlocal_goto): Rearrange arguments to match caller in except.c.
8490 (builtin_setjmp_setup): Rename from setjmp. Match and ignore the
8491 jmp_buf operand.
8492 * mips.md (nonlocal_goto_receiver, builtin_setjmp_receiver): Remove.
8493 (builtin_setjmp_setup*, builtin_longjmp): New.
8494
95936d18
JC
8495Mon Feb 2 16:43:10 1998 John Carr <jfc@mit.edu>
8496
8497 * mips.md: Change gen_rtx (CONST_INT) to GEN_INT.
8498
c120c689
JW
8499Mon Feb 2 13:06:47 1998 Jim Wilson <wilson@cygnus.com>
8500
8501 * vmsconfig.com: Remove bytecode references.
8502
1a56b81f
AS
85031998-01-30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
8504
91193900
AS
8505 * dwarf2out.c (dwarf2out_frame_init): Undo last change, so that
8506 -fno-sjlj-exceptions works for a target that defines
8507 DWARF2_UNWIND_INFO as zero.
8508
1a56b81f
AS
8509 * regmove.c (fixup_match_1): Undo last change which removed some
8510 "useless" code, and add a comment explaining this.
8511
e4b3de45
GK
8512Mon Feb 2 10:47:14 1998 Gavin Koch (gavin@cygnus.com)
8513
8514 * mips.c (mips_expand_prologue): Change uses of TARGET_64BIT
8515 to TARGET_LONG64.
8516
2aabb736
KK
8517Mon Feb 2 10:38:41 1998 Klaus Kaempf <kkaempf@progis.de>
8518
8519 * makefile.vms: Remove bytecode references.
8520 Create genrtl files.
8521
7457661d
MH
8522Mon Feb 2 02:08:04 1998 Michael P. Hayes <michaelh@ongaonga.chch.cri.nz>
8523
8524 * jump.c (jump_optimize): Allow conditional loading of floating point
8525 constants and constants from memory. Reinstalled modified_in_p tests.
8526
460f50dc
R
8527Mon Feb 2 01:38:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
8528
8529 * loop.c (get_condition): Handle sign-extended constants.
8530
7a6df7f9
HPN
8531Mon Feb 2 01:22:46 1998 Hans-Peter Nilsson <hp@axis.se>
8532
db771a3c
HPN
8533 * expr.c (emit_push_insn): Add code to use movstrti if present.
8534
7a6df7f9
HPN
8535 * expr.c (emit_push_insn): Use same max-move-amount for movstrhi
8536 and movstrqi as in emit_block_move ().
8537
ceb6edf2
TM
8538Mon Feb 2 00:09:52 1998 Toon Moene <toon@moene.indiv.nluug.nl>
8539
8540 * config/m68k/x-next: Remove /NextDeveloper/Headers from
8541 the directories to fixinclude - /usr/include is a link
8542 to it and hence its contents are fixed by default.
8543
9cddeb31
FS
8544Sun Feb 1 14:15:33 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
8545
8546 * rs6000/linux.h: define JUMP_TABLES_IN_TEXT_SECTION
8547
d2f05a0a
KK
8548Sun Feb 1 13:01:15 1998 Klaus Kaempf <kkaempf@progis.de>
8549
8550 * cccp.c (main): Predefine __VMS_VER on VMS.
8551
f8dac6eb
R
8552Sun Feb 1 12:39:53 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
8553
8554 * expr.c (get_inner_reference): Use sbitsizetype for type sizes.
8555 * fold-const.c (size_int): Replace with
8556 (size_int_wide).
8557 (make_bit_field_ref): Use bitsize_int for bit position.
8558 * stor-layout.c (sizetype): Delete.
8559 (sizetype_tab, sbitsizetype, ubitsizetype): Declare.
8560 (layout_record, layout_union, layout_type):
8561 Use bitsize_int for bit size.
8562 (set_sizetype): New function.
8563 (make_signed_type, make_unsigned_type): Use it.
8564 * c-decl.c (init_decl_processing): Likewise.
8565 * tree.h (size_int): Don't delcare, #define.
8566 (size_int_wide, sizetype_tab, sbitsize, ubitsize): Declare.
8567 (set_sizetype): Declare.
8568 (bitsize_int, size_int_2, BITS_PER_UNIT_LOG, sizetype, bitsizetype):
8569 Define.
8570 * c-typeck.c (c_sizeof, c_sizeof_nowarn, c_size_in_bytes):
8571 Convert result to sizetype.
8572 (really_start_incremental_init, push_init_level):
8573 Set type of constructor_bit_index to sbitsizetype.
8574 (push_init_level): Use unsigned arithmetic to determine padding.
8575 (output_init_element): Likewise.
8576
b577a8ff
JL
8577Sun Feb 1 03:32:07 1998 Jeffrey A Law (law@cygnus.com)
8578
8579 * combine.c (simplify_shift_const): Fix typo in last change.
8580
6e0ef100
JC
8581Sun Feb 1 02:50:46 1998 John Carr <jfc@mit.edu>
8582
8583 * combine.c (simplify_shift_const): (lshiftrt (truncate (lshiftrt)))
8584 is (truncate (lshiftrt)).
8585
4208b40f
RH
8586Sun Feb 1 01:06:53 1998 Richard Henderson <rth@cygnus.com>
8587
8588 * alpha.c (alpha_expand_unaligned_load): Use expand_binop properly.
8589 Make sure result winds up in TGT.
8590 (alpha_expand_unaligned_store): Use expand_binop properly. Allow
8591 src to be other than DImode.
8592 (alpha_expand_unaligned_load_words): Tidy. Take an offset argument.
8593 (alpha_expand_unaligned_store_words): Likewise.
8594 (alpha_expand_block_move): Use REGNO_POINTER_ALIGN. Restructure so
8595 that source and destination are separately optimized for alignment.
8596 (alpha_expand_block_clear): Use REGNO_POINTER_ALIGN.
8597
82301b88
JL
8598Sun Feb 1 01:55:09 1998 Jeffrey A Law (law@cygnus.com)
8599
8600 * mips.md (adddi3_internal_2): Be consistent with adddi3 expander
8601 with handling of -32768.
8602
a81fb89e
KG
8603Sun Feb 1 01:48:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8604
8605 * aclocal.m4 (GCC_NEED_DECLARATION): Modify macro to accept a
8606 shell variable argument instead of only hard coded functions.
8607 (GCC_NEED_DECLARATIONS): New macro to accept multiple functions.
8608
8609 * configure.in: Collapse multiple calls to AC_CHECK_FUNCS into one
8610 call. Collapse multiple calls to GCC_NEED_DECLARATION into one
8611 call to GCC_NEED_DECLARATIONS (new macro.) Check if we need
8612 declarations for bcopy, bcmp and bzero.
8613
8614 * acconfig.h: Add stubs for bcopy, bcmp and bzero declarations.
8615
8616 * gansidecl.h: If we have bcopy but don't declare it, then do so.
8617 Likewise for bcmp and bzero. Only define macros for bcopy, bcmp,
8618 bzero, index and rindex if they aren't already present.
8619
eed90b2c
JL
8620Sat Jan 31 11:26:58 1998 Jeffrey A Law (law@cygnus.com)
8621
b57062ca 8622 * toplev.c (close_dump_file): Wrap function prototype for
eed90b2c
JL
8623 argument "func" in PROTO.
8624 (dump_rtl): Likewise.
8625
bfd6bc60
JC
8626Fri Jan 30 22:30:39 1998 John Carr <jfc@mit.edu>
8627
8628 * sparc.c (sparc_override_options): Make v8plus and ultrasparc set
8629 MASK_V8PLUS.
8630 (output_function_epilogue): Omit epilogue if nothing drops through.
8631 (output_move_double): Supress int ldd usage on ultrasparc and v9.
8632 (registers_ok_for_ldd_peep): Likewise.
8633 (print_operand): Supress b,a on ultrasparc. Let Y accept a constant.
8634 (ultrasparc_adjust_cost): New function.
8635 (sparc_issue_rate): New function.
8636 * sparc.h (MASK_VIS, TARGET_VIS): New
8637 (MASK_V8PLUS, TARGET_V8PLUS): New.
8638 (TARGET_HARD_MUL32, TARGET_HARD_MUL): New.
8639 (TARGET_SWITCHES): Add vis and v8plus.
8640 (REG_CLASS_FROM_LETTER): Accept d and b for VIS.
8641 (REGISTER_MOVE_COST): FP<->INT move cost 12 for ultrasparc.
8642 (RTX_COSTS): Use TARGET_HARD_MUL
8643 (ADJUST_COST): Call ultrasparc_adjust_cost.
8644 (ISSUE_RATE): New.
8645 * sparc.md (attr type): Add sload, fpmove, fpcmove. Adjust users
8646 of load & fp appropritely.
8647 (supersparc function units): Adjust for Haifa.
8648 (ultrasparc function units): Likewise.
8649 (get_pc_via_rdpc): All v9, not just arch64.
8650 (movdi_v8plus, movdi_v8plus+1): New.
8651 (adddi3_sp32+1): New.
8652 (subdi3_sp32+1): New.
8653 (movsi_insn, movsf_const_insn, movdf_const_insn): Know VIS.
8654 (addsi3, subsi3, anddi3_sp32, andsi3, and_not_di_sp32): Likewise.
8655 (and_not_si, iordi3_sp32, iorsi3, or_not_di_sp32, or_not_si): Likewise.
8656 (xorsi3_sp32, xorsi3, xor_not_di_sp32, xor_not_si): Likewise.
8657 (one_cmpldi2_sp32, one_cmplsi2): Likewise.
8658 (ldd peepholes): Suppress for v9.
8659 (return_adddi): Kill redundant test. Arg1 may be arith_operand.
8660 (return_subsi): Revmove.
8661
4b526a9a
JC
8662Fri Jan 30 18:30:03 1998 John F Carr <jfc@mit.edu>
8663
8664 * mips.c (save_restore_insns): Set RTX_UNCHANGING_P in register
8665 save/restore MEM rtl.
8666
64a438d6
JL
8667Fri Jan 30 09:08:16 1998 Jeffrey A Law (law@cygnus.com)
8668
8669 * configure.in: Check for declaration of abort.
9c893359 8670 * acconfig.h: Corresponding changes.
64a438d6
JL
8671 * toplev.c: Use NEED_DECLARATION_ABORT to determine if abort should
8672 be declared.
8673
f266c82f
JL
8674Thu Jan 29 20:26:12 1998 Jeffrey A Law (law@cygnus.com)
8675
8676 * genattrtab.c (optimize): Define in case PRESERVE_DEATH_INFO_REGNO_P
8677 uses it.
8678
31fa4410
JL
8679Thu Jan 29 09:27:56 PST 1998 Jeff Law (law@cygnus.com)
8680
8681 * version.c: Bump for snapshot.
8682
0ee31ab1
JL
8683Thu Jan 29 10:12:27 1998 Jeffrey A Law (law@cygnus.com)
8684
8685 * configure.in: Check for atoq and atoll.
8686 * rtl.c (read_rtx): Use HAVE_ATOLL and HAVE_ATOQ to select the
8687 proper routine for converting ascii into long long values.
8688
eeeb91c5
KK
8689Thu Jan 29 01:28:14 1998 Klaus Kaempf <kkaempf@progis.de>
8690
9d21ee77
KK
8691 * cccp.c (SYS$SEARCH, SYS$PARSE): Write as upper-case.
8692
8693 * vmsconfig.com: Remove bytecode references.
8694
8695 * alpha/vms.h (PREFIX): Define.
8696
8697 * alpha/vms.h (ASM_OUTPUT_ALIGNED_COMMON): Remove.
8698
eeeb91c5
KK
8699 * am-alpha.h: Don't include alloca for OPEN_VMS.
8700
8701 * alpha/xm-vms.h (HAVE_CPP_STRINGIFY): Define.
8702
8703 * alpha/xm-vms.h (INCLUDE_DEFAULTS): Define.
8704 (GCC_INCLUDE_DIR): Define
8705
8706 * make-cc.com, make-cccp.com, make-cc1.com: Removed.
8707 * makefile.vms: New file.
8708
8709 * alpha/vms.h (CPP_PREDEFINES): Remove -Dalpha.
8710
8711 * alpha.c (output_prolog): Output '.name' directive
8712 for minimal traceback information.
8713
8714 * alpha.c (output_prolog): Don't prepend entry point symbols
8715 with '$' on OPEN_VMS.
8716
76d31c63
JL
8717Thu Jan 29 00:25:35 1998 David S. Miller <davem@tanya.rutgers.edu>
8718 Jeffrey A Law (law@cygnus.com)
8719
8720 * rtl.c (read_rtx): Use atol/atoq based upon disposition of
8721 HOST_WIDE_INT.
8722
8723 * genattrtab.c (write_test_expr): Use HOST_WIDE_INT_PRINT_DEC
8724 as needed.
8725 * genemit.c (gen_exp): Likewise.
8726 * genpeep.c (match_rtx): Likewise.
8727 * genrecog.c (write_tree_1): Likewise.
8728
8729 * c-lex.c (yyprint): Use proper format string based upon
8730 disposition of HOST_BITS_PER_WIDE_INT.
8731 (yylex): Put casts in right place for args to build_int_2.
8732
8733Thu Jan 29 00:24:29 1998 Jeffrey A Law (law@cygnus.com)
8734
8735 * combine.c: Fix typos in Jan27 changes.
8736
1b7555bd
OR
8737Thu Jan 29 00:07:49 1998 Ollivier Robert <roberto@keltia.freenix.fr>
8738
8739 * i386/freebsd.h (LIB_SPEC): Correctly handle -shared, -p and friends.
8740 (LINK_SPEC): Likewise.
8741 (STARTFILE_SPEC): Likewise.
8742
21ca87b8
MS
87431998-01-28 Mike Stump <mrs@wrs.com>
8744
8745 * rtlanal.c (dead_or_set_regno_p): Ignore REG_DEAD notes after
8746 reload completes.
8747 * genattrtab.c (reload_completed): Define.
8748
8749 * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Remove obsolete
8750 comments.
8751
d2c92f5a
R
8752Wed Jan 28 20:11:06 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
8753
8754 * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
8755 SUBREG_REG if the word count is unchanged, also in the input reload
8756 case. Disable non-applicable sanity checks.
8757
90ad3ab7
JL
8758Wed Jan 28 20:08:26 1998 Jeffrey A Law (law@cygnus.com)
8759
8760 * config/t-svr4 (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
8761
7fad712c
ILT
8762Wed Jan 28 20:04:43 1998 Ian Lance Taylor <ian@cygnus.com>
8763
8764 * i386/t-cygwin32 (LIMITS_H_TEST, LIBGCC2_INCLUDES): Define.
8765
2290e0ec
PB
8766Wed Jan 28 11:45:27 1998 Per Bothner <bothner@cygnus.com>
8767
1aea01ea
PB
8768 * dbxout.c (dbxout_type): For a RECORD_TYPE, check that TYPE_BINFO
8769 is a TREE_VEC before trying to use it for baseclasses.
8770 (Chill uses the same field for a different purpose.)
8771
2290e0ec
PB
8772 * toplev.c (strip_off_ending): Generalize to endings up to 5 chars.
8773
16980900
LT
8774Tue Jan 27 23:15:55 1998 Lassi A. Tuura <lat@iki.fi>
8775
4c46bad0 8776 * config.sub: More accurate determination of HP processor types.
16980900 8777
5e9defae
KG
8778Tue Jan 27 23:11:11 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8779
8780 * c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>. Add
8781 prototype for `handle_sysv_pragma', and make it static. Add
8782 parentheses around assignment used as truth value.
8783
8784 * combine.c (combine_instructions): Protect variable `prev' with
8785 macro HAVE_cc0.
8786 (can_combine_p): Protect variable `link' with AUTO_INC_DEC.
8787 (extract_left_shift): Add parentheses around operand of &.
8788 (merge_outer_ops): Avoid an empty body in an else-statement.
8789 (gen_rtx_combine): Remove unused variable `i'.
b57062ca 8790
5e9defae
KG
8791 * sparc/gmon-sol2.c: Include <fcntl.h>. Make return type of
8792 function monstartup `void'. Likewise for internal_mcount. Add
8793 `static void' prototype for moncontrol. Reconcile sprintf format
b57062ca 8794 vs. args.
5e9defae
KG
8795
8796 * sparc/sparc.c: Include <stdlib.h> and <string.h>/<strings.h>.
8797 Make return type of function_arg_slotno explicitly `int'.
8798 (reg_unused_after): Add parentheses around assignment used as
8799 truth value.
8800 (save_regs): Add explicit braces to avoid ambiguous `else'.
8801 (function_arg_slotno): Add parentheses around && within ||.
8802 (function_arg_pass_by_reference): Likewise.
8803 (sparc_flat_output_function_prologue): Reconcile fprintf format
8804 vs. args.
8805
8806 * svr4.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around
8807 assignment used as truth value.
8808
8809 * cplus-dem.c: Include <stdlib.h>.
8810 (demangle_signature): Avoid an empty body in an else-statement.
8811 (do_type): Remove unused variable `lvl'.
b57062ca 8812
5e9defae
KG
8813 * cppexp.c: Don't have <stdlib.h> depend on MULTIBYTE_CHARS.
8814 Include <string.h>/<strings.h>.
8815 (cpp_lex): Remove unused variable `namelen'.
8816 (cpp_lex): Explicitly declare `num_chars' as an int.
8817
8818 * cpplib.c: Avoid duplicate inclusion of <stdlib.h>, include
8819 <unistd.h> instead. Explicitly declare is_system_include
8820 returning int.
b57062ca 8821 (make_assertion): Remove unused variable `kt'.
5e9defae
KG
8822 (cpp_expand_to_buffer): Hide variable `obuf'.
8823 (output_line_command): Remove unused variables, `line_end',
8824 `line_cmd_buf' and `len'.
8825 (macarg): Remove unused variable `arg_start'.
8826 (special_symbol): Remove unused variable `i'. Add parentheses
b57062ca 8827 around assignment used as truth value.
5e9defae 8828 (do_include): Remove unused variables `pcfname' and `retried',
b57062ca 8829 hide `pcf' and `pcfbuflimit'.
5e9defae
KG
8830 (do_line): Remove unused variable `i'.
8831 (finclude): Hide variable `missing_newline'.
8832 (cpp_handle_options): Remove unused variable `j'.
8833 (read_token_list): Remove unused variable `eofp'.
8834 (cpp_error_with_line): Remove unused variable `i'.
8835 (cpp_warning_with_line): Likewise.
8836 (cpp_pedwarn_with_line): Explicitly declare `column' as int.
8837 (cpp_error_from_errno): Remove unused variable `i'.
8838
8839 * cse.c (invalidate): Add parentheses around assignment used as
8840 truth value.
8841 (find_best_addr): Move declaration of variable `our_cost' inside
8842 the conditional macro where its used.
8843 (fold_rtx): Avoid an empty body in an if-statement.
8844 (cse_insn): Wrap variables `this_insn_cc0_mode' and
8845 `this_insn_cc0' in macro HAVE_cc0.
b57062ca 8846
5e9defae
KG
8847 * dwarf2out.c: Include <stdlib.h> and <string.h>/<string.h>.
8848 (ASM_OUTPUT_DWARF_DATA8): Reconcile format vs. args in fprintf's.
8849 (output_uleb128): Likewise.
8850 (output_sleb128): Likewise.
8851 (output_cfi): Likewise.
8852 (output_call_frame_info): Remove unused variables `j', `fde_size'
8853 and `fde_pad'.
8854 (comp_unit_has_inlines): Hide declaration as per rest of file.
8855 (size_of_line_prolog): Correct typo in prototype.
8856 (add_arange): Likewise.
8857 (output_aranges): Likewise.
8858 (add_name_and_src_coords_attributes): Likewise.
8859 (gen_array_type_die): Likewise.
8860 (gen_inlined_subroutine_die): Likewise.
8861 (equate_decl_number_to_die): Remove unused variable `i'.
8862 (print_die): Reconcile format vs. args in fprintf's.
8863 (print_dwarf_line_table): Likewise.
8864 (output_die): Likewise.
8865 (output_line_info): Likewise.
8866 (add_subscript_info): Avoid an empty body in an else-statement.
8867 (gen_subprogram_die): Remove unused variable `fp_loc'.
8868
8869 * dwarfout.c: Explicitly declare `next_pubname_number' as int.
8870 Protect `ordering_attribute' prototype with USE_ORDERING_ATTRIBUTE
8871 macro. Protect `src_coords_attribute' prototype with
8872 DWARF_DECL_COORDINATES macro. Hide `output_entry_point_die'
8873 prototype as in the rest of the file. Likewise for
8874 `output_pointer_type_die' and `output_reference_type_die'. Remove
8875 prototype for `type_of_for_scope'.
8876 (output_unsigned_leb128): Reconcile format vs. args in fprintf.
8877 (type_attribute): Add explicit braces to avoid ambiguous `else'.
b57062ca 8878
5e9defae
KG
8879 * final.c: Include <stdlib.h> and <string.h>/<strings.h>.
8880 (shorten_branches): Protect declaration of tmp_length with
8881 SHORTEN_WITH_ADJUST_INSN_LENGTH and ADJUST_INSN_LENGTH macros.
8882 (profile_function): Protect declaration of `sval' and `cxt'
8883 variables with appropriate macros.
8884 (final_scan_insn): Likewise for `note' variable. Add explicit
8885 braces to avoid empty body in an if-statement.
8886 (output_asm_insn): Move variable `i' inside macro conditional
8887 where it is used. Add parentheses around assignment used as truth
8888 value.
8889 (asm_fprintf) Likewise, likewise.
b57062ca 8890
5e9defae
KG
8891 * fix-header.c (main): Remove unused variable `done'. Protect
8892 declaration of `i' with FIXPROTO_IGNORE_LIST.
8893
8894 * pexecute.c: Include <unistd.h>. Prototype `my_strerror'.
8895
8896 * print-rtl.c (print_inline_rtx): Explicitly declare the parameter
8897 `ind'.
8898
8899 * profile.c: Include <string.h>/<strings.h>.
8900 (instrument_arcs): Remove unused variables `note', `inverted',
8901 `zero' and `neg_one'.
8902 (branch_prob): Avoid empty body in an if-statement.
8903
8904 * regclass.c: Include <stdlib.h>.
8905 (reg_alternate_class): Explicitly declare parameter `regno'.
8906
8907 * regmove.c (regmove_optimize): Remove unused variable `p'. Add
8908 parentheses around assignment used as truth value.
8909 (find_matches): Remove unused variables `output_operand' and
8910 `matching_operand'.
8911 (fixup_match_1): Remove statement with no effect: "if (0) ;".
8912
8913 * scan.c (sstring_append): Explicitly declare `count' as int.
8914 (scan_string): Explicitly declare parameter `init' as int.
8915
8916 * sched.c: Include <stdlib.h>.
8917 (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
8918 (rank_for_schedule): Add parentheses around assignment used as
8919 truth value.
8920 (schedule_block): Likewise.
8921 (regno_use_in): Likewise.
8922 (schedule_insns): Remove unused variable `i'.
8923
8924 * toplev.c: Include <stdlib.h> and <string.h>/<strings.h>.
8925 (v_message_with_decl): Remove unused variable `n'.
8926 (botch): Explicitly declare parameter `s' as char *.
8927 (main): Add parentheses around assignment used as truth value.
8928
8929 * tree.c (make_node): Protect the variable `kind' with the
8930 GATHER_STATISTICS macro.
8931 (real_value_from_int_cst): Move variable `e' inside conditional
8932 macro area where it is used.
8933 (tree_last): Add parentheses around assignment used as truth value.
8934 (build1): Protect the variable `kind' with the GATHER_STATISTICS
8935 macro.
8936 (print_obstack_statistics): Reconcile format vs. args in fprintf.
8937 Protect variables `i', `total_nodes', and `total_bytes' with the
8938 GATHER_STATISTICS macro.
8939
4b6bb562
MS
8940Tue Jan 27 23:01:55 1998 Mike Stump (mrs@wrs.com)
8941
8942 * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Add
8943 some comments regarding use of dead_or_set_p.
8944
e95f0195
TV
8945Tue Jan 27 22:14:48 1998 Todd Vierling <tv@pobox.com>
8946
8947 * fixincludes: Tweak fix for struct exception in math.h
8948
c3499f00
GK
8949Tue Jan 27 17:21:09 1998 Gavin Koch (gavin@cygnus.com)
8950
8951 * mips/mips.c (mips_expand_prologue,mips_expand_epilogue):
b57062ca 8952 Change mode of registers used to add/sub from
c3499f00
GK
8953 hard_frame_pointer_rtx from word_mode to Pmode.
8954
01898d58
NC
8955Tue Jan 27 11:02:04 1998 Nick Clifton <nickc@cygnus.com>
8956
6db34dd4
NC
8957 * v850.h (ASM_OUTPUT_ALIGNED_BSS): Use
8958 asm_output_aligned_bss() instead of asm_output_bss().
8959
01898d58
NC
8960 * toplev.c (rest_of_compilation): Replace references to
8961 stack_reg_dump_file and dbr_sched_dump_file with references to
b57062ca 8962 rtl_dump_file.
01898d58 8963
7b6ffd11
KI
8964Tue Jan 27 10:22:13 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
8965
8966 * tlink.c (scan_linker_output): Call fclose() for opened files.
8967
60593797
RH
8968Tue Jan 27 05:05:26 1998 Richard Henderson <rth@cygnus.com>
8969
8970 * alpha.c (output_epilog [!VMS]): Don't tag global functions if
8971 compiling with -fpic -- we want to be able to override symbols
8972 properly.
8973 (alpha_expand_block_move): Fix thinko in last change.
8974
8975 * alpha.h (ASM_OUTPUT_MI_THUNK): New define.
8976 * config/alpha/win-nt.h (ASM_OUTPUT_MI_THUNK): New define.
8977 * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): New undef.
b57062ca 8978
5e4aab97
RH
8979Tue Jan 27 03:21:23 1998 Richard Henderson <rth@cygnus.com>
8980
8981 * alpha.md (abssf, absdf): Revert last change.
8982
69145bcc
JC
8983Tue Jan 27 00:26:50 1998 John Carr <jfc@mit.edu>
8984
8985 * dwarf2out.c (dwarf2out_frame_init): Test value of DWARF2_UNWIND_INFO.
8986 * mips/sni-svr4.h: Define DWARF2_UNWIND_INFO as 0.
8987
4926b75a
JL
8988Tue Jan 27 00:07:02 1998 Jeffrey A Law (law@cygnus.com)
8989
8990 * emit-rtl.c (gen_lowpart_common): Handle more case where converting
8991 a CONST_INT into SFmode.
8992
c6aded7c
AG
8993Tue Jan 20 16:01:03 1998 Anthony Green <green@cygnus.com>
8994
8995 * flags.h: New flag (optimize_size).
8996 * toplev.c (main): Parse -Os option and set optimize_space
8997 accordingly.
b57062ca 8998 * gcc.c (default_compilers), cp/lang-specs.h, f/lang-specs.h: Define
c6aded7c
AG
8999 __OPTIMIZE_SIZE__ when compiling with -Os.
9000 * config/dsp16xx/dsp16xx.h, config/i386/i386.h,
9001 config/i386/dgux.h, config/i960/i960.h, config/pdp11/pdp11.h,
9002 config/v850/v850.h (OPTIMIZATION_OPTIONS): New SIZE argument
9003 to macro.
9004 * config/i386/i386.c (optimization_options): Accept new SIZE argument.
9005
3698f44e
MH
9006Mon Jan 26 23:57:39 1998 Manfred Hollstein <manfred@s-direktnet.de>
9007
9008 * libgcc2.c (__clear_insn_cache): On sysV68 enable the memctl
9009 stuff only if MCT_TEXT is #define'd.
9010
ac8a456a
MO
9011Mon Jan 26 23:52:51 1998 Markus F.X.J. Oberhumer <k3040e4@c210.edvz.uni-linz.ac.at>
9012
9013 * configure.in (i*86-pc-msdosdjgpp): Treat like msdos & go32
9014 configurations.
9015
032713aa
NC
9016Fri Jan 23 09:39:36 1998 Nick Clifton <nickc@cygnus.com>
9017
9018 * toplev.c: Add -dM command line option to dump RTL after the
9019 machine dependent reorganisation pass, if there is one.
9020 Reorganise RTL dump code, so that only one file handle is
b57062ca 9021 needed.
032713aa 9022
ec2be682
BK
9023Mon Jan 26 12:09:42 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
9024
9025 * except.c (check_exception_handler_labels): Disable warning when
9026 flag_syntax_only.
9027
e232b7b3
JW
9028Mon Jan 26 18:17:32 1998 Jim Wilson <wilson@cygnus.com>
9029
9030 * sparc.c (pic_setup_code): Don't set LABEL_PRESERVE_P.
9031
2a851b5c
R
9032Mon Jan 26 18:11:30 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
9033
9034 * c-decl.c (grokdeclarator): Get parameter tags from
9035 last_function_parm_tags.
9036 * dwarfout.c (output_formal_types): Set TREE_ASM_WRITTEN before
9037 traversing the parameter types.
9038 (output_type): No early exit for FUNCTION_TYPE / METHOD_TYPE context.
9039
808fbfac
JL
9040Mon Jan 26 01:44:12 1998 Jeffrey A Law (law@cygnus.com)
9041
9042 * h8300.c (print_operand): Handle CONST_DOUBLE for 'e', 'f', and
9043 the default case.
9044 (get_shift_alg): Fix typo.
9045
15389075
RH
9046Sun Jan 25 22:22:04 1998 Richard Henderson <rth@cygnus.com>
9047
9048 * alpha.c (alpha_expand_block_move): Copy ADDRESSOF to reg.
9049
83c8ddef
RH
9050Sun Jan 25 22:14:28 1998 Richard Henderson <rth@cygnus.com>
9051
9052 * toplev.c (get_run_time): Make sure each case gets its variables.
9053
db81d74a
RH
9054Sun Jan 25 22:10:21 1998 Richard Henderson <rth@cygnus.com>
9055
9056 * configure.in (build_xm_file): Add auto-config.h if host=build.
9057 (host_xm_file_list): Don't add $(srcdir) to auto-config.h.
9058 (build_xm_file_list): Likewise.
9059 * configure: Rebuild.
b57062ca 9060
f745c7a2
AB
9061Sun Jan 25 22:00:25 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
9062
9063 * recog.c (validate_replace_rtx_1): Only perform substitutions
9064 of arguments to commutative and comparison operators once.
9065
963f4057
KG
9066Sun Jan 25 12:30:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9067
91a51951
KG
9068 * sparc.c (output_cbranch): Add default case in
9069 enumeration switch.
b57062ca 9070
91a51951
KG
9071 * reorg.c (insn_sets_resource_p): Correct typo in prototype.
9072 (emit_delay_sequence): Eliminate unused parameter, all callers
9073 changed.
9074 (fill_simple_delay_slots): Likewise.
9075 (fill_slots_from_thread): Likewise.
9076 (fill_eager_delay_slots): Likewise.
9077 (mark_referenced_resources): Add default case in enumeration switch.
9078 (mark_set_resources): Likewise.
9079 (rare_destination): Likewise.
9080 (mostly_true_jump): Likewise.
9081 (find_dead_or_set_registers): Likewise.
9082 (redirect_with_delay_slots_safe_p): Remove unused variable `slots'.
9083 (update_reg_unused_notes): Remove unused variable `p'.
9084 (mark_target_live_regs): Remove unused variables `next' and
9085 `jump_count'.
9086 (fill_simple_delay_slots): Remove unused variable `j'.
9087 (fill_slots_from_thread): Add parentheses around assignment used
9088 as truth value.
9089 (dbr_schedule): Likewise.
9090
963f4057
KG
9091 * objc/Make-lang.in (objc.stage1): Depend on stage1-start.
9092 (objc.stage2, objc.stage3, objc.stage4): Likewise.
9093
e82ad93d
MT
9094Sun Jan 25 12:13:47 1998 Michael Tiemann <michael@tiemann.org>
9095
9096 * cse.c (simplify_ternary_operation): Don't try to simplify
9097 IF_THEN_ELSE expressions (created by combine) that don't use
9098 relational operators.
9099
b4b04bf9
JL
9100Fri Jan 23 22:48:24 1998 Jeffrey A Law (law@cygnus.com)
9101
ed1ecb19
JL
9102 * cse.c (simplify_ternary_operation): Handle more IF_THEN_ELSE
9103 simplifications.
9104
b4b04bf9
JL
9105 * crtstuff.c (init_dummy): Keep the epilogue in the init
9106 section for non-ELF systems.
9107
deeef0ac
R
9108Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
9109
9110 * sh.md (movqi_i+1): New peephole.
9111
03566575
JW
9112Fri Jan 23 15:39:42 1998 Jim Wilson <wilson@cygnus.com>
9113
9114 * Makefile.in: Remove remaining bytecode stuff.
9115 * emit-rtl.c, expr.c: Likewise.
9116
eb96c120
NC
9117Fri Jan 23 12:41:10 1998 Nick Clifton (nickc@cygnus.com)
9118
9119 * toplev.c (lang_options): Add unknown-pragma options.
9120
f03204e9
PB
9121Thu Jan 22 23:43:38 1998 Per Bothner <bothner@cygnus.com>
9122
9123 * dwarfout.c (byte_size_attribute): Simplify and fix - don't need
9124 special (and incomplete) handling for Chill arrays.
9125
4e762a38
JC
9126Fri Jan 23 00:27:23 1998 John Carr <jfc@mit.edu>
9127
9128 * toplev.c (get_run_time): Call sysconf(_SC_CLK_TCK), when available,
9129 to get clock rate.
9130
c3499f00 9131Fri Jan 23 00:19:36 1998 Gavin Koch (gavin@cygnus.com)
319f217e
GK
9132
9133 * mips.md (muldi3_internal2): Reverse test for TARGET_MIPS16.
9134
19f673eb
SS
91351998-01-22 scott snyder <snyder@d0sgif.fnal.gov>
9136
9137 * mips.c (function_prologue): Use HARD_FRAME_POINTER_REGNUM in
9138 .frame directive instead of FRAME_POINTER_REGNUM.
9139
74cf1c6d
RK
9140Fri Jan 23 00:08:55 1998 Robin Kirkham <rjk@mlb.dmt.csiro.au>
9141
9142 * m68k.h (TARGET_SWITCHES): -mcpu32 now clears MASK_68881.
9143 (MACHINE_STATE_m68010_up): Replaced __mc68332__ with __mcpu32__.
9144 * m68k/m68k-none.h(CPP_FPU_SPEC): Update relative to TARGET_SWITCHES.
9145 (CPP_SPEC, ASM_SPEC, CC1_SPEC): Likewise.
9146 (CPP_SPEC): -m68332 defines both __mc68332 and __mcpu32__.
9147 * m68k/t-m68kbare (MULTILIB_OPTIONS): Add mcpu32.
9148 (MULTILIB_MATCHES): -m68332 now uses mcpu32 libraries, not m68000.
9149 (MULTILIB_EXCEPTIONS): Don't build 68881 libraries for m68000,
9150 mcpu32 or m5200.
9151 * longlong.h: Replace __mc68332__ with __mcpu32__.
9152
e1402e7d
JL
9153Thu Jan 22 19:55:40 PST 1998 Jeff Law (law@cygnus.com)
9154
9155 * version.c: Bump for snapshot.
9156
6d49a073
JW
9157Thu Jan 22 14:47:31 1998 Jim Wilson <wilson@cygnus.com>
9158
9159 * reload.c (push_reload): In WORD_REGISTER_OPERATIONS code, add test
9160 to require the SUBREG mode to be smaller than the SUBREG_REG mode.
9161 * reload1.c (eliminate_regs): Likewise.
9162
c485e6a0
JL
9163Thu Jan 22 14:49:14 1998 Jeffrey A Law (law@cygnus.com)
9164
9165 * regmove.c (find_matches): Initialize matches->earlyclobber too.
9166
84303d9a
RH
9167Thu Jan 22 01:40:52 1998 Richard Henderson <rth@cygnus.com>
9168
9169 * alpha.md (abssf2, absdf2): Disable in IEEE mode.
9170 (negsf2, negdf2): Use proper subtract in IEEE mode.
9171
b93a436e
JL
9172Tue Jan 20 09:29:09 1998 Jeffrey A Law (law@cygnus.com)
9173
27766f0e
JL
9174 * Makefile.in: Remove more bytecode stuff.
9175 * expr.c, stmt.c, config/msdos/top.sed: Likewise.
9176 * vax/xm-vms.h, winnt/config-nt.sed: Likewise.
9177 * f/install.texi, objc/Make-lang.in: Likewise.
9178
b93a436e
JL
9179 * Makefile.in: Remove all bytecode support.
9180 (OBJS): Make sure last entry is a real object file, not EXTRA_OBJS.
9181 * emit-rtl.c: Remove all bytecode support.
9182 * expr.c, expr.h function.c, integrate.c: Likewise.
9183 * output.h, regclass.c, rtl.h, stmt.c, toplev.c: Likewise.
9184 * tree.h, varasm.c: Likewise.
424e713c
JL
9185 * config/m68k/m68k.h: Likewise.
9186 * bi-*, bc-*, bytecode*: Delete bytecode related files.
c9804136 9187 * modemap.def: Likewise.
b93a436e 9188
7e07e3ba
GK
9189Tue Jan 20 09:02:31 1998 Gavin Koch (gavin@cygnus.com)
9190
9191 * mips/mips.md (divsi3,divdi3,modsi3,moddi3,udivsi3,udivdi3,
9192 umodsi3,umoddi3): Handle mips16 div/mod by a constant.
9193
685885b7
RH
9194Mon Jan 19 21:57:00 1998 Richard Henderson <rth@cygnus.com>
9195
9196 * i386.md (push): Prohibit symbolic constants if flag_pic.
9197 (movsi+1): Likewise for move to non-register.
9198
5830e3a0
JW
9199Mon Jan 19 11:15:38 1998 Jim Wilson <wilson@cygnus.com>
9200
11ea364a
JW
9201 * alpha.c (mode_mask_operand): Accept 0xffffffff on 32 bit host.
9202 (print_operand): Handle 0xffffffff on 32 bit host.
9203
a851212a
JW
9204 * configure.in (thread_file): Rename uses before main loop to
9205 target_thread_file. Initialize to empty in main loop. Set thread_file
9206 to target_thread_file after main loop if not set.
9207 * configure: Rebuild.
9208
5830e3a0
JW
9209 * genattrtab.c (find_and_mark_used_attributes): Handle CONST_INT.
9210 (add_values_to_cover): Revert last change (which had no ChangeLog
9211 entry).
9212 (simplify_with_current_value_aux): Handle CONST_INT.
9213
829e1aaf
AS
9214Mon Jan 19 10:14:55 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
9215
9216 * unprotoize.c: Define UNPROTOIZE first, to actually take effect.
9217
76844337
RH
9218Mon Jan 19 10:11:52 1998 Richard Henderson <rth@cygnus.com>
9219
9220 * configure.in: Add cpp stringify test.
9221 * acconfig.h (HAVE_CPP_STRINGIFY): New tag.
9222 * gengenrtl.c: Use it.
9223 * configure, config.in: Rebuild.
9224
a3f80023
AS
9225Mon Jan 19 09:43:15 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
9226
9227 * Makefile.in (genrtl.c genrtl.h): Add dummy command for GNU make.
9228
c5d0345e
RH
9229Mon Jan 19 09:38:18 1998 Richard Henderson <rth@cygnus.com>
9230
9231 * configure.in: Find declaration for sbrk.
9232 * acconfig.h (NEED_DECLARATION_SBRK): New tag.
9233 * config.in, configure: Rebuild.
9234 * mips-tfile.c: Properly protect declaration of sbrk and free.
9235 * toplev.c: Properly protect declaration of sbrk.
9236
bb02e7ea
RH
9237Sun Jan 18 20:18:01 1998 Richard Henderson <rth@cygnus.com>
9238
9239 * alpha.c (alpha_handle_trap_shadows): Ignore CLOBBERs.
9240
30c2fa75
JL
9241Sun Jan 18 01:54:27 1998 Jeffrey A Law (law@cygnus.com)
9242
9243 * alpha/xm-winnt.h (HAS_INIT_SECTION): Undefine.
9244
a0372c94
MS
9245Sun Jan 18 00:57:35 1998 Mike Stump (mrs@wrs.com)
9246
9247 * configure.in (i960-wrs-vxworks): Default to latest vxworks release.
9248
c9ec4f99
DM
9249Sat Jan 17 23:41:36 1998 David S. Miller <davem@tanya.rutgers.edu>
9250
0e9ff885
DM
9251 * combine.c (force_to_mode, nonzero_bits): Correctly optimize
9252 constant offset computations from objects with known alignment in
9253 the presence of STACK_BIAS.
9254
7bcac048
DM
9255 * varasm.c (immed_double_const): Add casts to HOST_WIDE_INT where
9256 necessary.
9257 (const_hash): Hash val is unsigned long.
9258 (SYMHASH): Likewise.
9259
9260 * tree.c (TYPE_HASH): Type of hash val is unsigned long.
9261
9262 * print-tree.c (print_node_brief): HOST_PTR_PRINTF format wants a
9263 char pointer, not HOST_WIDE_INT.
9264 (print_node): Likewise. Also hash is unsigned long not
9265 HOST_WIDE_INT.
9266
9267 * cse.c (canon_hash): Hash is unsigned long not HOST_WIDE_INT.
9268
c9ec4f99
DM
9269 * explow.c (optimize_save_area_alloca): New function for targets
9270 where SETJMP_VIA_SAVE_AREA is true.
9271 (allocate_dynamic_stack_space): On SETJMP_VIA_SAVE_AREA targets,
9272 compute the amount of stack space needed should we find later that
9273 setjmp is never called by this function, stuff rtl for this inside
9274 a REG_NOTE of the final SET of stack_pointer_rtx.
9275 * toplev.c (rest_of_compilation): If SETJMP_VIA_SAVE_AREA and
9276 current_function_calls_alloca, call optimize_save_area_alloca.
9277
ca097615
JW
9278Sat Jan 17 23:22:59 1998 John Wehle (john@feith.com)
9279
9280 * i386.md: Remove redundant integer push patterns.
9281 Don't bother checking for TARGET_PUSH_MEMORY when
9282 pushing constants or registers.
9283
a3105a89
MK
9284Sat Jan 17 22:35:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
9285 J.J VanderHeijden <J.J.vanderHeijden@student.utwente.nl>
b57062ca 9286
a3105a89
MK
9287 * pexecute.c (pexecute): New function for mingw32. Supports pipes.
9288 (pwait): New function for mingw32.
9289
9290 * gcc.c (execute): Mingw32 pexecute() supports pipes, but cygwin32
9291 pipe support is broken for now.
9292
51549d76
LI
92931998-01-17 Lee Iverson <leei@Canada.AI.SRI.COM>
9294
ffc3503d
JL
9295 * emit_rtl.c (init_emit_once): Ensure that potential aliasing
9296 between frame_pointer_rtx, hard_frame_pointer_rtx, and
9297 arg_pointer_rtx is respected in initialization.
9298 (init_emit_once): Use gen_rtx_raw_REG() to create
9299 return_address_pointer_rtx.
9300
51549d76
LI
9301 * reorg.c: #include "expr.h" for rtx prototypes.
9302 * Makefile.in (reorg.o): Depend on expr.h
9303
b24a815b
PN
9304Sat Jan 17 21:28:08 1998 Pieter Nagel <pnagel@epiuse.co.za>
9305
9306 * Makefile.in (FLAGS_TO_PASS): Pass down gcc_include_dir and
9307 local_prefix to sub-make invocations.
9308
1e7b997a
DM
9309Sat Jan 17 21:24:16 1998 David T. McWherter <dtm@waterw.com>
9310
9311 * objc-parse.c: Recognize protocol qualifiers in class definitions.
9312
340fb41f
JL
9313Sat Jan 17 21:16:19 1998 Jeffrey A Law (law@cygnus.com)
9314
ffc3503d
JL
9315 * rtl.h: Fix typos.
9316
aef28d1d 9317 * acconfig.h (NEED_DECLARATION_ATOL): New declaration to check for.
6885fc87 9318 * configure.in: Check for atol.
aef28d1d
JL
9319 * rtl.c (atol): Only provide the declaration if NEED_DECLARATION_ATOL.
9320
4399e7a3
JL
9321 * rtl.c (read_rtx): Initialize list_rtx to NULL, not NULL_RTX.
9322
72ec635f
JL
9323 * loop.c (find_and_verify_loops): When attempting to move insns from
9324 inside the loop outside the loop, create a BARRIER if no suitable
9325 one was found.
9326
1be6e437
JL
9327 * jump.c (jump_optimize): Remove Dec 17, 1997 chance in
9328 favor of an equivalent change from gcc-2.8.
9329
340fb41f
JL
9330 * i386/x-sco5 (CC): Remove trailing whitespace.
9331
982255c8 9332Sat Jan 17 21:09:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 9333
982255c8
KG
9334 * gengenrtl.c (type_from_format): De-ANSIfy function signature.
9335 (accessor_from_format): Likewise.
9336 (xmalloc): New function for use when linking with alloca.o.
9337
db8abea3
BH
9338Mon Jan 5 02:53:01 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
9339
9340 * frame.c (find_fde): Correct FDE's upper bound.
9341
5d483f63
RH
9342Fri Jan 16 16:23:52 1998 Richard Henderson <rth@cygnus.com>
9343
9344 * gengenrtl.c (DEF_RTL_EXPR): Provide a K&R compliant version.
9345
9a960e6b
JL
9346Fri Jan 16 10:16:10 1998 Jeffrey A Law (law@cygnus.com)
9347
9348 * calls.c (expand_call): Move #ifdef code out of macro argument
9349 lists.
9350 (emit_library_call, emit_library_call_value): Likewise.
9351
a4b18346
JL
9352Fri Jan 16 00:46:40 1998 Jeffrey A Law (law@cygnus.com)
9353
9354 * rtl.def (INLINE_HEADER): Fix bug exposed by gen_rtx_FOO changes.
9355
a252996a
JL
9356Thu Jan 15 01:02:30 1998 Jeffrey A Law (law@cygnus.com)
9357
9358 * version.c: Bump for snapshot.
9359
38a448ca
RH
9360Wed Jan 14 22:49:17 1998 Richard Henderson <rth@cygnus.com>
9361
9362 * alias.c: Change all uses of gen_rtx(FOO...) to gen_rtx_FOO;
9363 change gen_rtx(expr...) to gen_rtx_fmt_foo(expr...).
9364 * caller-save.c, calls.c, combine.c, cse.c: Likewise.
9365 * dwarf2out.c, except.c, explow.c, expmed.c, expr.c: Likewise.
9366 * final.c, flow.c, function.c, genpeep.c, haifa-sched.c: Likewise.
9367 * halfpic.c, integrate.c, jump.c, local-alloc.c, loop.c: Likewise.
9368 * profile.c, recog.c, reg-stack.c, regclass.c, regmove.c: Likewise.
9369 * reload.c, reload1.c, reorg.c, sched.c, stmt.c, stupid.c: Likewise.
9370 * unroll.c, varasm.c: Likewise.
9371 * config/alpha/alpha.c, config/alpha/alpha.md: Likewise.
9372
9373Wed Jan 14 19:36:08 1998 Gavin Koch (gavin@cygnus.com)
60db002d
GK
9374
9375 * mips.h: Fix some type-o's from a previous change.
9376
a8decb2c
JL
9377Wed Jan 14 01:26:05 1998 Jeffrey A Law (law@cygnus.com)
9378
b57062ca 9379 * loop.c (check_dbra_loop): Make sure initial value is a
a8decb2c
JL
9380 CONST_INT before trying to normalize it.
9381
0e2b736c
RL
9382Tue Jan 13 23:27:54 1998 Robert Lipe (robertl@dgii.com)
9383
9384 * sco5.h (ASM_OUTPUT_SECTION_NAME): Refresh from ../svr4.h.
9385
a3aa3d8c
HB
9386Tue Jan 13 22:47:02 1998 Herman ten Brugge <herman@htbrug.net.HCC.nl>
9387
9388 * cppexp.c: Include gansidecl.h
9389
8b496c8d
ILT
9390Tue Jan 13 22:43:35 1998 Ian Lance Taylor <ian@cygnus.com>
9391
9392 * svr4.h (LINK_SPEC): Never specify -h.
9393 * ptx4.h (LINK_SPEC): Likewise.
9394 * rs6000/sysv4.h (LINK_SPEC): Likewise.
9395 * sparc/sol2.h (LINK_SPEC): Likewise.
9396
c995fea1
RH
9397Tue Jan 13 22:39:40 1998 Richard Henderson (rth@cygnus.com)
9398
8d47dfc5
RH
9399 * c-typeck.c (comptypes): Exit early on NULL input.
9400
c995fea1
RH
9401 * haifa-sched.c (schedule_insns): Correctly remove inter-block
9402 dependencies after reload.
9403
88ea0ad1
FS
9404Tue Jan 13 22:22:31 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
9405
9406 * rs6000/linux.h (CPP_PREDEFINES): Add -D__ELF__.
9407
f5e86959
JL
9408Tue Jan 13 22:14:57 1998 Klaus Kaempf <kkaempf@progis.de>
9409
9410 * alpha/vms.h (DIR_SEPARATOR): define
9411
9412Tue Jan 13 22:13:04 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
6c32c807
BH
9413
9414 * Makefile.in (stamp-proto): Remove.
9415 (protoize.o, unprotoize.o): Straightforward compile.
9416 * unprotoize.c: Define UNPROTOIZE here, not in the Makefile.
9417
93006f8c
MK
9418Tue Jan 13 21:59:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
9419
9420 * i386/cygwin32.h (STRIP_NAME_ENCODING): Define for Win32 to strip
9421 off the trailing @[NUM] added by ENCODE_SECTION_INFO.
9422
e4c4f8df
JL
9423Tue Jan 13 21:55:06 1998 Jeffrey A Law (law@cygnus.com)
9424
9425 * arm/netbsd.h (DWARF2_UNWIND_INFO): Define as zero for now.
9426 * i386/netbsd.h, m68k/netbsd.h, ns32k/netbsd.h: Likewise.
9427 * sparc/netbsd.h, vax/netbsd.h: Likewise.
9428
4aa0c2a5
SS
9429Tue Jan 13 21:37:07 1998 Shigeya Suzuki <shigeya@foretune.co.jp>
9430
9431 * i386/bsd386.h (DWARF2_UNWIND_INFO): Define as zero for now.
9432
c43143f6
JW
9433Tue Jan 13 17:50:55 1998 Jim Wilson <wilson@cygnus.com>
9434
9435 * configure.in (target_cpu_default, target_cpu_default2): Use double
9436 quotes around them when testing their value.
9437 * configure: Rebuilt.
b57062ca 9438
4b8140a6
JC
9439Tue Jan 13 09:07:44 1998 John Carr <jfc@mit.edu>
9440
9441 * gengenrtl.c (gencode): Emit new function obstack_alloc_rtx
9442 to allocate rtx.
9443 (gendef): Call obstack_alloc_rtx.
9444
82de9b28 9445Tue Jan 13 01:16:36 1998 Robert Lipe (robertl@dgii.com)
fe07d4c1
RL
9446
9447 * configure.in: (i[3456]86-UnixWare7-sysv5): Treat much like SVR4
9448 for now.
9449
23092526 9450Thu Dec 18 18:40:17 1997 Mumit Khan <khan@xraylith.wisc.edu>
b57062ca 9451
23092526
MK
9452 * i386/mingw32.h (INCOMING_RETURN_ADDR_RTX): Delete. Use the value
9453 of DWARF2_UNWIND_INFO, if any, from i386/cygwin32.h instead.
9454 (STANDARD_INCLUDE_DIR): Change to /usr/local/i386-mingw32/include.
9455
b57062ca 9456Tue Jan 13 00:44:02 1998 Jim Wilson <wilson@cygnus.com>
32318600
JW
9457
9458 * mips.md (return_internal): Change mode from SImode to VOIDmode.
9459
ef720b21
KJ
9460Sat Jan 10 22:11:39 1998 J. Kean Johnston <jkj@sco.com>
9461
9462 * i386/sco5.h (STARTFILE_SPEC, ENDFILE_SPEC): Correctly handle
9463 "-static".
9464
cde21847
SC
9465Sat Jan 10 22:04:15 1998 Stan Cox <scox@equinox.cygnus.com>
9466
9467 * i386.md: (movsicc_1, movhicc_1): For alternate 3 set the opcode
9468 suffix from operand 3.
9469
184bb750
R
9470Sat Jan 10 21:50:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
9471 Jeffrey A Law (law@cygnus.com)
9472
9473 * regmove.c: New implementation of regmove pass.
9474 * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2): Remove
9475 decls, make them have external linkage. Return a value from
9476 optimize_reg_copy_1.
9477 * reload.h (count_occurrences): Add decl.
9478 * reload1.c (count_occurrences): Delete decl, make it have external
9479 linkage.
9480 * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Declare.
9481
3f9e9508 9482Sat Jan 10 20:30:12 1998 Jeffrey A Law (law@cygnus.com)
b57062ca 9483
3f9e9508
JL
9484 * regclass.c (record_address_regs): Don't use REG_OK_FOR_BASE_P
9485 if it is not defined.
b57062ca 9486
3b80f6ca
RH
9487Thu Jan 8 21:06:54 1998 Richard Henderson <rth@cygnus.com>
9488
9489 * Makefile.in (OBJ, GEN, RTL_H): Add genrtl.[oh] bits.
9490 * emit-rtl.c (gen_rtx): Move special code to ...
9491 (gen_rtx_CONST_INT): New function.
9492 (gen_rtx_REG): New function.
9493 (*): Update all calls to gen_rtx.
9494 * genemit.c (gen_exp): Emit calls to gen_rtx_FOO for constant FOO.
9495 * rtl.h: Include genrtl.h; prototype CONST_INT & REG generators.
9496 (GEN_INT): Call gen_rtx_CONST_INT.
9497 * gengenrtl.c: New file.
9498
1c72c7f6
JC
9499Mon Jan 5 13:00:18 1998 John F. Carr <jfc@mit.edu>
9500
9501 * alias.c (*_dependence): Call base_alias_check before canon_rtx.
9502 (base_alias_check): If no base found for address call canon_rtx and
9503 try again.
9504
8fa4e1b4
JL
9505Mon Jan 5 11:39:49 1998 Jeffrey A Law (law@cygnus.com)
9506
9507 * mips.c (mips_expand_prologue): Handle large frame with no outgoing
9508 arguments for mips16.
9509 (mips_expand_epilogue): Pass "orig_tsize" to save_restore_insns.
9510 Don't lose if tsize is zero after handling large stack for mips16.
9511 * mips.md (return): For trivial return, return address is in $31.
9512
eb774d8d
NS
9513Sun Jan 4 20:24:00 1998 Nigel Stephens <nigel@algor.co.uk>
9514
9515 * mips/mips16.S: Various changes to make it work with -msingle-float
9516 and -EL.
9517
2bcb2ab3
GK
9518Sun Jan 4 14:25:18 1998 Gavin Koch <gavin@cygnus.com>
9519 Ian Lance Taylor <ian@cygnus.com>
9520 Jeff Law <law@cygnus.com>
9521
9522 * mips.c, mips.h, mips.md: First cut at merging in mips16
9523 support. Major modifications throughout all three files.
9524
db0d1ed9
SS
9525Sun Jan 4 01:01:50 1998 scott snyder <snyder@d0sgif.fnal.gov>
9526
9527 * configure.in: Make gthr-default.h a forwarding header instead of
9528 a symlink.
9529
79873958
KG
9530Sat Jan 3 12:08:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9531
86e011ad
KG
9532 * gcov-io.h: Include sys/types.h to ensure we get size_t.
9533
79873958
KG
9534 * pa.h (ASM_OUTPUT_MI_THUNK): Add missing % in fprintf.
9535
35a42f5f
JW
9536Fri Jan 2 23:40:09 1998 Jim Wilson (wilson@cygnus.com)
9537 Jeffrey A Law (law@cygnus.com)
9538
9539 * crtstuff.c (__frame_dummy): New function for irix6.
9540 (__do_global_ctors): Call __frame_dummy for irix6.
9541 * iris6.h (LINK_SPEC): Hide __frame_dummy too.
9542
ef86d2ee
WL
9543Fri Jan 2 04:57:57 1998 Weiwen Liu <liu@hepmail.physics.yale.edu>
9544
9545 * alpha.c (vms_valid_decl_attribute_p): Move within #if OPEN_VMS.
9546
6c174fc0
RH
9547Fri Jan 2 04:34:14 1998 Richard Henderson <rth@cygnus.com>
9548
9549 * c-decl.c (init_decl_processing): Provide proper fallback symbol
9550 for __builtin_memset.
9551 * expr.c (expand_builtin) [MEMSET]: Arg 3 type code is INTEGER_TYPE
9552 not INTEGER_CST. Assert arg 3 is a constant.
9553
9554 * alpha.c (mode_width_operand): Accept 64-bit modes.
9555 (mode_mask_operand): Likewise.
9556 (print_operand): Likewise for 'M' and 'U' codes.
9557 (alpha_expand_unaligned_load): New function.
9558 (alpha_expand_unaligned_store): Likewise.
9559 (alpha_expand_unaligned_load_words): Likewise.
9560 (alpha_expand_unaligned_store_words): Likewise.
9561 (alpha_expand_block_move): Likewise.
9562 (alpha_expand_block_clear): Likewise.
9563 * alpha.h (MOVE_RATIO): New define.
9564 * alpha.md (extxl, ext*h, ins*l, mskxl): Name them.
9565 (insql, insxh, mskxh, extv, extzv, insv, movstrqi, clrstrqi): New.
9566
9567 * alpha.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE): Set to 3.
9568 (CONSTANT_ALIGNMENT, DATA_ALIGNMENT): Disable.
9569
8fbf199e
RH
9570Thu Jan 1 15:40:15 1998 Richard Henderson <rth@cygnus.com>
9571
9572 * configure.in: Put parenthesis around TARGET_CPU_DEFAULT's value.
9573 * configure: Update.
9574
2d490e3e
JL
9575Thu Jan 1 10:49:12 1998 Jeffrey A Law (law@cygnus.com)
9576
aa2ae679
JL
9577 * emit-rtl.c (operand_subword): Correctly handle extracting a word
9578 from a CONST_DOUBLE for 16bit targets with !WORDS_BIG_ENDIAN.
9579
2d490e3e
JL
9580 * mn10200.md (tstxx, cmpxx): Use "nonimmediate_operand" as predicate
9581 for first argument.
9582
6e26218f
ILT
9583Wed Dec 31 14:42:18 1997 Ian Lance Taylor <ian@cygnus.com>
9584
9585 * configure.in: Set and subsitute host_exeext. Use it when creating
9586 the assembler and linker symlinks.
9587 * configure: Rebuild.
9588 * Makefile.in (exeext): Set to @host_exeext@.
9589 (build_exeext): New variable, set to @build_exeext@.
9590 (FLAGS_TO_PASS): Pass down build_exeext.
9591 (STAGESTUFF): Use build_exeext, not exeext, for gen* and bi*
9592 programs.
9593
1b31097e
JL
9594Wed Dec 31 10:05:44 1997 Jeffrey A Law (law@cygnus.com)
9595
9596 * mn10200.md (addsi3, subsi3): Fix thinkos.
9597
194faace
RH
9598Tue Dec 30 00:04:49 1997 Richard Henderson <rth@cygnus.com>
9599
9600 * sparc.h (ASM_OUTPUT_MI_THUNK): Move %o7 through %g1 instead of
9601 save+restore. Fix pic+big_offset delay slot. Use "pic" case for
9602 unix always, since we want to be able to thunk to functions in a
9603 shared library from an application.
9604
975602f8
ILT
9605Mon Dec 29 14:37:31 1997 Ian Lance Taylor <ian@cygnus.com>
9606
9607 * mips/t-ecoff (CROSS_LIBGCC1): Define to libgcc1-asm.a.
9608 (LIB1ASMSRC, LIB1ASMFUNCS): Define.
9609
0eb1ad44
JL
9610Mon Dec 29 14:03:38 1997 Jeffrey A Law (law@cygnus.com)
9611
9612 * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
9613 offset's mode is not ptr_mode, convert it.
9614
eff0f7ac
MM
9615Mon Dec 29 15:58:18 1997 Michael Meissner <meissner@cygnus.com>
9616
9617 * libgcc2.c (inhibit_libc): Don't define inhibit_libc when cross
9618 compiling if it was already defined.
9619
2c3a56ad
JL
9620Sun Dec 28 00:32:16 1997 Jeffrey A Law (law@cygnus.com)
9621
9622 * flow.c (find_basic_blocks): Don't create a new basic block
9623 for calls in a LIBCALL block.
9624
fc97718f
DE
9625Sun Dec 28 00:30:24 1997 David Edelsohn <edelsohn@mhpcc.edu>
9626
9627 * config/fp-bit.c (L_df_to_sf): Fix typo in last change.
9628
5b5a2a1e
JL
9629Sat Dec 27 22:43:12 1997 Jeffrey A Law (law@cygnus.com)
9630
9631 * cse.c (rtx_cost): Remove conflicting default case.
9632
128f7968
RH
9633Sat Dec 27 21:20:02 1997 Richard Henderson <rth@cygnus.com>
9634
9635 * configure.in: Move default enabling of Haifa out of for loop.
9636 * configure: Rebuild.
9637
e81b4fbe
JL
9638Thu Dec 25 01:02:54 1997 Jeffrey A Law (law@cygnus.com)
9639
9640 * version.c: Bump for snapshot.
9641
f24af81b
TT
96421997-12-25 Teemu Torma <tot@trema.com>
9643
9644 * Makefile.in (GTHREAD_FLAGS): New var.
9645 (LIBGCC2_CFLAGS): Added $(GTHREAD_FLAGS).
9646 (distclean): Remove gthr-default.h.
9647
9648 * configure.in: Accept dce as a thread package.
9649 Check for thread.h and pthread.h.
9650 Link gthr-default.h to appropriate thread file and set
9651 gthread_flags.
9652 (hppa1.1-*-hpux10*): If --enable-threads, use dce threads and
9653 include multilib definitions from pa/t-dce-thr.
9654 (sparc-*-solaris2*): Enable threads by default, if thread.h or
9655 pthread.h is found, preferring posix threads over solaris ones.
9656
9657 * config/pa/t-dce-thr: New file.
9658 * config/pa/t-pa: Removed multilibs.
9659 * config/sparc/t-sol2: Ditto.
b57062ca 9660
f24af81b
TT
9661 * gthr.h: New file.
9662 * gthr-single.h: New file.
9663 * gthr-posix.h: New file.
9664 * gthr-solaris.h: New file.
9665 * gthr-dce.h: New file.
9666 * libgcc-thr.h: Removed.
9667 * objc/thr-dce.c: New file copied from thr-decosf1.c.
9668
9669 * frame.c: Include gthr.h instead of libgcc-thr.h.
9670 * libgcc2.c: Include gthr.h instead of libgcc-thr.h.
9671 (eh_context_initialize): If __gthread_once fails, use static eh
9672 context.
9673 (eh_context_free): Call __gthread_key_dtor.
9674
d9a4ee00
JL
9675Wed Dec 24 23:33:17 1997 Jeffrey A Law (law@cygnus.com)
9676
9677 * expr.h (MUST_PASS_IN_STACK): Allow target port to override.
9678
04bd620d
JW
9679Wed Dec 24 23:12:14 1997 Jim Wilson <wilson@cygnus.com>
9680
556c714b 9681 * cse.c (max_insn_uid): New variable.
556c714b
JW
9682 (cse_around_loop): Use max_insn_uid.
9683 (cse_main): Set max_insn_uid.
9684
04bd620d
JW
9685 * abi64.h (LONG_MAX_SPEC): Check MIPS_ABI_DEFAULT and TARGET_DEFAULT,
9686 and define __LONG_MAX__ appropriately. Add support for -mabi=X,
9687 -mlong64, and -mgp{32,64} options.
9688 * mips.c (mips_abi): Change type to int.
9689 * mips.h (enum mips_abi_type): Delete.
9690 (ABI_32, ABI_N32, ABI_64, ABI_EABI): Define as constants.
9691 (mips_abi): Change type to int.
9692
439d5a35
JC
9693Wed Dec 24 22:38:34 1997 John Carr <jfc@mit.edu>
9694
9695 * flags.h, toplev.c, calls.c, alias.c: Remove flag_alias_check;
9696 optimization is now always enabled.
9697
9698 * calls.c (expand_call): Recognize C++ operator new as malloc-like
9699 function.
9700
9701 * alias.c (memrefs_conflict_p): Eliminate tests now done by
9702 base_alias_check.
9703 (*_dependence): Call canon_rtx before base_alias_check.
9704 (init_alias_once): New function to precompute set of registers which
9705 can hold Pmode function arguments.
9706
9707 * rtl.h: Declare init_alias_once.
9708
9709 * toplev.c (compile_file): Call init_alias_once.
9710
280e521f
JL
9711Wed Dec 24 22:34:55 1997 Jeffrey A Law (law@cygnus.com)
9712
9713 * tree.c (restore_tree_status): Do not dereference a null pointer.
9714
95b8c0c8
PE
9715Tue Dec 23 12:56:46 1997 Paul Eggert <eggert@twinsun.com>:
9716
9717 * genattrtab.c (main): Check HAVE_{G,S}ETRLIMIT in addition to
9718 RLIMIT_STACK. This maintains consistency with the recent, similar
9719 patch to cccp.c and toplev.c.
9720
71d9b493
RH
9721Tue Dec 23 05:17:28 1997 Richard Henderson <rth@cygnus.com>
9722
9723 * genattrtab.c (expand_units): For large nr opclasses, expand
9724 function_units_used with ORX to prevent blowups. Tag with FFS.
9725 (num_unit_opclasses): New variable.
9726 (gen_unit): Update it.
9727 (enum operator): Add ORX_OP.
9728 (operate_exp): Treat ORX as or, except don't expand across an if.
9729 Reuse number rtx's after operating on them.
9730 (check_attr_value): Accept IOR, AND, & FFS.
9731 (write_test_expr): Transmute `in_comparison' to `flags'. Allow
9732 for attribute value caching. Handle CONST_STRING, IF_THEN_ELSE.
9733 (write_expr_attr_cache, write_toplevel_expr): New functions.
9734 (write_attr_get): Handle FFS-tagged expressions.
9735 (make_canonical): Don't expand const attributes.
9736 (convert_const_symbol_ref): Dike out.
9737 (evaluate_eq_attr): Handle SYMBOL_REF.
9738 (main): Don't emit get_attr_foo for const attributes.
9739
9740 * alpha.c (override_options): Reinstate PROCESSOR_EV6.
9741 (alpha_adjust_cost): Add EV6 tuning; streamline EV5 tests.
9742 * alpha.h (REGISTER_MOVE_COST): Increase ftoi/itof cost slightly.
b57062ca
UD
9743 * alpha.md: Redo all of the scheduling, adding EV6 support, and
9744 combining function units where possible.
71d9b493
RH
9745 (attr "type"): Split loads, stores, cmov into int/fp. Combine
9746 multiplies and divides. Add EV6 sqrt, ftoi, itof.
9747 (attr "opsize"): New attribute.
9748 (sqrtsf2-1, sqrtdf2-1): Provide proper TP_INSN patterns.
9749 (movsf2-[12], movdf2-[12]): Provide CIX varients; don't allow CIX
9750 to control register allocation.
9751 (movsi2-1, movdi2-1): Likewise.
9752
b0435cf4 9753Tue Dec 23 03:53:21 1997 Richard Henderson <rth@cygnus.com>
b57062ca 9754
b0435cf4
RH
9755 * alpha.h (CPP_PREDEFINES, LIB_SPEC, LINK_SPEC, STARTFILE_SPEC,
9756 MD_STARTFILE_PREFIX, ASM_FILE_START, ASM_SPEC, ASM_FINAL_SPEC):
9757 Move OSF/1 specific defines out.
9758 * alpha/elf.h (TARGET_VERSION, CPP_PREDEFINES, DEFAULT_VTABLE_THUNKS):
9759 Move Linux specific defines out.
9760 (LINK_SPEC): Genericize.
9761 (ASM_FILE_START): Emit .arch if using more than the base insn set.
9762 (ASM_OUTPUT_SOURCE_LINE): Remove; identical to alpha.h version.
9763 (SDB_DEBUGGING_INFO): Remove; gas can't handle it.
9764 (HANDLE_SYSV_PRAGMA): Define.
9765 * alpha/osf.h: New file.
9766 * alpha/linux.h: Split. Retain file-format independant defines.
9767 Import Linux bits from elf.h.
9768 (CPP_PREDEFINES): Take a file-format specific SUB_CPP_PREDEFINES
9769 (FUNCTION_PROFILER): _mcount takes its address in $28.
9770 (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Remove undef.
9771 * alpha/linux-ecoff.h: New file.
9772 * alpha/linux-elf.h: New file.
9773 * alpha/vms.h (LIB_SPEC, LINK_SPEC): Copy from osf.h.
9774 * alpha/win-nt.h (TARGET_DEFAULT): Define.
9775 * configure.in (alpha*-*-osf*, alpha*-*-linux*) [tm_file]:
9776 Add new headers as appropriate.
b57062ca 9777
b0435cf4
RH
9778 * configure.in (alpha*): Enable Haifa by default.
9779 (*-*-winnt3*): Change to winnt*, since we're not v3 specific.
9780 * configure: Rebuild.
b57062ca 9781
5768f211
RH
9782Tue Dec 23 03:14:54 1997 Richard Henderson <rth@cygnus.com>
9783
9784 * Makefile.in (clean): Remove the stages with their objects here ...
9785 (distclean): ... instead of here.
9786
9e04c65a 9787Mon Dec 22 11:24:01 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 9788
9e04c65a
KG
9789 * cse.c (rtx_cost): Add default case in enumeration switch.
9790 * fix-header.c (recognized_macro): Likewise.
9791 (recognized_extern): Likewise.
9792 (write_rbrac): Likewise.
9793 * objc/objc-act.c (encode_aggregate): Likewise.
9794 (gen_declarator): Likewise.
9795 (gen_declspecs): Likewise.
9796
1d88b804
JL
9797Mon Dec 22 09:58:51 1997 Jeffrey A Law (law@cygnus.com)
9798
9799 * haifa-sched.c (create_reg_dead_note): Detect and handle another
9800 case where we kill more regs after sched than were killed before
9801 sched.
9802 * sched.c (create_reg_dead_note): Similarly.
9803
bbeba0ba
JL
9804Mon Dec 22 09:18:37 1997 Jeffrey A Law (law@cygnus.com)
9805
9806 * c-pragma.c: Include flags.h.
9807
05853640
MK
9808Sun Dec 21 22:10:59 1997 Mumit Khan <khan@xraylith.wisc.edu>
9809
9810 * i386/cygwin32.h (NO_IMPLICIT_EXTERN_C): Don't assume anything
9811 about system headers.
9812 (LIB_SPEC): Add -ladvapi32 -lshell32 to be consistent with mingw32
9813 and also to resolve symbols in prefix.c.
9814
9815 * i386/xm-cygwin32.h (HAVE_BCOPY): Define. This avoids a conflict
9816 between gansidecl.h and newlib's _ansi.h when building libgcc2.a,
9817 when the definitions in auto-config.h is not visible.
9818 (HAVE_BZERO): Likewise.
9819 (HAVE_BCMP): Likewise.
9820 (HAVE_RINDEX): Likewise.
9821 (HAVE_INDEX): Likewise.
9822
44201dba
JL
9823Sun Dec 21 21:54:22 1997 Jeffrey A Law (law@cygnus.com)
9824
9825 * pa.c (emit_move_sequence): Handle a function label source
9826 operand.
9827
d300e551
NC
9828Sun Dec 21 16:13:55 1997 Nick Clifton <nickc@cygnus.com
9829
9830 * c-pragma.c (handle_pragma_token): Generate warning messages
9831 about unknown pragmas if warn_unknown_pragmas is set.
9832
9833 * c-decl.c (c_decode_option): Parse -Wunknown-pragmas command
9834 line option to set variable: warn_unknown_pragmas.
9835
d3245704
MH
9836Sun Dec 21 15:51:10 1997 Manfred Hollstein <manfred@lts.sel.alcatel.de>
9837
9838 * m68k/mot3300.h (ASM_BYTE_OP): Don't include '\t' in the
9839 definition.
9840 (ASM_OUTPUT_ASCII): Prefix ASM_BYTE_OP by one single '\t'.
9841
5198352e
JL
9842Sun Dec 21 13:58:39 1997 Jeffrey A Law (law@cygnus.com)
9843
9844 * Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS): Define.
9845 (libgcc2.a): Depend on $(DPBIT) and $(FPBIT). Add rules to
9846 generate more fine grained floating point emulation libraries.
9847 * config/fp-bit.c: Add protecting #ifdef to all functions so
9848 that they can be compiled separately. If !FINE_GRAINED_LIBRARIES,
9849 then compile all suitable functions.
9850 (pack_d, unpack_d, fpcmp_parts): Add declarations, define with two
9851 underscores to avoid namespace pollution.
9852 * t-mn10200 (LIB2FUNCS_EXTRA): Remove fp-bit.c
9853 (FPBIT): Define.
9854 * t-mn10300 (LIB2FUNCS_EXTRA): Remove fp-bit.c and dp-bit.c
9855 (FPBIT): Define.
9856 (DPBIT): Define.
9857
9f1ff8e8 9858Sat Dec 20 11:26:47 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1d300e19
KG
9859 Jeff Law <law@cygnus.com>
9860
9861 * bitmap.c (bitmap_clear): Ensure `inline' is at the beginning
9862 of the declaration.
9863 * c-decl.c (finish_decl): Use parentheses around && within ||.
9864 * rtl.c: Include stdlib.h.
9865 (read_skip_spaces): Add parentheses around assignments used as
9866 truth values.
9867 (read_rtx): Initialize list_rtx.
9868 * cppexp.c (parse_number): Use || when operands are truth values.
9869 * alias.c (find_base_value): Add default case.
9870 (memrefs_conflict): Likewise.
9871 * combine.c (sets_function_arg_p): Likewise.
9872 * genemit.c (gen_exp): Likewise.
9873 * local-alloc.c (contains_replace_regs): Likewise.
9874 * rtlanal.c (jmp_uses_reg_or_mem): Likewise.
9875 * fold-const.c (fold_convert): Use "&&" for truth values.
9876 (fold): Add default case.
9877 * sdbout.c (sdbout_field_types): Fix typo in declaration.
9878 (sdbout_one_type): Add default case.
9879 * alpha.c (alpha_sa_mask): Prototype only if OPEN_VMS.
9880 (some_operand): Add default case.
9881 (input_operand): Likewise.
9882 (signed_comparison_operator): Likewise.
9883 (divmod_operator): Likewise.
9884 (alpha_set_memflags_1): Likewise.
9885 * reload1.c (reload_cse_simplify_operands): Ensure function
9886 always returns a value.
9887 * scan-decls.c (scan_decls): Likewise.
9888 * c-lex.c (skip_white_space): Fix typo in declaraion.
9889 * c-typeck.c (comp_target_types): Add parentheses around assignment
9890 used as truth value.
9891 (print_spelling): Likewise.
9892 (constructor_implicit, constructor_result): Remove unused variables.
9893 * collect2.c (scan_library): Protect prototype with
9894 #ifdef SCAN_LIBRARIES.
9895 * emit-rtl.c (find_line_note): Fix typo in declaration.
b57062ca 9896 * final.c (asm_insn_count): Protect prototype with
1d300e19
KG
9897 #ifdef HAVE_ATTR_length.
9898 * flow.c (find_auto_inc): Protect prototype with #ifdef AUTO_INC_DEC.
9899 (try_pre_increment_1, try_pre_increment): Likewise.
9900 * regclass.c (auto_inc_dec_reg_p): Protect prototype with
9901 #ifdef FORBIDDEN_INC_DEC_CLASSES. Make return type explicit.
9902 * gcov-io.h (__store_long, __write_long, __read_long): Fix
9903 unsigned/signed comparisons.
9904 * gcov.c (read_files): Remove unused "first_type" variable.
9905 (scan _for_source_files): Initialize s_ptr.
9906 (function_summary): Eliminate "%lf" formatting, use %ld for
9907 longs.
9908 (output_data): Initialize branch_probs and last_line_num.
9909 Eliminate "%lf" formatting, use "%ld" for longs.
9910
18543a22
ILT
9911Fri Dec 19 17:31:11 1997 Ian Lance Taylor <ian@cygnus.com>
9912
afba61d1
ILT
9913 * mips16.S: New file.
9914
9915 * libgcc2.c (varargs): Handle mips16.
9916
18543a22
ILT
9917 * expr.c (do_tablejump): Let CASE_VECTOR_PC_RELATIVE be an
9918 expression.
9919 * stmt.c (expand_end_case): Likewise.
9920 * alpha.h (CASE_VECTOR_PC_RELATIVE): Update.
9921 * fx80.h, gmicro.h, m68k.h, m88k.h, ns32k.h: Likewise.
33f7f353 9922 * rs6000.h, sh.h, tahoe.h, v850.h, vax.h: Likewise.
18543a22 9923
dbf3231e
AS
9924Tue Dec 16 15:14:09 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
9925
9926 * objc/Make-lang.in: Create runtime-info.h and libobjc_entry.o in
9927 the build directory.
9928 (libobjc.a): Update dependency list.
9929 (libobjc.dll): Likewise. Use libobjc_entry.o from the build
9930 directory.
9931 (objc/sendmsg.o): Add -Iobjc to find runtime-info.h.
9932 (objc.mostlyclean): Remove runtime-info.h.
9933
e1ee5cdc
RH
9934Fri Dec 19 00:19:42 1997 Richard Henderson <rth@cygnus.com>
9935
9936 * tree.c (build_range_type): Allow creation of ranges with no maximum.
9937 * dbxout.c (dbxout_range_type): Handle missing TYPE_MAX_VALUE.
9938 * dwarf2out.c (add_subscript_info): Likewise.
9939 * dwarfout.c (subscript_data_attribute, byte_size_attribute): Likewise.
9940 * sdbout.c (plain_type_1): Likewise.
9941 * stmt.c (pushcase_range, all_cases_count, node_has_high_bound):
9942 Likewise.
9943 * fold-const.c (int_const_binop, fold_convert, make_range, fold):
9944 Likewise.
9945
dfe91418 9946Thu Dec 18 17:05:10 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 9947
dfe91418
JL
9948 * mips.c (fatal): Remove declaration.
9949
99501997-12-18 Mark Mitchell <mmitchell@usa.net>
9951
9952 * integrate.c (get_label_from_map): New function.
9953 (expand_inline_function): Use it. Initialize the label_map to
9954 NULL_RTX instead of gen_label_rtx.
9955 (copy_rtx_and_substitute): Use get_label_from_map.
9956 * integrate.h (get_label_from_map): New function.
9957 (set_label_from_map): New macro.
9958 * unroll.c (unroll_loop): Use them.
9959 (copy_loop_body): Ditto.
9960
337e2b69
ILT
9961Thu Dec 18 19:19:57 1997 Ian Lance Taylor <ian@cygnus.com>
9962
9963 * mips/mips.h (INIT_SUBTARGET_OPTABS): Define if not defined.
9964 (INIT_TARGET_OPTABS): Define.
9965 * mips/ecoff.h: Include gofast.h before mips.h.
9966 (INIT_SUBTARGET_OPTABS): Define instead of INIT_TARGET_OPTABS.
9967 * mips/elf64.h: Likewise.
9968 * mips/elf.h (ASM_OUTPUT_SECTION_NAME): Define.
9969
02531345
JM
9970Thu Dec 18 14:51:12 1997 Jason Merrill <jason@yorick.cygnus.com>
9971
9972 * except.c: Remove register_exception_table{,_p}.
9973
913b5d54
GK
9974Thu Dec 18 14:57:29 1997 Gavin Koch <gavin@cygnus.com>
9975
efb84aa5
GK
9976 * unroll.c (calculate_giv_inc): Handle constant increment found in
9977 a MEM with an appropriate REG_EQUAL note.
9978
bb1b857a
GK
9979 * calls.c (expand_call): Implement LOAD_ARGS_REVERSED.
9980
913b5d54
GK
9981 * dwarf2out.c (dwarf2out_frame_debug): Handle adjustments of the
9982 frame pointer in the prologue.
9983
80aab652
RL
9984Thu Dec 18 00:19:38 1997 Robert Lipe <robertl@dgii.com>
9985
9986 * i386/x-sco5 (CLIB) Deleted. (ALLOCA) Added.
9987 * i386/xm-sco5.h (USE_C_ALLOCA) Added.
9988
f5c4bc60 9989Tue Dec 16 18:51:00 1997 Bill Moyer <billm@cygnus.com>
b57062ca 9990
f5c4bc60
BM
9991 * config/m68k/m68k.c (output_function_prologue): Typecast
9992 dwarf2out_cfi_label to (char *).
9993 * config/m68k/m68kemb.h (STARTFILE_SPEC): Redefined to "".
b57062ca 9994
8dcb5295
RH
9995Wed Dec 17 15:06:04 1997 Richard Henderson <rth@cygnus.com>
9996
9997 * sparc.md (jump): Don't use the annul bit around an empty loop.
9998 Patch from Kevin.Kelly@East.Sun.COM.
9999
a99503b1
SC
10000Wed Dec 17 00:51:36 1997 Stan Cox (scox@cygnus.com)
10001
b57062ca 10002 * jump.c: (jump_optimize): Don't use the return register as a
a99503b1
SC
10003 source1 of a conditional move.
10004
e13c943c
RH
10005Tue Dec 16 23:45:40 1997 Richard Henderson <rth@cygnus.com>
10006
10007 * sparc.c (DF_MODES): Or the mask not the bit number.
10008 (function_arg) [ARCH64]: Send unprototyped arg to fp reg first.
10009
be3d27d6
CI
10010Wed Dec 17 00:13:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
10011
10012 * combine.c (force_to_mode): return immediately if operand is a CLOBBER.
10013
f184a264
MH
10014Tue Dec 16 23:44:54 1997 Manfred Hollstein <manfred@s-direktnet.de>
10015
ade7386a
MH
10016 * fixincludes (size_t): Add support for Motorola's stdlib.h
10017 which fails to provide a definition for size_t.
10018 (fabs/hypot): Provide a prototype for fabs on m88k-motorola-sysv3.
10019 (strlen,strspn,strcspn return value): Handle different layout on sysV88.
10020 (hypot): Provide a fake for hypot for m88k-motorola-sysv3.
10021
f184a264
MH
10022 * m68k/xm-mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Define to
10023 prevent unresolved externals in libio.
10024 * m88k/xm-sysv3.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Likewise.
10025
afc96791
L
10026Tue Dec 16 23:25:45 1997 H.J. Lu (hjl@gnu.org)
10027
10028 * config/sparc/linux64.h (LIBGCC_SPEC): Removed.
10029 (CPP_SUBTARGET_SPEC): Add %{pthread:-D_REENTRANT}.
10030 (LIB_SPEC): Updated for glibc 2.
10031
e9818f3c
JL
10032Tue Dec 16 20:11:36 1997 Jeffrey A Law (law@cygnus.com)
10033
10034 * ginclude/stdarg.h: Undo BeOS changes, they break hpux.
10035 * ginclude/varargs.h: Likewise.
10036
a3fd4e75 10037Tue Dec 16 00:32:01 1997 Jeffrey A Law (law@cygnus.com)
520cd331
JL
10038
10039 * version.c: Bump for snapshot.
10040
a3fd4e75
JL
10041Tue Dec 16 00:14:29 1997 H.J. Lu (hjl@gnu.org)
10042
10043 * frame.h (__register_frame, __register_frame_table,
10044 __deregister_frame): New.
10045 * frame.c (__register_frame, __register_frame_table,
10046 __deregister_frame): New.
10047 * frame.c (__deregister_frame_info): Return void *.
10048 * frame.h (__deregister_frame_info): Ditto.
10049 * collect2.c (__deregister_frame_info): Ditto.
10050
166cdf4a
RH
10051Mon Dec 15 18:40:08 1997 Richard Henderson <rth@cygnus.com>
10052
10053 * expmed.c (expand_shift): If SHIFT_COUNT_TRUNCATED, drop a SUBREG.
10054
bcbbac26
RH
10055Mon Dec 15 18:31:43 1997 Richard Henderson <rth@cygnus.com>
10056
10057 * alpha.c (alpha_cpu_name): New variable.
10058 (alpha_mlat_string): Likewise.
10059 (alpha_memory_latency): Likewise.
10060 (override_options): Handle -mmemory-latency.
10061 (alpha_adjust_cost): Adjust load cost for latency.
10062 * alpha.h (TARGET_OPTIONS): Add meory-latency.
10063 (REGISTER_MOVE_COST): Define in terms of memory_latency. Take
10064 TARGET_CIX into account.
10065 (MEMORY_MOVE_COST): Define in terms of memory_latency.
10066 * invoke.texi (DEC Alpha Options): Document -mmemory-latency.
10067
10068 * alpha.h (ASM_COMMENT_START): New macro.
10069
10070Mon Dec 15 17:48:05 1997 Richard Henderson <rth@cygnus.com>
1914f5da
RH
10071
10072 * reload.h, reload1.c (eliminate_regs), caller-save.c, dbxout.c,
10073 dwarfout.c, dwarf2out.c, reload.c, sdbout.c: Revert March 15 change.
10074
10075 * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
10076 SUBREG_REG if the word count is unchanged.
10077 * reload1.c (eliminate_regs) [case SET]: If W_R_O, preserve
10078 subregs of identical word size for push_reload.
10079
a701efba
MM
10080Mon Dec 15 Mark Mitchell <mmitchell@usa.net> 11:41:32 1997
10081
10082 * toplev.c (rest_of_compilation): Don't call save_for_inline_copy
10083 if all we're doing is dealing with -Wreturn-type.
10084
5e21ac7a
RH
10085Mon Dec 15 09:44:39 1997 Richard Henderson <rth@cygnus.com>
10086
10087 * alpha.md (zero_extendqihi2, zero_extendqisi2, zero_extendqidi2):
10088 Use and 255 instead of zapnot 1, since it schedules better.
10089
296f8acc
JL
10090Mon Dec 15 08:48:24 1997 Jeffrey A Law (law@cygnus.com)
10091
10092 * stmt.c (expand_asm_operands): If an ASM has no outputs, then treat
10093 it as volatile.
10094
6d8ccdbb
JL
10095Mon Dec 15 00:04:48 1997 Jeffrey A Law (law@cygnus.com)
10096
10097 * haifa-sched.c (remove_dependencies): Set RTX_INTEGRATED_P on
10098 dependency we delete. Properly update prev for multiple consecutive
10099 deletions.
10100 (priority): Skip deleted dependence.
10101
14e83f2e
PB
10102Fri Dec 12 18:54:23 1997 Per Bothner <bothner@cygnus.com>
10103
10104 * expr.c (expand_builtin): Support BUILT_IN_FMOD - just call fmod.
10105
100d81d4
JM
10106Fri Dec 12 01:19:48 1997 Jason Merrill <jason@yorick.cygnus.com>
10107
9b8d9d6b
JM
10108 * flow.c (flow_analysis): Be consistent with find_basic_blocks in
10109 determining when a new basic block starts.
10110
74c3447c
JM
10111 * alpha/osf2or3.h (LIB_SPEC): Restore missing defn.
10112
10113 * pa.h (TEXT_SPACE_P): Use TREE_CODE_CLASS.
10114 * pa.md (iorsi3): Add missing args to *_operand calls.
10115
100d81d4
JM
10116 * except.c (call_get_eh_context): Don't mess with sequences.
10117 (emit_eh_context): Include the call in the sequence here.
10118
5a5ab947
PE
101191997-12-11 Paul Eggert <eggert@twinsun.com>
10120
10121 * collect2.c (write_c_file_glob): Allocate initial frame object
10122 in static storage and pass its address.
10123
01eb7f9a
JM
10124Thu Dec 11 23:33:48 1997 Jason Merrill <jason@yorick.cygnus.com>
10125
10126 * except.c (call_get_eh_context): Don't take a parm.
10127 Put the call at the top of the function.
10128 (emit_eh_context): Adjust.
10129 (get_eh_context): Replace with former use_eh_context.
10130 (get_eh_context_once, get_saved_pc_ref): Remove.
10131 (start_eh_unwinder, end_eh_unwinder, emit_unwinder): Remove.
10132 * except.h: Adjust.
10133 * integrate.c (expand_inline_function): Adjust.
10134 * toplev.c (rest_of_compilation): Don't call emit_unwinder.
10135
d19814a3
ML
10136Fri Oct 10 17:58:31 CEST 1997 Marc Lehmann <pcg@goof.com>
10137
10138 * i386/xm-go32.h (EXECUTABLE_SUFFIX): Define.
10139 (DIR_SEPARATOR, NO_SYS_SIGLIST): Likewise.
10140
7567d496
MH
10141Thu Dec 11 23:55:17 1997 Manfred Hollstein <manfred@s-direktnet.de>
10142
ade7386a 10143 * fixincludes (strlen,strspn,strcspn return value): Handle different
7567d496 10144 layout on sysV88.
b57062ca 10145 (hypot): Provide a fake for hypot which is broken on
7567d496
MH
10146 m88k-motorola-sysv3.
10147
0a6969ad
JC
10148Thu Dec 11 23:50:17 1997 John F. Carr <jfc@mit.edu>
10149
10150 * tree.c, tree.h: Change tree_code_type, tree_code_length, and
10151 tree_code_name from pointers to arrays.
10152 * tree.c: Remove standard_tree_code_* variables, no longer used.
10153 * print-tree.c: Remove declaration of tree_code_name.
10154
10155 * cp/lex.c (init_lex): Update for tree_code_* changes.
10156 * objc/objc-act.c (init_objc): Likewise.
10157
10158 * tree.def, cp/cp-tree.def, objc/objc-tree.def: Update for tree_code
10159 changes.
10160
c55dcc7d
FF
10161Thu Dec 11 23:34:54 1997 Fred Fish <fnf@ninemoons.com>
10162
10163 * config.sub: Add support for BeOS target.
10164 * configure.in: Likewise.
10165 * ginclude/stdarg.h: Likewise.
10166 * ginclude/stddef.h: Likewise.
10167 * ginclude/varargs.h: Likewise.
10168 * rs6000/beos.h: New file for BeOS.
10169 * rs6000/t-beos: Likewise.
10170 * rs6000/x-beos: Likewise.
10171 * rs6000/xm-beos.h: Likewise.
10172 * toplev.c (get_run_time): Just return 0 on BeOS.
10173
9cf3ae46
JL
10174Thu Dec 11 23:25:23 1997 Jeffrey A Law (law@cygnus.com)
10175 Toon Moene (toon@moene.indiv.nluug.nl)
10176
10177 * m68k.h (GO_IF_LEGITIMATE_ADDRESS): No longer cater to horribly
10178 old and broken Sun3 assemblers. Newer versions handle large
10179 offsets correctly as does the GNU assembler.
10180
7cc273ad
L
10181Thu Dec 11 23:06:48 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
10182
10183 * objc/objc-act.c (lang_report_error_function): Disable.
10184 * objc/objc-parse.y: Include "output.h".
10185 (yyerror): Remove redundant decl.
10186 (yyprint): Fix prototype.
10187 (apply_args_register_offset): Remove redundant decl.
10188 (get_file_function_name): Likewise.
10189
74d7ab55
JM
10190Thu Dec 11 22:02:10 1997 Jason Merrill <jason@yorick.cygnus.com>
10191
10192 * flow.c (find_basic_blocks): A CALL_INSN that can throw starts
10193 a new basic block.
10194 (find_basic_blocks_1): Likewise.
10195
0776059e
JM
10196Thu Dec 11 21:08:48 1997 Jason Merrill <jason@yorick.cygnus.com>
10197
10198 * except.c (use_eh_context): Don't copy_rtx a REG.
10199 (emit_throw): Lose old unwinder support.
10200 (expand_internal_throw): Likewise.
10201 * libgcc2.c (struct eh_context): Likewise.
10202 (new_eh_context): Likewise.
10203 (__get_eh_info): Lose redundant cast.
10204 (__get_dynamic_handler_chain): Likewise.
10205 (__get_saved_pc): Lose.
10206 Lose all old unwinder support code.
10207
154bba13
TT
10208Thu Dec 11 20:42:18 1997 Teemu Torma <tot@trema.com>
10209
10210 Thread-safe EH support for pthreads, DCE threads and Solaris threads.
b57062ca 10211
154bba13
TT
10212 * integrate.c (expand_inline_function): If the inline fn uses eh
10213 context, make sure that the current fn has one.
10214 * toplev.c (rest_of_compilation): Call emit_eh_context.
10215 * except.c (use_eh_context): New fn.
10216 (get_eh_context_once): New fn.
10217 (call_get_eh_context): New fn.
10218 (emit_eh_context): New fn.
10219 (get_eh_context): Call either get_eh_context_once or
10220 call_get_eh_context, depending on what we have.
10221 (get_dynamic_handler_chain): Call get_eh_context_once.
10222 * except.h: Prototypes for fns above.
10223 * optabs.c (get_eh_context_libfunc): Removed.
10224 (init_optabs): Don't initialize it.
10225 * expr.h (get_eh_context_libfunc): Removed.
10226 * rtl.h, rtl.c: New reg_note REG_EH_CONTEXT.
10227 * config/pa/pa.h (CPP_SPEC): Support for -threads.
10228 * config/pa/pa-hpux10.h (LIB_SPEC): Ditto.
10229 * config/pa/t-pa (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
10230 New multilib for -threads.
10231 * config/sparc/t-sol2: Added multilibs for -threads and
10232 made -pthreads alias to it.
10233 * config/sparc/sol2.h (CPP_SPEC, LIB_SPEC):
10234 Added -threads and -pthreads options.
10235 * libgcc-thr.h: New file.
10236 * libgcc2.c: (__get_cpp_eh_context): Removed.
10237 (struct cpp_eh_context): Removed.
10238 (struct eh_context): Replaced cpp_eh_context with generic language
b57062ca 10239 specific pointer.
154bba13
TT
10240 (__get_eh_info): New function.
10241 (__throw): Check eh_context::info.
10242 (__sjthrow): Ditto.
10243 * libgcc2.c: Include libgcc-thr.h.
10244 (new_eh_context, __get_eh_context,
10245 eh_pthread_initialize, eh_context_initialize, eh_context_static,
10246 eh_context_specific, eh_context_free): New functions.
10247 (get_eh_context, eh_context_key): New variables.
10248 (__sjthrow, __sjpopnthrow, __eh_pcnthrow, __throw): Use
10249 get_eh_context to get the context.
10250 (longjmp): Move the declaration inside
10251 #ifdef DONT_USE_BUILTIN_SETJMP.
10252 * frame.c: Include libgcc-thr.h.
10253 (object_mutex): Mutex to protect the object list.
10254 (find_fde, __register_frame, __register_frame_table,
10255 __deregister_frame): Hold the lock while accessing objects.
10256 * except.h (get_eh_context): Declare.
10257 * except.c (current_function_ehc): Define.
10258 (current_function_dhc, current_function_dcc): Removed.
10259 (get_eh_context): New function.
10260 (get_dynamic_handler_chain): Use get_eh_context.
10261 (get_saved_pc_ref): Ditto.
10262 (get_dynamic_cleanup_chain): Removed references to
10263 current_function_dcc.
10264 (save_eh_status, restore_eh_status): Save and restore
10265 current_function_ehc instead.
10266 * optabs.c (get_eh_context_libfunc): New variable.
10267 (init_optabs): Initialize it.
10268 * expr.h: Declare get_eh_context_libfunc.
10269 * function.h (struct function): Replaced dhc and dcc with ehc.
10270 * except.c (get_saved_pc_ref): New functions.
10271 (eh_saved_pc_rtx, eh_saved_pc): Deleted.
10272 (expand_internal_throw_indirect): Use get_saved_pc_ref() instead
10273 of eh_saved_pc.
10274 (end_eh_unwinder): Likewise.
10275 (init_eh): Remove initialization of eh_saved_pc.
10276 * optabs.c (get_saved_pc_libfunc): New variable.
10277 (init_optabs): Initialize it.
10278 * expr.h: Declare get_saved_pc_libfunc.
10279 * except.h (eh_saved_pc_rtx): Deleted.
10280 (get_saved_pc_ref): Declared.
10281
10282 From Scott Snyder <snyder@d0sgif.fnal.gov>:
10283 * libgcc2.c (__get_saved_pc): New.
10284 (__eh_type, __eh_pc): Deleted.
10285 (__eh_pcnthrow): Use __get_saved_pc() instead of __eh_pc.
10286 (__get_dynamic_handler_chain): Move __dynamic_handler_chain inside
10287 this fcn.
10288
68d75312
JC
10289Thu Dec 11 17:23:48 1997 John F. Carr <jfc@mit.edu>
10290
b16d8734
JC
10291 * sparc/sol2.h: Use 64 bit multiply and divide functions in
10292 Solaris libc. Define TARGET_LIVE_G0 and TARGET_BROKEN_SAVERESTORE
10293 as 0.
10294
68d75312
JC
10295 * rtl.h (global_rtl): New variable, replacing separate variables for
10296 commonly used rtl.
10297 (const_int_rtx): Now array of rtx_def, not rtx.
10298 * emit-rtl.c: Update for new rtl data structures.
10299 * genattrtab.c: Define global_rtl.
10300
44517326 10301Thu Dec 11 15:50:29 1997 David Edelsohn <edelsohn@mhpcc.edu>
f40421ce 10302
44517326
DE
10303 * configure.in ({rs6000,powerpc}-*-*): Enable Haifa scheduler by
10304 default.
f40421ce 10305
8587487b
AG
10306Wed Dec 10 12:30:18 1997 Anthony Green <green@cygnus.com>
10307
10308 * crtstuff.c (__do_global_ctors): Fix typo.
10309
08ce3276
MH
10310Tue Dec 9 09:43:59 1997 Manfred Hollstein <manfred@s-direktnet.de>
10311
10312 * toplev.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
10313 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
10314
c229cba9
DE
10315Tue Dec 9 09:38:58 1997 David Edelsohn <edelsohn@mhpcc.edu>
10316
10317 * rs6000.h (FUNCTION_ARG_PADDING): Define.
10318 * rs6000.c (function_arg_padding): New function.
10319
b2c59d0b
MH
10320Tue Dec 9 10:34:21 1997 Manfred Hollstein <manfred@s-direktnet.de>
10321
10322 * m68k.c: Include tree.h only once.
10323
c1132c27
RK
10324Tue Dec 9 09:32:33 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
10325
10326 * integrate.c (save_for_inline_copying): Make a new reg_parm_stack_loc.
10327
ac957f13
JL
10328Tue Dec 9 01:16:06 1997 Jeffrey A Law (law@cygnus.com)
10329
10330 * Partially cleaned up prototyping code from HJ.
a1d061a1 10331 * tree.h: Add many prototypes.
ac957f13
JL
10332 * haifa-sched.c (haifa_classify_insn): Renamed from classify_insn.
10333 All references changed.
10334 * rtl.h: Protect from multiple inclusions. Add many prototypes.
b57062ca 10335
f40421ce 10336Tue Dec 9 01:15:15 1997 Fred Fish <fnf@ninemoons.com>
ac957f13
JL
10337
10338 * libgcc2.c (string.h): Hoist inclusion to occur before first use of
10339 string functions like strlen.
10340
0a232106
MH
10341Tue Dec 9 00:57:38 1997 Manfred Hollstein <manfred@s-direktnet.de>
10342
10343 * configure.in: Check for functions getrlimit and setrlimit.
10344 * cccp.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
10345 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
10346
25b76cc1
JS
10347Mon Dec 8 23:53:26 1997 Jay Sachs <sachs@bull.cs.williams.edu>
10348
10349 * Makefile.in (compare*): Handle losing behavior from 4.4bsd make.
10350
26250081
RH
10351Mon Dec 8 21:03:28 1997 Richard Henderson <rth@cygnus.com>
10352
10353 * alpha.c (REG_RA, alpha_return_addr, output_epilog):
10354 Fix merge problems.
10355
10356 * alpha.c (override_options): Don't know about scheduling for EV6.
10357 * alpha.md (ev5 function units): Don't overload as ev6.
10358
10359 * alpha.c (alpha_adjust_cost): Simplify. Fix typo in ev5 mult case.
10360 * alpha.md (define_attr type): Add mvi.
10361 (ev5_e0): Define sceduling parameters for it.
10362 (TARGET_MAX insns): Type is mvi not shift.
10363
7120f213
RH
10364Mon Dec 8 18:15:00 1997 Richard Henderson <rth@cygnus.com>
10365
10366 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix backported gcc-2.8 bug.
10367
afa80947
R
10368Mon Dec 8 21:17:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10369
10370 * cstamp-h, auto-config.h: Delete.
10371
51ca169b
JL
10372Sun Dec 7 19:19:03 1997 Jeffrey A Law (law@cygnus.com)
10373
10374 * version.c: Bump for snapshot.
10375
16169366
JL
10376Sat Dec 6 22:22:22 1997 Jeffrey A Law (law@cygnus.com)
10377
10378 * cccp.c: Fix typo brought over in merge.
10379
efeb5d4f 10380 * Merge in changes from gcc-2.8.
0fe09481 10381
da932f04
JL
10382Mon Nov 3 05:45:32 1997 Philippe De Muyter <phdm@macqel.be>
10383
10384 * m68k.c: Include tree.h for dwarf2out_cfi_label.
10385
10386 * gcc.c (process_command): Do not take address of function fatal when
10387 calling lang_specific_driver.
10388
10389Sat Dec 6 01:02:38 1997 Mumit Khan <khan@xraylith.wisc.edu>
10390
b57062ca 10391 * config/i386/cygwin32.h (DWARF2_UNWIND): Exception handling
da932f04
JL
10392 doesn't work with it yet, so set it to 0.
10393 * config/i386/xm-cygwin32.h (NO_SYS_SIGLIST): Define.
10394
10395Sat Dec 6 01:01:02 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
10396
10397 * cse.c (cse_insn): Check for invalid entries when taking references.
10398
81797aba
JL
10399Fri Dec 5 18:26:25 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10400
10401 * loop.c (invariant_p): Don't test flag_rerun_loop_opt.
10402 (loop_optimize, scan_loop, strength_reduce): New argument unroll_p.
10403 * toplev.c (rest_of_compilation): Pass it. Remove code to
10404 save / clear / restore flag_unroll_{,all_}loops.
10405
10406Fri Dec 5 16:26:03 1997 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
10407
10408 * i386.c (notice_update_cc): Remove bogus pentium GCC code.
10409
10410Fri Dec 5 16:25:14 1997 Jeffrey A Law (law@cygnus.com)
10411
10412 * stmt.c (warn_if_unused_value): Don't warn for TRY_CATCH_EXPR.
10413
5dfa7520
JM
10414Thu Dec 4 11:51:00 1997 Jason Merrill <jason@yorick.cygnus.com>
10415
d07daca1
JM
10416 * except.c (get_dynamic_handler_chain): Only make the call once per
10417 function.
10418
5dfa7520
JM
10419 * except.c (expand_end_all_catch): Fix for sjlj exceptions.
10420
4d7b7169
R
10421Thu Dec 4 12:30:40 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10422
10423 * sh.c (final_prescan_insn): Use local label prefix
10424 when emitting .uses pseudo-ops.
10425
e701eb4d
JM
10426Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
10427
10428 * libgcc2.c (__throw): Use __builtin_return_addr instead of __eh_pc.
10429 * except.c: Lose outer_context_label_stack.
10430 (expand_eh_region_end): Rethrow from outer_context here.
10431 (expand_fixup_region_end): Let expand_eh_region_end do the rethrow.
10432 (expand_internal_throw): Take no args.
10433 (expand_internal_throw_indirect): Lose.
10434 (expand_leftover_cleanups, expand_start_all_catch): Use expand_rethrow.
10435 (expand_start_all_catch): Start a rethrow region.
10436 (expand_end_all_catch): End it.
10437 (expand_rethrow): New fn.
10438 * except.h: Reflect above changes.
10439 * flow.c: Revert change of Nov 27.
10440
6a242b6a
JL
10441Thu Dec 4 00:24:09 1997 Jeffrey A Law (law@cygnus.com)
10442
10443 * i386/t-sol2 (CRTSTUFF_T_CFLAGS): Turn on the optimizer.
10444
9762d48d
JM
10445Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
10446
10447 * except.c (expand_fixup_region_end): New fn.
10448 (expand_fixup_region_start): Likewise.
10449 (expand_eh_region_start_tree): Store cleanup into finalization here.
10450 * stmt.c (expand_cleanups): Use them to protect fixups.
10451
868e82ab
GK
10452Wed Dec 3 11:41:13 1997 Gavin Koch <gavin@cygnus.com>
10453
10454 * mips/mips.md (muldi3_r4000): Broaden the output template
10455 and attribute assignments to handle three operand dmult;
10456 rename to muldi3_internal2.
10457 (muldi3): Call the new muldi3_internal2 for R4000, and
10458 any GENERATE_MULT3 chip.
10459
716cc7f7
JM
10460Tue Dec 2 19:40:43 1997 Jason Merrill <jason@yorick.cygnus.com>
10461
10462 * stmt.c (expand_decl_cleanup): Update thisblock after eh_region_start.
10463
9fb82071
JW
10464Tue Dec 2 12:54:33 1997 Jim Wilson <wilson@cygnus.com>
10465
10466 * unroll.c (find_splittable_givs): Remove last change. Handle givs
10467 with a dest_reg that was created by loop.
10468
f2d76545
JL
10469Sat Nov 29 12:44:57 1997 David Edelsohn <edelsohn@mhpcc.edu>
10470
10471 * rs6000.c (function_arg_partial_nregs): Undo Nov. 26 patch.
10472
10473 * rs6000/aix41.h (ASM_CPU_SPEC): Define.
10474
b4dfb707
JL
10475Fri Nov 28 10:00:27 1997 Jeffrey A Law (law@cygnus.com)
10476
10477 * configure.in: Fix NCR entries.
10478
80c2681c
JL
10479Thu Nov 27 12:20:19 1997 Jeffrey A Law (law@cygnus.com)
10480
586a5f99
JL
10481 * flow.c (find_basic_blocks): Handle cfg issues for rethrows and
10482 nested exceptions correctly.
10483
80c2681c
JL
10484 * unroll.c (find_splittable_givs): Don't split givs with a dest_reg
10485 that was created by loop.
10486
f45ebe47
JL
10487Thu Nov 27 09:34:58 1997 Jason Merrill <jason@yorick.cygnus.com>
10488
10489 * expr.c (preexpand_calls): Don't look past a TRY_CATCH_EXPR.
10490
10491 * except.c (expand_start_all_catch): One more do_pending_stack_adjust.
10492
034e84c4
MM
10493Wed Nov 26 15:47:30 1997 Michael Meissner <meissner@cygnus.com>
10494
8fbd2dc7
MM
10495 * rs6000.c (SMALL_DATA_REG): Register to use for small data relocs.
10496 (print_operand): Use SMALL_DATA_REG for the register involved in
10497 small data relocations.
10498 (print_operand_address): Ditto.
10499
10500 * rs6000/linux.h (LINK_SPEC): Pass -dynamic-linker /lib/ld.so.1 if
10501 -dynamic linker is not used.
10502
a226df46
MM
10503 * rs6000.md (call insns): For local calls, use @local suffix under
10504 System V. Don't use @plt under Solaris.
10505
034e84c4
MM
10506 * rs6000.c (output_function_profiler): Put label address in r0, and
10507 store LR in 4(sp) for System V/eabi.
10508
10509 * rs6000.h (ASM_OUTPUT_REG_{PUSH,POP}): Keep stack aligned to 16
10510 byte boundary, and maintain stack backchain.
10511
f2d76545
JL
10512Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
10513
10514 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
10515 fix_truncsfdi2): Change *.
10516
33e5c8c3
JM
10517Wed Nov 26 11:12:26 1997 Jason Merrill <jason@yorick.cygnus.com>
10518
10519 * toplev.c (main): Complain about -gdwarfn.
10520
f45ebe47
JL
10521Tue Nov 25 22:43:30 1997 Jason Merrill <jason@yorick.cygnus.com>
10522
b57062ca 10523 * dwarfout.c (output_type): If finalizing, write out nested types
f45ebe47
JL
10524 of types we've already written.
10525
92dcf4c8
MM
10526Tue Nov 25 20:32:24 1997 Michael Meissner <meissner@cygnus.com>
10527
10528 (patches originally from Geoffrey Keating)
10529 * rs6000.c (function_arg): Excess floating point arguments don't
10530 go into GPR registers after exhausting FP registers under the
10531 System V.4 ABI.
10532 (function_arg_partial_nregs): Ditto.
10533
10534 * rs6000.md (call insns): If -fPIC or -mrelocatable, add @plt
10535 suffix to calls.
10536
f4744807
JM
10537Tue Nov 25 23:37:27 1997 Jason Merrill <jason@yorick.cygnus.com>
10538
10539 * integrate.c (output_inline_function): Just unset DECL_INLINE.
10540
10541Tue Nov 25 23:33:29 1997 scott snyder <snyder@d0sgif.fnal.gov>
10542
10543 * dwarf2out.c (outout_call_frame_info): Ensure that the info has
10544 proper alignment.
10545
10546 * libgcc2.c (__throw): Initialize HANDLER.
10547
0609f021
JW
10548Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
10549
10550 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
10551 fix_truncsfdi2): Change *X to ?*X.
10552
c905c108
RH
10553Tue Nov 25 10:00:42 1997 Richard Henderson (rth@cygnus.com)
10554
10555 * alpha.h (CONST_OK_FOR_LETTER): Fix 'L' handling.
10556
5041a61c
JL
10557Tue Nov 25 10:00:42 1997 Jeffrey A Law (law@cygnus.com)
10558
10559 * crtstuff.c (do_global_dtors_aux): Handle multiple calls better.
10560
bb727b5a
JM
10561Tue Nov 25 01:26:55 1997 Bruno Haible <haible@ilog.fr>:
10562
10563 * dwarf2out.c (ASM_OUTPUT_DWARF_DELTA1): Implement.
10564
10565Mon Nov 24 22:41:55 1997 Jason Merrill <jason@yorick.cygnus.com>
10566
10567 * except.c (get_dynamic_handler_chain): Build up a FUNCTION_DECL.
10568 * optabs.c (init_optabs): Lose get_dynamic_handler_chain_libfunc.
10569 * expr.h: Likewise.
10570
f45ebe47
JL
10571Sat Nov 22 18:58:20 1997 Jeffrey A Law (law@cygnus.com)
10572
10573 * pa-hpux10.h (NEW_HP_ASSEMBLER): Define.
10574 * pa.h (LEGITIMATE_CONSTANT_P): Reject LABEL_REFs if not using
10575 gas and not using the new HP assembler.
10576
ef85603e
JL
10577Fri Nov 21 15:20:05 1997 Jeffrey A Law (law@cygnus.com)
10578
10579 * Makefile.in (program_transform_cross_name): Clean up "-e" confusion.
10580 (GCC_INSTALL_NAME, GCC_CROSS_NAME): Likewise.
10581
6cc1f5cb
AC
10582Fri Nov 21 19:37:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
10583
10584 * config/mips/elf64.h (MULTILIB_DEFAULTS): Test for
10585 TARGET_ENDIAN_DEFAULT == zero instead of testing for macro
10586 definition.
10587
72eb1038
BH
10588Fri Nov 21 12:49:56 1997 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
10589
10590 * stmt.c (expand_end_bindings): Allow jump into block with cleanups.
10591
1418bb67
JM
10592Fri Nov 21 12:18:51 1997 Jason Merrill <jason@yorick.cygnus.com>
10593
10594 * except.h: Add outer_context_label_stack.
10595 * except.c: Likewise.
10596 (expand_start_all_catch): Push the outer_context for the try block
10597 onto outer_context_label_stack.
10598 (expand_end_all_catch): Use it and pop it.
10599
9dab7833
RL
10600Fri Nov 21 10:13:11 1997 Robert Lipe (robertl@dgii.com)
10601
10602 * i386/sco5.h (HAVE_ATEXIT): Revert last change.
10603
858e4e8c
RH
10604Thu Nov 20 16:11:50 1997 Richard Henderson <rth@cygnus.com>
10605
10606 * alpha.c (alpha_emit_set_const_1): Handle narrow hosts better.
10607
a21d14e9
KK
10608Thu Nov 20 16:11:50 1997 Klaus Kaempf <kkaempf@progis.de>
10609
10610 * alpha/vms.h (ASM_OUTPUT_ADDR_VEC_ELT): Add an L for the local label
10611 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
10612
ced78d8b
JM
10613Thu Nov 20 14:42:15 1997 Jason Merrill <jason@yorick.cygnus.com>
10614
10615 * Makefile.in (LIB2FUNCS): Remove C++ memory management support.
b57062ca 10616 * libgcc2.c: Remove __builtin_new, __builtin_vec_new, set_new_handler,
ced78d8b
JM
10617 __builtin_delete, and __builtin_vec_delete.
10618
10619 * except.c (output_exception_table): Don't bother with
10620 __EXCEPTION_END__.
10621
a09ff88b
JL
10622Thu Nov 20 16:11:50 1997 Jeffrey A Law (law@cygnus.com)
10623
1b8b89f1
JL
10624 * pa.md (pre_stwm, post_stwm, pre_ldwm, post_ldwm): Base register
10625 is an in/out operand.
10626 (zero extended variants of stwm/stwm patterns): Similarly.
10627
a09ff88b
JL
10628 * mips/x-iris (FIXPROTO_DEFINES): Add -D_SGI_SOURCE.
10629
7bb9fb0e
JM
10630Thu Nov 20 13:19:32 1997 Jason Merrill <jason@yorick.cygnus.com>
10631
10632 * dwarf2out.c (ASM_OUTPUT_DWARF_OFFSET4): Rename from VALUE4.
10633 Use assemble_name.
10634 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Use assemble_name.
10635 (output_call_frame_info): Emit a \n after using it.
10636
9101297d
DL
10637Thu Nov 20 00:38:46 1997 Dave Love <d.love@dl.ac.uk>
10638
10639 * configure.in: Add AC_ARG_ENABLE for Haifa as documentation.
10640
2ed2af28
PDM
10641Wed Nov 19 12:03:04 1997 Philippe De Muyter <phdm@macqel.be>
10642
10643 * dwarf2out.c (CIE_LENGTH_LABEL, FDE_LENGTH_LABEL): New macros.
10644 (ASM_OUTPUT_DWARF_VALUE4): New macro.
10645 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Define if SET_ASM_OP is
10646 defined.
10647 (output_call_frame_info): Do not output forward label differences
10648 if ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL is defined.
10649 * m68k/mot3300.h (SET_ASM_OP): Define when not using gas.
10650
4dff12bf
R
10651Tue Nov 18 23:03:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10652
10653 * sh.md (attribute "type"): Add nil.
10654 (movsi_ie): y/y alternative is type nil.
10655 (movsf_ie): Replace ry/yr/X alternative by r/y/X , y/r/X and y/y/X
10656 alternatives.
10657 (movsf_ie+1): Delete.
10658
218c2cdb
JW
10659Tue Nov 18 15:39:59 1997 Jim Wilson <wilson@cygnus.com>
10660
10661 * mips/mips.c (save_restore_insns): If gp_offset or fp_offset are
10662 large_int, emit two insns instead of one splitable insn.
10663 * dwarf2out.c (dwarf2out_frame_debug): When set cfa_store_offset
10664 from cfa_temp_value, use cfa_offset. Add assert checking that
10665 cfa_reg is SP.
10666
d5b79362
TT
10667Mon Nov 17 15:35:38 1997 Tom Tromey <tromey@cygnus.com>
10668
10669 * cccp.c (deps_output): Properly quote file names for make.
10670
de1ea87a
JL
10671Mon Nov 17 13:21:40 1997 Jeffrey A Law (law@cygnus.com)
10672
10673 * t-h8300 (MULTILIB_EXCEPTIONS): Define.
10674
cb0112a7
RL
10675Fri Nov 7 15:33:11 1997 Robert Lipe (robertl@dgii.com)
10676
10677 * i386/sco5.h (HAVE_ATEXIT): Delete definition.
10678
85c3ba60
JL
10679Sun Nov 16 23:52:48 1997 Jeffrey A Law (law@cygnus.com)
10680
10681 * cse.c (cse_insn): Don't look at JUMP_LABEL field of a conditionl
10682 return.
10683 (cse_end_of_basic_block): Similarly.
ef720b21 10684
9155d500
KJ
10685Sun Nov 16 23:01:40 1997 J. Kean Johnston <jkj@sco.com>
10686
10687 * i386/sco5.h (ASM_OUTPUT_ALIGNED_BSS): Define.
10688 (SELECT_RTX_SECTION): Define.
10689 (LIBGCC_SPEC, LIB_SPEC): Do the right thing for PIC.
10690
4931312c
MH
10691Sun Nov 16 22:47:03 1997 Manfred Hollstein <manfred@s-direktnet.de>
10692
10693 * Makefile.in (compare, compare-lean): Define $stage for each
10694 shell command.
10695 (gnucompare, gnucompare-lean): Likewise.
10696
8dfe3c62
RH
10697Sun Nov 16 22:02:16 1997 Richard Henderson (rth@cygnus.com)
10698
10699 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix offsets.
10700
10701 * alpha.h (ASM_OUTPUT_ADDR_DIFF_ELT): Add an L for the local label
10702 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
10703
874a8709
FF
10704Fri Nov 14 09:09:20 1997 Fred Fish (fnf@cygnus.com)
10705
10706 * dwarfout.c (byte_size_attribute): Add local var upper_bound
10707 and add case to handle STRING_TYPE.
10708 * dwarfout.c (output_string_type_die): Fix code to generate
10709 correct string length attribute for fixed length strings.
10710 Still needs support for varying length strings.
10711
ea466196
JL
10712Fri Nov 14 08:46:56 1997 Jeffrey A Law (law@cygnus.com)
10713
10714 * toplev.c (get_run_time): Do something sensible for cygwin32.
10715
202f590e
RH
10716Fri Nov 14 07:24:20 1997 Richard Henderson <rth@cygnus.com>
10717
f35bcbc5
RH
10718 * expr.c (expand_builtin_setjmp): Set
10719 current_function_has_nonlocal_label.
10720 * stupid.c (stupid_life_analysis): If has_nonlocal_label, kill
10721 call-saved registers across calls.
10722
10723 * alpha.md (exception_receiver): Remove.
10724 (nonlocal_goto_receiver_osf): New
10725 (nonlocal_goto_receiver_vms): Renamed from nonlocal_goto_receiver.
10726 (nonlocal_goto_receiver): New, select _osf or _vms.
10727
531ea24e
RH
10728 * alpha.c (output_prolog [*]): Prefix entry labels with '$' to
10729 keep them from being propogated to the object file.
10730 (alpha_write_linkage): Likewise.
10731 * alpha.md (call_vms): Likewise.
10732 (call_value_vms): Likewise.
10733 (unnamed osf call insns): Likewise.
10734
10735 * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Don't omit L from local label.
10736 (ASM_GENERATE_INTERNAL_LABEL): Likewise.
10737
202f590e
RH
10738 * alpha.c (call_operand): Any reg is valid for WinNT.
10739 * alpha.md (call_nt, call_value_nt): Don't force address into $27.
10740 (anon nt calls): Add 'R' alternative.
10741 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE,
10742 INITIALIZE_TRAMPOLINE): Handle lack of original $27 and 32-bit ptrs.
10743
238ad62b
JL
10744Fri Nov 14 06:59:33 1997 Jeffrey A Law (law@cygnus.com)
10745
f78b5ca1
JL
10746 * calls.c (expand_call): Handle pcc_struct_value correctly for C++.
10747
238ad62b
JL
10748 * i386/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Delete defines.
10749 * i386/xm-mingw32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
10750 * rs6000/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
10751
da275344
MM
10752Thu Nov 13 20:37:33 1997 Michael Meissner <meissner@tiktok.cygnus.com>
10753
10754 * reload1.c (new_spill_reg): Improve fixed or forbidden register
10755 spill error message.
10756
1f1e1545
KG
10757Thu Nov 13 20:29:08 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10758
10759 * prefix.c: Use stdarg.h only ifdef __STDC__. Otherwise,
10760 use varargs.h. Wrap header with <>, not "".
10761
daa4b717
JL
10762Thu Nov 13 20:21:17 1997 Jeffrey A Law (law@cygnus.com)
10763
10764 * integrate.c (save_for_inline_copying): Add return value from
10765 savealloc.
10766
9bb5394e
BK
10767Thu Nov 13 19:12:33 1997 Brendan Kehoe <brendan@cygnus.com>
10768
10769 * fixincludes: Be a little more restrictive on what we will
10770 substitute to replace definitions of MAXINT for HPUX.
10771
9571f69b
MM
10772Thu Nov 13 18:41:02 1997 Michael Meissner <meissner@cygnus.com>
10773
10774 * dbxout.c (dbxout_symbol_location): Don't assume that variables
10775 whose address is the stack or argument pointers are indirect
10776 pointers.
10777
b57062ca
UD
107781997-11-13 Paul Eggert <eggert@twinsun.com>
10779
e7cbb6b6
PE
10780 * cccp.c, cpplib.c (compare_defs):
10781 Don't complain about arg name respellings unless pedantic.
b57062ca
UD
10782 * cpplib.c (compare_defs): Accept pfile as new arg.
10783 All callers changed.
e7cbb6b6 10784
9f29ca78
R
10785Thu Nov 13 23:33:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10786
10787 * fold-const.c (fold_truthop): Fix bug in last change.
10788
41c9120b
PE
107891997-11-13 Paul Eggert <eggert@twinsun.com>
10790
10791 Fix some confusion with IEEE minus zero.
10792
10793 * real.h (REAL_VALUES_IDENTICAL): New macro.
10794
10795 * expr.c (is_zeros_p): Don't consider -0.0 to be all zeros.
10796 * fold-const.c (operand_equal_p): Don't consider -0.0 to be
10797 identical to 0.0.
10798 * tree.c (simple_cst_equal): Don't consider -0.0 to have the
10799 same tree structure as 0.0.
10800
10801 * varasm.c (immed_real_const_1): Use new REAL_VALUES_IDENTICAL
10802 macro instead of doing it by hand.
10803
323d8e7b
JL
10804Thu Nov 13 16:56:14 1997 Jeffrey A Law (law@cygnus.com)
10805
10806 * v850/lib1funcs.asm: Minor whitespace changes.
10807 * v850.c: Fix minor formatting problems in many places.
10808 (construct_restore_jr, construct_save_jarl): Remove unwanted aborts.
10809
13529ea4
JW
10810Thu Nov 13 12:53:44 1997 Jim Wilson <wilson@cygnus.com>
10811
10812 * mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete code swapping xplus0 and
10813 xplus1 when xplus0 is not a register.
10814
759c135e
JL
10815Thu Nov 13 11:41:42 1997 Jeffrey A Law (law@cygnus.com)
10816
8930b063
JL
10817 * flow.c (find_basic_blocks): During marking phase, if we encounter
10818 an insn with a REG_LABEL note, make the target block live and
10819 create an edge from the insn to the target block. Do not make
10820 edges from all blocks to the target block.
10821
0be28489
JL
10822 * m68k/x-next (OTHER_FIXINCLUDES_DIRS): Include /NextDeveloper/Headers.
10823
759c135e
JL
10824 * confiugre.in: Tweak NCR entries.
10825 * configure: Rebuilt.
10826
47ad8c61
MM
10827Thu Nov 13 11:07:41 1997 Michael Meissner <meissner@cygnus.com>
10828
10829 * rs6000.c (num_insns_constant): Use REAL_VALUE_FROM_CONST_DOUBLE to
10830 pick apart floating point values, instead of using CONST_DOUBLE_LOW
10831 and CONST_DOUBLE_HIGH.
10832
10833 * rs6000.md (define_splits for DF constants): Use the appropriate
10834 REAL_VALUE_* interface to pick apart DF floating point constants in
10835 a machine independent fashion.
10836
5a6b3365
R
10837Thu Nov 13 00:06:58 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10838
10839 * fold-const.c (fold_truthop): When changing a one-bit comparison
10840 against zero into a comparison against mask, do a proper sign
10841 extension.
10842
2ec1535d
JL
10843Wed Nov 12 09:37:01 1997 Jeffrey A Law (law@cygnus.com)
10844
3a88cbd1
JL
10845 * except.c: Do not include "assert.h".
10846 (save_eh_status): Turn asserts into conditional aborts.
10847 (restore_eh_status, scan_region): Likewise.
10848 * dwarfout.c: Do not include "assert.h".
10849 (bit_offset_attribute): Turn asserts into conditional aborts.
10850 (bit_size_attribute, output_inlined_enumeration_type_die): Likewise.
10851 (output_inlined_structure_type_die): Likewise.
10852 (output_inlined_union_type_die): Likewise
10853 (output_tagged_type_instantiation): Likewise.
10854 (dwarfout_file_scope_decl): Likewise.
10855 * dwarf2out.c: Do not include "assert.h"
10856 (expand_builtin_dwarf_reg_size): Turn asserts into conditional aborts.
10857 (reg_save, initial_return_save, dwarf2out_frame_debug): Likewise.
10858 (add_child_die, modified_type_die, add_bit_offset_attribute): Likewise.
10859 (add_bit_size_attribute, scope_die_for): Likewise.
10860 (output_pending_types_for_scope): Likewise.
10861 (get_inlined_enumeration_type_die): Likewise.
10862 (get_inlined_structure_type_die): Likewise.
10863 (get_inlined_union_type_die, gen_subprogram_die): Likewise.
10864 (gen_tagged_type_instantiation_die): Likewise.
10865
2ec1535d
JL
10866 * flow.c (find_basic_blocks): Refine further to get a more correct
10867 cfg, especially in the presense of exception handling, computed
10868 gotos, and other non-trivial cases. Call abort if an inaccuracy
10869 is detected in the cfg.
10870
a6124a42
R
10871Tue Nov 11 21:47:27 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10872
10873 * glimits.h (SHRT_MIN): Define in a way suitable for 16 bit hosts.
10874
10875 * c-lex.c (whitespace_cr, skip_white_space_on_line): New functions.
10876 (skip_white_space): Use whitespace_cr.
10877 (check_newline): Handle whitespace more consistently.
10878
8f3189a4
JW
10879Tue Nov 11 16:25:49 1997 Jim Wilson <wilson@cygnus.com>
10880
10881 * i386/cygwin32.h (CPP_PREDEFINES): Delete -DPOSIX.
10882 * i386/xm-cygwin32.h (POSIX): Define.
10883
6d1350cd
GK
10884Mon Nov 10 20:53:11 1997 Gavin Koch <gavin@cygnus.com>
10885
10886 * config/mips/mips.h (MASK_DEBUG_H): Set to zero, so this bit
10887 is available elsewhere.
10888
d1f4474e
DE
10889Mon Nov 10 16:21:58 1997 Doug Evans <devans@canuck.cygnus.com>
10890
10891 * sparc/sparc.md (mov[sdt]f_const_insn): Fix condition to match
10892 what the instruction can handle.
10893
c7ae64f2
JM
10894Mon Nov 10 03:02:19 1997 Jason Merrill <jason@yorick.cygnus.com>
10895
10896 * stmt.c (expand_decl_cleanup_no_eh): New fn.
10897
10898 * except.c (expand_leftover_cleanups): do_pending_stack_adjust.
10899
ea64ef27
JL
10900Mon Nov 10 00:05:56 1997 Jeffrey A Law (law@cygnus.com)
10901
10902 * alias.c (MAX_ALIAS_LOOP_PASSES): Define.
10903 (init_alias_analysis): Break out of loops after MAX_ALIAS_LOOP_PASSES.
10904
47ad8c61
MM
10905Sun Nov 9 14:34:47 1997 David Edelsohn <edelsohn@mhpcc.edu>
10906
10907 * rs6000.md (lshrdi3_power): Delete '&' from first alternative and
10908 swap instruction order.
10909
0ff27f58
JL
10910Sun Nov 9 02:07:16 1997 Jeffrey A Law (law@cygnus.com)
10911
10912 * fixinc.svr4 (__STDC__): Add another case.
10913
7091039c
R
10914Sun Nov 9 02:00:29 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10915
10916 * a29k.h (ELIGIBLE_FOR_EPILOGUE_DELAY): Avoid loads from varying
10917 addresses in the epilogue delay slot.
10918
553914ad
MH
10919Sun Nov 9 01:40:40 1997 Manfred Hollstein (manfred@s-direktnet.de)
10920
10921 * m88k/dgux.h (ASM_CPU_SPEC): Reformatted to suppress wrong whitespace
10922 in generated `specs' file.
10923
64fde701
JW
10924Sun Nov 9 01:37:11 1997 Jim Wilson (wilson@cygnus.com)
10925
10926 * flags.h (flag_rerun_loop_opt): Declare.
10927 * loop.c (invariant_p, case LABEL_REF): Check flag_rerun_loop_opt.
10928 * toplev.c (flag_rerum_loop_opt): Delete static.
10929
1245df60
R
10930Sat Nov 8 18:20:21 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10931
1245df60
R
10932 Bring over from FSF:
10933
10934 Thu Oct 30 12:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10935
10936 * va-sh.h (__va_arg_sh1): Define.
10937 (va_arg): Use it.
10938 SH3E doesn't use any integer registers for subsequent arguments
10939 once a non-float value was passed in the stack.
10940 * sh.c (machine_dependent_reorg): If optimizing, put explicit
10941 alignment in front label for ADDR_DIFF_VEC.
10942 * sh.h (PASS_IN_REG_P): Fix SH3E case.
10943 (ADJUST_INSN_LENGTH): If not optimizing, add two extra bytes length.
10944
10945 Tue Oct 28 15:06:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10946
10947 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Undefine before including
10948 svr4.h.
10949
10950 Mon Oct 27 16:11:52 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10951
10952 * sh.c (machine_dependent_reorg): When -flag_delayed_branches,
10953 put an use_sfunc_addr before each sfunc.
10954 * sh.md (use_sfunc_addr, dummy_jump): New insns.
10955 (casesi): For TARGET_SH2, emit a dummy_jump after LAB.
10956
10957 Tue Oct 21 07:12:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10958
10959 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Don't redefine.
10960
97991933
JM
10961Fri Nov 7 10:22:24 1997 Jason Merrill <jason@yorick.cygnus.com>
10962
10963 * frame.c (add_fdes, count_fdes): Go back to checking pc_begin for
10964 linked once FDEs.
10965
eaf407a5
JL
10966Wed Nov 5 14:26:05 1997 Jeffrey A Law (law@cygnus.com)
10967
10968 * alias.c (find_base_value): Only return the known base value for
10969 pseudo registers.
10970
4f9ca067
JW
10971Wed Nov 5 11:27:14 1997 Jim Wilson <wilson@cygnus.com>
10972
10973 * i386.c (load_pic_register): Call prologue_get_pc_and_set_got.
10974 * i386.md (prologue_set_got, prologue_get_pc): Add UNSPEC_VOLATILE
10975 to pattern.
10976 (prologue_get_pc_and_set_got): New pattern.
10977
f4e31cf5
RH
10978Tue Nov 4 20:36:50 1997 Richard Henderson (rth@cygnus.com)
10979
10980 * alpha.c (summarize_insn): Handle ASM_OPERANDS. Don't recurse
10981 for SUBREG, just fall through.
10982
10983 * alpha.c (alpha_handle_trap_shadows): Init sum.defd to zero.
10984
10985 * alpha.md (attr trap): Make TRAP_YES non-zero for sanity's sake.
10986
f754c4a1
JL
10987Tue Nov 4 18:49:42 1997 Jeffrey A Law (law@cygnus.com)
10988
3ed18aeb
JL
10989 * fixincludes: Fix "hypot" prototype in NeXT math.h.
10990
3fe40e05
JL
10991 * Makefile.in (USE_ALLOCA): Always include alloca.o.
10992 (USE_HOST_ALLOCA): Likewise.
10993
f754c4a1
JL
10994 * rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
10995 and LABEL_REFS fields.
10996 * rtl.h (LABEL_REFS): Update.
10997
ab00eb0a
JW
10998Tue Nov 4 16:55:11 1997 Jim Wilson <wilson@cygnus.com>
10999
ff3467a9
JW
11000 * combine.c (try_combine): When setting elim_i2, check whether newi2pat
11001 sets i2dest. When calling distribute_notes for i3dest_killed, pass
11002 elim_i2 and elim_i1. When setting elim_i1, check if newi2pat
11003 sets i1dest.
11004
4911814e
JW
11005 * mips.md (insv, extzv, extv): Add change_address call.
11006 (movsi_ulw, movsi_usw): Change QImode to BLKmode in pattern.
11007
474eff88
JW
11008 * integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
11009
3feffdfe
JW
11010 * reload.c (find_reloads, case 'm' and 'o'): Reject HIGH constants.
11011
ab00eb0a
JW
11012 * mips.c (mips_expand_epilogue): Emit blockage insn before call to
11013 save_restore_insns if no FP and GP will be restored.
7636d567 11014
31c8581d
JW
11015 * dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
11016 Convert CCmode to word_mode before calling GET_MODE_SIZE.
11017
7636d567
JW
11018 * acconfig.h (HAVE_INTTYPES_H): Undef.
11019 * configure.in (inttypes.h): Check for conflicts between sys/types.h
11020 and inttypes.h, and verify that intmax_t is defined.
11021 * config/mips/x-iris (CC, OPT, OLDCC): Comment out.
11022 * config/mips/x-iris3: Likewise.
11023
73774bc7
JL
11024Tue Nov 4 16:07:15 1997 Jeffrey A Law (law@cygnus.com)
11025
11026 * alias.c (find_base_value): When copying arguments, return the
11027 tenative value for a hard register.
11028
645ebf37
DE
11029Tue Nov 4 13:40:35 1997 Doug Evans <devans@canuck.cygnus.com>
11030
11031 * c-lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
11032 (yylex): Record wide strings using target endianness, not host.
11033
f7620587
JL
11034Tue Nov 4 13:13:12 1997 Jeffrey A Law (law@cygnus.com)
11035
11036 * mn10200.h (ASM_OUTPUT_BSS): Delete.
11037 (ASM_OUTPUT_ALIGNED_BSS): New macro
11038 * mn10300.h (ASM_OUTPUT_BSS): Delete.
11039 (ASM_OUTPUT_ALIGNED_BSS): New macro.
11040 * v850.h (ASM_OUTPUT_BSS): Delete.
11041 (ASM_OUTPUT_ALIGNED_BSS): New macro.
11042
1686f1a2 11043Tue Nov 4 00:55:48 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
b57062ca 11044
1686f1a2
R
11045 * profile.c (branch_prob): Insert an insn after a NOTE_INSN_SETJMP.
11046
f6857708
JL
11047Mon Nov 3 14:36:50 1997 Jeffrey A Law (law@cygnus.com)
11048
11049 * configure.in (sco5): Use cpio to install header files.
11050
e566af04
MH
11051Sun Nov 2 23:31:43 1997 Manfred Hollstein <manfred@s-direktnet.de>
11052
11053 * aclocal.m4 (conftestdata_from, conftestdata_to): Names shortened to
11054 14 char length.
11055 * configure: Rebuild.
11056
cbd44549
RL
11057Sun Nov 2 19:44:00 1997 Robert Lipe (robertl@dgii.com)
11058
11059 * i386/sco5.h: enable -gstabs once again.
11060
56636818
JL
11061Sun Nov 2 19:27:21 1997 Jeffrey A Law (law@cygnus.com)
11062
11063 * arm.c (output_move_double): Allocate 3 entries in otherops array.
11064
9ad8a5f0
MS
11065Sat Nov 1 21:43:00 1997 Mike Stump (mrs@wrs.com)
11066
11067 * except.c (expand_ex_region_start_for_decl): Emit EH_REGION_BEG
11068 notes for sjlj exceptions too.
11069 (expand_eh_region_end): Similarly for EH_REGION_END notes.
11070 (exception_optimize): Optimize EH regions for sjlj exceptions too.
11071 * final.c (final_scan_insn): Don't output labels for EH REGION
11072 notes if doing sjlj exceptions.
11073
f8671389
JL
11074Sat Nov 1 19:15:28 1997 Jeffrey A Law (law@cygnus.com)
11075
8072f69c
JL
11076 * alias.c (init_alias_analysis): Handle -fno-alias-check when
11077 optimizing correctly.
11078
6cad9e32
JL
11079 * expr.c (expand_builtin_setjmp): Don't emit a SETJMP note
11080 or set current_function_calls_setjmp anymore.
11081
f8671389
JL
11082 * flow.c (find_basic_blocks): If we delete the label for an
11083 exception handler, remove it from the EH label list and remove
11084 the EH_BEGIN/EH_END notes for that EH region.
11085
a886ae74
JM
11086Sat Nov 1 16:44:49 1997 Jason Merrill (jason@cygnus.com)
11087
11088 * flow.c (find_basic_blocks): Generate correct flow control
11089 information when exception handling notes are present.
11090
c2c85462
JL
11091Sat Nov 1 13:42:19 1997 Jeffrey A Law (law@cygnus.com)
11092
11093 * dwarf2out.c (output_call_frame_info): Fix length argument
11094 to ASM_OUTPUT_ASCII.
11095 (output_die, output_pubnames, output_line_info): Likewise.
11096
8c316ae2
JL
11097Fri Oct 31 07:10:09 1997 Jeffrey A Law (law@cygnus.com)
11098
27ca375a
JL
11099 * version.c: Bump for snapshot.
11100
8d4e65a6
JL
11101 * dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_ASCII to
11102 output ASCII by default. Only use ASM_OUTPUT_DWARF_STRING if
11103 flag_debug_asm is on.
11104 (output_die, output_pubnames, output_line_info): Likewise.
11105
ec907dd8
JL
11106 * alias.c (init_alias_analysis): Add struct_value_incoming_rtx
11107 and static_chain_rtx into the potential base values array if
11108 they are registers.
11109
11110 * alias.c (new_reg_base_value): New array of potential base values.
11111 (unique_id): Now file scoped static.
11112 (find_base_value, case REG): Return the value in reg_base_value
11113 array for the REG if it exists. Else, return the value from
11114 new_reg_base_value if copying args and REG is a hard register.
11115 (find_base_value, case PLUS): If either operand of the PLUS is
11116 a REG, try to get its base value. Handle base + index and
11117 index + base.
11118 (record_set): Use new_reg_base_value instead of reg_base_value.
11119 (init_alias_analysis): Allocate space for new_reg_base_value too.
11120 Rework code to iterate over the insns propagating base value
11121 information until nothing changes.
11122
8c316ae2
JL
11123 * global.c (global_alloc): Free the conflict matrix after
11124 reload has finished.
11125
6874c264
JM
11126Fri Oct 31 01:45:31 1997 Jason Merrill <jason@yorick.cygnus.com>
11127
11128 * libgcc2.c (L_eh): Define __eh_pc.
11129 Replace __eh_type with generic pointer __eh_info.
11130
59fe8c2c
R
11131Fri Oct 31 00:34:55 1996 J"orn Rennecke <amylaar@cygnus.co.uk>
11132
11133 * expr.c (expand_increment): When enqueing a postincrement for a MEM,
11134 use copy_to_reg if address is not a general_operand.
11135
d1271ded
R
11136Fri Oct 31 00:16:55 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
11137
11138 * profile.c (output_func_start_profiler): Clear flag_inline_functions
11139 for the duration of the call to rest_of_compilation.
11140
ac52b80b
DE
11141Thu Oct 30 14:40:10 1997 Doug Evans <devans@canuck.cygnus.com>
11142
11143 * configure.in (sparc-*-elf*): Use sparc/elf.h, sparc/t-elf.
11144 Set extra_parts.
11145 (sparc*-*-*): Recognize --with-cpu=v9.
11146 * sparc/elf.h: New file.
11147 * sparc/t-elf: New file.
11148
f8912297
JL
11149Thu Oct 30 13:26:12 1997 Jeffrey A Law (law@cygnus.com)
11150
11151 * mn10300.c (const_8bit_operand): New function.
11152 (mask_ok_for_mem_btst): New funtion.
11153 * mn10300.md (btst patterns with mem operands): Use new functions
11154 to avoid creating btst instructions with invalid operands.
11155
05ef204d
MM
11156Wed Oct 29 16:57:19 1997 Michael Meissner <meissner@cygnus.com>
11157
11158 * rs6000/xm-sysv4.h: Include xm-linux.h instead of xm-svr4.h if we
11159 are running on PowerPC Linux.
11160
feecabdf
GK
11161Wed Oct 29 13:10:11 1997 Gavin Koch <gavin@cygnus.com>
11162
11163 * config/mips/elf64.h (PREFERRED_DEBUGGING_TYPE): Only define
11164 if not previously defined.
11165
de957303
DE
11166Tue Oct 28 23:55:27 1997 Doug Evans (devans@cygnus.com)
11167
11168 * function.c (assign_parms): Correct mode of stack_parm if
11169 entry_parm underwent a mode conversion.
11170
ba3b3878
BK
111711997-10-28 Brendan Kehoe <brendan@lisa.cygnus.com>
11172
11173 * global.c (global_alloc): Use xmalloc instead of alloca for
11174 CONFLICTS, since max_allocno * allocno_row_words alone can be more
11175 than 2.5Mb sometimes.
11176
d540ae2c
RH
11177Tue Oct 28 15:29:15 1997 Richard Henderson <rth@cygnus.com>
11178
11179 * reload1.c (eliminate_regs [SET]): If [SUBREG] widened the mode of
11180 DEST for the spill, adjust mode of SRC to compensate.
11181
42f4929d
RH
11182Tue Oct 28 14:36:45 1997 Richard Henderson <rth@cygnus.com>
11183
11184 * alpha.md (reload_inqi): Check for MEM before strict_memory_address_p,
11185 since any_memory_operand() allows pseudos during reload.
11186 (reload_inhi, reload_outqi, reload_outhi): Likewise.
11187
08417478
JW
11188Tue Oct 28 11:53:14 1997 Jim Wilson <wilson@cygnus.com>
11189
11190 * m68k.md (btst patterns): Add 5200 support.
11191
750e8348
TM
11192Tue Oct 28 11:58:40 1997 Toon Moene <toon@moene.indiv.nluug.nl>
11193
11194 * fold-const.c (fold): For ((a * C1) / C3) or (((a * C1) + C2) / C3)
11195 optimizations, look inside dividend to determine if the expression
11196 can be simplified by using EXACT_DIV_EXPR.
11197
ede19932
JM
11198Tue Oct 28 10:19:01 1997 Jason Merrill <jason@yorick.cygnus.com>
11199
11200 From Brendan:
11201 * dwarf2out.c (output_call_frame_info): Use l1 instead of ".".
11202
66d91cb9
RH
11203Tue Oct 28 00:32:14 1997 Richard Henderson <rth@cygnus.com>
11204
11205 * alpha.c (summarize_insn [SUBREG]): Propogate SET.
11206
4f3f5e9f
RH
11207Mon Oct 27 23:59:26 1997 Richard Henderson <rth@cygnus.com>
11208
11209 * alpha.c (alpha_handle_trap_shadows): Don't call get_attr_trap
11210 on a CLOBBER.
11211
f3352b9e
RH
11212Mon Oct 27 21:25:20 1997 Richard Henderson <rth@cygnus.com>
11213
11214 * alpha.md (movqi, movhi): Make sure new insns created during reload
11215 won't need reloading themselves.
11216 (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Likewise.
11217
0cecc190
JL
11218Mon Oct 27 16:11:10 1997 Jeffrey A Law (law@cygnus.com)
11219
11220 * mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Disable reg+reg.
11221
a09ba5a2
RH
11222Sun Oct 26 13:50:44 1997 Richard Henderson <rth@cygnus.com>
11223
11224 * alpha.c (alpha_sa_mask [VMS]): Don't include $26 in the mask.
11225 Patch from Klaus Kaempf <kkaempf@progis.de>.
11226
7581a30f
JW
11227Sun Oct 26 13:31:47 1997 Jim Wilson (wilson@cygnus.com)
11228
11229 * expr.c (expand_expr, case INDIRECT_REF): Optimize a reference
11230 to an element in a constant string.
11231
d84e64d4
JM
11232Sun Oct 26 11:41:49 1997 Jason Merrill <jason@yorick.cygnus.com>
11233
11234 * dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32
11235 bit PC-relative offset. The exception range table pointer is now in
11236 the CIE.
11237 * frame.c (dwarf_cie, dwarf_fde): Rename CIE_pointer to CIE_delta.
11238 (count_fdes, add_fdes, get_cie): Adjust.
11239 (cie_info, extract_cie_info, __frame_state_for): Adjust eh_ptr uses.
11240
11241 From H.J. Lu:
11242 * frame.c (count_fdes, add_fdes): Skip linked once FDE entries.
11243
96286722
RH
11244Sun Oct 26 11:52:01 1997 Richard Henderson <rth@cygnus.com>
11245
11246 * alias.c (memrefs_conflict_p): Treat arg_pointer_rtx just
11247 like stack_pointer_rtx.
11248
e85988b5
MH
11249Sun Oct 26 11:32:16 1997 Manfred Hollstein <manfred@s-direktnet.de>
11250
361e618f
MH
11251 * Makefile.in (bootstrap-lean): Combined with `normal' bootstrap
11252 targets using "$@" to provide support for similar but not identical
11253 targets without having to duplicate code.
11254 (bootstrap4): New goal.
11255
e85988b5
MH
11256 * Makefile.in (compare, compare-lean, compare3): Combined to one
11257 ruleset determining actions to be performed via $@.
11258 (compare4, compare4-lean): New targets.
11259 (gnucompare, gnucompare3): Combined to one ruleset determining
11260 actions to be performed via $@. Also, note which files failed
11261 the comparison test in .bad_compare.
11262 (gnucompare-lean, gnucompare3-lean, gnucompare4-lean): New targets.
11263
91585c63
TM
11264Sun Oct 26 10:06:11 1997 Toon Moene <toon@moene.indiv.nluug.nl>
11265
11266 * fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
11267 if the dividend is a multiple of the divisor.
11268
da0af5a5
JL
11269Sun Oct 26 09:21:40 1997 Jeffrey A Law (law@cygnus.com)
11270
7337c67f
JL
11271 * Makefile.in (LIBGCC2_CFLAGS): Add -fexceptions.
11272
adb9effb 11273 * alias.c (find_base_term): Handle PRE_INC, PRE_DEC, POST_INC,
6d849a2a 11274 and POS_DEC.
6d849a2a
JL
11275
11276 * alias.c (true_dependence): Fix typo.
11277
6d6d0fa0
JL
11278 * toplev.c (flag_rerun_loop_opt): New variable.
11279 (f_options): Handle -frerun-loop-opt.
11280 (rest_of_compilation): If -frerun-loop-opt, then run the loop
11281 optimizer twice.
11282 (main): Enable -frerun-loop-opt by default for -O2 or greater.
11283
da0af5a5
JL
11284 * loop.c (simplify_giv_expr): Adding two invariants results
11285 in an invariant.
11286
ca0f2220
RH
11287Sun Oct 26 09:15:15 1997 Richard Henderson <rth@cygnus.com>
11288
b57062ca 11289 * expr.c (get_inner_reference): Remove the array bias after
ca0f2220
RH
11290 converting the index to Pmode.
11291
a6f7ba17
JL
11292Sat Oct 25 12:20:58 1997 Jeffrey A Law (law@cygnus.com)
11293
11294 * mn10300.h (TARGET_SWITCHES): Add -mmult-bug and -mno-mult-bug.
11295 (TARGET_MULT_BUG): Define.
11296 (TARGET_DEFAULT): Default to TARGET_MULT_BUG.
11297 * mn10300.md (mulsi3): Handle TARGET_MULT_BUG.
11298
17ad8a3b
JL
11299Fri Oct 24 17:40:34 1997 Jeffrey A Law (law@cygnus.com)
11300
11301 * mn10200.c (indirect_memory_operand): Delete unused function.
11302 * mn10200.h (EXTRA_CONSTRAINT): Handle 'R'.
11303 * mn10200.md (bset, bclr insns): Handle output in a reg too.
11304
e16b49d3
RH
11305Fri Oct 24 15:54:57 1997 Richard Henderson <rth@cygnus.com>
11306
11307 * alpha.md (call patterns): Revert Oct 16 change; if we are to elide
11308 the callee's ldgp, we must do it ourselves, and we use the jsr tag
11309 for more than scheduling.
11310
27f65411
DE
11311Fri Oct 24 13:23:04 1997 Doug Evans <devans@canuck.cygnus.com>
11312
11313 * sparc/sparc.h (ASM_SPEC): Delete asm_arch.
11314
e9ad4573
JL
11315Fri Oct 24 13:19:40 1997 Jeffrey A Law (law@cygnus.com)
11316
11317 * mn10300.c (symbolic_operand, legitimize_address): New functions.
11318 * mn10300.h (LEGITIMIZE_ADDRESS): Call legitimize_address.
11319 (GO_IF_LEGITIMATE_ADDRESS): Don't allow base + symbolic.
11320
66724f0a
JL
11321Thu Oct 23 09:35:12 1997 Jeffrey A Law (law@cygnus.com)
11322
11323 * version.c: Bump for snapshot.
11324
c401498b
R
11325Thu Oct 23 08:03:59 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
11326
11327 * dbxout.c (dbxout_start_new_source_file): Use output_quoted_string
11328 for FILENAME.
11329
b22b9b3e
JL
11330Wed Oct 22 00:34:12 1997 Jeffrey A Law (law@cygnus.com)
11331
56bf1fd9
JL
11332 * toplev.c (flag_exceptions): Default value is 2.
11333 (compile_file): If flag_exceptions still has the value 2, then
11334 set it to 0.
11335
a04232e5
JL
11336 * rs6000.c (struct machine_function): Add pic_offset_table_rtx.
11337 (rs6000_save_machine_status): Save pic_offset_table_rtx.
11338 (rs6000_restore_machine_status: Restore pic_offset_table_rtx.
11339
0bd83abd
JL
11340 * local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions
11341 are shared.
11342
b22b9b3e
JL
11343 * rs6000.md (*movsi_got_internal_mem): New pattern.
11344 (*movsi_got_internal_mem splitter): New define_split.
11345
c1e385db
JW
11346Tue Oct 21 18:14:03 1997 Jim Wilson <wilson@cygnus.com>
11347
11348 * obstack.h (obstack_empty_p): Fix spurious space after backslash.
11349
1a986152
GK
11350Tue Oct 21 18:34:01 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
11351
11352 * rs6000.c: Avoid creating a stack frame under SYSV ABI if we
11353 only need to save LR.
11354
5d29a95f
JL
11355Tue Oct 21 10:06:40 1997 Jeffrey A Law (law@cygnus.com)
11356
c6ee9150
JL
11357 * mn10300.md (movqi, movhi): Avoid using address registers as
11358 destinations unless absolutely necessary.
11359
d5255ba2
JL
11360 * mn10200.c (expand_prologue): Fix typo.
11361
9d2128b8
JL
11362 * mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed
11363 addresses.
11364 * mn10200.md (neghi2): Provide an alternative which works if
11365 the input and output register are the same.
11366
576e5acc
JL
11367 * mn10300.c (print_operand): Handle 'S'.
11368 * mn10300.md (ashlsi3, lshrsi3, ashrsi3): Use %S for
11369 shift amount in last alternative
11370
5d29a95f
JL
11371 * mn10300.c (expand_epilogue): Rework to handle register restores
11372 in "ret" and "retf" instructions correctly.
11373
3bf1b082
JW
11374Mon Oct 20 16:47:08 1997 Jim Wilson <wilson@cygnus.com>
11375
11376 * expmed.c (extract_bit_field): Don't make flag_force_mem disable
11377 extzv for memory operands.
11378
11379 * cse.c (simplify_ternary_operation, case IF_THEN_ELSE): Collapse
11380 redundant conditional moves to single operand.
11381
ddbd8d36
NC
11382Mon Oct 20 15:30:26 1997 Nick Clifton <nickc@cygnus.com>
11383
11384 * v850.h: Move define of __v850__ from CPP_PREDEFINES
11385 to CPP_SPEC.
b57062ca 11386
ddbd8d36
NC
11387 * xm-v850.h: Use __v850 rather than __v850__ to
11388 identify v850 port.
11389
a944a4eb
JW
11390Mon Oct 20 14:15:02 1997 Jim Wilson <wilson@cygnus.com>
11391
11392 * mips/mips.c (compute_frame_size): Not a leaf function if
11393 profile_flag set.
11394
2d5b6dea
GK
11395Mon Oct 20 14:16:38 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
11396
11397 * rs6000/t-ppccomm: Use -msdata=none for crtstuff.
11398
f0a9fa6c
DE
11399Mon Oct 20 12:28:17 1997 Doug Evans <devans@canuck.cygnus.com>
11400
11401 * sparc/sparc.h (SPARC_V9,SPARC_ARCH64): Delete.
11402 (DEFAULT_ARCH32_P): New macro.
11403 (TARGET_ARCH{32,64}): Allow compile time or runtime selection.
11404 (enum cmodel): Declare.
11405 (sparc_cmodel_string,sparc_cmodel): Declare.
11406 (SPARC_DEFAULT_CMODEL): Provide default.
11407 (TARGET_{MEDLOW,MEDANY}): Renamed to TARGET_CM_{MEDLOW,MEDANY}.
11408 (TARGET_FULLANY): Deleted.
11409 (TARGET_CM_MEDMID): New macro.
11410 (CPP_CPU_DEFAULT_SPEC): Renamed from CPP_DEFAULT_SPEC.
11411 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
11412 (CPP_PREDEFINES): Take out stuff now handled by %(cpp_arch).
11413 (CPP_SPEC): Rewrite.
11414 (CPP_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
11415 (CPP_{ENDIAN,SUBTARGET}_SPEC): New macros.
11416 (ASM_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
11417 (ASM_SPEC): Add %(asm_arch).
11418 (EXTRA_SPECS): Rename cpp_default to cpp_cpu_default.
11419 Rename asm_default to asm_cpu_default.
11420 Add cpp_arch32, cpp_arch64, cpp_arch_default, cpp_arch, cpp_endian,
11421 cpp_subtarget, asm_arch32, asm_arch64, asm_arch_default, asm_arch.
11422 (NO_BUILTIN_{PTRDIFF,SIZE}_TYPE): Define ifdef SPARC_BI_ARCH.
11423 ({PTRDIFF,SIZE}_TYPE): Provide 32 and 64 bit values.
11424 (MASK_INT64,MASK_LONG64): Delete.
11425 (MASK_ARCH64): Renamed to MASK_64BIT.
11426 (MASK_{MEDLOW,MEDANY,FULLANY,CODE_MODEL}): Delete.
11427 (EMBMEDANY_BASE_REG): Renamed from MEDANY_BASE_REG.
11428 (TARGET_SWITCHES): Always provide 64 bit options.
11429 (ARCH64_SWITCHES): Delete.
11430 (TARGET_OPTIONS): New option -mcmodel=.
11431 (INT_TYPE_SIZE): Always 32.
11432 (MAX_LONG_TYPE_SIZE): Define ifdef SPARC_BI_ARCH.
11433 (INIT_EXPANDERS): sparc64_init_expanders renamed to sparc_init_....
11434 (FUNCTION_{,BLOCK_}PROFILER): Delete TARGET_EMBMEDANY support.
11435 (PRINT_OPERAND_PUNCT_VALID_P): Add '_'.
11436 * sparc/linux-aout.h (CPP_PREDEFINES): Take out stuff handled by
11437 CPP_SPEC.
11438 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
11439 * sparc/linux.h: Likewise.
11440 * sparc/linux64.h (SPARC_V9,SPARC_ARCH64): Delete.
11441 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
11442 (TARGET_DEFAULT): Delete MASK_LONG64, MASK_MEDANY, add MASK_64BIT.
11443 (SPARC_DEFAULT_CMODEL): Define.
11444 (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
11445 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
11446 (LONG_DOUBLE_TYPE_SIZE): Define.
11447 (ASM_SPEC): Add %(asm_arch).
11448 * sparc/sol2.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
11449 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
11450 (TARGET_CPU_DEFAULT): Add ultrasparc case.
11451 * sparc/sp64-aout.h (SPARC_V9,SPARC_ARCH64): Delete.
11452 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT.
11453 (SPARC_DEFAULT_CMODEL): Define.
11454 * sparc/sp64-elf.h (SPARC_V9,SPARC_ARCH64): Delete.
11455 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT. Delete
11456 MASK_LONG64, MASK_MEDANY.
11457 (SPARC_DEFAULT_CMODEL): Define.
11458 (CPP_PREDEFINES): Delete.
11459 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
11460 (ASM_SPEC): Add %(asm_arch).
11461 (LONG_DOUBLE_TYPE_SIZE): Define.
11462 (DWARF2_DEBUGGING_INFO): Define.
11463 * sparc/splet.h (CPP_SPEC): Delete.
11464 * sparc/sysv4.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
11465 (FUNCTION_BLOCK_PROFILER): Delete TARGET_EMBMEDANY support.
11466 (BLOCK_PROFILER): Likewise.
11467 * sparc/sparc.c (sparc_cmodel_string,sparc_cmodel): New globals.
11468 (sparc_override_options): Handle code model selection.
11469 (sparc_init_expanders): Renamed from sparc64_init_expanders.
11470 * sparc/sparc.md: TARGET_<code_model> renamed to TARGET_CM_....
11471 TARGET_MEDANY renamed to TARGET_CM_EMBMEDANY.
11472 (sethi_di_embmedany_{data,text}): Renamed from sethi_di_medany_....
11473 (sethi_di_fullany): Delete.
11474
a3b0df2d
KK
11475Mon Oct 20 02:00:18 1997 Klaus Kaempf <kkaempf@progis.de>
11476 Jeff Law <law@cygnus.com>
11477 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
11478
3a133c72
KK
11479 * alpha/vms.h (DIVSI3_LIBCALL): OTS$ functions are upper case.
11480 (DIVDI3_LIBCALL, UDIVSI3_LIBCALL, UDIVDI3_LIBVALL): Likewise.
11481 (MODSI3_LIBCALL, MODDI3_LIBCALL): Likewise.
11482 (UMODSI3_LIBCALL, UMODDI3_LIBCALL): Likewise.
11483 * alpha/alpha.md (arg_home): Likewise.
11484
a3b0df2d
KK
11485 * alpha/alpha.c (vmskrunch): Delete
11486 * alpha/vms.h (ENCODE_SECTION_INFO, ASM_DECLARE_FUNCTION_NAME): Delete.
11487 * alpha.c (output_prolog, VMS): Use alloca for entry_label and don't
11488 truncate to 64 characters.
11489
11490 * make-l2.com: Support openVMS/Alpha.
11491
11492 * vmsconfig.com: Fix to work on openVMS/Alpha and openVMS/VAX.
11493
7d4f2e6c
R
11494Sun Oct 19 19:00:35 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
11495
11496 * longlong.h (count_leading_zeros): Add missing casts to USItype.
11497
decd44ac
JL
11498Sun Oct 19 18:44:06 1997 Jeffrey A Law (law@cygnus.com)
11499
11500 * i386/bsd386.h (ASM_COMMENT_START): Define.
11501
d1485032
JM
11502Sat Oct 18 13:47:15 1997 Jason Merrill <jason@yorick.cygnus.com>
11503
11504 * tree.c (restore_tree_status): Also free up temporary storage
11505 when we finish a toplevel function.
11506 (dump_tree_statistics): Print stats for backend obstacks.
11507
6bd35f86
DE
11508Sat Oct 18 12:47:31 1997 Doug Evans <dje@canuck.cygnus.com>
11509
11510 * expr.c (use_group_regs): Don't call use_reg for MEMs.
11511
d1485032
JM
11512Sat Oct 18 09:49:46 1997 Jason Merrill <jason@yorick.cygnus.com>
11513
11514 * libgcc2.c (__throw): Don't copy the return address.
11515 * dwarf2out.c (expand_builtin_dwarf_reg_size): Ignore return address.
11516
11517 * except.c (exceptions_via_longjmp): Initialize to 2 (uninitialized).
11518 * toplev.c (main): Initialize exceptions_via_longjmp.
11519
11520 * tree.c: Add extra_inline_obstacks.
11521 (save_tree_status): Use it.
11522 (restore_tree_status): If this is a toplevel inline obstack and we
11523 didn't want to save anything on it, recycle it.
11524 (print_inline_obstack_statistics): New fn.
b57062ca 11525 * function.c (pop_function_context_from): Pass context to
d1485032
JM
11526 restore_tree_status.
11527 * obstack.h (obstack_empty_p): New macro.
11528
6981eacf
JL
11529Sat Oct 18 00:43:59 1997 Jeffrey A Law (law@cygnus.com)
11530
11531 * i386/freebsd.h (ASM_COMMENT_START): Fix.
11532
1933ec7e
JW
11533Fri Oct 17 23:48:52 1997 Jim Wilson (wilson@cygnus.com)
11534
11535 * v850.c (ep_memory_offset): New function.
11536 (ep_memory_operand, substitute_ep_register, v850_reorg): Call it.
11537
11538 * v850.h (CONST_OK_FOR_*): Add and correct comments.
11539 (CONSTANT_ADDRESS_P): Add comment.
11540 (EXTRA_CONSTRAINT): Define 'U'.
11541 * v850.md: Add comments on bit field instructions.
11542 (addsi3): Delete &r/r/r alternative. Add r/r/U alternative.
b57062ca 11543 (lshrsi3): Use N not J constraint.
1933ec7e
JW
11544
11545 * v850.md (v850_tst1+1): New define_split for tst1 instruction.
11546
11547 * v850.c (reg_or_0_operand): Call register_operand.
11548 (reg_or_int5_operand): Likewise.
11549 * v850.h (MASK_BIG_SWITCH, TARGET_BIG_SWITCH): New macros.
11550 (TARGET_SWITCHES): Add "big-switch".
11551 (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE,
11552 ASM_OUTPUT_BEFORE_BASE_LABEL): Add support for TARGET_BIG_SWITCH.
11553 (CASE_DROPS_THROUGH): Comment out.
11554 (CASE_VECTOR_PC_RELATIVE, JUMP_TABLES_IN_TEXT_SECTION): Define.
11555 * v850.md (cmpsi): Delete compare mode.
11556 (casesi): New pattern.
11557
11558 * v850.h (CONST_OK_FOR_N): Delete redundant compare against zero.
11559 * v850.md (ashlsi3): Use SImode not QImode for shift count.
11560 (lshrsi3): Likewise.
11561
11562 * v850.c (print_operand): Add 'c', 'C', and 'z' support. Delete
11563 unreachable switch statement after 'b' support. Remove "b" from
11564 strings for 'b' support.
11565 * v850.md (branch_normal, branch_invert): Change %b to b%b.
11566
13c2de98
JL
11567Fri Oct 17 23:33:20 1997 Jeffrey A Law (law@cygnus.com)
11568
11569 * Makefile.in (LIBGCC2_CFLAGS): Avoid a backslash then an
11570 empty line if @inhibit_libc@ is empty.
11571
b2167bee
RL
11572Fri Oct 17 23:24:40 1997 Robert Lipe (robertl@dgii.com)
11573
11574 * i386/sco5.h: Let ELF use dwarf2 unwinding. COFF uses sjlj.
11575 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Defined.
11576 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
11577 (DWARF2_UNWIND_INFO): Let this track object file format.
11578 (EXTRA_SECTIONS): Add in_eh.
11579 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Define.
11580 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
11581
bf2a2c6b
DM
11582Fri Oct 17 17:13:42 1997 David S. Miller <davem@tanya.rutgers.edu>
11583
11584 * sparc/linux64.h (LINK_SPEC): Dynamic linker is ld-linux64.so.2.
da2a90f7
DM
11585 * sparc/sparc.h (FUNCTION_PROFILER): Fix format string when
11586 TARGET_MEDANY.
f4f8e370
DE
11587 * sparc/sparc.c (dwarf2out_cfi_label): Extern no longer needed.
11588 (output_double_int): Output DI mode values correctly when
11589 HOST_BITS_PER_WIDE_INT is 64.
9d162eb2
DE
11590 (output_fp_move_quad): If TARGET_V9 and not TARGET_HARD_QUAD, use
11591 fmovd so it works if a quad float ends up in one of the upper 32
11592 float regs.
7e37212e
DM
11593 * sparc/sparc.md (pic_{lo_sum,sethi}_di): New patterns
11594 necessary for PIC support on sparc64.
bf2a2c6b 11595
9ff84e67
DE
11596Fri Oct 17 13:39:56 1997 Doug Evans <dje@canuck.cygnus.com>
11597
11598 * sparc/sp64-elf.h (TARGET_DEFAULT): Delete MASK_STACK_BIAS.
11599 * sparc/sparc.h (PROMOTE_MODE): Promote small ints if arch64.
11600 (PROMOTE_FUNCTION_ARGS,PROMOTE_FUNCTION_RETURN): Define.
11601 (SPARC_FIRST_FP_REG, SPARC_FP_REG_P): New macros.
11602 (SPARC_{OUTGOING,INCOMING}_INT_ARG_FIRST): New macros.
11603 (SPARC_FP_ARG_FIRST): New macro.
11604 (CONDITIONAL_REGISTER_USAGE): All v9 fp regs are volatile now.
11605 (REG_ALLOC_ORDER,REG_LEAF_ALLOC_ORDER): Reorganize fp regs.
11606 (NPARM_REGS): There are 32 fp argument registers now.
11607 (FUNCTION_ARG_REGNO_P): Likewise.
11608 (FIRST_PARM_OFFSET): Update to new v9 abi.
11609 (REG_PARM_STACK_SPACE): Define for arch64.
11610 (enum sparc_arg_class): Delete.
11611 (sparc_arg_count,sparc_n_named_args): Delete.
11612 (struct sparc_args): Redefine and use for arch32 as well as arch64.
11613 (GET_SPARC_ARG_CLASS,ROUND_REG,ROUND_ADVANCE): Delete.
11614 (FUNCTION_ARG_ADVANCE): Rewrite.
11615 (FUNCTION_ARG,FUNCTION_INCOMING_ARG): Rewrite.
11616 (FUNCTION_ARG_{PARTIAL_NREGS,PASS_BY_REFERENCE}): Rewrite.
11617 (FUNCTION_ARG_CALLEE_COPIES): Delete.
11618 (FUNCTION_ARG_{PADDING,BOUNDARY}): Define.
11619 (STRICT_ARGUMENT_NAMING): Define.
11620 (doublemove_string): Declare.
11621 * sparc/sparc.c (sparc_arg_count,sparc_n_named_args): Delete.
11622 (single_move_string): Use GEN_INT, and HOST_WIDE_INT.
11623 (doublemove_string): New function.
11624 (output_move_quad): Clean up some of the arch64 support.
11625 (compute_frame_size): Add REG_PARM_STACK_SPACE if arch64.
11626 Don't add 8 bytes of reserved space if arch64.
11627 (sparc_builtin_saveregs): Combine arch32/arch64 versions.
11628 (init_cumulative_args): New function.
11629 (function_arg_slotno): New static function.
11630 (function_arg,function_arg_partial_nregs): New functions.
11631 (function_arg_{pass_by_reference,advance}): New functions.
11632 (function_arg_padding): New function.
c1215820 11633 * ginclude/va-sparc.h: Rewrite v9 support.
9ff84e67 11634
b8fb2d72
CI
11635Fri Oct 17 12:29:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
11636
f22376c7
CI
11637 * regclass.c (record_address_regs): Look at REG_OK_FOR_{BASE,INDEX}_P
11638 for hard regs to determine base and index registers.
11639
b8fb2d72
CI
11640 * reload.c (debug_reload_to_stream): New function. Specify stream
11641 into which to write debug info.
11642 (debug_reload): Modify to call debug_reload_to_stream with stderr.
11643
b79ee7eb
RH
11644Thu Oct 16 15:07:51 1997 Richard Henderson <rth@cygnus.com>
11645
11646 * combine.c (can_combine_p): Don't combine with an asm whose
11647 output is a hard register.
11648
5c19a356
MS
11649Thu Oct 16 15:43:26 1997 Mike Stump (mrs@wrs.com)
11650
11651 * c-decl.c (start_struct): Ensure that structs with forward
11652 declarations are in fact packed when -fpack-struct is given.
11653
11654 * stor-layout.c (layout_record): Ignore STRUCTURE_SIZE_BOUNDARY if
11655 we are packing a structure. This allows a structure with only
11656 bytes to be aligned on a byte boundary and have no padding on a
11657 m68k.
11658
02bef6da
RK
11659Thu Oct 16 15:17:54 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
11660
11661 * rs6000.h (ROUND_TYPE_ALIGN): Don't blow up if no fields in record.
11662
9ecc37f0
RH
11663Thu Oct 16 11:20:30 1997 Richard Henderson <rth@cygnus.com>
11664
11665 * alpha.c (alpha_return_addr_rtx): New variable.
11666 (alpha_save_machine_status): New; save it.
11667 (alpha_restore_machine_status): New; restore it.
11668 (alpha_init_expanders): New; clear it.
11669 (alpha_return_addr): New; set it.
11670 (alpha_ra_ever_killed): New; if alpha_return_addr_rtx, regs_ever_live
11671 is overly conservative, so search the insns explicitly.
11672 (alpha_sa_mask [VMS]): Check alpha_ra_ever_killed.
11673 (alpha_sa_size [VMS && !VMS]): Likewise.
11674 * alpha.h (RETURN_ADDR_RTX): Call alpha_return_addr.
11675 (INIT_EXPANDERS): New definition.
b57062ca 11676
9ecc37f0
RH
11677 * alpha.c: Move REG_PV, REG_RA somewhere more visible in the file.
11678 (output_prolog [!VMS]): Use them.
11679
11680 * alpha.c (output_prolog [!VMS]): Move gp detection to ...
b57062ca 11681 (alpha_does_function_need_gp): ... a new function. Refine the
9ecc37f0
RH
11682 CALL_INSN test to just TYPE_JSR.
11683 * alpha.md (most call insns): Fix some jsr/ibr type transpositions.
11684
bda2ffef
JL
11685Thu Oct 16 09:36:47 1997 Jeffrey A Law (law@cygnus.com)
11686
11687 * version.c: Bump for snapshot.
11688
96b63cd7
RK
11689Wed Oct 15 21:38:18 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
11690
11691 * pa.c (move_operand): Respect -mdisable-indexing.
11692 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
11693
f192bf8b
DE
11694Wed Oct 15 21:34:45 1997 David Edelsohn <edelsohn@mhpcc.edu>
11695
11696 * rs6000.md (udivsi3, divsi3): Split into MQ and non-MQ cases for
11697 PPC601.
11698 (umulsidi3,umulsi3_highpart): Ditto.
11699 (smulsi3_highpart_no_mq): Add !TARGET_POWER.
11700
2ea844d3
RH
11701Wed Oct 15 18:21:46 1997 Richard Henderson <rth@cygnus.com>
11702
11703 * alpha.c (final_prescan_insn): Gut, remove and transform to ...
11704 (alpha_handle_trap_shadows): ... a new function. Handle the entire
11705 function in one go. Emit RTL for trapb, instead of printf directly.
11706 (alpha_reorg): New function. Call alpha_handle_trap_shadows.
11707 (trap_pending): Kill global variable.
11708 (output_epilog): Don't call final_prescan_insn.
11709 (struct shadow_summary): Elide $31 and $f31; now it fits in a word.
11710 * alpha.h (FINAL_PRESCAN_INSN): Remove.
11711 (MACHINE_DEPENENT_REORG): Define.
11712 * alpha.md (jsr patterns with trapb): Stupid and useless. Kill.
11713 (trapb): New insn.
11714
74835ed8
RH
11715Wed Oct 15 18:16:05 1997 Richard Henderson <rth@cygnus.com>
11716
11717 Tune Haifa scheduler for Alpha:
11718 * alpha.h (ISSUE_RATE): Define.
11719 * alpha.c (alpha_adjust_cost): Handle EV5 mult delay; don't apply
11720 EV4 adjustments to EV5.
11721 * alpha.md: Remove all scaling from function unit delays. Rework
11722 EV5 function units to match the CPU.
11723 (umuldi3_highpart): EV5 added the IMULH insn class.
11724
cdc0de30
JL
11725Wed Oct 15 17:42:41 1997 Jeffrey A Law (law@cygnus.com)
11726
11727 * pa.c (following_call): Fail if the CALL_INSN is an indirect
11728 call.
11729
041c97f2
MM
11730Tue Oct 14 12:01:00 1997 Mark Mitchell <mmitchell@usa.net>
11731
11732 * cplus-dem.c (demangle_signature): Don't look for return types on
11733 constructors. Handle member template constructors.
11734
f0632762
JM
11735Tue Oct 14 11:30:29 1997 Jason Merrill <jason@yorick.cygnus.com>
11736
11737 * tree.c (expr_tree_cons, build_expr_list, expralloc): New fns.
22ef8a13 11738 * tree.h: Declare them.
f0632762 11739
dec88383
DE
11740Fri Oct 10 13:46:56 1997 Doug Evans <dje@canuck.cygnus.com>
11741
11742 * configure.in: Handle --with-newlib.
11743 * Makefile.in (LIBGCC2_CFLAGS): Add @inhibit_libc@.
11744
11745 * sparc/t-sp64 (LIBGCC2_CFLAGS): Delete.
11746
0e1f3f5e
JL
11747Wed Oct 8 14:37:44 1997 Jeffrey A Law (law@cygnus.com)
11748
11749 * config/ptx4.h: Fix typo.
11750
12504ae0
JL
11751Wed Oct 8 08:57:20 1997 Jeffrey A Law (law@cygnus.com)
11752
11753 * version.c: Bump for snapshot.
11754
5643c767
MH
11755Tue Oct 7 16:27:34 1997 Manfred Hollstein <manfred@s-direktnet.de>
11756
11757 * aclocal.m4: Substitute INSTALL.
11758 * configure: Re-built.
11759
aa0c1401
JL
11760Tue Oct 7 15:37:35 1997 Jeffrey A Law (law@cygnus.com)
11761
f644bd14
JL
11762 * integrate.c (save_for_inline_copying): Avoid undefined pointer
11763 operations.
11764 (expand_inline_function): Likewise.
11765
aa0c1401
JL
11766 * dwarf2out.c (output_call_frame_info): Reinstate last change
11767 using flag_debug_asm check instead of flag_verbose_asm.
11768
6c2df6c9
JW
11769Tue Oct 7 12:57:26 1997 Jim Wilson <wilson@cygnus.com>
11770
11771 * dwarf2out.c (output_call_frame_info): Remove last change.
11772
13ab2b83
AS
117731997-10-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
11774
11775 * frame.c (__frame_state_for): Execute the FDE insns until the
11776 current pc value is strictly bigger than the target pc value.
11777
066c2fea
JM
11778Tue Oct 7 11:00:42 1997 Jason Merrill <jason@yorick.cygnus.com>
11779
b57062ca 11780 * regclass.c (init_reg_modes): If we can't find a mode for the
066c2fea
JM
11781 register, use the previous one.
11782
2f308fec
RH
11783Tue Oct 7 10:55:34 1997 Richard Henderson <rth@cygnus.com>
11784
11785 * haifa-sched.c (print_block_visualization): Call fprintf directly,
11786 don't sprintf through an alloca'ed buffer.
11787
43984e29
TK
11788Tue Oct 7 10:52:29 1997 Thomas Koenig (ig25@rz.uni-karlsruhe.de)
11789
11790 * reload.c (decompose): Always initialize val.base.
11791
e9e30253
MH
11792Tue Oct 7 10:19:26 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
11793
11794 * m68k/mot3300.h (ASM_OUTPUT_ALIGN): Accept any alignment
11795 instead of aborting.
11796 * dwarf2out.c (output_call_frame_info): Call app_enable and
11797 app_disable to let GNU as accept the generated comments.
11798
496651db
MM
11799Tue Oct 7 11:41:21 1997 Michael Meissner <meissner@cygnus.com>
11800
11801 * tree.h (get_file_function_name): Add declaration.
11802 * dwarf2out.c (output_call_frame_info): No need to cast
11803 get_file_function_name call anymore.
11804 * profile.c (toplevel): Remove get_file_function_name
11805 declaration.
11806 * c-lang.c (finish_file): Ditto.
11807
e6347456
CS
11808Tue Oct 7 10:01:45 1997 Chip Salzenberg <chip@rio.atlantic.net>
11809
11810 * Makefile.in (program_transform_name): Let autoconf substitute
11811 the correct value.
11812
1447b516
JL
11813Tue Oct 7 09:54:35 1997 Jeffrey A Law (law@cygnus.com)
11814
11815 * haifa-sched.c (schedule_block): If the first real insn in a
11816 block has any special notes attached to it, remove them.
11817
1a42ead7
RH
11818Tue Oct 7 09:48:51 1997 Richard Henderson <rth@cygnus.com>
11819
11820 * alpha.h (FLOAT_STORE_FLAG_VALUE): It's 2.0 not 0.5.
11821
4b6140f1
MH
11822Mon Oct 6 12:47:32 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
11823
11824 * m88k.c (m88k_begin_prologue): Remove superfluous backslash.
11825
dc84d7bc
JL
11826Mon Oct 6 12:04:24 1997 Jeffrey A Law (law@cygnus.com)
11827
11828 * Makefile.in (check-g77): New test target.
11829 (CHECK-TARGETS): Add check-g77.
11830
c0da11c4
JM
11831Fri Oct 3 11:56:36 1997 Jason Merrill <jason@yorick.cygnus.com>
11832
11833 * toplev.c (rest_of_compilation): Defer all non-nested inlines.
11834
d8d64559
MM
11835Fri Oct 3 15:49:27 1997 Michael Meissner <meissner@cygnus.com>
11836
11837 * flow.c (print_rtl_with_bb): Cast alloca return value for
11838 in_bb_p.
11839
e414ab29
RH
11840Thu Oct 2 21:15:03 1997 Richard Henderson <rth@cygnus.com>
11841
b57062ca 11842 * i386.h (RETURN_ADDR_RTX): New definition that works for
e414ab29
RH
11843 __builtin_return_address(0) and -fomit-frame-pointer.
11844
15039abe
JW
11845Wed Oct 1 13:43:53 1997 Jim Wilson <wilson@cygnus.com>
11846
11847 Bring over from FSF.
11848 Tue Aug 5 16:10:45 1997 Jason Merrill <jason@yorick.cygnus.com>
11849
b57062ca 11850 * mips.c (function_arg): Handle passing a struct
15039abe
JW
11851 containing a double in a DFmode register without the PARALLEL.
11852
281de624
ILT
11853Wed Oct 1 11:13:25 1997 Ian Lance Taylor <ian@cygnus.com>
11854
d8d64559 11855 * pexecute.c: Use spawn if __CYGWIN32__.
281de624 11856
d8d64559 11857 * pexecute.c: Include "config.h" first, as per autoconf manual
281de624
ILT
11858 (from Paul Eggert <eggert@twinsun.com>).
11859
3cbdd5fc
PDM
11860Wed Oct 1 01:44:36 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
11861
11862 * m68k/x-mot3300 (XCFLAGS): Disable as's long/short jump
11863 optimisation for f/expr.o and f/stb.o.
11864
135d84b8
JL
11865Tue Sep 30 23:48:57 1997 Jeffrey A Law (law@cygnus.com)
11866
11867 * cse.c (this_insn_cc0_mode): Initialize.
11868
55d89719
TK
11869Tue Sep 30 23:09:40 1997 Thomas Koenig <ig25@mvmap66.ciw.uni-karlsruhe.de>
11870
d3878e49
TK
11871 * cccp.c (expand_to_temp_buffer): Initialize all members of obuf.
11872
11873 * haifa-sched.c (get_block_head_tail): Remove unneeded initialization.
55d89719 11874
e9d0757e
RH
11875Tue Sep 30 23:06:43 1997 Richard Henderson <rth@cygnus.com>
11876
11877 * alpha.md (beq): For registers and ints 0-255, use cmpeq+bne, since
11878 that pair will dual-issue on the 21164 and plus+beq won't.
11879 (bne): Likewise for cmpeq+beq.
11880
3f34faec
JW
11881Tue Sep 30 16:07:58 1997 Jim Wilson <wilson@cygnus.com>
11882
11883 * except.c (find_exception_handler_labels): Correct argument to free.
11884
3226dac5 11885Tue Sep 30 11:00:00 1997 Brendan Kehoe <brendan@lisa.cygnus.com>
988cea7d
BK
11886
11887 * except.c (find_exception_handler_labels): Free LABELS when we're
11888 done.
11889
3a6eabfa
JL
11890Mon Sep 29 14:04:35 1997 Jeffrey A Law (law@cygnus.com)
11891
11892 * version.c: Bump for snapshot.
11893
974c50f9
JM
11894Mon Sep 29 10:51:53 1997 Jason Merrill <jason@yorick.cygnus.com>
11895
11896 * flow.c (find_basic_blocks): Mark calls as potentially jumping
11897 to the EH labels.
11898
9b16d2c4
JL
11899Mon Sep 29 09:58:06 1997 Jeffrey A Law (law@cygnus.com)
11900
11901 * configure.in: Substitute for "install" too.
11902 * configure: Rebuilt.
11903
b1e3ddfd
AJ
11904Mon Sep 29 00:38:42 1997 Aaron Jackson <jackson@negril.msrce.howard.edu>
11905
11906 * Makefile.in (bootstrap-lean, compare-lean): New targets.
11907
6662a38d
RH
11908Mon Sep 29 00:18:16 1997 Richard Henderson (rth@cygnus.com)
11909
c02f035f
RH
11910 * alias.c (base_alias_check): Two symbols can conflict if they
11911 are accessed via AND.
11912 (memrefs_conflict_p): Likewise.
11913
7a14fdc5
RH
11914 * alpha.h (SETUP_INCOMING_VARARGS): Emit a blockage insn
11915 after flushing argument registers to the stack.
11916
6662a38d
RH
11917 * Makefile.in (mostlyclean): Remove .regmove files.
11918
f3447109
JM
11919Sun Sep 28 18:59:58 1997 Jason Merrill <jason@yorick.cygnus.com>
11920
11921 * libgcc2.c (__throw): Fix thinko.
11922
37f6b6bf
MM
11923Sun Sep 28 12:00:52 1997 Mark Mitchell <mmitchell@usa.net>
11924
11925 * cplus-dem.c (demangle_template): Add new parameter. Handle new
11926 template-function mangling.
11927 (consume_count_with_underscores): New function.
11928 (demangle_signature): Handle new name-mangling scheme.
11929
adfc539e
PDM
11930Sun Sep 28 01:55:04 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
11931
11932 * flow.c (print_rtl_with_bb): Cast alloca return values for variables
11933 start and end.
11934
92cbe4d2
JL
11935Sun Sep 28 01:05:16 1997 Jeffrey A Law (law@cygnus.com)
11936
11937 * frame.c: Remove last change.
11938 * dwarf2.h: Remove last change.
11939 * tree.h: Add declarations of DWARF2 unwind info support
11940 functions.
11941
2f3ca9e7
JM
11942Sat Sep 27 11:02:38 1997 Jason Merrill <jason@yorick.cygnus.com>
11943
11944 * c-decl.c (init_decl_processing): Add __builtin_dwarf_reg_size.
11945 * tree.h (built_in_function): Likewise.
11946 * expr.c (expand_builtin): Likewise.
11947 * except.h: Likewise.
11948 * dwarf2out.c (expand_builtin_dwarf_reg_size): New fn.
11949 * libgcc2.c (copy_reg): New fn.
11950 (__throw): Use it.
11951
407cb092
PE
11952Fri Sep 26 08:54:59 1997 Paul Eggert <eggert@twinsun.com>
11953
11954 * c-typeck.c (build_binary_op): Warn about comparing signed vs
11955 unsigned if -W is specified and -Wno-sign-compare is not.
11956 * c-decl.c (warn_sign_compare): Initialize to -1.
11957 (c_decode_option): -Wall no longer implies -Wsign-compare.
11958
3ba10494
AS
11959Fri Sep 26 09:00:13 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
11960
a7cc7f29
AS
11961 * frame.c: Include gansidecl.h for PROTO.
11962 * dwarf2out.c: Move inclusion of dwarf2.h down so that PROTO is
11963 defined. Don't declare dwarf2out_cfi_label here.
11964 * dwarf2.h: Add declarations of DWARF2 unwind info support
11965 functions.
11966 * m68k.c: Include dwarf2.h.
11967 (output_function_prologue): Add dwarf2 support.
11968 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM): New macros.
11969 (INCOMING_FRAME_SP_OFFSET): Likewise.
11970
3ba10494
AS
11971 * integrate.c (expand_inline_function): Make sure there is at
11972 least one insn that can be used as an insertion point.
11973
c5cec899
JM
11974Wed Sep 24 21:34:06 1997 Jason Merrill <jason@yorick.cygnus.com>
11975
11976 * dwarf2out.c: s/flag_verbose_asm/flag_debug_asm/
11977
e166cb18
JL
11978Wed Sep 24 22:05:30 1997 Jeffrey A Law (law@cygnus.com)
11979
11980 * version.c: Bump for snapshot.
11981
01a94cba
DE
11982Wed Sep 24 17:36:23 1997 Doug Evans <dje@canuck.cygnus.com>
11983
11984 Bring over from FSF.
11985
11986 Wed Sep 24 19:17:08 1997 Doug Evans <dje@cygnus.com>
11987
11988 * sparc/sparc.md (get_pc_via_call): Renamed from get_pc_sp32.
11989 (get_pc_via_rdpc): Renamed from get_pc_sp64.
11990 * sparc/sparc.c (finalize_pic): Update call to gen_get_pc_via_call.
11991
11992 Wed Sep 24 18:38:22 1997 David S. Miller <davem@tanya.rutgers.edu>
11993
11994 * sparc/sparc.h (ASM_CPU_SPEC): Pass -Av9a for v8plus, ultrasparc.
11995 (TARGET_OPTIONS): Add -malign-loops=, -malign-jumps=,
11996 -malign-functions=.
11997 (sparc_align_{loops,jumps,funcs}_string): Declare.
11998 (sparc_align_{loops,jumps,funcs}): Declare.
11999 (DEFAULT_SPARC_ALIGN_FUNCS): New macro.
12000 (FUNCTION_BOUNDARY): Use sparc_align_funcs.
12001 (STACK_BIAS): Define.
12002 (SPARC_SIMM*_P): Cast to unsigned HOST_WIDE_INT first, then perform
12003 test.
12004 (SPARC_SETHI_P): New macro.
12005 (CONST_OK_FOR_LETTER_P): Use it.
12006 (ASM_OUTPUT_ALIGN_CODE): Define.
12007 (ASM_OUTPUT_LOOP_ALIGN): Define.
12008 * sparc/sparc.c (sparc_align_{loops,jumps,funcs}_string): New globals.
12009 (sparc_align_{loops,jumps,funcs}): New globals.
12010 (sparc_override_options): Handle -malign-loops=, -malign-jumps=,
12011 -malign-functions=.
12012 (move_operand): Use SPARC_SETHI_P.
12013 (arith_double_operand): Cast to unsigned HOST_WIDE_INT first, then
12014 perform test.
12015 (arith11_double_operand): Likewise.
12016 (arith10_double_operand): Likewise.
12017 (finalize_pic): Finish sparc64 support.
12018 (emit_move_sequence): Use SPARC_SETHI_P. Simplify low part of
12019 64 bit constants if able.
12020 (output_fp_move_quad): Don't use fmovq unless TARGET_HARD_QUAD.
12021 (sparc_builtin_saveregs, sparc64 case): Don't save fp regs if
12022 ! TARGET_FPU.
12023 * sparc/sparc.md (*): Use GEN_INT instead of gen_rtx.
12024 (get_pc_sp32): Use for sparc64 as well.
12025 (lo_sum_di_sp{32,64}): Fix handling on 64 bit hosts.
12026 (sethi_di_sp64_const): Likewise.
12027 (movtf_cc_sp64): Check TARGET_HARD_QUAD.
12028 (cmp_zero_extract_sp64): Use unsigned HOST_WIDE_INT in cast.
12029 (ashlsi3, ashldi3, ashrsi3, ashrdi3, lshrsi3, lshrdi3): Likewise.
12030
12031 Tue Sep 23 19:02:46 1997 Doug Evans <dje@cygnus.com>
12032
12033 * sparc/linux-aout.h (COMMENT_BEGIN): Delete.
12034 * sparc/linux.h (COMMENT_BEGIN): Likewise.
12035 * sparc/linux64.h (COMMENT_BEGIN): Likewise.
12036
12037 Tue Sep 23 14:48:18 1997 David S. Miller <davem@tanya.rutgers.edu>
12038
12039 Add sparc64 linux support.
12040 * configure.in (sparc64-*-linux*): Recognize. Add sparc/xm-sparc.h
12041 to xm_file list on 32-bit sparc-linux.
12042 * sparc/xm-sp64.h: New file.
12043 * sparc/linux64.h: New file.
12044 * sparc/xm-linux.h: Include some standard headers if not inhibit_libc.
12045 Don't include xm-sparc.h.
12046 * config/xm-linux.h (HAVE_PUTENV, HAVE_ATEXIT): Define.
12047 * glimits.h (LONG_MAX): Handle sparc64.
12048
12049 Sat Sep 20 03:07:54 1997 Doug Evans <dje@cygnus.com>
12050
12051 * sparc/sysv4.h (ASM_COMMENT_START): Delete.
12052 * sparc.h (ASM_COMMENT_START): Define.
12053 * sparc.c (output_function_prologue): Use it.
12054 (sparc_flat_output_function_{epi,pro}logue): Likewise.
12055
12056 Wed Sep 17 15:04:19 1997 Doug Evans <dje@cygnus.com>
12057
12058 * sparc/sysv4.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Delete,
12059 use sparc.h's copies.
12060 * sparc/sparc.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Print
12061 ascii form as well.
12062
12063 Mon Sep 8 08:45:19 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
12064
12065 * sparc.c (dwarf2out_cfi_label): Add declaration.
12066 (save_regs, output_function_prologue): Remove cast for it.
12067 (sparc_flat_{save_restore,output_function_prologue): Likewise.
12068 ({save,restore}_regs): No longer inline.
12069
ce2157a1
JL
12070Tue Sep 23 12:34:51 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
12071
12072 * fold-const.c (make_range): Correctly handle cases of converting
12073 from unsigned to signed type.
12074
12075Tue Sep 23 12:34:51 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
12076
12077 * fold-const.c (merge_ranges): Make sure that if one range is subset
12078 of another, it will always be the second range. Correct (+,-) case to
12079 account for this.
12080
c5cec899
JM
12081Tue Sep 23 08:32:51 1997 Jason Merrill <jason@yorick.cygnus.com>
12082
12083 * final.c (final_end_function): Also do dwarf2 thing if
12084 DWARF2_DEBUGGING_INFO.
12085 (final_start_function): Likewise.
12086
c107334d
DM
12087Tue Sep 23 01:15:50 1997 David S. Miller <davem@tanya.rutgers.edu>
12088
e13a25d5
DM
12089 * expmed.c (expand_divmod): If compute_mode is not the same as
12090 mode, handle the case where convert_modes() causes op1 to no
12091 longer be a CONST_INT.
12092
c107334d
DM
12093 * reorg.c (dbr_schedule): At end of this pass, add REG_BR_PRED
12094 note holding get_jump_flags() calculation to all JUMP_INSNs.
12095 * rtl.h (enum reg_note): New note types REG_BR_PRED and REG_SAVE_AREA.
12096 * rtl.c (reg_note_name): Add new note types.
12097
8d7532d9
JL
12098Tue Sep 23 00:59:54 1997 Jeffrey A Law (law@cygnus.com)
12099
0774afd7 12100 * rtlanal.c (computed_jump_p): Fix typo in last change.
8d7532d9 12101
7019d00e
L
12102Tue Sep 23 00:42:44 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
12103
12104 * loop.c (indirect_jump_in_function_p): Return 0
12105 by default.
12106
b9dfb357
JL
12107Tue Sep 23 00:33:55 1997 Jeffrey A Law (law@cygnus.com)
12108
12109 * rs6000/xm-rs6000.h: Fix thinko in last change.
12110 * rs6000/xm-sysv4.h: Likewise.
12111
4b7e467b
JW
12112Mon Sep 22 19:33:53 1997 Jim Wilson <wilson@cygnus.com>
12113
12114 * mips.c (save_restore_insns): Only set RTX_FRAME_RELATED_P if store_p.
12115
8c8e6faa
JL
12116Mon Sep 22 14:41:00 1997 Jeffrey A Law (law@cygnus.com)
12117
12118 * reg-stack.c (find_blocks): Fix thinko in last change.
12119
078e983e
AS
121201997-09-21 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
12121
12122 * m68k.c (output_function_prologue): Add dwarf2 support.
12123
12124 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM,
12125 INCOMING_FRAME_SP_OFFSET): New definitions.
b57062ca 12126
d7027667
DM
12127Mon Sep 22 11:36:42 1997 David S. Miller <davem@tanya.rutgers.edu>
12128
9524f769
DM
12129 * combine.c (try_combine): Use NULL_RTX instead of '0' where
12130 appropriate in calls to gen_rtx().
12131 * cse.c (cse_main): Likewise.
12132 * emit-rtl.c (gen_label_rtx): Likewise.
12133 * expr.c (init_expr_once): Likewise.
12134 * haifa-sched.c (flush_pending_lists, sched_analyze_insn,
12135 sched_analyze, init_rgn_data_dependences,
12136 compute_block_backward_dependences): Likewise.
12137 * sched.c (schedule_insns): Likewise.
12138 * varasm.c (immed_double_const): Likewise.
12139
d7027667
DM
12140 * sparc.h (INCOMING_FRAME_SP_OFFSET): Define to
12141 SPARC_STACK_BIAS for sake of dwarf2 on sparc64.
12142
fbf8b71c
KJ
12143Mon Sep 22 11:21:33 1997 J. Kean Johnston <jkj@sco.com>
12144
12145 * i386/sco5.h: Make ELF default file format and add -mcoff/-melf..
12146 (MULTILIB_DEFAULTS): Define.
12147 (ASM_SPEC, CPP_SPEC): Handle -mcoff.
12148 (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Likewise.
12149 (LIBGCC_SPEC): Likewise.
12150 (MASK_COFF, TARGET_COFF, TARGET_ELF): Define.
12151 (SUBTARGET_SWITCHES): Add -mcoff and -melf.
12152 * i386/t-sco5 (CRTSTUFF_T_CFLAGS): Add -fPIC.
12153 (CRTSTUFF_T_CFLAGS_S): Tweak for COFF.
12154 (EXTRA_PARTS, TAROUTOPTS): Delete.
12155 (libgcc1-elf, libgcc2-elf, libgcc-elf targets): Delete.
12156 (MULTILIB_OPTIONS): Define.
12157 (MULTILIB_DIRNAMES, MULTILIB_EXCEPTIONS): Likewise.
12158 (MULTILIB_MATCHE, MULTILIB_EXTRA_OPTS): Likewise.
12159
c14a951f
JL
12160Mon Sep 22 02:10:43 1997 Jeffrey A Law (law@cygnus.com)
12161
12162 * version.c: Bump for snapshot.
12163
7014927a
JL
12164Sun Sep 21 17:45:45 1997 Jeffrey A Law (law@cygnus.com)
12165
37aa45a2
JL
12166 * loop.c (loop_number): Delete function. Change all references
12167 to use uid_loop_num array.
12168 * loop.h (loop_number): Delete declaration.
12169 * unroll.c (unroll_loop): Change "loop_number" references to
12170 use uid_loop_num instead.
12171
b47404d1
JL
12172 * loop.c (loop_unroll_factor): Move outside #ifdef HAIFA
12173 conditional.
12174 (loop_unroll_iter): Remove unused variable and all references.
12175 (loop_optimize): Always allocate and clear space for loop_unroll_factor.
12176 (insert_bct): Fix minor formatting problems.
12177 * loop.h (loop_unroll_factor): Move decl outside #ifdef HAIFA.
12178 (loop_unroll_iter): Removed unused decl.
12179 * unroll.c (unroll_loop): Remove code to set loop_unroll_iter.
12180 Always record the unrolling factor.
12181
cb3bb2a7
JL
12182 * cse.c (simplify_relational_operation): Set h0u just like h0s.
12183 Similarly for h1u and h1s.
12184
d5ff3a2e 12185 * flow.c (jmp_uses_reg_or_mem): Deleted unused function.
2a1777af
JL
12186 (find_basic_blocks): Use computed_jump_p to determine if a
12187 particular JUMP_INSN is a computed jump.
12188 * reg-stack.c (find_blocks): Use computed_jump_p to determine
12189 if a particular JUMP_INSN is a computed jump.
12190 * rtlanal.c (jmp_uses_reg_or_mem): New function.
12191 (computed_jump_p): Likewise.
12192 * rtl.h (computed_jump_p): Declare.
12193 * genattrtab.c (pc_rtx): Define and initialize.
12194 * loop.c (loop_optimize): Always determine if the current
12195 function has a computed jump.
12196 (indirect_jump_in_function_p): Use computed_jump_p to determine
12197 if a particular JUMP_INSN is a computed jump.
12198
7014927a
JL
12199 * loop.c (fix_bct_param): Delete unused function.
12200 (check_bct_param): Likewise.
12201
6d53d7c2
JM
12202Sat Sep 20 16:22:06 1997 Jason Merrill <jason@yorick.cygnus.com>
12203
12204 * frame.c (__deregister_frame): Check properly for initialized object.
12205
5a5e9503 12206Fri Sep 19 20:51:03 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
71e4fbe6
L
12207
12208 * alpha/linux.h (HANDLE_SYSV_PRAGMA): Defined.
12209
272299b9
R
12210Fri Sep 19 18:53:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
12211
cc5e1642
R
12212 * jump.c (thread_jumps): check can_reverse_comparison_p before
12213 threading a reversed-condition jump.
12214
272299b9
R
12215 * sched.c (update_flow_info): Don't pass SCRATCH to dead_or_set_p.
12216 * haifa-sched.c (update_flow_info): Likewise.
12217
18511014
JL
12218Thu Sep 18 21:13:40 1997 Jeffrey A Law (law@cygnus.com)
12219
e6493727
JL
12220 * Makefile.in (BOOT_CFLAGS): Use -O2.
12221
1e467e19
JL
12222 * configure.in (strtoul, bsearch): Have autoconf check for these
12223 functions.
12224 * configure, config.in: Rebuilt.
12225
18511014
JL
12226 * m68k/xm-mot3300.h (alloca): Properly declare if __STDC__.
12227 * mips/mips.h (alloca): Likewise.
12228 * rs6000/xm-rs6000.h (alloca): Likewise.
12229 * rs6000/xm-sysv4.h: Likewise.
12230
6020d360
JM
12231Thu Sep 18 14:22:22 1997 Jason Merrill <jason@yorick.cygnus.com>
12232
12233 * final.c (final_scan_insn): Hand BARRIERs off to the dwarf2 code.
12234 * dwarf2out.c (dwarf2out_frame_debug): Pass the whole insn along.
12235 (dwarf2out_stack_adjust): A BARRIER resets the args space to 0.
12236
12237 * except.c (end_eh_unwinder): Subtract 1 from return address.
12238 * libgcc2.c (__throw): Likewise.
12239 (find_exception_handler): Don't change PC here. Compare end with >.
12240
b24bcfb3 12241Thu Sep 18 10:43:07 1997 Nick Clifton <nickc@cygnus.com>
b57062ca 12242
b24bcfb3
NC
12243 * v850.c (compute_register_save_size): Correct register
12244 number.
12245 * v850.md (save_interrupt, return_interrupt): Correct
12246 register number.
12247 * v850/lib1funcs.asm (save_interrupt): Correct register number.
12248 (return_interrupt): Use stack pointer, not element pointer.
12249
93cf819d
BK
122501997-09-18 Brendan Kehoe <brendan@lisa.cygnus.com>
12251
12252 * configure.in, configure: Make sure to create the stage* and include
12253 symbolic links in each subdirectory.
12254
f0501149
JL
12255Thu Sep 18 01:47:06 1997 Jeffrey A Law (law@cygnus.com)
12256
12257 * pa.md (reload_peepholes): Don't allow addresses with side
12258 effects for the memory operand.
12259
4f870c04
JM
12260Wed Sep 17 18:19:53 1997 Jason Merrill <jason@yorick.cygnus.com>
12261
12262 * libgcc2.c (find_exception_handler): Subtract one from our PC when
12263 looking for a handler, to avoid hitting the beginning of the next
12264 region.
12265
12266 * except.c (expand_builtin_set_return_addr_reg): Use force_operand.
12267
4eb66248
JL
12268Wed Sep 17 18:33:59 1997 Jeffrey A Law (law@cygnus.com)
12269
12270 * mips/abi64.h (LONG_MAX_SPEC): Define.
12271 * mips.h (LONG_MAX_SPEC): Define.
12272 (CPP_SPEC): Include long_max_spec.
12273 (EXTRA_SPECS): Include long_max_spec.
12274
44158507
JL
12275Wed Sep 17 14:11:38 1997 Jeffrey A Law (law@cygnus.com)
12276
12277 * v850.c (construct_save_jarl): Fix thinko in last change.
12278
bf520cd9
JL
12279Wed Sep 17 09:53:07 1997 Jeffrey A Law (law@cygnus.com)
12280
12281 * version.c: Bump for snapshot.
12282
255fe733
JM
12283Tue Sep 16 14:22:36 1997 Jason Merrill <jason@yorick.cygnus.com>
12284
c0727e2a
JM
12285 * libgcc2.c (find_exception_handler): Not found is -1.
12286
255fe733
JM
12287 * integrate.c (expand_inline_function): Move expand_start_bindings
12288 after expanding the arguments.
12289
21002281
JW
12290Tue Sep 16 11:13:46 1997 Jim Wilson <wilson@cygnus.com>
12291
12292 * expr.c (expand_expr): Remove previous incorrect change.
12293 If target and slot has no DECL_RTL, then call mark_addressable
12294 again for the slot after we give it RTL.
12295
e693cc28 12296Tue Sep 16 09:18:52 1997 Jason Merrill (jason@cygnus.com)
f633220c 12297
e693cc28
UD
12298 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
12299 again for the slot after we give it RTL.
f633220c 12300
145870b5
NC
12301Tue Sep 16 00:13:20 1997 Nick Clifton <nickc@cygnus.com>
12302
84e75068 12303 * v850.c (register_is_ok_for_epilogue,
145870b5
NC
12304 pattern_is_ok_for_epilogue, construct_restore_jr,
12305 pattern_is_ok_for_prologue, construct_save_jarl): New functions.
12306
84e75068 12307 * v850.h (pattern_is_ok_for_prologue,
145870b5
NC
12308 pattern_is_ok_for_epilogue, register_is_ok_for_epilogue): New
12309 predicates.
12310
84e75068 12311 * v850.md: Replace prologue and epilogue patterns with a
145870b5
NC
12312 match_parallel pattern.
12313
76143254
JL
12314Mon Sep 15 22:53:01 1997 Jeffrey A Law (law@cygnus.com)
12315
12316 * aclocal.m4: Add replacement for AC_PROG_INSTALL.
12317 * configure.in: Use EGCS_PROG_INSTALL.
12318
4401bf24
JL
12319Mon Sep 15 22:40:55 1997 Jim Wilson (wilson@cygnus.com)
12320
12321 * dwarf2out.c (gen_subprogram_die): Handle redefinition of an
12322 extern inline function.
12323
12324Mon Sep 15 22:40:55 1997 Richard Henderson (rth@cygnus.com)
12325
12326 * dwarf2out.c (reg_loc_descriptor): Fix prototype.
12327 (concat_loc_descriptor): New function.
12328 (loc_descriptor): Call it.
12329 (add_AT_location_description): Also elide the descriptor if both
12330 halves of a CONCAT are pseudos.
12331 (add_location_or_const_value_attribute): Recognize CONCAT too.
12332
0d24ff5d
RH
12333Mon Sep 15 15:24:00 1997 Richard Henderson <rth@cygnus.com>
12334
4bb43724
RH
12335 * alpha.md (movdi): Handle CONST_DOUBLE for TARGET_BUILD_CONSTANTS.
12336
0d24ff5d
RH
12337 * alpha/alpha.c (output_prolog): New variable sa_reg. Use it for
12338 out-or-range reg_offset.
12339 (output_epilog): Likewise.
12340
05ef8897
JL
12341Mon Sep 15 15:39:26 1997 Jeffrey A Law (law@cygnus.com)
12342
12343 * cse.c (simplify_relational_operation): If MODE specifies a
12344 mode wider than HOST_WIDE_INT, then the high word of a CONST_INT
12345 is derived from the sign bit of the low word.
12346
ca55abae
JM
12347Mon Sep 15 11:43:38 1997 Jason Merrill <jason@yorick.cygnus.com>
12348
12349 Support dwarf2 unwinding on PUSH_ROUNDING targets like the x86.
12350
12351 * dwarf2.h: Add DW_CFA_GNU_args_size.
12352 * frame.c (execute_cfa_insn): Likewise.
12353 * dwarf2out.c (dwarf_cfi_name, output_cfi): Likewise.
12354 (dwarf2out_args_size, dwarf2out_stack_adjust): New fns.
12355 (dwarf2out_frame_debug): If this isn't a prologue or epilogue
12356 insn, hand it off to dwarf2out_stack_adjust.
12357 (dwarf2out_begin_prologue): Initialize args_size.
12358 * frame.h (struct frame_state): Add args_size.
12359 * libgcc2.c (__throw): Use args_size.
12360 * final.c (final_scan_insn): If we push args, hand off all insns
12361 to dwarf2out_frame_debug.
12362 * defaults.h (DWARF2_UNWIND_INFO): OK for !ACCUMULATE_OUTGOING_ARGS.
12363
12364 * dwarf2out.c dwarf2out_frame_debug): Fix typo.
12365 Handle epilogue restore of SP from FP.
b57062ca 12366 * emit-rtl.c (gen_sequence): Still generate a sequence if the
ca55abae
JM
12367 lone insn has RTX_FRAME_RELATED_P set.
12368
12369 * frame.c (extract_cie_info): Handle "e" augmentation.
12370 * dwarf2out.c (ASM_OUTPUT_DWARF_*): Provide definitions in the
12371 absence of UNALIGNED_*_ASM_OP.
12372 (UNALIGNED_*_ASM_OP): Only provide defaults if OBJECT_FORMAT_ELF.
12373 (output_call_frame_info): Use "e" instead of "z" for augmentation.
12374 Don't emit augmentation fields length.
12375 (dwarf2out_do_frame): Move outside of #ifdefs.
12376 * defaults.h (DWARF2_UNWIND_INFO): Don't require unaligned data
12377 opcodes.
12378
12379 * sparc.h (UNALIGNED_INT_ASM_OP et al): Don't define here after all.
12380 * sparc/sysv4.h (UNALIGNED_INT_ASM_OP): Define here.
12381 * sparc/sunos4.h (DWARF2_UNWIND_INFO): Define to 0.
12382 * sparc/sun4gas.h: New file.
12383 * configure.in: Use sun4gas.h if SunOS 4 --with-gnu-as.
12384
b57062ca 12385 * collect2.c (write_c_file_stat, write_c_file_glob): Declare
ca55abae
JM
12386 __register_frame_table and __deregister_frame.
12387
1d77fa53
BK
123881997-09-15 Brendan Kehoe <brendan@cygnus.com>
12389
12390 * except.c (find_exception_handler_labels): Use xmalloc instead of
12391 alloca, since MAX_LABELNO - MIN_LABELNO can be more than 1 million
12392 in some cases.
12393
8be52aaa
JL
12394Sun Sep 14 21:01:23 1997 Jeffrey A Law (law@cygnus.com)
12395
12396 * Makefile.in: Various changes to build info files
12397 in the object tree rather than the source tree.
12398
a3ee3246
JL
12399Sun Sep 14 12:24:30 1997 Jeffrey A Law (law@cygnus.com)
12400
12401 * fixinc.math: New file to fix math.h on some systems.
12402 * configure.in (freebsd, netbsd): Use fixinc.math on these
12403 systems.
12404 * configure: Rebuilt.
12405
124da275
JL
12406Sun Sep 14 11:11:05 1997 Jeffrey A Law (law@cygnus.com)
12407
12408 * regmove.c (regmove_optimize): If we end up moving the
12409 original insn due to lifetime overlaps, make sure to move
12410 REG_NOTES too.
12411
fca9d4b0
MH
12412Sat Sep 13 15:51:11 1997 Manfred Hollstein <manfred@s-direktnet.de>
12413
12414 * Makefile.in (INSTALL_{PROGRAM,DATA}): Use value found by configure.
12415
326ee7a3
JL
12416Sat Sep 13 12:57:26 1997 Jeffrey A Law (law@cygnus.com)
12417
12418 * haifa-sched.c (add_branch_dependences): Make each insn in
12419 a SCHED_GROUP_P block explicitly depend on the previous insn.
12420
ca55abae
JM
12421Fri Sep 12 13:49:58 1997 Jason Merrill <jason@yorick.cygnus.com>
12422
12423 * except.h: Prototype dwarf2 hooks.
12424 * expr.c: Adjust.
12425
5188d2b2
JW
12426Thu Sep 11 17:43:55 1997 Jim Wilson <wilson@cygnus.com>
12427
12428 * configure.in (native_prefix): Delete.
12429 (mips-dec-netbsd): Don't set prefix.
12430 (*linux*): Don't set prefix.
12431
2e384318
FF
12432Thu Sep 11 15:48:32 1997 Fred Fish <fnf@ninemoons.com>
12433
70988851
FF
12434 * protoize.c: Include <varargs.h> only if HAVE_VARARGS_H is
12435 defined. If not defined, include <sys/varargs.h> if
12436 HAVE_SYS_VARARGS_H is defined.
12437 * configure.in: Test for varargs.h and sys/varargs.h.
12438 * configure: Regenerate with autoconf.
12439 * config.in: Regenerate with autoheader.
12440
2e384318
FF
12441 * cpplib.c (quote_string): Cast first arg of sprintf call
12442 from "unsigned char *" to "char *".
12443 (output_line_command): Ditto.
12444 (macroexpand): Ditto.
12445 (do_line): Cast atoi arg from "unsigned char *" to "char *".
12446
3fb2f401
JL
12447Wed Sep 10 21:37:30 1997 Jeffrey A Law (law@cygnus.com)
12448
f2e4e16f
JL
12449 * version.c: Bump for snapshot.
12450
3fb2f401
JL
12451 * Makefile.in (compare): Exit with nonzero status if there
12452 are comparison failures. Note which files failed the
12453 comparison test in .bad_compare.
12454
d26cb668
L
12455Wed Sep 10 17:05:46 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
12456
12457 * config/alpha/elf.h (CPP_PREDEFINES): Remove -D__PIC__ -D__pic__.
12458
ac64120e
JW
12459Wed Sep 10 16:37:28 1997 Fred Fish <fnf@ninemoons.com>
12460
12461 * Makefile.in (LN, LN_S): New macros, use where appropriate.
12462 * aclocal.m4 (GCC_PROG_LN_S, GCC_PROG_LN): New tests.
12463 * configure.in: Use GCC_PROG_LN_S and GCC_PROG_LN.
12464 * configure: Regenerated.
12465
12466Thu Sep 11 11:09:43 1997 Jeffrey A Law (law@cygnus.com)
12467
12468 * loop.c (strength_reduce): Fix typo.
12469
db87ec0b
JW
12470Wed Sep 10 16:01:15 1997 Jim Wilson <wilson@cygnus.com>
12471
12472 * m88k/m88k.c (struct option): Rename to struct options.
12473 * m88k/dolph.h (INITIALIZE_TRAMPOLINE): Delete here.
12474 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE): Delete ifdef and comments.
12475 * libgcc2.c (__enable_execute_stack): Check for __sysV88__ not
12476 __DOLPHIN__ or sysV88.
12477
04395f96
JW
12478Wed Sep 10 14:58:40 1997 Jim Wilson <wilson@cygnus.com>
12479
12480 * emit-rtl.c (gen_lowpart_common): For a SUBREG, add in word when
12481 create new subreg.
12482
becdcf6d
JL
12483Wed Sep 10 15:19:22 1997 Jeffrey A Law (law@cygnus.com)
12484
12485 * config.sub: Accept 'amigados' for backward compatability.
12486
04395f96 12487Wed Sep 10 14:05:08 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
3979dfb8
JW
12488
12489 * Makefile.in (testsuite/site.exp): New target.
12490 (check-gcc, check-g++): Depend on testsuite/site.exp.
12491 Don't stop for failure.
12492
ca55abae
JM
12493Wed Sep 10 12:59:57 1997 Jason Merrill <jason@yorick.cygnus.com>
12494
12495 * expr.c (expand_builtin): Only support __builtin_dwarf_fp_regnum()
12496 if DWARF2_UNWIND_INFO.
12497
12498Wed Sep 10 11:49:20 1997 Jason Merrill <jason@yorick.cygnus.com>
12499
12500 Add support for exception handling using DWARF 2 frame unwind info.
12501 Currently works on SPARC and MIPS, and almost on x86.
b57062ca 12502
ca55abae
JM
12503 * libgcc2.c (get_reg, put_reg, get_return_addr, put_return_addr,
12504 next_stack_level, in_reg_window): Helper fns.
12505 (__throw): Implement for DWARF2_UNWIND_INFO.
12506
12507 * expr.c (expand_builtin): Handle builtins used by __throw.
12508 * tree.h (enum built_in_function): Add builtins used by __throw.
12509 * c-decl.c (init_decl_processing): Declare builtins used by __throw.
12510 * dwarf2out.c (expand_builtin_dwarf_fp_regnum): Used by __throw.
12511 * except.c (expand_builtin_unwind_init): Hook for dwarf2 __throw.
12512 (expand_builtin_extract_return_addr): Likewise.
12513 (expand_builtin_frob_return_addr): Likewise.
12514 (expand_builtin_set_return_addr_reg): Likewise.
12515 (expand_builtin_eh_stub): Likewise.
12516 (expand_builtin_set_eh_regs): Likewise.
12517 (eh_regs): Choose two call-clobbered registers for passing back values.
12518
12519 * frame.c, frame.h: New files for parsing dwarf 2 frame info.
12520 * Makefile.in (LIB2ADD): New variable. Add $(srcdir)/frame.c.
12521 (libgcc2.a): Use it instead of $(LIB2FUNCS_EXTRA) $(LANG_LIB2FUNCS)
12522 (stmp-multilib): Likewise.
12523 ($(T)crtbegin.o, $(T)crtend.o): Add -fno-exceptions.
12524
12525 * except.c: #include "defaults.h".
12526 (exceptions_via_longjmp): Default depends on DWARF2_UNWIND_INFO.
12527 (emit_throw): Don't defeat assemble_external if DWARF2_UNWIND_INFO.
12528 (register_exception_table_p): New fn.
12529 (start_eh_unwinder): Don't do anything if DWARF2_UNWIND_INFO.
12530 (end_eh_unwinder): Likewise.
12531
b57062ca 12532 * crtstuff.c: Wrap .eh_frame section, use EH_FRAME_SECTION_ASM_OP,
ca55abae
JM
12533 call __register_frame and __deregister_frame as needed.
12534 * varasm.c (eh_frame_section): New fn if EH_FRAME_SECTION_ASM_OP.
12535 * dwarf2out.c (EH_FRAME_SECTION): Now a function-like macro. Check
12536 EH_FRAME_SECTION_ASM_OP.
12537 * sparc/sysv4.h (EH_FRAME_SECTION_ASM_OP): Define.
12538 * mips/iris6.h: (EH_FRAME_SECTION_ASM_OP): Define.
12539 (LINK_SPEC): Add __EH_FRAME_BEGIN__ to hidden symbols.
12540
12541 * dwarf2out.c (output_call_frame_info): If no support for
12542 EXCEPTION_SECTION, mark the start of the frame info with a
12543 collectable tag.
12544 * collect2.c (frame_tables): New list.
12545 (is_ctor_dtor): Recognise frame entries.
12546 (scan_prog_file): Likewise.
12547 (main): Pass -fno-exceptions to sub-compile. Also do collection
12548 if there are any frame entries.
12549 (write_c_file_stat): Call __register_frame_table and
12550 __deregister_frame as needed.
12551 (write_c_file_glob): Likewise.
12552
b57062ca 12553 * defaults.h (DWARF2_UNWIND_INFO): Default to 1 if supported.
ca55abae
JM
12554 Also require unaligned reloc support.
12555 * sparc.h (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
12556 UNALIGNED_DOUBLE_INT_ASM_OP): Define here.
12557 * sparc/sysv4.h: Not here.
12558
12559 * toplev.c (compile_file): Call dwarf2out_frame_{init,finish}.
12560 * dwarf2out.c (dwarf2out_init): Don't call dwarf2out_frame_init.
12561 (dwarf2out_finish): Don't call dwarf2out_frame_finish.
12562
12563 * libgcc2.c (L_eh): Reorganize, moving code shared by different
12564 EH implementations to the top.
12565 (find_exception_handler): Split out. Start from 0. Compare against
12566 end with >=.
12567 (__find_first_exception_table_match): Use it.
12568 * except.c (output_exception_table): Don't do anything if there's
12569 no table. Don't output a first entry of zeroes.
12570 (eh_outer_context): Adjust properly.
12571 (add_eh_table_entry): Use xrealloc.
12572 * toplev.c (compile_file): Just call output_exception_table.
12573
12574Wed Sep 10 11:30:36 1997 Jason Merrill <jason@cygnus.com>
12575
12576 * i386.c (ix86_prologue): Add dwarf2 support for !do_rtl case.
12577
12578Wed Sep 10 08:17:10 1997 Torbjorn Granlund <tege@pdc.kth..se>
12579
12580 * except.c (eh_outer_context): Do masking using expand_and.
12581
b4d940a2
JL
12582Wed Sep 10 01:38:30 1997 Doug Evans <dje@cygnus.com>
12583
12584 Add port done awhile ago for the ARC cpu.
12585 * arc/arc.h: New file.
12586 * arc/arc.c: New file.
12587 * arc/arc.md: New file.
12588 * arc/initfini.c: New file.
12589 * arc/lib1funcs.asm: New file.
12590 * arc/t-arc: New file.
12591 * arc/xm-arc.h: New file.
12592 * ginclude/va-arc.h: New file.
12593 * ginclude/stdarg.h: Include va-arc.h ifdef __arc__.
12594 * ginclude/varargs.h: Likewise.
12595 * Makefile.in (USER_H): Add va-arc.h.
12596 * configure.in (arc-*-elf*): Recognize.
12597 * longlong.h: Add ARC support.
12598
12599Wed Sep 10 01:32:54 1997 Jeffrey A Law (law@cygnus.com)
12600
12601 * expr.c (clear_storage): Use CONST0_RTX instead of const0_rtx.
12602 when clearing non-BLKmode data.
12603
10211581
JL
12604Wed Sep 10 00:29:29 1997 Manfred Hollstein <manfred@s-direktnet.de>
12605
9dfc6eba
MH
12606 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE) Define.
12607 * libgcc2.c (__enable_execute_stack): Provide for sysV88 too.
12608
55259219
MH
12609 * xm-m88k.h (USG): Only define if it hasn't already been defined.
12610
12611 * Makefile.in (risky-stage1): Delete gratutious whitespace.
12612
ee291069
MH
12613 * Makefile.in (clean): Delete libgcc1-test.
12614
10211581
JL
12615 * Makefile.in (INSTALL): cd to $(srcdir) before running texinfo.
12616
12617Tue Sep 9 17:07:36 1997 Stan Cox <coxs@dg-rtp.dg.com>
48f0be1b
SC
12618
12619 * m88k.c (m88k_expand_prologue): Set MEM_IN_STRUCT_P of va_list
12620 template.
12621
ca55abae
JM
12622Tue Sep 9 09:50:02 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
12623
12624 * dwarf2out.c (output_call_frame_info): Call named_section.
12625
8f3d79e0
JL
12626Tue Sep 9 09:12:17 1997 Jeffrey A Law (law@cygnus.com)
12627
12628 * haifa-sched.c (print_value): Fix last change.
12629
ca55abae
JM
12630Tue Sep 9 01:30:37 1997 Jason Merrill <jason@yorick.cygnus.com>
12631
12632 * mips.h (DWARF_FRAME_REGNUM): Use the same numbering regardless of
12633 write_symbols.
12634
12635Mon Sep 8 16:32:43 1997 Jason Merrill <jason@yorick.cygnus.com>
12636
12637 * mips.c (function_prologue): Set up the CFA when ABI_32.
12638
12639 * sparc.c (save_regs): Check dwarf2out_do_frame instead of DWARF2_DEBUG
12640 for dwarf2 unwind info.
12641 (output_function_prologue, sparc_flat_output_function_prologue): Same.
12642
12643 * final.c (final_end_function): Check dwarf2out_do_frame instead
12644 of DWARF2_DEBUG for dwarf2 unwind info.
12645 (final_scan_insn): Likewise.
12646 (final_start_function): Likewise. Initialize dwarf2 frame debug here.
12647 (final): Not here.
12648
12649 * expr.c (expand_builtin_return_addr): Only SETUP_FRAME_ADDRESSES if
12650 count > 0.
12651
12652 * varasm.c (exception_section): Check EXCEPTION_SECTION first.
12653
74aca74b
NC
12654Mon Sep 8 15:15:11 1997 Nick Clifton <nickc@cygnus.com>
12655
12656 * v850.h (ASM_SPEC): Pass on target processor.
12657 (CPP_PREDEFINES): Only define if not already specified.
12658 (TARGET_VERSION): Only define if not already specified.
12659 (MASK_CPU, MASK_V850, MASK_DEFAULT): Bits to specify target
12660 processor.
12661 (EXTRA_SWITCHES): Extra entries in the switches array.
12662 (TARGET_DEFAULT): Set default target processor.
12663
c0b04148
JW
12664Mon Sep 8 18:26:35 1997 Jim Wilson <wilson@cygnus.com>
12665
12666 * m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): In MOTOROLA
12667 cases, add %# and %/, and add : to make them into extended asms.
12668
52b7724b
WL
12669Sun Sep 7 23:57:50 1997 Weiwen Liu <liu@hepunix.physics.yale.edu>
12670
12671 * alias.c (init_alias_analysis): Clean up incompatible pointer
12672 type warning in bzero.
12673 * regmove.c (regmove_optimize): Ditto.
12674 * haifa-sched.c (find_rgns): Ditto.
12675
12676 * haifa-sched.c (print_value): Clean up ptr->int cast
12677 warnings.
12678
0c82f6bf
FF
12679Sun Sep 7 23:18:32 1997 Fred Fish <fnf@ninemoons.com>
12680
12681 * INSTALL: Change 'amigados' to 'amigaos' to match current usage.
12682 * install.texi (Configurations): Ditto.
12683 * config.sub: Ditto.
12684
1fed1f51
WL
12685Sun Sep 7 22:56:56 1997 Weiwen Liu (liu@hepvms.physics.yale.edu)
12686
12687 * Makefile.in (sdbout.o): Depend on insn-config.h.
12688
239e68f6
JW
12689Sun Sep 7 18:44:50 1997 Jim Wilson <wilson@cygnus.com>
12690
12691 * m68k/m68k.h (TARGET_SWITCHES): For 68000, 68302, subtract MASK_68881.
12692 For 68303, 68332, cpu32, subtract MASK_68040_ONLY.
12693
267c09ab
JM
12694Sun Sep 7 18:30:46 1997 Jason Merrill <jason@yorick.cygnus.com>
12695
12696 * dwarf2out.c (dwarf2out_frame_debug): Assume that in a PARALLEL
12697 prologue insn, only the first elt is significant.
12698 (output_call_frame_info): For exception handling, always use 4-byte
12699 fields as specified by the dwarf2 spec.
12700 Don't skip trivial FDEs.
12701
db7cafb0
JL
12702Sun Sep 7 14:19:39 1997 Jeffrey A Law (law@cygnus.com)
12703
12704 * version.c: Bump for snapshot.
12705
12706Sun Sep 7 14:17:36 1997 Torbjorn Granlund (tege@pdc.kth.se)
12707
12708 * expmed.c (expand_divmod): Make op1_is_pow2 depend on unsignedp
12709 for negative constants. Promote EXACT_DIV_EXPR to TRUNC_DIV_EXPR
12710 when op1_is_pow2.
12711
12712Sun Sep 7 13:46:46 1997 Jeffrey A Law (law@cygnus.com)
12713
bf520cd9
JL
12714 * final.c (shorten_branches): During first pass, assume worst
12715 possible alignment for ADDR_VEC and ADDR_VEC_DIFF insns.
db7cafb0
JL
12716
12717 * Makefile.in (distclean): Remove various things left around
12718 by running the testsuite.
12719
7ed46111
MH
12720Sun Sep 7 13:16:06 1997 Manfred Hollstein <manfred@s-direktnet.de>
12721
12722 * configure.in (out_file): Emit definition to config.status in order
12723 to have a defined value for configure.lang.
12724 * configure: Re-built.
12725
e41cea70
JJH
12726Sun Sep 7 09:59:08 1997 Jan-Jaap van der Heijden (J.J.vanderHeijden@student.utwente.nl)
12727
bf520cd9 12728 * configure.in: Make symlink to as-new rather than as.new. Similarly
e41cea70
JJH
12729 for ld-new.
12730 * configure: Rebuilt.
12731
1aeb1f6f
JW
12732Fri Sep 5 16:54:55 1997 Jim Wilson <wilson@cygnus.com>
12733
12734 * profile.c (output_func_start_profiler): Set DECL_EXTERNAL to zero.
12735
770a0113
CK
12736Fri Sep 5 16:16:44 1997 Christian Kuehnke <Christian.Kuehnke@arbi.Informatik.Uni-Oldenburg.DE>
12737
12738 * sparc/sparc.md: Add ultrasparc scheduling support.
12739 * sparc/sparc.h (RTX_COSTS): For MULT give v9 a cost of 25 insns.
12740
f5ffa999
PDM
12741Fri Sep 5 14:04:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
12742
12743 * integrate.c (save_for_inline_copying): Use 0, not NULL_PTR,
12744 as initial value for real_label_map.
12745 (copy_for_inline): Likewise.
12746
acceac1a
R
12747Fri Sep 5 13:36:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
12748
12749 * sched.c (update_flow_info) When looking if to set found_split_dest
12750 or found_orig_dest, look at all parts of a PARALLEL.
12751 * haifa-sched.c (update_flow_info): Likewise.
12752
f84271d9
JL
12753Fri Sep 5 10:08:44 1997 Jeffrey A Law (law@cygnus.com)
12754
12755 * v850: New directory for v850 port.
12756 * v850/lib1funcs.asm: New file.
12757 * t-v850, v850.c, v850.h, v850.md, xm-v850.h: New files.
12758 * ginclude/va-v850.h: New file.
12759 * ginclude/varargs.h, ginclude/stdarg.h: Include va-mn10200.h.
12760 * configure.in (mn10200-*-*): New target.
12761 * configure: Rebuilt.
12762 * config.sub: Handle v850-elf.
b57062ca 12763 * Makefile.in (USER_H): Add va-mn10200.h.
f84271d9
JL
12764 * invoke.texi: Document v850 stuff.
12765
89cc6098
JW
12766Fri Sep 5 09:37:50 1997 Jim Wilson (wilson@cygnus.com)
12767
04940ba5
JW
12768 * sdbout.c (plain_type_1, case ARRAY_TYPE): Verify that TYPE_DOMAIN
12769 has integer TYPE_{MAX,MIN}_VALUE before using them.
12770
89cc6098
JW
12771 * m68k/m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Add
12772 __HPUX_ASM__ versions.
12773
c74f7db8
JL
12774Fri Sep 5 09:08:44 1997 Jeffrey A Law (law@cygnus.com)
12775
bf520cd9 12776 * install.sh: Delete duplicate install script.
c74f7db8 12777
914ec131
SC
12778Thu Sep 4 23:14:27 1997 Stan Cox (coxs@dg-rtp.dg.com)
12779
12780 * reg-stack.c (subst_stack_regs): Pop the stack register for a
12781 computed goto which sets the same stack register.
12782
12783 * reg-stack.c (compare_for_stack_reg): Swap only if the source and
12784 destination are both on the regstack.
12785 (subst_stack_regs_pat): Put the destination at the top of the regstack.
12786
c1090daa
JW
12787Thu Sep 4 15:02:27 1997 Jim Wilson <wilson@cygnus.com>
12788
d5d1738a
JW
12789 * mips.md (nonlocal_goto_receiver): Define.
12790
f4da7881
JW
12791 * profile.c (output_arc_profiler): Check next_insert_after for non
12792 NULL before deferencing it.
12793
c1090daa
JW
12794 * i386/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define to -fPIC.
12795
da594c94
JL
12796Thu Sep 4 14:51:57 1997 Jeffrey A Law (law@cygnus.com)
12797
12798 * i386.h (CPP_CPU_DEFAULT): Avoid using #elif.
12799
3e28fe44
MM
12800Thu Sep 4 15:01:49 1997 Michael Meissner <meissner@cygnus.com>
12801
12802 * toplev.c (rest_of_compilation): For passes starting with
12803 flow_analysis, use print_rtl_with_bb instead of print_rtl.
12804
12805 * print-rtl.c (print_rtl_single): Print a single rtl value to a
12806 file.
12807
12808 * flow.c (print_rtl_with_bb): Print which insns start and end
12809 basic blocks. For the start of a basic block, also print the live
12810 information.
12811
7053ca72
JW
12812Thu Sep 4 11:51:43 1997 Jim Wilson <wilson@cygnus.com>
12813
417b0fa2
JW
12814 * toplev.c (main): Change #elif to #else/#ifdef
12815
7053ca72
JW
12816 * tlink.c: Include ctype.h.
12817 * ginclude/va-mips.h: Add _VA_MIPS_H_ENUM ifdef/define/endif.
12818
f05a8b25
MM
12819Thu Sep 4 11:17:16 1997 Mikeael Meissner (meissner@cygnus.com)
12820
12821 * bitmap.c: Conditionally include stdlib.h.
bf520cd9 12822 (free): Provide a declaration if NEED_DECLARATION_FREE.
f05a8b25 12823
02d7a569
JS
12824Thu Sep 4 09:58:53 1997 Joel Sherrill (joel@OARcorp.com)
12825
12826 * i960/i960.h: Added default for SUBTARGET_SWITCHES macro.
12827
6030b6af
JW
12828Thu Sep 4 09:53:20 1997 Jim Wilson (wilson@cygnus.com)
12829
12830 * profile.c (output_arc_profiler): Verify next_insert_after is an
12831 INSN before and after skipping a stack pop.
12832
04da53bd
R
12833Thu Sep 4 07:39:19 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
12834
12835 * final.c (shorten_branches): Don't count the lengths of deleted
12836 instructions.
12837
780532a4
JL
12838Thu Sep 4 09:43:01 1997 Jeffrey A Law (law@cygnus.com)
12839
12840 * version.c: Bump for snapshot.
12841
22fa5b8a
MM
12842Thu Sep 4 11:04:21 1997 Michael Meissner <meissner@cygnus.com>
12843
12844 * bitmap.h (EXECUTE_IF_AND_IN_BITMAP): New macro, to iterate over
12845 two bitmaps ANDed together.
12846 (bitmap_print): Declare.
12847
12848 * bitmap.c (function_obstack): Don't declare any more.
12849 (bitmap_obstack): Obstack for allocating links from.
12850 (bitmap_obstack_init): New static to say whether to initialize
12851 bitmap_obstack.
12852 (bitmap_element_allocate): Use bitmap_obstack to allocate from.
12853 (bitmap_release_memory): Free all memory allocated from
12854 bitmap_obstack.
12855
12856 * basic-block.h (EXECUTE_IF_AND_IN_REG_SET): New macro, invoke
12857 EXECUTE_IF_AND_IN_BITMAP.
12858
57163df0
JW
12859Wed Sep 3 10:39:42 1997 Jim Wilson <wilson@cygnus.com>
12860
fa8b6024
JW
12861 * alias.c (true_dependence): Address with AND can alias scalars.
12862 (anti_dependence, output_dependence): Likewise.
b57062ca 12863
57163df0
JW
12864 * alias.c (true_dependence): Test x for BLKmode, in addition to mem.
12865
8aa4e786
JS
12866Wed Sep 3 09:28:50 CDT 1997 Joel Sherrill (joel@OARcorp.com)
12867
12868 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h, m68k/rtems.h,
12869 mips/rtems64.h, pa/rtems.h, rs6000/rtems.h, sh/rtems.h,
12870 sparc/rtems.h (subtarget_switches): Removed SUBTARGET_SWITCHES
12871 definitions. Use -qrtems instead of -mrtems.
12872
feb21122
RL
12873Wed Sep 3 09:05:41 1997 Robert Lipe (robert@dgii.com)
12874
12875 * xm-sco5.h (sys_siglist): Define.
12876 (SYS_SIGLIST_DECLARED): Likewise.
12877
704af6a1
JL
12878Tue Sep 2 23:33:33 1997 Jeffrey A Law (law@cygnus.com)
12879
12880 * expr.c (convert_move): Handle truncation from TQFmode to QFmode.
12881
127cd405
TG
12882Wed Sep 3 02:09:30 1997 Torbjorn Granlund <tege@pdc.kth..se>
12883
12884 * except.c (eh_outer_context): Expand masking operation using
12885 expand_binop.
12886
8cf02b47
JW
12887Tue Sep 2 18:09:39 1997 Jim Wilson <wilson@cygnus.com>
12888
12889 * alpha.md (floatdisf2-1): New pattern.
12890
49dad301
JL
12891Tue Sep 2 18:41:55 1997 Jeffrey A Law (law@cygnus.com)
12892
068f1cb8
JL
12893 * xm-svr4.h (SYS_SIGLIST_DECLARED): Define.
12894 * xm-news.h (SYS_SIGLIST_DECLARED): Likewise.
f04e7122 12895 * xm-sysv4.h (SYS_SIGLIST_DECLARED): Likewise.
068f1cb8
JL
12896 * gcc.texi: Note that if you define sys_siglist that you should
12897 also define SYS_SIGLIST_DECLARED.
12898
49dad301
JL
12899 * mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instructions
12900 are relative to the next instruction, not the current instruction.
12901
a1729519
JW
12902Tue Sep 2 14:22:43 1997 Jim Wilson <wilson@cygnus.com>
12903
12904 * local-alloc.c (contains_replace_regs): New function.
12905 (update_equiv_regs): When adding a REG_EQUIV note for a set of a MEM,
12906 verify that there is no existing REG_EQUIV note, and add a call to
12907 contains_place_regs.
12908
290c8b1f
L
12909Tue Sep 2 12:48:11 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
12910
12911 * config/alpha/elf.h (CPP_PREDEFINES): Add -D__PIC__ -D__pic__.
12912 (STARTFILE_SPEC): Always use crtbegin.o%s
12913 (ENDFILE_SPEC): Always use crtend.o%s.
12914
a6a503ed
JW
12915Tue Sep 2 12:00:36 1997 Jim Wilson <wilson@cygnus.com>
12916
12917 * alpha/alpha.h (PREFERRED_RELOAD_CLASS): Return NO_REGS if NO_REGS
12918 is passed in.
12919 * emit-rtl.c (gen_lowpart_common): Add code to convert CONST_INT to
12920 SFmode for 64 bit hosts.
b57062ca 12921
a94729bc
PH
12922Tue Sep 2 13:42:38 1997 Paul N. Hilfinger <hilfingr@CS.Berkeley.EDU>
12923
12924 * fixincludes: Permits spaces between # and define. Discard C++
12925 comments in sys/pci.h on HP/UX 10.20.
12926
c9e03727
JL
12927Mon Sep 1 22:13:18 1997 Jeffrey A Law (law@cygnus.com)
12928
12929 * version.c: Bump for snapshot.
12930
2eddfed1
JL
12931 * pa.c (restore_unscaled_index_insn_codes): New function.
12932 (record_unscaled_index_insn_codes): Likewise.
12933 (output_function_prologue): Call restore_unscaled_index_insn_codes.
12934 (output_function_epilogue): Free memory for unscaled_index_insn_codes.
12935 (pa_reorg): Call record_unscaled_index_insn_codes.
12936
c9e03727
JL
12937 * haifa-sched.c (move_insn): Handle notes correctly for insns
12938 with SCHED_GROUP_P set.
b57062ca 12939
a5d6a95b
L
12940Mon Sep 1 16:58:57 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
12941
12942 * alpha/xm-linux.h (USE_BFD): Undef before define.
12943
bc4ddc77
JW
12944Mon Sep 1 16:25:34 1997 Jim Wilson <wilson@cygnus.com>
12945
12946 * cse.c (cse_insn): Don't record BLKmode values.
12947
f3e0ca6c
SW
12948Mon Sep 1 11:25:47 1997 Stephen Williams (steve@icarus.icarus.com)
12949
12950 * i960.h (LINK_SPEC): Handle "-mjX" and "-mrp" switches.
12951
e3512ac2
JL
12952Mon Sep 1 08:29:46 1997 Jeffrey A Law (law@cygnus.com)
12953
a63d08e6
JL
12954 * cccp.c (sys_errlist): Remove special 4.4bsd declaration.
12955 * collect2.c (sys_errlist): Likewise.
12956 * cpplib.c (sys_errlist): Likewise.
12957 * gcc.c (sys_errlist): Likewise.
12958 * protoize (sys_errlist): Likewise.
12959 * configure.in: Check for strerror.
12960 * xm-freebsd.h (HAVE_STRERROR): Remove definition.
12961 * xm-gnu.h (HAVE_STRERROR): Likewise.
12962 * xm-linux.h (HAVE_STRERROR): Likewise.
12963 * xm-netbsd.h (HAVE_STRERROR): Likewise.
12964 * xm-bsd386.h (HAVE_STRERROR): Likewise.
12965 * xm-cygwin32.h (HAVE_STRERROR): Likewise.
12966 * xm-dos.h (HAVE_STRERROR): Likewise.
12967 * xm-mingw32.h (HAVE_STRERROR): Likewise.
12968 * xm-pa.h (HAVE_STRERROR): Likewise.
12969 * xm-papro.h (HAVE_STRERROR): Likewise.
12970 * xm-sysv4.h (HAVE_STRERROR): Likewise.
12971 * configure, config.in: Rebuilt.
12972
db814993
JL
12973 * Makefile.in: Add several missing "else true" clauses.
12974
e3512ac2
JL
12975 * collect2.c: Change DONT_DECLARE_SYS_SIGLIST to SYS_SIGLIST_DECLARED.
12976 * mips-tfile.c: Likewise.
12977 * gcc.texi: DONT_DECLARE_SYS_SIGLIST: Remove docs.
12978 * xm-linux.h (DONT_DECLARE_SYS_SIGLIST): Delete definition.
12979 * xm-freebsd.h, xm-bsd386.h, xm-sysv4.h, xm-sol2.h: Likewise.
12980 * configure.in: Check for sys_siglist declaration.
12981 * configure, config.in: Rebuilt.
12982
5d84b57e
JS
12983Mon Sep 1 08:04:07 1997 Joel Sherrill (joel@OARcorp.com)
12984
b57062ca 12985 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h,
5d84b57e
JS
12986 m68k/rtems.h, mips/rtems64.h, pa/rtems.h, rs6000/rtems.h,
12987 sparc/rtems.h (subtarget_switches): Added -mrtems as a switch.
12988 * i960/i960.h: Added SUBTARGET_SWITCHES macro.
12989 * rs6000/sysv4.h (extra_subtarget_switches): Added new
12990 macro EXTRA_SUBTARGET_SWITCHES.
12991 * configure.in (sh*-*-rtems*): New target.
12992 * sh/rtems.h: New file.
12993 * sh/sh.h: Added SUBTARGET_SWITCHES macro.
12994 * configure: Rebuilt.
12995
2599dcc7
JW
12996Sat Aug 30 22:54:26 1997 Jim Wilson <wilson@cygnus.com>
12997
12998 * unroll.c (calculate_giv_inc): Handle increment with code PLUS.
12999
3b7e5ef4
DE
13000Sat Aug 30 10:49:46 1997 David Edelsohn <edelsohn@mhpcc.edu>
13001
13002 * rs6000.md: Make DF fused-add operations pay attention to
13003 -mno-fused-add.
13004
5cd5f4a7
JW
13005Fri Aug 29 19:19:54 1997 Jim Wilson <wilson@cygnus.com>
13006
13007 * i386/xm-sysv4.h (DONT_DECLARE_SYS_SIGLIST): Define.
13008
63e7fe9b
JL
13009Fri Aug 29 16:13:51 1997 Jeffrey A Law (law@cygnus.com)
13010
13011 * pa.md (reload_peepholes): Make sure operand is a REG before
13012 examining REGNO. Allow general registers too.
13013
eb7b11fd
JW
13014Fri Aug 29 11:42:04 1997 Jim Wilson <wilson@cygnus.com>
13015
13016 * varasm.c (mark_constants): Don't look inside CONST_DOUBLEs.
13017
c760091a
PT
13018Fri Aug 29 09:33:20 1997 Philipp Thomas (kthomas@lxi165.gwdg.de)
13019
5cd5f4a7 13020 * dwarf2out.c (build_abbrev_table): Use xrealloc, not xmalloc
c760091a
PT
13021 to reallocate abbrev_die_table.
13022
57583338
JW
13023Thu Aug 28 15:14:46 1997 Jim Wilson <wilson@cygnus.com>
13024
13025 * m68k/m68k.md (iorsi_zexthi_ashl16): Disable.
13026
eae4b970
AS
130271997-08-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
13028
4f91a0f8
AS
13029 * Makefile.in (config.status): Depend on version.c
13030
eae4b970
AS
13031 * expr.h (insn_gen_function): Reenable prototype.
13032
13033 * expr.c (move_by_pieces_1, clear_by_pieces_1): Fix prototype of
13034 first parameter.
13035
00fc09e1
JW
13036Thu Aug 28 13:01:43 1997 Jim Wilson <wilson@cygnus.com>
13037
13038 * i386.c (ix86_expand_epilogue): Emit blockage instruction when pic.
13039
2601ebca
JL
13040Thu Aug 28 07:03:15 1997 Jeffrey A Law (law@cygnus.com)
13041
13042 * version.c: Bump for latest snapshot.
13043
13044 * bc-optab.c: Conditionally include stdlib.h.
13045 (free): Provide a declaration if NEED_DECLARATION_FREE.
13046 * tree.c (free): Provide a declaration if NEED_DECLARATION_FREE.
13047 * rtl.h (free): Remove declaration.
13048 * tree.h (free): Remvoe declaration.
13049
13050 * configure: Rebuilt.
13051
e5eb27e5
JL
13052Wed Aug 27 21:32:20 1997 Jeffrey A Law (law@cygnus.com)
13053
13054 * flags.h (flag_move_all_movables): Declare.
13055 (flag_reduce_all_givs): Likewise.
13056 * loop.c (move_movables): Handle flag_move_all_movables.
13057 (strength_reduce): Handle flag_reduce_all_givs.
13058 * toplev.c (flag_move_all_movables): Define.
13059 (flag_reduce_all_givs): Likewise.
13060 (f_options): Add -fmove-all-movables and -freduce-all-givs.
13061 * invoke.texi: Document new options, including alias stuff that
13062 wasn't included last time.
13063
d995a6dc
BM
13064Wed Aug 27 18:08:51 1997 Bob Manson (manson@cygnus.com)
13065
13066 * t-h8300: Use TARGET_LIBGCC2_CFLAGS instead of LIBGCC2_CFLAGS.
13067 * t-mn10200: Ditto.
13068 * t-vxsparc: Ditto.
13069 * t-vxworks68: Ditto.
13070 * t-vxworks960: Ditto.
13071 * t-vx29k: Ditto.
13072
ba64ca33
RH
13073Wed Aug 27 16:35:29 1997 Richard Henderson <rth@cygnus.com>
13074
13075 * alpha/xm-alpha.h (alloca): Define alloca to builtin_alloca for GNUC
13076 if not already defined, and USE_C_ALLOCA not defined.
13077
ca20876d
JW
13078Wed Aug 27 16:08:43 1997 Jim Wilson <wilson@cygnus.com>
13079
7818d6fc
JW
13080 * config.guess: Replace with script that uses ../config.guess.
13081
ca20876d
JW
13082 * config/alpha/elf.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1
13083 if USE_GNULIBC_1 is not defined.
13084
704a6306
RH
13085Wed Aug 27 15:49:12 1997 Richard Henderson <rth@cygnus.com>
13086
13087 * alpha/elf.h (LINK_SPEC): Conditionalize on USE_GNULIBC_1.
13088 * config.guess: Recognize alpha-linux-gnulibc1.
13089 * configure.in (alpha-*-linux-gnulibc1): New target.
13090 (alpha-*-linux-gnu*): Don't build crtbegin/end.
13091
67f68fd2
JW
13092Wed Aug 27 11:52:58 1997 Jim Wilson <wilson@cygnus.com>
13093
13094 * m68k.md (iorsi3_internal): Readd ! TARGET_5200 check lost in
13095 last change.
13096
88016fb7
DE
13097Wed Aug 27 01:56:18 1997 Doug Evans <dje@seba.cygnus.com>
13098
13099 * loop.c (combine_movables): Earlier insns don't match later ones.
13100
bba17b29
L
13101Wed Aug 27 01:24:25 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
13102
13103 * config/linux.h (CC1_SPEC): Define it only if not defined.
13104
13105 * config/m68k/linux.h (CC1_SPEC): Undefine it before include
13106 <linux.h>
13107
13108 * config/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1 if
13109 USE_GNULIBC_1 is not defined.
13110
33d2808b 13111 * config/rs6000/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1.
bba17b29
L
13112
13113 * config/sparc/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined
13114 as 1 if USE_GNULIBC_1 is not defined.
13115
ed4044e0
JL
13116Wed Aug 27 00:49:14 1997 Jeffrey A Law (law@cygnus.com)
13117
f345de42
JL
13118 * reorg.c (dbr_schedule): Allow current_function_return_rtx
13119 to be something other than a REG.
13120 * function.c (expand_function_end): Fix current_function_return_rtx
13121 if it was a pseudo.
13122
ed4044e0
JL
13123 * t-freebsd (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
13124 * x-netbsd: Likewise
13125 * x-dgux (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS
13126 (INSTALL_HEADERS): Delete.
13127 * x-dguxbcs: Likewise.
13128 * x-hp3bsd44: Likewise
13129 * x-pa: Likewise.
13130
47d36400
BS
13131Wed Aug 27 00:30:00 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
13132
13133 * i386.md (pop): pop increments the stack pointer.
13134 (prologue_set_stack_ptr): New pattern.
13135 * i386.c (ix86_expand_prologue): Use prologue_set_stack_ptr
13136 instead of subsi3.
13137
fc79eafe
JW
13138Tue Aug 26 18:50:32 1997 Jim Wilson <wilson@cygnus.com>
13139
13140 * reload.c (find_reloads, case '0'): Reject matching a non-offsettable
13141 address where an offsettable address is required.
13142
c5da853f
MH
13143Tue Aug 26 17:54:56 1997 Michael P. Hayes (michaelh@ongaonga.chch.cri.nz>
13144
13145 * loop.c (check_final_value): Don't miss a biv increment in a
13146 parallel.
13147
d4ef15f2
JW
13148Tue Aug 26 12:03:49 1997 Jim Wilson (wilson@cygnus.com)
13149
13150 * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Check
13151 TYPE_DECL_IS_STUB instead of DECL_NAME.
13152
10549cbd
JW
13153Mon Aug 25 23:27:10 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
13154
13155 * objc/Make-lang.in ($(OBJC_O)): Also depend on cc1obj.
13156
13157Mon Aug 25 23:27:10 1997 Jim Meyering <meyering@eng.ascend.com>
13158
13159 * objc/Make-lang.in ($(OBJC_O)): Also depend on $(GCC_PASSES).
13160
484df988
JL
13161Mon Aug 25 13:12:24 1997 Jeffrey A Law (law@cygnus.com)
13162
13163 * haifa-sched.c (find_pre_sched_live): Remove #if 0 code.
13164 (find_post_sched_live): Likewise.
13165
13166 * haifa-sched.c (schedule_block): Remove old code to get arguments
13167 from hard regs into pseudos early.
13168
39dfb55a
JL
13169Mon Aug 25 08:55:00 1997 Jeffrey A Law (law@cygnus.com)
13170
13171 * version.c: Bump for new snapshot.
13172
13173 * local-alloc.c (update_equiv_regs): All the target to reject
13174 promotion of some REG_EQUAL to REG_EQUIV notes.
13175 * pa.h (DONT_RECORD_EQUIVALENCE): Define.
13176
13177 * pa.c (secondary_reload_class): (mem (mem ... )) does not need
13178 secondary reloads.
13179
13180 * pa.c (hppa_builtin_saveregs): Emit a blockage insn after the
13181 store of the argument registers.
13182
13183Mon Aug 25 08:39:02 1997 Craig Burley (burley@gnu.ai.mit.edu)
13184
13185 * fold-const.c (multiple_of_p): New function.
13186 (fold): Turn some cases of *_DIV_EXPR into EXACT_DIV_EXPR.
13187
d78778eb
JL
13188Mon Aug 25 01:47:41 1997 Jeffrey A Law (law@cygnus.com)
13189
13190 * expr.h (insn_gen_function): Temporarily remove prototype.
13191
feb9ea1a
JW
13192Sun Aug 24 17:22:21 1997 Jim Wilson <wilson@cygnus.com>
13193
13194 * Makefile.in (install-info): Don't cd into srcdir. Add srcdir to
13195 filenames. Use sed to extract base filename for install.
13196
b6ffe602
JC
13197Sat Aug 23 18:19:40 1997 John F. Carr <jfc@mit.edu>
13198
13199 * unroll.c (find_splittable_givs): Only share if two givs have the
13200 same add and multiply values.
13201
2ebfd230
JW
13202Sat Aug 23 14:36:27 1997 Jim Wilson <wilson@cygnus.com>
13203
13204 * m68k/next.h (GO_IF_INDEXABLE_BASE): Fix typo in undef.
13205 * m68k/m68kemb.h (LIB_SPEC): Add missing comment end before it.
13206
251ffdee
JL
13207Sat Aug 23 00:18:22 1997 Jeffrey A Law (law@cygnus.com)
13208
13209 * pa.c (pa_reorg): Always put begin_brtab and end_brtab insns
13210 around branch tables.
13211 * pa.md (begin_brtab, end_brtab): Only emit the .begin_brtab
13212 and .end_brtab directives if TARGET_GAS.
13213
19372aa1
JW
13214Fri Aug 22 14:05:55 1997 Jim Wilson <wilson@cygnus.com>
13215
27314274
JW
13216 * alias.c (true_dependence): Pass x_addr not x to varies.
13217
19372aa1
JW
13218 * acconfig.h (NEED_DECLARATION_CALLOC): Add.
13219 * configure.in: Add GCC_NEED_DECLARATION call for calloc.
13220 * rs6000/xm-rs6000.h (malloc, realloc, calloc, free): Delete
13221 declarations.
13222 * config.in, configure: Regenerate.
13223
2a2c8203
JC
13224Thu Aug 21 23:52:16 1997 John F. Carr <jfc@mit.edu>
13225
13226 * alias.c (find_base_value): Improve handling of PLUS, MINUS, and
13227 LO_SUM.
13228 (record_set): Handle LO_SUM like PLUS.
13229 (init_alias_analysis): When following chains of base addresses,
13230 do not stop on reaching a hard register.
13231
d80357b7
JL
13232Thu Aug 21 20:17:37 1997 Jeffrey A Law (law@cygnus.com)
13233
13234 * version.c: Bump for new snapshot.
13235
b4f32d7b
JW
13236Thu Aug 21 17:28:00 1997 Jim Wilson <wilson@cygnus.com>
13237
13238 * alpha.h (ARCH_ASM_FILE_START): Define.
13239 (ASM_FILE_START): Use ARCH_ASM_FILE_START.
13240 * osf12.h, osf2or3.h (ARCH_ASM_FILE_START): Redefine to null string.
13241
ca363bb6
JL
13242Thu Aug 21 10:22:19 1997 Jeffrey A Law (law@cygnus.com)
13243
13244 * Makefile.in (install-common): Put gcov comment at start of line.
13245
7557aa98
JL
13246Wed Aug 20 22:47:33 1997 Jeffrey A Law (law@cygnus.com)
13247
13248 * alias.c (init_alias_analysis): When simplifying the reg_base_value
13249 array, simplify entries for hard registers too.
13250
c34e3ae4
DL
13251Wed Aug 20 12:35:47 1997 Dave Love <d.love@dl.ac.uk>
13252
13253 * dwarf2.h (enum dwarf_call_frame_info): Remove trailing comma from
13254 list.
13255
e3eef942
JW
13256Wed Aug 20 11:58:33 1997 Jim Wilson <wilson@cygnus.com>
13257
13258 * stmt.c (start_cleanup_deferal, end_cleanup_deferal): Test
13259 block_stack before dereferencing it.
13260
13261Wed Aug 20 11:57:11 1997 Michael Meissner <meissner@cygnus.com>
246853b9
MM
13262
13263 * rs6000.h (ISSUE_RATE): Define instead of MACHINE_issue_rate.
13264
04f41951
JM
13265Tue Aug 19 17:10:56 1997 Jason Merrill <jason@yorick.cygnus.com>
13266
13267 * cplus-dem.c: Add 'extern' to prepends_underscore.
13268
e933cbe0
JL
13269Tue Aug 19 09:34:57 1997 Jeffrey A Law (law@cygnus.com)
13270
62d65906
JL
13271 * haifa-sched.c (ISSUE_RATE): Renamed from MACHINE_issue_rate.
13272 (get_issue_rate): Delete.
13273 * pa.h (ISSUE_RATE): Define.
13274
2da05a5b
JL
13275 * configure.in: Turn on haifa by default for the PA.
13276 * configure: Rebuilt.
13277 * pa.c (override_options): Accept -mschedule=7200 option.
13278 (pa_adjust_cost): No longer need to scale costs for newer
13279 processors.
13280 * pa.h (enum processor_type): Add PROCESSOR_7200.
13281 * pa.md: Revamp scheduling parameters to work better with
13282 haifa. Add scheduling parameters for the 7200.
13283
4f64eaca
JL
13284 * haifa-sched.c (move_insn): Reemit notes for SCHED_GROUP_P
13285 insns too.
13286 (schedule_block): When adjusting basic_block_{head,end}, account
13287 for movement of SCHED_GROUP_P insns too.
13288
13289 * haifa-sched.c (debug_dependencies): Fix thinko.
13290
e933cbe0
JL
13291 * Makefile.in (EXPECT, RUNTEST, RUNTESTFLAGS): Define.
13292 (site.exp, check, check-g++, check-gcc): New targets.
13293
4f64eaca 13294 * haifa-sched.c: Make lots of variables static.
61822835 13295
e9576d2c
L
13296Tue Aug 19 07:18:34 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
13297
13298 * expr.h, real.h: Finish prototyping.
13299
61822835
JL
13300Mon Aug 18 21:49:02 1997 Jim Wilson <wilson@cygnus.com>
13301
13302 * reload.c (find_reloads): Add code to convert RELOAD_FOR_OPADDR_ADDR
13303 reloads to RELOAD_FOR_OPERAND_ADDRESS reloads.
13304 * reload1.c: Undo bugfix from Aug 11.
13305
f24b370a
MM
13306Mon Aug 18 17:39:02 1997 Mike Meissner <meissner@cygnus.com>
13307
13308 * configure.in ({powerpc,rs6000}*-*-*, --with-cpu): Remove single
13309 quotes around the name.
13310 * configure: Regenerate.
13311
1c4c5851
JW
13312Mon Aug 18 13:46:47 1997 Jim Wilson <wilson@cygnus.com>
13313
13314 * Makefile.in (stmp-multilib-sub): Fix typo in last change.
13315
71abb567
MH
13316Thu Aug 7 10:33:13 1997 Manfred Hollstein <manfred@s-direktnet.de>
13317
13318 * Makefile.in (sub-makes): Pass the current value of LANGUAGES down
13319 to sub-makes to avoid building more passes than the user might have
13320 requested on the command line.
13321
6042434a
DL
13322Sun Aug 17 15:42:17 1997 Dave Love (d.love@dl.ac.uk)
13323
13324 * configure.in: Expurgate `broken_install' (install is
13325 autoconfed).
13326
13327 * configure.lang: Substitute autoconfed ${INSTALL} (not currently
13328 relevant).
13329
38ea060f
JL
13330Sat Aug 16 01:08:12 1997 Jeffrey A Law (law@cygnus.com)
13331
13332 * loop.c (is_power_of_2, is_conditional_branch): Delete unused
13333 functions and declarations.
13334 (analyze_loop_iterations): Use condjump_p.
13335 (insert_bct): Likewise. Use exact_log2.
b57062ca 13336
f187056f
JL
13337Fri Aug 15 23:48:32 1997 Jeffrey A Law (law@cygnus.com)
13338
13339 * haifa-sched.c (find_post_sched_live): Call FREE_REG_SET as needed.
13340 (schedule_region): Likewise.
13341 (schedule_insns): Likewise.
13342
13343 * PROJECTS: Update with Haifa stuff.
13344
9af06254
JL
13345Fri Aug 15 12:49:56 1997 Jeffrey A Law (law@cygnus.com)
13346
13347 * version.c: Change the version string to look like:
11c21791 13348 egcs-2.90.00 970814 (gcc2-970802 experimental).
9af06254 13349
0945e937
JL
13350 * loop.c (is_conditional_branch): Make definition match declaration.
13351
9af06254
JL
13352 * gcc.c: Take out experimental snapshot warning message.
13353
ebc25a17
MM
13354Fri Aug 15 13:43:39 1997 Michael Meissner <meissner@cygnus.com>
13355
13356 * haifa-sched.c (debug_dependencies): Use GET_NOTE_INSN_NAME to
13357 print out the names of the notes. Print out the name of the insn
13358 that is not a note, and not an {,CALL_,JUMP_}INSN.
13359
610ce97e
JM
13360Wed Aug 13 17:32:38 1997 Jason Merrill <jason@yorick.cygnus.com>
13361
13362 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
13363 again for the slot after we give it RTL.
13364
992d1248
DE
13365Wed Aug 13 01:03:37 1997 Doug Evans <dje@canuck.cygnus.com>
13366
13367 * configure.in (haifa configury): Fix typo.
13368 * configure: Regenerate.
13369
7bb6fbd1
JL
13370Tue Aug 12 10:20:36 1997 Jeffrey A Law (law@cygnus.com)
13371
13372 * version.c: Bump version to "gcc-3.0.0 970802 experimental".
13373
13374 * gcc.info*: Rebuilt.
13375
13376 * COPYING.g77, README.g77: New files.
13377 * real.c (ereal_unto_float, ereal_unto_double): New functions.
13378 * real.h (ereal_unto_float, ereal_unto_double): Declare them.
13379 (REAL_VALUE_UNTO_TARGET_DOUBLE, REAL_VALUE_UNTO_TARGET_SINGLE): Define.
13380
8c660648
JL
13381Mon Aug 11 14:50:55 1997 Jeffrey A Law (law@cygnus.com)
13382
13383 * Integrate Haifa instruction scheduler.
13384 * Makefile.in (ALL_CFLAGS): Add SCHED_CFLAGS. Prefix all references
13385 to sched with $(SCHED_CFLAGS.
13386 * configure.in: Handle --enable-haifa.
13387 * configure: Rebuilt.
13388 * flags.h: Add new flags for haifa instruction scheduler.
13389 * genattrtab.c (expand_units): For haifa, don't subtract one
13390 when computing blockage.
13391 * toplev.h (flag_schedule_interblock): Haifa scheduler flag.
13392 (flag_schedule_speculative): Ditto.
13393 (flag_schedule_speculative_load): Ditto.
13394 (flag_schedule_speculative_load_dangerous): Ditto.
13395 (flag_schedule_reverse_before_reload): Ditto.
13396 (flag_schedule_reverse_after_reload): Ditto.
13397 (flag_branch_on_count_reg): Ditto.
13398 (f_options): Add Haifa switches.
13399 (main): Turn off some Haifa options if appropriate macro is
13400 defined. Process Haifa switches.
13401 * unroll.c (iteration_info): No longer static, since Haifa
13402 scheduler uses it.
13403 (unroll_loop): Inform HAIFA scheduler about loop unrolling factor.
13404 * unroll.c (unroll_loop): Set loop_unroll_iter, loop_start_value.
13405 * loop.h (loop_unroll_factor, loop_number): Add HAIFA decls.
13406 * loop.h (loop_initial_value,loop_unroll_iter): New globals.
13407 * loop.c (loop_optimize): If HAIFA is defined, allocate additional
13408 storage for the Haifa scheduler.
13409 (mark_loop_jump): If HAIFA defined, set LABEL_OUTSIDE_LOOP_P and
13410 LABEL_NEXTREF.
13411 (strength_reduce): If HAIFA and HAVE_decrement_and_branch_on_count
13412 are defined, call analyze_loop_iterations and insert_bct to use
13413 countdown loops.
13414 (record_giv): Refine test for jumps out of loops if HAIFA is
13415 defined.
13416 (analyze_loop_iterations): New function to identify if we can use
13417 a countdown loop.
13418 (insert_bct): Insert countdown loop.
13419 (instrument_loop_bct): Low level code to insert countdown loop.
13420 (loop_number): Calculate UID of loop.
13421 (indirect_jump_in_function_p): Return true if an indirect jump is
13422 in the function.
13423 (is_power_of_2): Return true if value is a power of 2.
13424 (is_conditional_branch): Return true if insn is a conditional
13425 jump.
13426 (fix_bct_param): Process -fbct-{min,max}-N switches.
13427 (check_bct_param): Return true if loop should be instrumented.
13428 * loop.c (loop_initial_value,loop_unroll_iter): New globals.
13429 (loop_optimize): Initialize.
13430 (get_condition_for_loop): Ditto.
13431 * loop.c (strength_reduce): Inside of code that uses #ifdef
13432 HAVE_decrement_and_branch_on_count code, test it to make sure the
13433 condition is true.
13434 (instrument_loop_bct): Ditto.
13435 * haifa-sched.c: New file.
b57062ca 13436
8c660648
JL
13437
13438 * Integrate regmove pass.
13439 * Makefile.in (OBJS): Add regmove.o
13440 (regmove.o): Add dependencies.
13441 * flow.c (find_use_as_address): No longer static.
13442 * rtl.h (find_use_as_address): Declare.
13443 * toplev.c (regmove_dump, flag_regmove): Define.
13444 (f_options): Add -fregmove.
13445 (regmove_dump_file, regmove_time): Define.
13446 (fatal_insn): Close the regmove dump file.
13447 (compile_file): Initialize regmove_time; open/close the regmove dump
13448 file as needed. Print regmove time as needed.
13449 (rest_of_compilation): Run regmove pass if requested, dump
13450 RTL after regmove if requested.
13451 (main): If -O2 or more, turn on regmove. Handle dump switches.
13452 * regmove.c: New file.
b57062ca 13453
aa32d841
JL
13454Mon Aug 11 14:15:02 1997 Jeffrey A Law (law@cygnus.com)
13455
13456 * Integrate tlink patch from jason@cygnus.com
13457 * gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
13458 (process_command): Increment n_switches for them. Don't discard
13459 their args. Validate them.
13460 (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
13461 From Rohan Lenard.
13462 (process_command): Set include_prefixes from COMPILER_PATH.
13463 (main): Set COLLECT_GCC_OPTIONS sooner.
13464 * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
13465 * tlink.c, hash.c, hash.h: New files.
13466 * Makefile.in (USE_COLLECT2): Always use collect2.
13467 (collect2): Depend on and link in hash.o and tlink.o.
13468 (tlink.o, hash.o): Add dependencies.
13469
5fa39bfe
JL
13470Mon Aug 11 10:04:49 1997 Jeffrey A Law (law@cygnus.com)
13471
9ae8ffe7
JL
13472 * Integrate alias analysis changes from jfc@mit.edu
13473 * Makefile.in (OBJS): Add alias.o
13474 (alias.o): Add dependencies.
13475 * alias.c: New file.
13476 * sched.c: Remove alias analysis code. It lives in alias.c now.
9ae8ffe7 13477 (sched_analyze_2): Add new arguments to true_dependence.
9ae8ffe7
JL
13478 (schedule_insns): Always call init_alias_analysis.
13479 * calls.c (expand_call): Note calls to malloc, calloc, and realloc;
13480 mark return value from such functions as a pointer and keep track of
13481 them for alias analysis. If a return value from a function is a
13482 pointer, mark it as such.
13483 * combine.c (distribute_notes): Handle REG_NOALIAS.
13484 * cse.c (struct write_data): Delete. No longer needed.
13485 (invalidate): Don't call set_nonvarying_address_components anymore.
13486 Use true_dependence to decide if an entry should be removed from
13487 the hash table.
13488 (invalidate_memory): Remove WRITES argument, simplify appropriately.
13489 Fix all callers.
13490 (note_mem_written): Similarly for WRITE_PTR argument.
13491 (invalidate_from_clobbers): Similarly for W argument.
13492 (invalidate_for_call): Remove memory elements from the hash table.
13493 (refers_to_mem_p, cse_rtx_addr_varies_p): Deleted.
13494 (cse_rtx_varies_p): New function. Derived from old
13495 cse_rtx_addr_varies_p.
13496 (cse_insn): Remove WRITES_MEMORY and INIT variables and all references.
13497 Don't call note_mem_written anymore. Stack pushes invalidate the stack
13498 pointer if PUSH_ROUNDING is defined. No longer need to call
13499 cse_rtx_addr_varies_p to decide if a MEM should be invalidated.
13500 (skipped_writes_memory): Remove variable.
13501 (invalidate_skipped_set): Simplify and wewrite to use invalidate_memory.
13502 (invalidate_skipped_block): Simplify for new alias analysis code.
13503 (cse_set_around_loop): Likewise.
13504 (cse_main): Call init_alias_analysis.
13505 * flags.h (flag_alias_check, flag_argument_noalias): Declare.
13506 * toplev.c (flag_alias_check, flag_argument_noalias): Define.
13507 (f_options): Add new alias checking arguments.
13508 (main): Set flag_alias_check when optimizing.
13509 * local_alloc (validate_equiv_mem_from_store): Add new arguments
13510 to true_dependence.
13511 (memref_referenced_p): Likewise.
13512 * loop.c (NUM_STORES): Increase to 30.
13513 (prescan_loop): Only non-constant calls set unknown_address_altered.
13514 (invariant_p): Add new arguments to true_dependence.
13515 (record_giv): Initialize unrolled and shared fields.
13516 (emit_iv_add_mult): Call record_base_value as needed.
13517 * loop.h (struct induction): Add unrolled and shared fields.
13518 * unroll.c (unroll_loop): Call record_base_value as needed.
13519 (copy_loop_body): Likewise.
13520 (final_biv_value): Likewise.
13521 (final_giv_value): Likewise.
13522 (find_splittable_regs): Likewise. Only create one new pseudo
13523 if we have multiple address GIVs that were combined with the same
13524 dst_reg GIV. Note when a new register is created due to unrolling.
13525 * rtl.c (reg_note_name): Add REG_NOALIAS.
13526 * rtl.h (enum reg_note): Similarly.
13527 (rtx_varies_p, may_trap_p, side_effects_p): Declare.
13528 (volatile_refs_p, volatile_insn_p, remove_note): Likewise.
13529 (note_stores, refers_to_regno_p, reg_overlap_mentioned_p): Likewise.
13530 (true_dependence, read_dependence, anti_dependence): Likewise.
13531 (output_dependence, init_alias_analysis, end_alias_analysis): Likewise.
13532 (mark_user_reg, mark_reg_pointer): Likewise.
13533
13534
13535 * Integrate reload bugfix from Wilon which enables the PA port
5fa39bfe 13536 to bootstrap again.
38e01259 13537 * reload1.c (reload): Sum needs for both OPADDR_ADDR and
5fa39bfe
JL
13538 OPERAND_ADDRESS when computing how many registers an insn needs.
13539 (reload_reg_free_p): OPADDR_ADDR and OPERAND_ADDRESS reloads do
13540 conflict.
13541 (reload_reg_free_before_p): Treat OPERAND_ADDRESS reloads just like
13542 OPADDR_ADDR reload.
13543 (reload_reg_reaches_end_p): For RELOAD_FOR_OPADDR_ADDR insns, registers
13544 in reload_reg_use_in_op_addr do not reach the end.
13545 do not reach the end.
13546 (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
13547 RELOAD_FOR_OPERAND_ADDRESS.
13548
13549Sun Aug 10 12:00:20 1997 Jeffrey A Law (law@cygnus.com)
13550
2dcfcb56 13551 * egcs project officially starts.
52267fcb
JM
13552
13553Local Variables:
13554add-log-time-format: current-time-string
13555End:
This page took 1.873765 seconds and 5 git commands to generate.