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