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