]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
* Disable the following change from gcc2. Not appropriate for egcs:
[gcc.git] / gcc / ChangeLog
CommitLineData
3b39dde8
JL
1Mon Jul 6 21:28:14 1998 Jeffrey A Law (law@cygnus.com)
2
3 * Disable the following change from gcc2. Not appropriate for egcs:
4
5 Sun Jun 7 09:30:31 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6 * reload.c (find_reloads): Give preference to pseudo that was the
7 reloaded output of previous insn.
8
092f7be3
KG
9Mon Jul 6 21:07:14 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
10
11 * aclocal.m4 (GCC_FUNC_PRINTF_PTR): Don't define HOST_PTR_PRINTF.
12 Instead, define a new macro HAVE_PRINTF_PTR which only signifies
13 whether we have the %p format specifier or not.
14
15 * acconfig.h: Delete stub for HOST_PTR_PRINTF, add HAVE_PRINTF_PTR.
16
17 * machmode.h (HOST_PTR_PRINTF): When determining the definition,
18 check HAVE_PRINTF_PTR to see whether "%p" is okay.
19
20 * mips-tfile.c: Include machmode.h to get HOST_PTR_PRINTF.
21
22 * Makefile.in (mips-tfile.o): Depend on machmode.h.
23
93de5c31
MM
24Mon Jul 6 10:42:05 1998 Mark Mitchell <mark@markmitchell.com>
25
26 * jump.c (duplicate_loop_exit_test): Don't refuse to copy a
27 section of code just because it contains
28 NOTE_INSN_BLOCK_{BEG,END}.
29 * stmt.c (expand_end_loop): Likewise. Also, don't refuse to
30 move CALL_INSNs or CODE_LABELs. When moving code, don't move
31 NOTE_INSN_BLOCK_{BEG,END}.
32
2f541799
MM
33Mon Jul 6 09:38:15 1998 Mark Mitchell <mark@markmitchell.com>
34
35 * cse.c (CSE_ADDRESS_COST): New macro, based on ADDRESS_COST, but
36 dealing with ADDRESSOF.
37 (find_best_addr): Use it.
38
4fc8ff92
RH
39Mon Jul 6 09:27:08 1998 Richard Henderson <rth@cygnus.com>
40
41 * alpha/vms.h (TRAMPOLINE_TEMPLATE): Revert last change.
42
10c301ac
DL
43Mon Jul 6 09:25:06 1998 Dave Love <d.love@dl.ac.uk>
44
45 * libgcc2.c (__eprintf): Make args consistent with prototype in
46 assert.h.
47
9de2c71a
MM
48Mon Jul 6 00:28:43 1998 Mark Mitchell <mark@markmitchell.com>
49
50 * cse.c (cse_insn): When SETting (MEM (ADDRESSOF (X))) to Y,
51 don't claim that the former is equivalent to the latter.
52
a4017712
JL
53Sun Jul 5 23:58:19 1998 Jeffrey A Law (law@cygnus.com)
54
7bd8b2a8
JL
55 * cse.c (cse_insn): Second arg is an RTX now. Update all callers.
56 (cse_basic_block): Keep track of the current RETVAL insn for a
57 libcall instead of just noting that we're in a libcall.
58
adc05e6c
JL
59 * combine.c (simplify_comparison): Do not commute a AND into
60 a paradoxical SUBREG if not WORD_REGISTER_OPERATIONS.
61
a4017712
JL
62 * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Protect with
63 HAVE_GAS_MAX_SKIP_P2ALIGN.
64 * i386/linux.h: Likewise.
65
f7e0e539
DM
66Fri Jul 3 02:33:35 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
67
68 * sparc.c (sparc_operand, move_operand, arith_operand,
69 arith11_operand, arith10_operand, arith_double_operand,
70 arith11_double_operand, arith10_double_operand, small_int,
71 uns_small_int): Recognize CONSTANT_P_RTX.
72 (output_sized_memop, output_move_with_extension,
73 output_load_address, output_size_for_block_move,
74 output_block_move, delay_operand): Remove, has not been
75 enabled or referenced for years.
76 * sparc.md (movstrsi, block_move_insn): Likewise.
77 * sparc.h (PREDICATE_CODES): Define.
78 * linux-aout.h (MACHINE_STATE_{SAVE,RESTORE}): Override with
79 version which uses getcc/setcc traps to save/restore condition
80 codes.
81 * linux64.h: Likewise.
82 * sunos4.h: Likewise.
83 * linux.h: Likewise.
84 * sol2.h: Likewise.
85 * sun4o3.h: Likewise.
86
d420e567
RH
87Fri Jul 3 02:28:05 1998 Richard Henderson <rth@cygnus.com>
88
89 * alpha.c (alpha_initialize_trampoline): Hack around Pmode/ptr_mode
90 lossage on VMS. Reported by kkaempf@rmi.de.
91 * alpha/vms.h (TRAMPOLINE_TEMPLATE): Add missing 0.
92
4abfe235
NC
93Thu Jul 2 17:41:14 1998 Nick Clifton <nickc@cygnus.com>
94
95 * config/m32r/m32r.h (MUST_PASS_IN_STACK): Override default
96 version.
97
39403d82
DE
98Thu Jul 2 14:34:48 1998 David Edelsohn <edelsohn@mhpcc.edu>
99
100 * expr.h (STACK_SIZE_MODE): New macro.
101 * explow.c (allocate_dynamic_stack_space): Use it for
102 mode of allocate_stack pattern increment operand.
103 * tm.texi (STACK_SAVEAREA_MODE, STACK_SIZE_MODE): Document.
104 * md.texi (stack_save_block, ...): Reflect use of macro.
105
106 * rs6000.h (PROMOTE_MODE): Always promote to word_mode.
107 (PROMOTE_FUNCTION_ARGS): Define.
108 (PROMOTE_FUNCTION_RETURN): Define.
109 (FUNCTION_VALUE): Promote to word_mode if smaller.
110 Convert to gen_rtx_FOO.
111 * rs6000.md (call_indirect): Store doubleword in 64-bit mode.
112 Convert to gen_rtx_FOO.
113 * rs6000.c: Convert to gen_rtx_FOO.
114
848205e6
MM
115Thu Jul 2 14:16:11 1998 Michael Meissner <meissner@cygnus.com>
116
117 * varray.{c,h}: New files to provide virtual array support.
6feacd09 118
848205e6
MM
119 * Makefile.in (OBJS): Add varray.o.
120 (varray.o): Add new file.
6feacd09
MM
121 (REGS_H): New variable for dependencies for files including
122 regs.h. Add varray.h and files it includes. Change all regs.h
123 dependencies to $(REGS_H).
848205e6
MM
124
125 * toplev.c (x{m,re}alloc): If size is 0, allocate 1 byte.
126 (xcalloc): Provide frontend for calloc.
127 * {tree,rtl}.h (xcalloc): Add declaration.
128
6feacd09
MM
129 * basic-block.h (REG_BASIC_BLOCK): Convert reg_n_info to be a
130 varray.
131
132 * regs.h (toplevel): Include varray.h.
133 (reg_n_info): Switch to use a varray.
134 (REG_*): Ditto.
135 (allocate_reg_info): Change num_regs argument to be size_t.
136
137 * regclass.c (reg_info_data): New structure to remember groups of
138 reg_info structures allocated that are to be zeroed.
139 ({pref,alt}class_buffer): New statics to hold buffers
140 allocate_reg_info allocates for {pref,alt}class_buffer.
141 (regclass): Use {pref,alt}class_buffer to initialize
142 {pref,alt}class.
143 (allocate_reg_info): Switch to make reg_n_info use varrays.
144 Allocate buffers for the preferred and alter register class
145 information. Change num_regs argument to be size_t, not int.
146
147 * flow.c (reg_n_info): Switch to use varrays.
148
f7c9c2bb
RL
149Thu Jul 2 10:11:47 1998 Robert Lipe <robertl@dgii.com>
150
151 * install.texi (sco3.2v5): Document new --with-gnu-as flag.
152 * config/i386/sco5.h (JUMP_TABLES_IN_TEXT_SECTION): Defined as
153 in other targets.
154 (USE_GAS): Conditionalize away native assembler usage.
155 * config/i386/sco5gas.h: New file.
156 * config/i386/t-sco5gas: New file.
157 * configure.in (ix86-sco3.2v5*): Use new files if --with-gnu-as
158
c92293e7
CM
159Thu Jul 2 08:20:00 1998 Catherine Moore <clm@cygnus.com>
160
161 * haifa-sched.c (alloc_EXPR_LIST): Change to use
162 unused_expr_list.
163
ee5b121e
DL
164Thu Jul 2 14:13:28 1998 Dave Love <d.love@dl.ac.uk>
165
166 * Makefile.in (install-info): Don't use $realfile. Ignore
167 possible errors from the install-info program.
168
729a2bc6
AB
169Thu Jul 2 01:53:32 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
170
171 * combine.c (simplify_comparison): Apply SUBREG_REG to SUBREGs.
172
95912252
RH
173Wed Jul 1 23:06:03 1998 Richard Henderson <rth@cygnus.com>
174
175 * i386.h (HARD_REGNO_MODE_OK): Kill spurrious test.
176 (MODES_TIEABLE_P): Tie SImode and HImode.
177
56159047
AJ
1781998-07-01 Andreas Jaeger <aj@arthur.rhein-neckar.de>
179
180 * invoke.texi (Optimize Options): Fix typo.
181
00a2e46c
JW
182Wed Jul 1 22:25:43 1998 Jim Wilson <wilson@cygnus.com>
183
184 * xcoffout.c (xcoffout_begin_function): Call xcoffout_block for
185 the zero'th block.
186
4c95db67
KR
187Wed Jul 1 23:12:58 1998 Ken Raeburn <raeburn@cygnus.com>
188
189 * h8300.c (print_operand): Delete %L support.
190 * h8300.md (branch_true, branch_false): Use %= with a prefix
191 instead of %L for local branch labels.
192
370b1b83
R
193Wed Jul 1 21:27:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
194
195 * reload1.c (emit_reload_insns): Use proper register classes for
196 SECONDARY_INPUT_RELOAD_CLASS / SECONDARY_MEMORY_NEEDED code.
197
826e3854
R
198Wed Jul 1 21:17:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
199
200 * reload.c (find_reloads): If there are multiple
201 RELOAD_FOR_INPUT_ADDRESS / RELOAD_FOR_OUTPUT_ADDRESS reloads for
202 one operand, change RELOAD_FOR_INPADDR_ADDRESS /
203 RELOAD_FOR_OUTADDR_ADDRESS for all but the first
204 RELOAD_FOR_INPUT_ADDRESS / RELOAD_FOR_OUTPUT_ADDRESS reloads.
205
8543c01e
R
206Wed Jul 1 17:23:23 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
207
208 * regmove.c (fixup_match_2): Check that P has RTX_CLASS 'i' before
209 using its PATTERN.
210
aac5cc16
RH
211Wed Jul 1 05:04:41 1998 Richard Henderson <rth@cygnus.com>
212
213 * expr.c (emit_group_load, emit_group_store): Rewrite considering
214 the size and alignment of the structure being manipulated.
215 * expr.c, calls.c, function.c: Update all callers.
216 * expr.h: Update prototypes.
217 * cse.c (invalidate): Cope with parallels.
218
1eac9f59
RH
219Wed Jul 1 04:22:23 1998 Richard Henderson <rth@cygnus.com>
220
221 * sparc.c (function_arg_record_value): Take a MODE arg with which to
222 create the PARALLEL. Update all callers.
223
822a3443
RH
224Wed Jul 1 04:10:35 1998 Richard Henderson <rth@cygnus.com>
225
226 * expr.c (expand_assignment, store_constructor, expand_expr): Use
227 convert_memory_address instead of convert_to_mode when possible.
228
c714f03d
RH
229Wed Jul 1 03:48:00 1998 Richard Henderson <rth@cygnus.com>
230
231 * alpha.c (alpha_initialize_trampoline): Take arguments describing
232 the layout. Use ptr_mode. Disable hint generation. Use gen_imb.
233 * alpha.h (INITIALIZE_TRAMPOLINE): Pass extra args to the init func.
234 (TRANSFER_FROM_TRAMPOLINE): Move ...
235 * alpha/osf.h: ... here.
236 * alpha/vms.h (INITIALIZE_TRAMPOLINE): Use alpha_initialize_trampoline.
237 (TRANSFER_FROM_TRAMPOLINE): Remove undef.
238 * alpha/win-nt.h: Likewise.
239 * alpha/vxworks.h: Likewise.
240
241 * alpha/linux.h: Revert gcc2 merge lossage.
242
03369c93
AS
243Wed Jul 1 10:56:55 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
244
245 * c-decl.c (grokdeclarator): Don't warn about implicit int in
246 `typedef foo = bar'.
247
e06c10eb
RL
248Wed Jul 1 02:12:33 1998 Robert Lipe <robertl@dgii.com>
249
250 * i386.c (asm_output_function_prefix): Make 686 function
251 prologues not issue .types for non-global lables.
252
154f82c7
DT
253Tue Jun 30 23:46:53 1998 Dmitrij Tejblum <tejblum@arc.hq.cti.ru>
254
255 * i386/freebsd.h (WCHAR_TYPE): Chagne to an "int".
256 (WCHAR_TYPE_SIZE): Update appropriately.
257
20b20440
JL
258Tue Jun 30 23:16:39 1998 Jeffrey A Law (law@cygnus.com)
259
762a1d90
JL
260 * flow.c (recompute_reg_usage): Does not return a value.
261 * rtl.h (recompute_reg_usage): Update prototype.
262
20b20440
JL
263 * jump.c (jump_optimize): Show that the jump chain is not
264 valid when not optimizing.
265
cff48d8f
RH
266Tue Jun 30 16:01:01 1998 Richard Henderson <rth@cygnus.com>
267
268 * rtl.def (CONSTANT_P_RTX): New.
269 * rtl.h (CONSTANT_P): Recognize it.
270 * cse.c (fold_rtx): Eliminate it.
271 * expr.c (can_handle_constant_p): New variable.
272 (init_expr_once): Initialize it.
273 (expand_builtin): Generate CONSTANT_P_RTX if the expression is not
274 immediately recognizable as a constant.
275
276 * alpha.c (reg_or_6bit_operand): Recognize CONSTANT_P_RTX.
277 (reg_or_8bit_operand, cint8_operand, add_operand): Likewise.
278 (sext_add_operand, and_operand, or_operand): Likewise.
279 (reg_or_cint_operand, some_operand, input_operand): Likewise.
280 * alpha.h (PREDICATE_CODES): Add CONSTANT_P_RTX where needed.
281
2067f1f5
BK
2821998-06-30 Benjamin Kosnik <bkoz@bliss.nabi.net>
283
284 * dbxout.c (dbxout_type_methods): Remove warn_template_debugging.
285
d2cabf16
KG
286Tue Jun 30 14:03:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
287
288 * aclocal.m4 (GCC_NEED_DECLARATION): Accept an optional second
289 argument, which is typically preprocessor code used to draw in
290 additional header files when looking for a function declaration.
291 (GCC_NEED_DECLARATIONS): Likewise.
292
293 * configure.in (GCC_NEED_DECLARATIONS): Add checks for getrlimit
294 and setrlimit, search for them in sys/resource.h.
295
296 * acconfig.h: Add stubs for NEED_DECLARATION_GETRLIMIT and
297 NEED_DECLARATION_SETRLIMIT.
298
299 * system.h: Prototype getrlimit/setrlimit if necessary.
300
70198e3d
MM
301Tue Jun 30 10:54:48 1998 Mark Mitchell <mark@markmitchell.com>
302
84001dd0
MM
303 * rtl.texi: Don't say that RTX_INTEGRATED_P is not depended
304 upon.
70198e3d 305
ba1a5707
DE
306Tue Jun 30 13:11:42 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
307
308 * rs6000/sysv4.h (asm output): add tabs for asm directives.
309
310Tue Jun 30 13:11:42 1998 David Edelsohn <edelsohn@mhpcc.edu>
311
312 * Makefile.in (FLAGS_TO_PASS): Set AR_FLAGS to AR_FOR_TARGET_FLAGS.
313
51db713f
KG
314Tue Jun 30 08:59:15 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
315
316 * gansidecl.h (ATTRIBUTE_UNUSED): Use __unused__ not `unused'.
317 Don't define NULL here. Also, remove all vestiges of autoconf
318 based checks for bcmp/bcopy/bzero/index/rindex.
319
320 * system.h: Immediately after including stdio.h, check for and if
321 necessary provide a default definition of NULL.
322
b8705408
MM
323Tue Jun 30 08:22:05 1998 Michael Meissner <meissner@cygnus.com>
324
325 * reload1.c (reload_cse_simplify_operands): Call
326 fatal_insn_not_found, not abort.
327
20f2d03a
JL
328Tue Jun 30 02:34:02 1998 Jeffrey A Law (law@cygnus.com)
329
330 * choose-temp.c (make_temp_file): Accept new argument for the
331 file suffix to use. Allocate space for it and add it to the
332 template.
333 * mkstemp.c (mkstemps): Renamed from mkstemp. Accept new argument
334 for the length of the suffix. Update template struture checks
335 to handle optinal suffix.
336 * collect2.c (make_temp_file): Update prototype.
337 (main): Put proper suffixes on temporary files.
338 * gcc.c (make_temp_file): Update prototype.
339 (do_spec_1): Put proper suffixes on temporary files.
340
dbde0d5d
BH
341Tue Jun 30 00:56:19 1998 Bruno Haible <haible@ilog.fr>
342
343 * invoke.texi: Document new implicit structure initialization
344 warning.
345
ad2c71b7
JL
346Mon Jun 29 22:12:06 1998 Jeffrey A Law (law@cygnus.com)
347
9ec36da5
JL
348 * Merge from gcc2 June 9, 1998 snapshot. See ChangeLog.13 for
349 details.
350
ad2c71b7
JL
351 * pa.c, pa.h, pa.md: Convert to gen_rtx_FOO.
352
4f70758f
KG
353Mon Jun 29 20:12:41 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
354
355 * Makefile.in (fix-header): Don't needlessly depend on cpperror.o.
356
357 * alias.c (CHECK_ALIAS_SETS_FOR_CONSISTENCY): Cast expansion to
358 void since it is evaluated in a comma list.
359
360 * mips.h (ASM_GENERATE_INTERNAL_LABEL): Always sprintf `NUM'
361 argument as a long and cast `NUM' to long to ensure it is of the
362 proper width. Wrap macro arguments in parens when they appear in
363 the expansion.
364
365 * sol2.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
366
367 * sparc.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
368 (ASM_DECLARE_RESULT): Fix fprintf format specifier to match
369 function argument return type.
370 (REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P, REGNO_OK_FOR_FP_P,
371 REGNO_OK_FOR_CCFP_P): Use `(unsigned)' not `U'.
372
373 * cpplib.c (cpp_message_from_errno): Remove unneeded argument to
374 cpp_message.
375
376 * dbxout.c: Fix the comments after an #endif to reflect the actual
377 condition tested in the preceding #if.
378
379 * except.c (find_all_handler_type_matches): Switch to old-style
380 function definition.
381
382 * expr.c (expand_builtin): Remove unused variable `type' twice.
383
384 * gbl-ctors.h (DO_GLOBAL_CTORS_BODY): Cast -1 before comparing it
385 to an unsigned long.
386
387 * haifa-sched.c (print_insn_chain): Remove unused function.
388
389 * objc/objc-act.c (build_msg_pool_reference): Hide prototype and
390 definition.
391
392 * toplev.c: When testing whether to include dbxout.h, also include
393 it when XCOFF_DEBUGGING_INFO is defined.
394
395 * unroll.c (unroll_loop): Add parentheses around assignment used
396 as truth value.
397
a611ae14
CM
398Mon Jun 29 12:18:00 1998 Catherine Moore <clm@cygnus.com>
399
400 * config/lb1spc.asm (.div, .udiv): Replace routines.
401
b4213325
MM
402Mon Jun 29 09:44:24 1998 Mark Mitchell <mark@markmitchell.com>
403
404 * rtl.h: Update comment about special gen_rtx variants.
405 * emit-rtl.c (gen_rtx): Handle MEMs using gen_rtx_MEM.
406
39d45901
JL
407Sun Jun 28 20:58:51 1998 Jeffrey A Law (law@cygnus.com)
408
409 * choose-temp.c (choose_temp_base): Restore original variant of
410 this function for compatibility.
411 (make_temp_file): This is the new, preferred interface to create
412 temporary files.
413 * collect2.c (choose_temp_base): Delete declaration.
414 (make_temp_file): Declare.
415 (temp_filename_length, temp_filename): Delete.
416 (main): Use make_temp_file to get temporary files. Use --lang-c
417 to force the resulting ctort/dtor file to be compiled with the C
418 compiler. Make sure to remove temporary files on all exit paths.
419 * gcc.c (make_temp_file): Provide prototype if MKTEMP_EACH_FILE is
420 defined.
421 (choose_temp_base): Only provide prototype if MKTEMP_EACH_FILE is
422 not defined.
423 (do_spec): Use make_temp_file if MKTEMP_EACH_FILE is defined.
424
6cd5dccd
KG
425Sun Jun 28 08:57:09 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
426
427 * configure.in (GCC_NEED_DECLARATIONS): Add strerror, getcwd and
428 getwd.
429
430 * acconfig.m4: Add stubs for NEED_DECLARATION_STRERROR,
431 NEED_DECLARATION_GETCWD and NEED_DECLARATION_GETWD.
432
433 * cccp.c: Remove strerror()/sys_nerr/sys_errlist decls.
434 (my_strerror): Add prototype and make it static.
435
436 * collect2.c: Likewise.
437
438 * cpplib.c: Likewise.
439
440 * gcc.c: Likewise, but keep `my_strerror' extern.
441
442 * protoize.c: Likewise.
443
444 * pexecute.c (my_strerror): Add argument to prototype.
445
446 * system.h: Add prototypes for getcwd, getwd and strerror. Add
447 extern decls for sys_nerr and sys_errlist. Make abort decl
448 explicitly extern.
449
450 * getpwd.c: Remove decls for getwd and getcwd.
451
984e3c38
JL
452Sun Jun 28 02:11:16 PDT 1998 Jeff Law (law@cygnus.com)
453
454 * version.c: Bump for snapshot.
455
0bef9b8d
RH
456Sat Jun 27 23:32:25 1998 Richard Henderson <rth@cygnus.com>
457
458 * jump.c (jump_optimize): Use side_effects_p & may_trap_p instead
459 of rtx_unsafe_p. Use modified_between_p instead of reg_set_between_p.
460 Allow FP moves to be optimized.
461 (rtx_unsafe_p): Delete.
462
97a7f457
RH
463Sat Jun 27 23:02:04 1998 Richard Henderson <rth@cygnus.com>
464
465 * objc/archive.c: Remove <string.h> prototypes.
466
b00c2351
JL
467Sat Jun 27 22:37:05 1998 Jeffrey A Law (law@cygnus.com)
468
f89223a9
JL
469 * tm.texi (NEED_MATH_LIBRARY): Document new target macro.
470
b00c2351
JL
471 * Makefile.in (gencheck): Remove $(TREE_H) dependency.
472
d2a0c2ee
JC
473Sat Jun 27 20:20:00 1998 John Carr <jfc@mit.edu>
474
475 * dsp16xx.h (FIRST_PSEUDO_REGISTER): Add parentheses to definition.
476 * dsp16xx.c (next_cc_user_unsigned): New function.
477 Remove save_next_cc_user_code.
478 (print_operand): Use HOST_WIDE_INT_PRINT_* macros.
479 * dsp16xx.md: Call next_cc_user_unsigned instead of using
480 save_next_cc_user_code.
481 Use gen_rtx_* functions instead of gen_rtx.
482
483Sat Jun 27 20:18:34 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
484
39403d82 485 * rs6000.h: Add trap_comparison_operator to PREDICATE_CODES.
d2a0c2ee 486
4c649323
JL
487Sat Jun 27 16:45:42 1998 Jeffrey A Law (law@cygnus.com)
488
489 * flow.c (count_reg_sets): New function.
490 (count_reg_sets_1, count_ref_references): Likewise.
491 (recompute_reg_usage): Likewise.
492 * rtl.h (recompute_reg_usage): Add prototype.
493 * toplev.c (rest_of_compilation): Call recompute_reg_usage just
494 before local register allocation.
495
ea56ab2a
RH
496Sat Jun 27 13:15:30 1998 Richard Henderson <rth@cygnus.com>
497
498 * alpha.md (negsf, negdf): Revert Jan 22 change.
499
50793ea3
KG
500Sat Jun 27 07:35:21 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
501
7f43495a
KG
502 * mkstemp.c: Include gansidecl.h. Rename uint64_t to gcc_uint64_t.
503 (mkstemp): Remove size specifier for variable `letters'. Call
504 gettimeofday, not __gettimeofday.
505
50793ea3
KG
506 * Makefile.in (EXPR_H): New dependency variable.
507 (c-typeck.o): Depend on $(EXPR_H) instead of expr.h.
508 (c-iterate.o): Likewise.
509 (gencheck): Depend on $(TREE_H) instead of tree.h, etc.
510 (stor-layout.o): Depend on $(EXPR_H) instead of expr.h.
511 (toplev.o): Likewise. Also depend on $(RECOG_H) instead of recog.h.
512 (varasm.o): Depend on $(EXPR_H) instead of expr.h.
513 (function.o): Likewise.
514 (stmt.o): Likewise.
515 (except.o): Likewise.
516 (expr.o): Likewise.
517 (calls.o): Likewise.
518 (expmed.o): Likewise.
519 (explow.o): Likewise.
520 (optabs.o): Likewise.
521 (sdbout.o): Likewise.
522 (dwarf2out.o): Likewise.
523 (emit-rtl.o): Likewise.
524 (integrate.o): Likewise.
525 (jump.o): Likewise.
526 (cse.o): Likewise.
527 (gcse.o): Likewise. Also depend on $(BASIC_BLOCK_H) instead of
528 basic-block.h.
529 (loop.o): Depend on $(EXPR_H) instead of expr.h.
530 (unroll.o): Likewise.
531 (combine.o): Likewise.
532 (reload.o): Likewise.
533 (reload1.o): Likewise.
534 (caller-save.o): Likewise.
535 (reorg.o): Likewise.
536 (alias.o): Don't depend on insn-codes.h.
537 (regmove.o): Depend on $(RECOG_H)/$(EXPR_H) instead of recog.h/expr.h.
538 (insn-emit.o): Depend on $(EXPR_H) instead of expr.h.
539 (insn-opinit.o): Likewise.
540
003ac91d
JL
541Sat Jun 27 01:35:14 1998 Jeffrey A Law (law@cygnus.com)
542
543 * choose-temp.c (choose_temp_base): Remove MPW bits. Use mkstemp
544 instead of mktemp.
545 * gcc.c (MKTEMP_EACH_FILE): Define.
546 (main): No need to call choose_temp_base if we are going to
547 use choose_temp_base to create each file later.
548 * mkstemp.c: New file. Adapted from glibc.
549 * Makefile.in (xgcc, colect2, protoize, unprotoize): Link in mkstemp.o
550 (mkstemp.o): Add dependencies.
551
552 * configure.in (gettimeofday): Check for its existance.
553 * config.in (HAVE_GETTIMEOFDAY): Define.
554 * configure: Rebuilt.
555
b4e95693
MM
5561998-06-26 Michael Meissner <meissner@cygnus.com>
557
558 * rs6000.md (ne 0, non power case): Add missing & constraint.
463b558b
MM
559 Name pattern ne0.
560 (negative abs insns): Add pattern names.
b4e95693 561
265ce5bb
DL
562Fri Jun 26 17:36:42 1998 Dave Love <d.love@dl.ac.uk>
563
564 * Makefile.in (install-info): Run install-info program in separate
565 loop.
566
e4da5f6d
MM
567Fri Jun 26 16:03:15 1998 Michael Meissner <meissner@cygnus.com>
568
569 * haifa-sched.c (schedule_block): Add hooks for the machine
570 description to reorder the ready list, and update how many more
571 instructions can be issued this cycle.
572 * tm.texi (MD_SCHED_{INIT,REORDER,VARIABLE_ISSUE}): Document.
573
db3d4438
DM
574Fri Jun 26 11:54:11 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
575
576 * config/sparc/sparc.h (REGNO_OK_FOR_{INDEX,BASE,FP,CCFP}_P):
577 Explicitly mark the constant being compared against as unsigned.
578 * config/sparc/sparc.c (sparc_select, cpu_default, cpu_table):
579 Fully initialize final members.
580 (mem_aligned_8): Explicit init of offset to zero.
581 (output_function_prologue): Explicit init of n_regs to zero.
582 (output_function_epilogue): Likewise, and mark arg size as
583 unused.
584 (init_cumulative_args): Mark libname and indirect as unused.
585 (function_arg_pass_by_reference): Likewise for cum and named.
586 (sparc_builtin_saveregs): Likewise for arglist.
587 (sparc_flat_eligible_for_epilogue_delay): Likewise for slot.
588
ed4c4348
RE
589Fri Jun 26 06:58:54 1998 Richard Earnshaw (rearnsha@arm.com)
590
591 * arm.h (SECONDARY_INPUT_RELOAD_CLASS): Only need a secondary reload
592 if reloading a MEM.
593
594 * arm.h (arm_adjust_cost): Renamed bogus prototype from
595 arm_adjust_code.
596 (bad_signed_byte_operand): Add prototype.
597 * arm.c (arm_override_options): Make I unsigned.
598 (const_ok_for_arm): Add casts to the constants.
599 (load_multiple_operation): Don't redeclare elt in sub-block.
600 (arm_gen_movstrqi): Delete external declaration of optimize.
601 (gen_compare_reg): Declare parameter fp.
602
603 * arm.c (final_prescan_insn): Only initialize scanbody if the insn
604 has a pattern.
605
3c303f52
KG
606Fri Jun 26 09:31:24 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
607
608 * alpha.c: Include system.h and toplev.h.
609 (cint8_operand): Mark parameter `mode' with ATTRIBUTE_UNUSED.
610 (const48_operand): Likewise.
611 (mode_width_operand): Likewise.
612 (mode_mask_operand): Likewise.
613 (mul8_operand): Likewise.
614 (current_file_function_operand): Likewise.
615 (signed_comparison_operator): Likewise.
616 (divmod_operator): Likewise.
617 (any_memory_operand): Likewise.
618 (alpha_return_addr): Likewise for parameter `frame'.
619 (alpha_builtin_saveregs): Likewise for parameter `arglist'.
620 (vms_valid_decl_attribute_p): Likewise for parameters `decl' and
621 `attributes'.
622 (alpha_start_function): Likewise for parameter `decl'. Use
623 HOST_WIDE_INT_PRINT_DEC in call to fprintf. Fix various format
624 specifiers. Remove unused variables `lab' and `name'.
625 (alpha_end_function): Mark parameter `decl' with ATTRIBUTE_UNUSED.
626 (check_float_value): Likewise for parameter `overflow'.
627 (alpha_need_linkage): Likewise for parameters `name' and `is_local'.
628
629 * alpha.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Define as
630 taking an argument.
631 (ASM_OUTPUT_SHORT): Cast argument to `int' in call to fprintf.
632 (ASM_OUTPUT_CHAR): Likewise.
633 (ASM_OUTPUT_BYTE): Likewise.
634 (PRINT_OPERAND_ADDRESS): Use HOST_WIDE_INT_PRINT_DEC in call to
635 fprintf.
636 (PUT_SDB_EPILOGUE_END): Mention argument `NAME' in definition.
637 Add prototypes for functions in alpha.c.
638
639 * alpha.md (ashldi3): Add default case in switch.
640
6d6393e3
MH
6411998-06-26 Manfred Hollstein <manfred@s-direktnet.de>
642
643 * Makefile.in (gcc_version, gcc_version_trigger): New macros.
644 (version): Initialize from $(gcc_version).
645
646 * configure.in (version): Rename to gcc_version.
647 (gcc_version_trigger): New variable; call AC_SUBST for it and
648 emit it into the generated config.status.
649 * configure: Regenerate.
650
30d68b86
MM
651Thu Jun 25 12:47:41 1998 Mark Mitchell <mark@markmitchell.com>
652
653 * fold-const.c (make_range): Don't go looking at TREE_OPERANDs of
654 nodes that are not expressions.
655
41472af8
MM
656Thu Jun 25 15:08:16 1998 Mark Mitchell <mark@markmitchell.com>
657
658 * invoke.texi (-fstrict-aliasing): Document.
659 * rtl.texi (MEM_ALIAS_SET): Document.
660
661 * flags.h (flag_strict_aliasing): Declare.
662 * toplev.c (flag_strict_aliasing): Define.
663 (f_options): Add -strict-aliasing.
664 (main): Set flag_strict_aliasing if -O2 or higher.
665
666 * tree.h (tree_type): Add alias_set field.
667 (TYPE_ALIAS_SET): New macro.
668 (TYPE_ALIAS_SET_KNOWN_P): Likewise.
669 (get_alias_set): Declare.
670 * tree.c (lang_get_alias_set): Define.
671 (make_node): Initialize TYPE_ALIAS_SET.
672 (get_alias_set): New function.
673 * print-tree.c (print_node): Dump the alias set for a type.
674
675 * c-tree.h (c_get_alias_set): Declare.
676 * c-common.c (c_get_alias_set): New function.
677 * c-decl.c (init_decl_processing): Set lang_get_alias_set.
678
679 * expr.c (protect_from_queue): Propogage alias sets.
680 (expand_assignment): Calculate alias set for new MEMs.
681 (expand_expr): Likewise.
682 * function.c (put_var_into_stack): Likewise.
683 (put_reg_into_stack): Likewise.
684 (gen_mem_addressof): Likewise.
685 (assign_parms): Likewise.
686 * stmt.c (expand_decl): Likewise.
687 * varasm.c (make_decl_rtl): Eliminate redundant clearing of
688 DECL_RTL. Calculate alias set for new MEMs.
689
690 * rtl.def (REG): Add dummy operand.
691 (MEM): Add extra operand to store the MEM_ALIAS_SET.
692 * rtl.h (MEM_ALIAS_SET): New macro.
693 (gen_rtx_MEM): Declare.
694 * emit-rtl.c (gen_rtx_MEM): New function.
695 * gengenrtl.c (sepcial_rtx): Make MEMs special.
696
697 * alias.c (CHECK_ALIAS_SETS_FOR_CONSISTENCY): New macro.
698 (DIFFERENT_ALIAS_SETS_P): Likewise.
699 (canon_rtx): Propogate the alias set to the new MEM.
700 (true_dependence): Check the alias sets.
701 (anti_dependence): Likewise.
702 (output_dependence): Likewise.
703 * explow.c (stabilize): Progoate alias sets.
704 * integrate.c (copy_rtx_and_substitute): Likewise.
705 * final.c (alter_subreg): Make sure not to leave MEM_IN_STRUCT_P
706 in an unpredictable state. Propogate alias sets.
707 * reload1.c (reload): Clear MEM_ALIAS_SET for new MEMs about which
708 we have no alias information.
709
9c606f69
AM
710Thu Jun 25 16:59:18 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
711
712 * except.h (CATCH_ALL_TYPE): Definition moved to eh-common.h.
713 (find_all_handler_type_matches): Add function prototype.
714 * eh-common.h (CATCH_ALL_TYPE): Definition added.
715 * except.c (find_all_handler_type_matches): Add function to find all
716 runtime type info in the exception table.
717 (output_exception_table_entry): Special case for CATCH_ALL_TYPE.
718
296b8152
KG
719Thu Jun 25 15:47:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
720
721 * Makefile.in (xcoffout.o): Depend on toplev.h, output.h and dbxout.h.
722
723 * config/fp-bit.c (_fpmul_parts): Move variables `x', `ylow',
724 `yhigh' and `bit' into the scope in which they are used.
725 (_fpdiv_parts): Remove unused variables `low', `high', `r0', `r1',
726 `y0', `y1', `q', `remainder', `carry', `d0' and `d1'.
727
728 * rs6000.c: Move include of output.h below tree.h. Include toplev.h.
729 (any_operand): Mark unused parameters `op' and `mode' with
730 ATTRIBUTE_UNUSED.
731 (count_register_operand): Likewise for parameter `mode'.
732 (fpmem_operand): Likewise.
733 (short_cint_operand): Likewise.
734 (u_short_cint_operand): Likewise.
735 (non_short_cint_operand): Likewise.
736 (got_operand): Likewise.
737 (got_no_const_operand): Likewise.
738 (non_add_cint_operand): Likewise.
739 (non_logical_cint_operand): Likewise.
740 (mask_operand): Likewise.
741 (current_file_function_operand): Likewise.
742 (small_data_operand): Likewise for parameters `op' and `mode' but
743 only when !TARGET_ELF.
744 (init_cumulative_args): Mark parameters `libname' with
745 ATTRIBUTE_UNUSED.
746 (function_arg_pass_by_reference): Likewise for parameters `cum',
747 `mode' and `named'.
748 (expand_builtin_saveregs): Likewise for parameter `args'.
749 (load_multiple_operation): Likewise for parameter `mode'.
750 (store_multiple_operation): Likewise.
751 (branch_comparison_operator): Likewise.
752 (secondary_reload_class): Likewise.
753 (print_operand): Add parentheses around & operation.
754 (output_prolog): Mark parameter `size' with ATTRIBUTE_UNUSED.
755 (output_epilog): Likewise. Cast argument to fprintf to int.
756 (rs6000_adjust_cost): Mark parameter `dep_insn' with ATTRIBUTE_UNUSED.
757 (rs6000_valid_decl_attribute_p): Likewise for parameters `decl',
758 `attributes', `identifier' and `args'.
759 (rs6000_valid_type_attribute_p): Likewise for parameter `attributes'.
760 (rs6000_comp_type_attributes): Likewise for parameters `type1' and
761 `type2'.
762 (rs6000_set_default_type_attributes): Likewise for parameter `type'.
763
764 * rs6000.h (RTX_COSTS): Add parentheses around & operation.
765 (toc_section, private_data_section, trap_comparison_operator): Add
766 prototypes.
767
768 * dbxout.h (dbxout_parms, dbxout_reg_parms, dbxout_syms): Add
769 prototypes.
770
771 * xcoffout.c: Include toplev.h, outout.h and dbxout.h.
772
773 * xcoffout.h (stab_to_sclass, xcoffout_begin_function,
774 xcoffout_begin_block, xcoffout_end_epilogue,
775 xcoffout_end_function, xcoffout_end_block,
776 xcoff_output_standard_types, xcoffout_declare_function,
777 xcoffout_source_line): Add prototypes.
778
ff73fb53
NC
779Thu Jun 25 09:54:55 1998 Nick Clifton <nickc@cygnus.com>
780
781 * config/arm/arm.h (REG_ALLOC_ORDER): Add ARG_POINTER_REGNUM,
782 noticed by grahams@rcp.co.uk.
783
ca242225
DB
784Thu Jun 25 11:12:29 1998 Dave Brolley <brolley@cygnus.com>
785
786 * gcc.c (default_compilers): Use new | syntax to eliminate
787 string concatenation.
788
acd92049
RH
789Thu Jun 25 01:00:48 1998 Richard Henderson <rth@cygnus.com>
790
791 * alpha.c (alpha_function_name): Delete.
792 (alpha_ra_ever_killed): Notice current_function_is_thunk.
793 (alpha_sa_mask, alpha_sa_size, alpha_does_function_need_gp): Likewise.
794 (alpha_start_function): Reorg from output_prologue.
795 (alpha_end_function): Reorg from output_epilogue.
796 * alpha.h (ASM_DECLARE_FUNCTION_NAME): Call alpha_start_function.
797 (ASM_DECLARE_FUNCTION_SIZE): New.
798 (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Delete.
799 (PROFILE_BEFORE_PROLOGUE): Set.
800 (ASM_OUTPUT_MI_THUNK): Remove bits now output by start/end_function.
801 * alpha/win-nt.h (ASM_OUTPUT_MI_THUNK): Likewise.
802
dd014274
JL
803Thu Jun 25 01:18:47 1998 John Wehle (john@feith.com)
804
805 * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Define.
806
8071998-06-25 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
89752202
HB
808
809 * expr.c (expand_assignment): Rework address calculation for structure
810 field members to expose more invariant computations to the loop
811 optimizer.
812 (expand_expr): Likewise.
813
c358412f
JL
814Wed Jun 24 22:44:22 1998 Jeffrey A Law (law@cygnus.com)
815
816 * local-alloc.c (block_alloc): Do not try to avoid false dependencies
817 when SMALL_REGISTER_CLASSES is nonzero.
818
a59fb797
KK
819Wed Jun 24 17:55:15 1998 Klaus Kaempf <kkaempf@progis.de>
820
821 * alpha.md (call_vms, call_value_vms): Strip leading * from symbol.
822
55a6ba9f
JC
823Wed Jun 24 16:27:23 1998 John Carr <jfc@mit.edu>
824
825 * expr.c (get_memory_rtx): New function.
826 (expand_builtin): Call get_memory_rtx for MEM arguments to builtin
827 string functions.
828
829 * expmed.c (init_expmed): Initialize all elements of *_cost arrays.
830
9e6a5703
JC
831 * optabs.c: Use gen_rtx_FOO (...) instead of gen_rtx (FOO, ...).
832 * expr.c: Likewise.
833 * explow.c: Likewise.
834 * combine.c: Likewise.
835 * reload1.c: Likewise.
836 * gcse.c: Likewise.
837
135edcfd
DB
838Wed Jun 24 15:13:01 1998 Dave Brolley <brolley@cygnus.com>
839
840 * README.gnat: Add patch for new lang_decode_options interface.
841
9a9deafc
AM
842Wed Jun 24 09:14:04 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
843
844 * except.c (start_catch_handler): Do nothing if EH is not on.
845
854b2357
MH
8461998-06-24 Manfred Hollstein <manfred@s-direktnet.de>
847
848 * configure.in (gxx_include_dir): Initialize default value depending on
6d6393e3
MH
849 new flag --enable-version-specific-runtime-libs; remove superfluous
850 default initialization afterwards.
854b2357
MH
851 * configure: Regenerate.
852
d3b107b4
DM
853Wed Jun 24 01:32:12 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
854
855 * toplev.c (rest_of_compilation): Revert May 15 change.
856
c22eaf8a
KR
857Tue Jun 23 21:27:27 1998 Ken Raeburn <raeburn@cygnus.com>
858
859 * reload.c (find_reloads): Fix check for failure to match any
860 alternative, to account for Mar 26 change in initial "best" cost.
861
d2f8cffa
DB
862Tue Jun 23 16:44:21 1998 Dave Brolley <brolley@cygnus.com>
863
864 * cpplib.c (do_line): Typo broke #line directive.
865 (cpp_message_from_errno): New function.
866 (cpp_error_from_errno): Call cpp_message_from_errno.
867 * cpplib.h (cpp_message_from_errno): New function.
868
48b24bcd
AM
869Tue Jun 23 13:38:18 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
870
871 * libgcc2.c (__get_eh_table_version, __get_eh_table_language): New
872 functions to return exception descriptor information.
873 (find_exception_handler): Pass match_info field to runtime matcher,
874 not a descriptor table entry.
875
daf21dfd
DL
876Tue Jun 23 09:30:58 1998 Dave Love <d.love@dl.ac.uk>
877
878 * cpp.texi, gcc.texi: Add @dircategory, @direntry meant to
879 accompany previous Makefile.in (install-info) change.
880
48b24bcd 881Tue Jun 23 10:06:07 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
5816cb14
AM
882
883 * eh-common.h (struct __eh_info): Remove coerced value field.
884 * libgcc2.c (find_exception_handler): Don't set coerced_value field.
885 * except.c (get_dynamic_handler_chain, get_dynamic_cleanup_chain): Use
886 POINTER_SIZE instead of Pmode.
887 (expand_start_all_catch): Call start_catch_handler() if we are not
888 using new style exceptions.
889
83de03df
CM
890Tue Jun 23 06:45:00 1998 Catherine Moore <clm@cygnus.com>
891
892 * varasm.c (assemble_variable): Remove reference to warn_bss_align.
893
5b8e7fa3
DM
894Mon Jun 22 23:57:31 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
895
896 * config/sparc/sparc.md (zero_extendhidi2, extendhisi2,
897 extendqihi2, extendqisi2, extendqidi2, extendhidi2, adddi3,
898 subdi3, negdi2, call, call_value, untyped_return, nonlocal_goto,
899 splits and peepholes): Change remaining generic gen_rtx calls to
900 specific genrtl ones.
254110c2
DM
901 * config/sparc/sparc.c: Likewise.
902
9bf09437
RH
903Mon Jun 22 22:21:46 1998 Richard Henderson <rth@cygnus.com>
904
905 * gcc.c (handle_braces): Recognize | between options as an or.
906
e31ca113
JW
907Mon Jun 22 23:13:47 1998 John Wehle (john@feith.com)
908
2b005260
JW
909 * i386/freebsd-elf.h (JUMP_TABLES_IN_TEXT_SECTION): Define as flag_pic.
910 * i386/sysv4.h (JUMP_TABLES_IN_TEXT_SECTION): Define as flag_pic.
911
e31ca113
JW
912 * i386.md (exception_receiver): Define.
913
aeb2f500
JW
914Mon Jun 22 12:01:48 1998 Jim Wilson <wilson@cygnus.com>
915
225695a4
JW
916 * Makefile.in (PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME,
917 PROTOIZE_CROSS_NAME, UNPROTOIZE_CROSS_NAME): New variables.
918 (install-common): Use them.
919
aeb2f500
JW
920 * gcse.c (add_label_notes): New function.
921 (pre_insert_insn): Call it.
922 * unroll.c (unroll_loop): Look for insns with a REG_LABEL note, and
923 pass the label to set_label_in_map.
924
efef624b
DL
925Mon Jun 22 19:01:14 1998 Dave Love <d.love@dl.ac.uk>
926
927 * Makefile.in (install-info): Fix typpo in previous change.
928
4bcfa7a8
CM
929Mon Jun 22 11:10:00 1998 Catherine Moore <clm@cygnus.com>
930
931 * varasm.c (assemble_variable): Emit alignment warning.
932
296433e1
KG
933Mon Jun 22 08:18:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
934
935 * Makefile.in (varasm.o): Depend on sdbout.h.
936 (sdbout.o): Depend on toplev.h.
937
938 * collect2.c (scan_prog_file): Cast fprintf argument to `long' and
939 use %ld specifier.
940
941 * final.c (shorten_branches): Cast first arg of `bzero' to char *.
942
943 * genextract.c (main): When creating insn-extract.c, mark variable
944 `i' with ATTRIBUTE_UNUSED.
945
946 * genpeep.c (main): When creating insn-peep.c, mark variables
947 `insn', `x' and `pat' with ATTRIBUTE_UNUSED.
948
949 * objc/init.c (__objc_tree_print): Wrap function definition in
950 macro `DEBUG'.
951
952 * objc/objc-act.c (encode_array): Cast sprintf argument to `long'
953 and use %ld specifier.
954 (adorn_decl): Likewise, twice.
955
e016950d
KG
956 * reload1.c (reload_cse_regs): Cast first arg of `bzero' to char *.
957
958 * sdbout.c: Include output.h and toplev.h.
959 (PUT_SDB_INT_VAL): Use HOST_WIDE_INT_PRINT_DEV to print argument
960 `a'. Cast `a' to HOST_WIDE_INT to force it to always be so.
961 (PUT_SDB_SIZE): Likewise.
962
963 * sdbout.h (sdbout_mark_begin_function): Add prototype.
964
965 * stmt.c (check_for_full_enumeration_handling): Cast argument of
966 `warning' to long and use %ld specifier.
967
968 * toplev.c (main): Likewise for `fprintf'.
969
970 * toplev.h (output_file_directive): Add prototype.
971
972 * unroll.c (unroll_loop): Use HOST_WIDE_INT_PRINT_DEC specifier in
973 call to `fprintf'.
974 (precondition_loop_p): Likewise.
975
976 * varasm.c Include sdbout.h.
977 (assemble_static_space): Move sometimes-unused variable `rounded'
978 into the scope in which it is used.
b3fb0b5e
KG
979
980 * mips.c (gpr_mode): Don't say `static' twice.
981
982 * cpplib.c (cpp_handle_option): Don't pass unneeded NULL to cpp_fatal.
983
984 * objc/objc-act.c (init_selector): Hide prototype and definition.
985
986 * optabs.c (gen_cond_trap): Remove unused variable `icode'.
987
988 * regmove.c (copy_src_to_dest): Likewise for `i'.
e016950d 989
cd1661d6
KG
990 * mips-tfile.c (add_local_symbol): Cast width format specifier to int.
991 (add_ext_symbol): Likewise.
992 (add_file): Likewise.
993 (parse_def): Likewise.
994 (write_varray): Use HOST_PTR_PRINTF to print a pointer. Fix
995 remaining format specifiers and arguments.
996 (write_object): Likewise, several times.
997 (read_seek): Likewise.
998 (out_of_bounds): Likewise.
999 (allocate_cluster): Likewise.
1000 (xmalloc): Likewise.
1001 (xcalloc): Likewise.
1002 (xrealloc): Likewise.
1003 (xfree): Likewise.
1004
1005 * mips-tdump.c (print_symbol): Likewise.
1006
824d9076
DL
1007Sun Jun 21 17:05:34 1998 Dave Love <d.love@dl.ac.uk>
1008
1009 * Makefile.in (install-info): Use install-info program if
1010 available, per GNU standard.
1011
9a8b0889
JL
1012Sun Jun 21 18:56:44 1998 Jeffrey A Law (law@cygnus.com)
1013
ecff22ab
JL
1014 * invoke.texi: Document -mrelax for the mn10300 and mn10200.
1015
04821e98
JL
1016 * basic-block.h (init_regset_vector): Delete declaration.
1017 * flow.c (init_regset_vector): Make it static and add a prototype.
1018
4d7fc9e7
JL
1019 * bitmap.h (debug_bitmap): Declare.
1020
9a8b0889
JL
1021 * haifa-sched.c (debug_ready_list): Make static.
1022
1023 * toplev.h (fancy_abort): Declare.
1024
27fa83c1
L
1025Sun Jun 21 18:30:13 1998 H.J. Lu (hjl@gnu.org)
1026
4d7fc9e7
JL
1027 * basic-block.h (init_regset_vector): New declaration.
1028
2086b675
L
1029 * Makefile.in (sdbout.o): Add insn-codes.h to dependency.
1030
f6781658
L
1031 * global.c: Include machmode.h amd move hard-reg-set.h before
1032 rtl.h.
1033
cc4fe0e2
L
1034 * haifa-sched.c (insn_issue_delay, birthing_insn_p,
1035 adjust_priority, print_insn_chaino): New declaration.
1036 (schedule_insns): Remove declaration.
1037 (init_target_units, get_visual_tbl_length,
1038 init_block_visualization): Add prototype.
1039
8a1ef8c9
L
1040 * integrate.c (pushdecl, poplevel): Remove declaration.
1041
9a8b0889
JL
1042 * rtl.h (expand_expr): Remove declaration.
1043
27fa83c1
L
1044 * loop.c (oballoc): Remove declaration.
1045 (replace_call_address): Add prototype.
1046
e4ad60fe
JL
1047Sun Jun 21 01:08:17 PDT 1998 Jeff Law (law@cygnus.com)
1048
1049 * version.c: Bump for snapshot.
1050
c0067dc8
JW
1051Sun Jun 21 01:16:38 1998 John Wehle (john@feith.com)
1052
1053 * i386.c (output_fp_conditional_move): Don't bother handling
1054 (cc_prev_status.flags && CC_NO_OVERFLOW) since the INSN patterns
1055 prevent this from happening.
1056
1057 * i386.md (nonlocal_goto_receiver): Delete.
1058
a24da858
L
1059Sun Jun 21 00:42:20 1998 H.J. Lu (hjl@gnu.org)
1060
1442f4eb
L
1061 * Makefile.in (crtbeginS.o, crtendS.o): Add -fno-exceptions and
1062 -DCRTSTUFFS_O.
1063 (INSTALL): cd $(srcdir) before make.
1064
a24da858
L
1065 * flow.c (allocate_for_life_analysis, init_regset_vector):
1066 Remove declaration.
1067
1068 * function.h (get_first_block_beg): New declaration.
1069
1070 * gbl-ctors.h (__do_global_dtors): Add prototype.
1071
1072 * gcov-io.h (__fetch_long): New declaration.
1073 (__store_long): Likewise.
1074 (__read_long): Likewise.
1075 (__write_long): Likewise.
1076
1077 * gcov.c (print_usage): New declaration.
1078
1079 * Makefile.in (c-iterate.o): Depend on insn-codes.h too.
1080
4ef873c2
JL
1081Sat Jun 20 00:36:16 1998 Jeffrey A Law (law@cygnus.com)
1082
c16ddde3
JL
1083 * calls.c (expand_call): Initialize "src" and "dest".
1084 * stmt.c (expand_return): Likewise.
1085 * expmed.c (extract_split_bit_field): Similarly for "result"
1086 * gcse.c (compute_hash_table): Mark first arg as unused.
1087 * jump.c (jump_optimize): Initialize reversep.
1088 * tree.c (make_node): Initialize length.
1089
f67aab2c
JL
1090 * c-common.c (check_format_info): Initialize length_char and
1091 fci to keep -Wall quiet.
1092
767f5b14
JL
1093 * except.c (jumpif_rtx): Put declaration and definition
1094 inside a suitable #ifdef.
1095 (jumpifnot_rtx): Delete dead function.
1096
5a77b5f3
JL
1097 * i386.h (output_int_conditional_move): Declare.
1098 (output_fp_conditional_move): Likewise.
2305ac0d 1099 (ix86_can_use_return_insn_p): Likewise.
5a77b5f3 1100
4ef873c2
JL
1101 * optabs.c (init_traps): Put prototype inside a suitable #ifdef.
1102
2e107e9e
GS
1103Sat Jun 20 00:27:40 1998 Graham <grahams@rcp.co.uk>
1104
1105 * alias.c: Include toplev.h
1106 * caller-save.c: Include toplev.h
1107 * combine.c: Include toplev.h
1108 * flow.c Include toplev.h
1109 * global.c: Include toplev.h
1110 * jump.c: Include toplev.h
1111 * local-alloc.c: Include toplev.h
1112 * loop.c: Include toplev.h
1113 * regmove.c: Include toplev.h
1114 * stupid.c: Include toplev.h
1115 * unroll.c: Include toplev.h
1116 * Makefile.in: Add toplev.h dependencies.
1117
29a4c5ed
JM
1118Fri Jun 19 22:40:25 1998 Jason Merrill <jason@yorick.cygnus.com>
1119
1120 * regmove.c (copy_src_to_dest): Add decl for loop_depth.
32bd96ff
JM
1121
1122 * svr4.h (ASM_GENERATE_INTERNAL_LABEL): Cast arg to unsigned.
1123 * dwarf2out.c (ASM_OUTPUT_DWARF_DATA1): Likewise.
1124 Add parens to various macros.
1125
9dfcc8db
BH
1126Fri Jun 19 23:22:42 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
1127
1128 * c-typeck.c (pop_init_level): Warn about implicit zero initialization
1129 of struct members.
1130
ee830309
JM
1131Fri Jun 19 23:06:33 1998 Jason Merrill <jason@yorick.cygnus.com>
1132
1133 * varasm.c (assemble_start_function): Add weak_global_object_name.
1134 * tree.c (get_file_function_name): Use it.
1135
2c975716
JL
1136Fri Jun 19 22:55:14 1998 Jeffrey A Law (law@cygnus.com)
1137
561592c5
JL
1138 * except.c (jumpif_rtx): Make static and add prototype.
1139 (jumpifnot_rtx): Likewise.
1140
90bf9bc4
JL
1141 * README.gnat: Add a build patch from Fred Fish.
1142
2c975716
JL
1143 * c-lang.c (GNU_xref_begin, GNU_xref_end): Deleted.
1144
3ca4021d
JL
1145 * Makefile.in (c-iterate.o): Depend on expr.h.
1146
3559eb28
L
1147Fri Jun 19 20:38:34 1998 H.J. Lu (hjl@gnu.org)
1148
19864289
L
1149 * except.h (emit_unwinder, end_eh_unwinder): Removed.
1150
90bf9bc4
JL
1151 * dwarfout.c (getpwd): Add prototype.
1152 (is_pseudo_reg, type_main_variant, is_tagged_type,
1153 is_redundant_typedef): New declaration.
1154 (output_decl): Add prototype for FUNC.
1155 (type_main_variant): Make it static.
1156 (is_tagged_type): Likewise.
1157 (is_redundant_typedef): Likewise.
1158
0d091530
L
1159 * expr.c (do_jump_by_parts_greater_rtx): Removed.
1160 (truthvalue_conversion): Likewise.
1161
3ca4021d
JL
1162 * c-iterate.c: Include "expr.h".
1163 (expand_expr): Use proper values when calling the function.
1164
0ddc9a94
L
1165 * explow.c (emit_stack_save): Add prototype for FCN.
1166 (emit_stack_restore): Likewise.
1167
e179bf0f
L
1168 * dwarf2out.c (getpwd): Add prototype.
1169
79a2acc8
L
1170 * dwarf2out.h (debug_dwarf, debug_dwarf_die): New declarations.
1171
f5a8bfff 1172 * c-typeck.c (c_expand_asm_operands): Use proper values when calling
79a2acc8 1173 expand_expr.
f5a8bfff 1174
3ab6dd7c
L
1175 * c-lex.c (yyprint): Add prototype.
1176 (check_newline, build_objc_string): Remove declaration.
1177
0bb0a00b
L
1178 * c-tree.h (comptypes_record_hook): Removed.
1179 (finish_incomplete_decl): New prototype.
1180
960b4ee6
L
1181 * alias.c (find_base_value): Add prototype.
1182 (true_dependence): Add prototype for function argument.
1183
3559eb28
L
1184 * c-aux-info.c (xmalloc): Remove declaration.
1185
bb5177ac
RL
1186Fri Jun 19 20:23:05 1998 Robert Lipe <robertl@dgii.com>
1187
1188 * i386.c: Include system.h. Remove redundant includes.
1189 (optimization_options): Mark param 'size' with ATTRIBUTE_UNUSED.
1190 (i386_cc_probably_useless_p): Likewise for 'decl', 'attributes',
1191 'identifier', 'args'.
1192 (i386_valid_type_attribute_p): Likewise for 'attributes'.
1193 (i386_comp_type_attribute_p): Likewise for 'type1', 'type2'.
1194 (function_arg_partial_nregs): Likewise for 'cum', 'mode', 'type',
1195 and 'named'.
1196 (symbolic_operand): Likewise for 'mode'.
1197 (call_insn_operand): Likewise.
1198 (expander_call_insn_operand): Likewise.
1199 (ix86_logical_operator): Likewise.
1200 (ix86_binary_operator_ok): Likewise.
1201 (emit_pic_move): Likewise.
1202 (VOIDmode_compare_op): Likewise.
1203 (is_mul): Likewise.
1204 (str_immediate_operand): Likewise.
1205 (ix86_uary_operator_ok): Likewise for 'code', 'mode', and 'operands'.yy
1206 (asm_output_function_prefix): Likewise for 'name'.
1207 (function_prologue): Likewise for 'file', and 'size'.
1208 (function_epilogue): Likewise.
1209
7e7ca3a1
JW
12101998-06-19 Jim Wilson <wilson@cygnus.com>
1211
1212 * loop.h (struct induction): Clarify comment for unrolled field.
1213 * unroll.c (find_splittable_givs): Move set of unrolled field
1214 after address validity check.
1215
c0418205
MM
1216Fri Jun 19 18:38:04 1998 Michael Meissner <meissner@cygnus.com>
1217
1218 * config/fp-bit.c (INLINE): Only define if not already defined.
1219
fe2fa3c4
MH
12201998-06-19 Manfred Hollstein <manfred@s-direktnet.de>
1221
1222 * Makefile.in (installdirs): Loop over directories in $(libsubdir)
1223 creating probably missing ones, instead of single if statements.
1224
f0b8d9aa
AS
1225Fri Jun 19 10:43:52 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1226
1227 * c-common.c (truthvalue_conversion): Protect side effects in the
1228 expression when splitting a complex value.
1229 * fold-const.c (fold): Likewise.
1230
94fb3933
KK
1231Fri Jun 19 02:31:16 1998 Klaus Kaempf (kkaempf@progis.de)
1232
1233 * cccp.c (hack_vms_include_specification): rewrite to handle
1234 '#include <dir/file.h>' correctly.
1235
de3eb7b7
L
1236Fri Jun 19 02:24:11 1998 H.J. Lu (hjl@gnu.org)
1237
1238 * config/i386/linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Defined.
1239
b4d030e5
JW
1240Fri Jun 19 02:10:10 1998 John Wehle (john@feith.com)
1241
9c8c5afb
JW
1242 * i386.c (notice_update_cc): Integer conditional moves don't
1243 affect cc0.
1244
b4d030e5
JW
1245 * i386.md (movsfcc, movdfcc, movxfcc): Use emit_store_flag
1246 to support LT, LE, GE, and GT signed integer comparisons.
1247 (movsfcc+1, movsfcc+2, movdfcc+1, movdfcc+2,
1248 movxfcc+1, movxfcc+2): Pattern doesn't match if the comparison
1249 is LT, LE, GE, or GT.
1250 (movdicc): Remove code resulting from an earlier patch which
1251 didn't apply correctly.
1252
bb173ade
RK
1253Fri Jun 19 02:00:19 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1254
1255 * reload1.c (reload_cse_regno_equal_p): If -ffloat-store, don't
1256 consider a MEM in FP mode as equal.
1257
11346e89
JL
1258Fri Jun 19 01:02:17 1998 Jeffrey A Law (law@cygnus.com)
1259
1260 * c-decl.c (duplicate_decls): Avoid setting TREE_ASM_WRITTEN for
1261 duplicate declarations of a function.
1262
76a8de12
L
1263Fri Jun 19 00:33:33 1998 H.J. Lu (hjl@gnu.org)
1264
1265 * config/float-i386.h: New.
1266
1267 * configure.in (i[34567]86-*-linux-*): Set float_format to i386.
1268
7c74b010
JW
1269Thu Jun 18 20:11:00 1998 Jim Wilson <wilson@cygnus.com>
1270
1271 * sched.c (schedule_insns): Use xmalloc not alloca for max_uid
1272 indexed arrays. Call free at the end of the function for them.
1273 * haifa-sched.c (schedule_insns): Likewise.
1274
243e7835
JW
1275Thu Jun 18 18:16:01 1998 Jim Wilson <wilson@cygnus.com>
1276
1277 * dwarf2out.c (size_of_string): Do count backslashes.
1278
bf3ad139
NC
1279Thu Jun 18 11:43:54 1998 Nick Clifton <nickc@cygnus.com>
1280
1281 * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Disallow REG+REG
1282 addressing when one register is the frame pointer or stack
1283 pointer. Disallow REG+CONST addressing in HI mode.
1284
f9df0a1d
R
1285Thu Jun 18 17:30:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1286
1287 * reload.c (find_reloads): Don't narrow scope of RELOAD_OTHER to
1288 RELOAD_FOR_INSN.
1289
cab634f2
KG
1290Thu Jun 18 09:36:50 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1291
1292 * Makefile.in (c-lang.o): Depend on output.h.
1293
1294 * c-lang.c: Include output.h.
1295
1296 * sparc.c (sparc_builtin_saveregs): Remove unused variable `fntype'.
1297
1298 * except.c (expand_builtin_eh_stub): Likewise for variable `jump_to'.
1299
1300 * genrecog.c (write_subroutine): When writing insn-recog.c, mark
1301 variables `insn', `pnum_clobbers', `x[0 .. max_depth]' and `tem'
1302 with ATTRIBUTE_UNUSED.
1303
1304 * regmove.c (copy_src_to_dest): Make function static to match its
1305 prototype.
1306
1307 * reload1.c Include hard-reg-set.h before rtl.h to get macro
1308 HARD_CONST. Include machmode.h before hard-reg-set.h.
1309
1310 * rtl.h: Prototype `retry_global_alloc' and wrap with macro
1311 HARD_CONST to protect usage of typedef HARD_REG_SET.
1312
1313 * tree.c: Prototype `_obstack_allocated_p'.
1314
1315 * varasm.c: Wrap prototype of `asm_output_aligned_bss' in macro
1316 BSS_SECTION_ASM_OP.
1317
0b17dd98
KG
1318Thu Jun 18 09:20:47 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1319
1320 * pa.c: Include system.h and toplev.h. Remove redundant code.
1321 (call_operand_address): Mark parameter `mode' with ATTRIBUTE_UNUSED.
1322 (symbolic_operand): Likewise.
1323 (symbolic_memory_operand): Likewise.
1324 (pic_label_operand): Likewise.
1325 (fp_reg_operand): Likewise.
1326 (pre_cint_operand): Likewise.
1327 (post_cint_operand): Likewise.
1328 (ireg_or_int5_operand): Likewise.
1329 (int5_operand): Likewise.
1330 (uint5_operand): Likewise.
1331 (int11_operand): Likewise.
1332 (uint32_operand): Likewise.
1333 (ior_operand): Likewise.
1334 (lhs_lshift_cint_operand): Likewise.
1335 (pc_or_label_operand): Likewise.
1336 (legitimize_pic_address): Likewise.
1337 (hppa_legitimize_address): Likewise for parameter `old'.
1338 (output_block_move): Likewise for parameter `size_is_constant'.
1339 (output_function_prologue): Likewise for parameter `size'.
1340 (output_function_epilogue): Likewise.
1341 (return_addr_rtx): Likewise for parameter `count'.
1342 (output_mul_insn): Likewise for parameter `unsignedp'.
1343 (hppa_builtin_saveregs): Likewise for parameter `arglist'.
1344 (output_bb): Likewise for parameter `operands'.
1345 (output_bvb): Likewise.
1346 (function_label_operand): Likewise for parameter `mode'.
1347 (plus_xor_ior_operator): Likewise.
1348 (shadd_operand): Likewise.
1349 (non_hard_reg_operand): Likewise.
1350 (eq_neq_comparison_operator): Likewise.
1351 (movb_comparison_operator): Likewise.
1352 (pa_combine_instructions): Likewise for parameter `insns'.
1353
1354 * pa.h: Add prototypes for functions `output_deferred_plabels',
1355 `override_options', `output_ascii', `output_function_prologue',
1356 `output_function_epilogue', `print_operand',
1357 `symbolic_expression_p', `reloc_needed', `compute_frame_size',
1358 `hppa_address_cost', `and_mask_p', `symbolic_memory_operand',
1359 `pa_adjust_cost', `pa_adjust_insn_length' and
1360 `secondary_reload_class'.
1361
ca8c3b37
JM
1362Wed Jun 17 22:28:48 1998 Jason Merrill <jason@yorick.cygnus.com>
1363
1364 * configure.in: Don't turn on collect2 unconditionally.
1365
1d22a2c1
MM
1366Wed Jun 17 20:20:48 1998 Mark Mitchell <mark@markmitchell.com>
1367
1368 * cse.c (cse_basic_block): Don't include NOTE insns in the count
1369 that is used to decide whether or not it is time to erase the
1370 equivalence table.
1371
b74390de
FS
1372Wed Jun 17 18:30:43 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
1373
1374 * rs6000/linux.h (JUMP_TABLES_IN_TEXT_SECTION): Define to zero.
1375
e0cd0770
JC
1376Wed Jun 17 19:05:03 1998 John Carr <jfc@mit.edu>
1377
1378 * haifa-sched.c (haifa_classify_insn): TRAP_IF is risky.
1379 (sched_analyze_2): Allow scheduling TRAP_IF.
1380
1381 * reorg.c (mark_referenced_resources): Examine operands of TRAP_IF.
1382
1383 * rtl.h (TRAP_CODE): New macro.
1384
1385 * rtl.def (TRAP_IF): Change second operand type to rtx.
1386
1387 * optabs.c (gen_cond_trap): New function.
1388 (init_traps): New function.
1389 (init_optabs): Call init_traps.
1390 * expr.h: Declare gen_cond_trap.
1391
1392 * jump.c (jump_optimize): Optimize jumps to and around traps.
1393
1394 * sparc.md: Define trap instructions.
1395
1396 * rs6000.md: Define trap instructions.
1397 * rs6000.c (print_operand): New code 'V' for trap condition.
1398 (trap_comparison_operator): New function.
1399
1400 * m88k.md: Update use of TRAP_IF.
1401
1402 * tree.h (enum built_in_function): New function code BUILT_IN_TRAP.
1403 * c-decl.c (init_decl_processing): New builtin __builtin_trap.
1404 * expr.c (expand_builtin): Handle BUILT_IN_TRAP.
1405
1406 * expr.c (expand_builtin): Error if __builtin_longjmp second argument
1407 is not 1.
1408
4fdf79cb
CM
1409Wed Jun 17 15:20:00 PDT 1998 Catherine Moore <clm@cygnus.com>
1410
1411 * reload1.c (spill_hard_reg): Check mode of register when
1412 spilling from scratch_list.
1413
d7e78529
AM
1414Wed Jun 17 16:25:38 EDT 1998 Andrew MacLeod (amacleod@cygnus.com)
1415
1416 * except.c (add_new_handler): fix bug in finding last region handler.
1417 * libgcc2.c (find_exception_handler): Pass exception table pointer
1418 to runtime type matcher, not the match info field.
1419
3301dc51
AM
1420Wed Jun 17 15:57:48 EDT 1998 Andrew MacLeod (amacleod@cygnus.com)
1421
1422 * eh-common.h (struct eh_context): Add comment for hidden use of
1423 field dynamic_handler_chain.
1424 * except.c (get_dynamic_handler_chain): Comment on, and use the
1425 correct offset of the dynamic_handler_chain field.
1426
33f264af
JW
14271998-06-17 12:46:56 1998 Jim Wilson <wilson@cygnus.com>
1428
1429 * mips/iris6.h (LINK_SPEC): Add -woff 131.
1430
d460fb3c
JM
14311998-06-17 Jason Merrill <jason@yorick.cygnus.com>
1432
1433 * dwarf2out.c: Disable EH_FRAME_SECTION if we don't have .init.
1434
1435 * configure.in: Don't disable collect2 when we have GNU ld.
1436
4c738570
JL
1437Wed Jun 17 08:38:13 1998 Jeffrey A Law (law@cygnus.com)
1438
7d12cee1
JL
1439 * fold-const.c (make_range): Do not widen the type of the expression.
1440
dbecbbe4
JL
1441 * expr.c (check_max_integer_computation_mode): New function.
1442 (expand_expr): Avoid integer computations in modes wider than
1443 MAX_INTEGER_COMPUTATION_MODE.
1444 * fold-const.c (fold): Likewise.
1445 * tree.h (check_max_integer_computation_mode): Declare.
1446 * tm.texi (MAX_INTEGER_COMPUTATION_MODE): Document it.
1447
4b95eb49
JL
1448 * configure.in (nm): Make a link to "nm" in the build tree too.
1449
4c738570
JL
1450 * mn10300.md (andsi3): Fix typo.
1451
33ab8de0
RH
1452Tue Jun 16 22:58:40 1998 Richard Henderson <rth@cygnus.com>
1453
1454 * reload1.c (reload_cse_regs): Call bzero instead of looping.
1455
bf20f341
JW
1456Tue Jun 16 18:30:35 1998 Jim Wilson <wilson@cygnus.com>
1457
1458 * dwarf2out.c (stripattributes): Prepend '*' to the section name.
1459
9c0e94a5
RH
1460Tue Jun 16 16:49:26 1998 Richard Henderson <rth@cygnus.com>
1461
1462 * alpha.c (alpha_expand_prologue, alpha_expand_epilogue): New fns.
1463 (output_prologue, output_epilogue): Merge VMS and OSF versions;
1464 Remove anything related to the actual code generation.
1465 (output_end_prologue): New function.
1466 (alpha_sa_mask, alpha_sa_size): Merge VMS and OSF versions.
1467 (alpha_does_function_need_gp): Return false for VMS.
1468 (alpha_function_needs_gp): Make static.
1469 (add_long_const): Delete.
1470 (summarize_insn): Don't assume a SUBREG is of a REG.
1471 Prototype all static functions. Rename VMS-specific global
1472 variables vms_*.
1473 * alpha.h (TARGET_CAN_FAULT_IN_PROLOGUE): Default to 0.
1474 (FUNCTION_BOUNDARY): Align to cache line.
1475 (LOOP_ALIGN, ALIGN_LABEL_AFTER_BARRIER): Align to octaword.
1476 (FUNCTION_END_PROLOGUE): New macro.
1477 * alpha.md (attribute length): New. Mark all insns.
1478 (return_internal, prologue_stack_probe_loop) New patterns.
1479 (prologue, init_fp, epilogue): New patterns.
1480 Disable peepholes.
1481 * linux.h (TARGET_CAN_FAULT_IN_PROLOGUE): Define.
1482
ad1da1de
DB
1483Tue Jun 16 17:36:35 1998 Dave Brolley <brolley@cygnus.com>
1484
1485 * toplev.c (lang_options): Add -trigraphs option for cpplib.
1486
75528b80
R
1487Tue Jun 16 23:33:24 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
1488
1489 * reload1.c (reload_reg_free_before_p): RELOAD_FOR_OUTADDR_ADDRESS
1490 is earlier than RELOAD_FOR_OUTPUT_ADDRESS; RELOAD_FOR_INPADDR_ADDRESS
1491 is earlier than RELOAD_FOR_INPUT_ADDRESS.
1492
42b82dd3
JW
1493Tue Jun 16 13:15:16 1998 Jim Wilson <wilson@cygnus.com>
1494
1495 * libgcc1-test.c (memcpy): Define.
1496
6f6074ea
MM
1497Tue Jun 16 13:44:02 1998 Michael Meissner <meissner@cygnus.com>
1498
1499 * genattrtab.c (struct attr_desc): Change int flags to bit
1500 fields. Add bit fields for this being function_units_used
1501 or *_blockage_range attributes.
1502 (write_unit_name): New function to print a function unit name
1503 given unit #.
1504 (expand_units): Indicate whether this is function_units_used or
1505 *_blockage_range attributes.
1506 (write_toplevel_expr): Print function_units_used and
1507 *_blockage_range attributes in a more friendly fashion.
1508 (make_internal_attr): Indicate whether this attribute is either
1509 function_units_used or *_blockage_range.
1510
ddc8bed2
MM
1511Mon Jun 15 17:06:43 1998 Michael Meissner <meissner@cygnus.com>
1512 Jim Wilson <wilson@cygnus.com>
3bd89472 1513
ddc8bed2
MM
1514 * regmove.c (copy_src_to_dest): Do not copy src to dest if either
1515 the source or destination is special.
3bd89472 1516
ddc8bed2 1517Mon Jun 15 13:20:33 1998 Jim Wilson <wilson@cygnus.com>
a7db2896 1518
ddc8bed2 1519 * c-decl.c (shadow_tag_warned): Use specs not declspecs in for loop.
a7db2896 1520
d61d494a
JL
1521Mon Jun 15 07:16:29 PDT 1998 Jeff Law (law@cygnus.com)
1522
1523 * version.c: Bump for snapshot.
1524
a08432bd
KW
1525Sat Jun 13 13:10:40 1998 Krister Walfridsson <cato@df.lth.se>
1526
1527 * config/sparc/netbsd.h (DEFAULT_PCC_STRUCT_RETURN): Undefine before
1528 redefining it.
1529
a4ea8d97
DE
1530Fri Jun 12 18:06:45 1998 Doug Evans <devans@egcs.cygnus.com>
1531
1532 * m32r/m32r.h (STARTFILE_SPEC): Delete crtsysc.o.
416db271 1533 (ENDFILE_SPEC): Add -lgloss.
a4ea8d97 1534
38831dfe
KG
1535Fri Jun 12 14:57:59 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1536
1537 * mips.c (small_int): Mark parameter `mode' with ATTRIBUTE_UNUSED.
1538 (large_int): Likewise.
1539 (pc_or_label_operand): Likewise.
1540 (call_insn_operand): Likewise.
1541 (consttable_operand): Likewise.
1542 (m16_uimm3_b): Likewise.
1543 (m16_simm4_1): Likewise.
1544 (m16_nsimm4_1): Likewise.
1545 (m16_simm5_1): Likewise.
1546 (m16_nsimm5_1): Likewise.
1547 (m16_uimm5_4): Likewise.
1548 (m16_nuimm5_4): Likewise.
1549 (m16_simm8_1): Likewise.
1550 (m16_nsimm8_1): Likewise.
1551 (m16_uimm8_1): Likewise.
1552 (m16_nuimm8_1): Likewise.
1553 (m16_uimm8_m1_1): Likewise.
1554 (m16_uimm8_4): Likewise.
1555 (m16_nuimm8_4): Likewise.
1556 (m16_simm8_8): Likewise.
1557 (m16_nsimm8_8): Likewise.
1558 (m16_usym8_4): Likewise.
1559 (m16_usym5_4): Likewise.
1560 (mips_move_1word): Change type of variable `i' from int to size_t.
1561 (mips_move_2words): Likewise.
1562 (output_block_move): Mark parameter `libname' with ATTRIBUTE_UNUSED.
1563 (function_arg_advance): Use HOST_PTR_PRINTF to print an address.
1564 (function_arg): Likewise.
1565 (function_arg_partial_nregs): Mark parameter `named' with
1566 ATTRIBUTE_UNUSED.
1567 (override_options): Use ISDIGIT instead of isdigit.
1568 (mips_output_external): Mark parameter `file' with ATTRIBUTE_UNUSED.
1569 (final_prescan_insn): Likewise for parameters `opvec' and `noperands'.
1570 (save_restore_insns): Cast HOST_WIDE_INT arguments passed to
1571 function `fatal' to long before printing. Use
1572 HOST_WIDE_INT_PRINT_DEC in fprintf. Both changes done several
1573 times in this function.
1574 (function_prologue): Mark parameter `size' with ATTRIBUTE_UNUSED.
1575 (function_epilogue): Likewise for parameters `file' and `size'.
1576 Print an int with "%d" not "%ld".
1577 (mips_select_rtx_section): Mark parameter `x' with ATTRIBUTE_UNUSED.
1578 (mips_function_value): Likewise for parameter `func'.
1579 (function_arg_pass_by_reference): Likewise for parameters `cum'
1580 and `named'.
1581 (extend_operator): Likewise for parameter `mode'
1582 (highpart_shift_operator): Likewise.
1583
1584 * mips.md (mul_acc_si): Remove unused variable `macc'.
1585
77a45a2e
RH
1586Fri Jun 12 09:33:44 1998 Richard Henderson <rth@cygnus.com>
1587
1588 * fold-const.c (fold): Revert last change. It breaks constant
1589 expressions somehow.
1590
8d62b411
AS
1591Fri Jun 12 10:23:36 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1592
1593 * expr.c (do_jump, case EQ_EXPR, NE_EXPR): When comparing complex
1594 prevent operands from being evaluated twice.
1595
cac45626
SO
1596Fri Jun 12 00:50:27 1998 Sergey Okhapkin <sos@prospect.com.ru>
1597
1598 * toplev.c (lang_options): Add -remap as a preprocessor option.
1599
9bc6d2c2
JW
1600Fri Jun 12 00:30:32 1998 John Wehle (john@feith.com)
1601
1602 * i386.md (cmpsi_1, cmphi_1, cmpqi_1): Remove code
1603 which set CC_REVERSED since reload should ensure that
1604 the operands are already the correct type.
1605
fb95c8c9
JW
1606Thu Jun 11 17:14:15 1998 Jim Wilson <wilson@cygnus.com>
1607
1608 * except.c (expand_builtin_eh_stub): Call emit_move_insn rather than
1609 calling gen_rtx_SET.
1610
95009288
DE
1611Thu Jun 11 18:45:49 1998 David Edelsohn <edelsohn@mhpcc.edu>
1612
1613 * config/rs6000/x-aix43 (AR): Delete.
1614 (AR_FOR_TARGET_FLAGS): Add -X32_64 here.
1615
bf6f78d1
DS
1616Thu Jun 11 16:19:17 1998 David W. Schuler <schuld@btv.ibm.com>
1617
1618 * config/i386/aix386ng.h (CPP_SPEC): Remove extraneous quote.
1619
45cc4c09
JW
1620Thu Jun 11 12:40:27 1998 Jim Wilson <wilson@cygnus.com>
1621
1622 * mips.c (override_options): Replace word_mode with explicit
1623 TARGET_64BIT check.
1624
ecb75b7a
MM
1625Thu Jun 11 14:50:02 1998 Michael Meissner <meissner@cygnus.com>
1626
1627 * regmove.c (regmove_optimize): If we can't replace the
1628 destination in an insn that sets the source, generate an explicit
1629 move of the source to the destination.
1630 (copy_src_to_dest): New function.
1631 (toplevel): Include basic-block.h
1632
1633 * Makefile.in (regmove.o): Add basic-block.h dependencies.
1634
8e34149d
DB
1635Thu Jun 11 10:30:09 1998 Dave Brolley <brolley@cygnus.com>
1636
1637 * toplev.c (lang_options): Add missing options (nostdinc, idirafter).
1638
8358a974
MM
1639Wed Jun 10 23:39:32 1998 Mark Mitchell <mark@markmitchell.com>
1640
1641 * rtl.h (rtx_def): Improve documentation.
1642 (MEM_IN_STRUCT_P): Likewise.
1643
e80716de
GS
1644Wed Jun 10 23:23:17 1998 Graham <grahams@rcp.co.uk>
1645
1646 * c-decl.c (start_decl): Correct test for -Wmain.
1647
b3fbc9ad
GS
1648 * c-decl.c (grokdeclarator): Remove unused variable "last".
1649
3e2b9a3d
JW
1650Wed Jun 10 14:52:27 1998 Jim Wilson <wilson@cygnus.com>
1651
1652 * expr.c (expand_builtin_setjmp): Store const1_rtx in target.
1653 (expand_builtin_longjmp): Abort if value isn't const1_rtx.
1654 Delete code storing value in static_chain_rtx.
1655 (expand_builtin, case BUILT_IN_LONGJMP): Pass NULL_RTX for target
1656 to second expand_expr call.
1657
748b909e
MM
1658Wed Jun 10 13:08:41 1998 Mark Mitchell <mark@markmitchell.com>
1659
1660 * mips/mips.c: Remove -mabi=o32 and -mabi=n64.
1661
e061d1ce
DB
1662Wed Jun 10 13:41:23 1998 Dave Brolley <brolley@cygnus.com>
1663
1664 * cppmain.c (fatal): New function.
1665 * configure.in (cpp_main): New configuration variable.
1666 * configure: Regenerated.
e80716de
GS
1667 * Makefile.in (CCCP): Use a configuration variable to select basex
1668 for cccp.
e061d1ce
DB
1669 (cppmain$(exeext)): Add @extra_cpp_objs@.
1670
a0d85b75
DB
1671Wed Jun 10 13:07:02 1998 Dave Brolley <brolley@cygnus.com>
1672
1673 * objc/objc-act.c: Add cpplib declarations.
1674 (lang_decode_option): Initialize cpplib if necessary.
1675 (lang_decode_option): New argc/argv interface.
1676 * tree.h (lang_decode_option): New argc/argv interface.
1677 * toplev.c (lang_options): Add cpp options.
1678 (main): New interface for lang_decode_option.
1679 * gcc.c (default_compilers): Don't call cpp for a cpplib-enabled C compiler
1680 unless -E, -M or -MM is specified.
1681 * cpplib.h (cpp_handle_option): New function.
1682 * cpplib.c (cpp_handle_option): New function.
1683 (cpp_handle_options): Now calls cpp_handle_option.
1684 * c-tree.h (c_decode_option): New argc/argv interface.
1685 * c-lex.c (init_parse): cpplib now initialized in c_decode_option.
1686 * c-lang.c (lang_decode_option): New argc/argv interface.
1687 * c-decl.c: Add cpplib declarations.
1688 (c_decode_option): New argc/argv interface.
1689 (c_decode_option): Call cpp_handle_option.
1690 (c_decode_option): Now returns number of strings processed.
1691
95193030
RE
1692Wed Jun 10 09:47:13 1998 Richard Earnshaw (rearnsha@arm.com)
1693
1694 * unroll.c (verify_addresses): Use validate_replace_rtx to undo the
1695 changes. Abort if the undo fails.
1696
e74e8c84
VM
16971998-06-10 Vladimir N. Makarov <vmakarov@cygnus.com>
1698
1699 * config/rs6000/rs6000.c (output_prolog): Change locations and
1700 directions of saving and restoring arguments of main on the stack.
1701
0254c561
JC
1702Wed Jun 10 08:56:27 1998 John Carr <jfc@mit.edu>
1703
1704 * reload1.c (reload_cse_simplify_operands): Do not call gen_rtx_REG
1705 for each alternative. Do not replace a CONST_INT with a REG unless
1706 the reg is cheaper.
1707
0365438d
JL
1708Wed Jun 10 02:11:55 1998 Jeffrey A Law (law@cygnus.com)
1709
07fb7f79
JL
1710 * decl.c (init_decl_processing): Fix typo.
1711
bfed8dac
JL
1712 * mips.c (gpr_mode): New variable.
1713 (override_options): Initialize gpr_mode.
1714 (compute_frame_size): Use "gpr_mode" instead of "word_mode" to
1715 determine size and offset of general purpose registers save slots.
1716 (save_restore_insns, mips_expand_prologue): Similarly.
1717
0365438d
JL
1718 * reload.c (find_reloads_toplev): Use gen_lowpart common to convert
1719 between constant representations when we have (SUBREG (REG)) with
1720 REG equivalent to a constant.
1721
e6bcfef9
JS
1722Wed Jun 10 01:39:00 1998 Juha Sarlin <juha@c3l.tyreso.se>
1723
1724 * h8300.c (get_shift_alg): Add special cases for shifts of 8 and 24.
1725
ac1fdb22
RH
1726Tue Jun 9 22:05:34 1998 Richard Henderson <rth@cygnus.com>
1727
1728 * fold-const.c (fold): Even with otherwise constant trees, look for
1729 opportunities to combine integer constants.
1730
1c5d60f5
JW
1731Wed Jun 3 23:41:24 EDT 1998 John Wehle (john@feith.com)
1732
9d932d43
JW
1733 * i386.c (notice_update_cc): Clear cc_status.value2 in the
1734 case of UNSPEC 5 (bsf).
1735
1c5d60f5
JW
1736 * i386.md (movsfcc, movdfcc, movxfcc): The floating point
1737 conditional move instructions don't support signed integer
1738 comparisons.
1739
f1be41ad
NC
1740Tue Jun 9 14:31:19 1998 Nick Clifton <nickc@cygnus.com>
1741
1742 * config/v850/t-v850 (TCFLAGS): Add assembler options to warn of
1743 overlfows.
1744
1745 * config/v850/lib1funcs.asm (__return_interrupt): Use 'addi
1746 16,sp,sp' ratehr than 'add 16,sp'. Patch courtesy of Biomedin
1747 <glctr@abc.it>.
1748
0d3453df
AM
1749Tue Jun 9 16:23:13 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
1750
1751 * except.c (expand_start_catch): Rename to start_catch_handler.
1752 (expand_end_catch): Delete function.
1753 (expand_end_all_catch): Remove catch status that expand_end_catch
1754 use to do.
1755 * except.h (expand_start_catch): Rename prototype.
1756 (expand_end_catch): Delete prototype.
1757
3398f47f
MM
1758Tue Jun 9 12:57:32 1998 Mark Mitchell <mark@markmitchell.com>
1759
1760 * invoke.texi: Add documentation for -mips4 and -mabi=*.
1761
6805ef53
KK
1762Tue Jun 9 12:12:34 1998 Klaus Kaempf (kkaempf@progis.de)
1763
1764 * alpha/vms.h (EXTRA_SECTIONS): Add in_ctors and in_dtors.
1765 (EXTRA_SECTION_FUNCTIONS): Add ctors_section and dtors_section.
1766 (ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Define.
1767
9ae4ec46
JC
1768Tue Jun 9 12:10:27 1998 John Carr <jfc@mit.edu>
1769
1770 * haifa-sched.c (update_flow_info): Use UNITS_PER_WORD, not MOVE_MAX,
1771 as the threshold to permit splitting memory operations.
1772
624a8b3a
JL
1773Tue Jun 9 12:36:16 1998 Jeffrey A Law (law@cygnus.com)
1774
1c5d60f5
JW
1775 * mips.c (gpr_mode): New variable.
1776 (override_options): Initialize gpr_mode.
1777 (compute_frame_size): Use "gpr_mode" instead of "word_mode" to
1778 determine size and offset of general purpose registers save slots.
1779 (save_restore_insns, mips_expand_prologue): Similarly.
1780
624a8b3a
JL
1781 * Makefile.in (LIB2FUNCS_EH): Define. Just "_eh" for now.
1782 (LIBGCC2_CFLAGS): Remove -fexceptions.
1783 (LIB2FUNCS): Remove "_eh".
1784 (libgcc2.a): Iterate over LIB2FUNCS_EH and build everything in
1785 it with -fexceptions.
1786
1787 * Makefile.in (local-alloc.o): Depend on insn-attr.h.
1788 * local-alloc.c (block_alloc): Avoid creating false
1789 dependencies for targets which use instruction scheduling.
1790
674576f1
RH
1791Tue Jun 9 02:40:49 1998 Richard Henderson <rth@cygnus.com>
1792
1793 * mips/elf.h (ASM_DECLARE_OBJECT_NAME): Define.
1794 (ASM_FINISH_DECLARE_OBJECT): Define;
1795 * mips/elf64.h: Likewise.
1796
5dd57225 1797Tue Jun 9 01:08:47 1998 Richard Henderson <rth@cygnus.com>
602ad236 1798
5dd57225 1799 * toplev.c (flag_new_exceptions): Remove extraneous `extern'.
b8211569 1800
5dd57225 1801Mon Jun 8 23:24:48 PDT 1998 Jeff Law (law@cygnus.com)
ac4bac77
JL
1802
1803 * version.c: Bump for snapshot.
1804
a2f270cc
DE
1805Mon Jun 8 23:24:58 1998 David Edelsohn <edelsohn@mhpcc.edu>
1806
1807 * rs6000.md (mulsidi3): Add !TARGET_POWERPC64 constraint.
1808 (mulsidi3_ppc64): Delete.
1809
50b2596f
KG
1810Mon Jun 8 20:57:40 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1811
1812 * Makefile.in (varasm.o): Depend on dbxout.h.
1813 (cse.o): Depend on toplev.h and output.h.
1814 (gcse.o): Depend on output.h.
1815
1816 * mips.c: Include system.h and toplev.h and remove redundant code.
1817 Include output.h after tree.h so all its prototypes get activated.
1818 * mips.md (table_jump): Remove unused variable `dest'.
1819
1820 * sparc.h: Add prototype for `v8plus_regcmp_op'.
1821
1822 * crtstuff.c (fini_dummy, init_dummy): Mark function definitions
1823 with __attribute__ ((__unused__)).
1824 (__frame_dummy): Provide prototype before use, wrap it with
1825 EH_FRAME_SECTION_ASM_OP.
1826
1827 * cse.c: Move inclusion of <setjmp.h> above local headers.
1828 Include toplev.h and output.h.
1829
1830 * dbxout.h: Add prototype for `dbxout_begin_function'.
1831
1832 * final.c (final_scan_insn): Wrap variable `max_skip' in macro
1833 ASM_OUTPUT_MAX_SKIP_ALIGN.
1834
1835 * gcse.c: Include system.h and output.h.
1836 (dump_cuid_table, dump_rd_table, dump_cprop_data, dump_pre_data):
1837 Make extern instead of static.
1838 (compute_can_copy): Only declare variables `reg' and `insn' when
1839 AVOID_CCMODE_COPIES is not defined.
1840 (record_set_info): Mark parameter `setter' with ATTRIBUTE_UNUSED.
1841 (hash_scan_clobber): Likewise for `x' and `insn'.
1842 (hash_scan_call): Likewise.
1843 (record_last_set_info): Likewise for `setter'.
1844 (mark_call): Likewise for `pat'.
1845 (pre_insert_insn): Wrap variable `note' in macro HAVE_cc0.
1846
1847 * libgcc2.c (__bb_init_prg): Replace bzero with memset and fix the
1848 length parameter so that it multiplies the number of elements by
1849 the sizeof(element).
1850
1851 * output.h: Add prototype for `weak_finish'.
1852
1853 * recog.h: Likewise for `validate_replace_src'.
1854
1855 * rtl.h: Likewise for `optimize_save_area_alloca',
1856 `fix_sched_param', `purge_addressof', `gcse_main',
1857 `regmove_optimize', `dbr_schedule', `branch_prob' and
1858 `end_branch_prob'.
1859
1860 * toplev.h: Likewise for `set_float_handler' and
1861 `output_quoted_string'.
1862
1863 * varasm.c: Include dbxout.h.
1864
33d7a521
JW
1865Mon Jun 8 18:12:06 1998 Jim Wilson <wilson@cygnus.com>
1866
1867 * mips.c (mips_secondary_reload_class): Use gp_reg_p instead of
1868 GP_REG_P. Use gr_regs instead of GR_REGS.
1869
cb923660
KR
1870Mon Jun 8 16:54:12 1998 Ken Raeburn <raeburn@cygnus.com>
1871 Jeff Law <law@cygnus.com>
1872
1873 * Revamped multiply support for MIPS chips.
1874 * mips.c (extend_operator): New function.
1875 (highpart_shift_operator): Likewise.
1876 * mips.h: Declare new functions.
1877 (PREDICATE_CODES): Add support for new predicates.
1878 * mips.md (mulsi3 expander): Simplify.
1879 (mulsi_mult3): Add another constraint alternative. Support
1880 3 operand multiply instructions as found on various mips
1881 parts.
1882 (mulsi3_r4650): Delete pattern, now handled by mulsi_mult3.
1883 (mul_acc_si): New pattern and associated splitters.
1884 (mulsidi3 expander): Rework to use mulsidi3_64bit and
1885 mulsidi3_internal.
1886 (umulsidi3): New expander.
1887 (mulsidi3_internal): Accept either sign or zero extended
1888 operands and generate code as appropriate appropriately.
1889 (mulsidi3_64bit): Similarly.
1890 (smulsi3_highpart): Turn into an expander and generate code
1891 to match new patterns.
1892 (umulsi3_highpart): Likewise.
1893 (xmulsi3_highpart_internal): New pattern.
1894 (maddi patterns): Delete. Replace with:
1895 (mul_acc_di, mul-acc_64bit_di): New patterns.
1896
a1622f83
AM
1897Mon Jun 8 14:16:15 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
1898
1899 * eh-common.h: Remove NEW_EH_MODEL compile time flag, and replace with
1900 flag_new_exceptions runtime flag.
1901 (struct old_exception_table): New struct which represents what
1902 the exception table looks like without the new model.
1903 (NEW_EH_RUNTIME): New value used as a tag in the exception table to
1904 flag that this is a new style table.
1905 * except.h: Remove compile time flag NEW_EH_MODEL.
1906 (expand_builtin_eh_stub_old): New prototype.
1907 * tree.h (enum built_in_function): Add BUILT_IN_EH_STUB_OLD.
1908 * expr.c (expand_builtin): New builtin func BUILT_IN_EH_STUB_OLD.
1909 * c-decl.c (init_decl_processing): Add new builtin function
1910 __builtin_eh_stub_old.
1911 * final.c (final_scan_insn): Replace compile time flag NEW_EH_MODEL.
1912 * flags.h (flag_new_exceptions): New runtime flag.
1913 * toplev.c (flag_new_exceptions): Initialize default to 0,
1914 -fnew-exceptions sets to 1.
1915 * except.c (output_exception_table_entry): Output New style exception
1916 identifier into table, and replace compile time flag NEW_EH_MODEL
1917 with runtime flag flag_new_exceptions.
1918 (output_exception_table): Replace compile time flag NEW_EH_MODEL.
1919 (expand_builtin_eh_stub_old): Duplicates original functionality of
1920 expand_builtin_eh_stub.
1921 (expand_builtin_eh_stub): Replace compile time flag NEW_EH_MODEL.
1922 * libgcc2.c (find_exception_handler): Remove NEW_EH_MODEL #ifdefs.
1923 (old_find_exception_handler): New func, same as find_exception_handler
1924 except it works on the old style exception table.
1925 (__throw): Replace NEW_EH_MODEL. Detect new model based on presence
1926 of identifier in the exception table, and call appropriate routines.
1927
aeb302bb
JM
1928Mon Jun 8 01:21:13 1998 Jason Merrill <jason@yorick.cygnus.com>
1929
1930 * function.c: Define current_function_cannot_inline.
1931 (push_function_context_to): Save it.
1932 (pop_function_context_from): Restore it.
1933 * function.h (struct function): Provide it a home.
1934 * output.h: Declare it.
1935 * integrate.c (function_cannot_inline_p): Check it.
1936
8b015896 1937Mon Jun 8 10:43:15 1998 Richard Henderson <rth@cygnus.com>
9a14a3ab 1938
8b015896
RH
1939 * expr.c (force_operand): Detect PIC address loads before
1940 splitting arithmetic.
2b4065a4 1941
8b015896 1942Mon Jun 8 09:22:38 PDT 1998 Jeff Law (law@cygnus.com)
209c9866
JL
1943
1944 * version.c: Bump for snapshot.
1945
79990a39
GS
1946Mon Jun 8 02:55:56 1998 Graham <grahams@rcp.co.uk>
1947
1948 * tree.c (tree_class_check): Add braces to eliminate ambigious
1949 else warning.
1950 (tree_check): Likewise.
1951
49fa02d9
L
1952Mon Jun 8 02:49:23 1998 H.J. Lu (hjl@gnu.org)
1953
1954 * reg-stack.c (subst_stack_regs_pat): Make sure the top of
1955 stack is the destination for conditional move insn.
1956
52267fcb
JM
1957Mon Jun 8 01:21:13 1998 Jason Merrill <jason@yorick.cygnus.com>
1958
1959 * tree.h (TREE_VEC_END): Cast unused value to void.
1960
1961 * i386.c (print_operand): Use %lx for long operand.
1962
2b01d264
RH
1963Mon Jun 8 00:04:07 1998 Richard Henderson <rth@cygnus.com>
1964
1965 * alpha.c (summarize_insn): Ignore rtl slot format 'i'.
1966
cb9e12a7
JC
1967Sun Jun 7 14:15:45 1998 John Carr <jfc@mit.edu>
1968
1969 * sol2.h (INIT_SUBTARGET_OPTABS): Use Solaris libc float/long long
1970 conversion functions.
1971
b53beeb2
RH
1972Sun Jun 7 14:02:58 1998 Richard Henderson <rth@cygnus.com>
1973
1974 * toplev.c (flag_exceptions): Default to 0.
1975 (compile_file): Remove flag_exceptions == 2 hack.
1976 (main): Call lang_init_options.
1977 * tree.h: Declare it.
1978 * c-lang.c: Implement it.
1979 * objc/objc-act.c: Likewise.
1980
dfdfa60f
DE
1981Sun Jun 7 12:27:30 1998 David Edelsohn <edelsohn@mhpcc.edu>
1982
1983 * rs6000.md (restore_stack_block): Generate MEM and specify mode.
1984 * rs6000.h (STACK_SAVEAREA_MODE): SAVE_FUNCTION is VOIDmode.
1985 * rs6000.c (rs6000_output_load_toc_table): Use fputs.
1986 (output_function_profiler): Use asm_fprintf and fputs.
1987
83e0821b
KG
1988Sat Jun 6 12:17:12 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1989
1990 * gencheck.c: Remove redundant stdio.h include. Add a definition
1991 of xmalloc for when we are forced to link with alloca.o.
1992
1993 * reload1.c (reload_reg_free_for_value_p): Use `(unsigned)1'
1994 instead of `1U'.
1995
1996 * fold-const.c (constant_boolean_node): Make definition static to
1997 match the prototype.
1998
6ff0d2a0
PB
1999Fri Jun 5 15:53:17 1998 Per Bothner <bothner@cygnus.com>
2000
2001 * gcc.c (lang_specific_pre_link): New LANG_SPECIFIC_DRIVER function.
2002 (lang_specific_extra_outfiles): New LANG_SPECIFIC_DRIVER variable.
2003 (do_spec, input_filename, input_filename_length): Make public.
2004 (main): Adjust outfiles allocation by lang_specific_extra_outfiles.
2005 Call lang_specific_pre_link befor elinking.
2006
2db45993
JL
2007Fri Jun 5 12:29:28 1998 Jeffrey A Law (law@cygnus.com)
2008
2009 * haifa-sched.c (rank_for_schedule): For "equally good insns", prefer
2010 the insn which has the most insns dependent on it.
2011
74186471
JC
2012Fri Jun 5 09:03:22 1998 John Carr <jfc@mit.edu>
2013
2014 * alias.c (find_base_value): Avoid reading past end of reg_base_value.
2015
989f090c
RH
2016Fri Jun 5 03:05:34 1998 Richard Henderson <rth@cygnus.com>
2017
2018 * alpha.md (insxh-1): New insxl pattern for combine.
2019
b657fc39
L
2020Fri Jun 5 01:12:15 1998 H.J. Lu (hjl@gnu.org)
2021
2022 * i386/i386.c (output_fp_conditional_move): New function
2023 to output floating point conditional move.
2024 (output_int_conditional_move): New function to output integer
2025 conditional move.
2026
2027 * i386/i386.md (movsicci+5, movhicc+5, movdicc+5): Call
2028 output_int_conditional_move () to output int conditional move.
2029 (movsfcc+5, movdfcc+5, movxfcc+5): Call
2030 output_fp_conditional_move () to output floating point
2031 conditional move.
2032
2033 * i386/i386.c (put_condition_code): In INT mode, check
2034 cc_prev_status.flags & CC_NO_OVERFLOW for GE and LT.
2035
202fe2d6
DB
2036Thu Jun 4 16:09:51 1998 Dave Brolley <brolley@cygnus.com>
2037
2038 * dbxout.c (dbxout_type): Output arrays of bits as if
2039 they were bitstrings for Chill
2040
a260abc9
DE
2041Thu Jun 4 14:35:27 1998 David Edelsohn <edelsohn@mhpcc.edu>
2042
2043 * tree.c (get_inner_array_type): New function.
2044 * tree.h (get_inner_array_type): Prototype.
2045 * expr.h (STACK_SAVEAREA_MODE): New macro.
2046 * expr.c (expand_builtin_setjmp): Initialize sa_mode using
2047 STACK_SAVEAREA_MODE.
2048 (expand_builtin_longjmp): Likewise.
2049 * explow.c (emit_stack_save): Likewise.
2050 (allocate_dynamic_stack_space): Use Pmode not insn_operand_mode.
2051
2052 * rs6000/aix41.h (ASM_CPU_SPEC): Define relative to ASM_DEFAULT_SPEC.
2053 (CPP_CPU_SPEC): Define relative to CPU_DEFAULT_SPEC.
2054 * rs6000/aix43.h: New file.
2055 * rs6000/t-aix43: New file.
2056 * rs6000/x-aix41: New file.
2057 * rs6000/x-aix43: New file.
2058 * configure.in (rs6000-ibm-aix*): Use them.
2059 * rs6000/powerpc.h: Delete.
2060 * rs6000/sysv4.h: Move necessary powerpc.h definitions to here.
2061 * rs6000/netware.h: and here.
2062 * rs6000/win-nt.h: and here.
2063
2064 * rs6000/rs6000.c (processor_target_table, 620): Do not affect
2065 MASK_POWERPC64.
2066 (rs6000_override_options): Ignore flag_pic for AIX.
2067 (rs6000_immed_double_const): Delete.
2068 (u_short_cint_operand): Don't assume 32-bit CONST_INT.
2069 (reg_or_u_short_operand): Don't assume 32-bit CONST_INT.
2070 (num_insns_constant): mask64_operand() is 2 insns.
2071 (logical_operand): Don't assume 32-bit CONST_INT.
2072 (non_logical_cint_operand): Don't assume 32-bit CONST_INT.
2073 (easy_fp_constant): Any CONST_DOUBLE_HIGH is okay for 64-bit.
2074 (mask_constant): HOST_WIDE_INT parameter.
2075 (non_and_cint_operand): Delete.
2076 (mask64_operand): New function.
2077 (and64_operand): New function.
2078 (function_arg_advance): DImode arguments do not need special
2079 alignment when 64-bit.
2080 (function_arg): Likewise.
2081 (setup_incoming_varargs): Reverse reg_size assignment.
2082 (print_operand): HOST_WIDE_INT second parameter.
2083 (print_operand, 'B'): New case.
2084 (print_operand, 'M'): Fix typo in lossage string.
2085 (print_operandm 'S'): New case.
2086 (rs6000_stack_info): Reverse reg_size assignment. Use total_raw_size
2087 to compute AIX push_p. Use reg_size to compute {cr,lr}_save_offset.
2088 (rs6000_output_load_toc_table): Reverse init_ptr assignment. Use
2089 TARGET_64BIT not TARGET_POWERPC64. Convert fprintf to fputs.
2090 Load GOT highpart, don't add it. Add lowpart with {cal|la}.
2091 (rs6000_allocate_stack_space): Use {cal|la}.
2092 (output_epilog): Use {cal|la}
2093 (output_function_profiler): Add call glue to mcount call.
2094 Load GOT highpart, don't add it. Add lowpart with {cal|la}.
2095
2096 * rs6000/rs6000.h (TARGET_SWITCHES): Add powerpc64.
2097 (STACK_BOUNDARY): Depend on TARGET_32BIT.
2098 (ADJUST_FIELD_ALIGN): Calculate array alignment using innermost type.
2099 (CONST_OK_FOR_LETTER_P): Don't assume 32-bit CONST_INT.
2100 (EXTRA_CONSTRAINTS): Remove NT 'S' and 'T'. Replace 'S' with
2101 64-bit mask operand.
2102 (RS6000_SAVE_TOC): Depend on TARGET_32BIT.
2103 (STACK_SAVEAREA_MODE): New macro.
2104 (LEGITIMATE_CONSTANT_P): DImode okay for 64bit.
2105 (LEGITIMIZE_RELOAD_ADDRESS): New macro.
2106 (RTX_COSTS, AND/IOR/XOR): Reflect current machine description.
2107 (ASM_FILE_START): Emit 64-bit ABI directive.
2108 (ASM_DECLARE_FUNCTION_NAME): Align CSECT on doubleword in 64-bit mode.
2109 (ASM_OUTPUT_SPECIAL_POOL_ENTRY): DImode okay for 64-bit.
2110 (PREDICATE_CODES): Add "and64_operand" and "mask64_operand".
2111 Delete "non_and_cint_operand". "input_operand" includes CONST_DOUBLE.
2112
2113 * rs6000/rs6000.md (iorsi3, xorsi3): Use HOST_WIDE_INT for mask.
2114 Restore define_splits.
2115 (floatsidf2, floatunssidf2): Remove !TARGET_POWERPC64 final constraint.
2116 (floatsidf2_internal, floatunssidf2_internal2): Likewise.
2117 Do not specify base register operand mode.
2118 (floatsidf2_loadaddr): Do not specify base register operand mode.
2119 (floatsidf2_store1, floatsidf2_store2): Operand 1 must be base
2120 register; do not specify mode. Remove !TARGET_POWERPC64 final
2121 constraint.
2122 (floatsidf2_load): Do not specify base register operand mode. Remove
2123 !TARGET_POWERPC64 final constraint.
2124 (fix_truncdfsi2_internal, fix_truncdfsi2_{store,load}): Do not specify
2125 base register operand mode.
2126 (adddi3): Split large constants early.
2127 (absdi3): Shift by 63, not 31.
2128 (*mulsidi3_ppc64): New pattern.
2129 (rotldi3): Add masking combiner patterns.
2130 (anddi3): Add rldic{r,l} masking. Remove split of large constants
2131 because PPC insns zero-extend.
2132 (iordi3, xordi3): Split large constants early.
2133 (movsi matcher): Remove S and T constraints.
2134 (movsf const_double): create SImode constant from TARGET_DOUBLE.
2135 (movdf_hardfloat32): Add default abort() case.
2136 (movdf easy_fp_const): create DImode constant from TARGET_DOUBLE.
2137 (movdi): Remove 64-bit constant generator. Try to convert
2138 CONST_DOUBLE to CONST_INT. Handle TOC memory constants.
2139 (movdi_32): Add default abort() case.
2140 (movdi_64): Add numerous ways to split 64-bit constants.
2141 Make catch-all define_split more optimal and never FAIL.
2142 (movti_ppc64): Add default abort() case.
2143 (allocate_stack): Remove operand modes. Use Pmode.
2144 (restore_stack_block): Remove operand modes. Generate Pmode
2145 temporary.
2146 (save_stack_nonlocal, restore_stack_nonlocal): Generate Pmode
2147 temporary. Save area is double Pmode.
2148 (call_indirect_aix64, call_value_indirect_aix64): New patterns.
2149 (call, call_value): Do not specify address operand mode. Choose
2150 appropriate AIX ABI.
2151 (*call_local64, *ret_call_local64): New patterns.
2152 (*call_nonlocal_aix64, *ret_call_nonlocal_aix64): New patterns.
2153 (*ret_call_nonlocal_aix32): Use call_value_indirect for REG.
2154 (compare): Materialize DImode truthvalues.
2155
ff439b5f
CB
2156Thu Jun 4 01:26:57 1998 Craig Burley <burley@gnu.org>
2157
2158 * expr.c (safe_from_p): Avoid combinatorial explosion
2159 over duplicate SAVE_EXPRs by ensuring we never recurse
2160 on one that has already been visited.
2161
7d2a46a8
GS
2162Thu Jun 4 00:54:21 1998 Graham <grahams@rcp.co.uk>
2163
2164 * loop.c (check_dbra_loop): Initialise final_value before
2165 normalizing the loop.
2166
f5470689
R
2167Wed Jun 3 20:00:04 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2168
2169 * reload1.c (reload_reg_free_for_value_p): New arguments out and
2170 reloadnum. Changed all callers.
2171
9b91d8f4
UD
21721998-06-03 Ulrich Drepper <drepper@cygnus.com>
2173
2174 * system.h: Add _() and N_() macros in preparation for gettext.
2175
7fdc2757
AS
2176Wed Jun 3 11:02:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2177
bc516719
AS
2178 * c-common.c (check_format_info): Put back check for C9x `hh'
2179 length modifier. Warn about %n format writing into const. Remove
2180 obsolete comment.
9b91d8f4 2181 (format_char_info): Fix comments.
bc516719 2182
7fdc2757
AS
2183 * configure.in: Set float_format to m68k for all m68k targets that
2184 do not override LONG_DOUBLE_TYPE_SIZE.
2185 * config/float-m68k.h: New file.
2186
dc2a47ed
RH
2187Tue Jun 2 23:14:01 1998 Richard Henderson <rth@cygnus.com>
2188
2189 * jump.c (jump_optimize): Remove debug messages accidentally left in
2190 with the previous change.
2191
f0348c25
RH
2192Tue Jun 2 22:46:08 1998 Richard Henderson <rth@cygnus.com>
2193
2194 * expr.c (store_expr): Revert stray patch associated with
2195 1998-05-23 commit.
2196
4f4f436f
RH
2197Tue Jun 2 21:59:01 1998 Richard Henderson <rth@cygnus.com>
2198
2199 * jump.c (rtx_unsafe_p): New function.
2200 (jump_optimize): Use it on if/then/else transformations and
2201 conditional move transformations.
2202
df0e526f
AS
2203Tue Jun 2 22:50:10 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2204
2205 * fold-const.c (fold, case EQ_EXPR): When folding VAR++ == CONST
2206 or VAR-- == CONST construct a proper mask if VAR is a bitfield.
2207 Cope with CONST being out of range for the bitfield.
2208
2638126a
BS
2209Tue Jun 2 22:28:31 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
2210
2211 * expr.c (emit_move_insn_1): When moving complex values in several
2212 steps, emit a CLOBBER to show the destination dies.
2213
6c8538cc
JL
2214Tue Jun 2 22:17:26 1998 Jeffrey A Law (law@cygnus.com)
2215
ccdb9251
JL
2216 * Makefile.in (site.exp): Use the object testsuite directory as
2217 the temporary directory.
2218
6c8538cc
JL
2219 * expr.c (expand_expr, case ADDR_EXPR): Handle taking the
2220 address of an ADDRESSOF rtx.
2221
0bc02db4
MS
22221998-06-02 Mike Stump <mrs@wrs.com>
2223
2224 * expr.c (expand_builtin_setjmp): Handle BUILTIN_SETJMP_FRAME_VALUE.
2225 * i960.h (SETUP_FRAME_ADDRESSES, BUILTIN_SETJMP_FRAME_VALUE): Define.
2226 * i960.md (ret, flush_register_windows): Define.
2227 (nonlocal_goto): Likewise. Nested function nonlocal gotos don't
2228 work yet.
2229 * tm.texi (BUILTIN_SETJMP_FRAME_VALUE): Document new macro.
2230
d46f7484
RH
2231Tue Jun 2 14:02:38 1998 Richard Henderson <rth@cygnus.com>
2232
2233 * alpha.md (divsi3, udivsi3, modsi3, umodsi3): Enable, and work
2234 around an OSF/1 library bug wrt sign-extension of inputs.
2235
e3c81d20
RH
2236Tue Jun 2 13:02:44 1998 Richard Henderson <rth@cygnus.com>
2237
2238 * vax/netbsd.h (DWARF2_UNWIND_INFO): Must be undef, not defined 0.
2239
44ec7e59 2240Mon Jun 1 03:44:03 1998 Catherine Moore <clm@cygnus.com>
9b91d8f4 2241
44ec7e59
CM
2242 * config/sh/sh.h (MAX_OFILE_ALIGNMENT): Define.
2243
2244 * varasm.c (assemble_variable): Augment alignment warning.
2245
9224220f
MM
2246Mon Jun 1 12:14:28 1998 Michael Meissner <meissner@cygnus.com>
2247
2248 * config/fp-bit.c (_fp{add,div}_parts): Return correct IEEE result
2249 in the presence of IEEE negative 0's.
2250
726e2d54
JW
2251Sun May 31 16:11:41 1998 John Wehle (john@feith.com)
2252
2253 * reload.c (find_reloads): Record the existing mode if
2254 operand_mode == VOIDmode before replacing a register with
2255 a constant.
2256 * i386.md (tstsi, tsthi, tstqi, tstsf, tstdf, tstxf): Set
2257 i386_compare_op1 to const0_rtx for the benefit of the
2258 conditional move patterns.
2259 (movsicc, movhicc, movsfcc, movdfcc, movxfcc, movdicc): Rewrite
2260 based on suggestions from Jim Wilson.
2261
97f959a5
JL
2262Sun May 31 00:44:02 PDT 1998 Jeff Law (law@cygnus.com)
2263
2264 * version.c: Bump for snapshot.
2265
b5662334
BK
2266Sun May 31 00:34:17 1998 Bruce Korb <korbb@datadesign.com>
2267
2268 * Makefile.in (fixinc.sh): Update rules again.
2269
674032e2
JL
2270Sun May 31 00:27:47 1998 Jeffrey A Law (law@cygnus.com)
2271
2272 * extend.texi: Bring back reference to trampoline paper.
2273
2274Sun May 31 00:22:34 1998 Ulrich Drepper <drepper@cygnus.com>
2275
2276 * Makefile.in (USER_H): Add stdbool.h.
2277 * ginclude/stdbool.h: New file.
2278
d3903c22
JL
2279Fri May 29 01:48:25 1998 Jeffrey A Law (law@cygnus.com)
2280
c71407f9
JL
2281 * jump.c (thread_jumps): Do not look at the NOTE_LINE_NUMBER
2282 of a non-note insn.
2283
d3903c22
JL
2284 * gcse.c (pre_delete): Fix code to determine the mode of
2285 the reaching pseudo register.
2286
8376d400
BS
2287Fri May 29 01:07:28 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
2288
2289 * Makefile.in (GEN): Add gencheck
2290 (STAGESTUFF): Add tree-check.h and gencheck.
2291
71d085b0
BK
2292Fri May 29 00:57:37 1998 Bruce Korb <korbb@datadesign.com>
2293
2294 * Makefile.in (cstamp-h.in): Remove before trying to recreate.
2295 (fixinc.sh): Set some additional environment variables before
2296 calling mkfixinc.sh.
2297
f4d1453e
JL
2298Thu May 28 12:57:05 1998 Jeffrey A Law (law@cygnus.com)
2299
2300 * reload.c (find_reloads): Do not force a reloads of match_operators.
9b91d8f4 2301
9f8e6243
AM
2302Thu May 28 10:22:22 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
2303
2304 * except.h (remove_handler): Add new prototype.
2305 * except.c (remove_handler): New function to remove handlers
2306 from an exception region.
2307 * flow.c (find_basic_blocks_1): Remove handlers from regions when
2308 handler label is deleted; remove exception regions with no handlers.
2309
d05a5492
MM
2310Thu May 28 09:36:39 1998 Michael Meissner <meissner@cygnus.com>
2311
2312 * except.h (rtx): Define rtx type correctly if needed.
2313 * function.h (rtx): Ditto.
2314 (tree): Define tree type correctly if needed.
2315
2316 * c-pragma.c (toplevel): Include rtl.h.
2317
2318 * stor-layout.c (toplevel): Move include of rtl.h before
2319 except.h.
2320
2321 * Makefile.in (c-pragma.o): Add except.h, rtl.h dependencies.
2322 (tree.o): Add except.h dependency.
9b91d8f4 2323
ed385fd9
JL
2324Wed May 27 22:02:40 1998 Jeffrey A Law (law@cygnus.com)
2325
5bc80b30
JL
2326 * reload1.c: Revert accidental checkin.
2327
ed385fd9
JL
2328 * configure.lang: Fix thinko when adding a definition for
2329 target_alias to the Makefile.
2330
00c26dc2
CM
2331Wed May 27 02:50:00 1998 Catherine Moore (clm@cygnus.com)
2332
9b91d8f4 2333 * config/sparc/lb1spc.asm (.rem and .urem): Replace
00c26dc2
CM
2334 routines.
2335
d499463f
RE
2336Wed May 27 02:48:31 1998 Richard Earnshaw (rearnsha@arm.com)
2337
2338 * arm.c (arm_gen_constant): Rework to eliminate uninitialized
2339 variable warnings. Don't generate scratch registers if only
2340 counting insns.
2341 (find_barrier): Eliminate unused variable SRC.
2342
62fe00be
MH
23431998-05-27 Manfred Hollstein <manfred@s-direktnet.de>
2344
2345 * toplev.h (rtx_def): Provide global declaration to avoid
2346 `limited scope' warnings.
2347
1a4bf22f
MK
2348Tue May 26 23:47:52 1998 Mumit Khan <khan@xraylith.wisc.edu>
2349
2350 * Makefile.in (gencheck.o): Use HOST_CC.
2351 * i386/t-mingw32: New file.
2352 * configure.in (i386-*-mingw32*): Use.
2353
4d818c85
RE
2354Tue May 26 07:31:04 1998 Richard Earnshaw (rearnsha@arm.com)
2355
2356 * arm.c (bad_signed_byte_operand): New predicate function.
2357 * arm.h (PREDICATE_CODES): Add it to the list.
2358 * arm.md (*extendqi[sh]i_insn): Split any addresses that ldrsb
2359 can't handle.
2360 (define_split): Two new splits for above insns.
2361
ad076f4e
RE
2362 * arm.c: Include toplev.h.
2363 (arm_override_options): Add parentheses around use of tune_flags.
2364 (arm_split_constant): Remove unused variable.
2365 (arm_gen_constant, arm_gen_movstrqi, add_constant): Likewise.
2366 (output_func_prologue, arm_expand_prologue): Likewise.
2367 (arm_canonicalize_comparison): Make I unsigned; rework constants
2368 accordignly. Add missing paratheses around << operation.
2369 (arm_rtx_costs): Correctly parenthesise MULT costs. Add a DEFAULT
2370 clause.
2371 ({load,store}_multiple_sequence): Initialize BASE_REG.
2372 (select_dominance_cc_mode): Add DEFAULT clauses.
2373 (broken_move): Return zero if the destination is not a register.
2374 (arm_reorg): Move unused REGNO declaration into the dead code.
2375 * arm.h (CANONICALIZE_COMPARISON): Ensure OP1 is updated.
2376
a1ec8ea1
JL
2377Mon May 25 22:49:56 PDT 1998 Jeff Law (law@cygnus.com)
2378
2379 * version.c: Bump for snapshot.
2380
c7f58590
JL
2381Mon May 25 11:56:24 PDT 1998 Jeff Law (law@cygnus.com)
2382
2383 * version.c: Bump for snapshot.
2384
33b019ad
DB
2385Mon May 25 14:00:13 1998 Dave Brolley <brolley@cygnus.com>
2386
2387 * cpperror.c (v_cpp_message): Remove static prototype.
2388 * cpplib.c (v_cpp_message): Move prototype to cpplib.h.
2389 * cpplib.h (v_cpp_message): Add protoptype.
2390 (stdarg.h,varargs.h): Needed for v_cpp_message prototype.
2391
61819ba5
JL
2392Sun May 24 20:36:15 PDT 1998 Jeff Law (law@cygnus.com)
2393
2394 * version.c: Bump for snapshot.
2395
f5c57ba7
JL
2396Sun May 24 02:08:57 PDT 1998 Jeff Law (law@cygnus.com)
2397
2398 * version.c: Bump for snapshot.
2399
7a87758d
AS
24001998-05-24 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2401
2402 * m68k.h: Declare more functions used in macros.
2403 (REG_CLASS_CONTENTS): Completely embrace initializer.
2404 * m68k.md (adddi3, subdi3): Add abort call to avoid warning
2405 about returning no value.
2406 * cse.c (find_best_addr): Declare p and found_better only if
2407 needed.
2408 * dbxout.c (dbxout_continue): Define only if DBX_CONTIN_LENGTH > 0.
2409 * dwarfout.c (string_length_attribute): #if 0 away.
2410 * function.c (expand_function_end): Define varible blktramp only
2411 if needed.
2412 * jump.c (find_insert_position): Define only if !HAVE_cc0.
2413 * loop.c (combine_givs_p): Define variable tem only if needed.
2414 * real.c: Comment out unused functions eabs, eround,
2415 e{24,53,64,113}toasc and eiinfin.
2416
2417
10ad38ca
AO
2418Sat May 23 23:44:53 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
2419
2420 * Makefile.in (boostrap2-lean, bootstrap3-lean,
2421 bootstrap4-lean): New targets.
2422
57fec042
JL
2423Sat May 23 23:35:14 1998 Jeffrey A Law (law@cygnus.com)
2424
2425 * warn_summary, test_summary: Moved into the contrib directory.
2426
97263b8c
MH
24271998-05-23 Manfred Hollstein <manfred@s-direktnet.de>
2428
e7f62ad3
MH
2429 * Makefile.in (ENQUIRE_CFLAGS, ENQUIRE_LDFLAGS): Move down to the end
2430 of the Makefile.
2431 (FLOAT_H_TEST): Likewise.
2432 (ENQUIRE): Likewise.
2433 (float.h-nat): Likewise.
2434 (float.h-cross): Likewise.
2435 (enquire): Likewise.
2436 (enquire.o): Likewise.
2437 (stmp-int-hdrs): Fix comment about enquire; depend upon gfloat.h.
2438 (stmp-headers): Move actions to stmp-int-hdrs, retaining only a
2439 no-op.
2440 (FLOAT_H): Remove old float.h-nat version; move current definition
2441 to CROSS_FLOAT_H location.
2442 (all.cross): Remove comments about enquire stuff.
2443
8d45987f
MH
2444 * Makefile.in (all.cross): Swap $(LIBGCC) and $(STMP_FIXPROTO).
2445 (rest.encap): Likewise.
e7f62ad3 2446 (libgcc2.ready): Depend upon $(STMP_FIXPROTO)
8d45987f 2447
97263b8c
MH
2448 * toplev.h (tree_node): Provide global declaration to avoid
2449 `limited scope' warnings.
2450
a8c24967
RL
2451Sat May 23 23:23:35 1998 Robert Lipe <robertl@dgii.com>
2452
2453 * test_summary: Display section breaks for each entry
2454 in a multilibbed target's output.
2455
bd070e1a
RH
24561998-05-23 Richard Henderson <rth@cygnus.com>
2457
2458 * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
2459 offset's mode is not ptr_mode, convert it.
2460
697073d9
JM
24611998-05-22 Jason Merrill <jason@yorick.cygnus.com>
2462
2463 * fold-const.c (ssize_binop): New fn.
2464 * tree.h: Declare it.
2465
07704a9a
RE
2466Fri May 22 03:42:05 1998 Richard Earnshaw (rearnsha@arm.com)
2467
9b91d8f4 2468 * genextract.c (print_path): Handle zero-length path as a special
07704a9a
RE
2469 case.
2470
911c3b7d
HPN
2471Fri May 22 01:38:07 1998 Hans-Peter Nilsson <hp@axis.se>
2472
2473 * cplus-dem.c (MBUF_SIZE): Bumped from 512 to 32767.
2474
75197b37
BS
2475Fri May 22 00:57:00 1998 Bernd Schmidt (crux@pool.informatik.rwth-aachen.de>
2476
2477 * final.c (JUMP_TABLES_IN_TEXT_SECTION): Provide a default value.
2478 (shorten_branches, final_scan_insn): Test value of
2479 JUMP_TABLES_IN_TEXT_SECTION instead of just testing whether it
2480 is defined.
2481 * tm.texi (JUMP_TABLES_IN_TEXT_SECTION): Corresponding changes.
2482 * arm/coff.h: Define JUMP_TABLES_IN_TEXT_SECTION to 1.
28ec9418 2483 * arm/tcoff.h: Likewise.
75197b37
BS
2484 * i386/386bsd.h: Likewise.
2485 * i386/freebsd-elf.h: Likewise.
2486 * i386/freebsd.h: Likewise.
2487 * i386/netbsd.h: Likewise.
2488 * i386/ptx4-i.h: Likewise.
2489 * i386/sysv4.h: Likewise.
2490 * pa/pa.h: Likewise.
2491 * rs6000/linux.h: Likewise.
2492 * rs6000/rs6000.h: Likewise.
2493 * sh/sh.h: Likewise.
2494 * sparc/sp64-elf.h: Likewise.
2495 * v850/v850.h: Likewise.
2496 * rs6000/sysv4.h: Define JUMP_TABLES_IN_TEXT_SECTION to 0.
2497 * i386/linux.h: Define JUMP_TABLES_IN_TEXT_SECTION to (flag_pic).
2498
1a29f703
R
2499Thu May 21 19:50:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2500
2501 * regmove.c (gen_add3_insn): New function.
2502 (fixup_match_2): Use it instead of calling gen_addsi3.
2503
aee21ba9
JL
2504Thu May 21 23:09:50 1998 Jeffrey A Law (law@cygnus.com)
2505
37433f49
JL
2506 * Makefile.in (gencheck): Depend on HOST_LIBDEPS.
2507
aee21ba9
JL
2508 * alias.c (rtx_equal_for_memref_p): Handle SCRATCH as a memory
2509 address.
2510
12b195d9
ML
2511Thu May 21 20:18:13 1998 Martin von Loewis <loewis@informatik.hu-berlin.de>
2512
2513 * Makefile.in (TREE_H): Add tree-check.h.
2514 (tree-check.h, gencheck): New targets.
2515 * gencheck.c: New file.
2516 * tree.c (tree_check, tree_class_check): New functions.
2517 * tree.h (TREE_CHECK, TREE_CLASS_CHECK): Define.
2518 (TYPE_CHECK, DECL_CHECK): Define.
2519 Modify all access macros to use generated checking macros.
2520
9e423e6d
JW
2521Wed May 20 23:44:28 EDT 1998 John Wehle (john@feith.com)
2522
2523 * acconfig.h (HAVE_GAS_MAX_SKIP_P2ALIGN): New tag.
2524 * configure.in: Check for it.
2525 * i386/gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Use it.
2526 * final.c (uid_align, uid_shuid, label_align): Make static.
2527 (label_align): Change type to struct label_alignment pointer.
2528 (LABEL_TO_ALIGNMENT, shorten_branches): Update due to type change.
2529 (LABEL_TO_MAX_SKIP): Define.
2530 (LABEL_ALIGN_MAX_SKIP, LOOP_ALIGN_MAX_SKIP,
2531 LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Provide defaults.
2532 (shorten_branches): Record the maximum bytes to skip when
2533 aligning a label.
2534 (final_scan_insn): Use the maximum bytes to skip when aligning a label
2535 if ASM_OUTPUT_MAX_SKIP_ALIGN is available.
2536 * i386.h (LOOP_ALIGN_MAX_SKIP,
2537 LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Define.
2538 * i386.c (override_options): i386_align_jumps and i386_align_loops
2539 default to 4 if ASM_OUTPUT_MAX_SKIP_ALIGN is available.
2540 * invoke.texi: Document new i386 align-loops and align-jumps behavior.
2541
1cc75298
MM
25421998-05-21 Mark Mitchell <mmitchell@usa.net>
2543
2544 * cplus-dem.c (do_type): Handle volatile qualification.
9b91d8f4 2545
178ca02d
PB
2546Thu May 21 12:23:17 1998 Per Bothner <bothner@cygnus.com>
2547
2548 * function.c (init_function_start): Don't call emit_line_note if
2549 lineno is 0. (Can happen when compiling Java .class files.)
2550
cecbf6e2
R
2551Thu May 21 19:50:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2552
2553 * reload1.c (reload_reg_free_for_value_p): Fix RELOAD_FOR_INPUT
2554 end of lifetime and RELOAD_FOR_OUTPUT start of lifetime.
2555
b52ce03d
R
2556Thu May 21 19:32:27 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2557
2558 * combine.c (nonzero_bits): For paradoxical subregs, take
2559 LOAD_EXTENDED_OP into account.
2560
c8724862
DB
2561Thu May 21 11:51:15 1998 Dave Brolley <brolley@cygnus.com>
2562
2563 * configure.in (extra_c_objs): add prefix.o.
2564 (extra_cxx_objs): extra objects for C++ with cpplib.
2565 * configure: Regenerate.
2566
2567 * c-tree.h: (get_directive_line): Different prototype for cpplib.
2568 (GET_DIRECTIVE_LINE): Macro wrapper for get_directive_line.
2569
2570 * c-lex.h: (get_directive_line): Not needed here for cpplib.
2571
2572 * c-lex.c: (yy_cur,yy_lim,yy_get_token): Move to c-common.c.
2573 (GET_DIRECTIVE_LINE): Move to c-common.c and rename to get_directive_line.
2574
2575 * c-common.c (parse_in,parse_options,cpp_token): Declare for cpplib.
2576 (yy_cur,yy_lim,yy_get_token,get_directive,line): Moved here from c-lex.c
2577
fd97443c
KG
2578Thu May 21 09:04:42 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2579
2580 * gengenrtl.c (type_from_format, accessor_from_format): Change
2581 type of parameter `c' from `char' to `int'.
2582
0e4347ce
JL
2583Wed May 20 22:28:34 1998 Jeffrey A Law (law@cygnus.com)
2584
2a3edac9
JL
2585 * warn_summary, test_summary: New scripts from
2586 Kaveh Ghazi and Alexandre Oliva respectively.
2587
0e4347ce
JL
2588 * gcse.c (current_function_calls_longjmp): Declare.
2589
4e5a8d7b
JM
25901998-05-20 Jason Merrill <jason@yorick.cygnus.com>
2591
2592 * dwarf2out.c (base_type_die): Use int_size_in_bytes.
2593
7506f491
DE
2594Wed May 20 01:11:02 1998 Doug Evans (devans@cygnus.com)
2595 Jeff Law (law@cygnus.com)
2596
2597 * Global CSE and constant/copy propagation.
2598 * Makefile.in (OBJS): Add gcse.o
2599 (STAGESTUFF): Add *.gcse.
2600 (gcse.o): Add dependencies.
2601 (mostlyclean): Remove *.gcse and */*.gcse.
2602 * gcse.c: New file.
2603 * loop.c (loop_optimize): Move call to init_alias_analysis.
2604 * recog.c (validate_replace_src): New function.
2605 * toplev.c (gcse_dump): New global variable.
2606 (flag_gcse, gcse_time): Likewise.
2607 (compile_file): Initialize gcse_time and clean out the gcse dump
2608 file if necessary.
2609 (rest_of_compilation): Call gcse_main as requested. Dump RTL
2610 after gcse if requested.
2611 (main): Enable gcse for -O2 and above. Handle -dG. Enable gcse
2612 dumps for -da.
2613 * gcc.texi: Add gcse related internal documentation.
2614 * invoke.texi: Note new command line options for gcse.
2615 * tm.texi: Document AVOID_CCMODE_COPIES.
2616 * mips.h (AVOID_CCMODE_COPIES): Define.
2617
40859b41
JL
2618Tue May 19 22:31:20 1998 Jeffrey A Law (law@cygnus.com)
2619
2620 * Makefile.in (deduced.h): Only run scan-types if $(SYSTEM_HEADER_DIR)
2621 exists.
aef1617c 2622 (stmp-fixproto): Simlarly for running fixproto.
40859b41
JL
2623 * cross-make (SYSTEM_HEADER_DIR): Now $(tooldir)/sys-include.
2624
f85c8be7
JW
2625Tue May 19 19:08:52 1998 Jim Wilson <wilson@cygnus.com>
2626
2627 * config/mips/mips.c (double_memory_operand): Accept any MEM during
2628 reload when TARGET_64BIT.
2629
c7391272
JW
2630Tue May 19 18:21:25 1998 Jim Wilson <wilson@cygnus.com>
2631
2632 Finish incomplete change started by Kenner.
2633 * configure.in (*-*-linux-gnu*): Delete NO_STAB_H from xm_defines.
2634 (powerpcle-*-cygwin32): Delete xm_defines.
2635 * final.c, mips-tfile.c, xcoffout.c, config/mips/mips.c: Use
2636 HAVE_STAB_H instead of NO_STAB_H.
2637 * config/xm-linux.h (NO_STAB_H): Delete.
2638 (HAVE_STAB_H): Undefine.
2639 * config/i386/xm-go32.h (NO_STAB_H): Delete.
2640
af02da67
JW
26411998-05-19 Jim Wilson <wilson@cygnus.com>
2642
2643 * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Ignore
2644 LANG_TYPE trees with DECL_SOURCE_LINE of 0.
2645
79edd21c
TV
2646Tue May 19 15:07:54 1998 Todd Vierling <tv@netbsd.org>
2647
2648 * arm/netbsd.h: Ensure DWARF2_UNWIND_INFO is undefined.
2649
6e684430
R
2650Tue May 19 17:19:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
2651
2652 * reload1.c (reload_reg_free_for_value_p): New function.
2653 (allocate_reload_reg, choose_reload_regs): Use it.
2654
7ecb5d27
AM
2655Tue May 19 11:51:00 EDT 1998 Andrew MacLeod (amacleod@cygnus.com)
2656
2657 * except.c (expand_start_catch): Correct logic for when to
2658 generate a new handler label, and when to use the old one.
2659
487a6e06
KG
2660Tue May 19 11:08:52 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2661
2662 * Makefile.in (print-rtl.o): Depend on bitmap.h.
2663 (dbxout.o): Depend on toplev.h.
2664 ($(SCHED_PREFIX)sched.o): Likewise.
2665 ($(out_object_file)): Likewise for system.h and toplev.h.
2666 (cppmain.o): Depend on gansidecl.h.
2667 (cpplib.o): Likewise.
2668 (cpperror.o): Likewise.
2669 (cppexp.o): Likewise.
2670 (cpphash.o): Likewise.
2671 (cppalloc.o): Likewise.
2672 (fix-header.o): Depend on cpplib.h and cpphash.h.
2673 (scan-decls.o): Depend on gansidecl.h.
2674
2675 * basic-block.h (free_regset_vector): Add prototype.
2676
2677 * cccp.c (check_precompiled): Mark parameter `fname' with
2678 ATTRIBUTE_UNUSED.
2679 (do_assert): Likewise for `op' and `keyword'.
2680 (do_unassert): Likewise.
2681 (do_line): Likewise for `keyword'.
2682 (do_error): Likewise for `op' and `keyword'.
2683 (do_warning): Likewise.
2684 (do_ident): Likewise for `keyword'.
2685 (do_pragma): Likewise for `limit', `op' and `keyword'.
2686 (do_sccs): Likewise.
2687 (do_if): Likewise for `keyword'.
2688 (do_elif): Likewise.
2689 (do_else): Likewise.
2690 (do_endif): Likewise.
2691
2692 * collect2.c (getenv): Remove redundant prototype.
2693 (collect_exit, collect_execute, dump_file): Likewise.
2694 (dump_list): Wrap prototype and definition in COLLECT_EXPORT_LIST.
2695 (dump_prefix_list): Hide prototype and definition.
2696
2697 * sparc.c: Include toplev.h.
2698 (intreg_operand): Mark parameter `mode' with ATTRIBUTE_UNUSED.
2699 (symbolic_memory_operand): Likewise.
2700 (sp64_medium_pic_operand): Likewise.
2701 (data_segment_operand): Likewise.
2702 (text_segment_operand): Likewise.
2703 (splittable_symbolic_memory_operand): Likewise.
2704 (splittable_immediate_memory_operand): Likewise.
2705 (eq_or_neq): Likewise.
2706 (normal_comp_operator): Likewise.
2707 (noov_compare_op): Likewise.
2708 (v9_regcmp_op): Likewise.
2709 (v8plus_regcmp_op): Likewise.
2710 (extend_op): Likewise.
2711 (cc_arithop): Likewise.
2712 (cc_arithopn): Likewise.
2713 (small_int): Likewise.
2714 (uns_small_int): Likewise.
2715 (clobbered_register): Likewise.
2716 (legitimize_pic_address): Likewise.
2717 (delay_operand): Likewise.
2718 (sparc_builtin_saveregs): Remove unused variable `stdarg'.
2719
2720 * sparc.h (order_regs_for_local_alloc, eligible_for_return_delay,
2721 sparc_issue_rate, v8plus_regcmp_p): Add prototypes.
2722
2723 * sparc.md (cmpdi_v8plus): Add abort for default case in switch.
2724
2725 * cppalloc.c: Include gansidecl.h.
2726
2727 * cpperror.c: Include stdarg.h/varargs.h and gansidecl.h.
2728 (cpp_file_line_for_message): Mark parameter `pfile' with
2729 ATTRIBUTE_UNUSED.
2730 (v_cpp_message): New function.
2731 (cpp_message): Use it. Also convert to variable arguments.
2732 (cpp_fatal): Likewise.
2733 (cpp_pfatal_with_name): Constify parameter `name'.
2734
2735 * cppexp.c: Move gansidecl.h before cpplib.h.
2736 * cpphash.c: Likewise.
2737 * cpphash.h (hashf, delete_macro): Add prototypes.
2738
2739 * cpplib.c: Include stdarg.h/varargs.h and move gansidecl.h before
2740 cpplib.h. Don't include errno.h.
2741 (update_path): Add arguments to prototype.
2742 (cpp_fatal, cpp_file_line_for_message, cpp_message, delete_macro,
2743 cpp_print_containing_files): Remove redundant prototypes.
2744 (cpp_hash_cleanup, add_import, append_include_chain,
2745 make_assertion, path_include, initialize_builtins,
2746 initialize_char_syntax, finclude, validate_else, comp_def_part,
2747 lookup_import, redundant_include_p, is_system_include,
2748 read_name_map, read_filename_string, open_include_file,
2749 check_macro_name, compare_defs, compare_token_lists,
2750 eval_if_expression, change_newlines): Add prototype arguments.
2751 (hashf): Remove redundant prototype.
2752 (read_token_list, free_token_list, safe_read, xcalloc, savestring,
2753 conditional_skip, skip_if_group): Add prototype arguments.
2754 (fdopen): Remove redundant prototype.
2755 (do_define, do_line, do_include, do_undef, do_error, do_pragma,
2756 do_ident, do_if, do_xifdef, do_else, do_elif, do_endif, do_sccs,
2757 do_once, do_assert, do_unassert, do_warning): Add prototype arguments.
2758 (struct directive): Add prototype arguments to function pointer
2759 member `func'.
2760 (handle_directive): Add missing arguments to call to `do_line'.
2761 (do_include): Mark parameters `unused1' and `unused2' with
2762 ATTRIBUTE_UNUSED.
2763 (do_line): Likewise for `keyword' and new parameters `unused1' and
2764 `unused2'.
2765 (do_error): Likewise for `keyword'.
2766 (do_warning): Likewise. Also add missing argument `pfile' in call
2767 to cpp_pedwarn.
2768 (do_once): Mark parameter `keyword', `unused1' and `unused2' with
9b91d8f4 2769 ATTRIBUTE_UNUSED.
487a6e06
KG
2770 (do_ident): Likewise for `keyword', `buf' and `limit'.
2771 (do_pragma): Likewise. Also add missing arguments in call to do_once.
2772 (do_sccs): Mark parameter `keyword', `buf' and `limit' with
9b91d8f4 2773 ATTRIBUTE_UNUSED.
487a6e06
KG
2774 (do_if): Likewise for `keyword'.
2775 (do_elif): Likewise.
2776 (eval_if_expression): Likewise for `buf' and `length'.
2777 (do_xifdef): Likewise for `unused1' and `unused2'.
2778 (do_else): Likewise for `keyword', `buf' and `limit'.
2779 (do_endif): Likewise.
2780 (parse_name): Add missing argument `pfile' in call to cpp_pedwarn.
2781 (cpp_handle_options): Remove superfluous NULL argument in call to
2782 cpp_fatal.
2783 (cpp_handle_options): Likewise.
2784 (do_assert): Mark parameter `keyword', `buf' and `limit' with
2785 ATTRIBUTE_UNUSED.
2786 (do_unassert): Likewise.
2787 (cpp_print_file_and_line): Add missing argument `pfile' in call to
2788 cpp_file_line_for_message.
2789 (v_cpp_error): New function.
2790 (cpp_error): Use it. Also accept variable arguments.
2791 (v_cpp_warning): New function.
2792 (cpp_warning): Use it. Also accept variable arguments.
2793 (cpp_pedwarn): Accept variable arguments.
2794 (v_cpp_error_with_line): New function
2795 (cpp_error_with_line): Use it. Accept variable arguments.
2796 (v_cpp_warning_with_line): New function.
2797 (cpp_warning_with_line): Use it. Accept variable arguments. Hide
2798 definition.
2799 (cpp_pedwarn_with_line): Accept variable arguments.
2800 (cpp_pedwarn_with_file_and_line): Likewise.
2801 (cpp_error_from_errno): Constify parameter `name'. Add missing
2802 argument `pfile' in call to cpp_file_line_for_message.
2803 (cpp_perror_with_name): Constify parameter `name'.
2804
2805 * cpplib.h: Define PARAMS() in terms of PROTO().
2806 (fatal): Remove redundant prototype.
2807 (cpp_error, cpp_warning, cpp_pedwarn, cpp_error_with_line,
2808 cpp_pedwarn_with_line, cpp_pedwarn_with_file_and_line,
9b91d8f4 2809 cpp_error_from_errno, cpp_perror_with_name, cpp_pfatal_with_name,
487a6e06
KG
2810 cpp_fatal, cpp_message, cpp_pfatal_with_name,
2811 cpp_file_line_for_message, cpp_print_containing_files): Add
2812 arguments to prototypes.
2813 (scan_decls, cpp_finish): Add prototypes.
2814
2815 * cppmain.c: Include gansidecl.h.
2816 (main): Remove unused variable `i'.
9b91d8f4 2817
487a6e06
KG
2818 * dbxout.c: Include toplev.h.
2819
2820 * demangle.h (do_tlink, collect_execute, collect_exit,
2821 collect_wait, dump_file, file_exists): Add prototype.
2822
2823 * dwarf2out.c (dwarf_type_encoding_name, decl_start_label): Hide
2824 prototype and definition.
2825 (gen_unspecified_parameters_die): Don't assign results of call to
2826 function new_die() to unused variable `parm_die'.
2827 (dwarf2out_line): Mark parameter `filename' with ATTRIBUTE_UNUSED.
2828 (dwarf2out_define): Likewise for `lineno' and `buffer'.
2829
2830 * dwarfout.c (output_unsigned_leb128, output_signed_leb128): Hide
2831 prototype and definition.
2832 (output_die): Add prototype arguments to function pointer arg.
2833 (output_unspecified_parameters_die): Mark parameter `arg' with
2834 ATTRIBUTE_UNUSED.
2835
2836 * except.c (output_exception_table_entry): Remove unused variable
2837 `eh_entry'.
2838
2839 * except.h (expand_fixup_region_start, expand_fixup_region_end):
2840 Add prototypes.
2841
2842 * expr.c (do_jump_by_parts_equality_rtx): Remove prototype.
2843
2844 * expr.h (do_jump_by_parts_equality_rtx): Add prototype.
2845
2846 * fix-header.c: Include stdarg.h/varargs.h, move gansidecl.h
2847 before cpplib.h, include cpphash.h, remove redundant prototype of
2848 cpp_fatal, don't define `const', add a prototype for `fatal'.
2849 (cpp_file_line_for_message): Add missing arguments `pfile'.
2850 (v_cpp_message): New function.
2851 (cpp_message): Use it.
2852 (v_fatal): New function.
2853 (fatal, cpp_fatal): Use it.
2854 (cpp_pfatal_with_name): Constify parameter `name'.
2855
2856 * flow.c (free_regset_vector): Remove redundant prototype.
2857
2858 * function.c (round_down): Wrap prototype and definition with
2859 macro ARGS_GROW_DOWNWARD.
2860 (record_insns): Wrap prototype and definition with
2861 defined (HAVE_prologue) || defined (HAVE_epilogue).
2862
2863 * gansidecl.h (ATTRIBUTE_PRINTF_4, ATTRIBUTE_PRINTF_5): New macros.
2864
2865 * gen-protos.c: Include gansidecl.h.
2866 (hashf): Don't make it static, constify parameter `name'.
2867
2868 * genattrtab.c (check_attr_test): Change XEXP() to XSTR() to match
2869 specifier %s in calls to function `fatal'.
2870
2871 * haifa-sched.c: Include toplev.h.
2872 (find_rgns): Remove unused variable `j'.
2873
2874 * integrate.c (note_modified_parmregs): Mark parameter `x' with
2875 ATTRIBUTE_UNUSED.
2876 (mark_stores): Likewise.
2877
2878 * jump.c (mark_modified_reg): Likewise.
2879
2880 * output.h (insn_current_reference_address): Add prototype.
2881 (eh_frame_section): Likewise.
2882
2883 * print-rtl.c: Include bitmap.h.
2884
2885 * reload1.c (reload): Wrap variables `note' and `next' in macro
2886 PRESERVE_DEATH_INFO_REGNO_P.
2887 (forget_old_reloads_1): Mark parameter `ignored' with
2888 ATTRIBUTE_UNUSED.
2889 (choose_reload_regs): Remove unused variable `in'.
2890 (reload_cse_invalidate_mem): Mark parameter `ignore' with
2891 ATTRIBUTE_UNUSED.
2892 (reload_cse_check_clobber): Likewise.
2893
2894 * rtl.h (expand_null_return, reg_classes_intersect_p): Add prototype.
2895 (mark_elimination): Fix typo in prototype.
2896
2897 * scan-decls.c: Include gansidecl.h.
2898
2899 * tree.h (using_eh_for_cleanups, supports_one_only): Add prototype.
9b91d8f4 2900
c7fdfd49
JL
2901Mon May 18 22:37:33 1998 Jeffrey A Law (law@cygnus.com)
2902
2903 * function.c (identify_blocks): Fix thinko when setting the
2904 block number for NOTE_INSN_BLOCK_END.
2905
53f2d033
NC
2906Mon May 18 15:30:42 1998 Nick Clifton <nickc@cygnus.com>
2907
f122eb7a 2908 * config/v850/lib1funcs.asm: Add .text pseudo op to start of
9b91d8f4 2909 ___udivsi3.
f122eb7a
NC
2910
2911 * config/v850/lib1funcs.asm: Fix .size pseudo ops to use three
9b91d8f4 2912 underscores for the prefixes to the names of the maths functions.
f122eb7a 2913
53f2d033
NC
2914 * dbxout.c (dbxout_parms): Revert to using DECL_ARG_TYPE. Add
2915 comment explaining why.
2916
ead17059
RH
2917Mon May 18 13:20:23 1998 Richard Henderson <rth@cygnus.com>
2918
2919 * tree.h (TYPE_SIZE_UNIT): New.
2920 (struct tree_type): Add size_unit member.
2921 * stor-layout.c (layout_type): Initialize it.
2922 * expr.c (get_inner_reference) [ARRAY_REF]: Use it.
2923 * tree.c (size_in_bytes, int_size_in_bytes): Likewise.
2924
069b95ce
RE
2925Mon May 18 12:07:37 1998 Richard Earnshaw (rearnsha@arm.com)
2926
2927 * stor-layout.c (layout_record): Fix off-by-one error when checking
2928 length of the TYPE_BINFO vector.
2929
972a4adb
NC
2930Mon May 18 10:59:23 1998 Nick Clifton <nickc@cygnus.com>
2931
2932 * dbxout.c (dbxout_parms): Use TREE_ARG to compute the type of a
2933 function parameter passed in memory.
2934
76ead72b
RL
2935Mon May 18 09:02:09 1998 Robert Lipe <robertl@dgii.com>
2936
2937 * dwarfout.h, dwarf2out.h, dbxout.h, sdbout.h: New files.
2938 Prototypes for externally used functions in respective C files.
2939 * dwarfout.c, dbxout.c, dwarf2out.c, sdbout.c, toplev,c,
2940 final.c: Include above files.
2941 * Makefile.in (toplev.o): Add dependency for above four headers.
2942 (final.o): Likewise.
2943 (dwarfout.o, dbxout.o, dwarf2out.o, sdbout.o): Depend on four
2944 respective header files.
2945
b0ccd8de
JL
2946Mon May 18 01:23:33 1998 Jeffrey A Law (law@cygnus.com)
2947
7e717196
JL
2948 * Makefile.in (TARGET_TOOLPREFIX): No longer define.
2949 (AR_FOR_TARGET, RANLIB_FOR_TARGET): Define to use versions in
2950 the build tree if they exist.
2951 (AR, AR_FLAGS, OLDAR, OLDAR_FLAGS, RANLIB, RANLIB_TEST): Update
2952 appropriately.
2953 (objdir): Let configure substitute value.
2954 (FLOAT_H): Let configure select a pre-built version from the
2955 config subdir.
2956 * build-make (INSTALL_TARGET, ALL): Disable, no longer needed.
2957 * configure.in: Substitute for objdir.
2958
88111b26
JL
2959 * Makefile.in (build_canonical, host_canonical): Let configure
2960 substitute values for these variables.
2961 * configure.in: Substitute for build_canonical, host_canonical
2962 and target_subdir in generated Makefile.
2963
d8af60bf
JL
2964 * output.h (find_basic_blocks): Declare.
2965 (free_basic_block_vars, set_block_num, life_analysis): Likewise.
2966
b0ccd8de
JL
2967 * Makefile.in (BISON): Use bison from the build tree if it exists.
2968 (FLEX): Similarly.
2969
88117d44
NC
2970Mon May 18 00:08:19 1998 Nick Clifton <nickc@cygnus.com>
2971
2972 * gcc.c (SWITCH_CURTAILS_COMPILATION): Definition.
2973 (DEFAULT_SWITCH_CURTAILS_COMPILATION): True for options -S and -c.
2974 (process_command): If HAVE_EXECUTABLE_SUFFIX is defined then scan
2975 command line arguments to see if an executable is not being
2976 created, and if so - do not append the suffix.
2977
2978 * tm.texi (SWITCH_CURTAILS_COMPILATION): Add description of new
2979 driver macro.
2980
e5e8a8bf
JW
2981Sun May 17 23:59:45 1998 John Wehle (john@feith.com)
2982
2983 * i386.h (ALIGN_DFmode): Delete.
2984 (CONSTANT_ALIGNMENT): Define.
2985 * varasm.c (force_const_mem): Use it.
2986
b771b6b4
RH
2987Sun May 17 19:31:05 1998 Richard Henderson <rth@cygnus.com>
2988
2989 * alpha.c (alpha_emit_conditional_branch): Clear cmp_code after
2990 using it with swap_condition, not before.
2991
0211b6ab
JW
2992Sun May 17 13:44:32 1998 Jim Wilson <wilson@cygnus.com>
2993
2994 * alias.c (mode_alias_check): Delete.
2995 (true_dependence, anti_dependence, output_dependence): Revert April 21
2996 change.
2997
c5991f68
KW
2998Sun May 17 08:45:21 1998 Krister Walfridsson <cato@df.lth.se>
2999
3fe4d12a 3000 * toplev.c (output_lang_identify): Enable prototype and definition.
c5991f68 3001
18f315a4
JL
3002Sun May 17 01:12:27 PDT 1998 Jeff Law (law@cygnus.com)
3003
3004 * version.c: Bump for snapshot.
3005
2a831d01
RH
3006Sat May 16 23:20:32 1998 Richard Henderson <rth@cygnus.com>
3007
3008 * alpha/osf.h (HAVE_STAMP_H): Define.
3009 * alpha.c: Use it.
3010 * alpha/netbsd.h, alpha/netbsd-elf.h: New files.
3011 * configure.in (alpha*-*-netbsd*): New.
3012 Based on patches from Paul H. Anderson <pha@pdq.com>.
3013
3014 * configure.in (alpha*-*-linux-*): Kill xm_defines.
3015 (alpha*-*-linux-gnulibc1*) [fixincludes]: Define.
3016 * alpha/xm-linux.h: Remove file.
3017
620422fd
DE
3018Sat May 16 18:32:45 1998 Doug Evans <devans@canuck.cygnus.com>
3019
3020 * dbxout.c (dbxout_parms): If mode of type of parameter living
3021 in memory doesn't match mode of DECL_RTL, make big endian correction.
3022
d2f2cb19
JW
3023Fri May 15 21:40:06 1998 John Wehle (john@feith.com)
3024
3025 * i386.md (movdi-1, movdi): Rewrite based on SI move patterns.
3026
bbc0e641
JM
3027Fri May 15 18:55:22 1998 Jason Merrill <jason@yorick.cygnus.com>
3028
3029 * tree.h (BINFO_SIZE, TYPE_BINFO_SIZE): New macros.
3030 * stor-layout.c (layout_record): Set it.
3031
3032Fri May 15 18:49:30 1998 Mark Mitchell <mmitchell@usa.net>
3033
3034 * toplev.c (rest_of_compilation): Don't defer nested functions.
3035
92834d7d
BM
3036Fri May 15 17:42:52 1998 Bob Manson <manson@charmed.cygnus.com>
3037
3038 * config/rs6000/rs6000.c (rs6000_stack_info): Align the stack bottom
3039 to an 8-byte boundary if info_ptr->fpmem_p.
3040
829002bb
BM
3041Fri May 15 17:36:11 1998 Bill Moyer <ttk@cygnus.com>
3042
3043 * loop.c (basic_induction_var): Added test preventing
3044 CCmode parameter passed to convert_modes().
3045
b24f65cd
APB
3046Fri May 15 17:26:18 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
3047
3048 * expr.c (expand_expr, case EXPR_WITH_FILE_LOCATION): Save/restore
3049 input_filename and lineno around expand_expr call. Set them to values
3050 in WFL before expand_expr call.
3051
b09293cc
BK
3052Fri May 15 12:44:57 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
3053
3054 * stor-layout.c (set_sizetype): Set TYPE_NAME on bitsizetype.
3055
f628873f
MM
3056Fri May 15 07:20:03 1998 Mark Mitchell <mmitchell@usa.net>
3057
3058 * fold-const.c (constant_boolean_node): New function.
3059 (fold): Use it.
3060
61fb6bac
R
3061Fri May 15 11:21:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3062
3063 * sh.c (gen_shl_and): Don't sign extend constant for kind two.
3064 Abort if trying to split kind 3 or 4 outside of combine.
3065
8f9661dd
JL
3066Fri May 15 01:47:37 1998 Jeffrey A Law (law@cygnus.com)
3067
3068 * mips.c (print_operand, case 'x'): Use HOST_WIDE_INT_PRINT_HEX.
3069
b22284e1
MK
3070Fri May 15 01:42:45 1998 Mumit Khan <khan@xraylith.wisc.edu>
3071
3072 * objc/Make-lang.in (OBJC_O): Add missing exeext.
3073 (libobjc.a, runtime-info.h): Likewise.
3074
8a022443
JW
3075Fri May 15 01:29:39 1998 John Wehle (john@feith.com)
3076
3077 * i386.h (DATA_ALIGNMENT): Define.
3078
aa6498c2
R
3079Fri May 15 05:35:37 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3080
3081 * reload1.c (delete_output_reload): Ignore single USE that
3082 was emitted for the pseudo use of this INSN.
3083 If the no reference to REG between OUTPUT_RELOAD_INSN and INSN
3084 remains, we can always delete OUTPUT_RELOAD_INSN.
3085
41372177
JW
3086Thu May 14 18:38:50 1998 Jim Wilson <wilson@cygnus.com>
3087
3088 * reload.c (find_reloads): Don't penalize SCRATCH output reload.
3089
ddc5654a
JL
3090Thu May 14 15:10:30 1998 Jeffrey A Law (law@cygnus.com)
3091
3092 * Makefile.in (expr.o): Remove dependency on deleted modemap.def file.
3093
9a0d1e1b
AM
3094Thu May 14 16:30:47 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
3095
3096 * eh-common.h: New file for basic EH data structures.
3097 * except.h: Various prototypes and structures for NEW_EH_MODEL
3098 * function.h (struct function): Add a struct eh_stack for the catch
3099 clause stack.
9b91d8f4 3100 * except.c (gen_exception_label): New function to generate an
9a0d1e1b
AM
3101 exception label.
3102 (push_eh_entry): Use gen_exception_label() and init 'label_used' field.
3103 (push_entry): New function to push an existing entry onto a stack.
9b91d8f4 3104 (receive_exception_label): New function to emit the code required
9a0d1e1b
AM
3105 at the start of all catch blocks.
3106 (struct func_eh_entry): New structure for maintaining handlers
3107 associated with EH regions.
3108 (new_eh_region_entry): New function to register an EH region.
3109 (add_new_handler): New function to register a handler with a region.
3110 (get_new_handler): Creates anew handler entry for registering.
3111 (find_func_region): New function to convert a NOTE eh region number
3112 to an Eh region index.
3113 (get_first_handler): New function to get the first handler in a region.
3114 (clear_function_eh_region): New function to release memory.
3115 (duplicate_handlers): New function to duplicate a list of handlers.
3116 (expand_eh_region_end): Create a new region entry node as well.
3117 (expand_leftover_cleanups): Call receive_exception_label() and
3118 register the cleanup as a handler to the current region.
3119 (expand_start_catch): New function to start a catch clause.
3120 (expand_end_catch): New function to end a catch clause.
3121 (expand_start_all_catch): restructure to not do the equivilent of
3122 what expand_start_catch() does now. Push the exception region being
3123 handled onto the catch stack.
3124 (output_exception_table_entry): Issue an entry for each handler
3125 associated with a region.
3126 (set_exception_lang_code): New function for setting the language code.
3127 (set_exception_version_code): New function to set the version number.
3128 (output_exception_table): Output version and language codes.
3129 (find_exception_handler_labels): Find handler labels using new scheme.
3130 (is_exception_handler_label): New function, returns 1 if label is
3131 present as a handler in some exception region.
3132 (check_exception_handler_labels): Use the new scheme.
3133 (init_eh_for_function): Initialize the catch stack.
3134 (save_eh_status): Save the catch stack.
3135 (restore_eh_status): Restore the catch stack.
3136 (scan_region): Don't remove unreferenced handler label. Flow does it.
3137 (get_reg_for_handler): New function to get the eh_context pointer
3138 passed by __throw.
3139 (expand_builtin_eh_stub): Changes required for NEW_EH_MODEL only.
3140 * final.c (final_scan_insn): With NEW_EH_MODEL, add EH table
3141 entry when processing END region rather that START region.
3142 * flow.c (find_basic_blocks_1): Find all potential handler regions
3143 now that we don't automatically know what the labels might be.
3144 Let scan_region() remove unreferenced EH BEGIN/END labels.
3145 * integrate.c (get_label_from_map): Put inlined labels onto the
3146 permanent obstack since we dont know which ones might be exception
3147 labels.
3148 (save_for_inline_copying): Make new copies of all the handlers.
3149 (expand_inline_function): Make new copies of all the handlers.
3150 * libgcc2.c: Remove local struct decls, and include eh-common.h.
9b91d8f4 3151 (find_exception_handler): With NEW_EH_MODEL the first matching
9a0d1e1b
AM
3152 region we find is the right one. Add eh_info as a new parameter.
3153 (__throw): Pass eh_info to find_exception_handler. Set handler
3154 and pass use different regs under NEW_EH_MODEL.
3155
2129b081
JW
3156Thu May 14 12:58:21 1998 Jim Wilson <wilson@cygnus.com>
3157
3158 * i960.h (hard_regno_mode_ok): Changed to function from array of
3159 unsigned.
3160 (HARD_REGNO_MODE_OK): Call function instead of testing bit.
3161 * i960.c (hard_regno_mode_ok): Changed to function from array of
3162 unsigned.
3163
029b38ff
R
3164Thu May 14 08:41:46 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3165
3166 * reload.c (remove_replacements): New function.
3167 * reload.h (remove_replacements): Declare.
3168 * reload1.c (choose_reload_regs): Disable some reloads that
3169 belong to inherited reloads.
3170
efdb3590
R
3171Thu May 14 02:17:17 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3172
9dd07f87
R
3173 * loop.c (scan_loop): Don't call move_moveables for optimize_size.
3174
efdb3590
R
3175 * reload1.c (merge_assigned_reloads): When merging, reset
3176 reload_spill_index for the eliminated reload.
3177
5d27de7d
JL
3178Wed May 13 17:51:13 1998 Jeffrey A Law (law@cygnus.com)
3179
3180 * haifa-sched.c (schedule_insns): Fix merge goof.
3181
92d4501f
JW
31821998-05-13 Jim Wilson <wilson@cygnus.com>
3183
3184 * varasm.c (make_decl_rtl): Revert April 1 change.
3185 * alpha/alpha.h, alpha/win-nt.h, arm/arm.h, i386/unix.h, i960/i960.h,
3186 m68k/linux.h, pa/pa.h, sparc/sparc.h, vax/vax.h (ASM_OUTPUT_MI_THUNK):
3187 Get function name from the SYMBOL_REF in the DECL_RTL, not from
3188 DECL_ASSEMBLER_NAME.
3189 * i386/winnt.c (gen_stdcall_suffix): Comment for questionable use of
3190 DECL_ASSEMBLER_NAME.
3191
d6cc54f6
JW
3192Wed May 13 13:09:19 1998 Jim Wilson <wilson@cygnus.com>
3193
3194 * i386.c (notice_update_cc, output_float_compare): Disable
3195 TARGET_CMOVE support.
3196
6d3352d9 3197Wed May 13 15:28:59 1998 Michael Meissner <meissner@cygnus.com>
0dfa1860
MM
3198 Jeff Law <law@cygnus.com>
3199
ae78d276
MM
3200 * rtlanal.c (find_reg_note): Ignore notes that are not on on
3201 insns of class 'i'.
3202 (find_regno_note): Likewise.
3203
82ce5b75
MM
3204 * Makefile.in (stor-layout.o): Depend on except.h
3205 (varasm.o, function.o): Likewise.
3206 (expr.o): Depend on except.h, modemap.def and hard-reg-set.h.
3207
0dfa1860
MM
3208 * Makefile.in (HOST_RTL): Add $(HOST_PREFIX)bitmap.o.
3209 (rtl.o, emit-rtl.o): Add dependency on bitmap.h.
3210 ($(HOST_PREFIX_1)rtl.o): Likewise.
3211 ($(HOST_PREFIX_1)bitmap.o): New host object.
3212 * emit-rtl.c (toplevel): Include bitmap.h.
3213 (gen_rtx): Handle 't' and 'b' nodes.
3214 * print-rtl.c (print_rtx): Handle printing NOTE_INSN_LIVE notes.
3215 Print block number for block begin/end notes. Print 't' type
3216 nodes as a pointer. Know that the 3rd argument of live range
3217 start/stop notes is really a range_info rtx. If type is 'b', print
3218 out argument as a bitmap.
3219 * rtl.c: Include bitmap.c.
3220 (copy_rtx): Copy tree nodes as is. Copy bitmaps if type is 'b'.
3221 (note_insn_name): Add NOTE_INSN_RANGE_{START,END}, NOTE_INSN_LIVE.
3222 * rtl.def (RANGE_LIVE): New node to hold live information while we
3223 recalculate the basic blocks.
3224 (RANGE_REG, RANGE_INFO): New rtl types for live range splitting.
9b91d8f4 3225 (RANGE_VAR): New node, to hold information saved in symbol node for New
0dfa1860
MM
3226 communicating live range information to the debug output functions.
3227 * rtl.h (rtunion_def): Add rttree and rtbit fields.
3228 (XBITMAP, XTREE): New accessor macros.
3229 (NOTE_LIVE_INFO): Overload NOTE_SOURCE_FILE for NOTE_INSN_LIVE notes.
3230 (NOTE_RANGE_INFO): Similarly for NOTE_INSN_RANGE_{START,END} notes.
3231 (NOTE_BLOCK_LIVE_RANGE_BLOCK): Define.
3232 (NOTE_INSN_RANGE_START, NOTE_INSN_RANGE_END, NOTE_INSN_LIVE): New notes.
3233 (RANGE_LIVE_{BITMAP,ORIG_BLOCK}): New accessor macros.
3234 (RANGE_REG_{SYMBOL,BLOCK}_NODE, RANGE_VAR_*): New accessor macros.
3235 (RANGE_INFO_*): Likewise.
3236 * sched.c (sched_analyze): Keep live range start/stop notes.
3237 (unlink_other_notes): Likewise.
3238 * haifa-sched.c (sched_analyze): Keep live range start/stop notes.
3239 (unlink_other_notes): Likewise.
3240 * tree.h (BLOCK_LIVE_RANGE_{START,END,VAR_FLAG}): New accessor macros.
3241 (BLOCK_LIVE_RANGE_FLAG): Likewise.
3242 (DECL_LIVE_RANGE_RTL): Likewise.
3243 (struct tree_block): Add live_range_flag, live_range_var_flag,
3244 live_range_start and live_range_end.
3245 (struct tree_decl): Add live_range_rtl field.
3246 * gengenrtl.c (type_from_format): Handle 'b' and 't'.
3247 (accessor_from_format): Likewise.
6d3352d9
MM
3248
3249 * haifa-sched.c (schedule_block): Make verbose output line up.
47312d84 3250 Also add a blank line in printing the individual ready lists.
6d3352d9 3251
63e76c87
KG
3252Wed May 13 15:43:44 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3253
3254 * Makefile.in (c-lang.o): Depend on c-tree.h, c-lex.h and toplev.h.
3255 (c-lex.o): Depend on output.h.
3256 (c-common.o): Likewise.
3257 (stmt.o): Likewise.
3258 (calls.o): Likewise.
3259 (integrate.o): Depend on toplev.h.
3260 (regclass.o): Depend on output.h.
3261 (final.o): Depend on reload.h.
3262
3263 * c-common.c: Include output.h.
3264 (check_format_info): Remove unused variable `integral_format'.
3265
3266 * c-decl.c (print_lang_decl): Mark parameters `file', `node' and
3267 `indent' with ATTRIBUTE_UNUSED.
3268 (print_lang_type): Likewise.
3269 (maybe_build_cleanup): Likewise for parameter `decl'.
3270 (copy_lang_decl): Likewise for parameter `node'.
3271
3272 * c-lang.c: Include c-tree.h, c-lex.h and toplev.h.
3273 (lang_print_xnode): Mark parameters `file', `node' and `indent'
3274 with ATTRIBUTE_UNUSED.
3275 (lookup_interface): Likewise for parameter `arg'.
3276 (is_class_name): Likewise.
3277 (maybe_objc_check_decl): Likewise for parameter `decl'.
3278 (maybe_objc_comptypes): Likewise for parameters `lhs', `rhs' and
3279 `reflexive'.
3280 (maybe_objc_method_name): Likewise for parameter `decl'.
3281 (build_objc_string): Likewise for parameters `len' and `str'.
3282
3283 * c-lex.c: Include output.h.
3284
3285 * c-lex.h (position_after_white_space): Correct typo in prototype.
3286
3287 * c-tree.h (finish_file, c_expand_start_cond, c_expand_start_else,
3288 c_expand_end_cond, init_iterators): Add prototypes.
3289
3290 * caller-save.c (set_reg_live): Mark parameters `reg' and `setter'
3291 with ATTRIBUTE_UNUSED.
3292
3293 * calls.c: Include output.h.
3294
3295 * cccp.c (pipe_closed): Mark parameter `signo' with
3296 ATTRIBUTE_UNUSED.
3297
3298 * combine.c: Move inclusion of expr.h to after insn-config.h.
3299
3300 * iris6.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Don't define
3301 as empty, rather define as ((void)0).
3302
3303 * sparc.c (sparc_check_64): Add braces around ambiguous `else'.
3304 Add parentheses around assignment used as truth value.
3305
3306 * cplus-dem.c (squangle_mop_up): Change return type to void.
3307 (internal_cplus_demangle): Remove unused parameter `options'.
3308 All callers changed.
3309 (cplus_demangle_opname): Remove function wide variable `int i' and
3310 replace with `size_t i' at each location where it is used.
3311 (cplus_demangle_opname): change type of `i' from int to size_t.
3312
3313 * cppexp.c (right_shift): Mark parameter `pfile' with
3314 ATTRIBUTE_UNUSED.
3315
3316 * cpphash.c (cpp_lookup): Likewise.
3317 (cpp_hash_cleanup): Likewise.
3318
3319 * cpplib.c (parse_name): Add a prototype and make it static.
3320 (null_underflow): Mark parameter `pfile' with ATTRIBUTE_UNUSED.
3321 (null_cleanup): Likewise for parameters `pbuf' and `pfile'.
3322 (macro_cleanup): Likewise for parameter `pfile'.
3323 (file_cleanup): Likewise.
3324
3325 * cpplib.h (cpp_reader_init, cpp_options_init, cpp_start_read,
3326 cpp_read_check_assertion, skip_rest_of_line): Add prototypes.
3327
3328 * crtstuff.c (force_to_data, __CTOR_LIST__, force_to_data,
3329 __DTOR_END__, __FRAME_END__): Mark with ATTRIBUTE_UNUSED.
3330
3331 * cse.c (cse_check_loop_start): Mark parameter `set' with
3332 ATTRIBUTE_UNUSED.
3333
3334 * dbxout.c (flag_minimal_debug, have_used_extensions,
3335 source_label_number): Move inside macro wrapper check against
3336 defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO).
3337
3338 * dwarf2out.c (gen_entry_point_die): Hide prototype and definition.
3339
3340 * except.h (doing_eh): Provide prototype.
3341
3342 * expr.c: Move inclusion of expr.h to after insn-config.h.
3343
3344 * final.c: Include reload.h.
3345 (shorten_branches): Cast the first argument of bzero to char *.
3346
3347 * fix-header.c (cpp_print_containing_files): Mark parameter
3348 `pfile' with ATTRIBUTE_UNUSED.
3349 (cpp_fatal): Likewise.
3350
3351 * flow.c (find_basic_blocks_1): Cast the first argument of bzero
3352 to char *.
3353
3354 * genattrtab.c (make_length_attrs): Change the type of variable
3355 `i' from int to size_t.
3356 (zero_fn): Mark parameter `exp' with ATTRIBUTE_UNUSED.
3357 (one_fn): Likewise.
9b91d8f4 3358
63e76c87
KG
3359 * genextract.c (main): When generating insn-extract.c, mark
3360 variable `junk' with ATTRIBUTE_UNUSED.
3361
3362 * gengenrtl.c (gencode): When generating genrtl.c, cast the first
3363 argument of bzero to char*.
3364
3365 * integrate.c: Include toplev.h.
3366
3367 * libgcc2.c: Wrap `struct exception_table' and
3368 `find_exception_handler' in macro DWARF2_UNWIND_INFO.
3369
3370 * objc/Make-lang.in (objc-act.o): Depend on toplev.h.
9b91d8f4 3371
63e76c87
KG
3372 * objc/objc-act.c: Include toplev.h.
3373 (lang_print_xnode): Mark parameters `file', `node' and `indent'
3374 with ATTRIBUTE_UNUSED.
3375 (finish_protocol): Likewise for parameter `protocol'.
3376
3377 * output.h (declare_weak): Add prototype.
3378 (decode_reg_name): Don't wrap with TREE_CODE macro.
3379 (assemble_alias): Add prototype.
3380
3381 * regclass.c: Include output.h.
3382
3383 * reload.h (reloads_conflict): Add prototype.
3384
3385 * rtl.h (print_rtl_single, mark_elimiation, reg_class_subset_p,
3386 output_func_start_profiler): Add prototypes.
3387
3388 * rtlanal.c (reg_set_p_1): Mark parameters `x' and `pat' with
3389 ATTRIBUTE_UNUSED.
3390
3391 * scan-decls.c: Include scan.h.
3392
3393 * scan.h (recognized_function, recognized_extern): Add prototypes.
3394
3395 * stmt.c: Include output.h.
3396
3397 * toplev.c (error_for_asm, warning_for_asm): Remove prototypes.
3398 (output_lang_identify): Hide prototype and definition.
3399 (float_signal): Mark parameter `signo' with ATTRIBUTE_UNUSED.
3400 (pipe_closed): Likewise.
3401
3402 * toplev.h (count_error, strip_off_ending, error_for_asm,
3403 warning_for_asm): Add prototypes.
3404
a494747c 3405Wed May 13 12:54:19 1998 Michael Meissner <meissner@cygnus.com>
a494747c 3406
32e705c4
MM
3407 * toplev.c (rest_of_compilation): "Charge" final for any time
3408 doing various cleanup operations after finishing compilation
3409 of a function.
3410
9b91d8f4 3411 * flow.c (dump_flow_info): Also print number of sets and
6fc4610b
MM
3412 whether or not the pseudo is a user variable.
3413
a494747c
MM
3414 * flow.c (reg_n_max): New global variable.
3415 * regclass.c (allocate_reg_info): Keep reg_n_max up to date.
3416 Delete regno_max variable.
3417 * regs.h (REG_N_CHECK): Define.
3418 (REG_N_REFS, REG_N_SETS, REG_N_DEATHS): Use REG_N_CHECK.
3419 (REG_N_CHANGES_SIZE, REG_N_CALLS_CROSSED, REG_LIVE_LENGTH): Likewise.
3420 (REGNO_FIRST_UID, REGNO_LAST_UID, REGNO_LAST_NOTE_UID): Likewise.
3421
21622caf
JL
3422Wed May 13 12:54:19 1998 Martin von Loewis <martin@mira.isdn.cs.tu-berlin.de>
3423
3424 * acconfig.h (ENABLE_CHECKING): Undefine.
3425 * configure.in (--enable-checking): New option.
3426
d668e863
R
3427Wed May 13 08:52:08 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3428
3429 * reload1.c (merge_assigned_reloads): Can merge
3430 RELOAD_FOR_INPUT_ADDRESS and RELOAD_FOR_OTHER_ADDRESS even
3431 if RELOAD_FOR_INPUT with the same reload_reg_rtx is present.
3432
b706d7f2
JW
3433Tue May 12 20:05:57 1998 Jim Wilson <wilson@cygnus.com>
3434
3435 * collect2.c (main): Ignore do_collecting when COLLECT_EXPORT_LIST.
3436
4117a96b
R
3437Wed May 13 03:23:45 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3438
3439 * reload1.c (gen_reload): Create REG_EQUIV notes.
3440
4d3eb414
R
3441Tue May 12 22:21:07 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3442
3443 * reload1.c (reload): Fix check for USEs to use code of pattern.
3444 (choose_reload_regs): Remove dead variable use_insn.
3445
b10c8966
JL
3446Tue May 12 14:04:49 1998 Jeffrey A Law (law@cygnus.com)
3447
9b91d8f4 3448 * pa.h (DBX_CONTIN_LENGTH): Reduce to 3000 bytes.
b10c8966 3449
cbb13457
MM
3450Tue May 12 15:16:02 1998 Michael Meissner <meissner@cygnus.com>
3451
3452 * haifa-sched.c (HAIFA_INLINE): Define to be __inline unless
3453 already defined.
3454 (find_insn_{,mem_}list): Use HAIFA_INLINE, not __inline.
3455 (insn_{unit,issue_delay}): Ditto.
3456 (blockage_range): Ditto.
3457 (actual_hazard{,_this_instance}): Ditto.
3458 (schedule_unit): Ditto.
3459 (potential_hazard): Ditto.
3460 (insn_cost): Ditto.
3461 (swap_sort): Ditto.
3462 (queue_insn): Ditto.
3463 (birthing_insn_p): Ditto.
3464 (adjust_priority): Ditto.
3465 (get_block_head_tail): Ditto.
3466 (init_rgn_data_dependences): Ditto.
3467
1478d88a
KK
3468Tue May 12 10:27:54 1998 Klaus Kaempf <kkaempf@progis.de>
3469
3470 * alpha/vms.h (COMMON_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON): Define.
3471
a688e0b7
GK
3472Tue May 12 11:44:14 1998 Gavin Koch <gavin@cygnus.com>
3473
3474 * config/mips/mips.h (ASM_OUTPUT_ALIGN): Remove trailing semi-colon.
3475
ec350bdd
GK
3476Tue May 12 11:38:31 1998 Gavin Koch <gavin@cygnus.com>
3477
3478 * config/mips/mips.md (dslot): Move after definition of "cpu"
3479 attribute. Handle r3900 case.
3480
d4ba0ead
KG
3481Tue May 12 10:21:36 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3482
3483 * system.h: Define the STRINGIFY macro here.
3484 * protoize.c: Not here.
3485 * gengenrtl.c (DEF_RTL_EXPR): Use the STRINGIFY macro.
3486
8a198bd2
JW
3487Tue May 12 00:47:33 1998 John Wehle (john@feith.com)
3488
9b91d8f4 3489 * varasm.c (assemble_variable): Compute the alignment of the data
8a198bd2
JW
3490 earlier so that both initialized and uninitialized variables are
3491 effected by DATA_ALIGNMENT.
3492 * tm.texi (DATA_ALIGNMENT): Updated appropriately.
3493
eace3df1
JL
3494Mon May 11 19:57:58 1998 Jeffrey A Law (law@cygnus.com)
3495
3496 * mips.c: Prototype static functions.
3497
a9e95099
JW
3498Mon May 11 17:43:03 1998 Jim Wilson <wilson@cygnus.com>
3499
b1a7d591
JW
3500 * regmove.c (fixup_match_2, find_matches, regmove_profitable):
3501 Add explanatory comments.
3502
a9e95099
JW
3503 * sparc.h (SPARC_INCOMING_INT_ARG_FIRST): Support TARGET_FLAT.
3504
0f177d7c
RH
3505Mon May 11 17:24:27 1998 Richard Henderson <rth@cygnus.com>
3506
3507 * sparc.md (ffsdi2): Disable. Simplify the expression as well.
3508
28233641
JW
3509Mon May 11 13:30:44 1998 Jim Wilson <wilson@cygnus.com>
3510
3511 * varasm.c (make_decl_rtl): Disable April 1 change.
3512
e55a5ea6
RH
3513Mon May 11 09:14:41 1998 Richard Henderson <rth@cygnus.com>
3514
3515 * configure.in (alpha-*-linux-gnu): Undo lossage from gcc2 merge.
3516
e83015a9
RH
3517Mon May 11 08:24:18 1998 Richard Henderson <rth@cygnus.com>
3518
3519 * alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Add '`'.
3520 * alpha.c (print_operand): Handle it.
9b91d8f4 3521 * alpha.md (fix_truncdfsi2, fix_truncsfsi2): New patterns and
e83015a9
RH
3522 related define_splits. Also add peepholes for SImode reload
3523 plus sign_extend lossage.
3524
320e7c40
KG
3525Mon May 11 09:33:10 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3526
3527 * genattr.c: Include stdarg.h/varargs.h. Change function
3528 `fatal' to use variable arguments instead of faking it with
3529 integer parameters. Provide a prototype which also
3530 checks the format specifiers using ATTRIBUTE_PRINTF_1.
3531
3532 * genattrtab.c: Likewise.
3533 * gencodes.c: Likewise.
3534 * genconfig.c: Likewise.
3535 * genemit.c: Likewise.
3536 * genextract.c: Likewise.
3537 * genflags.c: Likewise.
3538 * genopinit.c: Likewise.
3539 * genpeep.c: Likewise.
3540 * genrecog.c: Likewise.
3541 * genoutput.c: Likewise. Similarly for function `error'.
3542
e9b4fabf
JL
3543Sun May 10 02:27:03 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3544
3545 * acconfig.h (HAVE_VOLATILE): Insert stub for autoconf.
3546 * alocal.m4 (GCC_C_VOLATILE): New autoconf test.
3547 * configure.in: Use GCC_C_VOLATILE.
3548 * system.h (volatile): Define as empty if no volatile support is
3549 available.
3550
3551Sun May 10 01:21:43 1998 Jeffrey A Law (law@cygnus.com)
3552
3553 * genemit.c (output_add_clobbers): Removed unused variable 'i' from
3554 generated fucntion.
3555
f283421d
RH
3556Sat May 9 02:02:15 1998 Richard Henderson <rth@cygnus.com>
3557
3558 * loop.c (get_condition): Don't combine when either compare is MODE_CC.
3559 * alpha.c (alpha_emit_conditional_branch): New function. Taken from
3560 the body of beq; additionally set the mode of the branch to CCmode for
9b91d8f4 3561 FP compares and not fast_math.
f283421d
RH
3562 (alpha_emit_conditional_move): Always use a compare insn for FP
3563 when not fast_math, as well as setting CCmode on the cmov.
3564 * alpha.md (beq, bne, blt, et al): Call alpha_emit_conditional_branch.
3565
3566 * machmode.h (COMPLEX_MODE_P): New macro.
3567
53c0919d
RH
3568Sat May 9 01:53:23 1998 Richard Henderson <rth@cygnus.com>
3569
3570 * haifa-sched.c (print_exp): Fix typo.
3571
23d297ab
JL
3572Fri May 8 21:48:50 PDT 1998 Jeff Law (law@cygnus.com)
3573
3574 * version.c: Bump for snapshot.
3575
cf879efa
MM
3576Fri May 8 18:23:08 1998 Michael Meissner <meissner@cygnus.com>
3577
3578 * final.c (final_scan_insn): Call fatal_insn instead of abort if
3579 we could not split an insn when required to.
3580
5b8ae21f
MM
3581 * m32r.md ({add,sub}di3): Add define_splits and appropriate low
3582 level insns.
3583 (peepholes): Disable peepholes that call dead_or_set_p.
3584 (movsi): Rewrite to handle addresses better after last change.
3585 Add define_split to split load of addresses in large/medium modes.
3586 (prologue): Call m32r_expand_prologue.
3587 (movsi_{push,pop}): Generators for push/pop.
3588 (movsi): Support PRE_{INC,DEC}, POST_INC.
3589 (mov{di,df}): Rewrite. Always split the insns.
3590 (movsf): Add define_split to get register load in correct mode.
3591 (cmp_ne_small_const_insn): Use 'N' instead of 'S' constraint.
3592 (attributes): Rewrite attributes so that type indicates both the
3593 type and the length of the insn directly.
3594 (all insns): Change to use new type attributes.
3595 (debug): New attribute to convey whether -mdebug was used.
3596 (opt_space): New attribute to convey whether -Os was used.
3597 (function units): Loads are 3 cycles, not 2. Better classify all
3598 insns into short/long.
3599 (load/store/extend insns): Add separate case for load/store
3600 indirect operations without an offset.
3601 (divsi3): Division is a long operation, not short.
3602
3603 * m32r.h (LEGITIMATE_LO_SUM_ADDRESS_P): Do not allow LO_SUM for
3604 modes > 1 word.
3605 (GO_IF_MODE_DEPENDENT_ADDRESS): LO_SUM is now mode dependent.
3606 (CONST_OK_FOR_LETTER_P): Make 'N' handle reverse 8 bit compares.
3607 (EXTRA_CONSTRAINT): Remove 'S' special support. Add 'U' for
3608 operands with PRE_{INC,DEC}, POST_INC.
3609 (FUNCTION_PROFILER): Call abort instead of doing nothing.
3610 (GO_IF_LEGITIMATE_ADDRESS): Allow PRE_{INC,DEC}, POST_INC of
3611 SImode variables.
3612 (gen_split_move_double): Declare.
3613 (EXTRA_CONSTRAINT): Add 'T' for memory reference with no offset.
3614
3615 * m32r.c (gen_split_move_double): Fix typo. Also, don't call
3616 emit_move_insn, build up SET's directly.
3617 (toplevel): Include system.h, not stdio.h.
3618 (move_double_src_operand): Allow any DF or DI mode constant.
3619 (gen_split_move_double): Split moves of DI or DF values into the
3620 appropriate moves, loads, or stores. Don't handle use of auto
3621 inc/dec if using dead index. Do handle overlapping moves, etc.
3622 (m32r_frame_info): Remove prologue_size field.
3623 (m32r_compute_frame_size): Don't calculate prologue size.
3624 (m32r_output_function_prologue): Change to pretty much a NOP.
3625 (m32r_expand_prologue): Expand prologue as a series of INSNs.
3626 (m32r_print_operand): Add support for PRE_{INC,DEC}, POST_INC.
3627 (m32r_print_operand_address): Ditto.
9b91d8f4 3628
d7c2e385
L
3629Fri May 8 14:13:21 1998 H.J. Lu (hjl@gnu.org)
3630
3631 * reload1.c (emit_reload_insns): When performing expensive
3632 optimizations, do not output the last reload insn if OLD is
3633 not the dest of NSN and is in the src and is clobbered by INSN.
3634
560bd19e
KG
3635Fri May 8 09:47:29 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3636
3637 * Makefile.in (genrtl.o): Depend on system.h.
3638 * gengenrtl.c (gencode): When creating genrtl.c, have it
3639 include system.h.
3640
0d33d22e
AS
3641Fri May 8 10:57:33 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3642
3643 * config/m68k/t-linux: Remove extra stuff already included in
3644 config/t-linux.
3645
dea4ae0d
MH
3646Fri May 8 09:53:24 Paul Eggert <eggert@twinsun.com>
3647
3648 * fixinc.wrap: Renamed from fixinc.math. Put wrapper around
3649 curses.h if it contains `typedef char bool;', as suggested by
3650 Manfred Hollstein <manfred@s-direktnet.de>.
3651
3652 * configure.in: Rename fixinc.math to fixinc.wrap.
3653
02e56202
JW
3654Thu May 7 19:26:34 1998 Jim Wilson <wilson@cygnus.com>
3655
bbeb7b65
JW
3656 * gcc.c (read_specs): Handle missing blank line at end of specs file.
3657
02e56202
JW
3658 * i386.md (movsicc, movhicc, movsicc_1, movhicc_1, movsfcc_1,
3659 movdfcc_1): Disable.
3660
e445171e
JW
3661Thu May 7 15:39:14 1998 Jim Wilson <wilson@cygnus.com>
3662
3663 * configure.in (enable_threads): Rename to enable_threads_flag before
3664 main loop. Set enable_threads to enable_threads_flag inside main
3665 loop.
3666
a1b5a7e1
MM
3667Thu May 7 17:38:03 1998 Michael Meissner <meissner@cygnus.com>
3668
3669 * r6000/eabi.asm (__eabi): Restore LR in case __eabi is called
3670 multiple times.
3671
76b4b31e
KG
3672Thu May 7 14:26:05 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3673
3674 * aclocal.m4 (GCC_FUNC_VFPRINTF_DOPRNT): New macro.
9b91d8f4 3675
76b4b31e
KG
3676 * configure.in: Add a call to GCC_FUNC_VFPRINTF_DOPRNT.
3677 (AC_CHECK_HEADERS): Remove unused check for varargs.h,sys/varargs.h.
3678 (AC_CHECK_FUNCS): Remove unused check for vprintf.
9b91d8f4 3679
76b4b31e
KG
3680 * Makefile.in: Add support for linking in vfprintf.c and doprint.c.
3681 (cccp.o): Depend on gansidecl.h.
3682 (cexp.o): Likewise.
3683
3684 * cccp.c: Convert from using PRINTF_ALIST/PRINTF_DCL to VPROTO as
3685 per the rest of gcc source.
3686 * cexp.y: Likewise. Include gansidecl.h and remove all code made
3687 redundant.
3688
3689 * cccp.c: Remove checks for HAVE_VPRINTF and the associated code
3690 used when vfprintf is missing.
3691 * cexp.y: Likewise.
3692 * gcc.c: Likewise.
3693 * genattrtab.c: Likewise.
3694 * mips-tfile.c: Likewise.
3695 * toplev.c: Likewise.
3696
3697 * vfprintf.c: New file.
3698 * doprint.c: New file.
3699
bebc4663
JL
3700Thu May 7 10:18:41 1998 Jeffrey A Law (law@cygnus.com)
3701
3702 * config/linux.h (ASM_COMMENT_START): Remove from here,
3703 * config/linux-aout.h (ASM_COMMENT_START): and here,
3704 * config/i386/linux.h (ASM_COMMENT_START): to here,
3705 * config/i386/linux-aout.h (ASM_COMMENT_START): and here.
3706 * config/i386/linux-oldld.h (ASM_COMMENT_START): Define
3707 here as '#' too.
3708
436bf9fb
AS
3709Thu May 7 10:55:59 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3710
3711 * config/m68k/m68k.md (adddi3, subdi3): Properly negate the DImode
9b91d8f4 3712 constant.
436bf9fb 3713
f103890b
RL
3714Wed May 6 22:32:37 CDT 1998 Robert Lipe <robertl@dgii.com>
3715
3716 * Makefile.in (dwarfout.o) Add toplev.h dependency.
3717 * dwarfout.c, i386.c: Include toplev.h
3718 * toplev.h: (pfatal_with_name) Add prototype.
3719
024b5658
JM
3720Wed May 6 19:02:29 1998 Jason Merrill <jason@yorick.cygnus.com>
3721
3722 * Makefile.in: Fix .SUFFIXES.
3723
410c3875
AM
3724Wed May 6 19:31:32 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
3725
3726 * config/linux.h (ASM_COMMENT_START): Define as "#".
3727 * config/linux-aout.h (ASM_COMMENT_START): Likewise.
3728
7e073314
JW
3729Wed May 6 15:51:39 1998 Jim Wilson <wilson@cygnus.com>
3730
71ebb3b8
JW
3731 * objc/Make-lang.h (objc-parse.o): Add toplev.h dependency.
3732 * objc/objc-parse.y, objc/objc-parse.c: Regenerate.
3733
a0c8e1b2
JW
3734 * toplev.c: Include toplev.h.
3735 * Makefile.in (c-common.o, c-convert.o, c-decl.o, c-iterate.o,
3736 c-lex.o, c-parse.o, c-pragma.o, c-typeck.o, calls.o, convert.o,
3737 dwarf2out.o, except.o, expr.o, final.o, fold-const.o, function.o,
3738 hash.o, profile.o, real.o, reg-stack.o, regclass.o, reload.o,
3739 reload1.o, stmt.o, stor-layout.o, tlink.o, tree.o, varasm.o): Add
3740 toplev.h dependency.
9b91d8f4 3741
1b15c5de
JW
3742 * mips/mips.c (save_restore_insns): Change FRAME_POINTER_REGNUM to
3743 HARD_FRAME_POINTER_REGNUM.
3744
7e073314
JW
3745 * expr.c (target_temp_slot_level): Delete duplicate definition.
3746
d06eab0d
JL
3747Wed May 6 16:46:01 1998 Jeffrey A Law (law@cygnus.com)
3748
df03cab5 3749 * stmt.c (mark_seen_cases): Make it have external linkage again.
0586a4ce
JL
3750 * expr.h (mark_seen_cases): Add declaration, but only when tree.h
3751 has been included.
df03cab5 3752
6b879bcc
JL
3753 * haifa-sched.c (print_value, case SUBREG): Fix typo.
3754
6b28fd63
JL
3755 * i386.c (output_387_binary_op): Add some braces to avoid warnings.
3756 * i386.h (REG_CLASS_CONTENTS): Similarly.
3757
cc132865
JL
3758 * toplev.c (-fsched-max): Delete flag.
3759 (-fsched-interblock-max-blocks,-fsched-interblock-max-insns): Likewise.
3760 * haifa-sched.c: Remove -fsched-max-N, -fsched-interblock-max-blocks-N
3761 and -fsched-interblock-max-insns-N support. Remove INTERBLOCK_DEBUG
3762 conditionals.
3763
3764 * haifa-sched.c (find_rgns): Correctly handle reducible loops with
3765 inner loops which are not reducible.
3766
fd4a1ca5
JL
3767 * loop.c (regs_match_p): Fix typo in prototype.
3768
d06eab0d
JL
3769 * regmove.c (try_auto_increment): Wrap declaration inside an
3770 #ifdef AUTO_INC_DEC.
3771
31bfbf1f
MM
3772Wed May 6 17:07:47 1998 Michael Meissner <meissner@cygnus.com>
3773
3774 * final.c (output_operand_lossage): Call fatal with the operand
3775 lossage message instead of calling abort.
3776
e9a780ec
KG
3777Wed May 6 15:37:27 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3778
3779 * c-common.c: Convert to using ctype macros defined in system.h.
3780 * c-lex.c: Likewise.
3781 * cccp.c: Likewise.
3782 * collect2.c: Likewise.
3783 * rs6000.c: Likewise.
3784 * cpplib.c: Likewise.
3785 * fix-header.c: Likewise.
3786 * gcc.c: Likewise.
3787 * gen-protos.c: Likewise.
3788 * pexecute.c: Likewise.
3789 * protoize.c: Likewise.
3790 * rtl.c: Likewise.
3791 * scan.c: Likewise.
3792 * stmt.c: Likewise.
3793 * tlink.c: Likewise.
9b91d8f4 3794 * toplev.c: Likewise.
e9a780ec 3795
d4c3e60e
GK
3796Wed May 6 14:44:14 1998 Gavin Koch <gavin@cygnus.com>
3797
9b91d8f4 3798 * config/mips/r3900.h (SUBTARGET_ASM_DEBUGGING_SPEC) :
d4c3e60e
GK
3799 Replace -gdwarf-2 with -g0.
3800
90fbb8c9
KG
3801Wed May 6 11:43:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3802
3803 * Makefile.in (mips-tfile.o, mips-tdump.o): Depend on system.h.
3804 * mips-tdump.c: Include system.h, remove redundant headers.
3805 * mips-tfile.c: Likewise. Also, convert all ctype function calls
3806 to calls of the macro versions defined in system.h.
3807
3808 * objc/Make-lang.in (objc-act.o): Depend on system.h.
3809 * objc/objc-act.c: Include system.h, remove redundant headers.
3810
8f81384f
KG
3811Wed May 6 11:21:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3812
3813 * configure.in (AC_CHECK_FUNCS): Add isascii.
3814 (GCC_NEED_DECLARATIONS): Add atof.
3815
3816 * system.h: Provide prototypes for abort, atof, atol and sbrk here.
3817 * rtl.c, rtl.h, toplev.c, tree.h: Not here.
3818
e572c0c6
KG
3819Wed May 6 10:52:49 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3820
3821 * system.h: Wrap time.h and sys/file.h in autoconf checks.
3822 Provide default definitions for O_RDONLY and O_WRONLY here.
3823
3824 * cccp.c, cpplib.c, fix-header.c, gcc.c, protoize.c: Not here.
3825
8830da36
MM
38261998-05-06 Mark Mitchell <mmitchell@usa.net>
3827
3828 * tree.h (IS_EXPR_CODE_CLASS): Remove bogus '3'.
3829
c5ff95e6
RL
3830Wed May 6 06:35:38 1998 Robert Lipe <robertl@dgii.com>
3831
3832 * toplev.h: New file. Protypes for functions in toplev.c.
3833 * tree.h, rtl.h: Deleted protos for functions in toplev.c.
9b91d8f4
UD
3834 * c-common.c, c-convert.c, c-decl.c, c-iterate.c, c-lex.c,
3835 c-parse.in, c-parse.y, c-pragma.c, c-typeck.c, calls.c,
3836 convert.c, dwarf2out.c, except.c, expr.c, final.c, fold-const.c,
3837 function.c, hash.c, profile.c, real.c, reg-stack.c, regclass.c,
3838 reload.c, reload1.c, stmt.c, stor-layout.c, tlink.c, tree.c,
c5ff95e6
RL
3839 varasm.c: include it.
3840
15ebe47d
JL
3841Wed May 6 01:09:01 1998 Jeffrey A Law (law@cygnus.com)
3842 Jim Wilson (wilson@cygnus.com)
3843
3844 * haifa-sched.c (find_rgns): In no_loops case, fix test for leaf
3845 blocks. Check for 1 successor which is the EXIT_BLOCK.
3846
3847 * haifa-sched.c (find_rgns): Detect unreachable blocks, including
3848 unreachable loops with more than one block.
3849
dbbfa8c8
MH
3850Wed May 6 08:22:24 1998 Manfred Hollstein <manfred@s-direktnet.de>
3851
3852 * fix-header.c (write_rbrac): Add "abort" to functions which need to
3853 be protected.
3854
f5963e61
JL
3855Wed May 6 00:09:36 1998 Jeffrey A Law (law@cygnus.com)
3856
3857 * Check in merge from gcc2. See ChangeLog.12 for details.
3858
3d90c2b5
JW
3859Tue May 5 14:33:49 1998 Jim Wilson <wilson@cygnus.com>
3860
c6a9dea8
JW
3861 * c-common.c (scan_char_table): Separate 's' and 'c'. 'c' does not
3862 accept 'a' flag. 'S' does accept 'a' flag.
3863 (check_format_info): When pedantic, warn for m/C/S/a/A formats,
3864 and `a' flag.
3865
3d90c2b5
JW
3866 * elf64.h (MULTILIB_DEFAULTS): Move definition after mips.h include.
3867
97b57a81
AS
3868Tue May 5 10:50:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
3869
3870 * config/m68k/m68k.h: Declare functions from m68k.c used in
3871 macros and machine description.
3872 (ASM_OUTPUT_LONG_DOUBLE): Always use `l' flag in print format for
3873 long values.
3874 (ASM_OUTPUT_FLOAT): Likewise.
3875 (ASM_OUTPUT_FLOAT_OPERAND): Likewise.
3876
c5c63738
JM
3877Tue May 5 01:28:12 1998 Jason Merrill <jason@yorick.cygnus.com>
3878
3879 * tree.def: Add NAMESPACE_DECL.
3880 * dwarfout.c (type_ok_for_scope): Ignore NAMESPACE_DECLs for now.
3881 * dwarf2out.c (push_decl_scope): Likewise.
3882 (scope_die_for): Likewise.
3883 * tree.c (decl_function_context): Use TREE_CODE_CLASS to determine
3884 how to get next context level.
3885
2e14a41b
JW
3886Tue May 5 01:43:16 1998 Jim Wilson <wilson@cygnus.com>
3887
3888 * i386.c (output_fix_trunc): Add code to emulate non-popping DImode
3889 case.
3890
f78c792c
JL
3891Tue May 5 01:15:06 1998 Jeffrey A Law (law@cygnus.com)
3892
8b05263d
JL
3893 * h8300.h (ADDITIONAL_REGISTER_NAMES): Add "er" registers.
3894
f78c792c
JL
3895 * reorg.c (fill_slots_from_thread): Update REG_DEAD/REG_UNUSED notes
3896 for any insns skipped at the start of a block because they were
3897 redundant.
3898
4330b0e7
JW
3899Mon May 4 20:23:51 1998 Jim Wilson <wilson@cygnus.com>
3900
3901 * alpha.h (DBX_CONTIN_LENGTH): Decrease to 3000.
3902
b57062ca
UD
39031998-05-04 Ulrich Drepper <drepper@cygnus.com>
3904
3905 * c-common.c (format_char_info): Add new field hhlen.
3906 (print_char_table, scan_char_table, time_char_table): Initialize
3907 hhlen field appropriately.
3908 (char_format_info): Recognize hh modifier and lookup correct char
3909 table entry.
3910
06eaa86f
JW
3911Mon May 4 19:15:29 1998 Jim Wilson <wilson@cygnus.com>
3912
3913 * expr.c (expand_expr, case INDIRECT_REF): Don't optimize string
3914 reference if this is a store.
3915
9ed5dc54
RH
3916Mon May 4 17:25:17 1998 Richard Henderson <rth@cygnus.com>
3917
3918 * sparc.c (output_move_quad): Fix typo in mov_by_64 argument.
3919
fb6d9312
RL
3920Sun May 3 23:57:25 1998 Robert Lipe <robertl@dgii.com>
3921
3922 Make UnixWare 7 bootstrap support work with final shipping product.
b57062ca 3923 * configure.in: (i[34567]86-*-sysv5): append, not overwrite, xm_file.
fb6d9312
RL
3924 Pick up xm-siglist and xm-alloca.
3925 (xm_defines): Add USG so dbxout will build.
3926 * configure: Regenerate.
3927
b53beeb2 3928Sun May 3 13:51:34 PDT 1998 Richard Henderson <rth@cygnus.com>
82d6b402
RH
3929
3930 Support for official Sparc V9 ABI:
3931 * sparc.c (sparc_override_options): Force stack bias off for !arch64.
3932 Care for flag_pcc_struct_return default.
3933 (output_move_quad): Rewrite to move by halves on v9 and in the
3934 proper direction.
3935 (move_quad_direction): New function.
3936 (output_fp_move_quad): Use it to determine the direction of copy.
3937 (function_arg_slotno): Return -1 for FP reg overflow as well.
3938 (function_arg_record_value*): New functions.
3939 (function_arg): Use them. Streamline unprototyped parameter passing.
3940 (function_arg_pass_by_reference): Pass TCmode by reference.
3941 (function_value): New function.
3942 * sparc.h (PTRDIFF_TYPE, SIZE_TYPE): For -pedantic's sake, don't use
3943 long long in 64-bit mode.
3944 (RETURN_IN_MEMORY): v9 returns structs < 32-bytes in regs.
3945 (DEFAULT_PCC_STRUCT_RETURN): Make the default detectable.
3946 (BASE_RETURN_VALUE_REG): Consider complex float types for arch64.
3947 (BASE_OUTGOING_VALUE_REG, BASE_PASSING_ARG_REG): Likewise.
3948 (BASE_INCOMING_ARG_REG): Likewise.
3949 (FUNCTION_VALUE): Call function_value.
3950 (FUNCTION_OUTGOING_VALUE, LIBCALL_VALUE): Likewise.
3951 * sparc.md (movdi_sp32_v9): Disable for arch64.
3952 (movsf, movdf, movtf): Sort all ulternatives using fp regs first.
3953 (call_value_address_sp64): Remove register class constraints.
3954 (call_value_symbolic_sp64): Likewise.
3955 (nonlocal_goto): Pass label reg directly to goto_handlers. Constrain
3956 v9 case to 32-bit constants.
3957 (goto_handler_and_restore_v9): Provide a version for arch64.
3958 * sparc/linux64.h (SIZE_TYPE, PTRDIFF_TYPE): Remove private definition.
3959 * sparc/sp64-aout.h (TARGET_DEFAULT): Turn on stack bias.
3960 (CPP_PREDEFINES): New.
3961 * sparc/sp64-elf.h: Likewise.
3962 (PREFERRED_DEBUGGING_TYPE): Dwarf2.
3963 (ASM_OUTPUT_DWARF2_ADDR_CONST): New.
3964 * sparc/sysv4.h (SIZE_TYPE, PTRDIFF_TYPE): Undo svr4.h's changes.
3965
e40abc32
JL
3966Sat May 2 17:47:17 PDT 1998 Jeff Law (law@cygnus.com)
3967
3968 * version.c: Bump for snapshot.
3969
b60a8416
R
3970Sat May 2 01:37:29 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3971
3972 * reload.c (find_reloads): Emit USEs to mark where a pseudo
1e89ac8a 3973 is reloaded with the MEM of its stack slot.
b60a8416
R
3974 * reload1.c (cannot_omit_stores): Delete.
3975 (reload): Don't initialize it.
3976 Don't apply avoid_return_reg logic to USEs.
3977 When done, remove USEs that have a REG_EQUAL note on them.
3978 (emit_reload_insns): Handle case where we have inherited a MEM.
4d3eb414 3979 (choose_reload_regs): Likewise.
b60a8416
R
3980 (delete_output_reload): Don't use cannot_omit_stores.
3981
c1879238
JW
3982Thu Apr 30 18:59:03 1998 Jim Wilson <wilson@cygnus.com>
3983
3984 * Makefile.in (cpp.info, gcc.info): Put -o option before input file.
3985
459b3825
MM
3986Thu Apr 30 16:57:34 1998 Michael Meissner <meissner@cygnus.com>
3987
3988 * haifa-sched.c (print_{exp,value}): Various changes to make the
3989 debug output easier to read. Also, use only one buffer, and make
3990 sure the buffer we are passed in doesn't overflow.
3991 (safe_concat): Concatenate to a buffer without overflow.
3992
3fe4d12a 3993Thu Apr 30 16:57:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
459b3825
MM
3994
3995 * haifa-sched.c (alloc_{INSN,EXPR}_LIST): Make static to agree
3996 with the prototype.
b57062ca 3997
93da030f
R
3998Wed Apr 29 21:45:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
3999
4000 * sched.c (new_insn_dead_notes): Check if the register was
4001 used in the original instruction.
4002 * haifa-sched.c (new_insn_dead_notes): Likewise.
4003
0c84c618
JW
4004Wed Apr 29 13:46:03 1998 Jim Wilson <wilson@cygnus.com>
4005
4006 * dwarf2out.c (scope_die_for): If could not find proper scope,
4007 check for and handle tagged type with incorrect TYPE_CONTEXT.
4008
bf5f0e90
JC
4009Wed Apr 29 15:34:40 1998 John Carr <jfc@mit.edu>
4010
4011 * calls.c (expand_call): Fix recognition of C++ operator new.
4012
4013 * alias.c (mode_alias_check): Disable type based alias detection.
4014
a0281dae
GK
4015Wed Apr 29 15:06:42 1998 Gavin Koch <gavin@cygnus.com>
4016
4017 * config/mips/elf.h (ASM_OUTPUT_DEF,ASM_WEAKEN_LABEL,
4018 ASM_OUTPUT_WEAK_ALIAS): Define.
4019 * config/mips/elf64.h: Same.
4020 * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK,
4021 ASM_WEAKEN_LABEL): Removed.
4022
55666054
AS
4023Wed Apr 29 10:53:29 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4024
4025 * calls.c (expand_call): Bump the length limit on the specially
4026 recognized function names to 17.
4027
2cea586a
JW
4028Tue Apr 28 17:53:33 1998 Jim Wilson <wilson@cygnus.com>
4029
f60d6248
JW
4030 * ginclude/stddef.h: Add check for _MACHINE_ANSI_H_ for BSD/OS
4031 when undefining macros at the end.
4032
bf931ec8
JW
4033 * expr.c (expand_builtin, case BUILT_IN_MEMSET): Break if either
4034 val or len has TREE_SIDE_EFFECTS set.
4035
2cea586a
JW
4036 * sparc.md (mulsidi3): Call const v8plus and v8plus routines.
4037 (mulsidi3_v8plus, const_mulsidi3_v8plus): Delete asterisk from name.
4038 (smuldi3_highpart): Call const v8plus routine.
4039 (smulsi3_highpart_v8plus): Renamed from smulsidi3_highpart_v8plus.
4040 (const_smulsi3_highpart_v8plus): New pattern.
4041 (smulsi3_highpart_sp32): Renamed from smulsidi3_highpart_sp32.
4042 (umulsidi3): Call const v8plus routine.
4043 (umulsi3_highpart): Handle const before v8plus. Call const v8plus
4044 routine.
4045 (umulsi3_highpart_v8plus): Renamed from umulsidi3_highpart_v8plus.
4046 (umulsi3_highpart_sp32): Renamed from umulsidi3_highpart_sp32.
4047
2b7972b0
MM
4048Tue Apr 28 08:55:26 1998 Michael Meissner <meissner@cygnus.com>
4049
4050 * m32r.c (*_oper{and|ator}): Change enum arguments and return
4051 values to int, so they can be prototyped even in files that don't
4052 include rtl.h.
4053 ({small,large}_insn_p): Ditto.
4054 (m32r_select_cc_mode): Ditto.
4055 (gen_compare): Ditto.
4056 (function_arg_partial_nregs): Ditto.
4057 (m32r_setup_incoming_varargs): Ditto.
4058 (init_reg_tables): Add prototype.
4059 (m32r_frame_info): Add prolog_size field.
4060 (m32r_compute_frame_size): Calculate the size of the prologue.
4061 (m32r_first_insn_address): Return prologue size.
4062 (m32r_output_function_prologue): Calculate frame size before
4063 printing out information. Print out the prologue size.
4064
4065 * m32r.h: Prototype all functions in m32r.c.
4066 (FIRST_INSN_ADDRESS): Declare, returning prologue size.
4067
4068 * m32r.md (bcc functions): Cast enum's to int.
4069
4070 * m32r.c (conditional_move_operand): Silence a debug message.
4071 ({small,long}_insn): New predicates.
b57062ca 4072
2b7972b0
MM
4073 * m32r.h (TARGET_M32R): New macro.
4074 (PREDICATE_CODES): Rearrange somewhat, add small_insn/long_insn.
4075 (HAIFA_P): Define as 1/0 depending on whether the Haifa scheduler
4076 was selected.
4077 (ISSUE_RATE): Define as 2.
4078
4079 * m32r.md (insn_size): New attribute.
4080 ({,rev_}branch_insn): Add .s qualifier to branches believed to be
4081 short.
4082 (m32r): New attribute.
4083
4084 * configure.in (enable_haifa): Switch m32r to Haifa by default.
4085 * configure: Regenerate.
4086
4087 (Changes from Nick Clifton <nickc@cygnus.com>)
4088 * m32r.h (EXTRA_CONSTRAINT): Implement 'S' constraint to perfoirm
4089 the equivalent of a negated 'I' constraint.
4090 (PRESERVE_DEATH_INFO_REGNO_P): Define in order to allow peephole
4091 optimisation to work.
4092
4093 * m32r.md (cmp_ne_small_const_insn): Use 'S' constriant rather
4094 than 'I' since the value is negated.
4095 (peephole): Add peephole optimisation to cope with optimization of
4096 divide and subtracts of the same operands.
4097
4098 * m32r.c zero_and_one, emit_cond_move): Add support for MVFC.
b57062ca 4099 * m32r.h: Ditto.
2b7972b0
MM
4100 * m32r.md: Ditto.
4101
4102 * m32r.h (PREDICATE_CODES): Add declaration of machine specific
4103 predicates.
4104
bd55c374
MH
4105Tue Apr 28 07:25:53 1998 Manfred Hollstein <manfred@s-direktnet.de>
4106
4107 * Makefile.in (libgcc2.ready): Revert last patch (Apr 24).
4108
3a6bd8c0
NC
4109Mon Apr 27 18:39:47 1998 Nick Clifton <nickc@cygnus.com>
4110
4111 * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Check against
4112 frame_pointer_rtx not FRAME_POINTER_REGNUM.
4113
0628fde6
JW
4114Mon Apr 27 18:36:28 1998 Jim Wilson <wilson@cygnus.com>
4115
561cf7b1
JW
4116 * reg-stack.c: Revert last patch (Apr 20).
4117 (convert_regs): Set insn to PREV_INSN (next) after do while loop.
4118
1688d6d2
JW
4119 * m68k/lb1sf68.asm (Laddsf$3): Fix typos in mcf5200 exg code.
4120
0628fde6
JW
4121 * loop.c (check_dbra_loop): New locals jump, first_compare, and
4122 compare_and_branch. Call get_condition to set first_compare.
4123 Set compare_and_branch to number of compare/branch instructions.
4124 Replace PREV_INSN (PREV_INSN (loop_end)) with first_compare.
4125 Replace '2' with compare_and_branch.
4126
07623417
AM
4127Mon Apr 27 15:53:30 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
4128
4129 * cplus-dem.c (demangle_qualified): Replace missing else.
4130
97d6fd65
R
4131Mon Apr 27 20:22:08 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4132
4133 * sh.c (gen_ashift_hi): Don't make SUBREG of a SUBREG.
4134
3d5a0820
R
4135Mon Apr 27 18:23:51 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4136
4137 * sh.c (sh_expand_prologue, sh_expand_epilogue):
4138 If TARGET_DOUBLE_ALIGN, preserve 64 bit stack alignment.
4139 * sh.h (STACK_BOUNDARY): Likewise.
4140
ef41dabb
R
4141Mon Apr 27 17:22:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4142
4143 * sh.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
4144
14bf4a33
MM
4145Mon Apr 27 08:55:23 1998 Michael Meissner <meissner@cygnus.com>
4146
22c4957e
MM
4147 * system.h (abort): If abort is not defined, and neither is
4148 USE_SYSTEM_ABORT, redefine abort to call fprintf and exit,
4149 reporting the line and filename of the error.
4150
4151 * .gdbinit: Add breakpoints on exit and fancy_abort.
4152
563c063f
MM
4153 * final.c (split_double): Avoid a compiler warning if
4154 BITS_PER_WORD is less than or equal to HOST_BIT_PER_WIDE_INT.
4155
14bf4a33
MM
4156 * rtl.h (JUMP_{CROSS_JUMP,NOOP_MOVES,AFTER_REGSCAN}): New macros
4157 for calling jump_optimize.
4158
4159 * toplev.c (rest_of_compilation): Call jump_optimize using JUMP_*
4160 macros, rather than 0/1's.
4161
5d02ee66
RH
4162Sun Apr 26 23:19:10 1998 Richard Henderson <rth@cygnus.com>
4163
4164 * alpha.h (CONST_COSTS): Zero is always free.
4165 (RTX_COSTS): Add EV6 costs. Abort if alpha_cpu is unknown.
4166
7bf40741
AS
4167Sun Apr 26 15:38:50 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4168
4169 * cplus-dem.c (gnu_special): Fix off-by-one bug when checking the
4170 length in the name of a virtual table.
4171
556ccd9b
RH
4172Sun Apr 26 01:21:06 1998 Richard Henderson <rth@cygnus.com>
4173
4174 * alpha.c (print_operand): Don't add 'v' suffix for ALPHA_FPTM_N.
4175
1206d294
JL
4176Sat Apr 25 22:11:38 PDT 1998 Jeff Law (law@cygnus.com)
4177
4178 * version.c: Bump for snapshot.
4179
4f242db3
JL
4180Sat Apr 25 17:17:15 1998 Jeffrey A Law (law@cygnus.com)
4181
4182 * fold-const.c (fold_convert): Fix typo.
4183
de12be17
JC
4184Sat Apr 25 17:55:54 1998 John Carr <jfc@mit.edu>
4185
4186 * alias.c (alias_invariant): New variable.
4187 (record_base_value): New argument INVARIANT.
4188 (memrefs_conflict_p): If a register has an entry in the alias_invariant
4189 array, try substituting that value for the register.
4190
4191 * rtl.h: Declare record_base_value.
4192
4193 * loop.c, unroll.c: Update callers of record_base_value.
4194
4195 * alias.c (find_base_value, find_base_term): SIGN_EXTEND and
4196 ZERO_EXTEND do not affect base values.
4197
fe81dd69
JL
4198Fri Apr 24 15:57:02 1998 Jeffrey A Law (law@cygnus.com)
4199
fb2c5c00
JL
4200 * dbxout.c (dbxout_type): Fix typo.
4201 (dbxout_range_type): Another HOST_WIDE_INT_PRINT_DEC fix.
4202
fe81dd69
JL
4203 * configure.in: Use CC_FOR_BUILD, not BUILD_CC.
4204
87d1ea79
JC
4205Fri Apr 24 16:11:47 1998 John Carr <jfc@mit.edu>
4206
4207 * expr.c (expand_builtin, case MEMSET): Set MEM_IN_STRUCT_P
4208 if the argument is the address of a structure or array.
4209
4210 * configure.in: Enable Haifa scheduler by default for SPARC.
4211
e89d3e6f
R
4212Fri Apr 24 20:55:47 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4213
4214 * cse.c (cse_set_around_loop): Don't do optimization when
4215 new pseudos are created.
4216
442f4018
JL
4217Fri Apr 24 11:00:18 1998 Jeffrey A Law (law@cygnus.com)
4218
4219 * dbxout.c (dbxout_type_fields): Use HOST_WIDE_INT_PRINT_DEC
4220 appropriately.
4221 (dbxout_type_method_1, dbxout_type): Likewise.
4222 (print_int_cst_octal, print_octal, dbxout_symbol): Likewise.
4223 (dbxout_type): Fix check for when to print a type range in
4224 octal vs decimal.
4225
7174c937
R
4226Fri Apr 24 16:45:03 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4227
4228 * (gen_shl_and, in case 1): Fix comparison with mask.
4229
0b812758
NC
4230Fri Apr 24 06:46:40 1998 Nick Clifton <nickc@cygnus.com>
4231
4232 * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Disallow frame
4233 pointer as second register in REG+REG pair.
4234
753a73c8
KG
4235Fri Apr 24 09:22:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4236
4237 * c-common.c (check_format_info): Don't check for the 'x' format
4238 character twice, instead check for 'x' and 'X'
4239
4a1991b3
MH
4240Fri Apr 24 08:02:30 1998 Manfred Hollstein <manfred@s-direktnet.de>
4241
4242 * Makefile.in (libgcc2.ready): Add explicit dependancy from
4243 $(STMP_FIXPROTO) to ensure all necessary include files have
4244 been created and to guarantee proper parallel builds.
4245
aec373f1
R
4246Fri Apr 24 04:42:35 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4247
4248 * sh.c (sh_expand_prologue, in !SH3E code): Don't push an extra
4249 register for stdarg functions.
4250 * sh.h (current_function_varargs): Declare.
4251 (FUNCTION_ARG): Ignore NAMED for stdarg functions.
4252
f5880dbe
JW
42531998-04-23 Jim Wilson <wilson@cygnus.com>
4254
f1f53f0b
JW
4255 * frame.c, libgcc2.c (stdlib.h, unistd.h): Don't include when
4256 inhibit_libc is defined.
4257
f5880dbe
JW
4258 * c-aux-info.c (gen_type): Use DECL_NAME only for TYPE_DECL.
4259
8ade1519
JW
4260Thu Apr 23 19:09:33 1998 Jim Wilson <wilson@cygnus.com>
4261
4262 * profile.c (tablejump_entry_p): New function.
4263 (branch_prob): Add code to recognize MIPS tablejump entry branch.
4264 Use tablejump_entry_p in MIPS and HPPA tablejump checking code.
4265
a2538ff7
NC
4266Thu Apr 23 15:01:13 1998 Nick Clifton <nickc@cygnus.com>
4267
4268 * config/arm/arm.c (find_barrier): Return as soon as a barrier is
4269 found, rather than at end of the loop, after the insn has been
b57062ca 4270 changed.
a2538ff7 4271
d0c42859
R
4272Thu Apr 23 20:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
4273
4274 * sh.c (gen_ashift_hi): Implement right shifts via gen_ashift.
4275 * sh.md (ashrhi3_k, lshrhi3_k, lshrhi3_m, lshrhi3, lshrhi3+1): Delete.
4276
693e265f
MM
4277Wed Apr 22 17:07:35 1998 Michael Meissner <meissner@cygnus.com>
4278
4279 * loop.c (note_addr_stored): Correct function to take 2 arguments,
4280 instead of 1.
4281
4282 * rtl.def (MATCH_INSN2): Add new matching pattern.
b57062ca 4283 * genrecog.c (add_to_sequence): Support MATCH_INSN2.
693e265f 4284
27eef9ce
JC
4285Wed Apr 22 15:52:22 1998 John Carr <jfc@mit.edu>
4286
4287 * emit-rtl.c (gen_highpart): The high part of a CONST_INT is not zero
4288 if HOST_BITS_PER_WIDE_INT is larger than BITS_PER_WORD.
b57062ca 4289
27eef9ce
JC
4290 * final.c (split_double): Sign extend both halves of a split CONST_INT.
4291
d972dd33
JL
4292Wed Apr 22 10:42:45 1998 Jeffrey A Law (law@cygnus.com)
4293
4294 * mips.c (compute_frame_size): Change only argument to a HOST_WIDE_INT.
4295
5e5199e8
AM
4296Wed Apr 22 10:53:49 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
4297
4298 * cplus-dem.c (struct work stuff): Add field for B and K mangle codes.
4299 (cplus_demangle_opname): Call mop_up_squangle.
b57062ca 4300 (cplus_demangle): Initialize squangle info, then call
5e5199e8 4301 internal_cplus_demangle. (Most code moved there as well)
b57062ca 4302 (internal_cplus_demangle): New function, performs most of what use
5e5199e8
AM
4303 to be done in cplus_demangle, but is only called with this file.
4304 (squangle_mop_up): New function to clean up B and K code data.
4305 (mop_up): set pointers to NULL after freeing.
b57062ca 4306 (demangle_signature, demangle_template, demangle_class): Add
5e5199e8
AM
4307 switch elements to handle K and B codes.
4308 (demangle_prefix, gnu_special, demangle_qualified): Add
4309 code to handle K and B codes.
4310 (do_type, demangle_fund_type): Handle B and K codes.
4311 (remember_Ktype): New function to store K info.
4312 (register_Btype, remember_Btype): New functions for B codes.
4313 (forget_B_and_K_types): New function to destroy B and K info.
4314
0dacbd0e
JW
43151998-04-21 Jim Wilson <wilson@cygnus.com>
4316
4317 * stmt.c (check_seenlabel): When search for line number note for
4318 warning, handle case where there is no such note.
4319
4ceb7595
JC
4320Tue Apr 21 20:48:37 1998 John Carr <jfc@mit.edu>
4321
4322 * genemit.c (gen_exp): Allow machine description to set mode of
4323 MATCH_OP_DUP.
4324
d09c9385
JC
4325Tue Apr 21 16:36:01 1998 John Carr <jfc@mit.edu>
4326
4327 * alias.c (mode_alias_check): New function.
4328 (true_dependence, anti_dependence, output_dependence): Call
4329 mode_alias_check.
4330
1eeed24e
JL
4331Tue Apr 21 12:05:32 1998 Jeffrey A Law (law@cygnus.com)
4332
d1c17572
JL
4333 * mips.h (STACK_BOUNDARY): Allow specific targets to override.
4334 (MIPS_STACK_ALIGN): Similarly.
4335
a6d7e156
JL
4336 * c-common.c (type_for_mode): Handle TI types.
4337 * c-decl.c (intTI_type_node, unsigned_int_TI_type_node): Define.
4338 (init_decl_processing): Handle TI types.
4339 * c-tree.h (intTI_type_node, unsigned_int_TI_type_node): Declare.
4340
1eeed24e
JL
4341 * mips.c (block_move_loop): Test Pmode == DImode instead of
4342 TARGET_MIPS64.
4343 (expand_block_move, save_restore_insns): Likewise.
4344 (function_prologue, mips_expand_prologue): Likewise.
4345 (mips_expand_epilogue): Likewise.
4346 * mips.h (POINTER_SIZE): Allow specific targets to override.
4347 (Pmode): Allow specific targets to override.
4348 (FUNCTION_PROFILER): Test Pmode == DImode instead of TARGET_MIPS64
4349 (POINTER_BOUNDARY, FUNCTION_MODE): Likewise.
4350 (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE): Likewise.
4351 (TRAMPOLINE_ALIGNMENT, INITIALIZE_TRAMPOLINE): Likewise.
4352 (CASE_VECTOR_MODE, ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
4353 (ASM_OUTPUT_ADDR_DIFF_ELT, SIZE_TYPE, PTRDIFF_TYPE): Likewise.
4354 * mips.md (indirect, tablejump & casesi support): Test for
4355 Pmode == DImode instead of TARGET_MIPS64.
4356 (call patterns): Likewise.
4357
d2f5ef70
KG
4358Tue Apr 21 09:43:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4359
4360 * objc/sendmsg.c: Define gen_rtx_MEM() to 1, as is already done
4361 for gen_rtx(MEM, ...).
4362
cb85a2f3
RH
4363Tue Apr 21 02:15:36 1998 Richard Henderson <rth@cygnus.com>
4364
4365 * sparc.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Rewrite
4366 to not be so gross, and to properly function with PIC.
4367
bb27e6c9
JW
4368Mon Apr 20 20:44:25 1998 Jim Wilson <wilson@cygnus.com>
4369
99b13ed3
JW
4370 * frame.c (heapsort): Rename to frame_heapsort.
4371
bb27e6c9
JW
4372 * gcc.c (do_spec_1, case '['): Move flag out of loop and initialize it.
4373
a9a05945
DE
4374Mon Apr 20 12:43:09 1998 Doug Evans <devans@canuck.cygnus.com>
4375
4376 * flow.c (sbitmap_vector_alloc): Ensure sbitmaps properly aligned.
4377
dc0f0eb8
JW
4378Mon Apr 20 15:04:14 1998 John Wehle (john@feith.com)
4379
4380 * i386.md (movsf_push, movdf_push, movxf_push): Allow memory
4381 operands during and after reload.
4382
95707627
R
4383Mon Apr 20 22:37:50 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4384
ba70e85a
JR
4385 * final.c (shorten_branches, init_insn_lengths): Move code
4386 to free label_align, uid_shuid, insn_lengths, insn_addresses
4387 and uid_align from the former function into the latter one;
4388 Add code to clear these variables.
4389 * sh.h (label_align): Remove declaration.
95707627 4390
0cd355fe
MM
4391Mon Apr 20 14:48:29 1998 Michael Meissner <meissner@cygnus.com>
4392
763d7ce8
MM
4393 * gcc.c (lang_specific_driver): Declare prototype properly so
4394 fatal can be passed to it without error.
4395
f55b1ca8
MM
4396 * configure.in (AC_CHECK_FUNCS): Check for strchr and strrchr.
4397 * configure: Regenerate.
4398 * config.in: Add #undef's for strchr and strrchr.
4399
4400 * protoize.c (toplevel): If we have rindex, but not strrchr, map
4401 rindex to strrchr.
4402 (file_could_be_converted): Use strrchr, not rindex since rindex is
4403 not defined on Linux systems when _POSIX_SOURCE is defined.
4404 (file_normally_convertible): Ditto.
4405 (process_aux_info_file): Ditto.
4406 (main): Ditto.
4407
0cd355fe
MM
4408 * rs6000.md (mov{sf,df} define_splits): When splitting a move of
4409 a constant to an integer register, don't split the insns that do
4410 the simple AND and OR operations, rather just split each word, and
4411 let the normal movsi define split handle it further.
4412
a0798779
R
4413Mon Apr 20 18:19:40 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
4414
4415 * sh.c (find_barrier): Fix bug in ADDR_DIFF_VEC handling.
4416 (split_branches): Call init_insn_lengths.
4417
ced8dd8c
MM
4418Mon Apr 20 07:37:49 1998 Michael Meissner <meissner@cygnus.com>
4419
4420 * i386.c: Include expr.h to get the change_address prototype
4421 declared.
b57062ca 4422
f37eb5cb
L
4423Mon Apr 20 01:00:05 1998 H.J. Lu (hjl@gnu.org)
4424
4425 * reg-stack.c (subst_asm_stack_regs): Change to return the last
4426 new insn generated by this function.
4427 (subst_stack_regs): Likewise.
4428 (convert_regs): Record the last newly generated insn and use
4429 it for change_stack () instead of INSN.
4430
49fb8382
MH
4431Sun Apr 19 15:41:24 1998 Manfred Hollstein <manfred@s-direktnet.de>
4432
4433 * fix-header.c (enum special_file): Undefine enumerators if they
4434 are already defined by include files.
4435 * fixproto (rel_source_file in unistd.h stdlib.h): Prefix file protection
4436 macro with '__' to not pollute user namespace.
4437
c6a754f2
RH
4438Sun Apr 19 02:42:06 1998 Richard Henderson <rth@cygnus.com>
4439
4440 * haifa-sched.c (queue_to_ready): Fix typo in prototype.
4441
399cc148
JL
4442Sat Apr 18 23:52:35 PDT 1998 Jeff Law (law@cygnus.com)
4443
4444 * version.c: Bump for snapshot.
4445
84b77fba
JW
4446Sat Apr 18 18:30:22 1998 Jim Wilson <wilson@cygnus.com>
4447
07415a17
JL
4448 * i386.md (fix_truncsfdi2+[123]): Add + to operand 1 constraints.
4449
84b77fba
JW
4450 * i386.h (CPP_CPU_DEFAULT): Renamed to CPP_CPU_DEFAULT_SPEC.
4451 Add missing -Dpentium* options.
4452 (CPP_CPU_SPEC): Delete redundant definition. Include cpp_cpu_default
4453 instead of CPP_CPU_DEFAULT.
4454 (EXTRA_SPECS): Add entry for cpp_cpu_default.
4455
db72d7a1
DE
4456Sat Apr 18 19:06:59 1998 David Edelsohn <edelsohn@mhpcc.edu>
4457
4458 * rs6000.md (floatsidf2_loadaddr): rs6000_fpmem_offset will be
4459 negative in a stackless frame.
4460 * rs6000.c (rs6000_stack_info): Don't include fixed-size link area
4461 in stackless frame size. Support 64-bit stackless frame size.
4462 Combine fpmem offset calculations and don't add total_size to
4463 offset if not pushing a stack frame.
4464
a1ecb5ca
JW
4465Sat Apr 18 15:41:16 1998 Jim Wilson <wilson@cygnus.com>
4466
4467 * regmove.c (fixup_match_1): In three places, in flag_exceptions
4468 check, change p to q.
4469
a2a05b0a
JW
4470Sat Apr 18 15:30:49 1998 Jim Wilson <wilson@cygnus.com>
4471
4472 * gcc.c (lang_specific_driver): Add new parm type to prototype.
4473 (added_libraries): New file scope static variable.
4474 (process_command): Initialize added_libraries. Pass it to
4475 lang_specific_driver.
4476 (main): Use added_libraries in check for no input files.
b57062ca 4477
284d86e9
JC
4478Sat Apr 18 01:23:11 1998 John Carr <jfc@mit.edu>
4479
4480 * sparc.c, sparc.h, sparc.md, sol2.h: Many changes related to V9
4481 code generation. Use 64 bit instructions in 32 bit mode when
4482 possible. Use V9 return instruction. UltraSPARC optimizations.
4483
4484 * sparc.h: Change gen_rtx (CODE to gen_rtx_CODE (.
4485
43be8193
JL
4486Fri Apr 17 22:38:17 1998 Jeffrey A Law (law@cygnus.com)
4487
ea8693a4
JL
4488 * global.c (global_alloc): Don't pass HARD_CONST (0) to find_reg,
4489 just pass zero. That will work regardless of the size of HARD_REG_SET.
4490
43be8193
JL
4491 * libgcc2.c (__floatdisf): Fix a couple typos.
4492
45df6aea
JW
4493Fri Apr 17 17:28:26 1998 Jim Wilson <wilson@cygnus.com>
4494
4495 * Makefile.in (mostlyclean): Delete *.mach and *.bp files.
4496
6cca74ab
GM
4497Fri Apr 17 16:35:35 1998 Greg McGary <gkm@gnu.org>
4498
4499 * emit-rtl.c (gen_highpart): initialize `word' properly for pseudo.
4500
77e6b0eb
JC
4501Fri Apr 17 14:30:37 1998 John Carr <jfc@mit.edu>
4502
4503 * emit-rtl.c (operand_subword_force): If a register can not be
4504 accessed by words, copy it to a pseudo register.
4505
27f4cfdb
JW
4506Fri Apr 17 14:30:37 1998 Jim Wilson <wilson@cygnus.com>
4507
4508 * rs6000/vxppc.h (CPP_SPEC): Add support for mrelocatable*.
4509
f4a73984
MM
4510Fri Apr 17 17:01:25 1998 Michael Meissner <meissner@cygnus.com>
4511
4512 * tree.h (mark_seen_cases): Delete declaration.
4513
00769100
JL
4514Fri Apr 17 13:32:20 1998 Jeffrey A Law (law@cygnus.com)
4515
4516 * stmt.c (mark_seen_cases): Make static and add prototype.
4517
2467749d
KG
4518Fri Apr 17 11:21:43 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4519
4520 * frame.c: Include stdlib.h and unistd.h to possibly get various
4521 function prototypes. The fixproto script guarantees these header
4522 files exist on the target system.
4523 * libgcc2.c: Likewise.
b57062ca 4524
2467749d
KG
4525 * gthr-single.h (__gthread_mutex_lock, __gthread_mutex_trylock,
4526 __gthread_mutex_unlock): Add __attribute__ ((__unused__)) to the
4527 function parameters.
4528 * libgcc2.c (__udiv_w_sdiv): Likewise.
4529
74c5186c
JL
4530Thu Apr 16 22:41:02 1998 Jeffrey A Law (law@cygnus.com)
4531
ac546323
JL
4532 * varasm.c (asm_output_bss): Add prototype.
4533 (asm_output_aligned_bss): Likewise.
4534
4535 * unroll.c (verify_addresses): Add prototype.
4536
4537 * toplev.c: Add many prototypes. Too many to mention here.
4538
4539 * stmt.c (check_seenlabel): Add prototype.
4540
4541 * rtlanal.c (reg_set_p_1): Add prototype.
4542 (reg_set_last_1): Likewise.
4543
4544 * reorg.c (find_dead_or_set_registers): Add prototype.
b57062ca 4545
ac546323
JL
4546 * regmove (try_auto_increment): Add prototype.
4547
4548 * reg-stack.c (pop_stack): Add prototype.
4549
4550 * recog.c (validate_replace_rtx_1): Add prototype.
4551 (find_cosntant_term_loc): Likewise.
4552
a777ae13
JL
4553 * loop.c (regs_patch_p): Add prototype.
4554 (add_label_notes, count_nonfixed_reads): Likewise.
4555 (find_single_use_in_loop): Likewise.
4556 (express_from): Surround prototype with #ifdef.
4557 (giv_sort): Similarly.
4558
4559 * jump.c (mark_modified_reg): Add prototype.
4560
4561 * haifa-sched.c (is_prisky): Add prototype.
4562 (queue_to_ready): Likewise.
4563
4564 * genextract.c (gen_insn): Add prototype.
4565
4566 * genemit.c (max_operand_1): Add prototype.
4567 (max_operand_vec, print_code, gen_exp, gen_insn): Likewise.
4568 (gen_expand, gen_explit, output_add_clobbers): Likewise.
4569 (output_init_mov_optab): Likewise.
4570
4571 * genattrtab.c (attr_hash_add_rtx): Add prototype.
4572 (attr_hash_add_string, write_length_unit_log): Likewise.
4573
4574 * genattr.c (init_range): Add prototype.
4575
4576 * combine.c (sets_function_arg_p): Add prototype.
4577
4578 * expr.c (store_constructor_field): Add prototype.
4579 (get_memory_usage_from_modifier): Likewise
4580
4581 * expmed.c (synth_mult): Add prototype.
4582 (choose_multiplier, invert_mod2n): Likewise.
4583
242c13b0
JL
4584 * except.c (push_eh_entry): Add prototype.
4585 (pop_eh_entry, enqueue_eh_entry, dequeu_eh_entry): Likewise.
4586 (call_get_eh_context, start_dynamic_cleanup): Likewise.
4587 (start_dynamic_handler, can_throw): Likewise.
4588 (output_exception_table_entry, scan_region): Likewise.
4589 (eh_regs, set_insn_eh_region): Likewise.
4590
1ad4f46b
JL
4591 * dwarfout.c (decl_class_context): Add prototype.
4592 (output_inheritance_die, type_ok_for_scope): Likewise.
4593
e822c593
JL
4594 * c-lex.c (skip_white_space_on_line): Add prototype.
4595
70fec650
JL
4596 * alias.c (record_set): Add prototype.
4597 (find_base_term, base_alias_check): Likewise.
b57062ca 4598
1ac4f799
JL
4599 * function.c (assign_outer_stack_local): Make static and add prototype.
4600
a2e68776
JL
4601 * haifa-sched.c (build_control_flow): Accept raw data as inputs
4602 instead of computing it locally. Callers changed.
4603 (find_rgns): Several new arguments. Callers changed.
4604 Generally clean up and comment better. Use dominators to
4605 identify reducible loops. Convert some flag arrays to bitmaps.
4606 Convert most of the code to work on pred/succ lists instead of
4607 an edge table. Add comments for future improvements.
4608 (schedule_insns): Allocate temporary tables for flow data, call
4609 routines to compute flow data and pass it along to children as
4610 arguments.
4611 (debug_control_flow): Delete. Use dump_bb_data instead.
4612
97b1ef1c
JL
4613 * basic-block.h (compute_dominators): Declare.
4614
74c5186c
JL
4615 * flow.c (dump_sbitmap, dump_sbitmap_vector): New debugging
4616 functions.
4617 * basic-block.h: Declare them.
4618
7ce55772
JW
4619Thu Apr 16 13:45:51 1998 Jim Wilson <wilson@cygnus.com>
4620
4621 * reg-stack.c (constrain_asm_operands): Set n_alternatives to zero if
4622 no operands.
4623
e88caebd
APB
4624Wed Apr 15 11:33:09 1998 Alexandre Petit-Bianco <apbianco@sendai.cygnus.com>
4625
4626 * tree.c (build_expr_wfl): Use NULL_TREE if the file name is NULL.
4627 Propagate TREE_SIDE_EFFECTS and TREE_TYPE iff the encapsulated
4628 node is non NULL. Cache last file name and file name identifier node.
4629
a62e870c
MM
46301998-04-15 Mark Mitchell <mmitchell@usa.net>
4631
4632 * c-common.c (declare_hidden_char_array): Use TYPE_DOMAIN to get
4633 the length of an array, not TREE_TYPE.
4634
5e89e58b
JL
4635Wed Apr 15 15:31:34 1998 Jeffrey A Law (law@cygnus.com)
4636
4637 * flow.c (sbitmap_union_of_successors): New function.
4638 * basic-block.h (sbitmap_union_of_successors): Declare it.
4639
df6faf79
JW
4640Wed Apr 15 12:38:03 1998 Jim Wilson <wilson@cygnus.com>
4641
4642 * configure.in (gnu_ld): Rename to gnu_ld_flag before main loop.
4643 Set gnu_ld to gnu_ld_flag inside main loop.
4644 (gas): Likewise.
4645
5c60e5c0
DB
4646Wed Apr 15 14:50:05 1998 Dave Brolley <brolley@cygnus.com>
4647
4648 * toplev.c (compile_file): Call init_parse using new interface.
4649 (init_lex): Remove declaration.
4650
4651 * c-lex.c (init_parse): Now returns char* containing filename.
4652
2872409d
JL
4653Wed Apr 15 12:37:10 1998 Jeffrey A Law (law@cygnus.com)
4654
4655 * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Do nothing if not optimizing.
4656
4db83042
MM
4657Wed Apr 15 12:10:18 1998 Michael Meissner <meissner@cygnus.com>
4658
4659 * Makefile.in (gen{config,flags,codes,emit}): Link in host print-rtl.o.
4660 (gen{extract,peep,opinit,output}): Ditto.
4661
4662 * gen{attr,codes,config,emit,output}.c (insn_attr_name): Provide a
4663 global definition so print-rtl.o can be linked in.
4664 * gen{peep,recog}.c (insn_attr_name): Ditto.
4665
9aeba741
RP
4666Tue Apr 14 07:30:57 1998 K. Richard Pixley <rich@kyoto.noir.com>
4667
4668 * fixincludes: discard empty C++ comments, as found in sys/time.h
4669 on hpux-11.0.
4670
7878eae7
AS
4671Wed Apr 15 10:47:21 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
4672
4673 * config/m68k/m68k.md (adddi3, subdi3): Optimize for constant
4674 operand.
4675
fcb7cb6c
JL
4676Wed Apr 15 01:21:21 1998 Jeffrey A Law (law@cygnus.com)
4677
4678 * emit-rtl.c (operand_subword): Rework slightly to avoid
4679 bogus warning from previous change.
4680
47747e53
RH
4681Tue Apr 14 23:39:13 1998 Richard Henderson <rth@cygnus.com>
4682
4683 * alpha.md: Revert Oct 27 change, as it is superceeded by Kenner's
4684 Nov 8 find_replacement change. Move decls of get_unaligned_address
4685 * alpha.h: ... here.
4686
8450a694
JC
4687Tue Apr 14 22:00:39 1998 John Carr <jfc@mit.edu>
4688
7940255d
JC
4689 * function.c (assign_parms): Initialize unsignedp before passing
4690 its pointer to promote_mode.
4691
8450a694
JC
4692 * genattrtab.c (check_attr_test): Handle MATCH_INSN like MATCH_OPERAND.
4693 (write_test_expr): Allow MATCH_INSN.
4694
c70afde1
PE
4695Tue Apr 14 21:57:57 1998 Paul Eggert <eggert@twinsun.com>
4696
4697 * install.texi: Update section on warnings that can be safely ignored.
4698
cf877a42
JW
4699Tue Apr 14 14:55:16 1998 Jim Wilson <wilson@cygnus.com>
4700
4701 * mips.md (reload_outdi): Change the scratch mode from DImode to
4702 TImode. New variable scratch, used instead of operand[2] in template.
4703 Add code for MIPS16 HILO_REGNUM case where output reg is not M16_REG_P.
4704
996d9dac
MM
4705Tue Apr 14 16:19:03 1998 Michael Meissner <meissner@cygnus.com>
4706
4707 * expr.c (MOVE_RATIO): Set to 3 if optimizing for space.
4708
de2d990f
KW
4709Tue Apr 14 11:31:28 1998 Krister Walfridsson <cato@df.lth.se>
4710
4711 * i386/bsd386.h (ASM_OUTPUT_ALIGN): Redefine.
4712
d5daf098
JL
4713Tue Apr 14 09:02:32 1998 Jeffrey A Law (law@cygnus.com)
4714
6862dfac
JL
4715 * svr4.h (ASM_DECLARE_OBJECT_NAME): Use HOST_WIDE_INT_PRINT_DEC.
4716 (ASM_FINISH_DECLARE_OBJECT): Likewise.
4717
b7cb92ad
JL
4718 * Idea and part of the patch from HJ.
4719 * Makefile.in: auto-host.h renamed from auto-config.h. All references
4720 changed.
4721 (distclean): Remove auto-build.h too.
4722 * configure.in: Rename host autoconf generated file to auto-host.h.
4723 If host != build, then run autoconf to generate auto-build.h for
4724 the build machine and include it in build_xm_files.
4725 Check for wait.h and sys/wait.h.
4726
d5daf098
JL
4727 * combine.c (simplify_rtx, case TRUNCATE): Respect value of
4728 TRULY_NOOP_TRUNCATION.
4729
7d02bbef
JM
4730Mon Apr 13 11:31:49 1998 Jason Merrill <jason@yorick.cygnus.com>
4731
4732 * tree.h (BINFO_OFFSET_ZEROP): Use integer_zerop.
4733
4754172c
CM
4734Sun Apr 12 20:55:32 1998 Catherine Moore <clm@cygnus.com>
4735
4736 * invoke.texi (ld options) Include memset requirements
4737 for options -nodstdlib and -nodefaultlibs.
4738
bb72a084
PE
47391998-04-12 Paul Eggert <eggert@twinsun.com>
4740
4741 This change is from an idea suggested by Arthur David Olson.
4742
4743 * c-common.c (decl_attributes, record_function_format,
4744 check_format_info, init_function_format_info):
4745 Add support for strftime format checking.
4746 (enum format_type): New type.
4747 (record_function_format): Now static, and takes value of type
4748 enum format_type instead of int.
4749 (time_char_table): New constant.
4750 (struct function_format_info): format_type member renamed from is_scan.
4751 (check_format_info): Use `warning' rather than sprintf followed by
4752 `warning', to avoid mishandling `%' in warnings.
4753 Change `pedwarn' to `warning', since these warnings do not necessarily
4754 mean the program does not conform to the C Standard, as the code
4755 need not be executed.
4756
4757 * c-tree.h (record_function_format): Remove decl; no longer extern.
4758
4759 * extend.texi: Add documentation for strftime format checking.
4760
1be12a4a
JL
4761Sun Apr 12 20:23:03 1998 Jeffrey A Law (law@cygnus.com)
4762
71922625
JL
4763 * mips/ecoffl.h: Do not include mips.h.
4764 * mips/elf.h: Likewise.
4765
1be12a4a
JL
4766 * configure.in (mips-*-ecoff): Do not mention mips/mips.h in tm_files.
4767 * mips/ecoff.h: Include "mips/mips.h".
4768
9fe69077
JL
4769Sat Apr 11 22:42:54 PDT 1998 Jeff Law (law@cygnus.com)
4770
4771 * version.c: Bump for snapshot.
4772
c6a26dc4
JL
4773Sat Apr 11 01:24:28 1998 Jeffrey A Law (law@cygnus.com)
4774
4775 * cse.c (count_reg_usage): Correctly handle REG_NONNEG notes.
4776 (delete_trivially_dead_insns): Renamed from delete_dead_from_cse.
4777 * toplev.c (rest_of_compilation): Call delete_trivially_dead_insns instead of delete_dead_from_cse. Also call delete_trivially_dead_insns
4778 between loop optimization passes.
4779 * rtl.h: Updated appropriately.
4780
bbb81923
JL
4781Fri Apr 10 22:28:32 1998 Jeffrey A Law (law@cygnus.com)
4782
4783 Reinstall this patch from Jason.
4784 * function.c (push_function_context_to): Don't call init_emit.
4785
29cb1e1f
NC
4786Fri Apr 10 13:40:20 1998 Nick Clifton <nickc@cygnus.com>
4787
4788 * rtl.c (read_skip_spaces): Prevent infinite loops upon
4789 encountering unterminated comments.
4790
3f518020
JL
4791Fri Apr 10 10:43:41 1998 Jeffrey A Law (law@cygnus.com)
4792
4793 * emit-rtl.c (operand_subword): Properly handle CONST_INTs for
4794 64x32 cross builds.
4b104d6e
JL
4795
4796 * configure.in: Handle --with-fast-fixincludes.
4797 (fixincludes): If --with-fast-fixincludes, then use a different
4798 fixincludes program by default.
4799 * Makefile.in (fixinc.sh): New rule.
4800
b76c90cf
L
4801Fri Apr 10 00:36:31 1998 H.J. Lu (hjl@gnu.org)
4802
4803 * i386.md (movqi+1): Handle invalid QI register.
4804 (movsf_push-1): Likewise.
4805
2e076ddf
NC
4806Thu Apr 9 16:53:59 1998 Nick Clifton <nickc@cygnus.com>
4807
4808 * config/m32r/m32r.c: call_address_operand(): Only accept symbolic
4809 addresses.
4810 symbolic_memort_operand(), call32_operand(), int8_operand(),
4811 int16_operand(), uint24_operand(), reg_or_int8_operand(): Removed.
4812 Not used.
4813 uint16_operand(): Made static.
4814
b1d6ccb8
JL
4815Thu Apr 9 01:43:04 1998 Jeffrey A Law (law@cygnus.com)
4816
4817 * calls.c (expand_call): Fix typo.
4818
e56e519d
DB
4819Thu Apr 9 00:18:44 1998 Dave Brolley (brolley@cygnus.com)
4820
4821 * c-lex.c (finput): New global.
4822 (init_parse): Always included. Handle !USE_CPPLIB using
4823 code originally in compile_file.
4824 (finish_parse): Update for CPPLIB.
4825 * toplev.c (init_parse, finish_parse): Declare.
4826 (finput): Delete variable. Now in front-ends.
4827 (compile_file): Remove code which is now handled by init_parse
4828 which is unconditionally called. Similarly for finish_parse.
4829
85d7aed9
GK
4830Wed Apr 8 23:13:50 1998 Gavin Koch <gavin@cygnus.com>
4831
4832 * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK,
4833 ASM_WEAKEN_LABEL): Add.
4834
574badbc
RH
4835Wed Apr 8 18:21:30 1998 Richard Henderson <rth@cygnus.com>
4836
4837 * alpha/crtbegin.asm, alpha/crtend.asm, alpha/t-crtb: New files.
4838 * configure.in (alpha-*-linux*): Use them.
4839
bf1e5319 4840Fri Apr 3 17:02:13 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
b57062ca 4841
bf1e5319
APB
4842 * tree.def (EXPR_WITH_FILE_LOCATION): New tree node definition.
4843 * tree.h (EXPR_WFL_{NODE,FILENAME,FILENAME_NODE,LINENO,
4844 COLNO,LINECOL,SET_LINECOL,EMIT_LINE_NOTE}): New macros.
4845 (build_expr_wfl): New prototype declaration.
4846 * tree.c (build_expr_wfl): New function, to build
4847 EXPR_WITH_FILE_LOCATION nodes.
4848 (copy_node): Don't zero TREE_CHAIN if copying a
4849 EXPR_WITH_FILE_LOCATION node.
4850 * print-tree.c (print_node): Handle EXPR_WITH_FILE_LOCATION.
4851 * expr.c (expand_expr): Handle EXPR_WITH_FILE_LOCATION.
4852
ee5254ff
JL
4853Wed Apr 8 12:51:19 1998 Jeffrey A Law (law@cygnus.com)
4854
62db76ee
JL
4855 * configure.in (v850): Use t-v850.
4856 (ix86-wrs-vxworks): Recognize 786 just like other x86 configurations.
4857
10a998b0
JL
4858 * protoize.c (creat, read, write): Do not declare.
4859
e105f02c
JL
4860 * jump.c (mark_jump_label): Record REG_LABEL notes for insns which
4861 refer to the CODE_LABEL before a dispatch table.
4862
56b2d7a7
JL
4863 * invoke.texi: Add ARC options.
4864
c74c0cff
JL
4865 * gcc.c (proces_command): Improve error message for -o with
4866 either -c or -S.
4867
2d58da15
JL
4868 * i386/x-cygwin32 (CLIB): Link in advapi32.
4869
40ef2fc5
JL
4870 * alpha.h (ASM_IDENTIFY_GCC): Define to nothing.
4871 (ASM_IDENTIFY_LANGUAGE): Likewise.
4872
df89b5e7
JL
4873 * i386.md (movqi recognizer): Don't perfom byte increment into
4874 a NON_QI_REG_P.
4875
f09ff199
JL
4876 * configure.in (x86-dg-dgux): Run fixinc.dgux.
4877
df89b5e7 4878 * i370.h: Fix typo in GEN_INT changes.
f962b99f 4879
c3709629
JL
4880 * bitmap.c (bitmap_element_allocate): Use "void" for arglist instead
4881 of an empty arglist in prototype.
4882
ee5254ff
JL
4883 * Makefile.in: Remove bytecode crud that crept back in after the
4884 gcc2 merge.
4885
0806342b
BK
48861998-04-08 Brendan Kehoe <brendan@cygnus.com>
4887
4888 * c-lex.h (is_class_name): Fix arg type to be tree, not void.
4889 (make_pointer_declarator, reinit_parse_for_function): Fix typo.
4890
6f734908
RE
4891Wed Apr 8 06:16:45 1998 Richard Earnshaw (rearnsha@arm.com)
4892
4893 * arm.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
4894
56c0e996
BS
4895Wed Apr 8 00:44:18 1998 Bernd Schmidt (crux@pool.informatik.rwth-aachen.de>
4896
4897 * c-lex.c (is_class_name): Delete declaration.
4898 (whitespace_cr): Make static and add prototype.
4899 * c-lex.h (make_pointer_declarator, reinit_parse_for_function,
4900 yylex, get_directive_line): Turn declarations into prototypes.
4901 (position_after_whitespace, check_newline, yyerror,, is_class_name,
4902 forget_protocol_qualifiers, remember_protocol_qualifiers): Add
4903 prototypes.
4904 * genattr.c (extend_range, write_upcase, gen_attr, write_units): Add
4905 prototypes.
4906 * gencodes.c (gen_insn): Add prototype.
4907 * genconfig.c (walk_insn, gen_insn, gen_expand, gen_split,
4908 gen_peephole): Add prototypes.
4909 * genflags.c (num_operands, gen_proto, gen_nonproto, gen_insn): Add
4910 prototypes.
4911 * gengenrtl.c (type_from_format, accessor_from_format, special_rtx,
4912 special_format, find_formats, gendecl, genmacro, gendef, genlegend,
4913 genheader, gencode): Add prototypes.
4914 * genopinit.c (gen_insn): Add prototype.
4915 * genoutput.c (output_prologue, output_epilogue, scan_operands,
4916 process_template, validate_insn_alternatives, gen_insn, gen_peephole,
4917 gen_expand, gen_split, n_occurrences): Add prototypes.
4918 * genpeep.c (gen_peephole): Add prototype.
4919 * loop.c (find_and_verify_loops, mark_loop_jump, prescan_loop,
4920 reg_in_basic_block_p, consec_sets_invariant_p, libcall_other_reg,
4921 labels_in_range_p, count_loop_regs_set, note_addr_stored,
4922 loop_reg_used_before_p, scan_loop, replace_call_address,
4923 skip_consec_insns, libcall_benefit, ignore_some_movables,
4924 force_movables, combine_movables, rtx_equal_for_loop_p, move_movables,
4925 strength_reduce, valid_initial_value_p, find_mem_givs, record_biv,
4926 check_final_value, record_giv, update_giv_derive, basic_induction_var,
4927 simplify_giv_expr, general_induction_var, consec_sets_giv,
4928 check_dbra_loop, express_from, combine_givs_p, combine_givs,
4929 product_cheap_p, maybe_eliminate_biv, maybe_eliminate_biv_1,
4930 last_use_this_basic_block, record_initial, update_reg_last_use,
4931 iteration_info, analyze_loop_iterations, insert_bct,
4932 instrument_loop_bct, indirect_jump_in_function_p): Turn declarations
4933 into prototypes.
4934
cc46ae8e
JL
4935Tue Apr 7 21:48:52 1998 Jeffrey A Law (law@cygnus.com)
4936
4937 * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
4938
e7d075bf
KR
49391998-04-07 Ken Raeburn <raeburn@cygnus.com>
4940
4941 * config/mips/mips.c (siginfo): Deleted.
4942 (override_options): Don't install SIGINFO signal handler.
4943
668d07be
JW
4944Tue Apr 7 11:58:04 1998 Jim Wilson <wilson@cygnus.com>
4945
4946 * loop.c (check_dbra_loop): When normalize comparison_val, add check
4947 to verify it is non-negative.
4948
cd36edbd
RH
4949Tue Apr 7 02:01:47 1998 Richard Henderson <rth@cygnus.com>
4950
4951 * alpha.c (alpha_expand_block_move): Correctly collect block offsets.
4952 (alpha_expand_block_clear): Likewise.
4953
e814ca97
RH
4954Mon Apr 6 23:36:01 1998 Richard Henderson <rth@cygnus.com>
4955
4956 * tree.h (sizetype_tab): Fix previous change for K&R.
4957
f1d9e6d2
JL
4958Mon Apr 6 22:23:29 PDT 1998 Jeff Law (law@cygnus.com)
4959
4960 * version.c: Bump for snapshot.
4961
22ec3928
RE
4962Mon Apr 6 23:16:10 1998 Richard Earnshaw (rearnsha@arm.com)
4963
4964 * configure.in (sparc-*-solaris2*): Add xm-siglist.h to xm_file.
4965 Add USG and POSIX to xm_defines.
4966
10da1131
BM
4967Mon Apr 6 21:49:57 1998 Bob Manson <manson@charmed.cygnus.com>
4968
4969 * gcc.c: Add linker spec.
4970 (link_command_spec): Use %(linker) instead of ld.
4971 (main): If collect2 is requested as the linker, see if it exists;
4972 if not, use ld instead.
4973
4974 * Makefile.in (USE_COLLECT2): It's named collect2 now, not ld.
4975 (ld:) Deleted.
4976 (install-collect2): Install as collect2, not ld.
4977
4978 * configure.in(will_use_collect2): It's named collect2 now.
4979
4980 * collect2: Remove checks to see if we were invoked recursively.
4981 (collect_execute): Use _spawnvp under cygwin32.
4982
a8afd67b
JW
4983Mon Apr 6 17:23:41 1998 Jim Wilson <wilson@cygnus.com>
4984
4985 * haifa-sched.c (build_control_flow): Set unreachable for block whose
4986 only predecessor is itself.
4987
944fc8ab
KG
4988Mon Apr 6 16:08:04 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4989
4990 * c-parse.in: Include system.h, and remove stuff now made redundant.
4991 * cccp.c: Likewise.
4992 * cexp.y: Likewise.
4993 * protoize.c: Likewise. Properly check for cpp stringification.
4994
4995 * Makefile.in (c-parse.o, cccp.o, cexp.o, protoize.o, unprotoize.o):
b57062ca 4996 Depend on system.h.
944fc8ab
KG
4997
4998 * objc/Make-lang.in (objc-parse.o): Likewise.
4999
3286ab57
KG
5000Mon Apr 6 14:59:58 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5001
5002 * gansidecl.h: Check if compiler supports __attribute__. Provide
5003 definitions for ATTRIBUTE_UNUSED and ATTRIBUTE_PRINTF using
5004 __attribute__ when its available. Also provide definitions for
5005 ATTRIBUTE_PRINTF_1, ATTRIBUTE_PRINTF_2 and ATTRIBUTE_PRINTF_3 in
5006 terms of ATTRIBUTE_PRINTF.
b57062ca 5007
3286ab57
KG
5008 * genoutput.c (process_template): Use ATTRIBUTE_UNUSED in place
5009 of __attribute__.
5010
d276f2bb
CM
5011Mon Apr 6 07:17:52 1998 Catherine Moore <clm@cygnus.com>
5012
5013 * combine.c (can_combine_p): Include successor in volatile test.
5014
64ad9df2
R
5015Mon Apr 6 14:16:33 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5016
5017 * sh.h (CASE_VECTOR_SHORTEN_MODE): Fix logic when to set
5018 offset_unsigned.
5019
dc544d2c
JL
5020Mon Apr 6 02:03:29 1998 Jeffrey A Law (law@cygnus.com)
5021
5022 * objc/objc-act.c (encode_aggregate_within): Avoid GNU extensions
5023 in prototype and definition.
b57062ca 5024
38c413cd
JL
5025Mon Apr 6 00:48:56 PDT 1998 Jeff Law (law@cygnus.com)
5026
5027 * version.c: Bump for snapshot.
5028
59dd0a31
RH
5029Mon Apr 6 00:08:50 1998 Richard Henderson <rth@cygnus.com>
5030
b57062ca 5031 * alpha.c (alpha_expand_block_clear): Add missing offset arg to
59dd0a31
RH
5032 alpha_expand_unaligned_store_words.
5033
f31fce3f
JW
5034Sun Apr 5 21:31:24 1998 John Wehle (john@feith.com)
5035
5036 * i386.md (movsf_push, movsf_mem): Remove.
5037 (movsf_push): Rename from movsf_push_nomove and move in front of
5038 movsf. Use nonmemory_operand predicate and don't bother checking
5039 TARGET_MOVE.
5040 (movsf_push_memory): New pattern.
5041 (movsf): Don't bother checking for push_operand. If TARGET_MOVE and
5042 both operands refer to memory then force operand[1] into a register.
5043 (movsf_normal): Change to unnamed pattern.
5044 Likewise for movdf, movxf, and friends.
5045
27ebc03e
JL
5046Sun Apr 5 18:45:51 PDT 1998 Jeff Law (law@cygnus.com)
5047
5048 * version.c: Bump for snapshot.
5049
6ecd4e53 5050Sun Apr 5 16:31:10 1998 Richard Henderson <rth@cygnus.com>
98bd9f0f 5051
6ecd4e53 5052 * configure.in (alpha-dec-osf*): Match osf1.3 correctly.
98bd9f0f 5053
b57062ca 5054Sun Apr 5 16:53:37 1998 Don Bowman <don@pixsci.com>
ac08ebd0 5055
6ecd4e53 5056 * configure.in (mips-wrs-vxworks): New target.
ac08ebd0 5057
6ecd4e53 5058Sat Apr 4 23:34:32 PST 1998 Jeff Law (law@cygnus.com)
f4a788ac 5059
f3978531
JL
5060 * expmed.c (synth_mult): The value -1, has no zeros, so it can
5061 never have the form ...011.
5062
f4a788ac
JL
5063 * version.c: Bump for snapshot.
5064
5cb6195d
RH
5065Sat Apr 4 20:16:46 1998 Richard Henderson <rth@cygnus.com>
5066
5067 * i386.c (asm_output_function_prefix, load_pic_register):
5068 Use ASM_GENERATE_INTERNAL_LABEL properly.
5069 (output_pic_addr_const): Recognize %X to supress any PIC sym suffix.
5070 (print_operand): Ignore it.
5071 (load_pic_register): Use it for the got load call.
5072 * i386.md (prologue_set_got, prologue_get_pc): Likewise.
5073 (prologue_get_pc_and_set_got): Likewise.
5074 * i386.h: Update print_operand docs.
5075
ce193852
RH
5076Sat Apr 4 19:08:37 1998 Richard Henderson <rth@cygnus.com>
5077
5078 * i386.md (ffssi, ffshi): Rewrite as define_expands.
5079 (ffssi_1, ffshi_1): New (unspec [] 5) support patterns.
5080 * i386.c (notice_update_cc): Recognize unspec 5.
5081
0022a940
DMT
5082Sat Apr 4 18:07:16 1998 David Mosberger-Tang (davidm@mostang.com)
5083
5084 * alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Accept '(' for s/sv/svi.
5085 * alpha.c (print_operand): Handle it.
5086 * alpha.md (fix_truncsfdi2): Use it. Add earlyclobber pattern
5087 for ALPHA_TP_INSN.
5088 (fix_truncdfdi2): Likewise.
5089
896cced4
RH
5090Sat Apr 4 17:42:05 1998 Richard Henderson <rth@cygnus.com>
5091
5092 * tree.h (sizetype_tab[2], sbitsizetype, ubitsizetype): Merge all
5093 of these into a single struct, with additional [us]sizetype entries.
5094 * stor-layout.c (set_sizetype): Initialize [us]sizetype.
5095 * fold-const.c (size_int_wide): Don't rely on sizetype_tab being
5096 an array.
5097
8983c716
RH
5098Sat Apr 4 17:04:41 1998 Richard Henderson <rth@cygnus.com>
5099
5100 * configure.in (alpha-*-linux-*): Undo tm_file changes from gcc2 merge.
5101
4ed43ff8
RH
5102Sat Apr 4 13:50:01 1998 Richard Henderson <rth@cygnus.com>
5103
5104 * haifa-sched.c (split_block_insns): Don't supress insn splitting
5105 on subsequent passes.
5106
5107 * alpha.c (hard_fp_register_operand): New function.
5108 * alpha.h (PREDICATE_CODES): Add it.
5109 * alpha.md (extendsidi2): Kill bogus f<-f cvtql+cvtlq case. Add an
5110 f<-m case and accompanying define_split.
5111 (trapb): Use a unique unspec_volatile number.
5112
8e7bc3cd
RH
5113Sat Apr 4 13:32:08 1998 Richard Henderson <rth@cygnus.com>
5114
5115 * configure.in (alpha-*-linux-gnu*): Undo Feb 3 change brought in
5116 from gcc2 merge.
5117
e5e809f4
JL
5118Sat Apr 4 10:23:41 1998 Jeffrey A Law (law@cygnus.com)
5119
5120 * Check in merge from gcc2. See ChangeLog.11 and ChangeLog.12
5121 for details.
5122
5123 * haifa-sched.c: Mirror recent changes from gcc2.
5124
516c2342
JL
5125Fri Apr 3 00:17:01 1998 Jeffrey A Law (law@cygnus.com)
5126
e9eaed43
JL
5127 * Makefile.in (insn*.o): Depend on system.h.
5128
516c2342
JL
5129 * pa.c (output_global_address): Initialize base.
5130 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Initialize index.
5131
7cc34889
MS
51321998-04-03 Mike Stump <mrs@wrs.com>
5133
5134 * gthr.h: Support systems that don't have weak, but have threads.
5135 * configure.in (*wrs-vxworks*): Use VxWorks threads by default.
5136 * gthr-vxworks.h: New file.
5137 * objc/thr-vxworks.h: Dummy file from thr-single.c for now.
5138
52c18286
JW
5139Thu Apr 2 18:00:52 1998 Jim Wilson <wilson@cygnus.com>
5140
5141 * i386.md (movqi+1): Change alternative 1 from *r/r to *r/*rn.
5142
c1ac292d
VM
51431998-04-02 Vladimir N. Makarov <vmakarov@cygnus.com>
5144
5145 * ginclude/va-i960.h (va_end): Change void * to void.
5146
4cb1caaf
KG
5147Thu Apr 2 13:51:10 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5148
5149 * Makefile.in (choose-temp.o): Depend on system.h.
5150
5151 * choose-temp.c: Include system.h when IN_GCC.
5152
a9a2595b
JR
5153Thu Apr 2 02:37:07 1998 Joern Rennecke (amylaar@cygnus.co.uk)
5154 Richard Henderson <rth@cygnus.com>
5155
5156 * reload.c (find_reloads_address): Try LEGITIMIZE_RELOAD_ADDRESS.
5157 (move_replacements): New function.
5158 * reload.h: Prototype it.
b57062ca 5159
a9a2595b 5160 * alpha.h (LEGITIMIZE_RELOAD_ADDRESS): New definition.
b57062ca 5161
79363e2f
RH
5162Thu Apr 2 01:01:34 1998 Richard Henderson <rth@cygnus.com>
5163
5164 * configure (alpha-*-linuxecoff, alpha-*-linux-gnulibc1):
5165 Run fixincludes.
5166
4901a643
RH
5167 * emit-rtl.c (gen_lowpart_common): Skip count by HARD_REGNO_NREGS.
5168 (gen_highpart): Likewise.
ce4d78eb
RH
5169 * final.c (alter_subreg): Allow the target to hook by-mode subreg
5170 hard register number changes.
b57062ca 5171
715f9c99
JL
5172Wed Apr 1 22:26:22 1998 Jeffrey A Law (law@cygnus.com)
5173
4e86caed
JL
5174 * fold-const.c optimze_bit_field_compare): Initialize rnbitpos,
5175 rnbitsize, rnmode and rinner.
5176 (make_range): Initialize type.
5177 (fold): Initialize arg0, arg1 and varop.
5178
5179 * function.c (instantiate_virtual_regs_1): Initialize offset, regnoi
5180 and regnor.
5181 (expand_function_start): Initialize last_ptr.
5182
5183 * stor-layout.c (layout_record): Initialize desired_align.
5184 (get_best_mode): Initialize unit.
5185
5186 * tree.c (copy_node): Initialize length.
5187
aefdd5ab
JL
5188 * c-lex.c (yylex): Initialize traditional_type, ansi_type and type.
5189
5190 * caller-save.c (insert_save_restore): Initialize pat, code and
5191 numregs.
5192
5193 * emit-rtl.c (push_to_sequence): Initialize top.
5194 (push_topmost_sequence): Likewise.
5195
5196 * genattrtab.c (simplify_by_exploding): Initialize defval.
5197
5198 * profile.c (branch_prob): Initialize dest.
5199
5200 * rtl.h (note_stores): Remove duplicate prototype.
5201 (GEN_INT): Re-instate cast of second arg to HOST_WIDE_INT.
5202
5203 * cplus-dem.c (gnu_special): Don't get confused by .<digits>
5204 strings that are not actually lengths.
5205
729da3f5
JL
5206 * genattrtab.c: Make generated file use system.h, instead of
5207 including stdio.h, etc directly.
5208 * genextract.c, genopinit.c, genoutput.c: Likewise.
5209 * genpeep.c, genrecog.c: Likewise
5210
5211 * genoutput.c (process_template): Mark operands in the generated
5212 function as potentially unused if compiling with GNU CC.
5213
2a8034f8
JL
5214 * i386/freebsd-elf.h (CPP_PREDEFINES): Update from FreeBSD folks.
5215
715f9c99
JL
5216 * pa.md (reload peepholes): Remove unused variable "mode".
5217
75d3a15b
NC
5218Wed Apr 1 17:06:19 1998 Nick Clifton <nickc@cygnus.com>
5219
5220 * config/arm/thumb.h: Add super interworking support.
5221 * config/arm/thumb.c: Add super interworking support.
5222 * config/arm/thumb.md: Add super interworking support.
75d3a15b
NC
5223 * config/arm/lib1funcs.asm: Add interworking support.
5224 * config/arm/lib1thumb.asm: Add super interworking support.
75d3a15b
NC
5225 * config/arm/t-semi: Add interworking support.
5226 * config/arm/t-thumb: Add interworking support.
75d3a15b 5227 * config/arm/README-interworking: New file.
b57062ca 5228
63959c22
JW
5229Wed Apr 1 14:38:10 1998 Jim Wilson <wilson@cygnus.com>
5230
5231 * config/mips/iris6.h (MD_EXEC_PREFIX): Set to /usr/bin/.
5232 (MD_STARTFILE_PREFIX): Unset.
5233
c651e1e0
MM
52341998-04-01 Mark Mitchell <mmitchell@usa.net>
5235
5236 * varasm.c (make_decl_rtl): Update the DECL_ASSEMBLER_NAME for a
5237 entity in a local scope.
5238
5239 * fold-const.c (fold): Call truthvalue_conversion for values which
5240 are folded to boolean type.
5241
3a598fbe
JL
5242Wed Apr 1 06:09:53 1998 Jeffrey A Law (law@cygnus.com)
5243
5244 * 1750a.md, arm.c, clipper.c, clipper.md: Use GEN_INT consistently.
5245 * convex.h, dsp16xx.c, fx80.md, gmicro.c, gmicro.md: Likewise.
5246 * i370.h, i370.md, i860.c, i860.h, i860.md, i960.c: Likewise.
5247 * i960.h, i960.md, m32r.md, m68k.md, m68kv4.h, m88k.c: Likewise.
5248 * m88k.md, ns32k.c, ns32k.md, pdp11.c, pdp11.h, pdp11.md: Likewise.
5249 * pyr.c, pyr.h, pyr.md, romp.c, romp.h, romp.md: Likewise.
5250 * rs6000.md, sparc.c, sparc.h, sparc.md, spur.c, spur.md: Likewise.
5251 * tahoe.md, vax.h, vax.md, we32k.c, we32k.h, we32k.md: Likewise.
5252 * md.texi: Likewise.
5253
b5026c50
MH
5254Wed Apr 1 08:33:44 1998 Manfred Hollstein <manfred@s-direktnet.de>
5255
5256 * fixincludes (limits.h): Fix nested comments in Motorola's
5257 limits.h and sys/limits.h.
5258
c8d86b9a
JW
5259Tue Mar 31 16:57:33 1998 Jim Wilson <wilson@cygnus.com>
5260
1a7cb241
JW
5261 * alpha.c (alpha_expand_unaligned_load): Use tgt instead of addr
5262 as dest of expand_binop call.
5263
221a9f65
JW
5264 * alpha.md (extzv): Correct check for valid operand[2] values.
5265
a7ebd547
JW
5266 * profile.c (branch_prob): Add code to recognize HPPA tablejump entry
5267 branch.
5268
c8d86b9a
JW
5269 * toplev.c (rest_of__compilation): Call init_recog_no_volatile at end.
5270
97be8f06
SC
5271Mon Mar 30 13:11:05 1998 Stan Cox <scox@cygnus.com>
5272
5273 * libgcc2.c: (__main, __do_global_dtors, __do_global_ctors):
5274 For __CYGWIN32__ use the versions in winsup/dcrt0.cc.
b57062ca 5275
97be8f06
SC
5276 * gcc.c, cccp.c, cpplib.c, collect2.c (GET_ENVIRONMENT): Added.
5277 cygwin32 can override this to allow both unix and win32 style PATHs.
5278
5279 * i386/xm-cygwin32.h (GET_ENVIRONMENT): Defined to allow win32
5280 style environment paths.
b57062ca 5281
b04cd507
KG
5282Mon Mar 30 14:43:20 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5283
5284 * Makefile.in (cppalloc.o, cpperror.o, cppexp.o, cpphash.o,
5285 cpplib.o, cppmain.o, fix-header.o, gcov.o, gen-protos.o,
5286 gengenrtl.o, halfpic.o, hash.o, scan-decls.o, scan.o): Depend on
5287 system.h.
b57062ca 5288
b04cd507
KG
5289 * cpphash.c: Include config.h.
5290 * cppalloc.c: Include system.h. Add parameters to various
5291 function prototypes.
5292 * cpperror.c: Likewise.
5293 * cppexp.c: Likewise.
5294 * cpphash.c: Likewise.
5295 * cpplib.c: Likewise.
5296 * cppmain.c: Likewise.
5297 * fix-header.c: Likewise.
5298 * gcov.c: Likewise.
5299 * gen-protos.c: Likewise.
5300 * gengenrtl.c: Likewise.
5301 * halfpic.c: Likewise.
5302 * hash.c: Likewise.
5303 * scan-decls.c: Likewise.
5304 * scan.c: Likewise.
5305
1aa5d112
JW
5306Mon Mar 30 11:06:45 1998 Jim Wilson <wilson@cygnus.com>
5307
5308 * README.gnat: Add lang_print_xnode definition.
5309
e18db50d
AS
5310Mon Mar 30 11:12:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5311
5312 * config/m68k/m68k.c (standard_68881_constant_p): Don't use
5313 fmovecr on the 68060.
5314
c0d45032
JL
5315Mon Mar 30 00:21:03 1998 Jeffrey A Law (law@cygnus.com)
5316
5317 * genemit.c (DONE): Rework so that it works in the true arm if
5318 an if-else conditional.
5319 (FAIL): Likewise.
5320
31ed227b
JL
5321Sun Mar 29 12:45:23 1998 Jeffrey A Law (law@cygnus.com)
5322
c3670418
JL
5323 * rs6000.c: Do not include stdioh or ctype.h anymore.
5324
234042f4
JL
5325 * Makefile.in (c-typeck.o): Delete on expr.h, insn-codes.h and
5326 $(RTL_H).
5327 (stor-layout.o): Likewise.
5328 * c-typeck.c: Include rtl.h and expr.h.
5329 * stor-layout.c: Likewise.
5330
72e19470
JL
5331 * cpplib.c (cpp_file_line_for_message): Delete unused parameter.
5332 All callers changed.
5333 (do_sccs): Wrap in an SCCS_DIRECTIVE ifdef.
5334 * fix-header.c (cpp_file_line_for_message): Delete unused paramter.
5335 All callers changed.
5336
40c3a857
JL
5337 * collect2.c (is_in_list): Wrap inside COLLECT_EXPORT_LIST ifdef.
5338
c80150b7
JL
5339 * local-alloc.c (reg_classes_overlap_p): Delete dead function.
5340
31ed227b
JL
5341 * tree.h (lang_print_xnode): Provide prototype.
5342
fe776296
JL
5343Sat Mar 28 23:50:44 PST 1998 Jeff Law (law@cygnus.com)
5344
5345 * version.c: Bump for snapshot.
5346
f1b03ce1
JL
5347Sun Mar 29 00:42:21 1998 Jeffrey A Law (law@cygnus.com)
5348
3ac2735b
JL
5349 * objc/sendmsg.c (__objc_block_forward): Add braces for return
5350 value if INVISIBLE_STRUCT_RETURN.
5351
f2b147f7
JL
5352 * pa.c (arith_double_operand): Fix parens.
5353
c4fa3460
JL
5354 * haifa-sched.c (print_pattern): Correct arg to sprintf.
5355
f1b03ce1
JL
5356 * Makefile.in (libgcc1.null): Make return type for __foo void.
5357
2e61a5a5
JL
5358Sat Mar 28 14:37:20 1998 Jeffrey A Law (law@cygnus.com)
5359
ba0b8436
JL
5360 * pa.h: Add declarations for many functions defined in pa.c.
5361
67ac5957
JL
5362 * genpeep.c (main): Remove unused variable 'i' from the generated
5363 file.
5364
c38d8c5b
JL
5365 * genemit.c (gen_expand): Do not emit "_done" or "_fail" labels.
5366 (gen_split): Likewise.
5367 (main): Rework generated definitions of DONE and FAIL so that they
5368 no longer use gotos. Avoids warnings about unused labels.
5369
d6e6c585
JL
5370 * integrate.c (copy_rtx_and_substitute): Rework to avoid need for
5371 unused "junk" variable.
5372
2e61a5a5
JL
5373 * genattrtab.c (write_complex_function): Add a default case in
5374 generated switch statement to keep -W -Wall quiet.
5375
0b26e56d
NC
5376Sat Mar 28 10:47:21 1998 Nick Clifton <nickc@cygnus.com>
5377
157a620e
NC
5378 * invoke.texi: Document more ARM and Thumb command line options.
5379
0b26e56d
NC
5380 * config/arm/xm-thumb.h: New file.
5381
600a4ce7
CB
5382Sat Mar 28 01:37:33 1998 Craig Burley <burley@gnu.ai.mit.edu>
5383
5384 * stmt.c (expand_expr_stmt): Must generate code for
5385 statements within an expression (gcc's `({ ... )}')
5386 even if -fsyntax-only.
5387
4d1d8045
BS
5388Sat Mar 28 01:06:12 1998 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5389 Jeffrey A Law (law@cygnus.com)
5390
5391 * basic-block.h (basic_block_computed_jump_target): Declare.
5392 * flags.h: (current_function_has_computed_jump): Declare.
5393 * flow.c: (basic_block_computed_jump_target): Define.
5394 (flow_analysis): Allocate it. Set current_function_has_computed_jump
5395 to 0.
5396 (find_basic_blocks): Set current_function_has_computed_jump and
5397 elements of basic_block_computed_jump_target to 1 as appropriate.
5398 * function.c: (current_function_has_computed_jump): Define.
5399 * global.c (global_conflicts): Don't allocate pseudos into stack regs
5400 at the start of a block that is reachable by a computed jump.
5401 * reg-stack.c (stack_reg_life_analysis): If must restart, do so
5402 immediately.
5403 (subst_stack_regs): Undo change from Sep 4 1997.
5404 (uses_reg_or_mem): Now unused, deleted.
5405 * stupid.c (stupid_life_analysis): Compute
5406 current_function_has_computed_jump.
5407 (stupid_find_reg): Don't allocate stack regs if the function has a
5408 computed goto.
5409 * haifa-sched.c (is_cfg_nonregular): Delete code to determine if
5410 the current function has a computed jump. Use the global value
5411 instead.
5412
56f28b73
JL
5413Sat Mar 28 00:21:37 1998 Jeffrey A Law (law@cygnus.com)
5414
5415 * i386/freebsd.h (CPP_PREDEFINES): Remove __386BSD__.
5416 (DWARF2_UNWIND_INFO): Define to zero.
5417
6ed4bb9a
MM
5418Fri Mar 27 16:04:49 1998 Michael Meissner <meissner@cygnus.com>
5419
5420 * gcc.c (set_std_prefix): Add declaration.
5421 (process_command): If GCC_EXEC_PREFIX is set, remove /lib/gcc-lib/
5422 suffix, and update the standard prefix prefix.c uses.
5423
5424 * prefix.c (std_prefix): New global to hold default prefix value.
5425 (get_key_value): Change to use std_prefix instead of PREFIX.
5426 (translate_name): Ditto.
5427 (update_path): Ditto.
5428 (get_key_value): Release allocated scratch storage.
5429 (set_std_prefix): New function to reset the standard prefix.
5430
1f3fa20e
R
5431Fri Mar 27 18:08:21 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5432
7daa142b 5433 * sh.c (find_barrier): Fix calculations for alignment increase.
1f3fa20e 5434
d8a0154e
MH
5435Fri Mar 27 08:56:52 1998 Manfred Hollstein <manfred@s-direktnet.de>
5436
5437 * Makefile.in (stmp-fixinc): If we're actually fixing include
5438 files, copy gcc's assert.h into the fixed include dir.
5439 * fixincludes (assert.h): Avoid any attempts to fix a probably
5440 broken system specific assert.h file.
5441 * fixproto (stdlib.h): Make sure, it'll contain a definition of
5442 size_t.
5443
64d3b4ca
JL
5444Fri Mar 27 00:49:46 1998 Jeffrey A Law (law@cygnus.com)
5445
5446 * regclass.c (reg_scan_mark_refs): Be more selective about
5447 when we mark a register with REGNO_POINTER_FLAG.
5448
e6e52be0
R
5449Thu Mar 26 23:00:11 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5450
5451 reload inheritance improvement:
5452 * reload1.c (reg_reloaded_contents, reg_reloaded_insn):
5453 Change meaning: index is now hard reg number.
5454 (reg_reloaded_valid, reg_reloaded_dead): New variables.
5455 (reload_spill_index): Content is now a hard reg number.
5456 (reload_as_needed): Change to fit new variable meaning.
5457 (forget_old_reloads_1, allocate_reload_reg): Likewise.
5458 (choose_reload_regs, emit_reload_insns): Likewise.
5459
812f2051
R
5460Thu Mar 26 18:34:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5461
5462 * regclass.c (record_reg_classes): '?' increases cost by two.
5463
5464 * reload.c (find_reloads): Double previous costs. Output
5465 reloads cost one unit extra.
5466
5467 * reload1.c (eliminate_regs): Delete LOAD_EXTENDED_OP code that
5468 boiled down to && ! 0.
5469
5470 * reload.c (find_equiv_reg): Also consider a goal offset from the
5471 frame pointer to be constant.
5472
04d02ece
R
5473Thu Mar 26 17:34:46 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5474
5475 * sh.h (OPTIMIZATION_OPTIONS): Define.
5476
6f28d3e9
RH
5477Thu Mar 26 00:19:47 1998 Richard Henderson <rth@cygnus.com>
5478
5479 * combine.c (make_compound_operation): Simplify (subreg (*_extend) 0).
5480
b09fa787
JL
5481Wed Mar 25 23:53:11 1998 Jeffrey A Law (law@cygnus.com)
5482
5483 * pa.c (pa_adjust_cost): Avoid redundant calls to get_attr_type.
5484
a16b4c9c
JW
5485Wed Mar 25 13:40:48 1998 Jim Wilson <wilson@cygnus.com>
5486
5487 * c-common.c (check_format_info): Initialize type, is_type. New local
5488 integral_format. Don't warn for 'L' when pedantic. Do warn for 'L'
5489 when pedantic if used with integral format specifier.
5490
c4d38ccb
MM
5491Wed Mar 25 16:09:01 1998 Michael Meissner <meissner@cygnus.com>
5492
5493 * rs6000.h (FUNCTION_ARG_PADDING): Cast result to be enum
5494 direction.
5495 (function_arg_padding): Declare.
5496
5497 * rs6000.c: Include system.h.
5498 (function_arg_padding): Change return type to int, cast enum's to
5499 int.
5500
5501 (From Kaveh R. Ghazi <ghazi@caip.rutgers.edu>)
5502 * collect2.c (scan_prog_file): Add explicit braces to avoid
5503 ambiguous `else'.
b57062ca 5504
c4d38ccb
MM
5505 * dbxout.c (dbxout_type_fields): Add braces around empty body in
5506 an if-statement.
5507 (dbxout_type): Likewise.
b57062ca 5508
c4d38ccb
MM
5509 * rs6000.c (rs6000_override_options): Change type of `i', `j' and
5510 `ptt_size' from int to size_t.
5511 (rs6000_file_start): Likewise for `i'.
5512 (rs6000_replace_regno): Add default case in enumeration switch.
5513 (output_epilog): Remove unused variable `i'.
5514 (rs6000_longcall_ref): Remove unused variables `len', `p', `reg1'
5515 and `reg2'.
b57062ca 5516
c4d38ccb
MM
5517 * rs6000.h (ADDITIONAL_REGISTER_NAMES): Add missing braces around
5518 initializer.
5519 (get_issue_rate, non_logical_cint_operand): Add prototype.
5520 (rs6000_output_load_toc_table): Ditto.
b57062ca 5521
c4d38ccb
MM
5522 * rs6000.md (udivmodsi4): Add explicit braces to avoid ambiguous
5523 `else'.
b57062ca 5524
e98e406f
NC
5525Wed Mar 25 10:05:19 1998 Nick Clifton <nickc@cygnus.com>
5526
5527 * config/arm/thumb.c: New File. Support for ARM's Thumb
b57062ca 5528 instruction set.
e98e406f
NC
5529 * config/arm/thumb.h: New File. Thumb definitions.
5530 * config/arm/thumb.md: New File. Thumb machine description.
5531 * config/arm/tcoff.h: New File. Thumb COFF support.
5532 * config/arm/t-thumb: New File. Thumb makefile fragment.
5533 * config/arm/lib1thumb.asm: New File. Thumb libgcc support functions.
5534
5535 * configure.in: Add Thumb-coff target.
5536 * configure: Add Thumb-coff target.
5537 * config.sub: Add Thumb-coff target.
5538
8cf619da
JW
5539Wed Mar 25 10:30:32 1998 Jim Wilson <wilson@cygnus.com>
5540
5541 * loop.c (scan_loop): Initialize move_insn_first to zero.
5542
fe0714d3
JS
5543Wed Mar 25 01:06:49 1998 Joel Sherrill (joel@OARcorp.com)
5544
5545 * config/i386/go32-rtems.h: Defined TARGET_MEM_FUNCTIONS.
5546 * config/i386/rtems.h: Likewise.
5547 * config/i960/rtems.h: Likewise.
5548 * config/m68k/rtems.h: Likewise.
5549 * config/mips/rtems64.h: Likewise.
5550 * config/pa/rtems.h: Likewise.
5551 * config/rs6000/rtems.h: Likewise.
5552 * config/sh/rtems.h: Likewise.
5553 * config/sparc/rtems.h: Likewise.
5554
428be702
RK
5555Wed Mar 25 00:57:26 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5556
5557 * pa.c (emit_move_sequence): If in reload, call find_replacement.
5558
ae8c5963
NC
5559Tue Mar 24 10:44:11 1998 Nick Clifton <nickc@cygnus.com>
5560
2ea9a965
NC
5561 * Makefile.in (gcov$(exeext)): Support .exe extension to gcov.
5562
ae8c5963
NC
5563 * collect2.c (find_a_file): Add debugging.
5564 (find_a_file): Test for win32 style absolute paths if
5565 DIR_SERPARATOR is defined.
5566 (prefix_from_string): Add debugging.
5567 (main): Test for debug command line switch at start of program
b57062ca 5568 execution.
ae8c5963 5569 (main): Use GET_ENVIRONMENT rather than getenv().
72cf6902
NC
5570 (prefix_from_env): Use GET_ENVIRONMENT.
5571
050367a3
MM
55721998-03-24 Mark Mitchell <mmitchell@usa.net>
5573
5574 * cplus-dem.c (optable): Add sizeof.
5575 (demangle_template_value_parm): New function containing code
5576 previously found in demangle_template.
b57062ca 5577 (demangle_integral_value): New function which handles complicated
050367a3
MM
5578 integral expressions.
5579 (demangle_template): Use them.
5580
0b93b64e
KG
5581Tue Mar 24 12:13:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5582
5583 * Makefile.in (genconfig.o, genflags.o, gencodes.o, genemit.o,
5584 genopinit.o, genrecog.o, genextract.o, genpeep.o, genattr.o,
5585 genattrtab.o, genoutput.o): Depend on system.h.
b57062ca 5586
0b93b64e
KG
5587 * genattr.c: Include system.h. Add arguments to various function
5588 prototypes. Remove redundant prototype of read_rtx().
5589 * genattrtab.c: Likewise.
5590 * gencodes.c: Likewise.
5591 * genconfig.c: Likewise.
5592 * genemit.c: Likewise.
5593 * genextract.c: Likewise.
5594 * genflags.c: Likewise.
5595 * genopinit.c: Likewise.
5596 * genoutput.c: Likewise.
5597 * genpeep.c: Likewise.
5598 * genrecog.c: Likewise.
5599
bc289659
ML
56001998-03-24 Martin von Loewis <loewis@informatik.hu-berlin.de>
5601
5602 * c-lang.c (lang_print_xnode): New function.
5603 * objc/objc-act.c (lang_print_xnode): Likewise.
5604 * print-tree.c (print_node): Call it
5605
990ac8d7
L
5606Mon Mar 23 23:59:11 1998 H.J. Lu (hjl@gnu.org)
5607
5608 * c-parse.in: Recognize protocol qualifiers in class
5609 definitions for objc.
5610 Include "output.h".
5611 (yyerror): Remove redundant decl.
5612 (yyprint): Fix prototype.
5613
65d98182
JL
5614Mon Mar 23 23:49:47 1998 Jeffrey A Law (law@cygnus.com)
5615
47a0b68f
JL
5616 * cse.c (rtx_cost): Only call CONST_COSTS if it is defined.
5617
65d98182
JL
5618 * stmt.c (unroll_block_trees): Free block_vector if needed.
5619
3cac0a21
PDM
5620Mon Mar 23 23:26:42 1998 Philippe De Muyter <phdm@macqel.be>
5621
4b8bef1d
PDM
5622 * m68k/m68k.md (zero_extendqidi2, zero_extendhidi2): New patterns.
5623 (zero_extendsidi2): Avoid useless copy.
5624 (iordi_zext): New pattern.
5625 (iorsi_zexthi_ashl16): Pattern reworked to avoid "0" constraint for
5626 operand 2.
5627 (iorsi_zext): New name for old unnamed pattern; indentation fixes.
5628
3cac0a21
PDM
5629 * m68k/m68k.md (ashldi_const): Allow shift count in range ]32,63].
5630 (ashldi3): Allow constant shift count in range ]32,63].
5631 (ashrdi_const, ashrid3, lshrdi_const, lshrdi3): Likewise.
5632
4da05956
MM
56331998-03-22 Mark Mitchell <mmitchell@usa.net>
5634
5635 * tree.h (IS_EXPR_CODE_CLASS): New macro.
5636
545f2aab
JL
5637Mon Mar 23 23:18:48 1998 Jeffrey A Law (law@cygnus.com)
5638
5639 * h8300.h (CONST_COSTS): Remove definition.
5640 (DEFAULT_RTX_COSTS): Define.
5641
eef15f9f
JS
5642Mon Mar 23 22:58:22 1998 Joel Sherrill (joel@OARcorp.com)
5643
5644 * config/sh/rtems.h: Switched from ELF to COFF.
5645
4bca6986
R
5646Mon Mar 23 14:14:20 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5647
5648 * freebsd.h (ASM_OUTPUT_ALIGN): Redefine.
5649
8ca77a11
JL
5650Sat Mar 21 23:52:56 PST 1998 Jeff Law (law@cygnus.com)
5651
5652 * version.c: Bump for snapshot.
5653
e09e14e9
NC
5654Sun Mar 22 00:50:42 1998 Nick Clifton <nickc@cygnus.com>
5655 Geoff Noer <noer@cygnus.com>
5656
5657 * Makefile.in: Various fixes for building cygwin32 native toolchains.
5658
35d541d4
NC
5659 * objc/Makefile.in: Various fixes for building cygwin32 native toolchains.
5660 * objc/Make-lang.in: Likewise.
5661
4a0cf2aa
NC
5662 * config/i386/xm-cygwin32.h (PATH_SEPARATOR): Set to a semi-colon.
5663
535b86ce
G
5664Sun Mar 22 00:21:46 1998 R. Ganesan <rganesan@novell.com>
5665
5666 * configure.in: Handle with-PACKAGE=no correctly
5667
670ee920
KG
5668Fri Mar 20 17:36:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5669
5670 * Makefile.in (alias.o, bitmap.o, c-aux-info.o, c-common.o,
5671 c-decl.o, c-iterate.o, c-lang.o, c-lex.o, c-pragma.o, c-typeck.o,
5672 caller-save.o, calls.o, collect2.o, combine.o, cse.o, dbxout.o,
5673 dwarf2out.o, dwarfout.o, emit-rtl.o, except.o, explow.o, expmed.o,
5674 expr.o, final.o, flow.o, function.o, getpwd.o, global.o,
5675 integrate.o, jump.o, local-alloc.o, loop.o, optabs.o, pexecute.o,
5676 prefix.o, print-rtl.o, print-tree.o, profile.o, real.o, recog.o,
5677 reg-stack.o, regclass.o, regmove.o, reload.o, reload1.o, reorg.o,
5678 rtl.o, rtlanal.o, sdbout.o, stmt.o, stor-layout.o, stupid.o,
5679 tlink.o, toplev.o, tree.o, unroll.o, varasm.o, xcoffout.o): Depend
5680 on system.h.
5681
5682 * alias.c, bitmap.c, c-aux-info.c, c-common.c, c-decl.c,
5683 c-iterate.c, c-lang.c, c-lex.c, c-pragma.c, c-typeck.c,
5684 caller-save.c, calls.c, collect2.c, combine.c, cse.c, dbxout.c,
5685 dwarf2out.c, dwarfout.c, emit-rtl.c, except.c, explow.c, expmed.c,
5686 expr.c, final.c, flow.c, function.c, gcc.c, getpwd.c, global.c,
5687 integrate.c, jump.c, local-alloc.c, loop.c, optabs.c, pexecute.c,
5688 prefix.c, print-rtl.c, print-tree.c, profile.c, real.c, recog.c,
5689 reg-stack.c, regclass.c, regmove.c, reload.c, reload1.c, reorg.c,
5690 rtl.c, rtlanal.c, sched.c, sdbout.c, stmt.c, stor-layout.c,
5691 stupid.c, tlink.c, toplev.c, tree.c, unroll.c, varasm.c,
5692 xcoffout.c: Include system.h. Organize include ordering so
5693 that stdarg/varargs comes before other system headers. Remove
5694 spurious casts of functions assured of a prototype in system.h.
5695
7aa74e4c
SC
5696Fri Mar 20 11:19:40 1998 Stan Cox <scox@equinox.cygnus.com>
5697
5698 * reg-stack.c (pop_stack): Define. Pops any register on the
5699 regstack and adjusts regstack.
5700 (compare_for_stack_reg): Use pop_stack.
b57062ca 5701
d005a5a4
JL
5702Thu Mar 19 23:51:01 1998 Jeffrey A Law (law@cygnus.com)
5703
5704 * configure.in (hppa1.0-hp-hpux10): Handle threads for this
5705 config too.
5706
ba3ad5e0
PDM
5707Thu Mar 19 20:30:31 1998 Philippe De Muyter <phdm@macqel.be>
5708
09b4ce12
PDM
5709 * libgcc2.c (exit): Do not call __bb_exit_func if HAVE_ATEXIT.
5710
ba3ad5e0
PDM
5711 * fold-const.c (fold): Replace sign-extension of a zero extended
5712 value by a single zero extension.
5713
6e1f1f93
JM
5714Thu Mar 19 00:58:07 1998 Jason Merrill <jason@yorick.cygnus.com>
5715
5716 * except.c (init_eh): Do nothing.
5717 (save_eh_status): Call init_eh_for_function, not init_eh.
5718 * function.c (push_function_context_to): Don't call init_emit.
5719
838b0e4e
MM
5720Thu Mar 19 13:39:52 1998 Michael Meissner <meissner@cygnus.com>
5721
5722 * rs6000/sysv4.h (RELATIVE_PREFIX_NOT_LINKDIR): Undef for System V
5723 and EABI.
5724
ecb06768
KG
5725Thu Mar 19 10:10:36 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5726
5727 * final.c (shorten_branches): Add parentheses around +/- in
5728 operand of &.
5729
5730 * flow.c (life_analysis): Wrap variable `i' in macro ELIMINABLE_REGS.
5731
dfba7a1b
MH
5732Thu Mar 19 09:15:17 1998 Manfred Hollstein <manfred@s-direktnet.de>
5733
5734 * regclass.c (memory_move_secondary_cost): Wrap uses of
5735 SECONDARY_INPUT_RELOAD_CLASS and SECONDARY_OUTPUT_RELOAD_CLASS
5736 with #ifdef tests.
5737
4faca093
MH
5738Thu Mar 19 09:06:35 1998 Manfred Hollstein <manfred@s-direktnet.de>
5739
5740 * config/m68k/m68k.md (addqi3): Fix typo gen_INT vs. GEN_INT.
5741
5742 * flow.c (life_analysis): #include <sys/types.h> to make sure
5743 size_t is defined.
5744 * cplus-dem.c (demangle_function_name): Likewise.
5745
af7da199
MH
5746Thu Mar 19 09:00:01 1998 Manfred Hollstein <manfred@s-direktnet.de>
5747
5748 * final.c (insn_noperands): Change type to unsigned int.
5749 (final_scan_insn): Likewise for noperands;
5750 properly check operand number boundaries.
5751
10a25232
RH
5752Wed Mar 18 16:20:30 1998 Richard Henderson <rth@cygnus.com>
5753
5754 * alpha.md (extzv): Don't reject register operands. Fix
5755 mode of operand 1.
5756
99d1a24c
RH
5757Wed Mar 18 16:14:23 1998 Richard Henderson <rth@cygnus.com>
5758
5759 * dbxout.c (dbxout_function_end): Fix last change. The correct
5760 predicate is ASM_OUTPUT_SECTION_NAME.
5761
5bac82c5
JW
5762Wed Mar 18 12:43:20 1998 Jim Wilson <wilson@cygnus.com>
5763
5764 * sh.md (ashlsi_c-1): Delete 3rd argument to gen_ashlsi_c.
5765 (ashlsi): Use match_dup 1 instead of match_operand 2.
5766
52de9b6c
RK
5767Wed Mar 18 13:46:07 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5768
5769 * fold-const.c (operand_equal_for_comparison_p): See if equal
5770 when nop conversions are removed.
5771
7c00d1fe
RK
5772Wed Mar 18 13:42:01 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5773
5774 * expr.c (expand_expr, case COND_EXPR): If have conditional move,
5775 don't use ORIGINAL_TARGET unless REG.
5776
343665b9
R
5777Wed Mar 18 16:53:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5778
5779 * netbsd.h (ASM_OUTPUT_ALIGN): Redefine.
5780
1a61c29f
JW
5781Wed Mar 18 12:43:20 1998 Jim Wilson <wilson@cygnus.com>
5782
5783 * loop.c (struct movable): New field move_insn_first.
5784 (scan_loop): In consec sets code, set it. Clear it otherwise.
5785 (move_movables): In consec sets code, use it. Copy REG_NOTES from
5786 p to i1 only if i1 does not have REG_NOTES. Delete obsolete ifdefed
5787 out code.
5788
cbe36725
RH
5789Wed Mar 18 09:52:56 1998 Richard Henderson <rth@cygnus.com>
5790
5791 * rtl.c (read_rtx): Fall back on homebrew atoll if HOST_WIDE_INT
5792 is large, and the system doesn't provide atoll or atoq.
b57062ca 5793 (atoll): New.
cbe36725
RH
5794
5795 * alpha/xm-vms.h (HAVE_ATOLL): Define.
5796 Reported by Klaus Kaempf <kkaempf@progis.de>.
b57062ca 5797
081f5e7e
KG
5798Wed Mar 18 09:56:26 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5799
5800 * c-lang.c (finish_file): Wrap variable `void_list_node' with macro
5801 test !ASM_OUTPUT_CONSTRUCTOR || !ASM_OUTPUT_DESTRUCTOR.
5802
5803 * calls.c (emit_call_1): Wrap variable `already_popped' with macro
b57062ca 5804 test !ACCUMULATE_OUTGOING_ARGS.
081f5e7e
KG
5805
5806 * collect2.c (write_c_file_glob): Wrap function definition in
5807 macro test !LD_INIT_SWITCH.
5808
5809 * combine.c (try_combine): Wrap variables `cc_use' and
5810 `compare_mode' in macro test EXTRA_CC_MODES.
5811
5812 * cpplib.c (do_ident): Remove unused variable `len'.
5813 (skip_if_group): Remove unused variables `at_beg_of_line' and
5814 `after_ident'.
5815 (cpp_get_token): Remove unused variable `dummy'.
5816
5817 * dbxout.c (scope_labelno): Move static variable definition inside
5818 the one function scope where it is used.
5819 (dbxout_function_end): Wrap prototype and definition in
5820 macro test !NO_DBX_FUNCTION_END.
5821
5822 * dwarf2out.c (add_subscript_info): Wrap variable `dimension_number'
5823 in macro test !MIPS_DEBUGGING_INFO.
5824
5825 * expr.c (expand_builtin_setjmp): Move declaration of variable `i'
5826 into the scope where it is used. Wrap empty else-statement body
5827 in braces.
5828
5829 * fix-header.c: Fix typo in comment.
5830 (inf_skip_spaces): Cast results of INF_UNGET to (void).
5831 (check_protection, main): Likewise.
5832
5833 * flow.c (find_basic_blocks_1): Remove dangling comment text.
5834
5835 * function.c (contains): Wrap prototype and definition in macro
5836 test HAVE_prologue || HAVE_epilogue.
5837 (fixup_var_refs_1): Remove unused variable `width'.
5838
5839 * gen-protos.c (main): Remove unused variable `optr'.
5840
5841 * haifa-sched.c (debug_control_flow): Remove unused variable `j'.
5842
5843 * libgcc2.c (__udiv_w_sdiv): Provide dummy return value of 0.
5844 (__sjpopnthrow): Remove unused variable `jmpbuf'.
5845 (__throw): Remove unused variable `val'.
5846
5847 * protoize.c: Check for a previously existing definition before
b57062ca 5848 defining *_OK macros.
081f5e7e
KG
5849
5850 * scan-decls.c (scan_decls): Remove unused variable `old_written'.
5851
76ce4776
R
5852Tue Mar 17 00:45:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
5853
5854 * vax.h (ADDR_VEC_ALIGN): Define.
5855
e29ef920
MM
5856Mon Mar 16 15:57:17 1998 Michael Meissner <meissner@cygnus.com>
5857
5858 * gcc.c (default_arg): Don't wander off the end of allocated
5859 memory.
5860
dbf55e53
MM
5861 (From Geoffrey Keating <geoffk@ozemail.com.au>)
5862 * rs6000.c (small_data_operand): Ensure that any address
b57062ca 5863 referenced relative to the small data area is inside the SDA.
dbf55e53 5864
883482b2 5865Mon Mar 16 12:55:15 1998 Jim Wilson <wilson@cygnus.com>
b57062ca 5866
883482b2
JW
5867 * config/m68k/netbsd.h (ASM_SPEC): Add %{m68060}.
5868
9ad82ff8 5869Mon Mar 16 15:50:20 EST 1998 Andrew MacLeod <amacleod@cygnus.com>
a0b61d14
AM
5870
5871 * except.h (in_same_eh_region): New prototype.
5872 (free_insn_eh_region, init_insn_eh_region): New prototypes.
5873 * except.c (insn_eh_region, maximum_uid): New static variables.
5874 (set_insn_eh_region): New static function to set region numbers.
5875 (free_insn_eh_region): New function to free EH region table.
5876 (init_insn_eh_region): New function to initialize EH region table.
5877 (in_same_eh_region): New function used to determine if two rtl
5878 instructions are in the same exception region or not.
5879 * final.c (final): Initialize the table indicating which instructions
5880 belong in which exception region.
5881 * genpeep.c (main): Add "except.h" to include file list in generated
b57062ca
UD
5882 file insn-peep.c.
5883 * config/sparc/sparc.md: Add calls to 'in_same_eh_region' in 4
5884 peepholes involving calls and unconditional branches.
a0b61d14 5885
66bd0128
JW
5886Mon Mar 16 11:16:50 1998 Jim Wilson <wilson@cygnus.com>
5887
5888 * README.gnat: New file.
5889
1d8eaa6b
AS
5890Mon Mar 16 11:14:20 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5891
5892 * config/m68k/m68k.c: Include <stdlib.h> for atoi. Include
5893 "recog.h" for offsettable_memref_p.
5894 (legitimize_pic_address): Remove unused variable `offset'.
5895 (notice_update_cc): Change return type to void. Add default label
5896 to switch.
5897 (standard_68881_constant_p): Remove unused variable mode.
5898 (print_operand): Define local variable i only if SUPPORT_SUN_FPA.
5899 (const_int_cost): Explicitly declare as returning int.
5900 (output_dbcc_and_branch): Change return type to void.
5901
5902 * config/m68k/linux.h, config/m68k/m68k.md, config/m68k/m68k.c,
5903 config/m68k/m68k.h: Replace gen_rtx (XXX, ...) with gen_rtx_XXX
5904 (...). Use GEN_INT instead of gen_rtx_CONST_INT.
5905
60ba47b4
JL
5906Sun Mar 15 22:30:44 PST 1998 Jeff Law (law@cygnus.com)
5907
5908 * version.c: Bump for snapshot.
5909
68137318
AS
5910Fri Mar 13 11:30:12 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
5911
5912 * config/m68k/m68k.h (CONST_OK_FOR_LETTER_P): Fix logic in range
5913 check for 'M' constraint.
5914
7a50f126
JW
5915Thu Mar 12 14:47:14 1998 Jim Wilson <wilson@cygnus.com>
5916
5917 * cccp.c (create_definition): If pedantic, call pedwarn for macro
5918 varargs feature.
5919
57dbca5e
BS
5920Thu Mar 12 13:43:25 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
5921
5922 * i386.c (ix86_logical_operator): New function.
5923 (split_di): Ensure that when a MEM is split, the resulting MEMs have
5924 SImode.
5925 * i386.md (anddi3, xordi3, iordi3): New patterns. Add a define_split
5926 to implement them.
5927
8625fab5
KG
5928Thu Mar 12 15:13:16 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5929 Richard Earnshaw <rearnsha@arm.com>
5930 Nick Clifton <nickc@cygnus.com>
b57062ca 5931
8625fab5 5932 * tm.texi (DEFAULT_RTX_COSTS): Document new macro.
b57062ca 5933
8625fab5 5934 * arm.h (DEFAULT_RTX_COSTS): Define instead of RTX_COSTS.
b57062ca 5935
8625fab5
KG
5936 * cse.c (rtx_cost): Provide a default case in an enumeration
5937 switch, and call DEFAULT_RTX_COSTS if it's defined.
b57062ca 5938
6ce22dac
MH
5939Thu Mar 12 10:02:38 1998 Manfred Hollstein <manfred@s-direktnet.de>
5940
5941 * basic-block.h (compute_preds_succs): Change return type in
5942 prototype to void.
5943 * flow.c (compute_preds_succs): Likewise in function definition.
5944
5945 * regmove.c (find_matches): Cast char used as array index to unsigned char
5946 to supress warning.
5947
9c318306
MH
5948Thu Mar 12 09:39:40 1998 Manfred Hollstein <manfred@s-direktnet.de>
5949
5950 * i386.h (RTX_COSTS): Insert braces around nested if.
5951 (ADDITIONAL_REGISTER_NAMES): Insert braces around structured
5952 elements.
5953
5954 * gcc.c (default_compilers): Properly put brackets around array elements in
5955 initializer.
5956
5957 * getopt.c (_getopt_internal): Add explicit braces around nested if;
5958 reformatted.
5959
5960 * reg-stack.c (record_asm_reg_life): Add explicit braces around nested if's.
5961 (record_reg_life_pat): Add explicit parens around && and || in expression.
5962 (stack_reg_life_analysis): Add parens around assignment used as expression.
5963 (convert_regs): Likewise.
5964
56c5d8bf
MH
5965Thu Mar 12 09:25:29 1998 Manfred Hollstein <manfred@s-direktnet.de>
5966
5967 * bitmap.c (bitmap_element_allocate): Remove unused parameter;
5968 change callers accordingly.
5969
5970 * cplus-dem.c (arm_special): Remove unused parameter work in prototype
5971 and definition; change all callers accordingly.
5972
5973 * except.c (init_eh): Avoid assignment of unused return value of
5974 build_pointer_type; cast it to void, instead, and remove unused
5975 variable type.
5976
5977 * gcc.c (lang_specific_driver): Define prototype only #ifdef
5978 LANG_SPECIFIC_DRIVER.
5979 (temp_names): Define only #ifdef MKTEMP_EACH_FILE.
5980
5981 * genoutput.c (output_epilogue): Initialize next_name to 0.
5982
5983 * real.c (efrexp): #if 0 prototype and function definition.
5984 (eremain): Likewise.
5985 (uditoe): Likewise.
5986 (ditoe): Likewise.
5987 (etoudi): Likewise.
5988 (etodi): Likewise.
5989 (esqrt): Likewise.
5990
5991 * reload.c (push_secondary_reload): Define prototype only
5992 #ifdef HAVE_SECONDARY_RELOADS.
5993
5994 * varasm.c (assemble_static_space): Define rounded only
5995 #ifndef ASM_OUTPUT_ALIGNED_LOCAL.
5996
4fce8e83
MH
5997Thu Mar 12 09:11:35 1998 Manfred Hollstein <manfred@s-direktnet.de>
5998
5999 * i386.md (andsi): Add default case in enumeration switch.
6000 (iorsi3): Likewise.
6001 (iorhi3): Likewise.
6002 (xorsi3): Likewise.
6003
85066503
MH
6004Thu Mar 12 08:37:02 1998 Manfred Hollstein <manfred@s-direktnet.de>
6005
6006 * c-decl (finish_struct): Change type of min_align to unsigned.
6007
6008 * cplus-dem.c (demangle_function_name): Change type of variable i to size_t;
6009 remove unused variable len.
6010
6011 * dwarf2out.c (reg_save): Add explicit cast of -1 to unsigned and a
6012 comment indicating this is proper behaviour.
6013 (reg_loc_descriptor): Remove redundant comparison of unsigned variable
6014 reg >= 0.
6015 (based_loc_descr): Likewise.
6016
6017 * enquire.c (bitpattern): Change type of variable i to unsigned.
6018
6019 * final.c (output_asm_insn): Don't cast insn_noperands to unsigned.
6020
6021 * flow.c (life_analysis): Change type of variable i to size_t;
6022 remove unused variable insn.
6023
6024 * gcc.c (translate_options): Change type of variables optlen, arglen and
6025 complen to size_t.
6026 (input_filename_length): Change type to size_t.
6027 (do_spec_1): Change type of variable bufsize to size_t.
6028 (main): Change type of variables i and j to size_t;
6029 remove subblock local definition of variable i.
6030 (lookup_compiler): Change type of second argument to size_t;
6031 change type of variable i to size_t.
6032
6033 * genemit.c (output_init_mov_optab): Change type of variable i to size_t.
b57062ca 6034
85066503
MH
6035 * genopinit.c (get_insn): Change type of variable pindex to size_t.
6036
6037 * genrecog.c (add_to_sequence): Change type of variable i to size_t.
6038
6039 * global.c (global_alloc): Change type of variable i to size_t.
6040
6041 * regclass.c (init_reg_sets): Change type of variables i and j to unsigned.
6042
6043 * stmt.c (expand_end_bindings): Change type of variable i to size_t.
6044 (expand_end_case): Change type of variable count to size_t.
6045
6046 * toplev.c (main): Change type of variable j to size_t.
6047 (set_target_switch): Change type of variable j to size_t.
6048 (print_switch_values): Change type of variable j to size_t;
6049 remove unused variable flags.
6050
6051 * varasm.c (assemble_variable): Change type of variable align to size_t.
6052 (const_hash_rtx): Change type of variable i to size_t.
6053
6d89b990
MM
60541998-03-11 Mark Mitchell <mmitchell@usa.net>
6055
6056 * dbxout.c (dbxout_type_methods): Only treat TYPE_METHODS as a
6057 TREE_VEC if that's what it really is.
6058
01c7f350
MM
6059Wed Mar 11 15:16:01 1998 Michael Meissner <meissner@cygnus.com>
6060
6061 * {haifa-,}sched.c (rank_for_schedule): Only take void * arguments
6062 as per ISO C spec.
6063
754d1a92
TT
6064Wed Mar 11 12:05:20 1998 Teemu Torma <tot@trema.com>
6065
6066 * gthr.h: Changed the comment about return values.
6067 * gthr-solaris.h (__gthread_once): Do not use errno; return the
b57062ca 6068 error number instead of -1.
754d1a92
TT
6069 (__gthread_key_create): Any non-zero return value is an error.
6070 * libgcc2.c (eh_context_initialize): Check for non-zero return
6071 value from __gthread_once.
6072 Check that the value of get_eh_context was really changed.
6073
77008a44
R
6074Wed Mar 11 18:26:25 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6075
6076 * sh.h (LOOP_ALIGN): Only align when optimizing.
6077 * sh.c (find_barrier): Clear inc for CODE_LABELs.
6078 When not optimizing, calculate alignment for BARRIERs directly.
6079
a8aa4e0b
R
6080Wed Mar 11 15:07:18 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6081
6082 * final.c (shorten_branches): Remove conditionalizing on
6083 SHORTEN_WITH_ADJUST_INSN_LENGTH
6084 * sh.h, pa.h (SHORTEN_WITH_ADJUST_INSN_LENGTH): Remove.
6085
832544bd
JL
6086Wed Mar 11 02:37:41 1998 Jeffrey A Law (law@cygnus.com)
6087
6088 * flow.c (find_basic_blocks_1): Keep the cfg accurate when removing
6089 an unconditional jump around deleted blocks.
6090
bdd3e6ab
JW
6091Mon Mar 9 12:02:23 1998 Jim Wilson <wilson@cygnus.com>
6092
11a932c0
JW
6093 * profile.c (branch_prob): If see computed goto, call fatal instead of
6094 abort.
6095
eeb54a49 6096 * config/mips/sni-svr4.h (CPP_PREDEFINE): Add -DSNI and -Dsinix.
b57062ca 6097
35011dd5
JW
6098 * configure.in (alpha-dec-osf): Add default case for osf* to switch.
6099 Patch from Bruno Haible.
6100
bdd3e6ab
JW
6101 * function.c (put_reg_into_stack): Copy MEM_IN_STRUCT_P from new.
6102 (assign_parms): Set aggregate if hide_last_arg and last_named.
6103
af035616
R
6104Mon Mar 9 19:57:56 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6105
6106 * final.c (shorten_branches): Initialize insn_addresses.
6107
97e3c422
R
6108Mon Mar 9 14:10:23 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6109
6110 * sh.h (MUST_PASS_IN_STACK): Define.
6111
5e75ef4a
JL
6112Sun Mar 8 13:01:56 1998 Jeffrey A Law (law@cygnus.com)
6113
6114 * final.c (shorten_branches): Fix minor logic error in
6115 ADDR_DIFF_VEC shortening support.
6116
99613661
JL
6117Sun Mar 8 02:17:42 PST 1998 Jeff Law (law@cygnus.com)
6118
6119 * version.c: Bump for snapshot.
6120
8ea2b111
JL
6121Sat Mar 7 00:54:15 1998 Jeffrey A Law (law@cygnus.com)
6122
168cbdf9
JL
6123 * haifa-sched.c (is_cfg_nonregular): Change return type to
6124 an int. No longer compute "estimated" number of edges. Use
6125 computed_jump_p instead of duplicating the code. Fixup/add
6126 some comments.
6127 (build_control_flow): Returns a value indicating an irregularity
6128 in the cfg was detected. Count the number of edges in the cfg.
6129 allocate various edge tables.
6130 (find_rgns): No longer look for unreachable blocks.
6131 (schedule_insns): Do not allocate memory for edge tables here.
6132 Free memory for edge tables before returning. Do not perform
6133 cross block scheduling if build_control_flow returns nonzero.
6134 * flow.c (compute_preds_succs): More accurately determine when
6135 a block drops in.
6136
52becdc0
JL
6137 * basic-block.h (free_basic_block_vargs): Provide prototype.
6138
8ea2b111
JL
6139 * cccp.c (main): Fix dumb mistakes in last change.
6140
33f7f353
JR
6141Fri Mar 6 21:28:45 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6142
6143 * rtl.h (addr_diff_vec_flags): New typedef.
6144 (union rtunion_def): New member rt_addr_diff_vec_flags.
6145 (ADDR_DIFF_VEC_FLAGS): New macro.
6146
6147 * sh.c (output_branch): Fix offset overflow problems.
6148
6149 * final.c (shorten_branches): Implement CASE_VECTOR_SHORTEN_MODE.
6150 (final_scan_insn): New argument BODY for ASM_OUTPUT_ADDR_DIFF_ELT.
6151 * rtl.def (ADDR_DIFF_VEC): Three new fields (min, max and flags).
6152 * stmt.c (expand_end_case): Supply new arguments to
6153 gen_rtx_ADDR_DIFF_VEC.
6154 * 1750a.h (ASM_OUTPUT_ADDR_DIFF_ELT): New argument BODY.
6155 * alpha.h, arc.h, clipper.h, convex.h : Likewise.
6156 * dsp16xx.h, elxsi.h, fx80.h, gmicro.h, h8300.h : Likewise.
6157 * i370.h, i386.h, i860.h, i960.h, m32r.h, m68k.h, m88k.h : Likewise.
6158 * mips.h, mn10200.h, mn10300.h, ns32k.h, pa.h, pyr.h : Likewise.
6159 * rs6000.h, sh.h, sparc.h, spur.h, tahoe.h, v850.h : Likewise.
6160 * vax.h, we32k.h, alpha/vms.h, arm/aof.h, arm/aout.h : Likewise.
6161 * i386/386bsd.h, i386/freebsd-elf.h : Likewise.
6162 * i386/freebsd.h, i386/linux.h : Likewise.
6163 * i386/netbsd.h, i386/osfrose.h, i386/ptx4-i.h, i386/sco5.h : Likewise.
6164 * i386/sysv4.h, m68k/3b1.h, m68k/dpx2.h, m68k/hp320.h : Likewise.
6165 * m68k/mot3300.h, m68k/sgs.h : Likewise.
6166 * m68k/tower-as.h, ns32k/encore.h, sparc/pbd.h : Likewise.
6167 * sh.h (INSN_ALIGN, INSN_LENGTH_ALIGNMENT): Define.
6168 (CASE_VECTOR_SHORTEN_MODE): Define.
6169 (short_cbranch_p, align_length, addr_diff_vec_adjust): Don't declare.
6170 (med_branch_p, braf_branch_p): Don't declare.
6171 (mdep_reorg_phase, barrier_align): Declare.
6172 (ADJUST_INSN_LENGTH): Remove alignment handling.
6173 * sh.c (uid_align, uid_align_max): Deleted.
6174 (max_uid_before_fixup_addr_diff_vecs, branch_offset): Deleted.
6175 (short_cbranch_p, med_branch_p, braf_branch_p, align_length): Deleted.
6176 (cache_align_p, fixup_aligns, addr_diff_vec_adjust): Deleted.
6177 (output_far_jump): Don't use braf_branch_p.
6178 (output_branchy_insn): Don't use branch_offset.
6179 (find_barrier): Remove checks for max_uid_before_fixup_addr_diff_vecs.
6180 Remove paired barrier stuff.
6181 Don't use cache_align_p.
6182 Take alignment insns into account.
6183 (fixup_addr_diff_vecs): Reduce to only fixing up the base label of
6184 the addr_diff_vec.
6185 (barrier_align, branch_dest): New function.
6186 (machine_dependent_reorg, split_branches): Remove infrastructure
6187 for branch shortening that is now provided in the backend.
6188 * sh.md (short_cbranch_p, med_branch_p, med_cbranch_p): New attributes.
6189 (braf_branch_p, braf_cbranch_p): Likewise.
6190 (attribute length): Use new attributes.
6191 (casesi_worker): Get mode and unsignednedd from ADDR_DIFF_VEC.
6192 (addr_diff_vec_adjust): Delete.
6193 (align_2): Now a define_expand.
6194 (align_log): Now length 0.
6195
170a16c7
MM
6196Fri Mar 6 14:41:33 1998 Michael Meissner <meissner@cygnus.com>
6197
6198 * m32r.md (right): Correctly check for length == 2, not 1.
6199
688f0603
KG
6200Fri Mar 6 14:00:04 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6201
6202 * mips/mips.h: Prototype `machine_dependent_reorg'.
6203 (ASM_OUTPUT_ALIGN): Remove unused variable `mask'.
6204
19cbe68d
JR
6205Fri Mar 6 11:43:35 1998 Joern Rennecke (amylaar@cygnus.co.uk)
6206
6207 * final.c (shorten_branches): Restore accidentally removed code.
6208
8add77ce
AS
6209Fri Mar 6 11:00:49 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6210
6211 * configure.in: Remove duplicate uses of AC_PROG_CC and
6212 AC_PROG_MAKE_SET.
6213
fbb5ed67
RH
6214Fri Mar 6 00:59:30 1998 Richard Henderson <rth@cygnus.com>
6215
6216 * configure.in (target_cpu_default2): Correct typo for alphapca56.
6217
5ece9746
JL
6218Thu Mar 5 23:24:50 1998 Jeffrey A Law (law@cygnus.com)
6219 Doug Evans (devans@cygnus.com)
6220
6221 * haifa-sched.c (build_jmp_edges): Delete dead function.
6222 (build_control_flow): Use cfg routines from flow.c
6223 (schedule_insns): Remove debugging code accidentally checked
6224 in earlier today.
6225
6226 * basic-block.h: Add external integer list structures, typdefs,
6227 accessor macros and function declarations. Simlarly for
6228 basic block pred/succ support and simple bitmap stuff.
6229 * flow.c: Add functions for integer list, basic block pred/succ
6230 support and simple bitmap support.
6231 (compute_dominators): New function to compute dominators and
6232 post dominators.
6233 (find_basic_blocks): Split into two functions.
6234 (life_analysis): Likewise.
6235 (flow_analysis): Removed. Now handled by calling find_basic_blocks,
6236 the life_analysis from toplev.c
6237 * toplev.c (rest_of_compilation): Call find_basic_blocks, then
6238 life_analysis instead of flow_analysis.
6239
ac9b3c97
R
6240Thu Mar 5 23:06:26 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6241
6242 * jump.c (jump_optimize): Call mark_jump_label also for deleted
6243 insns.
6244 (mark_jump_label): Don't increment ref counts for deleted insns.
6245
6e92f4b6
KG
6246Thu Mar 5 09:55:15 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6247
6248 * mips/iris6.h (TARGET_DEFAULT): Parenthesize macro definition.
b57062ca 6249
6e92f4b6
KG
6250 * mips/mips.c: Include stdlib.h and unistd.h.
6251 (mips_asm_file_end): Add braces around empty body in an if-statement.
6252 (function_prologue): Wrap variable `fnname' in
6253 !FUNCTION_NAME_ALREADY_DECLARED. Correct format specifier in fprintf.
6254 (mips_select_rtx_section, mips_select_section): Declare as void.
b57062ca 6255
6e92f4b6
KG
6256 * mips/mips.h: Add prototypes for extern functions in mips.c.
6257 (FUNCTION_ARG_REGNO_P): Add parentheses around && within ||.
6258 (ENCODE_SECTION_INFO): Add braces around empty body in an
6259 if-statement.
b57062ca 6260
6e92f4b6
KG
6261 * mips/mips.md (movdi): Add parentheses around && within ||.
6262 (movsf, movdf): Likewise.
6263 (branch_zero, branch_zero_di): Add default case in
6264 enumeration switch.
b57062ca 6265
6e92f4b6 6266
9ba3994a
RH
6267Thu Mar 5 02:45:48 1998 Richard Henderson <rth@cygnus.com>
6268
6269 * alpha/alpha.h (TARGET_WINDOWS_NT, TARGET_OPEN_VMS): Just make them
6270 real constants, since they can't be changed.
6271 (TARGET_AS_CAN_SUBTRACT_LABELS): New.
6272 * alpha/alpha.md (builtin_setjmp_receiver): Use it.
6273 * alpha/osf.h (TARGET_AS_CAN_SUBTRACT_LABELS): New.
6274 * alpha/osf2or3.h (TARGET_AS_CAN_SUBTRACT_LABELS): New.
6275 * alpha/vms.h (TARGET_OPEN_VMS): New.
6276 * alpha/win-nt.h (TARGET_WINDOWS_NT): New.
6277
5ec105cd
RH
6278Thu Mar 5 02:41:27 1998 Richard Henderson <rth@cygnus.com>
6279
6280 * reload.c (find_reloads): Always force (subreg (mem)) to be
6281 reloaded if WORD_REGISTER_OPERATIONS.
6282
ebb7b10b
RH
6283Thu Mar 5 02:14:44 1998 Richard Henderson <rth@cygnus.com>
6284
6285 * haifa-sched.c (free_list): Rename from free_pnd_lst.
6286 (free_pending_lists): Rename free_pnd_lst uses.
6287 (remove_dependence): Place expunged element on unused_insn_list.
6288 (alloc_INSN_LIST, alloc_EXPR_LIST): New. Change all callers of
6289 gen_rtx_*_LIST and alloc_rtx to use them.
6290 (compute_block_backward_dependences): Free the reg_last_* lists.
6291
cb37ce62
JL
6292Thu Mar 5 00:05:40 1998 Jeffrey A Law (law@cygnus.com)
6293
6294 * cccp.c (main): Avoid undefined behavior when setting pend_includes
6295 and pend_files.
6296
ce514f57
FS
6297Wed Mar 4 21:58:25 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
6298
b57062ca 6299 * rs6000/linux.h: don't define DEFAULT_VTABLE_THUNKS to 1 if
ce514f57
FS
6300 USE_GNULIBC_1 is defined
6301 * configure.in: add a new case powerpc-*-linux-gnulibc1 which
6302 includes the t-linux-gnulibc1 fragment
6303
89a5e42b
JW
6304Wed Mar 4 12:11:36 1998 Jim Wilson <wilson@cygnus.com>
6305
6306 * mips.md (movdf_internal1a): Fix misplaced parenthesis in condition.
6307
1dd8faa8
R
6308Wed Mar 4 18:47:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6309
6310 * final.c (final_scan_insn, case CODE_LABEL: Cleanup.
6311
e2faec75
R
6312Wed Mar 4 15:51:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6313
6314 * final.c (shorten_branches): Tag the loop alignment onto the
6315 first label after NOTE_INSN_LOOP_BEG even if there is an
6316 intervening insn.
6317
de7987a6
R
6318Tue Mar 3 21:48:35 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6319
26024475
R
6320 * final.c (insn_current_reference_address):
6321 Use SEQ instead of BRANCH as argument to align_fuzz, to get a
6322 proper alignment chain.
6323
de7987a6
R
6324 * final.c (max_labelno): New static variable.
6325 (final_scan_insn): Check max_labelno before outputting an
6326 alignment for a label.
de7987a6
R
6327 (shorten_branches): Remove unused variable length_align.
6328
27d8f9ea
KG
6329Tue Mar 3 14:27:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6330
6331 * sparc.c (ultrasparc_adjust_cost): Add default case in
6332 enumeration switch.
b57062ca 6333
27d8f9ea
KG
6334 * sparc.h: Add prototypes for extern functions defined in
6335 sparc.c.
6336
bd334356
NC
6337Tue Mar 3 10:00:11 1998 Nick Clifton <nickc@cygnus.com>
6338
6339 * toplev.c: Only generate <name>.dbr file when dumping RTL if
b57062ca 6340 DEALY_SLOTS is defined.
bd334356 6341
1838fe6d
MH
6342Tue Mar 3 07:36:37 1998 Manfred Hollstein <manfred@s-direktnet.de>
6343
6344 * reorg.c (fill_eager_delay_slots): Add new argument delay_list
6345 in call to fill_slots_from_thread.
6346
b0021153
RH
6347Mon Mar 2 13:45:03 1998 Richard Henderson <rth@cygnus.com>
6348
b57062ca 6349 * alpha/linux.h (CPP_PREDEFINES): Correct connecting whitespace
b0021153
RH
6350 to SUB_CPP_PREDEFINES. Reported by asun@saul4.u.washington.edu.
6351
687d0ab6 6352Mon Mar 2 22:59:28 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
fc470718
R
6353
6354 * final.c (insn_last_address, insn_current_align, uid_align):
6355 New variables.
6356 (in_align_chain, align_fuzz, align_shrink_fuzz): New functions.
6357 (insn_current_reference_address): Likewise.
6358 (shorten_branches, final_scan_insn): Implement LABEL_ALIGN,
6359 LABEL_ALIGN_AFTER_BARRIER and LOOP_ALIGN target macros.
6360 (label_to_alignment): New function.
6361 * genattrtab.c (write_test_expr): If one of LABEL_ALIGN,
6362 LABEL_ALIGN_AFTER_BARRIER or LOOP_ALIGN is defined, call
6363 insn_current_reference_address instead of insn_current_address.
6364 (or_attr_value, write_length_unit_log): New functions.
6365 (main): Call write_length_unit_log.
6366 (write_const_num_delay_slots): Output extra '\n'.
6367 * alpha.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE):
6368 replace with:
6369 (LOOP_ALIGN, ALIGN_LABEL_AFTER_BARRIER).
6370 * i386.h, i386/osfrose.h, i386/svr3dbx.h, m68k.h, sparc.h: Likewise.
6371 * arc.h, m32r.h (ASM_OUTPUT_LOOP_ALIGN): replace with:
6372 (LOOP_ALIGN).
6373 * i960.h, m88k.h: (ASM_OUTPUT_ALIGN_CODE): Replace with:
6374 (LABEL_ALIGN_AFTER_BARRIER).
6375 * ns32k/encore.h, ns32k/merlin.h, ns32k.h, ns32k/sequent.h: Likewise.
6376 * ns32k/tek6000.h: Likewise.
6377 * i386/gas.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE): Delete.
6378 * i386.md (casesi+1): Use ASM_OUTPUT_ALIGN instead of
6379 ASM_OUTPUT_ALIGN_CODE.
6380
54f00917
JL
6381Mon Mar 2 01:05:50 PST 1998 Jeff Law (law@cygnus.com)
6382
6383 * version.c: Bump for snapshot.
6384
38630f7e
JL
6385Mon Mar 2 00:52:18 PST 1998 Jeff Law (law@cygnus.com)
6386
6387 * version.c: Bump for snapshot.
6388
ab63953e
JL
6389Sun Mar 1 18:25:49 1998 Michael P. Hayes <michaelh@ongaonga.chch.cri.nz>
6390
6391 * reorg.c (fill_slots_from_thread): Don't steal delay list from target
b57062ca 6392 if condition code of jump conflicts with opposite_needed.
ab63953e
JL
6393
6394 * reorg.c (fill_slots_from_thread): Mark resources referenced in
6395 opposite_needed thread. Return delay_list even when cannot get
6396 any more delay insns from end of subroutine.
6397
6398Sun Mar 1 18:26:21 1998 Ken Rose (rose@acm.org)
6399
6400 * reorg.c (fill_slots_from_thread): New parameter, delay_list.
6401 All callers changed.
6402
6403Sun Mar 1 18:25:37 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
72dd050a
BH
6404
6405 * frame.c (start_fde_sort, fde_split, heapsort, fde_merge,
6406 end_fde_sort): New functions for fast sorting of an FDE array.
6407 (fde_insert): Simplified.
6408 (add_fdes): Change argument list.
6409 (frame_init): Use the new functions.
6410
de153e82
JL
6411Sun Mar 1 18:06:21 1998 Jeffrey A Law (law@cygnus.com)
6412
925b1f33
JL
6413 * ginclude/va-ppc.h (va_arg): Fix typo in long long support.
6414
c7271385
JL
6415 * i386.c (reg_mentioned_in_mem): Fix dangling else statement.
6416
de153e82
JL
6417 * fold-const.c (fold_range_test): Always return a value.
6418
81023100
MK
6419Sun Mar 1 17:57:34 1998 Mumit Khan <khan@xraylith.wisc.edu>
6420
6421 * config/i386/winnt.c (i386_pe_unique_section): Put read-only
6422 data in the text section unless READONLY_DATA_SECTION is defined.
6423
818e50a5
JL
6424Sun Mar 1 17:48:46 1998 Jeffrey A Law (law@cygnus.com)
6425
6426 * c-parse.in (undeclared variable error): Tweak error message to
6427 be clearer.
6428
c93dc3ac
JL
6429Sun Mar 1 10:22:36 PST 1998 Jeff Law (law@cygnus.com)
6430
6431 * version.c: Bump for snapshot.
6432
90ca38bb
MM
64331998-02-28 Mark Mitchell <mmitchell@usa.net>
6434
6435 * final.c (final_scan_insn): Undo overzealous removal of `set'.
6436
3d85c12e
KG
6437Sat Feb 28 07:54:03 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6438
5feca984
KG
6439 * pa.h (CONST_COSTS): When checking the CONST_DOUBLE enumerated
6440 case, add parentheses to specify the proper order of precedence in
6441 the if-statement.
b57062ca 6442
5feca984 6443
51723711
KG
6444 * c-aux-info.c: Include string.h/strings.h.
6445
6446 * pa.c: Include stdlib.h.
6447 (pa_combine_instructions): Prototype the function.
6448 (pa_can_combine_p, forward_branch_p, shadd_constant_p): Likewise.
6449 (reloc_needed): Add default case for enumeration switch.
6450 (remove_useless_addtr_insns): Remove unused variable `all'.
6451 (hppa_expand_prologue): Add explicit braces to avoid
6452 ambiguous `else'.
6453 (output_function_epilogue): Remove unused variable `i'.
6454 (output_millicode_call): Remove unused variable `link'.
6455 (shadd_constant_p, forward_branch_p): Make the function static.
6456 (following_call): Explicitly declare to return int.
6457 (pa_reorg): Declare as void.
6458 (pa_combine_instructions): Declare as static void. Add
6459 parentheses around && within ||.
b57062ca 6460
51723711
KG
6461 * pa.h: Add prototypes for pa_reorg, symbolic_operand,
6462 following_call, function_label_operand, lhs_lshift_cint_operand
6463 and zdepi_cint_p.
6464
6465 * pa.md: Add parentheses around && within ||.
6466
6467 * cppalloc.c: Include stdlib.h.
6468
6469 * cpperror.c (cpp_print_containing_files): Remove unused variable
6470 `i'. Fix format specifier in fprintf.
6471
6472 * cse.c (cse_around_loop): Add explicit braces to avoid
6473 ambiguous `else'.
6474 (delete_dead_from_cse): Wrap variable `tem' in macro HAVE_cc0.
6475
6476 * expr.c (expand_expr): Add parentheses around && within ||.
6477
6478 * final.c (app_enable): Replace fprintf with fputs where there are
6479 no format specifiers and no trailing argument after the string.
6480 Eg, when printing ASM_APP_ON/ASM_APP_OFF.
6481 (app_disable): Likewise.
6482 (final_end_function): Likewise.
6483 (final_scan_insn): Likewise. Remove unused variable `set'.
6484 (profile_function): Wrap empty if-statement body in {} brackets.
6485
6486 * function.c: Include stdlib.h.
6487 (pad_below): Wrap prototype and definition in ARGS_GROW_DOWNWARD.
6488 (reposition_prologue_and_epilogue_notes): Add parentheses
6489 around assignment used as truth value.
6490
6491 * integrate.c (expand_inline_function): Wrap variable
6492 `cc0_insn' in macro HAVE_cc0.
6493
6494 * jump.c (jump_optimize): Wrap variable `q' in macro
6495 HAVE_cc0. Remove unused variable `prev1'.
6496
6497 * libgcc2.c (__bb_exit_trace_func): Add parentheses around &&
6498 within ||. Fix format specifier in fprintf.
6499 (__bb_init_prg): Add parentheses around assignment used as
6500 truth value.
6501
6502 * local-alloc.c: Include stdlib.h.
6503 (requires_inout): Add parentheses around assignment used
6504 as truth value.
6505
6506 * loop.c (analyze_loop_iterations): Wrap prototype and definition
6507 in macro HAVE_decrement_and_branch_on_count.
6508 (insert_bct, instrument_loop_bct): Likewise.
6509 (move_movables): Add parentheses around assignment used as
6510 truth value.
6511 (consec_sets_invariant_p): Likewise.
6512 (maybe_eliminate_biv_1): Wrap variable `new' in macro HAVE_cc0.
6513
6514 * objc/objc-act.c: Include stdlib.h.
6515 (lookup_method_in_protocol_list): Wrap empty else-statement body
6516 in braces.
6517 (lookup_protocol_in_reflist): Likewise.
6518 (objc_add_static_instance): Remove unused variables `decl_expr'
6519 and `decl_spec'.
6520 (get_objc_string_decl): Remove unused variable `decl'.
6521 (generate_static_references): Remove unused variables `idecl' and
6522 `instance'.
6523 (check_protocols): Wrap empty else-statement body in braces.
b57062ca 6524
51723711
KG
6525 * protoize.c: Include stdlib.h.
6526 (substr): Add parentheses around assignment used as truth value.
6527 (abspath): Likewise.
6528 (shortpath): Likewise.
6529
6530 * regmove.c (fixup_match_1): Add parentheses around assignment
6531 used as truth value.
6532
6533 * reload.c (push_secondary_reload): Remove unused variable `i'.
6534 (find_reloads): Add parentheses around assignment used as truth
6535 value.
6536
6537 * reload1.c: Include stdlib.h.
6538
6539 * rtl.h: Correct typo in prototype of offsettable_memref_p.
6540
6541 * stmt.c (add_case_node): Add parentheses around assignment used
6542 as truth value.
6543 (case_tree2list): Likewise.
6544
6545 * tree.c (valid_machine_attribute): Wrap variable `decl_attr_list'
6546 in macro VALID_MACHINE_DECL_ATTRIBUTE. Wrap variable
6547 `type_attr_list' in macro VALID_MACHINE_TYPE_ATTRIBUTE.
6548 (merge_attributes): Add explicit braces to avoid ambiguous
6549 `else'.
6550
6551 * unroll.c (copy_loop_body): Wrap variable `cc0_insn' in
6552 macro HAVE_cc0.
b57062ca 6553
51723711 6554 * varasm.c: Include stdlib.h.
b57062ca 6555
51723711 6556
c5801053
KG
6557 * system.h: Remove sys/stat.h.
6558 * gcc.c: Add sys/stat.h.
6559
3d85c12e
KG
6560 * genattr.c: Wrap prototype of `free' in NEED_DECLARATION_FREE.
6561 * genattrtab.c: Likewise.
6562 * genconfig.c: Likewise.
6563 * genemit.c: Likewise.
6564 * genextract.c: Likewise.
6565 * genflags.c: Likewise.
6566 * genopinit.c: Likewise.
6567 * genoutput.c: Likewise.
6568 * genpeep.c: Likewise.
6569 * genrecog.c: Likewise.
6570 * tlink.c: Likewise. Also wrap `getenv' in NEED_DECLARATION_GETENV.
6571
0fd12b04
AS
6572Fri Feb 27 11:02:47 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6573
bd762873
AS
6574 * invoke.texi: Use @itemx for a secondary item in a @table.
6575
0fd12b04
AS
6576 * config/m68k/m68k.md (movsf+1): Optimize moving a CONST_DOUBLE
6577 zero.
6578
c3cf395b
ILT
6579Thu Feb 26 00:13:21 1998 Ian Lance Taylor <ian@cygnus.com>
6580
6581 * choose-temp.c: Fix handling of sys/file.h to work in libiberty.
6582
b94b5c16
JL
6583Wed Feb 25 23:40:54 1998 Jeffrey A Law (law@cygnus.com)
6584
6585 * i386.c (struct machine_function): Add new fields for PIC stuff.
6586 (save_386_machine_status): Fix argument to xmalloc. Save pic_label_rtx
6587 and pic_label_name.
6588 (restore_386_machine_status): Corresponding changes.
6589 (clear_386_stack_locals): Also clear pic_label_rtx and pic_label_name.
6590
8dfafd99
JL
6591Wed Feb 25 01:31:40 1998 Jeffrey A Law (law@cygnus.com)
6592
6593 * c-parse.y (undeclared variable error): Tweak error message
6594 to be clearer.
6595
bb8ebb7f
RH
6596Tue Feb 24 23:54:07 1998 Richard Henderson <rth@cygnus.com>
6597
6598 * flags.h (g_switch_value, g_switch_set): Declare.
6599 * alpha.c (override_options): Set g_switch_value=8 if not set.
6600 * alpha/elf.h (CC1_SPEC): New.
6601 (ASM_SPEC): New.
6602 (LINK_SPEC): Pass along the -G value we were given.
6603 (LOCAL_ASM_OP): Remove.
6604 (ASM_OUTPUT_ALIGNED_LOCAL): Output to .bss or .sbss by size.
6605 (MAX_OFILE_ALIGNMENT): New.
6606 (BSS_SECTION_ASM_OP, SBSS_SECTION_ASM_OP, SDATA_SECTION_ASM_OP): New.
6607 (EXTRA_SECTIONS): Add sbss and sdata.
6608 (SECTION_FUNCTION_TEMPLATE): New.
6609 (EXTRA_SECTION_FUNCTIONS): Use it.
6610 (CTORS_SECTION_FUNCTION, DTORS_SECTION_FUNCTION): Remove.
6611 (SELECT_SECTION): Use sdata when small enough.
6612 * alpha/linux.h (ASM_SPEC): Remove.
b57062ca 6613
bb8ebb7f 6614
3e07bdbd
BH
6615Mon Feb 23 15:09:18 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
6616 * config.sub (sco5): Fix typo.
6617
9d1ebd25
MH
6618Mon Feb 23 18:19:31 1998 Manfred Hollstein <manfred@s-direktnet.de>
6619
6620 * config/t-linux (LIBGCC1, CROSS_LIBGCC1, LIBGCC1_TEST): Add macros and
6621 set to empty.
6622 * config/t-linux-aout (LIBGCC1, CROSS_LIBGCC1, LIBGCC1_TEST): Likewise.
6623 * config/alpha/t-linux: Remove file.
6624 * config/sparc/t-linux: Remove file.
6625 * config/m68k/t-linux (LIBGCC1, CROSS_LIBGCC1): Remove.
6626 * config/m68k/t-linux-aout (LIBGCC1, CROSS_LIBGCC1): Likewise.
6627 * configure.in (alpha*-*-linux-gnulibc1*): Use t-linux instead of alpha/t-linux
6628 for tmake_file.
6629 (alpha*-*-linux-gnu*): Likewise.
6630 (sparc-*-linux-gnulibc1*): Use t-linux instead of sparc/t-linux for tmake_file.
6631 (sparc-*-linux-gnu*): Likewise.
84bc3b4f
RL
6632
6633Mon Feb 23 10:47:39 1998 Robert Lipe <robertl@dgii.com>
6634 * collect2.c (ldd_file_name): Bracket declaration with same
6635 manifests as use.
6636 (full_real_ld_suffix): Deleted. Variable was calloced and
6637 written into, but never read.
6638
9e89df50
MS
66391998-02-23 Mike Stump <mrs@wrs.com>
6640
6641 * configure.in: Add support for i386-wrs-vxworks configuration.
6642 * i386/vxi386.h: New file.
6643
1160f9ec
BH
6644Sun Feb 22 21:16:51 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
6645
6646 * tree.c (contains_placeholder_p): Ensure function always returns
6647 a value.
6648 * sparc.md (movdi_sp64_insn): Add default case in enumeration switch.
6649 (movsf_const_insn, movdf_const_insn, movtf_const_insn): Likewise.
6650
328da75c
JL
6651Sun Feb 22 20:58:19 1998 Jeffrey A Law (law@cygnus.com)
6652
6653 * vms.h (SELECT_SECTION): Use TREE_CODE_CLASS correctly.
6654
deabc777
PE
66551998-02-22 Paul Eggert <eggert@twinsun.com>
6656
6657 * config/sparc/sol2-sld.h (LINKER_DOES_NOT_WORK_WITH_DWARF2):
6658 Define this new symbol.
6659 (DWARF2_DEBUGGING_INFO, DWARF_DEBUGGING_INFO): Do not #undef.
6660 * toplev.c (main): Do not default to DWARF2_DEBUG with -ggdb if
6661 LINKER_DOES_NOT_WORK_WITH_DWARF2 is defined.
6662
0e84e8fb
JW
6663Sun Feb 22 20:07:32 1998 Jim Wilson <wilson@cygnus.com>
6664
6665 * iris5.h (DWARF2_UNWIND_INFO): Define to 0.
6666 * iris5gas.h (DWARF2_UNWIND_INFO): Define to 1.
6667
9c37957a
RH
6668Sun Feb 22 15:29:48 1998 Richard Henderson <rth@cygnus.com>
6669
6670 * objc/Object.m (-error): Call objc_verror with our va_list.
6671
e3c49f52
DE
6672Sun Feb 22 09:45:39 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6673
6674 * collect2.c (scan_prog_file): Completely cover uses of variable
6675 `exports' with macro COLLECT_EXPORT_LIST.
6676
6677Sat Feb 21 20:36:23 1998 Jeff Law (law@cygnus.com)
d935d60e
JL
6678
6679 * version.c: Bump for snapshot.
6680
3c674857
MM
6681Fri Feb 20 16:22:13 1998 Michael Meissner <meissner@cygnus.com>
6682
6683 * sched.c (schedule_block): Remove code to get arguments from hard
6684 regs into pseudos early. Same as Aug 25, 1997 change to
6685 haifa-sched.c.
6686
c2d731c4
JM
66871998-02-20 Jason Merrill <jason@yorick.cygnus.com>
6688
6689 * collect2.c (main): Still handle !do_collecting for non-AIX targets.
6690
7d02bbef
JM
66911998-02-16 Mark Mitchell <mmitchell@usa.net>
6692
6693 * toplev.c (rest_of_compilation): Do not defer the output of a
6694 nested function.
6695
9766dbcf
MT
6696Fri Feb 20 10:39:47 1998 Michael Tiemann <michael@impact.tiemann.org>
6697
6698 * ginclude/va-mips.h (va_arg): Remove trailing space after '\'
6699 continuation character (line 243).
6700
01a7aaea
AS
6701Fri Feb 20 12:10:26 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
6702
6703 * genrecog.c (main): Remove duplicated sentence in emitted comment.
6704
db126753
DE
6705Thu Feb 19 22:36:53 1998 Andrey Slepuhin <pooh@msu.net>
6706 David Edelsohn <edelsohn@mhpcc.edu>
6707
6708 * collect2.c (XCOFF_SCAN_LIBS): Remove.
6709 (export_flag): New variable.
6710 (export_file): #ifdef COLLECT_EXPORT_LIST.
6711 (import_file, exports, imports, undefined): New variables.
6712 (libs, cmdline_lib_dirs, libpath_lib_dirs, libpath, libexts): Same.
6713 (dump_list, dump_prefix_list, is_in_list): New functions.
6714 (write_export_file): $ifdef COLLECT_EXPORT_LIST.
6715 (write_import_file, resolve_lib_name): New functions.
6716 (use_import_list, ignore_library): Same.
6717 (collect_exit): maybe_unlink import_file and #ifdef.
6718 (handler): Same.
6719 (main): New variable importf, #ifdef exportf. Move parsing of
6720 -shared before general argument parsing. Resolve AIX library
6721 paths and import libgcc.a symbols. Treat .so shared libraries the
6722 same as objects and .a libraries. Create alias for object_lst and
6723 increment it instead of original pointer. Scan AIX libraries as
6724 objects earlier instead of using scan_libraries. Perform AIX
6725 tlink later to resolve templates instead of forking ld.
6726 (GCC_OK_SYMBOL): Ensure symbol not in undef section.
6727 (GCC_UNDEF_SYMBOL): New macro.
6728 (scan_prog_file): Loop for members of AIX libraries. Handle
6729 export/import of ctors/dtors.
6730 (aix_std_libs): New variable.
6731 (scan_libraries, XCOFF): Delete.
6732
6733Thu Feb 19 22:36:52 1998 Robert Lipe <robertl@dgii.com>
6734
6735 * collect2.c (full_real_ld_suffix): #ifdef CROSS_COMPILE.
6736
e642002f
MS
67371998-02-19 Mike Stump <mrs@wrs.com>
6738
6739 * Makefile.in: Use $tooldir for sys-include to match toplevel
6740 configure.
6741
aff48bca
JL
6742Thu Feb 19 01:32:37 1998 Jeffrey A Law (law@cygnus.com)
6743 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6744
6745 * emit-rtl.c (gen_lowpart_common): Suppress last change if __complex__.
6746
6747 * emit-rtl.c (hard-reg-set.h): Include.
b57062ca 6748 (get_lowpart_common): Don't make new REG for hard reg in a
aff48bca
JL
6749 class that cannot change size.
6750 * Makefile.in (emit-rtl.o): Depend on hard-reg-set.h.
6751
6752 * combine.c: Revert previous patch.
6753
0a9bdce3
PE
67541998-02-19 Paul Eggert <eggert@twinsun.com>
6755
6756 * config/sparc/sol2-sld.h: New file.
6757 * configure.in (sparc-*-solaris2*): Use it when using the
6758 system linker.
6759
3875b31d
JL
6760Thu Feb 19 00:46:59 1998 Jeffrey A Law (law@cygnus.com)
6761
6762 * loop.c (force_movables): Fix typo.
6763
bb5fa67f
MH
6764Thu Feb 19 08:26:30 1998 Manfred Hollstein <manfred@s-direktnet.de>
6765
6766 * m88k.h: Change file pattern to match reality.
6767
7f83c0e7
JL
6768Wed Feb 18 23:19:52 1998 Jeffrey A Law (law@cygnus.com)
6769
6770 * varasm.c (output_constant_pool): Fix dumb thinko in last
6771 change.
dffc0da4
JL
6772
6773 * pa.h (ASM_OUTPUT_FUNCTION_PREFIX): Correctly translate from
6774 a function name to a section name.
6775
d9525bec
BK
67761998-02-18 Doug Evans <devans@cygnus.com>
6777
6778 * tree.h (merge_machine_{type,decl}_attributes): Declare.
6779 (split_specs_attrs, strip_attrs): Add prototypes.
6780 * tree.c (merge_machine_{type,decl}_attributes): New functions.
6781 * c-decl.c (duplicate_decls): Call merge_machine_decl_attributes.
6782 Update olddecl's attributes too.
6783 * c-common.c (strip_attrs): New function.
6784 * c-typeck.c (common_type): Call merge_machine_type_attributes.
6785 * varasm.c (make_function_rtl): New target macro REDO_SECTION_INFO_P.
6786 (make_decl_rtl): Likewise.
6787
67881998-02-18 Jim Wilson <wilson@cygnus.com>
6789
6790 * c-decl.c (shadow_tag_warned): Call split_specs_attrs.
6791
f9a366ac
JL
6792Wed Feb 18 09:09:50 1998 Jeffrey A Law (law@cygnus.com)
6793
6794 Remove this change until we can fix it correctly.
6795 * collect2.c: Bracket declaration of 'exportf' and
6796 'full_real_ld_suffix'.
6797
206ae7cf
BS
6798Wed Feb 18 08:44:25 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
6799
6800 * Makefile.in (STAGESTUFF): Add genrtl.c, genrtl.h and gengenrtl.
6801
0a7ed33c
BS
6802Tue Feb 17 23:30:20 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
6803
6804 * c-common.c (c_expand_start_cond, c_expand_end_cond,
6805 c_expand_start_else): Don't warn about non-ambiguous else even if
6806 braces are missing.
6807
68c9728a 6808Tue Feb 17 23:56:50 1998 Robert Lipe <robertl@dgii.com>
0a7ed33c 6809
68c9728a
RL
6810 * sco5.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT,
6811 ASM_OUTPUT_LONG_DOUBLE): Delete. Use the ones from i386.h
6812 instead.
6813
15941d29
RH
6814Tue Feb 17 22:56:14 1998 Richard Henderson <rth@cygnus.com>
6815
6816 * combine.c (simplify_rtx): Obey CLASS_CANNOT_CHANGE_SIZE when
6817 simplifying a subreg of a hard reg.
6818 (expand_compound_operation): Likewise.
6819 (force_to_mode): Likewise.
6820
5835e573
KG
6821Tue Feb 17 22:37:22 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6822
2fde567e
KG
6823 * fold-const.c: Include "system.h" to get stdlib.h and stdio.h.
6824 (lshift_double): Add parentheses around + or - inside shift.
6825 (rshift_double): Likewise.
6826 (size_int_wide): Explicitly set type of `bit_p' to `int'.
6827
6828 * Makefile.in (fold-const.o): Depend on system.h.
6829
8e85ff2c
KG
6830 * Makefile.in (gcc.o): Depend on system.h, in accordance with last
6831 change to gcc.c.
6832
5835e573
KG
6833 * haifa-sched.c: Include "system.h" to get <stdlib.h> and <stdio.h>.
6834 (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
6835 (sched_note_set): Remove unused parameter `b', all callers changed.
6836 (schedule_block): Likewise for `rgn'.
6837 (split_hard_reg_notes): Likewise for `orig_insn'.
6838 (check_live): Likewise for `trg'.
6839 (update_live): Likewise.
6840 (check_live_1): Explcitly declare variable `i' as int.
6841 (update_live_1): Likewise.
6842 (insn_issue_delay): Remove unused variable `link'.
6843 (sched_analyze_2): Add default case in enumeration switch.
6844 (schedule_insns): Remove unused variable `i'.
6845
6846 * Makefile.in ($(SCHED_PREFIX)sched.o): Depend on system.h.
6847
b1a0c816
JL
6848Tue Feb 17 22:31:04 1998 Jeffrey A Law (law@cygnus.com)
6849
6850 * loop.c (rtx_equal_for_loop_p): Add some braces to disambiguate
6851 a dangling else clause.
6852
365ca18b
GK
6853Tue Feb 17 21:28:12 1998 Gavin Koch <gavin@cygnus.com>
6854
6855 * mips/mips.h (CAN_ELIMINATE): Don't eliminate the frame
6856 pointer for the stack pointer in MIPS16 and 64BIT.
6857
feb60352
R
6858Tue Feb 17 21:17:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
6859
6860 * rtl.h (force_line_numbers, restore_line_number_status): Declare.
6861 * emit-rtl.c (force_line_numbers, restore_line_number_status):
6862 New functions.
6863 * stmt.c (struct nesting): Replace seenlabel with line_number_status.
6864 (expand_start_case): Adjust to this change.
6865 (check_seenlabel): New function.
6866 (pushcase, pushcase_range, expand_endcase): Use it.
6867
93f83bd5
R
6868Tue Feb 17 10:14:32 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
6869
6870 * i386.md (adddi3): Add =!r,0,0,X alternative.
6871
b9af8fb0
DE
6872Mon Feb 16 16:13:43 1998 David Edelsohn <edelsohn@mhpcc.edu>
6873
6874 * rs6000.h (MY_ISCOFF): Add numeric value of U803XTOCMAGIC.
6875 * x-aix31 (INSTALL): Delete.
6876
a4dee8a5
GK
6877Mon Feb 16 09:24:32 1998 Gavin Koch <gavin@cygnus.com>
6878
b57062ca 6879 * mips/mips.c (mips_expand_epilogue): Update tsize_rtx if
a4dee8a5
GK
6880 tsize changes to something other than zero.
6881
8898f8a1
GK
6882Mon Feb 16 09:11:48 1998 Gavin Koch <gavin@cygnus.com>
6883
6884 * ginclude/va-mips.h: Replace casts of pointers to int with
6885 casts of pointers to __PTRDIFF_TYPE__.
6886
9ba7a303
JC
6887Mon Feb 16 08:17:14 1998 John Carr <jfc@mit.edu>
6888
6889 * loop.c (strength_reduce, record_biv, record_giv): Use
6890 HOST_WIDE_INT_PRINT_DEC to print CONST_INT values.
6891
b7f6588d
JM
68921998-02-16 Jason Merrill <jason@yorick.cygnus.com>
6893
6894 * tree.c (first_rtl_op): New fn.
6895 (unsave_expr_now): Use it.
6896 * print-tree.c (print_node): Likewise.
6897 * tree.c (has_cleanups): New fn.
6898 * fold-const.c (fold, case CLEANUP_POINT_EXPR): Use it. Be more
6899 conservative about pushing the cleanup point down.
6900 * tree.h: Declare them.
6901
8e7336f8
JL
6902Sun Feb 15 23:28:44 1998 Jeffrey A Law (law@cygnus.com)
6903
6904 * toplev.c (flag_schedule_reverse_before_reload): Delete variable.
6905 (flag_schedule_reverse_after_reload): Likewise.
6906 (f_options): Remove reverse scheduling support.
6907 * flags.h (flag_schedule_reverse_before_reload): Delete declaration.
6908 (flag_schedule_reverse_after_reload): Likewise.
6909 * haifa-sched.c (rank_for_schedule): Remove support for reverse
6910 scheduling.
b57062ca 6911
79e11844
KG
6912Sun Feb 15 21:33:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6913
17248a6b
KG
6914 * gcc.c: Get system includes, prototypes and macros via "system.h"
6915 instead of doing it manually. Change all calls of the ctype
6916 macros to custom versions defined in "system.h".
6917
79e11844
KG
6918 * system.h: Fix return type of bcmp prototype from `void' to `int'.
6919 Make bcopy, bcmp and bzero prototypes explicitly `extern'.
6920 Add a prototype for getenv.
6921
c9b4de06
JW
6922Sun Feb 15 17:05:41 1998 Jim Wilson <wilson@cygnus.com>
6923
6924 * mips/mips.h (INITIAL_ELIMINATION_OFFSET): Readd Jun 6 change.
6925
9f8f10de
JC
6926Sun Feb 15 15:23:15 1998 John Carr <jfc@mit.edu>
6927
6928 * alias.c: Include <stdlib.h> and <string.h>.
6929 (init_alias_analysis): Pass NULL_RTX instead of 0 to record_set.
6930
d757d141
JL
6931Sat Feb 14 11:23:09 PST 1998 Jeff Law (law@cygnus.com)
6932
6933 * version.c: Bump for snapshot.
6934
7a0a1f09
RE
6935Sat Feb 14 05:08:21 1998 Richard Earnshaw (rearnsha@arm.com)
6936
6937 * arm.md (movsfcc): Also validate operands[3] when compiling hard
6938 float.
6939 (movdfcc): Only accept fpu_add_operand for operands[3].
6940
99e90438
RE
6941 * arm/t-semi (STMP_FIXPROTO): Define to nothing.
6942 * arm/t-semiaof (STMP_FIXPROTO): Likewise.
6943
29a82058
JL
6944Sat Feb 14 02:02:41 1998 Jeffrey A Law (law@cygnus.com)
6945
6946 * varasm.c (output_constant_pool): Bring back 'done' label inside
6947 an appropriate #ifdef.
6948
b57062ca 6949 * bitmap.c (bitmap_element_allocate): Wrap variable 'i' in an
29a82058
JL
6950 appropriate #ifdef.
6951 (bitmap_copy, bitmap_operation): Likewise.
6952 * combine.c (combinable_i3pat): Similarly for 'src'.
6953 * function.c (fixup_var_refs_1): Similarly for 'outerdest'.
6954 (locate_and_pad_parm): Similarly for 'reg_parm_stack_space'.
6955 * regclass.c (copy_cost): Similarly for 'secondary_class'.
6956 * reload.c (make_memloc): Simliarly for 'i'.
6957 (find_reloads_address_1): Similarly for 'link'.
6958 * reload1.c (reload): Similarly for 'previous_frame_pointer_needed'.
6959 (emit_reload_insns): Similarly for 'second_reloadreg'.
6960 * unroll.c (iteration_info): Similarly for 'v'.
6961
6962 * caller-save.c (insert_save_restore): Remove unused variable 'i'.
6963 * calls.c (expand_call): Similarly for 'i'.
6964 (emit_library_call, emit_library_call_value): Similarly for 'mode'.
6965 * fold-const.c (strip_compund_expr): Similarly for 'type'.
6966 * function.c (fixup_var_refs_1): Similarly for 'width'.
6967 (fixup_memory_subreg): Similarly for 'saved'.
6968 (locate_and_pad_parm): Similarly for 'boundary_in_bytes.'
6969 (setjmp_protect): Similarly for 'sub'.
6970 (thread_prologue_and_epilogue_insns): Similarly for 'insn'.
6971 * loop.c (record_giv): Similarly for 'p'.
6972 (combine_givs): Similarly for 'temp_iv'.
6973 (indirect_jump_in_function_p): Similarly for 'is_indirect_jump'.
6974 * recog.c (validate_replace_rtx_1): Similarly for 'width'.
6975 * tree.c (get_set_constructor_bytes): Similarly for 'vals'.
6976 * unroll.c (unroll_loop): Similarly for 'copy'.
6977 (iteration_info): Similarly for 'b'.
6978 * varasm.c (assemble_string): Similarly for 'i'.
6979 * i386.h (LEGITIMIZE_ADDRESS): Similarly for 'orig_x'.
6980
7d02bbef
JM
69811998-02-13 Martin von Loewis <loewis@informatik.hu-berlin.de>
6982
6983 * c-lang.c (lang_print_xnode): New function.
6984 * objc/objc-act.c (lang_print_xnode): Likewise.
6985 * print-tree.c (print_node): Call it
6986
e3e7774e
JW
6987Fri Feb 13 14:38:34 1998 Jim Wilson <wilson@cygnus.com>
6988
6989 * dwarf2out.c (decl_scope_node): New type.
6990 (decl_scope_table): Change type to use it.
6991 (decl_scope_table_allocated, decl_scope_depth): Change type to int.
6992 (push_decl_scope): Use new type. New locals containing_scope, i.
6993 Add code to handle setting previous field.
6994 (scope_die_for): Change type of local i to int. Add code to use
6995 previous field.
6996 (dwarf2out_init): Use new type.
6997
442f0a30
JM
69981998-02-13 Jason Merrill <jason@yorick.cygnus.com>
6999
7000 * except.c (emit_throw): Lose throw_used.
7001
fcdc0d6e
R
7002Fri Feb 13 20:36:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7003
7004 * sched.c (update_flow_info, REG_WAS_0): Ignore if setting insn
7005 was deleted.
7006 * haifa-sched.c (update_flow_info, REG_WAS_0): Likewise.
7007
b7673cdb
JL
7008Fri Feb 13 12:18:40 1998 Jeffrey A Law (law@cygnus.com)
7009
7010 * genextract.c (main): Fix typo.
7011
9e4767ca 7012Fri Feb 13 08:41:49 1998 Robert Lipe <robertl@dgii.com>
69d4ca36 7013
b57062ca 7014 * c-lang.c (finish_file): Bracket declaration of static_ctors,
69d4ca36
RL
7015 static_dtors.
7016
7017 * calls.c (expand_call): Bracket declaration of 'rtx_before_call',
7018 'old_stack_arg_under_construction'
b57062ca 7019 (emit_library_call): Bracket declaration of 'upper_bound',
69d4ca36
RL
7020 'lower_bound', 'i', 'reg_parm_stack_space'
7021 (emit_library_call_value): Likewise.
b57062ca 7022 (store_one_arg):
69d4ca36
RL
7023
7024 * collect2.c: include <unistd.h> when appropriate.
7025 Bracket declaration of 'exportf' and 'full_real_ld_suffix'.
7026
7027 * emit-rtl.c (prev_cc0_setter): Remove unused variable 'link'.
b57062ca 7028
69d4ca36
RL
7029 * explow.c (plus_constant_for_output_wide): Remove unused variable
7030 'code'.
b57062ca 7031 (memory_address): Remove unused variable 'orig_x'.
69d4ca36
RL
7032
7033 * genattrtab.c (make_canonical): Remove unreferenced label 'cond:'.
7034 (write_const_num_delay_slots): Remove unused variable 'i'.
7035
7036 * genopinit.c (main): Remove unused variables 'dummy', 'insn_ptr'.
7037 (gen_insn): Remove unused variable 'obstack_ptr'.
7038
7039 * libgcc2.c (__bb_exit_func): Remove unused variables 'ret',
7040 'j', 'tmp', 'i'.
7041 (__bb_exit_trace_func): Remove unused variable 'e'.
7042
7043 * optabs.c (expand_binop): remove unused variables 'lhs', 'rhs',
7044 'funexp'.
7045 (expand_unop): Remove unused variable 'funexp'.
b57062ca 7046 (expand_complex_abs): Remove unused variable 'funexp'.
69d4ca36
RL
7047 (init_optabs): Bracket declaration of 'j'.
7048 (init_complex_libfuncs): Deleted. Dead static function.
b57062ca 7049
69d4ca36
RL
7050 * profile.c (branch_prob): Remove unused variables 'insn', 'dest'.
7051
7052 * reg-stack.c: Fix typo in proto for 'get_asm_operand_lengths'
7053 (reg_to_stack): 'initialized', 'before_function_beg'
7054 explictly type as ints instead of defaulting.
7055 (emit_swap_insn): Remove unused variable 'i2'.
7056 (compare_for_stack_reg): Remove unused variable 'src_note'.
7057
7058 * rtlanal.c (computed_jump_p): Remove unused variable 'computed_jump'.
7059
7060 * sched.c (actual_hazard): Bracket declaration of 'this_cost'.
7061
7062 * stmt.c (add_case_node): Add parens for assignment used as truth.
7063 (all_cases_count): Remove unused variable 'count_high'.
7064 (mark_seen_cases): Remove unused variable 'i'.
7065 (check_for_full_enumeration_handling): Remove unused variable 't'.
7066 Bracket declaration of 'all_values', 'l'.
b57062ca 7067
69d4ca36
RL
7068 * tlink.c: Include <stdlib.h>, <unistd.h>, <string.h>/<strings.h>.
7069
b57062ca
UD
7070 * varasm.c (assemble_string): Remove unused variable 'i'.
7071 (immed_double_const): Remove unused variable 'in_current_obstack'.
69d4ca36
RL
7072 (immed_real_const_1): Likewise.
7073 (output_constant_pool): Remove unreferenced label 'done'.
7074 (output_constant): Remove unused variable 'x'.
b57062ca 7075
69d4ca36
RL
7076 * i386/i386.h (ENCODE_SECTION_INFO): TREE_PUBLIC is an int, not
7077 a string.
7078
7079 * i386/sco5.h (ASM_OUTPUT_ASCII): Add parens for assignment used
7080 as truth.
7081
e3258cef
R
7082Fri Feb 13 10:21:41 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7083
7084 * combine.c (can_combine_p): Handle USEs in PARALLELs.
7085
1398405b
L
7086Fri Feb 13 01:34:14 1998 H.J. Lu (hjl@gnu.org)
7087
7088 * config/linux.h (LIB_SPEC): Add -lc for -shared if
7089 USE_GNULIBC_1 is not defined.
7090 * config/sparc/linux.h; Ditto.
7091
7092 * config/sparc/linux64.h (LIB_SPEC): Add -lc for -shared.
7093
7094 * config/alpha/linux-elf.h (LIB_SPEC): New. Defined if
7095 USE_GNULIBC_1 is not defined.
7096
03453a9f
FS
7097Fri Feb 13 01:29:29 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
7098
7099 * rs6000/sysv4.h (ENDFILE_SPEC): add missing %(endfile_linux)
7100 for -mcall-linux
7101
aca69483 7102Fri Feb 13 01:23:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 7103
aca69483
KG
7104 * system.h: New file to get common systems includes and various
7105 definitions and declarations based on autoconf macros.
7106
5e0e0f03
JL
7107Fri Feb 13 00:46:19 1998 Jeffrey A Law (law@cygnus.com)
7108
7109 * cccp.c (new_include_prefix): Correctly handle -I./.
7110
89e9f3a8
MM
7111Thu Feb 12 20:16:35 1998 Michael Meissner <meissner@cygnus.com>
7112
7113 * rs6000.md: Replace gen_rtx (CONST_INT,...) with GEN_INT.
7114
8bd6ecc2 7115Thu Feb 12 16:45:17 1998 Robert Lipe <robertl@dgii.com>
89e9f3a8 7116
b57062ca 7117 * expr.c (expand_assignment): Correct typo exposed by -Wall.
8bd6ecc2
RL
7118 offset should have been a truth value, not an assignment.
7119
614bb5d4
JL
7120Thu Feb 12 15:26:50 1998 Jeffrey A Law (law@cygnus.com)
7121
7122 * cse.c (delete_dead_from_cse): If a libcall produces a constant
7123 result and that result can be substituted into SET_SRC of the
7124 insn with the REG_RETVAL note, then perform the substitution
7125 and delete the libcall.
7126
00bb4b62
GK
7127Thu Feb 12 14:04:09 1998 Gavin Koch <gavin@cygnus.com>
7128
b57062ca 7129 * mips.md (trucndihi2,truncdiqi2): Change these to support
00bb4b62
GK
7130 mips16.
7131
3871c609
GK
7132Thu Feb 12 11:34:55 1998 Gavin Koch <gavin@cygnus.com>
7133
7134 * mips/mips.c (movdi_operand): Direct referances to symbols
7135 that arn't mips16 consts in mips16 mode arn't valid operands.
7136
7137 * mips/mips.c (mips_move_2words): Add gprel handling.
7138
2e72fa6a
GK
7139Thu Feb 12 11:18:37 1998 Gavin Koch <gavin@cygnus.com>
7140
b57062ca 7141 * mips.md (extendsidi2): Allow extension to/from a non-mips16
2e72fa6a
GK
7142 register.
7143
a4910340
ML
7144Thu Feb 12 00:04:16 1998 Marc Lehmann <pcg@goof.com>
7145
7146 * i386.c: Conditionally include <stdlib.h>, <string.h>, and
7147 <strings.h>.
7148
cc1e5b9a
KG
7149Wed Feb 11 11:43:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7150
7151 * Makefile.in (WARN_CFLAGS): New variable.
7152 (bootstrap, bootstrap2, bootstrap3, bootstrap4): Use it.
7153
53949fac
MM
71541998-02-11 Mark Mitchell <mmitchell@usa.net>
7155
7156 * config/i386/i386.c (reg_mentioned_in_mem): Don't abort when
7157 falling through default case in switch.
7158 (i386_aligned_p): Likewise.
7159
9504c31c
LI
7160Wed Feb 11 12:59:56 1998 Lee Iverson <leei@Canada.AI.SRI.COM>
7161
7162 * mips/mips.h (mips_abi_string): Correct typo in comment.
7163
7e4e0956
GK
7164Wed Feb 11 08:29:56 1998 Gavin Koch <gavin@cygnus.com>
7165
7166 * mips/mips.md (movdi): These PLUS's need to be Pmode.
7167
8fb3ae15
KG
7168Wed Feb 11 01:47:54 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7169
7170 * Makefile.in (dwarf2out.o, emit-rtl.o, jump.o, cse.o, unroll.o,
7171 reorg.o, regmove.o): Depend on insn-codes.h, it gets included
7172 indirectly via expr.h.
7173
a2d53b28
RH
7174Wed Feb 11 01:44:13 1998 Richard Henderson <rth@cygnus.com>
7175
7176 * stor-layout.c (layout_type): Do upper - lower in the native type,
7177 so as to properly handle negative indices.
7178
381127e8
RL
7179Wed Feb 11 01:35:55 1998 Robert Lipe <robertl@dgii.com>
7180
7181 * except.c (start_dynamic_cleanup): Remove unused variable 'dhc'.
7182 (expand_eh_region_start_tree): Remove unused variable 'note'.
7183 (exception_optimize): Remove unused variable 'regions'.
7184 (expand_builtin_eh_stub): Remove unused variable 'temp'.
7185 (copy_eh_entry): Deleted. Dead function.
7186
b57062ca 7187 * expr.c (move_block_to_reg) Bracket declaration of 'pat' and
381127e8
RL
7188 'last' with same #if HAVE_load_multiple as use of it.
7189 (move_block_from_reg): Likewise.
7190 (emit_move_insn_1): Remove unused variable 'insns'.
b57062ca
UD
7191 (store_constructor): Bracket declaration of startb, endb with
7192 #if TARGET_MEMFUNCTIONS. Remove unused variables 'set_word_size'
381127e8 7193 'target', and 'xtarget'.
b57062ca 7194 (expand_builtin_setjmp): Remove unused variables 'op0',
381127e8 7195 'next_arg_reg', 'old_inhibit_defer_pop'.
b57062ca 7196 (expand_builtin): Remove unused variable 'offset'.
381127e8
RL
7197 (do_store_flag): Remove unused variables 'pattern', 'jump_pat'.
7198 (emit_queue): Add parens for assignment used as conditional.
7199 (expand_expr): case TARGET_EXPR: Remove unused variable 'temp'.
7200
00c79232
ML
7201Wed Feb 11 01:30:49 1998 Marc Lehmann <pcg@goof.com>
7202
b57062ca 7203 * i386.c: Added include for recog.h.
00c79232
ML
7204 (override_options): Removed unused variable p. Initialized regno to
7205 avoid warning.
7206 (order_regs_for_local_alloc): Initialized regno to avoid warning.
7207 (legitimize_address): Likewise for 'other'.
7208 (i386_aligned_reg_p): Added default case with abort ().
7209 (print_operand): Likewise.
7210 (reg_mentioned_in_mem): Likewise.
7211 (ix86_expand_binary_operator): Removed unused variables i & insn.
7212 (ix86_expand_unary_operator): Removed unused variable insn.
7213 (output_fp_cc0_set): Removed unused variable unordered_label.
7214
f64cecad
JC
7215Wed Feb 11 01:23:03 1998 John F. Carr <jfc@mit.edu>
7216
7217 * i386.c, i386.h, i386.md: Change gen_rtx (X, ...) to gen_rtx_X (...).
7218 Use GEN_INT instead of gen_rtx (CONST_INT). Make printf arguments
7219 and format string match.
7220
0200b5ed
JL
7221Wed Feb 11 01:17:39 1998 Jeffrey A Law (law@cygnus.com)
7222
7223 * flow.c (life_analysis): Do not conside the stack pointer live at
7224 the end of a function if the fucntio ncalls alloca.
7225 (mark_used_regs): Similarly.
7226
74ccf2c2
JC
72271998-02-10 John F Carr <jfc@mit.edu>
7228
7229 * config/sparc/sparc.md (movdi_v8plus): Output stx on alternative
7230 1, fzero on alternative 8.
7231
60e2d0ca
RK
7232Tue Feb 10 09:02:19 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7233
7234 * rs6000.c (setup_incoming_varargs): Always set rs6000_sysv_varargs_p.
7235
2fd0af53
R
7236Tue Feb 10 03:35:43 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7237
7238 * reload.c (find_reloads_toplev): Handle arbitrary non-paradoxical
7239 SUBREGs of CONST_INTs.
7240
a96c3544
JC
7241Mon Feb 9 17:52:36 1998 John Carr <jfc@mit.edu>
7242
7243 * mips.c (print_operand, function_prologue): Make printf format
7244 match argument type.
7245
2514cbc9
KG
7246Mon Feb 9 02:37:25 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7247
7248 * alpha.c (alpha_return_addr): Remove unused variable `first'.
7249 (alpha_ra_ever_killed): Remove unused variables `ra' and `i'.
7250 (output_epilog): Remove unused variable `frame_size_from_reg_save'.
7251
72b0c616
RK
7252Sun Feb 8 14:56:03 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
7253
7254 * loop.c (strength_reduce): When placing increment for auto-inc
7255 case, do comparison in loop order.
b57062ca 7256
2e0dd623
JC
7257Sun Feb 8 13:21:38 1998 John Carr <jfc@mit.edu>
7258
7259 * bitmap.c (bitmap_debug_file): HOST_PTR_PRINTF converts a pointer,
7260 not a HOST_WIDE_INT.
7261
7262 * calls.c (expand_call): Change test of expand_inline_function
7263 return value to stop compiler warning.
7264
7265 * genattrtab.c (RTL_HASH): Cast pointer to long, not HOST_WIDE_INT.
7266
7bf825d2
JW
7267Sun Feb 8 12:04:24 1998 Jim Wilson (wilson@cygnus.com)
7268 Jeff Law (law@cygnus.com)
7269
7270 * regmove.c: Fix various minor formatting problems.
7271 (optimize_reg_copy_1): Stop search at CALL_INSNs if flag_exceptions
7272 is true. Make end of basic block tests consistent through regmove.c.
7273 (optimize_reg_copy_2, optimize_reg_copy_3): Likewise.
7274 (fixup_match_2, fixup_match_1, regmove_optimize): Likewise.
7275
7d4679ea
KG
7276Sun Feb 8 01:49:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7277
7278 * gansidecl.h: Check for a conflicting macro definition before
7279 attempting to prototype bcopy, bcmp or bzero.
7280
b515ab3d
JL
7281Sun Feb 8 00:09:59 1998 Jeffrey A Law (law@cygnus.com)
7282
060fbabf
JL
7283 * expr.c (clear_pending_stack_adjust): Handle case where a function
7284 calls alloca, but the user has specified -fomit-fframe-pointer.
7285
b515ab3d
JL
7286 * function.c (assign_parms): Fix typo in last change.
7287
ccd043a9
RL
7288Sat Feb 7 23:54:29 1998 Robert Lipe <robertl@dgii.com>
7289
ededb2fc
RL
7290 * gcc.c: Include <strings.h>/<string.h>, <stdlib.h>, <unistd.h>,
7291 <fcntl.h>.
7292 (free_path_suffix): Remove unreferenced static function.
7293 (process_command): Remove unused variable temp.
7294 (default_arg): Remove unused variable i.
7295 (do_spec_1): Add parens for assignment used as truth value.
7296 (main): Likewise.
7297 (validate_all_switches): Likewise.
7298 (main): Remove unused variables i, first_time>
7299
ccd043a9
RL
7300 * c-common.c: Include <stdlib.h> and <string.h>/<strings.h>.
7301
7302 * calls.c (expand_call): Remove unused variables funtree,
7303 n_regs, and tmpmode.
7304
7305 * dbxout.c, except.c: Include <string.h>/<strings.h>.
7306
7307 * explow.c: (plus_constant_for_output_wide) Removed unused
7308 variable all_constant.
7309
7310 * c-decl.c, genattr.c, genattrtab.c, getconfig.c, genemit.c
7311 genextract.c, genflags.c, genopinit.c genoutput.c, genpeep.c,
7312 genrecog.c, global.c, integrate.c , stupid.c : Include
7313 <stdlib.h>.
7314
7315 * genextract.c: (walk_rtx) Remove unused variable link.
7316
7317 * genrecog.c: (concat) Remove unreferenced static function.
7318
7319 * prefix.c: Include <string.h>/<strings.h>, <stdlib.h>
7320
b57062ca
UD
7321 * stmt.c: Include <stdlib.h>.
7322 (expand_asm_operands): Remove unused variable val1.
ccd043a9
RL
7323 (expand_return): Remove unused variable block.
7324 (pushcase): Remove unused variables l and n.
7325 (pushcaserange): Likewise.
7326
7327 * unroll.c (unroll_loop): Remove unused variable temp.
7328
6553db01
GM
7329Sat Feb 7 23:46:09 1998 Greg McGary <gkm@gnu.org>
7330
7331 * c-decl.c (pushdecl): Set DECL_ORIGINAL_TYPE once only.
7332
8479e1db
KG
7333Sat Feb 7 15:11:28 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7334
7335 * aclocal.m4 (GCC_FUNC_PRINTF_PTR): New macro to test the printf
7336 functions for whether they support the %p format specifier.
7337 * acconfig.h (HOST_PTR_PRINTF): Insert stub for autoconf.
7338 * configure.in (GCC_FUNC_PRINTF_PTR): Use it.
7339 * configure, config.in: Rebuild.
7340
bf9c83fe
JW
7341Fri Feb 6 14:20:16 1998 Jim Wilson <wilson@cygnus.com>
7342
7343 * function.c (assign_parms): New variable named_arg, with value
7344 depending on STRICT_ARGUMENT_NAMING. Use instead of ! last_named.
7345
09e4daf5
GK
7346Fri Feb 6 14:34:28 1998 Gavin Koch <gavin@cygnus.com>
7347
b57062ca 7348 * mips/t-r3900: New - same as t-ecoff but eliminate
09e4daf5
GK
7349 multilibs: mips1 and mips3.
7350 * configure.in (tx39*): Use new mips/t-r3900.
7351 * configure: Rebuild.
7352 * mips/r3900.h (MULTILIB_DEFAULTS): Eliminate mips1.
7353
b57d9225
JM
73541998-02-06 Jason Merrill <jason@yorick.cygnus.com>
7355
7356 * dwarf2out.c: Add old_args_size.
7357 (dwarf2out_args_size): Use it.
7358 (dwarf2out_begin_prologue): Initialize it.
7359 (dwarf2out_stack_adjust): If !asynchronous_exceptions, save up
7360 pushed args until we see a call.
7361 * final.c (final_scan_insn): Hand CALL_INSNs off to the dwarf2 code
7362 before outputting them.
7363
73641998-02-06 Kriang Lerdsuwanakij <lerdsuwa@scf.usc.edu>
7365
7366 * cplus-dem.c (demangle_template_template_parm): New function.
7367 (demangle_template): Handle template template parameters.
7368
259620a8
MM
73691998-02-02 Mark Mitchell <mmitchell@usa.net>
7370
7371 * calls.c (expand_call): Don't confuse member functions named
7372 realloc, setjmp, and so forth with the standard library
7373 functions of the same names.
7374
78418280
JL
7375Thu Feb 5 21:59:49 1998 Jeffrey A Law (law@cygnus.com)
7376
7377 * stmt.c (expand_asm_operands): Correctly identify asm statements
94e5565f 7378 no output operands.
78418280 7379
6d819282 7380Thu Feb 5 21:56:06 1998 Mumit Khan <khan@xraylith.wisc.edu>
b57062ca 7381
6d819282
MK
7382 * c-common.c (decl_attributes): Flag unrecognized attribute
7383 functions as warnings instead of as errors.
7384
aec98e42
ML
73851998-02-05 Marc Lehmann <pcg@goof.com>
7386
7387 * integrate.c (INTEGRATE_THRESHOLD): Inline only small functions
7388 when -Os is specified.
7389 * toplev.c (main): Don't disable flag_inline_functions anymore when
7390 -Os is in effect.
7391
1230327b
R
7392Fri Feb 6 00:27:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7393
7394 * regmove.c: Update.
7395 * flags.h (flag_regmove): Declare.
7396 * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Don't declare.
7397 * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2):
7398 Moved into regmove; changed caller.
7399 * toplev.c (rest_of_compilation): Call regmove_optimize also for
7400 expensive_optimizations.
7401
1aca1e76
JL
7402Thu Feb 5 13:38:42 PST 1998 Jeff Law (law@cygnus.com)
7403
7404 * version.c: Bump for snapshot.
7405
2993ce4c
R
7406Thu Feb 5 01:45:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7407 Undo this change (the problem was actually in reload):
7408 Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7409
7410 * sh.md (movqi_i+1): New peephole.
7411
0340ed6c
JL
7412Tue Feb 3 01:11:12 1998 Jeffrey A Law (law@cygnus.com)
7413
e535528b
JL
7414 * jump.c (jump_optimize): Lose calls to modified_in_p they are
7415 not needed anymore due to changes elsewhere in jump.c.
7416
0340ed6c
JL
7417 * jump.c (jump_optimize): Fix first arg to modified_in_p in
7418 previous change.
7419
6fd1c67b
RH
7420Mon Feb 2 19:18:14 1998 Richard Henderson <rth@cygnus.com>
7421
7422 * expr.c (expand_builtin_setjmp): Accept two new arguments for
7423 the labels to branch to on first and subsequent executions. Don't
7424 play with __dummy. Rename `setjmp' insn to `builtin_setjmp_setup',
7425 and provide it with the jmp_buf. Use only one of
7426 `builtin_setjmp_receiver' or `nonlocal_goto_receiver',
7427 and provide the former with the target label.
7428 (expand_builtin) [BUILTIN_SETJMP]: Generate a label for use by setjmp.
7429 (expand_builtin) [BUILTIN_LONGJMP]: Split out to ...
7430 (expand_builtin_longjmp): ... here. Recognize a `builtin_longjmp'
7431 insn to replace all of the normal nonlocal_goto code. Don't play
7432 with __dummy. Correct arguments to nonlocal_goto.
7433 * expr.h (expand_builtin_setjmp): Update prototype.
7434 * except.c (start_dynamic_handler): When using builtin_setjmp,
7435 generate more accurate flow information.
7436
7437 * alpha.md (nonlocal_goto_receiver_osf): Delete.
7438 (nonlocal_goto_receiver_vms): Rename to nonlocal_goto_receiver.
7439 (builtin_longjmp, builtin_setjmp_receiver): New.
7440 * sparc.md (update_return): Disambiguate unspec number.
7441 (nonlocal_goto): Rearrange arguments to match caller in except.c.
7442 (builtin_setjmp_setup): Rename from setjmp. Match and ignore the
7443 jmp_buf operand.
7444 * mips.md (nonlocal_goto_receiver, builtin_setjmp_receiver): Remove.
7445 (builtin_setjmp_setup*, builtin_longjmp): New.
7446
95936d18
JC
7447Mon Feb 2 16:43:10 1998 John Carr <jfc@mit.edu>
7448
7449 * mips.md: Change gen_rtx (CONST_INT) to GEN_INT.
7450
c120c689
JW
7451Mon Feb 2 13:06:47 1998 Jim Wilson <wilson@cygnus.com>
7452
7453 * vmsconfig.com: Remove bytecode references.
7454
1a56b81f
AS
74551998-01-30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
7456
91193900
AS
7457 * dwarf2out.c (dwarf2out_frame_init): Undo last change, so that
7458 -fno-sjlj-exceptions works for a target that defines
7459 DWARF2_UNWIND_INFO as zero.
7460
1a56b81f
AS
7461 * regmove.c (fixup_match_1): Undo last change which removed some
7462 "useless" code, and add a comment explaining this.
7463
e4b3de45
GK
7464Mon Feb 2 10:47:14 1998 Gavin Koch (gavin@cygnus.com)
7465
7466 * mips.c (mips_expand_prologue): Change uses of TARGET_64BIT
7467 to TARGET_LONG64.
7468
2aabb736
KK
7469Mon Feb 2 10:38:41 1998 Klaus Kaempf <kkaempf@progis.de>
7470
7471 * makefile.vms: Remove bytecode references.
7472 Create genrtl files.
7473
7457661d
MH
7474Mon Feb 2 02:08:04 1998 Michael P. Hayes <michaelh@ongaonga.chch.cri.nz>
7475
7476 * jump.c (jump_optimize): Allow conditional loading of floating point
7477 constants and constants from memory. Reinstalled modified_in_p tests.
7478
460f50dc
R
7479Mon Feb 2 01:38:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7480
7481 * loop.c (get_condition): Handle sign-extended constants.
7482
7a6df7f9
HPN
7483Mon Feb 2 01:22:46 1998 Hans-Peter Nilsson <hp@axis.se>
7484
db771a3c
HPN
7485 * expr.c (emit_push_insn): Add code to use movstrti if present.
7486
7a6df7f9
HPN
7487 * expr.c (emit_push_insn): Use same max-move-amount for movstrhi
7488 and movstrqi as in emit_block_move ().
7489
ceb6edf2
TM
7490Mon Feb 2 00:09:52 1998 Toon Moene <toon@moene.indiv.nluug.nl>
7491
7492 * config/m68k/x-next: Remove /NextDeveloper/Headers from
7493 the directories to fixinclude - /usr/include is a link
7494 to it and hence its contents are fixed by default.
7495
9cddeb31
FS
7496Sun Feb 1 14:15:33 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
7497
7498 * rs6000/linux.h: define JUMP_TABLES_IN_TEXT_SECTION
7499
d2f05a0a
KK
7500Sun Feb 1 13:01:15 1998 Klaus Kaempf <kkaempf@progis.de>
7501
7502 * cccp.c (main): Predefine __VMS_VER on VMS.
7503
f8dac6eb
R
7504Sun Feb 1 12:39:53 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7505
7506 * expr.c (get_inner_reference): Use sbitsizetype for type sizes.
7507 * fold-const.c (size_int): Replace with
7508 (size_int_wide).
7509 (make_bit_field_ref): Use bitsize_int for bit position.
7510 * stor-layout.c (sizetype): Delete.
7511 (sizetype_tab, sbitsizetype, ubitsizetype): Declare.
7512 (layout_record, layout_union, layout_type):
7513 Use bitsize_int for bit size.
7514 (set_sizetype): New function.
7515 (make_signed_type, make_unsigned_type): Use it.
7516 * c-decl.c (init_decl_processing): Likewise.
7517 * tree.h (size_int): Don't delcare, #define.
7518 (size_int_wide, sizetype_tab, sbitsize, ubitsize): Declare.
7519 (set_sizetype): Declare.
7520 (bitsize_int, size_int_2, BITS_PER_UNIT_LOG, sizetype, bitsizetype):
7521 Define.
7522 * c-typeck.c (c_sizeof, c_sizeof_nowarn, c_size_in_bytes):
7523 Convert result to sizetype.
7524 (really_start_incremental_init, push_init_level):
7525 Set type of constructor_bit_index to sbitsizetype.
7526 (push_init_level): Use unsigned arithmetic to determine padding.
7527 (output_init_element): Likewise.
7528
b577a8ff
JL
7529Sun Feb 1 03:32:07 1998 Jeffrey A Law (law@cygnus.com)
7530
7531 * combine.c (simplify_shift_const): Fix typo in last change.
7532
6e0ef100
JC
7533Sun Feb 1 02:50:46 1998 John Carr <jfc@mit.edu>
7534
7535 * combine.c (simplify_shift_const): (lshiftrt (truncate (lshiftrt)))
7536 is (truncate (lshiftrt)).
7537
4208b40f
RH
7538Sun Feb 1 01:06:53 1998 Richard Henderson <rth@cygnus.com>
7539
7540 * alpha.c (alpha_expand_unaligned_load): Use expand_binop properly.
7541 Make sure result winds up in TGT.
7542 (alpha_expand_unaligned_store): Use expand_binop properly. Allow
7543 src to be other than DImode.
7544 (alpha_expand_unaligned_load_words): Tidy. Take an offset argument.
7545 (alpha_expand_unaligned_store_words): Likewise.
7546 (alpha_expand_block_move): Use REGNO_POINTER_ALIGN. Restructure so
7547 that source and destination are separately optimized for alignment.
7548 (alpha_expand_block_clear): Use REGNO_POINTER_ALIGN.
7549
82301b88
JL
7550Sun Feb 1 01:55:09 1998 Jeffrey A Law (law@cygnus.com)
7551
7552 * mips.md (adddi3_internal_2): Be consistent with adddi3 expander
7553 with handling of -32768.
7554
a81fb89e
KG
7555Sun Feb 1 01:48:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7556
7557 * aclocal.m4 (GCC_NEED_DECLARATION): Modify macro to accept a
7558 shell variable argument instead of only hard coded functions.
7559 (GCC_NEED_DECLARATIONS): New macro to accept multiple functions.
7560
7561 * configure.in: Collapse multiple calls to AC_CHECK_FUNCS into one
7562 call. Collapse multiple calls to GCC_NEED_DECLARATION into one
7563 call to GCC_NEED_DECLARATIONS (new macro.) Check if we need
7564 declarations for bcopy, bcmp and bzero.
7565
7566 * acconfig.h: Add stubs for bcopy, bcmp and bzero declarations.
7567
7568 * gansidecl.h: If we have bcopy but don't declare it, then do so.
7569 Likewise for bcmp and bzero. Only define macros for bcopy, bcmp,
7570 bzero, index and rindex if they aren't already present.
7571
eed90b2c
JL
7572Sat Jan 31 11:26:58 1998 Jeffrey A Law (law@cygnus.com)
7573
b57062ca 7574 * toplev.c (close_dump_file): Wrap function prototype for
eed90b2c
JL
7575 argument "func" in PROTO.
7576 (dump_rtl): Likewise.
7577
bfd6bc60
JC
7578Fri Jan 30 22:30:39 1998 John Carr <jfc@mit.edu>
7579
7580 * sparc.c (sparc_override_options): Make v8plus and ultrasparc set
7581 MASK_V8PLUS.
7582 (output_function_epilogue): Omit epilogue if nothing drops through.
7583 (output_move_double): Supress int ldd usage on ultrasparc and v9.
7584 (registers_ok_for_ldd_peep): Likewise.
7585 (print_operand): Supress b,a on ultrasparc. Let Y accept a constant.
7586 (ultrasparc_adjust_cost): New function.
7587 (sparc_issue_rate): New function.
7588 * sparc.h (MASK_VIS, TARGET_VIS): New
7589 (MASK_V8PLUS, TARGET_V8PLUS): New.
7590 (TARGET_HARD_MUL32, TARGET_HARD_MUL): New.
7591 (TARGET_SWITCHES): Add vis and v8plus.
7592 (REG_CLASS_FROM_LETTER): Accept d and b for VIS.
7593 (REGISTER_MOVE_COST): FP<->INT move cost 12 for ultrasparc.
7594 (RTX_COSTS): Use TARGET_HARD_MUL
7595 (ADJUST_COST): Call ultrasparc_adjust_cost.
7596 (ISSUE_RATE): New.
7597 * sparc.md (attr type): Add sload, fpmove, fpcmove. Adjust users
7598 of load & fp appropritely.
7599 (supersparc function units): Adjust for Haifa.
7600 (ultrasparc function units): Likewise.
7601 (get_pc_via_rdpc): All v9, not just arch64.
7602 (movdi_v8plus, movdi_v8plus+1): New.
7603 (adddi3_sp32+1): New.
7604 (subdi3_sp32+1): New.
7605 (movsi_insn, movsf_const_insn, movdf_const_insn): Know VIS.
7606 (addsi3, subsi3, anddi3_sp32, andsi3, and_not_di_sp32): Likewise.
7607 (and_not_si, iordi3_sp32, iorsi3, or_not_di_sp32, or_not_si): Likewise.
7608 (xorsi3_sp32, xorsi3, xor_not_di_sp32, xor_not_si): Likewise.
7609 (one_cmpldi2_sp32, one_cmplsi2): Likewise.
7610 (ldd peepholes): Suppress for v9.
7611 (return_adddi): Kill redundant test. Arg1 may be arith_operand.
7612 (return_subsi): Revmove.
7613
4b526a9a
JC
7614Fri Jan 30 18:30:03 1998 John F Carr <jfc@mit.edu>
7615
7616 * mips.c (save_restore_insns): Set RTX_UNCHANGING_P in register
7617 save/restore MEM rtl.
7618
64a438d6
JL
7619Fri Jan 30 09:08:16 1998 Jeffrey A Law (law@cygnus.com)
7620
7621 * configure.in: Check for declaration of abort.
9c893359 7622 * acconfig.h: Corresponding changes.
64a438d6
JL
7623 * toplev.c: Use NEED_DECLARATION_ABORT to determine if abort should
7624 be declared.
7625
f266c82f
JL
7626Thu Jan 29 20:26:12 1998 Jeffrey A Law (law@cygnus.com)
7627
7628 * genattrtab.c (optimize): Define in case PRESERVE_DEATH_INFO_REGNO_P
7629 uses it.
7630
31fa4410
JL
7631Thu Jan 29 09:27:56 PST 1998 Jeff Law (law@cygnus.com)
7632
7633 * version.c: Bump for snapshot.
7634
0ee31ab1
JL
7635Thu Jan 29 10:12:27 1998 Jeffrey A Law (law@cygnus.com)
7636
7637 * configure.in: Check for atoq and atoll.
7638 * rtl.c (read_rtx): Use HAVE_ATOLL and HAVE_ATOQ to select the
7639 proper routine for converting ascii into long long values.
7640
eeeb91c5
KK
7641Thu Jan 29 01:28:14 1998 Klaus Kaempf <kkaempf@progis.de>
7642
9d21ee77
KK
7643 * cccp.c (SYS$SEARCH, SYS$PARSE): Write as upper-case.
7644
7645 * vmsconfig.com: Remove bytecode references.
7646
7647 * alpha/vms.h (PREFIX): Define.
7648
7649 * alpha/vms.h (ASM_OUTPUT_ALIGNED_COMMON): Remove.
7650
eeeb91c5
KK
7651 * am-alpha.h: Don't include alloca for OPEN_VMS.
7652
7653 * alpha/xm-vms.h (HAVE_CPP_STRINGIFY): Define.
7654
7655 * alpha/xm-vms.h (INCLUDE_DEFAULTS): Define.
7656 (GCC_INCLUDE_DIR): Define
7657
7658 * make-cc.com, make-cccp.com, make-cc1.com: Removed.
7659 * makefile.vms: New file.
7660
7661 * alpha/vms.h (CPP_PREDEFINES): Remove -Dalpha.
7662
7663 * alpha.c (output_prolog): Output '.name' directive
7664 for minimal traceback information.
7665
7666 * alpha.c (output_prolog): Don't prepend entry point symbols
7667 with '$' on OPEN_VMS.
7668
76d31c63
JL
7669Thu Jan 29 00:25:35 1998 David S. Miller <davem@tanya.rutgers.edu>
7670 Jeffrey A Law (law@cygnus.com)
7671
7672 * rtl.c (read_rtx): Use atol/atoq based upon disposition of
7673 HOST_WIDE_INT.
7674
7675 * genattrtab.c (write_test_expr): Use HOST_WIDE_INT_PRINT_DEC
7676 as needed.
7677 * genemit.c (gen_exp): Likewise.
7678 * genpeep.c (match_rtx): Likewise.
7679 * genrecog.c (write_tree_1): Likewise.
7680
7681 * c-lex.c (yyprint): Use proper format string based upon
7682 disposition of HOST_BITS_PER_WIDE_INT.
7683 (yylex): Put casts in right place for args to build_int_2.
7684
7685Thu Jan 29 00:24:29 1998 Jeffrey A Law (law@cygnus.com)
7686
7687 * combine.c: Fix typos in Jan27 changes.
7688
1b7555bd
OR
7689Thu Jan 29 00:07:49 1998 Ollivier Robert <roberto@keltia.freenix.fr>
7690
7691 * i386/freebsd.h (LIB_SPEC): Correctly handle -shared, -p and friends.
7692 (LINK_SPEC): Likewise.
7693 (STARTFILE_SPEC): Likewise.
7694
21ca87b8
MS
76951998-01-28 Mike Stump <mrs@wrs.com>
7696
7697 * rtlanal.c (dead_or_set_regno_p): Ignore REG_DEAD notes after
7698 reload completes.
7699 * genattrtab.c (reload_completed): Define.
7700
7701 * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Remove obsolete
7702 comments.
7703
d2c92f5a
R
7704Wed Jan 28 20:11:06 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7705
7706 * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
7707 SUBREG_REG if the word count is unchanged, also in the input reload
7708 case. Disable non-applicable sanity checks.
7709
90ad3ab7
JL
7710Wed Jan 28 20:08:26 1998 Jeffrey A Law (law@cygnus.com)
7711
7712 * config/t-svr4 (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
7713
7fad712c
ILT
7714Wed Jan 28 20:04:43 1998 Ian Lance Taylor <ian@cygnus.com>
7715
7716 * i386/t-cygwin32 (LIMITS_H_TEST, LIBGCC2_INCLUDES): Define.
7717
2290e0ec
PB
7718Wed Jan 28 11:45:27 1998 Per Bothner <bothner@cygnus.com>
7719
1aea01ea
PB
7720 * dbxout.c (dbxout_type): For a RECORD_TYPE, check that TYPE_BINFO
7721 is a TREE_VEC before trying to use it for baseclasses.
7722 (Chill uses the same field for a different purpose.)
7723
2290e0ec
PB
7724 * toplev.c (strip_off_ending): Generalize to endings up to 5 chars.
7725
16980900
LT
7726Tue Jan 27 23:15:55 1998 Lassi A. Tuura <lat@iki.fi>
7727
4c46bad0 7728 * config.sub: More accurate determination of HP processor types.
16980900 7729
5e9defae
KG
7730Tue Jan 27 23:11:11 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
7731
7732 * c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>. Add
7733 prototype for `handle_sysv_pragma', and make it static. Add
7734 parentheses around assignment used as truth value.
7735
7736 * combine.c (combine_instructions): Protect variable `prev' with
7737 macro HAVE_cc0.
7738 (can_combine_p): Protect variable `link' with AUTO_INC_DEC.
7739 (extract_left_shift): Add parentheses around operand of &.
7740 (merge_outer_ops): Avoid an empty body in an else-statement.
7741 (gen_rtx_combine): Remove unused variable `i'.
b57062ca 7742
5e9defae
KG
7743 * sparc/gmon-sol2.c: Include <fcntl.h>. Make return type of
7744 function monstartup `void'. Likewise for internal_mcount. Add
7745 `static void' prototype for moncontrol. Reconcile sprintf format
b57062ca 7746 vs. args.
5e9defae
KG
7747
7748 * sparc/sparc.c: Include <stdlib.h> and <string.h>/<strings.h>.
7749 Make return type of function_arg_slotno explicitly `int'.
7750 (reg_unused_after): Add parentheses around assignment used as
7751 truth value.
7752 (save_regs): Add explicit braces to avoid ambiguous `else'.
7753 (function_arg_slotno): Add parentheses around && within ||.
7754 (function_arg_pass_by_reference): Likewise.
7755 (sparc_flat_output_function_prologue): Reconcile fprintf format
7756 vs. args.
7757
7758 * svr4.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around
7759 assignment used as truth value.
7760
7761 * cplus-dem.c: Include <stdlib.h>.
7762 (demangle_signature): Avoid an empty body in an else-statement.
7763 (do_type): Remove unused variable `lvl'.
b57062ca 7764
5e9defae
KG
7765 * cppexp.c: Don't have <stdlib.h> depend on MULTIBYTE_CHARS.
7766 Include <string.h>/<strings.h>.
7767 (cpp_lex): Remove unused variable `namelen'.
7768 (cpp_lex): Explicitly declare `num_chars' as an int.
7769
7770 * cpplib.c: Avoid duplicate inclusion of <stdlib.h>, include
7771 <unistd.h> instead. Explicitly declare is_system_include
7772 returning int.
b57062ca 7773 (make_assertion): Remove unused variable `kt'.
5e9defae
KG
7774 (cpp_expand_to_buffer): Hide variable `obuf'.
7775 (output_line_command): Remove unused variables, `line_end',
7776 `line_cmd_buf' and `len'.
7777 (macarg): Remove unused variable `arg_start'.
7778 (special_symbol): Remove unused variable `i'. Add parentheses
b57062ca 7779 around assignment used as truth value.
5e9defae 7780 (do_include): Remove unused variables `pcfname' and `retried',
b57062ca 7781 hide `pcf' and `pcfbuflimit'.
5e9defae
KG
7782 (do_line): Remove unused variable `i'.
7783 (finclude): Hide variable `missing_newline'.
7784 (cpp_handle_options): Remove unused variable `j'.
7785 (read_token_list): Remove unused variable `eofp'.
7786 (cpp_error_with_line): Remove unused variable `i'.
7787 (cpp_warning_with_line): Likewise.
7788 (cpp_pedwarn_with_line): Explicitly declare `column' as int.
7789 (cpp_error_from_errno): Remove unused variable `i'.
7790
7791 * cse.c (invalidate): Add parentheses around assignment used as
7792 truth value.
7793 (find_best_addr): Move declaration of variable `our_cost' inside
7794 the conditional macro where its used.
7795 (fold_rtx): Avoid an empty body in an if-statement.
7796 (cse_insn): Wrap variables `this_insn_cc0_mode' and
7797 `this_insn_cc0' in macro HAVE_cc0.
b57062ca 7798
5e9defae
KG
7799 * dwarf2out.c: Include <stdlib.h> and <string.h>/<string.h>.
7800 (ASM_OUTPUT_DWARF_DATA8): Reconcile format vs. args in fprintf's.
7801 (output_uleb128): Likewise.
7802 (output_sleb128): Likewise.
7803 (output_cfi): Likewise.
7804 (output_call_frame_info): Remove unused variables `j', `fde_size'
7805 and `fde_pad'.
7806 (comp_unit_has_inlines): Hide declaration as per rest of file.
7807 (size_of_line_prolog): Correct typo in prototype.
7808 (add_arange): Likewise.
7809 (output_aranges): Likewise.
7810 (add_name_and_src_coords_attributes): Likewise.
7811 (gen_array_type_die): Likewise.
7812 (gen_inlined_subroutine_die): Likewise.
7813 (equate_decl_number_to_die): Remove unused variable `i'.
7814 (print_die): Reconcile format vs. args in fprintf's.
7815 (print_dwarf_line_table): Likewise.
7816 (output_die): Likewise.
7817 (output_line_info): Likewise.
7818 (add_subscript_info): Avoid an empty body in an else-statement.
7819 (gen_subprogram_die): Remove unused variable `fp_loc'.
7820
7821 * dwarfout.c: Explicitly declare `next_pubname_number' as int.
7822 Protect `ordering_attribute' prototype with USE_ORDERING_ATTRIBUTE
7823 macro. Protect `src_coords_attribute' prototype with
7824 DWARF_DECL_COORDINATES macro. Hide `output_entry_point_die'
7825 prototype as in the rest of the file. Likewise for
7826 `output_pointer_type_die' and `output_reference_type_die'. Remove
7827 prototype for `type_of_for_scope'.
7828 (output_unsigned_leb128): Reconcile format vs. args in fprintf.
7829 (type_attribute): Add explicit braces to avoid ambiguous `else'.
b57062ca 7830
5e9defae
KG
7831 * final.c: Include <stdlib.h> and <string.h>/<strings.h>.
7832 (shorten_branches): Protect declaration of tmp_length with
7833 SHORTEN_WITH_ADJUST_INSN_LENGTH and ADJUST_INSN_LENGTH macros.
7834 (profile_function): Protect declaration of `sval' and `cxt'
7835 variables with appropriate macros.
7836 (final_scan_insn): Likewise for `note' variable. Add explicit
7837 braces to avoid empty body in an if-statement.
7838 (output_asm_insn): Move variable `i' inside macro conditional
7839 where it is used. Add parentheses around assignment used as truth
7840 value.
7841 (asm_fprintf) Likewise, likewise.
b57062ca 7842
5e9defae
KG
7843 * fix-header.c (main): Remove unused variable `done'. Protect
7844 declaration of `i' with FIXPROTO_IGNORE_LIST.
7845
7846 * pexecute.c: Include <unistd.h>. Prototype `my_strerror'.
7847
7848 * print-rtl.c (print_inline_rtx): Explicitly declare the parameter
7849 `ind'.
7850
7851 * profile.c: Include <string.h>/<strings.h>.
7852 (instrument_arcs): Remove unused variables `note', `inverted',
7853 `zero' and `neg_one'.
7854 (branch_prob): Avoid empty body in an if-statement.
7855
7856 * regclass.c: Include <stdlib.h>.
7857 (reg_alternate_class): Explicitly declare parameter `regno'.
7858
7859 * regmove.c (regmove_optimize): Remove unused variable `p'. Add
7860 parentheses around assignment used as truth value.
7861 (find_matches): Remove unused variables `output_operand' and
7862 `matching_operand'.
7863 (fixup_match_1): Remove statement with no effect: "if (0) ;".
7864
7865 * scan.c (sstring_append): Explicitly declare `count' as int.
7866 (scan_string): Explicitly declare parameter `init' as int.
7867
7868 * sched.c: Include <stdlib.h>.
7869 (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
7870 (rank_for_schedule): Add parentheses around assignment used as
7871 truth value.
7872 (schedule_block): Likewise.
7873 (regno_use_in): Likewise.
7874 (schedule_insns): Remove unused variable `i'.
7875
7876 * toplev.c: Include <stdlib.h> and <string.h>/<strings.h>.
7877 (v_message_with_decl): Remove unused variable `n'.
7878 (botch): Explicitly declare parameter `s' as char *.
7879 (main): Add parentheses around assignment used as truth value.
7880
7881 * tree.c (make_node): Protect the variable `kind' with the
7882 GATHER_STATISTICS macro.
7883 (real_value_from_int_cst): Move variable `e' inside conditional
7884 macro area where it is used.
7885 (tree_last): Add parentheses around assignment used as truth value.
7886 (build1): Protect the variable `kind' with the GATHER_STATISTICS
7887 macro.
7888 (print_obstack_statistics): Reconcile format vs. args in fprintf.
7889 Protect variables `i', `total_nodes', and `total_bytes' with the
7890 GATHER_STATISTICS macro.
7891
4b6bb562
MS
7892Tue Jan 27 23:01:55 1998 Mike Stump (mrs@wrs.com)
7893
7894 * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Add
7895 some comments regarding use of dead_or_set_p.
7896
e95f0195
TV
7897Tue Jan 27 22:14:48 1998 Todd Vierling <tv@pobox.com>
7898
7899 * fixincludes: Tweak fix for struct exception in math.h
7900
c3499f00
GK
7901Tue Jan 27 17:21:09 1998 Gavin Koch (gavin@cygnus.com)
7902
7903 * mips/mips.c (mips_expand_prologue,mips_expand_epilogue):
b57062ca 7904 Change mode of registers used to add/sub from
c3499f00
GK
7905 hard_frame_pointer_rtx from word_mode to Pmode.
7906
01898d58
NC
7907Tue Jan 27 11:02:04 1998 Nick Clifton <nickc@cygnus.com>
7908
6db34dd4
NC
7909 * v850.h (ASM_OUTPUT_ALIGNED_BSS): Use
7910 asm_output_aligned_bss() instead of asm_output_bss().
7911
01898d58
NC
7912 * toplev.c (rest_of_compilation): Replace references to
7913 stack_reg_dump_file and dbr_sched_dump_file with references to
b57062ca 7914 rtl_dump_file.
01898d58 7915
7b6ffd11
KI
7916Tue Jan 27 10:22:13 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
7917
7918 * tlink.c (scan_linker_output): Call fclose() for opened files.
7919
60593797
RH
7920Tue Jan 27 05:05:26 1998 Richard Henderson <rth@cygnus.com>
7921
7922 * alpha.c (output_epilog [!VMS]): Don't tag global functions if
7923 compiling with -fpic -- we want to be able to override symbols
7924 properly.
7925 (alpha_expand_block_move): Fix thinko in last change.
7926
7927 * alpha.h (ASM_OUTPUT_MI_THUNK): New define.
7928 * config/alpha/win-nt.h (ASM_OUTPUT_MI_THUNK): New define.
7929 * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): New undef.
b57062ca 7930
5e4aab97
RH
7931Tue Jan 27 03:21:23 1998 Richard Henderson <rth@cygnus.com>
7932
7933 * alpha.md (abssf, absdf): Revert last change.
7934
69145bcc
JC
7935Tue Jan 27 00:26:50 1998 John Carr <jfc@mit.edu>
7936
7937 * dwarf2out.c (dwarf2out_frame_init): Test value of DWARF2_UNWIND_INFO.
7938 * mips/sni-svr4.h: Define DWARF2_UNWIND_INFO as 0.
7939
4926b75a
JL
7940Tue Jan 27 00:07:02 1998 Jeffrey A Law (law@cygnus.com)
7941
7942 * emit-rtl.c (gen_lowpart_common): Handle more case where converting
7943 a CONST_INT into SFmode.
7944
c6aded7c
AG
7945Tue Jan 20 16:01:03 1998 Anthony Green <green@cygnus.com>
7946
7947 * flags.h: New flag (optimize_size).
7948 * toplev.c (main): Parse -Os option and set optimize_space
7949 accordingly.
b57062ca 7950 * gcc.c (default_compilers), cp/lang-specs.h, f/lang-specs.h: Define
c6aded7c
AG
7951 __OPTIMIZE_SIZE__ when compiling with -Os.
7952 * config/dsp16xx/dsp16xx.h, config/i386/i386.h,
7953 config/i386/dgux.h, config/i960/i960.h, config/pdp11/pdp11.h,
7954 config/v850/v850.h (OPTIMIZATION_OPTIONS): New SIZE argument
7955 to macro.
7956 * config/i386/i386.c (optimization_options): Accept new SIZE argument.
7957
3698f44e
MH
7958Mon Jan 26 23:57:39 1998 Manfred Hollstein <manfred@s-direktnet.de>
7959
7960 * libgcc2.c (__clear_insn_cache): On sysV68 enable the memctl
7961 stuff only if MCT_TEXT is #define'd.
7962
ac8a456a
MO
7963Mon Jan 26 23:52:51 1998 Markus F.X.J. Oberhumer <k3040e4@c210.edvz.uni-linz.ac.at>
7964
7965 * configure.in (i*86-pc-msdosdjgpp): Treat like msdos & go32
7966 configurations.
7967
032713aa
NC
7968Fri Jan 23 09:39:36 1998 Nick Clifton <nickc@cygnus.com>
7969
7970 * toplev.c: Add -dM command line option to dump RTL after the
7971 machine dependent reorganisation pass, if there is one.
7972 Reorganise RTL dump code, so that only one file handle is
b57062ca 7973 needed.
032713aa 7974
ec2be682
BK
7975Mon Jan 26 12:09:42 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
7976
7977 * except.c (check_exception_handler_labels): Disable warning when
7978 flag_syntax_only.
7979
e232b7b3
JW
7980Mon Jan 26 18:17:32 1998 Jim Wilson <wilson@cygnus.com>
7981
7982 * sparc.c (pic_setup_code): Don't set LABEL_PRESERVE_P.
7983
2a851b5c
R
7984Mon Jan 26 18:11:30 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7985
7986 * c-decl.c (grokdeclarator): Get parameter tags from
7987 last_function_parm_tags.
7988 * dwarfout.c (output_formal_types): Set TREE_ASM_WRITTEN before
7989 traversing the parameter types.
7990 (output_type): No early exit for FUNCTION_TYPE / METHOD_TYPE context.
7991
808fbfac
JL
7992Mon Jan 26 01:44:12 1998 Jeffrey A Law (law@cygnus.com)
7993
7994 * h8300.c (print_operand): Handle CONST_DOUBLE for 'e', 'f', and
7995 the default case.
7996 (get_shift_alg): Fix typo.
7997
15389075
RH
7998Sun Jan 25 22:22:04 1998 Richard Henderson <rth@cygnus.com>
7999
8000 * alpha.c (alpha_expand_block_move): Copy ADDRESSOF to reg.
8001
83c8ddef
RH
8002Sun Jan 25 22:14:28 1998 Richard Henderson <rth@cygnus.com>
8003
8004 * toplev.c (get_run_time): Make sure each case gets its variables.
8005
db81d74a
RH
8006Sun Jan 25 22:10:21 1998 Richard Henderson <rth@cygnus.com>
8007
8008 * configure.in (build_xm_file): Add auto-config.h if host=build.
8009 (host_xm_file_list): Don't add $(srcdir) to auto-config.h.
8010 (build_xm_file_list): Likewise.
8011 * configure: Rebuild.
b57062ca 8012
f745c7a2
AB
8013Sun Jan 25 22:00:25 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
8014
8015 * recog.c (validate_replace_rtx_1): Only perform substitutions
8016 of arguments to commutative and comparison operators once.
8017
963f4057
KG
8018Sun Jan 25 12:30:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8019
91a51951
KG
8020 * sparc.c (output_cbranch): Add default case in
8021 enumeration switch.
b57062ca 8022
91a51951
KG
8023 * reorg.c (insn_sets_resource_p): Correct typo in prototype.
8024 (emit_delay_sequence): Eliminate unused parameter, all callers
8025 changed.
8026 (fill_simple_delay_slots): Likewise.
8027 (fill_slots_from_thread): Likewise.
8028 (fill_eager_delay_slots): Likewise.
8029 (mark_referenced_resources): Add default case in enumeration switch.
8030 (mark_set_resources): Likewise.
8031 (rare_destination): Likewise.
8032 (mostly_true_jump): Likewise.
8033 (find_dead_or_set_registers): Likewise.
8034 (redirect_with_delay_slots_safe_p): Remove unused variable `slots'.
8035 (update_reg_unused_notes): Remove unused variable `p'.
8036 (mark_target_live_regs): Remove unused variables `next' and
8037 `jump_count'.
8038 (fill_simple_delay_slots): Remove unused variable `j'.
8039 (fill_slots_from_thread): Add parentheses around assignment used
8040 as truth value.
8041 (dbr_schedule): Likewise.
8042
963f4057
KG
8043 * objc/Make-lang.in (objc.stage1): Depend on stage1-start.
8044 (objc.stage2, objc.stage3, objc.stage4): Likewise.
8045
e82ad93d
MT
8046Sun Jan 25 12:13:47 1998 Michael Tiemann <michael@tiemann.org>
8047
8048 * cse.c (simplify_ternary_operation): Don't try to simplify
8049 IF_THEN_ELSE expressions (created by combine) that don't use
8050 relational operators.
8051
b4b04bf9
JL
8052Fri Jan 23 22:48:24 1998 Jeffrey A Law (law@cygnus.com)
8053
ed1ecb19
JL
8054 * cse.c (simplify_ternary_operation): Handle more IF_THEN_ELSE
8055 simplifications.
8056
b4b04bf9
JL
8057 * crtstuff.c (init_dummy): Keep the epilogue in the init
8058 section for non-ELF systems.
8059
deeef0ac
R
8060Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
8061
8062 * sh.md (movqi_i+1): New peephole.
8063
03566575
JW
8064Fri Jan 23 15:39:42 1998 Jim Wilson <wilson@cygnus.com>
8065
8066 * Makefile.in: Remove remaining bytecode stuff.
8067 * emit-rtl.c, expr.c: Likewise.
8068
eb96c120
NC
8069Fri Jan 23 12:41:10 1998 Nick Clifton (nickc@cygnus.com)
8070
8071 * toplev.c (lang_options): Add unknown-pragma options.
8072
f03204e9
PB
8073Thu Jan 22 23:43:38 1998 Per Bothner <bothner@cygnus.com>
8074
8075 * dwarfout.c (byte_size_attribute): Simplify and fix - don't need
8076 special (and incomplete) handling for Chill arrays.
8077
4e762a38
JC
8078Fri Jan 23 00:27:23 1998 John Carr <jfc@mit.edu>
8079
8080 * toplev.c (get_run_time): Call sysconf(_SC_CLK_TCK), when available,
8081 to get clock rate.
8082
c3499f00 8083Fri Jan 23 00:19:36 1998 Gavin Koch (gavin@cygnus.com)
319f217e
GK
8084
8085 * mips.md (muldi3_internal2): Reverse test for TARGET_MIPS16.
8086
19f673eb
SS
80871998-01-22 scott snyder <snyder@d0sgif.fnal.gov>
8088
8089 * mips.c (function_prologue): Use HARD_FRAME_POINTER_REGNUM in
8090 .frame directive instead of FRAME_POINTER_REGNUM.
8091
74cf1c6d
RK
8092Fri Jan 23 00:08:55 1998 Robin Kirkham <rjk@mlb.dmt.csiro.au>
8093
8094 * m68k.h (TARGET_SWITCHES): -mcpu32 now clears MASK_68881.
8095 (MACHINE_STATE_m68010_up): Replaced __mc68332__ with __mcpu32__.
8096 * m68k/m68k-none.h(CPP_FPU_SPEC): Update relative to TARGET_SWITCHES.
8097 (CPP_SPEC, ASM_SPEC, CC1_SPEC): Likewise.
8098 (CPP_SPEC): -m68332 defines both __mc68332 and __mcpu32__.
8099 * m68k/t-m68kbare (MULTILIB_OPTIONS): Add mcpu32.
8100 (MULTILIB_MATCHES): -m68332 now uses mcpu32 libraries, not m68000.
8101 (MULTILIB_EXCEPTIONS): Don't build 68881 libraries for m68000,
8102 mcpu32 or m5200.
8103 * longlong.h: Replace __mc68332__ with __mcpu32__.
8104
e1402e7d
JL
8105Thu Jan 22 19:55:40 PST 1998 Jeff Law (law@cygnus.com)
8106
8107 * version.c: Bump for snapshot.
8108
6d49a073
JW
8109Thu Jan 22 14:47:31 1998 Jim Wilson <wilson@cygnus.com>
8110
8111 * reload.c (push_reload): In WORD_REGISTER_OPERATIONS code, add test
8112 to require the SUBREG mode to be smaller than the SUBREG_REG mode.
8113 * reload1.c (eliminate_regs): Likewise.
8114
c485e6a0
JL
8115Thu Jan 22 14:49:14 1998 Jeffrey A Law (law@cygnus.com)
8116
8117 * regmove.c (find_matches): Initialize matches->earlyclobber too.
8118
84303d9a
RH
8119Thu Jan 22 01:40:52 1998 Richard Henderson <rth@cygnus.com>
8120
8121 * alpha.md (abssf2, absdf2): Disable in IEEE mode.
8122 (negsf2, negdf2): Use proper subtract in IEEE mode.
8123
b93a436e
JL
8124Tue Jan 20 09:29:09 1998 Jeffrey A Law (law@cygnus.com)
8125
27766f0e
JL
8126 * Makefile.in: Remove more bytecode stuff.
8127 * expr.c, stmt.c, config/msdos/top.sed: Likewise.
8128 * vax/xm-vms.h, winnt/config-nt.sed: Likewise.
8129 * f/install.texi, objc/Make-lang.in: Likewise.
8130
b93a436e
JL
8131 * Makefile.in: Remove all bytecode support.
8132 (OBJS): Make sure last entry is a real object file, not EXTRA_OBJS.
8133 * emit-rtl.c: Remove all bytecode support.
8134 * expr.c, expr.h function.c, integrate.c: Likewise.
8135 * output.h, regclass.c, rtl.h, stmt.c, toplev.c: Likewise.
8136 * tree.h, varasm.c: Likewise.
424e713c
JL
8137 * config/m68k/m68k.h: Likewise.
8138 * bi-*, bc-*, bytecode*: Delete bytecode related files.
c9804136 8139 * modemap.def: Likewise.
b93a436e 8140
7e07e3ba
GK
8141Tue Jan 20 09:02:31 1998 Gavin Koch (gavin@cygnus.com)
8142
8143 * mips/mips.md (divsi3,divdi3,modsi3,moddi3,udivsi3,udivdi3,
8144 umodsi3,umoddi3): Handle mips16 div/mod by a constant.
8145
685885b7
RH
8146Mon Jan 19 21:57:00 1998 Richard Henderson <rth@cygnus.com>
8147
8148 * i386.md (push): Prohibit symbolic constants if flag_pic.
8149 (movsi+1): Likewise for move to non-register.
8150
5830e3a0
JW
8151Mon Jan 19 11:15:38 1998 Jim Wilson <wilson@cygnus.com>
8152
11ea364a
JW
8153 * alpha.c (mode_mask_operand): Accept 0xffffffff on 32 bit host.
8154 (print_operand): Handle 0xffffffff on 32 bit host.
8155
a851212a
JW
8156 * configure.in (thread_file): Rename uses before main loop to
8157 target_thread_file. Initialize to empty in main loop. Set thread_file
8158 to target_thread_file after main loop if not set.
8159 * configure: Rebuild.
8160
5830e3a0
JW
8161 * genattrtab.c (find_and_mark_used_attributes): Handle CONST_INT.
8162 (add_values_to_cover): Revert last change (which had no ChangeLog
8163 entry).
8164 (simplify_with_current_value_aux): Handle CONST_INT.
8165
829e1aaf
AS
8166Mon Jan 19 10:14:55 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
8167
8168 * unprotoize.c: Define UNPROTOIZE first, to actually take effect.
8169
76844337
RH
8170Mon Jan 19 10:11:52 1998 Richard Henderson <rth@cygnus.com>
8171
8172 * configure.in: Add cpp stringify test.
8173 * acconfig.h (HAVE_CPP_STRINGIFY): New tag.
8174 * gengenrtl.c: Use it.
8175 * configure, config.in: Rebuild.
8176
a3f80023
AS
8177Mon Jan 19 09:43:15 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
8178
8179 * Makefile.in (genrtl.c genrtl.h): Add dummy command for GNU make.
8180
c5d0345e
RH
8181Mon Jan 19 09:38:18 1998 Richard Henderson <rth@cygnus.com>
8182
8183 * configure.in: Find declaration for sbrk.
8184 * acconfig.h (NEED_DECLARATION_SBRK): New tag.
8185 * config.in, configure: Rebuild.
8186 * mips-tfile.c: Properly protect declaration of sbrk and free.
8187 * toplev.c: Properly protect declaration of sbrk.
8188
bb02e7ea
RH
8189Sun Jan 18 20:18:01 1998 Richard Henderson <rth@cygnus.com>
8190
8191 * alpha.c (alpha_handle_trap_shadows): Ignore CLOBBERs.
8192
30c2fa75
JL
8193Sun Jan 18 01:54:27 1998 Jeffrey A Law (law@cygnus.com)
8194
8195 * alpha/xm-winnt.h (HAS_INIT_SECTION): Undefine.
8196
a0372c94
MS
8197Sun Jan 18 00:57:35 1998 Mike Stump (mrs@wrs.com)
8198
8199 * configure.in (i960-wrs-vxworks): Default to latest vxworks release.
8200
c9ec4f99
DM
8201Sat Jan 17 23:41:36 1998 David S. Miller <davem@tanya.rutgers.edu>
8202
0e9ff885
DM
8203 * combine.c (force_to_mode, nonzero_bits): Correctly optimize
8204 constant offset computations from objects with known alignment in
8205 the presence of STACK_BIAS.
8206
7bcac048
DM
8207 * varasm.c (immed_double_const): Add casts to HOST_WIDE_INT where
8208 necessary.
8209 (const_hash): Hash val is unsigned long.
8210 (SYMHASH): Likewise.
8211
8212 * tree.c (TYPE_HASH): Type of hash val is unsigned long.
8213
8214 * print-tree.c (print_node_brief): HOST_PTR_PRINTF format wants a
8215 char pointer, not HOST_WIDE_INT.
8216 (print_node): Likewise. Also hash is unsigned long not
8217 HOST_WIDE_INT.
8218
8219 * cse.c (canon_hash): Hash is unsigned long not HOST_WIDE_INT.
8220
c9ec4f99
DM
8221 * explow.c (optimize_save_area_alloca): New function for targets
8222 where SETJMP_VIA_SAVE_AREA is true.
8223 (allocate_dynamic_stack_space): On SETJMP_VIA_SAVE_AREA targets,
8224 compute the amount of stack space needed should we find later that
8225 setjmp is never called by this function, stuff rtl for this inside
8226 a REG_NOTE of the final SET of stack_pointer_rtx.
8227 * toplev.c (rest_of_compilation): If SETJMP_VIA_SAVE_AREA and
8228 current_function_calls_alloca, call optimize_save_area_alloca.
8229
ca097615
JW
8230Sat Jan 17 23:22:59 1998 John Wehle (john@feith.com)
8231
8232 * i386.md: Remove redundant integer push patterns.
8233 Don't bother checking for TARGET_PUSH_MEMORY when
8234 pushing constants or registers.
8235
a3105a89
MK
8236Sat Jan 17 22:35:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
8237 J.J VanderHeijden <J.J.vanderHeijden@student.utwente.nl>
b57062ca 8238
a3105a89
MK
8239 * pexecute.c (pexecute): New function for mingw32. Supports pipes.
8240 (pwait): New function for mingw32.
8241
8242 * gcc.c (execute): Mingw32 pexecute() supports pipes, but cygwin32
8243 pipe support is broken for now.
8244
51549d76
LI
82451998-01-17 Lee Iverson <leei@Canada.AI.SRI.COM>
8246
ffc3503d
JL
8247 * emit_rtl.c (init_emit_once): Ensure that potential aliasing
8248 between frame_pointer_rtx, hard_frame_pointer_rtx, and
8249 arg_pointer_rtx is respected in initialization.
8250 (init_emit_once): Use gen_rtx_raw_REG() to create
8251 return_address_pointer_rtx.
8252
51549d76
LI
8253 * reorg.c: #include "expr.h" for rtx prototypes.
8254 * Makefile.in (reorg.o): Depend on expr.h
8255
b24a815b
PN
8256Sat Jan 17 21:28:08 1998 Pieter Nagel <pnagel@epiuse.co.za>
8257
8258 * Makefile.in (FLAGS_TO_PASS): Pass down gcc_include_dir and
8259 local_prefix to sub-make invocations.
8260
1e7b997a
DM
8261Sat Jan 17 21:24:16 1998 David T. McWherter <dtm@waterw.com>
8262
8263 * objc-parse.c: Recognize protocol qualifiers in class definitions.
8264
340fb41f
JL
8265Sat Jan 17 21:16:19 1998 Jeffrey A Law (law@cygnus.com)
8266
ffc3503d
JL
8267 * rtl.h: Fix typos.
8268
aef28d1d 8269 * acconfig.h (NEED_DECLARATION_ATOL): New declaration to check for.
6885fc87 8270 * configure.in: Check for atol.
aef28d1d
JL
8271 * rtl.c (atol): Only provide the declaration if NEED_DECLARATION_ATOL.
8272
4399e7a3
JL
8273 * rtl.c (read_rtx): Initialize list_rtx to NULL, not NULL_RTX.
8274
72ec635f
JL
8275 * loop.c (find_and_verify_loops): When attempting to move insns from
8276 inside the loop outside the loop, create a BARRIER if no suitable
8277 one was found.
8278
1be6e437
JL
8279 * jump.c (jump_optimize): Remove Dec 17, 1997 chance in
8280 favor of an equivalent change from gcc-2.8.
8281
340fb41f
JL
8282 * i386/x-sco5 (CC): Remove trailing whitespace.
8283
982255c8 8284Sat Jan 17 21:09:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 8285
982255c8
KG
8286 * gengenrtl.c (type_from_format): De-ANSIfy function signature.
8287 (accessor_from_format): Likewise.
8288 (xmalloc): New function for use when linking with alloca.o.
8289
db8abea3
BH
8290Mon Jan 5 02:53:01 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
8291
8292 * frame.c (find_fde): Correct FDE's upper bound.
8293
5d483f63
RH
8294Fri Jan 16 16:23:52 1998 Richard Henderson <rth@cygnus.com>
8295
8296 * gengenrtl.c (DEF_RTL_EXPR): Provide a K&R compliant version.
8297
9a960e6b
JL
8298Fri Jan 16 10:16:10 1998 Jeffrey A Law (law@cygnus.com)
8299
8300 * calls.c (expand_call): Move #ifdef code out of macro argument
8301 lists.
8302 (emit_library_call, emit_library_call_value): Likewise.
8303
a4b18346
JL
8304Fri Jan 16 00:46:40 1998 Jeffrey A Law (law@cygnus.com)
8305
8306 * rtl.def (INLINE_HEADER): Fix bug exposed by gen_rtx_FOO changes.
8307
a252996a
JL
8308Thu Jan 15 01:02:30 1998 Jeffrey A Law (law@cygnus.com)
8309
8310 * version.c: Bump for snapshot.
8311
38a448ca
RH
8312Wed Jan 14 22:49:17 1998 Richard Henderson <rth@cygnus.com>
8313
8314 * alias.c: Change all uses of gen_rtx(FOO...) to gen_rtx_FOO;
8315 change gen_rtx(expr...) to gen_rtx_fmt_foo(expr...).
8316 * caller-save.c, calls.c, combine.c, cse.c: Likewise.
8317 * dwarf2out.c, except.c, explow.c, expmed.c, expr.c: Likewise.
8318 * final.c, flow.c, function.c, genpeep.c, haifa-sched.c: Likewise.
8319 * halfpic.c, integrate.c, jump.c, local-alloc.c, loop.c: Likewise.
8320 * profile.c, recog.c, reg-stack.c, regclass.c, regmove.c: Likewise.
8321 * reload.c, reload1.c, reorg.c, sched.c, stmt.c, stupid.c: Likewise.
8322 * unroll.c, varasm.c: Likewise.
8323 * config/alpha/alpha.c, config/alpha/alpha.md: Likewise.
8324
8325Wed Jan 14 19:36:08 1998 Gavin Koch (gavin@cygnus.com)
60db002d
GK
8326
8327 * mips.h: Fix some type-o's from a previous change.
8328
a8decb2c
JL
8329Wed Jan 14 01:26:05 1998 Jeffrey A Law (law@cygnus.com)
8330
b57062ca 8331 * loop.c (check_dbra_loop): Make sure initial value is a
a8decb2c
JL
8332 CONST_INT before trying to normalize it.
8333
0e2b736c
RL
8334Tue Jan 13 23:27:54 1998 Robert Lipe (robertl@dgii.com)
8335
8336 * sco5.h (ASM_OUTPUT_SECTION_NAME): Refresh from ../svr4.h.
8337
a3aa3d8c
HB
8338Tue Jan 13 22:47:02 1998 Herman ten Brugge <herman@htbrug.net.HCC.nl>
8339
8340 * cppexp.c: Include gansidecl.h
8341
8b496c8d
ILT
8342Tue Jan 13 22:43:35 1998 Ian Lance Taylor <ian@cygnus.com>
8343
8344 * svr4.h (LINK_SPEC): Never specify -h.
8345 * ptx4.h (LINK_SPEC): Likewise.
8346 * rs6000/sysv4.h (LINK_SPEC): Likewise.
8347 * sparc/sol2.h (LINK_SPEC): Likewise.
8348
c995fea1
RH
8349Tue Jan 13 22:39:40 1998 Richard Henderson (rth@cygnus.com)
8350
8d47dfc5
RH
8351 * c-typeck.c (comptypes): Exit early on NULL input.
8352
c995fea1
RH
8353 * haifa-sched.c (schedule_insns): Correctly remove inter-block
8354 dependencies after reload.
8355
88ea0ad1
FS
8356Tue Jan 13 22:22:31 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
8357
8358 * rs6000/linux.h (CPP_PREDEFINES): Add -D__ELF__.
8359
f5e86959
JL
8360Tue Jan 13 22:14:57 1998 Klaus Kaempf <kkaempf@progis.de>
8361
8362 * alpha/vms.h (DIR_SEPARATOR): define
8363
8364Tue Jan 13 22:13:04 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
6c32c807
BH
8365
8366 * Makefile.in (stamp-proto): Remove.
8367 (protoize.o, unprotoize.o): Straightforward compile.
8368 * unprotoize.c: Define UNPROTOIZE here, not in the Makefile.
8369
93006f8c
MK
8370Tue Jan 13 21:59:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
8371
8372 * i386/cygwin32.h (STRIP_NAME_ENCODING): Define for Win32 to strip
8373 off the trailing @[NUM] added by ENCODE_SECTION_INFO.
8374
e4c4f8df
JL
8375Tue Jan 13 21:55:06 1998 Jeffrey A Law (law@cygnus.com)
8376
8377 * arm/netbsd.h (DWARF2_UNWIND_INFO): Define as zero for now.
8378 * i386/netbsd.h, m68k/netbsd.h, ns32k/netbsd.h: Likewise.
8379 * sparc/netbsd.h, vax/netbsd.h: Likewise.
8380
4aa0c2a5
SS
8381Tue Jan 13 21:37:07 1998 Shigeya Suzuki <shigeya@foretune.co.jp>
8382
8383 * i386/bsd386.h (DWARF2_UNWIND_INFO): Define as zero for now.
8384
c43143f6
JW
8385Tue Jan 13 17:50:55 1998 Jim Wilson <wilson@cygnus.com>
8386
8387 * configure.in (target_cpu_default, target_cpu_default2): Use double
8388 quotes around them when testing their value.
8389 * configure: Rebuilt.
b57062ca 8390
4b8140a6
JC
8391Tue Jan 13 09:07:44 1998 John Carr <jfc@mit.edu>
8392
8393 * gengenrtl.c (gencode): Emit new function obstack_alloc_rtx
8394 to allocate rtx.
8395 (gendef): Call obstack_alloc_rtx.
8396
82de9b28 8397Tue Jan 13 01:16:36 1998 Robert Lipe (robertl@dgii.com)
fe07d4c1
RL
8398
8399 * configure.in: (i[3456]86-UnixWare7-sysv5): Treat much like SVR4
8400 for now.
8401
23092526 8402Thu Dec 18 18:40:17 1997 Mumit Khan <khan@xraylith.wisc.edu>
b57062ca 8403
23092526
MK
8404 * i386/mingw32.h (INCOMING_RETURN_ADDR_RTX): Delete. Use the value
8405 of DWARF2_UNWIND_INFO, if any, from i386/cygwin32.h instead.
8406 (STANDARD_INCLUDE_DIR): Change to /usr/local/i386-mingw32/include.
8407
b57062ca 8408Tue Jan 13 00:44:02 1998 Jim Wilson <wilson@cygnus.com>
32318600
JW
8409
8410 * mips.md (return_internal): Change mode from SImode to VOIDmode.
8411
ef720b21
KJ
8412Sat Jan 10 22:11:39 1998 J. Kean Johnston <jkj@sco.com>
8413
8414 * i386/sco5.h (STARTFILE_SPEC, ENDFILE_SPEC): Correctly handle
8415 "-static".
8416
cde21847
SC
8417Sat Jan 10 22:04:15 1998 Stan Cox <scox@equinox.cygnus.com>
8418
8419 * i386.md: (movsicc_1, movhicc_1): For alternate 3 set the opcode
8420 suffix from operand 3.
8421
184bb750
R
8422Sat Jan 10 21:50:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
8423 Jeffrey A Law (law@cygnus.com)
8424
8425 * regmove.c: New implementation of regmove pass.
8426 * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2): Remove
8427 decls, make them have external linkage. Return a value from
8428 optimize_reg_copy_1.
8429 * reload.h (count_occurrences): Add decl.
8430 * reload1.c (count_occurrences): Delete decl, make it have external
8431 linkage.
8432 * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Declare.
8433
3f9e9508 8434Sat Jan 10 20:30:12 1998 Jeffrey A Law (law@cygnus.com)
b57062ca 8435
3f9e9508
JL
8436 * regclass.c (record_address_regs): Don't use REG_OK_FOR_BASE_P
8437 if it is not defined.
b57062ca 8438
3b80f6ca
RH
8439Thu Jan 8 21:06:54 1998 Richard Henderson <rth@cygnus.com>
8440
8441 * Makefile.in (OBJ, GEN, RTL_H): Add genrtl.[oh] bits.
8442 * emit-rtl.c (gen_rtx): Move special code to ...
8443 (gen_rtx_CONST_INT): New function.
8444 (gen_rtx_REG): New function.
8445 (*): Update all calls to gen_rtx.
8446 * genemit.c (gen_exp): Emit calls to gen_rtx_FOO for constant FOO.
8447 * rtl.h: Include genrtl.h; prototype CONST_INT & REG generators.
8448 (GEN_INT): Call gen_rtx_CONST_INT.
8449 * gengenrtl.c: New file.
8450
1c72c7f6
JC
8451Mon Jan 5 13:00:18 1998 John F. Carr <jfc@mit.edu>
8452
8453 * alias.c (*_dependence): Call base_alias_check before canon_rtx.
8454 (base_alias_check): If no base found for address call canon_rtx and
8455 try again.
8456
8fa4e1b4
JL
8457Mon Jan 5 11:39:49 1998 Jeffrey A Law (law@cygnus.com)
8458
8459 * mips.c (mips_expand_prologue): Handle large frame with no outgoing
8460 arguments for mips16.
8461 (mips_expand_epilogue): Pass "orig_tsize" to save_restore_insns.
8462 Don't lose if tsize is zero after handling large stack for mips16.
8463 * mips.md (return): For trivial return, return address is in $31.
8464
eb774d8d
NS
8465Sun Jan 4 20:24:00 1998 Nigel Stephens <nigel@algor.co.uk>
8466
8467 * mips/mips16.S: Various changes to make it work with -msingle-float
8468 and -EL.
8469
2bcb2ab3
GK
8470Sun Jan 4 14:25:18 1998 Gavin Koch <gavin@cygnus.com>
8471 Ian Lance Taylor <ian@cygnus.com>
8472 Jeff Law <law@cygnus.com>
8473
8474 * mips.c, mips.h, mips.md: First cut at merging in mips16
8475 support. Major modifications throughout all three files.
8476
db0d1ed9
SS
8477Sun Jan 4 01:01:50 1998 scott snyder <snyder@d0sgif.fnal.gov>
8478
8479 * configure.in: Make gthr-default.h a forwarding header instead of
8480 a symlink.
8481
79873958
KG
8482Sat Jan 3 12:08:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8483
86e011ad
KG
8484 * gcov-io.h: Include sys/types.h to ensure we get size_t.
8485
79873958
KG
8486 * pa.h (ASM_OUTPUT_MI_THUNK): Add missing % in fprintf.
8487
35a42f5f
JW
8488Fri Jan 2 23:40:09 1998 Jim Wilson (wilson@cygnus.com)
8489 Jeffrey A Law (law@cygnus.com)
8490
8491 * crtstuff.c (__frame_dummy): New function for irix6.
8492 (__do_global_ctors): Call __frame_dummy for irix6.
8493 * iris6.h (LINK_SPEC): Hide __frame_dummy too.
8494
ef86d2ee
WL
8495Fri Jan 2 04:57:57 1998 Weiwen Liu <liu@hepmail.physics.yale.edu>
8496
8497 * alpha.c (vms_valid_decl_attribute_p): Move within #if OPEN_VMS.
8498
6c174fc0
RH
8499Fri Jan 2 04:34:14 1998 Richard Henderson <rth@cygnus.com>
8500
8501 * c-decl.c (init_decl_processing): Provide proper fallback symbol
8502 for __builtin_memset.
8503 * expr.c (expand_builtin) [MEMSET]: Arg 3 type code is INTEGER_TYPE
8504 not INTEGER_CST. Assert arg 3 is a constant.
8505
8506 * alpha.c (mode_width_operand): Accept 64-bit modes.
8507 (mode_mask_operand): Likewise.
8508 (print_operand): Likewise for 'M' and 'U' codes.
8509 (alpha_expand_unaligned_load): New function.
8510 (alpha_expand_unaligned_store): Likewise.
8511 (alpha_expand_unaligned_load_words): Likewise.
8512 (alpha_expand_unaligned_store_words): Likewise.
8513 (alpha_expand_block_move): Likewise.
8514 (alpha_expand_block_clear): Likewise.
8515 * alpha.h (MOVE_RATIO): New define.
8516 * alpha.md (extxl, ext*h, ins*l, mskxl): Name them.
8517 (insql, insxh, mskxh, extv, extzv, insv, movstrqi, clrstrqi): New.
8518
8519 * alpha.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE): Set to 3.
8520 (CONSTANT_ALIGNMENT, DATA_ALIGNMENT): Disable.
8521
8fbf199e
RH
8522Thu Jan 1 15:40:15 1998 Richard Henderson <rth@cygnus.com>
8523
8524 * configure.in: Put parenthesis around TARGET_CPU_DEFAULT's value.
8525 * configure: Update.
8526
2d490e3e
JL
8527Thu Jan 1 10:49:12 1998 Jeffrey A Law (law@cygnus.com)
8528
aa2ae679
JL
8529 * emit-rtl.c (operand_subword): Correctly handle extracting a word
8530 from a CONST_DOUBLE for 16bit targets with !WORDS_BIG_ENDIAN.
8531
2d490e3e
JL
8532 * mn10200.md (tstxx, cmpxx): Use "nonimmediate_operand" as predicate
8533 for first argument.
8534
6e26218f
ILT
8535Wed Dec 31 14:42:18 1997 Ian Lance Taylor <ian@cygnus.com>
8536
8537 * configure.in: Set and subsitute host_exeext. Use it when creating
8538 the assembler and linker symlinks.
8539 * configure: Rebuild.
8540 * Makefile.in (exeext): Set to @host_exeext@.
8541 (build_exeext): New variable, set to @build_exeext@.
8542 (FLAGS_TO_PASS): Pass down build_exeext.
8543 (STAGESTUFF): Use build_exeext, not exeext, for gen* and bi*
8544 programs.
8545
1b31097e
JL
8546Wed Dec 31 10:05:44 1997 Jeffrey A Law (law@cygnus.com)
8547
8548 * mn10200.md (addsi3, subsi3): Fix thinkos.
8549
194faace
RH
8550Tue Dec 30 00:04:49 1997 Richard Henderson <rth@cygnus.com>
8551
8552 * sparc.h (ASM_OUTPUT_MI_THUNK): Move %o7 through %g1 instead of
8553 save+restore. Fix pic+big_offset delay slot. Use "pic" case for
8554 unix always, since we want to be able to thunk to functions in a
8555 shared library from an application.
8556
975602f8
ILT
8557Mon Dec 29 14:37:31 1997 Ian Lance Taylor <ian@cygnus.com>
8558
8559 * mips/t-ecoff (CROSS_LIBGCC1): Define to libgcc1-asm.a.
8560 (LIB1ASMSRC, LIB1ASMFUNCS): Define.
8561
0eb1ad44
JL
8562Mon Dec 29 14:03:38 1997 Jeffrey A Law (law@cygnus.com)
8563
8564 * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
8565 offset's mode is not ptr_mode, convert it.
8566
eff0f7ac
MM
8567Mon Dec 29 15:58:18 1997 Michael Meissner <meissner@cygnus.com>
8568
8569 * libgcc2.c (inhibit_libc): Don't define inhibit_libc when cross
8570 compiling if it was already defined.
8571
2c3a56ad
JL
8572Sun Dec 28 00:32:16 1997 Jeffrey A Law (law@cygnus.com)
8573
8574 * flow.c (find_basic_blocks): Don't create a new basic block
8575 for calls in a LIBCALL block.
8576
fc97718f
DE
8577Sun Dec 28 00:30:24 1997 David Edelsohn <edelsohn@mhpcc.edu>
8578
8579 * config/fp-bit.c (L_df_to_sf): Fix typo in last change.
8580
5b5a2a1e
JL
8581Sat Dec 27 22:43:12 1997 Jeffrey A Law (law@cygnus.com)
8582
8583 * cse.c (rtx_cost): Remove conflicting default case.
8584
128f7968
RH
8585Sat Dec 27 21:20:02 1997 Richard Henderson <rth@cygnus.com>
8586
8587 * configure.in: Move default enabling of Haifa out of for loop.
8588 * configure: Rebuild.
8589
e81b4fbe
JL
8590Thu Dec 25 01:02:54 1997 Jeffrey A Law (law@cygnus.com)
8591
8592 * version.c: Bump for snapshot.
8593
f24af81b
TT
85941997-12-25 Teemu Torma <tot@trema.com>
8595
8596 * Makefile.in (GTHREAD_FLAGS): New var.
8597 (LIBGCC2_CFLAGS): Added $(GTHREAD_FLAGS).
8598 (distclean): Remove gthr-default.h.
8599
8600 * configure.in: Accept dce as a thread package.
8601 Check for thread.h and pthread.h.
8602 Link gthr-default.h to appropriate thread file and set
8603 gthread_flags.
8604 (hppa1.1-*-hpux10*): If --enable-threads, use dce threads and
8605 include multilib definitions from pa/t-dce-thr.
8606 (sparc-*-solaris2*): Enable threads by default, if thread.h or
8607 pthread.h is found, preferring posix threads over solaris ones.
8608
8609 * config/pa/t-dce-thr: New file.
8610 * config/pa/t-pa: Removed multilibs.
8611 * config/sparc/t-sol2: Ditto.
b57062ca 8612
f24af81b
TT
8613 * gthr.h: New file.
8614 * gthr-single.h: New file.
8615 * gthr-posix.h: New file.
8616 * gthr-solaris.h: New file.
8617 * gthr-dce.h: New file.
8618 * libgcc-thr.h: Removed.
8619 * objc/thr-dce.c: New file copied from thr-decosf1.c.
8620
8621 * frame.c: Include gthr.h instead of libgcc-thr.h.
8622 * libgcc2.c: Include gthr.h instead of libgcc-thr.h.
8623 (eh_context_initialize): If __gthread_once fails, use static eh
8624 context.
8625 (eh_context_free): Call __gthread_key_dtor.
8626
d9a4ee00
JL
8627Wed Dec 24 23:33:17 1997 Jeffrey A Law (law@cygnus.com)
8628
8629 * expr.h (MUST_PASS_IN_STACK): Allow target port to override.
8630
04bd620d
JW
8631Wed Dec 24 23:12:14 1997 Jim Wilson <wilson@cygnus.com>
8632
556c714b 8633 * cse.c (max_insn_uid): New variable.
556c714b
JW
8634 (cse_around_loop): Use max_insn_uid.
8635 (cse_main): Set max_insn_uid.
8636
04bd620d
JW
8637 * abi64.h (LONG_MAX_SPEC): Check MIPS_ABI_DEFAULT and TARGET_DEFAULT,
8638 and define __LONG_MAX__ appropriately. Add support for -mabi=X,
8639 -mlong64, and -mgp{32,64} options.
8640 * mips.c (mips_abi): Change type to int.
8641 * mips.h (enum mips_abi_type): Delete.
8642 (ABI_32, ABI_N32, ABI_64, ABI_EABI): Define as constants.
8643 (mips_abi): Change type to int.
8644
439d5a35
JC
8645Wed Dec 24 22:38:34 1997 John Carr <jfc@mit.edu>
8646
8647 * flags.h, toplev.c, calls.c, alias.c: Remove flag_alias_check;
8648 optimization is now always enabled.
8649
8650 * calls.c (expand_call): Recognize C++ operator new as malloc-like
8651 function.
8652
8653 * alias.c (memrefs_conflict_p): Eliminate tests now done by
8654 base_alias_check.
8655 (*_dependence): Call canon_rtx before base_alias_check.
8656 (init_alias_once): New function to precompute set of registers which
8657 can hold Pmode function arguments.
8658
8659 * rtl.h: Declare init_alias_once.
8660
8661 * toplev.c (compile_file): Call init_alias_once.
8662
280e521f
JL
8663Wed Dec 24 22:34:55 1997 Jeffrey A Law (law@cygnus.com)
8664
8665 * tree.c (restore_tree_status): Do not dereference a null pointer.
8666
95b8c0c8
PE
8667Tue Dec 23 12:56:46 1997 Paul Eggert <eggert@twinsun.com>:
8668
8669 * genattrtab.c (main): Check HAVE_{G,S}ETRLIMIT in addition to
8670 RLIMIT_STACK. This maintains consistency with the recent, similar
8671 patch to cccp.c and toplev.c.
8672
71d9b493
RH
8673Tue Dec 23 05:17:28 1997 Richard Henderson <rth@cygnus.com>
8674
8675 * genattrtab.c (expand_units): For large nr opclasses, expand
8676 function_units_used with ORX to prevent blowups. Tag with FFS.
8677 (num_unit_opclasses): New variable.
8678 (gen_unit): Update it.
8679 (enum operator): Add ORX_OP.
8680 (operate_exp): Treat ORX as or, except don't expand across an if.
8681 Reuse number rtx's after operating on them.
8682 (check_attr_value): Accept IOR, AND, & FFS.
8683 (write_test_expr): Transmute `in_comparison' to `flags'. Allow
8684 for attribute value caching. Handle CONST_STRING, IF_THEN_ELSE.
8685 (write_expr_attr_cache, write_toplevel_expr): New functions.
8686 (write_attr_get): Handle FFS-tagged expressions.
8687 (make_canonical): Don't expand const attributes.
8688 (convert_const_symbol_ref): Dike out.
8689 (evaluate_eq_attr): Handle SYMBOL_REF.
8690 (main): Don't emit get_attr_foo for const attributes.
8691
8692 * alpha.c (override_options): Reinstate PROCESSOR_EV6.
8693 (alpha_adjust_cost): Add EV6 tuning; streamline EV5 tests.
8694 * alpha.h (REGISTER_MOVE_COST): Increase ftoi/itof cost slightly.
b57062ca
UD
8695 * alpha.md: Redo all of the scheduling, adding EV6 support, and
8696 combining function units where possible.
71d9b493
RH
8697 (attr "type"): Split loads, stores, cmov into int/fp. Combine
8698 multiplies and divides. Add EV6 sqrt, ftoi, itof.
8699 (attr "opsize"): New attribute.
8700 (sqrtsf2-1, sqrtdf2-1): Provide proper TP_INSN patterns.
8701 (movsf2-[12], movdf2-[12]): Provide CIX varients; don't allow CIX
8702 to control register allocation.
8703 (movsi2-1, movdi2-1): Likewise.
8704
b0435cf4 8705Tue Dec 23 03:53:21 1997 Richard Henderson <rth@cygnus.com>
b57062ca 8706
b0435cf4
RH
8707 * alpha.h (CPP_PREDEFINES, LIB_SPEC, LINK_SPEC, STARTFILE_SPEC,
8708 MD_STARTFILE_PREFIX, ASM_FILE_START, ASM_SPEC, ASM_FINAL_SPEC):
8709 Move OSF/1 specific defines out.
8710 * alpha/elf.h (TARGET_VERSION, CPP_PREDEFINES, DEFAULT_VTABLE_THUNKS):
8711 Move Linux specific defines out.
8712 (LINK_SPEC): Genericize.
8713 (ASM_FILE_START): Emit .arch if using more than the base insn set.
8714 (ASM_OUTPUT_SOURCE_LINE): Remove; identical to alpha.h version.
8715 (SDB_DEBUGGING_INFO): Remove; gas can't handle it.
8716 (HANDLE_SYSV_PRAGMA): Define.
8717 * alpha/osf.h: New file.
8718 * alpha/linux.h: Split. Retain file-format independant defines.
8719 Import Linux bits from elf.h.
8720 (CPP_PREDEFINES): Take a file-format specific SUB_CPP_PREDEFINES
8721 (FUNCTION_PROFILER): _mcount takes its address in $28.
8722 (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Remove undef.
8723 * alpha/linux-ecoff.h: New file.
8724 * alpha/linux-elf.h: New file.
8725 * alpha/vms.h (LIB_SPEC, LINK_SPEC): Copy from osf.h.
8726 * alpha/win-nt.h (TARGET_DEFAULT): Define.
8727 * configure.in (alpha*-*-osf*, alpha*-*-linux*) [tm_file]:
8728 Add new headers as appropriate.
b57062ca 8729
b0435cf4
RH
8730 * configure.in (alpha*): Enable Haifa by default.
8731 (*-*-winnt3*): Change to winnt*, since we're not v3 specific.
8732 * configure: Rebuild.
b57062ca 8733
5768f211
RH
8734Tue Dec 23 03:14:54 1997 Richard Henderson <rth@cygnus.com>
8735
8736 * Makefile.in (clean): Remove the stages with their objects here ...
8737 (distclean): ... instead of here.
8738
9e04c65a 8739Mon Dec 22 11:24:01 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 8740
9e04c65a
KG
8741 * cse.c (rtx_cost): Add default case in enumeration switch.
8742 * fix-header.c (recognized_macro): Likewise.
8743 (recognized_extern): Likewise.
8744 (write_rbrac): Likewise.
8745 * objc/objc-act.c (encode_aggregate): Likewise.
8746 (gen_declarator): Likewise.
8747 (gen_declspecs): Likewise.
8748
1d88b804
JL
8749Mon Dec 22 09:58:51 1997 Jeffrey A Law (law@cygnus.com)
8750
8751 * haifa-sched.c (create_reg_dead_note): Detect and handle another
8752 case where we kill more regs after sched than were killed before
8753 sched.
8754 * sched.c (create_reg_dead_note): Similarly.
8755
bbeba0ba
JL
8756Mon Dec 22 09:18:37 1997 Jeffrey A Law (law@cygnus.com)
8757
8758 * c-pragma.c: Include flags.h.
8759
05853640
MK
8760Sun Dec 21 22:10:59 1997 Mumit Khan <khan@xraylith.wisc.edu>
8761
8762 * i386/cygwin32.h (NO_IMPLICIT_EXTERN_C): Don't assume anything
8763 about system headers.
8764 (LIB_SPEC): Add -ladvapi32 -lshell32 to be consistent with mingw32
8765 and also to resolve symbols in prefix.c.
8766
8767 * i386/xm-cygwin32.h (HAVE_BCOPY): Define. This avoids a conflict
8768 between gansidecl.h and newlib's _ansi.h when building libgcc2.a,
8769 when the definitions in auto-config.h is not visible.
8770 (HAVE_BZERO): Likewise.
8771 (HAVE_BCMP): Likewise.
8772 (HAVE_RINDEX): Likewise.
8773 (HAVE_INDEX): Likewise.
8774
44201dba
JL
8775Sun Dec 21 21:54:22 1997 Jeffrey A Law (law@cygnus.com)
8776
8777 * pa.c (emit_move_sequence): Handle a function label source
8778 operand.
8779
d300e551
NC
8780Sun Dec 21 16:13:55 1997 Nick Clifton <nickc@cygnus.com
8781
8782 * c-pragma.c (handle_pragma_token): Generate warning messages
8783 about unknown pragmas if warn_unknown_pragmas is set.
8784
8785 * c-decl.c (c_decode_option): Parse -Wunknown-pragmas command
8786 line option to set variable: warn_unknown_pragmas.
8787
d3245704
MH
8788Sun Dec 21 15:51:10 1997 Manfred Hollstein <manfred@lts.sel.alcatel.de>
8789
8790 * m68k/mot3300.h (ASM_BYTE_OP): Don't include '\t' in the
8791 definition.
8792 (ASM_OUTPUT_ASCII): Prefix ASM_BYTE_OP by one single '\t'.
8793
5198352e
JL
8794Sun Dec 21 13:58:39 1997 Jeffrey A Law (law@cygnus.com)
8795
8796 * Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS): Define.
8797 (libgcc2.a): Depend on $(DPBIT) and $(FPBIT). Add rules to
8798 generate more fine grained floating point emulation libraries.
8799 * config/fp-bit.c: Add protecting #ifdef to all functions so
8800 that they can be compiled separately. If !FINE_GRAINED_LIBRARIES,
8801 then compile all suitable functions.
8802 (pack_d, unpack_d, fpcmp_parts): Add declarations, define with two
8803 underscores to avoid namespace pollution.
8804 * t-mn10200 (LIB2FUNCS_EXTRA): Remove fp-bit.c
8805 (FPBIT): Define.
8806 * t-mn10300 (LIB2FUNCS_EXTRA): Remove fp-bit.c and dp-bit.c
8807 (FPBIT): Define.
8808 (DPBIT): Define.
8809
9f1ff8e8 8810Sat Dec 20 11:26:47 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1d300e19
KG
8811 Jeff Law <law@cygnus.com>
8812
8813 * bitmap.c (bitmap_clear): Ensure `inline' is at the beginning
8814 of the declaration.
8815 * c-decl.c (finish_decl): Use parentheses around && within ||.
8816 * rtl.c: Include stdlib.h.
8817 (read_skip_spaces): Add parentheses around assignments used as
8818 truth values.
8819 (read_rtx): Initialize list_rtx.
8820 * cppexp.c (parse_number): Use || when operands are truth values.
8821 * alias.c (find_base_value): Add default case.
8822 (memrefs_conflict): Likewise.
8823 * combine.c (sets_function_arg_p): Likewise.
8824 * genemit.c (gen_exp): Likewise.
8825 * local-alloc.c (contains_replace_regs): Likewise.
8826 * rtlanal.c (jmp_uses_reg_or_mem): Likewise.
8827 * fold-const.c (fold_convert): Use "&&" for truth values.
8828 (fold): Add default case.
8829 * sdbout.c (sdbout_field_types): Fix typo in declaration.
8830 (sdbout_one_type): Add default case.
8831 * alpha.c (alpha_sa_mask): Prototype only if OPEN_VMS.
8832 (some_operand): Add default case.
8833 (input_operand): Likewise.
8834 (signed_comparison_operator): Likewise.
8835 (divmod_operator): Likewise.
8836 (alpha_set_memflags_1): Likewise.
8837 * reload1.c (reload_cse_simplify_operands): Ensure function
8838 always returns a value.
8839 * scan-decls.c (scan_decls): Likewise.
8840 * c-lex.c (skip_white_space): Fix typo in declaraion.
8841 * c-typeck.c (comp_target_types): Add parentheses around assignment
8842 used as truth value.
8843 (print_spelling): Likewise.
8844 (constructor_implicit, constructor_result): Remove unused variables.
8845 * collect2.c (scan_library): Protect prototype with
8846 #ifdef SCAN_LIBRARIES.
8847 * emit-rtl.c (find_line_note): Fix typo in declaration.
b57062ca 8848 * final.c (asm_insn_count): Protect prototype with
1d300e19
KG
8849 #ifdef HAVE_ATTR_length.
8850 * flow.c (find_auto_inc): Protect prototype with #ifdef AUTO_INC_DEC.
8851 (try_pre_increment_1, try_pre_increment): Likewise.
8852 * regclass.c (auto_inc_dec_reg_p): Protect prototype with
8853 #ifdef FORBIDDEN_INC_DEC_CLASSES. Make return type explicit.
8854 * gcov-io.h (__store_long, __write_long, __read_long): Fix
8855 unsigned/signed comparisons.
8856 * gcov.c (read_files): Remove unused "first_type" variable.
8857 (scan _for_source_files): Initialize s_ptr.
8858 (function_summary): Eliminate "%lf" formatting, use %ld for
8859 longs.
8860 (output_data): Initialize branch_probs and last_line_num.
8861 Eliminate "%lf" formatting, use "%ld" for longs.
8862
18543a22
ILT
8863Fri Dec 19 17:31:11 1997 Ian Lance Taylor <ian@cygnus.com>
8864
afba61d1
ILT
8865 * mips16.S: New file.
8866
8867 * libgcc2.c (varargs): Handle mips16.
8868
18543a22
ILT
8869 * expr.c (do_tablejump): Let CASE_VECTOR_PC_RELATIVE be an
8870 expression.
8871 * stmt.c (expand_end_case): Likewise.
8872 * alpha.h (CASE_VECTOR_PC_RELATIVE): Update.
8873 * fx80.h, gmicro.h, m68k.h, m88k.h, ns32k.h: Likewise.
33f7f353 8874 * rs6000.h, sh.h, tahoe.h, v850.h, vax.h: Likewise.
18543a22 8875
dbf3231e
AS
8876Tue Dec 16 15:14:09 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
8877
8878 * objc/Make-lang.in: Create runtime-info.h and libobjc_entry.o in
8879 the build directory.
8880 (libobjc.a): Update dependency list.
8881 (libobjc.dll): Likewise. Use libobjc_entry.o from the build
8882 directory.
8883 (objc/sendmsg.o): Add -Iobjc to find runtime-info.h.
8884 (objc.mostlyclean): Remove runtime-info.h.
8885
e1ee5cdc
RH
8886Fri Dec 19 00:19:42 1997 Richard Henderson <rth@cygnus.com>
8887
8888 * tree.c (build_range_type): Allow creation of ranges with no maximum.
8889 * dbxout.c (dbxout_range_type): Handle missing TYPE_MAX_VALUE.
8890 * dwarf2out.c (add_subscript_info): Likewise.
8891 * dwarfout.c (subscript_data_attribute, byte_size_attribute): Likewise.
8892 * sdbout.c (plain_type_1): Likewise.
8893 * stmt.c (pushcase_range, all_cases_count, node_has_high_bound):
8894 Likewise.
8895 * fold-const.c (int_const_binop, fold_convert, make_range, fold):
8896 Likewise.
8897
dfe91418 8898Thu Dec 18 17:05:10 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
b57062ca 8899
dfe91418
JL
8900 * mips.c (fatal): Remove declaration.
8901
89021997-12-18 Mark Mitchell <mmitchell@usa.net>
8903
8904 * integrate.c (get_label_from_map): New function.
8905 (expand_inline_function): Use it. Initialize the label_map to
8906 NULL_RTX instead of gen_label_rtx.
8907 (copy_rtx_and_substitute): Use get_label_from_map.
8908 * integrate.h (get_label_from_map): New function.
8909 (set_label_from_map): New macro.
8910 * unroll.c (unroll_loop): Use them.
8911 (copy_loop_body): Ditto.
8912
337e2b69
ILT
8913Thu Dec 18 19:19:57 1997 Ian Lance Taylor <ian@cygnus.com>
8914
8915 * mips/mips.h (INIT_SUBTARGET_OPTABS): Define if not defined.
8916 (INIT_TARGET_OPTABS): Define.
8917 * mips/ecoff.h: Include gofast.h before mips.h.
8918 (INIT_SUBTARGET_OPTABS): Define instead of INIT_TARGET_OPTABS.
8919 * mips/elf64.h: Likewise.
8920 * mips/elf.h (ASM_OUTPUT_SECTION_NAME): Define.
8921
02531345
JM
8922Thu Dec 18 14:51:12 1997 Jason Merrill <jason@yorick.cygnus.com>
8923
8924 * except.c: Remove register_exception_table{,_p}.
8925
913b5d54
GK
8926Thu Dec 18 14:57:29 1997 Gavin Koch <gavin@cygnus.com>
8927
efb84aa5
GK
8928 * unroll.c (calculate_giv_inc): Handle constant increment found in
8929 a MEM with an appropriate REG_EQUAL note.
8930
bb1b857a
GK
8931 * calls.c (expand_call): Implement LOAD_ARGS_REVERSED.
8932
913b5d54
GK
8933 * dwarf2out.c (dwarf2out_frame_debug): Handle adjustments of the
8934 frame pointer in the prologue.
8935
80aab652
RL
8936Thu Dec 18 00:19:38 1997 Robert Lipe <robertl@dgii.com>
8937
8938 * i386/x-sco5 (CLIB) Deleted. (ALLOCA) Added.
8939 * i386/xm-sco5.h (USE_C_ALLOCA) Added.
8940
f5c4bc60 8941Tue Dec 16 18:51:00 1997 Bill Moyer <billm@cygnus.com>
b57062ca 8942
f5c4bc60
BM
8943 * config/m68k/m68k.c (output_function_prologue): Typecast
8944 dwarf2out_cfi_label to (char *).
8945 * config/m68k/m68kemb.h (STARTFILE_SPEC): Redefined to "".
b57062ca 8946
8dcb5295
RH
8947Wed Dec 17 15:06:04 1997 Richard Henderson <rth@cygnus.com>
8948
8949 * sparc.md (jump): Don't use the annul bit around an empty loop.
8950 Patch from Kevin.Kelly@East.Sun.COM.
8951
a99503b1
SC
8952Wed Dec 17 00:51:36 1997 Stan Cox (scox@cygnus.com)
8953
b57062ca 8954 * jump.c: (jump_optimize): Don't use the return register as a
a99503b1
SC
8955 source1 of a conditional move.
8956
e13c943c
RH
8957Tue Dec 16 23:45:40 1997 Richard Henderson <rth@cygnus.com>
8958
8959 * sparc.c (DF_MODES): Or the mask not the bit number.
8960 (function_arg) [ARCH64]: Send unprototyped arg to fp reg first.
8961
be3d27d6
CI
8962Wed Dec 17 00:13:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
8963
8964 * combine.c (force_to_mode): return immediately if operand is a CLOBBER.
8965
f184a264
MH
8966Tue Dec 16 23:44:54 1997 Manfred Hollstein <manfred@s-direktnet.de>
8967
ade7386a
MH
8968 * fixincludes (size_t): Add support for Motorola's stdlib.h
8969 which fails to provide a definition for size_t.
8970 (fabs/hypot): Provide a prototype for fabs on m88k-motorola-sysv3.
8971 (strlen,strspn,strcspn return value): Handle different layout on sysV88.
8972 (hypot): Provide a fake for hypot for m88k-motorola-sysv3.
8973
f184a264
MH
8974 * m68k/xm-mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Define to
8975 prevent unresolved externals in libio.
8976 * m88k/xm-sysv3.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Likewise.
8977
afc96791
L
8978Tue Dec 16 23:25:45 1997 H.J. Lu (hjl@gnu.org)
8979
8980 * config/sparc/linux64.h (LIBGCC_SPEC): Removed.
8981 (CPP_SUBTARGET_SPEC): Add %{pthread:-D_REENTRANT}.
8982 (LIB_SPEC): Updated for glibc 2.
8983
e9818f3c
JL
8984Tue Dec 16 20:11:36 1997 Jeffrey A Law (law@cygnus.com)
8985
8986 * ginclude/stdarg.h: Undo BeOS changes, they break hpux.
8987 * ginclude/varargs.h: Likewise.
8988
a3fd4e75 8989Tue Dec 16 00:32:01 1997 Jeffrey A Law (law@cygnus.com)
520cd331
JL
8990
8991 * version.c: Bump for snapshot.
8992
a3fd4e75
JL
8993Tue Dec 16 00:14:29 1997 H.J. Lu (hjl@gnu.org)
8994
8995 * frame.h (__register_frame, __register_frame_table,
8996 __deregister_frame): New.
8997 * frame.c (__register_frame, __register_frame_table,
8998 __deregister_frame): New.
8999 * frame.c (__deregister_frame_info): Return void *.
9000 * frame.h (__deregister_frame_info): Ditto.
9001 * collect2.c (__deregister_frame_info): Ditto.
9002
166cdf4a
RH
9003Mon Dec 15 18:40:08 1997 Richard Henderson <rth@cygnus.com>
9004
9005 * expmed.c (expand_shift): If SHIFT_COUNT_TRUNCATED, drop a SUBREG.
9006
bcbbac26
RH
9007Mon Dec 15 18:31:43 1997 Richard Henderson <rth@cygnus.com>
9008
9009 * alpha.c (alpha_cpu_name): New variable.
9010 (alpha_mlat_string): Likewise.
9011 (alpha_memory_latency): Likewise.
9012 (override_options): Handle -mmemory-latency.
9013 (alpha_adjust_cost): Adjust load cost for latency.
9014 * alpha.h (TARGET_OPTIONS): Add meory-latency.
9015 (REGISTER_MOVE_COST): Define in terms of memory_latency. Take
9016 TARGET_CIX into account.
9017 (MEMORY_MOVE_COST): Define in terms of memory_latency.
9018 * invoke.texi (DEC Alpha Options): Document -mmemory-latency.
9019
9020 * alpha.h (ASM_COMMENT_START): New macro.
9021
9022Mon Dec 15 17:48:05 1997 Richard Henderson <rth@cygnus.com>
1914f5da
RH
9023
9024 * reload.h, reload1.c (eliminate_regs), caller-save.c, dbxout.c,
9025 dwarfout.c, dwarf2out.c, reload.c, sdbout.c: Revert March 15 change.
9026
9027 * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
9028 SUBREG_REG if the word count is unchanged.
9029 * reload1.c (eliminate_regs) [case SET]: If W_R_O, preserve
9030 subregs of identical word size for push_reload.
9031
a701efba
MM
9032Mon Dec 15 Mark Mitchell <mmitchell@usa.net> 11:41:32 1997
9033
9034 * toplev.c (rest_of_compilation): Don't call save_for_inline_copy
9035 if all we're doing is dealing with -Wreturn-type.
9036
5e21ac7a
RH
9037Mon Dec 15 09:44:39 1997 Richard Henderson <rth@cygnus.com>
9038
9039 * alpha.md (zero_extendqihi2, zero_extendqisi2, zero_extendqidi2):
9040 Use and 255 instead of zapnot 1, since it schedules better.
9041
296f8acc
JL
9042Mon Dec 15 08:48:24 1997 Jeffrey A Law (law@cygnus.com)
9043
9044 * stmt.c (expand_asm_operands): If an ASM has no outputs, then treat
9045 it as volatile.
9046
6d8ccdbb
JL
9047Mon Dec 15 00:04:48 1997 Jeffrey A Law (law@cygnus.com)
9048
9049 * haifa-sched.c (remove_dependencies): Set RTX_INTEGRATED_P on
9050 dependency we delete. Properly update prev for multiple consecutive
9051 deletions.
9052 (priority): Skip deleted dependence.
9053
14e83f2e
PB
9054Fri Dec 12 18:54:23 1997 Per Bothner <bothner@cygnus.com>
9055
9056 * expr.c (expand_builtin): Support BUILT_IN_FMOD - just call fmod.
9057
100d81d4
JM
9058Fri Dec 12 01:19:48 1997 Jason Merrill <jason@yorick.cygnus.com>
9059
9b8d9d6b
JM
9060 * flow.c (flow_analysis): Be consistent with find_basic_blocks in
9061 determining when a new basic block starts.
9062
74c3447c
JM
9063 * alpha/osf2or3.h (LIB_SPEC): Restore missing defn.
9064
9065 * pa.h (TEXT_SPACE_P): Use TREE_CODE_CLASS.
9066 * pa.md (iorsi3): Add missing args to *_operand calls.
9067
100d81d4
JM
9068 * except.c (call_get_eh_context): Don't mess with sequences.
9069 (emit_eh_context): Include the call in the sequence here.
9070
5a5ab947
PE
90711997-12-11 Paul Eggert <eggert@twinsun.com>
9072
9073 * collect2.c (write_c_file_glob): Allocate initial frame object
9074 in static storage and pass its address.
9075
01eb7f9a
JM
9076Thu Dec 11 23:33:48 1997 Jason Merrill <jason@yorick.cygnus.com>
9077
9078 * except.c (call_get_eh_context): Don't take a parm.
9079 Put the call at the top of the function.
9080 (emit_eh_context): Adjust.
9081 (get_eh_context): Replace with former use_eh_context.
9082 (get_eh_context_once, get_saved_pc_ref): Remove.
9083 (start_eh_unwinder, end_eh_unwinder, emit_unwinder): Remove.
9084 * except.h: Adjust.
9085 * integrate.c (expand_inline_function): Adjust.
9086 * toplev.c (rest_of_compilation): Don't call emit_unwinder.
9087
d19814a3
ML
9088Fri Oct 10 17:58:31 CEST 1997 Marc Lehmann <pcg@goof.com>
9089
9090 * i386/xm-go32.h (EXECUTABLE_SUFFIX): Define.
9091 (DIR_SEPARATOR, NO_SYS_SIGLIST): Likewise.
9092
7567d496
MH
9093Thu Dec 11 23:55:17 1997 Manfred Hollstein <manfred@s-direktnet.de>
9094
ade7386a 9095 * fixincludes (strlen,strspn,strcspn return value): Handle different
7567d496 9096 layout on sysV88.
b57062ca 9097 (hypot): Provide a fake for hypot which is broken on
7567d496
MH
9098 m88k-motorola-sysv3.
9099
0a6969ad
JC
9100Thu Dec 11 23:50:17 1997 John F. Carr <jfc@mit.edu>
9101
9102 * tree.c, tree.h: Change tree_code_type, tree_code_length, and
9103 tree_code_name from pointers to arrays.
9104 * tree.c: Remove standard_tree_code_* variables, no longer used.
9105 * print-tree.c: Remove declaration of tree_code_name.
9106
9107 * cp/lex.c (init_lex): Update for tree_code_* changes.
9108 * objc/objc-act.c (init_objc): Likewise.
9109
9110 * tree.def, cp/cp-tree.def, objc/objc-tree.def: Update for tree_code
9111 changes.
9112
c55dcc7d
FF
9113Thu Dec 11 23:34:54 1997 Fred Fish <fnf@ninemoons.com>
9114
9115 * config.sub: Add support for BeOS target.
9116 * configure.in: Likewise.
9117 * ginclude/stdarg.h: Likewise.
9118 * ginclude/stddef.h: Likewise.
9119 * ginclude/varargs.h: Likewise.
9120 * rs6000/beos.h: New file for BeOS.
9121 * rs6000/t-beos: Likewise.
9122 * rs6000/x-beos: Likewise.
9123 * rs6000/xm-beos.h: Likewise.
9124 * toplev.c (get_run_time): Just return 0 on BeOS.
9125
9cf3ae46
JL
9126Thu Dec 11 23:25:23 1997 Jeffrey A Law (law@cygnus.com)
9127 Toon Moene (toon@moene.indiv.nluug.nl)
9128
9129 * m68k.h (GO_IF_LEGITIMATE_ADDRESS): No longer cater to horribly
9130 old and broken Sun3 assemblers. Newer versions handle large
9131 offsets correctly as does the GNU assembler.
9132
7cc273ad
L
9133Thu Dec 11 23:06:48 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
9134
9135 * objc/objc-act.c (lang_report_error_function): Disable.
9136 * objc/objc-parse.y: Include "output.h".
9137 (yyerror): Remove redundant decl.
9138 (yyprint): Fix prototype.
9139 (apply_args_register_offset): Remove redundant decl.
9140 (get_file_function_name): Likewise.
9141
74d7ab55
JM
9142Thu Dec 11 22:02:10 1997 Jason Merrill <jason@yorick.cygnus.com>
9143
9144 * flow.c (find_basic_blocks): A CALL_INSN that can throw starts
9145 a new basic block.
9146 (find_basic_blocks_1): Likewise.
9147
0776059e
JM
9148Thu Dec 11 21:08:48 1997 Jason Merrill <jason@yorick.cygnus.com>
9149
9150 * except.c (use_eh_context): Don't copy_rtx a REG.
9151 (emit_throw): Lose old unwinder support.
9152 (expand_internal_throw): Likewise.
9153 * libgcc2.c (struct eh_context): Likewise.
9154 (new_eh_context): Likewise.
9155 (__get_eh_info): Lose redundant cast.
9156 (__get_dynamic_handler_chain): Likewise.
9157 (__get_saved_pc): Lose.
9158 Lose all old unwinder support code.
9159
154bba13
TT
9160Thu Dec 11 20:42:18 1997 Teemu Torma <tot@trema.com>
9161
9162 Thread-safe EH support for pthreads, DCE threads and Solaris threads.
b57062ca 9163
154bba13
TT
9164 * integrate.c (expand_inline_function): If the inline fn uses eh
9165 context, make sure that the current fn has one.
9166 * toplev.c (rest_of_compilation): Call emit_eh_context.
9167 * except.c (use_eh_context): New fn.
9168 (get_eh_context_once): New fn.
9169 (call_get_eh_context): New fn.
9170 (emit_eh_context): New fn.
9171 (get_eh_context): Call either get_eh_context_once or
9172 call_get_eh_context, depending on what we have.
9173 (get_dynamic_handler_chain): Call get_eh_context_once.
9174 * except.h: Prototypes for fns above.
9175 * optabs.c (get_eh_context_libfunc): Removed.
9176 (init_optabs): Don't initialize it.
9177 * expr.h (get_eh_context_libfunc): Removed.
9178 * rtl.h, rtl.c: New reg_note REG_EH_CONTEXT.
9179 * config/pa/pa.h (CPP_SPEC): Support for -threads.
9180 * config/pa/pa-hpux10.h (LIB_SPEC): Ditto.
9181 * config/pa/t-pa (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
9182 New multilib for -threads.
9183 * config/sparc/t-sol2: Added multilibs for -threads and
9184 made -pthreads alias to it.
9185 * config/sparc/sol2.h (CPP_SPEC, LIB_SPEC):
9186 Added -threads and -pthreads options.
9187 * libgcc-thr.h: New file.
9188 * libgcc2.c: (__get_cpp_eh_context): Removed.
9189 (struct cpp_eh_context): Removed.
9190 (struct eh_context): Replaced cpp_eh_context with generic language
b57062ca 9191 specific pointer.
154bba13
TT
9192 (__get_eh_info): New function.
9193 (__throw): Check eh_context::info.
9194 (__sjthrow): Ditto.
9195 * libgcc2.c: Include libgcc-thr.h.
9196 (new_eh_context, __get_eh_context,
9197 eh_pthread_initialize, eh_context_initialize, eh_context_static,
9198 eh_context_specific, eh_context_free): New functions.
9199 (get_eh_context, eh_context_key): New variables.
9200 (__sjthrow, __sjpopnthrow, __eh_pcnthrow, __throw): Use
9201 get_eh_context to get the context.
9202 (longjmp): Move the declaration inside
9203 #ifdef DONT_USE_BUILTIN_SETJMP.
9204 * frame.c: Include libgcc-thr.h.
9205 (object_mutex): Mutex to protect the object list.
9206 (find_fde, __register_frame, __register_frame_table,
9207 __deregister_frame): Hold the lock while accessing objects.
9208 * except.h (get_eh_context): Declare.
9209 * except.c (current_function_ehc): Define.
9210 (current_function_dhc, current_function_dcc): Removed.
9211 (get_eh_context): New function.
9212 (get_dynamic_handler_chain): Use get_eh_context.
9213 (get_saved_pc_ref): Ditto.
9214 (get_dynamic_cleanup_chain): Removed references to
9215 current_function_dcc.
9216 (save_eh_status, restore_eh_status): Save and restore
9217 current_function_ehc instead.
9218 * optabs.c (get_eh_context_libfunc): New variable.
9219 (init_optabs): Initialize it.
9220 * expr.h: Declare get_eh_context_libfunc.
9221 * function.h (struct function): Replaced dhc and dcc with ehc.
9222 * except.c (get_saved_pc_ref): New functions.
9223 (eh_saved_pc_rtx, eh_saved_pc): Deleted.
9224 (expand_internal_throw_indirect): Use get_saved_pc_ref() instead
9225 of eh_saved_pc.
9226 (end_eh_unwinder): Likewise.
9227 (init_eh): Remove initialization of eh_saved_pc.
9228 * optabs.c (get_saved_pc_libfunc): New variable.
9229 (init_optabs): Initialize it.
9230 * expr.h: Declare get_saved_pc_libfunc.
9231 * except.h (eh_saved_pc_rtx): Deleted.
9232 (get_saved_pc_ref): Declared.
9233
9234 From Scott Snyder <snyder@d0sgif.fnal.gov>:
9235 * libgcc2.c (__get_saved_pc): New.
9236 (__eh_type, __eh_pc): Deleted.
9237 (__eh_pcnthrow): Use __get_saved_pc() instead of __eh_pc.
9238 (__get_dynamic_handler_chain): Move __dynamic_handler_chain inside
9239 this fcn.
9240
68d75312
JC
9241Thu Dec 11 17:23:48 1997 John F. Carr <jfc@mit.edu>
9242
b16d8734
JC
9243 * sparc/sol2.h: Use 64 bit multiply and divide functions in
9244 Solaris libc. Define TARGET_LIVE_G0 and TARGET_BROKEN_SAVERESTORE
9245 as 0.
9246
68d75312
JC
9247 * rtl.h (global_rtl): New variable, replacing separate variables for
9248 commonly used rtl.
9249 (const_int_rtx): Now array of rtx_def, not rtx.
9250 * emit-rtl.c: Update for new rtl data structures.
9251 * genattrtab.c: Define global_rtl.
9252
44517326 9253Thu Dec 11 15:50:29 1997 David Edelsohn <edelsohn@mhpcc.edu>
f40421ce 9254
44517326
DE
9255 * configure.in ({rs6000,powerpc}-*-*): Enable Haifa scheduler by
9256 default.
f40421ce 9257
8587487b
AG
9258Wed Dec 10 12:30:18 1997 Anthony Green <green@cygnus.com>
9259
9260 * crtstuff.c (__do_global_ctors): Fix typo.
9261
08ce3276
MH
9262Tue Dec 9 09:43:59 1997 Manfred Hollstein <manfred@s-direktnet.de>
9263
9264 * toplev.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
9265 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
9266
c229cba9
DE
9267Tue Dec 9 09:38:58 1997 David Edelsohn <edelsohn@mhpcc.edu>
9268
9269 * rs6000.h (FUNCTION_ARG_PADDING): Define.
9270 * rs6000.c (function_arg_padding): New function.
9271
b2c59d0b
MH
9272Tue Dec 9 10:34:21 1997 Manfred Hollstein <manfred@s-direktnet.de>
9273
9274 * m68k.c: Include tree.h only once.
9275
c1132c27
RK
9276Tue Dec 9 09:32:33 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
9277
9278 * integrate.c (save_for_inline_copying): Make a new reg_parm_stack_loc.
9279
ac957f13
JL
9280Tue Dec 9 01:16:06 1997 Jeffrey A Law (law@cygnus.com)
9281
9282 * Partially cleaned up prototyping code from HJ.
a1d061a1 9283 * tree.h: Add many prototypes.
ac957f13
JL
9284 * haifa-sched.c (haifa_classify_insn): Renamed from classify_insn.
9285 All references changed.
9286 * rtl.h: Protect from multiple inclusions. Add many prototypes.
b57062ca 9287
f40421ce 9288Tue Dec 9 01:15:15 1997 Fred Fish <fnf@ninemoons.com>
ac957f13
JL
9289
9290 * libgcc2.c (string.h): Hoist inclusion to occur before first use of
9291 string functions like strlen.
9292
0a232106
MH
9293Tue Dec 9 00:57:38 1997 Manfred Hollstein <manfred@s-direktnet.de>
9294
9295 * configure.in: Check for functions getrlimit and setrlimit.
9296 * cccp.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
9297 to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
9298
25b76cc1
JS
9299Mon Dec 8 23:53:26 1997 Jay Sachs <sachs@bull.cs.williams.edu>
9300
9301 * Makefile.in (compare*): Handle losing behavior from 4.4bsd make.
9302
26250081
RH
9303Mon Dec 8 21:03:28 1997 Richard Henderson <rth@cygnus.com>
9304
9305 * alpha.c (REG_RA, alpha_return_addr, output_epilog):
9306 Fix merge problems.
9307
9308 * alpha.c (override_options): Don't know about scheduling for EV6.
9309 * alpha.md (ev5 function units): Don't overload as ev6.
9310
9311 * alpha.c (alpha_adjust_cost): Simplify. Fix typo in ev5 mult case.
9312 * alpha.md (define_attr type): Add mvi.
9313 (ev5_e0): Define sceduling parameters for it.
9314 (TARGET_MAX insns): Type is mvi not shift.
9315
7120f213
RH
9316Mon Dec 8 18:15:00 1997 Richard Henderson <rth@cygnus.com>
9317
9318 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix backported gcc-2.8 bug.
9319
afa80947
R
9320Mon Dec 8 21:17:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9321
9322 * cstamp-h, auto-config.h: Delete.
9323
51ca169b
JL
9324Sun Dec 7 19:19:03 1997 Jeffrey A Law (law@cygnus.com)
9325
9326 * version.c: Bump for snapshot.
9327
16169366
JL
9328Sat Dec 6 22:22:22 1997 Jeffrey A Law (law@cygnus.com)
9329
9330 * cccp.c: Fix typo brought over in merge.
9331
efeb5d4f 9332 * Merge in changes from gcc-2.8.
0fe09481 9333
da932f04
JL
9334Mon Nov 3 05:45:32 1997 Philippe De Muyter <phdm@macqel.be>
9335
9336 * m68k.c: Include tree.h for dwarf2out_cfi_label.
9337
9338 * gcc.c (process_command): Do not take address of function fatal when
9339 calling lang_specific_driver.
9340
9341Sat Dec 6 01:02:38 1997 Mumit Khan <khan@xraylith.wisc.edu>
9342
b57062ca 9343 * config/i386/cygwin32.h (DWARF2_UNWIND): Exception handling
da932f04
JL
9344 doesn't work with it yet, so set it to 0.
9345 * config/i386/xm-cygwin32.h (NO_SYS_SIGLIST): Define.
9346
9347Sat Dec 6 01:01:02 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
9348
9349 * cse.c (cse_insn): Check for invalid entries when taking references.
9350
81797aba
JL
9351Fri Dec 5 18:26:25 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9352
9353 * loop.c (invariant_p): Don't test flag_rerun_loop_opt.
9354 (loop_optimize, scan_loop, strength_reduce): New argument unroll_p.
9355 * toplev.c (rest_of_compilation): Pass it. Remove code to
9356 save / clear / restore flag_unroll_{,all_}loops.
9357
9358Fri Dec 5 16:26:03 1997 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
9359
9360 * i386.c (notice_update_cc): Remove bogus pentium GCC code.
9361
9362Fri Dec 5 16:25:14 1997 Jeffrey A Law (law@cygnus.com)
9363
9364 * stmt.c (warn_if_unused_value): Don't warn for TRY_CATCH_EXPR.
9365
5dfa7520
JM
9366Thu Dec 4 11:51:00 1997 Jason Merrill <jason@yorick.cygnus.com>
9367
d07daca1
JM
9368 * except.c (get_dynamic_handler_chain): Only make the call once per
9369 function.
9370
5dfa7520
JM
9371 * except.c (expand_end_all_catch): Fix for sjlj exceptions.
9372
4d7b7169
R
9373Thu Dec 4 12:30:40 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9374
9375 * sh.c (final_prescan_insn): Use local label prefix
9376 when emitting .uses pseudo-ops.
9377
e701eb4d
JM
9378Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
9379
9380 * libgcc2.c (__throw): Use __builtin_return_addr instead of __eh_pc.
9381 * except.c: Lose outer_context_label_stack.
9382 (expand_eh_region_end): Rethrow from outer_context here.
9383 (expand_fixup_region_end): Let expand_eh_region_end do the rethrow.
9384 (expand_internal_throw): Take no args.
9385 (expand_internal_throw_indirect): Lose.
9386 (expand_leftover_cleanups, expand_start_all_catch): Use expand_rethrow.
9387 (expand_start_all_catch): Start a rethrow region.
9388 (expand_end_all_catch): End it.
9389 (expand_rethrow): New fn.
9390 * except.h: Reflect above changes.
9391 * flow.c: Revert change of Nov 27.
9392
6a242b6a
JL
9393Thu Dec 4 00:24:09 1997 Jeffrey A Law (law@cygnus.com)
9394
9395 * i386/t-sol2 (CRTSTUFF_T_CFLAGS): Turn on the optimizer.
9396
9762d48d
JM
9397Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
9398
9399 * except.c (expand_fixup_region_end): New fn.
9400 (expand_fixup_region_start): Likewise.
9401 (expand_eh_region_start_tree): Store cleanup into finalization here.
9402 * stmt.c (expand_cleanups): Use them to protect fixups.
9403
868e82ab
GK
9404Wed Dec 3 11:41:13 1997 Gavin Koch <gavin@cygnus.com>
9405
9406 * mips/mips.md (muldi3_r4000): Broaden the output template
9407 and attribute assignments to handle three operand dmult;
9408 rename to muldi3_internal2.
9409 (muldi3): Call the new muldi3_internal2 for R4000, and
9410 any GENERATE_MULT3 chip.
9411
716cc7f7
JM
9412Tue Dec 2 19:40:43 1997 Jason Merrill <jason@yorick.cygnus.com>
9413
9414 * stmt.c (expand_decl_cleanup): Update thisblock after eh_region_start.
9415
9fb82071
JW
9416Tue Dec 2 12:54:33 1997 Jim Wilson <wilson@cygnus.com>
9417
9418 * unroll.c (find_splittable_givs): Remove last change. Handle givs
9419 with a dest_reg that was created by loop.
9420
f2d76545
JL
9421Sat Nov 29 12:44:57 1997 David Edelsohn <edelsohn@mhpcc.edu>
9422
9423 * rs6000.c (function_arg_partial_nregs): Undo Nov. 26 patch.
9424
9425 * rs6000/aix41.h (ASM_CPU_SPEC): Define.
9426
b4dfb707
JL
9427Fri Nov 28 10:00:27 1997 Jeffrey A Law (law@cygnus.com)
9428
9429 * configure.in: Fix NCR entries.
9430
80c2681c
JL
9431Thu Nov 27 12:20:19 1997 Jeffrey A Law (law@cygnus.com)
9432
586a5f99
JL
9433 * flow.c (find_basic_blocks): Handle cfg issues for rethrows and
9434 nested exceptions correctly.
9435
80c2681c
JL
9436 * unroll.c (find_splittable_givs): Don't split givs with a dest_reg
9437 that was created by loop.
9438
f45ebe47
JL
9439Thu Nov 27 09:34:58 1997 Jason Merrill <jason@yorick.cygnus.com>
9440
9441 * expr.c (preexpand_calls): Don't look past a TRY_CATCH_EXPR.
9442
9443 * except.c (expand_start_all_catch): One more do_pending_stack_adjust.
9444
034e84c4
MM
9445Wed Nov 26 15:47:30 1997 Michael Meissner <meissner@cygnus.com>
9446
8fbd2dc7
MM
9447 * rs6000.c (SMALL_DATA_REG): Register to use for small data relocs.
9448 (print_operand): Use SMALL_DATA_REG for the register involved in
9449 small data relocations.
9450 (print_operand_address): Ditto.
9451
9452 * rs6000/linux.h (LINK_SPEC): Pass -dynamic-linker /lib/ld.so.1 if
9453 -dynamic linker is not used.
9454
a226df46
MM
9455 * rs6000.md (call insns): For local calls, use @local suffix under
9456 System V. Don't use @plt under Solaris.
9457
034e84c4
MM
9458 * rs6000.c (output_function_profiler): Put label address in r0, and
9459 store LR in 4(sp) for System V/eabi.
9460
9461 * rs6000.h (ASM_OUTPUT_REG_{PUSH,POP}): Keep stack aligned to 16
9462 byte boundary, and maintain stack backchain.
9463
f2d76545
JL
9464Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
9465
9466 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
9467 fix_truncsfdi2): Change *.
9468
33e5c8c3
JM
9469Wed Nov 26 11:12:26 1997 Jason Merrill <jason@yorick.cygnus.com>
9470
9471 * toplev.c (main): Complain about -gdwarfn.
9472
f45ebe47
JL
9473Tue Nov 25 22:43:30 1997 Jason Merrill <jason@yorick.cygnus.com>
9474
b57062ca 9475 * dwarfout.c (output_type): If finalizing, write out nested types
f45ebe47
JL
9476 of types we've already written.
9477
92dcf4c8
MM
9478Tue Nov 25 20:32:24 1997 Michael Meissner <meissner@cygnus.com>
9479
9480 (patches originally from Geoffrey Keating)
9481 * rs6000.c (function_arg): Excess floating point arguments don't
9482 go into GPR registers after exhausting FP registers under the
9483 System V.4 ABI.
9484 (function_arg_partial_nregs): Ditto.
9485
9486 * rs6000.md (call insns): If -fPIC or -mrelocatable, add @plt
9487 suffix to calls.
9488
f4744807
JM
9489Tue Nov 25 23:37:27 1997 Jason Merrill <jason@yorick.cygnus.com>
9490
9491 * integrate.c (output_inline_function): Just unset DECL_INLINE.
9492
9493Tue Nov 25 23:33:29 1997 scott snyder <snyder@d0sgif.fnal.gov>
9494
9495 * dwarf2out.c (outout_call_frame_info): Ensure that the info has
9496 proper alignment.
9497
9498 * libgcc2.c (__throw): Initialize HANDLER.
9499
0609f021
JW
9500Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
9501
9502 * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
9503 fix_truncsfdi2): Change *X to ?*X.
9504
c905c108
RH
9505Tue Nov 25 10:00:42 1997 Richard Henderson (rth@cygnus.com)
9506
9507 * alpha.h (CONST_OK_FOR_LETTER): Fix 'L' handling.
9508
5041a61c
JL
9509Tue Nov 25 10:00:42 1997 Jeffrey A Law (law@cygnus.com)
9510
9511 * crtstuff.c (do_global_dtors_aux): Handle multiple calls better.
9512
bb727b5a
JM
9513Tue Nov 25 01:26:55 1997 Bruno Haible <haible@ilog.fr>:
9514
9515 * dwarf2out.c (ASM_OUTPUT_DWARF_DELTA1): Implement.
9516
9517Mon Nov 24 22:41:55 1997 Jason Merrill <jason@yorick.cygnus.com>
9518
9519 * except.c (get_dynamic_handler_chain): Build up a FUNCTION_DECL.
9520 * optabs.c (init_optabs): Lose get_dynamic_handler_chain_libfunc.
9521 * expr.h: Likewise.
9522
f45ebe47
JL
9523Sat Nov 22 18:58:20 1997 Jeffrey A Law (law@cygnus.com)
9524
9525 * pa-hpux10.h (NEW_HP_ASSEMBLER): Define.
9526 * pa.h (LEGITIMATE_CONSTANT_P): Reject LABEL_REFs if not using
9527 gas and not using the new HP assembler.
9528
ef85603e
JL
9529Fri Nov 21 15:20:05 1997 Jeffrey A Law (law@cygnus.com)
9530
9531 * Makefile.in (program_transform_cross_name): Clean up "-e" confusion.
9532 (GCC_INSTALL_NAME, GCC_CROSS_NAME): Likewise.
9533
6cc1f5cb
AC
9534Fri Nov 21 19:37:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
9535
9536 * config/mips/elf64.h (MULTILIB_DEFAULTS): Test for
9537 TARGET_ENDIAN_DEFAULT == zero instead of testing for macro
9538 definition.
9539
72eb1038
BH
9540Fri Nov 21 12:49:56 1997 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
9541
9542 * stmt.c (expand_end_bindings): Allow jump into block with cleanups.
9543
1418bb67
JM
9544Fri Nov 21 12:18:51 1997 Jason Merrill <jason@yorick.cygnus.com>
9545
9546 * except.h: Add outer_context_label_stack.
9547 * except.c: Likewise.
9548 (expand_start_all_catch): Push the outer_context for the try block
9549 onto outer_context_label_stack.
9550 (expand_end_all_catch): Use it and pop it.
9551
9dab7833
RL
9552Fri Nov 21 10:13:11 1997 Robert Lipe (robertl@dgii.com)
9553
9554 * i386/sco5.h (HAVE_ATEXIT): Revert last change.
9555
858e4e8c
RH
9556Thu Nov 20 16:11:50 1997 Richard Henderson <rth@cygnus.com>
9557
9558 * alpha.c (alpha_emit_set_const_1): Handle narrow hosts better.
9559
a21d14e9
KK
9560Thu Nov 20 16:11:50 1997 Klaus Kaempf <kkaempf@progis.de>
9561
9562 * alpha/vms.h (ASM_OUTPUT_ADDR_VEC_ELT): Add an L for the local label
9563 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
9564
ced78d8b
JM
9565Thu Nov 20 14:42:15 1997 Jason Merrill <jason@yorick.cygnus.com>
9566
9567 * Makefile.in (LIB2FUNCS): Remove C++ memory management support.
b57062ca 9568 * libgcc2.c: Remove __builtin_new, __builtin_vec_new, set_new_handler,
ced78d8b
JM
9569 __builtin_delete, and __builtin_vec_delete.
9570
9571 * except.c (output_exception_table): Don't bother with
9572 __EXCEPTION_END__.
9573
a09ff88b
JL
9574Thu Nov 20 16:11:50 1997 Jeffrey A Law (law@cygnus.com)
9575
1b8b89f1
JL
9576 * pa.md (pre_stwm, post_stwm, pre_ldwm, post_ldwm): Base register
9577 is an in/out operand.
9578 (zero extended variants of stwm/stwm patterns): Similarly.
9579
a09ff88b
JL
9580 * mips/x-iris (FIXPROTO_DEFINES): Add -D_SGI_SOURCE.
9581
7bb9fb0e
JM
9582Thu Nov 20 13:19:32 1997 Jason Merrill <jason@yorick.cygnus.com>
9583
9584 * dwarf2out.c (ASM_OUTPUT_DWARF_OFFSET4): Rename from VALUE4.
9585 Use assemble_name.
9586 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Use assemble_name.
9587 (output_call_frame_info): Emit a \n after using it.
9588
9101297d
DL
9589Thu Nov 20 00:38:46 1997 Dave Love <d.love@dl.ac.uk>
9590
9591 * configure.in: Add AC_ARG_ENABLE for Haifa as documentation.
9592
2ed2af28
PDM
9593Wed Nov 19 12:03:04 1997 Philippe De Muyter <phdm@macqel.be>
9594
9595 * dwarf2out.c (CIE_LENGTH_LABEL, FDE_LENGTH_LABEL): New macros.
9596 (ASM_OUTPUT_DWARF_VALUE4): New macro.
9597 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Define if SET_ASM_OP is
9598 defined.
9599 (output_call_frame_info): Do not output forward label differences
9600 if ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL is defined.
9601 * m68k/mot3300.h (SET_ASM_OP): Define when not using gas.
9602
4dff12bf
R
9603Tue Nov 18 23:03:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9604
9605 * sh.md (attribute "type"): Add nil.
9606 (movsi_ie): y/y alternative is type nil.
9607 (movsf_ie): Replace ry/yr/X alternative by r/y/X , y/r/X and y/y/X
9608 alternatives.
9609 (movsf_ie+1): Delete.
9610
218c2cdb
JW
9611Tue Nov 18 15:39:59 1997 Jim Wilson <wilson@cygnus.com>
9612
9613 * mips/mips.c (save_restore_insns): If gp_offset or fp_offset are
9614 large_int, emit two insns instead of one splitable insn.
9615 * dwarf2out.c (dwarf2out_frame_debug): When set cfa_store_offset
9616 from cfa_temp_value, use cfa_offset. Add assert checking that
9617 cfa_reg is SP.
9618
d5b79362
TT
9619Mon Nov 17 15:35:38 1997 Tom Tromey <tromey@cygnus.com>
9620
9621 * cccp.c (deps_output): Properly quote file names for make.
9622
de1ea87a
JL
9623Mon Nov 17 13:21:40 1997 Jeffrey A Law (law@cygnus.com)
9624
9625 * t-h8300 (MULTILIB_EXCEPTIONS): Define.
9626
cb0112a7
RL
9627Fri Nov 7 15:33:11 1997 Robert Lipe (robertl@dgii.com)
9628
9629 * i386/sco5.h (HAVE_ATEXIT): Delete definition.
9630
85c3ba60
JL
9631Sun Nov 16 23:52:48 1997 Jeffrey A Law (law@cygnus.com)
9632
9633 * cse.c (cse_insn): Don't look at JUMP_LABEL field of a conditionl
9634 return.
9635 (cse_end_of_basic_block): Similarly.
ef720b21 9636
9155d500
KJ
9637Sun Nov 16 23:01:40 1997 J. Kean Johnston <jkj@sco.com>
9638
9639 * i386/sco5.h (ASM_OUTPUT_ALIGNED_BSS): Define.
9640 (SELECT_RTX_SECTION): Define.
9641 (LIBGCC_SPEC, LIB_SPEC): Do the right thing for PIC.
9642
4931312c
MH
9643Sun Nov 16 22:47:03 1997 Manfred Hollstein <manfred@s-direktnet.de>
9644
9645 * Makefile.in (compare, compare-lean): Define $stage for each
9646 shell command.
9647 (gnucompare, gnucompare-lean): Likewise.
9648
8dfe3c62
RH
9649Sun Nov 16 22:02:16 1997 Richard Henderson (rth@cygnus.com)
9650
9651 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix offsets.
9652
9653 * alpha.h (ASM_OUTPUT_ADDR_DIFF_ELT): Add an L for the local label
9654 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
9655
874a8709
FF
9656Fri Nov 14 09:09:20 1997 Fred Fish (fnf@cygnus.com)
9657
9658 * dwarfout.c (byte_size_attribute): Add local var upper_bound
9659 and add case to handle STRING_TYPE.
9660 * dwarfout.c (output_string_type_die): Fix code to generate
9661 correct string length attribute for fixed length strings.
9662 Still needs support for varying length strings.
9663
ea466196
JL
9664Fri Nov 14 08:46:56 1997 Jeffrey A Law (law@cygnus.com)
9665
9666 * toplev.c (get_run_time): Do something sensible for cygwin32.
9667
202f590e
RH
9668Fri Nov 14 07:24:20 1997 Richard Henderson <rth@cygnus.com>
9669
f35bcbc5
RH
9670 * expr.c (expand_builtin_setjmp): Set
9671 current_function_has_nonlocal_label.
9672 * stupid.c (stupid_life_analysis): If has_nonlocal_label, kill
9673 call-saved registers across calls.
9674
9675 * alpha.md (exception_receiver): Remove.
9676 (nonlocal_goto_receiver_osf): New
9677 (nonlocal_goto_receiver_vms): Renamed from nonlocal_goto_receiver.
9678 (nonlocal_goto_receiver): New, select _osf or _vms.
9679
531ea24e
RH
9680 * alpha.c (output_prolog [*]): Prefix entry labels with '$' to
9681 keep them from being propogated to the object file.
9682 (alpha_write_linkage): Likewise.
9683 * alpha.md (call_vms): Likewise.
9684 (call_value_vms): Likewise.
9685 (unnamed osf call insns): Likewise.
9686
9687 * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Don't omit L from local label.
9688 (ASM_GENERATE_INTERNAL_LABEL): Likewise.
9689
202f590e
RH
9690 * alpha.c (call_operand): Any reg is valid for WinNT.
9691 * alpha.md (call_nt, call_value_nt): Don't force address into $27.
9692 (anon nt calls): Add 'R' alternative.
9693 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE,
9694 INITIALIZE_TRAMPOLINE): Handle lack of original $27 and 32-bit ptrs.
9695
238ad62b
JL
9696Fri Nov 14 06:59:33 1997 Jeffrey A Law (law@cygnus.com)
9697
f78b5ca1
JL
9698 * calls.c (expand_call): Handle pcc_struct_value correctly for C++.
9699
238ad62b
JL
9700 * i386/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Delete defines.
9701 * i386/xm-mingw32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
9702 * rs6000/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
9703
da275344
MM
9704Thu Nov 13 20:37:33 1997 Michael Meissner <meissner@tiktok.cygnus.com>
9705
9706 * reload1.c (new_spill_reg): Improve fixed or forbidden register
9707 spill error message.
9708
1f1e1545
KG
9709Thu Nov 13 20:29:08 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
9710
9711 * prefix.c: Use stdarg.h only ifdef __STDC__. Otherwise,
9712 use varargs.h. Wrap header with <>, not "".
9713
daa4b717
JL
9714Thu Nov 13 20:21:17 1997 Jeffrey A Law (law@cygnus.com)
9715
9716 * integrate.c (save_for_inline_copying): Add return value from
9717 savealloc.
9718
9bb5394e
BK
9719Thu Nov 13 19:12:33 1997 Brendan Kehoe <brendan@cygnus.com>
9720
9721 * fixincludes: Be a little more restrictive on what we will
9722 substitute to replace definitions of MAXINT for HPUX.
9723
9571f69b
MM
9724Thu Nov 13 18:41:02 1997 Michael Meissner <meissner@cygnus.com>
9725
9726 * dbxout.c (dbxout_symbol_location): Don't assume that variables
9727 whose address is the stack or argument pointers are indirect
9728 pointers.
9729
b57062ca
UD
97301997-11-13 Paul Eggert <eggert@twinsun.com>
9731
e7cbb6b6
PE
9732 * cccp.c, cpplib.c (compare_defs):
9733 Don't complain about arg name respellings unless pedantic.
b57062ca
UD
9734 * cpplib.c (compare_defs): Accept pfile as new arg.
9735 All callers changed.
e7cbb6b6 9736
9f29ca78
R
9737Thu Nov 13 23:33:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9738
9739 * fold-const.c (fold_truthop): Fix bug in last change.
9740
41c9120b
PE
97411997-11-13 Paul Eggert <eggert@twinsun.com>
9742
9743 Fix some confusion with IEEE minus zero.
9744
9745 * real.h (REAL_VALUES_IDENTICAL): New macro.
9746
9747 * expr.c (is_zeros_p): Don't consider -0.0 to be all zeros.
9748 * fold-const.c (operand_equal_p): Don't consider -0.0 to be
9749 identical to 0.0.
9750 * tree.c (simple_cst_equal): Don't consider -0.0 to have the
9751 same tree structure as 0.0.
9752
9753 * varasm.c (immed_real_const_1): Use new REAL_VALUES_IDENTICAL
9754 macro instead of doing it by hand.
9755
323d8e7b
JL
9756Thu Nov 13 16:56:14 1997 Jeffrey A Law (law@cygnus.com)
9757
9758 * v850/lib1funcs.asm: Minor whitespace changes.
9759 * v850.c: Fix minor formatting problems in many places.
9760 (construct_restore_jr, construct_save_jarl): Remove unwanted aborts.
9761
13529ea4
JW
9762Thu Nov 13 12:53:44 1997 Jim Wilson <wilson@cygnus.com>
9763
9764 * mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete code swapping xplus0 and
9765 xplus1 when xplus0 is not a register.
9766
759c135e
JL
9767Thu Nov 13 11:41:42 1997 Jeffrey A Law (law@cygnus.com)
9768
8930b063
JL
9769 * flow.c (find_basic_blocks): During marking phase, if we encounter
9770 an insn with a REG_LABEL note, make the target block live and
9771 create an edge from the insn to the target block. Do not make
9772 edges from all blocks to the target block.
9773
0be28489
JL
9774 * m68k/x-next (OTHER_FIXINCLUDES_DIRS): Include /NextDeveloper/Headers.
9775
759c135e
JL
9776 * confiugre.in: Tweak NCR entries.
9777 * configure: Rebuilt.
9778
47ad8c61
MM
9779Thu Nov 13 11:07:41 1997 Michael Meissner <meissner@cygnus.com>
9780
9781 * rs6000.c (num_insns_constant): Use REAL_VALUE_FROM_CONST_DOUBLE to
9782 pick apart floating point values, instead of using CONST_DOUBLE_LOW
9783 and CONST_DOUBLE_HIGH.
9784
9785 * rs6000.md (define_splits for DF constants): Use the appropriate
9786 REAL_VALUE_* interface to pick apart DF floating point constants in
9787 a machine independent fashion.
9788
5a6b3365
R
9789Thu Nov 13 00:06:58 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9790
9791 * fold-const.c (fold_truthop): When changing a one-bit comparison
9792 against zero into a comparison against mask, do a proper sign
9793 extension.
9794
2ec1535d
JL
9795Wed Nov 12 09:37:01 1997 Jeffrey A Law (law@cygnus.com)
9796
3a88cbd1
JL
9797 * except.c: Do not include "assert.h".
9798 (save_eh_status): Turn asserts into conditional aborts.
9799 (restore_eh_status, scan_region): Likewise.
9800 * dwarfout.c: Do not include "assert.h".
9801 (bit_offset_attribute): Turn asserts into conditional aborts.
9802 (bit_size_attribute, output_inlined_enumeration_type_die): Likewise.
9803 (output_inlined_structure_type_die): Likewise.
9804 (output_inlined_union_type_die): Likewise
9805 (output_tagged_type_instantiation): Likewise.
9806 (dwarfout_file_scope_decl): Likewise.
9807 * dwarf2out.c: Do not include "assert.h"
9808 (expand_builtin_dwarf_reg_size): Turn asserts into conditional aborts.
9809 (reg_save, initial_return_save, dwarf2out_frame_debug): Likewise.
9810 (add_child_die, modified_type_die, add_bit_offset_attribute): Likewise.
9811 (add_bit_size_attribute, scope_die_for): Likewise.
9812 (output_pending_types_for_scope): Likewise.
9813 (get_inlined_enumeration_type_die): Likewise.
9814 (get_inlined_structure_type_die): Likewise.
9815 (get_inlined_union_type_die, gen_subprogram_die): Likewise.
9816 (gen_tagged_type_instantiation_die): Likewise.
9817
2ec1535d
JL
9818 * flow.c (find_basic_blocks): Refine further to get a more correct
9819 cfg, especially in the presense of exception handling, computed
9820 gotos, and other non-trivial cases. Call abort if an inaccuracy
9821 is detected in the cfg.
9822
a6124a42
R
9823Tue Nov 11 21:47:27 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9824
9825 * glimits.h (SHRT_MIN): Define in a way suitable for 16 bit hosts.
9826
9827 * c-lex.c (whitespace_cr, skip_white_space_on_line): New functions.
9828 (skip_white_space): Use whitespace_cr.
9829 (check_newline): Handle whitespace more consistently.
9830
8f3189a4
JW
9831Tue Nov 11 16:25:49 1997 Jim Wilson <wilson@cygnus.com>
9832
9833 * i386/cygwin32.h (CPP_PREDEFINES): Delete -DPOSIX.
9834 * i386/xm-cygwin32.h (POSIX): Define.
9835
6d1350cd
GK
9836Mon Nov 10 20:53:11 1997 Gavin Koch <gavin@cygnus.com>
9837
9838 * config/mips/mips.h (MASK_DEBUG_H): Set to zero, so this bit
9839 is available elsewhere.
9840
d1f4474e
DE
9841Mon Nov 10 16:21:58 1997 Doug Evans <devans@canuck.cygnus.com>
9842
9843 * sparc/sparc.md (mov[sdt]f_const_insn): Fix condition to match
9844 what the instruction can handle.
9845
c7ae64f2
JM
9846Mon Nov 10 03:02:19 1997 Jason Merrill <jason@yorick.cygnus.com>
9847
9848 * stmt.c (expand_decl_cleanup_no_eh): New fn.
9849
9850 * except.c (expand_leftover_cleanups): do_pending_stack_adjust.
9851
ea64ef27
JL
9852Mon Nov 10 00:05:56 1997 Jeffrey A Law (law@cygnus.com)
9853
9854 * alias.c (MAX_ALIAS_LOOP_PASSES): Define.
9855 (init_alias_analysis): Break out of loops after MAX_ALIAS_LOOP_PASSES.
9856
47ad8c61
MM
9857Sun Nov 9 14:34:47 1997 David Edelsohn <edelsohn@mhpcc.edu>
9858
9859 * rs6000.md (lshrdi3_power): Delete '&' from first alternative and
9860 swap instruction order.
9861
0ff27f58
JL
9862Sun Nov 9 02:07:16 1997 Jeffrey A Law (law@cygnus.com)
9863
9864 * fixinc.svr4 (__STDC__): Add another case.
9865
7091039c
R
9866Sun Nov 9 02:00:29 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9867
9868 * a29k.h (ELIGIBLE_FOR_EPILOGUE_DELAY): Avoid loads from varying
9869 addresses in the epilogue delay slot.
9870
553914ad
MH
9871Sun Nov 9 01:40:40 1997 Manfred Hollstein (manfred@s-direktnet.de)
9872
9873 * m88k/dgux.h (ASM_CPU_SPEC): Reformatted to suppress wrong whitespace
9874 in generated `specs' file.
9875
64fde701
JW
9876Sun Nov 9 01:37:11 1997 Jim Wilson (wilson@cygnus.com)
9877
9878 * flags.h (flag_rerun_loop_opt): Declare.
9879 * loop.c (invariant_p, case LABEL_REF): Check flag_rerun_loop_opt.
9880 * toplev.c (flag_rerum_loop_opt): Delete static.
9881
1245df60
R
9882Sat Nov 8 18:20:21 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9883
1245df60
R
9884 Bring over from FSF:
9885
9886 Thu Oct 30 12:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9887
9888 * va-sh.h (__va_arg_sh1): Define.
9889 (va_arg): Use it.
9890 SH3E doesn't use any integer registers for subsequent arguments
9891 once a non-float value was passed in the stack.
9892 * sh.c (machine_dependent_reorg): If optimizing, put explicit
9893 alignment in front label for ADDR_DIFF_VEC.
9894 * sh.h (PASS_IN_REG_P): Fix SH3E case.
9895 (ADJUST_INSN_LENGTH): If not optimizing, add two extra bytes length.
9896
9897 Tue Oct 28 15:06:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9898
9899 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Undefine before including
9900 svr4.h.
9901
9902 Mon Oct 27 16:11:52 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9903
9904 * sh.c (machine_dependent_reorg): When -flag_delayed_branches,
9905 put an use_sfunc_addr before each sfunc.
9906 * sh.md (use_sfunc_addr, dummy_jump): New insns.
9907 (casesi): For TARGET_SH2, emit a dummy_jump after LAB.
9908
9909 Tue Oct 21 07:12:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
9910
9911 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Don't redefine.
9912
97991933
JM
9913Fri Nov 7 10:22:24 1997 Jason Merrill <jason@yorick.cygnus.com>
9914
9915 * frame.c (add_fdes, count_fdes): Go back to checking pc_begin for
9916 linked once FDEs.
9917
eaf407a5
JL
9918Wed Nov 5 14:26:05 1997 Jeffrey A Law (law@cygnus.com)
9919
9920 * alias.c (find_base_value): Only return the known base value for
9921 pseudo registers.
9922
4f9ca067
JW
9923Wed Nov 5 11:27:14 1997 Jim Wilson <wilson@cygnus.com>
9924
9925 * i386.c (load_pic_register): Call prologue_get_pc_and_set_got.
9926 * i386.md (prologue_set_got, prologue_get_pc): Add UNSPEC_VOLATILE
9927 to pattern.
9928 (prologue_get_pc_and_set_got): New pattern.
9929
f4e31cf5
RH
9930Tue Nov 4 20:36:50 1997 Richard Henderson (rth@cygnus.com)
9931
9932 * alpha.c (summarize_insn): Handle ASM_OPERANDS. Don't recurse
9933 for SUBREG, just fall through.
9934
9935 * alpha.c (alpha_handle_trap_shadows): Init sum.defd to zero.
9936
9937 * alpha.md (attr trap): Make TRAP_YES non-zero for sanity's sake.
9938
f754c4a1
JL
9939Tue Nov 4 18:49:42 1997 Jeffrey A Law (law@cygnus.com)
9940
3ed18aeb
JL
9941 * fixincludes: Fix "hypot" prototype in NeXT math.h.
9942
3fe40e05
JL
9943 * Makefile.in (USE_ALLOCA): Always include alloca.o.
9944 (USE_HOST_ALLOCA): Likewise.
9945
f754c4a1
JL
9946 * rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
9947 and LABEL_REFS fields.
9948 * rtl.h (LABEL_REFS): Update.
9949
ab00eb0a
JW
9950Tue Nov 4 16:55:11 1997 Jim Wilson <wilson@cygnus.com>
9951
ff3467a9
JW
9952 * combine.c (try_combine): When setting elim_i2, check whether newi2pat
9953 sets i2dest. When calling distribute_notes for i3dest_killed, pass
9954 elim_i2 and elim_i1. When setting elim_i1, check if newi2pat
9955 sets i1dest.
9956
4911814e
JW
9957 * mips.md (insv, extzv, extv): Add change_address call.
9958 (movsi_ulw, movsi_usw): Change QImode to BLKmode in pattern.
9959
474eff88
JW
9960 * integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
9961
3feffdfe
JW
9962 * reload.c (find_reloads, case 'm' and 'o'): Reject HIGH constants.
9963
ab00eb0a
JW
9964 * mips.c (mips_expand_epilogue): Emit blockage insn before call to
9965 save_restore_insns if no FP and GP will be restored.
7636d567 9966
31c8581d
JW
9967 * dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
9968 Convert CCmode to word_mode before calling GET_MODE_SIZE.
9969
7636d567
JW
9970 * acconfig.h (HAVE_INTTYPES_H): Undef.
9971 * configure.in (inttypes.h): Check for conflicts between sys/types.h
9972 and inttypes.h, and verify that intmax_t is defined.
9973 * config/mips/x-iris (CC, OPT, OLDCC): Comment out.
9974 * config/mips/x-iris3: Likewise.
9975
73774bc7
JL
9976Tue Nov 4 16:07:15 1997 Jeffrey A Law (law@cygnus.com)
9977
9978 * alias.c (find_base_value): When copying arguments, return the
9979 tenative value for a hard register.
9980
645ebf37
DE
9981Tue Nov 4 13:40:35 1997 Doug Evans <devans@canuck.cygnus.com>
9982
9983 * c-lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
9984 (yylex): Record wide strings using target endianness, not host.
9985
f7620587
JL
9986Tue Nov 4 13:13:12 1997 Jeffrey A Law (law@cygnus.com)
9987
9988 * mn10200.h (ASM_OUTPUT_BSS): Delete.
9989 (ASM_OUTPUT_ALIGNED_BSS): New macro
9990 * mn10300.h (ASM_OUTPUT_BSS): Delete.
9991 (ASM_OUTPUT_ALIGNED_BSS): New macro.
9992 * v850.h (ASM_OUTPUT_BSS): Delete.
9993 (ASM_OUTPUT_ALIGNED_BSS): New macro.
9994
1686f1a2 9995Tue Nov 4 00:55:48 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
b57062ca 9996
1686f1a2
R
9997 * profile.c (branch_prob): Insert an insn after a NOTE_INSN_SETJMP.
9998
f6857708
JL
9999Mon Nov 3 14:36:50 1997 Jeffrey A Law (law@cygnus.com)
10000
10001 * configure.in (sco5): Use cpio to install header files.
10002
e566af04
MH
10003Sun Nov 2 23:31:43 1997 Manfred Hollstein <manfred@s-direktnet.de>
10004
10005 * aclocal.m4 (conftestdata_from, conftestdata_to): Names shortened to
10006 14 char length.
10007 * configure: Rebuild.
10008
cbd44549
RL
10009Sun Nov 2 19:44:00 1997 Robert Lipe (robertl@dgii.com)
10010
10011 * i386/sco5.h: enable -gstabs once again.
10012
56636818
JL
10013Sun Nov 2 19:27:21 1997 Jeffrey A Law (law@cygnus.com)
10014
10015 * arm.c (output_move_double): Allocate 3 entries in otherops array.
10016
9ad8a5f0
MS
10017Sat Nov 1 21:43:00 1997 Mike Stump (mrs@wrs.com)
10018
10019 * except.c (expand_ex_region_start_for_decl): Emit EH_REGION_BEG
10020 notes for sjlj exceptions too.
10021 (expand_eh_region_end): Similarly for EH_REGION_END notes.
10022 (exception_optimize): Optimize EH regions for sjlj exceptions too.
10023 * final.c (final_scan_insn): Don't output labels for EH REGION
10024 notes if doing sjlj exceptions.
10025
f8671389
JL
10026Sat Nov 1 19:15:28 1997 Jeffrey A Law (law@cygnus.com)
10027
8072f69c
JL
10028 * alias.c (init_alias_analysis): Handle -fno-alias-check when
10029 optimizing correctly.
10030
6cad9e32
JL
10031 * expr.c (expand_builtin_setjmp): Don't emit a SETJMP note
10032 or set current_function_calls_setjmp anymore.
10033
f8671389
JL
10034 * flow.c (find_basic_blocks): If we delete the label for an
10035 exception handler, remove it from the EH label list and remove
10036 the EH_BEGIN/EH_END notes for that EH region.
10037
a886ae74
JM
10038Sat Nov 1 16:44:49 1997 Jason Merrill (jason@cygnus.com)
10039
10040 * flow.c (find_basic_blocks): Generate correct flow control
10041 information when exception handling notes are present.
10042
c2c85462
JL
10043Sat Nov 1 13:42:19 1997 Jeffrey A Law (law@cygnus.com)
10044
10045 * dwarf2out.c (output_call_frame_info): Fix length argument
10046 to ASM_OUTPUT_ASCII.
10047 (output_die, output_pubnames, output_line_info): Likewise.
10048
8c316ae2
JL
10049Fri Oct 31 07:10:09 1997 Jeffrey A Law (law@cygnus.com)
10050
27ca375a
JL
10051 * version.c: Bump for snapshot.
10052
8d4e65a6
JL
10053 * dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_ASCII to
10054 output ASCII by default. Only use ASM_OUTPUT_DWARF_STRING if
10055 flag_debug_asm is on.
10056 (output_die, output_pubnames, output_line_info): Likewise.
10057
ec907dd8
JL
10058 * alias.c (init_alias_analysis): Add struct_value_incoming_rtx
10059 and static_chain_rtx into the potential base values array if
10060 they are registers.
10061
10062 * alias.c (new_reg_base_value): New array of potential base values.
10063 (unique_id): Now file scoped static.
10064 (find_base_value, case REG): Return the value in reg_base_value
10065 array for the REG if it exists. Else, return the value from
10066 new_reg_base_value if copying args and REG is a hard register.
10067 (find_base_value, case PLUS): If either operand of the PLUS is
10068 a REG, try to get its base value. Handle base + index and
10069 index + base.
10070 (record_set): Use new_reg_base_value instead of reg_base_value.
10071 (init_alias_analysis): Allocate space for new_reg_base_value too.
10072 Rework code to iterate over the insns propagating base value
10073 information until nothing changes.
10074
8c316ae2
JL
10075 * global.c (global_alloc): Free the conflict matrix after
10076 reload has finished.
10077
6874c264
JM
10078Fri Oct 31 01:45:31 1997 Jason Merrill <jason@yorick.cygnus.com>
10079
10080 * libgcc2.c (L_eh): Define __eh_pc.
10081 Replace __eh_type with generic pointer __eh_info.
10082
59fe8c2c
R
10083Fri Oct 31 00:34:55 1996 J"orn Rennecke <amylaar@cygnus.co.uk>
10084
10085 * expr.c (expand_increment): When enqueing a postincrement for a MEM,
10086 use copy_to_reg if address is not a general_operand.
10087
d1271ded
R
10088Fri Oct 31 00:16:55 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10089
10090 * profile.c (output_func_start_profiler): Clear flag_inline_functions
10091 for the duration of the call to rest_of_compilation.
10092
ac52b80b
DE
10093Thu Oct 30 14:40:10 1997 Doug Evans <devans@canuck.cygnus.com>
10094
10095 * configure.in (sparc-*-elf*): Use sparc/elf.h, sparc/t-elf.
10096 Set extra_parts.
10097 (sparc*-*-*): Recognize --with-cpu=v9.
10098 * sparc/elf.h: New file.
10099 * sparc/t-elf: New file.
10100
f8912297
JL
10101Thu Oct 30 13:26:12 1997 Jeffrey A Law (law@cygnus.com)
10102
10103 * mn10300.c (const_8bit_operand): New function.
10104 (mask_ok_for_mem_btst): New funtion.
10105 * mn10300.md (btst patterns with mem operands): Use new functions
10106 to avoid creating btst instructions with invalid operands.
10107
05ef204d
MM
10108Wed Oct 29 16:57:19 1997 Michael Meissner <meissner@cygnus.com>
10109
10110 * rs6000/xm-sysv4.h: Include xm-linux.h instead of xm-svr4.h if we
10111 are running on PowerPC Linux.
10112
feecabdf
GK
10113Wed Oct 29 13:10:11 1997 Gavin Koch <gavin@cygnus.com>
10114
10115 * config/mips/elf64.h (PREFERRED_DEBUGGING_TYPE): Only define
10116 if not previously defined.
10117
de957303
DE
10118Tue Oct 28 23:55:27 1997 Doug Evans (devans@cygnus.com)
10119
10120 * function.c (assign_parms): Correct mode of stack_parm if
10121 entry_parm underwent a mode conversion.
10122
ba3b3878
BK
101231997-10-28 Brendan Kehoe <brendan@lisa.cygnus.com>
10124
10125 * global.c (global_alloc): Use xmalloc instead of alloca for
10126 CONFLICTS, since max_allocno * allocno_row_words alone can be more
10127 than 2.5Mb sometimes.
10128
d540ae2c
RH
10129Tue Oct 28 15:29:15 1997 Richard Henderson <rth@cygnus.com>
10130
10131 * reload1.c (eliminate_regs [SET]): If [SUBREG] widened the mode of
10132 DEST for the spill, adjust mode of SRC to compensate.
10133
42f4929d
RH
10134Tue Oct 28 14:36:45 1997 Richard Henderson <rth@cygnus.com>
10135
10136 * alpha.md (reload_inqi): Check for MEM before strict_memory_address_p,
10137 since any_memory_operand() allows pseudos during reload.
10138 (reload_inhi, reload_outqi, reload_outhi): Likewise.
10139
08417478
JW
10140Tue Oct 28 11:53:14 1997 Jim Wilson <wilson@cygnus.com>
10141
10142 * m68k.md (btst patterns): Add 5200 support.
10143
750e8348
TM
10144Tue Oct 28 11:58:40 1997 Toon Moene <toon@moene.indiv.nluug.nl>
10145
10146 * fold-const.c (fold): For ((a * C1) / C3) or (((a * C1) + C2) / C3)
10147 optimizations, look inside dividend to determine if the expression
10148 can be simplified by using EXACT_DIV_EXPR.
10149
ede19932
JM
10150Tue Oct 28 10:19:01 1997 Jason Merrill <jason@yorick.cygnus.com>
10151
10152 From Brendan:
10153 * dwarf2out.c (output_call_frame_info): Use l1 instead of ".".
10154
66d91cb9
RH
10155Tue Oct 28 00:32:14 1997 Richard Henderson <rth@cygnus.com>
10156
10157 * alpha.c (summarize_insn [SUBREG]): Propogate SET.
10158
4f3f5e9f
RH
10159Mon Oct 27 23:59:26 1997 Richard Henderson <rth@cygnus.com>
10160
10161 * alpha.c (alpha_handle_trap_shadows): Don't call get_attr_trap
10162 on a CLOBBER.
10163
f3352b9e
RH
10164Mon Oct 27 21:25:20 1997 Richard Henderson <rth@cygnus.com>
10165
10166 * alpha.md (movqi, movhi): Make sure new insns created during reload
10167 won't need reloading themselves.
10168 (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Likewise.
10169
0cecc190
JL
10170Mon Oct 27 16:11:10 1997 Jeffrey A Law (law@cygnus.com)
10171
10172 * mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Disable reg+reg.
10173
a09ba5a2
RH
10174Sun Oct 26 13:50:44 1997 Richard Henderson <rth@cygnus.com>
10175
10176 * alpha.c (alpha_sa_mask [VMS]): Don't include $26 in the mask.
10177 Patch from Klaus Kaempf <kkaempf@progis.de>.
10178
7581a30f
JW
10179Sun Oct 26 13:31:47 1997 Jim Wilson (wilson@cygnus.com)
10180
10181 * expr.c (expand_expr, case INDIRECT_REF): Optimize a reference
10182 to an element in a constant string.
10183
d84e64d4
JM
10184Sun Oct 26 11:41:49 1997 Jason Merrill <jason@yorick.cygnus.com>
10185
10186 * dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32
10187 bit PC-relative offset. The exception range table pointer is now in
10188 the CIE.
10189 * frame.c (dwarf_cie, dwarf_fde): Rename CIE_pointer to CIE_delta.
10190 (count_fdes, add_fdes, get_cie): Adjust.
10191 (cie_info, extract_cie_info, __frame_state_for): Adjust eh_ptr uses.
10192
10193 From H.J. Lu:
10194 * frame.c (count_fdes, add_fdes): Skip linked once FDE entries.
10195
96286722
RH
10196Sun Oct 26 11:52:01 1997 Richard Henderson <rth@cygnus.com>
10197
10198 * alias.c (memrefs_conflict_p): Treat arg_pointer_rtx just
10199 like stack_pointer_rtx.
10200
e85988b5
MH
10201Sun Oct 26 11:32:16 1997 Manfred Hollstein <manfred@s-direktnet.de>
10202
361e618f
MH
10203 * Makefile.in (bootstrap-lean): Combined with `normal' bootstrap
10204 targets using "$@" to provide support for similar but not identical
10205 targets without having to duplicate code.
10206 (bootstrap4): New goal.
10207
e85988b5
MH
10208 * Makefile.in (compare, compare-lean, compare3): Combined to one
10209 ruleset determining actions to be performed via $@.
10210 (compare4, compare4-lean): New targets.
10211 (gnucompare, gnucompare3): Combined to one ruleset determining
10212 actions to be performed via $@. Also, note which files failed
10213 the comparison test in .bad_compare.
10214 (gnucompare-lean, gnucompare3-lean, gnucompare4-lean): New targets.
10215
91585c63
TM
10216Sun Oct 26 10:06:11 1997 Toon Moene <toon@moene.indiv.nluug.nl>
10217
10218 * fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
10219 if the dividend is a multiple of the divisor.
10220
da0af5a5
JL
10221Sun Oct 26 09:21:40 1997 Jeffrey A Law (law@cygnus.com)
10222
7337c67f
JL
10223 * Makefile.in (LIBGCC2_CFLAGS): Add -fexceptions.
10224
adb9effb 10225 * alias.c (find_base_term): Handle PRE_INC, PRE_DEC, POST_INC,
6d849a2a 10226 and POS_DEC.
6d849a2a
JL
10227
10228 * alias.c (true_dependence): Fix typo.
10229
6d6d0fa0
JL
10230 * toplev.c (flag_rerun_loop_opt): New variable.
10231 (f_options): Handle -frerun-loop-opt.
10232 (rest_of_compilation): If -frerun-loop-opt, then run the loop
10233 optimizer twice.
10234 (main): Enable -frerun-loop-opt by default for -O2 or greater.
10235
da0af5a5
JL
10236 * loop.c (simplify_giv_expr): Adding two invariants results
10237 in an invariant.
10238
ca0f2220
RH
10239Sun Oct 26 09:15:15 1997 Richard Henderson <rth@cygnus.com>
10240
b57062ca 10241 * expr.c (get_inner_reference): Remove the array bias after
ca0f2220
RH
10242 converting the index to Pmode.
10243
a6f7ba17
JL
10244Sat Oct 25 12:20:58 1997 Jeffrey A Law (law@cygnus.com)
10245
10246 * mn10300.h (TARGET_SWITCHES): Add -mmult-bug and -mno-mult-bug.
10247 (TARGET_MULT_BUG): Define.
10248 (TARGET_DEFAULT): Default to TARGET_MULT_BUG.
10249 * mn10300.md (mulsi3): Handle TARGET_MULT_BUG.
10250
17ad8a3b
JL
10251Fri Oct 24 17:40:34 1997 Jeffrey A Law (law@cygnus.com)
10252
10253 * mn10200.c (indirect_memory_operand): Delete unused function.
10254 * mn10200.h (EXTRA_CONSTRAINT): Handle 'R'.
10255 * mn10200.md (bset, bclr insns): Handle output in a reg too.
10256
e16b49d3
RH
10257Fri Oct 24 15:54:57 1997 Richard Henderson <rth@cygnus.com>
10258
10259 * alpha.md (call patterns): Revert Oct 16 change; if we are to elide
10260 the callee's ldgp, we must do it ourselves, and we use the jsr tag
10261 for more than scheduling.
10262
27f65411
DE
10263Fri Oct 24 13:23:04 1997 Doug Evans <devans@canuck.cygnus.com>
10264
10265 * sparc/sparc.h (ASM_SPEC): Delete asm_arch.
10266
e9ad4573
JL
10267Fri Oct 24 13:19:40 1997 Jeffrey A Law (law@cygnus.com)
10268
10269 * mn10300.c (symbolic_operand, legitimize_address): New functions.
10270 * mn10300.h (LEGITIMIZE_ADDRESS): Call legitimize_address.
10271 (GO_IF_LEGITIMATE_ADDRESS): Don't allow base + symbolic.
10272
66724f0a
JL
10273Thu Oct 23 09:35:12 1997 Jeffrey A Law (law@cygnus.com)
10274
10275 * version.c: Bump for snapshot.
10276
c401498b
R
10277Thu Oct 23 08:03:59 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10278
10279 * dbxout.c (dbxout_start_new_source_file): Use output_quoted_string
10280 for FILENAME.
10281
b22b9b3e
JL
10282Wed Oct 22 00:34:12 1997 Jeffrey A Law (law@cygnus.com)
10283
56bf1fd9
JL
10284 * toplev.c (flag_exceptions): Default value is 2.
10285 (compile_file): If flag_exceptions still has the value 2, then
10286 set it to 0.
10287
a04232e5
JL
10288 * rs6000.c (struct machine_function): Add pic_offset_table_rtx.
10289 (rs6000_save_machine_status): Save pic_offset_table_rtx.
10290 (rs6000_restore_machine_status: Restore pic_offset_table_rtx.
10291
0bd83abd
JL
10292 * local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions
10293 are shared.
10294
b22b9b3e
JL
10295 * rs6000.md (*movsi_got_internal_mem): New pattern.
10296 (*movsi_got_internal_mem splitter): New define_split.
10297
c1e385db
JW
10298Tue Oct 21 18:14:03 1997 Jim Wilson <wilson@cygnus.com>
10299
10300 * obstack.h (obstack_empty_p): Fix spurious space after backslash.
10301
1a986152
GK
10302Tue Oct 21 18:34:01 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
10303
10304 * rs6000.c: Avoid creating a stack frame under SYSV ABI if we
10305 only need to save LR.
10306
5d29a95f
JL
10307Tue Oct 21 10:06:40 1997 Jeffrey A Law (law@cygnus.com)
10308
c6ee9150
JL
10309 * mn10300.md (movqi, movhi): Avoid using address registers as
10310 destinations unless absolutely necessary.
10311
d5255ba2
JL
10312 * mn10200.c (expand_prologue): Fix typo.
10313
9d2128b8
JL
10314 * mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed
10315 addresses.
10316 * mn10200.md (neghi2): Provide an alternative which works if
10317 the input and output register are the same.
10318
576e5acc
JL
10319 * mn10300.c (print_operand): Handle 'S'.
10320 * mn10300.md (ashlsi3, lshrsi3, ashrsi3): Use %S for
10321 shift amount in last alternative
10322
5d29a95f
JL
10323 * mn10300.c (expand_epilogue): Rework to handle register restores
10324 in "ret" and "retf" instructions correctly.
10325
3bf1b082
JW
10326Mon Oct 20 16:47:08 1997 Jim Wilson <wilson@cygnus.com>
10327
10328 * expmed.c (extract_bit_field): Don't make flag_force_mem disable
10329 extzv for memory operands.
10330
10331 * cse.c (simplify_ternary_operation, case IF_THEN_ELSE): Collapse
10332 redundant conditional moves to single operand.
10333
ddbd8d36
NC
10334Mon Oct 20 15:30:26 1997 Nick Clifton <nickc@cygnus.com>
10335
10336 * v850.h: Move define of __v850__ from CPP_PREDEFINES
10337 to CPP_SPEC.
b57062ca 10338
ddbd8d36
NC
10339 * xm-v850.h: Use __v850 rather than __v850__ to
10340 identify v850 port.
10341
a944a4eb
JW
10342Mon Oct 20 14:15:02 1997 Jim Wilson <wilson@cygnus.com>
10343
10344 * mips/mips.c (compute_frame_size): Not a leaf function if
10345 profile_flag set.
10346
2d5b6dea
GK
10347Mon Oct 20 14:16:38 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
10348
10349 * rs6000/t-ppccomm: Use -msdata=none for crtstuff.
10350
f0a9fa6c
DE
10351Mon Oct 20 12:28:17 1997 Doug Evans <devans@canuck.cygnus.com>
10352
10353 * sparc/sparc.h (SPARC_V9,SPARC_ARCH64): Delete.
10354 (DEFAULT_ARCH32_P): New macro.
10355 (TARGET_ARCH{32,64}): Allow compile time or runtime selection.
10356 (enum cmodel): Declare.
10357 (sparc_cmodel_string,sparc_cmodel): Declare.
10358 (SPARC_DEFAULT_CMODEL): Provide default.
10359 (TARGET_{MEDLOW,MEDANY}): Renamed to TARGET_CM_{MEDLOW,MEDANY}.
10360 (TARGET_FULLANY): Deleted.
10361 (TARGET_CM_MEDMID): New macro.
10362 (CPP_CPU_DEFAULT_SPEC): Renamed from CPP_DEFAULT_SPEC.
10363 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
10364 (CPP_PREDEFINES): Take out stuff now handled by %(cpp_arch).
10365 (CPP_SPEC): Rewrite.
10366 (CPP_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
10367 (CPP_{ENDIAN,SUBTARGET}_SPEC): New macros.
10368 (ASM_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
10369 (ASM_SPEC): Add %(asm_arch).
10370 (EXTRA_SPECS): Rename cpp_default to cpp_cpu_default.
10371 Rename asm_default to asm_cpu_default.
10372 Add cpp_arch32, cpp_arch64, cpp_arch_default, cpp_arch, cpp_endian,
10373 cpp_subtarget, asm_arch32, asm_arch64, asm_arch_default, asm_arch.
10374 (NO_BUILTIN_{PTRDIFF,SIZE}_TYPE): Define ifdef SPARC_BI_ARCH.
10375 ({PTRDIFF,SIZE}_TYPE): Provide 32 and 64 bit values.
10376 (MASK_INT64,MASK_LONG64): Delete.
10377 (MASK_ARCH64): Renamed to MASK_64BIT.
10378 (MASK_{MEDLOW,MEDANY,FULLANY,CODE_MODEL}): Delete.
10379 (EMBMEDANY_BASE_REG): Renamed from MEDANY_BASE_REG.
10380 (TARGET_SWITCHES): Always provide 64 bit options.
10381 (ARCH64_SWITCHES): Delete.
10382 (TARGET_OPTIONS): New option -mcmodel=.
10383 (INT_TYPE_SIZE): Always 32.
10384 (MAX_LONG_TYPE_SIZE): Define ifdef SPARC_BI_ARCH.
10385 (INIT_EXPANDERS): sparc64_init_expanders renamed to sparc_init_....
10386 (FUNCTION_{,BLOCK_}PROFILER): Delete TARGET_EMBMEDANY support.
10387 (PRINT_OPERAND_PUNCT_VALID_P): Add '_'.
10388 * sparc/linux-aout.h (CPP_PREDEFINES): Take out stuff handled by
10389 CPP_SPEC.
10390 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
10391 * sparc/linux.h: Likewise.
10392 * sparc/linux64.h (SPARC_V9,SPARC_ARCH64): Delete.
10393 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
10394 (TARGET_DEFAULT): Delete MASK_LONG64, MASK_MEDANY, add MASK_64BIT.
10395 (SPARC_DEFAULT_CMODEL): Define.
10396 (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
10397 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
10398 (LONG_DOUBLE_TYPE_SIZE): Define.
10399 (ASM_SPEC): Add %(asm_arch).
10400 * sparc/sol2.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
10401 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
10402 (TARGET_CPU_DEFAULT): Add ultrasparc case.
10403 * sparc/sp64-aout.h (SPARC_V9,SPARC_ARCH64): Delete.
10404 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT.
10405 (SPARC_DEFAULT_CMODEL): Define.
10406 * sparc/sp64-elf.h (SPARC_V9,SPARC_ARCH64): Delete.
10407 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT. Delete
10408 MASK_LONG64, MASK_MEDANY.
10409 (SPARC_DEFAULT_CMODEL): Define.
10410 (CPP_PREDEFINES): Delete.
10411 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
10412 (ASM_SPEC): Add %(asm_arch).
10413 (LONG_DOUBLE_TYPE_SIZE): Define.
10414 (DWARF2_DEBUGGING_INFO): Define.
10415 * sparc/splet.h (CPP_SPEC): Delete.
10416 * sparc/sysv4.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
10417 (FUNCTION_BLOCK_PROFILER): Delete TARGET_EMBMEDANY support.
10418 (BLOCK_PROFILER): Likewise.
10419 * sparc/sparc.c (sparc_cmodel_string,sparc_cmodel): New globals.
10420 (sparc_override_options): Handle code model selection.
10421 (sparc_init_expanders): Renamed from sparc64_init_expanders.
10422 * sparc/sparc.md: TARGET_<code_model> renamed to TARGET_CM_....
10423 TARGET_MEDANY renamed to TARGET_CM_EMBMEDANY.
10424 (sethi_di_embmedany_{data,text}): Renamed from sethi_di_medany_....
10425 (sethi_di_fullany): Delete.
10426
a3b0df2d
KK
10427Mon Oct 20 02:00:18 1997 Klaus Kaempf <kkaempf@progis.de>
10428 Jeff Law <law@cygnus.com>
10429 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
10430
3a133c72
KK
10431 * alpha/vms.h (DIVSI3_LIBCALL): OTS$ functions are upper case.
10432 (DIVDI3_LIBCALL, UDIVSI3_LIBCALL, UDIVDI3_LIBVALL): Likewise.
10433 (MODSI3_LIBCALL, MODDI3_LIBCALL): Likewise.
10434 (UMODSI3_LIBCALL, UMODDI3_LIBCALL): Likewise.
10435 * alpha/alpha.md (arg_home): Likewise.
10436
a3b0df2d
KK
10437 * alpha/alpha.c (vmskrunch): Delete
10438 * alpha/vms.h (ENCODE_SECTION_INFO, ASM_DECLARE_FUNCTION_NAME): Delete.
10439 * alpha.c (output_prolog, VMS): Use alloca for entry_label and don't
10440 truncate to 64 characters.
10441
10442 * make-l2.com: Support openVMS/Alpha.
10443
10444 * vmsconfig.com: Fix to work on openVMS/Alpha and openVMS/VAX.
10445
7d4f2e6c
R
10446Sun Oct 19 19:00:35 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
10447
10448 * longlong.h (count_leading_zeros): Add missing casts to USItype.
10449
decd44ac
JL
10450Sun Oct 19 18:44:06 1997 Jeffrey A Law (law@cygnus.com)
10451
10452 * i386/bsd386.h (ASM_COMMENT_START): Define.
10453
d1485032
JM
10454Sat Oct 18 13:47:15 1997 Jason Merrill <jason@yorick.cygnus.com>
10455
10456 * tree.c (restore_tree_status): Also free up temporary storage
10457 when we finish a toplevel function.
10458 (dump_tree_statistics): Print stats for backend obstacks.
10459
6bd35f86
DE
10460Sat Oct 18 12:47:31 1997 Doug Evans <dje@canuck.cygnus.com>
10461
10462 * expr.c (use_group_regs): Don't call use_reg for MEMs.
10463
d1485032
JM
10464Sat Oct 18 09:49:46 1997 Jason Merrill <jason@yorick.cygnus.com>
10465
10466 * libgcc2.c (__throw): Don't copy the return address.
10467 * dwarf2out.c (expand_builtin_dwarf_reg_size): Ignore return address.
10468
10469 * except.c (exceptions_via_longjmp): Initialize to 2 (uninitialized).
10470 * toplev.c (main): Initialize exceptions_via_longjmp.
10471
10472 * tree.c: Add extra_inline_obstacks.
10473 (save_tree_status): Use it.
10474 (restore_tree_status): If this is a toplevel inline obstack and we
10475 didn't want to save anything on it, recycle it.
10476 (print_inline_obstack_statistics): New fn.
b57062ca 10477 * function.c (pop_function_context_from): Pass context to
d1485032
JM
10478 restore_tree_status.
10479 * obstack.h (obstack_empty_p): New macro.
10480
6981eacf
JL
10481Sat Oct 18 00:43:59 1997 Jeffrey A Law (law@cygnus.com)
10482
10483 * i386/freebsd.h (ASM_COMMENT_START): Fix.
10484
1933ec7e
JW
10485Fri Oct 17 23:48:52 1997 Jim Wilson (wilson@cygnus.com)
10486
10487 * v850.c (ep_memory_offset): New function.
10488 (ep_memory_operand, substitute_ep_register, v850_reorg): Call it.
10489
10490 * v850.h (CONST_OK_FOR_*): Add and correct comments.
10491 (CONSTANT_ADDRESS_P): Add comment.
10492 (EXTRA_CONSTRAINT): Define 'U'.
10493 * v850.md: Add comments on bit field instructions.
10494 (addsi3): Delete &r/r/r alternative. Add r/r/U alternative.
b57062ca 10495 (lshrsi3): Use N not J constraint.
1933ec7e
JW
10496
10497 * v850.md (v850_tst1+1): New define_split for tst1 instruction.
10498
10499 * v850.c (reg_or_0_operand): Call register_operand.
10500 (reg_or_int5_operand): Likewise.
10501 * v850.h (MASK_BIG_SWITCH, TARGET_BIG_SWITCH): New macros.
10502 (TARGET_SWITCHES): Add "big-switch".
10503 (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE,
10504 ASM_OUTPUT_BEFORE_BASE_LABEL): Add support for TARGET_BIG_SWITCH.
10505 (CASE_DROPS_THROUGH): Comment out.
10506 (CASE_VECTOR_PC_RELATIVE, JUMP_TABLES_IN_TEXT_SECTION): Define.
10507 * v850.md (cmpsi): Delete compare mode.
10508 (casesi): New pattern.
10509
10510 * v850.h (CONST_OK_FOR_N): Delete redundant compare against zero.
10511 * v850.md (ashlsi3): Use SImode not QImode for shift count.
10512 (lshrsi3): Likewise.
10513
10514 * v850.c (print_operand): Add 'c', 'C', and 'z' support. Delete
10515 unreachable switch statement after 'b' support. Remove "b" from
10516 strings for 'b' support.
10517 * v850.md (branch_normal, branch_invert): Change %b to b%b.
10518
13c2de98
JL
10519Fri Oct 17 23:33:20 1997 Jeffrey A Law (law@cygnus.com)
10520
10521 * Makefile.in (LIBGCC2_CFLAGS): Avoid a backslash then an
10522 empty line if @inhibit_libc@ is empty.
10523
b2167bee
RL
10524Fri Oct 17 23:24:40 1997 Robert Lipe (robertl@dgii.com)
10525
10526 * i386/sco5.h: Let ELF use dwarf2 unwinding. COFF uses sjlj.
10527 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Defined.
10528 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
10529 (DWARF2_UNWIND_INFO): Let this track object file format.
10530 (EXTRA_SECTIONS): Add in_eh.
10531 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Define.
10532 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
10533
bf2a2c6b
DM
10534Fri Oct 17 17:13:42 1997 David S. Miller <davem@tanya.rutgers.edu>
10535
10536 * sparc/linux64.h (LINK_SPEC): Dynamic linker is ld-linux64.so.2.
da2a90f7
DM
10537 * sparc/sparc.h (FUNCTION_PROFILER): Fix format string when
10538 TARGET_MEDANY.
f4f8e370
DE
10539 * sparc/sparc.c (dwarf2out_cfi_label): Extern no longer needed.
10540 (output_double_int): Output DI mode values correctly when
10541 HOST_BITS_PER_WIDE_INT is 64.
9d162eb2
DE
10542 (output_fp_move_quad): If TARGET_V9 and not TARGET_HARD_QUAD, use
10543 fmovd so it works if a quad float ends up in one of the upper 32
10544 float regs.
7e37212e
DM
10545 * sparc/sparc.md (pic_{lo_sum,sethi}_di): New patterns
10546 necessary for PIC support on sparc64.
bf2a2c6b 10547
9ff84e67
DE
10548Fri Oct 17 13:39:56 1997 Doug Evans <dje@canuck.cygnus.com>
10549
10550 * sparc/sp64-elf.h (TARGET_DEFAULT): Delete MASK_STACK_BIAS.
10551 * sparc/sparc.h (PROMOTE_MODE): Promote small ints if arch64.
10552 (PROMOTE_FUNCTION_ARGS,PROMOTE_FUNCTION_RETURN): Define.
10553 (SPARC_FIRST_FP_REG, SPARC_FP_REG_P): New macros.
10554 (SPARC_{OUTGOING,INCOMING}_INT_ARG_FIRST): New macros.
10555 (SPARC_FP_ARG_FIRST): New macro.
10556 (CONDITIONAL_REGISTER_USAGE): All v9 fp regs are volatile now.
10557 (REG_ALLOC_ORDER,REG_LEAF_ALLOC_ORDER): Reorganize fp regs.
10558 (NPARM_REGS): There are 32 fp argument registers now.
10559 (FUNCTION_ARG_REGNO_P): Likewise.
10560 (FIRST_PARM_OFFSET): Update to new v9 abi.
10561 (REG_PARM_STACK_SPACE): Define for arch64.
10562 (enum sparc_arg_class): Delete.
10563 (sparc_arg_count,sparc_n_named_args): Delete.
10564 (struct sparc_args): Redefine and use for arch32 as well as arch64.
10565 (GET_SPARC_ARG_CLASS,ROUND_REG,ROUND_ADVANCE): Delete.
10566 (FUNCTION_ARG_ADVANCE): Rewrite.
10567 (FUNCTION_ARG,FUNCTION_INCOMING_ARG): Rewrite.
10568 (FUNCTION_ARG_{PARTIAL_NREGS,PASS_BY_REFERENCE}): Rewrite.
10569 (FUNCTION_ARG_CALLEE_COPIES): Delete.
10570 (FUNCTION_ARG_{PADDING,BOUNDARY}): Define.
10571 (STRICT_ARGUMENT_NAMING): Define.
10572 (doublemove_string): Declare.
10573 * sparc/sparc.c (sparc_arg_count,sparc_n_named_args): Delete.
10574 (single_move_string): Use GEN_INT, and HOST_WIDE_INT.
10575 (doublemove_string): New function.
10576 (output_move_quad): Clean up some of the arch64 support.
10577 (compute_frame_size): Add REG_PARM_STACK_SPACE if arch64.
10578 Don't add 8 bytes of reserved space if arch64.
10579 (sparc_builtin_saveregs): Combine arch32/arch64 versions.
10580 (init_cumulative_args): New function.
10581 (function_arg_slotno): New static function.
10582 (function_arg,function_arg_partial_nregs): New functions.
10583 (function_arg_{pass_by_reference,advance}): New functions.
10584 (function_arg_padding): New function.
c1215820 10585 * ginclude/va-sparc.h: Rewrite v9 support.
9ff84e67 10586
b8fb2d72
CI
10587Fri Oct 17 12:29:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
10588
f22376c7
CI
10589 * regclass.c (record_address_regs): Look at REG_OK_FOR_{BASE,INDEX}_P
10590 for hard regs to determine base and index registers.
10591
b8fb2d72
CI
10592 * reload.c (debug_reload_to_stream): New function. Specify stream
10593 into which to write debug info.
10594 (debug_reload): Modify to call debug_reload_to_stream with stderr.
10595
b79ee7eb
RH
10596Thu Oct 16 15:07:51 1997 Richard Henderson <rth@cygnus.com>
10597
10598 * combine.c (can_combine_p): Don't combine with an asm whose
10599 output is a hard register.
10600
5c19a356
MS
10601Thu Oct 16 15:43:26 1997 Mike Stump (mrs@wrs.com)
10602
10603 * c-decl.c (start_struct): Ensure that structs with forward
10604 declarations are in fact packed when -fpack-struct is given.
10605
10606 * stor-layout.c (layout_record): Ignore STRUCTURE_SIZE_BOUNDARY if
10607 we are packing a structure. This allows a structure with only
10608 bytes to be aligned on a byte boundary and have no padding on a
10609 m68k.
10610
02bef6da
RK
10611Thu Oct 16 15:17:54 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
10612
10613 * rs6000.h (ROUND_TYPE_ALIGN): Don't blow up if no fields in record.
10614
9ecc37f0
RH
10615Thu Oct 16 11:20:30 1997 Richard Henderson <rth@cygnus.com>
10616
10617 * alpha.c (alpha_return_addr_rtx): New variable.
10618 (alpha_save_machine_status): New; save it.
10619 (alpha_restore_machine_status): New; restore it.
10620 (alpha_init_expanders): New; clear it.
10621 (alpha_return_addr): New; set it.
10622 (alpha_ra_ever_killed): New; if alpha_return_addr_rtx, regs_ever_live
10623 is overly conservative, so search the insns explicitly.
10624 (alpha_sa_mask [VMS]): Check alpha_ra_ever_killed.
10625 (alpha_sa_size [VMS && !VMS]): Likewise.
10626 * alpha.h (RETURN_ADDR_RTX): Call alpha_return_addr.
10627 (INIT_EXPANDERS): New definition.
b57062ca 10628
9ecc37f0
RH
10629 * alpha.c: Move REG_PV, REG_RA somewhere more visible in the file.
10630 (output_prolog [!VMS]): Use them.
10631
10632 * alpha.c (output_prolog [!VMS]): Move gp detection to ...
b57062ca 10633 (alpha_does_function_need_gp): ... a new function. Refine the
9ecc37f0
RH
10634 CALL_INSN test to just TYPE_JSR.
10635 * alpha.md (most call insns): Fix some jsr/ibr type transpositions.
10636
bda2ffef
JL
10637Thu Oct 16 09:36:47 1997 Jeffrey A Law (law@cygnus.com)
10638
10639 * version.c: Bump for snapshot.
10640
96b63cd7
RK
10641Wed Oct 15 21:38:18 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
10642
10643 * pa.c (move_operand): Respect -mdisable-indexing.
10644 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
10645
f192bf8b
DE
10646Wed Oct 15 21:34:45 1997 David Edelsohn <edelsohn@mhpcc.edu>
10647
10648 * rs6000.md (udivsi3, divsi3): Split into MQ and non-MQ cases for
10649 PPC601.
10650 (umulsidi3,umulsi3_highpart): Ditto.
10651 (smulsi3_highpart_no_mq): Add !TARGET_POWER.
10652
2ea844d3
RH
10653Wed Oct 15 18:21:46 1997 Richard Henderson <rth@cygnus.com>
10654
10655 * alpha.c (final_prescan_insn): Gut, remove and transform to ...
10656 (alpha_handle_trap_shadows): ... a new function. Handle the entire
10657 function in one go. Emit RTL for trapb, instead of printf directly.
10658 (alpha_reorg): New function. Call alpha_handle_trap_shadows.
10659 (trap_pending): Kill global variable.
10660 (output_epilog): Don't call final_prescan_insn.
10661 (struct shadow_summary): Elide $31 and $f31; now it fits in a word.
10662 * alpha.h (FINAL_PRESCAN_INSN): Remove.
10663 (MACHINE_DEPENENT_REORG): Define.
10664 * alpha.md (jsr patterns with trapb): Stupid and useless. Kill.
10665 (trapb): New insn.
10666
74835ed8
RH
10667Wed Oct 15 18:16:05 1997 Richard Henderson <rth@cygnus.com>
10668
10669 Tune Haifa scheduler for Alpha:
10670 * alpha.h (ISSUE_RATE): Define.
10671 * alpha.c (alpha_adjust_cost): Handle EV5 mult delay; don't apply
10672 EV4 adjustments to EV5.
10673 * alpha.md: Remove all scaling from function unit delays. Rework
10674 EV5 function units to match the CPU.
10675 (umuldi3_highpart): EV5 added the IMULH insn class.
10676
cdc0de30
JL
10677Wed Oct 15 17:42:41 1997 Jeffrey A Law (law@cygnus.com)
10678
10679 * pa.c (following_call): Fail if the CALL_INSN is an indirect
10680 call.
10681
041c97f2
MM
10682Tue Oct 14 12:01:00 1997 Mark Mitchell <mmitchell@usa.net>
10683
10684 * cplus-dem.c (demangle_signature): Don't look for return types on
10685 constructors. Handle member template constructors.
10686
f0632762
JM
10687Tue Oct 14 11:30:29 1997 Jason Merrill <jason@yorick.cygnus.com>
10688
10689 * tree.c (expr_tree_cons, build_expr_list, expralloc): New fns.
22ef8a13 10690 * tree.h: Declare them.
f0632762 10691
dec88383
DE
10692Fri Oct 10 13:46:56 1997 Doug Evans <dje@canuck.cygnus.com>
10693
10694 * configure.in: Handle --with-newlib.
10695 * Makefile.in (LIBGCC2_CFLAGS): Add @inhibit_libc@.
10696
10697 * sparc/t-sp64 (LIBGCC2_CFLAGS): Delete.
10698
0e1f3f5e
JL
10699Wed Oct 8 14:37:44 1997 Jeffrey A Law (law@cygnus.com)
10700
10701 * config/ptx4.h: Fix typo.
10702
12504ae0
JL
10703Wed Oct 8 08:57:20 1997 Jeffrey A Law (law@cygnus.com)
10704
10705 * version.c: Bump for snapshot.
10706
5643c767
MH
10707Tue Oct 7 16:27:34 1997 Manfred Hollstein <manfred@s-direktnet.de>
10708
10709 * aclocal.m4: Substitute INSTALL.
10710 * configure: Re-built.
10711
aa0c1401
JL
10712Tue Oct 7 15:37:35 1997 Jeffrey A Law (law@cygnus.com)
10713
f644bd14
JL
10714 * integrate.c (save_for_inline_copying): Avoid undefined pointer
10715 operations.
10716 (expand_inline_function): Likewise.
10717
aa0c1401
JL
10718 * dwarf2out.c (output_call_frame_info): Reinstate last change
10719 using flag_debug_asm check instead of flag_verbose_asm.
10720
6c2df6c9
JW
10721Tue Oct 7 12:57:26 1997 Jim Wilson <wilson@cygnus.com>
10722
10723 * dwarf2out.c (output_call_frame_info): Remove last change.
10724
13ab2b83
AS
107251997-10-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
10726
10727 * frame.c (__frame_state_for): Execute the FDE insns until the
10728 current pc value is strictly bigger than the target pc value.
10729
066c2fea
JM
10730Tue Oct 7 11:00:42 1997 Jason Merrill <jason@yorick.cygnus.com>
10731
b57062ca 10732 * regclass.c (init_reg_modes): If we can't find a mode for the
066c2fea
JM
10733 register, use the previous one.
10734
2f308fec
RH
10735Tue Oct 7 10:55:34 1997 Richard Henderson <rth@cygnus.com>
10736
10737 * haifa-sched.c (print_block_visualization): Call fprintf directly,
10738 don't sprintf through an alloca'ed buffer.
10739
43984e29
TK
10740Tue Oct 7 10:52:29 1997 Thomas Koenig (ig25@rz.uni-karlsruhe.de)
10741
10742 * reload.c (decompose): Always initialize val.base.
10743
e9e30253
MH
10744Tue Oct 7 10:19:26 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
10745
10746 * m68k/mot3300.h (ASM_OUTPUT_ALIGN): Accept any alignment
10747 instead of aborting.
10748 * dwarf2out.c (output_call_frame_info): Call app_enable and
10749 app_disable to let GNU as accept the generated comments.
10750
496651db
MM
10751Tue Oct 7 11:41:21 1997 Michael Meissner <meissner@cygnus.com>
10752
10753 * tree.h (get_file_function_name): Add declaration.
10754 * dwarf2out.c (output_call_frame_info): No need to cast
10755 get_file_function_name call anymore.
10756 * profile.c (toplevel): Remove get_file_function_name
10757 declaration.
10758 * c-lang.c (finish_file): Ditto.
10759
e6347456
CS
10760Tue Oct 7 10:01:45 1997 Chip Salzenberg <chip@rio.atlantic.net>
10761
10762 * Makefile.in (program_transform_name): Let autoconf substitute
10763 the correct value.
10764
1447b516
JL
10765Tue Oct 7 09:54:35 1997 Jeffrey A Law (law@cygnus.com)
10766
10767 * haifa-sched.c (schedule_block): If the first real insn in a
10768 block has any special notes attached to it, remove them.
10769
1a42ead7
RH
10770Tue Oct 7 09:48:51 1997 Richard Henderson <rth@cygnus.com>
10771
10772 * alpha.h (FLOAT_STORE_FLAG_VALUE): It's 2.0 not 0.5.
10773
4b6140f1
MH
10774Mon Oct 6 12:47:32 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
10775
10776 * m88k.c (m88k_begin_prologue): Remove superfluous backslash.
10777
dc84d7bc
JL
10778Mon Oct 6 12:04:24 1997 Jeffrey A Law (law@cygnus.com)
10779
10780 * Makefile.in (check-g77): New test target.
10781 (CHECK-TARGETS): Add check-g77.
10782
c0da11c4
JM
10783Fri Oct 3 11:56:36 1997 Jason Merrill <jason@yorick.cygnus.com>
10784
10785 * toplev.c (rest_of_compilation): Defer all non-nested inlines.
10786
d8d64559
MM
10787Fri Oct 3 15:49:27 1997 Michael Meissner <meissner@cygnus.com>
10788
10789 * flow.c (print_rtl_with_bb): Cast alloca return value for
10790 in_bb_p.
10791
e414ab29
RH
10792Thu Oct 2 21:15:03 1997 Richard Henderson <rth@cygnus.com>
10793
b57062ca 10794 * i386.h (RETURN_ADDR_RTX): New definition that works for
e414ab29
RH
10795 __builtin_return_address(0) and -fomit-frame-pointer.
10796
15039abe
JW
10797Wed Oct 1 13:43:53 1997 Jim Wilson <wilson@cygnus.com>
10798
10799 Bring over from FSF.
10800 Tue Aug 5 16:10:45 1997 Jason Merrill <jason@yorick.cygnus.com>
10801
b57062ca 10802 * mips.c (function_arg): Handle passing a struct
15039abe
JW
10803 containing a double in a DFmode register without the PARALLEL.
10804
281de624
ILT
10805Wed Oct 1 11:13:25 1997 Ian Lance Taylor <ian@cygnus.com>
10806
d8d64559 10807 * pexecute.c: Use spawn if __CYGWIN32__.
281de624 10808
d8d64559 10809 * pexecute.c: Include "config.h" first, as per autoconf manual
281de624
ILT
10810 (from Paul Eggert <eggert@twinsun.com>).
10811
3cbdd5fc
PDM
10812Wed Oct 1 01:44:36 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
10813
10814 * m68k/x-mot3300 (XCFLAGS): Disable as's long/short jump
10815 optimisation for f/expr.o and f/stb.o.
10816
135d84b8
JL
10817Tue Sep 30 23:48:57 1997 Jeffrey A Law (law@cygnus.com)
10818
10819 * cse.c (this_insn_cc0_mode): Initialize.
10820
55d89719
TK
10821Tue Sep 30 23:09:40 1997 Thomas Koenig <ig25@mvmap66.ciw.uni-karlsruhe.de>
10822
d3878e49
TK
10823 * cccp.c (expand_to_temp_buffer): Initialize all members of obuf.
10824
10825 * haifa-sched.c (get_block_head_tail): Remove unneeded initialization.
55d89719 10826
e9d0757e
RH
10827Tue Sep 30 23:06:43 1997 Richard Henderson <rth@cygnus.com>
10828
10829 * alpha.md (beq): For registers and ints 0-255, use cmpeq+bne, since
10830 that pair will dual-issue on the 21164 and plus+beq won't.
10831 (bne): Likewise for cmpeq+beq.
10832
3f34faec
JW
10833Tue Sep 30 16:07:58 1997 Jim Wilson <wilson@cygnus.com>
10834
10835 * except.c (find_exception_handler_labels): Correct argument to free.
10836
3226dac5 10837Tue Sep 30 11:00:00 1997 Brendan Kehoe <brendan@lisa.cygnus.com>
988cea7d
BK
10838
10839 * except.c (find_exception_handler_labels): Free LABELS when we're
10840 done.
10841
3a6eabfa
JL
10842Mon Sep 29 14:04:35 1997 Jeffrey A Law (law@cygnus.com)
10843
10844 * version.c: Bump for snapshot.
10845
974c50f9
JM
10846Mon Sep 29 10:51:53 1997 Jason Merrill <jason@yorick.cygnus.com>
10847
10848 * flow.c (find_basic_blocks): Mark calls as potentially jumping
10849 to the EH labels.
10850
9b16d2c4
JL
10851Mon Sep 29 09:58:06 1997 Jeffrey A Law (law@cygnus.com)
10852
10853 * configure.in: Substitute for "install" too.
10854 * configure: Rebuilt.
10855
b1e3ddfd
AJ
10856Mon Sep 29 00:38:42 1997 Aaron Jackson <jackson@negril.msrce.howard.edu>
10857
10858 * Makefile.in (bootstrap-lean, compare-lean): New targets.
10859
6662a38d
RH
10860Mon Sep 29 00:18:16 1997 Richard Henderson (rth@cygnus.com)
10861
c02f035f
RH
10862 * alias.c (base_alias_check): Two symbols can conflict if they
10863 are accessed via AND.
10864 (memrefs_conflict_p): Likewise.
10865
7a14fdc5
RH
10866 * alpha.h (SETUP_INCOMING_VARARGS): Emit a blockage insn
10867 after flushing argument registers to the stack.
10868
6662a38d
RH
10869 * Makefile.in (mostlyclean): Remove .regmove files.
10870
f3447109
JM
10871Sun Sep 28 18:59:58 1997 Jason Merrill <jason@yorick.cygnus.com>
10872
10873 * libgcc2.c (__throw): Fix thinko.
10874
37f6b6bf
MM
10875Sun Sep 28 12:00:52 1997 Mark Mitchell <mmitchell@usa.net>
10876
10877 * cplus-dem.c (demangle_template): Add new parameter. Handle new
10878 template-function mangling.
10879 (consume_count_with_underscores): New function.
10880 (demangle_signature): Handle new name-mangling scheme.
10881
adfc539e
PDM
10882Sun Sep 28 01:55:04 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
10883
10884 * flow.c (print_rtl_with_bb): Cast alloca return values for variables
10885 start and end.
10886
92cbe4d2
JL
10887Sun Sep 28 01:05:16 1997 Jeffrey A Law (law@cygnus.com)
10888
10889 * frame.c: Remove last change.
10890 * dwarf2.h: Remove last change.
10891 * tree.h: Add declarations of DWARF2 unwind info support
10892 functions.
10893
2f3ca9e7
JM
10894Sat Sep 27 11:02:38 1997 Jason Merrill <jason@yorick.cygnus.com>
10895
10896 * c-decl.c (init_decl_processing): Add __builtin_dwarf_reg_size.
10897 * tree.h (built_in_function): Likewise.
10898 * expr.c (expand_builtin): Likewise.
10899 * except.h: Likewise.
10900 * dwarf2out.c (expand_builtin_dwarf_reg_size): New fn.
10901 * libgcc2.c (copy_reg): New fn.
10902 (__throw): Use it.
10903
407cb092
PE
10904Fri Sep 26 08:54:59 1997 Paul Eggert <eggert@twinsun.com>
10905
10906 * c-typeck.c (build_binary_op): Warn about comparing signed vs
10907 unsigned if -W is specified and -Wno-sign-compare is not.
10908 * c-decl.c (warn_sign_compare): Initialize to -1.
10909 (c_decode_option): -Wall no longer implies -Wsign-compare.
10910
3ba10494
AS
10911Fri Sep 26 09:00:13 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
10912
a7cc7f29
AS
10913 * frame.c: Include gansidecl.h for PROTO.
10914 * dwarf2out.c: Move inclusion of dwarf2.h down so that PROTO is
10915 defined. Don't declare dwarf2out_cfi_label here.
10916 * dwarf2.h: Add declarations of DWARF2 unwind info support
10917 functions.
10918 * m68k.c: Include dwarf2.h.
10919 (output_function_prologue): Add dwarf2 support.
10920 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM): New macros.
10921 (INCOMING_FRAME_SP_OFFSET): Likewise.
10922
3ba10494
AS
10923 * integrate.c (expand_inline_function): Make sure there is at
10924 least one insn that can be used as an insertion point.
10925
c5cec899
JM
10926Wed Sep 24 21:34:06 1997 Jason Merrill <jason@yorick.cygnus.com>
10927
10928 * dwarf2out.c: s/flag_verbose_asm/flag_debug_asm/
10929
e166cb18
JL
10930Wed Sep 24 22:05:30 1997 Jeffrey A Law (law@cygnus.com)
10931
10932 * version.c: Bump for snapshot.
10933
01a94cba
DE
10934Wed Sep 24 17:36:23 1997 Doug Evans <dje@canuck.cygnus.com>
10935
10936 Bring over from FSF.
10937
10938 Wed Sep 24 19:17:08 1997 Doug Evans <dje@cygnus.com>
10939
10940 * sparc/sparc.md (get_pc_via_call): Renamed from get_pc_sp32.
10941 (get_pc_via_rdpc): Renamed from get_pc_sp64.
10942 * sparc/sparc.c (finalize_pic): Update call to gen_get_pc_via_call.
10943
10944 Wed Sep 24 18:38:22 1997 David S. Miller <davem@tanya.rutgers.edu>
10945
10946 * sparc/sparc.h (ASM_CPU_SPEC): Pass -Av9a for v8plus, ultrasparc.
10947 (TARGET_OPTIONS): Add -malign-loops=, -malign-jumps=,
10948 -malign-functions=.
10949 (sparc_align_{loops,jumps,funcs}_string): Declare.
10950 (sparc_align_{loops,jumps,funcs}): Declare.
10951 (DEFAULT_SPARC_ALIGN_FUNCS): New macro.
10952 (FUNCTION_BOUNDARY): Use sparc_align_funcs.
10953 (STACK_BIAS): Define.
10954 (SPARC_SIMM*_P): Cast to unsigned HOST_WIDE_INT first, then perform
10955 test.
10956 (SPARC_SETHI_P): New macro.
10957 (CONST_OK_FOR_LETTER_P): Use it.
10958 (ASM_OUTPUT_ALIGN_CODE): Define.
10959 (ASM_OUTPUT_LOOP_ALIGN): Define.
10960 * sparc/sparc.c (sparc_align_{loops,jumps,funcs}_string): New globals.
10961 (sparc_align_{loops,jumps,funcs}): New globals.
10962 (sparc_override_options): Handle -malign-loops=, -malign-jumps=,
10963 -malign-functions=.
10964 (move_operand): Use SPARC_SETHI_P.
10965 (arith_double_operand): Cast to unsigned HOST_WIDE_INT first, then
10966 perform test.
10967 (arith11_double_operand): Likewise.
10968 (arith10_double_operand): Likewise.
10969 (finalize_pic): Finish sparc64 support.
10970 (emit_move_sequence): Use SPARC_SETHI_P. Simplify low part of
10971 64 bit constants if able.
10972 (output_fp_move_quad): Don't use fmovq unless TARGET_HARD_QUAD.
10973 (sparc_builtin_saveregs, sparc64 case): Don't save fp regs if
10974 ! TARGET_FPU.
10975 * sparc/sparc.md (*): Use GEN_INT instead of gen_rtx.
10976 (get_pc_sp32): Use for sparc64 as well.
10977 (lo_sum_di_sp{32,64}): Fix handling on 64 bit hosts.
10978 (sethi_di_sp64_const): Likewise.
10979 (movtf_cc_sp64): Check TARGET_HARD_QUAD.
10980 (cmp_zero_extract_sp64): Use unsigned HOST_WIDE_INT in cast.
10981 (ashlsi3, ashldi3, ashrsi3, ashrdi3, lshrsi3, lshrdi3): Likewise.
10982
10983 Tue Sep 23 19:02:46 1997 Doug Evans <dje@cygnus.com>
10984
10985 * sparc/linux-aout.h (COMMENT_BEGIN): Delete.
10986 * sparc/linux.h (COMMENT_BEGIN): Likewise.
10987 * sparc/linux64.h (COMMENT_BEGIN): Likewise.
10988
10989 Tue Sep 23 14:48:18 1997 David S. Miller <davem@tanya.rutgers.edu>
10990
10991 Add sparc64 linux support.
10992 * configure.in (sparc64-*-linux*): Recognize. Add sparc/xm-sparc.h
10993 to xm_file list on 32-bit sparc-linux.
10994 * sparc/xm-sp64.h: New file.
10995 * sparc/linux64.h: New file.
10996 * sparc/xm-linux.h: Include some standard headers if not inhibit_libc.
10997 Don't include xm-sparc.h.
10998 * config/xm-linux.h (HAVE_PUTENV, HAVE_ATEXIT): Define.
10999 * glimits.h (LONG_MAX): Handle sparc64.
11000
11001 Sat Sep 20 03:07:54 1997 Doug Evans <dje@cygnus.com>
11002
11003 * sparc/sysv4.h (ASM_COMMENT_START): Delete.
11004 * sparc.h (ASM_COMMENT_START): Define.
11005 * sparc.c (output_function_prologue): Use it.
11006 (sparc_flat_output_function_{epi,pro}logue): Likewise.
11007
11008 Wed Sep 17 15:04:19 1997 Doug Evans <dje@cygnus.com>
11009
11010 * sparc/sysv4.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Delete,
11011 use sparc.h's copies.
11012 * sparc/sparc.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Print
11013 ascii form as well.
11014
11015 Mon Sep 8 08:45:19 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
11016
11017 * sparc.c (dwarf2out_cfi_label): Add declaration.
11018 (save_regs, output_function_prologue): Remove cast for it.
11019 (sparc_flat_{save_restore,output_function_prologue): Likewise.
11020 ({save,restore}_regs): No longer inline.
11021
ce2157a1
JL
11022Tue Sep 23 12:34:51 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
11023
11024 * fold-const.c (make_range): Correctly handle cases of converting
11025 from unsigned to signed type.
11026
11027Tue Sep 23 12:34:51 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
11028
11029 * fold-const.c (merge_ranges): Make sure that if one range is subset
11030 of another, it will always be the second range. Correct (+,-) case to
11031 account for this.
11032
c5cec899
JM
11033Tue Sep 23 08:32:51 1997 Jason Merrill <jason@yorick.cygnus.com>
11034
11035 * final.c (final_end_function): Also do dwarf2 thing if
11036 DWARF2_DEBUGGING_INFO.
11037 (final_start_function): Likewise.
11038
c107334d
DM
11039Tue Sep 23 01:15:50 1997 David S. Miller <davem@tanya.rutgers.edu>
11040
e13a25d5
DM
11041 * expmed.c (expand_divmod): If compute_mode is not the same as
11042 mode, handle the case where convert_modes() causes op1 to no
11043 longer be a CONST_INT.
11044
c107334d
DM
11045 * reorg.c (dbr_schedule): At end of this pass, add REG_BR_PRED
11046 note holding get_jump_flags() calculation to all JUMP_INSNs.
11047 * rtl.h (enum reg_note): New note types REG_BR_PRED and REG_SAVE_AREA.
11048 * rtl.c (reg_note_name): Add new note types.
11049
8d7532d9
JL
11050Tue Sep 23 00:59:54 1997 Jeffrey A Law (law@cygnus.com)
11051
0774afd7 11052 * rtlanal.c (computed_jump_p): Fix typo in last change.
8d7532d9 11053
7019d00e
L
11054Tue Sep 23 00:42:44 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
11055
11056 * loop.c (indirect_jump_in_function_p): Return 0
11057 by default.
11058
b9dfb357
JL
11059Tue Sep 23 00:33:55 1997 Jeffrey A Law (law@cygnus.com)
11060
11061 * rs6000/xm-rs6000.h: Fix thinko in last change.
11062 * rs6000/xm-sysv4.h: Likewise.
11063
4b7e467b
JW
11064Mon Sep 22 19:33:53 1997 Jim Wilson <wilson@cygnus.com>
11065
11066 * mips.c (save_restore_insns): Only set RTX_FRAME_RELATED_P if store_p.
11067
8c8e6faa
JL
11068Mon Sep 22 14:41:00 1997 Jeffrey A Law (law@cygnus.com)
11069
11070 * reg-stack.c (find_blocks): Fix thinko in last change.
11071
078e983e
AS
110721997-09-21 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
11073
11074 * m68k.c (output_function_prologue): Add dwarf2 support.
11075
11076 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM,
11077 INCOMING_FRAME_SP_OFFSET): New definitions.
b57062ca 11078
d7027667
DM
11079Mon Sep 22 11:36:42 1997 David S. Miller <davem@tanya.rutgers.edu>
11080
9524f769
DM
11081 * combine.c (try_combine): Use NULL_RTX instead of '0' where
11082 appropriate in calls to gen_rtx().
11083 * cse.c (cse_main): Likewise.
11084 * emit-rtl.c (gen_label_rtx): Likewise.
11085 * expr.c (init_expr_once): Likewise.
11086 * haifa-sched.c (flush_pending_lists, sched_analyze_insn,
11087 sched_analyze, init_rgn_data_dependences,
11088 compute_block_backward_dependences): Likewise.
11089 * sched.c (schedule_insns): Likewise.
11090 * varasm.c (immed_double_const): Likewise.
11091
d7027667
DM
11092 * sparc.h (INCOMING_FRAME_SP_OFFSET): Define to
11093 SPARC_STACK_BIAS for sake of dwarf2 on sparc64.
11094
fbf8b71c
KJ
11095Mon Sep 22 11:21:33 1997 J. Kean Johnston <jkj@sco.com>
11096
11097 * i386/sco5.h: Make ELF default file format and add -mcoff/-melf..
11098 (MULTILIB_DEFAULTS): Define.
11099 (ASM_SPEC, CPP_SPEC): Handle -mcoff.
11100 (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Likewise.
11101 (LIBGCC_SPEC): Likewise.
11102 (MASK_COFF, TARGET_COFF, TARGET_ELF): Define.
11103 (SUBTARGET_SWITCHES): Add -mcoff and -melf.
11104 * i386/t-sco5 (CRTSTUFF_T_CFLAGS): Add -fPIC.
11105 (CRTSTUFF_T_CFLAGS_S): Tweak for COFF.
11106 (EXTRA_PARTS, TAROUTOPTS): Delete.
11107 (libgcc1-elf, libgcc2-elf, libgcc-elf targets): Delete.
11108 (MULTILIB_OPTIONS): Define.
11109 (MULTILIB_DIRNAMES, MULTILIB_EXCEPTIONS): Likewise.
11110 (MULTILIB_MATCHE, MULTILIB_EXTRA_OPTS): Likewise.
11111
c14a951f
JL
11112Mon Sep 22 02:10:43 1997 Jeffrey A Law (law@cygnus.com)
11113
11114 * version.c: Bump for snapshot.
11115
7014927a
JL
11116Sun Sep 21 17:45:45 1997 Jeffrey A Law (law@cygnus.com)
11117
37aa45a2
JL
11118 * loop.c (loop_number): Delete function. Change all references
11119 to use uid_loop_num array.
11120 * loop.h (loop_number): Delete declaration.
11121 * unroll.c (unroll_loop): Change "loop_number" references to
11122 use uid_loop_num instead.
11123
b47404d1
JL
11124 * loop.c (loop_unroll_factor): Move outside #ifdef HAIFA
11125 conditional.
11126 (loop_unroll_iter): Remove unused variable and all references.
11127 (loop_optimize): Always allocate and clear space for loop_unroll_factor.
11128 (insert_bct): Fix minor formatting problems.
11129 * loop.h (loop_unroll_factor): Move decl outside #ifdef HAIFA.
11130 (loop_unroll_iter): Removed unused decl.
11131 * unroll.c (unroll_loop): Remove code to set loop_unroll_iter.
11132 Always record the unrolling factor.
11133
cb3bb2a7
JL
11134 * cse.c (simplify_relational_operation): Set h0u just like h0s.
11135 Similarly for h1u and h1s.
11136
d5ff3a2e 11137 * flow.c (jmp_uses_reg_or_mem): Deleted unused function.
2a1777af
JL
11138 (find_basic_blocks): Use computed_jump_p to determine if a
11139 particular JUMP_INSN is a computed jump.
11140 * reg-stack.c (find_blocks): Use computed_jump_p to determine
11141 if a particular JUMP_INSN is a computed jump.
11142 * rtlanal.c (jmp_uses_reg_or_mem): New function.
11143 (computed_jump_p): Likewise.
11144 * rtl.h (computed_jump_p): Declare.
11145 * genattrtab.c (pc_rtx): Define and initialize.
11146 * loop.c (loop_optimize): Always determine if the current
11147 function has a computed jump.
11148 (indirect_jump_in_function_p): Use computed_jump_p to determine
11149 if a particular JUMP_INSN is a computed jump.
11150
7014927a
JL
11151 * loop.c (fix_bct_param): Delete unused function.
11152 (check_bct_param): Likewise.
11153
6d53d7c2
JM
11154Sat Sep 20 16:22:06 1997 Jason Merrill <jason@yorick.cygnus.com>
11155
11156 * frame.c (__deregister_frame): Check properly for initialized object.
11157
5a5e9503 11158Fri Sep 19 20:51:03 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
71e4fbe6
L
11159
11160 * alpha/linux.h (HANDLE_SYSV_PRAGMA): Defined.
11161
272299b9
R
11162Fri Sep 19 18:53:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
11163
cc5e1642
R
11164 * jump.c (thread_jumps): check can_reverse_comparison_p before
11165 threading a reversed-condition jump.
11166
272299b9
R
11167 * sched.c (update_flow_info): Don't pass SCRATCH to dead_or_set_p.
11168 * haifa-sched.c (update_flow_info): Likewise.
11169
18511014
JL
11170Thu Sep 18 21:13:40 1997 Jeffrey A Law (law@cygnus.com)
11171
e6493727
JL
11172 * Makefile.in (BOOT_CFLAGS): Use -O2.
11173
1e467e19
JL
11174 * configure.in (strtoul, bsearch): Have autoconf check for these
11175 functions.
11176 * configure, config.in: Rebuilt.
11177
18511014
JL
11178 * m68k/xm-mot3300.h (alloca): Properly declare if __STDC__.
11179 * mips/mips.h (alloca): Likewise.
11180 * rs6000/xm-rs6000.h (alloca): Likewise.
11181 * rs6000/xm-sysv4.h: Likewise.
11182
6020d360
JM
11183Thu Sep 18 14:22:22 1997 Jason Merrill <jason@yorick.cygnus.com>
11184
11185 * final.c (final_scan_insn): Hand BARRIERs off to the dwarf2 code.
11186 * dwarf2out.c (dwarf2out_frame_debug): Pass the whole insn along.
11187 (dwarf2out_stack_adjust): A BARRIER resets the args space to 0.
11188
11189 * except.c (end_eh_unwinder): Subtract 1 from return address.
11190 * libgcc2.c (__throw): Likewise.
11191 (find_exception_handler): Don't change PC here. Compare end with >.
11192
b24bcfb3 11193Thu Sep 18 10:43:07 1997 Nick Clifton <nickc@cygnus.com>
b57062ca 11194
b24bcfb3
NC
11195 * v850.c (compute_register_save_size): Correct register
11196 number.
11197 * v850.md (save_interrupt, return_interrupt): Correct
11198 register number.
11199 * v850/lib1funcs.asm (save_interrupt): Correct register number.
11200 (return_interrupt): Use stack pointer, not element pointer.
11201
93cf819d
BK
112021997-09-18 Brendan Kehoe <brendan@lisa.cygnus.com>
11203
11204 * configure.in, configure: Make sure to create the stage* and include
11205 symbolic links in each subdirectory.
11206
f0501149
JL
11207Thu Sep 18 01:47:06 1997 Jeffrey A Law (law@cygnus.com)
11208
11209 * pa.md (reload_peepholes): Don't allow addresses with side
11210 effects for the memory operand.
11211
4f870c04
JM
11212Wed Sep 17 18:19:53 1997 Jason Merrill <jason@yorick.cygnus.com>
11213
11214 * libgcc2.c (find_exception_handler): Subtract one from our PC when
11215 looking for a handler, to avoid hitting the beginning of the next
11216 region.
11217
11218 * except.c (expand_builtin_set_return_addr_reg): Use force_operand.
11219
4eb66248
JL
11220Wed Sep 17 18:33:59 1997 Jeffrey A Law (law@cygnus.com)
11221
11222 * mips/abi64.h (LONG_MAX_SPEC): Define.
11223 * mips.h (LONG_MAX_SPEC): Define.
11224 (CPP_SPEC): Include long_max_spec.
11225 (EXTRA_SPECS): Include long_max_spec.
11226
44158507
JL
11227Wed Sep 17 14:11:38 1997 Jeffrey A Law (law@cygnus.com)
11228
11229 * v850.c (construct_save_jarl): Fix thinko in last change.
11230
bf520cd9
JL
11231Wed Sep 17 09:53:07 1997 Jeffrey A Law (law@cygnus.com)
11232
11233 * version.c: Bump for snapshot.
11234
255fe733
JM
11235Tue Sep 16 14:22:36 1997 Jason Merrill <jason@yorick.cygnus.com>
11236
c0727e2a
JM
11237 * libgcc2.c (find_exception_handler): Not found is -1.
11238
255fe733
JM
11239 * integrate.c (expand_inline_function): Move expand_start_bindings
11240 after expanding the arguments.
11241
21002281
JW
11242Tue Sep 16 11:13:46 1997 Jim Wilson <wilson@cygnus.com>
11243
11244 * expr.c (expand_expr): Remove previous incorrect change.
11245 If target and slot has no DECL_RTL, then call mark_addressable
11246 again for the slot after we give it RTL.
11247
e693cc28 11248Tue Sep 16 09:18:52 1997 Jason Merrill (jason@cygnus.com)
f633220c 11249
e693cc28
UD
11250 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
11251 again for the slot after we give it RTL.
f633220c 11252
145870b5
NC
11253Tue Sep 16 00:13:20 1997 Nick Clifton <nickc@cygnus.com>
11254
84e75068 11255 * v850.c (register_is_ok_for_epilogue,
145870b5
NC
11256 pattern_is_ok_for_epilogue, construct_restore_jr,
11257 pattern_is_ok_for_prologue, construct_save_jarl): New functions.
11258
84e75068 11259 * v850.h (pattern_is_ok_for_prologue,
145870b5
NC
11260 pattern_is_ok_for_epilogue, register_is_ok_for_epilogue): New
11261 predicates.
11262
84e75068 11263 * v850.md: Replace prologue and epilogue patterns with a
145870b5
NC
11264 match_parallel pattern.
11265
76143254
JL
11266Mon Sep 15 22:53:01 1997 Jeffrey A Law (law@cygnus.com)
11267
11268 * aclocal.m4: Add replacement for AC_PROG_INSTALL.
11269 * configure.in: Use EGCS_PROG_INSTALL.
11270
4401bf24
JL
11271Mon Sep 15 22:40:55 1997 Jim Wilson (wilson@cygnus.com)
11272
11273 * dwarf2out.c (gen_subprogram_die): Handle redefinition of an
11274 extern inline function.
11275
11276Mon Sep 15 22:40:55 1997 Richard Henderson (rth@cygnus.com)
11277
11278 * dwarf2out.c (reg_loc_descriptor): Fix prototype.
11279 (concat_loc_descriptor): New function.
11280 (loc_descriptor): Call it.
11281 (add_AT_location_description): Also elide the descriptor if both
11282 halves of a CONCAT are pseudos.
11283 (add_location_or_const_value_attribute): Recognize CONCAT too.
11284
0d24ff5d
RH
11285Mon Sep 15 15:24:00 1997 Richard Henderson <rth@cygnus.com>
11286
4bb43724
RH
11287 * alpha.md (movdi): Handle CONST_DOUBLE for TARGET_BUILD_CONSTANTS.
11288
0d24ff5d
RH
11289 * alpha/alpha.c (output_prolog): New variable sa_reg. Use it for
11290 out-or-range reg_offset.
11291 (output_epilog): Likewise.
11292
05ef8897
JL
11293Mon Sep 15 15:39:26 1997 Jeffrey A Law (law@cygnus.com)
11294
11295 * cse.c (simplify_relational_operation): If MODE specifies a
11296 mode wider than HOST_WIDE_INT, then the high word of a CONST_INT
11297 is derived from the sign bit of the low word.
11298
ca55abae
JM
11299Mon Sep 15 11:43:38 1997 Jason Merrill <jason@yorick.cygnus.com>
11300
11301 Support dwarf2 unwinding on PUSH_ROUNDING targets like the x86.
11302
11303 * dwarf2.h: Add DW_CFA_GNU_args_size.
11304 * frame.c (execute_cfa_insn): Likewise.
11305 * dwarf2out.c (dwarf_cfi_name, output_cfi): Likewise.
11306 (dwarf2out_args_size, dwarf2out_stack_adjust): New fns.
11307 (dwarf2out_frame_debug): If this isn't a prologue or epilogue
11308 insn, hand it off to dwarf2out_stack_adjust.
11309 (dwarf2out_begin_prologue): Initialize args_size.
11310 * frame.h (struct frame_state): Add args_size.
11311 * libgcc2.c (__throw): Use args_size.
11312 * final.c (final_scan_insn): If we push args, hand off all insns
11313 to dwarf2out_frame_debug.
11314 * defaults.h (DWARF2_UNWIND_INFO): OK for !ACCUMULATE_OUTGOING_ARGS.
11315
11316 * dwarf2out.c dwarf2out_frame_debug): Fix typo.
11317 Handle epilogue restore of SP from FP.
b57062ca 11318 * emit-rtl.c (gen_sequence): Still generate a sequence if the
ca55abae
JM
11319 lone insn has RTX_FRAME_RELATED_P set.
11320
11321 * frame.c (extract_cie_info): Handle "e" augmentation.
11322 * dwarf2out.c (ASM_OUTPUT_DWARF_*): Provide definitions in the
11323 absence of UNALIGNED_*_ASM_OP.
11324 (UNALIGNED_*_ASM_OP): Only provide defaults if OBJECT_FORMAT_ELF.
11325 (output_call_frame_info): Use "e" instead of "z" for augmentation.
11326 Don't emit augmentation fields length.
11327 (dwarf2out_do_frame): Move outside of #ifdefs.
11328 * defaults.h (DWARF2_UNWIND_INFO): Don't require unaligned data
11329 opcodes.
11330
11331 * sparc.h (UNALIGNED_INT_ASM_OP et al): Don't define here after all.
11332 * sparc/sysv4.h (UNALIGNED_INT_ASM_OP): Define here.
11333 * sparc/sunos4.h (DWARF2_UNWIND_INFO): Define to 0.
11334 * sparc/sun4gas.h: New file.
11335 * configure.in: Use sun4gas.h if SunOS 4 --with-gnu-as.
11336
b57062ca 11337 * collect2.c (write_c_file_stat, write_c_file_glob): Declare
ca55abae
JM
11338 __register_frame_table and __deregister_frame.
11339
1d77fa53
BK
113401997-09-15 Brendan Kehoe <brendan@cygnus.com>
11341
11342 * except.c (find_exception_handler_labels): Use xmalloc instead of
11343 alloca, since MAX_LABELNO - MIN_LABELNO can be more than 1 million
11344 in some cases.
11345
8be52aaa
JL
11346Sun Sep 14 21:01:23 1997 Jeffrey A Law (law@cygnus.com)
11347
11348 * Makefile.in: Various changes to build info files
11349 in the object tree rather than the source tree.
11350
a3ee3246
JL
11351Sun Sep 14 12:24:30 1997 Jeffrey A Law (law@cygnus.com)
11352
11353 * fixinc.math: New file to fix math.h on some systems.
11354 * configure.in (freebsd, netbsd): Use fixinc.math on these
11355 systems.
11356 * configure: Rebuilt.
11357
124da275
JL
11358Sun Sep 14 11:11:05 1997 Jeffrey A Law (law@cygnus.com)
11359
11360 * regmove.c (regmove_optimize): If we end up moving the
11361 original insn due to lifetime overlaps, make sure to move
11362 REG_NOTES too.
11363
fca9d4b0
MH
11364Sat Sep 13 15:51:11 1997 Manfred Hollstein <manfred@s-direktnet.de>
11365
11366 * Makefile.in (INSTALL_{PROGRAM,DATA}): Use value found by configure.
11367
326ee7a3
JL
11368Sat Sep 13 12:57:26 1997 Jeffrey A Law (law@cygnus.com)
11369
11370 * haifa-sched.c (add_branch_dependences): Make each insn in
11371 a SCHED_GROUP_P block explicitly depend on the previous insn.
11372
ca55abae
JM
11373Fri Sep 12 13:49:58 1997 Jason Merrill <jason@yorick.cygnus.com>
11374
11375 * except.h: Prototype dwarf2 hooks.
11376 * expr.c: Adjust.
11377
5188d2b2
JW
11378Thu Sep 11 17:43:55 1997 Jim Wilson <wilson@cygnus.com>
11379
11380 * configure.in (native_prefix): Delete.
11381 (mips-dec-netbsd): Don't set prefix.
11382 (*linux*): Don't set prefix.
11383
2e384318
FF
11384Thu Sep 11 15:48:32 1997 Fred Fish <fnf@ninemoons.com>
11385
70988851
FF
11386 * protoize.c: Include <varargs.h> only if HAVE_VARARGS_H is
11387 defined. If not defined, include <sys/varargs.h> if
11388 HAVE_SYS_VARARGS_H is defined.
11389 * configure.in: Test for varargs.h and sys/varargs.h.
11390 * configure: Regenerate with autoconf.
11391 * config.in: Regenerate with autoheader.
11392
2e384318
FF
11393 * cpplib.c (quote_string): Cast first arg of sprintf call
11394 from "unsigned char *" to "char *".
11395 (output_line_command): Ditto.
11396 (macroexpand): Ditto.
11397 (do_line): Cast atoi arg from "unsigned char *" to "char *".
11398
3fb2f401
JL
11399Wed Sep 10 21:37:30 1997 Jeffrey A Law (law@cygnus.com)
11400
f2e4e16f
JL
11401 * version.c: Bump for snapshot.
11402
3fb2f401
JL
11403 * Makefile.in (compare): Exit with nonzero status if there
11404 are comparison failures. Note which files failed the
11405 comparison test in .bad_compare.
11406
d26cb668
L
11407Wed Sep 10 17:05:46 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
11408
11409 * config/alpha/elf.h (CPP_PREDEFINES): Remove -D__PIC__ -D__pic__.
11410
ac64120e
JW
11411Wed Sep 10 16:37:28 1997 Fred Fish <fnf@ninemoons.com>
11412
11413 * Makefile.in (LN, LN_S): New macros, use where appropriate.
11414 * aclocal.m4 (GCC_PROG_LN_S, GCC_PROG_LN): New tests.
11415 * configure.in: Use GCC_PROG_LN_S and GCC_PROG_LN.
11416 * configure: Regenerated.
11417
11418Thu Sep 11 11:09:43 1997 Jeffrey A Law (law@cygnus.com)
11419
11420 * loop.c (strength_reduce): Fix typo.
11421
db87ec0b
JW
11422Wed Sep 10 16:01:15 1997 Jim Wilson <wilson@cygnus.com>
11423
11424 * m88k/m88k.c (struct option): Rename to struct options.
11425 * m88k/dolph.h (INITIALIZE_TRAMPOLINE): Delete here.
11426 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE): Delete ifdef and comments.
11427 * libgcc2.c (__enable_execute_stack): Check for __sysV88__ not
11428 __DOLPHIN__ or sysV88.
11429
04395f96
JW
11430Wed Sep 10 14:58:40 1997 Jim Wilson <wilson@cygnus.com>
11431
11432 * emit-rtl.c (gen_lowpart_common): For a SUBREG, add in word when
11433 create new subreg.
11434
becdcf6d
JL
11435Wed Sep 10 15:19:22 1997 Jeffrey A Law (law@cygnus.com)
11436
11437 * config.sub: Accept 'amigados' for backward compatability.
11438
04395f96 11439Wed Sep 10 14:05:08 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
3979dfb8
JW
11440
11441 * Makefile.in (testsuite/site.exp): New target.
11442 (check-gcc, check-g++): Depend on testsuite/site.exp.
11443 Don't stop for failure.
11444
ca55abae
JM
11445Wed Sep 10 12:59:57 1997 Jason Merrill <jason@yorick.cygnus.com>
11446
11447 * expr.c (expand_builtin): Only support __builtin_dwarf_fp_regnum()
11448 if DWARF2_UNWIND_INFO.
11449
11450Wed Sep 10 11:49:20 1997 Jason Merrill <jason@yorick.cygnus.com>
11451
11452 Add support for exception handling using DWARF 2 frame unwind info.
11453 Currently works on SPARC and MIPS, and almost on x86.
b57062ca 11454
ca55abae
JM
11455 * libgcc2.c (get_reg, put_reg, get_return_addr, put_return_addr,
11456 next_stack_level, in_reg_window): Helper fns.
11457 (__throw): Implement for DWARF2_UNWIND_INFO.
11458
11459 * expr.c (expand_builtin): Handle builtins used by __throw.
11460 * tree.h (enum built_in_function): Add builtins used by __throw.
11461 * c-decl.c (init_decl_processing): Declare builtins used by __throw.
11462 * dwarf2out.c (expand_builtin_dwarf_fp_regnum): Used by __throw.
11463 * except.c (expand_builtin_unwind_init): Hook for dwarf2 __throw.
11464 (expand_builtin_extract_return_addr): Likewise.
11465 (expand_builtin_frob_return_addr): Likewise.
11466 (expand_builtin_set_return_addr_reg): Likewise.
11467 (expand_builtin_eh_stub): Likewise.
11468 (expand_builtin_set_eh_regs): Likewise.
11469 (eh_regs): Choose two call-clobbered registers for passing back values.
11470
11471 * frame.c, frame.h: New files for parsing dwarf 2 frame info.
11472 * Makefile.in (LIB2ADD): New variable. Add $(srcdir)/frame.c.
11473 (libgcc2.a): Use it instead of $(LIB2FUNCS_EXTRA) $(LANG_LIB2FUNCS)
11474 (stmp-multilib): Likewise.
11475 ($(T)crtbegin.o, $(T)crtend.o): Add -fno-exceptions.
11476
11477 * except.c: #include "defaults.h".
11478 (exceptions_via_longjmp): Default depends on DWARF2_UNWIND_INFO.
11479 (emit_throw): Don't defeat assemble_external if DWARF2_UNWIND_INFO.
11480 (register_exception_table_p): New fn.
11481 (start_eh_unwinder): Don't do anything if DWARF2_UNWIND_INFO.
11482 (end_eh_unwinder): Likewise.
11483
b57062ca 11484 * crtstuff.c: Wrap .eh_frame section, use EH_FRAME_SECTION_ASM_OP,
ca55abae
JM
11485 call __register_frame and __deregister_frame as needed.
11486 * varasm.c (eh_frame_section): New fn if EH_FRAME_SECTION_ASM_OP.
11487 * dwarf2out.c (EH_FRAME_SECTION): Now a function-like macro. Check
11488 EH_FRAME_SECTION_ASM_OP.
11489 * sparc/sysv4.h (EH_FRAME_SECTION_ASM_OP): Define.
11490 * mips/iris6.h: (EH_FRAME_SECTION_ASM_OP): Define.
11491 (LINK_SPEC): Add __EH_FRAME_BEGIN__ to hidden symbols.
11492
11493 * dwarf2out.c (output_call_frame_info): If no support for
11494 EXCEPTION_SECTION, mark the start of the frame info with a
11495 collectable tag.
11496 * collect2.c (frame_tables): New list.
11497 (is_ctor_dtor): Recognise frame entries.
11498 (scan_prog_file): Likewise.
11499 (main): Pass -fno-exceptions to sub-compile. Also do collection
11500 if there are any frame entries.
11501 (write_c_file_stat): Call __register_frame_table and
11502 __deregister_frame as needed.
11503 (write_c_file_glob): Likewise.
11504
b57062ca 11505 * defaults.h (DWARF2_UNWIND_INFO): Default to 1 if supported.
ca55abae
JM
11506 Also require unaligned reloc support.
11507 * sparc.h (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
11508 UNALIGNED_DOUBLE_INT_ASM_OP): Define here.
11509 * sparc/sysv4.h: Not here.
11510
11511 * toplev.c (compile_file): Call dwarf2out_frame_{init,finish}.
11512 * dwarf2out.c (dwarf2out_init): Don't call dwarf2out_frame_init.
11513 (dwarf2out_finish): Don't call dwarf2out_frame_finish.
11514
11515 * libgcc2.c (L_eh): Reorganize, moving code shared by different
11516 EH implementations to the top.
11517 (find_exception_handler): Split out. Start from 0. Compare against
11518 end with >=.
11519 (__find_first_exception_table_match): Use it.
11520 * except.c (output_exception_table): Don't do anything if there's
11521 no table. Don't output a first entry of zeroes.
11522 (eh_outer_context): Adjust properly.
11523 (add_eh_table_entry): Use xrealloc.
11524 * toplev.c (compile_file): Just call output_exception_table.
11525
11526Wed Sep 10 11:30:36 1997 Jason Merrill <jason@cygnus.com>
11527
11528 * i386.c (ix86_prologue): Add dwarf2 support for !do_rtl case.
11529
11530Wed Sep 10 08:17:10 1997 Torbjorn Granlund <tege@pdc.kth..se>
11531
11532 * except.c (eh_outer_context): Do masking using expand_and.
11533
b4d940a2
JL
11534Wed Sep 10 01:38:30 1997 Doug Evans <dje@cygnus.com>
11535
11536 Add port done awhile ago for the ARC cpu.
11537 * arc/arc.h: New file.
11538 * arc/arc.c: New file.
11539 * arc/arc.md: New file.
11540 * arc/initfini.c: New file.
11541 * arc/lib1funcs.asm: New file.
11542 * arc/t-arc: New file.
11543 * arc/xm-arc.h: New file.
11544 * ginclude/va-arc.h: New file.
11545 * ginclude/stdarg.h: Include va-arc.h ifdef __arc__.
11546 * ginclude/varargs.h: Likewise.
11547 * Makefile.in (USER_H): Add va-arc.h.
11548 * configure.in (arc-*-elf*): Recognize.
11549 * longlong.h: Add ARC support.
11550
11551Wed Sep 10 01:32:54 1997 Jeffrey A Law (law@cygnus.com)
11552
11553 * expr.c (clear_storage): Use CONST0_RTX instead of const0_rtx.
11554 when clearing non-BLKmode data.
11555
10211581
JL
11556Wed Sep 10 00:29:29 1997 Manfred Hollstein <manfred@s-direktnet.de>
11557
9dfc6eba
MH
11558 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE) Define.
11559 * libgcc2.c (__enable_execute_stack): Provide for sysV88 too.
11560
55259219
MH
11561 * xm-m88k.h (USG): Only define if it hasn't already been defined.
11562
11563 * Makefile.in (risky-stage1): Delete gratutious whitespace.
11564
ee291069
MH
11565 * Makefile.in (clean): Delete libgcc1-test.
11566
10211581
JL
11567 * Makefile.in (INSTALL): cd to $(srcdir) before running texinfo.
11568
11569Tue Sep 9 17:07:36 1997 Stan Cox <coxs@dg-rtp.dg.com>
48f0be1b
SC
11570
11571 * m88k.c (m88k_expand_prologue): Set MEM_IN_STRUCT_P of va_list
11572 template.
11573
ca55abae
JM
11574Tue Sep 9 09:50:02 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
11575
11576 * dwarf2out.c (output_call_frame_info): Call named_section.
11577
8f3d79e0
JL
11578Tue Sep 9 09:12:17 1997 Jeffrey A Law (law@cygnus.com)
11579
11580 * haifa-sched.c (print_value): Fix last change.
11581
ca55abae
JM
11582Tue Sep 9 01:30:37 1997 Jason Merrill <jason@yorick.cygnus.com>
11583
11584 * mips.h (DWARF_FRAME_REGNUM): Use the same numbering regardless of
11585 write_symbols.
11586
11587Mon Sep 8 16:32:43 1997 Jason Merrill <jason@yorick.cygnus.com>
11588
11589 * mips.c (function_prologue): Set up the CFA when ABI_32.
11590
11591 * sparc.c (save_regs): Check dwarf2out_do_frame instead of DWARF2_DEBUG
11592 for dwarf2 unwind info.
11593 (output_function_prologue, sparc_flat_output_function_prologue): Same.
11594
11595 * final.c (final_end_function): Check dwarf2out_do_frame instead
11596 of DWARF2_DEBUG for dwarf2 unwind info.
11597 (final_scan_insn): Likewise.
11598 (final_start_function): Likewise. Initialize dwarf2 frame debug here.
11599 (final): Not here.
11600
11601 * expr.c (expand_builtin_return_addr): Only SETUP_FRAME_ADDRESSES if
11602 count > 0.
11603
11604 * varasm.c (exception_section): Check EXCEPTION_SECTION first.
11605
74aca74b
NC
11606Mon Sep 8 15:15:11 1997 Nick Clifton <nickc@cygnus.com>
11607
11608 * v850.h (ASM_SPEC): Pass on target processor.
11609 (CPP_PREDEFINES): Only define if not already specified.
11610 (TARGET_VERSION): Only define if not already specified.
11611 (MASK_CPU, MASK_V850, MASK_DEFAULT): Bits to specify target
11612 processor.
11613 (EXTRA_SWITCHES): Extra entries in the switches array.
11614 (TARGET_DEFAULT): Set default target processor.
11615
c0b04148
JW
11616Mon Sep 8 18:26:35 1997 Jim Wilson <wilson@cygnus.com>
11617
11618 * m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): In MOTOROLA
11619 cases, add %# and %/, and add : to make them into extended asms.
11620
52b7724b
WL
11621Sun Sep 7 23:57:50 1997 Weiwen Liu <liu@hepunix.physics.yale.edu>
11622
11623 * alias.c (init_alias_analysis): Clean up incompatible pointer
11624 type warning in bzero.
11625 * regmove.c (regmove_optimize): Ditto.
11626 * haifa-sched.c (find_rgns): Ditto.
11627
11628 * haifa-sched.c (print_value): Clean up ptr->int cast
11629 warnings.
11630
0c82f6bf
FF
11631Sun Sep 7 23:18:32 1997 Fred Fish <fnf@ninemoons.com>
11632
11633 * INSTALL: Change 'amigados' to 'amigaos' to match current usage.
11634 * install.texi (Configurations): Ditto.
11635 * config.sub: Ditto.
11636
1fed1f51
WL
11637Sun Sep 7 22:56:56 1997 Weiwen Liu (liu@hepvms.physics.yale.edu)
11638
11639 * Makefile.in (sdbout.o): Depend on insn-config.h.
11640
239e68f6
JW
11641Sun Sep 7 18:44:50 1997 Jim Wilson <wilson@cygnus.com>
11642
11643 * m68k/m68k.h (TARGET_SWITCHES): For 68000, 68302, subtract MASK_68881.
11644 For 68303, 68332, cpu32, subtract MASK_68040_ONLY.
11645
267c09ab
JM
11646Sun Sep 7 18:30:46 1997 Jason Merrill <jason@yorick.cygnus.com>
11647
11648 * dwarf2out.c (dwarf2out_frame_debug): Assume that in a PARALLEL
11649 prologue insn, only the first elt is significant.
11650 (output_call_frame_info): For exception handling, always use 4-byte
11651 fields as specified by the dwarf2 spec.
11652 Don't skip trivial FDEs.
11653
db7cafb0
JL
11654Sun Sep 7 14:19:39 1997 Jeffrey A Law (law@cygnus.com)
11655
11656 * version.c: Bump for snapshot.
11657
11658Sun Sep 7 14:17:36 1997 Torbjorn Granlund (tege@pdc.kth.se)
11659
11660 * expmed.c (expand_divmod): Make op1_is_pow2 depend on unsignedp
11661 for negative constants. Promote EXACT_DIV_EXPR to TRUNC_DIV_EXPR
11662 when op1_is_pow2.
11663
11664Sun Sep 7 13:46:46 1997 Jeffrey A Law (law@cygnus.com)
11665
bf520cd9
JL
11666 * final.c (shorten_branches): During first pass, assume worst
11667 possible alignment for ADDR_VEC and ADDR_VEC_DIFF insns.
db7cafb0
JL
11668
11669 * Makefile.in (distclean): Remove various things left around
11670 by running the testsuite.
11671
7ed46111
MH
11672Sun Sep 7 13:16:06 1997 Manfred Hollstein <manfred@s-direktnet.de>
11673
11674 * configure.in (out_file): Emit definition to config.status in order
11675 to have a defined value for configure.lang.
11676 * configure: Re-built.
11677
e41cea70
JJH
11678Sun Sep 7 09:59:08 1997 Jan-Jaap van der Heijden (J.J.vanderHeijden@student.utwente.nl)
11679
bf520cd9 11680 * configure.in: Make symlink to as-new rather than as.new. Similarly
e41cea70
JJH
11681 for ld-new.
11682 * configure: Rebuilt.
11683
1aeb1f6f
JW
11684Fri Sep 5 16:54:55 1997 Jim Wilson <wilson@cygnus.com>
11685
11686 * profile.c (output_func_start_profiler): Set DECL_EXTERNAL to zero.
11687
770a0113
CK
11688Fri Sep 5 16:16:44 1997 Christian Kuehnke <Christian.Kuehnke@arbi.Informatik.Uni-Oldenburg.DE>
11689
11690 * sparc/sparc.md: Add ultrasparc scheduling support.
11691 * sparc/sparc.h (RTX_COSTS): For MULT give v9 a cost of 25 insns.
11692
f5ffa999
PDM
11693Fri Sep 5 14:04:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
11694
11695 * integrate.c (save_for_inline_copying): Use 0, not NULL_PTR,
11696 as initial value for real_label_map.
11697 (copy_for_inline): Likewise.
11698
acceac1a
R
11699Fri Sep 5 13:36:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
11700
11701 * sched.c (update_flow_info) When looking if to set found_split_dest
11702 or found_orig_dest, look at all parts of a PARALLEL.
11703 * haifa-sched.c (update_flow_info): Likewise.
11704
f84271d9
JL
11705Fri Sep 5 10:08:44 1997 Jeffrey A Law (law@cygnus.com)
11706
11707 * v850: New directory for v850 port.
11708 * v850/lib1funcs.asm: New file.
11709 * t-v850, v850.c, v850.h, v850.md, xm-v850.h: New files.
11710 * ginclude/va-v850.h: New file.
11711 * ginclude/varargs.h, ginclude/stdarg.h: Include va-mn10200.h.
11712 * configure.in (mn10200-*-*): New target.
11713 * configure: Rebuilt.
11714 * config.sub: Handle v850-elf.
b57062ca 11715 * Makefile.in (USER_H): Add va-mn10200.h.
f84271d9
JL
11716 * invoke.texi: Document v850 stuff.
11717
89cc6098
JW
11718Fri Sep 5 09:37:50 1997 Jim Wilson (wilson@cygnus.com)
11719
04940ba5
JW
11720 * sdbout.c (plain_type_1, case ARRAY_TYPE): Verify that TYPE_DOMAIN
11721 has integer TYPE_{MAX,MIN}_VALUE before using them.
11722
89cc6098
JW
11723 * m68k/m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Add
11724 __HPUX_ASM__ versions.
11725
c74f7db8
JL
11726Fri Sep 5 09:08:44 1997 Jeffrey A Law (law@cygnus.com)
11727
bf520cd9 11728 * install.sh: Delete duplicate install script.
c74f7db8 11729
914ec131
SC
11730Thu Sep 4 23:14:27 1997 Stan Cox (coxs@dg-rtp.dg.com)
11731
11732 * reg-stack.c (subst_stack_regs): Pop the stack register for a
11733 computed goto which sets the same stack register.
11734
11735 * reg-stack.c (compare_for_stack_reg): Swap only if the source and
11736 destination are both on the regstack.
11737 (subst_stack_regs_pat): Put the destination at the top of the regstack.
11738
c1090daa
JW
11739Thu Sep 4 15:02:27 1997 Jim Wilson <wilson@cygnus.com>
11740
d5d1738a
JW
11741 * mips.md (nonlocal_goto_receiver): Define.
11742
f4da7881
JW
11743 * profile.c (output_arc_profiler): Check next_insert_after for non
11744 NULL before deferencing it.
11745
c1090daa
JW
11746 * i386/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define to -fPIC.
11747
da594c94
JL
11748Thu Sep 4 14:51:57 1997 Jeffrey A Law (law@cygnus.com)
11749
11750 * i386.h (CPP_CPU_DEFAULT): Avoid using #elif.
11751
3e28fe44
MM
11752Thu Sep 4 15:01:49 1997 Michael Meissner <meissner@cygnus.com>
11753
11754 * toplev.c (rest_of_compilation): For passes starting with
11755 flow_analysis, use print_rtl_with_bb instead of print_rtl.
11756
11757 * print-rtl.c (print_rtl_single): Print a single rtl value to a
11758 file.
11759
11760 * flow.c (print_rtl_with_bb): Print which insns start and end
11761 basic blocks. For the start of a basic block, also print the live
11762 information.
11763
7053ca72
JW
11764Thu Sep 4 11:51:43 1997 Jim Wilson <wilson@cygnus.com>
11765
417b0fa2
JW
11766 * toplev.c (main): Change #elif to #else/#ifdef
11767
7053ca72
JW
11768 * tlink.c: Include ctype.h.
11769 * ginclude/va-mips.h: Add _VA_MIPS_H_ENUM ifdef/define/endif.
11770
f05a8b25
MM
11771Thu Sep 4 11:17:16 1997 Mikeael Meissner (meissner@cygnus.com)
11772
11773 * bitmap.c: Conditionally include stdlib.h.
bf520cd9 11774 (free): Provide a declaration if NEED_DECLARATION_FREE.
f05a8b25 11775
02d7a569
JS
11776Thu Sep 4 09:58:53 1997 Joel Sherrill (joel@OARcorp.com)
11777
11778 * i960/i960.h: Added default for SUBTARGET_SWITCHES macro.
11779
6030b6af
JW
11780Thu Sep 4 09:53:20 1997 Jim Wilson (wilson@cygnus.com)
11781
11782 * profile.c (output_arc_profiler): Verify next_insert_after is an
11783 INSN before and after skipping a stack pop.
11784
04da53bd
R
11785Thu Sep 4 07:39:19 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
11786
11787 * final.c (shorten_branches): Don't count the lengths of deleted
11788 instructions.
11789
780532a4
JL
11790Thu Sep 4 09:43:01 1997 Jeffrey A Law (law@cygnus.com)
11791
11792 * version.c: Bump for snapshot.
11793
22fa5b8a
MM
11794Thu Sep 4 11:04:21 1997 Michael Meissner <meissner@cygnus.com>
11795
11796 * bitmap.h (EXECUTE_IF_AND_IN_BITMAP): New macro, to iterate over
11797 two bitmaps ANDed together.
11798 (bitmap_print): Declare.
11799
11800 * bitmap.c (function_obstack): Don't declare any more.
11801 (bitmap_obstack): Obstack for allocating links from.
11802 (bitmap_obstack_init): New static to say whether to initialize
11803 bitmap_obstack.
11804 (bitmap_element_allocate): Use bitmap_obstack to allocate from.
11805 (bitmap_release_memory): Free all memory allocated from
11806 bitmap_obstack.
11807
11808 * basic-block.h (EXECUTE_IF_AND_IN_REG_SET): New macro, invoke
11809 EXECUTE_IF_AND_IN_BITMAP.
11810
57163df0
JW
11811Wed Sep 3 10:39:42 1997 Jim Wilson <wilson@cygnus.com>
11812
fa8b6024
JW
11813 * alias.c (true_dependence): Address with AND can alias scalars.
11814 (anti_dependence, output_dependence): Likewise.
b57062ca 11815
57163df0
JW
11816 * alias.c (true_dependence): Test x for BLKmode, in addition to mem.
11817
8aa4e786
JS
11818Wed Sep 3 09:28:50 CDT 1997 Joel Sherrill (joel@OARcorp.com)
11819
11820 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h, m68k/rtems.h,
11821 mips/rtems64.h, pa/rtems.h, rs6000/rtems.h, sh/rtems.h,
11822 sparc/rtems.h (subtarget_switches): Removed SUBTARGET_SWITCHES
11823 definitions. Use -qrtems instead of -mrtems.
11824
feb21122
RL
11825Wed Sep 3 09:05:41 1997 Robert Lipe (robert@dgii.com)
11826
11827 * xm-sco5.h (sys_siglist): Define.
11828 (SYS_SIGLIST_DECLARED): Likewise.
11829
704af6a1
JL
11830Tue Sep 2 23:33:33 1997 Jeffrey A Law (law@cygnus.com)
11831
11832 * expr.c (convert_move): Handle truncation from TQFmode to QFmode.
11833
127cd405
TG
11834Wed Sep 3 02:09:30 1997 Torbjorn Granlund <tege@pdc.kth..se>
11835
11836 * except.c (eh_outer_context): Expand masking operation using
11837 expand_binop.
11838
8cf02b47
JW
11839Tue Sep 2 18:09:39 1997 Jim Wilson <wilson@cygnus.com>
11840
11841 * alpha.md (floatdisf2-1): New pattern.
11842
49dad301
JL
11843Tue Sep 2 18:41:55 1997 Jeffrey A Law (law@cygnus.com)
11844
068f1cb8
JL
11845 * xm-svr4.h (SYS_SIGLIST_DECLARED): Define.
11846 * xm-news.h (SYS_SIGLIST_DECLARED): Likewise.
f04e7122 11847 * xm-sysv4.h (SYS_SIGLIST_DECLARED): Likewise.
068f1cb8
JL
11848 * gcc.texi: Note that if you define sys_siglist that you should
11849 also define SYS_SIGLIST_DECLARED.
11850
49dad301
JL
11851 * mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instructions
11852 are relative to the next instruction, not the current instruction.
11853
a1729519
JW
11854Tue Sep 2 14:22:43 1997 Jim Wilson <wilson@cygnus.com>
11855
11856 * local-alloc.c (contains_replace_regs): New function.
11857 (update_equiv_regs): When adding a REG_EQUIV note for a set of a MEM,
11858 verify that there is no existing REG_EQUIV note, and add a call to
11859 contains_place_regs.
11860
290c8b1f
L
11861Tue Sep 2 12:48:11 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
11862
11863 * config/alpha/elf.h (CPP_PREDEFINES): Add -D__PIC__ -D__pic__.
11864 (STARTFILE_SPEC): Always use crtbegin.o%s
11865 (ENDFILE_SPEC): Always use crtend.o%s.
11866
a6a503ed
JW
11867Tue Sep 2 12:00:36 1997 Jim Wilson <wilson@cygnus.com>
11868
11869 * alpha/alpha.h (PREFERRED_RELOAD_CLASS): Return NO_REGS if NO_REGS
11870 is passed in.
11871 * emit-rtl.c (gen_lowpart_common): Add code to convert CONST_INT to
11872 SFmode for 64 bit hosts.
b57062ca 11873
a94729bc
PH
11874Tue Sep 2 13:42:38 1997 Paul N. Hilfinger <hilfingr@CS.Berkeley.EDU>
11875
11876 * fixincludes: Permits spaces between # and define. Discard C++
11877 comments in sys/pci.h on HP/UX 10.20.
11878
c9e03727
JL
11879Mon Sep 1 22:13:18 1997 Jeffrey A Law (law@cygnus.com)
11880
11881 * version.c: Bump for snapshot.
11882
2eddfed1
JL
11883 * pa.c (restore_unscaled_index_insn_codes): New function.
11884 (record_unscaled_index_insn_codes): Likewise.
11885 (output_function_prologue): Call restore_unscaled_index_insn_codes.
11886 (output_function_epilogue): Free memory for unscaled_index_insn_codes.
11887 (pa_reorg): Call record_unscaled_index_insn_codes.
11888
c9e03727
JL
11889 * haifa-sched.c (move_insn): Handle notes correctly for insns
11890 with SCHED_GROUP_P set.
b57062ca 11891
a5d6a95b
L
11892Mon Sep 1 16:58:57 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
11893
11894 * alpha/xm-linux.h (USE_BFD): Undef before define.
11895
bc4ddc77
JW
11896Mon Sep 1 16:25:34 1997 Jim Wilson <wilson@cygnus.com>
11897
11898 * cse.c (cse_insn): Don't record BLKmode values.
11899
f3e0ca6c
SW
11900Mon Sep 1 11:25:47 1997 Stephen Williams (steve@icarus.icarus.com)
11901
11902 * i960.h (LINK_SPEC): Handle "-mjX" and "-mrp" switches.
11903
e3512ac2
JL
11904Mon Sep 1 08:29:46 1997 Jeffrey A Law (law@cygnus.com)
11905
a63d08e6
JL
11906 * cccp.c (sys_errlist): Remove special 4.4bsd declaration.
11907 * collect2.c (sys_errlist): Likewise.
11908 * cpplib.c (sys_errlist): Likewise.
11909 * gcc.c (sys_errlist): Likewise.
11910 * protoize (sys_errlist): Likewise.
11911 * configure.in: Check for strerror.
11912 * xm-freebsd.h (HAVE_STRERROR): Remove definition.
11913 * xm-gnu.h (HAVE_STRERROR): Likewise.
11914 * xm-linux.h (HAVE_STRERROR): Likewise.
11915 * xm-netbsd.h (HAVE_STRERROR): Likewise.
11916 * xm-bsd386.h (HAVE_STRERROR): Likewise.
11917 * xm-cygwin32.h (HAVE_STRERROR): Likewise.
11918 * xm-dos.h (HAVE_STRERROR): Likewise.
11919 * xm-mingw32.h (HAVE_STRERROR): Likewise.
11920 * xm-pa.h (HAVE_STRERROR): Likewise.
11921 * xm-papro.h (HAVE_STRERROR): Likewise.
11922 * xm-sysv4.h (HAVE_STRERROR): Likewise.
11923 * configure, config.in: Rebuilt.
11924
db814993
JL
11925 * Makefile.in: Add several missing "else true" clauses.
11926
e3512ac2
JL
11927 * collect2.c: Change DONT_DECLARE_SYS_SIGLIST to SYS_SIGLIST_DECLARED.
11928 * mips-tfile.c: Likewise.
11929 * gcc.texi: DONT_DECLARE_SYS_SIGLIST: Remove docs.
11930 * xm-linux.h (DONT_DECLARE_SYS_SIGLIST): Delete definition.
11931 * xm-freebsd.h, xm-bsd386.h, xm-sysv4.h, xm-sol2.h: Likewise.
11932 * configure.in: Check for sys_siglist declaration.
11933 * configure, config.in: Rebuilt.
11934
5d84b57e
JS
11935Mon Sep 1 08:04:07 1997 Joel Sherrill (joel@OARcorp.com)
11936
b57062ca 11937 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h,
5d84b57e
JS
11938 m68k/rtems.h, mips/rtems64.h, pa/rtems.h, rs6000/rtems.h,
11939 sparc/rtems.h (subtarget_switches): Added -mrtems as a switch.
11940 * i960/i960.h: Added SUBTARGET_SWITCHES macro.
11941 * rs6000/sysv4.h (extra_subtarget_switches): Added new
11942 macro EXTRA_SUBTARGET_SWITCHES.
11943 * configure.in (sh*-*-rtems*): New target.
11944 * sh/rtems.h: New file.
11945 * sh/sh.h: Added SUBTARGET_SWITCHES macro.
11946 * configure: Rebuilt.
11947
2599dcc7
JW
11948Sat Aug 30 22:54:26 1997 Jim Wilson <wilson@cygnus.com>
11949
11950 * unroll.c (calculate_giv_inc): Handle increment with code PLUS.
11951
3b7e5ef4
DE
11952Sat Aug 30 10:49:46 1997 David Edelsohn <edelsohn@mhpcc.edu>
11953
11954 * rs6000.md: Make DF fused-add operations pay attention to
11955 -mno-fused-add.
11956
5cd5f4a7
JW
11957Fri Aug 29 19:19:54 1997 Jim Wilson <wilson@cygnus.com>
11958
11959 * i386/xm-sysv4.h (DONT_DECLARE_SYS_SIGLIST): Define.
11960
63e7fe9b
JL
11961Fri Aug 29 16:13:51 1997 Jeffrey A Law (law@cygnus.com)
11962
11963 * pa.md (reload_peepholes): Make sure operand is a REG before
11964 examining REGNO. Allow general registers too.
11965
eb7b11fd
JW
11966Fri Aug 29 11:42:04 1997 Jim Wilson <wilson@cygnus.com>
11967
11968 * varasm.c (mark_constants): Don't look inside CONST_DOUBLEs.
11969
c760091a
PT
11970Fri Aug 29 09:33:20 1997 Philipp Thomas (kthomas@lxi165.gwdg.de)
11971
5cd5f4a7 11972 * dwarf2out.c (build_abbrev_table): Use xrealloc, not xmalloc
c760091a
PT
11973 to reallocate abbrev_die_table.
11974
57583338
JW
11975Thu Aug 28 15:14:46 1997 Jim Wilson <wilson@cygnus.com>
11976
11977 * m68k/m68k.md (iorsi_zexthi_ashl16): Disable.
11978
eae4b970
AS
119791997-08-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
11980
4f91a0f8
AS
11981 * Makefile.in (config.status): Depend on version.c
11982
eae4b970
AS
11983 * expr.h (insn_gen_function): Reenable prototype.
11984
11985 * expr.c (move_by_pieces_1, clear_by_pieces_1): Fix prototype of
11986 first parameter.
11987
00fc09e1
JW
11988Thu Aug 28 13:01:43 1997 Jim Wilson <wilson@cygnus.com>
11989
11990 * i386.c (ix86_expand_epilogue): Emit blockage instruction when pic.
11991
2601ebca
JL
11992Thu Aug 28 07:03:15 1997 Jeffrey A Law (law@cygnus.com)
11993
11994 * version.c: Bump for latest snapshot.
11995
11996 * bc-optab.c: Conditionally include stdlib.h.
11997 (free): Provide a declaration if NEED_DECLARATION_FREE.
11998 * tree.c (free): Provide a declaration if NEED_DECLARATION_FREE.
11999 * rtl.h (free): Remove declaration.
12000 * tree.h (free): Remvoe declaration.
12001
12002 * configure: Rebuilt.
12003
e5eb27e5
JL
12004Wed Aug 27 21:32:20 1997 Jeffrey A Law (law@cygnus.com)
12005
12006 * flags.h (flag_move_all_movables): Declare.
12007 (flag_reduce_all_givs): Likewise.
12008 * loop.c (move_movables): Handle flag_move_all_movables.
12009 (strength_reduce): Handle flag_reduce_all_givs.
12010 * toplev.c (flag_move_all_movables): Define.
12011 (flag_reduce_all_givs): Likewise.
12012 (f_options): Add -fmove-all-movables and -freduce-all-givs.
12013 * invoke.texi: Document new options, including alias stuff that
12014 wasn't included last time.
12015
d995a6dc
BM
12016Wed Aug 27 18:08:51 1997 Bob Manson (manson@cygnus.com)
12017
12018 * t-h8300: Use TARGET_LIBGCC2_CFLAGS instead of LIBGCC2_CFLAGS.
12019 * t-mn10200: Ditto.
12020 * t-vxsparc: Ditto.
12021 * t-vxworks68: Ditto.
12022 * t-vxworks960: Ditto.
12023 * t-vx29k: Ditto.
12024
ba64ca33
RH
12025Wed Aug 27 16:35:29 1997 Richard Henderson <rth@cygnus.com>
12026
12027 * alpha/xm-alpha.h (alloca): Define alloca to builtin_alloca for GNUC
12028 if not already defined, and USE_C_ALLOCA not defined.
12029
ca20876d
JW
12030Wed Aug 27 16:08:43 1997 Jim Wilson <wilson@cygnus.com>
12031
7818d6fc
JW
12032 * config.guess: Replace with script that uses ../config.guess.
12033
ca20876d
JW
12034 * config/alpha/elf.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1
12035 if USE_GNULIBC_1 is not defined.
12036
704a6306
RH
12037Wed Aug 27 15:49:12 1997 Richard Henderson <rth@cygnus.com>
12038
12039 * alpha/elf.h (LINK_SPEC): Conditionalize on USE_GNULIBC_1.
12040 * config.guess: Recognize alpha-linux-gnulibc1.
12041 * configure.in (alpha-*-linux-gnulibc1): New target.
12042 (alpha-*-linux-gnu*): Don't build crtbegin/end.
12043
67f68fd2
JW
12044Wed Aug 27 11:52:58 1997 Jim Wilson <wilson@cygnus.com>
12045
12046 * m68k.md (iorsi3_internal): Readd ! TARGET_5200 check lost in
12047 last change.
12048
88016fb7
DE
12049Wed Aug 27 01:56:18 1997 Doug Evans <dje@seba.cygnus.com>
12050
12051 * loop.c (combine_movables): Earlier insns don't match later ones.
12052
bba17b29
L
12053Wed Aug 27 01:24:25 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
12054
12055 * config/linux.h (CC1_SPEC): Define it only if not defined.
12056
12057 * config/m68k/linux.h (CC1_SPEC): Undefine it before include
12058 <linux.h>
12059
12060 * config/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1 if
12061 USE_GNULIBC_1 is not defined.
12062
33d2808b 12063 * config/rs6000/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1.
bba17b29
L
12064
12065 * config/sparc/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined
12066 as 1 if USE_GNULIBC_1 is not defined.
12067
ed4044e0
JL
12068Wed Aug 27 00:49:14 1997 Jeffrey A Law (law@cygnus.com)
12069
f345de42
JL
12070 * reorg.c (dbr_schedule): Allow current_function_return_rtx
12071 to be something other than a REG.
12072 * function.c (expand_function_end): Fix current_function_return_rtx
12073 if it was a pseudo.
12074
ed4044e0
JL
12075 * t-freebsd (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
12076 * x-netbsd: Likewise
12077 * x-dgux (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS
12078 (INSTALL_HEADERS): Delete.
12079 * x-dguxbcs: Likewise.
12080 * x-hp3bsd44: Likewise
12081 * x-pa: Likewise.
12082
47d36400
BS
12083Wed Aug 27 00:30:00 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
12084
12085 * i386.md (pop): pop increments the stack pointer.
12086 (prologue_set_stack_ptr): New pattern.
12087 * i386.c (ix86_expand_prologue): Use prologue_set_stack_ptr
12088 instead of subsi3.
12089
fc79eafe
JW
12090Tue Aug 26 18:50:32 1997 Jim Wilson <wilson@cygnus.com>
12091
12092 * reload.c (find_reloads, case '0'): Reject matching a non-offsettable
12093 address where an offsettable address is required.
12094
c5da853f
MH
12095Tue Aug 26 17:54:56 1997 Michael P. Hayes (michaelh@ongaonga.chch.cri.nz>
12096
12097 * loop.c (check_final_value): Don't miss a biv increment in a
12098 parallel.
12099
d4ef15f2
JW
12100Tue Aug 26 12:03:49 1997 Jim Wilson (wilson@cygnus.com)
12101
12102 * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Check
12103 TYPE_DECL_IS_STUB instead of DECL_NAME.
12104
10549cbd
JW
12105Mon Aug 25 23:27:10 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
12106
12107 * objc/Make-lang.in ($(OBJC_O)): Also depend on cc1obj.
12108
12109Mon Aug 25 23:27:10 1997 Jim Meyering <meyering@eng.ascend.com>
12110
12111 * objc/Make-lang.in ($(OBJC_O)): Also depend on $(GCC_PASSES).
12112
484df988
JL
12113Mon Aug 25 13:12:24 1997 Jeffrey A Law (law@cygnus.com)
12114
12115 * haifa-sched.c (find_pre_sched_live): Remove #if 0 code.
12116 (find_post_sched_live): Likewise.
12117
12118 * haifa-sched.c (schedule_block): Remove old code to get arguments
12119 from hard regs into pseudos early.
12120
39dfb55a
JL
12121Mon Aug 25 08:55:00 1997 Jeffrey A Law (law@cygnus.com)
12122
12123 * version.c: Bump for new snapshot.
12124
12125 * local-alloc.c (update_equiv_regs): All the target to reject
12126 promotion of some REG_EQUAL to REG_EQUIV notes.
12127 * pa.h (DONT_RECORD_EQUIVALENCE): Define.
12128
12129 * pa.c (secondary_reload_class): (mem (mem ... )) does not need
12130 secondary reloads.
12131
12132 * pa.c (hppa_builtin_saveregs): Emit a blockage insn after the
12133 store of the argument registers.
12134
12135Mon Aug 25 08:39:02 1997 Craig Burley (burley@gnu.ai.mit.edu)
12136
12137 * fold-const.c (multiple_of_p): New function.
12138 (fold): Turn some cases of *_DIV_EXPR into EXACT_DIV_EXPR.
12139
d78778eb
JL
12140Mon Aug 25 01:47:41 1997 Jeffrey A Law (law@cygnus.com)
12141
12142 * expr.h (insn_gen_function): Temporarily remove prototype.
12143
feb9ea1a
JW
12144Sun Aug 24 17:22:21 1997 Jim Wilson <wilson@cygnus.com>
12145
12146 * Makefile.in (install-info): Don't cd into srcdir. Add srcdir to
12147 filenames. Use sed to extract base filename for install.
12148
b6ffe602
JC
12149Sat Aug 23 18:19:40 1997 John F. Carr <jfc@mit.edu>
12150
12151 * unroll.c (find_splittable_givs): Only share if two givs have the
12152 same add and multiply values.
12153
2ebfd230
JW
12154Sat Aug 23 14:36:27 1997 Jim Wilson <wilson@cygnus.com>
12155
12156 * m68k/next.h (GO_IF_INDEXABLE_BASE): Fix typo in undef.
12157 * m68k/m68kemb.h (LIB_SPEC): Add missing comment end before it.
12158
251ffdee
JL
12159Sat Aug 23 00:18:22 1997 Jeffrey A Law (law@cygnus.com)
12160
12161 * pa.c (pa_reorg): Always put begin_brtab and end_brtab insns
12162 around branch tables.
12163 * pa.md (begin_brtab, end_brtab): Only emit the .begin_brtab
12164 and .end_brtab directives if TARGET_GAS.
12165
19372aa1
JW
12166Fri Aug 22 14:05:55 1997 Jim Wilson <wilson@cygnus.com>
12167
27314274
JW
12168 * alias.c (true_dependence): Pass x_addr not x to varies.
12169
19372aa1
JW
12170 * acconfig.h (NEED_DECLARATION_CALLOC): Add.
12171 * configure.in: Add GCC_NEED_DECLARATION call for calloc.
12172 * rs6000/xm-rs6000.h (malloc, realloc, calloc, free): Delete
12173 declarations.
12174 * config.in, configure: Regenerate.
12175
2a2c8203
JC
12176Thu Aug 21 23:52:16 1997 John F. Carr <jfc@mit.edu>
12177
12178 * alias.c (find_base_value): Improve handling of PLUS, MINUS, and
12179 LO_SUM.
12180 (record_set): Handle LO_SUM like PLUS.
12181 (init_alias_analysis): When following chains of base addresses,
12182 do not stop on reaching a hard register.
12183
d80357b7
JL
12184Thu Aug 21 20:17:37 1997 Jeffrey A Law (law@cygnus.com)
12185
12186 * version.c: Bump for new snapshot.
12187
b4f32d7b
JW
12188Thu Aug 21 17:28:00 1997 Jim Wilson <wilson@cygnus.com>
12189
12190 * alpha.h (ARCH_ASM_FILE_START): Define.
12191 (ASM_FILE_START): Use ARCH_ASM_FILE_START.
12192 * osf12.h, osf2or3.h (ARCH_ASM_FILE_START): Redefine to null string.
12193
ca363bb6
JL
12194Thu Aug 21 10:22:19 1997 Jeffrey A Law (law@cygnus.com)
12195
12196 * Makefile.in (install-common): Put gcov comment at start of line.
12197
7557aa98
JL
12198Wed Aug 20 22:47:33 1997 Jeffrey A Law (law@cygnus.com)
12199
12200 * alias.c (init_alias_analysis): When simplifying the reg_base_value
12201 array, simplify entries for hard registers too.
12202
c34e3ae4
DL
12203Wed Aug 20 12:35:47 1997 Dave Love <d.love@dl.ac.uk>
12204
12205 * dwarf2.h (enum dwarf_call_frame_info): Remove trailing comma from
12206 list.
12207
e3eef942
JW
12208Wed Aug 20 11:58:33 1997 Jim Wilson <wilson@cygnus.com>
12209
12210 * stmt.c (start_cleanup_deferal, end_cleanup_deferal): Test
12211 block_stack before dereferencing it.
12212
12213Wed Aug 20 11:57:11 1997 Michael Meissner <meissner@cygnus.com>
246853b9
MM
12214
12215 * rs6000.h (ISSUE_RATE): Define instead of MACHINE_issue_rate.
12216
04f41951
JM
12217Tue Aug 19 17:10:56 1997 Jason Merrill <jason@yorick.cygnus.com>
12218
12219 * cplus-dem.c: Add 'extern' to prepends_underscore.
12220
e933cbe0
JL
12221Tue Aug 19 09:34:57 1997 Jeffrey A Law (law@cygnus.com)
12222
62d65906
JL
12223 * haifa-sched.c (ISSUE_RATE): Renamed from MACHINE_issue_rate.
12224 (get_issue_rate): Delete.
12225 * pa.h (ISSUE_RATE): Define.
12226
2da05a5b
JL
12227 * configure.in: Turn on haifa by default for the PA.
12228 * configure: Rebuilt.
12229 * pa.c (override_options): Accept -mschedule=7200 option.
12230 (pa_adjust_cost): No longer need to scale costs for newer
12231 processors.
12232 * pa.h (enum processor_type): Add PROCESSOR_7200.
12233 * pa.md: Revamp scheduling parameters to work better with
12234 haifa. Add scheduling parameters for the 7200.
12235
4f64eaca
JL
12236 * haifa-sched.c (move_insn): Reemit notes for SCHED_GROUP_P
12237 insns too.
12238 (schedule_block): When adjusting basic_block_{head,end}, account
12239 for movement of SCHED_GROUP_P insns too.
12240
12241 * haifa-sched.c (debug_dependencies): Fix thinko.
12242
e933cbe0
JL
12243 * Makefile.in (EXPECT, RUNTEST, RUNTESTFLAGS): Define.
12244 (site.exp, check, check-g++, check-gcc): New targets.
12245
4f64eaca 12246 * haifa-sched.c: Make lots of variables static.
61822835 12247
e9576d2c
L
12248Tue Aug 19 07:18:34 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
12249
12250 * expr.h, real.h: Finish prototyping.
12251
61822835
JL
12252Mon Aug 18 21:49:02 1997 Jim Wilson <wilson@cygnus.com>
12253
12254 * reload.c (find_reloads): Add code to convert RELOAD_FOR_OPADDR_ADDR
12255 reloads to RELOAD_FOR_OPERAND_ADDRESS reloads.
12256 * reload1.c: Undo bugfix from Aug 11.
12257
f24b370a
MM
12258Mon Aug 18 17:39:02 1997 Mike Meissner <meissner@cygnus.com>
12259
12260 * configure.in ({powerpc,rs6000}*-*-*, --with-cpu): Remove single
12261 quotes around the name.
12262 * configure: Regenerate.
12263
1c4c5851
JW
12264Mon Aug 18 13:46:47 1997 Jim Wilson <wilson@cygnus.com>
12265
12266 * Makefile.in (stmp-multilib-sub): Fix typo in last change.
12267
71abb567
MH
12268Thu Aug 7 10:33:13 1997 Manfred Hollstein <manfred@s-direktnet.de>
12269
12270 * Makefile.in (sub-makes): Pass the current value of LANGUAGES down
12271 to sub-makes to avoid building more passes than the user might have
12272 requested on the command line.
12273
6042434a
DL
12274Sun Aug 17 15:42:17 1997 Dave Love (d.love@dl.ac.uk)
12275
12276 * configure.in: Expurgate `broken_install' (install is
12277 autoconfed).
12278
12279 * configure.lang: Substitute autoconfed ${INSTALL} (not currently
12280 relevant).
12281
38ea060f
JL
12282Sat Aug 16 01:08:12 1997 Jeffrey A Law (law@cygnus.com)
12283
12284 * loop.c (is_power_of_2, is_conditional_branch): Delete unused
12285 functions and declarations.
12286 (analyze_loop_iterations): Use condjump_p.
12287 (insert_bct): Likewise. Use exact_log2.
b57062ca 12288
f187056f
JL
12289Fri Aug 15 23:48:32 1997 Jeffrey A Law (law@cygnus.com)
12290
12291 * haifa-sched.c (find_post_sched_live): Call FREE_REG_SET as needed.
12292 (schedule_region): Likewise.
12293 (schedule_insns): Likewise.
12294
12295 * PROJECTS: Update with Haifa stuff.
12296
9af06254
JL
12297Fri Aug 15 12:49:56 1997 Jeffrey A Law (law@cygnus.com)
12298
12299 * version.c: Change the version string to look like:
11c21791 12300 egcs-2.90.00 970814 (gcc2-970802 experimental).
9af06254 12301
0945e937
JL
12302 * loop.c (is_conditional_branch): Make definition match declaration.
12303
9af06254
JL
12304 * gcc.c: Take out experimental snapshot warning message.
12305
ebc25a17
MM
12306Fri Aug 15 13:43:39 1997 Michael Meissner <meissner@cygnus.com>
12307
12308 * haifa-sched.c (debug_dependencies): Use GET_NOTE_INSN_NAME to
12309 print out the names of the notes. Print out the name of the insn
12310 that is not a note, and not an {,CALL_,JUMP_}INSN.
12311
610ce97e
JM
12312Wed Aug 13 17:32:38 1997 Jason Merrill <jason@yorick.cygnus.com>
12313
12314 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
12315 again for the slot after we give it RTL.
12316
992d1248
DE
12317Wed Aug 13 01:03:37 1997 Doug Evans <dje@canuck.cygnus.com>
12318
12319 * configure.in (haifa configury): Fix typo.
12320 * configure: Regenerate.
12321
7bb6fbd1
JL
12322Tue Aug 12 10:20:36 1997 Jeffrey A Law (law@cygnus.com)
12323
12324 * version.c: Bump version to "gcc-3.0.0 970802 experimental".
12325
12326 * gcc.info*: Rebuilt.
12327
12328 * COPYING.g77, README.g77: New files.
12329 * real.c (ereal_unto_float, ereal_unto_double): New functions.
12330 * real.h (ereal_unto_float, ereal_unto_double): Declare them.
12331 (REAL_VALUE_UNTO_TARGET_DOUBLE, REAL_VALUE_UNTO_TARGET_SINGLE): Define.
12332
8c660648
JL
12333Mon Aug 11 14:50:55 1997 Jeffrey A Law (law@cygnus.com)
12334
12335 * Integrate Haifa instruction scheduler.
12336 * Makefile.in (ALL_CFLAGS): Add SCHED_CFLAGS. Prefix all references
12337 to sched with $(SCHED_CFLAGS.
12338 * configure.in: Handle --enable-haifa.
12339 * configure: Rebuilt.
12340 * flags.h: Add new flags for haifa instruction scheduler.
12341 * genattrtab.c (expand_units): For haifa, don't subtract one
12342 when computing blockage.
12343 * toplev.h (flag_schedule_interblock): Haifa scheduler flag.
12344 (flag_schedule_speculative): Ditto.
12345 (flag_schedule_speculative_load): Ditto.
12346 (flag_schedule_speculative_load_dangerous): Ditto.
12347 (flag_schedule_reverse_before_reload): Ditto.
12348 (flag_schedule_reverse_after_reload): Ditto.
12349 (flag_branch_on_count_reg): Ditto.
12350 (f_options): Add Haifa switches.
12351 (main): Turn off some Haifa options if appropriate macro is
12352 defined. Process Haifa switches.
12353 * unroll.c (iteration_info): No longer static, since Haifa
12354 scheduler uses it.
12355 (unroll_loop): Inform HAIFA scheduler about loop unrolling factor.
12356 * unroll.c (unroll_loop): Set loop_unroll_iter, loop_start_value.
12357 * loop.h (loop_unroll_factor, loop_number): Add HAIFA decls.
12358 * loop.h (loop_initial_value,loop_unroll_iter): New globals.
12359 * loop.c (loop_optimize): If HAIFA is defined, allocate additional
12360 storage for the Haifa scheduler.
12361 (mark_loop_jump): If HAIFA defined, set LABEL_OUTSIDE_LOOP_P and
12362 LABEL_NEXTREF.
12363 (strength_reduce): If HAIFA and HAVE_decrement_and_branch_on_count
12364 are defined, call analyze_loop_iterations and insert_bct to use
12365 countdown loops.
12366 (record_giv): Refine test for jumps out of loops if HAIFA is
12367 defined.
12368 (analyze_loop_iterations): New function to identify if we can use
12369 a countdown loop.
12370 (insert_bct): Insert countdown loop.
12371 (instrument_loop_bct): Low level code to insert countdown loop.
12372 (loop_number): Calculate UID of loop.
12373 (indirect_jump_in_function_p): Return true if an indirect jump is
12374 in the function.
12375 (is_power_of_2): Return true if value is a power of 2.
12376 (is_conditional_branch): Return true if insn is a conditional
12377 jump.
12378 (fix_bct_param): Process -fbct-{min,max}-N switches.
12379 (check_bct_param): Return true if loop should be instrumented.
12380 * loop.c (loop_initial_value,loop_unroll_iter): New globals.
12381 (loop_optimize): Initialize.
12382 (get_condition_for_loop): Ditto.
12383 * loop.c (strength_reduce): Inside of code that uses #ifdef
12384 HAVE_decrement_and_branch_on_count code, test it to make sure the
12385 condition is true.
12386 (instrument_loop_bct): Ditto.
12387 * haifa-sched.c: New file.
b57062ca 12388
8c660648
JL
12389
12390 * Integrate regmove pass.
12391 * Makefile.in (OBJS): Add regmove.o
12392 (regmove.o): Add dependencies.
12393 * flow.c (find_use_as_address): No longer static.
12394 * rtl.h (find_use_as_address): Declare.
12395 * toplev.c (regmove_dump, flag_regmove): Define.
12396 (f_options): Add -fregmove.
12397 (regmove_dump_file, regmove_time): Define.
12398 (fatal_insn): Close the regmove dump file.
12399 (compile_file): Initialize regmove_time; open/close the regmove dump
12400 file as needed. Print regmove time as needed.
12401 (rest_of_compilation): Run regmove pass if requested, dump
12402 RTL after regmove if requested.
12403 (main): If -O2 or more, turn on regmove. Handle dump switches.
12404 * regmove.c: New file.
b57062ca 12405
aa32d841
JL
12406Mon Aug 11 14:15:02 1997 Jeffrey A Law (law@cygnus.com)
12407
12408 * Integrate tlink patch from jason@cygnus.com
12409 * gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
12410 (process_command): Increment n_switches for them. Don't discard
12411 their args. Validate them.
12412 (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
12413 From Rohan Lenard.
12414 (process_command): Set include_prefixes from COMPILER_PATH.
12415 (main): Set COLLECT_GCC_OPTIONS sooner.
12416 * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
12417 * tlink.c, hash.c, hash.h: New files.
12418 * Makefile.in (USE_COLLECT2): Always use collect2.
12419 (collect2): Depend on and link in hash.o and tlink.o.
12420 (tlink.o, hash.o): Add dependencies.
12421
5fa39bfe
JL
12422Mon Aug 11 10:04:49 1997 Jeffrey A Law (law@cygnus.com)
12423
9ae8ffe7
JL
12424 * Integrate alias analysis changes from jfc@mit.edu
12425 * Makefile.in (OBJS): Add alias.o
12426 (alias.o): Add dependencies.
12427 * alias.c: New file.
12428 * sched.c: Remove alias analysis code. It lives in alias.c now.
9ae8ffe7 12429 (sched_analyze_2): Add new arguments to true_dependence.
9ae8ffe7
JL
12430 (schedule_insns): Always call init_alias_analysis.
12431 * calls.c (expand_call): Note calls to malloc, calloc, and realloc;
12432 mark return value from such functions as a pointer and keep track of
12433 them for alias analysis. If a return value from a function is a
12434 pointer, mark it as such.
12435 * combine.c (distribute_notes): Handle REG_NOALIAS.
12436 * cse.c (struct write_data): Delete. No longer needed.
12437 (invalidate): Don't call set_nonvarying_address_components anymore.
12438 Use true_dependence to decide if an entry should be removed from
12439 the hash table.
12440 (invalidate_memory): Remove WRITES argument, simplify appropriately.
12441 Fix all callers.
12442 (note_mem_written): Similarly for WRITE_PTR argument.
12443 (invalidate_from_clobbers): Similarly for W argument.
12444 (invalidate_for_call): Remove memory elements from the hash table.
12445 (refers_to_mem_p, cse_rtx_addr_varies_p): Deleted.
12446 (cse_rtx_varies_p): New function. Derived from old
12447 cse_rtx_addr_varies_p.
12448 (cse_insn): Remove WRITES_MEMORY and INIT variables and all references.
12449 Don't call note_mem_written anymore. Stack pushes invalidate the stack
12450 pointer if PUSH_ROUNDING is defined. No longer need to call
12451 cse_rtx_addr_varies_p to decide if a MEM should be invalidated.
12452 (skipped_writes_memory): Remove variable.
12453 (invalidate_skipped_set): Simplify and wewrite to use invalidate_memory.
12454 (invalidate_skipped_block): Simplify for new alias analysis code.
12455 (cse_set_around_loop): Likewise.
12456 (cse_main): Call init_alias_analysis.
12457 * flags.h (flag_alias_check, flag_argument_noalias): Declare.
12458 * toplev.c (flag_alias_check, flag_argument_noalias): Define.
12459 (f_options): Add new alias checking arguments.
12460 (main): Set flag_alias_check when optimizing.
12461 * local_alloc (validate_equiv_mem_from_store): Add new arguments
12462 to true_dependence.
12463 (memref_referenced_p): Likewise.
12464 * loop.c (NUM_STORES): Increase to 30.
12465 (prescan_loop): Only non-constant calls set unknown_address_altered.
12466 (invariant_p): Add new arguments to true_dependence.
12467 (record_giv): Initialize unrolled and shared fields.
12468 (emit_iv_add_mult): Call record_base_value as needed.
12469 * loop.h (struct induction): Add unrolled and shared fields.
12470 * unroll.c (unroll_loop): Call record_base_value as needed.
12471 (copy_loop_body): Likewise.
12472 (final_biv_value): Likewise.
12473 (final_giv_value): Likewise.
12474 (find_splittable_regs): Likewise. Only create one new pseudo
12475 if we have multiple address GIVs that were combined with the same
12476 dst_reg GIV. Note when a new register is created due to unrolling.
12477 * rtl.c (reg_note_name): Add REG_NOALIAS.
12478 * rtl.h (enum reg_note): Similarly.
12479 (rtx_varies_p, may_trap_p, side_effects_p): Declare.
12480 (volatile_refs_p, volatile_insn_p, remove_note): Likewise.
12481 (note_stores, refers_to_regno_p, reg_overlap_mentioned_p): Likewise.
12482 (true_dependence, read_dependence, anti_dependence): Likewise.
12483 (output_dependence, init_alias_analysis, end_alias_analysis): Likewise.
12484 (mark_user_reg, mark_reg_pointer): Likewise.
12485
12486
12487 * Integrate reload bugfix from Wilon which enables the PA port
5fa39bfe 12488 to bootstrap again.
38e01259 12489 * reload1.c (reload): Sum needs for both OPADDR_ADDR and
5fa39bfe
JL
12490 OPERAND_ADDRESS when computing how many registers an insn needs.
12491 (reload_reg_free_p): OPADDR_ADDR and OPERAND_ADDRESS reloads do
12492 conflict.
12493 (reload_reg_free_before_p): Treat OPERAND_ADDRESS reloads just like
12494 OPADDR_ADDR reload.
12495 (reload_reg_reaches_end_p): For RELOAD_FOR_OPADDR_ADDR insns, registers
12496 in reload_reg_use_in_op_addr do not reach the end.
12497 do not reach the end.
12498 (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
12499 RELOAD_FOR_OPERAND_ADDRESS.
12500
12501Sun Aug 10 12:00:20 1997 Jeffrey A Law (law@cygnus.com)
12502
2dcfcb56 12503 * egcs project officially starts.
52267fcb
JM
12504
12505Local Variables:
12506add-log-time-format: current-time-string
12507End:
This page took 1.718265 seconds and 5 git commands to generate.