OSDN Git Service

stdc_0_in_system_headers_test must return "FIX"
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2001-05-26  Bruce Korb  <bkorb@gnu.org>
2
3         * fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
4         when fixincl is operating in test mode
5
6 2001-05-26  Philip Blundell  <philb@gnu.org>
7
8         * config/c4x/c4x-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
9         * config/i960/i960-protos.h: Likewise.
10         * config/i370/i370-protos.h: Likewise.
11         * config/h8300/h8300-protos.h: Likewise,
12         * config/sh/sh-protos.h: Likewise.
13         * config/v850/v850-protos.h: Likewise.
14
15 2001-05-26  Philip Blundell  <philb@gnu.org>
16
17         * config/arm/arm-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
18
19 2001-05-25  Zack Weinberg  <zackw@stanford.edu>
20
21         * toplev.c (debug_args, f_options, W_options): Mark
22         descriptions for translation.
23         (display_help): Translate descriptions on output.
24
25         * cp/lang-options.h, f/lang-options.h, java/lang-options.h,
26         objc/lang-options.h: Mark descriptions for translation.
27
28         * aclocal.m4: Quote final argument of patsubst.  Use
29         3-argument form of AC_DEFINE.  Restore quotes to [] while
30         using AC_FD_CC.
31         * configure.in: Remove unnecessary changequote calls.
32         * configure, config.in: Regenerate.
33
34 2001-05-25  Sam TH  <sam@uchicago.edu>
35
36         * basic-block.h: Fix header include guards.
37         * bitmap.h c-dump.h c-lex.h c-pragma.h c-tree.h collect2.h
38         cppdefault.h cpphash.h cpplib.h defaults.h diagnostic.h errors.h
39         except.h flags.h gcc.h gcov-io.h graph.h gstab.h gthr-aix.h
40         gthr-dce.h gthr-posix.h gthr-rtems.h gthr-single.h gthr-solaris.h
41         gthr-vxworks.h gthr-win32.h gthr.h hard-reg-set.h hwint.h
42         insn-addr.h libgcc2.h mbchar.h mkdeps.h params.h prefix.h real.h
43         rtl.h sbitmap.h system.h timevar.h toplev.h tradcpp.h tsystem.h
44         varray.h version.h: Likewise.
45         * config/dbxelf.h config/fp-bit.h config/arm/arm-protos.h
46         config/arm/arm.h config/c4x/c4x-protos.h
47         config/h8300/h8300-protos.h config/h8300/h8300.h
48         config/i370/i370-protos.h config/i370/i370.h
49         config/i960/i960-protos.h config/mcore/mcore.h
50         config/mips/mips-protos.h config/sh/sh-protos.h config/sh/sh.h
51         config/v850/v850-protos.h config/v850/v850.h: Likewise.
52         * fixinc/fixlib.h fixinc/server.h: Likewise.    
53
54 2001-05-25  Stacey Sheldon  <ssheldon@Catena.com>
55
56         * config/arc/initfini.c (.init): Fix typo.
57
58 2001-05-25  Geoffrey Keating  <geoffk@redhat.com>
59
60         * config/rs6000/rs6000.md (fseldfsf4): Correct mode of operand 4.
61
62 2001-05-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
63
64         * i386/i386.h (CC1_CPU_SPEC): Clarify -m486 etc deprecation messages.
65
66 2001-05-25  Richard Henderson  <rth@redhat.com>
67
68         * libgcc-std.ver: Export XFmode and TFmode versions of symbols.
69
70 2001-05-25  Richard Henderson  <rth@redhat.com>
71
72         * config.gcc (all gnu and linux): Use t-slibgcc-elf-ver with t-linux.
73         (i386-*-solaris2): Use t-slibgcc-elf-ver or t-slibgcc-sld.
74         (sparc*-*-solaris2): Likewise.
75         * config/t-linux: Remove shared libgcc macros.
76         * config/t-slibgcc-elf-ver: Move from sparc/t-slibgcc.
77         * config/t-slibgcc-sld: Move from sparc/t-slibgcc-sld.
78
79 2001-05-25  Loren J. Rittle  <ljrittle@acm.org>
80
81         * config.gcc (*-*-freebsd*): Report bad configuration.
82
83 2001-05-25  David Edelsohn  <edelsohn@gnu.org>
84
85         * xcoffout.h (DBX_OUTPUT_GCC_MARKER): Do not emit any marker.
86
87         * config/rs6000/aix.h (USER_LABEL_PREFIX): AIX symbols do not have
88         any prefix.
89         (ASM_OUTPUT_LABELREF): Delete.
90
91 2001-05-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
92
93         * fixinc/inclhack.def (strict_ansi_not, strict_ansi_not_ctd,
94         strict_ansi_only): Don't run if stdc_0_in_system_headers.
95         * fixinc/fixincl.x: Regenerate.
96         * fixinc/fixtests.c (stdc_0_in_system_headers_test): New function.
97         (FIX_TEST_TABLE): Declare it.
98         * fixinc/fixlib.h: Include config.h.
99
100 2001-05-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
101
102         * fixinc/inclhack.def (alpha___assert): Change char * args to
103         const char * on Tru64 UNIX to avoid excessive warnings from
104         assert.h.
105         * fixinc/fixincl.x: Regenerate.
106
107 2001-05-25  Geoff Keating  <geoffk@redhat.com>
108
109         * dbxout.c (dbxout_symbol): Invert previous patch, which was
110         outputting a tag only for variable-size records.
111
112 2001-05-25  Jeff Knaggs  <jknaggs@redhat.com>
113
114         * config/alpha/alpha.md (movtf_internal): Use reg_overlap_mentioned_p
115         instead of rtx_equal_p for early clobber test.
116
117 2001-05-26  Mark Mitchell <mark@codesourcery.com>
118
119         * builtins.def: Encode additional information, such as names and
120         types, here.
121         * builtin-types.def: New file.
122         * builtins.c (built_in_names): Adjust use of DEF_BUILTIN.
123         (built_in_decls): Likewise.  Don't explicitly initialize global
124         data to NULL.
125         (expand_builtin_mathfn): Handle float and long double variants of
126         math builtins.
127         (expand_builtin): Likewise.
128         * c-common.c (c_common_nodes_and_builtins): Make it table-driven.
129         (expand_tree_builtin): Handle long, long long, float, and long
130         double variants of math functions.
131         * c-common.h (c_tree_index): Remove some unused nodes.
132         (void_ftype): Remove.
133         (void_type_ptr): Likewise.
134         (int_ftype_int): Likewise.
135         (ptr_ftype_sizetype): Likewise.
136         * c-decl.c (init_decl_processing): Remove creation of DWARF
137         builtins.
138         * defaults.h (MD_INIT_BUILTINS): Provide default definition.
139         * tree.h (built_in_function): Adjust definition of DEF_BUILTIN.
140         * Makefile.in (c-common.o): Depend on builtin-types.def.
141         
142 2001-05-25  Dale Johannesen  <dalej@apple.com>
143
144         * config/rs6000/t-darwin: Fix dependencies for darwin.o.
145
146 2001-05-25  Neil Booth  <neil@daikokuya.demon.co.uk>
147
148         * c-parse.in (notype_initdcl): Remove redundant line.
149
150 2001-05-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
151
152         * aclocal.m4: Fixed typo.
153         (gcc_AC_HEADER_STDBOOL): Define.
154         (gcc_AC_C__BOOL): Define.
155         * configure.in: Use them.
156         (AC_CHECK_HEADERS): Remove stdbool.h
157         * configure, config.in: Regenerate.
158
159 2001-05-25  Richard Henderson  <rth@redhat.com>
160
161         * function.c (expand_function_start): Don't abort on PARALLEL
162         returns from hard_function_value.
163
164 2001-05-25  Richard Henderson  <rth@redhat.com>
165
166         * config/i386/i386.md: Revert previous change.  Do not apply
167         the peephole if the components do not die after the sequence.
168
169 2001-05-25  Joseph S. Myers  <jsm28@cam.ac.uk>
170
171         * c-parse.in (array_declarator): New.  Handle C99 constructs.
172         Don't restrict [*] declarators to C only.
173         (after_type_declarator, parm_declarator_starttypename,
174         parm_declarator_nostarttypename, notype_declarator,
175         direct_absdcl1): Use it.
176         * c-decl.c (build_array_declarator, set_array_declarator_type):
177         New functions.  Warn that [*] isn't properly implemented; pedwarn
178         for [*] outside C99 mode if pedantic rather than giving a hard
179         error.
180         (grokdeclarator): Handle static and type qualifiers in parameter
181         array declarators.
182         * c-tree.h (build_array_declarator, set_array_declarator_type):
183         Declare.
184         * extend.texi (Attribute Syntax): Document attributes in parameter
185         array declarators.
186
187 2001-05-25  Mark Mitchell  <mark@codesourcery.com>
188
189         * config/i386/i386.md: Make sure cmpstr peepholes do not 
190         affect liveness information.
191
192 2001-05-24  Mark Mitchell  <mark@codesourcery.com>
193
194         * c-typeck.c (digest_init): Issue error messages about 
195         invalid constants, not warnings.
196
197 2001-05-24  Mark Mitchell  <mark@codesourcery.com>
198
199         * invoke.texi (-fno-builtin): Document that this is always on
200         in C++.
201
202 2001-05-24  Philip Blundell  <philb@gnu.org>
203
204         * doc/install.texi (arm*-*-linux-gnu): Say that binutils 2.10 is
205         required.
206
207 2001-05-24  Philip Blundell  <philb@gnu.org>
208
209         * config/arm/arm.c (output_return_instruction): Correctly handle
210         interworking and interrupt functions.
211
212 2001-05-24  Philip Blundell  <philb@gnu.org>
213
214         * config/arm/arm.h (TARGET_SWITCHES): Correct misleading help for
215         -m{no-}sched-prolog.  Fix typos and improve formatting.
216
217 2001-05-24  Philip Blundell  <philb@gnu.org>
218
219         * invoke.texi (ARM Options): Improve wording slightly.  Add
220         documentation for more options, including those for Thumb mode.
221         Don't mention options that don't exist or are unimplemented.
222         (Thumb Options): Delete; merged into above section.
223
224 2001-05-24  Geoff Keating  <geoffk@redhat.com>
225
226         * config/rs6000/linux.h (SIGNAL_FRAMESIZE): Define.
227         (MD_FALLBACK_FRAME_STATE_FOR): Use it.
228
229 Thu May 24 19:47:19 CEST 2001  Jan Hubicka  <jh@suse.cz>
230
231         * simplify-rtx.c (simplify_subreg): Fix CONCAT simplification;
232         fix hard register simplification.
233
234 Thu May 24 00:15:17 2001  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
235
236         * sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Add all of CPP_SPEC instead
237         of just copying CPP_CPU_SPEC.
238
239 Thu May 24 15:56:48 CEST 2001  Jan Hubicka  <jh@suse.cz>
240
241         * i386.c (incdec_operand): Accept only 1 and -1.
242
243 2001-05-23  Kelley Cook  <kelley.cook@home.com>
244
245         * Makefile.in: Move many of the *_H definitions eariler in the
246         file, so that rules in t-* files that use them for
247         dependencies will work in a parallel build.
248         * config/i386/t-cygwin (winnt.o): Depend on $(CONFIG_H).
249
250 2001-05-23  Richard Henderson <rth@redhat.com>
251
252         * integrate.c (expand_inline_function): Handle CONCAT DECL_RESULT.
253
254 2001-05-23  Neil Booth  <neil@daikokuya.demon.co.uk>
255
256         * cpp.texi: Update for handling of charconsts.
257         * cpplex.c (maybe_read_ucs): Don't accept D800-DFFF.  Update
258         diagnostics.  Skip to the end if the UCS is too short.
259         (cpp_interpret_charconst): Long charconsts issue a warning
260         not an error.
261
262 2001-05-23  Richard Henderson  <rth@redhat.com>
263
264         * doc/install.texi (alpha-linux): Require binutils 2.11.
265
266 2001-05-23  Neil Booth  <neil@daikokuya.demon.co.uk>
267
268         * c-lex.c (read_escape, read_ucs): Delete.
269         (lex_string): Use cpp_parse_escape.
270         * cpplex.c (read_ucs): Rename maybe_read_ucs.  Do nothing
271         if not C++ or not C99.  Warn if traditional.
272         (parse_escape): Rename cpp_parse_escape.  Make the bitmask
273         unsigned.  Warn for out-of-range escape sequences here.
274         Update to use maybe_read_ucs.
275         (cpp_interpret_charconst):  Don't warn here.
276         * cpplib.h (cpp_parse_escape): New exported function.
277
278 2001-05-23  Joseph S. Myers  <jsm28@cam.ac.uk>
279
280         * extend.texi (Attribute Syntax): Clarify application of
281         attributes to parameters declared as functions or arrays.
282
283 2001-05-23  Jason Merrill  <jason_merrill@redhat.com>
284
285         * dbxout.c (dbxout_type_methods): Do still group methods by name.
286
287 2001-05-23  Zack Weinberg  <zackw@stanford.edu>
288
289         * diagnostic.c (vnotice): Kill.
290         (fnotice): Call vfprintf directly.
291         (diagnostic_for_decl, output_do_verbatim, output_verbatim,
292         verbatim, set_diagnostic_context): Rename string argument to
293         indicate that it is run through gettext.
294         (vbuild_message_string, build_message_string, output_do_printf):
295         Rename string argument to indicate that it is NOT run through
296         gettext.
297         (output_printf, diagnostic_for_decl, fatal_io_error, sorry,
298         output_do_verbatim, set_diagnostic_context, fnotice, _fatal_insn):
299         Run msgid argument through gettext.
300         (default_print_error_function): Run constant strings through
301         gettext when nothing else will.
302         (fatal_error, internal_error, error_recursion): Use fnotice.
303         Present complete sentences to gettext.
304
305 2001-05-23  Mark Mitchell  <mark@codesourcery.com>
306
307         * jump.c (mark_jump_label): Fix thinko in 2001-05-19 change.
308
309 2001-05-23  Richard Henderson  <rth@redhat.com>
310
311         * function.c (expand_function_start): Always use a pseudo
312         for the function result value.
313
314 2001-05-22  Richard Henderson  <rth@redhat.com>
315
316         * config/mips/iris6.h (EH_FRAME_SECTION_ASM_OP): Give the
317         section pointer alignment.
318
319         * doc/install.texi (alpha-linux): Require binutils >= 2.10.
320
321         * unwind-dw2-fde.c (__deregister_frame_info): Stringize use
322         of __USER_LABEL_PREFIX__.
323
324 2001-05-22  Richard Henderson  <rth@redhat.com>
325
326         * unwind-dw2-fde.c (__deregister_frame_info): Stubbify in favour of...
327         (__deregister_frame_info_bases): New.
328         * unwind-dw2-fde.h: Declare it.
329         * libgcc-std.ver: Export it.
330         * crtstuff.c (__do_global_dtors_aux): Call it if we would have
331         called __register_frame_info_bases.
332
333 2001-05-22  Loren J. Rittle  <ljrittle@acm.org>
334
335         * config/freebsd.h (FBSD_CPP_PREDEFINES): Use #endif/#if pair
336         instead of #elif (which is OK for this case but not in general).
337
338 2001-05-22  Andrew MacLeod  <amacleod@redhat.com>
339
340         * builtins.c (expand_builtin_longjmp): A longjmp can be a call too.
341         * config/ia64/ia64.md (nonlocal_goto): Reverse label and frame pointer
342         parameters to __ia64_nonlocal_goto. Flag as NO_RETURN.
343         * config/ia64/ia64.c (ia64_expand_epilogue): Make sure we are issuing 
344         "r2" to the assembly file. Only issue allocs with non-zero parameters.
345
346 2001-05-22  Loren J. Rittle  <ljrittle@acm.org>
347             David O'Brien  <obrien@freebsd.org>
348
349         * config/freebsd.h (LIB_SPEC): Key the exact setting to
350         configure-time options and target version of FreeBSD.  Set-up
351         to match architectural change in threading support.  Correctly
352         report when -pthread option is not supported by configure-time
353         options.
354         (FBSD_CPP_PREDEFINES): Move from architecture-specific files
355         and extend to encode target version number in run-time setting
356         of __FreeBSD__ macro to match the system compiler.
357         (CPP_PREDEFINES): Likewise.
358         (PREFERRED_DEBUGGING_TYPE): Change to DWARF2_DEBUG.
359
360         * config/alpha/freebsd.h (CPP_PREDEFINES): Moved to common freebsd.h.
361         * config/i386/freebsd.h (CPP_PREDEFINES): Likewise.
362
363 2001-05-22  Loren J. Rittle  <ljrittle@acm.org>
364             David O'Brien  <obrien@freebsd.org>
365
366         * config.gcc (the unlabeled system switch statement): Add
367         generic configuration section to handle *-*-freebsd*.  Also,
368         to match the system compiler, default to threading support (it
369         may be disabled with the standard --disable-threads
370         configuration-time switch).
371         (i[34567]86-*-freebsd* in machine-specific section): Use it.
372         (alpha*-*-freebsd* in machine-specific section): Likewise.
373
374         * config/freebsd3.h: New file to expose FBSD_MAJOR macro (3).
375         * config/freebsd4.h: New file to expose FBSD_MAJOR macro (4).
376         * config/freebsd5.h: New file to expose FBSD_MAJOR macro (5).
377         * config/freebsd6.h: New file to expose FBSD_MAJOR macro (6).
378         * config/freebsd-nthr.h: New file to expose FBSD_NO_THREADS macro.
379
380 2001-05-22  Loren J. Rittle  <ljrittle@acm.org>
381             David O'Brien  <obrien@freebsd.org>
382
383         * config/t-freebsd (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
384         * config/t-freebsd-thread (TARGET_LIBGCC2_CFLAGS): Add
385         -pthread instead setting macro.
386
387 2001-05-22  Richard Henderson  <rth@redhat.com>
388
389         * crtstuff.c (__register_frame_info_bases): Declare.
390         (frame_dummy): Use it, if CRT_GET_RFIB_TEXT or CRT_GET_RFIB_DATA.
391         (__do_global_dtors_aux, __do_global_dtors): Streamline.
392
393         * config/i386/linux.h (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
394         (CRT_GET_RFIB_DATA): New.
395         * config/i386/sysv4.h: Likewise.
396         * config/i386/sco5.h: Likewise.
397         (ASM_PREFERRED_EH_DATA_FORMAT): New.
398
399 2001-05-22  Richard Henderson  <rth@redhat.com>
400
401         * rtl.c (read_string): Break out from ...
402         (read_rtx): ... here.
403
404 2001-05-22  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
405
406         * doc/install.texi (Specific): Remove a bogus and duplicate part
407         copied from the end of the document.
408
409 2001-05-22  Bernd Schmidt  <bernds@redhat.com>
410
411         * Makefile.in (LIBGCC_DEPS): Correct LIB1ASMSRC dependency.
412
413 2001-05-22  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
414
415         * install.texi: Remove obsolete information on SunOS as well as
416         i386-sun-sunos4, i860-intel-osf1, and powerpcle-*-solaris2*.
417         (Installing GNU CC on the Sun): Remove section.
418
419 2001-05-22  Alexandre Oliva  <aoliva@redhat.com>
420
421         * cppfiles.c (remove_component_p): Don't assume lstat/stat will
422         keep errno unchanged on success.
423
424 2001-05-22  Joseph S. Myers  <jsm28@cam.ac.uk>
425
426         * c-lex.c (lex_number): If pedantic and not C99, pedwarn exactly
427         once for hexadecimal floats, whether or not they contain a decimal
428         point.  Don't let the setting of pedantic otherwise affect the
429         parsing of hexadecimal floats.
430
431 2001-05-22  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
432
433         * README.ACORN: Remove obsolete file.
434
435 2001-05-22  Jan Hubicka  <jh@suse.cz>
436
437         * combine.c (gen_binary): Use swap_commutative_operands_p
438         (simplify_comparison): Likewise.
439         * expmed.c (emit_store_flag): Likewise.
440         * expr.c (compare_from_rtx): Likewise.
441         (do_compare_rtx_and_jump): Likewise.
442         * optabs.c (emit_cmp_and_jump_insn): Revert last patch; abort
443         if not emitting a branch and operands want swapping.
444
445 2001-05-22  Neil Booth  <neil@daikokuya.demon.co.uk>
446
447         * c-lex.c (c_lex): Just cast cpp's hashnode to gcc's one.
448         * stringpool.c: (IS_FE_IDENT, make_identifier): Delete.
449         (maybe_get_identifier): Update.
450         * tree.h (make_identifier): Delete.
451
452 2001-05-21  Richard Henderson  <rth@redhat.com>
453
454         * combine.c (subst): Do not substitute for a register as
455         a destination subreg/strict_low_part/zero_extract.
456
457         * combine.c (simplify_comparison): Update op1 after constant
458         extension.
459         * recog.c (const_int_operand): Accept only constants valid
460         for the given mode.
461         * genrecog.c: Update comments wrt const_int_operand.
462
463         * emit-rtl.c (init_emit_once): Zero unused memory in a
464         CONST_DOUBLE.
465
466 2001-05-21  Mark Mitchell  <mark@codesourcery.com>
467
468         * tree.h (type_num_arguments): Declare it.
469         * tree.c (type_num_arguments): New function.
470
471 2001-05-21  Richard Henderson  <rth@redhat.com>
472
473         * dwarf2out.c (current_funcdef_number): Move outside dwarf2
474         conditional ifdef.
475
476 2001-05-21  Geoff Keating  <geoffk@redhat.com>
477
478         * config/rs6000/rs6000.md (maxsf3): Use rs6000_emit_minmax.
479         (maxsf3+1): Delete.
480         (minsf3): Use rs6000_emit_minmax.
481         (minsf3+1): Generalize to handle both SMIN and SMAX.  Use
482         rs6000_emit_minmax.
483         (movsfcc): Use rs6000_emit_cmove.
484         (fselsfsf4): Don't compare a CONST_INT with a floating-point value.
485         Don't generate emit_fselsfsf4.
486         (fseldfsf4): Likewise.
487         (maxdf3): Use rs6000_emit_minmax.
488         (maxdf3+1): Delete.
489         (mindf3): Use rs6000_emit_minmax.
490         (mindf3+1): Generalize to handle both SMIN and SMAX.  Use
491         rs6000_emit_minmax.
492         (movdfcc): Use rs6000_emit_cmove.
493         (fseldfdf4): Don't compare a CONST_INT with a floating-point value.
494         Don't generate emit_fselsfsf4.
495         (fselsfdf4): Likewise.
496         * config/rs6000/rs6000.c (zero_fp_constant): New predicate.
497         (min_max_operator): New predicate.
498         (rs6000_emit_cmove): New function.
499         (rs6000_emit_minmax): New function.
500         * config/rs6000/rs6000-protos.h: Prototype new functions.
501         * config/rs6000/rs6000.h (PREDICATE_CODES): Add zero_fp_constant
502         and min_max_operator.
503
504         * config/rs6000/rs6000.c (output_cbranch): Handle all
505         conditional types in the switch statement.
506
507 2001-05-21  Mark Mitchell  <mark@codesourcery.com>
508
509         * c-decl.c (finish_decl): Don't set DECL_C_HARD_REGISTER for
510         non-register variables.
511         * extend.texi: Document that asm-specifications do not make sense
512         for non-static local variables.
513
514 2001-05-21  Jason Merrill  <jason_merrill@redhat.com>
515
516         * dbxout.c (MINIMAL_DEBUG, flag_minimal_debug): Lose.
517         (dbxout_type_fields): Lose minimal_debug support.
518         (dbxout_type_methods, dbxout_type): Likewise.
519
520 2001-05-17  Andrew Haley  <aph@redhat.com>
521
522         * config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
523
524 2001-05-21  Richard Henderson  <rth@redhat.com>
525
526         * dwarf2out.c (DEBUG_FRAME_SECTION): Rename from FRAME_SECTION.
527         Update all users.
528
529 2001-05-20  Richard Henderson  <rth@redhat.com>
530
531         * dwarf2out.c (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
532         DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_PUBNAMES_SECTION,
533         DEBUG_STR_SECTION): Rename from s/DEBUG_//.  Update all users.
534         * dwarfout.c (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
535         DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION):
536         Likewise.
537         * config/mips/iris6.h (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
538         DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION,
539         DEBUG_FRAME_SECTION, DEBUG_ABBREV_SECTION): Rename as above.
540         (DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
541         * config/ia64/ia64.h (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
542         DEBUG_PUBNAMES_SECTION): Rename as above.
543         (DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
544
545 2001-05-20  Richard Henderson  <rth@redhat.com>
546
547         * optabs.c (emit_cmp_and_jump_insns): Don't swap commutative
548         operands unless the operation is commutative.
549
550 2001-05-20  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
551
552         * fold-const.c (tree_expr_nonnegative_p): Detect more non-negative
553         cases.
554
555 2001-05-21  Joseph S. Myers  <jsm28@cam.ac.uk>
556
557         * extend.texi: Clarify documentation of extensions included in ISO
558         C99.  Prefer C99 terminology and syntax to old GNU terminology and
559         syntax.  Add more index entries.  Document mixed declarations and
560         code as an extension in C89 mode.  Warn about future changes to
561         semantics of inline functions.  Fixes PR other/930.
562
563 Sun May 20 16:39:24 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
564
565         * expr.c (expand_expr, case ARRAY_REF): Don't fold constant
566         access if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
567         (expand_expr, case COMPONENT_REF): Do copy if misaligned even
568         if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
569
570         * stmt.c (expand_decl): Set mode, alignment, and sizes for CONST_DECL.
571
572 2001-05-20  Richard Henderson  <rth@redhat.com>
573
574         * sched-deps.c (sched_analyze_insn): Force volatile memory reads
575         to be output before a branch.
576
577 2001-05-20  Richard Henderson  <rth@redhat.com>
578
579         * Makefile.in (dwarf2asm.o): Depend on $(TREE_H).
580
581 2001-05-20  Richard Henderson  <rth@redhat.com>
582
583         * config/i386/att.h (ASM_SHORT, ASM_LONG): Add trailing \t.
584         (ASM_DOUBLE): Remove.
585         * config/i386/bsd.h, config/i386/sco5.h: Likewise.
586         * config/i386/sun386.h: Likewise.
587
588         * config/i386/i386.h (UNALIGNED_SHORT_ASM_OP): New.
589         (UNALIGNED_INT_ASM_OP, INT_ASM_OP): New.
590         
591         * config/i386/cygwin.h (INT_ASM_OP): Remove.
592         * config/i386/freebsd-aout.h, config/i386/i386-aout.h: Likewise.
593         * config/i386/i386-coff.h, config/i386/i386-interix.h: Likewise.
594         * config/i386/netbsd.h, config/i386/openbsd.h: Likewise.
595         
596         * config/i386/cygwin.h: Adjust uses of ASM_LONG for trailing \t.
597         * config/i386/djgpp.h, config/i386/i386.h: Likewise.
598         * config/i386/i386elf.h, config/i386/ptx4-i.h: Likewise.
599         * config/i386/sco5.h, config/i386/svr3gas.h: Likewise.
600         * config/i386/sysv4.h, config/i386/vsta.h: Likewise.
601         * config/i386/win32.h: Likewise.
602
603 2001-05-20  Joseph S. Myers  <jsm28@cam.ac.uk>
604
605         * invoke.texi: Add more options to summary list.
606
607 2001-05-20  Joseph S. Myers  <jsm28@cam.ac.uk>
608
609         * invoke.texi: Document meaning of -pedantic when -std=gnu* is
610         used.  Fixes PR c/2291.
611         * gcc.1: Regenerate.
612
613 2001-05-20  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
614
615         * config/m68hc11/m68hc11.c (m68hc11_override_options): Ignore
616         the -fpic and -fPIC options, clear flag_pic.
617
618 2001-05-20  Neil Booth  <neil@daikokuya.demon.co.uk>
619
620         * hashtable.c (calc_hash): Fix HASHSTEP definition.
621         * stringpool.c (make_identifier): No statistics here anymore.
622         * objc-act.c (steup_string_decl): Remove redundant check.
623
624 2001-05-20  Neil Booth  <neil@daikokuya.demon.co.uk>
625
626         * Makefile.in (OBJS, LIBCPP_OBJS, LIBCPP_DEPS,
627         cpplib.o, cpphash.o, fix-header): Update.
628         (hashtable.o): New target.
629         * c-common.h: Include cpplib.h.  Define C_RID_CODE and
630         struct c_common_identifier here.
631         * c-lang.c (c_init_options): Update.  Call set_identifier_size.
632         * c-lex.c (c_lex): Update.
633         * c-pragma.h: Update.
634         * c-tree.h (struct lang_identifier): Contain c_common_identifier.
635         Delete rid_code.
636         (C_RID_CODE): Delete.
637         * cpphash.c: Rewrite to use hashtable.c.
638         * cpphash.h: Update include guards.
639         (struct cpp_reader): Remove hashtab.
640         hash_ob and buffer_ob are no longer pointers.  Add hash_table
641         and our_hashtable.
642         (HASHSTEP, _cpp_init_hashtable, _cpp_lookup_with_hash): Delete.
643         (_cpp_cleanup_hashtable): Rename _cpp_destroy_hashtable.
644         (_cpp_cleanup_stacks): Rename _cpp_init_directives.
645         * cppinit.c (cpp_create_reader): Update.
646         * cpplex.c (cpp_ideq, parse_identifier, cpp_output_token): Update.
647         (cpp_interpret_charconst): Eliminate warning.
648         * cpplib.c (do_pragma, do_endif, push_conditional,
649         cpp_push_buffer, cpp_pop_buffer): Update.
650         (_cpp_init_stacks): Rename cpp_init_directives.
651         (_cpp_cleanup_stacks): Remove.
652         * cpplib.h: Update include guards.  Include tree-core.h and c-rid.h.
653         (cpp_hashnode, cpp_token, NODE_LEN, NODE_NAME,
654          cpp_forall_identifiers, cpp_create_reader): Update.
655         (C_RID_CODE, cpp_make_node): New.
656         (c_common_identifier): New identifier node for C front ends.
657         * cppmain.c (main): Update.
658         * fix-header.c (read_scan_file): Update.
659         * flags.h (id_clash_len): Make unsigned.
660         * ggc.h (ggc_mark_nonnull_tree): New.
661         * hashtable.c: New.
662         * hashtable.h: New.
663         * stringpool.c: Update comments and copyright.  Update to use
664         hashtable.c.
665         * toplev.c (approx_sqrt): Move to hashtable.c.
666         (id_clash_len): Make unsigned.
667         * toplev.h (ident_hash): New.
668         * tree.c (gcc_obstack_init): Move to hashtable.c.
669         * tree.h: Include hashtable.h.
670         (IDENTIFIER_POINTER, IDENTIFIER_LENGTH): Update.
671         (GCC_IDENT_TO_HT_IDENT, HT_IDENT_TO_GCC_IDENT): New.
672         (struct tree_identifier): Update.
673         (make_identifier): New.
674 cp:
675         * cp-tree.h (struct lang_identifier, C_RID_YYCODE): Update.
676         (C_RID_CODE): Remove.
677         * lex.c (cxx_init_options): Call set_identifier_size.  Update.
678         (init_parse): Don't do it here.
679 objc:
680         * objc-act.c (objc_init_options): Call set_identifier_size. Update.
681
682 Sat May 19 18:23:04 2001  Richard Henderson <rth@redhat.com>
683
684         * except.c (dw2_build_landing_pads): Use word_mode, not Pmode,
685         as ncessary.
686         (expand_eh_return): Convert between word_mode and Pmode.
687         * unwind-dw2.c (extract_cie_info): Do not assume words and pointers
688         are the same size.
689         (execute_stack_op): Likewise.
690         (execute_cfa_program): Likewise.
691         (uw_frame_state_for): Likewise.
692         (uw_update_context_1): Likewise.
693         * unwind.inc (_Unwind_Reason_Code): Likewise.
694         * config/mips/mips.h (EH_RETURN_DATA_REGNO): Define.
695         (EH_RETURN_STACKADJ_RTX): Likewise.
696         * config/mips/mips.c (compute_frame_size): Make space for saving
697         EH return registers.
698         (mips_expand_epilogue): Handle EH stack adjustments.
699         * config/mips/mips.md (eh_return): New pattern.
700         (eh_set_lr_si): Likewise.
701         (eh_set_lr_di): Likewise.
702         Add splitter to perform EH return after reload.
703                 
704 2001-05-19  Mark Mitchell  <mark@codesourcery.com>
705
706         * jump.c (mark_jump_label): Tidy previous change.
707
708 2001-05-19  Bruce Korb  <bkorb@gnu.org>
709
710         * fixinc/genfixes: no need for two warnings
711         * fixinc/Makefile.in: open stdin for those building with a closed one.
712
713 2001-05-19  Mark Mitchell  <mark@codesourcery.com>
714
715         * jump.c (jump_optimize_1): Tidy.
716         (mark_jump_label): When changing the label in a LABEL_REF, change
717         update any REG_EQUAL notes as well.
718
719 2001-05-19  Joseph S. Myers  <jsm28@cam.ac.uk>
720
721         * c-parse.in (parm_declarator): Split into
722         parm_declarator_starttypename and parm_declarator_nostarttypename.
723         (parm_declarator_starttypename, parm_declarator_nostarttypename):
724         New.  Allow parenthesised sub-declarators which don't begin with a
725         TYPENAME.  Fixes PR c/166.
726
727 2001-05-19  Mark Mitchell  <mark@codesourcery.com>
728
729         * defaults.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER): New
730         macro.
731         * tm.texi (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
732         Document it.
733         * toplev.c (main): If the target does not allow profiling without
734         a frame pointer, issue an error message.
735         * config/i386/linux.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER): 
736         Define it to false.
737         
738 Sat May 19 07:53:42 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
739
740         * recog.c (general_operand): Modify last change to allow it if reload
741         has completed.
742
743 Sat May 19 10:23:54 CEST 2001  Jan Hubicka  <jh@suse.cz>
744
745         * recog.c (general_operand): Prohibit nonzero subreg bytes on
746         subregs containing mem.
747
748 Sat May 19 09:40:45 2001  Denis Chertykov  <denisc@overta.ru>
749
750         * regrename.c (regrename_optimize): frame pointer register can
751         use a few hardregs.
752
753 2001-05-18  Jason Merrill  <jason_merrill@redhat.com>
754
755         * README.DWARF: Move into dwarfout.c.
756
757 2001-05-18  Dale Johannesen  <dalej@apple.com>
758
759         * config/rs6000/rs6000.c (secondary_reload_class): Fix Darwin
760         specific misuse of r0 as a reload address.
761
762 Fri May 18 22:42:04 CEST 2001  Jan Hubicka  <jh@suse.cz>
763
764         * combine.c (combine_simplify_rtx): Clear op0_mode if simplification
765         suceeded.
766
767 Fri May 18 07:26:34 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
768
769         * genrecog.c (enum decision_type): Add DT_elt_zero-wide_safe.
770         (add_to_sequence): Make that decision type.
771         (maybe_both_true_2, nodes_identical_1, factor_tests): Use it.
772         (write_switch, write_cond, debug_decision_2): Likewise.
773
774         * dbxout.c (dbxout_type): Use host_integerp and fix typo in testing
775         for INTEGER_TYPE.
776         (dbxout_symbol, case TYPE_DECL): Don't generate tag for records of
777         variable size.
778
779 2001-05-18  Stan Shebs  <shebs@apple.com>
780
781         * configure.in (gcc_cv_as_eh_frame): Cope with old assemblers.
782         * configure: Regenerate.
783
784 2001-05-18  Per Bothner  <per@bothner.com>
785
786         Changes needed for java/jvspec.c
787         * gcc.h (n_infiles, outfiles):  Add declarations.
788         * gcc.c (n_infiles, outfiles):  Mske no longer static.
789
790 Fri May 18 10:14:42 2001  Jeffrey A Law  (law@cygnus.com)
791
792         * config/pa/som.h (EXCEPTION_SECTION): Define.
793
794 2001-05-18  Daniel Berlin  <dan@cgsoftware.com>
795
796         * dwarf2out.c: Add dw_loc_list_ref, a reference to a location
797         list.
798         Add have_location_lists, a variable to determine whether we need a
799         .debug_loc section or not.
800         (enum dw_val_class): Add dw_val_class_loc_list.
801         (dw_val_struct): Add val_loc_list.
802         (dw_loc_list_struct): New structure, represents location lists.
803         (new_loc_list): New function, return a new location list, given
804         the range and location expression.
805         (add_loc_descr_to_loc_list): New function, add a location
806         expression to a location list, given the expression and range.
807         (output_loc_list): New function, output a location list.
808         (gen_internal_sym): Modified to take symbol prefix, so we can
809         reuse it for location list symbols.
810         (add_AT_loc_list): New function, add a location list to a DIE at
811         the named attribute.
812         (AT_loc_list): New function, return the location list reference
813         for a given attribute, if it's a location list.
814         (print_die): Handle dw_val_class_loc_list.
815         (size_of_die): Ditto.
816         (value_format): Ditto.
817         (output_die): Ditto.
818         (output_location_lists): New function, output all of the location
819         lists for a DIE and it's children.
820         (dwarf2out_finish): Call output_location_lists if we have location
821         lists.
822
823
824 Fri May 18 15:39:16 CEST 2001  Jan Hubicka  <jh@suse.cz>
825
826         * gcse.c (try_replace_reg): First try global replace, later try to
827         simplify the expression.
828
829         * gcse.c (find_used_regs): Change calling convention; work via
830         note_uses.
831         (cprop_insn): Update call of find_used_regs; work for CALL_INSNs too.
832
833 2001-05-18  Bernd Schmidt  <bernds@redhat.com>
834
835         Revert
836         2001-02-09  Nick Clifton  <nickc@redhat.com>
837         * config/arm/arm.md: Change output constraint on post inc
838         load/store multiple patterns to be a read/write constraint.
839
840 2001-05-18  Mark Mitchell  <mark@codesourcery.com>
841
842         * basic-block.h (struct basic_block_def): Add documentation about
843         what a basic block is, and what the various fields are used for.
844         * flow.c (calculate_globlal_regs_live): Add documentation about
845         how the algorithm works, and how we know that it will terminate.
846         Check that the the inductive assumption that guarantees
847         termination actually holds.
848         (mark_used_regs): Treat conditionally set registers as used.
849         (debug_regset): Add comment.
850         * rtl.texi (cond_exec): Add documentation.
851
852         * function.c (expand_function_start): Avoid creating BLKmode
853         pseudos.
854
855 2001-05-17  Mark Mitchell  <mark@codesourcery.com>
856
857         * dwarf2out.c (output_comp_unit): Always output a compilation-unit
858         DIE, even if it has no children.
859         (dwarf2out_finish): Always output the line-number table, even if
860         it has no content.
861
862 2001-05-18  David Edelsohn  <edelsohn@gnu.org>
863
864         * rs6000.md (movsfcc,movdfcc): Remove NE case.
865
866 2001-05-17  Bruce Korb <bkorb@gnu.org>
867
868         * fixinc/fixincl.tpl: rewritten as an AutoGen version 5 template
869         * fixinc/genfixes: emit a warning if AutoGen is out of date
870
871 2001-05-17  Brendan Conoboy <blc@cygnus.com>
872             Bruce Korb <bkorb@gnu.org>
873
874         * fixinc/fixincl.sh(FIXINC): accept local directory if fixincl not
875         found in fixinc directory.  Facilitates binary distributions.
876
877 2001-05-17  Jeffrey Oldham  <oldham@codesourcery.com>
878
879         * dbxout.c (dbxout_symbol_location): For CONCAT, skip types not
880         COMPLEX_TYPE.
881
882 Thu May 17 19:42:39 2001  Mark Kettenis  <kettenis@wins.uva.nl>
883
884         * dwarf2out.c (modified_type_die): Equate qualified type to die.
885
886 Thu May 17 23:19:46 CEST 2001  Jan Hubicka  <jh@suse.cz>
887
888         * integrate.c (copy_rtx_and_substitute): Use simplify_gen_subreg.
889         (simplify_subreg): Handle complex types represented as CONCAT.
890
891         * recog.c (validate_replace_rtx_1): Properly canonicalize expression
892         * rtl.h (swap_commutative_operands_p): Declare.
893         * rtlanal.c (swap_commutative_operands_p): New.
894         (operand_preference): New static function.
895
896         * combine.c (combine_simplify_rtx): Use swap_commutative_operands_p.
897         (gen_binary): Likewise.
898         * optabs.c (emit_cmp_and_jump_insns, emit_conditional_move): Likewise.
899         * simplify-rtx.c (simplify_gen_binary,
900         simplify_gen_relational): Likewise.
901
902 Thu May 17 20:43:36 CEST 2001  Jan Hubicka  <jh@suse.cz>
903
904         * cse.c (fold_rtx): Use simplify_subreg.
905
906         * simplify-rtx.c (simplify_replace_rtx): Use simplify_gen_subreg.
907         (simplify_gen_subreg): New.
908         (simplify_rtx): Use simplify_subreg.
909         * rtl.h (simplify_gen_subreg): Declare.
910
911 2001-05-17  Mark Mitchell  <mark@codesourcery.com>
912
913         * doc/install.texi: Update Solaris information.
914
915         * except.h (protect_cleanup_actions): Remove it.
916         (lang_protect_cleanup_actions): Declare it.
917         * except.c (protect_cleanup_actions): Remove it.
918         (lang_protect_cleanup_actions): New variable.
919         (init_eh): Don't make protect_cleanup_actions a GC root.
920         (expand_eh_region_and_cleanup): Call
921         lang_protect_cleanup_actions.
922         (output_function_exception_table): Remove unused `align'
923         variable.
924         * varasm.c (assemble_external): Abort if we have not yet
925         opened the assembly output file.
926         
927 Thu May 17 11:54:50 2001  Jeffrey A Law  (law@cygnus.com)
928
929         * except.c (sjlj_emit_function_enter): Call assemble_external_libcall
930         for eh_personality_libfunc.
931
932 Thu May 17 19:48:00 CEST 2001  Jan Hubicka  <jh@suse.cz>
933
934         * recog.c (validate_replace_rtx_1): Use "TO" mode if not VOIDmode
935         when calling simplify_subreg.  This is needed to allow replacing
936         of expression of one mode by expression of different mode.
937
938 Thu May 17 19:40:03 CEST 2001  Jan Hubicka  <jh@suse.cz>
939
940         * simplify-rtx.c  (simplify_subreg): Avoid creating of incorrect subregs.
941
942 2001-05-17  Bernd Schmidt  <bernds@redhat.com>
943
944         * expr.c (protect_from_queue): Protect against subsequent calls to
945         emit_queue.
946         (expand_expr, case ADDR_EXPR): Prevent protect_from_queue from being
947         too clever.
948
949 Thu May 17 18:17:34 CEST 2001  Jan Hubicka  <jh@suse.cz>
950
951         * simplify_rtx.c (simplify_subreg): Fix simplification of nested subregs.
952
953 2001-05-17  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
954
955         * gccbug.in (CATEGORIES): Add "bootstrap".
956
957 Thu May 17 16:59:41 CEST 2001  Jan Hubicka  <jh@suse.cz>
958
959         * simplify-rtx.c (simplify_subreg): Break out from ...
960         * combine.c (combine_splify_rtx) ... here and ...
961         * recog.c (validate_replace_rtx_1): ... here;
962         * rtl.h (subreg_lowpart_parts_p, simplify_subreg): Declare.
963         * emit-rtl.c (subreg_lowpart_parts_p): Break out from ...
964         (subreg_lowpart_p): ... here.
965
966 2001-05-17  Bernd Schmidt  <bernds@redhat.com>
967
968         * stmt.c (expand_asm_operands): For inout operands, make sure
969         the substitution of '=' for '+' makes it into the rtl.
970
971         * reload1.c (delete_output_reload): Call eliminate_regs on substed.
972         (reload_as_needed): Call update_eliminable_offsets a bit later.
973
974 2001-05-17  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
975
976         * gcc.texi (gccbug): Refer to the web pages for detailed information
977         on GNATS.
978
979 2001-05-16  Zack Weinberg  <zackw@stanford.edu>
980
981         * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
982
983         * Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
984         OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
985         LIB1FUNCS, and LIB1FUNCS_EXTRA.  Delete rules: libgcc1-test,
986         libgcc1-test.o.  Clarify commentary now that libgcc1 no longer exists.
987         * cross-make: Don't set LIBGCC1.
988         * mklibgcc.in: Delete all code for building from libgcc1.c.
989         Always honor LIB1ASMFUNCS if set.
990
991         * crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
992         config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
993         config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
994         config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
995         config/i386/uwin.asm, config/m68hc11/larith.asm,
996         config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
997         config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
998         config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
999         config/v850/lib1funcs.asm, config/c4x/libgcc.S:
1000         Delete or update references to libgcc1 in commentary.
1001
1002         * config/t-libc-ok, config/t-linux, config/t-linux-aout,
1003         config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
1004         config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
1005         config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
1006         config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
1007         config/arm/t-semi, config/arm/t-strongarm-coff,
1008         config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
1009         config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
1010         config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
1011         config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
1012         config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
1013         config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
1014         config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
1015         config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
1016         config/m68k/t-m68kbare, config/m68k/t-m68kelf,
1017         config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
1018         config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
1019         config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
1020         config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
1021         config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
1022         config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
1023         config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
1024         config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
1025         config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
1026         config/mips/t-ultrix, config/mn10200/t-mn10200,
1027         config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
1028         config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
1029         config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
1030         config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
1031         config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
1032         config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
1033         config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
1034         config/sparc/t-sparclite, config/sparc/t-splet,
1035         config/sparc/t-sunos41, config/sparc/t-vxsparc,
1036         config/sparc/t-vxsparc64, config/v850/t-v850:
1037         Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
1038
1039         * config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h: 
1040         Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
1041         * config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
1042         FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
1043         nongcc_SI_type, nongcc_word_type, or perform_*
1044         * config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
1045
1046         * config/i386/386bsd.h, config/i386/beos-elf.h,
1047         config/i386/linux-aout.h, config/i386/linux-oldld.h,
1048         config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
1049         config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
1050         Don't include i386/perform.h.
1051
1052         * config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
1053         config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
1054         config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
1055         config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
1056         config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
1057         config/vax/t-openbsd, config/vax/t-vax: Delete.
1058
1059         * config.gcc: Remove references to deleted files.
1060         (arm-semi-aof): Use arm/t-semi for tmake_file.
1061
1062         * gcc.texi, install.texi, invoke.texi, tm.texi:
1063         Delete or rewrite text which is no longer relevant now that
1064         libgcc1 no longer exists.
1065
1066         * config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
1067         No need to set INSTALL_ASSERT_H.  (Missed in previous sweep.)
1068
1069 2001-05-16  Wolfgang Bangerth <wolfgang.bangerth@iwr.uni-heidelberg.de>
1070         Bruce Korb <bkorb@gnu.org>
1071
1072         * fixinc/inclhack.def(solaris27_mutex_init):  Fix broken mutex
1073         initializer
1074
1075 2001-05-16  Zack Weinberg  <zackw@stanford.edu>
1076
1077         * i386.md: Add two peepholes to clean up code generated by
1078         cmpstr* expanders.
1079
1080 2001-05-16  Richard Henderson  <rth@redhat.com>
1081
1082         * dwarf2asm.c (eh_data_format_name): Add names for "pointer size" 
1083         variants of non-absolute encodings.
1084
1085         * config/i386/i386.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
1086
1087         * libgcc-std.ver (_Unwind_Find_FDE, __register_frame_info_bases,
1088         __register_frame_info_table_bases): Export.
1089
1090 2001-05-16  Richard Henderson  <rth@redhat.com>
1091
1092         * except.c (eh_data_format_name): Move to ...
1093         * dwarf2asm.c: ... here.  Use designated initializers if available.
1094         (dw2_asm_output_encoded_addr_rtx): Accept varargs commentary.
1095         * dwarf2asm.h: Update declarations.
1096         * dwarf2out.c (output_cfi) [DW_CFA_set_loc]: If for_eh, mind
1097         ASM_PREFERRED_EH_DATA_FORMAT.
1098         (output_call_frame_info): Likewise.  Use 'L' augmentation for
1099         the LSDA encoding.
1100
1101         * unwind-dw2-fde.h (struct fde_vector): New.
1102         (struct old_object): Rename from struct object.
1103         (struct object): New.
1104         (__register_frame_info_bases): Declare.
1105         (__register_frame_info_table_bases): Declare.
1106         (struct dwarf_fde): Remove explicit pc_begin/pc_range members.
1107         * unwind-dw2-fde.c (objects): Remove.
1108         (unseen_objects, seen_objects): New.
1109         (__register_frame_info_bases): New.
1110         (__register_frame_info): Use it.
1111         (__register_frame_info_table_bases): New.
1112         (__register_frame_info_table): Use it.
1113         (__deregister_frame_info): Rewrite for changed object struct.
1114         (base_from_object, get_cie_encoding, get_fde_encoding): New.
1115         (fde_unencoded_compare): Rename from fde_compare; uninline.
1116         (fde_single_encoding_compare, fde_mixed_encoding_compare): New.
1117         (start_fde_sort): Adjust for new definition of fde_vector.
1118         (fde_insert): Likewise.
1119         (end_fde_sort): Likewise.  Select comparison function based
1120         on properties of the object.
1121         (fde_split): Take object and fde_compare_t arguments.
1122         (frame_heapsort, fde_merge): Likewise.
1123         (classify_object_over_fdes): Rename from count_fdes.  Handle
1124         encoded pointers.  Collect encoding, mixed_encoding, and pc_begin
1125         for the object.
1126         (add_fdes): Handle encoded pointers.
1127         (init_object): Rename from frame_init.  Update for new struct object.
1128         (linear_search_fdes): Rename from search_fdes.  Handle encoded
1129         pointers.
1130         (binary_search_unencoded_fdes): Broken out from _Unwind_Find_FDE.
1131         (binary_search_single_encoding_fdes): New.
1132         (binary_search_mixed_encoding_fdes): New.
1133         (search_object): New.
1134         (_Unwind_Find_FDE): Update for new struct object.  Fill in
1135         the dwarf_eh_bases.
1136         * unwind-dw2.c: Include unwind-pe.h.  Constify all pointers
1137         iterating over EH data.
1138         (_Unwind_FrameState): Remove saw_lsda, addr_encoding.  Add
1139         fde_encoding, lsda_encoding.
1140         (read_uleb128, read_sleb128): Remove.
1141         (read_encoded_pointer): Remove.  All callers use read_encoded_value.
1142         (extract_cie_info): Set lsda_encoding from 'L' augmentation.
1143         (uw_frame_state_for): Don't set bases.func.  Handle encoded fde
1144         pointers.
1145         * unwind-pe.h: Add "struct" to _Unwind_Context references.
1146
1147 2001-05-16  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
1148
1149         * cppexp.c (lex): Use NODE_NAME and NODE_LEN.
1150         * cpphash.c (_cpp_lookup_with_hash): Similarly.
1151         * cpplex.c (cpp_ideq, parse_identifier, cpp_token_len,
1152         cpp_spell_token, cpp_output_token): Similarly.
1153         * cpplib.c (lex_macro_node, do_undef, do_pragma,
1154         do_pragma_poison, parse_assertion, do_assert): Similarly.
1155         * cppmacro.c (builtin_macro, parse_args, funlike_invocation_p,
1156         save_parameter, _cpp_create_definition, check_trad_stringification,
1157         cpp_macro_definition): Similarly.
1158         * cppmain.c (cb_define, cb_undef, dump_macro): Similarly.
1159         * c-lex.c (cb_undef, c_lex): Similarly.
1160         * fix-header.c (recognized_function): Similarly.
1161         * cpplib.h (NODE_LEN, NODE_NAME): New.
1162         (cpp_hashnode): Rename length len.
1163
1164 Wed May 16 13:41:10 2001  Jeffrey A Law  (law@cygnus.com)
1165
1166         * pa32-regs.h (HARD_REGNO_MODE_OK): Allow TI/TFmode values in
1167         GPRs.
1168
1169 2001-05-16  Andreas Jaeger  <aj@suse.de>
1170
1171         * Makefile.in (toplev.o): Add dependency on dwarf2asm.h.
1172
1173         * toplev.c: Include dwarf2asm.h for prototype of
1174         dw2_output_indirect_constants.
1175
1176 Wed May 16 19:53:53 CEST 2001  Jan Hubicka  <jh@suse.cz>
1177
1178         * stmt.c (expand_asm_operands): Be able to offload addressof
1179         expression to memory. (PR optimization/185)
1180
1181 Wed May 16 18:53:23 CEST 2001  Jan Hubicka  <jh@suse.cz>
1182
1183         * combine.c (combine_simplify_rtx): Set op0_mode to VOIDmode after
1184         applying distributive law.
1185
1186 2001-05-16  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1187
1188         * pa-hpux10.h (THREAD_MODEL_SPEC): Define.
1189
1190         * gthr-dce.h (UNUSED): Attribute unused macro.
1191         (__gthread_key_dtor): Make arguments UNUSED.
1192         (__gthread_key_delete): Revise for compatibility with DRAFT4
1193         implementation.
1194
1195 2001-05-16  David Edelsohn  <edelsohn@gnu.org>
1196
1197         * doc/install.texi: Update AIX information.
1198         * README.RS6000: Remove obsolete file.
1199
1200 2001-05-16  Jakub Jelinek  <jakub@redhat.com>
1201             Nathan Sidwell  <nathan@codesourcery.com>
1202
1203         * gcc.c (give_switch): Don't write before start of string.
1204         Always append suffix.
1205
1206 2001-05-16  Nathan Sidwell  <nathan@codesourcery.com>
1207
1208         * cpplex.c (_cpp_lex_token, '/' case): Comments can't appear
1209         after stage3.
1210
1211 2001-05-16  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
1212
1213         * README.ALTOS: Remove obsolete file.
1214
1215 2001-05-16  Neil Booth  <neil@daikokuya.demon.co.uk>
1216
1217         * c-lex.h (save_and_forget_protocol_qualifiers,
1218         forget_protocol_qualifiers, remember_protocol_qualifiers):
1219         Remove deleted functions' prototypes.
1220
1221 2001-05-16  Neil Booth  <neil@daikokuya.demon.co.uk>
1222
1223         * c-parse.in (methodtype): New production.
1224         (methoddef, methodproto): Collapse separate '-' and '+'
1225         handlers into 1.
1226
1227 2001-05-16  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
1228
1229         * c-common.h (RID_FIRST_PQ): New.
1230         * c-parse.in (objc_pq_context): New.
1231         (objc parser): Set objc_pq_context rather than calling
1232         remember_protocol_qualifiers and forget_protocol_qualifiers.
1233         Don't call save_and_forget_protocol_qualifiers.
1234         (yylexname): Handle objc protocol qualifiers here.
1235         * stringpool.c (struct str_header): Replace with sp_hashnode.
1236         (SP_EMPTY, SP_LEN, SP_TREE, SP_STR, SP_VALID): New.
1237         (alloc_string): Rename alloc_ident.  Use the SP_ accessors.
1238         Allocate an IDENTIFIER_NODE for each identifier.
1239         (FORALL_STRINGS, set_identifier): Delete.
1240         (FORALL_IDS, expand_string_table, stringpool_statistics): Update.
1241         (ggc_alloc_string): Use an obstack.
1242         (get_identifier, maybe_get_identifier, mark_string_hash): Update.
1243         * tree.h: Update comments.
1244         (set_identifier): Delete.
1245         * objc/objc-act.c (N_PQ, saved_pq, saved_not_pq,
1246         save_and_forget_protocol_qualifiers, forget_protocol_qualifiers,
1247         remember_protocol_qualifiers): Delete.
1248
1249 Tue May 15 22:14:09 2001  Jeffrey A Law  (law@cygnus.com)
1250
1251         * flow.c (life_analysis): After life analysis is complete, do
1252         an optional scan over insns looking for REG_LABEL notes that
1253         reference a deleted label.
1254         (propagate_block_delete_insn): Verify INOTE is a CODE_LABEL
1255         before peeking at LABEL_NUSES.
1256
1257 2001-05-15  Richard Henderson  <rth@redhat.com>
1258
1259         * unwind-sjlj.c (_Unwind_GetDataRelBase): New.
1260         (_Unwind_GetTextRelBase): New.
1261
1262 2001-05-15  Mark Mitchell  <mark@codesourcery.com>
1263
1264         * config/sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Define.
1265
1266 2001-05-15  Geoffrey Keating  <geoffk@redhat.com>
1267
1268         * objc/objc-act.c (handle_class_ref): Use rest_of_decl_compilation
1269         so that CHOOSE_SECTION gets used.
1270
1271         * config/rs6000/sysv4.h (ASM_PREFERRED_EH_DATA_FORMAT): Treat
1272         TARGET_RELOCATABLE like flag_pic for now.
1273
1274 2001-05-15  David Edelsohn  <edelsohn@gnu.org>
1275
1276         * rs6000.md (movdi splitter): Sign extend more efficiently.
1277         * rs6000.c (reg_or_arith_cint_operand): Redefine 64-bit constant
1278         to "long long" valid on 32-bit and 64-bit hosts.
1279         (logical_operand): Cast trunc_int_for_mode return value.
1280         (rs6000_emit_move): Shift macro to encapsulate variable.
1281         (rs6000_va_start): Use HOST_WIDE_INT_PRINT_DEC.
1282         (rs6000_emit_{prologue,epilogue}): EH regno is unsigned but
1283         plus_constant requires signed argument.
1284
1285 2001-05-15  Loren J. Rittle  <ljrittle@acm.org>
1286
1287         * gthr-posix.h: Make additional pthread-* functions weak.
1288
1289 Tue May 15 13:51:32 CEST 2001  Jan Hubicka  <jh@suse.cz>
1290
1291         * recog.c (apply_change_group): Avoid unneeded validating.
1292
1293 2001-05-14  David Edelsohn  <edelsohn@gnu.org>
1294
1295         * rs6000.c (num_insns_constant_wide): Constants are sign-extended.
1296         (num_insns_constant): CONST_INT can be 64-bits.
1297
1298 2001-05-14  Stan Shebs  <shebs@apple.com>
1299
1300         * config/darwin.h (LIB_SPEC): Just use -lSystem.
1301         (LIBGCC_SPEC): Don't define.
1302
1303 2001-05-14  Richard Henderson  <rth@redhat.com>
1304
1305         * configure.in (gcc_cv_as_eh_frame): New test.
1306         * config.in, configure: Rebuild.
1307         * gcc.c (init_spec): Honor USE_AS_TRADITIONAL_FORMAT.
1308
1309 2001-05-14  Andrew MacLeod  <amacleod@redhat.com>
1310
1311         * config/ia64/lib1funcs.asm (__divtf3): Fix incorrect bits in
1312         extended precision divide.
1313
1314 2001-05-14  Andrew MacLeod  <amacleod@redhat.com>
1315
1316         * config/ia64/ia64.c (rtx_needs_barrier): Call rtx_needs_barrier
1317         for RETURNS as well.
1318
1319 Mon May 14 17:34:48 CEST 2001  Jan Hubicka  <jh@suse.cz>
1320
1321         * i386.h (TARGET_64BIT): Define to constant if !TARGET_BI_ARCH
1322         (CPP_CPU??_SIZE_TYPE): New.
1323         (CPP_CPU??_SPEC, CPP_CPUCOMMON_SPEC): Break out from...
1324         (CPP_CPU_SPEC): ... here; support choosing of CPU.
1325         (EXTRA_SPECS): Add cpp_cpu??, cpp_cpu??sizet, cpp_cpucommon.
1326         (MAX_LONG_TYPE_SIZE, MAX_BITS_PER_WORD): Define to 32 for 32bit-only
1327         compiler.
1328         * i386.c (override_options): Add sorry about not suported modes.
1329
1330 Mon May 14 08:56:47 2001  Jeffrey A Law  (law@cygnus.com)
1331
1332         * config/pa/som.h (NM_FLAGS): Remove.
1333         (ASM_OUTPUT_FUNCTION_PREFIX): No longer truncate subspace names.
1334         (ASM_OUTPUT_SECTION_NAME): Remove.
1335         (MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL): Likewise.
1336
1337 2001-05-14  Mark Mitchell  <mark@codesourcery.com>
1338
1339         * regrename.c (regrename_optimize): Do not rename registers to
1340         leaf registers.
1341
1342 2001-05-14  Alexandre Oliva  <aoliva@redhat.com>
1343
1344         * rtl.texi (CALL_INSN_FUNCTION_USAGE): Note that (and when) it may
1345         contain MEMs.  Remove useless distinction about clobbering
1346         registers.
1347
1348 2001-05-13  Geoff Keating  <geoffk@redhat.com>
1349
1350         * config/rs6000/rs6000.h (EXCEPTION_SECTION): Move to...
1351         * config/rs6000/aix.h (EXCEPTION_SECTION): ... here.
1352         * config/rs6000/sysv4.h (CONST_SECTION_ASM_OP): Delete.
1353         (ASM_PREFERRED_EH_DATA_FORMAT): Define.
1354         (EXCEPTION_SECTION): Define.
1355
1356 2001-05-13  Zack Weinberg  <zackw@stanford.edu>
1357
1358         * libgcc2.c, libgcc2.h: Restore __eprintf.  Label as used for
1359         binary backward compat only.
1360         * Makefile.in (LIB2FUNCS_ST): New.  Put _eprintf here, not
1361         in LIB2FUNCS.  Pass it to mklibgcc.
1362         * mklibgcc.in: Handle LIB2FUNCS_ST.
1363
1364         * Makefile.in (installdirs): Don't create $(gcc_tooldir).
1365
1366 2001-05-13  Alexandre Oliva  <aoliva@redhat.com>
1367
1368         * tm.texi (THREAD_MODEL_SPEC): Document it.
1369         * gcc.c (main): Use it.
1370         * config/rs6000/aix43.h (THREAD_MODEL_SPEC): Define it.
1371         * config/rs6000/aix51.h (THREAD_MODEL_SPEC): Likewise.
1372
1373 2001-05-13  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1374
1375         * rtl.h (SYMBOL_REF_WEAK): New macro.
1376         * rtlanal.h (rtx_addr_can_trap): Use it, a weak SYMBOL_REF can trap.
1377         * varasm.c (make_decl_rtl): Mark SYMBOL_REF weak if necessary.
1378         * rtl.texi (SYMBOL_REF_WEAK): Document it.
1379         * gcc.texi: Remove wrong description.
1380
1381 2001-05-13  Mark Mitchell  <mark@codesourcery.com>
1382
1383         * Makefile.in (STAMP): New macro.
1384         Replace all uses of `touch' with $(STAMP).
1385         * fixinc/Makefile.in: Likewise.
1386
1387 Sun May 13 07:26:34 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1388
1389         * configure.in: ldopen is never in -lexc, so don't test for it.
1390         Add test for exc_resume in -lexc for Ada.
1391         * configure: Regenerated.
1392
1393 2001-05-12  Richard Henderson  <rth@redhat.com>
1394
1395         * dwarf2asm.c (size_of_encoded_value): New function.
1396         * dwarf2asm.h: Declare it.
1397         * except.c (output_function_exception_table): Align the TType
1398         array only as wide as the encoding.
1399
1400 2001-05-12  Zack Weinberg  <zackw@stanford.edu>
1401
1402         * extend.texi: Document #pragma GCC java_exceptions.
1403
1404 2001-05-12  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
1405
1406         * c-parse.in (bison parser, init_reswords): Remove uses of
1407         doing_objc_thang.
1408         * c-tree.h (doing_objc_thang): Remove.
1409
1410 2001-05-12  Neil Booth  <neil@daikokuya.demon.co.uk>
1411
1412         * cpplex.c (_cpp_lex_token): Ensure we warn at most once
1413         about files not ending in newlines.
1414
1415 2001-05-12  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
1416
1417         * dwarfout.c (dwarfout_init): Add cast.
1418         * sched-deps.c (sched_analyze_insn): Remove unused vars.
1419         * unwind-dw2-fde.c (_Unwind_Find_FDE): Flag unused parameter so.
1420 cp:
1421         * method.c (build_mangled_C99_name): Remove unused prototype.
1422
1423 2001-05-12  Alexandre Oliva  <aoliva@redhat.com>
1424
1425         * config/arm/arm.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Use delta.
1426
1427 2001-05-12  Alexandre Oliva  <aoliva@redhat.com>
1428
1429         * defaults.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Define.
1430         * tm.texi (TARGET_PRTMEMFUNC_VBIT_LOCATION): Document.
1431
1432 2001-05-11  Richard Henderson  <rth@redhat.com>
1433
1434         * defaults.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
1435         * dwarf2asm.c (dw2_force_const_mem, dw2_output_indirect_constant_1,
1436         dw2_output_indirect_constants, dw2_asm_output_encoded_addr_rtx): New.
1437         * dwarf2asm.h (dw2_asm_output_encoded_addr_rtx): Prototype.
1438         (dw2_output_indirect_constants): Prototype.
1439         * dwarf2out.c (dwarf2out_begin_prologue): Generate
1440         current_function_func_begin_label if we'll need it for EH.  Exit
1441         early for IA64_UNWIND_INFO.
1442         * except.c: Get DW_EH_PE_* defines from dwarf2.h.
1443         (eh_data_format_name): Update for indirect references.
1444         (output_function_exception_table): Care for IA64_UNWIND_INFO.
1445         Handle ASM_PREFERRED_EH_DATA_FORMAT.
1446         * except.h (MUST_USE_SJLJ_EXCEPTIONS): IA64_UNWIND_INFO needn't
1447         define HAVE_eh_return etc.
1448         * final.c (final_start_function): Always call dwarf2out_begin_prologue.
1449         (final_end_function): Don't call output_function_exception_table.
1450         * toplev.c (compile_file): Call dw2_output_indirect_constants.
1451         (rest_of_compilation): Invoke output_function_exception_table
1452         for ia64 before assemble_end_function.
1453         * tm.texi (ASM_PREFERRED_EH_DATA_FORMAT): Document.
1454         (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Document.
1455
1456         * unwind-dw2.c (_Unwind_GetTextRelBase, _Unwind_GetDataRelBase): New.
1457         * unwind.h: Declare them.
1458         * libgcc-std.ver: Export them.
1459         * unwind-pe.h: New file.
1460
1461         * config/alpha/elf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
1462
1463         * config/ia64/fde-glibc.c: Use "struct unw_table_entry"
1464         instead of "fde".
1465         (find_fde_for_dso): Extract DT_PLTGOT.
1466         (_Unwind_FindTableEntry): Rename from __ia64_find_fde; return
1467         the segment and gp as well.
1468         * config/ia64/frame-ia64.c: Remove file.
1469         * config/ia64/frame-ia64.h: Remove file.
1470         * config/ia64/unwind-ia64.c: New file.
1471         * config/ia64/unwind-ia64.h: New file.
1472         * config/ia64/ia64.h (ASM_OUTPUT_EH_CHAR): Remove.
1473         (ASM_OUTPUT_EH_SHORT, ASM_OUTPUT_EH_INT): Remove.
1474         (ASM_OUTPUT_EH_DOUBLE_INT): Remove.
1475         (ASM_PREFERRED_EH_DATA_FORMAT): New.
1476         (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
1477         (IA64_UNWIND_INFO): Re-enable.
1478         (HANDLER_SECTION): Remove.
1479         (EH_RETURN_DATA_REGNO): New.
1480         * config/ia64/ia64.md (exception_receiver): Remove.
1481         * config/ia64/t-glibc (LIB2ADDEH): Re-enable.
1482         * config/ia64/t-ia64 (LIB2ADDEH): Re-enable.
1483
1484 2001-05-11  Richard Henderson  <rth@redhat.com>
1485
1486         * config/ia64/ia64.c (group_barrier_needed_p): Don't allow
1487         calls and jumps to be bundled together.
1488         (ia64_reorg): Emit a break after a noreturn call that ends
1489         a function.
1490         * config/ia64/ia64.md (break_f): New.
1491
1492 2001-05-12  Neil Booth  <neil@daikokuya.demon.co.uk>
1493
1494         * c-lex.c (lex_charconst): Convert into a simple wrapper
1495         around cpp_interpret_charconst, to which most of the code
1496         body is moved.
1497         * cppexp.c (MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE,
1498         MAX_LONG_TYPE_SIZE, MAX_INT_TYPE_SIZE, MAX_CHAR_TYPE_MASK,
1499         MAX_WCHAR_TYPE_MASK, parse_escape, parse_charconst): Remove.
1500         (lex): Use cpp_interpret_charconst.
1501         * cpplex.c (parse_escape, read_ucs, cpp_interpret_charconst,
1502         hex_digit_value): New functions.
1503         (MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE): New macros.
1504         * cpplib.h (cpp_interpret_charconst): New prototype.
1505         * Makefile.in: Update.
1506
1507 2001-05-12  Dean Wakerley  <dean@wakerley.com>
1508
1509         * doc/install.texi: New file. Converted to texinfo from the HTML
1510         documentation in wwwdocs/htdocs/install.
1511
1512 Fri May 11 15:50:13 2001  Jeffrey A Law  (law@cygnus.com)
1513
1514         * gcse.c (insert_insn_end_bb): Do not search for assignments to
1515         non-argumment registers that are mentioned in CALL_INSN_FUNCTION_USAGE.
1516
1517         * toplev.c (compile_file): Move comment for opening output
1518         file to just before the code that opens the output file.
1519
1520 2001-05-11  Jakub Jelinek  <jakub@redhat.com>
1521
1522         * regmove.c (regmove_optimize): Suppress the optimization for
1523         unchanging destination register.  Add comment above function.
1524
1525 2001-05-11  Zack Weinberg  <zackw@stanford.edu>
1526
1527         * Makefile.in: Exterminate all references to assert.h.
1528         * cross-make: Likewise.
1529         * assert.h: Delete.
1530         * configure.in: Correct commentary.
1531         * configure: Regenerate.
1532
1533         * libgcc-std.ver, libgcc2.c, libgcc2.h, sys-protos.h:
1534         Remove __eprintf.
1535
1536         * config/t-freebsd, config/t-linux, config/t-linux-aout,
1537         config/t-netbsd, config/t-rtems, config/x-linux,
1538         config/i386/t-beos, config/mcore/t-mcore, config/mcore/t-mcore-pe:
1539         No need to override INSTALL_ASSERT_H.
1540
1541         * fixinc/fixinc.dgux, fixinc/fixinc.interix, fixinc/fixinc.ptx,
1542         fixinc/fixinc.svr4, fixinc/fixinc.winnt, fixinc/fixinc.wrap,
1543         fixinc/fixincl.sh: Don't install assert.h into objdir/include.
1544
1545 2001-05-11  Graham Stott  <grahams@redhat.com>
1546
1547         * combine.c (simplify_comparison): Fix typo.
1548
1549 2001-05-11  Mark Mitchell  <mark@codesourcery.com>
1550
1551         * loop.h (struct movables): Remove `num'.
1552         * loop.c (scan_loop): Don't set it.  Use count_insns_in_loop.
1553         Adjust call to strength_reduce.
1554         (num_unmoved_movables): New function.
1555         (move_movables): Don't set movables->num.
1556         (strength_reduce): Compute the number of instructions in the loop
1557         here, rather than in the caller.
1558         (check_dbra_loop): Always clear reversible_mem_store if there
1559         are any memory sets.
1560         (loop_regs_scan): Don't count instructions here.
1561         (count_insn_in_loop): New function.
1562
1563 2001-05-11  Mark Mitchell  <mark@codesourcery.com>
1564
1565         * optabs.c (emit_libcall_block): Don't mark calls as CONST_CALL_P.
1566
1567 2001-05-11  Neil Booth  <neil@daikokuya.demon.co.uk>
1568
1569         * c-common.c (finish_label_expr): New function, lifted from
1570         from cp/semantics.c.
1571         * c-common.h (finish_label_expr, lookup_label): New prototypes.
1572         * c-parse.in: Move 3 blocks of parser code into new functions.
1573         * c-typeck.c (simple_asm_stmt, c_cast_expr): New functions.
1574         * c-tree.h (simple_asm_stmt, c_cast_expr): New prototypes.
1575         (lookup_label): Remove.
1576
1577 2001-05-11  Alexandre Oliva  <aoliva@redhat.com>
1578
1579         * config/mn10300/t-mn10300 (dp-bit.c, fp-bit.c): Don't define
1580         FLOAT_BIT_ORDER_MISMATCH.
1581
1582 2001-05-10  David Edelsohn  <edelsohn@gnu.org>
1583
1584         * expr.c (emit_push_insn): Convert PUSH_ROUNDING argument to
1585         bytes.  Reported by Kazu Hirata <kazu@hxi.com>.
1586
1587 2001-05-10  David Edelsohn  <edelsohn@gnu.org>
1588
1589         * expr.c (emit_group_load): extract_bit_field requires a REG or
1590         MEM as an argument.
1591
1592 Thu May 10 14:45:44 2001  Jeffrey A Law  (law@cygnus.com)
1593
1594         * cse.c (cse_insn): Mostly remove first hunk of code which collapsed
1595         a computed jump into an unconditional jump.
1596         In second hunk of code for collapsing computed and conditional jumps
1597         into unconditional jumps, reemit the jump in additional cases.
1598
1599         * jump.c (jump_optimize_1): Do not wrap the new jump target
1600         inside a LABEL_REF; gen_jump will do that automatically.
1601
1602 2001-05-10  Toon Moene  <toon@moene.indiv.nluug.nl>
1603
1604         * dwarf2out.c (mem_loc_descriptor): Do not pass constant pool
1605         contents for a SYMBOL_REF in case of floating point constants.
1606
1607 2001-05-10  DJ Delorie  <dj@redhat.com>
1608
1609         * c-common.c (combine_strings): Widen strings in a
1610         host-endian-independent way.
1611
1612 2001-05-10  Joseph S. Myers  <jsm28@cam.ac.uk>
1613
1614         * c-parse.in: Remove many shift/reduce conflicts.  Update
1615         %expect values.
1616         (declspecs_nosc_nots_nosa_noea, declspecs_nosc_nots_nosa_ea,
1617         declspecs_nosc_nots_sa_noea, declspecs_nosc_nots_sa_ea,
1618         declspecs_nosc_ts_nosa_noea, declspecs_nosc_ts_nosa_ea,
1619         declspecs_nosc_ts_sa_noea, declspecs_nosc_ts_sa_ea,
1620         declspecs_sc_nots_nosa_noea, declspecs_sc_nots_nosa_ea,
1621         declspecs_sc_nots_sa_noea, declspecs_sc_nots_sa_ea,
1622         declspecs_sc_ts_nosa_noea, declspecs_sc_ts_nosa_ea,
1623         declspecs_sc_ts_sa_noea, declspecs_sc_ts_sa_ea, declspecs_ts,
1624         declspecs_nots, declspecs_ts_nosa, declspecs_nots_nosa,
1625         declspecs_nosc_ts, declspecs_nosc_nots, declspecs_nosc, declspecs,
1626         maybe_type_quals_setattrs, typespec_nonattr, typespec_attr,
1627         typespec_reserved_nonattr, typespec_reserved_attr,
1628         typespec_nonreserved_nonattr, maybe_setattrs, structsp_attr,
1629         structsp_nonattr, components_notype, component_notype_declarator,
1630         absdcl1_ea, absdcl1_noea, direct_absdcl1, absdcl_maybe_attribute,
1631         firstparm, setspecs_fp): New
1632         (typed_declspecs, reserved_declspecs, typed_typespecs,
1633         reserved_typespecquals, declmods, typespec, typespecqual_reserved,
1634         typed_declspecs_no_prefix_attr reserved_declspecs_no_prefix_attr
1635         declmods_no_prefix_attr, nonempty_type_quals, structsp,
1636         type_quals): Remove.  Users updated.
1637         (initdecls, notype_initdecls, after_type_declarator,
1638         parm_declarator, notype_declarator, absdcl1, components, ivars):
1639         Don't allow attributes at the start of a declarator; include them
1640         in the production containing the declarator instead.  Always
1641         require type specifiers before trying to redeclare a typedef name.
1642         (typename): Allow for attributes but warn that they are ignored.
1643         (parmlist, firstparm, setspecs_fp): Include attributes in
1644         parmlist; suck them off the parser stack in firstparm using
1645         setspecs_fp.
1646
1647 Thu May 10 09:17:42 2001  Jeffrey A Law  (law@cygnus.com)
1648
1649         * ifcvt.c (merge_if_block): Use any_uncondjump_p, not simplejump_p
1650         to determine if a block has an unconditional jump at its end.
1651
1652         * jump.c (jump_optimize_1): When converting a conditional jump
1653         to an unconditional jump, build the jump using gen_jump instead
1654         of just modify operands in-place.
1655
1656 2001-05-09  Zack Weinberg  <zackw@stanford.edu>
1657
1658         * cppinit.c (cpp_post_options): Shut off macro expansion if
1659         -fpreprocessed.
1660         * cpplib.c (_cpp_handle_directive): If -fpreprocessed, accept
1661         IN_I directives only if the # is in column 1 and the directive
1662         name begins in column 2.
1663         * cppmain.c (scan_buffer): Insert a space between # and an
1664         identifier, when that identifier is a directive name.
1665
1666         * tradcpp.c (struct file_buf): Add a pointer to the next entry
1667         in the header search path.
1668         (enum node_type): Add T_INCLUDE_NEXT.
1669         (directive_table): Add entry for include_next.
1670         (do_include_next): New function.
1671         (process_include): New routine, broken out of do_include.
1672         (finclude): Insert 'nhd' argument, to be copied into
1673         next_header_dir of the new buffer.
1674         (main): Adjust to match.
1675         * gsyslimits.h, limity.h: Un-indent #include_next.
1676
1677 2001-05-09  Joseph S. Myers  <jsm28@cam.ac.uk>
1678
1679         * objc.texi: Move from ../libobjc/objc-features.texi.  Adjust for
1680         inclusion as a chapter of the GCC manual.
1681         * gcc.texi: Include objc.texi.
1682         * fdl.texi: Use @unnumberedsec for the addendum.
1683         * Makefile.in ($(srcdir)/gcc.info, gcc.dvi): Update dependencies.
1684
1685 Wed May  9 16:01:41 CEST 2001  Jan Hubicka  <jh@suse.cz>
1686
1687         * i386.md (DImode move splitters): Use !MMX and !SSE for the condition.
1688
1689 Wed May  9 10:40:25 2001  Alexandre Oliva  <aoliva@redhat.com>
1690
1691         * regclass.c (scan_one_insn): Update REG_N_REFS when optimizing
1692         handling of two-address insns.
1693
1694 Wed May  9 10:36:18 2001  Alexandre Oliva  <aoliva@redhat.com>
1695
1696         * Makefile.in (NM_FOR_TARGET): Look for ./nm, then
1697         ../binutils/nm-new instead of ../binutils/nm.
1698
1699 Wed May  9 12:15:46 CEST 2001  Jan Hubicka  <jh@suse.cz>
1700
1701         * i386.md (movdi splitter): Fix the splitting condition
1702         (float_extenddftf splitter): Fix mode.
1703
1704 Wed May  9 12:05:39 CEST 2001  Jan Hubicka  <jh@suse.cz>
1705
1706         * genrecog.c (write_switch): Avoid outputting of switch for
1707         types wider than int.
1708
1709 2001-05-03  Andrew Haley  <aph@cambridge.redhat.com>
1710
1711         * reload1.c (copy_eh_notes): New function.
1712         (emit_input_reload_insns): Call it.
1713         (emit_output_reload_insns): Call it.
1714
1715 2001-05-07  Zack Weinberg  <zackw@stanford.edu>
1716
1717         * config.gcc (i[34567]86-*-sco3.2v4*, i[34567]86-*-sco*):
1718         Delete stanzas.
1719         * config/i386/sco.h, config/i386/sco4.h, config/i386/scodbx.h,
1720         config/i386/sco4dbx.h, config/i386/x-sco4: Delete file.
1721
1722         * optabs.c: Delete #ifdef BROKEN_LDEXP block.
1723
1724 2001-05-07  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1725
1726         * pa.md (interspace_jump): Revise comment.
1727         (builtin_longjmp): Block initial setup insns from delay slot of
1728         interspace branch.
1729         (builtin_setjmp_receiver): New expander to save and restore PIC
1730         register.
1731
1732         * som.h (NM_FLAGS): Remove `-n' sort option.  Revise comment.
1733
1734 Mon May  7 09:30:14 2001  Jeffrey A Law  (law@cygnus.com)
1735
1736         * toplev.c (compile_file): Set up the output file before we call
1737         the various initializers for the compiler.
1738
1739         * except.c (sjlj_mark_call_sites): Do not search for assignments to
1740         non-argumment registers that are mentioned in CALL_INSN_FUNCTION_USAGE.
1741
1742         * pa.h (MAX_LONG_TYPE_SIZE): Should be 32, not 64.
1743         * pa-64.h (*_TYPE_SIZE): Undefine before redefining.
1744
1745 2001-05-06  Zack Weinberg  <zackw@stanford.edu>
1746
1747         * Makefile.in (tradcpp0): Correct typo in dependency list.
1748
1749 2001-05-06  Geoff Keating  <geoffk@redhat.com>
1750
1751         * config/rs6000/rs6000.c (rs6000_emit_prologue): Don't save
1752         the link register if we're not going to use it.
1753
1754         * config/rs6000/rs6000.c (output_profile_hook): Fix a warning.
1755         (output_function_profiler): Likewise.
1756
1757 2001-05-07  Alan Modra  <amodra@one.net.au>
1758
1759         * pa.c (compute_frame_size): 64-bit frame marker is 16 bytes.
1760
1761 2001-05-06  Alexandre Oliva  <aoliva@redhat.com>
1762
1763         * unroll.c (loop_iterations): Don't sign-extend abs_diff;
1764         zero-extend it.  Make abs_inc unsigned.
1765
1766         * optabs.c (expand_binop): Sign-extend xop0 and xop1 from the
1767         widest mode in narrowing and widening operations.
1768
1769         * config/mips/mips.md: Sign extend CONST_INTs.
1770
1771 2001-05-06  Andreas Jaeger  <aj@suse.de>
1772
1773         * invoke.texi (Option Summary): Add -momit-leaf-frame-pointer
1774         (i386 Options): Document -momit-leaf-frame-pointer.
1775
1776 2001-05-06  Neil Booth  <neil@daikokuya.demon.co.uk>
1777
1778         * c-typeck.c (internal_build_compound_expr): Check for
1779         array to pointer conversion just once.
1780
1781 2001-05-05  Richard Henderson  <rth@redhat.com>
1782
1783         * integrate.c (copy_insn_list): Substitute NOTE_EXPECTED_VALUE.
1784
1785 2001-05-05  Richard Henderson  <rth@redhat.com>
1786
1787         * except.c (remove_fixup_regions): Adjust REG_EH_REGION notes
1788         to the parent of the fixup region.
1789
1790 2001-05-05  Jakub Jelinek  <jakub@redhat.com>
1791
1792         * gcc.c (cpp_options): Define __NO_INLINE__ unless we are honoring
1793         "inline" keyword.
1794         * cpp.texi (__NO_INLINE): Document it.
1795
1796 2001-05-05  Neil Booth  <neil@daikokuya.demon.co.uk>
1797
1798         * cppfiles.c (struct include_file): New member err_no.
1799         (find_or_create_entry): Set it.
1800         (open_file): Don't set fds to -2.  Instead, use err_no to
1801         remember previous errors, if any.
1802
1803 2001-05-05  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1804
1805         * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Optimize moves
1806         between X and Y by using sequences of xgdx and xgdy.
1807
1808 2001-05-05  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1809
1810         * config/m68hc11/m68hc11.md ("*logicalsi3_silshr16"): Use '?' instead
1811         of '!' for the 'D' alternative ('!' is too strong).
1812         ("*logicalsi3_silshl16"): Likewise.
1813         ("movstricthi"): Accept 'A' when 'd' constraint, remove spurious '+'.
1814         ("movstrictsi"): Remove spurious '+'.
1815         ("movstrictqi"): Don't accept 'A' and remove spurious '+'.
1816         ("tstqi_1", "*lshrqi3_const1"): Put 'm' constraint before 'd'.
1817         ("subqi3"): Disparage with '!' the 'x' and 'y' registers to avoid
1818         a reload to them.
1819
1820 2001-05-04  David Edelsohn  <edelsohn@gnu.org>
1821
1822         * calls.c (store_one_arg): Don't divide align by BITS_PER_UNIT.
1823
1824 2001-05-04  Lars Brinkhoff  <lars@nocrew.org>
1825
1826         * simplify-rtx.c (simplify_binary_operation): Simplify ~a + 1
1827         into -a.
1828
1829 2001-05-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1830
1831         * config/rs6000/rs6000.md (ashldi3 splits): Guard with
1832         TARGET_POWERPC64.
1833
1834 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1835
1836         * config/m68hc11/m68hc11.md (lshrhi3_const1): Fix shift of
1837         soft register, use ror instead of rol.
1838
1839 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1840
1841         * config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Take
1842         into account pre/post increment decrement for 68HC12.
1843         Fix other problems in replacement and fix call to reg_mentioned_p.
1844
1845 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1846
1847         * config/m68hc11/larith.asm (L_regs_frame): New for _.frame.
1848         Put the soft registers in bss for 68HC12.
1849         (L_regs_d3_4): New for _.d3 and _.d4.
1850         (L_regs_d5_6): Likewise.
1851         (L_regs_d1_2): Likewise.
1852         * config/m68hc11/t-m68hc11-gas (T_CPPFLAGS): Compile new parts.
1853
1854 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1855
1856         * config/m68hc11/m68hc11.h (CPP_SPEC): Pass -D__HAVE_SHORT_DOUBLE__
1857         to the pre-processor when -fshort-double is specified.
1858         * config/m68hc11/m68hc11.2 (CPP_SPEC): Likewise.
1859
1860 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1861
1862         * config/m68hc11/larith.asm (divmodhi4): Empty for 68HC12.
1863         (__mulsi3): Rewrite for 68HC12.
1864         * config/m68hc11/m68hc11.md (divmodhi4): Use idivs for 68HC12.
1865         Mark 'x' constraint with earlyclobber to prevent a
1866         RELOAD_FOR_OTHER_ADDRESS to go in it.
1867         (mulhi3_m68hc12): New pattern.
1868         (mulhi3_m68hc11): Rename of mulhi3.
1869         (mulhi3): New expand for 68HC12 optimisation.
1870         (umulhisi3, mulhisi3): New patterns for 68HC12.
1871
1872 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1873
1874         * config/m68hc11/m68hc11.md (*tbne, *tbeq): New patterns for 68HC12.
1875         (extendqisi2, extendqihi2, extendhisi2): Use sex for 68HC12.
1876         (uminqi3, umaxqi3, uminhi3, umaxhi3): New pattern for 68HC12.
1877
1878 2001-05-04  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1879
1880         * config/m68hc11/m68hc11.h (CONST_COSTS): Make the cost of
1881         constants cheap after reload.
1882         * config/m68hc11/m68hc11.c (m68hc11_shift_cost): Shift by 16 and 32
1883         are cheap.
1884         (m68hc11_rtx_costs): Cost of multiplication by 65536 is expensive
1885         so that gcc prefers a shift by 16.
1886         (m6811_cost, m6812_cost): Make the shift cheap compared to an add.
1887
1888 2001-05-04  Nick Clifton  <nickc@cambridge.redhat.com>
1889
1890         * config/arm/elf.h (ASM_OUTPUT_ALIGNED_COMMON): Define.
1891
1892 2001-05-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1893
1894         * alpha.h: NULL_PTR -> NULL.
1895         * arm.c: Likewise.
1896         * arm.h: Likewise.
1897         * avr.h: Likewise.
1898         * c4x.c: Likewise.
1899         * c4x.h: Likewise.
1900         * i386.c: Likewise.
1901         * i386.md: Likewise.
1902         * i860.c: Likewise.
1903         * ia64.c: Likewise.
1904         * m68hc11.h: Likewise.
1905         * rs6000.h: Likewise.
1906         * sh.c: Likewise.
1907         * sh.h: Likewise.
1908         * sparc.h: Likewise.
1909         * v850.c: Likewise.
1910
1911         * expr.c: Likewise.
1912         * final.c: Likewise.
1913         * gcc.c: Likewise.
1914         * recog.c: Likewise.
1915
1916 2001-05-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1917
1918         * i386.c (ix86_emit_restore_regs_using_mov, ix86_save_reg): Change
1919         `bool' parameter to `int'.
1920
1921         * hash.c (hash_lookup): Likewise.
1922
1923         * hash.h (hash_lookup): Likewise.
1924
1925         * tlink.c (symbol_hash_lookup, demangled_hash_lookup): Likewise.
1926
1927 Fri May  4 13:10:03 CEST 2001  Jan Hubicka  <jh@suse.cz>
1928
1929         * i386.c (x86_initialize_trampoline): Fix mode of constant.
1930
1931 2001-05-03  Geoff Keating  <geoffk@redhat.com>
1932
1933         * invoke.texi (i386 Options): Delete references to -malign-jumps,
1934         -malign-loops, -malign-functions.
1935         * i386.c (ix86_align_funcs): Delete.
1936         (ix86_align_loops): Delete.
1937         (ix86_align_jumps): Delete.
1938         (override_options): Mark -malign-* as obsolete.  Emulate their
1939         behaviour with the -falign-* options.  Default -falign-* from
1940         the processor table.
1941         * i386.h (FUNCTION_BOUNDARY): Define to 16; revert Richard Kenner's
1942         patch of Wed May 2 13:09:36 2001.
1943         (LOOP_ALIGN): Delete.
1944         (LOOP_ALIGN_MAX_SKIP): Delete.
1945         (LABEL_ALIGN_AFTER_BARRIER): Delete.
1946         (LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Delete.
1947
1948 2001-05-04  Andreas Jaeger  <aj@suse.de>
1949
1950         * except.h: Add prototype declaration for
1951         expand_builtin_init_dwarf_reg_sizes.
1952
1953 2001-05-03  Geoffrey Keating  <geoffk@redhat.com>
1954
1955         * Makefile.in (site.exp): Set TESTING_IN_BUILD_TREE.
1956
1957 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1958
1959         * config/m68hc11/m68hc11.md ("bitcmpqi"): New pattern for bitb
1960         instruction.
1961         ("bitcmpqi2"): New pattern for bit-extract and test.
1962         ("bitcmphi"): New pattern for bitb/bita instructions.
1963
1964 2001-05-03  Joseph S. Myers  <jsm28@cam.ac.uk>
1965
1966         * gccbug.in: Use a temporary directory when the mktemp command is
1967         not available.
1968
1969 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1970
1971         * config/m68hc11/m68hc11.h (STATIC_CHAIN_REGNUM): Use soft z register
1972         instead of _.d1.
1973         (INITIALIZE_TRAMPOLINE): Call it.
1974         (TRAMPOLINE_SIZE): Define according to 68HC11/68HC12.
1975         (TRAMPOLINE_TEMPLATE): Remove.
1976         * config/m68hc11/m68hc11.c (m68hc11_initialize_trampoline): New.
1977         * config/m68hc11/m68hc11-protos.h (m68hc11_initialize_trampoline):
1978         Declare.
1979
1980 2001-05-03  David O'Brien  <obrien@FreeBSD.org>
1981
1982         * config/t-freebsd: Don't install "assert.h" in gcc.  Compile crtbeginS.o
1983         and crtendS.o with PIC.
1984
1985 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1986
1987         * config/m68hc11/larith.asm (__mulqi3): Fix multiplication of two
1988         negative numbers.
1989         (___subdi3, ___adddi3): Use x instead of y as index register.
1990         (__init_bss_section, __map_data_section): Optimize for 68HC12.
1991         (__memset, __memcpy): Likewise.
1992         (regs): Put the soft registers in bss for 68HC12.
1993         (abort): Use trap to abort for 68hc12.
1994         (__mulhi3, __mulhi32): Use emul for 68hc12.
1995         (__mulsi3): Avoid to use the tmp soft register for 68hc12.
1996
1997 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
1998
1999         * config/m68hc11/m68hc11.h (LIMIT_RELOAD_CLASS): Don't define.
2000         * config/m68hc11/m68hc11-protos.h (limit_reload_class): Remove.
2001         * config/m68hc11/m68hc11.c (limit_reload_class): Remove.
2002         (m68hc11_override_options): Remove setting of flag_no_nonansi_builtin.
2003         Set 68HC12 min offset to -65536.
2004         (print_operand): Put parenthesis arround the operand if it refers
2005         to a symbol having the same name as a register.
2006         (m68hc11_z_replacement): When z register is replaced by its
2007         equivalent soft register, force the insn to be re-recognized.
2008         (m68hc11_check_z_replacement): Fix the test when destination is
2009         the index register and z dies in the insn.
2010         (m68hc11_reorg): Remove the REG_DEAD notes beforce recomputing them.
2011
2012 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2013
2014         * config/m68hc11/m68hc11.c (m68hc11_override_options): Initialize
2015         costs according to processor variant.
2016         (m68hc11_shift_cost): New function to compute shift costs.
2017         (m68hc11_rtx_costs): Define costs according to processor variant.
2018         (m6811_cost): Costs for 68HC11.
2019         (m6812_cost): Costs for 68HC12.
2020         (COSTS_N_INSNS): Remove.
2021
2022         * config/m68hc11/m68hc11.h (RTX_COSTS): New.
2023         (DEFAULT_RTX_COSTS): Remove.
2024         (CONST_COSTS): Define costs according to OUTER_CODE.
2025         (processor_costs): New struct to define costs.
2026         (m68hc11_cost): Pointer to current costs.
2027
2028 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2029
2030         * config/m68hc11/m68hc11.md (*addhi3_68hc12): Fix generation
2031         and use m68hc11_notice_keep_cc when using leax/leay.
2032         (addhi3 split): Reject split if the insn is handled by
2033         leax/leay above.
2034         * config/m68hc11/m68hc11.c (m68hc11_split_move): For 68HC12 the
2035         push must be handled in a special way if the source operand uses
2036         sp as index register.
2037         (m68hc11_notice_keep_cc): New function.
2038         (m68hc11_gen_movhi): Use it when an insn changes a register but
2039         not the flags.
2040         (m68hc11_gen_movqi): Fix move for 68HC12.
2041         * config/m68hc11/m68hc11-protos.h (m68hc11_notice_keep_cc): Declare.
2042
2043 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2044
2045         * config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Use LCT_CONST
2046         and don't pass operands[0] to emit_library_call_value.
2047
2048 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2049
2050         * config/m68hc11/m68hc11.md (tsthi_1): Use cpd for 68HC12.
2051         (zero_extendsi split): Simplify and use (zero_extendhi).
2052         (*addhi3): Remove 'w' constraint since stack pointer is handled
2053         by (addhi3_sp).
2054         (*ashlhi3_2): Operand 2 is clobbered use '+' for its constraint.
2055         (*ashlhi3, *ashrhi3, *lshrhi3): Likewise.
2056         (*ashrhi3_const): Fix shift by 7.
2057         (*lshrsi3_const16): Fix template.
2058         (call, call_value): Fix constraint and predicate.
2059
2060 2001-05-03  Stephane Carrez  <Stephane.Carrez@worldnet.fr>
2061
2062         * config/m68hc11/m68hc11.md (X_REGNUM, D_REGNUM): New constant.
2063         (Y_REGNUM, SP_REGNUM, PC_REGNUM, A_REGNUM, B_REGNUM): Likewise.
2064         (CC_REGNUM): Likewise.
2065         (*unnamed splits): Use above constants instead of hard coded numbers.
2066         (*adcq, *subcq, *addsi_carry, *rotlqi3_with_carry): Likewise.
2067         (*rotlhi3_with_carry, *rotrhi3_with_carry): Likewise.
2068         (*return_16bit, *unnamed peepholes): Likewise.
2069
2070 2001-05-03  David O'Brien  <obrien@FreeBSD.org>
2071
2072         * config.gcc(rs6000-ibm-aix|powerpc-ibm-aix):  Do not include
2073         rs6000/rs6000.h twice.
2074
2075 2001-05-03  Mark Elbrecht  <snowball3@bigfoot.com>
2076
2077         * config/i386/djgpp.h (CPP_PREDEFINES): Define __GO32__.
2078         (CPP_SPEC): Conditionally define MSDOS and GO32.
2079         (SUBTARGET_SWITCHES): Ignore -mbnu210 and -mno-bnu210.
2080         (SUBTARGET_OVERRIDE_OPTIONS): Warn that -mbnu210 and -mno-bnu210 are
2081         ignored.
2082         (SUPPORTS_WEAK, SUPPORTS_ONE_ONLY): Remove.
2083
2084 2001-05-03  Alexandre Oliva  <aoliva@redhat.com>
2085
2086         * config/mn10300/mn10300.md: Sign-extend GEN_INT operands.
2087
2088 2001-05-03  Mark Mitchell  <mark@codesourcery.com>
2089
2090         * integrate.h (struct inline_remap): Add leaf_reg_map table.
2091         * integrate.c (expand_inline_function): Use xcalloc to allocate
2092         memory.
2093         (copy_rtx_and_substitute): Use the leaf_reg_map for leaf
2094         registers.
2095
2096 2001-05-03  Mark Mitchell  <mark@codesourcery.com>
2097
2098         * c-dump.c (dequeue_and_dump): Don't look at DECL_ASSEMBLER_NAME
2099         if it is not set.
2100
2101 2001-05-03  Alexandre Oliva  <aoliva@redhat.com>
2102
2103         * config/mn10300/mn10300.h (LINK_SPEC): Pass --relax to the
2104         linker if -mrelax is given.
2105         (TARGET_SWITCHES): Document -mrelax.
2106
2107         Re-installed 2001-01-09's patch:
2108         * hwint.h (HOST_BITS_PER_WIDE_INT, HOST_WIDE_INT): Use long long
2109         if it's wider than long and the target's long is wider than the
2110         host's.
2111
2112 2001-05-02  David O'Brien  <obrien@FreeBSD.org>
2113
2114         * config.gcc, config/rs6000/aix51.h, config/rs6000/mach.h:  Do not
2115         directly include rs6000/rs6000.h.  Instead do it in tm.h.
2116
2117 2001-05-02  Stan Shebs  <shebs@apple.com>
2118
2119         * objc/objc-act.c (STRING_OBJECT_CLASS_NAME): Default to
2120         NSConstantString for NeXT-style runtimes.
2121         (STRING_OBJECT_GLOBAL_NAME): New macro.
2122         (enum objc_tree_index): Add values OCTI_CNST_STR_GLOB_ID and
2123         OCTI_STRING_CLASS_DECL.
2124         (constant_string_global_id): New macro.
2125         (string_class_decl): Ditto.
2126         (setup_string_decl): New function.
2127         (build_objc_string_object): Use it to build a NeXT runtime
2128         compatible string initializer.
2129
2130 2001-05-02  Jakub Jelinek  <jakub@redhat.com>
2131
2132         * tradcpp.c (do_define): Make sure we don't walk past limit.
2133
2134 2000-05-01  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2135
2136         * config/rs6000/rs6000.c (rs6000_legitimate_address): Allow any stack
2137         offsets if not REG_OK_STRICT.
2138
2139         * config/rs6000/rs6000.h (REG_OK_STRICT_FLAG): New macro.
2140         (INT_REG_OK_FOR_INDEX_P): Likewise.
2141         (INT_REG_OK_FOR_BASE_P): Likewise.
2142         (REG_OK_FOR_INDEX_P): Use INT_REG_OK_FOR_INDEX_P.
2143         (REG_OK_FOR_BASE_P): Use INT_REG_OK_FOR_BASE_P.
2144         (LEGITIMATE_OFFSET_ADDRESS_P): Use INT_REG_OK_FOR_INDEX_P and
2145         INT_REG_OK_FOR_BASE_P instead of REG_OK_FOR_INDEX_P and
2146         REG_OK_FOR_BASE_P. Take an additional parameter.
2147         (LEGITIMATE_INDEXED_ADDRESS_P): Likeewise.
2148         (LEGITIMATE_INDIRECT_ADDRESS_P): Likewise.
2149         (LEGITIMATE_LO_SUM_ADDRESS_P): Likewise.
2150         (GO_IF_LEGITIMATE_ADDRESS): Move code into new function
2151         rs6000_legitimate_address() and use it.
2152         * config/rs6000/rs6000.c: Update all callers.
2153         (rs6000_legitimate_address): New function.
2154
2155 2001-05-02  David Edelsohn  <edelsohn@gnu.org>
2156
2157         * config/rs6000/rs6000.c (rs6000_emit_move): Merge
2158         special_constant conditional blocks together.
2159
2160 2001-05-02  Dale Johannesen  <dalej@apple.com>
2161
2162         * config/rs6000/rs6000.h (RS6000_ARG_SIZE): Remove unused NAMED
2163         parameter.
2164         (STRICT_ARGUMENT_NAMING): Define.
2165         * config/rs6000/rs6000.c (function_arg_advance, function_arg,
2166         function_arg_partial_nregs, setup_incoming_varargs): Remove
2167         args logic which depends on "named" now that STRICT_ARGUMENT_NAMING
2168         is defined.
2169
2170 Wed May  2 13:09:36 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2171
2172         * config/i386/i386.h (FUNCTION_BOUNDARY): Result is unsigned.
2173
2174         * function.c (fixup_var_regs_1, case SUBREG): Use promoted mode
2175         for replacement.
2176
2177         * expr.c (store_field): Do nothing except elaborate side-effects if
2178         zero-bit field.
2179
2180 2001-05-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2181
2182         * c-lex.c: NULL_PTR -> NULL.
2183         * cse.c: Likewise.
2184         * emit-rtl.c: Likewise.
2185         * gcse.c: Likewise.
2186         * genpeep.c: Likewise.
2187         * jump.c: Likewise.
2188         * mips-tdump.c: Likewise.
2189         * reload1.c: Likewise.
2190         * rtlanal.c: Likewise.
2191         * stmt.c: Likewise.
2192         * stor-layout.c: Likewise.
2193         * toplev.c: Likewise.
2194
2195 2001-05-01  Per Bothner  <per@bothner.com>
2196
2197         * expr.c (expand_expr):  When compiling LABELED_BLOCK_EXPR,
2198         call do_pending_stack_adjust before emiting label.
2199
2200 2001-05-01  Mark Mitchell  <mark@codesourcery.com>
2201
2202         * extend.texi: Fix typo.
2203
2204 2001-05-01  Stan Shebs  <shebs@apple.com>
2205
2206         * objc/objc-act.c (build_module_descriptor): Clear DECL_CONTEXT
2207         of UOBJC_MODULES_decl.
2208         (generate_strings): Clear DECL_CONTEXT of new decl nodes.
2209         (generate_descriptor_table): Ditto.
2210         (generate_protocols): Ditto.
2211         (generate_protocol_list): Ditto.
2212         (generate_classref_translation_entry): Ditto.
2213
2214 2001-05-01  Jeffrey Oldham  <oldham@codesourcery.com>
2215
2216         * invoke.texi (Optimize Options): Add documentation for `--param
2217         max-delay-slot-insn-search' and `--param
2218         max-delay-slot-live-search' and reorder --param section.
2219         * params.def: Modify initial comment.
2220         * params.h (param_info): Add `help' member.
2221         * toplev.c (lang_independent_params): Include `help' description.
2222         (display_help): Print --param parameters.
2223
2224 2001-05-01  Zack Weinberg  <zackw@stanford.edu>
2225
2226         * config.gcc: Don't default xmake_file to ${cpu_type}/x-${cpu_type}.
2227         Remove references to deleted files.
2228         (*-*-openbsd): No need to override xmake_file.
2229         (*-*-sysv4): Treat like *-*-sysv.
2230
2231         * configure.in: Probe for ldopen in various places, and set up
2232         collect2 to be linked with them if found.
2233         Don't dink with Windows registry stuff unless $host_os is a
2234         Win32 os name.  Check to see if we need -ladvapi32.
2235         * configure: Regenerate.
2236
2237         * Makefile: Get rid of CLIB and HOST_CLIB.
2238         Substitute in COLLECT2_LIBS and link collect2 against its contents.
2239         * build-make: Get rid of HOST_CLIB.
2240
2241         * config/a29k/x-unix, config/alpha/x-osf, config/i386/x-aix,
2242         config/i386/x-osfrose, config/m68k/x-dpx2, config/mips/x-iris3,
2243         config/mips/x-mips, config/mips/x-osfrose, config/mips/x-sony,
2244         config/mips/x-sysv, config/rs6000/x-aix31, config/rs6000/x-aix41,
2245         config/rs6000/x-rs6000: Delete.
2246
2247         * config/i386/x-cygwin, config/m68k/t-aux, config/mips/x-iris:
2248         Don't set CLIB.
2249
2250         24 x-host fragments remain, 0 x-cpu, 3 top level.
2251
2252 2001-05-01  Zack Weinberg  <zackw@stanford.edu>
2253
2254         * aclocal.m4 (gcc_AC_C_CHAR_BIT): Correct test program.
2255         * configure: Regenerate.
2256
2257 2001-05-01  Angela Marie Thomas <angela@cygnus.com>
2258
2259         * Makefile.in (install-headers): Remove redundant dependency.
2260
2261 2001-05-01  Nathan Sidwell  <nathan@codesourcery.com>
2262
2263         * c-tree.texi (USING_STMT): Document.
2264
2265 2001-05-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2266
2267         * bitmap.c: Change NULL_PTR to NULL or "(rtx*)0".
2268         * c-common.c: Likewise.
2269         * c-decl.c: Likewise.
2270         * combine.c: Likewise.
2271         * rs6000.c: Likewise.
2272         * except.c: Likewise.
2273         * explow.c: Likewise.
2274         * expr.c: Likewise.
2275         * fold-const.c: Likewise.
2276         * function.c: Likewise.
2277         * gcc.c: Likewise.
2278         * gcse.c: Likewise.
2279         * integrate.c: Likewise.
2280         * loop.c: Likewise.
2281         * objc/objc-act.c: Likewise.
2282         * recog.c: Likewise.
2283         * reg-stack.c: Likewise.
2284         * reload.c: Likewise.
2285         * reload1.c: Likewise.
2286         * simplify-rtx.c: Likewise.
2287         * stmt.c: Likewise.
2288         * varasm.c: Likewise.
2289
2290 2001-05-01  Gabriel Dos Reis  <gdr@codesourcery.com>
2291
2292         * diagnostic.def: New file.
2293         * diagnostic.h (diagnostic_t): New enum.
2294         * Makefile.in (diagnostic.o): Depend on diagnostic.def
2295
2296 2001-04-30  Zack Weinberg  <zackw@stanford.edu>
2297
2298         * tsystem.h: Test only POSIX for availability of string.h
2299         and time.h.
2300         * config.gcc (all systems): If USG appeared in xm_defines,
2301         change it to POSIX.  If both USG and POSIX appeared, just
2302         delete USG. Remove unnecessary quotes around xm_defines
2303         settings.
2304         (m68k-crds-unos*): Don't #define unos - tested nowhere.
2305         (m68k-apple-aux*): Don't #define AUX - tested nowhere.
2306         (alpha*-*-linux*ecoff*, powerpc-*-linux*libc1,
2307         powerpc-*-linux*): No need to set xm_defines - handled by
2308         global settings for *-*-linux*.
2309
2310 2001-04-30  Zack Weinberg  <zackw@stanford.edu>
2311
2312         * dbxout.c, mips-tfile.c, config/mips/mips.c, xcoffout.c:
2313         Always include gstab.h, not system stab.h.  Don't provide
2314         default definitions of N_CATCH or N_OPT.  Always use the
2315         gstab.h variant of STAB_CODE_TYPE.
2316         * final.c: Don't include stab.h/gstab.h at all, or provide
2317         defaults for N_SLINE and N_SOL.
2318
2319         * xcoffout.c: Can assume N_MAIN, N_DSLINE, N_BSLINE, N_BINCL,
2320         N_EINCL, N_EXCL, N_M2C, N_SCOPE, N_CATCH, and N_OPT are
2321         available.
2322         * sdbout.c: Always include gsyms.h instead of system syms.h.
2323
2324         * configure.in: No need to check for stab.h.
2325         * configure, config.in: Regenerate.
2326         * Makefile.in (final.o): Don't depend on gstab.h.
2327
2328 2001-04-30  Mark Mitchell  <mark@codesourcery.com>
2329             Richard Henderson  <rth@redhat.com>
2330
2331         * extend.texi: Improve documentation of volatile asms.
2332
2333 2001-04-30  Mark Mitchell  <mark@codesourcery.com>
2334
2335         * c-tree.texi: Fix thinko.
2336         * gcc.texi: Likewise.
2337
2338 2001-04-30  Richard Henderson  <rth@redhat.com>
2339
2340         * c-common.c (c_promoting_integer_type_p): New function, from the
2341         corpse of old macro.  Properly promote too-small enumerations and
2342         booleans.  Adjust all callers.
2343         * c-common.h (C_PROMOTING_INTEGER_TYPE_P): Remove.
2344         (c_promoting_integer_type_p): Declare.
2345         * c-decl.c: Adjust C_PROMOTING_INTEGER_TYPE_P invocations.
2346         * c-typeck.c: Likewise.
2347         (default_conversion): Remove now redundant boolean check.
2348
2349 2001-04-30  Jan Hubicka  <jh@suse.cz>
2350             Richard Henderson  <rth@redhat.com>
2351
2352         * regmove.c (try_apply_stack_adjustment): Remove now redundant
2353         sanity checks.
2354         (combine_stack_adjustments_for_block): Don't combine stack
2355         allocation followed by deallocations.  Handle grow-up stacks.
2356
2357 2001-04-30  Mark Mitchell  <mark@codesourcery.com>
2358
2359         * fdl.texi: New file.
2360         * c-tree.texi: Use the GFDL.
2361         * gcc.texi: Likewise.
2362
2363 2001-04-30  Stan Shebs  <shebs@apple.com>
2364
2365         * invoke.texi: Add a section documenting Objective-C options.
2366
2367 2001-04-27  Andrew Haley  <aph@cambridge.redhat.com>
2368
2369         * emit-rtl.c (try_split):  Copy EH notes to sequence.
2370
2371 2001-04-30  Mark Mitchell  <mark@codesourcery.com>
2372
2373         * regmove.c (record_stack_memrefs): Catch all references to the
2374         stack pointer.
2375
2376 2001-04-29  Toomas Rosin <toomas at ns dot tklabor dot ee>
2377
2378         * Makefile.in (stmp-fixinc): quote shell assignment values
2379
2380 2001-04-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2381
2382         * c-aux-info.c: NULL_PTR->NULL in calls to `concat'.
2383
2384         * gcc.c: Likewise.
2385
2386         * prefix.c: Likewise.
2387
2388 2001-04-28  Stan Shebs  <shebs@apple.com>
2389
2390         * objc/objc-act.c (handle_class_ref): Rewrite to flush target
2391         specific code and use new macro ASM_DECLARE_UNRESOLVED_REFERENCE.
2392         * config/darwin.h (ASM_DECLARE_UNRESOLVED_REFERENCE): Define.
2393         * tm.texi (ASM_DECLARE_UNRESOLVED_REFERENCE): Document.
2394
2395         * config/darwin.h (STANDARD_EXEC_PREFIX): Don't define.
2396         (NEXT_OBJC_RUNTIME): Define.
2397
2398 Sat Apr 28 21:02:58 CEST 2001  Jan Hubicka  <jh@suse.cz>
2399
2400         * rtl.h (simplify_gen_relational): Add cmp_mode parameter.
2401         * simplify-rtx.c (simplify_gen_relational): Likewise.
2402
2403         * simplify-rtx.c (simplify_replace_rtx): Handle relationals and MEMs.
2404
2405         * i386.h (VALID_SSE_REG_MODE): Accept MMX modes if SSE2
2406         * i386.md (movsi_1, movdi2, movdi_1_rex64): Handle SSE2 moves.
2407
2408         * i386.md (negsf2, negdf2, abssf2, absdf2): Force operands to
2409         registers in SSE case; fix handling of the immediates.
2410         (negsf2_ifs, abssf2_ifs): Tweak constraints; require
2411         operands to be in regsiters before reload.
2412         (negdf2_ifs, absdf2_ifs): Likewise; disable for 64bit
2413         (negdf2_ifs_rex64, absdf2_ifs_rtx64): New.
2414         (abstf,absxf,negtf,negxf splitters): Compute
2415         properly the regnum for x86_64.
2416         (avsdf2_if_rex64): New.
2417
2418 Sat Apr 28 10:36:23 2001  Jeffrey A Law  (law@cygnus.com)
2419
2420         * flow.c (propagate_block_delete_insn): Handle deletion of ADDR_VEC
2421         and ADDR_DIFF_VEC insns when the proceeding CODE_LABEL was put
2422         into the constant pool.
2423         * jump.c (jump_optimize_1): Remove barrier successors after all
2424         the LABEL_NUSES counds have been computed.
2425         (delete_barrier_successors): When deleting a tablejump insn, also
2426         delete the jump table it uses.
2427         * varasm.c (force_const_mem): Set LABEL_PRESERVE_P when forcing a
2428         label into memory.
2429
2430 2001-04-28  Martin Kalen  <martin.kalen@todaysystems.com.au>
2431
2432         * pa.c (FRP): Remove erroneous white space in macro definition.
2433
2434 2001-04-28  Andreas Jaeger  <aj@suse.de>
2435
2436         * invoke.texi: Use XX-bit instead of XXbit or XX bit where
2437         appropriate.
2438         * extend.texi: Likewise.
2439         * tm.texi: Likewise.
2440
2441 2001-04-28  Andreas Jaeger  <aj@suse.de>
2442
2443         * md.texi: Use XX-bit instead of XXbit or XX bit where
2444         appropriate.
2445
2446 2001-04-28  Jens Schweikhardt <schweikh@schweikhardt.net>
2447
2448         * gcc.c (process_command): Allow -l lib in addition to -llib
2449         for POSIX compliance. This fixes PR c/2347.
2450
2451         * invoke.texi: Update section on Link Options accordingly.
2452
2453 2001-04-27  Zack Weinberg  <zackw@stanford.edu>
2454
2455         * function.c (purge_addressof_1): Remove the duplicate
2456         if (code == SET) block.  Fold the two if (code == ADDRESSOF)
2457         blocks together.
2458
2459 2001-04-28  Jason Merrill  <jason_merrill@redhat.com>
2460
2461         * except.c (expand_eh_region_start): Don't start a new block.
2462         (expand_eh_region_end): Don't end a block.
2463         * stmt.c (expand_end_bindings): Don't end EH blocks.
2464         (expand_decl_cleanup): Starting an EH region won't change the block.
2465         (mark_block_as_eh_region, mark_block_as_not_eh_region): Lose.
2466         (is_eh_region): Lose.
2467         * tree.h: Adjust.
2468
2469 2001-04-27  Jeffrey Oldham  <oldham@codesourcery.com>
2470
2471         * except.c (expand_eh_region_end_cleanup): word_mode, not Pmode.
2472
2473         * collect2.c (main): Add `-L' case to remove duplicate entries.
2474         (is_in_args): New function to check for a duplicate argument.
2475         * defaults.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): New macro.
2476         * tm.texi (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): New documentation.
2477         * config/mips/iris6.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES):
2478         Define to be nonzero.
2479
2480 2001-04-27  Andreas Jaeger  <aj@suse.de>
2481             Richard Henderson  <rth@redhat.com>
2482
2483         * md.texi (Machine Constraints): Document additional i386
2484         constraints and fix description of "A".
2485
2486 Fri Apr 27 10:43:49 2001  Jeffrey A Law  (law@cygnus.com)
2487
2488         * tm.texi (TARGET_MEM_FUNCTIONS): Update text.
2489
2490 2001-04-27  Jason Merrill  <jason_merrill@redhat.com>
2491
2492         * except.c (get_exception_filter): word_mode, not Pmode.
2493
2494 2001-04-26  Geoffrey Keating  <geoffk@redhat.com>
2495
2496         * config/sparc/sparc.md (movsf_no_f_insn): Add more alternatives
2497         common to other movsf patterns.  Move up so that in future
2498         people who change the other patterns will change it too.
2499         (movsf_lo_sum): Allow even for soft-float; add appropriate
2500         constraints.
2501         (movsf_high): Likewise.
2502         (movsf_high+1): Allow even for soft-float.
2503
2504         * function.c (expand_function_end): Always clobber the
2505         return registers, even if there is no return label.
2506
2507 Thu Apr 26 20:28:21 CEST 2001  Jan Hubicka  <jh@suse.cz>
2508
2509         * (ix86_expand_fp_movcc): Re-enable SSE conditional move generation.
2510
2511 Thu Apr 26 19:20:28 CEST 2001  Jan Hubicka  <jh@suse.cz>
2512
2513         * i386.md (abs/neg splitter): Fix calculation of sign bit for TFmodes
2514         (pushqi2_rex64, pushhi2_rex64): Add.
2515
2516 2001-04-26  Andrew Haley  <aph@cambridge.redhat.com>
2517
2518         * except.c (expand_eh_region_end_cleanup): Force pending stack
2519         adjust before emitting label that branches around cleanup code.
2520
2521 2001-04-26  H.J. Lu  (hjl@gnu.org)
2522
2523         * config.gcc (mips*-*-linux*): Add elfos.h to tm_file.
2524
2525         * config/mips/ecoff.h (STARTFILE_SPEC): Undefine before
2526         define.
2527         * config/mips/elf64.h (MAX_OFILE_ALIGNMENT): Likewise.
2528         (ASM_OUTPUT_SECTION_NAME): Likewise.
2529         (ASM_WEAKEN_LABEL): Likewise.
2530         (UNIQUE_SECTION): Likewise.
2531         (ASM_OUTPUT_CONSTRUCTOR): Likewise.
2532         (ASM_OUTPUT_DESTRUCTOR): Likewise.
2533         * config/mips/elf.h (MAX_OFILE_ALIGNMENT): Likewise.
2534         (ASM_OUTPUT_SECTION_NAME): Likewise.
2535         (ASM_WEAKEN_LABEL): Likewise.
2536         (UNIQUE_SECTION): Likewise.
2537         (ASM_OUTPUT_CONSTRUCTOR): Likewise.
2538         (ASM_OUTPUT_DESTRUCTOR): Likewise.
2539         * config/mips/linux.h (HANDLE_SYSV_PRAGMA): Likewise.
2540         * config/mips/mips.h (DBX_CONTIN_LENGTH): Likewise.
2541         (ASM_FILE_START): Likewise.
2542         (ASM_OUTPUT_SOURCE_LINE): Likewise.
2543         (ASM_DECLARE_OBJECT_NAME): Likewise.
2544         (ASM_FILE_END): Likewise.
2545         (ASM_DECLARE_FUNCTION_NAME): Likewise.
2546         (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
2547         (ASM_GENERATE_INTERNAL_LABEL): Likewise.
2548         (ASM_OUTPUT_CASE_LABEL): Likewise.
2549         (ASM_OUTPUT_SKIP): Likewise.
2550         (ASM_OUTPUT_ASCII): Likewise.
2551         (ASM_OUTPUT_IDENT): Likewise.
2552         (READONLY_DATA_SECTION): Likewise.
2553         (EXTRA_SECTIONS): Likewise.
2554         (EXTRA_SECTION_FUNCTIONS): Likewise.
2555         (SELECT_RTX_SECTION): Likewise.
2556         (SELECT_SECTION): Likewise.
2557
2558         * config/mips/linux.h (INVOKE__main): Undefine.
2559         (CTOR_LIST_BEGIN): Likewise.
2560         (CTOR_LIST_END): Likewise.
2561         (DTOR_LIST_BEGIN): Likewise.
2562         (DTOR_LIST_END): Likewise.
2563         (SET_ASM_OP): Defined it to ".dummy".
2564         (ASM_OUTPUT_DEF): Defined.
2565         (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Defined.
2566
2567 2001-04-26  Nick Clifton  <nickc@cambridge.redhat.com>
2568
2569         * config/arm/arm.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Define, if the
2570         assembler supports .p2align.
2571
2572 2001-04-26  Nathan Sidwell <nathan@codesourcery.com>
2573
2574         * c-lex.c (c_lex): Remove # from %o diagnostic formatting.
2575
2576 2001-04-26  Jakub Jelinek  <jakub@redhat.com>
2577
2578         * integrate.c (expand_inline_function): Check for error_mark_node
2579         in actual argument.
2580
2581 2001-04-26  Jakub Jelinek  <jakub@redhat.com>
2582
2583         * config/i386/i386.h (CC1_CPU_SPEC): Fix deprecation warnings for
2584         -m386 and -m486.
2585
2586 2001-04-26  Alexandre Oliva  <aoliva@redhat.com>
2587
2588         * configure.in (configargs.h): Define thread_model.
2589         * configure: Rebuilt.
2590         * gcc.c (main): Print it with -v.
2591
2592 2001-04-25  Joseph S. Myers  <jsm28@cam.ac.uk>
2593
2594         * invoke.texi: Document -Wmissing-braces, -dumpspecs,
2595         -dumpmachine, -dumpversion, -fmem-report and -ftime-report.
2596         * gcc.1: Regenerate.
2597
2598 2001-04-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2599
2600         * dwarfout.c (is_pseudo_reg, type_main_variant, is_tagged_type,
2601         is_redundant_typedef): Use static inline instead of inline static.
2602
2603 Wed Apr 25 18:21:01 2001  Christopher Faylor <cgf@cygnus.com>
2604
2605         * config/i386/cygwin.h: Move W32API search to LINK_SPEC to ensure that
2606         this directory is always searched.
2607
2608 2001-04-25  Richard Henderson  <rth@redhat.com>
2609
2610         * config/i386/i386.c (ix86_expand_epilogue): Properly compute size
2611         of registers to restore along non eh_return path.
2612
2613 2001-04-25  Jakub Jelinek  <jakub@redhat.com>
2614
2615         * c-format.c (check_format_info_recurse): Handle
2616         PLUS_EXPR for format string.
2617
2618 2001-04-25  Jakub Jelinek  <jakub@redhat.com>
2619
2620         * config/ia64/ia64.h (CC1_SPEC): Define.
2621         * config/ia64/linux.h (CC1_SPEC): Define.
2622
2623 Wed Apr 25 17:09:50 2001  J"orn Rennecke <amylaar@redhat.com>
2624
2625         * emit-rtl.c (constant_subword): Also do sign extension in
2626         BITS_PER_WORD == 16 case.
2627
2628 2001-04-25  Jason Merrill  <jason_merrill@redhat.com>
2629
2630         * loop.c (try_swap_copy_prop): Go back to checking insn.
2631
2632 2001-04-25  Jakub Jelinek  <jakub@redhat.com>
2633
2634         * emit-rtl.c (subreg_hard_regno): Only do HARD_REGNO_MODE_OK check
2635         if check_mode is non-zero.
2636
2637 2001-04-25  Jakub Jelinek  <jakub@redhat.com>
2638
2639         * config/i386/i386.c (ix86_expand_int_movcc): If overlap between
2640         out and comparison sequence has been detected, put result into
2641         proper temporary pseudo.
2642
2643 2001-04-24  Zack Weinberg  <zackw@stanford.edu>
2644
2645         * Makefile.in (LIB2FUNCS): Remove _varargs and __dummy.
2646         * libgcc-std.ver: Remove __builtin_saveregs, __dummy, and __empty.
2647         * libgcc2.c: Remove __dummy and __builtin_saveregs.
2648         * libgcc2.h: Don't prototype __builtin_saveregs or __dummy.
2649         * config/i860/varargs.asm: New file - preserve i860 __builtin_saveregs
2650         for future reference.
2651
2652 2001-04-24  Jason Merrill  <jason_merrill@redhat.com>
2653
2654         * except.c (reachable_handlers): Step out one level from a RESX.
2655
2656         * except.c (struct eh_region): Rename 'last' to 'resume'.
2657         (mark_eh_region, duplicate_eh_region_1): Adjust.
2658         (expand_eh_region_end_cleanup): Remember the jump, not the barrier.
2659         (build_post_landing_pads): Likewise.
2660         (expand_end_catch, expand_eh_region_end_allowed): Don't set it.
2661         (expand_eh_region_end_must_not_throw): Likewise.
2662         (connect_post_landing_pads): Thread (only) regions with non-deleted
2663         resume insns.
2664
2665         * except.c (expand_eh_region_end_cleanup): Save the EH return data
2666         registers around the cleanup.
2667         (get_exception_filter): New fn.
2668         (finish_eh_generation): Use it.
2669
2670 2001-04-24  Nathan Sidwell <nathan@codesourcery.com>
2671
2672         * c-semantics.c (add_scope_stmt): Don't call
2673         current_scope_stmt_stack multiple times.
2674
2675 2001-04-24  Zack Weinberg  <zackw@stanford.edu>
2676             Nathan Sidwell <nathan@codesourcery.com>
2677
2678         Lazy __FUNCTION__ generation.
2679         * c-common.h (RID_FUNCTION_NAME, RID_PRETTY_FUNCTION_NAME,
2680         RID_C99_FUNCTION_NAME): New _RIDs.
2681         (CTI_FUNCTION_ID, CTI_PRETTY_FUNCTION_ID, CTI_FUNC_ID): Remove.
2682         (CTI_FUNCTION_NAME_DECL, CTI_PRETTY_FUNCTION_NAME_DECL,
2683         CTI_C99_FUNCTION_NAME_DECL, CTI_SAVED_FUNCTION_NAME_DECLS): New
2684         global tree slots.
2685         (function_id_node, pretty_function_id_node, func_id_node): Remove.
2686         (c99_function_name_decl_node, function_name_decl_node,
2687         pretty_function_name_decl_node, saved_function_name_decls):
2688         Declare.
2689         (struct language_function): Remove x_function_name_declared_p.
2690         (make_fname_decl): Remove a parameter.
2691         (declare_function_names): Remove prototype.
2692         (start_fname_decls, finish_fname_decls): Prototype.
2693         (fname_as_string): Likewise.
2694         (fname_string, fname_decl): Likewise.
2695         * c-common.c (make_fname_decl): Adjust.
2696         (struct fname_var_t): New struct.
2697         (fname_vars): New static array.
2698         (declare_function_name): Remove.
2699         (start_fname_decls, finish_fname_decls): New functions.
2700         (fname_as_string): New function from remnants of
2701         declare_function_name.
2702         (fname_string, fname_decl): New functions.
2703
2704         * c-decl.c (c_function_name_declared_p): Remove.
2705         (init_decl_processing): Don't generate __FUNCTION__ et al ids,
2706         don't call declare_function_name. Call start_fname_decls.
2707         (c_make_fname_decl): Adjust parameters. Generate the name. Don't
2708         clobber the line number. Call finish_decl.
2709         (start_function): Call start_fname_decls.
2710         (finish_function): Call finish_fname_decls.
2711         Remove c_function_name_declared_p.
2712         (push_c_function_context): Don't push c_function_name_declared_p.
2713         (pop_c_function_context): Don't pop c_function_name_declared_p.
2714         (c_begin_compound_stmt): Don't check c_function_name_declared_p.
2715         * c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): New tokens.
2716         (program): Call finish_fname_decls for C.
2717         (primary): Add VAR_FUNC_NAME.
2718         (reswords): Add slots for __FUNCTION__ et al.
2719         (rid_to_yy): Add mappings for __FUNCTION__ et al.
2720         (yylexname): If it's a STRING_FUNC_NAME generate the function name
2721         now. Don't look for VAR_DECLs containing __FUNCTION__ et al.
2722         * c-semantics.c (prune_unused_decls): Remove.
2723         (finish_stmt_tree): Don't call prune_unused_decls.
2724         (genrtl_decl_stmt): Don't prune unused decls here.
2725
2726 2001-04-24  Nick Clifton  <nickc@cambridge.redhat.com>
2727
2728         * dwarf2out.c (mem_loc_descriptor): If a SYMBOL_REF is in the
2729         constant pool, use the pool's SYMBOL_REF instead.
2730
2731         * config/v850/v850.h (STRICT_ALIGNMENT): Always set, even for the
2732         v850e.
2733
2734 2001-04-23  Joseph S. Myers  <jsm28@cam.ac.uk>
2735
2736         * c-convert.c (convert): When converting to a BOOLEAN_TYPE, avoid
2737         passing nested NOP_EXPRs to fold.
2738
2739 Mon Apr 23 14:32:12 CEST 2001  Jan Hubicka  <jh@suse.cz>
2740
2741         * reg-stack.c (emit_swap_insn): Do not get pass CALL_INSNs.
2742
2743 2001-04-22  Mark Mitchell  <mark@codesourcery.com>
2744
2745         * loop.c (loop_delete_insns): Add prototype.
2746
2747 2001-04-23  Phil Edwards  <pme@sources.redhat.com>
2748
2749         * configure.in:  Remove ENABLE_STD_NAMESPACE.
2750         * config.in:  Regenerated.
2751         * configure:  Regenerated.
2752
2753 2001-04-22  Stan Shebs  <shebs@apple.com>
2754
2755         * config.gcc (powerpc-*-darwin*): Move the flag in xm-darwin.h
2756         into xm_defines.
2757         * config/rs6000/xm-darwin.h: Remove file.
2758
2759 2001-04-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2760
2761         * collect2.c (main): Use concat in lieu of xmalloc/sprintf.
2762         (write_c_file_stat): Likewise.
2763
2764         * dbxout.c (dbxout_init): Likewise.
2765
2766         * profile.c (output_func_start_profiler): Likewise.
2767
2768 2001-04-22  Philipp Thomas  <pthomas@suse.de>
2769
2770         * ABOUT-GCC-NLS: Now that gettext 0.10.37 is out,
2771         require it instead of the CVS version.
2772         * cpperror.c (v_message): Put a blank before the macro
2773         body to not confuse exgettext.
2774
2775 2001-04-21  Mark Mitchell  <mark@codesourcery.com>
2776
2777         * flow.c (proagate_one_insn): Remove useless assignment.
2778         * jump.c (delete_insn): Tidy.
2779         * loop.c (try_copy_prop): When deleting an instruction with a
2780         REG_RETVAL note, delete the entire libcall sequence.
2781         (loop_delete_insns): New function.
2782         * unroll.c (initial_reg_note_copy): Copy INSN_LIST notes, even if
2783         we're not substituting into them yet.
2784
2785 2001-04-21  Kazu Hirata  <kazu@hxi.com>
2786
2787         * config/h8300/h8300.c (general_operand_src): Fix a comment typo.
2788
2789         * config/sparc/sparc.c (sparc_flat_eligible_for_epilogue_delay):
2790         Fix a comment typo.
2791         * config/i960/i960.c (signed_arith_operand): Likewise.
2792
2793         * calls.c (expand_call): Fix a comment typo.
2794
2795 2001-04-20  Zack Weinberg  <zackw@stanford.edu>
2796
2797         * configure.in: Probe for times, clock, struct tms, and clock_t.
2798         * configure, config.in: Regenerate.
2799         * timevar.c: Replace ifdef forest in get_time with (relatively)
2800         straightforward series of checks based on autoconf's probes.
2801
2802 Fri Apr 20 12:24:50 2001  Jeffrey A Law  (law@cygnus.com)
2803
2804         * config/pa/som.h (NM_FLAGS): Define.
2805
2806 2001-04-20  Bernd Schmidt  <bernds@redhat.com>
2807
2808         * ia64.h (MD_SCHED_REORDER, MD_SCHED_REORDER2): Pass CLOCK to called
2809         function.
2810         * ia64-protos.h (ia64_sched_reorder): Additional arg for clock.
2811         * ia64.c (nop_cycles_until): New function.
2812         (prev_cycle, prev_first, last_issued): New static variables.
2813         (ia64_sched_reorder): Additional arg for clock.
2814         On final scheduling pass, emit extra NOPs as needed.
2815         Set prev_first and prev_cycle.
2816         (ia64_sched_reorder2): Pass clock arg down to ia64_sched_reorder.
2817         (ia64_variable_issue): Set last_issued.
2818
2819 2001-04-20  Alexandre Oliva  <aoliva@redhat.com>
2820
2821         * config/i386/i386.c (ix86_expand_int_movcc,
2822         ix86_expand_strlensi_unroll_1): Sign-extend CONST_INTs.
2823
2824 2001-04-20  Geoff Keating  <geoffk@redhat.com>
2825
2826         * config/rs6000/rs6000.md (ctrsi_internal1, ctrsi_internal2,
2827         ctrsi_internal3, ctrsi_internal4, ctrsi_internal5,
2828         ctrsi_internal6, ctrdi_internal1, ctrdi_internal2,
2829         ctrdi_internal3, ctrdi_internal4, ctrdi_internal5,
2830         ctrdi_internal6): In the short-branch case, this insn is only 4
2831         bytes long.  Reported by Reza Yazdani <reza@apple.com>.
2832
2833 2001-04-20  Jakub Jelinek  <jakub@redhat.com>
2834
2835         * reg-stack.c (check_asm_stack_operands): Issue error if "=t" resp.
2836         "=u" is used together with "st" resp. "st(1)" clobber.
2837
2838 2001-04-20  Jakub Jelinek  <jakub@redhat.com>
2839
2840         * gcse.c (gcse_main): Fix comment typo.
2841         (delete_null_pointer_check): Likewise.
2842         (hash_scan_set): Don't consider sets with REG_EQUIV MEM notes.
2843         * cse.c (cse_insn): Likewise.
2844         * function.c (fixup_var_refs_insns_with_hash): The sequence is
2845         toplevel.
2846
2847 2001-04-19  Zack Weinberg  <zackw@stanford.edu>
2848
2849         * toplev.c: Excise all code for the undocumented -dm option.
2850         (float_signal): Call signal just once, unconditionally.
2851
2852 2001-04-19  Geoff Keating  <geoffk@redhat.com>
2853
2854         * fold-const.c (fold): Use first_rtl_op rather than
2855         TREE_CODE_LENGTH when looping over parameters of a tree.
2856         Correct strange grouping in test for evaluated SAVE_EXPR.
2857
2858 Thu Apr 19 19:15:26 2001  Jeffrey A Law  (law@cygnus.com)
2859
2860         * config/pa/pa-linux.h (CPLUSPLUS_CPP_SPEC): Undefine.
2861         * config/pa/pa.h (CPLUSPLuS_CPP_SPEC): Define.
2862
2863         * config/pa/som.h (ASM_OUTPUT_FUNCTION_PREFIX): Truncate subspace
2864         name at 32 total characters.
2865         (ASM_OUTPUT_SECTION_NAME): Similarly.  Also, only support placing
2866         functions in named sections -- data items can still go into unique
2867         sections, but they have normal names (ie $LIT$ and $DATA$).
2868
2869         * config/pa/som.h (SUPPORTS_INIT_PRIORITY): SOM does not support
2870         INIT_PRIORITY.
2871
2872 2001-04-19 DJ Delorie  <dj@redhat.com>
2873
2874         * config/alpha/vms.h: Change OBJECT_SUFFIX and EXECUTABLE_SUFFIX
2875         to TARGET_OBJECT_SUFFIX and TARGET_EXECUTABLE_SUFFIX.
2876         * config/i386/cygwin.h: Likewise.
2877         * config/i386/mingw32.h: Likewise.
2878         * config/vax/vms.h: Likewise.
2879         * config/i386/djgpp.h: Remove NO_AUTO_EXE_SUFFIX.
2880
2881         * config/alpha/xm-vms.h: Change OBJECT_SUFFIX and EXECUTABLE_SUFFIX
2882         to HOST_OBJECT_SUFFIX and HOST_EXECUTABLE_SUFFIX.
2883         * config/i386/xm-cygwin.h: Likewise.
2884         * config/i386/xm-djgpp.h: Likewise.
2885         * config/i386/xm-mingw32.h: Likewise.
2886         * config/vax/xm-vms.h: Likewise.
2887
2888         * mkdeps.c (deps_add_default_target): Use TARGET_OBJECT_SUFFIX
2889         instead of OBJECT_SUFFIX.
2890         * collect2.c (find_a_file): Look for files matching the extension
2891         HOST_EXECUTABLE_SUFFIX instead of EXECUTABLE_SUFFIX.
2892         * gcc.c (DEFAULT_SWITCH_CURTAILS_COMPILATION): Depend on
2893         TARGET_EXECUTABLE_SUFFIX.
2894         (find_a_file): Use HOST_EXECUTABLE_SUFFIX.
2895         (make_relative_prefix): Likewise.
2896         (convert_filename): Use TARGET_ suffixes throughout.  Remove
2897         NO_AUTO_EXE_SUFFIX.
2898         (process_command): Likewise.
2899         (do_spec_1): Likewise.
2900         * java/lang.c (init_parse): Likewise.
2901
2902         * gcc.texi : Document four new options matching the pattern
2903         (HOST|TARGET)_(OBJECT|EXECUTABLE)_SUFFIX.  Remove documentation
2904         for deleted macros OBJECT_SUFFIX and EXECUTABLE_SUFFIX.  Remove
2905         documentation for NO_AUTO_EXE_SUFFIX.
2906
2907 2001-04-19  Mark Mitchell  <mark@codesourcery.com>
2908
2909         * toplev.h (struct lang_hooks): Allow decode_option to indicate
2910         that language-independent processing should not be done.
2911         * toplev.c (main): Adjust accordingly.
2912
2913         * rtl.texi (jump_insn): Expand on JUMP_LABEL documentation.
2914         * loop.c (load_mems): Handle a NULL JUMP_LABEL for a JUMP_INSN.
2915
2916         * mips.md (reload_outputdi): Require that operand0 be a
2917         general_operand.
2918
2919 2001-04-19  Jakub Jelinek  <jakub@redhat.com>
2920
2921         * invoke.texi (-Wshadow): Clarify.
2922
2923 2001-04-18  Mark Mitchell  <mark@codesourcery.com>
2924
2925         * loop.c (load_mems): Examine all the instructions in the loop
2926         before concluding that all jumps branch to the first instruction
2927         after the loop.
2928
2929 Wed Apr 18 20:32:03 2001  Christopher Faylor <cgf@cygnus.com>
2930
2931         * config/i386/xm-cygwin.h (CPP_SPEC): Fix typo.
2932
2933 2001-04-18  Jakub Jelinek  <jakub@redhat.com>
2934
2935         * cpp.texi (-Wwhite-space): Remove.
2936         (-Wall): -Wall does not imply -Wwhite-space.
2937
2938 2001-04-17  Zack Weinberg  <zackw@stanford.edu>
2939
2940         * dbxout.c (dbxout_init): If DBX_OUTPUT_GCC_MARKER is defined,
2941         use it instead of blindly generating a .stabs.
2942         * xcoffout.h: Define DBX_OUTPUT_GCC_MARKER so we put the type
2943         in the right place.
2944         * xcoffout.c: Don't bother defining default for N_CATCH.
2945         (UNKNOWN_STAB): Use internal_error.
2946         (stab_to_sclass): Remove now-unnecessary aborts.
2947         Remove #if 0'ed case N_BROWS.  Add #ifdef N_OPT block.
2948
2949 Tue Apr 17 21:41:11 2001  Jeffrey A Law  (law@cygnus.com)
2950
2951         * jump.c (mark_all_labels): Canonicalize the tail recursion
2952         label attached to CALL_PLACEHOLDER insns.
2953
2954 2001-04-17  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2955
2956         * output.h (dump_flow_info, free_basic_block_vars,
2957         which_alternative): Delete redundant prototypes.
2958
2959         * rtl.h (bss_section): Likewise.
2960
2961 2001-04-17  Loren J. Rittle  <ljrittle@acm.org>
2962
2963         * dbxout.c (N_OPT): Define if not available from <stab.h>
2964
2965 2001-04-17  John David Anglin  <dave@hiauly1.hia.nrc.ca>
2966
2967         * vax.h (PROMOTE_PROTOTYPES): Define for compatibility with system
2968         libraries and native K&R compilers.
2969
2970 2001-04-16  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2971
2972         * c-typeck.c (convert_arguments): Don't check for width changes
2973         with -Wtraditional.
2974
2975         * invoke.texi (-Wtraditional): Update documentation.
2976
2977 2001-04-16  Zack Weinberg  <zackw@stanford.edu>
2978
2979         * toplev.c (output_lang_identify): Delete.
2980         (compile_file): Don't call ASM_IDENTIFY_GCC or ASM_IDENTIFY_LANGUAGE.
2981         Don't generate gcc2_compiled. label.  Don't emit a nop if profiling.
2982         If IDENT_ASM_OP is defined, emit an .ident "GCC (GNU) <version>"
2983         after calling ASM_FILE_END.
2984
2985         * dbxout.c (dbxout_init): Don't call ASM_IDENTIFY_GCC_AFTER_SOURCE.
2986         Instead, unconditionally emit an N_OPT stab with string equal
2987         to STABS_GCC_MARKER, which defaults to "gcc2_compiled."
2988
2989         * defaults.h: Don't provide default for ASM_IDENTIFY_LANGUAGE.
2990
2991         * config/dbxelf.h, config/freebsd.h, config/nextstep.h,
2992         config/psos.h, config/ptx4.h, config/1750a/1750a.h,
2993         config/alpha/alpha.h, config/alpha/elf.h, config/arc/arc.h,
2994         config/arm/aof.h, config/arm/coff.h, config/arm/elf.h,
2995         config/arm/linux-elf.h, config/avr/avr.h, config/d30v/d30v.h,
2996         config/dsp16xx/dsp16xx.h, config/h8300/h8300.h,
2997         config/i370/i370.h, config/i386/beos-elf.h,
2998         config/i386/osf1elf.h, config/i386/osfrose.h,
2999         config/ia64/sysv4.h, config/m68k/3b1.h, config/m68k/auxgas.h,
3000         config/m68k/crds.h, config/m68k/hp320.h, config/m68k/m68kv4.h,
3001         config/m68k/mot3300.h, config/m68k/news.h, config/m68k/sgs.h,
3002         config/m68k/tower-as.h, config/mcore/mcore-elf.h,
3003         config/mips/iris6.h, config/mips/osfrose.h,
3004         config/mips/sni-svr4.h, config/pa/som.h, config/pdp11/pdp11.h,
3005         config/sparc/sp64-elf.h:
3006         Delete definitions of any or all of: ASM_IDENTIFY_GCC,
3007         ASM_IDENTIFY_GCC_AFTER_SOURCE, and ASM_IDENTIFY_LANGUAGE.
3008
3009         * config/elfos.h, config/freebsd.h, config/linux.h,
3010         config/alpha/elf.h, config/arm/linux-elf.h, config/i386/i386elf.h,
3011         config/i386/ptx4-i.h, config/mips/gnu.h, config/mips/linux.h,
3012         config/sparc/linux.h, config/sparc/linux64.h: Delete definitions
3013         of ASM_FILE_START which merely emit a .version directive.  Delete
3014         definitions of ASM_FILE_END which merely emit an .ident directive.
3015
3016         * config/avr/avr.h, config/vax/vax.h: Delete definition of
3017         ASM_IDENTIFY_GCC and move part of its logic into
3018         ASM_FILE_START.
3019
3020         * config/i386/att.h, config/i386/gas.h, config/i386/linux.h,
3021         config/sparc/linux-aout.h: Don't emit .version directive in
3022         ASM_FILE_START.
3023
3024         * config/i386/dgux.c, config/m88k/m88k.c, config/sh/sh.c
3025         (output_file_start): Correct comment.
3026
3027         * config/i386/osfrose.h: Don't emit trailing .ident directive.
3028         * config/m68k/mot3300.h: Override STABS_GCC_MARKER to "gcc2_compiled%"
3029         to match gdb.
3030         * config/pa/lib2funcs.asm: Delete gcc_compiled. label.
3031         * config/rs6000/aix.h: Correct comment.
3032
3033         * config/i386/i386afe.h: Delete.
3034         * config.gcc: Remove references to i386afe.h.
3035
3036         * tm.texi: Delete documentation of ASM_IDENTIFY_GCC.  The
3037         other macros deleted by this patch were undocumented.
3038
3039 Mon Apr 16 08:03:48 2001  Jeffrey A Law  (law@cygnus.com)
3040
3041         * pa.md (reload_outdi): Operand 0 must be a non hard register.
3042
3043         * pa.c (secondary_reload_class): SAR<->FP copies require a
3044         secondary register.
3045
3046         * install.texi (mips-mips-bsd): Update list of functions
3047         required to include memmove.
3048         * tm.texi (TARGET_MEM_FUNCTIONS): Update list of implicitly
3049         used functions to include memmove.
3050
3051 2001-04-15  Toon Moene  <toon@moene.indiv.nluug.nl>
3052
3053         * i386.md (sqrtdf2): SFmode should be DFmode.
3054
3055 2001-04-15  Alexandre Oliva  <aoliva@redhat.com>
3056
3057         * gcse.c (compute_ld_motion_mems): ASM outputs aren't moveable.
3058         (find_moveable_store): Likewise.
3059
3060 2001-04-15  Jim Wilson  <wilson@redhat.com>
3061
3062         * function.c (expand_function_end): Handle PARALLEL real_decl_rtl.
3063
3064 Sat Apr 14 16:24:19 CEST 2001  Jan Hubicka  <jh@suse.cz>
3065
3066         * i386.md (ashldi3_1_rex64): Add 'J' to the constraints
3067         (ashrdi3_1_rex64): Change 'n' constraint to 'J'.
3068
3069 2001-04-14  Alexandre Oliva  <aoliva@redhat.com>
3070
3071         * config/mn10300/mn10300.md (cmpsi): Tell reload to disregard the
3072         first alternative.
3073
3074 2001-04-14  Alan Modra  <amodra@one.net.au>
3075
3076         * pa.c (force_mode): New function.
3077         (emit_move_sequence): Use it instead of generating new rtx_REGs.
3078
3079 2001-04-13  Jim Wilson  <wilson@redhat.com>
3080
3081         * config/ia64/ia64.c (ia64_expand_epilogue): Emit alloc if sibcall_p.
3082         (first_instruction): New static variable.
3083         (rtx_needs_barrier): Return 1 for alloc.
3084         (init_insn_group_barriers): Set first_instruction.
3085         (rws_sum): Delete duplicate definition.
3086         (group_barrier_needed_p): Return 0 when first_instruction true.
3087         (safe_group_barrier_needed_p): Save and restore first_instruction
3088         around group_barrier_needed_p call.
3089
3090 Fri Apr 13 21:40:28 2001  Loren J. Rittle  <ljrittle@acm.org>
3091
3092         * expr.h (enum libfunc_index): Add LTI_memmove.
3093         (memmove_libfunc): Define macro.
3094         * optabs.c (init_optabs): Initialize memmove_libfunc.
3095         * expr.c (expand_assignment): Use memmove_libfunc instead of
3096         memcpy_libfunc.
3097
3098 2001-04-13  Alan Modra  <alan@linuxcare.com.au>
3099
3100         * pa.h (GO_IF_LEGITIMATE_ADDRESS): Disallow PIC LO_SUM
3101         fp mode addresses.
3102
3103 2001-04-13  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3104
3105         * Makefile.in (reg-stack.o): Depend on reload.h.
3106         (insn-attrtab.o): Depend on flags.h.
3107
3108         * genattrtab (main): Include flags.h in insn-attrtab.c.
3109
3110         * reg-stack.c: Include reload.h.
3111
3112         * sparc.h (flag_pic): Delete redundant declaration.
3113
3114         * output.h (flag_pic): Likewise.
3115
3116         * tree.h (pedantic): Likewise.
3117
3118 2001-04-13  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3119
3120         * Makefile.in (toplev.o, jump.o, regmove.o): Depend on reload.h
3121
3122         * jump.c, regmove.c, toplev.c: Include reload.h.
3123
3124         * reload.h (reload_cse_regs): Declare.
3125
3126         * rtl.h (find_equiv_reg, operands_match_p, safe_from_earlyclobber,
3127         reload_cse_regs, init_reload, mark_home_live, reload,
3128         init_caller_save): Delete redundant prototypes.
3129
3130 2001-04-13  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3131
3132         * Makefile.in (ssa.o, regclass.o): Depend on $(EXPR_H).
3133
3134         * regclass.c, ssa.c: Include expr.h.
3135
3136         * rtl.h (memory_address, force_reg, emit_queue, emit_move_insn,
3137         gen_move_insn): Delete redundant declarations.
3138
3139 2001-04-13  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3140
3141         * Makefile.in (CFLAGS, BOOT_CFLAGS): Partly revert 2000-10-27 patch.
3142         (stage1_build): Instead pass down STAGE1_CFLAGS here. Pass down
3143         MAKEINFO and MAKEINFOFLAGS too.
3144         (stage4_build): Correctly order -B flags.
3145
3146 2001-04-13  Alan Modra  <amodra@one.net.au>
3147
3148         * pa.c (hppa_init_pic_save): Set rtx_unchanging for
3149         PIC_OFFSET_TABLE_SAVE_RTX.
3150         (zdepi_cint_p): Describe zdepi insn.
3151         Formatting and white space fixes throughout file.
3152
3153         * pa.c (uint32_operand): Don't use long constant >= 2^32.
3154         (emit_move_sequence): Use HOST_WIDE_INT constants.  Don't worry
3155         about 32->64 bit sign extension if 32 bit HOST_WIDE_INTs.
3156         (compute_movstrsi_length): Make `align' unsigned to avoid warning.
3157         (output_64bit_and): Use plain `int's for shift counts.
3158         (output_64bit_ior): Likewise.
3159         (function_arg_partial_nregs): Use unsigned vars to avoid warnings.
3160         * pa.h (CONST_OK_FOR_LETTER_P): Use HOST_WIDE_INT constants for case
3161         `N', and simplify.
3162
3163         * pa-hpux10.h (NEW_HP_ASSEMBLER): Define to 1.
3164         * pa-hpux11.h (NEW_HP_ASSEMBLER): Likewise.
3165         * pa.h (LEGITIMATE_CONSTANT_P) Collapse two defines depending on
3166         NEW_HP_ASSEMBLER into one.  Kill warnings.
3167
3168         * pa-gas.h: Delete file.
3169         * config.gcc: Match `parisc' as well as `hppa' for cpu_type=pa.
3170         Add new targets hppa*64*-*-linux* and parisc*64*-*-linux*.  Update
3171         hppa*-*-linux*.  For all pa targets, remove pa/gas.h from tm_file,
3172         instead setting MASK_GAS | MASK_JUMP_IN_DELAY in target_cpu_default2.
3173
3174         * config/pa/mill32.S: New file.
3175         * config/pa/mill64.S: New file.
3176         * config/pa/t-linux (LIBGCC1, CROSS_LIBGCC1, LIB1ASMFUNCS,
3177         LIB1ASMSRC, CRTSTUFF_T_CFLAGS_S, TARGET_LIBGCC2_CFLAGS): Define.
3178         * config/pa/t-linux64: New file.
3179         * config/pa/t-pa64 (CROSS_LIBGCC1): Change to libgcc1-asm.a
3180         (LIB1ASMFUNCS, LIB1ASMSRC): Define.
3181         (TARGET_LIBGCC2_CFLAGS): Add -Dpa64=1 -DELF=1.
3182
3183         * elfos.h (SELECT_SECTION): Undef before defining.
3184         * pa-linux.h (LINUX_DEFAULT_ELF, PTRDIFF_TYPE, CPP_SPEC): Remove.
3185         (LIB_SPEC): Remove -lmilli.
3186         (DBX_REGISTER_NUMBER): Remove.
3187         (PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO,
3188         (DWARF2_UNWIND_INFO, ASM_SPEC, LINK_SPEC, FUNCTION_OK_FOR_SIBCALL,
3189         NO_PROFILE_COUNTERS, SELECT_RTX_SECTION, INCOMING_RETURN_ADDR_RTX,
3190         DWARF_FRAME_RETURN_COLUMN, STRING_ASM_OP, TEXT_SECTION_ASM_OP,
3191         DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_FILE_START,
3192         ASM_OUTPUT_DEF, ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT,
3193         ASM_OUTPUT_LABEL, ASM_GLOBALIZE_LABEL, ASM_DECLARE_FUNCTION_NAME,
3194         TARGET_GAS): Define.
3195         * pa.c (output_arg_descriptor): Disable for TARGET_ELF32.
3196         (function_arg): If TARGET_ELF32, pass fp args in both general and fp
3197         regs if we don't have a prototype.
3198         * pa.md (canonicalize_funcptr_for_compare): Not for TARGET_ELF32.
3199         * pa.h (TARGET_ELF32): Default to 0 if undefined.
3200         (EH_RETURN_DATA_REGNO, EH_RETURN_STACKADJ_RTX,
3201         EH_RETURN_HANDLER_RTX): Define.
3202         * pa32-regs.h (DBX_REGISTER_NUMBER): Remove unnecessary test.
3203         (DWARF_FRAME_REGNUM): Define.
3204         * pa64-regs.h (DWARF_FRAME_REGNUM): Define.
3205         * pa32-linux.h: New file.
3206         * pa64-linux.h: New file.
3207
3208         * pa-64.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
3209         (ASM_OUTPUT_DOUBLE_INT): Format, protect macro with do..while.
3210         (LINK_SPEC, LIB_SPEC, MD_EXEC_PREFIX, MD_STARTFILE_PREFIX,
3211         NEW_HP_ASSEMBLER, ASM_FILE_START, OBJECT_FORMAT_ELF,
3212         DWARF2_DEBUGGING_INFO, PREFERRED_DEBUGGING_FORMAT,
3213         DWARF2_ASM_LINE_DEBUG_INFO, USE_CONST_SECTION, CONST_SECTION_ASM_OP,
3214         CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
3215         FINI_SECTION_ASM_OP, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS,
3216         READONLY_DATA_SECTION, CONST_SECTION_FUNCTION, CTORS_SECTION_FUNCTION,
3217         DTORS_SECTION_FUNCTION, ASM_OUTPUT_SECTION_NAME, MAKE_DECL_ONE_ONLY,
3218         UNIQUE_SECTION_P, UNIQUE_SECTION, INT_ASM_OP, ASM_OUTPUT_CONSTRUCTOR,
3219         ASM_OUTPUT_DESTRUCTOR, TYPE_ASM_OP, SIZE_ASM_OP, ASM_WEAKEN_LABEL,
3220         TYPE_OPERAND_FMT, ASM_DECLARE_RESULT): Move to..
3221         * pa64-hpux.h: New file.
3222         (ASM_FILE_START): Correct typo.
3223         (PREFERRED_DEBUGGING_FORMAT): Rename to PREFERRED_DEBUGGING_TYPE.
3224         * config.gcc: Modify for above.
3225
3226 Fri Apr 13 00:09:22 EDT 2001  John Wehle  (john@feith.com)
3227
3228         * jump.c (jump_optimize_1): Don't delete dead stores here.
3229         * toplev.c (rest_of_compilation): Call delete_trivially_dead_insns
3230         prior to running jump optimize before cse2.
3231
3232 2001-04-12  Richard Henderson  <rth@redhat.com>
3233
3234         * Makefile.in (regmove.o): Depend on except.h.
3235         * regmove.c: Include it.
3236
3237 2001-04-12  Stan Shebs  <shebs@apple.com>
3238
3239         * objc/objc-act.c: Remove all code ifdefed with the never-used
3240         macro OBJC_INT_SELECTORS.
3241         * config/d30v/d30v.h: Remove commented-out ref to OBJC_INT_SELECTORS.
3242         * tm.texi: Remove doc for OBJC_INT_SELECTORS.
3243
3244 Thu Apr 12 18:13:37 2001  Rodney Brown  <RodneyBrown@mynd.com>
3245
3246         * config/pa/quadlib.c: Add prototypes.
3247
3248 2001-04-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3249
3250         * bitmap.h (debug_bitmap): Delete redundant prototype.
3251
3252         * rtl.h (get_frame_size): Likewise.
3253
3254 2001-04-12  Jim Wilson  <wilson@redhat.com>
3255
3256         * config/ia64/ia64.md (extendsfdf2, extendsftf2, extenddftf2): Simplify
3257         to just emit an fnorm.
3258
3259 2001-04-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3260
3261         * c-common.h (truthvalue_conversion, type_for_mode,
3262         type_for_size): Delete redundant declarations.
3263
3264         * c-lex.h (is_class_name): Likewise.
3265
3266         * c-tree.h (pedantic, convert, getdecls, gettags,
3267         global_bindings_p, init_decl_processing, insert_block,
3268         maybe_build_cleanup, poplevel, print_lang_decl,
3269         print_lang_identifier, print_lang_type, pushdecl, pushlevel,
3270         set_block, incomplete_type_error, build_function_call,
3271         lvalue_or_else, mark_addressable): Likewise.
3272
3273         * expr.h (expand_tree_builtin): Likewise.
3274
3275 2001-04-12  Mark Mitchell  <mark@codesourcery.com>
3276
3277         * invoke.texi: Document --param max-gcse-memory.
3278
3279 2001-04-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3280
3281         * configure.in (errno): Check for declaration.
3282         * configure, config.in: Regenerated.
3283
3284         * system.h (errno): Only declare if not already done.
3285
3286 2001-04-12  Alexandre Oliva  <aoliva@redhat.com>
3287
3288         * recog.c (general_operand, immediate_operand,
3289         nonmemory_operand): Require CONST_INTs to be sign-extended
3290         values for their modes.
3291
3292 2001-04-12  Alexandre Oliva  <aoliva@redhat.com>
3293
3294         * expmed.c (store_bit_field): Truncate CONST_INTs.
3295         (expand_mult_highpart, expand_divmod): Likewise.
3296         * expr.c (convert_modes, store_field): Likewise.
3297         * integrate.c (expand_inline_function): Use promote_mode() to
3298         determine whether to convert_modes() an argument as signed
3299         or unsigned.
3300         * optabs.c (expand_binop): Get CONST_INT operands
3301         sign-extended for their appropriate modes.
3302         * stmt.c (emit_case_nodes): Convert node values to the
3303         appropriate mode.
3304         (expand_end_case): Convert minval and range to the appropriate
3305         mode.
3306         * unroll.c (loop_iterations): Truncate abs_diff to the mode of
3307         the iteration variable.
3308         * varasm.c (immed_double_const): Don't require words to be
3309         narrower than host wide ints to properly sign-extend
3310         CONST_INTs.
3311
3312 2001-04-12  kaz Kojima  <kkojima@rr.iij4u.or.jp>
3313
3314         * sh.md (builtin_setjmp_receiver): New expander.
3315
3316 2001-04-12  David Edelsohn  <dje@watson.ibm.com>
3317
3318         * config/rs6000/rs6000.c (rs6000_emit_move): Do not
3319         special-case HOST_BITS_PER_WIDE_INT != 32.  Use same criteria
3320         for generating CONST_INT and CONST_DOUBLE.
3321
3322 2001-04-12  Alexandre Oliva  <aoliva@redhat.com>
3323
3324         * config/rs6000/rs6000.c (logical_operand): CONST_INTs are
3325         already sign-extended.
3326         (rs6000_emit_prologue): Make register iterator signed.
3327         (rs6000_emit_epilogue): Likewise.
3328         * config/rs6000/rs6000.md (addsi3, adddi3): Sign-extend high
3329         and low.
3330         (movsf split, movdf split): Sign-extend CONST_INTs.
3331         (movdi splits): Likewise.
3332
3333 2001-04-12  Kelley Cook <kelley.cook@home.com>
3334
3335         * config-lang.in (lang_dirs): Add in zlib.
3336
3337 2001-04-11  Alexandre Oliva  <aoliva@redhat.com>
3338
3339         * config/i386/i386.md: Apply trunc_int_for_mode() to GEN_INT
3340         operands that make it to RTL.
3341
3342 2001-04-11  Stan Shebs  <shebs@apple.com>
3343
3344         Add Darwin (Mac OS X kernel) native support.
3345         * config.gcc (powerpc-*-darwin*): Add native bits.
3346         * config/darwin.c: New file, generic Darwin support functions.
3347         * config/darwin.h: New file, generic Darwin definitions.
3348         * config/darwin-protos.h: New file, generic Darwin prototypes.
3349         * rs6000/darwin.h: New file, Darwin for PowerPC.
3350         * rs6000/t-darwin: New file, Darwin makefile fragment.
3351         * rs6000/rs6000.h (OBJECT_MACHO): New macro.
3352         (TARGET_MACHO): Ditto.
3353         (rs6000_abi): Add ABI_DARWIN.
3354         (RS6000_REG_SAVE): Add ABI_DARWIN case.
3355         (RS6000_SAVE_AREA): Ditto.
3356         (FP_ARG_MAX_REG): Ditto.
3357         (RETURN_ADDRESS_OFFSET): Ditto.
3358         * rs6000/rs6000.c (rs6000_legitimize_address): Add TARGET_MACHO
3359         cases.
3360         (rs6000_emit_move): Add ABI_DARWIN cases.
3361         (print_operand): Ditto.
3362         (first_reg_to_save): Ditto.
3363         (rs6000_stack_info): Ditto, also align stack by 16 instead of 8.
3364         (debug_stack_info): Ditto.
3365         (rs6000_emit_prologue): Ditto.
3366         (rs6000_emit_epilogue): Ditto.
3367         (output_profiler_hook): Ditto.
3368         (output_function_profiler): Ditto.
3369         (rs6000_add_gc_roots): Call machopic_add_gc_roots if TARGET_MACHO.
3370         (output_mi_thunk): Add TARGET_MACHO case.
3371         (add_compiler_stub): Ditto.
3372         (output_compiler_stub): Ditto.
3373         (no_previous_def): Ditto.
3374         (output_call): Ditto.
3375         (machopic_output_stub): Ditto.
3376         (rs6000_machopic_legitimize_pic_address): Ditto.
3377         (toc_section): Ditto.
3378         * rs6000/rs6000.md (addsi3_high): New TARGET_MACHO pattern.
3379         (macho_high): Ditto.
3380         (macho_low): Ditto.
3381         (movsi_low): Ditto.
3382         (load_macho_picbase): Ditto.
3383         (call): Add TARGET_MACHO case to modify function.
3384         (call_value): Ditto.
3385         (call_nonlocal_sysv): Add ABI_DARWIN case.
3386         (call_value_nonlocal_sysv): Ditto.
3387         * rs6000/rs6000-protos.h (rs6000_machopic_legitimize_pic_address):
3388         Add prototype.
3389         (machopic_output_stub): Ditto.
3390         * ginclude/stddef.h: Test _BSD_WCHAR_T_DEFINED_.
3391
3392 2001-04-11  Mark Mitchell  <mark@codesourcery.com>
3393
3394         * dwarf2out.c (modified_type_die): Don't create new types here.
3395         * tree.h (get_qualified_type): New function.
3396         (build_qualified_type): Adjust comment.
3397         * tree.c (get_qualified_type): New function.
3398         (build_qualified_type): Use it.
3399
3400 2001-04-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3401
3402         * cpp.texi (-Wtraditional): Update description.
3403
3404         * invoke.texi (-Wtraditional): Likewise.
3405
3406 2001-04-11  Jim Wilson  <wilson@redhat.com>
3407
3408         * config/ia64/ia64.h (FUNCTION_ARG_BOUNDARY): Return 128 if argument
3409         requires more than 64 bits of alignment.
3410
3411 2001-04-11  Neil Booth  <neil@daikokuya.demon.co.uk>
3412
3413         * cpplib.c (do_line): Sanity check iff enable checking.
3414
3415 2001-04-11  Richard Henderson  <rth@redhat.com>
3416
3417         * Makefile.in (insn-recog.o): Depend on toplev.h.
3418         (insn-emit.o, doloop.o): Likewise.
3419         * genrecog.c, genemit.c: Include toplev.h in generated file.
3420         * doloop.c: Include toplev.h.
3421
3422 2001-04-11  Mark Mitchell  <mark@codesourcery.com>
3423
3424         * Makefile.in (gcse.o): Depend on params.h.
3425         * gcse.c: Include params.h.
3426         (gcse_main): Don't do GCSE if doing so will take inordinate
3427         amounts of memory.
3428         * params.def (PARAM_MAX_GCSE_MEMORY): New  parameter.
3429         * params.h (MAX_GCSE_MEMORY): New macro.
3430
3431 2001-04-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3432
3433         * Makefile.in (insn-output.o): Depend on $(EXPR_H).
3434
3435         * genoutput.c (output_prologue): Include expr.h in insn-output.c.
3436
3437 2001-04-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3438
3439         * output.h (assemble_real): Declare if REAL_VALUE_TYPE is defined.
3440
3441         * real.h (ereal_atof, real_value_truncate, target_isnan,
3442         target_isinf, target_negative, assemble_real, debug_real): Delete
3443         redundant prototypes.
3444
3445         * Makefile.in (ifcvt.o): Depend on toplev.h.
3446
3447         * c-semantics.c: Include expr.h.
3448
3449         * ifcvt.c: Include toplev.h.
3450
3451         * expr.h (rtx_equal_p): Delete prototype.
3452
3453         * rtl.h (exact_log2_wide, floor_log2_wide, permalloc,
3454         protect_from_queue, gen_jump, gen_beq, gen_bge, gen_ble,
3455         eliminate_constant_term, expand_complex_abs, find_single_use,
3456         make_tree, init_expr_once, init_optabs, supports_one_only):
3457         Likewise.
3458
3459         * tree.h (exact_log2_wide, floor_log2_wide, expand_null_return,
3460         rest_of_type_compilation, emit_queue, do_pending_stack_adjust,
3461         expand_assignment, store_expr, emit_line_note_after,
3462         emit_line_note_force, split_specs_attrs, label_rtx): Likewise.
3463
3464         * toplev.h (exact_log2_wide, floor_log2_wide): Add prototype.
3465
3466         * sparc-protos.h: Delete redundant prototypes.
3467
3468 2001-04-11  Vladimir Makarov  <vmakarov@toke.toronto.redhat.com>
3469
3470         * reload.c (push_reload): Add condition missed in SUBREG byte
3471         offset patch.
3472
3473 Wed Apr  4 00:28:23 2001  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3474
3475         * sparc/sol2-sld-64.h (STARTFILE_SPEC): Added missing blank.
3476
3477 Wed Apr 11 14:06:10 CEST 2001  Jan Hubicka  <jh@suse.cz>
3478
3479         * i386.md (floatsisf_sse): Fix output template
3480 &nbs