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