]> gcc.gnu.org Git - gcc.git/blob - gcc/ChangeLog
* i386/sco5.h (HAVE_ATEXIT): Revert last change.
[gcc.git] / gcc / ChangeLog
1 Fri Nov 21 10:13:11 1997 Robert Lipe (robertl@dgii.com)
2
3 * i386/sco5.h (HAVE_ATEXIT): Revert last change.
4
5 Thu Nov 20 16:11:50 1997 Richard Henderson <rth@cygnus.com>
6
7 * alpha.c (alpha_emit_set_const_1): Handle narrow hosts better.
8
9 Thu Nov 20 16:11:50 1997 Klaus Kaempf <kkaempf@progis.de>
10
11 * alpha/vms.h (ASM_OUTPUT_ADDR_VEC_ELT): Add an L for the local label
12 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
13
14 Thu Nov 20 14:42:15 1997 Jason Merrill <jason@yorick.cygnus.com>
15
16 * Makefile.in (LIB2FUNCS): Remove C++ memory management support.
17 * libgcc2.c: Remove __builtin_new, __builtin_vec_new, set_new_handler,
18 __builtin_delete, and __builtin_vec_delete.
19
20 * except.c (output_exception_table): Don't bother with
21 __EXCEPTION_END__.
22
23 Thu Nov 20 16:11:50 1997 Jeffrey A Law (law@cygnus.com)
24
25 * pa.md (pre_stwm, post_stwm, pre_ldwm, post_ldwm): Base register
26 is an in/out operand.
27 (zero extended variants of stwm/stwm patterns): Similarly.
28
29 * mips/x-iris (FIXPROTO_DEFINES): Add -D_SGI_SOURCE.
30
31 Thu Nov 20 13:19:32 1997 Jason Merrill <jason@yorick.cygnus.com>
32
33 * dwarf2out.c (ASM_OUTPUT_DWARF_OFFSET4): Rename from VALUE4.
34 Use assemble_name.
35 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Use assemble_name.
36 (output_call_frame_info): Emit a \n after using it.
37
38 Thu Nov 20 00:38:46 1997 Dave Love <d.love@dl.ac.uk>
39
40 * configure.in: Add AC_ARG_ENABLE for Haifa as documentation.
41
42 Wed Nov 19 12:03:04 1997 Philippe De Muyter <phdm@macqel.be>
43
44 * dwarf2out.c (CIE_LENGTH_LABEL, FDE_LENGTH_LABEL): New macros.
45 (ASM_OUTPUT_DWARF_VALUE4): New macro.
46 (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Define if SET_ASM_OP is
47 defined.
48 (output_call_frame_info): Do not output forward label differences
49 if ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL is defined.
50 * m68k/mot3300.h (SET_ASM_OP): Define when not using gas.
51
52 Tue Nov 18 23:03:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
53
54 * sh.md (attribute "type"): Add nil.
55 (movsi_ie): y/y alternative is type nil.
56 (movsf_ie): Replace ry/yr/X alternative by r/y/X , y/r/X and y/y/X
57 alternatives.
58 (movsf_ie+1): Delete.
59
60 Tue Nov 18 15:39:59 1997 Jim Wilson <wilson@cygnus.com>
61
62 * mips/mips.c (save_restore_insns): If gp_offset or fp_offset are
63 large_int, emit two insns instead of one splitable insn.
64 * dwarf2out.c (dwarf2out_frame_debug): When set cfa_store_offset
65 from cfa_temp_value, use cfa_offset. Add assert checking that
66 cfa_reg is SP.
67
68 Mon Nov 17 15:35:38 1997 Tom Tromey <tromey@cygnus.com>
69
70 * cccp.c (deps_output): Properly quote file names for make.
71
72 Mon Nov 17 13:21:40 1997 Jeffrey A Law (law@cygnus.com)
73
74 * t-h8300 (MULTILIB_EXCEPTIONS): Define.
75
76 Fri Nov 7 15:33:11 1997 Robert Lipe (robertl@dgii.com)
77
78 * i386/sco5.h (HAVE_ATEXIT): Delete definition.
79
80 Sun Nov 16 23:52:48 1997 Jeffrey A Law (law@cygnus.com)
81
82 * cse.c (cse_insn): Don't look at JUMP_LABEL field of a conditionl
83 return.
84 (cse_end_of_basic_block): Similarly.
85
86 Sun Nov 16 23:01:40 1997 J. Kean Johnston <jkj@sco.com>
87
88 * i386/sco5.h (ASM_OUTPUT_ALIGNED_BSS): Define.
89 (SELECT_RTX_SECTION): Define.
90 (LIBGCC_SPEC, LIB_SPEC): Do the right thing for PIC.
91
92 Sun Nov 16 22:47:03 1997 Manfred Hollstein <manfred@s-direktnet.de>
93
94 * Makefile.in (compare, compare-lean): Define $stage for each
95 shell command.
96 (gnucompare, gnucompare-lean): Likewise.
97
98 Sun Nov 16 22:02:16 1997 Richard Henderson (rth@cygnus.com)
99
100 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix offsets.
101
102 * alpha.h (ASM_OUTPUT_ADDR_DIFF_ELT): Add an L for the local label
103 to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
104
105 Fri Nov 14 09:09:20 1997 Fred Fish (fnf@cygnus.com)
106
107 * dwarfout.c (byte_size_attribute): Add local var upper_bound
108 and add case to handle STRING_TYPE.
109 * dwarfout.c (output_string_type_die): Fix code to generate
110 correct string length attribute for fixed length strings.
111 Still needs support for varying length strings.
112
113 Fri Nov 14 08:46:56 1997 Jeffrey A Law (law@cygnus.com)
114
115 * toplev.c (get_run_time): Do something sensible for cygwin32.
116
117 Fri Nov 14 07:24:20 1997 Richard Henderson <rth@cygnus.com>
118
119 * expr.c (expand_builtin_setjmp): Set
120 current_function_has_nonlocal_label.
121 * stupid.c (stupid_life_analysis): If has_nonlocal_label, kill
122 call-saved registers across calls.
123
124 * alpha.md (exception_receiver): Remove.
125 (nonlocal_goto_receiver_osf): New
126 (nonlocal_goto_receiver_vms): Renamed from nonlocal_goto_receiver.
127 (nonlocal_goto_receiver): New, select _osf or _vms.
128
129 * alpha.c (output_prolog [*]): Prefix entry labels with '$' to
130 keep them from being propogated to the object file.
131 (alpha_write_linkage): Likewise.
132 * alpha.md (call_vms): Likewise.
133 (call_value_vms): Likewise.
134 (unnamed osf call insns): Likewise.
135
136 * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Don't omit L from local label.
137 (ASM_GENERATE_INTERNAL_LABEL): Likewise.
138
139 * alpha.c (call_operand): Any reg is valid for WinNT.
140 * alpha.md (call_nt, call_value_nt): Don't force address into $27.
141 (anon nt calls): Add 'R' alternative.
142 * alpha/win-nt.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE,
143 INITIALIZE_TRAMPOLINE): Handle lack of original $27 and 32-bit ptrs.
144
145 Fri Nov 14 06:59:33 1997 Jeffrey A Law (law@cygnus.com)
146
147 * calls.c (expand_call): Handle pcc_struct_value correctly for C++.
148
149 * i386/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Delete defines.
150 * i386/xm-mingw32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
151 * rs6000/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
152
153 Thu Nov 13 20:37:33 1997 Michael Meissner <meissner@tiktok.cygnus.com>
154
155 * reload1.c (new_spill_reg): Improve fixed or forbidden register
156 spill error message.
157
158 Thu Nov 13 20:29:08 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
159
160 * prefix.c: Use stdarg.h only ifdef __STDC__. Otherwise,
161 use varargs.h. Wrap header with <>, not "".
162
163 Thu Nov 13 20:21:17 1997 Jeffrey A Law (law@cygnus.com)
164
165 * integrate.c (save_for_inline_copying): Add return value from
166 savealloc.
167
168 Thu Nov 13 19:12:33 1997 Brendan Kehoe <brendan@cygnus.com>
169
170 * fixincludes: Be a little more restrictive on what we will
171 substitute to replace definitions of MAXINT for HPUX.
172
173 Thu Nov 13 18:41:02 1997 Michael Meissner <meissner@cygnus.com>
174
175 * dbxout.c (dbxout_symbol_location): Don't assume that variables
176 whose address is the stack or argument pointers are indirect
177 pointers.
178
179 1997-11-13 Paul Eggert <eggert@twinsun.com>
180
181 * cccp.c, cpplib.c (compare_defs):
182 Don't complain about arg name respellings unless pedantic.
183 * cpplib.c (compare_defs): Accept pfile as new arg.
184 All callers changed.
185
186 Thu Nov 13 23:33:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
187
188 * fold-const.c (fold_truthop): Fix bug in last change.
189
190 1997-11-13 Paul Eggert <eggert@twinsun.com>
191
192 Fix some confusion with IEEE minus zero.
193
194 * real.h (REAL_VALUES_IDENTICAL): New macro.
195
196 * expr.c (is_zeros_p): Don't consider -0.0 to be all zeros.
197 * fold-const.c (operand_equal_p): Don't consider -0.0 to be
198 identical to 0.0.
199 * tree.c (simple_cst_equal): Don't consider -0.0 to have the
200 same tree structure as 0.0.
201
202 * varasm.c (immed_real_const_1): Use new REAL_VALUES_IDENTICAL
203 macro instead of doing it by hand.
204
205 Thu Nov 13 16:56:14 1997 Jeffrey A Law (law@cygnus.com)
206
207 * v850/lib1funcs.asm: Minor whitespace changes.
208 * v850.c: Fix minor formatting problems in many places.
209 (construct_restore_jr, construct_save_jarl): Remove unwanted aborts.
210
211 Thu Nov 13 12:53:44 1997 Jim Wilson <wilson@cygnus.com>
212
213 * mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete code swapping xplus0 and
214 xplus1 when xplus0 is not a register.
215
216 Thu Nov 13 11:41:42 1997 Jeffrey A Law (law@cygnus.com)
217
218 * flow.c (find_basic_blocks): During marking phase, if we encounter
219 an insn with a REG_LABEL note, make the target block live and
220 create an edge from the insn to the target block. Do not make
221 edges from all blocks to the target block.
222
223 * m68k/x-next (OTHER_FIXINCLUDES_DIRS): Include /NextDeveloper/Headers.
224
225 * confiugre.in: Tweak NCR entries.
226 * configure: Rebuilt.
227
228 Thu Nov 13 11:07:41 1997 Michael Meissner <meissner@cygnus.com>
229
230 * rs6000.c (num_insns_constant): Use REAL_VALUE_FROM_CONST_DOUBLE to
231 pick apart floating point values, instead of using CONST_DOUBLE_LOW
232 and CONST_DOUBLE_HIGH.
233
234 * rs6000.md (define_splits for DF constants): Use the appropriate
235 REAL_VALUE_* interface to pick apart DF floating point constants in
236 a machine independent fashion.
237
238 Thu Nov 13 00:06:58 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
239
240 * fold-const.c (fold_truthop): When changing a one-bit comparison
241 against zero into a comparison against mask, do a proper sign
242 extension.
243
244 Wed Nov 12 09:37:01 1997 Jeffrey A Law (law@cygnus.com)
245
246 * except.c: Do not include "assert.h".
247 (save_eh_status): Turn asserts into conditional aborts.
248 (restore_eh_status, scan_region): Likewise.
249 * dwarfout.c: Do not include "assert.h".
250 (bit_offset_attribute): Turn asserts into conditional aborts.
251 (bit_size_attribute, output_inlined_enumeration_type_die): Likewise.
252 (output_inlined_structure_type_die): Likewise.
253 (output_inlined_union_type_die): Likewise
254 (output_tagged_type_instantiation): Likewise.
255 (dwarfout_file_scope_decl): Likewise.
256 * dwarf2out.c: Do not include "assert.h"
257 (expand_builtin_dwarf_reg_size): Turn asserts into conditional aborts.
258 (reg_save, initial_return_save, dwarf2out_frame_debug): Likewise.
259 (add_child_die, modified_type_die, add_bit_offset_attribute): Likewise.
260 (add_bit_size_attribute, scope_die_for): Likewise.
261 (output_pending_types_for_scope): Likewise.
262 (get_inlined_enumeration_type_die): Likewise.
263 (get_inlined_structure_type_die): Likewise.
264 (get_inlined_union_type_die, gen_subprogram_die): Likewise.
265 (gen_tagged_type_instantiation_die): Likewise.
266
267 * flow.c (find_basic_blocks): Refine further to get a more correct
268 cfg, especially in the presense of exception handling, computed
269 gotos, and other non-trivial cases. Call abort if an inaccuracy
270 is detected in the cfg.
271
272 Tue Nov 11 21:47:27 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
273
274 * glimits.h (SHRT_MIN): Define in a way suitable for 16 bit hosts.
275
276 * c-lex.c (whitespace_cr, skip_white_space_on_line): New functions.
277 (skip_white_space): Use whitespace_cr.
278 (check_newline): Handle whitespace more consistently.
279
280 Tue Nov 11 16:25:49 1997 Jim Wilson <wilson@cygnus.com>
281
282 * i386/cygwin32.h (CPP_PREDEFINES): Delete -DPOSIX.
283 * i386/xm-cygwin32.h (POSIX): Define.
284
285 Mon Nov 10 20:53:11 1997 Gavin Koch <gavin@cygnus.com>
286
287 * config/mips/mips.h (MASK_DEBUG_H): Set to zero, so this bit
288 is available elsewhere.
289
290 Mon Nov 10 16:21:58 1997 Doug Evans <devans@canuck.cygnus.com>
291
292 * sparc/sparc.md (mov[sdt]f_const_insn): Fix condition to match
293 what the instruction can handle.
294
295 Mon Nov 10 03:02:19 1997 Jason Merrill <jason@yorick.cygnus.com>
296
297 * stmt.c (expand_decl_cleanup_no_eh): New fn.
298
299 * except.c (expand_leftover_cleanups): do_pending_stack_adjust.
300
301 Mon Nov 10 00:05:56 1997 Jeffrey A Law (law@cygnus.com)
302
303 * alias.c (MAX_ALIAS_LOOP_PASSES): Define.
304 (init_alias_analysis): Break out of loops after MAX_ALIAS_LOOP_PASSES.
305
306 Sun Nov 9 14:34:47 1997 David Edelsohn <edelsohn@mhpcc.edu>
307
308 * rs6000.md (lshrdi3_power): Delete '&' from first alternative and
309 swap instruction order.
310
311 Sun Nov 9 02:07:16 1997 Jeffrey A Law (law@cygnus.com)
312
313 * fixinc.svr4 (__STDC__): Add another case.
314
315 Sun Nov 9 02:00:29 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
316
317 * a29k.h (ELIGIBLE_FOR_EPILOGUE_DELAY): Avoid loads from varying
318 addresses in the epilogue delay slot.
319
320 Sun Nov 9 01:40:40 1997 Manfred Hollstein (manfred@s-direktnet.de)
321
322 * m88k/dgux.h (ASM_CPU_SPEC): Reformatted to suppress wrong whitespace
323 in generated `specs' file.
324
325 Sun Nov 9 01:37:11 1997 Jim Wilson (wilson@cygnus.com)
326
327 * flags.h (flag_rerun_loop_opt): Declare.
328 * loop.c (invariant_p, case LABEL_REF): Check flag_rerun_loop_opt.
329 * toplev.c (flag_rerum_loop_opt): Delete static.
330
331 Sat Nov 8 18:20:21 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
332
333 Bring over from FSF:
334
335 Thu Oct 30 12:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
336
337 * va-sh.h (__va_arg_sh1): Define.
338 (va_arg): Use it.
339 SH3E doesn't use any integer registers for subsequent arguments
340 once a non-float value was passed in the stack.
341 * sh.c (machine_dependent_reorg): If optimizing, put explicit
342 alignment in front label for ADDR_DIFF_VEC.
343 * sh.h (PASS_IN_REG_P): Fix SH3E case.
344 (ADJUST_INSN_LENGTH): If not optimizing, add two extra bytes length.
345
346 Tue Oct 28 15:06:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
347
348 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Undefine before including
349 svr4.h.
350
351 Mon Oct 27 16:11:52 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
352
353 * sh.c (machine_dependent_reorg): When -flag_delayed_branches,
354 put an use_sfunc_addr before each sfunc.
355 * sh.md (use_sfunc_addr, dummy_jump): New insns.
356 (casesi): For TARGET_SH2, emit a dummy_jump after LAB.
357
358 Tue Oct 21 07:12:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
359
360 * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Don't redefine.
361
362 Fri Nov 7 10:22:24 1997 Jason Merrill <jason@yorick.cygnus.com>
363
364 * frame.c (add_fdes, count_fdes): Go back to checking pc_begin for
365 linked once FDEs.
366
367 Wed Nov 5 14:26:05 1997 Jeffrey A Law (law@cygnus.com)
368
369 * alias.c (find_base_value): Only return the known base value for
370 pseudo registers.
371
372 Wed Nov 5 11:27:14 1997 Jim Wilson <wilson@cygnus.com>
373
374 * i386.c (load_pic_register): Call prologue_get_pc_and_set_got.
375 * i386.md (prologue_set_got, prologue_get_pc): Add UNSPEC_VOLATILE
376 to pattern.
377 (prologue_get_pc_and_set_got): New pattern.
378
379 Tue Nov 4 20:36:50 1997 Richard Henderson (rth@cygnus.com)
380
381 * alpha.c (summarize_insn): Handle ASM_OPERANDS. Don't recurse
382 for SUBREG, just fall through.
383
384 * alpha.c (alpha_handle_trap_shadows): Init sum.defd to zero.
385
386 * alpha.md (attr trap): Make TRAP_YES non-zero for sanity's sake.
387
388 Tue Nov 4 18:49:42 1997 Jeffrey A Law (law@cygnus.com)
389
390 * fixincludes: Fix "hypot" prototype in NeXT math.h.
391
392 * Makefile.in (USE_ALLOCA): Always include alloca.o.
393 (USE_HOST_ALLOCA): Likewise.
394
395 * rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
396 and LABEL_REFS fields.
397 * rtl.h (LABEL_REFS): Update.
398
399 Tue Nov 4 16:55:11 1997 Jim Wilson <wilson@cygnus.com>
400
401 * combine.c (try_combine): When setting elim_i2, check whether newi2pat
402 sets i2dest. When calling distribute_notes for i3dest_killed, pass
403 elim_i2 and elim_i1. When setting elim_i1, check if newi2pat
404 sets i1dest.
405
406 * mips.md (insv, extzv, extv): Add change_address call.
407 (movsi_ulw, movsi_usw): Change QImode to BLKmode in pattern.
408
409 * integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
410
411 * reload.c (find_reloads, case 'm' and 'o'): Reject HIGH constants.
412
413 * mips.c (mips_expand_epilogue): Emit blockage insn before call to
414 save_restore_insns if no FP and GP will be restored.
415
416 * dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
417 Convert CCmode to word_mode before calling GET_MODE_SIZE.
418
419 * acconfig.h (HAVE_INTTYPES_H): Undef.
420 * configure.in (inttypes.h): Check for conflicts between sys/types.h
421 and inttypes.h, and verify that intmax_t is defined.
422 * config/mips/x-iris (CC, OPT, OLDCC): Comment out.
423 * config/mips/x-iris3: Likewise.
424
425 Tue Nov 4 16:07:15 1997 Jeffrey A Law (law@cygnus.com)
426
427 * alias.c (find_base_value): When copying arguments, return the
428 tenative value for a hard register.
429
430 Tue Nov 4 13:40:35 1997 Doug Evans <devans@canuck.cygnus.com>
431
432 * c-lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
433 (yylex): Record wide strings using target endianness, not host.
434
435 Tue Nov 4 13:13:12 1997 Jeffrey A Law (law@cygnus.com)
436
437 * mn10200.h (ASM_OUTPUT_BSS): Delete.
438 (ASM_OUTPUT_ALIGNED_BSS): New macro
439 * mn10300.h (ASM_OUTPUT_BSS): Delete.
440 (ASM_OUTPUT_ALIGNED_BSS): New macro.
441 * v850.h (ASM_OUTPUT_BSS): Delete.
442 (ASM_OUTPUT_ALIGNED_BSS): New macro.
443
444 Tue Nov 4 00:55:48 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
445
446 * profile.c (branch_prob): Insert an insn after a NOTE_INSN_SETJMP.
447
448 Mon Nov 3 14:36:50 1997 Jeffrey A Law (law@cygnus.com)
449
450 * configure.in (sco5): Use cpio to install header files.
451
452 Sun Nov 2 23:31:43 1997 Manfred Hollstein <manfred@s-direktnet.de>
453
454 * aclocal.m4 (conftestdata_from, conftestdata_to): Names shortened to
455 14 char length.
456 * configure: Rebuild.
457
458 Sun Nov 2 19:44:00 1997 Robert Lipe (robertl@dgii.com)
459
460 * i386/sco5.h: enable -gstabs once again.
461
462 Sun Nov 2 19:27:21 1997 Jeffrey A Law (law@cygnus.com)
463
464 * arm.c (output_move_double): Allocate 3 entries in otherops array.
465
466 Sat Nov 1 21:43:00 1997 Mike Stump (mrs@wrs.com)
467
468 * except.c (expand_ex_region_start_for_decl): Emit EH_REGION_BEG
469 notes for sjlj exceptions too.
470 (expand_eh_region_end): Similarly for EH_REGION_END notes.
471 (exception_optimize): Optimize EH regions for sjlj exceptions too.
472 * final.c (final_scan_insn): Don't output labels for EH REGION
473 notes if doing sjlj exceptions.
474
475 Sat Nov 1 19:15:28 1997 Jeffrey A Law (law@cygnus.com)
476
477 * alias.c (init_alias_analysis): Handle -fno-alias-check when
478 optimizing correctly.
479
480 * expr.c (expand_builtin_setjmp): Don't emit a SETJMP note
481 or set current_function_calls_setjmp anymore.
482
483 * flow.c (find_basic_blocks): If we delete the label for an
484 exception handler, remove it from the EH label list and remove
485 the EH_BEGIN/EH_END notes for that EH region.
486
487 Sat Nov 1 16:44:49 1997 Jason Merrill (jason@cygnus.com)
488
489 * flow.c (find_basic_blocks): Generate correct flow control
490 information when exception handling notes are present.
491
492 Sat Nov 1 13:42:19 1997 Jeffrey A Law (law@cygnus.com)
493
494 * dwarf2out.c (output_call_frame_info): Fix length argument
495 to ASM_OUTPUT_ASCII.
496 (output_die, output_pubnames, output_line_info): Likewise.
497
498 Fri Oct 31 07:10:09 1997 Jeffrey A Law (law@cygnus.com)
499
500 * version.c: Bump for snapshot.
501
502 * dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_ASCII to
503 output ASCII by default. Only use ASM_OUTPUT_DWARF_STRING if
504 flag_debug_asm is on.
505 (output_die, output_pubnames, output_line_info): Likewise.
506
507 * alias.c (init_alias_analysis): Add struct_value_incoming_rtx
508 and static_chain_rtx into the potential base values array if
509 they are registers.
510
511 * alias.c (new_reg_base_value): New array of potential base values.
512 (unique_id): Now file scoped static.
513 (find_base_value, case REG): Return the value in reg_base_value
514 array for the REG if it exists. Else, return the value from
515 new_reg_base_value if copying args and REG is a hard register.
516 (find_base_value, case PLUS): If either operand of the PLUS is
517 a REG, try to get its base value. Handle base + index and
518 index + base.
519 (record_set): Use new_reg_base_value instead of reg_base_value.
520 (init_alias_analysis): Allocate space for new_reg_base_value too.
521 Rework code to iterate over the insns propagating base value
522 information until nothing changes.
523
524 * global.c (global_alloc): Free the conflict matrix after
525 reload has finished.
526
527 Fri Oct 31 01:45:31 1997 Jason Merrill <jason@yorick.cygnus.com>
528
529 * libgcc2.c (L_eh): Define __eh_pc.
530 Replace __eh_type with generic pointer __eh_info.
531
532 Fri Oct 31 00:34:55 1996 J"orn Rennecke <amylaar@cygnus.co.uk>
533
534 * expr.c (expand_increment): When enqueing a postincrement for a MEM,
535 use copy_to_reg if address is not a general_operand.
536
537 Fri Oct 31 00:16:55 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
538
539 * profile.c (output_func_start_profiler): Clear flag_inline_functions
540 for the duration of the call to rest_of_compilation.
541
542 Thu Oct 30 14:40:10 1997 Doug Evans <devans@canuck.cygnus.com>
543
544 * configure.in (sparc-*-elf*): Use sparc/elf.h, sparc/t-elf.
545 Set extra_parts.
546 (sparc*-*-*): Recognize --with-cpu=v9.
547 * sparc/elf.h: New file.
548 * sparc/t-elf: New file.
549
550 Thu Oct 30 13:26:12 1997 Jeffrey A Law (law@cygnus.com)
551
552 * mn10300.c (const_8bit_operand): New function.
553 (mask_ok_for_mem_btst): New funtion.
554 * mn10300.md (btst patterns with mem operands): Use new functions
555 to avoid creating btst instructions with invalid operands.
556
557 Wed Oct 29 16:57:19 1997 Michael Meissner <meissner@cygnus.com>
558
559 * rs6000/xm-sysv4.h: Include xm-linux.h instead of xm-svr4.h if we
560 are running on PowerPC Linux.
561
562 Wed Oct 29 13:10:11 1997 Gavin Koch <gavin@cygnus.com>
563
564 * config/mips/elf64.h (PREFERRED_DEBUGGING_TYPE): Only define
565 if not previously defined.
566
567 Tue Oct 28 23:55:27 1997 Doug Evans (devans@cygnus.com)
568
569 * function.c (assign_parms): Correct mode of stack_parm if
570 entry_parm underwent a mode conversion.
571
572 1997-10-28 Brendan Kehoe <brendan@lisa.cygnus.com>
573
574 * global.c (global_alloc): Use xmalloc instead of alloca for
575 CONFLICTS, since max_allocno * allocno_row_words alone can be more
576 than 2.5Mb sometimes.
577
578 Tue Oct 28 15:29:15 1997 Richard Henderson <rth@cygnus.com>
579
580 * reload1.c (eliminate_regs [SET]): If [SUBREG] widened the mode of
581 DEST for the spill, adjust mode of SRC to compensate.
582
583 Tue Oct 28 14:36:45 1997 Richard Henderson <rth@cygnus.com>
584
585 * alpha.md (reload_inqi): Check for MEM before strict_memory_address_p,
586 since any_memory_operand() allows pseudos during reload.
587 (reload_inhi, reload_outqi, reload_outhi): Likewise.
588
589 Tue Oct 28 11:53:14 1997 Jim Wilson <wilson@cygnus.com>
590
591 * m68k.md (btst patterns): Add 5200 support.
592
593 Tue Oct 28 11:58:40 1997 Toon Moene <toon@moene.indiv.nluug.nl>
594
595 * fold-const.c (fold): For ((a * C1) / C3) or (((a * C1) + C2) / C3)
596 optimizations, look inside dividend to determine if the expression
597 can be simplified by using EXACT_DIV_EXPR.
598
599 Tue Oct 28 10:19:01 1997 Jason Merrill <jason@yorick.cygnus.com>
600
601 From Brendan:
602 * dwarf2out.c (output_call_frame_info): Use l1 instead of ".".
603
604 Tue Oct 28 00:32:14 1997 Richard Henderson <rth@cygnus.com>
605
606 * alpha.c (summarize_insn [SUBREG]): Propogate SET.
607
608 Mon Oct 27 23:59:26 1997 Richard Henderson <rth@cygnus.com>
609
610 * alpha.c (alpha_handle_trap_shadows): Don't call get_attr_trap
611 on a CLOBBER.
612
613 Mon Oct 27 21:25:20 1997 Richard Henderson <rth@cygnus.com>
614
615 * alpha.md (movqi, movhi): Make sure new insns created during reload
616 won't need reloading themselves.
617 (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Likewise.
618
619 Mon Oct 27 16:11:10 1997 Jeffrey A Law (law@cygnus.com)
620
621 * mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Disable reg+reg.
622
623 Sun Oct 26 13:50:44 1997 Richard Henderson <rth@cygnus.com>
624
625 * alpha.c (alpha_sa_mask [VMS]): Don't include $26 in the mask.
626 Patch from Klaus Kaempf <kkaempf@progis.de>.
627
628 Sun Oct 26 13:31:47 1997 Jim Wilson (wilson@cygnus.com)
629
630 * expr.c (expand_expr, case INDIRECT_REF): Optimize a reference
631 to an element in a constant string.
632
633 Sun Oct 26 11:41:49 1997 Jason Merrill <jason@yorick.cygnus.com>
634
635 * dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32
636 bit PC-relative offset. The exception range table pointer is now in
637 the CIE.
638 * frame.c (dwarf_cie, dwarf_fde): Rename CIE_pointer to CIE_delta.
639 (count_fdes, add_fdes, get_cie): Adjust.
640 (cie_info, extract_cie_info, __frame_state_for): Adjust eh_ptr uses.
641
642 From H.J. Lu:
643 * frame.c (count_fdes, add_fdes): Skip linked once FDE entries.
644
645 Sun Oct 26 11:52:01 1997 Richard Henderson <rth@cygnus.com>
646
647 * alias.c (memrefs_conflict_p): Treat arg_pointer_rtx just
648 like stack_pointer_rtx.
649
650 Sun Oct 26 11:32:16 1997 Manfred Hollstein <manfred@s-direktnet.de>
651
652 * Makefile.in (bootstrap-lean): Combined with `normal' bootstrap
653 targets using "$@" to provide support for similar but not identical
654 targets without having to duplicate code.
655 (bootstrap4): New goal.
656
657 * Makefile.in (compare, compare-lean, compare3): Combined to one
658 ruleset determining actions to be performed via $@.
659 (compare4, compare4-lean): New targets.
660 (gnucompare, gnucompare3): Combined to one ruleset determining
661 actions to be performed via $@. Also, note which files failed
662 the comparison test in .bad_compare.
663 (gnucompare-lean, gnucompare3-lean, gnucompare4-lean): New targets.
664
665 Sun Oct 26 10:06:11 1997 Toon Moene <toon@moene.indiv.nluug.nl>
666
667 * fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
668 if the dividend is a multiple of the divisor.
669
670 Sun Oct 26 09:21:40 1997 Jeffrey A Law (law@cygnus.com)
671
672 * Makefile.in (LIBGCC2_CFLAGS): Add -fexceptions.
673
674 * alias.c (find_base_term): Handle PRE_INC, PRE_DEC, POST_INC,
675 and POS_DEC.
676
677 * alias.c (true_dependence): Fix typo.
678
679 * toplev.c (flag_rerun_loop_opt): New variable.
680 (f_options): Handle -frerun-loop-opt.
681 (rest_of_compilation): If -frerun-loop-opt, then run the loop
682 optimizer twice.
683 (main): Enable -frerun-loop-opt by default for -O2 or greater.
684
685 * loop.c (simplify_giv_expr): Adding two invariants results
686 in an invariant.
687
688 Sun Oct 26 09:15:15 1997 Richard Henderson <rth@cygnus.com>
689
690 * expr.c (get_inner_reference): Remove the array bias after
691 converting the index to Pmode.
692
693 Sat Oct 25 12:20:58 1997 Jeffrey A Law (law@cygnus.com)
694
695 * mn10300.h (TARGET_SWITCHES): Add -mmult-bug and -mno-mult-bug.
696 (TARGET_MULT_BUG): Define.
697 (TARGET_DEFAULT): Default to TARGET_MULT_BUG.
698 * mn10300.md (mulsi3): Handle TARGET_MULT_BUG.
699
700 Fri Oct 24 17:40:34 1997 Jeffrey A Law (law@cygnus.com)
701
702 * mn10200.c (indirect_memory_operand): Delete unused function.
703 * mn10200.h (EXTRA_CONSTRAINT): Handle 'R'.
704 * mn10200.md (bset, bclr insns): Handle output in a reg too.
705
706 Fri Oct 24 15:54:57 1997 Richard Henderson <rth@cygnus.com>
707
708 * alpha.md (call patterns): Revert Oct 16 change; if we are to elide
709 the callee's ldgp, we must do it ourselves, and we use the jsr tag
710 for more than scheduling.
711
712 Fri Oct 24 13:23:04 1997 Doug Evans <devans@canuck.cygnus.com>
713
714 * sparc/sparc.h (ASM_SPEC): Delete asm_arch.
715
716 Fri Oct 24 13:19:40 1997 Jeffrey A Law (law@cygnus.com)
717
718 * mn10300.c (symbolic_operand, legitimize_address): New functions.
719 * mn10300.h (LEGITIMIZE_ADDRESS): Call legitimize_address.
720 (GO_IF_LEGITIMATE_ADDRESS): Don't allow base + symbolic.
721
722 Thu Oct 23 09:35:12 1997 Jeffrey A Law (law@cygnus.com)
723
724 * version.c: Bump for snapshot.
725
726 Thu Oct 23 08:03:59 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
727
728 * dbxout.c (dbxout_start_new_source_file): Use output_quoted_string
729 for FILENAME.
730
731 Wed Oct 22 00:34:12 1997 Jeffrey A Law (law@cygnus.com)
732
733 * toplev.c (flag_exceptions): Default value is 2.
734 (compile_file): If flag_exceptions still has the value 2, then
735 set it to 0.
736
737 * rs6000.c (struct machine_function): Add pic_offset_table_rtx.
738 (rs6000_save_machine_status): Save pic_offset_table_rtx.
739 (rs6000_restore_machine_status: Restore pic_offset_table_rtx.
740
741 * local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions
742 are shared.
743
744 * rs6000.md (*movsi_got_internal_mem): New pattern.
745 (*movsi_got_internal_mem splitter): New define_split.
746
747 Tue Oct 21 18:14:03 1997 Jim Wilson <wilson@cygnus.com>
748
749 * obstack.h (obstack_empty_p): Fix spurious space after backslash.
750
751 Tue Oct 21 18:34:01 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
752
753 * rs6000.c: Avoid creating a stack frame under SYSV ABI if we
754 only need to save LR.
755
756 Tue Oct 21 10:06:40 1997 Jeffrey A Law (law@cygnus.com)
757
758 * mn10300.md (movqi, movhi): Avoid using address registers as
759 destinations unless absolutely necessary.
760
761 * mn10200.c (expand_prologue): Fix typo.
762
763 * mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed
764 addresses.
765 * mn10200.md (neghi2): Provide an alternative which works if
766 the input and output register are the same.
767
768 * mn10300.c (print_operand): Handle 'S'.
769 * mn10300.md (ashlsi3, lshrsi3, ashrsi3): Use %S for
770 shift amount in last alternative
771
772 * mn10300.c (expand_epilogue): Rework to handle register restores
773 in "ret" and "retf" instructions correctly.
774
775 Mon Oct 20 16:47:08 1997 Jim Wilson <wilson@cygnus.com>
776
777 * expmed.c (extract_bit_field): Don't make flag_force_mem disable
778 extzv for memory operands.
779
780 * cse.c (simplify_ternary_operation, case IF_THEN_ELSE): Collapse
781 redundant conditional moves to single operand.
782
783 Mon Oct 20 15:30:26 1997 Nick Clifton <nickc@cygnus.com>
784
785 * v850.h: Move define of __v850__ from CPP_PREDEFINES
786 to CPP_SPEC.
787
788 * xm-v850.h: Use __v850 rather than __v850__ to
789 identify v850 port.
790
791 Mon Oct 20 14:15:02 1997 Jim Wilson <wilson@cygnus.com>
792
793 * mips/mips.c (compute_frame_size): Not a leaf function if
794 profile_flag set.
795
796 Mon Oct 20 14:16:38 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
797
798 * rs6000/t-ppccomm: Use -msdata=none for crtstuff.
799
800 Mon Oct 20 12:28:17 1997 Doug Evans <devans@canuck.cygnus.com>
801
802 * sparc/sparc.h (SPARC_V9,SPARC_ARCH64): Delete.
803 (DEFAULT_ARCH32_P): New macro.
804 (TARGET_ARCH{32,64}): Allow compile time or runtime selection.
805 (enum cmodel): Declare.
806 (sparc_cmodel_string,sparc_cmodel): Declare.
807 (SPARC_DEFAULT_CMODEL): Provide default.
808 (TARGET_{MEDLOW,MEDANY}): Renamed to TARGET_CM_{MEDLOW,MEDANY}.
809 (TARGET_FULLANY): Deleted.
810 (TARGET_CM_MEDMID): New macro.
811 (CPP_CPU_DEFAULT_SPEC): Renamed from CPP_DEFAULT_SPEC.
812 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
813 (CPP_PREDEFINES): Take out stuff now handled by %(cpp_arch).
814 (CPP_SPEC): Rewrite.
815 (CPP_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
816 (CPP_{ENDIAN,SUBTARGET}_SPEC): New macros.
817 (ASM_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
818 (ASM_SPEC): Add %(asm_arch).
819 (EXTRA_SPECS): Rename cpp_default to cpp_cpu_default.
820 Rename asm_default to asm_cpu_default.
821 Add cpp_arch32, cpp_arch64, cpp_arch_default, cpp_arch, cpp_endian,
822 cpp_subtarget, asm_arch32, asm_arch64, asm_arch_default, asm_arch.
823 (NO_BUILTIN_{PTRDIFF,SIZE}_TYPE): Define ifdef SPARC_BI_ARCH.
824 ({PTRDIFF,SIZE}_TYPE): Provide 32 and 64 bit values.
825 (MASK_INT64,MASK_LONG64): Delete.
826 (MASK_ARCH64): Renamed to MASK_64BIT.
827 (MASK_{MEDLOW,MEDANY,FULLANY,CODE_MODEL}): Delete.
828 (EMBMEDANY_BASE_REG): Renamed from MEDANY_BASE_REG.
829 (TARGET_SWITCHES): Always provide 64 bit options.
830 (ARCH64_SWITCHES): Delete.
831 (TARGET_OPTIONS): New option -mcmodel=.
832 (INT_TYPE_SIZE): Always 32.
833 (MAX_LONG_TYPE_SIZE): Define ifdef SPARC_BI_ARCH.
834 (INIT_EXPANDERS): sparc64_init_expanders renamed to sparc_init_....
835 (FUNCTION_{,BLOCK_}PROFILER): Delete TARGET_EMBMEDANY support.
836 (PRINT_OPERAND_PUNCT_VALID_P): Add '_'.
837 * sparc/linux-aout.h (CPP_PREDEFINES): Take out stuff handled by
838 CPP_SPEC.
839 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
840 * sparc/linux.h: Likewise.
841 * sparc/linux64.h (SPARC_V9,SPARC_ARCH64): Delete.
842 (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
843 (TARGET_DEFAULT): Delete MASK_LONG64, MASK_MEDANY, add MASK_64BIT.
844 (SPARC_DEFAULT_CMODEL): Define.
845 (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
846 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
847 (LONG_DOUBLE_TYPE_SIZE): Define.
848 (ASM_SPEC): Add %(asm_arch).
849 * sparc/sol2.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
850 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
851 (TARGET_CPU_DEFAULT): Add ultrasparc case.
852 * sparc/sp64-aout.h (SPARC_V9,SPARC_ARCH64): Delete.
853 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT.
854 (SPARC_DEFAULT_CMODEL): Define.
855 * sparc/sp64-elf.h (SPARC_V9,SPARC_ARCH64): Delete.
856 (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT. Delete
857 MASK_LONG64, MASK_MEDANY.
858 (SPARC_DEFAULT_CMODEL): Define.
859 (CPP_PREDEFINES): Delete.
860 (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
861 (ASM_SPEC): Add %(asm_arch).
862 (LONG_DOUBLE_TYPE_SIZE): Define.
863 (DWARF2_DEBUGGING_INFO): Define.
864 * sparc/splet.h (CPP_SPEC): Delete.
865 * sparc/sysv4.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
866 (FUNCTION_BLOCK_PROFILER): Delete TARGET_EMBMEDANY support.
867 (BLOCK_PROFILER): Likewise.
868 * sparc/sparc.c (sparc_cmodel_string,sparc_cmodel): New globals.
869 (sparc_override_options): Handle code model selection.
870 (sparc_init_expanders): Renamed from sparc64_init_expanders.
871 * sparc/sparc.md: TARGET_<code_model> renamed to TARGET_CM_....
872 TARGET_MEDANY renamed to TARGET_CM_EMBMEDANY.
873 (sethi_di_embmedany_{data,text}): Renamed from sethi_di_medany_....
874 (sethi_di_fullany): Delete.
875
876 Mon Oct 20 02:00:18 1997 Klaus Kaempf <kkaempf@progis.de>
877 Jeff Law <law@cygnus.com>
878 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
879
880 * alpha/vms.h (DIVSI3_LIBCALL): OTS$ functions are upper case.
881 (DIVDI3_LIBCALL, UDIVSI3_LIBCALL, UDIVDI3_LIBVALL): Likewise.
882 (MODSI3_LIBCALL, MODDI3_LIBCALL): Likewise.
883 (UMODSI3_LIBCALL, UMODDI3_LIBCALL): Likewise.
884 * alpha/alpha.md (arg_home): Likewise.
885
886 * alpha/alpha.c (vmskrunch): Delete
887 * alpha/vms.h (ENCODE_SECTION_INFO, ASM_DECLARE_FUNCTION_NAME): Delete.
888 * alpha.c (output_prolog, VMS): Use alloca for entry_label and don't
889 truncate to 64 characters.
890
891 * make-l2.com: Support openVMS/Alpha.
892
893 * vmsconfig.com: Fix to work on openVMS/Alpha and openVMS/VAX.
894
895 Sun Oct 19 19:00:35 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
896
897 * longlong.h (count_leading_zeros): Add missing casts to USItype.
898
899 Sun Oct 19 18:44:06 1997 Jeffrey A Law (law@cygnus.com)
900
901 * i386/bsd386.h (ASM_COMMENT_START): Define.
902
903 Sat Oct 18 13:47:15 1997 Jason Merrill <jason@yorick.cygnus.com>
904
905 * tree.c (restore_tree_status): Also free up temporary storage
906 when we finish a toplevel function.
907 (dump_tree_statistics): Print stats for backend obstacks.
908
909 Sat Oct 18 12:47:31 1997 Doug Evans <dje@canuck.cygnus.com>
910
911 * expr.c (use_group_regs): Don't call use_reg for MEMs.
912
913 Sat Oct 18 09:49:46 1997 Jason Merrill <jason@yorick.cygnus.com>
914
915 * libgcc2.c (__throw): Don't copy the return address.
916 * dwarf2out.c (expand_builtin_dwarf_reg_size): Ignore return address.
917
918 * except.c (exceptions_via_longjmp): Initialize to 2 (uninitialized).
919 * toplev.c (main): Initialize exceptions_via_longjmp.
920
921 * tree.c: Add extra_inline_obstacks.
922 (save_tree_status): Use it.
923 (restore_tree_status): If this is a toplevel inline obstack and we
924 didn't want to save anything on it, recycle it.
925 (print_inline_obstack_statistics): New fn.
926 * function.c (pop_function_context_from): Pass context to
927 restore_tree_status.
928 * obstack.h (obstack_empty_p): New macro.
929
930 Sat Oct 18 00:43:59 1997 Jeffrey A Law (law@cygnus.com)
931
932 * i386/freebsd.h (ASM_COMMENT_START): Fix.
933
934 Fri Oct 17 23:48:52 1997 Jim Wilson (wilson@cygnus.com)
935
936 * v850.c (ep_memory_offset): New function.
937 (ep_memory_operand, substitute_ep_register, v850_reorg): Call it.
938
939 * v850.h (CONST_OK_FOR_*): Add and correct comments.
940 (CONSTANT_ADDRESS_P): Add comment.
941 (EXTRA_CONSTRAINT): Define 'U'.
942 * v850.md: Add comments on bit field instructions.
943 (addsi3): Delete &r/r/r alternative. Add r/r/U alternative.
944 (lshrsi3): Use N not J constraint.
945
946 * v850.md (v850_tst1+1): New define_split for tst1 instruction.
947
948 * v850.c (reg_or_0_operand): Call register_operand.
949 (reg_or_int5_operand): Likewise.
950 * v850.h (MASK_BIG_SWITCH, TARGET_BIG_SWITCH): New macros.
951 (TARGET_SWITCHES): Add "big-switch".
952 (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE,
953 ASM_OUTPUT_BEFORE_BASE_LABEL): Add support for TARGET_BIG_SWITCH.
954 (CASE_DROPS_THROUGH): Comment out.
955 (CASE_VECTOR_PC_RELATIVE, JUMP_TABLES_IN_TEXT_SECTION): Define.
956 * v850.md (cmpsi): Delete compare mode.
957 (casesi): New pattern.
958
959 * v850.h (CONST_OK_FOR_N): Delete redundant compare against zero.
960 * v850.md (ashlsi3): Use SImode not QImode for shift count.
961 (lshrsi3): Likewise.
962
963 * v850.c (print_operand): Add 'c', 'C', and 'z' support. Delete
964 unreachable switch statement after 'b' support. Remove "b" from
965 strings for 'b' support.
966 * v850.md (branch_normal, branch_invert): Change %b to b%b.
967
968 Fri Oct 17 23:33:20 1997 Jeffrey A Law (law@cygnus.com)
969
970 * Makefile.in (LIBGCC2_CFLAGS): Avoid a backslash then an
971 empty line if @inhibit_libc@ is empty.
972
973 Fri Oct 17 23:24:40 1997 Robert Lipe (robertl@dgii.com)
974
975 * i386/sco5.h: Let ELF use dwarf2 unwinding. COFF uses sjlj.
976 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Defined.
977 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
978 (DWARF2_UNWIND_INFO): Let this track object file format.
979 (EXTRA_SECTIONS): Add in_eh.
980 (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Define.
981 (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
982
983 Fri Oct 17 17:13:42 1997 David S. Miller <davem@tanya.rutgers.edu>
984
985 * sparc/linux64.h (LINK_SPEC): Dynamic linker is ld-linux64.so.2.
986 * sparc/sparc.h (FUNCTION_PROFILER): Fix format string when
987 TARGET_MEDANY.
988 * sparc/sparc.c (dwarf2out_cfi_label): Extern no longer needed.
989 (output_double_int): Output DI mode values correctly when
990 HOST_BITS_PER_WIDE_INT is 64.
991 (output_fp_move_quad): If TARGET_V9 and not TARGET_HARD_QUAD, use
992 fmovd so it works if a quad float ends up in one of the upper 32
993 float regs.
994 * sparc/sparc.md (pic_{lo_sum,sethi}_di): New patterns
995 necessary for PIC support on sparc64.
996
997 Fri Oct 17 13:39:56 1997 Doug Evans <dje@canuck.cygnus.com>
998
999 * sparc/sp64-elf.h (TARGET_DEFAULT): Delete MASK_STACK_BIAS.
1000 * sparc/sparc.h (PROMOTE_MODE): Promote small ints if arch64.
1001 (PROMOTE_FUNCTION_ARGS,PROMOTE_FUNCTION_RETURN): Define.
1002 (SPARC_FIRST_FP_REG, SPARC_FP_REG_P): New macros.
1003 (SPARC_{OUTGOING,INCOMING}_INT_ARG_FIRST): New macros.
1004 (SPARC_FP_ARG_FIRST): New macro.
1005 (CONDITIONAL_REGISTER_USAGE): All v9 fp regs are volatile now.
1006 (REG_ALLOC_ORDER,REG_LEAF_ALLOC_ORDER): Reorganize fp regs.
1007 (NPARM_REGS): There are 32 fp argument registers now.
1008 (FUNCTION_ARG_REGNO_P): Likewise.
1009 (FIRST_PARM_OFFSET): Update to new v9 abi.
1010 (REG_PARM_STACK_SPACE): Define for arch64.
1011 (enum sparc_arg_class): Delete.
1012 (sparc_arg_count,sparc_n_named_args): Delete.
1013 (struct sparc_args): Redefine and use for arch32 as well as arch64.
1014 (GET_SPARC_ARG_CLASS,ROUND_REG,ROUND_ADVANCE): Delete.
1015 (FUNCTION_ARG_ADVANCE): Rewrite.
1016 (FUNCTION_ARG,FUNCTION_INCOMING_ARG): Rewrite.
1017 (FUNCTION_ARG_{PARTIAL_NREGS,PASS_BY_REFERENCE}): Rewrite.
1018 (FUNCTION_ARG_CALLEE_COPIES): Delete.
1019 (FUNCTION_ARG_{PADDING,BOUNDARY}): Define.
1020 (STRICT_ARGUMENT_NAMING): Define.
1021 (doublemove_string): Declare.
1022 * sparc/sparc.c (sparc_arg_count,sparc_n_named_args): Delete.
1023 (single_move_string): Use GEN_INT, and HOST_WIDE_INT.
1024 (doublemove_string): New function.
1025 (output_move_quad): Clean up some of the arch64 support.
1026 (compute_frame_size): Add REG_PARM_STACK_SPACE if arch64.
1027 Don't add 8 bytes of reserved space if arch64.
1028 (sparc_builtin_saveregs): Combine arch32/arch64 versions.
1029 (init_cumulative_args): New function.
1030 (function_arg_slotno): New static function.
1031 (function_arg,function_arg_partial_nregs): New functions.
1032 (function_arg_{pass_by_reference,advance}): New functions.
1033 (function_arg_padding): New function.
1034 * ginclude/va-sparc.h: Rewrite v9 support.
1035
1036 Fri Oct 17 12:29:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
1037
1038 * regclass.c (record_address_regs): Look at REG_OK_FOR_{BASE,INDEX}_P
1039 for hard regs to determine base and index registers.
1040
1041 * reload.c (debug_reload_to_stream): New function. Specify stream
1042 into which to write debug info.
1043 (debug_reload): Modify to call debug_reload_to_stream with stderr.
1044
1045 Thu Oct 16 15:07:51 1997 Richard Henderson <rth@cygnus.com>
1046
1047 * combine.c (can_combine_p): Don't combine with an asm whose
1048 output is a hard register.
1049
1050 Thu Oct 16 15:43:26 1997 Mike Stump (mrs@wrs.com)
1051
1052 * c-decl.c (start_struct): Ensure that structs with forward
1053 declarations are in fact packed when -fpack-struct is given.
1054
1055 * stor-layout.c (layout_record): Ignore STRUCTURE_SIZE_BOUNDARY if
1056 we are packing a structure. This allows a structure with only
1057 bytes to be aligned on a byte boundary and have no padding on a
1058 m68k.
1059
1060 Thu Oct 16 15:17:54 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1061
1062 * rs6000.h (ROUND_TYPE_ALIGN): Don't blow up if no fields in record.
1063
1064 Thu Oct 16 11:20:30 1997 Richard Henderson <rth@cygnus.com>
1065
1066 * alpha.c (alpha_return_addr_rtx): New variable.
1067 (alpha_save_machine_status): New; save it.
1068 (alpha_restore_machine_status): New; restore it.
1069 (alpha_init_expanders): New; clear it.
1070 (alpha_return_addr): New; set it.
1071 (alpha_ra_ever_killed): New; if alpha_return_addr_rtx, regs_ever_live
1072 is overly conservative, so search the insns explicitly.
1073 (alpha_sa_mask [VMS]): Check alpha_ra_ever_killed.
1074 (alpha_sa_size [VMS && !VMS]): Likewise.
1075 * alpha.h (RETURN_ADDR_RTX): Call alpha_return_addr.
1076 (INIT_EXPANDERS): New definition.
1077
1078 * alpha.c: Move REG_PV, REG_RA somewhere more visible in the file.
1079 (output_prolog [!VMS]): Use them.
1080
1081 * alpha.c (output_prolog [!VMS]): Move gp detection to ...
1082 (alpha_does_function_need_gp): ... a new function. Refine the
1083 CALL_INSN test to just TYPE_JSR.
1084 * alpha.md (most call insns): Fix some jsr/ibr type transpositions.
1085
1086 Thu Oct 16 09:36:47 1997 Jeffrey A Law (law@cygnus.com)
1087
1088 * version.c: Bump for snapshot.
1089
1090 Wed Oct 15 21:38:18 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1091
1092 * pa.c (move_operand): Respect -mdisable-indexing.
1093 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
1094
1095 Wed Oct 15 21:34:45 1997 David Edelsohn <edelsohn@mhpcc.edu>
1096
1097 * rs6000.md (udivsi3, divsi3): Split into MQ and non-MQ cases for
1098 PPC601.
1099 (umulsidi3,umulsi3_highpart): Ditto.
1100 (smulsi3_highpart_no_mq): Add !TARGET_POWER.
1101
1102 Wed Oct 15 18:21:46 1997 Richard Henderson <rth@cygnus.com>
1103
1104 * alpha.c (final_prescan_insn): Gut, remove and transform to ...
1105 (alpha_handle_trap_shadows): ... a new function. Handle the entire
1106 function in one go. Emit RTL for trapb, instead of printf directly.
1107 (alpha_reorg): New function. Call alpha_handle_trap_shadows.
1108 (trap_pending): Kill global variable.
1109 (output_epilog): Don't call final_prescan_insn.
1110 (struct shadow_summary): Elide $31 and $f31; now it fits in a word.
1111 * alpha.h (FINAL_PRESCAN_INSN): Remove.
1112 (MACHINE_DEPENENT_REORG): Define.
1113 * alpha.md (jsr patterns with trapb): Stupid and useless. Kill.
1114 (trapb): New insn.
1115
1116 Wed Oct 15 18:16:05 1997 Richard Henderson <rth@cygnus.com>
1117
1118 Tune Haifa scheduler for Alpha:
1119 * alpha.h (ISSUE_RATE): Define.
1120 * alpha.c (alpha_adjust_cost): Handle EV5 mult delay; don't apply
1121 EV4 adjustments to EV5.
1122 * alpha.md: Remove all scaling from function unit delays. Rework
1123 EV5 function units to match the CPU.
1124 (umuldi3_highpart): EV5 added the IMULH insn class.
1125
1126 Wed Oct 15 17:42:41 1997 Jeffrey A Law (law@cygnus.com)
1127
1128 * pa.c (following_call): Fail if the CALL_INSN is an indirect
1129 call.
1130
1131 Tue Oct 14 12:01:00 1997 Mark Mitchell <mmitchell@usa.net>
1132
1133 * cplus-dem.c (demangle_signature): Don't look for return types on
1134 constructors. Handle member template constructors.
1135
1136 Tue Oct 14 11:30:29 1997 Jason Merrill <jason@yorick.cygnus.com>
1137
1138 * tree.c (expr_tree_cons, build_expr_list, expralloc): New fns.
1139 * tree.h: Declare them.
1140
1141 Fri Oct 10 13:46:56 1997 Doug Evans <dje@canuck.cygnus.com>
1142
1143 * configure.in: Handle --with-newlib.
1144 * Makefile.in (LIBGCC2_CFLAGS): Add @inhibit_libc@.
1145
1146 * sparc/t-sp64 (LIBGCC2_CFLAGS): Delete.
1147
1148 Wed Oct 8 14:37:44 1997 Jeffrey A Law (law@cygnus.com)
1149
1150 * config/ptx4.h: Fix typo.
1151
1152 Wed Oct 8 08:57:20 1997 Jeffrey A Law (law@cygnus.com)
1153
1154 * version.c: Bump for snapshot.
1155
1156 Tue Oct 7 16:27:34 1997 Manfred Hollstein <manfred@s-direktnet.de>
1157
1158 * aclocal.m4: Substitute INSTALL.
1159 * configure: Re-built.
1160
1161 Tue Oct 7 15:37:35 1997 Jeffrey A Law (law@cygnus.com)
1162
1163 * integrate.c (save_for_inline_copying): Avoid undefined pointer
1164 operations.
1165 (expand_inline_function): Likewise.
1166
1167 * dwarf2out.c (output_call_frame_info): Reinstate last change
1168 using flag_debug_asm check instead of flag_verbose_asm.
1169
1170 Tue Oct 7 12:57:26 1997 Jim Wilson <wilson@cygnus.com>
1171
1172 * dwarf2out.c (output_call_frame_info): Remove last change.
1173
1174 1997-10-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1175
1176 * frame.c (__frame_state_for): Execute the FDE insns until the
1177 current pc value is strictly bigger than the target pc value.
1178
1179 Tue Oct 7 11:00:42 1997 Jason Merrill <jason@yorick.cygnus.com>
1180
1181 * regclass.c (init_reg_modes): If we can't find a mode for the
1182 register, use the previous one.
1183
1184 Tue Oct 7 10:55:34 1997 Richard Henderson <rth@cygnus.com>
1185
1186 * haifa-sched.c (print_block_visualization): Call fprintf directly,
1187 don't sprintf through an alloca'ed buffer.
1188
1189 Tue Oct 7 10:52:29 1997 Thomas Koenig (ig25@rz.uni-karlsruhe.de)
1190
1191 * reload.c (decompose): Always initialize val.base.
1192
1193 Tue Oct 7 10:19:26 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
1194
1195 * m68k/mot3300.h (ASM_OUTPUT_ALIGN): Accept any alignment
1196 instead of aborting.
1197 * dwarf2out.c (output_call_frame_info): Call app_enable and
1198 app_disable to let GNU as accept the generated comments.
1199
1200 Tue Oct 7 11:41:21 1997 Michael Meissner <meissner@cygnus.com>
1201
1202 * tree.h (get_file_function_name): Add declaration.
1203 * dwarf2out.c (output_call_frame_info): No need to cast
1204 get_file_function_name call anymore.
1205 * profile.c (toplevel): Remove get_file_function_name
1206 declaration.
1207 * c-lang.c (finish_file): Ditto.
1208
1209 Tue Oct 7 10:01:45 1997 Chip Salzenberg <chip@rio.atlantic.net>
1210
1211 * Makefile.in (program_transform_name): Let autoconf substitute
1212 the correct value.
1213
1214 Tue Oct 7 09:54:35 1997 Jeffrey A Law (law@cygnus.com)
1215
1216 * haifa-sched.c (schedule_block): If the first real insn in a
1217 block has any special notes attached to it, remove them.
1218
1219 Tue Oct 7 09:48:51 1997 Richard Henderson <rth@cygnus.com>
1220
1221 * alpha.h (FLOAT_STORE_FLAG_VALUE): It's 2.0 not 0.5.
1222
1223 Mon Oct 6 12:47:32 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
1224
1225 * m88k.c (m88k_begin_prologue): Remove superfluous backslash.
1226
1227 Mon Oct 6 12:04:24 1997 Jeffrey A Law (law@cygnus.com)
1228
1229 * Makefile.in (check-g77): New test target.
1230 (CHECK-TARGETS): Add check-g77.
1231
1232 Fri Oct 3 11:56:36 1997 Jason Merrill <jason@yorick.cygnus.com>
1233
1234 * toplev.c (rest_of_compilation): Defer all non-nested inlines.
1235
1236 Fri Oct 3 15:49:27 1997 Michael Meissner <meissner@cygnus.com>
1237
1238 * flow.c (print_rtl_with_bb): Cast alloca return value for
1239 in_bb_p.
1240
1241 Thu Oct 2 21:15:03 1997 Richard Henderson <rth@cygnus.com>
1242
1243 * i386.h (RETURN_ADDR_RTX): New definition that works for
1244 __builtin_return_address(0) and -fomit-frame-pointer.
1245
1246 Wed Oct 1 13:43:53 1997 Jim Wilson <wilson@cygnus.com>
1247
1248 Bring over from FSF.
1249 Tue Aug 5 16:10:45 1997 Jason Merrill <jason@yorick.cygnus.com>
1250
1251 * mips.c (function_arg): Handle passing a struct
1252 containing a double in a DFmode register without the PARALLEL.
1253
1254 Wed Oct 1 11:13:25 1997 Ian Lance Taylor <ian@cygnus.com>
1255
1256 * pexecute.c: Use spawn if __CYGWIN32__.
1257
1258 * pexecute.c: Include "config.h" first, as per autoconf manual
1259 (from Paul Eggert <eggert@twinsun.com>).
1260
1261 Wed Oct 1 01:44:36 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
1262
1263 * m68k/x-mot3300 (XCFLAGS): Disable as's long/short jump
1264 optimisation for f/expr.o and f/stb.o.
1265
1266 Tue Sep 30 23:48:57 1997 Jeffrey A Law (law@cygnus.com)
1267
1268 * cse.c (this_insn_cc0_mode): Initialize.
1269
1270 Tue Sep 30 23:09:40 1997 Thomas Koenig <ig25@mvmap66.ciw.uni-karlsruhe.de>
1271
1272 * cccp.c (expand_to_temp_buffer): Initialize all members of obuf.
1273
1274 * haifa-sched.c (get_block_head_tail): Remove unneeded initialization.
1275
1276 Tue Sep 30 23:06:43 1997 Richard Henderson <rth@cygnus.com>
1277
1278 * alpha.md (beq): For registers and ints 0-255, use cmpeq+bne, since
1279 that pair will dual-issue on the 21164 and plus+beq won't.
1280 (bne): Likewise for cmpeq+beq.
1281
1282 Tue Sep 30 16:07:58 1997 Jim Wilson <wilson@cygnus.com>
1283
1284 * except.c (find_exception_handler_labels): Correct argument to free.
1285
1286 Tue Sep 30 11:00:00 1997 Brendan Kehoe <brendan@lisa.cygnus.com>
1287
1288 * except.c (find_exception_handler_labels): Free LABELS when we're
1289 done.
1290
1291 Mon Sep 29 14:04:35 1997 Jeffrey A Law (law@cygnus.com)
1292
1293 * version.c: Bump for snapshot.
1294
1295 Mon Sep 29 10:51:53 1997 Jason Merrill <jason@yorick.cygnus.com>
1296
1297 * flow.c (find_basic_blocks): Mark calls as potentially jumping
1298 to the EH labels.
1299
1300 Mon Sep 29 09:58:06 1997 Jeffrey A Law (law@cygnus.com)
1301
1302 * configure.in: Substitute for "install" too.
1303 * configure: Rebuilt.
1304
1305 Mon Sep 29 00:38:42 1997 Aaron Jackson <jackson@negril.msrce.howard.edu>
1306
1307 * Makefile.in (bootstrap-lean, compare-lean): New targets.
1308
1309 Mon Sep 29 00:18:16 1997 Richard Henderson (rth@cygnus.com)
1310
1311 * alias.c (base_alias_check): Two symbols can conflict if they
1312 are accessed via AND.
1313 (memrefs_conflict_p): Likewise.
1314
1315 * alpha.h (SETUP_INCOMING_VARARGS): Emit a blockage insn
1316 after flushing argument registers to the stack.
1317
1318 * Makefile.in (mostlyclean): Remove .regmove files.
1319
1320 Sun Sep 28 18:59:58 1997 Jason Merrill <jason@yorick.cygnus.com>
1321
1322 * libgcc2.c (__throw): Fix thinko.
1323
1324 Sun Sep 28 12:00:52 1997 Mark Mitchell <mmitchell@usa.net>
1325
1326 * cplus-dem.c (demangle_template): Add new parameter. Handle new
1327 template-function mangling.
1328 (consume_count_with_underscores): New function.
1329 (demangle_signature): Handle new name-mangling scheme.
1330
1331 Sun Sep 28 01:55:04 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
1332
1333 * flow.c (print_rtl_with_bb): Cast alloca return values for variables
1334 start and end.
1335
1336 Sun Sep 28 01:05:16 1997 Jeffrey A Law (law@cygnus.com)
1337
1338 * frame.c: Remove last change.
1339 * dwarf2.h: Remove last change.
1340 * tree.h: Add declarations of DWARF2 unwind info support
1341 functions.
1342
1343 Sat Sep 27 11:02:38 1997 Jason Merrill <jason@yorick.cygnus.com>
1344
1345 * c-decl.c (init_decl_processing): Add __builtin_dwarf_reg_size.
1346 * tree.h (built_in_function): Likewise.
1347 * expr.c (expand_builtin): Likewise.
1348 * except.h: Likewise.
1349 * dwarf2out.c (expand_builtin_dwarf_reg_size): New fn.
1350 * libgcc2.c (copy_reg): New fn.
1351 (__throw): Use it.
1352
1353 Fri Sep 26 08:54:59 1997 Paul Eggert <eggert@twinsun.com>
1354
1355 * c-typeck.c (build_binary_op): Warn about comparing signed vs
1356 unsigned if -W is specified and -Wno-sign-compare is not.
1357 * c-decl.c (warn_sign_compare): Initialize to -1.
1358 (c_decode_option): -Wall no longer implies -Wsign-compare.
1359
1360 Fri Sep 26 09:00:13 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1361
1362 * frame.c: Include gansidecl.h for PROTO.
1363 * dwarf2out.c: Move inclusion of dwarf2.h down so that PROTO is
1364 defined. Don't declare dwarf2out_cfi_label here.
1365 * dwarf2.h: Add declarations of DWARF2 unwind info support
1366 functions.
1367 * m68k.c: Include dwarf2.h.
1368 (output_function_prologue): Add dwarf2 support.
1369 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM): New macros.
1370 (INCOMING_FRAME_SP_OFFSET): Likewise.
1371
1372 * integrate.c (expand_inline_function): Make sure there is at
1373 least one insn that can be used as an insertion point.
1374
1375 Wed Sep 24 21:34:06 1997 Jason Merrill <jason@yorick.cygnus.com>
1376
1377 * dwarf2out.c: s/flag_verbose_asm/flag_debug_asm/
1378
1379 Wed Sep 24 22:05:30 1997 Jeffrey A Law (law@cygnus.com)
1380
1381 * version.c: Bump for snapshot.
1382
1383 Wed Sep 24 17:36:23 1997 Doug Evans <dje@canuck.cygnus.com>
1384
1385 Bring over from FSF.
1386
1387 Wed Sep 24 19:17:08 1997 Doug Evans <dje@cygnus.com>
1388
1389 * sparc/sparc.md (get_pc_via_call): Renamed from get_pc_sp32.
1390 (get_pc_via_rdpc): Renamed from get_pc_sp64.
1391 * sparc/sparc.c (finalize_pic): Update call to gen_get_pc_via_call.
1392
1393 Wed Sep 24 18:38:22 1997 David S. Miller <davem@tanya.rutgers.edu>
1394
1395 * sparc/sparc.h (ASM_CPU_SPEC): Pass -Av9a for v8plus, ultrasparc.
1396 (TARGET_OPTIONS): Add -malign-loops=, -malign-jumps=,
1397 -malign-functions=.
1398 (sparc_align_{loops,jumps,funcs}_string): Declare.
1399 (sparc_align_{loops,jumps,funcs}): Declare.
1400 (DEFAULT_SPARC_ALIGN_FUNCS): New macro.
1401 (FUNCTION_BOUNDARY): Use sparc_align_funcs.
1402 (STACK_BIAS): Define.
1403 (SPARC_SIMM*_P): Cast to unsigned HOST_WIDE_INT first, then perform
1404 test.
1405 (SPARC_SETHI_P): New macro.
1406 (CONST_OK_FOR_LETTER_P): Use it.
1407 (ASM_OUTPUT_ALIGN_CODE): Define.
1408 (ASM_OUTPUT_LOOP_ALIGN): Define.
1409 * sparc/sparc.c (sparc_align_{loops,jumps,funcs}_string): New globals.
1410 (sparc_align_{loops,jumps,funcs}): New globals.
1411 (sparc_override_options): Handle -malign-loops=, -malign-jumps=,
1412 -malign-functions=.
1413 (move_operand): Use SPARC_SETHI_P.
1414 (arith_double_operand): Cast to unsigned HOST_WIDE_INT first, then
1415 perform test.
1416 (arith11_double_operand): Likewise.
1417 (arith10_double_operand): Likewise.
1418 (finalize_pic): Finish sparc64 support.
1419 (emit_move_sequence): Use SPARC_SETHI_P. Simplify low part of
1420 64 bit constants if able.
1421 (output_fp_move_quad): Don't use fmovq unless TARGET_HARD_QUAD.
1422 (sparc_builtin_saveregs, sparc64 case): Don't save fp regs if
1423 ! TARGET_FPU.
1424 * sparc/sparc.md (*): Use GEN_INT instead of gen_rtx.
1425 (get_pc_sp32): Use for sparc64 as well.
1426 (lo_sum_di_sp{32,64}): Fix handling on 64 bit hosts.
1427 (sethi_di_sp64_const): Likewise.
1428 (movtf_cc_sp64): Check TARGET_HARD_QUAD.
1429 (cmp_zero_extract_sp64): Use unsigned HOST_WIDE_INT in cast.
1430 (ashlsi3, ashldi3, ashrsi3, ashrdi3, lshrsi3, lshrdi3): Likewise.
1431
1432 Tue Sep 23 19:02:46 1997 Doug Evans <dje@cygnus.com>
1433
1434 * sparc/linux-aout.h (COMMENT_BEGIN): Delete.
1435 * sparc/linux.h (COMMENT_BEGIN): Likewise.
1436 * sparc/linux64.h (COMMENT_BEGIN): Likewise.
1437
1438 Tue Sep 23 14:48:18 1997 David S. Miller <davem@tanya.rutgers.edu>
1439
1440 Add sparc64 linux support.
1441 * configure.in (sparc64-*-linux*): Recognize. Add sparc/xm-sparc.h
1442 to xm_file list on 32-bit sparc-linux.
1443 * sparc/xm-sp64.h: New file.
1444 * sparc/linux64.h: New file.
1445 * sparc/xm-linux.h: Include some standard headers if not inhibit_libc.
1446 Don't include xm-sparc.h.
1447 * config/xm-linux.h (HAVE_PUTENV, HAVE_ATEXIT): Define.
1448 * glimits.h (LONG_MAX): Handle sparc64.
1449
1450 Sat Sep 20 03:07:54 1997 Doug Evans <dje@cygnus.com>
1451
1452 * sparc/sysv4.h (ASM_COMMENT_START): Delete.
1453 * sparc.h (ASM_COMMENT_START): Define.
1454 * sparc.c (output_function_prologue): Use it.
1455 (sparc_flat_output_function_{epi,pro}logue): Likewise.
1456
1457 Wed Sep 17 15:04:19 1997 Doug Evans <dje@cygnus.com>
1458
1459 * sparc/sysv4.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Delete,
1460 use sparc.h's copies.
1461 * sparc/sparc.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Print
1462 ascii form as well.
1463
1464 Mon Sep 8 08:45:19 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1465
1466 * sparc.c (dwarf2out_cfi_label): Add declaration.
1467 (save_regs, output_function_prologue): Remove cast for it.
1468 (sparc_flat_{save_restore,output_function_prologue): Likewise.
1469 ({save,restore}_regs): No longer inline.
1470
1471 Tue Sep 23 12:34:51 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1472
1473 * fold-const.c (make_range): Correctly handle cases of converting
1474 from unsigned to signed type.
1475
1476 Tue Sep 23 12:34:51 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
1477
1478 * fold-const.c (merge_ranges): Make sure that if one range is subset
1479 of another, it will always be the second range. Correct (+,-) case to
1480 account for this.
1481
1482 Tue Sep 23 08:32:51 1997 Jason Merrill <jason@yorick.cygnus.com>
1483
1484 * final.c (final_end_function): Also do dwarf2 thing if
1485 DWARF2_DEBUGGING_INFO.
1486 (final_start_function): Likewise.
1487
1488 Tue Sep 23 01:15:50 1997 David S. Miller <davem@tanya.rutgers.edu>
1489
1490 * expmed.c (expand_divmod): If compute_mode is not the same as
1491 mode, handle the case where convert_modes() causes op1 to no
1492 longer be a CONST_INT.
1493
1494 * reorg.c (dbr_schedule): At end of this pass, add REG_BR_PRED
1495 note holding get_jump_flags() calculation to all JUMP_INSNs.
1496 * rtl.h (enum reg_note): New note types REG_BR_PRED and REG_SAVE_AREA.
1497 * rtl.c (reg_note_name): Add new note types.
1498
1499 Tue Sep 23 00:59:54 1997 Jeffrey A Law (law@cygnus.com)
1500
1501 * rtlanal.c (computed_jump_p): Fix typo in last change.
1502
1503 Tue Sep 23 00:42:44 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
1504
1505 * loop.c (indirect_jump_in_function_p): Return 0
1506 by default.
1507
1508 Tue Sep 23 00:33:55 1997 Jeffrey A Law (law@cygnus.com)
1509
1510 * rs6000/xm-rs6000.h: Fix thinko in last change.
1511 * rs6000/xm-sysv4.h: Likewise.
1512
1513 Mon Sep 22 19:33:53 1997 Jim Wilson <wilson@cygnus.com>
1514
1515 * mips.c (save_restore_insns): Only set RTX_FRAME_RELATED_P if store_p.
1516
1517 Mon Sep 22 14:41:00 1997 Jeffrey A Law (law@cygnus.com)
1518
1519 * reg-stack.c (find_blocks): Fix thinko in last change.
1520
1521 1997-09-21 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1522
1523 * m68k.c (output_function_prologue): Add dwarf2 support.
1524
1525 * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM,
1526 INCOMING_FRAME_SP_OFFSET): New definitions.
1527
1528 Mon Sep 22 11:36:42 1997 David S. Miller <davem@tanya.rutgers.edu>
1529
1530 * combine.c (try_combine): Use NULL_RTX instead of '0' where
1531 appropriate in calls to gen_rtx().
1532 * cse.c (cse_main): Likewise.
1533 * emit-rtl.c (gen_label_rtx): Likewise.
1534 * expr.c (init_expr_once): Likewise.
1535 * haifa-sched.c (flush_pending_lists, sched_analyze_insn,
1536 sched_analyze, init_rgn_data_dependences,
1537 compute_block_backward_dependences): Likewise.
1538 * sched.c (schedule_insns): Likewise.
1539 * varasm.c (immed_double_const): Likewise.
1540
1541 * sparc.h (INCOMING_FRAME_SP_OFFSET): Define to
1542 SPARC_STACK_BIAS for sake of dwarf2 on sparc64.
1543
1544 Mon Sep 22 11:21:33 1997 J. Kean Johnston <jkj@sco.com>
1545
1546 * i386/sco5.h: Make ELF default file format and add -mcoff/-melf..
1547 (MULTILIB_DEFAULTS): Define.
1548 (ASM_SPEC, CPP_SPEC): Handle -mcoff.
1549 (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Likewise.
1550 (LIBGCC_SPEC): Likewise.
1551 (MASK_COFF, TARGET_COFF, TARGET_ELF): Define.
1552 (SUBTARGET_SWITCHES): Add -mcoff and -melf.
1553 * i386/t-sco5 (CRTSTUFF_T_CFLAGS): Add -fPIC.
1554 (CRTSTUFF_T_CFLAGS_S): Tweak for COFF.
1555 (EXTRA_PARTS, TAROUTOPTS): Delete.
1556 (libgcc1-elf, libgcc2-elf, libgcc-elf targets): Delete.
1557 (MULTILIB_OPTIONS): Define.
1558 (MULTILIB_DIRNAMES, MULTILIB_EXCEPTIONS): Likewise.
1559 (MULTILIB_MATCHE, MULTILIB_EXTRA_OPTS): Likewise.
1560
1561 Mon Sep 22 02:10:43 1997 Jeffrey A Law (law@cygnus.com)
1562
1563 * version.c: Bump for snapshot.
1564
1565 Sun Sep 21 17:45:45 1997 Jeffrey A Law (law@cygnus.com)
1566
1567 * loop.c (loop_number): Delete function. Change all references
1568 to use uid_loop_num array.
1569 * loop.h (loop_number): Delete declaration.
1570 * unroll.c (unroll_loop): Change "loop_number" references to
1571 use uid_loop_num instead.
1572
1573 * loop.c (loop_unroll_factor): Move outside #ifdef HAIFA
1574 conditional.
1575 (loop_unroll_iter): Remove unused variable and all references.
1576 (loop_optimize): Always allocate and clear space for loop_unroll_factor.
1577 (insert_bct): Fix minor formatting problems.
1578 * loop.h (loop_unroll_factor): Move decl outside #ifdef HAIFA.
1579 (loop_unroll_iter): Removed unused decl.
1580 * unroll.c (unroll_loop): Remove code to set loop_unroll_iter.
1581 Always record the unrolling factor.
1582
1583 * cse.c (simplify_relational_operation): Set h0u just like h0s.
1584 Similarly for h1u and h1s.
1585
1586 * flow.c (jmp_uses_reg_or_mem): Deleted unused function.
1587 (find_basic_blocks): Use computed_jump_p to determine if a
1588 particular JUMP_INSN is a computed jump.
1589 * reg-stack.c (find_blocks): Use computed_jump_p to determine
1590 if a particular JUMP_INSN is a computed jump.
1591 * rtlanal.c (jmp_uses_reg_or_mem): New function.
1592 (computed_jump_p): Likewise.
1593 * rtl.h (computed_jump_p): Declare.
1594 * genattrtab.c (pc_rtx): Define and initialize.
1595 * loop.c (loop_optimize): Always determine if the current
1596 function has a computed jump.
1597 (indirect_jump_in_function_p): Use computed_jump_p to determine
1598 if a particular JUMP_INSN is a computed jump.
1599
1600 * loop.c (fix_bct_param): Delete unused function.
1601 (check_bct_param): Likewise.
1602
1603 Sat Sep 20 16:22:06 1997 Jason Merrill <jason@yorick.cygnus.com>
1604
1605 * frame.c (__deregister_frame): Check properly for initialized object.
1606
1607 Fri Sep 19 20:51:03 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
1608
1609 * alpha/linux.h (HANDLE_SYSV_PRAGMA): Defined.
1610
1611 Fri Sep 19 18:53:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
1612
1613 * jump.c (thread_jumps): check can_reverse_comparison_p before
1614 threading a reversed-condition jump.
1615
1616 * sched.c (update_flow_info): Don't pass SCRATCH to dead_or_set_p.
1617 * haifa-sched.c (update_flow_info): Likewise.
1618
1619 Thu Sep 18 21:13:40 1997 Jeffrey A Law (law@cygnus.com)
1620
1621 * Makefile.in (BOOT_CFLAGS): Use -O2.
1622
1623 * configure.in (strtoul, bsearch): Have autoconf check for these
1624 functions.
1625 * configure, config.in: Rebuilt.
1626
1627 * m68k/xm-mot3300.h (alloca): Properly declare if __STDC__.
1628 * mips/mips.h (alloca): Likewise.
1629 * rs6000/xm-rs6000.h (alloca): Likewise.
1630 * rs6000/xm-sysv4.h: Likewise.
1631
1632 Thu Sep 18 14:22:22 1997 Jason Merrill <jason@yorick.cygnus.com>
1633
1634 * final.c (final_scan_insn): Hand BARRIERs off to the dwarf2 code.
1635 * dwarf2out.c (dwarf2out_frame_debug): Pass the whole insn along.
1636 (dwarf2out_stack_adjust): A BARRIER resets the args space to 0.
1637
1638 * except.c (end_eh_unwinder): Subtract 1 from return address.
1639 * libgcc2.c (__throw): Likewise.
1640 (find_exception_handler): Don't change PC here. Compare end with >.
1641
1642 Thu Sep 18 10:43:07 1997 Nick Clifton <nickc@cygnus.com>
1643
1644 * v850.c (compute_register_save_size): Correct register
1645 number.
1646 * v850.md (save_interrupt, return_interrupt): Correct
1647 register number.
1648 * v850/lib1funcs.asm (save_interrupt): Correct register number.
1649 (return_interrupt): Use stack pointer, not element pointer.
1650
1651 1997-09-18 Brendan Kehoe <brendan@lisa.cygnus.com>
1652
1653 * configure.in, configure: Make sure to create the stage* and include
1654 symbolic links in each subdirectory.
1655
1656 Thu Sep 18 01:47:06 1997 Jeffrey A Law (law@cygnus.com)
1657
1658 * pa.md (reload_peepholes): Don't allow addresses with side
1659 effects for the memory operand.
1660
1661 Wed Sep 17 18:19:53 1997 Jason Merrill <jason@yorick.cygnus.com>
1662
1663 * libgcc2.c (find_exception_handler): Subtract one from our PC when
1664 looking for a handler, to avoid hitting the beginning of the next
1665 region.
1666
1667 * except.c (expand_builtin_set_return_addr_reg): Use force_operand.
1668
1669 Wed Sep 17 18:33:59 1997 Jeffrey A Law (law@cygnus.com)
1670
1671 * mips/abi64.h (LONG_MAX_SPEC): Define.
1672 * mips.h (LONG_MAX_SPEC): Define.
1673 (CPP_SPEC): Include long_max_spec.
1674 (EXTRA_SPECS): Include long_max_spec.
1675
1676 Wed Sep 17 14:11:38 1997 Jeffrey A Law (law@cygnus.com)
1677
1678 * v850.c (construct_save_jarl): Fix thinko in last change.
1679
1680 Wed Sep 17 09:53:07 1997 Jeffrey A Law (law@cygnus.com)
1681
1682 * version.c: Bump for snapshot.
1683
1684 Tue Sep 16 14:22:36 1997 Jason Merrill <jason@yorick.cygnus.com>
1685
1686 * libgcc2.c (find_exception_handler): Not found is -1.
1687
1688 * integrate.c (expand_inline_function): Move expand_start_bindings
1689 after expanding the arguments.
1690
1691 Tue Sep 16 11:13:46 1997 Jim Wilson <wilson@cygnus.com>
1692
1693 * expr.c (expand_expr): Remove previous incorrect change.
1694 If target and slot has no DECL_RTL, then call mark_addressable
1695 again for the slot after we give it RTL.
1696
1697 Tue Sep 16 09:18:52 1997 Jason Merrill (jason@cygnus.com)
1698
1699 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
1700 again for the slot after we give it RTL.
1701
1702 Tue Sep 16 00:13:20 1997 Nick Clifton <nickc@cygnus.com>
1703
1704 * v850.c (register_is_ok_for_epilogue,
1705 pattern_is_ok_for_epilogue, construct_restore_jr,
1706 pattern_is_ok_for_prologue, construct_save_jarl): New functions.
1707
1708 * v850.h (pattern_is_ok_for_prologue,
1709 pattern_is_ok_for_epilogue, register_is_ok_for_epilogue): New
1710 predicates.
1711
1712 * v850.md: Replace prologue and epilogue patterns with a
1713 match_parallel pattern.
1714
1715 Mon Sep 15 22:53:01 1997 Jeffrey A Law (law@cygnus.com)
1716
1717 * aclocal.m4: Add replacement for AC_PROG_INSTALL.
1718 * configure.in: Use EGCS_PROG_INSTALL.
1719
1720 Mon Sep 15 22:40:55 1997 Jim Wilson (wilson@cygnus.com)
1721
1722 * dwarf2out.c (gen_subprogram_die): Handle redefinition of an
1723 extern inline function.
1724
1725 Mon Sep 15 22:40:55 1997 Richard Henderson (rth@cygnus.com)
1726
1727 * dwarf2out.c (reg_loc_descriptor): Fix prototype.
1728 (concat_loc_descriptor): New function.
1729 (loc_descriptor): Call it.
1730 (add_AT_location_description): Also elide the descriptor if both
1731 halves of a CONCAT are pseudos.
1732 (add_location_or_const_value_attribute): Recognize CONCAT too.
1733
1734 Mon Sep 15 15:24:00 1997 Richard Henderson <rth@cygnus.com>
1735
1736 * alpha.md (movdi): Handle CONST_DOUBLE for TARGET_BUILD_CONSTANTS.
1737
1738 * alpha/alpha.c (output_prolog): New variable sa_reg. Use it for
1739 out-or-range reg_offset.
1740 (output_epilog): Likewise.
1741
1742 Mon Sep 15 15:39:26 1997 Jeffrey A Law (law@cygnus.com)
1743
1744 * cse.c (simplify_relational_operation): If MODE specifies a
1745 mode wider than HOST_WIDE_INT, then the high word of a CONST_INT
1746 is derived from the sign bit of the low word.
1747
1748 Mon Sep 15 11:43:38 1997 Jason Merrill <jason@yorick.cygnus.com>
1749
1750 Support dwarf2 unwinding on PUSH_ROUNDING targets like the x86.
1751
1752 * dwarf2.h: Add DW_CFA_GNU_args_size.
1753 * frame.c (execute_cfa_insn): Likewise.
1754 * dwarf2out.c (dwarf_cfi_name, output_cfi): Likewise.
1755 (dwarf2out_args_size, dwarf2out_stack_adjust): New fns.
1756 (dwarf2out_frame_debug): If this isn't a prologue or epilogue
1757 insn, hand it off to dwarf2out_stack_adjust.
1758 (dwarf2out_begin_prologue): Initialize args_size.
1759 * frame.h (struct frame_state): Add args_size.
1760 * libgcc2.c (__throw): Use args_size.
1761 * final.c (final_scan_insn): If we push args, hand off all insns
1762 to dwarf2out_frame_debug.
1763 * defaults.h (DWARF2_UNWIND_INFO): OK for !ACCUMULATE_OUTGOING_ARGS.
1764
1765 * dwarf2out.c dwarf2out_frame_debug): Fix typo.
1766 Handle epilogue restore of SP from FP.
1767 * emit-rtl.c (gen_sequence): Still generate a sequence if the
1768 lone insn has RTX_FRAME_RELATED_P set.
1769
1770 * frame.c (extract_cie_info): Handle "e" augmentation.
1771 * dwarf2out.c (ASM_OUTPUT_DWARF_*): Provide definitions in the
1772 absence of UNALIGNED_*_ASM_OP.
1773 (UNALIGNED_*_ASM_OP): Only provide defaults if OBJECT_FORMAT_ELF.
1774 (output_call_frame_info): Use "e" instead of "z" for augmentation.
1775 Don't emit augmentation fields length.
1776 (dwarf2out_do_frame): Move outside of #ifdefs.
1777 * defaults.h (DWARF2_UNWIND_INFO): Don't require unaligned data
1778 opcodes.
1779
1780 * sparc.h (UNALIGNED_INT_ASM_OP et al): Don't define here after all.
1781 * sparc/sysv4.h (UNALIGNED_INT_ASM_OP): Define here.
1782 * sparc/sunos4.h (DWARF2_UNWIND_INFO): Define to 0.
1783 * sparc/sun4gas.h: New file.
1784 * configure.in: Use sun4gas.h if SunOS 4 --with-gnu-as.
1785
1786 * collect2.c (write_c_file_stat, write_c_file_glob): Declare
1787 __register_frame_table and __deregister_frame.
1788
1789 1997-09-15 Brendan Kehoe <brendan@cygnus.com>
1790
1791 * except.c (find_exception_handler_labels): Use xmalloc instead of
1792 alloca, since MAX_LABELNO - MIN_LABELNO can be more than 1 million
1793 in some cases.
1794
1795 Sun Sep 14 21:01:23 1997 Jeffrey A Law (law@cygnus.com)
1796
1797 * Makefile.in: Various changes to build info files
1798 in the object tree rather than the source tree.
1799
1800 Sun Sep 14 12:24:30 1997 Jeffrey A Law (law@cygnus.com)
1801
1802 * fixinc.math: New file to fix math.h on some systems.
1803 * configure.in (freebsd, netbsd): Use fixinc.math on these
1804 systems.
1805 * configure: Rebuilt.
1806
1807 Sun Sep 14 11:11:05 1997 Jeffrey A Law (law@cygnus.com)
1808
1809 * regmove.c (regmove_optimize): If we end up moving the
1810 original insn due to lifetime overlaps, make sure to move
1811 REG_NOTES too.
1812
1813 Sat Sep 13 15:51:11 1997 Manfred Hollstein <manfred@s-direktnet.de>
1814
1815 * Makefile.in (INSTALL_{PROGRAM,DATA}): Use value found by configure.
1816
1817 Sat Sep 13 12:57:26 1997 Jeffrey A Law (law@cygnus.com)
1818
1819 * haifa-sched.c (add_branch_dependences): Make each insn in
1820 a SCHED_GROUP_P block explicitly depend on the previous insn.
1821
1822 Fri Sep 12 13:49:58 1997 Jason Merrill <jason@yorick.cygnus.com>
1823
1824 * except.h: Prototype dwarf2 hooks.
1825 * expr.c: Adjust.
1826
1827 Thu Sep 11 17:43:55 1997 Jim Wilson <wilson@cygnus.com>
1828
1829 * configure.in (native_prefix): Delete.
1830 (mips-dec-netbsd): Don't set prefix.
1831 (*linux*): Don't set prefix.
1832
1833 Thu Sep 11 15:48:32 1997 Fred Fish <fnf@ninemoons.com>
1834
1835 * protoize.c: Include <varargs.h> only if HAVE_VARARGS_H is
1836 defined. If not defined, include <sys/varargs.h> if
1837 HAVE_SYS_VARARGS_H is defined.
1838 * configure.in: Test for varargs.h and sys/varargs.h.
1839 * configure: Regenerate with autoconf.
1840 * config.in: Regenerate with autoheader.
1841
1842 * cpplib.c (quote_string): Cast first arg of sprintf call
1843 from "unsigned char *" to "char *".
1844 (output_line_command): Ditto.
1845 (macroexpand): Ditto.
1846 (do_line): Cast atoi arg from "unsigned char *" to "char *".
1847
1848 Wed Sep 10 21:37:30 1997 Jeffrey A Law (law@cygnus.com)
1849
1850 * version.c: Bump for snapshot.
1851
1852 * Makefile.in (compare): Exit with nonzero status if there
1853 are comparison failures. Note which files failed the
1854 comparison test in .bad_compare.
1855
1856 Wed Sep 10 17:05:46 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
1857
1858 * config/alpha/elf.h (CPP_PREDEFINES): Remove -D__PIC__ -D__pic__.
1859
1860 Wed Sep 10 16:37:28 1997 Fred Fish <fnf@ninemoons.com>
1861
1862 * Makefile.in (LN, LN_S): New macros, use where appropriate.
1863 * aclocal.m4 (GCC_PROG_LN_S, GCC_PROG_LN): New tests.
1864 * configure.in: Use GCC_PROG_LN_S and GCC_PROG_LN.
1865 * configure: Regenerated.
1866
1867 Thu Sep 11 11:09:43 1997 Jeffrey A Law (law@cygnus.com)
1868
1869 * loop.c (strength_reduce): Fix typo.
1870
1871 Wed Sep 10 16:01:15 1997 Jim Wilson <wilson@cygnus.com>
1872
1873 * m88k/m88k.c (struct option): Rename to struct options.
1874 * m88k/dolph.h (INITIALIZE_TRAMPOLINE): Delete here.
1875 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE): Delete ifdef and comments.
1876 * libgcc2.c (__enable_execute_stack): Check for __sysV88__ not
1877 __DOLPHIN__ or sysV88.
1878
1879 Wed Sep 10 14:58:40 1997 Jim Wilson <wilson@cygnus.com>
1880
1881 * emit-rtl.c (gen_lowpart_common): For a SUBREG, add in word when
1882 create new subreg.
1883
1884 Wed Sep 10 15:19:22 1997 Jeffrey A Law (law@cygnus.com)
1885
1886 * config.sub: Accept 'amigados' for backward compatability.
1887
1888 Wed Sep 10 14:05:08 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
1889
1890 * Makefile.in (testsuite/site.exp): New target.
1891 (check-gcc, check-g++): Depend on testsuite/site.exp.
1892 Don't stop for failure.
1893
1894 Wed Sep 10 12:59:57 1997 Jason Merrill <jason@yorick.cygnus.com>
1895
1896 * expr.c (expand_builtin): Only support __builtin_dwarf_fp_regnum()
1897 if DWARF2_UNWIND_INFO.
1898
1899 Wed Sep 10 11:49:20 1997 Jason Merrill <jason@yorick.cygnus.com>
1900
1901 Add support for exception handling using DWARF 2 frame unwind info.
1902 Currently works on SPARC and MIPS, and almost on x86.
1903
1904 * libgcc2.c (get_reg, put_reg, get_return_addr, put_return_addr,
1905 next_stack_level, in_reg_window): Helper fns.
1906 (__throw): Implement for DWARF2_UNWIND_INFO.
1907
1908 * expr.c (expand_builtin): Handle builtins used by __throw.
1909 * tree.h (enum built_in_function): Add builtins used by __throw.
1910 * c-decl.c (init_decl_processing): Declare builtins used by __throw.
1911 * dwarf2out.c (expand_builtin_dwarf_fp_regnum): Used by __throw.
1912 * except.c (expand_builtin_unwind_init): Hook for dwarf2 __throw.
1913 (expand_builtin_extract_return_addr): Likewise.
1914 (expand_builtin_frob_return_addr): Likewise.
1915 (expand_builtin_set_return_addr_reg): Likewise.
1916 (expand_builtin_eh_stub): Likewise.
1917 (expand_builtin_set_eh_regs): Likewise.
1918 (eh_regs): Choose two call-clobbered registers for passing back values.
1919
1920 * frame.c, frame.h: New files for parsing dwarf 2 frame info.
1921 * Makefile.in (LIB2ADD): New variable. Add $(srcdir)/frame.c.
1922 (libgcc2.a): Use it instead of $(LIB2FUNCS_EXTRA) $(LANG_LIB2FUNCS)
1923 (stmp-multilib): Likewise.
1924 ($(T)crtbegin.o, $(T)crtend.o): Add -fno-exceptions.
1925
1926 * except.c: #include "defaults.h".
1927 (exceptions_via_longjmp): Default depends on DWARF2_UNWIND_INFO.
1928 (emit_throw): Don't defeat assemble_external if DWARF2_UNWIND_INFO.
1929 (register_exception_table_p): New fn.
1930 (start_eh_unwinder): Don't do anything if DWARF2_UNWIND_INFO.
1931 (end_eh_unwinder): Likewise.
1932
1933 * crtstuff.c: Wrap .eh_frame section, use EH_FRAME_SECTION_ASM_OP,
1934 call __register_frame and __deregister_frame as needed.
1935 * varasm.c (eh_frame_section): New fn if EH_FRAME_SECTION_ASM_OP.
1936 * dwarf2out.c (EH_FRAME_SECTION): Now a function-like macro. Check
1937 EH_FRAME_SECTION_ASM_OP.
1938 * sparc/sysv4.h (EH_FRAME_SECTION_ASM_OP): Define.
1939 * mips/iris6.h: (EH_FRAME_SECTION_ASM_OP): Define.
1940 (LINK_SPEC): Add __EH_FRAME_BEGIN__ to hidden symbols.
1941
1942 * dwarf2out.c (output_call_frame_info): If no support for
1943 EXCEPTION_SECTION, mark the start of the frame info with a
1944 collectable tag.
1945 * collect2.c (frame_tables): New list.
1946 (is_ctor_dtor): Recognise frame entries.
1947 (scan_prog_file): Likewise.
1948 (main): Pass -fno-exceptions to sub-compile. Also do collection
1949 if there are any frame entries.
1950 (write_c_file_stat): Call __register_frame_table and
1951 __deregister_frame as needed.
1952 (write_c_file_glob): Likewise.
1953
1954 * defaults.h (DWARF2_UNWIND_INFO): Default to 1 if supported.
1955 Also require unaligned reloc support.
1956 * sparc.h (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
1957 UNALIGNED_DOUBLE_INT_ASM_OP): Define here.
1958 * sparc/sysv4.h: Not here.
1959
1960 * toplev.c (compile_file): Call dwarf2out_frame_{init,finish}.
1961 * dwarf2out.c (dwarf2out_init): Don't call dwarf2out_frame_init.
1962 (dwarf2out_finish): Don't call dwarf2out_frame_finish.
1963
1964 * libgcc2.c (L_eh): Reorganize, moving code shared by different
1965 EH implementations to the top.
1966 (find_exception_handler): Split out. Start from 0. Compare against
1967 end with >=.
1968 (__find_first_exception_table_match): Use it.
1969 * except.c (output_exception_table): Don't do anything if there's
1970 no table. Don't output a first entry of zeroes.
1971 (eh_outer_context): Adjust properly.
1972 (add_eh_table_entry): Use xrealloc.
1973 * toplev.c (compile_file): Just call output_exception_table.
1974
1975 Wed Sep 10 11:30:36 1997 Jason Merrill <jason@cygnus.com>
1976
1977 * i386.c (ix86_prologue): Add dwarf2 support for !do_rtl case.
1978
1979 Wed Sep 10 08:17:10 1997 Torbjorn Granlund <tege@pdc.kth..se>
1980
1981 * except.c (eh_outer_context): Do masking using expand_and.
1982
1983 Wed Sep 10 01:38:30 1997 Doug Evans <dje@cygnus.com>
1984
1985 Add port done awhile ago for the ARC cpu.
1986 * arc/arc.h: New file.
1987 * arc/arc.c: New file.
1988 * arc/arc.md: New file.
1989 * arc/initfini.c: New file.
1990 * arc/lib1funcs.asm: New file.
1991 * arc/t-arc: New file.
1992 * arc/xm-arc.h: New file.
1993 * ginclude/va-arc.h: New file.
1994 * ginclude/stdarg.h: Include va-arc.h ifdef __arc__.
1995 * ginclude/varargs.h: Likewise.
1996 * Makefile.in (USER_H): Add va-arc.h.
1997 * configure.in (arc-*-elf*): Recognize.
1998 * longlong.h: Add ARC support.
1999
2000 Wed Sep 10 01:32:54 1997 Jeffrey A Law (law@cygnus.com)
2001
2002 * expr.c (clear_storage): Use CONST0_RTX instead of const0_rtx.
2003 when clearing non-BLKmode data.
2004
2005 Wed Sep 10 00:29:29 1997 Manfred Hollstein <manfred@s-direktnet.de>
2006
2007 * m88k/sysv3.h (INITIALIZE_TRAMPOLINE) Define.
2008 * libgcc2.c (__enable_execute_stack): Provide for sysV88 too.
2009
2010 * xm-m88k.h (USG): Only define if it hasn't already been defined.
2011
2012 * Makefile.in (risky-stage1): Delete gratutious whitespace.
2013
2014 * Makefile.in (clean): Delete libgcc1-test.
2015
2016 * Makefile.in (INSTALL): cd to $(srcdir) before running texinfo.
2017
2018 Tue Sep 9 17:07:36 1997 Stan Cox <coxs@dg-rtp.dg.com>
2019
2020 * m88k.c (m88k_expand_prologue): Set MEM_IN_STRUCT_P of va_list
2021 template.
2022
2023 Tue Sep 9 09:50:02 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2024
2025 * dwarf2out.c (output_call_frame_info): Call named_section.
2026
2027 Tue Sep 9 09:12:17 1997 Jeffrey A Law (law@cygnus.com)
2028
2029 * haifa-sched.c (print_value): Fix last change.
2030
2031 Tue Sep 9 01:30:37 1997 Jason Merrill <jason@yorick.cygnus.com>
2032
2033 * mips.h (DWARF_FRAME_REGNUM): Use the same numbering regardless of
2034 write_symbols.
2035
2036 Mon Sep 8 16:32:43 1997 Jason Merrill <jason@yorick.cygnus.com>
2037
2038 * mips.c (function_prologue): Set up the CFA when ABI_32.
2039
2040 * sparc.c (save_regs): Check dwarf2out_do_frame instead of DWARF2_DEBUG
2041 for dwarf2 unwind info.
2042 (output_function_prologue, sparc_flat_output_function_prologue): Same.
2043
2044 * final.c (final_end_function): Check dwarf2out_do_frame instead
2045 of DWARF2_DEBUG for dwarf2 unwind info.
2046 (final_scan_insn): Likewise.
2047 (final_start_function): Likewise. Initialize dwarf2 frame debug here.
2048 (final): Not here.
2049
2050 * expr.c (expand_builtin_return_addr): Only SETUP_FRAME_ADDRESSES if
2051 count > 0.
2052
2053 * varasm.c (exception_section): Check EXCEPTION_SECTION first.
2054
2055 Mon Sep 8 15:15:11 1997 Nick Clifton <nickc@cygnus.com>
2056
2057 * v850.h (ASM_SPEC): Pass on target processor.
2058 (CPP_PREDEFINES): Only define if not already specified.
2059 (TARGET_VERSION): Only define if not already specified.
2060 (MASK_CPU, MASK_V850, MASK_DEFAULT): Bits to specify target
2061 processor.
2062 (EXTRA_SWITCHES): Extra entries in the switches array.
2063 (TARGET_DEFAULT): Set default target processor.
2064
2065 Mon Sep 8 18:26:35 1997 Jim Wilson <wilson@cygnus.com>
2066
2067 * m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): In MOTOROLA
2068 cases, add %# and %/, and add : to make them into extended asms.
2069
2070 Sun Sep 7 23:57:50 1997 Weiwen Liu <liu@hepunix.physics.yale.edu>
2071
2072 * alias.c (init_alias_analysis): Clean up incompatible pointer
2073 type warning in bzero.
2074 * regmove.c (regmove_optimize): Ditto.
2075 * haifa-sched.c (find_rgns): Ditto.
2076
2077 * haifa-sched.c (print_value): Clean up ptr->int cast
2078 warnings.
2079
2080 Sun Sep 7 23:18:32 1997 Fred Fish <fnf@ninemoons.com>
2081
2082 * INSTALL: Change 'amigados' to 'amigaos' to match current usage.
2083 * install.texi (Configurations): Ditto.
2084 * config.sub: Ditto.
2085
2086 Sun Sep 7 22:56:56 1997 Weiwen Liu (liu@hepvms.physics.yale.edu)
2087
2088 * Makefile.in (sdbout.o): Depend on insn-config.h.
2089
2090 Sun Sep 7 18:44:50 1997 Jim Wilson <wilson@cygnus.com>
2091
2092 * m68k/m68k.h (TARGET_SWITCHES): For 68000, 68302, subtract MASK_68881.
2093 For 68303, 68332, cpu32, subtract MASK_68040_ONLY.
2094
2095 Sun Sep 7 18:30:46 1997 Jason Merrill <jason@yorick.cygnus.com>
2096
2097 * dwarf2out.c (dwarf2out_frame_debug): Assume that in a PARALLEL
2098 prologue insn, only the first elt is significant.
2099 (output_call_frame_info): For exception handling, always use 4-byte
2100 fields as specified by the dwarf2 spec.
2101 Don't skip trivial FDEs.
2102
2103 Sun Sep 7 14:19:39 1997 Jeffrey A Law (law@cygnus.com)
2104
2105 * version.c: Bump for snapshot.
2106
2107 Sun Sep 7 14:17:36 1997 Torbjorn Granlund (tege@pdc.kth.se)
2108
2109 * expmed.c (expand_divmod): Make op1_is_pow2 depend on unsignedp
2110 for negative constants. Promote EXACT_DIV_EXPR to TRUNC_DIV_EXPR
2111 when op1_is_pow2.
2112
2113 Sun Sep 7 13:46:46 1997 Jeffrey A Law (law@cygnus.com)
2114
2115 * final.c (shorten_branches): During first pass, assume worst
2116 possible alignment for ADDR_VEC and ADDR_VEC_DIFF insns.
2117
2118 * Makefile.in (distclean): Remove various things left around
2119 by running the testsuite.
2120
2121 Sun Sep 7 13:16:06 1997 Manfred Hollstein <manfred@s-direktnet.de>
2122
2123 * configure.in (out_file): Emit definition to config.status in order
2124 to have a defined value for configure.lang.
2125 * configure: Re-built.
2126
2127 Sun Sep 7 09:59:08 1997 Jan-Jaap van der Heijden (J.J.vanderHeijden@student.utwente.nl)
2128
2129 * configure.in: Make symlink to as-new rather than as.new. Similarly
2130 for ld-new.
2131 * configure: Rebuilt.
2132
2133 Fri Sep 5 16:54:55 1997 Jim Wilson <wilson@cygnus.com>
2134
2135 * profile.c (output_func_start_profiler): Set DECL_EXTERNAL to zero.
2136
2137 Fri Sep 5 16:16:44 1997 Christian Kuehnke <Christian.Kuehnke@arbi.Informatik.Uni-Oldenburg.DE>
2138
2139 * sparc/sparc.md: Add ultrasparc scheduling support.
2140 * sparc/sparc.h (RTX_COSTS): For MULT give v9 a cost of 25 insns.
2141
2142 Fri Sep 5 14:04:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
2143
2144 * integrate.c (save_for_inline_copying): Use 0, not NULL_PTR,
2145 as initial value for real_label_map.
2146 (copy_for_inline): Likewise.
2147
2148 Fri Sep 5 13:36:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
2149
2150 * sched.c (update_flow_info) When looking if to set found_split_dest
2151 or found_orig_dest, look at all parts of a PARALLEL.
2152 * haifa-sched.c (update_flow_info): Likewise.
2153
2154 Fri Sep 5 10:08:44 1997 Jeffrey A Law (law@cygnus.com)
2155
2156 * v850: New directory for v850 port.
2157 * v850/lib1funcs.asm: New file.
2158 * t-v850, v850.c, v850.h, v850.md, xm-v850.h: New files.
2159 * ginclude/va-v850.h: New file.
2160 * ginclude/varargs.h, ginclude/stdarg.h: Include va-mn10200.h.
2161 * configure.in (mn10200-*-*): New target.
2162 * configure: Rebuilt.
2163 * config.sub: Handle v850-elf.
2164 * Makefile.in (USER_H): Add va-mn10200.h.
2165 * invoke.texi: Document v850 stuff.
2166
2167 Fri Sep 5 09:37:50 1997 Jim Wilson (wilson@cygnus.com)
2168
2169 * sdbout.c (plain_type_1, case ARRAY_TYPE): Verify that TYPE_DOMAIN
2170 has integer TYPE_{MAX,MIN}_VALUE before using them.
2171
2172 * m68k/m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Add
2173 __HPUX_ASM__ versions.
2174
2175 Fri Sep 5 09:08:44 1997 Jeffrey A Law (law@cygnus.com)
2176
2177 * install.sh: Delete duplicate install script.
2178
2179 Thu Sep 4 23:14:27 1997 Stan Cox (coxs@dg-rtp.dg.com)
2180
2181 * reg-stack.c (subst_stack_regs): Pop the stack register for a
2182 computed goto which sets the same stack register.
2183
2184 * reg-stack.c (compare_for_stack_reg): Swap only if the source and
2185 destination are both on the regstack.
2186 (subst_stack_regs_pat): Put the destination at the top of the regstack.
2187
2188 Thu Sep 4 15:02:27 1997 Jim Wilson <wilson@cygnus.com>
2189
2190 * mips.md (nonlocal_goto_receiver): Define.
2191
2192 * profile.c (output_arc_profiler): Check next_insert_after for non
2193 NULL before deferencing it.
2194
2195 * i386/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define to -fPIC.
2196
2197 Thu Sep 4 14:51:57 1997 Jeffrey A Law (law@cygnus.com)
2198
2199 * i386.h (CPP_CPU_DEFAULT): Avoid using #elif.
2200
2201 Thu Sep 4 15:01:49 1997 Michael Meissner <meissner@cygnus.com>
2202
2203 * toplev.c (rest_of_compilation): For passes starting with
2204 flow_analysis, use print_rtl_with_bb instead of print_rtl.
2205
2206 * print-rtl.c (print_rtl_single): Print a single rtl value to a
2207 file.
2208
2209 * flow.c (print_rtl_with_bb): Print which insns start and end
2210 basic blocks. For the start of a basic block, also print the live
2211 information.
2212
2213 Thu Sep 4 11:51:43 1997 Jim Wilson <wilson@cygnus.com>
2214
2215 * toplev.c (main): Change #elif to #else/#ifdef
2216
2217 * tlink.c: Include ctype.h.
2218 * ginclude/va-mips.h: Add _VA_MIPS_H_ENUM ifdef/define/endif.
2219
2220 Thu Sep 4 11:17:16 1997 Mikeael Meissner (meissner@cygnus.com)
2221
2222 * bitmap.c: Conditionally include stdlib.h.
2223 (free): Provide a declaration if NEED_DECLARATION_FREE.
2224
2225 Thu Sep 4 09:58:53 1997 Joel Sherrill (joel@OARcorp.com)
2226
2227 * i960/i960.h: Added default for SUBTARGET_SWITCHES macro.
2228
2229 Thu Sep 4 09:53:20 1997 Jim Wilson (wilson@cygnus.com)
2230
2231 * profile.c (output_arc_profiler): Verify next_insert_after is an
2232 INSN before and after skipping a stack pop.
2233
2234 Thu Sep 4 07:39:19 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
2235
2236 * final.c (shorten_branches): Don't count the lengths of deleted
2237 instructions.
2238
2239 Thu Sep 4 09:43:01 1997 Jeffrey A Law (law@cygnus.com)
2240
2241 * version.c: Bump for snapshot.
2242
2243 Thu Sep 4 11:04:21 1997 Michael Meissner <meissner@cygnus.com>
2244
2245 * bitmap.h (EXECUTE_IF_AND_IN_BITMAP): New macro, to iterate over
2246 two bitmaps ANDed together.
2247 (bitmap_print): Declare.
2248
2249 * bitmap.c (function_obstack): Don't declare any more.
2250 (bitmap_obstack): Obstack for allocating links from.
2251 (bitmap_obstack_init): New static to say whether to initialize
2252 bitmap_obstack.
2253 (bitmap_element_allocate): Use bitmap_obstack to allocate from.
2254 (bitmap_release_memory): Free all memory allocated from
2255 bitmap_obstack.
2256
2257 * basic-block.h (EXECUTE_IF_AND_IN_REG_SET): New macro, invoke
2258 EXECUTE_IF_AND_IN_BITMAP.
2259
2260 Wed Sep 3 10:39:42 1997 Jim Wilson <wilson@cygnus.com>
2261
2262 * alias.c (true_dependence): Address with AND can alias scalars.
2263 (anti_dependence, output_dependence): Likewise.
2264
2265 * alias.c (true_dependence): Test x for BLKmode, in addition to mem.
2266
2267 Wed Sep 3 09:28:50 CDT 1997 Joel Sherrill (joel@OARcorp.com)
2268
2269 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h, m68k/rtems.h,
2270 mips/rtems64.h, pa/rtems.h, rs6000/rtems.h, sh/rtems.h,
2271 sparc/rtems.h (subtarget_switches): Removed SUBTARGET_SWITCHES
2272 definitions. Use -qrtems instead of -mrtems.
2273
2274 Wed Sep 3 09:05:41 1997 Robert Lipe (robert@dgii.com)
2275
2276 * xm-sco5.h (sys_siglist): Define.
2277 (SYS_SIGLIST_DECLARED): Likewise.
2278
2279 Tue Sep 2 23:33:33 1997 Jeffrey A Law (law@cygnus.com)
2280
2281 * expr.c (convert_move): Handle truncation from TQFmode to QFmode.
2282
2283 Wed Sep 3 02:09:30 1997 Torbjorn Granlund <tege@pdc.kth..se>
2284
2285 * except.c (eh_outer_context): Expand masking operation using
2286 expand_binop.
2287
2288 Tue Sep 2 18:09:39 1997 Jim Wilson <wilson@cygnus.com>
2289
2290 * alpha.md (floatdisf2-1): New pattern.
2291
2292 Tue Sep 2 18:41:55 1997 Jeffrey A Law (law@cygnus.com)
2293
2294 * xm-svr4.h (SYS_SIGLIST_DECLARED): Define.
2295 * xm-news.h (SYS_SIGLIST_DECLARED): Likewise.
2296 * xm-sysv4.h (SYS_SIGLIST_DECLARED): Likewise.
2297 * gcc.texi: Note that if you define sys_siglist that you should
2298 also define SYS_SIGLIST_DECLARED.
2299
2300 * mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instructions
2301 are relative to the next instruction, not the current instruction.
2302
2303 Tue Sep 2 14:22:43 1997 Jim Wilson <wilson@cygnus.com>
2304
2305 * local-alloc.c (contains_replace_regs): New function.
2306 (update_equiv_regs): When adding a REG_EQUIV note for a set of a MEM,
2307 verify that there is no existing REG_EQUIV note, and add a call to
2308 contains_place_regs.
2309
2310 Tue Sep 2 12:48:11 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
2311
2312 * config/alpha/elf.h (CPP_PREDEFINES): Add -D__PIC__ -D__pic__.
2313 (STARTFILE_SPEC): Always use crtbegin.o%s
2314 (ENDFILE_SPEC): Always use crtend.o%s.
2315
2316 Tue Sep 2 12:00:36 1997 Jim Wilson <wilson@cygnus.com>
2317
2318 * alpha/alpha.h (PREFERRED_RELOAD_CLASS): Return NO_REGS if NO_REGS
2319 is passed in.
2320 * emit-rtl.c (gen_lowpart_common): Add code to convert CONST_INT to
2321 SFmode for 64 bit hosts.
2322
2323 Tue Sep 2 13:42:38 1997 Paul N. Hilfinger <hilfingr@CS.Berkeley.EDU>
2324
2325 * fixincludes: Permits spaces between # and define. Discard C++
2326 comments in sys/pci.h on HP/UX 10.20.
2327
2328 Mon Sep 1 22:13:18 1997 Jeffrey A Law (law@cygnus.com)
2329
2330 * version.c: Bump for snapshot.
2331
2332 * pa.c (restore_unscaled_index_insn_codes): New function.
2333 (record_unscaled_index_insn_codes): Likewise.
2334 (output_function_prologue): Call restore_unscaled_index_insn_codes.
2335 (output_function_epilogue): Free memory for unscaled_index_insn_codes.
2336 (pa_reorg): Call record_unscaled_index_insn_codes.
2337
2338 * haifa-sched.c (move_insn): Handle notes correctly for insns
2339 with SCHED_GROUP_P set.
2340
2341 Mon Sep 1 16:58:57 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
2342
2343 * alpha/xm-linux.h (USE_BFD): Undef before define.
2344
2345 Mon Sep 1 16:25:34 1997 Jim Wilson <wilson@cygnus.com>
2346
2347 * cse.c (cse_insn): Don't record BLKmode values.
2348
2349 Mon Sep 1 11:25:47 1997 Stephen Williams (steve@icarus.icarus.com)
2350
2351 * i960.h (LINK_SPEC): Handle "-mjX" and "-mrp" switches.
2352
2353 Mon Sep 1 08:29:46 1997 Jeffrey A Law (law@cygnus.com)
2354
2355 * cccp.c (sys_errlist): Remove special 4.4bsd declaration.
2356 * collect2.c (sys_errlist): Likewise.
2357 * cpplib.c (sys_errlist): Likewise.
2358 * gcc.c (sys_errlist): Likewise.
2359 * protoize (sys_errlist): Likewise.
2360 * configure.in: Check for strerror.
2361 * xm-freebsd.h (HAVE_STRERROR): Remove definition.
2362 * xm-gnu.h (HAVE_STRERROR): Likewise.
2363 * xm-linux.h (HAVE_STRERROR): Likewise.
2364 * xm-netbsd.h (HAVE_STRERROR): Likewise.
2365 * xm-bsd386.h (HAVE_STRERROR): Likewise.
2366 * xm-cygwin32.h (HAVE_STRERROR): Likewise.
2367 * xm-dos.h (HAVE_STRERROR): Likewise.
2368 * xm-mingw32.h (HAVE_STRERROR): Likewise.
2369 * xm-pa.h (HAVE_STRERROR): Likewise.
2370 * xm-papro.h (HAVE_STRERROR): Likewise.
2371 * xm-sysv4.h (HAVE_STRERROR): Likewise.
2372 * configure, config.in: Rebuilt.
2373
2374 * Makefile.in: Add several missing "else true" clauses.
2375
2376 * collect2.c: Change DONT_DECLARE_SYS_SIGLIST to SYS_SIGLIST_DECLARED.
2377 * mips-tfile.c: Likewise.
2378 * gcc.texi: DONT_DECLARE_SYS_SIGLIST: Remove docs.
2379 * xm-linux.h (DONT_DECLARE_SYS_SIGLIST): Delete definition.
2380 * xm-freebsd.h, xm-bsd386.h, xm-sysv4.h, xm-sol2.h: Likewise.
2381 * configure.in: Check for sys_siglist declaration.
2382 * configure, config.in: Rebuilt.
2383
2384 Mon Sep 1 08:04:07 1997 Joel Sherrill (joel@OARcorp.com)
2385
2386 * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h,
2387 m68k/rtems.h, mips/rtems64.h, pa/rtems.h, rs6000/rtems.h,
2388 sparc/rtems.h (subtarget_switches): Added -mrtems as a switch.
2389 * i960/i960.h: Added SUBTARGET_SWITCHES macro.
2390 * rs6000/sysv4.h (extra_subtarget_switches): Added new
2391 macro EXTRA_SUBTARGET_SWITCHES.
2392 * configure.in (sh*-*-rtems*): New target.
2393 * sh/rtems.h: New file.
2394 * sh/sh.h: Added SUBTARGET_SWITCHES macro.
2395 * configure: Rebuilt.
2396
2397 Sat Aug 30 22:54:26 1997 Jim Wilson <wilson@cygnus.com>
2398
2399 * unroll.c (calculate_giv_inc): Handle increment with code PLUS.
2400
2401 Sat Aug 30 10:49:46 1997 David Edelsohn <edelsohn@mhpcc.edu>
2402
2403 * rs6000.md: Make DF fused-add operations pay attention to
2404 -mno-fused-add.
2405
2406 Fri Aug 29 19:19:54 1997 Jim Wilson <wilson@cygnus.com>
2407
2408 * i386/xm-sysv4.h (DONT_DECLARE_SYS_SIGLIST): Define.
2409
2410 Fri Aug 29 16:13:51 1997 Jeffrey A Law (law@cygnus.com)
2411
2412 * pa.md (reload_peepholes): Make sure operand is a REG before
2413 examining REGNO. Allow general registers too.
2414
2415 Fri Aug 29 11:42:04 1997 Jim Wilson <wilson@cygnus.com>
2416
2417 * varasm.c (mark_constants): Don't look inside CONST_DOUBLEs.
2418
2419 Fri Aug 29 09:33:20 1997 Philipp Thomas (kthomas@lxi165.gwdg.de)
2420
2421 * dwarf2out.c (build_abbrev_table): Use xrealloc, not xmalloc
2422 to reallocate abbrev_die_table.
2423
2424 Thu Aug 28 15:14:46 1997 Jim Wilson <wilson@cygnus.com>
2425
2426 * m68k/m68k.md (iorsi_zexthi_ashl16): Disable.
2427
2428 1997-08-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
2429
2430 * Makefile.in (config.status): Depend on version.c
2431
2432 * expr.h (insn_gen_function): Reenable prototype.
2433
2434 * expr.c (move_by_pieces_1, clear_by_pieces_1): Fix prototype of
2435 first parameter.
2436
2437 Thu Aug 28 13:01:43 1997 Jim Wilson <wilson@cygnus.com>
2438
2439 * i386.c (ix86_expand_epilogue): Emit blockage instruction when pic.
2440
2441 Thu Aug 28 07:03:15 1997 Jeffrey A Law (law@cygnus.com)
2442
2443 * version.c: Bump for latest snapshot.
2444
2445 * bc-optab.c: Conditionally include stdlib.h.
2446 (free): Provide a declaration if NEED_DECLARATION_FREE.
2447 * tree.c (free): Provide a declaration if NEED_DECLARATION_FREE.
2448 * rtl.h (free): Remove declaration.
2449 * tree.h (free): Remvoe declaration.
2450
2451 * configure: Rebuilt.
2452
2453 Wed Aug 27 21:32:20 1997 Jeffrey A Law (law@cygnus.com)
2454
2455 * flags.h (flag_move_all_movables): Declare.
2456 (flag_reduce_all_givs): Likewise.
2457 * loop.c (move_movables): Handle flag_move_all_movables.
2458 (strength_reduce): Handle flag_reduce_all_givs.
2459 * toplev.c (flag_move_all_movables): Define.
2460 (flag_reduce_all_givs): Likewise.
2461 (f_options): Add -fmove-all-movables and -freduce-all-givs.
2462 * invoke.texi: Document new options, including alias stuff that
2463 wasn't included last time.
2464
2465 Wed Aug 27 18:08:51 1997 Bob Manson (manson@cygnus.com)
2466
2467 * t-h8300: Use TARGET_LIBGCC2_CFLAGS instead of LIBGCC2_CFLAGS.
2468 * t-mn10200: Ditto.
2469 * t-vxsparc: Ditto.
2470 * t-vxworks68: Ditto.
2471 * t-vxworks960: Ditto.
2472 * t-vx29k: Ditto.
2473
2474 Wed Aug 27 16:35:29 1997 Richard Henderson <rth@cygnus.com>
2475
2476 * alpha/xm-alpha.h (alloca): Define alloca to builtin_alloca for GNUC
2477 if not already defined, and USE_C_ALLOCA not defined.
2478
2479 Wed Aug 27 16:08:43 1997 Jim Wilson <wilson@cygnus.com>
2480
2481 * config.guess: Replace with script that uses ../config.guess.
2482
2483 * config/alpha/elf.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1
2484 if USE_GNULIBC_1 is not defined.
2485
2486 Wed Aug 27 15:49:12 1997 Richard Henderson <rth@cygnus.com>
2487
2488 * alpha/elf.h (LINK_SPEC): Conditionalize on USE_GNULIBC_1.
2489 * config.guess: Recognize alpha-linux-gnulibc1.
2490 * configure.in (alpha-*-linux-gnulibc1): New target.
2491 (alpha-*-linux-gnu*): Don't build crtbegin/end.
2492
2493 Wed Aug 27 11:52:58 1997 Jim Wilson <wilson@cygnus.com>
2494
2495 * m68k.md (iorsi3_internal): Readd ! TARGET_5200 check lost in
2496 last change.
2497
2498 Wed Aug 27 01:56:18 1997 Doug Evans <dje@seba.cygnus.com>
2499
2500 * loop.c (combine_movables): Earlier insns don't match later ones.
2501
2502 Wed Aug 27 01:24:25 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
2503
2504 * config/linux.h (CC1_SPEC): Define it only if not defined.
2505
2506 * config/m68k/linux.h (CC1_SPEC): Undefine it before include
2507 <linux.h>
2508
2509 * config/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1 if
2510 USE_GNULIBC_1 is not defined.
2511
2512 * config/rs6000/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1.
2513
2514 * config/sparc/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined
2515 as 1 if USE_GNULIBC_1 is not defined.
2516
2517 Wed Aug 27 00:49:14 1997 Jeffrey A Law (law@cygnus.com)
2518
2519 * reorg.c (dbr_schedule): Allow current_function_return_rtx
2520 to be something other than a REG.
2521 * function.c (expand_function_end): Fix current_function_return_rtx
2522 if it was a pseudo.
2523
2524 * t-freebsd (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
2525 * x-netbsd: Likewise
2526 * x-dgux (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS
2527 (INSTALL_HEADERS): Delete.
2528 * x-dguxbcs: Likewise.
2529 * x-hp3bsd44: Likewise
2530 * x-pa: Likewise.
2531
2532 Wed Aug 27 00:30:00 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
2533
2534 * i386.md (pop): pop increments the stack pointer.
2535 (prologue_set_stack_ptr): New pattern.
2536 * i386.c (ix86_expand_prologue): Use prologue_set_stack_ptr
2537 instead of subsi3.
2538
2539 Tue Aug 26 18:50:32 1997 Jim Wilson <wilson@cygnus.com>
2540
2541 * reload.c (find_reloads, case '0'): Reject matching a non-offsettable
2542 address where an offsettable address is required.
2543
2544 Tue Aug 26 17:54:56 1997 Michael P. Hayes (michaelh@ongaonga.chch.cri.nz>
2545
2546 * loop.c (check_final_value): Don't miss a biv increment in a
2547 parallel.
2548
2549 Tue Aug 26 12:03:49 1997 Jim Wilson (wilson@cygnus.com)
2550
2551 * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Check
2552 TYPE_DECL_IS_STUB instead of DECL_NAME.
2553
2554 Mon Aug 25 23:27:10 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
2555
2556 * objc/Make-lang.in ($(OBJC_O)): Also depend on cc1obj.
2557
2558 Mon Aug 25 23:27:10 1997 Jim Meyering <meyering@eng.ascend.com>
2559
2560 * objc/Make-lang.in ($(OBJC_O)): Also depend on $(GCC_PASSES).
2561
2562 Mon Aug 25 13:12:24 1997 Jeffrey A Law (law@cygnus.com)
2563
2564 * haifa-sched.c (find_pre_sched_live): Remove #if 0 code.
2565 (find_post_sched_live): Likewise.
2566
2567 * haifa-sched.c (schedule_block): Remove old code to get arguments
2568 from hard regs into pseudos early.
2569
2570 Mon Aug 25 08:55:00 1997 Jeffrey A Law (law@cygnus.com)
2571
2572 * version.c: Bump for new snapshot.
2573
2574 * local-alloc.c (update_equiv_regs): All the target to reject
2575 promotion of some REG_EQUAL to REG_EQUIV notes.
2576 * pa.h (DONT_RECORD_EQUIVALENCE): Define.
2577
2578 * pa.c (secondary_reload_class): (mem (mem ... )) does not need
2579 secondary reloads.
2580
2581 * pa.c (hppa_builtin_saveregs): Emit a blockage insn after the
2582 store of the argument registers.
2583
2584 Mon Aug 25 08:39:02 1997 Craig Burley (burley@gnu.ai.mit.edu)
2585
2586 * fold-const.c (multiple_of_p): New function.
2587 (fold): Turn some cases of *_DIV_EXPR into EXACT_DIV_EXPR.
2588
2589 Mon Aug 25 01:47:41 1997 Jeffrey A Law (law@cygnus.com)
2590
2591 * expr.h (insn_gen_function): Temporarily remove prototype.
2592
2593 Sun Aug 24 17:22:21 1997 Jim Wilson <wilson@cygnus.com>
2594
2595 * Makefile.in (install-info): Don't cd into srcdir. Add srcdir to
2596 filenames. Use sed to extract base filename for install.
2597
2598 Sat Aug 23 18:19:40 1997 John F. Carr <jfc@mit.edu>
2599
2600 * unroll.c (find_splittable_givs): Only share if two givs have the
2601 same add and multiply values.
2602
2603 Sat Aug 23 14:36:27 1997 Jim Wilson <wilson@cygnus.com>
2604
2605 * m68k/next.h (GO_IF_INDEXABLE_BASE): Fix typo in undef.
2606 * m68k/m68kemb.h (LIB_SPEC): Add missing comment end before it.
2607
2608 Sat Aug 23 00:18:22 1997 Jeffrey A Law (law@cygnus.com)
2609
2610 * pa.c (pa_reorg): Always put begin_brtab and end_brtab insns
2611 around branch tables.
2612 * pa.md (begin_brtab, end_brtab): Only emit the .begin_brtab
2613 and .end_brtab directives if TARGET_GAS.
2614
2615 Fri Aug 22 14:05:55 1997 Jim Wilson <wilson@cygnus.com>
2616
2617 * alias.c (true_dependence): Pass x_addr not x to varies.
2618
2619 * acconfig.h (NEED_DECLARATION_CALLOC): Add.
2620 * configure.in: Add GCC_NEED_DECLARATION call for calloc.
2621 * rs6000/xm-rs6000.h (malloc, realloc, calloc, free): Delete
2622 declarations.
2623 * config.in, configure: Regenerate.
2624
2625 Thu Aug 21 23:52:16 1997 John F. Carr <jfc@mit.edu>
2626
2627 * alias.c (find_base_value): Improve handling of PLUS, MINUS, and
2628 LO_SUM.
2629 (record_set): Handle LO_SUM like PLUS.
2630 (init_alias_analysis): When following chains of base addresses,
2631 do not stop on reaching a hard register.
2632
2633 Thu Aug 21 20:17:37 1997 Jeffrey A Law (law@cygnus.com)
2634
2635 * version.c: Bump for new snapshot.
2636
2637 Thu Aug 21 17:28:00 1997 Jim Wilson <wilson@cygnus.com>
2638
2639 * alpha.h (ARCH_ASM_FILE_START): Define.
2640 (ASM_FILE_START): Use ARCH_ASM_FILE_START.
2641 * osf12.h, osf2or3.h (ARCH_ASM_FILE_START): Redefine to null string.
2642
2643 Thu Aug 21 10:22:19 1997 Jeffrey A Law (law@cygnus.com)
2644
2645 * Makefile.in (install-common): Put gcov comment at start of line.
2646
2647 Wed Aug 20 22:47:33 1997 Jeffrey A Law (law@cygnus.com)
2648
2649 * alias.c (init_alias_analysis): When simplifying the reg_base_value
2650 array, simplify entries for hard registers too.
2651
2652 Wed Aug 20 12:35:47 1997 Dave Love <d.love@dl.ac.uk>
2653
2654 * dwarf2.h (enum dwarf_call_frame_info): Remove trailing comma from
2655 list.
2656
2657 Wed Aug 20 11:58:33 1997 Jim Wilson <wilson@cygnus.com>
2658
2659 * stmt.c (start_cleanup_deferal, end_cleanup_deferal): Test
2660 block_stack before dereferencing it.
2661
2662 Wed Aug 20 11:57:11 1997 Michael Meissner <meissner@cygnus.com>
2663
2664 * rs6000.h (ISSUE_RATE): Define instead of MACHINE_issue_rate.
2665
2666 Tue Aug 19 17:10:56 1997 Jason Merrill <jason@yorick.cygnus.com>
2667
2668 * cplus-dem.c: Add 'extern' to prepends_underscore.
2669
2670 Tue Aug 19 09:34:57 1997 Jeffrey A Law (law@cygnus.com)
2671
2672 * haifa-sched.c (ISSUE_RATE): Renamed from MACHINE_issue_rate.
2673 (get_issue_rate): Delete.
2674 * pa.h (ISSUE_RATE): Define.
2675
2676 * configure.in: Turn on haifa by default for the PA.
2677 * configure: Rebuilt.
2678 * pa.c (override_options): Accept -mschedule=7200 option.
2679 (pa_adjust_cost): No longer need to scale costs for newer
2680 processors.
2681 * pa.h (enum processor_type): Add PROCESSOR_7200.
2682 * pa.md: Revamp scheduling parameters to work better with
2683 haifa. Add scheduling parameters for the 7200.
2684
2685 * haifa-sched.c (move_insn): Reemit notes for SCHED_GROUP_P
2686 insns too.
2687 (schedule_block): When adjusting basic_block_{head,end}, account
2688 for movement of SCHED_GROUP_P insns too.
2689
2690 * haifa-sched.c (debug_dependencies): Fix thinko.
2691
2692 * Makefile.in (EXPECT, RUNTEST, RUNTESTFLAGS): Define.
2693 (site.exp, check, check-g++, check-gcc): New targets.
2694
2695 * haifa-sched.c: Make lots of variables static.
2696
2697 Tue Aug 19 07:18:34 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
2698
2699 * expr.h, real.h: Finish prototyping.
2700
2701 Mon Aug 18 21:49:02 1997 Jim Wilson <wilson@cygnus.com>
2702
2703 * reload.c (find_reloads): Add code to convert RELOAD_FOR_OPADDR_ADDR
2704 reloads to RELOAD_FOR_OPERAND_ADDRESS reloads.
2705 * reload1.c: Undo bugfix from Aug 11.
2706
2707 Mon Aug 18 17:39:02 1997 Mike Meissner <meissner@cygnus.com>
2708
2709 * configure.in ({powerpc,rs6000}*-*-*, --with-cpu): Remove single
2710 quotes around the name.
2711 * configure: Regenerate.
2712
2713 Mon Aug 18 13:46:47 1997 Jim Wilson <wilson@cygnus.com>
2714
2715 * Makefile.in (stmp-multilib-sub): Fix typo in last change.
2716
2717 Thu Aug 7 10:33:13 1997 Manfred Hollstein <manfred@s-direktnet.de>
2718
2719 * Makefile.in (sub-makes): Pass the current value of LANGUAGES down
2720 to sub-makes to avoid building more passes than the user might have
2721 requested on the command line.
2722
2723 Sun Aug 17 15:42:17 1997 Dave Love (d.love@dl.ac.uk)
2724
2725 * configure.in: Expurgate `broken_install' (install is
2726 autoconfed).
2727
2728 * configure.lang: Substitute autoconfed ${INSTALL} (not currently
2729 relevant).
2730
2731 Sat Aug 16 01:08:12 1997 Jeffrey A Law (law@cygnus.com)
2732
2733 * loop.c (is_power_of_2, is_conditional_branch): Delete unused
2734 functions and declarations.
2735 (analyze_loop_iterations): Use condjump_p.
2736 (insert_bct): Likewise. Use exact_log2.
2737
2738 Fri Aug 15 23:48:32 1997 Jeffrey A Law (law@cygnus.com)
2739
2740 * haifa-sched.c (find_post_sched_live): Call FREE_REG_SET as needed.
2741 (schedule_region): Likewise.
2742 (schedule_insns): Likewise.
2743
2744 * PROJECTS: Update with Haifa stuff.
2745
2746 Fri Aug 15 12:49:56 1997 Jeffrey A Law (law@cygnus.com)
2747
2748 * version.c: Change the version string to look like:
2749 egcs-2.90.00 970814 (gcc2-970802 experimental).
2750
2751 * loop.c (is_conditional_branch): Make definition match declaration.
2752
2753 * gcc.c: Take out experimental snapshot warning message.
2754
2755 Fri Aug 15 13:43:39 1997 Michael Meissner <meissner@cygnus.com>
2756
2757 * haifa-sched.c (debug_dependencies): Use GET_NOTE_INSN_NAME to
2758 print out the names of the notes. Print out the name of the insn
2759 that is not a note, and not an {,CALL_,JUMP_}INSN.
2760
2761 Wed Aug 13 17:32:38 1997 Jason Merrill <jason@yorick.cygnus.com>
2762
2763 * expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
2764 again for the slot after we give it RTL.
2765
2766 Wed Aug 13 01:03:37 1997 Doug Evans <dje@canuck.cygnus.com>
2767
2768 * configure.in (haifa configury): Fix typo.
2769 * configure: Regenerate.
2770
2771 Tue Aug 12 10:20:36 1997 Jeffrey A Law (law@cygnus.com)
2772
2773 * version.c: Bump version to "gcc-3.0.0 970802 experimental".
2774
2775 * gcc.info*: Rebuilt.
2776
2777 * COPYING.g77, README.g77: New files.
2778 * real.c (ereal_unto_float, ereal_unto_double): New functions.
2779 * real.h (ereal_unto_float, ereal_unto_double): Declare them.
2780 (REAL_VALUE_UNTO_TARGET_DOUBLE, REAL_VALUE_UNTO_TARGET_SINGLE): Define.
2781
2782 Mon Aug 11 14:50:55 1997 Jeffrey A Law (law@cygnus.com)
2783
2784 * Integrate Haifa instruction scheduler.
2785 * Makefile.in (ALL_CFLAGS): Add SCHED_CFLAGS. Prefix all references
2786 to sched with $(SCHED_CFLAGS.
2787 * configure.in: Handle --enable-haifa.
2788 * configure: Rebuilt.
2789 * flags.h: Add new flags for haifa instruction scheduler.
2790 * genattrtab.c (expand_units): For haifa, don't subtract one
2791 when computing blockage.
2792 * toplev.h (flag_schedule_interblock): Haifa scheduler flag.
2793 (flag_schedule_speculative): Ditto.
2794 (flag_schedule_speculative_load): Ditto.
2795 (flag_schedule_speculative_load_dangerous): Ditto.
2796 (flag_schedule_reverse_before_reload): Ditto.
2797 (flag_schedule_reverse_after_reload): Ditto.
2798 (flag_branch_on_count_reg): Ditto.
2799 (f_options): Add Haifa switches.
2800 (main): Turn off some Haifa options if appropriate macro is
2801 defined. Process Haifa switches.
2802 * unroll.c (iteration_info): No longer static, since Haifa
2803 scheduler uses it.
2804 (unroll_loop): Inform HAIFA scheduler about loop unrolling factor.
2805 * unroll.c (unroll_loop): Set loop_unroll_iter, loop_start_value.
2806 * loop.h (loop_unroll_factor, loop_number): Add HAIFA decls.
2807 * loop.h (loop_initial_value,loop_unroll_iter): New globals.
2808 * loop.c (loop_optimize): If HAIFA is defined, allocate additional
2809 storage for the Haifa scheduler.
2810 (mark_loop_jump): If HAIFA defined, set LABEL_OUTSIDE_LOOP_P and
2811 LABEL_NEXTREF.
2812 (strength_reduce): If HAIFA and HAVE_decrement_and_branch_on_count
2813 are defined, call analyze_loop_iterations and insert_bct to use
2814 countdown loops.
2815 (record_giv): Refine test for jumps out of loops if HAIFA is
2816 defined.
2817 (analyze_loop_iterations): New function to identify if we can use
2818 a countdown loop.
2819 (insert_bct): Insert countdown loop.
2820 (instrument_loop_bct): Low level code to insert countdown loop.
2821 (loop_number): Calculate UID of loop.
2822 (indirect_jump_in_function_p): Return true if an indirect jump is
2823 in the function.
2824 (is_power_of_2): Return true if value is a power of 2.
2825 (is_conditional_branch): Return true if insn is a conditional
2826 jump.
2827 (fix_bct_param): Process -fbct-{min,max}-N switches.
2828 (check_bct_param): Return true if loop should be instrumented.
2829 * loop.c (loop_initial_value,loop_unroll_iter): New globals.
2830 (loop_optimize): Initialize.
2831 (get_condition_for_loop): Ditto.
2832 * loop.c (strength_reduce): Inside of code that uses #ifdef
2833 HAVE_decrement_and_branch_on_count code, test it to make sure the
2834 condition is true.
2835 (instrument_loop_bct): Ditto.
2836 * haifa-sched.c: New file.
2837
2838
2839 * Integrate regmove pass.
2840 * Makefile.in (OBJS): Add regmove.o
2841 (regmove.o): Add dependencies.
2842 * flow.c (find_use_as_address): No longer static.
2843 * rtl.h (find_use_as_address): Declare.
2844 * toplev.c (regmove_dump, flag_regmove): Define.
2845 (f_options): Add -fregmove.
2846 (regmove_dump_file, regmove_time): Define.
2847 (fatal_insn): Close the regmove dump file.
2848 (compile_file): Initialize regmove_time; open/close the regmove dump
2849 file as needed. Print regmove time as needed.
2850 (rest_of_compilation): Run regmove pass if requested, dump
2851 RTL after regmove if requested.
2852 (main): If -O2 or more, turn on regmove. Handle dump switches.
2853 * regmove.c: New file.
2854
2855 Mon Aug 11 14:15:02 1997 Jeffrey A Law (law@cygnus.com)
2856
2857 * Integrate tlink patch from jason@cygnus.com
2858 * gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
2859 (process_command): Increment n_switches for them. Don't discard
2860 their args. Validate them.
2861 (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
2862 From Rohan Lenard.
2863 (process_command): Set include_prefixes from COMPILER_PATH.
2864 (main): Set COLLECT_GCC_OPTIONS sooner.
2865 * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
2866 * tlink.c, hash.c, hash.h: New files.
2867 * Makefile.in (USE_COLLECT2): Always use collect2.
2868 (collect2): Depend on and link in hash.o and tlink.o.
2869 (tlink.o, hash.o): Add dependencies.
2870
2871 Mon Aug 11 10:04:49 1997 Jeffrey A Law (law@cygnus.com)
2872
2873 * Integrate alias analysis changes from jfc@mit.edu
2874 * Makefile.in (OBJS): Add alias.o
2875 (alias.o): Add dependencies.
2876 * alias.c: New file.
2877 * sched.c: Remove alias analysis code. It lives in alias.c now.
2878 (sched_analyze_2): Add new arguments to true_dependence.
2879 (schedule_insns): Always call init_alias_analysis.
2880 * calls.c (expand_call): Note calls to malloc, calloc, and realloc;
2881 mark return value from such functions as a pointer and keep track of
2882 them for alias analysis. If a return value from a function is a
2883 pointer, mark it as such.
2884 * combine.c (distribute_notes): Handle REG_NOALIAS.
2885 * cse.c (struct write_data): Delete. No longer needed.
2886 (invalidate): Don't call set_nonvarying_address_components anymore.
2887 Use true_dependence to decide if an entry should be removed from
2888 the hash table.
2889 (invalidate_memory): Remove WRITES argument, simplify appropriately.
2890 Fix all callers.
2891 (note_mem_written): Similarly for WRITE_PTR argument.
2892 (invalidate_from_clobbers): Similarly for W argument.
2893 (invalidate_for_call): Remove memory elements from the hash table.
2894 (refers_to_mem_p, cse_rtx_addr_varies_p): Deleted.
2895 (cse_rtx_varies_p): New function. Derived from old
2896 cse_rtx_addr_varies_p.
2897 (cse_insn): Remove WRITES_MEMORY and INIT variables and all references.
2898 Don't call note_mem_written anymore. Stack pushes invalidate the stack
2899 pointer if PUSH_ROUNDING is defined. No longer need to call
2900 cse_rtx_addr_varies_p to decide if a MEM should be invalidated.
2901 (skipped_writes_memory): Remove variable.
2902 (invalidate_skipped_set): Simplify and wewrite to use invalidate_memory.
2903 (invalidate_skipped_block): Simplify for new alias analysis code.
2904 (cse_set_around_loop): Likewise.
2905 (cse_main): Call init_alias_analysis.
2906 * flags.h (flag_alias_check, flag_argument_noalias): Declare.
2907 * toplev.c (flag_alias_check, flag_argument_noalias): Define.
2908 (f_options): Add new alias checking arguments.
2909 (main): Set flag_alias_check when optimizing.
2910 * local_alloc (validate_equiv_mem_from_store): Add new arguments
2911 to true_dependence.
2912 (memref_referenced_p): Likewise.
2913 * loop.c (NUM_STORES): Increase to 30.
2914 (prescan_loop): Only non-constant calls set unknown_address_altered.
2915 (invariant_p): Add new arguments to true_dependence.
2916 (record_giv): Initialize unrolled and shared fields.
2917 (emit_iv_add_mult): Call record_base_value as needed.
2918 * loop.h (struct induction): Add unrolled and shared fields.
2919 * unroll.c (unroll_loop): Call record_base_value as needed.
2920 (copy_loop_body): Likewise.
2921 (final_biv_value): Likewise.
2922 (final_giv_value): Likewise.
2923 (find_splittable_regs): Likewise. Only create one new pseudo
2924 if we have multiple address GIVs that were combined with the same
2925 dst_reg GIV. Note when a new register is created due to unrolling.
2926 * rtl.c (reg_note_name): Add REG_NOALIAS.
2927 * rtl.h (enum reg_note): Similarly.
2928 (rtx_varies_p, may_trap_p, side_effects_p): Declare.
2929 (volatile_refs_p, volatile_insn_p, remove_note): Likewise.
2930 (note_stores, refers_to_regno_p, reg_overlap_mentioned_p): Likewise.
2931 (true_dependence, read_dependence, anti_dependence): Likewise.
2932 (output_dependence, init_alias_analysis, end_alias_analysis): Likewise.
2933 (mark_user_reg, mark_reg_pointer): Likewise.
2934
2935
2936 * Integrate reload bugfix from Wilon which enables the PA port
2937 to bootstrap again.
2938 * reload1.c (reload): Sum needs for both OPADDR_ADDR and and
2939 OPERAND_ADDRESS when computing how many registers an insn needs.
2940 (reload_reg_free_p): OPADDR_ADDR and OPERAND_ADDRESS reloads do
2941 conflict.
2942 (reload_reg_free_before_p): Treat OPERAND_ADDRESS reloads just like
2943 OPADDR_ADDR reload.
2944 (reload_reg_reaches_end_p): For RELOAD_FOR_OPADDR_ADDR insns, registers
2945 in reload_reg_use_in_op_addr do not reach the end.
2946 do not reach the end.
2947 (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
2948 RELOAD_FOR_OPERAND_ADDRESS.
2949
2950 Sun Aug 10 12:00:20 1997 Jeffrey A Law (law@cygnus.com)
2951
2952 * egcs project officially starts.
2953
This page took 0.170575 seconds and 6 git commands to generate.