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