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