]> gcc.gnu.org Git - gcc.git/blob - gcc/ChangeLog
varasm.c (output_constant_pool): Fix dumb thinko in last change.
[gcc.git] / gcc / ChangeLog
1 Wed Feb 18 23:19:52 1998 Jeffrey A Law (law@cygnus.com)
2
3 * varasm.c (output_constant_pool): Fix dumb thinko in last
4 change.
5
6 * pa.h (ASM_OUTPUT_FUNCTION_PREFIX): Correctly translate from
7 a function name to a section name.
8
9 1998-02-18 Doug Evans <devans@cygnus.com>
10
11 * tree.h (merge_machine_{type,decl}_attributes): Declare.
12 (split_specs_attrs, strip_attrs): Add prototypes.
13 * tree.c (merge_machine_{type,decl}_attributes): New functions.
14 * c-decl.c (duplicate_decls): Call merge_machine_decl_attributes.
15 Update olddecl's attributes too.
16 * c-common.c (strip_attrs): New function.
17 * c-typeck.c (common_type): Call merge_machine_type_attributes.
18 * varasm.c (make_function_rtl): New target macro REDO_SECTION_INFO_P.
19 (make_decl_rtl): Likewise.
20
21 1998-02-18 Jim Wilson <wilson@cygnus.com>
22
23 * c-decl.c (shadow_tag_warned): Call split_specs_attrs.
24
25 Wed Feb 18 09:09:50 1998 Jeffrey A Law (law@cygnus.com)
26
27 Remove this change until we can fix it correctly.
28 * collect2.c: Bracket declaration of 'exportf' and
29 'full_real_ld_suffix'.
30
31 Wed Feb 18 08:44:25 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
32
33 * Makefile.in (STAGESTUFF): Add genrtl.c, genrtl.h and gengenrtl.
34
35 Tue Feb 17 23:30:20 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
36
37 * c-common.c (c_expand_start_cond, c_expand_end_cond,
38 c_expand_start_else): Don't warn about non-ambiguous else even if
39 braces are missing.
40
41 Tue Feb 17 23:56:50 1998 Robert Lipe <robertl@dgii.com>
42
43 * sco5.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT,
44 ASM_OUTPUT_LONG_DOUBLE): Delete. Use the ones from i386.h
45 instead.
46
47 Tue Feb 17 22:56:14 1998 Richard Henderson <rth@cygnus.com>
48
49 * combine.c (simplify_rtx): Obey CLASS_CANNOT_CHANGE_SIZE when
50 simplifying a subreg of a hard reg.
51 (expand_compound_operation): Likewise.
52 (force_to_mode): Likewise.
53
54 Tue Feb 17 22:37:22 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
55
56 * fold-const.c: Include "system.h" to get stdlib.h and stdio.h.
57 (lshift_double): Add parentheses around + or - inside shift.
58 (rshift_double): Likewise.
59 (size_int_wide): Explicitly set type of `bit_p' to `int'.
60
61 * Makefile.in (fold-const.o): Depend on system.h.
62
63 * Makefile.in (gcc.o): Depend on system.h, in accordance with last
64 change to gcc.c.
65
66 * haifa-sched.c: Include "system.h" to get <stdlib.h> and <stdio.h>.
67 (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
68 (sched_note_set): Remove unused parameter `b', all callers changed.
69 (schedule_block): Likewise for `rgn'.
70 (split_hard_reg_notes): Likewise for `orig_insn'.
71 (check_live): Likewise for `trg'.
72 (update_live): Likewise.
73 (check_live_1): Explcitly declare variable `i' as int.
74 (update_live_1): Likewise.
75 (insn_issue_delay): Remove unused variable `link'.
76 (sched_analyze_2): Add default case in enumeration switch.
77 (schedule_insns): Remove unused variable `i'.
78
79 * Makefile.in ($(SCHED_PREFIX)sched.o): Depend on system.h.
80
81 Tue Feb 17 22:31:04 1998 Jeffrey A Law (law@cygnus.com)
82
83 * loop.c (rtx_equal_for_loop_p): Add some braces to disambiguate
84 a dangling else clause.
85
86 Tue Feb 17 21:28:12 1998 Gavin Koch <gavin@cygnus.com>
87
88 * mips/mips.h (CAN_ELIMINATE): Don't eliminate the frame
89 pointer for the stack pointer in MIPS16 and 64BIT.
90
91 Tue Feb 17 21:17:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
92
93 * rtl.h (force_line_numbers, restore_line_number_status): Declare.
94 * emit-rtl.c (force_line_numbers, restore_line_number_status):
95 New functions.
96 * stmt.c (struct nesting): Replace seenlabel with line_number_status.
97 (expand_start_case): Adjust to this change.
98 (check_seenlabel): New function.
99 (pushcase, pushcase_range, expand_endcase): Use it.
100
101 Tue Feb 17 10:14:32 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
102
103 * i386.md (adddi3): Add =!r,0,0,X alternative.
104
105 Mon Feb 16 16:13:43 1998 David Edelsohn <edelsohn@mhpcc.edu>
106
107 * rs6000.h (MY_ISCOFF): Add numeric value of U803XTOCMAGIC.
108 * x-aix31 (INSTALL): Delete.
109
110 Mon Feb 16 09:24:32 1998 Gavin Koch <gavin@cygnus.com>
111
112 * mips/mips.c (mips_expand_epilogue): Update tsize_rtx if
113 tsize changes to something other than zero.
114
115 Mon Feb 16 09:11:48 1998 Gavin Koch <gavin@cygnus.com>
116
117 * ginclude/va-mips.h: Replace casts of pointers to int with
118 casts of pointers to __PTRDIFF_TYPE__.
119
120 Mon Feb 16 08:17:14 1998 John Carr <jfc@mit.edu>
121
122 * loop.c (strength_reduce, record_biv, record_giv): Use
123 HOST_WIDE_INT_PRINT_DEC to print CONST_INT values.
124
125 1998-02-16 Jason Merrill <jason@yorick.cygnus.com>
126
127 * tree.c (first_rtl_op): New fn.
128 (unsave_expr_now): Use it.
129 * print-tree.c (print_node): Likewise.
130 * tree.c (has_cleanups): New fn.
131 * fold-const.c (fold, case CLEANUP_POINT_EXPR): Use it. Be more
132 conservative about pushing the cleanup point down.
133 * tree.h: Declare them.
134
135 Sun Feb 15 23:28:44 1998 Jeffrey A Law (law@cygnus.com)
136
137 * toplev.c (flag_schedule_reverse_before_reload): Delete variable.
138 (flag_schedule_reverse_after_reload): Likewise.
139 (f_options): Remove reverse scheduling support.
140 * flags.h (flag_schedule_reverse_before_reload): Delete declaration.
141 (flag_schedule_reverse_after_reload): Likewise.
142 * haifa-sched.c (rank_for_schedule): Remove support for reverse
143 scheduling.
144
145 Sun Feb 15 21:33:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
146
147 * gcc.c: Get system includes, prototypes and macros via "system.h"
148 instead of doing it manually. Change all calls of the ctype
149 macros to custom versions defined in "system.h".
150
151 * system.h: Fix return type of bcmp prototype from `void' to `int'.
152 Make bcopy, bcmp and bzero prototypes explicitly `extern'.
153 Add a prototype for getenv.
154
155 Sun Feb 15 17:05:41 1998 Jim Wilson <wilson@cygnus.com>
156
157 * mips/mips.h (INITIAL_ELIMINATION_OFFSET): Readd Jun 6 change.
158
159 Sun Feb 15 15:23:15 1998 John Carr <jfc@mit.edu>
160
161 * alias.c: Include <stdlib.h> and <string.h>.
162 (init_alias_analysis): Pass NULL_RTX instead of 0 to record_set.
163
164 Sat Feb 14 11:23:09 PST 1998 Jeff Law (law@cygnus.com)
165
166 * version.c: Bump for snapshot.
167
168 Sat Feb 14 05:08:21 1998 Richard Earnshaw (rearnsha@arm.com)
169
170 * arm.md (movsfcc): Also validate operands[3] when compiling hard
171 float.
172 (movdfcc): Only accept fpu_add_operand for operands[3].
173
174 * arm/t-semi (STMP_FIXPROTO): Define to nothing.
175 * arm/t-semiaof (STMP_FIXPROTO): Likewise.
176
177 Sat Feb 14 02:02:41 1998 Jeffrey A Law (law@cygnus.com)
178
179 * varasm.c (output_constant_pool): Bring back 'done' label inside
180 an appropriate #ifdef.
181
182 * bitmap.c (bitmap_element_allocate): Wrap variable 'i' in an
183 appropriate #ifdef.
184 (bitmap_copy, bitmap_operation): Likewise.
185 * combine.c (combinable_i3pat): Similarly for 'src'.
186 * function.c (fixup_var_refs_1): Similarly for 'outerdest'.
187 (locate_and_pad_parm): Similarly for 'reg_parm_stack_space'.
188 * regclass.c (copy_cost): Similarly for 'secondary_class'.
189 * reload.c (make_memloc): Simliarly for 'i'.
190 (find_reloads_address_1): Similarly for 'link'.
191 * reload1.c (reload): Similarly for 'previous_frame_pointer_needed'.
192 (emit_reload_insns): Similarly for 'second_reloadreg'.
193 * unroll.c (iteration_info): Similarly for 'v'.
194
195 * caller-save.c (insert_save_restore): Remove unused variable 'i'.
196 * calls.c (expand_call): Similarly for 'i'.
197 (emit_library_call, emit_library_call_value): Similarly for 'mode'.
198 * fold-const.c (strip_compund_expr): Similarly for 'type'.
199 * function.c (fixup_var_refs_1): Similarly for 'width'.
200 (fixup_memory_subreg): Similarly for 'saved'.
201 (locate_and_pad_parm): Similarly for 'boundary_in_bytes.'
202 (setjmp_protect): Similarly for 'sub'.
203 (thread_prologue_and_epilogue_insns): Similarly for 'insn'.
204 * loop.c (record_giv): Similarly for 'p'.
205 (combine_givs): Similarly for 'temp_iv'.
206 (indirect_jump_in_function_p): Similarly for 'is_indirect_jump'.
207 * recog.c (validate_replace_rtx_1): Similarly for 'width'.
208 * tree.c (get_set_constructor_bytes): Similarly for 'vals'.
209 * unroll.c (unroll_loop): Similarly for 'copy'.
210 (iteration_info): Similarly for 'b'.
211 * varasm.c (assemble_string): Similarly for 'i'.
212 * i386.h (LEGITIMIZE_ADDRESS): Similarly for 'orig_x'.
213
214 Fri Feb 13 14:38:34 1998 Jim Wilson <wilson@cygnus.com>
215
216 * dwarf2out.c (decl_scope_node): New type.
217 (decl_scope_table): Change type to use it.
218 (decl_scope_table_allocated, decl_scope_depth): Change type to int.
219 (push_decl_scope): Use new type. New locals containing_scope, i.
220 Add code to handle setting previous field.
221 (scope_die_for): Change type of local i to int. Add code to use
222 previous field.
223 (dwarf2out_init): Use new type.
224
225 1998-02-13 Jason Merrill <jason@yorick.cygnus.com>
226
227 * except.c (emit_throw): Lose throw_used.
228
229 Fri Feb 13 20:36:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
230
231 * sched.c (update_flow_info, REG_WAS_0): Ignore if setting insn
232 was deleted.
233 * haifa-sched.c (update_flow_info, REG_WAS_0): Likewise.
234
235 Fri Feb 13 12:18:40 1998 Jeffrey A Law (law@cygnus.com)
236
237 * genextract.c (main): Fix typo.
238
239 Fri Feb 13 08:41:49 1998 Robert Lipe <robertl@dgii.com>
240
241 * c-lang.c (finish_file): Bracket declaration of static_ctors,
242 static_dtors.
243
244 * calls.c (expand_call): Bracket declaration of 'rtx_before_call',
245 'old_stack_arg_under_construction'
246 (emit_library_call): Bracket declaration of 'upper_bound',
247 'lower_bound', 'i', 'reg_parm_stack_space'
248 (emit_library_call_value): Likewise.
249 (store_one_arg):
250
251 * collect2.c: include <unistd.h> when appropriate.
252 Bracket declaration of 'exportf' and 'full_real_ld_suffix'.
253
254 * emit-rtl.c (prev_cc0_setter): Remove unused variable 'link'.
255
256 * explow.c (plus_constant_for_output_wide): Remove unused variable
257 'code'.
258 (memory_address): Remove unused variable 'orig_x'.
259
260 * genattrtab.c (make_canonical): Remove unreferenced label 'cond:'.
261 (write_const_num_delay_slots): Remove unused variable 'i'.
262
263 * genopinit.c (main): Remove unused variables 'dummy', 'insn_ptr'.
264 (gen_insn): Remove unused variable 'obstack_ptr'.
265
266 * libgcc2.c (__bb_exit_func): Remove unused variables 'ret',
267 'j', 'tmp', 'i'.
268 (__bb_exit_trace_func): Remove unused variable 'e'.
269
270 * optabs.c (expand_binop): remove unused variables 'lhs', 'rhs',
271 'funexp'.
272 (expand_unop): Remove unused variable 'funexp'.
273 (expand_complex_abs): Remove unused variable 'funexp'.
274 (init_optabs): Bracket declaration of 'j'.
275 (init_complex_libfuncs): Deleted. Dead static function.
276
277 * profile.c (branch_prob): Remove unused variables 'insn', 'dest'.
278
279 * reg-stack.c: Fix typo in proto for 'get_asm_operand_lengths'
280 (reg_to_stack): 'initialized', 'before_function_beg'
281 explictly type as ints instead of defaulting.
282 (emit_swap_insn): Remove unused variable 'i2'.
283 (compare_for_stack_reg): Remove unused variable 'src_note'.
284
285 * rtlanal.c (computed_jump_p): Remove unused variable 'computed_jump'.
286
287 * sched.c (actual_hazard): Bracket declaration of 'this_cost'.
288
289 * stmt.c (add_case_node): Add parens for assignment used as truth.
290 (all_cases_count): Remove unused variable 'count_high'.
291 (mark_seen_cases): Remove unused variable 'i'.
292 (check_for_full_enumeration_handling): Remove unused variable 't'.
293 Bracket declaration of 'all_values', 'l'.
294
295 * tlink.c: Include <stdlib.h>, <unistd.h>, <string.h>/<strings.h>.
296
297 * varasm.c (assemble_string): Remove unused variable 'i'.
298 (immed_double_const): Remove unused variable 'in_current_obstack'.
299 (immed_real_const_1): Likewise.
300 (output_constant_pool): Remove unreferenced label 'done'.
301 (output_constant): Remove unused variable 'x'.
302
303 * i386/i386.h (ENCODE_SECTION_INFO): TREE_PUBLIC is an int, not
304 a string.
305
306 * i386/sco5.h (ASM_OUTPUT_ASCII): Add parens for assignment used
307 as truth.
308
309 Fri Feb 13 10:21:41 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
310
311 * combine.c (can_combine_p): Handle USEs in PARALLELs.
312
313 Fri Feb 13 01:34:14 1998 H.J. Lu (hjl@gnu.org)
314
315 * config/linux.h (LIB_SPEC): Add -lc for -shared if
316 USE_GNULIBC_1 is not defined.
317 * config/sparc/linux.h; Ditto.
318
319 * config/sparc/linux64.h (LIB_SPEC): Add -lc for -shared.
320
321 * config/alpha/linux-elf.h (LIB_SPEC): New. Defined if
322 USE_GNULIBC_1 is not defined.
323
324 Fri Feb 13 01:29:29 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
325
326 * rs6000/sysv4.h (ENDFILE_SPEC): add missing %(endfile_linux)
327 for -mcall-linux
328
329 Fri Feb 13 01:23:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
330
331 * system.h: New file to get common systems includes and various
332 definitions and declarations based on autoconf macros.
333
334 Fri Feb 13 00:46:19 1998 Jeffrey A Law (law@cygnus.com)
335
336 * cccp.c (new_include_prefix): Correctly handle -I./.
337
338 Thu Feb 12 20:16:35 1998 Michael Meissner <meissner@cygnus.com>
339
340 * rs6000.md: Replace gen_rtx (CONST_INT,...) with GEN_INT.
341
342 Thu Feb 12 16:45:17 1998 Robert Lipe <robertl@dgii.com>
343
344 * expr.c (expand_assignment): Correct typo exposed by -Wall.
345 offset should have been a truth value, not an assignment.
346
347 Thu Feb 12 15:26:50 1998 Jeffrey A Law (law@cygnus.com)
348
349 * cse.c (delete_dead_from_cse): If a libcall produces a constant
350 result and that result can be substituted into SET_SRC of the
351 insn with the REG_RETVAL note, then perform the substitution
352 and delete the libcall.
353
354 Thu Feb 12 14:04:09 1998 Gavin Koch <gavin@cygnus.com>
355
356 * mips.md (trucndihi2,truncdiqi2): Change these to support
357 mips16.
358
359 Thu Feb 12 11:34:55 1998 Gavin Koch <gavin@cygnus.com>
360
361 * mips/mips.c (movdi_operand): Direct referances to symbols
362 that arn't mips16 consts in mips16 mode arn't valid operands.
363
364 * mips/mips.c (mips_move_2words): Add gprel handling.
365
366 Thu Feb 12 11:18:37 1998 Gavin Koch <gavin@cygnus.com>
367
368 * mips.md (extendsidi2): Allow extension to/from a non-mips16
369 register.
370
371 Thu Feb 12 00:04:16 1998 Marc Lehmann <pcg@goof.com>
372
373 * i386.c: Conditionally include <stdlib.h>, <string.h>, and
374 <strings.h>.
375
376 Wed Feb 11 11:43:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
377
378 * Makefile.in (WARN_CFLAGS): New variable.
379 (bootstrap, bootstrap2, bootstrap3, bootstrap4): Use it.
380
381 1998-02-11 Mark Mitchell <mmitchell@usa.net>
382
383 * config/i386/i386.c (reg_mentioned_in_mem): Don't abort when
384 falling through default case in switch.
385 (i386_aligned_p): Likewise.
386
387 Wed Feb 11 12:59:56 1998 Lee Iverson <leei@Canada.AI.SRI.COM>
388
389 * mips/mips.h (mips_abi_string): Correct typo in comment.
390
391 Wed Feb 11 08:29:56 1998 Gavin Koch <gavin@cygnus.com>
392
393 * mips/mips.md (movdi): These PLUS's need to be Pmode.
394
395 Wed Feb 11 01:47:54 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
396
397 * Makefile.in (dwarf2out.o, emit-rtl.o, jump.o, cse.o, unroll.o,
398 reorg.o, regmove.o): Depend on insn-codes.h, it gets included
399 indirectly via expr.h.
400
401 Wed Feb 11 01:44:13 1998 Richard Henderson <rth@cygnus.com>
402
403 * stor-layout.c (layout_type): Do upper - lower in the native type,
404 so as to properly handle negative indices.
405
406 Wed Feb 11 01:35:55 1998 Robert Lipe <robertl@dgii.com>
407
408 * except.c (start_dynamic_cleanup): Remove unused variable 'dhc'.
409 (expand_eh_region_start_tree): Remove unused variable 'note'.
410 (exception_optimize): Remove unused variable 'regions'.
411 (expand_builtin_eh_stub): Remove unused variable 'temp'.
412 (copy_eh_entry): Deleted. Dead function.
413
414 * expr.c (move_block_to_reg) Bracket declaration of 'pat' and
415 'last' with same #if HAVE_load_multiple as use of it.
416 (move_block_from_reg): Likewise.
417 (emit_move_insn_1): Remove unused variable 'insns'.
418 (store_constructor): Bracket declaration of startb, endb with
419 #if TARGET_MEMFUNCTIONS. Remove unused variables 'set_word_size'
420 'target', and 'xtarget'.
421 (expand_builtin_setjmp): Remove unused variables 'op0',
422 'next_arg_reg', 'old_inhibit_defer_pop'.
423 (expand_builtin): Remove unused variable 'offset'.
424 (do_store_flag): Remove unused variables 'pattern', 'jump_pat'.
425 (emit_queue): Add parens for assignment used as conditional.
426 (expand_expr): case TARGET_EXPR: Remove unused variable 'temp'.
427
428 Wed Feb 11 01:30:49 1998 Marc Lehmann <pcg@goof.com>
429
430 * i386.c: Added include for recog.h.
431 (override_options): Removed unused variable p. Initialized regno to
432 avoid warning.
433 (order_regs_for_local_alloc): Initialized regno to avoid warning.
434 (legitimize_address): Likewise for 'other'.
435 (i386_aligned_reg_p): Added default case with abort ().
436 (print_operand): Likewise.
437 (reg_mentioned_in_mem): Likewise.
438 (ix86_expand_binary_operator): Removed unused variables i & insn.
439 (ix86_expand_unary_operator): Removed unused variable insn.
440 (output_fp_cc0_set): Removed unused variable unordered_label.
441
442 Wed Feb 11 01:23:03 1998 John F. Carr <jfc@mit.edu>
443
444 * i386.c, i386.h, i386.md: Change gen_rtx (X, ...) to gen_rtx_X (...).
445 Use GEN_INT instead of gen_rtx (CONST_INT). Make printf arguments
446 and format string match.
447
448 Wed Feb 11 01:17:39 1998 Jeffrey A Law (law@cygnus.com)
449
450 * flow.c (life_analysis): Do not conside the stack pointer live at
451 the end of a function if the fucntio ncalls alloca.
452 (mark_used_regs): Similarly.
453
454 1998-02-10 John F Carr <jfc@mit.edu>
455
456 * config/sparc/sparc.md (movdi_v8plus): Output stx on alternative
457 1, fzero on alternative 8.
458
459 Tue Feb 10 09:02:19 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
460
461 * rs6000.c (setup_incoming_varargs): Always set rs6000_sysv_varargs_p.
462
463 Tue Feb 10 03:35:43 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
464
465 * reload.c (find_reloads_toplev): Handle arbitrary non-paradoxical
466 SUBREGs of CONST_INTs.
467
468 Mon Feb 9 17:52:36 1998 John Carr <jfc@mit.edu>
469
470 * mips.c (print_operand, function_prologue): Make printf format
471 match argument type.
472
473 Mon Feb 9 02:37:25 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
474
475 * alpha.c (alpha_return_addr): Remove unused variable `first'.
476 (alpha_ra_ever_killed): Remove unused variables `ra' and `i'.
477 (output_epilog): Remove unused variable `frame_size_from_reg_save'.
478
479 Sun Feb 8 14:56:03 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
480
481 * loop.c (strength_reduce): When placing increment for auto-inc
482 case, do comparison in loop order.
483
484 Sun Feb 8 13:21:38 1998 John Carr <jfc@mit.edu>
485
486 * bitmap.c (bitmap_debug_file): HOST_PTR_PRINTF converts a pointer,
487 not a HOST_WIDE_INT.
488
489 * calls.c (expand_call): Change test of expand_inline_function
490 return value to stop compiler warning.
491
492 * genattrtab.c (RTL_HASH): Cast pointer to long, not HOST_WIDE_INT.
493
494 Sun Feb 8 12:04:24 1998 Jim Wilson (wilson@cygnus.com)
495 Jeff Law (law@cygnus.com)
496
497 * regmove.c: Fix various minor formatting problems.
498 (optimize_reg_copy_1): Stop search at CALL_INSNs if flag_exceptions
499 is true. Make end of basic block tests consistent through regmove.c.
500 (optimize_reg_copy_2, optimize_reg_copy_3): Likewise.
501 (fixup_match_2, fixup_match_1, regmove_optimize): Likewise.
502
503 Sun Feb 8 01:49:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
504
505 * gansidecl.h: Check for a conflicting macro definition before
506 attempting to prototype bcopy, bcmp or bzero.
507
508 Sun Feb 8 00:09:59 1998 Jeffrey A Law (law@cygnus.com)
509
510 * expr.c (clear_pending_stack_adjust): Handle case where a function
511 calls alloca, but the user has specified -fomit-fframe-pointer.
512
513 * function.c (assign_parms): Fix typo in last change.
514
515 Sat Feb 7 23:54:29 1998 Robert Lipe <robertl@dgii.com>
516
517 * gcc.c: Include <strings.h>/<string.h>, <stdlib.h>, <unistd.h>,
518 <fcntl.h>.
519 (free_path_suffix): Remove unreferenced static function.
520 (process_command): Remove unused variable temp.
521 (default_arg): Remove unused variable i.
522 (do_spec_1): Add parens for assignment used as truth value.
523 (main): Likewise.
524 (validate_all_switches): Likewise.
525 (main): Remove unused variables i, first_time>
526
527 * c-common.c: Include <stdlib.h> and <string.h>/<strings.h>.
528
529 * calls.c (expand_call): Remove unused variables funtree,
530 n_regs, and tmpmode.
531
532 * dbxout.c, except.c: Include <string.h>/<strings.h>.
533
534 * explow.c: (plus_constant_for_output_wide) Removed unused
535 variable all_constant.
536
537 * c-decl.c, genattr.c, genattrtab.c, getconfig.c, genemit.c
538 genextract.c, genflags.c, genopinit.c genoutput.c, genpeep.c,
539 genrecog.c, global.c, integrate.c , stupid.c : Include
540 <stdlib.h>.
541
542 * genextract.c: (walk_rtx) Remove unused variable link.
543
544 * genrecog.c: (concat) Remove unreferenced static function.
545
546 * prefix.c: Include <string.h>/<strings.h>, <stdlib.h>
547
548 * stmt.c: Include <stdlib.h>.
549 (expand_asm_operands): Remove unused variable val1.
550 (expand_return): Remove unused variable block.
551 (pushcase): Remove unused variables l and n.
552 (pushcaserange): Likewise.
553
554 * unroll.c (unroll_loop): Remove unused variable temp.
555
556 Sat Feb 7 23:46:09 1998 Greg McGary <gkm@gnu.org>
557
558 * c-decl.c (pushdecl): Set DECL_ORIGINAL_TYPE once only.
559
560 Sat Feb 7 15:11:28 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
561
562 * aclocal.m4 (GCC_FUNC_PRINTF_PTR): New macro to test the printf
563 functions for whether they support the %p format specifier.
564 * acconfig.h (HOST_PTR_PRINTF): Insert stub for autoconf.
565 * configure.in (GCC_FUNC_PRINTF_PTR): Use it.
566 * configure, config.in: Rebuild.
567
568 Fri Feb 6 14:20:16 1998 Jim Wilson <wilson@cygnus.com>
569
570 * function.c (assign_parms): New variable named_arg, with value
571 depending on STRICT_ARGUMENT_NAMING. Use instead of ! last_named.
572
573 Fri Feb 6 14:34:28 1998 Gavin Koch <gavin@cygnus.com>
574
575 * mips/t-r3900: New - same as t-ecoff but eliminate
576 multilibs: mips1 and mips3.
577 * configure.in (tx39*): Use new mips/t-r3900.
578 * configure: Rebuild.
579 * mips/r3900.h (MULTILIB_DEFAULTS): Eliminate mips1.
580
581 1998-02-06 Jason Merrill <jason@yorick.cygnus.com>
582
583 * dwarf2out.c: Add old_args_size.
584 (dwarf2out_args_size): Use it.
585 (dwarf2out_begin_prologue): Initialize it.
586 (dwarf2out_stack_adjust): If !asynchronous_exceptions, save up
587 pushed args until we see a call.
588 * final.c (final_scan_insn): Hand CALL_INSNs off to the dwarf2 code
589 before outputting them.
590
591 1998-02-06 Kriang Lerdsuwanakij <lerdsuwa@scf.usc.edu>
592
593 * cplus-dem.c (demangle_template_template_parm): New function.
594 (demangle_template): Handle template template parameters.
595
596 1998-02-02 Mark Mitchell <mmitchell@usa.net>
597
598 * calls.c (expand_call): Don't confuse member functions named
599 realloc, setjmp, and so forth with the standard library
600 functions of the same names.
601
602 Thu Feb 5 21:59:49 1998 Jeffrey A Law (law@cygnus.com)
603
604 * stmt.c (expand_asm_operands): Correctly identify asm statements
605 no output operands.
606
607 Thu Feb 5 21:56:06 1998 Mumit Khan <khan@xraylith.wisc.edu>
608
609 * c-common.c (decl_attributes): Flag unrecognized attribute
610 functions as warnings instead of as errors.
611
612 1998-02-05 Marc Lehmann <pcg@goof.com>
613
614 * integrate.c (INTEGRATE_THRESHOLD): Inline only small functions
615 when -Os is specified.
616 * toplev.c (main): Don't disable flag_inline_functions anymore when
617 -Os is in effect.
618
619 Fri Feb 6 00:27:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
620
621 * regmove.c: Update.
622 * flags.h (flag_regmove): Declare.
623 * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Don't declare.
624 * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2):
625 Moved into regmove; changed caller.
626 * toplev.c (rest_of_compilation): Call regmove_optimize also for
627 expensive_optimizations.
628
629 Thu Feb 5 13:38:42 PST 1998 Jeff Law (law@cygnus.com)
630
631 * version.c: Bump for snapshot.
632
633 Thu Feb 5 01:45:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
634 Undo this change (the problem was actually in reload):
635 Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
636
637 * sh.md (movqi_i+1): New peephole.
638
639 Tue Feb 3 01:11:12 1998 Jeffrey A Law (law@cygnus.com)
640
641 * jump.c (jump_optimize): Lose calls to modified_in_p they are
642 not needed anymore due to changes elsewhere in jump.c.
643
644 * jump.c (jump_optimize): Fix first arg to modified_in_p in
645 previous change.
646
647 Mon Feb 2 19:18:14 1998 Richard Henderson <rth@cygnus.com>
648
649 * expr.c (expand_builtin_setjmp): Accept two new arguments for
650 the labels to branch to on first and subsequent executions. Don't
651 play with __dummy. Rename `setjmp' insn to `builtin_setjmp_setup',
652 and provide it with the jmp_buf. Use only one of
653 `builtin_setjmp_receiver' or `nonlocal_goto_receiver',
654 and provide the former with the target label.
655 (expand_builtin) [BUILTIN_SETJMP]: Generate a label for use by setjmp.
656 (expand_builtin) [BUILTIN_LONGJMP]: Split out to ...
657 (expand_builtin_longjmp): ... here. Recognize a `builtin_longjmp'
658 insn to replace all of the normal nonlocal_goto code. Don't play
659 with __dummy. Correct arguments to nonlocal_goto.
660 * expr.h (expand_builtin_setjmp): Update prototype.
661 * except.c (start_dynamic_handler): When using builtin_setjmp,
662 generate more accurate flow information.
663
664 * alpha.md (nonlocal_goto_receiver_osf): Delete.
665 (nonlocal_goto_receiver_vms): Rename to nonlocal_goto_receiver.
666 (builtin_longjmp, builtin_setjmp_receiver): New.
667 * sparc.md (update_return): Disambiguate unspec number.
668 (nonlocal_goto): Rearrange arguments to match caller in except.c.
669 (builtin_setjmp_setup): Rename from setjmp. Match and ignore the
670 jmp_buf operand.
671 * mips.md (nonlocal_goto_receiver, builtin_setjmp_receiver): Remove.
672 (builtin_setjmp_setup*, builtin_longjmp): New.
673
674 Mon Feb 2 16:43:10 1998 John Carr <jfc@mit.edu>
675
676 * mips.md: Change gen_rtx (CONST_INT) to GEN_INT.
677
678 Mon Feb 2 13:06:47 1998 Jim Wilson <wilson@cygnus.com>
679
680 * vmsconfig.com: Remove bytecode references.
681
682 1998-01-30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
683
684 * dwarf2out.c (dwarf2out_frame_init): Undo last change, so that
685 -fno-sjlj-exceptions works for a target that defines
686 DWARF2_UNWIND_INFO as zero.
687
688 * regmove.c (fixup_match_1): Undo last change which removed some
689 "useless" code, and add a comment explaining this.
690
691 Mon Feb 2 10:47:14 1998 Gavin Koch (gavin@cygnus.com)
692
693 * mips.c (mips_expand_prologue): Change uses of TARGET_64BIT
694 to TARGET_LONG64.
695
696 Mon Feb 2 10:38:41 1998 Klaus Kaempf <kkaempf@progis.de>
697
698 * makefile.vms: Remove bytecode references.
699 Create genrtl files.
700
701 Mon Feb 2 02:08:04 1998 Michael P. Hayes <michaelh@ongaonga.chch.cri.nz>
702
703 * jump.c (jump_optimize): Allow conditional loading of floating point
704 constants and constants from memory. Reinstalled modified_in_p tests.
705
706 Mon Feb 2 01:38:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
707
708 * loop.c (get_condition): Handle sign-extended constants.
709
710 Mon Feb 2 01:22:46 1998 Hans-Peter Nilsson <hp@axis.se>
711
712 * expr.c (emit_push_insn): Add code to use movstrti if present.
713
714 * expr.c (emit_push_insn): Use same max-move-amount for movstrhi
715 and movstrqi as in emit_block_move ().
716
717 Mon Feb 2 00:09:52 1998 Toon Moene <toon@moene.indiv.nluug.nl>
718
719 * config/m68k/x-next: Remove /NextDeveloper/Headers from
720 the directories to fixinclude - /usr/include is a link
721 to it and hence its contents are fixed by default.
722
723 Sun Feb 1 14:15:33 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
724
725 * rs6000/linux.h: define JUMP_TABLES_IN_TEXT_SECTION
726
727 Sun Feb 1 13:01:15 1998 Klaus Kaempf <kkaempf@progis.de>
728
729 * cccp.c (main): Predefine __VMS_VER on VMS.
730
731 Sun Feb 1 12:39:53 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
732
733 * expr.c (get_inner_reference): Use sbitsizetype for type sizes.
734 * fold-const.c (size_int): Replace with
735 (size_int_wide).
736 (make_bit_field_ref): Use bitsize_int for bit position.
737 * stor-layout.c (sizetype): Delete.
738 (sizetype_tab, sbitsizetype, ubitsizetype): Declare.
739 (layout_record, layout_union, layout_type):
740 Use bitsize_int for bit size.
741 (set_sizetype): New function.
742 (make_signed_type, make_unsigned_type): Use it.
743 * c-decl.c (init_decl_processing): Likewise.
744 * tree.h (size_int): Don't delcare, #define.
745 (size_int_wide, sizetype_tab, sbitsize, ubitsize): Declare.
746 (set_sizetype): Declare.
747 (bitsize_int, size_int_2, BITS_PER_UNIT_LOG, sizetype, bitsizetype):
748 Define.
749 * c-typeck.c (c_sizeof, c_sizeof_nowarn, c_size_in_bytes):
750 Convert result to sizetype.
751 (really_start_incremental_init, push_init_level):
752 Set type of constructor_bit_index to sbitsizetype.
753 (push_init_level): Use unsigned arithmetic to determine padding.
754 (output_init_element): Likewise.
755
756 Sun Feb 1 03:32:07 1998 Jeffrey A Law (law@cygnus.com)
757
758 * combine.c (simplify_shift_const): Fix typo in last change.
759
760 Sun Feb 1 02:50:46 1998 John Carr <jfc@mit.edu>
761
762 * combine.c (simplify_shift_const): (lshiftrt (truncate (lshiftrt)))
763 is (truncate (lshiftrt)).
764
765 Sun Feb 1 01:06:53 1998 Richard Henderson <rth@cygnus.com>
766
767 * alpha.c (alpha_expand_unaligned_load): Use expand_binop properly.
768 Make sure result winds up in TGT.
769 (alpha_expand_unaligned_store): Use expand_binop properly. Allow
770 src to be other than DImode.
771 (alpha_expand_unaligned_load_words): Tidy. Take an offset argument.
772 (alpha_expand_unaligned_store_words): Likewise.
773 (alpha_expand_block_move): Use REGNO_POINTER_ALIGN. Restructure so
774 that source and destination are separately optimized for alignment.
775 (alpha_expand_block_clear): Use REGNO_POINTER_ALIGN.
776
777 Sun Feb 1 01:55:09 1998 Jeffrey A Law (law@cygnus.com)
778
779 * mips.md (adddi3_internal_2): Be consistent with adddi3 expander
780 with handling of -32768.
781
782 Sun Feb 1 01:48:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
783
784 * aclocal.m4 (GCC_NEED_DECLARATION): Modify macro to accept a
785 shell variable argument instead of only hard coded functions.
786 (GCC_NEED_DECLARATIONS): New macro to accept multiple functions.
787
788 * configure.in: Collapse multiple calls to AC_CHECK_FUNCS into one
789 call. Collapse multiple calls to GCC_NEED_DECLARATION into one
790 call to GCC_NEED_DECLARATIONS (new macro.) Check if we need
791 declarations for bcopy, bcmp and bzero.
792
793 * acconfig.h: Add stubs for bcopy, bcmp and bzero declarations.
794
795 * gansidecl.h: If we have bcopy but don't declare it, then do so.
796 Likewise for bcmp and bzero. Only define macros for bcopy, bcmp,
797 bzero, index and rindex if they aren't already present.
798
799 Sat Jan 31 11:26:58 1998 Jeffrey A Law (law@cygnus.com)
800
801 * toplev.c (close_dump_file): Wrap function prototype for
802 argument "func" in PROTO.
803 (dump_rtl): Likewise.
804
805 Fri Jan 30 22:30:39 1998 John Carr <jfc@mit.edu>
806
807 * sparc.c (sparc_override_options): Make v8plus and ultrasparc set
808 MASK_V8PLUS.
809 (output_function_epilogue): Omit epilogue if nothing drops through.
810 (output_move_double): Supress int ldd usage on ultrasparc and v9.
811 (registers_ok_for_ldd_peep): Likewise.
812 (print_operand): Supress b,a on ultrasparc. Let Y accept a constant.
813 (ultrasparc_adjust_cost): New function.
814 (sparc_issue_rate): New function.
815 * sparc.h (MASK_VIS, TARGET_VIS): New
816 (MASK_V8PLUS, TARGET_V8PLUS): New.
817 (TARGET_HARD_MUL32, TARGET_HARD_MUL): New.
818 (TARGET_SWITCHES): Add vis and v8plus.
819 (REG_CLASS_FROM_LETTER): Accept d and b for VIS.
820 (REGISTER_MOVE_COST): FP<->INT move cost 12 for ultrasparc.
821 (RTX_COSTS): Use TARGET_HARD_MUL
822 (ADJUST_COST): Call ultrasparc_adjust_cost.
823 (ISSUE_RATE): New.
824 * sparc.md (attr type): Add sload, fpmove, fpcmove. Adjust users
825 of load & fp appropritely.
826 (supersparc function units): Adjust for Haifa.
827 (ultrasparc function units): Likewise.
828 (get_pc_via_rdpc): All v9, not just arch64.
829 (movdi_v8plus, movdi_v8plus+1): New.
830 (adddi3_sp32+1): New.
831 (subdi3_sp32+1): New.
832 (movsi_insn, movsf_const_insn, movdf_const_insn): Know VIS.
833 (addsi3, subsi3, anddi3_sp32, andsi3, and_not_di_sp32): Likewise.
834 (and_not_si, iordi3_sp32, iorsi3, or_not_di_sp32, or_not_si): Likewise.
835 (xorsi3_sp32, xorsi3, xor_not_di_sp32, xor_not_si): Likewise.
836 (one_cmpldi2_sp32, one_cmplsi2): Likewise.
837 (ldd peepholes): Suppress for v9.
838 (return_adddi): Kill redundant test. Arg1 may be arith_operand.
839 (return_subsi): Revmove.
840
841 Fri Jan 30 18:30:03 1998 John F Carr <jfc@mit.edu>
842
843 * mips.c (save_restore_insns): Set RTX_UNCHANGING_P in register
844 save/restore MEM rtl.
845
846 Fri Jan 30 09:08:16 1998 Jeffrey A Law (law@cygnus.com)
847
848 * configure.in: Check for declaration of abort.
849 * acconfig.h: Corresponding changes.
850 * toplev.c: Use NEED_DECLARATION_ABORT to determine if abort should
851 be declared.
852
853 Thu Jan 29 20:26:12 1998 Jeffrey A Law (law@cygnus.com)
854
855 * genattrtab.c (optimize): Define in case PRESERVE_DEATH_INFO_REGNO_P
856 uses it.
857
858 Thu Jan 29 09:27:56 PST 1998 Jeff Law (law@cygnus.com)
859
860 * version.c: Bump for snapshot.
861
862 Thu Jan 29 10:12:27 1998 Jeffrey A Law (law@cygnus.com)
863
864 * configure.in: Check for atoq and atoll.
865 * rtl.c (read_rtx): Use HAVE_ATOLL and HAVE_ATOQ to select the
866 proper routine for converting ascii into long long values.
867
868 Thu Jan 29 01:28:14 1998 Klaus Kaempf <kkaempf@progis.de>
869
870 * cccp.c (SYS$SEARCH, SYS$PARSE): Write as upper-case.
871
872 * vmsconfig.com: Remove bytecode references.
873
874 * alpha/vms.h (PREFIX): Define.
875
876 * alpha/vms.h (ASM_OUTPUT_ALIGNED_COMMON): Remove.
877
878 * am-alpha.h: Don't include alloca for OPEN_VMS.
879
880 * alpha/xm-vms.h (HAVE_CPP_STRINGIFY): Define.
881
882 * alpha/xm-vms.h (INCLUDE_DEFAULTS): Define.
883 (GCC_INCLUDE_DIR): Define
884
885 * make-cc.com, make-cccp.com, make-cc1.com: Removed.
886 * makefile.vms: New file.
887
888 * alpha/vms.h (CPP_PREDEFINES): Remove -Dalpha.
889
890 * alpha.c (output_prolog): Output '.name' directive
891 for minimal traceback information.
892
893 * alpha.c (output_prolog): Don't prepend entry point symbols
894 with '$' on OPEN_VMS.
895
896 Thu Jan 29 00:25:35 1998 David S. Miller <davem@tanya.rutgers.edu>
897 Jeffrey A Law (law@cygnus.com)
898
899 * rtl.c (read_rtx): Use atol/atoq based upon disposition of
900 HOST_WIDE_INT.
901
902 * genattrtab.c (write_test_expr): Use HOST_WIDE_INT_PRINT_DEC
903 as needed.
904 * genemit.c (gen_exp): Likewise.
905 * genpeep.c (match_rtx): Likewise.
906 * genrecog.c (write_tree_1): Likewise.
907
908 * c-lex.c (yyprint): Use proper format string based upon
909 disposition of HOST_BITS_PER_WIDE_INT.
910 (yylex): Put casts in right place for args to build_int_2.
911
912 Thu Jan 29 00:24:29 1998 Jeffrey A Law (law@cygnus.com)
913
914 * combine.c: Fix typos in Jan27 changes.
915
916 Thu Jan 29 00:07:49 1998 Ollivier Robert <roberto@keltia.freenix.fr>
917
918 * i386/freebsd.h (LIB_SPEC): Correctly handle -shared, -p and friends.
919 (LINK_SPEC): Likewise.
920 (STARTFILE_SPEC): Likewise.
921
922 1998-01-28 Mike Stump <mrs@wrs.com>
923
924 * rtlanal.c (dead_or_set_regno_p): Ignore REG_DEAD notes after
925 reload completes.
926 * genattrtab.c (reload_completed): Define.
927
928 * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Remove obsolete
929 comments.
930
931 Wed Jan 28 20:11:06 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
932
933 * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
934 SUBREG_REG if the word count is unchanged, also in the input reload
935 case. Disable non-applicable sanity checks.
936
937 Wed Jan 28 20:08:26 1998 Jeffrey A Law (law@cygnus.com)
938
939 * config/t-svr4 (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
940
941 Wed Jan 28 20:04:43 1998 Ian Lance Taylor <ian@cygnus.com>
942
943 * i386/t-cygwin32 (LIMITS_H_TEST, LIBGCC2_INCLUDES): Define.
944
945 Wed Jan 28 11:45:27 1998 Per Bothner <bothner@cygnus.com>
946
947 * dbxout.c (dbxout_type): For a RECORD_TYPE, check that TYPE_BINFO
948 is a TREE_VEC before trying to use it for baseclasses.
949 (Chill uses the same field for a different purpose.)
950
951 * toplev.c (strip_off_ending): Generalize to endings up to 5 chars.
952
953 Tue Jan 27 23:15:55 1998 Lassi A. Tuura <lat@iki.fi>
954
955 * config.sub: More accurate determination of HP processor types.
956
957 Tue Jan 27 23:11:11 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
958
959 * c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>. Add
960 prototype for `handle_sysv_pragma', and make it static. Add
961 parentheses around assignment used as truth value.
962
963 * combine.c (combine_instructions): Protect variable `prev' with
964 macro HAVE_cc0.
965 (can_combine_p): Protect variable `link' with AUTO_INC_DEC.
966 (extract_left_shift): Add parentheses around operand of &.
967 (merge_outer_ops): Avoid an empty body in an else-statement.
968 (gen_rtx_combine): Remove unused variable `i'.
969
970 * sparc/gmon-sol2.c: Include <fcntl.h>. Make return type of
971 function monstartup `void'. Likewise for internal_mcount. Add
972 `static void' prototype for moncontrol. Reconcile sprintf format
973 vs. args.
974
975 * sparc/sparc.c: Include <stdlib.h> and <string.h>/<strings.h>.
976 Make return type of function_arg_slotno explicitly `int'.
977 (reg_unused_after): Add parentheses around assignment used as
978 truth value.
979 (save_regs): Add explicit braces to avoid ambiguous `else'.
980 (function_arg_slotno): Add parentheses around && within ||.
981 (function_arg_pass_by_reference): Likewise.
982 (sparc_flat_output_function_prologue): Reconcile fprintf format
983 vs. args.
984
985 * svr4.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around
986 assignment used as truth value.
987
988 * cplus-dem.c: Include <stdlib.h>.
989 (demangle_signature): Avoid an empty body in an else-statement.
990 (do_type): Remove unused variable `lvl'.
991
992 * cppexp.c: Don't have <stdlib.h> depend on MULTIBYTE_CHARS.
993 Include <string.h>/<strings.h>.
994 (cpp_lex): Remove unused variable `namelen'.
995 (cpp_lex): Explicitly declare `num_chars' as an int.
996
997 * cpplib.c: Avoid duplicate inclusion of <stdlib.h>, include
998 <unistd.h> instead. Explicitly declare is_system_include
999 returning int.
1000 (make_assertion): Remove unused variable `kt'.
1001 (cpp_expand_to_buffer): Hide variable `obuf'.
1002 (output_line_command): Remove unused variables, `line_end',
1003 `line_cmd_buf' and `len'.
1004 (macarg): Remove unused variable `arg_start'.
1005 (special_symbol): Remove unused variable `i'. Add parentheses
1006 around assignment used as truth value.
1007 (do_include): Remove unused variables `pcfname' and `retried',
1008 hide `pcf' and `pcfbuflimit'.
1009 (do_line): Remove unused variable `i'.
1010 (finclude): Hide variable `missing_newline'.
1011 (cpp_handle_options): Remove unused variable `j'.
1012 (read_token_list): Remove unused variable `eofp'.
1013 (cpp_error_with_line): Remove unused variable `i'.
1014 (cpp_warning_with_line): Likewise.
1015 (cpp_pedwarn_with_line): Explicitly declare `column' as int.
1016 (cpp_error_from_errno): Remove unused variable `i'.
1017
1018 * cse.c (invalidate): Add parentheses around assignment used as
1019 truth value.
1020 (find_best_addr): Move declaration of variable `our_cost' inside
1021 the conditional macro where its used.
1022 (fold_rtx): Avoid an empty body in an if-statement.
1023 (cse_insn): Wrap variables `this_insn_cc0_mode' and
1024 `this_insn_cc0' in macro HAVE_cc0.
1025
1026 * dwarf2out.c: Include <stdlib.h> and <string.h>/<string.h>.
1027 (ASM_OUTPUT_DWARF_DATA8): Reconcile format vs. args in fprintf's.
1028 (output_uleb128): Likewise.
1029 (output_sleb128): Likewise.
1030 (output_cfi): Likewise.
1031 (output_call_frame_info): Remove unused variables `j', `fde_size'
1032 and `fde_pad'.
1033 (comp_unit_has_inlines): Hide declaration as per rest of file.
1034 (size_of_line_prolog): Correct typo in prototype.
1035 (add_arange): Likewise.
1036 (output_aranges): Likewise.
1037 (add_name_and_src_coords_attributes): Likewise.
1038 (gen_array_type_die): Likewise.
1039 (gen_inlined_subroutine_die): Likewise.
1040 (equate_decl_number_to_die): Remove unused variable `i'.
1041 (print_die): Reconcile format vs. args in fprintf's.
1042 (print_dwarf_line_table): Likewise.
1043 (output_die): Likewise.
1044 (output_line_info): Likewise.
1045 (add_subscript_info): Avoid an empty body in an else-statement.
1046 (gen_subprogram_die): Remove unused variable `fp_loc'.
1047
1048 * dwarfout.c: Explicitly declare `next_pubname_number' as int.
1049 Protect `ordering_attribute' prototype with USE_ORDERING_ATTRIBUTE
1050 macro. Protect `src_coords_attribute' prototype with
1051 DWARF_DECL_COORDINATES macro. Hide `output_entry_point_die'
1052 prototype as in the rest of the file. Likewise for
1053 `output_pointer_type_die' and `output_reference_type_die'. Remove
1054 prototype for `type_of_for_scope'.
1055 (output_unsigned_leb128): Reconcile format vs. args in fprintf.
1056 (type_attribute): Add explicit braces to avoid ambiguous `else'.
1057
1058 * final.c: Include <stdlib.h> and <string.h>/<strings.h>.
1059 (shorten_branches): Protect declaration of tmp_length with
1060 SHORTEN_WITH_ADJUST_INSN_LENGTH and ADJUST_INSN_LENGTH macros.
1061 (profile_function): Protect declaration of `sval' and `cxt'
1062 variables with appropriate macros.
1063 (final_scan_insn): Likewise for `note' variable. Add explicit
1064 braces to avoid empty body in an if-statement.
1065 (output_asm_insn): Move variable `i' inside macro conditional
1066 where it is used. Add parentheses around assignment used as truth
1067 value.
1068 (asm_fprintf) Likewise, likewise.
1069
1070 * fix-header.c (main): Remove unused variable `done'. Protect
1071 declaration of `i' with FIXPROTO_IGNORE_LIST.
1072
1073 * pexecute.c: Include <unistd.h>. Prototype `my_strerror'.
1074
1075 * print-rtl.c (print_inline_rtx): Explicitly declare the parameter
1076 `ind'.
1077
1078 * profile.c: Include <string.h>/<strings.h>.
1079 (instrument_arcs): Remove unused variables `note', `inverted',
1080 `zero' and `neg_one'.
1081 (branch_prob): Avoid empty body in an if-statement.
1082
1083 * regclass.c: Include <stdlib.h>.
1084 (reg_alternate_class): Explicitly declare parameter `regno'.
1085
1086 * regmove.c (regmove_optimize): Remove unused variable `p'. Add
1087 parentheses around assignment used as truth value.
1088 (find_matches): Remove unused variables `output_operand' and
1089 `matching_operand'.
1090 (fixup_match_1): Remove statement with no effect: "if (0) ;".
1091
1092 * scan.c (sstring_append): Explicitly declare `count' as int.
1093 (scan_string): Explicitly declare parameter `init' as int.
1094
1095 * sched.c: Include <stdlib.h>.
1096 (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
1097 (rank_for_schedule): Add parentheses around assignment used as
1098 truth value.
1099 (schedule_block): Likewise.
1100 (regno_use_in): Likewise.
1101 (schedule_insns): Remove unused variable `i'.
1102
1103 * toplev.c: Include <stdlib.h> and <string.h>/<strings.h>.
1104 (v_message_with_decl): Remove unused variable `n'.
1105 (botch): Explicitly declare parameter `s' as char *.
1106 (main): Add parentheses around assignment used as truth value.
1107
1108 * tree.c (make_node): Protect the variable `kind' with the
1109 GATHER_STATISTICS macro.
1110 (real_value_from_int_cst): Move variable `e' inside conditional
1111 macro area where it is used.
1112 (tree_last): Add parentheses around assignment used as truth value.
1113 (build1): Protect the variable `kind' with the GATHER_STATISTICS
1114 macro.
1115 (print_obstack_statistics): Reconcile format vs. args in fprintf.
1116 Protect variables `i', `total_nodes', and `total_bytes' with the
1117 GATHER_STATISTICS macro.
1118
1119 Tue Jan 27 23:01:55 1998 Mike Stump (mrs@wrs.com)
1120
1121 * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Add
1122 some comments regarding use of dead_or_set_p.
1123
1124 Tue Jan 27 22:14:48 1998 Todd Vierling <tv@pobox.com>
1125
1126 * fixincludes: Tweak fix for struct exception in math.h
1127
1128 Tue Jan 27 17:21:09 1998 Gavin Koch (gavin@cygnus.com)
1129
1130 * mips/mips.c (mips_expand_prologue,mips_expand_epilogue):
1131 Change mode of registers used to add/sub from
1132 hard_frame_pointer_rtx from word_mode to Pmode.
1133
1134 Tue Jan 27 11:02:04 1998 Nick Clifton <nickc@cygnus.com>
1135
1136 * v850.h (ASM_OUTPUT_ALIGNED_BSS): Use
1137 asm_output_aligned_bss() instead of asm_output_bss().
1138
1139 * toplev.c (rest_of_compilation): Replace references to
1140 stack_reg_dump_file and dbr_sched_dump_file with references to
1141 rtl_dump_file.
1142
1143 Tue Jan 27 10:22:13 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
1144
1145 * tlink.c (scan_linker_output): Call fclose() for opened files.
1146
1147 Tue Jan 27 05:05:26 1998 Richard Henderson <rth@cygnus.com>
1148
1149 * alpha.c (output_epilog [!VMS]): Don't tag global functions if
1150 compiling with -fpic -- we want to be able to override symbols
1151 properly.
1152 (alpha_expand_block_move): Fix thinko in last change.
1153
1154 * alpha.h (ASM_OUTPUT_MI_THUNK): New define.
1155 * config/alpha/win-nt.h (ASM_OUTPUT_MI_THUNK): New define.
1156 * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): New undef.
1157
1158 Tue Jan 27 03:21:23 1998 Richard Henderson <rth@cygnus.com>
1159
1160 * alpha.md (abssf, absdf): Revert last change.
1161
1162 Tue Jan 27 00:26:50 1998 John Carr <jfc@mit.edu>
1163
1164 * dwarf2out.c (dwarf2out_frame_init): Test value of DWARF2_UNWIND_INFO.
1165 * mips/sni-svr4.h: Define DWARF2_UNWIND_INFO as 0.
1166
1167 Tue Jan 27 00:07:02 1998 Jeffrey A Law (law@cygnus.com)
1168
1169 * emit-rtl.c (gen_lowpart_common): Handle more case where converting
1170 a CONST_INT into SFmode.
1171
1172 Tue Jan 20 16:01:03 1998 Anthony Green <green@cygnus.com>
1173
1174 * flags.h: New flag (optimize_size).
1175 * toplev.c (main): Parse -Os option and set optimize_space
1176 accordingly.
1177 * gcc.c (default_compilers), cp/lang-specs.h, f/lang-specs.h: Define
1178 __OPTIMIZE_SIZE__ when compiling with -Os.
1179 * config/dsp16xx/dsp16xx.h, config/i386/i386.h,
1180 config/i386/dgux.h, config/i960/i960.h, config/pdp11/pdp11.h,
1181 config/v850/v850.h (OPTIMIZATION_OPTIONS): New SIZE argument
1182 to macro.
1183 * config/i386/i386.c (optimization_options): Accept new SIZE argument.
1184
1185 Mon Jan 26 23:57:39 1998 Manfred Hollstein <manfred@s-direktnet.de>
1186
1187 * libgcc2.c (__clear_insn_cache): On sysV68 enable the memctl
1188 stuff only if MCT_TEXT is #define'd.
1189
1190 Mon Jan 26 23:52:51 1998 Markus F.X.J. Oberhumer <k3040e4@c210.edvz.uni-linz.ac.at>
1191
1192 * configure.in (i*86-pc-msdosdjgpp): Treat like msdos & go32
1193 configurations.
1194
1195 Fri Jan 23 09:39:36 1998 Nick Clifton <nickc@cygnus.com>
1196
1197 * toplev.c: Add -dM command line option to dump RTL after the
1198 machine dependent reorganisation pass, if there is one.
1199 Reorganise RTL dump code, so that only one file handle is
1200 needed.
1201
1202 Mon Jan 26 12:09:42 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
1203
1204 * except.c (check_exception_handler_labels): Disable warning when
1205 flag_syntax_only.
1206
1207 Mon Jan 26 18:17:32 1998 Jim Wilson <wilson@cygnus.com>
1208
1209 * sparc.c (pic_setup_code): Don't set LABEL_PRESERVE_P.
1210
1211 Mon Jan 26 18:11:30 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1212
1213 * c-decl.c (grokdeclarator): Get parameter tags from
1214 last_function_parm_tags.
1215 * dwarfout.c (output_formal_types): Set TREE_ASM_WRITTEN before
1216 traversing the parameter types.
1217 (output_type): No early exit for FUNCTION_TYPE / METHOD_TYPE context.
1218
1219 Mon Jan 26 01:44:12 1998 Jeffrey A Law (law@cygnus.com)
1220
1221 * h8300.c (print_operand): Handle CONST_DOUBLE for 'e', 'f', and
1222 the default case.
1223 (get_shift_alg): Fix typo.
1224
1225 Sun Jan 25 22:22:04 1998 Richard Henderson <rth@cygnus.com>
1226
1227 * alpha.c (alpha_expand_block_move): Copy ADDRESSOF to reg.
1228
1229 Sun Jan 25 22:14:28 1998 Richard Henderson <rth@cygnus.com>
1230
1231 * toplev.c (get_run_time): Make sure each case gets its variables.
1232
1233 Sun Jan 25 22:10:21 1998 Richard Henderson <rth@cygnus.com>
1234
1235 * configure.in (build_xm_file): Add auto-config.h if host=build.
1236 (host_xm_file_list): Don't add $(srcdir) to auto-config.h.
1237 (build_xm_file_list): Likewise.
1238 * configure: Rebuild.
1239
1240 Sun Jan 25 22:00:25 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
1241
1242 * recog.c (validate_replace_rtx_1): Only perform substitutions
1243 of arguments to commutative and comparison operators once.
1244
1245 Sun Jan 25 12:30:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1246
1247 * sparc.c (output_cbranch): Add default case in
1248 enumeration switch.
1249
1250 * reorg.c (insn_sets_resource_p): Correct typo in prototype.
1251 (emit_delay_sequence): Eliminate unused parameter, all callers
1252 changed.
1253 (fill_simple_delay_slots): Likewise.
1254 (fill_slots_from_thread): Likewise.
1255 (fill_eager_delay_slots): Likewise.
1256 (mark_referenced_resources): Add default case in enumeration switch.
1257 (mark_set_resources): Likewise.
1258 (rare_destination): Likewise.
1259 (mostly_true_jump): Likewise.
1260 (find_dead_or_set_registers): Likewise.
1261 (redirect_with_delay_slots_safe_p): Remove unused variable `slots'.
1262 (update_reg_unused_notes): Remove unused variable `p'.
1263 (mark_target_live_regs): Remove unused variables `next' and
1264 `jump_count'.
1265 (fill_simple_delay_slots): Remove unused variable `j'.
1266 (fill_slots_from_thread): Add parentheses around assignment used
1267 as truth value.
1268 (dbr_schedule): Likewise.
1269
1270 * objc/Make-lang.in (objc.stage1): Depend on stage1-start.
1271 (objc.stage2, objc.stage3, objc.stage4): Likewise.
1272
1273 Sun Jan 25 12:13:47 1998 Michael Tiemann <michael@tiemann.org>
1274
1275 * cse.c (simplify_ternary_operation): Don't try to simplify
1276 IF_THEN_ELSE expressions (created by combine) that don't use
1277 relational operators.
1278
1279 Fri Jan 23 22:48:24 1998 Jeffrey A Law (law@cygnus.com)
1280
1281 * cse.c (simplify_ternary_operation): Handle more IF_THEN_ELSE
1282 simplifications.
1283
1284 * crtstuff.c (init_dummy): Keep the epilogue in the init
1285 section for non-ELF systems.
1286
1287 Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1288
1289 * sh.md (movqi_i+1): New peephole.
1290
1291 Fri Jan 23 15:39:42 1998 Jim Wilson <wilson@cygnus.com>
1292
1293 * Makefile.in: Remove remaining bytecode stuff.
1294 * emit-rtl.c, expr.c: Likewise.
1295
1296 Fri Jan 23 12:41:10 1998 Nick Clifton (nickc@cygnus.com)
1297
1298 * toplev.c (lang_options): Add unknown-pragma options.
1299
1300 Thu Jan 22 23:43:38 1998 Per Bothner <bothner@cygnus.com>
1301
1302 * dwarfout.c (byte_size_attribute): Simplify and fix - don't need
1303 special (and incomplete) handling for Chill arrays.
1304
1305 Fri Jan 23 00:27:23 1998 John Carr <jfc@mit.edu>
1306
1307 * toplev.c (get_run_time): Call sysconf(_SC_CLK_TCK), when available,
1308 to get clock rate.
1309
1310 Fri Jan 23 00:19:36 1998 Gavin Koch (gavin@cygnus.com)
1311
1312 * mips.md (muldi3_internal2): Reverse test for TARGET_MIPS16.
1313
1314 1998-01-22 scott snyder <snyder@d0sgif.fnal.gov>
1315
1316 * mips.c (function_prologue): Use HARD_FRAME_POINTER_REGNUM in
1317 .frame directive instead of FRAME_POINTER_REGNUM.
1318
1319 Fri Jan 23 00:08:55 1998 Robin Kirkham <rjk@mlb.dmt.csiro.au>
1320
1321 * m68k.h (TARGET_SWITCHES): -mcpu32 now clears MASK_68881.
1322 (MACHINE_STATE_m68010_up): Replaced __mc68332__ with __mcpu32__.
1323 * m68k/m68k-none.h(CPP_FPU_SPEC): Update relative to TARGET_SWITCHES.
1324 (CPP_SPEC, ASM_SPEC, CC1_SPEC): Likewise.
1325 (CPP_SPEC): -m68332 defines both __mc68332 and __mcpu32__.
1326 * m68k/t-m68kbare (MULTILIB_OPTIONS): Add mcpu32.
1327 (MULTILIB_MATCHES): -m68332 now uses mcpu32 libraries, not m68000.
1328 (MULTILIB_EXCEPTIONS): Don't build 68881 libraries for m68000,
1329 mcpu32 or m5200.
1330 * longlong.h: Replace __mc68332__ with __mcpu32__.
1331
1332 Thu Jan 22 19:55:40 PST 1998 Jeff Law (law@cygnus.com)
1333
1334 * version.c: Bump for snapshot.
1335
1336 Thu Jan 22 14:47:31 1998 Jim Wilson <wilson@cygnus.com>
1337
1338 * reload.c (push_reload): In WORD_REGISTER_OPERATIONS code, add test
1339 to require the SUBREG mode to be smaller than the SUBREG_REG mode.
1340 * reload1.c (eliminate_regs): Likewise.
1341
1342 Thu Jan 22 14:49:14 1998 Jeffrey A Law (law@cygnus.com)
1343
1344 * regmove.c (find_matches): Initialize matches->earlyclobber too.
1345
1346 Thu Jan 22 01:40:52 1998 Richard Henderson <rth@cygnus.com>
1347
1348 * alpha.md (abssf2, absdf2): Disable in IEEE mode.
1349 (negsf2, negdf2): Use proper subtract in IEEE mode.
1350
1351 Tue Jan 20 09:29:09 1998 Jeffrey A Law (law@cygnus.com)
1352
1353 * Makefile.in: Remove more bytecode stuff.
1354 * expr.c, stmt.c, config/msdos/top.sed: Likewise.
1355 * vax/xm-vms.h, winnt/config-nt.sed: Likewise.
1356 * f/install.texi, objc/Make-lang.in: Likewise.
1357
1358 * Makefile.in: Remove all bytecode support.
1359 (OBJS): Make sure last entry is a real object file, not EXTRA_OBJS.
1360 * emit-rtl.c: Remove all bytecode support.
1361 * expr.c, expr.h function.c, integrate.c: Likewise.
1362 * output.h, regclass.c, rtl.h, stmt.c, toplev.c: Likewise.
1363 * tree.h, varasm.c: Likewise.
1364 * config/m68k/m68k.h: Likewise.
1365 * bi-*, bc-*, bytecode*: Delete bytecode related files.
1366 * modemap.def: Likewise.
1367
1368 Tue Jan 20 09:02:31 1998 Gavin Koch (gavin@cygnus.com)
1369
1370 * mips/mips.md (divsi3,divdi3,modsi3,moddi3,udivsi3,udivdi3,
1371 umodsi3,umoddi3): Handle mips16 div/mod by a constant.
1372
1373 Mon Jan 19 21:57:00 1998 Richard Henderson <rth@cygnus.com>
1374
1375 * i386.md (push): Prohibit symbolic constants if flag_pic.
1376 (movsi+1): Likewise for move to non-register.
1377
1378 Mon Jan 19 11:15:38 1998 Jim Wilson <wilson@cygnus.com>
1379
1380 * alpha.c (mode_mask_operand): Accept 0xffffffff on 32 bit host.
1381 (print_operand): Handle 0xffffffff on 32 bit host.
1382
1383 * configure.in (thread_file): Rename uses before main loop to
1384 target_thread_file. Initialize to empty in main loop. Set thread_file
1385 to target_thread_file after main loop if not set.
1386 * configure: Rebuild.
1387
1388 * genattrtab.c (find_and_mark_used_attributes): Handle CONST_INT.
1389 (add_values_to_cover): Revert last change (which had no ChangeLog
1390 entry).
1391 (simplify_with_current_value_aux): Handle CONST_INT.
1392
1393 Mon Jan 19 10:14:55 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1394
1395 * unprotoize.c: Define UNPROTOIZE first, to actually take effect.
1396
1397 Mon Jan 19 10:11:52 1998 Richard Henderson <rth@cygnus.com>
1398
1399 * configure.in: Add cpp stringify test.
1400 * acconfig.h (HAVE_CPP_STRINGIFY): New tag.
1401 * gengenrtl.c: Use it.
1402 * configure, config.in: Rebuild.
1403
1404 Mon Jan 19 09:43:15 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1405
1406 * Makefile.in (genrtl.c genrtl.h): Add dummy command for GNU make.
1407
1408 Mon Jan 19 09:38:18 1998 Richard Henderson <rth@cygnus.com>
1409
1410 * configure.in: Find declaration for sbrk.
1411 * acconfig.h (NEED_DECLARATION_SBRK): New tag.
1412 * config.in, configure: Rebuild.
1413 * mips-tfile.c: Properly protect declaration of sbrk and free.
1414 * toplev.c: Properly protect declaration of sbrk.
1415
1416 Sun Jan 18 20:18:01 1998 Richard Henderson <rth@cygnus.com>
1417
1418 * alpha.c (alpha_handle_trap_shadows): Ignore CLOBBERs.
1419
1420 Sun Jan 18 01:54:27 1998 Jeffrey A Law (law@cygnus.com)
1421
1422 * alpha/xm-winnt.h (HAS_INIT_SECTION): Undefine.
1423
1424 Sun Jan 18 00:57:35 1998 Mike Stump (mrs@wrs.com)
1425
1426 * configure.in (i960-wrs-vxworks): Default to latest vxworks release.
1427
1428 Sat Jan 17 23:41:36 1998 David S. Miller <davem@tanya.rutgers.edu>
1429
1430 * combine.c (force_to_mode, nonzero_bits): Correctly optimize
1431 constant offset computations from objects with known alignment in
1432 the presence of STACK_BIAS.
1433
1434 * varasm.c (immed_double_const): Add casts to HOST_WIDE_INT where
1435 necessary.
1436 (const_hash): Hash val is unsigned long.
1437 (SYMHASH): Likewise.
1438
1439 * tree.c (TYPE_HASH): Type of hash val is unsigned long.
1440
1441 * print-tree.c (print_node_brief): HOST_PTR_PRINTF format wants a
1442 char pointer, not HOST_WIDE_INT.
1443 (print_node): Likewise. Also hash is unsigned long not
1444 HOST_WIDE_INT.
1445
1446 * cse.c (canon_hash): Hash is unsigned long not HOST_WIDE_INT.
1447
1448 * explow.c (optimize_save_area_alloca): New function for targets
1449 where SETJMP_VIA_SAVE_AREA is true.
1450 (allocate_dynamic_stack_space): On SETJMP_VIA_SAVE_AREA targets,
1451 compute the amount of stack space needed should we find later that
1452 setjmp is never called by this function, stuff rtl for this inside
1453 a REG_NOTE of the final SET of stack_pointer_rtx.
1454 * toplev.c (rest_of_compilation): If SETJMP_VIA_SAVE_AREA and
1455 current_function_calls_alloca, call optimize_save_area_alloca.
1456
1457 Sat Jan 17 23:22:59 1998 John Wehle (john@feith.com)
1458
1459 * i386.md: Remove redundant integer push patterns.
1460 Don't bother checking for TARGET_PUSH_MEMORY when
1461 pushing constants or registers.
1462
1463 Sat Jan 17 22:35:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
1464 J.J VanderHeijden <J.J.vanderHeijden@student.utwente.nl>
1465
1466 * pexecute.c (pexecute): New function for mingw32. Supports pipes.
1467 (pwait): New function for mingw32.
1468
1469 * gcc.c (execute): Mingw32 pexecute() supports pipes, but cygwin32
1470 pipe support is broken for now.
1471
1472 1998-01-17 Lee Iverson <leei@Canada.AI.SRI.COM>
1473
1474 * emit_rtl.c (init_emit_once): Ensure that potential aliasing
1475 between frame_pointer_rtx, hard_frame_pointer_rtx, and
1476 arg_pointer_rtx is respected in initialization.
1477 (init_emit_once): Use gen_rtx_raw_REG() to create
1478 return_address_pointer_rtx.
1479
1480 * reorg.c: #include "expr.h" for rtx prototypes.
1481 * Makefile.in (reorg.o): Depend on expr.h
1482
1483 Sat Jan 17 21:28:08 1998 Pieter Nagel <pnagel@epiuse.co.za>
1484
1485 * Makefile.in (FLAGS_TO_PASS): Pass down gcc_include_dir and
1486 local_prefix to sub-make invocations.
1487
1488 Sat Jan 17 21:24:16 1998 David T. McWherter <dtm@waterw.com>
1489
1490 * objc-parse.c: Recognize protocol qualifiers in class definitions.
1491
1492 Sat Jan 17 21:16:19 1998 Jeffrey A Law (law@cygnus.com)
1493
1494 * rtl.h: Fix typos.
1495
1496 * acconfig.h (NEED_DECLARATION_ATOL): New declaration to check for.
1497 * configure.in: Check for atol.
1498 * rtl.c (atol): Only provide the declaration if NEED_DECLARATION_ATOL.
1499
1500 * rtl.c (read_rtx): Initialize list_rtx to NULL, not NULL_RTX.
1501
1502 * loop.c (find_and_verify_loops): When attempting to move insns from
1503 inside the loop outside the loop, create a BARRIER if no suitable
1504 one was found.
1505
1506 * jump.c (jump_optimize): Remove Dec 17, 1997 chance in
1507 favor of an equivalent change from gcc-2.8.
1508
1509 * i386/x-sco5 (CC): Remove trailing whitespace.
1510
1511 Sat Jan 17 21:09:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1512
1513 * gengenrtl.c (type_from_format): De-ANSIfy function signature.
1514 (accessor_from_format): Likewise.
1515 (xmalloc): New function for use when linking with alloca.o.
1516
1517 Mon Jan 5 02:53:01 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
1518
1519 * frame.c (find_fde): Correct FDE's upper bound.
1520
1521 Fri Jan 16 16:23:52 1998 Richard Henderson <rth@cygnus.com>
1522
1523 * gengenrtl.c (DEF_RTL_EXPR): Provide a K&R compliant version.
1524
1525 Fri Jan 16 10:16:10 1998 Jeffrey A Law (law@cygnus.com)
1526
1527 * calls.c (expand_call): Move #ifdef code out of macro argument
1528 lists.
1529 (emit_library_call, emit_library_call_value): Likewise.
1530
1531 Fri Jan 16 00:46:40 1998 Jeffrey A Law (law@cygnus.com)
1532
1533 * rtl.def (INLINE_HEADER): Fix bug exposed by gen_rtx_FOO changes.
1534
1535 Thu Jan 15 01:02:30 1998 Jeffrey A Law (law@cygnus.com)
1536
1537 * version.c: Bump for snapshot.
1538
1539 Wed Jan 14 22:49:17 1998 Richard Henderson <rth@cygnus.com>
1540
1541 * alias.c: Change all uses of gen_rtx(FOO...) to gen_rtx_FOO;
1542 change gen_rtx(expr...) to gen_rtx_fmt_foo(expr...).
1543 * caller-save.c, calls.c, combine.c, cse.c: Likewise.
1544 * dwarf2out.c, except.c, explow.c, expmed.c, expr.c: Likewise.
1545 * final.c, flow.c, function.c, genpeep.c, haifa-sched.c: Likewise.
1546 * halfpic.c, integrate.c, jump.c, local-alloc.c, loop.c: Likewise.
1547 * profile.c, recog.c, reg-stack.c, regclass.c, regmove.c: Likewise.
1548 * reload.c, reload1.c, reorg.c, sched.c, stmt.c, stupid.c: Likewise.
1549 * unroll.c, varasm.c: Likewise.
1550 * config/alpha/alpha.c, config/alpha/alpha.md: Likewise.
1551
1552 Wed Jan 14 19:36:08 1998 Gavin Koch (gavin@cygnus.com)
1553
1554 * mips.h: Fix some type-o's from a previous change.
1555
1556 Wed Jan 14 01:26:05 1998 Jeffrey A Law (law@cygnus.com)
1557
1558 * loop.c (check_dbra_loop): Make sure initial value is a
1559 CONST_INT before trying to normalize it.
1560
1561 Tue Jan 13 23:27:54 1998 Robert Lipe (robertl@dgii.com)
1562
1563 * sco5.h (ASM_OUTPUT_SECTION_NAME): Refresh from ../svr4.h.
1564
1565 Tue Jan 13 22:47:02 1998 Herman ten Brugge <herman@htbrug.net.HCC.nl>
1566
1567 * cppexp.c: Include gansidecl.h
1568
1569 Tue Jan 13 22:43:35 1998 Ian Lance Taylor <ian@cygnus.com>
1570
1571 * svr4.h (LINK_SPEC): Never specify -h.
1572 * ptx4.h (LINK_SPEC): Likewise.
1573 * rs6000/sysv4.h (LINK_SPEC): Likewise.
1574 * sparc/sol2.h (LINK_SPEC): Likewise.
1575
1576 Tue Jan 13 22:39:40 1998 Richard Henderson (rth@cygnus.com)
1577
1578 * c-typeck.c (comptypes): Exit early on NULL input.
1579
1580 * haifa-sched.c (schedule_insns): Correctly remove inter-block
1581 dependencies after reload.
1582
1583 Tue Jan 13 22:22:31 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
1584
1585 * rs6000/linux.h (CPP_PREDEFINES): Add -D__ELF__.
1586
1587 Tue Jan 13 22:14:57 1998 Klaus Kaempf <kkaempf@progis.de>
1588
1589 * alpha/vms.h (DIR_SEPARATOR): define
1590
1591 Tue Jan 13 22:13:04 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
1592
1593 * Makefile.in (stamp-proto): Remove.
1594 (protoize.o, unprotoize.o): Straightforward compile.
1595 * unprotoize.c: Define UNPROTOIZE here, not in the Makefile.
1596
1597 Tue Jan 13 21:59:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
1598
1599 * i386/cygwin32.h (STRIP_NAME_ENCODING): Define for Win32 to strip
1600 off the trailing @[NUM] added by ENCODE_SECTION_INFO.
1601
1602 Tue Jan 13 21:55:06 1998 Jeffrey A Law (law@cygnus.com)
1603
1604 * arm/netbsd.h (DWARF2_UNWIND_INFO): Define as zero for now.
1605 * i386/netbsd.h, m68k/netbsd.h, ns32k/netbsd.h: Likewise.
1606 * sparc/netbsd.h, vax/netbsd.h: Likewise.
1607
1608 Tue Jan 13 21:37:07 1998 Shigeya Suzuki <shigeya@foretune.co.jp>
1609
1610 * i386/bsd386.h (DWARF2_UNWIND_INFO): Define as zero for now.
1611
1612 Tue Jan 13 17:50:55 1998 Jim Wilson <wilson@cygnus.com>
1613
1614 * configure.in (target_cpu_default, target_cpu_default2): Use double
1615 quotes around them when testing their value.
1616 * configure: Rebuilt.
1617
1618 Tue Jan 13 09:07:44 1998 John Carr <jfc@mit.edu>
1619
1620 * gengenrtl.c (gencode): Emit new function obstack_alloc_rtx
1621 to allocate rtx.
1622 (gendef): Call obstack_alloc_rtx.
1623
1624 Tue Jan 13 01:16:36 1998 Robert Lipe (robertl@dgii.com)
1625
1626 * configure.in: (i[3456]86-UnixWare7-sysv5): Treat much like SVR4
1627 for now.
1628
1629 Thu Dec 18 18:40:17 1997 Mumit Khan <khan@xraylith.wisc.edu>
1630
1631 * i386/mingw32.h (INCOMING_RETURN_ADDR_RTX): Delete. Use the value
1632 of DWARF2_UNWIND_INFO, if any, from i386/cygwin32.h instead.
1633 (STANDARD_INCLUDE_DIR): Change to /usr/local/i386-mingw32/include.
1634
1635 Tue Jan 13 00:44:02 1998 Jim Wilson <wilson@cygnus.com>
1636
1637 * mips.md (return_internal): Change mode from SImode to VOIDmode.
1638
1639 Sat Jan 10 22:11:39 1998 J. Kean Johnston <jkj@sco.com>
1640
1641 * i386/sco5.h (STARTFILE_SPEC, ENDFILE_SPEC): Correctly handle
1642 "-static".
1643
1644 Sat Jan 10 22:04:15 1998 Stan Cox <scox@equinox.cygnus.com>
1645
1646 * i386.md: (movsicc_1, movhicc_1): For alternate 3 set the opcode
1647 suffix from operand 3.
1648
1649 Sat Jan 10 21:50:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1650 Jeffrey A Law (law@cygnus.com)
1651
1652 * regmove.c: New implementation of regmove pass.
1653 * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2): Remove
1654 decls, make them have external linkage. Return a value from
1655 optimize_reg_copy_1.
1656 * reload.h (count_occurrences): Add decl.
1657 * reload1.c (count_occurrences): Delete decl, make it have external
1658 linkage.
1659 * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Declare.
1660
1661 Sat Jan 10 20:30:12 1998 Jeffrey A Law (law@cygnus.com)
1662
1663 * regclass.c (record_address_regs): Don't use REG_OK_FOR_BASE_P
1664 if it is not defined.
1665
1666 Thu Jan 8 21:06:54 1998 Richard Henderson <rth@cygnus.com>
1667
1668 * Makefile.in (OBJ, GEN, RTL_H): Add genrtl.[oh] bits.
1669 * emit-rtl.c (gen_rtx): Move special code to ...
1670 (gen_rtx_CONST_INT): New function.
1671 (gen_rtx_REG): New function.
1672 (*): Update all calls to gen_rtx.
1673 * genemit.c (gen_exp): Emit calls to gen_rtx_FOO for constant FOO.
1674 * rtl.h: Include genrtl.h; prototype CONST_INT & REG generators.
1675 (GEN_INT): Call gen_rtx_CONST_INT.
1676 * gengenrtl.c: New file.
1677
1678 Mon Jan 5 13:00:18 1998 John F. Carr <jfc@mit.edu>
1679
1680 * alias.c (*_dependence): Call base_alias_check before canon_rtx.
1681 (base_alias_check): If no base found for address call canon_rtx and
1682 try again.
1683
1684 Mon Jan 5 11:39:49 1998 Jeffrey A Law (law@cygnus.com)
1685
1686 * mips.c (mips_expand_prologue): Handle large frame with no outgoing
1687 arguments for mips16.
1688 (mips_expand_epilogue): Pass "orig_tsize" to save_restore_insns.
1689 Don't lose if tsize is zero after handling large stack for mips16.
1690 * mips.md (return): For trivial return, return address is in $31.
1691
1692 Sun Jan 4 20:24:00 1998 Nigel Stephens <nigel@algor.co.uk>
1693
1694 * mips/mips16.S: Various changes to make it work with -msingle-float
1695 and -EL.
1696
1697 Sun Jan 4 14:25:18 1998 Gavin Koch <gavin@cygnus.com>
1698 Ian Lance Taylor <ian@cygnus.com>
1699 Jeff Law <law@cygnus.com>
1700
1701 * mips.c, mips.h, mips.md: First cut at merging in mips16
1702 support. Major modifications throughout all three files.
1703
1704 Sun Jan 4 01:01:50 1998 scott snyder <snyder@d0sgif.fnal.gov>
1705
1706 * configure.in: Make gthr-default.h a forwarding header instead of
1707 a symlink.
1708
1709 Sat Jan 3 12:08:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1710
1711 * gcov-io.h: Include sys/types.h to ensure we get size_t.
1712
1713 * pa.h (ASM_OUTPUT_MI_THUNK): Add missing % in fprintf.
1714
1715 Fri Jan 2 23:40:09 1998 Jim Wilson (wilson@cygnus.com)
1716 Jeffrey A Law (law@cygnus.com)
1717
1718 * crtstuff.c (__frame_dummy): New function for irix6.
1719 (__do_global_ctors): Call __frame_dummy for irix6.
1720 * iris6.h (LINK_SPEC): Hide __frame_dummy too.
1721
1722 Fri Jan 2 04:57:57 1998 Weiwen Liu <liu@hepmail.physics.yale.edu>
1723
1724 * alpha.c (vms_valid_decl_attribute_p): Move within #if OPEN_VMS.
1725
1726 Fri Jan 2 04:34:14 1998 Richard Henderson <rth@cygnus.com>
1727
1728 * c-decl.c (init_decl_processing): Provide proper fallback symbol
1729 for __builtin_memset.
1730 * expr.c (expand_builtin) [MEMSET]: Arg 3 type code is INTEGER_TYPE
1731 not INTEGER_CST. Assert arg 3 is a constant.
1732
1733 * alpha.c (mode_width_operand): Accept 64-bit modes.
1734 (mode_mask_operand): Likewise.
1735 (print_operand): Likewise for 'M' and 'U' codes.
1736 (alpha_expand_unaligned_load): New function.
1737 (alpha_expand_unaligned_store): Likewise.
1738 (alpha_expand_unaligned_load_words): Likewise.
1739 (alpha_expand_unaligned_store_words): Likewise.
1740 (alpha_expand_block_move): Likewise.
1741 (alpha_expand_block_clear): Likewise.
1742 * alpha.h (MOVE_RATIO): New define.
1743 * alpha.md (extxl, ext*h, ins*l, mskxl): Name them.
1744 (insql, insxh, mskxh, extv, extzv, insv, movstrqi, clrstrqi): New.
1745
1746 * alpha.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE): Set to 3.
1747 (CONSTANT_ALIGNMENT, DATA_ALIGNMENT): Disable.
1748
1749 Thu Jan 1 15:40:15 1998 Richard Henderson <rth@cygnus.com>
1750
1751 * configure.in: Put parenthesis around TARGET_CPU_DEFAULT's value.
1752 * configure: Update.
1753
1754 Thu Jan 1 10:49:12 1998 Jeffrey A Law (law@cygnus.com)
1755
1756 * emit-rtl.c (operand_subword): Correctly handle extracting a word
1757 from a CONST_DOUBLE for 16bit targets with !WORDS_BIG_ENDIAN.
1758
1759 * mn10200.md (tstxx, cmpxx): Use "nonimmediate_operand" as predicate
1760 for first argument.
1761
1762 Wed Dec 31 14:42:18 1997 Ian Lance Taylor <ian@cygnus.com>
1763
1764 * configure.in: Set and subsitute host_exeext. Use it when creating
1765 the assembler and linker symlinks.
1766 * configure: Rebuild.
1767 * Makefile.in (exeext): Set to @host_exeext@.
1768 (build_exeext): New variable, set to @build_exeext@.
1769 (FLAGS_TO_PASS): Pass down build_exeext.
1770 (STAGESTUFF): Use build_exeext, not exeext, for gen* and bi*
1771 programs.
1772
1773 Wed Dec 31 10:05:44 1997 Jeffrey A Law (law@cygnus.com)
1774
1775 * mn10200.md (addsi3, subsi3): Fix thinkos.
1776
1777 Tue Dec 30 00:04:49 1997 Richard Henderson <rth@cygnus.com>
1778
1779 * sparc.h (ASM_OUTPUT_MI_THUNK): Move %o7 through %g1 instead of
1780 save+restore. Fix pic+big_offset delay slot. Use "pic" case for
1781 unix always, since we want to be able to thunk to functions in a
1782 shared library from an application.
1783
1784 Mon Dec 29 14:37:31 1997 Ian Lance Taylor <ian@cygnus.com>
1785
1786 * mips/t-ecoff (CROSS_LIBGCC1): Define to libgcc1-asm.a.
1787 (LIB1ASMSRC, LIB1ASMFUNCS): Define.
1788
1789 Mon Dec 29 14:03:38 1997 Jeffrey A Law (law@cygnus.com)
1790
1791 * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
1792 offset's mode is not ptr_mode, convert it.
1793
1794 Mon Dec 29 15:58:18 1997 Michael Meissner <meissner@cygnus.com>
1795
1796 * libgcc2.c (inhibit_libc): Don't define inhibit_libc when cross
1797 compiling if it was already defined.
1798
1799 Sun Dec 28 00:32:16 1997 Jeffrey A Law (law@cygnus.com)
1800
1801 * flow.c (find_basic_blocks): Don't create a new basic block
1802 for calls in a LIBCALL block.
1803
1804 Sun Dec 28 00:30:24 1997 David Edelsohn <edelsohn@mhpcc.edu>
1805
1806 * config/fp-bit.c (L_df_to_sf): Fix typo in last change.
1807
1808 Sat Dec 27 22:43:12 1997 Jeffrey A Law (law@cygnus.com)
1809
1810 * cse.c (rtx_cost): Remove conflicting default case.
1811
1812 Sat Dec 27 21:20:02 1997 Richard Henderson <rth@cygnus.com>
1813
1814 * configure.in: Move default enabling of Haifa out of for loop.
1815 * configure: Rebuild.
1816
1817 Thu Dec 25 01:02:54 1997 Jeffrey A Law (law@cygnus.com)
1818
1819 * version.c: Bump for snapshot.
1820
1821 1997-12-25 Teemu Torma <tot@trema.com>
1822
1823 * Makefile.in (GTHREAD_FLAGS): New var.
1824 (LIBGCC2_CFLAGS): Added $(GTHREAD_FLAGS).
1825 (distclean): Remove gthr-default.h.
1826
1827 * configure.in: Accept dce as a thread package.
1828 Check for thread.h and pthread.h.
1829 Link gthr-default.h to appropriate thread file and set
1830 gthread_flags.
1831 (hppa1.1-*-hpux10*): If --enable-threads, use dce threads and
1832 include multilib definitions from pa/t-dce-thr.
1833 (sparc-*-solaris2*): Enable threads by default, if thread.h or
1834 pthread.h is found, preferring posix threads over solaris ones.
1835
1836 * config/pa/t-dce-thr: New file.
1837 * config/pa/t-pa: Removed multilibs.
1838 * config/sparc/t-sol2: Ditto.
1839
1840 * gthr.h: New file.
1841 * gthr-single.h: New file.
1842 * gthr-posix.h: New file.
1843 * gthr-solaris.h: New file.
1844 * gthr-dce.h: New file.
1845 * libgcc-thr.h: Removed.
1846 * objc/thr-dce.c: New file copied from thr-decosf1.c.
1847
1848 * frame.c: Include gthr.h instead of libgcc-thr.h.
1849 * libgcc2.c: Include gthr.h instead of libgcc-thr.h.
1850 (eh_context_initialize): If __gthread_once fails, use static eh
1851 context.
1852 (eh_context_free): Call __gthread_key_dtor.
1853
1854 Wed Dec 24 23:33:17 1997 Jeffrey A Law (law@cygnus.com)
1855
1856 * expr.h (MUST_PASS_IN_STACK): Allow target port to override.
1857
1858 Wed Dec 24 23:12:14 1997 Jim Wilson <wilson@cygnus.com>
1859
1860 * cse.c (max_insn_uid): New variable.
1861 (cse_around_loop): Use max_insn_uid.
1862 (cse_main): Set max_insn_uid.
1863
1864 * abi64.h (LONG_MAX_SPEC): Check MIPS_ABI_DEFAULT and TARGET_DEFAULT,
1865 and define __LONG_MAX__ appropriately. Add support for -mabi=X,
1866 -mlong64, and -mgp{32,64} options.
1867 * mips.c (mips_abi): Change type to int.
1868 * mips.h (enum mips_abi_type): Delete.
1869 (ABI_32, ABI_N32, ABI_64, ABI_EABI): Define as constants.
1870 (mips_abi): Change type to int.
1871
1872 Wed Dec 24 22:38:34 1997 John Carr <jfc@mit.edu>
1873
1874 * flags.h, toplev.c, calls.c, alias.c: Remove flag_alias_check;
1875 optimization is now always enabled.
1876
1877 * calls.c (expand_call): Recognize C++ operator new as malloc-like
1878 function.
1879
1880 * alias.c (memrefs_conflict_p): Eliminate tests now done by
1881 base_alias_check.
1882 (*_dependence): Call canon_rtx before base_alias_check.
1883 (init_alias_once): New function to precompute set of registers which
1884 can hold Pmode function arguments.
1885
1886 * rtl.h: Declare init_alias_once.
1887
1888 * toplev.c (compile_file): Call init_alias_once.
1889
1890 Wed Dec 24 22:34:55 1997 Jeffrey A Law (law@cygnus.com)
1891
1892 * tree.c (restore_tree_status): Do not dereference a null pointer.
1893
1894 Tue Dec 23 12:56:46 1997 Paul Eggert <eggert@twinsun.com>:
1895
1896 * genattrtab.c (main): Check HAVE_{G,S}ETRLIMIT in addition to
1897 RLIMIT_STACK. This maintains consistency with the recent, similar
1898 patch to cccp.c and toplev.c.
1899
1900 Tue Dec 23 05:17:28 1997 Richard Henderson <rth@cygnus.com>
1901
1902 * genattrtab.c (expand_units): For large nr opclasses, expand
1903 function_units_used with ORX to prevent blowups. Tag with FFS.
1904 (num_unit_opclasses): New variable.
1905 (gen_unit): Update it.
1906 (enum operator): Add ORX_OP.
1907 (operate_exp): Treat ORX as or, except don't expand across an if.
1908 Reuse number rtx's after operating on them.
1909 (check_attr_value): Accept IOR, AND, & FFS.
1910 (write_test_expr): Transmute `in_comparison' to `flags'. Allow
1911 for attribute value caching. Handle CONST_STRING, IF_THEN_ELSE.
1912 (write_expr_attr_cache, write_toplevel_expr): New functions.
1913 (write_attr_get): Handle FFS-tagged expressions.
1914 (make_canonical): Don't expand const attributes.
1915 (convert_const_symbol_ref): Dike out.
1916 (evaluate_eq_attr): Handle SYMBOL_REF.
1917 (main): Don't emit get_attr_foo for const attributes.
1918
1919 * alpha.c (override_options): Reinstate PROCESSOR_EV6.
1920 (alpha_adjust_cost): Add EV6 tuning; streamline EV5 tests.
1921 * alpha.h (REGISTER_MOVE_COST): Increase ftoi/itof cost slightly.
1922 * alpha.md: Redo all of the scheduling, adding EV6 support, and
1923 combining function units where possible.
1924 (attr "type"): Split loads, stores, cmov into int/fp. Combine
1925 multiplies and divides. Add EV6 sqrt, ftoi, itof.
1926 (attr "opsize"): New attribute.
1927 (sqrtsf2-1, sqrtdf2-1): Provide proper TP_INSN patterns.
1928 (movsf2-[12], movdf2-[12]): Provide CIX varients; don't allow CIX
1929 to control register allocation.
1930 (movsi2-1, movdi2-1): Likewise.
1931
1932 Tue Dec 23 03:53:21 1997 Richard Henderson <rth@cygnus.com>
1933
1934 * alpha.h (CPP_PREDEFINES, LIB_SPEC, LINK_SPEC, STARTFILE_SPEC,
1935 MD_STARTFILE_PREFIX, ASM_FILE_START, ASM_SPEC, ASM_FINAL_SPEC):
1936 Move OSF/1 specific defines out.
1937 * alpha/elf.h (TARGET_VERSION, CPP_PREDEFINES, DEFAULT_VTABLE_THUNKS):
1938 Move Linux specific defines out.
1939 (LINK_SPEC): Genericize.
1940 (ASM_FILE_START): Emit .arch if using more than the base insn set.
1941 (ASM_OUTPUT_SOURCE_LINE): Remove; identical to alpha.h version.
1942 (SDB_DEBUGGING_INFO): Remove; gas can't handle it.
1943 (HANDLE_SYSV_PRAGMA): Define.
1944 * alpha/osf.h: New file.
1945 * alpha/linux.h: Split. Retain file-format independant defines.
1946 Import Linux bits from elf.h.
1947 (CPP_PREDEFINES): Take a file-format specific SUB_CPP_PREDEFINES
1948 (FUNCTION_PROFILER): _mcount takes its address in $28.
1949 (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Remove undef.
1950 * alpha/linux-ecoff.h: New file.
1951 * alpha/linux-elf.h: New file.
1952 * alpha/vms.h (LIB_SPEC, LINK_SPEC): Copy from osf.h.
1953 * alpha/win-nt.h (TARGET_DEFAULT): Define.
1954 * configure.in (alpha*-*-osf*, alpha*-*-linux*) [tm_file]:
1955 Add new headers as appropriate.
1956
1957 * configure.in (alpha*): Enable Haifa by default.
1958 (*-*-winnt3*): Change to winnt*, since we're not v3 specific.
1959 * configure: Rebuild.
1960
1961 Tue Dec 23 03:14:54 1997 Richard Henderson <rth@cygnus.com>
1962
1963 * Makefile.in (clean): Remove the stages with their objects here ...
1964 (distclean): ... instead of here.
1965
1966 Mon Dec 22 11:24:01 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1967
1968 * cse.c (rtx_cost): Add default case in enumeration switch.
1969 * fix-header.c (recognized_macro): Likewise.
1970 (recognized_extern): Likewise.
1971 (write_rbrac): Likewise.
1972 * objc/objc-act.c (encode_aggregate): Likewise.
1973 (gen_declarator): Likewise.
1974 (gen_declspecs): Likewise.
1975
1976 Mon Dec 22 09:58:51 1997 Jeffrey A Law (law@cygnus.com)
1977
1978 * haifa-sched.c (create_reg_dead_note): Detect and handle another
1979 case where we kill more regs after sched than were killed before
1980 sched.
1981 * sched.c (create_reg_dead_note): Similarly.
1982
1983 Mon Dec 22 09:18:37 1997 Jeffrey A Law (law@cygnus.com)
1984
1985 * c-pragma.c: Include flags.h.
1986
1987 Sun Dec 21 22:10:59 1997 Mumit Khan <khan@xraylith.wisc.edu>
1988
1989 * i386/cygwin32.h (NO_IMPLICIT_EXTERN_C): Don't assume anything
1990 about system headers.
1991 (LIB_SPEC): Add -ladvapi32 -lshell32 to be consistent with mingw32
1992 and also to resolve symbols in prefix.c.
1993
1994 * i386/xm-cygwin32.h (HAVE_BCOPY): Define. This avoids a conflict
1995 between gansidecl.h and newlib's _ansi.h when building libgcc2.a,
1996 when the definitions in auto-config.h is not visible.
1997 (HAVE_BZERO): Likewise.
1998 (HAVE_BCMP): Likewise.
1999 (HAVE_RINDEX): Likewise.
2000 (HAVE_INDEX): Likewise.
2001
2002 Sun Dec 21 21:54:22 1997 Jeffrey A Law (law@cygnus.com)
2003
2004 * pa.c (emit_move_sequence): Handle a function label source
2005 operand.
2006
2007 Sun Dec 21 16:13:55 1997 Nick Clifton <nickc@cygnus.com
2008
2009 * c-pragma.c (handle_pragma_token): Generate warning messages
2010 about unknown pragmas if warn_unknown_pragmas is set.
2011
2012 * c-decl.c (c_decode_option): Parse -Wunknown-pragmas command
2013 line option to set variable: warn_unknown_pragmas.
2014
2015 Sun Dec 21 15:51:10 1997 Manfred Hollstein <manfred@lts.sel.alcatel.de>
2016
2017 * m68k/mot3300.h (ASM_BYTE_OP): Don't include '\t' in the
2018 definition.
2019 (ASM_OUTPUT_ASCII): Prefix ASM_BYTE_OP by one single '\t'.
2020
2021 Sun Dec 21 13:58:39 1997 Jeffrey A Law (law@cygnus.com)
2022
2023 * Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS): Define.
2024 (libgcc2.a): Depend on $(DPBIT) and $(FPBIT). Add rules to
2025 generate more fine grained floating point emulation libraries.
2026 * config/fp-bit.c: Add protecting #ifdef to all functions so
2027 that they can be compiled separately. If !FINE_GRAINED_LIBRARIES,
2028 then compile all suitable functions.
2029 (pack_d, unpack_d, fpcmp_parts): Add declarations, define with two
2030 underscores to avoid namespace pollution.
2031 * t-mn10200 (LIB2FUNCS_EXTRA): Remove fp-bit.c
2032 (FPBIT): Define.
2033 * t-mn10300 (LIB2FUNCS_EXTRA): Remove fp-bit.c and dp-bit.c
2034 (FPBIT): Define.
2035 (DPBIT): Define.
2036
2037 Sat Dec 20 11:26:47 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2038 Jeff Law <law@cygnus.com>
2039
2040 * bitmap.c (bitmap_clear): Ensure `inline' is at the beginning
2041 of the declaration.
2042 * c-decl.c (finish_decl): Use parentheses around && within ||.
2043 * rtl.c: Include stdlib.h.
2044 (read_skip_spaces): Add parentheses around assignments used as
2045 truth values.
2046 (read_rtx): Initialize list_rtx.
2047 * cppexp.c (parse_number): Use || when operands are truth values.
2048 * alias.c (find_base_value): Add default case.
2049 (memrefs_conflict): Likewise.
2050 * combine.c (sets_function_arg_p): Likewise.
2051 * genemit.c (gen_exp): Likewise.
2052 * local-alloc.c (contains_replace_regs): Likewise.
2053 * rtlanal.c (jmp_uses_reg_or_mem): Likewise.
2054 * fold-const.c (fold_convert): Use "&&" for truth values.
2055 (fold): Add default case.
2056 * sdbout.c (sdbout_field_types): Fix typo in declaration.
2057 (sdbout_one_type): Add default case.
2058 * alpha.c (alpha_sa_mask): Prototype only if OPEN_VMS.
2059 (some_operand): Add default case.
2060 (input_operand): Likewise.
2061 (signed_comparison_operator): Likewise.
2062 (divmod_operator): Likewise.
2063 (alpha_set_memflags_1): Likewise.
2064 * reload1.c (reload_cse_simplify_operands): Ensure function
2065 always returns a value.
2066 * scan-decls.c (scan_decls): Likewise.
2067 * c-lex.c (skip_white_space): Fix typo in declaraion.
2068 * c-typeck.c (comp_target_types): Add parentheses around assignment
2069 used as truth value.
2070 (print_spelling): Likewise.
2071 (constructor_implicit, constructor_result): Remove unused variables.
2072 * collect2.c (scan_library): Protect prototype with
2073 #ifdef SCAN_LIBRARIES.
2074 * emit-rtl.c (find_line_note): Fix typo in declaration.
2075 * final.c (asm_insn_count): Protect prototype with
2076 #ifdef HAVE_ATTR_length.
2077 * flow.c (find_auto_inc): Protect prototype with #ifdef AUTO_INC_DEC.
2078 (try_pre_increment_1, try_pre_increment): Likewise.
2079 * regclass.c (auto_inc_dec_reg_p): Protect prototype with
2080 #ifdef FORBIDDEN_INC_DEC_CLASSES. Make return type explicit.
2081 * gcov-io.h (__store_long, __write_long, __read_long): Fix
2082 unsigned/signed comparisons.
2083 * gcov.c (read_files): Remove unused "first_type" variable.
2084 (scan _for_source_files): Initialize s_ptr.
2085 (function_summary): Eliminate "%lf" formatting, use %ld for
2086 longs.
2087 (output_data): Initialize branch_probs and last_line_num.
2088 Eliminate "%lf" formatting, use "%ld" for longs.
2089
2090 Fri Dec 19 17:31:11 1997 Ian Lance Taylor <ian@cygnus.com>
2091
2092 * mips16.S: New file.
2093
2094 * libgcc2.c (varargs): Handle mips16.
2095
2096 * expr.c (do_tablejump): Let CASE_VECTOR_PC_RELATIVE be an
2097 expression.
2098 * stmt.c (expand_end_case): Likewise.
2099 * alpha.h (CASE_VECTOR_PC_RELATIVE): Update.
2100 * fx80.h, gmicro.h, m68k.h, m88k.h, ns32k.h: Likewise.
2101 * rs6000.h, sh.h, tahoe.h, v850.h vax.h z8k.h: Likewise.
2102
2103 Tue Dec 16 15:14:09 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2104
2105 * objc/Make-lang.in: Create runtime-info.h and libobjc_entry.o in
2106 the build directory.
2107 (libobjc.a): Update dependency list.
2108 (libobjc.dll): Likewise. Use libobjc_entry.o from the build
2109 directory.
2110 (objc/sendmsg.o): Add -Iobjc to find runtime-info.h.
2111 (objc.mostlyclean): Remove runtime-info.h.
2112
2113 Fri Dec 19 00:19:42 1997 Richard Henderson <rth@cygnus.com>
2114
2115 * tree.c (build_range_type): Allow creation of ranges with no maximum.
2116 * dbxout.c (dbxout_range_type): Handle missing TYPE_MAX_VALUE.
2117 * dwarf2out.c (add_subscript_info): Likewise.
2118 * dwarfout.c (subscript_data_attribute, byte_size_attribute): Likewise.
2119 * sdbout.c (plain_type_1): Likewise.
2120 * stmt.c (pushcase_range, all_cases_count, node_has_high_bound):
2121 Likewise.
2122 * fold-const.c (int_const_binop, fold_convert, make_range, fold):
2123 Likewise.
2124
2125 Thu Dec 18 17:05:10 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2126
2127 * mips.c (fatal): Remove declaration.
2128
2129 1997-12-18 Mark Mitchell <mmitchell@usa.net>
2130
2131 * integrate.c (get_label_from_map): New function.
2132 (expand_inline_function): Use it. Initialize the label_map to
2133 NULL_RTX instead of gen_label_rtx.
2134 (copy_rtx_and_substitute): Use get_label_from_map.
2135 * integrate.h (get_label_from_map): New function.
2136 (set_label_from_map): New macro.
2137 * unroll.c (unroll_loop): Use them.
2138 (copy_loop_body): Ditto.
2139
2140 Thu Dec 18 19:19:57 1997 Ian Lance Taylor <ian@cygnus.com>
2141
2142 * mips/mips.h (INIT_SUBTARGET_OPTABS): Define if not defined.
2143 (INIT_TARGET_OPTABS): Define.
2144 * mips/ecoff.h: Include gofast.h before mips.h.
2145 (INIT_SUBTARGET_OPTABS): Define instead of INIT_TARGET_OPTABS.
2146 * mips/elf64.h: Likewise.
2147 * mips/elf.h (ASM_OUTPUT_SECTION_NAME): Define.
2148
2149 Thu Dec 18 14:51:12 1997 Jason Merrill <jason@yorick.cygnus.com>
2150
2151 * except.c: Remove register_exception_table{,_p}.
2152
2153 Thu Dec 18 14:57:29 1997 Gavin Koch <gavin@cygnus.com>
2154
2155 * unroll.c (calculate_giv_inc): Handle constant increment found in
2156 a MEM with an appropriate REG_EQUAL note.
2157
2158 * calls.c (expand_call): Implement LOAD_ARGS_REVERSED.
2159
2160 * dwarf2out.c (dwarf2out_frame_debug): Handle adjustments of the
2161 frame pointer in the prologue.
2162
2163 Thu Dec 18 00:19:38 1997 Robert Lipe <robertl@dgii.com>
2164
2165 * i386/x-sco5 (CLIB) Deleted. (ALLOCA) Added.
2166 * i386/xm-sco5.h (USE_C_ALLOCA) Added.
2167
2168 Tue Dec 16 18:51:00 1997 Bill Moyer <billm@cygnus.com>
2169
2170 * config/m68k/m68k.c (output_function_prologue): Typecast
2171 dwarf2out_cfi_label to (char *).
2172 * config/m68k/m68kemb.h (STARTFILE_SPEC): Redefined to "".
2173
2174 Wed Dec 17 15:06:04 1997 Richard Henderson <rth@cygnus.com>
2175
2176 * sparc.md (jump): Don't use the annul bit around an empty loop.
2177 Patch from Kevin.Kelly@East.Sun.COM.
2178
2179 Wed Dec 17 00:51:36 1997 Stan Cox (scox@cygnus.com)
2180
2181 * jump.c: (jump_optimize): Don't use the return register as a
2182 source1 of a conditional move.
2183
2184 Tue Dec 16 23:45:40 1997 Richard Henderson <rth@cygnus.com>
2185
2186 * sparc.c (DF_MODES): Or the mask not the bit number.
2187 (function_arg) [ARCH64]: Send unprototyped arg to fp reg first.
2188
2189 Wed Dec 17 00:13:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
2190
2191 * combine.c (force_to_mode): return immediately if operand is a CLOBBER.
2192
2193 Tue Dec 16 23:44:54 1997 Manfred Hollstein <manfred@s-direktnet.de>
2194
2195 * fixincludes (size_t): Add support for Motorola's stdlib.h
2196 which fails to provide a definition for size_t.
2197 (fabs/hypot): Provide a prototype for fabs on m88k-motorola-sysv3.
2198 (strlen,strspn,strcspn return value): Handle different layout on sysV88.
2199 (hypot): Provide a fake for hypot for m88k-motorola-sysv3.
2200
2201 * m68k/xm-mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Define to
2202 prevent unresolved externals in libio.
2203 * m88k/xm-sysv3.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Likewise.
2204
2205 Tue Dec 16 23:25:45 1997 H.J. Lu (hjl@gnu.org)
2206
2207 * config/sparc/linux64.h (LIBGCC_SPEC): Removed.
2208 (CPP_SUBTARGET_SPEC): Add %{pthread:-D_REENTRANT}.
2209 (LIB_SPEC): Updated for glibc 2.
2210
2211 Tue Dec 16 20:11:36 1997 Jeffrey A Law (law@cygnus.com)
2212
2213 * ginclude/stdarg.h: Undo BeOS changes, they break hpux.
2214 * ginclude/varargs.h: Likewise.
2215
2216 Tue Dec 16 00:32:01 1997 Jeffrey A Law (law@cygnus.com)
2217
2218 * version.c: Bump for snapshot.
2219
2220 Tue Dec 16 00:14:29 1997 H.J. Lu (hjl@gnu.org)
2221
2222 * frame.h (__register_frame, __register_frame_table,
2223 __deregister_frame): New.
2224 * frame.c (__register_frame, __register_frame_table,
2225 __deregister_frame): New.
2226 * frame.c (__deregister_frame_info): Return void *.
2227 * frame.h (__deregister_frame_info): Ditto.
2228 * collect2.c (__deregister_frame_info): Ditto.
2229
2230 Mon Dec 15 18:40:08 1997 Richard Henderson <rth@cygnus.com>
2231
2232 * expmed.c (expand_shift): If SHIFT_COUNT_TRUNCATED, drop a SUBREG.
2233
2234 Mon Dec 15 18:31:43 1997 Richard Henderson <rth@cygnus.com>
2235
2236 * alpha.c (alpha_cpu_name): New variable.
2237 (alpha_mlat_string): Likewise.
2238 (alpha_memory_latency): Likewise.
2239 (override_options): Handle -mmemory-latency.
2240 (alpha_adjust_cost): Adjust load cost for latency.
2241 * alpha.h (TARGET_OPTIONS): Add meory-latency.
2242 (REGISTER_MOVE_COST): Define in terms of memory_latency. Take
2243 TARGET_CIX into account.
2244 (MEMORY_MOVE_COST): Define in terms of memory_latency.
2245 * invoke.texi (DEC Alpha Options): Document -mmemory-latency.
2246
2247 * alpha.h (ASM_COMMENT_START): New macro.
2248
2249 Mon Dec 15 17:48:05 1997 Richard Henderson <rth@cygnus.com>
2250
2251 * reload.h, reload1.c (eliminate_regs), caller-save.c, dbxout.c,
2252 dwarfout.c, dwarf2out.c, reload.c, sdbout.c: Revert March 15 change.
2253
2254 * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
2255 SUBREG_REG if the word count is unchanged.
2256 * reload1.c (eliminate_regs) [case SET]: If W_R_O, preserve
2257 subregs of identical word size for push_reload.
2258
2259 Mon Dec 15 Mark Mitchell <mmitchell@usa.net> 11:41:32 1997
2260
2261 * toplev.c (rest_of_compilation): Don't call save_for_inline_copy
2262 if all we're doing is dealing with -Wreturn-type.
2263
2264 Mon Dec 15 09:44:39 1997 Richard Henderson <rth@cygnus.com>
2265
2266 * alpha.md (zero_extendqihi2, zero_extendqisi2, zero_extendqidi2):
2267 Use and 255 instead of zapnot 1, since it schedules better.
2268
2269 Mon Dec 15 08:48:24 1997 Jeffrey A Law (law@cygnus.com)
2270
2271 * stmt.c (expand_asm_operands): If an ASM has no outputs, then treat
2272 it as volatile.
2273
2274 Mon Dec 15 00:04:48 1997 Jeffrey A Law (law@cygnus.com)
2275
2276 * haifa-sched.c (remove_dependencies): Set RTX_INTEGRATED_P on
2277 dependency we delete. Properly update prev for multiple consecutive
2278 deletions.
2279 (priority): Skip deleted dependence.
2280
2281 Fri Dec 12 18:54:23 1997 Per Bothner <bothner@cygnus.com>
2282
2283 * expr.c (expand_builtin): Support BUILT_IN_FMOD - just call fmod.
2284
2285 Fri Dec 12 01:19:48 1997 Jason Merrill <jason@yorick.cygnus.com>
2286
2287 * flow.c (flow_analysis): Be consistent with find_basic_blocks in
2288 determining when a new basic block starts.
2289
2290 * alpha/osf2or3.h (LIB_SPEC): Restore missing defn.
2291
2292 * pa.h (TEXT_SPACE_P): Use TREE_CODE_CLASS.
2293 * pa.md (iorsi3): Add missing args to *_operand calls.
2294
2295 * except.c (call_get_eh_context): Don't mess with sequences.
2296 (emit_eh_context): Include the call in the sequence here.
2297
2298 1997-12-11 Paul Eggert <eggert@twinsun.com>
2299
2300 * collect2.c (write_c_file_glob): Allocate initial frame object
2301 in static storage and pass its address.
2302
2303 Thu Dec 11 23:33:48 1997 Jason Merrill <jason@yorick.cygnus.com>
2304
2305 * except.c (call_get_eh_context): Don't take a parm.
2306 Put the call at the top of the function.
2307 (emit_eh_context): Adjust.
2308 (get_eh_context): Replace with former use_eh_context.
2309 (get_eh_context_once, get_saved_pc_ref): Remove.
2310 (start_eh_unwinder, end_eh_unwinder, emit_unwinder): Remove.
2311 * except.h: Adjust.
2312 * integrate.c (expand_inline_function): Adjust.
2313 * toplev.c (rest_of_compilation): Don't call emit_unwinder.
2314
2315 Fri Oct 10 17:58:31 CEST 1997 Marc Lehmann <pcg@goof.com>
2316
2317 * i386/xm-go32.h (EXECUTABLE_SUFFIX): Define.
2318 (DIR_SEPARATOR, NO_SYS_SIGLIST): Likewise.
2319
2320 Thu Dec 11 23:55:17 1997 Manfred Hollstein <manfred@s-direktnet.de>
2321
2322 * fixincludes (strlen,strspn,strcspn return value): Handle different
2323 layout on sysV88.
2324 (hypot): Provide a fake for hypot which is broken on
2325 m88k-motorola-sysv3.
2326
2327 Thu Dec 11 23:50:17 1997 John F. Carr <jfc@mit.edu>
2328
2329 * tree.c, tree.h: Change tree_code_type, tree_code_length, and
2330 tree_code_name from pointers to arrays.
2331 * tree.c: Remove standard_tree_code_* variables, no longer used.
2332 * print-tree.c: Remove declaration of tree_code_name.
2333
2334 * cp/lex.c (init_lex): Update for tree_code_* changes.
2335 * objc/objc-act.c (init_objc): Likewise.
2336
2337 * tree.def, cp/cp-tree.def, objc/objc-tree.def: Update for tree_code
2338 changes.
2339
2340 Thu Dec 11 23:34:54 1997 Fred Fish <fnf@ninemoons.com>
2341
2342 * config.sub: Add support for BeOS target.
2343 * configure.in: Likewise.
2344 * ginclude/stdarg.h: Likewise.
2345 * ginclude/stddef.h: Likewise.
2346 * ginclude/varargs.h: Likewise.
2347 * rs6000/beos.h: New file for BeOS.
2348 * rs6000/t-beos: Likewise.
2349 * rs6000/x-beos: Likewise.
2350 * rs6000/xm-beos.h: Likewise.
2351 * toplev.c (get_run_time): Just return 0 on BeOS.
2352
2353 Thu Dec 11 23:25:23 1997 Jeffrey A Law (law@cygnus.com)
2354 Toon Moene (toon@moene.indiv.nluug.nl)
2355
2356 * m68k.h (GO_IF_LEGITIMATE_ADDRESS): No longer cater to horribly
2357 old and broken Sun3 assemblers. Newer versions handle large
2358 offsets correctly as does the GNU assembler.
2359
2360 Thu Dec 11 23:06:48 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
2361
2362 * objc/objc-act.c (lang_report_error_function): Disable.
2363 * objc/objc-parse.y: Include "output.h".
2364 (yyerror): Remove redundant decl.
2365 (yyprint): Fix prototype.
2366 (apply_args_register_offset): Remove redundant decl.
2367 (get_file_function_name): Likewise.
2368
2369 Thu Dec 11 22:02:10 1997 Jason Merrill <jason@yorick.cygnus.com>
2370
2371 * flow.c (find_basic_blocks): A CALL_INSN that can throw starts
2372 a new basic block.
2373 (find_basic_blocks_1): Likewise.
2374
2375 Thu Dec 11 21:08:48 1997 Jason Merrill <jason@yorick.cygnus.com>
2376
2377 * except.c (use_eh_context): Don't copy_rtx a REG.
2378 (emit_throw): Lose old unwinder support.
2379 (expand_internal_throw): Likewise.
2380 * libgcc2.c (struct eh_context): Likewise.
2381 (new_eh_context): Likewise.
2382 (__get_eh_info): Lose redundant cast.
2383 (__get_dynamic_handler_chain): Likewise.
2384 (__get_saved_pc): Lose.
2385 Lose all old unwinder support code.
2386
2387 Thu Dec 11 20:42:18 1997 Teemu Torma <tot@trema.com>
2388
2389 Thread-safe EH support for pthreads, DCE threads and Solaris threads.
2390
2391 * integrate.c (expand_inline_function): If the inline fn uses eh
2392 context, make sure that the current fn has one.
2393 * toplev.c (rest_of_compilation): Call emit_eh_context.
2394 * except.c (use_eh_context): New fn.
2395 (get_eh_context_once): New fn.
2396 (call_get_eh_context): New fn.
2397 (emit_eh_context): New fn.
2398 (get_eh_context): Call either get_eh_context_once or
2399 call_get_eh_context, depending on what we have.
2400 (get_dynamic_handler_chain): Call get_eh_context_once.
2401 * except.h: Prototypes for fns above.
2402 * optabs.c (get_eh_context_libfunc): Removed.
2403 (init_optabs): Don't initialize it.
2404 * expr.h (get_eh_context_libfunc): Removed.
2405 * rtl.h, rtl.c: New reg_note REG_EH_CONTEXT.
2406 * config/pa/pa.h (CPP_SPEC): Support for -threads.
2407 * config/pa/pa-hpux10.h (LIB_SPEC): Ditto.
2408 * config/pa/t-pa (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
2409 New multilib for -threads.
2410 * config/sparc/t-sol2: Added multilibs for -threads and
2411 made -pthreads alias to it.
2412 * config/sparc/sol2.h (CPP_SPEC, LIB_SPEC):
2413 Added -threads and -pthreads options.
2414 * libgcc-thr.h: New file.
2415 * libgcc2.c: (__get_cpp_eh_context): Removed.
2416 (struct cpp_eh_context): Removed.
2417 (struct eh_context): Replaced cpp_eh_context with generic language
2418 specific pointer.
2419 (__get_eh_info): New function.
2420 (__throw): Check eh_context::info.
2421 (__sjthrow): Ditto.
2422 * libgcc2.c: Include libgcc-thr.h.
2423 (new_eh_context, __get_eh_context,
2424 eh_pthread_initialize, eh_context_initialize, eh_context_static,
2425 eh_context_specific, eh_context_free): New functions.
2426 (get_eh_context, eh_context_key): New variables.
2427 (__sjthrow, __sjpopnthrow, __eh_pcnthrow, __throw): Use
2428 get_eh_context to get the context.
2429 (longjmp): Move the declaration inside
2430 #ifdef DONT_USE_BUILTIN_SETJMP.
2431 * frame.c: Include libgcc-thr.h.
2432 (object_mutex): Mutex to protect the object list.
2433 (find_fde, __register_frame, __register_frame_table,
2434 __deregister_frame): Hold the lock while accessing objects.
2435 * except.h (get_eh_context): Declare.
2436 * except.c (current_function_ehc): Define.
2437 (current_function_dhc, current_function_dcc): Removed.
2438 (get_eh_context): New function.
2439 (get_dynamic_handler_chain): Use get_eh_context.
2440 (get_saved_pc_ref): Ditto.
2441 (get_dynamic_cleanup_chain): Removed references to
2442 current_function_dcc.
2443 (save_eh_status, restore_eh_status): Save and restore
2444 current_function_ehc instead.
2445 * optabs.c (get_eh_context_libfunc): New variable.
2446 (init_optabs): Initialize it.
2447 * expr.h: Declare get_eh_context_libfunc.
2448 * function.h (struct function): Replaced dhc and dcc with ehc.
2449 * except.c (get_saved_pc_ref): New functions.
2450 (eh_saved_pc_rtx, eh_saved_pc): Deleted.
2451 (expand_internal_throw_indirect): Use get_saved_pc_ref() instead
2452 of eh_saved_pc.
2453 (end_eh_unwinder): Likewise.
2454 (init_eh): Remove initialization of eh_saved_pc.
2455 * optabs.c (get_saved_pc_libfunc): New variable.
2456 (init_optabs): Initialize it.
2457 * expr.h: Declare get_saved_pc_libfunc.
2458 * except.h (eh_saved_pc_rtx): Deleted.
2459 (get_saved_pc_ref): Declared.
2460
2461 From Scott Snyder <snyder@d0sgif.fnal.gov>:
2462 * libgcc2.c (__get_saved_pc): New.
2463 (__eh_type, __eh_pc): Deleted.
2464 (__eh_pcnthrow): Use __get_saved_pc() instead of __eh_pc.
2465 (__get_dynamic_handler_chain): Move __dynamic_handler_chain inside
2466 this fcn.
2467
2468 Thu Dec 11 17:23:48 1997 John F. Carr <jfc@mit.edu>
2469
2470 * sparc/sol2.h: Use 64 bit multiply and divide functions in
2471 Solaris libc. Define TARGET_LIVE_G0 and TARGET_BROKEN_SAVERESTORE
2472 as 0.
2473
2474 * rtl.h (global_rtl): New variable, replacing separate variables for
2475 commonly used rtl.
2476 (const_int_rtx): Now array of rtx_def, not rtx.
2477 * emit-rtl.c: Update for new rtl data structures.
2478 * genattrtab.c: Define global_rtl.
2479
2480 Thu Dec 11 15:50:29 1997 David Edelsohn <edelsohn@mhpcc.edu>
2481
2482 * configure.in ({rs6000,powerpc}-*-*): Enable Haifa scheduler by
2483 default.
2484
2485 Wed Dec 10 12:30:18 1997 Anthony Green <green@cygnus.com>
2486
2487 * crtstuff.c (__do_global_ctors): Fix typo.
2488
2489 Tue Dec 9 09:43:59 1997 Manfred Hollstein <manfred@s-direktnet.de>
2490
2491 * toplev.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
2492 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
2493
2494 Tue Dec 9 09:38:58 1997 David Edelsohn <edelsohn@mhpcc.edu>
2495
2496 * rs6000.h (FUNCTION_ARG_PADDING): Define.
2497 * rs6000.c (function_arg_padding): New function.
2498
2499 Tue Dec 9 10:34:21 1997 Manfred Hollstein <manfred@s-direktnet.de>
2500
2501 * m68k.c: Include tree.h only once.
2502
2503 Tue Dec 9 09:32:33 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2504
2505 * integrate.c (save_for_inline_copying): Make a new reg_parm_stack_loc.
2506
2507 Tue Dec 9 01:16:06 1997 Jeffrey A Law (law@cygnus.com)
2508
2509 * Partially cleaned up prototyping code from HJ.
2510 * tree.h: Add many prototypes.
2511 * haifa-sched.c (haifa_classify_insn): Renamed from classify_insn.
2512 All references changed.
2513 * rtl.h: Protect from multiple inclusions. Add many prototypes.
2514
2515 Tue Dec 9 01:15:15 1997 Fred Fish <fnf@ninemoons.com>
2516
2517 * libgcc2.c (string.h): Hoist inclusion to occur before first use of
2518 string functions like strlen.
2519
2520 Tue Dec 9 00:57:38 1997 Manfred Hollstein <manfred@s-direktnet.de>
2521
2522 * configure.in: Check for functions getrlimit and setrlimit.
2523 * cccp.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
2524 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
2525
2526 Mon Dec 8 23:53:26 1997 Jay Sachs <sachs@bull.cs.williams.edu>
2527
2528 * Makefile.in (compare*): Handle losing behavior from 4.4bsd make.
2529
2530 Mon Dec 8 21:03:28 1997 Richard Henderson <rth@cygnus.com>
2531
2532 * alpha.c (REG_RA, alpha_return_addr, output_epilog):
2533 Fix merge problems.
2534
2535 * alpha.c (override_options): Don't know about scheduling for EV6.
2536 * alpha.md (ev5 function units): Don't overload as ev6.
2537
2538 * alpha.c (alpha_adjust_cost): Simplify. Fix typo in ev5 mult case.
2539 * alpha.md (define_attr type): Add mvi.
2540 (ev5_e0): Define sceduling parameters for it.
2541 (TARGET_MAX insns): Type is mvi not shift.
2542
2543 Mon Dec 8 18:15:00 1997 Richard Henderson <rth@cygnus.com>
2544
2545 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix backported gcc-2.8 bug.
2546
2547 Mon Dec 8 21:17:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
2548
2549 * cstamp-h, auto-config.h: Delete.
2550
2551 Sun Dec 7 19:19:03 1997 Jeffrey A Law (law@cygnus.com)
2552
2553 * version.c: Bump for snapshot.
2554
2555 Sat Dec 6 22:22:22 1997 Jeffrey A Law (law@cygnus.com)
2556
2557 * cccp.c: Fix typo brought over in merge.
2558
2559 * Merge in changes from gcc-2.8.
2560
2561 Mon Nov 3 05:45:32 1997 Philippe De Muyter <phdm@macqel.be>
2562
2563 * m68k.c: Include tree.h for dwarf2out_cfi_label.
2564
2565 * gcc.c (process_command): Do not take address of function fatal when
2566 calling lang_specific_driver.
2567
2568 Sat Dec 6 01:02:38 1997 Mumit Khan <khan@xraylith.wisc.edu>
2569
2570 * config/i386/cygwin32.h (DWARF2_UNWIND): Exception handling
2571 doesn't work with it yet, so set it to 0.
2572 * config/i386/xm-cygwin32.h (NO_SYS_SIGLIST): Define.
2573
2574 Sat Dec 6 01:01:02 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
2575
2576 * cse.c (cse_insn): Check for invalid entries when taking references.
2577
2578 Fri Dec 5 18:26:25 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
2579
2580 * loop.c (invariant_p): Don't test flag_rerun_loop_opt.
2581 (loop_optimize, scan_loop, strength_reduce): New argument unroll_p.
2582 * toplev.c (rest_of_compilation): Pass it. Remove code to
2583 save / clear / restore flag_unroll_{,all_}loops.
2584
2585 Fri Dec 5 16:26:03 1997 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
2586
2587 * i386.c (notice_update_cc): Remove bogus pentium GCC code.
2588
2589 Fri Dec 5 16:25:14 1997 Jeffrey A Law (law@cygnus.com)
2590
2591 * stmt.c (warn_if_unused_value): Don't warn for TRY_CATCH_EXPR.
2592
2593 Thu Dec 4 11:51:00 1997 Jason Merrill <jason@yorick.cygnus.com>
2594
2595 * except.c (get_dynamic_handler_chain): Only make the call once per
2596 function.
2597
2598 * except.c (expand_end_all_catch): Fix for sjlj exceptions.
2599
2600 Thu Dec 4 12:30:40 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
2601
2602 * sh.c (final_prescan_insn): Use local label prefix
2603 when emitting .uses pseudo-ops.
2604
2605 Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
2606
2607 * libgcc2.c (__throw): Use __builtin_return_addr instead of __eh_pc.
2608 * except.c: Lose outer_context_label_stack.
2609 (expand_eh_region_end): Rethrow from outer_context here.
2610 (expand_fixup_region_end): Let expand_eh_region_end do the rethrow.
2611 (expand_internal_throw): Take no args.
2612 (expand_internal_throw_indirect): Lose.
2613 (expand_leftover_cleanups, expand_start_all_catch): Use expand_rethrow.
2614 (expand_start_all_catch): Start a rethrow region.
2615 (expand_end_all_catch): End it.
2616 (expand_rethrow): New fn.
2617 * except.h: Reflect above changes.
2618 * flow.c: Revert change of Nov 27.
2619
2620 Thu Dec 4 00:24:09 1997 Jeffrey A Law (law@cygnus.com)
2621
2622 * i386/t-sol2 (CRTSTUFF_T_CFLAGS): Turn on the optimizer.
2623
2624 Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
2625
2626 * except.c (expand_fixup_region_end): New fn.
2627 (expand_fixup_region_start): Likewise.
2628 (expand_eh_region_start_tree): Store cleanup into finalization here.
2629 * stmt.c (expand_cleanups): Use them to protect fixups.
2630
2631 Wed Dec 3 11:41:13 1997 Gavin Koch <gavin@cygnus.com>
2632
2633 * mips/mips.md (muldi3_r4000): Broaden the output template
2634 and attribute assignments to handle three operand dmult;
2635 rename to muldi3_internal2.
2636 (muldi3): Call the new muldi3_internal2 for R4000, and
2637 any GENERATE_MULT3 chip.
2638
2639 Tue Dec 2 19:40:43 1997 Jason Merrill <jason@yorick.cygnus.com>
2640
2641 * stmt.c (expand_decl_cleanup): Update thisblock after eh_region_start.
2642
2643 Tue Dec 2 12:54:33 1997 Jim Wilson <wilson@cygnus.com>
2644
2645 * unroll.c (find_splittable_givs): Remove last change. Handle givs
2646 with a dest_reg that was created by loop.
2647
2648 Sat Nov 29 12:44:57 1997 David Edelsohn <edelsohn@mhpcc.edu>
2649
2650 * rs6000.c (function_arg_partial_nregs): Undo Nov. 26 patch.
2651
2652 * rs6000/aix41.h (ASM_CPU_SPEC): Define.
2653
2654 Fri Nov 28 10:00:27 1997 Jeffrey A Law (law@cygnus.com)
2655
2656 * configure.in: Fix NCR entries.
2657
2658 Thu Nov 27 12:20:19 1997 Jeffrey A Law (law@cygnus.com)
2659
2660 * flow.c (find_basic_blocks): Handle cfg issues for rethrows and
2661 nested exceptions correctly.
2662
2663 * unroll.c (find_splittable_givs): Don't split givs with a dest_reg
2664 that was created by loop.
2665
2666 Thu Nov 27 09:34:58 1997 Jason Merrill <jason@yorick.cygnus.com>
2667
2668 * expr.c (preexpand_calls): Don't look past a TRY_CATCH_EXPR.
2669
2670 * except.c (expand_start_all_catch): One more do_pending_stack_adjust.
2671
2672 Wed Nov 26 15:47:30 1997 Michael Meissner <meissner@cygnus.com>
2673
2674 * rs6000.c (SMALL_DATA_REG): Register to use for small data relocs.
2675 (print_operand): Use SMALL_DATA_REG for the register involved in
2676 small data relocations.
2677 (print_operand_address): Ditto.
2678
2679 * rs6000/linux.h (LINK_SPEC): Pass -dynamic-linker /lib/ld.so.1 if
2680 -dynamic linker is not used.
2681
2682 * rs6000.md (call insns): For local calls, use @local suffix under
2683 System V. Don't use @plt under Solaris.
2684
2685 * rs6000.c (output_function_profiler): Put label address in r0, and
2686 store LR in 4(sp) for System V/eabi.
2687
2688 * rs6000.h (ASM_OUTPUT_REG_{PUSH,POP}): Keep stack aligned to 16
2689 byte boundary, and maintain stack backchain.
2690
2691 Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
2692
2693 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
2694 fix_truncsfdi2): Change *.
2695
2696 Wed Nov 26 11:12:26 1997 Jason Merrill <jason@yorick.cygnus.com>
2697
2698 * toplev.c (main): Complain about -gdwarfn.
2699
2700 Tue Nov 25 22:43:30 1997 Jason Merrill <jason@yorick.cygnus.com>
2701
2702 * dwarfout.c (output_type): If finalizing, write out nested types
2703 of types we've already written.
2704
2705 Tue Nov 25 20:32:24 1997 Michael Meissner <meissner@cygnus.com>
2706
2707 (patches originally from Geoffrey Keating)
2708 * rs6000.c (function_arg): Excess floating point arguments don't
2709 go into GPR registers after exhausting FP registers under the
2710 System V.4 ABI.
2711 (function_arg_partial_nregs): Ditto.
2712
2713 * rs6000.md (call insns): If -fPIC or -mrelocatable, add @plt
2714 suffix to calls.
2715
2716 Tue Nov 25 23:37:27 1997 Jason Merrill <jason@yorick.cygnus.com>
2717
2718 * integrate.c (output_inline_function): Just unset DECL_INLINE.
2719
2720 Tue Nov 25 23:33:29 1997 scott snyder <snyder@d0sgif.fnal.gov>
2721
2722 * dwarf2out.c (outout_call_frame_info): Ensure that the info has
2723 proper alignment.
2724
2725 * libgcc2.c (__throw): Initialize HANDLER.
2726
2727 Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
2728
2729 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
2730 fix_truncsfdi2): Change *X to ?*X.
2731
2732 Tue Nov 25 10:00:42 1997 Richard Henderson (rth@cygnus.com)
2733
2734 * alpha.h (CONST_OK_FOR_LETTER): Fix 'L' handling.
2735
2736 Tue Nov 25 10:00:42 1997 Jeffrey A Law (law@cygnus.com)
2737
2738 * crtstuff.c (do_global_dtors_aux): Handle multiple calls better.
2739
2740 Tue Nov 25 01:26:55 1997 Bruno Haible <haible@ilog.fr>:
2741
2742 * dwarf2out.c (ASM_OUTPUT_DWARF_DELTA1): Implement.
2743
2744 Mon Nov 24 22:41:55 1997 Jason Merrill <jason@yorick.cygnus.com>
2745
2746 * except.c (get_dynamic_handler_chain): Build up a FUNCTION_DECL.
2747 * optabs.c (init_optabs): Lose get_dynamic_handler_chain_libfunc.
2748 * expr.h: Likewise.
2749
2750 Sat Nov 22 18:58:20 1997 Jeffrey A Law (law@cygnus.com)
2751
2752 * pa-hpux10.h (NEW_HP_ASSEMBLER): Define.
2753 * pa.h (LEGITIMATE_CONSTANT_P): Reject LABEL_REFs if not using
2754 gas and not using the new HP assembler.
2755
2756 Fri Nov 21 15:20:05 1997 Jeffrey A Law (law@cygnus.com)
2757
2758 * Makefile.in (program_transform_cross_name): Clean up "-e" confusion.
2759 (GCC_INSTALL_NAME, GCC_CROSS_NAME): Likewise.
2760
2761 Fri Nov 21 19:37:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
2762
2763 * config/mips/elf64.h (MULTILIB_DEFAULTS): Test for
2764 TARGET_ENDIAN_DEFAULT == zero instead of testing for macro
2765 definition.
2766
2767 Fri Nov 21 12:49:56 1997 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
2768
2769 * stmt.c (expand_end_bindings): Allow jump into block with cleanups.
2770
2771 Fri Nov 21 12:18:51 1997 Jason Merrill <jason@yorick.cygnus.com>
2772
2773 * except.h: Add outer_context_label_stack.
2774 * except.c: Likewise.
2775 (expand_start_all_catch): Push the outer_context for the try block
2776 onto outer_context_label_stack.
2777 (expand_end_all_catch): Use it and pop it.
2778
2779 Fri Nov 21 10:13:11 1997 Robert Lipe (robertl@dgii.com)
2780
2781 * i386/sco5.h (HAVE_ATEXIT): Revert last change.
2782
2783 Thu Nov 20 16:11:50 1997 Richard Henderson <rth@cygnus.com>
2784
2785 * alpha.c (alpha_emit_set_const_1): Handle narrow hosts better.
2786
2787 Thu Nov 20 16:11:50 1997 Klaus Kaempf <kkaempf@progis.de>
2788
2789 * alpha/vms.h (ASM_OUTPUT_ADDR_VEC_ELT): Add an L for the local label
2790 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
2791
2792 Thu Nov 20 14:42:15 1997 Jason Merrill <jason@yorick.cygnus.com>
2793
2794 * Makefile.in (LIB2FUNCS): Remove C++ memory management support.
2795 * libgcc2.c: Remove __builtin_new, __builtin_vec_new, set_new_handler,
2796 __builtin_delete, and __builtin_vec_delete.
2797
2798 * except.c (output_exception_table): Don't bother with
2799 __EXCEPTION_END__.
2800
2801 Thu Nov 20 16:11:50 1997 Jeffrey A Law (law@cygnus.com)
2802
2803 * pa.md (pre_stwm, post_stwm, pre_ldwm, post_ldwm): Base register
2804 is an in/out operand.
2805 (zero extended variants of stwm/stwm patterns): Similarly.
2806
2807 * mips/x-iris (FIXPROTO_DEFINES): Add -D_SGI_SOURCE.
2808
2809 Thu Nov 20 13:19:32 1997 Jason Merrill <jason@yorick.cygnus.com>
2810
2811 * dwarf2out.c (ASM_OUTPUT_DWARF_OFFSET4): Rename from VALUE4.
2812 Use assemble_name.
2813 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Use assemble_name.
2814 (output_call_frame_info): Emit a \n after using it.
2815
2816 Thu Nov 20 00:38:46 1997 Dave Love <d.love@dl.ac.uk>
2817
2818 * configure.in: Add AC_ARG_ENABLE for Haifa as documentation.
2819
2820 Wed Nov 19 12:03:04 1997 Philippe De Muyter <phdm@macqel.be>
2821
2822 * dwarf2out.c (CIE_LENGTH_LABEL, FDE_LENGTH_LABEL): New macros.
2823 (ASM_OUTPUT_DWARF_VALUE4): New macro.
2824 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Define if SET_ASM_OP is
2825 defined.
2826 (output_call_frame_info): Do not output forward label differences
2827 if ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL is defined.
2828 * m68k/mot3300.h (SET_ASM_OP): Define when not using gas.
2829
2830 Tue Nov 18 23:03:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
2831
2832 * sh.md (attribute "type"): Add nil.
2833 (movsi_ie): y/y alternative is type nil.
2834 (movsf_ie): Replace ry/yr/X alternative by r/y/X , y/r/X and y/y/X
2835 alternatives.
2836 (movsf_ie+1): Delete.
2837
2838 Tue Nov 18 15:39:59 1997 Jim Wilson <wilson@cygnus.com>
2839
2840 * mips/mips.c (save_restore_insns): If gp_offset or fp_offset are
2841 large_int, emit two insns instead of one splitable insn.
2842 * dwarf2out.c (dwarf2out_frame_debug): When set cfa_store_offset
2843 from cfa_temp_value, use cfa_offset. Add assert checking that
2844 cfa_reg is SP.
2845
2846 Mon Nov 17 15:35:38 1997 Tom Tromey <tromey@cygnus.com>
2847
2848 * cccp.c (deps_output): Properly quote file names for make.
2849
2850 Mon Nov 17 13:21:40 1997 Jeffrey A Law (law@cygnus.com)
2851
2852 * t-h8300 (MULTILIB_EXCEPTIONS): Define.
2853
2854 Fri Nov 7 15:33:11 1997 Robert Lipe (robertl@dgii.com)
2855
2856 * i386/sco5.h (HAVE_ATEXIT): Delete definition.
2857
2858 Sun Nov 16 23:52:48 1997 Jeffrey A Law (law@cygnus.com)
2859
2860 * cse.c (cse_insn): Don't look at JUMP_LABEL field of a conditionl
2861 return.
2862 (cse_end_of_basic_block): Similarly.
2863
2864 Sun Nov 16 23:01:40 1997 J. Kean Johnston <jkj@sco.com>
2865
2866 * i386/sco5.h (ASM_OUTPUT_ALIGNED_BSS): Define.
2867 (SELECT_RTX_SECTION): Define.
2868 (LIBGCC_SPEC, LIB_SPEC): Do the right thing for PIC.
2869
2870 Sun Nov 16 22:47:03 1997 Manfred Hollstein <manfred@s-direktnet.de>
2871
2872 * Makefile.in (compare, compare-lean): Define $stage for each
2873 shell command.
2874 (gnucompare, gnucompare-lean): Likewise.
2875
2876 Sun Nov 16 22:02:16 1997 Richard Henderson (rth@cygnus.com)
2877
2878 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix offsets.
2879
2880 * alpha.h (ASM_OUTPUT_ADDR_DIFF_ELT): Add an L for the local label
2881 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
2882
2883 Fri Nov 14 09:09:20 1997 Fred Fish (fnf@cygnus.com)
2884
2885 * dwarfout.c (byte_size_attribute): Add local var upper_bound
2886 and add case to handle STRING_TYPE.
2887 * dwarfout.c (output_string_type_die): Fix code to generate
2888 correct string length attribute for fixed length strings.
2889 Still needs support for varying length strings.
2890
2891 Fri Nov 14 08:46:56 1997 Jeffrey A Law (law@cygnus.com)
2892
2893 * toplev.c (get_run_time): Do something sensible for cygwin32.
2894
2895 Fri Nov 14 07:24:20 1997 Richard Henderson <rth@cygnus.com>
2896
2897 * expr.c (expand_builtin_setjmp): Set
2898 current_function_has_nonlocal_label.
2899 * stupid.c (stupid_life_analysis): If has_nonlocal_label, kill
2900 call-saved registers across calls.
2901
2902 * alpha.md (exception_receiver): Remove.
2903 (nonlocal_goto_receiver_osf): New
2904 (nonlocal_goto_receiver_vms): Renamed from nonlocal_goto_receiver.
2905 (nonlocal_goto_receiver): New, select _osf or _vms.
2906
2907 * alpha.c (output_prolog [*]): Prefix entry labels with '$' to
2908 keep them from being propogated to the object file.
2909 (alpha_write_linkage): Likewise.
2910 * alpha.md (call_vms): Likewise.
2911 (call_value_vms): Likewise.
2912 (unnamed osf call insns): Likewise.
2913
2914 * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Don't omit L from local label.
2915 (ASM_GENERATE_INTERNAL_LABEL): Likewise.
2916
2917 * alpha.c (call_operand): Any reg is valid for WinNT.
2918 * alpha.md (call_nt, call_value_nt): Don't force address into $27.
2919 (anon nt calls): Add 'R' alternative.
2920 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE,
2921 INITIALIZE_TRAMPOLINE): Handle lack of original $27 and 32-bit ptrs.
2922
2923 Fri Nov 14 06:59:33 1997 Jeffrey A Law (law@cygnus.com)
2924
2925 * calls.c (expand_call): Handle pcc_struct_value correctly for C++.
2926
2927 * i386/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Delete defines.
2928 * i386/xm-mingw32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
2929 * rs6000/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
2930
2931 Thu Nov 13 20:37:33 1997 Michael Meissner <meissner@tiktok.cygnus.com>
2932
2933 * reload1.c (new_spill_reg): Improve fixed or forbidden register
2934 spill error message.
2935
2936 Thu Nov 13 20:29:08 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2937
2938 * prefix.c: Use stdarg.h only ifdef __STDC__. Otherwise,
2939 use varargs.h. Wrap header with <>, not "".
2940
2941 Thu Nov 13 20:21:17 1997 Jeffrey A Law (law@cygnus.com)
2942
2943 * integrate.c (save_for_inline_copying): Add return value from
2944 savealloc.
2945
2946 Thu Nov 13 19:12:33 1997 Brendan Kehoe <brendan@cygnus.com>
2947
2948 * fixincludes: Be a little more restrictive on what we will
2949 substitute to replace definitions of MAXINT for HPUX.
2950
2951 Thu Nov 13 18:41:02 1997 Michael Meissner <meissner@cygnus.com>
2952
2953 * dbxout.c (dbxout_symbol_location): Don't assume that variables
2954 whose address is the stack or argument pointers are indirect
2955 pointers.
2956
2957 1997-11-13 Paul Eggert <eggert@twinsun.com>
2958
2959 * cccp.c, cpplib.c (compare_defs):
2960 Don't complain about arg name respellings unless pedantic.
2961 * cpplib.c (compare_defs): Accept pfile as new arg.
2962 All callers changed.
2963
2964 Thu Nov 13 23:33:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
2965
2966 * fold-const.c (fold_truthop): Fix bug in last change.
2967
2968 1997-11-13 Paul Eggert <eggert@twinsun.com>
2969
2970 Fix some confusion with IEEE minus zero.
2971
2972 * real.h (REAL_VALUES_IDENTICAL): New macro.
2973
2974 * expr.c (is_zeros_p): Don't consider -0.0 to be all zeros.
2975 * fold-const.c (operand_equal_p): Don't consider -0.0 to be
2976 identical to 0.0.
2977 * tree.c (simple_cst_equal): Don't consider -0.0 to have the
2978 same tree structure as 0.0.
2979
2980 * varasm.c (immed_real_const_1): Use new REAL_VALUES_IDENTICAL
2981 macro instead of doing it by hand.
2982
2983 Thu Nov 13 16:56:14 1997 Jeffrey A Law (law@cygnus.com)
2984
2985 * v850/lib1funcs.asm: Minor whitespace changes.
2986 * v850.c: Fix minor formatting problems in many places.
2987 (construct_restore_jr, construct_save_jarl): Remove unwanted aborts.
2988
2989 Thu Nov 13 12:53:44 1997 Jim Wilson <wilson@cygnus.com>
2990
2991 * mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete code swapping xplus0 and
2992 xplus1 when xplus0 is not a register.
2993
2994 Thu Nov 13 11:41:42 1997 Jeffrey A Law (law@cygnus.com)
2995
2996 * flow.c (find_basic_blocks): During marking phase, if we encounter
2997 an insn with a REG_LABEL note, make the target block live and
2998 create an edge from the insn to the target block. Do not make
2999 edges from all blocks to the target block.
3000
3001 * m68k/x-next (OTHER_FIXINCLUDES_DIRS): Include /NextDeveloper/Headers.
3002
3003 * confiugre.in: Tweak NCR entries.
3004 * configure: Rebuilt.
3005
3006 Thu Nov 13 11:07:41 1997 Michael Meissner <meissner@cygnus.com>
3007
3008 * rs6000.c (num_insns_constant): Use REAL_VALUE_FROM_CONST_DOUBLE to
3009 pick apart floating point values, instead of using CONST_DOUBLE_LOW
3010 and CONST_DOUBLE_HIGH.
3011
3012 * rs6000.md (define_splits for DF constants): Use the appropriate
3013 REAL_VALUE_* interface to pick apart DF floating point constants in
3014 a machine independent fashion.
3015
3016 Thu Nov 13 00:06:58 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
3017
3018 * fold-const.c (fold_truthop): When changing a one-bit comparison
3019 against zero into a comparison against mask, do a proper sign
3020 extension.
3021
3022 Wed Nov 12 09:37:01 1997 Jeffrey A Law (law@cygnus.com)
3023
3024 * except.c: Do not include "assert.h".
3025 (save_eh_status): Turn asserts into conditional aborts.
3026 (restore_eh_status, scan_region): Likewise.
3027 * dwarfout.c: Do not include "assert.h".
3028 (bit_offset_attribute): Turn asserts into conditional aborts.
3029 (bit_size_attribute, output_inlined_enumeration_type_die): Likewise.
3030 (output_inlined_structure_type_die): Likewise.
3031 (output_inlined_union_type_die): Likewise
3032 (output_tagged_type_instantiation): Likewise.
3033 (dwarfout_file_scope_decl): Likewise.
3034 * dwarf2out.c: Do not include "assert.h"
3035 (expand_builtin_dwarf_reg_size): Turn asserts into conditional aborts.
3036 (reg_save, initial_return_save, dwarf2out_frame_debug): Likewise.
3037 (add_child_die, modified_type_die, add_bit_offset_attribute): Likewise.
3038 (add_bit_size_attribute, scope_die_for): Likewise.
3039 (output_pending_types_for_scope): Likewise.
3040 (get_inlined_enumeration_type_die): Likewise.
3041 (get_inlined_structure_type_die): Likewise.
3042 (get_inlined_union_type_die, gen_subprogram_die): Likewise.
3043 (gen_tagged_type_instantiation_die): Likewise.
3044
3045 * flow.c (find_basic_blocks): Refine further to get a more correct
3046 cfg, especially in the presense of exception handling, computed
3047 gotos, and other non-trivial cases. Call abort if an inaccuracy
3048 is detected in the cfg.
3049
3050 Tue Nov 11 21:47:27 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
3051
3052 * glimits.h (SHRT_MIN): Define in a way suitable for 16 bit hosts.
3053
3054 * c-lex.c (whitespace_cr, skip_white_space_on_line): New functions.
3055 (skip_white_space): Use whitespace_cr.
3056 (check_newline): Handle whitespace more consistently.
3057
3058 Tue Nov 11 16:25:49 1997 Jim Wilson <wilson@cygnus.com>
3059
3060 * i386/cygwin32.h (CPP_PREDEFINES): Delete -DPOSIX.
3061 * i386/xm-cygwin32.h (POSIX): Define.
3062
3063 Mon Nov 10 20:53:11 1997 Gavin Koch <gavin@cygnus.com>
3064
3065 * config/mips/mips.h (MASK_DEBUG_H): Set to zero, so this bit
3066 is available elsewhere.
3067
3068 Mon Nov 10 16:21:58 1997 Doug Evans <devans@canuck.cygnus.com>
3069
3070 * sparc/sparc.md (mov[sdt]f_const_insn): Fix condition to match
3071 what the instruction can handle.
3072
3073 Mon Nov 10 03:02:19 1997 Jason Merrill <jason@yorick.cygnus.com>
3074
3075 * stmt.c (expand_decl_cleanup_no_eh): New fn.
3076
3077 * except.c (expand_leftover_cleanups): do_pending_stack_adjust.
3078
3079 Mon Nov 10 00:05:56 1997 Jeffrey A Law (law@cygnus.com)
3080
3081 * alias.c (MAX_ALIAS_LOOP_PASSES): Define.
3082 (init_alias_analysis): Break out of loops after MAX_ALIAS_LOOP_PASSES.
3083
3084 Sun Nov 9 14:34:47 1997 David Edelsohn <edelsohn@mhpcc.edu>
3085
3086 * rs6000.md (lshrdi3_power): Delete '&' from first alternative and
3087 swap instruction order.
3088
3089 Sun Nov 9 02:07:16 1997 Jeffrey A Law (law@cygnus.com)
3090
3091 * fixinc.svr4 (__STDC__): Add another case.
3092
3093 Sun Nov 9 02:00:29 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
3094
3095 * a29k.h (ELIGIBLE_FOR_EPILOGUE_DELAY): Avoid loads from varying
3096 addresses in the epilogue delay slot.
3097
3098 Sun Nov 9 01:40:40 1997 Manfred Hollstein (manfred@s-direktnet.de)
3099
3100 * m88k/dgux.h (ASM_CPU_SPEC): Reformatted to suppress wrong whitespace
3101 in generated `specs' file.
3102
3103 Sun Nov 9 01:37:11 1997 Jim Wilson (wilson@cygnus.com)
3104
3105 * flags.h (flag_rerun_loop_opt): Declare.
3106 * loop.c (invariant_p, case LABEL_REF): Check flag_rerun_loop_opt.
3107 * toplev.c (flag_rerum_loop_opt): Delete static.
3108
3109 Sat Nov 8 18:20:21 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
3110
3111 Bring over from FSF:
3112
3113 Thu Oct 30 12:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
3114
3115 * va-sh.h (__va_arg_sh1): Define.
3116 (va_arg): Use it.
3117 SH3E doesn't use any integer registers for subsequent arguments
3118 once a non-float value was passed in the stack.
3119 * sh.c (machine_dependent_reorg): If optimizing, put explicit
3120 alignment in front label for ADDR_DIFF_VEC.
3121 * sh.h (PASS_IN_REG_P): Fix SH3E case.
3122 (ADJUST_INSN_LENGTH): If not optimizing, add two extra bytes length.
3123
3124 Tue Oct 28 15:06:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
3125
3126 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Undefine before including
3127 svr4.h.
3128
3129 Mon Oct 27 16:11:52 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
3130
3131 * sh.c (machine_dependent_reorg): When -flag_delayed_branches,
3132 put an use_sfunc_addr before each sfunc.
3133 * sh.md (use_sfunc_addr, dummy_jump): New insns.
3134 (casesi): For TARGET_SH2, emit a dummy_jump after LAB.
3135
3136 Tue Oct 21 07:12:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
3137
3138 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Don't redefine.
3139
3140 Fri Nov 7 10:22:24 1997 Jason Merrill <jason@yorick.cygnus.com>
3141
3142 * frame.c (add_fdes, count_fdes): Go back to checking pc_begin for
3143 linked once FDEs.
3144
3145 Wed Nov 5 14:26:05 1997 Jeffrey A Law (law@cygnus.com)
3146
3147 * alias.c (find_base_value): Only return the known base value for
3148 pseudo registers.
3149
3150 Wed Nov 5 11:27:14 1997 Jim Wilson <wilson@cygnus.com>
3151
3152 * i386.c (load_pic_register): Call prologue_get_pc_and_set_got.
3153 * i386.md (prologue_set_got, prologue_get_pc): Add UNSPEC_VOLATILE
3154 to pattern.
3155 (prologue_get_pc_and_set_got): New pattern.
3156
3157 Tue Nov 4 20:36:50 1997 Richard Henderson (rth@cygnus.com)
3158
3159 * alpha.c (summarize_insn): Handle ASM_OPERANDS. Don't recurse
3160 for SUBREG, just fall through.
3161
3162 * alpha.c (alpha_handle_trap_shadows): Init sum.defd to zero.
3163
3164 * alpha.md (attr trap): Make TRAP_YES non-zero for sanity's sake.
3165
3166 Tue Nov 4 18:49:42 1997 Jeffrey A Law (law@cygnus.com)
3167
3168 * fixincludes: Fix "hypot" prototype in NeXT math.h.
3169
3170 * Makefile.in (USE_ALLOCA): Always include alloca.o.
3171 (USE_HOST_ALLOCA): Likewise.
3172
3173 * rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
3174 and LABEL_REFS fields.
3175 * rtl.h (LABEL_REFS): Update.
3176
3177 Tue Nov 4 16:55:11 1997 Jim Wilson <wilson@cygnus.com>
3178
3179 * combine.c (try_combine): When setting elim_i2, check whether newi2pat
3180 sets i2dest. When calling distribute_notes for i3dest_killed, pass
3181 elim_i2 and elim_i1. When setting elim_i1, check if newi2pat
3182 sets i1dest.
3183
3184 * mips.md (insv, extzv, extv): Add change_address call.
3185 (movsi_ulw, movsi_usw): Change QImode to BLKmode in pattern.
3186
3187 * integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
3188
3189 * reload.c (find_reloads, case 'm' and 'o'): Reject HIGH constants.
3190
3191 * mips.c (mips_expand_epilogue): Emit blockage insn before call to
3192 save_restore_insns if no FP and GP will be restored.
3193
3194 * dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
3195 Convert CCmode to word_mode before calling GET_MODE_SIZE.
3196
3197 * acconfig.h (HAVE_INTTYPES_H): Undef.
3198 * configure.in (inttypes.h): Check for conflicts between sys/types.h
3199 and inttypes.h, and verify that intmax_t is defined.
3200 * config/mips/x-iris (CC, OPT, OLDCC): Comment out.
3201 * config/mips/x-iris3: Likewise.
3202
3203 Tue Nov 4 16:07:15 1997 Jeffrey A Law (law@cygnus.com)
3204
3205 * alias.c (find_base_value): When copying arguments, return the
3206 tenative value for a hard register.
3207
3208 Tue Nov 4 13:40:35 1997 Doug Evans <devans@canuck.cygnus.com>
3209
3210 * c-lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
3211 (yylex): Record wide strings using target endianness, not host.
3212
3213 Tue Nov 4 13:13:12 1997 Jeffrey A Law (law@cygnus.com)
3214
3215 * mn10200.h (ASM_OUTPUT_BSS): Delete.
3216 (ASM_OUTPUT_ALIGNED_BSS): New macro
3217 * mn10300.h (ASM_OUTPUT_BSS): Delete.
3218 (ASM_OUTPUT_ALIGNED_BSS): New macro.
3219 * v850.h (ASM_OUTPUT_BSS): Delete.
3220 (ASM_OUTPUT_ALIGNED_BSS): New macro.
3221
3222 Tue Nov 4 00:55:48 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
3223
3224 * profile.c (branch_prob): Insert an insn after a NOTE_INSN_SETJMP.
3225
3226 Mon Nov 3 14:36:50 1997 Jeffrey A Law (law@cygnus.com)
3227
3228 * configure.in (sco5): Use cpio to install header files.
3229
3230 Sun Nov 2 23:31:43 1997 Manfred Hollstein <manfred@s-direktnet.de>
3231
3232 * aclocal.m4 (conftestdata_from, conftestdata_to): Names shortened to
3233 14 char length.
3234 * configure: Rebuild.
3235
3236 Sun Nov 2 19:44:00 1997 Robert Lipe (robertl@dgii.com)
3237
3238 * i386/sco5.h: enable -gstabs once again.
3239
3240 Sun Nov 2 19:27:21 1997 Jeffrey A Law (law@cygnus.com)
3241
3242 * arm.c (output_move_double): Allocate 3 entries in otherops array.
3243
3244 Sat Nov 1 21:43:00 1997 Mike Stump (mrs@wrs.com)
3245
3246 * except.c (expand_ex_region_start_for_decl): Emit EH_REGION_BEG
3247 notes for sjlj exceptions too.
3248 (expand_eh_region_end): Similarly for EH_REGION_END notes.
3249 (exception_optimize): Optimize EH regions for sjlj exceptions too.
3250 * final.c (final_scan_insn): Don't output labels for EH REGION
3251 notes if doing sjlj exceptions.
3252
3253 Sat Nov 1 19:15:28 1997 Jeffrey A Law (law@cygnus.com)
3254
3255 * alias.c (init_alias_analysis): Handle -fno-alias-check when
3256 optimizing correctly.
3257
3258 * expr.c (expand_builtin_setjmp): Don't emit a SETJMP note
3259 or set current_function_calls_setjmp anymore.
3260
3261 * flow.c (find_basic_blocks): If we delete the label for an
3262 exception handler, remove it from the EH label list and remove
3263 the EH_BEGIN/EH_END notes for that EH region.
3264
3265 Sat Nov 1 16:44:49 1997 Jason Merrill (jason@cygnus.com)
3266
3267 * flow.c (find_basic_blocks): Generate correct flow control
3268 information when exception handling notes are present.
3269
3270 Sat Nov 1 13:42:19 1997 Jeffrey A Law (law@cygnus.com)
3271
3272 * dwarf2out.c (output_call_frame_info): Fix length argument
3273 to ASM_OUTPUT_ASCII.
3274 (output_die, output_pubnames, output_line_info): Likewise.
3275
3276 Fri Oct 31 07:10:09 1997 Jeffrey A Law (law@cygnus.com)
3277
3278 * version.c: Bump for snapshot.
3279
3280 * dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_ASCII to
3281 output ASCII by default. Only use ASM_OUTPUT_DWARF_STRING if
3282 flag_debug_asm is on.
3283 (output_die, output_pubnames, output_line_info): Likewise.
3284
3285 * alias.c (init_alias_analysis): Add struct_value_incoming_rtx
3286 and static_chain_rtx into the potential base values array if
3287 they are registers.
3288
3289 * alias.c (new_reg_base_value): New array of potential base values.
3290 (unique_id): Now file scoped static.
3291 (find_base_value, case REG): Return the value in reg_base_value
3292 array for the REG if it exists. Else, return the value from
3293 new_reg_base_value if copying args and REG is a hard register.
3294 (find_base_value, case PLUS): If either operand of the PLUS is
3295 a REG, try to get its base value. Handle base + index and
3296 index + base.
3297 (record_set): Use new_reg_base_value instead of reg_base_value.
3298 (init_alias_analysis): Allocate space for new_reg_base_value too.
3299 Rework code to iterate over the insns propagating base value
3300 information until nothing changes.
3301
3302 * global.c (global_alloc): Free the conflict matrix after
3303 reload has finished.
3304
3305 Fri Oct 31 01:45:31 1997 Jason Merrill <jason@yorick.cygnus.com>
3306
3307 * libgcc2.c (L_eh): Define __eh_pc.
3308 Replace __eh_type with generic pointer __eh_info.
3309
3310 Fri Oct 31 00:34:55 1996 J"orn Rennecke <amylaar@cygnus.co.uk>
3311
3312 * expr.c (expand_increment): When enqueing a postincrement for a MEM,
3313 use copy_to_reg if address is not a general_operand.
3314
3315 Fri Oct 31 00:16:55 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
3316
3317 * profile.c (output_func_start_profiler): Clear flag_inline_functions
3318 for the duration of the call to rest_of_compilation.
3319
3320 Thu Oct 30 14:40:10 1997 Doug Evans <devans@canuck.cygnus.com>
3321
3322 * configure.in (sparc-*-elf*): Use sparc/elf.h, sparc/t-elf.
3323 Set extra_parts.
3324 (sparc*-*-*): Recognize --with-cpu=v9.
3325 * sparc/elf.h: New file.
3326 * sparc/t-elf: New file.
3327
3328 Thu Oct 30 13:26:12 1997 Jeffrey A Law (law@cygnus.com)
3329
3330 * mn10300.c (const_8bit_operand): New function.
3331 (mask_ok_for_mem_btst): New funtion.
3332 * mn10300.md (btst patterns with mem operands): Use new functions
3333 to avoid creating btst instructions with invalid operands.
3334
3335 Wed Oct 29 16:57:19 1997 Michael Meissner <meissner@cygnus.com>
3336
3337 * rs6000/xm-sysv4.h: Include xm-linux.h instead of xm-svr4.h if we
3338 are running on PowerPC Linux.
3339
3340 Wed Oct 29 13:10:11 1997 Gavin Koch <gavin@cygnus.com>
3341
3342 * config/mips/elf64.h (PREFERRED_DEBUGGING_TYPE): Only define
3343 if not previously defined.
3344
3345 Tue Oct 28 23:55:27 1997 Doug Evans (devans@cygnus.com)
3346
3347 * function.c (assign_parms): Correct mode of stack_parm if
3348 entry_parm underwent a mode conversion.
3349
3350 1997-10-28 Brendan Kehoe <brendan@lisa.cygnus.com>
3351
3352 * global.c (global_alloc): Use xmalloc instead of alloca for
3353 CONFLICTS, since max_allocno * allocno_row_words alone can be more
3354 than 2.5Mb sometimes.
3355
3356 Tue Oct 28 15:29:15 1997 Richard Henderson <rth@cygnus.com>
3357
3358 * reload1.c (eliminate_regs [SET]): If [SUBREG] widened the mode of
3359 DEST for the spill, adjust mode of SRC to compensate.
3360
3361 Tue Oct 28 14:36:45 1997 Richard Henderson <rth@cygnus.com>
3362
3363 * alpha.md (reload_inqi): Check for MEM before strict_memory_address_p,
3364 since any_memory_operand() allows pseudos during reload.
3365 (reload_inhi, reload_outqi, reload_outhi): Likewise.
3366
3367 Tue Oct 28 11:53:14 1997 Jim Wilson <wilson@cygnus.com>
3368
3369 * m68k.md (btst patterns): Add 5200 support.
3370
3371 Tue Oct 28 11:58:40 1997 Toon Moene <toon@moene.indiv.nluug.nl>
3372
3373 * fold-const.c (fold): For ((a * C1) / C3) or (((a * C1) + C2) / C3)
3374 optimizations, look inside dividend to determine if the expression
3375 can be simplified by using EXACT_DIV_EXPR.
3376
3377 Tue Oct 28 10:19:01 1997 Jason Merrill <jason@yorick.cygnus.com>
3378
3379 From Brendan:
3380 * dwarf2out.c (output_call_frame_info): Use l1 instead of ".".
3381
3382 Tue Oct 28 00:32:14 1997 Richard Henderson <rth@cygnus.com>
3383
3384 * alpha.c (summarize_insn [SUBREG]): Propogate SET.
3385
3386 Mon Oct 27 23:59:26 1997 Richard Henderson <rth@cygnus.com>
3387
3388 * alpha.c (alpha_handle_trap_shadows): Don't call get_attr_trap
3389 on a CLOBBER.
3390
3391 Mon Oct 27 21:25:20 1997 Richard Henderson <rth@cygnus.com>
3392
3393 * alpha.md (movqi, movhi): Make sure new insns created during reload
3394 won't need reloading themselves.
3395 (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Likewise.
3396
3397 Mon Oct 27 16:11:10 1997 Jeffrey A Law (law@cygnus.com)
3398
3399 * mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Disable reg+reg.
3400
3401 Sun Oct 26 13:50:44 1997 Richard Henderson <rth@cygnus.com>
3402
3403 * alpha.c (alpha_sa_mask [VMS]): Don't include $26 in the mask.
3404 Patch from Klaus Kaempf <kkaempf@progis.de>.
3405
3406 Sun Oct 26 13:31:47 1997 Jim Wilson (wilson@cygnus.com)
3407
3408 * expr.c (expand_expr, case INDIRECT_REF): Optimize a reference
3409 to an element in a constant string.
3410
3411 Sun Oct 26 11:41:49 1997 Jason Merrill <jason@yorick.cygnus.com>
3412
3413 * dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32
3414 bit PC-relative offset. The exception range table pointer is now in
3415 the CIE.
3416 * frame.c (dwarf_cie, dwarf_fde): Rename CIE_pointer to CIE_delta.
3417 (count_fdes, add_fdes, get_cie): Adjust.
3418 (cie_info, extract_cie_info, __frame_state_for): Adjust eh_ptr uses.
3419
3420 From H.J. Lu:
3421 * frame.c (count_fdes, add_fdes): Skip linked once FDE entries.
3422
3423 Sun Oct 26 11:52:01 1997 Richard Henderson <rth@cygnus.com>
3424
3425 * alias.c (memrefs_conflict_p): Treat arg_pointer_rtx just
3426 like stack_pointer_rtx.
3427
3428 Sun Oct 26 11:32:16 1997 Manfred Hollstein <manfred@s-direktnet.de>
3429
3430 * Makefile.in (bootstrap-lean): Combined with `normal' bootstrap
3431 targets using "$@" to provide support for similar but not identical
3432 targets without having to duplicate code.
3433 (bootstrap4): New goal.
3434
3435 * Makefile.in (compare, compare-lean, compare3): Combined to one
3436 ruleset determining actions to be performed via $@.
3437 (compare4, compare4-lean): New targets.
3438 (gnucompare, gnucompare3): Combined to one ruleset determining
3439 actions to be performed via $@. Also, note which files failed
3440 the comparison test in .bad_compare.
3441 (gnucompare-lean, gnucompare3-lean, gnucompare4-lean): New targets.
3442
3443 Sun Oct 26 10:06:11 1997 Toon Moene <toon@moene.indiv.nluug.nl>
3444
3445 * fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
3446 if the dividend is a multiple of the divisor.
3447
3448 Sun Oct 26 09:21:40 1997 Jeffrey A Law (law@cygnus.com)
3449
3450 * Makefile.in (LIBGCC2_CFLAGS): Add -fexceptions.
3451
3452 * alias.c (find_base_term): Handle PRE_INC, PRE_DEC, POST_INC,
3453 and POS_DEC.
3454
3455 * alias.c (true_dependence): Fix typo.
3456
3457 * toplev.c (flag_rerun_loop_opt): New variable.
3458 (f_options): Handle -frerun-loop-opt.
3459 (rest_of_compilation): If -frerun-loop-opt, then run the loop
3460 optimizer twice.
3461 (main): Enable -frerun-loop-opt by default for -O2 or greater.
3462
3463 * loop.c (simplify_giv_expr): Adding two invariants results
3464 in an invariant.
3465
3466 Sun Oct 26 09:15:15 1997 Richard Henderson <rth@cygnus.com>
3467
3468 * expr.c (get_inner_reference): Remove the array bias after
3469 converting the index to Pmode.
3470
3471 Sat Oct 25 12:20:58 1997 Jeffrey A Law (law@cygnus.com)
3472
3473 * mn10300.h (TARGET_SWITCHES): Add -mmult-bug and -mno-mult-bug.
3474 (TARGET_MULT_BUG): Define.
3475 (TARGET_DEFAULT): Default to TARGET_MULT_BUG.
3476 * mn10300.md (mulsi3): Handle TARGET_MULT_BUG.
3477
3478 Fri Oct 24 17:40:34 1997 Jeffrey A Law (law@cygnus.com)
3479
3480 * mn10200.c (indirect_memory_operand): Delete unused function.
3481 * mn10200.h (EXTRA_CONSTRAINT): Handle 'R'.
3482 * mn10200.md (bset, bclr insns): Handle output in a reg too.
3483
3484 Fri Oct 24 15:54:57 1997 Richard Henderson <rth@cygnus.com>
3485
3486 * alpha.md (call patterns): Revert Oct 16 change; if we are to elide
3487 the callee's ldgp, we must do it ourselves, and we use the jsr tag
3488 for more than scheduling.
3489
3490 Fri Oct 24 13:23:04 1997 Doug Evans <devans@canuck.cygnus.com>
3491
3492 * sparc/sparc.h (ASM_SPEC): Delete asm_arch.
3493
3494 Fri Oct 24 13:19:40 1997 Jeffrey A Law (law@cygnus.com)
3495
3496 * mn10300.c (symbolic_operand, legitimize_address): New functions.
3497 * mn10300.h (LEGITIMIZE_ADDRESS): Call legitimize_address.
3498 (GO_IF_LEGITIMATE_ADDRESS): Don't allow base + symbolic.
3499
3500 Thu Oct 23 09:35:12 1997 Jeffrey A Law (law@cygnus.com)
3501
3502 * version.c: Bump for snapshot.
3503
3504 Thu Oct 23 08:03:59 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
3505
3506 * dbxout.c (dbxout_start_new_source_file): Use output_quoted_string
3507 for FILENAME.
3508
3509 Wed Oct 22 00:34:12 1997 Jeffrey A Law (law@cygnus.com)
3510
3511 * toplev.c (flag_exceptions): Default value is 2.
3512 (compile_file): If flag_exceptions still has the value 2, then
3513 set it to 0.
3514
3515 * rs6000.c (struct machine_function): Add pic_offset_table_rtx.
3516 (rs6000_save_machine_status): Save pic_offset_table_rtx.
3517 (rs6000_restore_machine_status: Restore pic_offset_table_rtx.
3518
3519 * local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions
3520 are shared.
3521
3522 * rs6000.md (*movsi_got_internal_mem): New pattern.
3523 (*movsi_got_internal_mem splitter): New define_split.
3524
3525 Tue Oct 21 18:14:03 1997 Jim Wilson <wilson@cygnus.com>
3526
3527 * obstack.h (obstack_empty_p): Fix spurious space after backslash.
3528
3529 Tue Oct 21 18:34:01 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
3530
3531 * rs6000.c: Avoid creating a stack frame under SYSV ABI if we
3532 only need to save LR.
3533
3534 Tue Oct 21 10:06:40 1997 Jeffrey A Law (law@cygnus.com)
3535
3536 * mn10300.md (movqi, movhi): Avoid using address registers as
3537 destinations unless absolutely necessary.
3538
3539 * mn10200.c (expand_prologue): Fix typo.
3540
3541 * mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed
3542 addresses.
3543 * mn10200.md (neghi2): Provide an alternative which works if
3544 the input and output register are the same.
3545
3546 * mn10300.c (print_operand): Handle 'S'.
3547 * mn10300.md (ashlsi3, lshrsi3, ashrsi3): Use %S for
3548 shift amount in last alternative
3549
3550 * mn10300.c (expand_epilogue): Rework to handle register restores
3551 in "ret" and "retf" instructions correctly.
3552
3553 Mon Oct 20 16:47:08 1997 Jim Wilson <wilson@cygnus.com>
3554
3555 * expmed.c (extract_bit_field): Don't make flag_force_mem disable
3556 extzv for memory operands.
3557
3558 * cse.c (simplify_ternary_operation, case IF_THEN_ELSE): Collapse
3559 redundant conditional moves to single operand.
3560
3561 Mon Oct 20 15:30:26 1997 Nick Clifton <nickc@cygnus.com>
3562
3563 * v850.h: Move define of __v850__ from CPP_PREDEFINES
3564 to CPP_SPEC.
3565
3566 * xm-v850.h: Use __v850 rather than __v850__ to
3567 identify v850 port.
3568
3569 Mon Oct 20 14:15:02 1997 Jim Wilson <wilson@cygnus.com>
3570
3571 * mips/mips.c (compute_frame_size): Not a leaf function if
3572 profile_flag set.
3573
3574 Mon Oct 20 14:16:38 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
3575
3576 * rs6000/t-ppccomm: Use -msdata=none for crtstuff.
3577
3578 Mon Oct 20 12:28:17 1997 Doug Evans <devans@canuck.cygnus.com>
3579
3580 * sparc/sparc.h (SPARC_V9,SPARC_ARCH64): Delete.
3581 (DEFAULT_ARCH32_P): New macro.
3582 (TARGET_ARCH{32,64}): Allow compile time or runtime selection.
3583 (enum cmodel): Declare.
3584 (sparc_cmodel_string,sparc_cmodel): Declare.
3585 (SPARC_DEFAULT_CMODEL): Provide default.
3586 (TARGET_{MEDLOW,MEDANY}): Renamed to TARGET_CM_{MEDLOW,MEDANY}.
3587 (TARGET_FULLANY): Deleted.
3588 (TARGET_CM_MEDMID): New macro.
3589 (CPP_CPU_DEFAULT_SPEC): Renamed from CPP_DEFAULT_SPEC.
3590 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
3591 (CPP_PREDEFINES): Take out stuff now handled by %(cpp_arch).
3592 (CPP_SPEC): Rewrite.
3593 (CPP_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
3594 (CPP_{ENDIAN,SUBTARGET}_SPEC): New macros.
3595 (ASM_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
3596 (ASM_SPEC): Add %(asm_arch).
3597 (EXTRA_SPECS): Rename cpp_default to cpp_cpu_default.
3598 Rename asm_default to asm_cpu_default.
3599 Add cpp_arch32, cpp_arch64, cpp_arch_default, cpp_arch, cpp_endian,
3600 cpp_subtarget, asm_arch32, asm_arch64, asm_arch_default, asm_arch.
3601 (NO_BUILTIN_{PTRDIFF,SIZE}_TYPE): Define ifdef SPARC_BI_ARCH.
3602 ({PTRDIFF,SIZE}_TYPE): Provide 32 and 64 bit values.
3603 (MASK_INT64,MASK_LONG64): Delete.
3604 (MASK_ARCH64): Renamed to MASK_64BIT.
3605 (MASK_{MEDLOW,MEDANY,FULLANY,CODE_MODEL}): Delete.
3606 (EMBMEDANY_BASE_REG): Renamed from MEDANY_BASE_REG.
3607 (TARGET_SWITCHES): Always provide 64 bit options.
3608 (ARCH64_SWITCHES): Delete.
3609 (TARGET_OPTIONS): New option -mcmodel=.
3610 (INT_TYPE_SIZE): Always 32.
3611 (MAX_LONG_TYPE_SIZE): Define ifdef SPARC_BI_ARCH.
3612 (INIT_EXPANDERS): sparc64_init_expanders renamed to sparc_init_....
3613 (FUNCTION_{,BLOCK_}PROFILER): Delete TARGET_EMBMEDANY support.
3614 (PRINT_OPERAND_PUNCT_VALID_P): Add '_'.
3615 * sparc/linux-aout.h (CPP_PREDEFINES): Take out stuff handled by
3616 CPP_SPEC.
3617 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
3618 * sparc/linux.h: Likewise.
3619 * sparc/linux64.h (SPARC_V9,SPARC_ARCH64): Delete.
3620 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
3621 (TARGET_DEFAULT): Delete MASK_LONG64, MASK_MEDANY, add MASK_64BIT.
3622 (SPARC_DEFAULT_CMODEL): Define.
3623 (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
3624 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
3625 (LONG_DOUBLE_TYPE_SIZE): Define.
3626 (ASM_SPEC): Add %(asm_arch).
3627 * sparc/sol2.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
3628 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
3629 (TARGET_CPU_DEFAULT): Add ultrasparc case.
3630 * sparc/sp64-aout.h (SPARC_V9,SPARC_ARCH64): Delete.
3631 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT.
3632 (SPARC_DEFAULT_CMODEL): Define.
3633 * sparc/sp64-elf.h (SPARC_V9,SPARC_ARCH64): Delete.
3634 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT. Delete
3635 MASK_LONG64, MASK_MEDANY.
3636 (SPARC_DEFAULT_CMODEL): Define.
3637 (CPP_PREDEFINES): Delete.
3638 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
3639 (ASM_SPEC): Add %(asm_arch).
3640 (LONG_DOUBLE_TYPE_SIZE): Define.
3641 (DWARF2_DEBUGGING_INFO): Define.
3642 * sparc/splet.h (CPP_SPEC): Delete.
3643 * sparc/sysv4.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
3644 (FUNCTION_BLOCK_PROFILER): Delete TARGET_EMBMEDANY support.
3645 (BLOCK_PROFILER): Likewise.
3646 * sparc/sparc.c (sparc_cmodel_string,sparc_cmodel): New globals.
3647 (sparc_override_options): Handle code model selection.
3648 (sparc_init_expanders): Renamed from sparc64_init_expanders.
3649 * sparc/sparc.md: TARGET_<code_model> renamed to TARGET_CM_....
3650 TARGET_MEDANY renamed to TARGET_CM_EMBMEDANY.
3651 (sethi_di_embmedany_{data,text}): Renamed from sethi_di_medany_....
3652 (sethi_di_fullany): Delete.
3653
3654 Mon Oct 20 02:00:18 1997 Klaus Kaempf <kkaempf@progis.de>
3655 Jeff Law <law@cygnus.com>
3656 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3657
3658 * alpha/vms.h (DIVSI3_LIBCALL): OTS$ functions are upper case.
3659 (DIVDI3_LIBCALL, UDIVSI3_LIBCALL, UDIVDI3_LIBVALL): Likewise.
3660 (MODSI3_LIBCALL, MODDI3_LIBCALL): Likewise.
3661 (UMODSI3_LIBCALL, UMODDI3_LIBCALL): Likewise.
3662 * alpha/alpha.md (arg_home): Likewise.
3663
3664 * alpha/alpha.c (vmskrunch): Delete
3665 * alpha/vms.h (ENCODE_SECTION_INFO, ASM_DECLARE_FUNCTION_NAME): Delete.
3666 * alpha.c (output_prolog, VMS): Use alloca for entry_label and don't
3667 truncate to 64 characters.
3668
3669 * make-l2.com: Support openVMS/Alpha.
3670
3671 * vmsconfig.com: Fix to work on openVMS/Alpha and openVMS/VAX.
3672
3673 Sun Oct 19 19:00:35 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
3674
3675 * longlong.h (count_leading_zeros): Add missing casts to USItype.
3676
3677 Sun Oct 19 18:44:06 1997 Jeffrey A Law (law@cygnus.com)
3678
3679 * i386/bsd386.h (ASM_COMMENT_START): Define.
3680
3681 Sat Oct 18 13:47:15 1997 Jason Merrill <jason@yorick.cygnus.com>
3682
3683 * tree.c (restore_tree_status): Also free up temporary storage
3684 when we finish a toplevel function.
3685 (dump_tree_statistics): Print stats for backend obstacks.
3686
3687 Sat Oct 18 12:47:31 1997 Doug Evans <dje@canuck.cygnus.com>
3688
3689 * expr.c (use_group_regs): Don't call use_reg for MEMs.
3690
3691 Sat Oct 18 09:49:46 1997 Jason Merrill <jason@yorick.cygnus.com>
3692
3693 * libgcc2.c (__throw): Don't copy the return address.
3694 * dwarf2out.c (expand_builtin_dwarf_reg_size): Ignore return address.
3695
3696 * except.c (exceptions_via_longjmp): Initialize to 2 (uninitialized).
3697 * toplev.c (main): Initialize exceptions_via_longjmp.
3698
3699 * tree.c: Add extra_inline_obstacks.
3700 (save_tree_status): Use it.
3701 (restore_tree_status): If this is a toplevel inline obstack and we
3702 didn't want to save anything on it, recycle it.
3703 (print_inline_obstack_statistics): New fn.
3704 * function.c (pop_function_context_from): Pass context to
3705 restore_tree_status.
3706 * obstack.h (obstack_empty_p): New macro.
3707
3708 Sat Oct 18 00:43:59 1997 Jeffrey A Law (law@cygnus.com)
3709
3710 * i386/freebsd.h (ASM_COMMENT_START): Fix.
3711
3712 Fri Oct 17 23:48:52 1997 Jim Wilson (wilson@cygnus.com)
3713
3714 * v850.c (ep_memory_offset): New function.
3715 (ep_memory_operand, substitute_ep_register, v850_reorg): Call it.
3716
3717 * v850.h (CONST_OK_FOR_*): Add and correct comments.
3718 (CONSTANT_ADDRESS_P): Add comment.
3719 (EXTRA_CONSTRAINT): Define 'U'.
3720 * v850.md: Add comments on bit field instructions.
3721 (addsi3): Delete &r/r/r alternative. Add r/r/U alternative.
3722 (lshrsi3): Use N not J constraint.
3723
3724 * v850.md (v850_tst1+1): New define_split for tst1 instruction.
3725
3726 * v850.c (reg_or_0_operand): Call register_operand.
3727 (reg_or_int5_operand): Likewise.
3728 * v850.h (MASK_BIG_SWITCH, TARGET_BIG_SWITCH): New macros.
3729 (TARGET_SWITCHES): Add "big-switch".
3730 (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE,
3731 ASM_OUTPUT_BEFORE_BASE_LABEL): Add support for TARGET_BIG_SWITCH.
3732 (CASE_DROPS_THROUGH): Comment out.
3733 (CASE_VECTOR_PC_RELATIVE, JUMP_TABLES_IN_TEXT_SECTION): Define.
3734 * v850.md (cmpsi): Delete compare mode.
3735 (casesi): New pattern.
3736
3737 * v850.h (CONST_OK_FOR_N): Delete redundant compare against zero.
3738 * v850.md (ashlsi3): Use SImode not QImode for shift count.
3739 (lshrsi3): Likewise.
3740
3741 * v850.c (print_operand): Add 'c', 'C', and 'z' support. Delete
3742 unreachable switch statement after 'b' support. Remove "b" from
3743 strings for 'b' support.
3744 * v850.md (branch_normal, branch_invert): Change %b to b%b.
3745
3746 Fri Oct 17 23:33:20 1997 Jeffrey A Law (law@cygnus.com)
3747
3748 * Makefile.in (LIBGCC2_CFLAGS): Avoid a backslash then an
3749 empty line if @inhibit_libc@ is empty.
3750
3751 Fri Oct 17 23:24:40 1997 Robert Lipe (robertl@dgii.com)
3752
3753 * i386/sco5.h: Let ELF use dwarf2 unwinding. COFF uses sjlj.
3754 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Defined.
3755 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
3756 (DWARF2_UNWIND_INFO): Let this track object file format.
3757 (EXTRA_SECTIONS): Add in_eh.
3758 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Define.
3759 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
3760
3761 Fri Oct 17 17:13:42 1997 David S. Miller <davem@tanya.rutgers.edu>
3762
3763 * sparc/linux64.h (LINK_SPEC): Dynamic linker is ld-linux64.so.2.
3764 * sparc/sparc.h (FUNCTION_PROFILER): Fix format string when
3765 TARGET_MEDANY.
3766 * sparc/sparc.c (dwarf2out_cfi_label): Extern no longer needed.
3767 (output_double_int): Output DI mode values correctly when
3768 HOST_BITS_PER_WIDE_INT is 64.
3769 (output_fp_move_quad): If TARGET_V9 and not TARGET_HARD_QUAD, use
3770 fmovd so it works if a quad float ends up in one of the upper 32
3771 float regs.
3772 * sparc/sparc.md (pic_{lo_sum,sethi}_di): New patterns
3773 necessary for PIC support on sparc64.
3774
3775 Fri Oct 17 13:39:56 1997 Doug Evans <dje@canuck.cygnus.com>
3776
3777 * sparc/sp64-elf.h (TARGET_DEFAULT): Delete MASK_STACK_BIAS.
3778 * sparc/sparc.h (PROMOTE_MODE): Promote small ints if arch64.
3779 (PROMOTE_FUNCTION_ARGS,PROMOTE_FUNCTION_RETURN): Define.
3780 (SPARC_FIRST_FP_REG, SPARC_FP_REG_P): New macros.
3781 (SPARC_{OUTGOING,INCOMING}_INT_ARG_FIRST): New macros.
3782 (SPARC_FP_ARG_FIRST): New macro.
3783 (CONDITIONAL_REGISTER_USAGE): All v9 fp regs are volatile now.
3784 (REG_ALLOC_ORDER,REG_LEAF_ALLOC_ORDER): Reorganize fp regs.
3785 (NPARM_REGS): There are 32 fp argument registers now.
3786 (FUNCTION_ARG_REGNO_P): Likewise.
3787 (FIRST_PARM_OFFSET): Update to new v9 abi.
3788 (REG_PARM_STACK_SPACE): Define for arch64.
3789 (enum sparc_arg_class): Delete.
3790 (sparc_arg_count,sparc_n_named_args): Delete.
3791 (struct sparc_args): Redefine and use for arch32 as well as arch64.
3792 (GET_SPARC_ARG_CLASS,ROUND_REG,ROUND_ADVANCE): Delete.
3793 (FUNCTION_ARG_ADVANCE): Rewrite.
3794 (FUNCTION_ARG,FUNCTION_INCOMING_ARG): Rewrite.
3795 (FUNCTION_ARG_{PARTIAL_NREGS,PASS_BY_REFERENCE}): Rewrite.
3796 (FUNCTION_ARG_CALLEE_COPIES): Delete.
3797 (FUNCTION_ARG_{PADDING,BOUNDARY}): Define.
3798 (STRICT_ARGUMENT_NAMING): Define.
3799 (doublemove_string): Declare.
3800 * sparc/sparc.c (sparc_arg_count,sparc_n_named_args): Delete.
3801 (single_move_string): Use GEN_INT, and HOST_WIDE_INT.
3802 (doublemove_string): New function.
3803 (output_move_quad): Clean up some of the arch64 support.
3804 (compute_frame_size): Add REG_PARM_STACK_SPACE if arch64.
3805 Don't add 8 bytes of reserved space if arch64.
3806 (sparc_builtin_saveregs): Combine arch32/arch64 versions.
3807 (init_cumulative_args): New function.
3808 (function_arg_slotno): New static function.
3809 (function_arg,function_arg_partial_nregs): New functions.
3810 (function_arg_{pass_by_reference,advance}): New functions.
3811 (function_arg_padding): New function.
3812 * ginclude/va-sparc.h: Rewrite v9 support.
3813
3814 Fri Oct 17 12:29:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
3815
3816 * regclass.c (record_address_regs): Look at REG_OK_FOR_{BASE,INDEX}_P
3817 for hard regs to determine base and index registers.
3818
3819 * reload.c (debug_reload_to_stream): New function. Specify stream
3820 into which to write debug info.
3821 (debug_reload): Modify to call debug_reload_to_stream with stderr.
3822
3823 Thu Oct 16 15:07:51 1997 Richard Henderson <rth@cygnus.com>
3824
3825 * combine.c (can_combine_p): Don't combine with an asm whose
3826 output is a hard register.
3827
3828 Thu Oct 16 15:43:26 1997 Mike Stump (mrs@wrs.com)
3829
3830 * c-decl.c (start_struct): Ensure that structs with forward
3831 declarations are in fact packed when -fpack-struct is given.
3832
3833 * stor-layout.c (layout_record): Ignore STRUCTURE_SIZE_BOUNDARY if
3834 we are packing a structure. This allows a structure with only
3835 bytes to be aligned on a byte boundary and have no padding on a
3836 m68k.
3837
3838 Thu Oct 16 15:17:54 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3839
3840 * rs6000.h (ROUND_TYPE_ALIGN): Don't blow up if no fields in record.
3841
3842 Thu Oct 16 11:20:30 1997 Richard Henderson <rth@cygnus.com>
3843
3844 * alpha.c (alpha_return_addr_rtx): New variable.
3845 (alpha_save_machine_status): New; save it.
3846 (alpha_restore_machine_status): New; restore it.
3847 (alpha_init_expanders): New; clear it.
3848 (alpha_return_addr): New; set it.
3849 (alpha_ra_ever_killed): New; if alpha_return_addr_rtx, regs_ever_live
3850 is overly conservative, so search the insns explicitly.
3851 (alpha_sa_mask [VMS]): Check alpha_ra_ever_killed.
3852 (alpha_sa_size [VMS && !VMS]): Likewise.
3853 * alpha.h (RETURN_ADDR_RTX): Call alpha_return_addr.
3854 (INIT_EXPANDERS): New definition.
3855
3856 * alpha.c: Move REG_PV, REG_RA somewhere more visible in the file.
3857 (output_prolog [!VMS]): Use them.
3858
3859 * alpha.c (output_prolog [!VMS]): Move gp detection to ...
3860 (alpha_does_function_need_gp): ... a new function. Refine the
3861 CALL_INSN test to just TYPE_JSR.
3862 * alpha.md (most call insns): Fix some jsr/ibr type transpositions.
3863
3864 Thu Oct 16 09:36:47 1997 Jeffrey A Law (law@cygnus.com)
3865
3866 * version.c: Bump for snapshot.
3867
3868 Wed Oct 15 21:38:18 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3869
3870 * pa.c (move_operand): Respect -mdisable-indexing.
3871 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
3872
3873 Wed Oct 15 21:34:45 1997 David Edelsohn <edelsohn@mhpcc.edu>
3874
3875 * rs6000.md (udivsi3, divsi3): Split into MQ and non-MQ cases for
3876 PPC601.
3877 (umulsidi3,umulsi3_highpart): Ditto.
3878 (smulsi3_highpart_no_mq): Add !TARGET_POWER.
3879
3880 Wed Oct 15 18:21:46 1997 Richard Henderson <rth@cygnus.com>
3881
3882 * alpha.c (final_prescan_insn): Gut, remove and transform to ...
3883 (alpha_handle_trap_shadows): ... a new function. Handle the entire
3884 function in one go. Emit RTL for trapb, instead of printf directly.
3885 (alpha_reorg): New function. Call alpha_handle_trap_shadows.
3886 (trap_pending): Kill global variable.
3887 (output_epilog): Don't call final_prescan_insn.
3888 (struct shadow_summary): Elide $31 and $f31; now it fits in a word.
3889 * alpha.h (FINAL_PRESCAN_INSN): Remove.
3890 (MACHINE_DEPENENT_REORG): Define.
3891 * alpha.md (jsr patterns with trapb): Stupid and useless. Kill.
3892 (trapb): New insn.
3893
3894 Wed Oct 15 18:16:05 1997 Richard Henderson <rth@cygnus.com>
3895
3896 Tune Haifa scheduler for Alpha:
3897 * alpha.h (ISSUE_RATE): Define.
3898 * alpha.c (alpha_adjust_cost): Handle EV5 mult delay; don't apply
3899 EV4 adjustments to EV5.
3900 * alpha.md: Remove all scaling from function unit delays. Rework
3901 EV5 function units to match the CPU.
3902 (umuldi3_highpart): EV5 added the IMULH insn class.
3903
3904 Wed Oct 15 17:42:41 1997 Jeffrey A Law (law@cygnus.com)
3905
3906 * pa.c (following_call): Fail if the CALL_INSN is an indirect
3907 call.
3908
3909 Tue Oct 14 12:01:00 1997 Mark Mitchell <mmitchell@usa.net>
3910
3911 * cplus-dem.c (demangle_signature): Don't look for return types on
3912 constructors. Handle member template constructors.
3913
3914 Tue Oct 14 11:30:29 1997 Jason Merrill <jason@yorick.cygnus.com>
3915
3916 * tree.c (expr_tree_cons, build_expr_list, expralloc): New fns.
3917 * tree.h: Declare them.
3918
3919 Fri Oct 10 13:46:56 1997 Doug Evans <dje@canuck.cygnus.com>
3920
3921 * configure.in: Handle --with-newlib.
3922 * Makefile.in (LIBGCC2_CFLAGS): Add @inhibit_libc@.
3923
3924 * sparc/t-sp64 (LIBGCC2_CFLAGS): Delete.
3925
3926 Wed Oct 8 14:37:44 1997 Jeffrey A Law (law@cygnus.com)
3927
3928 * config/ptx4.h: Fix typo.
3929
3930 Wed Oct 8 08:57:20 1997 Jeffrey A Law (law@cygnus.com)
3931
3932 * version.c: Bump for snapshot.
3933
3934 Tue Oct 7 16:27:34 1997 Manfred Hollstein <manfred@s-direktnet.de>
3935
3936 * aclocal.m4: Substitute INSTALL.
3937 * configure: Re-built.
3938
3939 Tue Oct 7 15:37:35 1997 Jeffrey A Law (law@cygnus.com)
3940
3941 * integrate.c (save_for_inline_copying): Avoid undefined pointer
3942 operations.
3943 (expand_inline_function): Likewise.
3944
3945 * dwarf2out.c (output_call_frame_info): Reinstate last change
3946 using flag_debug_asm check instead of flag_verbose_asm.
3947
3948 Tue Oct 7 12:57:26 1997 Jim Wilson <wilson@cygnus.com>
3949
3950 * dwarf2out.c (output_call_frame_info): Remove last change.
3951
3952 1997-10-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3953
3954 * frame.c (__frame_state_for): Execute the FDE insns until the
3955 current pc value is strictly bigger than the target pc value.
3956
3957 Tue Oct 7 11:00:42 1997 Jason Merrill <jason@yorick.cygnus.com>
3958
3959 * regclass.c (init_reg_modes): If we can't find a mode for the
3960 register, use the previous one.
3961
3962 Tue Oct 7 10:55:34 1997 Richard Henderson <rth@cygnus.com>
3963
3964 * haifa-sched.c (print_block_visualization): Call fprintf directly,
3965 don't sprintf through an alloca'ed buffer.
3966
3967 Tue Oct 7 10:52:29 1997 Thomas Koenig (ig25@rz.uni-karlsruhe.de)
3968
3969 * reload.c (decompose): Always initialize val.base.
3970
3971 Tue Oct 7 10:19:26 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
3972
3973 * m68k/mot3300.h (ASM_OUTPUT_ALIGN): Accept any alignment
3974 instead of aborting.
3975 * dwarf2out.c (output_call_frame_info): Call app_enable and
3976 app_disable to let GNU as accept the generated comments.
3977
3978 Tue Oct 7 11:41:21 1997 Michael Meissner <meissner@cygnus.com>
3979
3980 * tree.h (get_file_function_name): Add declaration.
3981 * dwarf2out.c (output_call_frame_info): No need to cast
3982 get_file_function_name call anymore.
3983 * profile.c (toplevel): Remove get_file_function_name
3984 declaration.
3985 * c-lang.c (finish_file): Ditto.
3986
3987 Tue Oct 7 10:01:45 1997 Chip Salzenberg <chip@rio.atlantic.net>
3988
3989 * Makefile.in (program_transform_name): Let autoconf substitute
3990 the correct value.
3991
3992 Tue Oct 7 09:54:35 1997 Jeffrey A Law (law@cygnus.com)
3993
3994 * haifa-sched.c (schedule_block): If the first real insn in a
3995 block has any special notes attached to it, remove them.
3996
3997 Tue Oct 7 09:48:51 1997 Richard Henderson <rth@cygnus.com>
3998
3999 * alpha.h (FLOAT_STORE_FLAG_VALUE): It's 2.0 not 0.5.
4000
4001 Mon Oct 6 12:47:32 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
4002
4003 * m88k.c (m88k_begin_prologue): Remove superfluous backslash.
4004
4005 Mon Oct 6 12:04:24 1997 Jeffrey A Law (law@cygnus.com)
4006
4007 * Makefile.in (check-g77): New test target.
4008 (CHECK-TARGETS): Add check-g77.
4009
4010 Fri Oct 3 11:56:36 1997 Jason Merrill <jason@yorick.cygnus.com>
4011
4012 * toplev.c (rest_of_compilation): Defer all non-nested inlines.
4013
4014 Fri Oct 3 15:49:27 1997 Michael Meissner <meissner@cygnus.com>
4015
4016 * flow.c (print_rtl_with_bb): Cast alloca return value for
4017 in_bb_p.
4018
4019 Thu Oct 2 21:15:03 1997 Richard Henderson <rth@cygnus.com>
4020
4021 * i386.h (RETURN_ADDR_RTX): New definition that works for
4022 __builtin_return_address(0) and -fomit-frame-pointer.
4023
4024 Wed Oct 1 13:43:53 1997 Jim Wilson <wilson@cygnus.com>
4025
4026 Bring over from FSF.
4027 Tue Aug 5 16:10:45 1997 Jason Merrill <jason@yorick.cygnus.com>
4028
4029 * mips.c (function_arg): Handle passing a struct
4030 containing a double in a DFmode register without the PARALLEL.
4031
4032 Wed Oct 1 11:13:25 1997 Ian Lance Taylor <ian@cygnus.com>
4033
4034 * pexecute.c: Use spawn if __CYGWIN32__.
4035
4036 * pexecute.c: Include "config.h" first, as per autoconf manual
4037 (from Paul Eggert <eggert@twinsun.com>).
4038
4039 Wed Oct 1 01:44:36 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
4040
4041 * m68k/x-mot3300 (XCFLAGS): Disable as's long/short jump
4042 optimisation for f/expr.o and f/stb.o.
4043
4044 Tue Sep 30 23:48:57 1997 Jeffrey A Law (law@cygnus.com)
4045
4046 * cse.c (this_insn_cc0_mode): Initialize.
4047
4048 Tue Sep 30 23:09:40 1997 Thomas Koenig <ig25@mvmap66.ciw.uni-karlsruhe.de>
4049
4050 * cccp.c (expand_to_temp_buffer): Initialize all members of obuf.
4051
4052 * haifa-sched.c (get_block_head_tail): Remove unneeded initialization.
4053
4054 Tue Sep 30 23:06:43 1997 Richard Henderson <rth@cygnus.com>
4055
4056 * alpha.md (beq): For registers and ints 0-255, use cmpeq+bne, since
4057 that pair will dual-issue on the 21164 and plus+beq won't.
4058 (bne): Likewise for cmpeq+beq.
4059
4060 Tue Sep 30 16:07:58 1997 Jim Wilson <wilson@cygnus.com>
4061
4062 * except.c (find_exception_handler_labels): Correct argument to free.
4063
4064 Tue Sep 30 11:00:00 1997 Brendan Kehoe <brendan@lisa.cygnus.com>
4065
4066 * except.c (find_exception_handler_labels): Free LABELS when we're
4067 done.
4068
4069 Mon Sep 29 14:04:35 1997 Jeffrey A Law (law@cygnus.com)
4070
4071 * version.c: Bump for snapshot.
4072
4073 Mon Sep 29 10:51:53 1997 Jason Merrill <jason@yorick.cygnus.com>
4074
4075 * flow.c (find_basic_blocks): Mark calls as potentially jumping
4076 to the EH labels.
4077
4078 Mon Sep 29 09:58:06 1997 Jeffrey A Law (law@cygnus.com)
4079
4080 * configure.in: Substitute for "install" too.
4081 * configure: Rebuilt.
4082
4083 Mon Sep 29 00:38:42 1997 Aaron Jackson <jackson@negril.msrce.howard.edu>
4084
4085 * Makefile.in (bootstrap-lean, compare-lean): New targets.
4086
4087 Mon Sep 29 00:18:16 1997 Richard Henderson (rth@cygnus.com)
4088
4089 * alias.c (base_alias_check): Two symbols can conflict if they
4090 are accessed via AND.
4091 (memrefs_conflict_p): Likewise.
4092
4093 * alpha.h (SETUP_INCOMING_VARARGS): Emit a blockage insn
4094 after flushing argument registers to the stack.
4095
4096 * Makefile.in (mostlyclean): Remove .regmove files.
4097
4098 Sun Sep 28 18:59:58 1997 Jason Merrill <jason@yorick.cygnus.com>
4099
4100 * libgcc2.c (__throw): Fix thinko.
4101
4102 Sun Sep 28 12:00:52 1997 Mark Mitchell <mmitchell@usa.net>
4103
4104 * cplus-dem.c (demangle_template): Add new parameter. Handle new
4105 template-function mangling.
4106 (consume_count_with_underscores): New function.
4107 (demangle_signature): Handle new name-mangling scheme.
4108
4109 Sun Sep 28 01:55:04 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
4110
4111 * flow.c (print_rtl_with_bb): Cast alloca return values for variables
4112 start and end.
4113
4114 Sun Sep 28 01:05:16 1997 Jeffrey A Law (law@cygnus.com)
4115
4116 * frame.c: Remove last change.
4117 * dwarf2.h: Remove last change.
4118 * tree.h: Add declarations of DWARF2 unwind info support
4119 functions.
4120
4121 Sat Sep 27 11:02:38 1997 Jason Merrill <jason@yorick.cygnus.com>
4122
4123 * c-decl.c (init_decl_processing): Add __builtin_dwarf_reg_size.
4124 * tree.h (built_in_function): Likewise.
4125 * expr.c (expand_builtin): Likewise.
4126 * except.h: Likewise.
4127 * dwarf2out.c (expand_builtin_dwarf_reg_size): New fn.
4128 * libgcc2.c (copy_reg): New fn.
4129 (__throw): Use it.
4130
4131 Fri Sep 26 08:54:59 1997 Paul Eggert <eggert@twinsun.com>
4132
4133 * c-typeck.c (build_binary_op): Warn about comparing signed vs
4134 unsigned if -W is specified and -Wno-sign-compare is not.
4135 * c-decl.c (warn_sign_compare): Initialize to -1.
4136 (c_decode_option): -Wall no longer implies -Wsign-compare.
4137
4138 Fri Sep 26 09:00:13 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4139
4140 * frame.c: Include gansidecl.h for PROTO.
4141 * dwarf2out.c: Move inclusion of dwarf2.h down so that PROTO is
4142 defined. Don't declare dwarf2out_cfi_label here.
4143 * dwarf2.h: Add declarations of DWARF2 unwind info support
4144 functions.
4145 * m68k.c: Include dwarf2.h.
4146 (output_function_prologue): Add dwarf2 support.
4147 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM): New macros.
4148 (INCOMING_FRAME_SP_OFFSET): Likewise.
4149
4150 * integrate.c (expand_inline_function): Make sure there is at
4151 least one insn that can be used as an insertion point.
4152
4153 Wed Sep 24 21:34:06 1997 Jason Merrill <jason@yorick.cygnus.com>
4154
4155 * dwarf2out.c: s/flag_verbose_asm/flag_debug_asm/
4156
4157 Wed Sep 24 22:05:30 1997 Jeffrey A Law (law@cygnus.com)
4158
4159 * version.c: Bump for snapshot.
4160
4161 Wed Sep 24 17:36:23 1997 Doug Evans <dje@canuck.cygnus.com>
4162
4163 Bring over from FSF.
4164
4165 Wed Sep 24 19:17:08 1997 Doug Evans <dje@cygnus.com>
4166
4167 * sparc/sparc.md (get_pc_via_call): Renamed from get_pc_sp32.
4168 (get_pc_via_rdpc): Renamed from get_pc_sp64.
4169 * sparc/sparc.c (finalize_pic): Update call to gen_get_pc_via_call.
4170
4171 Wed Sep 24 18:38:22 1997 David S. Miller <davem@tanya.rutgers.edu>
4172
4173 * sparc/sparc.h (ASM_CPU_SPEC): Pass -Av9a for v8plus, ultrasparc.
4174 (TARGET_OPTIONS): Add -malign-loops=, -malign-jumps=,
4175 -malign-functions=.
4176 (sparc_align_{loops,jumps,funcs}_string): Declare.
4177 (sparc_align_{loops,jumps,funcs}): Declare.
4178 (DEFAULT_SPARC_ALIGN_FUNCS): New macro.
4179 (FUNCTION_BOUNDARY): Use sparc_align_funcs.
4180 (STACK_BIAS): Define.
4181 (SPARC_SIMM*_P): Cast to unsigned HOST_WIDE_INT first, then perform
4182 test.
4183 (SPARC_SETHI_P): New macro.
4184 (CONST_OK_FOR_LETTER_P): Use it.
4185 (ASM_OUTPUT_ALIGN_CODE): Define.
4186 (ASM_OUTPUT_LOOP_ALIGN): Define.
4187 * sparc/sparc.c (sparc_align_{loops,jumps,funcs}_string): New globals.
4188 (sparc_align_{loops,jumps,funcs}): New globals.
4189 (sparc_override_options): Handle -malign-loops=, -malign-jumps=,
4190 -malign-functions=.
4191 (move_operand): Use SPARC_SETHI_P.
4192 (arith_double_operand): Cast to unsigned HOST_WIDE_INT first, then
4193 perform test.
4194 (arith11_double_operand): Likewise.
4195 (arith10_double_operand): Likewise.
4196 (finalize_pic): Finish sparc64 support.
4197 (emit_move_sequence): Use SPARC_SETHI_P. Simplify low part of
4198 64 bit constants if able.
4199 (output_fp_move_quad): Don't use fmovq unless TARGET_HARD_QUAD.
4200 (sparc_builtin_saveregs, sparc64 case): Don't save fp regs if
4201 ! TARGET_FPU.
4202 * sparc/sparc.md (*): Use GEN_INT instead of gen_rtx.
4203 (get_pc_sp32): Use for sparc64 as well.
4204 (lo_sum_di_sp{32,64}): Fix handling on 64 bit hosts.
4205 (sethi_di_sp64_const): Likewise.
4206 (movtf_cc_sp64): Check TARGET_HARD_QUAD.
4207 (cmp_zero_extract_sp64): Use unsigned HOST_WIDE_INT in cast.
4208 (ashlsi3, ashldi3, ashrsi3, ashrdi3, lshrsi3, lshrdi3): Likewise.
4209
4210 Tue Sep 23 19:02:46 1997 Doug Evans <dje@cygnus.com>
4211
4212 * sparc/linux-aout.h (COMMENT_BEGIN): Delete.
4213 * sparc/linux.h (COMMENT_BEGIN): Likewise.
4214 * sparc/linux64.h (COMMENT_BEGIN): Likewise.
4215
4216 Tue Sep 23 14:48:18 1997 David S. Miller <davem@tanya.rutgers.edu>
4217
4218 Add sparc64 linux support.
4219 * configure.in (sparc64-*-linux*): Recognize. Add sparc/xm-sparc.h
4220 to xm_file list on 32-bit sparc-linux.
4221 * sparc/xm-sp64.h: New file.
4222 * sparc/linux64.h: New file.
4223 * sparc/xm-linux.h: Include some standard headers if not inhibit_libc.
4224 Don't include xm-sparc.h.
4225 * config/xm-linux.h (HAVE_PUTENV, HAVE_ATEXIT): Define.
4226 * glimits.h (LONG_MAX): Handle sparc64.
4227
4228 Sat Sep 20 03:07:54 1997 Doug Evans <dje@cygnus.com>
4229
4230 * sparc/sysv4.h (ASM_COMMENT_START): Delete.
4231 * sparc.h (ASM_COMMENT_START): Define.
4232 * sparc.c (output_function_prologue): Use it.
4233 (sparc_flat_output_function_{epi,pro}logue): Likewise.
4234
4235 Wed Sep 17 15:04:19 1997 Doug Evans <dje@cygnus.com>
4236
4237 * sparc/sysv4.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Delete,
4238 use sparc.h's copies.
4239 * sparc/sparc.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Print
4240 ascii form as well.
4241
4242 Mon Sep 8 08:45:19 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4243
4244 * sparc.c (dwarf2out_cfi_label): Add declaration.
4245 (save_regs, output_function_prologue): Remove cast for it.
4246 (sparc_flat_{save_restore,output_function_prologue): Likewise.
4247 ({save,restore}_regs): No longer inline.
4248
4249 Tue Sep 23 12:34:51 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4250
4251 * fold-const.c (make_range): Correctly handle cases of converting
4252 from unsigned to signed type.
4253
4254 Tue Sep 23 12:34:51 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
4255
4256 * fold-const.c (merge_ranges): Make sure that if one range is subset
4257 of another, it will always be the second range. Correct (+,-) case to
4258 account for this.
4259
4260 Tue Sep 23 08:32:51 1997 Jason Merrill <jason@yorick.cygnus.com>
4261
4262 * final.c (final_end_function): Also do dwarf2 thing if
4263 DWARF2_DEBUGGING_INFO.
4264 (final_start_function): Likewise.
4265
4266 Tue Sep 23 01:15:50 1997 David S. Miller <davem@tanya.rutgers.edu>
4267
4268 * expmed.c (expand_divmod): If compute_mode is not the same as
4269 mode, handle the case where convert_modes() causes op1 to no
4270 longer be a CONST_INT.
4271
4272 * reorg.c (dbr_schedule): At end of this pass, add REG_BR_PRED
4273 note holding get_jump_flags() calculation to all JUMP_INSNs.
4274 * rtl.h (enum reg_note): New note types REG_BR_PRED and REG_SAVE_AREA.
4275 * rtl.c (reg_note_name): Add new note types.
4276
4277 Tue Sep 23 00:59:54 1997 Jeffrey A Law (law@cygnus.com)
4278
4279 * rtlanal.c (computed_jump_p): Fix typo in last change.
4280
4281 Tue Sep 23 00:42:44 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
4282
4283 * loop.c (indirect_jump_in_function_p): Return 0
4284 by default.
4285
4286 Tue Sep 23 00:33:55 1997 Jeffrey A Law (law@cygnus.com)
4287
4288 * rs6000/xm-rs6000.h: Fix thinko in last change.
4289 * rs6000/xm-sysv4.h: Likewise.
4290
4291 Mon Sep 22 19:33:53 1997 Jim Wilson <wilson@cygnus.com>
4292
4293 * mips.c (save_restore_insns): Only set RTX_FRAME_RELATED_P if store_p.
4294
4295 Mon Sep 22 14:41:00 1997 Jeffrey A Law (law@cygnus.com)
4296
4297 * reg-stack.c (find_blocks): Fix thinko in last change.
4298
4299 1997-09-21 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4300
4301 * m68k.c (output_function_prologue): Add dwarf2 support.
4302
4303 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM,
4304 INCOMING_FRAME_SP_OFFSET): New definitions.
4305
4306 Mon Sep 22 11:36:42 1997 David S. Miller <davem@tanya.rutgers.edu>
4307
4308 * combine.c (try_combine): Use NULL_RTX instead of '0' where
4309 appropriate in calls to gen_rtx().
4310 * cse.c (cse_main): Likewise.
4311 * emit-rtl.c (gen_label_rtx): Likewise.
4312 * expr.c (init_expr_once): Likewise.
4313 * haifa-sched.c (flush_pending_lists, sched_analyze_insn,
4314 sched_analyze, init_rgn_data_dependences,
4315 compute_block_backward_dependences): Likewise.
4316 * sched.c (schedule_insns): Likewise.
4317 * varasm.c (immed_double_const): Likewise.
4318
4319 * sparc.h (INCOMING_FRAME_SP_OFFSET): Define to
4320 SPARC_STACK_BIAS for sake of dwarf2 on sparc64.
4321
4322 Mon Sep 22 11:21:33 1997 J. Kean Johnston <jkj@sco.com>
4323
4324 * i386/sco5.h: Make ELF default file format and add -mcoff/-melf..
4325 (MULTILIB_DEFAULTS): Define.
4326 (ASM_SPEC, CPP_SPEC): Handle -mcoff.
4327 (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Likewise.
4328 (LIBGCC_SPEC): Likewise.
4329 (MASK_COFF, TARGET_COFF, TARGET_ELF): Define.
4330 (SUBTARGET_SWITCHES): Add -mcoff and -melf.
4331 * i386/t-sco5 (CRTSTUFF_T_CFLAGS): Add -fPIC.
4332 (CRTSTUFF_T_CFLAGS_S): Tweak for COFF.
4333 (EXTRA_PARTS, TAROUTOPTS): Delete.
4334 (libgcc1-elf, libgcc2-elf, libgcc-elf targets): Delete.
4335 (MULTILIB_OPTIONS): Define.
4336 (MULTILIB_DIRNAMES, MULTILIB_EXCEPTIONS): Likewise.
4337 (MULTILIB_MATCHE, MULTILIB_EXTRA_OPTS): Likewise.
4338
4339 Mon Sep 22 02:10:43 1997 Jeffrey A Law (law@cygnus.com)
4340
4341 * version.c: Bump for snapshot.
4342
4343 Sun Sep 21 17:45:45 1997 Jeffrey A Law (law@cygnus.com)
4344
4345 * loop.c (loop_number): Delete function. Change all references
4346 to use uid_loop_num array.
4347 * loop.h (loop_number): Delete declaration.
4348 * unroll.c (unroll_loop): Change "loop_number" references to
4349 use uid_loop_num instead.
4350
4351 * loop.c (loop_unroll_factor): Move outside #ifdef HAIFA
4352 conditional.
4353 (loop_unroll_iter): Remove unused variable and all references.
4354 (loop_optimize): Always allocate and clear space for loop_unroll_factor.
4355 (insert_bct): Fix minor formatting problems.
4356 * loop.h (loop_unroll_factor): Move decl outside #ifdef HAIFA.
4357 (loop_unroll_iter): Removed unused decl.
4358 * unroll.c (unroll_loop): Remove code to set loop_unroll_iter.
4359 Always record the unrolling factor.
4360
4361 * cse.c (simplify_relational_operation): Set h0u just like h0s.
4362 Similarly for h1u and h1s.
4363
4364 * flow.c (jmp_uses_reg_or_mem): Deleted unused function.
4365 (find_basic_blocks): Use computed_jump_p to determine if a
4366 particular JUMP_INSN is a computed jump.
4367 * reg-stack.c (find_blocks): Use computed_jump_p to determine
4368 if a particular JUMP_INSN is a computed jump.
4369 * rtlanal.c (jmp_uses_reg_or_mem): New function.
4370 (computed_jump_p): Likewise.
4371 * rtl.h (computed_jump_p): Declare.
4372 * genattrtab.c (pc_rtx): Define and initialize.
4373 * loop.c (loop_optimize): Always determine if the current
4374 function has a computed jump.
4375 (indirect_jump_in_function_p): Use computed_jump_p to determine
4376 if a particular JUMP_INSN is a computed jump.
4377
4378 * loop.c (fix_bct_param): Delete unused function.
4379 (check_bct_param): Likewise.
4380
4381 Sat Sep 20 16:22:06 1997 Jason Merrill <jason@yorick.cygnus.com>
4382
4383 * frame.c (__deregister_frame): Check properly for initialized object.
4384
4385 Fri Sep 19 20:51:03 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
4386
4387 * alpha/linux.h (HANDLE_SYSV_PRAGMA): Defined.
4388
4389 Fri Sep 19 18:53:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
4390
4391 * jump.c (thread_jumps): check can_reverse_comparison_p before
4392 threading a reversed-condition jump.
4393
4394 * sched.c (update_flow_info): Don't pass SCRATCH to dead_or_set_p.
4395 * haifa-sched.c (update_flow_info): Likewise.
4396
4397 Thu Sep 18 21:13:40 1997 Jeffrey A Law (law@cygnus.com)
4398
4399 * Makefile.in (BOOT_CFLAGS): Use -O2.
4400
4401 * configure.in (strtoul, bsearch): Have autoconf check for these
4402 functions.
4403 * configure, config.in: Rebuilt.
4404
4405 * m68k/xm-mot3300.h (alloca): Properly declare if __STDC__.
4406 * mips/mips.h (alloca): Likewise.
4407 * rs6000/xm-rs6000.h (alloca): Likewise.
4408 * rs6000/xm-sysv4.h: Likewise.
4409
4410 Thu Sep 18 14:22:22 1997 Jason Merrill <jason@yorick.cygnus.com>
4411
4412 * final.c (final_scan_insn): Hand BARRIERs off to the dwarf2 code.
4413 * dwarf2out.c (dwarf2out_frame_debug): Pass the whole insn along.
4414 (dwarf2out_stack_adjust): A BARRIER resets the args space to 0.
4415
4416 * except.c (end_eh_unwinder): Subtract 1 from return address.
4417 * libgcc2.c (__throw): Likewise.
4418 (find_exception_handler): Don't change PC here. Compare end with >.
4419
4420 Thu Sep 18 10:43:07 1997 Nick Clifton <nickc@cygnus.com>
4421
4422 * v850.c (compute_register_save_size): Correct register
4423 number.
4424 * v850.md (save_interrupt, return_interrupt): Correct
4425 register number.
4426 * v850/lib1funcs.asm (save_interrupt): Correct register number.
4427 (return_interrupt): Use stack pointer, not element pointer.
4428
4429 1997-09-18 Brendan Kehoe <brendan@lisa.cygnus.com>
4430
4431 * configure.in, configure: Make sure to create the stage* and include
4432 symbolic links in each subdirectory.
4433
4434 Thu Sep 18 01:47:06 1997 Jeffrey A Law (law@cygnus.com)
4435
4436 * pa.md (reload_peepholes): Don't allow addresses with side
4437 effects for the memory operand.
4438
4439 Wed Sep 17 18:19:53 1997 Jason Merrill <jason@yorick.cygnus.com>
4440
4441 * libgcc2.c (find_exception_handler): Subtract one from our PC when
4442 looking for a handler, to avoid hitting the beginning of the next
4443 region.
4444
4445 * except.c (expand_builtin_set_return_addr_reg): Use force_operand.
4446
4447 Wed Sep 17 18:33:59 1997 Jeffrey A Law (law@cygnus.com)
4448
4449 * mips/abi64.h (LONG_MAX_SPEC): Define.
4450 * mips.h (LONG_MAX_SPEC): Define.
4451 (CPP_SPEC): Include long_max_spec.
4452 (EXTRA_SPECS): Include long_max_spec.
4453
4454 Wed Sep 17 14:11:38 1997 Jeffrey A Law (law@cygnus.com)
4455
4456 * v850.c (construct_save_jarl): Fix thinko in last change.
4457
4458 Wed Sep 17 09:53:07 1997 Jeffrey A Law (law@cygnus.com)
4459
4460 * version.c: Bump for snapshot.
4461
4462 Tue Sep 16 14:22:36 1997 Jason Merrill <jason@yorick.cygnus.com>
4463
4464 * libgcc2.c (find_exception_handler): Not found is -1.
4465
4466 * integrate.c (expand_inline_function): Move expand_start_bindings
4467 after expanding the arguments.
4468
4469 Tue Sep 16 11:13:46 1997 Jim Wilson <wilson@cygnus.com>
4470
4471 * expr.c (expand_expr): Remove previous incorrect change.
4472 If target and slot has no DECL_RTL, then call mark_addressable
4473 again for the slot after we give it RTL.
4474
4475 Tue Sep 16 09:18:52 1997 Jason Merrill (jason@cygnus.com)
4476
4477 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
4478 again for the slot after we give it RTL.
4479
4480 Tue Sep 16 00:13:20 1997 Nick Clifton <nickc@cygnus.com>
4481
4482 * v850.c (register_is_ok_for_epilogue,
4483 pattern_is_ok_for_epilogue, construct_restore_jr,
4484 pattern_is_ok_for_prologue, construct_save_jarl): New functions.
4485
4486 * v850.h (pattern_is_ok_for_prologue,
4487 pattern_is_ok_for_epilogue, register_is_ok_for_epilogue): New
4488 predicates.
4489
4490 * v850.md: Replace prologue and epilogue patterns with a
4491 match_parallel pattern.
4492
4493 Mon Sep 15 22:53:01 1997 Jeffrey A Law (law@cygnus.com)
4494
4495 * aclocal.m4: Add replacement for AC_PROG_INSTALL.
4496 * configure.in: Use EGCS_PROG_INSTALL.
4497
4498 Mon Sep 15 22:40:55 1997 Jim Wilson (wilson@cygnus.com)
4499
4500 * dwarf2out.c (gen_subprogram_die): Handle redefinition of an
4501 extern inline function.
4502
4503 Mon Sep 15 22:40:55 1997 Richard Henderson (rth@cygnus.com)
4504
4505 * dwarf2out.c (reg_loc_descriptor): Fix prototype.
4506 (concat_loc_descriptor): New function.
4507 (loc_descriptor): Call it.
4508 (add_AT_location_description): Also elide the descriptor if both
4509 halves of a CONCAT are pseudos.
4510 (add_location_or_const_value_attribute): Recognize CONCAT too.
4511
4512 Mon Sep 15 15:24:00 1997 Richard Henderson <rth@cygnus.com>
4513
4514 * alpha.md (movdi): Handle CONST_DOUBLE for TARGET_BUILD_CONSTANTS.
4515
4516 * alpha/alpha.c (output_prolog): New variable sa_reg. Use it for
4517 out-or-range reg_offset.
4518 (output_epilog): Likewise.
4519
4520 Mon Sep 15 15:39:26 1997 Jeffrey A Law (law@cygnus.com)
4521
4522 * cse.c (simplify_relational_operation): If MODE specifies a
4523 mode wider than HOST_WIDE_INT, then the high word of a CONST_INT
4524 is derived from the sign bit of the low word.
4525
4526 Mon Sep 15 11:43:38 1997 Jason Merrill <jason@yorick.cygnus.com>
4527
4528 Support dwarf2 unwinding on PUSH_ROUNDING targets like the x86.
4529
4530 * dwarf2.h: Add DW_CFA_GNU_args_size.
4531 * frame.c (execute_cfa_insn): Likewise.
4532 * dwarf2out.c (dwarf_cfi_name, output_cfi): Likewise.
4533 (dwarf2out_args_size, dwarf2out_stack_adjust): New fns.
4534 (dwarf2out_frame_debug): If this isn't a prologue or epilogue
4535 insn, hand it off to dwarf2out_stack_adjust.
4536 (dwarf2out_begin_prologue): Initialize args_size.
4537 * frame.h (struct frame_state): Add args_size.
4538 * libgcc2.c (__throw): Use args_size.
4539 * final.c (final_scan_insn): If we push args, hand off all insns
4540 to dwarf2out_frame_debug.
4541 * defaults.h (DWARF2_UNWIND_INFO): OK for !ACCUMULATE_OUTGOING_ARGS.
4542
4543 * dwarf2out.c dwarf2out_frame_debug): Fix typo.
4544 Handle epilogue restore of SP from FP.
4545 * emit-rtl.c (gen_sequence): Still generate a sequence if the
4546 lone insn has RTX_FRAME_RELATED_P set.
4547
4548 * frame.c (extract_cie_info): Handle "e" augmentation.
4549 * dwarf2out.c (ASM_OUTPUT_DWARF_*): Provide definitions in the
4550 absence of UNALIGNED_*_ASM_OP.
4551 (UNALIGNED_*_ASM_OP): Only provide defaults if OBJECT_FORMAT_ELF.
4552 (output_call_frame_info): Use "e" instead of "z" for augmentation.
4553 Don't emit augmentation fields length.
4554 (dwarf2out_do_frame): Move outside of #ifdefs.
4555 * defaults.h (DWARF2_UNWIND_INFO): Don't require unaligned data
4556 opcodes.
4557
4558 * sparc.h (UNALIGNED_INT_ASM_OP et al): Don't define here after all.
4559 * sparc/sysv4.h (UNALIGNED_INT_ASM_OP): Define here.
4560 * sparc/sunos4.h (DWARF2_UNWIND_INFO): Define to 0.
4561 * sparc/sun4gas.h: New file.
4562 * configure.in: Use sun4gas.h if SunOS 4 --with-gnu-as.
4563
4564 * collect2.c (write_c_file_stat, write_c_file_glob): Declare
4565 __register_frame_table and __deregister_frame.
4566
4567 1997-09-15 Brendan Kehoe <brendan@cygnus.com>
4568
4569 * except.c (find_exception_handler_labels): Use xmalloc instead of
4570 alloca, since MAX_LABELNO - MIN_LABELNO can be more than 1 million
4571 in some cases.
4572
4573 Sun Sep 14 21:01:23 1997 Jeffrey A Law (law@cygnus.com)
4574
4575 * Makefile.in: Various changes to build info files
4576 in the object tree rather than the source tree.
4577
4578 Sun Sep 14 12:24:30 1997 Jeffrey A Law (law@cygnus.com)
4579
4580 * fixinc.math: New file to fix math.h on some systems.
4581 * configure.in (freebsd, netbsd): Use fixinc.math on these
4582 systems.
4583 * configure: Rebuilt.
4584
4585 Sun Sep 14 11:11:05 1997 Jeffrey A Law (law@cygnus.com)
4586
4587 * regmove.c (regmove_optimize): If we end up moving the
4588 original insn due to lifetime overlaps, make sure to move
4589 REG_NOTES too.
4590
4591 Sat Sep 13 15:51:11 1997 Manfred Hollstein <manfred@s-direktnet.de>
4592
4593 * Makefile.in (INSTALL_{PROGRAM,DATA}): Use value found by configure.
4594
4595 Sat Sep 13 12:57:26 1997 Jeffrey A Law (law@cygnus.com)
4596
4597 * haifa-sched.c (add_branch_dependences): Make each insn in
4598 a SCHED_GROUP_P block explicitly depend on the previous insn.
4599
4600 Fri Sep 12 13:49:58 1997 Jason Merrill <jason@yorick.cygnus.com>
4601
4602 * except.h: Prototype dwarf2 hooks.
4603 * expr.c: Adjust.
4604
4605 Thu Sep 11 17:43:55 1997 Jim Wilson <wilson@cygnus.com>
4606
4607 * configure.in (native_prefix): Delete.
4608 (mips-dec-netbsd): Don't set prefix.
4609 (*linux*): Don't set prefix.
4610
4611 Thu Sep 11 15:48:32 1997 Fred Fish <fnf@ninemoons.com>
4612
4613 * protoize.c: Include <varargs.h> only if HAVE_VARARGS_H is
4614 defined. If not defined, include <sys/varargs.h> if
4615 HAVE_SYS_VARARGS_H is defined.
4616 * configure.in: Test for varargs.h and sys/varargs.h.
4617 * configure: Regenerate with autoconf.
4618 * config.in: Regenerate with autoheader.
4619
4620 * cpplib.c (quote_string): Cast first arg of sprintf call
4621 from "unsigned char *" to "char *".
4622 (output_line_command): Ditto.
4623 (macroexpand): Ditto.
4624 (do_line): Cast atoi arg from "unsigned char *" to "char *".
4625
4626 Wed Sep 10 21:37:30 1997 Jeffrey A Law (law@cygnus.com)
4627
4628 * version.c: Bump for snapshot.
4629
4630 * Makefile.in (compare): Exit with nonzero status if there
4631 are comparison failures. Note which files failed the
4632 comparison test in .bad_compare.
4633
4634 Wed Sep 10 17:05:46 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
4635
4636 * config/alpha/elf.h (CPP_PREDEFINES): Remove -D__PIC__ -D__pic__.
4637
4638 Wed Sep 10 16:37:28 1997 Fred Fish <fnf@ninemoons.com>
4639
4640 * Makefile.in (LN, LN_S): New macros, use where appropriate.
4641 * aclocal.m4 (GCC_PROG_LN_S, GCC_PROG_LN): New tests.
4642 * configure.in: Use GCC_PROG_LN_S and GCC_PROG_LN.
4643 * configure: Regenerated.
4644
4645 Thu Sep 11 11:09:43 1997 Jeffrey A Law (law@cygnus.com)
4646
4647 * loop.c (strength_reduce): Fix typo.
4648
4649 Wed Sep 10 16:01:15 1997 Jim Wilson <wilson@cygnus.com>
4650
4651 * m88k/m88k.c (struct option): Rename to struct options.
4652 * m88k/dolph.h (INITIALIZE_TRAMPOLINE): Delete here.
4653 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE): Delete ifdef and comments.
4654 * libgcc2.c (__enable_execute_stack): Check for __sysV88__ not
4655 __DOLPHIN__ or sysV88.
4656
4657 Wed Sep 10 14:58:40 1997 Jim Wilson <wilson@cygnus.com>
4658
4659 * emit-rtl.c (gen_lowpart_common): For a SUBREG, add in word when
4660 create new subreg.
4661
4662 Wed Sep 10 15:19:22 1997 Jeffrey A Law (law@cygnus.com)
4663
4664 * config.sub: Accept 'amigados' for backward compatability.
4665
4666 Wed Sep 10 14:05:08 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
4667
4668 * Makefile.in (testsuite/site.exp): New target.
4669 (check-gcc, check-g++): Depend on testsuite/site.exp.
4670 Don't stop for failure.
4671
4672 Wed Sep 10 12:59:57 1997 Jason Merrill <jason@yorick.cygnus.com>
4673
4674 * expr.c (expand_builtin): Only support __builtin_dwarf_fp_regnum()
4675 if DWARF2_UNWIND_INFO.
4676
4677 Wed Sep 10 11:49:20 1997 Jason Merrill <jason@yorick.cygnus.com>
4678
4679 Add support for exception handling using DWARF 2 frame unwind info.
4680 Currently works on SPARC and MIPS, and almost on x86.
4681
4682 * libgcc2.c (get_reg, put_reg, get_return_addr, put_return_addr,
4683 next_stack_level, in_reg_window): Helper fns.
4684 (__throw): Implement for DWARF2_UNWIND_INFO.
4685
4686 * expr.c (expand_builtin): Handle builtins used by __throw.
4687 * tree.h (enum built_in_function): Add builtins used by __throw.
4688 * c-decl.c (init_decl_processing): Declare builtins used by __throw.
4689 * dwarf2out.c (expand_builtin_dwarf_fp_regnum): Used by __throw.
4690 * except.c (expand_builtin_unwind_init): Hook for dwarf2 __throw.
4691 (expand_builtin_extract_return_addr): Likewise.
4692 (expand_builtin_frob_return_addr): Likewise.
4693 (expand_builtin_set_return_addr_reg): Likewise.
4694 (expand_builtin_eh_stub): Likewise.
4695 (expand_builtin_set_eh_regs): Likewise.
4696 (eh_regs): Choose two call-clobbered registers for passing back values.
4697
4698 * frame.c, frame.h: New files for parsing dwarf 2 frame info.
4699 * Makefile.in (LIB2ADD): New variable. Add $(srcdir)/frame.c.
4700 (libgcc2.a): Use it instead of $(LIB2FUNCS_EXTRA) $(LANG_LIB2FUNCS)
4701 (stmp-multilib): Likewise.
4702 ($(T)crtbegin.o, $(T)crtend.o): Add -fno-exceptions.
4703
4704 * except.c: #include "defaults.h".
4705 (exceptions_via_longjmp): Default depends on DWARF2_UNWIND_INFO.
4706 (emit_throw): Don't defeat assemble_external if DWARF2_UNWIND_INFO.
4707 (register_exception_table_p): New fn.
4708 (start_eh_unwinder): Don't do anything if DWARF2_UNWIND_INFO.
4709 (end_eh_unwinder): Likewise.
4710
4711 * crtstuff.c: Wrap .eh_frame section, use EH_FRAME_SECTION_ASM_OP,
4712 call __register_frame and __deregister_frame as needed.
4713 * varasm.c (eh_frame_section): New fn if EH_FRAME_SECTION_ASM_OP.
4714 * dwarf2out.c (EH_FRAME_SECTION): Now a function-like macro. Check
4715 EH_FRAME_SECTION_ASM_OP.
4716 * sparc/sysv4.h (EH_FRAME_SECTION_ASM_OP): Define.
4717 * mips/iris6.h: (EH_FRAME_SECTION_ASM_OP): Define.
4718 (LINK_SPEC): Add __EH_FRAME_BEGIN__ to hidden symbols.
4719
4720 * dwarf2out.c (output_call_frame_info): If no support for
4721 EXCEPTION_SECTION, mark the start of the frame info with a
4722 collectable tag.
4723 * collect2.c (frame_tables): New list.
4724 (is_ctor_dtor): Recognise frame entries.
4725 (scan_prog_file): Likewise.
4726 (main): Pass -fno-exceptions to sub-compile. Also do collection
4727 if there are any frame entries.
4728 (write_c_file_stat): Call __register_frame_table and
4729 __deregister_frame as needed.
4730 (write_c_file_glob): Likewise.
4731
4732 * defaults.h (DWARF2_UNWIND_INFO): Default to 1 if supported.
4733 Also require unaligned reloc support.
4734 * sparc.h (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
4735 UNALIGNED_DOUBLE_INT_ASM_OP): Define here.
4736 * sparc/sysv4.h: Not here.
4737
4738 * toplev.c (compile_file): Call dwarf2out_frame_{init,finish}.
4739 * dwarf2out.c (dwarf2out_init): Don't call dwarf2out_frame_init.
4740 (dwarf2out_finish): Don't call dwarf2out_frame_finish.
4741
4742 * libgcc2.c (L_eh): Reorganize, moving code shared by different
4743 EH implementations to the top.
4744 (find_exception_handler): Split out. Start from 0. Compare against
4745 end with >=.
4746 (__find_first_exception_table_match): Use it.
4747 * except.c (output_exception_table): Don't do anything if there's
4748 no table. Don't output a first entry of zeroes.
4749 (eh_outer_context): Adjust properly.
4750 (add_eh_table_entry): Use xrealloc.
4751 * toplev.c (compile_file): Just call output_exception_table.
4752
4753 Wed Sep 10 11:30:36 1997 Jason Merrill <jason@cygnus.com>
4754
4755 * i386.c (ix86_prologue): Add dwarf2 support for !do_rtl case.
4756
4757 Wed Sep 10 08:17:10 1997 Torbjorn Granlund <tege@pdc.kth..se>
4758
4759 * except.c (eh_outer_context): Do masking using expand_and.
4760
4761 Wed Sep 10 01:38:30 1997 Doug Evans <dje@cygnus.com>
4762
4763 Add port done awhile ago for the ARC cpu.
4764 * arc/arc.h: New file.
4765 * arc/arc.c: New file.
4766 * arc/arc.md: New file.
4767 * arc/initfini.c: New file.
4768 * arc/lib1funcs.asm: New file.
4769 * arc/t-arc: New file.
4770 * arc/xm-arc.h: New file.
4771 * ginclude/va-arc.h: New file.
4772 * ginclude/stdarg.h: Include va-arc.h ifdef __arc__.
4773 * ginclude/varargs.h: Likewise.
4774 * Makefile.in (USER_H): Add va-arc.h.
4775 * configure.in (arc-*-elf*): Recognize.
4776 * longlong.h: Add ARC support.
4777
4778 Wed Sep 10 01:32:54 1997 Jeffrey A Law (law@cygnus.com)
4779
4780 * expr.c (clear_storage): Use CONST0_RTX instead of const0_rtx.
4781 when clearing non-BLKmode data.
4782
4783 Wed Sep 10 00:29:29 1997 Manfred Hollstein <manfred@s-direktnet.de>
4784
4785 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE) Define.
4786 * libgcc2.c (__enable_execute_stack): Provide for sysV88 too.
4787
4788 * xm-m88k.h (USG): Only define if it hasn't already been defined.
4789
4790 * Makefile.in (risky-stage1): Delete gratutious whitespace.
4791
4792 * Makefile.in (clean): Delete libgcc1-test.
4793
4794 * Makefile.in (INSTALL): cd to $(srcdir) before running texinfo.
4795
4796 Tue Sep 9 17:07:36 1997 Stan Cox <coxs@dg-rtp.dg.com>
4797
4798 * m88k.c (m88k_expand_prologue): Set MEM_IN_STRUCT_P of va_list
4799 template.
4800
4801 Tue Sep 9 09:50:02 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4802
4803 * dwarf2out.c (output_call_frame_info): Call named_section.
4804
4805 Tue Sep 9 09:12:17 1997 Jeffrey A Law (law@cygnus.com)
4806
4807 * haifa-sched.c (print_value): Fix last change.
4808
4809 Tue Sep 9 01:30:37 1997 Jason Merrill <jason@yorick.cygnus.com>
4810
4811 * mips.h (DWARF_FRAME_REGNUM): Use the same numbering regardless of
4812 write_symbols.
4813
4814 Mon Sep 8 16:32:43 1997 Jason Merrill <jason@yorick.cygnus.com>
4815
4816 * mips.c (function_prologue): Set up the CFA when ABI_32.
4817
4818 * sparc.c (save_regs): Check dwarf2out_do_frame instead of DWARF2_DEBUG
4819 for dwarf2 unwind info.
4820 (output_function_prologue, sparc_flat_output_function_prologue): Same.
4821
4822 * final.c (final_end_function): Check dwarf2out_do_frame instead
4823 of DWARF2_DEBUG for dwarf2 unwind info.
4824 (final_scan_insn): Likewise.
4825 (final_start_function): Likewise. Initialize dwarf2 frame debug here.
4826 (final): Not here.
4827
4828 * expr.c (expand_builtin_return_addr): Only SETUP_FRAME_ADDRESSES if
4829 count > 0.
4830
4831 * varasm.c (exception_section): Check EXCEPTION_SECTION first.
4832
4833 Mon Sep 8 15:15:11 1997 Nick Clifton <nickc@cygnus.com>
4834
4835 * v850.h (ASM_SPEC): Pass on target processor.
4836 (CPP_PREDEFINES): Only define if not already specified.
4837 (TARGET_VERSION): Only define if not already specified.
4838 (MASK_CPU, MASK_V850, MASK_DEFAULT): Bits to specify target
4839 processor.
4840 (EXTRA_SWITCHES): Extra entries in the switches array.
4841 (TARGET_DEFAULT): Set default target processor.
4842
4843 Mon Sep 8 18:26:35 1997 Jim Wilson <wilson@cygnus.com>
4844
4845 * m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): In MOTOROLA
4846 cases, add %# and %/, and add : to make them into extended asms.
4847
4848 Sun Sep 7 23:57:50 1997 Weiwen Liu <liu@hepunix.physics.yale.edu>
4849
4850 * alias.c (init_alias_analysis): Clean up incompatible pointer
4851 type warning in bzero.
4852 * regmove.c (regmove_optimize): Ditto.
4853 * haifa-sched.c (find_rgns): Ditto.
4854
4855 * haifa-sched.c (print_value): Clean up ptr->int cast
4856 warnings.
4857
4858 Sun Sep 7 23:18:32 1997 Fred Fish <fnf@ninemoons.com>
4859
4860 * INSTALL: Change 'amigados' to 'amigaos' to match current usage.
4861 * install.texi (Configurations): Ditto.
4862 * config.sub: Ditto.
4863
4864 Sun Sep 7 22:56:56 1997 Weiwen Liu (liu@hepvms.physics.yale.edu)
4865
4866 * Makefile.in (sdbout.o): Depend on insn-config.h.
4867
4868 Sun Sep 7 18:44:50 1997 Jim Wilson <wilson@cygnus.com>
4869
4870 * m68k/m68k.h (TARGET_SWITCHES): For 68000, 68302, subtract MASK_68881.
4871 For 68303, 68332, cpu32, subtract MASK_68040_ONLY.
4872
4873 Sun Sep 7 18:30:46 1997 Jason Merrill <jason@yorick.cygnus.com>
4874
4875 * dwarf2out.c (dwarf2out_frame_debug): Assume that in a PARALLEL
4876 prologue insn, only the first elt is significant.
4877 (output_call_frame_info): For exception handling, always use 4-byte
4878 fields as specified by the dwarf2 spec.
4879 Don't skip trivial FDEs.
4880
4881 Sun Sep 7 14:19:39 1997 Jeffrey A Law (law@cygnus.com)
4882
4883 * version.c: Bump for snapshot.
4884
4885 Sun Sep 7 14:17:36 1997 Torbjorn Granlund (tege@pdc.kth.se)
4886
4887 * expmed.c (expand_divmod): Make op1_is_pow2 depend on unsignedp
4888 for negative constants. Promote EXACT_DIV_EXPR to TRUNC_DIV_EXPR
4889 when op1_is_pow2.
4890
4891 Sun Sep 7 13:46:46 1997 Jeffrey A Law (law@cygnus.com)
4892
4893 * final.c (shorten_branches): During first pass, assume worst
4894 possible alignment for ADDR_VEC and ADDR_VEC_DIFF insns.
4895
4896 * Makefile.in (distclean): Remove various things left around
4897 by running the testsuite.
4898
4899 Sun Sep 7 13:16:06 1997 Manfred Hollstein <manfred@s-direktnet.de>
4900
4901 * configure.in (out_file): Emit definition to config.status in order
4902 to have a defined value for configure.lang.
4903 * configure: Re-built.
4904
4905 Sun Sep 7 09:59:08 1997 Jan-Jaap van der Heijden (J.J.vanderHeijden@student.utwente.nl)
4906
4907 * configure.in: Make symlink to as-new rather than as.new. Similarly
4908 for ld-new.
4909 * configure: Rebuilt.
4910
4911 Fri Sep 5 16:54:55 1997 Jim Wilson <wilson@cygnus.com>
4912
4913 * profile.c (output_func_start_profiler): Set DECL_EXTERNAL to zero.
4914
4915 Fri Sep 5 16:16:44 1997 Christian Kuehnke <Christian.Kuehnke@arbi.Informatik.Uni-Oldenburg.DE>
4916
4917 * sparc/sparc.md: Add ultrasparc scheduling support.
4918 * sparc/sparc.h (RTX_COSTS): For MULT give v9 a cost of 25 insns.
4919
4920 Fri Sep 5 14:04:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
4921
4922 * integrate.c (save_for_inline_copying): Use 0, not NULL_PTR,
4923 as initial value for real_label_map.
4924 (copy_for_inline): Likewise.
4925
4926 Fri Sep 5 13:36:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
4927
4928 * sched.c (update_flow_info) When looking if to set found_split_dest
4929 or found_orig_dest, look at all parts of a PARALLEL.
4930 * haifa-sched.c (update_flow_info): Likewise.
4931
4932 Fri Sep 5 10:08:44 1997 Jeffrey A Law (law@cygnus.com)
4933
4934 * v850: New directory for v850 port.
4935 * v850/lib1funcs.asm: New file.
4936 * t-v850, v850.c, v850.h, v850.md, xm-v850.h: New files.
4937 * ginclude/va-v850.h: New file.
4938 * ginclude/varargs.h, ginclude/stdarg.h: Include va-mn10200.h.
4939 * configure.in (mn10200-*-*): New target.
4940 * configure: Rebuilt.
4941 * config.sub: Handle v850-elf.
4942 * Makefile.in (USER_H): Add va-mn10200.h.
4943 * invoke.texi: Document v850 stuff.
4944
4945 Fri Sep 5 09:37:50 1997 Jim Wilson (wilson@cygnus.com)
4946
4947 * sdbout.c (plain_type_1, case ARRAY_TYPE): Verify that TYPE_DOMAIN
4948 has integer TYPE_{MAX,MIN}_VALUE before using them.
4949
4950 * m68k/m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Add
4951 __HPUX_ASM__ versions.
4952
4953 Fri Sep 5 09:08:44 1997 Jeffrey A Law (law@cygnus.com)
4954
4955 * install.sh: Delete duplicate install script.
4956
4957 Thu Sep 4 23:14:27 1997 Stan Cox (coxs@dg-rtp.dg.com)
4958
4959 * reg-stack.c (subst_stack_regs): Pop the stack register for a
4960 computed goto which sets the same stack register.
4961
4962 * reg-stack.c (compare_for_stack_reg): Swap only if the source and
4963 destination are both on the regstack.
4964 (subst_stack_regs_pat): Put the destination at the top of the regstack.
4965
4966 Thu Sep 4 15:02:27 1997 Jim Wilson <wilson@cygnus.com>
4967
4968 * mips.md (nonlocal_goto_receiver): Define.
4969
4970 * profile.c (output_arc_profiler): Check next_insert_after for non
4971 NULL before deferencing it.
4972
4973 * i386/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define to -fPIC.
4974
4975 Thu Sep 4 14:51:57 1997 Jeffrey A Law (law@cygnus.com)
4976
4977 * i386.h (CPP_CPU_DEFAULT): Avoid using #elif.
4978
4979 Thu Sep 4 15:01:49 1997 Michael Meissner <meissner@cygnus.com>
4980
4981 * toplev.c (rest_of_compilation): For passes starting with
4982 flow_analysis, use print_rtl_with_bb instead of print_rtl.
4983
4984 * print-rtl.c (print_rtl_single): Print a single rtl value to a
4985 file.
4986
4987 * flow.c (print_rtl_with_bb): Print which insns start and end
4988 basic blocks. For the start of a basic block, also print the live
4989 information.
4990
4991 Thu Sep 4 11:51:43 1997 Jim Wilson <wilson@cygnus.com>
4992
4993 * toplev.c (main): Change #elif to #else/#ifdef
4994
4995 * tlink.c: Include ctype.h.
4996 * ginclude/va-mips.h: Add _VA_MIPS_H_ENUM ifdef/define/endif.
4997
4998 Thu Sep 4 11:17:16 1997 Mikeael Meissner (meissner@cygnus.com)
4999
5000 * bitmap.c: Conditionally include stdlib.h.
5001 (free): Provide a declaration if NEED_DECLARATION_FREE.
5002
5003 Thu Sep 4 09:58:53 1997 Joel Sherrill (joel@OARcorp.com)
5004
5005 * i960/i960.h: Added default for SUBTARGET_SWITCHES macro.
5006
5007 Thu Sep 4 09:53:20 1997 Jim Wilson (wilson@cygnus.com)
5008
5009 * profile.c (output_arc_profiler): Verify next_insert_after is an
5010 INSN before and after skipping a stack pop.
5011
5012 Thu Sep 4 07:39:19 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
5013
5014 * final.c (shorten_branches): Don't count the lengths of deleted
5015 instructions.
5016
5017 Thu Sep 4 09:43:01 1997 Jeffrey A Law (law@cygnus.com)
5018
5019 * version.c: Bump for snapshot.
5020
5021 Thu Sep 4 11:04:21 1997 Michael Meissner <meissner@cygnus.com>
5022
5023 * bitmap.h (EXECUTE_IF_AND_IN_BITMAP): New macro, to iterate over
5024 two bitmaps ANDed together.
5025 (bitmap_print): Declare.
5026
5027 * bitmap.c (function_obstack): Don't declare any more.
5028 (bitmap_obstack): Obstack for allocating links from.
5029 (bitmap_obstack_init): New static to say whether to initialize
5030 bitmap_obstack.
5031 (bitmap_element_allocate): Use bitmap_obstack to allocate from.
5032 (bitmap_release_memory): Free all memory allocated from
5033 bitmap_obstack.
5034
5035 * basic-block.h (EXECUTE_IF_AND_IN_REG_SET): New macro, invoke
5036 EXECUTE_IF_AND_IN_BITMAP.
5037
5038 Wed Sep 3 10:39:42 1997 Jim Wilson <wilson@cygnus.com>
5039
5040 * alias.c (true_dependence): Address with AND can alias scalars.
5041 (anti_dependence, output_dependence): Likewise.
5042
5043 * alias.c (true_dependence): Test x for BLKmode, in addition to mem.
5044
5045 Wed Sep 3 09:28:50 CDT 1997 Joel Sherrill (joel@OARcorp.com)
5046
5047 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h, m68k/rtems.h,
5048 mips/rtems64.h, pa/rtems.h, rs6000/rtems.h, sh/rtems.h,
5049 sparc/rtems.h (subtarget_switches): Removed SUBTARGET_SWITCHES
5050 definitions. Use -qrtems instead of -mrtems.
5051
5052 Wed Sep 3 09:05:41 1997 Robert Lipe (robert@dgii.com)
5053
5054 * xm-sco5.h (sys_siglist): Define.
5055 (SYS_SIGLIST_DECLARED): Likewise.
5056
5057 Tue Sep 2 23:33:33 1997 Jeffrey A Law (law@cygnus.com)
5058
5059 * expr.c (convert_move): Handle truncation from TQFmode to QFmode.
5060
5061 Wed Sep 3 02:09:30 1997 Torbjorn Granlund <tege@pdc.kth..se>
5062
5063 * except.c (eh_outer_context): Expand masking operation using
5064 expand_binop.
5065
5066 Tue Sep 2 18:09:39 1997 Jim Wilson <wilson@cygnus.com>
5067
5068 * alpha.md (floatdisf2-1): New pattern.
5069
5070 Tue Sep 2 18:41:55 1997 Jeffrey A Law (law@cygnus.com)
5071
5072 * xm-svr4.h (SYS_SIGLIST_DECLARED): Define.
5073 * xm-news.h (SYS_SIGLIST_DECLARED): Likewise.
5074 * xm-sysv4.h (SYS_SIGLIST_DECLARED): Likewise.
5075 * gcc.texi: Note that if you define sys_siglist that you should
5076 also define SYS_SIGLIST_DECLARED.
5077
5078 * mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instructions
5079 are relative to the next instruction, not the current instruction.
5080
5081 Tue Sep 2 14:22:43 1997 Jim Wilson <wilson@cygnus.com>
5082
5083 * local-alloc.c (contains_replace_regs): New function.
5084 (update_equiv_regs): When adding a REG_EQUIV note for a set of a MEM,
5085 verify that there is no existing REG_EQUIV note, and add a call to
5086 contains_place_regs.
5087
5088 Tue Sep 2 12:48:11 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
5089
5090 * config/alpha/elf.h (CPP_PREDEFINES): Add -D__PIC__ -D__pic__.
5091 (STARTFILE_SPEC): Always use crtbegin.o%s
5092 (ENDFILE_SPEC): Always use crtend.o%s.
5093
5094 Tue Sep 2 12:00:36 1997 Jim Wilson <wilson@cygnus.com>
5095
5096 * alpha/alpha.h (PREFERRED_RELOAD_CLASS): Return NO_REGS if NO_REGS
5097 is passed in.
5098 * emit-rtl.c (gen_lowpart_common): Add code to convert CONST_INT to
5099 SFmode for 64 bit hosts.
5100
5101 Tue Sep 2 13:42:38 1997 Paul N. Hilfinger <hilfingr@CS.Berkeley.EDU>
5102
5103 * fixincludes: Permits spaces between # and define. Discard C++
5104 comments in sys/pci.h on HP/UX 10.20.
5105
5106 Mon Sep 1 22:13:18 1997 Jeffrey A Law (law@cygnus.com)
5107
5108 * version.c: Bump for snapshot.
5109
5110 * pa.c (restore_unscaled_index_insn_codes): New function.
5111 (record_unscaled_index_insn_codes): Likewise.
5112 (output_function_prologue): Call restore_unscaled_index_insn_codes.
5113 (output_function_epilogue): Free memory for unscaled_index_insn_codes.
5114 (pa_reorg): Call record_unscaled_index_insn_codes.
5115
5116 * haifa-sched.c (move_insn): Handle notes correctly for insns
5117 with SCHED_GROUP_P set.
5118
5119 Mon Sep 1 16:58:57 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
5120
5121 * alpha/xm-linux.h (USE_BFD): Undef before define.
5122
5123 Mon Sep 1 16:25:34 1997 Jim Wilson <wilson@cygnus.com>
5124
5125 * cse.c (cse_insn): Don't record BLKmode values.
5126
5127 Mon Sep 1 11:25:47 1997 Stephen Williams (steve@icarus.icarus.com)
5128
5129 * i960.h (LINK_SPEC): Handle "-mjX" and "-mrp" switches.
5130
5131 Mon Sep 1 08:29:46 1997 Jeffrey A Law (law@cygnus.com)
5132
5133 * cccp.c (sys_errlist): Remove special 4.4bsd declaration.
5134 * collect2.c (sys_errlist): Likewise.
5135 * cpplib.c (sys_errlist): Likewise.
5136 * gcc.c (sys_errlist): Likewise.
5137 * protoize (sys_errlist): Likewise.
5138 * configure.in: Check for strerror.
5139 * xm-freebsd.h (HAVE_STRERROR): Remove definition.
5140 * xm-gnu.h (HAVE_STRERROR): Likewise.
5141 * xm-linux.h (HAVE_STRERROR): Likewise.
5142 * xm-netbsd.h (HAVE_STRERROR): Likewise.
5143 * xm-bsd386.h (HAVE_STRERROR): Likewise.
5144 * xm-cygwin32.h (HAVE_STRERROR): Likewise.
5145 * xm-dos.h (HAVE_STRERROR): Likewise.
5146 * xm-mingw32.h (HAVE_STRERROR): Likewise.
5147 * xm-pa.h (HAVE_STRERROR): Likewise.
5148 * xm-papro.h (HAVE_STRERROR): Likewise.
5149 * xm-sysv4.h (HAVE_STRERROR): Likewise.
5150 * configure, config.in: Rebuilt.
5151
5152 * Makefile.in: Add several missing "else true" clauses.
5153
5154 * collect2.c: Change DONT_DECLARE_SYS_SIGLIST to SYS_SIGLIST_DECLARED.
5155 * mips-tfile.c: Likewise.
5156 * gcc.texi: DONT_DECLARE_SYS_SIGLIST: Remove docs.
5157 * xm-linux.h (DONT_DECLARE_SYS_SIGLIST): Delete definition.
5158 * xm-freebsd.h, xm-bsd386.h, xm-sysv4.h, xm-sol2.h: Likewise.
5159 * configure.in: Check for sys_siglist declaration.
5160 * configure, config.in: Rebuilt.
5161
5162 Mon Sep 1 08:04:07 1997 Joel Sherrill (joel@OARcorp.com)
5163
5164 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h,
5165 m68k/rtems.h, mips/rtems64.h, pa/rtems.h, rs6000/rtems.h,
5166 sparc/rtems.h (subtarget_switches): Added -mrtems as a switch.
5167 * i960/i960.h: Added SUBTARGET_SWITCHES macro.
5168 * rs6000/sysv4.h (extra_subtarget_switches): Added new
5169 macro EXTRA_SUBTARGET_SWITCHES.
5170 * configure.in (sh*-*-rtems*): New target.
5171 * sh/rtems.h: New file.
5172 * sh/sh.h: Added SUBTARGET_SWITCHES macro.
5173 * configure: Rebuilt.
5174
5175 Sat Aug 30 22:54:26 1997 Jim Wilson <wilson@cygnus.com>
5176
5177 * unroll.c (calculate_giv_inc): Handle increment with code PLUS.
5178
5179 Sat Aug 30 10:49:46 1997 David Edelsohn <edelsohn@mhpcc.edu>
5180
5181 * rs6000.md: Make DF fused-add operations pay attention to
5182 -mno-fused-add.
5183
5184 Fri Aug 29 19:19:54 1997 Jim Wilson <wilson@cygnus.com>
5185
5186 * i386/xm-sysv4.h (DONT_DECLARE_SYS_SIGLIST): Define.
5187
5188 Fri Aug 29 16:13:51 1997 Jeffrey A Law (law@cygnus.com)
5189
5190 * pa.md (reload_peepholes): Make sure operand is a REG before
5191 examining REGNO. Allow general registers too.
5192
5193 Fri Aug 29 11:42:04 1997 Jim Wilson <wilson@cygnus.com>
5194
5195 * varasm.c (mark_constants): Don't look inside CONST_DOUBLEs.
5196
5197 Fri Aug 29 09:33:20 1997 Philipp Thomas (kthomas@lxi165.gwdg.de)
5198
5199 * dwarf2out.c (build_abbrev_table): Use xrealloc, not xmalloc
5200 to reallocate abbrev_die_table.
5201
5202 Thu Aug 28 15:14:46 1997 Jim Wilson <wilson@cygnus.com>
5203
5204 * m68k/m68k.md (iorsi_zexthi_ashl16): Disable.
5205
5206 1997-08-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5207
5208 * Makefile.in (config.status): Depend on version.c
5209
5210 * expr.h (insn_gen_function): Reenable prototype.
5211
5212 * expr.c (move_by_pieces_1, clear_by_pieces_1): Fix prototype of
5213 first parameter.
5214
5215 Thu Aug 28 13:01:43 1997 Jim Wilson <wilson@cygnus.com>
5216
5217 * i386.c (ix86_expand_epilogue): Emit blockage instruction when pic.
5218
5219 Thu Aug 28 07:03:15 1997 Jeffrey A Law (law@cygnus.com)
5220
5221 * version.c: Bump for latest snapshot.
5222
5223 * bc-optab.c: Conditionally include stdlib.h.
5224 (free): Provide a declaration if NEED_DECLARATION_FREE.
5225 * tree.c (free): Provide a declaration if NEED_DECLARATION_FREE.
5226 * rtl.h (free): Remove declaration.
5227 * tree.h (free): Remvoe declaration.
5228
5229 * configure: Rebuilt.
5230
5231 Wed Aug 27 21:32:20 1997 Jeffrey A Law (law@cygnus.com)
5232
5233 * flags.h (flag_move_all_movables): Declare.
5234 (flag_reduce_all_givs): Likewise.
5235 * loop.c (move_movables): Handle flag_move_all_movables.
5236 (strength_reduce): Handle flag_reduce_all_givs.
5237 * toplev.c (flag_move_all_movables): Define.
5238 (flag_reduce_all_givs): Likewise.
5239 (f_options): Add -fmove-all-movables and -freduce-all-givs.
5240 * invoke.texi: Document new options, including alias stuff that
5241 wasn't included last time.
5242
5243 Wed Aug 27 18:08:51 1997 Bob Manson (manson@cygnus.com)
5244
5245 * t-h8300: Use TARGET_LIBGCC2_CFLAGS instead of LIBGCC2_CFLAGS.
5246 * t-mn10200: Ditto.
5247 * t-vxsparc: Ditto.
5248 * t-vxworks68: Ditto.
5249 * t-vxworks960: Ditto.
5250 * t-vx29k: Ditto.
5251
5252 Wed Aug 27 16:35:29 1997 Richard Henderson <rth@cygnus.com>
5253
5254 * alpha/xm-alpha.h (alloca): Define alloca to builtin_alloca for GNUC
5255 if not already defined, and USE_C_ALLOCA not defined.
5256
5257 Wed Aug 27 16:08:43 1997 Jim Wilson <wilson@cygnus.com>
5258
5259 * config.guess: Replace with script that uses ../config.guess.
5260
5261 * config/alpha/elf.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1
5262 if USE_GNULIBC_1 is not defined.
5263
5264 Wed Aug 27 15:49:12 1997 Richard Henderson <rth@cygnus.com>
5265
5266 * alpha/elf.h (LINK_SPEC): Conditionalize on USE_GNULIBC_1.
5267 * config.guess: Recognize alpha-linux-gnulibc1.
5268 * configure.in (alpha-*-linux-gnulibc1): New target.
5269 (alpha-*-linux-gnu*): Don't build crtbegin/end.
5270
5271 Wed Aug 27 11:52:58 1997 Jim Wilson <wilson@cygnus.com>
5272
5273 * m68k.md (iorsi3_internal): Readd ! TARGET_5200 check lost in
5274 last change.
5275
5276 Wed Aug 27 01:56:18 1997 Doug Evans <dje@seba.cygnus.com>
5277
5278 * loop.c (combine_movables): Earlier insns don't match later ones.
5279
5280 Wed Aug 27 01:24:25 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
5281
5282 * config/linux.h (CC1_SPEC): Define it only if not defined.
5283
5284 * config/m68k/linux.h (CC1_SPEC): Undefine it before include
5285 <linux.h>
5286
5287 * config/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1 if
5288 USE_GNULIBC_1 is not defined.
5289
5290 * config/rs6000/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1.
5291
5292 * config/sparc/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined
5293 as 1 if USE_GNULIBC_1 is not defined.
5294
5295 Wed Aug 27 00:49:14 1997 Jeffrey A Law (law@cygnus.com)
5296
5297 * reorg.c (dbr_schedule): Allow current_function_return_rtx
5298 to be something other than a REG.
5299 * function.c (expand_function_end): Fix current_function_return_rtx
5300 if it was a pseudo.
5301
5302 * t-freebsd (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
5303 * x-netbsd: Likewise
5304 * x-dgux (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS
5305 (INSTALL_HEADERS): Delete.
5306 * x-dguxbcs: Likewise.
5307 * x-hp3bsd44: Likewise
5308 * x-pa: Likewise.
5309
5310 Wed Aug 27 00:30:00 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5311
5312 * i386.md (pop): pop increments the stack pointer.
5313 (prologue_set_stack_ptr): New pattern.
5314 * i386.c (ix86_expand_prologue): Use prologue_set_stack_ptr
5315 instead of subsi3.
5316
5317 Tue Aug 26 18:50:32 1997 Jim Wilson <wilson@cygnus.com>
5318
5319 * reload.c (find_reloads, case '0'): Reject matching a non-offsettable
5320 address where an offsettable address is required.
5321
5322 Tue Aug 26 17:54:56 1997 Michael P. Hayes (michaelh@ongaonga.chch.cri.nz>
5323
5324 * loop.c (check_final_value): Don't miss a biv increment in a
5325 parallel.
5326
5327 Tue Aug 26 12:03:49 1997 Jim Wilson (wilson@cygnus.com)
5328
5329 * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Check
5330 TYPE_DECL_IS_STUB instead of DECL_NAME.
5331
5332 Mon Aug 25 23:27:10 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
5333
5334 * objc/Make-lang.in ($(OBJC_O)): Also depend on cc1obj.
5335
5336 Mon Aug 25 23:27:10 1997 Jim Meyering <meyering@eng.ascend.com>
5337
5338 * objc/Make-lang.in ($(OBJC_O)): Also depend on $(GCC_PASSES).
5339
5340 Mon Aug 25 13:12:24 1997 Jeffrey A Law (law@cygnus.com)
5341
5342 * haifa-sched.c (find_pre_sched_live): Remove #if 0 code.
5343 (find_post_sched_live): Likewise.
5344
5345 * haifa-sched.c (schedule_block): Remove old code to get arguments
5346 from hard regs into pseudos early.
5347
5348 Mon Aug 25 08:55:00 1997 Jeffrey A Law (law@cygnus.com)
5349
5350 * version.c: Bump for new snapshot.
5351
5352 * local-alloc.c (update_equiv_regs): All the target to reject
5353 promotion of some REG_EQUAL to REG_EQUIV notes.
5354 * pa.h (DONT_RECORD_EQUIVALENCE): Define.
5355
5356 * pa.c (secondary_reload_class): (mem (mem ... )) does not need
5357 secondary reloads.
5358
5359 * pa.c (hppa_builtin_saveregs): Emit a blockage insn after the
5360 store of the argument registers.
5361
5362 Mon Aug 25 08:39:02 1997 Craig Burley (burley@gnu.ai.mit.edu)
5363
5364 * fold-const.c (multiple_of_p): New function.
5365 (fold): Turn some cases of *_DIV_EXPR into EXACT_DIV_EXPR.
5366
5367 Mon Aug 25 01:47:41 1997 Jeffrey A Law (law@cygnus.com)
5368
5369 * expr.h (insn_gen_function): Temporarily remove prototype.
5370
5371 Sun Aug 24 17:22:21 1997 Jim Wilson <wilson@cygnus.com>
5372
5373 * Makefile.in (install-info): Don't cd into srcdir. Add srcdir to
5374 filenames. Use sed to extract base filename for install.
5375
5376 Sat Aug 23 18:19:40 1997 John F. Carr <jfc@mit.edu>
5377
5378 * unroll.c (find_splittable_givs): Only share if two givs have the
5379 same add and multiply values.
5380
5381 Sat Aug 23 14:36:27 1997 Jim Wilson <wilson@cygnus.com>
5382
5383 * m68k/next.h (GO_IF_INDEXABLE_BASE): Fix typo in undef.
5384 * m68k/m68kemb.h (LIB_SPEC): Add missing comment end before it.
5385
5386 Sat Aug 23 00:18:22 1997 Jeffrey A Law (law@cygnus.com)
5387
5388 * pa.c (pa_reorg): Always put begin_brtab and end_brtab insns
5389 around branch tables.
5390 * pa.md (begin_brtab, end_brtab): Only emit the .begin_brtab
5391 and .end_brtab directives if TARGET_GAS.
5392
5393 Fri Aug 22 14:05:55 1997 Jim Wilson <wilson@cygnus.com>
5394
5395 * alias.c (true_dependence): Pass x_addr not x to varies.
5396
5397 * acconfig.h (NEED_DECLARATION_CALLOC): Add.
5398 * configure.in: Add GCC_NEED_DECLARATION call for calloc.
5399 * rs6000/xm-rs6000.h (malloc, realloc, calloc, free): Delete
5400 declarations.
5401 * config.in, configure: Regenerate.
5402
5403 Thu Aug 21 23:52:16 1997 John F. Carr <jfc@mit.edu>
5404
5405 * alias.c (find_base_value): Improve handling of PLUS, MINUS, and
5406 LO_SUM.
5407 (record_set): Handle LO_SUM like PLUS.
5408 (init_alias_analysis): When following chains of base addresses,
5409 do not stop on reaching a hard register.
5410
5411 Thu Aug 21 20:17:37 1997 Jeffrey A Law (law@cygnus.com)
5412
5413 * version.c: Bump for new snapshot.
5414
5415 Thu Aug 21 17:28:00 1997 Jim Wilson <wilson@cygnus.com>
5416
5417 * alpha.h (ARCH_ASM_FILE_START): Define.
5418 (ASM_FILE_START): Use ARCH_ASM_FILE_START.
5419 * osf12.h, osf2or3.h (ARCH_ASM_FILE_START): Redefine to null string.
5420
5421 Thu Aug 21 10:22:19 1997 Jeffrey A Law (law@cygnus.com)
5422
5423 * Makefile.in (install-common): Put gcov comment at start of line.
5424
5425 Wed Aug 20 22:47:33 1997 Jeffrey A Law (law@cygnus.com)
5426
5427 * alias.c (init_alias_analysis): When simplifying the reg_base_value
5428 array, simplify entries for hard registers too.
5429
5430 Wed Aug 20 12:35:47 1997 Dave Love <d.love@dl.ac.uk>
5431
5432 * dwarf2.h (enum dwarf_call_frame_info): Remove trailing comma from
5433 list.
5434
5435 Wed Aug 20 11:58:33 1997 Jim Wilson <wilson@cygnus.com>
5436
5437 * stmt.c (start_cleanup_deferal, end_cleanup_deferal): Test
5438 block_stack before dereferencing it.
5439
5440 Wed Aug 20 11:57:11 1997 Michael Meissner <meissner@cygnus.com>
5441
5442 * rs6000.h (ISSUE_RATE): Define instead of MACHINE_issue_rate.
5443
5444 Tue Aug 19 17:10:56 1997 Jason Merrill <jason@yorick.cygnus.com>
5445
5446 * cplus-dem.c: Add 'extern' to prepends_underscore.
5447
5448 Tue Aug 19 09:34:57 1997 Jeffrey A Law (law@cygnus.com)
5449
5450 * haifa-sched.c (ISSUE_RATE): Renamed from MACHINE_issue_rate.
5451 (get_issue_rate): Delete.
5452 * pa.h (ISSUE_RATE): Define.
5453
5454 * configure.in: Turn on haifa by default for the PA.
5455 * configure: Rebuilt.
5456 * pa.c (override_options): Accept -mschedule=7200 option.
5457 (pa_adjust_cost): No longer need to scale costs for newer
5458 processors.
5459 * pa.h (enum processor_type): Add PROCESSOR_7200.
5460 * pa.md: Revamp scheduling parameters to work better with
5461 haifa. Add scheduling parameters for the 7200.
5462
5463 * haifa-sched.c (move_insn): Reemit notes for SCHED_GROUP_P
5464 insns too.
5465 (schedule_block): When adjusting basic_block_{head,end}, account
5466 for movement of SCHED_GROUP_P insns too.
5467
5468 * haifa-sched.c (debug_dependencies): Fix thinko.
5469
5470 * Makefile.in (EXPECT, RUNTEST, RUNTESTFLAGS): Define.
5471 (site.exp, check, check-g++, check-gcc): New targets.
5472
5473 * haifa-sched.c: Make lots of variables static.
5474
5475 Tue Aug 19 07:18:34 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
5476
5477 * expr.h, real.h: Finish prototyping.
5478
5479 Mon Aug 18 21:49:02 1997 Jim Wilson <wilson@cygnus.com>
5480
5481 * reload.c (find_reloads): Add code to convert RELOAD_FOR_OPADDR_ADDR
5482 reloads to RELOAD_FOR_OPERAND_ADDRESS reloads.
5483 * reload1.c: Undo bugfix from Aug 11.
5484
5485 Mon Aug 18 17:39:02 1997 Mike Meissner <meissner@cygnus.com>
5486
5487 * configure.in ({powerpc,rs6000}*-*-*, --with-cpu): Remove single
5488 quotes around the name.
5489 * configure: Regenerate.
5490
5491 Mon Aug 18 13:46:47 1997 Jim Wilson <wilson@cygnus.com>
5492
5493 * Makefile.in (stmp-multilib-sub): Fix typo in last change.
5494
5495 Thu Aug 7 10:33:13 1997 Manfred Hollstein <manfred@s-direktnet.de>
5496
5497 * Makefile.in (sub-makes): Pass the current value of LANGUAGES down
5498 to sub-makes to avoid building more passes than the user might have
5499 requested on the command line.
5500
5501 Sun Aug 17 15:42:17 1997 Dave Love (d.love@dl.ac.uk)
5502
5503 * configure.in: Expurgate `broken_install' (install is
5504 autoconfed).
5505
5506 * configure.lang: Substitute autoconfed ${INSTALL} (not currently
5507 relevant).
5508
5509 Sat Aug 16 01:08:12 1997 Jeffrey A Law (law@cygnus.com)
5510
5511 * loop.c (is_power_of_2, is_conditional_branch): Delete unused
5512 functions and declarations.
5513 (analyze_loop_iterations): Use condjump_p.
5514 (insert_bct): Likewise. Use exact_log2.
5515
5516 Fri Aug 15 23:48:32 1997 Jeffrey A Law (law@cygnus.com)
5517
5518 * haifa-sched.c (find_post_sched_live): Call FREE_REG_SET as needed.
5519 (schedule_region): Likewise.
5520 (schedule_insns): Likewise.
5521
5522 * PROJECTS: Update with Haifa stuff.
5523
5524 Fri Aug 15 12:49:56 1997 Jeffrey A Law (law@cygnus.com)
5525
5526 * version.c: Change the version string to look like:
5527 egcs-2.90.00 970814 (gcc2-970802 experimental).
5528
5529 * loop.c (is_conditional_branch): Make definition match declaration.
5530
5531 * gcc.c: Take out experimental snapshot warning message.
5532
5533 Fri Aug 15 13:43:39 1997 Michael Meissner <meissner@cygnus.com>
5534
5535 * haifa-sched.c (debug_dependencies): Use GET_NOTE_INSN_NAME to
5536 print out the names of the notes. Print out the name of the insn
5537 that is not a note, and not an {,CALL_,JUMP_}INSN.
5538
5539 Wed Aug 13 17:32:38 1997 Jason Merrill <jason@yorick.cygnus.com>
5540
5541 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
5542 again for the slot after we give it RTL.
5543
5544 Wed Aug 13 01:03:37 1997 Doug Evans <dje@canuck.cygnus.com>
5545
5546 * configure.in (haifa configury): Fix typo.
5547 * configure: Regenerate.
5548
5549 Tue Aug 12 10:20:36 1997 Jeffrey A Law (law@cygnus.com)
5550
5551 * version.c: Bump version to "gcc-3.0.0 970802 experimental".
5552
5553 * gcc.info*: Rebuilt.
5554
5555 * COPYING.g77, README.g77: New files.
5556 * real.c (ereal_unto_float, ereal_unto_double): New functions.
5557 * real.h (ereal_unto_float, ereal_unto_double): Declare them.
5558 (REAL_VALUE_UNTO_TARGET_DOUBLE, REAL_VALUE_UNTO_TARGET_SINGLE): Define.
5559
5560 Mon Aug 11 14:50:55 1997 Jeffrey A Law (law@cygnus.com)
5561
5562 * Integrate Haifa instruction scheduler.
5563 * Makefile.in (ALL_CFLAGS): Add SCHED_CFLAGS. Prefix all references
5564 to sched with $(SCHED_CFLAGS.
5565 * configure.in: Handle --enable-haifa.
5566 * configure: Rebuilt.
5567 * flags.h: Add new flags for haifa instruction scheduler.
5568 * genattrtab.c (expand_units): For haifa, don't subtract one
5569 when computing blockage.
5570 * toplev.h (flag_schedule_interblock): Haifa scheduler flag.
5571 (flag_schedule_speculative): Ditto.
5572 (flag_schedule_speculative_load): Ditto.
5573 (flag_schedule_speculative_load_dangerous): Ditto.
5574 (flag_schedule_reverse_before_reload): Ditto.
5575 (flag_schedule_reverse_after_reload): Ditto.
5576 (flag_branch_on_count_reg): Ditto.
5577 (f_options): Add Haifa switches.
5578 (main): Turn off some Haifa options if appropriate macro is
5579 defined. Process Haifa switches.
5580 * unroll.c (iteration_info): No longer static, since Haifa
5581 scheduler uses it.
5582 (unroll_loop): Inform HAIFA scheduler about loop unrolling factor.
5583 * unroll.c (unroll_loop): Set loop_unroll_iter, loop_start_value.
5584 * loop.h (loop_unroll_factor, loop_number): Add HAIFA decls.
5585 * loop.h (loop_initial_value,loop_unroll_iter): New globals.
5586 * loop.c (loop_optimize): If HAIFA is defined, allocate additional
5587 storage for the Haifa scheduler.
5588 (mark_loop_jump): If HAIFA defined, set LABEL_OUTSIDE_LOOP_P and
5589 LABEL_NEXTREF.
5590 (strength_reduce): If HAIFA and HAVE_decrement_and_branch_on_count
5591 are defined, call analyze_loop_iterations and insert_bct to use
5592 countdown loops.
5593 (record_giv): Refine test for jumps out of loops if HAIFA is
5594 defined.
5595 (analyze_loop_iterations): New function to identify if we can use
5596 a countdown loop.
5597 (insert_bct): Insert countdown loop.
5598 (instrument_loop_bct): Low level code to insert countdown loop.
5599 (loop_number): Calculate UID of loop.
5600 (indirect_jump_in_function_p): Return true if an indirect jump is
5601 in the function.
5602 (is_power_of_2): Return true if value is a power of 2.
5603 (is_conditional_branch): Return true if insn is a conditional
5604 jump.
5605 (fix_bct_param): Process -fbct-{min,max}-N switches.
5606 (check_bct_param): Return true if loop should be instrumented.
5607 * loop.c (loop_initial_value,loop_unroll_iter): New globals.
5608 (loop_optimize): Initialize.
5609 (get_condition_for_loop): Ditto.
5610 * loop.c (strength_reduce): Inside of code that uses #ifdef
5611 HAVE_decrement_and_branch_on_count code, test it to make sure the
5612 condition is true.
5613 (instrument_loop_bct): Ditto.
5614 * haifa-sched.c: New file.
5615
5616
5617 * Integrate regmove pass.
5618 * Makefile.in (OBJS): Add regmove.o
5619 (regmove.o): Add dependencies.
5620 * flow.c (find_use_as_address): No longer static.
5621 * rtl.h (find_use_as_address): Declare.
5622 * toplev.c (regmove_dump, flag_regmove): Define.
5623 (f_options): Add -fregmove.
5624 (regmove_dump_file, regmove_time): Define.
5625 (fatal_insn): Close the regmove dump file.
5626 (compile_file): Initialize regmove_time; open/close the regmove dump
5627 file as needed. Print regmove time as needed.
5628 (rest_of_compilation): Run regmove pass if requested, dump
5629 RTL after regmove if requested.
5630 (main): If -O2 or more, turn on regmove. Handle dump switches.
5631 * regmove.c: New file.
5632
5633 Mon Aug 11 14:15:02 1997 Jeffrey A Law (law@cygnus.com)
5634
5635 * Integrate tlink patch from jason@cygnus.com
5636 * gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
5637 (process_command): Increment n_switches for them. Don't discard
5638 their args. Validate them.
5639 (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
5640 From Rohan Lenard.
5641 (process_command): Set include_prefixes from COMPILER_PATH.
5642 (main): Set COLLECT_GCC_OPTIONS sooner.
5643 * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
5644 * tlink.c, hash.c, hash.h: New files.
5645 * Makefile.in (USE_COLLECT2): Always use collect2.
5646 (collect2): Depend on and link in hash.o and tlink.o.
5647 (tlink.o, hash.o): Add dependencies.
5648
5649 Mon Aug 11 10:04:49 1997 Jeffrey A Law (law@cygnus.com)
5650
5651 * Integrate alias analysis changes from jfc@mit.edu
5652 * Makefile.in (OBJS): Add alias.o
5653 (alias.o): Add dependencies.
5654 * alias.c: New file.
5655 * sched.c: Remove alias analysis code. It lives in alias.c now.
5656 (sched_analyze_2): Add new arguments to true_dependence.
5657 (schedule_insns): Always call init_alias_analysis.
5658 * calls.c (expand_call): Note calls to malloc, calloc, and realloc;
5659 mark return value from such functions as a pointer and keep track of
5660 them for alias analysis. If a return value from a function is a
5661 pointer, mark it as such.
5662 * combine.c (distribute_notes): Handle REG_NOALIAS.
5663 * cse.c (struct write_data): Delete. No longer needed.
5664 (invalidate): Don't call set_nonvarying_address_components anymore.
5665 Use true_dependence to decide if an entry should be removed from
5666 the hash table.
5667 (invalidate_memory): Remove WRITES argument, simplify appropriately.
5668 Fix all callers.
5669 (note_mem_written): Similarly for WRITE_PTR argument.
5670 (invalidate_from_clobbers): Similarly for W argument.
5671 (invalidate_for_call): Remove memory elements from the hash table.
5672 (refers_to_mem_p, cse_rtx_addr_varies_p): Deleted.
5673 (cse_rtx_varies_p): New function. Derived from old
5674 cse_rtx_addr_varies_p.
5675 (cse_insn): Remove WRITES_MEMORY and INIT variables and all references.
5676 Don't call note_mem_written anymore. Stack pushes invalidate the stack
5677 pointer if PUSH_ROUNDING is defined. No longer need to call
5678 cse_rtx_addr_varies_p to decide if a MEM should be invalidated.
5679 (skipped_writes_memory): Remove variable.
5680 (invalidate_skipped_set): Simplify and wewrite to use invalidate_memory.
5681 (invalidate_skipped_block): Simplify for new alias analysis code.
5682 (cse_set_around_loop): Likewise.
5683 (cse_main): Call init_alias_analysis.
5684 * flags.h (flag_alias_check, flag_argument_noalias): Declare.
5685 * toplev.c (flag_alias_check, flag_argument_noalias): Define.
5686 (f_options): Add new alias checking arguments.
5687 (main): Set flag_alias_check when optimizing.
5688 * local_alloc (validate_equiv_mem_from_store): Add new arguments
5689 to true_dependence.
5690 (memref_referenced_p): Likewise.
5691 * loop.c (NUM_STORES): Increase to 30.
5692 (prescan_loop): Only non-constant calls set unknown_address_altered.
5693 (invariant_p): Add new arguments to true_dependence.
5694 (record_giv): Initialize unrolled and shared fields.
5695 (emit_iv_add_mult): Call record_base_value as needed.
5696 * loop.h (struct induction): Add unrolled and shared fields.
5697 * unroll.c (unroll_loop): Call record_base_value as needed.
5698 (copy_loop_body): Likewise.
5699 (final_biv_value): Likewise.
5700 (final_giv_value): Likewise.
5701 (find_splittable_regs): Likewise. Only create one new pseudo
5702 if we have multiple address GIVs that were combined with the same
5703 dst_reg GIV. Note when a new register is created due to unrolling.
5704 * rtl.c (reg_note_name): Add REG_NOALIAS.
5705 * rtl.h (enum reg_note): Similarly.
5706 (rtx_varies_p, may_trap_p, side_effects_p): Declare.
5707 (volatile_refs_p, volatile_insn_p, remove_note): Likewise.
5708 (note_stores, refers_to_regno_p, reg_overlap_mentioned_p): Likewise.
5709 (true_dependence, read_dependence, anti_dependence): Likewise.
5710 (output_dependence, init_alias_analysis, end_alias_analysis): Likewise.
5711 (mark_user_reg, mark_reg_pointer): Likewise.
5712
5713
5714 * Integrate reload bugfix from Wilon which enables the PA port
5715 to bootstrap again.
5716 * reload1.c (reload): Sum needs for both OPADDR_ADDR and and
5717 OPERAND_ADDRESS when computing how many registers an insn needs.
5718 (reload_reg_free_p): OPADDR_ADDR and OPERAND_ADDRESS reloads do
5719 conflict.
5720 (reload_reg_free_before_p): Treat OPERAND_ADDRESS reloads just like
5721 OPADDR_ADDR reload.
5722 (reload_reg_reaches_end_p): For RELOAD_FOR_OPADDR_ADDR insns, registers
5723 in reload_reg_use_in_op_addr do not reach the end.
5724 do not reach the end.
5725 (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
5726 RELOAD_FOR_OPERAND_ADDRESS.
5727
5728 Sun Aug 10 12:00:20 1997 Jeffrey A Law (law@cygnus.com)
5729
5730 * egcs project officially starts.
5731
This page took 0.288131 seconds and 6 git commands to generate.