OSDN Git Service

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