1 2001-05-26 Bruce Korb <bkorb@gnu.org>
3 * fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
4 when fixincl is operating in test mode
6 2001-05-26 Philip Blundell <philb@gnu.org>
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.
15 2001-05-26 Philip Blundell <philb@gnu.org>
17 * config/arm/arm-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
19 2001-05-25 Zack Weinberg <zackw@stanford.edu>
21 * toplev.c (debug_args, f_options, W_options): Mark
22 descriptions for translation.
23 (display_help): Translate descriptions on output.
25 * cp/lang-options.h, f/lang-options.h, java/lang-options.h,
26 objc/lang-options.h: Mark descriptions for translation.
28 * aclocal.m4: Quote final argument of patsubst. Use
29 3-argument form of AC_DEFINE. Restore quotes to [] while
31 * configure.in: Remove unnecessary changequote calls.
32 * configure, config.in: Regenerate.
34 2001-05-25 Sam TH <sam@uchicago.edu>
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.
54 2001-05-25 Stacey Sheldon <ssheldon@Catena.com>
56 * config/arc/initfini.c (.init): Fix typo.
58 2001-05-25 Geoffrey Keating <geoffk@redhat.com>
60 * config/rs6000/rs6000.md (fseldfsf4): Correct mode of operand 4.
62 2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
64 * i386/i386.h (CC1_CPU_SPEC): Clarify -m486 etc deprecation messages.
66 2001-05-25 Richard Henderson <rth@redhat.com>
68 * libgcc-std.ver: Export XFmode and TFmode versions of symbols.
70 2001-05-25 Richard Henderson <rth@redhat.com>
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.
79 2001-05-25 Loren J. Rittle <ljrittle@acm.org>
81 * config.gcc (*-*-freebsd*): Report bad configuration.
83 2001-05-25 David Edelsohn <edelsohn@gnu.org>
85 * xcoffout.h (DBX_OUTPUT_GCC_MARKER): Do not emit any marker.
87 * config/rs6000/aix.h (USER_LABEL_PREFIX): AIX symbols do not have
89 (ASM_OUTPUT_LABELREF): Delete.
91 2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
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.
100 2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
102 * fixinc/inclhack.def (alpha___assert): Change char * args to
103 const char * on Tru64 UNIX to avoid excessive warnings from
105 * fixinc/fixincl.x: Regenerate.
107 2001-05-25 Geoff Keating <geoffk@redhat.com>
109 * dbxout.c (dbxout_symbol): Invert previous patch, which was
110 outputting a tag only for variable-size records.
112 2001-05-25 Jeff Knaggs <jknaggs@redhat.com>
114 * config/alpha/alpha.md (movtf_internal): Use reg_overlap_mentioned_p
115 instead of rtx_equal_p for early clobber test.
117 2001-05-26 Mark Mitchell <mark@codesourcery.com>
119 * builtins.def: Encode additional information, such as names and
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
125 (expand_builtin_mathfn): Handle float and long double variants of
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
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.
142 2001-05-25 Dale Johannesen <dalej@apple.com>
144 * config/rs6000/t-darwin: Fix dependencies for darwin.o.
146 2001-05-25 Neil Booth <neil@daikokuya.demon.co.uk>
148 * c-parse.in (notype_initdcl): Remove redundant line.
150 2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
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.
159 2001-05-25 Richard Henderson <rth@redhat.com>
161 * function.c (expand_function_start): Don't abort on PARALLEL
162 returns from hard_function_value.
164 2001-05-25 Richard Henderson <rth@redhat.com>
166 * config/i386/i386.md: Revert previous change. Do not apply
167 the peephole if the components do not die after the sequence.
169 2001-05-25 Joseph S. Myers <jsm28@cam.ac.uk>
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
180 (grokdeclarator): Handle static and type qualifiers in parameter
182 * c-tree.h (build_array_declarator, set_array_declarator_type):
184 * extend.texi (Attribute Syntax): Document attributes in parameter
187 2001-05-25 Mark Mitchell <mark@codesourcery.com>
189 * config/i386/i386.md: Make sure cmpstr peepholes do not
190 affect liveness information.
192 2001-05-24 Mark Mitchell <mark@codesourcery.com>
194 * c-typeck.c (digest_init): Issue error messages about
195 invalid constants, not warnings.
197 2001-05-24 Mark Mitchell <mark@codesourcery.com>
199 * invoke.texi (-fno-builtin): Document that this is always on
202 2001-05-24 Philip Blundell <philb@gnu.org>
204 * doc/install.texi (arm*-*-linux-gnu): Say that binutils 2.10 is
207 2001-05-24 Philip Blundell <philb@gnu.org>
209 * config/arm/arm.c (output_return_instruction): Correctly handle
210 interworking and interrupt functions.
212 2001-05-24 Philip Blundell <philb@gnu.org>
214 * config/arm/arm.h (TARGET_SWITCHES): Correct misleading help for
215 -m{no-}sched-prolog. Fix typos and improve formatting.
217 2001-05-24 Philip Blundell <philb@gnu.org>
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.
224 2001-05-24 Geoff Keating <geoffk@redhat.com>
226 * config/rs6000/linux.h (SIGNAL_FRAMESIZE): Define.
227 (MD_FALLBACK_FRAME_STATE_FOR): Use it.
229 Thu May 24 19:47:19 CEST 2001 Jan Hubicka <jh@suse.cz>
231 * simplify-rtx.c (simplify_subreg): Fix CONCAT simplification;
232 fix hard register simplification.
234 Thu May 24 00:15:17 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
236 * sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Add all of CPP_SPEC instead
237 of just copying CPP_CPU_SPEC.
239 Thu May 24 15:56:48 CEST 2001 Jan Hubicka <jh@suse.cz>
241 * i386.c (incdec_operand): Accept only 1 and -1.
243 2001-05-23 Kelley Cook <kelley.cook@home.com>
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).
250 2001-05-23 Richard Henderson <rth@redhat.com>
252 * integrate.c (expand_inline_function): Handle CONCAT DECL_RESULT.
254 2001-05-23 Neil Booth <neil@daikokuya.demon.co.uk>
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
262 2001-05-23 Richard Henderson <rth@redhat.com>
264 * doc/install.texi (alpha-linux): Require binutils 2.11.
266 2001-05-23 Neil Booth <neil@daikokuya.demon.co.uk>
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.
278 2001-05-23 Joseph S. Myers <jsm28@cam.ac.uk>
280 * extend.texi (Attribute Syntax): Clarify application of
281 attributes to parameters declared as functions or arrays.
283 2001-05-23 Jason Merrill <jason_merrill@redhat.com>
285 * dbxout.c (dbxout_type_methods): Do still group methods by name.
287 2001-05-23 Zack Weinberg <zackw@stanford.edu>
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
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.
305 2001-05-23 Mark Mitchell <mark@codesourcery.com>
307 * jump.c (mark_jump_label): Fix thinko in 2001-05-19 change.
309 2001-05-23 Richard Henderson <rth@redhat.com>
311 * function.c (expand_function_start): Always use a pseudo
312 for the function result value.
314 2001-05-22 Richard Henderson <rth@redhat.com>
316 * config/mips/iris6.h (EH_FRAME_SECTION_ASM_OP): Give the
317 section pointer alignment.
319 * doc/install.texi (alpha-linux): Require binutils >= 2.10.
321 * unwind-dw2-fde.c (__deregister_frame_info): Stringize use
322 of __USER_LABEL_PREFIX__.
324 2001-05-22 Richard Henderson <rth@redhat.com>
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.
333 2001-05-22 Loren J. Rittle <ljrittle@acm.org>
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).
338 2001-05-22 Andrew MacLeod <amacleod@redhat.com>
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.
346 2001-05-22 Loren J. Rittle <ljrittle@acm.org>
347 David O'Brien <obrien@freebsd.org>
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
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.
360 * config/alpha/freebsd.h (CPP_PREDEFINES): Moved to common freebsd.h.
361 * config/i386/freebsd.h (CPP_PREDEFINES): Likewise.
363 2001-05-22 Loren J. Rittle <ljrittle@acm.org>
364 David O'Brien <obrien@freebsd.org>
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.
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.
380 2001-05-22 Loren J. Rittle <ljrittle@acm.org>
381 David O'Brien <obrien@freebsd.org>
383 * config/t-freebsd (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
384 * config/t-freebsd-thread (TARGET_LIBGCC2_CFLAGS): Add
385 -pthread instead setting macro.
387 2001-05-22 Richard Henderson <rth@redhat.com>
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.
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.
399 2001-05-22 Richard Henderson <rth@redhat.com>
401 * rtl.c (read_string): Break out from ...
402 (read_rtx): ... here.
404 2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
406 * doc/install.texi (Specific): Remove a bogus and duplicate part
407 copied from the end of the document.
409 2001-05-22 Bernd Schmidt <bernds@redhat.com>
411 * Makefile.in (LIBGCC_DEPS): Correct LIB1ASMSRC dependency.
413 2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
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.
419 2001-05-22 Alexandre Oliva <aoliva@redhat.com>
421 * cppfiles.c (remove_component_p): Don't assume lstat/stat will
422 keep errno unchanged on success.
424 2001-05-22 Joseph S. Myers <jsm28@cam.ac.uk>
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.
431 2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
433 * README.ACORN: Remove obsolete file.
435 2001-05-22 Jan Hubicka <jh@suse.cz>
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.
445 2001-05-22 Neil Booth <neil@daikokuya.demon.co.uk>
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.
452 2001-05-21 Richard Henderson <rth@redhat.com>
454 * combine.c (subst): Do not substitute for a register as
455 a destination subreg/strict_low_part/zero_extract.
457 * combine.c (simplify_comparison): Update op1 after constant
459 * recog.c (const_int_operand): Accept only constants valid
461 * genrecog.c: Update comments wrt const_int_operand.
463 * emit-rtl.c (init_emit_once): Zero unused memory in a
466 2001-05-21 Mark Mitchell <mark@codesourcery.com>
468 * tree.h (type_num_arguments): Declare it.
469 * tree.c (type_num_arguments): New function.
471 2001-05-21 Richard Henderson <rth@redhat.com>
473 * dwarf2out.c (current_funcdef_number): Move outside dwarf2
476 2001-05-21 Geoff Keating <geoffk@redhat.com>
478 * config/rs6000/rs6000.md (maxsf3): Use rs6000_emit_minmax.
480 (minsf3): Use rs6000_emit_minmax.
481 (minsf3+1): Generalize to handle both SMIN and SMAX. Use
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.
489 (mindf3): Use rs6000_emit_minmax.
490 (mindf3+1): Generalize to handle both SMIN and SMAX. Use
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.
504 * config/rs6000/rs6000.c (output_cbranch): Handle all
505 conditional types in the switch statement.
507 2001-05-21 Mark Mitchell <mark@codesourcery.com>
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.
514 2001-05-21 Jason Merrill <jason_merrill@redhat.com>
516 * dbxout.c (MINIMAL_DEBUG, flag_minimal_debug): Lose.
517 (dbxout_type_fields): Lose minimal_debug support.
518 (dbxout_type_methods, dbxout_type): Likewise.
520 2001-05-17 Andrew Haley <aph@redhat.com>
522 * config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
524 2001-05-21 Richard Henderson <rth@redhat.com>
526 * dwarf2out.c (DEBUG_FRAME_SECTION): Rename from FRAME_SECTION.
529 2001-05-20 Richard Henderson <rth@redhat.com>
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):
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.
545 2001-05-20 Richard Henderson <rth@redhat.com>
547 * optabs.c (emit_cmp_and_jump_insns): Don't swap commutative
548 operands unless the operation is commutative.
550 2001-05-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
552 * fold-const.c (tree_expr_nonnegative_p): Detect more non-negative
555 2001-05-21 Joseph S. Myers <jsm28@cam.ac.uk>
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.
563 Sun May 20 16:39:24 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
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.
570 * stmt.c (expand_decl): Set mode, alignment, and sizes for CONST_DECL.
572 2001-05-20 Richard Henderson <rth@redhat.com>
574 * sched-deps.c (sched_analyze_insn): Force volatile memory reads
575 to be output before a branch.
577 2001-05-20 Richard Henderson <rth@redhat.com>
579 * Makefile.in (dwarf2asm.o): Depend on $(TREE_H).
581 2001-05-20 Richard Henderson <rth@redhat.com>
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.
588 * config/i386/i386.h (UNALIGNED_SHORT_ASM_OP): New.
589 (UNALIGNED_INT_ASM_OP, INT_ASM_OP): New.
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.
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.
603 2001-05-20 Joseph S. Myers <jsm28@cam.ac.uk>
605 * invoke.texi: Add more options to summary list.
607 2001-05-20 Joseph S. Myers <jsm28@cam.ac.uk>
609 * invoke.texi: Document meaning of -pedantic when -std=gnu* is
610 used. Fixes PR c/2291.
613 2001-05-20 Stephane Carrez <Stephane.Carrez@worldnet.fr>
615 * config/m68hc11/m68hc11.c (m68hc11_override_options): Ignore
616 the -fpic and -fPIC options, clear flag_pic.
618 2001-05-20 Neil Booth <neil@daikokuya.demon.co.uk>
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.
624 2001-05-20 Neil Booth <neil@daikokuya.demon.co.uk>
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.
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
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.
663 * stringpool.c: Update comments and copyright. Update to use
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.
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.
680 * objc-act.c (objc_init_options): Call set_identifier_size. Update.
682 Sat May 19 18:23:04 2001 Richard Henderson <rth@redhat.com>
684 * except.c (dw2_build_landing_pads): Use word_mode, not Pmode,
686 (expand_eh_return): Convert between word_mode and Pmode.
687 * unwind-dw2.c (extract_cie_info): Do not assume words and pointers
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
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.
704 2001-05-19 Mark Mitchell <mark@codesourcery.com>
706 * jump.c (mark_jump_label): Tidy previous change.
708 2001-05-19 Bruce Korb <bkorb@gnu.org>
710 * fixinc/genfixes: no need for two warnings
711 * fixinc/Makefile.in: open stdin for those building with a closed one.
713 2001-05-19 Mark Mitchell <mark@codesourcery.com>
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.
719 2001-05-19 Joseph S. Myers <jsm28@cam.ac.uk>
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.
727 2001-05-19 Mark Mitchell <mark@codesourcery.com>
729 * defaults.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER): New
731 * tm.texi (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
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):
738 Sat May 19 07:53:42 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
740 * recog.c (general_operand): Modify last change to allow it if reload
743 Sat May 19 10:23:54 CEST 2001 Jan Hubicka <jh@suse.cz>
745 * recog.c (general_operand): Prohibit nonzero subreg bytes on
746 subregs containing mem.
748 Sat May 19 09:40:45 2001 Denis Chertykov <denisc@overta.ru>
750 * regrename.c (regrename_optimize): frame pointer register can
753 2001-05-18 Jason Merrill <jason_merrill@redhat.com>
755 * README.DWARF: Move into dwarfout.c.
757 2001-05-18 Dale Johannesen <dalej@apple.com>
759 * config/rs6000/rs6000.c (secondary_reload_class): Fix Darwin
760 specific misuse of r0 as a reload address.
762 Fri May 18 22:42:04 CEST 2001 Jan Hubicka <jh@suse.cz>
764 * combine.c (combine_simplify_rtx): Clear op0_mode if simplification
767 Fri May 18 07:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
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.
774 * dbxout.c (dbxout_type): Use host_integerp and fix typo in testing
776 (dbxout_symbol, case TYPE_DECL): Don't generate tag for records of
779 2001-05-18 Stan Shebs <shebs@apple.com>
781 * configure.in (gcc_cv_as_eh_frame): Cope with old assemblers.
782 * configure: Regenerate.
784 2001-05-18 Per Bothner <per@bothner.com>
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.
790 Fri May 18 10:14:42 2001 Jeffrey A Law (law@cygnus.com)
792 * config/pa/som.h (EXCEPTION_SECTION): Define.
794 2001-05-18 Daniel Berlin <dan@cgsoftware.com>
796 * dwarf2out.c: Add dw_loc_list_ref, a reference to a location
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
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.
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
824 Fri May 18 15:39:16 CEST 2001 Jan Hubicka <jh@suse.cz>
826 * gcse.c (try_replace_reg): First try global replace, later try to
827 simplify the expression.
829 * gcse.c (find_used_regs): Change calling convention; work via
831 (cprop_insn): Update call of find_used_regs; work for CALL_INSNs too.
833 2001-05-18 Bernd Schmidt <bernds@redhat.com>
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.
840 2001-05-18 Mark Mitchell <mark@codesourcery.com>
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.
852 * function.c (expand_function_start): Avoid creating BLKmode
855 2001-05-17 Mark Mitchell <mark@codesourcery.com>
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
862 2001-05-18 David Edelsohn <edelsohn@gnu.org>
864 * rs6000.md (movsfcc,movdfcc): Remove NE case.
866 2001-05-17 Bruce Korb <bkorb@gnu.org>
868 * fixinc/fixincl.tpl: rewritten as an AutoGen version 5 template
869 * fixinc/genfixes: emit a warning if AutoGen is out of date
871 2001-05-17 Brendan Conoboy <blc@cygnus.com>
872 Bruce Korb <bkorb@gnu.org>
874 * fixinc/fixincl.sh(FIXINC): accept local directory if fixincl not
875 found in fixinc directory. Facilitates binary distributions.
877 2001-05-17 Jeffrey Oldham <oldham@codesourcery.com>
879 * dbxout.c (dbxout_symbol_location): For CONCAT, skip types not
882 Thu May 17 19:42:39 2001 Mark Kettenis <kettenis@wins.uva.nl>
884 * dwarf2out.c (modified_type_die): Equate qualified type to die.
886 Thu May 17 23:19:46 CEST 2001 Jan Hubicka <jh@suse.cz>
888 * integrate.c (copy_rtx_and_substitute): Use simplify_gen_subreg.
889 (simplify_subreg): Handle complex types represented as CONCAT.
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.
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.
902 Thu May 17 20:43:36 CEST 2001 Jan Hubicka <jh@suse.cz>
904 * cse.c (fold_rtx): Use simplify_subreg.
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.
911 2001-05-17 Mark Mitchell <mark@codesourcery.com>
913 * doc/install.texi: Update Solaris information.
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'
924 * varasm.c (assemble_external): Abort if we have not yet
925 opened the assembly output file.
927 Thu May 17 11:54:50 2001 Jeffrey A Law (law@cygnus.com)
929 * except.c (sjlj_emit_function_enter): Call assemble_external_libcall
930 for eh_personality_libfunc.
932 Thu May 17 19:48:00 CEST 2001 Jan Hubicka <jh@suse.cz>
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.
938 Thu May 17 19:40:03 CEST 2001 Jan Hubicka <jh@suse.cz>
940 * simplify-rtx.c (simplify_subreg): Avoid creating of incorrect subregs.
942 2001-05-17 Bernd Schmidt <bernds@redhat.com>
944 * expr.c (protect_from_queue): Protect against subsequent calls to
946 (expand_expr, case ADDR_EXPR): Prevent protect_from_queue from being
949 Thu May 17 18:17:34 CEST 2001 Jan Hubicka <jh@suse.cz>
951 * simplify_rtx.c (simplify_subreg): Fix simplification of nested subregs.
953 2001-05-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
955 * gccbug.in (CATEGORIES): Add "bootstrap".
957 Thu May 17 16:59:41 CEST 2001 Jan Hubicka <jh@suse.cz>
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.
966 2001-05-17 Bernd Schmidt <bernds@redhat.com>
968 * stmt.c (expand_asm_operands): For inout operands, make sure
969 the substitution of '=' for '+' makes it into the rtl.
971 * reload1.c (delete_output_reload): Call eliminate_regs on substed.
972 (reload_as_needed): Call update_eliminable_offsets a bit later.
974 2001-05-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
976 * gcc.texi (gccbug): Refer to the web pages for detailed information
979 2001-05-16 Zack Weinberg <zackw@stanford.edu>
981 * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
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.
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.
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.
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.
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.
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.
1059 * config.gcc: Remove references to deleted files.
1060 (arm-semi-aof): Use arm/t-semi for tmake_file.
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.
1066 * config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
1067 No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
1069 2001-05-16 Wolfgang Bangerth <wolfgang.bangerth@iwr.uni-heidelberg.de>
1070 Bruce Korb <bkorb@gnu.org>
1072 * fixinc/inclhack.def(solaris27_mutex_init): Fix broken mutex
1075 2001-05-16 Zack Weinberg <zackw@stanford.edu>
1077 * i386.md: Add two peepholes to clean up code generated by
1080 2001-05-16 Richard Henderson <rth@redhat.com>
1082 * dwarf2asm.c (eh_data_format_name): Add names for "pointer size"
1083 variants of non-absolute encodings.
1085 * config/i386/i386.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
1087 * libgcc-std.ver (_Unwind_Find_FDE, __register_frame_info_bases,
1088 __register_frame_info_table_bases): Export.
1090 2001-05-16 Richard Henderson <rth@redhat.com>
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
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
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
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
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
1145 * unwind-pe.h: Add "struct" to _Unwind_Context references.
1147 2001-05-16 Neil Booth <neil@cat.daikokuya.demon.co.uk>
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.
1164 Wed May 16 13:41:10 2001 Jeffrey A Law (law@cygnus.com)
1166 * pa32-regs.h (HARD_REGNO_MODE_OK): Allow TI/TFmode values in
1169 2001-05-16 Andreas Jaeger <aj@suse.de>
1171 * Makefile.in (toplev.o): Add dependency on dwarf2asm.h.
1173 * toplev.c: Include dwarf2asm.h for prototype of
1174 dw2_output_indirect_constants.
1176 Wed May 16 19:53:53 CEST 2001 Jan Hubicka <jh@suse.cz>
1178 * stmt.c (expand_asm_operands): Be able to offload addressof
1179 expression to memory. (PR optimization/185)
1181 Wed May 16 18:53:23 CEST 2001 Jan Hubicka <jh@suse.cz>
1183 * combine.c (combine_simplify_rtx): Set op0_mode to VOIDmode after
1184 applying distributive law.
1186 2001-05-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
1188 * pa-hpux10.h (THREAD_MODEL_SPEC): Define.
1190 * gthr-dce.h (UNUSED): Attribute unused macro.
1191 (__gthread_key_dtor): Make arguments UNUSED.
1192 (__gthread_key_delete): Revise for compatibility with DRAFT4
1195 2001-05-16 David Edelsohn <edelsohn@gnu.org>
1197 * doc/install.texi: Update AIX information.
1198 * README.RS6000: Remove obsolete file.
1200 2001-05-16 Jakub Jelinek <jakub@redhat.com>
1201 Nathan Sidwell <nathan@codesourcery.com>
1203 * gcc.c (give_switch): Don't write before start of string.
1204 Always append suffix.
1206 2001-05-16 Nathan Sidwell <nathan@codesourcery.com>
1208 * cpplex.c (_cpp_lex_token, '/' case): Comments can't appear
1211 2001-05-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
1213 * README.ALTOS: Remove obsolete file.
1215 2001-05-16 Neil Booth <neil@daikokuya.demon.co.uk>
1217 * c-lex.h (save_and_forget_protocol_qualifiers,
1218 forget_protocol_qualifiers, remember_protocol_qualifiers):
1219 Remove deleted functions' prototypes.
1221 2001-05-16 Neil Booth <neil@daikokuya.demon.co.uk>
1223 * c-parse.in (methodtype): New production.
1224 (methoddef, methodproto): Collapse separate '-' and '+'
1227 2001-05-16 Neil Booth <neil@cat.daikokuya.demon.co.uk>
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.
1249 Tue May 15 22:14:09 2001 Jeffrey A Law (law@cygnus.com)
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.
1257 2001-05-15 Richard Henderson <rth@redhat.com>
1259 * unwind-sjlj.c (_Unwind_GetDataRelBase): New.
1260 (_Unwind_GetTextRelBase): New.
1262 2001-05-15 Mark Mitchell <mark@codesourcery.com>
1264 * config/sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Define.
1266 2001-05-15 Geoffrey Keating <geoffk@redhat.com>
1268 * objc/objc-act.c (handle_class_ref): Use rest_of_decl_compilation
1269 so that CHOOSE_SECTION gets used.
1271 * config/rs6000/sysv4.h (ASM_PREFERRED_EH_DATA_FORMAT): Treat
1272 TARGET_RELOCATABLE like flag_pic for now.
1274 2001-05-15 David Edelsohn <edelsohn@gnu.org>
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.
1285 2001-05-15 Loren J. Rittle <ljrittle@acm.org>
1287 * gthr-posix.h: Make additional pthread-* functions weak.
1289 Tue May 15 13:51:32 CEST 2001 Jan Hubicka <jh@suse.cz>
1291 * recog.c (apply_change_group): Avoid unneeded validating.
1293 2001-05-14 David Edelsohn <edelsohn@gnu.org>
1295 * rs6000.c (num_insns_constant_wide): Constants are sign-extended.
1296 (num_insns_constant): CONST_INT can be 64-bits.
1298 2001-05-14 Stan Shebs <shebs@apple.com>
1300 * config/darwin.h (LIB_SPEC): Just use -lSystem.
1301 (LIBGCC_SPEC): Don't define.
1303 2001-05-14 Richard Henderson <rth@redhat.com>
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.
1309 2001-05-14 Andrew MacLeod <amacleod@redhat.com>
1311 * config/ia64/lib1funcs.asm (__divtf3): Fix incorrect bits in
1312 extended precision divide.
1314 2001-05-14 Andrew MacLeod <amacleod@redhat.com>
1316 * config/ia64/ia64.c (rtx_needs_barrier): Call rtx_needs_barrier
1317 for RETURNS as well.
1319 Mon May 14 17:34:48 CEST 2001 Jan Hubicka <jh@suse.cz>
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
1328 * i386.c (override_options): Add sorry about not suported modes.
1330 Mon May 14 08:56:47 2001 Jeffrey A Law (law@cygnus.com)
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.
1337 2001-05-14 Mark Mitchell <mark@codesourcery.com>
1339 * regrename.c (regrename_optimize): Do not rename registers to
1342 2001-05-14 Alexandre Oliva <aoliva@redhat.com>
1344 * rtl.texi (CALL_INSN_FUNCTION_USAGE): Note that (and when) it may
1345 contain MEMs. Remove useless distinction about clobbering
1348 2001-05-13 Geoff Keating <geoffk@redhat.com>
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.
1356 2001-05-13 Zack Weinberg <zackw@stanford.edu>
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.
1364 * Makefile.in (installdirs): Don't create $(gcc_tooldir).
1366 2001-05-13 Alexandre Oliva <aoliva@redhat.com>
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.
1373 2001-05-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
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.
1381 2001-05-13 Mark Mitchell <mark@codesourcery.com>
1383 * Makefile.in (STAMP): New macro.
1384 Replace all uses of `touch' with $(STAMP).
1385 * fixinc/Makefile.in: Likewise.
1387 Sun May 13 07:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
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.
1393 2001-05-12 Richard Henderson <rth@redhat.com>
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.
1400 2001-05-12 Zack Weinberg <zackw@stanford.edu>
1402 * extend.texi: Document #pragma GCC java_exceptions.
1404 2001-05-12 Neil Booth <neil@cat.daikokuya.demon.co.uk>
1406 * c-parse.in (bison parser, init_reswords): Remove uses of
1408 * c-tree.h (doing_objc_thang): Remove.
1410 2001-05-12 Neil Booth <neil@daikokuya.demon.co.uk>
1412 * cpplex.c (_cpp_lex_token): Ensure we warn at most once
1413 about files not ending in newlines.
1415 2001-05-12 Neil Booth <neil@cat.daikokuya.demon.co.uk>
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.
1421 * method.c (build_mangled_C99_name): Remove unused prototype.
1423 2001-05-12 Alexandre Oliva <aoliva@redhat.com>
1425 * config/arm/arm.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Use delta.
1427 2001-05-12 Alexandre Oliva <aoliva@redhat.com>
1429 * defaults.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Define.
1430 * tm.texi (TARGET_PRTMEMFUNC_VBIT_LOCATION): Document.
1432 2001-05-11 Richard Henderson <rth@redhat.com>
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.
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.
1461 * config/alpha/elf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
1463 * config/ia64/fde-glibc.c: Use "struct unw_table_entry"
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.
1484 2001-05-11 Richard Henderson <rth@redhat.com>
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
1490 * config/ia64/ia64.md (break_f): New.
1492 2001-05-12 Neil Booth <neil@daikokuya.demon.co.uk>
1494 * c-lex.c (lex_charconst): Convert into a simple wrapper
1495 around cpp_interpret_charconst, to which most of the code
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.
1507 2001-05-12 Dean Wakerley <dean@wakerley.com>
1509 * doc/install.texi: New file. Converted to texinfo from the HTML
1510 documentation in wwwdocs/htdocs/install.
1512 Fri May 11 15:50:13 2001 Jeffrey A Law (law@cygnus.com)
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.
1517 * toplev.c (compile_file): Move comment for opening output
1518 file to just before the code that opens the output file.
1520 2001-05-11 Jakub Jelinek <jakub@redhat.com>
1522 * regmove.c (regmove_optimize): Suppress the optimization for
1523 unchanging destination register. Add comment above function.
1525 2001-05-11 Zack Weinberg <zackw@stanford.edu>
1527 * Makefile.in: Exterminate all references to assert.h.
1528 * cross-make: Likewise.
1530 * configure.in: Correct commentary.
1531 * configure: Regenerate.
1533 * libgcc-std.ver, libgcc2.c, libgcc2.h, sys-protos.h:
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.
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.
1545 2001-05-11 Graham Stott <grahams@redhat.com>
1547 * combine.c (simplify_comparison): Fix typo.
1549 2001-05-11 Mark Mitchell <mark@codesourcery.com>
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.
1563 2001-05-11 Mark Mitchell <mark@codesourcery.com>
1565 * optabs.c (emit_libcall_block): Don't mark calls as CONST_CALL_P.
1567 2001-05-11 Neil Booth <neil@daikokuya.demon.co.uk>
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.
1577 2001-05-11 Alexandre Oliva <aoliva@redhat.com>
1579 * config/mn10300/t-mn10300 (dp-bit.c, fp-bit.c): Don't define
1580 FLOAT_BIT_ORDER_MISMATCH.
1582 2001-05-10 David Edelsohn <edelsohn@gnu.org>
1584 * expr.c (emit_push_insn): Convert PUSH_ROUNDING argument to
1585 bytes. Reported by Kazu Hirata <kazu@hxi.com>.
1587 2001-05-10 David Edelsohn <edelsohn@gnu.org>
1589 * expr.c (emit_group_load): extract_bit_field requires a REG or
1592 Thu May 10 14:45:44 2001 Jeffrey A Law (law@cygnus.com)
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.
1599 * jump.c (jump_optimize_1): Do not wrap the new jump target
1600 inside a LABEL_REF; gen_jump will do that automatically.
1602 2001-05-10 Toon Moene <toon@moene.indiv.nluug.nl>
1604 * dwarf2out.c (mem_loc_descriptor): Do not pass constant pool
1605 contents for a SYMBOL_REF in case of floating point constants.
1607 2001-05-10 DJ Delorie <dj@redhat.com>
1609 * c-common.c (combine_strings): Widen strings in a
1610 host-endian-independent way.
1612 2001-05-10 Joseph S. Myers <jsm28@cam.ac.uk>
1614 * c-parse.in: Remove many shift/reduce conflicts. Update
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
1647 Thu May 10 09:17:42 2001 Jeffrey A Law (law@cygnus.com)
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.
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.
1656 2001-05-09 Zack Weinberg <zackw@stanford.edu>
1658 * cppinit.c (cpp_post_options): Shut off macro expansion if
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.
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.
1677 2001-05-09 Joseph S. Myers <jsm28@cam.ac.uk>
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.
1685 Wed May 9 16:01:41 CEST 2001 Jan Hubicka <jh@suse.cz>
1687 * i386.md (DImode move splitters): Use !MMX and !SSE for the condition.
1689 Wed May 9 10:40:25 2001 Alexandre Oliva <aoliva@redhat.com>
1691 * regclass.c (scan_one_insn): Update REG_N_REFS when optimizing
1692 handling of two-address insns.
1694 Wed May 9 10:36:18 2001 Alexandre Oliva <aoliva@redhat.com>
1696 * Makefile.in (NM_FOR_TARGET): Look for ./nm, then
1697 ../binutils/nm-new instead of ../binutils/nm.
1699 Wed May 9 12:15:46 CEST 2001 Jan Hubicka <jh@suse.cz>
1701 * i386.md (movdi splitter): Fix the splitting condition
1702 (float_extenddftf splitter): Fix mode.
1704 Wed May 9 12:05:39 CEST 2001 Jan Hubicka <jh@suse.cz>
1706 * genrecog.c (write_switch): Avoid outputting of switch for
1707 types wider than int.
1709 2001-05-03 Andrew Haley <aph@cambridge.redhat.com>
1711 * reload1.c (copy_eh_notes): New function.
1712 (emit_input_reload_insns): Call it.
1713 (emit_output_reload_insns): Call it.
1715 2001-05-07 Zack Weinberg <zackw@stanford.edu>
1717 * config.gcc (i[34567]86-*-sco3.2v4*, i[34567]86-*-sco*):
1719 * config/i386/sco.h, config/i386/sco4.h, config/i386/scodbx.h,
1720 config/i386/sco4dbx.h, config/i386/x-sco4: Delete file.
1722 * optabs.c: Delete #ifdef BROKEN_LDEXP block.
1724 2001-05-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
1726 * pa.md (interspace_jump): Revise comment.
1727 (builtin_longjmp): Block initial setup insns from delay slot of
1729 (builtin_setjmp_receiver): New expander to save and restore PIC
1732 * som.h (NM_FLAGS): Remove `-n' sort option. Revise comment.
1734 Mon May 7 09:30:14 2001 Jeffrey A Law (law@cygnus.com)
1736 * toplev.c (compile_file): Set up the output file before we call
1737 the various initializers for the compiler.
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.
1742 * pa.h (MAX_LONG_TYPE_SIZE): Should be 32, not 64.
1743 * pa-64.h (*_TYPE_SIZE): Undefine before redefining.
1745 2001-05-06 Zack Weinberg <zackw@stanford.edu>
1747 * Makefile.in (tradcpp0): Correct typo in dependency list.
1749 2001-05-06 Geoff Keating <geoffk@redhat.com>
1751 * config/rs6000/rs6000.c (rs6000_emit_prologue): Don't save
1752 the link register if we're not going to use it.
1754 * config/rs6000/rs6000.c (output_profile_hook): Fix a warning.
1755 (output_function_profiler): Likewise.
1757 2001-05-07 Alan Modra <amodra@one.net.au>
1759 * pa.c (compute_frame_size): 64-bit frame marker is 16 bytes.
1761 2001-05-06 Alexandre Oliva <aoliva@redhat.com>
1763 * unroll.c (loop_iterations): Don't sign-extend abs_diff;
1764 zero-extend it. Make abs_inc unsigned.
1766 * optabs.c (expand_binop): Sign-extend xop0 and xop1 from the
1767 widest mode in narrowing and widening operations.
1769 * config/mips/mips.md: Sign extend CONST_INTs.
1771 2001-05-06 Andreas Jaeger <aj@suse.de>
1773 * invoke.texi (Option Summary): Add -momit-leaf-frame-pointer
1774 (i386 Options): Document -momit-leaf-frame-pointer.
1776 2001-05-06 Neil Booth <neil@daikokuya.demon.co.uk>
1778 * c-typeck.c (internal_build_compound_expr): Check for
1779 array to pointer conversion just once.
1781 2001-05-05 Richard Henderson <rth@redhat.com>
1783 * integrate.c (copy_insn_list): Substitute NOTE_EXPECTED_VALUE.
1785 2001-05-05 Richard Henderson <rth@redhat.com>
1787 * except.c (remove_fixup_regions): Adjust REG_EH_REGION notes
1788 to the parent of the fixup region.
1790 2001-05-05 Jakub Jelinek <jakub@redhat.com>
1792 * gcc.c (cpp_options): Define __NO_INLINE__ unless we are honoring
1794 * cpp.texi (__NO_INLINE): Document it.
1796 2001-05-05 Neil Booth <neil@daikokuya.demon.co.uk>
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.
1803 2001-05-05 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1805 * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Optimize moves
1806 between X and Y by using sequences of xgdx and xgdy.
1808 2001-05-05 Stephane Carrez <Stephane.Carrez@worldnet.fr>
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
1820 2001-05-04 David Edelsohn <edelsohn@gnu.org>
1822 * calls.c (store_one_arg): Don't divide align by BITS_PER_UNIT.
1824 2001-05-04 Lars Brinkhoff <lars@nocrew.org>
1826 * simplify-rtx.c (simplify_binary_operation): Simplify ~a + 1
1829 2001-05-04 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
1831 * config/rs6000/rs6000.md (ashldi3 splits): Guard with
1834 2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1836 * config/m68hc11/m68hc11.md (lshrhi3_const1): Fix shift of
1837 soft register, use ror instead of rol.
1839 2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
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.
1845 2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
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.
1854 2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
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.
1860 2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
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.
1872 2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
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.
1878 2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
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
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.
1888 2001-05-04 Nick Clifton <nickc@cambridge.redhat.com>
1890 * config/arm/elf.h (ASM_OUTPUT_ALIGNED_COMMON): Define.
1892 2001-05-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1894 * alpha.h: NULL_PTR -> NULL.
1901 * i386.md: Likewise.
1904 * m68hc11.h: Likewise.
1905 * rs6000.h: Likewise.
1908 * sparc.h: Likewise.
1912 * final.c: Likewise.
1914 * recog.c: Likewise.
1916 2001-05-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1918 * i386.c (ix86_emit_restore_regs_using_mov, ix86_save_reg): Change
1919 `bool' parameter to `int'.
1921 * hash.c (hash_lookup): Likewise.
1923 * hash.h (hash_lookup): Likewise.
1925 * tlink.c (symbol_hash_lookup, demangled_hash_lookup): Likewise.
1927 Fri May 4 13:10:03 CEST 2001 Jan Hubicka <jh@suse.cz>
1929 * i386.c (x86_initialize_trampoline): Fix mode of constant.
1931 2001-05-03 Geoff Keating <geoffk@redhat.com>
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.
1948 2001-05-04 Andreas Jaeger <aj@suse.de>
1950 * except.h: Add prototype declaration for
1951 expand_builtin_init_dwarf_reg_sizes.
1953 2001-05-03 Geoffrey Keating <geoffk@redhat.com>
1955 * Makefile.in (site.exp): Set TESTING_IN_BUILD_TREE.
1957 2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1959 * config/m68hc11/m68hc11.md ("bitcmpqi"): New pattern for bitb
1961 ("bitcmpqi2"): New pattern for bit-extract and test.
1962 ("bitcmphi"): New pattern for bitb/bita instructions.
1964 2001-05-03 Joseph S. Myers <jsm28@cam.ac.uk>
1966 * gccbug.in: Use a temporary directory when the mktemp command is
1969 2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1971 * config/m68hc11/m68hc11.h (STATIC_CHAIN_REGNUM): Use soft z register
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):
1980 2001-05-03 David O'Brien <obrien@FreeBSD.org>
1982 * config/t-freebsd: Don't install "assert.h" in gcc. Compile crtbeginS.o
1983 and crtendS.o with PIC.
1985 2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
1987 * config/m68hc11/larith.asm (__mulqi3): Fix multiplication of two
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.
1997 2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
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.
2012 2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
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.
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.
2028 2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
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
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
2040 (m68hc11_gen_movqi): Fix move for 68HC12.
2041 * config/m68hc11/m68hc11-protos.h (m68hc11_notice_keep_cc): Declare.
2043 2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
2045 * config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Use LCT_CONST
2046 and don't pass operands[0] to emit_library_call_value.
2048 2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
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
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.
2060 2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
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.
2070 2001-05-03 David O'Brien <obrien@FreeBSD.org>
2072 * config.gcc(rs6000-ibm-aix|powerpc-ibm-aix): Do not include
2073 rs6000/rs6000.h twice.
2075 2001-05-03 Mark Elbrecht <snowball3@bigfoot.com>
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
2082 (SUPPORTS_WEAK, SUPPORTS_ONE_ONLY): Remove.
2084 2001-05-03 Alexandre Oliva <aoliva@redhat.com>
2086 * config/mn10300/mn10300.md: Sign-extend GEN_INT operands.
2088 2001-05-03 Mark Mitchell <mark@codesourcery.com>
2090 * integrate.h (struct inline_remap): Add leaf_reg_map table.
2091 * integrate.c (expand_inline_function): Use xcalloc to allocate
2093 (copy_rtx_and_substitute): Use the leaf_reg_map for leaf
2096 2001-05-03 Mark Mitchell <mark@codesourcery.com>
2098 * c-dump.c (dequeue_and_dump): Don't look at DECL_ASSEMBLER_NAME
2101 2001-05-03 Alexandre Oliva <aoliva@redhat.com>
2103 * config/mn10300/mn10300.h (LINK_SPEC): Pass --relax to the
2104 linker if -mrelax is given.
2105 (TARGET_SWITCHES): Document -mrelax.
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
2112 2001-05-02 David O'Brien <obrien@FreeBSD.org>
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.
2117 2001-05-02 Stan Shebs <shebs@apple.com>
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.
2130 2001-05-02 Jakub Jelinek <jakub@redhat.com>
2132 * tradcpp.c (do_define): Make sure we don't walk past limit.
2134 2000-05-01 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
2136 * config/rs6000/rs6000.c (rs6000_legitimate_address): Allow any stack
2137 offsets if not REG_OK_STRICT.
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.
2155 2001-05-02 David Edelsohn <edelsohn@gnu.org>
2157 * config/rs6000/rs6000.c (rs6000_emit_move): Merge
2158 special_constant conditional blocks together.
2160 2001-05-02 Dale Johannesen <dalej@apple.com>
2162 * config/rs6000/rs6000.h (RS6000_ARG_SIZE): Remove unused NAMED
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
2170 Wed May 2 13:09:36 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2172 * config/i386/i386.h (FUNCTION_BOUNDARY): Result is unsigned.
2174 * function.c (fixup_var_regs_1, case SUBREG): Use promoted mode
2177 * expr.c (store_field): Do nothing except elaborate side-effects if
2180 2001-05-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2182 * c-lex.c: NULL_PTR -> NULL.
2184 * emit-rtl.c: Likewise.
2186 * genpeep.c: Likewise.
2188 * mips-tdump.c: Likewise.
2189 * reload1.c: Likewise.
2190 * rtlanal.c: Likewise.
2192 * stor-layout.c: Likewise.
2193 * toplev.c: Likewise.
2195 2001-05-01 Per Bothner <per@bothner.com>
2197 * expr.c (expand_expr): When compiling LABELED_BLOCK_EXPR,
2198 call do_pending_stack_adjust before emiting label.
2200 2001-05-01 Mark Mitchell <mark@codesourcery.com>
2202 * extend.texi: Fix typo.
2204 2001-05-01 Stan Shebs <shebs@apple.com>
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.
2214 2001-05-01 Jeffrey Oldham <oldham@codesourcery.com>
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.
2224 2001-05-01 Zack Weinberg <zackw@stanford.edu>
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.
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.
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.
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.
2247 * config/i386/x-cygwin, config/m68k/t-aux, config/mips/x-iris:
2250 24 x-host fragments remain, 0 x-cpu, 3 top level.
2252 2001-05-01 Zack Weinberg <zackw@stanford.edu>
2254 * aclocal.m4 (gcc_AC_C_CHAR_BIT): Correct test program.
2255 * configure: Regenerate.
2257 2001-05-01 Angela Marie Thomas <angela@cygnus.com>
2259 * Makefile.in (install-headers): Remove redundant dependency.
2261 2001-05-01 Nathan Sidwell <nathan@codesourcery.com>
2263 * c-tree.texi (USING_STMT): Document.
2265 2001-05-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
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.
2275 * fold-const.c: Likewise.
2276 * function.c: Likewise.
2279 * integrate.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.
2288 * varasm.c: Likewise.
2290 2001-05-01 Gabriel Dos Reis <gdr@codesourcery.com>
2292 * diagnostic.def: New file.
2293 * diagnostic.h (diagnostic_t): New enum.
2294 * Makefile.in (diagnostic.o): Depend on diagnostic.def
2296 2001-04-30 Zack Weinberg <zackw@stanford.edu>
2298 * tsystem.h: Test only POSIX for availability of string.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
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*.
2310 2001-04-30 Zack Weinberg <zackw@stanford.edu>
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.
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
2322 * sdbout.c: Always include gsyms.h instead of system syms.h.
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.
2328 2001-04-30 Mark Mitchell <mark@codesourcery.com>
2329 Richard Henderson <rth@redhat.com>
2331 * extend.texi: Improve documentation of volatile asms.
2333 2001-04-30 Mark Mitchell <mark@codesourcery.com>
2335 * c-tree.texi: Fix thinko.
2336 * gcc.texi: Likewise.
2338 2001-04-30 Richard Henderson <rth@redhat.com>
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.
2349 2001-04-30 Jan Hubicka <jh@suse.cz>
2350 Richard Henderson <rth@redhat.com>
2352 * regmove.c (try_apply_stack_adjustment): Remove now redundant
2354 (combine_stack_adjustments_for_block): Don't combine stack
2355 allocation followed by deallocations. Handle grow-up stacks.
2357 2001-04-30 Mark Mitchell <mark@codesourcery.com>
2359 * fdl.texi: New file.
2360 * c-tree.texi: Use the GFDL.
2361 * gcc.texi: Likewise.
2363 2001-04-30 Stan Shebs <shebs@apple.com>
2365 * invoke.texi: Add a section documenting Objective-C options.
2367 2001-04-27 Andrew Haley <aph@cambridge.redhat.com>
2369 * emit-rtl.c (try_split): Copy EH notes to sequence.
2371 2001-04-30 Mark Mitchell <mark@codesourcery.com>
2373 * regmove.c (record_stack_memrefs): Catch all references to the
2376 2001-04-29 Toomas Rosin <toomas at ns dot tklabor dot ee>
2378 * Makefile.in (stmp-fixinc): quote shell assignment values
2380 2001-04-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2382 * c-aux-info.c: NULL_PTR->NULL in calls to `concat'.
2386 * prefix.c: Likewise.
2388 2001-04-28 Stan Shebs <shebs@apple.com>
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.
2395 * config/darwin.h (STANDARD_EXEC_PREFIX): Don't define.
2396 (NEXT_OBJC_RUNTIME): Define.
2398 Sat Apr 28 21:02:58 CEST 2001 Jan Hubicka <jh@suse.cz>
2400 * rtl.h (simplify_gen_relational): Add cmp_mode parameter.
2401 * simplify-rtx.c (simplify_gen_relational): Likewise.
2403 * simplify-rtx.c (simplify_replace_rtx): Handle relationals and MEMs.
2405 * i386.h (VALID_SSE_REG_MODE): Accept MMX modes if SSE2
2406 * i386.md (movsi_1, movdi2, movdi_1_rex64): Handle SSE2 moves.
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.
2418 Sat Apr 28 10:36:23 2001 Jeffrey A Law (law@cygnus.com)
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
2430 2001-04-28 Martin Kalen <martin.kalen@todaysystems.com.au>
2432 * pa.c (FRP): Remove erroneous white space in macro definition.
2434 2001-04-28 Andreas Jaeger <aj@suse.de>
2436 * invoke.texi: Use XX-bit instead of XXbit or XX bit where
2438 * extend.texi: Likewise.
2439 * tm.texi: Likewise.
2441 2001-04-28 Andreas Jaeger <aj@suse.de>
2443 * md.texi: Use XX-bit instead of XXbit or XX bit where
2446 2001-04-28 Jens Schweikhardt <schweikh@schweikhardt.net>
2448 * gcc.c (process_command): Allow -l lib in addition to -llib
2449 for POSIX compliance. This fixes PR c/2347.
2451 * invoke.texi: Update section on Link Options accordingly.
2453 2001-04-27 Zack Weinberg <zackw@stanford.edu>
2455 * function.c (purge_addressof_1): Remove the duplicate
2456 if (code == SET) block. Fold the two if (code == ADDRESSOF)
2459 2001-04-28 Jason Merrill <jason_merrill@redhat.com>
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.
2469 2001-04-27 Jeffrey Oldham <oldham@codesourcery.com>
2471 * except.c (expand_eh_region_end_cleanup): word_mode, not Pmode.
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.
2480 2001-04-27 Andreas Jaeger <aj@suse.de>
2481 Richard Henderson <rth@redhat.com>
2483 * md.texi (Machine Constraints): Document additional i386
2484 constraints and fix description of "A".
2486 Fri Apr 27 10:43:49 2001 Jeffrey A Law (law@cygnus.com)
2488 * tm.texi (TARGET_MEM_FUNCTIONS): Update text.
2490 2001-04-27 Jason Merrill <jason_merrill@redhat.com>
2492 * except.c (get_exception_filter): word_mode, not Pmode.
2494 2001-04-26 Geoffrey Keating <geoffk@redhat.com>
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
2501 (movsf_high): Likewise.
2502 (movsf_high+1): Allow even for soft-float.
2504 * function.c (expand_function_end): Always clobber the
2505 return registers, even if there is no return label.
2507 Thu Apr 26 20:28:21 CEST 2001 Jan Hubicka <jh@suse.cz>
2509 * (ix86_expand_fp_movcc): Re-enable SSE conditional move generation.
2511 Thu Apr 26 19:20:28 CEST 2001 Jan Hubicka <jh@suse.cz>
2513 * i386.md (abs/neg splitter): Fix calculation of sign bit for TFmodes
2514 (pushqi2_rex64, pushhi2_rex64): Add.
2516 2001-04-26 Andrew Haley <aph@cambridge.redhat.com>
2518 * except.c (expand_eh_region_end_cleanup): Force pending stack
2519 adjust before emitting label that branches around cleanup code.
2521 2001-04-26 H.J. Lu (hjl@gnu.org)
2523 * config.gcc (mips*-*-linux*): Add elfos.h to tm_file.
2525 * config/mips/ecoff.h (STARTFILE_SPEC): Undefine before
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.
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.
2567 2001-04-26 Nick Clifton <nickc@cambridge.redhat.com>
2569 * config/arm/arm.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Define, if the
2570 assembler supports .p2align.
2572 2001-04-26 Nathan Sidwell <nathan@codesourcery.com>
2574 * c-lex.c (c_lex): Remove # from %o diagnostic formatting.
2576 2001-04-26 Jakub Jelinek <jakub@redhat.com>
2578 * integrate.c (expand_inline_function): Check for error_mark_node
2581 2001-04-26 Jakub Jelinek <jakub@redhat.com>
2583 * config/i386/i386.h (CC1_CPU_SPEC): Fix deprecation warnings for
2586 2001-04-26 Alexandre Oliva <aoliva@redhat.com>
2588 * configure.in (configargs.h): Define thread_model.
2589 * configure: Rebuilt.
2590 * gcc.c (main): Print it with -v.
2592 2001-04-25 Joseph S. Myers <jsm28@cam.ac.uk>
2594 * invoke.texi: Document -Wmissing-braces, -dumpspecs,
2595 -dumpmachine, -dumpversion, -fmem-report and -ftime-report.
2596 * gcc.1: Regenerate.
2598 2001-04-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2600 * dwarfout.c (is_pseudo_reg, type_main_variant, is_tagged_type,
2601 is_redundant_typedef): Use static inline instead of inline static.
2603 Wed Apr 25 18:21:01 2001 Christopher Faylor <cgf@cygnus.com>
2605 * config/i386/cygwin.h: Move W32API search to LINK_SPEC to ensure that
2606 this directory is always searched.
2608 2001-04-25 Richard Henderson <rth@redhat.com>
2610 * config/i386/i386.c (ix86_expand_epilogue): Properly compute size
2611 of registers to restore along non eh_return path.
2613 2001-04-25 Jakub Jelinek <jakub@redhat.com>
2615 * c-format.c (check_format_info_recurse): Handle
2616 PLUS_EXPR for format string.
2618 2001-04-25 Jakub Jelinek <jakub@redhat.com>
2620 * config/ia64/ia64.h (CC1_SPEC): Define.
2621 * config/ia64/linux.h (CC1_SPEC): Define.
2623 Wed Apr 25 17:09:50 2001 J"orn Rennecke <amylaar@redhat.com>
2625 * emit-rtl.c (constant_subword): Also do sign extension in
2626 BITS_PER_WORD == 16 case.
2628 2001-04-25 Jason Merrill <jason_merrill@redhat.com>
2630 * loop.c (try_swap_copy_prop): Go back to checking insn.
2632 2001-04-25 Jakub Jelinek <jakub@redhat.com>
2634 * emit-rtl.c (subreg_hard_regno): Only do HARD_REGNO_MODE_OK check
2635 if check_mode is non-zero.
2637 2001-04-25 Jakub Jelinek <jakub@redhat.com>
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.
2643 2001-04-24 Zack Weinberg <zackw@stanford.edu>
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.
2652 2001-04-24 Jason Merrill <jason_merrill@redhat.com>
2654 * except.c (reachable_handlers): Step out one level from a RESX.
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
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.
2670 2001-04-24 Nathan Sidwell <nathan@codesourcery.com>
2672 * c-semantics.c (add_scope_stmt): Don't call
2673 current_scope_stmt_stack multiple times.
2675 2001-04-24 Zack Weinberg <zackw@stanford.edu>
2676 Nathan Sidwell <nathan@codesourcery.com>
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
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):
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.
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.
2726 2001-04-24 Nick Clifton <nickc@cambridge.redhat.com>
2728 * dwarf2out.c (mem_loc_descriptor): If a SYMBOL_REF is in the
2729 constant pool, use the pool's SYMBOL_REF instead.
2731 * config/v850/v850.h (STRICT_ALIGNMENT): Always set, even for the
2734 2001-04-23 Joseph S. Myers <jsm28@cam.ac.uk>
2736 * c-convert.c (convert): When converting to a BOOLEAN_TYPE, avoid
2737 passing nested NOP_EXPRs to fold.
2739 Mon Apr 23 14:32:12 CEST 2001 Jan Hubicka <jh@suse.cz>
2741 * reg-stack.c (emit_swap_insn): Do not get pass CALL_INSNs.
2743 2001-04-22 Mark Mitchell <mark@codesourcery.com>
2745 * loop.c (loop_delete_insns): Add prototype.
2747 2001-04-23 Phil Edwards <pme@sources.redhat.com>
2749 * configure.in: Remove ENABLE_STD_NAMESPACE.
2750 * config.in: Regenerated.
2751 * configure: Regenerated.
2753 2001-04-22 Stan Shebs <shebs@apple.com>
2755 * config.gcc (powerpc-*-darwin*): Move the flag in xm-darwin.h
2757 * config/rs6000/xm-darwin.h: Remove file.
2759 2001-04-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2761 * collect2.c (main): Use concat in lieu of xmalloc/sprintf.
2762 (write_c_file_stat): Likewise.
2764 * dbxout.c (dbxout_init): Likewise.
2766 * profile.c (output_func_start_profiler): Likewise.
2768 2001-04-22 Philipp Thomas <pthomas@suse.de>
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.
2775 2001-04-21 Mark Mitchell <mark@codesourcery.com>
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.
2785 2001-04-21 Kazu Hirata <kazu@hxi.com>
2787 * config/h8300/h8300.c (general_operand_src): Fix a comment typo.
2789 * config/sparc/sparc.c (sparc_flat_eligible_for_epilogue_delay):
2791 * config/i960/i960.c (signed_arith_operand): Likewise.
2793 * calls.c (expand_call): Fix a comment typo.
2795 2001-04-20 Zack Weinberg <zackw@stanford.edu>
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.
2802 Fri Apr 20 12:24:50 2001 Jeffrey A Law (law@cygnus.com)
2804 * config/pa/som.h (NM_FLAGS): Define.
2806 2001-04-20 Bernd Schmidt <bernds@redhat.com>
2808 * ia64.h (MD_SCHED_REORDER, MD_SCHED_REORDER2): Pass CLOCK to called
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.
2819 2001-04-20 Alexandre Oliva <aoliva@redhat.com>
2821 * config/i386/i386.c (ix86_expand_int_movcc,
2822 ix86_expand_strlensi_unroll_1): Sign-extend CONST_INTs.
2824 2001-04-20 Geoff Keating <geoffk@redhat.com>
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>.
2833 2001-04-20 Jakub Jelinek <jakub@redhat.com>
2835 * reg-stack.c (check_asm_stack_operands): Issue error if "=t" resp.
2836 "=u" is used together with "st" resp. "st(1)" clobber.
2838 2001-04-20 Jakub Jelinek <jakub@redhat.com>
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
2847 2001-04-19 Zack Weinberg <zackw@stanford.edu>
2849 * toplev.c: Excise all code for the undocumented -dm option.
2850 (float_signal): Call signal just once, unconditionally.
2852 2001-04-19 Geoff Keating <geoffk@redhat.com>
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.
2858 Thu Apr 19 19:15:26 2001 Jeffrey A Law (law@cygnus.com)
2860 * config/pa/pa-linux.h (CPLUSPLUS_CPP_SPEC): Undefine.
2861 * config/pa/pa.h (CPLUSPLuS_CPP_SPEC): Define.
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$).
2869 * config/pa/som.h (SUPPORTS_INIT_PRIORITY): SOM does not support
2872 2001-04-19 DJ Delorie <dj@redhat.com>
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.
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.
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
2898 (process_command): Likewise.
2899 (do_spec_1): Likewise.
2900 * java/lang.c (init_parse): Likewise.
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.
2907 2001-04-19 Mark Mitchell <mark@codesourcery.com>
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.
2913 * rtl.texi (jump_insn): Expand on JUMP_LABEL documentation.
2914 * loop.c (load_mems): Handle a NULL JUMP_LABEL for a JUMP_INSN.
2916 * mips.md (reload_outputdi): Require that operand0 be a
2919 2001-04-19 Jakub Jelinek <jakub@redhat.com>
2921 * invoke.texi (-Wshadow): Clarify.
2923 2001-04-18 Mark Mitchell <mark@codesourcery.com>
2925 * loop.c (load_mems): Examine all the instructions in the loop
2926 before concluding that all jumps branch to the first instruction
2929 Wed Apr 18 20:32:03 2001 Christopher Faylor <cgf@cygnus.com>
2931 * config/i386/xm-cygwin.h (CPP_SPEC): Fix typo.
2933 2001-04-18 Jakub Jelinek <jakub@redhat.com>
2935 * cpp.texi (-Wwhite-space): Remove.
2936 (-Wall): -Wall does not imply -Wwhite-space.
2938 2001-04-17 Zack Weinberg <zackw@stanford.edu>
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
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.
2949 Tue Apr 17 21:41:11 2001 Jeffrey A Law (law@cygnus.com)
2951 * jump.c (mark_all_labels): Canonicalize the tail recursion
2952 label attached to CALL_PLACEHOLDER insns.
2954 2001-04-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2956 * output.h (dump_flow_info, free_basic_block_vars,
2957 which_alternative): Delete redundant prototypes.
2959 * rtl.h (bss_section): Likewise.
2961 2001-04-17 Loren J. Rittle <ljrittle@acm.org>
2963 * dbxout.c (N_OPT): Define if not available from <stab.h>
2965 2001-04-17 John David Anglin <dave@hiauly1.hia.nrc.ca>
2967 * vax.h (PROMOTE_PROTOTYPES): Define for compatibility with system
2968 libraries and native K&R compilers.
2970 2001-04-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2972 * c-typeck.c (convert_arguments): Don't check for width changes
2975 * invoke.texi (-Wtraditional): Update documentation.
2977 2001-04-16 Zack Weinberg <zackw@stanford.edu>
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.
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."
2989 * defaults.h: Don't provide default for ASM_IDENTIFY_LANGUAGE.
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.
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.
3016 * config/avr/avr.h, config/vax/vax.h: Delete definition of
3017 ASM_IDENTIFY_GCC and move part of its logic into
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
3024 * config/i386/dgux.c, config/m88k/m88k.c, config/sh/sh.c
3025 (output_file_start): Correct comment.
3027 * config/i386/osfrose.h: Don't emit trailing .ident directive.
3028 * config/m68k/mot3300.h: Override STABS_GCC_MARKER to "gcc2_compiled%"
3030 * config/pa/lib2funcs.asm: Delete gcc_compiled. label.
3031 * config/rs6000/aix.h: Correct comment.
3033 * config/i386/i386afe.h: Delete.
3034 * config.gcc: Remove references to i386afe.h.
3036 * tm.texi: Delete documentation of ASM_IDENTIFY_GCC. The
3037 other macros deleted by this patch were undocumented.
3039 Mon Apr 16 08:03:48 2001 Jeffrey A Law (law@cygnus.com)
3041 * pa.md (reload_outdi): Operand 0 must be a non hard register.
3043 * pa.c (secondary_reload_class): SAR<->FP copies require a
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.
3051 2001-04-15 Toon Moene <toon@moene.indiv.nluug.nl>
3053 * i386.md (sqrtdf2): SFmode should be DFmode.
3055 2001-04-15 Alexandre Oliva <aoliva@redhat.com>
3057 * gcse.c (compute_ld_motion_mems): ASM outputs aren't moveable.
3058 (find_moveable_store): Likewise.
3060 2001-04-15 Jim Wilson <wilson@redhat.com>
3062 * function.c (expand_function_end): Handle PARALLEL real_decl_rtl.
3064 Sat Apr 14 16:24:19 CEST 2001 Jan Hubicka <jh@suse.cz>
3066 * i386.md (ashldi3_1_rex64): Add 'J' to the constraints
3067 (ashrdi3_1_rex64): Change 'n' constraint to 'J'.
3069 2001-04-14 Alexandre Oliva <aoliva@redhat.com>
3071 * config/mn10300/mn10300.md (cmpsi): Tell reload to disregard the
3074 2001-04-14 Alan Modra <amodra@one.net.au>
3076 * pa.c (force_mode): New function.
3077 (emit_move_sequence): Use it instead of generating new rtx_REGs.
3079 2001-04-13 Jim Wilson <wilson@redhat.com>
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.
3090 Fri Apr 13 21:40:28 2001 Loren J. Rittle <ljrittle@acm.org>
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
3098 2001-04-13 Alan Modra <alan@linuxcare.com.au>
3100 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Disallow PIC LO_SUM
3103 2001-04-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3105 * Makefile.in (reg-stack.o): Depend on reload.h.
3106 (insn-attrtab.o): Depend on flags.h.
3108 * genattrtab (main): Include flags.h in insn-attrtab.c.
3110 * reg-stack.c: Include reload.h.
3112 * sparc.h (flag_pic): Delete redundant declaration.
3114 * output.h (flag_pic): Likewise.
3116 * tree.h (pedantic): Likewise.
3118 2001-04-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3120 * Makefile.in (toplev.o, jump.o, regmove.o): Depend on reload.h
3122 * jump.c, regmove.c, toplev.c: Include reload.h.
3124 * reload.h (reload_cse_regs): Declare.
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.
3130 2001-04-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3132 * Makefile.in (ssa.o, regclass.o): Depend on $(EXPR_H).
3134 * regclass.c, ssa.c: Include expr.h.
3136 * rtl.h (memory_address, force_reg, emit_queue, emit_move_insn,
3137 gen_move_insn): Delete redundant declarations.
3139 2001-04-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
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.
3146 2001-04-13 Alan Modra <amodra@one.net.au>
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.
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
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.
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.
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.
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.
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.
3226 Fri Apr 13 00:09:22 EDT 2001 John Wehle (john@feith.com)
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.
3232 2001-04-12 Richard Henderson <rth@redhat.com>
3234 * Makefile.in (regmove.o): Depend on except.h.
3235 * regmove.c: Include it.
3237 2001-04-12 Stan Shebs <shebs@apple.com>
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.
3244 Thu Apr 12 18:13:37 2001 Rodney Brown <RodneyBrown@mynd.com>
3246 * config/pa/quadlib.c: Add prototypes.
3248 2001-04-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3250 * bitmap.h (debug_bitmap): Delete redundant prototype.
3252 * rtl.h (get_frame_size): Likewise.
3254 2001-04-12 Jim Wilson <wilson@redhat.com>
3256 * config/ia64/ia64.md (extendsfdf2, extendsftf2, extenddftf2): Simplify
3257 to just emit an fnorm.
3259 2001-04-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3261 * c-common.h (truthvalue_conversion, type_for_mode,
3262 type_for_size): Delete redundant declarations.
3264 * c-lex.h (is_class_name): Likewise.
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.
3273 * expr.h (expand_tree_builtin): Likewise.
3275 2001-04-12 Mark Mitchell <mark@codesourcery.com>
3277 * invoke.texi: Document --param max-gcse-memory.
3279 2001-04-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3281 * configure.in (errno): Check for declaration.
3282 * configure, config.in: Regenerated.
3284 * system.h (errno): Only declare if not already done.
3286 2001-04-12 Alexandre Oliva <aoliva@redhat.com>
3288 * recog.c (general_operand, immediate_operand,
3289 nonmemory_operand): Require CONST_INTs to be sign-extended
3290 values for their modes.
3292 2001-04-12 Alexandre Oliva <aoliva@redhat.com>
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
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
3304 (expand_end_case): Convert minval and range to the appropriate
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
3312 2001-04-12 kaz Kojima <kkojima@rr.iij4u.or.jp>
3314 * sh.md (builtin_setjmp_receiver): New expander.
3316 2001-04-12 David Edelsohn <dje@watson.ibm.com>
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.
3322 2001-04-12 Alexandre Oliva <aoliva@redhat.com>
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
3330 (movsf split, movdf split): Sign-extend CONST_INTs.
3331 (movdi splits): Likewise.
3333 2001-04-12 Kelley Cook <kelley.cook@home.com>
3335 * config-lang.in (lang_dirs): Add in zlib.
3337 2001-04-11 Alexandre Oliva <aoliva@redhat.com>
3339 * config/i386/i386.md: Apply trunc_int_for_mode() to GEN_INT
3340 operands that make it to RTL.
3342 2001-04-11 Stan Shebs <shebs@apple.com>
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
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.
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):
3389 (machopic_output_stub): Ditto.
3390 * ginclude/stddef.h: Test _BSD_WCHAR_T_DEFINED_.
3392 2001-04-11 Mark Mitchell <mark@codesourcery.com>
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.
3400 2001-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3402 * cpp.texi (-Wtraditional): Update description.
3404 * invoke.texi (-Wtraditional): Likewise.
3406 2001-04-11 Jim Wilson <wilson@redhat.com>
3408 * config/ia64/ia64.h (FUNCTION_ARG_BOUNDARY): Return 128 if argument
3409 requires more than 64 bits of alignment.
3411 2001-04-11 Neil Booth <neil@daikokuya.demon.co.uk>
3413 * cpplib.c (do_line): Sanity check iff enable checking.
3415 2001-04-11 Richard Henderson <rth@redhat.com>
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.
3422 2001-04-11 Mark Mitchell <mark@codesourcery.com>
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
3428 * params.def (PARAM_MAX_GCSE_MEMORY): New parameter.
3429 * params.h (MAX_GCSE_MEMORY): New macro.
3431 2001-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3433 * Makefile.in (insn-output.o): Depend on $(EXPR_H).
3435 * genoutput.c (output_prologue): Include expr.h in insn-output.c.
3437 2001-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3439 * output.h (assemble_real): Declare if REAL_VALUE_TYPE is defined.
3441 * real.h (ereal_atof, real_value_truncate, target_isnan,
3442 target_isinf, target_negative, assemble_real, debug_real): Delete
3443 redundant prototypes.
3445 * Makefile.in (ifcvt.o): Depend on toplev.h.
3447 * c-semantics.c: Include expr.h.
3449 * ifcvt.c: Include toplev.h.
3451 * expr.h (rtx_equal_p): Delete prototype.
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):
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.
3464 * toplev.h (exact_log2_wide, floor_log2_wide): Add prototype.
3466 * sparc-protos.h: Delete redundant prototypes.
3468 2001-04-11 Vladimir Makarov <vmakarov@toke.toronto.redhat.com>
3470 * reload.c (push_reload): Add condition missed in SUBREG byte
3473 Wed Apr 4 00:28:23 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3475 * sparc/sol2-sld-64.h (STARTFILE_SPEC): Added missing blank.
3477 Wed Apr 11 14:06:10 CEST 2001 Jan Hubicka <jh@suse.cz>
3479 * i386.md (floatsisf_sse): Fix output template