]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ChangeLog
arm.h (SECONDARY_INPUT_RELOAD_CLASS): Only need a secondary reload if reloading a...
[thirdparty/gcc.git] / gcc / ChangeLog
CommitLineData
ed4c4348
RE
1Fri Jun 26 06:58:54 1998 Richard Earnshaw (rearnsha@arm.com)
2
3 * arm.h (SECONDARY_INPUT_RELOAD_CLASS): Only need a secondary reload
4 if reloading a MEM.
5
6 * arm.h (arm_adjust_cost): Renamed bogus prototype from
7 arm_adjust_code.
8 (bad_signed_byte_operand): Add prototype.
9 * arm.c (arm_override_options): Make I unsigned.
10 (const_ok_for_arm): Add casts to the constants.
11 (load_multiple_operation): Don't redeclare elt in sub-block.
12 (arm_gen_movstrqi): Delete external declaration of optimize.
13 (gen_compare_reg): Declare parameter fp.
14
15 * arm.c (final_prescan_insn): Only initialize scanbody if the insn
16 has a pattern.
17
3c303f52
KG
18Fri Jun 26 09:31:24 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
19
20 * alpha.c: Include system.h and toplev.h.
21 (cint8_operand): Mark parameter `mode' with ATTRIBUTE_UNUSED.
22 (const48_operand): Likewise.
23 (mode_width_operand): Likewise.
24 (mode_mask_operand): Likewise.
25 (mul8_operand): Likewise.
26 (current_file_function_operand): Likewise.
27 (signed_comparison_operator): Likewise.
28 (divmod_operator): Likewise.
29 (any_memory_operand): Likewise.
30 (alpha_return_addr): Likewise for parameter `frame'.
31 (alpha_builtin_saveregs): Likewise for parameter `arglist'.
32 (vms_valid_decl_attribute_p): Likewise for parameters `decl' and
33 `attributes'.
34 (alpha_start_function): Likewise for parameter `decl'. Use
35 HOST_WIDE_INT_PRINT_DEC in call to fprintf. Fix various format
36 specifiers. Remove unused variables `lab' and `name'.
37 (alpha_end_function): Mark parameter `decl' with ATTRIBUTE_UNUSED.
38 (check_float_value): Likewise for parameter `overflow'.
39 (alpha_need_linkage): Likewise for parameters `name' and `is_local'.
40
41 * alpha.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Define as
42 taking an argument.
43 (ASM_OUTPUT_SHORT): Cast argument to `int' in call to fprintf.
44 (ASM_OUTPUT_CHAR): Likewise.
45 (ASM_OUTPUT_BYTE): Likewise.
46 (PRINT_OPERAND_ADDRESS): Use HOST_WIDE_INT_PRINT_DEC in call to
47 fprintf.
48 (PUT_SDB_EPILOGUE_END): Mention argument `NAME' in definition.
49 Add prototypes for functions in alpha.c.
50
51 * alpha.md (ashldi3): Add default case in switch.
52
6d6393e3
MH
531998-06-26 Manfred Hollstein <manfred@s-direktnet.de>
54
55 * Makefile.in (gcc_version, gcc_version_trigger): New macros.
56 (version): Initialize from $(gcc_version).
57
58 * configure.in (version): Rename to gcc_version.
59 (gcc_version_trigger): New variable; call AC_SUBST for it and
60 emit it into the generated config.status.
61 * configure: Regenerate.
62
30d68b86
MM
63Thu Jun 25 12:47:41 1998 Mark Mitchell <mark@markmitchell.com>
64
65 * fold-const.c (make_range): Don't go looking at TREE_OPERANDs of
66 nodes that are not expressions.
67
41472af8
MM
68Thu Jun 25 15:08:16 1998 Mark Mitchell <mark@markmitchell.com>
69
70 * invoke.texi (-fstrict-aliasing): Document.
71 * rtl.texi (MEM_ALIAS_SET): Document.
72
73 * flags.h (flag_strict_aliasing): Declare.
74 * toplev.c (flag_strict_aliasing): Define.
75 (f_options): Add -strict-aliasing.
76 (main): Set flag_strict_aliasing if -O2 or higher.
77
78 * tree.h (tree_type): Add alias_set field.
79 (TYPE_ALIAS_SET): New macro.
80 (TYPE_ALIAS_SET_KNOWN_P): Likewise.
81 (get_alias_set): Declare.
82 * tree.c (lang_get_alias_set): Define.
83 (make_node): Initialize TYPE_ALIAS_SET.
84 (get_alias_set): New function.
85 * print-tree.c (print_node): Dump the alias set for a type.
86
87 * c-tree.h (c_get_alias_set): Declare.
88 * c-common.c (c_get_alias_set): New function.
89 * c-decl.c (init_decl_processing): Set lang_get_alias_set.
90
91 * expr.c (protect_from_queue): Propogage alias sets.
92 (expand_assignment): Calculate alias set for new MEMs.
93 (expand_expr): Likewise.
94 * function.c (put_var_into_stack): Likewise.
95 (put_reg_into_stack): Likewise.
96 (gen_mem_addressof): Likewise.
97 (assign_parms): Likewise.
98 * stmt.c (expand_decl): Likewise.
99 * varasm.c (make_decl_rtl): Eliminate redundant clearing of
100 DECL_RTL. Calculate alias set for new MEMs.
101
102 * rtl.def (REG): Add dummy operand.
103 (MEM): Add extra operand to store the MEM_ALIAS_SET.
104 * rtl.h (MEM_ALIAS_SET): New macro.
105 (gen_rtx_MEM): Declare.
106 * emit-rtl.c (gen_rtx_MEM): New function.
107 * gengenrtl.c (sepcial_rtx): Make MEMs special.
108
109 * alias.c (CHECK_ALIAS_SETS_FOR_CONSISTENCY): New macro.
110 (DIFFERENT_ALIAS_SETS_P): Likewise.
111 (canon_rtx): Propogate the alias set to the new MEM.
112 (true_dependence): Check the alias sets.
113 (anti_dependence): Likewise.
114 (output_dependence): Likewise.
115 * explow.c (stabilize): Progoate alias sets.
116 * integrate.c (copy_rtx_and_substitute): Likewise.
117 * final.c (alter_subreg): Make sure not to leave MEM_IN_STRUCT_P
118 in an unpredictable state. Propogate alias sets.
119 * reload1.c (reload): Clear MEM_ALIAS_SET for new MEMs about which
120 we have no alias information.
121
9c606f69
AM
122Thu Jun 25 16:59:18 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
123
124 * except.h (CATCH_ALL_TYPE): Definition moved to eh-common.h.
125 (find_all_handler_type_matches): Add function prototype.
126 * eh-common.h (CATCH_ALL_TYPE): Definition added.
127 * except.c (find_all_handler_type_matches): Add function to find all
128 runtime type info in the exception table.
129 (output_exception_table_entry): Special case for CATCH_ALL_TYPE.
130
296b8152
KG
131Thu Jun 25 15:47:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
132
133 * Makefile.in (xcoffout.o): Depend on toplev.h, output.h and dbxout.h.
134
135 * config/fp-bit.c (_fpmul_parts): Move variables `x', `ylow',
136 `yhigh' and `bit' into the scope in which they are used.
137 (_fpdiv_parts): Remove unused variables `low', `high', `r0', `r1',
138 `y0', `y1', `q', `remainder', `carry', `d0' and `d1'.
139
140 * rs6000.c: Move include of output.h below tree.h. Include toplev.h.
141 (any_operand): Mark unused parameters `op' and `mode' with
142 ATTRIBUTE_UNUSED.
143 (count_register_operand): Likewise for parameter `mode'.
144 (fpmem_operand): Likewise.
145 (short_cint_operand): Likewise.
146 (u_short_cint_operand): Likewise.
147 (non_short_cint_operand): Likewise.
148 (got_operand): Likewise.
149 (got_no_const_operand): Likewise.
150 (non_add_cint_operand): Likewise.
151 (non_logical_cint_operand): Likewise.
152 (mask_operand): Likewise.
153 (current_file_function_operand): Likewise.
154 (small_data_operand): Likewise for parameters `op' and `mode' but
155 only when !TARGET_ELF.
156 (init_cumulative_args): Mark parameters `libname' with
157 ATTRIBUTE_UNUSED.
158 (function_arg_pass_by_reference): Likewise for parameters `cum',
159 `mode' and `named'.
160 (expand_builtin_saveregs): Likewise for parameter `args'.
161 (load_multiple_operation): Likewise for parameter `mode'.
162 (store_multiple_operation): Likewise.
163 (branch_comparison_operator): Likewise.
164 (secondary_reload_class): Likewise.
165 (print_operand): Add parentheses around & operation.
166 (output_prolog): Mark parameter `size' with ATTRIBUTE_UNUSED.
167 (output_epilog): Likewise. Cast argument to fprintf to int.
168 (rs6000_adjust_cost): Mark parameter `dep_insn' with ATTRIBUTE_UNUSED.
169 (rs6000_valid_decl_attribute_p): Likewise for parameters `decl',
170 `attributes', `identifier' and `args'.
171 (rs6000_valid_type_attribute_p): Likewise for parameter `attributes'.
172 (rs6000_comp_type_attributes): Likewise for parameters `type1' and
173 `type2'.
174 (rs6000_set_default_type_attributes): Likewise for parameter `type'.
175
176 * rs6000.h (RTX_COSTS): Add parentheses around & operation.
177 (toc_section, private_data_section, trap_comparison_operator): Add
178 prototypes.
179
180 * dbxout.h (dbxout_parms, dbxout_reg_parms, dbxout_syms): Add
181 prototypes.
182
183 * xcoffout.c: Include toplev.h, outout.h and dbxout.h.
184
185 * xcoffout.h (stab_to_sclass, xcoffout_begin_function,
186 xcoffout_begin_block, xcoffout_end_epilogue,
187 xcoffout_end_function, xcoffout_end_block,
188 xcoff_output_standard_types, xcoffout_declare_function,
189 xcoffout_source_line): Add prototypes.
190
ff73fb53
NC
191Thu Jun 25 09:54:55 1998 Nick Clifton <nickc@cygnus.com>
192
193 * config/arm/arm.h (REG_ALLOC_ORDER): Add ARG_POINTER_REGNUM,
194 noticed by grahams@rcp.co.uk.
195
ca242225
DB
196Thu Jun 25 11:12:29 1998 Dave Brolley <brolley@cygnus.com>
197
198 * gcc.c (default_compilers): Use new | syntax to eliminate
199 string concatenation.
200
acd92049
RH
201Thu Jun 25 01:00:48 1998 Richard Henderson <rth@cygnus.com>
202
203 * alpha.c (alpha_function_name): Delete.
204 (alpha_ra_ever_killed): Notice current_function_is_thunk.
205 (alpha_sa_mask, alpha_sa_size, alpha_does_function_need_gp): Likewise.
206 (alpha_start_function): Reorg from output_prologue.
207 (alpha_end_function): Reorg from output_epilogue.
208 * alpha.h (ASM_DECLARE_FUNCTION_NAME): Call alpha_start_function.
209 (ASM_DECLARE_FUNCTION_SIZE): New.
210 (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Delete.
211 (PROFILE_BEFORE_PROLOGUE): Set.
212 (ASM_OUTPUT_MI_THUNK): Remove bits now output by start/end_function.
213 * alpha/win-nt.h (ASM_OUTPUT_MI_THUNK): Likewise.
214
dd014274
JL
215Thu Jun 25 01:18:47 1998 John Wehle (john@feith.com)
216
217 * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Define.
218
2191998-06-25 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
89752202
HB
220
221 * expr.c (expand_assignment): Rework address calculation for structure
222 field members to expose more invariant computations to the loop
223 optimizer.
224 (expand_expr): Likewise.
225
c358412f
JL
226Wed Jun 24 22:44:22 1998 Jeffrey A Law (law@cygnus.com)
227
228 * local-alloc.c (block_alloc): Do not try to avoid false dependencies
229 when SMALL_REGISTER_CLASSES is nonzero.
230
a59fb797
KK
231Wed Jun 24 17:55:15 1998 Klaus Kaempf <kkaempf@progis.de>
232
233 * alpha.md (call_vms, call_value_vms): Strip leading * from symbol.
234
55a6ba9f
JC
235Wed Jun 24 16:27:23 1998 John Carr <jfc@mit.edu>
236
237 * expr.c (get_memory_rtx): New function.
238 (expand_builtin): Call get_memory_rtx for MEM arguments to builtin
239 string functions.
240
241 * expmed.c (init_expmed): Initialize all elements of *_cost arrays.
242
9e6a5703
JC
243 * optabs.c: Use gen_rtx_FOO (...) instead of gen_rtx (FOO, ...).
244 * expr.c: Likewise.
245 * explow.c: Likewise.
246 * combine.c: Likewise.
247 * reload1.c: Likewise.
248 * gcse.c: Likewise.
249
135edcfd
DB
250Wed Jun 24 15:13:01 1998 Dave Brolley <brolley@cygnus.com>
251
252 * README.gnat: Add patch for new lang_decode_options interface.
253
9a9deafc
AM
254Wed Jun 24 09:14:04 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
255
256 * except.c (start_catch_handler): Do nothing if EH is not on.
257
854b2357
MH
2581998-06-24 Manfred Hollstein <manfred@s-direktnet.de>
259
260 * configure.in (gxx_include_dir): Initialize default value depending on
6d6393e3
MH
261 new flag --enable-version-specific-runtime-libs; remove superfluous
262 default initialization afterwards.
854b2357
MH
263 * configure: Regenerate.
264
d3b107b4
DM
265Wed Jun 24 01:32:12 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
266
267 * toplev.c (rest_of_compilation): Revert May 15 change.
268
c22eaf8a
KR
269Tue Jun 23 21:27:27 1998 Ken Raeburn <raeburn@cygnus.com>
270
271 * reload.c (find_reloads): Fix check for failure to match any
272 alternative, to account for Mar 26 change in initial "best" cost.
273
d2f8cffa
DB
274Tue Jun 23 16:44:21 1998 Dave Brolley <brolley@cygnus.com>
275
276 * cpplib.c (do_line): Typo broke #line directive.
277 (cpp_message_from_errno): New function.
278 (cpp_error_from_errno): Call cpp_message_from_errno.
279 * cpplib.h (cpp_message_from_errno): New function.
280
48b24bcd
AM
281Tue Jun 23 13:38:18 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
282
283 * libgcc2.c (__get_eh_table_version, __get_eh_table_language): New
284 functions to return exception descriptor information.
285 (find_exception_handler): Pass match_info field to runtime matcher,
286 not a descriptor table entry.
287
daf21dfd
DL
288Tue Jun 23 09:30:58 1998 Dave Love <d.love@dl.ac.uk>
289
290 * cpp.texi, gcc.texi: Add @dircategory, @direntry meant to
291 accompany previous Makefile.in (install-info) change.
292
48b24bcd 293Tue Jun 23 10:06:07 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
5816cb14
AM
294
295 * eh-common.h (struct __eh_info): Remove coerced value field.
296 * libgcc2.c (find_exception_handler): Don't set coerced_value field.
297 * except.c (get_dynamic_handler_chain, get_dynamic_cleanup_chain): Use
298 POINTER_SIZE instead of Pmode.
299 (expand_start_all_catch): Call start_catch_handler() if we are not
300 using new style exceptions.
301
83de03df
CM
302Tue Jun 23 06:45:00 1998 Catherine Moore <clm@cygnus.com>
303
304 * varasm.c (assemble_variable): Remove reference to warn_bss_align.
305
5b8e7fa3
DM
306Mon Jun 22 23:57:31 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
307
308 * config/sparc/sparc.md (zero_extendhidi2, extendhisi2,
309 extendqihi2, extendqisi2, extendqidi2, extendhidi2, adddi3,
310 subdi3, negdi2, call, call_value, untyped_return, nonlocal_goto,
311 splits and peepholes): Change remaining generic gen_rtx calls to
312 specific genrtl ones.
254110c2
DM
313 * config/sparc/sparc.c: Likewise.
314
9bf09437
RH
315Mon Jun 22 22:21:46 1998 Richard Henderson <rth@cygnus.com>
316
317 * gcc.c (handle_braces): Recognize | between options as an or.
318
e31ca113
JW
319Mon Jun 22 23:13:47 1998 John Wehle (john@feith.com)
320
2b005260
JW
321 * i386/freebsd-elf.h (JUMP_TABLES_IN_TEXT_SECTION): Define as flag_pic.
322 * i386/sysv4.h (JUMP_TABLES_IN_TEXT_SECTION): Define as flag_pic.
323
e31ca113
JW
324 * i386.md (exception_receiver): Define.
325
aeb2f500
JW
326Mon Jun 22 12:01:48 1998 Jim Wilson <wilson@cygnus.com>
327
225695a4
JW
328 * Makefile.in (PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME,
329 PROTOIZE_CROSS_NAME, UNPROTOIZE_CROSS_NAME): New variables.
330 (install-common): Use them.
331
aeb2f500
JW
332 * gcse.c (add_label_notes): New function.
333 (pre_insert_insn): Call it.
334 * unroll.c (unroll_loop): Look for insns with a REG_LABEL note, and
335 pass the label to set_label_in_map.
336
efef624b
DL
337Mon Jun 22 19:01:14 1998 Dave Love <d.love@dl.ac.uk>
338
339 * Makefile.in (install-info): Fix typpo in previous change.
340
4bcfa7a8
CM
341Mon Jun 22 11:10:00 1998 Catherine Moore <clm@cygnus.com>
342
343 * varasm.c (assemble_variable): Emit alignment warning.
344
296433e1
KG
345Mon Jun 22 08:18:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
346
347 * Makefile.in (varasm.o): Depend on sdbout.h.
348 (sdbout.o): Depend on toplev.h.
349
350 * collect2.c (scan_prog_file): Cast fprintf argument to `long' and
351 use %ld specifier.
352
353 * final.c (shorten_branches): Cast first arg of `bzero' to char *.
354
355 * genextract.c (main): When creating insn-extract.c, mark variable
356 `i' with ATTRIBUTE_UNUSED.
357
358 * genpeep.c (main): When creating insn-peep.c, mark variables
359 `insn', `x' and `pat' with ATTRIBUTE_UNUSED.
360
361 * objc/init.c (__objc_tree_print): Wrap function definition in
362 macro `DEBUG'.
363
364 * objc/objc-act.c (encode_array): Cast sprintf argument to `long'
365 and use %ld specifier.
366 (adorn_decl): Likewise, twice.
367
e016950d
KG
368 * reload1.c (reload_cse_regs): Cast first arg of `bzero' to char *.
369
370 * sdbout.c: Include output.h and toplev.h.
371 (PUT_SDB_INT_VAL): Use HOST_WIDE_INT_PRINT_DEV to print argument
372 `a'. Cast `a' to HOST_WIDE_INT to force it to always be so.
373 (PUT_SDB_SIZE): Likewise.
374
375 * sdbout.h (sdbout_mark_begin_function): Add prototype.
376
377 * stmt.c (check_for_full_enumeration_handling): Cast argument of
378 `warning' to long and use %ld specifier.
379
380 * toplev.c (main): Likewise for `fprintf'.
381
382 * toplev.h (output_file_directive): Add prototype.
383
384 * unroll.c (unroll_loop): Use HOST_WIDE_INT_PRINT_DEC specifier in
385 call to `fprintf'.
386 (precondition_loop_p): Likewise.
387
388 * varasm.c Include sdbout.h.
389 (assemble_static_space): Move sometimes-unused variable `rounded'
390 into the scope in which it is used.
b3fb0b5e
KG
391
392 * mips.c (gpr_mode): Don't say `static' twice.
393
394 * cpplib.c (cpp_handle_option): Don't pass unneeded NULL to cpp_fatal.
395
396 * objc/objc-act.c (init_selector): Hide prototype and definition.
397
398 * optabs.c (gen_cond_trap): Remove unused variable `icode'.
399
400 * regmove.c (copy_src_to_dest): Likewise for `i'.
e016950d 401
cd1661d6
KG
402 * mips-tfile.c (add_local_symbol): Cast width format specifier to int.
403 (add_ext_symbol): Likewise.
404 (add_file): Likewise.
405 (parse_def): Likewise.
406 (write_varray): Use HOST_PTR_PRINTF to print a pointer. Fix
407 remaining format specifiers and arguments.
408 (write_object): Likewise, several times.
409 (read_seek): Likewise.
410 (out_of_bounds): Likewise.
411 (allocate_cluster): Likewise.
412 (xmalloc): Likewise.
413 (xcalloc): Likewise.
414 (xrealloc): Likewise.
415 (xfree): Likewise.
416
417 * mips-tdump.c (print_symbol): Likewise.
418
824d9076
DL
419Sun Jun 21 17:05:34 1998 Dave Love <d.love@dl.ac.uk>
420
421 * Makefile.in (install-info): Use install-info program if
422 available, per GNU standard.
423
9a8b0889
JL
424Sun Jun 21 18:56:44 1998 Jeffrey A Law (law@cygnus.com)
425
ecff22ab
JL
426 * invoke.texi: Document -mrelax for the mn10300 and mn10200.
427
04821e98
JL
428 * basic-block.h (init_regset_vector): Delete declaration.
429 * flow.c (init_regset_vector): Make it static and add a prototype.
430
4d7fc9e7
JL
431 * bitmap.h (debug_bitmap): Declare.
432
9a8b0889
JL
433 * haifa-sched.c (debug_ready_list): Make static.
434
435 * toplev.h (fancy_abort): Declare.
436
27fa83c1
L
437Sun Jun 21 18:30:13 1998 H.J. Lu (hjl@gnu.org)
438
4d7fc9e7
JL
439 * basic-block.h (init_regset_vector): New declaration.
440
2086b675
L
441 * Makefile.in (sdbout.o): Add insn-codes.h to dependency.
442
f6781658
L
443 * global.c: Include machmode.h amd move hard-reg-set.h before
444 rtl.h.
445
cc4fe0e2
L
446 * haifa-sched.c (insn_issue_delay, birthing_insn_p,
447 adjust_priority, print_insn_chaino): New declaration.
448 (schedule_insns): Remove declaration.
449 (init_target_units, get_visual_tbl_length,
450 init_block_visualization): Add prototype.
451
8a1ef8c9
L
452 * integrate.c (pushdecl, poplevel): Remove declaration.
453
9a8b0889
JL
454 * rtl.h (expand_expr): Remove declaration.
455
27fa83c1
L
456 * loop.c (oballoc): Remove declaration.
457 (replace_call_address): Add prototype.
458
e4ad60fe
JL
459Sun Jun 21 01:08:17 PDT 1998 Jeff Law (law@cygnus.com)
460
461 * version.c: Bump for snapshot.
462
c0067dc8
JW
463Sun Jun 21 01:16:38 1998 John Wehle (john@feith.com)
464
465 * i386.c (output_fp_conditional_move): Don't bother handling
466 (cc_prev_status.flags && CC_NO_OVERFLOW) since the INSN patterns
467 prevent this from happening.
468
469 * i386.md (nonlocal_goto_receiver): Delete.
470
a24da858
L
471Sun Jun 21 00:42:20 1998 H.J. Lu (hjl@gnu.org)
472
1442f4eb
L
473 * Makefile.in (crtbeginS.o, crtendS.o): Add -fno-exceptions and
474 -DCRTSTUFFS_O.
475 (INSTALL): cd $(srcdir) before make.
476
a24da858
L
477 * flow.c (allocate_for_life_analysis, init_regset_vector):
478 Remove declaration.
479
480 * function.h (get_first_block_beg): New declaration.
481
482 * gbl-ctors.h (__do_global_dtors): Add prototype.
483
484 * gcov-io.h (__fetch_long): New declaration.
485 (__store_long): Likewise.
486 (__read_long): Likewise.
487 (__write_long): Likewise.
488
489 * gcov.c (print_usage): New declaration.
490
491 * Makefile.in (c-iterate.o): Depend on insn-codes.h too.
492
4ef873c2
JL
493Sat Jun 20 00:36:16 1998 Jeffrey A Law (law@cygnus.com)
494
c16ddde3
JL
495 * calls.c (expand_call): Initialize "src" and "dest".
496 * stmt.c (expand_return): Likewise.
497 * expmed.c (extract_split_bit_field): Similarly for "result"
498 * gcse.c (compute_hash_table): Mark first arg as unused.
499 * jump.c (jump_optimize): Initialize reversep.
500 * tree.c (make_node): Initialize length.
501
f67aab2c
JL
502 * c-common.c (check_format_info): Initialize length_char and
503 fci to keep -Wall quiet.
504
767f5b14
JL
505 * except.c (jumpif_rtx): Put declaration and definition
506 inside a suitable #ifdef.
507 (jumpifnot_rtx): Delete dead function.
508
5a77b5f3
JL
509 * i386.h (output_int_conditional_move): Declare.
510 (output_fp_conditional_move): Likewise.
2305ac0d 511 (ix86_can_use_return_insn_p): Likewise.
5a77b5f3 512
4ef873c2
JL
513 * optabs.c (init_traps): Put prototype inside a suitable #ifdef.
514
2e107e9e
GS
515Sat Jun 20 00:27:40 1998 Graham <grahams@rcp.co.uk>
516
517 * alias.c: Include toplev.h
518 * caller-save.c: Include toplev.h
519 * combine.c: Include toplev.h
520 * flow.c Include toplev.h
521 * global.c: Include toplev.h
522 * jump.c: Include toplev.h
523 * local-alloc.c: Include toplev.h
524 * loop.c: Include toplev.h
525 * regmove.c: Include toplev.h
526 * stupid.c: Include toplev.h
527 * unroll.c: Include toplev.h
528 * Makefile.in: Add toplev.h dependencies.
529
29a4c5ed
JM
530Fri Jun 19 22:40:25 1998 Jason Merrill <jason@yorick.cygnus.com>
531
532 * regmove.c (copy_src_to_dest): Add decl for loop_depth.
32bd96ff
JM
533
534 * svr4.h (ASM_GENERATE_INTERNAL_LABEL): Cast arg to unsigned.
535 * dwarf2out.c (ASM_OUTPUT_DWARF_DATA1): Likewise.
536 Add parens to various macros.
537
9dfcc8db
BH
538Fri Jun 19 23:22:42 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
539
540 * c-typeck.c (pop_init_level): Warn about implicit zero initialization
541 of struct members.
542
ee830309
JM
543Fri Jun 19 23:06:33 1998 Jason Merrill <jason@yorick.cygnus.com>
544
545 * varasm.c (assemble_start_function): Add weak_global_object_name.
546 * tree.c (get_file_function_name): Use it.
547
2c975716
JL
548Fri Jun 19 22:55:14 1998 Jeffrey A Law (law@cygnus.com)
549
561592c5
JL
550 * except.c (jumpif_rtx): Make static and add prototype.
551 (jumpifnot_rtx): Likewise.
552
90bf9bc4
JL
553 * README.gnat: Add a build patch from Fred Fish.
554
2c975716
JL
555 * c-lang.c (GNU_xref_begin, GNU_xref_end): Deleted.
556
3ca4021d
JL
557 * Makefile.in (c-iterate.o): Depend on expr.h.
558
3559eb28
L
559Fri Jun 19 20:38:34 1998 H.J. Lu (hjl@gnu.org)
560
19864289
L
561 * except.h (emit_unwinder, end_eh_unwinder): Removed.
562
90bf9bc4
JL
563 * dwarfout.c (getpwd): Add prototype.
564 (is_pseudo_reg, type_main_variant, is_tagged_type,
565 is_redundant_typedef): New declaration.
566 (output_decl): Add prototype for FUNC.
567 (type_main_variant): Make it static.
568 (is_tagged_type): Likewise.
569 (is_redundant_typedef): Likewise.
570
0d091530
L
571 * expr.c (do_jump_by_parts_greater_rtx): Removed.
572 (truthvalue_conversion): Likewise.
573
3ca4021d
JL
574 * c-iterate.c: Include "expr.h".
575 (expand_expr): Use proper values when calling the function.
576
0ddc9a94
L
577 * explow.c (emit_stack_save): Add prototype for FCN.
578 (emit_stack_restore): Likewise.
579
e179bf0f
L
580 * dwarf2out.c (getpwd): Add prototype.
581
79a2acc8
L
582 * dwarf2out.h (debug_dwarf, debug_dwarf_die): New declarations.
583
f5a8bfff 584 * c-typeck.c (c_expand_asm_operands): Use proper values when calling
79a2acc8 585 expand_expr.
f5a8bfff 586
3ab6dd7c
L
587 * c-lex.c (yyprint): Add prototype.
588 (check_newline, build_objc_string): Remove declaration.
589
0bb0a00b
L
590 * c-tree.h (comptypes_record_hook): Removed.
591 (finish_incomplete_decl): New prototype.
592
960b4ee6
L
593 * alias.c (find_base_value): Add prototype.
594 (true_dependence): Add prototype for function argument.
595
3559eb28
L
596 * c-aux-info.c (xmalloc): Remove declaration.
597
bb5177ac
RL
598Fri Jun 19 20:23:05 1998 Robert Lipe <robertl@dgii.com>
599
600 * i386.c: Include system.h. Remove redundant includes.
601 (optimization_options): Mark param 'size' with ATTRIBUTE_UNUSED.
602 (i386_cc_probably_useless_p): Likewise for 'decl', 'attributes',
603 'identifier', 'args'.
604 (i386_valid_type_attribute_p): Likewise for 'attributes'.
605 (i386_comp_type_attribute_p): Likewise for 'type1', 'type2'.
606 (function_arg_partial_nregs): Likewise for 'cum', 'mode', 'type',
607 and 'named'.
608 (symbolic_operand): Likewise for 'mode'.
609 (call_insn_operand): Likewise.
610 (expander_call_insn_operand): Likewise.
611 (ix86_logical_operator): Likewise.
612 (ix86_binary_operator_ok): Likewise.
613 (emit_pic_move): Likewise.
614 (VOIDmode_compare_op): Likewise.
615 (is_mul): Likewise.
616 (str_immediate_operand): Likewise.
617 (ix86_uary_operator_ok): Likewise for 'code', 'mode', and 'operands'.yy
618 (asm_output_function_prefix): Likewise for 'name'.
619 (function_prologue): Likewise for 'file', and 'size'.
620 (function_epilogue): Likewise.
621
7e7ca3a1
JW
6221998-06-19 Jim Wilson <wilson@cygnus.com>
623
624 * loop.h (struct induction): Clarify comment for unrolled field.
625 * unroll.c (find_splittable_givs): Move set of unrolled field
626 after address validity check.
627
c0418205
MM
628Fri Jun 19 18:38:04 1998 Michael Meissner <meissner@cygnus.com>
629
630 * config/fp-bit.c (INLINE): Only define if not already defined.
631
fe2fa3c4
MH
6321998-06-19 Manfred Hollstein <manfred@s-direktnet.de>
633
634 * Makefile.in (installdirs): Loop over directories in $(libsubdir)
635 creating probably missing ones, instead of single if statements.
636
f0b8d9aa
AS
637Fri Jun 19 10:43:52 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
638
639 * c-common.c (truthvalue_conversion): Protect side effects in the
640 expression when splitting a complex value.
641 * fold-const.c (fold): Likewise.
642
94fb3933
KK
643Fri Jun 19 02:31:16 1998 Klaus Kaempf (kkaempf@progis.de)
644
645 * cccp.c (hack_vms_include_specification): rewrite to handle
646 '#include <dir/file.h>' correctly.
647
de3eb7b7
L
648Fri Jun 19 02:24:11 1998 H.J. Lu (hjl@gnu.org)
649
650 * config/i386/linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Defined.
651
b4d030e5
JW
652Fri Jun 19 02:10:10 1998 John Wehle (john@feith.com)
653
9c8c5afb
JW
654 * i386.c (notice_update_cc): Integer conditional moves don't
655 affect cc0.
656
b4d030e5
JW
657 * i386.md (movsfcc, movdfcc, movxfcc): Use emit_store_flag
658 to support LT, LE, GE, and GT signed integer comparisons.
659 (movsfcc+1, movsfcc+2, movdfcc+1, movdfcc+2,
660 movxfcc+1, movxfcc+2): Pattern doesn't match if the comparison
661 is LT, LE, GE, or GT.
662 (movdicc): Remove code resulting from an earlier patch which
663 didn't apply correctly.
664
bb173ade
RK
665Fri Jun 19 02:00:19 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
666
667 * reload1.c (reload_cse_regno_equal_p): If -ffloat-store, don't
668 consider a MEM in FP mode as equal.
669
11346e89
JL
670Fri Jun 19 01:02:17 1998 Jeffrey A Law (law@cygnus.com)
671
672 * c-decl.c (duplicate_decls): Avoid setting TREE_ASM_WRITTEN for
673 duplicate declarations of a function.
674
76a8de12
L
675Fri Jun 19 00:33:33 1998 H.J. Lu (hjl@gnu.org)
676
677 * config/float-i386.h: New.
678
679 * configure.in (i[34567]86-*-linux-*): Set float_format to i386.
680
7c74b010
JW
681Thu Jun 18 20:11:00 1998 Jim Wilson <wilson@cygnus.com>
682
683 * sched.c (schedule_insns): Use xmalloc not alloca for max_uid
684 indexed arrays. Call free at the end of the function for them.
685 * haifa-sched.c (schedule_insns): Likewise.
686
243e7835
JW
687Thu Jun 18 18:16:01 1998 Jim Wilson <wilson@cygnus.com>
688
689 * dwarf2out.c (size_of_string): Do count backslashes.
690
bf3ad139
NC
691Thu Jun 18 11:43:54 1998 Nick Clifton <nickc@cygnus.com>
692
693 * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Disallow REG+REG
694 addressing when one register is the frame pointer or stack
695 pointer. Disallow REG+CONST addressing in HI mode.
696
f9df0a1d
R
697Thu Jun 18 17:30:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
698
699 * reload.c (find_reloads): Don't narrow scope of RELOAD_OTHER to
700 RELOAD_FOR_INSN.
701
cab634f2
KG
702Thu Jun 18 09:36:50 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
703
704 * Makefile.in (c-lang.o): Depend on output.h.
705
706 * c-lang.c: Include output.h.
707
708 * sparc.c (sparc_builtin_saveregs): Remove unused variable `fntype'.
709
710 * except.c (expand_builtin_eh_stub): Likewise for variable `jump_to'.
711
712 * genrecog.c (write_subroutine): When writing insn-recog.c, mark
713 variables `insn', `pnum_clobbers', `x[0 .. max_depth]' and `tem'
714 with ATTRIBUTE_UNUSED.
715
716 * regmove.c (copy_src_to_dest): Make function static to match its
717 prototype.
718
719 * reload1.c Include hard-reg-set.h before rtl.h to get macro
720 HARD_CONST. Include machmode.h before hard-reg-set.h.
721
722 * rtl.h: Prototype `retry_global_alloc' and wrap with macro
723 HARD_CONST to protect usage of typedef HARD_REG_SET.
724
725 * tree.c: Prototype `_obstack_allocated_p'.
726
727 * varasm.c: Wrap prototype of `asm_output_aligned_bss' in macro
728 BSS_SECTION_ASM_OP.
729
0b17dd98
KG
730Thu Jun 18 09:20:47 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
731
732 * pa.c: Include system.h and toplev.h. Remove redundant code.
733 (call_operand_address): Mark parameter `mode' with ATTRIBUTE_UNUSED.
734 (symbolic_operand): Likewise.
735 (symbolic_memory_operand): Likewise.
736 (pic_label_operand): Likewise.
737 (fp_reg_operand): Likewise.
738 (pre_cint_operand): Likewise.
739 (post_cint_operand): Likewise.
740 (ireg_or_int5_operand): Likewise.
741 (int5_operand): Likewise.
742 (uint5_operand): Likewise.
743 (int11_operand): Likewise.
744 (uint32_operand): Likewise.
745 (ior_operand): Likewise.
746 (lhs_lshift_cint_operand): Likewise.
747 (pc_or_label_operand): Likewise.
748 (legitimize_pic_address): Likewise.
749 (hppa_legitimize_address): Likewise for parameter `old'.
750 (output_block_move): Likewise for parameter `size_is_constant'.
751 (output_function_prologue): Likewise for parameter `size'.
752 (output_function_epilogue): Likewise.
753 (return_addr_rtx): Likewise for parameter `count'.
754 (output_mul_insn): Likewise for parameter `unsignedp'.
755 (hppa_builtin_saveregs): Likewise for parameter `arglist'.
756 (output_bb): Likewise for parameter `operands'.
757 (output_bvb): Likewise.
758 (function_label_operand): Likewise for parameter `mode'.
759 (plus_xor_ior_operator): Likewise.
760 (shadd_operand): Likewise.
761 (non_hard_reg_operand): Likewise.
762 (eq_neq_comparison_operator): Likewise.
763 (movb_comparison_operator): Likewise.
764 (pa_combine_instructions): Likewise for parameter `insns'.
765
766 * pa.h: Add prototypes for functions `output_deferred_plabels',
767 `override_options', `output_ascii', `output_function_prologue',
768 `output_function_epilogue', `print_operand',
769 `symbolic_expression_p', `reloc_needed', `compute_frame_size',
770 `hppa_address_cost', `and_mask_p', `symbolic_memory_operand',
771 `pa_adjust_cost', `pa_adjust_insn_length' and
772 `secondary_reload_class'.
773
ca8c3b37
JM
774Wed Jun 17 22:28:48 1998 Jason Merrill <jason@yorick.cygnus.com>
775
776 * configure.in: Don't turn on collect2 unconditionally.
777
1d22a2c1
MM
778Wed Jun 17 20:20:48 1998 Mark Mitchell <mark@markmitchell.com>
779
780 * cse.c (cse_basic_block): Don't include NOTE insns in the count
781 that is used to decide whether or not it is time to erase the
782 equivalence table.
783
b74390de
FS
784Wed Jun 17 18:30:43 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
785
786 * rs6000/linux.h (JUMP_TABLES_IN_TEXT_SECTION): Define to zero.
787
e0cd0770
JC
788Wed Jun 17 19:05:03 1998 John Carr <jfc@mit.edu>
789
790 * haifa-sched.c (haifa_classify_insn): TRAP_IF is risky.
791 (sched_analyze_2): Allow scheduling TRAP_IF.
792
793 * reorg.c (mark_referenced_resources): Examine operands of TRAP_IF.
794
795 * rtl.h (TRAP_CODE): New macro.
796
797 * rtl.def (TRAP_IF): Change second operand type to rtx.
798
799 * optabs.c (gen_cond_trap): New function.
800 (init_traps): New function.
801 (init_optabs): Call init_traps.
802 * expr.h: Declare gen_cond_trap.
803
804 * jump.c (jump_optimize): Optimize jumps to and around traps.
805
806 * sparc.md: Define trap instructions.
807
808 * rs6000.md: Define trap instructions.
809 * rs6000.c (print_operand): New code 'V' for trap condition.
810 (trap_comparison_operator): New function.
811
812 * m88k.md: Update use of TRAP_IF.
813
814 * tree.h (enum built_in_function): New function code BUILT_IN_TRAP.
815 * c-decl.c (init_decl_processing): New builtin __builtin_trap.
816 * expr.c (expand_builtin): Handle BUILT_IN_TRAP.
817
818 * expr.c (expand_builtin): Error if __builtin_longjmp second argument
819 is not 1.
820
4fdf79cb
CM
821Wed Jun 17 15:20:00 PDT 1998 Catherine Moore <clm@cygnus.com>
822
823 * reload1.c (spill_hard_reg): Check mode of register when
824 spilling from scratch_list.
825
d7e78529
AM
826Wed Jun 17 16:25:38 EDT 1998 Andrew MacLeod (amacleod@cygnus.com)
827
828 * except.c (add_new_handler): fix bug in finding last region handler.
829 * libgcc2.c (find_exception_handler): Pass exception table pointer
830 to runtime type matcher, not the match info field.
831
3301dc51
AM
832Wed Jun 17 15:57:48 EDT 1998 Andrew MacLeod (amacleod@cygnus.com)
833
834 * eh-common.h (struct eh_context): Add comment for hidden use of
835 field dynamic_handler_chain.
836 * except.c (get_dynamic_handler_chain): Comment on, and use the
837 correct offset of the dynamic_handler_chain field.
838
33f264af
JW
8391998-06-17 12:46:56 1998 Jim Wilson <wilson@cygnus.com>
840
841 * mips/iris6.h (LINK_SPEC): Add -woff 131.
842
d460fb3c
JM
8431998-06-17 Jason Merrill <jason@yorick.cygnus.com>
844
845 * dwarf2out.c: Disable EH_FRAME_SECTION if we don't have .init.
846
847 * configure.in: Don't disable collect2 when we have GNU ld.
848
4c738570
JL
849Wed Jun 17 08:38:13 1998 Jeffrey A Law (law@cygnus.com)
850
7d12cee1
JL
851 * fold-const.c (make_range): Do not widen the type of the expression.
852
dbecbbe4
JL
853 * expr.c (check_max_integer_computation_mode): New function.
854 (expand_expr): Avoid integer computations in modes wider than
855 MAX_INTEGER_COMPUTATION_MODE.
856 * fold-const.c (fold): Likewise.
857 * tree.h (check_max_integer_computation_mode): Declare.
858 * tm.texi (MAX_INTEGER_COMPUTATION_MODE): Document it.
859
4b95eb49
JL
860 * configure.in (nm): Make a link to "nm" in the build tree too.
861
4c738570
JL
862 * mn10300.md (andsi3): Fix typo.
863
33ab8de0
RH
864Tue Jun 16 22:58:40 1998 Richard Henderson <rth@cygnus.com>
865
866 * reload1.c (reload_cse_regs): Call bzero instead of looping.
867
bf20f341
JW
868Tue Jun 16 18:30:35 1998 Jim Wilson <wilson@cygnus.com>
869
870 * dwarf2out.c (stripattributes): Prepend '*' to the section name.
871
9c0e94a5
RH
872Tue Jun 16 16:49:26 1998 Richard Henderson <rth@cygnus.com>
873
874 * alpha.c (alpha_expand_prologue, alpha_expand_epilogue): New fns.
875 (output_prologue, output_epilogue): Merge VMS and OSF versions;
876 Remove anything related to the actual code generation.
877 (output_end_prologue): New function.
878 (alpha_sa_mask, alpha_sa_size): Merge VMS and OSF versions.
879 (alpha_does_function_need_gp): Return false for VMS.
880 (alpha_function_needs_gp): Make static.
881 (add_long_const): Delete.
882 (summarize_insn): Don't assume a SUBREG is of a REG.
883 Prototype all static functions. Rename VMS-specific global
884 variables vms_*.
885 * alpha.h (TARGET_CAN_FAULT_IN_PROLOGUE): Default to 0.
886 (FUNCTION_BOUNDARY): Align to cache line.
887 (LOOP_ALIGN, ALIGN_LABEL_AFTER_BARRIER): Align to octaword.
888 (FUNCTION_END_PROLOGUE): New macro.
889 * alpha.md (attribute length): New. Mark all insns.
890 (return_internal, prologue_stack_probe_loop) New patterns.
891 (prologue, init_fp, epilogue): New patterns.
892 Disable peepholes.
893 * linux.h (TARGET_CAN_FAULT_IN_PROLOGUE): Define.
894
ad1da1de
DB
895Tue Jun 16 17:36:35 1998 Dave Brolley <brolley@cygnus.com>
896
897 * toplev.c (lang_options): Add -trigraphs option for cpplib.
898
75528b80
R
899Tue Jun 16 23:33:24 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
900
901 * reload1.c (reload_reg_free_before_p): RELOAD_FOR_OUTADDR_ADDRESS
902 is earlier than RELOAD_FOR_OUTPUT_ADDRESS; RELOAD_FOR_INPADDR_ADDRESS
903 is earlier than RELOAD_FOR_INPUT_ADDRESS.
904
42b82dd3
JW
905Tue Jun 16 13:15:16 1998 Jim Wilson <wilson@cygnus.com>
906
907 * libgcc1-test.c (memcpy): Define.
908
6f6074ea
MM
909Tue Jun 16 13:44:02 1998 Michael Meissner <meissner@cygnus.com>
910
911 * genattrtab.c (struct attr_desc): Change int flags to bit
912 fields. Add bit fields for this being function_units_used
913 or *_blockage_range attributes.
914 (write_unit_name): New function to print a function unit name
915 given unit #.
916 (expand_units): Indicate whether this is function_units_used or
917 *_blockage_range attributes.
918 (write_toplevel_expr): Print function_units_used and
919 *_blockage_range attributes in a more friendly fashion.
920 (make_internal_attr): Indicate whether this attribute is either
921 function_units_used or *_blockage_range.
922
ddc8bed2
MM
923Mon Jun 15 17:06:43 1998 Michael Meissner <meissner@cygnus.com>
924 Jim Wilson <wilson@cygnus.com>
3bd89472 925
ddc8bed2
MM
926 * regmove.c (copy_src_to_dest): Do not copy src to dest if either
927 the source or destination is special.
3bd89472 928
ddc8bed2 929Mon Jun 15 13:20:33 1998 Jim Wilson <wilson@cygnus.com>
a7db2896 930
ddc8bed2 931 * c-decl.c (shadow_tag_warned): Use specs not declspecs in for loop.
a7db2896 932
d61d494a
JL
933Mon Jun 15 07:16:29 PDT 1998 Jeff Law (law@cygnus.com)
934
935 * version.c: Bump for snapshot.
936
a08432bd
KW
937Sat Jun 13 13:10:40 1998 Krister Walfridsson <cato@df.lth.se>
938
939 * config/sparc/netbsd.h (DEFAULT_PCC_STRUCT_RETURN): Undefine before
940 redefining it.
941
a4ea8d97
DE
942Fri Jun 12 18:06:45 1998 Doug Evans <devans@egcs.cygnus.com>
943
944 * m32r/m32r.h (STARTFILE_SPEC): Delete crtsysc.o.
416db271 945 (ENDFILE_SPEC): Add -lgloss.
a4ea8d97 946
38831dfe
KG
947Fri Jun 12 14:57:59 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
948
949 * mips.c (small_int): Mark parameter `mode' with ATTRIBUTE_UNUSED.
950 (large_int): Likewise.
951 (pc_or_label_operand): Likewise.
952 (call_insn_operand): Likewise.
953 (consttable_operand): Likewise.
954 (m16_uimm3_b): Likewise.
955 (m16_simm4_1): Likewise.
956 (m16_nsimm4_1): Likewise.
957 (m16_simm5_1): Likewise.
958 (m16_nsimm5_1): Likewise.
959 (m16_uimm5_4): Likewise.
960 (m16_nuimm5_4): Likewise.
961 (m16_simm8_1): Likewise.
962 (m16_nsimm8_1): Likewise.
963 (m16_uimm8_1): Likewise.
964 (m16_nuimm8_1): Likewise.
965 (m16_uimm8_m1_1): Likewise.
966 (m16_uimm8_4): Likewise.
967 (m16_nuimm8_4): Likewise.
968 (m16_simm8_8): Likewise.
969 (m16_nsimm8_8): Likewise.
970 (m16_usym8_4): Likewise.
971 (m16_usym5_4): Likewise.
972 (mips_move_1word): Change type of variable `i' from int to size_t.
973 (mips_move_2words): Likewise.
974 (output_block_move): Mark parameter `libname' with ATTRIBUTE_UNUSED.
975 (function_arg_advance): Use HOST_PTR_PRINTF to print an address.
976 (function_arg): Likewise.
977 (function_arg_partial_nregs): Mark parameter `named' with
978 ATTRIBUTE_UNUSED.
979 (override_options): Use ISDIGIT instead of isdigit.
980 (mips_output_external): Mark parameter `file' with ATTRIBUTE_UNUSED.
981 (final_prescan_insn): Likewise for parameters `opvec' and `noperands'.
982 (save_restore_insns): Cast HOST_WIDE_INT arguments passed to
983 function `fatal' to long before printing. Use
984 HOST_WIDE_INT_PRINT_DEC in fprintf. Both changes done several
985 times in this function.
986 (function_prologue): Mark parameter `size' with ATTRIBUTE_UNUSED.
987 (function_epilogue): Likewise for parameters `file' and `size'.
988 Print an int with "%d" not "%ld".
989 (mips_select_rtx_section): Mark parameter `x' with ATTRIBUTE_UNUSED.
990 (mips_function_value): Likewise for parameter `func'.
991 (function_arg_pass_by_reference): Likewise for parameters `cum'
992 and `named'.
993 (extend_operator): Likewise for parameter `mode'
994 (highpart_shift_operator): Likewise.
995
996 * mips.md (mul_acc_si): Remove unused variable `macc'.
997
77a45a2e
RH
998Fri Jun 12 09:33:44 1998 Richard Henderson <rth@cygnus.com>
999
1000 * fold-const.c (fold): Revert last change. It breaks constant
1001 expressions somehow.
1002
8d62b411
AS
1003Fri Jun 12 10:23:36 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1004
1005 * expr.c (do_jump, case EQ_EXPR, NE_EXPR): When comparing complex
1006 prevent operands from being evaluated twice.
1007
cac45626
SO
1008Fri Jun 12 00:50:27 1998 Sergey Okhapkin <sos@prospect.com.ru>
1009
1010 * toplev.c (lang_options): Add -remap as a preprocessor option.
1011
9bc6d2c2
JW
1012Fri Jun 12 00:30:32 1998 John Wehle (john@feith.com)
1013
1014 * i386.md (cmpsi_1, cmphi_1, cmpqi_1): Remove code
1015 which set CC_REVERSED since reload should ensure that
1016 the operands are already the correct type.
1017
fb95c8c9
JW
1018Thu Jun 11 17:14:15 1998 Jim Wilson <wilson@cygnus.com>
1019
1020 * except.c (expand_builtin_eh_stub): Call emit_move_insn rather than
1021 calling gen_rtx_SET.
1022
95009288
DE
1023Thu Jun 11 18:45:49 1998 David Edelsohn <edelsohn@mhpcc.edu>
1024
1025 * config/rs6000/x-aix43 (AR): Delete.
1026 (AR_FOR_TARGET_FLAGS): Add -X32_64 here.
1027
bf6f78d1
DS
1028Thu Jun 11 16:19:17 1998 David W. Schuler <schuld@btv.ibm.com>
1029
1030 * config/i386/aix386ng.h (CPP_SPEC): Remove extraneous quote.
1031
45cc4c09
JW
1032Thu Jun 11 12:40:27 1998 Jim Wilson <wilson@cygnus.com>
1033
1034 * mips.c (override_options): Replace word_mode with explicit
1035 TARGET_64BIT check.
1036
ecb75b7a
MM
1037Thu Jun 11 14:50:02 1998 Michael Meissner <meissner@cygnus.com>
1038
1039 * regmove.c (regmove_optimize): If we can't replace the
1040 destination in an insn that sets the source, generate an explicit
1041 move of the source to the destination.
1042 (copy_src_to_dest): New function.
1043 (toplevel): Include basic-block.h
1044
1045 * Makefile.in (regmove.o): Add basic-block.h dependencies.
1046
8e34149d
DB
1047Thu Jun 11 10:30:09 1998 Dave Brolley <brolley@cygnus.com>
1048
1049 * toplev.c (lang_options): Add missing options (nostdinc, idirafter).
1050
8358a974
MM
1051Wed Jun 10 23:39:32 1998 Mark Mitchell <mark@markmitchell.com>
1052
1053 * rtl.h (rtx_def): Improve documentation.
1054 (MEM_IN_STRUCT_P): Likewise.
1055
e80716de
GS
1056Wed Jun 10 23:23:17 1998 Graham <grahams@rcp.co.uk>
1057
1058 * c-decl.c (start_decl): Correct test for -Wmain.
1059
b3fbc9ad
GS
1060 * c-decl.c (grokdeclarator): Remove unused variable "last".
1061
3e2b9a3d
JW
1062Wed Jun 10 14:52:27 1998 Jim Wilson <wilson@cygnus.com>
1063
1064 * expr.c (expand_builtin_setjmp): Store const1_rtx in target.
1065 (expand_builtin_longjmp): Abort if value isn't const1_rtx.
1066 Delete code storing value in static_chain_rtx.
1067 (expand_builtin, case BUILT_IN_LONGJMP): Pass NULL_RTX for target
1068 to second expand_expr call.
1069
748b909e
MM
1070Wed Jun 10 13:08:41 1998 Mark Mitchell <mark@markmitchell.com>
1071
1072 * mips/mips.c: Remove -mabi=o32 and -mabi=n64.
1073
e061d1ce
DB
1074Wed Jun 10 13:41:23 1998 Dave Brolley <brolley@cygnus.com>
1075
1076 * cppmain.c (fatal): New function.
1077 * configure.in (cpp_main): New configuration variable.
1078 * configure: Regenerated.
e80716de
GS
1079 * Makefile.in (CCCP): Use a configuration variable to select basex
1080 for cccp.
e061d1ce
DB
1081 (cppmain$(exeext)): Add @extra_cpp_objs@.
1082
a0d85b75
DB
1083Wed Jun 10 13:07:02 1998 Dave Brolley <brolley@cygnus.com>
1084
1085 * objc/objc-act.c: Add cpplib declarations.
1086 (lang_decode_option): Initialize cpplib if necessary.
1087 (lang_decode_option): New argc/argv interface.
1088 * tree.h (lang_decode_option): New argc/argv interface.
1089 * toplev.c (lang_options): Add cpp options.
1090 (main): New interface for lang_decode_option.
1091 * gcc.c (default_compilers): Don't call cpp for a cpplib-enabled C compiler
1092 unless -E, -M or -MM is specified.
1093 * cpplib.h (cpp_handle_option): New function.
1094 * cpplib.c (cpp_handle_option): New function.
1095 (cpp_handle_options): Now calls cpp_handle_option.
1096 * c-tree.h (c_decode_option): New argc/argv interface.
1097 * c-lex.c (init_parse): cpplib now initialized in c_decode_option.
1098 * c-lang.c (lang_decode_option): New argc/argv interface.
1099 * c-decl.c: Add cpplib declarations.
1100 (c_decode_option): New argc/argv interface.
1101 (c_decode_option): Call cpp_handle_option.
1102 (c_decode_option): Now returns number of strings processed.
1103
95193030
RE
1104Wed Jun 10 09:47:13 1998 Richard Earnshaw (rearnsha@arm.com)
1105
1106 * unroll.c (verify_addresses): Use validate_replace_rtx to undo the
1107 changes. Abort if the undo fails.
1108
e74e8c84
VM
11091998-06-10 Vladimir N. Makarov <vmakarov@cygnus.com>
1110
1111 * config/rs6000/rs6000.c (output_prolog): Change locations and
1112 directions of saving and restoring arguments of main on the stack.
1113
0254c561
JC
1114Wed Jun 10 08:56:27 1998 John Carr <jfc@mit.edu>
1115
1116 * reload1.c (reload_cse_simplify_operands): Do not call gen_rtx_REG
1117 for each alternative. Do not replace a CONST_INT with a REG unless
1118 the reg is cheaper.
1119
0365438d
JL
1120Wed Jun 10 02:11:55 1998 Jeffrey A Law (law@cygnus.com)
1121
07fb7f79
JL
1122 * decl.c (init_decl_processing): Fix typo.
1123
bfed8dac
JL
1124 * mips.c (gpr_mode): New variable.
1125 (override_options): Initialize gpr_mode.
1126 (compute_frame_size): Use "gpr_mode" instead of "word_mode" to
1127 determine size and offset of general purpose registers save slots.
1128 (save_restore_insns, mips_expand_prologue): Similarly.
1129
0365438d
JL
1130 * reload.c (find_reloads_toplev): Use gen_lowpart common to convert
1131 between constant representations when we have (SUBREG (REG)) with
1132 REG equivalent to a constant.
1133
e6bcfef9
JS
1134Wed Jun 10 01:39:00 1998 Juha Sarlin <juha@c3l.tyreso.se>
1135
1136 * h8300.c (get_shift_alg): Add special cases for shifts of 8 and 24.
1137
ac1fdb22
RH
1138Tue Jun 9 22:05:34 1998 Richard Henderson <rth@cygnus.com>
1139
1140 * fold-const.c (fold): Even with otherwise constant trees, look for
1141 opportunities to combine integer constants.
1142
1c5d60f5
JW
1143Wed Jun 3 23:41:24 EDT 1998 John Wehle (john@feith.com)
1144
9d932d43
JW
1145 * i386.c (notice_update_cc): Clear cc_status.value2 in the
1146 case of UNSPEC 5 (bsf).
1147
1c5d60f5
JW
1148 * i386.md (movsfcc, movdfcc, movxfcc): The floating point
1149 conditional move instructions don't support signed integer
1150 comparisons.
1151
f1be41ad
NC
1152Tue Jun 9 14:31:19 1998 Nick Clifton <nickc@cygnus.com>
1153
1154 * config/v850/t-v850 (TCFLAGS): Add assembler options to warn of
1155 overlfows.
1156
1157 * config/v850/lib1funcs.asm (__return_interrupt): Use 'addi
1158 16,sp,sp' ratehr than 'add 16,sp'. Patch courtesy of Biomedin
1159 <glctr@abc.it>.
1160
0d3453df
AM
1161Tue Jun 9 16:23:13 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
1162
1163 * except.c (expand_start_catch): Rename to start_catch_handler.
1164 (expand_end_catch): Delete function.
1165 (expand_end_all_catch): Remove catch status that expand_end_catch
1166 use to do.
1167 * except.h (expand_start_catch): Rename prototype.
1168 (expand_end_catch): Delete prototype.
1169
3398f47f
MM
1170Tue Jun 9 12:57:32 1998 Mark Mitchell <mark@markmitchell.com>
1171
1172 * invoke.texi: Add documentation for -mips4 and -mabi=*.
1173
6805ef53
KK
1174Tue Jun 9 12:12:34 1998 Klaus Kaempf (kkaempf@progis.de)
1175
1176 * alpha/vms.h (EXTRA_SECTIONS): Add in_ctors and in_dtors.
1177 (EXTRA_SECTION_FUNCTIONS): Add ctors_section and dtors_section.
1178 (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Define.
1179
9ae4ec46
JC
1180Tue Jun 9 12:10:27 1998 John Carr <jfc@mit.edu>
1181
1182 * haifa-sched.c (update_flow_info): Use UNITS_PER_WORD, not MOVE_MAX,
1183 as the threshold to permit splitting memory operations.
1184
624a8b3a
JL
1185Tue Jun 9 12:36:16 1998 Jeffrey A Law (law@cygnus.com)
1186
1c5d60f5
JW
1187 * mips.c (gpr_mode): New variable.
1188 (override_options): Initialize gpr_mode.
1189 (compute_frame_size): Use "gpr_mode" instead of "word_mode" to
1190 determine size and offset of general purpose registers save slots.
1191 (save_restore_insns, mips_expand_prologue): Similarly.
1192
624a8b3a
JL
1193 * Makefile.in (LIB2FUNCS_EH): Define. Just "_eh" for now.
1194 (LIBGCC2_CFLAGS): Remove -fexceptions.
1195 (LIB2FUNCS): Remove "_eh".
1196 (libgcc2.a): Iterate over LIB2FUNCS_EH and build everything in
1197 it with -fexceptions.
1198
1199 * Makefile.in (local-alloc.o): Depend on insn-attr.h.
1200 * local-alloc.c (block_alloc): Avoid creating false
1201 dependencies for targets which use instruction scheduling.
1202
674576f1
RH
1203Tue Jun 9 02:40:49 1998 Richard Henderson <rth@cygnus.com>
1204
1205 * mips/elf.h (ASM_DECLARE_OBJECT_NAME): Define.
1206 (ASM_FINISH_DECLARE_OBJECT): Define;
1207 * mips/elf64.h: Likewise.
1208
5dd57225 1209Tue Jun 9 01:08:47 1998 Richard Henderson <rth@cygnus.com>
602ad236 1210
5dd57225 1211 * toplev.c (flag_new_exceptions): Remove extraneous `extern'.
b8211569 1212
5dd57225 1213Mon Jun 8 23:24:48 PDT 1998 Jeff Law (law@cygnus.com)
ac4bac77
JL
1214
1215 * version.c: Bump for snapshot.
1216
a2f270cc
DE
1217Mon Jun 8 23:24:58 1998 David Edelsohn <edelsohn@mhpcc.edu>
1218
1219 * rs6000.md (mulsidi3): Add !TARGET_POWERPC64 constraint.
1220 (mulsidi3_ppc64): Delete.
1221
50b2596f
KG
1222Mon Jun 8 20:57:40 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1223
1224 * Makefile.in (varasm.o): Depend on dbxout.h.
1225 (cse.o): Depend on toplev.h and output.h.
1226 (gcse.o): Depend on output.h.
1227
1228 * mips.c: Include system.h and toplev.h and remove redundant code.
1229 Include output.h after tree.h so all its prototypes get activated.
1230 * mips.md (table_jump): Remove unused variable `dest'.
1231
1232 * sparc.h: Add prototype for `v8plus_regcmp_op'.
1233
1234 * crtstuff.c (fini_dummy, init_dummy): Mark function definitions
1235 with __attribute__ ((__unused__)).
1236 (__frame_dummy): Provide prototype before use, wrap it with
1237 EH_FRAME_SECTION_ASM_OP.
1238
1239 * cse.c: Move inclusion of <setjmp.h> above local headers.
1240 Include toplev.h and output.h.
1241
1242 * dbxout.h: Add prototype for `dbxout_begin_function'.
1243
1244 * final.c (final_scan_insn): Wrap variable `max_skip' in macro
1245 ASM_OUTPUT_MAX_SKIP_ALIGN.
1246
1247 * gcse.c: Include system.h and output.h.
1248 (dump_cuid_table, dump_rd_table, dump_cprop_data, dump_pre_data):
1249 Make extern instead of static.
1250 (compute_can_copy): Only declare variables `reg' and `insn' when
1251 AVOID_CCMODE_COPIES is not defined.
1252 (record_set_info): Mark parameter `setter' with ATTRIBUTE_UNUSED.
1253 (hash_scan_clobber): Likewise for `x' and `insn'.
1254 (hash_scan_call): Likewise.
1255 (record_last_set_info): Likewise for `setter'.
1256 (mark_call): Likewise for `pat'.
1257 (pre_insert_insn): Wrap variable `note' in macro HAVE_cc0.
1258
1259 * libgcc2.c (__bb_init_prg): Replace bzero with memset and fix the
1260 length parameter so that it multiplies the number of elements by
1261 the sizeof(element).
1262
1263 * output.h: Add prototype for `weak_finish'.
1264
1265 * recog.h: Likewise for `validate_replace_src'.
1266
1267 * rtl.h: Likewise for `optimize_save_area_alloca',
1268 `fix_sched_param', `purge_addressof', `gcse_main',
1269 `regmove_optimize', `dbr_schedule', `branch_prob' and
1270 `end_branch_prob'.
1271
1272 * toplev.h: Likewise for `set_float_handler' and
1273 `output_quoted_string'.
1274
1275 * varasm.c: Include dbxout.h.
1276
33d7a521
JW
1277Mon Jun 8 18:12:06 1998 Jim Wilson <wilson@cygnus.com>
1278
1279 * mips.c (mips_secondary_reload_class): Use gp_reg_p instead of
1280 GP_REG_P. Use gr_regs instead of GR_REGS.
1281
cb923660
KR
1282Mon Jun 8 16:54:12 1998 Ken Raeburn <raeburn@cygnus.com>
1283 Jeff Law <law@cygnus.com>
1284
1285 * Revamped multiply support for MIPS chips.
1286 * mips.c (extend_operator): New function.
1287 (highpart_shift_operator): Likewise.
1288 * mips.h: Declare new functions.
1289 (PREDICATE_CODES): Add support for new predicates.
1290 * mips.md (mulsi3 expander): Simplify.
1291 (mulsi_mult3): Add another constraint alternative. Support
1292 3 operand multiply instructions as found on various mips
1293 parts.
1294 (mulsi3_r4650): Delete pattern, now handled by mulsi_mult3.
1295 (mul_acc_si): New pattern and associated splitters.
1296 (mulsidi3 expander): Rework to use mulsidi3_64bit and
1297 mulsidi3_internal.
1298 (umulsidi3): New expander.
1299 (mulsidi3_internal): Accept either sign or zero extended
1300 operands and generate code as appropriate appropriately.
1301 (mulsidi3_64bit): Similarly.
1302 (smulsi3_highpart): Turn into an expander and generate code
1303 to match new patterns.
1304 (umulsi3_highpart): Likewise.
1305 (xmulsi3_highpart_internal): New pattern.
1306 (maddi patterns): Delete. Replace with:
1307 (mul_acc_di, mul-acc_64bit_di): New patterns.
1308
a1622f83
AM
1309Mon Jun 8 14:16:15 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
1310
1311 * eh-common.h: Remove NEW_EH_MODEL compile time flag, and replace with
1312 flag_new_exceptions runtime flag.
1313 (struct old_exception_table): New struct which represents what
1314 the exception table looks like without the new model.
1315 (NEW_EH_RUNTIME): New value used as a tag in the exception table to
1316 flag that this is a new style table.
1317 * except.h: Remove compile time flag NEW_EH_MODEL.
1318 (expand_builtin_eh_stub_old): New prototype.
1319 * tree.h (enum built_in_function): Add BUILT_IN_EH_STUB_OLD.
1320 * expr.c (expand_builtin): New builtin func BUILT_IN_EH_STUB_OLD.
1321 * c-decl.c (init_decl_processing): Add new builtin function
1322 __builtin_eh_stub_old.
1323 * final.c (final_scan_insn): Replace compile time flag NEW_EH_MODEL.
1324 * flags.h (flag_new_exceptions): New runtime flag.
1325 * toplev.c (flag_new_exceptions): Initialize default to 0,
1326 -fnew-exceptions sets to 1.
1327 * except.c (output_exception_table_entry): Output New style exception
1328 identifier into table, and replace compile time flag NEW_EH_MODEL
1329 with runtime flag flag_new_exceptions.
1330 (output_exception_table): Replace compile time flag NEW_EH_MODEL.
1331 (expand_builtin_eh_stub_old): Duplicates original functionality of
1332 expand_builtin_eh_stub.
1333 (expand_builtin_eh_stub): Replace compile time flag NEW_EH_MODEL.
1334 * libgcc2.c (find_exception_handler): Remove NEW_EH_MODEL #ifdefs.
1335 (old_find_exception_handler): New func, same as find_exception_handler
1336 except it works on the old style exception table.
1337 (__throw): Replace NEW_EH_MODEL. Detect new model based on presence
1338 of identifier in the exception table, and call appropriate routines.
1339
aeb302bb
JM
1340Mon Jun 8 01:21:13 1998 Jason Merrill <jason@yorick.cygnus.com>
1341
1342 * function.c: Define current_function_cannot_inline.
1343 (push_function_context_to): Save it.
1344 (pop_function_context_from): Restore it.
1345 * function.h (struct function): Provide it a home.
1346 * output.h: Declare it.
1347 * integrate.c (function_cannot_inline_p): Check it.
1348
8b015896 1349Mon Jun 8 10:43:15 1998 Richard Henderson <rth@cygnus.com>
9a14a3ab 1350
8b015896
RH
1351 * expr.c (force_operand): Detect PIC address loads before
1352 splitting arithmetic.
2b4065a4 1353
8b015896 1354Mon Jun 8 09:22:38 PDT 1998 Jeff Law (law@cygnus.com)
209c9866
JL
1355
1356 * version.c: Bump for snapshot.
1357
79990a39
GS
1358Mon Jun 8 02:55:56 1998 Graham <grahams@rcp.co.uk>
1359
1360 * tree.c (tree_class_check): Add braces to eliminate ambigious
1361 else warning.
1362 (tree_check): Likewise.
1363
49fa02d9
L
1364Mon Jun 8 02:49:23 1998 H.J. Lu (hjl@gnu.org)
1365
1366 * reg-stack.c (subst_stack_regs_pat): Make sure the top of
1367 stack is the destination for conditional move insn.
1368
52267fcb
JM
1369Mon Jun 8 01:21:13 1998 Jason Merrill <jason@yorick.cygnus.com>
1370
1371 * tree.h (TREE_VEC_END): Cast unused value to void.
1372
1373 * i386.c (print_operand): Use %lx for long operand.
1374
2b01d264
RH
1375Mon Jun 8 00:04:07 1998 Richard Henderson <rth@cygnus.com>
1376
1377 * alpha.c (summarize_insn): Ignore rtl slot format 'i'.
1378
cb9e12a7
JC
1379Sun Jun 7 14:15:45 1998 John Carr <jfc@mit.edu>
1380
1381 * sol2.h (INIT_SUBTARGET_OPTABS): Use Solaris libc float/long long
1382 conversion functions.
1383
b53beeb2
RH
1384Sun Jun 7 14:02:58 1998 Richard Henderson <rth@cygnus.com>
1385
1386 * toplev.c (flag_exceptions): Default to 0.
1387 (compile_file): Remove flag_exceptions == 2 hack.
1388 (main): Call lang_init_options.
1389 * tree.h: Declare it.
1390 * c-lang.c: Implement it.
1391 * objc/objc-act.c: Likewise.
1392
dfdfa60f
DE
1393Sun Jun 7 12:27:30 1998 David Edelsohn <edelsohn@mhpcc.edu>
1394
1395 * rs6000.md (restore_stack_block): Generate MEM and specify mode.
1396 * rs6000.h (STACK_SAVEAREA_MODE): SAVE_FUNCTION is VOIDmode.
1397 * rs6000.c (rs6000_output_load_toc_table): Use fputs.
1398 (output_function_profiler): Use asm_fprintf and fputs.
1399
83e0821b
KG
1400Sat Jun 6 12:17:12 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1401
1402 * gencheck.c: Remove redundant stdio.h include. Add a definition
1403 of xmalloc for when we are forced to link with alloca.o.
1404
1405 * reload1.c (reload_reg_free_for_value_p): Use `(unsigned)1'
1406 instead of `1U'.
1407
1408 * fold-const.c (constant_boolean_node): Make definition static to
1409 match the prototype.
1410
6ff0d2a0
PB
1411Fri Jun 5 15:53:17 1998 Per Bothner <bothner@cygnus.com>
1412
1413 * gcc.c (lang_specific_pre_link): New LANG_SPECIFIC_DRIVER function.
1414 (lang_specific_extra_outfiles): New LANG_SPECIFIC_DRIVER variable.
1415 (do_spec, input_filename, input_filename_length): Make public.
1416 (main): Adjust outfiles allocation by lang_specific_extra_outfiles.
1417 Call lang_specific_pre_link befor elinking.
1418
2db45993
JL
1419Fri Jun 5 12:29:28 1998 Jeffrey A Law (law@cygnus.com)
1420
1421 * haifa-sched.c (rank_for_schedule): For "equally good insns", prefer
1422 the insn which has the most insns dependent on it.
1423
74186471
JC
1424Fri Jun 5 09:03:22 1998 John Carr <jfc@mit.edu>
1425
1426 * alias.c (find_base_value): Avoid reading past end of reg_base_value.
1427
989f090c
RH
1428Fri Jun 5 03:05:34 1998 Richard Henderson <rth@cygnus.com>
1429
1430 * alpha.md (insxh-1): New insxl pattern for combine.
1431
b657fc39
L
1432Fri Jun 5 01:12:15 1998 H.J. Lu (hjl@gnu.org)
1433
1434 * i386/i386.c (output_fp_conditional_move): New function
1435 to output floating point conditional move.
1436 (output_int_conditional_move): New function to output integer
1437 conditional move.
1438
1439 * i386/i386.md (movsicci+5, movhicc+5, movdicc+5): Call
1440 output_int_conditional_move () to output int conditional move.
1441 (movsfcc+5, movdfcc+5, movxfcc+5): Call
1442 output_fp_conditional_move () to output floating point
1443 conditional move.
1444
1445 * i386/i386.c (put_condition_code): In INT mode, check
1446 cc_prev_status.flags & CC_NO_OVERFLOW for GE and LT.
1447
202fe2d6
DB
1448Thu Jun 4 16:09:51 1998 Dave Brolley <brolley@cygnus.com>
1449
1450 * dbxout.c (dbxout_type): Output arrays of bits as if
1451 they were bitstrings for Chill
1452
a260abc9
DE
1453Thu Jun 4 14:35:27 1998 David Edelsohn <edelsohn@mhpcc.edu>
1454
1455 * tree.c (get_inner_array_type): New function.
1456 * tree.h (get_inner_array_type): Prototype.
1457 * expr.h (STACK_SAVEAREA_MODE): New macro.
1458 * expr.c (expand_builtin_setjmp): Initialize sa_mode using
1459 STACK_SAVEAREA_MODE.
1460 (expand_builtin_longjmp): Likewise.
1461 * explow.c (emit_stack_save): Likewise.
1462 (allocate_dynamic_stack_space): Use Pmode not insn_operand_mode.
1463
1464 * rs6000/aix41.h (ASM_CPU_SPEC): Define relative to ASM_DEFAULT_SPEC.
1465 (CPP_CPU_SPEC): Define relative to CPU_DEFAULT_SPEC.
1466 * rs6000/aix43.h: New file.
1467 * rs6000/t-aix43: New file.
1468 * rs6000/x-aix41: New file.
1469 * rs6000/x-aix43: New file.
1470 * configure.in (rs6000-ibm-aix*): Use them.
1471 * rs6000/powerpc.h: Delete.
1472 * rs6000/sysv4.h: Move necessary powerpc.h definitions to here.
1473 * rs6000/netware.h: and here.
1474 * rs6000/win-nt.h: and here.
1475
1476 * rs6000/rs6000.c (processor_target_table, 620): Do not affect
1477 MASK_POWERPC64.
1478 (rs6000_override_options): Ignore flag_pic for AIX.
1479 (rs6000_immed_double_const): Delete.
1480 (u_short_cint_operand): Don't assume 32-bit CONST_INT.
1481 (reg_or_u_short_operand): Don't assume 32-bit CONST_INT.
1482 (num_insns_constant): mask64_operand() is 2 insns.
1483 (logical_operand): Don't assume 32-bit CONST_INT.
1484 (non_logical_cint_operand): Don't assume 32-bit CONST_INT.
1485 (easy_fp_constant): Any CONST_DOUBLE_HIGH is okay for 64-bit.
1486 (mask_constant): HOST_WIDE_INT parameter.
1487 (non_and_cint_operand): Delete.
1488 (mask64_operand): New function.
1489 (and64_operand): New function.
1490 (function_arg_advance): DImode arguments do not need special
1491 alignment when 64-bit.
1492 (function_arg): Likewise.
1493 (setup_incoming_varargs): Reverse reg_size assignment.
1494 (print_operand): HOST_WIDE_INT second parameter.
1495 (print_operand, 'B'): New case.
1496 (print_operand, 'M'): Fix typo in lossage string.
1497 (print_operandm 'S'): New case.
1498 (rs6000_stack_info): Reverse reg_size assignment. Use total_raw_size
1499 to compute AIX push_p. Use reg_size to compute {cr,lr}_save_offset.
1500 (rs6000_output_load_toc_table): Reverse init_ptr assignment. Use
1501 TARGET_64BIT not TARGET_POWERPC64. Convert fprintf to fputs.
1502 Load GOT highpart, don't add it. Add lowpart with {cal|la}.
1503 (rs6000_allocate_stack_space): Use {cal|la}.
1504 (output_epilog): Use {cal|la}
1505 (output_function_profiler): Add call glue to mcount call.
1506 Load GOT highpart, don't add it. Add lowpart with {cal|la}.
1507
1508 * rs6000/rs6000.h (TARGET_SWITCHES): Add powerpc64.
1509 (STACK_BOUNDARY): Depend on TARGET_32BIT.
1510 (ADJUST_FIELD_ALIGN): Calculate array alignment using innermost type.
1511 (CONST_OK_FOR_LETTER_P): Don't assume 32-bit CONST_INT.
1512 (EXTRA_CONSTRAINTS): Remove NT 'S' and 'T'. Replace 'S' with
1513 64-bit mask operand.
1514 (RS6000_SAVE_TOC): Depend on TARGET_32BIT.
1515 (STACK_SAVEAREA_MODE): New macro.
1516 (LEGITIMATE_CONSTANT_P): DImode okay for 64bit.
1517 (LEGITIMIZE_RELOAD_ADDRESS): New macro.
1518 (RTX_COSTS, AND/IOR/XOR): Reflect current machine description.
1519 (ASM_FILE_START): Emit 64-bit ABI directive.
1520 (ASM_DECLARE_FUNCTION_NAME): Align CSECT on doubleword in 64-bit mode.
1521 (ASM_OUTPUT_SPECIAL_POOL_ENTRY): DImode okay for 64-bit.
1522 (PREDICATE_CODES): Add "and64_operand" and "mask64_operand".
1523 Delete "non_and_cint_operand". "input_operand" includes CONST_DOUBLE.
1524
1525 * rs6000/rs6000.md (iorsi3, xorsi3): Use HOST_WIDE_INT for mask.
1526 Restore define_splits.
1527 (floatsidf2, floatunssidf2): Remove !TARGET_POWERPC64 final constraint.
1528 (floatsidf2_internal, floatunssidf2_internal2): Likewise.
1529 Do not specify base register operand mode.
1530 (floatsidf2_loadaddr): Do not specify base register operand mode.
1531 (floatsidf2_store1, floatsidf2_store2): Operand 1 must be base
1532 register; do not specify mode. Remove !TARGET_POWERPC64 final
1533 constraint.
1534 (floatsidf2_load): Do not specify base register operand mode. Remove
1535 !TARGET_POWERPC64 final constraint.
1536 (fix_truncdfsi2_internal, fix_truncdfsi2_{store,load}): Do not specify
1537 base register operand mode.
1538 (adddi3): Split large constants early.
1539 (absdi3): Shift by 63, not 31.
1540 (*mulsidi3_ppc64): New pattern.
1541 (rotldi3): Add masking combiner patterns.
1542 (anddi3): Add rldic{r,l} masking. Remove split of large constants
1543 because PPC insns zero-extend.
1544 (iordi3, xordi3): Split large constants early.
1545 (movsi matcher): Remove S and T constraints.
1546 (movsf const_double): create SImode constant from TARGET_DOUBLE.
1547 (movdf_hardfloat32): Add default abort() case.
1548 (movdf easy_fp_const): create DImode constant from TARGET_DOUBLE.
1549 (movdi): Remove 64-bit constant generator. Try to convert
1550 CONST_DOUBLE to CONST_INT. Handle TOC memory constants.
1551 (movdi_32): Add default abort() case.
1552 (movdi_64): Add numerous ways to split 64-bit constants.
1553 Make catch-all define_split more optimal and never FAIL.
1554 (movti_ppc64): Add default abort() case.
1555 (allocate_stack): Remove operand modes. Use Pmode.
1556 (restore_stack_block): Remove operand modes. Generate Pmode
1557 temporary.
1558 (save_stack_nonlocal, restore_stack_nonlocal): Generate Pmode
1559 temporary. Save area is double Pmode.
1560 (call_indirect_aix64, call_value_indirect_aix64): New patterns.
1561 (call, call_value): Do not specify address operand mode. Choose
1562 appropriate AIX ABI.
1563 (*call_local64, *ret_call_local64): New patterns.
1564 (*call_nonlocal_aix64, *ret_call_nonlocal_aix64): New patterns.
1565 (*ret_call_nonlocal_aix32): Use call_value_indirect for REG.
1566 (compare): Materialize DImode truthvalues.
1567
ff439b5f
CB
1568Thu Jun 4 01:26:57 1998 Craig Burley <burley@gnu.org>
1569
1570 * expr.c (safe_from_p): Avoid combinatorial explosion
1571 over duplicate SAVE_EXPRs by ensuring we never recurse
1572 on one that has already been visited.
1573
7d2a46a8
GS
1574Thu Jun 4 00:54:21 1998 Graham <grahams@rcp.co.uk>
1575
1576 * loop.c (check_dbra_loop): Initialise final_value before
1577 normalizing the loop.
1578
f5470689
R
1579Wed Jun 3 20:00:04 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1580
1581 * reload1.c (reload_reg_free_for_value_p): New arguments out and
1582 reloadnum. Changed all callers.
1583
9b91d8f4
UD
15841998-06-03 Ulrich Drepper <drepper@cygnus.com>
1585
1586 * system.h: Add _() and N_() macros in preparation for gettext.
1587
7fdc2757
AS
1588Wed Jun 3 11:02:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1589
bc516719
AS
1590 * c-common.c (check_format_info): Put back check for C9x `hh'
1591 length modifier. Warn about %n format writing into const. Remove
1592 obsolete comment.
9b91d8f4 1593 (format_char_info): Fix comments.
bc516719 1594
7fdc2757
AS
1595 * configure.in: Set float_format to m68k for all m68k targets that
1596 do not override LONG_DOUBLE_TYPE_SIZE.
1597 * config/float-m68k.h: New file.
1598
dc2a47ed
RH
1599Tue Jun 2 23:14:01 1998 Richard Henderson <rth@cygnus.com>
1600
1601 * jump.c (jump_optimize): Remove debug messages accidentally left in
1602 with the previous change.
1603
f0348c25
RH
1604Tue Jun 2 22:46:08 1998 Richard Henderson <rth@cygnus.com>
1605
1606 * expr.c (store_expr): Revert stray patch associated with
1607 1998-05-23 commit.
1608
4f4f436f
RH
1609Tue Jun 2 21:59:01 1998 Richard Henderson <rth@cygnus.com>
1610
1611 * jump.c (rtx_unsafe_p): New function.
1612 (jump_optimize): Use it on if/then/else transformations and
1613 conditional move transformations.
1614
df0e526f
AS
1615Tue Jun 2 22:50:10 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1616
1617 * fold-const.c (fold, case EQ_EXPR): When folding VAR++ == CONST
1618 or VAR-- == CONST construct a proper mask if VAR is a bitfield.
1619 Cope with CONST being out of range for the bitfield.
1620
2638126a
BS
1621Tue Jun 2 22:28:31 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
1622
1623 * expr.c (emit_move_insn_1): When moving complex values in several
1624 steps, emit a CLOBBER to show the destination dies.
1625
6c8538cc
JL
1626Tue Jun 2 22:17:26 1998 Jeffrey A Law (law@cygnus.com)
1627
ccdb9251
JL
1628 * Makefile.in (site.exp): Use the object testsuite directory as
1629 the temporary directory.
1630
6c8538cc
JL
1631 * expr.c (expand_expr, case ADDR_EXPR): Handle taking the
1632 address of an ADDRESSOF rtx.
1633
0bc02db4
MS
16341998-06-02 Mike Stump <mrs@wrs.com>
1635
1636 * expr.c (expand_builtin_setjmp): Handle BUILTIN_SETJMP_FRAME_VALUE.
1637 * i960.h (SETUP_FRAME_ADDRESSES, BUILTIN_SETJMP_FRAME_VALUE): Define.
1638 * i960.md (ret, flush_register_windows): Define.
1639 (nonlocal_goto): Likewise. Nested function nonlocal gotos don't
1640 work yet.
1641 * tm.texi (BUILTIN_SETJMP_FRAME_VALUE): Document new macro.
1642
d46f7484
RH
1643Tue Jun 2 14:02:38 1998 Richard Henderson <rth@cygnus.com>
1644
1645 * alpha.md (divsi3, udivsi3, modsi3, umodsi3): Enable, and work
1646 around an OSF/1 library bug wrt sign-extension of inputs.
1647
e3c81d20
RH
1648Tue Jun 2 13:02:44 1998 Richard Henderson <rth@cygnus.com>
1649
1650 * vax/netbsd.h (DWARF2_UNWIND_INFO): Must be undef, not defined 0.
1651
44ec7e59 1652Mon Jun 1 03:44:03 1998 Catherine Moore <clm@cygnus.com>
9b91d8f4 1653
44ec7e59
CM
1654 * config/sh/sh.h (MAX_OFILE_ALIGNMENT): Define.
1655
1656 * varasm.c (assemble_variable): Augment alignment warning.
1657
9224220f
MM
1658Mon Jun 1 12:14:28 1998 Michael Meissner <meissner@cygnus.com>
1659
1660 * config/fp-bit.c (_fp{add,div}_parts): Return correct IEEE result
1661 in the presence of IEEE negative 0's.
1662
726e2d54
JW
1663Sun May 31 16:11:41 1998 John Wehle (john@feith.com)
1664
1665 * reload.c (find_reloads): Record the existing mode if
1666 operand_mode == VOIDmode before replacing a register with
1667 a constant.
1668 * i386.md (tstsi, tsthi, tstqi, tstsf, tstdf, tstxf): Set
1669 i386_compare_op1 to const0_rtx for the benefit of the
1670 conditional move patterns.
1671 (movsicc, movhicc, movsfcc, movdfcc, movxfcc, movdicc): Rewrite
1672 based on suggestions from Jim Wilson.
1673
97f959a5
JL
1674Sun May 31 00:44:02 PDT 1998 Jeff Law (law@cygnus.com)
1675
1676 * version.c: Bump for snapshot.
1677
b5662334
BK
1678Sun May 31 00:34:17 1998 Bruce Korb <korbb@datadesign.com>
1679
1680 * Makefile.in (fixinc.sh): Update rules again.
1681
674032e2
JL
1682Sun May 31 00:27:47 1998 Jeffrey A Law (law@cygnus.com)
1683
1684 * extend.texi: Bring back reference to trampoline paper.
1685
1686Sun May 31 00:22:34 1998 Ulrich Drepper <drepper@cygnus.com>
1687
1688 * Makefile.in (USER_H): Add stdbool.h.
1689 * ginclude/stdbool.h: New file.
1690
d3903c22
JL
1691Fri May 29 01:48:25 1998 Jeffrey A Law (law@cygnus.com)
1692
c71407f9
JL
1693 * jump.c (thread_jumps): Do not look at the NOTE_LINE_NUMBER
1694 of a non-note insn.
1695
d3903c22
JL
1696 * gcse.c (pre_delete): Fix code to determine the mode of
1697 the reaching pseudo register.
1698
8376d400
BS
1699Fri May 29 01:07:28 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
1700
1701 * Makefile.in (GEN): Add gencheck
1702 (STAGESTUFF): Add tree-check.h and gencheck.
1703
71d085b0
BK
1704Fri May 29 00:57:37 1998 Bruce Korb <korbb@datadesign.com>
1705
1706 * Makefile.in (cstamp-h.in): Remove before trying to recreate.
1707 (fixinc.sh): Set some additional environment variables before
1708 calling mkfixinc.sh.
1709
f4d1453e
JL
1710Thu May 28 12:57:05 1998 Jeffrey A Law (law@cygnus.com)
1711
1712 * reload.c (find_reloads): Do not force a reloads of match_operators.
9b91d8f4 1713
9f8e6243
AM
1714Thu May 28 10:22:22 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
1715
1716 * except.h (remove_handler): Add new prototype.
1717 * except.c (remove_handler): New function to remove handlers
1718 from an exception region.
1719 * flow.c (find_basic_blocks_1): Remove handlers from regions when
1720 handler label is deleted; remove exception regions with no handlers.
1721
d05a5492
MM
1722Thu May 28 09:36:39 1998 Michael Meissner <meissner@cygnus.com>
1723
1724 * except.h (rtx): Define rtx type correctly if needed.
1725 * function.h (rtx): Ditto.
1726 (tree): Define tree type correctly if needed.
1727
1728 * c-pragma.c (toplevel): Include rtl.h.
1729
1730 * stor-layout.c (toplevel): Move include of rtl.h before
1731 except.h.
1732
1733 * Makefile.in (c-pragma.o): Add except.h, rtl.h dependencies.
1734 (tree.o): Add except.h dependency.
9b91d8f4 1735
ed385fd9
JL
1736Wed May 27 22:02:40 1998 Jeffrey A Law (law@cygnus.com)
1737
5bc80b30
JL
1738 * reload1.c: Revert accidental checkin.
1739
ed385fd9
JL
1740 * configure.lang: Fix thinko when adding a definition for
1741 target_alias to the Makefile.
1742
00c26dc2
CM
1743Wed May 27 02:50:00 1998 Catherine Moore (clm@cygnus.com)
1744
9b91d8f4 1745 * config/sparc/lb1spc.asm (.rem and .urem): Replace
00c26dc2
CM
1746 routines.
1747
d499463f
RE
1748Wed May 27 02:48:31 1998 Richard Earnshaw (rearnsha@arm.com)
1749
1750 * arm.c (arm_gen_constant): Rework to eliminate uninitialized
1751 variable warnings. Don't generate scratch registers if only
1752 counting insns.
1753 (find_barrier): Eliminate unused variable SRC.
1754
62fe00be
MH
17551998-05-27 Manfred Hollstein <manfred@s-direktnet.de>
1756
1757 * toplev.h (rtx_def): Provide global declaration to avoid
1758 `limited scope' warnings.
1759
1a4bf22f
MK
1760Tue May 26 23:47:52 1998 Mumit Khan <khan@xraylith.wisc.edu>
1761
1762 * Makefile.in (gencheck.o): Use HOST_CC.
1763 * i386/t-mingw32: New file.
1764 * configure.in (i386-*-mingw32*): Use.
1765
4d818c85
RE
1766Tue May 26 07:31:04 1998 Richard Earnshaw (rearnsha@arm.com)
1767
1768 * arm.c (bad_signed_byte_operand): New predicate function.
1769 * arm.h (PREDICATE_CODES): Add it to the list.
1770 * arm.md (*extendqi[sh]i_insn): Split any addresses that ldrsb
1771 can't handle.
1772 (define_split): Two new splits for above insns.
1773
ad076f4e
RE
1774 * arm.c: Include toplev.h.
1775 (arm_override_options): Add parentheses around use of tune_flags.
1776 (arm_split_constant): Remove unused variable.
1777 (arm_gen_constant, arm_gen_movstrqi, add_constant): Likewise.
1778 (output_func_prologue, arm_expand_prologue): Likewise.
1779 (arm_canonicalize_comparison): Make I unsigned; rework constants
1780 accordignly. Add missing paratheses around << operation.
1781 (arm_rtx_costs): Correctly parenthesise MULT costs. Add a DEFAULT
1782 clause.
1783 ({load,store}_multiple_sequence): Initialize BASE_REG.
1784 (select_dominance_cc_mode): Add DEFAULT clauses.
1785 (broken_move): Return zero if the destination is not a register.
1786 (arm_reorg): Move unused REGNO declaration into the dead code.
1787 * arm.h (CANONICALIZE_COMPARISON): Ensure OP1 is updated.
1788
a1ec8ea1
JL
1789Mon May 25 22:49:56 PDT 1998 Jeff Law (law@cygnus.com)
1790
1791 * version.c: Bump for snapshot.
1792
c7f58590
JL
1793Mon May 25 11:56:24 PDT 1998 Jeff Law (law@cygnus.com)
1794
1795 * version.c: Bump for snapshot.
1796
33b019ad
DB
1797Mon May 25 14:00:13 1998 Dave Brolley <brolley@cygnus.com>
1798
1799 * cpperror.c (v_cpp_message): Remove static prototype.
1800 * cpplib.c (v_cpp_message): Move prototype to cpplib.h.
1801 * cpplib.h (v_cpp_message): Add protoptype.
1802 (stdarg.h,varargs.h): Needed for v_cpp_message prototype.
1803
61819ba5
JL
1804Sun May 24 20:36:15 PDT 1998 Jeff Law (law@cygnus.com)
1805
1806 * version.c: Bump for snapshot.
1807
f5c57ba7
JL
1808Sun May 24 02:08:57 PDT 1998 Jeff Law (law@cygnus.com)
1809
1810 * version.c: Bump for snapshot.
1811
7a87758d
AS
18121998-05-24 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1813
1814 * m68k.h: Declare more functions used in macros.
1815 (REG_CLASS_CONTENTS): Completely embrace initializer.
1816 * m68k.md (adddi3, subdi3): Add abort call to avoid warning
1817 about returning no value.
1818 * cse.c (find_best_addr): Declare p and found_better only if
1819 needed.
1820 * dbxout.c (dbxout_continue): Define only if DBX_CONTIN_LENGTH > 0.
1821 * dwarfout.c (string_length_attribute): #if 0 away.
1822 * function.c (expand_function_end): Define varible blktramp only
1823 if needed.
1824 * jump.c (find_insert_position): Define only if !HAVE_cc0.
1825 * loop.c (combine_givs_p): Define variable tem only if needed.
1826 * real.c: Comment out unused functions eabs, eround,
1827 e{24,53,64,113}toasc and eiinfin.
1828
1829
10ad38ca
AO
1830Sat May 23 23:44:53 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
1831
1832 * Makefile.in (boostrap2-lean, bootstrap3-lean,
1833 bootstrap4-lean): New targets.
1834
57fec042
JL
1835Sat May 23 23:35:14 1998 Jeffrey A Law (law@cygnus.com)
1836
1837 * warn_summary, test_summary: Moved into the contrib directory.
1838
97263b8c
MH
18391998-05-23 Manfred Hollstein <manfred@s-direktnet.de>
1840
e7f62ad3
MH
1841 * Makefile.in (ENQUIRE_CFLAGS, ENQUIRE_LDFLAGS): Move down to the end
1842 of the Makefile.
1843 (FLOAT_H_TEST): Likewise.
1844 (ENQUIRE): Likewise.
1845 (float.h-nat): Likewise.
1846 (float.h-cross): Likewise.
1847 (enquire): Likewise.
1848 (enquire.o): Likewise.
1849 (stmp-int-hdrs): Fix comment about enquire; depend upon gfloat.h.
1850 (stmp-headers): Move actions to stmp-int-hdrs, retaining only a
1851 no-op.
1852 (FLOAT_H): Remove old float.h-nat version; move current definition
1853 to CROSS_FLOAT_H location.
1854 (all.cross): Remove comments about enquire stuff.
1855
8d45987f
MH
1856 * Makefile.in (all.cross): Swap $(LIBGCC) and $(STMP_FIXPROTO).
1857 (rest.encap): Likewise.
e7f62ad3 1858 (libgcc2.ready): Depend upon $(STMP_FIXPROTO)
8d45987f 1859
97263b8c
MH
1860 * toplev.h (tree_node): Provide global declaration to avoid
1861 `limited scope' warnings.
1862
a8c24967
RL
1863Sat May 23 23:23:35 1998 Robert Lipe <robertl@dgii.com>
1864
1865 * test_summary: Display section breaks for each entry
1866 in a multilibbed target's output.
1867
bd070e1a
RH
18681998-05-23 Richard Henderson <rth@cygnus.com>
1869
1870 * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
1871 offset's mode is not ptr_mode, convert it.
1872
697073d9
JM
18731998-05-22 Jason Merrill <jason@yorick.cygnus.com>
1874
1875 * fold-const.c (ssize_binop): New fn.
1876 * tree.h: Declare it.
1877
07704a9a
RE
1878Fri May 22 03:42:05 1998 Richard Earnshaw (rearnsha@arm.com)
1879
9b91d8f4 1880 * genextract.c (print_path): Handle zero-length path as a special
07704a9a
RE
1881 case.
1882
911c3b7d
HPN
1883Fri May 22 01:38:07 1998 Hans-Peter Nilsson <hp@axis.se>
1884
1885 * cplus-dem.c (MBUF_SIZE): Bumped from 512 to 32767.
1886
75197b37
BS
1887Fri May 22 00:57:00 1998 Bernd Schmidt (crux@pool.informatik.rwth-aachen.de>
1888
1889 * final.c (JUMP_TABLES_IN_TEXT_SECTION): Provide a default value.
1890 (shorten_branches, final_scan_insn): Test value of
1891 JUMP_TABLES_IN_TEXT_SECTION instead of just testing whether it
1892 is defined.
1893 * tm.texi (JUMP_TABLES_IN_TEXT_SECTION): Corresponding changes.
1894 * arm/coff.h: Define JUMP_TABLES_IN_TEXT_SECTION to 1.
28ec9418 1895 * arm/tcoff.h: Likewise.
75197b37
BS
1896 * i386/386bsd.h: Likewise.
1897 * i386/freebsd-elf.h: Likewise.
1898 * i386/freebsd.h: Likewise.
1899 * i386/netbsd.h: Likewise.
1900 * i386/ptx4-i.h: Likewise.
1901 * i386/sysv4.h: Likewise.
1902 * pa/pa.h: Likewise.
1903 * rs6000/linux.h: Likewise.
1904 * rs6000/rs6000.h: Likewise.
1905 * sh/sh.h: Likewise.
1906 * sparc/sp64-elf.h: Likewise.
1907 * v850/v850.h: Likewise.
1908 * rs6000/sysv4.h: Define JUMP_TABLES_IN_TEXT_SECTION to 0.
1909 * i386/linux.h: Define JUMP_TABLES_IN_TEXT_SECTION to (flag_pic).
1910
1a29f703
R
1911Thu May 21 19:50:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1912
1913 * regmove.c (gen_add3_insn): New function.
1914 (fixup_match_2): Use it instead of calling gen_addsi3.
1915
aee21ba9
JL
1916Thu May 21 23:09:50 1998 Jeffrey A Law (law@cygnus.com)
1917
37433f49
JL
1918 * Makefile.in (gencheck): Depend on HOST_LIBDEPS.
1919
aee21ba9
JL
1920 * alias.c (rtx_equal_for_memref_p): Handle SCRATCH as a memory
1921 address.
1922
12b195d9
ML
1923Thu May 21 20:18:13 1998 Martin von Loewis <loewis@informatik.hu-berlin.de>
1924
1925 * Makefile.in (TREE_H): Add tree-check.h.
1926 (tree-check.h, gencheck): New targets.
1927 * gencheck.c: New file.
1928 * tree.c (tree_check, tree_class_check): New functions.
1929 * tree.h (TREE_CHECK, TREE_CLASS_CHECK): Define.
1930 (TYPE_CHECK, DECL_CHECK): Define.
1931 Modify all access macros to use generated checking macros.
1932
9e423e6d
JW
1933Wed May 20 23:44:28 EDT 1998 John Wehle (john@feith.com)
1934
1935 * acconfig.h (HAVE_GAS_MAX_SKIP_P2ALIGN): New tag.
1936 * configure.in: Check for it.
1937 * i386/gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Use it.
1938 * final.c (uid_align, uid_shuid, label_align): Make static.
1939 (label_align): Change type to struct label_alignment pointer.
1940 (LABEL_TO_ALIGNMENT, shorten_branches): Update due to type change.
1941 (LABEL_TO_MAX_SKIP): Define.
1942 (LABEL_ALIGN_MAX_SKIP, LOOP_ALIGN_MAX_SKIP,
1943 LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Provide defaults.
1944 (shorten_branches): Record the maximum bytes to skip when
1945 aligning a label.
1946 (final_scan_insn): Use the maximum bytes to skip when aligning a label
1947 if ASM_OUTPUT_MAX_SKIP_ALIGN is available.
1948 * i386.h (LOOP_ALIGN_MAX_SKIP,
1949 LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Define.
1950 * i386.c (override_options): i386_align_jumps and i386_align_loops
1951 default to 4 if ASM_OUTPUT_MAX_SKIP_ALIGN is available.
1952 * invoke.texi: Document new i386 align-loops and align-jumps behavior.
1953
1cc75298
MM
19541998-05-21 Mark Mitchell <mmitchell@usa.net>
1955
1956 * cplus-dem.c (do_type): Handle volatile qualification.
9b91d8f4 1957
178ca02d
PB
1958Thu May 21 12:23:17 1998 Per Bothner <bothner@cygnus.com>
1959
1960 * function.c (init_function_start): Don't call emit_line_note if
1961 lineno is 0. (Can happen when compiling Java .class files.)
1962
cecbf6e2
R
1963Thu May 21 19:50:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1964
1965 * reload1.c (reload_reg_free_for_value_p): Fix RELOAD_FOR_INPUT
1966 end of lifetime and RELOAD_FOR_OUTPUT start of lifetime.
1967
b52ce03d
R
1968Thu May 21 19:32:27 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1969
1970 * combine.c (nonzero_bits): For paradoxical subregs, take
1971 LOAD_EXTENDED_OP into account.
1972
c8724862
DB
1973Thu May 21 11:51:15 1998 Dave Brolley <brolley@cygnus.com>
1974
1975 * configure.in (extra_c_objs): add prefix.o.
1976 (extra_cxx_objs): extra objects for C++ with cpplib.
1977 * configure: Regenerate.
1978
1979 * c-tree.h: (get_directive_line): Different prototype for cpplib.
1980 (GET_DIRECTIVE_LINE): Macro wrapper for get_directive_line.
1981
1982 * c-lex.h: (get_directive_line): Not needed here for cpplib.
1983
1984 * c-lex.c: (yy_cur,yy_lim,yy_get_token): Move to c-common.c.
1985 (GET_DIRECTIVE_LINE): Move to c-common.c and rename to get_directive_line.
1986
1987 * c-common.c (parse_in,parse_options,cpp_token): Declare for cpplib.
1988 (yy_cur,yy_lim,yy_get_token,get_directive,line): Moved here from c-lex.c
1989
fd97443c
KG
1990Thu May 21 09:04:42 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1991
1992 * gengenrtl.c (type_from_format, accessor_from_format): Change
1993 type of parameter `c' from `char' to `int'.
1994
0e4347ce
JL
1995Wed May 20 22:28:34 1998 Jeffrey A Law (law@cygnus.com)
1996
2a3edac9
JL
1997 * warn_summary, test_summary: New scripts from
1998 Kaveh Ghazi and Alexandre Oliva respectively.
1999
0e4347ce
JL
2000 * gcse.c (current_function_calls_longjmp): Declare.
2001
4e5a8d7b
JM
20021998-05-20 Jason Merrill <jason@yorick.cygnus.com>
2003
2004 * dwarf2out.c (base_type_die): Use int_size_in_bytes.
2005
7506f491
DE
2006Wed May 20 01:11:02 1998 Doug Evans (devans@cygnus.com)
2007 Jeff Law (law@cygnus.com)
2008
2009 * Global CSE and constant/copy propagation.
2010 * Makefile.in (OBJS): Add gcse.o
2011 (STAGESTUFF): Add *.gcse.
2012 (gcse.o): Add dependencies.
2013 (mostlyclean): Remove *.gcse and */*.gcse.
2014 * gcse.c: New file.
2015 * loop.c (loop_optimize): Move call to init_alias_analysis.
2016 * recog.c (validate_replace_src): New function.
2017 * toplev.c (gcse_dump): New global variable.
2018 (flag_gcse, gcse_time): Likewise.
2019 (compile_file): Initialize gcse_time and clean out the gcse dump
2020 file if necessary.
2021 (rest_of_compilation): Call gcse_main as requested. Dump RTL
2022 after gcse if requested.
2023 (main): Enable gcse for -O2 and above. Handle -dG. Enable gcse
2024 dumps for -da.
2025 * gcc.texi: Add gcse related internal documentation.
2026 * invoke.texi: Note new command line options for gcse.
2027 * tm.texi: Document AVOID_CCMODE_COPIES.
2028 * mips.h (AVOID_CCMODE_COPIES): Define.
2029
40859b41
JL
2030Tue May 19 22:31:20 1998 Jeffrey A Law (law@cygnus.com)
2031
2032 * Makefile.in (deduced.h): Only run scan-types if $(SYSTEM_HEADER_DIR)
2033 exists.
aef1617c 2034 (stmp-fixproto): Simlarly for running fixproto.
40859b41
JL
2035 * cross-make (SYSTEM_HEADER_DIR): Now $(tooldir)/sys-include.
2036
f85c8be7
JW
2037Tue May 19 19:08:52 1998 Jim Wilson <wilson@cygnus.com>
2038
2039 * config/mips/mips.c (double_memory_operand): Accept any MEM during
2040 reload when TARGET_64BIT.
2041
c7391272
JW
2042Tue May 19 18:21:25 1998 Jim Wilson <wilson@cygnus.com>
2043
2044 Finish incomplete change started by Kenner.
2045 * configure.in (*-*-linux-gnu*): Delete NO_STAB_H from xm_defines.
2046 (powerpcle-*-cygwin32): Delete xm_defines.
2047 * final.c, mips-tfile.c, xcoffout.c, config/mips/mips.c: Use
2048 HAVE_STAB_H instead of NO_STAB_H.
2049 * config/xm-linux.h (NO_STAB_H): Delete.
2050 (HAVE_STAB_H): Undefine.
2051 * config/i386/xm-go32.h (NO_STAB_H): Delete.
2052
af02da67
JW
20531998-05-19 Jim Wilson <wilson@cygnus.com>
2054
2055 * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Ignore
2056 LANG_TYPE trees with DECL_SOURCE_LINE of 0.
2057
79edd21c
TV
2058Tue May 19 15:07:54 1998 Todd Vierling <tv@netbsd.org>
2059
2060 * arm/netbsd.h: Ensure DWARF2_UNWIND_INFO is undefined.
2061
6e684430
R
2062Tue May 19 17:19:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2063
2064 * reload1.c (reload_reg_free_for_value_p): New function.
2065 (allocate_reload_reg, choose_reload_regs): Use it.
2066
7ecb5d27
AM
2067Tue May 19 11:51:00 EDT 1998 Andrew MacLeod (amacleod@cygnus.com)
2068
2069 * except.c (expand_start_catch): Correct logic for when to
2070 generate a new handler label, and when to use the old one.
2071
487a6e06
KG
2072Tue May 19 11:08:52 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2073
2074 * Makefile.in (print-rtl.o): Depend on bitmap.h.
2075 (dbxout.o): Depend on toplev.h.
2076 ($(SCHED_PREFIX)sched.o): Likewise.
2077 ($(out_object_file)): Likewise for system.h and toplev.h.
2078 (cppmain.o): Depend on gansidecl.h.
2079 (cpplib.o): Likewise.
2080 (cpperror.o): Likewise.
2081 (cppexp.o): Likewise.
2082 (cpphash.o): Likewise.
2083 (cppalloc.o): Likewise.
2084 (fix-header.o): Depend on cpplib.h and cpphash.h.
2085 (scan-decls.o): Depend on gansidecl.h.
2086
2087 * basic-block.h (free_regset_vector): Add prototype.
2088
2089 * cccp.c (check_precompiled): Mark parameter `fname' with
2090 ATTRIBUTE_UNUSED.
2091 (do_assert): Likewise for `op' and `keyword'.
2092 (do_unassert): Likewise.
2093 (do_line): Likewise for `keyword'.
2094 (do_error): Likewise for `op' and `keyword'.
2095 (do_warning): Likewise.
2096 (do_ident): Likewise for `keyword'.
2097 (do_pragma): Likewise for `limit', `op' and `keyword'.
2098 (do_sccs): Likewise.
2099 (do_if): Likewise for `keyword'.
2100 (do_elif): Likewise.
2101 (do_else): Likewise.
2102 (do_endif): Likewise.
2103
2104 * collect2.c (getenv): Remove redundant prototype.
2105 (collect_exit, collect_execute, dump_file): Likewise.
2106 (dump_list): Wrap prototype and definition in COLLECT_EXPORT_LIST.
2107 (dump_prefix_list): Hide prototype and definition.
2108
2109 * sparc.c: Include toplev.h.
2110 (intreg_operand): Mark parameter `mode' with ATTRIBUTE_UNUSED.
2111 (symbolic_memory_operand): Likewise.
2112 (sp64_medium_pic_operand): Likewise.
2113 (data_segment_operand): Likewise.
2114 (text_segment_operand): Likewise.
2115 (splittable_symbolic_memory_operand): Likewise.
2116 (splittable_immediate_memory_operand): Likewise.
2117 (eq_or_neq): Likewise.
2118 (normal_comp_operator): Likewise.
2119 (noov_compare_op): Likewise.
2120 (v9_regcmp_op): Likewise.
2121 (v8plus_regcmp_op): Likewise.
2122 (extend_op): Likewise.
2123 (cc_arithop): Likewise.
2124 (cc_arithopn): Likewise.
2125 (small_int): Likewise.
2126 (uns_small_int): Likewise.
2127 (clobbered_register): Likewise.
2128 (legitimize_pic_address): Likewise.
2129 (delay_operand): Likewise.
2130 (sparc_builtin_saveregs): Remove unused variable `stdarg'.
2131
2132 * sparc.h (order_regs_for_local_alloc, eligible_for_return_delay,
2133 sparc_issue_rate, v8plus_regcmp_p): Add prototypes.
2134
2135 * sparc.md (cmpdi_v8plus): Add abort for default case in switch.
2136
2137 * cppalloc.c: Include gansidecl.h.
2138
2139 * cpperror.c: Include stdarg.h/varargs.h and gansidecl.h.
2140 (cpp_file_line_for_message): Mark parameter `pfile' with
2141 ATTRIBUTE_UNUSED.
2142 (v_cpp_message): New function.
2143 (cpp_message): Use it. Also convert to variable arguments.
2144 (cpp_fatal): Likewise.
2145 (cpp_pfatal_with_name): Constify parameter `name'.
2146
2147 * cppexp.c: Move gansidecl.h before cpplib.h.
2148 * cpphash.c: Likewise.
2149 * cpphash.h (hashf, delete_macro): Add prototypes.
2150
2151 * cpplib.c: Include stdarg.h/varargs.h and move gansidecl.h before
2152 cpplib.h. Don't include errno.h.
2153 (update_path): Add arguments to prototype.
2154 (cpp_fatal, cpp_file_line_for_message, cpp_message, delete_macro,
2155 cpp_print_containing_files): Remove redundant prototypes.
2156 (cpp_hash_cleanup, add_import, append_include_chain,
2157 make_assertion, path_include, initialize_builtins,
2158 initialize_char_syntax, finclude, validate_else, comp_def_part,
2159 lookup_import, redundant_include_p, is_system_include,
2160 read_name_map, read_filename_string, open_include_file,
2161 check_macro_name, compare_defs, compare_token_lists,
2162 eval_if_expression, change_newlines): Add prototype arguments.
2163 (hashf): Remove redundant prototype.
2164 (read_token_list, free_token_list, safe_read, xcalloc, savestring,
2165 conditional_skip, skip_if_group): Add prototype arguments.
2166 (fdopen): Remove redundant prototype.
2167 (do_define, do_line, do_include, do_undef, do_error, do_pragma,
2168 do_ident, do_if, do_xifdef, do_else, do_elif, do_endif, do_sccs,
2169 do_once, do_assert, do_unassert, do_warning): Add prototype arguments.
2170 (struct directive): Add prototype arguments to function pointer
2171 member `func'.
2172 (handle_directive): Add missing arguments to call to `do_line'.
2173 (do_include): Mark parameters `unused1' and `unused2' with
2174 ATTRIBUTE_UNUSED.
2175 (do_line): Likewise for `keyword' and new parameters `unused1' and
2176 `unused2'.
2177 (do_error): Likewise for `keyword'.
2178 (do_warning): Likewise. Also add missing argument `pfile' in call
2179 to cpp_pedwarn.
2180 (do_once): Mark parameter `keyword', `unused1' and `unused2' with
9b91d8f4 2181 ATTRIBUTE_UNUSED.
487a6e06
KG
2182 (do_ident): Likewise for `keyword', `buf' and `limit'.
2183 (do_pragma): Likewise. Also add missing arguments in call to do_once.
2184 (do_sccs): Mark parameter `keyword', `buf' and `limit' with
9b91d8f4 2185 ATTRIBUTE_UNUSED.
487a6e06
KG
2186 (do_if): Likewise for `keyword'.
2187 (do_elif): Likewise.
2188 (eval_if_expression): Likewise for `buf' and `length'.
2189 (do_xifdef): Likewise for `unused1' and `unused2'.
2190 (do_else): Likewise for `keyword', `buf' and `limit'.
2191 (do_endif): Likewise.
2192 (parse_name): Add missing argument `pfile' in call to cpp_pedwarn.
2193 (cpp_handle_options): Remove superfluous NULL argument in call to
2194 cpp_fatal.
2195 (cpp_handle_options): Likewise.
2196 (do_assert): Mark parameter `keyword', `buf' and `limit' with
2197 ATTRIBUTE_UNUSED.
2198 (do_unassert): Likewise.
2199 (cpp_print_file_and_line): Add missing argument `pfile' in call to
2200 cpp_file_line_for_message.
2201 (v_cpp_error): New function.
2202 (cpp_error): Use it. Also accept variable arguments.
2203 (v_cpp_warning): New function.
2204 (cpp_warning): Use it. Also accept variable arguments.
2205 (cpp_pedwarn): Accept variable arguments.
2206 (v_cpp_error_with_line): New function
2207 (cpp_error_with_line): Use it. Accept variable arguments.
2208 (v_cpp_warning_with_line): New function.
2209 (cpp_warning_with_line): Use it. Accept variable arguments. Hide
2210 definition.
2211 (cpp_pedwarn_with_line): Accept variable arguments.
2212 (cpp_pedwarn_with_file_and_line): Likewise.
2213 (cpp_error_from_errno): Constify parameter `name'. Add missing
2214 argument `pfile' in call to cpp_file_line_for_message.
2215 (cpp_perror_with_name): Constify parameter `name'.
2216
2217 * cpplib.h: Define PARAMS() in terms of PROTO().
2218 (fatal): Remove redundant prototype.
2219 (cpp_error, cpp_warning, cpp_pedwarn, cpp_error_with_line,
2220 cpp_pedwarn_with_line, cpp_pedwarn_with_file_and_line,
9b91d8f4 2221 cpp_error_from_errno, cpp_perror_with_name, cpp_pfatal_with_name,
487a6e06
KG
2222 cpp_fatal, cpp_message, cpp_pfatal_with_name,
2223 cpp_file_line_for_message, cpp_print_containing_files): Add
2224 arguments to prototypes.
2225 (scan_decls, cpp_finish): Add prototypes.
2226
2227 * cppmain.c: Include gansidecl.h.
2228 (main): Remove unused variable `i'.
9b91d8f4 2229
487a6e06
KG
2230 * dbxout.c: Include toplev.h.
2231
2232 * demangle.h (do_tlink, collect_execute, collect_exit,
2233 collect_wait, dump_file, file_exists): Add prototype.
2234
2235 * dwarf2out.c (dwarf_type_encoding_name, decl_start_label): Hide
2236 prototype and definition.
2237 (gen_unspecified_parameters_die): Don't assign results of call to
2238 function new_die() to unused variable `parm_die'.
2239 (dwarf2out_line): Mark parameter `filename' with ATTRIBUTE_UNUSED.
2240 (dwarf2out_define): Likewise for `lineno' and `buffer'.
2241
2242 * dwarfout.c (output_unsigned_leb128, output_signed_leb128): Hide
2243 prototype and definition.
2244 (output_die): Add prototype arguments to function pointer arg.
2245 (output_unspecified_parameters_die): Mark parameter `arg' with
2246 ATTRIBUTE_UNUSED.
2247
2248 * except.c (output_exception_table_entry): Remove unused variable
2249 `eh_entry'.
2250
2251 * except.h (expand_fixup_region_start, expand_fixup_region_end):
2252 Add prototypes.
2253
2254 * expr.c (do_jump_by_parts_equality_rtx): Remove prototype.
2255
2256 * expr.h (do_jump_by_parts_equality_rtx): Add prototype.
2257
2258 * fix-header.c: Include stdarg.h/varargs.h, move gansidecl.h
2259 before cpplib.h, include cpphash.h, remove redundant prototype of
2260 cpp_fatal, don't define `const', add a prototype for `fatal'.
2261 (cpp_file_line_for_message): Add missing arguments `pfile'.
2262 (v_cpp_message): New function.
2263 (cpp_message): Use it.
2264 (v_fatal): New function.
2265 (fatal, cpp_fatal): Use it.
2266 (cpp_pfatal_with_name): Constify parameter `name'.
2267
2268 * flow.c (free_regset_vector): Remove redundant prototype.
2269
2270 * function.c (round_down): Wrap prototype and definition with
2271 macro ARGS_GROW_DOWNWARD.
2272 (record_insns): Wrap prototype and definition with
2273 defined (HAVE_prologue) || defined (HAVE_epilogue).
2274
2275 * gansidecl.h (ATTRIBUTE_PRINTF_4, ATTRIBUTE_PRINTF_5): New macros.
2276
2277 * gen-protos.c: Include gansidecl.h.
2278 (hashf): Don't make it static, constify parameter `name'.
2279
2280 * genattrtab.c (check_attr_test): Change XEXP() to XSTR() to match
2281 specifier %s in calls to function `fatal'.
2282
2283 * haifa-sched.c: Include toplev.h.
2284 (find_rgns): Remove unused variable `j'.
2285
2286 * integrate.c (note_modified_parmregs): Mark parameter `x' with
2287 ATTRIBUTE_UNUSED.
2288 (mark_stores): Likewise.
2289
2290 * jump.c (mark_modified_reg): Likewise.
2291
2292 * output.h (insn_current_reference_address): Add prototype.
2293 (eh_frame_section): Likewise.
2294
2295 * print-rtl.c: Include bitmap.h.
2296
2297 * reload1.c (reload): Wrap variables `note' and `next' in macro
2298 PRESERVE_DEATH_INFO_REGNO_P.
2299 (forget_old_reloads_1): Mark parameter `ignored' with
2300 ATTRIBUTE_UNUSED.
2301 (choose_reload_regs): Remove unused variable `in'.
2302 (reload_cse_invalidate_mem): Mark parameter `ignore' with
2303 ATTRIBUTE_UNUSED.
2304 (reload_cse_check_clobber): Likewise.
2305
2306 * rtl.h (expand_null_return, reg_classes_intersect_p): Add prototype.
2307 (mark_elimination): Fix typo in prototype.
2308
2309 * scan-decls.c: Include gansidecl.h.
2310
2311 * tree.h (using_eh_for_cleanups, supports_one_only): Add prototype.
9b91d8f4 2312
c7fdfd49
JL
2313Mon May 18 22:37:33 1998 Jeffrey A Law (law@cygnus.com)
2314
2315 * function.c (identify_blocks): Fix thinko when setting the
2316 block number for NOTE_INSN_BLOCK_END.
2317
53f2d033
NC
2318Mon May 18 15:30:42 1998 Nick Clifton <nickc@cygnus.com>
2319
f122eb7a 2320 * config/v850/lib1funcs.asm: Add .text pseudo op to start of
9b91d8f4 2321 ___udivsi3.
f122eb7a
NC
2322
2323 * config/v850/lib1funcs.asm: Fix .size pseudo ops to use three
9b91d8f4 2324 underscores for the prefixes to the names of the maths functions.
f122eb7a 2325
53f2d033
NC
2326 * dbxout.c (dbxout_parms): Revert to using DECL_ARG_TYPE. Add
2327 comment explaining why.
2328
ead17059
RH
2329Mon May 18 13:20:23 1998 Richard Henderson <rth@cygnus.com>
2330
2331 * tree.h (TYPE_SIZE_UNIT): New.
2332 (struct tree_type): Add size_unit member.
2333 * stor-layout.c (layout_type): Initialize it.
2334 * expr.c (get_inner_reference) [ARRAY_REF]: Use it.
2335 * tree.c (size_in_bytes, int_size_in_bytes): Likewise.
2336
069b95ce
RE
2337Mon May 18 12:07:37 1998 Richard Earnshaw (rearnsha@arm.com)
2338
2339 * stor-layout.c (layout_record): Fix off-by-one error when checking
2340 length of the TYPE_BINFO vector.
2341
972a4adb
NC
2342Mon May 18 10:59:23 1998 Nick Clifton <nickc@cygnus.com>
2343
2344 * dbxout.c (dbxout_parms): Use TREE_ARG to compute the type of a
2345 function parameter passed in memory.
2346
76ead72b
RL
2347Mon May 18 09:02:09 1998 Robert Lipe <robertl@dgii.com>
2348
2349 * dwarfout.h, dwarf2out.h, dbxout.h, sdbout.h: New files.
2350 Prototypes for externally used functions in respective C files.
2351 * dwarfout.c, dbxout.c, dwarf2out.c, sdbout.c, toplev,c,
2352 final.c: Include above files.
2353 * Makefile.in (toplev.o): Add dependency for above four headers.
2354 (final.o): Likewise.
2355 (dwarfout.o, dbxout.o, dwarf2out.o, sdbout.o): Depend on four
2356 respective header files.
2357
b0ccd8de
JL
2358Mon May 18 01:23:33 1998 Jeffrey A Law (law@cygnus.com)
2359
7e717196
JL
2360 * Makefile.in (TARGET_TOOLPREFIX): No longer define.
2361 (AR_FOR_TARGET, RANLIB_FOR_TARGET): Define to use versions in
2362 the build tree if they exist.
2363 (AR, AR_FLAGS, OLDAR, OLDAR_FLAGS, RANLIB, RANLIB_TEST): Update
2364 appropriately.
2365 (objdir): Let configure substitute value.
2366 (FLOAT_H): Let configure select a pre-built version from the
2367 config subdir.
2368 * build-make (INSTALL_TARGET, ALL): Disable, no longer needed.
2369 * configure.in: Substitute for objdir.
2370
88111b26
JL
2371 * Makefile.in (build_canonical, host_canonical): Let configure
2372 substitute values for these variables.
2373 * configure.in: Substitute for build_canonical, host_canonical
2374 and target_subdir in generated Makefile.
2375
d8af60bf
JL
2376 * output.h (find_basic_blocks): Declare.
2377 (free_basic_block_vars, set_block_num, life_analysis): Likewise.
2378
b0ccd8de
JL
2379 * Makefile.in (BISON): Use bison from the build tree if it exists.
2380 (FLEX): Similarly.
2381
88117d44
NC
2382Mon May 18 00:08:19 1998 Nick Clifton <nickc@cygnus.com>
2383
2384 * gcc.c (SWITCH_CURTAILS_COMPILATION): Definition.
2385 (DEFAULT_SWITCH_CURTAILS_COMPILATION): True for options -S and -c.
2386 (process_command): If HAVE_EXECUTABLE_SUFFIX is defined then scan
2387 command line arguments to see if an executable is not being
2388 created, and if so - do not append the suffix.
2389
2390 * tm.texi (SWITCH_CURTAILS_COMPILATION): Add description of new
2391 driver macro.
2392
e5e8a8bf
JW
2393Sun May 17 23:59:45 1998 John Wehle (john@feith.com)
2394
2395 * i386.h (ALIGN_DFmode): Delete.
2396 (CONSTANT_ALIGNMENT): Define.
2397 * varasm.c (force_const_mem): Use it.
2398
b771b6b4
RH
2399Sun May 17 19:31:05 1998 Richard Henderson <rth@cygnus.com>
2400
2401 * alpha.c (alpha_emit_conditional_branch): Clear cmp_code after
2402 using it with swap_condition, not before.
2403
0211b6ab
JW
2404Sun May 17 13:44:32 1998 Jim Wilson <wilson@cygnus.com>
2405
2406 * alias.c (mode_alias_check): Delete.
2407 (true_dependence, anti_dependence, output_dependence): Revert April 21
2408 change.
2409
c5991f68
KW
2410Sun May 17 08:45:21 1998 Krister Walfridsson <cato@df.lth.se>
2411
3fe4d12a 2412 * toplev.c (output_lang_identify): Enable prototype and definition.
c5991f68 2413
18f315a4
JL
2414Sun May 17 01:12:27 PDT 1998 Jeff Law (law@cygnus.com)
2415
2416 * version.c: Bump for snapshot.
2417
2a831d01
RH
2418Sat May 16 23:20:32 1998 Richard Henderson <rth@cygnus.com>
2419
2420 * alpha/osf.h (HAVE_STAMP_H): Define.
2421 * alpha.c: Use it.
2422 * alpha/netbsd.h, alpha/netbsd-elf.h: New files.
2423 * configure.in (alpha*-*-netbsd*): New.
2424 Based on patches from Paul H. Anderson <pha@pdq.com>.
2425
2426 * configure.in (alpha*-*-linux-*): Kill xm_defines.
2427 (alpha*-*-linux-gnulibc1*) [fixincludes]: Define.
2428 * alpha/xm-linux.h: Remove file.
2429
620422fd
DE
2430Sat May 16 18:32:45 1998 Doug Evans <devans@canuck.cygnus.com>
2431
2432 * dbxout.c (dbxout_parms): If mode of type of parameter living
2433 in memory doesn't match mode of DECL_RTL, make big endian correction.
2434
d2f2cb19
JW
2435Fri May 15 21:40:06 1998 John Wehle (john@feith.com)
2436
2437 * i386.md (movdi-1, movdi): Rewrite based on SI move patterns.
2438
bbc0e641
JM
2439Fri May 15 18:55:22 1998 Jason Merrill <jason@yorick.cygnus.com>
2440
2441 * tree.h (BINFO_SIZE, TYPE_BINFO_SIZE): New macros.
2442 * stor-layout.c (layout_record): Set it.
2443
2444Fri May 15 18:49:30 1998 Mark Mitchell <mmitchell@usa.net>
2445
2446 * toplev.c (rest_of_compilation): Don't defer nested functions.
2447
92834d7d
BM
2448Fri May 15 17:42:52 1998 Bob Manson <manson@charmed.cygnus.com>
2449
2450 * config/rs6000/rs6000.c (rs6000_stack_info): Align the stack bottom
2451 to an 8-byte boundary if info_ptr->fpmem_p.
2452
829002bb
BM
2453Fri May 15 17:36:11 1998 Bill Moyer <ttk@cygnus.com>
2454
2455 * loop.c (basic_induction_var): Added test preventing
2456 CCmode parameter passed to convert_modes().
2457
b24f65cd
APB
2458Fri May 15 17:26:18 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
2459
2460 * expr.c (expand_expr, case EXPR_WITH_FILE_LOCATION): Save/restore
2461 input_filename and lineno around expand_expr call. Set them to values
2462 in WFL before expand_expr call.
2463
b09293cc
BK
2464Fri May 15 12:44:57 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
2465
2466 * stor-layout.c (set_sizetype): Set TYPE_NAME on bitsizetype.
2467
f628873f
MM
2468Fri May 15 07:20:03 1998 Mark Mitchell <mmitchell@usa.net>
2469
2470 * fold-const.c (constant_boolean_node): New function.
2471 (fold): Use it.
2472
61fb6bac
R
2473Fri May 15 11:21:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2474
2475 * sh.c (gen_shl_and): Don't sign extend constant for kind two.
2476 Abort if trying to split kind 3 or 4 outside of combine.
2477
8f9661dd
JL
2478Fri May 15 01:47:37 1998 Jeffrey A Law (law@cygnus.com)
2479
2480 * mips.c (print_operand, case 'x'): Use HOST_WIDE_INT_PRINT_HEX.
2481
b22284e1
MK
2482Fri May 15 01:42:45 1998 Mumit Khan <khan@xraylith.wisc.edu>
2483
2484 * objc/Make-lang.in (OBJC_O): Add missing exeext.
2485 (libobjc.a, runtime-info.h): Likewise.
2486
8a022443
JW
2487Fri May 15 01:29:39 1998 John Wehle (john@feith.com)
2488
2489 * i386.h (DATA_ALIGNMENT): Define.
2490
aa6498c2
R
2491Fri May 15 05:35:37 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2492
2493 * reload1.c (delete_output_reload): Ignore single USE that
2494 was emitted for the pseudo use of this INSN.
2495 If the no reference to REG between OUTPUT_RELOAD_INSN and INSN
2496 remains, we can always delete OUTPUT_RELOAD_INSN.
2497
41372177
JW
2498Thu May 14 18:38:50 1998 Jim Wilson <wilson@cygnus.com>
2499
2500 * reload.c (find_reloads): Don't penalize SCRATCH output reload.
2501
ddc5654a
JL
2502Thu May 14 15:10:30 1998 Jeffrey A Law (law@cygnus.com)
2503
2504 * Makefile.in (expr.o): Remove dependency on deleted modemap.def file.
2505
9a0d1e1b
AM
2506Thu May 14 16:30:47 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
2507
2508 * eh-common.h: New file for basic EH data structures.
2509 * except.h: Various prototypes and structures for NEW_EH_MODEL
2510 * function.h (struct function): Add a struct eh_stack for the catch
2511 clause stack.
9b91d8f4 2512 * except.c (gen_exception_label): New function to generate an
9a0d1e1b
AM
2513 exception label.
2514 (push_eh_entry): Use gen_exception_label() and init 'label_used' field.
2515 (push_entry): New function to push an existing entry onto a stack.
9b91d8f4 2516 (receive_exception_label): New function to emit the code required
9a0d1e1b
AM
2517 at the start of all catch blocks.
2518 (struct func_eh_entry): New structure for maintaining handlers
2519 associated with EH regions.
2520 (new_eh_region_entry): New function to register an EH region.
2521 (add_new_handler): New function to register a handler with a region.
2522 (get_new_handler): Creates anew handler entry for registering.
2523 (find_func_region): New function to convert a NOTE eh region number
2524 to an Eh region index.
2525 (get_first_handler): New function to get the first handler in a region.
2526 (clear_function_eh_region): New function to release memory.
2527 (duplicate_handlers): New function to duplicate a list of handlers.
2528 (expand_eh_region_end): Create a new region entry node as well.
2529 (expand_leftover_cleanups): Call receive_exception_label() and
2530 register the cleanup as a handler to the current region.
2531 (expand_start_catch): New function to start a catch clause.
2532 (expand_end_catch): New function to end a catch clause.
2533 (expand_start_all_catch): restructure to not do the equivilent of
2534 what expand_start_catch() does now. Push the exception region being
2535 handled onto the catch stack.
2536 (output_exception_table_entry): Issue an entry for each handler
2537 associated with a region.
2538 (set_exception_lang_code): New function for setting the language code.
2539 (set_exception_version_code): New function to set the version number.
2540 (output_exception_table): Output version and language codes.
2541 (find_exception_handler_labels): Find handler labels using new scheme.
2542 (is_exception_handler_label): New function, returns 1 if label is
2543 present as a handler in some exception region.
2544 (check_exception_handler_labels): Use the new scheme.
2545 (init_eh_for_function): Initialize the catch stack.
2546 (save_eh_status): Save the catch stack.
2547 (restore_eh_status): Restore the catch stack.
2548 (scan_region): Don't remove unreferenced handler label. Flow does it.
2549 (get_reg_for_handler): New function to get the eh_context pointer
2550 passed by __throw.
2551 (expand_builtin_eh_stub): Changes required for NEW_EH_MODEL only.
2552 * final.c (final_scan_insn): With NEW_EH_MODEL, add EH table
2553 entry when processing END region rather that START region.
2554 * flow.c (find_basic_blocks_1): Find all potential handler regions
2555 now that we don't automatically know what the labels might be.
2556 Let scan_region() remove unreferenced EH BEGIN/END labels.
2557 * integrate.c (get_label_from_map): Put inlined labels onto the
2558 permanent obstack since we dont know which ones might be exception
2559 labels.
2560 (save_for_inline_copying): Make new copies of all the handlers.
2561 (expand_inline_function): Make new copies of all the handlers.
2562 * libgcc2.c: Remove local struct decls, and include eh-common.h.
9b91d8f4 2563 (find_exception_handler): With NEW_EH_MODEL the first matching
9a0d1e1b
AM
2564 region we find is the right one. Add eh_info as a new parameter.
2565 (__throw): Pass eh_info to find_exception_handler. Set handler
2566 and pass use different regs under NEW_EH_MODEL.
2567
2129b081
JW
2568Thu May 14 12:58:21 1998 Jim Wilson <wilson@cygnus.com>
2569
2570 * i960.h (hard_regno_mode_ok): Changed to function from array of
2571 unsigned.
2572 (HARD_REGNO_MODE_OK): Call function instead of testing bit.
2573 * i960.c (hard_regno_mode_ok): Changed to function from array of
2574 unsigned.
2575
029b38ff
R
2576Thu May 14 08:41:46 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2577
2578 * reload.c (remove_replacements): New function.
2579 * reload.h (remove_replacements): Declare.
2580 * reload1.c (choose_reload_regs): Disable some reloads that
2581 belong to inherited reloads.
2582
efdb3590
R
2583Thu May 14 02:17:17 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2584
9dd07f87
R
2585 * loop.c (scan_loop): Don't call move_moveables for optimize_size.
2586
efdb3590
R
2587 * reload1.c (merge_assigned_reloads): When merging, reset
2588 reload_spill_index for the eliminated reload.
2589
5d27de7d
JL
2590Wed May 13 17:51:13 1998 Jeffrey A Law (law@cygnus.com)
2591
2592 * haifa-sched.c (schedule_insns): Fix merge goof.
2593
92d4501f
JW
25941998-05-13 Jim Wilson <wilson@cygnus.com>
2595
2596 * varasm.c (make_decl_rtl): Revert April 1 change.
2597 * alpha/alpha.h, alpha/win-nt.h, arm/arm.h, i386/unix.h, i960/i960.h,
2598 m68k/linux.h, pa/pa.h, sparc/sparc.h, vax/vax.h (ASM_OUTPUT_MI_THUNK):
2599 Get function name from the SYMBOL_REF in the DECL_RTL, not from
2600 DECL_ASSEMBLER_NAME.
2601 * i386/winnt.c (gen_stdcall_suffix): Comment for questionable use of
2602 DECL_ASSEMBLER_NAME.
2603
d6cc54f6
JW
2604Wed May 13 13:09:19 1998 Jim Wilson <wilson@cygnus.com>
2605
2606 * i386.c (notice_update_cc, output_float_compare): Disable
2607 TARGET_CMOVE support.
2608
6d3352d9 2609Wed May 13 15:28:59 1998 Michael Meissner <meissner@cygnus.com>
0dfa1860
MM
2610 Jeff Law <law@cygnus.com>
2611
ae78d276
MM
2612 * rtlanal.c (find_reg_note): Ignore notes that are not on on
2613 insns of class 'i'.
2614 (find_regno_note): Likewise.
2615
82ce5b75
MM
2616 * Makefile.in (stor-layout.o): Depend on except.h
2617 (varasm.o, function.o): Likewise.
2618 (expr.o): Depend on except.h, modemap.def and hard-reg-set.h.
2619
0dfa1860
MM
2620 * Makefile.in (HOST_RTL): Add $(HOST_PREFIX)bitmap.o.
2621 (rtl.o, emit-rtl.o): Add dependency on bitmap.h.
2622 ($(HOST_PREFIX_1)rtl.o): Likewise.
2623 ($(HOST_PREFIX_1)bitmap.o): New host object.
2624 * emit-rtl.c (toplevel): Include bitmap.h.
2625 (gen_rtx): Handle 't' and 'b' nodes.
2626 * print-rtl.c (print_rtx): Handle printing NOTE_INSN_LIVE notes.
2627 Print block number for block begin/end notes. Print 't' type
2628 nodes as a pointer. Know that the 3rd argument of live range
2629 start/stop notes is really a range_info rtx. If type is 'b', print
2630 out argument as a bitmap.
2631 * rtl.c: Include bitmap.c.
2632 (copy_rtx): Copy tree nodes as is. Copy bitmaps if type is 'b'.
2633 (note_insn_name): Add NOTE_INSN_RANGE_{START,END}, NOTE_INSN_LIVE.
2634 * rtl.def (RANGE_LIVE): New node to hold live information while we
2635 recalculate the basic blocks.
2636 (RANGE_REG, RANGE_INFO): New rtl types for live range splitting.
9b91d8f4 2637 (RANGE_VAR): New node, to hold information saved in symbol node for New
0dfa1860
MM
2638 communicating live range information to the debug output functions.
2639 * rtl.h (rtunion_def): Add rttree and rtbit fields.
2640 (XBITMAP, XTREE): New accessor macros.
2641 (NOTE_LIVE_INFO): Overload NOTE_SOURCE_FILE for NOTE_INSN_LIVE notes.
2642 (NOTE_RANGE_INFO): Similarly for NOTE_INSN_RANGE_{START,END} notes.
2643 (NOTE_BLOCK_LIVE_RANGE_BLOCK): Define.
2644 (NOTE_INSN_RANGE_START, NOTE_INSN_RANGE_END, NOTE_INSN_LIVE): New notes.
2645 (RANGE_LIVE_{BITMAP,ORIG_BLOCK}): New accessor macros.
2646 (RANGE_REG_{SYMBOL,BLOCK}_NODE, RANGE_VAR_*): New accessor macros.
2647 (RANGE_INFO_*): Likewise.
2648 * sched.c (sched_analyze): Keep live range start/stop notes.
2649 (unlink_other_notes): Likewise.
2650 * haifa-sched.c (sched_analyze): Keep live range start/stop notes.
2651 (unlink_other_notes): Likewise.
2652 * tree.h (BLOCK_LIVE_RANGE_{START,END,VAR_FLAG}): New accessor macros.
2653 (BLOCK_LIVE_RANGE_FLAG): Likewise.
2654 (DECL_LIVE_RANGE_RTL): Likewise.
2655 (struct tree_block): Add live_range_flag, live_range_var_flag,
2656 live_range_start and live_range_end.
2657 (struct tree_decl): Add live_range_rtl field.
2658 * gengenrtl.c (type_from_format): Handle 'b' and 't'.
2659 (accessor_from_format): Likewise.
6d3352d9
MM
2660
2661 * haifa-sched.c (schedule_block): Make verbose output line up.
47312d84 2662 Also add a blank line in printing the individual ready lists.
6d3352d9 2663
63e76c87
KG
2664Wed May 13 15:43:44 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2665
2666 * Makefile.in (c-lang.o): Depend on c-tree.h, c-lex.h and toplev.h.
2667 (c-lex.o): Depend on output.h.
2668 (c-common.o): Likewise.
2669 (stmt.o): Likewise.
2670 (calls.o): Likewise.
2671 (integrate.o): Depend on toplev.h.
2672 (regclass.o): Depend on output.h.
2673 (final.o): Depend on reload.h.
2674
2675 * c-common.c: Include output.h.
2676 (check_format_info): Remove unused variable `integral_format'.
2677
2678 * c-decl.c (print_lang_decl): Mark parameters `file', `node' and
2679 `indent' with ATTRIBUTE_UNUSED.
2680 (print_lang_type): Likewise.
2681 (maybe_build_cleanup): Likewise for parameter `decl'.
2682 (copy_lang_decl): Likewise for parameter `node'.
2683
2684 * c-lang.c: Include c-tree.h, c-lex.h and toplev.h.
2685 (lang_print_xnode): Mark parameters `file', `node' and `indent'
2686 with ATTRIBUTE_UNUSED.
2687 (lookup_interface): Likewise for parameter `arg'.
2688 (is_class_name): Likewise.
2689 (maybe_objc_check_decl): Likewise for parameter `decl'.
2690 (maybe_objc_comptypes): Likewise for parameters `lhs', `rhs' and
2691 `reflexive'.
2692 (maybe_objc_method_name): Likewise for parameter `decl'.
2693 (build_objc_string): Likewise for parameters `len' and `str'.
2694
2695 * c-lex.c: Include output.h.
2696
2697 * c-lex.h (position_after_white_space): Correct typo in prototype.
2698
2699 * c-tree.h (finish_file, c_expand_start_cond, c_expand_start_else,
2700 c_expand_end_cond, init_iterators): Add prototypes.
2701
2702 * caller-save.c (set_reg_live): Mark parameters `reg' and `setter'
2703 with ATTRIBUTE_UNUSED.
2704
2705 * calls.c: Include output.h.
2706
2707 * cccp.c (pipe_closed): Mark parameter `signo' with
2708 ATTRIBUTE_UNUSED.
2709
2710 * combine.c: Move inclusion of expr.h to after insn-config.h.
2711
2712 * iris6.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Don't define
2713 as empty, rather define as ((void)0).
2714
2715 * sparc.c (sparc_check_64): Add braces around ambiguous `else'.
2716 Add parentheses around assignment used as truth value.
2717
2718 * cplus-dem.c (squangle_mop_up): Change return type to void.
2719 (internal_cplus_demangle): Remove unused parameter `options'.
2720 All callers changed.
2721 (cplus_demangle_opname): Remove function wide variable `int i' and
2722 replace with `size_t i' at each location where it is used.
2723 (cplus_demangle_opname): change type of `i' from int to size_t.
2724
2725 * cppexp.c (right_shift): Mark parameter `pfile' with
2726 ATTRIBUTE_UNUSED.
2727
2728 * cpphash.c (cpp_lookup): Likewise.
2729 (cpp_hash_cleanup): Likewise.
2730
2731 * cpplib.c (parse_name): Add a prototype and make it static.
2732 (null_underflow): Mark parameter `pfile' with ATTRIBUTE_UNUSED.
2733 (null_cleanup): Likewise for parameters `pbuf' and `pfile'.
2734 (macro_cleanup): Likewise for parameter `pfile'.
2735 (file_cleanup): Likewise.
2736
2737 * cpplib.h (cpp_reader_init, cpp_options_init, cpp_start_read,
2738 cpp_read_check_assertion, skip_rest_of_line): Add prototypes.
2739
2740 * crtstuff.c (force_to_data, __CTOR_LIST__, force_to_data,
2741 __DTOR_END__, __FRAME_END__): Mark with ATTRIBUTE_UNUSED.
2742
2743 * cse.c (cse_check_loop_start): Mark parameter `set' with
2744 ATTRIBUTE_UNUSED.
2745
2746 * dbxout.c (flag_minimal_debug, have_used_extensions,
2747 source_label_number): Move inside macro wrapper check against
2748 defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO).
2749
2750 * dwarf2out.c (gen_entry_point_die): Hide prototype and definition.
2751
2752 * except.h (doing_eh): Provide prototype.
2753
2754 * expr.c: Move inclusion of expr.h to after insn-config.h.
2755
2756 * final.c: Include reload.h.
2757 (shorten_branches): Cast the first argument of bzero to char *.
2758
2759 * fix-header.c (cpp_print_containing_files): Mark parameter
2760 `pfile' with ATTRIBUTE_UNUSED.
2761 (cpp_fatal): Likewise.
2762
2763 * flow.c (find_basic_blocks_1): Cast the first argument of bzero
2764 to char *.
2765
2766 * genattrtab.c (make_length_attrs): Change the type of variable
2767 `i' from int to size_t.
2768 (zero_fn): Mark parameter `exp' with ATTRIBUTE_UNUSED.
2769 (one_fn): Likewise.
9b91d8f4 2770
63e76c87
KG
2771 * genextract.c (main): When generating insn-extract.c, mark
2772 variable `junk' with ATTRIBUTE_UNUSED.
2773
2774 * gengenrtl.c (gencode): When generating genrtl.c, cast the first
2775 argument of bzero to char*.
2776
2777 * integrate.c: Include toplev.h.
2778
2779 * libgcc2.c: Wrap `struct exception_table' and
2780 `find_exception_handler' in macro DWARF2_UNWIND_INFO.
2781
2782 * objc/Make-lang.in (objc-act.o): Depend on toplev.h.
9b91d8f4 2783
63e76c87
KG
2784 * objc/objc-act.c: Include toplev.h.
2785 (lang_print_xnode): Mark parameters `file', `node' and `indent'
2786 with ATTRIBUTE_UNUSED.
2787 (finish_protocol): Likewise for parameter `protocol'.
2788
2789 * output.h (declare_weak): Add prototype.
2790 (decode_reg_name): Don't wrap with TREE_CODE macro.
2791 (assemble_alias): Add prototype.
2792
2793 * regclass.c: Include output.h.
2794
2795 * reload.h (reloads_conflict): Add prototype.
2796
2797 * rtl.h (print_rtl_single, mark_elimiation, reg_class_subset_p,
2798 output_func_start_profiler): Add prototypes.
2799
2800 * rtlanal.c (reg_set_p_1): Mark parameters `x' and `pat' with
2801 ATTRIBUTE_UNUSED.
2802
2803 * scan-decls.c: Include scan.h.
2804
2805 * scan.h (recognized_function, recognized_extern): Add prototypes.
2806
2807 * stmt.c: Include output.h.
2808
2809 * toplev.c (error_for_asm, warning_for_asm): Remove prototypes.
2810 (output_lang_identify): Hide prototype and definition.
2811 (float_signal): Mark parameter `signo' with ATTRIBUTE_UNUSED.
2812 (pipe_closed): Likewise.
2813
2814 * toplev.h (count_error, strip_off_ending, error_for_asm,
2815 warning_for_asm): Add prototypes.
2816
a494747c 2817Wed May 13 12:54:19 1998 Michael Meissner <meissner@cygnus.com>
a494747c 2818
32e705c4
MM
2819 * toplev.c (rest_of_compilation): "Charge" final for any time
2820 doing various cleanup operations after finishing compilation
2821 of a function.
2822
9b91d8f4 2823 * flow.c (dump_flow_info): Also print number of sets and
6fc4610b
MM
2824 whether or not the pseudo is a user variable.
2825
a494747c
MM
2826 * flow.c (reg_n_max): New global variable.
2827 * regclass.c (allocate_reg_info): Keep reg_n_max up to date.
2828 Delete regno_max variable.
2829 * regs.h (REG_N_CHECK): Define.
2830 (REG_N_REFS, REG_N_SETS, REG_N_DEATHS): Use REG_N_CHECK.
2831 (REG_N_CHANGES_SIZE, REG_N_CALLS_CROSSED, REG_LIVE_LENGTH): Likewise.
2832 (REGNO_FIRST_UID, REGNO_LAST_UID, REGNO_LAST_NOTE_UID): Likewise.
2833
21622caf
JL
2834Wed May 13 12:54:19 1998 Martin von Loewis <martin@mira.isdn.cs.tu-berlin.de>
2835
2836 * acconfig.h (ENABLE_CHECKING): Undefine.
2837 * configure.in (--enable-checking): New option.
2838
d668e863
R
2839Wed May 13 08:52:08 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2840
2841 * reload1.c (merge_assigned_reloads): Can merge
2842 RELOAD_FOR_INPUT_ADDRESS and RELOAD_FOR_OTHER_ADDRESS even
2843 if RELOAD_FOR_INPUT with the same reload_reg_rtx is present.
2844
b706d7f2
JW
2845Tue May 12 20:05:57 1998 Jim Wilson <wilson@cygnus.com>
2846
2847 * collect2.c (main): Ignore do_collecting when COLLECT_EXPORT_LIST.
2848
4117a96b
R
2849Wed May 13 03:23:45 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2850
2851 * reload1.c (gen_reload): Create REG_EQUIV notes.
2852
4d3eb414
R
2853Tue May 12 22:21:07 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2854
2855 * reload1.c (reload): Fix check for USEs to use code of pattern.
2856 (choose_reload_regs): Remove dead variable use_insn.
2857
b10c8966
JL
2858Tue May 12 14:04:49 1998 Jeffrey A Law (law@cygnus.com)
2859
9b91d8f4 2860 * pa.h (DBX_CONTIN_LENGTH): Reduce to 3000 bytes.
b10c8966 2861
cbb13457
MM
2862Tue May 12 15:16:02 1998 Michael Meissner <meissner@cygnus.com>
2863
2864 * haifa-sched.c (HAIFA_INLINE): Define to be __inline unless
2865 already defined.
2866 (find_insn_{,mem_}list): Use HAIFA_INLINE, not __inline.
2867 (insn_{unit,issue_delay}): Ditto.
2868 (blockage_range): Ditto.
2869 (actual_hazard{,_this_instance}): Ditto.
2870 (schedule_unit): Ditto.
2871 (potential_hazard): Ditto.
2872 (insn_cost): Ditto.
2873 (swap_sort): Ditto.
2874 (queue_insn): Ditto.
2875 (birthing_insn_p): Ditto.
2876 (adjust_priority): Ditto.
2877 (get_block_head_tail): Ditto.
2878 (init_rgn_data_dependences): Ditto.
2879
1478d88a
KK
2880Tue May 12 10:27:54 1998 Klaus Kaempf <kkaempf@progis.de>
2881
2882 * alpha/vms.h (COMMON_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON): Define.
2883
a688e0b7
GK
2884Tue May 12 11:44:14 1998 Gavin Koch <gavin@cygnus.com>
2885
2886 * config/mips/mips.h (ASM_OUTPUT_ALIGN): Remove trailing semi-colon.
2887
ec350bdd
GK
2888Tue May 12 11:38:31 1998 Gavin Koch <gavin@cygnus.com>
2889
2890 * config/mips/mips.md (dslot): Move after definition of "cpu"
2891 attribute. Handle r3900 case.
2892
d4ba0ead
KG
2893Tue May 12 10:21:36 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2894
2895 * system.h: Define the STRINGIFY macro here.
2896 * protoize.c: Not here.
2897 * gengenrtl.c (DEF_RTL_EXPR): Use the STRINGIFY macro.
2898
8a198bd2
JW
2899Tue May 12 00:47:33 1998 John Wehle (john@feith.com)
2900
9b91d8f4 2901 * varasm.c (assemble_variable): Compute the alignment of the data
8a198bd2
JW
2902 earlier so that both initialized and uninitialized variables are
2903 effected by DATA_ALIGNMENT.
2904 * tm.texi (DATA_ALIGNMENT): Updated appropriately.
2905
eace3df1
JL
2906Mon May 11 19:57:58 1998 Jeffrey A Law (law@cygnus.com)
2907
2908 * mips.c: Prototype static functions.
2909
a9e95099
JW
2910Mon May 11 17:43:03 1998 Jim Wilson <wilson@cygnus.com>
2911
b1a7d591
JW
2912 * regmove.c (fixup_match_2, find_matches, regmove_profitable):
2913 Add explanatory comments.
2914
a9e95099
JW
2915 * sparc.h (SPARC_INCOMING_INT_ARG_FIRST): Support TARGET_FLAT.
2916
0f177d7c
RH
2917Mon May 11 17:24:27 1998 Richard Henderson <rth@cygnus.com>
2918
2919 * sparc.md (ffsdi2): Disable. Simplify the expression as well.
2920
28233641
JW
2921Mon May 11 13:30:44 1998 Jim Wilson <wilson@cygnus.com>
2922
2923 * varasm.c (make_decl_rtl): Disable April 1 change.
2924
e55a5ea6
RH
2925Mon May 11 09:14:41 1998 Richard Henderson <rth@cygnus.com>
2926
2927 * configure.in (alpha-*-linux-gnu): Undo lossage from gcc2 merge.
2928
e83015a9
RH
2929Mon May 11 08:24:18 1998 Richard Henderson <rth@cygnus.com>
2930
2931 * alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Add '`'.
2932 * alpha.c (print_operand): Handle it.
9b91d8f4 2933 * alpha.md (fix_truncdfsi2, fix_truncsfsi2): New patterns and
e83015a9
RH
2934 related define_splits. Also add peepholes for SImode reload
2935 plus sign_extend lossage.
2936
320e7c40
KG
2937Mon May 11 09:33:10 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2938
2939 * genattr.c: Include stdarg.h/varargs.h. Change function
2940 `fatal' to use variable arguments instead of faking it with
2941 integer parameters. Provide a prototype which also
2942 checks the format specifiers using ATTRIBUTE_PRINTF_1.
2943
2944 * genattrtab.c: Likewise.
2945 * gencodes.c: Likewise.
2946 * genconfig.c: Likewise.
2947 * genemit.c: Likewise.
2948 * genextract.c: Likewise.
2949 * genflags.c: Likewise.
2950 * genopinit.c: Likewise.
2951 * genpeep.c: Likewise.
2952 * genrecog.c: Likewise.
2953 * genoutput.c: Likewise. Similarly for function `error'.
2954
e9b4fabf
JL
2955Sun May 10 02:27:03 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2956
2957 * acconfig.h (HAVE_VOLATILE): Insert stub for autoconf.
2958 * alocal.m4 (GCC_C_VOLATILE): New autoconf test.
2959 * configure.in: Use GCC_C_VOLATILE.
2960 * system.h (volatile): Define as empty if no volatile support is
2961 available.
2962
2963Sun May 10 01:21:43 1998 Jeffrey A Law (law@cygnus.com)
2964
2965 * genemit.c (output_add_clobbers): Removed unused variable 'i' from
2966 generated fucntion.
2967
f283421d
RH
2968Sat May 9 02:02:15 1998 Richard Henderson <rth@cygnus.com>
2969
2970 * loop.c (get_condition): Don't combine when either compare is MODE_CC.
2971 * alpha.c (alpha_emit_conditional_branch): New function. Taken from
2972 the body of beq; additionally set the mode of the branch to CCmode for
9b91d8f4 2973 FP compares and not fast_math.
f283421d
RH
2974 (alpha_emit_conditional_move): Always use a compare insn for FP
2975 when not fast_math, as well as setting CCmode on the cmov.
2976 * alpha.md (beq, bne, blt, et al): Call alpha_emit_conditional_branch.
2977
2978 * machmode.h (COMPLEX_MODE_P): New macro.
2979
53c0919d
RH
2980Sat May 9 01:53:23 1998 Richard Henderson <rth@cygnus.com>
2981
2982 * haifa-sched.c (print_exp): Fix typo.
2983
23d297ab
JL
2984Fri May 8 21:48:50 PDT 1998 Jeff Law (law@cygnus.com)
2985
2986 * version.c: Bump for snapshot.
2987
cf879efa
MM
2988Fri May 8 18:23:08 1998 Michael Meissner <meissner@cygnus.com>
2989
2990 * final.c (final_scan_insn): Call fatal_insn instead of abort if
2991 we could not split an insn when required to.
2992
5b8ae21f
MM
2993 * m32r.md ({add,sub}di3): Add define_splits and appropriate low
2994 level insns.
2995 (peepholes): Disable peepholes that call dead_or_set_p.
2996 (movsi): Rewrite to handle addresses better after last change.
2997 Add define_split to split load of addresses in large/medium modes.
2998 (prologue): Call m32r_expand_prologue.
2999 (movsi_{push,pop}): Generators for push/pop.
3000 (movsi): Support PRE_{INC,DEC}, POST_INC.
3001 (mov{di,df}): Rewrite. Always split the insns.
3002 (movsf): Add define_split to get register load in correct mode.
3003 (cmp_ne_small_const_insn): Use 'N' instead of 'S' constraint.
3004 (attributes): Rewrite attributes so that type indicates both the
3005 type and the length of the insn directly.
3006 (all insns): Change to use new type attributes.
3007 (debug): New attribute to convey whether -mdebug was used.
3008 (opt_space): New attribute to convey whether -Os was used.
3009 (function units): Loads are 3 cycles, not 2. Better classify all
3010 insns into short/long.
3011 (load/store/extend insns): Add separate case for load/store
3012 indirect operations without an offset.
3013 (divsi3): Division is a long operation, not short.
3014
3015 * m32r.h (LEGITIMATE_LO_SUM_ADDRESS_P): Do not allow LO_SUM for
3016 modes > 1 word.
3017 (GO_IF_MODE_DEPENDENT_ADDRESS): LO_SUM is now mode dependent.
3018 (CONST_OK_FOR_LETTER_P): Make 'N' handle reverse 8 bit compares.
3019 (EXTRA_CONSTRAINT): Remove 'S' special support. Add 'U' for
3020 operands with PRE_{INC,DEC}, POST_INC.
3021 (FUNCTION_PROFILER): Call abort instead of doing nothing.
3022 (GO_IF_LEGITIMATE_ADDRESS): Allow PRE_{INC,DEC}, POST_INC of
3023 SImode variables.
3024 (gen_split_move_double): Declare.
3025 (EXTRA_CONSTRAINT): Add 'T' for memory reference with no offset.
3026
3027 * m32r.c (gen_split_move_double): Fix typo. Also, don't call
3028 emit_move_insn, build up SET's directly.
3029 (toplevel): Include system.h, not stdio.h.
3030 (move_double_src_operand): Allow any DF or DI mode constant.
3031 (gen_split_move_double): Split moves of DI or DF values into the
3032 appropriate moves, loads, or stores. Don't handle use of auto
3033 inc/dec if using dead index. Do handle overlapping moves, etc.
3034 (m32r_frame_info): Remove prologue_size field.
3035 (m32r_compute_frame_size): Don't calculate prologue size.
3036 (m32r_output_function_prologue): Change to pretty much a NOP.
3037 (m32r_expand_prologue): Expand prologue as a series of INSNs.
3038 (m32r_print_operand): Add support for PRE_{INC,DEC}, POST_INC.
3039 (m32r_print_operand_address): Ditto.
9b91d8f4 3040
d7c2e385
L
3041Fri May 8 14:13:21 1998 H.J. Lu (hjl@gnu.org)
3042
3043 * reload1.c (emit_reload_insns): When performing expensive
3044 optimizations, do not output the last reload insn if OLD is
3045 not the dest of NSN and is in the src and is clobbered by INSN.
3046
560bd19e
KG
3047Fri May 8 09:47:29 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3048
3049 * Makefile.in (genrtl.o): Depend on system.h.
3050 * gengenrtl.c (gencode): When creating genrtl.c, have it
3051 include system.h.
3052
0d33d22e
AS
3053Fri May 8 10:57:33 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3054
3055 * config/m68k/t-linux: Remove extra stuff already included in
3056 config/t-linux.
3057
dea4ae0d
MH
3058Fri May 8 09:53:24 Paul Eggert <eggert@twinsun.com>
3059
3060 * fixinc.wrap: Renamed from fixinc.math. Put wrapper around
3061 curses.h if it contains `typedef char bool;', as suggested by
3062 Manfred Hollstein <manfred@s-direktnet.de>.
3063
3064 * configure.in: Rename fixinc.math to fixinc.wrap.
3065
02e56202
JW
3066Thu May 7 19:26:34 1998 Jim Wilson <wilson@cygnus.com>
3067
bbeb7b65
JW
3068 * gcc.c (read_specs): Handle missing blank line at end of specs file.
3069
02e56202
JW
3070 * i386.md (movsicc, movhicc, movsicc_1, movhicc_1, movsfcc_1,
3071 movdfcc_1): Disable.
3072
e445171e
JW
3073Thu May 7 15:39:14 1998 Jim Wilson <wilson@cygnus.com>
3074
3075 * configure.in (enable_threads): Rename to enable_threads_flag before
3076 main loop. Set enable_threads to enable_threads_flag inside main
3077 loop.
3078
a1b5a7e1
MM
3079Thu May 7 17:38:03 1998 Michael Meissner <meissner@cygnus.com>
3080
3081 * r6000/eabi.asm (__eabi): Restore LR in case __eabi is called
3082 multiple times.
3083
76b4b31e
KG
3084Thu May 7 14:26:05 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3085
3086 * aclocal.m4 (GCC_FUNC_VFPRINTF_DOPRNT): New macro.
9b91d8f4 3087
76b4b31e
KG
3088 * configure.in: Add a call to GCC_FUNC_VFPRINTF_DOPRNT.
3089 (AC_CHECK_HEADERS): Remove unused check for varargs.h,sys/varargs.h.
3090 (AC_CHECK_FUNCS): Remove unused check for vprintf.
9b91d8f4 3091
76b4b31e
KG
3092 * Makefile.in: Add support for linking in vfprintf.c and doprint.c.
3093 (cccp.o): Depend on gansidecl.h.
3094 (cexp.o): Likewise.
3095
3096 * cccp.c: Convert from using PRINTF_ALIST/PRINTF_DCL to VPROTO as
3097 per the rest of gcc source.
3098 * cexp.y: Likewise. Include gansidecl.h and remove all code made
3099 redundant.
3100
3101 * cccp.c: Remove checks for HAVE_VPRINTF and the associated code
3102 used when vfprintf is missing.
3103 * cexp.y: Likewise.
3104 * gcc.c: Likewise.
3105 * genattrtab.c: Likewise.
3106 * mips-tfile.c: Likewise.
3107 * toplev.c: Likewise.
3108
3109 * vfprintf.c: New file.
3110 * doprint.c: New file.
3111
bebc4663
JL
3112Thu May 7 10:18:41 1998 Jeffrey A Law (law@cygnus.com)
3113
3114 * config/linux.h (ASM_COMMENT_START): Remove from here,
3115 * config/linux-aout.h (ASM_COMMENT_START): and here,
3116 * config/i386/linux.h (ASM_COMMENT_START): to here,
3117 * config/i386/linux-aout.h (ASM_COMMENT_START): and here.
3118 * config/i386/linux-oldld.h (ASM_COMMENT_START): Define
3119 here as '#' too.
3120
436bf9fb
AS
3121Thu May 7 10:55:59 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3122
3123 * config/m68k/m68k.md (adddi3, subdi3): Properly negate the DImode
9b91d8f4 3124 constant.
436bf9fb 3125
f103890b
RL
3126Wed May 6 22:32:37 CDT 1998 Robert Lipe <robertl@dgii.com>
3127
3128 * Makefile.in (dwarfout.o) Add toplev.h dependency.
3129 * dwarfout.c, i386.c: Include toplev.h
3130 * toplev.h: (pfatal_with_name) Add prototype.
3131
024b5658
JM
3132Wed May 6 19:02:29 1998 Jason Merrill <jason@yorick.cygnus.com>
3133
3134 * Makefile.in: Fix .SUFFIXES.
3135
410c3875
AM
3136Wed May 6 19:31:32 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
3137
3138 * config/linux.h (ASM_COMMENT_START): Define as "#".
3139 * config/linux-aout.h (ASM_COMMENT_START): Likewise.
3140
7e073314
JW
3141Wed May 6 15:51:39 1998 Jim Wilson <wilson@cygnus.com>
3142
71ebb3b8
JW
3143 * objc/Make-lang.h (objc-parse.o): Add toplev.h dependency.
3144 * objc/objc-parse.y, objc/objc-parse.c: Regenerate.
3145
a0c8e1b2
JW
3146 * toplev.c: Include toplev.h.
3147 * Makefile.in (c-common.o, c-convert.o, c-decl.o, c-iterate.o,
3148 c-lex.o, c-parse.o, c-pragma.o, c-typeck.o, calls.o, convert.o,
3149 dwarf2out.o, except.o, expr.o, final.o, fold-const.o, function.o,
3150 hash.o, profile.o, real.o, reg-stack.o, regclass.o, reload.o,
3151 reload1.o, stmt.o, stor-layout.o, tlink.o, tree.o, varasm.o): Add
3152 toplev.h dependency.
9b91d8f4 3153
1b15c5de
JW
3154 * mips/mips.c (save_restore_insns): Change FRAME_POINTER_REGNUM to
3155 HARD_FRAME_POINTER_REGNUM.
3156
7e073314
JW
3157 * expr.c (target_temp_slot_level): Delete duplicate definition.
3158
d06eab0d
JL
3159Wed May 6 16:46:01 1998 Jeffrey A Law (law@cygnus.com)
3160
df03cab5 3161 * stmt.c (mark_seen_cases): Make it have external linkage again.
0586a4ce
JL
3162 * expr.h (mark_seen_cases): Add declaration, but only when tree.h
3163 has been included.
df03cab5 3164
6b879bcc
JL
3165 * haifa-sched.c (print_value, case SUBREG): Fix typo.
3166
6b28fd63
JL
3167 * i386.c (output_387_binary_op): Add some braces to avoid warnings.
3168 * i386.h (REG_CLASS_CONTENTS): Similarly.
3169
cc132865
JL
3170 * toplev.c (-fsched-max): Delete flag.
3171 (-fsched-interblock-max-blocks,-fsched-interblock-max-insns): Likewise.
3172 * haifa-sched.c: Remove -fsched-max-N, -fsched-interblock-max-blocks-N
3173 and -fsched-interblock-max-insns-N support. Remove INTERBLOCK_DEBUG
3174 conditionals.
3175
3176 * haifa-sched.c (find_rgns): Correctly handle reducible loops with
3177 inner loops which are not reducible.
3178
fd4a1ca5
JL
3179 * loop.c (regs_match_p): Fix typo in prototype.
3180
d06eab0d
JL
3181 * regmove.c (try_auto_increment): Wrap declaration inside an
3182 #ifdef AUTO_INC_DEC.
3183
31bfbf1f
MM
3184Wed May 6 17:07:47 1998 Michael Meissner <meissner@cygnus.com>
3185
3186 * final.c (output_operand_lossage): Call fatal with the operand
3187 lossage message instead of calling abort.
3188
e9a780ec
KG
3189Wed May 6 15:37:27 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3190
3191 * c-common.c: Convert to using ctype macros defined in system.h.
3192 * c-lex.c: Likewise.
3193 * cccp.c: Likewise.
3194 * collect2.c: Likewise.
3195 * rs6000.c: Likewise.
3196 * cpplib.c: Likewise.
3197 * fix-header.c: Likewise.
3198 * gcc.c: Likewise.
3199 * gen-protos.c: Likewise.
3200 * pexecute.c: Likewise.
3201 * protoize.c: Likewise.
3202 * rtl.c: Likewise.
3203 * scan.c: Likewise.
3204 * stmt.c: Likewise.
3205 * tlink.c: Likewise.
9b91d8f4 3206 * toplev.c: Likewise.
e9a780ec 3207
d4c3e60e
GK
3208Wed May 6 14:44:14 1998 Gavin Koch <gavin@cygnus.com>
3209
9b91d8f4 3210 * config/mips/r3900.h (SUBTARGET_ASM_DEBUGGING_SPEC) :
d4c3e60e
GK
3211 Replace -gdwarf-2 with -g0.
3212
90fbb8c9
KG
3213Wed May 6 11:43:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3214
3215 * Makefile.in (mips-tfile.o, mips-tdump.o): Depend on system.h.
3216 * mips-tdump.c: Include system.h, remove redundant headers.
3217 * mips-tfile.c: Likewise. Also, convert all ctype function calls
3218 to calls of the macro versions defined in system.h.
3219
3220 * objc/Make-lang.in (objc-act.o): Depend on system.h.
3221 * objc/objc-act.c: Include system.h, remove redundant headers.
3222
8f81384f
KG
3223Wed May 6 11:21:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3224
3225 * configure.in (AC_CHECK_FUNCS): Add isascii.
3226 (GCC_NEED_DECLARATIONS): Add atof.
3227
3228 * system.h: Provide prototypes for abort, atof, atol and sbrk here.
3229 * rtl.c, rtl.h, toplev.c, tree.h: Not here.
3230
e572c0c6
KG
3231Wed May 6 10:52:49 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3232
3233 * system.h: Wrap time.h and sys/file.h in autoconf checks.
3234 Provide default definitions for O_RDONLY and O_WRONLY here.
3235
3236 * cccp.c, cpplib.c, fix-header.c, gcc.c, protoize.c: Not here.
3237
8830da36
MM
32381998-05-06 Mark Mitchell <mmitchell@usa.net>
3239
3240 * tree.h (IS_EXPR_CODE_CLASS): Remove bogus '3'.
3241
c5ff95e6
RL
3242Wed May 6 06:35:38 1998 Robert Lipe <robertl@dgii.com>
3243
3244 * toplev.h: New file. Protypes for functions in toplev.c.
3245 * tree.h, rtl.h: Deleted protos for functions in toplev.c.
9b91d8f4
UD
3246 * c-common.c, c-convert.c, c-decl.c, c-iterate.c, c-lex.c,
3247 c-parse.in, c-parse.y, c-pragma.c, c-typeck.c, calls.c,
3248 convert.c, dwarf2out.c, except.c, expr.c, final.c, fold-const.c,
3249 function.c, hash.c, profile.c, real.c, reg-stack.c, regclass.c,
3250 reload.c, reload1.c, stmt.c, stor-layout.c, tlink.c, tree.c,
c5ff95e6
RL
3251 varasm.c: include it.
3252
15ebe47d
JL
3253Wed May 6 01:09:01 1998 Jeffrey A Law (law@cygnus.com)
3254 Jim Wilson (wilson@cygnus.com)
3255
3256 * haifa-sched.c (find_rgns): In no_loops case, fix test for leaf
3257 blocks. Check for 1 successor which is the EXIT_BLOCK.
3258
3259 * haifa-sched.c (find_rgns): Detect unreachable blocks, including
3260 unreachable loops with more than one block.
3261
dbbfa8c8
MH
3262Wed May 6 08:22:24 1998 Manfred Hollstein <manfred@s-direktnet.de>
3263
3264 * fix-header.c (write_rbrac): Add "abort" to functions which need to
3265 be protected.
3266
f5963e61
JL
3267Wed May 6 00:09:36 1998 Jeffrey A Law (law@cygnus.com)
3268
3269 * Check in merge from gcc2. See ChangeLog.12 for details.
3270
3d90c2b5
JW
3271Tue May 5 14:33:49 1998 Jim Wilson <wilson@cygnus.com>
3272
c6a9dea8
JW
3273 * c-common.c (scan_char_table): Separate 's' and 'c'. 'c' does not
3274 accept 'a' flag. 'S' does accept 'a' flag.
3275 (check_format_info): When pedantic, warn for m/C/S/a/A formats,
3276 and `a' flag.
3277
3d90c2b5
JW
3278 * elf64.h (MULTILIB_DEFAULTS): Move definition after mips.h include.
3279
97b57a81
AS
3280Tue May 5 10:50:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3281
3282 * config/m68k/m68k.h: Declare functions from m68k.c used in
3283 macros and machine description.
3284 (ASM_OUTPUT_LONG_DOUBLE): Always use `l' flag in print format for
3285 long values.
3286 (ASM_OUTPUT_FLOAT): Likewise.
3287 (ASM_OUTPUT_FLOAT_OPERAND): Likewise.
3288
c5c63738
JM
3289Tue May 5 01:28:12 1998 Jason Merrill <jason@yorick.cygnus.com>
3290
3291 * tree.def: Add NAMESPACE_DECL.
3292 * dwarfout.c (type_ok_for_scope): Ignore NAMESPACE_DECLs for now.
3293 * dwarf2out.c (push_decl_scope): Likewise.
3294 (scope_die_for): Likewise.
3295 * tree.c (decl_function_context): Use TREE_CODE_CLASS to determine
3296 how to get next context level.
3297
2e14a41b
JW
3298Tue May 5 01:43:16 1998 Jim Wilson <wilson@cygnus.com>
3299
3300 * i386.c (output_fix_trunc): Add code to emulate non-popping DImode
3301 case.
3302
f78c792c
JL
3303Tue May 5 01:15:06 1998 Jeffrey A Law (law@cygnus.com)
3304
8b05263d
JL
3305 * h8300.h (ADDITIONAL_REGISTER_NAMES): Add "er" registers.
3306
f78c792c
JL
3307 * reorg.c (fill_slots_from_thread): Update REG_DEAD/REG_UNUSED notes
3308 for any insns skipped at the start of a block because they were
3309 redundant.
3310
4330b0e7
JW
3311Mon May 4 20:23:51 1998 Jim Wilson <wilson@cygnus.com>
3312
3313 * alpha.h (DBX_CONTIN_LENGTH): Decrease to 3000.
3314
b57062ca
UD
33151998-05-04 Ulrich Drepper <drepper@cygnus.com>
3316
3317 * c-common.c (format_char_info): Add new field hhlen.
3318 (print_char_table, scan_char_table, time_char_table): Initialize
3319 hhlen field appropriately.
3320 (char_format_info): Recognize hh modifier and lookup correct char
3321 table entry.
3322
06eaa86f
JW
3323Mon May 4 19:15:29 1998 Jim Wilson <wilson@cygnus.com>
3324
3325 * expr.c (expand_expr, case INDIRECT_REF): Don't optimize string
3326 reference if this is a store.
3327
9ed5dc54
RH
3328Mon May 4 17:25:17 1998 Richard Henderson <rth@cygnus.com>
3329
3330 * sparc.c (output_move_quad): Fix typo in mov_by_64 argument.
3331
fb6d9312
RL
3332Sun May 3 23:57:25 1998 Robert Lipe <robertl@dgii.com>
3333
3334 Make UnixWare 7 bootstrap support work with final shipping product.
b57062ca 3335 * configure.in: (i[34567]86-*-sysv5): append, not overwrite, xm_file.
fb6d9312
RL
3336 Pick up xm-siglist and xm-alloca.
3337 (xm_defines): Add USG so dbxout will build.
3338 * configure: Regenerate.
3339
b53beeb2 3340Sun May 3 13:51:34 PDT 1998 Richard Henderson <rth@cygnus.com>
82d6b402
RH
3341
3342 Support for official Sparc V9 ABI:
3343 * sparc.c (sparc_override_options): Force stack bias off for !arch64.
3344 Care for flag_pcc_struct_return default.
3345 (output_move_quad): Rewrite to move by halves on v9 and in the
3346 proper direction.
3347 (move_quad_direction): New function.
3348 (output_fp_move_quad): Use it to determine the direction of copy.
3349 (function_arg_slotno): Return -1 for FP reg overflow as well.
3350 (function_arg_record_value*): New functions.
3351 (function_arg): Use them. Streamline unprototyped parameter passing.
3352 (function_arg_pass_by_reference): Pass TCmode by reference.
3353 (function_value): New function.
3354 * sparc.h (PTRDIFF_TYPE, SIZE_TYPE): For -pedantic's sake, don't use
3355 long long in 64-bit mode.
3356 (RETURN_IN_MEMORY): v9 returns structs < 32-bytes in regs.
3357 (DEFAULT_PCC_STRUCT_RETURN): Make the default detectable.
3358 (BASE_RETURN_VALUE_REG): Consider complex float types for arch64.
3359 (BASE_OUTGOING_VALUE_REG, BASE_PASSING_ARG_REG): Likewise.
3360 (BASE_INCOMING_ARG_REG): Likewise.
3361 (FUNCTION_VALUE): Call function_value.
3362 (FUNCTION_OUTGOING_VALUE, LIBCALL_VALUE): Likewise.
3363 * sparc.md (movdi_sp32_v9): Disable for arch64.
3364 (movsf, movdf, movtf): Sort all ulternatives using fp regs first.
3365 (call_value_address_sp64): Remove register class constraints.
3366 (call_value_symbolic_sp64): Likewise.
3367 (nonlocal_goto): Pass label reg directly to goto_handlers. Constrain
3368 v9 case to 32-bit constants.
3369 (goto_handler_and_restore_v9): Provide a version for arch64.
3370 * sparc/linux64.h (SIZE_TYPE, PTRDIFF_TYPE): Remove private definition.
3371 * sparc/sp64-aout.h (TARGET_DEFAULT): Turn on stack bias.
3372 (CPP_PREDEFINES): New.
3373 * sparc/sp64-elf.h: Likewise.
3374 (PREFERRED_DEBUGGING_TYPE): Dwarf2.
3375 (ASM_OUTPUT_DWARF2_ADDR_CONST): New.
3376 * sparc/sysv4.h (SIZE_TYPE, PTRDIFF_TYPE): Undo svr4.h's changes.
3377
e40abc32
JL
3378Sat May 2 17:47:17 PDT 1998 Jeff Law (law@cygnus.com)
3379
3380 * version.c: Bump for snapshot.
3381
b60a8416
R
3382Sat May 2 01:37:29 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3383
3384 * reload.c (find_reloads): Emit USEs to mark where a pseudo
1e89ac8a 3385 is reloaded with the MEM of its stack slot.
b60a8416
R
3386 * reload1.c (cannot_omit_stores): Delete.
3387 (reload): Don't initialize it.
3388 Don't apply avoid_return_reg logic to USEs.
3389 When done, remove USEs that have a REG_EQUAL note on them.
3390 (emit_reload_insns): Handle case where we have inherited a MEM.
4d3eb414 3391 (choose_reload_regs): Likewise.
b60a8416
R
3392 (delete_output_reload): Don't use cannot_omit_stores.
3393
c1879238
JW
3394Thu Apr 30 18:59:03 1998 Jim Wilson <wilson@cygnus.com>
3395
3396 * Makefile.in (cpp.info, gcc.info): Put -o option before input file.
3397
459b3825
MM
3398Thu Apr 30 16:57:34 1998 Michael Meissner <meissner@cygnus.com>
3399
3400 * haifa-sched.c (print_{exp,value}): Various changes to make the
3401 debug output easier to read. Also, use only one buffer, and make
3402 sure the buffer we are passed in doesn't overflow.
3403 (safe_concat): Concatenate to a buffer without overflow.
3404
3fe4d12a 3405Thu Apr 30 16:57:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
459b3825
MM
3406
3407 * haifa-sched.c (alloc_{INSN,EXPR}_LIST): Make static to agree
3408 with the prototype.
b57062ca 3409
93da030f
R
3410Wed Apr 29 21:45:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3411
3412 * sched.c (new_insn_dead_notes): Check if the register was
3413 used in the original instruction.
3414 * haifa-sched.c (new_insn_dead_notes): Likewise.
3415
0c84c618
JW
3416Wed Apr 29 13:46:03 1998 Jim Wilson <wilson@cygnus.com>
3417
3418 * dwarf2out.c (scope_die_for): If could not find proper scope,
3419 check for and handle tagged type with incorrect TYPE_CONTEXT.
3420
bf5f0e90
JC
3421Wed Apr 29 15:34:40 1998 John Carr <jfc@mit.edu>
3422
3423 * calls.c (expand_call): Fix recognition of C++ operator new.
3424
3425 * alias.c (mode_alias_check): Disable type based alias detection.
3426
a0281dae
GK
3427Wed Apr 29 15:06:42 1998 Gavin Koch <gavin@cygnus.com>
3428
3429 * config/mips/elf.h (ASM_OUTPUT_DEF,ASM_WEAKEN_LABEL,
3430 ASM_OUTPUT_WEAK_ALIAS): Define.
3431 * config/mips/elf64.h: Same.
3432 * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK,
3433 ASM_WEAKEN_LABEL): Removed.
3434
55666054
AS
3435Wed Apr 29 10:53:29 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3436
3437 * calls.c (expand_call): Bump the length limit on the specially
3438 recognized function names to 17.
3439
2cea586a
JW
3440Tue Apr 28 17:53:33 1998 Jim Wilson <wilson@cygnus.com>
3441
f60d6248
JW
3442 * ginclude/stddef.h: Add check for _MACHINE_ANSI_H_ for BSD/OS
3443 when undefining macros at the end.
3444
bf931ec8
JW
3445 * expr.c (expand_builtin, case BUILT_IN_MEMSET): Break if either
3446 val or len has TREE_SIDE_EFFECTS set.
3447
2cea586a
JW
3448 * sparc.md (mulsidi3): Call const v8plus and v8plus routines.
3449 (mulsidi3_v8plus, const_mulsidi3_v8plus): Delete asterisk from name.
3450 (smuldi3_highpart): Call const v8plus routine.
3451 (smulsi3_highpart_v8plus): Renamed from smulsidi3_highpart_v8plus.
3452 (const_smulsi3_highpart_v8plus): New pattern.
3453 (smulsi3_highpart_sp32): Renamed from smulsidi3_highpart_sp32.
3454 (umulsidi3): Call const v8plus routine.
3455 (umulsi3_highpart): Handle const before v8plus. Call const v8plus
3456 routine.
3457 (umulsi3_highpart_v8plus): Renamed from umulsidi3_highpart_v8plus.
3458 (umulsi3_highpart_sp32): Renamed from umulsidi3_highpart_sp32.
3459
2b7972b0
MM
3460Tue Apr 28 08:55:26 1998 Michael Meissner <meissner@cygnus.com>
3461
3462 * m32r.c (*_oper{and|ator}): Change enum arguments and return
3463 values to int, so they can be prototyped even in files that don't
3464 include rtl.h.
3465 ({small,large}_insn_p): Ditto.
3466 (m32r_select_cc_mode): Ditto.
3467 (gen_compare): Ditto.
3468 (function_arg_partial_nregs): Ditto.
3469 (m32r_setup_incoming_varargs): Ditto.
3470 (init_reg_tables): Add prototype.
3471 (m32r_frame_info): Add prolog_size field.
3472 (m32r_compute_frame_size): Calculate the size of the prologue.
3473 (m32r_first_insn_address): Return prologue size.
3474 (m32r_output_function_prologue): Calculate frame size before
3475 printing out information. Print out the prologue size.
3476
3477 * m32r.h: Prototype all functions in m32r.c.
3478 (FIRST_INSN_ADDRESS): Declare, returning prologue size.
3479
3480 * m32r.md (bcc functions): Cast enum's to int.
3481
3482 * m32r.c (conditional_move_operand): Silence a debug message.
3483 ({small,long}_insn): New predicates.
b57062ca 3484
2b7972b0
MM
3485 * m32r.h (TARGET_M32R): New macro.
3486 (PREDICATE_CODES): Rearrange somewhat, add small_insn/long_insn.
3487 (HAIFA_P): Define as 1/0 depending on whether the Haifa scheduler
3488 was selected.
3489 (ISSUE_RATE): Define as 2.
3490
3491 * m32r.md (insn_size): New attribute.
3492 ({,rev_}branch_insn): Add .s qualifier to branches believed to be
3493 short.
3494 (m32r): New attribute.
3495
3496 * configure.in (enable_haifa): Switch m32r to Haifa by default.
3497 * configure: Regenerate.
3498
3499 (Changes from Nick Clifton <nickc@cygnus.com>)
3500 * m32r.h (EXTRA_CONSTRAINT): Implement 'S' constraint to perfoirm
3501 the equivalent of a negated 'I' constraint.
3502 (PRESERVE_DEATH_INFO_REGNO_P): Define in order to allow peephole
3503 optimisation to work.
3504
3505 * m32r.md (cmp_ne_small_const_insn): Use 'S' constriant rather
3506 than 'I' since the value is negated.
3507 (peephole): Add peephole optimisation to cope with optimization of
3508 divide and subtracts of the same operands.
3509
3510 * m32r.c zero_and_one, emit_cond_move): Add support for MVFC.
b57062ca 3511 * m32r.h: Ditto.
2b7972b0
MM
3512 * m32r.md: Ditto.
3513
3514 * m32r.h (PREDICATE_CODES): Add declaration of machine specific
3515 predicates.
3516
bd55c374
MH
3517Tue Apr 28 07:25:53 1998 Manfred Hollstein <manfred@s-direktnet.de>
3518
3519 * Makefile.in (libgcc2.ready): Revert last patch (Apr 24).
3520
3a6bd8c0
NC
3521Mon Apr 27 18:39:47 1998 Nick Clifton <nickc@cygnus.com>
3522
3523 * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Check against
3524 frame_pointer_rtx not FRAME_POINTER_REGNUM.
3525
0628fde6
JW
3526Mon Apr 27 18:36:28 1998 Jim Wilson <wilson@cygnus.com>
3527
561cf7b1
JW
3528 * reg-stack.c: Revert last patch (Apr 20).
3529 (convert_regs): Set insn to PREV_INSN (next) after do while loop.
3530
1688d6d2
JW
3531 * m68k/lb1sf68.asm (Laddsf$3): Fix typos in mcf5200 exg code.
3532
0628fde6
JW
3533 * loop.c (check_dbra_loop): New locals jump, first_compare, and
3534 compare_and_branch. Call get_condition to set first_compare.
3535 Set compare_and_branch to number of compare/branch instructions.
3536 Replace PREV_INSN (PREV_INSN (loop_end)) with first_compare.
3537 Replace '2' with compare_and_branch.
3538
07623417
AM
3539Mon Apr 27 15:53:30 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
3540
3541 * cplus-dem.c (demangle_qualified): Replace missing else.
3542
97d6fd65
R
3543Mon Apr 27 20:22:08 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3544
3545 * sh.c (gen_ashift_hi): Don't make SUBREG of a SUBREG.
3546
3d5a0820
R
3547Mon Apr 27 18:23:51 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3548
3549 * sh.c (sh_expand_prologue, sh_expand_epilogue):
3550 If TARGET_DOUBLE_ALIGN, preserve 64 bit stack alignment.
3551 * sh.h (STACK_BOUNDARY): Likewise.
3552
ef41dabb
R
3553Mon Apr 27 17:22:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3554
3555 * sh.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
3556
14bf4a33
MM
3557Mon Apr 27 08:55:23 1998 Michael Meissner <meissner@cygnus.com>
3558
22c4957e
MM
3559 * system.h (abort): If abort is not defined, and neither is
3560 USE_SYSTEM_ABORT, redefine abort to call fprintf and exit,
3561 reporting the line and filename of the error.
3562
3563 * .gdbinit: Add breakpoints on exit and fancy_abort.
3564
563c063f
MM
3565 * final.c (split_double): Avoid a compiler warning if
3566 BITS_PER_WORD is less than or equal to HOST_BIT_PER_WIDE_INT.
3567
14bf4a33
MM
3568 * rtl.h (JUMP_{CROSS_JUMP,NOOP_MOVES,AFTER_REGSCAN}): New macros
3569 for calling jump_optimize.
3570
3571 * toplev.c (rest_of_compilation): Call jump_optimize using JUMP_*
3572 macros, rather than 0/1's.
3573
5d02ee66
RH
3574Sun Apr 26 23:19:10 1998 Richard Henderson <rth@cygnus.com>
3575
3576 * alpha.h (CONST_COSTS): Zero is always free.
3577 (RTX_COSTS): Add EV6 costs. Abort if alpha_cpu is unknown.
3578
7bf40741
AS
3579Sun Apr 26 15:38:50 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3580
3581 * cplus-dem.c (gnu_special): Fix off-by-one bug when checking the
3582 length in the name of a virtual table.
3583
556ccd9b
RH
3584Sun Apr 26 01:21:06 1998 Richard Henderson <rth@cygnus.com>
3585
3586 * alpha.c (print_operand): Don't add 'v' suffix for ALPHA_FPTM_N.
3587
1206d294
JL
3588Sat Apr 25 22:11:38 PDT 1998 Jeff Law (law@cygnus.com)
3589
3590 * version.c: Bump for snapshot.
3591
4f242db3
JL
3592Sat Apr 25 17:17:15 1998 Jeffrey A Law (law@cygnus.com)
3593
3594 * fold-const.c (fold_convert): Fix typo.
3595
de12be17
JC
3596Sat Apr 25 17:55:54 1998 John Carr <jfc@mit.edu>
3597
3598 * alias.c (alias_invariant): New variable.
3599 (record_base_value): New argument INVARIANT.
3600 (memrefs_conflict_p): If a register has an entry in the alias_invariant
3601 array, try substituting that value for the register.
3602
3603 * rtl.h: Declare record_base_value.
3604
3605 * loop.c, unroll.c: Update callers of record_base_value.
3606
3607 * alias.c (find_base_value, find_base_term): SIGN_EXTEND and
3608 ZERO_EXTEND do not affect base values.
3609
fe81dd69
JL
3610Fri Apr 24 15:57:02 1998 Jeffrey A Law (law@cygnus.com)
3611
fb2c5c00
JL
3612 * dbxout.c (dbxout_type): Fix typo.
3613 (dbxout_range_type): Another HOST_WIDE_INT_PRINT_DEC fix.
3614
fe81dd69
JL
3615 * configure.in: Use CC_FOR_BUILD, not BUILD_CC.
3616
87d1ea79
JC
3617Fri Apr 24 16:11:47 1998 John Carr <jfc@mit.edu>
3618
3619 * expr.c (expand_builtin, case MEMSET): Set MEM_IN_STRUCT_P
3620 if the argument is the address of a structure or array.
3621
3622 * configure.in: Enable Haifa scheduler by default for SPARC.
3623
e89d3e6f
R
3624Fri Apr 24 20:55:47 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3625
3626 * cse.c (cse_set_around_loop): Don't do optimization when
3627 new pseudos are created.
3628
442f4018
JL
3629Fri Apr 24 11:00:18 1998 Jeffrey A Law (law@cygnus.com)
3630
3631 * dbxout.c (dbxout_type_fields): Use HOST_WIDE_INT_PRINT_DEC
3632 appropriately.
3633 (dbxout_type_method_1, dbxout_type): Likewise.
3634 (print_int_cst_octal, print_octal, dbxout_symbol): Likewise.
3635 (dbxout_type): Fix check for when to print a type range in
3636 octal vs decimal.
3637
7174c937
R
3638Fri Apr 24 16:45:03 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3639
3640 * (gen_shl_and, in case 1): Fix comparison with mask.
3641
0b812758
NC
3642Fri Apr 24 06:46:40 1998 Nick Clifton <nickc@cygnus.com>
3643
3644 * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Disallow frame
3645 pointer as second register in REG+REG pair.
3646
753a73c8
KG
3647Fri Apr 24 09:22:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3648
3649 * c-common.c (check_format_info): Don't check for the 'x' format
3650 character twice, instead check for 'x' and 'X'
3651
4a1991b3
MH
3652Fri Apr 24 08:02:30 1998 Manfred Hollstein <manfred@s-direktnet.de>
3653
3654 * Makefile.in (libgcc2.ready): Add explicit dependancy from
3655 $(STMP_FIXPROTO) to ensure all necessary include files have
3656 been created and to guarantee proper parallel builds.
3657
aec373f1
R
3658Fri Apr 24 04:42:35 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3659
3660 * sh.c (sh_expand_prologue, in !SH3E code): Don't push an extra
3661 register for stdarg functions.
3662 * sh.h (current_function_varargs): Declare.
3663 (FUNCTION_ARG): Ignore NAMED for stdarg functions.
3664
f5880dbe
JW
36651998-04-23 Jim Wilson <wilson@cygnus.com>
3666
f1f53f0b
JW
3667 * frame.c, libgcc2.c (stdlib.h, unistd.h): Don't include when
3668 inhibit_libc is defined.
3669
f5880dbe
JW
3670 * c-aux-info.c (gen_type): Use DECL_NAME only for TYPE_DECL.
3671
8ade1519
JW
3672Thu Apr 23 19:09:33 1998 Jim Wilson <wilson@cygnus.com>
3673
3674 * profile.c (tablejump_entry_p): New function.
3675 (branch_prob): Add code to recognize MIPS tablejump entry branch.
3676 Use tablejump_entry_p in MIPS and HPPA tablejump checking code.
3677
a2538ff7
NC
3678Thu Apr 23 15:01:13 1998 Nick Clifton <nickc@cygnus.com>
3679
3680 * config/arm/arm.c (find_barrier): Return as soon as a barrier is
3681 found, rather than at end of the loop, after the insn has been
b57062ca 3682 changed.
a2538ff7 3683
d0c42859
R
3684Thu Apr 23 20:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
3685
3686 * sh.c (gen_ashift_hi): Implement right shifts via gen_ashift.
3687 * sh.md (ashrhi3_k, lshrhi3_k, lshrhi3_m, lshrhi3, lshrhi3+1): Delete.
3688
693e265f
MM
3689Wed Apr 22 17:07:35 1998 Michael Meissner <meissner@cygnus.com>
3690
3691 * loop.c (note_addr_stored): Correct function to take 2 arguments,
3692 instead of 1.
3693
3694 * rtl.def (MATCH_INSN2): Add new matching pattern.
b57062ca 3695 * genrecog.c (add_to_sequence): Support MATCH_INSN2.
693e265f 3696
27eef9ce
JC
3697Wed Apr 22 15:52:22 1998 John Carr <jfc@mit.edu>
3698
3699 * emit-rtl.c (gen_highpart): The high part of a CONST_INT is not zero
3700 if HOST_BITS_PER_WIDE_INT is larger than BITS_PER_WORD.
b57062ca 3701
27eef9ce
JC
3702 * final.c (split_double): Sign extend both halves of a split CONST_INT.
3703
d972dd33
JL
3704Wed Apr 22 10:42:45 1998 Jeffrey A Law (law@cygnus.com)
3705
3706 * mips.c (compute_frame_size): Change only argument to a HOST_WIDE_INT.
3707
5e5199e8
AM
3708Wed Apr 22 10:53:49 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
3709
3710 * cplus-dem.c (struct work stuff): Add field for B and K mangle codes.
3711 (cplus_demangle_opname): Call mop_up_squangle.
b57062ca 3712 (cplus_demangle): Initialize squangle info, then call
5e5199e8 3713 internal_cplus_demangle. (Most code moved there as well)
b57062ca 3714 (internal_cplus_demangle): New function, performs most of what use
5e5199e8
AM
3715 to be done in cplus_demangle, but is only called with this file.
3716 (squangle_mop_up): New function to clean up B and K code data.
3717 (mop_up): set pointers to NULL after freeing.
b57062ca 3718 (demangle_signature, demangle_template, demangle_class): Add
5e5199e8
AM
3719 switch elements to handle K and B codes.
3720 (demangle_prefix, gnu_special, demangle_qualified): Add
3721 code to handle K and B codes.
3722 (do_type, demangle_fund_type): Handle B and K codes.
3723 (remember_Ktype): New function to store K info.
3724 (register_Btype, remember_Btype): New functions for B codes.
3725 (forget_B_and_K_types): New function to destroy B and K info.
3726
0dacbd0e
JW
37271998-04-21 Jim Wilson <wilson@cygnus.com>
3728
3729 * stmt.c (check_seenlabel): When search for line number note for
3730 warning, handle case where there is no such note.
3731
4ceb7595
JC
3732Tue Apr 21 20:48:37 1998 John Carr <jfc@mit.edu>
3733
3734 * genemit.c (gen_exp): Allow machine description to set mode of
3735 MATCH_OP_DUP.
3736
d09c9385
JC
3737Tue Apr 21 16:36:01 1998 John Carr <jfc@mit.edu>
3738
3739 * alias.c (mode_alias_check): New function.
3740 (true_dependence, anti_dependence, output_dependence): Call
3741 mode_alias_check.
3742
1eeed24e
JL
3743Tue Apr 21 12:05:32 1998 Jeffrey A Law (law@cygnus.com)
3744
d1c17572
JL
3745 * mips.h (STACK_BOUNDARY): Allow specific targets to override.
3746 (MIPS_STACK_ALIGN): Similarly.
3747
a6d7e156
JL
3748 * c-common.c (type_for_mode): Handle TI types.
3749 * c-decl.c (intTI_type_node, unsigned_int_TI_type_node): Define.
3750 (init_decl_processing): Handle TI types.
3751 * c-tree.h (intTI_type_node, unsigned_int_TI_type_node): Declare.
3752
1eeed24e
JL
3753 * mips.c (block_move_loop): Test Pmode == DImode instead of
3754 TARGET_MIPS64.
3755 (expand_block_move, save_restore_insns): Likewise.
3756 (function_prologue, mips_expand_prologue): Likewise.
3757 (mips_expand_epilogue): Likewise.
3758 * mips.h (POINTER_SIZE): Allow specific targets to override.
3759 (Pmode): Allow specific targets to override.
3760 (FUNCTION_PROFILER): Test Pmode == DImode instead of TARGET_MIPS64
3761 (POINTER_BOUNDARY, FUNCTION_MODE): Likewise.
3762 (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE): Likewise.
3763 (TRAMPOLINE_ALIGNMENT, INITIALIZE_TRAMPOLINE): Likewise.
3764 (CASE_VECTOR_MODE, ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
3765 (ASM_OUTPUT_ADDR_DIFF_ELT, SIZE_TYPE, PTRDIFF_TYPE): Likewise.
3766 * mips.md (indirect, tablejump & casesi support): Test for
3767 Pmode == DImode instead of TARGET_MIPS64.
3768 (call patterns): Likewise.
3769
d2f5ef70
KG
3770Tue Apr 21 09:43:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3771
3772 * objc/sendmsg.c: Define gen_rtx_MEM() to 1, as is already done
3773 for gen_rtx(MEM, ...).
3774
cb85a2f3
RH
3775Tue Apr 21 02:15:36 1998 Richard Henderson <rth@cygnus.com>
3776
3777 * sparc.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Rewrite
3778 to not be so gross, and to properly function with PIC.
3779
bb27e6c9
JW
3780Mon Apr 20 20:44:25 1998 Jim Wilson <wilson@cygnus.com>
3781
99b13ed3
JW
3782 * frame.c (heapsort): Rename to frame_heapsort.
3783
bb27e6c9
JW
3784 * gcc.c (do_spec_1, case '['): Move flag out of loop and initialize it.
3785
a9a05945
DE
3786Mon Apr 20 12:43:09 1998 Doug Evans <devans@canuck.cygnus.com>
3787
3788 * flow.c (sbitmap_vector_alloc): Ensure sbitmaps properly aligned.
3789
dc0f0eb8
JW
3790Mon Apr 20 15:04:14 1998 John Wehle (john@feith.com)
3791
3792 * i386.md (movsf_push, movdf_push, movxf_push): Allow memory
3793 operands during and after reload.
3794
95707627
R
3795Mon Apr 20 22:37:50 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3796
ba70e85a
JR
3797 * final.c (shorten_branches, init_insn_lengths): Move code
3798 to free label_align, uid_shuid, insn_lengths, insn_addresses
3799 and uid_align from the former function into the latter one;
3800 Add code to clear these variables.
3801 * sh.h (label_align): Remove declaration.
95707627 3802
0cd355fe
MM
3803Mon Apr 20 14:48:29 1998 Michael Meissner <meissner@cygnus.com>
3804
763d7ce8
MM
3805 * gcc.c (lang_specific_driver): Declare prototype properly so
3806 fatal can be passed to it without error.
3807
f55b1ca8
MM
3808 * configure.in (AC_CHECK_FUNCS): Check for strchr and strrchr.
3809 * configure: Regenerate.
3810 * config.in: Add #undef's for strchr and strrchr.
3811
3812 * protoize.c (toplevel): If we have rindex, but not strrchr, map
3813 rindex to strrchr.
3814 (file_could_be_converted): Use strrchr, not rindex since rindex is
3815 not defined on Linux systems when _POSIX_SOURCE is defined.
3816 (file_normally_convertible): Ditto.
3817 (process_aux_info_file): Ditto.
3818 (main): Ditto.
3819
0cd355fe
MM
3820 * rs6000.md (mov{sf,df} define_splits): When splitting a move of
3821 a constant to an integer register, don't split the insns that do
3822 the simple AND and OR operations, rather just split each word, and
3823 let the normal movsi define split handle it further.
3824
a0798779
R
3825Mon Apr 20 18:19:40 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3826
3827 * sh.c (find_barrier): Fix bug in ADDR_DIFF_VEC handling.
3828 (split_branches): Call init_insn_lengths.
3829
ced8dd8c
MM
3830Mon Apr 20 07:37:49 1998 Michael Meissner <meissner@cygnus.com>
3831
3832 * i386.c: Include expr.h to get the change_address prototype
3833 declared.
b57062ca 3834
f37eb5cb
L
3835Mon Apr 20 01:00:05 1998 H.J. Lu (hjl@gnu.org)
3836
3837 * reg-stack.c (subst_asm_stack_regs): Change to return the last
3838 new insn generated by this function.
3839 (subst_stack_regs): Likewise.
3840 (convert_regs): Record the last newly generated insn and use
3841 it for change_stack () instead of INSN.
3842
49fb8382
MH
3843Sun Apr 19 15:41:24 1998 Manfred Hollstein <manfred@s-direktnet.de>
3844
3845 * fix-header.c (enum special_file): Undefine enumerators if they
3846 are already defined by include files.
3847 * fixproto (rel_source_file in unistd.h stdlib.h): Prefix file protection
3848 macro with '__' to not pollute user namespace.
3849
c6a754f2
RH
3850Sun Apr 19 02:42:06 1998 Richard Henderson <rth@cygnus.com>
3851
3852 * haifa-sched.c (queue_to_ready): Fix typo in prototype.
3853
399cc148
JL
3854Sat Apr 18 23:52:35 PDT 1998 Jeff Law (law@cygnus.com)
3855
3856 * version.c: Bump for snapshot.
3857
84b77fba
JW
3858Sat Apr 18 18:30:22 1998 Jim Wilson <wilson@cygnus.com>
3859
07415a17
JL
3860 * i386.md (fix_truncsfdi2+[123]): Add + to operand 1 constraints.
3861
84b77fba
JW
3862 * i386.h (CPP_CPU_DEFAULT): Renamed to CPP_CPU_DEFAULT_SPEC.
3863 Add missing -Dpentium* options.
3864 (CPP_CPU_SPEC): Delete redundant definition. Include cpp_cpu_default
3865 instead of CPP_CPU_DEFAULT.
3866 (EXTRA_SPECS): Add entry for cpp_cpu_default.
3867
db72d7a1
DE
3868Sat Apr 18 19:06:59 1998 David Edelsohn <edelsohn@mhpcc.edu>
3869
3870 * rs6000.md (floatsidf2_loadaddr): rs6000_fpmem_offset will be
3871 negative in a stackless frame.
3872 * rs6000.c (rs6000_stack_info): Don't include fixed-size link area
3873 in stackless frame size. Support 64-bit stackless frame size.
3874 Combine fpmem offset calculations and don't add total_size to
3875 offset if not pushing a stack frame.
3876
a1ecb5ca
JW
3877Sat Apr 18 15:41:16 1998 Jim Wilson <wilson@cygnus.com>
3878
3879 * regmove.c (fixup_match_1): In three places, in flag_exceptions
3880 check, change p to q.
3881
a2a05b0a
JW
3882Sat Apr 18 15:30:49 1998 Jim Wilson <wilson@cygnus.com>
3883
3884 * gcc.c (lang_specific_driver): Add new parm type to prototype.
3885 (added_libraries): New file scope static variable.
3886 (process_command): Initialize added_libraries. Pass it to
3887 lang_specific_driver.
3888 (main): Use added_libraries in check for no input files.
b57062ca 3889
284d86e9
JC
3890Sat Apr 18 01:23:11 1998 John Carr <jfc@mit.edu>
3891
3892 * sparc.c, sparc.h, sparc.md, sol2.h: Many changes related to V9
3893 code generation. Use 64 bit instructions in 32 bit mode when
3894 possible. Use V9 return instruction. UltraSPARC optimizations.
3895
3896 * sparc.h: Change gen_rtx (CODE to gen_rtx_CODE (.
3897
43be8193
JL
3898Fri Apr 17 22:38:17 1998 Jeffrey A Law (law@cygnus.com)
3899
ea8693a4
JL
3900 * global.c (global_alloc): Don't pass HARD_CONST (0) to find_reg,
3901 just pass zero. That will work regardless of the size of HARD_REG_SET.
3902
43be8193
JL
3903 * libgcc2.c (__floatdisf): Fix a couple typos.
3904
45df6aea
JW
3905Fri Apr 17 17:28:26 1998 Jim Wilson <wilson@cygnus.com>
3906
3907 * Makefile.in (mostlyclean): Delete *.mach and *.bp files.
3908
6cca74ab
GM
3909Fri Apr 17 16:35:35 1998 Greg McGary <gkm@gnu.org>
3910
3911 * emit-rtl.c (gen_highpart): initialize `word' properly for pseudo.
3912
77e6b0eb
JC
3913Fri Apr 17 14:30:37 1998 John Carr <jfc@mit.edu>
3914
3915 * emit-rtl.c (operand_subword_force): If a register can not be
3916 accessed by words, copy it to a pseudo register.
3917
27f4cfdb
JW
3918Fri Apr 17 14:30:37 1998 Jim Wilson <wilson@cygnus.com>
3919
3920 * rs6000/vxppc.h (CPP_SPEC): Add support for mrelocatable*.
3921
f4a73984
MM
3922Fri Apr 17 17:01:25 1998 Michael Meissner <meissner@cygnus.com>
3923
3924 * tree.h (mark_seen_cases): Delete declaration.
3925
00769100
JL
3926Fri Apr 17 13:32:20 1998 Jeffrey A Law (law@cygnus.com)
3927
3928 * stmt.c (mark_seen_cases): Make static and add prototype.
3929
2467749d
KG
3930Fri Apr 17 11:21:43 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3931
3932 * frame.c: Include stdlib.h and unistd.h to possibly get various
3933 function prototypes. The fixproto script guarantees these header
3934 files exist on the target system.
3935 * libgcc2.c: Likewise.
b57062ca 3936
2467749d
KG
3937 * gthr-single.h (__gthread_mutex_lock, __gthread_mutex_trylock,
3938 __gthread_mutex_unlock): Add __attribute__ ((__unused__)) to the
3939 function parameters.
3940 * libgcc2.c (__udiv_w_sdiv): Likewise.
3941
74c5186c
JL
3942Thu Apr 16 22:41:02 1998 Jeffrey A Law (law@cygnus.com)
3943
ac546323
JL
3944 * varasm.c (asm_output_bss): Add prototype.
3945 (asm_output_aligned_bss): Likewise.
3946
3947 * unroll.c (verify_addresses): Add prototype.
3948
3949 * toplev.c: Add many prototypes. Too many to mention here.
3950
3951 * stmt.c (check_seenlabel): Add prototype.
3952
3953 * rtlanal.c (reg_set_p_1): Add prototype.
3954 (reg_set_last_1): Likewise.
3955
3956 * reorg.c (find_dead_or_set_registers): Add prototype.
b57062ca 3957
ac546323
JL
3958 * regmove (try_auto_increment): Add prototype.
3959
3960 * reg-stack.c (pop_stack): Add prototype.
3961
3962 * recog.c (validate_replace_rtx_1): Add prototype.
3963 (find_cosntant_term_loc): Likewise.
3964
a777ae13
JL
3965 * loop.c (regs_patch_p): Add prototype.
3966 (add_label_notes, count_nonfixed_reads): Likewise.
3967 (find_single_use_in_loop): Likewise.
3968 (express_from): Surround prototype with #ifdef.
3969 (giv_sort): Similarly.
3970
3971 * jump.c (mark_modified_reg): Add prototype.
3972
3973 * haifa-sched.c (is_prisky): Add prototype.
3974 (queue_to_ready): Likewise.
3975
3976 * genextract.c (gen_insn): Add prototype.
3977
3978 * genemit.c (max_operand_1): Add prototype.
3979 (max_operand_vec, print_code, gen_exp, gen_insn): Likewise.
3980 (gen_expand, gen_explit, output_add_clobbers): Likewise.
3981 (output_init_mov_optab): Likewise.
3982
3983 * genattrtab.c (attr_hash_add_rtx): Add prototype.
3984 (attr_hash_add_string, write_length_unit_log): Likewise.
3985
3986 * genattr.c (init_range): Add prototype.
3987
3988 * combine.c (sets_function_arg_p): Add prototype.
3989
3990 * expr.c (store_constructor_field): Add prototype.
3991 (get_memory_usage_from_modifier): Likewise
3992
3993 * expmed.c (synth_mult): Add prototype.
3994 (choose_multiplier, invert_mod2n): Likewise.
3995
242c13b0
JL
3996 * except.c (push_eh_entry): Add prototype.
3997 (pop_eh_entry, enqueue_eh_entry, dequeu_eh_entry): Likewise.
3998 (call_get_eh_context, start_dynamic_cleanup): Likewise.
3999 (start_dynamic_handler, can_throw): Likewise.
4000 (output_exception_table_entry, scan_region): Likewise.
4001 (eh_regs, set_insn_eh_region): Likewise.
4002
1ad4f46b
JL
4003 * dwarfout.c (decl_class_context): Add prototype.
4004 (output_inheritance_die, type_ok_for_scope): Likewise.
4005
e822c593
JL
4006 * c-lex.c (skip_white_space_on_line): Add prototype.
4007
70fec650
JL
4008 * alias.c (record_set): Add prototype.
4009 (find_base_term, base_alias_check): Likewise.
b57062ca 4010
1ac4f799
JL
4011 * function.c (assign_outer_stack_local): Make static and add prototype.
4012
a2e68776
JL
4013 * haifa-sched.c (build_control_flow): Accept raw data as inputs
4014 instead of computing it locally. Callers changed.
4015 (find_rgns): Several new arguments. Callers changed.
4016 Generally clean up and comment better. Use dominators to
4017 identify reducible loops. Convert some flag arrays to bitmaps.
4018 Convert most of the code to work on pred/succ lists instead of
4019 an edge table. Add comments for future improvements.
4020 (schedule_insns): Allocate temporary tables for flow data, call
4021 routines to compute flow data and pass it along to children as
4022 arguments.
4023 (debug_control_flow): Delete. Use dump_bb_data instead.
4024
97b1ef1c
JL
4025 * basic-block.h (compute_dominators): Declare.
4026
74c5186c
JL
4027 * flow.c (dump_sbitmap, dump_sbitmap_vector): New debugging
4028 functions.
4029 * basic-block.h: Declare them.
4030
7ce55772
JW
4031Thu Apr 16 13:45:51 1998 Jim Wilson <wilson@cygnus.com>
4032
4033 * reg-stack.c (constrain_asm_operands): Set n_alternatives to zero if
4034 no operands.
4035
e88caebd
APB
4036Wed Apr 15 11:33:09 1998 Alexandre Petit-Bianco <apbianco@sendai.cygnus.com>
4037
4038 * tree.c (build_expr_wfl): Use NULL_TREE if the file name is NULL.
4039 Propagate TREE_SIDE_EFFECTS and TREE_TYPE iff the encapsulated
4040 node is non NULL. Cache last file name and file name identifier node.
4041
a62e870c
MM
40421998-04-15 Mark Mitchell <mmitchell@usa.net>
4043
4044 * c-common.c (declare_hidden_char_array): Use TYPE_DOMAIN to get
4045 the length of an array, not TREE_TYPE.
4046
5e89e58b
JL
4047Wed Apr 15 15:31:34 1998 Jeffrey A Law (law@cygnus.com)
4048
4049 * flow.c (sbitmap_union_of_successors): New function.
4050 * basic-block.h (sbitmap_union_of_successors): Declare it.
4051
df6faf79
JW
4052Wed Apr 15 12:38:03 1998 Jim Wilson <wilson@cygnus.com>
4053
4054 * configure.in (gnu_ld): Rename to gnu_ld_flag before main loop.
4055 Set gnu_ld to gnu_ld_flag inside main loop.
4056 (gas): Likewise.
4057
5c60e5c0
DB
4058Wed Apr 15 14:50:05 1998 Dave Brolley <brolley@cygnus.com>
4059
4060 * toplev.c (compile_file): Call init_parse using new interface.
4061 (init_lex): Remove declaration.
4062
4063 * c-lex.c (init_parse): Now returns char* containing filename.
4064
2872409d
JL
4065Wed Apr 15 12:37:10 1998 Jeffrey A Law (law@cygnus.com)
4066
4067 * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Do nothing if not optimizing.
4068
4db83042
MM
4069Wed Apr 15 12:10:18 1998 Michael Meissner <meissner@cygnus.com>
4070
4071 * Makefile.in (gen{config,flags,codes,emit}): Link in host print-rtl.o.
4072 (gen{extract,peep,opinit,output}): Ditto.
4073
4074 * gen{attr,codes,config,emit,output}.c (insn_attr_name): Provide a
4075 global definition so print-rtl.o can be linked in.
4076 * gen{peep,recog}.c (insn_attr_name): Ditto.
4077
9aeba741
RP
4078Tue Apr 14 07:30:57 1998 K. Richard Pixley <rich@kyoto.noir.com>
4079
4080 * fixincludes: discard empty C++ comments, as found in sys/time.h
4081 on hpux-11.0.
4082
7878eae7
AS
4083Wed Apr 15 10:47:21 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4084
4085 * config/m68k/m68k.md (adddi3, subdi3): Optimize for constant
4086 operand.
4087
fcb7cb6c
JL
4088Wed Apr 15 01:21:21 1998 Jeffrey A Law (law@cygnus.com)
4089
4090 * emit-rtl.c (operand_subword): Rework slightly to avoid
4091 bogus warning from previous change.
4092
47747e53
RH
4093Tue Apr 14 23:39:13 1998 Richard Henderson <rth@cygnus.com>
4094
4095 * alpha.md: Revert Oct 27 change, as it is superceeded by Kenner's
4096 Nov 8 find_replacement change. Move decls of get_unaligned_address
4097 * alpha.h: ... here.
4098
8450a694
JC
4099Tue Apr 14 22:00:39 1998 John Carr <jfc@mit.edu>
4100
7940255d
JC
4101 * function.c (assign_parms): Initialize unsignedp before passing
4102 its pointer to promote_mode.
4103
8450a694
JC
4104 * genattrtab.c (check_attr_test): Handle MATCH_INSN like MATCH_OPERAND.
4105 (write_test_expr): Allow MATCH_INSN.
4106
c70afde1
PE
4107Tue Apr 14 21:57:57 1998 Paul Eggert <eggert@twinsun.com>
4108
4109 * install.texi: Update section on warnings that can be safely ignored.
4110
cf877a42
JW
4111Tue Apr 14 14:55:16 1998 Jim Wilson <wilson@cygnus.com>
4112
4113 * mips.md (reload_outdi): Change the scratch mode from DImode to
4114 TImode. New variable scratch, used instead of operand[2] in template.
4115 Add code for MIPS16 HILO_REGNUM case where output reg is not M16_REG_P.
4116
996d9dac
MM
4117Tue Apr 14 16:19:03 1998 Michael Meissner <meissner@cygnus.com>
4118
4119 * expr.c (MOVE_RATIO): Set to 3 if optimizing for space.
4120
de2d990f
KW
4121Tue Apr 14 11:31:28 1998 Krister Walfridsson <cato@df.lth.se>
4122
4123 * i386/bsd386.h (ASM_OUTPUT_ALIGN): Redefine.
4124
d5daf098
JL
4125Tue Apr 14 09:02:32 1998 Jeffrey A Law (law@cygnus.com)
4126
6862dfac
JL
4127 * svr4.h (ASM_DECLARE_OBJECT_NAME): Use HOST_WIDE_INT_PRINT_DEC.
4128 (ASM_FINISH_DECLARE_OBJECT): Likewise.
4129
b7cb92ad
JL
4130 * Idea and part of the patch from HJ.
4131 * Makefile.in: auto-host.h renamed from auto-config.h. All references
4132 changed.
4133 (distclean): Remove auto-build.h too.
4134 * configure.in: Rename host autoconf generated file to auto-host.h.
4135 If host != build, then run autoconf to generate auto-build.h for
4136 the build machine and include it in build_xm_files.
4137 Check for wait.h and sys/wait.h.
4138
d5daf098
JL
4139 * combine.c (simplify_rtx, case TRUNCATE): Respect value of
4140 TRULY_NOOP_TRUNCATION.
4141
7d02bbef
JM
4142Mon Apr 13 11:31:49 1998 Jason Merrill <jason@yorick.cygnus.com>
4143
4144 * tree.h (BINFO_OFFSET_ZEROP): Use integer_zerop.
4145
4754172c
CM
4146Sun Apr 12 20:55:32 1998 Catherine Moore <clm@cygnus.com>
4147
4148 * invoke.texi (ld options) Include memset requirements
4149 for options -nodstdlib and -nodefaultlibs.
4150
bb72a084
PE
41511998-04-12 Paul Eggert <eggert@twinsun.com>
4152
4153 This change is from an idea suggested by Arthur David Olson.
4154
4155 * c-common.c (decl_attributes, record_function_format,
4156 check_format_info, init_function_format_info):
4157 Add support for strftime format checking.
4158 (enum format_type): New type.
4159 (record_function_format): Now static, and takes value of type
4160 enum format_type instead of int.
4161 (time_char_table): New constant.
4162 (struct function_format_info): format_type member renamed from is_scan.
4163 (check_format_info): Use `warning' rather than sprintf followed by
4164 `warning', to avoid mishandling `%' in warnings.
4165 Change `pedwarn' to `warning', since these warnings do not necessarily
4166 mean the program does not conform to the C Standard, as the code
4167 need not be executed.
4168
4169 * c-tree.h (record_function_format): Remove decl; no longer extern.
4170
4171 * extend.texi: Add documentation for strftime format checking.
4172
1be12a4a
JL
4173Sun Apr 12 20:23:03 1998 Jeffrey A Law (law@cygnus.com)
4174
71922625
JL
4175 * mips/ecoffl.h: Do not include mips.h.
4176 * mips/elf.h: Likewise.
4177
1be12a4a
JL
4178 * configure.in (mips-*-ecoff): Do not mention mips/mips.h in tm_files.
4179 * mips/ecoff.h: Include "mips/mips.h".
4180
9fe69077
JL
4181Sat Apr 11 22:42:54 PDT 1998 Jeff Law (law@cygnus.com)
4182
4183 * version.c: Bump for snapshot.
4184
c6a26dc4
JL
4185Sat Apr 11 01:24:28 1998 Jeffrey A Law (law@cygnus.com)
4186
4187 * cse.c (count_reg_usage): Correctly handle REG_NONNEG notes.
4188 (delete_trivially_dead_insns): Renamed from delete_dead_from_cse.
4189 * toplev.c (rest_of_compilation): Call delete_trivially_dead_insns instead of delete_dead_from_cse. Also call delete_trivially_dead_insns
4190 between loop optimization passes.
4191 * rtl.h: Updated appropriately.
4192
bbb81923
JL
4193Fri Apr 10 22:28:32 1998 Jeffrey A Law (law@cygnus.com)
4194
4195 Reinstall this patch from Jason.
4196 * function.c (push_function_context_to): Don't call init_emit.
4197
29cb1e1f
NC
4198Fri Apr 10 13:40:20 1998 Nick Clifton <nickc@cygnus.com>
4199
4200 * rtl.c (read_skip_spaces): Prevent infinite loops upon
4201 encountering unterminated comments.
4202
3f518020
JL
4203Fri Apr 10 10:43:41 1998 Jeffrey A Law (law@cygnus.com)
4204
4205 * emit-rtl.c (operand_subword): Properly handle CONST_INTs for
4206 64x32 cross builds.
4b104d6e
JL
4207
4208 * configure.in: Handle --with-fast-fixincludes.
4209 (fixincludes): If --with-fast-fixincludes, then use a different
4210 fixincludes program by default.
4211 * Makefile.in (fixinc.sh): New rule.
4212
b76c90cf
L
4213Fri Apr 10 00:36:31 1998 H.J. Lu (hjl@gnu.org)
4214
4215 * i386.md (movqi+1): Handle invalid QI register.
4216 (movsf_push-1): Likewise.
4217
2e076ddf
NC
4218Thu Apr 9 16:53:59 1998 Nick Clifton <nickc@cygnus.com>
4219
4220 * config/m32r/m32r.c: call_address_operand(): Only accept symbolic
4221 addresses.
4222 symbolic_memort_operand(), call32_operand(), int8_operand(),
4223 int16_operand(), uint24_operand(), reg_or_int8_operand(): Removed.
4224 Not used.
4225 uint16_operand(): Made static.
4226
b1d6ccb8
JL
4227Thu Apr 9 01:43:04 1998 Jeffrey A Law (law@cygnus.com)
4228
4229 * calls.c (expand_call): Fix typo.
4230
e56e519d
DB
4231Thu Apr 9 00:18:44 1998 Dave Brolley (brolley@cygnus.com)
4232
4233 * c-lex.c (finput): New global.
4234 (init_parse): Always included. Handle !USE_CPPLIB using
4235 code originally in compile_file.
4236 (finish_parse): Update for CPPLIB.
4237 * toplev.c (init_parse, finish_parse): Declare.
4238 (finput): Delete variable. Now in front-ends.
4239 (compile_file): Remove code which is now handled by init_parse
4240 which is unconditionally called. Similarly for finish_parse.
4241
85d7aed9
GK
4242Wed Apr 8 23:13:50 1998 Gavin Koch <gavin@cygnus.com>
4243
4244 * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK,
4245 ASM_WEAKEN_LABEL): Add.
4246
574badbc
RH
4247Wed Apr 8 18:21:30 1998 Richard Henderson <rth@cygnus.com>
4248
4249 * alpha/crtbegin.asm, alpha/crtend.asm, alpha/t-crtb: New files.
4250 * configure.in (alpha-*-linux*): Use them.
4251
bf1e5319 4252Fri Apr 3 17:02:13 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
b57062ca 4253
bf1e5319
APB
4254 * tree.def (EXPR_WITH_FILE_LOCATION): New tree node definition.
4255 * tree.h (EXPR_WFL_{NODE,FILENAME,FILENAME_NODE,LINENO,
4256 COLNO,LINECOL,SET_LINECOL,EMIT_LINE_NOTE}): New macros.
4257 (build_expr_wfl): New prototype declaration.
4258 * tree.c (build_expr_wfl): New function, to build
4259 EXPR_WITH_FILE_LOCATION nodes.
4260 (copy_node): Don't zero TREE_CHAIN if copying a
4261 EXPR_WITH_FILE_LOCATION node.
4262 * print-tree.c (print_node): Handle EXPR_WITH_FILE_LOCATION.
4263 * expr.c (expand_expr): Handle EXPR_WITH_FILE_LOCATION.
4264
ee5254ff
JL
4265Wed Apr 8 12:51:19 1998 Jeffrey A Law (law@cygnus.com)
4266
62db76ee
JL
4267 * configure.in (v850): Use t-v850.
4268 (ix86-wrs-vxworks): Recognize 786 just like other x86 configurations.
4269
10a998b0
JL
4270 * protoize.c (creat, read, write): Do not declare.
4271
e105f02c
JL
4272 * jump.c (mark_jump_label): Record REG_LABEL notes for insns which
4273 refer to the CODE_LABEL before a dispatch table.
4274
56b2d7a7
JL
4275 * invoke.texi: Add ARC options.
4276
c74c0cff
JL
4277 * gcc.c (proces_command): Improve error message for -o with
4278 either -c or -S.
4279
2d58da15
JL
4280 * i386/x-cygwin32 (CLIB): Link in advapi32.
4281
40ef2fc5
JL
4282 * alpha.h (ASM_IDENTIFY_GCC): Define to nothing.
4283 (ASM_IDENTIFY_LANGUAGE): Likewise.
4284
df89b5e7
JL
4285 * i386.md (movqi recognizer): Don't perfom byte increment into
4286 a NON_QI_REG_P.
4287
f09ff199
JL
4288 * configure.in (x86-dg-dgux): Run fixinc.dgux.
4289
df89b5e7 4290 * i370.h: Fix typo in GEN_INT changes.
f962b99f 4291
c3709629
JL
4292 * bitmap.c (bitmap_element_allocate): Use "void" for arglist instead
4293 of an empty arglist in prototype.
4294
ee5254ff
JL
4295 * Makefile.in: Remove bytecode crud that crept back in after the
4296 gcc2 merge.
4297
0806342b
BK
42981998-04-08 Brendan Kehoe <brendan@cygnus.com>
4299
4300 * c-lex.h (is_class_name): Fix arg type to be tree, not void.
4301 (make_pointer_declarator, reinit_parse_for_function): Fix typo.
4302
6f734908
RE
4303Wed Apr 8 06:16:45 1998 Richard Earnshaw (rearnsha@arm.com)
4304
4305 * arm.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
4306
56c0e996
BS
4307Wed Apr 8 00:44:18 1998 Bernd Schmidt (crux@pool.informatik.rwth-aachen.de>
4308
4309 * c-lex.c (is_class_name): Delete declaration.
4310 (whitespace_cr): Make static and add prototype.
4311 * c-lex.h (make_pointer_declarator, reinit_parse_for_function,
4312 yylex, get_directive_line): Turn declarations into prototypes.
4313 (position_after_whitespace, check_newline, yyerror,, is_class_name,
4314 forget_protocol_qualifiers, remember_protocol_qualifiers): Add
4315 prototypes.
4316 * genattr.c (extend_range, write_upcase, gen_attr, write_units): Add
4317 prototypes.
4318 * gencodes.c (gen_insn): Add prototype.
4319 * genconfig.c (walk_insn, gen_insn, gen_expand, gen_split,
4320 gen_peephole): Add prototypes.
4321 * genflags.c (num_operands, gen_proto, gen_nonproto, gen_insn): Add
4322 prototypes.
4323 * gengenrtl.c (type_from_format, accessor_from_format, special_rtx,
4324 special_format, find_formats, gendecl, genmacro, gendef, genlegend,
4325 genheader, gencode): Add prototypes.
4326 * genopinit.c (gen_insn): Add prototype.
4327 * genoutput.c (output_prologue, output_epilogue, scan_operands,
4328 process_template, validate_insn_alternatives, gen_insn, gen_peephole,
4329 gen_expand, gen_split, n_occurrences): Add prototypes.
4330 * genpeep.c (gen_peephole): Add prototype.
4331 * loop.c (find_and_verify_loops, mark_loop_jump, prescan_loop,
4332 reg_in_basic_block_p, consec_sets_invariant_p, libcall_other_reg,
4333 labels_in_range_p, count_loop_regs_set, note_addr_stored,
4334 loop_reg_used_before_p, scan_loop, replace_call_address,
4335 skip_consec_insns, libcall_benefit, ignore_some_movables,
4336 force_movables, combine_movables, rtx_equal_for_loop_p, move_movables,
4337 strength_reduce, valid_initial_value_p, find_mem_givs, record_biv,
4338 check_final_value, record_giv, update_giv_derive, basic_induction_var,
4339 simplify_giv_expr, general_induction_var, consec_sets_giv,
4340 check_dbra_loop, express_from, combine_givs_p, combine_givs,
4341 product_cheap_p, maybe_eliminate_biv, maybe_eliminate_biv_1,
4342 last_use_this_basic_block, record_initial, update_reg_last_use,
4343 iteration_info, analyze_loop_iterations, insert_bct,
4344 instrument_loop_bct, indirect_jump_in_function_p): Turn declarations
4345 into prototypes.
4346
cc46ae8e
JL
4347Tue Apr 7 21:48:52 1998 Jeffrey A Law (law@cygnus.com)
4348
4349 * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
4350
e7d075bf
KR
43511998-04-07 Ken Raeburn <raeburn@cygnus.com>
4352
4353 * config/mips/mips.c (siginfo): Deleted.
4354 (override_options): Don't install SIGINFO signal handler.
4355
668d07be
JW
4356Tue Apr 7 11:58:04 1998 Jim Wilson <wilson@cygnus.com>
4357
4358 * loop.c (check_dbra_loop): When normalize comparison_val, add check
4359 to verify it is non-negative.
4360
cd36edbd
RH
4361Tue Apr 7 02:01:47 1998 Richard Henderson <rth@cygnus.com>
4362
4363 * alpha.c (alpha_expand_block_move): Correctly collect block offsets.
4364 (alpha_expand_block_clear): Likewise.
4365
e814ca97
RH
4366Mon Apr 6 23:36:01 1998 Richard Henderson <rth@cygnus.com>
4367
4368 * tree.h (sizetype_tab): Fix previous change for K&R.
4369
f1d9e6d2
JL
4370Mon Apr 6 22:23:29 PDT 1998 Jeff Law (law@cygnus.com)
4371
4372 * version.c: Bump for snapshot.
4373
22ec3928
RE
4374Mon Apr 6 23:16:10 1998 Richard Earnshaw (rearnsha@arm.com)
4375
4376 * configure.in (sparc-*-solaris2*): Add xm-siglist.h to xm_file.
4377 Add USG and POSIX to xm_defines.
4378
10da1131
BM
4379Mon Apr 6 21:49:57 1998 Bob Manson <manson@charmed.cygnus.com>
4380
4381 * gcc.c: Add linker spec.
4382 (link_command_spec): Use %(linker) instead of ld.
4383 (main): If collect2 is requested as the linker, see if it exists;
4384 if not, use ld instead.
4385
4386 * Makefile.in (USE_COLLECT2): It's named collect2 now, not ld.
4387 (ld:) Deleted.
4388 (install-collect2): Install as collect2, not ld.
4389
4390 * configure.in(will_use_collect2): It's named collect2 now.
4391
4392 * collect2: Remove checks to see if we were invoked recursively.
4393 (collect_execute): Use _spawnvp under cygwin32.
4394
a8afd67b
JW
4395Mon Apr 6 17:23:41 1998 Jim Wilson <wilson@cygnus.com>
4396
4397 * haifa-sched.c (build_control_flow): Set unreachable for block whose
4398 only predecessor is itself.
4399
944fc8ab
KG
4400Mon Apr 6 16:08:04 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4401
4402 * c-parse.in: Include system.h, and remove stuff now made redundant.
4403 * cccp.c: Likewise.
4404 * cexp.y: Likewise.
4405 * protoize.c: Likewise. Properly check for cpp stringification.
4406
4407 * Makefile.in (c-parse.o, cccp.o, cexp.o, protoize.o, unprotoize.o):
b57062ca 4408 Depend on system.h.
944fc8ab
KG
4409
4410 * objc/Make-lang.in (objc-parse.o): Likewise.
4411
3286ab57
KG
4412Mon Apr 6 14:59:58 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4413
4414 * gansidecl.h: Check if compiler supports __attribute__. Provide
4415 definitions for ATTRIBUTE_UNUSED and ATTRIBUTE_PRINTF using
4416 __attribute__ when its available. Also provide definitions for
4417 ATTRIBUTE_PRINTF_1, ATTRIBUTE_PRINTF_2 and ATTRIBUTE_PRINTF_3 in
4418 terms of ATTRIBUTE_PRINTF.
b57062ca 4419
3286ab57
KG
4420 * genoutput.c (process_template): Use ATTRIBUTE_UNUSED in place
4421 of __attribute__.
4422
d276f2bb
CM
4423Mon Apr 6 07:17:52 1998 Catherine Moore <clm@cygnus.com>
4424
4425 * combine.c (can_combine_p): Include successor in volatile test.
4426
64ad9df2
R
4427Mon Apr 6 14:16:33 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4428
4429 * sh.h (CASE_VECTOR_SHORTEN_MODE): Fix logic when to set
4430 offset_unsigned.
4431
dc544d2c
JL
4432Mon Apr 6 02:03:29 1998 Jeffrey A Law (law@cygnus.com)
4433
4434 * objc/objc-act.c (encode_aggregate_within): Avoid GNU extensions
4435 in prototype and definition.
b57062ca 4436
38c413cd
JL
4437Mon Apr 6 00:48:56 PDT 1998 Jeff Law (law@cygnus.com)
4438
4439 * version.c: Bump for snapshot.
4440
59dd0a31
RH
4441Mon Apr 6 00:08:50 1998 Richard Henderson <rth@cygnus.com>
4442
b57062ca 4443 * alpha.c (alpha_expand_block_clear): Add missing offset arg to
59dd0a31
RH
4444 alpha_expand_unaligned_store_words.
4445
f31fce3f
JW
4446Sun Apr 5 21:31:24 1998 John Wehle (john@feith.com)
4447
4448 * i386.md (movsf_push, movsf_mem): Remove.
4449 (movsf_push): Rename from movsf_push_nomove and move in front of
4450 movsf. Use nonmemory_operand predicate and don't bother checking
4451 TARGET_MOVE.
4452 (movsf_push_memory): New pattern.
4453 (movsf): Don't bother checking for push_operand. If TARGET_MOVE and
4454 both operands refer to memory then force operand[1] into a register.
4455 (movsf_normal): Change to unnamed pattern.
4456 Likewise for movdf, movxf, and friends.
4457
27ebc03e
JL
4458Sun Apr 5 18:45:51 PDT 1998 Jeff Law (law@cygnus.com)
4459
4460 * version.c: Bump for snapshot.
4461
6ecd4e53 4462Sun Apr 5 16:31:10 1998 Richard Henderson <rth@cygnus.com>
98bd9f0f 4463
6ecd4e53 4464 * configure.in (alpha-dec-osf*): Match osf1.3 correctly.
98bd9f0f 4465
b57062ca 4466Sun Apr 5 16:53:37 1998 Don Bowman <don@pixsci.com>
ac08ebd0 4467
6ecd4e53 4468 * configure.in (mips-wrs-vxworks): New target.
ac08ebd0 4469
6ecd4e53 4470Sat Apr 4 23:34:32 PST 1998 Jeff Law (law@cygnus.com)
f4a788ac 4471
f3978531
JL
4472 * expmed.c (synth_mult): The value -1, has no zeros, so it can
4473 never have the form ...011.
4474
f4a788ac
JL
4475 * version.c: Bump for snapshot.
4476
5cb6195d
RH
4477Sat Apr 4 20:16:46 1998 Richard Henderson <rth@cygnus.com>
4478
4479 * i386.c (asm_output_function_prefix, load_pic_register):
4480 Use ASM_GENERATE_INTERNAL_LABEL properly.
4481 (output_pic_addr_const): Recognize %X to supress any PIC sym suffix.
4482 (print_operand): Ignore it.
4483 (load_pic_register): Use it for the got load call.
4484 * i386.md (prologue_set_got, prologue_get_pc): Likewise.
4485 (prologue_get_pc_and_set_got): Likewise.
4486 * i386.h: Update print_operand docs.
4487
ce193852
RH
4488Sat Apr 4 19:08:37 1998 Richard Henderson <rth@cygnus.com>
4489
4490 * i386.md (ffssi, ffshi): Rewrite as define_expands.
4491 (ffssi_1, ffshi_1): New (unspec [] 5) support patterns.
4492 * i386.c (notice_update_cc): Recognize unspec 5.
4493
0022a940
DMT
4494Sat Apr 4 18:07:16 1998 David Mosberger-Tang (davidm@mostang.com)
4495
4496 * alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Accept '(' for s/sv/svi.
4497 * alpha.c (print_operand): Handle it.
4498 * alpha.md (fix_truncsfdi2): Use it. Add earlyclobber pattern
4499 for ALPHA_TP_INSN.
4500 (fix_truncdfdi2): Likewise.
4501
896cced4
RH
4502Sat Apr 4 17:42:05 1998 Richard Henderson <rth@cygnus.com>
4503
4504 * tree.h (sizetype_tab[2], sbitsizetype, ubitsizetype): Merge all
4505 of these into a single struct, with additional [us]sizetype entries.
4506 * stor-layout.c (set_sizetype): Initialize [us]sizetype.
4507 * fold-const.c (size_int_wide): Don't rely on sizetype_tab being
4508 an array.
4509
8983c716
RH
4510Sat Apr 4 17:04:41 1998 Richard Henderson <rth@cygnus.com>
4511
4512 * configure.in (alpha-*-linux-*): Undo tm_file changes from gcc2 merge.
4513
4ed43ff8
RH
4514Sat Apr 4 13:50:01 1998 Richard Henderson <rth@cygnus.com>
4515
4516 * haifa-sched.c (split_block_insns): Don't supress insn splitting
4517 on subsequent passes.
4518
4519 * alpha.c (hard_fp_register_operand): New function.
4520 * alpha.h (PREDICATE_CODES): Add it.
4521 * alpha.md (extendsidi2): Kill bogus f<-f cvtql+cvtlq case. Add an
4522 f<-m case and accompanying define_split.
4523 (trapb): Use a unique unspec_volatile number.
4524
8e7bc3cd
RH
4525Sat Apr 4 13:32:08 1998 Richard Henderson <rth@cygnus.com>
4526
4527 * configure.in (alpha-*-linux-gnu*): Undo Feb 3 change brought in
4528 from gcc2 merge.
4529
e5e809f4
JL
4530Sat Apr 4 10:23:41 1998 Jeffrey A Law (law@cygnus.com)
4531
4532 * Check in merge from gcc2. See ChangeLog.11 and ChangeLog.12
4533 for details.
4534
4535 * haifa-sched.c: Mirror recent changes from gcc2.
4536
516c2342
JL
4537Fri Apr 3 00:17:01 1998 Jeffrey A Law (law@cygnus.com)
4538
e9eaed43
JL
4539 * Makefile.in (insn*.o): Depend on system.h.
4540
516c2342
JL
4541 * pa.c (output_global_address): Initialize base.
4542 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Initialize index.
4543
7cc34889
MS
45441998-04-03 Mike Stump <mrs@wrs.com>
4545
4546 * gthr.h: Support systems that don't have weak, but have threads.
4547 * configure.in (*wrs-vxworks*): Use VxWorks threads by default.
4548 * gthr-vxworks.h: New file.
4549 * objc/thr-vxworks.h: Dummy file from thr-single.c for now.
4550
52c18286
JW
4551Thu Apr 2 18:00:52 1998 Jim Wilson <wilson@cygnus.com>
4552
4553 * i386.md (movqi+1): Change alternative 1 from *r/r to *r/*rn.
4554
c1ac292d
VM
45551998-04-02 Vladimir N. Makarov <vmakarov@cygnus.com>
4556
4557 * ginclude/va-i960.h (va_end): Change void * to void.
4558
4cb1caaf
KG
4559Thu Apr 2 13:51:10 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4560
4561 * Makefile.in (choose-temp.o): Depend on system.h.
4562
4563 * choose-temp.c: Include system.h when IN_GCC.
4564
a9a2595b
JR
4565Thu Apr 2 02:37:07 1998 Joern Rennecke (amylaar@cygnus.co.uk)
4566 Richard Henderson <rth@cygnus.com>
4567
4568 * reload.c (find_reloads_address): Try LEGITIMIZE_RELOAD_ADDRESS.
4569 (move_replacements): New function.
4570 * reload.h: Prototype it.
b57062ca 4571
a9a2595b 4572 * alpha.h (LEGITIMIZE_RELOAD_ADDRESS): New definition.
b57062ca 4573
79363e2f
RH
4574Thu Apr 2 01:01:34 1998 Richard Henderson <rth@cygnus.com>
4575
4576 * configure (alpha-*-linuxecoff, alpha-*-linux-gnulibc1):
4577 Run fixincludes.
4578
4901a643
RH
4579 * emit-rtl.c (gen_lowpart_common): Skip count by HARD_REGNO_NREGS.
4580 (gen_highpart): Likewise.
ce4d78eb
RH
4581 * final.c (alter_subreg): Allow the target to hook by-mode subreg
4582 hard register number changes.
b57062ca 4583
715f9c99
JL
4584Wed Apr 1 22:26:22 1998 Jeffrey A Law (law@cygnus.com)
4585
4e86caed
JL
4586 * fold-const.c optimze_bit_field_compare): Initialize rnbitpos,
4587 rnbitsize, rnmode and rinner.
4588 (make_range): Initialize type.
4589 (fold): Initialize arg0, arg1 and varop.
4590
4591 * function.c (instantiate_virtual_regs_1): Initialize offset, regnoi
4592 and regnor.
4593 (expand_function_start): Initialize last_ptr.
4594
4595 * stor-layout.c (layout_record): Initialize desired_align.
4596 (get_best_mode): Initialize unit.
4597
4598 * tree.c (copy_node): Initialize length.
4599
aefdd5ab
JL
4600 * c-lex.c (yylex): Initialize traditional_type, ansi_type and type.
4601
4602 * caller-save.c (insert_save_restore): Initialize pat, code and
4603 numregs.
4604
4605 * emit-rtl.c (push_to_sequence): Initialize top.
4606 (push_topmost_sequence): Likewise.
4607
4608 * genattrtab.c (simplify_by_exploding): Initialize defval.
4609
4610 * profile.c (branch_prob): Initialize dest.
4611
4612 * rtl.h (note_stores): Remove duplicate prototype.
4613 (GEN_INT): Re-instate cast of second arg to HOST_WIDE_INT.
4614
4615 * cplus-dem.c (gnu_special): Don't get confused by .<digits>
4616 strings that are not actually lengths.
4617
729da3f5
JL
4618 * genattrtab.c: Make generated file use system.h, instead of
4619 including stdio.h, etc directly.
4620 * genextract.c, genopinit.c, genoutput.c: Likewise.
4621 * genpeep.c, genrecog.c: Likewise
4622
4623 * genoutput.c (process_template): Mark operands in the generated
4624 function as potentially unused if compiling with GNU CC.
4625
2a8034f8
JL
4626 * i386/freebsd-elf.h (CPP_PREDEFINES): Update from FreeBSD folks.
4627
715f9c99
JL
4628 * pa.md (reload peepholes): Remove unused variable "mode".
4629
75d3a15b
NC
4630Wed Apr 1 17:06:19 1998 Nick Clifton <nickc@cygnus.com>
4631
4632 * config/arm/thumb.h: Add super interworking support.
4633 * config/arm/thumb.c: Add super interworking support.
4634 * config/arm/thumb.md: Add super interworking support.
75d3a15b
NC
4635 * config/arm/lib1funcs.asm: Add interworking support.
4636 * config/arm/lib1thumb.asm: Add super interworking support.
75d3a15b
NC
4637 * config/arm/t-semi: Add interworking support.
4638 * config/arm/t-thumb: Add interworking support.
75d3a15b 4639 * config/arm/README-interworking: New file.
b57062ca 4640
63959c22
JW
4641Wed Apr 1 14:38:10 1998 Jim Wilson <wilson@cygnus.com>
4642
4643 * config/mips/iris6.h (MD_EXEC_PREFIX): Set to /usr/bin/.
4644 (MD_STARTFILE_PREFIX): Unset.
4645
c651e1e0
MM
46461998-04-01 Mark Mitchell <mmitchell@usa.net>
4647
4648 * varasm.c (make_decl_rtl): Update the DECL_ASSEMBLER_NAME for a
4649 entity in a local scope.
4650
4651 * fold-const.c (fold): Call truthvalue_conversion for values which
4652 are folded to boolean type.
4653
3a598fbe
JL
4654Wed Apr 1 06:09:53 1998 Jeffrey A Law (law@cygnus.com)
4655
4656 * 1750a.md, arm.c, clipper.c, clipper.md: Use GEN_INT consistently.
4657 * convex.h, dsp16xx.c, fx80.md, gmicro.c, gmicro.md: Likewise.
4658 * i370.h, i370.md, i860.c, i860.h, i860.md, i960.c: Likewise.
4659 * i960.h, i960.md, m32r.md, m68k.md, m68kv4.h, m88k.c: Likewise.
4660 * m88k.md, ns32k.c, ns32k.md, pdp11.c, pdp11.h, pdp11.md: Likewise.
4661 * pyr.c, pyr.h, pyr.md, romp.c, romp.h, romp.md: Likewise.
4662 * rs6000.md, sparc.c, sparc.h, sparc.md, spur.c, spur.md: Likewise.
4663 * tahoe.md, vax.h, vax.md, we32k.c, we32k.h, we32k.md: Likewise.
4664 * md.texi: Likewise.
4665
b5026c50
MH
4666Wed Apr 1 08:33:44 1998 Manfred Hollstein <manfred@s-direktnet.de>
4667
4668 * fixincludes (limits.h): Fix nested comments in Motorola's
4669 limits.h and sys/limits.h.
4670
c8d86b9a
JW
4671Tue Mar 31 16:57:33 1998 Jim Wilson <wilson@cygnus.com>
4672
1a7cb241
JW
4673 * alpha.c (alpha_expand_unaligned_load): Use tgt instead of addr
4674 as dest of expand_binop call.
4675
221a9f65
JW
4676 * alpha.md (extzv): Correct check for valid operand[2] values.
4677
a7ebd547
JW
4678 * profile.c (branch_prob): Add code to recognize HPPA tablejump entry
4679 branch.
4680
c8d86b9a
JW
4681 * toplev.c (rest_of__compilation): Call init_recog_no_volatile at end.
4682
97be8f06
SC
4683Mon Mar 30 13:11:05 1998 Stan Cox <scox@cygnus.com>
4684
4685 * libgcc2.c: (__main, __do_global_dtors, __do_global_ctors):
4686 For __CYGWIN32__ use the versions in winsup/dcrt0.cc.
b57062ca 4687
97be8f06
SC
4688 * gcc.c, cccp.c, cpplib.c, collect2.c (GET_ENVIRONMENT): Added.
4689 cygwin32 can override this to allow both unix and win32 style PATHs.
4690
4691 * i386/xm-cygwin32.h (GET_ENVIRONMENT): Defined to allow win32
4692 style environment paths.
b57062ca 4693
b04cd507
KG
4694Mon Mar 30 14:43:20 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4695
4696 * Makefile.in (cppalloc.o, cpperror.o, cppexp.o, cpphash.o,
4697 cpplib.o, cppmain.o, fix-header.o, gcov.o, gen-protos.o,
4698 gengenrtl.o, halfpic.o, hash.o, scan-decls.o, scan.o): Depend on
4699 system.h.
b57062ca 4700
b04cd507
KG
4701 * cpphash.c: Include config.h.
4702 * cppalloc.c: Include system.h. Add parameters to various
4703 function prototypes.
4704 * cpperror.c: Likewise.
4705 * cppexp.c: Likewise.
4706 * cpphash.c: Likewise.
4707 * cpplib.c: Likewise.
4708 * cppmain.c: Likewise.
4709 * fix-header.c: Likewise.
4710 * gcov.c: Likewise.
4711 * gen-protos.c: Likewise.
4712 * gengenrtl.c: Likewise.
4713 * halfpic.c: Likewise.
4714 * hash.c: Likewise.
4715 * scan-decls.c: Likewise.
4716 * scan.c: Likewise.
4717
1aa5d112
JW
4718Mon Mar 30 11:06:45 1998 Jim Wilson <wilson@cygnus.com>
4719
4720 * README.gnat: Add lang_print_xnode definition.
4721
e18db50d
AS
4722Mon Mar 30 11:12:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4723
4724 * config/m68k/m68k.c (standard_68881_constant_p): Don't use
4725 fmovecr on the 68060.
4726
c0d45032
JL
4727Mon Mar 30 00:21:03 1998 Jeffrey A Law (law@cygnus.com)
4728
4729 * genemit.c (DONE): Rework so that it works in the true arm if
4730 an if-else conditional.
4731 (FAIL): Likewise.
4732
31ed227b
JL
4733Sun Mar 29 12:45:23 1998 Jeffrey A Law (law@cygnus.com)
4734
c3670418
JL
4735 * rs6000.c: Do not include stdioh or ctype.h anymore.
4736
234042f4
JL
4737 * Makefile.in (c-typeck.o): Delete on expr.h, insn-codes.h and
4738 $(RTL_H).
4739 (stor-layout.o): Likewise.
4740 * c-typeck.c: Include rtl.h and expr.h.
4741 * stor-layout.c: Likewise.
4742
72e19470
JL
4743 * cpplib.c (cpp_file_line_for_message): Delete unused parameter.
4744 All callers changed.
4745 (do_sccs): Wrap in an SCCS_DIRECTIVE ifdef.
4746 * fix-header.c (cpp_file_line_for_message): Delete unused paramter.
4747 All callers changed.
4748
40c3a857
JL
4749 * collect2.c (is_in_list): Wrap inside COLLECT_EXPORT_LIST ifdef.
4750
c80150b7
JL
4751 * local-alloc.c (reg_classes_overlap_p): Delete dead function.
4752
31ed227b
JL
4753 * tree.h (lang_print_xnode): Provide prototype.
4754
fe776296
JL
4755Sat Mar 28 23:50:44 PST 1998 Jeff Law (law@cygnus.com)
4756
4757 * version.c: Bump for snapshot.
4758
f1b03ce1
JL
4759Sun Mar 29 00:42:21 1998 Jeffrey A Law (law@cygnus.com)
4760
3ac2735b
JL
4761 * objc/sendmsg.c (__objc_block_forward): Add braces for return
4762 value if INVISIBLE_STRUCT_RETURN.
4763
f2b147f7
JL
4764 * pa.c (arith_double_operand): Fix parens.
4765
c4fa3460
JL
4766 * haifa-sched.c (print_pattern): Correct arg to sprintf.
4767
f1b03ce1
JL
4768 * Makefile.in (libgcc1.null): Make return type for __foo void.
4769
2e61a5a5
JL
4770Sat Mar 28 14:37:20 1998 Jeffrey A Law (law@cygnus.com)
4771
ba0b8436
JL
4772 * pa.h: Add declarations for many functions defined in pa.c.
4773
67ac5957
JL
4774 * genpeep.c (main): Remove unused variable 'i' from the generated
4775 file.
4776
c38d8c5b
JL
4777 * genemit.c (gen_expand): Do not emit "_done" or "_fail" labels.
4778 (gen_split): Likewise.
4779 (main): Rework generated definitions of DONE and FAIL so that they
4780 no longer use gotos. Avoids warnings about unused labels.
4781
d6e6c585
JL
4782 * integrate.c (copy_rtx_and_substitute): Rework to avoid need for
4783 unused "junk" variable.
4784
2e61a5a5
JL
4785 * genattrtab.c (write_complex_function): Add a default case in
4786 generated switch statement to keep -W -Wall quiet.
4787
0b26e56d
NC
4788Sat Mar 28 10:47:21 1998 Nick Clifton <nickc@cygnus.com>
4789
157a620e
NC
4790 * invoke.texi: Document more ARM and Thumb command line options.
4791
0b26e56d
NC
4792 * config/arm/xm-thumb.h: New file.
4793
600a4ce7
CB
4794Sat Mar 28 01:37:33 1998 Craig Burley <burley@gnu.ai.mit.edu>
4795
4796 * stmt.c (expand_expr_stmt): Must generate code for
4797 statements within an expression (gcc's `({ ... )}')
4798 even if -fsyntax-only.
4799
4d1d8045
BS
4800Sat Mar 28 01:06:12 1998 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
4801 Jeffrey A Law (law@cygnus.com)
4802
4803 * basic-block.h (basic_block_computed_jump_target): Declare.
4804 * flags.h: (current_function_has_computed_jump): Declare.
4805 * flow.c: (basic_block_computed_jump_target): Define.
4806 (flow_analysis): Allocate it. Set current_function_has_computed_jump
4807 to 0.
4808 (find_basic_blocks): Set current_function_has_computed_jump and
4809 elements of basic_block_computed_jump_target to 1 as appropriate.
4810 * function.c: (current_function_has_computed_jump): Define.
4811 * global.c (global_conflicts): Don't allocate pseudos into stack regs
4812 at the start of a block that is reachable by a computed jump.
4813 * reg-stack.c (stack_reg_life_analysis): If must restart, do so
4814 immediately.
4815 (subst_stack_regs): Undo change from Sep 4 1997.
4816 (uses_reg_or_mem): Now unused, deleted.
4817 * stupid.c (stupid_life_analysis): Compute
4818 current_function_has_computed_jump.
4819 (stupid_find_reg): Don't allocate stack regs if the function has a
4820 computed goto.
4821 * haifa-sched.c (is_cfg_nonregular): Delete code to determine if
4822 the current function has a computed jump. Use the global value
4823 instead.
4824
56f28b73
JL
4825Sat Mar 28 00:21:37 1998 Jeffrey A Law (law@cygnus.com)
4826
4827 * i386/freebsd.h (CPP_PREDEFINES): Remove __386BSD__.
4828 (DWARF2_UNWIND_INFO): Define to zero.
4829
6ed4bb9a
MM
4830Fri Mar 27 16:04:49 1998 Michael Meissner <meissner@cygnus.com>
4831
4832 * gcc.c (set_std_prefix): Add declaration.
4833 (process_command): If GCC_EXEC_PREFIX is set, remove /lib/gcc-lib/
4834 suffix, and update the standard prefix prefix.c uses.
4835
4836 * prefix.c (std_prefix): New global to hold default prefix value.
4837 (get_key_value): Change to use std_prefix instead of PREFIX.
4838 (translate_name): Ditto.
4839 (update_path): Ditto.
4840 (get_key_value): Release allocated scratch storage.
4841 (set_std_prefix): New function to reset the standard prefix.
4842
1f3fa20e
R
4843Fri Mar 27 18:08:21 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4844
7daa142b 4845 * sh.c (find_barrier): Fix calculations for alignment increase.
1f3fa20e 4846
d8a0154e
MH
4847Fri Mar 27 08:56:52 1998 Manfred Hollstein <manfred@s-direktnet.de>
4848
4849 * Makefile.in (stmp-fixinc): If we're actually fixing include
4850 files, copy gcc's assert.h into the fixed include dir.
4851 * fixincludes (assert.h): Avoid any attempts to fix a probably
4852 broken system specific assert.h file.
4853 * fixproto (stdlib.h): Make sure, it'll contain a definition of
4854 size_t.
4855
64d3b4ca
JL
4856Fri Mar 27 00:49:46 1998 Jeffrey A Law (law@cygnus.com)
4857
4858 * regclass.c (reg_scan_mark_refs): Be more selective about
4859 when we mark a register with REGNO_POINTER_FLAG.
4860
e6e52be0
R
4861Thu Mar 26 23:00:11 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4862
4863 reload inheritance improvement:
4864 * reload1.c (reg_reloaded_contents, reg_reloaded_insn):
4865 Change meaning: index is now hard reg number.
4866 (reg_reloaded_valid, reg_reloaded_dead): New variables.
4867 (reload_spill_index): Content is now a hard reg number.
4868 (reload_as_needed): Change to fit new variable meaning.
4869 (forget_old_reloads_1, allocate_reload_reg): Likewise.
4870 (choose_reload_regs, emit_reload_insns): Likewise.
4871
812f2051
R
4872Thu Mar 26 18:34:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4873
4874 * regclass.c (record_reg_classes): '?' increases cost by two.
4875
4876 * reload.c (find_reloads): Double previous costs. Output
4877 reloads cost one unit extra.
4878
4879 * reload1.c (eliminate_regs): Delete LOAD_EXTENDED_OP code that
4880 boiled down to && ! 0.
4881
4882 * reload.c (find_equiv_reg): Also consider a goal offset from the
4883 frame pointer to be constant.
4884
04d02ece
R
4885Thu Mar 26 17:34:46 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4886
4887 * sh.h (OPTIMIZATION_OPTIONS): Define.
4888
6f28d3e9
RH
4889Thu Mar 26 00:19:47 1998 Richard Henderson <rth@cygnus.com>
4890
4891 * combine.c (make_compound_operation): Simplify (subreg (*_extend) 0).
4892
b09fa787
JL
4893Wed Mar 25 23:53:11 1998 Jeffrey A Law (law@cygnus.com)
4894
4895 * pa.c (pa_adjust_cost): Avoid redundant calls to get_attr_type.
4896
a16b4c9c
JW
4897Wed Mar 25 13:40:48 1998 Jim Wilson <wilson@cygnus.com>
4898
4899 * c-common.c (check_format_info): Initialize type, is_type. New local
4900 integral_format. Don't warn for 'L' when pedantic. Do warn for 'L'
4901 when pedantic if used with integral format specifier.
4902
c4d38ccb
MM
4903Wed Mar 25 16:09:01 1998 Michael Meissner <meissner@cygnus.com>
4904
4905 * rs6000.h (FUNCTION_ARG_PADDING): Cast result to be enum
4906 direction.
4907 (function_arg_padding): Declare.
4908
4909 * rs6000.c: Include system.h.
4910 (function_arg_padding): Change return type to int, cast enum's to
4911 int.
4912
4913 (From Kaveh R. Ghazi <ghazi@caip.rutgers.edu>)
4914 * collect2.c (scan_prog_file): Add explicit braces to avoid
4915 ambiguous `else'.
b57062ca 4916
c4d38ccb
MM
4917 * dbxout.c (dbxout_type_fields): Add braces around empty body in
4918 an if-statement.
4919 (dbxout_type): Likewise.
b57062ca 4920
c4d38ccb
MM
4921 * rs6000.c (rs6000_override_options): Change type of `i', `j' and
4922 `ptt_size' from int to size_t.
4923 (rs6000_file_start): Likewise for `i'.
4924 (rs6000_replace_regno): Add default case in enumeration switch.
4925 (output_epilog): Remove unused variable `i'.
4926 (rs6000_longcall_ref): Remove unused variables `len', `p', `reg1'
4927 and `reg2'.
b57062ca 4928
c4d38ccb
MM
4929 * rs6000.h (ADDITIONAL_REGISTER_NAMES): Add missing braces around
4930 initializer.
4931 (get_issue_rate, non_logical_cint_operand): Add prototype.
4932 (rs6000_output_load_toc_table): Ditto.
b57062ca 4933
c4d38ccb
MM
4934 * rs6000.md (udivmodsi4): Add explicit braces to avoid ambiguous
4935 `else'.
b57062ca 4936
e98e406f
NC
4937Wed Mar 25 10:05:19 1998 Nick Clifton <nickc@cygnus.com>
4938
4939 * config/arm/thumb.c: New File. Support for ARM's Thumb
b57062ca 4940 instruction set.
e98e406f
NC
4941 * config/arm/thumb.h: New File. Thumb definitions.
4942 * config/arm/thumb.md: New File. Thumb machine description.
4943 * config/arm/tcoff.h: New File. Thumb COFF support.
4944 * config/arm/t-thumb: New File. Thumb makefile fragment.
4945 * config/arm/lib1thumb.asm: New File. Thumb libgcc support functions.
4946
4947 * configure.in: Add Thumb-coff target.
4948 * configure: Add Thumb-coff target.
4949 * config.sub: Add Thumb-coff target.
4950
8cf619da
JW
4951Wed Mar 25 10:30:32 1998 Jim Wilson <wilson@cygnus.com>
4952
4953 * loop.c (scan_loop): Initialize move_insn_first to zero.
4954
fe0714d3
JS
4955Wed Mar 25 01:06:49 1998 Joel Sherrill (joel@OARcorp.com)
4956
4957 * config/i386/go32-rtems.h: Defined TARGET_MEM_FUNCTIONS.
4958 * config/i386/rtems.h: Likewise.
4959 * config/i960/rtems.h: Likewise.
4960 * config/m68k/rtems.h: Likewise.
4961 * config/mips/rtems64.h: Likewise.
4962 * config/pa/rtems.h: Likewise.
4963 * config/rs6000/rtems.h: Likewise.
4964 * config/sh/rtems.h: Likewise.
4965 * config/sparc/rtems.h: Likewise.
4966
428be702
RK
4967Wed Mar 25 00:57:26 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4968
4969 * pa.c (emit_move_sequence): If in reload, call find_replacement.
4970
ae8c5963
NC
4971Tue Mar 24 10:44:11 1998 Nick Clifton <nickc@cygnus.com>
4972
2ea9a965
NC
4973 * Makefile.in (gcov$(exeext)): Support .exe extension to gcov.
4974
ae8c5963
NC
4975 * collect2.c (find_a_file): Add debugging.
4976 (find_a_file): Test for win32 style absolute paths if
4977 DIR_SERPARATOR is defined.
4978 (prefix_from_string): Add debugging.
4979 (main): Test for debug command line switch at start of program
b57062ca 4980 execution.
ae8c5963 4981 (main): Use GET_ENVIRONMENT rather than getenv().
72cf6902
NC
4982 (prefix_from_env): Use GET_ENVIRONMENT.
4983
050367a3
MM
49841998-03-24 Mark Mitchell <mmitchell@usa.net>
4985
4986 * cplus-dem.c (optable): Add sizeof.
4987 (demangle_template_value_parm): New function containing code
4988 previously found in demangle_template.
b57062ca 4989 (demangle_integral_value): New function which handles complicated
050367a3
MM
4990 integral expressions.
4991 (demangle_template): Use them.
4992
0b93b64e
KG
4993Tue Mar 24 12:13:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4994
4995 * Makefile.in (genconfig.o, genflags.o, gencodes.o, genemit.o,
4996 genopinit.o, genrecog.o, genextract.o, genpeep.o, genattr.o,
4997 genattrtab.o, genoutput.o): Depend on system.h.
b57062ca 4998
0b93b64e
KG
4999 * genattr.c: Include system.h. Add arguments to various function
5000 prototypes. Remove redundant prototype of read_rtx().
5001 * genattrtab.c: Likewise.
5002 * gencodes.c: Likewise.
5003 * genconfig.c: Likewise.
5004 * genemit.c: Likewise.
5005 * genextract.c: Likewise.
5006 * genflags.c: Likewise.
5007 * genopinit.c: Likewise.
5008 * genoutput.c: Likewise.
5009 * genpeep.c: Likewise.
5010 * genrecog.c: Likewise.
5011
bc289659
ML
50121998-03-24 Martin von Loewis <loewis@informatik.hu-berlin.de>
5013
5014 * c-lang.c (lang_print_xnode): New function.
5015 * objc/objc-act.c (lang_print_xnode): Likewise.
5016 * print-tree.c (print_node): Call it
5017
990ac8d7
L
5018Mon Mar 23 23:59:11 1998 H.J. Lu (hjl@gnu.org)
5019
5020 * c-parse.in: Recognize protocol qualifiers in class
5021 definitions for objc.
5022 Include "output.h".
5023 (yyerror): Remove redundant decl.
5024 (yyprint): Fix prototype.
5025
65d98182
JL
5026Mon Mar 23 23:49:47 1998 Jeffrey A Law (law@cygnus.com)
5027
47a0b68f
JL
5028 * cse.c (rtx_cost): Only call CONST_COSTS if it is defined.
5029
65d98182
JL
5030 * stmt.c (unroll_block_trees): Free block_vector if needed.
5031
3cac0a21
PDM
5032Mon Mar 23 23:26:42 1998 Philippe De Muyter <phdm@macqel.be>
5033
4b8bef1d
PDM
5034 * m68k/m68k.md (zero_extendqidi2, zero_extendhidi2): New patterns.
5035 (zero_extendsidi2): Avoid useless copy.
5036 (iordi_zext): New pattern.
5037 (iorsi_zexthi_ashl16): Pattern reworked to avoid "0" constraint for
5038 operand 2.
5039 (iorsi_zext): New name for old unnamed pattern; indentation fixes.
5040
3cac0a21
PDM
5041 * m68k/m68k.md (ashldi_const): Allow shift count in range ]32,63].
5042 (ashldi3): Allow constant shift count in range ]32,63].
5043 (ashrdi_const, ashrid3, lshrdi_const, lshrdi3): Likewise.
5044
4da05956
MM
50451998-03-22 Mark Mitchell <mmitchell@usa.net>
5046
5047 * tree.h (IS_EXPR_CODE_CLASS): New macro.
5048
545f2aab
JL
5049Mon Mar 23 23:18:48 1998 Jeffrey A Law (law@cygnus.com)
5050
5051 * h8300.h (CONST_COSTS): Remove definition.
5052 (DEFAULT_RTX_COSTS): Define.
5053
eef15f9f
JS
5054Mon Mar 23 22:58:22 1998 Joel Sherrill (joel@OARcorp.com)
5055
5056 * config/sh/rtems.h: Switched from ELF to COFF.
5057
4bca6986
R
5058Mon Mar 23 14:14:20 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5059
5060 * freebsd.h (ASM_OUTPUT_ALIGN): Redefine.
5061
8ca77a11
JL
5062Sat Mar 21 23:52:56 PST 1998 Jeff Law (law@cygnus.com)
5063
5064 * version.c: Bump for snapshot.
5065
e09e14e9
NC
5066Sun Mar 22 00:50:42 1998 Nick Clifton <nickc@cygnus.com>
5067 Geoff Noer <noer@cygnus.com>
5068
5069 * Makefile.in: Various fixes for building cygwin32 native toolchains.
5070
35d541d4
NC
5071 * objc/Makefile.in: Various fixes for building cygwin32 native toolchains.
5072 * objc/Make-lang.in: Likewise.
5073
4a0cf2aa
NC
5074 * config/i386/xm-cygwin32.h (PATH_SEPARATOR): Set to a semi-colon.
5075
535b86ce
G
5076Sun Mar 22 00:21:46 1998 R. Ganesan <rganesan@novell.com>
5077
5078 * configure.in: Handle with-PACKAGE=no correctly
5079
670ee920
KG
5080Fri Mar 20 17:36:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5081
5082 * Makefile.in (alias.o, bitmap.o, c-aux-info.o, c-common.o,
5083 c-decl.o, c-iterate.o, c-lang.o, c-lex.o, c-pragma.o, c-typeck.o,
5084 caller-save.o, calls.o, collect2.o, combine.o, cse.o, dbxout.o,
5085 dwarf2out.o, dwarfout.o, emit-rtl.o, except.o, explow.o, expmed.o,
5086 expr.o, final.o, flow.o, function.o, getpwd.o, global.o,
5087 integrate.o, jump.o, local-alloc.o, loop.o, optabs.o, pexecute.o,
5088 prefix.o, print-rtl.o, print-tree.o, profile.o, real.o, recog.o,
5089 reg-stack.o, regclass.o, regmove.o, reload.o, reload1.o, reorg.o,
5090 rtl.o, rtlanal.o, sdbout.o, stmt.o, stor-layout.o, stupid.o,
5091 tlink.o, toplev.o, tree.o, unroll.o, varasm.o, xcoffout.o): Depend
5092 on system.h.
5093
5094 * alias.c, bitmap.c, c-aux-info.c, c-common.c, c-decl.c,
5095 c-iterate.c, c-lang.c, c-lex.c, c-pragma.c, c-typeck.c,
5096 caller-save.c, calls.c, collect2.c, combine.c, cse.c, dbxout.c,
5097 dwarf2out.c, dwarfout.c, emit-rtl.c, except.c, explow.c, expmed.c,
5098 expr.c, final.c, flow.c, function.c, gcc.c, getpwd.c, global.c,
5099 integrate.c, jump.c, local-alloc.c, loop.c, optabs.c, pexecute.c,
5100 prefix.c, print-rtl.c, print-tree.c, profile.c, real.c, recog.c,
5101 reg-stack.c, regclass.c, regmove.c, reload.c, reload1.c, reorg.c,
5102 rtl.c, rtlanal.c, sched.c, sdbout.c, stmt.c, stor-layout.c,
5103 stupid.c, tlink.c, toplev.c, tree.c, unroll.c, varasm.c,
5104 xcoffout.c: Include system.h. Organize include ordering so
5105 that stdarg/varargs comes before other system headers. Remove
5106 spurious casts of functions assured of a prototype in system.h.
5107
7aa74e4c
SC
5108Fri Mar 20 11:19:40 1998 Stan Cox <scox@equinox.cygnus.com>
5109
5110 * reg-stack.c (pop_stack): Define. Pops any register on the
5111 regstack and adjusts regstack.
5112 (compare_for_stack_reg): Use pop_stack.
b57062ca 5113
d005a5a4
JL
5114Thu Mar 19 23:51:01 1998 Jeffrey A Law (law@cygnus.com)
5115
5116 * configure.in (hppa1.0-hp-hpux10): Handle threads for this
5117 config too.
5118
ba3ad5e0
PDM
5119Thu Mar 19 20:30:31 1998 Philippe De Muyter <phdm@macqel.be>
5120
09b4ce12
PDM
5121 * libgcc2.c (exit): Do not call __bb_exit_func if HAVE_ATEXIT.
5122
ba3ad5e0
PDM
5123 * fold-const.c (fold): Replace sign-extension of a zero extended
5124 value by a single zero extension.
5125
6e1f1f93
JM
5126Thu Mar 19 00:58:07 1998 Jason Merrill <jason@yorick.cygnus.com>
5127
5128 * except.c (init_eh): Do nothing.
5129 (save_eh_status): Call init_eh_for_function, not init_eh.
5130 * function.c (push_function_context_to): Don't call init_emit.
5131
838b0e4e
MM
5132Thu Mar 19 13:39:52 1998 Michael Meissner <meissner@cygnus.com>
5133
5134 * rs6000/sysv4.h (RELATIVE_PREFIX_NOT_LINKDIR): Undef for System V
5135 and EABI.
5136
ecb06768
KG
5137Thu Mar 19 10:10:36 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5138
5139 * final.c (shorten_branches): Add parentheses around +/- in
5140 operand of &.
5141
5142 * flow.c (life_analysis): Wrap variable `i' in macro ELIMINABLE_REGS.
5143
dfba7a1b
MH
5144Thu Mar 19 09:15:17 1998 Manfred Hollstein <manfred@s-direktnet.de>
5145
5146 * regclass.c (memory_move_secondary_cost): Wrap uses of
5147 SECONDARY_INPUT_RELOAD_CLASS and SECONDARY_OUTPUT_RELOAD_CLASS
5148 with #ifdef tests.
5149
4faca093
MH
5150Thu Mar 19 09:06:35 1998 Manfred Hollstein <manfred@s-direktnet.de>
5151
5152 * config/m68k/m68k.md (addqi3): Fix typo gen_INT vs. GEN_INT.
5153
5154 * flow.c (life_analysis): #include <sys/types.h> to make sure
5155 size_t is defined.
5156 * cplus-dem.c (demangle_function_name): Likewise.
5157
af7da199
MH
5158Thu Mar 19 09:00:01 1998 Manfred Hollstein <manfred@s-direktnet.de>
5159
5160 * final.c (insn_noperands): Change type to unsigned int.
5161 (final_scan_insn): Likewise for noperands;
5162 properly check operand number boundaries.
5163
10a25232
RH
5164Wed Mar 18 16:20:30 1998 Richard Henderson <rth@cygnus.com>
5165
5166 * alpha.md (extzv): Don't reject register operands. Fix
5167 mode of operand 1.
5168
99d1a24c
RH
5169Wed Mar 18 16:14:23 1998 Richard Henderson <rth@cygnus.com>
5170
5171 * dbxout.c (dbxout_function_end): Fix last change. The correct
5172 predicate is ASM_OUTPUT_SECTION_NAME.
5173
5bac82c5
JW
5174Wed Mar 18 12:43:20 1998 Jim Wilson <wilson@cygnus.com>
5175
5176 * sh.md (ashlsi_c-1): Delete 3rd argument to gen_ashlsi_c.
5177 (ashlsi): Use match_dup 1 instead of match_operand 2.
5178
52de9b6c
RK
5179Wed Mar 18 13:46:07 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5180
5181 * fold-const.c (operand_equal_for_comparison_p): See if equal
5182 when nop conversions are removed.
5183
7c00d1fe
RK
5184Wed Mar 18 13:42:01 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5185
5186 * expr.c (expand_expr, case COND_EXPR): If have conditional move,
5187 don't use ORIGINAL_TARGET unless REG.
5188
343665b9
R
5189Wed Mar 18 16:53:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5190
5191 * netbsd.h (ASM_OUTPUT_ALIGN): Redefine.
5192
1a61c29f
JW
5193Wed Mar 18 12:43:20 1998 Jim Wilson <wilson@cygnus.com>
5194
5195 * loop.c (struct movable): New field move_insn_first.
5196 (scan_loop): In consec sets code, set it. Clear it otherwise.
5197 (move_movables): In consec sets code, use it. Copy REG_NOTES from
5198 p to i1 only if i1 does not have REG_NOTES. Delete obsolete ifdefed
5199 out code.
5200
cbe36725
RH
5201Wed Mar 18 09:52:56 1998 Richard Henderson <rth@cygnus.com>
5202
5203 * rtl.c (read_rtx): Fall back on homebrew atoll if HOST_WIDE_INT
5204 is large, and the system doesn't provide atoll or atoq.
b57062ca 5205 (atoll): New.
cbe36725
RH
5206
5207 * alpha/xm-vms.h (HAVE_ATOLL): Define.
5208 Reported by Klaus Kaempf <kkaempf@progis.de>.
b57062ca 5209
081f5e7e
KG
5210Wed Mar 18 09:56:26 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5211
5212 * c-lang.c (finish_file): Wrap variable `void_list_node' with macro
5213 test !ASM_OUTPUT_CONSTRUCTOR || !ASM_OUTPUT_DESTRUCTOR.
5214
5215 * calls.c (emit_call_1): Wrap variable `already_popped' with macro
b57062ca 5216 test !ACCUMULATE_OUTGOING_ARGS.
081f5e7e
KG
5217
5218 * collect2.c (write_c_file_glob): Wrap function definition in
5219 macro test !LD_INIT_SWITCH.
5220
5221 * combine.c (try_combine): Wrap variables `cc_use' and
5222 `compare_mode' in macro test EXTRA_CC_MODES.
5223
5224 * cpplib.c (do_ident): Remove unused variable `len'.
5225 (skip_if_group): Remove unused variables `at_beg_of_line' and
5226 `after_ident'.
5227 (cpp_get_token): Remove unused variable `dummy'.
5228
5229 * dbxout.c (scope_labelno): Move static variable definition inside
5230 the one function scope where it is used.
5231 (dbxout_function_end): Wrap prototype and definition in
5232 macro test !NO_DBX_FUNCTION_END.
5233
5234 * dwarf2out.c (add_subscript_info): Wrap variable `dimension_number'
5235 in macro test !MIPS_DEBUGGING_INFO.
5236
5237 * expr.c (expand_builtin_setjmp): Move declaration of variable `i'
5238 into the scope where it is used. Wrap empty else-statement body
5239 in braces.
5240
5241 * fix-header.c: Fix typo in comment.
5242 (inf_skip_spaces): Cast results of INF_UNGET to (void).
5243 (check_protection, main): Likewise.
5244
5245 * flow.c (find_basic_blocks_1): Remove dangling comment text.
5246
5247 * function.c (contains): Wrap prototype and definition in macro
5248 test HAVE_prologue || HAVE_epilogue.
5249 (fixup_var_refs_1): Remove unused variable `width'.
5250
5251 * gen-protos.c (main): Remove unused variable `optr'.
5252
5253 * haifa-sched.c (debug_control_flow): Remove unused variable `j'.
5254
5255 * libgcc2.c (__udiv_w_sdiv): Provide dummy return value of 0.
5256 (__sjpopnthrow): Remove unused variable `jmpbuf'.
5257 (__throw): Remove unused variable `val'.
5258
5259 * protoize.c: Check for a previously existing definition before
b57062ca 5260 defining *_OK macros.
081f5e7e
KG
5261
5262 * scan-decls.c (scan_decls): Remove unused variable `old_written'.
5263
76ce4776
R
5264Tue Mar 17 00:45:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5265
5266 * vax.h (ADDR_VEC_ALIGN): Define.
5267
e29ef920
MM
5268Mon Mar 16 15:57:17 1998 Michael Meissner <meissner@cygnus.com>
5269
5270 * gcc.c (default_arg): Don't wander off the end of allocated
5271 memory.
5272
dbf55e53
MM
5273 (From Geoffrey Keating <geoffk@ozemail.com.au>)
5274 * rs6000.c (small_data_operand): Ensure that any address
b57062ca 5275 referenced relative to the small data area is inside the SDA.
dbf55e53 5276
883482b2 5277Mon Mar 16 12:55:15 1998 Jim Wilson <wilson@cygnus.com>
b57062ca 5278
883482b2
JW
5279 * config/m68k/netbsd.h (ASM_SPEC): Add %{m68060}.
5280
9ad82ff8 5281Mon Mar 16 15:50:20 EST 1998 Andrew MacLeod <amacleod@cygnus.com>
a0b61d14
AM
5282
5283 * except.h (in_same_eh_region): New prototype.
5284 (free_insn_eh_region, init_insn_eh_region): New prototypes.
5285 * except.c (insn_eh_region, maximum_uid): New static variables.
5286 (set_insn_eh_region): New static function to set region numbers.
5287 (free_insn_eh_region): New function to free EH region table.
5288 (init_insn_eh_region): New function to initialize EH region table.
5289 (in_same_eh_region): New function used to determine if two rtl
5290 instructions are in the same exception region or not.
5291 * final.c (final): Initialize the table indicating which instructions
5292 belong in which exception region.
5293 * genpeep.c (main): Add "except.h" to include file list in generated
b57062ca
UD
5294 file insn-peep.c.
5295 * config/sparc/sparc.md: Add calls to 'in_same_eh_region' in 4
5296 peepholes involving calls and unconditional branches.
a0b61d14 5297
66bd0128
JW
5298Mon Mar 16 11:16:50 1998 Jim Wilson <wilson@cygnus.com>
5299
5300 * README.gnat: New file.
5301
1d8eaa6b
AS
5302Mon Mar 16 11:14:20 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5303
5304 * config/m68k/m68k.c: Include <stdlib.h> for atoi. Include
5305 "recog.h" for offsettable_memref_p.
5306 (legitimize_pic_address): Remove unused variable `offset'.
5307 (notice_update_cc): Change return type to void. Add default label
5308 to switch.
5309 (standard_68881_constant_p): Remove unused variable mode.
5310 (print_operand): Define local variable i only if SUPPORT_SUN_FPA.
5311 (const_int_cost): Explicitly declare as returning int.
5312 (output_dbcc_and_branch): Change return type to void.
5313
5314 * config/m68k/linux.h, config/m68k/m68k.md, config/m68k/m68k.c,
5315 config/m68k/m68k.h: Replace gen_rtx (XXX, ...) with gen_rtx_XXX
5316 (...). Use GEN_INT instead of gen_rtx_CONST_INT.
5317
60ba47b4
JL
5318Sun Mar 15 22:30:44 PST 1998 Jeff Law (law@cygnus.com)
5319
5320 * version.c: Bump for snapshot.
5321
68137318
AS
5322Fri Mar 13 11:30:12 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5323
5324 * config/m68k/m68k.h (CONST_OK_FOR_LETTER_P): Fix logic in range
5325 check for 'M' constraint.
5326
7a50f126
JW
5327Thu Mar 12 14:47:14 1998 Jim Wilson <wilson@cygnus.com>
5328
5329 * cccp.c (create_definition): If pedantic, call pedwarn for macro
5330 varargs feature.
5331
57dbca5e
BS
5332Thu Mar 12 13:43:25 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
5333
5334 * i386.c (ix86_logical_operator): New function.
5335 (split_di): Ensure that when a MEM is split, the resulting MEMs have
5336 SImode.
5337 * i386.md (anddi3, xordi3, iordi3): New patterns. Add a define_split
5338 to implement them.
5339
8625fab5
KG
5340Thu Mar 12 15:13:16 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5341 Richard Earnshaw <rearnsha@arm.com>
5342 Nick Clifton <nickc@cygnus.com>
b57062ca 5343
8625fab5 5344 * tm.texi (DEFAULT_RTX_COSTS): Document new macro.
b57062ca 5345
8625fab5 5346 * arm.h (DEFAULT_RTX_COSTS): Define instead of RTX_COSTS.
b57062ca 5347
8625fab5
KG
5348 * cse.c (rtx_cost): Provide a default case in an enumeration
5349 switch, and call DEFAULT_RTX_COSTS if it's defined.
b57062ca 5350
6ce22dac
MH
5351Thu Mar 12 10:02:38 1998 Manfred Hollstein <manfred@s-direktnet.de>
5352
5353 * basic-block.h (compute_preds_succs): Change return type in
5354 prototype to void.
5355 * flow.c (compute_preds_succs): Likewise in function definition.
5356
5357 * regmove.c (find_matches): Cast char used as array index to unsigned char
5358 to supress warning.
5359
9c318306
MH
5360Thu Mar 12 09:39:40 1998 Manfred Hollstein <manfred@s-direktnet.de>
5361
5362 * i386.h (RTX_COSTS): Insert braces around nested if.
5363 (ADDITIONAL_REGISTER_NAMES): Insert braces around structured
5364 elements.
5365
5366 * gcc.c (default_compilers): Properly put brackets around array elements in
5367 initializer.
5368
5369 * getopt.c (_getopt_internal): Add explicit braces around nested if;
5370 reformatted.
5371
5372 * reg-stack.c (record_asm_reg_life): Add explicit braces around nested if's.
5373 (record_reg_life_pat): Add explicit parens around && and || in expression.
5374 (stack_reg_life_analysis): Add parens around assignment used as expression.
5375 (convert_regs): Likewise.
5376
56c5d8bf
MH
5377Thu Mar 12 09:25:29 1998 Manfred Hollstein <manfred@s-direktnet.de>
5378
5379 * bitmap.c (bitmap_element_allocate): Remove unused parameter;
5380 change callers accordingly.
5381
5382 * cplus-dem.c (arm_special): Remove unused parameter work in prototype
5383 and definition; change all callers accordingly.
5384
5385 * except.c (init_eh): Avoid assignment of unused return value of
5386 build_pointer_type; cast it to void, instead, and remove unused
5387 variable type.
5388
5389 * gcc.c (lang_specific_driver): Define prototype only #ifdef
5390 LANG_SPECIFIC_DRIVER.
5391 (temp_names): Define only #ifdef MKTEMP_EACH_FILE.
5392
5393 * genoutput.c (output_epilogue): Initialize next_name to 0.
5394
5395 * real.c (efrexp): #if 0 prototype and function definition.
5396 (eremain): Likewise.
5397 (uditoe): Likewise.
5398 (ditoe): Likewise.
5399 (etoudi): Likewise.
5400 (etodi): Likewise.
5401 (esqrt): Likewise.
5402
5403 * reload.c (push_secondary_reload): Define prototype only
5404 #ifdef HAVE_SECONDARY_RELOADS.
5405
5406 * varasm.c (assemble_static_space): Define rounded only
5407 #ifndef ASM_OUTPUT_ALIGNED_LOCAL.
5408
4fce8e83
MH
5409Thu Mar 12 09:11:35 1998 Manfred Hollstein <manfred@s-direktnet.de>
5410
5411 * i386.md (andsi): Add default case in enumeration switch.
5412 (iorsi3): Likewise.
5413 (iorhi3): Likewise.
5414 (xorsi3): Likewise.
5415
85066503
MH
5416Thu Mar 12 08:37:02 1998 Manfred Hollstein <manfred@s-direktnet.de>
5417
5418 * c-decl (finish_struct): Change type of min_align to unsigned.
5419
5420 * cplus-dem.c (demangle_function_name): Change type of variable i to size_t;
5421 remove unused variable len.
5422
5423 * dwarf2out.c (reg_save): Add explicit cast of -1 to unsigned and a
5424 comment indicating this is proper behaviour.
5425 (reg_loc_descriptor): Remove redundant comparison of unsigned variable
5426 reg >= 0.
5427 (based_loc_descr): Likewise.
5428
5429 * enquire.c (bitpattern): Change type of variable i to unsigned.
5430
5431 * final.c (output_asm_insn): Don't cast insn_noperands to unsigned.
5432
5433 * flow.c (life_analysis): Change type of variable i to size_t;
5434 remove unused variable insn.
5435
5436 * gcc.c (translate_options): Change type of variables optlen, arglen and
5437 complen to size_t.
5438 (input_filename_length): Change type to size_t.
5439 (do_spec_1): Change type of variable bufsize to size_t.
5440 (main): Change type of variables i and j to size_t;
5441 remove subblock local definition of variable i.
5442 (lookup_compiler): Change type of second argument to size_t;
5443 change type of variable i to size_t.
5444
5445 * genemit.c (output_init_mov_optab): Change type of variable i to size_t.
b57062ca 5446
85066503
MH
5447 * genopinit.c (get_insn): Change type of variable pindex to size_t.
5448
5449 * genrecog.c (add_to_sequence): Change type of variable i to size_t.
5450
5451 * global.c (global_alloc): Change type of variable i to size_t.
5452
5453 * regclass.c (init_reg_sets): Change type of variables i and j to unsigned.
5454
5455 * stmt.c (expand_end_bindings): Change type of variable i to size_t.
5456 (expand_end_case): Change type of variable count to size_t.
5457
5458 * toplev.c (main): Change type of variable j to size_t.
5459 (set_target_switch): Change type of variable j to size_t.
5460 (print_switch_values): Change type of variable j to size_t;
5461 remove unused variable flags.
5462
5463 * varasm.c (assemble_variable): Change type of variable align to size_t.
5464 (const_hash_rtx): Change type of variable i to size_t.
5465
6d89b990
MM
54661998-03-11 Mark Mitchell <mmitchell@usa.net>
5467
5468 * dbxout.c (dbxout_type_methods): Only treat TYPE_METHODS as a
5469 TREE_VEC if that's what it really is.
5470
01c7f350
MM
5471Wed Mar 11 15:16:01 1998 Michael Meissner <meissner@cygnus.com>
5472
5473 * {haifa-,}sched.c (rank_for_schedule): Only take void * arguments
5474 as per ISO C spec.
5475
754d1a92
TT
5476Wed Mar 11 12:05:20 1998 Teemu Torma <tot@trema.com>
5477
5478 * gthr.h: Changed the comment about return values.
5479 * gthr-solaris.h (__gthread_once): Do not use errno; return the
b57062ca 5480 error number instead of -1.
754d1a92
TT
5481 (__gthread_key_create): Any non-zero return value is an error.
5482 * libgcc2.c (eh_context_initialize): Check for non-zero return
5483 value from __gthread_once.
5484 Check that the value of get_eh_context was really changed.
5485
77008a44
R
5486Wed Mar 11 18:26:25 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5487
5488 * sh.h (LOOP_ALIGN): Only align when optimizing.
5489 * sh.c (find_barrier): Clear inc for CODE_LABELs.
5490 When not optimizing, calculate alignment for BARRIERs directly.
5491
a8aa4e0b
R
5492Wed Mar 11 15:07:18 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5493
5494 * final.c (shorten_branches): Remove conditionalizing on
5495 SHORTEN_WITH_ADJUST_INSN_LENGTH
5496 * sh.h, pa.h (SHORTEN_WITH_ADJUST_INSN_LENGTH): Remove.
5497
832544bd
JL
5498Wed Mar 11 02:37:41 1998 Jeffrey A Law (law@cygnus.com)
5499
5500 * flow.c (find_basic_blocks_1): Keep the cfg accurate when removing
5501 an unconditional jump around deleted blocks.
5502
bdd3e6ab
JW
5503Mon Mar 9 12:02:23 1998 Jim Wilson <wilson@cygnus.com>
5504
11a932c0
JW
5505 * profile.c (branch_prob): If see computed goto, call fatal instead of
5506 abort.
5507
eeb54a49 5508 * config/mips/sni-svr4.h (CPP_PREDEFINE): Add -DSNI and -Dsinix.
b57062ca 5509
35011dd5
JW
5510 * configure.in (alpha-dec-osf): Add default case for osf* to switch.
5511 Patch from Bruno Haible.
5512
bdd3e6ab
JW
5513 * function.c (put_reg_into_stack): Copy MEM_IN_STRUCT_P from new.
5514 (assign_parms): Set aggregate if hide_last_arg and last_named.
5515
af035616
R
5516Mon Mar 9 19:57:56 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5517
5518 * final.c (shorten_branches): Initialize insn_addresses.
5519
97e3c422
R
5520Mon Mar 9 14:10:23 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5521
5522 * sh.h (MUST_PASS_IN_STACK): Define.
5523
5e75ef4a
JL
5524Sun Mar 8 13:01:56 1998 Jeffrey A Law (law@cygnus.com)
5525
5526 * final.c (shorten_branches): Fix minor logic error in
5527 ADDR_DIFF_VEC shortening support.
5528
99613661
JL
5529Sun Mar 8 02:17:42 PST 1998 Jeff Law (law@cygnus.com)
5530
5531 * version.c: Bump for snapshot.
5532
8ea2b111
JL
5533Sat Mar 7 00:54:15 1998 Jeffrey A Law (law@cygnus.com)
5534
168cbdf9
JL
5535 * haifa-sched.c (is_cfg_nonregular): Change return type to
5536 an int. No longer compute "estimated" number of edges. Use
5537 computed_jump_p instead of duplicating the code. Fixup/add
5538 some comments.
5539 (build_control_flow): Returns a value indicating an irregularity
5540 in the cfg was detected. Count the number of edges in the cfg.
5541 allocate various edge tables.
5542 (find_rgns): No longer look for unreachable blocks.
5543 (schedule_insns): Do not allocate memory for edge tables here.
5544 Free memory for edge tables before returning. Do not perform
5545 cross block scheduling if build_control_flow returns nonzero.
5546 * flow.c (compute_preds_succs): More accurately determine when
5547 a block drops in.
5548
52becdc0
JL
5549 * basic-block.h (free_basic_block_vargs): Provide prototype.
5550
8ea2b111
JL
5551 * cccp.c (main): Fix dumb mistakes in last change.
5552
33f7f353
JR
5553Fri Mar 6 21:28:45 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5554
5555 * rtl.h (addr_diff_vec_flags): New typedef.
5556 (union rtunion_def): New member rt_addr_diff_vec_flags.
5557 (ADDR_DIFF_VEC_FLAGS): New macro.
5558
5559 * sh.c (output_branch): Fix offset overflow problems.
5560
5561 * final.c (shorten_branches): Implement CASE_VECTOR_SHORTEN_MODE.
5562 (final_scan_insn): New argument BODY for ASM_OUTPUT_ADDR_DIFF_ELT.
5563 * rtl.def (ADDR_DIFF_VEC): Three new fields (min, max and flags).
5564 * stmt.c (expand_end_case): Supply new arguments to
5565 gen_rtx_ADDR_DIFF_VEC.
5566 * 1750a.h (ASM_OUTPUT_ADDR_DIFF_ELT): New argument BODY.
5567 * alpha.h, arc.h, clipper.h, convex.h : Likewise.
5568 * dsp16xx.h, elxsi.h, fx80.h, gmicro.h, h8300.h : Likewise.
5569 * i370.h, i386.h, i860.h, i960.h, m32r.h, m68k.h, m88k.h : Likewise.
5570 * mips.h, mn10200.h, mn10300.h, ns32k.h, pa.h, pyr.h : Likewise.
5571 * rs6000.h, sh.h, sparc.h, spur.h, tahoe.h, v850.h : Likewise.
5572 * vax.h, we32k.h, alpha/vms.h, arm/aof.h, arm/aout.h : Likewise.
5573 * i386/386bsd.h, i386/freebsd-elf.h : Likewise.
5574 * i386/freebsd.h, i386/linux.h : Likewise.
5575 * i386/netbsd.h, i386/osfrose.h, i386/ptx4-i.h, i386/sco5.h : Likewise.
5576 * i386/sysv4.h, m68k/3b1.h, m68k/dpx2.h, m68k/hp320.h : Likewise.
5577 * m68k/mot3300.h, m68k/sgs.h : Likewise.
5578 * m68k/tower-as.h, ns32k/encore.h, sparc/pbd.h : Likewise.
5579 * sh.h (INSN_ALIGN, INSN_LENGTH_ALIGNMENT): Define.
5580 (CASE_VECTOR_SHORTEN_MODE): Define.
5581 (short_cbranch_p, align_length, addr_diff_vec_adjust): Don't declare.
5582 (med_branch_p, braf_branch_p): Don't declare.
5583 (mdep_reorg_phase, barrier_align): Declare.
5584 (ADJUST_INSN_LENGTH): Remove alignment handling.
5585 * sh.c (uid_align, uid_align_max): Deleted.
5586 (max_uid_before_fixup_addr_diff_vecs, branch_offset): Deleted.
5587 (short_cbranch_p, med_branch_p, braf_branch_p, align_length): Deleted.
5588 (cache_align_p, fixup_aligns, addr_diff_vec_adjust): Deleted.
5589 (output_far_jump): Don't use braf_branch_p.
5590 (output_branchy_insn): Don't use branch_offset.
5591 (find_barrier): Remove checks for max_uid_before_fixup_addr_diff_vecs.
5592 Remove paired barrier stuff.
5593 Don't use cache_align_p.
5594 Take alignment insns into account.
5595 (fixup_addr_diff_vecs): Reduce to only fixing up the base label of
5596 the addr_diff_vec.
5597 (barrier_align, branch_dest): New function.
5598 (machine_dependent_reorg, split_branches): Remove infrastructure
5599 for branch shortening that is now provided in the backend.
5600 * sh.md (short_cbranch_p, med_branch_p, med_cbranch_p): New attributes.
5601 (braf_branch_p, braf_cbranch_p): Likewise.
5602 (attribute length): Use new attributes.
5603 (casesi_worker): Get mode and unsignednedd from ADDR_DIFF_VEC.
5604 (addr_diff_vec_adjust): Delete.
5605 (align_2): Now a define_expand.
5606 (align_log): Now length 0.
5607
170a16c7
MM
5608Fri Mar 6 14:41:33 1998 Michael Meissner <meissner@cygnus.com>
5609
5610 * m32r.md (right): Correctly check for length == 2, not 1.
5611
688f0603
KG
5612Fri Mar 6 14:00:04 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5613
5614 * mips/mips.h: Prototype `machine_dependent_reorg'.
5615 (ASM_OUTPUT_ALIGN): Remove unused variable `mask'.
5616
19cbe68d
JR
5617Fri Mar 6 11:43:35 1998 Joern Rennecke (amylaar@cygnus.co.uk)
5618
5619 * final.c (shorten_branches): Restore accidentally removed code.
5620
8add77ce
AS
5621Fri Mar 6 11:00:49 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5622
5623 * configure.in: Remove duplicate uses of AC_PROG_CC and
5624 AC_PROG_MAKE_SET.
5625
fbb5ed67
RH
5626Fri Mar 6 00:59:30 1998 Richard Henderson <rth@cygnus.com>
5627
5628 * configure.in (target_cpu_default2): Correct typo for alphapca56.
5629
5ece9746
JL
5630Thu Mar 5 23:24:50 1998 Jeffrey A Law (law@cygnus.com)
5631 Doug Evans (devans@cygnus.com)
5632
5633 * haifa-sched.c (build_jmp_edges): Delete dead function.
5634 (build_control_flow): Use cfg routines from flow.c
5635 (schedule_insns): Remove debugging code accidentally checked
5636 in earlier today.
5637
5638 * basic-block.h: Add external integer list structures, typdefs,
5639 accessor macros and function declarations. Simlarly for
5640 basic block pred/succ support and simple bitmap stuff.
5641 * flow.c: Add functions for integer list, basic block pred/succ
5642 support and simple bitmap support.
5643 (compute_dominators): New function to compute dominators and
5644 post dominators.
5645 (find_basic_blocks): Split into two functions.
5646 (life_analysis): Likewise.
5647 (flow_analysis): Removed. Now handled by calling find_basic_blocks,
5648 the life_analysis from toplev.c
5649 * toplev.c (rest_of_compilation): Call find_basic_blocks, then
5650 life_analysis instead of flow_analysis.
5651
ac9b3c97
R
5652Thu Mar 5 23:06:26 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5653
5654 * jump.c (jump_optimize): Call mark_jump_label also for deleted
5655 insns.
5656 (mark_jump_label): Don't increment ref counts for deleted insns.
5657
6e92f4b6
KG
5658Thu Mar 5 09:55:15 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5659
5660 * mips/iris6.h (TARGET_DEFAULT): Parenthesize macro definition.
b57062ca 5661
6e92f4b6
KG
5662 * mips/mips.c: Include stdlib.h and unistd.h.
5663 (mips_asm_file_end): Add braces around empty body in an if-statement.
5664 (function_prologue): Wrap variable `fnname' in
5665 !FUNCTION_NAME_ALREADY_DECLARED. Correct format specifier in fprintf.
5666 (mips_select_rtx_section, mips_select_section): Declare as void.
b57062ca 5667
6e92f4b6
KG
5668 * mips/mips.h: Add prototypes for extern functions in mips.c.
5669 (FUNCTION_ARG_REGNO_P): Add parentheses around && within ||.
5670 (ENCODE_SECTION_INFO): Add braces around empty body in an
5671 if-statement.
b57062ca 5672
6e92f4b6
KG
5673 * mips/mips.md (movdi): Add parentheses around && within ||.
5674 (movsf, movdf): Likewise.
5675 (branch_zero, branch_zero_di): Add default case in
5676 enumeration switch.
b57062ca 5677
6e92f4b6 5678
9ba3994a
RH
5679Thu Mar 5 02:45:48 1998 Richard Henderson <rth@cygnus.com>
5680
5681 * alpha/alpha.h (TARGET_WINDOWS_NT, TARGET_OPEN_VMS): Just make them
5682 real constants, since they can't be changed.
5683 (TARGET_AS_CAN_SUBTRACT_LABELS): New.
5684 * alpha/alpha.md (builtin_setjmp_receiver): Use it.
5685 * alpha/osf.h (TARGET_AS_CAN_SUBTRACT_LABELS): New.
5686 * alpha/osf2or3.h (TARGET_AS_CAN_SUBTRACT_LABELS): New.
5687 * alpha/vms.h (TARGET_OPEN_VMS): New.
5688 * alpha/win-nt.h (TARGET_WINDOWS_NT): New.
5689
5ec105cd
RH
5690Thu Mar 5 02:41:27 1998 Richard Henderson <rth@cygnus.com>
5691
5692 * reload.c (find_reloads): Always force (subreg (mem)) to be
5693 reloaded if WORD_REGISTER_OPERATIONS.
5694
ebb7b10b
RH
5695Thu Mar 5 02:14:44 1998 Richard Henderson <rth@cygnus.com>
5696
5697 * haifa-sched.c (free_list): Rename from free_pnd_lst.
5698 (free_pending_lists): Rename free_pnd_lst uses.
5699 (remove_dependence): Place expunged element on unused_insn_list.
5700 (alloc_INSN_LIST, alloc_EXPR_LIST): New. Change all callers of
5701 gen_rtx_*_LIST and alloc_rtx to use them.
5702 (compute_block_backward_dependences): Free the reg_last_* lists.
5703
cb37ce62
JL
5704Thu Mar 5 00:05:40 1998 Jeffrey A Law (law@cygnus.com)
5705
5706 * cccp.c (main): Avoid undefined behavior when setting pend_includes
5707 and pend_files.
5708
ce514f57
FS
5709Wed Mar 4 21:58:25 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
5710
b57062ca 5711 * rs6000/linux.h: don't define DEFAULT_VTABLE_THUNKS to 1 if
ce514f57
FS
5712 USE_GNULIBC_1 is defined
5713 * configure.in: add a new case powerpc-*-linux-gnulibc1 which
5714 includes the t-linux-gnulibc1 fragment
5715
89a5e42b
JW
5716Wed Mar 4 12:11:36 1998 Jim Wilson <wilson@cygnus.com>
5717
5718 * mips.md (movdf_internal1a): Fix misplaced parenthesis in condition.
5719
1dd8faa8
R
5720Wed Mar 4 18:47:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5721
5722 * final.c (final_scan_insn, case CODE_LABEL: Cleanup.
5723
e2faec75
R
5724Wed Mar 4 15:51:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5725
5726 * final.c (shorten_branches): Tag the loop alignment onto the
5727 first label after NOTE_INSN_LOOP_BEG even if there is an
5728 intervening insn.
5729
de7987a6
R
5730Tue Mar 3 21:48:35 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5731
26024475
R
5732 * final.c (insn_current_reference_address):
5733 Use SEQ instead of BRANCH as argument to align_fuzz, to get a
5734 proper alignment chain.
5735
de7987a6
R
5736 * final.c (max_labelno): New static variable.
5737 (final_scan_insn): Check max_labelno before outputting an
5738 alignment for a label.
de7987a6
R
5739 (shorten_branches): Remove unused variable length_align.
5740
27d8f9ea
KG
5741Tue Mar 3 14:27:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5742
5743 * sparc.c (ultrasparc_adjust_cost): Add default case in
5744 enumeration switch.
b57062ca 5745
27d8f9ea
KG
5746 * sparc.h: Add prototypes for extern functions defined in
5747 sparc.c.
5748
bd334356
NC
5749Tue Mar 3 10:00:11 1998 Nick Clifton <nickc@cygnus.com>
5750
5751 * toplev.c: Only generate <name>.dbr file when dumping RTL if
b57062ca 5752 DEALY_SLOTS is defined.
bd334356 5753
1838fe6d
MH
5754Tue Mar 3 07:36:37 1998 Manfred Hollstein <manfred@s-direktnet.de>
5755
5756 * reorg.c (fill_eager_delay_slots): Add new argument delay_list
5757 in call to fill_slots_from_thread.
5758
b0021153
RH
5759Mon Mar 2 13:45:03 1998 Richard Henderson <rth@cygnus.com>
5760
b57062ca 5761 * alpha/linux.h (CPP_PREDEFINES): Correct connecting whitespace
b0021153
RH
5762 to SUB_CPP_PREDEFINES. Reported by asun@saul4.u.washington.edu.
5763
687d0ab6 5764Mon Mar 2 22:59:28 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
fc470718
R
5765
5766 * final.c (insn_last_address, insn_current_align, uid_align):
5767 New variables.
5768 (in_align_chain, align_fuzz, align_shrink_fuzz): New functions.
5769 (insn_current_reference_address): Likewise.
5770 (shorten_branches, final_scan_insn): Implement LABEL_ALIGN,
5771 LABEL_ALIGN_AFTER_BARRIER and LOOP_ALIGN target macros.
5772 (label_to_alignment): New function.
5773 * genattrtab.c (write_test_expr): If one of LABEL_ALIGN,
5774 LABEL_ALIGN_AFTER_BARRIER or LOOP_ALIGN is defined, call
5775 insn_current_reference_address instead of insn_current_address.
5776 (or_attr_value, write_length_unit_log): New functions.
5777 (main): Call write_length_unit_log.
5778 (write_const_num_delay_slots): Output extra '\n'.
5779 * alpha.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE):
5780 replace with:
5781 (LOOP_ALIGN, ALIGN_LABEL_AFTER_BARRIER).
5782 * i386.h, i386/osfrose.h, i386/svr3dbx.h, m68k.h, sparc.h: Likewise.
5783 * arc.h, m32r.h (ASM_OUTPUT_LOOP_ALIGN): replace with:
5784 (LOOP_ALIGN).
5785 * i960.h, m88k.h: (ASM_OUTPUT_ALIGN_CODE): Replace with:
5786 (LABEL_ALIGN_AFTER_BARRIER).
5787 * ns32k/encore.h, ns32k/merlin.h, ns32k.h, ns32k/sequent.h: Likewise.
5788 * ns32k/tek6000.h: Likewise.
5789 * i386/gas.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE): Delete.
5790 * i386.md (casesi+1): Use ASM_OUTPUT_ALIGN instead of
5791 ASM_OUTPUT_ALIGN_CODE.
5792
54f00917
JL
5793Mon Mar 2 01:05:50 PST 1998 Jeff Law (law@cygnus.com)
5794
5795 * version.c: Bump for snapshot.
5796
38630f7e
JL
5797Mon Mar 2 00:52:18 PST 1998 Jeff Law (law@cygnus.com)
5798
5799 * version.c: Bump for snapshot.
5800
ab63953e
JL
5801Sun Mar 1 18:25:49 1998 Michael P. Hayes <michaelh@ongaonga.chch.cri.nz>
5802
5803 * reorg.c (fill_slots_from_thread): Don't steal delay list from target
b57062ca 5804 if condition code of jump conflicts with opposite_needed.
ab63953e
JL
5805
5806 * reorg.c (fill_slots_from_thread): Mark resources referenced in
5807 opposite_needed thread. Return delay_list even when cannot get
5808 any more delay insns from end of subroutine.
5809
5810Sun Mar 1 18:26:21 1998 Ken Rose (rose@acm.org)
5811
5812 * reorg.c (fill_slots_from_thread): New parameter, delay_list.
5813 All callers changed.
5814
5815Sun Mar 1 18:25:37 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
72dd050a
BH
5816
5817 * frame.c (start_fde_sort, fde_split, heapsort, fde_merge,
5818 end_fde_sort): New functions for fast sorting of an FDE array.
5819 (fde_insert): Simplified.
5820 (add_fdes): Change argument list.
5821 (frame_init): Use the new functions.
5822
de153e82
JL
5823Sun Mar 1 18:06:21 1998 Jeffrey A Law (law@cygnus.com)
5824
925b1f33
JL
5825 * ginclude/va-ppc.h (va_arg): Fix typo in long long support.
5826
c7271385
JL
5827 * i386.c (reg_mentioned_in_mem): Fix dangling else statement.
5828
de153e82
JL
5829 * fold-const.c (fold_range_test): Always return a value.
5830
81023100
MK
5831Sun Mar 1 17:57:34 1998 Mumit Khan <khan@xraylith.wisc.edu>
5832
5833 * config/i386/winnt.c (i386_pe_unique_section): Put read-only
5834 data in the text section unless READONLY_DATA_SECTION is defined.
5835
818e50a5
JL
5836Sun Mar 1 17:48:46 1998 Jeffrey A Law (law@cygnus.com)
5837
5838 * c-parse.in (undeclared variable error): Tweak error message to
5839 be clearer.
5840
c93dc3ac
JL
5841Sun Mar 1 10:22:36 PST 1998 Jeff Law (law@cygnus.com)
5842
5843 * version.c: Bump for snapshot.
5844
90ca38bb
MM
58451998-02-28 Mark Mitchell <mmitchell@usa.net>
5846
5847 * final.c (final_scan_insn): Undo overzealous removal of `set'.
5848
3d85c12e
KG
5849Sat Feb 28 07:54:03 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5850
5feca984
KG
5851 * pa.h (CONST_COSTS): When checking the CONST_DOUBLE enumerated
5852 case, add parentheses to specify the proper order of precedence in
5853 the if-statement.
b57062ca 5854
5feca984 5855
51723711
KG
5856 * c-aux-info.c: Include string.h/strings.h.
5857
5858 * pa.c: Include stdlib.h.
5859 (pa_combine_instructions): Prototype the function.
5860 (pa_can_combine_p, forward_branch_p, shadd_constant_p): Likewise.
5861 (reloc_needed): Add default case for enumeration switch.
5862 (remove_useless_addtr_insns): Remove unused variable `all'.
5863 (hppa_expand_prologue): Add explicit braces to avoid
5864 ambiguous `else'.
5865 (output_function_epilogue): Remove unused variable `i'.
5866 (output_millicode_call): Remove unused variable `link'.
5867 (shadd_constant_p, forward_branch_p): Make the function static.
5868 (following_call): Explicitly declare to return int.
5869 (pa_reorg): Declare as void.
5870 (pa_combine_instructions): Declare as static void. Add
5871 parentheses around && within ||.
b57062ca 5872
51723711
KG
5873 * pa.h: Add prototypes for pa_reorg, symbolic_operand,
5874 following_call, function_label_operand, lhs_lshift_cint_operand
5875 and zdepi_cint_p.
5876
5877 * pa.md: Add parentheses around && within ||.
5878
5879 * cppalloc.c: Include stdlib.h.
5880
5881 * cpperror.c (cpp_print_containing_files): Remove unused variable
5882 `i'. Fix format specifier in fprintf.
5883
5884 * cse.c (cse_around_loop): Add explicit braces to avoid
5885 ambiguous `else'.
5886 (delete_dead_from_cse): Wrap variable `tem' in macro HAVE_cc0.
5887
5888 * expr.c (expand_expr): Add parentheses around && within ||.
5889
5890 * final.c (app_enable): Replace fprintf with fputs where there are
5891 no format specifiers and no trailing argument after the string.
5892 Eg, when printing ASM_APP_ON/ASM_APP_OFF.
5893 (app_disable): Likewise.
5894 (final_end_function): Likewise.
5895 (final_scan_insn): Likewise. Remove unused variable `set'.
5896 (profile_function): Wrap empty if-statement body in {} brackets.
5897
5898 * function.c: Include stdlib.h.
5899 (pad_below): Wrap prototype and definition in ARGS_GROW_DOWNWARD.
5900 (reposition_prologue_and_epilogue_notes): Add parentheses
5901 around assignment used as truth value.
5902
5903 * integrate.c (expand_inline_function): Wrap variable
5904 `cc0_insn' in macro HAVE_cc0.
5905
5906 * jump.c (jump_optimize): Wrap variable `q' in macro
5907 HAVE_cc0. Remove unused variable `prev1'.
5908
5909 * libgcc2.c (__bb_exit_trace_func): Add parentheses around &&
5910 within ||. Fix format specifier in fprintf.
5911 (__bb_init_prg): Add parentheses around assignment used as
5912 truth value.
5913
5914 * local-alloc.c: Include stdlib.h.
5915 (requires_inout): Add parentheses around assignment used
5916 as truth value.
5917
5918 * loop.c (analyze_loop_iterations): Wrap prototype and definition
5919 in macro HAVE_decrement_and_branch_on_count.
5920 (insert_bct, instrument_loop_bct): Likewise.
5921 (move_movables): Add parentheses around assignment used as
5922 truth value.
5923 (consec_sets_invariant_p): Likewise.
5924 (maybe_eliminate_biv_1): Wrap variable `new' in macro HAVE_cc0.
5925
5926 * objc/objc-act.c: Include stdlib.h.
5927 (lookup_method_in_protocol_list): Wrap empty else-statement body
5928 in braces.
5929 (lookup_protocol_in_reflist): Likewise.
5930 (objc_add_static_instance): Remove unused variables `decl_expr'
5931 and `decl_spec'.
5932 (get_objc_string_decl): Remove unused variable `decl'.
5933 (generate_static_references): Remove unused variables `idecl' and
5934 `instance'.
5935 (check_protocols): Wrap empty else-statement body in braces.
b57062ca 5936
51723711
KG
5937 * protoize.c: Include stdlib.h.
5938 (substr): Add parentheses around assignment used as truth value.
5939 (abspath): Likewise.
5940 (shortpath): Likewise.
5941
5942 * regmove.c (fixup_match_1): Add parentheses around assignment
5943 used as truth value.
5944
5945 * reload.c (push_secondary_reload): Remove unused variable `i'.
5946 (find_reloads): Add parentheses around assignment used as truth
5947 value.
5948
5949 * reload1.c: Include stdlib.h.
5950
5951 * rtl.h: Correct typo in prototype of offsettable_memref_p.
5952
5953 * stmt.c (add_case_node): Add parentheses around assignment used
5954 as truth value.
5955 (case_tree2list): Likewise.
5956
5957 * tree.c (valid_machine_attribute): Wrap variable `decl_attr_list'
5958 in macro VALID_MACHINE_DECL_ATTRIBUTE. Wrap variable
5959 `type_attr_list' in macro VALID_MACHINE_TYPE_ATTRIBUTE.
5960 (merge_attributes): Add explicit braces to avoid ambiguous
5961 `else'.
5962
5963 * unroll.c (copy_loop_body): Wrap variable `cc0_insn' in
5964 macro HAVE_cc0.
b57062ca 5965
51723711 5966 * varasm.c: Include stdlib.h.
b57062ca 5967
51723711 5968
c5801053
KG
5969 * system.h: Remove sys/stat.h.
5970 * gcc.c: Add sys/stat.h.
5971
3d85c12e
KG
5972 * genattr.c: Wrap prototype of `free' in NEED_DECLARATION_FREE.
5973 * genattrtab.c: Likewise.
5974 * genconfig.c: Likewise.
5975 * genemit.c: Likewise.
5976 * genextract.c: Likewise.
5977 * genflags.c: Likewise.
5978 * genopinit.c: Likewise.
5979 * genoutput.c: Likewise.
5980 * genpeep.c: Likewise.
5981 * genrecog.c: Likewise.
5982 * tlink.c: Likewise. Also wrap `getenv' in NEED_DECLARATION_GETENV.
5983
0fd12b04
AS
5984Fri Feb 27 11:02:47 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5985
bd762873
AS
5986 * invoke.texi: Use @itemx for a secondary item in a @table.
5987
0fd12b04
AS
5988 * config/m68k/m68k.md (movsf+1): Optimize moving a CONST_DOUBLE
5989 zero.
5990
c3cf395b
ILT
5991Thu Feb 26 00:13:21 1998 Ian Lance Taylor <ian@cygnus.com>
5992
5993 * choose-temp.c: Fix handling of sys/file.h to work in libiberty.
5994
b94b5c16
JL
5995Wed Feb 25 23:40:54 1998 Jeffrey A Law (law@cygnus.com)
5996
5997 * i386.c (struct machine_function): Add new fields for PIC stuff.
5998 (save_386_machine_status): Fix argument to xmalloc. Save pic_label_rtx
5999 and pic_label_name.
6000 (restore_386_machine_status): Corresponding changes.
6001 (clear_386_stack_locals): Also clear pic_label_rtx and pic_label_name.
6002
8dfafd99
JL
6003Wed Feb 25 01:31:40 1998 Jeffrey A Law (law@cygnus.com)
6004
6005 * c-parse.y (undeclared variable error): Tweak error message
6006 to be clearer.
6007
bb8ebb7f
RH
6008Tue Feb 24 23:54:07 1998 Richard Henderson <rth@cygnus.com>
6009
6010 * flags.h (g_switch_value, g_switch_set): Declare.
6011 * alpha.c (override_options): Set g_switch_value=8 if not set.
6012 * alpha/elf.h (CC1_SPEC): New.
6013 (ASM_SPEC): New.
6014 (LINK_SPEC): Pass along the -G value we were given.
6015 (LOCAL_ASM_OP): Remove.
6016 (ASM_OUTPUT_ALIGNED_LOCAL): Output to .bss or .sbss by size.
6017 (MAX_OFILE_ALIGNMENT): New.
6018 (BSS_SECTION_ASM_OP, SBSS_SECTION_ASM_OP, SDATA_SECTION_ASM_OP): New.
6019 (EXTRA_SECTIONS): Add sbss and sdata.
6020 (SECTION_FUNCTION_TEMPLATE): New.
6021 (EXTRA_SECTION_FUNCTIONS): Use it.
6022 (CTORS_SECTION_FUNCTION, DTORS_SECTION_FUNCTION): Remove.
6023 (SELECT_SECTION): Use sdata when small enough.
6024 * alpha/linux.h (ASM_SPEC): Remove.
b57062ca 6025
bb8ebb7f 6026
3e07bdbd
BH
6027Mon Feb 23 15:09:18 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
6028 * config.sub (sco5): Fix typo.
6029
9d1ebd25
MH
6030Mon Feb 23 18:19:31 1998 Manfred Hollstein <manfred@s-direktnet.de>
6031
6032 * config/t-linux (LIBGCC1, CROSS_LIBGCC1, LIBGCC1_TEST): Add macros and
6033 set to empty.
6034 * config/t-linux-aout (LIBGCC1, CROSS_LIBGCC1, LIBGCC1_TEST): Likewise.
6035 * config/alpha/t-linux: Remove file.
6036 * config/sparc/t-linux: Remove file.
6037 * config/m68k/t-linux (LIBGCC1, CROSS_LIBGCC1): Remove.
6038 * config/m68k/t-linux-aout (LIBGCC1, CROSS_LIBGCC1): Likewise.
6039 * configure.in (alpha*-*-linux-gnulibc1*): Use t-linux instead of alpha/t-linux
6040 for tmake_file.
6041 (alpha*-*-linux-gnu*): Likewise.
6042 (sparc-*-linux-gnulibc1*): Use t-linux instead of sparc/t-linux for tmake_file.
6043 (sparc-*-linux-gnu*): Likewise.
84bc3b4f
RL
6044
6045Mon Feb 23 10:47:39 1998 Robert Lipe <robertl@dgii.com>
6046 * collect2.c (ldd_file_name): Bracket declaration with same
6047 manifests as use.
6048 (full_real_ld_suffix): Deleted. Variable was calloced and
6049 written into, but never read.
6050
9e89df50
MS
60511998-02-23 Mike Stump <mrs@wrs.com>
6052
6053 * configure.in: Add support for i386-wrs-vxworks configuration.
6054 * i386/vxi386.h: New file.
6055
1160f9ec
BH
6056Sun Feb 22 21:16:51 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
6057
6058 * tree.c (contains_placeholder_p): Ensure function always returns
6059 a value.
6060 * sparc.md (movdi_sp64_insn): Add default case in enumeration switch.
6061 (movsf_const_insn, movdf_const_insn, movtf_const_insn): Likewise.
6062
328da75c
JL
6063Sun Feb 22 20:58:19 1998 Jeffrey A Law (law@cygnus.com)
6064
6065 * vms.h (SELECT_SECTION): Use TREE_CODE_CLASS correctly.
6066
deabc777
PE
60671998-02-22 Paul Eggert <eggert@twinsun.com>
6068
6069 * config/sparc/sol2-sld.h (LINKER_DOES_NOT_WORK_WITH_DWARF2):
6070 Define this new symbol.
6071 (DWARF2_DEBUGGING_INFO, DWARF_DEBUGGING_INFO): Do not #undef.
6072 * toplev.c (main): Do not default to DWARF2_DEBUG with -ggdb if
6073 LINKER_DOES_NOT_WORK_WITH_DWARF2 is defined.
6074
0e84e8fb
JW
6075Sun Feb 22 20:07:32 1998 Jim Wilson <wilson@cygnus.com>
6076
6077 * iris5.h (DWARF2_UNWIND_INFO): Define to 0.
6078 * iris5gas.h (DWARF2_UNWIND_INFO): Define to 1.
6079
9c37957a
RH
6080Sun Feb 22 15:29:48 1998 Richard Henderson <rth@cygnus.com>
6081
6082 * objc/Object.m (-error): Call objc_verror with our va_list.
6083
e3c49f52
DE
6084Sun Feb 22 09:45:39 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6085
6086 * collect2.c (scan_prog_file): Completely cover uses of variable
6087 `exports' with macro COLLECT_EXPORT_LIST.
6088
6089Sat Feb 21 20:36:23 1998 Jeff Law (law@cygnus.com)
d935d60e
JL
6090
6091 * version.c: Bump for snapshot.
6092
3c674857
MM
6093Fri Feb 20 16:22:13 1998 Michael Meissner <meissner@cygnus.com>
6094
6095 * sched.c (schedule_block): Remove code to get arguments from hard
6096 regs into pseudos early. Same as Aug 25, 1997 change to
6097 haifa-sched.c.
6098
c2d731c4
JM
60991998-02-20 Jason Merrill <jason@yorick.cygnus.com>
6100
6101 * collect2.c (main): Still handle !do_collecting for non-AIX targets.
6102
7d02bbef
JM
61031998-02-16 Mark Mitchell <mmitchell@usa.net>
6104
6105 * toplev.c (rest_of_compilation): Do not defer the output of a
6106 nested function.
6107
9766dbcf
MT
6108Fri Feb 20 10:39:47 1998 Michael Tiemann <michael@impact.tiemann.org>
6109
6110 * ginclude/va-mips.h (va_arg): Remove trailing space after '\'
6111 continuation character (line 243).
6112
01a7aaea
AS
6113Fri Feb 20 12:10:26 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6114
6115 * genrecog.c (main): Remove duplicated sentence in emitted comment.
6116
db126753
DE
6117Thu Feb 19 22:36:53 1998 Andrey Slepuhin <pooh@msu.net>
6118 David Edelsohn <edelsohn@mhpcc.edu>
6119
6120 * collect2.c (XCOFF_SCAN_LIBS): Remove.
6121 (export_flag): New variable.
6122 (export_file): #ifdef COLLECT_EXPORT_LIST.
6123 (import_file, exports, imports, undefined): New variables.
6124 (libs, cmdline_lib_dirs, libpath_lib_dirs, libpath, libexts): Same.
6125 (dump_list, dump_prefix_list, is_in_list): New functions.
6126 (write_export_file): $ifdef COLLECT_EXPORT_LIST.
6127 (write_import_file, resolve_lib_name): New functions.
6128 (use_import_list, ignore_library): Same.
6129 (collect_exit): maybe_unlink import_file and #ifdef.
6130 (handler): Same.
6131 (main): New variable importf, #ifdef exportf. Move parsing of
6132 -shared before general argument parsing. Resolve AIX library
6133 paths and import libgcc.a symbols. Treat .so shared libraries the
6134 same as objects and .a libraries. Create alias for object_lst and
6135 increment it instead of original pointer. Scan AIX libraries as
6136 objects earlier instead of using scan_libraries. Perform AIX
6137 tlink later to resolve templates instead of forking ld.
6138 (GCC_OK_SYMBOL): Ensure symbol not in undef section.
6139 (GCC_UNDEF_SYMBOL): New macro.
6140 (scan_prog_file): Loop for members of AIX libraries. Handle
6141 export/import of ctors/dtors.
6142 (aix_std_libs): New variable.
6143 (scan_libraries, XCOFF): Delete.
6144
6145Thu Feb 19 22:36:52 1998 Robert Lipe <robertl@dgii.com>
6146
6147 * collect2.c (full_real_ld_suffix): #ifdef CROSS_COMPILE.
6148
e642002f
MS
61491998-02-19 Mike Stump <mrs@wrs.com>
6150
6151 * Makefile.in: Use $tooldir for sys-include to match toplevel
6152 configure.
6153
aff48bca
JL
6154Thu Feb 19 01:32:37 1998 Jeffrey A Law (law@cygnus.com)
6155 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6156
6157 * emit-rtl.c (gen_lowpart_common): Suppress last change if __complex__.
6158
6159 * emit-rtl.c (hard-reg-set.h): Include.
b57062ca 6160 (get_lowpart_common): Don't make new REG for hard reg in a
aff48bca
JL
6161 class that cannot change size.
6162 * Makefile.in (emit-rtl.o): Depend on hard-reg-set.h.
6163
6164 * combine.c: Revert previous patch.
6165
0a9bdce3
PE
61661998-02-19 Paul Eggert <eggert@twinsun.com>
6167
6168 * config/sparc/sol2-sld.h: New file.
6169 * configure.in (sparc-*-solaris2*): Use it when using the
6170 system linker.
6171
3875b31d
JL
6172Thu Feb 19 00:46:59 1998 Jeffrey A Law (law@cygnus.com)
6173
6174 * loop.c (force_movables): Fix typo.
6175
bb5fa67f
MH
6176Thu Feb 19 08:26:30 1998 Manfred Hollstein <manfred@s-direktnet.de>
6177
6178 * m88k.h: Change file pattern to match reality.
6179
7f83c0e7
JL
6180Wed Feb 18 23:19:52 1998 Jeffrey A Law (law@cygnus.com)
6181
6182 * varasm.c (output_constant_pool): Fix dumb thinko in last
6183 change.
dffc0da4
JL
6184
6185 * pa.h (ASM_OUTPUT_FUNCTION_PREFIX): Correctly translate from
6186 a function name to a section name.
6187
d9525bec
BK
61881998-02-18 Doug Evans <devans@cygnus.com>
6189
6190 * tree.h (merge_machine_{type,decl}_attributes): Declare.
6191 (split_specs_attrs, strip_attrs): Add prototypes.
6192 * tree.c (merge_machine_{type,decl}_attributes): New functions.
6193 * c-decl.c (duplicate_decls): Call merge_machine_decl_attributes.
6194 Update olddecl's attributes too.
6195 * c-common.c (strip_attrs): New function.
6196 * c-typeck.c (common_type): Call merge_machine_type_attributes.
6197 * varasm.c (make_function_rtl): New target macro REDO_SECTION_INFO_P.
6198 (make_decl_rtl): Likewise.
6199
62001998-02-18 Jim Wilson <wilson@cygnus.com>
6201
6202 * c-decl.c (shadow_tag_warned): Call split_specs_attrs.
6203
f9a366ac
JL
6204Wed Feb 18 09:09:50 1998 Jeffrey A Law (law@cygnus.com)
6205
6206 Remove this change until we can fix it correctly.
6207 * collect2.c: Bracket declaration of 'exportf' and
6208 'full_real_ld_suffix'.
6209
206ae7cf
BS
6210Wed Feb 18 08:44:25 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
6211
6212 * Makefile.in (STAGESTUFF): Add genrtl.c, genrtl.h and gengenrtl.
6213
0a7ed33c
BS
6214Tue Feb 17 23:30:20 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
6215
6216 * c-common.c (c_expand_start_cond, c_expand_end_cond,
6217 c_expand_start_else): Don't warn about non-ambiguous else even if
6218 braces are missing.
6219
68c9728a 6220Tue Feb 17 23:56:50 1998 Robert Lipe <robertl@dgii.com>
0a7ed33c 6221
68c9728a
RL
6222 * sco5.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT,
6223 ASM_OUTPUT_LONG_DOUBLE): Delete. Use the ones from i386.h
6224 instead.
6225
15941d29
RH
6226Tue Feb 17 22:56:14 1998 Richard Henderson <rth@cygnus.com>
6227
6228 * combine.c (simplify_rtx): Obey CLASS_CANNOT_CHANGE_SIZE when
6229 simplifying a subreg of a hard reg.
6230 (expand_compound_operation): Likewise.
6231 (force_to_mode): Likewise.
6232
5835e573
KG
6233Tue Feb 17 22:37:22 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6234
2fde567e
KG
6235 * fold-const.c: Include "system.h" to get stdlib.h and stdio.h.
6236 (lshift_double): Add parentheses around + or - inside shift.
6237 (rshift_double): Likewise.
6238 (size_int_wide): Explicitly set type of `bit_p' to `int'.
6239
6240 * Makefile.in (fold-const.o): Depend on system.h.
6241
8e85ff2c
KG
6242 * Makefile.in (gcc.o): Depend on system.h, in accordance with last
6243 change to gcc.c.
6244
5835e573
KG
6245 * haifa-sched.c: Include "system.h" to get <stdlib.h> and <stdio.h>.
6246 (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
6247 (sched_note_set): Remove unused parameter `b', all callers changed.
6248 (schedule_block): Likewise for `rgn'.
6249 (split_hard_reg_notes): Likewise for `orig_insn'.
6250 (check_live): Likewise for `trg'.
6251 (update_live): Likewise.
6252 (check_live_1): Explcitly declare variable `i' as int.
6253 (update_live_1): Likewise.
6254 (insn_issue_delay): Remove unused variable `link'.
6255 (sched_analyze_2): Add default case in enumeration switch.
6256 (schedule_insns): Remove unused variable `i'.
6257
6258 * Makefile.in ($(SCHED_PREFIX)sched.o): Depend on system.h.
6259
b1a0c816
JL
6260Tue Feb 17 22:31:04 1998 Jeffrey A Law (law@cygnus.com)
6261
6262 * loop.c (rtx_equal_for_loop_p): Add some braces to disambiguate
6263 a dangling else clause.
6264
365ca18b
GK
6265Tue Feb 17 21:28:12 1998 Gavin Koch <gavin@cygnus.com>
6266
6267 * mips/mips.h (CAN_ELIMINATE): Don't eliminate the frame
6268 pointer for the stack pointer in MIPS16 and 64BIT.
6269
feb60352
R
6270Tue Feb 17 21:17:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
6271
6272 * rtl.h (force_line_numbers, restore_line_number_status): Declare.
6273 * emit-rtl.c (force_line_numbers, restore_line_number_status):
6274 New functions.
6275 * stmt.c (struct nesting): Replace seenlabel with line_number_status.
6276 (expand_start_case): Adjust to this change.
6277 (check_seenlabel): New function.
6278 (pushcase, pushcase_range, expand_endcase): Use it.
6279
93f83bd5
R
6280Tue Feb 17 10:14:32 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6281
6282 * i386.md (adddi3): Add =!r,0,0,X alternative.
6283
b9af8fb0
DE
6284Mon Feb 16 16:13:43 1998 David Edelsohn <edelsohn@mhpcc.edu>
6285
6286 * rs6000.h (MY_ISCOFF): Add numeric value of U803XTOCMAGIC.
6287 * x-aix31 (INSTALL): Delete.
6288
a4dee8a5
GK
6289Mon Feb 16 09:24:32 1998 Gavin Koch <gavin@cygnus.com>
6290
b57062ca 6291 * mips/mips.c (mips_expand_epilogue): Update tsize_rtx if
a4dee8a5
GK
6292 tsize changes to something other than zero.
6293
8898f8a1
GK
6294Mon Feb 16 09:11:48 1998 Gavin Koch <gavin@cygnus.com>
6295
6296 * ginclude/va-mips.h: Replace casts of pointers to int with
6297 casts of pointers to __PTRDIFF_TYPE__.
6298
9ba7a303
JC
6299Mon Feb 16 08:17:14 1998 John Carr <jfc@mit.edu>
6300
6301 * loop.c (strength_reduce, record_biv, record_giv): Use
6302 HOST_WIDE_INT_PRINT_DEC to print CONST_INT values.
6303
b7f6588d
JM
63041998-02-16 Jason Merrill <jason@yorick.cygnus.com>
6305
6306 * tree.c (first_rtl_op): New fn.
6307 (unsave_expr_now): Use it.
6308 * print-tree.c (print_node): Likewise.
6309 * tree.c (has_cleanups): New fn.
6310 * fold-const.c (fold, case CLEANUP_POINT_EXPR): Use it. Be more
6311 conservative about pushing the cleanup point down.
6312 * tree.h: Declare them.
6313
8e7336f8
JL
6314Sun Feb 15 23:28:44 1998 Jeffrey A Law (law@cygnus.com)
6315
6316 * toplev.c (flag_schedule_reverse_before_reload): Delete variable.
6317 (flag_schedule_reverse_after_reload): Likewise.
6318 (f_options): Remove reverse scheduling support.
6319 * flags.h (flag_schedule_reverse_before_reload): Delete declaration.
6320 (flag_schedule_reverse_after_reload): Likewise.
6321 * haifa-sched.c (rank_for_schedule): Remove support for reverse
6322 scheduling.
b57062ca 6323
79e11844
KG
6324Sun Feb 15 21:33:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6325
17248a6b
KG
6326 * gcc.c: Get system includes, prototypes and macros via "system.h"
6327 instead of doing it manually. Change all calls of the ctype
6328 macros to custom versions defined in "system.h".
6329
79e11844
KG
6330 * system.h: Fix return type of bcmp prototype from `void' to `int'.
6331 Make bcopy, bcmp and bzero prototypes explicitly `extern'.
6332 Add a prototype for getenv.
6333
c9b4de06
JW
6334Sun Feb 15 17:05:41 1998 Jim Wilson <wilson@cygnus.com>
6335
6336 * mips/mips.h (INITIAL_ELIMINATION_OFFSET): Readd Jun 6 change.
6337
9f8f10de
JC
6338Sun Feb 15 15:23:15 1998 John Carr <jfc@mit.edu>
6339
6340 * alias.c: Include <stdlib.h> and <string.h>.
6341 (init_alias_analysis): Pass NULL_RTX instead of 0 to record_set.
6342
d757d141
JL
6343Sat Feb 14 11:23:09 PST 1998 Jeff Law (law@cygnus.com)
6344
6345 * version.c: Bump for snapshot.
6346
7a0a1f09
RE
6347Sat Feb 14 05:08:21 1998 Richard Earnshaw (rearnsha@arm.com)
6348
6349 * arm.md (movsfcc): Also validate operands[3] when compiling hard
6350 float.
6351 (movdfcc): Only accept fpu_add_operand for operands[3].
6352
99e90438
RE
6353 * arm/t-semi (STMP_FIXPROTO): Define to nothing.
6354 * arm/t-semiaof (STMP_FIXPROTO): Likewise.
6355
29a82058
JL
6356Sat Feb 14 02:02:41 1998 Jeffrey A Law (law@cygnus.com)
6357
6358 * varasm.c (output_constant_pool): Bring back 'done' label inside
6359 an appropriate #ifdef.
6360
b57062ca 6361 * bitmap.c (bitmap_element_allocate): Wrap variable 'i' in an
29a82058
JL
6362 appropriate #ifdef.
6363 (bitmap_copy, bitmap_operation): Likewise.
6364 * combine.c (combinable_i3pat): Similarly for 'src'.
6365 * function.c (fixup_var_refs_1): Similarly for 'outerdest'.
6366 (locate_and_pad_parm): Similarly for 'reg_parm_stack_space'.
6367 * regclass.c (copy_cost): Similarly for 'secondary_class'.
6368 * reload.c (make_memloc): Simliarly for 'i'.
6369 (find_reloads_address_1): Similarly for 'link'.
6370 * reload1.c (reload): Similarly for 'previous_frame_pointer_needed'.
6371 (emit_reload_insns): Similarly for 'second_reloadreg'.
6372 * unroll.c (iteration_info): Similarly for 'v'.
6373
6374 * caller-save.c (insert_save_restore): Remove unused variable 'i'.
6375 * calls.c (expand_call): Similarly for 'i'.
6376 (emit_library_call, emit_library_call_value): Similarly for 'mode'.
6377 * fold-const.c (strip_compund_expr): Similarly for 'type'.
6378 * function.c (fixup_var_refs_1): Similarly for 'width'.
6379 (fixup_memory_subreg): Similarly for 'saved'.
6380 (locate_and_pad_parm): Similarly for 'boundary_in_bytes.'
6381 (setjmp_protect): Similarly for 'sub'.
6382 (thread_prologue_and_epilogue_insns): Similarly for 'insn'.
6383 * loop.c (record_giv): Similarly for 'p'.
6384 (combine_givs): Similarly for 'temp_iv'.
6385 (indirect_jump_in_function_p): Similarly for 'is_indirect_jump'.
6386 * recog.c (validate_replace_rtx_1): Similarly for 'width'.
6387 * tree.c (get_set_constructor_bytes): Similarly for 'vals'.
6388 * unroll.c (unroll_loop): Similarly for 'copy'.
6389 (iteration_info): Similarly for 'b'.
6390 * varasm.c (assemble_string): Similarly for 'i'.
6391 * i386.h (LEGITIMIZE_ADDRESS): Similarly for 'orig_x'.
6392
7d02bbef
JM
63931998-02-13 Martin von Loewis <loewis@informatik.hu-berlin.de>
6394
6395 * c-lang.c (lang_print_xnode): New function.
6396 * objc/objc-act.c (lang_print_xnode): Likewise.
6397 * print-tree.c (print_node): Call it
6398
e3e7774e
JW
6399Fri Feb 13 14:38:34 1998 Jim Wilson <wilson@cygnus.com>
6400
6401 * dwarf2out.c (decl_scope_node): New type.
6402 (decl_scope_table): Change type to use it.
6403 (decl_scope_table_allocated, decl_scope_depth): Change type to int.
6404 (push_decl_scope): Use new type. New locals containing_scope, i.
6405 Add code to handle setting previous field.
6406 (scope_die_for): Change type of local i to int. Add code to use
6407 previous field.
6408 (dwarf2out_init): Use new type.
6409
442f0a30
JM
64101998-02-13 Jason Merrill <jason@yorick.cygnus.com>
6411
6412 * except.c (emit_throw): Lose throw_used.
6413
fcdc0d6e
R
6414Fri Feb 13 20:36:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6415
6416 * sched.c (update_flow_info, REG_WAS_0): Ignore if setting insn
6417 was deleted.
6418 * haifa-sched.c (update_flow_info, REG_WAS_0): Likewise.
6419
b7673cdb
JL
6420Fri Feb 13 12:18:40 1998 Jeffrey A Law (law@cygnus.com)
6421
6422 * genextract.c (main): Fix typo.
6423
9e4767ca 6424Fri Feb 13 08:41:49 1998 Robert Lipe <robertl@dgii.com>
69d4ca36 6425
b57062ca 6426 * c-lang.c (finish_file): Bracket declaration of static_ctors,
69d4ca36
RL
6427 static_dtors.
6428
6429 * calls.c (expand_call): Bracket declaration of 'rtx_before_call',
6430 'old_stack_arg_under_construction'
b57062ca 6431 (emit_library_call): Bracket declaration of 'upper_bound',
69d4ca36
RL
6432 'lower_bound', 'i', 'reg_parm_stack_space'
6433 (emit_library_call_value): Likewise.
b57062ca 6434 (store_one_arg):
69d4ca36
RL
6435
6436 * collect2.c: include <unistd.h> when appropriate.
6437 Bracket declaration of 'exportf' and 'full_real_ld_suffix'.
6438
6439 * emit-rtl.c (prev_cc0_setter): Remove unused variable 'link'.
b57062ca 6440
69d4ca36
RL
6441 * explow.c (plus_constant_for_output_wide): Remove unused variable
6442 'code'.
b57062ca 6443 (memory_address): Remove unused variable 'orig_x'.
69d4ca36
RL
6444
6445 * genattrtab.c (make_canonical): Remove unreferenced label 'cond:'.
6446 (write_const_num_delay_slots): Remove unused variable 'i'.
6447
6448 * genopinit.c (main): Remove unused variables 'dummy', 'insn_ptr'.
6449 (gen_insn): Remove unused variable 'obstack_ptr'.
6450
6451 * libgcc2.c (__bb_exit_func): Remove unused variables 'ret',
6452 'j', 'tmp', 'i'.
6453 (__bb_exit_trace_func): Remove unused variable 'e'.
6454
6455 * optabs.c (expand_binop): remove unused variables 'lhs', 'rhs',
6456 'funexp'.
6457 (expand_unop): Remove unused variable 'funexp'.
b57062ca 6458 (expand_complex_abs): Remove unused variable 'funexp'.
69d4ca36
RL
6459 (init_optabs): Bracket declaration of 'j'.
6460 (init_complex_libfuncs): Deleted. Dead static function.
b57062ca 6461
69d4ca36
RL
6462 * profile.c (branch_prob): Remove unused variables 'insn', 'dest'.
6463
6464 * reg-stack.c: Fix typo in proto for 'get_asm_operand_lengths'
6465 (reg_to_stack): 'initialized', 'before_function_beg'
6466 explictly type as ints instead of defaulting.
6467 (emit_swap_insn): Remove unused variable 'i2'.
6468 (compare_for_stack_reg): Remove unused variable 'src_note'.
6469
6470 * rtlanal.c (computed_jump_p): Remove unused variable 'computed_jump'.
6471
6472 * sched.c (actual_hazard): Bracket declaration of 'this_cost'.
6473
6474 * stmt.c (add_case_node): Add parens for assignment used as truth.
6475 (all_cases_count): Remove unused variable 'count_high'.
6476 (mark_seen_cases): Remove unused variable 'i'.
6477 (check_for_full_enumeration_handling): Remove unused variable 't'.
6478 Bracket declaration of 'all_values', 'l'.
b57062ca 6479
69d4ca36
RL
6480 * tlink.c: Include <stdlib.h>, <unistd.h>, <string.h>/<strings.h>.
6481
b57062ca
UD
6482 * varasm.c (assemble_string): Remove unused variable 'i'.
6483 (immed_double_const): Remove unused variable 'in_current_obstack'.
69d4ca36
RL
6484 (immed_real_const_1): Likewise.
6485 (output_constant_pool): Remove unreferenced label 'done'.
6486 (output_constant): Remove unused variable 'x'.
b57062ca 6487
69d4ca36
RL
6488 * i386/i386.h (ENCODE_SECTION_INFO): TREE_PUBLIC is an int, not
6489 a string.
6490
6491 * i386/sco5.h (ASM_OUTPUT_ASCII): Add parens for assignment used
6492 as truth.
6493
e3258cef
R
6494Fri Feb 13 10:21:41 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6495
6496 * combine.c (can_combine_p): Handle USEs in PARALLELs.
6497
1398405b
L
6498Fri Feb 13 01:34:14 1998 H.J. Lu (hjl@gnu.org)
6499
6500 * config/linux.h (LIB_SPEC): Add -lc for -shared if
6501 USE_GNULIBC_1 is not defined.
6502 * config/sparc/linux.h; Ditto.
6503
6504 * config/sparc/linux64.h (LIB_SPEC): Add -lc for -shared.
6505
6506 * config/alpha/linux-elf.h (LIB_SPEC): New. Defined if
6507 USE_GNULIBC_1 is not defined.
6508
03453a9f
FS
6509Fri Feb 13 01:29:29 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
6510
6511 * rs6000/sysv4.h (ENDFILE_SPEC): add missing %(endfile_linux)
6512 for -mcall-linux
6513
aca69483 6514Fri Feb 13 01:23:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 6515
aca69483
KG
6516 * system.h: New file to get common systems includes and various
6517 definitions and declarations based on autoconf macros.
6518
5e0e0f03
JL
6519Fri Feb 13 00:46:19 1998 Jeffrey A Law (law@cygnus.com)
6520
6521 * cccp.c (new_include_prefix): Correctly handle -I./.
6522
89e9f3a8
MM
6523Thu Feb 12 20:16:35 1998 Michael Meissner <meissner@cygnus.com>
6524
6525 * rs6000.md: Replace gen_rtx (CONST_INT,...) with GEN_INT.
6526
8bd6ecc2 6527Thu Feb 12 16:45:17 1998 Robert Lipe <robertl@dgii.com>
89e9f3a8 6528
b57062ca 6529 * expr.c (expand_assignment): Correct typo exposed by -Wall.
8bd6ecc2
RL
6530 offset should have been a truth value, not an assignment.
6531
614bb5d4
JL
6532Thu Feb 12 15:26:50 1998 Jeffrey A Law (law@cygnus.com)
6533
6534 * cse.c (delete_dead_from_cse): If a libcall produces a constant
6535 result and that result can be substituted into SET_SRC of the
6536 insn with the REG_RETVAL note, then perform the substitution
6537 and delete the libcall.
6538
00bb4b62
GK
6539Thu Feb 12 14:04:09 1998 Gavin Koch <gavin@cygnus.com>
6540
b57062ca 6541 * mips.md (trucndihi2,truncdiqi2): Change these to support
00bb4b62
GK
6542 mips16.
6543
3871c609
GK
6544Thu Feb 12 11:34:55 1998 Gavin Koch <gavin@cygnus.com>
6545
6546 * mips/mips.c (movdi_operand): Direct referances to symbols
6547 that arn't mips16 consts in mips16 mode arn't valid operands.
6548
6549 * mips/mips.c (mips_move_2words): Add gprel handling.
6550
2e72fa6a
GK
6551Thu Feb 12 11:18:37 1998 Gavin Koch <gavin@cygnus.com>
6552
b57062ca 6553 * mips.md (extendsidi2): Allow extension to/from a non-mips16
2e72fa6a
GK
6554 register.
6555
a4910340
ML
6556Thu Feb 12 00:04:16 1998 Marc Lehmann <pcg@goof.com>
6557
6558 * i386.c: Conditionally include <stdlib.h>, <string.h>, and
6559 <strings.h>.
6560
cc1e5b9a
KG
6561Wed Feb 11 11:43:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6562
6563 * Makefile.in (WARN_CFLAGS): New variable.
6564 (bootstrap, bootstrap2, bootstrap3, bootstrap4): Use it.
6565
53949fac
MM
65661998-02-11 Mark Mitchell <mmitchell@usa.net>
6567
6568 * config/i386/i386.c (reg_mentioned_in_mem): Don't abort when
6569 falling through default case in switch.
6570 (i386_aligned_p): Likewise.
6571
9504c31c
LI
6572Wed Feb 11 12:59:56 1998 Lee Iverson <leei@Canada.AI.SRI.COM>
6573
6574 * mips/mips.h (mips_abi_string): Correct typo in comment.
6575
7e4e0956
GK
6576Wed Feb 11 08:29:56 1998 Gavin Koch <gavin@cygnus.com>
6577
6578 * mips/mips.md (movdi): These PLUS's need to be Pmode.
6579
8fb3ae15
KG
6580Wed Feb 11 01:47:54 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6581
6582 * Makefile.in (dwarf2out.o, emit-rtl.o, jump.o, cse.o, unroll.o,
6583 reorg.o, regmove.o): Depend on insn-codes.h, it gets included
6584 indirectly via expr.h.
6585
a2d53b28
RH
6586Wed Feb 11 01:44:13 1998 Richard Henderson <rth@cygnus.com>
6587
6588 * stor-layout.c (layout_type): Do upper - lower in the native type,
6589 so as to properly handle negative indices.
6590
381127e8
RL
6591Wed Feb 11 01:35:55 1998 Robert Lipe <robertl@dgii.com>
6592
6593 * except.c (start_dynamic_cleanup): Remove unused variable 'dhc'.
6594 (expand_eh_region_start_tree): Remove unused variable 'note'.
6595 (exception_optimize): Remove unused variable 'regions'.
6596 (expand_builtin_eh_stub): Remove unused variable 'temp'.
6597 (copy_eh_entry): Deleted. Dead function.
6598
b57062ca 6599 * expr.c (move_block_to_reg) Bracket declaration of 'pat' and
381127e8
RL
6600 'last' with same #if HAVE_load_multiple as use of it.
6601 (move_block_from_reg): Likewise.
6602 (emit_move_insn_1): Remove unused variable 'insns'.
b57062ca
UD
6603 (store_constructor): Bracket declaration of startb, endb with
6604 #if TARGET_MEMFUNCTIONS. Remove unused variables 'set_word_size'
381127e8 6605 'target', and 'xtarget'.
b57062ca 6606 (expand_builtin_setjmp): Remove unused variables 'op0',
381127e8 6607 'next_arg_reg', 'old_inhibit_defer_pop'.
b57062ca 6608 (expand_builtin): Remove unused variable 'offset'.
381127e8
RL
6609 (do_store_flag): Remove unused variables 'pattern', 'jump_pat'.
6610 (emit_queue): Add parens for assignment used as conditional.
6611 (expand_expr): case TARGET_EXPR: Remove unused variable 'temp'.
6612
00c79232
ML
6613Wed Feb 11 01:30:49 1998 Marc Lehmann <pcg@goof.com>
6614
b57062ca 6615 * i386.c: Added include for recog.h.
00c79232
ML
6616 (override_options): Removed unused variable p. Initialized regno to
6617 avoid warning.
6618 (order_regs_for_local_alloc): Initialized regno to avoid warning.
6619 (legitimize_address): Likewise for 'other'.
6620 (i386_aligned_reg_p): Added default case with abort ().
6621 (print_operand): Likewise.
6622 (reg_mentioned_in_mem): Likewise.
6623 (ix86_expand_binary_operator): Removed unused variables i & insn.
6624 (ix86_expand_unary_operator): Removed unused variable insn.
6625 (output_fp_cc0_set): Removed unused variable unordered_label.
6626
f64cecad
JC
6627Wed Feb 11 01:23:03 1998 John F. Carr <jfc@mit.edu>
6628
6629 * i386.c, i386.h, i386.md: Change gen_rtx (X, ...) to gen_rtx_X (...).
6630 Use GEN_INT instead of gen_rtx (CONST_INT). Make printf arguments
6631 and format string match.
6632
0200b5ed
JL
6633Wed Feb 11 01:17:39 1998 Jeffrey A Law (law@cygnus.com)
6634
6635 * flow.c (life_analysis): Do not conside the stack pointer live at
6636 the end of a function if the fucntio ncalls alloca.
6637 (mark_used_regs): Similarly.
6638
74ccf2c2
JC
66391998-02-10 John F Carr <jfc@mit.edu>
6640
6641 * config/sparc/sparc.md (movdi_v8plus): Output stx on alternative
6642 1, fzero on alternative 8.
6643
60e2d0ca
RK
6644Tue Feb 10 09:02:19 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6645
6646 * rs6000.c (setup_incoming_varargs): Always set rs6000_sysv_varargs_p.
6647
2fd0af53
R
6648Tue Feb 10 03:35:43 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6649
6650 * reload.c (find_reloads_toplev): Handle arbitrary non-paradoxical
6651 SUBREGs of CONST_INTs.
6652
a96c3544
JC
6653Mon Feb 9 17:52:36 1998 John Carr <jfc@mit.edu>
6654
6655 * mips.c (print_operand, function_prologue): Make printf format
6656 match argument type.
6657
2514cbc9
KG
6658Mon Feb 9 02:37:25 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6659
6660 * alpha.c (alpha_return_addr): Remove unused variable `first'.
6661 (alpha_ra_ever_killed): Remove unused variables `ra' and `i'.
6662 (output_epilog): Remove unused variable `frame_size_from_reg_save'.
6663
72b0c616
RK
6664Sun Feb 8 14:56:03 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6665
6666 * loop.c (strength_reduce): When placing increment for auto-inc
6667 case, do comparison in loop order.
b57062ca 6668
2e0dd623
JC
6669Sun Feb 8 13:21:38 1998 John Carr <jfc@mit.edu>
6670
6671 * bitmap.c (bitmap_debug_file): HOST_PTR_PRINTF converts a pointer,
6672 not a HOST_WIDE_INT.
6673
6674 * calls.c (expand_call): Change test of expand_inline_function
6675 return value to stop compiler warning.
6676
6677 * genattrtab.c (RTL_HASH): Cast pointer to long, not HOST_WIDE_INT.
6678
7bf825d2
JW
6679Sun Feb 8 12:04:24 1998 Jim Wilson (wilson@cygnus.com)
6680 Jeff Law (law@cygnus.com)
6681
6682 * regmove.c: Fix various minor formatting problems.
6683 (optimize_reg_copy_1): Stop search at CALL_INSNs if flag_exceptions
6684 is true. Make end of basic block tests consistent through regmove.c.
6685 (optimize_reg_copy_2, optimize_reg_copy_3): Likewise.
6686 (fixup_match_2, fixup_match_1, regmove_optimize): Likewise.
6687
7d4679ea
KG
6688Sun Feb 8 01:49:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6689
6690 * gansidecl.h: Check for a conflicting macro definition before
6691 attempting to prototype bcopy, bcmp or bzero.
6692
b515ab3d
JL
6693Sun Feb 8 00:09:59 1998 Jeffrey A Law (law@cygnus.com)
6694
060fbabf
JL
6695 * expr.c (clear_pending_stack_adjust): Handle case where a function
6696 calls alloca, but the user has specified -fomit-fframe-pointer.
6697
b515ab3d
JL
6698 * function.c (assign_parms): Fix typo in last change.
6699
ccd043a9
RL
6700Sat Feb 7 23:54:29 1998 Robert Lipe <robertl@dgii.com>
6701
ededb2fc
RL
6702 * gcc.c: Include <strings.h>/<string.h>, <stdlib.h>, <unistd.h>,
6703 <fcntl.h>.
6704 (free_path_suffix): Remove unreferenced static function.
6705 (process_command): Remove unused variable temp.
6706 (default_arg): Remove unused variable i.
6707 (do_spec_1): Add parens for assignment used as truth value.
6708 (main): Likewise.
6709 (validate_all_switches): Likewise.
6710 (main): Remove unused variables i, first_time>
6711
ccd043a9
RL
6712 * c-common.c: Include <stdlib.h> and <string.h>/<strings.h>.
6713
6714 * calls.c (expand_call): Remove unused variables funtree,
6715 n_regs, and tmpmode.
6716
6717 * dbxout.c, except.c: Include <string.h>/<strings.h>.
6718
6719 * explow.c: (plus_constant_for_output_wide) Removed unused
6720 variable all_constant.
6721
6722 * c-decl.c, genattr.c, genattrtab.c, getconfig.c, genemit.c
6723 genextract.c, genflags.c, genopinit.c genoutput.c, genpeep.c,
6724 genrecog.c, global.c, integrate.c , stupid.c : Include
6725 <stdlib.h>.
6726
6727 * genextract.c: (walk_rtx) Remove unused variable link.
6728
6729 * genrecog.c: (concat) Remove unreferenced static function.
6730
6731 * prefix.c: Include <string.h>/<strings.h>, <stdlib.h>
6732
b57062ca
UD
6733 * stmt.c: Include <stdlib.h>.
6734 (expand_asm_operands): Remove unused variable val1.
ccd043a9
RL
6735 (expand_return): Remove unused variable block.
6736 (pushcase): Remove unused variables l and n.
6737 (pushcaserange): Likewise.
6738
6739 * unroll.c (unroll_loop): Remove unused variable temp.
6740
6553db01
GM
6741Sat Feb 7 23:46:09 1998 Greg McGary <gkm@gnu.org>
6742
6743 * c-decl.c (pushdecl): Set DECL_ORIGINAL_TYPE once only.
6744
8479e1db
KG
6745Sat Feb 7 15:11:28 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6746
6747 * aclocal.m4 (GCC_FUNC_PRINTF_PTR): New macro to test the printf
6748 functions for whether they support the %p format specifier.
6749 * acconfig.h (HOST_PTR_PRINTF): Insert stub for autoconf.
6750 * configure.in (GCC_FUNC_PRINTF_PTR): Use it.
6751 * configure, config.in: Rebuild.
6752
bf9c83fe
JW
6753Fri Feb 6 14:20:16 1998 Jim Wilson <wilson@cygnus.com>
6754
6755 * function.c (assign_parms): New variable named_arg, with value
6756 depending on STRICT_ARGUMENT_NAMING. Use instead of ! last_named.
6757
09e4daf5
GK
6758Fri Feb 6 14:34:28 1998 Gavin Koch <gavin@cygnus.com>
6759
b57062ca 6760 * mips/t-r3900: New - same as t-ecoff but eliminate
09e4daf5
GK
6761 multilibs: mips1 and mips3.
6762 * configure.in (tx39*): Use new mips/t-r3900.
6763 * configure: Rebuild.
6764 * mips/r3900.h (MULTILIB_DEFAULTS): Eliminate mips1.
6765
b57d9225
JM
67661998-02-06 Jason Merrill <jason@yorick.cygnus.com>
6767
6768 * dwarf2out.c: Add old_args_size.
6769 (dwarf2out_args_size): Use it.
6770 (dwarf2out_begin_prologue): Initialize it.
6771 (dwarf2out_stack_adjust): If !asynchronous_exceptions, save up
6772 pushed args until we see a call.
6773 * final.c (final_scan_insn): Hand CALL_INSNs off to the dwarf2 code
6774 before outputting them.
6775
67761998-02-06 Kriang Lerdsuwanakij <lerdsuwa@scf.usc.edu>
6777
6778 * cplus-dem.c (demangle_template_template_parm): New function.
6779 (demangle_template): Handle template template parameters.
6780
259620a8
MM
67811998-02-02 Mark Mitchell <mmitchell@usa.net>
6782
6783 * calls.c (expand_call): Don't confuse member functions named
6784 realloc, setjmp, and so forth with the standard library
6785 functions of the same names.
6786
78418280
JL
6787Thu Feb 5 21:59:49 1998 Jeffrey A Law (law@cygnus.com)
6788
6789 * stmt.c (expand_asm_operands): Correctly identify asm statements
94e5565f 6790 no output operands.
78418280 6791
6d819282 6792Thu Feb 5 21:56:06 1998 Mumit Khan <khan@xraylith.wisc.edu>
b57062ca 6793
6d819282
MK
6794 * c-common.c (decl_attributes): Flag unrecognized attribute
6795 functions as warnings instead of as errors.
6796
aec98e42
ML
67971998-02-05 Marc Lehmann <pcg@goof.com>
6798
6799 * integrate.c (INTEGRATE_THRESHOLD): Inline only small functions
6800 when -Os is specified.
6801 * toplev.c (main): Don't disable flag_inline_functions anymore when
6802 -Os is in effect.
6803
1230327b
R
6804Fri Feb 6 00:27:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6805
6806 * regmove.c: Update.
6807 * flags.h (flag_regmove): Declare.
6808 * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Don't declare.
6809 * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2):
6810 Moved into regmove; changed caller.
6811 * toplev.c (rest_of_compilation): Call regmove_optimize also for
6812 expensive_optimizations.
6813
1aca1e76
JL
6814Thu Feb 5 13:38:42 PST 1998 Jeff Law (law@cygnus.com)
6815
6816 * version.c: Bump for snapshot.
6817
2993ce4c
R
6818Thu Feb 5 01:45:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6819 Undo this change (the problem was actually in reload):
6820 Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6821
6822 * sh.md (movqi_i+1): New peephole.
6823
0340ed6c
JL
6824Tue Feb 3 01:11:12 1998 Jeffrey A Law (law@cygnus.com)
6825
e535528b
JL
6826 * jump.c (jump_optimize): Lose calls to modified_in_p they are
6827 not needed anymore due to changes elsewhere in jump.c.
6828
0340ed6c
JL
6829 * jump.c (jump_optimize): Fix first arg to modified_in_p in
6830 previous change.
6831
6fd1c67b
RH
6832Mon Feb 2 19:18:14 1998 Richard Henderson <rth@cygnus.com>
6833
6834 * expr.c (expand_builtin_setjmp): Accept two new arguments for
6835 the labels to branch to on first and subsequent executions. Don't
6836 play with __dummy. Rename `setjmp' insn to `builtin_setjmp_setup',
6837 and provide it with the jmp_buf. Use only one of
6838 `builtin_setjmp_receiver' or `nonlocal_goto_receiver',
6839 and provide the former with the target label.
6840 (expand_builtin) [BUILTIN_SETJMP]: Generate a label for use by setjmp.
6841 (expand_builtin) [BUILTIN_LONGJMP]: Split out to ...
6842 (expand_builtin_longjmp): ... here. Recognize a `builtin_longjmp'
6843 insn to replace all of the normal nonlocal_goto code. Don't play
6844 with __dummy. Correct arguments to nonlocal_goto.
6845 * expr.h (expand_builtin_setjmp): Update prototype.
6846 * except.c (start_dynamic_handler): When using builtin_setjmp,
6847 generate more accurate flow information.
6848
6849 * alpha.md (nonlocal_goto_receiver_osf): Delete.
6850 (nonlocal_goto_receiver_vms): Rename to nonlocal_goto_receiver.
6851 (builtin_longjmp, builtin_setjmp_receiver): New.
6852 * sparc.md (update_return): Disambiguate unspec number.
6853 (nonlocal_goto): Rearrange arguments to match caller in except.c.
6854 (builtin_setjmp_setup): Rename from setjmp. Match and ignore the
6855 jmp_buf operand.
6856 * mips.md (nonlocal_goto_receiver, builtin_setjmp_receiver): Remove.
6857 (builtin_setjmp_setup*, builtin_longjmp): New.
6858
95936d18
JC
6859Mon Feb 2 16:43:10 1998 John Carr <jfc@mit.edu>
6860
6861 * mips.md: Change gen_rtx (CONST_INT) to GEN_INT.
6862
c120c689
JW
6863Mon Feb 2 13:06:47 1998 Jim Wilson <wilson@cygnus.com>
6864
6865 * vmsconfig.com: Remove bytecode references.
6866
1a56b81f
AS
68671998-01-30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6868
91193900
AS
6869 * dwarf2out.c (dwarf2out_frame_init): Undo last change, so that
6870 -fno-sjlj-exceptions works for a target that defines
6871 DWARF2_UNWIND_INFO as zero.
6872
1a56b81f
AS
6873 * regmove.c (fixup_match_1): Undo last change which removed some
6874 "useless" code, and add a comment explaining this.
6875
e4b3de45
GK
6876Mon Feb 2 10:47:14 1998 Gavin Koch (gavin@cygnus.com)
6877
6878 * mips.c (mips_expand_prologue): Change uses of TARGET_64BIT
6879 to TARGET_LONG64.
6880
2aabb736
KK
6881Mon Feb 2 10:38:41 1998 Klaus Kaempf <kkaempf@progis.de>
6882
6883 * makefile.vms: Remove bytecode references.
6884 Create genrtl files.
6885
7457661d
MH
6886Mon Feb 2 02:08:04 1998 Michael P. Hayes <michaelh@ongaonga.chch.cri.nz>
6887
6888 * jump.c (jump_optimize): Allow conditional loading of floating point
6889 constants and constants from memory. Reinstalled modified_in_p tests.
6890
460f50dc
R
6891Mon Feb 2 01:38:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6892
6893 * loop.c (get_condition): Handle sign-extended constants.
6894
7a6df7f9
HPN
6895Mon Feb 2 01:22:46 1998 Hans-Peter Nilsson <hp@axis.se>
6896
db771a3c
HPN
6897 * expr.c (emit_push_insn): Add code to use movstrti if present.
6898
7a6df7f9
HPN
6899 * expr.c (emit_push_insn): Use same max-move-amount for movstrhi
6900 and movstrqi as in emit_block_move ().
6901
ceb6edf2
TM
6902Mon Feb 2 00:09:52 1998 Toon Moene <toon@moene.indiv.nluug.nl>
6903
6904 * config/m68k/x-next: Remove /NextDeveloper/Headers from
6905 the directories to fixinclude - /usr/include is a link
6906 to it and hence its contents are fixed by default.
6907
9cddeb31
FS
6908Sun Feb 1 14:15:33 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
6909
6910 * rs6000/linux.h: define JUMP_TABLES_IN_TEXT_SECTION
6911
d2f05a0a
KK
6912Sun Feb 1 13:01:15 1998 Klaus Kaempf <kkaempf@progis.de>
6913
6914 * cccp.c (main): Predefine __VMS_VER on VMS.
6915
f8dac6eb
R
6916Sun Feb 1 12:39:53 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6917
6918 * expr.c (get_inner_reference): Use sbitsizetype for type sizes.
6919 * fold-const.c (size_int): Replace with
6920 (size_int_wide).
6921 (make_bit_field_ref): Use bitsize_int for bit position.
6922 * stor-layout.c (sizetype): Delete.
6923 (sizetype_tab, sbitsizetype, ubitsizetype): Declare.
6924 (layout_record, layout_union, layout_type):
6925 Use bitsize_int for bit size.
6926 (set_sizetype): New function.
6927 (make_signed_type, make_unsigned_type): Use it.
6928 * c-decl.c (init_decl_processing): Likewise.
6929 * tree.h (size_int): Don't delcare, #define.
6930 (size_int_wide, sizetype_tab, sbitsize, ubitsize): Declare.
6931 (set_sizetype): Declare.
6932 (bitsize_int, size_int_2, BITS_PER_UNIT_LOG, sizetype, bitsizetype):
6933 Define.
6934 * c-typeck.c (c_sizeof, c_sizeof_nowarn, c_size_in_bytes):
6935 Convert result to sizetype.
6936 (really_start_incremental_init, push_init_level):
6937 Set type of constructor_bit_index to sbitsizetype.
6938 (push_init_level): Use unsigned arithmetic to determine padding.
6939 (output_init_element): Likewise.
6940
b577a8ff
JL
6941Sun Feb 1 03:32:07 1998 Jeffrey A Law (law@cygnus.com)
6942
6943 * combine.c (simplify_shift_const): Fix typo in last change.
6944
6e0ef100
JC
6945Sun Feb 1 02:50:46 1998 John Carr <jfc@mit.edu>
6946
6947 * combine.c (simplify_shift_const): (lshiftrt (truncate (lshiftrt)))
6948 is (truncate (lshiftrt)).
6949
4208b40f
RH
6950Sun Feb 1 01:06:53 1998 Richard Henderson <rth@cygnus.com>
6951
6952 * alpha.c (alpha_expand_unaligned_load): Use expand_binop properly.
6953 Make sure result winds up in TGT.
6954 (alpha_expand_unaligned_store): Use expand_binop properly. Allow
6955 src to be other than DImode.
6956 (alpha_expand_unaligned_load_words): Tidy. Take an offset argument.
6957 (alpha_expand_unaligned_store_words): Likewise.
6958 (alpha_expand_block_move): Use REGNO_POINTER_ALIGN. Restructure so
6959 that source and destination are separately optimized for alignment.
6960 (alpha_expand_block_clear): Use REGNO_POINTER_ALIGN.
6961
82301b88
JL
6962Sun Feb 1 01:55:09 1998 Jeffrey A Law (law@cygnus.com)
6963
6964 * mips.md (adddi3_internal_2): Be consistent with adddi3 expander
6965 with handling of -32768.
6966
a81fb89e
KG
6967Sun Feb 1 01:48:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6968
6969 * aclocal.m4 (GCC_NEED_DECLARATION): Modify macro to accept a
6970 shell variable argument instead of only hard coded functions.
6971 (GCC_NEED_DECLARATIONS): New macro to accept multiple functions.
6972
6973 * configure.in: Collapse multiple calls to AC_CHECK_FUNCS into one
6974 call. Collapse multiple calls to GCC_NEED_DECLARATION into one
6975 call to GCC_NEED_DECLARATIONS (new macro.) Check if we need
6976 declarations for bcopy, bcmp and bzero.
6977
6978 * acconfig.h: Add stubs for bcopy, bcmp and bzero declarations.
6979
6980 * gansidecl.h: If we have bcopy but don't declare it, then do so.
6981 Likewise for bcmp and bzero. Only define macros for bcopy, bcmp,
6982 bzero, index and rindex if they aren't already present.
6983
eed90b2c
JL
6984Sat Jan 31 11:26:58 1998 Jeffrey A Law (law@cygnus.com)
6985
b57062ca 6986 * toplev.c (close_dump_file): Wrap function prototype for
eed90b2c
JL
6987 argument "func" in PROTO.
6988 (dump_rtl): Likewise.
6989
bfd6bc60
JC
6990Fri Jan 30 22:30:39 1998 John Carr <jfc@mit.edu>
6991
6992 * sparc.c (sparc_override_options): Make v8plus and ultrasparc set
6993 MASK_V8PLUS.
6994 (output_function_epilogue): Omit epilogue if nothing drops through.
6995 (output_move_double): Supress int ldd usage on ultrasparc and v9.
6996 (registers_ok_for_ldd_peep): Likewise.
6997 (print_operand): Supress b,a on ultrasparc. Let Y accept a constant.
6998 (ultrasparc_adjust_cost): New function.
6999 (sparc_issue_rate): New function.
7000 * sparc.h (MASK_VIS, TARGET_VIS): New
7001 (MASK_V8PLUS, TARGET_V8PLUS): New.
7002 (TARGET_HARD_MUL32, TARGET_HARD_MUL): New.
7003 (TARGET_SWITCHES): Add vis and v8plus.
7004 (REG_CLASS_FROM_LETTER): Accept d and b for VIS.
7005 (REGISTER_MOVE_COST): FP<->INT move cost 12 for ultrasparc.
7006 (RTX_COSTS): Use TARGET_HARD_MUL
7007 (ADJUST_COST): Call ultrasparc_adjust_cost.
7008 (ISSUE_RATE): New.
7009 * sparc.md (attr type): Add sload, fpmove, fpcmove. Adjust users
7010 of load & fp appropritely.
7011 (supersparc function units): Adjust for Haifa.
7012 (ultrasparc function units): Likewise.
7013 (get_pc_via_rdpc): All v9, not just arch64.
7014 (movdi_v8plus, movdi_v8plus+1): New.
7015 (adddi3_sp32+1): New.
7016 (subdi3_sp32+1): New.
7017 (movsi_insn, movsf_const_insn, movdf_const_insn): Know VIS.
7018 (addsi3, subsi3, anddi3_sp32, andsi3, and_not_di_sp32): Likewise.
7019 (and_not_si, iordi3_sp32, iorsi3, or_not_di_sp32, or_not_si): Likewise.
7020 (xorsi3_sp32, xorsi3, xor_not_di_sp32, xor_not_si): Likewise.
7021 (one_cmpldi2_sp32, one_cmplsi2): Likewise.
7022 (ldd peepholes): Suppress for v9.
7023 (return_adddi): Kill redundant test. Arg1 may be arith_operand.
7024 (return_subsi): Revmove.
7025
4b526a9a
JC
7026Fri Jan 30 18:30:03 1998 John F Carr <jfc@mit.edu>
7027
7028 * mips.c (save_restore_insns): Set RTX_UNCHANGING_P in register
7029 save/restore MEM rtl.
7030
64a438d6
JL
7031Fri Jan 30 09:08:16 1998 Jeffrey A Law (law@cygnus.com)
7032
7033 * configure.in: Check for declaration of abort.
9c893359 7034 * acconfig.h: Corresponding changes.
64a438d6
JL
7035 * toplev.c: Use NEED_DECLARATION_ABORT to determine if abort should
7036 be declared.
7037
f266c82f
JL
7038Thu Jan 29 20:26:12 1998 Jeffrey A Law (law@cygnus.com)
7039
7040 * genattrtab.c (optimize): Define in case PRESERVE_DEATH_INFO_REGNO_P
7041 uses it.
7042
31fa4410
JL
7043Thu Jan 29 09:27:56 PST 1998 Jeff Law (law@cygnus.com)
7044
7045 * version.c: Bump for snapshot.
7046
0ee31ab1
JL
7047Thu Jan 29 10:12:27 1998 Jeffrey A Law (law@cygnus.com)
7048
7049 * configure.in: Check for atoq and atoll.
7050 * rtl.c (read_rtx): Use HAVE_ATOLL and HAVE_ATOQ to select the
7051 proper routine for converting ascii into long long values.
7052
eeeb91c5
KK
7053Thu Jan 29 01:28:14 1998 Klaus Kaempf <kkaempf@progis.de>
7054
9d21ee77
KK
7055 * cccp.c (SYS$SEARCH, SYS$PARSE): Write as upper-case.
7056
7057 * vmsconfig.com: Remove bytecode references.
7058
7059 * alpha/vms.h (PREFIX): Define.
7060
7061 * alpha/vms.h (ASM_OUTPUT_ALIGNED_COMMON): Remove.
7062
eeeb91c5
KK
7063 * am-alpha.h: Don't include alloca for OPEN_VMS.
7064
7065 * alpha/xm-vms.h (HAVE_CPP_STRINGIFY): Define.
7066
7067 * alpha/xm-vms.h (INCLUDE_DEFAULTS): Define.
7068 (GCC_INCLUDE_DIR): Define
7069
7070 * make-cc.com, make-cccp.com, make-cc1.com: Removed.
7071 * makefile.vms: New file.
7072
7073 * alpha/vms.h (CPP_PREDEFINES): Remove -Dalpha.
7074
7075 * alpha.c (output_prolog): Output '.name' directive
7076 for minimal traceback information.
7077
7078 * alpha.c (output_prolog): Don't prepend entry point symbols
7079 with '$' on OPEN_VMS.
7080
76d31c63
JL
7081Thu Jan 29 00:25:35 1998 David S. Miller <davem@tanya.rutgers.edu>
7082 Jeffrey A Law (law@cygnus.com)
7083
7084 * rtl.c (read_rtx): Use atol/atoq based upon disposition of
7085 HOST_WIDE_INT.
7086
7087 * genattrtab.c (write_test_expr): Use HOST_WIDE_INT_PRINT_DEC
7088 as needed.
7089 * genemit.c (gen_exp): Likewise.
7090 * genpeep.c (match_rtx): Likewise.
7091 * genrecog.c (write_tree_1): Likewise.
7092
7093 * c-lex.c (yyprint): Use proper format string based upon
7094 disposition of HOST_BITS_PER_WIDE_INT.
7095 (yylex): Put casts in right place for args to build_int_2.
7096
7097Thu Jan 29 00:24:29 1998 Jeffrey A Law (law@cygnus.com)
7098
7099 * combine.c: Fix typos in Jan27 changes.
7100
1b7555bd
OR
7101Thu Jan 29 00:07:49 1998 Ollivier Robert <roberto@keltia.freenix.fr>
7102
7103 * i386/freebsd.h (LIB_SPEC): Correctly handle -shared, -p and friends.
7104 (LINK_SPEC): Likewise.
7105 (STARTFILE_SPEC): Likewise.
7106
21ca87b8
MS
71071998-01-28 Mike Stump <mrs@wrs.com>
7108
7109 * rtlanal.c (dead_or_set_regno_p): Ignore REG_DEAD notes after
7110 reload completes.
7111 * genattrtab.c (reload_completed): Define.
7112
7113 * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Remove obsolete
7114 comments.
7115
d2c92f5a
R
7116Wed Jan 28 20:11:06 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7117
7118 * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
7119 SUBREG_REG if the word count is unchanged, also in the input reload
7120 case. Disable non-applicable sanity checks.
7121
90ad3ab7
JL
7122Wed Jan 28 20:08:26 1998 Jeffrey A Law (law@cygnus.com)
7123
7124 * config/t-svr4 (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
7125
7fad712c
ILT
7126Wed Jan 28 20:04:43 1998 Ian Lance Taylor <ian@cygnus.com>
7127
7128 * i386/t-cygwin32 (LIMITS_H_TEST, LIBGCC2_INCLUDES): Define.
7129
2290e0ec
PB
7130Wed Jan 28 11:45:27 1998 Per Bothner <bothner@cygnus.com>
7131
1aea01ea
PB
7132 * dbxout.c (dbxout_type): For a RECORD_TYPE, check that TYPE_BINFO
7133 is a TREE_VEC before trying to use it for baseclasses.
7134 (Chill uses the same field for a different purpose.)
7135
2290e0ec
PB
7136 * toplev.c (strip_off_ending): Generalize to endings up to 5 chars.
7137
16980900
LT
7138Tue Jan 27 23:15:55 1998 Lassi A. Tuura <lat@iki.fi>
7139
4c46bad0 7140 * config.sub: More accurate determination of HP processor types.
16980900 7141
5e9defae
KG
7142Tue Jan 27 23:11:11 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7143
7144 * c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>. Add
7145 prototype for `handle_sysv_pragma', and make it static. Add
7146 parentheses around assignment used as truth value.
7147
7148 * combine.c (combine_instructions): Protect variable `prev' with
7149 macro HAVE_cc0.
7150 (can_combine_p): Protect variable `link' with AUTO_INC_DEC.
7151 (extract_left_shift): Add parentheses around operand of &.
7152 (merge_outer_ops): Avoid an empty body in an else-statement.
7153 (gen_rtx_combine): Remove unused variable `i'.
b57062ca 7154
5e9defae
KG
7155 * sparc/gmon-sol2.c: Include <fcntl.h>. Make return type of
7156 function monstartup `void'. Likewise for internal_mcount. Add
7157 `static void' prototype for moncontrol. Reconcile sprintf format
b57062ca 7158 vs. args.
5e9defae
KG
7159
7160 * sparc/sparc.c: Include <stdlib.h> and <string.h>/<strings.h>.
7161 Make return type of function_arg_slotno explicitly `int'.
7162 (reg_unused_after): Add parentheses around assignment used as
7163 truth value.
7164 (save_regs): Add explicit braces to avoid ambiguous `else'.
7165 (function_arg_slotno): Add parentheses around && within ||.
7166 (function_arg_pass_by_reference): Likewise.
7167 (sparc_flat_output_function_prologue): Reconcile fprintf format
7168 vs. args.
7169
7170 * svr4.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around
7171 assignment used as truth value.
7172
7173 * cplus-dem.c: Include <stdlib.h>.
7174 (demangle_signature): Avoid an empty body in an else-statement.
7175 (do_type): Remove unused variable `lvl'.
b57062ca 7176
5e9defae
KG
7177 * cppexp.c: Don't have <stdlib.h> depend on MULTIBYTE_CHARS.
7178 Include <string.h>/<strings.h>.
7179 (cpp_lex): Remove unused variable `namelen'.
7180 (cpp_lex): Explicitly declare `num_chars' as an int.
7181
7182 * cpplib.c: Avoid duplicate inclusion of <stdlib.h>, include
7183 <unistd.h> instead. Explicitly declare is_system_include
7184 returning int.
b57062ca 7185 (make_assertion): Remove unused variable `kt'.
5e9defae
KG
7186 (cpp_expand_to_buffer): Hide variable `obuf'.
7187 (output_line_command): Remove unused variables, `line_end',
7188 `line_cmd_buf' and `len'.
7189 (macarg): Remove unused variable `arg_start'.
7190 (special_symbol): Remove unused variable `i'. Add parentheses
b57062ca 7191 around assignment used as truth value.
5e9defae 7192 (do_include): Remove unused variables `pcfname' and `retried',
b57062ca 7193 hide `pcf' and `pcfbuflimit'.
5e9defae
KG
7194 (do_line): Remove unused variable `i'.
7195 (finclude): Hide variable `missing_newline'.
7196 (cpp_handle_options): Remove unused variable `j'.
7197 (read_token_list): Remove unused variable `eofp'.
7198 (cpp_error_with_line): Remove unused variable `i'.
7199 (cpp_warning_with_line): Likewise.
7200 (cpp_pedwarn_with_line): Explicitly declare `column' as int.
7201 (cpp_error_from_errno): Remove unused variable `i'.
7202
7203 * cse.c (invalidate): Add parentheses around assignment used as
7204 truth value.
7205 (find_best_addr): Move declaration of variable `our_cost' inside
7206 the conditional macro where its used.
7207 (fold_rtx): Avoid an empty body in an if-statement.
7208 (cse_insn): Wrap variables `this_insn_cc0_mode' and
7209 `this_insn_cc0' in macro HAVE_cc0.
b57062ca 7210
5e9defae
KG
7211 * dwarf2out.c: Include <stdlib.h> and <string.h>/<string.h>.
7212 (ASM_OUTPUT_DWARF_DATA8): Reconcile format vs. args in fprintf's.
7213 (output_uleb128): Likewise.
7214 (output_sleb128): Likewise.
7215 (output_cfi): Likewise.
7216 (output_call_frame_info): Remove unused variables `j', `fde_size'
7217 and `fde_pad'.
7218 (comp_unit_has_inlines): Hide declaration as per rest of file.
7219 (size_of_line_prolog): Correct typo in prototype.
7220 (add_arange): Likewise.
7221 (output_aranges): Likewise.
7222 (add_name_and_src_coords_attributes): Likewise.
7223 (gen_array_type_die): Likewise.
7224 (gen_inlined_subroutine_die): Likewise.
7225 (equate_decl_number_to_die): Remove unused variable `i'.
7226 (print_die): Reconcile format vs. args in fprintf's.
7227 (print_dwarf_line_table): Likewise.
7228 (output_die): Likewise.
7229 (output_line_info): Likewise.
7230 (add_subscript_info): Avoid an empty body in an else-statement.
7231 (gen_subprogram_die): Remove unused variable `fp_loc'.
7232
7233 * dwarfout.c: Explicitly declare `next_pubname_number' as int.
7234 Protect `ordering_attribute' prototype with USE_ORDERING_ATTRIBUTE
7235 macro. Protect `src_coords_attribute' prototype with
7236 DWARF_DECL_COORDINATES macro. Hide `output_entry_point_die'
7237 prototype as in the rest of the file. Likewise for
7238 `output_pointer_type_die' and `output_reference_type_die'. Remove
7239 prototype for `type_of_for_scope'.
7240 (output_unsigned_leb128): Reconcile format vs. args in fprintf.
7241 (type_attribute): Add explicit braces to avoid ambiguous `else'.
b57062ca 7242
5e9defae
KG
7243 * final.c: Include <stdlib.h> and <string.h>/<strings.h>.
7244 (shorten_branches): Protect declaration of tmp_length with
7245 SHORTEN_WITH_ADJUST_INSN_LENGTH and ADJUST_INSN_LENGTH macros.
7246 (profile_function): Protect declaration of `sval' and `cxt'
7247 variables with appropriate macros.
7248 (final_scan_insn): Likewise for `note' variable. Add explicit
7249 braces to avoid empty body in an if-statement.
7250 (output_asm_insn): Move variable `i' inside macro conditional
7251 where it is used. Add parentheses around assignment used as truth
7252 value.
7253 (asm_fprintf) Likewise, likewise.
b57062ca 7254
5e9defae
KG
7255 * fix-header.c (main): Remove unused variable `done'. Protect
7256 declaration of `i' with FIXPROTO_IGNORE_LIST.
7257
7258 * pexecute.c: Include <unistd.h>. Prototype `my_strerror'.
7259
7260 * print-rtl.c (print_inline_rtx): Explicitly declare the parameter
7261 `ind'.
7262
7263 * profile.c: Include <string.h>/<strings.h>.
7264 (instrument_arcs): Remove unused variables `note', `inverted',
7265 `zero' and `neg_one'.
7266 (branch_prob): Avoid empty body in an if-statement.
7267
7268 * regclass.c: Include <stdlib.h>.
7269 (reg_alternate_class): Explicitly declare parameter `regno'.
7270
7271 * regmove.c (regmove_optimize): Remove unused variable `p'. Add
7272 parentheses around assignment used as truth value.
7273 (find_matches): Remove unused variables `output_operand' and
7274 `matching_operand'.
7275 (fixup_match_1): Remove statement with no effect: "if (0) ;".
7276
7277 * scan.c (sstring_append): Explicitly declare `count' as int.
7278 (scan_string): Explicitly declare parameter `init' as int.
7279
7280 * sched.c: Include <stdlib.h>.
7281 (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
7282 (rank_for_schedule): Add parentheses around assignment used as
7283 truth value.
7284 (schedule_block): Likewise.
7285 (regno_use_in): Likewise.
7286 (schedule_insns): Remove unused variable `i'.
7287
7288 * toplev.c: Include <stdlib.h> and <string.h>/<strings.h>.
7289 (v_message_with_decl): Remove unused variable `n'.
7290 (botch): Explicitly declare parameter `s' as char *.
7291 (main): Add parentheses around assignment used as truth value.
7292
7293 * tree.c (make_node): Protect the variable `kind' with the
7294 GATHER_STATISTICS macro.
7295 (real_value_from_int_cst): Move variable `e' inside conditional
7296 macro area where it is used.
7297 (tree_last): Add parentheses around assignment used as truth value.
7298 (build1): Protect the variable `kind' with the GATHER_STATISTICS
7299 macro.
7300 (print_obstack_statistics): Reconcile format vs. args in fprintf.
7301 Protect variables `i', `total_nodes', and `total_bytes' with the
7302 GATHER_STATISTICS macro.
7303
4b6bb562
MS
7304Tue Jan 27 23:01:55 1998 Mike Stump (mrs@wrs.com)
7305
7306 * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Add
7307 some comments regarding use of dead_or_set_p.
7308
e95f0195
TV
7309Tue Jan 27 22:14:48 1998 Todd Vierling <tv@pobox.com>
7310
7311 * fixincludes: Tweak fix for struct exception in math.h
7312
c3499f00
GK
7313Tue Jan 27 17:21:09 1998 Gavin Koch (gavin@cygnus.com)
7314
7315 * mips/mips.c (mips_expand_prologue,mips_expand_epilogue):
b57062ca 7316 Change mode of registers used to add/sub from
c3499f00
GK
7317 hard_frame_pointer_rtx from word_mode to Pmode.
7318
01898d58
NC
7319Tue Jan 27 11:02:04 1998 Nick Clifton <nickc@cygnus.com>
7320
6db34dd4
NC
7321 * v850.h (ASM_OUTPUT_ALIGNED_BSS): Use
7322 asm_output_aligned_bss() instead of asm_output_bss().
7323
01898d58
NC
7324 * toplev.c (rest_of_compilation): Replace references to
7325 stack_reg_dump_file and dbr_sched_dump_file with references to
b57062ca 7326 rtl_dump_file.
01898d58 7327
7b6ffd11
KI
7328Tue Jan 27 10:22:13 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
7329
7330 * tlink.c (scan_linker_output): Call fclose() for opened files.
7331
60593797
RH
7332Tue Jan 27 05:05:26 1998 Richard Henderson <rth@cygnus.com>
7333
7334 * alpha.c (output_epilog [!VMS]): Don't tag global functions if
7335 compiling with -fpic -- we want to be able to override symbols
7336 properly.
7337 (alpha_expand_block_move): Fix thinko in last change.
7338
7339 * alpha.h (ASM_OUTPUT_MI_THUNK): New define.
7340 * config/alpha/win-nt.h (ASM_OUTPUT_MI_THUNK): New define.
7341 * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): New undef.
b57062ca 7342
5e4aab97
RH
7343Tue Jan 27 03:21:23 1998 Richard Henderson <rth@cygnus.com>
7344
7345 * alpha.md (abssf, absdf): Revert last change.
7346
69145bcc
JC
7347Tue Jan 27 00:26:50 1998 John Carr <jfc@mit.edu>
7348
7349 * dwarf2out.c (dwarf2out_frame_init): Test value of DWARF2_UNWIND_INFO.
7350 * mips/sni-svr4.h: Define DWARF2_UNWIND_INFO as 0.
7351
4926b75a
JL
7352Tue Jan 27 00:07:02 1998 Jeffrey A Law (law@cygnus.com)
7353
7354 * emit-rtl.c (gen_lowpart_common): Handle more case where converting
7355 a CONST_INT into SFmode.
7356
c6aded7c
AG
7357Tue Jan 20 16:01:03 1998 Anthony Green <green@cygnus.com>
7358
7359 * flags.h: New flag (optimize_size).
7360 * toplev.c (main): Parse -Os option and set optimize_space
7361 accordingly.
b57062ca 7362 * gcc.c (default_compilers), cp/lang-specs.h, f/lang-specs.h: Define
c6aded7c
AG
7363 __OPTIMIZE_SIZE__ when compiling with -Os.
7364 * config/dsp16xx/dsp16xx.h, config/i386/i386.h,
7365 config/i386/dgux.h, config/i960/i960.h, config/pdp11/pdp11.h,
7366 config/v850/v850.h (OPTIMIZATION_OPTIONS): New SIZE argument
7367 to macro.
7368 * config/i386/i386.c (optimization_options): Accept new SIZE argument.
7369
3698f44e
MH
7370Mon Jan 26 23:57:39 1998 Manfred Hollstein <manfred@s-direktnet.de>
7371
7372 * libgcc2.c (__clear_insn_cache): On sysV68 enable the memctl
7373 stuff only if MCT_TEXT is #define'd.
7374
ac8a456a
MO
7375Mon Jan 26 23:52:51 1998 Markus F.X.J. Oberhumer <k3040e4@c210.edvz.uni-linz.ac.at>
7376
7377 * configure.in (i*86-pc-msdosdjgpp): Treat like msdos & go32
7378 configurations.
7379
032713aa
NC
7380Fri Jan 23 09:39:36 1998 Nick Clifton <nickc@cygnus.com>
7381
7382 * toplev.c: Add -dM command line option to dump RTL after the
7383 machine dependent reorganisation pass, if there is one.
7384 Reorganise RTL dump code, so that only one file handle is
b57062ca 7385 needed.
032713aa 7386
ec2be682
BK
7387Mon Jan 26 12:09:42 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
7388
7389 * except.c (check_exception_handler_labels): Disable warning when
7390 flag_syntax_only.
7391
e232b7b3
JW
7392Mon Jan 26 18:17:32 1998 Jim Wilson <wilson@cygnus.com>
7393
7394 * sparc.c (pic_setup_code): Don't set LABEL_PRESERVE_P.
7395
2a851b5c
R
7396Mon Jan 26 18:11:30 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7397
7398 * c-decl.c (grokdeclarator): Get parameter tags from
7399 last_function_parm_tags.
7400 * dwarfout.c (output_formal_types): Set TREE_ASM_WRITTEN before
7401 traversing the parameter types.
7402 (output_type): No early exit for FUNCTION_TYPE / METHOD_TYPE context.
7403
808fbfac
JL
7404Mon Jan 26 01:44:12 1998 Jeffrey A Law (law@cygnus.com)
7405
7406 * h8300.c (print_operand): Handle CONST_DOUBLE for 'e', 'f', and
7407 the default case.
7408 (get_shift_alg): Fix typo.
7409
15389075
RH
7410Sun Jan 25 22:22:04 1998 Richard Henderson <rth@cygnus.com>
7411
7412 * alpha.c (alpha_expand_block_move): Copy ADDRESSOF to reg.
7413
83c8ddef
RH
7414Sun Jan 25 22:14:28 1998 Richard Henderson <rth@cygnus.com>
7415
7416 * toplev.c (get_run_time): Make sure each case gets its variables.
7417
db81d74a
RH
7418Sun Jan 25 22:10:21 1998 Richard Henderson <rth@cygnus.com>
7419
7420 * configure.in (build_xm_file): Add auto-config.h if host=build.
7421 (host_xm_file_list): Don't add $(srcdir) to auto-config.h.
7422 (build_xm_file_list): Likewise.
7423 * configure: Rebuild.
b57062ca 7424
f745c7a2
AB
7425Sun Jan 25 22:00:25 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
7426
7427 * recog.c (validate_replace_rtx_1): Only perform substitutions
7428 of arguments to commutative and comparison operators once.
7429
963f4057
KG
7430Sun Jan 25 12:30:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7431
91a51951
KG
7432 * sparc.c (output_cbranch): Add default case in
7433 enumeration switch.
b57062ca 7434
91a51951
KG
7435 * reorg.c (insn_sets_resource_p): Correct typo in prototype.
7436 (emit_delay_sequence): Eliminate unused parameter, all callers
7437 changed.
7438 (fill_simple_delay_slots): Likewise.
7439 (fill_slots_from_thread): Likewise.
7440 (fill_eager_delay_slots): Likewise.
7441 (mark_referenced_resources): Add default case in enumeration switch.
7442 (mark_set_resources): Likewise.
7443 (rare_destination): Likewise.
7444 (mostly_true_jump): Likewise.
7445 (find_dead_or_set_registers): Likewise.
7446 (redirect_with_delay_slots_safe_p): Remove unused variable `slots'.
7447 (update_reg_unused_notes): Remove unused variable `p'.
7448 (mark_target_live_regs): Remove unused variables `next' and
7449 `jump_count'.
7450 (fill_simple_delay_slots): Remove unused variable `j'.
7451 (fill_slots_from_thread): Add parentheses around assignment used
7452 as truth value.
7453 (dbr_schedule): Likewise.
7454
963f4057
KG
7455 * objc/Make-lang.in (objc.stage1): Depend on stage1-start.
7456 (objc.stage2, objc.stage3, objc.stage4): Likewise.
7457
e82ad93d
MT
7458Sun Jan 25 12:13:47 1998 Michael Tiemann <michael@tiemann.org>
7459
7460 * cse.c (simplify_ternary_operation): Don't try to simplify
7461 IF_THEN_ELSE expressions (created by combine) that don't use
7462 relational operators.
7463
b4b04bf9
JL
7464Fri Jan 23 22:48:24 1998 Jeffrey A Law (law@cygnus.com)
7465
ed1ecb19
JL
7466 * cse.c (simplify_ternary_operation): Handle more IF_THEN_ELSE
7467 simplifications.
7468
b4b04bf9
JL
7469 * crtstuff.c (init_dummy): Keep the epilogue in the init
7470 section for non-ELF systems.
7471
deeef0ac
R
7472Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7473
7474 * sh.md (movqi_i+1): New peephole.
7475
03566575
JW
7476Fri Jan 23 15:39:42 1998 Jim Wilson <wilson@cygnus.com>
7477
7478 * Makefile.in: Remove remaining bytecode stuff.
7479 * emit-rtl.c, expr.c: Likewise.
7480
eb96c120
NC
7481Fri Jan 23 12:41:10 1998 Nick Clifton (nickc@cygnus.com)
7482
7483 * toplev.c (lang_options): Add unknown-pragma options.
7484
f03204e9
PB
7485Thu Jan 22 23:43:38 1998 Per Bothner <bothner@cygnus.com>
7486
7487 * dwarfout.c (byte_size_attribute): Simplify and fix - don't need
7488 special (and incomplete) handling for Chill arrays.
7489
4e762a38
JC
7490Fri Jan 23 00:27:23 1998 John Carr <jfc@mit.edu>
7491
7492 * toplev.c (get_run_time): Call sysconf(_SC_CLK_TCK), when available,
7493 to get clock rate.
7494
c3499f00 7495Fri Jan 23 00:19:36 1998 Gavin Koch (gavin@cygnus.com)
319f217e
GK
7496
7497 * mips.md (muldi3_internal2): Reverse test for TARGET_MIPS16.
7498
19f673eb
SS
74991998-01-22 scott snyder <snyder@d0sgif.fnal.gov>
7500
7501 * mips.c (function_prologue): Use HARD_FRAME_POINTER_REGNUM in
7502 .frame directive instead of FRAME_POINTER_REGNUM.
7503
74cf1c6d
RK
7504Fri Jan 23 00:08:55 1998 Robin Kirkham <rjk@mlb.dmt.csiro.au>
7505
7506 * m68k.h (TARGET_SWITCHES): -mcpu32 now clears MASK_68881.
7507 (MACHINE_STATE_m68010_up): Replaced __mc68332__ with __mcpu32__.
7508 * m68k/m68k-none.h(CPP_FPU_SPEC): Update relative to TARGET_SWITCHES.
7509 (CPP_SPEC, ASM_SPEC, CC1_SPEC): Likewise.
7510 (CPP_SPEC): -m68332 defines both __mc68332 and __mcpu32__.
7511 * m68k/t-m68kbare (MULTILIB_OPTIONS): Add mcpu32.
7512 (MULTILIB_MATCHES): -m68332 now uses mcpu32 libraries, not m68000.
7513 (MULTILIB_EXCEPTIONS): Don't build 68881 libraries for m68000,
7514 mcpu32 or m5200.
7515 * longlong.h: Replace __mc68332__ with __mcpu32__.
7516
e1402e7d
JL
7517Thu Jan 22 19:55:40 PST 1998 Jeff Law (law@cygnus.com)
7518
7519 * version.c: Bump for snapshot.
7520
6d49a073
JW
7521Thu Jan 22 14:47:31 1998 Jim Wilson <wilson@cygnus.com>
7522
7523 * reload.c (push_reload): In WORD_REGISTER_OPERATIONS code, add test
7524 to require the SUBREG mode to be smaller than the SUBREG_REG mode.
7525 * reload1.c (eliminate_regs): Likewise.
7526
c485e6a0
JL
7527Thu Jan 22 14:49:14 1998 Jeffrey A Law (law@cygnus.com)
7528
7529 * regmove.c (find_matches): Initialize matches->earlyclobber too.
7530
84303d9a
RH
7531Thu Jan 22 01:40:52 1998 Richard Henderson <rth@cygnus.com>
7532
7533 * alpha.md (abssf2, absdf2): Disable in IEEE mode.
7534 (negsf2, negdf2): Use proper subtract in IEEE mode.
7535
b93a436e
JL
7536Tue Jan 20 09:29:09 1998 Jeffrey A Law (law@cygnus.com)
7537
27766f0e
JL
7538 * Makefile.in: Remove more bytecode stuff.
7539 * expr.c, stmt.c, config/msdos/top.sed: Likewise.
7540 * vax/xm-vms.h, winnt/config-nt.sed: Likewise.
7541 * f/install.texi, objc/Make-lang.in: Likewise.
7542
b93a436e
JL
7543 * Makefile.in: Remove all bytecode support.
7544 (OBJS): Make sure last entry is a real object file, not EXTRA_OBJS.
7545 * emit-rtl.c: Remove all bytecode support.
7546 * expr.c, expr.h function.c, integrate.c: Likewise.
7547 * output.h, regclass.c, rtl.h, stmt.c, toplev.c: Likewise.
7548 * tree.h, varasm.c: Likewise.
424e713c
JL
7549 * config/m68k/m68k.h: Likewise.
7550 * bi-*, bc-*, bytecode*: Delete bytecode related files.
c9804136 7551 * modemap.def: Likewise.
b93a436e 7552
7e07e3ba
GK
7553Tue Jan 20 09:02:31 1998 Gavin Koch (gavin@cygnus.com)
7554
7555 * mips/mips.md (divsi3,divdi3,modsi3,moddi3,udivsi3,udivdi3,
7556 umodsi3,umoddi3): Handle mips16 div/mod by a constant.
7557
685885b7
RH
7558Mon Jan 19 21:57:00 1998 Richard Henderson <rth@cygnus.com>
7559
7560 * i386.md (push): Prohibit symbolic constants if flag_pic.
7561 (movsi+1): Likewise for move to non-register.
7562
5830e3a0
JW
7563Mon Jan 19 11:15:38 1998 Jim Wilson <wilson@cygnus.com>
7564
11ea364a
JW
7565 * alpha.c (mode_mask_operand): Accept 0xffffffff on 32 bit host.
7566 (print_operand): Handle 0xffffffff on 32 bit host.
7567
a851212a
JW
7568 * configure.in (thread_file): Rename uses before main loop to
7569 target_thread_file. Initialize to empty in main loop. Set thread_file
7570 to target_thread_file after main loop if not set.
7571 * configure: Rebuild.
7572
5830e3a0
JW
7573 * genattrtab.c (find_and_mark_used_attributes): Handle CONST_INT.
7574 (add_values_to_cover): Revert last change (which had no ChangeLog
7575 entry).
7576 (simplify_with_current_value_aux): Handle CONST_INT.
7577
829e1aaf
AS
7578Mon Jan 19 10:14:55 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
7579
7580 * unprotoize.c: Define UNPROTOIZE first, to actually take effect.
7581
76844337
RH
7582Mon Jan 19 10:11:52 1998 Richard Henderson <rth@cygnus.com>
7583
7584 * configure.in: Add cpp stringify test.
7585 * acconfig.h (HAVE_CPP_STRINGIFY): New tag.
7586 * gengenrtl.c: Use it.
7587 * configure, config.in: Rebuild.
7588
a3f80023
AS
7589Mon Jan 19 09:43:15 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
7590
7591 * Makefile.in (genrtl.c genrtl.h): Add dummy command for GNU make.
7592
c5d0345e
RH
7593Mon Jan 19 09:38:18 1998 Richard Henderson <rth@cygnus.com>
7594
7595 * configure.in: Find declaration for sbrk.
7596 * acconfig.h (NEED_DECLARATION_SBRK): New tag.
7597 * config.in, configure: Rebuild.
7598 * mips-tfile.c: Properly protect declaration of sbrk and free.
7599 * toplev.c: Properly protect declaration of sbrk.
7600
bb02e7ea
RH
7601Sun Jan 18 20:18:01 1998 Richard Henderson <rth@cygnus.com>
7602
7603 * alpha.c (alpha_handle_trap_shadows): Ignore CLOBBERs.
7604
30c2fa75
JL
7605Sun Jan 18 01:54:27 1998 Jeffrey A Law (law@cygnus.com)
7606
7607 * alpha/xm-winnt.h (HAS_INIT_SECTION): Undefine.
7608
a0372c94
MS
7609Sun Jan 18 00:57:35 1998 Mike Stump (mrs@wrs.com)
7610
7611 * configure.in (i960-wrs-vxworks): Default to latest vxworks release.
7612
c9ec4f99
DM
7613Sat Jan 17 23:41:36 1998 David S. Miller <davem@tanya.rutgers.edu>
7614
0e9ff885
DM
7615 * combine.c (force_to_mode, nonzero_bits): Correctly optimize
7616 constant offset computations from objects with known alignment in
7617 the presence of STACK_BIAS.
7618
7bcac048
DM
7619 * varasm.c (immed_double_const): Add casts to HOST_WIDE_INT where
7620 necessary.
7621 (const_hash): Hash val is unsigned long.
7622 (SYMHASH): Likewise.
7623
7624 * tree.c (TYPE_HASH): Type of hash val is unsigned long.
7625
7626 * print-tree.c (print_node_brief): HOST_PTR_PRINTF format wants a
7627 char pointer, not HOST_WIDE_INT.
7628 (print_node): Likewise. Also hash is unsigned long not
7629 HOST_WIDE_INT.
7630
7631 * cse.c (canon_hash): Hash is unsigned long not HOST_WIDE_INT.
7632
c9ec4f99
DM
7633 * explow.c (optimize_save_area_alloca): New function for targets
7634 where SETJMP_VIA_SAVE_AREA is true.
7635 (allocate_dynamic_stack_space): On SETJMP_VIA_SAVE_AREA targets,
7636 compute the amount of stack space needed should we find later that
7637 setjmp is never called by this function, stuff rtl for this inside
7638 a REG_NOTE of the final SET of stack_pointer_rtx.
7639 * toplev.c (rest_of_compilation): If SETJMP_VIA_SAVE_AREA and
7640 current_function_calls_alloca, call optimize_save_area_alloca.
7641
ca097615
JW
7642Sat Jan 17 23:22:59 1998 John Wehle (john@feith.com)
7643
7644 * i386.md: Remove redundant integer push patterns.
7645 Don't bother checking for TARGET_PUSH_MEMORY when
7646 pushing constants or registers.
7647
a3105a89
MK
7648Sat Jan 17 22:35:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
7649 J.J VanderHeijden <J.J.vanderHeijden@student.utwente.nl>
b57062ca 7650
a3105a89
MK
7651 * pexecute.c (pexecute): New function for mingw32. Supports pipes.
7652 (pwait): New function for mingw32.
7653
7654 * gcc.c (execute): Mingw32 pexecute() supports pipes, but cygwin32
7655 pipe support is broken for now.
7656
51549d76
LI
76571998-01-17 Lee Iverson <leei@Canada.AI.SRI.COM>
7658
ffc3503d
JL
7659 * emit_rtl.c (init_emit_once): Ensure that potential aliasing
7660 between frame_pointer_rtx, hard_frame_pointer_rtx, and
7661 arg_pointer_rtx is respected in initialization.
7662 (init_emit_once): Use gen_rtx_raw_REG() to create
7663 return_address_pointer_rtx.
7664
51549d76
LI
7665 * reorg.c: #include "expr.h" for rtx prototypes.
7666 * Makefile.in (reorg.o): Depend on expr.h
7667
b24a815b
PN
7668Sat Jan 17 21:28:08 1998 Pieter Nagel <pnagel@epiuse.co.za>
7669
7670 * Makefile.in (FLAGS_TO_PASS): Pass down gcc_include_dir and
7671 local_prefix to sub-make invocations.
7672
1e7b997a
DM
7673Sat Jan 17 21:24:16 1998 David T. McWherter <dtm@waterw.com>
7674
7675 * objc-parse.c: Recognize protocol qualifiers in class definitions.
7676
340fb41f
JL
7677Sat Jan 17 21:16:19 1998 Jeffrey A Law (law@cygnus.com)
7678
ffc3503d
JL
7679 * rtl.h: Fix typos.
7680
aef28d1d 7681 * acconfig.h (NEED_DECLARATION_ATOL): New declaration to check for.
6885fc87 7682 * configure.in: Check for atol.
aef28d1d
JL
7683 * rtl.c (atol): Only provide the declaration if NEED_DECLARATION_ATOL.
7684
4399e7a3
JL
7685 * rtl.c (read_rtx): Initialize list_rtx to NULL, not NULL_RTX.
7686
72ec635f
JL
7687 * loop.c (find_and_verify_loops): When attempting to move insns from
7688 inside the loop outside the loop, create a BARRIER if no suitable
7689 one was found.
7690
1be6e437
JL
7691 * jump.c (jump_optimize): Remove Dec 17, 1997 chance in
7692 favor of an equivalent change from gcc-2.8.
7693
340fb41f
JL
7694 * i386/x-sco5 (CC): Remove trailing whitespace.
7695
982255c8 7696Sat Jan 17 21:09:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 7697
982255c8
KG
7698 * gengenrtl.c (type_from_format): De-ANSIfy function signature.
7699 (accessor_from_format): Likewise.
7700 (xmalloc): New function for use when linking with alloca.o.
7701
db8abea3
BH
7702Mon Jan 5 02:53:01 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
7703
7704 * frame.c (find_fde): Correct FDE's upper bound.
7705
5d483f63
RH
7706Fri Jan 16 16:23:52 1998 Richard Henderson <rth@cygnus.com>
7707
7708 * gengenrtl.c (DEF_RTL_EXPR): Provide a K&R compliant version.
7709
9a960e6b
JL
7710Fri Jan 16 10:16:10 1998 Jeffrey A Law (law@cygnus.com)
7711
7712 * calls.c (expand_call): Move #ifdef code out of macro argument
7713 lists.
7714 (emit_library_call, emit_library_call_value): Likewise.
7715
a4b18346
JL
7716Fri Jan 16 00:46:40 1998 Jeffrey A Law (law@cygnus.com)
7717
7718 * rtl.def (INLINE_HEADER): Fix bug exposed by gen_rtx_FOO changes.
7719
a252996a
JL
7720Thu Jan 15 01:02:30 1998 Jeffrey A Law (law@cygnus.com)
7721
7722 * version.c: Bump for snapshot.
7723
38a448ca
RH
7724Wed Jan 14 22:49:17 1998 Richard Henderson <rth@cygnus.com>
7725
7726 * alias.c: Change all uses of gen_rtx(FOO...) to gen_rtx_FOO;
7727 change gen_rtx(expr...) to gen_rtx_fmt_foo(expr...).
7728 * caller-save.c, calls.c, combine.c, cse.c: Likewise.
7729 * dwarf2out.c, except.c, explow.c, expmed.c, expr.c: Likewise.
7730 * final.c, flow.c, function.c, genpeep.c, haifa-sched.c: Likewise.
7731 * halfpic.c, integrate.c, jump.c, local-alloc.c, loop.c: Likewise.
7732 * profile.c, recog.c, reg-stack.c, regclass.c, regmove.c: Likewise.
7733 * reload.c, reload1.c, reorg.c, sched.c, stmt.c, stupid.c: Likewise.
7734 * unroll.c, varasm.c: Likewise.
7735 * config/alpha/alpha.c, config/alpha/alpha.md: Likewise.
7736
7737Wed Jan 14 19:36:08 1998 Gavin Koch (gavin@cygnus.com)
60db002d
GK
7738
7739 * mips.h: Fix some type-o's from a previous change.
7740
a8decb2c
JL
7741Wed Jan 14 01:26:05 1998 Jeffrey A Law (law@cygnus.com)
7742
b57062ca 7743 * loop.c (check_dbra_loop): Make sure initial value is a
a8decb2c
JL
7744 CONST_INT before trying to normalize it.
7745
0e2b736c
RL
7746Tue Jan 13 23:27:54 1998 Robert Lipe (robertl@dgii.com)
7747
7748 * sco5.h (ASM_OUTPUT_SECTION_NAME): Refresh from ../svr4.h.
7749
a3aa3d8c
HB
7750Tue Jan 13 22:47:02 1998 Herman ten Brugge <herman@htbrug.net.HCC.nl>
7751
7752 * cppexp.c: Include gansidecl.h
7753
8b496c8d
ILT
7754Tue Jan 13 22:43:35 1998 Ian Lance Taylor <ian@cygnus.com>
7755
7756 * svr4.h (LINK_SPEC): Never specify -h.
7757 * ptx4.h (LINK_SPEC): Likewise.
7758 * rs6000/sysv4.h (LINK_SPEC): Likewise.
7759 * sparc/sol2.h (LINK_SPEC): Likewise.
7760
c995fea1
RH
7761Tue Jan 13 22:39:40 1998 Richard Henderson (rth@cygnus.com)
7762
8d47dfc5
RH
7763 * c-typeck.c (comptypes): Exit early on NULL input.
7764
c995fea1
RH
7765 * haifa-sched.c (schedule_insns): Correctly remove inter-block
7766 dependencies after reload.
7767
88ea0ad1
FS
7768Tue Jan 13 22:22:31 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
7769
7770 * rs6000/linux.h (CPP_PREDEFINES): Add -D__ELF__.
7771
f5e86959
JL
7772Tue Jan 13 22:14:57 1998 Klaus Kaempf <kkaempf@progis.de>
7773
7774 * alpha/vms.h (DIR_SEPARATOR): define
7775
7776Tue Jan 13 22:13:04 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
6c32c807
BH
7777
7778 * Makefile.in (stamp-proto): Remove.
7779 (protoize.o, unprotoize.o): Straightforward compile.
7780 * unprotoize.c: Define UNPROTOIZE here, not in the Makefile.
7781
93006f8c
MK
7782Tue Jan 13 21:59:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
7783
7784 * i386/cygwin32.h (STRIP_NAME_ENCODING): Define for Win32 to strip
7785 off the trailing @[NUM] added by ENCODE_SECTION_INFO.
7786
e4c4f8df
JL
7787Tue Jan 13 21:55:06 1998 Jeffrey A Law (law@cygnus.com)
7788
7789 * arm/netbsd.h (DWARF2_UNWIND_INFO): Define as zero for now.
7790 * i386/netbsd.h, m68k/netbsd.h, ns32k/netbsd.h: Likewise.
7791 * sparc/netbsd.h, vax/netbsd.h: Likewise.
7792
4aa0c2a5
SS
7793Tue Jan 13 21:37:07 1998 Shigeya Suzuki <shigeya@foretune.co.jp>
7794
7795 * i386/bsd386.h (DWARF2_UNWIND_INFO): Define as zero for now.
7796
c43143f6
JW
7797Tue Jan 13 17:50:55 1998 Jim Wilson <wilson@cygnus.com>
7798
7799 * configure.in (target_cpu_default, target_cpu_default2): Use double
7800 quotes around them when testing their value.
7801 * configure: Rebuilt.
b57062ca 7802
4b8140a6
JC
7803Tue Jan 13 09:07:44 1998 John Carr <jfc@mit.edu>
7804
7805 * gengenrtl.c (gencode): Emit new function obstack_alloc_rtx
7806 to allocate rtx.
7807 (gendef): Call obstack_alloc_rtx.
7808
82de9b28 7809Tue Jan 13 01:16:36 1998 Robert Lipe (robertl@dgii.com)
fe07d4c1
RL
7810
7811 * configure.in: (i[3456]86-UnixWare7-sysv5): Treat much like SVR4
7812 for now.
7813
23092526 7814Thu Dec 18 18:40:17 1997 Mumit Khan <khan@xraylith.wisc.edu>
b57062ca 7815
23092526
MK
7816 * i386/mingw32.h (INCOMING_RETURN_ADDR_RTX): Delete. Use the value
7817 of DWARF2_UNWIND_INFO, if any, from i386/cygwin32.h instead.
7818 (STANDARD_INCLUDE_DIR): Change to /usr/local/i386-mingw32/include.
7819
b57062ca 7820Tue Jan 13 00:44:02 1998 Jim Wilson <wilson@cygnus.com>
32318600
JW
7821
7822 * mips.md (return_internal): Change mode from SImode to VOIDmode.
7823
ef720b21
KJ
7824Sat Jan 10 22:11:39 1998 J. Kean Johnston <jkj@sco.com>
7825
7826 * i386/sco5.h (STARTFILE_SPEC, ENDFILE_SPEC): Correctly handle
7827 "-static".
7828
cde21847
SC
7829Sat Jan 10 22:04:15 1998 Stan Cox <scox@equinox.cygnus.com>
7830
7831 * i386.md: (movsicc_1, movhicc_1): For alternate 3 set the opcode
7832 suffix from operand 3.
7833
184bb750
R
7834Sat Jan 10 21:50:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7835 Jeffrey A Law (law@cygnus.com)
7836
7837 * regmove.c: New implementation of regmove pass.
7838 * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2): Remove
7839 decls, make them have external linkage. Return a value from
7840 optimize_reg_copy_1.
7841 * reload.h (count_occurrences): Add decl.
7842 * reload1.c (count_occurrences): Delete decl, make it have external
7843 linkage.
7844 * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Declare.
7845
3f9e9508 7846Sat Jan 10 20:30:12 1998 Jeffrey A Law (law@cygnus.com)
b57062ca 7847
3f9e9508
JL
7848 * regclass.c (record_address_regs): Don't use REG_OK_FOR_BASE_P
7849 if it is not defined.
b57062ca 7850
3b80f6ca
RH
7851Thu Jan 8 21:06:54 1998 Richard Henderson <rth@cygnus.com>
7852
7853 * Makefile.in (OBJ, GEN, RTL_H): Add genrtl.[oh] bits.
7854 * emit-rtl.c (gen_rtx): Move special code to ...
7855 (gen_rtx_CONST_INT): New function.
7856 (gen_rtx_REG): New function.
7857 (*): Update all calls to gen_rtx.
7858 * genemit.c (gen_exp): Emit calls to gen_rtx_FOO for constant FOO.
7859 * rtl.h: Include genrtl.h; prototype CONST_INT & REG generators.
7860 (GEN_INT): Call gen_rtx_CONST_INT.
7861 * gengenrtl.c: New file.
7862
1c72c7f6
JC
7863Mon Jan 5 13:00:18 1998 John F. Carr <jfc@mit.edu>
7864
7865 * alias.c (*_dependence): Call base_alias_check before canon_rtx.
7866 (base_alias_check): If no base found for address call canon_rtx and
7867 try again.
7868
8fa4e1b4
JL
7869Mon Jan 5 11:39:49 1998 Jeffrey A Law (law@cygnus.com)
7870
7871 * mips.c (mips_expand_prologue): Handle large frame with no outgoing
7872 arguments for mips16.
7873 (mips_expand_epilogue): Pass "orig_tsize" to save_restore_insns.
7874 Don't lose if tsize is zero after handling large stack for mips16.
7875 * mips.md (return): For trivial return, return address is in $31.
7876
eb774d8d
NS
7877Sun Jan 4 20:24:00 1998 Nigel Stephens <nigel@algor.co.uk>
7878
7879 * mips/mips16.S: Various changes to make it work with -msingle-float
7880 and -EL.
7881
2bcb2ab3
GK
7882Sun Jan 4 14:25:18 1998 Gavin Koch <gavin@cygnus.com>
7883 Ian Lance Taylor <ian@cygnus.com>
7884 Jeff Law <law@cygnus.com>
7885
7886 * mips.c, mips.h, mips.md: First cut at merging in mips16
7887 support. Major modifications throughout all three files.
7888
db0d1ed9
SS
7889Sun Jan 4 01:01:50 1998 scott snyder <snyder@d0sgif.fnal.gov>
7890
7891 * configure.in: Make gthr-default.h a forwarding header instead of
7892 a symlink.
7893
79873958
KG
7894Sat Jan 3 12:08:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7895
86e011ad
KG
7896 * gcov-io.h: Include sys/types.h to ensure we get size_t.
7897
79873958
KG
7898 * pa.h (ASM_OUTPUT_MI_THUNK): Add missing % in fprintf.
7899
35a42f5f
JW
7900Fri Jan 2 23:40:09 1998 Jim Wilson (wilson@cygnus.com)
7901 Jeffrey A Law (law@cygnus.com)
7902
7903 * crtstuff.c (__frame_dummy): New function for irix6.
7904 (__do_global_ctors): Call __frame_dummy for irix6.
7905 * iris6.h (LINK_SPEC): Hide __frame_dummy too.
7906
ef86d2ee
WL
7907Fri Jan 2 04:57:57 1998 Weiwen Liu <liu@hepmail.physics.yale.edu>
7908
7909 * alpha.c (vms_valid_decl_attribute_p): Move within #if OPEN_VMS.
7910
6c174fc0
RH
7911Fri Jan 2 04:34:14 1998 Richard Henderson <rth@cygnus.com>
7912
7913 * c-decl.c (init_decl_processing): Provide proper fallback symbol
7914 for __builtin_memset.
7915 * expr.c (expand_builtin) [MEMSET]: Arg 3 type code is INTEGER_TYPE
7916 not INTEGER_CST. Assert arg 3 is a constant.
7917
7918 * alpha.c (mode_width_operand): Accept 64-bit modes.
7919 (mode_mask_operand): Likewise.
7920 (print_operand): Likewise for 'M' and 'U' codes.
7921 (alpha_expand_unaligned_load): New function.
7922 (alpha_expand_unaligned_store): Likewise.
7923 (alpha_expand_unaligned_load_words): Likewise.
7924 (alpha_expand_unaligned_store_words): Likewise.
7925 (alpha_expand_block_move): Likewise.
7926 (alpha_expand_block_clear): Likewise.
7927 * alpha.h (MOVE_RATIO): New define.
7928 * alpha.md (extxl, ext*h, ins*l, mskxl): Name them.
7929 (insql, insxh, mskxh, extv, extzv, insv, movstrqi, clrstrqi): New.
7930
7931 * alpha.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE): Set to 3.
7932 (CONSTANT_ALIGNMENT, DATA_ALIGNMENT): Disable.
7933
8fbf199e
RH
7934Thu Jan 1 15:40:15 1998 Richard Henderson <rth@cygnus.com>
7935
7936 * configure.in: Put parenthesis around TARGET_CPU_DEFAULT's value.
7937 * configure: Update.
7938
2d490e3e
JL
7939Thu Jan 1 10:49:12 1998 Jeffrey A Law (law@cygnus.com)
7940
aa2ae679
JL
7941 * emit-rtl.c (operand_subword): Correctly handle extracting a word
7942 from a CONST_DOUBLE for 16bit targets with !WORDS_BIG_ENDIAN.
7943
2d490e3e
JL
7944 * mn10200.md (tstxx, cmpxx): Use "nonimmediate_operand" as predicate
7945 for first argument.
7946
6e26218f
ILT
7947Wed Dec 31 14:42:18 1997 Ian Lance Taylor <ian@cygnus.com>
7948
7949 * configure.in: Set and subsitute host_exeext. Use it when creating
7950 the assembler and linker symlinks.
7951 * configure: Rebuild.
7952 * Makefile.in (exeext): Set to @host_exeext@.
7953 (build_exeext): New variable, set to @build_exeext@.
7954 (FLAGS_TO_PASS): Pass down build_exeext.
7955 (STAGESTUFF): Use build_exeext, not exeext, for gen* and bi*
7956 programs.
7957
1b31097e
JL
7958Wed Dec 31 10:05:44 1997 Jeffrey A Law (law@cygnus.com)
7959
7960 * mn10200.md (addsi3, subsi3): Fix thinkos.
7961
194faace
RH
7962Tue Dec 30 00:04:49 1997 Richard Henderson <rth@cygnus.com>
7963
7964 * sparc.h (ASM_OUTPUT_MI_THUNK): Move %o7 through %g1 instead of
7965 save+restore. Fix pic+big_offset delay slot. Use "pic" case for
7966 unix always, since we want to be able to thunk to functions in a
7967 shared library from an application.
7968
975602f8
ILT
7969Mon Dec 29 14:37:31 1997 Ian Lance Taylor <ian@cygnus.com>
7970
7971 * mips/t-ecoff (CROSS_LIBGCC1): Define to libgcc1-asm.a.
7972 (LIB1ASMSRC, LIB1ASMFUNCS): Define.
7973
0eb1ad44
JL
7974Mon Dec 29 14:03:38 1997 Jeffrey A Law (law@cygnus.com)
7975
7976 * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
7977 offset's mode is not ptr_mode, convert it.
7978
eff0f7ac
MM
7979Mon Dec 29 15:58:18 1997 Michael Meissner <meissner@cygnus.com>
7980
7981 * libgcc2.c (inhibit_libc): Don't define inhibit_libc when cross
7982 compiling if it was already defined.
7983
2c3a56ad
JL
7984Sun Dec 28 00:32:16 1997 Jeffrey A Law (law@cygnus.com)
7985
7986 * flow.c (find_basic_blocks): Don't create a new basic block
7987 for calls in a LIBCALL block.
7988
fc97718f
DE
7989Sun Dec 28 00:30:24 1997 David Edelsohn <edelsohn@mhpcc.edu>
7990
7991 * config/fp-bit.c (L_df_to_sf): Fix typo in last change.
7992
5b5a2a1e
JL
7993Sat Dec 27 22:43:12 1997 Jeffrey A Law (law@cygnus.com)
7994
7995 * cse.c (rtx_cost): Remove conflicting default case.
7996
128f7968
RH
7997Sat Dec 27 21:20:02 1997 Richard Henderson <rth@cygnus.com>
7998
7999 * configure.in: Move default enabling of Haifa out of for loop.
8000 * configure: Rebuild.
8001
e81b4fbe
JL
8002Thu Dec 25 01:02:54 1997 Jeffrey A Law (law@cygnus.com)
8003
8004 * version.c: Bump for snapshot.
8005
f24af81b
TT
80061997-12-25 Teemu Torma <tot@trema.com>
8007
8008 * Makefile.in (GTHREAD_FLAGS): New var.
8009 (LIBGCC2_CFLAGS): Added $(GTHREAD_FLAGS).
8010 (distclean): Remove gthr-default.h.
8011
8012 * configure.in: Accept dce as a thread package.
8013 Check for thread.h and pthread.h.
8014 Link gthr-default.h to appropriate thread file and set
8015 gthread_flags.
8016 (hppa1.1-*-hpux10*): If --enable-threads, use dce threads and
8017 include multilib definitions from pa/t-dce-thr.
8018 (sparc-*-solaris2*): Enable threads by default, if thread.h or
8019 pthread.h is found, preferring posix threads over solaris ones.
8020
8021 * config/pa/t-dce-thr: New file.
8022 * config/pa/t-pa: Removed multilibs.
8023 * config/sparc/t-sol2: Ditto.
b57062ca 8024
f24af81b
TT
8025 * gthr.h: New file.
8026 * gthr-single.h: New file.
8027 * gthr-posix.h: New file.
8028 * gthr-solaris.h: New file.
8029 * gthr-dce.h: New file.
8030 * libgcc-thr.h: Removed.
8031 * objc/thr-dce.c: New file copied from thr-decosf1.c.
8032
8033 * frame.c: Include gthr.h instead of libgcc-thr.h.
8034 * libgcc2.c: Include gthr.h instead of libgcc-thr.h.
8035 (eh_context_initialize): If __gthread_once fails, use static eh
8036 context.
8037 (eh_context_free): Call __gthread_key_dtor.
8038
d9a4ee00
JL
8039Wed Dec 24 23:33:17 1997 Jeffrey A Law (law@cygnus.com)
8040
8041 * expr.h (MUST_PASS_IN_STACK): Allow target port to override.
8042
04bd620d
JW
8043Wed Dec 24 23:12:14 1997 Jim Wilson <wilson@cygnus.com>
8044
556c714b 8045 * cse.c (max_insn_uid): New variable.
556c714b
JW
8046 (cse_around_loop): Use max_insn_uid.
8047 (cse_main): Set max_insn_uid.
8048
04bd620d
JW
8049 * abi64.h (LONG_MAX_SPEC): Check MIPS_ABI_DEFAULT and TARGET_DEFAULT,
8050 and define __LONG_MAX__ appropriately. Add support for -mabi=X,
8051 -mlong64, and -mgp{32,64} options.
8052 * mips.c (mips_abi): Change type to int.
8053 * mips.h (enum mips_abi_type): Delete.
8054 (ABI_32, ABI_N32, ABI_64, ABI_EABI): Define as constants.
8055 (mips_abi): Change type to int.
8056
439d5a35
JC
8057Wed Dec 24 22:38:34 1997 John Carr <jfc@mit.edu>
8058
8059 * flags.h, toplev.c, calls.c, alias.c: Remove flag_alias_check;
8060 optimization is now always enabled.
8061
8062 * calls.c (expand_call): Recognize C++ operator new as malloc-like
8063 function.
8064
8065 * alias.c (memrefs_conflict_p): Eliminate tests now done by
8066 base_alias_check.
8067 (*_dependence): Call canon_rtx before base_alias_check.
8068 (init_alias_once): New function to precompute set of registers which
8069 can hold Pmode function arguments.
8070
8071 * rtl.h: Declare init_alias_once.
8072
8073 * toplev.c (compile_file): Call init_alias_once.
8074
280e521f
JL
8075Wed Dec 24 22:34:55 1997 Jeffrey A Law (law@cygnus.com)
8076
8077 * tree.c (restore_tree_status): Do not dereference a null pointer.
8078
95b8c0c8
PE
8079Tue Dec 23 12:56:46 1997 Paul Eggert <eggert@twinsun.com>:
8080
8081 * genattrtab.c (main): Check HAVE_{G,S}ETRLIMIT in addition to
8082 RLIMIT_STACK. This maintains consistency with the recent, similar
8083 patch to cccp.c and toplev.c.
8084
71d9b493
RH
8085Tue Dec 23 05:17:28 1997 Richard Henderson <rth@cygnus.com>
8086
8087 * genattrtab.c (expand_units): For large nr opclasses, expand
8088 function_units_used with ORX to prevent blowups. Tag with FFS.
8089 (num_unit_opclasses): New variable.
8090 (gen_unit): Update it.
8091 (enum operator): Add ORX_OP.
8092 (operate_exp): Treat ORX as or, except don't expand across an if.
8093 Reuse number rtx's after operating on them.
8094 (check_attr_value): Accept IOR, AND, & FFS.
8095 (write_test_expr): Transmute `in_comparison' to `flags'. Allow
8096 for attribute value caching. Handle CONST_STRING, IF_THEN_ELSE.
8097 (write_expr_attr_cache, write_toplevel_expr): New functions.
8098 (write_attr_get): Handle FFS-tagged expressions.
8099 (make_canonical): Don't expand const attributes.
8100 (convert_const_symbol_ref): Dike out.
8101 (evaluate_eq_attr): Handle SYMBOL_REF.
8102 (main): Don't emit get_attr_foo for const attributes.
8103
8104 * alpha.c (override_options): Reinstate PROCESSOR_EV6.
8105 (alpha_adjust_cost): Add EV6 tuning; streamline EV5 tests.
8106 * alpha.h (REGISTER_MOVE_COST): Increase ftoi/itof cost slightly.
b57062ca
UD
8107 * alpha.md: Redo all of the scheduling, adding EV6 support, and
8108 combining function units where possible.
71d9b493
RH
8109 (attr "type"): Split loads, stores, cmov into int/fp. Combine
8110 multiplies and divides. Add EV6 sqrt, ftoi, itof.
8111 (attr "opsize"): New attribute.
8112 (sqrtsf2-1, sqrtdf2-1): Provide proper TP_INSN patterns.
8113 (movsf2-[12], movdf2-[12]): Provide CIX varients; don't allow CIX
8114 to control register allocation.
8115 (movsi2-1, movdi2-1): Likewise.
8116
b0435cf4 8117Tue Dec 23 03:53:21 1997 Richard Henderson <rth@cygnus.com>
b57062ca 8118
b0435cf4
RH
8119 * alpha.h (CPP_PREDEFINES, LIB_SPEC, LINK_SPEC, STARTFILE_SPEC,
8120 MD_STARTFILE_PREFIX, ASM_FILE_START, ASM_SPEC, ASM_FINAL_SPEC):
8121 Move OSF/1 specific defines out.
8122 * alpha/elf.h (TARGET_VERSION, CPP_PREDEFINES, DEFAULT_VTABLE_THUNKS):
8123 Move Linux specific defines out.
8124 (LINK_SPEC): Genericize.
8125 (ASM_FILE_START): Emit .arch if using more than the base insn set.
8126 (ASM_OUTPUT_SOURCE_LINE): Remove; identical to alpha.h version.
8127 (SDB_DEBUGGING_INFO): Remove; gas can't handle it.
8128 (HANDLE_SYSV_PRAGMA): Define.
8129 * alpha/osf.h: New file.
8130 * alpha/linux.h: Split. Retain file-format independant defines.
8131 Import Linux bits from elf.h.
8132 (CPP_PREDEFINES): Take a file-format specific SUB_CPP_PREDEFINES
8133 (FUNCTION_PROFILER): _mcount takes its address in $28.
8134 (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Remove undef.
8135 * alpha/linux-ecoff.h: New file.
8136 * alpha/linux-elf.h: New file.
8137 * alpha/vms.h (LIB_SPEC, LINK_SPEC): Copy from osf.h.
8138 * alpha/win-nt.h (TARGET_DEFAULT): Define.
8139 * configure.in (alpha*-*-osf*, alpha*-*-linux*) [tm_file]:
8140 Add new headers as appropriate.
b57062ca 8141
b0435cf4
RH
8142 * configure.in (alpha*): Enable Haifa by default.
8143 (*-*-winnt3*): Change to winnt*, since we're not v3 specific.
8144 * configure: Rebuild.
b57062ca 8145
5768f211
RH
8146Tue Dec 23 03:14:54 1997 Richard Henderson <rth@cygnus.com>
8147
8148 * Makefile.in (clean): Remove the stages with their objects here ...
8149 (distclean): ... instead of here.
8150
9e04c65a 8151Mon Dec 22 11:24:01 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 8152
9e04c65a
KG
8153 * cse.c (rtx_cost): Add default case in enumeration switch.
8154 * fix-header.c (recognized_macro): Likewise.
8155 (recognized_extern): Likewise.
8156 (write_rbrac): Likewise.
8157 * objc/objc-act.c (encode_aggregate): Likewise.
8158 (gen_declarator): Likewise.
8159 (gen_declspecs): Likewise.
8160
1d88b804
JL
8161Mon Dec 22 09:58:51 1997 Jeffrey A Law (law@cygnus.com)
8162
8163 * haifa-sched.c (create_reg_dead_note): Detect and handle another
8164 case where we kill more regs after sched than were killed before
8165 sched.
8166 * sched.c (create_reg_dead_note): Similarly.
8167
bbeba0ba
JL
8168Mon Dec 22 09:18:37 1997 Jeffrey A Law (law@cygnus.com)
8169
8170 * c-pragma.c: Include flags.h.
8171
05853640
MK
8172Sun Dec 21 22:10:59 1997 Mumit Khan <khan@xraylith.wisc.edu>
8173
8174 * i386/cygwin32.h (NO_IMPLICIT_EXTERN_C): Don't assume anything
8175 about system headers.
8176 (LIB_SPEC): Add -ladvapi32 -lshell32 to be consistent with mingw32
8177 and also to resolve symbols in prefix.c.
8178
8179 * i386/xm-cygwin32.h (HAVE_BCOPY): Define. This avoids a conflict
8180 between gansidecl.h and newlib's _ansi.h when building libgcc2.a,
8181 when the definitions in auto-config.h is not visible.
8182 (HAVE_BZERO): Likewise.
8183 (HAVE_BCMP): Likewise.
8184 (HAVE_RINDEX): Likewise.
8185 (HAVE_INDEX): Likewise.
8186
44201dba
JL
8187Sun Dec 21 21:54:22 1997 Jeffrey A Law (law@cygnus.com)
8188
8189 * pa.c (emit_move_sequence): Handle a function label source
8190 operand.
8191
d300e551
NC
8192Sun Dec 21 16:13:55 1997 Nick Clifton <nickc@cygnus.com
8193
8194 * c-pragma.c (handle_pragma_token): Generate warning messages
8195 about unknown pragmas if warn_unknown_pragmas is set.
8196
8197 * c-decl.c (c_decode_option): Parse -Wunknown-pragmas command
8198 line option to set variable: warn_unknown_pragmas.
8199
d3245704
MH
8200Sun Dec 21 15:51:10 1997 Manfred Hollstein <manfred@lts.sel.alcatel.de>
8201
8202 * m68k/mot3300.h (ASM_BYTE_OP): Don't include '\t' in the
8203 definition.
8204 (ASM_OUTPUT_ASCII): Prefix ASM_BYTE_OP by one single '\t'.
8205
5198352e
JL
8206Sun Dec 21 13:58:39 1997 Jeffrey A Law (law@cygnus.com)
8207
8208 * Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS): Define.
8209 (libgcc2.a): Depend on $(DPBIT) and $(FPBIT). Add rules to
8210 generate more fine grained floating point emulation libraries.
8211 * config/fp-bit.c: Add protecting #ifdef to all functions so
8212 that they can be compiled separately. If !FINE_GRAINED_LIBRARIES,
8213 then compile all suitable functions.
8214 (pack_d, unpack_d, fpcmp_parts): Add declarations, define with two
8215 underscores to avoid namespace pollution.
8216 * t-mn10200 (LIB2FUNCS_EXTRA): Remove fp-bit.c
8217 (FPBIT): Define.
8218 * t-mn10300 (LIB2FUNCS_EXTRA): Remove fp-bit.c and dp-bit.c
8219 (FPBIT): Define.
8220 (DPBIT): Define.
8221
9f1ff8e8 8222Sat Dec 20 11:26:47 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1d300e19
KG
8223 Jeff Law <law@cygnus.com>
8224
8225 * bitmap.c (bitmap_clear): Ensure `inline' is at the beginning
8226 of the declaration.
8227 * c-decl.c (finish_decl): Use parentheses around && within ||.
8228 * rtl.c: Include stdlib.h.
8229 (read_skip_spaces): Add parentheses around assignments used as
8230 truth values.
8231 (read_rtx): Initialize list_rtx.
8232 * cppexp.c (parse_number): Use || when operands are truth values.
8233 * alias.c (find_base_value): Add default case.
8234 (memrefs_conflict): Likewise.
8235 * combine.c (sets_function_arg_p): Likewise.
8236 * genemit.c (gen_exp): Likewise.
8237 * local-alloc.c (contains_replace_regs): Likewise.
8238 * rtlanal.c (jmp_uses_reg_or_mem): Likewise.
8239 * fold-const.c (fold_convert): Use "&&" for truth values.
8240 (fold): Add default case.
8241 * sdbout.c (sdbout_field_types): Fix typo in declaration.
8242 (sdbout_one_type): Add default case.
8243 * alpha.c (alpha_sa_mask): Prototype only if OPEN_VMS.
8244 (some_operand): Add default case.
8245 (input_operand): Likewise.
8246 (signed_comparison_operator): Likewise.
8247 (divmod_operator): Likewise.
8248 (alpha_set_memflags_1): Likewise.
8249 * reload1.c (reload_cse_simplify_operands): Ensure function
8250 always returns a value.
8251 * scan-decls.c (scan_decls): Likewise.
8252 * c-lex.c (skip_white_space): Fix typo in declaraion.
8253 * c-typeck.c (comp_target_types): Add parentheses around assignment
8254 used as truth value.
8255 (print_spelling): Likewise.
8256 (constructor_implicit, constructor_result): Remove unused variables.
8257 * collect2.c (scan_library): Protect prototype with
8258 #ifdef SCAN_LIBRARIES.
8259 * emit-rtl.c (find_line_note): Fix typo in declaration.
b57062ca 8260 * final.c (asm_insn_count): Protect prototype with
1d300e19
KG
8261 #ifdef HAVE_ATTR_length.
8262 * flow.c (find_auto_inc): Protect prototype with #ifdef AUTO_INC_DEC.
8263 (try_pre_increment_1, try_pre_increment): Likewise.
8264 * regclass.c (auto_inc_dec_reg_p): Protect prototype with
8265 #ifdef FORBIDDEN_INC_DEC_CLASSES. Make return type explicit.
8266 * gcov-io.h (__store_long, __write_long, __read_long): Fix
8267 unsigned/signed comparisons.
8268 * gcov.c (read_files): Remove unused "first_type" variable.
8269 (scan _for_source_files): Initialize s_ptr.
8270 (function_summary): Eliminate "%lf" formatting, use %ld for
8271 longs.
8272 (output_data): Initialize branch_probs and last_line_num.
8273 Eliminate "%lf" formatting, use "%ld" for longs.
8274
18543a22
ILT
8275Fri Dec 19 17:31:11 1997 Ian Lance Taylor <ian@cygnus.com>
8276
afba61d1
ILT
8277 * mips16.S: New file.
8278
8279 * libgcc2.c (varargs): Handle mips16.
8280
18543a22
ILT
8281 * expr.c (do_tablejump): Let CASE_VECTOR_PC_RELATIVE be an
8282 expression.
8283 * stmt.c (expand_end_case): Likewise.
8284 * alpha.h (CASE_VECTOR_PC_RELATIVE): Update.
8285 * fx80.h, gmicro.h, m68k.h, m88k.h, ns32k.h: Likewise.
33f7f353 8286 * rs6000.h, sh.h, tahoe.h, v850.h, vax.h: Likewise.
18543a22 8287
dbf3231e
AS
8288Tue Dec 16 15:14:09 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
8289
8290 * objc/Make-lang.in: Create runtime-info.h and libobjc_entry.o in
8291 the build directory.
8292 (libobjc.a): Update dependency list.
8293 (libobjc.dll): Likewise. Use libobjc_entry.o from the build
8294 directory.
8295 (objc/sendmsg.o): Add -Iobjc to find runtime-info.h.
8296 (objc.mostlyclean): Remove runtime-info.h.
8297
e1ee5cdc
RH
8298Fri Dec 19 00:19:42 1997 Richard Henderson <rth@cygnus.com>
8299
8300 * tree.c (build_range_type): Allow creation of ranges with no maximum.
8301 * dbxout.c (dbxout_range_type): Handle missing TYPE_MAX_VALUE.
8302 * dwarf2out.c (add_subscript_info): Likewise.
8303 * dwarfout.c (subscript_data_attribute, byte_size_attribute): Likewise.
8304 * sdbout.c (plain_type_1): Likewise.
8305 * stmt.c (pushcase_range, all_cases_count, node_has_high_bound):
8306 Likewise.
8307 * fold-const.c (int_const_binop, fold_convert, make_range, fold):
8308 Likewise.
8309
dfe91418 8310Thu Dec 18 17:05:10 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 8311
dfe91418
JL
8312 * mips.c (fatal): Remove declaration.
8313
83141997-12-18 Mark Mitchell <mmitchell@usa.net>
8315
8316 * integrate.c (get_label_from_map): New function.
8317 (expand_inline_function): Use it. Initialize the label_map to
8318 NULL_RTX instead of gen_label_rtx.
8319 (copy_rtx_and_substitute): Use get_label_from_map.
8320 * integrate.h (get_label_from_map): New function.
8321 (set_label_from_map): New macro.
8322 * unroll.c (unroll_loop): Use them.
8323 (copy_loop_body): Ditto.
8324
337e2b69
ILT
8325Thu Dec 18 19:19:57 1997 Ian Lance Taylor <ian@cygnus.com>
8326
8327 * mips/mips.h (INIT_SUBTARGET_OPTABS): Define if not defined.
8328 (INIT_TARGET_OPTABS): Define.
8329 * mips/ecoff.h: Include gofast.h before mips.h.
8330 (INIT_SUBTARGET_OPTABS): Define instead of INIT_TARGET_OPTABS.
8331 * mips/elf64.h: Likewise.
8332 * mips/elf.h (ASM_OUTPUT_SECTION_NAME): Define.
8333
02531345
JM
8334Thu Dec 18 14:51:12 1997 Jason Merrill <jason@yorick.cygnus.com>
8335
8336 * except.c: Remove register_exception_table{,_p}.
8337
913b5d54
GK
8338Thu Dec 18 14:57:29 1997 Gavin Koch <gavin@cygnus.com>
8339
efb84aa5
GK
8340 * unroll.c (calculate_giv_inc): Handle constant increment found in
8341 a MEM with an appropriate REG_EQUAL note.
8342
bb1b857a
GK
8343 * calls.c (expand_call): Implement LOAD_ARGS_REVERSED.
8344
913b5d54
GK
8345 * dwarf2out.c (dwarf2out_frame_debug): Handle adjustments of the
8346 frame pointer in the prologue.
8347
80aab652
RL
8348Thu Dec 18 00:19:38 1997 Robert Lipe <robertl@dgii.com>
8349
8350 * i386/x-sco5 (CLIB) Deleted. (ALLOCA) Added.
8351 * i386/xm-sco5.h (USE_C_ALLOCA) Added.
8352
f5c4bc60 8353Tue Dec 16 18:51:00 1997 Bill Moyer <billm@cygnus.com>
b57062ca 8354
f5c4bc60
BM
8355 * config/m68k/m68k.c (output_function_prologue): Typecast
8356 dwarf2out_cfi_label to (char *).
8357 * config/m68k/m68kemb.h (STARTFILE_SPEC): Redefined to "".
b57062ca 8358
8dcb5295
RH
8359Wed Dec 17 15:06:04 1997 Richard Henderson <rth@cygnus.com>
8360
8361 * sparc.md (jump): Don't use the annul bit around an empty loop.
8362 Patch from Kevin.Kelly@East.Sun.COM.
8363
a99503b1
SC
8364Wed Dec 17 00:51:36 1997 Stan Cox (scox@cygnus.com)
8365
b57062ca 8366 * jump.c: (jump_optimize): Don't use the return register as a
a99503b1
SC
8367 source1 of a conditional move.
8368
e13c943c
RH
8369Tue Dec 16 23:45:40 1997 Richard Henderson <rth@cygnus.com>
8370
8371 * sparc.c (DF_MODES): Or the mask not the bit number.
8372 (function_arg) [ARCH64]: Send unprototyped arg to fp reg first.
8373
be3d27d6
CI
8374Wed Dec 17 00:13:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
8375
8376 * combine.c (force_to_mode): return immediately if operand is a CLOBBER.
8377
f184a264
MH
8378Tue Dec 16 23:44:54 1997 Manfred Hollstein <manfred@s-direktnet.de>
8379
ade7386a
MH
8380 * fixincludes (size_t): Add support for Motorola's stdlib.h
8381 which fails to provide a definition for size_t.
8382 (fabs/hypot): Provide a prototype for fabs on m88k-motorola-sysv3.
8383 (strlen,strspn,strcspn return value): Handle different layout on sysV88.
8384 (hypot): Provide a fake for hypot for m88k-motorola-sysv3.
8385
f184a264
MH
8386 * m68k/xm-mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Define to
8387 prevent unresolved externals in libio.
8388 * m88k/xm-sysv3.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Likewise.
8389
afc96791
L
8390Tue Dec 16 23:25:45 1997 H.J. Lu (hjl@gnu.org)
8391
8392 * config/sparc/linux64.h (LIBGCC_SPEC): Removed.
8393 (CPP_SUBTARGET_SPEC): Add %{pthread:-D_REENTRANT}.
8394 (LIB_SPEC): Updated for glibc 2.
8395
e9818f3c
JL
8396Tue Dec 16 20:11:36 1997 Jeffrey A Law (law@cygnus.com)
8397
8398 * ginclude/stdarg.h: Undo BeOS changes, they break hpux.
8399 * ginclude/varargs.h: Likewise.
8400
a3fd4e75 8401Tue Dec 16 00:32:01 1997 Jeffrey A Law (law@cygnus.com)
520cd331
JL
8402
8403 * version.c: Bump for snapshot.
8404
a3fd4e75
JL
8405Tue Dec 16 00:14:29 1997 H.J. Lu (hjl@gnu.org)
8406
8407 * frame.h (__register_frame, __register_frame_table,
8408 __deregister_frame): New.
8409 * frame.c (__register_frame, __register_frame_table,
8410 __deregister_frame): New.
8411 * frame.c (__deregister_frame_info): Return void *.
8412 * frame.h (__deregister_frame_info): Ditto.
8413 * collect2.c (__deregister_frame_info): Ditto.
8414
166cdf4a
RH
8415Mon Dec 15 18:40:08 1997 Richard Henderson <rth@cygnus.com>
8416
8417 * expmed.c (expand_shift): If SHIFT_COUNT_TRUNCATED, drop a SUBREG.
8418
bcbbac26
RH
8419Mon Dec 15 18:31:43 1997 Richard Henderson <rth@cygnus.com>
8420
8421 * alpha.c (alpha_cpu_name): New variable.
8422 (alpha_mlat_string): Likewise.
8423 (alpha_memory_latency): Likewise.
8424 (override_options): Handle -mmemory-latency.
8425 (alpha_adjust_cost): Adjust load cost for latency.
8426 * alpha.h (TARGET_OPTIONS): Add meory-latency.
8427 (REGISTER_MOVE_COST): Define in terms of memory_latency. Take
8428 TARGET_CIX into account.
8429 (MEMORY_MOVE_COST): Define in terms of memory_latency.
8430 * invoke.texi (DEC Alpha Options): Document -mmemory-latency.
8431
8432 * alpha.h (ASM_COMMENT_START): New macro.
8433
8434Mon Dec 15 17:48:05 1997 Richard Henderson <rth@cygnus.com>
1914f5da
RH
8435
8436 * reload.h, reload1.c (eliminate_regs), caller-save.c, dbxout.c,
8437 dwarfout.c, dwarf2out.c, reload.c, sdbout.c: Revert March 15 change.
8438
8439 * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
8440 SUBREG_REG if the word count is unchanged.
8441 * reload1.c (eliminate_regs) [case SET]: If W_R_O, preserve
8442 subregs of identical word size for push_reload.
8443
a701efba
MM
8444Mon Dec 15 Mark Mitchell <mmitchell@usa.net> 11:41:32 1997
8445
8446 * toplev.c (rest_of_compilation): Don't call save_for_inline_copy
8447 if all we're doing is dealing with -Wreturn-type.
8448
5e21ac7a
RH
8449Mon Dec 15 09:44:39 1997 Richard Henderson <rth@cygnus.com>
8450
8451 * alpha.md (zero_extendqihi2, zero_extendqisi2, zero_extendqidi2):
8452 Use and 255 instead of zapnot 1, since it schedules better.
8453
296f8acc
JL
8454Mon Dec 15 08:48:24 1997 Jeffrey A Law (law@cygnus.com)
8455
8456 * stmt.c (expand_asm_operands): If an ASM has no outputs, then treat
8457 it as volatile.
8458
6d8ccdbb
JL
8459Mon Dec 15 00:04:48 1997 Jeffrey A Law (law@cygnus.com)
8460
8461 * haifa-sched.c (remove_dependencies): Set RTX_INTEGRATED_P on
8462 dependency we delete. Properly update prev for multiple consecutive
8463 deletions.
8464 (priority): Skip deleted dependence.
8465
14e83f2e
PB
8466Fri Dec 12 18:54:23 1997 Per Bothner <bothner@cygnus.com>
8467
8468 * expr.c (expand_builtin): Support BUILT_IN_FMOD - just call fmod.
8469
100d81d4
JM
8470Fri Dec 12 01:19:48 1997 Jason Merrill <jason@yorick.cygnus.com>
8471
9b8d9d6b
JM
8472 * flow.c (flow_analysis): Be consistent with find_basic_blocks in
8473 determining when a new basic block starts.
8474
74c3447c
JM
8475 * alpha/osf2or3.h (LIB_SPEC): Restore missing defn.
8476
8477 * pa.h (TEXT_SPACE_P): Use TREE_CODE_CLASS.
8478 * pa.md (iorsi3): Add missing args to *_operand calls.
8479
100d81d4
JM
8480 * except.c (call_get_eh_context): Don't mess with sequences.
8481 (emit_eh_context): Include the call in the sequence here.
8482
5a5ab947
PE
84831997-12-11 Paul Eggert <eggert@twinsun.com>
8484
8485 * collect2.c (write_c_file_glob): Allocate initial frame object
8486 in static storage and pass its address.
8487
01eb7f9a
JM
8488Thu Dec 11 23:33:48 1997 Jason Merrill <jason@yorick.cygnus.com>
8489
8490 * except.c (call_get_eh_context): Don't take a parm.
8491 Put the call at the top of the function.
8492 (emit_eh_context): Adjust.
8493 (get_eh_context): Replace with former use_eh_context.
8494 (get_eh_context_once, get_saved_pc_ref): Remove.
8495 (start_eh_unwinder, end_eh_unwinder, emit_unwinder): Remove.
8496 * except.h: Adjust.
8497 * integrate.c (expand_inline_function): Adjust.
8498 * toplev.c (rest_of_compilation): Don't call emit_unwinder.
8499
d19814a3
ML
8500Fri Oct 10 17:58:31 CEST 1997 Marc Lehmann <pcg@goof.com>
8501
8502 * i386/xm-go32.h (EXECUTABLE_SUFFIX): Define.
8503 (DIR_SEPARATOR, NO_SYS_SIGLIST): Likewise.
8504
7567d496
MH
8505Thu Dec 11 23:55:17 1997 Manfred Hollstein <manfred@s-direktnet.de>
8506
ade7386a 8507 * fixincludes (strlen,strspn,strcspn return value): Handle different
7567d496 8508 layout on sysV88.
b57062ca 8509 (hypot): Provide a fake for hypot which is broken on
7567d496
MH
8510 m88k-motorola-sysv3.
8511
0a6969ad
JC
8512Thu Dec 11 23:50:17 1997 John F. Carr <jfc@mit.edu>
8513
8514 * tree.c, tree.h: Change tree_code_type, tree_code_length, and
8515 tree_code_name from pointers to arrays.
8516 * tree.c: Remove standard_tree_code_* variables, no longer used.
8517 * print-tree.c: Remove declaration of tree_code_name.
8518
8519 * cp/lex.c (init_lex): Update for tree_code_* changes.
8520 * objc/objc-act.c (init_objc): Likewise.
8521
8522 * tree.def, cp/cp-tree.def, objc/objc-tree.def: Update for tree_code
8523 changes.
8524
c55dcc7d
FF
8525Thu Dec 11 23:34:54 1997 Fred Fish <fnf@ninemoons.com>
8526
8527 * config.sub: Add support for BeOS target.
8528 * configure.in: Likewise.
8529 * ginclude/stdarg.h: Likewise.
8530 * ginclude/stddef.h: Likewise.
8531 * ginclude/varargs.h: Likewise.
8532 * rs6000/beos.h: New file for BeOS.
8533 * rs6000/t-beos: Likewise.
8534 * rs6000/x-beos: Likewise.
8535 * rs6000/xm-beos.h: Likewise.
8536 * toplev.c (get_run_time): Just return 0 on BeOS.
8537
9cf3ae46
JL
8538Thu Dec 11 23:25:23 1997 Jeffrey A Law (law@cygnus.com)
8539 Toon Moene (toon@moene.indiv.nluug.nl)
8540
8541 * m68k.h (GO_IF_LEGITIMATE_ADDRESS): No longer cater to horribly
8542 old and broken Sun3 assemblers. Newer versions handle large
8543 offsets correctly as does the GNU assembler.
8544
7cc273ad
L
8545Thu Dec 11 23:06:48 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
8546
8547 * objc/objc-act.c (lang_report_error_function): Disable.
8548 * objc/objc-parse.y: Include "output.h".
8549 (yyerror): Remove redundant decl.
8550 (yyprint): Fix prototype.
8551 (apply_args_register_offset): Remove redundant decl.
8552 (get_file_function_name): Likewise.
8553
74d7ab55
JM
8554Thu Dec 11 22:02:10 1997 Jason Merrill <jason@yorick.cygnus.com>
8555
8556 * flow.c (find_basic_blocks): A CALL_INSN that can throw starts
8557 a new basic block.
8558 (find_basic_blocks_1): Likewise.
8559
0776059e
JM
8560Thu Dec 11 21:08:48 1997 Jason Merrill <jason@yorick.cygnus.com>
8561
8562 * except.c (use_eh_context): Don't copy_rtx a REG.
8563 (emit_throw): Lose old unwinder support.
8564 (expand_internal_throw): Likewise.
8565 * libgcc2.c (struct eh_context): Likewise.
8566 (new_eh_context): Likewise.
8567 (__get_eh_info): Lose redundant cast.
8568 (__get_dynamic_handler_chain): Likewise.
8569 (__get_saved_pc): Lose.
8570 Lose all old unwinder support code.
8571
154bba13
TT
8572Thu Dec 11 20:42:18 1997 Teemu Torma <tot@trema.com>
8573
8574 Thread-safe EH support for pthreads, DCE threads and Solaris threads.
b57062ca 8575
154bba13
TT
8576 * integrate.c (expand_inline_function): If the inline fn uses eh
8577 context, make sure that the current fn has one.
8578 * toplev.c (rest_of_compilation): Call emit_eh_context.
8579 * except.c (use_eh_context): New fn.
8580 (get_eh_context_once): New fn.
8581 (call_get_eh_context): New fn.
8582 (emit_eh_context): New fn.
8583 (get_eh_context): Call either get_eh_context_once or
8584 call_get_eh_context, depending on what we have.
8585 (get_dynamic_handler_chain): Call get_eh_context_once.
8586 * except.h: Prototypes for fns above.
8587 * optabs.c (get_eh_context_libfunc): Removed.
8588 (init_optabs): Don't initialize it.
8589 * expr.h (get_eh_context_libfunc): Removed.
8590 * rtl.h, rtl.c: New reg_note REG_EH_CONTEXT.
8591 * config/pa/pa.h (CPP_SPEC): Support for -threads.
8592 * config/pa/pa-hpux10.h (LIB_SPEC): Ditto.
8593 * config/pa/t-pa (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
8594 New multilib for -threads.
8595 * config/sparc/t-sol2: Added multilibs for -threads and
8596 made -pthreads alias to it.
8597 * config/sparc/sol2.h (CPP_SPEC, LIB_SPEC):
8598 Added -threads and -pthreads options.
8599 * libgcc-thr.h: New file.
8600 * libgcc2.c: (__get_cpp_eh_context): Removed.
8601 (struct cpp_eh_context): Removed.
8602 (struct eh_context): Replaced cpp_eh_context with generic language
b57062ca 8603 specific pointer.
154bba13
TT
8604 (__get_eh_info): New function.
8605 (__throw): Check eh_context::info.
8606 (__sjthrow): Ditto.
8607 * libgcc2.c: Include libgcc-thr.h.
8608 (new_eh_context, __get_eh_context,
8609 eh_pthread_initialize, eh_context_initialize, eh_context_static,
8610 eh_context_specific, eh_context_free): New functions.
8611 (get_eh_context, eh_context_key): New variables.
8612 (__sjthrow, __sjpopnthrow, __eh_pcnthrow, __throw): Use
8613 get_eh_context to get the context.
8614 (longjmp): Move the declaration inside
8615 #ifdef DONT_USE_BUILTIN_SETJMP.
8616 * frame.c: Include libgcc-thr.h.
8617 (object_mutex): Mutex to protect the object list.
8618 (find_fde, __register_frame, __register_frame_table,
8619 __deregister_frame): Hold the lock while accessing objects.
8620 * except.h (get_eh_context): Declare.
8621 * except.c (current_function_ehc): Define.
8622 (current_function_dhc, current_function_dcc): Removed.
8623 (get_eh_context): New function.
8624 (get_dynamic_handler_chain): Use get_eh_context.
8625 (get_saved_pc_ref): Ditto.
8626 (get_dynamic_cleanup_chain): Removed references to
8627 current_function_dcc.
8628 (save_eh_status, restore_eh_status): Save and restore
8629 current_function_ehc instead.
8630 * optabs.c (get_eh_context_libfunc): New variable.
8631 (init_optabs): Initialize it.
8632 * expr.h: Declare get_eh_context_libfunc.
8633 * function.h (struct function): Replaced dhc and dcc with ehc.
8634 * except.c (get_saved_pc_ref): New functions.
8635 (eh_saved_pc_rtx, eh_saved_pc): Deleted.
8636 (expand_internal_throw_indirect): Use get_saved_pc_ref() instead
8637 of eh_saved_pc.
8638 (end_eh_unwinder): Likewise.
8639 (init_eh): Remove initialization of eh_saved_pc.
8640 * optabs.c (get_saved_pc_libfunc): New variable.
8641 (init_optabs): Initialize it.
8642 * expr.h: Declare get_saved_pc_libfunc.
8643 * except.h (eh_saved_pc_rtx): Deleted.
8644 (get_saved_pc_ref): Declared.
8645
8646 From Scott Snyder <snyder@d0sgif.fnal.gov>:
8647 * libgcc2.c (__get_saved_pc): New.
8648 (__eh_type, __eh_pc): Deleted.
8649 (__eh_pcnthrow): Use __get_saved_pc() instead of __eh_pc.
8650 (__get_dynamic_handler_chain): Move __dynamic_handler_chain inside
8651 this fcn.
8652
68d75312
JC
8653Thu Dec 11 17:23:48 1997 John F. Carr <jfc@mit.edu>
8654
b16d8734
JC
8655 * sparc/sol2.h: Use 64 bit multiply and divide functions in
8656 Solaris libc. Define TARGET_LIVE_G0 and TARGET_BROKEN_SAVERESTORE
8657 as 0.
8658
68d75312
JC
8659 * rtl.h (global_rtl): New variable, replacing separate variables for
8660 commonly used rtl.
8661 (const_int_rtx): Now array of rtx_def, not rtx.
8662 * emit-rtl.c: Update for new rtl data structures.
8663 * genattrtab.c: Define global_rtl.
8664
44517326 8665Thu Dec 11 15:50:29 1997 David Edelsohn <edelsohn@mhpcc.edu>
f40421ce 8666
44517326
DE
8667 * configure.in ({rs6000,powerpc}-*-*): Enable Haifa scheduler by
8668 default.
f40421ce 8669
8587487b
AG
8670Wed Dec 10 12:30:18 1997 Anthony Green <green@cygnus.com>
8671
8672 * crtstuff.c (__do_global_ctors): Fix typo.
8673
08ce3276
MH
8674Tue Dec 9 09:43:59 1997 Manfred Hollstein <manfred@s-direktnet.de>
8675
8676 * toplev.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
8677 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
8678
c229cba9
DE
8679Tue Dec 9 09:38:58 1997 David Edelsohn <edelsohn@mhpcc.edu>
8680
8681 * rs6000.h (FUNCTION_ARG_PADDING): Define.
8682 * rs6000.c (function_arg_padding): New function.
8683
b2c59d0b
MH
8684Tue Dec 9 10:34:21 1997 Manfred Hollstein <manfred@s-direktnet.de>
8685
8686 * m68k.c: Include tree.h only once.
8687
c1132c27
RK
8688Tue Dec 9 09:32:33 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
8689
8690 * integrate.c (save_for_inline_copying): Make a new reg_parm_stack_loc.
8691
ac957f13
JL
8692Tue Dec 9 01:16:06 1997 Jeffrey A Law (law@cygnus.com)
8693
8694 * Partially cleaned up prototyping code from HJ.
a1d061a1 8695 * tree.h: Add many prototypes.
ac957f13
JL
8696 * haifa-sched.c (haifa_classify_insn): Renamed from classify_insn.
8697 All references changed.
8698 * rtl.h: Protect from multiple inclusions. Add many prototypes.
b57062ca 8699
f40421ce 8700Tue Dec 9 01:15:15 1997 Fred Fish <fnf@ninemoons.com>
ac957f13
JL
8701
8702 * libgcc2.c (string.h): Hoist inclusion to occur before first use of
8703 string functions like strlen.
8704
0a232106
MH
8705Tue Dec 9 00:57:38 1997 Manfred Hollstein <manfred@s-direktnet.de>
8706
8707 * configure.in: Check for functions getrlimit and setrlimit.
8708 * cccp.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
8709 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
8710
25b76cc1
JS
8711Mon Dec 8 23:53:26 1997 Jay Sachs <sachs@bull.cs.williams.edu>
8712
8713 * Makefile.in (compare*): Handle losing behavior from 4.4bsd make.
8714
26250081
RH
8715Mon Dec 8 21:03:28 1997 Richard Henderson <rth@cygnus.com>
8716
8717 * alpha.c (REG_RA, alpha_return_addr, output_epilog):
8718 Fix merge problems.
8719
8720 * alpha.c (override_options): Don't know about scheduling for EV6.
8721 * alpha.md (ev5 function units): Don't overload as ev6.
8722
8723 * alpha.c (alpha_adjust_cost): Simplify. Fix typo in ev5 mult case.
8724 * alpha.md (define_attr type): Add mvi.
8725 (ev5_e0): Define sceduling parameters for it.
8726 (TARGET_MAX insns): Type is mvi not shift.
8727
7120f213
RH
8728Mon Dec 8 18:15:00 1997 Richard Henderson <rth@cygnus.com>
8729
8730 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix backported gcc-2.8 bug.
8731
afa80947
R
8732Mon Dec 8 21:17:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
8733
8734 * cstamp-h, auto-config.h: Delete.
8735
51ca169b
JL
8736Sun Dec 7 19:19:03 1997 Jeffrey A Law (law@cygnus.com)
8737
8738 * version.c: Bump for snapshot.
8739
16169366
JL
8740Sat Dec 6 22:22:22 1997 Jeffrey A Law (law@cygnus.com)
8741
8742 * cccp.c: Fix typo brought over in merge.
8743
efeb5d4f 8744 * Merge in changes from gcc-2.8.
0fe09481 8745
da932f04
JL
8746Mon Nov 3 05:45:32 1997 Philippe De Muyter <phdm@macqel.be>
8747
8748 * m68k.c: Include tree.h for dwarf2out_cfi_label.
8749
8750 * gcc.c (process_command): Do not take address of function fatal when
8751 calling lang_specific_driver.
8752
8753Sat Dec 6 01:02:38 1997 Mumit Khan <khan@xraylith.wisc.edu>
8754
b57062ca 8755 * config/i386/cygwin32.h (DWARF2_UNWIND): Exception handling
da932f04
JL
8756 doesn't work with it yet, so set it to 0.
8757 * config/i386/xm-cygwin32.h (NO_SYS_SIGLIST): Define.
8758
8759Sat Dec 6 01:01:02 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
8760
8761 * cse.c (cse_insn): Check for invalid entries when taking references.
8762
81797aba
JL
8763Fri Dec 5 18:26:25 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
8764
8765 * loop.c (invariant_p): Don't test flag_rerun_loop_opt.
8766 (loop_optimize, scan_loop, strength_reduce): New argument unroll_p.
8767 * toplev.c (rest_of_compilation): Pass it. Remove code to
8768 save / clear / restore flag_unroll_{,all_}loops.
8769
8770Fri Dec 5 16:26:03 1997 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
8771
8772 * i386.c (notice_update_cc): Remove bogus pentium GCC code.
8773
8774Fri Dec 5 16:25:14 1997 Jeffrey A Law (law@cygnus.com)
8775
8776 * stmt.c (warn_if_unused_value): Don't warn for TRY_CATCH_EXPR.
8777
5dfa7520
JM
8778Thu Dec 4 11:51:00 1997 Jason Merrill <jason@yorick.cygnus.com>
8779
d07daca1
JM
8780 * except.c (get_dynamic_handler_chain): Only make the call once per
8781 function.
8782
5dfa7520
JM
8783 * except.c (expand_end_all_catch): Fix for sjlj exceptions.
8784
4d7b7169
R
8785Thu Dec 4 12:30:40 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
8786
8787 * sh.c (final_prescan_insn): Use local label prefix
8788 when emitting .uses pseudo-ops.
8789
e701eb4d
JM
8790Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
8791
8792 * libgcc2.c (__throw): Use __builtin_return_addr instead of __eh_pc.
8793 * except.c: Lose outer_context_label_stack.
8794 (expand_eh_region_end): Rethrow from outer_context here.
8795 (expand_fixup_region_end): Let expand_eh_region_end do the rethrow.
8796 (expand_internal_throw): Take no args.
8797 (expand_internal_throw_indirect): Lose.
8798 (expand_leftover_cleanups, expand_start_all_catch): Use expand_rethrow.
8799 (expand_start_all_catch): Start a rethrow region.
8800 (expand_end_all_catch): End it.
8801 (expand_rethrow): New fn.
8802 * except.h: Reflect above changes.
8803 * flow.c: Revert change of Nov 27.
8804
6a242b6a
JL
8805Thu Dec 4 00:24:09 1997 Jeffrey A Law (law@cygnus.com)
8806
8807 * i386/t-sol2 (CRTSTUFF_T_CFLAGS): Turn on the optimizer.
8808
9762d48d
JM
8809Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
8810
8811 * except.c (expand_fixup_region_end): New fn.
8812 (expand_fixup_region_start): Likewise.
8813 (expand_eh_region_start_tree): Store cleanup into finalization here.
8814 * stmt.c (expand_cleanups): Use them to protect fixups.
8815
868e82ab
GK
8816Wed Dec 3 11:41:13 1997 Gavin Koch <gavin@cygnus.com>
8817
8818 * mips/mips.md (muldi3_r4000): Broaden the output template
8819 and attribute assignments to handle three operand dmult;
8820 rename to muldi3_internal2.
8821 (muldi3): Call the new muldi3_internal2 for R4000, and
8822 any GENERATE_MULT3 chip.
8823
716cc7f7
JM
8824Tue Dec 2 19:40:43 1997 Jason Merrill <jason@yorick.cygnus.com>
8825
8826 * stmt.c (expand_decl_cleanup): Update thisblock after eh_region_start.
8827
9fb82071
JW
8828Tue Dec 2 12:54:33 1997 Jim Wilson <wilson@cygnus.com>
8829
8830 * unroll.c (find_splittable_givs): Remove last change. Handle givs
8831 with a dest_reg that was created by loop.
8832
f2d76545
JL
8833Sat Nov 29 12:44:57 1997 David Edelsohn <edelsohn@mhpcc.edu>
8834
8835 * rs6000.c (function_arg_partial_nregs): Undo Nov. 26 patch.
8836
8837 * rs6000/aix41.h (ASM_CPU_SPEC): Define.
8838
b4dfb707
JL
8839Fri Nov 28 10:00:27 1997 Jeffrey A Law (law@cygnus.com)
8840
8841 * configure.in: Fix NCR entries.
8842
80c2681c
JL
8843Thu Nov 27 12:20:19 1997 Jeffrey A Law (law@cygnus.com)
8844
586a5f99
JL
8845 * flow.c (find_basic_blocks): Handle cfg issues for rethrows and
8846 nested exceptions correctly.
8847
80c2681c
JL
8848 * unroll.c (find_splittable_givs): Don't split givs with a dest_reg
8849 that was created by loop.
8850
f45ebe47
JL
8851Thu Nov 27 09:34:58 1997 Jason Merrill <jason@yorick.cygnus.com>
8852
8853 * expr.c (preexpand_calls): Don't look past a TRY_CATCH_EXPR.
8854
8855 * except.c (expand_start_all_catch): One more do_pending_stack_adjust.
8856
034e84c4
MM
8857Wed Nov 26 15:47:30 1997 Michael Meissner <meissner@cygnus.com>
8858
8fbd2dc7
MM
8859 * rs6000.c (SMALL_DATA_REG): Register to use for small data relocs.
8860 (print_operand): Use SMALL_DATA_REG for the register involved in
8861 small data relocations.
8862 (print_operand_address): Ditto.
8863
8864 * rs6000/linux.h (LINK_SPEC): Pass -dynamic-linker /lib/ld.so.1 if
8865 -dynamic linker is not used.
8866
a226df46
MM
8867 * rs6000.md (call insns): For local calls, use @local suffix under
8868 System V. Don't use @plt under Solaris.
8869
034e84c4
MM
8870 * rs6000.c (output_function_profiler): Put label address in r0, and
8871 store LR in 4(sp) for System V/eabi.
8872
8873 * rs6000.h (ASM_OUTPUT_REG_{PUSH,POP}): Keep stack aligned to 16
8874 byte boundary, and maintain stack backchain.
8875
f2d76545
JL
8876Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
8877
8878 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
8879 fix_truncsfdi2): Change *.
8880
33e5c8c3
JM
8881Wed Nov 26 11:12:26 1997 Jason Merrill <jason@yorick.cygnus.com>
8882
8883 * toplev.c (main): Complain about -gdwarfn.
8884
f45ebe47
JL
8885Tue Nov 25 22:43:30 1997 Jason Merrill <jason@yorick.cygnus.com>
8886
b57062ca 8887 * dwarfout.c (output_type): If finalizing, write out nested types
f45ebe47
JL
8888 of types we've already written.
8889
92dcf4c8
MM
8890Tue Nov 25 20:32:24 1997 Michael Meissner <meissner@cygnus.com>
8891
8892 (patches originally from Geoffrey Keating)
8893 * rs6000.c (function_arg): Excess floating point arguments don't
8894 go into GPR registers after exhausting FP registers under the
8895 System V.4 ABI.
8896 (function_arg_partial_nregs): Ditto.
8897
8898 * rs6000.md (call insns): If -fPIC or -mrelocatable, add @plt
8899 suffix to calls.
8900
f4744807
JM
8901Tue Nov 25 23:37:27 1997 Jason Merrill <jason@yorick.cygnus.com>
8902
8903 * integrate.c (output_inline_function): Just unset DECL_INLINE.
8904
8905Tue Nov 25 23:33:29 1997 scott snyder <snyder@d0sgif.fnal.gov>
8906
8907 * dwarf2out.c (outout_call_frame_info): Ensure that the info has
8908 proper alignment.
8909
8910 * libgcc2.c (__throw): Initialize HANDLER.
8911
0609f021
JW
8912Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
8913
8914 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
8915 fix_truncsfdi2): Change *X to ?*X.
8916
c905c108
RH
8917Tue Nov 25 10:00:42 1997 Richard Henderson (rth@cygnus.com)
8918
8919 * alpha.h (CONST_OK_FOR_LETTER): Fix 'L' handling.
8920
5041a61c
JL
8921Tue Nov 25 10:00:42 1997 Jeffrey A Law (law@cygnus.com)
8922
8923 * crtstuff.c (do_global_dtors_aux): Handle multiple calls better.
8924
bb727b5a
JM
8925Tue Nov 25 01:26:55 1997 Bruno Haible <haible@ilog.fr>:
8926
8927 * dwarf2out.c (ASM_OUTPUT_DWARF_DELTA1): Implement.
8928
8929Mon Nov 24 22:41:55 1997 Jason Merrill <jason@yorick.cygnus.com>
8930
8931 * except.c (get_dynamic_handler_chain): Build up a FUNCTION_DECL.
8932 * optabs.c (init_optabs): Lose get_dynamic_handler_chain_libfunc.
8933 * expr.h: Likewise.
8934
f45ebe47
JL
8935Sat Nov 22 18:58:20 1997 Jeffrey A Law (law@cygnus.com)
8936
8937 * pa-hpux10.h (NEW_HP_ASSEMBLER): Define.
8938 * pa.h (LEGITIMATE_CONSTANT_P): Reject LABEL_REFs if not using
8939 gas and not using the new HP assembler.
8940
ef85603e
JL
8941Fri Nov 21 15:20:05 1997 Jeffrey A Law (law@cygnus.com)
8942
8943 * Makefile.in (program_transform_cross_name): Clean up "-e" confusion.
8944 (GCC_INSTALL_NAME, GCC_CROSS_NAME): Likewise.
8945
6cc1f5cb
AC
8946Fri Nov 21 19:37:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
8947
8948 * config/mips/elf64.h (MULTILIB_DEFAULTS): Test for
8949 TARGET_ENDIAN_DEFAULT == zero instead of testing for macro
8950 definition.
8951
72eb1038
BH
8952Fri Nov 21 12:49:56 1997 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
8953
8954 * stmt.c (expand_end_bindings): Allow jump into block with cleanups.
8955
1418bb67
JM
8956Fri Nov 21 12:18:51 1997 Jason Merrill <jason@yorick.cygnus.com>
8957
8958 * except.h: Add outer_context_label_stack.
8959 * except.c: Likewise.
8960 (expand_start_all_catch): Push the outer_context for the try block
8961 onto outer_context_label_stack.
8962 (expand_end_all_catch): Use it and pop it.
8963
9dab7833
RL
8964Fri Nov 21 10:13:11 1997 Robert Lipe (robertl@dgii.com)
8965
8966 * i386/sco5.h (HAVE_ATEXIT): Revert last change.
8967
858e4e8c
RH
8968Thu Nov 20 16:11:50 1997 Richard Henderson <rth@cygnus.com>
8969
8970 * alpha.c (alpha_emit_set_const_1): Handle narrow hosts better.
8971
a21d14e9
KK
8972Thu Nov 20 16:11:50 1997 Klaus Kaempf <kkaempf@progis.de>
8973
8974 * alpha/vms.h (ASM_OUTPUT_ADDR_VEC_ELT): Add an L for the local label
8975 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
8976
ced78d8b
JM
8977Thu Nov 20 14:42:15 1997 Jason Merrill <jason@yorick.cygnus.com>
8978
8979 * Makefile.in (LIB2FUNCS): Remove C++ memory management support.
b57062ca 8980 * libgcc2.c: Remove __builtin_new, __builtin_vec_new, set_new_handler,
ced78d8b
JM
8981 __builtin_delete, and __builtin_vec_delete.
8982
8983 * except.c (output_exception_table): Don't bother with
8984 __EXCEPTION_END__.
8985
a09ff88b
JL
8986Thu Nov 20 16:11:50 1997 Jeffrey A Law (law@cygnus.com)
8987
1b8b89f1
JL
8988 * pa.md (pre_stwm, post_stwm, pre_ldwm, post_ldwm): Base register
8989 is an in/out operand.
8990 (zero extended variants of stwm/stwm patterns): Similarly.
8991
a09ff88b
JL
8992 * mips/x-iris (FIXPROTO_DEFINES): Add -D_SGI_SOURCE.
8993
7bb9fb0e
JM
8994Thu Nov 20 13:19:32 1997 Jason Merrill <jason@yorick.cygnus.com>
8995
8996 * dwarf2out.c (ASM_OUTPUT_DWARF_OFFSET4): Rename from VALUE4.
8997 Use assemble_name.
8998 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Use assemble_name.
8999 (output_call_frame_info): Emit a \n after using it.
9000
9101297d
DL
9001Thu Nov 20 00:38:46 1997 Dave Love <d.love@dl.ac.uk>
9002
9003 * configure.in: Add AC_ARG_ENABLE for Haifa as documentation.
9004
2ed2af28
PDM
9005Wed Nov 19 12:03:04 1997 Philippe De Muyter <phdm@macqel.be>
9006
9007 * dwarf2out.c (CIE_LENGTH_LABEL, FDE_LENGTH_LABEL): New macros.
9008 (ASM_OUTPUT_DWARF_VALUE4): New macro.
9009 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Define if SET_ASM_OP is
9010 defined.
9011 (output_call_frame_info): Do not output forward label differences
9012 if ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL is defined.
9013 * m68k/mot3300.h (SET_ASM_OP): Define when not using gas.
9014
4dff12bf
R
9015Tue Nov 18 23:03:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9016
9017 * sh.md (attribute "type"): Add nil.
9018 (movsi_ie): y/y alternative is type nil.
9019 (movsf_ie): Replace ry/yr/X alternative by r/y/X , y/r/X and y/y/X
9020 alternatives.
9021 (movsf_ie+1): Delete.
9022
218c2cdb
JW
9023Tue Nov 18 15:39:59 1997 Jim Wilson <wilson@cygnus.com>
9024
9025 * mips/mips.c (save_restore_insns): If gp_offset or fp_offset are
9026 large_int, emit two insns instead of one splitable insn.
9027 * dwarf2out.c (dwarf2out_frame_debug): When set cfa_store_offset
9028 from cfa_temp_value, use cfa_offset. Add assert checking that
9029 cfa_reg is SP.
9030
d5b79362
TT
9031Mon Nov 17 15:35:38 1997 Tom Tromey <tromey@cygnus.com>
9032
9033 * cccp.c (deps_output): Properly quote file names for make.
9034
de1ea87a
JL
9035Mon Nov 17 13:21:40 1997 Jeffrey A Law (law@cygnus.com)
9036
9037 * t-h8300 (MULTILIB_EXCEPTIONS): Define.
9038
cb0112a7
RL
9039Fri Nov 7 15:33:11 1997 Robert Lipe (robertl@dgii.com)
9040
9041 * i386/sco5.h (HAVE_ATEXIT): Delete definition.
9042
85c3ba60
JL
9043Sun Nov 16 23:52:48 1997 Jeffrey A Law (law@cygnus.com)
9044
9045 * cse.c (cse_insn): Don't look at JUMP_LABEL field of a conditionl
9046 return.
9047 (cse_end_of_basic_block): Similarly.
ef720b21 9048
9155d500
KJ
9049Sun Nov 16 23:01:40 1997 J. Kean Johnston <jkj@sco.com>
9050
9051 * i386/sco5.h (ASM_OUTPUT_ALIGNED_BSS): Define.
9052 (SELECT_RTX_SECTION): Define.
9053 (LIBGCC_SPEC, LIB_SPEC): Do the right thing for PIC.
9054
4931312c
MH
9055Sun Nov 16 22:47:03 1997 Manfred Hollstein <manfred@s-direktnet.de>
9056
9057 * Makefile.in (compare, compare-lean): Define $stage for each
9058 shell command.
9059 (gnucompare, gnucompare-lean): Likewise.
9060
8dfe3c62
RH
9061Sun Nov 16 22:02:16 1997 Richard Henderson (rth@cygnus.com)
9062
9063 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix offsets.
9064
9065 * alpha.h (ASM_OUTPUT_ADDR_DIFF_ELT): Add an L for the local label
9066 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
9067
874a8709
FF
9068Fri Nov 14 09:09:20 1997 Fred Fish (fnf@cygnus.com)
9069
9070 * dwarfout.c (byte_size_attribute): Add local var upper_bound
9071 and add case to handle STRING_TYPE.
9072 * dwarfout.c (output_string_type_die): Fix code to generate
9073 correct string length attribute for fixed length strings.
9074 Still needs support for varying length strings.
9075
ea466196
JL
9076Fri Nov 14 08:46:56 1997 Jeffrey A Law (law@cygnus.com)
9077
9078 * toplev.c (get_run_time): Do something sensible for cygwin32.
9079
202f590e
RH
9080Fri Nov 14 07:24:20 1997 Richard Henderson <rth@cygnus.com>
9081
f35bcbc5
RH
9082 * expr.c (expand_builtin_setjmp): Set
9083 current_function_has_nonlocal_label.
9084 * stupid.c (stupid_life_analysis): If has_nonlocal_label, kill
9085 call-saved registers across calls.
9086
9087 * alpha.md (exception_receiver): Remove.
9088 (nonlocal_goto_receiver_osf): New
9089 (nonlocal_goto_receiver_vms): Renamed from nonlocal_goto_receiver.
9090 (nonlocal_goto_receiver): New, select _osf or _vms.
9091
531ea24e
RH
9092 * alpha.c (output_prolog [*]): Prefix entry labels with '$' to
9093 keep them from being propogated to the object file.
9094 (alpha_write_linkage): Likewise.
9095 * alpha.md (call_vms): Likewise.
9096 (call_value_vms): Likewise.
9097 (unnamed osf call insns): Likewise.
9098
9099 * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Don't omit L from local label.
9100 (ASM_GENERATE_INTERNAL_LABEL): Likewise.
9101
202f590e
RH
9102 * alpha.c (call_operand): Any reg is valid for WinNT.
9103 * alpha.md (call_nt, call_value_nt): Don't force address into $27.
9104 (anon nt calls): Add 'R' alternative.
9105 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE,
9106 INITIALIZE_TRAMPOLINE): Handle lack of original $27 and 32-bit ptrs.
9107
238ad62b
JL
9108Fri Nov 14 06:59:33 1997 Jeffrey A Law (law@cygnus.com)
9109
f78b5ca1
JL
9110 * calls.c (expand_call): Handle pcc_struct_value correctly for C++.
9111
238ad62b
JL
9112 * i386/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Delete defines.
9113 * i386/xm-mingw32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
9114 * rs6000/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
9115
da275344
MM
9116Thu Nov 13 20:37:33 1997 Michael Meissner <meissner@tiktok.cygnus.com>
9117
9118 * reload1.c (new_spill_reg): Improve fixed or forbidden register
9119 spill error message.
9120
1f1e1545
KG
9121Thu Nov 13 20:29:08 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9122
9123 * prefix.c: Use stdarg.h only ifdef __STDC__. Otherwise,
9124 use varargs.h. Wrap header with <>, not "".
9125
daa4b717
JL
9126Thu Nov 13 20:21:17 1997 Jeffrey A Law (law@cygnus.com)
9127
9128 * integrate.c (save_for_inline_copying): Add return value from
9129 savealloc.
9130
9bb5394e
BK
9131Thu Nov 13 19:12:33 1997 Brendan Kehoe <brendan@cygnus.com>
9132
9133 * fixincludes: Be a little more restrictive on what we will
9134 substitute to replace definitions of MAXINT for HPUX.
9135
9571f69b
MM
9136Thu Nov 13 18:41:02 1997 Michael Meissner <meissner@cygnus.com>
9137
9138 * dbxout.c (dbxout_symbol_location): Don't assume that variables
9139 whose address is the stack or argument pointers are indirect
9140 pointers.
9141
b57062ca
UD
91421997-11-13 Paul Eggert <eggert@twinsun.com>
9143
e7cbb6b6
PE
9144 * cccp.c, cpplib.c (compare_defs):
9145 Don't complain about arg name respellings unless pedantic.
b57062ca
UD
9146 * cpplib.c (compare_defs): Accept pfile as new arg.
9147 All callers changed.
e7cbb6b6 9148
9f29ca78
R
9149Thu Nov 13 23:33:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9150
9151 * fold-const.c (fold_truthop): Fix bug in last change.
9152
41c9120b
PE
91531997-11-13 Paul Eggert <eggert@twinsun.com>
9154
9155 Fix some confusion with IEEE minus zero.
9156
9157 * real.h (REAL_VALUES_IDENTICAL): New macro.
9158
9159 * expr.c (is_zeros_p): Don't consider -0.0 to be all zeros.
9160 * fold-const.c (operand_equal_p): Don't consider -0.0 to be
9161 identical to 0.0.
9162 * tree.c (simple_cst_equal): Don't consider -0.0 to have the
9163 same tree structure as 0.0.
9164
9165 * varasm.c (immed_real_const_1): Use new REAL_VALUES_IDENTICAL
9166 macro instead of doing it by hand.
9167
323d8e7b
JL
9168Thu Nov 13 16:56:14 1997 Jeffrey A Law (law@cygnus.com)
9169
9170 * v850/lib1funcs.asm: Minor whitespace changes.
9171 * v850.c: Fix minor formatting problems in many places.
9172 (construct_restore_jr, construct_save_jarl): Remove unwanted aborts.
9173
13529ea4
JW
9174Thu Nov 13 12:53:44 1997 Jim Wilson <wilson@cygnus.com>
9175
9176 * mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete code swapping xplus0 and
9177 xplus1 when xplus0 is not a register.
9178
759c135e
JL
9179Thu Nov 13 11:41:42 1997 Jeffrey A Law (law@cygnus.com)
9180
8930b063
JL
9181 * flow.c (find_basic_blocks): During marking phase, if we encounter
9182 an insn with a REG_LABEL note, make the target block live and
9183 create an edge from the insn to the target block. Do not make
9184 edges from all blocks to the target block.
9185
0be28489
JL
9186 * m68k/x-next (OTHER_FIXINCLUDES_DIRS): Include /NextDeveloper/Headers.
9187
759c135e
JL
9188 * confiugre.in: Tweak NCR entries.
9189 * configure: Rebuilt.
9190
47ad8c61
MM
9191Thu Nov 13 11:07:41 1997 Michael Meissner <meissner@cygnus.com>
9192
9193 * rs6000.c (num_insns_constant): Use REAL_VALUE_FROM_CONST_DOUBLE to
9194 pick apart floating point values, instead of using CONST_DOUBLE_LOW
9195 and CONST_DOUBLE_HIGH.
9196
9197 * rs6000.md (define_splits for DF constants): Use the appropriate
9198 REAL_VALUE_* interface to pick apart DF floating point constants in
9199 a machine independent fashion.
9200
5a6b3365
R
9201Thu Nov 13 00:06:58 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9202
9203 * fold-const.c (fold_truthop): When changing a one-bit comparison
9204 against zero into a comparison against mask, do a proper sign
9205 extension.
9206
2ec1535d
JL
9207Wed Nov 12 09:37:01 1997 Jeffrey A Law (law@cygnus.com)
9208
3a88cbd1
JL
9209 * except.c: Do not include "assert.h".
9210 (save_eh_status): Turn asserts into conditional aborts.
9211 (restore_eh_status, scan_region): Likewise.
9212 * dwarfout.c: Do not include "assert.h".
9213 (bit_offset_attribute): Turn asserts into conditional aborts.
9214 (bit_size_attribute, output_inlined_enumeration_type_die): Likewise.
9215 (output_inlined_structure_type_die): Likewise.
9216 (output_inlined_union_type_die): Likewise
9217 (output_tagged_type_instantiation): Likewise.
9218 (dwarfout_file_scope_decl): Likewise.
9219 * dwarf2out.c: Do not include "assert.h"
9220 (expand_builtin_dwarf_reg_size): Turn asserts into conditional aborts.
9221 (reg_save, initial_return_save, dwarf2out_frame_debug): Likewise.
9222 (add_child_die, modified_type_die, add_bit_offset_attribute): Likewise.
9223 (add_bit_size_attribute, scope_die_for): Likewise.
9224 (output_pending_types_for_scope): Likewise.
9225 (get_inlined_enumeration_type_die): Likewise.
9226 (get_inlined_structure_type_die): Likewise.
9227 (get_inlined_union_type_die, gen_subprogram_die): Likewise.
9228 (gen_tagged_type_instantiation_die): Likewise.
9229
2ec1535d
JL
9230 * flow.c (find_basic_blocks): Refine further to get a more correct
9231 cfg, especially in the presense of exception handling, computed
9232 gotos, and other non-trivial cases. Call abort if an inaccuracy
9233 is detected in the cfg.
9234
a6124a42
R
9235Tue Nov 11 21:47:27 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9236
9237 * glimits.h (SHRT_MIN): Define in a way suitable for 16 bit hosts.
9238
9239 * c-lex.c (whitespace_cr, skip_white_space_on_line): New functions.
9240 (skip_white_space): Use whitespace_cr.
9241 (check_newline): Handle whitespace more consistently.
9242
8f3189a4
JW
9243Tue Nov 11 16:25:49 1997 Jim Wilson <wilson@cygnus.com>
9244
9245 * i386/cygwin32.h (CPP_PREDEFINES): Delete -DPOSIX.
9246 * i386/xm-cygwin32.h (POSIX): Define.
9247
6d1350cd
GK
9248Mon Nov 10 20:53:11 1997 Gavin Koch <gavin@cygnus.com>
9249
9250 * config/mips/mips.h (MASK_DEBUG_H): Set to zero, so this bit
9251 is available elsewhere.
9252
d1f4474e
DE
9253Mon Nov 10 16:21:58 1997 Doug Evans <devans@canuck.cygnus.com>
9254
9255 * sparc/sparc.md (mov[sdt]f_const_insn): Fix condition to match
9256 what the instruction can handle.
9257
c7ae64f2
JM
9258Mon Nov 10 03:02:19 1997 Jason Merrill <jason@yorick.cygnus.com>
9259
9260 * stmt.c (expand_decl_cleanup_no_eh): New fn.
9261
9262 * except.c (expand_leftover_cleanups): do_pending_stack_adjust.
9263
ea64ef27
JL
9264Mon Nov 10 00:05:56 1997 Jeffrey A Law (law@cygnus.com)
9265
9266 * alias.c (MAX_ALIAS_LOOP_PASSES): Define.
9267 (init_alias_analysis): Break out of loops after MAX_ALIAS_LOOP_PASSES.
9268
47ad8c61
MM
9269Sun Nov 9 14:34:47 1997 David Edelsohn <edelsohn@mhpcc.edu>
9270
9271 * rs6000.md (lshrdi3_power): Delete '&' from first alternative and
9272 swap instruction order.
9273
0ff27f58
JL
9274Sun Nov 9 02:07:16 1997 Jeffrey A Law (law@cygnus.com)
9275
9276 * fixinc.svr4 (__STDC__): Add another case.
9277
7091039c
R
9278Sun Nov 9 02:00:29 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9279
9280 * a29k.h (ELIGIBLE_FOR_EPILOGUE_DELAY): Avoid loads from varying
9281 addresses in the epilogue delay slot.
9282
553914ad
MH
9283Sun Nov 9 01:40:40 1997 Manfred Hollstein (manfred@s-direktnet.de)
9284
9285 * m88k/dgux.h (ASM_CPU_SPEC): Reformatted to suppress wrong whitespace
9286 in generated `specs' file.
9287
64fde701
JW
9288Sun Nov 9 01:37:11 1997 Jim Wilson (wilson@cygnus.com)
9289
9290 * flags.h (flag_rerun_loop_opt): Declare.
9291 * loop.c (invariant_p, case LABEL_REF): Check flag_rerun_loop_opt.
9292 * toplev.c (flag_rerum_loop_opt): Delete static.
9293
1245df60
R
9294Sat Nov 8 18:20:21 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9295
1245df60
R
9296 Bring over from FSF:
9297
9298 Thu Oct 30 12:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9299
9300 * va-sh.h (__va_arg_sh1): Define.
9301 (va_arg): Use it.
9302 SH3E doesn't use any integer registers for subsequent arguments
9303 once a non-float value was passed in the stack.
9304 * sh.c (machine_dependent_reorg): If optimizing, put explicit
9305 alignment in front label for ADDR_DIFF_VEC.
9306 * sh.h (PASS_IN_REG_P): Fix SH3E case.
9307 (ADJUST_INSN_LENGTH): If not optimizing, add two extra bytes length.
9308
9309 Tue Oct 28 15:06:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9310
9311 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Undefine before including
9312 svr4.h.
9313
9314 Mon Oct 27 16:11:52 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9315
9316 * sh.c (machine_dependent_reorg): When -flag_delayed_branches,
9317 put an use_sfunc_addr before each sfunc.
9318 * sh.md (use_sfunc_addr, dummy_jump): New insns.
9319 (casesi): For TARGET_SH2, emit a dummy_jump after LAB.
9320
9321 Tue Oct 21 07:12:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9322
9323 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Don't redefine.
9324
97991933
JM
9325Fri Nov 7 10:22:24 1997 Jason Merrill <jason@yorick.cygnus.com>
9326
9327 * frame.c (add_fdes, count_fdes): Go back to checking pc_begin for
9328 linked once FDEs.
9329
eaf407a5
JL
9330Wed Nov 5 14:26:05 1997 Jeffrey A Law (law@cygnus.com)
9331
9332 * alias.c (find_base_value): Only return the known base value for
9333 pseudo registers.
9334
4f9ca067
JW
9335Wed Nov 5 11:27:14 1997 Jim Wilson <wilson@cygnus.com>
9336
9337 * i386.c (load_pic_register): Call prologue_get_pc_and_set_got.
9338 * i386.md (prologue_set_got, prologue_get_pc): Add UNSPEC_VOLATILE
9339 to pattern.
9340 (prologue_get_pc_and_set_got): New pattern.
9341
f4e31cf5
RH
9342Tue Nov 4 20:36:50 1997 Richard Henderson (rth@cygnus.com)
9343
9344 * alpha.c (summarize_insn): Handle ASM_OPERANDS. Don't recurse
9345 for SUBREG, just fall through.
9346
9347 * alpha.c (alpha_handle_trap_shadows): Init sum.defd to zero.
9348
9349 * alpha.md (attr trap): Make TRAP_YES non-zero for sanity's sake.
9350
f754c4a1
JL
9351Tue Nov 4 18:49:42 1997 Jeffrey A Law (law@cygnus.com)
9352
3ed18aeb
JL
9353 * fixincludes: Fix "hypot" prototype in NeXT math.h.
9354
3fe40e05
JL
9355 * Makefile.in (USE_ALLOCA): Always include alloca.o.
9356 (USE_HOST_ALLOCA): Likewise.
9357
f754c4a1
JL
9358 * rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
9359 and LABEL_REFS fields.
9360 * rtl.h (LABEL_REFS): Update.
9361
ab00eb0a
JW
9362Tue Nov 4 16:55:11 1997 Jim Wilson <wilson@cygnus.com>
9363
ff3467a9
JW
9364 * combine.c (try_combine): When setting elim_i2, check whether newi2pat
9365 sets i2dest. When calling distribute_notes for i3dest_killed, pass
9366 elim_i2 and elim_i1. When setting elim_i1, check if newi2pat
9367 sets i1dest.
9368
4911814e
JW
9369 * mips.md (insv, extzv, extv): Add change_address call.
9370 (movsi_ulw, movsi_usw): Change QImode to BLKmode in pattern.
9371
474eff88
JW
9372 * integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
9373
3feffdfe
JW
9374 * reload.c (find_reloads, case 'm' and 'o'): Reject HIGH constants.
9375
ab00eb0a
JW
9376 * mips.c (mips_expand_epilogue): Emit blockage insn before call to
9377 save_restore_insns if no FP and GP will be restored.
7636d567 9378
31c8581d
JW
9379 * dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
9380 Convert CCmode to word_mode before calling GET_MODE_SIZE.
9381
7636d567
JW
9382 * acconfig.h (HAVE_INTTYPES_H): Undef.
9383 * configure.in (inttypes.h): Check for conflicts between sys/types.h
9384 and inttypes.h, and verify that intmax_t is defined.
9385 * config/mips/x-iris (CC, OPT, OLDCC): Comment out.
9386 * config/mips/x-iris3: Likewise.
9387
73774bc7
JL
9388Tue Nov 4 16:07:15 1997 Jeffrey A Law (law@cygnus.com)
9389
9390 * alias.c (find_base_value): When copying arguments, return the
9391 tenative value for a hard register.
9392
645ebf37
DE
9393Tue Nov 4 13:40:35 1997 Doug Evans <devans@canuck.cygnus.com>
9394
9395 * c-lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
9396 (yylex): Record wide strings using target endianness, not host.
9397
f7620587
JL
9398Tue Nov 4 13:13:12 1997 Jeffrey A Law (law@cygnus.com)
9399
9400 * mn10200.h (ASM_OUTPUT_BSS): Delete.
9401 (ASM_OUTPUT_ALIGNED_BSS): New macro
9402 * mn10300.h (ASM_OUTPUT_BSS): Delete.
9403 (ASM_OUTPUT_ALIGNED_BSS): New macro.
9404 * v850.h (ASM_OUTPUT_BSS): Delete.
9405 (ASM_OUTPUT_ALIGNED_BSS): New macro.
9406
1686f1a2 9407Tue Nov 4 00:55:48 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
b57062ca 9408
1686f1a2
R
9409 * profile.c (branch_prob): Insert an insn after a NOTE_INSN_SETJMP.
9410
f6857708
JL
9411Mon Nov 3 14:36:50 1997 Jeffrey A Law (law@cygnus.com)
9412
9413 * configure.in (sco5): Use cpio to install header files.
9414
e566af04
MH
9415Sun Nov 2 23:31:43 1997 Manfred Hollstein <manfred@s-direktnet.de>
9416
9417 * aclocal.m4 (conftestdata_from, conftestdata_to): Names shortened to
9418 14 char length.
9419 * configure: Rebuild.
9420
cbd44549
RL
9421Sun Nov 2 19:44:00 1997 Robert Lipe (robertl@dgii.com)
9422
9423 * i386/sco5.h: enable -gstabs once again.
9424
56636818
JL
9425Sun Nov 2 19:27:21 1997 Jeffrey A Law (law@cygnus.com)
9426
9427 * arm.c (output_move_double): Allocate 3 entries in otherops array.
9428
9ad8a5f0
MS
9429Sat Nov 1 21:43:00 1997 Mike Stump (mrs@wrs.com)
9430
9431 * except.c (expand_ex_region_start_for_decl): Emit EH_REGION_BEG
9432 notes for sjlj exceptions too.
9433 (expand_eh_region_end): Similarly for EH_REGION_END notes.
9434 (exception_optimize): Optimize EH regions for sjlj exceptions too.
9435 * final.c (final_scan_insn): Don't output labels for EH REGION
9436 notes if doing sjlj exceptions.
9437
f8671389
JL
9438Sat Nov 1 19:15:28 1997 Jeffrey A Law (law@cygnus.com)
9439
8072f69c
JL
9440 * alias.c (init_alias_analysis): Handle -fno-alias-check when
9441 optimizing correctly.
9442
6cad9e32
JL
9443 * expr.c (expand_builtin_setjmp): Don't emit a SETJMP note
9444 or set current_function_calls_setjmp anymore.
9445
f8671389
JL
9446 * flow.c (find_basic_blocks): If we delete the label for an
9447 exception handler, remove it from the EH label list and remove
9448 the EH_BEGIN/EH_END notes for that EH region.
9449
a886ae74
JM
9450Sat Nov 1 16:44:49 1997 Jason Merrill (jason@cygnus.com)
9451
9452 * flow.c (find_basic_blocks): Generate correct flow control
9453 information when exception handling notes are present.
9454
c2c85462
JL
9455Sat Nov 1 13:42:19 1997 Jeffrey A Law (law@cygnus.com)
9456
9457 * dwarf2out.c (output_call_frame_info): Fix length argument
9458 to ASM_OUTPUT_ASCII.
9459 (output_die, output_pubnames, output_line_info): Likewise.
9460
8c316ae2
JL
9461Fri Oct 31 07:10:09 1997 Jeffrey A Law (law@cygnus.com)
9462
27ca375a
JL
9463 * version.c: Bump for snapshot.
9464
8d4e65a6
JL
9465 * dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_ASCII to
9466 output ASCII by default. Only use ASM_OUTPUT_DWARF_STRING if
9467 flag_debug_asm is on.
9468 (output_die, output_pubnames, output_line_info): Likewise.
9469
ec907dd8
JL
9470 * alias.c (init_alias_analysis): Add struct_value_incoming_rtx
9471 and static_chain_rtx into the potential base values array if
9472 they are registers.
9473
9474 * alias.c (new_reg_base_value): New array of potential base values.
9475 (unique_id): Now file scoped static.
9476 (find_base_value, case REG): Return the value in reg_base_value
9477 array for the REG if it exists. Else, return the value from
9478 new_reg_base_value if copying args and REG is a hard register.
9479 (find_base_value, case PLUS): If either operand of the PLUS is
9480 a REG, try to get its base value. Handle base + index and
9481 index + base.
9482 (record_set): Use new_reg_base_value instead of reg_base_value.
9483 (init_alias_analysis): Allocate space for new_reg_base_value too.
9484 Rework code to iterate over the insns propagating base value
9485 information until nothing changes.
9486
8c316ae2
JL
9487 * global.c (global_alloc): Free the conflict matrix after
9488 reload has finished.
9489
6874c264
JM
9490Fri Oct 31 01:45:31 1997 Jason Merrill <jason@yorick.cygnus.com>
9491
9492 * libgcc2.c (L_eh): Define __eh_pc.
9493 Replace __eh_type with generic pointer __eh_info.
9494
59fe8c2c
R
9495Fri Oct 31 00:34:55 1996 J"orn Rennecke <amylaar@cygnus.co.uk>
9496
9497 * expr.c (expand_increment): When enqueing a postincrement for a MEM,
9498 use copy_to_reg if address is not a general_operand.
9499
d1271ded
R
9500Fri Oct 31 00:16:55 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9501
9502 * profile.c (output_func_start_profiler): Clear flag_inline_functions
9503 for the duration of the call to rest_of_compilation.
9504
ac52b80b
DE
9505Thu Oct 30 14:40:10 1997 Doug Evans <devans@canuck.cygnus.com>
9506
9507 * configure.in (sparc-*-elf*): Use sparc/elf.h, sparc/t-elf.
9508 Set extra_parts.
9509 (sparc*-*-*): Recognize --with-cpu=v9.
9510 * sparc/elf.h: New file.
9511 * sparc/t-elf: New file.
9512
f8912297
JL
9513Thu Oct 30 13:26:12 1997 Jeffrey A Law (law@cygnus.com)
9514
9515 * mn10300.c (const_8bit_operand): New function.
9516 (mask_ok_for_mem_btst): New funtion.
9517 * mn10300.md (btst patterns with mem operands): Use new functions
9518 to avoid creating btst instructions with invalid operands.
9519
05ef204d
MM
9520Wed Oct 29 16:57:19 1997 Michael Meissner <meissner@cygnus.com>
9521
9522 * rs6000/xm-sysv4.h: Include xm-linux.h instead of xm-svr4.h if we
9523 are running on PowerPC Linux.
9524
feecabdf
GK
9525Wed Oct 29 13:10:11 1997 Gavin Koch <gavin@cygnus.com>
9526
9527 * config/mips/elf64.h (PREFERRED_DEBUGGING_TYPE): Only define
9528 if not previously defined.
9529
de957303
DE
9530Tue Oct 28 23:55:27 1997 Doug Evans (devans@cygnus.com)
9531
9532 * function.c (assign_parms): Correct mode of stack_parm if
9533 entry_parm underwent a mode conversion.
9534
ba3b3878
BK
95351997-10-28 Brendan Kehoe <brendan@lisa.cygnus.com>
9536
9537 * global.c (global_alloc): Use xmalloc instead of alloca for
9538 CONFLICTS, since max_allocno * allocno_row_words alone can be more
9539 than 2.5Mb sometimes.
9540
d540ae2c
RH
9541Tue Oct 28 15:29:15 1997 Richard Henderson <rth@cygnus.com>
9542
9543 * reload1.c (eliminate_regs [SET]): If [SUBREG] widened the mode of
9544 DEST for the spill, adjust mode of SRC to compensate.
9545
42f4929d
RH
9546Tue Oct 28 14:36:45 1997 Richard Henderson <rth@cygnus.com>
9547
9548 * alpha.md (reload_inqi): Check for MEM before strict_memory_address_p,
9549 since any_memory_operand() allows pseudos during reload.
9550 (reload_inhi, reload_outqi, reload_outhi): Likewise.
9551
08417478
JW
9552Tue Oct 28 11:53:14 1997 Jim Wilson <wilson@cygnus.com>
9553
9554 * m68k.md (btst patterns): Add 5200 support.
9555
750e8348
TM
9556Tue Oct 28 11:58:40 1997 Toon Moene <toon@moene.indiv.nluug.nl>
9557
9558 * fold-const.c (fold): For ((a * C1) / C3) or (((a * C1) + C2) / C3)
9559 optimizations, look inside dividend to determine if the expression
9560 can be simplified by using EXACT_DIV_EXPR.
9561
ede19932
JM
9562Tue Oct 28 10:19:01 1997 Jason Merrill <jason@yorick.cygnus.com>
9563
9564 From Brendan:
9565 * dwarf2out.c (output_call_frame_info): Use l1 instead of ".".
9566
66d91cb9
RH
9567Tue Oct 28 00:32:14 1997 Richard Henderson <rth@cygnus.com>
9568
9569 * alpha.c (summarize_insn [SUBREG]): Propogate SET.
9570
4f3f5e9f
RH
9571Mon Oct 27 23:59:26 1997 Richard Henderson <rth@cygnus.com>
9572
9573 * alpha.c (alpha_handle_trap_shadows): Don't call get_attr_trap
9574 on a CLOBBER.
9575
f3352b9e
RH
9576Mon Oct 27 21:25:20 1997 Richard Henderson <rth@cygnus.com>
9577
9578 * alpha.md (movqi, movhi): Make sure new insns created during reload
9579 won't need reloading themselves.
9580 (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Likewise.
9581
0cecc190
JL
9582Mon Oct 27 16:11:10 1997 Jeffrey A Law (law@cygnus.com)
9583
9584 * mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Disable reg+reg.
9585
a09ba5a2
RH
9586Sun Oct 26 13:50:44 1997 Richard Henderson <rth@cygnus.com>
9587
9588 * alpha.c (alpha_sa_mask [VMS]): Don't include $26 in the mask.
9589 Patch from Klaus Kaempf <kkaempf@progis.de>.
9590
7581a30f
JW
9591Sun Oct 26 13:31:47 1997 Jim Wilson (wilson@cygnus.com)
9592
9593 * expr.c (expand_expr, case INDIRECT_REF): Optimize a reference
9594 to an element in a constant string.
9595
d84e64d4
JM
9596Sun Oct 26 11:41:49 1997 Jason Merrill <jason@yorick.cygnus.com>
9597
9598 * dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32
9599 bit PC-relative offset. The exception range table pointer is now in
9600 the CIE.
9601 * frame.c (dwarf_cie, dwarf_fde): Rename CIE_pointer to CIE_delta.
9602 (count_fdes, add_fdes, get_cie): Adjust.
9603 (cie_info, extract_cie_info, __frame_state_for): Adjust eh_ptr uses.
9604
9605 From H.J. Lu:
9606 * frame.c (count_fdes, add_fdes): Skip linked once FDE entries.
9607
96286722
RH
9608Sun Oct 26 11:52:01 1997 Richard Henderson <rth@cygnus.com>
9609
9610 * alias.c (memrefs_conflict_p): Treat arg_pointer_rtx just
9611 like stack_pointer_rtx.
9612
e85988b5
MH
9613Sun Oct 26 11:32:16 1997 Manfred Hollstein <manfred@s-direktnet.de>
9614
361e618f
MH
9615 * Makefile.in (bootstrap-lean): Combined with `normal' bootstrap
9616 targets using "$@" to provide support for similar but not identical
9617 targets without having to duplicate code.
9618 (bootstrap4): New goal.
9619
e85988b5
MH
9620 * Makefile.in (compare, compare-lean, compare3): Combined to one
9621 ruleset determining actions to be performed via $@.
9622 (compare4, compare4-lean): New targets.
9623 (gnucompare, gnucompare3): Combined to one ruleset determining
9624 actions to be performed via $@. Also, note which files failed
9625 the comparison test in .bad_compare.
9626 (gnucompare-lean, gnucompare3-lean, gnucompare4-lean): New targets.
9627
91585c63
TM
9628Sun Oct 26 10:06:11 1997 Toon Moene <toon@moene.indiv.nluug.nl>
9629
9630 * fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
9631 if the dividend is a multiple of the divisor.
9632
da0af5a5
JL
9633Sun Oct 26 09:21:40 1997 Jeffrey A Law (law@cygnus.com)
9634
7337c67f
JL
9635 * Makefile.in (LIBGCC2_CFLAGS): Add -fexceptions.
9636
adb9effb 9637 * alias.c (find_base_term): Handle PRE_INC, PRE_DEC, POST_INC,
6d849a2a 9638 and POS_DEC.
6d849a2a
JL
9639
9640 * alias.c (true_dependence): Fix typo.
9641
6d6d0fa0
JL
9642 * toplev.c (flag_rerun_loop_opt): New variable.
9643 (f_options): Handle -frerun-loop-opt.
9644 (rest_of_compilation): If -frerun-loop-opt, then run the loop
9645 optimizer twice.
9646 (main): Enable -frerun-loop-opt by default for -O2 or greater.
9647
da0af5a5
JL
9648 * loop.c (simplify_giv_expr): Adding two invariants results
9649 in an invariant.
9650
ca0f2220
RH
9651Sun Oct 26 09:15:15 1997 Richard Henderson <rth@cygnus.com>
9652
b57062ca 9653 * expr.c (get_inner_reference): Remove the array bias after
ca0f2220
RH
9654 converting the index to Pmode.
9655
a6f7ba17
JL
9656Sat Oct 25 12:20:58 1997 Jeffrey A Law (law@cygnus.com)
9657
9658 * mn10300.h (TARGET_SWITCHES): Add -mmult-bug and -mno-mult-bug.
9659 (TARGET_MULT_BUG): Define.
9660 (TARGET_DEFAULT): Default to TARGET_MULT_BUG.
9661 * mn10300.md (mulsi3): Handle TARGET_MULT_BUG.
9662
17ad8a3b
JL
9663Fri Oct 24 17:40:34 1997 Jeffrey A Law (law@cygnus.com)
9664
9665 * mn10200.c (indirect_memory_operand): Delete unused function.
9666 * mn10200.h (EXTRA_CONSTRAINT): Handle 'R'.
9667 * mn10200.md (bset, bclr insns): Handle output in a reg too.
9668
e16b49d3
RH
9669Fri Oct 24 15:54:57 1997 Richard Henderson <rth@cygnus.com>
9670
9671 * alpha.md (call patterns): Revert Oct 16 change; if we are to elide
9672 the callee's ldgp, we must do it ourselves, and we use the jsr tag
9673 for more than scheduling.
9674
27f65411
DE
9675Fri Oct 24 13:23:04 1997 Doug Evans <devans@canuck.cygnus.com>
9676
9677 * sparc/sparc.h (ASM_SPEC): Delete asm_arch.
9678
e9ad4573
JL
9679Fri Oct 24 13:19:40 1997 Jeffrey A Law (law@cygnus.com)
9680
9681 * mn10300.c (symbolic_operand, legitimize_address): New functions.
9682 * mn10300.h (LEGITIMIZE_ADDRESS): Call legitimize_address.
9683 (GO_IF_LEGITIMATE_ADDRESS): Don't allow base + symbolic.
9684
66724f0a
JL
9685Thu Oct 23 09:35:12 1997 Jeffrey A Law (law@cygnus.com)
9686
9687 * version.c: Bump for snapshot.
9688
c401498b
R
9689Thu Oct 23 08:03:59 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9690
9691 * dbxout.c (dbxout_start_new_source_file): Use output_quoted_string
9692 for FILENAME.
9693
b22b9b3e
JL
9694Wed Oct 22 00:34:12 1997 Jeffrey A Law (law@cygnus.com)
9695
56bf1fd9
JL
9696 * toplev.c (flag_exceptions): Default value is 2.
9697 (compile_file): If flag_exceptions still has the value 2, then
9698 set it to 0.
9699
a04232e5
JL
9700 * rs6000.c (struct machine_function): Add pic_offset_table_rtx.
9701 (rs6000_save_machine_status): Save pic_offset_table_rtx.
9702 (rs6000_restore_machine_status: Restore pic_offset_table_rtx.
9703
0bd83abd
JL
9704 * local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions
9705 are shared.
9706
b22b9b3e
JL
9707 * rs6000.md (*movsi_got_internal_mem): New pattern.
9708 (*movsi_got_internal_mem splitter): New define_split.
9709
c1e385db
JW
9710Tue Oct 21 18:14:03 1997 Jim Wilson <wilson@cygnus.com>
9711
9712 * obstack.h (obstack_empty_p): Fix spurious space after backslash.
9713
1a986152
GK
9714Tue Oct 21 18:34:01 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
9715
9716 * rs6000.c: Avoid creating a stack frame under SYSV ABI if we
9717 only need to save LR.
9718
5d29a95f
JL
9719Tue Oct 21 10:06:40 1997 Jeffrey A Law (law@cygnus.com)
9720
c6ee9150
JL
9721 * mn10300.md (movqi, movhi): Avoid using address registers as
9722 destinations unless absolutely necessary.
9723
d5255ba2
JL
9724 * mn10200.c (expand_prologue): Fix typo.
9725
9d2128b8
JL
9726 * mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed
9727 addresses.
9728 * mn10200.md (neghi2): Provide an alternative which works if
9729 the input and output register are the same.
9730
576e5acc
JL
9731 * mn10300.c (print_operand): Handle 'S'.
9732 * mn10300.md (ashlsi3, lshrsi3, ashrsi3): Use %S for
9733 shift amount in last alternative
9734
5d29a95f
JL
9735 * mn10300.c (expand_epilogue): Rework to handle register restores
9736 in "ret" and "retf" instructions correctly.
9737
3bf1b082
JW
9738Mon Oct 20 16:47:08 1997 Jim Wilson <wilson@cygnus.com>
9739
9740 * expmed.c (extract_bit_field): Don't make flag_force_mem disable
9741 extzv for memory operands.
9742
9743 * cse.c (simplify_ternary_operation, case IF_THEN_ELSE): Collapse
9744 redundant conditional moves to single operand.
9745
ddbd8d36
NC
9746Mon Oct 20 15:30:26 1997 Nick Clifton <nickc@cygnus.com>
9747
9748 * v850.h: Move define of __v850__ from CPP_PREDEFINES
9749 to CPP_SPEC.
b57062ca 9750
ddbd8d36
NC
9751 * xm-v850.h: Use __v850 rather than __v850__ to
9752 identify v850 port.
9753
a944a4eb
JW
9754Mon Oct 20 14:15:02 1997 Jim Wilson <wilson@cygnus.com>
9755
9756 * mips/mips.c (compute_frame_size): Not a leaf function if
9757 profile_flag set.
9758
2d5b6dea
GK
9759Mon Oct 20 14:16:38 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
9760
9761 * rs6000/t-ppccomm: Use -msdata=none for crtstuff.
9762
f0a9fa6c
DE
9763Mon Oct 20 12:28:17 1997 Doug Evans <devans@canuck.cygnus.com>
9764
9765 * sparc/sparc.h (SPARC_V9,SPARC_ARCH64): Delete.
9766 (DEFAULT_ARCH32_P): New macro.
9767 (TARGET_ARCH{32,64}): Allow compile time or runtime selection.
9768 (enum cmodel): Declare.
9769 (sparc_cmodel_string,sparc_cmodel): Declare.
9770 (SPARC_DEFAULT_CMODEL): Provide default.
9771 (TARGET_{MEDLOW,MEDANY}): Renamed to TARGET_CM_{MEDLOW,MEDANY}.
9772 (TARGET_FULLANY): Deleted.
9773 (TARGET_CM_MEDMID): New macro.
9774 (CPP_CPU_DEFAULT_SPEC): Renamed from CPP_DEFAULT_SPEC.
9775 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
9776 (CPP_PREDEFINES): Take out stuff now handled by %(cpp_arch).
9777 (CPP_SPEC): Rewrite.
9778 (CPP_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
9779 (CPP_{ENDIAN,SUBTARGET}_SPEC): New macros.
9780 (ASM_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
9781 (ASM_SPEC): Add %(asm_arch).
9782 (EXTRA_SPECS): Rename cpp_default to cpp_cpu_default.
9783 Rename asm_default to asm_cpu_default.
9784 Add cpp_arch32, cpp_arch64, cpp_arch_default, cpp_arch, cpp_endian,
9785 cpp_subtarget, asm_arch32, asm_arch64, asm_arch_default, asm_arch.
9786 (NO_BUILTIN_{PTRDIFF,SIZE}_TYPE): Define ifdef SPARC_BI_ARCH.
9787 ({PTRDIFF,SIZE}_TYPE): Provide 32 and 64 bit values.
9788 (MASK_INT64,MASK_LONG64): Delete.
9789 (MASK_ARCH64): Renamed to MASK_64BIT.
9790 (MASK_{MEDLOW,MEDANY,FULLANY,CODE_MODEL}): Delete.
9791 (EMBMEDANY_BASE_REG): Renamed from MEDANY_BASE_REG.
9792 (TARGET_SWITCHES): Always provide 64 bit options.
9793 (ARCH64_SWITCHES): Delete.
9794 (TARGET_OPTIONS): New option -mcmodel=.
9795 (INT_TYPE_SIZE): Always 32.
9796 (MAX_LONG_TYPE_SIZE): Define ifdef SPARC_BI_ARCH.
9797 (INIT_EXPANDERS): sparc64_init_expanders renamed to sparc_init_....
9798 (FUNCTION_{,BLOCK_}PROFILER): Delete TARGET_EMBMEDANY support.
9799 (PRINT_OPERAND_PUNCT_VALID_P): Add '_'.
9800 * sparc/linux-aout.h (CPP_PREDEFINES): Take out stuff handled by
9801 CPP_SPEC.
9802 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
9803 * sparc/linux.h: Likewise.
9804 * sparc/linux64.h (SPARC_V9,SPARC_ARCH64): Delete.
9805 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
9806 (TARGET_DEFAULT): Delete MASK_LONG64, MASK_MEDANY, add MASK_64BIT.
9807 (SPARC_DEFAULT_CMODEL): Define.
9808 (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
9809 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
9810 (LONG_DOUBLE_TYPE_SIZE): Define.
9811 (ASM_SPEC): Add %(asm_arch).
9812 * sparc/sol2.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
9813 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
9814 (TARGET_CPU_DEFAULT): Add ultrasparc case.
9815 * sparc/sp64-aout.h (SPARC_V9,SPARC_ARCH64): Delete.
9816 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT.
9817 (SPARC_DEFAULT_CMODEL): Define.
9818 * sparc/sp64-elf.h (SPARC_V9,SPARC_ARCH64): Delete.
9819 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT. Delete
9820 MASK_LONG64, MASK_MEDANY.
9821 (SPARC_DEFAULT_CMODEL): Define.
9822 (CPP_PREDEFINES): Delete.
9823 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
9824 (ASM_SPEC): Add %(asm_arch).
9825 (LONG_DOUBLE_TYPE_SIZE): Define.
9826 (DWARF2_DEBUGGING_INFO): Define.
9827 * sparc/splet.h (CPP_SPEC): Delete.
9828 * sparc/sysv4.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
9829 (FUNCTION_BLOCK_PROFILER): Delete TARGET_EMBMEDANY support.
9830 (BLOCK_PROFILER): Likewise.
9831 * sparc/sparc.c (sparc_cmodel_string,sparc_cmodel): New globals.
9832 (sparc_override_options): Handle code model selection.
9833 (sparc_init_expanders): Renamed from sparc64_init_expanders.
9834 * sparc/sparc.md: TARGET_<code_model> renamed to TARGET_CM_....
9835 TARGET_MEDANY renamed to TARGET_CM_EMBMEDANY.
9836 (sethi_di_embmedany_{data,text}): Renamed from sethi_di_medany_....
9837 (sethi_di_fullany): Delete.
9838
a3b0df2d
KK
9839Mon Oct 20 02:00:18 1997 Klaus Kaempf <kkaempf@progis.de>
9840 Jeff Law <law@cygnus.com>
9841 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
9842
3a133c72
KK
9843 * alpha/vms.h (DIVSI3_LIBCALL): OTS$ functions are upper case.
9844 (DIVDI3_LIBCALL, UDIVSI3_LIBCALL, UDIVDI3_LIBVALL): Likewise.
9845 (MODSI3_LIBCALL, MODDI3_LIBCALL): Likewise.
9846 (UMODSI3_LIBCALL, UMODDI3_LIBCALL): Likewise.
9847 * alpha/alpha.md (arg_home): Likewise.
9848
a3b0df2d
KK
9849 * alpha/alpha.c (vmskrunch): Delete
9850 * alpha/vms.h (ENCODE_SECTION_INFO, ASM_DECLARE_FUNCTION_NAME): Delete.
9851 * alpha.c (output_prolog, VMS): Use alloca for entry_label and don't
9852 truncate to 64 characters.
9853
9854 * make-l2.com: Support openVMS/Alpha.
9855
9856 * vmsconfig.com: Fix to work on openVMS/Alpha and openVMS/VAX.
9857
7d4f2e6c
R
9858Sun Oct 19 19:00:35 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9859
9860 * longlong.h (count_leading_zeros): Add missing casts to USItype.
9861
decd44ac
JL
9862Sun Oct 19 18:44:06 1997 Jeffrey A Law (law@cygnus.com)
9863
9864 * i386/bsd386.h (ASM_COMMENT_START): Define.
9865
d1485032
JM
9866Sat Oct 18 13:47:15 1997 Jason Merrill <jason@yorick.cygnus.com>
9867
9868 * tree.c (restore_tree_status): Also free up temporary storage
9869 when we finish a toplevel function.
9870 (dump_tree_statistics): Print stats for backend obstacks.
9871
6bd35f86
DE
9872Sat Oct 18 12:47:31 1997 Doug Evans <dje@canuck.cygnus.com>
9873
9874 * expr.c (use_group_regs): Don't call use_reg for MEMs.
9875
d1485032
JM
9876Sat Oct 18 09:49:46 1997 Jason Merrill <jason@yorick.cygnus.com>
9877
9878 * libgcc2.c (__throw): Don't copy the return address.
9879 * dwarf2out.c (expand_builtin_dwarf_reg_size): Ignore return address.
9880
9881 * except.c (exceptions_via_longjmp): Initialize to 2 (uninitialized).
9882 * toplev.c (main): Initialize exceptions_via_longjmp.
9883
9884 * tree.c: Add extra_inline_obstacks.
9885 (save_tree_status): Use it.
9886 (restore_tree_status): If this is a toplevel inline obstack and we
9887 didn't want to save anything on it, recycle it.
9888 (print_inline_obstack_statistics): New fn.
b57062ca 9889 * function.c (pop_function_context_from): Pass context to
d1485032
JM
9890 restore_tree_status.
9891 * obstack.h (obstack_empty_p): New macro.
9892
6981eacf
JL
9893Sat Oct 18 00:43:59 1997 Jeffrey A Law (law@cygnus.com)
9894
9895 * i386/freebsd.h (ASM_COMMENT_START): Fix.
9896
1933ec7e
JW
9897Fri Oct 17 23:48:52 1997 Jim Wilson (wilson@cygnus.com)
9898
9899 * v850.c (ep_memory_offset): New function.
9900 (ep_memory_operand, substitute_ep_register, v850_reorg): Call it.
9901
9902 * v850.h (CONST_OK_FOR_*): Add and correct comments.
9903 (CONSTANT_ADDRESS_P): Add comment.
9904 (EXTRA_CONSTRAINT): Define 'U'.
9905 * v850.md: Add comments on bit field instructions.
9906 (addsi3): Delete &r/r/r alternative. Add r/r/U alternative.
b57062ca 9907 (lshrsi3): Use N not J constraint.
1933ec7e
JW
9908
9909 * v850.md (v850_tst1+1): New define_split for tst1 instruction.
9910
9911 * v850.c (reg_or_0_operand): Call register_operand.
9912 (reg_or_int5_operand): Likewise.
9913 * v850.h (MASK_BIG_SWITCH, TARGET_BIG_SWITCH): New macros.
9914 (TARGET_SWITCHES): Add "big-switch".
9915 (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE,
9916 ASM_OUTPUT_BEFORE_BASE_LABEL): Add support for TARGET_BIG_SWITCH.
9917 (CASE_DROPS_THROUGH): Comment out.
9918 (CASE_VECTOR_PC_RELATIVE, JUMP_TABLES_IN_TEXT_SECTION): Define.
9919 * v850.md (cmpsi): Delete compare mode.
9920 (casesi): New pattern.
9921
9922 * v850.h (CONST_OK_FOR_N): Delete redundant compare against zero.
9923 * v850.md (ashlsi3): Use SImode not QImode for shift count.
9924 (lshrsi3): Likewise.
9925
9926 * v850.c (print_operand): Add 'c', 'C', and 'z' support. Delete
9927 unreachable switch statement after 'b' support. Remove "b" from
9928 strings for 'b' support.
9929 * v850.md (branch_normal, branch_invert): Change %b to b%b.
9930
13c2de98
JL
9931Fri Oct 17 23:33:20 1997 Jeffrey A Law (law@cygnus.com)
9932
9933 * Makefile.in (LIBGCC2_CFLAGS): Avoid a backslash then an
9934 empty line if @inhibit_libc@ is empty.
9935
b2167bee
RL
9936Fri Oct 17 23:24:40 1997 Robert Lipe (robertl@dgii.com)
9937
9938 * i386/sco5.h: Let ELF use dwarf2 unwinding. COFF uses sjlj.
9939 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Defined.
9940 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
9941 (DWARF2_UNWIND_INFO): Let this track object file format.
9942 (EXTRA_SECTIONS): Add in_eh.
9943 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Define.
9944 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
9945
bf2a2c6b
DM
9946Fri Oct 17 17:13:42 1997 David S. Miller <davem@tanya.rutgers.edu>
9947
9948 * sparc/linux64.h (LINK_SPEC): Dynamic linker is ld-linux64.so.2.
da2a90f7
DM
9949 * sparc/sparc.h (FUNCTION_PROFILER): Fix format string when
9950 TARGET_MEDANY.
f4f8e370
DE
9951 * sparc/sparc.c (dwarf2out_cfi_label): Extern no longer needed.
9952 (output_double_int): Output DI mode values correctly when
9953 HOST_BITS_PER_WIDE_INT is 64.
9d162eb2
DE
9954 (output_fp_move_quad): If TARGET_V9 and not TARGET_HARD_QUAD, use
9955 fmovd so it works if a quad float ends up in one of the upper 32
9956 float regs.
7e37212e
DM
9957 * sparc/sparc.md (pic_{lo_sum,sethi}_di): New patterns
9958 necessary for PIC support on sparc64.
bf2a2c6b 9959
9ff84e67
DE
9960Fri Oct 17 13:39:56 1997 Doug Evans <dje@canuck.cygnus.com>
9961
9962 * sparc/sp64-elf.h (TARGET_DEFAULT): Delete MASK_STACK_BIAS.
9963 * sparc/sparc.h (PROMOTE_MODE): Promote small ints if arch64.
9964 (PROMOTE_FUNCTION_ARGS,PROMOTE_FUNCTION_RETURN): Define.
9965 (SPARC_FIRST_FP_REG, SPARC_FP_REG_P): New macros.
9966 (SPARC_{OUTGOING,INCOMING}_INT_ARG_FIRST): New macros.
9967 (SPARC_FP_ARG_FIRST): New macro.
9968 (CONDITIONAL_REGISTER_USAGE): All v9 fp regs are volatile now.
9969 (REG_ALLOC_ORDER,REG_LEAF_ALLOC_ORDER): Reorganize fp regs.
9970 (NPARM_REGS): There are 32 fp argument registers now.
9971 (FUNCTION_ARG_REGNO_P): Likewise.
9972 (FIRST_PARM_OFFSET): Update to new v9 abi.
9973 (REG_PARM_STACK_SPACE): Define for arch64.
9974 (enum sparc_arg_class): Delete.
9975 (sparc_arg_count,sparc_n_named_args): Delete.
9976 (struct sparc_args): Redefine and use for arch32 as well as arch64.
9977 (GET_SPARC_ARG_CLASS,ROUND_REG,ROUND_ADVANCE): Delete.
9978 (FUNCTION_ARG_ADVANCE): Rewrite.
9979 (FUNCTION_ARG,FUNCTION_INCOMING_ARG): Rewrite.
9980 (FUNCTION_ARG_{PARTIAL_NREGS,PASS_BY_REFERENCE}): Rewrite.
9981 (FUNCTION_ARG_CALLEE_COPIES): Delete.
9982 (FUNCTION_ARG_{PADDING,BOUNDARY}): Define.
9983 (STRICT_ARGUMENT_NAMING): Define.
9984 (doublemove_string): Declare.
9985 * sparc/sparc.c (sparc_arg_count,sparc_n_named_args): Delete.
9986 (single_move_string): Use GEN_INT, and HOST_WIDE_INT.
9987 (doublemove_string): New function.
9988 (output_move_quad): Clean up some of the arch64 support.
9989 (compute_frame_size): Add REG_PARM_STACK_SPACE if arch64.
9990 Don't add 8 bytes of reserved space if arch64.
9991 (sparc_builtin_saveregs): Combine arch32/arch64 versions.
9992 (init_cumulative_args): New function.
9993 (function_arg_slotno): New static function.
9994 (function_arg,function_arg_partial_nregs): New functions.
9995 (function_arg_{pass_by_reference,advance}): New functions.
9996 (function_arg_padding): New function.
c1215820 9997 * ginclude/va-sparc.h: Rewrite v9 support.
9ff84e67 9998
b8fb2d72
CI
9999Fri Oct 17 12:29:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
10000
f22376c7
CI
10001 * regclass.c (record_address_regs): Look at REG_OK_FOR_{BASE,INDEX}_P
10002 for hard regs to determine base and index registers.
10003
b8fb2d72
CI
10004 * reload.c (debug_reload_to_stream): New function. Specify stream
10005 into which to write debug info.
10006 (debug_reload): Modify to call debug_reload_to_stream with stderr.
10007
b79ee7eb
RH
10008Thu Oct 16 15:07:51 1997 Richard Henderson <rth@cygnus.com>
10009
10010 * combine.c (can_combine_p): Don't combine with an asm whose
10011 output is a hard register.
10012
5c19a356
MS
10013Thu Oct 16 15:43:26 1997 Mike Stump (mrs@wrs.com)
10014
10015 * c-decl.c (start_struct): Ensure that structs with forward
10016 declarations are in fact packed when -fpack-struct is given.
10017
10018 * stor-layout.c (layout_record): Ignore STRUCTURE_SIZE_BOUNDARY if
10019 we are packing a structure. This allows a structure with only
10020 bytes to be aligned on a byte boundary and have no padding on a
10021 m68k.
10022
02bef6da
RK
10023Thu Oct 16 15:17:54 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
10024
10025 * rs6000.h (ROUND_TYPE_ALIGN): Don't blow up if no fields in record.
10026
9ecc37f0
RH
10027Thu Oct 16 11:20:30 1997 Richard Henderson <rth@cygnus.com>
10028
10029 * alpha.c (alpha_return_addr_rtx): New variable.
10030 (alpha_save_machine_status): New; save it.
10031 (alpha_restore_machine_status): New; restore it.
10032 (alpha_init_expanders): New; clear it.
10033 (alpha_return_addr): New; set it.
10034 (alpha_ra_ever_killed): New; if alpha_return_addr_rtx, regs_ever_live
10035 is overly conservative, so search the insns explicitly.
10036 (alpha_sa_mask [VMS]): Check alpha_ra_ever_killed.
10037 (alpha_sa_size [VMS && !VMS]): Likewise.
10038 * alpha.h (RETURN_ADDR_RTX): Call alpha_return_addr.
10039 (INIT_EXPANDERS): New definition.
b57062ca 10040
9ecc37f0
RH
10041 * alpha.c: Move REG_PV, REG_RA somewhere more visible in the file.
10042 (output_prolog [!VMS]): Use them.
10043
10044 * alpha.c (output_prolog [!VMS]): Move gp detection to ...
b57062ca 10045 (alpha_does_function_need_gp): ... a new function. Refine the
9ecc37f0
RH
10046 CALL_INSN test to just TYPE_JSR.
10047 * alpha.md (most call insns): Fix some jsr/ibr type transpositions.
10048
bda2ffef
JL
10049Thu Oct 16 09:36:47 1997 Jeffrey A Law (law@cygnus.com)
10050
10051 * version.c: Bump for snapshot.
10052
96b63cd7
RK
10053Wed Oct 15 21:38:18 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
10054
10055 * pa.c (move_operand): Respect -mdisable-indexing.
10056 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
10057
f192bf8b
DE
10058Wed Oct 15 21:34:45 1997 David Edelsohn <edelsohn@mhpcc.edu>
10059
10060 * rs6000.md (udivsi3, divsi3): Split into MQ and non-MQ cases for
10061 PPC601.
10062 (umulsidi3,umulsi3_highpart): Ditto.
10063 (smulsi3_highpart_no_mq): Add !TARGET_POWER.
10064
2ea844d3
RH
10065Wed Oct 15 18:21:46 1997 Richard Henderson <rth@cygnus.com>
10066
10067 * alpha.c (final_prescan_insn): Gut, remove and transform to ...
10068 (alpha_handle_trap_shadows): ... a new function. Handle the entire
10069 function in one go. Emit RTL for trapb, instead of printf directly.
10070 (alpha_reorg): New function. Call alpha_handle_trap_shadows.
10071 (trap_pending): Kill global variable.
10072 (output_epilog): Don't call final_prescan_insn.
10073 (struct shadow_summary): Elide $31 and $f31; now it fits in a word.
10074 * alpha.h (FINAL_PRESCAN_INSN): Remove.
10075 (MACHINE_DEPENENT_REORG): Define.
10076 * alpha.md (jsr patterns with trapb): Stupid and useless. Kill.
10077 (trapb): New insn.
10078
74835ed8
RH
10079Wed Oct 15 18:16:05 1997 Richard Henderson <rth@cygnus.com>
10080
10081 Tune Haifa scheduler for Alpha:
10082 * alpha.h (ISSUE_RATE): Define.
10083 * alpha.c (alpha_adjust_cost): Handle EV5 mult delay; don't apply
10084 EV4 adjustments to EV5.
10085 * alpha.md: Remove all scaling from function unit delays. Rework
10086 EV5 function units to match the CPU.
10087 (umuldi3_highpart): EV5 added the IMULH insn class.
10088
cdc0de30
JL
10089Wed Oct 15 17:42:41 1997 Jeffrey A Law (law@cygnus.com)
10090
10091 * pa.c (following_call): Fail if the CALL_INSN is an indirect
10092 call.
10093
041c97f2
MM
10094Tue Oct 14 12:01:00 1997 Mark Mitchell <mmitchell@usa.net>
10095
10096 * cplus-dem.c (demangle_signature): Don't look for return types on
10097 constructors. Handle member template constructors.
10098
f0632762
JM
10099Tue Oct 14 11:30:29 1997 Jason Merrill <jason@yorick.cygnus.com>
10100
10101 * tree.c (expr_tree_cons, build_expr_list, expralloc): New fns.
22ef8a13 10102 * tree.h: Declare them.
f0632762 10103
dec88383
DE
10104Fri Oct 10 13:46:56 1997 Doug Evans <dje@canuck.cygnus.com>
10105
10106 * configure.in: Handle --with-newlib.
10107 * Makefile.in (LIBGCC2_CFLAGS): Add @inhibit_libc@.
10108
10109 * sparc/t-sp64 (LIBGCC2_CFLAGS): Delete.
10110
0e1f3f5e
JL
10111Wed Oct 8 14:37:44 1997 Jeffrey A Law (law@cygnus.com)
10112
10113 * config/ptx4.h: Fix typo.
10114
12504ae0
JL
10115Wed Oct 8 08:57:20 1997 Jeffrey A Law (law@cygnus.com)
10116
10117 * version.c: Bump for snapshot.
10118
5643c767
MH
10119Tue Oct 7 16:27:34 1997 Manfred Hollstein <manfred@s-direktnet.de>
10120
10121 * aclocal.m4: Substitute INSTALL.
10122 * configure: Re-built.
10123
aa0c1401
JL
10124Tue Oct 7 15:37:35 1997 Jeffrey A Law (law@cygnus.com)
10125
f644bd14
JL
10126 * integrate.c (save_for_inline_copying): Avoid undefined pointer
10127 operations.
10128 (expand_inline_function): Likewise.
10129
aa0c1401
JL
10130 * dwarf2out.c (output_call_frame_info): Reinstate last change
10131 using flag_debug_asm check instead of flag_verbose_asm.
10132
6c2df6c9
JW
10133Tue Oct 7 12:57:26 1997 Jim Wilson <wilson@cygnus.com>
10134
10135 * dwarf2out.c (output_call_frame_info): Remove last change.
10136
13ab2b83
AS
101371997-10-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
10138
10139 * frame.c (__frame_state_for): Execute the FDE insns until the
10140 current pc value is strictly bigger than the target pc value.
10141
066c2fea
JM
10142Tue Oct 7 11:00:42 1997 Jason Merrill <jason@yorick.cygnus.com>
10143
b57062ca 10144 * regclass.c (init_reg_modes): If we can't find a mode for the
066c2fea
JM
10145 register, use the previous one.
10146
2f308fec
RH
10147Tue Oct 7 10:55:34 1997 Richard Henderson <rth@cygnus.com>
10148
10149 * haifa-sched.c (print_block_visualization): Call fprintf directly,
10150 don't sprintf through an alloca'ed buffer.
10151
43984e29
TK
10152Tue Oct 7 10:52:29 1997 Thomas Koenig (ig25@rz.uni-karlsruhe.de)
10153
10154 * reload.c (decompose): Always initialize val.base.
10155
e9e30253
MH
10156Tue Oct 7 10:19:26 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
10157
10158 * m68k/mot3300.h (ASM_OUTPUT_ALIGN): Accept any alignment
10159 instead of aborting.
10160 * dwarf2out.c (output_call_frame_info): Call app_enable and
10161 app_disable to let GNU as accept the generated comments.
10162
496651db
MM
10163Tue Oct 7 11:41:21 1997 Michael Meissner <meissner@cygnus.com>
10164
10165 * tree.h (get_file_function_name): Add declaration.
10166 * dwarf2out.c (output_call_frame_info): No need to cast
10167 get_file_function_name call anymore.
10168 * profile.c (toplevel): Remove get_file_function_name
10169 declaration.
10170 * c-lang.c (finish_file): Ditto.
10171
e6347456
CS
10172Tue Oct 7 10:01:45 1997 Chip Salzenberg <chip@rio.atlantic.net>
10173
10174 * Makefile.in (program_transform_name): Let autoconf substitute
10175 the correct value.
10176
1447b516
JL
10177Tue Oct 7 09:54:35 1997 Jeffrey A Law (law@cygnus.com)
10178
10179 * haifa-sched.c (schedule_block): If the first real insn in a
10180 block has any special notes attached to it, remove them.
10181
1a42ead7
RH
10182Tue Oct 7 09:48:51 1997 Richard Henderson <rth@cygnus.com>
10183
10184 * alpha.h (FLOAT_STORE_FLAG_VALUE): It's 2.0 not 0.5.
10185
4b6140f1
MH
10186Mon Oct 6 12:47:32 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
10187
10188 * m88k.c (m88k_begin_prologue): Remove superfluous backslash.
10189
dc84d7bc
JL
10190Mon Oct 6 12:04:24 1997 Jeffrey A Law (law@cygnus.com)
10191
10192 * Makefile.in (check-g77): New test target.
10193 (CHECK-TARGETS): Add check-g77.
10194
c0da11c4
JM
10195Fri Oct 3 11:56:36 1997 Jason Merrill <jason@yorick.cygnus.com>
10196
10197 * toplev.c (rest_of_compilation): Defer all non-nested inlines.
10198
d8d64559
MM
10199Fri Oct 3 15:49:27 1997 Michael Meissner <meissner@cygnus.com>
10200
10201 * flow.c (print_rtl_with_bb): Cast alloca return value for
10202 in_bb_p.
10203
e414ab29
RH
10204Thu Oct 2 21:15:03 1997 Richard Henderson <rth@cygnus.com>
10205
b57062ca 10206 * i386.h (RETURN_ADDR_RTX): New definition that works for
e414ab29
RH
10207 __builtin_return_address(0) and -fomit-frame-pointer.
10208
15039abe
JW
10209Wed Oct 1 13:43:53 1997 Jim Wilson <wilson@cygnus.com>
10210
10211 Bring over from FSF.
10212 Tue Aug 5 16:10:45 1997 Jason Merrill <jason@yorick.cygnus.com>
10213
b57062ca 10214 * mips.c (function_arg): Handle passing a struct
15039abe
JW
10215 containing a double in a DFmode register without the PARALLEL.
10216
281de624
ILT
10217Wed Oct 1 11:13:25 1997 Ian Lance Taylor <ian@cygnus.com>
10218
d8d64559 10219 * pexecute.c: Use spawn if __CYGWIN32__.
281de624 10220
d8d64559 10221 * pexecute.c: Include "config.h" first, as per autoconf manual
281de624
ILT
10222 (from Paul Eggert <eggert@twinsun.com>).
10223
3cbdd5fc
PDM
10224Wed Oct 1 01:44:36 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
10225
10226 * m68k/x-mot3300 (XCFLAGS): Disable as's long/short jump
10227 optimisation for f/expr.o and f/stb.o.
10228
135d84b8
JL
10229Tue Sep 30 23:48:57 1997 Jeffrey A Law (law@cygnus.com)
10230
10231 * cse.c (this_insn_cc0_mode): Initialize.
10232
55d89719
TK
10233Tue Sep 30 23:09:40 1997 Thomas Koenig <ig25@mvmap66.ciw.uni-karlsruhe.de>
10234
d3878e49
TK
10235 * cccp.c (expand_to_temp_buffer): Initialize all members of obuf.
10236
10237 * haifa-sched.c (get_block_head_tail): Remove unneeded initialization.
55d89719 10238
e9d0757e
RH
10239Tue Sep 30 23:06:43 1997 Richard Henderson <rth@cygnus.com>
10240
10241 * alpha.md (beq): For registers and ints 0-255, use cmpeq+bne, since
10242 that pair will dual-issue on the 21164 and plus+beq won't.
10243 (bne): Likewise for cmpeq+beq.
10244
3f34faec
JW
10245Tue Sep 30 16:07:58 1997 Jim Wilson <wilson@cygnus.com>
10246
10247 * except.c (find_exception_handler_labels): Correct argument to free.
10248
3226dac5 10249Tue Sep 30 11:00:00 1997 Brendan Kehoe <brendan@lisa.cygnus.com>
988cea7d
BK
10250
10251 * except.c (find_exception_handler_labels): Free LABELS when we're
10252 done.
10253
3a6eabfa
JL
10254Mon Sep 29 14:04:35 1997 Jeffrey A Law (law@cygnus.com)
10255
10256 * version.c: Bump for snapshot.
10257
974c50f9
JM
10258Mon Sep 29 10:51:53 1997 Jason Merrill <jason@yorick.cygnus.com>
10259
10260 * flow.c (find_basic_blocks): Mark calls as potentially jumping
10261 to the EH labels.
10262
9b16d2c4
JL
10263Mon Sep 29 09:58:06 1997 Jeffrey A Law (law@cygnus.com)
10264
10265 * configure.in: Substitute for "install" too.
10266 * configure: Rebuilt.
10267
b1e3ddfd
AJ
10268Mon Sep 29 00:38:42 1997 Aaron Jackson <jackson@negril.msrce.howard.edu>
10269
10270 * Makefile.in (bootstrap-lean, compare-lean): New targets.
10271
6662a38d
RH
10272Mon Sep 29 00:18:16 1997 Richard Henderson (rth@cygnus.com)
10273
c02f035f
RH
10274 * alias.c (base_alias_check): Two symbols can conflict if they
10275 are accessed via AND.
10276 (memrefs_conflict_p): Likewise.
10277
7a14fdc5
RH
10278 * alpha.h (SETUP_INCOMING_VARARGS): Emit a blockage insn
10279 after flushing argument registers to the stack.
10280
6662a38d
RH
10281 * Makefile.in (mostlyclean): Remove .regmove files.
10282
f3447109
JM
10283Sun Sep 28 18:59:58 1997 Jason Merrill <jason@yorick.cygnus.com>
10284
10285 * libgcc2.c (__throw): Fix thinko.
10286
37f6b6bf
MM
10287Sun Sep 28 12:00:52 1997 Mark Mitchell <mmitchell@usa.net>
10288
10289 * cplus-dem.c (demangle_template): Add new parameter. Handle new
10290 template-function mangling.
10291 (consume_count_with_underscores): New function.
10292 (demangle_signature): Handle new name-mangling scheme.
10293
adfc539e
PDM
10294Sun Sep 28 01:55:04 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
10295
10296 * flow.c (print_rtl_with_bb): Cast alloca return values for variables
10297 start and end.
10298
92cbe4d2
JL
10299Sun Sep 28 01:05:16 1997 Jeffrey A Law (law@cygnus.com)
10300
10301 * frame.c: Remove last change.
10302 * dwarf2.h: Remove last change.
10303 * tree.h: Add declarations of DWARF2 unwind info support
10304 functions.
10305
2f3ca9e7
JM
10306Sat Sep 27 11:02:38 1997 Jason Merrill <jason@yorick.cygnus.com>
10307
10308 * c-decl.c (init_decl_processing): Add __builtin_dwarf_reg_size.
10309 * tree.h (built_in_function): Likewise.
10310 * expr.c (expand_builtin): Likewise.
10311 * except.h: Likewise.
10312 * dwarf2out.c (expand_builtin_dwarf_reg_size): New fn.
10313 * libgcc2.c (copy_reg): New fn.
10314 (__throw): Use it.
10315
407cb092
PE
10316Fri Sep 26 08:54:59 1997 Paul Eggert <eggert@twinsun.com>
10317
10318 * c-typeck.c (build_binary_op): Warn about comparing signed vs
10319 unsigned if -W is specified and -Wno-sign-compare is not.
10320 * c-decl.c (warn_sign_compare): Initialize to -1.
10321 (c_decode_option): -Wall no longer implies -Wsign-compare.
10322
3ba10494
AS
10323Fri Sep 26 09:00:13 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
10324
a7cc7f29
AS
10325 * frame.c: Include gansidecl.h for PROTO.
10326 * dwarf2out.c: Move inclusion of dwarf2.h down so that PROTO is
10327 defined. Don't declare dwarf2out_cfi_label here.
10328 * dwarf2.h: Add declarations of DWARF2 unwind info support
10329 functions.
10330 * m68k.c: Include dwarf2.h.
10331 (output_function_prologue): Add dwarf2 support.
10332 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM): New macros.
10333 (INCOMING_FRAME_SP_OFFSET): Likewise.
10334
3ba10494
AS
10335 * integrate.c (expand_inline_function): Make sure there is at
10336 least one insn that can be used as an insertion point.
10337
c5cec899
JM
10338Wed Sep 24 21:34:06 1997 Jason Merrill <jason@yorick.cygnus.com>
10339
10340 * dwarf2out.c: s/flag_verbose_asm/flag_debug_asm/
10341
e166cb18
JL
10342Wed Sep 24 22:05:30 1997 Jeffrey A Law (law@cygnus.com)
10343
10344 * version.c: Bump for snapshot.
10345
01a94cba
DE
10346Wed Sep 24 17:36:23 1997 Doug Evans <dje@canuck.cygnus.com>
10347
10348 Bring over from FSF.
10349
10350 Wed Sep 24 19:17:08 1997 Doug Evans <dje@cygnus.com>
10351
10352 * sparc/sparc.md (get_pc_via_call): Renamed from get_pc_sp32.
10353 (get_pc_via_rdpc): Renamed from get_pc_sp64.
10354 * sparc/sparc.c (finalize_pic): Update call to gen_get_pc_via_call.
10355
10356 Wed Sep 24 18:38:22 1997 David S. Miller <davem@tanya.rutgers.edu>
10357
10358 * sparc/sparc.h (ASM_CPU_SPEC): Pass -Av9a for v8plus, ultrasparc.
10359 (TARGET_OPTIONS): Add -malign-loops=, -malign-jumps=,
10360 -malign-functions=.
10361 (sparc_align_{loops,jumps,funcs}_string): Declare.
10362 (sparc_align_{loops,jumps,funcs}): Declare.
10363 (DEFAULT_SPARC_ALIGN_FUNCS): New macro.
10364 (FUNCTION_BOUNDARY): Use sparc_align_funcs.
10365 (STACK_BIAS): Define.
10366 (SPARC_SIMM*_P): Cast to unsigned HOST_WIDE_INT first, then perform
10367 test.
10368 (SPARC_SETHI_P): New macro.
10369 (CONST_OK_FOR_LETTER_P): Use it.
10370 (ASM_OUTPUT_ALIGN_CODE): Define.
10371 (ASM_OUTPUT_LOOP_ALIGN): Define.
10372 * sparc/sparc.c (sparc_align_{loops,jumps,funcs}_string): New globals.
10373 (sparc_align_{loops,jumps,funcs}): New globals.
10374 (sparc_override_options): Handle -malign-loops=, -malign-jumps=,
10375 -malign-functions=.
10376 (move_operand): Use SPARC_SETHI_P.
10377 (arith_double_operand): Cast to unsigned HOST_WIDE_INT first, then
10378 perform test.
10379 (arith11_double_operand): Likewise.
10380 (arith10_double_operand): Likewise.
10381 (finalize_pic): Finish sparc64 support.
10382 (emit_move_sequence): Use SPARC_SETHI_P. Simplify low part of
10383 64 bit constants if able.
10384 (output_fp_move_quad): Don't use fmovq unless TARGET_HARD_QUAD.
10385 (sparc_builtin_saveregs, sparc64 case): Don't save fp regs if
10386 ! TARGET_FPU.
10387 * sparc/sparc.md (*): Use GEN_INT instead of gen_rtx.
10388 (get_pc_sp32): Use for sparc64 as well.
10389 (lo_sum_di_sp{32,64}): Fix handling on 64 bit hosts.
10390 (sethi_di_sp64_const): Likewise.
10391 (movtf_cc_sp64): Check TARGET_HARD_QUAD.
10392 (cmp_zero_extract_sp64): Use unsigned HOST_WIDE_INT in cast.
10393 (ashlsi3, ashldi3, ashrsi3, ashrdi3, lshrsi3, lshrdi3): Likewise.
10394
10395 Tue Sep 23 19:02:46 1997 Doug Evans <dje@cygnus.com>
10396
10397 * sparc/linux-aout.h (COMMENT_BEGIN): Delete.
10398 * sparc/linux.h (COMMENT_BEGIN): Likewise.
10399 * sparc/linux64.h (COMMENT_BEGIN): Likewise.
10400
10401 Tue Sep 23 14:48:18 1997 David S. Miller <davem@tanya.rutgers.edu>
10402
10403 Add sparc64 linux support.
10404 * configure.in (sparc64-*-linux*): Recognize. Add sparc/xm-sparc.h
10405 to xm_file list on 32-bit sparc-linux.
10406 * sparc/xm-sp64.h: New file.
10407 * sparc/linux64.h: New file.
10408 * sparc/xm-linux.h: Include some standard headers if not inhibit_libc.
10409 Don't include xm-sparc.h.
10410 * config/xm-linux.h (HAVE_PUTENV, HAVE_ATEXIT): Define.
10411 * glimits.h (LONG_MAX): Handle sparc64.
10412
10413 Sat Sep 20 03:07:54 1997 Doug Evans <dje@cygnus.com>
10414
10415 * sparc/sysv4.h (ASM_COMMENT_START): Delete.
10416 * sparc.h (ASM_COMMENT_START): Define.
10417 * sparc.c (output_function_prologue): Use it.
10418 (sparc_flat_output_function_{epi,pro}logue): Likewise.
10419
10420 Wed Sep 17 15:04:19 1997 Doug Evans <dje@cygnus.com>
10421
10422 * sparc/sysv4.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Delete,
10423 use sparc.h's copies.
10424 * sparc/sparc.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Print
10425 ascii form as well.
10426
10427 Mon Sep 8 08:45:19 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
10428
10429 * sparc.c (dwarf2out_cfi_label): Add declaration.
10430 (save_regs, output_function_prologue): Remove cast for it.
10431 (sparc_flat_{save_restore,output_function_prologue): Likewise.
10432 ({save,restore}_regs): No longer inline.
10433
ce2157a1
JL
10434Tue Sep 23 12:34:51 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
10435
10436 * fold-const.c (make_range): Correctly handle cases of converting
10437 from unsigned to signed type.
10438
10439Tue Sep 23 12:34:51 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
10440
10441 * fold-const.c (merge_ranges): Make sure that if one range is subset
10442 of another, it will always be the second range. Correct (+,-) case to
10443 account for this.
10444
c5cec899
JM
10445Tue Sep 23 08:32:51 1997 Jason Merrill <jason@yorick.cygnus.com>
10446
10447 * final.c (final_end_function): Also do dwarf2 thing if
10448 DWARF2_DEBUGGING_INFO.
10449 (final_start_function): Likewise.
10450
c107334d
DM
10451Tue Sep 23 01:15:50 1997 David S. Miller <davem@tanya.rutgers.edu>
10452
e13a25d5
DM
10453 * expmed.c (expand_divmod): If compute_mode is not the same as
10454 mode, handle the case where convert_modes() causes op1 to no
10455 longer be a CONST_INT.
10456
c107334d
DM
10457 * reorg.c (dbr_schedule): At end of this pass, add REG_BR_PRED
10458 note holding get_jump_flags() calculation to all JUMP_INSNs.
10459 * rtl.h (enum reg_note): New note types REG_BR_PRED and REG_SAVE_AREA.
10460 * rtl.c (reg_note_name): Add new note types.
10461
8d7532d9
JL
10462Tue Sep 23 00:59:54 1997 Jeffrey A Law (law@cygnus.com)
10463
0774afd7 10464 * rtlanal.c (computed_jump_p): Fix typo in last change.
8d7532d9 10465
7019d00e
L
10466Tue Sep 23 00:42:44 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
10467
10468 * loop.c (indirect_jump_in_function_p): Return 0
10469 by default.
10470
b9dfb357
JL
10471Tue Sep 23 00:33:55 1997 Jeffrey A Law (law@cygnus.com)
10472
10473 * rs6000/xm-rs6000.h: Fix thinko in last change.
10474 * rs6000/xm-sysv4.h: Likewise.
10475
4b7e467b
JW
10476Mon Sep 22 19:33:53 1997 Jim Wilson <wilson@cygnus.com>
10477
10478 * mips.c (save_restore_insns): Only set RTX_FRAME_RELATED_P if store_p.
10479
8c8e6faa
JL
10480Mon Sep 22 14:41:00 1997 Jeffrey A Law (law@cygnus.com)
10481
10482 * reg-stack.c (find_blocks): Fix thinko in last change.
10483
078e983e
AS
104841997-09-21 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
10485
10486 * m68k.c (output_function_prologue): Add dwarf2 support.
10487
10488 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM,
10489 INCOMING_FRAME_SP_OFFSET): New definitions.
b57062ca 10490
d7027667
DM
10491Mon Sep 22 11:36:42 1997 David S. Miller <davem@tanya.rutgers.edu>
10492
9524f769
DM
10493 * combine.c (try_combine): Use NULL_RTX instead of '0' where
10494 appropriate in calls to gen_rtx().
10495 * cse.c (cse_main): Likewise.
10496 * emit-rtl.c (gen_label_rtx): Likewise.
10497 * expr.c (init_expr_once): Likewise.
10498 * haifa-sched.c (flush_pending_lists, sched_analyze_insn,
10499 sched_analyze, init_rgn_data_dependences,
10500 compute_block_backward_dependences): Likewise.
10501 * sched.c (schedule_insns): Likewise.
10502 * varasm.c (immed_double_const): Likewise.
10503
d7027667
DM
10504 * sparc.h (INCOMING_FRAME_SP_OFFSET): Define to
10505 SPARC_STACK_BIAS for sake of dwarf2 on sparc64.
10506
fbf8b71c
KJ
10507Mon Sep 22 11:21:33 1997 J. Kean Johnston <jkj@sco.com>
10508
10509 * i386/sco5.h: Make ELF default file format and add -mcoff/-melf..
10510 (MULTILIB_DEFAULTS): Define.
10511 (ASM_SPEC, CPP_SPEC): Handle -mcoff.
10512 (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Likewise.
10513 (LIBGCC_SPEC): Likewise.
10514 (MASK_COFF, TARGET_COFF, TARGET_ELF): Define.
10515 (SUBTARGET_SWITCHES): Add -mcoff and -melf.
10516 * i386/t-sco5 (CRTSTUFF_T_CFLAGS): Add -fPIC.
10517 (CRTSTUFF_T_CFLAGS_S): Tweak for COFF.
10518 (EXTRA_PARTS, TAROUTOPTS): Delete.
10519 (libgcc1-elf, libgcc2-elf, libgcc-elf targets): Delete.
10520 (MULTILIB_OPTIONS): Define.
10521 (MULTILIB_DIRNAMES, MULTILIB_EXCEPTIONS): Likewise.
10522 (MULTILIB_MATCHE, MULTILIB_EXTRA_OPTS): Likewise.
10523
c14a951f
JL
10524Mon Sep 22 02:10:43 1997 Jeffrey A Law (law@cygnus.com)
10525
10526 * version.c: Bump for snapshot.
10527
7014927a
JL
10528Sun Sep 21 17:45:45 1997 Jeffrey A Law (law@cygnus.com)
10529
37aa45a2
JL
10530 * loop.c (loop_number): Delete function. Change all references
10531 to use uid_loop_num array.
10532 * loop.h (loop_number): Delete declaration.
10533 * unroll.c (unroll_loop): Change "loop_number" references to
10534 use uid_loop_num instead.
10535
b47404d1
JL
10536 * loop.c (loop_unroll_factor): Move outside #ifdef HAIFA
10537 conditional.
10538 (loop_unroll_iter): Remove unused variable and all references.
10539 (loop_optimize): Always allocate and clear space for loop_unroll_factor.
10540 (insert_bct): Fix minor formatting problems.
10541 * loop.h (loop_unroll_factor): Move decl outside #ifdef HAIFA.
10542 (loop_unroll_iter): Removed unused decl.
10543 * unroll.c (unroll_loop): Remove code to set loop_unroll_iter.
10544 Always record the unrolling factor.
10545
cb3bb2a7
JL
10546 * cse.c (simplify_relational_operation): Set h0u just like h0s.
10547 Similarly for h1u and h1s.
10548
d5ff3a2e 10549 * flow.c (jmp_uses_reg_or_mem): Deleted unused function.
2a1777af
JL
10550 (find_basic_blocks): Use computed_jump_p to determine if a
10551 particular JUMP_INSN is a computed jump.
10552 * reg-stack.c (find_blocks): Use computed_jump_p to determine
10553 if a particular JUMP_INSN is a computed jump.
10554 * rtlanal.c (jmp_uses_reg_or_mem): New function.
10555 (computed_jump_p): Likewise.
10556 * rtl.h (computed_jump_p): Declare.
10557 * genattrtab.c (pc_rtx): Define and initialize.
10558 * loop.c (loop_optimize): Always determine if the current
10559 function has a computed jump.
10560 (indirect_jump_in_function_p): Use computed_jump_p to determine
10561 if a particular JUMP_INSN is a computed jump.
10562
7014927a
JL
10563 * loop.c (fix_bct_param): Delete unused function.
10564 (check_bct_param): Likewise.
10565
6d53d7c2
JM
10566Sat Sep 20 16:22:06 1997 Jason Merrill <jason@yorick.cygnus.com>
10567
10568 * frame.c (__deregister_frame): Check properly for initialized object.
10569
5a5e9503 10570Fri Sep 19 20:51:03 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
71e4fbe6
L
10571
10572 * alpha/linux.h (HANDLE_SYSV_PRAGMA): Defined.
10573
272299b9
R
10574Fri Sep 19 18:53:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10575
cc5e1642
R
10576 * jump.c (thread_jumps): check can_reverse_comparison_p before
10577 threading a reversed-condition jump.
10578
272299b9
R
10579 * sched.c (update_flow_info): Don't pass SCRATCH to dead_or_set_p.
10580 * haifa-sched.c (update_flow_info): Likewise.
10581
18511014
JL
10582Thu Sep 18 21:13:40 1997 Jeffrey A Law (law@cygnus.com)
10583
e6493727
JL
10584 * Makefile.in (BOOT_CFLAGS): Use -O2.
10585
1e467e19
JL
10586 * configure.in (strtoul, bsearch): Have autoconf check for these
10587 functions.
10588 * configure, config.in: Rebuilt.
10589
18511014
JL
10590 * m68k/xm-mot3300.h (alloca): Properly declare if __STDC__.
10591 * mips/mips.h (alloca): Likewise.
10592 * rs6000/xm-rs6000.h (alloca): Likewise.
10593 * rs6000/xm-sysv4.h: Likewise.
10594
6020d360
JM
10595Thu Sep 18 14:22:22 1997 Jason Merrill <jason@yorick.cygnus.com>
10596
10597 * final.c (final_scan_insn): Hand BARRIERs off to the dwarf2 code.
10598 * dwarf2out.c (dwarf2out_frame_debug): Pass the whole insn along.
10599 (dwarf2out_stack_adjust): A BARRIER resets the args space to 0.
10600
10601 * except.c (end_eh_unwinder): Subtract 1 from return address.
10602 * libgcc2.c (__throw): Likewise.
10603 (find_exception_handler): Don't change PC here. Compare end with >.
10604
b24bcfb3 10605Thu Sep 18 10:43:07 1997 Nick Clifton <nickc@cygnus.com>
b57062ca 10606
b24bcfb3
NC
10607 * v850.c (compute_register_save_size): Correct register
10608 number.
10609 * v850.md (save_interrupt, return_interrupt): Correct
10610 register number.
10611 * v850/lib1funcs.asm (save_interrupt): Correct register number.
10612 (return_interrupt): Use stack pointer, not element pointer.
10613
93cf819d
BK
106141997-09-18 Brendan Kehoe <brendan@lisa.cygnus.com>
10615
10616 * configure.in, configure: Make sure to create the stage* and include
10617 symbolic links in each subdirectory.
10618
f0501149
JL
10619Thu Sep 18 01:47:06 1997 Jeffrey A Law (law@cygnus.com)
10620
10621 * pa.md (reload_peepholes): Don't allow addresses with side
10622 effects for the memory operand.
10623
4f870c04
JM
10624Wed Sep 17 18:19:53 1997 Jason Merrill <jason@yorick.cygnus.com>
10625
10626 * libgcc2.c (find_exception_handler): Subtract one from our PC when
10627 looking for a handler, to avoid hitting the beginning of the next
10628 region.
10629
10630 * except.c (expand_builtin_set_return_addr_reg): Use force_operand.
10631
4eb66248
JL
10632Wed Sep 17 18:33:59 1997 Jeffrey A Law (law@cygnus.com)
10633
10634 * mips/abi64.h (LONG_MAX_SPEC): Define.
10635 * mips.h (LONG_MAX_SPEC): Define.
10636 (CPP_SPEC): Include long_max_spec.
10637 (EXTRA_SPECS): Include long_max_spec.
10638
44158507
JL
10639Wed Sep 17 14:11:38 1997 Jeffrey A Law (law@cygnus.com)
10640
10641 * v850.c (construct_save_jarl): Fix thinko in last change.
10642
bf520cd9
JL
10643Wed Sep 17 09:53:07 1997 Jeffrey A Law (law@cygnus.com)
10644
10645 * version.c: Bump for snapshot.
10646
255fe733
JM
10647Tue Sep 16 14:22:36 1997 Jason Merrill <jason@yorick.cygnus.com>
10648
c0727e2a
JM
10649 * libgcc2.c (find_exception_handler): Not found is -1.
10650
255fe733
JM
10651 * integrate.c (expand_inline_function): Move expand_start_bindings
10652 after expanding the arguments.
10653
21002281
JW
10654Tue Sep 16 11:13:46 1997 Jim Wilson <wilson@cygnus.com>
10655
10656 * expr.c (expand_expr): Remove previous incorrect change.
10657 If target and slot has no DECL_RTL, then call mark_addressable
10658 again for the slot after we give it RTL.
10659
e693cc28 10660Tue Sep 16 09:18:52 1997 Jason Merrill (jason@cygnus.com)
f633220c 10661
e693cc28
UD
10662 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
10663 again for the slot after we give it RTL.
f633220c 10664
145870b5
NC
10665Tue Sep 16 00:13:20 1997 Nick Clifton <nickc@cygnus.com>
10666
84e75068 10667 * v850.c (register_is_ok_for_epilogue,
145870b5
NC
10668 pattern_is_ok_for_epilogue, construct_restore_jr,
10669 pattern_is_ok_for_prologue, construct_save_jarl): New functions.
10670
84e75068 10671 * v850.h (pattern_is_ok_for_prologue,
145870b5
NC
10672 pattern_is_ok_for_epilogue, register_is_ok_for_epilogue): New
10673 predicates.
10674
84e75068 10675 * v850.md: Replace prologue and epilogue patterns with a
145870b5
NC
10676 match_parallel pattern.
10677
76143254
JL
10678Mon Sep 15 22:53:01 1997 Jeffrey A Law (law@cygnus.com)
10679
10680 * aclocal.m4: Add replacement for AC_PROG_INSTALL.
10681 * configure.in: Use EGCS_PROG_INSTALL.
10682
4401bf24
JL
10683Mon Sep 15 22:40:55 1997 Jim Wilson (wilson@cygnus.com)
10684
10685 * dwarf2out.c (gen_subprogram_die): Handle redefinition of an
10686 extern inline function.
10687
10688Mon Sep 15 22:40:55 1997 Richard Henderson (rth@cygnus.com)
10689
10690 * dwarf2out.c (reg_loc_descriptor): Fix prototype.
10691 (concat_loc_descriptor): New function.
10692 (loc_descriptor): Call it.
10693 (add_AT_location_description): Also elide the descriptor if both
10694 halves of a CONCAT are pseudos.
10695 (add_location_or_const_value_attribute): Recognize CONCAT too.
10696
0d24ff5d
RH
10697Mon Sep 15 15:24:00 1997 Richard Henderson <rth@cygnus.com>
10698
4bb43724
RH
10699 * alpha.md (movdi): Handle CONST_DOUBLE for TARGET_BUILD_CONSTANTS.
10700
0d24ff5d
RH
10701 * alpha/alpha.c (output_prolog): New variable sa_reg. Use it for
10702 out-or-range reg_offset.
10703 (output_epilog): Likewise.
10704
05ef8897
JL
10705Mon Sep 15 15:39:26 1997 Jeffrey A Law (law@cygnus.com)
10706
10707 * cse.c (simplify_relational_operation): If MODE specifies a
10708 mode wider than HOST_WIDE_INT, then the high word of a CONST_INT
10709 is derived from the sign bit of the low word.
10710
ca55abae
JM
10711Mon Sep 15 11:43:38 1997 Jason Merrill <jason@yorick.cygnus.com>
10712
10713 Support dwarf2 unwinding on PUSH_ROUNDING targets like the x86.
10714
10715 * dwarf2.h: Add DW_CFA_GNU_args_size.
10716 * frame.c (execute_cfa_insn): Likewise.
10717 * dwarf2out.c (dwarf_cfi_name, output_cfi): Likewise.
10718 (dwarf2out_args_size, dwarf2out_stack_adjust): New fns.
10719 (dwarf2out_frame_debug): If this isn't a prologue or epilogue
10720 insn, hand it off to dwarf2out_stack_adjust.
10721 (dwarf2out_begin_prologue): Initialize args_size.
10722 * frame.h (struct frame_state): Add args_size.
10723 * libgcc2.c (__throw): Use args_size.
10724 * final.c (final_scan_insn): If we push args, hand off all insns
10725 to dwarf2out_frame_debug.
10726 * defaults.h (DWARF2_UNWIND_INFO): OK for !ACCUMULATE_OUTGOING_ARGS.
10727
10728 * dwarf2out.c dwarf2out_frame_debug): Fix typo.
10729 Handle epilogue restore of SP from FP.
b57062ca 10730 * emit-rtl.c (gen_sequence): Still generate a sequence if the
ca55abae
JM
10731 lone insn has RTX_FRAME_RELATED_P set.
10732
10733 * frame.c (extract_cie_info): Handle "e" augmentation.
10734 * dwarf2out.c (ASM_OUTPUT_DWARF_*): Provide definitions in the
10735 absence of UNALIGNED_*_ASM_OP.
10736 (UNALIGNED_*_ASM_OP): Only provide defaults if OBJECT_FORMAT_ELF.
10737 (output_call_frame_info): Use "e" instead of "z" for augmentation.
10738 Don't emit augmentation fields length.
10739 (dwarf2out_do_frame): Move outside of #ifdefs.
10740 * defaults.h (DWARF2_UNWIND_INFO): Don't require unaligned data
10741 opcodes.
10742
10743 * sparc.h (UNALIGNED_INT_ASM_OP et al): Don't define here after all.
10744 * sparc/sysv4.h (UNALIGNED_INT_ASM_OP): Define here.
10745 * sparc/sunos4.h (DWARF2_UNWIND_INFO): Define to 0.
10746 * sparc/sun4gas.h: New file.
10747 * configure.in: Use sun4gas.h if SunOS 4 --with-gnu-as.
10748
b57062ca 10749 * collect2.c (write_c_file_stat, write_c_file_glob): Declare
ca55abae
JM
10750 __register_frame_table and __deregister_frame.
10751
1d77fa53
BK
107521997-09-15 Brendan Kehoe <brendan@cygnus.com>
10753
10754 * except.c (find_exception_handler_labels): Use xmalloc instead of
10755 alloca, since MAX_LABELNO - MIN_LABELNO can be more than 1 million
10756 in some cases.
10757
8be52aaa
JL
10758Sun Sep 14 21:01:23 1997 Jeffrey A Law (law@cygnus.com)
10759
10760 * Makefile.in: Various changes to build info files
10761 in the object tree rather than the source tree.
10762
a3ee3246
JL
10763Sun Sep 14 12:24:30 1997 Jeffrey A Law (law@cygnus.com)
10764
10765 * fixinc.math: New file to fix math.h on some systems.
10766 * configure.in (freebsd, netbsd): Use fixinc.math on these
10767 systems.
10768 * configure: Rebuilt.
10769
124da275
JL
10770Sun Sep 14 11:11:05 1997 Jeffrey A Law (law@cygnus.com)
10771
10772 * regmove.c (regmove_optimize): If we end up moving the
10773 original insn due to lifetime overlaps, make sure to move
10774 REG_NOTES too.
10775
fca9d4b0
MH
10776Sat Sep 13 15:51:11 1997 Manfred Hollstein <manfred@s-direktnet.de>
10777
10778 * Makefile.in (INSTALL_{PROGRAM,DATA}): Use value found by configure.
10779
326ee7a3
JL
10780Sat Sep 13 12:57:26 1997 Jeffrey A Law (law@cygnus.com)
10781
10782 * haifa-sched.c (add_branch_dependences): Make each insn in
10783 a SCHED_GROUP_P block explicitly depend on the previous insn.
10784
ca55abae
JM
10785Fri Sep 12 13:49:58 1997 Jason Merrill <jason@yorick.cygnus.com>
10786
10787 * except.h: Prototype dwarf2 hooks.
10788 * expr.c: Adjust.
10789
5188d2b2
JW
10790Thu Sep 11 17:43:55 1997 Jim Wilson <wilson@cygnus.com>
10791
10792 * configure.in (native_prefix): Delete.
10793 (mips-dec-netbsd): Don't set prefix.
10794 (*linux*): Don't set prefix.
10795
2e384318
FF
10796Thu Sep 11 15:48:32 1997 Fred Fish <fnf@ninemoons.com>
10797
70988851
FF
10798 * protoize.c: Include <varargs.h> only if HAVE_VARARGS_H is
10799 defined. If not defined, include <sys/varargs.h> if
10800 HAVE_SYS_VARARGS_H is defined.
10801 * configure.in: Test for varargs.h and sys/varargs.h.
10802 * configure: Regenerate with autoconf.
10803 * config.in: Regenerate with autoheader.
10804
2e384318
FF
10805 * cpplib.c (quote_string): Cast first arg of sprintf call
10806 from "unsigned char *" to "char *".
10807 (output_line_command): Ditto.
10808 (macroexpand): Ditto.
10809 (do_line): Cast atoi arg from "unsigned char *" to "char *".
10810
3fb2f401
JL
10811Wed Sep 10 21:37:30 1997 Jeffrey A Law (law@cygnus.com)
10812
f2e4e16f
JL
10813 * version.c: Bump for snapshot.
10814
3fb2f401
JL
10815 * Makefile.in (compare): Exit with nonzero status if there
10816 are comparison failures. Note which files failed the
10817 comparison test in .bad_compare.
10818
d26cb668
L
10819Wed Sep 10 17:05:46 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
10820
10821 * config/alpha/elf.h (CPP_PREDEFINES): Remove -D__PIC__ -D__pic__.
10822
ac64120e
JW
10823Wed Sep 10 16:37:28 1997 Fred Fish <fnf@ninemoons.com>
10824
10825 * Makefile.in (LN, LN_S): New macros, use where appropriate.
10826 * aclocal.m4 (GCC_PROG_LN_S, GCC_PROG_LN): New tests.
10827 * configure.in: Use GCC_PROG_LN_S and GCC_PROG_LN.
10828 * configure: Regenerated.
10829
10830Thu Sep 11 11:09:43 1997 Jeffrey A Law (law@cygnus.com)
10831
10832 * loop.c (strength_reduce): Fix typo.
10833
db87ec0b
JW
10834Wed Sep 10 16:01:15 1997 Jim Wilson <wilson@cygnus.com>
10835
10836 * m88k/m88k.c (struct option): Rename to struct options.
10837 * m88k/dolph.h (INITIALIZE_TRAMPOLINE): Delete here.
10838 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE): Delete ifdef and comments.
10839 * libgcc2.c (__enable_execute_stack): Check for __sysV88__ not
10840 __DOLPHIN__ or sysV88.
10841
04395f96
JW
10842Wed Sep 10 14:58:40 1997 Jim Wilson <wilson@cygnus.com>
10843
10844 * emit-rtl.c (gen_lowpart_common): For a SUBREG, add in word when
10845 create new subreg.
10846
becdcf6d
JL
10847Wed Sep 10 15:19:22 1997 Jeffrey A Law (law@cygnus.com)
10848
10849 * config.sub: Accept 'amigados' for backward compatability.
10850
04395f96 10851Wed Sep 10 14:05:08 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
3979dfb8
JW
10852
10853 * Makefile.in (testsuite/site.exp): New target.
10854 (check-gcc, check-g++): Depend on testsuite/site.exp.
10855 Don't stop for failure.
10856
ca55abae
JM
10857Wed Sep 10 12:59:57 1997 Jason Merrill <jason@yorick.cygnus.com>
10858
10859 * expr.c (expand_builtin): Only support __builtin_dwarf_fp_regnum()
10860 if DWARF2_UNWIND_INFO.
10861
10862Wed Sep 10 11:49:20 1997 Jason Merrill <jason@yorick.cygnus.com>
10863
10864 Add support for exception handling using DWARF 2 frame unwind info.
10865 Currently works on SPARC and MIPS, and almost on x86.
b57062ca 10866
ca55abae
JM
10867 * libgcc2.c (get_reg, put_reg, get_return_addr, put_return_addr,
10868 next_stack_level, in_reg_window): Helper fns.
10869 (__throw): Implement for DWARF2_UNWIND_INFO.
10870
10871 * expr.c (expand_builtin): Handle builtins used by __throw.
10872 * tree.h (enum built_in_function): Add builtins used by __throw.
10873 * c-decl.c (init_decl_processing): Declare builtins used by __throw.
10874 * dwarf2out.c (expand_builtin_dwarf_fp_regnum): Used by __throw.
10875 * except.c (expand_builtin_unwind_init): Hook for dwarf2 __throw.
10876 (expand_builtin_extract_return_addr): Likewise.
10877 (expand_builtin_frob_return_addr): Likewise.
10878 (expand_builtin_set_return_addr_reg): Likewise.
10879 (expand_builtin_eh_stub): Likewise.
10880 (expand_builtin_set_eh_regs): Likewise.
10881 (eh_regs): Choose two call-clobbered registers for passing back values.
10882
10883 * frame.c, frame.h: New files for parsing dwarf 2 frame info.
10884 * Makefile.in (LIB2ADD): New variable. Add $(srcdir)/frame.c.
10885 (libgcc2.a): Use it instead of $(LIB2FUNCS_EXTRA) $(LANG_LIB2FUNCS)
10886 (stmp-multilib): Likewise.
10887 ($(T)crtbegin.o, $(T)crtend.o): Add -fno-exceptions.
10888
10889 * except.c: #include "defaults.h".
10890 (exceptions_via_longjmp): Default depends on DWARF2_UNWIND_INFO.
10891 (emit_throw): Don't defeat assemble_external if DWARF2_UNWIND_INFO.
10892 (register_exception_table_p): New fn.
10893 (start_eh_unwinder): Don't do anything if DWARF2_UNWIND_INFO.
10894 (end_eh_unwinder): Likewise.
10895
b57062ca 10896 * crtstuff.c: Wrap .eh_frame section, use EH_FRAME_SECTION_ASM_OP,
ca55abae
JM
10897 call __register_frame and __deregister_frame as needed.
10898 * varasm.c (eh_frame_section): New fn if EH_FRAME_SECTION_ASM_OP.
10899 * dwarf2out.c (EH_FRAME_SECTION): Now a function-like macro. Check
10900 EH_FRAME_SECTION_ASM_OP.
10901 * sparc/sysv4.h (EH_FRAME_SECTION_ASM_OP): Define.
10902 * mips/iris6.h: (EH_FRAME_SECTION_ASM_OP): Define.
10903 (LINK_SPEC): Add __EH_FRAME_BEGIN__ to hidden symbols.
10904
10905 * dwarf2out.c (output_call_frame_info): If no support for
10906 EXCEPTION_SECTION, mark the start of the frame info with a
10907 collectable tag.
10908 * collect2.c (frame_tables): New list.
10909 (is_ctor_dtor): Recognise frame entries.
10910 (scan_prog_file): Likewise.
10911 (main): Pass -fno-exceptions to sub-compile. Also do collection
10912 if there are any frame entries.
10913 (write_c_file_stat): Call __register_frame_table and
10914 __deregister_frame as needed.
10915 (write_c_file_glob): Likewise.
10916
b57062ca 10917 * defaults.h (DWARF2_UNWIND_INFO): Default to 1 if supported.
ca55abae
JM
10918 Also require unaligned reloc support.
10919 * sparc.h (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
10920 UNALIGNED_DOUBLE_INT_ASM_OP): Define here.
10921 * sparc/sysv4.h: Not here.
10922
10923 * toplev.c (compile_file): Call dwarf2out_frame_{init,finish}.
10924 * dwarf2out.c (dwarf2out_init): Don't call dwarf2out_frame_init.
10925 (dwarf2out_finish): Don't call dwarf2out_frame_finish.
10926
10927 * libgcc2.c (L_eh): Reorganize, moving code shared by different
10928 EH implementations to the top.
10929 (find_exception_handler): Split out. Start from 0. Compare against
10930 end with >=.
10931 (__find_first_exception_table_match): Use it.
10932 * except.c (output_exception_table): Don't do anything if there's
10933 no table. Don't output a first entry of zeroes.
10934 (eh_outer_context): Adjust properly.
10935 (add_eh_table_entry): Use xrealloc.
10936 * toplev.c (compile_file): Just call output_exception_table.
10937
10938Wed Sep 10 11:30:36 1997 Jason Merrill <jason@cygnus.com>
10939
10940 * i386.c (ix86_prologue): Add dwarf2 support for !do_rtl case.
10941
10942Wed Sep 10 08:17:10 1997 Torbjorn Granlund <tege@pdc.kth..se>
10943
10944 * except.c (eh_outer_context): Do masking using expand_and.
10945
b4d940a2
JL
10946Wed Sep 10 01:38:30 1997 Doug Evans <dje@cygnus.com>
10947
10948 Add port done awhile ago for the ARC cpu.
10949 * arc/arc.h: New file.
10950 * arc/arc.c: New file.
10951 * arc/arc.md: New file.
10952 * arc/initfini.c: New file.
10953 * arc/lib1funcs.asm: New file.
10954 * arc/t-arc: New file.
10955 * arc/xm-arc.h: New file.
10956 * ginclude/va-arc.h: New file.
10957 * ginclude/stdarg.h: Include va-arc.h ifdef __arc__.
10958 * ginclude/varargs.h: Likewise.
10959 * Makefile.in (USER_H): Add va-arc.h.
10960 * configure.in (arc-*-elf*): Recognize.
10961 * longlong.h: Add ARC support.
10962
10963Wed Sep 10 01:32:54 1997 Jeffrey A Law (law@cygnus.com)
10964
10965 * expr.c (clear_storage): Use CONST0_RTX instead of const0_rtx.
10966 when clearing non-BLKmode data.
10967
10211581
JL
10968Wed Sep 10 00:29:29 1997 Manfred Hollstein <manfred@s-direktnet.de>
10969
9dfc6eba
MH
10970 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE) Define.
10971 * libgcc2.c (__enable_execute_stack): Provide for sysV88 too.
10972
55259219
MH
10973 * xm-m88k.h (USG): Only define if it hasn't already been defined.
10974
10975 * Makefile.in (risky-stage1): Delete gratutious whitespace.
10976
ee291069
MH
10977 * Makefile.in (clean): Delete libgcc1-test.
10978
10211581
JL
10979 * Makefile.in (INSTALL): cd to $(srcdir) before running texinfo.
10980
10981Tue Sep 9 17:07:36 1997 Stan Cox <coxs@dg-rtp.dg.com>
48f0be1b
SC
10982
10983 * m88k.c (m88k_expand_prologue): Set MEM_IN_STRUCT_P of va_list
10984 template.
10985
ca55abae
JM
10986Tue Sep 9 09:50:02 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
10987
10988 * dwarf2out.c (output_call_frame_info): Call named_section.
10989
8f3d79e0
JL
10990Tue Sep 9 09:12:17 1997 Jeffrey A Law (law@cygnus.com)
10991
10992 * haifa-sched.c (print_value): Fix last change.
10993
ca55abae
JM
10994Tue Sep 9 01:30:37 1997 Jason Merrill <jason@yorick.cygnus.com>
10995
10996 * mips.h (DWARF_FRAME_REGNUM): Use the same numbering regardless of
10997 write_symbols.
10998
10999Mon Sep 8 16:32:43 1997 Jason Merrill <jason@yorick.cygnus.com>
11000
11001 * mips.c (function_prologue): Set up the CFA when ABI_32.
11002
11003 * sparc.c (save_regs): Check dwarf2out_do_frame instead of DWARF2_DEBUG
11004 for dwarf2 unwind info.
11005 (output_function_prologue, sparc_flat_output_function_prologue): Same.
11006
11007 * final.c (final_end_function): Check dwarf2out_do_frame instead
11008 of DWARF2_DEBUG for dwarf2 unwind info.
11009 (final_scan_insn): Likewise.
11010 (final_start_function): Likewise. Initialize dwarf2 frame debug here.
11011 (final): Not here.
11012
11013 * expr.c (expand_builtin_return_addr): Only SETUP_FRAME_ADDRESSES if
11014 count > 0.
11015
11016 * varasm.c (exception_section): Check EXCEPTION_SECTION first.
11017
74aca74b
NC
11018Mon Sep 8 15:15:11 1997 Nick Clifton <nickc@cygnus.com>
11019
11020 * v850.h (ASM_SPEC): Pass on target processor.
11021 (CPP_PREDEFINES): Only define if not already specified.
11022 (TARGET_VERSION): Only define if not already specified.
11023 (MASK_CPU, MASK_V850, MASK_DEFAULT): Bits to specify target
11024 processor.
11025 (EXTRA_SWITCHES): Extra entries in the switches array.
11026 (TARGET_DEFAULT): Set default target processor.
11027
c0b04148
JW
11028Mon Sep 8 18:26:35 1997 Jim Wilson <wilson@cygnus.com>
11029
11030 * m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): In MOTOROLA
11031 cases, add %# and %/, and add : to make them into extended asms.
11032
52b7724b
WL
11033Sun Sep 7 23:57:50 1997 Weiwen Liu <liu@hepunix.physics.yale.edu>
11034
11035 * alias.c (init_alias_analysis): Clean up incompatible pointer
11036 type warning in bzero.
11037 * regmove.c (regmove_optimize): Ditto.
11038 * haifa-sched.c (find_rgns): Ditto.
11039
11040 * haifa-sched.c (print_value): Clean up ptr->int cast
11041 warnings.
11042
0c82f6bf
FF
11043Sun Sep 7 23:18:32 1997 Fred Fish <fnf@ninemoons.com>
11044
11045 * INSTALL: Change 'amigados' to 'amigaos' to match current usage.
11046 * install.texi (Configurations): Ditto.
11047 * config.sub: Ditto.
11048
1fed1f51
WL
11049Sun Sep 7 22:56:56 1997 Weiwen Liu (liu@hepvms.physics.yale.edu)
11050
11051 * Makefile.in (sdbout.o): Depend on insn-config.h.
11052
239e68f6
JW
11053Sun Sep 7 18:44:50 1997 Jim Wilson <wilson@cygnus.com>
11054
11055 * m68k/m68k.h (TARGET_SWITCHES): For 68000, 68302, subtract MASK_68881.
11056 For 68303, 68332, cpu32, subtract MASK_68040_ONLY.
11057
267c09ab
JM
11058Sun Sep 7 18:30:46 1997 Jason Merrill <jason@yorick.cygnus.com>
11059
11060 * dwarf2out.c (dwarf2out_frame_debug): Assume that in a PARALLEL
11061 prologue insn, only the first elt is significant.
11062 (output_call_frame_info): For exception handling, always use 4-byte
11063 fields as specified by the dwarf2 spec.
11064 Don't skip trivial FDEs.
11065
db7cafb0
JL
11066Sun Sep 7 14:19:39 1997 Jeffrey A Law (law@cygnus.com)
11067
11068 * version.c: Bump for snapshot.
11069
11070Sun Sep 7 14:17:36 1997 Torbjorn Granlund (tege@pdc.kth.se)
11071
11072 * expmed.c (expand_divmod): Make op1_is_pow2 depend on unsignedp
11073 for negative constants. Promote EXACT_DIV_EXPR to TRUNC_DIV_EXPR
11074 when op1_is_pow2.
11075
11076Sun Sep 7 13:46:46 1997 Jeffrey A Law (law@cygnus.com)
11077
bf520cd9
JL
11078 * final.c (shorten_branches): During first pass, assume worst
11079 possible alignment for ADDR_VEC and ADDR_VEC_DIFF insns.
db7cafb0
JL
11080
11081 * Makefile.in (distclean): Remove various things left around
11082 by running the testsuite.
11083
7ed46111
MH
11084Sun Sep 7 13:16:06 1997 Manfred Hollstein <manfred@s-direktnet.de>
11085
11086 * configure.in (out_file): Emit definition to config.status in order
11087 to have a defined value for configure.lang.
11088 * configure: Re-built.
11089
e41cea70
JJH
11090Sun Sep 7 09:59:08 1997 Jan-Jaap van der Heijden (J.J.vanderHeijden@student.utwente.nl)
11091
bf520cd9 11092 * configure.in: Make symlink to as-new rather than as.new. Similarly
e41cea70
JJH
11093 for ld-new.
11094 * configure: Rebuilt.
11095
1aeb1f6f
JW
11096Fri Sep 5 16:54:55 1997 Jim Wilson <wilson@cygnus.com>
11097
11098 * profile.c (output_func_start_profiler): Set DECL_EXTERNAL to zero.
11099
770a0113
CK
11100Fri Sep 5 16:16:44 1997 Christian Kuehnke <Christian.Kuehnke@arbi.Informatik.Uni-Oldenburg.DE>
11101
11102 * sparc/sparc.md: Add ultrasparc scheduling support.
11103 * sparc/sparc.h (RTX_COSTS): For MULT give v9 a cost of 25 insns.
11104
f5ffa999
PDM
11105Fri Sep 5 14:04:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
11106
11107 * integrate.c (save_for_inline_copying): Use 0, not NULL_PTR,
11108 as initial value for real_label_map.
11109 (copy_for_inline): Likewise.
11110
acceac1a
R
11111Fri Sep 5 13:36:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
11112
11113 * sched.c (update_flow_info) When looking if to set found_split_dest
11114 or found_orig_dest, look at all parts of a PARALLEL.
11115 * haifa-sched.c (update_flow_info): Likewise.
11116
f84271d9
JL
11117Fri Sep 5 10:08:44 1997 Jeffrey A Law (law@cygnus.com)
11118
11119 * v850: New directory for v850 port.
11120 * v850/lib1funcs.asm: New file.
11121 * t-v850, v850.c, v850.h, v850.md, xm-v850.h: New files.
11122 * ginclude/va-v850.h: New file.
11123 * ginclude/varargs.h, ginclude/stdarg.h: Include va-mn10200.h.
11124 * configure.in (mn10200-*-*): New target.
11125 * configure: Rebuilt.
11126 * config.sub: Handle v850-elf.
b57062ca 11127 * Makefile.in (USER_H): Add va-mn10200.h.
f84271d9
JL
11128 * invoke.texi: Document v850 stuff.
11129
89cc6098
JW
11130Fri Sep 5 09:37:50 1997 Jim Wilson (wilson@cygnus.com)
11131
04940ba5
JW
11132 * sdbout.c (plain_type_1, case ARRAY_TYPE): Verify that TYPE_DOMAIN
11133 has integer TYPE_{MAX,MIN}_VALUE before using them.
11134
89cc6098
JW
11135 * m68k/m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Add
11136 __HPUX_ASM__ versions.
11137
c74f7db8
JL
11138Fri Sep 5 09:08:44 1997 Jeffrey A Law (law@cygnus.com)
11139
bf520cd9 11140 * install.sh: Delete duplicate install script.
c74f7db8 11141
914ec131
SC
11142Thu Sep 4 23:14:27 1997 Stan Cox (coxs@dg-rtp.dg.com)
11143
11144 * reg-stack.c (subst_stack_regs): Pop the stack register for a
11145 computed goto which sets the same stack register.
11146
11147 * reg-stack.c (compare_for_stack_reg): Swap only if the source and
11148 destination are both on the regstack.
11149 (subst_stack_regs_pat): Put the destination at the top of the regstack.
11150
c1090daa
JW
11151Thu Sep 4 15:02:27 1997 Jim Wilson <wilson@cygnus.com>
11152
d5d1738a
JW
11153 * mips.md (nonlocal_goto_receiver): Define.
11154
f4da7881
JW
11155 * profile.c (output_arc_profiler): Check next_insert_after for non
11156 NULL before deferencing it.
11157
c1090daa
JW
11158 * i386/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define to -fPIC.
11159
da594c94
JL
11160Thu Sep 4 14:51:57 1997 Jeffrey A Law (law@cygnus.com)
11161
11162 * i386.h (CPP_CPU_DEFAULT): Avoid using #elif.
11163
3e28fe44
MM
11164Thu Sep 4 15:01:49 1997 Michael Meissner <meissner@cygnus.com>
11165
11166 * toplev.c (rest_of_compilation): For passes starting with
11167 flow_analysis, use print_rtl_with_bb instead of print_rtl.
11168
11169 * print-rtl.c (print_rtl_single): Print a single rtl value to a
11170 file.
11171
11172 * flow.c (print_rtl_with_bb): Print which insns start and end
11173 basic blocks. For the start of a basic block, also print the live
11174 information.
11175
7053ca72
JW
11176Thu Sep 4 11:51:43 1997 Jim Wilson <wilson@cygnus.com>
11177
417b0fa2
JW
11178 * toplev.c (main): Change #elif to #else/#ifdef
11179
7053ca72
JW
11180 * tlink.c: Include ctype.h.
11181 * ginclude/va-mips.h: Add _VA_MIPS_H_ENUM ifdef/define/endif.
11182
f05a8b25
MM
11183Thu Sep 4 11:17:16 1997 Mikeael Meissner (meissner@cygnus.com)
11184
11185 * bitmap.c: Conditionally include stdlib.h.
bf520cd9 11186 (free): Provide a declaration if NEED_DECLARATION_FREE.
f05a8b25 11187
02d7a569
JS
11188Thu Sep 4 09:58:53 1997 Joel Sherrill (joel@OARcorp.com)
11189
11190 * i960/i960.h: Added default for SUBTARGET_SWITCHES macro.
11191
6030b6af
JW
11192Thu Sep 4 09:53:20 1997 Jim Wilson (wilson@cygnus.com)
11193
11194 * profile.c (output_arc_profiler): Verify next_insert_after is an
11195 INSN before and after skipping a stack pop.
11196
04da53bd
R
11197Thu Sep 4 07:39:19 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
11198
11199 * final.c (shorten_branches): Don't count the lengths of deleted
11200 instructions.
11201
780532a4
JL
11202Thu Sep 4 09:43:01 1997 Jeffrey A Law (law@cygnus.com)
11203
11204 * version.c: Bump for snapshot.
11205
22fa5b8a
MM
11206Thu Sep 4 11:04:21 1997 Michael Meissner <meissner@cygnus.com>
11207
11208 * bitmap.h (EXECUTE_IF_AND_IN_BITMAP): New macro, to iterate over
11209 two bitmaps ANDed together.
11210 (bitmap_print): Declare.
11211
11212 * bitmap.c (function_obstack): Don't declare any more.
11213 (bitmap_obstack): Obstack for allocating links from.
11214 (bitmap_obstack_init): New static to say whether to initialize
11215 bitmap_obstack.
11216 (bitmap_element_allocate): Use bitmap_obstack to allocate from.
11217 (bitmap_release_memory): Free all memory allocated from
11218 bitmap_obstack.
11219
11220 * basic-block.h (EXECUTE_IF_AND_IN_REG_SET): New macro, invoke
11221 EXECUTE_IF_AND_IN_BITMAP.
11222
57163df0
JW
11223Wed Sep 3 10:39:42 1997 Jim Wilson <wilson@cygnus.com>
11224
fa8b6024
JW
11225 * alias.c (true_dependence): Address with AND can alias scalars.
11226 (anti_dependence, output_dependence): Likewise.
b57062ca 11227
57163df0
JW
11228 * alias.c (true_dependence): Test x for BLKmode, in addition to mem.
11229
8aa4e786
JS
11230Wed Sep 3 09:28:50 CDT 1997 Joel Sherrill (joel@OARcorp.com)
11231
11232 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h, m68k/rtems.h,
11233 mips/rtems64.h, pa/rtems.h, rs6000/rtems.h, sh/rtems.h,
11234 sparc/rtems.h (subtarget_switches): Removed SUBTARGET_SWITCHES
11235 definitions. Use -qrtems instead of -mrtems.
11236
feb21122
RL
11237Wed Sep 3 09:05:41 1997 Robert Lipe (robert@dgii.com)
11238
11239 * xm-sco5.h (sys_siglist): Define.
11240 (SYS_SIGLIST_DECLARED): Likewise.
11241
704af6a1
JL
11242Tue Sep 2 23:33:33 1997 Jeffrey A Law (law@cygnus.com)
11243
11244 * expr.c (convert_move): Handle truncation from TQFmode to QFmode.
11245
127cd405
TG
11246Wed Sep 3 02:09:30 1997 Torbjorn Granlund <tege@pdc.kth..se>
11247
11248 * except.c (eh_outer_context): Expand masking operation using
11249 expand_binop.
11250
8cf02b47
JW
11251Tue Sep 2 18:09:39 1997 Jim Wilson <wilson@cygnus.com>
11252
11253 * alpha.md (floatdisf2-1): New pattern.
11254
49dad301
JL
11255Tue Sep 2 18:41:55 1997 Jeffrey A Law (law@cygnus.com)
11256
068f1cb8
JL
11257 * xm-svr4.h (SYS_SIGLIST_DECLARED): Define.
11258 * xm-news.h (SYS_SIGLIST_DECLARED): Likewise.
f04e7122 11259 * xm-sysv4.h (SYS_SIGLIST_DECLARED): Likewise.
068f1cb8
JL
11260 * gcc.texi: Note that if you define sys_siglist that you should
11261 also define SYS_SIGLIST_DECLARED.
11262
49dad301
JL
11263 * mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instructions
11264 are relative to the next instruction, not the current instruction.
11265
a1729519
JW
11266Tue Sep 2 14:22:43 1997 Jim Wilson <wilson@cygnus.com>
11267
11268 * local-alloc.c (contains_replace_regs): New function.
11269 (update_equiv_regs): When adding a REG_EQUIV note for a set of a MEM,
11270 verify that there is no existing REG_EQUIV note, and add a call to
11271 contains_place_regs.
11272
290c8b1f
L
11273Tue Sep 2 12:48:11 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
11274
11275 * config/alpha/elf.h (CPP_PREDEFINES): Add -D__PIC__ -D__pic__.
11276 (STARTFILE_SPEC): Always use crtbegin.o%s
11277 (ENDFILE_SPEC): Always use crtend.o%s.
11278
a6a503ed
JW
11279Tue Sep 2 12:00:36 1997 Jim Wilson <wilson@cygnus.com>
11280
11281 * alpha/alpha.h (PREFERRED_RELOAD_CLASS): Return NO_REGS if NO_REGS
11282 is passed in.
11283 * emit-rtl.c (gen_lowpart_common): Add code to convert CONST_INT to
11284 SFmode for 64 bit hosts.
b57062ca 11285
a94729bc
PH
11286Tue Sep 2 13:42:38 1997 Paul N. Hilfinger <hilfingr@CS.Berkeley.EDU>
11287
11288 * fixincludes: Permits spaces between # and define. Discard C++
11289 comments in sys/pci.h on HP/UX 10.20.
11290
c9e03727
JL
11291Mon Sep 1 22:13:18 1997 Jeffrey A Law (law@cygnus.com)
11292
11293 * version.c: Bump for snapshot.
11294
2eddfed1
JL
11295 * pa.c (restore_unscaled_index_insn_codes): New function.
11296 (record_unscaled_index_insn_codes): Likewise.
11297 (output_function_prologue): Call restore_unscaled_index_insn_codes.
11298 (output_function_epilogue): Free memory for unscaled_index_insn_codes.
11299 (pa_reorg): Call record_unscaled_index_insn_codes.
11300
c9e03727
JL
11301 * haifa-sched.c (move_insn): Handle notes correctly for insns
11302 with SCHED_GROUP_P set.
b57062ca 11303
a5d6a95b
L
11304Mon Sep 1 16:58:57 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
11305
11306 * alpha/xm-linux.h (USE_BFD): Undef before define.
11307
bc4ddc77
JW
11308Mon Sep 1 16:25:34 1997 Jim Wilson <wilson@cygnus.com>
11309
11310 * cse.c (cse_insn): Don't record BLKmode values.
11311
f3e0ca6c
SW
11312Mon Sep 1 11:25:47 1997 Stephen Williams (steve@icarus.icarus.com)
11313
11314 * i960.h (LINK_SPEC): Handle "-mjX" and "-mrp" switches.
11315
e3512ac2
JL
11316Mon Sep 1 08:29:46 1997 Jeffrey A Law (law@cygnus.com)
11317
a63d08e6
JL
11318 * cccp.c (sys_errlist): Remove special 4.4bsd declaration.
11319 * collect2.c (sys_errlist): Likewise.
11320 * cpplib.c (sys_errlist): Likewise.
11321 * gcc.c (sys_errlist): Likewise.
11322 * protoize (sys_errlist): Likewise.
11323 * configure.in: Check for strerror.
11324 * xm-freebsd.h (HAVE_STRERROR): Remove definition.
11325 * xm-gnu.h (HAVE_STRERROR): Likewise.
11326 * xm-linux.h (HAVE_STRERROR): Likewise.
11327 * xm-netbsd.h (HAVE_STRERROR): Likewise.
11328 * xm-bsd386.h (HAVE_STRERROR): Likewise.
11329 * xm-cygwin32.h (HAVE_STRERROR): Likewise.
11330 * xm-dos.h (HAVE_STRERROR): Likewise.
11331 * xm-mingw32.h (HAVE_STRERROR): Likewise.
11332 * xm-pa.h (HAVE_STRERROR): Likewise.
11333 * xm-papro.h (HAVE_STRERROR): Likewise.
11334 * xm-sysv4.h (HAVE_STRERROR): Likewise.
11335 * configure, config.in: Rebuilt.
11336
db814993
JL
11337 * Makefile.in: Add several missing "else true" clauses.
11338
e3512ac2
JL
11339 * collect2.c: Change DONT_DECLARE_SYS_SIGLIST to SYS_SIGLIST_DECLARED.
11340 * mips-tfile.c: Likewise.
11341 * gcc.texi: DONT_DECLARE_SYS_SIGLIST: Remove docs.
11342 * xm-linux.h (DONT_DECLARE_SYS_SIGLIST): Delete definition.
11343 * xm-freebsd.h, xm-bsd386.h, xm-sysv4.h, xm-sol2.h: Likewise.
11344 * configure.in: Check for sys_siglist declaration.
11345 * configure, config.in: Rebuilt.
11346
5d84b57e
JS
11347Mon Sep 1 08:04:07 1997 Joel Sherrill (joel@OARcorp.com)
11348
b57062ca 11349 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h,
5d84b57e
JS
11350 m68k/rtems.h, mips/rtems64.h, pa/rtems.h, rs6000/rtems.h,
11351 sparc/rtems.h (subtarget_switches): Added -mrtems as a switch.
11352 * i960/i960.h: Added SUBTARGET_SWITCHES macro.
11353 * rs6000/sysv4.h (extra_subtarget_switches): Added new
11354 macro EXTRA_SUBTARGET_SWITCHES.
11355 * configure.in (sh*-*-rtems*): New target.
11356 * sh/rtems.h: New file.
11357 * sh/sh.h: Added SUBTARGET_SWITCHES macro.
11358 * configure: Rebuilt.
11359
2599dcc7
JW
11360Sat Aug 30 22:54:26 1997 Jim Wilson <wilson@cygnus.com>
11361
11362 * unroll.c (calculate_giv_inc): Handle increment with code PLUS.
11363
3b7e5ef4
DE
11364Sat Aug 30 10:49:46 1997 David Edelsohn <edelsohn@mhpcc.edu>
11365
11366 * rs6000.md: Make DF fused-add operations pay attention to
11367 -mno-fused-add.
11368
5cd5f4a7
JW
11369Fri Aug 29 19:19:54 1997 Jim Wilson <wilson@cygnus.com>
11370
11371 * i386/xm-sysv4.h (DONT_DECLARE_SYS_SIGLIST): Define.
11372
63e7fe9b
JL
11373Fri Aug 29 16:13:51 1997 Jeffrey A Law (law@cygnus.com)
11374
11375 * pa.md (reload_peepholes): Make sure operand is a REG before
11376 examining REGNO. Allow general registers too.
11377
eb7b11fd
JW
11378Fri Aug 29 11:42:04 1997 Jim Wilson <wilson@cygnus.com>
11379
11380 * varasm.c (mark_constants): Don't look inside CONST_DOUBLEs.
11381
c760091a
PT
11382Fri Aug 29 09:33:20 1997 Philipp Thomas (kthomas@lxi165.gwdg.de)
11383
5cd5f4a7 11384 * dwarf2out.c (build_abbrev_table): Use xrealloc, not xmalloc
c760091a
PT
11385 to reallocate abbrev_die_table.
11386
57583338
JW
11387Thu Aug 28 15:14:46 1997 Jim Wilson <wilson@cygnus.com>
11388
11389 * m68k/m68k.md (iorsi_zexthi_ashl16): Disable.
11390
eae4b970
AS
113911997-08-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
11392
4f91a0f8
AS
11393 * Makefile.in (config.status): Depend on version.c
11394
eae4b970
AS
11395 * expr.h (insn_gen_function): Reenable prototype.
11396
11397 * expr.c (move_by_pieces_1, clear_by_pieces_1): Fix prototype of
11398 first parameter.
11399
00fc09e1
JW
11400Thu Aug 28 13:01:43 1997 Jim Wilson <wilson@cygnus.com>
11401
11402 * i386.c (ix86_expand_epilogue): Emit blockage instruction when pic.
11403
2601ebca
JL
11404Thu Aug 28 07:03:15 1997 Jeffrey A Law (law@cygnus.com)
11405
11406 * version.c: Bump for latest snapshot.
11407
11408 * bc-optab.c: Conditionally include stdlib.h.
11409 (free): Provide a declaration if NEED_DECLARATION_FREE.
11410 * tree.c (free): Provide a declaration if NEED_DECLARATION_FREE.
11411 * rtl.h (free): Remove declaration.
11412 * tree.h (free): Remvoe declaration.
11413
11414 * configure: Rebuilt.
11415
e5eb27e5
JL
11416Wed Aug 27 21:32:20 1997 Jeffrey A Law (law@cygnus.com)
11417
11418 * flags.h (flag_move_all_movables): Declare.
11419 (flag_reduce_all_givs): Likewise.
11420 * loop.c (move_movables): Handle flag_move_all_movables.
11421 (strength_reduce): Handle flag_reduce_all_givs.
11422 * toplev.c (flag_move_all_movables): Define.
11423 (flag_reduce_all_givs): Likewise.
11424 (f_options): Add -fmove-all-movables and -freduce-all-givs.
11425 * invoke.texi: Document new options, including alias stuff that
11426 wasn't included last time.
11427
d995a6dc
BM
11428Wed Aug 27 18:08:51 1997 Bob Manson (manson@cygnus.com)
11429
11430 * t-h8300: Use TARGET_LIBGCC2_CFLAGS instead of LIBGCC2_CFLAGS.
11431 * t-mn10200: Ditto.
11432 * t-vxsparc: Ditto.
11433 * t-vxworks68: Ditto.
11434 * t-vxworks960: Ditto.
11435 * t-vx29k: Ditto.
11436
ba64ca33
RH
11437Wed Aug 27 16:35:29 1997 Richard Henderson <rth@cygnus.com>
11438
11439 * alpha/xm-alpha.h (alloca): Define alloca to builtin_alloca for GNUC
11440 if not already defined, and USE_C_ALLOCA not defined.
11441
ca20876d
JW
11442Wed Aug 27 16:08:43 1997 Jim Wilson <wilson@cygnus.com>
11443
7818d6fc
JW
11444 * config.guess: Replace with script that uses ../config.guess.
11445
ca20876d
JW
11446 * config/alpha/elf.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1
11447 if USE_GNULIBC_1 is not defined.
11448
704a6306
RH
11449Wed Aug 27 15:49:12 1997 Richard Henderson <rth@cygnus.com>
11450
11451 * alpha/elf.h (LINK_SPEC): Conditionalize on USE_GNULIBC_1.
11452 * config.guess: Recognize alpha-linux-gnulibc1.
11453 * configure.in (alpha-*-linux-gnulibc1): New target.
11454 (alpha-*-linux-gnu*): Don't build crtbegin/end.
11455
67f68fd2
JW
11456Wed Aug 27 11:52:58 1997 Jim Wilson <wilson@cygnus.com>
11457
11458 * m68k.md (iorsi3_internal): Readd ! TARGET_5200 check lost in
11459 last change.
11460
88016fb7
DE
11461Wed Aug 27 01:56:18 1997 Doug Evans <dje@seba.cygnus.com>
11462
11463 * loop.c (combine_movables): Earlier insns don't match later ones.
11464
bba17b29
L
11465Wed Aug 27 01:24:25 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
11466
11467 * config/linux.h (CC1_SPEC): Define it only if not defined.
11468
11469 * config/m68k/linux.h (CC1_SPEC): Undefine it before include
11470 <linux.h>
11471
11472 * config/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1 if
11473 USE_GNULIBC_1 is not defined.
11474
33d2808b 11475 * config/rs6000/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1.
bba17b29
L
11476
11477 * config/sparc/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined
11478 as 1 if USE_GNULIBC_1 is not defined.
11479
ed4044e0
JL
11480Wed Aug 27 00:49:14 1997 Jeffrey A Law (law@cygnus.com)
11481
f345de42
JL
11482 * reorg.c (dbr_schedule): Allow current_function_return_rtx
11483 to be something other than a REG.
11484 * function.c (expand_function_end): Fix current_function_return_rtx
11485 if it was a pseudo.
11486
ed4044e0
JL
11487 * t-freebsd (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
11488 * x-netbsd: Likewise
11489 * x-dgux (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS
11490 (INSTALL_HEADERS): Delete.
11491 * x-dguxbcs: Likewise.
11492 * x-hp3bsd44: Likewise
11493 * x-pa: Likewise.
11494
47d36400
BS
11495Wed Aug 27 00:30:00 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
11496
11497 * i386.md (pop): pop increments the stack pointer.
11498 (prologue_set_stack_ptr): New pattern.
11499 * i386.c (ix86_expand_prologue): Use prologue_set_stack_ptr
11500 instead of subsi3.
11501
fc79eafe
JW
11502Tue Aug 26 18:50:32 1997 Jim Wilson <wilson@cygnus.com>
11503
11504 * reload.c (find_reloads, case '0'): Reject matching a non-offsettable
11505 address where an offsettable address is required.
11506
c5da853f
MH
11507Tue Aug 26 17:54:56 1997 Michael P. Hayes (michaelh@ongaonga.chch.cri.nz>
11508
11509 * loop.c (check_final_value): Don't miss a biv increment in a
11510 parallel.
11511
d4ef15f2
JW
11512Tue Aug 26 12:03:49 1997 Jim Wilson (wilson@cygnus.com)
11513
11514 * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Check
11515 TYPE_DECL_IS_STUB instead of DECL_NAME.
11516
10549cbd
JW
11517Mon Aug 25 23:27:10 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
11518
11519 * objc/Make-lang.in ($(OBJC_O)): Also depend on cc1obj.
11520
11521Mon Aug 25 23:27:10 1997 Jim Meyering <meyering@eng.ascend.com>
11522
11523 * objc/Make-lang.in ($(OBJC_O)): Also depend on $(GCC_PASSES).
11524
484df988
JL
11525Mon Aug 25 13:12:24 1997 Jeffrey A Law (law@cygnus.com)
11526
11527 * haifa-sched.c (find_pre_sched_live): Remove #if 0 code.
11528 (find_post_sched_live): Likewise.
11529
11530 * haifa-sched.c (schedule_block): Remove old code to get arguments
11531 from hard regs into pseudos early.
11532
39dfb55a
JL
11533Mon Aug 25 08:55:00 1997 Jeffrey A Law (law@cygnus.com)
11534
11535 * version.c: Bump for new snapshot.
11536
11537 * local-alloc.c (update_equiv_regs): All the target to reject
11538 promotion of some REG_EQUAL to REG_EQUIV notes.
11539 * pa.h (DONT_RECORD_EQUIVALENCE): Define.
11540
11541 * pa.c (secondary_reload_class): (mem (mem ... )) does not need
11542 secondary reloads.
11543
11544 * pa.c (hppa_builtin_saveregs): Emit a blockage insn after the
11545 store of the argument registers.
11546
11547Mon Aug 25 08:39:02 1997 Craig Burley (burley@gnu.ai.mit.edu)
11548
11549 * fold-const.c (multiple_of_p): New function.
11550 (fold): Turn some cases of *_DIV_EXPR into EXACT_DIV_EXPR.
11551
d78778eb
JL
11552Mon Aug 25 01:47:41 1997 Jeffrey A Law (law@cygnus.com)
11553
11554 * expr.h (insn_gen_function): Temporarily remove prototype.
11555
feb9ea1a
JW
11556Sun Aug 24 17:22:21 1997 Jim Wilson <wilson@cygnus.com>
11557
11558 * Makefile.in (install-info): Don't cd into srcdir. Add srcdir to
11559 filenames. Use sed to extract base filename for install.
11560
b6ffe602
JC
11561Sat Aug 23 18:19:40 1997 John F. Carr <jfc@mit.edu>
11562
11563 * unroll.c (find_splittable_givs): Only share if two givs have the
11564 same add and multiply values.
11565
2ebfd230
JW
11566Sat Aug 23 14:36:27 1997 Jim Wilson <wilson@cygnus.com>
11567
11568 * m68k/next.h (GO_IF_INDEXABLE_BASE): Fix typo in undef.
11569 * m68k/m68kemb.h (LIB_SPEC): Add missing comment end before it.
11570
251ffdee
JL
11571Sat Aug 23 00:18:22 1997 Jeffrey A Law (law@cygnus.com)
11572
11573 * pa.c (pa_reorg): Always put begin_brtab and end_brtab insns
11574 around branch tables.
11575 * pa.md (begin_brtab, end_brtab): Only emit the .begin_brtab
11576 and .end_brtab directives if TARGET_GAS.
11577
19372aa1
JW
11578Fri Aug 22 14:05:55 1997 Jim Wilson <wilson@cygnus.com>
11579
27314274
JW
11580 * alias.c (true_dependence): Pass x_addr not x to varies.
11581
19372aa1
JW
11582 * acconfig.h (NEED_DECLARATION_CALLOC): Add.
11583 * configure.in: Add GCC_NEED_DECLARATION call for calloc.
11584 * rs6000/xm-rs6000.h (malloc, realloc, calloc, free): Delete
11585 declarations.
11586 * config.in, configure: Regenerate.
11587
2a2c8203
JC
11588Thu Aug 21 23:52:16 1997 John F. Carr <jfc@mit.edu>
11589
11590 * alias.c (find_base_value): Improve handling of PLUS, MINUS, and
11591 LO_SUM.
11592 (record_set): Handle LO_SUM like PLUS.
11593 (init_alias_analysis): When following chains of base addresses,
11594 do not stop on reaching a hard register.
11595
d80357b7
JL
11596Thu Aug 21 20:17:37 1997 Jeffrey A Law (law@cygnus.com)
11597
11598 * version.c: Bump for new snapshot.
11599
b4f32d7b
JW
11600Thu Aug 21 17:28:00 1997 Jim Wilson <wilson@cygnus.com>
11601
11602 * alpha.h (ARCH_ASM_FILE_START): Define.
11603 (ASM_FILE_START): Use ARCH_ASM_FILE_START.
11604 * osf12.h, osf2or3.h (ARCH_ASM_FILE_START): Redefine to null string.
11605
ca363bb6
JL
11606Thu Aug 21 10:22:19 1997 Jeffrey A Law (law@cygnus.com)
11607
11608 * Makefile.in (install-common): Put gcov comment at start of line.
11609
7557aa98
JL
11610Wed Aug 20 22:47:33 1997 Jeffrey A Law (law@cygnus.com)
11611
11612 * alias.c (init_alias_analysis): When simplifying the reg_base_value
11613 array, simplify entries for hard registers too.
11614
c34e3ae4
DL
11615Wed Aug 20 12:35:47 1997 Dave Love <d.love@dl.ac.uk>
11616
11617 * dwarf2.h (enum dwarf_call_frame_info): Remove trailing comma from
11618 list.
11619
e3eef942
JW
11620Wed Aug 20 11:58:33 1997 Jim Wilson <wilson@cygnus.com>
11621
11622 * stmt.c (start_cleanup_deferal, end_cleanup_deferal): Test
11623 block_stack before dereferencing it.
11624
11625Wed Aug 20 11:57:11 1997 Michael Meissner <meissner@cygnus.com>
246853b9
MM
11626
11627 * rs6000.h (ISSUE_RATE): Define instead of MACHINE_issue_rate.
11628
04f41951
JM
11629Tue Aug 19 17:10:56 1997 Jason Merrill <jason@yorick.cygnus.com>
11630
11631 * cplus-dem.c: Add 'extern' to prepends_underscore.
11632
e933cbe0
JL
11633Tue Aug 19 09:34:57 1997 Jeffrey A Law (law@cygnus.com)
11634
62d65906
JL
11635 * haifa-sched.c (ISSUE_RATE): Renamed from MACHINE_issue_rate.
11636 (get_issue_rate): Delete.
11637 * pa.h (ISSUE_RATE): Define.
11638
2da05a5b
JL
11639 * configure.in: Turn on haifa by default for the PA.
11640 * configure: Rebuilt.
11641 * pa.c (override_options): Accept -mschedule=7200 option.
11642 (pa_adjust_cost): No longer need to scale costs for newer
11643 processors.
11644 * pa.h (enum processor_type): Add PROCESSOR_7200.
11645 * pa.md: Revamp scheduling parameters to work better with
11646 haifa. Add scheduling parameters for the 7200.
11647
4f64eaca
JL
11648 * haifa-sched.c (move_insn): Reemit notes for SCHED_GROUP_P
11649 insns too.
11650 (schedule_block): When adjusting basic_block_{head,end}, account
11651 for movement of SCHED_GROUP_P insns too.
11652
11653 * haifa-sched.c (debug_dependencies): Fix thinko.
11654
e933cbe0
JL
11655 * Makefile.in (EXPECT, RUNTEST, RUNTESTFLAGS): Define.
11656 (site.exp, check, check-g++, check-gcc): New targets.
11657
4f64eaca 11658 * haifa-sched.c: Make lots of variables static.
61822835 11659
e9576d2c
L
11660Tue Aug 19 07:18:34 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
11661
11662 * expr.h, real.h: Finish prototyping.
11663
61822835
JL
11664Mon Aug 18 21:49:02 1997 Jim Wilson <wilson@cygnus.com>
11665
11666 * reload.c (find_reloads): Add code to convert RELOAD_FOR_OPADDR_ADDR
11667 reloads to RELOAD_FOR_OPERAND_ADDRESS reloads.
11668 * reload1.c: Undo bugfix from Aug 11.
11669
f24b370a
MM
11670Mon Aug 18 17:39:02 1997 Mike Meissner <meissner@cygnus.com>
11671
11672 * configure.in ({powerpc,rs6000}*-*-*, --with-cpu): Remove single
11673 quotes around the name.
11674 * configure: Regenerate.
11675
1c4c5851
JW
11676Mon Aug 18 13:46:47 1997 Jim Wilson <wilson@cygnus.com>
11677
11678 * Makefile.in (stmp-multilib-sub): Fix typo in last change.
11679
71abb567
MH
11680Thu Aug 7 10:33:13 1997 Manfred Hollstein <manfred@s-direktnet.de>
11681
11682 * Makefile.in (sub-makes): Pass the current value of LANGUAGES down
11683 to sub-makes to avoid building more passes than the user might have
11684 requested on the command line.
11685
6042434a
DL
11686Sun Aug 17 15:42:17 1997 Dave Love (d.love@dl.ac.uk)
11687
11688 * configure.in: Expurgate `broken_install' (install is
11689 autoconfed).
11690
11691 * configure.lang: Substitute autoconfed ${INSTALL} (not currently
11692 relevant).
11693
38ea060f
JL
11694Sat Aug 16 01:08:12 1997 Jeffrey A Law (law@cygnus.com)
11695
11696 * loop.c (is_power_of_2, is_conditional_branch): Delete unused
11697 functions and declarations.
11698 (analyze_loop_iterations): Use condjump_p.
11699 (insert_bct): Likewise. Use exact_log2.
b57062ca 11700
f187056f
JL
11701Fri Aug 15 23:48:32 1997 Jeffrey A Law (law@cygnus.com)
11702
11703 * haifa-sched.c (find_post_sched_live): Call FREE_REG_SET as needed.
11704 (schedule_region): Likewise.
11705 (schedule_insns): Likewise.
11706
11707 * PROJECTS: Update with Haifa stuff.
11708
9af06254
JL
11709Fri Aug 15 12:49:56 1997 Jeffrey A Law (law@cygnus.com)
11710
11711 * version.c: Change the version string to look like:
11c21791 11712 egcs-2.90.00 970814 (gcc2-970802 experimental).
9af06254 11713
0945e937
JL
11714 * loop.c (is_conditional_branch): Make definition match declaration.
11715
9af06254
JL
11716 * gcc.c: Take out experimental snapshot warning message.
11717
ebc25a17
MM
11718Fri Aug 15 13:43:39 1997 Michael Meissner <meissner@cygnus.com>
11719
11720 * haifa-sched.c (debug_dependencies): Use GET_NOTE_INSN_NAME to
11721 print out the names of the notes. Print out the name of the insn
11722 that is not a note, and not an {,CALL_,JUMP_}INSN.
11723
610ce97e
JM
11724Wed Aug 13 17:32:38 1997 Jason Merrill <jason@yorick.cygnus.com>
11725
11726 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
11727 again for the slot after we give it RTL.
11728
992d1248
DE
11729Wed Aug 13 01:03:37 1997 Doug Evans <dje@canuck.cygnus.com>
11730
11731 * configure.in (haifa configury): Fix typo.
11732 * configure: Regenerate.
11733
7bb6fbd1
JL
11734Tue Aug 12 10:20:36 1997 Jeffrey A Law (law@cygnus.com)
11735
11736 * version.c: Bump version to "gcc-3.0.0 970802 experimental".
11737
11738 * gcc.info*: Rebuilt.
11739
11740 * COPYING.g77, README.g77: New files.
11741 * real.c (ereal_unto_float, ereal_unto_double): New functions.
11742 * real.h (ereal_unto_float, ereal_unto_double): Declare them.
11743 (REAL_VALUE_UNTO_TARGET_DOUBLE, REAL_VALUE_UNTO_TARGET_SINGLE): Define.
11744
8c660648
JL
11745Mon Aug 11 14:50:55 1997 Jeffrey A Law (law@cygnus.com)
11746
11747 * Integrate Haifa instruction scheduler.
11748 * Makefile.in (ALL_CFLAGS): Add SCHED_CFLAGS. Prefix all references
11749 to sched with $(SCHED_CFLAGS.
11750 * configure.in: Handle --enable-haifa.
11751 * configure: Rebuilt.
11752 * flags.h: Add new flags for haifa instruction scheduler.
11753 * genattrtab.c (expand_units): For haifa, don't subtract one
11754 when computing blockage.
11755 * toplev.h (flag_schedule_interblock): Haifa scheduler flag.
11756 (flag_schedule_speculative): Ditto.
11757 (flag_schedule_speculative_load): Ditto.
11758 (flag_schedule_speculative_load_dangerous): Ditto.
11759 (flag_schedule_reverse_before_reload): Ditto.
11760 (flag_schedule_reverse_after_reload): Ditto.
11761 (flag_branch_on_count_reg): Ditto.
11762 (f_options): Add Haifa switches.
11763 (main): Turn off some Haifa options if appropriate macro is
11764 defined. Process Haifa switches.
11765 * unroll.c (iteration_info): No longer static, since Haifa
11766 scheduler uses it.
11767 (unroll_loop): Inform HAIFA scheduler about loop unrolling factor.
11768 * unroll.c (unroll_loop): Set loop_unroll_iter, loop_start_value.
11769 * loop.h (loop_unroll_factor, loop_number): Add HAIFA decls.
11770 * loop.h (loop_initial_value,loop_unroll_iter): New globals.
11771 * loop.c (loop_optimize): If HAIFA is defined, allocate additional
11772 storage for the Haifa scheduler.
11773 (mark_loop_jump): If HAIFA defined, set LABEL_OUTSIDE_LOOP_P and
11774 LABEL_NEXTREF.
11775 (strength_reduce): If HAIFA and HAVE_decrement_and_branch_on_count
11776 are defined, call analyze_loop_iterations and insert_bct to use
11777 countdown loops.
11778 (record_giv): Refine test for jumps out of loops if HAIFA is
11779 defined.
11780 (analyze_loop_iterations): New function to identify if we can use
11781 a countdown loop.
11782 (insert_bct): Insert countdown loop.
11783 (instrument_loop_bct): Low level code to insert countdown loop.
11784 (loop_number): Calculate UID of loop.
11785 (indirect_jump_in_function_p): Return true if an indirect jump is
11786 in the function.
11787 (is_power_of_2): Return true if value is a power of 2.
11788 (is_conditional_branch): Return true if insn is a conditional
11789 jump.
11790 (fix_bct_param): Process -fbct-{min,max}-N switches.
11791 (check_bct_param): Return true if loop should be instrumented.
11792 * loop.c (loop_initial_value,loop_unroll_iter): New globals.
11793 (loop_optimize): Initialize.
11794 (get_condition_for_loop): Ditto.
11795 * loop.c (strength_reduce): Inside of code that uses #ifdef
11796 HAVE_decrement_and_branch_on_count code, test it to make sure the
11797 condition is true.
11798 (instrument_loop_bct): Ditto.
11799 * haifa-sched.c: New file.
b57062ca 11800
8c660648
JL
11801
11802 * Integrate regmove pass.
11803 * Makefile.in (OBJS): Add regmove.o
11804 (regmove.o): Add dependencies.
11805 * flow.c (find_use_as_address): No longer static.
11806 * rtl.h (find_use_as_address): Declare.
11807 * toplev.c (regmove_dump, flag_regmove): Define.
11808 (f_options): Add -fregmove.
11809 (regmove_dump_file, regmove_time): Define.
11810 (fatal_insn): Close the regmove dump file.
11811 (compile_file): Initialize regmove_time; open/close the regmove dump
11812 file as needed. Print regmove time as needed.
11813 (rest_of_compilation): Run regmove pass if requested, dump
11814 RTL after regmove if requested.
11815 (main): If -O2 or more, turn on regmove. Handle dump switches.
11816 * regmove.c: New file.
b57062ca 11817
aa32d841
JL
11818Mon Aug 11 14:15:02 1997 Jeffrey A Law (law@cygnus.com)
11819
11820 * Integrate tlink patch from jason@cygnus.com
11821 * gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
11822 (process_command): Increment n_switches for them. Don't discard
11823 their args. Validate them.
11824 (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
11825 From Rohan Lenard.
11826 (process_command): Set include_prefixes from COMPILER_PATH.
11827 (main): Set COLLECT_GCC_OPTIONS sooner.
11828 * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
11829 * tlink.c, hash.c, hash.h: New files.
11830 * Makefile.in (USE_COLLECT2): Always use collect2.
11831 (collect2): Depend on and link in hash.o and tlink.o.
11832 (tlink.o, hash.o): Add dependencies.
11833
5fa39bfe
JL
11834Mon Aug 11 10:04:49 1997 Jeffrey A Law (law@cygnus.com)
11835
9ae8ffe7
JL
11836 * Integrate alias analysis changes from jfc@mit.edu
11837 * Makefile.in (OBJS): Add alias.o
11838 (alias.o): Add dependencies.
11839 * alias.c: New file.
11840 * sched.c: Remove alias analysis code. It lives in alias.c now.
9ae8ffe7 11841 (sched_analyze_2): Add new arguments to true_dependence.
9ae8ffe7
JL
11842 (schedule_insns): Always call init_alias_analysis.
11843 * calls.c (expand_call): Note calls to malloc, calloc, and realloc;
11844 mark return value from such functions as a pointer and keep track of
11845 them for alias analysis. If a return value from a function is a
11846 pointer, mark it as such.
11847 * combine.c (distribute_notes): Handle REG_NOALIAS.
11848 * cse.c (struct write_data): Delete. No longer needed.
11849 (invalidate): Don't call set_nonvarying_address_components anymore.
11850 Use true_dependence to decide if an entry should be removed from
11851 the hash table.
11852 (invalidate_memory): Remove WRITES argument, simplify appropriately.
11853 Fix all callers.
11854 (note_mem_written): Similarly for WRITE_PTR argument.
11855 (invalidate_from_clobbers): Similarly for W argument.
11856 (invalidate_for_call): Remove memory elements from the hash table.
11857 (refers_to_mem_p, cse_rtx_addr_varies_p): Deleted.
11858 (cse_rtx_varies_p): New function. Derived from old
11859 cse_rtx_addr_varies_p.
11860 (cse_insn): Remove WRITES_MEMORY and INIT variables and all references.
11861 Don't call note_mem_written anymore. Stack pushes invalidate the stack
11862 pointer if PUSH_ROUNDING is defined. No longer need to call
11863 cse_rtx_addr_varies_p to decide if a MEM should be invalidated.
11864 (skipped_writes_memory): Remove variable.
11865 (invalidate_skipped_set): Simplify and wewrite to use invalidate_memory.
11866 (invalidate_skipped_block): Simplify for new alias analysis code.
11867 (cse_set_around_loop): Likewise.
11868 (cse_main): Call init_alias_analysis.
11869 * flags.h (flag_alias_check, flag_argument_noalias): Declare.
11870 * toplev.c (flag_alias_check, flag_argument_noalias): Define.
11871 (f_options): Add new alias checking arguments.
11872 (main): Set flag_alias_check when optimizing.
11873 * local_alloc (validate_equiv_mem_from_store): Add new arguments
11874 to true_dependence.
11875 (memref_referenced_p): Likewise.
11876 * loop.c (NUM_STORES): Increase to 30.
11877 (prescan_loop): Only non-constant calls set unknown_address_altered.
11878 (invariant_p): Add new arguments to true_dependence.
11879 (record_giv): Initialize unrolled and shared fields.
11880 (emit_iv_add_mult): Call record_base_value as needed.
11881 * loop.h (struct induction): Add unrolled and shared fields.
11882 * unroll.c (unroll_loop): Call record_base_value as needed.
11883 (copy_loop_body): Likewise.
11884 (final_biv_value): Likewise.
11885 (final_giv_value): Likewise.
11886 (find_splittable_regs): Likewise. Only create one new pseudo
11887 if we have multiple address GIVs that were combined with the same
11888 dst_reg GIV. Note when a new register is created due to unrolling.
11889 * rtl.c (reg_note_name): Add REG_NOALIAS.
11890 * rtl.h (enum reg_note): Similarly.
11891 (rtx_varies_p, may_trap_p, side_effects_p): Declare.
11892 (volatile_refs_p, volatile_insn_p, remove_note): Likewise.
11893 (note_stores, refers_to_regno_p, reg_overlap_mentioned_p): Likewise.
11894 (true_dependence, read_dependence, anti_dependence): Likewise.
11895 (output_dependence, init_alias_analysis, end_alias_analysis): Likewise.
11896 (mark_user_reg, mark_reg_pointer): Likewise.
11897
11898
11899 * Integrate reload bugfix from Wilon which enables the PA port
5fa39bfe 11900 to bootstrap again.
38e01259 11901 * reload1.c (reload): Sum needs for both OPADDR_ADDR and
5fa39bfe
JL
11902 OPERAND_ADDRESS when computing how many registers an insn needs.
11903 (reload_reg_free_p): OPADDR_ADDR and OPERAND_ADDRESS reloads do
11904 conflict.
11905 (reload_reg_free_before_p): Treat OPERAND_ADDRESS reloads just like
11906 OPADDR_ADDR reload.
11907 (reload_reg_reaches_end_p): For RELOAD_FOR_OPADDR_ADDR insns, registers
11908 in reload_reg_use_in_op_addr do not reach the end.
11909 do not reach the end.
11910 (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
11911 RELOAD_FOR_OPERAND_ADDRESS.
11912
11913Sun Aug 10 12:00:20 1997 Jeffrey A Law (law@cygnus.com)
11914
2dcfcb56 11915 * egcs project officially starts.
52267fcb
JM
11916
11917Local Variables:
11918add-log-time-format: current-time-string
11919End: