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