]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
cp-tree.def (PTRMEM_CST): New tree node.
[gcc.git] / gcc / ChangeLog
CommitLineData
1c9a32c2
CM
1Tue Oct 6 15:45:15 1998 Catherine Moore <clm@cygnus.com>
2
3 * config/sparc/sysv4.h (ASM_OUTPUT_SECTION_NAME): Don't
4 check for flag_function_sections.
5
37053d1f
R
6Tue Oct 6 20:02:31 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
7
8 * cse.c (insert_regs): Fix bug in Sep 24 change.
9
b707b450
R
10Tue Oct 6 17:00:42 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
11
12 * flags.h (flag_dump_unnumbered): Declare.
13 * toplev.c (flag_dump_unnumbered): Don't declare.
14 * print-rtl.c (flags.h): Include.
15 (print_rtl_single): Add return value.
16 * rtl.h (print_rtl_single): Update declaration.
17 * flow.c (flag_dump_unnumbered): Don't declare.
18 (print_rtl_with_bb): Use return value of print_rtl_single.
19
cad6f7d0
BS
20Tue Oct 6 01:36:00 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
21
22 * Makefile.in (stupid.o): Update dependencies.
23 (global.o): Likewise.
24
25 * global.c: Include reload.h
26 (reg_becomes_live): New function.
27 (reg_dies): New function.
28 (build_insn_chain): New function.
29 (global_alloc): Call build_insn_chain before calling reload.
30
31 * reload.h (struct needs): New structure definition.
32 (struct insn_chain): Likewise.
33 (reload_insn_chain): Declare variable.
34 (new_insn_chain): Declare function.
35
36
37 * reload1.c (reload_startobj): New variable.
38 (reload_insn_chain): New variable.
39 (unused_insn_chains): New variable.
40 (new_insn_chain): New function.
41 (init_reload): Initialize reload_startobj, not reload_firstobj.
42 (reload): Initialize reload_firstobj.
43 Before returning, free everything on the reload_obstack.
44
45 * stupid.c: Include insn-config.h, reload.h and basic-block.h.
46 (reg_where_dead_chain, reg_where_born_exact, reg_where_born_clobber,
47 current_chain): New variables.
48 (reg_where_born): Delete variable.
49 (REG_WHERE_BORN): New macro.
50 (find_clobbered_regs): New function.
51 (stupid_life_analysis): Don't allocate/free reg_where_born.
52 Allocate and free reg_where_born_exact, reg_where_born_clobber,
53 reg_where_dead_chain.
54 Use REG_WHERE_BORN instead of reg_where_born.
55 While processing the insns, build the reload_insn_chain with
56 information about register lifetimes.
57 (stupid_reg_compare): Use REG_WHERE_BORN instead of reg_where_born.
58 (stupid_mark_refs): Replace arg INSN with arg CHAIN. All callers
59 changed.
60 Compute and information about birth and death of pseudo registers in
61 reg_where_dead_chain, reg_where_born_exact and reg_where_born_clobber.
62 Delete code to set elements of reg_where_born.
63
40208b1c
APB
64Mon Oct 5 22:34:30 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
65
66 * tree.def (GOTO_EXPR): Modified documentation.
67 * expr.c (expand_expr): Expand GOTO_EXPR into a goto or a computed
68 goto.
69
cac8ce95
DE
70Mon Oct 5 22:43:36 1998 David Edelsohn <edelsohn@mhpcc.edu>
71
72 * unroll.c (loop_iteration_var, loop_initial_value, loop_increment
73 loop_final_value, loop_comparison_code): No longer static.
74 (unroll_loop): Delete loop_start_value update.
75 * loop.h (loop_iteration_var, loop_initial_value, loop_increment,
76 loop_final_value, loop_comparison_code): Extern.
77 (loop_start_value): Delete extern.
78 * loop.c (loop_can_insert_bct, loop_increment, loop_start_value,
79 loop_comparison_value, loop_comparison_code): Delete.
80 (loop_optimize): Remove initialization for deleted variables.
81 (strength_reduce): Delete analyze_loop_iterations call. Only call
82 insert_bct if flag_branch_count_on_reg set.
83 (analyze_loop_iterations): Delete.
84 (insert_bct): Remove iteration count calculation. Move checks for
85 viable BCT optimization to here. Obtain iteration count from
86 loop_iterations and correct for unrolling. Check for enough
87 iteration to be beneficial. Comment out runtime iteration count
88 case.
89 (insert_bct): Print iteration count in dump file. Remove
90 loop_var_mode and use word_mode directly.
91
92 * rs6000.h (processor_type): Add PROCESSOR_PPC604e.
93 * rs6000.c (rs6000_override_options): Use it.
94 (optimization_options): Enable use of flag_branch_on_count_reg.
95 * rs6000.md (define_function_unit): Describe 604e.
96
877ca132
HB
971998-10-05 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
98
99 * loop.c (move_movables): Corrected threshold calculation for
100 moved_once registers.
101
da5a44b3
BS
102Mon Oct 5 21:18:45 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
103
104 * loop.c (combine_givs_p): Fix test for identical givs.
105
b75ab88b
NC
106Mon Oct 5 10:11:28 1998 Nick Clifton <nickc@cygnus.com>
107
108 * dwarf2out.c (gen_subprogram_die): If errorcount nonzero, don't
109 call abort if the function is already defined.
110
f385990f
JL
111Mon Oct 5 10:02:36 1998 Jeffrey A Law (law@cygnus.com)
112
113 * combine.c (simplify_rtx): Do not replace TRUNCATE with a SUBREG if
114 truncation is not a no-op.
115
01e69619
JL
116Mon Oct 5 09:02:04 PDT 1998 Jeff Law (law@cygnus.com)
117
118 * version.c: Bump for snapshot.
119
d03e8554
JL
120Mon Oct 5 08:19:55 PDT 1998 Jeff Law (law@cygnus.com)
121
122 * version.c: Bump for snapshot.
123
32fdf36b
TG
124Mon Oct 5 01:07:23 1998 Torbjorn Granlund <tege@matematik.su.se>
125
126 * expmed.c (expand_divmod): Don't widen for computing remainder
127 if we seem to have a divmod pattern for needed mode.
128
4284b774
ZW
129Mon Oct 5 01:01:42 1998 Zack Weinberg <zack@rabi.phys.columbia.edu>
130
131 * cpplib.c (macroexpand): Correct off-by-one error in handling
132 of escapes.
133
861556b4
RH
134Sun Oct 4 23:58:30 1998 Richard Henderson <rth@cygnus.com>
135
136 * combine.c (expand_field_assignment): Don't do bitwise operations
137 on MODE_FLOAT; pun to MODE_INT if possible.
138
b4558b57
JM
139Sun Oct 4 18:33:24 1998 Jason Merrill <jason@yorick.cygnus.com>
140 scott snyder <snyder@d0sgif.fnal.gov>
141
142 * tlink.c (scan_linker_output): Recognize errors from irix 6.2
143 linker. Recognize mangled names in quotes.
144
295c5559
JJ
145Sun Oct 4 02:58:20 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
146
147 * config/sparc/sparc.md (ashldi3+1): Name it ashldi3_sp64.
148 (ashlsi3_const1, ashldi3_const1): New combiner patterns.
149 (ashrsi3_extend, ashrsi3_extend2): New combiner patterns.
150 (lshrsi3_extend, lshrsi3_extend2): Ditto.
151
ca2636ed
DM
152Sun Oct 4 00:23:00 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
153
154 * function.c (purge_addressof_1): If trying to take a sub-word
155 integral piece of a floating point mode, put it on the stack.
156
4d77340e
RH
157Sat Oct 3 19:01:03 1998 Richard Henderson <rth@cygnus.com>
158
159 * alpha/linux.h (CPP_PREDEFINES): Define __alpha__ for imake.
160
c20c6337
JM
161Sat Oct 3 14:42:19 1998 Jason Merrill <jason@yorick.cygnus.com>
162
71d718e0
JM
163 * PROJECTS: Remove template friends.
164
165 * collect2.c (sort_ids): Remove unused variable.
166
167 * tm.texi (MATH_LIBRARY): Document.
168 (NEED_MATH_LIBRARY): Remove.
169
c20c6337
JM
170 * varasm.c (assemble_start_function, assemble_variable, weak_finish,
171 assemble_alias): Do ASM_GLOBALIZE_LABEL for weak symbols, too.
172
69fba037
JC
173Sat Oct 3 16:14:44 1998 John Carr <jfc@mit.edu>
174
175 * dwarf2out.c (expand_builtin_dwarf_reg_size): Initialize
176 last_end to 0x7fffffff.
177
47401c4d
DM
178Fri Oct 2 19:14:20 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
179
180 * function.c (purge_addressof_1): Do not perform endianness
181 corrections on bitpos, who we call will do it for us.
182
d01d2903
JL
183Fri Oct 2 11:52:35 1998 Jeffrey A Law (law@cygnus.com)
184
185 * h8300.c (WORD_REG_USED): Fix typo.
186 (initial_offset): Use WORD_REG_USED.
187
188 * h8300.c (handle_pragma): Fix typo.
189
a330a79e
BS
190Fri Oct 2 10:51:35 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
191
f670c074
JL
192 * caller-save.c (insert_save_restore): Break this function up
193 into new functions insert_restore, insert_save and insert_one_insn.
194 All callers changed.
195 (insert_restore): New function, mostly broken out of
196 insert_save_restore.
197 (insert_save): Likewise.
198 (insert_one_insn): Likewise.
199 (restore_referenced_regs): New argument BLOCK. All callers changed.
200 (save_call_clobbered_regs): Don't keep track of basic block boundaries
201 in this function, do it in insert_one_insn instead.
202
09dd1133
BS
203 * reload1.c (reload): Break out some more pieces into separate
204 functions.
205 (dump_needs): New function, broken out of reload.
206 (set_initial_elim_offsets): Likewise.
207 (init_elim_table): Likewise.
208 (update_eliminables): Likewise.
209
34f89b5f
BS
210 * global.c (global_alloc): Delete code to manage the scratch_list.
211 * local-alloc.c (qty_scratch_rtx): Delete.
212 (scratch_block): Delete.
213 (scratch_list): Delete.
214 (scratch_list_length): Delete.
215 (scratch_index): Delete.
216 (alloc_qty_for_scratch): Delete.
217 (local-alloc): Update initialization of max_qty.
218 Delete code to manage the scratch list.
219 Delete code to allocate/initialize qty_scratch_rtx.
220 (block_alloc): Don't allocate quantities for scratches.
221 Delete code to manage the scratch list.
222 * regs.h (scratch_list): Delete declaration.
223 (scratch_block): Delete declaration.
224 (scratch_list_length): Delete declaration.
225 * reload1.c (reload): Delete code to manage the scratch list.
226 (spill_hard_reg): Likewise.
227 (mark_scratch_live): Delete.
228
a330a79e
BS
229 * recog.c (alter_subreg): Delete declaration.
230
8547cf54
AJ
2311998-10-02 Andreas Jaeger <aj@arthur.rhein-neckar.de>
232
233 * Makefile.in (cccp.o): Fix typo in last patch.
234
e430f738
R
235Fri Oct 2 16:13:12 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
236
237 * t-sh (LIB1ASMFUNCS): Add _set_fpscr .
238 * config/sh/lib1funcs.asm (___set_fpscr): Add.
239
1f72bfca
JL
240Fri Oct 2 02:01:59 1998 Jeffrey A Law (law@cygnus.com)
241
8ac53846
JL
242 * regclass.c (reg_scan_mark_refs): Return immediately if passed a
243 NULL_RTX as an argument.
244
1f72bfca
JL
245 * Makefile.in (unlibsubdir): Define.
246 (DRIVER_DEFINES): Use unlibsubdir.
247 (cccp.o, cpplib.o, protoize.o, unprotoize.o): Similarly.
248 (stmp-fixinc): Similarly.
249
961d4119
BS
250Thu Oct 1 19:58:30 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
251
252 * regmove.c (regmove_optimize): Add variable old_max_uid.
253 At the end of the function, update basic_block_end.
254
23e08716
DM
255Thu Oct 1 17:58:25 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
256
257 * dwarf2out.c (expand_builtin_dwarf_reg_size): Use
258 FIRST_PSEUDO_REGISTER as upper bound for last_end, not an
259 arbitrary constant.
260
da6558fd
NC
261Thu Oct 1 17:57:14 1998 Nick Clifton <nickc@cygnus.com>
262
263 * config/arm/arm.c: Improve interworking support.
264
470cdb8b
R
265Thu Oct 1 18:43:35 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
266
267 * reload1.c (choose_reload_regs): Fix test if reload_reg_rtx[r] was
268 copied from reload_out[r] .
269
913f68c1
JC
270Thu Oct 1 19:20:09 1998 John Carr <jfc@mit.edu>
271
272 * dwarf2out.c (expand_builtin_dwarf_reg_size): Fix to work
273 with more than three size ranges.
274
275 * flow.c (sbitmap_copy): Use bcopy to copy bitmap.
276
277 * rtl.c (mode_name): Add a null string at the end of the array.
278 (mode_wider_mode): Change type to unsigned char.
279 (mode_mask_array): New variable.
280 (init_rtl): Update for mode_wider_mode type change.
281
282 * rtl.h (mode_wider_mode): Change type to unsigned char.
283 (mode_mask_array): Declare.
284 (GET_MODE_MASK): Use mode_mask_array.
285
c36fce9a
GRK
286Thu Oct 1 15:56:01 1998 Gavin Romig-Koch <gavin@cygnus.com>
287
288 * calls.c (expand_call) : Encapsulate code into
289 copy_blkmode_from_reg.
290 * expr.c (copy_blkmode_from_reg): New function.
291 * expr.h (copy_blkmode_from_reg): New function.
292 * integrate.c (function_cannot_inline_p): We can inline
293 these now.
294 (expand_inline_function): Use copy_blkmode_from_reg
295 if needed. Avoid creating BLKmode REGs.
296 (copy_rtx_and_substitute): Don't try to SUBREG a BLKmode
297 object.
298
3a846e6e
NC
299Thu Oct 1 10:42:27 1998 Nick Clifton <nickc@cygnus.com>
300
3ce15347
NC
301 * config/v850/v850.c: Add function prototypes.
302 Add support for v850 special data areas.
303
304 * config/v850/v850.h: Add support for v850 special data areas.
305
e2af664c
NC
306 * c-pragma.c: Add support for HANDLE_PRAGMA_PACK and
307 HANDLE_PRAGMA_PACK_PUSH_POP.
308 (push_alignment): New function: Cache an alignment requested
309 by a #pragma pack(push,<n>).
310 (pop_alignment): New function: Pop an alignment from the
311 alignment stack.
312 (insert_pack_attributes): New function: Generate __packed__
313 and __aligned__ attributes for new decls whilst a #pragma pack
314 is in effect.
315 (add_weak): New function: Cache a #pragma weak directive.
316 (handle_pragma_token): Document calling conventions. Add
317 support for #pragma pack(push,<n>) and #pragma pack (pop).
318
319 * c-pragma.h: If HANDLE_SYSV_PRAGMA or HANDLE_PRAGMA_PACK_PUSH_POP
320 are defined enable HANDLE_PRAGMA_PACK.
321 Move 'struct weak_syms' here (from varasm.c).
322 Add pragma states for push and pop pragmas.
323
324 * c-common.c (decl_attributes): Call PRAGMA_INSERT_ATTRIBUTES
325 if it is defined.
326
327 * c-lex.c: Replace occurances of HANDLE_SYSV_PRAGMA with
328 HANDLE_GENERIC_PRAGMAS.
329
330 * varasm.c: Move definition of 'struct weak_syms' into
331 c-pragma.h.
332 (handle_pragma_weak): Deleted.
333
334 * config/i386/i386.h: Define HANDLE_PRAGMA_PACK_PUSH_POP.
335
336 * config/winnt/win-nt.h: Define HANDLE_PRAGMA_PACK_PUSH_POP.
337
3a846e6e
NC
338 * c-decl.c (start_function): Add invocation of
339 SET_DEFAULT_DECL_ATTRIBUTES, if defined.
340
341 * tm.texi: Remove description of non-existant macro
342 SET_DEFAULT_SECTION_NAME.
e2af664c
NC
343
344 (HANDLE_SYSV_PRAGMA): Document.
345 (HANDLE_PRAGMA_PACK_PUSH_POP): Document.
3a846e6e 346
5aaf0123
RL
347Wed Sep 30 22:27:53 1998 Robert Lipe <robertl@dgii.com>
348
349 * config.sub: Recognize i[34567]86-pc-udk as new target.
350 * configure.in: Likewise.
351 * config/i386/t-udk: New file.
352 * config/i386/udk.h: New file.
353
f0c76b51
JL
354Wed Sep 30 19:33:07 1998 Jeffrey A Law (law@cygnus.com)
355
356 * reorg.c (check_annul_list_true_false): Remove unused variables.
357 (steal_delay_list_from_target): Add missing "used_annul" variable.
358 (try_merge_delay_insns): Close out half formed comment.
359
6fa72945
ZW
360Wed Sep 30 19:13:20 1998 Zack Weinberg <zack@rabi.phys.columbia.edu>
361
aa90b111
ZW
362 * cpplib.c (macroexpand): If arg->raw_before or
363 arg->raw_after, remove any no-reexpansion escape at the
364 beginning of the pasted token. Correct handling of whitespace
365 markers and no-reexpand markers at the end if arg->raw_after.
366
6fa72945
ZW
367 * toplev.c (documented_lang_options): Recognize -include,
368 -imacros, -iwithprefix, -iwithprefixbefore.
369 * cpplib.c (cpp_start_read): Process -imacros and -include
370 switches at the same time and in command-line order, after
371 initializing the dependency-output code. Emit properly nested
372 #line directives for them. Emit a #line for the main file
373 before processing these switches, and don't do it again
374 afterward.
375
f7b6d104
RH
376Wed Sep 30 18:03:22 1998 Richard Henderson <rth@cygnus.com>
377
378 * function.c (purge_addressof_1): Use bitfield manipulation
379 routines to handle mem mode < reg mode.
380
96960d10
HB
381Wed Sep 30 18:43:32 1998 Herman ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
382
383 * reorg.c (try_merge_delay_insns): Account for resources referenced
384 in each instruction in INSN's delay list before trying to eliminate
385 useless instructions. Similarly when looking at a trial insn's delay
386 slots.
387
388 * reorg.c (check_annul_list_true_false): New function.
389 (steal_delay_list_from_{target,fallthrough}): Call it and also
390 refine tests for when we may annul if already filled a slot.
391 (fill_slots_from_thread): Likewise.
392 (delete_from_delay_slot): Return newly-created thread.
393 (try_merge_delay_isns): Use its new return value.
394
c5cbf81e
JL
395Wed Sep 30 18:29:26 1998 Jeffrey A Law (law@cygnus.com)
396
397 * loop.c (check_dbra_loop): Use a vanilla loop reversal if the biv is
398 used to compute a giv or as some other non-counting use.
399
8d5c8167
JL
400Wed Sep 30 18:19:27 1998 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
401
1e326708
MH
402 * regs.h (HARD_REGNO_CALL_PART_CLOBBERED): New macro.
403 * local-alloc.c (find_free_reg): Use it.
404 * global.c (find_reg): Likewise.
405 * tm.texi: Document HARD_REGNO_CALL_PART_CLOBBERED.
406
8d5c8167
JL
407 * regs.h (HARD_REGNO_CALLER_SAVE_MODE): New macro.
408 * caller-save.c (init_caller_save): Use it.
409 * tm.texi: Document HARD_REGNO_CALLER_SAVE_MODE.
410
411Wed Sep 30 12:57:30 1998 Zack Weinberg <zack@rabi.phys.columbia.edu>
f81a440f
ZW
412
413 * configure.in: Add --enable-cpplib option which uses cpplib
414 for cpp, but doesn't link cpplib into cc1. Make help text
415 capitalization consistent.
416 * configure: Rebuilt.
417
95ca22f4
MM
418Wed Sep 30 10:09:39 1998 Mark Mitchell <mark@markmitchell.com>
419
420 * function.c (gen_mem_addressof): If the address REG is
421 REG_USERVAR_P make the new REG be so also.
422 * loop.c (scan_loop): Apply DeMorgan's laws and add documentation
423 in an attempt to clarify slightly.
424
ee06cc21
JL
425Wed Sep 30 09:57:40 1998 Jeffrey A Law (law@cygnus.com)
426
427 * expr.c (expand_expr): Handle COMPONENT_REF, BIT_FIELD_REF ARRAY_REF
428 and INDIRECT_REF in code to check MAX_INTEGER_COMPUTATION_MODE.
429
257441db
CM
430Wed Sep 30 10:13:39 1998 Catherine Moore <clm@cygnus.com>
431
432 * toplev.c: Fix last patch.
433
dc5737cf
JW
434Tue Sep 29 20:03:18 1998 Jim Wilson <wilson@cygnus.com>
435
436 * loop.c (get_condition): Fix typo in May 9 change.
437
89ed4e9d
AM
438Tue Sep 29 11:11:38 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
439
440 * invoke.texi (-fexceptions): Merge 2 different descriptions.
441
630962bf
KG
442Mon Sep 28 22:08:52 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
443
444 * toplev.c (documented_lang_options): Spelling corrections.
445
ab339d62
AO
446Mon Sep 28 19:41:24 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
447
448 * configure.in: new flags --with-ld and --with-as, equivalent
449 to setting LD and AS environment variables. Test whether
450 specified arguments are GNU commands, and report them with
451 checking messages. Use the specified AS for configure
452 tests too.
453 * configure: ditto
454 * acconfig.h: add DEFAULT_ASSEMBLER and DEFAULT_LINKER
455 * config.in: ditto
456 * gcc.c (find_a_file): when looking for `as' and `ld', return
457 the DEFAULT program if it exists
458 * collect2.c (main): use DEFAULT_LINKER if it exists
459
460 * gcc.c (find_a_file): the test for existence of a full
461 pathname was reversed
462
42820a49
MM
463Mon Sep 28 17:34:35 1998 Michael Meissner <meissner@cygnus.com>
464
465 * rs6000.h (ASM_OUTPUT_MI_THUNK): Only define on ELF systems.
466 * rs6000.c (output_mi_thunk): Always use a raw jump for now.
467
8ff0c1af
MM
468Mon Sep 28 14:24:03 1998 Mark Mitchell <mark@markmitchell.com>
469
470 * tree.h (TYPE_BINFO): Document.
471
9588f31b
SC
472Mon Sep 28 12:55:49 1998 Stan Cox <scox@cygnus.com>
473
474 * i386-coff.h (dbxcoff.h): Added.
475
fd868572
CM
476Mon Sep 28 12:51:00 1998 Catherine Moore <clm@cygnus.com>
477
478 * toplev.c: fix bad patch around flag_data_sections.
479
1f2b04b3
NC
480Mon Sep 28 10:32:28 1998 Nick Clifton <nickc@cygnus.com>
481
482 * reload1.c (reload): Use reload_address_index_reg_class and
483 reload_address_base_reg_class when setting
484 caller_save_spill_class. (Patch generated by Jim Wilson:
485 wilson@cygnus.com).
486
ece32014
MM
487Mon Sep 28 07:43:34 1998 Mark Mitchell <mark@markmitchell.com>
488
489 * c-common.c (c_get_alias_set): Tighten slightly for FUNCTION_TYPEs
490 and ARRAY_TYPEs. Tidy up. Improve support for type-punning.
491 * expr.c (store_field): Add alias_set parameter. Set the
492 MEM_ALIAS_SET accordingly, if the target is a MEM.
493 (expand_assignment): Use it.
494 (store_constructor_field): Pass 0.
495 (expand_expr): Likewise.
496
7d0756fb
CM
497Mon Sep 28 07:54:03 1998 Catherine Moore <clm@cygnus.com>
498
499 * flags.h: Add flag_data_sections.
500 * toplev.c: Add option -fdata-sections. Add flag_data_sections.
501 (compile_file): Error if flag_data_sections not supported.
502 * varasm.c (assemble_variable): Handle flag_data_sections.
503 * config/svr4.h: Modify prefixes for UNIQUE_SECTION_NAME.
504 * config/mips/elf.h: Likewise.
505 * config/mips/elf64.h: Likewise.
506 * invoke.texi: Describe -fdata-sections.
507
6fd74494
CB
508Mon Sep 28 04:15:44 1998 Craig Burley <burley@melange.gnu.org>
509
510 * invoke.texi (-ffloat-store): Clarify that this option
511 does not affect intermediate results -- only variables.
512
fcce5756
JL
513Mon Sep 28 04:11:35 1998 Jeffrey A Law (law@cygnus.com)
514
515 * cpp.texi: Update for Fortran usage from Craig.
516
2310f99a
DE
517Fri Sep 25 22:09:47 1998 David Edelsohn <edelsohn@mhpcc.edu>
518
519 * rs6000.c (function_arg_boundary): Revert accidental change on
520 September 18.
521
17167fd8
MM
522Fri Sep 25 20:30:00 1998 Michael Meissner <meissner@cygnus.com>
523
524 * rs6000.h (ASM_OUTPUT_MI_THUNK): Declare, call output_mi_thunk.
525 (output_mi_thunk): Declare.
526
527 * rs6000.c (output_mi_thunk): Function to create thunks for MI.
528 (output_function_profiler): Use r12 for temp, instead of r11 so
529 that we preserve the static chain register.
530
46fb0d7d
JW
531Fri Sep 25 14:18:33 1998 Jim Wilson <wilson@cygnus.com>
532
533 * sdbout.c (sdbout_one_type): Don't look at TYPE_BINFO field of enums.
534
913d8e13
R
535Fri Sep 25 19:30:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
536
537 * sh.c (gen_shl_sext): Fix case 5.
538
2abbc1bd
R
539Fri Sep 25 17:35:23 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
540
541 * reload1.c (reload_combine): Re-add line that got accidentally lost.
542
36611067
KG
543Fri Sep 25 10:43:47 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
544
545 * cccp.c (pedwarn_with_file_and_line): For !__STDC__ case, avoid
546 accessing variables until they are initialized via va_arg().
547
85ccbba3
DM
548Thu Sep 24 22:12:16 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
549
550 * reload1.c (reload_combine): Initialize set before using.
551
0dbb7a10
JM
552Thu Sep 24 18:53:20 1998 Jason Merrill <jason@yorick.cygnus.com>
553
554 * sdbout.c (sdbout_field_types): Don't emit the types of fields we
555 won't be emitting.
556
da959950
NC
557Thu Sep 24 17:05:30 1998 Nick Clifton <nickc@cygnus.com>
558
559 * config/arm/arm.md (insv): Add comment. In CONST_INT case, and
560 operand3 with mask before using it. Patch provided by Jim Wilson.
561
3c6088d2
JJ
562Thu Sep 24 15:08:08 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
563
564 * config/sparc/sparc.c (function_value): Perform the equivalent of
565 PROMOTE_MODE for ARCH64.
566 (eligible_for_epilogue_delay): Allow DImode operations in delay
567 slot of a return for ARCH64.
568
71187870
R
569Thu Sep 24 22:17:54 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
570
571 * sh.md (sqrtsf2): Fix mode of sqrt.
572
b29514ee
R
573Thu Sep 24 21:48:51 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
574
575 * reload1.c (choose_reload_regs): Also try inheritance when
576 reload_in is a stack slot of a pseudo, even if we already got a
577 reload reg.
578
5adf6da0
R
579Thu Sep 24 21:22:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
580
581 * reload1.c (reload_cse_regs_1): Renamed from reload_cse_regs.
582 (reload_cse_regs): New function body: call reload_cse_regs_1,
583 reload_combine, reload_cse_move2add.
584 When doing expensive_optimizations, call reload_cse_regs_1 a
585 second time after reload_cse_move2add.
586 (reload_combine, reload_combine_note_store): New functions.
587 (reload_combine_note_use): New function.
588 (reload_cse_move2add, move2add_note_store): New functions.
589
c10638c9
R
590Thu Sep 24 18:48:43 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
591
592 * reload.c (find_reloads): In code to promote RELOAD_FOR_X_ADDR_ADDR
593 reloads to RELOAD_FOR_X_ADDRESS reloads, test for reload sharing.
594
595 Properly keep track of first RELOAD_FOR_X_ADDRESS also for
596 more than 3 such reloads.
597
598 If there is not more than one RELOAD_FOR_X_ADDRESS, don't change
599 RELOAD_FOR_X_ADDR_ADDR reload.
600
34c73909
R
601Thu Sep 24 17:45:55 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
602
603 * expr.c (store_constructor): When initializing a field that is smaller
604 than a word, at the start of a word, try to widen it to a full word.
605
606 * cse.c (cse_insn): When we are about to change a register,
607 remove any invalid references to it.
608
609 (remove_invalid_subreg_refs): New function.
610 (mention_regs): Special treatment for SUBREGs.
611 (insert_regs): Don't strip SUBREG for call to mention_regs.
612 Check if reg_tick needs to be bumped up before that call.
613 (lookup_as_function): Try to match known word_mode constants when
614 looking for a norrower constant.
615 (canon_hash): Special treatment for SUBREGs.
616
345a6161
DM
617Thu Sep 24 01:35:34 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
618
619 * config/sparc/sol2-sld-64.h (TRANSFER_FROM_TRAMPOLINE): Define.
620 * config/sparc/sparc.c (sparc64_initialize_trampoline): If that is
621 defined, emit libcall to __enable_execute_stack. Also fix opcodes
622 and offsets in actual stack trampoline code so they match the
623 commentary and actually work.
624
625Thu Sep 24 01:19:02 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
626
627 * configure.in (sparcv9-*-solaris): Use t-sol2 and t-sol2-64 for
628 tmake_file.
629 (sparc64-*-linux): Use t-linux and sparc/t-linux64 for
630 tmake_file. Set extra_parts to needed crt objects.
631 * configure: Rebuilt.
632 * config/sparc/linux64.h (SPARC_BI_ARCH): Define.
633 (TARGET_DEFAULT): Set if default is v9 or ultra.
634 (STARTFILE_SPEC32, STARTFILE_SPEC64): New macros.
635 (STARTFILE_SPEC): Set to those upon SPARC_BI_ARCH.
636 (ENDFILE_SPEC32, ENDFILE_SPEC64, ENDFILE_SPEC): Likewise.
637 (SUBTARGET_EXTRA_SPECS, LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
638 LINK_SPEC, LINK_ARCH_SPEC): Likewise.
639 (TARGET_VERSION): Define.
640 (MULTILIB_DEFAULT): Define.
641 * config/sparc/sparc.h (CPP_CPU_DEFAULT_SPEC): Rearrange so that
642 mixed 32/64 bit compilers based upon SPARC_BI_ARCH work.
643 (CPP_CPU64_DEFAULT_SPEC, CPP_CPU32_DEFAULT_SEC): Define
644 appropriately.
645 (TARGET_SWITCHES): Allow ptr32/ptr64 options once more.
646 * config/sparc/sparc.c (sparc_override_options): If arch and
647 pointer size disagree, emit diagnostic and fix it up. If
648 SPARC_BI_ARCH and TARGET_ARCH32, set cmodel to CM_32. Turn off
649 V8PLUS in 64-bit mode.
650 * config/sparc/t-linux64: New file.
651 * config/sparc/t-sol2-64: New file.
652 * config/sparc/t-sol2: Adjust build rules to use MULTILIB_CFLAGS.
653 * config/sparc/sol2-sld-64.h (SPARC_BI_ARCH): Define.
654 (ASM_CPU32_DEFAULT_SPEC, ASM_CPU64_DEFAULT_SPEC,
655 CPP_CPU32_DEFAULT_SPEC, CPP_CPU64_DEFAULT_SPEC): Define.
656 (ASM_SPEC, CPP_CPU_SPEC): Set appropriately based upon those.
657 (STARTFILE_SPEC32, STARTFILE_SPEC32, STARTFILE_ARCH_SPEC):
658 Define.
659 (STARTFILE_SPEC): Set approriately based upon those.
660 (CPP_CPU_DEFAULT_SPEC, ASM_CPU_DEFAULT_SPEC): Set based upon
661 disposition of DEFAULT_ARCH32_P.
662 (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC): Define.
663 (LINK_ARCH_SPEC, LINK_ARCH_DEFAULT_SPEC): Set based upon those.
664 (CC1_SPEC, MULTILIB_DEFAULTS): Set based upon DEFAULT_ARCH32_P.
665 (MD_STARTFILE_PREFIX): Set correctly based upon SPARC_BI_ARCH.
666 * config/sparc/xm-sysv4-64.h (HOST_BITS_PER_LONG): Only set on
667 arch64/v9.
668 * config/sparc/xm-sp64.h (HOST_BITS_PER_LONG): Likewise.
669
59ec66dc
MM
670Wed Sep 23 22:32:31 1998 Mark Mitchell <mark@markmitchell.com>
671
672 * rtl.h (init_virtual_regs): New function.
673 * emit-rtl.c (init_virtual_regs): Define.
674 (insn_emit): Use it.
675 * integrate.c (save_for_inline_copying): Likewise.
676
f916eeb6
NC
677Wed Sep 23 16:22:01 1998 Nick Clifton <nickc@cygnus.com>
678
a5f42165
NC
679 * config/arm/thumb.h: The following patches were made by Jim Wilson:
680 (enum reg_class): Add NONARG_LO_REGS support.
681 (REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGNO_REG_CLASS,
682 PREFERRED_RELOAD_CLASS, SECONDARY_RELOAD_CLASS): Likewise.
683 (GO_IF_LEGITIMATE_ADDRESS): Disable REG+REG addresses before reload
684 completes. Re-enable HImode REG+OFFSET addresses.
685 (LEGITIMIZE_RELOAD_ADDRESS): Define.
686
f916eeb6
NC
687 * expmed.c (extract_bit_field): Add comment from Jim Wilson.
688
80db34d8
RH
689Wed Sep 23 13:26:02 1998 Richard Henderson <rth@cygnus.com>
690
691 * alpha.c (get_aligned_mem): Revert Sep 20 change.
692 (alpha_set_memflags, alpha_set_memflags_1): Likewise.
693 (alpha_align_insns): Properly calculate initial offset wrt max_align.
694
7551cbc7
RE
695Wed Sep 23 10:45:44 1998 Richard Earnshaw (rearnsha@arm.com)
696
697 * arm.c (find_barrier): Revert change of Apr 23. Handle table
698 jumps as a single entity, taking into account the size of the
699 table.
700
eaec171c
APB
701Tue Sep 22 15:13:34 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
702
703 * tree.def (SWITCH_EXPR): New tree node definition.
704
83d6aca1
JL
705Mon Sep 21 23:40:38 PDT 1998 Jeff Law (law@cygnus.com)
706
707 * version.c: Bump for snapshot.
708
4d7f493b
JL
709Mon Sep 21 22:31:14 PDT 1998 Jeff Law (law@cygnus.com)
710
711 * version.c: Bump for snapshot.
712
31f0adf8
JL
713Mon Sep 21 22:48:09 1998 Jeffrey A Law (law@cygnus.com)
714
715 * configure.in: Recognize i[34567]86-*-openbsd* and handle it like
716 NetBSD.
717
6c7c0e9f
JL
718Mon Sep 21 22:05:28 1998 Jeffrey A Law (law@cygnus.com)
719
720 * Revert this patch.
721 * reload.c (find_reloads): Do not replace a pseudo with
722 (MEM (reg_equiv_addr)) in the initializing insn for the
723 pseudo.
724
7ad7f828
JC
725Mon Sep 21 20:19:41 1998 John Carr <jfc@mit.edu>
726
727 * final.c (final_scan_insn): Disable tracking CC across branches.
728
43566944
AM
729Mon Sep 21 17:15:26 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
730
731 * expr.h (eh_rtime_match_libfunc): New extern declaration.
732 * optabs.c (init_optabs): Set eh_rtime_match_libfunc.
733 * except.c (start_catch_handler): Use eh_rtime_match_libfunc.
734 * libgcc2.c (__eh_rtime_match): Always return 0 if the matcher is
735 NULL. Only include <stdio.h> if inhibit_libc is not defined.
736
1cbe6eb6
JM
737Mon Sep 21 14:10:51 1998 Jason Merrill <jason@yorick.cygnus.com>
738
739 * toplev.c (rest_of_compilation): Skip compiling anything with
740 DECL_EXTERNAL set, not just if it has DECL_INLINE as well.
741
d06c6389
JW
742Mon Sep 21 13:51:05 1998 Jim Wilson <wilson@cygnus.com>
743
744 * flow.c (find_basic_blocks): Delete check for in_libcall_block when
745 prev_code is a CALL_INSN. Change check for REG_RETVAL note to
746 use in_libcall_block.
747 (find_basic_blocks_1): Delete check for in_libcall_block when prev_code
748 is a CALL_INSN. If CALL_INSN and in_libcall_block, then change code
749 to INSN.
750
724001bb
RL
751Mon Sep 21 14:02:23 1998
752
753 * i386.h: (TARGET_SWITCHES) Improve doc for align-double. Fix
754 typo in no-fancy-math-387 description.
755
64ca6edd
JL
756Mon Sep 21 09:27:18 PDT 1998 Jeff Law (law@cygnus.com)
757
758 * version.c: Bump for snapshot.
759
216f3a58
SC
760Mon Sep 21 09:24:49 1998 Stan Cox <scox@cygnus.com>
761
762 * i386-coff.h (DBX_DEBUGGING_INFO): Added.
763
c03f9fe3
RL
764Mon Sep 21 09:14:49 1998 Robert Lipe <robertl@dgii.com>
765
766 * i386.h: (TARGET_SWITCHES) Add description fields for flags
767 documented in install.texi.
768 (TARGET_OPTIONS) Likewise.
769
cc61dfb8
JL
770Mon Sep 21 01:39:03 PDT 1998 Jeff Law (law@cygnus.com)
771
772 * version.c: Bump for snapshot.
773
b2a1e458
FL
774Mon Sep 21 01:53:05 1998 Felix Lee <flee@cygnus.com>
775
776 * c-lex.c (init_lex): Use getenv ("LANG"), not GET_ENVIRONMENT ().
777 * cccp.c (main): Likewise.
b2a1e458
FL
778
779 * cccp.c, collect2.c, cpplib.c, gcc.c, config/i386/xm-cygwin32.h:
780 Rename GET_ENVIRONMENT to GET_ENV_PATH_LIST, and fix some
781 macro-use bugs.
782
7e2231e7
PB
783Mon Sep 21 00:52:12 1998 Per Bothner <bothner@cygnus.com>
784
785 * Makefile.in (LIBS): Link in libiberty.a.
c03f9fe3 786 * c-common.c, gcc.c, toplev.c: Replace (some) bcopy calls by memcpy.
7e2231e7 787
c93b03c2
RH
788Sun Sep 20 23:28:11 1998 Richard Henderson <rth@cygnus.com>
789
790 * reload1.c (emit_reload_insns): Accept a new arg for the bb. Use
791 it to update bb boundaries. Update caller.
792 * function.c (reposition_prologue_and_epilogue_notes): Update
793 bb boundaries wrt the moved note.
794
823642df
RL
795Sun Sep 20 20:57:02 1998 Robert Lipe <robertl@dgii.com>
796
797 * configure.in (i*86-*-sysv5*): Use fixinc.svr4 to patch byteorder
798 problems.
799 * configure: Regenerate.
800
2ba57343
RH
801Sun Sep 20 19:01:51 1998 Richard Henderson <rth@cygnus.com>
802
3873d24b
RH
803 * alpha.c (alpha_sr_alias_set): New variable.
804 (override_options): Set it.
805 (alpha_expand_prologue, alpha_expand_epilogue): Use it.
806 (mode_mask_operand): Fix signed-unsigned comparision warning.
807 (alpha_expand_block_move): Likewise.
808 (print_operand): Likewise.
809 (get_aligned_mem): Use change_address.
810 (alpha_set_memflags, alpha_set_memflags_1): Set the alias set.
811 (alphaev4_insn_pipe, alphaev4_next_group): New functions.
812 (alphaev4_next_nop, alphaev5_next_nop): New functions.
813 (alpha_align_insns): Remade from old alphaev5_align_insns
814 to handle multiple processors.
815 (alpha_reorg): Call alpha_align_insns for both ev4 and ev5.
816 * output.h (label_to_alignment): Prototype.
817
2ba57343
RH
818 * tree.c (new_alias_set): New function.
819 * tree.h (new_alias_set): Declare it.
820 * c-common.c (c_get_alias_set): Use it.
821
899f1ed6
RH
822Sun Sep 20 12:35:55 1998 Richard Henderson <rth@cygnus.com>
823
824 * fold-const.c (fold): Yet another COND_EXPR bug: when folding
825 to an ABS expr, convert an unsigned input to signed.
826
c479c2ac
JL
827Sun Sep 20 12:14:45 1998 Jeffrey A Law (law@cygnus.com)
828
829 * fold-const.c (fold): Fix another type in COND_EXPR handling code.
830
62616695
MH
8311998-09-20 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
832
833 * configure.in: Add support for c4x targets.
834 * configure: Rebuilt.
835
f5c97640
RH
836Sun Sep 20 00:00:51 1998 Richard Henderson <rth@cygnus.com>
837
838 * combine.c (distribute_notes): If an insn is a cc0 user, only
839 delete it if we can also delete the cc0 setter.
840
a58bd508
MT
841Sun Sep 20 00:22:23 1998 Michael Tiemann <michael@impact.tiemann.org>
842
843 * fold-const.c (fold): Fix typo in COND_EXPR handling code.
844 (invert_truthvalue): Enable truthvalue inversion for
845 floating-point operands if -ffast-math.
846
750930c1
MN
847Sat Sep 19 23:58:07 1998 Melissa O'Neill <oneill@cs.sfu.ca>
848
849 * configure.in: Disable collect2 for nextstep. Instead use
850 crtbegin/crtend.
851 * configure: Rebuilt.
852 * config/nextstep.h (STARTFILE_SPEC): Add crtbegin.
853 (ENDFILE_SPEC): Define.
854 (OBJECT_FORMAT_MACHO): Define.
855 (EH_FRAME_SECTION_ASM_OP): Define.
856 * crtstuff.c: Handle MACHO.
857
655d03a8
RL
858Sun Sep 20 00:24:24 1998 Robert Lipe <robertl@dgii.com>
859
860 * config/i386/sco5.h (TARGET_MEM_FUNCTIONS): Define.
861
b567319f
TG
8621998-09-19 Torbjorn Granlund <tege@matematik.su.se>
863
864 * fp-bit.c (pack_d): Do not clear SIGN when fraction is 0.
865 (_fpadd_parts): Get sign right for 0.
866
9949a9f2
MH
8671998-09-19 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
868
869 * ginclude/varargs.h: Add support for C4x target.
870 * ginclude/stdargs.h: Likewise.
871
3fe5612d
RH
872Sat Sep 19 12:05:09 1998 Richard Henderson <rth@cygnus.com>
873
874 * alpha.c (alpha_return_addr): SET should be VOIDmode.
875 (alpha_emit_set_long_const): Rewrite to be callable from reload
876 and 32-bit hosts.
877 (alpha_expand_epilogue): Update for alpha_emit_set_long_const.
878 * alpha.md (movdi): Likewise.
879
332072db
RE
880Sat Sep 19 07:33:36 1998 Richard Earnshaw (rearnsha@arm.com)
881
882 * arm.c (add_constant): New parameter address_only, change caller.
883 Set it non-zero if taking the address of an item in the pool.
884 (arm_reorg): Handle cases where we need the address of an item in
885 the pool.
886
9c8cc54f
RE
887 * arm.c (bad_signed_byte_operand): Check both arms of a sum in
888 a memory address.
889 * arm.md (splits for *extendqihi_insn and *extendqisi_insn): Handle
890 memory addresses that are not in standard canonical form.
891
cb0ca284
MH
892Sat Sep 19 01:00:32 1998 Michael Hayes (mph@elec.canterbury.ac.nz)
893
894 * README.C4X: New file with information about the c4x ports.
895 * ginclude/va-c4x.h: New file for c4x varargs support.
896 * config/c4x: New directory with c4x port files.
897
f10df53c
JL
898Fri Sep 18 22:52:05 1998 Jeffrey A Law (law@cygnus.com)
899
900 * reload.c (find_reloads): Do not replace a pseudo with
901 (MEM (reg_equiv_addr)) in the initializing insn for the
902 pseudo.
903
5accd822
DE
904Fri Sep 18 23:50:56 1998 David Edelsohn <edelsohn@mhpcc.edu>
905
906 * toplev.c (rest_of_compilation): Set bct_p on second call to
907 loop_optimize.
908 * loop.c (loop_optimize, scan_loop, strength_reduce): New argument
909 bct_p.
910 (strength_reduce): Only call analyze_loop_iterations and
911 insert_bct if bct_p set.
912 (check_dbra_loop): Fix typo.
913 (insert_bct): Use word_mode instead of SImode.
914 (instrument_loop_bct): Likewise. Do not delete iteration count
915 condition code generation insn. Initialize iteration count before
916 loop start.
917 * rtl.h (loop_optimize): Update prototype.
918
919 * ginclude/va-ppc.h (va_arg): longlong types in overflow area are
920 not doubleword aligned.
921
922 * rs6000.c (optimization_options): New function.
923 (secondary_reload_class): Only call true_regnum for PSEUDO_REGs.
924 * rs6000.h (OPTIMIZATION_OPTIONS): Define.
925 (REG_ALLOC_ORDER): Allocate highest numbered condition regsiters
926 first; cr1 can be used for FP record condition insns.
927
d2a73f8e
NC
928Fri Sep 18 09:44:55 1998 Nick Clifton <nickc@cygnus.com>
929
930 * config/m32r/m32r.h (m32r_block_immediate_operand): Add to
931 PREDICATE_CODES.
932
933 * config/m32r/m32r.md: Add "movstrsi" and "movstrsi_internal"
934 patterns.
935
936 * config/m32r/m32r.c (m32r_print_operand): Add 's' and 'p'
937 operators.
938 (block_move_call): New function: Call a library routine to copy a
939 block of memory.
940 (m32r_expand_block_move): New function: Expand a "movstrsi"
941 pattern into a sequence of insns.
942 (m32r_output_block_move): New function: Expand a
943 "movstrsi_internal" pattern into a sequence of assembler opcodes.
944 (m32r_block_immediate_operand): New function: Return true if the
945 RTL is an integer constant, less than or equal to MAX_MOVE_BYTES.
946
7ac2148b
AM
947Thu Sep 17 16:42:16 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
948
949 * except.c (start_catch_handler): Issue 'fatal' instead of 'error' and
950 re-align some code.
951 * libgcc2.c (__eh_rtime_match): fprintf a runtime error. Use <stdio.h>.
952
9d2106a4
R
953Thu Sep 17 12:24:33 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
954
955 * regmove.c (copy_src_to_dest): Check that modes match.
956
086afc19
RL
957Wed Sep 16 22:10:42 1998 Robert Lipe <robertl@dgii.com>
958
959 * config/i386/sco5.h (SUPPORTS_WEAK): True only if targeting ELF.
960
b66a3ac1
RH
961Wed Sep 16 15:24:54 1998 Richard Henderson <rth@cygnus.com>
962
963 * i386.h (PREFERRED_RELOAD_CLASS): Respect an existing class
964 narrower than FLOAT_REGS.
965
0d7138a1
AO
966Wed Sep 16 17:51:00 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
967
968 * cpplib.c: removed OLD_GPLUSPLUS_INCLUDE_DIR
969 * cccp.c: ditto
970 * Makefile.in (old_gxx_include_dir): removed
971
f43a85ca
NC
972Wed Sep 16 12:29:22 1998 Nick Clifton <nickc@cygnus.com>
973
974 * config/sh/sh.h: Update definition of HANDLE_PRAGMA to match
975 new specification.
976
977 * config/sh/sh.c (handle_pragma): Rename to sh_handle_pragma().
978 (sh_handle_pragma): Change function arguments to match new
979 specification for HANDLE_PRAGMA.
980
88dab4f6
KG
981Wed Sep 16 12:43:19 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
982
983 * gen-protos.c (parse_fn_proto): Cast argument of ISALNUM to
984 `unsigned char'.
985 (main): Mark parameter `argc' with ATTRIBUTE_UNUSED.
986 When generating output, initialize missing struct member to zero.
987
1a8fca8a
R
988Wed Sep 16 14:47:43 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
989
990 * regmove.c (copy_src_to_dest): Don't copy if that requires
991 (a) new register(s).
992
f15ebf65
BS
993Wed Sep 16 01:29:12 1998 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
994
995 * global.c (reg_allocno): Now static.
996 * reload1.c (reg_allocno): Delete declaration.
997 (order_regs_for_reload): Take no arguments. Don't treat regs
998 allocated by global differently than those allocated by local-alloc.
999
3dbf3a22
KI
1000Wed Sep 16 01:09:01 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
1001
b0e982be
KI
1002 * m68k/m68k.c (output_function_prologue): Reverse NO_ADDSUB_Q
1003 condition, fix format strings.
1004 (output_function_epilogue): Likewise.
1005
3dbf3a22
KI
1006 * m68k/m68k.c: Don't include <stdlib.h> directly.
1007
b86ba9c8
GK
1008Wed Sep 16 00:30:56 1998 Geoff Keating <geoffk@ozemail.com.au>
1009
1010 * gcse.c: New definition NEVER_SET for reg_first_set, reg_last_set,
1011 mem_first_set, mem_last_set; because 0 can be a CUID.
1012 (oprs_unchanged_p): Use new definition.
1013 (record_last_reg_set_info): Likewise.
1014 (record_last_mem_set_info): Likewise.
1015 (compute_hash_table): Likewise.
1016
54d65918
JL
1017Tue Sep 15 22:59:52 1998 Jeffrey A Law (law@cygnus.com)
1018
6f573ff9
JL
1019 * rs6000.c (output_epilogue): Handle Chill.
1020
fa88e837
JL
1021 * mn10200.h (ASM_OUTPUT_DWARF2_ADDR_CONST): Define.
1022 * mn10300.h (ASM_OUTPUT_DWARF2_ADDR_CONST): Define.
1023
0d8e55d8
JL
1024 * combine.c (make_extraction): If no mode is specified for
1025 an operand of insv, extv, or extzv, default it to word_mode.
1026 (simplify_comparison): Similarly.
1027 * expmed.c (store_bit_field): Similarly.
1028 (extract_bit_field): Similarly.
1029 * function.c (fixup_var_regs_1): Similarly.
1030 * recog.c (validate_replace_rtx_1): Similarly.
1031 * mips.md (extv, extzv, insv expanders): Default modes for most
1032 operands. Handle TARGET_64BIT.
1033 (movdi_uld, movdi_usd): New patterns.
1034
54d65918
JL
1035 * pa.c (emit_move_sequence): Do not replace a pseudo with its
1036 equivalent memory location unless we have been provided a scratch
1037 register. Similarly do not call find_replacement unless a
1038 scratch register has been provided.
1039
c09a3c2e
BS
1040Tue Sep 15 19:23:01 1998 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
1041
1042 * i386.h (PREFERRED_RELOAD_CLASS): For standard 387 constants,
1043 return FLOAT_REGS.
1044
71038426
RH
1045Tue Sep 15 19:09:06 1998 Richard Henderson <rth@cygnus.com>
1046
1047 * tree.h (BUILT_IN_CALLER_RETURN_ADDRESS): Unused. Kill.
1048 (BUILT_IN_FP, BUILT_IN_SP, BUILT_IN_SET_RETURN_ADDR_REG): Kill.
1049 (BUILT_IN_EH_STUB_OLD, BUILT_IN_EH_STUB, BUILT_IN_SET_EH_REGS): Kill.
1050 (BUILT_IN_EH_RETURN, BUILT_IN_DWARF_CFA): New.
1051 * c-decl.c (init_decl_processing): Update accordingly.
1052 * expr.c (expand_builtin): Likewise.
1053
1054 * rtl.h (global_rtl): Add cfa entry.
1055 (virtual_cfa_rtx, VIRTUAL_CFA_REGNUM): New.
1056 (LAST_VIRTUAL_REGISTER): Update.
1057 * emit-rtl.c (global_rtl): Add cfa entry.
1058 (init_emit): Initialize it.
1059 * function.c (cfa_offset): New.
1060 (instantiate_virtual_regs): Initialize it.
1061 (instantiate_virtual_regs_1): Instantiate virtual_cfa_rtx.
1062 (expand_function_end): Call expand_eh_return.
1063 * tm.texi (ARG_POINTER_CFA_OFFSET): New.
1064
1065 * except.c (current_function_eh_stub_label): Kill.
1066 (current_function_eh_old_stub_label): Likwise; update all references.
1067 (expand_builtin_set_return_addr_reg): Kill.
1068 (expand_builtin_eh_stub_old, expand_builtin_eh_stub): Kill.
1069 (expand_builtin_set_eh_regs): Kill.
1070 (eh_regs): Produce a third reg for the actual handler address.
1071 (eh_return_context, eh_return_stack_adjust): New.
1072 (eh_return_handler, eh_return_stub_label): New.
1073 (init_eh_for_function): Initialize them.
1074 (expand_builtin_eh_return, expand_eh_return): New.
1075 * except.h: Update prototypes.
1076 * flow.c (find_basic_blocks_1): Update references to the stub label.
1077 * function.h (struct function): Kill stub label elements.
1078
1079 * libgcc2.c (in_reg_window): For REG_SAVED_REG, check that the
1080 register number is one that would be in the previous window.
1081 Provide a dummy definition for non-windowed targets.
1082 (get_reg_addr): New function.
1083 (get_reg, put_reg, copy_reg): Use it.
1084 (__throw): Rely on in_reg_window, not INCOMING_REGNO. Kill stub
1085 generating code and use __builtin_eh_return. Use __builtin_dwarf_cfa.
1086
1087 * alpha.c (alpha_eh_epilogue_sp_ofs): New.
1088 (alpha_init_expanders): Initialize it.
1089 (alpha_expand_epilogue): Use it.
1090 * alpha.h: Declare it.
1091 * alpha.md (eh_epilogue): New.
1092
1093 * m68h.h (ARG_POINTER_CFA_OFFSET): New.
1094 * sparc.h (ARG_POINTER_CFA_OFFSET): New.
1095
bb210aaf
MM
1096Tue Sep 15 19:31:58 1998 Michael Meissner <meissner@cygnus.com>
1097
1098 * i960.h (CONST_COSTS): Fix thinko. Test flag, not the constant
1099 flag bit mask.
1100
bf71cd2e
AM
1101Tue Sep 15 14:10:54 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
1102
1103 * except.h (struct eh_entry): Add false_label field.
1104 (end_catch_handler): Add prototype.
1105 * except.c (push_eh_entry): Set false_label field to NULL_RTX.
1106 (start_catch_handler): When using old style exceptions, issue
1107 runtime typematch code before continuing with the handler.
1108 (end_catch_handler): New function, generates label after handler
1109 if needed by older style exceptions.
1110 (expand_start_all_catch): No need to check for new style exceptions.
1111 (output_exception_table_entry): Only output the first handler label
1112 for old style exceptions.
1113 * libgcc2.c (__eh_rtime_match): New routine to lump runtime matching
1114 mechanism into one function, if a runtime matcher is provided.
1115
8a21007c
AM
1116Tue Sep 15 13:53:59 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
1117
1118 * config/i960/i960.h (SLOW_BYTE_ACCESS): Change definition to 1.
1119
11d09c08
MM
1120Tue Sep 15 09:59:01 1998 Mark Mitchell <mark@markmitchell.com>
1121
1122 * integrate.c (copy_decl_list): Fix typo.
1123
2d81c9bf
DM
1124Tue Sep 15 04:18:52 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
1125
1126 * config/sparc/sparc.md (movdf_const_intreg_sp32): Fix length
1127 attribute.
1128
e12994ab
JL
1129Mon Sep 14 14:02:53 PDT 1998 Jeff Law (law@cygnus.com)
1130
1131 * version.c: Bump for snapshot.
1132
028d0b2a
JL
1133Mon Sep 14 10:33:56 PDT 1998 Jeff Law (law@cygnus.com)
1134
1135 * version.c: Bump for snapshot.
1136
466973ed
JL
1137Mon Sep 14 09:51:05 PDT 1998 Jeff Law (law@cygnus.com)
1138
1139 * version.c: Bump for snapshot.
1140
ad299d9b
DM
1141Sun Sep 13 22:10:18 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
1142
1143 * invoke.texi (C Dialect Options): Put back missing @end itemize.
1144
1b015bec
AO
1145Mon Sep 14 02:33:46 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
1146
1147 * configure.in: remove usage of `!' to negate the result of a
1148 command; some common shells do not support it
1149
d7496fbb
DM
1150Sun Sep 13 19:17:35 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
1151
1152 * configure.in: in sparc9-sol2 config, use 'if test' not
1153 brackets.
1154 * configure: Rebuilt.
1155
1156 * config/sparc/sol2-sld-64.h (SPARC_DEFAULT_CMODEL): Change to
1157 CM_MEDANY.
1158 (CPP_CPU_SPEC): Do not define _LP64, header files do this.
1159 (CPP_CPU_DEFAULT_SPEC): Likewise.
1160 * config/sparc/sol2.h (INIT_SUBTARGET_OPTABS): Get the names right
1161 for arch64 libfuncs.
1162
073149a2
DM
1163 * config/sparc/sparc.md (goto_handler_and_restore): Allow any mode
1164 for operand zero.
1165
007e8d2a
KG
1166Sun Sep 13 09:11:59 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1167
1168 * acconfig.h (NEED_DECLARATION_STRSIGNAL): Provide a stub.
1169
1170 * collect2.c: Don't declare `sys_siglist' here.
1171 (my_strsignal): Prototype and define new function. Use it in
1172 place of `sys_siglist' hacks.
1173
1174 * mips_tfile.c: Likewise.
1175
1176 * configure.in (AC_CHECK_FUNCS): Check for strsignal.
1177 (GCC_NEED_DECLARATIONS): Likewise.
1178
1179 * system.h (strsignal): Prototype it, if necessary.
1180 (sys_siglist): Declare it, if necessary.
1181
9655bf95
DM
1182Sun Sep 13 04:37:28 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
1183
1184 * loop.c (move_movables): While removing insn sequences, preserve
1185 the next pointer of the most recently deleted insn when we skip
1186 over a NOTE.
1187
fbe39e48
BE
1188Sun Sep 13 08:13:39 1998 Ben Elliston <bje@cygnus.com>
1189
1190 * objc/config-lang.in: Do not output the name of the selected
1191 thread file when building the front-end. The Makefile for the
1192 runtime library will do this.
1193
1194 * objc/Make-lang.in: Do not build the runtime library or install
1195 the Objective C header files. The Makefile for the runtime
1196 library will do this.
1197
1198 * objc/Makefile.in (all.indirect): Only build the front-end.
1199 (compiler): Rename to `frontend'.
1200 (obj-runtime): Remove target.
1201 (copy-headers): Likewise.
1202 (clean): No need to remove `libobjc.a' any longer.
1203
b91d2c10
MM
1204Sat Sep 12 11:37:19 1998 Michael Meissner <meissner@cygnus.com>
1205
1206 * rs6000.h ({ASM,CPP}_CPU_SPEC): Add support for all machines
1207 supported with -mcpu=xxx.
1208
86465af7
DM
1209Fri Sep 11 23:55:54 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
1210
1211 * flow.c (mark_set_1): Recognize multi-register structure return
1212 values in CALL insns.
1213 (mark_used_regs): Likewise.
1214 (count_reg_sets_1): Likewise.
1215 (count_reg_references): Likewise.
1216 * rtlanal.c (note_stores): Likewise.
c0222c21
DM
1217 (reg_overlap_mentioned_p): Likewise.
1218 * haifa-sched.c (check_live_1): Likewise.
1219 (update_live_1): Likewise.
1220 (sched_analyze_1): Likewise.
1221 (sched_note_set): Likewise.
1222 (birthing_insn_p): Likewise.
1223 (attach_deaths): Likewise.
1224
1225 * config/sparc/sparc.md (movdf_const_intreg_sp64): Disable.
1226
86465af7 1227
37a29ee7
ED
1228Fri Sep 11 22:57:55 1998 Eric Dumazet <dumazet@cosmosbay.com>
1229
45259482 1230 * config/i386/sco5.h (ASM_WEAKEN_LABEL): Defined as in svr4.h.
37a29ee7 1231
75bba2a6
DM
1232Thu Sep 10 22:02:04 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
1233
1234 * glimits.h (__LONG_MAX__): Recognize __sparcv9 too.
1235
d1accaa3
JJ
1236Thu Sep 10 21:19:10 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
1237
1238 * configure.in: Add check for GAS subsection -1 support.
1239 * acconfig.h (HAVE_GAS_SUBSECTION_ORDERING): Add.
1240 * configure config.in: Rebuilt.
1241 * config/sparc/sparc.h (CASE_VECTOR_MODE): For V9 flag_pic, use
1242 SImode is subsection -1 works, else use DImode.
1243 (ASM_OUTPUT_ADDR_VEC_START, ASM_OUTPUT_ADDR_VEC_END): Define if
1244 subsection -1 works.
1245 * config/sparc/sparc.c (sparc_output_addr_vec,
1246 sparc_output_addr_diff_vec): Use them if defined.
1247
02e24c7a
MM
1248Thu Sep 10 10:46:01 1998 Mark Mitchell <mark@markmitchell.com>
1249
1250 * tree.h (DECL_ORIGIN): New macro.
1251 * integrate.c (copy_and_set_decl_abstract_origin): New function.
1252 (copy_decl_list): Use it.
1253 (integrate_parm_decls): Likewise.
1254 (integrate_decl_tree): Likewise.
1255 * dwarf2out.c (decl_ultimate_origin): Simplify.
1256 * dwarfout.c (decl_ultimate_origin): Likewise.
1257 * c-decl.c (duplicate_decls): Use DECL_ORIGIN.
1258 (pushdecl): Likewise.
1259
9517ead8
AG
1260Thu Sep 10 08:01:31 1998 Anthony Green <green@cygnus.com>
1261
1262 * config/rs6000/rs6000.c (output_epilog): Add Java support.
1263
95c81fb8
ML
1264