]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/ChangeLog
libgloss.h: Add a note discouraging use with ELF.
[thirdparty/gcc.git] / gcc / ChangeLog
1 Mon Aug 2 17:02:08 1999 Jason Merrill <jason@yorick.cygnus.com>
2
3 * config/libgloss.h: Add a note discouraging use with ELF.
4 * configure.in: Don't use libgloss.h for ELF targets.
5
6 Mon Aug 2 16:27:42 1999 Jim Wilson <wilson@cygnus.com>
7
8 * combine.c (force_to_mode, case LSHIFTRT): Add goto shiftrt.
9 (force_to_mode, case ASHIFTRT): Add shiftrt label.
10
11 Tue Aug 3 00:45:02 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
12
13 * loop.c (strength_reduce): When doing biv->giv conversion, update
14 reg note of NEXT->insn.
15
16 1999-08-02 Jakub Jelinek <jj@ultra.linux.cz>
17
18 * real.c (PUT_REAL): Clear unused bytes if long double is IEEE quad.
19
20 1999-08-02 Jakub Jelinek <jj@ultra.linux.cz>
21
22 * c-decl.c (get_parm_info, store_parm_decls): Change all uses of
23 PROMOTE_PROTOTYPES, so that it tests it as a C expression.
24 Ensure expr.h is included.
25 * c-typecheck.c (convert_arguments): Ditto.
26
27 * expr.h: Supply default for PROMOTE_PROTOTYPES (0).
28
29 * config/arc/arc.h: Define PROMOTE_PROTOTYPES to 1.
30 * config/convex/convex.h: Ditto.
31 * config/dsp16xx/dsp16xx.h: Ditto.
32 * config/fx80/fx80.h: Ditto.
33 * config/gmicro/gmicro.h: Ditto.
34 * config/i370/i370.h: Ditto.
35 * config/i386/i386.h: Ditto.
36 * config/m32r/m32r.h: Ditto.
37 * config/m68k/m68k.h: Ditto.
38 * config/m88k/m88k.h: Ditto.
39 * config/mips/mips.h: Ditto.
40 * config/pa/pa.h: Ditto.
41 * config/pyr/pyr.h: Ditto.
42 * config/tahoe/tahoe.h: Ditto.
43 * config/we32k/we32k.h: Ditto.
44
45 * config/sparc/sparc.h: Define PROMOTE_PROTOTYPES
46 based on arch size.
47
48 * config/i1750a/i1750a.h: Define PROMOTE_PROTOTYPES to 0.
49
50 * config/i860/paragon.h: Remove PROMOTE_PROTOTYPES
51 from comment.
52
53 * tm.texi: Document new usage of PROMOTE_PROTOTYPES.
54
55 1999-08-02 Richard Henderson <rth@cygnus.com>
56
57 * m32r.c (m32r_setup_incoming_varargs): Use get_varargs_alias_set
58 for the register spill block.
59 (m32r_va_arg): New.
60 * m32r.h (EXPAND_BUILTIN_VA_ARG): New.
61 (EXPAND_BUILTIN_SAVEREGS): Delete #if 0 code.
62
63 * m32r.h (INT8_P): Don't short-cut test with (unsigned).
64 (INT16_P, CMP_INT16_P, UINT16_P): Likewise.
65 (UPPER16_P, UINT24_P, INT32_P, UINT5_P): Likewise.
66
67 1999-08-02 Jakub Jelinek <jj@ultra.linux.cz>
68
69 * config/sparc/linux.h: Define WCHAR_TYPE as "int" and undef
70 MAX_WCHAR_TYPE defined in sparc.h.
71 * config/sparc/linuxaout.h: Likewise.
72 * config/sparc/linux64.h: Likewise.
73 Also default to -mvis if CPU is UltraSPARC.
74
75 1999-08-02 Jakub Jelinek <jj@ultra.linux.cz>
76
77 * config/sparc/sparc.h (ASM_DECLARE_REGISTER_GLOBAL): New macro.
78 (RTX_OK_FOR_OLO10): Likewise.
79 (GO_IF_LEGITIMATE_ADDRESS): If assembler supports offsetable
80 %lo(), allow it in addresses...
81 (PRINT_OPERAND_ADDRESS): ... and print it appropriately.
82 * config/sparc/sparc.md (sethi_di_medlow_embmedany_pic): sethi %lo()
83 does not make sense.
84 * config/sparc/sparc.c (sparc_hard_reg_printed): New array.
85 (sparc_output_scratch_registers): New function.
86 (output_function_prologue, sparc_flat_output_function_prologue): Use
87 it.
88 * varasm.c (make_decl_rtl): Use ASM_DECLARE_REGISTER_GLOBAL if
89 defined.
90 * tm.texi (ASM_DECLARE_REGISTER_GLOBAL): Document it.
91 * configure.in: Add check for .register pseudo-op support in as and
92 check for offsetable %lo().
93 * acconfig.h: Add templates for the above checks.
94 * configure: Regenerate.
95
96 1999-08-02 Richard Henderson <rth@cygnus.com>
97
98 * sparc/linux64.h (TARGET_DEFAULT): Remove MASK_APP_REGS.
99 * sparc/sol2-sld-64.h (TARGET_DEFAULT): Likewise.
100 * sparc/sol2.h (TARGET_DEFAULT): Likewise.
101
102 Mon Aug 2 23:46:45 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
103
104 * loop.c (strength_reduce): When doing biv->giv conversion, fix up
105 reg_biv_class.
106
107 1999-08-02 Jakub Jelinek <jj@ultra.linux.cz>
108
109 * config/float-sparc.h: New file.
110 * configure.in: Use float_format=sparc for sparc-*-linux-gnulibc1,
111 sparc-*-linux-gnu and sparc64-*-linux*.
112
113 1999-08-02 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
114
115 * rs6000.c (rs6000_va_list): Type is an array.
116 (rs6000_va_start): Don't doubly adjust for varargs.
117 (rs6000_va_arg): Evaluate long long GPR adjustment.
118
119 Mon Aug 2 16:15:57 1999 David Edelsohn <edelsohn@gnu.org>
120
121 * rs6000/aix43.h (SUBTARGET_SWITCHES): Use -m64 and -m32 instead of
122 -maix64 and -maix32.
123 (ASM_SPEC, ASM_CPU_SPEC, CPP_SPEC, CPP_CPU_SPEC, LIB_SPEC,
124 LINK_SPEC): Change appropriately.
125 * rs6000/rs6000.c (short_cint_operand): Use CONST_OK_FOR_LETTER_P.
126 (u_short_cint_operand): Likewise.
127 * rs6000/rs6000.md (movdi splitters): Add TARGET_POWERPC64 support
128 for 64-bit hosts.
129 * rs6000/t-aix43 (MULTILIB): Change to -m64.
130
131 * invoke.texi (RS/6000 Submodel): Document 64-bit processor options.
132
133 Mon Aug 2 16:15:57 1999 Geoff Keating <geoffk@cygnus.com>
134
135 * rs6000/rs6000.c (num_insns_constant_wide): Correct
136 for type promotion.
137 (add_operand): Get test correct for 64-bit HOST_WIDE_INT.
138 (non_add_cint_operand): Likewise.
139 (logical_operand): Likewise.
140 (non_logical_cint_operand): Likewise.
141 (print_operand): Correct printf()s for 64-bit HOST_WIDE_INT.
142 (print_operand_address): Correct printf() for 64-bit HOST_WIDE_INT.
143 (rs6000_select_rtx_section): Suppress warning.
144 (small_data_operand): Suppress warning.
145 (rs6000_got_register): Suppress warning.
146 * rs6000/rs6000.md (andsi3): HOST_WIDE_INT is a signed
147 type, so `J' is generally the wrong constraint for a SImode value;
148 use `L' instead.
149 (andsi3_internal2): Likewise.
150 (andsi3_internal3): Likewise.
151 (iorsi3_internal1): Likewise.
152 (xorsi3_internal1): Likewise.
153 (movsi): Likewise.
154 (movsf_softfloat): Likewise.
155 (scc insns): Likewise.
156 (movsi+2): Preserve sign bits of SImode constant.
157 (floatsidf2_internal+1): Sign-extend SImode constant correctly.
158 (movdf+1): Sign-extend properly.
159 (movdi_32+1): Sign-extend properly.
160 (scc insns): Sign-extend properly.
161
162 * md.texi (RS/6000 EXTRA_CONSTRAINTS): Update documentation for J,
163 K, L, and T.
164
165 1999-08-02 Richard Henderson <rth@cygnus.com>
166
167 * alpha.c (override_options): Move ev6 alpha_tp frobbing out of
168 -mcpu parsing code.
169 (print_operand): Notice alpha_fptm not alpha_tp for sw completion.
170 * alpha.md (all fp insns): Likewise.
171
172 1999-08-02 Nick Clifton <nickc@cygnus.com>
173
174 * config/v850/v850.h (STRICT_ALIGNMENT): Only define if not
175 already defined.
176
177 Mon Aug 2 03:38:33 1999 Jeffrey A Law (law@cygnus.com)
178
179 * pa.c (legitimize_pic_address): Clarify comments. Do not call the
180 pic_load_label generator directly.
181 * pa.md (pic_load_label): Clarify comments. Remove modes on operands.
182 No longer a named pattern.
183
184 Mon Aug 2 09:38:10 1999 Nick Clifton <nickc@cygnus.com>
185
186 * explow.c (force_reg): Call force_operand if X does not
187 satisfy general_operand.
188
189 Mon Aug 2 01:34:22 1999 Jeffrey A Law (law@cygnus.com)
190
191 * fix-header.c (main): When testing for CONTINUED, use string
192 equality, not pointer equality.
193
194 Mon Aug 2 01:27:24 1999 Dan Nicolaescu <dann@ics.uci.edu>
195
196 * sparc.c (sparc_block_profiler): Use the %g2 register, not %o0.
197
198 Sun Aug 1 22:46:42 1999 Jeffrey A Law (law@cygnus.com)
199
200 * cse.c (cse_insn): Fix loop which deletes insns after a jump
201 that has become an unconditional jump.
202
203 * m68k.c (output_function_prologue): Fix typo in CPU32 case.
204 (output_function_epilogue): Similarly.
205
206 Sun Aug 1 20:14:00 1999 Bernd Schmidt <bernds@cygnus.co.uk>
207
208 * tree.h (init_dummy_function_start): Declare.
209
210 Sun Aug 1 12:55:31 1999 Bernd Schmidt <bernds@cygnus.co.uk>
211
212 * stmt.c (emit_filename, emit_lineno, expr_stmts_for_value,
213 last_expr_type, last_expr_value, block_start_count, block_stack,
214 stack_block_stack, cond_stack, loop_stack, case_stack, nesting_stack,
215 nesting_depth, goto_fixup_chain): Delete global vars; now allocated
216 dynamically in stmt elt of struct function for each function.
217 (struct nesting): Rename function_call_count elt to n_function_calls,
218 target_temp_slot_level to block_target_temp_slot_level. All users
219 changed.
220 (struct stmt_status): New structure definition.
221 Add many accessor macros for stmt_status elements which previously
222 were global variables.
223 (init_stmt_for_function): Allocate stmt elt for current_function.
224 Reflect that block_start_count was renamed to
225 current_block_start_count.
226 (save_stmt_status, restore_stmt_status): Delete functions.
227 (preserve_subexpressions_p): Don't access loop_stack when outside
228 a function.
229 (expand_start_bindings): Reflect that block_start_count was renamed to
230 current_block_start_count.
231 (expand_fixup): Likewise.
232 (expand_decl): Don't access block_stack when outside a function.
233 (expand_decl_cleanup): Likewise.
234 (expand_dcc_cleanup): Likewise.
235 (expand_dhc_cleanup): Likewise.
236 (expand_anon_union_decl): Likewise.
237 (set_file_and_line_for_stmt): New function.
238 (in_control_zone_p): New function.
239
240 * function.h (struct function): Add new elt stmt.
241 Delete elts block_stack, stack_block_stack, cond_stack, loop_stack,
242 case_stack, nesting_stack, nesting_depth, block_start_count,
243 last_expr_type, last_expr_value, expr_stmts_for_value, emit_filename,
244 emit_lineno, goto_fixup_chain.
245 (save_eh_status, restore_eh_status, save_stmt_status,
246 restore_stmt_status): Delete declarations.
247 * function.c (push_function_context_to): Don't call save_stmt_status.
248 (pop_function_context_to): Don't call restore_stmt_status.
249 * tree.h (in_control_zone_p): Declare.
250 * rtl.h (set_file_and_line_for_stmt): Declare.
251
252 * emit-rtl.c (emit_line_note): Don't set emit_filename/emit_lineno;
253 call set_file_and_line_for_stmt.
254
255 Thu Jul 31 12:34:45 1999 Joe Buck <jbuck@synopsys.com>
256
257 * gcc.texi: Use terms "GNU Compiler Collection" and "GCC".
258 Also update copyright.
259
260 Sat Jul 31 11:10:07 1999 Bernd Schmidt <bernds@cygnus.co.uk>
261
262 * c-pragma.c: Don't include "except.h".
263 * emit-rtl.c: Likewise.
264 * stor-layout.c: Likewise.
265 * tree.c: Likewise.
266 * varasm.c: Likewise.
267
268 * flow.c: Include "function.h".
269 * tree.h (init_dummy_function_start): Declare new function.
270
271 * except.h (struct eh_status): New structure.
272 (struct label_node, struct eh_entry): Declare even if tree.h hasn't
273 been included.
274 (eh_return_stub_label, ehstack, catchstack, ehqueue,
275 catch_clauses, false_label_stack, caught_return_label_stack,
276 protect_list, current_function_ehc): Add accessor macros for the
277 corresponding fields in current_function->eh; delete declarations
278 for all items that used to be declared here.
279 * except.c (eh_return_stub_label, ehstack, catchstack, ehqueue,
280 catch_clauses, false_label_stack, caught_return_label_stack,
281 protect_list, current_function_ehc): Delete variables.
282 (init_eh_for_function): Allocate current_function->eh.
283 (save_eh_status, restore_eh_status): Delete functions.
284
285 * function.h (struct function): Add fields next_global and eh.
286 Delete all exception handling related fields.
287 * function.c (current_function): New variable.
288 (all_functions): New variable.
289 (push_function_context_to): Don't allocate a struct function,
290 use current_function instead. Call init_dummy_function_start when
291 outside a function. Clear current_function before returning.
292 (pop_function_context_from): Restore current_function.
293 Don't free the restored struct function.
294 (prepare_function_start): New function.
295 (init_dummy_function_start): New function.
296 (init_function_start): Break out some code into prepare_function_start
297 and call it here.
298
299 * stmt.c (save_stmt_status): Don't call save_eh_status.
300 (restore_stmt_status): Don't call restore_eh_status.
301
302 * Makefile.in: Update dependencies.
303
304 Sat Jul 31 04:10:01 1999 Jeffrey A Law (law@cygnus.com)
305
306 * pa.c (compute_frame_size): Use STARTINg_FRAME_OFFSET instead
307 of depending on a magic constant value. Update comments.
308 (hppa_expand_prologue): Similarly.
309
310 * pa.md (reload_indi, reload_outdi): Allow any register for the
311 original reload register.
312
313 Fri Jul 30 19:41:35 1999 Jim Wilson <wilson@cygnus.com>
314
315 * cccp.c (print_help): Change marcos to macros.
316
317 1999-07-30 Richard Henderson <rth@cygnus.com>
318
319 * c-typeck.c (initializer_constant_valid_p): Move ...
320 * c-common.c (initializer_constant_valid_p): ... here. Use
321 FOO_TYPE_P instead of tests against TREE_CODE. Allow subtraction
322 of label addresses.
323 * c-common.h (initializer_constant_valid_p): Declare.
324 * c-tree.h (initializer_constant_valid_p): Remove.
325
326 Fri Jul 30 16:33:42 1999 Mathias Froehlich <frohlich@na.uni-tuebingen.de>
327
328 * config/i386/sol2-c1.asm: Align the stack.
329 * config/i386/sol2-gc1.asm: Likewise.
330
331 1999-07-30 Vladimir Makarov <vmakarov@loony.cygnus.com>
332
333 * config/sparc/sparc.h (ASM_CPU32_DEFAULT_SPEC): Change -Av8 onto
334 -Asparclite for sparc86x.
335 (CPP_CPU32_DEFAULT_SPEC, CPP_CPU_SPEC): Remove -D__sparc_v8__ for
336 sparc86x.
337 (ASM_CPU_SPEC): Use -Asparclite for sparc86x.
338
339 Fri Jul 30 14:53:56 1999 Jakub Jelinek <jj@ultra.linux.cz>
340
341 * config/sparc/linux64.h (CC1_SPEC): Preserve CPU specified by
342 the user if using the non-default arch size in BI_ARCH configuration.
343 * config/sparc/sol2-sld-64.h (CC1_SPEC): Ditto.
344
345 * config/sparc/sparc.md (cmp_mul_set, cmp_udiv_cc_set):
346 Fix patterns so that they actually match.
347 (cmp_sdiv_cc_set): Ditto, also don't require g0 to be zero.
348 (mulsidi3_sp64, const_mulsidi3_sp64): New patterns.
349 (const_mulsidi3_sp32): Renamed from const_mulsidi3, only on
350 TARGET_HARD_MUL32.
351 (mulsidi3): Reflect this in the expand.
352 (smulsi3_highpart): Only on TARGET_ARCH32.
353 (umulsidi3_sp64, const_umulsidi3_sp64): New patterns.
354 (const_umulsidi3_sp32): Renamed from const_umulsidi3.
355 (umulsidi3): Reflect this in the expand.
356 (umulsi3_highpart): Only on TARGET_ARCH32.
357 (divsi3_sp32): Renamed from divsi3, only on TARGET_ARCH32,
358 don't require g0 to be zero.
359 (udivsi3_sp32): Renamed from udivsi3, only on TARGET_ARCH32.
360 ({,u}divsi3): New expands.
361 ({,u}divsi3_sp64): New patterns.
362 (after lshrdi3_v8plus): Four new patterns to help combiner
363 optimizing nested mixed mode shifts.
364
365 * config/sparc/sparc.c (sparc_override_options): Use deprecated
366 v8 instructions if optimizing for UltraSPARC I, II, IIi, as it
367 speed things up. Don't use them by default on plain v9 in 64bit
368 mode, according to what SPAMv9 sais.
369
370 * config/sparc/sparc.h: Fix comments, e.g. Linux already preserves
371 top 32 bits of %[og][0-7] in signal handlers.
372 Also, TARGET_HARD_MUL32 now is only true for TARGET_ARCH32.
373
374 Fri Jul 30 03:00:41 1999 Jeffrey A Law (law@cygnus.com)
375
376 * pa.md (zvdep_imm32): Renamed from zvdep_imm.
377 (ashlsi3): Corresponding changes.
378
379 * pa.c (compute_zdepwi_operands): Renamed from compute_zdepi_operands.
380
381 Thu Jul 29 18:37:13 1999 Jeffrey A Law (law@cygnus.com)
382
383 * pa.h (FIRST_PARM_CALLER_OFFSET): Delete.
384
385 Thu Jul 29 19:01:58 1999 Bernd Schmidt <bernds@cygnus.co.uk>
386
387 * arm.h (Hint): Delete macro.
388 Substitute HOST_WIDE_INT for Hint in some prototypes.
389 * arm.c: Substitute HOST_WIDE_INT for Hint in one prototype.
390
391 Thu Jul 29 09:21:42 1999 Nick Clifton <nickc@cygnus.com>
392
393 * builtins.c (expand_builtin_setjmp): Use force_operand to
394 make sure that the buffer address is in a suitable form to be
395 passed to force_reg.
396
397 Wed Jul 28 12:50:48 1999 Geoff Keating <geoffk@cygnus.com>
398
399 * config/mips/mips.c: system.h handles MIN and MAX, don't undefine
400 them here.
401
402 Wed Jul 28 13:18:35 1999 Jeffrey A Law (law@cygnus.com)
403
404 * pa.md (indirect_jump): Remove mode from match_operand. Verify
405 proper mode in the condition string.
406 (icacheflush, dcacheflush): Remove modes from match_operands.
407
408 * pa.c (emit_move_sequence): Always convert scratch_reg to the
409 proper mode before using it.
410
411 * pa.md (adddi3, subdi3): Turn into a define_expand/define_insn
412 pair.
413
414 * pa.c (store_reg): Do not call add_high_const generator directly.
415 (load_reg, set_reg_plus_d): Likewise.
416 * pa.md (add_high_const): No longer a named pattern.
417
418 * pa.c (legitimize_address): Consistently use Pmode rather than
419 SImode. Do not call gen_pic2_highpart directly anymore.
420 * pa.md (pic2_highpart): No longer a named pattern.
421 (pic2_lo_sum): Similarly. Reformat to make more readable.
422
423 * pa.md (call, call_value): Use "word_mode" instead of "SImode" as
424 needed.
425
426 * README: Update.
427
428 Wed Jul 28 11:28:04 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
429
430 * builtins.c (expand_builtin): Typo in call to expand_builtin_ffs.
431
432 Wed Jul 28 11:23:48 1999 Richard Henderson <rth@cygnus.com>
433
434 * pa.c (hppa_builtin_saveregs): Use get_varargs_alias_set
435 and tag the spill mems.
436 (hppa_va_start): New.
437 (hppa_va_arg): New.
438 * pa.h (EXPAND_BUILTIN_VA_START): New.
439 (EXPAND_BUILTIN_VA_ARG): New.
440
441 Wed Jul 28 11:22:21 1999 Richard Henderson <rth@cygnus.com>
442
443 * mn10300.c (mn10300_builtin_saveregs): Use get_varargs_alias_set
444 and tag the spill mems.
445 (mn10300_va_start): New.
446 (mn10300_va_arg): New.
447 * mn10300.h (EXPAND_BUILTIN_VA_START): New.
448 (EXPAND_BUILTIN_VA_ARG): New.
449
450 Wed Jul 28 11:20:19 1999 Richard Henderson <rth@cygnus.com>
451
452 * mn10200.c (mn10200_va_arg): New.
453 * mn10200.h (EXPAND_BUILTIN_VA_ARG): New.
454
455 Wed Jul 28 11:19:06 1999 Richard Henderson <rth@cygnus.com>
456
457 * builtins.c (std_expand_builtin_va_arg): Use int_size_in_bytes
458 rather than play with TREE_INT_CST_LOW.
459
460 1999-07-27 Philip Blundell <pb@nexus.co.uk>
461
462 * config/arm/telf.h: Include dbxelf.h.
463 (CPP_PREDEFINES): Only define if not already defined.
464 (ASM_IDENTIFY_GCC): Likewise.
465 (SUBTARGET_EXTRA_SECTIONS): Likewise.
466 (SUBTARGET_EXTRA_SECTION_FUNCTIONS): Likewise.
467 * config/arm/thumb.h (LINK_SPEC): Only define if not already
468 defined.
469 (DBX_DEBUGGING_INFO): Don't define.
470 * config/arm/linux-telf.h: New file.
471 * config/arm/linux-tgas.h: New file.
472 * config/arm/t-thumb-linux: New file.
473 * config/arm/uclinux-elf.h: New file.
474 * config/arm/uclinux-telf.h: New file.
475 * configure.in (arm-*-uclinux, thumb-*-linux-gnu,
476 thumb-*-uclinux): New targets.
477 * configure: Regenerate.
478
479 Tue Jul 27 23:20:21 1999 Jeffrey A Law (law@cygnus.com)
480
481 * pa.md (post_store, pre_load): New expanders.
482 (post_stwm, pre_ldwm): Renamed to post_stw and pre_ldw respectively.
483 (post_ldwm, pre_stwm): Make these unnamed patterns since we never
484 need to directly generate RTL for them.
485 * pa.c (hppa_expand_prologue, hppa_expand_epilogue): Corresponding
486 changes.
487
488 Tue Jul 27 16:05:52 1999 David Edelsohn <edelsohn@gnu.org>
489
490 * aix43.h (ASM_CPU_SPEC, CPP_CPU_SPEC): Add rs64a and PPC630.
491 * rs6000.c (processor_target_table): Add powerpc64, rs64a, and PPC630.
492 (rs6000_cpu): Choose between 32-bit and 64-bit default processors.
493 (secndary_reload_class): Make TARGET_ELF conditional compile.
494 (print_operand_address): Similar.
495 (output_toc): Print all values as hex.
496 (get_issue_rate): Rearrange and add RS64A and PPC630.
497 * rs6000.h (processor_type): Add RS64A and PPC630.
498 (PROCESSOR_POWERPC64): New.
499 (PROMOTE_MODE): Use word_mode.
500 (RTX_COSTS): Add RS64A and PPC630.
501 * rs6000.md (scheduling information): Add lmul and ldiv
502 representing 64-bit integer multiply and divide. Add rs64a and
503 PPC630 information.
504 (ashldi3): Add support for "rldic" instruction.
505 * sysv4.h (PROCESSOR_DEFAULT): Change to PROCESSOR_750.
506
507 Tue Jul 27 15:31:53 1999 Vladimir Makarov <vmakarov@toad.to.cygnus.com>
508
509 * config/sparc/sparc.c (sparc_override_options): Enable SPARCLITE
510 instead of V8 for sparclite86x in cpu_table.
511
512 Tue Jul 27 17:49:42 1999 Bernd Schmidt <bernds@cygnus.co.uk>
513
514 * config/arm/coff.h (ASM_FILE_START): If generating SDB output, call
515 output_file_directive.
516
517 Tue Jul 27 03:15:33 1999 Jason Merrill <jason@yorick.cygnus.com>
518
519 * expr.c (expand_expr, case PLUS_EXPR): Get the mode from the
520 tree for op1, not the rtl.
521
522 Tue Jul 27 00:18:34 1999 Richard Henderson <rth@cygnus.com>
523
524 * m88k.c (m88k_builtin_saveregs): Break out the constructor code
525 to m88k_va_start, leaving only the register spill.
526 (m88k_build_va_list): New.
527 (m88k_va_start): New.
528 (m88k_va_arg): New.
529 * m88k.h (BUILD_VA_LIST_TYPE): New.
530 (EXPAND_BUILTIN_VA_START): New.
531 (EXPAND_BUILTIN_VA_ARG): New.
532
533 Mon Jul 26 19:07:11 1999 Geoff Keating <geoffk@cygnus.com>
534
535 * config/rs6000/rs6000.c (rs6000_expand_builtin_saveregs):
536 Rename from expand_builtin_saveregs.
537 * config/rs6000/rs6000.h (EXPAND_BUILTIN_SAVEREGS): Change caller.
538
539 Mon Jul 26 22:52:47 1999 Richard Henderson <rth@cygnus.com>
540
541 * i960.c (i960_setup_incoming_varargs): Use get_varargs_alias_set
542 for the register spill block.
543 (i960_build_va_list): New.
544 (i960_va_start): New.
545 (i960_va_arg): New.
546 * i960.h (BUILD_VA_LIST_TYPE): New.
547 (EXPAND_BUILTIN_VA_START): New.
548 (EXPAND_BUILTIN_VA_ARG): New.
549 * i960.md (store_multiple): Use change_address on individul mems.
550
551 Mon Jul 26 22:43:12 1999 Richard Henderson <rth@cygnus.com>
552
553 * builtins.c (stabilize_va_list): Don't INDIRECT_REF through
554 an ARRAY_TYPE.
555 (std_expand_builtin_va_start): Back out one word if !stdarg_p.
556 (expand_builtin_va_end): Evaluate arg for side effects.
557 * c-common.c (c_common_nodes_and_builtins): Construct a
558 va_list_arg_type_node to handle array decomposition to pointer.
559
560 Mon Jul 26 18:51:34 1999 Richard Henderson <rth@cygnus.com>
561
562 * except.c (start_dynamic_cleanup): Use force_operand on the
563 buffer's address.
564
565 Mon Jul 26 16:43:26 1999 Richard Henderson <rth@cygnus.com>
566
567 * c4x.h (EXPAND_BUILTIN_VA_ARG): New.
568 * c4x.c (c4x_va_arg): New.
569
570 Mon Jul 26 12:30:09 1999 Jason Merrill <jason@yorick.cygnus.com>
571
572 * cpplib.c (cpp_get_token): Don't return a CPP_POP if the buffer
573 has manual_pop set.
574
575 1999-07-26 Nathan Sidwell <nathan@acm.org>
576
577 * eh-common.h (__eh_matcher): Prototype correctly.
578
579 Mon Jul 26 17:24:51 1999 Philip Blundell <pb@nexus.co.uk>
580
581 * config/arm/thumb.h (THUMB_FLAG_SINGLE_PIC_BASE): Define.
582 (TARGET_SINGLE_PIC_BASE): Likewise.
583 (GOT_PCREL, NEED_GOT_RELOC, NEED_PLT_RELOC): Provide default
584 definitions.
585 (TARGET_CALLEE_INTERWORKING): Fix typo in comment.
586 (TARGET_SWITCHES): Add -m{no-}single-pic-base.
587 (TARGET_OPTIONS): Add -mpic-register=N.
588 (OUTPUT_INT_ADDR_CONST): New macro.
589 (INDEX_REGISTER_RTX_P, PIC_OFFSET_TABLE_REGNUM, FINALIZE_PIC,
590 LEGITIMATE_PIC_OPERAND_P): Likewise.
591 (LEGITIMIZE_ADDRESS, GOT_IF_LEGITIMATE_ADDRESS): Support PIC.
592 (ASM_OUTPUT_INT): Use OUTPUT_INT_ADDR_CONST rather than calling
593 output_addr_const directly.
594 (PRINT_OPERAND_PUNCT_VALID_P): Accept `|' for compatibility with
595 ARM port.
596 (thumb_pic_register, thumb_pic_register_string): Declare.
597
598 * config/arm/thumb.c (symbol_mentioned_p): New function: Imported
599 from arm.c.
600 (label_mentioned_p): New function: Imported from arm.c.
601 (legitimize_pic_address): New function: Imported from arm.c.
602 (is_pic):New function: Imported from arm.c.
603 (thumb_finalize_pic):New function: Imported from arm.c.
604 (add_constant): Cope with PIC constants.
605 (fixit): Cope with PIC constants.
606 (output_return): Do not treat the PIC register as live if
607 TARGET_SINGLE_PIC_BASE is true.
608 (thumb_function_prologue): Do not treat the PIC register as live if
609 TARGET_SINGLE_PIC_BASE is true.
610 (thumb_expand_prologue): Do not treat the PIC register as live if
611 TARGET_SINGLE_PIC_BASE is true.
612 (thumb_unexpand_epilogue): Do not treat the PIC register as live if
613 TARGET_SINGLE_PIC_BASE is true.
614 (thumb_print_operand): Accept '|'.
615 (thumb_override_options): Process PIC options.
616
617 * config/arm/thumb.md (movsi): Support PIC.
618 (call_insn): Change "i" constraint to "X".
619 (call_value_insn): Likewise.
620 (consttable_4, consttable_8, consttable_end): Set and clear
621 "making_const_table" as appropriate.
622 (pic_load_addr, pic_add_dot_plus_four): New insns.
623
624 * invoke.texi (Thumb Options): Fix spelling. Document new
625 options -msingle-pic-base and -mpic-register=.
626
627 1999-07-26 Andrew Haley <aph@cygnus.com>
628
629 * config/m32r/initfini.c (__init): Use a full word immediate for
630 __fini: this allows it to be placed in any memory region.
631
632 * config/m32r/t-m32r: Compile crtinit.o and crtfini.o for
633 -mmodel=medium. This is OK for all memory models.
634
635 Mon Jul 26 11:58:46 1999 Nick Clifton <nickc@cygnus.com>
636
637 * config/arm/arm.c: Replace %R%s in asm_fprintf strings with %r.
638 * config/arm/arm.h: Replace %R%s in asm_fprintf strings with %r.
639
640 Mon Jul 26 10:23:36 1999 Nick Clifton <nickc@cygnus.com>
641
642 * final.c (asm_fprintf): Accept ASM_FPRINTF_EXTENSIONS, if
643 defined.
644
645 * tm.texi: Document ASM_FPRINTF_EXTENSIONS.
646
647 Sun Jul 25 23:51:59 1999 Richard Henderson <rth@cygnus.com>
648
649 * i860.h (EXPAND_BUILTIN_SAVEREGS): New.
650 (BUILD_VA_LIST_TYPE): New.
651 (EXPAND_BUILTIN_VA_START): New.
652 (EXPAND_BUILTIN_VA_ARG): New.
653 * i860.c (output_delayed_branch): Disable.
654 (output_delay_insn): Likewise.
655 (i860_saveregs): New.
656 (i860_build_va_list): New.
657 (i860_va_start): New.
658 (i860_va_arg): New.
659 * i860.md: Disable all peepholes using output_delayed_branch.
660 * i860/sysv4.h (I860_SVR4_VA_LIST): New.
661
662 Sun Jul 25 23:44:13 1999 Richard Henderson <rth@cygnus.com>
663
664 * clipper.h (EXPAND_BUILTIN_SAVEREGS): Remove argument.
665 (BUILD_VA_LIST_TYPE): New.
666 (EXPAND_BUILTIN_VA_START): New.
667 (EXPAND_BUILTIN_VA_ARG): New.
668 * clipper.c (clipper_builtin_saveregs): Only dump registers.
669 Return the address of the save area.
670 (clipper_build_va_list): New.
671 (clipper_va_start): New.
672 (clipper_va_arg): New.
673
674 Sun Jul 25 22:56:47 1999 Richard Henderson <rth@cygnus.com>
675
676 * arc.h (EXPAND_BUILTIN_VA_START): New.
677 (EXPAND_BUILTIN_VA_ARG): New.
678 * arc.c (arc_setup_incoming_varargs): Set alias set of
679 varargs save area.
680 (arc_va_start): New.
681 (arc_va_arg): New.
682
683 Sun Jul 25 22:45:55 1999 Richard Henderson <rth@cygnus.com>
684
685 * alpha.h (EXPAND_BUILTIN_SAVEREGS): Delete.
686 (BUILD_VA_LIST_TYPE): New.
687 (EXPAND_BUILTIN_VA_START): New.
688 (EXPAND_BUILTIN_VA_ARG): New.
689 * alpha.c (alpha_builtin_saveregs): Delete.
690 (alpha_build_va_list): New.
691 (alpha_va_start): New.
692 (alpha_va_arg): New.
693
694 Sun Jul 25 21:40:33 1999 Jeffrey A Law (law@cygnus.com)
695
696 * config/svr4.h (CTORS_SECTION_ASM_OP): Do not emit directives in
697 column zero.
698 (DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP): Likewise.
699 (FINI_SECTION_ASM_OP, ASM_OUTPUT_SECTION_NAME): Likewise.
700
701 * gcc.texi: More changes related to list conversion.
702 * invoke.texi: Likewise.
703
704 Sun Jul 25 18:15:39 1999 Richard Henderson <rth@cygnus.com>
705
706 * builtins.c (expand_builtin_saveregs): Remove static, remove exp
707 and ignore arguments, bail if no EXPAND_BUILTIN_SAVEREGS.
708 (expand_builtin_next_arg): Accept ARGLIST not EXP.
709 (stabilize_va_list): New function.
710 (std_expand_builtin_va_start): New function.
711 (expand_builtin_va_start): New function.
712 (get_varargs_alias_set): New function.
713 (std_expand_builtin_va_arg): New function.
714 (expand_builtin_va_arg): New function.
715 (expand_builtin_va_end): New function.
716 (expand_builtin_va_copy): New function.
717 (expand_builtin): Call them.
718 * c-common.c (c_common_nodes_and_builtins): Build __builtin_va_list,
719 __builtin_{varargs_start,stdarg_start,end,copy}.
720 (build_va_arg): New function.
721 * c-common.h (CTI_PTR_TYPE, ptr_type_node): Delete.
722 (build_va_arg): Declare.
723 * c-decl.c (ptr_type_node, va_list_type_node): New.
724 * c-parse.gperf (__builtin_va_arg): New.
725 * c-parse.in (VA_ARG): New token.
726 (unary_expr): Recognize it.
727 * expr.c (expand_expr): Expand VA_ARG_EXPR.
728 * expr.h (std_expand_builtin_va_start): Declare.
729 (std_expand_builtin_va_arg): Declare.
730 (expand_builtin_va_arg): Declare.
731 (get_varargs_alias_set): Declare.
732 * tree.def (VA_ARG_EXPR): New.
733 * tree.h (BUILT_IN_VARARGS_START): New.
734 (BUILT_IN_STDARG_START, BUILT_IN_VA_END): New.
735 (ptr_type_node, va_list_type_node): Declare.
736 * tm.texi (EXPAND_BUILTIN_SAVEREGS): Kill unused ARGLIST argument.
737 * m32r.h (EXPAND_BUILTIN_SAVEREGS): Likewise.
738 * m88k.h, m88k.c: Likewise.
739 * mn10300.h, mn10300.c: Likewise.
740 * pa.h, pa.c: Likewise.
741 * rs6000.h, rs6000.c: Likewise.
742 * sh.h, sh.c: Likewise.
743 * sparc.h, sparc.c: Likewise.
744
745 * emit-rtl.c (operand_subword): Copy alias set.
746 (change_address): Likewise.
747
748 Sun Jul 25 15:04:37 1999 Jeffrey A Law (law@cygnus.com)
749
750 * pa.c (compute_frame_size): Scan all the used callee saved registers,
751 not just the first one.
752
753 Fri Jul 23 14:09:58 1999 Philip Blundell <pb@nexus.co.uk>
754
755 * config/arm/arm.h (TARGET_SWITCHES): Add
756 -m{no-}single-pic-base. Correct help string for -mshort-load-words.
757 (TARGET_OPTIONS): Add -mpic-register=.
758 (ARM_FLAG_SINGLE_PIC_BASE, TARGET_SINGLE_PIC_BASE): Define.
759 (arm_pic_register_string): Declare.
760 (NEED_PLT_GOT): Delete, replace with ...
761 (NEED_GOT_RELOC, NEED_PLT_RELOC): ... these. New macros.
762 (OUTPUT_INT_ADDR_CONST): Replace NEED_PLT_GOT with NEED_GOT_RELOC.
763 (ASM_OUTPUT_MI_THUNK): Replace NEED_PLT_GOT with NEED_PLT_RELOC.
764 * config/arm/arm.c (arm_override_options): Add new option
765 -mpic-register=N.
766 (arm_pic_register_string): New variable.
767 (arm_finalize_pic): Respect TARGET_SINGLE_PIC_BASE.
768 (output_func_prologue): If TARGET_SINGLE_PIC_BASE, treat the PIC
769 register as never live. Use NEED_PLT_RELOC not NEED_PLT_GOT.
770 (output_return_instruction): Likewise.
771 * config/arm/elf.h (NEED_PLT_GOT): Delete, replace with ...
772 (NEED_GOT_RELOC, NEED_PLT_RELOC): ... these. Define to flag_pic.
773 * config/arm/arm.md: Use NEED_PLT_RELOC in place of NEED_PLT_GOT.
774
775 * invoke.texi (ARM Options): Fix spelling. Remove duplicate
776 mention of -msched-prolog. Document new options -msingle-pic-base
777 and -mpic-register=.
778
779 Thu Jul 22 18:23:56 1999 Richard Henderson <rth@cygnus.com>
780
781 * haifa-sched.c (reemit_notes): Tidy.
782 * sched.c (reemit_notes): Duplicate 1998-08-31 patch to
783 haifa's routine.
784
785 Thu Jul 22 18:21:04 1999 Richard Henderson <rth@cygnus.com>
786
787 * explow.c (trunc_int_for_mode): New function.
788 (plus_constant_wide): Use it.
789 * combine.c (simplify_and_const_int): Likewise.
790 (merge_outer_ops): Likewise.
791 (simplify_shift_const): Likewise.
792 * cse.c (simplify_unary_operation): Likewise.
793 (simplify_binary_operation): Likewise.
794 * emit-rtl.c (operand_subword): Likewise.
795 * rtl.h: Declare it.
796
797 Thu Jul 22 14:34:59 1999 Bernd Schmidt <bernds@cygnus.co.uk>
798
799 * config/arm/arm.c (arm_print_operand): Fix typo in 'M' case
800 (use NUM_REGS instead of NUM_INTS).
801
802 Thu Jul 22 11:25:20 1999 Bernd Schmidt <bernds@cygnus.co.uk>
803
804 * builtins.c: New file.
805 * expr.c (saveregs_value, apply_args_value): Delete definition,
806 moved into builtins.c.
807 (string_constant): No longer static.
808 (get_pointer_alignment, c_strlen, get_memory_rtx, expand_builtin,
809 apply_args_size, apply_result_size, result_vector,
810 expand_builtin_apply_args, expand_builtin_apply,
811 expand_builtin_return): Delete functions, moved into builtins.c.
812 (INCOMING_REGNO, OUTGOING_REGNO): Delete unused macros.
813 * expr.h (saveregs_value, apply_args_value): Declare variables.
814 (expand_builtin, string_constant): Declare functions.
815 * Makefile.in: Update to build builtin.o.
816
817 Wed Jul 21 00:46:58 1999 Mark P. Mitchell <mark@codesourcery.com>
818
819 * defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): New macro.
820 * tm.texi (DWARF2_GENERATE_TEXT_SECTION_LABEL): Define it.
821 * dwarf2out.c (dwarf2out_init): Don't output a label to mark the
822 start of the text section if DWARF2_GENERATE_TEXT_SECTION_LABEL is
823 false.
824 * config/mips/iris6.h (DWARF2_GENERATE_TEXT_SECTION_LABEL):
825 Define to zero.
826
827 1999-07-21 Michael Meissner <meissner@cygnus.com>
828
829 * print-rtl.c (print_rtx): Print the names of the virtual
830 registers.
831
832 Wed Jul 21 16:00:32 1999 Nick Clifton <nickc@cygnus.com>
833
834 * config/arm/arm.h (INITIAL_ELIMINATION_OFFSET): Fix typo
835 introduced in previous delta.
836
837 Wed Jul 21 14:30:51 1999 Bernd Schmidt <bernds@cygnus.co.uk>
838
839 * c-lang.c (finish_file): Rename void_list_node to void_list_node_1
840 to avoid name clash.
841
842 Wed Jul 21 08:39:22 1999 Gavin Romig-Koch <gavin@cygnus.com>
843
844 * c-lex.c (yylex) : Correct the test for overflow when lexing
845 integer literals.
846
847 Tue Jul 20 18:02:42 1999 Richard Henderson <rth@cygnus.com>
848
849 * haifa-sched.c (insn_cost): FREE implies cost 0 and vice versa.
850 (adjust_priority): Always call ADJUST_PRIORITY.
851 (schedule_insn): Only put insns into the ready at cost 0.
852 (schedule_block): Remove redundant initial sort. Give clock_var
853 and can_issue_more to MD_SCHED_REORDER. Requeue if hazard cost
854 is not 0.
855 * tm.texi (MD_SCHED_REORDER): Update docs.
856
857 * sparc.h (MD_SCHED_REORDER): Update. Set CAN_ISSUE_MORE.
858 * sparc.c (ultra_reorder_called_this_block): Delete.
859 (ultrasparc_sched_init): Don't set it.
860 (ultrasparc_sched_reorder): Don't check it.
861
862 Tue Jul 20 17:07:54 1999 Richard Henderson <rth@cygnus.com>
863
864 * rs6000.h (struct rs6000_args): Add sysv_gregno.
865 * rs6000.c (init_cumulative_args): Init sysv_gregno.
866 (function_arg_boundary): Align DFmode.
867 (function_arg_advance): Restructure for ABI_V4; use sysv_gregno
868 to get fp reg and stack overflow correct.
869 (function_arg): Likewise.
870 (function_arg_pass_by_reference): True for TFmode for ABI_V4.
871 (setup_incoming_varargs): Restructure for ABI_V4; use
872 function_arg_advance to skip final named argument.
873 (expand_builtin_saveregs): Properly unskip the last integer arg
874 when doing varargs. Adjust overflow location calculation.
875
876 * ginclude/va-ppc.h (struct __va_list_tag): Make gpr and fpr
877 explicitly unsigned.
878 (__VA_FP_REGSAVE): Use new OFS argument instead of AP->fpr directly.
879 (__VA_GP_REGSAVE): Similarly.
880 (__va_longlong_p): Delete.
881 (__va_arg_type_violation): New declaration.
882 (va_arg): Restructure. Flag promotion errors. Align double.
883 TFmode passed by reference.
884
885 * rs6000.md (movdi_32+1): Use GEN_INT after arithmetic
886 in the HOST_BITS_PER_WIDE_INT > 32 case.
887
888 Tue Jul 20 12:37:30 1999 Hans-Peter Nilsson <hp@bitrange.com>
889
890 * dwarf2out.c (output_abbrev_section): Terminate with a zero.
891
892 Tue Jul 20 12:12:27 1999 Jason Merrill <jason@yorick.cygnus.com>
893
894 * gcc.c (default_compilers, cpp-output): Pass -fpreprocessed.
895 * toplev.c (documented_lang_options): Add -fpreprocessed.
896 * cpplib.h (struct cpp_buffer): Add preprocessed.
897 * cppinit.c (cpp_handle_option): Handle -fpreprocessed.
898 (cpp_start_read): Don't expand macros or emit an initial #line
899 directive if -fpreprocessed.
900
901 Tue Jul 20 12:12:09 1999 Michael Tiemann <tiemann@holodeck.cygnus.com>
902
903 * cpplib.h (struct cpp_buffer): Added manual_pop for
904 better C++ tokenization.
905 * cpplib.c (cpp_get_token): Return CPP_EOF if manual_pop.
906 Also, support C++ tokenization for ->*, .*, <?, and >? operators.
907 * c-common.c (cpp_token): Make non-static.
908
909 Tue Jul 20 11:24:19 1999 Bernd Schmidt <bernds@cygnus.co.uk>
910
911 * c-common.h: New file.
912 * c-common.c (permanent_obstack): Delete unused declaration.
913 (c_global_trees): New array.
914 (c_common_nodes_and_builtins): New function; split off common code
915 from init_decl_processing in both c-decl.c and cp/decl.c.
916 * c-tree.h: Delete lots of declarations of tree nodes; replaced by
917 c_global_trees and accessor macros defined in c-common.h.
918 Include c-common.h.
919 * c-decl.c: Delete definitions for tree nodes that were replaced by
920 c_global_trees.
921 (init_decl_processing): Build void_list_node.
922 Call c_common_nodes_and_builtins; delete code to generate the common
923 builtins here.
924 * objc/objc-act.c (build_module_descriptor): Rename variable
925 void_list_node to avoid clash with c-common.h.
926
927 * Makefile.in: Update dependencies.
928 * objc/Make-lang.in: Likewise.
929
930 Mon Jul 19 14:22:18 1999 Mark P. Mitchell <mark@codesourcery.com>
931
932 * config/mips/iris6gld.h (MAKE_DECL_ONE_ONLY): Define.
933 (UNIQUE_SECTION_P): Likewise.
934 (UNIQUE_SECTION): Likewise.
935
936 1999-07-19 Linas Vepstas <linas@linas.org>
937
938 * config/i370/README: New file.
939 * config/i370/linux.h: New file.
940 * config/i370/mvs.h: New file.
941 * config/i370/oe.h: New file.
942 * config/i370/t-linux: New file.
943 * config/i370/t-mvs: New file.
944 * config/i370/t-oe: New file.
945 * config/i370/x-oe: New file.
946 * config/i370/xm-linux.h: New file.
947 * config/i370/xm-mvs.h: New file.
948 * config/i370/xm-oe.h: New file.
949
950 * i370.c (label_node_t): Add first_ref_page, label_addr,
951 label_first_ref, label_last_ref members.
952 (mvs_need_base_reload): Renamed from mvs_label_emitted.
953 (MAX_MVS_LABEL_SIZE): Define.
954 (MAX_LONG_LABEL_SIZE): Define.
955 (alias_node_t, alias_anchor, alias_number): New.
956 (mvs_function_table): Reorder for EBCDIC.
957 (ascebc, ebcasc): Unconditionally define.
958 (i370_branch_dest, i370_branch_length): New functions.
959 (i370_short_branch, i370_label_scan): New functions.
960 (mvs_get_label): Renamed from mvs_add_label. Search for
961 an existing label before creating a new one.
962 (mvs_add_label): New function.
963 (mvs_get_label_page): New function.
964 (mvs_free_label_list): Renamed from mvs_free_label. Iterate
965 over the entire list.
966 (mvs_check_page) [TARGET_HLASM]: Use BASR not BALR.
967 (mvs_check_page) [TARGET_ELF_ABI]: New function.
968 (mvs_add_alias, mvs_need_alias): New functions.
969 (mvs_get_alias, mvs_check_alias): New functions.
970 (handle_pragma): New function.
971 (mvs_function_check): New function.
972 (unsigned_jump_follows_p): Search harder.
973 (i370_function_prolog) [TARGET_HLASM]: Handle LE370. Scan labels.
974 (i370_function_prolog) [TARGET_ELF_ABI]: New function.
975 * i370.h (TARGET_VERSION): Delete.
976 (CPP_SPEC, CPP_PREDEFINES): Delete.
977 (mvs_label_emitted): Delete.
978 (TARGET_EBCDIC): Delete.
979 (MAP_CHARACTER): Define only if TARGET_EBCDIC.
980 (HANDLE_PRAGMA): Define.
981 (HARD_REGNO_NREGS): Handle complex modes.
982 (HARD_REGNO_MODE_OK): Likewise.
983 (CLASS_MAX_NREGS): Likewise.
984 (RET_REG): Likewise.
985 (EXTRA_CONSTRAINT): Define.
986 (RETURN_IN_MEMORY): True for DImode.
987 (TRAMPOLINE_TEMPLATE): Use gen_rtx instead of GEN_INT.
988 (FUNCTION_PROFILER): Delete.
989 (COUNT_REGS): Fail if REG_P but not REG_OK_FOR_BASE_P.
990 (NOTICE_UPDATE_CC): Correct handling of MULT, DIV, logicals and shifts.
991 (TARGET_ESC, TARGET_BELL): Conditionally define for TARGET_EBCDIC.
992 (TARGET_BS, TARGET_TAB, TARGET_NEWLINE): Likewise.
993 (TARGET_VT, TARGET_FF, TARGET_CR): Likewise.
994 (ASM_FILE_START): Add "RMODE ANY".
995 (ASM_OUTPUT_EXTERNAL): Check for aliases.
996 (ASM_GLOBALIZE_LABEL): Likewise.
997 (ASM_OUTPUT_LABELREF): Likewise.
998 (ASM_OUTPUT_COMMON): Likewise.
999 (PRINT_OPERAND): Handle 'K', 'W', default.
1000 (PRINT_OPERAND_ADDRESS): New.
1001 (Lots of defines): Add support for TARGET_ELF_ABI.
1002 * i370.md (attr length): New. Define for all patterns.
1003 (*): Lots of tweeks to assembly output and constraints.
1004
1005 Mon Jul 19 15:09:29 1999 David Edelsohn <edelsohn@gnu.org>
1006
1007 * rs6000.md (arithmetic, logical, and shift Rc combiner patterns):
1008 Disable patterns performing SImode comparisons with SImode values
1009 if TARGET_POWERPC64 and instruction does not sign-extend or does
1010 not mask to narrower than SImode, i.e. where bit 31 and bit 63 may
1011 differ for signed quantities.
1012 (indirect_jump): Add expander to choose RTL based on TARGET_64BIT.
1013 (tablejump): Patterns contingent on TARGET_64BIT not TARGET_POWERPC64.
1014 (decrement_and_branch_on_count): Add 64-bit variant.
1015
1016 Mon Jul 19 09:36:27 1999 Bernd Schmidt <bernds@cygnus.co.uk>
1017
1018 * final.c (output_asm_insn): When searching for the matching string
1019 for a given dialect, don't run past the end of the list of
1020 alternatives if there are fewer alternatives in the template than
1021 dialects.
1022
1023 1999-07-17 Alexandre Oliva <oliva@dcc.unicamp.br>
1024
1025 * gcc.texi: Update e-mail addresses and URLs to gcc.gnu.org.
1026 Removed paragraph about compression of files and size limitation,
1027 duplicated in the FAQ. Use gcc-patches for posting patches.
1028 * gcc.c (main): Updated URL with bug reporting instructions to
1029 gcc.gnu.org. Removed e-mail address.
1030 * system.h (abort): Likewise.
1031
1032 1999-07-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1033
1034 * Makefile.in (stmp-multilib-sub): Make the files extracted
1035 from $(LIBGCC1) writable.
1036
1037 Sat Jul 17 14:25:46 1999 Nick Clifton <nickc@cygnus.com>
1038
1039 * config/arm/aout.h: Reformat for improved readability.
1040
1041 * config/arm/arm.h: Reformat for improved readability.
1042 Replace uses of fprintf with asm_fprintf where appropriate.
1043 (ARM_DECLARE_FUNCTION_NAME): New macro: Perform any generic ARM
1044 function declaration assembler actions.
1045 (NUM_INTS): New macro: Convert from bytes to words.
1046 (NUM_REGS): New macro: Compute number of registers required to
1047 hold a quanitity of tyep MODE.
1048 (NUM_REGS2): New macro: Like NUM_REGS but also copes with BLKmode
1049 types.
1050 (NUM_ARG_REGS): New macro: The number of argument registers
1051 available.
1052 (ARG_REGISTER): New macro: Compute the register number of the Nth
1053 argument register.
1054 (LAST_ARG_REGNUM): New macro: The number of the last argument
1055 register.
1056 (SP_REGNUM): New macro: Register number of the stack pointer.
1057 (FP_REGNUM): New macro: Register number of the frame pointer.
1058 (FUNCTION_ARG, FUNCTION_ARG_PARTIAL_NREGS, INIT_CUMULATIVE_AGS,
1059 FUNCTION_ARG_ADVANCE, SETUP_INCOMING_VARARGS): Change
1060 CUMULATIVE_ARGS so that it counts registers not bytes.
1061
1062 * config/arm/arm.c: Rename TARGET_THUMB_INTERWORK to
1063 TARGET_INTERWORK.
1064 Replace uses of fprintf with asm_fprintf where appropriate.
1065 (output_ascii_pseudo_op): Replace with version from thumb.c
1066
1067 * config/arm/coff.h (ASM_FILE_START): Emit ASM_APP_OFF.
1068
1069 * config/arm/elf.h (CPP_PREDEFINES): Replace with
1070 SUBTARGET_CPP_SPEC.
1071 (ASM_DECLARE_FUNCTION_NAME): Use ARM_DECLARE_FUNCTION_NAME.
1072 (ASM_FILE_START): Emit ASM_APP_OFF.
1073
1074 Fri Jul 16 13:48:09 1999 Jeffrey A Law (law@cygnus.com)
1075
1076 * pa.c (compute_frame_size): Round frame according to
1077 STACK_BOUNDARY rather than a hardwired value.
1078
1079 * pa.h (POINTER_SIZE, PARM_BOUNDARY): Define in terms of BITS_PER_WORD.
1080
1081 * configure.in (hppa*-*-hpux11*): Use symbolic MASK_PA_11 instead
1082 of "1".
1083 * configure: Rebuilt.
1084
1085 * configure.in (hppa*-*-linux*): New configuration.
1086 * configure: Rebuilt.
1087 * pa.h (MAX_OFILE_ALIGNMENT): Delete.
1088 * pa/som.h (MAX_OFILE_ALIGNMENT): Define.
1089 * pa/pa-linux.h: New file.
1090 * pa/t-linux: New file.
1091 * pa/xm-linux.h: New file.
1092
1093 * pa.c (hppa_legitimize_address): Change references from SImode to
1094 either Pmode or word_mode as appropriate.
1095 (emit_move_sequence, store_reg, load_reg): Likewise.
1096 (set_reg_plus_d, hppa_expand_prologue): Likewise.
1097 (output_mul_insn): Likewise.
1098 * pa.h (PROMOTE_MODE): Likewise.
1099 (INITIALZE_TRAMPOLINE): Likewise.
1100 (Pmode): Define to word_mode.
1101
1102 * pa.c (compute_frame_size): Use UNITS_PER_WORD instead of hardwired
1103 value of 4. Allocate 8 bytes for each FP register save.
1104 (hppa_expand_epilogue): Use UNITS_PER_WORD instead of harwarewired
1105 value of 4.
1106 (hppa_expand_prologue): Likewise.
1107 * pa.h (PROMOTE_MODE): Likewise.
1108 (HARD_REGNO_MODE_OK, FUNCTION_ARG_SIZE): Likewise.
1109 (FUNCTION_ARG_BOUNDARY): Likewise.
1110
1111 * invoke.texi (HPPA Options): Remove -mspace/-mno-space.
1112
1113 * pa.c (out_of_line_prologue_epilogue): Delete.
1114 (override_options): Remove -mspace related code.
1115 (hppa_expand_prologue, hppa_expand_epilogue): Likewise.
1116 (compute_frame_size): Only allocate space for register that
1117 actually need to be saved.
1118 * pa.h (MASK_SPACE, TARGET_SPACE): Delete.
1119 (TARGET_SWITCHES): Remove -mspace, -mno-space
1120 * pa/t-pa (LIB2FUNCS_EXTRA): Remove ee.asm and ee_fp.asm
1121 * pa/t-pro (LIB2FUNCS_EXTRA): Likewise. Remove -mspace multilib.
1122 * pa/ee.asm, pa/ee_fp.asm: Delete.
1123
1124 * pa/elf.h (ASM_OUTPUT_DOUBLE_INT): Define.
1125
1126 * config/svr4.h (CONST_SECTION_ASM_OP): Do not emit assembler
1127 directive in column zero.
1128
1129 Fri Jul 16 01:39:57 1999 Jeffrey A Law (law@cygnus.com)
1130
1131 * m68k.c (output_function_prologue): Fix computation of save mask
1132 when generating PIC code.
1133
1134 Thu Jul 15 15:40:09 1999 Jim Wilson <wilson@cygnus.com>
1135
1136 * tree.c (build_type_attribute_variant): Move current_obstack restore
1137 after build_qualified_type call.
1138
1139 1999-07-15 Mark Mitchell <mark@codesourcery.com>
1140
1141 * configure.in: Use t-iris6, even with GNU LD.
1142 * config/mips/iris6gld.h: Fix typo in linker spec.
1143 * config/mips/t-iris6gld: Remove.
1144
1145 Thu Jul 15 15:15:43 1999 David Edelsohn <edelsohn@gnu.org>
1146
1147 * rs6000.md (insv, extzv): Remove SImode dependence in named
1148 patterns. Explicitly generate DImode RTL if PowerPC64 and
1149 operand is DImode.
1150 (insvdi): Reverse start and size in instruction template.
1151
1152 1999-07-12 Joseph S. Myers <jsm28@cam.ac.uk>
1153
1154 * invoke.texi: Typo fixes.
1155
1156 Wed Jul 14 23:28:06 1999 Jeffrey A Law (law@cygnus.com)
1157
1158 * emit-rtl.c (gen_realpart): Issue an error for cases GCC can not
1159 handle at this time instead of silently generating incorrect code.
1160 (gen_imagpart): Likewise.
1161
1162 * reload.c (find_reloads): Emit a USE for a pseudo register without
1163 a hard register if we could not create an optional reload for the
1164 pseudo.
1165
1166 Wed Jul 14 23:45:48 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
1167
1168 * c-typeck.c (output_init_element, process_init_element):
1169 When advancing constructor_unfilled_fields for a RECORD_TYPE,
1170 check for nameless bit fields.
1171
1172 Wed Jul 14 01:57:39 1999 Richard Henderson <rth@cygnus.com>
1173
1174 * regclass.c (scan_one_insn): Notice subregs that change the
1175 size of their operand.
1176 (record_reg_classes): Use that to obey CLASS_CANNOT_CHANGE_SIZE.
1177
1178 Wed Jul 14 01:41:42 1999 Jeffrey A Law (law@cygnus.com)
1179
1180 * configure.in (alpha*-*-*): Include alpha/t-ieee.
1181 * configure: Rebuilt.
1182 * alpha/t-ieee: New file.
1183
1184 Tue Jul 13 10:45:58 1999 Jeffrey A Law (law@cygnus.com)
1185
1186 * rs6000.c (find_addr_reg): Do not select r0 as an address
1187 register.
1188
1189 Tue Jul 13 00:46:18 1999 Philippe De Muyter <phdm@macqel.be>
1190
1191 * m68k/x-mot3300 (XCFLAGS): List of big files now includes `cse.o'.
1192
1193 Mon Jul 12 14:29:15 1999 Jeffrey A Law (law@cygnus.com)
1194
1195 * rs6000.md (movsf): Do not force easy FP constants into memory.
1196
1197 * expr.c (expand_expr, case PLUS_EXPR): Pass constants through
1198 immed_double_const to ensure they are properly truncated then
1199 sign extended.
1200
1201 Mon Jul 12 10:40:01 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com>
1202
1203 * config/arm/thumb.c (thumb_reorg): Call replace_symbols_in_block
1204 always unless NO_DEBUG is used. Compile this code
1205 unconditionally.
1206 (replace_symbols_in_block): Compile it unconditionally.
1207
1208 Sun Jul 11 12:32:32 1999 Jeffrey A Law (law@cygnus.com)
1209
1210 * configure.in (i?86-*-elf*): New target.
1211 * configure: Rebuilt.
1212 * i386/i386elf.h, i386/t-i386elf: New files.
1213
1214 Fri Jul 9 22:39:44 1999 Jason Merrill <jason@yorick.cygnus.com>
1215
1216 * toplev.c (main): Don't complain about saying -gdwarf.
1217 (rest_of_compilation): Remove redundant code.
1218
1219 Fri Jul 9 19:08:55 1999 Jim Wilson <wilson@cygnus.com>
1220
1221 * unroll.c (unroll_loops): Don't delete named CODE_LABELs.
1222
1223 Fri Jul 9 18:54:18 1999 Felix Lee <flee@cygnus.com>
1224
1225 * config/i960/i960.c (ret_label): Change asm label from "LR:" to
1226 "Li960R:", to avoid name clash.
1227
1228 Fri Jul 9 10:48:28 1999 Bernd Schmidt <bernds@cygnus.co.uk>
1229
1230 * loop.c (check_dbra_loop): When reversing a loop, delete all
1231 REG_EQUAL notes referencing the reversed biv except those which are
1232 for a giv based on it.
1233
1234 Fri Jul 9 03:51:52 1999 Jeffrey A Law (law@cygnus.com)
1235
1236 * version.c: Drop "gcc-" prefix from version #.
1237
1238 Thu Jul 8 18:06:30 1999 Jason Merrill <jason@yorick.cygnus.com>
1239
1240 * dwarf2out.c (dwarf2out_line): Emit a line number comment after
1241 the label if we're being verbose.
1242
1243 Thu Jul 8 14:18:46 1999 Richard Henderson <rth@cygnus.com>
1244
1245 * m68k.c (output_function_prologue): Add pic register to mask
1246 if live and flag_pic.
1247 (output_function_epilogue): Likewise.
1248
1249 Thu Jul 8 12:55:12 1999 Jeffrey A Law (law@cygnus.com)
1250
1251 * dbxelf.h (ASM_OUTPUT_SOURCE_LINE): Do not put assembler
1252 directives in column zero.
1253
1254 * pa/elf.h (ASM_FILE_START): Define.
1255 * pa/som.h (ASM_FILE_START): Include .level directives.
1256 * pa/hpux10.h (ASM_FILE_START): Delete.
1257 * pa/hpux11.h (ASM_FILE_START): Delete.
1258
1259 * pa/elf.h (BSS_SECTION_ASM_OP): Use .section .bss.
1260
1261 Thu Jul 8 18:03:19 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
1262
1263 * reload1.c (choose_reload_regs): Never call remove_adress_replacements
1264 when reload_out equals reload_in.
1265
1266 Thu Jul 8 16:50:14 1999 Nick Clifton <nickc@cygnus.com>
1267
1268 * invoke.texi (Spec Files): New node: Describe the contents of
1269 spec files.
1270
1271 Thu Jul 8 10:28:25 1999 Craig Burley <craig@jcb-sc.com>
1272
1273 * invoke.texi (DEC Alpha Options): Put @end table at
1274 beginning of line, to avoid confusing texi2html.
1275
1276 Thu Jul 8 09:22:06 1999 Nick Clifton <nickc@cygnus.com>
1277
1278 * config/arm/elf.h (ASM_OUTPUT_INTERNAL_LABEL): Fixed typo
1279 introduced in previous delta.
1280
1281 Wed Jul 7 02:00:04 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
1282
1283 * reload1.c (gen_reload): When synthesizing a 3 operand add
1284 sequence, improve test for when to reload OP1 into the reload
1285 register instead of OP0.
1286
1287 Wed Jul 7 01:38:03 1999 Jim Wilson <wilson@cygnus.com>
1288
1289 * unroll.c (unroll_loop): Don't delete NOTE_INSN_DELETED_LABEL notes.
1290
1291 1999-07-07 Manfred Hollstein <mhollstein@cygnus.com>
1292
1293 * m88k/dguxbcs.h (CPP_SPEC): Add missing \ in multi-line
1294 string literal.
1295
1296 Wed Jul 7 01:16:43 1999 Richard Henderson <rth@cygnus.com>
1297
1298 * ginclude/varargs.h (__builtin_va_alist_t): New typedef.
1299 (va_dcl): Use __builtin_va_alist_t.
1300
1301 Wed Jul 7 01:14:42 1999 Jason Merrill <jason@yorick.cygnus.com>
1302
1303 * dwarf2out.c (gen_struct_or_union_type_die): Only remember types
1304 on the permanent_obstack.
1305 * dwarfout.c (output_type): Likewise.
1306
1307 Tue Jul 6 15:25:32 1999 Gavin Romig-Koch <gavin@cygnus.com>
1308
1309 * c-common.c (unsigned_type,signed_type,signed_or_unsigned_type) :
1310 Merged from c-typeck.c and cp/typeck.c.
1311 * c-typeck.c (unsigned_type,signed_type,signed_or_unsigned_type) :
1312 Merged into c-common.
1313
1314 Tue Jul 6 13:06:01 1999 Dave Brolley <brolley@cygnus.com>
1315
1316 * c-lex.c (errorcount): Declare it.
1317 (finish_parse): Update errorcount when using CPPLIB.
1318
1319 1999-07-06 Bruce Korb <ddsinc09@ix.netcom.com>
1320
1321 * fixinc/inclhack.def(end_else_label): Double the backslash so
1322 sed gets a chance to see it.
1323 * fixinc/inclhack.sh: regen
1324 * fixinc/fixincl.x: regen
1325
1326 Fri Jul 2 18:49:51 1999 Nick Clifton <nickc@cygnus.com>
1327
1328 Add framework to support armv5 architecture when it becomes
1329 available:
1330
1331 * config/arm/arm.c (FL_ARCH5): New processor capability flag.
1332 (arm_arch5): New variable.
1333 (all_architectures): Add armv5 line.
1334 * config/arm/arm.h (CPP_CPU_ARCH_SPEC): Define __ARM_ARCH_5__ if
1335 -march=armv5 is specified on the command line.
1336 (arm_arch5): Export this variable.
1337 * invoke.texi: Document new string accepted by -march= switch for
1338 ARM ports.
1339
1340 * config/arm/arm.h: Replace use of constant 12 as a register
1341 number with IP_REGNUM. Similarly 14 and LR_REGNUM.
1342 * config/arm/arm.c: Replace use of constant 12 as a register
1343 number with IP_REGNUM. Similarly 14 and LR_REGNUM.
1344
1345 * config/arm/elf.h: Tidy up.
1346 * config/arm/coff.h: Tidy up.
1347
1348 Thu Jul 1 19:08:13 1999 Mark P. Mitchell <mark@codesourcery.com>
1349
1350 * gcc/configure.in (mips-sgi-irix6*): Handle --with-gnu-ld.
1351 * gcc/config/mips/t-iris6gld: New file.
1352 * gcc/config/mips/iris6gld.h: Likewise.
1353
1354 Fri Jul 2 13:23:39 1999 Gavin Romig-Koch <gavin@cygnus.com>
1355
1356 * c-decl.c (widest_integer_literal_type_node,
1357 widest_unsigned_literal_type) : New.
1358 (init_decl_processing): Handle/use the two new types.
1359 * c-common.c (type_for_size,type_for_mode) : Same.
1360 * c-lex.c (yylex) : Same.
1361 * c-typeck.c (unsigned_type,signed_type,signed_or_unsigned_type) :
1362 Same.
1363 * c-tree.h (widest_integer_literal_type_node,
1364 widest_unsigned_literal_type) : New.
1365
1366 Fri Jul 2 03:05:44 1999 Jeffrey A Law (law@cygnus.com)
1367
1368 * dwarfout.c (field_byte_offset): Correctly compute the object's
1369 byte offset for the first bit of a field which crosses an alignment
1370 boundary on a !BYTES_BIG_ENDIAN target.
1371
1372 Fri Jul 2 01:36:36 1999 Robert Lipe <robertlipe@usa.net>
1373
1374 * fixinc.svr4: Fix <arpa/inet.h> by deleting protos for htons and
1375 ntohs.
1376
1377 Fri Jul 2 00:46:47 1999 Richard Henderson <rth@cygnus.com>
1378 Jeff Law <law@cygnus.com>
1379
1380 * ginclude/varargs.h (va_dcl): Use word_mode for type of
1381 __builtin_va_list.
1382
1383 * except.c: Include intl.h.
1384 (expand_eh_return): Set current_function_cannot_inline.
1385 (save_eh_status, restore_eh_status): Twiddle eh_return_stub_label.
1386 * function.h (struct function): Add eh_return_stub_label.
1387 * flow.c (delete_unreachable_blocks): Don't merge across EH edges.
1388 * Makefile.in (except.o): Depend on intl.h.
1389
1390 Fri Jul 2 00:04:23 1999 David Edelsohn <edelsohn@gnu.org>
1391
1392 * rs6000.md (movdf_hardfloat32): Handle PRE_INC and PRE_DEC the
1393 same as offsettable in cases 1 and 2.
1394
1395 Thu Jul 1 20:54:10 1999 Richard Henderson <rth@cygnus.com>
1396
1397 * alpha.md (extqh): Define as 64-((R&7)*8) instead of 56-(((R-1)&7)*8).
1398 (extlh, extwh): Likewise.
1399
1400 Thu Jul 1 11:05:25 1999 Gavin Romig-Koch <gavin@cygnus.com>
1401
1402 * c-lex.c (yylex): Improve 'integer constant out of range' messages.
1403
1404 Wed Jun 30 16:51:41 1999 Nick Clifton <nickc@cygnus.com>
1405
1406 * configure.in: Add arm-pe and thumb-pe targets.
1407 * configure: Regenerate.
1408
1409 * thumb.c (arm_naked_function_p): New function: Determines if
1410 a function is naked (has no gcc generated prologue/epilogue).
1411 (is_called_in_ARM_mode): Return true if the func has the
1412 interfacearm attribute.
1413 (output_return): Do not generate a return for naked functions.
1414 (thumb_function_prologue): Do not generate a prologue for
1415 naked functions.
1416 (thumb_expand_prologue): Do not generate a prologue for naked
1417 functions.
1418 (thumb_expand_epilogue): Do not generate an epilogue for naked
1419 functions.
1420 (arm_valid_machine_decl_attribute): New function, copied from
1421 arm.c: Permit naked and interfacearm attributes.
1422
1423 * config/arm/pe.c: New file: Support code for arm-pe target.
1424 * config/arm/pe.h: New file: Header file for arm-pe target.
1425 * config/arm/tpe.h: New file: Header file for thumb-pe target.
1426 * config/arm/t-thumb-pe: New file: Makefile fragment for
1427 thumb-pe target.
1428
1429 1999-07-01 Mark Kettenis <kettenis@gnu.org>
1430
1431 * config/i386/gnu.h (CPP_SPEC): Define __PIC__ and __pic__ if
1432 -fPIC or -fpic is specified.
1433
1434 Wed Jun 30 03:31:54 1999 Jeffrey A Law (law@cygnus.com)
1435
1436 * expr.c (emit_block_move): Use copy_to_mode_reg for
1437 !TARGET_MEM_FUNCTIONS case too.
1438
1439 * configure.in (hppa*-*-*): Add som.h or elf.h to tm_file as
1440 appropriate.
1441 * configure: Rebuilt.
1442 (hppa1.1-*-pro*, hppa1.1-*-rtems*): Define target_cpu_default.
1443 * pa.h: Include dbxelf.h. Delete various dbx/stabs related
1444 definitions made redundant by dbxelf.h inclusion. Delete
1445 lots of definitions related to assembly output that are
1446 specific to the SOM object format.
1447 * pa.c (output_function_prologue): Do not emit the function's
1448 name for OBJ_ELF.
1449 * pa-pro-end.h (STARTFILE_SPEC): Undefine before redefining.
1450 * pa-pro.h: Deleted.
1451 * som.h: New file with SOM specific definitions.
1452 * elf.h: New file with ELF specific definitions.
1453
1454 * elfos.h (const_section): Output a tab before assembler directives.
1455 (ctors_section, dtors_section): Likewise.
1456 (ASM_OUTPUT_SECTION_NAME): Likewise.
1457
1458 * pa/pa1.h: Delete unused file.
1459
1460 Tue Jun 29 01:37:53 1999 Jeffrey A Law (law@cygnus.com)
1461
1462 * configure.in (hppa*-hp-hpux11*): New configuration.
1463 * configure: Rebuilt.
1464 * pa/pa-hpux11.h: New file.
1465 * pa.h (CPP_SPEC): Conditionally add -D__STDC_EXT__ to the cpp
1466 command line.
1467
1468 * mips.md (leasi, leadi): New patterns.
1469
1470 * expr.c (emit_block_move): Properly handle case where one of the
1471 block move arguments has a queued increment or decrement.
1472 (clear_storage): Similarly. Fix formatting goof.
1473
1474 1999-06-28 "David O'Brien" <obrien@NUXI.com>
1475
1476 * fixinc/inclhack.def(stdio_va_list): This patch Removes a
1477 semicolon from the BSD VA_LIST replacement expression.
1478
1479 * fixinc/inclhack.sh: regen
1480 * fixinc/fixincl.x: regen
1481
1482 * fixinc/mkfixinc.sh: Have `i[34567]86-*-freebsd*' machines
1483 now use the fixincl program.
1484
1485 Mon Jun 28 05:28:12 1999 Jeffrey A Law (law@cygnus.com)
1486
1487 * m68k.h (CONDITIONAL_REGISTER_USAGE): Define for !SUN_FPA
1488 case. Also make the PIC register call_used.
1489
1490 * m68k.h (FINALIZE_PIC): Delete.
1491 * m68k.c (finalize_pic): Delete.
1492
1493 Mon Jun 28 05:16:35 1999 Richard Henderson <rth@cygnus.com>
1494
1495 * m68k.h (PREFERRED_RELOAD_CLASS): Don't force any FP const_doubles
1496 to memory.
1497
1498 Mon Jun 28 04:07:27 1999 David Edelsohn <edelsohn@gnu.org>
1499
1500 * expmed.c (expand_divmod): Ensure unsigned value fits in reg_note.
1501
1502 Sun Jun 27 02:39:08 1999 Richard Henderson <rth@cygnus.com>
1503
1504 * jump.c (jump_optimize_1): Validate the cmov copy to a temporary.
1505
1506 Sat Jun 26 17:18:18 1999 David Edelsohn <edelsohn@gnu.org>
1507
1508 * rs6000.c (print_operand, case 'L'): Use plus_constant_for_output.
1509
1510 Fri Jun 25 11:33:24 1999 Richard Henderson <rth@cygnus.com>
1511
1512 * alpha.c (override_options): Add -mcpu=ev45 as an alias for ev4.
1513
1514 Fri Jun 25 13:41:25 1999 David Edelsohn <edelsohn@gnu.org>
1515
1516 * rs6000.c (output_toc): Always use hex values for floating-point
1517 constants. Store single-precision values in upper-half of TOC
1518 entry in 64-bit mode.
1519 * rs6000.md (floatsidf2, floatunssidf2): Add !TARGET_POWERPC64
1520 to final constraints.
1521 (fix_truncdfsi2 splitter): Change pattern matching fctiwz.
1522 (fctiwz): Improve accuracy of RTL for pattern.
1523
1524 Fri Jun 25 11:26:38 1999 Gavin Romig-Koch <gavin@cygnus.com>
1525
1526 * expr.c (expand_expr): Allow RTL_EXPR's through the
1527 MAX_INTEGER_COMPUTATION_MODE checks.
1528
1529 Fri Jun 25 06:06:37 1999 Richard Henderson <rth@cygnus.com>
1530
1531 * alpha.h (MASK_SUPPORT_ARCH, MASK_CPU_EV5, MASK_CPU_EV6): Define
1532 such that MASK_SUPPORT_ARCH is not negative.
1533
1534 Fri Jun 25 05:35:44 1999 Jeffrey A Law (law@cygnus.com)
1535
1536 * loop.c (verify_dominator): Properly handle ADDR_VEC and
1537 ADDR_DIFF_VEC insns that appear inside loops.
1538
1539 Thu Jun 24 22:54:05 1999 David Edelsohn <edelsohn@gnu.org>
1540 Jeff Law <law@cygnus.com>
1541
1542 * rs6000.md (movdf_hardfloat32): Revert previous patch.
1543 Handle LO_SUM the same as offsettable in cases 1 and 2.
1544 * rs6000.c (find_addr_reg): Revert previous patch.
1545
1546 Thu Jun 24 22:43:12 1999 Philippe De Muyter <phdm@macqel.be>
1547
1548 * system.h (strstr): New external function declaration.
1549 * acconfig.h (NEED_DECLARATION_STRSTR): New define slot.
1550 * configure.in (GCC_NEED_DECLARATIONS): Check for strstr.
1551 * config.in, configure: Rebuilt.
1552
1553 1999-06-24 Tom Tromey <tromey@cygnus.com>
1554
1555 * gcc.c (main): Read user-specified specs files after computing
1556 additional startfile_prefixes.
1557
1558 Thu Jun 24 15:00:47 1999 Mark Mitchell <mark@codesourcery.com>
1559
1560 Revert these two patches:
1561
1562 Thu Jun 17 21:34:24 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
1563 * loop.c (strength_reduce): When doing biv->giv conversion, update
1564 reg note of NEXT->insn.
1565
1566 Thu Jun 17 17:22:07 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
1567 * loop.c (strength_reduce): When doing biv->giv conversion, fix up
1568 reg_biv_class.
1569 (recombine_givs): Set ix field after sorting.
1570
1571 Wed Jun 23 21:26:00 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
1572
1573 * rtlanal.c (reg_referenced_p): Use reg_overlap_mentioned_p
1574 for the parts of an UNSPEC / UNSPEC_VOLATILE.
1575
1576 1999-06-23 Bruce Korb <ddsinc09@ix.netcom.com>
1577
1578 *fixinc/inclhack.def: Add fix development commentary
1579 (read_ret_type): reactivate and add selection clause
1580 (zzz_*): tweak output file name to match what is used in hackshell.tpl
1581 *fixinc/{fixincl.x|inclhack.sh}: regen
1582
1583 Wed Jun 23 00:48:21 1999 Jason Merrill <jason@yorick.cygnus.com>
1584
1585 * expr.c (expand_expr): STRIP_NOPS before checking against
1586 MAX_INTEGER_COMPUTATION_MODE
1587 (check_max_integer_computation_mode): Likewise.
1588
1589 Tue Jun 22 20:23:43 1999 Jim Wilson <wilson@cygnus.com>
1590
1591 * md.texi (smul@var{m}3_highpart): Add missing 's' prefix.
1592
1593 1999-06-22 Jim Wilson <wilson@cygnus.com>
1594
1595 * expr.c (store_expr): When target is a promoted subreg, return a
1596 promoted subreg as a result.
1597
1598 Tue Jun 22 17:14:58 1999 Michael Meissner <meissner@cygnus.com>
1599
1600 * dwarf2out.c (dwarf2out_frame_debug_expr): Reformat to match GNU
1601 coding standards.
1602 (dwarf2out_define): Mark unused parameters appropriately.
1603 (gen_unspecified_parameters_die): Ditto.
1604 (gen_subprogram_die): Fix signed/unsigned warnings.
1605 (gen_variable_die): Ditto.
1606
1607 1999-06-22 Bruce Korb <ddsinc09@ix.netcom.com>
1608
1609 * fixinc/inclhack.def(end_else_label): combined else_label
1610 and endif_label and fixed the sed expression.
1611 *fixinc/{fixincl.x|inclhack.sh}: regen
1612
1613 Tue Jun 22 01:58:18 1999 Jeffrey A Law (law@cygnus.com)
1614
1615 * rs6000.md (movdf_hardfloat32): Use %X instead of always emitting
1616 'x' when handling non-offsettable addresses
1617
1618 Tue Jun 22 00:20:05 1999 Richard Earnshaw (rearnsha@arm.com)
1619
1620 * final.c (shorten_branches): Don't try to split an insn that has
1621 been deleted.
1622
1623 Mon Jun 21 12:47:39 1999 Mark Mitchell <mark@codesourcery.com>
1624
1625 * config/mips/mips.c (symbolic_expression_p): New function.
1626 (mips_select_rtx_section): Put symbolic expressions in the
1627 data section, not the read-only data section.
1628
1629 Mon Jun 21 22:13:06 1999 Jeffrey A Law (law@cygnus.com)
1630
1631 * rs6000.md (find_addr_reg): Handle LO_SUM addresses.
1632
1633 Mon Jun 21 20:10:42 1999 Richard Henderson <rth@cygnus.com>
1634
1635 * collect2.c (main): Log frame table count.
1636 (GCC_OK_SYMBOL) [ECOFF]: Accept stGlobal.
1637 (scan_prog_file) [COFF]: Handle frame tables.
1638
1639 * alpha/alpha.h (UNALIGNED_SHORT_ASM_OP): Define.
1640 (UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_INT_ASM_OP): Define.
1641 * alpha/elf.h: Undef them again.
1642 * alpha/vms.h: Remove their definitions.
1643
1644 Tue Jun 22 03:17:53 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
1645
1646 * sh.c (machine_dependent_reorg): When fixing up fp pcloads,
1647 remove the clobber of r0 and change the REG_UNUSED note to
1648 REG_INC.
1649
1650 1999-06-21 Jakub Jelinek <jj@ultra.linux.cz>
1651
1652 * real.c (ereal_from_double): Fix for 64-bit big endian hosts.
1653 * emit-rtl.c (gen_lowpart_common): Add case for hosts where double
1654 fits in HOST_WIDE_INT and one uses union to access a long constant
1655 as double.
1656
1657 Mon Jun 21 17:18:25 1999 Richard Henderson <rth@cygnus.com>
1658
1659 * sparc.c (sparc_override_options): Don't allow profiling for
1660 code models other than medlow.
1661 (sparc_function_profiler): New function from old FUNCTION_PROFILER
1662 macro. Use ASM_GENERATE_INTERNAL_LABEL and MCOUNT_FUNCTION.
1663 (sparc_function_block_profiler): Likewise. Use user_label_prefix.
1664 (sparc_block_profiler): Likewise.
1665 (sparc_function_block_profiler_exit): Likewise.
1666 * sparc.h (FUNCTION_PROFILER): Call new sparc.c function.
1667 (FUNCTION_BLOCK_PROFILER): Likewise.
1668 (BLOCK_PROFILER): Likewise.
1669 (FUNCTION_BLOCK_PROFILER_EXIT): Likewise.
1670 (MCOUNT_FUNCTION): New.
1671 * sparc/pbd.h (FUNCTION_PROFILER): Delete.
1672 (FUNCTION_BLOCK_PROFILER, BLOCK_PROFILER): Delete.
1673 * sparc/sun4o3.h (FUNCTION_PROFILER): Delete.
1674 (MCOUNT_FUNCTION): New.
1675 * sparc/sysv4.h (FUNCTION_BLOCK_PROFILER): Delete.
1676 (BLOCK_PROFILER): Delete.
1677 (MCOUNT_FUNCTION): New.
1678
1679 Mon Jun 21 14:11:29 1999 David Edelsohn <edelsohn@gnu.org>
1680
1681 * rs6000.md (movdf_hardfloat32): Fix typo in case 2.
1682
1683 Mon Jun 21 12:27:17 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com>
1684
1685 * config/mips/elf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS):
1686 Add the macros.
1687
1688 * config/m68k/m68kelf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS):
1689 Ditto.
1690
1691 * config/sh/sh.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS):
1692 Ditto.
1693
1694 * config/arm/telf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS):
1695 Ditto.
1696
1697 Mon Jun 21 14:58:42 1999 Nick Clifton <nickc@cygnus.com>
1698
1699 * config/arm/arm.h: Add cpp support for ARM920 and ARM920T cpu
1700 types.
1701
1702 Mon Jun 21 06:22:21 1999 Mark Elbrecht <snowball3@bigfoot.com>
1703
1704 * i386/djgpp.h (LIB_SPEC): New.
1705 (STARTFILE_SPEC): New.
1706
1707 * i386/xm-djgpp.h (NO_SYS_SIGLIST): Deleted. Now obsolete.
1708
1709 Mon Jun 21 06:19:33 1999 Philippe De Muyter <phdm@macqel.be>
1710
1711 * fixinc/Makefile.in (gnu-regex.o): Do not define STDC_HEADERS in
1712 compiler flags.
1713
1714 * system.h (WSTOPSIG): New macro.
1715
1716 Mon Jun 21 05:33:15 1999 Mumit Khan <khan@xraylith.wisc.edu>
1717
1718 * c-pragma.c (push_alignment): Don't ignore alignments greater than
1719 4 bytes.
1720 (insert_pack_attributes): Take into account member natural
1721 alignment.
1722
1723 * i386/winnt.c (exports_head): New static variable.
1724 (i386_pe_record_exported_symbol): New function.
1725 (i386_pe_asm_file_end): Use.
1726 * i386/cygwin.h (ASM_OUTPUT_COMMON): Record the exported
1727 symbols to be emitted at end of assembly.
1728 (ASM_DECLARE_OBJECT_NAME): Likewise.
1729 (ASM_DECLARE_FUNCTION_NAME): Likewise.
1730
1731 * i386/uwin.h (CPP_SPEC): Use -idirafter instead -iprefix and
1732 -iwithprefix.
1733
1734 Mon Jun 21 04:44:31 1999 Jeffrey A Law (law@cygnus.com)
1735
1736 * sparc.h (LEGITIMIZE_RELOAD_ADDRESS): Fix paren error introduced
1737 in last change.
1738
1739 Sun Jun 20 17:27:20 1999 Richard Henderson <rth@cygnus.com>
1740
1741 * haifa-sched.c (sched_analyze_1): Use free_list instead of
1742 zapping reg_last_uses directly.
1743 (sched_analyze_2, sched_analyze_insn): Likewise.
1744 (sched_analyze): Likewise. Don't clear reg_last_uses on calls.
1745
1746 Sun Jun 20 16:57:29 1999 David Edelsohn <edelsohn@gnu.org>
1747
1748 * rs6000.md (movdf_hardfloat32): Use worst case insn length
1749 attributes for cases 1 and 2.
1750
1751 Sat Jun 19 22:52:55 1999 Richard Henderson <rth@cygnus.com>
1752
1753 * haifa-sched.c (sched_analyze): Mark call-user regs as clobbered
1754 instead of set.
1755
1756 Sat Jun 19 05:40:07 1999 Philip Blundell <pb@nexus.co.uk>
1757
1758 * arm.c (arm_reload_in_hi): Invert sense of test on BYTES_BIG_ENDIAN.
1759
1760 Sat Jun 19 05:25:05 1999 Richard Earnshaw (rearnsha@arm.com)
1761
1762 * arm.h (CONDITIONAL_REGISTER_USAGE): If flag_pic, never use
1763 PIC_OFFSET_TABLE_REGNUM for general alloaction.
1764 (INITIAL_ELIMINATION_OFFSET): Count the fact that the PIC register
1765 must be stacked if it is used for PIC accesses.
1766 * arm.c (use_return_insn): Handle PIC register specially.
1767 (output_return_instruction): Likewise.
1768 (output_func_{prologue,epilogue}): Likewise.
1769 (output_expand_prologue): Likewise.
1770
1771 * arm.md (*adddf_esfdf_df): Renamed from *adddf_df_esfdf.
1772 (*strsi_predec): Renamed from *strqi_predec.
1773 (*loadsi_shiftpreinc): Renamed from *loadqi_shiftpreinc.
1774 (*loadsi_shiftpredec): Renamed from *loadqi_shiftpredec.
1775
1776 * arm.c (arm_override_options): Remove warning about PIC code
1777 not being supported.
1778
1779 Fri Jun 18 23:47:06 1999 David Edelsohn <edelsohn@gnu.org>
1780
1781 * rs6000.c (find_addr_reg): New function.
1782 * rs6000.h (find_addr_reg): Declare.
1783 (offsettable_addr_operand): Delete.
1784 * rs6000.md (movdf_hardfloat32): Handle non-offsettable loads
1785 from and stores to GPRs.
1786
1787 Fri Jun 18 15:44:18 1999 Richard Henderson <rth@cygnus.com>
1788
1789 * alpha.c (alpha_expand_block_move): Use get_insns rather than
1790 gen_sequence as argument to emit_no_conflict_block.
1791
1792 Fri Jun 18 07:02 1999 Bruce Korb <ddsinc09@ix.netcom.com>
1793
1794 * fixinc/mkfixinc.sh: enable the fixincl program for DG/UX
1795 * fixinc/inclhack.def(dgux_int_varargs): script must end with \n
1796 *fixinc/fixincl.x: regen
1797 *fixinc/inclhack.sh: regen
1798
1799 Thu Jun 17 15:06:10 PDT 1999 Don Lindsay <dlindsay@cygnus.com>
1800
1801 * added support for -mpcrel (PC relative addressing for m68k)
1802 based on code done by Michael Tiemann <tiemann@axon.cygnus.com>.
1803 * invoke.texi (m68000 options): Add documentation for -mpcrel flag.
1804 * m68k.c (print_operand_address): Handle 32-bit PIC case.
1805 (comments for general_src_operand): Add some explanation
1806 about EXTRA_CONSTRAINTS.
1807 (OVERRIDE_OPTIONS): Enable -fPIC in combination with -mpcrel.
1808 * m68kelf.h (OVERRIDE_OPTIONS): Ditto.
1809 (LEGITIMATE_PIC_OPERAND_P): Fix typo.
1810 (LEGITIMATE_PIC_OPERAND_P): Re-derive from m68k.h case.
1811 * m68k.h (LEGITIMATE_PIC_OPERAND_P): Fix delete-o.
1812 (INDIRECTABLE_1_ADDRESS): Delete spurious '/' at end of macro.
1813 (OVERRIDE_OPTIONS): Change behavior so that -mpcrel implies -fpic
1814 if not already set.
1815 (OVERRIDE_OPTIONS): Merge in changes from m68k.h.
1816 * m68k.h (TARGET_PCREL): New target flag.
1817 (TARGET_SWITCHES): Add "pcrel" as a recognized switch.
1818 (OVERRIDE_OPTIONS): Add checks for -mpcrel.
1819 (LEGITIMATE_PIC_OPERAND_P): Don't normally accept anything that
1820 contains a SYMBOL_REF. Relax this constraint during reload, since
1821 we want to use the predicates, not reload's built-in concept of a
1822 valid memory address, to control what insns need reloading.
1823 (EXTRA_CONSTRAINT): Define constraints to accept pc-relative
1824 operands (essentially 'g', 'm', and 's' under normal circumstances).
1825 * m68k.c (print_operand): Cause printing of pc-relative addresses
1826 to include pc register.
1827 (print_operand_address): Ditto.
1828 (general_src_operand): Accept operands that are not only
1829 general_operands, but are also valid when used as a pc-relative
1830 source.
1831 (nonimmediate_src_operand): Similar, for nonimmediate_operands.
1832 (memory_src_operand): Similar, for memory_operands.
1833 (pcrel_address): New predicate to accept the special case of a
1834 pc-relative address.
1835 * m68k.md (many patterns): Rewrite common SImode, HImode, and
1836 QImode insns to accept *_src_operand instead of *_operand where
1837 pc-relative operands can fit. For example, a pc-relative operand
1838 can be used as a memory source operand for addsi3, but not as a
1839 memory destination.
1840 * hp320.h linux.h m68kv4.h (LEGITIMATE_PIC_OPERAND_P) as in m68k.h.
1841
1842 Fri Jun 18 09:11:07 1999 Nick Clifton <nickc@cygnus.com>
1843
1844 * config/arm/telf.h (ASM_OUTPUT_DEF_FROM_DECLS): New Marco: USe
1845 .thumb_set pseudo op to mark aliases of thumb functions.
1846
1847 Wed Jun 16 18:19:13 1999 Nick Clifton <nickc@cygnus.com>
1848
1849 * varasm.c (assemble_alias): Use ASM_OUTPUT_DEF_FROM_DECLS in
1850 preference to ASM_OUTPUT_DEF, if it is defined.
1851
1852 * tm.texi: Document new, optional target macro
1853 ASM_OUTPUT_DEF_FROM_DECLS.
1854
1855 Thu Jun 17 15:07 1999 Bruce Korb <ddsinc09@ix.netcom.com>
1856
1857 * fixincludes: ISCNTL patch
1858 * fixinc/inclhack.def (ioctl_fix_ctrl): Fix the definition of [_]*ISCTRL().
1859 (dgux_int_varargs): new for DG/UX
1860 * fixinc/{fixincl.x,inclhack.sh}: Regenerated.
1861
1862 Thu Jun 17 21:34:24 1999 Jeff Law <law@cygnus.com>
1863
1864 * invoke.texi (ia32 options): Fix typo.
1865
1866 Thu Jun 17 21:34:24 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
1867
1868 * loop.c (strength_reduce): When doing biv->giv conversion, update
1869 reg note of NEXT->insn.
1870
1871 Thu Jun 17 14:25:08 1999 Jeffrey A Law (law@cygnus.com)
1872
1873 * loop.c (move_movables): Note issues with replacing REGs with
1874 SUBREGs.
1875 * mips.h (GO_IF_LEGITIMATE_ADDRESS): Handle SUBREGs properly.
1876
1877 Thu Jun 17 13:28:30 1999 David O'Brien <obrien@FreeBSD.org>
1878
1879 * i386/freebsd-elf.h (LINK_SPEC): Fix typo.
1880
1881 * i386/freebsd-elf.h (FUNCTION_PROFILER): labels are not needed and
1882 the reference to `mcount' was not correct for the ELF on FreeBSD.
1883
1884 Thu Jun 17 17:22:07 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
1885
1886 * loop.c (strength_reduce): When doing biv->giv conversion, fix up
1887 reg_biv_class.
1888
1889 (recombine_givs): Set ix field after sorting.
1890
1891 Thu Jun 17 02:54:30 1999 Jeffrey A Law (law@cygnus.com)
1892
1893 * emit-rtl.c (operand_subword): Tighten checks for when it is safe
1894 to safe to extract a subword out of a REG.
1895
1896 Thu Jun 17 01:45:24 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
1897
1898 * sh.md (mulsi3): Don't add a no-op move at the end.
1899
1900 Wed Jun 16 20:29:00 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
1901
1902 * cse.c (cse_insn): Don't put hard register source into tables for
1903 the last insn of a libcall.
1904
1905 Wed Jun 16 19:44:33 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
1906
1907 * loop.c (strength_reduce): Insert sets of derived givs at every
1908 biv increment, even if it's the only one.
1909
1910 Wed Jun 16 10:33:02 1999 Jason Merrill <jason@yorick.cygnus.com>
1911
1912 * dwarfout.c (add_incomplete_type): New fn.
1913 (output_type): Call it.
1914 (retry_incomplete_types): New fn.
1915 (dwarfout_finish): Call it.
1916
1917 From Eric Raskin <ehr@listworks.com>:
1918 (output_type): Output types for bases.
1919
1920 Tue Jun 15 12:51:23 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
1921
1922 * mips.c (mips_output_conditional_branch): Add `break'
1923 between `default' label and `close braces'.
1924
1925 Tue Jun 15 01:55:20 1999 David O'Brien <obrien@FreeBSD.org>
1926
1927 * i386/freebsd-elf.h (LINK_SPEC): clean up the linking library
1928 specifications and make it realistic.
1929 (LIB_SPEC): Likewise.
1930
1931 Mon Jun 14 15:38:43 1999 Jim Wilson <wilson@cygnus.com>
1932
1933 * config/mips/mips.c (mips_secondary_reload_class): Check for
1934 (PLUS (SP) (REG)) and return appropriate register class.
1935 * config/mips/mips.md (reload_insi): Delete predicate for operand 1.
1936 Handle (PLUS (SP) (REG)).
1937 (tablejump): In mips16 code, use emit_insn instead of emit_jump_insn.
1938 (tablejump_mips161, tablejump_mips162): Use emit_jump_insn instead
1939 of emit_insn for tablejump.
1940
1941 Mon Jun 14 17:26:40 1999 David Edelsohn <edelsohn@gnu.org>
1942
1943 * rs6000.c (output_prolog): RS6000_CALL_GLUE must be
1944 asm_fprintf format string by itself.
1945 (output_function_profiler): Likewise.
1946
1947 Mon Jun 14 12:57:38 1999 David Mosberger <davidm@hpl.hp.com>
1948
1949 * combine.c (simplify_logical, case AND): Only call
1950 simplify_and_const_int if the mode is no wider than HOST_WIDE_INT
1951 or the constant is positive.
1952
1953 Mon Jun 14 11:43:41 1999 Nick Clifton <nickc@cygnus.com>
1954
1955 * configure.in: Fix typo in rs6000-ibm-aix4 case.
1956 * configure: Regenerate.
1957
1958 Mon Jun 14 03:55:40 1999 Jeffrey A Law (law@cygnus.com)
1959
1960 * configure.in (rs6000-ibm-aix4.3*, powerpc-ibm-aix4.3*): Do not
1961 require a sub-version #.
1962 * configure: Rebuilt.
1963
1964 1999-06-14 Robert Lipe (robertlipe@usa.net)
1965
1966 * svr4.h (DWARF2_DEBUGGING_INFO): Check for redefinition.
1967
1968 Mon Jun 14 10:30:52 BST 1999 Nathan Sidwell <nathan@acm.org>
1969
1970 * c-typeck.c (process_init_element): Detect excess elements in
1971 char array initializer.
1972
1973 1999-06-14 Andreas Jaeger <aj@arthur.rhein-neckar.de>
1974
1975 * gcc.texi: Mention gcc 2.96 instead of egcs 1.00.
1976
1977 Sat Jun 12 22:29:48 EDT 1999 Jerry Quinn <jquinn@nortelnetworks.com>
1978
1979 * invoke.texi (Option Summary): Add -fpermissive flag.
1980
1981 Sat Jun 12 03:40:42 1999 Jeffrey A Law (law@cygnus.com)
1982
1983 * sparc.h (LEGITIMIZE_RELOAD_ADDRESS): Do nothing with operands
1984 that require PIC code sequences.
1985
1986 Wed Jun 9 16:29:01 1999 Nick Clifton <nickc@cygnus.com>
1987
1988 * configure.in: Add new target: thumb-elf.
1989 * configure: Regenerate.
1990 * config/arm/t-thumb-elf: New file: Makefile fragment for
1991 thumb-elf build.
1992 * config/arm/telf.h: New file: Header file for thumb-elf
1993 build.
1994
1995 Fri Jun 11 03:17:51 1999 Jeffrey A Law (law@cygnus.com)
1996
1997 * Makefile.in (libgcc2): Pass MAYBE_USE_COLLECT2 as an argument.
1998 * libgcc2.c (__CTOR_LIST, __DTOR_LIST); Do not provide
1999 initializers is some circumstances.
2000
2001 * fixinc/inclhack.def (endif_label): Add additional selector for
2002 more bogus stuff after #endif statements.
2003 * fixinc/inclhack.sh, fixinc/fixincl.x: Rebuilt.
2004
2005 Thu Jun 10 20:44:36 1999 Mumit Khan <khan@xraylith.wisc.edu>
2006
2007 * i386/cygwin.h (SET_ASM_OP): Define.
2008
2009 Thu Jun 10 20:37:57 1999 Mumit Khan <khan@xraylith.wisc.edu>
2010
2011 * reg-stack.c (stack_reg_life_analysis): Find all the RETURN insns.
2012
2013 Thu Jun 10 19:23:00 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
2014
2015 * sh.h (TARGET_HARWARD, TARGET_HARVARD): Changed the former to the
2016 latter.
2017
2018 * sh.md (ic_invalidate_line_i): Remove second alternative.
2019
2020 Thu Jun 10 06:55 1999 Bruce Korb <ddsinc09@ix.netcom.com>
2021
2022 *fixinc/inclhack.def(sun_auth_proto): We do not know how to
2023 test for the presence of valid prototypes. Delete bypass expr.
2024 (ioctl_fix_ctrl): Correct the selection expression.
2025 (no_double_slash): Correct quoting rules
2026 *fixinc/fixincl.x: regen
2027 *fixinc/inclhack.sh: regen
2028
2029 Thu Jun 10 15:08:15 1999 Nick Clifton <nickc@cygnus.com>
2030
2031 * config/arm/arm.c (struct all_cores): Add ARM920 and ARM920t.
2032
2033 Wed Jun 9 15:57:57 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
2034
2035 * rs6000.md (movsi_got_internal_mem): Delete.
2036 * rs6000.h (CONDITIONAL_REGISTER_USAGE): Mark PIC_OFFSET_TABLE_REGNUM.
2037 (GOT_TOC_REGNUM): Delete.
2038 (PIC_OFFSET_TABLE_REGNUM): Define.
2039 (FINALIZE_PIC): Disable.
2040 * rs6000.c (rs6000_got_register): New code for fixed pic register.
2041 (rs6000_replace_regno): Delete.
2042 (rs6000_finalize_pic): Likewise.
2043 (output_prolog): Handle PIC_OFFSET_TABLE_REGNUM.
2044
2045 Wed Jun 9 19:44:26 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
2046
2047 * loop.c (loop_insn_first_p): Don't compare LUIDs when P
2048 is a note; use <= for the compare; advance P while it is
2049 a NOTE.
2050
2051 Wed Jun 9 13:12:24 1999 Jeffrey A Law (law@cygnus.com)
2052
2053 * fixinc/inclhack.def (no_double_slash): Fix quoting for test.
2054 * fixinc/inclhack.sh, fixinc/fixincl.x, fixinc/fixincl.sh; Rebuilt.
2055
2056 * varasm.c (remove_from_pending_weak_list): Verify t->name
2057 is non-NULL before passing it to strcmp.
2058
2059 Wed Jun 9 06:50 1999 Bruce Korb <ddsinc09@ix.netcom.com>
2060
2061 *fixinc/inclhack.def(sun_auth_proto): bypass the patch if
2062 the typed arguments are not part of a comment
2063 (ioctl_fix_ctrl): Added a purpose comment
2064 *fixinc/fixincl.x: regenerate
2065 *fixinc/inclhack.sh: regenerate
2066
2067 Wed Jun 9 22:57:02 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
2068
2069 * invoke.texi: Add C4x invocation docs.
2070
2071 Wed Jun 9 22:34:38 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
2072
2073 * config/c4x/c4x.h (TARGET_EXPOSE_LDP, LEGITIMIZE_RELOAD_ADDRESS):
2074 Define new macros.
2075 * config/c4x/c4x.c (c4x_emit_move_sequence, src_operand): Use
2076 TARGET_EXPOSE_LDP.
2077 (c4x_legitimize_reload_address): New function.
2078 * config/c4x/c4x.md: Update docs.
2079
2080 Wed Jun 9 04:14:48 1999 Jeffrey A Law (law@cygnus.com)
2081
2082 * fixincludes: Avoid removing '.'.
2083 * fixinc/fixinc.svr4: Likewise.
2084 * fixinc/fixinc.winnt: Likewise.
2085 * fixinc/inclhack.tpl: Likewise.
2086 * fixinc/fixincl.sh, fixinc/inclhack.sh: Rebuilt.
2087
2088 1999-06-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2089
2090 * fixinc/inclhack.def (sun_catmacro): Escape parens in the select
2091 pattern.
2092 * fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt.
2093
2094 Wed Jun 9 03:10:34 1999 Mumit Khan <khan@xraylith.wisc.edu>
2095
2096 * c-pragma.c (handle_pragma_token): Handle `#pragma pack()'
2097 correctly.
2098
2099 Tue Jun 8 13:06:15 1999 Jim Wilson <wilson@cygnus.com>
2100
2101 * configure.in (rs6000-ibm-aix4.[12]*): Change rx6000 to rs6000.
2102 * configure: Regenerate.
2103
2104 Tue Jun 8 05:47:48 1999 Richard Earnshaw (rearnsha@arm.com)
2105
2106 * optabs.c (expand_cmplxdiv_wide): Use expand_abs to get the absolute
2107 values.
2108
2109 Mon Jun 7 22:30:37 1999 Jeffrey A Law (law@cygnus.com)
2110
2111 * fixinc/inclhack.def (avoid_bool): Also catch
2112 "typedef [unsigned] int bool".
2113 * fixinc/inclhack.sh, fixinc/fixincl.x, fixinc/fixincl.sh: Rebuilt.
2114
2115 * m68k/x-hp3bsd44: Delete obsolete and incorrect file.
2116 * configure.in (m68k-hp-bsd4.4): No longer use x-hp3bsd44.
2117 * configure: Rebuilt.
2118
2119 Mon Jun 7 22:05:03 1999 Mark Kettenis <kettenis@gnu.org>
2120
2121 * config/i386/gnu.h: Include <gnu.h> right after <i386/linux.h>,
2122 such that we can override its definitions if necessary.
2123 (CPP_SPEC): New define. Support processor specific predefines via
2124 %(cpp_cpu).
2125 (CC1_SPEC): New define. Support processor specific compiler
2126 options via %(cc1_cpu).
2127 (STARTFILE_SPEC): New define. Use crt0.o instead of crt1.o for
2128 -static.
2129
2130 1999-06-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2131
2132 * fixinc/inclhack.def (math_gcc_ifndefs): Insert whitespace
2133 between sed's -e flag, and the open-quote following it.
2134 * fixinc/fixincl.x, fixinc/fixincl.sh: Rebuilt.
2135
2136 Mon Jun 7 20:34:20 1999 Robert Lipe <robertlipe@usa.net>
2137 Jeffrey A Law (law@cygnus.com)
2138
2139 * varasm.c (assemble_start_function): Remove the function
2140 from the pending weak decls list when we define a function.
2141 (assemble_variable): Similarly for variables.
2142 (weak_finish): Ignore items on the list with a NULL name.
2143 (remove_from_ending_weak_list); New function to "remove" an item
2144 from the pending weak declarations list.
2145
2146 Mon Jun 7 19:27:07 1999 Jerry Quinn <jquinn@nortelnetworks.com>
2147
2148 * pa.md (fmpyfadd, fmpynfadd, fnegabs): New patterns.
2149
2150 Mon Jun 7 14:07:39 1999 Dave Brolley <brolley@cygnus.com>
2151
2152 * c-lex.c (GETC): Redefine to call getch.
2153 (UNGETC): Redefine to call put_back.
2154 (putback_buffer): New structure type.
2155 (putback): New static structure.
2156 (getch): New function.
2157 (put_back): New function.
2158 (yylex): Replace unused bytes from bad multibyte character.
2159
2160 Mon Jun 7 13:33:39 1999 Dave Brolley <brolley@cygnus.com>
2161
2162 * cpplib.c (do_define): Cast `alloca' return value.
2163 (do_include, do_undef, do_pragma): Likewise.
2164 * cpphash.c (dump_definition): Cast `xstrdup' and `alloca' return
2165 values.
2166 * cppfiles.c (initialize_input_buffer): Cast `xmalloc' return values.
2167 * gcc/cppspec.c (lang_specific_driver): Cast xmalloc return value.
2168
2169 Sun Jun 6 11:58:34 1999 Jakub Jelinek <jj@ultra.linux.cz>
2170
2171 * sparc.md (abstf2): This should be an expand.
2172 (split after abstf2_notv9): Fix mode.
2173 (abstf2_hq_v9): New pattern.
2174 (abstf2_v9): Only use when no hard quad.
2175 (absdf2_v9): Fix if target is not the same as source.
2176 (ashrsi3_extend, ashrsi3_extend2, lshrsi3_extend, lshrsi3_extend2):
2177 Add correct output constraints.
2178
2179 Sat Jun 5 17:04:16 1999 Craig Burley <craig@jcb-sc.com>
2180
2181 From Dave Love to egcs-patches on 20 May 1999 17:38:38 +0100:
2182 * invoke.texi: Clarify text vis-a-vis Intel CPUs.
2183
2184 Sat Jun 5 12:11:24 1999 Mark Mitchell <mark@codesourcery.com>
2185
2186 * mips.h (mips_output_conditional_branch): New function.
2187 (mips_adjust_insn_length): Likewise.
2188 (ASSEMBLER_SCRATCH_REGNUM): New macro.
2189 (ADJUST_INSN_LENGTH): Likewise.
2190 * mips.c (print_operand): Add `F' and `W' for floating-point
2191 comparison opcodes.
2192 (machine_dependent_reorg): Adjust MIPS16 code; instruction-lengths
2193 are now in bytes.
2194 (mips_adjust_insn_length): New function.
2195 (mips_output_conditional_branch): New function.
2196 * mips.md (length): Adjust attribute definition to handle
2197 conditional branches. Change lengths to bytes, rather than
2198 instructions throughout. Remove length attribute from
2199 instructions whose length is four bytes, and rely on the default
2200 instead.
2201 (dslot): Fix typo in comment.
2202 Reword conditional branch patterns to use
2203 mips_output_conditional_branch.
2204
2205 Fri Jun 4 13:30:27 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2206
2207 * alpha/osf.h (CPP_SUBTARGET_SPEC): Handle -threads.
2208 (LIB_SPEC): Likewise.
2209 Link with -lprof1_r for -g/-pg.
2210
2211 1999-06-04 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2212
2213 * loop.c (check_dbra_loop): Fix change of Jan 19.
2214
2215 Fri Jun 4 00:12:40 1999 Marc Espie <espie@cvs.openbsd.org>
2216
2217 * freebsd-elf.h (SWITCH_TAKES_ARG): Redefine, not define.
2218 (STARTFILE_SPEC): Define, override the svr4.h version.
2219 (ENDFILE_SPEC): Likewise.
2220
2221 Thu Jun 3 23:58:55 1999 Jeffrey A Law (law@cygnus.com)
2222
2223 * fixinc/inclhack.def (limits_ifndefs): Also apply to sys/limits.h
2224 * fixinc/fixincl.x: Regenerated.
2225 * fixinc/inclhack.sh: Regenerated.
2226
2227 Fri Jun 4 05:42:23 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
2228
2229 * sh.c (barrier_align): Don't return early for normal branch/barrier
2230 when optimizing for SH2.
2231
2232 Thu Jun 3 22:27:50 1999 Robert Lipe <robertlipe@usa.net>
2233
2234 * i386/udk.h (LINK_SPEC): Correct linker search path for
2235 system libraries.
2236
2237 Fri Jun 4 03:20:40 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
2238
2239 * sh.c (fixup_addr_diff_vecs): Emit braf reference label.
2240 (braf_label_ref_operand): Delete.
2241 * sh.h (PREDICATE_CODES): Remove braf_label_ref_operand.
2242 * sh.md (casesi_jump_2): Operand1 is now the inside of a
2243 label_ref, and has no predicate.
2244 The patten has a predicate to guard against invalid substitutions.
2245 (dummy_jump): Delete.
2246 (casesi): Update use of casesi_jump_2.
2247
2248 Thu Jun 3 07:48 1999 Bruce Korb <ddsinc09@ix.netcom.com>
2249
2250 *fixinc/inclhack.def(Io_Def_Quotes): corrected sed expression
2251 *fixinc/fixincl.x: regenerate
2252 *fixinc/inclhack.sh: regenerate
2253
2254 Thu Jun 3 02:15:07 1999 Jason Merrill <jason@yorick.cygnus.com>
2255
2256 * dwarf2out.c (add_incomplete_type): New fn.
2257 (gen_struct_or_union_type_die): Call it.
2258 (retry_incomplete_types): New fn.
2259 (dwarf2out_finish): Call it.
2260
2261 Thu Jun 3 01:19:03 1999 Jeffrey A Law (law@cygnus.com)
2262
2263 * gcse.c (insert_insn_end_bb): Correct placement of insns when the
2264 current block starts with a CODE_LABEL and ends with a CALL and
2265 we can not find all the argument setup instructions for the CALL.
2266
2267 Wed Jun 2 15:44:15 1999 Mark Mitchell <mark@codesourcery.com>
2268
2269 Revert this change:
2270 * fold-const.c (fold): STRIP_NOPS when deciding whether or not
2271 something is a candidate for optimize_bit_field_compare.
2272
2273 Wed Jun 2 21:53:05 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
2274
2275 * sh.h (CONST_OK_FOR_I, CONST_OK_FOR_L): Cast VALUE to HOST_WIDE_INT.
2276
2277 Wed Jun 2 12:25:55 1999 Richard Henderson <rth@cygnus.com>
2278
2279 * alpha.c (override_options): Thinko in last patch.
2280
2281 * alpha/osf.h (CPP_SUBTARGET_SPEC): Define.
2282 (LIB_SPEC): Recognize -pthread.
2283
2284 Wed Jun 2 08:42:55 1999 Nick Clifton <nickc@cygnus.com>
2285
2286 * config/arm/tcoff.h (USER_LABEL_PREFIX): Synchronise with
2287 definition in config/arm/coff.h
2288 * config/arm/coff.h: Add comment about USER_LABEL_PREFIX.
2289
2290 Wed Jun 2 07:07 1999 Bruce Korb <ddsinc09@ix.netcom.com>
2291
2292 * fixinc/fixincl.c(global def): Add FD_SHELL_SCRIPT to mark
2293 fixes that need "file=xxx\n" prepended before invocation
2294 (start_fixer - new): starting the fixer process is complex enough
2295 to warrent its own routine. It prepends the "file=xxx\n" stuff.
2296 (process): uses the new routine; omit usage of putenv()
2297 * fixinc/fixincl.tpl: mark shell scripts with FD_SHELL_SCRIPT
2298 * fixinc/fixincl.x: regenerate
2299
2300 Wed Jun 2 02:29:07 1999 Jeffrey A Law (law@cygnus.com)
2301
2302 * README, configure.in, gcc.1, gcc.texi: Update name (egcs -> gcc)
2303 and version #s (1.1 -> 2.96) as needed.
2304 * README.g77: Kill way out of date file in the toplevel directory.
2305
2306 Wed Jun 2 00:52:34 1999 David O'Brien <obrien@FreeBSD.org>
2307
2308 * configure.in (i[34567]86-*-freebsdelf): Don't include linux.h,
2309 i386/freebsd-elf.h no longer requires it. Instead include svr4.h.
2310 * configure: Rebuilt.
2311 * i386/freebsd-elf.h (DEFAULT_VTABLE_THUNKS): Define.
2312 (ASM_COMMENT_START, ASM_APP_ON, ASM_APP_OFF, SET_ASM_OP): Likewise.
2313 (PREFERRED_DEBUGGING_TYPE, WCHAR_UNSIGNED): Likewise.
2314 (SWITCH_TAKES_ARG): Likewise.
2315 * i386/freebsd.h: Remove FREEBSD_NATIVE support.
2316 * config/t-freebsd: Moved from config/i386/ so it can used for all
2317 FreeBSD targets.
2318
2319 Mon May 31 02:22:55 1999 Philippe De Muyter <phdm@macqel.be>
2320
2321 * m68k/x-mot3300 (XCFLAGS): Fixed to match stb.o, not f/stb.o.
2322
2323 Wed Jun 2 00:08:34 1999 Robert Lipe <robertlipe@usa.net>
2324
2325 * configure.in (i[34567]86-*-udk*): Install headers with cpio.
2326 * configure: Rebuilt.
2327
2328 Tue Jun 1 19:06:22 1999 David Edelsohn <edelsohn@gnu.org>
2329
2330 * rs6000/aix41.h (RS6000_CALL_GLUE): Define.
2331 * rs6000/aix43.h (RS6000_CALL_GLUE): Likewise.
2332 * rs6000/rs6000.c (rs6000_file_start): Use putc.
2333 (rs6000_output_load_toc_table): Same.
2334 (output_prolog, output_mi_thunk): Same.
2335 * rs6000/rs6000.h (SELECT_SECTION): Formatting.
2336 (ASM_GLOBALIZE_LABEL): Use putc.
2337
2338 Mon May 31 15:23:23 1999 Richard Henderson <rth@cygnus.com>
2339
2340 * alpha.md (reload_*_help): New patterns and splitters.
2341 (reload_*): Use them.
2342 (mov[qh]i): Likewise.
2343
2344 Mon May 31 11:48:07 1999 Mark Mitchell <mark@codesourcery.com>
2345
2346 * cccp.c (handle_directive): Handle backslash-newlines in quoted
2347 strings correctly.
2348
2349 Mon May 31 09:36:11 1999 Cort Dougan <cort@cs.nmt.edu>
2350
2351 * rs6000/linux.h (LINK_SPEC): Use emulation elf32ppclinux.
2352
2353 Mon May 31 11:40:20 EDT 1999 John Wehle (john@feith.com)
2354
2355 * flow.c (mark_regs_live_at_end, insn_dead_p,
2356 mark_set_1, mark_used_regs): Only give FRAME_POINTER_REGNUM
2357 and HARD_FRAME_POINTER_REGNUM special treatment if reload
2358 hasn't run or the frame pointer is needed.
2359 * haifa-sched.c (attach_deaths): Likewise.
2360 * sched.c (attach_deaths): Likewise.
2361
2362 Mon May 31 00:46:17 1999 Jeffrey A Law (law@cygnus.com)
2363
2364 * jump.c (jump_optimize_1): Only set CAN_REACH_END if
2365 calculate_can_reach_end returns nonzero.
2366
2367 * configure.in (native gas tests): Search for an assembler in the
2368 same manner that the installed compiler will.
2369 * configure: Rebuilt.
2370 * tm.texi (MD_EXEC_PREFIX): Note need to update configure.in too.
2371
2372 * alias.c (find_base_term): Improve handling of addresses
2373 constructed from binary operations.
2374
2375 Sun May 30 14:29:17 1999 Eric Raskin (ehr@listworks.com)
2376
2377 * dgux.h (STARTFILE_SPEC): Fix incorrectly matched curly-braces.
2378
2379 Sun May 30 14:19:13 1999 Jeffrey A Law (law@cygnus.com)
2380
2381 * function.h (cleanup_label, frame_offset): Declare.
2382 (tail_recursion_label, tail_recursion_reentry): Likewise.
2383 (arg_pointer_save_area, rtl_expr_chain): Likewise.
2384 * stmt.c (cleanup_label, frame_offset): Delete extern declarations.
2385 (tail_recursion_label, tail_recursion_reentry): Likewise.
2386 (arg_pointer_save_area, rtl_expr_chain): Likewise.
2387
2388 Sat May 29 19:08:10 1999 Philip Blundell <philb@gnu.org>
2389
2390 * config/arm/aout.h (ASM_OUTPUT_ALIGN): Only define if not already
2391 defined.
2392 * config/arm/elf.h (ASM_OUTPUT_ALIGN): Define.
2393 (MAX_OFILE_ALIGNMENT): Define.
2394
2395 Fri May 28 21:40 1999 Robert Lipe <robertlipe@usa.net>
2396
2397 * fixincl.c: Replace local include scheme with #includes of
2398 gansidecl.h and system.h.
2399 * procopen.c: Likewise.
2400 * server.c: Likewise.
2401
2402 Fri May 28 03:47:03 1999 Eric Raskin (ehr@listworks.com)
2403
2404 * i386/t-dgux (EXTRA_PARTS): Add crti.o
2405 (crti.o): Add build rule and dependencies.
2406 * fixinc/fixinc.dgux: Use modified _int_varargs.h
2407
2408 Fri May 28 03:41:02 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
2409
2410 * rs6000/sysv4.h (CC1_SPEC): Add support for -profile
2411 (LIB_LINUX_SPEC): Likewise.
2412 (LIB_LINUX_SPEC): Add support for -pthread
2413 (CPP_OS_LINUX_SPEC): Likewise.
2414 (CPP_SYSV_SPEC): Avoid redefinitions if both -fpic and -fPIC are
2415 specified.
2416
2417 Thu May 27 13:04:52 1999 H.J. Lu (hjl@gnu.org)
2418
2419 * i386.c (output_fp_cc0_set): Don't check the JUMP_INSN code for
2420 conditional move.
2421 (notice_update_cc, output_float_compare): Enable TARGET_CMOVE support.
2422 (output_float_compare, output_fp_cc0_set): Fix the FLOAT comparison
2423 for IEEE math and CC_FCOMI.
2424 (put_jump_code): No IEEE if CC_FCOMI is set.
2425
2426 1999-05-27 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2427
2428 * fold-const.c (fold_truthop): Make the field reference unsigned
2429 when converting a single bit compare.
2430
2431 Thu May 27 02:40:48 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
2432
2433 * loop.c (strength_reduce): Don't do biv->giv conversion on constants.
2434
2435 Thu May 27 02:09:27 1999 Jeffrey A Law (law@cygnus.com)
2436
2437 * varasm.c (STRIP_NAME_ENCODING): Remove default definition.
2438 * output.h (STRIP_NAME_ENCODING): Strip '*' like the old varasm
2439 version did.
2440
2441 * reload.c (push_reload): Do not call remove_address_replacements
2442 when presented with identical optional reloads.
2443
2444 Wed May 26 14:18:05 1999 Richard Henderson <rth@cygnus.com>
2445
2446 * alpha.h (MASK_FIX, TARGET_FIX): New.
2447 (MASK_*): Reorganize constants.
2448 (CPP_AM_FIX_SPEC): New.
2449 (TARGET_SWITCHES): Add FIX.
2450 (EXTRA_SPECS): Likewise.
2451 (CPP_CPU_EV6_SPEC): Use FIX, not CIX.
2452 (SECONDARY_MEMORY_NEEDED): Likewise.
2453 (REGISTER_MOVE_COST): Likewise.
2454 * alpha.c (override_options): Add FIX support. Always use
2455 ALPHA_TP_PROG for ev6.
2456 * alpha.md (sqrt and mov[sd]i patterns): Use FIX, not CIX.
2457 * alpha/elf.h (ASM_FILE_START): Look at FIX too.
2458 * configure.in (target_cpu_default2) [ev6]: Use FIX, not CIX.
2459
2460 Wed May 26 09:53:05 1999 Mark Mitchell <mark@codesourcery.com>
2461
2462 * fold-const.c (fold): STRIP_NOPS when deciding whether or not
2463 something is a candidate for optimize_bit_field_compare.
2464
2465 Wed May 26 09:40:02 1999 Mark Mitchell <mark@codesourcery.com>
2466
2467 * gcc.texi (Passes): Document branch-shortening.
2468 * invoke.texi (Debugging Options): Document the fact that `-dp'
2469 outputs length information for instructions.
2470
2471 Wed May 26 08:49:31 1999 Nick Clifton <nickc@cygnus.com>
2472
2473 * flow.c: Revert previous delta.
2474
2475 Wed May 26 06:05:10 1999 Nick Clifton <nickc@cygnus.com>
2476
2477 * flow.c (insn_dead_p): Check against frame_pointer_rtx not
2478 FRAME_POINTER_REGNUM.
2479 (mark_set_1): Ditto.
2480 (mark_used_regs): Ditto.
2481
2482 Wed May 26 02:19:31 1999 Philip Blundell <pb@nexus.co.uk>
2483
2484 * arm.h (NEED_PLT_GOT): Fix mistake in last change.
2485 (GOT_PCREL): New macro. Define to 1 if not already defined.
2486 * arm/elf.h (GOT_PCREL): Define to 0.
2487 * arm.c (arm_finalize_pic): Take into account the setting of
2488 GOT_PCREL.
2489
2490 Tue May 25 14:06:06 1999 Jeffrey A Law (law@cygnus.com)
2491
2492 * output.h (STRIP_NAME_ENCODING): Provide default definition.
2493 * dwarf2out.c (ASM_NAME_TO_STRING): Use STRIP_NAME_ENCODING.
2494
2495 * flow.c (mark_set_1): Do not record BLKmode stores as dead
2496 store elimination candidates.
2497
2498 Tue May 25 08:55:57 1999 Gavin Romig-Koch <gavin@cygnus.com>
2499
2500 * config/mips/mips.h (ASM_OUTPUT_DOUBLE_INT) : Use 'dword' if
2501 TARGET_GAS.
2502
2503 Mon May 24 20:30:08 1999 Jim Wilson <wilson@cygnus.com>
2504
2505 * configure.in (rs6000-ibm-aix4.[12]*): Delete use of aix41-gld.h.
2506 Add use of x-aix41-gld.
2507
2508 Mon May 24 16:44:09 1999 Jakub Jelinek <jj@ultra.linux.cz>
2509
2510 * sparc/linux64.h (ASM_OUTPUT_CONSTRUCTOR): Define.
2511 (ASM_OUTPUT_DESTRUCTOR): Define.
2512
2513 Mon May 24 14:35:24 1999 Jeffrey A Law (law@cygnus.com)
2514
2515 * loop.c (strength_reduce): Do not clear NOT_EVERY_ITERATION at the
2516 last CODE_LABEL in a loop if we have previously passed a jump
2517 to the top of the loop.
2518
2519 Mon May 24 07:56:29 1999 Nick Clifton <nickc@cygnus.com>
2520
2521 * config/arm/arm.h (OUTPUT_INT_ADDR_CONST): Fix blunder made when
2522 applying Philip's patch.
2523
2524 Mon May 24 01:02:12 1999 Mark Mitchell <mark@codesourcery.com>
2525
2526 * stmt.c (expand_end_bindings): Ignore any elements of VARS that
2527 are not VAR_DECLs.
2528
2529 Sun May 23 20:31:16 1999 Jeffrey A Law (law@cygnus.com)
2530
2531 * loop.c (strength_reduce): Grow reg_single_usage as needed.
2532
2533 Sun May 23 10:13:20 1999 David O'Brien <obrien@FreeBSD.org>
2534
2535 * i386/freebsd-elf.h (LINK_SPEC): Change -static to -Bstatic.
2536 Also remove a useless comment.
2537
2538 Sun May 23 10:05:23 1999 Jerry Quinn <jquinn@nortelnetworks.com>
2539
2540 * pa.md (negdf2,negsf2): Use fneg instead of fsub on pa 2.0.
2541
2542 Sat May 22 21:02:06 1999 David Edelsohn <edelsohn@gnu.org>
2543
2544 * collect2.c (main): Only generate import or export file and add
2545 to link arguments if non-empty. Use xmalloc not alloca.
2546 (write_{export,import}_file): Delete.
2547 (write_aix_file): New function.
2548 (locatelib): Use xmalloc not malloc.
2549 (GCC_OK_SYMBOL): Do not check type if aix64.
2550
2551 Sat May 22 09:35:51 1999 Philip Blundell <pb@nexus.co.uk>
2552
2553 Based on patch by Scott Bambrough and Pat Beirne:
2554 * config/arm/arm.c (making_const_table): New variable.
2555 * config/arm/arm.h (making_const_table): Declare.
2556 (OUTPUT_INT_ADDR_CONST): Mark symbols as position independent if
2557 appropriate.
2558 * config/arm/arm.md (consttable_4, consttable_8, consttable_end):
2559 Keep track of when we are building the constant table.
2560
2561 Sat May 22 09:34:22 1999 Philip Blundell <pb@nexus.co.uk>
2562
2563 * config/arm/arm.c (arm_override_options): Fix erroneous warning
2564 message.
2565
2566 Sat May 22 09:06:33 1999 Nick Clifton <nickc@cygnus.com>
2567
2568 * config/arm/arm.h (NEED_PLT_GOT): Only define if not already
2569 defined.
2570
2571 Sat May 22 07:17:05 1999 Nick Clifton <nickc@cygnus.com>
2572
2573 * tm.texi (FUNCTION_ARG): Correct description of a stack element
2574 in a PARALLEL.
2575
2576 Sat May 22 01:27:49 1999 Mark Mitchell <mark@codesourcery.com>
2577
2578 * expr.h (lang_expand_constant): Guard with #ifdef TREE_CODE.
2579
2580 Fri May 21 21:19:02 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
2581
2582 * rs6000.c (output_mi_thunk): Enable full support again.
2583
2584 Fri May 21 20:09:52 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
2585
2586 * sh.h (BRANCH_COST): Define.
2587
2588 Thu May 20 10:00:42 1999 Stephen L Moshier <moshier@world.std.com>
2589
2590 * Makefile.in (GCC_FOR_TARGET): Add -I$(build_tooldir)/include.
2591
2592 Thu May 20 09:58:57 1999 Jan Hubicka <hubicka@freesoft.cz>
2593
2594 * function.c (assign_stack_local): Align stack slot propertly.
2595 (assign_outer_stack_local): Likewise.
2596
2597 Thu May 20 10:38:43 1999 Mark Mitchell <mark@codesourcery.com>
2598
2599 * expr.h (lang_expand_constant): Declare.
2600 * toplev.c (lang_expand_constant): Define it.
2601 * varasm.c (output_constant): Use it.
2602
2603 Thu May 20 11:28:53 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2604
2605 * optabs.c (expand_cmplxdiv_straight, expand_cmplxdiv_wide):
2606 Change function definitions to K&R style.
2607
2608 Thu May 20 08:16:39 1999 Bruce Korb <ddsinc09@ix.netcom.com>
2609
2610 * fixinc/fixincl.c: We must not ignore SIGCLD now.
2611
2612 Thu May 20 07:06:39 1999 Alexandre Oliva <aoliva@acm.org>
2613
2614 * fixinc/Makefile.in(gnu-regex.o): add $(INCLUDES) to compile options
2615 * fixinc/fixincl.c(wait_for_pid): K&R-ify arguments
2616 (several places): omit static initialization
2617 (process): use single fd, since only the read fd is used
2618 * fixinc/gnu-regex.c: define 'const' away, if not supported
2619 * fixinc/procopen.c(several places): omit static initialization
2620 * fixinc/server.c: define 'volitile' away, if not supported
2621
2622 1999-05-20 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
2623
2624 * config/dbxcoff.h (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Use
2625 asm_fprintf and %L to generate the label name.
2626 * config/dbxelf.h (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Likewise.
2627 (ASM_OUTPUT_SOURCE_LINE): Correct generation of internal labels.
2628
2629 Thu May 20 01:40:55 1999 Jeffrey A Law (law@cygnus.com)
2630
2631 * jump.c (can_reverse_comparison_p): Do not abort if the comparison
2632 insn for a conditional jump can not be found.
2633
2634 Wed May 19 23:58:58 1999 Jeffrey A Law (law@cygnus.com)
2635
2636 * mips.h (ENCODE_SECTION_INFO): Do not perform GP optimizations
2637 on variables in specific sections other than .sbss and .sdata.
2638
2639 Wed May 19 03:56:56 1999 Mark Mitchell <mark@codesourcery.com>
2640
2641 * stmt.c (expand_return): Call start_cleanup_deferral and
2642 end_cleanup_deferral around conditional code.
2643
2644 Wed May 19 08:40:08 1999 Bruce Korb <ddsinc09@ix.netcom.com>
2645
2646 * fixinc/fixincl.tpl: Avoid depending on ANSI C features for
2647 filename lists. Utilizes new "krstr" AutoGen function.
2648 * fixinc/fixincl.x: Rebuilt.
2649
2650 Wed May 19 02:47:11 1999 Jan Hubicka (hubicka@freesoft.cz)
2651
2652 * i386.c (output_float_compare): Avoid GNU-C extensions.
2653
2654 Wed May 19 00:34:40 1999 Jeffrey A Law (law@cygnus.com)
2655
2656 * version.c: Bump to distinguish mainline tree from the
2657 gcc-2.95 branch.
2658
2659 See ChangeLog.1 for earlier changes.
2660
2661 Local Variables:
2662 add-log-time-format: current-time-string
2663 End: