OSDN Git Service

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