]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ChangeLog
configure.in (extra_c_objs): add prefix.o.
[thirdparty/gcc.git] / gcc / ChangeLog
CommitLineData
c8724862
DB
1Thu May 21 11:51:15 1998 Dave Brolley <brolley@cygnus.com>
2
3 * configure.in (extra_c_objs): add prefix.o.
4 (extra_cxx_objs): extra objects for C++ with cpplib.
5 * configure: Regenerate.
6
7 * c-tree.h: (get_directive_line): Different prototype for cpplib.
8 (GET_DIRECTIVE_LINE): Macro wrapper for get_directive_line.
9
10 * c-lex.h: (get_directive_line): Not needed here for cpplib.
11
12 * c-lex.c: (yy_cur,yy_lim,yy_get_token): Move to c-common.c.
13 (GET_DIRECTIVE_LINE): Move to c-common.c and rename to get_directive_line.
14
15 * c-common.c (parse_in,parse_options,cpp_token): Declare for cpplib.
16 (yy_cur,yy_lim,yy_get_token,get_directive,line): Moved here from c-lex.c
17
fd97443c
KG
18Thu May 21 09:04:42 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
19
20 * gengenrtl.c (type_from_format, accessor_from_format): Change
21 type of parameter `c' from `char' to `int'.
22
0e4347ce
JL
23Wed May 20 22:28:34 1998 Jeffrey A Law (law@cygnus.com)
24
2a3edac9
JL
25 * warn_summary, test_summary: New scripts from
26 Kaveh Ghazi and Alexandre Oliva respectively.
27
0e4347ce
JL
28 * gcse.c (current_function_calls_longjmp): Declare.
29
4e5a8d7b
JM
301998-05-20 Jason Merrill <jason@yorick.cygnus.com>
31
32 * dwarf2out.c (base_type_die): Use int_size_in_bytes.
33
7506f491
DE
34Wed May 20 01:11:02 1998 Doug Evans (devans@cygnus.com)
35 Jeff Law (law@cygnus.com)
36
37 * Global CSE and constant/copy propagation.
38 * Makefile.in (OBJS): Add gcse.o
39 (STAGESTUFF): Add *.gcse.
40 (gcse.o): Add dependencies.
41 (mostlyclean): Remove *.gcse and */*.gcse.
42 * gcse.c: New file.
43 * loop.c (loop_optimize): Move call to init_alias_analysis.
44 * recog.c (validate_replace_src): New function.
45 * toplev.c (gcse_dump): New global variable.
46 (flag_gcse, gcse_time): Likewise.
47 (compile_file): Initialize gcse_time and clean out the gcse dump
48 file if necessary.
49 (rest_of_compilation): Call gcse_main as requested. Dump RTL
50 after gcse if requested.
51 (main): Enable gcse for -O2 and above. Handle -dG. Enable gcse
52 dumps for -da.
53 * gcc.texi: Add gcse related internal documentation.
54 * invoke.texi: Note new command line options for gcse.
55 * tm.texi: Document AVOID_CCMODE_COPIES.
56 * mips.h (AVOID_CCMODE_COPIES): Define.
57
40859b41
JL
58Tue May 19 22:31:20 1998 Jeffrey A Law (law@cygnus.com)
59
60 * Makefile.in (deduced.h): Only run scan-types if $(SYSTEM_HEADER_DIR)
61 exists.
aef1617c 62 (stmp-fixproto): Simlarly for running fixproto.
40859b41
JL
63 * cross-make (SYSTEM_HEADER_DIR): Now $(tooldir)/sys-include.
64
f85c8be7
JW
65Tue May 19 19:08:52 1998 Jim Wilson <wilson@cygnus.com>
66
67 * config/mips/mips.c (double_memory_operand): Accept any MEM during
68 reload when TARGET_64BIT.
69
c7391272
JW
70Tue May 19 18:21:25 1998 Jim Wilson <wilson@cygnus.com>
71
72 Finish incomplete change started by Kenner.
73 * configure.in (*-*-linux-gnu*): Delete NO_STAB_H from xm_defines.
74 (powerpcle-*-cygwin32): Delete xm_defines.
75 * final.c, mips-tfile.c, xcoffout.c, config/mips/mips.c: Use
76 HAVE_STAB_H instead of NO_STAB_H.
77 * config/xm-linux.h (NO_STAB_H): Delete.
78 (HAVE_STAB_H): Undefine.
79 * config/i386/xm-go32.h (NO_STAB_H): Delete.
80
af02da67
JW
811998-05-19 Jim Wilson <wilson@cygnus.com>
82
83 * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Ignore
84 LANG_TYPE trees with DECL_SOURCE_LINE of 0.
85
79edd21c
TV
86Tue May 19 15:07:54 1998 Todd Vierling <tv@netbsd.org>
87
88 * arm/netbsd.h: Ensure DWARF2_UNWIND_INFO is undefined.
89
6e684430
R
90Tue May 19 17:19:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
91
92 * reload1.c (reload_reg_free_for_value_p): New function.
93 (allocate_reload_reg, choose_reload_regs): Use it.
94
7ecb5d27
AM
95Tue May 19 11:51:00 EDT 1998 Andrew MacLeod (amacleod@cygnus.com)
96
97 * except.c (expand_start_catch): Correct logic for when to
98 generate a new handler label, and when to use the old one.
99
487a6e06
KG
100Tue May 19 11:08:52 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
101
102 * Makefile.in (print-rtl.o): Depend on bitmap.h.
103 (dbxout.o): Depend on toplev.h.
104 ($(SCHED_PREFIX)sched.o): Likewise.
105 ($(out_object_file)): Likewise for system.h and toplev.h.
106 (cppmain.o): Depend on gansidecl.h.
107 (cpplib.o): Likewise.
108 (cpperror.o): Likewise.
109 (cppexp.o): Likewise.
110 (cpphash.o): Likewise.
111 (cppalloc.o): Likewise.
112 (fix-header.o): Depend on cpplib.h and cpphash.h.
113 (scan-decls.o): Depend on gansidecl.h.
114
115 * basic-block.h (free_regset_vector): Add prototype.
116
117 * cccp.c (check_precompiled): Mark parameter `fname' with
118 ATTRIBUTE_UNUSED.
119 (do_assert): Likewise for `op' and `keyword'.
120 (do_unassert): Likewise.
121 (do_line): Likewise for `keyword'.
122 (do_error): Likewise for `op' and `keyword'.
123 (do_warning): Likewise.
124 (do_ident): Likewise for `keyword'.
125 (do_pragma): Likewise for `limit', `op' and `keyword'.
126 (do_sccs): Likewise.
127 (do_if): Likewise for `keyword'.
128 (do_elif): Likewise.
129 (do_else): Likewise.
130 (do_endif): Likewise.
131
132 * collect2.c (getenv): Remove redundant prototype.
133 (collect_exit, collect_execute, dump_file): Likewise.
134 (dump_list): Wrap prototype and definition in COLLECT_EXPORT_LIST.
135 (dump_prefix_list): Hide prototype and definition.
136
137 * sparc.c: Include toplev.h.
138 (intreg_operand): Mark parameter `mode' with ATTRIBUTE_UNUSED.
139 (symbolic_memory_operand): Likewise.
140 (sp64_medium_pic_operand): Likewise.
141 (data_segment_operand): Likewise.
142 (text_segment_operand): Likewise.
143 (splittable_symbolic_memory_operand): Likewise.
144 (splittable_immediate_memory_operand): Likewise.
145 (eq_or_neq): Likewise.
146 (normal_comp_operator): Likewise.
147 (noov_compare_op): Likewise.
148 (v9_regcmp_op): Likewise.
149 (v8plus_regcmp_op): Likewise.
150 (extend_op): Likewise.
151 (cc_arithop): Likewise.
152 (cc_arithopn): Likewise.
153 (small_int): Likewise.
154 (uns_small_int): Likewise.
155 (clobbered_register): Likewise.
156 (legitimize_pic_address): Likewise.
157 (delay_operand): Likewise.
158 (sparc_builtin_saveregs): Remove unused variable `stdarg'.
159
160 * sparc.h (order_regs_for_local_alloc, eligible_for_return_delay,
161 sparc_issue_rate, v8plus_regcmp_p): Add prototypes.
162
163 * sparc.md (cmpdi_v8plus): Add abort for default case in switch.
164
165 * cppalloc.c: Include gansidecl.h.
166
167 * cpperror.c: Include stdarg.h/varargs.h and gansidecl.h.
168 (cpp_file_line_for_message): Mark parameter `pfile' with
169 ATTRIBUTE_UNUSED.
170 (v_cpp_message): New function.
171 (cpp_message): Use it. Also convert to variable arguments.
172 (cpp_fatal): Likewise.
173 (cpp_pfatal_with_name): Constify parameter `name'.
174
175 * cppexp.c: Move gansidecl.h before cpplib.h.
176 * cpphash.c: Likewise.
177 * cpphash.h (hashf, delete_macro): Add prototypes.
178
179 * cpplib.c: Include stdarg.h/varargs.h and move gansidecl.h before
180 cpplib.h. Don't include errno.h.
181 (update_path): Add arguments to prototype.
182 (cpp_fatal, cpp_file_line_for_message, cpp_message, delete_macro,
183 cpp_print_containing_files): Remove redundant prototypes.
184 (cpp_hash_cleanup, add_import, append_include_chain,
185 make_assertion, path_include, initialize_builtins,
186 initialize_char_syntax, finclude, validate_else, comp_def_part,
187 lookup_import, redundant_include_p, is_system_include,
188 read_name_map, read_filename_string, open_include_file,
189 check_macro_name, compare_defs, compare_token_lists,
190 eval_if_expression, change_newlines): Add prototype arguments.
191 (hashf): Remove redundant prototype.
192 (read_token_list, free_token_list, safe_read, xcalloc, savestring,
193 conditional_skip, skip_if_group): Add prototype arguments.
194 (fdopen): Remove redundant prototype.
195 (do_define, do_line, do_include, do_undef, do_error, do_pragma,
196 do_ident, do_if, do_xifdef, do_else, do_elif, do_endif, do_sccs,
197 do_once, do_assert, do_unassert, do_warning): Add prototype arguments.
198 (struct directive): Add prototype arguments to function pointer
199 member `func'.
200 (handle_directive): Add missing arguments to call to `do_line'.
201 (do_include): Mark parameters `unused1' and `unused2' with
202 ATTRIBUTE_UNUSED.
203 (do_line): Likewise for `keyword' and new parameters `unused1' and
204 `unused2'.
205 (do_error): Likewise for `keyword'.
206 (do_warning): Likewise. Also add missing argument `pfile' in call
207 to cpp_pedwarn.
208 (do_once): Mark parameter `keyword', `unused1' and `unused2' with
209 ATTRIBUTE_UNUSED.
210 (do_ident): Likewise for `keyword', `buf' and `limit'.
211 (do_pragma): Likewise. Also add missing arguments in call to do_once.
212 (do_sccs): Mark parameter `keyword', `buf' and `limit' with
213 ATTRIBUTE_UNUSED.
214 (do_if): Likewise for `keyword'.
215 (do_elif): Likewise.
216 (eval_if_expression): Likewise for `buf' and `length'.
217 (do_xifdef): Likewise for `unused1' and `unused2'.
218 (do_else): Likewise for `keyword', `buf' and `limit'.
219 (do_endif): Likewise.
220 (parse_name): Add missing argument `pfile' in call to cpp_pedwarn.
221 (cpp_handle_options): Remove superfluous NULL argument in call to
222 cpp_fatal.
223 (cpp_handle_options): Likewise.
224 (do_assert): Mark parameter `keyword', `buf' and `limit' with
225 ATTRIBUTE_UNUSED.
226 (do_unassert): Likewise.
227 (cpp_print_file_and_line): Add missing argument `pfile' in call to
228 cpp_file_line_for_message.
229 (v_cpp_error): New function.
230 (cpp_error): Use it. Also accept variable arguments.
231 (v_cpp_warning): New function.
232 (cpp_warning): Use it. Also accept variable arguments.
233 (cpp_pedwarn): Accept variable arguments.
234 (v_cpp_error_with_line): New function
235 (cpp_error_with_line): Use it. Accept variable arguments.
236 (v_cpp_warning_with_line): New function.
237 (cpp_warning_with_line): Use it. Accept variable arguments. Hide
238 definition.
239 (cpp_pedwarn_with_line): Accept variable arguments.
240 (cpp_pedwarn_with_file_and_line): Likewise.
241 (cpp_error_from_errno): Constify parameter `name'. Add missing
242 argument `pfile' in call to cpp_file_line_for_message.
243 (cpp_perror_with_name): Constify parameter `name'.
244
245 * cpplib.h: Define PARAMS() in terms of PROTO().
246 (fatal): Remove redundant prototype.
247 (cpp_error, cpp_warning, cpp_pedwarn, cpp_error_with_line,
248 cpp_pedwarn_with_line, cpp_pedwarn_with_file_and_line,
249 cpp_error_from_errno, cpp_perror_with_name, cpp_pfatal_with_name,
250 cpp_fatal, cpp_message, cpp_pfatal_with_name,
251 cpp_file_line_for_message, cpp_print_containing_files): Add
252 arguments to prototypes.
253 (scan_decls, cpp_finish): Add prototypes.
254
255 * cppmain.c: Include gansidecl.h.
256 (main): Remove unused variable `i'.
257
258 * dbxout.c: Include toplev.h.
259
260 * demangle.h (do_tlink, collect_execute, collect_exit,
261 collect_wait, dump_file, file_exists): Add prototype.
262
263 * dwarf2out.c (dwarf_type_encoding_name, decl_start_label): Hide
264 prototype and definition.
265 (gen_unspecified_parameters_die): Don't assign results of call to
266 function new_die() to unused variable `parm_die'.
267 (dwarf2out_line): Mark parameter `filename' with ATTRIBUTE_UNUSED.
268 (dwarf2out_define): Likewise for `lineno' and `buffer'.
269
270 * dwarfout.c (output_unsigned_leb128, output_signed_leb128): Hide
271 prototype and definition.
272 (output_die): Add prototype arguments to function pointer arg.
273 (output_unspecified_parameters_die): Mark parameter `arg' with
274 ATTRIBUTE_UNUSED.
275
276 * except.c (output_exception_table_entry): Remove unused variable
277 `eh_entry'.
278
279 * except.h (expand_fixup_region_start, expand_fixup_region_end):
280 Add prototypes.
281
282 * expr.c (do_jump_by_parts_equality_rtx): Remove prototype.
283
284 * expr.h (do_jump_by_parts_equality_rtx): Add prototype.
285
286 * fix-header.c: Include stdarg.h/varargs.h, move gansidecl.h
287 before cpplib.h, include cpphash.h, remove redundant prototype of
288 cpp_fatal, don't define `const', add a prototype for `fatal'.
289 (cpp_file_line_for_message): Add missing arguments `pfile'.
290 (v_cpp_message): New function.
291 (cpp_message): Use it.
292 (v_fatal): New function.
293 (fatal, cpp_fatal): Use it.
294 (cpp_pfatal_with_name): Constify parameter `name'.
295
296 * flow.c (free_regset_vector): Remove redundant prototype.
297
298 * function.c (round_down): Wrap prototype and definition with
299 macro ARGS_GROW_DOWNWARD.
300 (record_insns): Wrap prototype and definition with
301 defined (HAVE_prologue) || defined (HAVE_epilogue).
302
303 * gansidecl.h (ATTRIBUTE_PRINTF_4, ATTRIBUTE_PRINTF_5): New macros.
304
305 * gen-protos.c: Include gansidecl.h.
306 (hashf): Don't make it static, constify parameter `name'.
307
308 * genattrtab.c (check_attr_test): Change XEXP() to XSTR() to match
309 specifier %s in calls to function `fatal'.
310
311 * haifa-sched.c: Include toplev.h.
312 (find_rgns): Remove unused variable `j'.
313
314 * integrate.c (note_modified_parmregs): Mark parameter `x' with
315 ATTRIBUTE_UNUSED.
316 (mark_stores): Likewise.
317
318 * jump.c (mark_modified_reg): Likewise.
319
320 * output.h (insn_current_reference_address): Add prototype.
321 (eh_frame_section): Likewise.
322
323 * print-rtl.c: Include bitmap.h.
324
325 * reload1.c (reload): Wrap variables `note' and `next' in macro
326 PRESERVE_DEATH_INFO_REGNO_P.
327 (forget_old_reloads_1): Mark parameter `ignored' with
328 ATTRIBUTE_UNUSED.
329 (choose_reload_regs): Remove unused variable `in'.
330 (reload_cse_invalidate_mem): Mark parameter `ignore' with
331 ATTRIBUTE_UNUSED.
332 (reload_cse_check_clobber): Likewise.
333
334 * rtl.h (expand_null_return, reg_classes_intersect_p): Add prototype.
335 (mark_elimination): Fix typo in prototype.
336
337 * scan-decls.c: Include gansidecl.h.
338
339 * tree.h (using_eh_for_cleanups, supports_one_only): Add prototype.
340
c7fdfd49
JL
341Mon May 18 22:37:33 1998 Jeffrey A Law (law@cygnus.com)
342
343 * function.c (identify_blocks): Fix thinko when setting the
344 block number for NOTE_INSN_BLOCK_END.
345
53f2d033
NC
346Mon May 18 15:30:42 1998 Nick Clifton <nickc@cygnus.com>
347
f122eb7a
NC
348 * config/v850/lib1funcs.asm: Add .text pseudo op to start of
349 ___udivsi3.
350
351 * config/v850/lib1funcs.asm: Fix .size pseudo ops to use three
352 underscores for the prefixes to the names of the maths functions.
353
53f2d033
NC
354 * dbxout.c (dbxout_parms): Revert to using DECL_ARG_TYPE. Add
355 comment explaining why.
356
ead17059
RH
357Mon May 18 13:20:23 1998 Richard Henderson <rth@cygnus.com>
358
359 * tree.h (TYPE_SIZE_UNIT): New.
360 (struct tree_type): Add size_unit member.
361 * stor-layout.c (layout_type): Initialize it.
362 * expr.c (get_inner_reference) [ARRAY_REF]: Use it.
363 * tree.c (size_in_bytes, int_size_in_bytes): Likewise.
364
069b95ce
RE
365Mon May 18 12:07:37 1998 Richard Earnshaw (rearnsha@arm.com)
366
367 * stor-layout.c (layout_record): Fix off-by-one error when checking
368 length of the TYPE_BINFO vector.
369
972a4adb
NC
370Mon May 18 10:59:23 1998 Nick Clifton <nickc@cygnus.com>
371
372 * dbxout.c (dbxout_parms): Use TREE_ARG to compute the type of a
373 function parameter passed in memory.
374
76ead72b
RL
375Mon May 18 09:02:09 1998 Robert Lipe <robertl@dgii.com>
376
377 * dwarfout.h, dwarf2out.h, dbxout.h, sdbout.h: New files.
378 Prototypes for externally used functions in respective C files.
379 * dwarfout.c, dbxout.c, dwarf2out.c, sdbout.c, toplev,c,
380 final.c: Include above files.
381 * Makefile.in (toplev.o): Add dependency for above four headers.
382 (final.o): Likewise.
383 (dwarfout.o, dbxout.o, dwarf2out.o, sdbout.o): Depend on four
384 respective header files.
385
b0ccd8de
JL
386Mon May 18 01:23:33 1998 Jeffrey A Law (law@cygnus.com)
387
7e717196
JL
388 * Makefile.in (TARGET_TOOLPREFIX): No longer define.
389 (AR_FOR_TARGET, RANLIB_FOR_TARGET): Define to use versions in
390 the build tree if they exist.
391 (AR, AR_FLAGS, OLDAR, OLDAR_FLAGS, RANLIB, RANLIB_TEST): Update
392 appropriately.
393 (objdir): Let configure substitute value.
394 (FLOAT_H): Let configure select a pre-built version from the
395 config subdir.
396 * build-make (INSTALL_TARGET, ALL): Disable, no longer needed.
397 * configure.in: Substitute for objdir.
398
88111b26
JL
399 * Makefile.in (build_canonical, host_canonical): Let configure
400 substitute values for these variables.
401 * configure.in: Substitute for build_canonical, host_canonical
402 and target_subdir in generated Makefile.
403
d8af60bf
JL
404 * output.h (find_basic_blocks): Declare.
405 (free_basic_block_vars, set_block_num, life_analysis): Likewise.
406
b0ccd8de
JL
407 * Makefile.in (BISON): Use bison from the build tree if it exists.
408 (FLEX): Similarly.
409
88117d44
NC
410Mon May 18 00:08:19 1998 Nick Clifton <nickc@cygnus.com>
411
412 * gcc.c (SWITCH_CURTAILS_COMPILATION): Definition.
413 (DEFAULT_SWITCH_CURTAILS_COMPILATION): True for options -S and -c.
414 (process_command): If HAVE_EXECUTABLE_SUFFIX is defined then scan
415 command line arguments to see if an executable is not being
416 created, and if so - do not append the suffix.
417
418 * tm.texi (SWITCH_CURTAILS_COMPILATION): Add description of new
419 driver macro.
420
e5e8a8bf
JW
421Sun May 17 23:59:45 1998 John Wehle (john@feith.com)
422
423 * i386.h (ALIGN_DFmode): Delete.
424 (CONSTANT_ALIGNMENT): Define.
425 * varasm.c (force_const_mem): Use it.
426
b771b6b4
RH
427Sun May 17 19:31:05 1998 Richard Henderson <rth@cygnus.com>
428
429 * alpha.c (alpha_emit_conditional_branch): Clear cmp_code after
430 using it with swap_condition, not before.
431
0211b6ab
JW
432Sun May 17 13:44:32 1998 Jim Wilson <wilson@cygnus.com>
433
434 * alias.c (mode_alias_check): Delete.
435 (true_dependence, anti_dependence, output_dependence): Revert April 21
436 change.
437
c5991f68
KW
438Sun May 17 08:45:21 1998 Krister Walfridsson <cato@df.lth.se>
439
3fe4d12a 440 * toplev.c (output_lang_identify): Enable prototype and definition.
c5991f68 441
18f315a4
JL
442Sun May 17 01:12:27 PDT 1998 Jeff Law (law@cygnus.com)
443
444 * version.c: Bump for snapshot.
445
2a831d01
RH
446Sat May 16 23:20:32 1998 Richard Henderson <rth@cygnus.com>
447
448 * alpha/osf.h (HAVE_STAMP_H): Define.
449 * alpha.c: Use it.
450 * alpha/netbsd.h, alpha/netbsd-elf.h: New files.
451 * configure.in (alpha*-*-netbsd*): New.
452 Based on patches from Paul H. Anderson <pha@pdq.com>.
453
454 * configure.in (alpha*-*-linux-*): Kill xm_defines.
455 (alpha*-*-linux-gnulibc1*) [fixincludes]: Define.
456 * alpha/xm-linux.h: Remove file.
457
620422fd
DE
458Sat May 16 18:32:45 1998 Doug Evans <devans@canuck.cygnus.com>
459
460 * dbxout.c (dbxout_parms): If mode of type of parameter living
461 in memory doesn't match mode of DECL_RTL, make big endian correction.
462
d2f2cb19
JW
463Fri May 15 21:40:06 1998 John Wehle (john@feith.com)
464
465 * i386.md (movdi-1, movdi): Rewrite based on SI move patterns.
466
bbc0e641
JM
467Fri May 15 18:55:22 1998 Jason Merrill <jason@yorick.cygnus.com>
468
469 * tree.h (BINFO_SIZE, TYPE_BINFO_SIZE): New macros.
470 * stor-layout.c (layout_record): Set it.
471
472Fri May 15 18:49:30 1998 Mark Mitchell <mmitchell@usa.net>
473
474 * toplev.c (rest_of_compilation): Don't defer nested functions.
475
92834d7d
BM
476Fri May 15 17:42:52 1998 Bob Manson <manson@charmed.cygnus.com>
477
478 * config/rs6000/rs6000.c (rs6000_stack_info): Align the stack bottom
479 to an 8-byte boundary if info_ptr->fpmem_p.
480
829002bb
BM
481Fri May 15 17:36:11 1998 Bill Moyer <ttk@cygnus.com>
482
483 * loop.c (basic_induction_var): Added test preventing
484 CCmode parameter passed to convert_modes().
485
b24f65cd
APB
486Fri May 15 17:26:18 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
487
488 * expr.c (expand_expr, case EXPR_WITH_FILE_LOCATION): Save/restore
489 input_filename and lineno around expand_expr call. Set them to values
490 in WFL before expand_expr call.
491
b09293cc
BK
492Fri May 15 12:44:57 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
493
494 * stor-layout.c (set_sizetype): Set TYPE_NAME on bitsizetype.
495
f628873f
MM
496Fri May 15 07:20:03 1998 Mark Mitchell <mmitchell@usa.net>
497
498 * fold-const.c (constant_boolean_node): New function.
499 (fold): Use it.
500
61fb6bac
R
501Fri May 15 11:21:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
502
503 * sh.c (gen_shl_and): Don't sign extend constant for kind two.
504 Abort if trying to split kind 3 or 4 outside of combine.
505
8f9661dd
JL
506Fri May 15 01:47:37 1998 Jeffrey A Law (law@cygnus.com)
507
508 * mips.c (print_operand, case 'x'): Use HOST_WIDE_INT_PRINT_HEX.
509
b22284e1
MK
510Fri May 15 01:42:45 1998 Mumit Khan <khan@xraylith.wisc.edu>
511
512 * objc/Make-lang.in (OBJC_O): Add missing exeext.
513 (libobjc.a, runtime-info.h): Likewise.
514
8a022443
JW
515Fri May 15 01:29:39 1998 John Wehle (john@feith.com)
516
517 * i386.h (DATA_ALIGNMENT): Define.
518
aa6498c2
R
519Fri May 15 05:35:37 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
520
521 * reload1.c (delete_output_reload): Ignore single USE that
522 was emitted for the pseudo use of this INSN.
523 If the no reference to REG between OUTPUT_RELOAD_INSN and INSN
524 remains, we can always delete OUTPUT_RELOAD_INSN.
525
41372177
JW
526Thu May 14 18:38:50 1998 Jim Wilson <wilson@cygnus.com>
527
528 * reload.c (find_reloads): Don't penalize SCRATCH output reload.
529
ddc5654a
JL
530Thu May 14 15:10:30 1998 Jeffrey A Law (law@cygnus.com)
531
532 * Makefile.in (expr.o): Remove dependency on deleted modemap.def file.
533
9a0d1e1b
AM
534Thu May 14 16:30:47 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
535
536 * eh-common.h: New file for basic EH data structures.
537 * except.h: Various prototypes and structures for NEW_EH_MODEL
538 * function.h (struct function): Add a struct eh_stack for the catch
539 clause stack.
540 * except.c (gen_exception_label): New function to generate an
541 exception label.
542 (push_eh_entry): Use gen_exception_label() and init 'label_used' field.
543 (push_entry): New function to push an existing entry onto a stack.
544 (receive_exception_label): New function to emit the code required
545 at the start of all catch blocks.
546 (struct func_eh_entry): New structure for maintaining handlers
547 associated with EH regions.
548 (new_eh_region_entry): New function to register an EH region.
549 (add_new_handler): New function to register a handler with a region.
550 (get_new_handler): Creates anew handler entry for registering.
551 (find_func_region): New function to convert a NOTE eh region number
552 to an Eh region index.
553 (get_first_handler): New function to get the first handler in a region.
554 (clear_function_eh_region): New function to release memory.
555 (duplicate_handlers): New function to duplicate a list of handlers.
556 (expand_eh_region_end): Create a new region entry node as well.
557 (expand_leftover_cleanups): Call receive_exception_label() and
558 register the cleanup as a handler to the current region.
559 (expand_start_catch): New function to start a catch clause.
560 (expand_end_catch): New function to end a catch clause.
561 (expand_start_all_catch): restructure to not do the equivilent of
562 what expand_start_catch() does now. Push the exception region being
563 handled onto the catch stack.
564 (output_exception_table_entry): Issue an entry for each handler
565 associated with a region.
566 (set_exception_lang_code): New function for setting the language code.
567 (set_exception_version_code): New function to set the version number.
568 (output_exception_table): Output version and language codes.
569 (find_exception_handler_labels): Find handler labels using new scheme.
570 (is_exception_handler_label): New function, returns 1 if label is
571 present as a handler in some exception region.
572 (check_exception_handler_labels): Use the new scheme.
573 (init_eh_for_function): Initialize the catch stack.
574 (save_eh_status): Save the catch stack.
575 (restore_eh_status): Restore the catch stack.
576 (scan_region): Don't remove unreferenced handler label. Flow does it.
577 (get_reg_for_handler): New function to get the eh_context pointer
578 passed by __throw.
579 (expand_builtin_eh_stub): Changes required for NEW_EH_MODEL only.
580 * final.c (final_scan_insn): With NEW_EH_MODEL, add EH table
581 entry when processing END region rather that START region.
582 * flow.c (find_basic_blocks_1): Find all potential handler regions
583 now that we don't automatically know what the labels might be.
584 Let scan_region() remove unreferenced EH BEGIN/END labels.
585 * integrate.c (get_label_from_map): Put inlined labels onto the
586 permanent obstack since we dont know which ones might be exception
587 labels.
588 (save_for_inline_copying): Make new copies of all the handlers.
589 (expand_inline_function): Make new copies of all the handlers.
590 * libgcc2.c: Remove local struct decls, and include eh-common.h.
591 (find_exception_handler): With NEW_EH_MODEL the first matching
592 region we find is the right one. Add eh_info as a new parameter.
593 (__throw): Pass eh_info to find_exception_handler. Set handler
594 and pass use different regs under NEW_EH_MODEL.
595
2129b081
JW
596Thu May 14 12:58:21 1998 Jim Wilson <wilson@cygnus.com>
597
598 * i960.h (hard_regno_mode_ok): Changed to function from array of
599 unsigned.
600 (HARD_REGNO_MODE_OK): Call function instead of testing bit.
601 * i960.c (hard_regno_mode_ok): Changed to function from array of
602 unsigned.
603
029b38ff
R
604Thu May 14 08:41:46 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
605
606 * reload.c (remove_replacements): New function.
607 * reload.h (remove_replacements): Declare.
608 * reload1.c (choose_reload_regs): Disable some reloads that
609 belong to inherited reloads.
610
efdb3590
R
611Thu May 14 02:17:17 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
612
9dd07f87
R
613 * loop.c (scan_loop): Don't call move_moveables for optimize_size.
614
efdb3590
R
615 * reload1.c (merge_assigned_reloads): When merging, reset
616 reload_spill_index for the eliminated reload.
617
5d27de7d
JL
618Wed May 13 17:51:13 1998 Jeffrey A Law (law@cygnus.com)
619
620 * haifa-sched.c (schedule_insns): Fix merge goof.
621
92d4501f
JW
6221998-05-13 Jim Wilson <wilson@cygnus.com>
623
624 * varasm.c (make_decl_rtl): Revert April 1 change.
625 * alpha/alpha.h, alpha/win-nt.h, arm/arm.h, i386/unix.h, i960/i960.h,
626 m68k/linux.h, pa/pa.h, sparc/sparc.h, vax/vax.h (ASM_OUTPUT_MI_THUNK):
627 Get function name from the SYMBOL_REF in the DECL_RTL, not from
628 DECL_ASSEMBLER_NAME.
629 * i386/winnt.c (gen_stdcall_suffix): Comment for questionable use of
630 DECL_ASSEMBLER_NAME.
631
d6cc54f6
JW
632Wed May 13 13:09:19 1998 Jim Wilson <wilson@cygnus.com>
633
634 * i386.c (notice_update_cc, output_float_compare): Disable
635 TARGET_CMOVE support.
636
6d3352d9 637Wed May 13 15:28:59 1998 Michael Meissner <meissner@cygnus.com>
0dfa1860
MM
638 Jeff Law <law@cygnus.com>
639
ae78d276
MM
640 * rtlanal.c (find_reg_note): Ignore notes that are not on on
641 insns of class 'i'.
642 (find_regno_note): Likewise.
643
82ce5b75
MM
644 * Makefile.in (stor-layout.o): Depend on except.h
645 (varasm.o, function.o): Likewise.
646 (expr.o): Depend on except.h, modemap.def and hard-reg-set.h.
647
0dfa1860
MM
648 * Makefile.in (HOST_RTL): Add $(HOST_PREFIX)bitmap.o.
649 (rtl.o, emit-rtl.o): Add dependency on bitmap.h.
650 ($(HOST_PREFIX_1)rtl.o): Likewise.
651 ($(HOST_PREFIX_1)bitmap.o): New host object.
652 * emit-rtl.c (toplevel): Include bitmap.h.
653 (gen_rtx): Handle 't' and 'b' nodes.
654 * print-rtl.c (print_rtx): Handle printing NOTE_INSN_LIVE notes.
655 Print block number for block begin/end notes. Print 't' type
656 nodes as a pointer. Know that the 3rd argument of live range
657 start/stop notes is really a range_info rtx. If type is 'b', print
658 out argument as a bitmap.
659 * rtl.c: Include bitmap.c.
660 (copy_rtx): Copy tree nodes as is. Copy bitmaps if type is 'b'.
661 (note_insn_name): Add NOTE_INSN_RANGE_{START,END}, NOTE_INSN_LIVE.
662 * rtl.def (RANGE_LIVE): New node to hold live information while we
663 recalculate the basic blocks.
664 (RANGE_REG, RANGE_INFO): New rtl types for live range splitting.
665 (RANGE_VAR): New node, to hold information saved in symbol node for New
666 communicating live range information to the debug output functions.
667 * rtl.h (rtunion_def): Add rttree and rtbit fields.
668 (XBITMAP, XTREE): New accessor macros.
669 (NOTE_LIVE_INFO): Overload NOTE_SOURCE_FILE for NOTE_INSN_LIVE notes.
670 (NOTE_RANGE_INFO): Similarly for NOTE_INSN_RANGE_{START,END} notes.
671 (NOTE_BLOCK_LIVE_RANGE_BLOCK): Define.
672 (NOTE_INSN_RANGE_START, NOTE_INSN_RANGE_END, NOTE_INSN_LIVE): New notes.
673 (RANGE_LIVE_{BITMAP,ORIG_BLOCK}): New accessor macros.
674 (RANGE_REG_{SYMBOL,BLOCK}_NODE, RANGE_VAR_*): New accessor macros.
675 (RANGE_INFO_*): Likewise.
676 * sched.c (sched_analyze): Keep live range start/stop notes.
677 (unlink_other_notes): Likewise.
678 * haifa-sched.c (sched_analyze): Keep live range start/stop notes.
679 (unlink_other_notes): Likewise.
680 * tree.h (BLOCK_LIVE_RANGE_{START,END,VAR_FLAG}): New accessor macros.
681 (BLOCK_LIVE_RANGE_FLAG): Likewise.
682 (DECL_LIVE_RANGE_RTL): Likewise.
683 (struct tree_block): Add live_range_flag, live_range_var_flag,
684 live_range_start and live_range_end.
685 (struct tree_decl): Add live_range_rtl field.
686 * gengenrtl.c (type_from_format): Handle 'b' and 't'.
687 (accessor_from_format): Likewise.
6d3352d9
MM
688
689 * haifa-sched.c (schedule_block): Make verbose output line up.
47312d84 690 Also add a blank line in printing the individual ready lists.
6d3352d9 691
63e76c87
KG
692Wed May 13 15:43:44 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
693
694 * Makefile.in (c-lang.o): Depend on c-tree.h, c-lex.h and toplev.h.
695 (c-lex.o): Depend on output.h.
696 (c-common.o): Likewise.
697 (stmt.o): Likewise.
698 (calls.o): Likewise.
699 (integrate.o): Depend on toplev.h.
700 (regclass.o): Depend on output.h.
701 (final.o): Depend on reload.h.
702
703 * c-common.c: Include output.h.
704 (check_format_info): Remove unused variable `integral_format'.
705
706 * c-decl.c (print_lang_decl): Mark parameters `file', `node' and
707 `indent' with ATTRIBUTE_UNUSED.
708 (print_lang_type): Likewise.
709 (maybe_build_cleanup): Likewise for parameter `decl'.
710 (copy_lang_decl): Likewise for parameter `node'.
711
712 * c-lang.c: Include c-tree.h, c-lex.h and toplev.h.
713 (lang_print_xnode): Mark parameters `file', `node' and `indent'
714 with ATTRIBUTE_UNUSED.
715 (lookup_interface): Likewise for parameter `arg'.
716 (is_class_name): Likewise.
717 (maybe_objc_check_decl): Likewise for parameter `decl'.
718 (maybe_objc_comptypes): Likewise for parameters `lhs', `rhs' and
719 `reflexive'.
720 (maybe_objc_method_name): Likewise for parameter `decl'.
721 (build_objc_string): Likewise for parameters `len' and `str'.
722
723 * c-lex.c: Include output.h.
724
725 * c-lex.h (position_after_white_space): Correct typo in prototype.
726
727 * c-tree.h (finish_file, c_expand_start_cond, c_expand_start_else,
728 c_expand_end_cond, init_iterators): Add prototypes.
729
730 * caller-save.c (set_reg_live): Mark parameters `reg' and `setter'
731 with ATTRIBUTE_UNUSED.
732
733 * calls.c: Include output.h.
734
735 * cccp.c (pipe_closed): Mark parameter `signo' with
736 ATTRIBUTE_UNUSED.
737
738 * combine.c: Move inclusion of expr.h to after insn-config.h.
739
740 * iris6.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Don't define
741 as empty, rather define as ((void)0).
742
743 * sparc.c (sparc_check_64): Add braces around ambiguous `else'.
744 Add parentheses around assignment used as truth value.
745
746 * cplus-dem.c (squangle_mop_up): Change return type to void.
747 (internal_cplus_demangle): Remove unused parameter `options'.
748 All callers changed.
749 (cplus_demangle_opname): Remove function wide variable `int i' and
750 replace with `size_t i' at each location where it is used.
751 (cplus_demangle_opname): change type of `i' from int to size_t.
752
753 * cppexp.c (right_shift): Mark parameter `pfile' with
754 ATTRIBUTE_UNUSED.
755
756 * cpphash.c (cpp_lookup): Likewise.
757 (cpp_hash_cleanup): Likewise.
758
759 * cpplib.c (parse_name): Add a prototype and make it static.
760 (null_underflow): Mark parameter `pfile' with ATTRIBUTE_UNUSED.
761 (null_cleanup): Likewise for parameters `pbuf' and `pfile'.
762 (macro_cleanup): Likewise for parameter `pfile'.
763 (file_cleanup): Likewise.
764
765 * cpplib.h (cpp_reader_init, cpp_options_init, cpp_start_read,
766 cpp_read_check_assertion, skip_rest_of_line): Add prototypes.
767
768 * crtstuff.c (force_to_data, __CTOR_LIST__, force_to_data,
769 __DTOR_END__, __FRAME_END__): Mark with ATTRIBUTE_UNUSED.
770
771 * cse.c (cse_check_loop_start): Mark parameter `set' with
772 ATTRIBUTE_UNUSED.
773
774 * dbxout.c (flag_minimal_debug, have_used_extensions,
775 source_label_number): Move inside macro wrapper check against
776 defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO).
777
778 * dwarf2out.c (gen_entry_point_die): Hide prototype and definition.
779
780 * except.h (doing_eh): Provide prototype.
781
782 * expr.c: Move inclusion of expr.h to after insn-config.h.
783
784 * final.c: Include reload.h.
785 (shorten_branches): Cast the first argument of bzero to char *.
786
787 * fix-header.c (cpp_print_containing_files): Mark parameter
788 `pfile' with ATTRIBUTE_UNUSED.
789 (cpp_fatal): Likewise.
790
791 * flow.c (find_basic_blocks_1): Cast the first argument of bzero
792 to char *.
793
794 * genattrtab.c (make_length_attrs): Change the type of variable
795 `i' from int to size_t.
796 (zero_fn): Mark parameter `exp' with ATTRIBUTE_UNUSED.
797 (one_fn): Likewise.
798
799 * genextract.c (main): When generating insn-extract.c, mark
800 variable `junk' with ATTRIBUTE_UNUSED.
801
802 * gengenrtl.c (gencode): When generating genrtl.c, cast the first
803 argument of bzero to char*.
804
805 * integrate.c: Include toplev.h.
806
807 * libgcc2.c: Wrap `struct exception_table' and
808 `find_exception_handler' in macro DWARF2_UNWIND_INFO.
809
810 * objc/Make-lang.in (objc-act.o): Depend on toplev.h.
811
812 * objc/objc-act.c: Include toplev.h.
813 (lang_print_xnode): Mark parameters `file', `node' and `indent'
814 with ATTRIBUTE_UNUSED.
815 (finish_protocol): Likewise for parameter `protocol'.
816
817 * output.h (declare_weak): Add prototype.
818 (decode_reg_name): Don't wrap with TREE_CODE macro.
819 (assemble_alias): Add prototype.
820
821 * regclass.c: Include output.h.
822
823 * reload.h (reloads_conflict): Add prototype.
824
825 * rtl.h (print_rtl_single, mark_elimiation, reg_class_subset_p,
826 output_func_start_profiler): Add prototypes.
827
828 * rtlanal.c (reg_set_p_1): Mark parameters `x' and `pat' with
829 ATTRIBUTE_UNUSED.
830
831 * scan-decls.c: Include scan.h.
832
833 * scan.h (recognized_function, recognized_extern): Add prototypes.
834
835 * stmt.c: Include output.h.
836
837 * toplev.c (error_for_asm, warning_for_asm): Remove prototypes.
838 (output_lang_identify): Hide prototype and definition.
839 (float_signal): Mark parameter `signo' with ATTRIBUTE_UNUSED.
840 (pipe_closed): Likewise.
841
842 * toplev.h (count_error, strip_off_ending, error_for_asm,
843 warning_for_asm): Add prototypes.
844
a494747c 845Wed May 13 12:54:19 1998 Michael Meissner <meissner@cygnus.com>
a494747c 846
32e705c4
MM
847 * toplev.c (rest_of_compilation): "Charge" final for any time
848 doing various cleanup operations after finishing compilation
849 of a function.
850
6fc4610b
MM
851 * flow.c (dump_flow_info): Also print number of sets and
852 whether or not the pseudo is a user variable.
853
a494747c
MM
854 * flow.c (reg_n_max): New global variable.
855 * regclass.c (allocate_reg_info): Keep reg_n_max up to date.
856 Delete regno_max variable.
857 * regs.h (REG_N_CHECK): Define.
858 (REG_N_REFS, REG_N_SETS, REG_N_DEATHS): Use REG_N_CHECK.
859 (REG_N_CHANGES_SIZE, REG_N_CALLS_CROSSED, REG_LIVE_LENGTH): Likewise.
860 (REGNO_FIRST_UID, REGNO_LAST_UID, REGNO_LAST_NOTE_UID): Likewise.
861
21622caf
JL
862Wed May 13 12:54:19 1998 Martin von Loewis <martin@mira.isdn.cs.tu-berlin.de>
863
864 * acconfig.h (ENABLE_CHECKING): Undefine.
865 * configure.in (--enable-checking): New option.
866
d668e863
R
867Wed May 13 08:52:08 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
868
869 * reload1.c (merge_assigned_reloads): Can merge
870 RELOAD_FOR_INPUT_ADDRESS and RELOAD_FOR_OTHER_ADDRESS even
871 if RELOAD_FOR_INPUT with the same reload_reg_rtx is present.
872
b706d7f2
JW
873Tue May 12 20:05:57 1998 Jim Wilson <wilson@cygnus.com>
874
875 * collect2.c (main): Ignore do_collecting when COLLECT_EXPORT_LIST.
876
4117a96b
R
877Wed May 13 03:23:45 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
878
879 * reload1.c (gen_reload): Create REG_EQUIV notes.
880
4d3eb414
R
881Tue May 12 22:21:07 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
882
883 * reload1.c (reload): Fix check for USEs to use code of pattern.
884 (choose_reload_regs): Remove dead variable use_insn.
885
b10c8966
JL
886Tue May 12 14:04:49 1998 Jeffrey A Law (law@cygnus.com)
887
888 * pa.h (DBX_CONTIN_LENGTH): Reduce to 3000 bytes.
889
cbb13457
MM
890Tue May 12 15:16:02 1998 Michael Meissner <meissner@cygnus.com>
891
892 * haifa-sched.c (HAIFA_INLINE): Define to be __inline unless
893 already defined.
894 (find_insn_{,mem_}list): Use HAIFA_INLINE, not __inline.
895 (insn_{unit,issue_delay}): Ditto.
896 (blockage_range): Ditto.
897 (actual_hazard{,_this_instance}): Ditto.
898 (schedule_unit): Ditto.
899 (potential_hazard): Ditto.
900 (insn_cost): Ditto.
901 (swap_sort): Ditto.
902 (queue_insn): Ditto.
903 (birthing_insn_p): Ditto.
904 (adjust_priority): Ditto.
905 (get_block_head_tail): Ditto.
906 (init_rgn_data_dependences): Ditto.
907
1478d88a
KK
908Tue May 12 10:27:54 1998 Klaus Kaempf <kkaempf@progis.de>
909
910 * alpha/vms.h (COMMON_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON): Define.
911
a688e0b7
GK
912Tue May 12 11:44:14 1998 Gavin Koch <gavin@cygnus.com>
913
914 * config/mips/mips.h (ASM_OUTPUT_ALIGN): Remove trailing semi-colon.
915
ec350bdd
GK
916Tue May 12 11:38:31 1998 Gavin Koch <gavin@cygnus.com>
917
918 * config/mips/mips.md (dslot): Move after definition of "cpu"
919 attribute. Handle r3900 case.
920
d4ba0ead
KG
921Tue May 12 10:21:36 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
922
923 * system.h: Define the STRINGIFY macro here.
924 * protoize.c: Not here.
925 * gengenrtl.c (DEF_RTL_EXPR): Use the STRINGIFY macro.
926
8a198bd2
JW
927Tue May 12 00:47:33 1998 John Wehle (john@feith.com)
928
929 * varasm.c (assemble_variable): Compute the alignment of the data
930 earlier so that both initialized and uninitialized variables are
931 effected by DATA_ALIGNMENT.
932 * tm.texi (DATA_ALIGNMENT): Updated appropriately.
933
eace3df1
JL
934Mon May 11 19:57:58 1998 Jeffrey A Law (law@cygnus.com)
935
936 * mips.c: Prototype static functions.
937
a9e95099
JW
938Mon May 11 17:43:03 1998 Jim Wilson <wilson@cygnus.com>
939
b1a7d591
JW
940 * regmove.c (fixup_match_2, find_matches, regmove_profitable):
941 Add explanatory comments.
942
a9e95099
JW
943 * sparc.h (SPARC_INCOMING_INT_ARG_FIRST): Support TARGET_FLAT.
944
0f177d7c
RH
945Mon May 11 17:24:27 1998 Richard Henderson <rth@cygnus.com>
946
947 * sparc.md (ffsdi2): Disable. Simplify the expression as well.
948
28233641
JW
949Mon May 11 13:30:44 1998 Jim Wilson <wilson@cygnus.com>
950
951 * varasm.c (make_decl_rtl): Disable April 1 change.
952
e55a5ea6
RH
953Mon May 11 09:14:41 1998 Richard Henderson <rth@cygnus.com>
954
955 * configure.in (alpha-*-linux-gnu): Undo lossage from gcc2 merge.
956
e83015a9
RH
957Mon May 11 08:24:18 1998 Richard Henderson <rth@cygnus.com>
958
959 * alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Add '`'.
960 * alpha.c (print_operand): Handle it.
961 * alpha.md (fix_truncdfsi2, fix_truncsfsi2): New patterns and
962 related define_splits. Also add peepholes for SImode reload
963 plus sign_extend lossage.
964
320e7c40
KG
965Mon May 11 09:33:10 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
966
967 * genattr.c: Include stdarg.h/varargs.h. Change function
968 `fatal' to use variable arguments instead of faking it with
969 integer parameters. Provide a prototype which also
970 checks the format specifiers using ATTRIBUTE_PRINTF_1.
971
972 * genattrtab.c: Likewise.
973 * gencodes.c: Likewise.
974 * genconfig.c: Likewise.
975 * genemit.c: Likewise.
976 * genextract.c: Likewise.
977 * genflags.c: Likewise.
978 * genopinit.c: Likewise.
979 * genpeep.c: Likewise.
980 * genrecog.c: Likewise.
981 * genoutput.c: Likewise. Similarly for function `error'.
982
e9b4fabf
JL
983Sun May 10 02:27:03 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
984
985 * acconfig.h (HAVE_VOLATILE): Insert stub for autoconf.
986 * alocal.m4 (GCC_C_VOLATILE): New autoconf test.
987 * configure.in: Use GCC_C_VOLATILE.
988 * system.h (volatile): Define as empty if no volatile support is
989 available.
990
991Sun May 10 01:21:43 1998 Jeffrey A Law (law@cygnus.com)
992
993 * genemit.c (output_add_clobbers): Removed unused variable 'i' from
994 generated fucntion.
995
f283421d
RH
996Sat May 9 02:02:15 1998 Richard Henderson <rth@cygnus.com>
997
998 * loop.c (get_condition): Don't combine when either compare is MODE_CC.
999 * alpha.c (alpha_emit_conditional_branch): New function. Taken from
1000 the body of beq; additionally set the mode of the branch to CCmode for
1001 FP compares and not fast_math.
1002 (alpha_emit_conditional_move): Always use a compare insn for FP
1003 when not fast_math, as well as setting CCmode on the cmov.
1004 * alpha.md (beq, bne, blt, et al): Call alpha_emit_conditional_branch.
1005
1006 * machmode.h (COMPLEX_MODE_P): New macro.
1007
53c0919d
RH
1008Sat May 9 01:53:23 1998 Richard Henderson <rth@cygnus.com>
1009
1010 * haifa-sched.c (print_exp): Fix typo.
1011
23d297ab
JL
1012Fri May 8 21:48:50 PDT 1998 Jeff Law (law@cygnus.com)
1013
1014 * version.c: Bump for snapshot.
1015
cf879efa
MM
1016Fri May 8 18:23:08 1998 Michael Meissner <meissner@cygnus.com>
1017
1018 * final.c (final_scan_insn): Call fatal_insn instead of abort if
1019 we could not split an insn when required to.
1020
5b8ae21f
MM
1021 * m32r.md ({add,sub}di3): Add define_splits and appropriate low
1022 level insns.
1023 (peepholes): Disable peepholes that call dead_or_set_p.
1024 (movsi): Rewrite to handle addresses better after last change.
1025 Add define_split to split load of addresses in large/medium modes.
1026 (prologue): Call m32r_expand_prologue.
1027 (movsi_{push,pop}): Generators for push/pop.
1028 (movsi): Support PRE_{INC,DEC}, POST_INC.
1029 (mov{di,df}): Rewrite. Always split the insns.
1030 (movsf): Add define_split to get register load in correct mode.
1031 (cmp_ne_small_const_insn): Use 'N' instead of 'S' constraint.
1032 (attributes): Rewrite attributes so that type indicates both the
1033 type and the length of the insn directly.
1034 (all insns): Change to use new type attributes.
1035 (debug): New attribute to convey whether -mdebug was used.
1036 (opt_space): New attribute to convey whether -Os was used.
1037 (function units): Loads are 3 cycles, not 2. Better classify all
1038 insns into short/long.
1039 (load/store/extend insns): Add separate case for load/store
1040 indirect operations without an offset.
1041 (divsi3): Division is a long operation, not short.
1042
1043 * m32r.h (LEGITIMATE_LO_SUM_ADDRESS_P): Do not allow LO_SUM for
1044 modes > 1 word.
1045 (GO_IF_MODE_DEPENDENT_ADDRESS): LO_SUM is now mode dependent.
1046 (CONST_OK_FOR_LETTER_P): Make 'N' handle reverse 8 bit compares.
1047 (EXTRA_CONSTRAINT): Remove 'S' special support. Add 'U' for
1048 operands with PRE_{INC,DEC}, POST_INC.
1049 (FUNCTION_PROFILER): Call abort instead of doing nothing.
1050 (GO_IF_LEGITIMATE_ADDRESS): Allow PRE_{INC,DEC}, POST_INC of
1051 SImode variables.
1052 (gen_split_move_double): Declare.
1053 (EXTRA_CONSTRAINT): Add 'T' for memory reference with no offset.
1054
1055 * m32r.c (gen_split_move_double): Fix typo. Also, don't call
1056 emit_move_insn, build up SET's directly.
1057 (toplevel): Include system.h, not stdio.h.
1058 (move_double_src_operand): Allow any DF or DI mode constant.
1059 (gen_split_move_double): Split moves of DI or DF values into the
1060 appropriate moves, loads, or stores. Don't handle use of auto
1061 inc/dec if using dead index. Do handle overlapping moves, etc.
1062 (m32r_frame_info): Remove prologue_size field.
1063 (m32r_compute_frame_size): Don't calculate prologue size.
1064 (m32r_output_function_prologue): Change to pretty much a NOP.
1065 (m32r_expand_prologue): Expand prologue as a series of INSNs.
1066 (m32r_print_operand): Add support for PRE_{INC,DEC}, POST_INC.
1067 (m32r_print_operand_address): Ditto.
1068
d7c2e385
L
1069Fri May 8 14:13:21 1998 H.J. Lu (hjl@gnu.org)
1070
1071 * reload1.c (emit_reload_insns): When performing expensive
1072 optimizations, do not output the last reload insn if OLD is
1073 not the dest of NSN and is in the src and is clobbered by INSN.
1074
560bd19e
KG
1075Fri May 8 09:47:29 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1076
1077 * Makefile.in (genrtl.o): Depend on system.h.
1078 * gengenrtl.c (gencode): When creating genrtl.c, have it
1079 include system.h.
1080
0d33d22e
AS
1081Fri May 8 10:57:33 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1082
1083 * config/m68k/t-linux: Remove extra stuff already included in
1084 config/t-linux.
1085
dea4ae0d
MH
1086Fri May 8 09:53:24 Paul Eggert <eggert@twinsun.com>
1087
1088 * fixinc.wrap: Renamed from fixinc.math. Put wrapper around
1089 curses.h if it contains `typedef char bool;', as suggested by
1090 Manfred Hollstein <manfred@s-direktnet.de>.
1091
1092 * configure.in: Rename fixinc.math to fixinc.wrap.
1093
02e56202
JW
1094Thu May 7 19:26:34 1998 Jim Wilson <wilson@cygnus.com>
1095
bbeb7b65
JW
1096 * gcc.c (read_specs): Handle missing blank line at end of specs file.
1097
02e56202
JW
1098 * i386.md (movsicc, movhicc, movsicc_1, movhicc_1, movsfcc_1,
1099 movdfcc_1): Disable.
1100
e445171e
JW
1101Thu May 7 15:39:14 1998 Jim Wilson <wilson@cygnus.com>
1102
1103 * configure.in (enable_threads): Rename to enable_threads_flag before
1104 main loop. Set enable_threads to enable_threads_flag inside main
1105 loop.
1106
a1b5a7e1
MM
1107Thu May 7 17:38:03 1998 Michael Meissner <meissner@cygnus.com>
1108
1109 * r6000/eabi.asm (__eabi): Restore LR in case __eabi is called
1110 multiple times.
1111
76b4b31e
KG
1112Thu May 7 14:26:05 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1113
1114 * aclocal.m4 (GCC_FUNC_VFPRINTF_DOPRNT): New macro.
1115
1116 * configure.in: Add a call to GCC_FUNC_VFPRINTF_DOPRNT.
1117 (AC_CHECK_HEADERS): Remove unused check for varargs.h,sys/varargs.h.
1118 (AC_CHECK_FUNCS): Remove unused check for vprintf.
1119
1120 * Makefile.in: Add support for linking in vfprintf.c and doprint.c.
1121 (cccp.o): Depend on gansidecl.h.
1122 (cexp.o): Likewise.
1123
1124 * cccp.c: Convert from using PRINTF_ALIST/PRINTF_DCL to VPROTO as
1125 per the rest of gcc source.
1126 * cexp.y: Likewise. Include gansidecl.h and remove all code made
1127 redundant.
1128
1129 * cccp.c: Remove checks for HAVE_VPRINTF and the associated code
1130 used when vfprintf is missing.
1131 * cexp.y: Likewise.
1132 * gcc.c: Likewise.
1133 * genattrtab.c: Likewise.
1134 * mips-tfile.c: Likewise.
1135 * toplev.c: Likewise.
1136
1137 * vfprintf.c: New file.
1138 * doprint.c: New file.
1139
bebc4663
JL
1140Thu May 7 10:18:41 1998 Jeffrey A Law (law@cygnus.com)
1141
1142 * config/linux.h (ASM_COMMENT_START): Remove from here,
1143 * config/linux-aout.h (ASM_COMMENT_START): and here,
1144 * config/i386/linux.h (ASM_COMMENT_START): to here,
1145 * config/i386/linux-aout.h (ASM_COMMENT_START): and here.
1146 * config/i386/linux-oldld.h (ASM_COMMENT_START): Define
1147 here as '#' too.
1148
436bf9fb
AS
1149Thu May 7 10:55:59 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1150
1151 * config/m68k/m68k.md (adddi3, subdi3): Properly negate the DImode
1152 constant.
1153
f103890b
RL
1154Wed May 6 22:32:37 CDT 1998 Robert Lipe <robertl@dgii.com>
1155
1156 * Makefile.in (dwarfout.o) Add toplev.h dependency.
1157 * dwarfout.c, i386.c: Include toplev.h
1158 * toplev.h: (pfatal_with_name) Add prototype.
1159
024b5658
JM
1160Wed May 6 19:02:29 1998 Jason Merrill <jason@yorick.cygnus.com>
1161
1162 * Makefile.in: Fix .SUFFIXES.
1163
410c3875
AM
1164Wed May 6 19:31:32 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
1165
1166 * config/linux.h (ASM_COMMENT_START): Define as "#".
1167 * config/linux-aout.h (ASM_COMMENT_START): Likewise.
1168
7e073314
JW
1169Wed May 6 15:51:39 1998 Jim Wilson <wilson@cygnus.com>
1170
71ebb3b8
JW
1171 * objc/Make-lang.h (objc-parse.o): Add toplev.h dependency.
1172 * objc/objc-parse.y, objc/objc-parse.c: Regenerate.
1173
a0c8e1b2
JW
1174 * toplev.c: Include toplev.h.
1175 * Makefile.in (c-common.o, c-convert.o, c-decl.o, c-iterate.o,
1176 c-lex.o, c-parse.o, c-pragma.o, c-typeck.o, calls.o, convert.o,
1177 dwarf2out.o, except.o, expr.o, final.o, fold-const.o, function.o,
1178 hash.o, profile.o, real.o, reg-stack.o, regclass.o, reload.o,
1179 reload1.o, stmt.o, stor-layout.o, tlink.o, tree.o, varasm.o): Add
1180 toplev.h dependency.
1181
1b15c5de
JW
1182 * mips/mips.c (save_restore_insns): Change FRAME_POINTER_REGNUM to
1183 HARD_FRAME_POINTER_REGNUM.
1184
7e073314
JW
1185 * expr.c (target_temp_slot_level): Delete duplicate definition.
1186
d06eab0d
JL
1187Wed May 6 16:46:01 1998 Jeffrey A Law (law@cygnus.com)
1188
df03cab5 1189 * stmt.c (mark_seen_cases): Make it have external linkage again.
0586a4ce
JL
1190 * expr.h (mark_seen_cases): Add declaration, but only when tree.h
1191 has been included.
df03cab5 1192
6b879bcc
JL
1193 * haifa-sched.c (print_value, case SUBREG): Fix typo.
1194
6b28fd63
JL
1195 * i386.c (output_387_binary_op): Add some braces to avoid warnings.
1196 * i386.h (REG_CLASS_CONTENTS): Similarly.
1197
cc132865
JL
1198 * toplev.c (-fsched-max): Delete flag.
1199 (-fsched-interblock-max-blocks,-fsched-interblock-max-insns): Likewise.
1200 * haifa-sched.c: Remove -fsched-max-N, -fsched-interblock-max-blocks-N
1201 and -fsched-interblock-max-insns-N support. Remove INTERBLOCK_DEBUG
1202 conditionals.
1203
1204 * haifa-sched.c (find_rgns): Correctly handle reducible loops with
1205 inner loops which are not reducible.
1206
fd4a1ca5
JL
1207 * loop.c (regs_match_p): Fix typo in prototype.
1208
d06eab0d
JL
1209 * regmove.c (try_auto_increment): Wrap declaration inside an
1210 #ifdef AUTO_INC_DEC.
1211
31bfbf1f
MM
1212Wed May 6 17:07:47 1998 Michael Meissner <meissner@cygnus.com>
1213
1214 * final.c (output_operand_lossage): Call fatal with the operand
1215 lossage message instead of calling abort.
1216
e9a780ec
KG
1217Wed May 6 15:37:27 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1218
1219 * c-common.c: Convert to using ctype macros defined in system.h.
1220 * c-lex.c: Likewise.
1221 * cccp.c: Likewise.
1222 * collect2.c: Likewise.
1223 * rs6000.c: Likewise.
1224 * cpplib.c: Likewise.
1225 * fix-header.c: Likewise.
1226 * gcc.c: Likewise.
1227 * gen-protos.c: Likewise.
1228 * pexecute.c: Likewise.
1229 * protoize.c: Likewise.
1230 * rtl.c: Likewise.
1231 * scan.c: Likewise.
1232 * stmt.c: Likewise.
1233 * tlink.c: Likewise.
1234 * toplev.c: Likewise.
1235
d4c3e60e
GK
1236Wed May 6 14:44:14 1998 Gavin Koch <gavin@cygnus.com>
1237
1238 * config/mips/r3900.h (SUBTARGET_ASM_DEBUGGING_SPEC) :
1239 Replace -gdwarf-2 with -g0.
1240
90fbb8c9
KG
1241Wed May 6 11:43:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1242
1243 * Makefile.in (mips-tfile.o, mips-tdump.o): Depend on system.h.
1244 * mips-tdump.c: Include system.h, remove redundant headers.
1245 * mips-tfile.c: Likewise. Also, convert all ctype function calls
1246 to calls of the macro versions defined in system.h.
1247
1248 * objc/Make-lang.in (objc-act.o): Depend on system.h.
1249 * objc/objc-act.c: Include system.h, remove redundant headers.
1250
8f81384f
KG
1251Wed May 6 11:21:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1252
1253 * configure.in (AC_CHECK_FUNCS): Add isascii.
1254 (GCC_NEED_DECLARATIONS): Add atof.
1255
1256 * system.h: Provide prototypes for abort, atof, atol and sbrk here.
1257 * rtl.c, rtl.h, toplev.c, tree.h: Not here.
1258
e572c0c6
KG
1259Wed May 6 10:52:49 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1260
1261 * system.h: Wrap time.h and sys/file.h in autoconf checks.
1262 Provide default definitions for O_RDONLY and O_WRONLY here.
1263
1264 * cccp.c, cpplib.c, fix-header.c, gcc.c, protoize.c: Not here.
1265
8830da36
MM
12661998-05-06 Mark Mitchell <mmitchell@usa.net>
1267
1268 * tree.h (IS_EXPR_CODE_CLASS): Remove bogus '3'.
1269
c5ff95e6
RL
1270Wed May 6 06:35:38 1998 Robert Lipe <robertl@dgii.com>
1271
1272 * toplev.h: New file. Protypes for functions in toplev.c.
1273 * tree.h, rtl.h: Deleted protos for functions in toplev.c.
1274 * c-common.c, c-convert.c, c-decl.c, c-iterate.c, c-lex.c,
1275 c-parse.in, c-parse.y, c-pragma.c, c-typeck.c, calls.c,
1276 convert.c, dwarf2out.c, except.c, expr.c, final.c, fold-const.c,
1277 function.c, hash.c, profile.c, real.c, reg-stack.c, regclass.c,
1278 reload.c, reload1.c, stmt.c, stor-layout.c, tlink.c, tree.c,
1279 varasm.c: include it.
1280
15ebe47d
JL
1281Wed May 6 01:09:01 1998 Jeffrey A Law (law@cygnus.com)
1282 Jim Wilson (wilson@cygnus.com)
1283
1284 * haifa-sched.c (find_rgns): In no_loops case, fix test for leaf
1285 blocks. Check for 1 successor which is the EXIT_BLOCK.
1286
1287 * haifa-sched.c (find_rgns): Detect unreachable blocks, including
1288 unreachable loops with more than one block.
1289
dbbfa8c8
MH
1290Wed May 6 08:22:24 1998 Manfred Hollstein <manfred@s-direktnet.de>
1291
1292 * fix-header.c (write_rbrac): Add "abort" to functions which need to
1293 be protected.
1294
f5963e61
JL
1295Wed May 6 00:09:36 1998 Jeffrey A Law (law@cygnus.com)
1296
1297 * Check in merge from gcc2. See ChangeLog.12 for details.
1298
3d90c2b5
JW
1299Tue May 5 14:33:49 1998 Jim Wilson <wilson@cygnus.com>
1300
c6a9dea8
JW
1301 * c-common.c (scan_char_table): Separate 's' and 'c'. 'c' does not
1302 accept 'a' flag. 'S' does accept 'a' flag.
1303 (check_format_info): When pedantic, warn for m/C/S/a/A formats,
1304 and `a' flag.
1305
3d90c2b5
JW
1306 * elf64.h (MULTILIB_DEFAULTS): Move definition after mips.h include.
1307
97b57a81
AS
1308Tue May 5 10:50:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1309
1310 * config/m68k/m68k.h: Declare functions from m68k.c used in
1311 macros and machine description.
1312 (ASM_OUTPUT_LONG_DOUBLE): Always use `l' flag in print format for
1313 long values.
1314 (ASM_OUTPUT_FLOAT): Likewise.
1315 (ASM_OUTPUT_FLOAT_OPERAND): Likewise.
1316
c5c63738
JM
1317Tue May 5 01:28:12 1998 Jason Merrill <jason@yorick.cygnus.com>
1318
1319 * tree.def: Add NAMESPACE_DECL.
1320 * dwarfout.c (type_ok_for_scope): Ignore NAMESPACE_DECLs for now.
1321 * dwarf2out.c (push_decl_scope): Likewise.
1322 (scope_die_for): Likewise.
1323 * tree.c (decl_function_context): Use TREE_CODE_CLASS to determine
1324 how to get next context level.
1325
2e14a41b
JW
1326Tue May 5 01:43:16 1998 Jim Wilson <wilson@cygnus.com>
1327
1328 * i386.c (output_fix_trunc): Add code to emulate non-popping DImode
1329 case.
1330
f78c792c
JL
1331Tue May 5 01:15:06 1998 Jeffrey A Law (law@cygnus.com)
1332
8b05263d
JL
1333 * h8300.h (ADDITIONAL_REGISTER_NAMES): Add "er" registers.
1334
f78c792c
JL
1335 * reorg.c (fill_slots_from_thread): Update REG_DEAD/REG_UNUSED notes
1336 for any insns skipped at the start of a block because they were
1337 redundant.
1338
4330b0e7
JW
1339Mon May 4 20:23:51 1998 Jim Wilson <wilson@cygnus.com>
1340
1341 * alpha.h (DBX_CONTIN_LENGTH): Decrease to 3000.
1342
b57062ca
UD
13431998-05-04 Ulrich Drepper <drepper@cygnus.com>
1344
1345 * c-common.c (format_char_info): Add new field hhlen.
1346 (print_char_table, scan_char_table, time_char_table): Initialize
1347 hhlen field appropriately.
1348 (char_format_info): Recognize hh modifier and lookup correct char
1349 table entry.
1350
06eaa86f
JW
1351Mon May 4 19:15:29 1998 Jim Wilson <wilson@cygnus.com>
1352
1353 * expr.c (expand_expr, case INDIRECT_REF): Don't optimize string
1354 reference if this is a store.
1355
9ed5dc54
RH
1356Mon May 4 17:25:17 1998 Richard Henderson <rth@cygnus.com>
1357
1358 * sparc.c (output_move_quad): Fix typo in mov_by_64 argument.
1359
fb6d9312
RL
1360Sun May 3 23:57:25 1998 Robert Lipe <robertl@dgii.com>
1361
1362 Make UnixWare 7 bootstrap support work with final shipping product.
b57062ca 1363 * configure.in: (i[34567]86-*-sysv5): append, not overwrite, xm_file.
fb6d9312
RL
1364 Pick up xm-siglist and xm-alloca.
1365 (xm_defines): Add USG so dbxout will build.
1366 * configure: Regenerate.
1367
82d6b402
RH
1368Sun May 3 13:51:34 PDT 1998 Richard Henerson <rth@cygnus.com>
1369
1370 Support for official Sparc V9 ABI:
1371 * sparc.c (sparc_override_options): Force stack bias off for !arch64.
1372 Care for flag_pcc_struct_return default.
1373 (output_move_quad): Rewrite to move by halves on v9 and in the
1374 proper direction.
1375 (move_quad_direction): New function.
1376 (output_fp_move_quad): Use it to determine the direction of copy.
1377 (function_arg_slotno): Return -1 for FP reg overflow as well.
1378 (function_arg_record_value*): New functions.
1379 (function_arg): Use them. Streamline unprototyped parameter passing.
1380 (function_arg_pass_by_reference): Pass TCmode by reference.
1381 (function_value): New function.
1382 * sparc.h (PTRDIFF_TYPE, SIZE_TYPE): For -pedantic's sake, don't use
1383 long long in 64-bit mode.
1384 (RETURN_IN_MEMORY): v9 returns structs < 32-bytes in regs.
1385 (DEFAULT_PCC_STRUCT_RETURN): Make the default detectable.
1386 (BASE_RETURN_VALUE_REG): Consider complex float types for arch64.
1387 (BASE_OUTGOING_VALUE_REG, BASE_PASSING_ARG_REG): Likewise.
1388 (BASE_INCOMING_ARG_REG): Likewise.
1389 (FUNCTION_VALUE): Call function_value.
1390 (FUNCTION_OUTGOING_VALUE, LIBCALL_VALUE): Likewise.
1391 * sparc.md (movdi_sp32_v9): Disable for arch64.
1392 (movsf, movdf, movtf): Sort all ulternatives using fp regs first.
1393 (call_value_address_sp64): Remove register class constraints.
1394 (call_value_symbolic_sp64): Likewise.
1395 (nonlocal_goto): Pass label reg directly to goto_handlers. Constrain
1396 v9 case to 32-bit constants.
1397 (goto_handler_and_restore_v9): Provide a version for arch64.
1398 * sparc/linux64.h (SIZE_TYPE, PTRDIFF_TYPE): Remove private definition.
1399 * sparc/sp64-aout.h (TARGET_DEFAULT): Turn on stack bias.
1400 (CPP_PREDEFINES): New.
1401 * sparc/sp64-elf.h: Likewise.
1402 (PREFERRED_DEBUGGING_TYPE): Dwarf2.
1403 (ASM_OUTPUT_DWARF2_ADDR_CONST): New.
1404 * sparc/sysv4.h (SIZE_TYPE, PTRDIFF_TYPE): Undo svr4.h's changes.
1405
e40abc32
JL
1406Sat May 2 17:47:17 PDT 1998 Jeff Law (law@cygnus.com)
1407
1408 * version.c: Bump for snapshot.
1409
b60a8416
R
1410Sat May 2 01:37:29 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1411
1412 * reload.c (find_reloads): Emit USEs to mark where a pseudo
1e89ac8a 1413 is reloaded with the MEM of its stack slot.
b60a8416
R
1414 * reload1.c (cannot_omit_stores): Delete.
1415 (reload): Don't initialize it.
1416 Don't apply avoid_return_reg logic to USEs.
1417 When done, remove USEs that have a REG_EQUAL note on them.
1418 (emit_reload_insns): Handle case where we have inherited a MEM.
4d3eb414 1419 (choose_reload_regs): Likewise.
b60a8416
R
1420 (delete_output_reload): Don't use cannot_omit_stores.
1421
c1879238
JW
1422Thu Apr 30 18:59:03 1998 Jim Wilson <wilson@cygnus.com>
1423
1424 * Makefile.in (cpp.info, gcc.info): Put -o option before input file.
1425
459b3825
MM
1426Thu Apr 30 16:57:34 1998 Michael Meissner <meissner@cygnus.com>
1427
1428 * haifa-sched.c (print_{exp,value}): Various changes to make the
1429 debug output easier to read. Also, use only one buffer, and make
1430 sure the buffer we are passed in doesn't overflow.
1431 (safe_concat): Concatenate to a buffer without overflow.
1432
3fe4d12a 1433Thu Apr 30 16:57:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
459b3825
MM
1434
1435 * haifa-sched.c (alloc_{INSN,EXPR}_LIST): Make static to agree
1436 with the prototype.
b57062ca 1437
93da030f
R
1438Wed Apr 29 21:45:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1439
1440 * sched.c (new_insn_dead_notes): Check if the register was
1441 used in the original instruction.
1442 * haifa-sched.c (new_insn_dead_notes): Likewise.
1443
0c84c618
JW
1444Wed Apr 29 13:46:03 1998 Jim Wilson <wilson@cygnus.com>
1445
1446 * dwarf2out.c (scope_die_for): If could not find proper scope,
1447 check for and handle tagged type with incorrect TYPE_CONTEXT.
1448
bf5f0e90
JC
1449Wed Apr 29 15:34:40 1998 John Carr <jfc@mit.edu>
1450
1451 * calls.c (expand_call): Fix recognition of C++ operator new.
1452
1453 * alias.c (mode_alias_check): Disable type based alias detection.
1454
a0281dae
GK
1455Wed Apr 29 15:06:42 1998 Gavin Koch <gavin@cygnus.com>
1456
1457 * config/mips/elf.h (ASM_OUTPUT_DEF,ASM_WEAKEN_LABEL,
1458 ASM_OUTPUT_WEAK_ALIAS): Define.
1459 * config/mips/elf64.h: Same.
1460 * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK,
1461 ASM_WEAKEN_LABEL): Removed.
1462
55666054
AS
1463Wed Apr 29 10:53:29 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1464
1465 * calls.c (expand_call): Bump the length limit on the specially
1466 recognized function names to 17.
1467
2cea586a
JW
1468Tue Apr 28 17:53:33 1998 Jim Wilson <wilson@cygnus.com>
1469
f60d6248
JW
1470 * ginclude/stddef.h: Add check for _MACHINE_ANSI_H_ for BSD/OS
1471 when undefining macros at the end.
1472
bf931ec8
JW
1473 * expr.c (expand_builtin, case BUILT_IN_MEMSET): Break if either
1474 val or len has TREE_SIDE_EFFECTS set.
1475
2cea586a
JW
1476 * sparc.md (mulsidi3): Call const v8plus and v8plus routines.
1477 (mulsidi3_v8plus, const_mulsidi3_v8plus): Delete asterisk from name.
1478 (smuldi3_highpart): Call const v8plus routine.
1479 (smulsi3_highpart_v8plus): Renamed from smulsidi3_highpart_v8plus.
1480 (const_smulsi3_highpart_v8plus): New pattern.
1481 (smulsi3_highpart_sp32): Renamed from smulsidi3_highpart_sp32.
1482 (umulsidi3): Call const v8plus routine.
1483 (umulsi3_highpart): Handle const before v8plus. Call const v8plus
1484 routine.
1485 (umulsi3_highpart_v8plus): Renamed from umulsidi3_highpart_v8plus.
1486 (umulsi3_highpart_sp32): Renamed from umulsidi3_highpart_sp32.
1487
2b7972b0
MM
1488Tue Apr 28 08:55:26 1998 Michael Meissner <meissner@cygnus.com>
1489
1490 * m32r.c (*_oper{and|ator}): Change enum arguments and return
1491 values to int, so they can be prototyped even in files that don't
1492 include rtl.h.
1493 ({small,large}_insn_p): Ditto.
1494 (m32r_select_cc_mode): Ditto.
1495 (gen_compare): Ditto.
1496 (function_arg_partial_nregs): Ditto.
1497 (m32r_setup_incoming_varargs): Ditto.
1498 (init_reg_tables): Add prototype.
1499 (m32r_frame_info): Add prolog_size field.
1500 (m32r_compute_frame_size): Calculate the size of the prologue.
1501 (m32r_first_insn_address): Return prologue size.
1502 (m32r_output_function_prologue): Calculate frame size before
1503 printing out information. Print out the prologue size.
1504
1505 * m32r.h: Prototype all functions in m32r.c.
1506 (FIRST_INSN_ADDRESS): Declare, returning prologue size.
1507
1508 * m32r.md (bcc functions): Cast enum's to int.
1509
1510 * m32r.c (conditional_move_operand): Silence a debug message.
1511 ({small,long}_insn): New predicates.
b57062ca 1512
2b7972b0
MM
1513 * m32r.h (TARGET_M32R): New macro.
1514 (PREDICATE_CODES): Rearrange somewhat, add small_insn/long_insn.
1515 (HAIFA_P): Define as 1/0 depending on whether the Haifa scheduler
1516 was selected.
1517 (ISSUE_RATE): Define as 2.
1518
1519 * m32r.md (insn_size): New attribute.
1520 ({,rev_}branch_insn): Add .s qualifier to branches believed to be
1521 short.
1522 (m32r): New attribute.
1523
1524 * configure.in (enable_haifa): Switch m32r to Haifa by default.
1525 * configure: Regenerate.
1526
1527 (Changes from Nick Clifton <nickc@cygnus.com>)
1528 * m32r.h (EXTRA_CONSTRAINT): Implement 'S' constraint to perfoirm
1529 the equivalent of a negated 'I' constraint.
1530 (PRESERVE_DEATH_INFO_REGNO_P): Define in order to allow peephole
1531 optimisation to work.
1532
1533 * m32r.md (cmp_ne_small_const_insn): Use 'S' constriant rather
1534 than 'I' since the value is negated.
1535 (peephole): Add peephole optimisation to cope with optimization of
1536 divide and subtracts of the same operands.
1537
1538 * m32r.c zero_and_one, emit_cond_move): Add support for MVFC.
b57062ca 1539 * m32r.h: Ditto.
2b7972b0
MM
1540 * m32r.md: Ditto.
1541
1542 * m32r.h (PREDICATE_CODES): Add declaration of machine specific
1543 predicates.
1544
bd55c374
MH
1545Tue Apr 28 07:25:53 1998 Manfred Hollstein <manfred@s-direktnet.de>
1546
1547 * Makefile.in (libgcc2.ready): Revert last patch (Apr 24).
1548
3a6bd8c0
NC
1549Mon Apr 27 18:39:47 1998 Nick Clifton <nickc@cygnus.com>
1550
1551 * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Check against
1552 frame_pointer_rtx not FRAME_POINTER_REGNUM.
1553
0628fde6
JW
1554Mon Apr 27 18:36:28 1998 Jim Wilson <wilson@cygnus.com>
1555
561cf7b1
JW
1556 * reg-stack.c: Revert last patch (Apr 20).
1557 (convert_regs): Set insn to PREV_INSN (next) after do while loop.
1558
1688d6d2
JW
1559 * m68k/lb1sf68.asm (Laddsf$3): Fix typos in mcf5200 exg code.
1560
0628fde6
JW
1561 * loop.c (check_dbra_loop): New locals jump, first_compare, and
1562 compare_and_branch. Call get_condition to set first_compare.
1563 Set compare_and_branch to number of compare/branch instructions.
1564 Replace PREV_INSN (PREV_INSN (loop_end)) with first_compare.
1565 Replace '2' with compare_and_branch.
1566
07623417
AM
1567Mon Apr 27 15:53:30 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
1568
1569 * cplus-dem.c (demangle_qualified): Replace missing else.
1570
97d6fd65
R
1571Mon Apr 27 20:22:08 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1572
1573 * sh.c (gen_ashift_hi): Don't make SUBREG of a SUBREG.
1574
3d5a0820
R
1575Mon Apr 27 18:23:51 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1576
1577 * sh.c (sh_expand_prologue, sh_expand_epilogue):
1578 If TARGET_DOUBLE_ALIGN, preserve 64 bit stack alignment.
1579 * sh.h (STACK_BOUNDARY): Likewise.
1580
ef41dabb
R
1581Mon Apr 27 17:22:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1582
1583 * sh.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
1584
14bf4a33
MM
1585Mon Apr 27 08:55:23 1998 Michael Meissner <meissner@cygnus.com>
1586
22c4957e
MM
1587 * system.h (abort): If abort is not defined, and neither is
1588 USE_SYSTEM_ABORT, redefine abort to call fprintf and exit,
1589 reporting the line and filename of the error.
1590
1591 * .gdbinit: Add breakpoints on exit and fancy_abort.
1592
563c063f
MM
1593 * final.c (split_double): Avoid a compiler warning if
1594 BITS_PER_WORD is less than or equal to HOST_BIT_PER_WIDE_INT.
1595
14bf4a33
MM
1596 * rtl.h (JUMP_{CROSS_JUMP,NOOP_MOVES,AFTER_REGSCAN}): New macros
1597 for calling jump_optimize.
1598
1599 * toplev.c (rest_of_compilation): Call jump_optimize using JUMP_*
1600 macros, rather than 0/1's.
1601
5d02ee66
RH
1602Sun Apr 26 23:19:10 1998 Richard Henderson <rth@cygnus.com>
1603
1604 * alpha.h (CONST_COSTS): Zero is always free.
1605 (RTX_COSTS): Add EV6 costs. Abort if alpha_cpu is unknown.
1606
7bf40741
AS
1607Sun Apr 26 15:38:50 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1608
1609 * cplus-dem.c (gnu_special): Fix off-by-one bug when checking the
1610 length in the name of a virtual table.
1611
556ccd9b
RH
1612Sun Apr 26 01:21:06 1998 Richard Henderson <rth@cygnus.com>
1613
1614 * alpha.c (print_operand): Don't add 'v' suffix for ALPHA_FPTM_N.
1615
1206d294
JL
1616Sat Apr 25 22:11:38 PDT 1998 Jeff Law (law@cygnus.com)
1617
1618 * version.c: Bump for snapshot.
1619
4f242db3
JL
1620Sat Apr 25 17:17:15 1998 Jeffrey A Law (law@cygnus.com)
1621
1622 * fold-const.c (fold_convert): Fix typo.
1623
de12be17
JC
1624Sat Apr 25 17:55:54 1998 John Carr <jfc@mit.edu>
1625
1626 * alias.c (alias_invariant): New variable.
1627 (record_base_value): New argument INVARIANT.
1628 (memrefs_conflict_p): If a register has an entry in the alias_invariant
1629 array, try substituting that value for the register.
1630
1631 * rtl.h: Declare record_base_value.
1632
1633 * loop.c, unroll.c: Update callers of record_base_value.
1634
1635 * alias.c (find_base_value, find_base_term): SIGN_EXTEND and
1636 ZERO_EXTEND do not affect base values.
1637
fe81dd69
JL
1638Fri Apr 24 15:57:02 1998 Jeffrey A Law (law@cygnus.com)
1639
fb2c5c00
JL
1640 * dbxout.c (dbxout_type): Fix typo.
1641 (dbxout_range_type): Another HOST_WIDE_INT_PRINT_DEC fix.
1642
fe81dd69
JL
1643 * configure.in: Use CC_FOR_BUILD, not BUILD_CC.
1644
87d1ea79
JC
1645Fri Apr 24 16:11:47 1998 John Carr <jfc@mit.edu>
1646
1647 * expr.c (expand_builtin, case MEMSET): Set MEM_IN_STRUCT_P
1648 if the argument is the address of a structure or array.
1649
1650 * configure.in: Enable Haifa scheduler by default for SPARC.
1651
e89d3e6f
R
1652Fri Apr 24 20:55:47 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1653
1654 * cse.c (cse_set_around_loop): Don't do optimization when
1655 new pseudos are created.
1656
442f4018
JL
1657Fri Apr 24 11:00:18 1998 Jeffrey A Law (law@cygnus.com)
1658
1659 * dbxout.c (dbxout_type_fields): Use HOST_WIDE_INT_PRINT_DEC
1660 appropriately.
1661 (dbxout_type_method_1, dbxout_type): Likewise.
1662 (print_int_cst_octal, print_octal, dbxout_symbol): Likewise.
1663 (dbxout_type): Fix check for when to print a type range in
1664 octal vs decimal.
1665
7174c937
R
1666Fri Apr 24 16:45:03 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1667
1668 * (gen_shl_and, in case 1): Fix comparison with mask.
1669
0b812758
NC
1670Fri Apr 24 06:46:40 1998 Nick Clifton <nickc@cygnus.com>
1671
1672 * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Disallow frame
1673 pointer as second register in REG+REG pair.
1674
753a73c8
KG
1675Fri Apr 24 09:22:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1676
1677 * c-common.c (check_format_info): Don't check for the 'x' format
1678 character twice, instead check for 'x' and 'X'
1679
4a1991b3
MH
1680Fri Apr 24 08:02:30 1998 Manfred Hollstein <manfred@s-direktnet.de>
1681
1682 * Makefile.in (libgcc2.ready): Add explicit dependancy from
1683 $(STMP_FIXPROTO) to ensure all necessary include files have
1684 been created and to guarantee proper parallel builds.
1685
aec373f1
R
1686Fri Apr 24 04:42:35 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1687
1688 * sh.c (sh_expand_prologue, in !SH3E code): Don't push an extra
1689 register for stdarg functions.
1690 * sh.h (current_function_varargs): Declare.
1691 (FUNCTION_ARG): Ignore NAMED for stdarg functions.
1692
f5880dbe
JW
16931998-04-23 Jim Wilson <wilson@cygnus.com>
1694
f1f53f0b
JW
1695 * frame.c, libgcc2.c (stdlib.h, unistd.h): Don't include when
1696 inhibit_libc is defined.
1697
f5880dbe
JW
1698 * c-aux-info.c (gen_type): Use DECL_NAME only for TYPE_DECL.
1699
8ade1519
JW
1700Thu Apr 23 19:09:33 1998 Jim Wilson <wilson@cygnus.com>
1701
1702 * profile.c (tablejump_entry_p): New function.
1703 (branch_prob): Add code to recognize MIPS tablejump entry branch.
1704 Use tablejump_entry_p in MIPS and HPPA tablejump checking code.
1705
a2538ff7
NC
1706Thu Apr 23 15:01:13 1998 Nick Clifton <nickc@cygnus.com>
1707
1708 * config/arm/arm.c (find_barrier): Return as soon as a barrier is
1709 found, rather than at end of the loop, after the insn has been
b57062ca 1710 changed.
a2538ff7 1711
d0c42859
R
1712Thu Apr 23 20:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1713
1714 * sh.c (gen_ashift_hi): Implement right shifts via gen_ashift.
1715 * sh.md (ashrhi3_k, lshrhi3_k, lshrhi3_m, lshrhi3, lshrhi3+1): Delete.
1716
693e265f
MM
1717Wed Apr 22 17:07:35 1998 Michael Meissner <meissner@cygnus.com>
1718
1719 * loop.c (note_addr_stored): Correct function to take 2 arguments,
1720 instead of 1.
1721
1722 * rtl.def (MATCH_INSN2): Add new matching pattern.
b57062ca 1723 * genrecog.c (add_to_sequence): Support MATCH_INSN2.
693e265f 1724
27eef9ce
JC
1725Wed Apr 22 15:52:22 1998 John Carr <jfc@mit.edu>
1726
1727 * emit-rtl.c (gen_highpart): The high part of a CONST_INT is not zero
1728 if HOST_BITS_PER_WIDE_INT is larger than BITS_PER_WORD.
b57062ca 1729
27eef9ce
JC
1730 * final.c (split_double): Sign extend both halves of a split CONST_INT.
1731
d972dd33
JL
1732Wed Apr 22 10:42:45 1998 Jeffrey A Law (law@cygnus.com)
1733
1734 * mips.c (compute_frame_size): Change only argument to a HOST_WIDE_INT.
1735
5e5199e8
AM
1736Wed Apr 22 10:53:49 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
1737
1738 * cplus-dem.c (struct work stuff): Add field for B and K mangle codes.
1739 (cplus_demangle_opname): Call mop_up_squangle.
b57062ca 1740 (cplus_demangle): Initialize squangle info, then call
5e5199e8 1741 internal_cplus_demangle. (Most code moved there as well)
b57062ca 1742 (internal_cplus_demangle): New function, performs most of what use
5e5199e8
AM
1743 to be done in cplus_demangle, but is only called with this file.
1744 (squangle_mop_up): New function to clean up B and K code data.
1745 (mop_up): set pointers to NULL after freeing.
b57062ca 1746 (demangle_signature, demangle_template, demangle_class): Add
5e5199e8
AM
1747 switch elements to handle K and B codes.
1748 (demangle_prefix, gnu_special, demangle_qualified): Add
1749 code to handle K and B codes.
1750 (do_type, demangle_fund_type): Handle B and K codes.
1751 (remember_Ktype): New function to store K info.
1752 (register_Btype, remember_Btype): New functions for B codes.
1753 (forget_B_and_K_types): New function to destroy B and K info.
1754
0dacbd0e
JW
17551998-04-21 Jim Wilson <wilson@cygnus.com>
1756
1757 * stmt.c (check_seenlabel): When search for line number note for
1758 warning, handle case where there is no such note.
1759
4ceb7595
JC
1760Tue Apr 21 20:48:37 1998 John Carr <jfc@mit.edu>
1761
1762 * genemit.c (gen_exp): Allow machine description to set mode of
1763 MATCH_OP_DUP.
1764
d09c9385
JC
1765Tue Apr 21 16:36:01 1998 John Carr <jfc@mit.edu>
1766
1767 * alias.c (mode_alias_check): New function.
1768 (true_dependence, anti_dependence, output_dependence): Call
1769 mode_alias_check.
1770
1eeed24e
JL
1771Tue Apr 21 12:05:32 1998 Jeffrey A Law (law@cygnus.com)
1772
d1c17572
JL
1773 * mips.h (STACK_BOUNDARY): Allow specific targets to override.
1774 (MIPS_STACK_ALIGN): Similarly.
1775
a6d7e156
JL
1776 * c-common.c (type_for_mode): Handle TI types.
1777 * c-decl.c (intTI_type_node, unsigned_int_TI_type_node): Define.
1778 (init_decl_processing): Handle TI types.
1779 * c-tree.h (intTI_type_node, unsigned_int_TI_type_node): Declare.
1780
1eeed24e
JL
1781 * mips.c (block_move_loop): Test Pmode == DImode instead of
1782 TARGET_MIPS64.
1783 (expand_block_move, save_restore_insns): Likewise.
1784 (function_prologue, mips_expand_prologue): Likewise.
1785 (mips_expand_epilogue): Likewise.
1786 * mips.h (POINTER_SIZE): Allow specific targets to override.
1787 (Pmode): Allow specific targets to override.
1788 (FUNCTION_PROFILER): Test Pmode == DImode instead of TARGET_MIPS64
1789 (POINTER_BOUNDARY, FUNCTION_MODE): Likewise.
1790 (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE): Likewise.
1791 (TRAMPOLINE_ALIGNMENT, INITIALIZE_TRAMPOLINE): Likewise.
1792 (CASE_VECTOR_MODE, ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
1793 (ASM_OUTPUT_ADDR_DIFF_ELT, SIZE_TYPE, PTRDIFF_TYPE): Likewise.
1794 * mips.md (indirect, tablejump & casesi support): Test for
1795 Pmode == DImode instead of TARGET_MIPS64.
1796 (call patterns): Likewise.
1797
d2f5ef70
KG
1798Tue Apr 21 09:43:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1799
1800 * objc/sendmsg.c: Define gen_rtx_MEM() to 1, as is already done
1801 for gen_rtx(MEM, ...).
1802
cb85a2f3
RH
1803Tue Apr 21 02:15:36 1998 Richard Henderson <rth@cygnus.com>
1804
1805 * sparc.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Rewrite
1806 to not be so gross, and to properly function with PIC.
1807
bb27e6c9
JW
1808Mon Apr 20 20:44:25 1998 Jim Wilson <wilson@cygnus.com>
1809
99b13ed3
JW
1810 * frame.c (heapsort): Rename to frame_heapsort.
1811
bb27e6c9
JW
1812 * gcc.c (do_spec_1, case '['): Move flag out of loop and initialize it.
1813
a9a05945
DE
1814Mon Apr 20 12:43:09 1998 Doug Evans <devans@canuck.cygnus.com>
1815
1816 * flow.c (sbitmap_vector_alloc): Ensure sbitmaps properly aligned.
1817
dc0f0eb8
JW
1818Mon Apr 20 15:04:14 1998 John Wehle (john@feith.com)
1819
1820 * i386.md (movsf_push, movdf_push, movxf_push): Allow memory
1821 operands during and after reload.
1822
95707627
R
1823Mon Apr 20 22:37:50 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1824
ba70e85a
JR
1825 * final.c (shorten_branches, init_insn_lengths): Move code
1826 to free label_align, uid_shuid, insn_lengths, insn_addresses
1827 and uid_align from the former function into the latter one;
1828 Add code to clear these variables.
1829 * sh.h (label_align): Remove declaration.
95707627 1830
0cd355fe
MM
1831Mon Apr 20 14:48:29 1998 Michael Meissner <meissner@cygnus.com>
1832
763d7ce8
MM
1833 * gcc.c (lang_specific_driver): Declare prototype properly so
1834 fatal can be passed to it without error.
1835
f55b1ca8
MM
1836 * configure.in (AC_CHECK_FUNCS): Check for strchr and strrchr.
1837 * configure: Regenerate.
1838 * config.in: Add #undef's for strchr and strrchr.
1839
1840 * protoize.c (toplevel): If we have rindex, but not strrchr, map
1841 rindex to strrchr.
1842 (file_could_be_converted): Use strrchr, not rindex since rindex is
1843 not defined on Linux systems when _POSIX_SOURCE is defined.
1844 (file_normally_convertible): Ditto.
1845 (process_aux_info_file): Ditto.
1846 (main): Ditto.
1847
0cd355fe
MM
1848 * rs6000.md (mov{sf,df} define_splits): When splitting a move of
1849 a constant to an integer register, don't split the insns that do
1850 the simple AND and OR operations, rather just split each word, and
1851 let the normal movsi define split handle it further.
1852
a0798779
R
1853Mon Apr 20 18:19:40 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1854
1855 * sh.c (find_barrier): Fix bug in ADDR_DIFF_VEC handling.
1856 (split_branches): Call init_insn_lengths.
1857
ced8dd8c
MM
1858Mon Apr 20 07:37:49 1998 Michael Meissner <meissner@cygnus.com>
1859
1860 * i386.c: Include expr.h to get the change_address prototype
1861 declared.
b57062ca 1862
f37eb5cb
L
1863Mon Apr 20 01:00:05 1998 H.J. Lu (hjl@gnu.org)
1864
1865 * reg-stack.c (subst_asm_stack_regs): Change to return the last
1866 new insn generated by this function.
1867 (subst_stack_regs): Likewise.
1868 (convert_regs): Record the last newly generated insn and use
1869 it for change_stack () instead of INSN.
1870
49fb8382
MH
1871Sun Apr 19 15:41:24 1998 Manfred Hollstein <manfred@s-direktnet.de>
1872
1873 * fix-header.c (enum special_file): Undefine enumerators if they
1874 are already defined by include files.
1875 * fixproto (rel_source_file in unistd.h stdlib.h): Prefix file protection
1876 macro with '__' to not pollute user namespace.
1877
c6a754f2
RH
1878Sun Apr 19 02:42:06 1998 Richard Henderson <rth@cygnus.com>
1879
1880 * haifa-sched.c (queue_to_ready): Fix typo in prototype.
1881
399cc148
JL
1882Sat Apr 18 23:52:35 PDT 1998 Jeff Law (law@cygnus.com)
1883
1884 * version.c: Bump for snapshot.
1885
84b77fba
JW
1886Sat Apr 18 18:30:22 1998 Jim Wilson <wilson@cygnus.com>
1887
07415a17
JL
1888 * i386.md (fix_truncsfdi2+[123]): Add + to operand 1 constraints.
1889
84b77fba
JW
1890 * i386.h (CPP_CPU_DEFAULT): Renamed to CPP_CPU_DEFAULT_SPEC.
1891 Add missing -Dpentium* options.
1892 (CPP_CPU_SPEC): Delete redundant definition. Include cpp_cpu_default
1893 instead of CPP_CPU_DEFAULT.
1894 (EXTRA_SPECS): Add entry for cpp_cpu_default.
1895
db72d7a1
DE
1896Sat Apr 18 19:06:59 1998 David Edelsohn <edelsohn@mhpcc.edu>
1897
1898 * rs6000.md (floatsidf2_loadaddr): rs6000_fpmem_offset will be
1899 negative in a stackless frame.
1900 * rs6000.c (rs6000_stack_info): Don't include fixed-size link area
1901 in stackless frame size. Support 64-bit stackless frame size.
1902 Combine fpmem offset calculations and don't add total_size to
1903 offset if not pushing a stack frame.
1904
a1ecb5ca
JW
1905Sat Apr 18 15:41:16 1998 Jim Wilson <wilson@cygnus.com>
1906
1907 * regmove.c (fixup_match_1): In three places, in flag_exceptions
1908 check, change p to q.
1909
a2a05b0a
JW
1910Sat Apr 18 15:30:49 1998 Jim Wilson <wilson@cygnus.com>
1911
1912 * gcc.c (lang_specific_driver): Add new parm type to prototype.
1913 (added_libraries): New file scope static variable.
1914 (process_command): Initialize added_libraries. Pass it to
1915 lang_specific_driver.
1916 (main): Use added_libraries in check for no input files.
b57062ca 1917
284d86e9
JC
1918Sat Apr 18 01:23:11 1998 John Carr <jfc@mit.edu>
1919
1920 * sparc.c, sparc.h, sparc.md, sol2.h: Many changes related to V9
1921 code generation. Use 64 bit instructions in 32 bit mode when
1922 possible. Use V9 return instruction. UltraSPARC optimizations.
1923
1924 * sparc.h: Change gen_rtx (CODE to gen_rtx_CODE (.
1925
43be8193
JL
1926Fri Apr 17 22:38:17 1998 Jeffrey A Law (law@cygnus.com)
1927
ea8693a4
JL
1928 * global.c (global_alloc): Don't pass HARD_CONST (0) to find_reg,
1929 just pass zero. That will work regardless of the size of HARD_REG_SET.
1930
43be8193
JL
1931 * libgcc2.c (__floatdisf): Fix a couple typos.
1932
45df6aea
JW
1933Fri Apr 17 17:28:26 1998 Jim Wilson <wilson@cygnus.com>
1934
1935 * Makefile.in (mostlyclean): Delete *.mach and *.bp files.
1936
6cca74ab
GM
1937Fri Apr 17 16:35:35 1998 Greg McGary <gkm@gnu.org>
1938
1939 * emit-rtl.c (gen_highpart): initialize `word' properly for pseudo.
1940
77e6b0eb
JC
1941Fri Apr 17 14:30:37 1998 John Carr <jfc@mit.edu>
1942
1943 * emit-rtl.c (operand_subword_force): If a register can not be
1944 accessed by words, copy it to a pseudo register.
1945
27f4cfdb
JW
1946Fri Apr 17 14:30:37 1998 Jim Wilson <wilson@cygnus.com>
1947
1948 * rs6000/vxppc.h (CPP_SPEC): Add support for mrelocatable*.
1949
f4a73984
MM
1950Fri Apr 17 17:01:25 1998 Michael Meissner <meissner@cygnus.com>
1951
1952 * tree.h (mark_seen_cases): Delete declaration.
1953
00769100
JL
1954Fri Apr 17 13:32:20 1998 Jeffrey A Law (law@cygnus.com)
1955
1956 * stmt.c (mark_seen_cases): Make static and add prototype.
1957
2467749d
KG
1958Fri Apr 17 11:21:43 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1959
1960 * frame.c: Include stdlib.h and unistd.h to possibly get various
1961 function prototypes. The fixproto script guarantees these header
1962 files exist on the target system.
1963 * libgcc2.c: Likewise.
b57062ca 1964
2467749d
KG
1965 * gthr-single.h (__gthread_mutex_lock, __gthread_mutex_trylock,
1966 __gthread_mutex_unlock): Add __attribute__ ((__unused__)) to the
1967 function parameters.
1968 * libgcc2.c (__udiv_w_sdiv): Likewise.
1969
74c5186c
JL
1970Thu Apr 16 22:41:02 1998 Jeffrey A Law (law@cygnus.com)
1971
ac546323
JL
1972 * varasm.c (asm_output_bss): Add prototype.
1973 (asm_output_aligned_bss): Likewise.
1974
1975 * unroll.c (verify_addresses): Add prototype.
1976
1977 * toplev.c: Add many prototypes. Too many to mention here.
1978
1979 * stmt.c (check_seenlabel): Add prototype.
1980
1981 * rtlanal.c (reg_set_p_1): Add prototype.
1982 (reg_set_last_1): Likewise.
1983
1984 * reorg.c (find_dead_or_set_registers): Add prototype.
b57062ca 1985
ac546323
JL
1986 * regmove (try_auto_increment): Add prototype.
1987
1988 * reg-stack.c (pop_stack): Add prototype.
1989
1990 * recog.c (validate_replace_rtx_1): Add prototype.
1991 (find_cosntant_term_loc): Likewise.
1992
a777ae13
JL
1993 * loop.c (regs_patch_p): Add prototype.
1994 (add_label_notes, count_nonfixed_reads): Likewise.
1995 (find_single_use_in_loop): Likewise.
1996 (express_from): Surround prototype with #ifdef.
1997 (giv_sort): Similarly.
1998
1999 * jump.c (mark_modified_reg): Add prototype.
2000
2001 * haifa-sched.c (is_prisky): Add prototype.
2002 (queue_to_ready): Likewise.
2003
2004 * genextract.c (gen_insn): Add prototype.
2005
2006 * genemit.c (max_operand_1): Add prototype.
2007 (max_operand_vec, print_code, gen_exp, gen_insn): Likewise.
2008 (gen_expand, gen_explit, output_add_clobbers): Likewise.
2009 (output_init_mov_optab): Likewise.
2010
2011 * genattrtab.c (attr_hash_add_rtx): Add prototype.
2012 (attr_hash_add_string, write_length_unit_log): Likewise.
2013
2014 * genattr.c (init_range): Add prototype.
2015
2016 * combine.c (sets_function_arg_p): Add prototype.
2017
2018 * expr.c (store_constructor_field): Add prototype.
2019 (get_memory_usage_from_modifier): Likewise
2020
2021 * expmed.c (synth_mult): Add prototype.
2022 (choose_multiplier, invert_mod2n): Likewise.
2023
242c13b0
JL
2024 * except.c (push_eh_entry): Add prototype.
2025 (pop_eh_entry, enqueue_eh_entry, dequeu_eh_entry): Likewise.
2026 (call_get_eh_context, start_dynamic_cleanup): Likewise.
2027 (start_dynamic_handler, can_throw): Likewise.
2028 (output_exception_table_entry, scan_region): Likewise.
2029 (eh_regs, set_insn_eh_region): Likewise.
2030
1ad4f46b
JL
2031 * dwarfout.c (decl_class_context): Add prototype.
2032 (output_inheritance_die, type_ok_for_scope): Likewise.
2033
e822c593
JL
2034 * c-lex.c (skip_white_space_on_line): Add prototype.
2035
70fec650
JL
2036 * alias.c (record_set): Add prototype.
2037 (find_base_term, base_alias_check): Likewise.
b57062ca 2038
1ac4f799
JL
2039 * function.c (assign_outer_stack_local): Make static and add prototype.
2040
a2e68776
JL
2041 * haifa-sched.c (build_control_flow): Accept raw data as inputs
2042 instead of computing it locally. Callers changed.
2043 (find_rgns): Several new arguments. Callers changed.
2044 Generally clean up and comment better. Use dominators to
2045 identify reducible loops. Convert some flag arrays to bitmaps.
2046 Convert most of the code to work on pred/succ lists instead of
2047 an edge table. Add comments for future improvements.
2048 (schedule_insns): Allocate temporary tables for flow data, call
2049 routines to compute flow data and pass it along to children as
2050 arguments.
2051 (debug_control_flow): Delete. Use dump_bb_data instead.
2052
97b1ef1c
JL
2053 * basic-block.h (compute_dominators): Declare.
2054
74c5186c
JL
2055 * flow.c (dump_sbitmap, dump_sbitmap_vector): New debugging
2056 functions.
2057 * basic-block.h: Declare them.
2058
7ce55772
JW
2059Thu Apr 16 13:45:51 1998 Jim Wilson <wilson@cygnus.com>
2060
2061 * reg-stack.c (constrain_asm_operands): Set n_alternatives to zero if
2062 no operands.
2063
e88caebd
APB
2064Wed Apr 15 11:33:09 1998 Alexandre Petit-Bianco <apbianco@sendai.cygnus.com>
2065
2066 * tree.c (build_expr_wfl): Use NULL_TREE if the file name is NULL.
2067 Propagate TREE_SIDE_EFFECTS and TREE_TYPE iff the encapsulated
2068 node is non NULL. Cache last file name and file name identifier node.
2069
a62e870c
MM
20701998-04-15 Mark Mitchell <mmitchell@usa.net>
2071
2072 * c-common.c (declare_hidden_char_array): Use TYPE_DOMAIN to get
2073 the length of an array, not TREE_TYPE.
2074
5e89e58b
JL
2075Wed Apr 15 15:31:34 1998 Jeffrey A Law (law@cygnus.com)
2076
2077 * flow.c (sbitmap_union_of_successors): New function.
2078 * basic-block.h (sbitmap_union_of_successors): Declare it.
2079
df6faf79
JW
2080Wed Apr 15 12:38:03 1998 Jim Wilson <wilson@cygnus.com>
2081
2082 * configure.in (gnu_ld): Rename to gnu_ld_flag before main loop.
2083 Set gnu_ld to gnu_ld_flag inside main loop.
2084 (gas): Likewise.
2085
5c60e5c0
DB
2086Wed Apr 15 14:50:05 1998 Dave Brolley <brolley@cygnus.com>
2087
2088 * toplev.c (compile_file): Call init_parse using new interface.
2089 (init_lex): Remove declaration.
2090
2091 * c-lex.c (init_parse): Now returns char* containing filename.
2092
2872409d
JL
2093Wed Apr 15 12:37:10 1998 Jeffrey A Law (law@cygnus.com)
2094
2095 * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Do nothing if not optimizing.
2096
4db83042
MM
2097Wed Apr 15 12:10:18 1998 Michael Meissner <meissner@cygnus.com>
2098
2099 * Makefile.in (gen{config,flags,codes,emit}): Link in host print-rtl.o.
2100 (gen{extract,peep,opinit,output}): Ditto.
2101
2102 * gen{attr,codes,config,emit,output}.c (insn_attr_name): Provide a
2103 global definition so print-rtl.o can be linked in.
2104 * gen{peep,recog}.c (insn_attr_name): Ditto.
2105
9aeba741
RP
2106Tue Apr 14 07:30:57 1998 K. Richard Pixley <rich@kyoto.noir.com>
2107
2108 * fixincludes: discard empty C++ comments, as found in sys/time.h
2109 on hpux-11.0.
2110
7878eae7
AS
2111Wed Apr 15 10:47:21 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2112
2113 * config/m68k/m68k.md (adddi3, subdi3): Optimize for constant
2114 operand.
2115
fcb7cb6c
JL
2116Wed Apr 15 01:21:21 1998 Jeffrey A Law (law@cygnus.com)
2117
2118 * emit-rtl.c (operand_subword): Rework slightly to avoid
2119 bogus warning from previous change.
2120
47747e53
RH
2121Tue Apr 14 23:39:13 1998 Richard Henderson <rth@cygnus.com>
2122
2123 * alpha.md: Revert Oct 27 change, as it is superceeded by Kenner's
2124 Nov 8 find_replacement change. Move decls of get_unaligned_address
2125 * alpha.h: ... here.
2126
8450a694
JC
2127Tue Apr 14 22:00:39 1998 John Carr <jfc@mit.edu>
2128
7940255d
JC
2129 * function.c (assign_parms): Initialize unsignedp before passing
2130 its pointer to promote_mode.
2131
8450a694
JC
2132 * genattrtab.c (check_attr_test): Handle MATCH_INSN like MATCH_OPERAND.
2133 (write_test_expr): Allow MATCH_INSN.
2134
c70afde1
PE
2135Tue Apr 14 21:57:57 1998 Paul Eggert <eggert@twinsun.com>
2136
2137 * install.texi: Update section on warnings that can be safely ignored.
2138
cf877a42
JW
2139Tue Apr 14 14:55:16 1998 Jim Wilson <wilson@cygnus.com>
2140
2141 * mips.md (reload_outdi): Change the scratch mode from DImode to
2142 TImode. New variable scratch, used instead of operand[2] in template.
2143 Add code for MIPS16 HILO_REGNUM case where output reg is not M16_REG_P.
2144
996d9dac
MM
2145Tue Apr 14 16:19:03 1998 Michael Meissner <meissner@cygnus.com>
2146
2147 * expr.c (MOVE_RATIO): Set to 3 if optimizing for space.
2148
de2d990f
KW
2149Tue Apr 14 11:31:28 1998 Krister Walfridsson <cato@df.lth.se>
2150
2151 * i386/bsd386.h (ASM_OUTPUT_ALIGN): Redefine.
2152
d5daf098
JL
2153Tue Apr 14 09:02:32 1998 Jeffrey A Law (law@cygnus.com)
2154
6862dfac
JL
2155 * svr4.h (ASM_DECLARE_OBJECT_NAME): Use HOST_WIDE_INT_PRINT_DEC.
2156 (ASM_FINISH_DECLARE_OBJECT): Likewise.
2157
b7cb92ad
JL
2158 * Idea and part of the patch from HJ.
2159 * Makefile.in: auto-host.h renamed from auto-config.h. All references
2160 changed.
2161 (distclean): Remove auto-build.h too.
2162 * configure.in: Rename host autoconf generated file to auto-host.h.
2163 If host != build, then run autoconf to generate auto-build.h for
2164 the build machine and include it in build_xm_files.
2165 Check for wait.h and sys/wait.h.
2166
d5daf098
JL
2167 * combine.c (simplify_rtx, case TRUNCATE): Respect value of
2168 TRULY_NOOP_TRUNCATION.
2169
7d02bbef
JM
2170Mon Apr 13 11:31:49 1998 Jason Merrill <jason@yorick.cygnus.com>
2171
2172 * tree.h (BINFO_OFFSET_ZEROP): Use integer_zerop.
2173
4754172c
CM
2174Sun Apr 12 20:55:32 1998 Catherine Moore <clm@cygnus.com>
2175
2176 * invoke.texi (ld options) Include memset requirements
2177 for options -nodstdlib and -nodefaultlibs.
2178
bb72a084
PE
21791998-04-12 Paul Eggert <eggert@twinsun.com>
2180
2181 This change is from an idea suggested by Arthur David Olson.
2182
2183 * c-common.c (decl_attributes, record_function_format,
2184 check_format_info, init_function_format_info):
2185 Add support for strftime format checking.
2186 (enum format_type): New type.
2187 (record_function_format): Now static, and takes value of type
2188 enum format_type instead of int.
2189 (time_char_table): New constant.
2190 (struct function_format_info): format_type member renamed from is_scan.
2191 (check_format_info): Use `warning' rather than sprintf followed by
2192 `warning', to avoid mishandling `%' in warnings.
2193 Change `pedwarn' to `warning', since these warnings do not necessarily
2194 mean the program does not conform to the C Standard, as the code
2195 need not be executed.
2196
2197 * c-tree.h (record_function_format): Remove decl; no longer extern.
2198
2199 * extend.texi: Add documentation for strftime format checking.
2200
1be12a4a
JL
2201Sun Apr 12 20:23:03 1998 Jeffrey A Law (law@cygnus.com)
2202
71922625
JL
2203 * mips/ecoffl.h: Do not include mips.h.
2204 * mips/elf.h: Likewise.
2205
1be12a4a
JL
2206 * configure.in (mips-*-ecoff): Do not mention mips/mips.h in tm_files.
2207 * mips/ecoff.h: Include "mips/mips.h".
2208
9fe69077
JL
2209Sat Apr 11 22:42:54 PDT 1998 Jeff Law (law@cygnus.com)
2210
2211 * version.c: Bump for snapshot.
2212
c6a26dc4
JL
2213Sat Apr 11 01:24:28 1998 Jeffrey A Law (law@cygnus.com)
2214
2215 * cse.c (count_reg_usage): Correctly handle REG_NONNEG notes.
2216 (delete_trivially_dead_insns): Renamed from delete_dead_from_cse.
2217 * toplev.c (rest_of_compilation): Call delete_trivially_dead_insns instead of delete_dead_from_cse. Also call delete_trivially_dead_insns
2218 between loop optimization passes.
2219 * rtl.h: Updated appropriately.
2220
bbb81923
JL
2221Fri Apr 10 22:28:32 1998 Jeffrey A Law (law@cygnus.com)
2222
2223 Reinstall this patch from Jason.
2224 * function.c (push_function_context_to): Don't call init_emit.
2225
29cb1e1f
NC
2226Fri Apr 10 13:40:20 1998 Nick Clifton <nickc@cygnus.com>
2227
2228 * rtl.c (read_skip_spaces): Prevent infinite loops upon
2229 encountering unterminated comments.
2230
3f518020
JL
2231Fri Apr 10 10:43:41 1998 Jeffrey A Law (law@cygnus.com)
2232
2233 * emit-rtl.c (operand_subword): Properly handle CONST_INTs for
2234 64x32 cross builds.
4b104d6e
JL
2235
2236 * configure.in: Handle --with-fast-fixincludes.
2237 (fixincludes): If --with-fast-fixincludes, then use a different
2238 fixincludes program by default.
2239 * Makefile.in (fixinc.sh): New rule.
2240
b76c90cf
L
2241Fri Apr 10 00:36:31 1998 H.J. Lu (hjl@gnu.org)
2242
2243 * i386.md (movqi+1): Handle invalid QI register.
2244 (movsf_push-1): Likewise.
2245
2e076ddf
NC
2246Thu Apr 9 16:53:59 1998 Nick Clifton <nickc@cygnus.com>
2247
2248 * config/m32r/m32r.c: call_address_operand(): Only accept symbolic
2249 addresses.
2250 symbolic_memort_operand(), call32_operand(), int8_operand(),
2251 int16_operand(), uint24_operand(), reg_or_int8_operand(): Removed.
2252 Not used.
2253 uint16_operand(): Made static.
2254
b1d6ccb8
JL
2255Thu Apr 9 01:43:04 1998 Jeffrey A Law (law@cygnus.com)
2256
2257 * calls.c (expand_call): Fix typo.
2258
e56e519d
DB
2259Thu Apr 9 00:18:44 1998 Dave Brolley (brolley@cygnus.com)
2260
2261 * c-lex.c (finput): New global.
2262 (init_parse): Always included. Handle !USE_CPPLIB using
2263 code originally in compile_file.
2264 (finish_parse): Update for CPPLIB.
2265 * toplev.c (init_parse, finish_parse): Declare.
2266 (finput): Delete variable. Now in front-ends.
2267 (compile_file): Remove code which is now handled by init_parse
2268 which is unconditionally called. Similarly for finish_parse.
2269
85d7aed9
GK
2270Wed Apr 8 23:13:50 1998 Gavin Koch <gavin@cygnus.com>
2271
2272 * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK,
2273 ASM_WEAKEN_LABEL): Add.
2274
574badbc
RH
2275Wed Apr 8 18:21:30 1998 Richard Henderson <rth@cygnus.com>
2276
2277 * alpha/crtbegin.asm, alpha/crtend.asm, alpha/t-crtb: New files.
2278 * configure.in (alpha-*-linux*): Use them.
2279
bf1e5319 2280Fri Apr 3 17:02:13 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
b57062ca 2281
bf1e5319
APB
2282 * tree.def (EXPR_WITH_FILE_LOCATION): New tree node definition.
2283 * tree.h (EXPR_WFL_{NODE,FILENAME,FILENAME_NODE,LINENO,
2284 COLNO,LINECOL,SET_LINECOL,EMIT_LINE_NOTE}): New macros.
2285 (build_expr_wfl): New prototype declaration.
2286 * tree.c (build_expr_wfl): New function, to build
2287 EXPR_WITH_FILE_LOCATION nodes.
2288 (copy_node): Don't zero TREE_CHAIN if copying a
2289 EXPR_WITH_FILE_LOCATION node.
2290 * print-tree.c (print_node): Handle EXPR_WITH_FILE_LOCATION.
2291 * expr.c (expand_expr): Handle EXPR_WITH_FILE_LOCATION.
2292
ee5254ff
JL
2293Wed Apr 8 12:51:19 1998 Jeffrey A Law (law@cygnus.com)
2294
62db76ee
JL
2295 * configure.in (v850): Use t-v850.
2296 (ix86-wrs-vxworks): Recognize 786 just like other x86 configurations.
2297
10a998b0
JL
2298 * protoize.c (creat, read, write): Do not declare.
2299
e105f02c
JL
2300 * jump.c (mark_jump_label): Record REG_LABEL notes for insns which
2301 refer to the CODE_LABEL before a dispatch table.
2302
56b2d7a7
JL
2303 * invoke.texi: Add ARC options.
2304
c74c0cff
JL
2305 * gcc.c (proces_command): Improve error message for -o with
2306 either -c or -S.
2307
2d58da15
JL
2308 * i386/x-cygwin32 (CLIB): Link in advapi32.
2309
40ef2fc5
JL
2310 * alpha.h (ASM_IDENTIFY_GCC): Define to nothing.
2311 (ASM_IDENTIFY_LANGUAGE): Likewise.
2312
df89b5e7
JL
2313 * i386.md (movqi recognizer): Don't perfom byte increment into
2314 a NON_QI_REG_P.
2315
f09ff199
JL
2316 * configure.in (x86-dg-dgux): Run fixinc.dgux.
2317
df89b5e7 2318 * i370.h: Fix typo in GEN_INT changes.
f962b99f 2319
c3709629
JL
2320 * bitmap.c (bitmap_element_allocate): Use "void" for arglist instead
2321 of an empty arglist in prototype.
2322
ee5254ff
JL
2323 * Makefile.in: Remove bytecode crud that crept back in after the
2324 gcc2 merge.
2325
0806342b
BK
23261998-04-08 Brendan Kehoe <brendan@cygnus.com>
2327
2328 * c-lex.h (is_class_name): Fix arg type to be tree, not void.
2329 (make_pointer_declarator, reinit_parse_for_function): Fix typo.
2330
6f734908
RE
2331Wed Apr 8 06:16:45 1998 Richard Earnshaw (rearnsha@arm.com)
2332
2333 * arm.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
2334
56c0e996
BS
2335Wed Apr 8 00:44:18 1998 Bernd Schmidt (crux@pool.informatik.rwth-aachen.de>
2336
2337 * c-lex.c (is_class_name): Delete declaration.
2338 (whitespace_cr): Make static and add prototype.
2339 * c-lex.h (make_pointer_declarator, reinit_parse_for_function,
2340 yylex, get_directive_line): Turn declarations into prototypes.
2341 (position_after_whitespace, check_newline, yyerror,, is_class_name,
2342 forget_protocol_qualifiers, remember_protocol_qualifiers): Add
2343 prototypes.
2344 * genattr.c (extend_range, write_upcase, gen_attr, write_units): Add
2345 prototypes.
2346 * gencodes.c (gen_insn): Add prototype.
2347 * genconfig.c (walk_insn, gen_insn, gen_expand, gen_split,
2348 gen_peephole): Add prototypes.
2349 * genflags.c (num_operands, gen_proto, gen_nonproto, gen_insn): Add
2350 prototypes.
2351 * gengenrtl.c (type_from_format, accessor_from_format, special_rtx,
2352 special_format, find_formats, gendecl, genmacro, gendef, genlegend,
2353 genheader, gencode): Add prototypes.
2354 * genopinit.c (gen_insn): Add prototype.
2355 * genoutput.c (output_prologue, output_epilogue, scan_operands,
2356 process_template, validate_insn_alternatives, gen_insn, gen_peephole,
2357 gen_expand, gen_split, n_occurrences): Add prototypes.
2358 * genpeep.c (gen_peephole): Add prototype.
2359 * loop.c (find_and_verify_loops, mark_loop_jump, prescan_loop,
2360 reg_in_basic_block_p, consec_sets_invariant_p, libcall_other_reg,
2361 labels_in_range_p, count_loop_regs_set, note_addr_stored,
2362 loop_reg_used_before_p, scan_loop, replace_call_address,
2363 skip_consec_insns, libcall_benefit, ignore_some_movables,
2364 force_movables, combine_movables, rtx_equal_for_loop_p, move_movables,
2365 strength_reduce, valid_initial_value_p, find_mem_givs, record_biv,
2366 check_final_value, record_giv, update_giv_derive, basic_induction_var,
2367 simplify_giv_expr, general_induction_var, consec_sets_giv,
2368 check_dbra_loop, express_from, combine_givs_p, combine_givs,
2369 product_cheap_p, maybe_eliminate_biv, maybe_eliminate_biv_1,
2370 last_use_this_basic_block, record_initial, update_reg_last_use,
2371 iteration_info, analyze_loop_iterations, insert_bct,
2372 instrument_loop_bct, indirect_jump_in_function_p): Turn declarations
2373 into prototypes.
2374
cc46ae8e
JL
2375Tue Apr 7 21:48:52 1998 Jeffrey A Law (law@cygnus.com)
2376
2377 * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
2378
e7d075bf
KR
23791998-04-07 Ken Raeburn <raeburn@cygnus.com>
2380
2381 * config/mips/mips.c (siginfo): Deleted.
2382 (override_options): Don't install SIGINFO signal handler.
2383
668d07be
JW
2384Tue Apr 7 11:58:04 1998 Jim Wilson <wilson@cygnus.com>
2385
2386 * loop.c (check_dbra_loop): When normalize comparison_val, add check
2387 to verify it is non-negative.
2388
cd36edbd
RH
2389Tue Apr 7 02:01:47 1998 Richard Henderson <rth@cygnus.com>
2390
2391 * alpha.c (alpha_expand_block_move): Correctly collect block offsets.
2392 (alpha_expand_block_clear): Likewise.
2393
e814ca97
RH
2394Mon Apr 6 23:36:01 1998 Richard Henderson <rth@cygnus.com>
2395
2396 * tree.h (sizetype_tab): Fix previous change for K&R.
2397
f1d9e6d2
JL
2398Mon Apr 6 22:23:29 PDT 1998 Jeff Law (law@cygnus.com)
2399
2400 * version.c: Bump for snapshot.
2401
22ec3928
RE
2402Mon Apr 6 23:16:10 1998 Richard Earnshaw (rearnsha@arm.com)
2403
2404 * configure.in (sparc-*-solaris2*): Add xm-siglist.h to xm_file.
2405 Add USG and POSIX to xm_defines.
2406
10da1131
BM
2407Mon Apr 6 21:49:57 1998 Bob Manson <manson@charmed.cygnus.com>
2408
2409 * gcc.c: Add linker spec.
2410 (link_command_spec): Use %(linker) instead of ld.
2411 (main): If collect2 is requested as the linker, see if it exists;
2412 if not, use ld instead.
2413
2414 * Makefile.in (USE_COLLECT2): It's named collect2 now, not ld.
2415 (ld:) Deleted.
2416 (install-collect2): Install as collect2, not ld.
2417
2418 * configure.in(will_use_collect2): It's named collect2 now.
2419
2420 * collect2: Remove checks to see if we were invoked recursively.
2421 (collect_execute): Use _spawnvp under cygwin32.
2422
a8afd67b
JW
2423Mon Apr 6 17:23:41 1998 Jim Wilson <wilson@cygnus.com>
2424
2425 * haifa-sched.c (build_control_flow): Set unreachable for block whose
2426 only predecessor is itself.
2427
944fc8ab
KG
2428Mon Apr 6 16:08:04 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2429
2430 * c-parse.in: Include system.h, and remove stuff now made redundant.
2431 * cccp.c: Likewise.
2432 * cexp.y: Likewise.
2433 * protoize.c: Likewise. Properly check for cpp stringification.
2434
2435 * Makefile.in (c-parse.o, cccp.o, cexp.o, protoize.o, unprotoize.o):
b57062ca 2436 Depend on system.h.
944fc8ab
KG
2437
2438 * objc/Make-lang.in (objc-parse.o): Likewise.
2439
3286ab57
KG
2440Mon Apr 6 14:59:58 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2441
2442 * gansidecl.h: Check if compiler supports __attribute__. Provide
2443 definitions for ATTRIBUTE_UNUSED and ATTRIBUTE_PRINTF using
2444 __attribute__ when its available. Also provide definitions for
2445 ATTRIBUTE_PRINTF_1, ATTRIBUTE_PRINTF_2 and ATTRIBUTE_PRINTF_3 in
2446 terms of ATTRIBUTE_PRINTF.
b57062ca 2447
3286ab57
KG
2448 * genoutput.c (process_template): Use ATTRIBUTE_UNUSED in place
2449 of __attribute__.
2450
d276f2bb
CM
2451Mon Apr 6 07:17:52 1998 Catherine Moore <clm@cygnus.com>
2452
2453 * combine.c (can_combine_p): Include successor in volatile test.
2454
64ad9df2
R
2455Mon Apr 6 14:16:33 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2456
2457 * sh.h (CASE_VECTOR_SHORTEN_MODE): Fix logic when to set
2458 offset_unsigned.
2459
dc544d2c
JL
2460Mon Apr 6 02:03:29 1998 Jeffrey A Law (law@cygnus.com)
2461
2462 * objc/objc-act.c (encode_aggregate_within): Avoid GNU extensions
2463 in prototype and definition.
b57062ca 2464
38c413cd
JL
2465Mon Apr 6 00:48:56 PDT 1998 Jeff Law (law@cygnus.com)
2466
2467 * version.c: Bump for snapshot.
2468
59dd0a31
RH
2469Mon Apr 6 00:08:50 1998 Richard Henderson <rth@cygnus.com>
2470
b57062ca 2471 * alpha.c (alpha_expand_block_clear): Add missing offset arg to
59dd0a31
RH
2472 alpha_expand_unaligned_store_words.
2473
f31fce3f
JW
2474Sun Apr 5 21:31:24 1998 John Wehle (john@feith.com)
2475
2476 * i386.md (movsf_push, movsf_mem): Remove.
2477 (movsf_push): Rename from movsf_push_nomove and move in front of
2478 movsf. Use nonmemory_operand predicate and don't bother checking
2479 TARGET_MOVE.
2480 (movsf_push_memory): New pattern.
2481 (movsf): Don't bother checking for push_operand. If TARGET_MOVE and
2482 both operands refer to memory then force operand[1] into a register.
2483 (movsf_normal): Change to unnamed pattern.
2484 Likewise for movdf, movxf, and friends.
2485
27ebc03e
JL
2486Sun Apr 5 18:45:51 PDT 1998 Jeff Law (law@cygnus.com)
2487
2488 * version.c: Bump for snapshot.
2489
6ecd4e53 2490Sun Apr 5 16:31:10 1998 Richard Henderson <rth@cygnus.com>
98bd9f0f 2491
6ecd4e53 2492 * configure.in (alpha-dec-osf*): Match osf1.3 correctly.
98bd9f0f 2493
b57062ca 2494Sun Apr 5 16:53:37 1998 Don Bowman <don@pixsci.com>
ac08ebd0 2495
6ecd4e53 2496 * configure.in (mips-wrs-vxworks): New target.
ac08ebd0 2497
6ecd4e53 2498Sat Apr 4 23:34:32 PST 1998 Jeff Law (law@cygnus.com)
f4a788ac 2499
f3978531
JL
2500 * expmed.c (synth_mult): The value -1, has no zeros, so it can
2501 never have the form ...011.
2502
f4a788ac
JL
2503 * version.c: Bump for snapshot.
2504
5cb6195d
RH
2505Sat Apr 4 20:16:46 1998 Richard Henderson <rth@cygnus.com>
2506
2507 * i386.c (asm_output_function_prefix, load_pic_register):
2508 Use ASM_GENERATE_INTERNAL_LABEL properly.
2509 (output_pic_addr_const): Recognize %X to supress any PIC sym suffix.
2510 (print_operand): Ignore it.
2511 (load_pic_register): Use it for the got load call.
2512 * i386.md (prologue_set_got, prologue_get_pc): Likewise.
2513 (prologue_get_pc_and_set_got): Likewise.
2514 * i386.h: Update print_operand docs.
2515
ce193852
RH
2516Sat Apr 4 19:08:37 1998 Richard Henderson <rth@cygnus.com>
2517
2518 * i386.md (ffssi, ffshi): Rewrite as define_expands.
2519 (ffssi_1, ffshi_1): New (unspec [] 5) support patterns.
2520 * i386.c (notice_update_cc): Recognize unspec 5.
2521
0022a940
DMT
2522Sat Apr 4 18:07:16 1998 David Mosberger-Tang (davidm@mostang.com)
2523
2524 * alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Accept '(' for s/sv/svi.
2525 * alpha.c (print_operand): Handle it.
2526 * alpha.md (fix_truncsfdi2): Use it. Add earlyclobber pattern
2527 for ALPHA_TP_INSN.
2528 (fix_truncdfdi2): Likewise.
2529
896cced4
RH
2530Sat Apr 4 17:42:05 1998 Richard Henderson <rth@cygnus.com>
2531
2532 * tree.h (sizetype_tab[2], sbitsizetype, ubitsizetype): Merge all
2533 of these into a single struct, with additional [us]sizetype entries.
2534 * stor-layout.c (set_sizetype): Initialize [us]sizetype.
2535 * fold-const.c (size_int_wide): Don't rely on sizetype_tab being
2536 an array.
2537
8983c716
RH
2538Sat Apr 4 17:04:41 1998 Richard Henderson <rth@cygnus.com>
2539
2540 * configure.in (alpha-*-linux-*): Undo tm_file changes from gcc2 merge.
2541
4ed43ff8
RH
2542Sat Apr 4 13:50:01 1998 Richard Henderson <rth@cygnus.com>
2543
2544 * haifa-sched.c (split_block_insns): Don't supress insn splitting
2545 on subsequent passes.
2546
2547 * alpha.c (hard_fp_register_operand): New function.
2548 * alpha.h (PREDICATE_CODES): Add it.
2549 * alpha.md (extendsidi2): Kill bogus f<-f cvtql+cvtlq case. Add an
2550 f<-m case and accompanying define_split.
2551 (trapb): Use a unique unspec_volatile number.
2552
8e7bc3cd
RH
2553Sat Apr 4 13:32:08 1998 Richard Henderson <rth@cygnus.com>
2554
2555 * configure.in (alpha-*-linux-gnu*): Undo Feb 3 change brought in
2556 from gcc2 merge.
2557
e5e809f4
JL
2558Sat Apr 4 10:23:41 1998 Jeffrey A Law (law@cygnus.com)
2559
2560 * Check in merge from gcc2. See ChangeLog.11 and ChangeLog.12
2561 for details.
2562
2563 * haifa-sched.c: Mirror recent changes from gcc2.
2564
516c2342
JL
2565Fri Apr 3 00:17:01 1998 Jeffrey A Law (law@cygnus.com)
2566
e9eaed43
JL
2567 * Makefile.in (insn*.o): Depend on system.h.
2568
516c2342
JL
2569 * pa.c (output_global_address): Initialize base.
2570 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Initialize index.
2571
7cc34889
MS
25721998-04-03 Mike Stump <mrs@wrs.com>
2573
2574 * gthr.h: Support systems that don't have weak, but have threads.
2575 * configure.in (*wrs-vxworks*): Use VxWorks threads by default.
2576 * gthr-vxworks.h: New file.
2577 * objc/thr-vxworks.h: Dummy file from thr-single.c for now.
2578
52c18286
JW
2579Thu Apr 2 18:00:52 1998 Jim Wilson <wilson@cygnus.com>
2580
2581 * i386.md (movqi+1): Change alternative 1 from *r/r to *r/*rn.
2582
c1ac292d
VM
25831998-04-02 Vladimir N. Makarov <vmakarov@cygnus.com>
2584
2585 * ginclude/va-i960.h (va_end): Change void * to void.
2586
4cb1caaf
KG
2587Thu Apr 2 13:51:10 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2588
2589 * Makefile.in (choose-temp.o): Depend on system.h.
2590
2591 * choose-temp.c: Include system.h when IN_GCC.
2592
a9a2595b
JR
2593Thu Apr 2 02:37:07 1998 Joern Rennecke (amylaar@cygnus.co.uk)
2594 Richard Henderson <rth@cygnus.com>
2595
2596 * reload.c (find_reloads_address): Try LEGITIMIZE_RELOAD_ADDRESS.
2597 (move_replacements): New function.
2598 * reload.h: Prototype it.
b57062ca 2599
a9a2595b 2600 * alpha.h (LEGITIMIZE_RELOAD_ADDRESS): New definition.
b57062ca 2601
79363e2f
RH
2602Thu Apr 2 01:01:34 1998 Richard Henderson <rth@cygnus.com>
2603
2604 * configure (alpha-*-linuxecoff, alpha-*-linux-gnulibc1):
2605 Run fixincludes.
2606
4901a643
RH
2607 * emit-rtl.c (gen_lowpart_common): Skip count by HARD_REGNO_NREGS.
2608 (gen_highpart): Likewise.
ce4d78eb
RH
2609 * final.c (alter_subreg): Allow the target to hook by-mode subreg
2610 hard register number changes.
b57062ca 2611
715f9c99
JL
2612Wed Apr 1 22:26:22 1998 Jeffrey A Law (law@cygnus.com)
2613
4e86caed
JL
2614 * fold-const.c optimze_bit_field_compare): Initialize rnbitpos,
2615 rnbitsize, rnmode and rinner.
2616 (make_range): Initialize type.
2617 (fold): Initialize arg0, arg1 and varop.
2618
2619 * function.c (instantiate_virtual_regs_1): Initialize offset, regnoi
2620 and regnor.
2621 (expand_function_start): Initialize last_ptr.
2622
2623 * stor-layout.c (layout_record): Initialize desired_align.
2624 (get_best_mode): Initialize unit.
2625
2626 * tree.c (copy_node): Initialize length.
2627
aefdd5ab
JL
2628 * c-lex.c (yylex): Initialize traditional_type, ansi_type and type.
2629
2630 * caller-save.c (insert_save_restore): Initialize pat, code and
2631 numregs.
2632
2633 * emit-rtl.c (push_to_sequence): Initialize top.
2634 (push_topmost_sequence): Likewise.
2635
2636 * genattrtab.c (simplify_by_exploding): Initialize defval.
2637
2638 * profile.c (branch_prob): Initialize dest.
2639
2640 * rtl.h (note_stores): Remove duplicate prototype.
2641 (GEN_INT): Re-instate cast of second arg to HOST_WIDE_INT.
2642
2643 * cplus-dem.c (gnu_special): Don't get confused by .<digits>
2644 strings that are not actually lengths.
2645
729da3f5
JL
2646 * genattrtab.c: Make generated file use system.h, instead of
2647 including stdio.h, etc directly.
2648 * genextract.c, genopinit.c, genoutput.c: Likewise.
2649 * genpeep.c, genrecog.c: Likewise
2650
2651 * genoutput.c (process_template): Mark operands in the generated
2652 function as potentially unused if compiling with GNU CC.
2653
2a8034f8
JL
2654 * i386/freebsd-elf.h (CPP_PREDEFINES): Update from FreeBSD folks.
2655
715f9c99
JL
2656 * pa.md (reload peepholes): Remove unused variable "mode".
2657
75d3a15b
NC
2658Wed Apr 1 17:06:19 1998 Nick Clifton <nickc@cygnus.com>
2659
2660 * config/arm/thumb.h: Add super interworking support.
2661 * config/arm/thumb.c: Add super interworking support.
2662 * config/arm/thumb.md: Add super interworking support.
75d3a15b
NC
2663 * config/arm/lib1funcs.asm: Add interworking support.
2664 * config/arm/lib1thumb.asm: Add super interworking support.
75d3a15b
NC
2665 * config/arm/t-semi: Add interworking support.
2666 * config/arm/t-thumb: Add interworking support.
75d3a15b 2667 * config/arm/README-interworking: New file.
b57062ca 2668
63959c22
JW
2669Wed Apr 1 14:38:10 1998 Jim Wilson <wilson@cygnus.com>
2670
2671 * config/mips/iris6.h (MD_EXEC_PREFIX): Set to /usr/bin/.
2672 (MD_STARTFILE_PREFIX): Unset.
2673
c651e1e0
MM
26741998-04-01 Mark Mitchell <mmitchell@usa.net>
2675
2676 * varasm.c (make_decl_rtl): Update the DECL_ASSEMBLER_NAME for a
2677 entity in a local scope.
2678
2679 * fold-const.c (fold): Call truthvalue_conversion for values which
2680 are folded to boolean type.
2681
3a598fbe
JL
2682Wed Apr 1 06:09:53 1998 Jeffrey A Law (law@cygnus.com)
2683
2684 * 1750a.md, arm.c, clipper.c, clipper.md: Use GEN_INT consistently.
2685 * convex.h, dsp16xx.c, fx80.md, gmicro.c, gmicro.md: Likewise.
2686 * i370.h, i370.md, i860.c, i860.h, i860.md, i960.c: Likewise.
2687 * i960.h, i960.md, m32r.md, m68k.md, m68kv4.h, m88k.c: Likewise.
2688 * m88k.md, ns32k.c, ns32k.md, pdp11.c, pdp11.h, pdp11.md: Likewise.
2689 * pyr.c, pyr.h, pyr.md, romp.c, romp.h, romp.md: Likewise.
2690 * rs6000.md, sparc.c, sparc.h, sparc.md, spur.c, spur.md: Likewise.
2691 * tahoe.md, vax.h, vax.md, we32k.c, we32k.h, we32k.md: Likewise.
2692 * md.texi: Likewise.
2693
b5026c50
MH
2694Wed Apr 1 08:33:44 1998 Manfred Hollstein <manfred@s-direktnet.de>
2695
2696 * fixincludes (limits.h): Fix nested comments in Motorola's
2697 limits.h and sys/limits.h.
2698
c8d86b9a
JW
2699Tue Mar 31 16:57:33 1998 Jim Wilson <wilson@cygnus.com>
2700
1a7cb241
JW
2701 * alpha.c (alpha_expand_unaligned_load): Use tgt instead of addr
2702 as dest of expand_binop call.
2703
221a9f65
JW
2704 * alpha.md (extzv): Correct check for valid operand[2] values.
2705
a7ebd547
JW
2706 * profile.c (branch_prob): Add code to recognize HPPA tablejump entry
2707 branch.
2708
c8d86b9a
JW
2709 * toplev.c (rest_of__compilation): Call init_recog_no_volatile at end.
2710
97be8f06
SC
2711Mon Mar 30 13:11:05 1998 Stan Cox <scox@cygnus.com>
2712
2713 * libgcc2.c: (__main, __do_global_dtors, __do_global_ctors):
2714 For __CYGWIN32__ use the versions in winsup/dcrt0.cc.
b57062ca 2715
97be8f06
SC
2716 * gcc.c, cccp.c, cpplib.c, collect2.c (GET_ENVIRONMENT): Added.
2717 cygwin32 can override this to allow both unix and win32 style PATHs.
2718
2719 * i386/xm-cygwin32.h (GET_ENVIRONMENT): Defined to allow win32
2720 style environment paths.
b57062ca 2721
b04cd507
KG
2722Mon Mar 30 14:43:20 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2723
2724 * Makefile.in (cppalloc.o, cpperror.o, cppexp.o, cpphash.o,
2725 cpplib.o, cppmain.o, fix-header.o, gcov.o, gen-protos.o,
2726 gengenrtl.o, halfpic.o, hash.o, scan-decls.o, scan.o): Depend on
2727 system.h.
b57062ca 2728
b04cd507
KG
2729 * cpphash.c: Include config.h.
2730 * cppalloc.c: Include system.h. Add parameters to various
2731 function prototypes.
2732 * cpperror.c: Likewise.
2733 * cppexp.c: Likewise.
2734 * cpphash.c: Likewise.
2735 * cpplib.c: Likewise.
2736 * cppmain.c: Likewise.
2737 * fix-header.c: Likewise.
2738 * gcov.c: Likewise.
2739 * gen-protos.c: Likewise.
2740 * gengenrtl.c: Likewise.
2741 * halfpic.c: Likewise.
2742 * hash.c: Likewise.
2743 * scan-decls.c: Likewise.
2744 * scan.c: Likewise.
2745
1aa5d112
JW
2746Mon Mar 30 11:06:45 1998 Jim Wilson <wilson@cygnus.com>
2747
2748 * README.gnat: Add lang_print_xnode definition.
2749
e18db50d
AS
2750Mon Mar 30 11:12:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2751
2752 * config/m68k/m68k.c (standard_68881_constant_p): Don't use
2753 fmovecr on the 68060.
2754
c0d45032
JL
2755Mon Mar 30 00:21:03 1998 Jeffrey A Law (law@cygnus.com)
2756
2757 * genemit.c (DONE): Rework so that it works in the true arm if
2758 an if-else conditional.
2759 (FAIL): Likewise.
2760
31ed227b
JL
2761Sun Mar 29 12:45:23 1998 Jeffrey A Law (law@cygnus.com)
2762
c3670418
JL
2763 * rs6000.c: Do not include stdioh or ctype.h anymore.
2764
234042f4
JL
2765 * Makefile.in (c-typeck.o): Delete on expr.h, insn-codes.h and
2766 $(RTL_H).
2767 (stor-layout.o): Likewise.
2768 * c-typeck.c: Include rtl.h and expr.h.
2769 * stor-layout.c: Likewise.
2770
72e19470
JL
2771 * cpplib.c (cpp_file_line_for_message): Delete unused parameter.
2772 All callers changed.
2773 (do_sccs): Wrap in an SCCS_DIRECTIVE ifdef.
2774 * fix-header.c (cpp_file_line_for_message): Delete unused paramter.
2775 All callers changed.
2776
40c3a857
JL
2777 * collect2.c (is_in_list): Wrap inside COLLECT_EXPORT_LIST ifdef.
2778
c80150b7
JL
2779 * local-alloc.c (reg_classes_overlap_p): Delete dead function.
2780
31ed227b
JL
2781 * tree.h (lang_print_xnode): Provide prototype.
2782
fe776296
JL
2783Sat Mar 28 23:50:44 PST 1998 Jeff Law (law@cygnus.com)
2784
2785 * version.c: Bump for snapshot.
2786
f1b03ce1
JL
2787Sun Mar 29 00:42:21 1998 Jeffrey A Law (law@cygnus.com)
2788
3ac2735b
JL
2789 * objc/sendmsg.c (__objc_block_forward): Add braces for return
2790 value if INVISIBLE_STRUCT_RETURN.
2791
f2b147f7
JL
2792 * pa.c (arith_double_operand): Fix parens.
2793
c4fa3460
JL
2794 * haifa-sched.c (print_pattern): Correct arg to sprintf.
2795
f1b03ce1
JL
2796 * Makefile.in (libgcc1.null): Make return type for __foo void.
2797
2e61a5a5
JL
2798Sat Mar 28 14:37:20 1998 Jeffrey A Law (law@cygnus.com)
2799
ba0b8436
JL
2800 * pa.h: Add declarations for many functions defined in pa.c.
2801
67ac5957
JL
2802 * genpeep.c (main): Remove unused variable 'i' from the generated
2803 file.
2804
c38d8c5b
JL
2805 * genemit.c (gen_expand): Do not emit "_done" or "_fail" labels.
2806 (gen_split): Likewise.
2807 (main): Rework generated definitions of DONE and FAIL so that they
2808 no longer use gotos. Avoids warnings about unused labels.
2809
d6e6c585
JL
2810 * integrate.c (copy_rtx_and_substitute): Rework to avoid need for
2811 unused "junk" variable.
2812
2e61a5a5
JL
2813 * genattrtab.c (write_complex_function): Add a default case in
2814 generated switch statement to keep -W -Wall quiet.
2815
0b26e56d
NC
2816Sat Mar 28 10:47:21 1998 Nick Clifton <nickc@cygnus.com>
2817
157a620e
NC
2818 * invoke.texi: Document more ARM and Thumb command line options.
2819
0b26e56d
NC
2820 * config/arm/xm-thumb.h: New file.
2821
600a4ce7
CB
2822Sat Mar 28 01:37:33 1998 Craig Burley <burley@gnu.ai.mit.edu>
2823
2824 * stmt.c (expand_expr_stmt): Must generate code for
2825 statements within an expression (gcc's `({ ... )}')
2826 even if -fsyntax-only.
2827
4d1d8045
BS
2828Sat Mar 28 01:06:12 1998 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
2829 Jeffrey A Law (law@cygnus.com)
2830
2831 * basic-block.h (basic_block_computed_jump_target): Declare.
2832 * flags.h: (current_function_has_computed_jump): Declare.
2833 * flow.c: (basic_block_computed_jump_target): Define.
2834 (flow_analysis): Allocate it. Set current_function_has_computed_jump
2835 to 0.
2836 (find_basic_blocks): Set current_function_has_computed_jump and
2837 elements of basic_block_computed_jump_target to 1 as appropriate.
2838 * function.c: (current_function_has_computed_jump): Define.
2839 * global.c (global_conflicts): Don't allocate pseudos into stack regs
2840 at the start of a block that is reachable by a computed jump.
2841 * reg-stack.c (stack_reg_life_analysis): If must restart, do so
2842 immediately.
2843 (subst_stack_regs): Undo change from Sep 4 1997.
2844 (uses_reg_or_mem): Now unused, deleted.
2845 * stupid.c (stupid_life_analysis): Compute
2846 current_function_has_computed_jump.
2847 (stupid_find_reg): Don't allocate stack regs if the function has a
2848 computed goto.
2849 * haifa-sched.c (is_cfg_nonregular): Delete code to determine if
2850 the current function has a computed jump. Use the global value
2851 instead.
2852
56f28b73
JL
2853Sat Mar 28 00:21:37 1998 Jeffrey A Law (law@cygnus.com)
2854
2855 * i386/freebsd.h (CPP_PREDEFINES): Remove __386BSD__.
2856 (DWARF2_UNWIND_INFO): Define to zero.
2857
6ed4bb9a
MM
2858Fri Mar 27 16:04:49 1998 Michael Meissner <meissner@cygnus.com>
2859
2860 * gcc.c (set_std_prefix): Add declaration.
2861 (process_command): If GCC_EXEC_PREFIX is set, remove /lib/gcc-lib/
2862 suffix, and update the standard prefix prefix.c uses.
2863
2864 * prefix.c (std_prefix): New global to hold default prefix value.
2865 (get_key_value): Change to use std_prefix instead of PREFIX.
2866 (translate_name): Ditto.
2867 (update_path): Ditto.
2868 (get_key_value): Release allocated scratch storage.
2869 (set_std_prefix): New function to reset the standard prefix.
2870
1f3fa20e
R
2871Fri Mar 27 18:08:21 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2872
7daa142b 2873 * sh.c (find_barrier): Fix calculations for alignment increase.
1f3fa20e 2874
d8a0154e
MH
2875Fri Mar 27 08:56:52 1998 Manfred Hollstein <manfred@s-direktnet.de>
2876
2877 * Makefile.in (stmp-fixinc): If we're actually fixing include
2878 files, copy gcc's assert.h into the fixed include dir.
2879 * fixincludes (assert.h): Avoid any attempts to fix a probably
2880 broken system specific assert.h file.
2881 * fixproto (stdlib.h): Make sure, it'll contain a definition of
2882 size_t.
2883
64d3b4ca
JL
2884Fri Mar 27 00:49:46 1998 Jeffrey A Law (law@cygnus.com)
2885
2886 * regclass.c (reg_scan_mark_refs): Be more selective about
2887 when we mark a register with REGNO_POINTER_FLAG.
2888
e6e52be0
R
2889Thu Mar 26 23:00:11 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2890
2891 reload inheritance improvement:
2892 * reload1.c (reg_reloaded_contents, reg_reloaded_insn):
2893 Change meaning: index is now hard reg number.
2894 (reg_reloaded_valid, reg_reloaded_dead): New variables.
2895 (reload_spill_index): Content is now a hard reg number.
2896 (reload_as_needed): Change to fit new variable meaning.
2897 (forget_old_reloads_1, allocate_reload_reg): Likewise.
2898 (choose_reload_regs, emit_reload_insns): Likewise.
2899
812f2051
R
2900Thu Mar 26 18:34:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2901
2902 * regclass.c (record_reg_classes): '?' increases cost by two.
2903
2904 * reload.c (find_reloads): Double previous costs. Output
2905 reloads cost one unit extra.
2906
2907 * reload1.c (eliminate_regs): Delete LOAD_EXTENDED_OP code that
2908 boiled down to && ! 0.
2909
2910 * reload.c (find_equiv_reg): Also consider a goal offset from the
2911 frame pointer to be constant.
2912
04d02ece
R
2913Thu Mar 26 17:34:46 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2914
2915 * sh.h (OPTIMIZATION_OPTIONS): Define.
2916
6f28d3e9
RH
2917Thu Mar 26 00:19:47 1998 Richard Henderson <rth@cygnus.com>
2918
2919 * combine.c (make_compound_operation): Simplify (subreg (*_extend) 0).
2920
b09fa787
JL
2921Wed Mar 25 23:53:11 1998 Jeffrey A Law (law@cygnus.com)
2922
2923 * pa.c (pa_adjust_cost): Avoid redundant calls to get_attr_type.
2924
a16b4c9c
JW
2925Wed Mar 25 13:40:48 1998 Jim Wilson <wilson@cygnus.com>
2926
2927 * c-common.c (check_format_info): Initialize type, is_type. New local
2928 integral_format. Don't warn for 'L' when pedantic. Do warn for 'L'
2929 when pedantic if used with integral format specifier.
2930
c4d38ccb
MM
2931Wed Mar 25 16:09:01 1998 Michael Meissner <meissner@cygnus.com>
2932
2933 * rs6000.h (FUNCTION_ARG_PADDING): Cast result to be enum
2934 direction.
2935 (function_arg_padding): Declare.
2936
2937 * rs6000.c: Include system.h.
2938 (function_arg_padding): Change return type to int, cast enum's to
2939 int.
2940
2941 (From Kaveh R. Ghazi <ghazi@caip.rutgers.edu>)
2942 * collect2.c (scan_prog_file): Add explicit braces to avoid
2943 ambiguous `else'.
b57062ca 2944
c4d38ccb
MM
2945 * dbxout.c (dbxout_type_fields): Add braces around empty body in
2946 an if-statement.
2947 (dbxout_type): Likewise.
b57062ca 2948
c4d38ccb
MM
2949 * rs6000.c (rs6000_override_options): Change type of `i', `j' and
2950 `ptt_size' from int to size_t.
2951 (rs6000_file_start): Likewise for `i'.
2952 (rs6000_replace_regno): Add default case in enumeration switch.
2953 (output_epilog): Remove unused variable `i'.
2954 (rs6000_longcall_ref): Remove unused variables `len', `p', `reg1'
2955 and `reg2'.
b57062ca 2956
c4d38ccb
MM
2957 * rs6000.h (ADDITIONAL_REGISTER_NAMES): Add missing braces around
2958 initializer.
2959 (get_issue_rate, non_logical_cint_operand): Add prototype.
2960 (rs6000_output_load_toc_table): Ditto.
b57062ca 2961
c4d38ccb
MM
2962 * rs6000.md (udivmodsi4): Add explicit braces to avoid ambiguous
2963 `else'.
b57062ca 2964
e98e406f
NC
2965Wed Mar 25 10:05:19 1998 Nick Clifton <nickc@cygnus.com>
2966
2967 * config/arm/thumb.c: New File. Support for ARM's Thumb
b57062ca 2968 instruction set.
e98e406f
NC
2969 * config/arm/thumb.h: New File. Thumb definitions.
2970 * config/arm/thumb.md: New File. Thumb machine description.
2971 * config/arm/tcoff.h: New File. Thumb COFF support.
2972 * config/arm/t-thumb: New File. Thumb makefile fragment.
2973 * config/arm/lib1thumb.asm: New File. Thumb libgcc support functions.
2974
2975 * configure.in: Add Thumb-coff target.
2976 * configure: Add Thumb-coff target.
2977 * config.sub: Add Thumb-coff target.
2978
8cf619da
JW
2979Wed Mar 25 10:30:32 1998 Jim Wilson <wilson@cygnus.com>
2980
2981 * loop.c (scan_loop): Initialize move_insn_first to zero.
2982
fe0714d3
JS
2983Wed Mar 25 01:06:49 1998 Joel Sherrill (joel@OARcorp.com)
2984
2985 * config/i386/go32-rtems.h: Defined TARGET_MEM_FUNCTIONS.
2986 * config/i386/rtems.h: Likewise.
2987 * config/i960/rtems.h: Likewise.
2988 * config/m68k/rtems.h: Likewise.
2989 * config/mips/rtems64.h: Likewise.
2990 * config/pa/rtems.h: Likewise.
2991 * config/rs6000/rtems.h: Likewise.
2992 * config/sh/rtems.h: Likewise.
2993 * config/sparc/rtems.h: Likewise.
2994
428be702
RK
2995Wed Mar 25 00:57:26 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2996
2997 * pa.c (emit_move_sequence): If in reload, call find_replacement.
2998
ae8c5963
NC
2999Tue Mar 24 10:44:11 1998 Nick Clifton <nickc@cygnus.com>
3000
2ea9a965
NC
3001 * Makefile.in (gcov$(exeext)): Support .exe extension to gcov.
3002
ae8c5963
NC
3003 * collect2.c (find_a_file): Add debugging.
3004 (find_a_file): Test for win32 style absolute paths if
3005 DIR_SERPARATOR is defined.
3006 (prefix_from_string): Add debugging.
3007 (main): Test for debug command line switch at start of program
b57062ca 3008 execution.
ae8c5963 3009 (main): Use GET_ENVIRONMENT rather than getenv().
72cf6902
NC
3010 (prefix_from_env): Use GET_ENVIRONMENT.
3011
050367a3
MM
30121998-03-24 Mark Mitchell <mmitchell@usa.net>
3013
3014 * cplus-dem.c (optable): Add sizeof.
3015 (demangle_template_value_parm): New function containing code
3016 previously found in demangle_template.
b57062ca 3017 (demangle_integral_value): New function which handles complicated
050367a3
MM
3018 integral expressions.
3019 (demangle_template): Use them.
3020
0b93b64e
KG
3021Tue Mar 24 12:13:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3022
3023 * Makefile.in (genconfig.o, genflags.o, gencodes.o, genemit.o,
3024 genopinit.o, genrecog.o, genextract.o, genpeep.o, genattr.o,
3025 genattrtab.o, genoutput.o): Depend on system.h.
b57062ca 3026
0b93b64e
KG
3027 * genattr.c: Include system.h. Add arguments to various function
3028 prototypes. Remove redundant prototype of read_rtx().
3029 * genattrtab.c: Likewise.
3030 * gencodes.c: Likewise.
3031 * genconfig.c: Likewise.
3032 * genemit.c: Likewise.
3033 * genextract.c: Likewise.
3034 * genflags.c: Likewise.
3035 * genopinit.c: Likewise.
3036 * genoutput.c: Likewise.
3037 * genpeep.c: Likewise.
3038 * genrecog.c: Likewise.
3039
bc289659
ML
30401998-03-24 Martin von Loewis <loewis@informatik.hu-berlin.de>
3041
3042 * c-lang.c (lang_print_xnode): New function.
3043 * objc/objc-act.c (lang_print_xnode): Likewise.
3044 * print-tree.c (print_node): Call it
3045
990ac8d7
L
3046Mon Mar 23 23:59:11 1998 H.J. Lu (hjl@gnu.org)
3047
3048 * c-parse.in: Recognize protocol qualifiers in class
3049 definitions for objc.
3050 Include "output.h".
3051 (yyerror): Remove redundant decl.
3052 (yyprint): Fix prototype.
3053
65d98182
JL
3054Mon Mar 23 23:49:47 1998 Jeffrey A Law (law@cygnus.com)
3055
47a0b68f
JL
3056 * cse.c (rtx_cost): Only call CONST_COSTS if it is defined.
3057
65d98182
JL
3058 * stmt.c (unroll_block_trees): Free block_vector if needed.
3059
3cac0a21
PDM
3060Mon Mar 23 23:26:42 1998 Philippe De Muyter <phdm@macqel.be>
3061
4b8bef1d
PDM
3062 * m68k/m68k.md (zero_extendqidi2, zero_extendhidi2): New patterns.
3063 (zero_extendsidi2): Avoid useless copy.
3064 (iordi_zext): New pattern.
3065 (iorsi_zexthi_ashl16): Pattern reworked to avoid "0" constraint for
3066 operand 2.
3067 (iorsi_zext): New name for old unnamed pattern; indentation fixes.
3068
3cac0a21
PDM
3069 * m68k/m68k.md (ashldi_const): Allow shift count in range ]32,63].
3070 (ashldi3): Allow constant shift count in range ]32,63].
3071 (ashrdi_const, ashrid3, lshrdi_const, lshrdi3): Likewise.
3072
4da05956
MM
30731998-03-22 Mark Mitchell <mmitchell@usa.net>
3074
3075 * tree.h (IS_EXPR_CODE_CLASS): New macro.
3076
545f2aab
JL
3077Mon Mar 23 23:18:48 1998 Jeffrey A Law (law@cygnus.com)
3078
3079 * h8300.h (CONST_COSTS): Remove definition.
3080 (DEFAULT_RTX_COSTS): Define.
3081
eef15f9f
JS
3082Mon Mar 23 22:58:22 1998 Joel Sherrill (joel@OARcorp.com)
3083
3084 * config/sh/rtems.h: Switched from ELF to COFF.
3085
4bca6986
R
3086Mon Mar 23 14:14:20 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3087
3088 * freebsd.h (ASM_OUTPUT_ALIGN): Redefine.
3089
8ca77a11
JL
3090Sat Mar 21 23:52:56 PST 1998 Jeff Law (law@cygnus.com)
3091
3092 * version.c: Bump for snapshot.
3093
e09e14e9
NC
3094Sun Mar 22 00:50:42 1998 Nick Clifton <nickc@cygnus.com>
3095 Geoff Noer <noer@cygnus.com>
3096
3097 * Makefile.in: Various fixes for building cygwin32 native toolchains.
3098
35d541d4
NC
3099 * objc/Makefile.in: Various fixes for building cygwin32 native toolchains.
3100 * objc/Make-lang.in: Likewise.
3101
4a0cf2aa
NC
3102 * config/i386/xm-cygwin32.h (PATH_SEPARATOR): Set to a semi-colon.
3103
535b86ce
G
3104Sun Mar 22 00:21:46 1998 R. Ganesan <rganesan@novell.com>
3105
3106 * configure.in: Handle with-PACKAGE=no correctly
3107
670ee920
KG
3108Fri Mar 20 17:36:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3109
3110 * Makefile.in (alias.o, bitmap.o, c-aux-info.o, c-common.o,
3111 c-decl.o, c-iterate.o, c-lang.o, c-lex.o, c-pragma.o, c-typeck.o,
3112 caller-save.o, calls.o, collect2.o, combine.o, cse.o, dbxout.o,
3113 dwarf2out.o, dwarfout.o, emit-rtl.o, except.o, explow.o, expmed.o,
3114 expr.o, final.o, flow.o, function.o, getpwd.o, global.o,
3115 integrate.o, jump.o, local-alloc.o, loop.o, optabs.o, pexecute.o,
3116 prefix.o, print-rtl.o, print-tree.o, profile.o, real.o, recog.o,
3117 reg-stack.o, regclass.o, regmove.o, reload.o, reload1.o, reorg.o,
3118 rtl.o, rtlanal.o, sdbout.o, stmt.o, stor-layout.o, stupid.o,
3119 tlink.o, toplev.o, tree.o, unroll.o, varasm.o, xcoffout.o): Depend
3120 on system.h.
3121
3122 * alias.c, bitmap.c, c-aux-info.c, c-common.c, c-decl.c,
3123 c-iterate.c, c-lang.c, c-lex.c, c-pragma.c, c-typeck.c,
3124 caller-save.c, calls.c, collect2.c, combine.c, cse.c, dbxout.c,
3125 dwarf2out.c, dwarfout.c, emit-rtl.c, except.c, explow.c, expmed.c,
3126 expr.c, final.c, flow.c, function.c, gcc.c, getpwd.c, global.c,
3127 integrate.c, jump.c, local-alloc.c, loop.c, optabs.c, pexecute.c,
3128 prefix.c, print-rtl.c, print-tree.c, profile.c, real.c, recog.c,
3129 reg-stack.c, regclass.c, regmove.c, reload.c, reload1.c, reorg.c,
3130 rtl.c, rtlanal.c, sched.c, sdbout.c, stmt.c, stor-layout.c,
3131 stupid.c, tlink.c, toplev.c, tree.c, unroll.c, varasm.c,
3132 xcoffout.c: Include system.h. Organize include ordering so
3133 that stdarg/varargs comes before other system headers. Remove
3134 spurious casts of functions assured of a prototype in system.h.
3135
7aa74e4c
SC
3136Fri Mar 20 11:19:40 1998 Stan Cox <scox@equinox.cygnus.com>
3137
3138 * reg-stack.c (pop_stack): Define. Pops any register on the
3139 regstack and adjusts regstack.
3140 (compare_for_stack_reg): Use pop_stack.
b57062ca 3141
d005a5a4
JL
3142Thu Mar 19 23:51:01 1998 Jeffrey A Law (law@cygnus.com)
3143
3144 * configure.in (hppa1.0-hp-hpux10): Handle threads for this
3145 config too.
3146
ba3ad5e0
PDM
3147Thu Mar 19 20:30:31 1998 Philippe De Muyter <phdm@macqel.be>
3148
09b4ce12
PDM
3149 * libgcc2.c (exit): Do not call __bb_exit_func if HAVE_ATEXIT.
3150
ba3ad5e0
PDM
3151 * fold-const.c (fold): Replace sign-extension of a zero extended
3152 value by a single zero extension.
3153
6e1f1f93
JM
3154Thu Mar 19 00:58:07 1998 Jason Merrill <jason@yorick.cygnus.com>
3155
3156 * except.c (init_eh): Do nothing.
3157 (save_eh_status): Call init_eh_for_function, not init_eh.
3158 * function.c (push_function_context_to): Don't call init_emit.
3159
838b0e4e
MM
3160Thu Mar 19 13:39:52 1998 Michael Meissner <meissner@cygnus.com>
3161
3162 * rs6000/sysv4.h (RELATIVE_PREFIX_NOT_LINKDIR): Undef for System V
3163 and EABI.
3164
ecb06768
KG
3165Thu Mar 19 10:10:36 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3166
3167 * final.c (shorten_branches): Add parentheses around +/- in
3168 operand of &.
3169
3170 * flow.c (life_analysis): Wrap variable `i' in macro ELIMINABLE_REGS.
3171
dfba7a1b
MH
3172Thu Mar 19 09:15:17 1998 Manfred Hollstein <manfred@s-direktnet.de>
3173
3174 * regclass.c (memory_move_secondary_cost): Wrap uses of
3175 SECONDARY_INPUT_RELOAD_CLASS and SECONDARY_OUTPUT_RELOAD_CLASS
3176 with #ifdef tests.
3177
4faca093
MH
3178Thu Mar 19 09:06:35 1998 Manfred Hollstein <manfred@s-direktnet.de>
3179
3180 * config/m68k/m68k.md (addqi3): Fix typo gen_INT vs. GEN_INT.
3181
3182 * flow.c (life_analysis): #include <sys/types.h> to make sure
3183 size_t is defined.
3184 * cplus-dem.c (demangle_function_name): Likewise.
3185
af7da199
MH
3186Thu Mar 19 09:00:01 1998 Manfred Hollstein <manfred@s-direktnet.de>
3187
3188 * final.c (insn_noperands): Change type to unsigned int.
3189 (final_scan_insn): Likewise for noperands;
3190 properly check operand number boundaries.
3191
10a25232
RH
3192Wed Mar 18 16:20:30 1998 Richard Henderson <rth@cygnus.com>
3193
3194 * alpha.md (extzv): Don't reject register operands. Fix
3195 mode of operand 1.
3196
99d1a24c
RH
3197Wed Mar 18 16:14:23 1998 Richard Henderson <rth@cygnus.com>
3198
3199 * dbxout.c (dbxout_function_end): Fix last change. The correct
3200 predicate is ASM_OUTPUT_SECTION_NAME.
3201
5bac82c5
JW
3202Wed Mar 18 12:43:20 1998 Jim Wilson <wilson@cygnus.com>
3203
3204 * sh.md (ashlsi_c-1): Delete 3rd argument to gen_ashlsi_c.
3205 (ashlsi): Use match_dup 1 instead of match_operand 2.
3206
52de9b6c
RK
3207Wed Mar 18 13:46:07 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3208
3209 * fold-const.c (operand_equal_for_comparison_p): See if equal
3210 when nop conversions are removed.
3211
7c00d1fe
RK
3212Wed Mar 18 13:42:01 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3213
3214 * expr.c (expand_expr, case COND_EXPR): If have conditional move,
3215 don't use ORIGINAL_TARGET unless REG.
3216
343665b9
R
3217Wed Mar 18 16:53:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3218
3219 * netbsd.h (ASM_OUTPUT_ALIGN): Redefine.
3220
1a61c29f
JW
3221Wed Mar 18 12:43:20 1998 Jim Wilson <wilson@cygnus.com>
3222
3223 * loop.c (struct movable): New field move_insn_first.
3224 (scan_loop): In consec sets code, set it. Clear it otherwise.
3225 (move_movables): In consec sets code, use it. Copy REG_NOTES from
3226 p to i1 only if i1 does not have REG_NOTES. Delete obsolete ifdefed
3227 out code.
3228
cbe36725
RH
3229Wed Mar 18 09:52:56 1998 Richard Henderson <rth@cygnus.com>
3230
3231 * rtl.c (read_rtx): Fall back on homebrew atoll if HOST_WIDE_INT
3232 is large, and the system doesn't provide atoll or atoq.
b57062ca 3233 (atoll): New.
cbe36725
RH
3234
3235 * alpha/xm-vms.h (HAVE_ATOLL): Define.
3236 Reported by Klaus Kaempf <kkaempf@progis.de>.
b57062ca 3237
081f5e7e
KG
3238Wed Mar 18 09:56:26 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3239
3240 * c-lang.c (finish_file): Wrap variable `void_list_node' with macro
3241 test !ASM_OUTPUT_CONSTRUCTOR || !ASM_OUTPUT_DESTRUCTOR.
3242
3243 * calls.c (emit_call_1): Wrap variable `already_popped' with macro
b57062ca 3244 test !ACCUMULATE_OUTGOING_ARGS.
081f5e7e
KG
3245
3246 * collect2.c (write_c_file_glob): Wrap function definition in
3247 macro test !LD_INIT_SWITCH.
3248
3249 * combine.c (try_combine): Wrap variables `cc_use' and
3250 `compare_mode' in macro test EXTRA_CC_MODES.
3251
3252 * cpplib.c (do_ident): Remove unused variable `len'.
3253 (skip_if_group): Remove unused variables `at_beg_of_line' and
3254 `after_ident'.
3255 (cpp_get_token): Remove unused variable `dummy'.
3256
3257 * dbxout.c (scope_labelno): Move static variable definition inside
3258 the one function scope where it is used.
3259 (dbxout_function_end): Wrap prototype and definition in
3260 macro test !NO_DBX_FUNCTION_END.
3261
3262 * dwarf2out.c (add_subscript_info): Wrap variable `dimension_number'
3263 in macro test !MIPS_DEBUGGING_INFO.
3264
3265 * expr.c (expand_builtin_setjmp): Move declaration of variable `i'
3266 into the scope where it is used. Wrap empty else-statement body
3267 in braces.
3268
3269 * fix-header.c: Fix typo in comment.
3270 (inf_skip_spaces): Cast results of INF_UNGET to (void).
3271 (check_protection, main): Likewise.
3272
3273 * flow.c (find_basic_blocks_1): Remove dangling comment text.
3274
3275 * function.c (contains): Wrap prototype and definition in macro
3276 test HAVE_prologue || HAVE_epilogue.
3277 (fixup_var_refs_1): Remove unused variable `width'.
3278
3279 * gen-protos.c (main): Remove unused variable `optr'.
3280
3281 * haifa-sched.c (debug_control_flow): Remove unused variable `j'.
3282
3283 * libgcc2.c (__udiv_w_sdiv): Provide dummy return value of 0.
3284 (__sjpopnthrow): Remove unused variable `jmpbuf'.
3285 (__throw): Remove unused variable `val'.
3286
3287 * protoize.c: Check for a previously existing definition before
b57062ca 3288 defining *_OK macros.
081f5e7e
KG
3289
3290 * scan-decls.c (scan_decls): Remove unused variable `old_written'.
3291
76ce4776
R
3292Tue Mar 17 00:45:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3293
3294 * vax.h (ADDR_VEC_ALIGN): Define.
3295
e29ef920
MM
3296Mon Mar 16 15:57:17 1998 Michael Meissner <meissner@cygnus.com>
3297
3298 * gcc.c (default_arg): Don't wander off the end of allocated
3299 memory.
3300
dbf55e53
MM
3301 (From Geoffrey Keating <geoffk@ozemail.com.au>)
3302 * rs6000.c (small_data_operand): Ensure that any address
b57062ca 3303 referenced relative to the small data area is inside the SDA.
dbf55e53 3304
883482b2 3305Mon Mar 16 12:55:15 1998 Jim Wilson <wilson@cygnus.com>
b57062ca 3306
883482b2
JW
3307 * config/m68k/netbsd.h (ASM_SPEC): Add %{m68060}.
3308
9ad82ff8 3309Mon Mar 16 15:50:20 EST 1998 Andrew MacLeod <amacleod@cygnus.com>
a0b61d14
AM
3310
3311 * except.h (in_same_eh_region): New prototype.
3312 (free_insn_eh_region, init_insn_eh_region): New prototypes.
3313 * except.c (insn_eh_region, maximum_uid): New static variables.
3314 (set_insn_eh_region): New static function to set region numbers.
3315 (free_insn_eh_region): New function to free EH region table.
3316 (init_insn_eh_region): New function to initialize EH region table.
3317 (in_same_eh_region): New function used to determine if two rtl
3318 instructions are in the same exception region or not.
3319 * final.c (final): Initialize the table indicating which instructions
3320 belong in which exception region.
3321 * genpeep.c (main): Add "except.h" to include file list in generated
b57062ca
UD
3322 file insn-peep.c.
3323 * config/sparc/sparc.md: Add calls to 'in_same_eh_region' in 4
3324 peepholes involving calls and unconditional branches.
a0b61d14 3325
66bd0128
JW
3326Mon Mar 16 11:16:50 1998 Jim Wilson <wilson@cygnus.com>
3327
3328 * README.gnat: New file.
3329
1d8eaa6b
AS
3330Mon Mar 16 11:14:20 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3331
3332 * config/m68k/m68k.c: Include <stdlib.h> for atoi. Include
3333 "recog.h" for offsettable_memref_p.
3334 (legitimize_pic_address): Remove unused variable `offset'.
3335 (notice_update_cc): Change return type to void. Add default label
3336 to switch.
3337 (standard_68881_constant_p): Remove unused variable mode.
3338 (print_operand): Define local variable i only if SUPPORT_SUN_FPA.
3339 (const_int_cost): Explicitly declare as returning int.
3340 (output_dbcc_and_branch): Change return type to void.
3341
3342 * config/m68k/linux.h, config/m68k/m68k.md, config/m68k/m68k.c,
3343 config/m68k/m68k.h: Replace gen_rtx (XXX, ...) with gen_rtx_XXX
3344 (...). Use GEN_INT instead of gen_rtx_CONST_INT.
3345
60ba47b4
JL
3346Sun Mar 15 22:30:44 PST 1998 Jeff Law (law@cygnus.com)
3347
3348 * version.c: Bump for snapshot.
3349
68137318
AS
3350Fri Mar 13 11:30:12 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3351
3352 * config/m68k/m68k.h (CONST_OK_FOR_LETTER_P): Fix logic in range
3353 check for 'M' constraint.
3354
7a50f126
JW
3355Thu Mar 12 14:47:14 1998 Jim Wilson <wilson@cygnus.com>
3356
3357 * cccp.c (create_definition): If pedantic, call pedwarn for macro
3358 varargs feature.
3359
57dbca5e
BS
3360Thu Mar 12 13:43:25 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
3361
3362 * i386.c (ix86_logical_operator): New function.
3363 (split_di): Ensure that when a MEM is split, the resulting MEMs have
3364 SImode.
3365 * i386.md (anddi3, xordi3, iordi3): New patterns. Add a define_split
3366 to implement them.
3367
8625fab5
KG
3368Thu Mar 12 15:13:16 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3369 Richard Earnshaw <rearnsha@arm.com>
3370 Nick Clifton <nickc@cygnus.com>
b57062ca 3371
8625fab5 3372 * tm.texi (DEFAULT_RTX_COSTS): Document new macro.
b57062ca 3373
8625fab5 3374 * arm.h (DEFAULT_RTX_COSTS): Define instead of RTX_COSTS.
b57062ca 3375
8625fab5
KG
3376 * cse.c (rtx_cost): Provide a default case in an enumeration
3377 switch, and call DEFAULT_RTX_COSTS if it's defined.
b57062ca 3378
6ce22dac
MH
3379Thu Mar 12 10:02:38 1998 Manfred Hollstein <manfred@s-direktnet.de>
3380
3381 * basic-block.h (compute_preds_succs): Change return type in
3382 prototype to void.
3383 * flow.c (compute_preds_succs): Likewise in function definition.
3384
3385 * regmove.c (find_matches): Cast char used as array index to unsigned char
3386 to supress warning.
3387
9c318306
MH
3388Thu Mar 12 09:39:40 1998 Manfred Hollstein <manfred@s-direktnet.de>
3389
3390 * i386.h (RTX_COSTS): Insert braces around nested if.
3391 (ADDITIONAL_REGISTER_NAMES): Insert braces around structured
3392 elements.
3393
3394 * gcc.c (default_compilers): Properly put brackets around array elements in
3395 initializer.
3396
3397 * getopt.c (_getopt_internal): Add explicit braces around nested if;
3398 reformatted.
3399
3400 * reg-stack.c (record_asm_reg_life): Add explicit braces around nested if's.
3401 (record_reg_life_pat): Add explicit parens around && and || in expression.
3402 (stack_reg_life_analysis): Add parens around assignment used as expression.
3403 (convert_regs): Likewise.
3404
56c5d8bf
MH
3405Thu Mar 12 09:25:29 1998 Manfred Hollstein <manfred@s-direktnet.de>
3406
3407 * bitmap.c (bitmap_element_allocate): Remove unused parameter;
3408 change callers accordingly.
3409
3410 * cplus-dem.c (arm_special): Remove unused parameter work in prototype
3411 and definition; change all callers accordingly.
3412
3413 * except.c (init_eh): Avoid assignment of unused return value of
3414 build_pointer_type; cast it to void, instead, and remove unused
3415 variable type.
3416
3417 * gcc.c (lang_specific_driver): Define prototype only #ifdef
3418 LANG_SPECIFIC_DRIVER.
3419 (temp_names): Define only #ifdef MKTEMP_EACH_FILE.
3420
3421 * genoutput.c (output_epilogue): Initialize next_name to 0.
3422
3423 * real.c (efrexp): #if 0 prototype and function definition.
3424 (eremain): Likewise.
3425 (uditoe): Likewise.
3426 (ditoe): Likewise.
3427 (etoudi): Likewise.
3428 (etodi): Likewise.
3429 (esqrt): Likewise.
3430
3431 * reload.c (push_secondary_reload): Define prototype only
3432 #ifdef HAVE_SECONDARY_RELOADS.
3433
3434 * varasm.c (assemble_static_space): Define rounded only
3435 #ifndef ASM_OUTPUT_ALIGNED_LOCAL.
3436
4fce8e83
MH
3437Thu Mar 12 09:11:35 1998 Manfred Hollstein <manfred@s-direktnet.de>
3438
3439 * i386.md (andsi): Add default case in enumeration switch.
3440 (iorsi3): Likewise.
3441 (iorhi3): Likewise.
3442 (xorsi3): Likewise.
3443
85066503
MH
3444Thu Mar 12 08:37:02 1998 Manfred Hollstein <manfred@s-direktnet.de>
3445
3446 * c-decl (finish_struct): Change type of min_align to unsigned.
3447
3448 * cplus-dem.c (demangle_function_name): Change type of variable i to size_t;
3449 remove unused variable len.
3450
3451 * dwarf2out.c (reg_save): Add explicit cast of -1 to unsigned and a
3452 comment indicating this is proper behaviour.
3453 (reg_loc_descriptor): Remove redundant comparison of unsigned variable
3454 reg >= 0.
3455 (based_loc_descr): Likewise.
3456
3457 * enquire.c (bitpattern): Change type of variable i to unsigned.
3458
3459 * final.c (output_asm_insn): Don't cast insn_noperands to unsigned.
3460
3461 * flow.c (life_analysis): Change type of variable i to size_t;
3462 remove unused variable insn.
3463
3464 * gcc.c (translate_options): Change type of variables optlen, arglen and
3465 complen to size_t.
3466 (input_filename_length): Change type to size_t.
3467 (do_spec_1): Change type of variable bufsize to size_t.
3468 (main): Change type of variables i and j to size_t;
3469 remove subblock local definition of variable i.
3470 (lookup_compiler): Change type of second argument to size_t;
3471 change type of variable i to size_t.
3472
3473 * genemit.c (output_init_mov_optab): Change type of variable i to size_t.
b57062ca 3474
85066503
MH
3475 * genopinit.c (get_insn): Change type of variable pindex to size_t.
3476
3477 * genrecog.c (add_to_sequence): Change type of variable i to size_t.
3478
3479 * global.c (global_alloc): Change type of variable i to size_t.
3480
3481 * regclass.c (init_reg_sets): Change type of variables i and j to unsigned.
3482
3483 * stmt.c (expand_end_bindings): Change type of variable i to size_t.
3484 (expand_end_case): Change type of variable count to size_t.
3485
3486 * toplev.c (main): Change type of variable j to size_t.
3487 (set_target_switch): Change type of variable j to size_t.
3488 (print_switch_values): Change type of variable j to size_t;
3489 remove unused variable flags.
3490
3491 * varasm.c (assemble_variable): Change type of variable align to size_t.
3492 (const_hash_rtx): Change type of variable i to size_t.
3493
6d89b990
MM
34941998-03-11 Mark Mitchell <mmitchell@usa.net>
3495
3496 * dbxout.c (dbxout_type_methods): Only treat TYPE_METHODS as a
3497 TREE_VEC if that's what it really is.
3498
01c7f350
MM
3499Wed Mar 11 15:16:01 1998 Michael Meissner <meissner@cygnus.com>
3500
3501 * {haifa-,}sched.c (rank_for_schedule): Only take void * arguments
3502 as per ISO C spec.
3503
754d1a92
TT
3504Wed Mar 11 12:05:20 1998 Teemu Torma <tot@trema.com>
3505
3506 * gthr.h: Changed the comment about return values.
3507 * gthr-solaris.h (__gthread_once): Do not use errno; return the
b57062ca 3508 error number instead of -1.
754d1a92
TT
3509 (__gthread_key_create): Any non-zero return value is an error.
3510 * libgcc2.c (eh_context_initialize): Check for non-zero return
3511 value from __gthread_once.
3512 Check that the value of get_eh_context was really changed.
3513
77008a44
R
3514Wed Mar 11 18:26:25 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3515
3516 * sh.h (LOOP_ALIGN): Only align when optimizing.
3517 * sh.c (find_barrier): Clear inc for CODE_LABELs.
3518 When not optimizing, calculate alignment for BARRIERs directly.
3519
a8aa4e0b
R
3520Wed Mar 11 15:07:18 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3521
3522 * final.c (shorten_branches): Remove conditionalizing on
3523 SHORTEN_WITH_ADJUST_INSN_LENGTH
3524 * sh.h, pa.h (SHORTEN_WITH_ADJUST_INSN_LENGTH): Remove.
3525
832544bd
JL
3526Wed Mar 11 02:37:41 1998 Jeffrey A Law (law@cygnus.com)
3527
3528 * flow.c (find_basic_blocks_1): Keep the cfg accurate when removing
3529 an unconditional jump around deleted blocks.
3530
bdd3e6ab
JW
3531Mon Mar 9 12:02:23 1998 Jim Wilson <wilson@cygnus.com>
3532
11a932c0
JW
3533 * profile.c (branch_prob): If see computed goto, call fatal instead of
3534 abort.
3535
eeb54a49 3536 * config/mips/sni-svr4.h (CPP_PREDEFINE): Add -DSNI and -Dsinix.
b57062ca 3537
35011dd5
JW
3538 * configure.in (alpha-dec-osf): Add default case for osf* to switch.
3539 Patch from Bruno Haible.
3540
bdd3e6ab
JW
3541 * function.c (put_reg_into_stack): Copy MEM_IN_STRUCT_P from new.
3542 (assign_parms): Set aggregate if hide_last_arg and last_named.
3543
af035616
R
3544Mon Mar 9 19:57:56 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3545
3546 * final.c (shorten_branches): Initialize insn_addresses.
3547
97e3c422
R
3548Mon Mar 9 14:10:23 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3549
3550 * sh.h (MUST_PASS_IN_STACK): Define.
3551
5e75ef4a
JL
3552Sun Mar 8 13:01:56 1998 Jeffrey A Law (law@cygnus.com)
3553
3554 * final.c (shorten_branches): Fix minor logic error in
3555 ADDR_DIFF_VEC shortening support.
3556
99613661
JL
3557Sun Mar 8 02:17:42 PST 1998 Jeff Law (law@cygnus.com)
3558
3559 * version.c: Bump for snapshot.
3560
8ea2b111
JL
3561Sat Mar 7 00:54:15 1998 Jeffrey A Law (law@cygnus.com)
3562
168cbdf9
JL
3563 * haifa-sched.c (is_cfg_nonregular): Change return type to
3564 an int. No longer compute "estimated" number of edges. Use
3565 computed_jump_p instead of duplicating the code. Fixup/add
3566 some comments.
3567 (build_control_flow): Returns a value indicating an irregularity
3568 in the cfg was detected. Count the number of edges in the cfg.
3569 allocate various edge tables.
3570 (find_rgns): No longer look for unreachable blocks.
3571 (schedule_insns): Do not allocate memory for edge tables here.
3572 Free memory for edge tables before returning. Do not perform
3573 cross block scheduling if build_control_flow returns nonzero.
3574 * flow.c (compute_preds_succs): More accurately determine when
3575 a block drops in.
3576
52becdc0
JL
3577 * basic-block.h (free_basic_block_vargs): Provide prototype.
3578
8ea2b111
JL
3579 * cccp.c (main): Fix dumb mistakes in last change.
3580
33f7f353
JR
3581Fri Mar 6 21:28:45 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3582
3583 * rtl.h (addr_diff_vec_flags): New typedef.
3584 (union rtunion_def): New member rt_addr_diff_vec_flags.
3585 (ADDR_DIFF_VEC_FLAGS): New macro.
3586
3587 * sh.c (output_branch): Fix offset overflow problems.
3588
3589 * final.c (shorten_branches): Implement CASE_VECTOR_SHORTEN_MODE.
3590 (final_scan_insn): New argument BODY for ASM_OUTPUT_ADDR_DIFF_ELT.
3591 * rtl.def (ADDR_DIFF_VEC): Three new fields (min, max and flags).
3592 * stmt.c (expand_end_case): Supply new arguments to
3593 gen_rtx_ADDR_DIFF_VEC.
3594 * 1750a.h (ASM_OUTPUT_ADDR_DIFF_ELT): New argument BODY.
3595 * alpha.h, arc.h, clipper.h, convex.h : Likewise.
3596 * dsp16xx.h, elxsi.h, fx80.h, gmicro.h, h8300.h : Likewise.
3597 * i370.h, i386.h, i860.h, i960.h, m32r.h, m68k.h, m88k.h : Likewise.
3598 * mips.h, mn10200.h, mn10300.h, ns32k.h, pa.h, pyr.h : Likewise.
3599 * rs6000.h, sh.h, sparc.h, spur.h, tahoe.h, v850.h : Likewise.
3600 * vax.h, we32k.h, alpha/vms.h, arm/aof.h, arm/aout.h : Likewise.
3601 * i386/386bsd.h, i386/freebsd-elf.h : Likewise.
3602 * i386/freebsd.h, i386/linux.h : Likewise.
3603 * i386/netbsd.h, i386/osfrose.h, i386/ptx4-i.h, i386/sco5.h : Likewise.
3604 * i386/sysv4.h, m68k/3b1.h, m68k/dpx2.h, m68k/hp320.h : Likewise.
3605 * m68k/mot3300.h, m68k/sgs.h : Likewise.
3606 * m68k/tower-as.h, ns32k/encore.h, sparc/pbd.h : Likewise.
3607 * sh.h (INSN_ALIGN, INSN_LENGTH_ALIGNMENT): Define.
3608 (CASE_VECTOR_SHORTEN_MODE): Define.
3609 (short_cbranch_p, align_length, addr_diff_vec_adjust): Don't declare.
3610 (med_branch_p, braf_branch_p): Don't declare.
3611 (mdep_reorg_phase, barrier_align): Declare.
3612 (ADJUST_INSN_LENGTH): Remove alignment handling.
3613 * sh.c (uid_align, uid_align_max): Deleted.
3614 (max_uid_before_fixup_addr_diff_vecs, branch_offset): Deleted.
3615 (short_cbranch_p, med_branch_p, braf_branch_p, align_length): Deleted.
3616 (cache_align_p, fixup_aligns, addr_diff_vec_adjust): Deleted.
3617 (output_far_jump): Don't use braf_branch_p.
3618 (output_branchy_insn): Don't use branch_offset.
3619 (find_barrier): Remove checks for max_uid_before_fixup_addr_diff_vecs.
3620 Remove paired barrier stuff.
3621 Don't use cache_align_p.
3622 Take alignment insns into account.
3623 (fixup_addr_diff_vecs): Reduce to only fixing up the base label of
3624 the addr_diff_vec.
3625 (barrier_align, branch_dest): New function.
3626 (machine_dependent_reorg, split_branches): Remove infrastructure
3627 for branch shortening that is now provided in the backend.
3628 * sh.md (short_cbranch_p, med_branch_p, med_cbranch_p): New attributes.
3629 (braf_branch_p, braf_cbranch_p): Likewise.
3630 (attribute length): Use new attributes.
3631 (casesi_worker): Get mode and unsignednedd from ADDR_DIFF_VEC.
3632 (addr_diff_vec_adjust): Delete.
3633 (align_2): Now a define_expand.
3634 (align_log): Now length 0.
3635
170a16c7
MM
3636Fri Mar 6 14:41:33 1998 Michael Meissner <meissner@cygnus.com>
3637
3638 * m32r.md (right): Correctly check for length == 2, not 1.
3639
688f0603
KG
3640Fri Mar 6 14:00:04 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3641
3642 * mips/mips.h: Prototype `machine_dependent_reorg'.
3643 (ASM_OUTPUT_ALIGN): Remove unused variable `mask'.
3644
19cbe68d
JR
3645Fri Mar 6 11:43:35 1998 Joern Rennecke (amylaar@cygnus.co.uk)
3646
3647 * final.c (shorten_branches): Restore accidentally removed code.
3648
8add77ce
AS
3649Fri Mar 6 11:00:49 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3650
3651 * configure.in: Remove duplicate uses of AC_PROG_CC and
3652 AC_PROG_MAKE_SET.
3653
fbb5ed67
RH
3654Fri Mar 6 00:59:30 1998 Richard Henderson <rth@cygnus.com>
3655
3656 * configure.in (target_cpu_default2): Correct typo for alphapca56.
3657
5ece9746
JL
3658Thu Mar 5 23:24:50 1998 Jeffrey A Law (law@cygnus.com)
3659 Doug Evans (devans@cygnus.com)
3660
3661 * haifa-sched.c (build_jmp_edges): Delete dead function.
3662 (build_control_flow): Use cfg routines from flow.c
3663 (schedule_insns): Remove debugging code accidentally checked
3664 in earlier today.
3665
3666 * basic-block.h: Add external integer list structures, typdefs,
3667 accessor macros and function declarations. Simlarly for
3668 basic block pred/succ support and simple bitmap stuff.
3669 * flow.c: Add functions for integer list, basic block pred/succ
3670 support and simple bitmap support.
3671 (compute_dominators): New function to compute dominators and
3672 post dominators.
3673 (find_basic_blocks): Split into two functions.
3674 (life_analysis): Likewise.
3675 (flow_analysis): Removed. Now handled by calling find_basic_blocks,
3676 the life_analysis from toplev.c
3677 * toplev.c (rest_of_compilation): Call find_basic_blocks, then
3678 life_analysis instead of flow_analysis.
3679
ac9b3c97
R
3680Thu Mar 5 23:06:26 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3681
3682 * jump.c (jump_optimize): Call mark_jump_label also for deleted
3683 insns.
3684 (mark_jump_label): Don't increment ref counts for deleted insns.
3685
6e92f4b6
KG
3686Thu Mar 5 09:55:15 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3687
3688 * mips/iris6.h (TARGET_DEFAULT): Parenthesize macro definition.
b57062ca 3689
6e92f4b6
KG
3690 * mips/mips.c: Include stdlib.h and unistd.h.
3691 (mips_asm_file_end): Add braces around empty body in an if-statement.
3692 (function_prologue): Wrap variable `fnname' in
3693 !FUNCTION_NAME_ALREADY_DECLARED. Correct format specifier in fprintf.
3694 (mips_select_rtx_section, mips_select_section): Declare as void.
b57062ca 3695
6e92f4b6
KG
3696 * mips/mips.h: Add prototypes for extern functions in mips.c.
3697 (FUNCTION_ARG_REGNO_P): Add parentheses around && within ||.
3698 (ENCODE_SECTION_INFO): Add braces around empty body in an
3699 if-statement.
b57062ca 3700
6e92f4b6
KG
3701 * mips/mips.md (movdi): Add parentheses around && within ||.
3702 (movsf, movdf): Likewise.
3703 (branch_zero, branch_zero_di): Add default case in
3704 enumeration switch.
b57062ca 3705
6e92f4b6 3706
9ba3994a
RH
3707Thu Mar 5 02:45:48 1998 Richard Henderson <rth@cygnus.com>
3708
3709 * alpha/alpha.h (TARGET_WINDOWS_NT, TARGET_OPEN_VMS): Just make them
3710 real constants, since they can't be changed.
3711 (TARGET_AS_CAN_SUBTRACT_LABELS): New.
3712 * alpha/alpha.md (builtin_setjmp_receiver): Use it.
3713 * alpha/osf.h (TARGET_AS_CAN_SUBTRACT_LABELS): New.
3714 * alpha/osf2or3.h (TARGET_AS_CAN_SUBTRACT_LABELS): New.
3715 * alpha/vms.h (TARGET_OPEN_VMS): New.
3716 * alpha/win-nt.h (TARGET_WINDOWS_NT): New.
3717
5ec105cd
RH
3718Thu Mar 5 02:41:27 1998 Richard Henderson <rth@cygnus.com>
3719
3720 * reload.c (find_reloads): Always force (subreg (mem)) to be
3721 reloaded if WORD_REGISTER_OPERATIONS.
3722
ebb7b10b
RH
3723Thu Mar 5 02:14:44 1998 Richard Henderson <rth@cygnus.com>
3724
3725 * haifa-sched.c (free_list): Rename from free_pnd_lst.
3726 (free_pending_lists): Rename free_pnd_lst uses.
3727 (remove_dependence): Place expunged element on unused_insn_list.
3728 (alloc_INSN_LIST, alloc_EXPR_LIST): New. Change all callers of
3729 gen_rtx_*_LIST and alloc_rtx to use them.
3730 (compute_block_backward_dependences): Free the reg_last_* lists.
3731
cb37ce62
JL
3732Thu Mar 5 00:05:40 1998 Jeffrey A Law (law@cygnus.com)
3733
3734 * cccp.c (main): Avoid undefined behavior when setting pend_includes
3735 and pend_files.
3736
ce514f57
FS
3737Wed Mar 4 21:58:25 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
3738
b57062ca 3739 * rs6000/linux.h: don't define DEFAULT_VTABLE_THUNKS to 1 if
ce514f57
FS
3740 USE_GNULIBC_1 is defined
3741 * configure.in: add a new case powerpc-*-linux-gnulibc1 which
3742 includes the t-linux-gnulibc1 fragment
3743
89a5e42b
JW
3744Wed Mar 4 12:11:36 1998 Jim Wilson <wilson@cygnus.com>
3745
3746 * mips.md (movdf_internal1a): Fix misplaced parenthesis in condition.
3747
1dd8faa8
R
3748Wed Mar 4 18:47:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3749
3750 * final.c (final_scan_insn, case CODE_LABEL: Cleanup.
3751
e2faec75
R
3752Wed Mar 4 15:51:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3753
3754 * final.c (shorten_branches): Tag the loop alignment onto the
3755 first label after NOTE_INSN_LOOP_BEG even if there is an
3756 intervening insn.
3757
de7987a6
R
3758Tue Mar 3 21:48:35 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3759
26024475
R
3760 * final.c (insn_current_reference_address):
3761 Use SEQ instead of BRANCH as argument to align_fuzz, to get a
3762 proper alignment chain.
3763
de7987a6
R
3764 * final.c (max_labelno): New static variable.
3765 (final_scan_insn): Check max_labelno before outputting an
3766 alignment for a label.
de7987a6
R
3767 (shorten_branches): Remove unused variable length_align.
3768
27d8f9ea
KG
3769Tue Mar 3 14:27:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3770
3771 * sparc.c (ultrasparc_adjust_cost): Add default case in
3772 enumeration switch.
b57062ca 3773
27d8f9ea
KG
3774 * sparc.h: Add prototypes for extern functions defined in
3775 sparc.c.
3776
bd334356
NC
3777Tue Mar 3 10:00:11 1998 Nick Clifton <nickc@cygnus.com>
3778
3779 * toplev.c: Only generate <name>.dbr file when dumping RTL if
b57062ca 3780 DEALY_SLOTS is defined.
bd334356 3781
1838fe6d
MH
3782Tue Mar 3 07:36:37 1998 Manfred Hollstein <manfred@s-direktnet.de>
3783
3784 * reorg.c (fill_eager_delay_slots): Add new argument delay_list
3785 in call to fill_slots_from_thread.
3786
b0021153
RH
3787Mon Mar 2 13:45:03 1998 Richard Henderson <rth@cygnus.com>
3788
b57062ca 3789 * alpha/linux.h (CPP_PREDEFINES): Correct connecting whitespace
b0021153
RH
3790 to SUB_CPP_PREDEFINES. Reported by asun@saul4.u.washington.edu.
3791
687d0ab6 3792Mon Mar 2 22:59:28 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
fc470718
R
3793
3794 * final.c (insn_last_address, insn_current_align, uid_align):
3795 New variables.
3796 (in_align_chain, align_fuzz, align_shrink_fuzz): New functions.
3797 (insn_current_reference_address): Likewise.
3798 (shorten_branches, final_scan_insn): Implement LABEL_ALIGN,
3799 LABEL_ALIGN_AFTER_BARRIER and LOOP_ALIGN target macros.
3800 (label_to_alignment): New function.
3801 * genattrtab.c (write_test_expr): If one of LABEL_ALIGN,
3802 LABEL_ALIGN_AFTER_BARRIER or LOOP_ALIGN is defined, call
3803 insn_current_reference_address instead of insn_current_address.
3804 (or_attr_value, write_length_unit_log): New functions.
3805 (main): Call write_length_unit_log.
3806 (write_const_num_delay_slots): Output extra '\n'.
3807 * alpha.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE):
3808 replace with:
3809 (LOOP_ALIGN, ALIGN_LABEL_AFTER_BARRIER).
3810 * i386.h, i386/osfrose.h, i386/svr3dbx.h, m68k.h, sparc.h: Likewise.
3811 * arc.h, m32r.h (ASM_OUTPUT_LOOP_ALIGN): replace with:
3812 (LOOP_ALIGN).
3813 * i960.h, m88k.h: (ASM_OUTPUT_ALIGN_CODE): Replace with:
3814 (LABEL_ALIGN_AFTER_BARRIER).
3815 * ns32k/encore.h, ns32k/merlin.h, ns32k.h, ns32k/sequent.h: Likewise.
3816 * ns32k/tek6000.h: Likewise.
3817 * i386/gas.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE): Delete.
3818 * i386.md (casesi+1): Use ASM_OUTPUT_ALIGN instead of
3819 ASM_OUTPUT_ALIGN_CODE.
3820
54f00917
JL
3821Mon Mar 2 01:05:50 PST 1998 Jeff Law (law@cygnus.com)
3822
3823 * version.c: Bump for snapshot.
3824
38630f7e
JL
3825Mon Mar 2 00:52:18 PST 1998 Jeff Law (law@cygnus.com)
3826
3827 * version.c: Bump for snapshot.
3828
ab63953e
JL
3829Sun Mar 1 18:25:49 1998 Michael P. Hayes <michaelh@ongaonga.chch.cri.nz>
3830
3831 * reorg.c (fill_slots_from_thread): Don't steal delay list from target
b57062ca 3832 if condition code of jump conflicts with opposite_needed.
ab63953e
JL
3833
3834 * reorg.c (fill_slots_from_thread): Mark resources referenced in
3835 opposite_needed thread. Return delay_list even when cannot get
3836 any more delay insns from end of subroutine.
3837
3838Sun Mar 1 18:26:21 1998 Ken Rose (rose@acm.org)
3839
3840 * reorg.c (fill_slots_from_thread): New parameter, delay_list.
3841 All callers changed.
3842
3843Sun Mar 1 18:25:37 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
72dd050a
BH
3844
3845 * frame.c (start_fde_sort, fde_split, heapsort, fde_merge,
3846 end_fde_sort): New functions for fast sorting of an FDE array.
3847 (fde_insert): Simplified.
3848 (add_fdes): Change argument list.
3849 (frame_init): Use the new functions.
3850
de153e82
JL
3851Sun Mar 1 18:06:21 1998 Jeffrey A Law (law@cygnus.com)
3852
925b1f33
JL
3853 * ginclude/va-ppc.h (va_arg): Fix typo in long long support.
3854
c7271385
JL
3855 * i386.c (reg_mentioned_in_mem): Fix dangling else statement.
3856
de153e82
JL
3857 * fold-const.c (fold_range_test): Always return a value.
3858
81023100
MK
3859Sun Mar 1 17:57:34 1998 Mumit Khan <khan@xraylith.wisc.edu>
3860
3861 * config/i386/winnt.c (i386_pe_unique_section): Put read-only
3862 data in the text section unless READONLY_DATA_SECTION is defined.
3863
818e50a5
JL
3864Sun Mar 1 17:48:46 1998 Jeffrey A Law (law@cygnus.com)
3865
3866 * c-parse.in (undeclared variable error): Tweak error message to
3867 be clearer.
3868
c93dc3ac
JL
3869Sun Mar 1 10:22:36 PST 1998 Jeff Law (law@cygnus.com)
3870
3871 * version.c: Bump for snapshot.
3872
90ca38bb
MM
38731998-02-28 Mark Mitchell <mmitchell@usa.net>
3874
3875 * final.c (final_scan_insn): Undo overzealous removal of `set'.
3876
3d85c12e
KG
3877Sat Feb 28 07:54:03 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3878
5feca984
KG
3879 * pa.h (CONST_COSTS): When checking the CONST_DOUBLE enumerated
3880 case, add parentheses to specify the proper order of precedence in
3881 the if-statement.
b57062ca 3882
5feca984 3883
51723711
KG
3884 * c-aux-info.c: Include string.h/strings.h.
3885
3886 * pa.c: Include stdlib.h.
3887 (pa_combine_instructions): Prototype the function.
3888 (pa_can_combine_p, forward_branch_p, shadd_constant_p): Likewise.
3889 (reloc_needed): Add default case for enumeration switch.
3890 (remove_useless_addtr_insns): Remove unused variable `all'.
3891 (hppa_expand_prologue): Add explicit braces to avoid
3892 ambiguous `else'.
3893 (output_function_epilogue): Remove unused variable `i'.
3894 (output_millicode_call): Remove unused variable `link'.
3895 (shadd_constant_p, forward_branch_p): Make the function static.
3896 (following_call): Explicitly declare to return int.
3897 (pa_reorg): Declare as void.
3898 (pa_combine_instructions): Declare as static void. Add
3899 parentheses around && within ||.
b57062ca 3900
51723711
KG
3901 * pa.h: Add prototypes for pa_reorg, symbolic_operand,
3902 following_call, function_label_operand, lhs_lshift_cint_operand
3903 and zdepi_cint_p.
3904
3905 * pa.md: Add parentheses around && within ||.
3906
3907 * cppalloc.c: Include stdlib.h.
3908
3909 * cpperror.c (cpp_print_containing_files): Remove unused variable
3910 `i'. Fix format specifier in fprintf.
3911
3912 * cse.c (cse_around_loop): Add explicit braces to avoid
3913 ambiguous `else'.
3914 (delete_dead_from_cse): Wrap variable `tem' in macro HAVE_cc0.
3915
3916 * expr.c (expand_expr): Add parentheses around && within ||.
3917
3918 * final.c (app_enable): Replace fprintf with fputs where there are
3919 no format specifiers and no trailing argument after the string.
3920 Eg, when printing ASM_APP_ON/ASM_APP_OFF.
3921 (app_disable): Likewise.
3922 (final_end_function): Likewise.
3923 (final_scan_insn): Likewise. Remove unused variable `set'.
3924 (profile_function): Wrap empty if-statement body in {} brackets.
3925
3926 * function.c: Include stdlib.h.
3927 (pad_below): Wrap prototype and definition in ARGS_GROW_DOWNWARD.
3928 (reposition_prologue_and_epilogue_notes): Add parentheses
3929 around assignment used as truth value.
3930
3931 * integrate.c (expand_inline_function): Wrap variable
3932 `cc0_insn' in macro HAVE_cc0.
3933
3934 * jump.c (jump_optimize): Wrap variable `q' in macro
3935 HAVE_cc0. Remove unused variable `prev1'.
3936
3937 * libgcc2.c (__bb_exit_trace_func): Add parentheses around &&
3938 within ||. Fix format specifier in fprintf.
3939 (__bb_init_prg): Add parentheses around assignment used as
3940 truth value.
3941
3942 * local-alloc.c: Include stdlib.h.
3943 (requires_inout): Add parentheses around assignment used
3944 as truth value.
3945
3946 * loop.c (analyze_loop_iterations): Wrap prototype and definition
3947 in macro HAVE_decrement_and_branch_on_count.
3948 (insert_bct, instrument_loop_bct): Likewise.
3949 (move_movables): Add parentheses around assignment used as
3950 truth value.
3951 (consec_sets_invariant_p): Likewise.
3952 (maybe_eliminate_biv_1): Wrap variable `new' in macro HAVE_cc0.
3953
3954 * objc/objc-act.c: Include stdlib.h.
3955 (lookup_method_in_protocol_list): Wrap empty else-statement body
3956 in braces.
3957 (lookup_protocol_in_reflist): Likewise.
3958 (objc_add_static_instance): Remove unused variables `decl_expr'
3959 and `decl_spec'.
3960 (get_objc_string_decl): Remove unused variable `decl'.
3961 (generate_static_references): Remove unused variables `idecl' and
3962 `instance'.
3963 (check_protocols): Wrap empty else-statement body in braces.
b57062ca 3964
51723711
KG
3965 * protoize.c: Include stdlib.h.
3966 (substr): Add parentheses around assignment used as truth value.
3967 (abspath): Likewise.
3968 (shortpath): Likewise.
3969
3970 * regmove.c (fixup_match_1): Add parentheses around assignment
3971 used as truth value.
3972
3973 * reload.c (push_secondary_reload): Remove unused variable `i'.
3974 (find_reloads): Add parentheses around assignment used as truth
3975 value.
3976
3977 * reload1.c: Include stdlib.h.
3978
3979 * rtl.h: Correct typo in prototype of offsettable_memref_p.
3980
3981 * stmt.c (add_case_node): Add parentheses around assignment used
3982 as truth value.
3983 (case_tree2list): Likewise.
3984
3985 * tree.c (valid_machine_attribute): Wrap variable `decl_attr_list'
3986 in macro VALID_MACHINE_DECL_ATTRIBUTE. Wrap variable
3987 `type_attr_list' in macro VALID_MACHINE_TYPE_ATTRIBUTE.
3988 (merge_attributes): Add explicit braces to avoid ambiguous
3989 `else'.
3990
3991 * unroll.c (copy_loop_body): Wrap variable `cc0_insn' in
3992 macro HAVE_cc0.
b57062ca 3993
51723711 3994 * varasm.c: Include stdlib.h.
b57062ca 3995
51723711 3996
c5801053
KG
3997 * system.h: Remove sys/stat.h.
3998 * gcc.c: Add sys/stat.h.
3999
3d85c12e
KG
4000 * genattr.c: Wrap prototype of `free' in NEED_DECLARATION_FREE.
4001 * genattrtab.c: Likewise.
4002 * genconfig.c: Likewise.
4003 * genemit.c: Likewise.
4004 * genextract.c: Likewise.
4005 * genflags.c: Likewise.
4006 * genopinit.c: Likewise.
4007 * genoutput.c: Likewise.
4008 * genpeep.c: Likewise.
4009 * genrecog.c: Likewise.
4010 * tlink.c: Likewise. Also wrap `getenv' in NEED_DECLARATION_GETENV.
4011
0fd12b04
AS
4012Fri Feb 27 11:02:47 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4013
bd762873
AS
4014 * invoke.texi: Use @itemx for a secondary item in a @table.
4015
0fd12b04
AS
4016 * config/m68k/m68k.md (movsf+1): Optimize moving a CONST_DOUBLE
4017 zero.
4018
c3cf395b
ILT
4019Thu Feb 26 00:13:21 1998 Ian Lance Taylor <ian@cygnus.com>
4020
4021 * choose-temp.c: Fix handling of sys/file.h to work in libiberty.
4022
b94b5c16
JL
4023Wed Feb 25 23:40:54 1998 Jeffrey A Law (law@cygnus.com)
4024
4025 * i386.c (struct machine_function): Add new fields for PIC stuff.
4026 (save_386_machine_status): Fix argument to xmalloc. Save pic_label_rtx
4027 and pic_label_name.
4028 (restore_386_machine_status): Corresponding changes.
4029 (clear_386_stack_locals): Also clear pic_label_rtx and pic_label_name.
4030
8dfafd99
JL
4031Wed Feb 25 01:31:40 1998 Jeffrey A Law (law@cygnus.com)
4032
4033 * c-parse.y (undeclared variable error): Tweak error message
4034 to be clearer.
4035
bb8ebb7f
RH
4036Tue Feb 24 23:54:07 1998 Richard Henderson <rth@cygnus.com>
4037
4038 * flags.h (g_switch_value, g_switch_set): Declare.
4039 * alpha.c (override_options): Set g_switch_value=8 if not set.
4040 * alpha/elf.h (CC1_SPEC): New.
4041 (ASM_SPEC): New.
4042 (LINK_SPEC): Pass along the -G value we were given.
4043 (LOCAL_ASM_OP): Remove.
4044 (ASM_OUTPUT_ALIGNED_LOCAL): Output to .bss or .sbss by size.
4045 (MAX_OFILE_ALIGNMENT): New.
4046 (BSS_SECTION_ASM_OP, SBSS_SECTION_ASM_OP, SDATA_SECTION_ASM_OP): New.
4047 (EXTRA_SECTIONS): Add sbss and sdata.
4048 (SECTION_FUNCTION_TEMPLATE): New.
4049 (EXTRA_SECTION_FUNCTIONS): Use it.
4050 (CTORS_SECTION_FUNCTION, DTORS_SECTION_FUNCTION): Remove.
4051 (SELECT_SECTION): Use sdata when small enough.
4052 * alpha/linux.h (ASM_SPEC): Remove.
b57062ca 4053
bb8ebb7f 4054
3e07bdbd
BH
4055Mon Feb 23 15:09:18 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
4056 * config.sub (sco5): Fix typo.
4057
9d1ebd25
MH
4058Mon Feb 23 18:19:31 1998 Manfred Hollstein <manfred@s-direktnet.de>
4059
4060 * config/t-linux (LIBGCC1, CROSS_LIBGCC1, LIBGCC1_TEST): Add macros and
4061 set to empty.
4062 * config/t-linux-aout (LIBGCC1, CROSS_LIBGCC1, LIBGCC1_TEST): Likewise.
4063 * config/alpha/t-linux: Remove file.
4064 * config/sparc/t-linux: Remove file.
4065 * config/m68k/t-linux (LIBGCC1, CROSS_LIBGCC1): Remove.
4066 * config/m68k/t-linux-aout (LIBGCC1, CROSS_LIBGCC1): Likewise.
4067 * configure.in (alpha*-*-linux-gnulibc1*): Use t-linux instead of alpha/t-linux
4068 for tmake_file.
4069 (alpha*-*-linux-gnu*): Likewise.
4070 (sparc-*-linux-gnulibc1*): Use t-linux instead of sparc/t-linux for tmake_file.
4071 (sparc-*-linux-gnu*): Likewise.
84bc3b4f
RL
4072
4073Mon Feb 23 10:47:39 1998 Robert Lipe <robertl@dgii.com>
4074 * collect2.c (ldd_file_name): Bracket declaration with same
4075 manifests as use.
4076 (full_real_ld_suffix): Deleted. Variable was calloced and
4077 written into, but never read.
4078
9e89df50
MS
40791998-02-23 Mike Stump <mrs@wrs.com>
4080
4081 * configure.in: Add support for i386-wrs-vxworks configuration.
4082 * i386/vxi386.h: New file.
4083
1160f9ec
BH
4084Sun Feb 22 21:16:51 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
4085
4086 * tree.c (contains_placeholder_p): Ensure function always returns
4087 a value.
4088 * sparc.md (movdi_sp64_insn): Add default case in enumeration switch.
4089 (movsf_const_insn, movdf_const_insn, movtf_const_insn): Likewise.
4090
328da75c
JL
4091Sun Feb 22 20:58:19 1998 Jeffrey A Law (law@cygnus.com)
4092
4093 * vms.h (SELECT_SECTION): Use TREE_CODE_CLASS correctly.
4094
deabc777
PE
40951998-02-22 Paul Eggert <eggert@twinsun.com>
4096
4097 * config/sparc/sol2-sld.h (LINKER_DOES_NOT_WORK_WITH_DWARF2):
4098 Define this new symbol.
4099 (DWARF2_DEBUGGING_INFO, DWARF_DEBUGGING_INFO): Do not #undef.
4100 * toplev.c (main): Do not default to DWARF2_DEBUG with -ggdb if
4101 LINKER_DOES_NOT_WORK_WITH_DWARF2 is defined.
4102
0e84e8fb
JW
4103Sun Feb 22 20:07:32 1998 Jim Wilson <wilson@cygnus.com>
4104
4105 * iris5.h (DWARF2_UNWIND_INFO): Define to 0.
4106 * iris5gas.h (DWARF2_UNWIND_INFO): Define to 1.
4107
9c37957a
RH
4108Sun Feb 22 15:29:48 1998 Richard Henderson <rth@cygnus.com>
4109
4110 * objc/Object.m (-error): Call objc_verror with our va_list.
4111
e3c49f52
DE
4112Sun Feb 22 09:45:39 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4113
4114 * collect2.c (scan_prog_file): Completely cover uses of variable
4115 `exports' with macro COLLECT_EXPORT_LIST.
4116
4117Sat Feb 21 20:36:23 1998 Jeff Law (law@cygnus.com)
d935d60e
JL
4118
4119 * version.c: Bump for snapshot.
4120
3c674857
MM
4121Fri Feb 20 16:22:13 1998 Michael Meissner <meissner@cygnus.com>
4122
4123 * sched.c (schedule_block): Remove code to get arguments from hard
4124 regs into pseudos early. Same as Aug 25, 1997 change to
4125 haifa-sched.c.
4126
c2d731c4
JM
41271998-02-20 Jason Merrill <jason@yorick.cygnus.com>
4128
4129 * collect2.c (main): Still handle !do_collecting for non-AIX targets.
4130
7d02bbef
JM
41311998-02-16 Mark Mitchell <mmitchell@usa.net>
4132
4133 * toplev.c (rest_of_compilation): Do not defer the output of a
4134 nested function.
4135
9766dbcf
MT
4136Fri Feb 20 10:39:47 1998 Michael Tiemann <michael@impact.tiemann.org>
4137
4138 * ginclude/va-mips.h (va_arg): Remove trailing space after '\'
4139 continuation character (line 243).
4140
01a7aaea
AS
4141Fri Feb 20 12:10:26 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4142
4143 * genrecog.c (main): Remove duplicated sentence in emitted comment.
4144
db126753
DE
4145Thu Feb 19 22:36:53 1998 Andrey Slepuhin <pooh@msu.net>
4146 David Edelsohn <edelsohn@mhpcc.edu>
4147
4148 * collect2.c (XCOFF_SCAN_LIBS): Remove.
4149 (export_flag): New variable.
4150 (export_file): #ifdef COLLECT_EXPORT_LIST.
4151 (import_file, exports, imports, undefined): New variables.
4152 (libs, cmdline_lib_dirs, libpath_lib_dirs, libpath, libexts): Same.
4153 (dump_list, dump_prefix_list, is_in_list): New functions.
4154 (write_export_file): $ifdef COLLECT_EXPORT_LIST.
4155 (write_import_file, resolve_lib_name): New functions.
4156 (use_import_list, ignore_library): Same.
4157 (collect_exit): maybe_unlink import_file and #ifdef.
4158 (handler): Same.
4159 (main): New variable importf, #ifdef exportf. Move parsing of
4160 -shared before general argument parsing. Resolve AIX library
4161 paths and import libgcc.a symbols. Treat .so shared libraries the
4162 same as objects and .a libraries. Create alias for object_lst and
4163 increment it instead of original pointer. Scan AIX libraries as
4164 objects earlier instead of using scan_libraries. Perform AIX
4165 tlink later to resolve templates instead of forking ld.
4166 (GCC_OK_SYMBOL): Ensure symbol not in undef section.
4167 (GCC_UNDEF_SYMBOL): New macro.
4168 (scan_prog_file): Loop for members of AIX libraries. Handle
4169 export/import of ctors/dtors.
4170 (aix_std_libs): New variable.
4171 (scan_libraries, XCOFF): Delete.
4172
4173Thu Feb 19 22:36:52 1998 Robert Lipe <robertl@dgii.com>
4174
4175 * collect2.c (full_real_ld_suffix): #ifdef CROSS_COMPILE.
4176
e642002f
MS
41771998-02-19 Mike Stump <mrs@wrs.com>
4178
4179 * Makefile.in: Use $tooldir for sys-include to match toplevel
4180 configure.
4181
aff48bca
JL
4182Thu Feb 19 01:32:37 1998 Jeffrey A Law (law@cygnus.com)
4183 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4184
4185 * emit-rtl.c (gen_lowpart_common): Suppress last change if __complex__.
4186
4187 * emit-rtl.c (hard-reg-set.h): Include.
b57062ca 4188 (get_lowpart_common): Don't make new REG for hard reg in a
aff48bca
JL
4189 class that cannot change size.
4190 * Makefile.in (emit-rtl.o): Depend on hard-reg-set.h.
4191
4192 * combine.c: Revert previous patch.
4193
0a9bdce3
PE
41941998-02-19 Paul Eggert <eggert@twinsun.com>
4195
4196 * config/sparc/sol2-sld.h: New file.
4197 * configure.in (sparc-*-solaris2*): Use it when using the
4198 system linker.
4199
3875b31d
JL
4200Thu Feb 19 00:46:59 1998 Jeffrey A Law (law@cygnus.com)
4201
4202 * loop.c (force_movables): Fix typo.
4203
bb5fa67f
MH
4204Thu Feb 19 08:26:30 1998 Manfred Hollstein <manfred@s-direktnet.de>
4205
4206 * m88k.h: Change file pattern to match reality.
4207
7f83c0e7
JL
4208Wed Feb 18 23:19:52 1998 Jeffrey A Law (law@cygnus.com)
4209
4210 * varasm.c (output_constant_pool): Fix dumb thinko in last
4211 change.
dffc0da4
JL
4212
4213 * pa.h (ASM_OUTPUT_FUNCTION_PREFIX): Correctly translate from
4214 a function name to a section name.
4215
d9525bec
BK
42161998-02-18 Doug Evans <devans@cygnus.com>
4217
4218 * tree.h (merge_machine_{type,decl}_attributes): Declare.
4219 (split_specs_attrs, strip_attrs): Add prototypes.
4220 * tree.c (merge_machine_{type,decl}_attributes): New functions.
4221 * c-decl.c (duplicate_decls): Call merge_machine_decl_attributes.
4222 Update olddecl's attributes too.
4223 * c-common.c (strip_attrs): New function.
4224 * c-typeck.c (common_type): Call merge_machine_type_attributes.
4225 * varasm.c (make_function_rtl): New target macro REDO_SECTION_INFO_P.
4226 (make_decl_rtl): Likewise.
4227
42281998-02-18 Jim Wilson <wilson@cygnus.com>
4229
4230 * c-decl.c (shadow_tag_warned): Call split_specs_attrs.
4231
f9a366ac
JL
4232Wed Feb 18 09:09:50 1998 Jeffrey A Law (law@cygnus.com)
4233
4234 Remove this change until we can fix it correctly.
4235 * collect2.c: Bracket declaration of 'exportf' and
4236 'full_real_ld_suffix'.
4237
206ae7cf
BS
4238Wed Feb 18 08:44:25 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
4239
4240 * Makefile.in (STAGESTUFF): Add genrtl.c, genrtl.h and gengenrtl.
4241
0a7ed33c
BS
4242Tue Feb 17 23:30:20 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
4243
4244 * c-common.c (c_expand_start_cond, c_expand_end_cond,
4245 c_expand_start_else): Don't warn about non-ambiguous else even if
4246 braces are missing.
4247
68c9728a 4248Tue Feb 17 23:56:50 1998 Robert Lipe <robertl@dgii.com>
0a7ed33c 4249
68c9728a
RL
4250 * sco5.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT,
4251 ASM_OUTPUT_LONG_DOUBLE): Delete. Use the ones from i386.h
4252 instead.
4253
15941d29
RH
4254Tue Feb 17 22:56:14 1998 Richard Henderson <rth@cygnus.com>
4255
4256 * combine.c (simplify_rtx): Obey CLASS_CANNOT_CHANGE_SIZE when
4257 simplifying a subreg of a hard reg.
4258 (expand_compound_operation): Likewise.
4259 (force_to_mode): Likewise.
4260
5835e573
KG
4261Tue Feb 17 22:37:22 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4262
2fde567e
KG
4263 * fold-const.c: Include "system.h" to get stdlib.h and stdio.h.
4264 (lshift_double): Add parentheses around + or - inside shift.
4265 (rshift_double): Likewise.
4266 (size_int_wide): Explicitly set type of `bit_p' to `int'.
4267
4268 * Makefile.in (fold-const.o): Depend on system.h.
4269
8e85ff2c
KG
4270 * Makefile.in (gcc.o): Depend on system.h, in accordance with last
4271 change to gcc.c.
4272
5835e573
KG
4273 * haifa-sched.c: Include "system.h" to get <stdlib.h> and <stdio.h>.
4274 (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
4275 (sched_note_set): Remove unused parameter `b', all callers changed.
4276 (schedule_block): Likewise for `rgn'.
4277 (split_hard_reg_notes): Likewise for `orig_insn'.
4278 (check_live): Likewise for `trg'.
4279 (update_live): Likewise.
4280 (check_live_1): Explcitly declare variable `i' as int.
4281 (update_live_1): Likewise.
4282 (insn_issue_delay): Remove unused variable `link'.
4283 (sched_analyze_2): Add default case in enumeration switch.
4284 (schedule_insns): Remove unused variable `i'.
4285
4286 * Makefile.in ($(SCHED_PREFIX)sched.o): Depend on system.h.
4287
b1a0c816
JL
4288Tue Feb 17 22:31:04 1998 Jeffrey A Law (law@cygnus.com)
4289
4290 * loop.c (rtx_equal_for_loop_p): Add some braces to disambiguate
4291 a dangling else clause.
4292
365ca18b
GK
4293Tue Feb 17 21:28:12 1998 Gavin Koch <gavin@cygnus.com>
4294
4295 * mips/mips.h (CAN_ELIMINATE): Don't eliminate the frame
4296 pointer for the stack pointer in MIPS16 and 64BIT.
4297
feb60352
R
4298Tue Feb 17 21:17:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
4299
4300 * rtl.h (force_line_numbers, restore_line_number_status): Declare.
4301 * emit-rtl.c (force_line_numbers, restore_line_number_status):
4302 New functions.
4303 * stmt.c (struct nesting): Replace seenlabel with line_number_status.
4304 (expand_start_case): Adjust to this change.
4305 (check_seenlabel): New function.
4306 (pushcase, pushcase_range, expand_endcase): Use it.
4307
93f83bd5
R
4308Tue Feb 17 10:14:32 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4309
4310 * i386.md (adddi3): Add =!r,0,0,X alternative.
4311
b9af8fb0
DE
4312Mon Feb 16 16:13:43 1998 David Edelsohn <edelsohn@mhpcc.edu>
4313
4314 * rs6000.h (MY_ISCOFF): Add numeric value of U803XTOCMAGIC.
4315 * x-aix31 (INSTALL): Delete.
4316
a4dee8a5
GK
4317Mon Feb 16 09:24:32 1998 Gavin Koch <gavin@cygnus.com>
4318
b57062ca 4319 * mips/mips.c (mips_expand_epilogue): Update tsize_rtx if
a4dee8a5
GK
4320 tsize changes to something other than zero.
4321
8898f8a1
GK
4322Mon Feb 16 09:11:48 1998 Gavin Koch <gavin@cygnus.com>
4323
4324 * ginclude/va-mips.h: Replace casts of pointers to int with
4325 casts of pointers to __PTRDIFF_TYPE__.
4326
9ba7a303
JC
4327Mon Feb 16 08:17:14 1998 John Carr <jfc@mit.edu>
4328
4329 * loop.c (strength_reduce, record_biv, record_giv): Use
4330 HOST_WIDE_INT_PRINT_DEC to print CONST_INT values.
4331
b7f6588d
JM
43321998-02-16 Jason Merrill <jason@yorick.cygnus.com>
4333
4334 * tree.c (first_rtl_op): New fn.
4335 (unsave_expr_now): Use it.
4336 * print-tree.c (print_node): Likewise.
4337 * tree.c (has_cleanups): New fn.
4338 * fold-const.c (fold, case CLEANUP_POINT_EXPR): Use it. Be more
4339 conservative about pushing the cleanup point down.
4340 * tree.h: Declare them.
4341
8e7336f8
JL
4342Sun Feb 15 23:28:44 1998 Jeffrey A Law (law@cygnus.com)
4343
4344 * toplev.c (flag_schedule_reverse_before_reload): Delete variable.
4345 (flag_schedule_reverse_after_reload): Likewise.
4346 (f_options): Remove reverse scheduling support.
4347 * flags.h (flag_schedule_reverse_before_reload): Delete declaration.
4348 (flag_schedule_reverse_after_reload): Likewise.
4349 * haifa-sched.c (rank_for_schedule): Remove support for reverse
4350 scheduling.
b57062ca 4351
79e11844
KG
4352Sun Feb 15 21:33:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4353
17248a6b
KG
4354 * gcc.c: Get system includes, prototypes and macros via "system.h"
4355 instead of doing it manually. Change all calls of the ctype
4356 macros to custom versions defined in "system.h".
4357
79e11844
KG
4358 * system.h: Fix return type of bcmp prototype from `void' to `int'.
4359 Make bcopy, bcmp and bzero prototypes explicitly `extern'.
4360 Add a prototype for getenv.
4361
c9b4de06
JW
4362Sun Feb 15 17:05:41 1998 Jim Wilson <wilson@cygnus.com>
4363
4364 * mips/mips.h (INITIAL_ELIMINATION_OFFSET): Readd Jun 6 change.
4365
9f8f10de
JC
4366Sun Feb 15 15:23:15 1998 John Carr <jfc@mit.edu>
4367
4368 * alias.c: Include <stdlib.h> and <string.h>.
4369 (init_alias_analysis): Pass NULL_RTX instead of 0 to record_set.
4370
d757d141
JL
4371Sat Feb 14 11:23:09 PST 1998 Jeff Law (law@cygnus.com)
4372
4373 * version.c: Bump for snapshot.
4374
7a0a1f09
RE
4375Sat Feb 14 05:08:21 1998 Richard Earnshaw (rearnsha@arm.com)
4376
4377 * arm.md (movsfcc): Also validate operands[3] when compiling hard
4378 float.
4379 (movdfcc): Only accept fpu_add_operand for operands[3].
4380
99e90438
RE
4381 * arm/t-semi (STMP_FIXPROTO): Define to nothing.
4382 * arm/t-semiaof (STMP_FIXPROTO): Likewise.
4383
29a82058
JL
4384Sat Feb 14 02:02:41 1998 Jeffrey A Law (law@cygnus.com)
4385
4386 * varasm.c (output_constant_pool): Bring back 'done' label inside
4387 an appropriate #ifdef.
4388
b57062ca 4389 * bitmap.c (bitmap_element_allocate): Wrap variable 'i' in an
29a82058
JL
4390 appropriate #ifdef.
4391 (bitmap_copy, bitmap_operation): Likewise.
4392 * combine.c (combinable_i3pat): Similarly for 'src'.
4393 * function.c (fixup_var_refs_1): Similarly for 'outerdest'.
4394 (locate_and_pad_parm): Similarly for 'reg_parm_stack_space'.
4395 * regclass.c (copy_cost): Similarly for 'secondary_class'.
4396 * reload.c (make_memloc): Simliarly for 'i'.
4397 (find_reloads_address_1): Similarly for 'link'.
4398 * reload1.c (reload): Similarly for 'previous_frame_pointer_needed'.
4399 (emit_reload_insns): Similarly for 'second_reloadreg'.
4400 * unroll.c (iteration_info): Similarly for 'v'.
4401
4402 * caller-save.c (insert_save_restore): Remove unused variable 'i'.
4403 * calls.c (expand_call): Similarly for 'i'.
4404 (emit_library_call, emit_library_call_value): Similarly for 'mode'.
4405 * fold-const.c (strip_compund_expr): Similarly for 'type'.
4406 * function.c (fixup_var_refs_1): Similarly for 'width'.
4407 (fixup_memory_subreg): Similarly for 'saved'.
4408 (locate_and_pad_parm): Similarly for 'boundary_in_bytes.'
4409 (setjmp_protect): Similarly for 'sub'.
4410 (thread_prologue_and_epilogue_insns): Similarly for 'insn'.
4411 * loop.c (record_giv): Similarly for 'p'.
4412 (combine_givs): Similarly for 'temp_iv'.
4413 (indirect_jump_in_function_p): Similarly for 'is_indirect_jump'.
4414 * recog.c (validate_replace_rtx_1): Similarly for 'width'.
4415 * tree.c (get_set_constructor_bytes): Similarly for 'vals'.
4416 * unroll.c (unroll_loop): Similarly for 'copy'.
4417 (iteration_info): Similarly for 'b'.
4418 * varasm.c (assemble_string): Similarly for 'i'.
4419 * i386.h (LEGITIMIZE_ADDRESS): Similarly for 'orig_x'.
4420
7d02bbef
JM
44211998-02-13 Martin von Loewis <loewis@informatik.hu-berlin.de>
4422
4423 * c-lang.c (lang_print_xnode): New function.
4424 * objc/objc-act.c (lang_print_xnode): Likewise.
4425 * print-tree.c (print_node): Call it
4426
e3e7774e
JW
4427Fri Feb 13 14:38:34 1998 Jim Wilson <wilson@cygnus.com>
4428
4429 * dwarf2out.c (decl_scope_node): New type.
4430 (decl_scope_table): Change type to use it.
4431 (decl_scope_table_allocated, decl_scope_depth): Change type to int.
4432 (push_decl_scope): Use new type. New locals containing_scope, i.
4433 Add code to handle setting previous field.
4434 (scope_die_for): Change type of local i to int. Add code to use
4435 previous field.
4436 (dwarf2out_init): Use new type.
4437
442f0a30
JM
44381998-02-13 Jason Merrill <jason@yorick.cygnus.com>
4439
4440 * except.c (emit_throw): Lose throw_used.
4441
fcdc0d6e
R
4442Fri Feb 13 20:36:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4443
4444 * sched.c (update_flow_info, REG_WAS_0): Ignore if setting insn
4445 was deleted.
4446 * haifa-sched.c (update_flow_info, REG_WAS_0): Likewise.
4447
b7673cdb
JL
4448Fri Feb 13 12:18:40 1998 Jeffrey A Law (law@cygnus.com)
4449
4450 * genextract.c (main): Fix typo.
4451
9e4767ca 4452Fri Feb 13 08:41:49 1998 Robert Lipe <robertl@dgii.com>
69d4ca36 4453
b57062ca 4454 * c-lang.c (finish_file): Bracket declaration of static_ctors,
69d4ca36
RL
4455 static_dtors.
4456
4457 * calls.c (expand_call): Bracket declaration of 'rtx_before_call',
4458 'old_stack_arg_under_construction'
b57062ca 4459 (emit_library_call): Bracket declaration of 'upper_bound',
69d4ca36
RL
4460 'lower_bound', 'i', 'reg_parm_stack_space'
4461 (emit_library_call_value): Likewise.
b57062ca 4462 (store_one_arg):
69d4ca36
RL
4463
4464 * collect2.c: include <unistd.h> when appropriate.
4465 Bracket declaration of 'exportf' and 'full_real_ld_suffix'.
4466
4467 * emit-rtl.c (prev_cc0_setter): Remove unused variable 'link'.
b57062ca 4468
69d4ca36
RL
4469 * explow.c (plus_constant_for_output_wide): Remove unused variable
4470 'code'.
b57062ca 4471 (memory_address): Remove unused variable 'orig_x'.
69d4ca36
RL
4472
4473 * genattrtab.c (make_canonical): Remove unreferenced label 'cond:'.
4474 (write_const_num_delay_slots): Remove unused variable 'i'.
4475
4476 * genopinit.c (main): Remove unused variables 'dummy', 'insn_ptr'.
4477 (gen_insn): Remove unused variable 'obstack_ptr'.
4478
4479 * libgcc2.c (__bb_exit_func): Remove unused variables 'ret',
4480 'j', 'tmp', 'i'.
4481 (__bb_exit_trace_func): Remove unused variable 'e'.
4482
4483 * optabs.c (expand_binop): remove unused variables 'lhs', 'rhs',
4484 'funexp'.
4485 (expand_unop): Remove unused variable 'funexp'.
b57062ca 4486 (expand_complex_abs): Remove unused variable 'funexp'.
69d4ca36
RL
4487 (init_optabs): Bracket declaration of 'j'.
4488 (init_complex_libfuncs): Deleted. Dead static function.
b57062ca 4489
69d4ca36
RL
4490 * profile.c (branch_prob): Remove unused variables 'insn', 'dest'.
4491
4492 * reg-stack.c: Fix typo in proto for 'get_asm_operand_lengths'
4493 (reg_to_stack): 'initialized', 'before_function_beg'
4494 explictly type as ints instead of defaulting.
4495 (emit_swap_insn): Remove unused variable 'i2'.
4496 (compare_for_stack_reg): Remove unused variable 'src_note'.
4497
4498 * rtlanal.c (computed_jump_p): Remove unused variable 'computed_jump'.
4499
4500 * sched.c (actual_hazard): Bracket declaration of 'this_cost'.
4501
4502 * stmt.c (add_case_node): Add parens for assignment used as truth.
4503 (all_cases_count): Remove unused variable 'count_high'.
4504 (mark_seen_cases): Remove unused variable 'i'.
4505 (check_for_full_enumeration_handling): Remove unused variable 't'.
4506 Bracket declaration of 'all_values', 'l'.
b57062ca 4507
69d4ca36
RL
4508 * tlink.c: Include <stdlib.h>, <unistd.h>, <string.h>/<strings.h>.
4509
b57062ca
UD
4510 * varasm.c (assemble_string): Remove unused variable 'i'.
4511 (immed_double_const): Remove unused variable 'in_current_obstack'.
69d4ca36
RL
4512 (immed_real_const_1): Likewise.
4513 (output_constant_pool): Remove unreferenced label 'done'.
4514 (output_constant): Remove unused variable 'x'.
b57062ca 4515
69d4ca36
RL
4516 * i386/i386.h (ENCODE_SECTION_INFO): TREE_PUBLIC is an int, not
4517 a string.
4518
4519 * i386/sco5.h (ASM_OUTPUT_ASCII): Add parens for assignment used
4520 as truth.
4521
e3258cef
R
4522Fri Feb 13 10:21:41 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4523
4524 * combine.c (can_combine_p): Handle USEs in PARALLELs.
4525
1398405b
L
4526Fri Feb 13 01:34:14 1998 H.J. Lu (hjl@gnu.org)
4527
4528 * config/linux.h (LIB_SPEC): Add -lc for -shared if
4529 USE_GNULIBC_1 is not defined.
4530 * config/sparc/linux.h; Ditto.
4531
4532 * config/sparc/linux64.h (LIB_SPEC): Add -lc for -shared.
4533
4534 * config/alpha/linux-elf.h (LIB_SPEC): New. Defined if
4535 USE_GNULIBC_1 is not defined.
4536
03453a9f
FS
4537Fri Feb 13 01:29:29 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
4538
4539 * rs6000/sysv4.h (ENDFILE_SPEC): add missing %(endfile_linux)
4540 for -mcall-linux
4541
aca69483 4542Fri Feb 13 01:23:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 4543
aca69483
KG
4544 * system.h: New file to get common systems includes and various
4545 definitions and declarations based on autoconf macros.
4546
5e0e0f03
JL
4547Fri Feb 13 00:46:19 1998 Jeffrey A Law (law@cygnus.com)
4548
4549 * cccp.c (new_include_prefix): Correctly handle -I./.
4550
89e9f3a8
MM
4551Thu Feb 12 20:16:35 1998 Michael Meissner <meissner@cygnus.com>
4552
4553 * rs6000.md: Replace gen_rtx (CONST_INT,...) with GEN_INT.
4554
8bd6ecc2 4555Thu Feb 12 16:45:17 1998 Robert Lipe <robertl@dgii.com>
89e9f3a8 4556
b57062ca 4557 * expr.c (expand_assignment): Correct typo exposed by -Wall.
8bd6ecc2
RL
4558 offset should have been a truth value, not an assignment.
4559
614bb5d4
JL
4560Thu Feb 12 15:26:50 1998 Jeffrey A Law (law@cygnus.com)
4561
4562 * cse.c (delete_dead_from_cse): If a libcall produces a constant
4563 result and that result can be substituted into SET_SRC of the
4564 insn with the REG_RETVAL note, then perform the substitution
4565 and delete the libcall.
4566
00bb4b62
GK
4567Thu Feb 12 14:04:09 1998 Gavin Koch <gavin@cygnus.com>
4568
b57062ca 4569 * mips.md (trucndihi2,truncdiqi2): Change these to support
00bb4b62
GK
4570 mips16.
4571
3871c609
GK
4572Thu Feb 12 11:34:55 1998 Gavin Koch <gavin@cygnus.com>
4573
4574 * mips/mips.c (movdi_operand): Direct referances to symbols
4575 that arn't mips16 consts in mips16 mode arn't valid operands.
4576
4577 * mips/mips.c (mips_move_2words): Add gprel handling.
4578
2e72fa6a
GK
4579Thu Feb 12 11:18:37 1998 Gavin Koch <gavin@cygnus.com>
4580
b57062ca 4581 * mips.md (extendsidi2): Allow extension to/from a non-mips16
2e72fa6a
GK
4582 register.
4583
a4910340
ML
4584Thu Feb 12 00:04:16 1998 Marc Lehmann <pcg@goof.com>
4585
4586 * i386.c: Conditionally include <stdlib.h>, <string.h>, and
4587 <strings.h>.
4588
cc1e5b9a
KG
4589Wed Feb 11 11:43:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4590
4591 * Makefile.in (WARN_CFLAGS): New variable.
4592 (bootstrap, bootstrap2, bootstrap3, bootstrap4): Use it.
4593
53949fac
MM
45941998-02-11 Mark Mitchell <mmitchell@usa.net>
4595
4596 * config/i386/i386.c (reg_mentioned_in_mem): Don't abort when
4597 falling through default case in switch.
4598 (i386_aligned_p): Likewise.
4599
9504c31c
LI
4600Wed Feb 11 12:59:56 1998 Lee Iverson <leei@Canada.AI.SRI.COM>
4601
4602 * mips/mips.h (mips_abi_string): Correct typo in comment.
4603
7e4e0956
GK
4604Wed Feb 11 08:29:56 1998 Gavin Koch <gavin@cygnus.com>
4605
4606 * mips/mips.md (movdi): These PLUS's need to be Pmode.
4607
8fb3ae15
KG
4608Wed Feb 11 01:47:54 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4609
4610 * Makefile.in (dwarf2out.o, emit-rtl.o, jump.o, cse.o, unroll.o,
4611 reorg.o, regmove.o): Depend on insn-codes.h, it gets included
4612 indirectly via expr.h.
4613
a2d53b28
RH
4614Wed Feb 11 01:44:13 1998 Richard Henderson <rth@cygnus.com>
4615
4616 * stor-layout.c (layout_type): Do upper - lower in the native type,
4617 so as to properly handle negative indices.
4618
381127e8
RL
4619Wed Feb 11 01:35:55 1998 Robert Lipe <robertl@dgii.com>
4620
4621 * except.c (start_dynamic_cleanup): Remove unused variable 'dhc'.
4622 (expand_eh_region_start_tree): Remove unused variable 'note'.
4623 (exception_optimize): Remove unused variable 'regions'.
4624 (expand_builtin_eh_stub): Remove unused variable 'temp'.
4625 (copy_eh_entry): Deleted. Dead function.
4626
b57062ca 4627 * expr.c (move_block_to_reg) Bracket declaration of 'pat' and
381127e8
RL
4628 'last' with same #if HAVE_load_multiple as use of it.
4629 (move_block_from_reg): Likewise.
4630 (emit_move_insn_1): Remove unused variable 'insns'.
b57062ca
UD
4631 (store_constructor): Bracket declaration of startb, endb with
4632 #if TARGET_MEMFUNCTIONS. Remove unused variables 'set_word_size'
381127e8 4633 'target', and 'xtarget'.
b57062ca 4634 (expand_builtin_setjmp): Remove unused variables 'op0',
381127e8 4635 'next_arg_reg', 'old_inhibit_defer_pop'.
b57062ca 4636 (expand_builtin): Remove unused variable 'offset'.
381127e8
RL
4637 (do_store_flag): Remove unused variables 'pattern', 'jump_pat'.
4638 (emit_queue): Add parens for assignment used as conditional.
4639 (expand_expr): case TARGET_EXPR: Remove unused variable 'temp'.
4640
00c79232
ML
4641Wed Feb 11 01:30:49 1998 Marc Lehmann <pcg@goof.com>
4642
b57062ca 4643 * i386.c: Added include for recog.h.
00c79232
ML
4644 (override_options): Removed unused variable p. Initialized regno to
4645 avoid warning.
4646 (order_regs_for_local_alloc): Initialized regno to avoid warning.
4647 (legitimize_address): Likewise for 'other'.
4648 (i386_aligned_reg_p): Added default case with abort ().
4649 (print_operand): Likewise.
4650 (reg_mentioned_in_mem): Likewise.
4651 (ix86_expand_binary_operator): Removed unused variables i & insn.
4652 (ix86_expand_unary_operator): Removed unused variable insn.
4653 (output_fp_cc0_set): Removed unused variable unordered_label.
4654
f64cecad
JC
4655Wed Feb 11 01:23:03 1998 John F. Carr <jfc@mit.edu>
4656
4657 * i386.c, i386.h, i386.md: Change gen_rtx (X, ...) to gen_rtx_X (...).
4658 Use GEN_INT instead of gen_rtx (CONST_INT). Make printf arguments
4659 and format string match.
4660
0200b5ed
JL
4661Wed Feb 11 01:17:39 1998 Jeffrey A Law (law@cygnus.com)
4662
4663 * flow.c (life_analysis): Do not conside the stack pointer live at
4664 the end of a function if the fucntio ncalls alloca.
4665 (mark_used_regs): Similarly.
4666
74ccf2c2
JC
46671998-02-10 John F Carr <jfc@mit.edu>
4668
4669 * config/sparc/sparc.md (movdi_v8plus): Output stx on alternative
4670 1, fzero on alternative 8.
4671
60e2d0ca
RK
4672Tue Feb 10 09:02:19 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4673
4674 * rs6000.c (setup_incoming_varargs): Always set rs6000_sysv_varargs_p.
4675
2fd0af53
R
4676Tue Feb 10 03:35:43 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4677
4678 * reload.c (find_reloads_toplev): Handle arbitrary non-paradoxical
4679 SUBREGs of CONST_INTs.
4680
a96c3544
JC
4681Mon Feb 9 17:52:36 1998 John Carr <jfc@mit.edu>
4682
4683 * mips.c (print_operand, function_prologue): Make printf format
4684 match argument type.
4685
2514cbc9
KG
4686Mon Feb 9 02:37:25 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4687
4688 * alpha.c (alpha_return_addr): Remove unused variable `first'.
4689 (alpha_ra_ever_killed): Remove unused variables `ra' and `i'.
4690 (output_epilog): Remove unused variable `frame_size_from_reg_save'.
4691
72b0c616
RK
4692Sun Feb 8 14:56:03 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4693
4694 * loop.c (strength_reduce): When placing increment for auto-inc
4695 case, do comparison in loop order.
b57062ca 4696
2e0dd623
JC
4697Sun Feb 8 13:21:38 1998 John Carr <jfc@mit.edu>
4698
4699 * bitmap.c (bitmap_debug_file): HOST_PTR_PRINTF converts a pointer,
4700 not a HOST_WIDE_INT.
4701
4702 * calls.c (expand_call): Change test of expand_inline_function
4703 return value to stop compiler warning.
4704
4705 * genattrtab.c (RTL_HASH): Cast pointer to long, not HOST_WIDE_INT.
4706
7bf825d2
JW
4707Sun Feb 8 12:04:24 1998 Jim Wilson (wilson@cygnus.com)
4708 Jeff Law (law@cygnus.com)
4709
4710 * regmove.c: Fix various minor formatting problems.
4711 (optimize_reg_copy_1): Stop search at CALL_INSNs if flag_exceptions
4712 is true. Make end of basic block tests consistent through regmove.c.
4713 (optimize_reg_copy_2, optimize_reg_copy_3): Likewise.
4714 (fixup_match_2, fixup_match_1, regmove_optimize): Likewise.
4715
7d4679ea
KG
4716Sun Feb 8 01:49:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4717
4718 * gansidecl.h: Check for a conflicting macro definition before
4719 attempting to prototype bcopy, bcmp or bzero.
4720
b515ab3d
JL
4721Sun Feb 8 00:09:59 1998 Jeffrey A Law (law@cygnus.com)
4722
060fbabf
JL
4723 * expr.c (clear_pending_stack_adjust): Handle case where a function
4724 calls alloca, but the user has specified -fomit-fframe-pointer.
4725
b515ab3d
JL
4726 * function.c (assign_parms): Fix typo in last change.
4727
ccd043a9
RL
4728Sat Feb 7 23:54:29 1998 Robert Lipe <robertl@dgii.com>
4729
ededb2fc
RL
4730 * gcc.c: Include <strings.h>/<string.h>, <stdlib.h>, <unistd.h>,
4731 <fcntl.h>.
4732 (free_path_suffix): Remove unreferenced static function.
4733 (process_command): Remove unused variable temp.
4734 (default_arg): Remove unused variable i.
4735 (do_spec_1): Add parens for assignment used as truth value.
4736 (main): Likewise.
4737 (validate_all_switches): Likewise.
4738 (main): Remove unused variables i, first_time>
4739
ccd043a9
RL
4740 * c-common.c: Include <stdlib.h> and <string.h>/<strings.h>.
4741
4742 * calls.c (expand_call): Remove unused variables funtree,
4743 n_regs, and tmpmode.
4744
4745 * dbxout.c, except.c: Include <string.h>/<strings.h>.
4746
4747 * explow.c: (plus_constant_for_output_wide) Removed unused
4748 variable all_constant.
4749
4750 * c-decl.c, genattr.c, genattrtab.c, getconfig.c, genemit.c
4751 genextract.c, genflags.c, genopinit.c genoutput.c, genpeep.c,
4752 genrecog.c, global.c, integrate.c , stupid.c : Include
4753 <stdlib.h>.
4754
4755 * genextract.c: (walk_rtx) Remove unused variable link.
4756
4757 * genrecog.c: (concat) Remove unreferenced static function.
4758
4759 * prefix.c: Include <string.h>/<strings.h>, <stdlib.h>
4760
b57062ca
UD
4761 * stmt.c: Include <stdlib.h>.
4762 (expand_asm_operands): Remove unused variable val1.
ccd043a9
RL
4763 (expand_return): Remove unused variable block.
4764 (pushcase): Remove unused variables l and n.
4765 (pushcaserange): Likewise.
4766
4767 * unroll.c (unroll_loop): Remove unused variable temp.
4768
6553db01
GM
4769Sat Feb 7 23:46:09 1998 Greg McGary <gkm@gnu.org>
4770
4771 * c-decl.c (pushdecl): Set DECL_ORIGINAL_TYPE once only.
4772
8479e1db
KG
4773Sat Feb 7 15:11:28 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4774
4775 * aclocal.m4 (GCC_FUNC_PRINTF_PTR): New macro to test the printf
4776 functions for whether they support the %p format specifier.
4777 * acconfig.h (HOST_PTR_PRINTF): Insert stub for autoconf.
4778 * configure.in (GCC_FUNC_PRINTF_PTR): Use it.
4779 * configure, config.in: Rebuild.
4780
bf9c83fe
JW
4781Fri Feb 6 14:20:16 1998 Jim Wilson <wilson@cygnus.com>
4782
4783 * function.c (assign_parms): New variable named_arg, with value
4784 depending on STRICT_ARGUMENT_NAMING. Use instead of ! last_named.
4785
09e4daf5
GK
4786Fri Feb 6 14:34:28 1998 Gavin Koch <gavin@cygnus.com>
4787
b57062ca 4788 * mips/t-r3900: New - same as t-ecoff but eliminate
09e4daf5
GK
4789 multilibs: mips1 and mips3.
4790 * configure.in (tx39*): Use new mips/t-r3900.
4791 * configure: Rebuild.
4792 * mips/r3900.h (MULTILIB_DEFAULTS): Eliminate mips1.
4793
b57d9225
JM
47941998-02-06 Jason Merrill <jason@yorick.cygnus.com>
4795
4796 * dwarf2out.c: Add old_args_size.
4797 (dwarf2out_args_size): Use it.
4798 (dwarf2out_begin_prologue): Initialize it.
4799 (dwarf2out_stack_adjust): If !asynchronous_exceptions, save up
4800 pushed args until we see a call.
4801 * final.c (final_scan_insn): Hand CALL_INSNs off to the dwarf2 code
4802 before outputting them.
4803
48041998-02-06 Kriang Lerdsuwanakij <lerdsuwa@scf.usc.edu>
4805
4806 * cplus-dem.c (demangle_template_template_parm): New function.
4807 (demangle_template): Handle template template parameters.
4808
259620a8
MM
48091998-02-02 Mark Mitchell <mmitchell@usa.net>
4810
4811 * calls.c (expand_call): Don't confuse member functions named
4812 realloc, setjmp, and so forth with the standard library
4813 functions of the same names.
4814
78418280
JL
4815Thu Feb 5 21:59:49 1998 Jeffrey A Law (law@cygnus.com)
4816
4817 * stmt.c (expand_asm_operands): Correctly identify asm statements
94e5565f 4818 no output operands.
78418280 4819
6d819282 4820Thu Feb 5 21:56:06 1998 Mumit Khan <khan@xraylith.wisc.edu>
b57062ca 4821
6d819282
MK
4822 * c-common.c (decl_attributes): Flag unrecognized attribute
4823 functions as warnings instead of as errors.
4824
aec98e42
ML
48251998-02-05 Marc Lehmann <pcg@goof.com>
4826
4827 * integrate.c (INTEGRATE_THRESHOLD): Inline only small functions
4828 when -Os is specified.
4829 * toplev.c (main): Don't disable flag_inline_functions anymore when
4830 -Os is in effect.
4831
1230327b
R
4832Fri Feb 6 00:27:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4833
4834 * regmove.c: Update.
4835 * flags.h (flag_regmove): Declare.
4836 * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Don't declare.
4837 * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2):
4838 Moved into regmove; changed caller.
4839 * toplev.c (rest_of_compilation): Call regmove_optimize also for
4840 expensive_optimizations.
4841
1aca1e76
JL
4842Thu Feb 5 13:38:42 PST 1998 Jeff Law (law@cygnus.com)
4843
4844 * version.c: Bump for snapshot.
4845
2993ce4c
R
4846Thu Feb 5 01:45:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4847 Undo this change (the problem was actually in reload):
4848 Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4849
4850 * sh.md (movqi_i+1): New peephole.
4851
0340ed6c
JL
4852Tue Feb 3 01:11:12 1998 Jeffrey A Law (law@cygnus.com)
4853
e535528b
JL
4854 * jump.c (jump_optimize): Lose calls to modified_in_p they are
4855 not needed anymore due to changes elsewhere in jump.c.
4856
0340ed6c
JL
4857 * jump.c (jump_optimize): Fix first arg to modified_in_p in
4858 previous change.
4859
6fd1c67b
RH
4860Mon Feb 2 19:18:14 1998 Richard Henderson <rth@cygnus.com>
4861
4862 * expr.c (expand_builtin_setjmp): Accept two new arguments for
4863 the labels to branch to on first and subsequent executions. Don't
4864 play with __dummy. Rename `setjmp' insn to `builtin_setjmp_setup',
4865 and provide it with the jmp_buf. Use only one of
4866 `builtin_setjmp_receiver' or `nonlocal_goto_receiver',
4867 and provide the former with the target label.
4868 (expand_builtin) [BUILTIN_SETJMP]: Generate a label for use by setjmp.
4869 (expand_builtin) [BUILTIN_LONGJMP]: Split out to ...
4870 (expand_builtin_longjmp): ... here. Recognize a `builtin_longjmp'
4871 insn to replace all of the normal nonlocal_goto code. Don't play
4872 with __dummy. Correct arguments to nonlocal_goto.
4873 * expr.h (expand_builtin_setjmp): Update prototype.
4874 * except.c (start_dynamic_handler): When using builtin_setjmp,
4875 generate more accurate flow information.
4876
4877 * alpha.md (nonlocal_goto_receiver_osf): Delete.
4878 (nonlocal_goto_receiver_vms): Rename to nonlocal_goto_receiver.
4879 (builtin_longjmp, builtin_setjmp_receiver): New.
4880 * sparc.md (update_return): Disambiguate unspec number.
4881 (nonlocal_goto): Rearrange arguments to match caller in except.c.
4882 (builtin_setjmp_setup): Rename from setjmp. Match and ignore the
4883 jmp_buf operand.
4884 * mips.md (nonlocal_goto_receiver, builtin_setjmp_receiver): Remove.
4885 (builtin_setjmp_setup*, builtin_longjmp): New.
4886
95936d18
JC
4887Mon Feb 2 16:43:10 1998 John Carr <jfc@mit.edu>
4888
4889 * mips.md: Change gen_rtx (CONST_INT) to GEN_INT.
4890
c120c689
JW
4891Mon Feb 2 13:06:47 1998 Jim Wilson <wilson@cygnus.com>
4892
4893 * vmsconfig.com: Remove bytecode references.
4894
1a56b81f
AS
48951998-01-30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4896
91193900
AS
4897 * dwarf2out.c (dwarf2out_frame_init): Undo last change, so that
4898 -fno-sjlj-exceptions works for a target that defines
4899 DWARF2_UNWIND_INFO as zero.
4900
1a56b81f
AS
4901 * regmove.c (fixup_match_1): Undo last change which removed some
4902 "useless" code, and add a comment explaining this.
4903
e4b3de45
GK
4904Mon Feb 2 10:47:14 1998 Gavin Koch (gavin@cygnus.com)
4905
4906 * mips.c (mips_expand_prologue): Change uses of TARGET_64BIT
4907 to TARGET_LONG64.
4908
2aabb736
KK
4909Mon Feb 2 10:38:41 1998 Klaus Kaempf <kkaempf@progis.de>
4910
4911 * makefile.vms: Remove bytecode references.
4912 Create genrtl files.
4913
7457661d
MH
4914Mon Feb 2 02:08:04 1998 Michael P. Hayes <michaelh@ongaonga.chch.cri.nz>
4915
4916 * jump.c (jump_optimize): Allow conditional loading of floating point
4917 constants and constants from memory. Reinstalled modified_in_p tests.
4918
460f50dc
R
4919Mon Feb 2 01:38:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4920
4921 * loop.c (get_condition): Handle sign-extended constants.
4922
7a6df7f9
HPN
4923Mon Feb 2 01:22:46 1998 Hans-Peter Nilsson <hp@axis.se>
4924
db771a3c
HPN
4925 * expr.c (emit_push_insn): Add code to use movstrti if present.
4926
7a6df7f9
HPN
4927 * expr.c (emit_push_insn): Use same max-move-amount for movstrhi
4928 and movstrqi as in emit_block_move ().
4929
ceb6edf2
TM
4930Mon Feb 2 00:09:52 1998 Toon Moene <toon@moene.indiv.nluug.nl>
4931
4932 * config/m68k/x-next: Remove /NextDeveloper/Headers from
4933 the directories to fixinclude - /usr/include is a link
4934 to it and hence its contents are fixed by default.
4935
9cddeb31
FS
4936Sun Feb 1 14:15:33 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
4937
4938 * rs6000/linux.h: define JUMP_TABLES_IN_TEXT_SECTION
4939
d2f05a0a
KK
4940Sun Feb 1 13:01:15 1998 Klaus Kaempf <kkaempf@progis.de>
4941
4942 * cccp.c (main): Predefine __VMS_VER on VMS.
4943
f8dac6eb
R
4944Sun Feb 1 12:39:53 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4945
4946 * expr.c (get_inner_reference): Use sbitsizetype for type sizes.
4947 * fold-const.c (size_int): Replace with
4948 (size_int_wide).
4949 (make_bit_field_ref): Use bitsize_int for bit position.
4950 * stor-layout.c (sizetype): Delete.
4951 (sizetype_tab, sbitsizetype, ubitsizetype): Declare.
4952 (layout_record, layout_union, layout_type):
4953 Use bitsize_int for bit size.
4954 (set_sizetype): New function.
4955 (make_signed_type, make_unsigned_type): Use it.
4956 * c-decl.c (init_decl_processing): Likewise.
4957 * tree.h (size_int): Don't delcare, #define.
4958 (size_int_wide, sizetype_tab, sbitsize, ubitsize): Declare.
4959 (set_sizetype): Declare.
4960 (bitsize_int, size_int_2, BITS_PER_UNIT_LOG, sizetype, bitsizetype):
4961 Define.
4962 * c-typeck.c (c_sizeof, c_sizeof_nowarn, c_size_in_bytes):
4963 Convert result to sizetype.
4964 (really_start_incremental_init, push_init_level):
4965 Set type of constructor_bit_index to sbitsizetype.
4966 (push_init_level): Use unsigned arithmetic to determine padding.
4967 (output_init_element): Likewise.
4968
b577a8ff
JL
4969Sun Feb 1 03:32:07 1998 Jeffrey A Law (law@cygnus.com)
4970
4971 * combine.c (simplify_shift_const): Fix typo in last change.
4972
6e0ef100
JC
4973Sun Feb 1 02:50:46 1998 John Carr <jfc@mit.edu>
4974
4975 * combine.c (simplify_shift_const): (lshiftrt (truncate (lshiftrt)))
4976 is (truncate (lshiftrt)).
4977
4208b40f
RH
4978Sun Feb 1 01:06:53 1998 Richard Henderson <rth@cygnus.com>
4979
4980 * alpha.c (alpha_expand_unaligned_load): Use expand_binop properly.
4981 Make sure result winds up in TGT.
4982 (alpha_expand_unaligned_store): Use expand_binop properly. Allow
4983 src to be other than DImode.
4984 (alpha_expand_unaligned_load_words): Tidy. Take an offset argument.
4985 (alpha_expand_unaligned_store_words): Likewise.
4986 (alpha_expand_block_move): Use REGNO_POINTER_ALIGN. Restructure so
4987 that source and destination are separately optimized for alignment.
4988 (alpha_expand_block_clear): Use REGNO_POINTER_ALIGN.
4989
82301b88
JL
4990Sun Feb 1 01:55:09 1998 Jeffrey A Law (law@cygnus.com)
4991
4992 * mips.md (adddi3_internal_2): Be consistent with adddi3 expander
4993 with handling of -32768.
4994
a81fb89e
KG
4995Sun Feb 1 01:48:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4996
4997 * aclocal.m4 (GCC_NEED_DECLARATION): Modify macro to accept a
4998 shell variable argument instead of only hard coded functions.
4999 (GCC_NEED_DECLARATIONS): New macro to accept multiple functions.
5000
5001 * configure.in: Collapse multiple calls to AC_CHECK_FUNCS into one
5002 call. Collapse multiple calls to GCC_NEED_DECLARATION into one
5003 call to GCC_NEED_DECLARATIONS (new macro.) Check if we need
5004 declarations for bcopy, bcmp and bzero.
5005
5006 * acconfig.h: Add stubs for bcopy, bcmp and bzero declarations.
5007
5008 * gansidecl.h: If we have bcopy but don't declare it, then do so.
5009 Likewise for bcmp and bzero. Only define macros for bcopy, bcmp,
5010 bzero, index and rindex if they aren't already present.
5011
eed90b2c
JL
5012Sat Jan 31 11:26:58 1998 Jeffrey A Law (law@cygnus.com)
5013
b57062ca 5014 * toplev.c (close_dump_file): Wrap function prototype for
eed90b2c
JL
5015 argument "func" in PROTO.
5016 (dump_rtl): Likewise.
5017
bfd6bc60
JC
5018Fri Jan 30 22:30:39 1998 John Carr <jfc@mit.edu>
5019
5020 * sparc.c (sparc_override_options): Make v8plus and ultrasparc set
5021 MASK_V8PLUS.
5022 (output_function_epilogue): Omit epilogue if nothing drops through.
5023 (output_move_double): Supress int ldd usage on ultrasparc and v9.
5024 (registers_ok_for_ldd_peep): Likewise.
5025 (print_operand): Supress b,a on ultrasparc. Let Y accept a constant.
5026 (ultrasparc_adjust_cost): New function.
5027 (sparc_issue_rate): New function.
5028 * sparc.h (MASK_VIS, TARGET_VIS): New
5029 (MASK_V8PLUS, TARGET_V8PLUS): New.
5030 (TARGET_HARD_MUL32, TARGET_HARD_MUL): New.
5031 (TARGET_SWITCHES): Add vis and v8plus.
5032 (REG_CLASS_FROM_LETTER): Accept d and b for VIS.
5033 (REGISTER_MOVE_COST): FP<->INT move cost 12 for ultrasparc.
5034 (RTX_COSTS): Use TARGET_HARD_MUL
5035 (ADJUST_COST): Call ultrasparc_adjust_cost.
5036 (ISSUE_RATE): New.
5037 * sparc.md (attr type): Add sload, fpmove, fpcmove. Adjust users
5038 of load & fp appropritely.
5039 (supersparc function units): Adjust for Haifa.
5040 (ultrasparc function units): Likewise.
5041 (get_pc_via_rdpc): All v9, not just arch64.
5042 (movdi_v8plus, movdi_v8plus+1): New.
5043 (adddi3_sp32+1): New.
5044 (subdi3_sp32+1): New.
5045 (movsi_insn, movsf_const_insn, movdf_const_insn): Know VIS.
5046 (addsi3, subsi3, anddi3_sp32, andsi3, and_not_di_sp32): Likewise.
5047 (and_not_si, iordi3_sp32, iorsi3, or_not_di_sp32, or_not_si): Likewise.
5048 (xorsi3_sp32, xorsi3, xor_not_di_sp32, xor_not_si): Likewise.
5049 (one_cmpldi2_sp32, one_cmplsi2): Likewise.
5050 (ldd peepholes): Suppress for v9.
5051 (return_adddi): Kill redundant test. Arg1 may be arith_operand.
5052 (return_subsi): Revmove.
5053
4b526a9a
JC
5054Fri Jan 30 18:30:03 1998 John F Carr <jfc@mit.edu>
5055
5056 * mips.c (save_restore_insns): Set RTX_UNCHANGING_P in register
5057 save/restore MEM rtl.
5058
64a438d6
JL
5059Fri Jan 30 09:08:16 1998 Jeffrey A Law (law@cygnus.com)
5060
5061 * configure.in: Check for declaration of abort.
9c893359 5062 * acconfig.h: Corresponding changes.
64a438d6
JL
5063 * toplev.c: Use NEED_DECLARATION_ABORT to determine if abort should
5064 be declared.
5065
f266c82f
JL
5066Thu Jan 29 20:26:12 1998 Jeffrey A Law (law@cygnus.com)
5067
5068 * genattrtab.c (optimize): Define in case PRESERVE_DEATH_INFO_REGNO_P
5069 uses it.
5070
31fa4410
JL
5071Thu Jan 29 09:27:56 PST 1998 Jeff Law (law@cygnus.com)
5072
5073 * version.c: Bump for snapshot.
5074
0ee31ab1
JL
5075Thu Jan 29 10:12:27 1998 Jeffrey A Law (law@cygnus.com)
5076
5077 * configure.in: Check for atoq and atoll.
5078 * rtl.c (read_rtx): Use HAVE_ATOLL and HAVE_ATOQ to select the
5079 proper routine for converting ascii into long long values.
5080
eeeb91c5
KK
5081Thu Jan 29 01:28:14 1998 Klaus Kaempf <kkaempf@progis.de>
5082
9d21ee77
KK
5083 * cccp.c (SYS$SEARCH, SYS$PARSE): Write as upper-case.
5084
5085 * vmsconfig.com: Remove bytecode references.
5086
5087 * alpha/vms.h (PREFIX): Define.
5088
5089 * alpha/vms.h (ASM_OUTPUT_ALIGNED_COMMON): Remove.
5090
eeeb91c5
KK
5091 * am-alpha.h: Don't include alloca for OPEN_VMS.
5092
5093 * alpha/xm-vms.h (HAVE_CPP_STRINGIFY): Define.
5094
5095 * alpha/xm-vms.h (INCLUDE_DEFAULTS): Define.
5096 (GCC_INCLUDE_DIR): Define
5097
5098 * make-cc.com, make-cccp.com, make-cc1.com: Removed.
5099 * makefile.vms: New file.
5100
5101 * alpha/vms.h (CPP_PREDEFINES): Remove -Dalpha.
5102
5103 * alpha.c (output_prolog): Output '.name' directive
5104 for minimal traceback information.
5105
5106 * alpha.c (output_prolog): Don't prepend entry point symbols
5107 with '$' on OPEN_VMS.
5108
76d31c63
JL
5109Thu Jan 29 00:25:35 1998 David S. Miller <davem@tanya.rutgers.edu>
5110 Jeffrey A Law (law@cygnus.com)
5111
5112 * rtl.c (read_rtx): Use atol/atoq based upon disposition of
5113 HOST_WIDE_INT.
5114
5115 * genattrtab.c (write_test_expr): Use HOST_WIDE_INT_PRINT_DEC
5116 as needed.
5117 * genemit.c (gen_exp): Likewise.
5118 * genpeep.c (match_rtx): Likewise.
5119 * genrecog.c (write_tree_1): Likewise.
5120
5121 * c-lex.c (yyprint): Use proper format string based upon
5122 disposition of HOST_BITS_PER_WIDE_INT.
5123 (yylex): Put casts in right place for args to build_int_2.
5124
5125Thu Jan 29 00:24:29 1998 Jeffrey A Law (law@cygnus.com)
5126
5127 * combine.c: Fix typos in Jan27 changes.
5128
1b7555bd
OR
5129Thu Jan 29 00:07:49 1998 Ollivier Robert <roberto@keltia.freenix.fr>
5130
5131 * i386/freebsd.h (LIB_SPEC): Correctly handle -shared, -p and friends.
5132 (LINK_SPEC): Likewise.
5133 (STARTFILE_SPEC): Likewise.
5134
21ca87b8
MS
51351998-01-28 Mike Stump <mrs@wrs.com>
5136
5137 * rtlanal.c (dead_or_set_regno_p): Ignore REG_DEAD notes after
5138 reload completes.
5139 * genattrtab.c (reload_completed): Define.
5140
5141 * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Remove obsolete
5142 comments.
5143
d2c92f5a
R
5144Wed Jan 28 20:11:06 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5145
5146 * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
5147 SUBREG_REG if the word count is unchanged, also in the input reload
5148 case. Disable non-applicable sanity checks.
5149
90ad3ab7
JL
5150Wed Jan 28 20:08:26 1998 Jeffrey A Law (law@cygnus.com)
5151
5152 * config/t-svr4 (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
5153
7fad712c
ILT
5154Wed Jan 28 20:04:43 1998 Ian Lance Taylor <ian@cygnus.com>
5155
5156 * i386/t-cygwin32 (LIMITS_H_TEST, LIBGCC2_INCLUDES): Define.
5157
2290e0ec
PB
5158Wed Jan 28 11:45:27 1998 Per Bothner <bothner@cygnus.com>
5159
1aea01ea
PB
5160 * dbxout.c (dbxout_type): For a RECORD_TYPE, check that TYPE_BINFO
5161 is a TREE_VEC before trying to use it for baseclasses.
5162 (Chill uses the same field for a different purpose.)
5163
2290e0ec
PB
5164 * toplev.c (strip_off_ending): Generalize to endings up to 5 chars.
5165
16980900
LT
5166Tue Jan 27 23:15:55 1998 Lassi A. Tuura <lat@iki.fi>
5167
4c46bad0 5168 * config.sub: More accurate determination of HP processor types.
16980900 5169
5e9defae
KG
5170Tue Jan 27 23:11:11 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5171
5172 * c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>. Add
5173 prototype for `handle_sysv_pragma', and make it static. Add
5174 parentheses around assignment used as truth value.
5175
5176 * combine.c (combine_instructions): Protect variable `prev' with
5177 macro HAVE_cc0.
5178 (can_combine_p): Protect variable `link' with AUTO_INC_DEC.
5179 (extract_left_shift): Add parentheses around operand of &.
5180 (merge_outer_ops): Avoid an empty body in an else-statement.
5181 (gen_rtx_combine): Remove unused variable `i'.
b57062ca 5182
5e9defae
KG
5183 * sparc/gmon-sol2.c: Include <fcntl.h>. Make return type of
5184 function monstartup `void'. Likewise for internal_mcount. Add
5185 `static void' prototype for moncontrol. Reconcile sprintf format
b57062ca 5186 vs. args.
5e9defae
KG
5187
5188 * sparc/sparc.c: Include <stdlib.h> and <string.h>/<strings.h>.
5189 Make return type of function_arg_slotno explicitly `int'.
5190 (reg_unused_after): Add parentheses around assignment used as
5191 truth value.
5192 (save_regs): Add explicit braces to avoid ambiguous `else'.
5193 (function_arg_slotno): Add parentheses around && within ||.
5194 (function_arg_pass_by_reference): Likewise.
5195 (sparc_flat_output_function_prologue): Reconcile fprintf format
5196 vs. args.
5197
5198 * svr4.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around
5199 assignment used as truth value.
5200
5201 * cplus-dem.c: Include <stdlib.h>.
5202 (demangle_signature): Avoid an empty body in an else-statement.
5203 (do_type): Remove unused variable `lvl'.
b57062ca 5204
5e9defae
KG
5205 * cppexp.c: Don't have <stdlib.h> depend on MULTIBYTE_CHARS.
5206 Include <string.h>/<strings.h>.
5207 (cpp_lex): Remove unused variable `namelen'.
5208 (cpp_lex): Explicitly declare `num_chars' as an int.
5209
5210 * cpplib.c: Avoid duplicate inclusion of <stdlib.h>, include
5211 <unistd.h> instead. Explicitly declare is_system_include
5212 returning int.
b57062ca 5213 (make_assertion): Remove unused variable `kt'.
5e9defae
KG
5214 (cpp_expand_to_buffer): Hide variable `obuf'.
5215 (output_line_command): Remove unused variables, `line_end',
5216 `line_cmd_buf' and `len'.
5217 (macarg): Remove unused variable `arg_start'.
5218 (special_symbol): Remove unused variable `i'. Add parentheses
b57062ca 5219 around assignment used as truth value.
5e9defae 5220 (do_include): Remove unused variables `pcfname' and `retried',
b57062ca 5221 hide `pcf' and `pcfbuflimit'.
5e9defae
KG
5222 (do_line): Remove unused variable `i'.
5223 (finclude): Hide variable `missing_newline'.
5224 (cpp_handle_options): Remove unused variable `j'.
5225 (read_token_list): Remove unused variable `eofp'.
5226 (cpp_error_with_line): Remove unused variable `i'.
5227 (cpp_warning_with_line): Likewise.
5228 (cpp_pedwarn_with_line): Explicitly declare `column' as int.
5229 (cpp_error_from_errno): Remove unused variable `i'.
5230
5231 * cse.c (invalidate): Add parentheses around assignment used as
5232 truth value.
5233 (find_best_addr): Move declaration of variable `our_cost' inside
5234 the conditional macro where its used.
5235 (fold_rtx): Avoid an empty body in an if-statement.
5236 (cse_insn): Wrap variables `this_insn_cc0_mode' and
5237 `this_insn_cc0' in macro HAVE_cc0.
b57062ca 5238
5e9defae
KG
5239 * dwarf2out.c: Include <stdlib.h> and <string.h>/<string.h>.
5240 (ASM_OUTPUT_DWARF_DATA8): Reconcile format vs. args in fprintf's.
5241 (output_uleb128): Likewise.
5242 (output_sleb128): Likewise.
5243 (output_cfi): Likewise.
5244 (output_call_frame_info): Remove unused variables `j', `fde_size'
5245 and `fde_pad'.
5246 (comp_unit_has_inlines): Hide declaration as per rest of file.
5247 (size_of_line_prolog): Correct typo in prototype.
5248 (add_arange): Likewise.
5249 (output_aranges): Likewise.
5250 (add_name_and_src_coords_attributes): Likewise.
5251 (gen_array_type_die): Likewise.
5252 (gen_inlined_subroutine_die): Likewise.
5253 (equate_decl_number_to_die): Remove unused variable `i'.
5254 (print_die): Reconcile format vs. args in fprintf's.
5255 (print_dwarf_line_table): Likewise.
5256 (output_die): Likewise.
5257 (output_line_info): Likewise.
5258 (add_subscript_info): Avoid an empty body in an else-statement.
5259 (gen_subprogram_die): Remove unused variable `fp_loc'.
5260
5261 * dwarfout.c: Explicitly declare `next_pubname_number' as int.
5262 Protect `ordering_attribute' prototype with USE_ORDERING_ATTRIBUTE
5263 macro. Protect `src_coords_attribute' prototype with
5264 DWARF_DECL_COORDINATES macro. Hide `output_entry_point_die'
5265 prototype as in the rest of the file. Likewise for
5266 `output_pointer_type_die' and `output_reference_type_die'. Remove
5267 prototype for `type_of_for_scope'.
5268 (output_unsigned_leb128): Reconcile format vs. args in fprintf.
5269 (type_attribute): Add explicit braces to avoid ambiguous `else'.
b57062ca 5270
5e9defae
KG
5271 * final.c: Include <stdlib.h> and <string.h>/<strings.h>.
5272 (shorten_branches): Protect declaration of tmp_length with
5273 SHORTEN_WITH_ADJUST_INSN_LENGTH and ADJUST_INSN_LENGTH macros.
5274 (profile_function): Protect declaration of `sval' and `cxt'
5275 variables with appropriate macros.
5276 (final_scan_insn): Likewise for `note' variable. Add explicit
5277 braces to avoid empty body in an if-statement.
5278 (output_asm_insn): Move variable `i' inside macro conditional
5279 where it is used. Add parentheses around assignment used as truth
5280 value.
5281 (asm_fprintf) Likewise, likewise.
b57062ca 5282
5e9defae
KG
5283 * fix-header.c (main): Remove unused variable `done'. Protect
5284 declaration of `i' with FIXPROTO_IGNORE_LIST.
5285
5286 * pexecute.c: Include <unistd.h>. Prototype `my_strerror'.
5287
5288 * print-rtl.c (print_inline_rtx): Explicitly declare the parameter
5289 `ind'.
5290
5291 * profile.c: Include <string.h>/<strings.h>.
5292 (instrument_arcs): Remove unused variables `note', `inverted',
5293 `zero' and `neg_one'.
5294 (branch_prob): Avoid empty body in an if-statement.
5295
5296 * regclass.c: Include <stdlib.h>.
5297 (reg_alternate_class): Explicitly declare parameter `regno'.
5298
5299 * regmove.c (regmove_optimize): Remove unused variable `p'. Add
5300 parentheses around assignment used as truth value.
5301 (find_matches): Remove unused variables `output_operand' and
5302 `matching_operand'.
5303 (fixup_match_1): Remove statement with no effect: "if (0) ;".
5304
5305 * scan.c (sstring_append): Explicitly declare `count' as int.
5306 (scan_string): Explicitly declare parameter `init' as int.
5307
5308 * sched.c: Include <stdlib.h>.
5309 (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
5310 (rank_for_schedule): Add parentheses around assignment used as
5311 truth value.
5312 (schedule_block): Likewise.
5313 (regno_use_in): Likewise.
5314 (schedule_insns): Remove unused variable `i'.
5315
5316 * toplev.c: Include <stdlib.h> and <string.h>/<strings.h>.
5317 (v_message_with_decl): Remove unused variable `n'.
5318 (botch): Explicitly declare parameter `s' as char *.
5319 (main): Add parentheses around assignment used as truth value.
5320
5321 * tree.c (make_node): Protect the variable `kind' with the
5322 GATHER_STATISTICS macro.
5323 (real_value_from_int_cst): Move variable `e' inside conditional
5324 macro area where it is used.
5325 (tree_last): Add parentheses around assignment used as truth value.
5326 (build1): Protect the variable `kind' with the GATHER_STATISTICS
5327 macro.
5328 (print_obstack_statistics): Reconcile format vs. args in fprintf.
5329 Protect variables `i', `total_nodes', and `total_bytes' with the
5330 GATHER_STATISTICS macro.
5331
4b6bb562
MS
5332Tue Jan 27 23:01:55 1998 Mike Stump (mrs@wrs.com)
5333
5334 * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Add
5335 some comments regarding use of dead_or_set_p.
5336
e95f0195
TV
5337Tue Jan 27 22:14:48 1998 Todd Vierling <tv@pobox.com>
5338
5339 * fixincludes: Tweak fix for struct exception in math.h
5340
c3499f00
GK
5341Tue Jan 27 17:21:09 1998 Gavin Koch (gavin@cygnus.com)
5342
5343 * mips/mips.c (mips_expand_prologue,mips_expand_epilogue):
b57062ca 5344 Change mode of registers used to add/sub from
c3499f00
GK
5345 hard_frame_pointer_rtx from word_mode to Pmode.
5346
01898d58
NC
5347Tue Jan 27 11:02:04 1998 Nick Clifton <nickc@cygnus.com>
5348
6db34dd4
NC
5349 * v850.h (ASM_OUTPUT_ALIGNED_BSS): Use
5350 asm_output_aligned_bss() instead of asm_output_bss().
5351
01898d58
NC
5352 * toplev.c (rest_of_compilation): Replace references to
5353 stack_reg_dump_file and dbr_sched_dump_file with references to
b57062ca 5354 rtl_dump_file.
01898d58 5355
7b6ffd11
KI
5356Tue Jan 27 10:22:13 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
5357
5358 * tlink.c (scan_linker_output): Call fclose() for opened files.
5359
60593797
RH
5360Tue Jan 27 05:05:26 1998 Richard Henderson <rth@cygnus.com>
5361
5362 * alpha.c (output_epilog [!VMS]): Don't tag global functions if
5363 compiling with -fpic -- we want to be able to override symbols
5364 properly.
5365 (alpha_expand_block_move): Fix thinko in last change.
5366
5367 * alpha.h (ASM_OUTPUT_MI_THUNK): New define.
5368 * config/alpha/win-nt.h (ASM_OUTPUT_MI_THUNK): New define.
5369 * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): New undef.
b57062ca 5370
5e4aab97
RH
5371Tue Jan 27 03:21:23 1998 Richard Henderson <rth@cygnus.com>
5372
5373 * alpha.md (abssf, absdf): Revert last change.
5374
69145bcc
JC
5375Tue Jan 27 00:26:50 1998 John Carr <jfc@mit.edu>
5376
5377 * dwarf2out.c (dwarf2out_frame_init): Test value of DWARF2_UNWIND_INFO.
5378 * mips/sni-svr4.h: Define DWARF2_UNWIND_INFO as 0.
5379
4926b75a
JL
5380Tue Jan 27 00:07:02 1998 Jeffrey A Law (law@cygnus.com)
5381
5382 * emit-rtl.c (gen_lowpart_common): Handle more case where converting
5383 a CONST_INT into SFmode.
5384
c6aded7c
AG
5385Tue Jan 20 16:01:03 1998 Anthony Green <green@cygnus.com>
5386
5387 * flags.h: New flag (optimize_size).
5388 * toplev.c (main): Parse -Os option and set optimize_space
5389 accordingly.
b57062ca 5390 * gcc.c (default_compilers), cp/lang-specs.h, f/lang-specs.h: Define
c6aded7c
AG
5391 __OPTIMIZE_SIZE__ when compiling with -Os.
5392 * config/dsp16xx/dsp16xx.h, config/i386/i386.h,
5393 config/i386/dgux.h, config/i960/i960.h, config/pdp11/pdp11.h,
5394 config/v850/v850.h (OPTIMIZATION_OPTIONS): New SIZE argument
5395 to macro.
5396 * config/i386/i386.c (optimization_options): Accept new SIZE argument.
5397
3698f44e
MH
5398Mon Jan 26 23:57:39 1998 Manfred Hollstein <manfred@s-direktnet.de>
5399
5400 * libgcc2.c (__clear_insn_cache): On sysV68 enable the memctl
5401 stuff only if MCT_TEXT is #define'd.
5402
ac8a456a
MO
5403Mon Jan 26 23:52:51 1998 Markus F.X.J. Oberhumer <k3040e4@c210.edvz.uni-linz.ac.at>
5404
5405 * configure.in (i*86-pc-msdosdjgpp): Treat like msdos & go32
5406 configurations.
5407
032713aa
NC
5408Fri Jan 23 09:39:36 1998 Nick Clifton <nickc@cygnus.com>
5409
5410 * toplev.c: Add -dM command line option to dump RTL after the
5411 machine dependent reorganisation pass, if there is one.
5412 Reorganise RTL dump code, so that only one file handle is
b57062ca 5413 needed.
032713aa 5414
ec2be682
BK
5415Mon Jan 26 12:09:42 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
5416
5417 * except.c (check_exception_handler_labels): Disable warning when
5418 flag_syntax_only.
5419
e232b7b3
JW
5420Mon Jan 26 18:17:32 1998 Jim Wilson <wilson@cygnus.com>
5421
5422 * sparc.c (pic_setup_code): Don't set LABEL_PRESERVE_P.
5423
2a851b5c
R
5424Mon Jan 26 18:11:30 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5425
5426 * c-decl.c (grokdeclarator): Get parameter tags from
5427 last_function_parm_tags.
5428 * dwarfout.c (output_formal_types): Set TREE_ASM_WRITTEN before
5429 traversing the parameter types.
5430 (output_type): No early exit for FUNCTION_TYPE / METHOD_TYPE context.
5431
808fbfac
JL
5432Mon Jan 26 01:44:12 1998 Jeffrey A Law (law@cygnus.com)
5433
5434 * h8300.c (print_operand): Handle CONST_DOUBLE for 'e', 'f', and
5435 the default case.
5436 (get_shift_alg): Fix typo.
5437
15389075
RH
5438Sun Jan 25 22:22:04 1998 Richard Henderson <rth@cygnus.com>
5439
5440 * alpha.c (alpha_expand_block_move): Copy ADDRESSOF to reg.
5441
83c8ddef
RH
5442Sun Jan 25 22:14:28 1998 Richard Henderson <rth@cygnus.com>
5443
5444 * toplev.c (get_run_time): Make sure each case gets its variables.
5445
db81d74a
RH
5446Sun Jan 25 22:10:21 1998 Richard Henderson <rth@cygnus.com>
5447
5448 * configure.in (build_xm_file): Add auto-config.h if host=build.
5449 (host_xm_file_list): Don't add $(srcdir) to auto-config.h.
5450 (build_xm_file_list): Likewise.
5451 * configure: Rebuild.
b57062ca 5452
f745c7a2
AB
5453Sun Jan 25 22:00:25 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
5454
5455 * recog.c (validate_replace_rtx_1): Only perform substitutions
5456 of arguments to commutative and comparison operators once.
5457
963f4057
KG
5458Sun Jan 25 12:30:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5459
91a51951
KG
5460 * sparc.c (output_cbranch): Add default case in
5461 enumeration switch.
b57062ca 5462
91a51951
KG
5463 * reorg.c (insn_sets_resource_p): Correct typo in prototype.
5464 (emit_delay_sequence): Eliminate unused parameter, all callers
5465 changed.
5466 (fill_simple_delay_slots): Likewise.
5467 (fill_slots_from_thread): Likewise.
5468 (fill_eager_delay_slots): Likewise.
5469 (mark_referenced_resources): Add default case in enumeration switch.
5470 (mark_set_resources): Likewise.
5471 (rare_destination): Likewise.
5472 (mostly_true_jump): Likewise.
5473 (find_dead_or_set_registers): Likewise.
5474 (redirect_with_delay_slots_safe_p): Remove unused variable `slots'.
5475 (update_reg_unused_notes): Remove unused variable `p'.
5476 (mark_target_live_regs): Remove unused variables `next' and
5477 `jump_count'.
5478 (fill_simple_delay_slots): Remove unused variable `j'.
5479 (fill_slots_from_thread): Add parentheses around assignment used
5480 as truth value.
5481 (dbr_schedule): Likewise.
5482
963f4057
KG
5483 * objc/Make-lang.in (objc.stage1): Depend on stage1-start.
5484 (objc.stage2, objc.stage3, objc.stage4): Likewise.
5485
e82ad93d
MT
5486Sun Jan 25 12:13:47 1998 Michael Tiemann <michael@tiemann.org>
5487
5488 * cse.c (simplify_ternary_operation): Don't try to simplify
5489 IF_THEN_ELSE expressions (created by combine) that don't use
5490 relational operators.
5491
b4b04bf9
JL
5492Fri Jan 23 22:48:24 1998 Jeffrey A Law (law@cygnus.com)
5493
ed1ecb19
JL
5494 * cse.c (simplify_ternary_operation): Handle more IF_THEN_ELSE
5495 simplifications.
5496
b4b04bf9
JL
5497 * crtstuff.c (init_dummy): Keep the epilogue in the init
5498 section for non-ELF systems.
5499
deeef0ac
R
5500Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5501
5502 * sh.md (movqi_i+1): New peephole.
5503
03566575
JW
5504Fri Jan 23 15:39:42 1998 Jim Wilson <wilson@cygnus.com>
5505
5506 * Makefile.in: Remove remaining bytecode stuff.
5507 * emit-rtl.c, expr.c: Likewise.
5508
eb96c120
NC
5509Fri Jan 23 12:41:10 1998 Nick Clifton (nickc@cygnus.com)
5510
5511 * toplev.c (lang_options): Add unknown-pragma options.
5512
f03204e9
PB
5513Thu Jan 22 23:43:38 1998 Per Bothner <bothner@cygnus.com>
5514
5515 * dwarfout.c (byte_size_attribute): Simplify and fix - don't need
5516 special (and incomplete) handling for Chill arrays.
5517
4e762a38
JC
5518Fri Jan 23 00:27:23 1998 John Carr <jfc@mit.edu>
5519
5520 * toplev.c (get_run_time): Call sysconf(_SC_CLK_TCK), when available,
5521 to get clock rate.
5522
c3499f00 5523Fri Jan 23 00:19:36 1998 Gavin Koch (gavin@cygnus.com)
319f217e
GK
5524
5525 * mips.md (muldi3_internal2): Reverse test for TARGET_MIPS16.
5526
19f673eb
SS
55271998-01-22 scott snyder <snyder@d0sgif.fnal.gov>
5528
5529 * mips.c (function_prologue): Use HARD_FRAME_POINTER_REGNUM in
5530 .frame directive instead of FRAME_POINTER_REGNUM.
5531
74cf1c6d
RK
5532Fri Jan 23 00:08:55 1998 Robin Kirkham <rjk@mlb.dmt.csiro.au>
5533
5534 * m68k.h (TARGET_SWITCHES): -mcpu32 now clears MASK_68881.
5535 (MACHINE_STATE_m68010_up): Replaced __mc68332__ with __mcpu32__.
5536 * m68k/m68k-none.h(CPP_FPU_SPEC): Update relative to TARGET_SWITCHES.
5537 (CPP_SPEC, ASM_SPEC, CC1_SPEC): Likewise.
5538 (CPP_SPEC): -m68332 defines both __mc68332 and __mcpu32__.
5539 * m68k/t-m68kbare (MULTILIB_OPTIONS): Add mcpu32.
5540 (MULTILIB_MATCHES): -m68332 now uses mcpu32 libraries, not m68000.
5541 (MULTILIB_EXCEPTIONS): Don't build 68881 libraries for m68000,
5542 mcpu32 or m5200.
5543 * longlong.h: Replace __mc68332__ with __mcpu32__.
5544
e1402e7d
JL
5545Thu Jan 22 19:55:40 PST 1998 Jeff Law (law@cygnus.com)
5546
5547 * version.c: Bump for snapshot.
5548
6d49a073
JW
5549Thu Jan 22 14:47:31 1998 Jim Wilson <wilson@cygnus.com>
5550
5551 * reload.c (push_reload): In WORD_REGISTER_OPERATIONS code, add test
5552 to require the SUBREG mode to be smaller than the SUBREG_REG mode.
5553 * reload1.c (eliminate_regs): Likewise.
5554
c485e6a0
JL
5555Thu Jan 22 14:49:14 1998 Jeffrey A Law (law@cygnus.com)
5556
5557 * regmove.c (find_matches): Initialize matches->earlyclobber too.
5558
84303d9a
RH
5559Thu Jan 22 01:40:52 1998 Richard Henderson <rth@cygnus.com>
5560
5561 * alpha.md (abssf2, absdf2): Disable in IEEE mode.
5562 (negsf2, negdf2): Use proper subtract in IEEE mode.
5563
b93a436e
JL
5564Tue Jan 20 09:29:09 1998 Jeffrey A Law (law@cygnus.com)
5565
27766f0e
JL
5566 * Makefile.in: Remove more bytecode stuff.
5567 * expr.c, stmt.c, config/msdos/top.sed: Likewise.
5568 * vax/xm-vms.h, winnt/config-nt.sed: Likewise.
5569 * f/install.texi, objc/Make-lang.in: Likewise.
5570
b93a436e
JL
5571 * Makefile.in: Remove all bytecode support.
5572 (OBJS): Make sure last entry is a real object file, not EXTRA_OBJS.
5573 * emit-rtl.c: Remove all bytecode support.
5574 * expr.c, expr.h function.c, integrate.c: Likewise.
5575 * output.h, regclass.c, rtl.h, stmt.c, toplev.c: Likewise.
5576 * tree.h, varasm.c: Likewise.
424e713c
JL
5577 * config/m68k/m68k.h: Likewise.
5578 * bi-*, bc-*, bytecode*: Delete bytecode related files.
c9804136 5579 * modemap.def: Likewise.
b93a436e 5580
7e07e3ba
GK
5581Tue Jan 20 09:02:31 1998 Gavin Koch (gavin@cygnus.com)
5582
5583 * mips/mips.md (divsi3,divdi3,modsi3,moddi3,udivsi3,udivdi3,
5584 umodsi3,umoddi3): Handle mips16 div/mod by a constant.
5585
685885b7
RH
5586Mon Jan 19 21:57:00 1998 Richard Henderson <rth@cygnus.com>
5587
5588 * i386.md (push): Prohibit symbolic constants if flag_pic.
5589 (movsi+1): Likewise for move to non-register.
5590
5830e3a0
JW
5591Mon Jan 19 11:15:38 1998 Jim Wilson <wilson@cygnus.com>
5592
11ea364a
JW
5593 * alpha.c (mode_mask_operand): Accept 0xffffffff on 32 bit host.
5594 (print_operand): Handle 0xffffffff on 32 bit host.
5595
a851212a
JW
5596 * configure.in (thread_file): Rename uses before main loop to
5597 target_thread_file. Initialize to empty in main loop. Set thread_file
5598 to target_thread_file after main loop if not set.
5599 * configure: Rebuild.
5600
5830e3a0
JW
5601 * genattrtab.c (find_and_mark_used_attributes): Handle CONST_INT.
5602 (add_values_to_cover): Revert last change (which had no ChangeLog
5603 entry).
5604 (simplify_with_current_value_aux): Handle CONST_INT.
5605
829e1aaf
AS
5606Mon Jan 19 10:14:55 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5607
5608 * unprotoize.c: Define UNPROTOIZE first, to actually take effect.
5609
76844337
RH
5610Mon Jan 19 10:11:52 1998 Richard Henderson <rth@cygnus.com>
5611
5612 * configure.in: Add cpp stringify test.
5613 * acconfig.h (HAVE_CPP_STRINGIFY): New tag.
5614 * gengenrtl.c: Use it.
5615 * configure, config.in: Rebuild.
5616
a3f80023
AS
5617Mon Jan 19 09:43:15 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5618
5619 * Makefile.in (genrtl.c genrtl.h): Add dummy command for GNU make.
5620
c5d0345e
RH
5621Mon Jan 19 09:38:18 1998 Richard Henderson <rth@cygnus.com>
5622
5623 * configure.in: Find declaration for sbrk.
5624 * acconfig.h (NEED_DECLARATION_SBRK): New tag.
5625 * config.in, configure: Rebuild.
5626 * mips-tfile.c: Properly protect declaration of sbrk and free.
5627 * toplev.c: Properly protect declaration of sbrk.
5628
bb02e7ea
RH
5629Sun Jan 18 20:18:01 1998 Richard Henderson <rth@cygnus.com>
5630
5631 * alpha.c (alpha_handle_trap_shadows): Ignore CLOBBERs.
5632
30c2fa75
JL
5633Sun Jan 18 01:54:27 1998 Jeffrey A Law (law@cygnus.com)
5634
5635 * alpha/xm-winnt.h (HAS_INIT_SECTION): Undefine.
5636
a0372c94
MS
5637Sun Jan 18 00:57:35 1998 Mike Stump (mrs@wrs.com)
5638
5639 * configure.in (i960-wrs-vxworks): Default to latest vxworks release.
5640
c9ec4f99
DM
5641Sat Jan 17 23:41:36 1998 David S. Miller <davem@tanya.rutgers.edu>
5642
0e9ff885
DM
5643 * combine.c (force_to_mode, nonzero_bits): Correctly optimize
5644 constant offset computations from objects with known alignment in
5645 the presence of STACK_BIAS.
5646
7bcac048
DM
5647 * varasm.c (immed_double_const): Add casts to HOST_WIDE_INT where
5648 necessary.
5649 (const_hash): Hash val is unsigned long.
5650 (SYMHASH): Likewise.
5651
5652 * tree.c (TYPE_HASH): Type of hash val is unsigned long.
5653
5654 * print-tree.c (print_node_brief): HOST_PTR_PRINTF format wants a
5655 char pointer, not HOST_WIDE_INT.
5656 (print_node): Likewise. Also hash is unsigned long not
5657 HOST_WIDE_INT.
5658
5659 * cse.c (canon_hash): Hash is unsigned long not HOST_WIDE_INT.
5660
c9ec4f99
DM
5661 * explow.c (optimize_save_area_alloca): New function for targets
5662 where SETJMP_VIA_SAVE_AREA is true.
5663 (allocate_dynamic_stack_space): On SETJMP_VIA_SAVE_AREA targets,
5664 compute the amount of stack space needed should we find later that
5665 setjmp is never called by this function, stuff rtl for this inside
5666 a REG_NOTE of the final SET of stack_pointer_rtx.
5667 * toplev.c (rest_of_compilation): If SETJMP_VIA_SAVE_AREA and
5668 current_function_calls_alloca, call optimize_save_area_alloca.
5669
ca097615
JW
5670Sat Jan 17 23:22:59 1998 John Wehle (john@feith.com)
5671
5672 * i386.md: Remove redundant integer push patterns.
5673 Don't bother checking for TARGET_PUSH_MEMORY when
5674 pushing constants or registers.
5675
a3105a89
MK
5676Sat Jan 17 22:35:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
5677 J.J VanderHeijden <J.J.vanderHeijden@student.utwente.nl>
b57062ca 5678
a3105a89
MK
5679 * pexecute.c (pexecute): New function for mingw32. Supports pipes.
5680 (pwait): New function for mingw32.
5681
5682 * gcc.c (execute): Mingw32 pexecute() supports pipes, but cygwin32
5683 pipe support is broken for now.
5684
51549d76
LI
56851998-01-17 Lee Iverson <leei@Canada.AI.SRI.COM>
5686
ffc3503d
JL
5687 * emit_rtl.c (init_emit_once): Ensure that potential aliasing
5688 between frame_pointer_rtx, hard_frame_pointer_rtx, and
5689 arg_pointer_rtx is respected in initialization.
5690 (init_emit_once): Use gen_rtx_raw_REG() to create
5691 return_address_pointer_rtx.
5692
51549d76
LI
5693 * reorg.c: #include "expr.h" for rtx prototypes.
5694 * Makefile.in (reorg.o): Depend on expr.h
5695
b24a815b
PN
5696Sat Jan 17 21:28:08 1998 Pieter Nagel <pnagel@epiuse.co.za>
5697
5698 * Makefile.in (FLAGS_TO_PASS): Pass down gcc_include_dir and
5699 local_prefix to sub-make invocations.
5700
1e7b997a
DM
5701Sat Jan 17 21:24:16 1998 David T. McWherter <dtm@waterw.com>
5702
5703 * objc-parse.c: Recognize protocol qualifiers in class definitions.
5704
340fb41f
JL
5705Sat Jan 17 21:16:19 1998 Jeffrey A Law (law@cygnus.com)
5706
ffc3503d
JL
5707 * rtl.h: Fix typos.
5708
aef28d1d 5709 * acconfig.h (NEED_DECLARATION_ATOL): New declaration to check for.
6885fc87 5710 * configure.in: Check for atol.
aef28d1d
JL
5711 * rtl.c (atol): Only provide the declaration if NEED_DECLARATION_ATOL.
5712
4399e7a3
JL
5713 * rtl.c (read_rtx): Initialize list_rtx to NULL, not NULL_RTX.
5714
72ec635f
JL
5715 * loop.c (find_and_verify_loops): When attempting to move insns from
5716 inside the loop outside the loop, create a BARRIER if no suitable
5717 one was found.
5718
1be6e437
JL
5719 * jump.c (jump_optimize): Remove Dec 17, 1997 chance in
5720 favor of an equivalent change from gcc-2.8.
5721
340fb41f
JL
5722 * i386/x-sco5 (CC): Remove trailing whitespace.
5723
982255c8 5724Sat Jan 17 21:09:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 5725
982255c8
KG
5726 * gengenrtl.c (type_from_format): De-ANSIfy function signature.
5727 (accessor_from_format): Likewise.
5728 (xmalloc): New function for use when linking with alloca.o.
5729
db8abea3
BH
5730Mon Jan 5 02:53:01 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
5731
5732 * frame.c (find_fde): Correct FDE's upper bound.
5733
5d483f63
RH
5734Fri Jan 16 16:23:52 1998 Richard Henderson <rth@cygnus.com>
5735
5736 * gengenrtl.c (DEF_RTL_EXPR): Provide a K&R compliant version.
5737
9a960e6b
JL
5738Fri Jan 16 10:16:10 1998 Jeffrey A Law (law@cygnus.com)
5739
5740 * calls.c (expand_call): Move #ifdef code out of macro argument
5741 lists.
5742 (emit_library_call, emit_library_call_value): Likewise.
5743
a4b18346
JL
5744Fri Jan 16 00:46:40 1998 Jeffrey A Law (law@cygnus.com)
5745
5746 * rtl.def (INLINE_HEADER): Fix bug exposed by gen_rtx_FOO changes.
5747
a252996a
JL
5748Thu Jan 15 01:02:30 1998 Jeffrey A Law (law@cygnus.com)
5749
5750 * version.c: Bump for snapshot.
5751
38a448ca
RH
5752Wed Jan 14 22:49:17 1998 Richard Henderson <rth@cygnus.com>
5753
5754 * alias.c: Change all uses of gen_rtx(FOO...) to gen_rtx_FOO;
5755 change gen_rtx(expr...) to gen_rtx_fmt_foo(expr...).
5756 * caller-save.c, calls.c, combine.c, cse.c: Likewise.
5757 * dwarf2out.c, except.c, explow.c, expmed.c, expr.c: Likewise.
5758 * final.c, flow.c, function.c, genpeep.c, haifa-sched.c: Likewise.
5759 * halfpic.c, integrate.c, jump.c, local-alloc.c, loop.c: Likewise.
5760 * profile.c, recog.c, reg-stack.c, regclass.c, regmove.c: Likewise.
5761 * reload.c, reload1.c, reorg.c, sched.c, stmt.c, stupid.c: Likewise.
5762 * unroll.c, varasm.c: Likewise.
5763 * config/alpha/alpha.c, config/alpha/alpha.md: Likewise.
5764
5765Wed Jan 14 19:36:08 1998 Gavin Koch (gavin@cygnus.com)
60db002d
GK
5766
5767 * mips.h: Fix some type-o's from a previous change.
5768
a8decb2c
JL
5769Wed Jan 14 01:26:05 1998 Jeffrey A Law (law@cygnus.com)
5770
b57062ca 5771 * loop.c (check_dbra_loop): Make sure initial value is a
a8decb2c
JL
5772 CONST_INT before trying to normalize it.
5773
0e2b736c
RL
5774Tue Jan 13 23:27:54 1998 Robert Lipe (robertl@dgii.com)
5775
5776 * sco5.h (ASM_OUTPUT_SECTION_NAME): Refresh from ../svr4.h.
5777
a3aa3d8c
HB
5778Tue Jan 13 22:47:02 1998 Herman ten Brugge <herman@htbrug.net.HCC.nl>
5779
5780 * cppexp.c: Include gansidecl.h
5781
8b496c8d
ILT
5782Tue Jan 13 22:43:35 1998 Ian Lance Taylor <ian@cygnus.com>
5783
5784 * svr4.h (LINK_SPEC): Never specify -h.
5785 * ptx4.h (LINK_SPEC): Likewise.
5786 * rs6000/sysv4.h (LINK_SPEC): Likewise.
5787 * sparc/sol2.h (LINK_SPEC): Likewise.
5788
c995fea1
RH
5789Tue Jan 13 22:39:40 1998 Richard Henderson (rth@cygnus.com)
5790
8d47dfc5
RH
5791 * c-typeck.c (comptypes): Exit early on NULL input.
5792
c995fea1
RH
5793 * haifa-sched.c (schedule_insns): Correctly remove inter-block
5794 dependencies after reload.
5795
88ea0ad1
FS
5796Tue Jan 13 22:22:31 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
5797
5798 * rs6000/linux.h (CPP_PREDEFINES): Add -D__ELF__.
5799
f5e86959
JL
5800Tue Jan 13 22:14:57 1998 Klaus Kaempf <kkaempf@progis.de>
5801
5802 * alpha/vms.h (DIR_SEPARATOR): define
5803
5804Tue Jan 13 22:13:04 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
6c32c807
BH
5805
5806 * Makefile.in (stamp-proto): Remove.
5807 (protoize.o, unprotoize.o): Straightforward compile.
5808 * unprotoize.c: Define UNPROTOIZE here, not in the Makefile.
5809
93006f8c
MK
5810Tue Jan 13 21:59:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
5811
5812 * i386/cygwin32.h (STRIP_NAME_ENCODING): Define for Win32 to strip
5813 off the trailing @[NUM] added by ENCODE_SECTION_INFO.
5814
e4c4f8df
JL
5815Tue Jan 13 21:55:06 1998 Jeffrey A Law (law@cygnus.com)
5816
5817 * arm/netbsd.h (DWARF2_UNWIND_INFO): Define as zero for now.
5818 * i386/netbsd.h, m68k/netbsd.h, ns32k/netbsd.h: Likewise.
5819 * sparc/netbsd.h, vax/netbsd.h: Likewise.
5820
4aa0c2a5
SS
5821Tue Jan 13 21:37:07 1998 Shigeya Suzuki <shigeya@foretune.co.jp>
5822
5823 * i386/bsd386.h (DWARF2_UNWIND_INFO): Define as zero for now.
5824
c43143f6
JW
5825Tue Jan 13 17:50:55 1998 Jim Wilson <wilson@cygnus.com>
5826
5827 * configure.in (target_cpu_default, target_cpu_default2): Use double
5828 quotes around them when testing their value.
5829 * configure: Rebuilt.
b57062ca 5830
4b8140a6
JC
5831Tue Jan 13 09:07:44 1998 John Carr <jfc@mit.edu>
5832
5833 * gengenrtl.c (gencode): Emit new function obstack_alloc_rtx
5834 to allocate rtx.
5835 (gendef): Call obstack_alloc_rtx.
5836
82de9b28 5837Tue Jan 13 01:16:36 1998 Robert Lipe (robertl@dgii.com)
fe07d4c1
RL
5838
5839 * configure.in: (i[3456]86-UnixWare7-sysv5): Treat much like SVR4
5840 for now.
5841
23092526 5842Thu Dec 18 18:40:17 1997 Mumit Khan <khan@xraylith.wisc.edu>
b57062ca 5843
23092526
MK
5844 * i386/mingw32.h (INCOMING_RETURN_ADDR_RTX): Delete. Use the value
5845 of DWARF2_UNWIND_INFO, if any, from i386/cygwin32.h instead.
5846 (STANDARD_INCLUDE_DIR): Change to /usr/local/i386-mingw32/include.
5847
b57062ca 5848Tue Jan 13 00:44:02 1998 Jim Wilson <wilson@cygnus.com>
32318600
JW
5849
5850 * mips.md (return_internal): Change mode from SImode to VOIDmode.
5851
ef720b21
KJ
5852Sat Jan 10 22:11:39 1998 J. Kean Johnston <jkj@sco.com>
5853
5854 * i386/sco5.h (STARTFILE_SPEC, ENDFILE_SPEC): Correctly handle
5855 "-static".
5856
cde21847
SC
5857Sat Jan 10 22:04:15 1998 Stan Cox <scox@equinox.cygnus.com>
5858
5859 * i386.md: (movsicc_1, movhicc_1): For alternate 3 set the opcode
5860 suffix from operand 3.
5861
184bb750
R
5862Sat Jan 10 21:50:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5863 Jeffrey A Law (law@cygnus.com)
5864
5865 * regmove.c: New implementation of regmove pass.
5866 * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2): Remove
5867 decls, make them have external linkage. Return a value from
5868 optimize_reg_copy_1.
5869 * reload.h (count_occurrences): Add decl.
5870 * reload1.c (count_occurrences): Delete decl, make it have external
5871 linkage.
5872 * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Declare.
5873
3f9e9508 5874Sat Jan 10 20:30:12 1998 Jeffrey A Law (law@cygnus.com)
b57062ca 5875
3f9e9508
JL
5876 * regclass.c (record_address_regs): Don't use REG_OK_FOR_BASE_P
5877 if it is not defined.
b57062ca 5878
3b80f6ca
RH
5879Thu Jan 8 21:06:54 1998 Richard Henderson <rth@cygnus.com>
5880
5881 * Makefile.in (OBJ, GEN, RTL_H): Add genrtl.[oh] bits.
5882 * emit-rtl.c (gen_rtx): Move special code to ...
5883 (gen_rtx_CONST_INT): New function.
5884 (gen_rtx_REG): New function.
5885 (*): Update all calls to gen_rtx.
5886 * genemit.c (gen_exp): Emit calls to gen_rtx_FOO for constant FOO.
5887 * rtl.h: Include genrtl.h; prototype CONST_INT & REG generators.
5888 (GEN_INT): Call gen_rtx_CONST_INT.
5889 * gengenrtl.c: New file.
5890
1c72c7f6
JC
5891Mon Jan 5 13:00:18 1998 John F. Carr <jfc@mit.edu>
5892
5893 * alias.c (*_dependence): Call base_alias_check before canon_rtx.
5894 (base_alias_check): If no base found for address call canon_rtx and
5895 try again.
5896
8fa4e1b4
JL
5897Mon Jan 5 11:39:49 1998 Jeffrey A Law (law@cygnus.com)
5898
5899 * mips.c (mips_expand_prologue): Handle large frame with no outgoing
5900 arguments for mips16.
5901 (mips_expand_epilogue): Pass "orig_tsize" to save_restore_insns.
5902 Don't lose if tsize is zero after handling large stack for mips16.
5903 * mips.md (return): For trivial return, return address is in $31.
5904
eb774d8d
NS
5905Sun Jan 4 20:24:00 1998 Nigel Stephens <nigel@algor.co.uk>
5906
5907 * mips/mips16.S: Various changes to make it work with -msingle-float
5908 and -EL.
5909
2bcb2ab3
GK
5910Sun Jan 4 14:25:18 1998 Gavin Koch <gavin@cygnus.com>
5911 Ian Lance Taylor <ian@cygnus.com>
5912 Jeff Law <law@cygnus.com>
5913
5914 * mips.c, mips.h, mips.md: First cut at merging in mips16
5915 support. Major modifications throughout all three files.
5916
db0d1ed9
SS
5917Sun Jan 4 01:01:50 1998 scott snyder <snyder@d0sgif.fnal.gov>
5918
5919 * configure.in: Make gthr-default.h a forwarding header instead of
5920 a symlink.
5921
79873958
KG
5922Sat Jan 3 12:08:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5923
86e011ad
KG
5924 * gcov-io.h: Include sys/types.h to ensure we get size_t.
5925
79873958
KG
5926 * pa.h (ASM_OUTPUT_MI_THUNK): Add missing % in fprintf.
5927
35a42f5f
JW
5928Fri Jan 2 23:40:09 1998 Jim Wilson (wilson@cygnus.com)
5929 Jeffrey A Law (law@cygnus.com)
5930
5931 * crtstuff.c (__frame_dummy): New function for irix6.
5932 (__do_global_ctors): Call __frame_dummy for irix6.
5933 * iris6.h (LINK_SPEC): Hide __frame_dummy too.
5934
ef86d2ee
WL
5935Fri Jan 2 04:57:57 1998 Weiwen Liu <liu@hepmail.physics.yale.edu>
5936
5937 * alpha.c (vms_valid_decl_attribute_p): Move within #if OPEN_VMS.
5938
6c174fc0
RH
5939Fri Jan 2 04:34:14 1998 Richard Henderson <rth@cygnus.com>
5940
5941 * c-decl.c (init_decl_processing): Provide proper fallback symbol
5942 for __builtin_memset.
5943 * expr.c (expand_builtin) [MEMSET]: Arg 3 type code is INTEGER_TYPE
5944 not INTEGER_CST. Assert arg 3 is a constant.
5945
5946 * alpha.c (mode_width_operand): Accept 64-bit modes.
5947 (mode_mask_operand): Likewise.
5948 (print_operand): Likewise for 'M' and 'U' codes.
5949 (alpha_expand_unaligned_load): New function.
5950 (alpha_expand_unaligned_store): Likewise.
5951 (alpha_expand_unaligned_load_words): Likewise.
5952 (alpha_expand_unaligned_store_words): Likewise.
5953 (alpha_expand_block_move): Likewise.
5954 (alpha_expand_block_clear): Likewise.
5955 * alpha.h (MOVE_RATIO): New define.
5956 * alpha.md (extxl, ext*h, ins*l, mskxl): Name them.
5957 (insql, insxh, mskxh, extv, extzv, insv, movstrqi, clrstrqi): New.
5958
5959 * alpha.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE): Set to 3.
5960 (CONSTANT_ALIGNMENT, DATA_ALIGNMENT): Disable.
5961
8fbf199e
RH
5962Thu Jan 1 15:40:15 1998 Richard Henderson <rth@cygnus.com>
5963
5964 * configure.in: Put parenthesis around TARGET_CPU_DEFAULT's value.
5965 * configure: Update.
5966
2d490e3e
JL
5967Thu Jan 1 10:49:12 1998 Jeffrey A Law (law@cygnus.com)
5968
aa2ae679
JL
5969 * emit-rtl.c (operand_subword): Correctly handle extracting a word
5970 from a CONST_DOUBLE for 16bit targets with !WORDS_BIG_ENDIAN.
5971
2d490e3e
JL
5972 * mn10200.md (tstxx, cmpxx): Use "nonimmediate_operand" as predicate
5973 for first argument.
5974
6e26218f
ILT
5975Wed Dec 31 14:42:18 1997 Ian Lance Taylor <ian@cygnus.com>
5976
5977 * configure.in: Set and subsitute host_exeext. Use it when creating
5978 the assembler and linker symlinks.
5979 * configure: Rebuild.
5980 * Makefile.in (exeext): Set to @host_exeext@.
5981 (build_exeext): New variable, set to @build_exeext@.
5982 (FLAGS_TO_PASS): Pass down build_exeext.
5983 (STAGESTUFF): Use build_exeext, not exeext, for gen* and bi*
5984 programs.
5985
1b31097e
JL
5986Wed Dec 31 10:05:44 1997 Jeffrey A Law (law@cygnus.com)
5987
5988 * mn10200.md (addsi3, subsi3): Fix thinkos.
5989
194faace
RH
5990Tue Dec 30 00:04:49 1997 Richard Henderson <rth@cygnus.com>
5991
5992 * sparc.h (ASM_OUTPUT_MI_THUNK): Move %o7 through %g1 instead of
5993 save+restore. Fix pic+big_offset delay slot. Use "pic" case for
5994 unix always, since we want to be able to thunk to functions in a
5995 shared library from an application.
5996
975602f8
ILT
5997Mon Dec 29 14:37:31 1997 Ian Lance Taylor <ian@cygnus.com>
5998
5999 * mips/t-ecoff (CROSS_LIBGCC1): Define to libgcc1-asm.a.
6000 (LIB1ASMSRC, LIB1ASMFUNCS): Define.
6001
0eb1ad44
JL
6002Mon Dec 29 14:03:38 1997 Jeffrey A Law (law@cygnus.com)
6003
6004 * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
6005 offset's mode is not ptr_mode, convert it.
6006
eff0f7ac
MM
6007Mon Dec 29 15:58:18 1997 Michael Meissner <meissner@cygnus.com>
6008
6009 * libgcc2.c (inhibit_libc): Don't define inhibit_libc when cross
6010 compiling if it was already defined.
6011
2c3a56ad
JL
6012Sun Dec 28 00:32:16 1997 Jeffrey A Law (law@cygnus.com)
6013
6014 * flow.c (find_basic_blocks): Don't create a new basic block
6015 for calls in a LIBCALL block.
6016
fc97718f
DE
6017Sun Dec 28 00:30:24 1997 David Edelsohn <edelsohn@mhpcc.edu>
6018
6019 * config/fp-bit.c (L_df_to_sf): Fix typo in last change.
6020
5b5a2a1e
JL
6021Sat Dec 27 22:43:12 1997 Jeffrey A Law (law@cygnus.com)
6022
6023 * cse.c (rtx_cost): Remove conflicting default case.
6024
128f7968
RH
6025Sat Dec 27 21:20:02 1997 Richard Henderson <rth@cygnus.com>
6026
6027 * configure.in: Move default enabling of Haifa out of for loop.
6028 * configure: Rebuild.
6029
e81b4fbe
JL
6030Thu Dec 25 01:02:54 1997 Jeffrey A Law (law@cygnus.com)
6031
6032 * version.c: Bump for snapshot.
6033
f24af81b
TT
60341997-12-25 Teemu Torma <tot@trema.com>
6035
6036 * Makefile.in (GTHREAD_FLAGS): New var.
6037 (LIBGCC2_CFLAGS): Added $(GTHREAD_FLAGS).
6038 (distclean): Remove gthr-default.h.
6039
6040 * configure.in: Accept dce as a thread package.
6041 Check for thread.h and pthread.h.
6042 Link gthr-default.h to appropriate thread file and set
6043 gthread_flags.
6044 (hppa1.1-*-hpux10*): If --enable-threads, use dce threads and
6045 include multilib definitions from pa/t-dce-thr.
6046 (sparc-*-solaris2*): Enable threads by default, if thread.h or
6047 pthread.h is found, preferring posix threads over solaris ones.
6048
6049 * config/pa/t-dce-thr: New file.
6050 * config/pa/t-pa: Removed multilibs.
6051 * config/sparc/t-sol2: Ditto.
b57062ca 6052
f24af81b
TT
6053 * gthr.h: New file.
6054 * gthr-single.h: New file.
6055 * gthr-posix.h: New file.
6056 * gthr-solaris.h: New file.
6057 * gthr-dce.h: New file.
6058 * libgcc-thr.h: Removed.
6059 * objc/thr-dce.c: New file copied from thr-decosf1.c.
6060
6061 * frame.c: Include gthr.h instead of libgcc-thr.h.
6062 * libgcc2.c: Include gthr.h instead of libgcc-thr.h.
6063 (eh_context_initialize): If __gthread_once fails, use static eh
6064 context.
6065 (eh_context_free): Call __gthread_key_dtor.
6066
d9a4ee00
JL
6067Wed Dec 24 23:33:17 1997 Jeffrey A Law (law@cygnus.com)
6068
6069 * expr.h (MUST_PASS_IN_STACK): Allow target port to override.
6070
04bd620d
JW
6071Wed Dec 24 23:12:14 1997 Jim Wilson <wilson@cygnus.com>
6072
556c714b 6073 * cse.c (max_insn_uid): New variable.
556c714b
JW
6074 (cse_around_loop): Use max_insn_uid.
6075 (cse_main): Set max_insn_uid.
6076
04bd620d
JW
6077 * abi64.h (LONG_MAX_SPEC): Check MIPS_ABI_DEFAULT and TARGET_DEFAULT,
6078 and define __LONG_MAX__ appropriately. Add support for -mabi=X,
6079 -mlong64, and -mgp{32,64} options.
6080 * mips.c (mips_abi): Change type to int.
6081 * mips.h (enum mips_abi_type): Delete.
6082 (ABI_32, ABI_N32, ABI_64, ABI_EABI): Define as constants.
6083 (mips_abi): Change type to int.
6084
439d5a35
JC
6085Wed Dec 24 22:38:34 1997 John Carr <jfc@mit.edu>
6086
6087 * flags.h, toplev.c, calls.c, alias.c: Remove flag_alias_check;
6088 optimization is now always enabled.
6089
6090 * calls.c (expand_call): Recognize C++ operator new as malloc-like
6091 function.
6092
6093 * alias.c (memrefs_conflict_p): Eliminate tests now done by
6094 base_alias_check.
6095 (*_dependence): Call canon_rtx before base_alias_check.
6096 (init_alias_once): New function to precompute set of registers which
6097 can hold Pmode function arguments.
6098
6099 * rtl.h: Declare init_alias_once.
6100
6101 * toplev.c (compile_file): Call init_alias_once.
6102
280e521f
JL
6103Wed Dec 24 22:34:55 1997 Jeffrey A Law (law@cygnus.com)
6104
6105 * tree.c (restore_tree_status): Do not dereference a null pointer.
6106
95b8c0c8
PE
6107Tue Dec 23 12:56:46 1997 Paul Eggert <eggert@twinsun.com>:
6108
6109 * genattrtab.c (main): Check HAVE_{G,S}ETRLIMIT in addition to
6110 RLIMIT_STACK. This maintains consistency with the recent, similar
6111 patch to cccp.c and toplev.c.
6112
71d9b493
RH
6113Tue Dec 23 05:17:28 1997 Richard Henderson <rth@cygnus.com>
6114
6115 * genattrtab.c (expand_units): For large nr opclasses, expand
6116 function_units_used with ORX to prevent blowups. Tag with FFS.
6117 (num_unit_opclasses): New variable.
6118 (gen_unit): Update it.
6119 (enum operator): Add ORX_OP.
6120 (operate_exp): Treat ORX as or, except don't expand across an if.
6121 Reuse number rtx's after operating on them.
6122 (check_attr_value): Accept IOR, AND, & FFS.
6123 (write_test_expr): Transmute `in_comparison' to `flags'. Allow
6124 for attribute value caching. Handle CONST_STRING, IF_THEN_ELSE.
6125 (write_expr_attr_cache, write_toplevel_expr): New functions.
6126 (write_attr_get): Handle FFS-tagged expressions.
6127 (make_canonical): Don't expand const attributes.
6128 (convert_const_symbol_ref): Dike out.
6129 (evaluate_eq_attr): Handle SYMBOL_REF.
6130 (main): Don't emit get_attr_foo for const attributes.
6131
6132 * alpha.c (override_options): Reinstate PROCESSOR_EV6.
6133 (alpha_adjust_cost): Add EV6 tuning; streamline EV5 tests.
6134 * alpha.h (REGISTER_MOVE_COST): Increase ftoi/itof cost slightly.
b57062ca
UD
6135 * alpha.md: Redo all of the scheduling, adding EV6 support, and
6136 combining function units where possible.
71d9b493
RH
6137 (attr "type"): Split loads, stores, cmov into int/fp. Combine
6138 multiplies and divides. Add EV6 sqrt, ftoi, itof.
6139 (attr "opsize"): New attribute.
6140 (sqrtsf2-1, sqrtdf2-1): Provide proper TP_INSN patterns.
6141 (movsf2-[12], movdf2-[12]): Provide CIX varients; don't allow CIX
6142 to control register allocation.
6143 (movsi2-1, movdi2-1): Likewise.
6144
b0435cf4 6145Tue Dec 23 03:53:21 1997 Richard Henderson <rth@cygnus.com>
b57062ca 6146
b0435cf4
RH
6147 * alpha.h (CPP_PREDEFINES, LIB_SPEC, LINK_SPEC, STARTFILE_SPEC,
6148 MD_STARTFILE_PREFIX, ASM_FILE_START, ASM_SPEC, ASM_FINAL_SPEC):
6149 Move OSF/1 specific defines out.
6150 * alpha/elf.h (TARGET_VERSION, CPP_PREDEFINES, DEFAULT_VTABLE_THUNKS):
6151 Move Linux specific defines out.
6152 (LINK_SPEC): Genericize.
6153 (ASM_FILE_START): Emit .arch if using more than the base insn set.
6154 (ASM_OUTPUT_SOURCE_LINE): Remove; identical to alpha.h version.
6155 (SDB_DEBUGGING_INFO): Remove; gas can't handle it.
6156 (HANDLE_SYSV_PRAGMA): Define.
6157 * alpha/osf.h: New file.
6158 * alpha/linux.h: Split. Retain file-format independant defines.
6159 Import Linux bits from elf.h.
6160 (CPP_PREDEFINES): Take a file-format specific SUB_CPP_PREDEFINES
6161 (FUNCTION_PROFILER): _mcount takes its address in $28.
6162 (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Remove undef.
6163 * alpha/linux-ecoff.h: New file.
6164 * alpha/linux-elf.h: New file.
6165 * alpha/vms.h (LIB_SPEC, LINK_SPEC): Copy from osf.h.
6166 * alpha/win-nt.h (TARGET_DEFAULT): Define.
6167 * configure.in (alpha*-*-osf*, alpha*-*-linux*) [tm_file]:
6168 Add new headers as appropriate.
b57062ca 6169
b0435cf4
RH
6170 * configure.in (alpha*): Enable Haifa by default.
6171 (*-*-winnt3*): Change to winnt*, since we're not v3 specific.
6172 * configure: Rebuild.
b57062ca 6173
5768f211
RH
6174Tue Dec 23 03:14:54 1997 Richard Henderson <rth@cygnus.com>
6175
6176 * Makefile.in (clean): Remove the stages with their objects here ...
6177 (distclean): ... instead of here.
6178
9e04c65a 6179Mon Dec 22 11:24:01 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 6180
9e04c65a
KG
6181 * cse.c (rtx_cost): Add default case in enumeration switch.
6182 * fix-header.c (recognized_macro): Likewise.
6183 (recognized_extern): Likewise.
6184 (write_rbrac): Likewise.
6185 * objc/objc-act.c (encode_aggregate): Likewise.
6186 (gen_declarator): Likewise.
6187 (gen_declspecs): Likewise.
6188
1d88b804
JL
6189Mon Dec 22 09:58:51 1997 Jeffrey A Law (law@cygnus.com)
6190
6191 * haifa-sched.c (create_reg_dead_note): Detect and handle another
6192 case where we kill more regs after sched than were killed before
6193 sched.
6194 * sched.c (create_reg_dead_note): Similarly.
6195
bbeba0ba
JL
6196Mon Dec 22 09:18:37 1997 Jeffrey A Law (law@cygnus.com)
6197
6198 * c-pragma.c: Include flags.h.
6199
05853640
MK
6200Sun Dec 21 22:10:59 1997 Mumit Khan <khan@xraylith.wisc.edu>
6201
6202 * i386/cygwin32.h (NO_IMPLICIT_EXTERN_C): Don't assume anything
6203 about system headers.
6204 (LIB_SPEC): Add -ladvapi32 -lshell32 to be consistent with mingw32
6205 and also to resolve symbols in prefix.c.
6206
6207 * i386/xm-cygwin32.h (HAVE_BCOPY): Define. This avoids a conflict
6208 between gansidecl.h and newlib's _ansi.h when building libgcc2.a,
6209 when the definitions in auto-config.h is not visible.
6210 (HAVE_BZERO): Likewise.
6211 (HAVE_BCMP): Likewise.
6212 (HAVE_RINDEX): Likewise.
6213 (HAVE_INDEX): Likewise.
6214
44201dba
JL
6215Sun Dec 21 21:54:22 1997 Jeffrey A Law (law@cygnus.com)
6216
6217 * pa.c (emit_move_sequence): Handle a function label source
6218 operand.
6219
d300e551
NC
6220Sun Dec 21 16:13:55 1997 Nick Clifton <nickc@cygnus.com
6221
6222 * c-pragma.c (handle_pragma_token): Generate warning messages
6223 about unknown pragmas if warn_unknown_pragmas is set.
6224
6225 * c-decl.c (c_decode_option): Parse -Wunknown-pragmas command
6226 line option to set variable: warn_unknown_pragmas.
6227
d3245704
MH
6228Sun Dec 21 15:51:10 1997 Manfred Hollstein <manfred@lts.sel.alcatel.de>
6229
6230 * m68k/mot3300.h (ASM_BYTE_OP): Don't include '\t' in the
6231 definition.
6232 (ASM_OUTPUT_ASCII): Prefix ASM_BYTE_OP by one single '\t'.
6233
5198352e
JL
6234Sun Dec 21 13:58:39 1997 Jeffrey A Law (law@cygnus.com)
6235
6236 * Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS): Define.
6237 (libgcc2.a): Depend on $(DPBIT) and $(FPBIT). Add rules to
6238 generate more fine grained floating point emulation libraries.
6239 * config/fp-bit.c: Add protecting #ifdef to all functions so
6240 that they can be compiled separately. If !FINE_GRAINED_LIBRARIES,
6241 then compile all suitable functions.
6242 (pack_d, unpack_d, fpcmp_parts): Add declarations, define with two
6243 underscores to avoid namespace pollution.
6244 * t-mn10200 (LIB2FUNCS_EXTRA): Remove fp-bit.c
6245 (FPBIT): Define.
6246 * t-mn10300 (LIB2FUNCS_EXTRA): Remove fp-bit.c and dp-bit.c
6247 (FPBIT): Define.
6248 (DPBIT): Define.
6249
9f1ff8e8 6250Sat Dec 20 11:26:47 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1d300e19
KG
6251 Jeff Law <law@cygnus.com>
6252
6253 * bitmap.c (bitmap_clear): Ensure `inline' is at the beginning
6254 of the declaration.
6255 * c-decl.c (finish_decl): Use parentheses around && within ||.
6256 * rtl.c: Include stdlib.h.
6257 (read_skip_spaces): Add parentheses around assignments used as
6258 truth values.
6259 (read_rtx): Initialize list_rtx.
6260 * cppexp.c (parse_number): Use || when operands are truth values.
6261 * alias.c (find_base_value): Add default case.
6262 (memrefs_conflict): Likewise.
6263 * combine.c (sets_function_arg_p): Likewise.
6264 * genemit.c (gen_exp): Likewise.
6265 * local-alloc.c (contains_replace_regs): Likewise.
6266 * rtlanal.c (jmp_uses_reg_or_mem): Likewise.
6267 * fold-const.c (fold_convert): Use "&&" for truth values.
6268 (fold): Add default case.
6269 * sdbout.c (sdbout_field_types): Fix typo in declaration.
6270 (sdbout_one_type): Add default case.
6271 * alpha.c (alpha_sa_mask): Prototype only if OPEN_VMS.
6272 (some_operand): Add default case.
6273 (input_operand): Likewise.
6274 (signed_comparison_operator): Likewise.
6275 (divmod_operator): Likewise.
6276 (alpha_set_memflags_1): Likewise.
6277 * reload1.c (reload_cse_simplify_operands): Ensure function
6278 always returns a value.
6279 * scan-decls.c (scan_decls): Likewise.
6280 * c-lex.c (skip_white_space): Fix typo in declaraion.
6281 * c-typeck.c (comp_target_types): Add parentheses around assignment
6282 used as truth value.
6283 (print_spelling): Likewise.
6284 (constructor_implicit, constructor_result): Remove unused variables.
6285 * collect2.c (scan_library): Protect prototype with
6286 #ifdef SCAN_LIBRARIES.
6287 * emit-rtl.c (find_line_note): Fix typo in declaration.
b57062ca 6288 * final.c (asm_insn_count): Protect prototype with
1d300e19
KG
6289 #ifdef HAVE_ATTR_length.
6290 * flow.c (find_auto_inc): Protect prototype with #ifdef AUTO_INC_DEC.
6291 (try_pre_increment_1, try_pre_increment): Likewise.
6292 * regclass.c (auto_inc_dec_reg_p): Protect prototype with
6293 #ifdef FORBIDDEN_INC_DEC_CLASSES. Make return type explicit.
6294 * gcov-io.h (__store_long, __write_long, __read_long): Fix
6295 unsigned/signed comparisons.
6296 * gcov.c (read_files): Remove unused "first_type" variable.
6297 (scan _for_source_files): Initialize s_ptr.
6298 (function_summary): Eliminate "%lf" formatting, use %ld for
6299 longs.
6300 (output_data): Initialize branch_probs and last_line_num.
6301 Eliminate "%lf" formatting, use "%ld" for longs.
6302
18543a22
ILT
6303Fri Dec 19 17:31:11 1997 Ian Lance Taylor <ian@cygnus.com>
6304
afba61d1
ILT
6305 * mips16.S: New file.
6306
6307 * libgcc2.c (varargs): Handle mips16.
6308
18543a22
ILT
6309 * expr.c (do_tablejump): Let CASE_VECTOR_PC_RELATIVE be an
6310 expression.
6311 * stmt.c (expand_end_case): Likewise.
6312 * alpha.h (CASE_VECTOR_PC_RELATIVE): Update.
6313 * fx80.h, gmicro.h, m68k.h, m88k.h, ns32k.h: Likewise.
33f7f353 6314 * rs6000.h, sh.h, tahoe.h, v850.h, vax.h: Likewise.
18543a22 6315
dbf3231e
AS
6316Tue Dec 16 15:14:09 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6317
6318 * objc/Make-lang.in: Create runtime-info.h and libobjc_entry.o in
6319 the build directory.
6320 (libobjc.a): Update dependency list.
6321 (libobjc.dll): Likewise. Use libobjc_entry.o from the build
6322 directory.
6323 (objc/sendmsg.o): Add -Iobjc to find runtime-info.h.
6324 (objc.mostlyclean): Remove runtime-info.h.
6325
e1ee5cdc
RH
6326Fri Dec 19 00:19:42 1997 Richard Henderson <rth@cygnus.com>
6327
6328 * tree.c (build_range_type): Allow creation of ranges with no maximum.
6329 * dbxout.c (dbxout_range_type): Handle missing TYPE_MAX_VALUE.
6330 * dwarf2out.c (add_subscript_info): Likewise.
6331 * dwarfout.c (subscript_data_attribute, byte_size_attribute): Likewise.
6332 * sdbout.c (plain_type_1): Likewise.
6333 * stmt.c (pushcase_range, all_cases_count, node_has_high_bound):
6334 Likewise.
6335 * fold-const.c (int_const_binop, fold_convert, make_range, fold):
6336 Likewise.
6337
dfe91418 6338Thu Dec 18 17:05:10 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 6339
dfe91418
JL
6340 * mips.c (fatal): Remove declaration.
6341
63421997-12-18 Mark Mitchell <mmitchell@usa.net>
6343
6344 * integrate.c (get_label_from_map): New function.
6345 (expand_inline_function): Use it. Initialize the label_map to
6346 NULL_RTX instead of gen_label_rtx.
6347 (copy_rtx_and_substitute): Use get_label_from_map.
6348 * integrate.h (get_label_from_map): New function.
6349 (set_label_from_map): New macro.
6350 * unroll.c (unroll_loop): Use them.
6351 (copy_loop_body): Ditto.
6352
337e2b69
ILT
6353Thu Dec 18 19:19:57 1997 Ian Lance Taylor <ian@cygnus.com>
6354
6355 * mips/mips.h (INIT_SUBTARGET_OPTABS): Define if not defined.
6356 (INIT_TARGET_OPTABS): Define.
6357 * mips/ecoff.h: Include gofast.h before mips.h.
6358 (INIT_SUBTARGET_OPTABS): Define instead of INIT_TARGET_OPTABS.
6359 * mips/elf64.h: Likewise.
6360 * mips/elf.h (ASM_OUTPUT_SECTION_NAME): Define.
6361
02531345
JM
6362Thu Dec 18 14:51:12 1997 Jason Merrill <jason@yorick.cygnus.com>
6363
6364 * except.c: Remove register_exception_table{,_p}.
6365
913b5d54
GK
6366Thu Dec 18 14:57:29 1997 Gavin Koch <gavin@cygnus.com>
6367
efb84aa5
GK
6368 * unroll.c (calculate_giv_inc): Handle constant increment found in
6369 a MEM with an appropriate REG_EQUAL note.
6370
bb1b857a
GK
6371 * calls.c (expand_call): Implement LOAD_ARGS_REVERSED.
6372
913b5d54
GK
6373 * dwarf2out.c (dwarf2out_frame_debug): Handle adjustments of the
6374 frame pointer in the prologue.
6375
80aab652
RL
6376Thu Dec 18 00:19:38 1997 Robert Lipe <robertl@dgii.com>
6377
6378 * i386/x-sco5 (CLIB) Deleted. (ALLOCA) Added.
6379 * i386/xm-sco5.h (USE_C_ALLOCA) Added.
6380
f5c4bc60 6381Tue Dec 16 18:51:00 1997 Bill Moyer <billm@cygnus.com>
b57062ca 6382
f5c4bc60
BM
6383 * config/m68k/m68k.c (output_function_prologue): Typecast
6384 dwarf2out_cfi_label to (char *).
6385 * config/m68k/m68kemb.h (STARTFILE_SPEC): Redefined to "".
b57062ca 6386
8dcb5295
RH
6387Wed Dec 17 15:06:04 1997 Richard Henderson <rth@cygnus.com>
6388
6389 * sparc.md (jump): Don't use the annul bit around an empty loop.
6390 Patch from Kevin.Kelly@East.Sun.COM.
6391
a99503b1
SC
6392Wed Dec 17 00:51:36 1997 Stan Cox (scox@cygnus.com)
6393
b57062ca 6394 * jump.c: (jump_optimize): Don't use the return register as a
a99503b1
SC
6395 source1 of a conditional move.
6396
e13c943c
RH
6397Tue Dec 16 23:45:40 1997 Richard Henderson <rth@cygnus.com>
6398
6399 * sparc.c (DF_MODES): Or the mask not the bit number.
6400 (function_arg) [ARCH64]: Send unprototyped arg to fp reg first.
6401
be3d27d6
CI
6402Wed Dec 17 00:13:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
6403
6404 * combine.c (force_to_mode): return immediately if operand is a CLOBBER.
6405
f184a264
MH
6406Tue Dec 16 23:44:54 1997 Manfred Hollstein <manfred@s-direktnet.de>
6407
ade7386a
MH
6408 * fixincludes (size_t): Add support for Motorola's stdlib.h
6409 which fails to provide a definition for size_t.
6410 (fabs/hypot): Provide a prototype for fabs on m88k-motorola-sysv3.
6411 (strlen,strspn,strcspn return value): Handle different layout on sysV88.
6412 (hypot): Provide a fake for hypot for m88k-motorola-sysv3.
6413
f184a264
MH
6414 * m68k/xm-mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Define to
6415 prevent unresolved externals in libio.
6416 * m88k/xm-sysv3.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Likewise.
6417
afc96791
L
6418Tue Dec 16 23:25:45 1997 H.J. Lu (hjl@gnu.org)
6419
6420 * config/sparc/linux64.h (LIBGCC_SPEC): Removed.
6421 (CPP_SUBTARGET_SPEC): Add %{pthread:-D_REENTRANT}.
6422 (LIB_SPEC): Updated for glibc 2.
6423
e9818f3c
JL
6424Tue Dec 16 20:11:36 1997 Jeffrey A Law (law@cygnus.com)
6425
6426 * ginclude/stdarg.h: Undo BeOS changes, they break hpux.
6427 * ginclude/varargs.h: Likewise.
6428
a3fd4e75 6429Tue Dec 16 00:32:01 1997 Jeffrey A Law (law@cygnus.com)
520cd331
JL
6430
6431 * version.c: Bump for snapshot.
6432
a3fd4e75
JL
6433Tue Dec 16 00:14:29 1997 H.J. Lu (hjl@gnu.org)
6434
6435 * frame.h (__register_frame, __register_frame_table,
6436 __deregister_frame): New.
6437 * frame.c (__register_frame, __register_frame_table,
6438 __deregister_frame): New.
6439 * frame.c (__deregister_frame_info): Return void *.
6440 * frame.h (__deregister_frame_info): Ditto.
6441 * collect2.c (__deregister_frame_info): Ditto.
6442
166cdf4a
RH
6443Mon Dec 15 18:40:08 1997 Richard Henderson <rth@cygnus.com>
6444
6445 * expmed.c (expand_shift): If SHIFT_COUNT_TRUNCATED, drop a SUBREG.
6446
bcbbac26
RH
6447Mon Dec 15 18:31:43 1997 Richard Henderson <rth@cygnus.com>
6448
6449 * alpha.c (alpha_cpu_name): New variable.
6450 (alpha_mlat_string): Likewise.
6451 (alpha_memory_latency): Likewise.
6452 (override_options): Handle -mmemory-latency.
6453 (alpha_adjust_cost): Adjust load cost for latency.
6454 * alpha.h (TARGET_OPTIONS): Add meory-latency.
6455 (REGISTER_MOVE_COST): Define in terms of memory_latency. Take
6456 TARGET_CIX into account.
6457 (MEMORY_MOVE_COST): Define in terms of memory_latency.
6458 * invoke.texi (DEC Alpha Options): Document -mmemory-latency.
6459
6460 * alpha.h (ASM_COMMENT_START): New macro.
6461
6462Mon Dec 15 17:48:05 1997 Richard Henderson <rth@cygnus.com>
1914f5da
RH
6463
6464 * reload.h, reload1.c (eliminate_regs), caller-save.c, dbxout.c,
6465 dwarfout.c, dwarf2out.c, reload.c, sdbout.c: Revert March 15 change.
6466
6467 * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
6468 SUBREG_REG if the word count is unchanged.
6469 * reload1.c (eliminate_regs) [case SET]: If W_R_O, preserve
6470 subregs of identical word size for push_reload.
6471
a701efba
MM
6472Mon Dec 15 Mark Mitchell <mmitchell@usa.net> 11:41:32 1997
6473
6474 * toplev.c (rest_of_compilation): Don't call save_for_inline_copy
6475 if all we're doing is dealing with -Wreturn-type.
6476
5e21ac7a
RH
6477Mon Dec 15 09:44:39 1997 Richard Henderson <rth@cygnus.com>
6478
6479 * alpha.md (zero_extendqihi2, zero_extendqisi2, zero_extendqidi2):
6480 Use and 255 instead of zapnot 1, since it schedules better.
6481
296f8acc
JL
6482Mon Dec 15 08:48:24 1997 Jeffrey A Law (law@cygnus.com)
6483
6484 * stmt.c (expand_asm_operands): If an ASM has no outputs, then treat
6485 it as volatile.
6486
6d8ccdbb
JL
6487Mon Dec 15 00:04:48 1997 Jeffrey A Law (law@cygnus.com)
6488
6489 * haifa-sched.c (remove_dependencies): Set RTX_INTEGRATED_P on
6490 dependency we delete. Properly update prev for multiple consecutive
6491 deletions.
6492 (priority): Skip deleted dependence.
6493
14e83f2e
PB
6494Fri Dec 12 18:54:23 1997 Per Bothner <bothner@cygnus.com>
6495
6496 * expr.c (expand_builtin): Support BUILT_IN_FMOD - just call fmod.
6497
100d81d4
JM
6498Fri Dec 12 01:19:48 1997 Jason Merrill <jason@yorick.cygnus.com>
6499
9b8d9d6b
JM
6500 * flow.c (flow_analysis): Be consistent with find_basic_blocks in
6501 determining when a new basic block starts.
6502
74c3447c
JM
6503 * alpha/osf2or3.h (LIB_SPEC): Restore missing defn.
6504
6505 * pa.h (TEXT_SPACE_P): Use TREE_CODE_CLASS.
6506 * pa.md (iorsi3): Add missing args to *_operand calls.
6507
100d81d4
JM
6508 * except.c (call_get_eh_context): Don't mess with sequences.
6509 (emit_eh_context): Include the call in the sequence here.
6510
5a5ab947
PE
65111997-12-11 Paul Eggert <eggert@twinsun.com>
6512
6513 * collect2.c (write_c_file_glob): Allocate initial frame object
6514 in static storage and pass its address.
6515
01eb7f9a
JM
6516Thu Dec 11 23:33:48 1997 Jason Merrill <jason@yorick.cygnus.com>
6517
6518 * except.c (call_get_eh_context): Don't take a parm.
6519 Put the call at the top of the function.
6520 (emit_eh_context): Adjust.
6521 (get_eh_context): Replace with former use_eh_context.
6522 (get_eh_context_once, get_saved_pc_ref): Remove.
6523 (start_eh_unwinder, end_eh_unwinder, emit_unwinder): Remove.
6524 * except.h: Adjust.
6525 * integrate.c (expand_inline_function): Adjust.
6526 * toplev.c (rest_of_compilation): Don't call emit_unwinder.
6527
d19814a3
ML
6528Fri Oct 10 17:58:31 CEST 1997 Marc Lehmann <pcg@goof.com>
6529
6530 * i386/xm-go32.h (EXECUTABLE_SUFFIX): Define.
6531 (DIR_SEPARATOR, NO_SYS_SIGLIST): Likewise.
6532
7567d496
MH
6533Thu Dec 11 23:55:17 1997 Manfred Hollstein <manfred@s-direktnet.de>
6534
ade7386a 6535 * fixincludes (strlen,strspn,strcspn return value): Handle different
7567d496 6536 layout on sysV88.
b57062ca 6537 (hypot): Provide a fake for hypot which is broken on
7567d496
MH
6538 m88k-motorola-sysv3.
6539
0a6969ad
JC
6540Thu Dec 11 23:50:17 1997 John F. Carr <jfc@mit.edu>
6541
6542 * tree.c, tree.h: Change tree_code_type, tree_code_length, and
6543 tree_code_name from pointers to arrays.
6544 * tree.c: Remove standard_tree_code_* variables, no longer used.
6545 * print-tree.c: Remove declaration of tree_code_name.
6546
6547 * cp/lex.c (init_lex): Update for tree_code_* changes.
6548 * objc/objc-act.c (init_objc): Likewise.
6549
6550 * tree.def, cp/cp-tree.def, objc/objc-tree.def: Update for tree_code
6551 changes.
6552
c55dcc7d
FF
6553Thu Dec 11 23:34:54 1997 Fred Fish <fnf@ninemoons.com>
6554
6555 * config.sub: Add support for BeOS target.
6556 * configure.in: Likewise.
6557 * ginclude/stdarg.h: Likewise.
6558 * ginclude/stddef.h: Likewise.
6559 * ginclude/varargs.h: Likewise.
6560 * rs6000/beos.h: New file for BeOS.
6561 * rs6000/t-beos: Likewise.
6562 * rs6000/x-beos: Likewise.
6563 * rs6000/xm-beos.h: Likewise.
6564 * toplev.c (get_run_time): Just return 0 on BeOS.
6565
9cf3ae46
JL
6566Thu Dec 11 23:25:23 1997 Jeffrey A Law (law@cygnus.com)
6567 Toon Moene (toon@moene.indiv.nluug.nl)
6568
6569 * m68k.h (GO_IF_LEGITIMATE_ADDRESS): No longer cater to horribly
6570 old and broken Sun3 assemblers. Newer versions handle large
6571 offsets correctly as does the GNU assembler.
6572
7cc273ad
L
6573Thu Dec 11 23:06:48 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
6574
6575 * objc/objc-act.c (lang_report_error_function): Disable.
6576 * objc/objc-parse.y: Include "output.h".
6577 (yyerror): Remove redundant decl.
6578 (yyprint): Fix prototype.
6579 (apply_args_register_offset): Remove redundant decl.
6580 (get_file_function_name): Likewise.
6581
74d7ab55
JM
6582Thu Dec 11 22:02:10 1997 Jason Merrill <jason@yorick.cygnus.com>
6583
6584 * flow.c (find_basic_blocks): A CALL_INSN that can throw starts
6585 a new basic block.
6586 (find_basic_blocks_1): Likewise.
6587
0776059e
JM
6588Thu Dec 11 21:08:48 1997 Jason Merrill <jason@yorick.cygnus.com>
6589
6590 * except.c (use_eh_context): Don't copy_rtx a REG.
6591 (emit_throw): Lose old unwinder support.
6592 (expand_internal_throw): Likewise.
6593 * libgcc2.c (struct eh_context): Likewise.
6594 (new_eh_context): Likewise.
6595 (__get_eh_info): Lose redundant cast.
6596 (__get_dynamic_handler_chain): Likewise.
6597 (__get_saved_pc): Lose.
6598 Lose all old unwinder support code.
6599
154bba13
TT
6600Thu Dec 11 20:42:18 1997 Teemu Torma <tot@trema.com>
6601
6602 Thread-safe EH support for pthreads, DCE threads and Solaris threads.
b57062ca 6603
154bba13
TT
6604 * integrate.c (expand_inline_function): If the inline fn uses eh
6605 context, make sure that the current fn has one.
6606 * toplev.c (rest_of_compilation): Call emit_eh_context.
6607 * except.c (use_eh_context): New fn.
6608 (get_eh_context_once): New fn.
6609 (call_get_eh_context): New fn.
6610 (emit_eh_context): New fn.
6611 (get_eh_context): Call either get_eh_context_once or
6612 call_get_eh_context, depending on what we have.
6613 (get_dynamic_handler_chain): Call get_eh_context_once.
6614 * except.h: Prototypes for fns above.
6615 * optabs.c (get_eh_context_libfunc): Removed.
6616 (init_optabs): Don't initialize it.
6617 * expr.h (get_eh_context_libfunc): Removed.
6618 * rtl.h, rtl.c: New reg_note REG_EH_CONTEXT.
6619 * config/pa/pa.h (CPP_SPEC): Support for -threads.
6620 * config/pa/pa-hpux10.h (LIB_SPEC): Ditto.
6621 * config/pa/t-pa (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
6622 New multilib for -threads.
6623 * config/sparc/t-sol2: Added multilibs for -threads and
6624 made -pthreads alias to it.
6625 * config/sparc/sol2.h (CPP_SPEC, LIB_SPEC):
6626 Added -threads and -pthreads options.
6627 * libgcc-thr.h: New file.
6628 * libgcc2.c: (__get_cpp_eh_context): Removed.
6629 (struct cpp_eh_context): Removed.
6630 (struct eh_context): Replaced cpp_eh_context with generic language
b57062ca 6631 specific pointer.
154bba13
TT
6632 (__get_eh_info): New function.
6633 (__throw): Check eh_context::info.
6634 (__sjthrow): Ditto.
6635 * libgcc2.c: Include libgcc-thr.h.
6636 (new_eh_context, __get_eh_context,
6637 eh_pthread_initialize, eh_context_initialize, eh_context_static,
6638 eh_context_specific, eh_context_free): New functions.
6639 (get_eh_context, eh_context_key): New variables.
6640 (__sjthrow, __sjpopnthrow, __eh_pcnthrow, __throw): Use
6641 get_eh_context to get the context.
6642 (longjmp): Move the declaration inside
6643 #ifdef DONT_USE_BUILTIN_SETJMP.
6644 * frame.c: Include libgcc-thr.h.
6645 (object_mutex): Mutex to protect the object list.
6646 (find_fde, __register_frame, __register_frame_table,
6647 __deregister_frame): Hold the lock while accessing objects.
6648 * except.h (get_eh_context): Declare.
6649 * except.c (current_function_ehc): Define.
6650 (current_function_dhc, current_function_dcc): Removed.
6651 (get_eh_context): New function.
6652 (get_dynamic_handler_chain): Use get_eh_context.
6653 (get_saved_pc_ref): Ditto.
6654 (get_dynamic_cleanup_chain): Removed references to
6655 current_function_dcc.
6656 (save_eh_status, restore_eh_status): Save and restore
6657 current_function_ehc instead.
6658 * optabs.c (get_eh_context_libfunc): New variable.
6659 (init_optabs): Initialize it.
6660 * expr.h: Declare get_eh_context_libfunc.
6661 * function.h (struct function): Replaced dhc and dcc with ehc.
6662 * except.c (get_saved_pc_ref): New functions.
6663 (eh_saved_pc_rtx, eh_saved_pc): Deleted.
6664 (expand_internal_throw_indirect): Use get_saved_pc_ref() instead
6665 of eh_saved_pc.
6666 (end_eh_unwinder): Likewise.
6667 (init_eh): Remove initialization of eh_saved_pc.
6668 * optabs.c (get_saved_pc_libfunc): New variable.
6669 (init_optabs): Initialize it.
6670 * expr.h: Declare get_saved_pc_libfunc.
6671 * except.h (eh_saved_pc_rtx): Deleted.
6672 (get_saved_pc_ref): Declared.
6673
6674 From Scott Snyder <snyder@d0sgif.fnal.gov>:
6675 * libgcc2.c (__get_saved_pc): New.
6676 (__eh_type, __eh_pc): Deleted.
6677 (__eh_pcnthrow): Use __get_saved_pc() instead of __eh_pc.
6678 (__get_dynamic_handler_chain): Move __dynamic_handler_chain inside
6679 this fcn.
6680
68d75312
JC
6681Thu Dec 11 17:23:48 1997 John F. Carr <jfc@mit.edu>
6682
b16d8734
JC
6683 * sparc/sol2.h: Use 64 bit multiply and divide functions in
6684 Solaris libc. Define TARGET_LIVE_G0 and TARGET_BROKEN_SAVERESTORE
6685 as 0.
6686
68d75312
JC
6687 * rtl.h (global_rtl): New variable, replacing separate variables for
6688 commonly used rtl.
6689 (const_int_rtx): Now array of rtx_def, not rtx.
6690 * emit-rtl.c: Update for new rtl data structures.
6691 * genattrtab.c: Define global_rtl.
6692
44517326 6693Thu Dec 11 15:50:29 1997 David Edelsohn <edelsohn@mhpcc.edu>
f40421ce 6694
44517326
DE
6695 * configure.in ({rs6000,powerpc}-*-*): Enable Haifa scheduler by
6696 default.
f40421ce 6697
8587487b
AG
6698Wed Dec 10 12:30:18 1997 Anthony Green <green@cygnus.com>
6699
6700 * crtstuff.c (__do_global_ctors): Fix typo.
6701
08ce3276
MH
6702Tue Dec 9 09:43:59 1997 Manfred Hollstein <manfred@s-direktnet.de>
6703
6704 * toplev.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
6705 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
6706
c229cba9
DE
6707Tue Dec 9 09:38:58 1997 David Edelsohn <edelsohn@mhpcc.edu>
6708
6709 * rs6000.h (FUNCTION_ARG_PADDING): Define.
6710 * rs6000.c (function_arg_padding): New function.
6711
b2c59d0b
MH
6712Tue Dec 9 10:34:21 1997 Manfred Hollstein <manfred@s-direktnet.de>
6713
6714 * m68k.c: Include tree.h only once.
6715
c1132c27
RK
6716Tue Dec 9 09:32:33 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6717
6718 * integrate.c (save_for_inline_copying): Make a new reg_parm_stack_loc.
6719
ac957f13
JL
6720Tue Dec 9 01:16:06 1997 Jeffrey A Law (law@cygnus.com)
6721
6722 * Partially cleaned up prototyping code from HJ.
a1d061a1 6723 * tree.h: Add many prototypes.
ac957f13
JL
6724 * haifa-sched.c (haifa_classify_insn): Renamed from classify_insn.
6725 All references changed.
6726 * rtl.h: Protect from multiple inclusions. Add many prototypes.
b57062ca 6727
f40421ce 6728Tue Dec 9 01:15:15 1997 Fred Fish <fnf@ninemoons.com>
ac957f13
JL
6729
6730 * libgcc2.c (string.h): Hoist inclusion to occur before first use of
6731 string functions like strlen.
6732
0a232106
MH
6733Tue Dec 9 00:57:38 1997 Manfred Hollstein <manfred@s-direktnet.de>
6734
6735 * configure.in: Check for functions getrlimit and setrlimit.
6736 * cccp.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
6737 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
6738
25b76cc1
JS
6739Mon Dec 8 23:53:26 1997 Jay Sachs <sachs@bull.cs.williams.edu>
6740
6741 * Makefile.in (compare*): Handle losing behavior from 4.4bsd make.
6742
26250081
RH
6743Mon Dec 8 21:03:28 1997 Richard Henderson <rth@cygnus.com>
6744
6745 * alpha.c (REG_RA, alpha_return_addr, output_epilog):
6746 Fix merge problems.
6747
6748 * alpha.c (override_options): Don't know about scheduling for EV6.
6749 * alpha.md (ev5 function units): Don't overload as ev6.
6750
6751 * alpha.c (alpha_adjust_cost): Simplify. Fix typo in ev5 mult case.
6752 * alpha.md (define_attr type): Add mvi.
6753 (ev5_e0): Define sceduling parameters for it.
6754 (TARGET_MAX insns): Type is mvi not shift.
6755
7120f213
RH
6756Mon Dec 8 18:15:00 1997 Richard Henderson <rth@cygnus.com>
6757
6758 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix backported gcc-2.8 bug.
6759
afa80947
R
6760Mon Dec 8 21:17:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
6761
6762 * cstamp-h, auto-config.h: Delete.
6763
51ca169b
JL
6764Sun Dec 7 19:19:03 1997 Jeffrey A Law (law@cygnus.com)
6765
6766 * version.c: Bump for snapshot.
6767
16169366
JL
6768Sat Dec 6 22:22:22 1997 Jeffrey A Law (law@cygnus.com)
6769
6770 * cccp.c: Fix typo brought over in merge.
6771
efeb5d4f 6772 * Merge in changes from gcc-2.8.
0fe09481 6773
da932f04
JL
6774Mon Nov 3 05:45:32 1997 Philippe De Muyter <phdm@macqel.be>
6775
6776 * m68k.c: Include tree.h for dwarf2out_cfi_label.
6777
6778 * gcc.c (process_command): Do not take address of function fatal when
6779 calling lang_specific_driver.
6780
6781Sat Dec 6 01:02:38 1997 Mumit Khan <khan@xraylith.wisc.edu>
6782
b57062ca 6783 * config/i386/cygwin32.h (DWARF2_UNWIND): Exception handling
da932f04
JL
6784 doesn't work with it yet, so set it to 0.
6785 * config/i386/xm-cygwin32.h (NO_SYS_SIGLIST): Define.
6786
6787Sat Dec 6 01:01:02 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
6788
6789 * cse.c (cse_insn): Check for invalid entries when taking references.
6790
81797aba
JL
6791Fri Dec 5 18:26:25 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
6792
6793 * loop.c (invariant_p): Don't test flag_rerun_loop_opt.
6794 (loop_optimize, scan_loop, strength_reduce): New argument unroll_p.
6795 * toplev.c (rest_of_compilation): Pass it. Remove code to
6796 save / clear / restore flag_unroll_{,all_}loops.
6797
6798Fri Dec 5 16:26:03 1997 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
6799
6800 * i386.c (notice_update_cc): Remove bogus pentium GCC code.
6801
6802Fri Dec 5 16:25:14 1997 Jeffrey A Law (law@cygnus.com)
6803
6804 * stmt.c (warn_if_unused_value): Don't warn for TRY_CATCH_EXPR.
6805
5dfa7520
JM
6806Thu Dec 4 11:51:00 1997 Jason Merrill <jason@yorick.cygnus.com>
6807
d07daca1
JM
6808 * except.c (get_dynamic_handler_chain): Only make the call once per
6809 function.
6810
5dfa7520
JM
6811 * except.c (expand_end_all_catch): Fix for sjlj exceptions.
6812
4d7b7169
R
6813Thu Dec 4 12:30:40 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
6814
6815 * sh.c (final_prescan_insn): Use local label prefix
6816 when emitting .uses pseudo-ops.
6817
e701eb4d
JM
6818Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
6819
6820 * libgcc2.c (__throw): Use __builtin_return_addr instead of __eh_pc.
6821 * except.c: Lose outer_context_label_stack.
6822 (expand_eh_region_end): Rethrow from outer_context here.
6823 (expand_fixup_region_end): Let expand_eh_region_end do the rethrow.
6824 (expand_internal_throw): Take no args.
6825 (expand_internal_throw_indirect): Lose.
6826 (expand_leftover_cleanups, expand_start_all_catch): Use expand_rethrow.
6827 (expand_start_all_catch): Start a rethrow region.
6828 (expand_end_all_catch): End it.
6829 (expand_rethrow): New fn.
6830 * except.h: Reflect above changes.
6831 * flow.c: Revert change of Nov 27.
6832
6a242b6a
JL
6833Thu Dec 4 00:24:09 1997 Jeffrey A Law (law@cygnus.com)
6834
6835 * i386/t-sol2 (CRTSTUFF_T_CFLAGS): Turn on the optimizer.
6836
9762d48d
JM
6837Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
6838
6839 * except.c (expand_fixup_region_end): New fn.
6840 (expand_fixup_region_start): Likewise.
6841 (expand_eh_region_start_tree): Store cleanup into finalization here.
6842 * stmt.c (expand_cleanups): Use them to protect fixups.
6843
868e82ab
GK
6844Wed Dec 3 11:41:13 1997 Gavin Koch <gavin@cygnus.com>
6845
6846 * mips/mips.md (muldi3_r4000): Broaden the output template
6847 and attribute assignments to handle three operand dmult;
6848 rename to muldi3_internal2.
6849 (muldi3): Call the new muldi3_internal2 for R4000, and
6850 any GENERATE_MULT3 chip.
6851
716cc7f7
JM
6852Tue Dec 2 19:40:43 1997 Jason Merrill <jason@yorick.cygnus.com>
6853
6854 * stmt.c (expand_decl_cleanup): Update thisblock after eh_region_start.
6855
9fb82071
JW
6856Tue Dec 2 12:54:33 1997 Jim Wilson <wilson@cygnus.com>
6857
6858 * unroll.c (find_splittable_givs): Remove last change. Handle givs
6859 with a dest_reg that was created by loop.
6860
f2d76545
JL
6861Sat Nov 29 12:44:57 1997 David Edelsohn <edelsohn@mhpcc.edu>
6862
6863 * rs6000.c (function_arg_partial_nregs): Undo Nov. 26 patch.
6864
6865 * rs6000/aix41.h (ASM_CPU_SPEC): Define.
6866
b4dfb707
JL
6867Fri Nov 28 10:00:27 1997 Jeffrey A Law (law@cygnus.com)
6868
6869 * configure.in: Fix NCR entries.
6870
80c2681c
JL
6871Thu Nov 27 12:20:19 1997 Jeffrey A Law (law@cygnus.com)
6872
586a5f99
JL
6873 * flow.c (find_basic_blocks): Handle cfg issues for rethrows and
6874 nested exceptions correctly.
6875
80c2681c
JL
6876 * unroll.c (find_splittable_givs): Don't split givs with a dest_reg
6877 that was created by loop.
6878
f45ebe47
JL
6879Thu Nov 27 09:34:58 1997 Jason Merrill <jason@yorick.cygnus.com>
6880
6881 * expr.c (preexpand_calls): Don't look past a TRY_CATCH_EXPR.
6882
6883 * except.c (expand_start_all_catch): One more do_pending_stack_adjust.
6884
034e84c4
MM
6885Wed Nov 26 15:47:30 1997 Michael Meissner <meissner@cygnus.com>
6886
8fbd2dc7
MM
6887 * rs6000.c (SMALL_DATA_REG): Register to use for small data relocs.
6888 (print_operand): Use SMALL_DATA_REG for the register involved in
6889 small data relocations.
6890 (print_operand_address): Ditto.
6891
6892 * rs6000/linux.h (LINK_SPEC): Pass -dynamic-linker /lib/ld.so.1 if
6893 -dynamic linker is not used.
6894
a226df46
MM
6895 * rs6000.md (call insns): For local calls, use @local suffix under
6896 System V. Don't use @plt under Solaris.
6897
034e84c4
MM
6898 * rs6000.c (output_function_profiler): Put label address in r0, and
6899 store LR in 4(sp) for System V/eabi.
6900
6901 * rs6000.h (ASM_OUTPUT_REG_{PUSH,POP}): Keep stack aligned to 16
6902 byte boundary, and maintain stack backchain.
6903
f2d76545
JL
6904Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
6905
6906 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
6907 fix_truncsfdi2): Change *.
6908
33e5c8c3
JM
6909Wed Nov 26 11:12:26 1997 Jason Merrill <jason@yorick.cygnus.com>
6910
6911 * toplev.c (main): Complain about -gdwarfn.
6912
f45ebe47
JL
6913Tue Nov 25 22:43:30 1997 Jason Merrill <jason@yorick.cygnus.com>
6914
b57062ca 6915 * dwarfout.c (output_type): If finalizing, write out nested types
f45ebe47
JL
6916 of types we've already written.
6917
92dcf4c8
MM
6918Tue Nov 25 20:32:24 1997 Michael Meissner <meissner@cygnus.com>
6919
6920 (patches originally from Geoffrey Keating)
6921 * rs6000.c (function_arg): Excess floating point arguments don't
6922 go into GPR registers after exhausting FP registers under the
6923 System V.4 ABI.
6924 (function_arg_partial_nregs): Ditto.
6925
6926 * rs6000.md (call insns): If -fPIC or -mrelocatable, add @plt
6927 suffix to calls.
6928
f4744807
JM
6929Tue Nov 25 23:37:27 1997 Jason Merrill <jason@yorick.cygnus.com>
6930
6931 * integrate.c (output_inline_function): Just unset DECL_INLINE.
6932
6933Tue Nov 25 23:33:29 1997 scott snyder <snyder@d0sgif.fnal.gov>
6934
6935 * dwarf2out.c (outout_call_frame_info): Ensure that the info has
6936 proper alignment.
6937
6938 * libgcc2.c (__throw): Initialize HANDLER.
6939
0609f021
JW
6940Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
6941
6942 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
6943 fix_truncsfdi2): Change *X to ?*X.
6944
c905c108
RH
6945Tue Nov 25 10:00:42 1997 Richard Henderson (rth@cygnus.com)
6946
6947 * alpha.h (CONST_OK_FOR_LETTER): Fix 'L' handling.
6948
5041a61c
JL
6949Tue Nov 25 10:00:42 1997 Jeffrey A Law (law@cygnus.com)
6950
6951 * crtstuff.c (do_global_dtors_aux): Handle multiple calls better.
6952
bb727b5a
JM
6953Tue Nov 25 01:26:55 1997 Bruno Haible <haible@ilog.fr>:
6954
6955 * dwarf2out.c (ASM_OUTPUT_DWARF_DELTA1): Implement.
6956
6957Mon Nov 24 22:41:55 1997 Jason Merrill <jason@yorick.cygnus.com>
6958
6959 * except.c (get_dynamic_handler_chain): Build up a FUNCTION_DECL.
6960 * optabs.c (init_optabs): Lose get_dynamic_handler_chain_libfunc.
6961 * expr.h: Likewise.
6962
f45ebe47
JL
6963Sat Nov 22 18:58:20 1997 Jeffrey A Law (law@cygnus.com)
6964
6965 * pa-hpux10.h (NEW_HP_ASSEMBLER): Define.
6966 * pa.h (LEGITIMATE_CONSTANT_P): Reject LABEL_REFs if not using
6967 gas and not using the new HP assembler.
6968
ef85603e
JL
6969Fri Nov 21 15:20:05 1997 Jeffrey A Law (law@cygnus.com)
6970
6971 * Makefile.in (program_transform_cross_name): Clean up "-e" confusion.
6972 (GCC_INSTALL_NAME, GCC_CROSS_NAME): Likewise.
6973
6cc1f5cb
AC
6974Fri Nov 21 19:37:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
6975
6976 * config/mips/elf64.h (MULTILIB_DEFAULTS): Test for
6977 TARGET_ENDIAN_DEFAULT == zero instead of testing for macro
6978 definition.
6979
72eb1038
BH
6980Fri Nov 21 12:49:56 1997 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
6981
6982 * stmt.c (expand_end_bindings): Allow jump into block with cleanups.
6983
1418bb67
JM
6984Fri Nov 21 12:18:51 1997 Jason Merrill <jason@yorick.cygnus.com>
6985
6986 * except.h: Add outer_context_label_stack.
6987 * except.c: Likewise.
6988 (expand_start_all_catch): Push the outer_context for the try block
6989 onto outer_context_label_stack.
6990 (expand_end_all_catch): Use it and pop it.
6991
9dab7833
RL
6992Fri Nov 21 10:13:11 1997 Robert Lipe (robertl@dgii.com)
6993
6994 * i386/sco5.h (HAVE_ATEXIT): Revert last change.
6995
858e4e8c
RH
6996Thu Nov 20 16:11:50 1997 Richard Henderson <rth@cygnus.com>
6997
6998 * alpha.c (alpha_emit_set_const_1): Handle narrow hosts better.
6999
a21d14e9
KK
7000Thu Nov 20 16:11:50 1997 Klaus Kaempf <kkaempf@progis.de>
7001
7002 * alpha/vms.h (ASM_OUTPUT_ADDR_VEC_ELT): Add an L for the local label
7003 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
7004
ced78d8b
JM
7005Thu Nov 20 14:42:15 1997 Jason Merrill <jason@yorick.cygnus.com>
7006
7007 * Makefile.in (LIB2FUNCS): Remove C++ memory management support.
b57062ca 7008 * libgcc2.c: Remove __builtin_new, __builtin_vec_new, set_new_handler,
ced78d8b
JM
7009 __builtin_delete, and __builtin_vec_delete.
7010
7011 * except.c (output_exception_table): Don't bother with
7012 __EXCEPTION_END__.
7013
a09ff88b
JL
7014Thu Nov 20 16:11:50 1997 Jeffrey A Law (law@cygnus.com)
7015
1b8b89f1
JL
7016 * pa.md (pre_stwm, post_stwm, pre_ldwm, post_ldwm): Base register
7017 is an in/out operand.
7018 (zero extended variants of stwm/stwm patterns): Similarly.
7019
a09ff88b
JL
7020 * mips/x-iris (FIXPROTO_DEFINES): Add -D_SGI_SOURCE.
7021
7bb9fb0e
JM
7022Thu Nov 20 13:19:32 1997 Jason Merrill <jason@yorick.cygnus.com>
7023
7024 * dwarf2out.c (ASM_OUTPUT_DWARF_OFFSET4): Rename from VALUE4.
7025 Use assemble_name.
7026 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Use assemble_name.
7027 (output_call_frame_info): Emit a \n after using it.
7028
9101297d
DL
7029Thu Nov 20 00:38:46 1997 Dave Love <d.love@dl.ac.uk>
7030
7031 * configure.in: Add AC_ARG_ENABLE for Haifa as documentation.
7032
2ed2af28
PDM
7033Wed Nov 19 12:03:04 1997 Philippe De Muyter <phdm@macqel.be>
7034
7035 * dwarf2out.c (CIE_LENGTH_LABEL, FDE_LENGTH_LABEL): New macros.
7036 (ASM_OUTPUT_DWARF_VALUE4): New macro.
7037 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Define if SET_ASM_OP is
7038 defined.
7039 (output_call_frame_info): Do not output forward label differences
7040 if ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL is defined.
7041 * m68k/mot3300.h (SET_ASM_OP): Define when not using gas.
7042
4dff12bf
R
7043Tue Nov 18 23:03:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7044
7045 * sh.md (attribute "type"): Add nil.
7046 (movsi_ie): y/y alternative is type nil.
7047 (movsf_ie): Replace ry/yr/X alternative by r/y/X , y/r/X and y/y/X
7048 alternatives.
7049 (movsf_ie+1): Delete.
7050
218c2cdb
JW
7051Tue Nov 18 15:39:59 1997 Jim Wilson <wilson@cygnus.com>
7052
7053 * mips/mips.c (save_restore_insns): If gp_offset or fp_offset are
7054 large_int, emit two insns instead of one splitable insn.
7055 * dwarf2out.c (dwarf2out_frame_debug): When set cfa_store_offset
7056 from cfa_temp_value, use cfa_offset. Add assert checking that
7057 cfa_reg is SP.
7058
d5b79362
TT
7059Mon Nov 17 15:35:38 1997 Tom Tromey <tromey@cygnus.com>
7060
7061 * cccp.c (deps_output): Properly quote file names for make.
7062
de1ea87a
JL
7063Mon Nov 17 13:21:40 1997 Jeffrey A Law (law@cygnus.com)
7064
7065 * t-h8300 (MULTILIB_EXCEPTIONS): Define.
7066
cb0112a7
RL
7067Fri Nov 7 15:33:11 1997 Robert Lipe (robertl@dgii.com)
7068
7069 * i386/sco5.h (HAVE_ATEXIT): Delete definition.
7070
85c3ba60
JL
7071Sun Nov 16 23:52:48 1997 Jeffrey A Law (law@cygnus.com)
7072
7073 * cse.c (cse_insn): Don't look at JUMP_LABEL field of a conditionl
7074 return.
7075 (cse_end_of_basic_block): Similarly.
ef720b21 7076
9155d500
KJ
7077Sun Nov 16 23:01:40 1997 J. Kean Johnston <jkj@sco.com>
7078
7079 * i386/sco5.h (ASM_OUTPUT_ALIGNED_BSS): Define.
7080 (SELECT_RTX_SECTION): Define.
7081 (LIBGCC_SPEC, LIB_SPEC): Do the right thing for PIC.
7082
4931312c
MH
7083Sun Nov 16 22:47:03 1997 Manfred Hollstein <manfred@s-direktnet.de>
7084
7085 * Makefile.in (compare, compare-lean): Define $stage for each
7086 shell command.
7087 (gnucompare, gnucompare-lean): Likewise.
7088
8dfe3c62
RH
7089Sun Nov 16 22:02:16 1997 Richard Henderson (rth@cygnus.com)
7090
7091 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix offsets.
7092
7093 * alpha.h (ASM_OUTPUT_ADDR_DIFF_ELT): Add an L for the local label
7094 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
7095
874a8709
FF
7096Fri Nov 14 09:09:20 1997 Fred Fish (fnf@cygnus.com)
7097
7098 * dwarfout.c (byte_size_attribute): Add local var upper_bound
7099 and add case to handle STRING_TYPE.
7100 * dwarfout.c (output_string_type_die): Fix code to generate
7101 correct string length attribute for fixed length strings.
7102 Still needs support for varying length strings.
7103
ea466196
JL
7104Fri Nov 14 08:46:56 1997 Jeffrey A Law (law@cygnus.com)
7105
7106 * toplev.c (get_run_time): Do something sensible for cygwin32.
7107
202f590e
RH
7108Fri Nov 14 07:24:20 1997 Richard Henderson <rth@cygnus.com>
7109
f35bcbc5
RH
7110 * expr.c (expand_builtin_setjmp): Set
7111 current_function_has_nonlocal_label.
7112 * stupid.c (stupid_life_analysis): If has_nonlocal_label, kill
7113 call-saved registers across calls.
7114
7115 * alpha.md (exception_receiver): Remove.
7116 (nonlocal_goto_receiver_osf): New
7117 (nonlocal_goto_receiver_vms): Renamed from nonlocal_goto_receiver.
7118 (nonlocal_goto_receiver): New, select _osf or _vms.
7119
531ea24e
RH
7120 * alpha.c (output_prolog [*]): Prefix entry labels with '$' to
7121 keep them from being propogated to the object file.
7122 (alpha_write_linkage): Likewise.
7123 * alpha.md (call_vms): Likewise.
7124 (call_value_vms): Likewise.
7125 (unnamed osf call insns): Likewise.
7126
7127 * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Don't omit L from local label.
7128 (ASM_GENERATE_INTERNAL_LABEL): Likewise.
7129
202f590e
RH
7130 * alpha.c (call_operand): Any reg is valid for WinNT.
7131 * alpha.md (call_nt, call_value_nt): Don't force address into $27.
7132 (anon nt calls): Add 'R' alternative.
7133 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE,
7134 INITIALIZE_TRAMPOLINE): Handle lack of original $27 and 32-bit ptrs.
7135
238ad62b
JL
7136Fri Nov 14 06:59:33 1997 Jeffrey A Law (law@cygnus.com)
7137
f78b5ca1
JL
7138 * calls.c (expand_call): Handle pcc_struct_value correctly for C++.
7139
238ad62b
JL
7140 * i386/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Delete defines.
7141 * i386/xm-mingw32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
7142 * rs6000/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
7143
da275344
MM
7144Thu Nov 13 20:37:33 1997 Michael Meissner <meissner@tiktok.cygnus.com>
7145
7146 * reload1.c (new_spill_reg): Improve fixed or forbidden register
7147 spill error message.
7148
1f1e1545
KG
7149Thu Nov 13 20:29:08 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7150
7151 * prefix.c: Use stdarg.h only ifdef __STDC__. Otherwise,
7152 use varargs.h. Wrap header with <>, not "".
7153
daa4b717
JL
7154Thu Nov 13 20:21:17 1997 Jeffrey A Law (law@cygnus.com)
7155
7156 * integrate.c (save_for_inline_copying): Add return value from
7157 savealloc.
7158
9bb5394e
BK
7159Thu Nov 13 19:12:33 1997 Brendan Kehoe <brendan@cygnus.com>
7160
7161 * fixincludes: Be a little more restrictive on what we will
7162 substitute to replace definitions of MAXINT for HPUX.
7163
9571f69b
MM
7164Thu Nov 13 18:41:02 1997 Michael Meissner <meissner@cygnus.com>
7165
7166 * dbxout.c (dbxout_symbol_location): Don't assume that variables
7167 whose address is the stack or argument pointers are indirect
7168 pointers.
7169
b57062ca
UD
71701997-11-13 Paul Eggert <eggert@twinsun.com>
7171
e7cbb6b6
PE
7172 * cccp.c, cpplib.c (compare_defs):
7173 Don't complain about arg name respellings unless pedantic.
b57062ca
UD
7174 * cpplib.c (compare_defs): Accept pfile as new arg.
7175 All callers changed.
e7cbb6b6 7176
9f29ca78
R
7177Thu Nov 13 23:33:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7178
7179 * fold-const.c (fold_truthop): Fix bug in last change.
7180
41c9120b
PE
71811997-11-13 Paul Eggert <eggert@twinsun.com>
7182
7183 Fix some confusion with IEEE minus zero.
7184
7185 * real.h (REAL_VALUES_IDENTICAL): New macro.
7186
7187 * expr.c (is_zeros_p): Don't consider -0.0 to be all zeros.
7188 * fold-const.c (operand_equal_p): Don't consider -0.0 to be
7189 identical to 0.0.
7190 * tree.c (simple_cst_equal): Don't consider -0.0 to have the
7191 same tree structure as 0.0.
7192
7193 * varasm.c (immed_real_const_1): Use new REAL_VALUES_IDENTICAL
7194 macro instead of doing it by hand.
7195
323d8e7b
JL
7196Thu Nov 13 16:56:14 1997 Jeffrey A Law (law@cygnus.com)
7197
7198 * v850/lib1funcs.asm: Minor whitespace changes.
7199 * v850.c: Fix minor formatting problems in many places.
7200 (construct_restore_jr, construct_save_jarl): Remove unwanted aborts.
7201
13529ea4
JW
7202Thu Nov 13 12:53:44 1997 Jim Wilson <wilson@cygnus.com>
7203
7204 * mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete code swapping xplus0 and
7205 xplus1 when xplus0 is not a register.
7206
759c135e
JL
7207Thu Nov 13 11:41:42 1997 Jeffrey A Law (law@cygnus.com)
7208
8930b063
JL
7209 * flow.c (find_basic_blocks): During marking phase, if we encounter
7210 an insn with a REG_LABEL note, make the target block live and
7211 create an edge from the insn to the target block. Do not make
7212 edges from all blocks to the target block.
7213
0be28489
JL
7214 * m68k/x-next (OTHER_FIXINCLUDES_DIRS): Include /NextDeveloper/Headers.
7215
759c135e
JL
7216 * confiugre.in: Tweak NCR entries.
7217 * configure: Rebuilt.
7218
47ad8c61
MM
7219Thu Nov 13 11:07:41 1997 Michael Meissner <meissner@cygnus.com>
7220
7221 * rs6000.c (num_insns_constant): Use REAL_VALUE_FROM_CONST_DOUBLE to
7222 pick apart floating point values, instead of using CONST_DOUBLE_LOW
7223 and CONST_DOUBLE_HIGH.
7224
7225 * rs6000.md (define_splits for DF constants): Use the appropriate
7226 REAL_VALUE_* interface to pick apart DF floating point constants in
7227 a machine independent fashion.
7228
5a6b3365
R
7229Thu Nov 13 00:06:58 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7230
7231 * fold-const.c (fold_truthop): When changing a one-bit comparison
7232 against zero into a comparison against mask, do a proper sign
7233 extension.
7234
2ec1535d
JL
7235Wed Nov 12 09:37:01 1997 Jeffrey A Law (law@cygnus.com)
7236
3a88cbd1
JL
7237 * except.c: Do not include "assert.h".
7238 (save_eh_status): Turn asserts into conditional aborts.
7239 (restore_eh_status, scan_region): Likewise.
7240 * dwarfout.c: Do not include "assert.h".
7241 (bit_offset_attribute): Turn asserts into conditional aborts.
7242 (bit_size_attribute, output_inlined_enumeration_type_die): Likewise.
7243 (output_inlined_structure_type_die): Likewise.
7244 (output_inlined_union_type_die): Likewise
7245 (output_tagged_type_instantiation): Likewise.
7246 (dwarfout_file_scope_decl): Likewise.
7247 * dwarf2out.c: Do not include "assert.h"
7248 (expand_builtin_dwarf_reg_size): Turn asserts into conditional aborts.
7249 (reg_save, initial_return_save, dwarf2out_frame_debug): Likewise.
7250 (add_child_die, modified_type_die, add_bit_offset_attribute): Likewise.
7251 (add_bit_size_attribute, scope_die_for): Likewise.
7252 (output_pending_types_for_scope): Likewise.
7253 (get_inlined_enumeration_type_die): Likewise.
7254 (get_inlined_structure_type_die): Likewise.
7255 (get_inlined_union_type_die, gen_subprogram_die): Likewise.
7256 (gen_tagged_type_instantiation_die): Likewise.
7257
2ec1535d
JL
7258 * flow.c (find_basic_blocks): Refine further to get a more correct
7259 cfg, especially in the presense of exception handling, computed
7260 gotos, and other non-trivial cases. Call abort if an inaccuracy
7261 is detected in the cfg.
7262
a6124a42
R
7263Tue Nov 11 21:47:27 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7264
7265 * glimits.h (SHRT_MIN): Define in a way suitable for 16 bit hosts.
7266
7267 * c-lex.c (whitespace_cr, skip_white_space_on_line): New functions.
7268 (skip_white_space): Use whitespace_cr.
7269 (check_newline): Handle whitespace more consistently.
7270
8f3189a4
JW
7271Tue Nov 11 16:25:49 1997 Jim Wilson <wilson@cygnus.com>
7272
7273 * i386/cygwin32.h (CPP_PREDEFINES): Delete -DPOSIX.
7274 * i386/xm-cygwin32.h (POSIX): Define.
7275
6d1350cd
GK
7276Mon Nov 10 20:53:11 1997 Gavin Koch <gavin@cygnus.com>
7277
7278 * config/mips/mips.h (MASK_DEBUG_H): Set to zero, so this bit
7279 is available elsewhere.
7280
d1f4474e
DE
7281Mon Nov 10 16:21:58 1997 Doug Evans <devans@canuck.cygnus.com>
7282
7283 * sparc/sparc.md (mov[sdt]f_const_insn): Fix condition to match
7284 what the instruction can handle.
7285
c7ae64f2
JM
7286Mon Nov 10 03:02:19 1997 Jason Merrill <jason@yorick.cygnus.com>
7287
7288 * stmt.c (expand_decl_cleanup_no_eh): New fn.
7289
7290 * except.c (expand_leftover_cleanups): do_pending_stack_adjust.
7291
ea64ef27
JL
7292Mon Nov 10 00:05:56 1997 Jeffrey A Law (law@cygnus.com)
7293
7294 * alias.c (MAX_ALIAS_LOOP_PASSES): Define.
7295 (init_alias_analysis): Break out of loops after MAX_ALIAS_LOOP_PASSES.
7296
47ad8c61
MM
7297Sun Nov 9 14:34:47 1997 David Edelsohn <edelsohn@mhpcc.edu>
7298
7299 * rs6000.md (lshrdi3_power): Delete '&' from first alternative and
7300 swap instruction order.
7301
0ff27f58
JL
7302Sun Nov 9 02:07:16 1997 Jeffrey A Law (law@cygnus.com)
7303
7304 * fixinc.svr4 (__STDC__): Add another case.
7305
7091039c
R
7306Sun Nov 9 02:00:29 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7307
7308 * a29k.h (ELIGIBLE_FOR_EPILOGUE_DELAY): Avoid loads from varying
7309 addresses in the epilogue delay slot.
7310
553914ad
MH
7311Sun Nov 9 01:40:40 1997 Manfred Hollstein (manfred@s-direktnet.de)
7312
7313 * m88k/dgux.h (ASM_CPU_SPEC): Reformatted to suppress wrong whitespace
7314 in generated `specs' file.
7315
64fde701
JW
7316Sun Nov 9 01:37:11 1997 Jim Wilson (wilson@cygnus.com)
7317
7318 * flags.h (flag_rerun_loop_opt): Declare.
7319 * loop.c (invariant_p, case LABEL_REF): Check flag_rerun_loop_opt.
7320 * toplev.c (flag_rerum_loop_opt): Delete static.
7321
1245df60
R
7322Sat Nov 8 18:20:21 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7323
1245df60
R
7324 Bring over from FSF:
7325
7326 Thu Oct 30 12:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7327
7328 * va-sh.h (__va_arg_sh1): Define.
7329 (va_arg): Use it.
7330 SH3E doesn't use any integer registers for subsequent arguments
7331 once a non-float value was passed in the stack.
7332 * sh.c (machine_dependent_reorg): If optimizing, put explicit
7333 alignment in front label for ADDR_DIFF_VEC.
7334 * sh.h (PASS_IN_REG_P): Fix SH3E case.
7335 (ADJUST_INSN_LENGTH): If not optimizing, add two extra bytes length.
7336
7337 Tue Oct 28 15:06:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7338
7339 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Undefine before including
7340 svr4.h.
7341
7342 Mon Oct 27 16:11:52 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7343
7344 * sh.c (machine_dependent_reorg): When -flag_delayed_branches,
7345 put an use_sfunc_addr before each sfunc.
7346 * sh.md (use_sfunc_addr, dummy_jump): New insns.
7347 (casesi): For TARGET_SH2, emit a dummy_jump after LAB.
7348
7349 Tue Oct 21 07:12:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7350
7351 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Don't redefine.
7352
97991933
JM
7353Fri Nov 7 10:22:24 1997 Jason Merrill <jason@yorick.cygnus.com>
7354
7355 * frame.c (add_fdes, count_fdes): Go back to checking pc_begin for
7356 linked once FDEs.
7357
eaf407a5
JL
7358Wed Nov 5 14:26:05 1997 Jeffrey A Law (law@cygnus.com)
7359
7360 * alias.c (find_base_value): Only return the known base value for
7361 pseudo registers.
7362
4f9ca067
JW
7363Wed Nov 5 11:27:14 1997 Jim Wilson <wilson@cygnus.com>
7364
7365 * i386.c (load_pic_register): Call prologue_get_pc_and_set_got.
7366 * i386.md (prologue_set_got, prologue_get_pc): Add UNSPEC_VOLATILE
7367 to pattern.
7368 (prologue_get_pc_and_set_got): New pattern.
7369
f4e31cf5
RH
7370Tue Nov 4 20:36:50 1997 Richard Henderson (rth@cygnus.com)
7371
7372 * alpha.c (summarize_insn): Handle ASM_OPERANDS. Don't recurse
7373 for SUBREG, just fall through.
7374
7375 * alpha.c (alpha_handle_trap_shadows): Init sum.defd to zero.
7376
7377 * alpha.md (attr trap): Make TRAP_YES non-zero for sanity's sake.
7378
f754c4a1
JL
7379Tue Nov 4 18:49:42 1997 Jeffrey A Law (law@cygnus.com)
7380
3ed18aeb
JL
7381 * fixincludes: Fix "hypot" prototype in NeXT math.h.
7382
3fe40e05
JL
7383 * Makefile.in (USE_ALLOCA): Always include alloca.o.
7384 (USE_HOST_ALLOCA): Likewise.
7385
f754c4a1
JL
7386 * rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
7387 and LABEL_REFS fields.
7388 * rtl.h (LABEL_REFS): Update.
7389
ab00eb0a
JW
7390Tue Nov 4 16:55:11 1997 Jim Wilson <wilson@cygnus.com>
7391
ff3467a9
JW
7392 * combine.c (try_combine): When setting elim_i2, check whether newi2pat
7393 sets i2dest. When calling distribute_notes for i3dest_killed, pass
7394 elim_i2 and elim_i1. When setting elim_i1, check if newi2pat
7395 sets i1dest.
7396
4911814e
JW
7397 * mips.md (insv, extzv, extv): Add change_address call.
7398 (movsi_ulw, movsi_usw): Change QImode to BLKmode in pattern.
7399
474eff88
JW
7400 * integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
7401
3feffdfe
JW
7402 * reload.c (find_reloads, case 'm' and 'o'): Reject HIGH constants.
7403
ab00eb0a
JW
7404 * mips.c (mips_expand_epilogue): Emit blockage insn before call to
7405 save_restore_insns if no FP and GP will be restored.
7636d567 7406
31c8581d
JW
7407 * dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
7408 Convert CCmode to word_mode before calling GET_MODE_SIZE.
7409
7636d567
JW
7410 * acconfig.h (HAVE_INTTYPES_H): Undef.
7411 * configure.in (inttypes.h): Check for conflicts between sys/types.h
7412 and inttypes.h, and verify that intmax_t is defined.
7413 * config/mips/x-iris (CC, OPT, OLDCC): Comment out.
7414 * config/mips/x-iris3: Likewise.
7415
73774bc7
JL
7416Tue Nov 4 16:07:15 1997 Jeffrey A Law (law@cygnus.com)
7417
7418 * alias.c (find_base_value): When copying arguments, return the
7419 tenative value for a hard register.
7420
645ebf37
DE
7421Tue Nov 4 13:40:35 1997 Doug Evans <devans@canuck.cygnus.com>
7422
7423 * c-lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
7424 (yylex): Record wide strings using target endianness, not host.
7425
f7620587
JL
7426Tue Nov 4 13:13:12 1997 Jeffrey A Law (law@cygnus.com)
7427
7428 * mn10200.h (ASM_OUTPUT_BSS): Delete.
7429 (ASM_OUTPUT_ALIGNED_BSS): New macro
7430 * mn10300.h (ASM_OUTPUT_BSS): Delete.
7431 (ASM_OUTPUT_ALIGNED_BSS): New macro.
7432 * v850.h (ASM_OUTPUT_BSS): Delete.
7433 (ASM_OUTPUT_ALIGNED_BSS): New macro.
7434
1686f1a2 7435Tue Nov 4 00:55:48 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
b57062ca 7436
1686f1a2
R
7437 * profile.c (branch_prob): Insert an insn after a NOTE_INSN_SETJMP.
7438
f6857708
JL
7439Mon Nov 3 14:36:50 1997 Jeffrey A Law (law@cygnus.com)
7440
7441 * configure.in (sco5): Use cpio to install header files.
7442
e566af04
MH
7443Sun Nov 2 23:31:43 1997 Manfred Hollstein <manfred@s-direktnet.de>
7444
7445 * aclocal.m4 (conftestdata_from, conftestdata_to): Names shortened to
7446 14 char length.
7447 * configure: Rebuild.
7448
cbd44549
RL
7449Sun Nov 2 19:44:00 1997 Robert Lipe (robertl@dgii.com)
7450
7451 * i386/sco5.h: enable -gstabs once again.
7452
56636818
JL
7453Sun Nov 2 19:27:21 1997 Jeffrey A Law (law@cygnus.com)
7454
7455 * arm.c (output_move_double): Allocate 3 entries in otherops array.
7456
9ad8a5f0
MS
7457Sat Nov 1 21:43:00 1997 Mike Stump (mrs@wrs.com)
7458
7459 * except.c (expand_ex_region_start_for_decl): Emit EH_REGION_BEG
7460 notes for sjlj exceptions too.
7461 (expand_eh_region_end): Similarly for EH_REGION_END notes.
7462 (exception_optimize): Optimize EH regions for sjlj exceptions too.
7463 * final.c (final_scan_insn): Don't output labels for EH REGION
7464 notes if doing sjlj exceptions.
7465
f8671389
JL
7466Sat Nov 1 19:15:28 1997 Jeffrey A Law (law@cygnus.com)
7467
8072f69c
JL
7468 * alias.c (init_alias_analysis): Handle -fno-alias-check when
7469 optimizing correctly.
7470
6cad9e32
JL
7471 * expr.c (expand_builtin_setjmp): Don't emit a SETJMP note
7472 or set current_function_calls_setjmp anymore.
7473
f8671389
JL
7474 * flow.c (find_basic_blocks): If we delete the label for an
7475 exception handler, remove it from the EH label list and remove
7476 the EH_BEGIN/EH_END notes for that EH region.
7477
a886ae74
JM
7478Sat Nov 1 16:44:49 1997 Jason Merrill (jason@cygnus.com)
7479
7480 * flow.c (find_basic_blocks): Generate correct flow control
7481 information when exception handling notes are present.
7482
c2c85462
JL
7483Sat Nov 1 13:42:19 1997 Jeffrey A Law (law@cygnus.com)
7484
7485 * dwarf2out.c (output_call_frame_info): Fix length argument
7486 to ASM_OUTPUT_ASCII.
7487 (output_die, output_pubnames, output_line_info): Likewise.
7488
8c316ae2
JL
7489Fri Oct 31 07:10:09 1997 Jeffrey A Law (law@cygnus.com)
7490
27ca375a
JL
7491 * version.c: Bump for snapshot.
7492
8d4e65a6
JL
7493 * dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_ASCII to
7494 output ASCII by default. Only use ASM_OUTPUT_DWARF_STRING if
7495 flag_debug_asm is on.
7496 (output_die, output_pubnames, output_line_info): Likewise.
7497
ec907dd8
JL
7498 * alias.c (init_alias_analysis): Add struct_value_incoming_rtx
7499 and static_chain_rtx into the potential base values array if
7500 they are registers.
7501
7502 * alias.c (new_reg_base_value): New array of potential base values.
7503 (unique_id): Now file scoped static.
7504 (find_base_value, case REG): Return the value in reg_base_value
7505 array for the REG if it exists. Else, return the value from
7506 new_reg_base_value if copying args and REG is a hard register.
7507 (find_base_value, case PLUS): If either operand of the PLUS is
7508 a REG, try to get its base value. Handle base + index and
7509 index + base.
7510 (record_set): Use new_reg_base_value instead of reg_base_value.
7511 (init_alias_analysis): Allocate space for new_reg_base_value too.
7512 Rework code to iterate over the insns propagating base value
7513 information until nothing changes.
7514
8c316ae2
JL
7515 * global.c (global_alloc): Free the conflict matrix after
7516 reload has finished.
7517
6874c264
JM
7518Fri Oct 31 01:45:31 1997 Jason Merrill <jason@yorick.cygnus.com>
7519
7520 * libgcc2.c (L_eh): Define __eh_pc.
7521 Replace __eh_type with generic pointer __eh_info.
7522
59fe8c2c
R
7523Fri Oct 31 00:34:55 1996 J"orn Rennecke <amylaar@cygnus.co.uk>
7524
7525 * expr.c (expand_increment): When enqueing a postincrement for a MEM,
7526 use copy_to_reg if address is not a general_operand.
7527
d1271ded
R
7528Fri Oct 31 00:16:55 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7529
7530 * profile.c (output_func_start_profiler): Clear flag_inline_functions
7531 for the duration of the call to rest_of_compilation.
7532
ac52b80b
DE
7533Thu Oct 30 14:40:10 1997 Doug Evans <devans@canuck.cygnus.com>
7534
7535 * configure.in (sparc-*-elf*): Use sparc/elf.h, sparc/t-elf.
7536 Set extra_parts.
7537 (sparc*-*-*): Recognize --with-cpu=v9.
7538 * sparc/elf.h: New file.
7539 * sparc/t-elf: New file.
7540
f8912297
JL
7541Thu Oct 30 13:26:12 1997 Jeffrey A Law (law@cygnus.com)
7542
7543 * mn10300.c (const_8bit_operand): New function.
7544 (mask_ok_for_mem_btst): New funtion.
7545 * mn10300.md (btst patterns with mem operands): Use new functions
7546 to avoid creating btst instructions with invalid operands.
7547
05ef204d
MM
7548Wed Oct 29 16:57:19 1997 Michael Meissner <meissner@cygnus.com>
7549
7550 * rs6000/xm-sysv4.h: Include xm-linux.h instead of xm-svr4.h if we
7551 are running on PowerPC Linux.
7552
feecabdf
GK
7553Wed Oct 29 13:10:11 1997 Gavin Koch <gavin@cygnus.com>
7554
7555 * config/mips/elf64.h (PREFERRED_DEBUGGING_TYPE): Only define
7556 if not previously defined.
7557
de957303
DE
7558Tue Oct 28 23:55:27 1997 Doug Evans (devans@cygnus.com)
7559
7560 * function.c (assign_parms): Correct mode of stack_parm if
7561 entry_parm underwent a mode conversion.
7562
ba3b3878
BK
75631997-10-28 Brendan Kehoe <brendan@lisa.cygnus.com>
7564
7565 * global.c (global_alloc): Use xmalloc instead of alloca for
7566 CONFLICTS, since max_allocno * allocno_row_words alone can be more
7567 than 2.5Mb sometimes.
7568
d540ae2c
RH
7569Tue Oct 28 15:29:15 1997 Richard Henderson <rth@cygnus.com>
7570
7571 * reload1.c (eliminate_regs [SET]): If [SUBREG] widened the mode of
7572 DEST for the spill, adjust mode of SRC to compensate.
7573
42f4929d
RH
7574Tue Oct 28 14:36:45 1997 Richard Henderson <rth@cygnus.com>
7575
7576 * alpha.md (reload_inqi): Check for MEM before strict_memory_address_p,
7577 since any_memory_operand() allows pseudos during reload.
7578 (reload_inhi, reload_outqi, reload_outhi): Likewise.
7579
08417478
JW
7580Tue Oct 28 11:53:14 1997 Jim Wilson <wilson@cygnus.com>
7581
7582 * m68k.md (btst patterns): Add 5200 support.
7583
750e8348
TM
7584Tue Oct 28 11:58:40 1997 Toon Moene <toon@moene.indiv.nluug.nl>
7585
7586 * fold-const.c (fold): For ((a * C1) / C3) or (((a * C1) + C2) / C3)
7587 optimizations, look inside dividend to determine if the expression
7588 can be simplified by using EXACT_DIV_EXPR.
7589
ede19932
JM
7590Tue Oct 28 10:19:01 1997 Jason Merrill <jason@yorick.cygnus.com>
7591
7592 From Brendan:
7593 * dwarf2out.c (output_call_frame_info): Use l1 instead of ".".
7594
66d91cb9
RH
7595Tue Oct 28 00:32:14 1997 Richard Henderson <rth@cygnus.com>
7596
7597 * alpha.c (summarize_insn [SUBREG]): Propogate SET.
7598
4f3f5e9f
RH
7599Mon Oct 27 23:59:26 1997 Richard Henderson <rth@cygnus.com>
7600
7601 * alpha.c (alpha_handle_trap_shadows): Don't call get_attr_trap
7602 on a CLOBBER.
7603
f3352b9e
RH
7604Mon Oct 27 21:25:20 1997 Richard Henderson <rth@cygnus.com>
7605
7606 * alpha.md (movqi, movhi): Make sure new insns created during reload
7607 won't need reloading themselves.
7608 (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Likewise.
7609
0cecc190
JL
7610Mon Oct 27 16:11:10 1997 Jeffrey A Law (law@cygnus.com)
7611
7612 * mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Disable reg+reg.
7613
a09ba5a2
RH
7614Sun Oct 26 13:50:44 1997 Richard Henderson <rth@cygnus.com>
7615
7616 * alpha.c (alpha_sa_mask [VMS]): Don't include $26 in the mask.
7617 Patch from Klaus Kaempf <kkaempf@progis.de>.
7618
7581a30f
JW
7619Sun Oct 26 13:31:47 1997 Jim Wilson (wilson@cygnus.com)
7620
7621 * expr.c (expand_expr, case INDIRECT_REF): Optimize a reference
7622 to an element in a constant string.
7623
d84e64d4
JM
7624Sun Oct 26 11:41:49 1997 Jason Merrill <jason@yorick.cygnus.com>
7625
7626 * dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32
7627 bit PC-relative offset. The exception range table pointer is now in
7628 the CIE.
7629 * frame.c (dwarf_cie, dwarf_fde): Rename CIE_pointer to CIE_delta.
7630 (count_fdes, add_fdes, get_cie): Adjust.
7631 (cie_info, extract_cie_info, __frame_state_for): Adjust eh_ptr uses.
7632
7633 From H.J. Lu:
7634 * frame.c (count_fdes, add_fdes): Skip linked once FDE entries.
7635
96286722
RH
7636Sun Oct 26 11:52:01 1997 Richard Henderson <rth@cygnus.com>
7637
7638 * alias.c (memrefs_conflict_p): Treat arg_pointer_rtx just
7639 like stack_pointer_rtx.
7640
e85988b5
MH
7641Sun Oct 26 11:32:16 1997 Manfred Hollstein <manfred@s-direktnet.de>
7642
361e618f
MH
7643 * Makefile.in (bootstrap-lean): Combined with `normal' bootstrap
7644 targets using "$@" to provide support for similar but not identical
7645 targets without having to duplicate code.
7646 (bootstrap4): New goal.
7647
e85988b5
MH
7648 * Makefile.in (compare, compare-lean, compare3): Combined to one
7649 ruleset determining actions to be performed via $@.
7650 (compare4, compare4-lean): New targets.
7651 (gnucompare, gnucompare3): Combined to one ruleset determining
7652 actions to be performed via $@. Also, note which files failed
7653 the comparison test in .bad_compare.
7654 (gnucompare-lean, gnucompare3-lean, gnucompare4-lean): New targets.
7655
91585c63
TM
7656Sun Oct 26 10:06:11 1997 Toon Moene <toon@moene.indiv.nluug.nl>
7657
7658 * fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
7659 if the dividend is a multiple of the divisor.
7660
da0af5a5
JL
7661Sun Oct 26 09:21:40 1997 Jeffrey A Law (law@cygnus.com)
7662
7337c67f
JL
7663 * Makefile.in (LIBGCC2_CFLAGS): Add -fexceptions.
7664
adb9effb 7665 * alias.c (find_base_term): Handle PRE_INC, PRE_DEC, POST_INC,
6d849a2a 7666 and POS_DEC.
6d849a2a
JL
7667
7668 * alias.c (true_dependence): Fix typo.
7669
6d6d0fa0
JL
7670 * toplev.c (flag_rerun_loop_opt): New variable.
7671 (f_options): Handle -frerun-loop-opt.
7672 (rest_of_compilation): If -frerun-loop-opt, then run the loop
7673 optimizer twice.
7674 (main): Enable -frerun-loop-opt by default for -O2 or greater.
7675
da0af5a5
JL
7676 * loop.c (simplify_giv_expr): Adding two invariants results
7677 in an invariant.
7678
ca0f2220
RH
7679Sun Oct 26 09:15:15 1997 Richard Henderson <rth@cygnus.com>
7680
b57062ca 7681 * expr.c (get_inner_reference): Remove the array bias after
ca0f2220
RH
7682 converting the index to Pmode.
7683
a6f7ba17
JL
7684Sat Oct 25 12:20:58 1997 Jeffrey A Law (law@cygnus.com)
7685
7686 * mn10300.h (TARGET_SWITCHES): Add -mmult-bug and -mno-mult-bug.
7687 (TARGET_MULT_BUG): Define.
7688 (TARGET_DEFAULT): Default to TARGET_MULT_BUG.
7689 * mn10300.md (mulsi3): Handle TARGET_MULT_BUG.
7690
17ad8a3b
JL
7691Fri Oct 24 17:40:34 1997 Jeffrey A Law (law@cygnus.com)
7692
7693 * mn10200.c (indirect_memory_operand): Delete unused function.
7694 * mn10200.h (EXTRA_CONSTRAINT): Handle 'R'.
7695 * mn10200.md (bset, bclr insns): Handle output in a reg too.
7696
e16b49d3
RH
7697Fri Oct 24 15:54:57 1997 Richard Henderson <rth@cygnus.com>
7698
7699 * alpha.md (call patterns): Revert Oct 16 change; if we are to elide
7700 the callee's ldgp, we must do it ourselves, and we use the jsr tag
7701 for more than scheduling.
7702
27f65411
DE
7703Fri Oct 24 13:23:04 1997 Doug Evans <devans@canuck.cygnus.com>
7704
7705 * sparc/sparc.h (ASM_SPEC): Delete asm_arch.
7706
e9ad4573
JL
7707Fri Oct 24 13:19:40 1997 Jeffrey A Law (law@cygnus.com)
7708
7709 * mn10300.c (symbolic_operand, legitimize_address): New functions.
7710 * mn10300.h (LEGITIMIZE_ADDRESS): Call legitimize_address.
7711 (GO_IF_LEGITIMATE_ADDRESS): Don't allow base + symbolic.
7712
66724f0a
JL
7713Thu Oct 23 09:35:12 1997 Jeffrey A Law (law@cygnus.com)
7714
7715 * version.c: Bump for snapshot.
7716
c401498b
R
7717Thu Oct 23 08:03:59 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7718
7719 * dbxout.c (dbxout_start_new_source_file): Use output_quoted_string
7720 for FILENAME.
7721
b22b9b3e
JL
7722Wed Oct 22 00:34:12 1997 Jeffrey A Law (law@cygnus.com)
7723
56bf1fd9
JL
7724 * toplev.c (flag_exceptions): Default value is 2.
7725 (compile_file): If flag_exceptions still has the value 2, then
7726 set it to 0.
7727
a04232e5
JL
7728 * rs6000.c (struct machine_function): Add pic_offset_table_rtx.
7729 (rs6000_save_machine_status): Save pic_offset_table_rtx.
7730 (rs6000_restore_machine_status: Restore pic_offset_table_rtx.
7731
0bd83abd
JL
7732 * local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions
7733 are shared.
7734
b22b9b3e
JL
7735 * rs6000.md (*movsi_got_internal_mem): New pattern.
7736 (*movsi_got_internal_mem splitter): New define_split.
7737
c1e385db
JW
7738Tue Oct 21 18:14:03 1997 Jim Wilson <wilson@cygnus.com>
7739
7740 * obstack.h (obstack_empty_p): Fix spurious space after backslash.
7741
1a986152
GK
7742Tue Oct 21 18:34:01 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
7743
7744 * rs6000.c: Avoid creating a stack frame under SYSV ABI if we
7745 only need to save LR.
7746
5d29a95f
JL
7747Tue Oct 21 10:06:40 1997 Jeffrey A Law (law@cygnus.com)
7748
c6ee9150
JL
7749 * mn10300.md (movqi, movhi): Avoid using address registers as
7750 destinations unless absolutely necessary.
7751
d5255ba2
JL
7752 * mn10200.c (expand_prologue): Fix typo.
7753
9d2128b8
JL
7754 * mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed
7755 addresses.
7756 * mn10200.md (neghi2): Provide an alternative which works if
7757 the input and output register are the same.
7758
576e5acc
JL
7759 * mn10300.c (print_operand): Handle 'S'.
7760 * mn10300.md (ashlsi3, lshrsi3, ashrsi3): Use %S for
7761 shift amount in last alternative
7762
5d29a95f
JL
7763 * mn10300.c (expand_epilogue): Rework to handle register restores
7764 in "ret" and "retf" instructions correctly.
7765
3bf1b082
JW
7766Mon Oct 20 16:47:08 1997 Jim Wilson <wilson@cygnus.com>
7767
7768 * expmed.c (extract_bit_field): Don't make flag_force_mem disable
7769 extzv for memory operands.
7770
7771 * cse.c (simplify_ternary_operation, case IF_THEN_ELSE): Collapse
7772 redundant conditional moves to single operand.
7773
ddbd8d36
NC
7774Mon Oct 20 15:30:26 1997 Nick Clifton <nickc@cygnus.com>
7775
7776 * v850.h: Move define of __v850__ from CPP_PREDEFINES
7777 to CPP_SPEC.
b57062ca 7778
ddbd8d36
NC
7779 * xm-v850.h: Use __v850 rather than __v850__ to
7780 identify v850 port.
7781
a944a4eb
JW
7782Mon Oct 20 14:15:02 1997 Jim Wilson <wilson@cygnus.com>
7783
7784 * mips/mips.c (compute_frame_size): Not a leaf function if
7785 profile_flag set.
7786
2d5b6dea
GK
7787Mon Oct 20 14:16:38 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
7788
7789 * rs6000/t-ppccomm: Use -msdata=none for crtstuff.
7790
f0a9fa6c
DE
7791Mon Oct 20 12:28:17 1997 Doug Evans <devans@canuck.cygnus.com>
7792
7793 * sparc/sparc.h (SPARC_V9,SPARC_ARCH64): Delete.
7794 (DEFAULT_ARCH32_P): New macro.
7795 (TARGET_ARCH{32,64}): Allow compile time or runtime selection.
7796 (enum cmodel): Declare.
7797 (sparc_cmodel_string,sparc_cmodel): Declare.
7798 (SPARC_DEFAULT_CMODEL): Provide default.
7799 (TARGET_{MEDLOW,MEDANY}): Renamed to TARGET_CM_{MEDLOW,MEDANY}.
7800 (TARGET_FULLANY): Deleted.
7801 (TARGET_CM_MEDMID): New macro.
7802 (CPP_CPU_DEFAULT_SPEC): Renamed from CPP_DEFAULT_SPEC.
7803 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
7804 (CPP_PREDEFINES): Take out stuff now handled by %(cpp_arch).
7805 (CPP_SPEC): Rewrite.
7806 (CPP_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
7807 (CPP_{ENDIAN,SUBTARGET}_SPEC): New macros.
7808 (ASM_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
7809 (ASM_SPEC): Add %(asm_arch).
7810 (EXTRA_SPECS): Rename cpp_default to cpp_cpu_default.
7811 Rename asm_default to asm_cpu_default.
7812 Add cpp_arch32, cpp_arch64, cpp_arch_default, cpp_arch, cpp_endian,
7813 cpp_subtarget, asm_arch32, asm_arch64, asm_arch_default, asm_arch.
7814 (NO_BUILTIN_{PTRDIFF,SIZE}_TYPE): Define ifdef SPARC_BI_ARCH.
7815 ({PTRDIFF,SIZE}_TYPE): Provide 32 and 64 bit values.
7816 (MASK_INT64,MASK_LONG64): Delete.
7817 (MASK_ARCH64): Renamed to MASK_64BIT.
7818 (MASK_{MEDLOW,MEDANY,FULLANY,CODE_MODEL}): Delete.
7819 (EMBMEDANY_BASE_REG): Renamed from MEDANY_BASE_REG.
7820 (TARGET_SWITCHES): Always provide 64 bit options.
7821 (ARCH64_SWITCHES): Delete.
7822 (TARGET_OPTIONS): New option -mcmodel=.
7823 (INT_TYPE_SIZE): Always 32.
7824 (MAX_LONG_TYPE_SIZE): Define ifdef SPARC_BI_ARCH.
7825 (INIT_EXPANDERS): sparc64_init_expanders renamed to sparc_init_....
7826 (FUNCTION_{,BLOCK_}PROFILER): Delete TARGET_EMBMEDANY support.
7827 (PRINT_OPERAND_PUNCT_VALID_P): Add '_'.
7828 * sparc/linux-aout.h (CPP_PREDEFINES): Take out stuff handled by
7829 CPP_SPEC.
7830 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
7831 * sparc/linux.h: Likewise.
7832 * sparc/linux64.h (SPARC_V9,SPARC_ARCH64): Delete.
7833 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
7834 (TARGET_DEFAULT): Delete MASK_LONG64, MASK_MEDANY, add MASK_64BIT.
7835 (SPARC_DEFAULT_CMODEL): Define.
7836 (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
7837 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
7838 (LONG_DOUBLE_TYPE_SIZE): Define.
7839 (ASM_SPEC): Add %(asm_arch).
7840 * sparc/sol2.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
7841 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
7842 (TARGET_CPU_DEFAULT): Add ultrasparc case.
7843 * sparc/sp64-aout.h (SPARC_V9,SPARC_ARCH64): Delete.
7844 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT.
7845 (SPARC_DEFAULT_CMODEL): Define.
7846 * sparc/sp64-elf.h (SPARC_V9,SPARC_ARCH64): Delete.
7847 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT. Delete
7848 MASK_LONG64, MASK_MEDANY.
7849 (SPARC_DEFAULT_CMODEL): Define.
7850 (CPP_PREDEFINES): Delete.
7851 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
7852 (ASM_SPEC): Add %(asm_arch).
7853 (LONG_DOUBLE_TYPE_SIZE): Define.
7854 (DWARF2_DEBUGGING_INFO): Define.
7855 * sparc/splet.h (CPP_SPEC): Delete.
7856 * sparc/sysv4.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
7857 (FUNCTION_BLOCK_PROFILER): Delete TARGET_EMBMEDANY support.
7858 (BLOCK_PROFILER): Likewise.
7859 * sparc/sparc.c (sparc_cmodel_string,sparc_cmodel): New globals.
7860 (sparc_override_options): Handle code model selection.
7861 (sparc_init_expanders): Renamed from sparc64_init_expanders.
7862 * sparc/sparc.md: TARGET_<code_model> renamed to TARGET_CM_....
7863 TARGET_MEDANY renamed to TARGET_CM_EMBMEDANY.
7864 (sethi_di_embmedany_{data,text}): Renamed from sethi_di_medany_....
7865 (sethi_di_fullany): Delete.
7866
a3b0df2d
KK
7867Mon Oct 20 02:00:18 1997 Klaus Kaempf <kkaempf@progis.de>
7868 Jeff Law <law@cygnus.com>
7869 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7870
3a133c72
KK
7871 * alpha/vms.h (DIVSI3_LIBCALL): OTS$ functions are upper case.
7872 (DIVDI3_LIBCALL, UDIVSI3_LIBCALL, UDIVDI3_LIBVALL): Likewise.
7873 (MODSI3_LIBCALL, MODDI3_LIBCALL): Likewise.
7874 (UMODSI3_LIBCALL, UMODDI3_LIBCALL): Likewise.
7875 * alpha/alpha.md (arg_home): Likewise.
7876
a3b0df2d
KK
7877 * alpha/alpha.c (vmskrunch): Delete
7878 * alpha/vms.h (ENCODE_SECTION_INFO, ASM_DECLARE_FUNCTION_NAME): Delete.
7879 * alpha.c (output_prolog, VMS): Use alloca for entry_label and don't
7880 truncate to 64 characters.
7881
7882 * make-l2.com: Support openVMS/Alpha.
7883
7884 * vmsconfig.com: Fix to work on openVMS/Alpha and openVMS/VAX.
7885
7d4f2e6c
R
7886Sun Oct 19 19:00:35 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
7887
7888 * longlong.h (count_leading_zeros): Add missing casts to USItype.
7889
decd44ac
JL
7890Sun Oct 19 18:44:06 1997 Jeffrey A Law (law@cygnus.com)
7891
7892 * i386/bsd386.h (ASM_COMMENT_START): Define.
7893
d1485032
JM
7894Sat Oct 18 13:47:15 1997 Jason Merrill <jason@yorick.cygnus.com>
7895
7896 * tree.c (restore_tree_status): Also free up temporary storage
7897 when we finish a toplevel function.
7898 (dump_tree_statistics): Print stats for backend obstacks.
7899
6bd35f86
DE
7900Sat Oct 18 12:47:31 1997 Doug Evans <dje@canuck.cygnus.com>
7901
7902 * expr.c (use_group_regs): Don't call use_reg for MEMs.
7903
d1485032
JM
7904Sat Oct 18 09:49:46 1997 Jason Merrill <jason@yorick.cygnus.com>
7905
7906 * libgcc2.c (__throw): Don't copy the return address.
7907 * dwarf2out.c (expand_builtin_dwarf_reg_size): Ignore return address.
7908
7909 * except.c (exceptions_via_longjmp): Initialize to 2 (uninitialized).
7910 * toplev.c (main): Initialize exceptions_via_longjmp.
7911
7912 * tree.c: Add extra_inline_obstacks.
7913 (save_tree_status): Use it.
7914 (restore_tree_status): If this is a toplevel inline obstack and we
7915 didn't want to save anything on it, recycle it.
7916 (print_inline_obstack_statistics): New fn.
b57062ca 7917 * function.c (pop_function_context_from): Pass context to
d1485032
JM
7918 restore_tree_status.
7919 * obstack.h (obstack_empty_p): New macro.
7920
6981eacf
JL
7921Sat Oct 18 00:43:59 1997 Jeffrey A Law (law@cygnus.com)
7922
7923 * i386/freebsd.h (ASM_COMMENT_START): Fix.
7924
1933ec7e
JW
7925Fri Oct 17 23:48:52 1997 Jim Wilson (wilson@cygnus.com)
7926
7927 * v850.c (ep_memory_offset): New function.
7928 (ep_memory_operand, substitute_ep_register, v850_reorg): Call it.
7929
7930 * v850.h (CONST_OK_FOR_*): Add and correct comments.
7931 (CONSTANT_ADDRESS_P): Add comment.
7932 (EXTRA_CONSTRAINT): Define 'U'.
7933 * v850.md: Add comments on bit field instructions.
7934 (addsi3): Delete &r/r/r alternative. Add r/r/U alternative.
b57062ca 7935 (lshrsi3): Use N not J constraint.
1933ec7e
JW
7936
7937 * v850.md (v850_tst1+1): New define_split for tst1 instruction.
7938
7939 * v850.c (reg_or_0_operand): Call register_operand.
7940 (reg_or_int5_operand): Likewise.
7941 * v850.h (MASK_BIG_SWITCH, TARGET_BIG_SWITCH): New macros.
7942 (TARGET_SWITCHES): Add "big-switch".
7943 (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE,
7944 ASM_OUTPUT_BEFORE_BASE_LABEL): Add support for TARGET_BIG_SWITCH.
7945 (CASE_DROPS_THROUGH): Comment out.
7946 (CASE_VECTOR_PC_RELATIVE, JUMP_TABLES_IN_TEXT_SECTION): Define.
7947 * v850.md (cmpsi): Delete compare mode.
7948 (casesi): New pattern.
7949
7950 * v850.h (CONST_OK_FOR_N): Delete redundant compare against zero.
7951 * v850.md (ashlsi3): Use SImode not QImode for shift count.
7952 (lshrsi3): Likewise.
7953
7954 * v850.c (print_operand): Add 'c', 'C', and 'z' support. Delete
7955 unreachable switch statement after 'b' support. Remove "b" from
7956 strings for 'b' support.
7957 * v850.md (branch_normal, branch_invert): Change %b to b%b.
7958
13c2de98
JL
7959Fri Oct 17 23:33:20 1997 Jeffrey A Law (law@cygnus.com)
7960
7961 * Makefile.in (LIBGCC2_CFLAGS): Avoid a backslash then an
7962 empty line if @inhibit_libc@ is empty.
7963
b2167bee
RL
7964Fri Oct 17 23:24:40 1997 Robert Lipe (robertl@dgii.com)
7965
7966 * i386/sco5.h: Let ELF use dwarf2 unwinding. COFF uses sjlj.
7967 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Defined.
7968 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
7969 (DWARF2_UNWIND_INFO): Let this track object file format.
7970 (EXTRA_SECTIONS): Add in_eh.
7971 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Define.
7972 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
7973
bf2a2c6b
DM
7974Fri Oct 17 17:13:42 1997 David S. Miller <davem@tanya.rutgers.edu>
7975
7976 * sparc/linux64.h (LINK_SPEC): Dynamic linker is ld-linux64.so.2.
da2a90f7
DM
7977 * sparc/sparc.h (FUNCTION_PROFILER): Fix format string when
7978 TARGET_MEDANY.
f4f8e370
DE
7979 * sparc/sparc.c (dwarf2out_cfi_label): Extern no longer needed.
7980 (output_double_int): Output DI mode values correctly when
7981 HOST_BITS_PER_WIDE_INT is 64.
9d162eb2
DE
7982 (output_fp_move_quad): If TARGET_V9 and not TARGET_HARD_QUAD, use
7983 fmovd so it works if a quad float ends up in one of the upper 32
7984 float regs.
7e37212e
DM
7985 * sparc/sparc.md (pic_{lo_sum,sethi}_di): New patterns
7986 necessary for PIC support on sparc64.
bf2a2c6b 7987
9ff84e67
DE
7988Fri Oct 17 13:39:56 1997 Doug Evans <dje@canuck.cygnus.com>
7989
7990 * sparc/sp64-elf.h (TARGET_DEFAULT): Delete MASK_STACK_BIAS.
7991 * sparc/sparc.h (PROMOTE_MODE): Promote small ints if arch64.
7992 (PROMOTE_FUNCTION_ARGS,PROMOTE_FUNCTION_RETURN): Define.
7993 (SPARC_FIRST_FP_REG, SPARC_FP_REG_P): New macros.
7994 (SPARC_{OUTGOING,INCOMING}_INT_ARG_FIRST): New macros.
7995 (SPARC_FP_ARG_FIRST): New macro.
7996 (CONDITIONAL_REGISTER_USAGE): All v9 fp regs are volatile now.
7997 (REG_ALLOC_ORDER,REG_LEAF_ALLOC_ORDER): Reorganize fp regs.
7998 (NPARM_REGS): There are 32 fp argument registers now.
7999 (FUNCTION_ARG_REGNO_P): Likewise.
8000 (FIRST_PARM_OFFSET): Update to new v9 abi.
8001 (REG_PARM_STACK_SPACE): Define for arch64.
8002 (enum sparc_arg_class): Delete.
8003 (sparc_arg_count,sparc_n_named_args): Delete.
8004 (struct sparc_args): Redefine and use for arch32 as well as arch64.
8005 (GET_SPARC_ARG_CLASS,ROUND_REG,ROUND_ADVANCE): Delete.
8006 (FUNCTION_ARG_ADVANCE): Rewrite.
8007 (FUNCTION_ARG,FUNCTION_INCOMING_ARG): Rewrite.
8008 (FUNCTION_ARG_{PARTIAL_NREGS,PASS_BY_REFERENCE}): Rewrite.
8009 (FUNCTION_ARG_CALLEE_COPIES): Delete.
8010 (FUNCTION_ARG_{PADDING,BOUNDARY}): Define.
8011 (STRICT_ARGUMENT_NAMING): Define.
8012 (doublemove_string): Declare.
8013 * sparc/sparc.c (sparc_arg_count,sparc_n_named_args): Delete.
8014 (single_move_string): Use GEN_INT, and HOST_WIDE_INT.
8015 (doublemove_string): New function.
8016 (output_move_quad): Clean up some of the arch64 support.
8017 (compute_frame_size): Add REG_PARM_STACK_SPACE if arch64.
8018 Don't add 8 bytes of reserved space if arch64.
8019 (sparc_builtin_saveregs): Combine arch32/arch64 versions.
8020 (init_cumulative_args): New function.
8021 (function_arg_slotno): New static function.
8022 (function_arg,function_arg_partial_nregs): New functions.
8023 (function_arg_{pass_by_reference,advance}): New functions.
8024 (function_arg_padding): New function.
c1215820 8025 * ginclude/va-sparc.h: Rewrite v9 support.
9ff84e67 8026
b8fb2d72
CI
8027Fri Oct 17 12:29:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
8028
f22376c7
CI
8029 * regclass.c (record_address_regs): Look at REG_OK_FOR_{BASE,INDEX}_P
8030 for hard regs to determine base and index registers.
8031
b8fb2d72
CI
8032 * reload.c (debug_reload_to_stream): New function. Specify stream
8033 into which to write debug info.
8034 (debug_reload): Modify to call debug_reload_to_stream with stderr.
8035
b79ee7eb
RH
8036Thu Oct 16 15:07:51 1997 Richard Henderson <rth@cygnus.com>
8037
8038 * combine.c (can_combine_p): Don't combine with an asm whose
8039 output is a hard register.
8040
5c19a356
MS
8041Thu Oct 16 15:43:26 1997 Mike Stump (mrs@wrs.com)
8042
8043 * c-decl.c (start_struct): Ensure that structs with forward
8044 declarations are in fact packed when -fpack-struct is given.
8045
8046 * stor-layout.c (layout_record): Ignore STRUCTURE_SIZE_BOUNDARY if
8047 we are packing a structure. This allows a structure with only
8048 bytes to be aligned on a byte boundary and have no padding on a
8049 m68k.
8050
02bef6da
RK
8051Thu Oct 16 15:17:54 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
8052
8053 * rs6000.h (ROUND_TYPE_ALIGN): Don't blow up if no fields in record.
8054
9ecc37f0
RH
8055Thu Oct 16 11:20:30 1997 Richard Henderson <rth@cygnus.com>
8056
8057 * alpha.c (alpha_return_addr_rtx): New variable.
8058 (alpha_save_machine_status): New; save it.
8059 (alpha_restore_machine_status): New; restore it.
8060 (alpha_init_expanders): New; clear it.
8061 (alpha_return_addr): New; set it.
8062 (alpha_ra_ever_killed): New; if alpha_return_addr_rtx, regs_ever_live
8063 is overly conservative, so search the insns explicitly.
8064 (alpha_sa_mask [VMS]): Check alpha_ra_ever_killed.
8065 (alpha_sa_size [VMS && !VMS]): Likewise.
8066 * alpha.h (RETURN_ADDR_RTX): Call alpha_return_addr.
8067 (INIT_EXPANDERS): New definition.
b57062ca 8068
9ecc37f0
RH
8069 * alpha.c: Move REG_PV, REG_RA somewhere more visible in the file.
8070 (output_prolog [!VMS]): Use them.
8071
8072 * alpha.c (output_prolog [!VMS]): Move gp detection to ...
b57062ca 8073 (alpha_does_function_need_gp): ... a new function. Refine the
9ecc37f0
RH
8074 CALL_INSN test to just TYPE_JSR.
8075 * alpha.md (most call insns): Fix some jsr/ibr type transpositions.
8076
bda2ffef
JL
8077Thu Oct 16 09:36:47 1997 Jeffrey A Law (law@cygnus.com)
8078
8079 * version.c: Bump for snapshot.
8080
96b63cd7
RK
8081Wed Oct 15 21:38:18 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
8082
8083 * pa.c (move_operand): Respect -mdisable-indexing.
8084 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
8085
f192bf8b
DE
8086Wed Oct 15 21:34:45 1997 David Edelsohn <edelsohn@mhpcc.edu>
8087
8088 * rs6000.md (udivsi3, divsi3): Split into MQ and non-MQ cases for
8089 PPC601.
8090 (umulsidi3,umulsi3_highpart): Ditto.
8091 (smulsi3_highpart_no_mq): Add !TARGET_POWER.
8092
2ea844d3
RH
8093Wed Oct 15 18:21:46 1997 Richard Henderson <rth@cygnus.com>
8094
8095 * alpha.c (final_prescan_insn): Gut, remove and transform to ...
8096 (alpha_handle_trap_shadows): ... a new function. Handle the entire
8097 function in one go. Emit RTL for trapb, instead of printf directly.
8098 (alpha_reorg): New function. Call alpha_handle_trap_shadows.
8099 (trap_pending): Kill global variable.
8100 (output_epilog): Don't call final_prescan_insn.
8101 (struct shadow_summary): Elide $31 and $f31; now it fits in a word.
8102 * alpha.h (FINAL_PRESCAN_INSN): Remove.
8103 (MACHINE_DEPENENT_REORG): Define.
8104 * alpha.md (jsr patterns with trapb): Stupid and useless. Kill.
8105 (trapb): New insn.
8106
74835ed8
RH
8107Wed Oct 15 18:16:05 1997 Richard Henderson <rth@cygnus.com>
8108
8109 Tune Haifa scheduler for Alpha:
8110 * alpha.h (ISSUE_RATE): Define.
8111 * alpha.c (alpha_adjust_cost): Handle EV5 mult delay; don't apply
8112 EV4 adjustments to EV5.
8113 * alpha.md: Remove all scaling from function unit delays. Rework
8114 EV5 function units to match the CPU.
8115 (umuldi3_highpart): EV5 added the IMULH insn class.
8116
cdc0de30
JL
8117Wed Oct 15 17:42:41 1997 Jeffrey A Law (law@cygnus.com)
8118
8119 * pa.c (following_call): Fail if the CALL_INSN is an indirect
8120 call.
8121
041c97f2
MM
8122Tue Oct 14 12:01:00 1997 Mark Mitchell <mmitchell@usa.net>
8123
8124 * cplus-dem.c (demangle_signature): Don't look for return types on
8125 constructors. Handle member template constructors.
8126
f0632762
JM
8127Tue Oct 14 11:30:29 1997 Jason Merrill <jason@yorick.cygnus.com>
8128
8129 * tree.c (expr_tree_cons, build_expr_list, expralloc): New fns.
22ef8a13 8130 * tree.h: Declare them.
f0632762 8131
dec88383
DE
8132Fri Oct 10 13:46:56 1997 Doug Evans <dje@canuck.cygnus.com>
8133
8134 * configure.in: Handle --with-newlib.
8135 * Makefile.in (LIBGCC2_CFLAGS): Add @inhibit_libc@.
8136
8137 * sparc/t-sp64 (LIBGCC2_CFLAGS): Delete.
8138
0e1f3f5e
JL
8139Wed Oct 8 14:37:44 1997 Jeffrey A Law (law@cygnus.com)
8140
8141 * config/ptx4.h: Fix typo.
8142
12504ae0
JL
8143Wed Oct 8 08:57:20 1997 Jeffrey A Law (law@cygnus.com)
8144
8145 * version.c: Bump for snapshot.
8146
5643c767
MH
8147Tue Oct 7 16:27:34 1997 Manfred Hollstein <manfred@s-direktnet.de>
8148
8149 * aclocal.m4: Substitute INSTALL.
8150 * configure: Re-built.
8151
aa0c1401
JL
8152Tue Oct 7 15:37:35 1997 Jeffrey A Law (law@cygnus.com)
8153
f644bd14
JL
8154 * integrate.c (save_for_inline_copying): Avoid undefined pointer
8155 operations.
8156 (expand_inline_function): Likewise.
8157
aa0c1401
JL
8158 * dwarf2out.c (output_call_frame_info): Reinstate last change
8159 using flag_debug_asm check instead of flag_verbose_asm.
8160
6c2df6c9
JW
8161Tue Oct 7 12:57:26 1997 Jim Wilson <wilson@cygnus.com>
8162
8163 * dwarf2out.c (output_call_frame_info): Remove last change.
8164
13ab2b83
AS
81651997-10-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
8166
8167 * frame.c (__frame_state_for): Execute the FDE insns until the
8168 current pc value is strictly bigger than the target pc value.
8169
066c2fea
JM
8170Tue Oct 7 11:00:42 1997 Jason Merrill <jason@yorick.cygnus.com>
8171
b57062ca 8172 * regclass.c (init_reg_modes): If we can't find a mode for the
066c2fea
JM
8173 register, use the previous one.
8174
2f308fec
RH
8175Tue Oct 7 10:55:34 1997 Richard Henderson <rth@cygnus.com>
8176
8177 * haifa-sched.c (print_block_visualization): Call fprintf directly,
8178 don't sprintf through an alloca'ed buffer.
8179
43984e29
TK
8180Tue Oct 7 10:52:29 1997 Thomas Koenig (ig25@rz.uni-karlsruhe.de)
8181
8182 * reload.c (decompose): Always initialize val.base.
8183
e9e30253
MH
8184Tue Oct 7 10:19:26 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
8185
8186 * m68k/mot3300.h (ASM_OUTPUT_ALIGN): Accept any alignment
8187 instead of aborting.
8188 * dwarf2out.c (output_call_frame_info): Call app_enable and
8189 app_disable to let GNU as accept the generated comments.
8190
496651db
MM
8191Tue Oct 7 11:41:21 1997 Michael Meissner <meissner@cygnus.com>
8192
8193 * tree.h (get_file_function_name): Add declaration.
8194 * dwarf2out.c (output_call_frame_info): No need to cast
8195 get_file_function_name call anymore.
8196 * profile.c (toplevel): Remove get_file_function_name
8197 declaration.
8198 * c-lang.c (finish_file): Ditto.
8199
e6347456
CS
8200Tue Oct 7 10:01:45 1997 Chip Salzenberg <chip@rio.atlantic.net>
8201
8202 * Makefile.in (program_transform_name): Let autoconf substitute
8203 the correct value.
8204
1447b516
JL
8205Tue Oct 7 09:54:35 1997 Jeffrey A Law (law@cygnus.com)
8206
8207 * haifa-sched.c (schedule_block): If the first real insn in a
8208 block has any special notes attached to it, remove them.
8209
1a42ead7
RH
8210Tue Oct 7 09:48:51 1997 Richard Henderson <rth@cygnus.com>
8211
8212 * alpha.h (FLOAT_STORE_FLAG_VALUE): It's 2.0 not 0.5.
8213
4b6140f1
MH
8214Mon Oct 6 12:47:32 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
8215
8216 * m88k.c (m88k_begin_prologue): Remove superfluous backslash.
8217
dc84d7bc
JL
8218Mon Oct 6 12:04:24 1997 Jeffrey A Law (law@cygnus.com)
8219
8220 * Makefile.in (check-g77): New test target.
8221 (CHECK-TARGETS): Add check-g77.
8222
c0da11c4
JM
8223Fri Oct 3 11:56:36 1997 Jason Merrill <jason@yorick.cygnus.com>
8224
8225 * toplev.c (rest_of_compilation): Defer all non-nested inlines.
8226
d8d64559
MM
8227Fri Oct 3 15:49:27 1997 Michael Meissner <meissner@cygnus.com>
8228
8229 * flow.c (print_rtl_with_bb): Cast alloca return value for
8230 in_bb_p.
8231
e414ab29
RH
8232Thu Oct 2 21:15:03 1997 Richard Henderson <rth@cygnus.com>
8233
b57062ca 8234 * i386.h (RETURN_ADDR_RTX): New definition that works for
e414ab29
RH
8235 __builtin_return_address(0) and -fomit-frame-pointer.
8236
15039abe
JW
8237Wed Oct 1 13:43:53 1997 Jim Wilson <wilson@cygnus.com>
8238
8239 Bring over from FSF.
8240 Tue Aug 5 16:10:45 1997 Jason Merrill <jason@yorick.cygnus.com>
8241
b57062ca 8242 * mips.c (function_arg): Handle passing a struct
15039abe
JW
8243 containing a double in a DFmode register without the PARALLEL.
8244
281de624
ILT
8245Wed Oct 1 11:13:25 1997 Ian Lance Taylor <ian@cygnus.com>
8246
d8d64559 8247 * pexecute.c: Use spawn if __CYGWIN32__.
281de624 8248
d8d64559 8249 * pexecute.c: Include "config.h" first, as per autoconf manual
281de624
ILT
8250 (from Paul Eggert <eggert@twinsun.com>).
8251
3cbdd5fc
PDM
8252Wed Oct 1 01:44:36 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
8253
8254 * m68k/x-mot3300 (XCFLAGS): Disable as's long/short jump
8255 optimisation for f/expr.o and f/stb.o.
8256
135d84b8
JL
8257Tue Sep 30 23:48:57 1997 Jeffrey A Law (law@cygnus.com)
8258
8259 * cse.c (this_insn_cc0_mode): Initialize.
8260
55d89719
TK
8261Tue Sep 30 23:09:40 1997 Thomas Koenig <ig25@mvmap66.ciw.uni-karlsruhe.de>
8262
d3878e49
TK
8263 * cccp.c (expand_to_temp_buffer): Initialize all members of obuf.
8264
8265 * haifa-sched.c (get_block_head_tail): Remove unneeded initialization.
55d89719 8266
e9d0757e
RH
8267Tue Sep 30 23:06:43 1997 Richard Henderson <rth@cygnus.com>
8268
8269 * alpha.md (beq): For registers and ints 0-255, use cmpeq+bne, since
8270 that pair will dual-issue on the 21164 and plus+beq won't.
8271 (bne): Likewise for cmpeq+beq.
8272
3f34faec
JW
8273Tue Sep 30 16:07:58 1997 Jim Wilson <wilson@cygnus.com>
8274
8275 * except.c (find_exception_handler_labels): Correct argument to free.
8276
3226dac5 8277Tue Sep 30 11:00:00 1997 Brendan Kehoe <brendan@lisa.cygnus.com>
988cea7d
BK
8278
8279 * except.c (find_exception_handler_labels): Free LABELS when we're
8280 done.
8281
3a6eabfa
JL
8282Mon Sep 29 14:04:35 1997 Jeffrey A Law (law@cygnus.com)
8283
8284 * version.c: Bump for snapshot.
8285
974c50f9
JM
8286Mon Sep 29 10:51:53 1997 Jason Merrill <jason@yorick.cygnus.com>
8287
8288 * flow.c (find_basic_blocks): Mark calls as potentially jumping
8289 to the EH labels.
8290
9b16d2c4
JL
8291Mon Sep 29 09:58:06 1997 Jeffrey A Law (law@cygnus.com)
8292
8293 * configure.in: Substitute for "install" too.
8294 * configure: Rebuilt.
8295
b1e3ddfd
AJ
8296Mon Sep 29 00:38:42 1997 Aaron Jackson <jackson@negril.msrce.howard.edu>
8297
8298 * Makefile.in (bootstrap-lean, compare-lean): New targets.
8299
6662a38d
RH
8300Mon Sep 29 00:18:16 1997 Richard Henderson (rth@cygnus.com)
8301
c02f035f
RH
8302 * alias.c (base_alias_check): Two symbols can conflict if they
8303 are accessed via AND.
8304 (memrefs_conflict_p): Likewise.
8305
7a14fdc5
RH
8306 * alpha.h (SETUP_INCOMING_VARARGS): Emit a blockage insn
8307 after flushing argument registers to the stack.
8308
6662a38d
RH
8309 * Makefile.in (mostlyclean): Remove .regmove files.
8310
f3447109
JM
8311Sun Sep 28 18:59:58 1997 Jason Merrill <jason@yorick.cygnus.com>
8312
8313 * libgcc2.c (__throw): Fix thinko.
8314
37f6b6bf
MM
8315Sun Sep 28 12:00:52 1997 Mark Mitchell <mmitchell@usa.net>
8316
8317 * cplus-dem.c (demangle_template): Add new parameter. Handle new
8318 template-function mangling.
8319 (consume_count_with_underscores): New function.
8320 (demangle_signature): Handle new name-mangling scheme.
8321
adfc539e
PDM
8322Sun Sep 28 01:55:04 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
8323
8324 * flow.c (print_rtl_with_bb): Cast alloca return values for variables
8325 start and end.
8326
92cbe4d2
JL
8327Sun Sep 28 01:05:16 1997 Jeffrey A Law (law@cygnus.com)
8328
8329 * frame.c: Remove last change.
8330 * dwarf2.h: Remove last change.
8331 * tree.h: Add declarations of DWARF2 unwind info support
8332 functions.
8333
2f3ca9e7
JM
8334Sat Sep 27 11:02:38 1997 Jason Merrill <jason@yorick.cygnus.com>
8335
8336 * c-decl.c (init_decl_processing): Add __builtin_dwarf_reg_size.
8337 * tree.h (built_in_function): Likewise.
8338 * expr.c (expand_builtin): Likewise.
8339 * except.h: Likewise.
8340 * dwarf2out.c (expand_builtin_dwarf_reg_size): New fn.
8341 * libgcc2.c (copy_reg): New fn.
8342 (__throw): Use it.
8343
407cb092
PE
8344Fri Sep 26 08:54:59 1997 Paul Eggert <eggert@twinsun.com>
8345
8346 * c-typeck.c (build_binary_op): Warn about comparing signed vs
8347 unsigned if -W is specified and -Wno-sign-compare is not.
8348 * c-decl.c (warn_sign_compare): Initialize to -1.
8349 (c_decode_option): -Wall no longer implies -Wsign-compare.
8350
3ba10494
AS
8351Fri Sep 26 09:00:13 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
8352
a7cc7f29
AS
8353 * frame.c: Include gansidecl.h for PROTO.
8354 * dwarf2out.c: Move inclusion of dwarf2.h down so that PROTO is
8355 defined. Don't declare dwarf2out_cfi_label here.
8356 * dwarf2.h: Add declarations of DWARF2 unwind info support
8357 functions.
8358 * m68k.c: Include dwarf2.h.
8359 (output_function_prologue): Add dwarf2 support.
8360 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM): New macros.
8361 (INCOMING_FRAME_SP_OFFSET): Likewise.
8362
3ba10494
AS
8363 * integrate.c (expand_inline_function): Make sure there is at
8364 least one insn that can be used as an insertion point.
8365
c5cec899
JM
8366Wed Sep 24 21:34:06 1997 Jason Merrill <jason@yorick.cygnus.com>
8367
8368 * dwarf2out.c: s/flag_verbose_asm/flag_debug_asm/
8369
e166cb18
JL
8370Wed Sep 24 22:05:30 1997 Jeffrey A Law (law@cygnus.com)
8371
8372 * version.c: Bump for snapshot.
8373
01a94cba
DE
8374Wed Sep 24 17:36:23 1997 Doug Evans <dje@canuck.cygnus.com>
8375
8376 Bring over from FSF.
8377
8378 Wed Sep 24 19:17:08 1997 Doug Evans <dje@cygnus.com>
8379
8380 * sparc/sparc.md (get_pc_via_call): Renamed from get_pc_sp32.
8381 (get_pc_via_rdpc): Renamed from get_pc_sp64.
8382 * sparc/sparc.c (finalize_pic): Update call to gen_get_pc_via_call.
8383
8384 Wed Sep 24 18:38:22 1997 David S. Miller <davem@tanya.rutgers.edu>
8385
8386 * sparc/sparc.h (ASM_CPU_SPEC): Pass -Av9a for v8plus, ultrasparc.
8387 (TARGET_OPTIONS): Add -malign-loops=, -malign-jumps=,
8388 -malign-functions=.
8389 (sparc_align_{loops,jumps,funcs}_string): Declare.
8390 (sparc_align_{loops,jumps,funcs}): Declare.
8391 (DEFAULT_SPARC_ALIGN_FUNCS): New macro.
8392 (FUNCTION_BOUNDARY): Use sparc_align_funcs.
8393 (STACK_BIAS): Define.
8394 (SPARC_SIMM*_P): Cast to unsigned HOST_WIDE_INT first, then perform
8395 test.
8396 (SPARC_SETHI_P): New macro.
8397 (CONST_OK_FOR_LETTER_P): Use it.
8398 (ASM_OUTPUT_ALIGN_CODE): Define.
8399 (ASM_OUTPUT_LOOP_ALIGN): Define.
8400 * sparc/sparc.c (sparc_align_{loops,jumps,funcs}_string): New globals.
8401 (sparc_align_{loops,jumps,funcs}): New globals.
8402 (sparc_override_options): Handle -malign-loops=, -malign-jumps=,
8403 -malign-functions=.
8404 (move_operand): Use SPARC_SETHI_P.
8405 (arith_double_operand): Cast to unsigned HOST_WIDE_INT first, then
8406 perform test.
8407 (arith11_double_operand): Likewise.
8408 (arith10_double_operand): Likewise.
8409 (finalize_pic): Finish sparc64 support.
8410 (emit_move_sequence): Use SPARC_SETHI_P. Simplify low part of
8411 64 bit constants if able.
8412 (output_fp_move_quad): Don't use fmovq unless TARGET_HARD_QUAD.
8413 (sparc_builtin_saveregs, sparc64 case): Don't save fp regs if
8414 ! TARGET_FPU.
8415 * sparc/sparc.md (*): Use GEN_INT instead of gen_rtx.
8416 (get_pc_sp32): Use for sparc64 as well.
8417 (lo_sum_di_sp{32,64}): Fix handling on 64 bit hosts.
8418 (sethi_di_sp64_const): Likewise.
8419 (movtf_cc_sp64): Check TARGET_HARD_QUAD.
8420 (cmp_zero_extract_sp64): Use unsigned HOST_WIDE_INT in cast.
8421 (ashlsi3, ashldi3, ashrsi3, ashrdi3, lshrsi3, lshrdi3): Likewise.
8422
8423 Tue Sep 23 19:02:46 1997 Doug Evans <dje@cygnus.com>
8424
8425 * sparc/linux-aout.h (COMMENT_BEGIN): Delete.
8426 * sparc/linux.h (COMMENT_BEGIN): Likewise.
8427 * sparc/linux64.h (COMMENT_BEGIN): Likewise.
8428
8429 Tue Sep 23 14:48:18 1997 David S. Miller <davem@tanya.rutgers.edu>
8430
8431 Add sparc64 linux support.
8432 * configure.in (sparc64-*-linux*): Recognize. Add sparc/xm-sparc.h
8433 to xm_file list on 32-bit sparc-linux.
8434 * sparc/xm-sp64.h: New file.
8435 * sparc/linux64.h: New file.
8436 * sparc/xm-linux.h: Include some standard headers if not inhibit_libc.
8437 Don't include xm-sparc.h.
8438 * config/xm-linux.h (HAVE_PUTENV, HAVE_ATEXIT): Define.
8439 * glimits.h (LONG_MAX): Handle sparc64.
8440
8441 Sat Sep 20 03:07:54 1997 Doug Evans <dje@cygnus.com>
8442
8443 * sparc/sysv4.h (ASM_COMMENT_START): Delete.
8444 * sparc.h (ASM_COMMENT_START): Define.
8445 * sparc.c (output_function_prologue): Use it.
8446 (sparc_flat_output_function_{epi,pro}logue): Likewise.
8447
8448 Wed Sep 17 15:04:19 1997 Doug Evans <dje@cygnus.com>
8449
8450 * sparc/sysv4.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Delete,
8451 use sparc.h's copies.
8452 * sparc/sparc.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Print
8453 ascii form as well.
8454
8455 Mon Sep 8 08:45:19 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
8456
8457 * sparc.c (dwarf2out_cfi_label): Add declaration.
8458 (save_regs, output_function_prologue): Remove cast for it.
8459 (sparc_flat_{save_restore,output_function_prologue): Likewise.
8460 ({save,restore}_regs): No longer inline.
8461
ce2157a1
JL
8462Tue Sep 23 12:34:51 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
8463
8464 * fold-const.c (make_range): Correctly handle cases of converting
8465 from unsigned to signed type.
8466
8467Tue Sep 23 12:34:51 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
8468
8469 * fold-const.c (merge_ranges): Make sure that if one range is subset
8470 of another, it will always be the second range. Correct (+,-) case to
8471 account for this.
8472
c5cec899
JM
8473Tue Sep 23 08:32:51 1997 Jason Merrill <jason@yorick.cygnus.com>
8474
8475 * final.c (final_end_function): Also do dwarf2 thing if
8476 DWARF2_DEBUGGING_INFO.
8477 (final_start_function): Likewise.
8478
c107334d
DM
8479Tue Sep 23 01:15:50 1997 David S. Miller <davem@tanya.rutgers.edu>
8480
e13a25d5
DM
8481 * expmed.c (expand_divmod): If compute_mode is not the same as
8482 mode, handle the case where convert_modes() causes op1 to no
8483 longer be a CONST_INT.
8484
c107334d
DM
8485 * reorg.c (dbr_schedule): At end of this pass, add REG_BR_PRED
8486 note holding get_jump_flags() calculation to all JUMP_INSNs.
8487 * rtl.h (enum reg_note): New note types REG_BR_PRED and REG_SAVE_AREA.
8488 * rtl.c (reg_note_name): Add new note types.
8489
8d7532d9
JL
8490Tue Sep 23 00:59:54 1997 Jeffrey A Law (law@cygnus.com)
8491
0774afd7 8492 * rtlanal.c (computed_jump_p): Fix typo in last change.
8d7532d9 8493
7019d00e
L
8494Tue Sep 23 00:42:44 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
8495
8496 * loop.c (indirect_jump_in_function_p): Return 0
8497 by default.
8498
b9dfb357
JL
8499Tue Sep 23 00:33:55 1997 Jeffrey A Law (law@cygnus.com)
8500
8501 * rs6000/xm-rs6000.h: Fix thinko in last change.
8502 * rs6000/xm-sysv4.h: Likewise.
8503
4b7e467b
JW
8504Mon Sep 22 19:33:53 1997 Jim Wilson <wilson@cygnus.com>
8505
8506 * mips.c (save_restore_insns): Only set RTX_FRAME_RELATED_P if store_p.
8507
8c8e6faa
JL
8508Mon Sep 22 14:41:00 1997 Jeffrey A Law (law@cygnus.com)
8509
8510 * reg-stack.c (find_blocks): Fix thinko in last change.
8511
078e983e
AS
85121997-09-21 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
8513
8514 * m68k.c (output_function_prologue): Add dwarf2 support.
8515
8516 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM,
8517 INCOMING_FRAME_SP_OFFSET): New definitions.
b57062ca 8518
d7027667
DM
8519Mon Sep 22 11:36:42 1997 David S. Miller <davem@tanya.rutgers.edu>
8520
9524f769
DM
8521 * combine.c (try_combine): Use NULL_RTX instead of '0' where
8522 appropriate in calls to gen_rtx().
8523 * cse.c (cse_main): Likewise.
8524 * emit-rtl.c (gen_label_rtx): Likewise.
8525 * expr.c (init_expr_once): Likewise.
8526 * haifa-sched.c (flush_pending_lists, sched_analyze_insn,
8527 sched_analyze, init_rgn_data_dependences,
8528 compute_block_backward_dependences): Likewise.
8529 * sched.c (schedule_insns): Likewise.
8530 * varasm.c (immed_double_const): Likewise.
8531
d7027667
DM
8532 * sparc.h (INCOMING_FRAME_SP_OFFSET): Define to
8533 SPARC_STACK_BIAS for sake of dwarf2 on sparc64.
8534
fbf8b71c
KJ
8535Mon Sep 22 11:21:33 1997 J. Kean Johnston <jkj@sco.com>
8536
8537 * i386/sco5.h: Make ELF default file format and add -mcoff/-melf..
8538 (MULTILIB_DEFAULTS): Define.
8539 (ASM_SPEC, CPP_SPEC): Handle -mcoff.
8540 (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Likewise.
8541 (LIBGCC_SPEC): Likewise.
8542 (MASK_COFF, TARGET_COFF, TARGET_ELF): Define.
8543 (SUBTARGET_SWITCHES): Add -mcoff and -melf.
8544 * i386/t-sco5 (CRTSTUFF_T_CFLAGS): Add -fPIC.
8545 (CRTSTUFF_T_CFLAGS_S): Tweak for COFF.
8546 (EXTRA_PARTS, TAROUTOPTS): Delete.
8547 (libgcc1-elf, libgcc2-elf, libgcc-elf targets): Delete.
8548 (MULTILIB_OPTIONS): Define.
8549 (MULTILIB_DIRNAMES, MULTILIB_EXCEPTIONS): Likewise.
8550 (MULTILIB_MATCHE, MULTILIB_EXTRA_OPTS): Likewise.
8551
c14a951f
JL
8552Mon Sep 22 02:10:43 1997 Jeffrey A Law (law@cygnus.com)
8553
8554 * version.c: Bump for snapshot.
8555
7014927a
JL
8556Sun Sep 21 17:45:45 1997 Jeffrey A Law (law@cygnus.com)
8557
37aa45a2
JL
8558 * loop.c (loop_number): Delete function. Change all references
8559 to use uid_loop_num array.
8560 * loop.h (loop_number): Delete declaration.
8561 * unroll.c (unroll_loop): Change "loop_number" references to
8562 use uid_loop_num instead.
8563
b47404d1
JL
8564 * loop.c (loop_unroll_factor): Move outside #ifdef HAIFA
8565 conditional.
8566 (loop_unroll_iter): Remove unused variable and all references.
8567 (loop_optimize): Always allocate and clear space for loop_unroll_factor.
8568 (insert_bct): Fix minor formatting problems.
8569 * loop.h (loop_unroll_factor): Move decl outside #ifdef HAIFA.
8570 (loop_unroll_iter): Removed unused decl.
8571 * unroll.c (unroll_loop): Remove code to set loop_unroll_iter.
8572 Always record the unrolling factor.
8573
cb3bb2a7
JL
8574 * cse.c (simplify_relational_operation): Set h0u just like h0s.
8575 Similarly for h1u and h1s.
8576
d5ff3a2e 8577 * flow.c (jmp_uses_reg_or_mem): Deleted unused function.
2a1777af
JL
8578 (find_basic_blocks): Use computed_jump_p to determine if a
8579 particular JUMP_INSN is a computed jump.
8580 * reg-stack.c (find_blocks): Use computed_jump_p to determine
8581 if a particular JUMP_INSN is a computed jump.
8582 * rtlanal.c (jmp_uses_reg_or_mem): New function.
8583 (computed_jump_p): Likewise.
8584 * rtl.h (computed_jump_p): Declare.
8585 * genattrtab.c (pc_rtx): Define and initialize.
8586 * loop.c (loop_optimize): Always determine if the current
8587 function has a computed jump.
8588 (indirect_jump_in_function_p): Use computed_jump_p to determine
8589 if a particular JUMP_INSN is a computed jump.
8590
7014927a
JL
8591 * loop.c (fix_bct_param): Delete unused function.
8592 (check_bct_param): Likewise.
8593
6d53d7c2
JM
8594Sat Sep 20 16:22:06 1997 Jason Merrill <jason@yorick.cygnus.com>
8595
8596 * frame.c (__deregister_frame): Check properly for initialized object.
8597
5a5e9503 8598Fri Sep 19 20:51:03 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
71e4fbe6
L
8599
8600 * alpha/linux.h (HANDLE_SYSV_PRAGMA): Defined.
8601
272299b9
R
8602Fri Sep 19 18:53:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
8603
cc5e1642
R
8604 * jump.c (thread_jumps): check can_reverse_comparison_p before
8605 threading a reversed-condition jump.
8606
272299b9
R
8607 * sched.c (update_flow_info): Don't pass SCRATCH to dead_or_set_p.
8608 * haifa-sched.c (update_flow_info): Likewise.
8609
18511014
JL
8610Thu Sep 18 21:13:40 1997 Jeffrey A Law (law@cygnus.com)
8611
e6493727
JL
8612 * Makefile.in (BOOT_CFLAGS): Use -O2.
8613
1e467e19
JL
8614 * configure.in (strtoul, bsearch): Have autoconf check for these
8615 functions.
8616 * configure, config.in: Rebuilt.
8617
18511014
JL
8618 * m68k/xm-mot3300.h (alloca): Properly declare if __STDC__.
8619 * mips/mips.h (alloca): Likewise.
8620 * rs6000/xm-rs6000.h (alloca): Likewise.
8621 * rs6000/xm-sysv4.h: Likewise.
8622
6020d360
JM
8623Thu Sep 18 14:22:22 1997 Jason Merrill <jason@yorick.cygnus.com>
8624
8625 * final.c (final_scan_insn): Hand BARRIERs off to the dwarf2 code.
8626 * dwarf2out.c (dwarf2out_frame_debug): Pass the whole insn along.
8627 (dwarf2out_stack_adjust): A BARRIER resets the args space to 0.
8628
8629 * except.c (end_eh_unwinder): Subtract 1 from return address.
8630 * libgcc2.c (__throw): Likewise.
8631 (find_exception_handler): Don't change PC here. Compare end with >.
8632
b24bcfb3 8633Thu Sep 18 10:43:07 1997 Nick Clifton <nickc@cygnus.com>
b57062ca 8634
b24bcfb3
NC
8635 * v850.c (compute_register_save_size): Correct register
8636 number.
8637 * v850.md (save_interrupt, return_interrupt): Correct
8638 register number.
8639 * v850/lib1funcs.asm (save_interrupt): Correct register number.
8640 (return_interrupt): Use stack pointer, not element pointer.
8641
93cf819d
BK
86421997-09-18 Brendan Kehoe <brendan@lisa.cygnus.com>
8643
8644 * configure.in, configure: Make sure to create the stage* and include
8645 symbolic links in each subdirectory.
8646
f0501149
JL
8647Thu Sep 18 01:47:06 1997 Jeffrey A Law (law@cygnus.com)
8648
8649 * pa.md (reload_peepholes): Don't allow addresses with side
8650 effects for the memory operand.
8651
4f870c04
JM
8652Wed Sep 17 18:19:53 1997 Jason Merrill <jason@yorick.cygnus.com>
8653
8654 * libgcc2.c (find_exception_handler): Subtract one from our PC when
8655 looking for a handler, to avoid hitting the beginning of the next
8656 region.
8657
8658 * except.c (expand_builtin_set_return_addr_reg): Use force_operand.
8659
4eb66248
JL
8660Wed Sep 17 18:33:59 1997 Jeffrey A Law (law@cygnus.com)
8661
8662 * mips/abi64.h (LONG_MAX_SPEC): Define.
8663 * mips.h (LONG_MAX_SPEC): Define.
8664 (CPP_SPEC): Include long_max_spec.
8665 (EXTRA_SPECS): Include long_max_spec.
8666
44158507
JL
8667Wed Sep 17 14:11:38 1997 Jeffrey A Law (law@cygnus.com)
8668
8669 * v850.c (construct_save_jarl): Fix thinko in last change.
8670
bf520cd9
JL
8671Wed Sep 17 09:53:07 1997 Jeffrey A Law (law@cygnus.com)
8672
8673 * version.c: Bump for snapshot.
8674
255fe733
JM
8675Tue Sep 16 14:22:36 1997 Jason Merrill <jason@yorick.cygnus.com>
8676
c0727e2a
JM
8677 * libgcc2.c (find_exception_handler): Not found is -1.
8678
255fe733
JM
8679 * integrate.c (expand_inline_function): Move expand_start_bindings
8680 after expanding the arguments.
8681
21002281
JW
8682Tue Sep 16 11:13:46 1997 Jim Wilson <wilson@cygnus.com>
8683
8684 * expr.c (expand_expr): Remove previous incorrect change.
8685 If target and slot has no DECL_RTL, then call mark_addressable
8686 again for the slot after we give it RTL.
8687
e693cc28 8688Tue Sep 16 09:18:52 1997 Jason Merrill (jason@cygnus.com)
f633220c 8689
e693cc28
UD
8690 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
8691 again for the slot after we give it RTL.
f633220c 8692
145870b5
NC
8693Tue Sep 16 00:13:20 1997 Nick Clifton <nickc@cygnus.com>
8694
84e75068 8695 * v850.c (register_is_ok_for_epilogue,
145870b5
NC
8696 pattern_is_ok_for_epilogue, construct_restore_jr,
8697 pattern_is_ok_for_prologue, construct_save_jarl): New functions.
8698
84e75068 8699 * v850.h (pattern_is_ok_for_prologue,
145870b5
NC
8700 pattern_is_ok_for_epilogue, register_is_ok_for_epilogue): New
8701 predicates.
8702
84e75068 8703 * v850.md: Replace prologue and epilogue patterns with a
145870b5
NC
8704 match_parallel pattern.
8705
76143254
JL
8706Mon Sep 15 22:53:01 1997 Jeffrey A Law (law@cygnus.com)
8707
8708 * aclocal.m4: Add replacement for AC_PROG_INSTALL.
8709 * configure.in: Use EGCS_PROG_INSTALL.
8710
4401bf24
JL
8711Mon Sep 15 22:40:55 1997 Jim Wilson (wilson@cygnus.com)
8712
8713 * dwarf2out.c (gen_subprogram_die): Handle redefinition of an
8714 extern inline function.
8715
8716Mon Sep 15 22:40:55 1997 Richard Henderson (rth@cygnus.com)
8717
8718 * dwarf2out.c (reg_loc_descriptor): Fix prototype.
8719 (concat_loc_descriptor): New function.
8720 (loc_descriptor): Call it.
8721 (add_AT_location_description): Also elide the descriptor if both
8722 halves of a CONCAT are pseudos.
8723 (add_location_or_const_value_attribute): Recognize CONCAT too.
8724
0d24ff5d
RH
8725Mon Sep 15 15:24:00 1997 Richard Henderson <rth@cygnus.com>
8726
4bb43724
RH
8727 * alpha.md (movdi): Handle CONST_DOUBLE for TARGET_BUILD_CONSTANTS.
8728
0d24ff5d
RH
8729 * alpha/alpha.c (output_prolog): New variable sa_reg. Use it for
8730 out-or-range reg_offset.
8731 (output_epilog): Likewise.
8732
05ef8897
JL
8733Mon Sep 15 15:39:26 1997 Jeffrey A Law (law@cygnus.com)
8734
8735 * cse.c (simplify_relational_operation): If MODE specifies a
8736 mode wider than HOST_WIDE_INT, then the high word of a CONST_INT
8737 is derived from the sign bit of the low word.
8738
ca55abae
JM
8739Mon Sep 15 11:43:38 1997 Jason Merrill <jason@yorick.cygnus.com>
8740
8741 Support dwarf2 unwinding on PUSH_ROUNDING targets like the x86.
8742
8743 * dwarf2.h: Add DW_CFA_GNU_args_size.
8744 * frame.c (execute_cfa_insn): Likewise.
8745 * dwarf2out.c (dwarf_cfi_name, output_cfi): Likewise.
8746 (dwarf2out_args_size, dwarf2out_stack_adjust): New fns.
8747 (dwarf2out_frame_debug): If this isn't a prologue or epilogue
8748 insn, hand it off to dwarf2out_stack_adjust.
8749 (dwarf2out_begin_prologue): Initialize args_size.
8750 * frame.h (struct frame_state): Add args_size.
8751 * libgcc2.c (__throw): Use args_size.
8752 * final.c (final_scan_insn): If we push args, hand off all insns
8753 to dwarf2out_frame_debug.
8754 * defaults.h (DWARF2_UNWIND_INFO): OK for !ACCUMULATE_OUTGOING_ARGS.
8755
8756 * dwarf2out.c dwarf2out_frame_debug): Fix typo.
8757 Handle epilogue restore of SP from FP.
b57062ca 8758 * emit-rtl.c (gen_sequence): Still generate a sequence if the
ca55abae
JM
8759 lone insn has RTX_FRAME_RELATED_P set.
8760
8761 * frame.c (extract_cie_info): Handle "e" augmentation.
8762 * dwarf2out.c (ASM_OUTPUT_DWARF_*): Provide definitions in the
8763 absence of UNALIGNED_*_ASM_OP.
8764 (UNALIGNED_*_ASM_OP): Only provide defaults if OBJECT_FORMAT_ELF.
8765 (output_call_frame_info): Use "e" instead of "z" for augmentation.
8766 Don't emit augmentation fields length.
8767 (dwarf2out_do_frame): Move outside of #ifdefs.
8768 * defaults.h (DWARF2_UNWIND_INFO): Don't require unaligned data
8769 opcodes.
8770
8771 * sparc.h (UNALIGNED_INT_ASM_OP et al): Don't define here after all.
8772 * sparc/sysv4.h (UNALIGNED_INT_ASM_OP): Define here.
8773 * sparc/sunos4.h (DWARF2_UNWIND_INFO): Define to 0.
8774 * sparc/sun4gas.h: New file.
8775 * configure.in: Use sun4gas.h if SunOS 4 --with-gnu-as.
8776
b57062ca 8777 * collect2.c (write_c_file_stat, write_c_file_glob): Declare
ca55abae
JM
8778 __register_frame_table and __deregister_frame.
8779
1d77fa53
BK
87801997-09-15 Brendan Kehoe <brendan@cygnus.com>
8781
8782 * except.c (find_exception_handler_labels): Use xmalloc instead of
8783 alloca, since MAX_LABELNO - MIN_LABELNO can be more than 1 million
8784 in some cases.
8785
8be52aaa
JL
8786Sun Sep 14 21:01:23 1997 Jeffrey A Law (law@cygnus.com)
8787
8788 * Makefile.in: Various changes to build info files
8789 in the object tree rather than the source tree.
8790
a3ee3246
JL
8791Sun Sep 14 12:24:30 1997 Jeffrey A Law (law@cygnus.com)
8792
8793 * fixinc.math: New file to fix math.h on some systems.
8794 * configure.in (freebsd, netbsd): Use fixinc.math on these
8795 systems.
8796 * configure: Rebuilt.
8797
124da275
JL
8798Sun Sep 14 11:11:05 1997 Jeffrey A Law (law@cygnus.com)
8799
8800 * regmove.c (regmove_optimize): If we end up moving the
8801 original insn due to lifetime overlaps, make sure to move
8802 REG_NOTES too.
8803
fca9d4b0
MH
8804Sat Sep 13 15:51:11 1997 Manfred Hollstein <manfred@s-direktnet.de>
8805
8806 * Makefile.in (INSTALL_{PROGRAM,DATA}): Use value found by configure.
8807
326ee7a3
JL
8808Sat Sep 13 12:57:26 1997 Jeffrey A Law (law@cygnus.com)
8809
8810 * haifa-sched.c (add_branch_dependences): Make each insn in
8811 a SCHED_GROUP_P block explicitly depend on the previous insn.
8812
ca55abae
JM
8813Fri Sep 12 13:49:58 1997 Jason Merrill <jason@yorick.cygnus.com>
8814
8815 * except.h: Prototype dwarf2 hooks.
8816 * expr.c: Adjust.
8817
5188d2b2
JW
8818Thu Sep 11 17:43:55 1997 Jim Wilson <wilson@cygnus.com>
8819
8820 * configure.in (native_prefix): Delete.
8821 (mips-dec-netbsd): Don't set prefix.
8822 (*linux*): Don't set prefix.
8823
2e384318
FF
8824Thu Sep 11 15:48:32 1997 Fred Fish <fnf@ninemoons.com>
8825
70988851
FF
8826 * protoize.c: Include <varargs.h> only if HAVE_VARARGS_H is
8827 defined. If not defined, include <sys/varargs.h> if
8828 HAVE_SYS_VARARGS_H is defined.
8829 * configure.in: Test for varargs.h and sys/varargs.h.
8830 * configure: Regenerate with autoconf.
8831 * config.in: Regenerate with autoheader.
8832
2e384318
FF
8833 * cpplib.c (quote_string): Cast first arg of sprintf call
8834 from "unsigned char *" to "char *".
8835 (output_line_command): Ditto.
8836 (macroexpand): Ditto.
8837 (do_line): Cast atoi arg from "unsigned char *" to "char *".
8838
3fb2f401
JL
8839Wed Sep 10 21:37:30 1997 Jeffrey A Law (law@cygnus.com)
8840
f2e4e16f
JL
8841 * version.c: Bump for snapshot.
8842
3fb2f401
JL
8843 * Makefile.in (compare): Exit with nonzero status if there
8844 are comparison failures. Note which files failed the
8845 comparison test in .bad_compare.
8846
d26cb668
L
8847Wed Sep 10 17:05:46 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
8848
8849 * config/alpha/elf.h (CPP_PREDEFINES): Remove -D__PIC__ -D__pic__.
8850
ac64120e
JW
8851Wed Sep 10 16:37:28 1997 Fred Fish <fnf@ninemoons.com>
8852
8853 * Makefile.in (LN, LN_S): New macros, use where appropriate.
8854 * aclocal.m4 (GCC_PROG_LN_S, GCC_PROG_LN): New tests.
8855 * configure.in: Use GCC_PROG_LN_S and GCC_PROG_LN.
8856 * configure: Regenerated.
8857
8858Thu Sep 11 11:09:43 1997 Jeffrey A Law (law@cygnus.com)
8859
8860 * loop.c (strength_reduce): Fix typo.
8861
db87ec0b
JW
8862Wed Sep 10 16:01:15 1997 Jim Wilson <wilson@cygnus.com>
8863
8864 * m88k/m88k.c (struct option): Rename to struct options.
8865 * m88k/dolph.h (INITIALIZE_TRAMPOLINE): Delete here.
8866 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE): Delete ifdef and comments.
8867 * libgcc2.c (__enable_execute_stack): Check for __sysV88__ not
8868 __DOLPHIN__ or sysV88.
8869
04395f96
JW
8870Wed Sep 10 14:58:40 1997 Jim Wilson <wilson@cygnus.com>
8871
8872 * emit-rtl.c (gen_lowpart_common): For a SUBREG, add in word when
8873 create new subreg.
8874
becdcf6d
JL
8875Wed Sep 10 15:19:22 1997 Jeffrey A Law (law@cygnus.com)
8876
8877 * config.sub: Accept 'amigados' for backward compatability.
8878
04395f96 8879Wed Sep 10 14:05:08 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
3979dfb8
JW
8880
8881 * Makefile.in (testsuite/site.exp): New target.
8882 (check-gcc, check-g++): Depend on testsuite/site.exp.
8883 Don't stop for failure.
8884
ca55abae
JM
8885Wed Sep 10 12:59:57 1997 Jason Merrill <jason@yorick.cygnus.com>
8886
8887 * expr.c (expand_builtin): Only support __builtin_dwarf_fp_regnum()
8888 if DWARF2_UNWIND_INFO.
8889
8890Wed Sep 10 11:49:20 1997 Jason Merrill <jason@yorick.cygnus.com>
8891
8892 Add support for exception handling using DWARF 2 frame unwind info.
8893 Currently works on SPARC and MIPS, and almost on x86.
b57062ca 8894
ca55abae
JM
8895 * libgcc2.c (get_reg, put_reg, get_return_addr, put_return_addr,
8896 next_stack_level, in_reg_window): Helper fns.
8897 (__throw): Implement for DWARF2_UNWIND_INFO.
8898
8899 * expr.c (expand_builtin): Handle builtins used by __throw.
8900 * tree.h (enum built_in_function): Add builtins used by __throw.
8901 * c-decl.c (init_decl_processing): Declare builtins used by __throw.
8902 * dwarf2out.c (expand_builtin_dwarf_fp_regnum): Used by __throw.
8903 * except.c (expand_builtin_unwind_init): Hook for dwarf2 __throw.
8904 (expand_builtin_extract_return_addr): Likewise.
8905 (expand_builtin_frob_return_addr): Likewise.
8906 (expand_builtin_set_return_addr_reg): Likewise.
8907 (expand_builtin_eh_stub): Likewise.
8908 (expand_builtin_set_eh_regs): Likewise.
8909 (eh_regs): Choose two call-clobbered registers for passing back values.
8910
8911 * frame.c, frame.h: New files for parsing dwarf 2 frame info.
8912 * Makefile.in (LIB2ADD): New variable. Add $(srcdir)/frame.c.
8913 (libgcc2.a): Use it instead of $(LIB2FUNCS_EXTRA) $(LANG_LIB2FUNCS)
8914 (stmp-multilib): Likewise.
8915 ($(T)crtbegin.o, $(T)crtend.o): Add -fno-exceptions.
8916
8917 * except.c: #include "defaults.h".
8918 (exceptions_via_longjmp): Default depends on DWARF2_UNWIND_INFO.
8919 (emit_throw): Don't defeat assemble_external if DWARF2_UNWIND_INFO.
8920 (register_exception_table_p): New fn.
8921 (start_eh_unwinder): Don't do anything if DWARF2_UNWIND_INFO.
8922 (end_eh_unwinder): Likewise.
8923
b57062ca 8924 * crtstuff.c: Wrap .eh_frame section, use EH_FRAME_SECTION_ASM_OP,
ca55abae
JM
8925 call __register_frame and __deregister_frame as needed.
8926 * varasm.c (eh_frame_section): New fn if EH_FRAME_SECTION_ASM_OP.
8927 * dwarf2out.c (EH_FRAME_SECTION): Now a function-like macro. Check
8928 EH_FRAME_SECTION_ASM_OP.
8929 * sparc/sysv4.h (EH_FRAME_SECTION_ASM_OP): Define.
8930 * mips/iris6.h: (EH_FRAME_SECTION_ASM_OP): Define.
8931 (LINK_SPEC): Add __EH_FRAME_BEGIN__ to hidden symbols.
8932
8933 * dwarf2out.c (output_call_frame_info): If no support for
8934 EXCEPTION_SECTION, mark the start of the frame info with a
8935 collectable tag.
8936 * collect2.c (frame_tables): New list.
8937 (is_ctor_dtor): Recognise frame entries.
8938 (scan_prog_file): Likewise.
8939 (main): Pass -fno-exceptions to sub-compile. Also do collection
8940 if there are any frame entries.
8941 (write_c_file_stat): Call __register_frame_table and
8942 __deregister_frame as needed.
8943 (write_c_file_glob): Likewise.
8944
b57062ca 8945 * defaults.h (DWARF2_UNWIND_INFO): Default to 1 if supported.
ca55abae
JM
8946 Also require unaligned reloc support.
8947 * sparc.h (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
8948 UNALIGNED_DOUBLE_INT_ASM_OP): Define here.
8949 * sparc/sysv4.h: Not here.
8950
8951 * toplev.c (compile_file): Call dwarf2out_frame_{init,finish}.
8952 * dwarf2out.c (dwarf2out_init): Don't call dwarf2out_frame_init.
8953 (dwarf2out_finish): Don't call dwarf2out_frame_finish.
8954
8955 * libgcc2.c (L_eh): Reorganize, moving code shared by different
8956 EH implementations to the top.
8957 (find_exception_handler): Split out. Start from 0. Compare against
8958 end with >=.
8959 (__find_first_exception_table_match): Use it.
8960 * except.c (output_exception_table): Don't do anything if there's
8961 no table. Don't output a first entry of zeroes.
8962 (eh_outer_context): Adjust properly.
8963 (add_eh_table_entry): Use xrealloc.
8964 * toplev.c (compile_file): Just call output_exception_table.
8965
8966Wed Sep 10 11:30:36 1997 Jason Merrill <jason@cygnus.com>
8967
8968 * i386.c (ix86_prologue): Add dwarf2 support for !do_rtl case.
8969
8970Wed Sep 10 08:17:10 1997 Torbjorn Granlund <tege@pdc.kth..se>
8971
8972 * except.c (eh_outer_context): Do masking using expand_and.
8973
b4d940a2
JL
8974Wed Sep 10 01:38:30 1997 Doug Evans <dje@cygnus.com>
8975
8976 Add port done awhile ago for the ARC cpu.
8977 * arc/arc.h: New file.
8978 * arc/arc.c: New file.
8979 * arc/arc.md: New file.
8980 * arc/initfini.c: New file.
8981 * arc/lib1funcs.asm: New file.
8982 * arc/t-arc: New file.
8983 * arc/xm-arc.h: New file.
8984 * ginclude/va-arc.h: New file.
8985 * ginclude/stdarg.h: Include va-arc.h ifdef __arc__.
8986 * ginclude/varargs.h: Likewise.
8987 * Makefile.in (USER_H): Add va-arc.h.
8988 * configure.in (arc-*-elf*): Recognize.
8989 * longlong.h: Add ARC support.
8990
8991Wed Sep 10 01:32:54 1997 Jeffrey A Law (law@cygnus.com)
8992
8993 * expr.c (clear_storage): Use CONST0_RTX instead of const0_rtx.
8994 when clearing non-BLKmode data.
8995
10211581
JL
8996Wed Sep 10 00:29:29 1997 Manfred Hollstein <manfred@s-direktnet.de>
8997
9dfc6eba
MH
8998 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE) Define.
8999 * libgcc2.c (__enable_execute_stack): Provide for sysV88 too.
9000
55259219
MH
9001 * xm-m88k.h (USG): Only define if it hasn't already been defined.
9002
9003 * Makefile.in (risky-stage1): Delete gratutious whitespace.
9004
ee291069
MH
9005 * Makefile.in (clean): Delete libgcc1-test.
9006
10211581
JL
9007 * Makefile.in (INSTALL): cd to $(srcdir) before running texinfo.
9008
9009Tue Sep 9 17:07:36 1997 Stan Cox <coxs@dg-rtp.dg.com>
48f0be1b
SC
9010
9011 * m88k.c (m88k_expand_prologue): Set MEM_IN_STRUCT_P of va_list
9012 template.
9013
ca55abae
JM
9014Tue Sep 9 09:50:02 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
9015
9016 * dwarf2out.c (output_call_frame_info): Call named_section.
9017
8f3d79e0
JL
9018Tue Sep 9 09:12:17 1997 Jeffrey A Law (law@cygnus.com)
9019
9020 * haifa-sched.c (print_value): Fix last change.
9021
ca55abae
JM
9022Tue Sep 9 01:30:37 1997 Jason Merrill <jason@yorick.cygnus.com>
9023
9024 * mips.h (DWARF_FRAME_REGNUM): Use the same numbering regardless of
9025 write_symbols.
9026
9027Mon Sep 8 16:32:43 1997 Jason Merrill <jason@yorick.cygnus.com>
9028
9029 * mips.c (function_prologue): Set up the CFA when ABI_32.
9030
9031 * sparc.c (save_regs): Check dwarf2out_do_frame instead of DWARF2_DEBUG
9032 for dwarf2 unwind info.
9033 (output_function_prologue, sparc_flat_output_function_prologue): Same.
9034
9035 * final.c (final_end_function): Check dwarf2out_do_frame instead
9036 of DWARF2_DEBUG for dwarf2 unwind info.
9037 (final_scan_insn): Likewise.
9038 (final_start_function): Likewise. Initialize dwarf2 frame debug here.
9039 (final): Not here.
9040
9041 * expr.c (expand_builtin_return_addr): Only SETUP_FRAME_ADDRESSES if
9042 count > 0.
9043
9044 * varasm.c (exception_section): Check EXCEPTION_SECTION first.
9045
74aca74b
NC
9046Mon Sep 8 15:15:11 1997 Nick Clifton <nickc@cygnus.com>
9047
9048 * v850.h (ASM_SPEC): Pass on target processor.
9049 (CPP_PREDEFINES): Only define if not already specified.
9050 (TARGET_VERSION): Only define if not already specified.
9051 (MASK_CPU, MASK_V850, MASK_DEFAULT): Bits to specify target
9052 processor.
9053 (EXTRA_SWITCHES): Extra entries in the switches array.
9054 (TARGET_DEFAULT): Set default target processor.
9055
c0b04148
JW
9056Mon Sep 8 18:26:35 1997 Jim Wilson <wilson@cygnus.com>
9057
9058 * m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): In MOTOROLA
9059 cases, add %# and %/, and add : to make them into extended asms.
9060
52b7724b
WL
9061Sun Sep 7 23:57:50 1997 Weiwen Liu <liu@hepunix.physics.yale.edu>
9062
9063 * alias.c (init_alias_analysis): Clean up incompatible pointer
9064 type warning in bzero.
9065 * regmove.c (regmove_optimize): Ditto.
9066 * haifa-sched.c (find_rgns): Ditto.
9067
9068 * haifa-sched.c (print_value): Clean up ptr->int cast
9069 warnings.
9070
0c82f6bf
FF
9071Sun Sep 7 23:18:32 1997 Fred Fish <fnf@ninemoons.com>
9072
9073 * INSTALL: Change 'amigados' to 'amigaos' to match current usage.
9074 * install.texi (Configurations): Ditto.
9075 * config.sub: Ditto.
9076
1fed1f51
WL
9077Sun Sep 7 22:56:56 1997 Weiwen Liu (liu@hepvms.physics.yale.edu)
9078
9079 * Makefile.in (sdbout.o): Depend on insn-config.h.
9080
239e68f6
JW
9081Sun Sep 7 18:44:50 1997 Jim Wilson <wilson@cygnus.com>
9082
9083 * m68k/m68k.h (TARGET_SWITCHES): For 68000, 68302, subtract MASK_68881.
9084 For 68303, 68332, cpu32, subtract MASK_68040_ONLY.
9085
267c09ab
JM
9086Sun Sep 7 18:30:46 1997 Jason Merrill <jason@yorick.cygnus.com>
9087
9088 * dwarf2out.c (dwarf2out_frame_debug): Assume that in a PARALLEL
9089 prologue insn, only the first elt is significant.
9090 (output_call_frame_info): For exception handling, always use 4-byte
9091 fields as specified by the dwarf2 spec.
9092 Don't skip trivial FDEs.
9093
db7cafb0
JL
9094Sun Sep 7 14:19:39 1997 Jeffrey A Law (law@cygnus.com)
9095
9096 * version.c: Bump for snapshot.
9097
9098Sun Sep 7 14:17:36 1997 Torbjorn Granlund (tege@pdc.kth.se)
9099
9100 * expmed.c (expand_divmod): Make op1_is_pow2 depend on unsignedp
9101 for negative constants. Promote EXACT_DIV_EXPR to TRUNC_DIV_EXPR
9102 when op1_is_pow2.
9103
9104Sun Sep 7 13:46:46 1997 Jeffrey A Law (law@cygnus.com)
9105
bf520cd9
JL
9106 * final.c (shorten_branches): During first pass, assume worst
9107 possible alignment for ADDR_VEC and ADDR_VEC_DIFF insns.
db7cafb0
JL
9108
9109 * Makefile.in (distclean): Remove various things left around
9110 by running the testsuite.
9111
7ed46111
MH
9112Sun Sep 7 13:16:06 1997 Manfred Hollstein <manfred@s-direktnet.de>
9113
9114 * configure.in (out_file): Emit definition to config.status in order
9115 to have a defined value for configure.lang.
9116 * configure: Re-built.
9117
e41cea70
JJH
9118Sun Sep 7 09:59:08 1997 Jan-Jaap van der Heijden (J.J.vanderHeijden@student.utwente.nl)
9119
bf520cd9 9120 * configure.in: Make symlink to as-new rather than as.new. Similarly
e41cea70
JJH
9121 for ld-new.
9122 * configure: Rebuilt.
9123
1aeb1f6f
JW
9124Fri Sep 5 16:54:55 1997 Jim Wilson <wilson@cygnus.com>
9125
9126 * profile.c (output_func_start_profiler): Set DECL_EXTERNAL to zero.
9127
770a0113
CK
9128Fri Sep 5 16:16:44 1997 Christian Kuehnke <Christian.Kuehnke@arbi.Informatik.Uni-Oldenburg.DE>
9129
9130 * sparc/sparc.md: Add ultrasparc scheduling support.
9131 * sparc/sparc.h (RTX_COSTS): For MULT give v9 a cost of 25 insns.
9132
f5ffa999
PDM
9133Fri Sep 5 14:04:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
9134
9135 * integrate.c (save_for_inline_copying): Use 0, not NULL_PTR,
9136 as initial value for real_label_map.
9137 (copy_for_inline): Likewise.
9138
acceac1a
R
9139Fri Sep 5 13:36:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9140
9141 * sched.c (update_flow_info) When looking if to set found_split_dest
9142 or found_orig_dest, look at all parts of a PARALLEL.
9143 * haifa-sched.c (update_flow_info): Likewise.
9144
f84271d9
JL
9145Fri Sep 5 10:08:44 1997 Jeffrey A Law (law@cygnus.com)
9146
9147 * v850: New directory for v850 port.
9148 * v850/lib1funcs.asm: New file.
9149 * t-v850, v850.c, v850.h, v850.md, xm-v850.h: New files.
9150 * ginclude/va-v850.h: New file.
9151 * ginclude/varargs.h, ginclude/stdarg.h: Include va-mn10200.h.
9152 * configure.in (mn10200-*-*): New target.
9153 * configure: Rebuilt.
9154 * config.sub: Handle v850-elf.
b57062ca 9155 * Makefile.in (USER_H): Add va-mn10200.h.
f84271d9
JL
9156 * invoke.texi: Document v850 stuff.
9157
89cc6098
JW
9158Fri Sep 5 09:37:50 1997 Jim Wilson (wilson@cygnus.com)
9159
04940ba5
JW
9160 * sdbout.c (plain_type_1, case ARRAY_TYPE): Verify that TYPE_DOMAIN
9161 has integer TYPE_{MAX,MIN}_VALUE before using them.
9162
89cc6098
JW
9163 * m68k/m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Add
9164 __HPUX_ASM__ versions.
9165
c74f7db8
JL
9166Fri Sep 5 09:08:44 1997 Jeffrey A Law (law@cygnus.com)
9167
bf520cd9 9168 * install.sh: Delete duplicate install script.
c74f7db8 9169
914ec131
SC
9170Thu Sep 4 23:14:27 1997 Stan Cox (coxs@dg-rtp.dg.com)
9171
9172 * reg-stack.c (subst_stack_regs): Pop the stack register for a
9173 computed goto which sets the same stack register.
9174
9175 * reg-stack.c (compare_for_stack_reg): Swap only if the source and
9176 destination are both on the regstack.
9177 (subst_stack_regs_pat): Put the destination at the top of the regstack.
9178
c1090daa
JW
9179Thu Sep 4 15:02:27 1997 Jim Wilson <wilson@cygnus.com>
9180
d5d1738a
JW
9181 * mips.md (nonlocal_goto_receiver): Define.
9182
f4da7881
JW
9183 * profile.c (output_arc_profiler): Check next_insert_after for non
9184 NULL before deferencing it.
9185
c1090daa
JW
9186 * i386/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define to -fPIC.
9187
da594c94
JL
9188Thu Sep 4 14:51:57 1997 Jeffrey A Law (law@cygnus.com)
9189
9190 * i386.h (CPP_CPU_DEFAULT): Avoid using #elif.
9191
3e28fe44
MM
9192Thu Sep 4 15:01:49 1997 Michael Meissner <meissner@cygnus.com>
9193
9194 * toplev.c (rest_of_compilation): For passes starting with
9195 flow_analysis, use print_rtl_with_bb instead of print_rtl.
9196
9197 * print-rtl.c (print_rtl_single): Print a single rtl value to a
9198 file.
9199
9200 * flow.c (print_rtl_with_bb): Print which insns start and end
9201 basic blocks. For the start of a basic block, also print the live
9202 information.
9203
7053ca72
JW
9204Thu Sep 4 11:51:43 1997 Jim Wilson <wilson@cygnus.com>
9205
417b0fa2
JW
9206 * toplev.c (main): Change #elif to #else/#ifdef
9207
7053ca72
JW
9208 * tlink.c: Include ctype.h.
9209 * ginclude/va-mips.h: Add _VA_MIPS_H_ENUM ifdef/define/endif.
9210
f05a8b25
MM
9211Thu Sep 4 11:17:16 1997 Mikeael Meissner (meissner@cygnus.com)
9212
9213 * bitmap.c: Conditionally include stdlib.h.
bf520cd9 9214 (free): Provide a declaration if NEED_DECLARATION_FREE.
f05a8b25 9215
02d7a569
JS
9216Thu Sep 4 09:58:53 1997 Joel Sherrill (joel@OARcorp.com)
9217
9218 * i960/i960.h: Added default for SUBTARGET_SWITCHES macro.
9219
6030b6af
JW
9220Thu Sep 4 09:53:20 1997 Jim Wilson (wilson@cygnus.com)
9221
9222 * profile.c (output_arc_profiler): Verify next_insert_after is an
9223 INSN before and after skipping a stack pop.
9224
04da53bd
R
9225Thu Sep 4 07:39:19 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9226
9227 * final.c (shorten_branches): Don't count the lengths of deleted
9228 instructions.
9229
780532a4
JL
9230Thu Sep 4 09:43:01 1997 Jeffrey A Law (law@cygnus.com)
9231
9232 * version.c: Bump for snapshot.
9233
22fa5b8a
MM
9234Thu Sep 4 11:04:21 1997 Michael Meissner <meissner@cygnus.com>
9235
9236 * bitmap.h (EXECUTE_IF_AND_IN_BITMAP): New macro, to iterate over
9237 two bitmaps ANDed together.
9238 (bitmap_print): Declare.
9239
9240 * bitmap.c (function_obstack): Don't declare any more.
9241 (bitmap_obstack): Obstack for allocating links from.
9242 (bitmap_obstack_init): New static to say whether to initialize
9243 bitmap_obstack.
9244 (bitmap_element_allocate): Use bitmap_obstack to allocate from.
9245 (bitmap_release_memory): Free all memory allocated from
9246 bitmap_obstack.
9247
9248 * basic-block.h (EXECUTE_IF_AND_IN_REG_SET): New macro, invoke
9249 EXECUTE_IF_AND_IN_BITMAP.
9250
57163df0
JW
9251Wed Sep 3 10:39:42 1997 Jim Wilson <wilson@cygnus.com>
9252
fa8b6024
JW
9253 * alias.c (true_dependence): Address with AND can alias scalars.
9254 (anti_dependence, output_dependence): Likewise.
b57062ca 9255
57163df0
JW
9256 * alias.c (true_dependence): Test x for BLKmode, in addition to mem.
9257
8aa4e786
JS
9258Wed Sep 3 09:28:50 CDT 1997 Joel Sherrill (joel@OARcorp.com)
9259
9260 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h, m68k/rtems.h,
9261 mips/rtems64.h, pa/rtems.h, rs6000/rtems.h, sh/rtems.h,
9262 sparc/rtems.h (subtarget_switches): Removed SUBTARGET_SWITCHES
9263 definitions. Use -qrtems instead of -mrtems.
9264
feb21122
RL
9265Wed Sep 3 09:05:41 1997 Robert Lipe (robert@dgii.com)
9266
9267 * xm-sco5.h (sys_siglist): Define.
9268 (SYS_SIGLIST_DECLARED): Likewise.
9269
704af6a1
JL
9270Tue Sep 2 23:33:33 1997 Jeffrey A Law (law@cygnus.com)
9271
9272 * expr.c (convert_move): Handle truncation from TQFmode to QFmode.
9273
127cd405
TG
9274Wed Sep 3 02:09:30 1997 Torbjorn Granlund <tege@pdc.kth..se>
9275
9276 * except.c (eh_outer_context): Expand masking operation using
9277 expand_binop.
9278
8cf02b47
JW
9279Tue Sep 2 18:09:39 1997 Jim Wilson <wilson@cygnus.com>
9280
9281 * alpha.md (floatdisf2-1): New pattern.
9282
49dad301
JL
9283Tue Sep 2 18:41:55 1997 Jeffrey A Law (law@cygnus.com)
9284
068f1cb8
JL
9285 * xm-svr4.h (SYS_SIGLIST_DECLARED): Define.
9286 * xm-news.h (SYS_SIGLIST_DECLARED): Likewise.
f04e7122 9287 * xm-sysv4.h (SYS_SIGLIST_DECLARED): Likewise.
068f1cb8
JL
9288 * gcc.texi: Note that if you define sys_siglist that you should
9289 also define SYS_SIGLIST_DECLARED.
9290
49dad301
JL
9291 * mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instructions
9292 are relative to the next instruction, not the current instruction.
9293
a1729519
JW
9294Tue Sep 2 14:22:43 1997 Jim Wilson <wilson@cygnus.com>
9295
9296 * local-alloc.c (contains_replace_regs): New function.
9297 (update_equiv_regs): When adding a REG_EQUIV note for a set of a MEM,
9298 verify that there is no existing REG_EQUIV note, and add a call to
9299 contains_place_regs.
9300
290c8b1f
L
9301Tue Sep 2 12:48:11 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
9302
9303 * config/alpha/elf.h (CPP_PREDEFINES): Add -D__PIC__ -D__pic__.
9304 (STARTFILE_SPEC): Always use crtbegin.o%s
9305 (ENDFILE_SPEC): Always use crtend.o%s.
9306
a6a503ed
JW
9307Tue Sep 2 12:00:36 1997 Jim Wilson <wilson@cygnus.com>
9308
9309 * alpha/alpha.h (PREFERRED_RELOAD_CLASS): Return NO_REGS if NO_REGS
9310 is passed in.
9311 * emit-rtl.c (gen_lowpart_common): Add code to convert CONST_INT to
9312 SFmode for 64 bit hosts.
b57062ca 9313
a94729bc
PH
9314Tue Sep 2 13:42:38 1997 Paul N. Hilfinger <hilfingr@CS.Berkeley.EDU>
9315
9316 * fixincludes: Permits spaces between # and define. Discard C++
9317 comments in sys/pci.h on HP/UX 10.20.
9318
c9e03727
JL
9319Mon Sep 1 22:13:18 1997 Jeffrey A Law (law@cygnus.com)
9320
9321 * version.c: Bump for snapshot.
9322
2eddfed1
JL
9323 * pa.c (restore_unscaled_index_insn_codes): New function.
9324 (record_unscaled_index_insn_codes): Likewise.
9325 (output_function_prologue): Call restore_unscaled_index_insn_codes.
9326 (output_function_epilogue): Free memory for unscaled_index_insn_codes.
9327 (pa_reorg): Call record_unscaled_index_insn_codes.
9328
c9e03727
JL
9329 * haifa-sched.c (move_insn): Handle notes correctly for insns
9330 with SCHED_GROUP_P set.
b57062ca 9331
a5d6a95b
L
9332Mon Sep 1 16:58:57 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
9333
9334 * alpha/xm-linux.h (USE_BFD): Undef before define.
9335
bc4ddc77
JW
9336Mon Sep 1 16:25:34 1997 Jim Wilson <wilson@cygnus.com>
9337
9338 * cse.c (cse_insn): Don't record BLKmode values.
9339
f3e0ca6c
SW
9340Mon Sep 1 11:25:47 1997 Stephen Williams (steve@icarus.icarus.com)
9341
9342 * i960.h (LINK_SPEC): Handle "-mjX" and "-mrp" switches.
9343
e3512ac2
JL
9344Mon Sep 1 08:29:46 1997 Jeffrey A Law (law@cygnus.com)
9345
a63d08e6
JL
9346 * cccp.c (sys_errlist): Remove special 4.4bsd declaration.
9347 * collect2.c (sys_errlist): Likewise.
9348 * cpplib.c (sys_errlist): Likewise.
9349 * gcc.c (sys_errlist): Likewise.
9350 * protoize (sys_errlist): Likewise.
9351 * configure.in: Check for strerror.
9352 * xm-freebsd.h (HAVE_STRERROR): Remove definition.
9353 * xm-gnu.h (HAVE_STRERROR): Likewise.
9354 * xm-linux.h (HAVE_STRERROR): Likewise.
9355 * xm-netbsd.h (HAVE_STRERROR): Likewise.
9356 * xm-bsd386.h (HAVE_STRERROR): Likewise.
9357 * xm-cygwin32.h (HAVE_STRERROR): Likewise.
9358 * xm-dos.h (HAVE_STRERROR): Likewise.
9359 * xm-mingw32.h (HAVE_STRERROR): Likewise.
9360 * xm-pa.h (HAVE_STRERROR): Likewise.
9361 * xm-papro.h (HAVE_STRERROR): Likewise.
9362 * xm-sysv4.h (HAVE_STRERROR): Likewise.
9363 * configure, config.in: Rebuilt.
9364
db814993
JL
9365 * Makefile.in: Add several missing "else true" clauses.
9366
e3512ac2
JL
9367 * collect2.c: Change DONT_DECLARE_SYS_SIGLIST to SYS_SIGLIST_DECLARED.
9368 * mips-tfile.c: Likewise.
9369 * gcc.texi: DONT_DECLARE_SYS_SIGLIST: Remove docs.
9370 * xm-linux.h (DONT_DECLARE_SYS_SIGLIST): Delete definition.
9371 * xm-freebsd.h, xm-bsd386.h, xm-sysv4.h, xm-sol2.h: Likewise.
9372 * configure.in: Check for sys_siglist declaration.
9373 * configure, config.in: Rebuilt.
9374
5d84b57e
JS
9375Mon Sep 1 08:04:07 1997 Joel Sherrill (joel@OARcorp.com)
9376
b57062ca 9377 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h,
5d84b57e
JS
9378 m68k/rtems.h, mips/rtems64.h, pa/rtems.h, rs6000/rtems.h,
9379 sparc/rtems.h (subtarget_switches): Added -mrtems as a switch.
9380 * i960/i960.h: Added SUBTARGET_SWITCHES macro.
9381 * rs6000/sysv4.h (extra_subtarget_switches): Added new
9382 macro EXTRA_SUBTARGET_SWITCHES.
9383 * configure.in (sh*-*-rtems*): New target.
9384 * sh/rtems.h: New file.
9385 * sh/sh.h: Added SUBTARGET_SWITCHES macro.
9386 * configure: Rebuilt.
9387
2599dcc7
JW
9388Sat Aug 30 22:54:26 1997 Jim Wilson <wilson@cygnus.com>
9389
9390 * unroll.c (calculate_giv_inc): Handle increment with code PLUS.
9391
3b7e5ef4
DE
9392Sat Aug 30 10:49:46 1997 David Edelsohn <edelsohn@mhpcc.edu>
9393
9394 * rs6000.md: Make DF fused-add operations pay attention to
9395 -mno-fused-add.
9396
5cd5f4a7
JW
9397Fri Aug 29 19:19:54 1997 Jim Wilson <wilson@cygnus.com>
9398
9399 * i386/xm-sysv4.h (DONT_DECLARE_SYS_SIGLIST): Define.
9400
63e7fe9b
JL
9401Fri Aug 29 16:13:51 1997 Jeffrey A Law (law@cygnus.com)
9402
9403 * pa.md (reload_peepholes): Make sure operand is a REG before
9404 examining REGNO. Allow general registers too.
9405
eb7b11fd
JW
9406Fri Aug 29 11:42:04 1997 Jim Wilson <wilson@cygnus.com>
9407
9408 * varasm.c (mark_constants): Don't look inside CONST_DOUBLEs.
9409
c760091a
PT
9410Fri Aug 29 09:33:20 1997 Philipp Thomas (kthomas@lxi165.gwdg.de)
9411
5cd5f4a7 9412 * dwarf2out.c (build_abbrev_table): Use xrealloc, not xmalloc
c760091a
PT
9413 to reallocate abbrev_die_table.
9414
57583338
JW
9415Thu Aug 28 15:14:46 1997 Jim Wilson <wilson@cygnus.com>
9416
9417 * m68k/m68k.md (iorsi_zexthi_ashl16): Disable.
9418
eae4b970
AS
94191997-08-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
9420
4f91a0f8
AS
9421 * Makefile.in (config.status): Depend on version.c
9422
eae4b970
AS
9423 * expr.h (insn_gen_function): Reenable prototype.
9424
9425 * expr.c (move_by_pieces_1, clear_by_pieces_1): Fix prototype of
9426 first parameter.
9427
00fc09e1
JW
9428Thu Aug 28 13:01:43 1997 Jim Wilson <wilson@cygnus.com>
9429
9430 * i386.c (ix86_expand_epilogue): Emit blockage instruction when pic.
9431
2601ebca
JL
9432Thu Aug 28 07:03:15 1997 Jeffrey A Law (law@cygnus.com)
9433
9434 * version.c: Bump for latest snapshot.
9435
9436 * bc-optab.c: Conditionally include stdlib.h.
9437 (free): Provide a declaration if NEED_DECLARATION_FREE.
9438 * tree.c (free): Provide a declaration if NEED_DECLARATION_FREE.
9439 * rtl.h (free): Remove declaration.
9440 * tree.h (free): Remvoe declaration.
9441
9442 * configure: Rebuilt.
9443
e5eb27e5
JL
9444Wed Aug 27 21:32:20 1997 Jeffrey A Law (law@cygnus.com)
9445
9446 * flags.h (flag_move_all_movables): Declare.
9447 (flag_reduce_all_givs): Likewise.
9448 * loop.c (move_movables): Handle flag_move_all_movables.
9449 (strength_reduce): Handle flag_reduce_all_givs.
9450 * toplev.c (flag_move_all_movables): Define.
9451 (flag_reduce_all_givs): Likewise.
9452 (f_options): Add -fmove-all-movables and -freduce-all-givs.
9453 * invoke.texi: Document new options, including alias stuff that
9454 wasn't included last time.
9455
d995a6dc
BM
9456Wed Aug 27 18:08:51 1997 Bob Manson (manson@cygnus.com)
9457
9458 * t-h8300: Use TARGET_LIBGCC2_CFLAGS instead of LIBGCC2_CFLAGS.
9459 * t-mn10200: Ditto.
9460 * t-vxsparc: Ditto.
9461 * t-vxworks68: Ditto.
9462 * t-vxworks960: Ditto.
9463 * t-vx29k: Ditto.
9464
ba64ca33
RH
9465Wed Aug 27 16:35:29 1997 Richard Henderson <rth@cygnus.com>
9466
9467 * alpha/xm-alpha.h (alloca): Define alloca to builtin_alloca for GNUC
9468 if not already defined, and USE_C_ALLOCA not defined.
9469
ca20876d
JW
9470Wed Aug 27 16:08:43 1997 Jim Wilson <wilson@cygnus.com>
9471
7818d6fc
JW
9472 * config.guess: Replace with script that uses ../config.guess.
9473
ca20876d
JW
9474 * config/alpha/elf.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1
9475 if USE_GNULIBC_1 is not defined.
9476
704a6306
RH
9477Wed Aug 27 15:49:12 1997 Richard Henderson <rth@cygnus.com>
9478
9479 * alpha/elf.h (LINK_SPEC): Conditionalize on USE_GNULIBC_1.
9480 * config.guess: Recognize alpha-linux-gnulibc1.
9481 * configure.in (alpha-*-linux-gnulibc1): New target.
9482 (alpha-*-linux-gnu*): Don't build crtbegin/end.
9483
67f68fd2
JW
9484Wed Aug 27 11:52:58 1997 Jim Wilson <wilson@cygnus.com>
9485
9486 * m68k.md (iorsi3_internal): Readd ! TARGET_5200 check lost in
9487 last change.
9488
88016fb7
DE
9489Wed Aug 27 01:56:18 1997 Doug Evans <dje@seba.cygnus.com>
9490
9491 * loop.c (combine_movables): Earlier insns don't match later ones.
9492
bba17b29
L
9493Wed Aug 27 01:24:25 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
9494
9495 * config/linux.h (CC1_SPEC): Define it only if not defined.
9496
9497 * config/m68k/linux.h (CC1_SPEC): Undefine it before include
9498 <linux.h>
9499
9500 * config/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1 if
9501 USE_GNULIBC_1 is not defined.
9502
33d2808b 9503 * config/rs6000/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1.
bba17b29
L
9504
9505 * config/sparc/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined
9506 as 1 if USE_GNULIBC_1 is not defined.
9507
ed4044e0
JL
9508Wed Aug 27 00:49:14 1997 Jeffrey A Law (law@cygnus.com)
9509
f345de42
JL
9510 * reorg.c (dbr_schedule): Allow current_function_return_rtx
9511 to be something other than a REG.
9512 * function.c (expand_function_end): Fix current_function_return_rtx
9513 if it was a pseudo.
9514
ed4044e0
JL
9515 * t-freebsd (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
9516 * x-netbsd: Likewise
9517 * x-dgux (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS
9518 (INSTALL_HEADERS): Delete.
9519 * x-dguxbcs: Likewise.
9520 * x-hp3bsd44: Likewise
9521 * x-pa: Likewise.
9522
47d36400
BS
9523Wed Aug 27 00:30:00 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
9524
9525 * i386.md (pop): pop increments the stack pointer.
9526 (prologue_set_stack_ptr): New pattern.
9527 * i386.c (ix86_expand_prologue): Use prologue_set_stack_ptr
9528 instead of subsi3.
9529
fc79eafe
JW
9530Tue Aug 26 18:50:32 1997 Jim Wilson <wilson@cygnus.com>
9531
9532 * reload.c (find_reloads, case '0'): Reject matching a non-offsettable
9533 address where an offsettable address is required.
9534
c5da853f
MH
9535Tue Aug 26 17:54:56 1997 Michael P. Hayes (michaelh@ongaonga.chch.cri.nz>
9536
9537 * loop.c (check_final_value): Don't miss a biv increment in a
9538 parallel.
9539
d4ef15f2
JW
9540Tue Aug 26 12:03:49 1997 Jim Wilson (wilson@cygnus.com)
9541
9542 * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Check
9543 TYPE_DECL_IS_STUB instead of DECL_NAME.
9544
10549cbd
JW
9545Mon Aug 25 23:27:10 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
9546
9547 * objc/Make-lang.in ($(OBJC_O)): Also depend on cc1obj.
9548
9549Mon Aug 25 23:27:10 1997 Jim Meyering <meyering@eng.ascend.com>
9550
9551 * objc/Make-lang.in ($(OBJC_O)): Also depend on $(GCC_PASSES).
9552
484df988
JL
9553Mon Aug 25 13:12:24 1997 Jeffrey A Law (law@cygnus.com)
9554
9555 * haifa-sched.c (find_pre_sched_live): Remove #if 0 code.
9556 (find_post_sched_live): Likewise.
9557
9558 * haifa-sched.c (schedule_block): Remove old code to get arguments
9559 from hard regs into pseudos early.
9560
39dfb55a
JL
9561Mon Aug 25 08:55:00 1997 Jeffrey A Law (law@cygnus.com)
9562
9563 * version.c: Bump for new snapshot.
9564
9565 * local-alloc.c (update_equiv_regs): All the target to reject
9566 promotion of some REG_EQUAL to REG_EQUIV notes.
9567 * pa.h (DONT_RECORD_EQUIVALENCE): Define.
9568
9569 * pa.c (secondary_reload_class): (mem (mem ... )) does not need
9570 secondary reloads.
9571
9572 * pa.c (hppa_builtin_saveregs): Emit a blockage insn after the
9573 store of the argument registers.
9574
9575Mon Aug 25 08:39:02 1997 Craig Burley (burley@gnu.ai.mit.edu)
9576
9577 * fold-const.c (multiple_of_p): New function.
9578 (fold): Turn some cases of *_DIV_EXPR into EXACT_DIV_EXPR.
9579
d78778eb
JL
9580Mon Aug 25 01:47:41 1997 Jeffrey A Law (law@cygnus.com)
9581
9582 * expr.h (insn_gen_function): Temporarily remove prototype.
9583
feb9ea1a
JW
9584Sun Aug 24 17:22:21 1997 Jim Wilson <wilson@cygnus.com>
9585
9586 * Makefile.in (install-info): Don't cd into srcdir. Add srcdir to
9587 filenames. Use sed to extract base filename for install.
9588
b6ffe602
JC
9589Sat Aug 23 18:19:40 1997 John F. Carr <jfc@mit.edu>
9590
9591 * unroll.c (find_splittable_givs): Only share if two givs have the
9592 same add and multiply values.
9593
2ebfd230
JW
9594Sat Aug 23 14:36:27 1997 Jim Wilson <wilson@cygnus.com>
9595
9596 * m68k/next.h (GO_IF_INDEXABLE_BASE): Fix typo in undef.
9597 * m68k/m68kemb.h (LIB_SPEC): Add missing comment end before it.
9598
251ffdee
JL
9599Sat Aug 23 00:18:22 1997 Jeffrey A Law (law@cygnus.com)
9600
9601 * pa.c (pa_reorg): Always put begin_brtab and end_brtab insns
9602 around branch tables.
9603 * pa.md (begin_brtab, end_brtab): Only emit the .begin_brtab
9604 and .end_brtab directives if TARGET_GAS.
9605
19372aa1
JW
9606Fri Aug 22 14:05:55 1997 Jim Wilson <wilson@cygnus.com>
9607
27314274
JW
9608 * alias.c (true_dependence): Pass x_addr not x to varies.
9609
19372aa1
JW
9610 * acconfig.h (NEED_DECLARATION_CALLOC): Add.
9611 * configure.in: Add GCC_NEED_DECLARATION call for calloc.
9612 * rs6000/xm-rs6000.h (malloc, realloc, calloc, free): Delete
9613 declarations.
9614 * config.in, configure: Regenerate.
9615
2a2c8203
JC
9616Thu Aug 21 23:52:16 1997 John F. Carr <jfc@mit.edu>
9617
9618 * alias.c (find_base_value): Improve handling of PLUS, MINUS, and
9619 LO_SUM.
9620 (record_set): Handle LO_SUM like PLUS.
9621 (init_alias_analysis): When following chains of base addresses,
9622 do not stop on reaching a hard register.
9623
d80357b7
JL
9624Thu Aug 21 20:17:37 1997 Jeffrey A Law (law@cygnus.com)
9625
9626 * version.c: Bump for new snapshot.
9627
b4f32d7b
JW
9628Thu Aug 21 17:28:00 1997 Jim Wilson <wilson@cygnus.com>
9629
9630 * alpha.h (ARCH_ASM_FILE_START): Define.
9631 (ASM_FILE_START): Use ARCH_ASM_FILE_START.
9632 * osf12.h, osf2or3.h (ARCH_ASM_FILE_START): Redefine to null string.
9633
ca363bb6
JL
9634Thu Aug 21 10:22:19 1997 Jeffrey A Law (law@cygnus.com)
9635
9636 * Makefile.in (install-common): Put gcov comment at start of line.
9637
7557aa98
JL
9638Wed Aug 20 22:47:33 1997 Jeffrey A Law (law@cygnus.com)
9639
9640 * alias.c (init_alias_analysis): When simplifying the reg_base_value
9641 array, simplify entries for hard registers too.
9642
c34e3ae4
DL
9643Wed Aug 20 12:35:47 1997 Dave Love <d.love@dl.ac.uk>
9644
9645 * dwarf2.h (enum dwarf_call_frame_info): Remove trailing comma from
9646 list.
9647
e3eef942
JW
9648Wed Aug 20 11:58:33 1997 Jim Wilson <wilson@cygnus.com>
9649
9650 * stmt.c (start_cleanup_deferal, end_cleanup_deferal): Test
9651 block_stack before dereferencing it.
9652
9653Wed Aug 20 11:57:11 1997 Michael Meissner <meissner@cygnus.com>
246853b9
MM
9654
9655 * rs6000.h (ISSUE_RATE): Define instead of MACHINE_issue_rate.
9656
04f41951
JM
9657Tue Aug 19 17:10:56 1997 Jason Merrill <jason@yorick.cygnus.com>
9658
9659 * cplus-dem.c: Add 'extern' to prepends_underscore.
9660
e933cbe0
JL
9661Tue Aug 19 09:34:57 1997 Jeffrey A Law (law@cygnus.com)
9662
62d65906
JL
9663 * haifa-sched.c (ISSUE_RATE): Renamed from MACHINE_issue_rate.
9664 (get_issue_rate): Delete.
9665 * pa.h (ISSUE_RATE): Define.
9666
2da05a5b
JL
9667 * configure.in: Turn on haifa by default for the PA.
9668 * configure: Rebuilt.
9669 * pa.c (override_options): Accept -mschedule=7200 option.
9670 (pa_adjust_cost): No longer need to scale costs for newer
9671 processors.
9672 * pa.h (enum processor_type): Add PROCESSOR_7200.
9673 * pa.md: Revamp scheduling parameters to work better with
9674 haifa. Add scheduling parameters for the 7200.
9675
4f64eaca
JL
9676 * haifa-sched.c (move_insn): Reemit notes for SCHED_GROUP_P
9677 insns too.
9678 (schedule_block): When adjusting basic_block_{head,end}, account
9679 for movement of SCHED_GROUP_P insns too.
9680
9681 * haifa-sched.c (debug_dependencies): Fix thinko.
9682
e933cbe0
JL
9683 * Makefile.in (EXPECT, RUNTEST, RUNTESTFLAGS): Define.
9684 (site.exp, check, check-g++, check-gcc): New targets.
9685
4f64eaca 9686 * haifa-sched.c: Make lots of variables static.
61822835 9687
e9576d2c
L
9688Tue Aug 19 07:18:34 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
9689
9690 * expr.h, real.h: Finish prototyping.
9691
61822835
JL
9692Mon Aug 18 21:49:02 1997 Jim Wilson <wilson@cygnus.com>
9693
9694 * reload.c (find_reloads): Add code to convert RELOAD_FOR_OPADDR_ADDR
9695 reloads to RELOAD_FOR_OPERAND_ADDRESS reloads.
9696 * reload1.c: Undo bugfix from Aug 11.
9697
f24b370a
MM
9698Mon Aug 18 17:39:02 1997 Mike Meissner <meissner@cygnus.com>
9699
9700 * configure.in ({powerpc,rs6000}*-*-*, --with-cpu): Remove single
9701 quotes around the name.
9702 * configure: Regenerate.
9703
1c4c5851
JW
9704Mon Aug 18 13:46:47 1997 Jim Wilson <wilson@cygnus.com>
9705
9706 * Makefile.in (stmp-multilib-sub): Fix typo in last change.
9707
71abb567
MH
9708Thu Aug 7 10:33:13 1997 Manfred Hollstein <manfred@s-direktnet.de>
9709
9710 * Makefile.in (sub-makes): Pass the current value of LANGUAGES down
9711 to sub-makes to avoid building more passes than the user might have
9712 requested on the command line.
9713
6042434a
DL
9714Sun Aug 17 15:42:17 1997 Dave Love (d.love@dl.ac.uk)
9715
9716 * configure.in: Expurgate `broken_install' (install is
9717 autoconfed).
9718
9719 * configure.lang: Substitute autoconfed ${INSTALL} (not currently
9720 relevant).
9721
38ea060f
JL
9722Sat Aug 16 01:08:12 1997 Jeffrey A Law (law@cygnus.com)
9723
9724 * loop.c (is_power_of_2, is_conditional_branch): Delete unused
9725 functions and declarations.
9726 (analyze_loop_iterations): Use condjump_p.
9727 (insert_bct): Likewise. Use exact_log2.
b57062ca 9728
f187056f
JL
9729Fri Aug 15 23:48:32 1997 Jeffrey A Law (law@cygnus.com)
9730
9731 * haifa-sched.c (find_post_sched_live): Call FREE_REG_SET as needed.
9732 (schedule_region): Likewise.
9733 (schedule_insns): Likewise.
9734
9735 * PROJECTS: Update with Haifa stuff.
9736
9af06254
JL
9737Fri Aug 15 12:49:56 1997 Jeffrey A Law (law@cygnus.com)
9738
9739 * version.c: Change the version string to look like:
11c21791 9740 egcs-2.90.00 970814 (gcc2-970802 experimental).
9af06254 9741
0945e937
JL
9742 * loop.c (is_conditional_branch): Make definition match declaration.
9743
9af06254
JL
9744 * gcc.c: Take out experimental snapshot warning message.
9745
ebc25a17
MM
9746Fri Aug 15 13:43:39 1997 Michael Meissner <meissner@cygnus.com>
9747
9748 * haifa-sched.c (debug_dependencies): Use GET_NOTE_INSN_NAME to
9749 print out the names of the notes. Print out the name of the insn
9750 that is not a note, and not an {,CALL_,JUMP_}INSN.
9751
610ce97e
JM
9752Wed Aug 13 17:32:38 1997 Jason Merrill <jason@yorick.cygnus.com>
9753
9754 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
9755 again for the slot after we give it RTL.
9756
992d1248
DE
9757Wed Aug 13 01:03:37 1997 Doug Evans <dje@canuck.cygnus.com>
9758
9759 * configure.in (haifa configury): Fix typo.
9760 * configure: Regenerate.
9761
7bb6fbd1
JL
9762Tue Aug 12 10:20:36 1997 Jeffrey A Law (law@cygnus.com)
9763
9764 * version.c: Bump version to "gcc-3.0.0 970802 experimental".
9765
9766 * gcc.info*: Rebuilt.
9767
9768 * COPYING.g77, README.g77: New files.
9769 * real.c (ereal_unto_float, ereal_unto_double): New functions.
9770 * real.h (ereal_unto_float, ereal_unto_double): Declare them.
9771 (REAL_VALUE_UNTO_TARGET_DOUBLE, REAL_VALUE_UNTO_TARGET_SINGLE): Define.
9772
8c660648
JL
9773Mon Aug 11 14:50:55 1997 Jeffrey A Law (law@cygnus.com)
9774
9775 * Integrate Haifa instruction scheduler.
9776 * Makefile.in (ALL_CFLAGS): Add SCHED_CFLAGS. Prefix all references
9777 to sched with $(SCHED_CFLAGS.
9778 * configure.in: Handle --enable-haifa.
9779 * configure: Rebuilt.
9780 * flags.h: Add new flags for haifa instruction scheduler.
9781 * genattrtab.c (expand_units): For haifa, don't subtract one
9782 when computing blockage.
9783 * toplev.h (flag_schedule_interblock): Haifa scheduler flag.
9784 (flag_schedule_speculative): Ditto.
9785 (flag_schedule_speculative_load): Ditto.
9786 (flag_schedule_speculative_load_dangerous): Ditto.
9787 (flag_schedule_reverse_before_reload): Ditto.
9788 (flag_schedule_reverse_after_reload): Ditto.
9789 (flag_branch_on_count_reg): Ditto.
9790 (f_options): Add Haifa switches.
9791 (main): Turn off some Haifa options if appropriate macro is
9792 defined. Process Haifa switches.
9793 * unroll.c (iteration_info): No longer static, since Haifa
9794 scheduler uses it.
9795 (unroll_loop): Inform HAIFA scheduler about loop unrolling factor.
9796 * unroll.c (unroll_loop): Set loop_unroll_iter, loop_start_value.
9797 * loop.h (loop_unroll_factor, loop_number): Add HAIFA decls.
9798 * loop.h (loop_initial_value,loop_unroll_iter): New globals.
9799 * loop.c (loop_optimize): If HAIFA is defined, allocate additional
9800 storage for the Haifa scheduler.
9801 (mark_loop_jump): If HAIFA defined, set LABEL_OUTSIDE_LOOP_P and
9802 LABEL_NEXTREF.
9803 (strength_reduce): If HAIFA and HAVE_decrement_and_branch_on_count
9804 are defined, call analyze_loop_iterations and insert_bct to use
9805 countdown loops.
9806 (record_giv): Refine test for jumps out of loops if HAIFA is
9807 defined.
9808 (analyze_loop_iterations): New function to identify if we can use
9809 a countdown loop.
9810 (insert_bct): Insert countdown loop.
9811 (instrument_loop_bct): Low level code to insert countdown loop.
9812 (loop_number): Calculate UID of loop.
9813 (indirect_jump_in_function_p): Return true if an indirect jump is
9814 in the function.
9815 (is_power_of_2): Return true if value is a power of 2.
9816 (is_conditional_branch): Return true if insn is a conditional
9817 jump.
9818 (fix_bct_param): Process -fbct-{min,max}-N switches.
9819 (check_bct_param): Return true if loop should be instrumented.
9820 * loop.c (loop_initial_value,loop_unroll_iter): New globals.
9821 (loop_optimize): Initialize.
9822 (get_condition_for_loop): Ditto.
9823 * loop.c (strength_reduce): Inside of code that uses #ifdef
9824 HAVE_decrement_and_branch_on_count code, test it to make sure the
9825 condition is true.
9826 (instrument_loop_bct): Ditto.
9827 * haifa-sched.c: New file.
b57062ca 9828
8c660648
JL
9829
9830 * Integrate regmove pass.
9831 * Makefile.in (OBJS): Add regmove.o
9832 (regmove.o): Add dependencies.
9833 * flow.c (find_use_as_address): No longer static.
9834 * rtl.h (find_use_as_address): Declare.
9835 * toplev.c (regmove_dump, flag_regmove): Define.
9836 (f_options): Add -fregmove.
9837 (regmove_dump_file, regmove_time): Define.
9838 (fatal_insn): Close the regmove dump file.
9839 (compile_file): Initialize regmove_time; open/close the regmove dump
9840 file as needed. Print regmove time as needed.
9841 (rest_of_compilation): Run regmove pass if requested, dump
9842 RTL after regmove if requested.
9843 (main): If -O2 or more, turn on regmove. Handle dump switches.
9844 * regmove.c: New file.
b57062ca 9845
aa32d841
JL
9846Mon Aug 11 14:15:02 1997 Jeffrey A Law (law@cygnus.com)
9847
9848 * Integrate tlink patch from jason@cygnus.com
9849 * gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
9850 (process_command): Increment n_switches for them. Don't discard
9851 their args. Validate them.
9852 (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
9853 From Rohan Lenard.
9854 (process_command): Set include_prefixes from COMPILER_PATH.
9855 (main): Set COLLECT_GCC_OPTIONS sooner.
9856 * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
9857 * tlink.c, hash.c, hash.h: New files.
9858 * Makefile.in (USE_COLLECT2): Always use collect2.
9859 (collect2): Depend on and link in hash.o and tlink.o.
9860 (tlink.o, hash.o): Add dependencies.
9861
5fa39bfe
JL
9862Mon Aug 11 10:04:49 1997 Jeffrey A Law (law@cygnus.com)
9863
9ae8ffe7
JL
9864 * Integrate alias analysis changes from jfc@mit.edu
9865 * Makefile.in (OBJS): Add alias.o
9866 (alias.o): Add dependencies.
9867 * alias.c: New file.
9868 * sched.c: Remove alias analysis code. It lives in alias.c now.
9ae8ffe7 9869 (sched_analyze_2): Add new arguments to true_dependence.
9ae8ffe7
JL
9870 (schedule_insns): Always call init_alias_analysis.
9871 * calls.c (expand_call): Note calls to malloc, calloc, and realloc;
9872 mark return value from such functions as a pointer and keep track of
9873 them for alias analysis. If a return value from a function is a
9874 pointer, mark it as such.
9875 * combine.c (distribute_notes): Handle REG_NOALIAS.
9876 * cse.c (struct write_data): Delete. No longer needed.
9877 (invalidate): Don't call set_nonvarying_address_components anymore.
9878 Use true_dependence to decide if an entry should be removed from
9879 the hash table.
9880 (invalidate_memory): Remove WRITES argument, simplify appropriately.
9881 Fix all callers.
9882 (note_mem_written): Similarly for WRITE_PTR argument.
9883 (invalidate_from_clobbers): Similarly for W argument.
9884 (invalidate_for_call): Remove memory elements from the hash table.
9885 (refers_to_mem_p, cse_rtx_addr_varies_p): Deleted.
9886 (cse_rtx_varies_p): New function. Derived from old
9887 cse_rtx_addr_varies_p.
9888 (cse_insn): Remove WRITES_MEMORY and INIT variables and all references.
9889 Don't call note_mem_written anymore. Stack pushes invalidate the stack
9890 pointer if PUSH_ROUNDING is defined. No longer need to call
9891 cse_rtx_addr_varies_p to decide if a MEM should be invalidated.
9892 (skipped_writes_memory): Remove variable.
9893 (invalidate_skipped_set): Simplify and wewrite to use invalidate_memory.
9894 (invalidate_skipped_block): Simplify for new alias analysis code.
9895 (cse_set_around_loop): Likewise.
9896 (cse_main): Call init_alias_analysis.
9897 * flags.h (flag_alias_check, flag_argument_noalias): Declare.
9898 * toplev.c (flag_alias_check, flag_argument_noalias): Define.
9899 (f_options): Add new alias checking arguments.
9900 (main): Set flag_alias_check when optimizing.
9901 * local_alloc (validate_equiv_mem_from_store): Add new arguments
9902 to true_dependence.
9903 (memref_referenced_p): Likewise.
9904 * loop.c (NUM_STORES): Increase to 30.
9905 (prescan_loop): Only non-constant calls set unknown_address_altered.
9906 (invariant_p): Add new arguments to true_dependence.
9907 (record_giv): Initialize unrolled and shared fields.
9908 (emit_iv_add_mult): Call record_base_value as needed.
9909 * loop.h (struct induction): Add unrolled and shared fields.
9910 * unroll.c (unroll_loop): Call record_base_value as needed.
9911 (copy_loop_body): Likewise.
9912 (final_biv_value): Likewise.
9913 (final_giv_value): Likewise.
9914 (find_splittable_regs): Likewise. Only create one new pseudo
9915 if we have multiple address GIVs that were combined with the same
9916 dst_reg GIV. Note when a new register is created due to unrolling.
9917 * rtl.c (reg_note_name): Add REG_NOALIAS.
9918 * rtl.h (enum reg_note): Similarly.
9919 (rtx_varies_p, may_trap_p, side_effects_p): Declare.
9920 (volatile_refs_p, volatile_insn_p, remove_note): Likewise.
9921 (note_stores, refers_to_regno_p, reg_overlap_mentioned_p): Likewise.
9922 (true_dependence, read_dependence, anti_dependence): Likewise.
9923 (output_dependence, init_alias_analysis, end_alias_analysis): Likewise.
9924 (mark_user_reg, mark_reg_pointer): Likewise.
9925
9926
9927 * Integrate reload bugfix from Wilon which enables the PA port
5fa39bfe 9928 to bootstrap again.
38e01259 9929 * reload1.c (reload): Sum needs for both OPADDR_ADDR and
5fa39bfe
JL
9930 OPERAND_ADDRESS when computing how many registers an insn needs.
9931 (reload_reg_free_p): OPADDR_ADDR and OPERAND_ADDRESS reloads do
9932 conflict.
9933 (reload_reg_free_before_p): Treat OPERAND_ADDRESS reloads just like
9934 OPADDR_ADDR reload.
9935 (reload_reg_reaches_end_p): For RELOAD_FOR_OPADDR_ADDR insns, registers
9936 in reload_reg_use_in_op_addr do not reach the end.
9937 do not reach the end.
9938 (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
9939 RELOAD_FOR_OPERAND_ADDRESS.
9940
9941Sun Aug 10 12:00:20 1997 Jeffrey A Law (law@cygnus.com)
9942
2dcfcb56 9943 * egcs project officially starts.