]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
Daily bump.
[gcc.git] / gcc / ChangeLog
CommitLineData
630962bf
KG
1Mon Sep 28 22:08:52 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2
3 * toplev.c (documented_lang_options): Spelling corrections.
4
ab339d62
AO
5Mon Sep 28 19:41:24 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
6
7 * configure.in: new flags --with-ld and --with-as, equivalent
8 to setting LD and AS environment variables. Test whether
9 specified arguments are GNU commands, and report them with
10 checking messages. Use the specified AS for configure
11 tests too.
12 * configure: ditto
13 * acconfig.h: add DEFAULT_ASSEMBLER and DEFAULT_LINKER
14 * config.in: ditto
15 * gcc.c (find_a_file): when looking for `as' and `ld', return
16 the DEFAULT program if it exists
17 * collect2.c (main): use DEFAULT_LINKER if it exists
18
19 * gcc.c (find_a_file): the test for existence of a full
20 pathname was reversed
21
42820a49
MM
22Mon Sep 28 17:34:35 1998 Michael Meissner <meissner@cygnus.com>
23
24 * rs6000.h (ASM_OUTPUT_MI_THUNK): Only define on ELF systems.
25 * rs6000.c (output_mi_thunk): Always use a raw jump for now.
26
8ff0c1af
MM
27Mon Sep 28 14:24:03 1998 Mark Mitchell <mark@markmitchell.com>
28
29 * tree.h (TYPE_BINFO): Document.
30
9588f31b
SC
31Mon Sep 28 12:55:49 1998 Stan Cox <scox@cygnus.com>
32
33 * i386-coff.h (dbxcoff.h): Added.
34
fd868572
CM
35Mon Sep 28 12:51:00 1998 Catherine Moore <clm@cygnus.com>
36
37 * toplev.c: fix bad patch around flag_data_sections.
38
1f2b04b3
NC
39Mon Sep 28 10:32:28 1998 Nick Clifton <nickc@cygnus.com>
40
41 * reload1.c (reload): Use reload_address_index_reg_class and
42 reload_address_base_reg_class when setting
43 caller_save_spill_class. (Patch generated by Jim Wilson:
44 wilson@cygnus.com).
45
ece32014
MM
46Mon Sep 28 07:43:34 1998 Mark Mitchell <mark@markmitchell.com>
47
48 * c-common.c (c_get_alias_set): Tighten slightly for FUNCTION_TYPEs
49 and ARRAY_TYPEs. Tidy up. Improve support for type-punning.
50 * expr.c (store_field): Add alias_set parameter. Set the
51 MEM_ALIAS_SET accordingly, if the target is a MEM.
52 (expand_assignment): Use it.
53 (store_constructor_field): Pass 0.
54 (expand_expr): Likewise.
55
7d0756fb
CM
56Mon Sep 28 07:54:03 1998 Catherine Moore <clm@cygnus.com>
57
58 * flags.h: Add flag_data_sections.
59 * toplev.c: Add option -fdata-sections. Add flag_data_sections.
60 (compile_file): Error if flag_data_sections not supported.
61 * varasm.c (assemble_variable): Handle flag_data_sections.
62 * config/svr4.h: Modify prefixes for UNIQUE_SECTION_NAME.
63 * config/mips/elf.h: Likewise.
64 * config/mips/elf64.h: Likewise.
65 * invoke.texi: Describe -fdata-sections.
66
6fd74494
CB
67Mon Sep 28 04:15:44 1998 Craig Burley <burley@melange.gnu.org>
68
69 * invoke.texi (-ffloat-store): Clarify that this option
70 does not affect intermediate results -- only variables.
71
fcce5756
JL
72Mon Sep 28 04:11:35 1998 Jeffrey A Law (law@cygnus.com)
73
74 * cpp.texi: Update for Fortran usage from Craig.
75
2310f99a
DE
76Fri Sep 25 22:09:47 1998 David Edelsohn <edelsohn@mhpcc.edu>
77
78 * rs6000.c (function_arg_boundary): Revert accidental change on
79 September 18.
80
17167fd8
MM
81Fri Sep 25 20:30:00 1998 Michael Meissner <meissner@cygnus.com>
82
83 * rs6000.h (ASM_OUTPUT_MI_THUNK): Declare, call output_mi_thunk.
84 (output_mi_thunk): Declare.
85
86 * rs6000.c (output_mi_thunk): Function to create thunks for MI.
87 (output_function_profiler): Use r12 for temp, instead of r11 so
88 that we preserve the static chain register.
89
46fb0d7d
JW
90Fri Sep 25 14:18:33 1998 Jim Wilson <wilson@cygnus.com>
91
92 * sdbout.c (sdbout_one_type): Don't look at TYPE_BINFO field of enums.
93
913d8e13
R
94Fri Sep 25 19:30:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
95
96 * sh.c (gen_shl_sext): Fix case 5.
97
2abbc1bd
R
98Fri Sep 25 17:35:23 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
99
100 * reload1.c (reload_combine): Re-add line that got accidentally lost.
101
36611067
KG
102Fri Sep 25 10:43:47 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
103
104 * cccp.c (pedwarn_with_file_and_line): For !__STDC__ case, avoid
105 accessing variables until they are initialized via va_arg().
106
85ccbba3
DM
107Thu Sep 24 22:12:16 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
108
109 * reload1.c (reload_combine): Initialize set before using.
110
0dbb7a10
JM
111Thu Sep 24 18:53:20 1998 Jason Merrill <jason@yorick.cygnus.com>
112
113 * sdbout.c (sdbout_field_types): Don't emit the types of fields we
114 won't be emitting.
115
da959950
NC
116Thu Sep 24 17:05:30 1998 Nick Clifton <nickc@cygnus.com>
117
118 * config/arm/arm.md (insv): Add comment. In CONST_INT case, and
119 operand3 with mask before using it. Patch provided by Jim Wilson.
120
3c6088d2
JJ
121Thu Sep 24 15:08:08 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
122
123 * config/sparc/sparc.c (function_value): Perform the equivalent of
124 PROMOTE_MODE for ARCH64.
125 (eligible_for_epilogue_delay): Allow DImode operations in delay
126 slot of a return for ARCH64.
127
71187870
R
128Thu Sep 24 22:17:54 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
129
130 * sh.md (sqrtsf2): Fix mode of sqrt.
131
b29514ee
R
132Thu Sep 24 21:48:51 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
133
134 * reload1.c (choose_reload_regs): Also try inheritance when
135 reload_in is a stack slot of a pseudo, even if we already got a
136 reload reg.
137
5adf6da0
R
138Thu Sep 24 21:22:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
139
140 * reload1.c (reload_cse_regs_1): Renamed from reload_cse_regs.
141 (reload_cse_regs): New function body: call reload_cse_regs_1,
142 reload_combine, reload_cse_move2add.
143 When doing expensive_optimizations, call reload_cse_regs_1 a
144 second time after reload_cse_move2add.
145 (reload_combine, reload_combine_note_store): New functions.
146 (reload_combine_note_use): New function.
147 (reload_cse_move2add, move2add_note_store): New functions.
148
c10638c9
R
149Thu Sep 24 18:48:43 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
150
151 * reload.c (find_reloads): In code to promote RELOAD_FOR_X_ADDR_ADDR
152 reloads to RELOAD_FOR_X_ADDRESS reloads, test for reload sharing.
153
154 Properly keep track of first RELOAD_FOR_X_ADDRESS also for
155 more than 3 such reloads.
156
157 If there is not more than one RELOAD_FOR_X_ADDRESS, don't change
158 RELOAD_FOR_X_ADDR_ADDR reload.
159
34c73909
R
160Thu Sep 24 17:45:55 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
161
162 * expr.c (store_constructor): When initializing a field that is smaller
163 than a word, at the start of a word, try to widen it to a full word.
164
165 * cse.c (cse_insn): When we are about to change a register,
166 remove any invalid references to it.
167
168 (remove_invalid_subreg_refs): New function.
169 (mention_regs): Special treatment for SUBREGs.
170 (insert_regs): Don't strip SUBREG for call to mention_regs.
171 Check if reg_tick needs to be bumped up before that call.
172 (lookup_as_function): Try to match known word_mode constants when
173 looking for a norrower constant.
174 (canon_hash): Special treatment for SUBREGs.
175
345a6161
DM
176Thu Sep 24 01:35:34 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
177
178 * config/sparc/sol2-sld-64.h (TRANSFER_FROM_TRAMPOLINE): Define.
179 * config/sparc/sparc.c (sparc64_initialize_trampoline): If that is
180 defined, emit libcall to __enable_execute_stack. Also fix opcodes
181 and offsets in actual stack trampoline code so they match the
182 commentary and actually work.
183
184Thu Sep 24 01:19:02 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
185
186 * configure.in (sparcv9-*-solaris): Use t-sol2 and t-sol2-64 for
187 tmake_file.
188 (sparc64-*-linux): Use t-linux and sparc/t-linux64 for
189 tmake_file. Set extra_parts to needed crt objects.
190 * configure: Rebuilt.
191 * config/sparc/linux64.h (SPARC_BI_ARCH): Define.
192 (TARGET_DEFAULT): Set if default is v9 or ultra.
193 (STARTFILE_SPEC32, STARTFILE_SPEC64): New macros.
194 (STARTFILE_SPEC): Set to those upon SPARC_BI_ARCH.
195 (ENDFILE_SPEC32, ENDFILE_SPEC64, ENDFILE_SPEC): Likewise.
196 (SUBTARGET_EXTRA_SPECS, LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
197 LINK_SPEC, LINK_ARCH_SPEC): Likewise.
198 (TARGET_VERSION): Define.
199 (MULTILIB_DEFAULT): Define.
200 * config/sparc/sparc.h (CPP_CPU_DEFAULT_SPEC): Rearrange so that
201 mixed 32/64 bit compilers based upon SPARC_BI_ARCH work.
202 (CPP_CPU64_DEFAULT_SPEC, CPP_CPU32_DEFAULT_SEC): Define
203 appropriately.
204 (TARGET_SWITCHES): Allow ptr32/ptr64 options once more.
205 * config/sparc/sparc.c (sparc_override_options): If arch and
206 pointer size disagree, emit diagnostic and fix it up. If
207 SPARC_BI_ARCH and TARGET_ARCH32, set cmodel to CM_32. Turn off
208 V8PLUS in 64-bit mode.
209 * config/sparc/t-linux64: New file.
210 * config/sparc/t-sol2-64: New file.
211 * config/sparc/t-sol2: Adjust build rules to use MULTILIB_CFLAGS.
212 * config/sparc/sol2-sld-64.h (SPARC_BI_ARCH): Define.
213 (ASM_CPU32_DEFAULT_SPEC, ASM_CPU64_DEFAULT_SPEC,
214 CPP_CPU32_DEFAULT_SPEC, CPP_CPU64_DEFAULT_SPEC): Define.
215 (ASM_SPEC, CPP_CPU_SPEC): Set appropriately based upon those.
216 (STARTFILE_SPEC32, STARTFILE_SPEC32, STARTFILE_ARCH_SPEC):
217 Define.
218 (STARTFILE_SPEC): Set approriately based upon those.
219 (CPP_CPU_DEFAULT_SPEC, ASM_CPU_DEFAULT_SPEC): Set based upon
220 disposition of DEFAULT_ARCH32_P.
221 (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC): Define.
222 (LINK_ARCH_SPEC, LINK_ARCH_DEFAULT_SPEC): Set based upon those.
223 (CC1_SPEC, MULTILIB_DEFAULTS): Set based upon DEFAULT_ARCH32_P.
224 (MD_STARTFILE_PREFIX): Set correctly based upon SPARC_BI_ARCH.
225 * config/sparc/xm-sysv4-64.h (HOST_BITS_PER_LONG): Only set on
226 arch64/v9.
227 * config/sparc/xm-sp64.h (HOST_BITS_PER_LONG): Likewise.
228
59ec66dc
MM
229Wed Sep 23 22:32:31 1998 Mark Mitchell <mark@markmitchell.com>
230
231 * rtl.h (init_virtual_regs): New function.
232 * emit-rtl.c (init_virtual_regs): Define.
233 (insn_emit): Use it.
234 * integrate.c (save_for_inline_copying): Likewise.
235
f916eeb6
NC
236Wed Sep 23 16:22:01 1998 Nick Clifton <nickc@cygnus.com>
237
a5f42165
NC
238 * config/arm/thumb.h: The following patches were made by Jim Wilson:
239 (enum reg_class): Add NONARG_LO_REGS support.
240 (REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGNO_REG_CLASS,
241 PREFERRED_RELOAD_CLASS, SECONDARY_RELOAD_CLASS): Likewise.
242 (GO_IF_LEGITIMATE_ADDRESS): Disable REG+REG addresses before reload
243 completes. Re-enable HImode REG+OFFSET addresses.
244 (LEGITIMIZE_RELOAD_ADDRESS): Define.
245
f916eeb6
NC
246 * expmed.c (extract_bit_field): Add comment from Jim Wilson.
247
80db34d8
RH
248Wed Sep 23 13:26:02 1998 Richard Henderson <rth@cygnus.com>
249
250 * alpha.c (get_aligned_mem): Revert Sep 20 change.
251 (alpha_set_memflags, alpha_set_memflags_1): Likewise.
252 (alpha_align_insns): Properly calculate initial offset wrt max_align.
253
7551cbc7
RE
254Wed Sep 23 10:45:44 1998 Richard Earnshaw (rearnsha@arm.com)
255
256 * arm.c (find_barrier): Revert change of Apr 23. Handle table
257 jumps as a single entity, taking into account the size of the
258 table.
259
eaec171c
APB
260Tue Sep 22 15:13:34 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
261
262 * tree.def (SWITCH_EXPR): New tree node definition.
263
83d6aca1
JL
264Mon Sep 21 23:40:38 PDT 1998 Jeff Law (law@cygnus.com)
265
266 * version.c: Bump for snapshot.
267
4d7f493b
JL
268Mon Sep 21 22:31:14 PDT 1998 Jeff Law (law@cygnus.com)
269
270 * version.c: Bump for snapshot.
271
31f0adf8
JL
272Mon Sep 21 22:48:09 1998 Jeffrey A Law (law@cygnus.com)
273
274 * configure.in: Recognize i[34567]86-*-openbsd* and handle it like
275 NetBSD.
276
6c7c0e9f
JL
277Mon Sep 21 22:05:28 1998 Jeffrey A Law (law@cygnus.com)
278
279 * Revert this patch.
280 * reload.c (find_reloads): Do not replace a pseudo with
281 (MEM (reg_equiv_addr)) in the initializing insn for the
282 pseudo.
283
7ad7f828
JC
284Mon Sep 21 20:19:41 1998 John Carr <jfc@mit.edu>
285
286 * final.c (final_scan_insn): Disable tracking CC across branches.
287
43566944
AM
288Mon Sep 21 17:15:26 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
289
290 * expr.h (eh_rtime_match_libfunc): New extern declaration.
291 * optabs.c (init_optabs): Set eh_rtime_match_libfunc.
292 * except.c (start_catch_handler): Use eh_rtime_match_libfunc.
293 * libgcc2.c (__eh_rtime_match): Always return 0 if the matcher is
294 NULL. Only include <stdio.h> if inhibit_libc is not defined.
295
1cbe6eb6
JM
296Mon Sep 21 14:10:51 1998 Jason Merrill <jason@yorick.cygnus.com>
297
298 * toplev.c (rest_of_compilation): Skip compiling anything with
299 DECL_EXTERNAL set, not just if it has DECL_INLINE as well.
300
d06c6389
JW
301Mon Sep 21 13:51:05 1998 Jim Wilson <wilson@cygnus.com>
302
303 * flow.c (find_basic_blocks): Delete check for in_libcall_block when
304 prev_code is a CALL_INSN. Change check for REG_RETVAL note to
305 use in_libcall_block.
306 (find_basic_blocks_1): Delete check for in_libcall_block when prev_code
307 is a CALL_INSN. If CALL_INSN and in_libcall_block, then change code
308 to INSN.
309
724001bb
RL
310Mon Sep 21 14:02:23 1998
311
312 * i386.h: (TARGET_SWITCHES) Improve doc for align-double. Fix
313 typo in no-fancy-math-387 description.
314
64ca6edd
JL
315Mon Sep 21 09:27:18 PDT 1998 Jeff Law (law@cygnus.com)
316
317 * version.c: Bump for snapshot.
318
216f3a58
SC
319Mon Sep 21 09:24:49 1998 Stan Cox <scox@cygnus.com>
320
321 * i386-coff.h (DBX_DEBUGGING_INFO): Added.
322
c03f9fe3
RL
323Mon Sep 21 09:14:49 1998 Robert Lipe <robertl@dgii.com>
324
325 * i386.h: (TARGET_SWITCHES) Add description fields for flags
326 documented in install.texi.
327 (TARGET_OPTIONS) Likewise.
328
cc61dfb8
JL
329Mon Sep 21 01:39:03 PDT 1998 Jeff Law (law@cygnus.com)
330
331 * version.c: Bump for snapshot.
332
b2a1e458
FL
333Mon Sep 21 01:53:05 1998 Felix Lee <flee@cygnus.com>
334
335 * c-lex.c (init_lex): Use getenv ("LANG"), not GET_ENVIRONMENT ().
336 * cccp.c (main): Likewise.
b2a1e458
FL
337
338 * cccp.c, collect2.c, cpplib.c, gcc.c, config/i386/xm-cygwin32.h:
339 Rename GET_ENVIRONMENT to GET_ENV_PATH_LIST, and fix some
340 macro-use bugs.
341
7e2231e7
PB
342Mon Sep 21 00:52:12 1998 Per Bothner <bothner@cygnus.com>
343
344 * Makefile.in (LIBS): Link in libiberty.a.
c03f9fe3 345 * c-common.c, gcc.c, toplev.c: Replace (some) bcopy calls by memcpy.
7e2231e7 346
c93b03c2
RH
347Sun Sep 20 23:28:11 1998 Richard Henderson <rth@cygnus.com>
348
349 * reload1.c (emit_reload_insns): Accept a new arg for the bb. Use
350 it to update bb boundaries. Update caller.
351 * function.c (reposition_prologue_and_epilogue_notes): Update
352 bb boundaries wrt the moved note.
353
823642df
RL
354Sun Sep 20 20:57:02 1998 Robert Lipe <robertl@dgii.com>
355
356 * configure.in (i*86-*-sysv5*): Use fixinc.svr4 to patch byteorder
357 problems.
358 * configure: Regenerate.
359
2ba57343
RH
360Sun Sep 20 19:01:51 1998 Richard Henderson <rth@cygnus.com>
361
3873d24b
RH
362 * alpha.c (alpha_sr_alias_set): New variable.
363 (override_options): Set it.
364 (alpha_expand_prologue, alpha_expand_epilogue): Use it.
365 (mode_mask_operand): Fix signed-unsigned comparision warning.
366 (alpha_expand_block_move): Likewise.
367 (print_operand): Likewise.
368 (get_aligned_mem): Use change_address.
369 (alpha_set_memflags, alpha_set_memflags_1): Set the alias set.
370 (alphaev4_insn_pipe, alphaev4_next_group): New functions.
371 (alphaev4_next_nop, alphaev5_next_nop): New functions.
372 (alpha_align_insns): Remade from old alphaev5_align_insns
373 to handle multiple processors.
374 (alpha_reorg): Call alpha_align_insns for both ev4 and ev5.
375 * output.h (label_to_alignment): Prototype.
376
2ba57343
RH
377 * tree.c (new_alias_set): New function.
378 * tree.h (new_alias_set): Declare it.
379 * c-common.c (c_get_alias_set): Use it.
380
899f1ed6
RH
381Sun Sep 20 12:35:55 1998 Richard Henderson <rth@cygnus.com>
382
383 * fold-const.c (fold): Yet another COND_EXPR bug: when folding
384 to an ABS expr, convert an unsigned input to signed.
385
c479c2ac
JL
386Sun Sep 20 12:14:45 1998 Jeffrey A Law (law@cygnus.com)
387
388 * fold-const.c (fold): Fix another type in COND_EXPR handling code.
389
62616695
MH
3901998-09-20 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
391
392 * configure.in: Add support for c4x targets.
393 * configure: Rebuilt.
394
f5c97640
RH
395Sun Sep 20 00:00:51 1998 Richard Henderson <rth@cygnus.com>
396
397 * combine.c (distribute_notes): If an insn is a cc0 user, only
398 delete it if we can also delete the cc0 setter.
399
a58bd508
MT
400Sun Sep 20 00:22:23 1998 Michael Tiemann <michael@impact.tiemann.org>
401
402 * fold-const.c (fold): Fix typo in COND_EXPR handling code.
403 (invert_truthvalue): Enable truthvalue inversion for
404 floating-point operands if -ffast-math.
405
750930c1
MN
406Sat Sep 19 23:58:07 1998 Melissa O'Neill <oneill@cs.sfu.ca>
407
408 * configure.in: Disable collect2 for nextstep. Instead use
409 crtbegin/crtend.
410 * configure: Rebuilt.
411 * config/nextstep.h (STARTFILE_SPEC): Add crtbegin.
412 (ENDFILE_SPEC): Define.
413 (OBJECT_FORMAT_MACHO): Define.
414 (EH_FRAME_SECTION_ASM_OP): Define.
415 * crtstuff.c: Handle MACHO.
416
655d03a8
RL
417Sun Sep 20 00:24:24 1998 Robert Lipe <robertl@dgii.com>
418
419 * config/i386/sco5.h (TARGET_MEM_FUNCTIONS): Define.
420
b567319f
TG
4211998-09-19 Torbjorn Granlund <tege@matematik.su.se>
422
423 * fp-bit.c (pack_d): Do not clear SIGN when fraction is 0.
424 (_fpadd_parts): Get sign right for 0.
425
9949a9f2
MH
4261998-09-19 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
427
428 * ginclude/varargs.h: Add support for C4x target.
429 * ginclude/stdargs.h: Likewise.
430
3fe5612d
RH
431Sat Sep 19 12:05:09 1998 Richard Henderson <rth@cygnus.com>
432
433 * alpha.c (alpha_return_addr): SET should be VOIDmode.
434 (alpha_emit_set_long_const): Rewrite to be callable from reload
435 and 32-bit hosts.
436 (alpha_expand_epilogue): Update for alpha_emit_set_long_const.
437 * alpha.md (movdi): Likewise.
438
332072db
RE
439Sat Sep 19 07:33:36 1998 Richard Earnshaw (rearnsha@arm.com)
440
441 * arm.c (add_constant): New parameter address_only, change caller.
442 Set it non-zero if taking the address of an item in the pool.
443 (arm_reorg): Handle cases where we need the address of an item in
444 the pool.
445
9c8cc54f
RE
446 * arm.c (bad_signed_byte_operand): Check both arms of a sum in
447 a memory address.
448 * arm.md (splits for *extendqihi_insn and *extendqisi_insn): Handle
449 memory addresses that are not in standard canonical form.
450
cb0ca284
MH
451Sat Sep 19 01:00:32 1998 Michael Hayes (mph@elec.canterbury.ac.nz)
452
453 * README.C4X: New file with information about the c4x ports.
454 * ginclude/va-c4x.h: New file for c4x varargs support.
455 * config/c4x: New directory with c4x port files.
456
f10df53c
JL
457Fri Sep 18 22:52:05 1998 Jeffrey A Law (law@cygnus.com)
458
459 * reload.c (find_reloads): Do not replace a pseudo with
460 (MEM (reg_equiv_addr)) in the initializing insn for the
461 pseudo.
462
5accd822
DE
463Fri Sep 18 23:50:56 1998 David Edelsohn <edelsohn@mhpcc.edu>
464
465 * toplev.c (rest_of_compilation): Set bct_p on second call to
466 loop_optimize.
467 * loop.c (loop_optimize, scan_loop, strength_reduce): New argument
468 bct_p.
469 (strength_reduce): Only call analyze_loop_iterations and
470 insert_bct if bct_p set.
471 (check_dbra_loop): Fix typo.
472 (insert_bct): Use word_mode instead of SImode.
473 (instrument_loop_bct): Likewise. Do not delete iteration count
474 condition code generation insn. Initialize iteration count before
475 loop start.
476 * rtl.h (loop_optimize): Update prototype.
477
478 * ginclude/va-ppc.h (va_arg): longlong types in overflow area are
479 not doubleword aligned.
480
481 * rs6000.c (optimization_options): New function.
482 (secondary_reload_class): Only call true_regnum for PSEUDO_REGs.
483 * rs6000.h (OPTIMIZATION_OPTIONS): Define.
484 (REG_ALLOC_ORDER): Allocate highest numbered condition regsiters
485 first; cr1 can be used for FP record condition insns.
486
d2a73f8e
NC
487Fri Sep 18 09:44:55 1998 Nick Clifton <nickc@cygnus.com>
488
489 * config/m32r/m32r.h (m32r_block_immediate_operand): Add to
490 PREDICATE_CODES.
491
492 * config/m32r/m32r.md: Add "movstrsi" and "movstrsi_internal"
493 patterns.
494
495 * config/m32r/m32r.c (m32r_print_operand): Add 's' and 'p'
496 operators.
497 (block_move_call): New function: Call a library routine to copy a
498 block of memory.
499 (m32r_expand_block_move): New function: Expand a "movstrsi"
500 pattern into a sequence of insns.
501 (m32r_output_block_move): New function: Expand a
502 "movstrsi_internal" pattern into a sequence of assembler opcodes.
503 (m32r_block_immediate_operand): New function: Return true if the
504 RTL is an integer constant, less than or equal to MAX_MOVE_BYTES.
505
7ac2148b
AM
506Thu Sep 17 16:42:16 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
507
508 * except.c (start_catch_handler): Issue 'fatal' instead of 'error' and
509 re-align some code.
510 * libgcc2.c (__eh_rtime_match): fprintf a runtime error. Use <stdio.h>.
511
9d2106a4
R
512Thu Sep 17 12:24:33 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
513
514 * regmove.c (copy_src_to_dest): Check that modes match.
515
086afc19
RL
516Wed Sep 16 22:10:42 1998 Robert Lipe <robertl@dgii.com>
517
518 * config/i386/sco5.h (SUPPORTS_WEAK): True only if targeting ELF.
519
b66a3ac1
RH
520Wed Sep 16 15:24:54 1998 Richard Henderson <rth@cygnus.com>
521
522 * i386.h (PREFERRED_RELOAD_CLASS): Respect an existing class
523 narrower than FLOAT_REGS.
524
0d7138a1
AO
525Wed Sep 16 17:51:00 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
526
527 * cpplib.c: removed OLD_GPLUSPLUS_INCLUDE_DIR
528 * cccp.c: ditto
529 * Makefile.in (old_gxx_include_dir): removed
530
f43a85ca
NC
531Wed Sep 16 12:29:22 1998 Nick Clifton <nickc@cygnus.com>
532
533 * config/sh/sh.h: Update definition of HANDLE_PRAGMA to match
534 new specification.
535
536 * config/sh/sh.c (handle_pragma): Rename to sh_handle_pragma().
537 (sh_handle_pragma): Change function arguments to match new
538 specification for HANDLE_PRAGMA.
539
88dab4f6
KG
540Wed Sep 16 12:43:19 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
541
542 * gen-protos.c (parse_fn_proto): Cast argument of ISALNUM to
543 `unsigned char'.
544 (main): Mark parameter `argc' with ATTRIBUTE_UNUSED.
545 When generating output, initialize missing struct member to zero.
546
1a8fca8a
R
547Wed Sep 16 14:47:43 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
548
549 * regmove.c (copy_src_to_dest): Don't copy if that requires
550 (a) new register(s).
551
f15ebf65
BS
552Wed Sep 16 01:29:12 1998 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
553
554 * global.c (reg_allocno): Now static.
555 * reload1.c (reg_allocno): Delete declaration.
556 (order_regs_for_reload): Take no arguments. Don't treat regs
557 allocated by global differently than those allocated by local-alloc.
558
3dbf3a22
KI
559Wed Sep 16 01:09:01 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
560
b0e982be
KI
561 * m68k/m68k.c (output_function_prologue): Reverse NO_ADDSUB_Q
562 condition, fix format strings.
563 (output_function_epilogue): Likewise.
564
3dbf3a22
KI
565 * m68k/m68k.c: Don't include <stdlib.h> directly.
566
b86ba9c8
GK
567Wed Sep 16 00:30:56 1998 Geoff Keating <geoffk@ozemail.com.au>
568
569 * gcse.c: New definition NEVER_SET for reg_first_set, reg_last_set,
570 mem_first_set, mem_last_set; because 0 can be a CUID.
571 (oprs_unchanged_p): Use new definition.
572 (record_last_reg_set_info): Likewise.
573 (record_last_mem_set_info): Likewise.
574 (compute_hash_table): Likewise.
575
54d65918
JL
576Tue Sep 15 22:59:52 1998 Jeffrey A Law (law@cygnus.com)
577
6f573ff9
JL
578 * rs6000.c (output_epilogue): Handle Chill.
579
fa88e837
JL
580 * mn10200.h (ASM_OUTPUT_DWARF2_ADDR_CONST): Define.
581 * mn10300.h (ASM_OUTPUT_DWARF2_ADDR_CONST): Define.
582
0d8e55d8
JL
583 * combine.c (make_extraction): If no mode is specified for
584 an operand of insv, extv, or extzv, default it to word_mode.
585 (simplify_comparison): Similarly.
586 * expmed.c (store_bit_field): Similarly.
587 (extract_bit_field): Similarly.
588 * function.c (fixup_var_regs_1): Similarly.
589 * recog.c (validate_replace_rtx_1): Similarly.
590 * mips.md (extv, extzv, insv expanders): Default modes for most
591 operands. Handle TARGET_64BIT.
592 (movdi_uld, movdi_usd): New patterns.
593
54d65918
JL
594 * pa.c (emit_move_sequence): Do not replace a pseudo with its
595 equivalent memory location unless we have been provided a scratch
596 register. Similarly do not call find_replacement unless a
597 scratch register has been provided.
598
c09a3c2e
BS
599Tue Sep 15 19:23:01 1998 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
600
601 * i386.h (PREFERRED_RELOAD_CLASS): For standard 387 constants,
602 return FLOAT_REGS.
603
71038426
RH
604Tue Sep 15 19:09:06 1998 Richard Henderson <rth@cygnus.com>
605
606 * tree.h (BUILT_IN_CALLER_RETURN_ADDRESS): Unused. Kill.
607 (BUILT_IN_FP, BUILT_IN_SP, BUILT_IN_SET_RETURN_ADDR_REG): Kill.
608 (BUILT_IN_EH_STUB_OLD, BUILT_IN_EH_STUB, BUILT_IN_SET_EH_REGS): Kill.
609 (BUILT_IN_EH_RETURN, BUILT_IN_DWARF_CFA): New.
610 * c-decl.c (init_decl_processing): Update accordingly.
611 * expr.c (expand_builtin): Likewise.
612
613 * rtl.h (global_rtl): Add cfa entry.
614 (virtual_cfa_rtx, VIRTUAL_CFA_REGNUM): New.
615 (LAST_VIRTUAL_REGISTER): Update.
616 * emit-rtl.c (global_rtl): Add cfa entry.
617 (init_emit): Initialize it.
618 * function.c (cfa_offset): New.
619 (instantiate_virtual_regs): Initialize it.
620 (instantiate_virtual_regs_1): Instantiate virtual_cfa_rtx.
621 (expand_function_end): Call expand_eh_return.
622 * tm.texi (ARG_POINTER_CFA_OFFSET): New.
623
624 * except.c (current_function_eh_stub_label): Kill.
625 (current_function_eh_old_stub_label): Likwise; update all references.
626 (expand_builtin_set_return_addr_reg): Kill.
627 (expand_builtin_eh_stub_old, expand_builtin_eh_stub): Kill.
628 (expand_builtin_set_eh_regs): Kill.
629 (eh_regs): Produce a third reg for the actual handler address.
630 (eh_return_context, eh_return_stack_adjust): New.
631 (eh_return_handler, eh_return_stub_label): New.
632 (init_eh_for_function): Initialize them.
633 (expand_builtin_eh_return, expand_eh_return): New.
634 * except.h: Update prototypes.
635 * flow.c (find_basic_blocks_1): Update references to the stub label.
636 * function.h (struct function): Kill stub label elements.
637
638 * libgcc2.c (in_reg_window): For REG_SAVED_REG, check that the
639 register number is one that would be in the previous window.
640 Provide a dummy definition for non-windowed targets.
641 (get_reg_addr): New function.
642 (get_reg, put_reg, copy_reg): Use it.
643 (__throw): Rely on in_reg_window, not INCOMING_REGNO. Kill stub
644 generating code and use __builtin_eh_return. Use __builtin_dwarf_cfa.
645
646 * alpha.c (alpha_eh_epilogue_sp_ofs): New.
647 (alpha_init_expanders): Initialize it.
648 (alpha_expand_epilogue): Use it.
649 * alpha.h: Declare it.
650 * alpha.md (eh_epilogue): New.
651
652 * m68h.h (ARG_POINTER_CFA_OFFSET): New.
653 * sparc.h (ARG_POINTER_CFA_OFFSET): New.
654
bb210aaf
MM
655Tue Sep 15 19:31:58 1998 Michael Meissner <meissner@cygnus.com>
656
657 * i960.h (CONST_COSTS): Fix thinko. Test flag, not the constant
658 flag bit mask.
659
bf71cd2e
AM
660Tue Sep 15 14:10:54 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
661
662 * except.h (struct eh_entry): Add false_label field.
663 (end_catch_handler): Add prototype.
664 * except.c (push_eh_entry): Set false_label field to NULL_RTX.
665 (start_catch_handler): When using old style exceptions, issue
666 runtime typematch code before continuing with the handler.
667 (end_catch_handler): New function, generates label after handler
668 if needed by older style exceptions.
669 (expand_start_all_catch): No need to check for new style exceptions.
670 (output_exception_table_entry): Only output the first handler label
671 for old style exceptions.
672 * libgcc2.c (__eh_rtime_match): New routine to lump runtime matching
673 mechanism into one function, if a runtime matcher is provided.
674
8a21007c
AM
675Tue Sep 15 13:53:59 EDT 1998 Andrew MacLeod <amacleod@cygnus.com>
676
677 * config/i960/i960.h (SLOW_BYTE_ACCESS): Change definition to 1.
678
11d09c08
MM
679Tue Sep 15 09:59:01 1998 Mark Mitchell <mark@markmitchell.com>
680
681 * integrate.c (copy_decl_list): Fix typo.
682
2d81c9bf
DM
683Tue Sep 15 04:18:52 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
684
685 * config/sparc/sparc.md (movdf_const_intreg_sp32): Fix length
686 attribute.
687
e12994ab
JL
688Mon Sep 14 14:02:53 PDT 1998 Jeff Law (law@cygnus.com)
689
690 * version.c: Bump for snapshot.
691
028d0b2a
JL
692Mon Sep 14 10:33:56 PDT 1998 Jeff Law (law@cygnus.com)
693
694 * version.c: Bump for snapshot.
695
466973ed
JL
696Mon Sep 14 09:51:05 PDT 1998 Jeff Law (law@cygnus.com)
697
698 * version.c: Bump for snapshot.
699
ad299d9b
DM
700Sun Sep 13 22:10:18 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
701
702 * invoke.texi (C Dialect Options): Put back missing @end itemize.
703
1b015bec
AO
704Mon Sep 14 02:33:46 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
705
706 * configure.in: remove usage of `!' to negate the result of a
707 command; some common shells do not support it
708
d7496fbb
DM
709Sun Sep 13 19:17:35 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
710
711 * configure.in: in sparc9-sol2 config, use 'if test' not
712 brackets.
713 * configure: Rebuilt.
714
715 * config/sparc/sol2-sld-64.h (SPARC_DEFAULT_CMODEL): Change to
716 CM_MEDANY.
717 (CPP_CPU_SPEC): Do not define _LP64, header files do this.
718 (CPP_CPU_DEFAULT_SPEC): Likewise.
719 * config/sparc/sol2.h (INIT_SUBTARGET_OPTABS): Get the names right
720 for arch64 libfuncs.
721
073149a2
DM
722 * config/sparc/sparc.md (goto_handler_and_restore): Allow any mode
723 for operand zero.
724
007e8d2a
KG
725Sun Sep 13 09:11:59 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
726
727 * acconfig.h (NEED_DECLARATION_STRSIGNAL): Provide a stub.
728
729 * collect2.c: Don't declare `sys_siglist' here.
730 (my_strsignal): Prototype and define new function. Use it in
731 place of `sys_siglist' hacks.
732
733 * mips_tfile.c: Likewise.
734
735 * configure.in (AC_CHECK_FUNCS): Check for strsignal.
736 (GCC_NEED_DECLARATIONS): Likewise.
737
738 * system.h (strsignal): Prototype it, if necessary.
739 (sys_siglist): Declare it, if necessary.
740
9655bf95
DM
741Sun Sep 13 04:37:28 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
742
743 * loop.c (move_movables): While removing insn sequences, preserve
744 the next pointer of the most recently deleted insn when we skip
745 over a NOTE.
746
fbe39e48
BE
747Sun Sep 13 08:13:39 1998 Ben Elliston <bje@cygnus.com>
748
749 * objc/config-lang.in: Do not output the name of the selected
750 thread file when building the front-end. The Makefile for the
751 runtime library will do this.
752
753 * objc/Make-lang.in: Do not build the runtime library or install
754 the Objective C header files. The Makefile for the runtime
755 library will do this.
756
757 * objc/Makefile.in (all.indirect): Only build the front-end.
758 (compiler): Rename to `frontend'.
759 (obj-runtime): Remove target.
760 (copy-headers): Likewise.
761 (clean): No need to remove `libobjc.a' any longer.
762
b91d2c10
MM
763Sat Sep 12 11:37:19 1998 Michael Meissner <meissner@cygnus.com>
764
765 * rs6000.h ({ASM,CPP}_CPU_SPEC): Add support for all machines
766 supported with -mcpu=xxx.
767
86465af7
DM
768Fri Sep 11 23:55:54 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
769
770 * flow.c (mark_set_1): Recognize multi-register structure return
771 values in CALL insns.
772 (mark_used_regs): Likewise.
773 (count_reg_sets_1): Likewise.
774 (count_reg_references): Likewise.
775 * rtlanal.c (note_stores): Likewise.
c0222c21
DM
776 (reg_overlap_mentioned_p): Likewise.
777 * haifa-sched.c (check_live_1): Likewise.
778 (update_live_1): Likewise.
779 (sched_analyze_1): Likewise.
780 (sched_note_set): Likewise.
781 (birthing_insn_p): Likewise.
782 (attach_deaths): Likewise.
783
784 * config/sparc/sparc.md (movdf_const_intreg_sp64): Disable.
785
86465af7 786
37a29ee7
ED
787Fri Sep 11 22:57:55 1998 Eric Dumazet <dumazet@cosmosbay.com>
788
45259482 789 * config/i386/sco5.h (ASM_WEAKEN_LABEL): Defined as in svr4.h.
37a29ee7 790
75bba2a6
DM
791Thu Sep 10 22:02:04 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
792
793 * glimits.h (__LONG_MAX__): Recognize __sparcv9 too.
794
d1accaa3
JJ
795Thu Sep 10 21:19:10 1998 Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
796
797 * configure.in: Add check for GAS subsection -1 support.
798 * acconfig.h (HAVE_GAS_SUBSECTION_ORDERING): Add.
799 * configure config.in: Rebuilt.
800 * config/sparc/sparc.h (CASE_VECTOR_MODE): For V9 flag_pic, use
801 SImode is subsection -1 works, else use DImode.
802 (ASM_OUTPUT_ADDR_VEC_START, ASM_OUTPUT_ADDR_VEC_END): Define if
803 subsection -1 works.
804 * config/sparc/sparc.c (sparc_output_addr_vec,
805 sparc_output_addr_diff_vec): Use them if defined.
806
02e24c7a
MM
807Thu Sep 10 10:46:01 1998 Mark Mitchell <mark@markmitchell.com>
808
809 * tree.h (DECL_ORIGIN): New macro.
810 * integrate.c (copy_and_set_decl_abstract_origin): New function.
811 (copy_decl_list): Use it.
812 (integrate_parm_decls): Likewise.
813 (integrate_decl_tree): Likewise.
814 * dwarf2out.c (decl_ultimate_origin): Simplify.
815 * dwarfout.c (decl_ultimate_origin): Likewise.
816 * c-decl.c (duplicate_decls): Use DECL_ORIGIN.
817 (pushdecl): Likewise.
818
9517ead8
AG
819Thu Sep 10 08:01:31 1998 Anthony Green <green@cygnus.com>
820
821 * config/rs6000/rs6000.c (output_epilog): Add Java support.
822
95c81fb8
ML
823