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