OSDN Git Service

9963c167fea4a1ac50a8104ed950d228cd69c8d9
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 Mon Nov 12 11:58:26 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2
3         * alias.c (nonoverlapping_memrefs_p): Only update size from memref
4         if both size and offset known.
5
6 2001-11-12  David O'Brien  <obrien@FreeBSD.org>
7
8         * config/ia64/freebsd.h: Fix misspelling.
9
10 2001-11-12  Joseph S. Myers  <jsm28@cam.ac.uk>
11
12         * doc/gcc.texi: Move several chapters out to ...
13         * doc/configterms.texi, doc/fragments.texi, doc/hostconfig.texi,
14         doc/include/linux-and-gnu.texi, doc/interface.texi,
15         doc/makefile.texi, doc/passes.texi, doc/portability.texi:
16         ... here.  New files.
17         * doc/gcc.texi, doc/contrib.texi: Move section headings into
18         contrib.texi.
19         * Makefile.in ($(docdir)/gcc.info, gcc.dvi): Update dependencies.
20
21 2001-11-12  Kazu Hirata  <kazu@hxi.com>
22
23         * config/alpha/alpha-interix.h: Fix comment formatting.
24         * config/alpha/alpha.c: Likewise.
25         * config/alpha/alpha.h: Likewise.
26         * config/alpha/alpha32.h: Likewise.
27         * config/alpha/freebsd.h: Likewise.
28         * config/alpha/unicosmk.h: Likewise.
29         * config/alpha/vms.h: Likewise.
30
31 2001-11-12  Kazu Hirata  <kazu@hxi.com>
32
33         * config/h8300/h8300.c (get_shift_alg): Remove redundant code.
34
35 2001-11-12  Jakub Jelinek  <jakub@redhat.com>
36
37         * dbxout.c (dbxout_symbol_location): Avoid emitting invalid register
38         numbers.
39
40 Mon Nov 12 05:18:42 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
41
42         * emit-rtl.c (set_mem_attributes): If making object, can set alignment
43         from type.
44         (replace_equiv_address): Call update_temp_slot_address.
45
46         * dwarf2out.c (loc_descriptor_from_tree, case COMPOUND_EXPR): New case.
47
48         * alias.c (nonoverlapping_memrefs_p): Handle DECL_RTL being a CONCAT.
49
50 2001-11-12  Kazu Hirata  <kazu@hxi.com>
51
52         * config/h8300/h8300.c (shift_alg_qi): New.
53         (shift_alg_hi): Likewise.
54         (shift_alg_si): Likewise.
55         (get_shift_alg): Change the type of count to unsigned int.
56         Use the tables.
57
58 2001-11-11  Alexandre Oliva  <aoliva@redhat.com>
59
60         * Makefile.in (c-lang.o): Depend on $(VARRAY_H).
61         * c-decl.c (c_expand_body): Take argument can_defer_p.  Use it
62         to decide whether to defer a function.
63         (finish_function): Adjust.
64         (c_expand_deferred_function): New function.
65         * c-lang.c (deferred_fns): New variable.
66         (c_init): Initialize it, and mark it as a root.
67         (defer_fn): New function.
68         (finish_file): Expand all deferred functions.
69         * c-tree.h (defer_fn): Declare.
70         (c_expand_deferred_function): Likewise.
71         * objc/Make-lang.in (objc-act.o): Depend on $(VARRAY_H).
72         * objc-act.c (deferred_fns): New variable.
73         (objc_init): Initialize it, and mark it as a root.
74         (defer_fn): New function.
75         (finish_file): Expand all deferred functions.
76
77 2001-11-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
78
79         * alpha.c (unicosmk_special_name): Prototype.
80         (unicosmk_ssib_name): Delete unused variable.
81         * alpha/unicosmk.h (common_section, ssib_section): Prototype.
82         * alpha/vms.h (PREFIX): Undef before defining.
83         * arm/pe.h (SUBTARGET_NAME_ENCODING_LENGTHS): Likewise.
84         * i370/i370.c (mvs_hash_alias): Prototype.  Wrap with macro
85         controlling usage.  Const-ify.
86         (alias_number): Delete unused variable.
87         * m32r/m32r.c (m32r_sched_init): Add missing argument.
88         (m32r_expand_block_move): Fix uninitialized warnings.
89         * mn10300/mn10300.h (REGNO_IN_RANGE_P): Fix 'unsigned >=0 is
90         always true' warnings.
91         * openbsd.h (TARGET_MEM_FUNCTIONS): Don't redefine.
92         * sh/sh.c: Include "integrate.h".
93         (output_far_jump): Fix uninitialized warning.
94         * final.c (shorten_branches): Avoid automatic aggregate
95         initialization.
96         * integrate.c (subst_constants): Likewise.
97
98 2001-11-11  Kazu Hirata  <kazu@hxi.com>
99
100         * config/h8300/h8300.c (shift_alg): Remove SHIFT_MAX.
101         (get_shift_alg): Remove redundant code.
102
103 2001-11-11  Kazu Hirata  <kazu@hxi.com>
104
105         * config/pa/milli64.S: Fix comment formatting.
106         * config/pa/pa-64.h: Likewise.
107         * config/pa/pa-linux.h: Likewise.
108         * config/pa/pa-protos.h: Likewise.
109         * config/pa/pa.c: Likewise.
110         * config/pa/pa.h: Likewise.
111         * config/pa/pa32-linux.h: Likewise.
112         * config/pa/pa32-regs.h: Likewise.
113         * config/pa/pa64-hpux.h: Likewise.
114         * config/pa/pa64-regs.h: Likewise.
115         * config/pa/som.h: Likewise.
116
117 2001-11-11  Joseph S. Myers  <jsm28@cam.ac.uk>
118
119         * doc/gcc.texi: Move several chapters out to ...
120         * doc/bugreport.texi, doc/contribute.texi, doc/frontends.texi,
121         doc/service.texi, doc/standards.texi, doc/trouble.texi,
122         doc/vms.texi: ... here.  New files.
123         * Makefile.in ($(docdir)/gcc.info, gcc.dvi): Update dependencies.
124
125 2001-11-11  Joseph S. Myers  <jsm28@cam.ac.uk>
126
127         * ChangeLog.2, ChangeLog.3, ChangeLog.4, ChangeLog.5, ChangeLog,
128         cfg.c, cfganal.c, cfgcleanup.c, cfglayout.c, cfgloop.c, cfgrtl.c,
129         collect2.c, combine.c, config.in, configure, configure.in,
130         conflict.c, dwarf2out.c, dwarfout.c, except.c, final.c, flow.c,
131         genattrtab.c, ggc-page.c, jump.c, lcm.c, predict.c, reg-stack.c,
132         reload1.c, rtlanal.c, sched-rgn.c, toplev.c, unwind-dw2-fde.h: Fix
133         spelling errors.
134
135 Sun Nov 11 05:56:01 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
136
137         * config/rs6000/rs6000.c (rs6000_hash_constant, toc_hash_eq):
138         Adjust operand number in CONST_DOUBLE.
139
140         * expmed.c (extract_bit_field): No longer pass in alignment.
141         (extract_fixed_bit_field, extract_split_bit_field): Likewise.
142         (store_bit_field, store_fixed_bit_field, store_split_bit_field):
143         Likewise.
144         * expr.c (store_constructor, store_constructor_field): Likewise.
145         (store_field, emit_group_load, emit_group_store): Likewise.
146         * expr.h (emit_group_load, emit_group_store): Delete ALIGN parm.
147         (store_bit_field, extract_bit_field): Likewise.
148         * calls.c, expr.c, function.c: Change calls to above functions.
149         * ifcvt.c, stmt.c: Likewise.
150         
151         * alias.c (nonoverlapping_memrefs_p): Not overlapping if one base is
152         constant and one is on frame.
153         If know memref offset, adjust size from decl.
154
155 2001-11-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
156
157         * alpha/unicosmk.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT): Fix
158         format specifier warning.
159         * convex.h (ASM_OUTPUT_BYTE): Likewise.
160         * elfos.h (ALIGN_ASM_OP): Undef before defining.
161         * i386/att.h (ASM_GENERATE_INTERNAL_LABEL): Fix format specifier
162         warning.
163         * i386/bsd.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
164         * i386/gas.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
165         * i386-interix.h (gen_stdcall_suffix): Prototype.
166         * i386.h (ASM_OUTPUT_BYTE): Fix format specifier warning.
167         * i386elf.h (ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE,
168         ASM_OUTPUT_LONG_DOUBLE): Likewise.
169         * i386/interix.c (gen_stdcall_suffix): Const-ify.
170         * i386/next.h (ASM_OUTPUT_LONG_DOUBLE, ASM_OUTPUT_DOUBLE,
171         ASM_OUTPUT_FLOAT, ASM_GENERATE_INTERNAL_LABEL): Fix format
172         specifier warnings.
173         * i386/osfrose.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
174         * i386/ptx4-i.h (ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE,
175         ASM_OUTPUT_LONG_DOUBLE): Likewise.
176         * i386/sco5.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
177         * i386/sequent.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
178         * i386/sun386.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
179         * i386/svr3dbx.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
180         * m68k/3b1.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_LONG_DOUBLE,
181         ASM_OUTPUT_FLOAT, ASM_GENERATE_INTERNAL_LABEL): Likewise.
182         * m68k/altos3068.h (ASM_OUTPUT_FLOAT_OPERAND): Likewise.
183         * m68k/amix.h (ASM_OUTPUT_ASCII, ASM_GENERATE_INTERNAL_LABEL):
184         Likewise.
185         * m68k/atari.h (ASM_OUTPUT_ASCII, ASM_GENERATE_INTERNAL_LABEL):
186         Likewise.
187         * m68k/crds.h (ASM_OUTPUT_DOUBLE, PRINT_OPERAND): Likewise.
188         * m68k/dpx2.h (ASM_OUTPUT_LONG_DOUBLE, ASM_OUTPUT_DOUBLE,
189         ASM_OUTPUT_FLOAT, ASM_OUTPUT_BYTE, ASM_OUTPUT_FLOAT_OPERAND):
190         Likewise.
191         * m68k/hp320.h (ASM_OUTPUT_LONG_DOUBLE, ASM_OUTPUT_BYTE):
192         Likewise.
193         * m68k.h (ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_BYTE):
194         Likewise.
195         * m68k/m68kv4.h (ASM_OUTPUT_ASCII): Delete unused variable.
196         * m68k/mot3300.h (ASM_OUTPUT_BYTE): Fix format specifier warning.
197         * m68k/news.h (PRINT_OPERAND): Likewise.
198         * m68k/next.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT,
199         ASM_OUTPUT_FLOAT_OPERAND, ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
200         * m68k/next21.h (ASM_OUTPUT_FLOAT_OPERAND): Likewise.
201         * m68k/plexus.h (ASM_SPEC): Insert space between macro name and
202         definition.
203         * m68k/sgs.h (ASM_OUTPUT_LONG_DOUBLE, ASM_OUTPUT_DOUBLE,
204         ASM_OUTPUT_FLOAT, ASM_OUTPUT_ASCII, ASM_OUTPUT_FLOAT_OPERAND,
205         ASM_OUTPUT_DOUBLE_OPERAND): Fix format specifier warnings.
206         * m68k/sun3.h (ASM_OUTPUT_FLOAT_OPERAND): Likewise.
207         * m68k/tower-as.h (ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_DOUBLE,
208         ASM_OUTPUT_LONG_DOUBLE, ASM_OUTPUT_FLOAT, ASM_OUTPUT_BYTE,
209         PRINT_OPERAND): Likewise.
210         * m88k/m88k.h (ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_BYTE):
211         Likewise.
212         * mips/elf.h (PUT_SDB_SIZE, ASM_DECLARE_OBJECT_NAME): Likewise.
213         * mips/elf64.h (PUT_SDB_SIZE, ASM_DECLARE_OBJECT_NAME): Likewise.
214         * mips/iris5gas.h (PUT_SDB_SIZE): Likewise.
215         * mips/linux.h (ASM_DECLARE_OBJECT_NAME): Likewise.
216         * mips.c (mips_output_external_libcall): Mark parameter with
217         ATTRIBUTE_UNUSED.
218         (mips_asm_file_start): Move variable into the scope where it's
219         used.
220         * mips.h (PUT_SDB_INT_VAL, PUT_SDB_SIZE): Likewise.
221         * mips/netbsd.h (ASM_DECLARE_OBJECT_NAME): Likewise.
222         * mips/sni-gas.h (PUT_SDB_SIZE): Likewise.
223         * ns32k/encore.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
224         * ns32k.c (print_operand): Likewise.
225         * pa.c (print_operand, output_div_insn): Likewise.
226         * pa.h (ASM_OUTPUT_MI_THUNK, ASM_GENERATE_INTERNAL_LABEL,
227         ASM_OUTPUT_BYTE, PRINT_OPERAND_ADDRESS): Likewise.
228         * pa/pa64-hpux.h (UNIQUE_SECTION): Const-ify.
229         * sparc/linux.h (ASM_GENERATE_INTERNAL_LABEL): Fix format
230         specifier warnings.
231         * sparc/linux64.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
232         * sparc/pbd.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
233         (ASM_OUTPUT_SOURCE_LINE): Don't list macro arguments in undef.
234         * sparc/vxsim.h (ASM_GENERATE_INTERNAL_LABEL): Fix format
235         specifier warnings.
236         * svr3.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
237
238         * sdbout.c (sdbout_end_epilogue): Mark parameter with
239         ATTRIBUTE_UNUSED.
240         * varasm.c (assemble_global): Likewise.
241
242 2001-11-11  H.J. Lu <hjl@gnu.org>
243
244         * config.gcc: Add "elfos.h svr4.h" to $tm_file for Linux/mips.
245
246 Sun Nov 11 01:26:00 CET 2001  Jan Hubicka  <jh@suse.cz>
247
248         * final.c (*_MAX_SKIP): Use *_max_skip variables.
249         * flags.h (align_loops_max_skip, align_jumps_max_skip,
250         align_labels_max_skip): New global variables.
251         * toplev.c (align_loops_max_skip, align_jumps_max_skip,
252         align_labels_max_skip): New global variables.
253         (toplev_main): Set new variables.
254         * i386.c (override_options): Set max_skip values.
255
256 2001-11-10  Geoffrey Keating  <geoffk@redhat.com>
257
258         * doc/tm.texi (Label Output): Document ASM_OUTPUT_LABEL_REF.
259         * final.c (output_addr_const): Use ASM_OUTPUT_LABEL_REF.
260         * config/stormy16/stormy16.c (xstormy16_print_operand): For '%C',
261         don't print an @fptr for labels either.
262         (xstormy16_output_addr_vec): Don't print @fptr here.
263         * config/stormy16/stormy16.h (ASM_OUTPUT_LABEL_REF): New macro.
264
265 Sat Nov 10 08:50:50 2001  Jeffrey A Law  (law@cygnus.com)
266
267         * ssa-ccp.c (examine_flow_edges): Use old-style definition, not
268         an ANSI/ISO definitino.
269         (ssa_const_prop): Likewise.
270
271 2001-11-10  Aldy Hernandez  <aldyh@redhat.com>
272
273         * config/rs6000/rs6000.c (rs6000_reg_names): Remove leading "v" or
274         altivec registers.
275
276 2001-11-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
277
278         * cppexp.c (parse_number): Use ISXDIGIT/hex_value.
279         * cpplex.c (hex_digit_value): Use hex_p/hex_value.
280         * cppmain.c (general_init): Call hex_init.
281         * tradcif.y (parse_number): Use TOLOWER/ISXDIGIT/hex_value/hex_p.
282
283         * config.gcc (i[34567]86-dg-dgux*): Don't set `out_file'.
284
285         * i386/dgux.h (ASM_FILE_START): Set to the meaningful portions
286         of dgux.c:output_file_start().
287
288         * i386/dgux.c: Delete file.
289
290 2001-11-09  Richard Henderson  <rth@redhat.com>
291
292         * config/alpha/alpha.c (decl_in_text_section): New.
293         (current_file_function_operand): Use it.
294         (alpha_encode_section_info, alpha_end_function): Likewise.
295
296 2001-11-07  David O'Brien  <obrien@FreeBSD.org>
297
298         * config.gcc: Add FreeBSD/IA-64 target. Expand config/i64/elf.h headers.
299         * config/i64/ia64.h (TARGET_VERSION,ASM_SPEC,LINK_SPEC): Remove,
300         they are OS specific.  Use CPP_CPU_SPEC rather than CPP_PREDEFINES,
301         so OS specific files and use CPP_PREDEFINES for their needs.
302         * config/i64/elf.h (TARGET_VERSION): Add.  Also, move inclusion of
303         target headers to tm_file.
304         * config/ia64/aix.h (TARGET_VERSION): Likewise.
305         * config/ia64/hpux.h (TARGET_VERSION): Likewise.
306         * config/ia64/linux.h (TARGET_VERSION): Likewise.
307         (FUNCTION_PROFILER): Remove.
308         * config/ia64/ia64.h (FUNCTION_PROFILER): Update defintion using the
309         version in config/ia64/linux.h.
310         * config/ia64/freebsd.h: New file.
311         * config/freebsd.h: Tidy up.
312         (_USING_CONFIG_FREEBSD): Define.
313         (FBSD_CPP_PREDEFINES): Add __KPRINTF_ATTRIBUTE__.
314         (FBSD_CPP_SPEC): Define generic FreeBSD spec.
315         (FBSD_STARTFILE_SPEC): Likewise.
316         (FBSD_ENDFILE_SPEC): Likewise.
317         (FBSD_LIB_SPEC): Likewise.
318         (WCHAR_UNSIGNED): Undefine, FreeBSD's wchars are signed.
319         (USER_LABEL_PREFIX): Define to ELF compatible value as some CPU headers
320         set an ELF-improper one.
321
322 2001-11-09  John David Anglin  <dave@hiauly1.hia.nrc.ca>
323
324         * pa.c (emit_move_sequence): Use cint_ok_for_move to check whether a
325         constant can be loaded in a single instruction to a register.  When
326         loading immediate constants, use PLUS instead of HIGH/LO_SUM.  Use
327         depdi for insertion of most significant 32-bits on 64-bit hosts.
328         * pa.h (LEGITIMATE_CONSTANT_P): Accept constants that can be built
329         with ldil/ldo/depdi instruction sequence on 64-bit hosts.
330         * pa.md: New addmove pattern for adding constant_int to HImode
331         register and moving result to HImode register.  Remove HImode HIGH
332         and LO_SUM patterns.
333
334 2001-11-09  Neil Booth  <neil@daikokuya.demon.co.uk>
335
336         * Makefile.in: Update.
337         * c-decl.c (print_lang_decl, print_lang_type): Remove.
338         (print_lang_identifier): Rename c_print_identifier.
339         * c-lang.c (LANG_HOOKS_PRINT_IDENTIFIER, LANG_HOOKS_SET_YYDEBUG): New.
340         (print_lang_statistics, lang_print_xnode): Remove.
341         * c-parse.in (set_yydebug): Rename c_set_yydebug.
342         * c-tree.h (c_set_yydebug, c_print_identifier): New.
343         * langhooks-def.h (lhd_print_tree_nothing, lhd_set_yydebug): New.
344         LANG_HOOKS_PRINT_STATISTICS, LANG_HOOKS_PRINT_XNODE,
345         LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE,
346         LANG_HOOKS_PRINT_IDENTIFIER, LANG_HOOKS_SET_YYDEBUG): New.
347         (LANG_HOOKS_INITIALIZER): Update.
348         * langhooks.h (struct lang_hooks): New members.
349         (lang_print_tree_hook): New.
350         * langhooks.c (lhd_print_tree_nothing, lhd_set_yydebug): New.
351         * print-tree.c: Include langhooks.h.
352         (print_node): Update.
353         * toplev.c (decode_d_option): Update.
354         * tree.c: Include langhooks.h.
355         (dump_tree_statistics): Update.
356         * tree.h (print_lang_statistics, print_lang_decl, print_lang_type,
357         print_lang_identifier, set_yydebug, lang_print_xnode): Remove.
358 objc:
359         * objc-act.c (LANG_HOOKS_PRINT_IDENTIFIER,
360         LANG_HOOKS_SET_YYDEBUG): Override.
361         (lang_print_xnode, print_lang_statistics): Remove.
362
363 2001-11-09  Richard Henderson  <rth@redhat.com>
364
365         * dwarf2asm.c (dw2_force_const_mem): Invoke STRIP_NAME_ENCODING
366         on the symbol string.
367
368 2001-11-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
369
370         * pa/elf.h (ASM_DECLARE_FUNCTION_NAME,
371         ASM_OUTPUT_EXTERNAL_LIBCALL): Undef before defining.
372         * config.gcc (hppa1.1-*-rtems*): Remove duplicate clause.
373
374         * clipper.h (ASM_OUTPUT_REG_POP): Fix typo.
375
376         * tlink.c (recompile_files): Copy strings passed to `putenv'.
377
378 2001-11-09  Geoffrey Keating  <geoffk@redhat.com>
379
380         * tree.h (TYPE_VOLATILE): Trap use not on TYPEs.
381         (TYPE_READONLY): Likewise.
382
383         * flow.c (insn_dead_p): Allow for AUTO_INC notes all the time.
384
385         * config/stormy16/stormy16.h (ASM_SPEC): Revert last change,
386         don't pass --gdwarf2 to the assembler if the compiler will also
387         provide debug info.
388
389         * config/stormy16/stormy16.c (xstormy16_expand_casesi): 
390         Don't change INDEX.
391
392 Fri Nov  9 17:51:09 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
393
394         * alias.c (nonoverlapping_memrefs_p): New function.
395         (true_dependence, canon_true_depenence, write_dependence_p): Call it.
396
397         * emit-rtl.c (set_mem_attributes): Get alignments for constants.
398
399 2001-11-09  Aldy Hernandez  <aldyh@redhat.com>
400
401         * rs6000.h (REG_CLASS_CONTENTS): Add VRSAVE bit to ALL_REGS.
402         (CONDITIONAL_REGISTER_USAGE): Disable AltiVec registers unless
403         generating altivec code.
404         (FIXED_REGISTERS): VRSAVE is fixed.
405         (CALL_USED_REGISTERS): VRSAVE is call used.
406
407 2001-11-09  Jason Eckhardt  <jle@rice.edu>
408
409         * config/mips/mips.c (mips_output_conditional_branch): Do not hard
410         code the branch target as ".+16/.+12", but rather use labels.
411
412 Fri Nov  9 11:27:42 2001  Jeffrey A Law  (law@cygnus.com)
413
414         * config/pa/milli64.S: Use %r25 and %r0 instead of arg1 and r0  
415         to work around limitations of certain versions of GAS.
416
417         * pa.md (mulsi3): Remove PA64 hack to work around SUBREG issues.
418         (muldi3): Update due to SUBREG_BYTE changes.
419         (casesi): Similarly.
420
421 2001-11-09  Zack Weinberg  <zack@codesourcery.com>
422
423         * doc/invoke.texi: Remove comment referring to -xf77-version.
424
425 2001-11-09  Kazu Hirata  <kazu@hxi.com>
426
427         * config/convex/convex.c: Fix comment formatting.
428         * config/convex/convex.h: Likewise.
429
430 2001-11-08  Zack Weinberg  <zack@codesourcery.com>
431
432         * Makefile.in (.po.pox): Look both in srcdir and builddir
433         for $(PACKAGE).pot.
434         (po/$(PACKAGE).pot): Don't move-if-change the new potfile over
435         to the source directory.
436
437 2001-11-09 Ben Elliston  <bje@redhat.com>
438            Michael Meissner  <meissner@redhat.com>
439            Andrew MacLeod  <amacleod@redhat.com>
440            Richard Henderson  <rth@redhat.com>
441            Nick Clifton  <nickc@redhat.com>
442            Catherine Moore  <clm@redhat.com>
443
444         * m32r.c: Add support for m32rx processor.
445         * m32r.h: Ditto.
446         * m32r.md: Ditto.
447         * t-m32r: Ditto.
448         * m32r-protos.h: Add prototypes for m32rx functions.
449         * doc/invoke.texi: Document -m32rx option.
450
451 2001-11-09  Jakub Jelinek  <jakub@redhat.com>
452
453         * config/sparc/sparc.md (movdf): Avoid calling validize_mem during
454         or after reload.
455
456 2001-11-09  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
457
458         * doc/install.texi2html: Use $MAKEINFO --no-split.
459
460 2001-11-09  Andreas Schwab  <schwab@suse.de>
461
462         * Makefile.in ($(HOST_PREFIX_1)rtl.o,
463         $(HOST_PREFIX_1)print-rtl.o, $(HOST_PREFIX_1)bitmap.o,
464         $(HOST_PREFIX_1)vfprintf.o, $(HOST_PREFIX_1)doprint.o, 
465         $(HOST_PREFIX_1)strstr.o, $(HOST_PREFIX_1)errors.o,
466         $(HOST_PREFIX_1)ggc-none.o): Update dependencies.
467
468 2001-11-09  H.J. Lu <hjl@gnu.org>
469
470         * config/mips/mips.c (mips_output_function_prologues): Cast
471         `tsize' to long for output.
472
473 2001-11-09  Neil Booth  <neil@daikokuya.demon.co.uk>
474
475         * c-lang.c (LANG_HOOKS_NAME): New.
476         (lang_hooks): Constify.
477         (c_init_options): Update.
478         (lang_identify): Remove.
479         * c-parse.in (language_string): Remove.
480         * dbxout.c: Include langhooks.h.
481         (dbxout_symbol_location): Update.
482         * dwarf2out.c: Include langhooks.h.
483         (gen_compile_unit_die): Update.
484         * dwarfout.c: Include langhooks.h.
485         (prototyped_attribute, output_compile_unit_die): Update.
486         * langhooks-def.h (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): New.
487         (LANG_HOOKS_INITIALIZER): Update.
488         * langhooks.h (struct lang_hooks): New members.  Constify.
489         * stringpool.c: Don't include toplev.h.
490         (set_identifier_size): Remove.
491         * toplev.c (toplev_main): Initialize identifier size.
492         (print_version): Update.
493         * tree.h (language_string, init_lex, lang_identify,
494         set_identifier_size): Remove.
495         * Makefile.in: Update dependencies.
496         * config/darwin.c: Include langhooks.h.
497         (func_name_maybe_scoped): Update.
498         * config/darwin.h (ASM_END_FILE): Update.
499         * config/nextstep.h (ASM_END_FILE): Update.
500         * config/nextstep21.h (ASM_END_FILE): Update.
501         * config/i386/sun386.h (ASM_END_FILE): Update.
502         * config/rs6000/rs6000.c (ASM_END_FILE): Include langhooks.h.
503         (rs6000_output_function_epilogue): Update.
504 objc:
505         * objc-act.c (LANG_HOOKS_NAME): Override.
506         (struct lang_hooks): Constify.
507         (objc_init_options): Update.
508         (lang_identify): Remove.
509
510 Fri Nov  9 00:25:18 EST 2001  John Wehle  (john@feith.com)
511
512         * fold-const.c (lshift_double): Honor PREC.
513         (rshift_double): Likewise.
514
515 2001-11-08  Kazu Hirata  <kazu@hxi.com>
516
517         * config/1750a/1750a.c: Fix comment formatting.
518         * config/1750a/1750a.h: Likewise.
519
520 2001-11-08  Phil Edwards  <pedwards@disaster.jaj.com>
521
522         * configure.in (--enable-languages): Be more permissive about
523         syntax.  Check for empty lists better.  Warn about $LANGUAGES.
524         * configure: Regenerated.
525
526 2001-11-08  Richard Henderson  <rth@redhat.com>
527
528         * dwarf2asm.c (dw2_force_const_mem): Fix typo.
529
530 2001-11-08  Geoffrey Keating  <geoffk@redhat.com>
531
532         * config.gcc: Rename stormy16 to xstormy16.
533         * config/stormy16/stormy-abi: Likewise.
534         * config/stormy16/stormy16-protos.h: Likewise.
535         * config/stormy16/stormy16.c: Likewise.
536         * config/stormy16/stormy16.h: Likewise.
537         * config/stormy16/stormy16.md: Likewise.
538
539 2001-11-06  Geoffrey Keating  <geoffk@redhat.com>
540
541         * tree.h (TYPE_VOLATILE): Add enable-checking code.
542         (TYPE_READONLY): Likewise.
543
544 Thu Nov  8 18:00:55 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
545
546         * reload1.c (reload): Don't delete equiv insn if can throw.
547
548         * expr.c (emit_block_move): If X is readonly emit CLOBBER for it.
549         (clear_storage): Likewise, for OBJECT.
550
551 Thu Nov  8 16:23:51 2001  Jeffrey A Law  (law@cygnus.com)
552
553         * pa.c (emit_move_sequence): Fix SUBREG expression to
554         use proper byte offset when extending a constant from
555         SImode to DImode.
556
557 2001-11-09  Jakub Jelinek  <jakub@redhat.com>
558
559         * cfgrtl.c (purge_dead_edges): Remove REG_EH_REGION note for insns
560         which cannot throw.
561
562 Thu Nov  8 18:00:55 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
563
564         * explow.c (convert_memory_address, case SUBREG): Only return
565         inner object if SUBREG_PROMOTED_VAR_P or known to be pointer.
566
567 2001-11-08  Richard Henderson  <rth@redhat.com>
568
569         * Makefile.in (GCC_FOR_TARGET): Add build_tooldir/sys-include.
570         (CROSS_SYSTEM_HEADER_DIR): Use build_tooldir not tooldir.
571         (ORDINARY_FLAGS_TO_PASS, stmp-fixinc): Likewise.
572
573 2001-11-08  Aldy Hernandez  <aldyh@redhat.com>
574
575         * config/rs6000/rs6000.h (ASM_CPU_SPEC): Add -maltivec.
576
577 2001-11-08  Jakub Jelinek  <jakub@redhat.com>
578
579         * dwarf2out.c (debug_str_hash): New.
580         (struct indirect_string_node): New.
581         (struct dw_val_struct): Change type of val_str to it.
582         (DEBUG_STR_SECTION_FLAGS): Define.
583         (add_AT_string): Push string into hashtable, increment reference
584         counter.
585         (AT_string): Return string from ht_identifier.
586         (AT_string_form): New.
587         (free_AT): For dw_val_class_str, just decrement reference counter.
588         (size_of_string): Remove.
589         (size_of_die): Use AT_string_form to decide what size the string
590         occupies in DIE.
591         (size_of_pubnames): Use strlen instead of size_of_string.
592         (value_format): Use AT_string_form for dw_val_class_str.
593         (output_die): Output DW_FORM_strp strings using
594         dw2_asm_output_offset.
595         (indirect_string_alloc, output_indirect_string): New.
596         (dwarf2out_finish): Emit .debug_str strings if there are any.
597
598 2001-11-08  Andreas Franck  <afranck@gmx.de>
599
600         * configure.in: Add AC_ARG_PROGRAM to support program name
601         transformation with --program-prefix, --program-suffix and
602         --program-transform-name.
603         * configure: Regenerated.
604         * Makefile.in (GCC_INSTALL_NAME, CPP_INSTALL_NAME,
605         PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME, GCOV_INSTALL_NAME,
606         GCCBUG_INSTALL_NAME, GCC_CROSS_NAME, CPP_CROSS_NAME,
607         PROTOIZE_CROSS_NAME, UNPROTOIZE_CROSS_NAME): Handle
608         program_transform_name the way suggested by autoconf.
609         (GCC_TARGET_INSTALL_NAME): Define.
610         (install-driver): Use the transformed target alias name.
611
612 2001-11-08  Richard Henderson  <rth@redhat.com>
613
614         * config/mips/mips.c (save_restore_insns): Remove GP from the
615         restore registers mask early instead of special casing it inside
616         the loop.
617
618 2001-11-08  Neil Booth  <neil@daikokuya.demon.co.uk>
619
620         * cp/decl.c (shadow_warning): New function.
621         (pushdecl): Improve -Wshadow warnings.  Don't give both a warning
622         and an error when a block scope decl shadows a parameter.
623
624 2001-11-08  Richard Henderson  <rth@redhat.com>
625
626         * config/fp-bit.h (usi_to_float): Define for US_SOFTWARE_GOFAST
627         case as well.
628
629 2001-11-08  John David Anglin  <dave@hiauly1.hia.nrc.ca>
630
631         * pa.md (negdf2, negsf2): Use multiplication rather than subtraction
632         to implement floating negation on processors prior to PA 2.0.
633
634 2001-11-08  Jakub Jelinek  <jakub@redhat.com>
635
636         * dwarf2asm.c (mark_indirect_pool_entry, mark_indirect_pool): New.
637         (USE_LINKONCE_INDIRECT): Define.
638         (dw2_output_indirect_constant_1): Try to output indirect constants
639         into linkonce sections if possible.
640         (dw2_force_const_mem): Likewise.  Register indirect_pool with GGC.
641         (dw2_output_indirect_constants): Likewise.
642
643 2001-11-07  Aldy Hernandez  <aldyh@redhat.com>
644
645         * config/rs6000/rs6000.h (REG_ALLOC_ORDER): Add vrsave.
646
647 2001-11-07  Neil Booth  <neil@daikokuya.demon.co.uk>
648
649         * c-decl.c (pushdecl): Remove file and line.
650         * c-typeck.c (pop_init_level): Remove size.
651
652 2001-11-07  Aldy Hernandez  <aldyh@redhat.com>
653
654         * doc/invoke.texi: Add -maltivec, -mno-altivec, and -mabi=altivec
655         for rs6000.
656
657         * config/rs6000/rs6000.h (MASK_ALTIVEC): New.
658         (TARGET_ALTIVEC): New.
659         (TARGET_SWITCHES): Add altivec.
660         (FIRST_PSEUDO_REGISTER): Change to 109.
661         (CALL_USED_REGISTERS): Same.
662         (FIRST_ALTIVEC_REGNO): New.
663         (LAST_ALTIVEC_REGNO): New.
664         (ALTIVEC_REGNO_P): New.
665         (UNITS_PER_ALTIVEC_WORD): New.
666         (ALTIVEC_VECTOR_MODE): New.
667         (FIXED_REGISTERS): Add altivec registers.
668         (REG_ALLOC_ORDER): Same.
669         (HARD_REGNO_NREGS): Adjust for altivec registers.
670         (HARD_REGNO_MODE_OK): Same.
671         (MODES_TIEABLE_P): Same.
672         (REGISTER_MOVE_COST): Same.
673         (REGNO_REG_CLASS): Same.
674         (reg_class): Add ALTIVEC_REGS.
675         (REG_CLASS_NAMES): Same.
676         (REG_CLASS_CONTENTS): Same.
677         (REG_CLASS_FROM_LETTER): Add 'v' constraint for ALTIVEC_REGS.
678         (ALTIVEC_ARG_RETURN): New.
679         (FUNCTION_VALUE): Handle VECTOR_TYPE.
680         (LIBCALL_VALUE): Handle altivec vector modes.
681         (VECTOR_MODE_SUPPORTED_P): New.
682         (ALTIVEC_ARG_MIN_REG): New.
683         (ALTIVEC_ARG_MAX_REG): New.
684         (ALTIVEC_ARG_NUM_REG): New.
685         (FUNCTION_VALUE_REGNO_P): Return true for altivec return register.
686         (FUNCTION_ARG_REGNO_P): Support passing args in altivec registers.
687         (REGISTER_NAMES): Add altivec regs.
688         (DEBUG_REGISTER_NAMES): Same.
689         (ADDITIONAL_REGISTER_NAMES): Same.
690         (rs6000_builtins): New.
691         (MD_EXPAND_BUILTIN): New.
692         (MD_INIT_BUILTINS): New.
693         (LEGITIMATE_OFFSET_ADDRESS_P): This addressing mode is not valid
694         for AltiVec instructions.
695         (LEGITIMATE_LO_SUM_ADDRESS_P): Same.
696         (HARD_REGNO_MODE_OK): Altivec modes can only go in altivec
697         registers.
698         (SECONDARY_MEMORY_NEEDED): We need memory to copy vector modes.
699         (TARGET_SWITCHES): Add no-altivec.
700         (DATA_ALIGNMENT): Align vectors to 128 bits.
701         (TARGET_OPTIONS): Add abi= option.
702         Add rs6000_abi_string extern.
703         (LOCAL_ALIGNMENT): New.
704         (CPP_CPU_SPEC): Define __ALTIVEC__ when -maltivec.
705         (MASK_ALTIVEC_ABI): New.
706         (TARGET_ALTIVEC_ABI): New.
707         (CONDITIONAL_REGISTER_USAGE): Set first 20 AltiVec registers to
708         call-saved.
709         (STACK_BOUNDARY): Adjust for altivec.
710         (BIGGEST_ALIGNMENT): Same.
711         (rs6000_args): Add vregno.
712         (USE_ALTIVEC_FOR_ARG_P): New.
713         (FIXED_REGISTERS): Add vrsave register.
714         (CALL_USED_REGISTERS): Same.
715         (CONDITIONAL_REGISTER_USAGE): Set VRSAVE info.
716         (VRSAVE_REGNO): New.
717         (reg_class): Add VRSAVE_REGS.
718         (REG_CLASS_NAMES): Same.
719         (REG_CLASS_CONTENTS): Same.
720         (REGNO_REG_CLASS): Same.
721         
722         * config/rs6000/sysv4.h (STACK_BOUNDARY): Adjust for altivec.
723         (ABI_STACK_BOUNDARY): Same.
724         (BIGGEST_ALIGNMENT): Same.
725         (ADJUST_FIELD_ALIGN): Remove undef.  Define anew.
726         (ROUND_TYPE_ALIGN): Same.
727         
728         * config/rs6000/aix.h (ROUND_TYPE_ALIGN): Change BIGGEST_ALIGNMENT
729         to 64.
730
731         * config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Change BIGGEST_ALIGNMENT
732         to 64.
733
734         * config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Change BIGGEST_ALIGNMENT
735         to 64.
736
737         * config/rs6000/rs6000.c (rs6000_expand_builtin): New.
738         (altivec_expand_builtin): New.
739         (altivec_init_builtins): New.
740         (TARGET_EXPAND_BUILTIN): New.
741         (TARGET_INIT_BUILTINS): New.
742         (rs6000_init_builtins): New.
743         (struct builtin_description): New.
744         (bdesc_2arg): New.
745         (rs6000_reg_names): Add altivec registers.
746         (alt_reg_names): Same.
747         (secondary_reload_class): Altivec regs can hold altivec regs and
748         memory.
749         (rs6000_emit_move): Force constants into memory for AltiVec moves.
750         (print_operand): Add 'y' case for printing altivec memory
751         operands.
752         (rs6000_legitimize_address): Legitimize vector addresses into
753         [REG+REG] or [REG].
754         (altivec_expand_binop_builtin): New.
755         New string rs6000_current_abi.
756         (rs6000_override_options): Call rs6000_parse_abi_options.
757         (rs6000_parse_abi_options): New.
758         (function_arg_boundary): Vector arguments must be 16
759         byte aligned.
760         (function_arg_advance): Handle vector arguments.
761         (function_arg_partial_nregs): Same.
762         (init_cumulative_args): Same.
763         (function_arg): Same.
764
765         * config/rs6000/rs6000.md (altivec_lvx): New.
766         (type): Add altivec attribute.
767         (movv4si): New.
768         (*movv4si_internal): New.
769         (movv16qi): New.
770         (*movv16qi_internal): New.
771         (movv8hi): New.
772         (*movv8hi_internal1): New.
773         (movv4sf): New.
774         (*movv4sf_internal1): New.
775         (altivec_stvx): New.
776         (vaddubm): New.
777         (vadduhm): New.
778         (vadduwm): New.
779         (vaddfp): New.
780         (vaddcuw): New.
781         (vaddubs): New.
782         (vaddsbs): New.
783         (vadduhs): New.
784         (vaddshs): New.
785         (vadduws): New.
786         (vaddsws): New.
787         (vand): New.
788         (vandc): New.
789         (vavgub): New.
790         (vavgsb): New.
791         (vavguh): New.
792         (vavgsh): New.
793         (vavguw): New.
794         (vavgsw): New.
795         (vcmpbfp): New.
796         (vcmpequb): New.
797         (vcmpequh): New.
798         (vcmpequw): New.
799         (vcmpeqfp): New.
800         (vcmpgefp): New.
801         (vcmpgtub): New.
802         (vcmpgtsb): New.
803         (vcmpgtuh): New.
804         (vcmpgtsh): New.
805         (vcmpgtuw): New.
806         (vcmpgtsw): New.
807         (vcmpgtfp): New.
808         (vcmpgefp): New.
809         (vcmpgtub): New.
810         (vcmpgtsb): New.
811         (vcmpgtuh): New.
812         (vcmpgtsh): New.
813         (vcmpgtuw): New.
814         (vcmpgtsw): New.
815         (vcmpgtfp): New.
816         (vmaxub): New.
817         (vmaxsb): New.
818         (vmaxuh): New.
819         (vmaxsh): New.
820         (vmaxuw): New.
821         (vmaxsw): New.
822         (vmaxfp): New.
823         (vmrghb): New.
824         (vmrghh): New.
825         (vmrghw): New.
826         (vmrglb): New.
827         (vmrglh): New.
828         (vmrglw): New.
829         (vminub): New.
830         (vminsb): New.
831         (vminuh): New.
832         (vminsh): New.
833         (vminuw): New.
834         (vminsw): New.
835         (vminfp): New.
836         (vmuleub): New.
837         (vmulesb): New.
838         (vmuleuh): New.
839         (vmulesh): New.
840         (vmuloub): New.
841         (vmulosb): New.
842         (vmulouh): New.
843         (vmulosh): New.
844         (vnor): New.
845         (vor): New.
846         (vpkuhum): New.
847         (vpkuwum): New.
848         (vpkpx): New.
849         (vpkuhss): New.
850         (vpkshss): New.
851         (vpkuwss): New.
852         (vpkswss): New.
853         (vpkuhus): New.
854         (vpkshus): New.
855         (vpkuwus): New.
856         (vpkswus): New.
857         (vrlb): New.
858         (vrlh): New.
859         (vrlw): New.
860         (vslb): New.
861         (vslh): New.
862         (vslw): New.
863         (vsl): New.
864         (vslo): New.
865         (vsrb): New.
866         (vrsh): New.
867         (vrsw): New.
868         (vsrab): New.
869         (vsrah): New.
870         (vsraw): New.
871         (vsr): New.
872         (vsro): New.
873         (vsububm): New.
874         (vsubuhm): New.
875         (vsubuwm): New.
876         (vsubfp): New.
877         (vsubcuw): New.
878         (vsububs): New.
879         (vsubsbs): New.
880         (vsubuhs): New.
881         (vsubshs): New.
882         (vsubuws): New.
883         (vsubsws): New.
884         (vsum4ubs): New.
885         (vsum4sbs): New.
886         (vsum4shs): New.
887         (vsum2sws): New.
888         (vsumsws): New.
889         (vxor): New.
890
891 2001-11-07  Daniel Berlin  <dan@cgsoftware.com>
892
893         * Makefile.in (df.o): Add fibheap.h to dependencies.
894        
895         * df.h: Add prototypes for transfer functions, iterative_dataflow
896         functions.
897         (enum df_flow_dir): New enum.
898         (enum df_confluence_op): New enum.
899         (struct df): Add inverse_rts_map.
900
901         * df.c: Add sbitmap.h to the list of includes.
902         (df_rd_global_compute): Removed.
903         (df_ru_global_compute): Removed.
904         (df_lr_global_compute): Removed.
905         (df_rd_transfer_function): New function.
906         (df_ru_transfer_function): New function.
907         (df_lr_transfer_function): New function.
908         (df_analyse_1): allocate/compute/free df->inverse_rts_map.
909         Use iterative_dataflow_bitmap instead of df_*_global_compute.
910         (iterative_dataflow_sbitmap): New function.
911         (iterative_dataflow_bitmap): New function.
912
913 2001-11-07  Joseph S. Myers  <jsm28@cam.ac.uk>
914
915         * doc/gcc.texi: Move terminology and spelling conventions to
916         htdocs/codingconventions.html.
917
918 2001-11-07  Graham Stott  <grahams@redhat.com>
919
920         * cse.c (cse_insn): Emit BARRIER after unconditional jump.
921
922 Wed Nov  7 13:33:34 CET 2001  Jan Hubicka  <jh@suse.cz>
923
924         * expmed.c (expand_mult): Force operand to register before computing
925         cost.
926         * i386.c (x86_decompose_lea): New global vairable.
927         * i386.h (x86_decompose_lea): Declare.
928         (TARGET_DECOMPOSE_LEA): New macro.
929         (RTX_COST): Handle leas properly.
930
931 2001-11-06  Richard Henderson  <rth@redhat.com>
932
933         * config/alpha/elf.h (DO_SELECT_SECTION): TREE_READONLY is not
934         defined for a CONSTRUCTOR; don't check it.
935
936 2001-11-06  Danny Smith  <dannysmith@users.sourceforge.net>
937
938         * gcov.c (output_data): Use IS_ABSOLUTE_PATHNAME to
939         test for absolute pathnames.
940
941 2001-11-06  Olivier Hainque <hainque@act-europe.fr>
942
943         * unwind-dw2.c (execute_cfa_program): Evaluate call frame
944         instructions up to the target pc inclusive.
945
946 2001-11-06  Steve Christiansen  <smc@us.ibm.com>
947
948         * loop.c (loop_regs_scan):  Don't invalidate PIC register.
949
950 2001-11-06  Eric Christopher  <echristo@redhat.com>
951
952         * config/mips/mips.md(movdf_internal2): Add constraints for float
953         to general register move.
954         * config/mips/elf64.h: Add default ABI.
955
956 2001-11-06  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
957
958         * alias.c:: Include langhooks.h.
959         * emit-rtl.c: Similarly.
960         * toplev.c: Similarly.
961         * tree-inline.c: Similarly.
962         * langhooks-def.h: New, the old langhooks.h.  Give the default
963         hooks a common prefix.
964         * langhooks.h: Contents extracted from toplev.h.
965         * toplev.h: Move langhook stuff to langhooks.h.
966         * langhooks.c: Give default hooks a common prefix.
967
968         * c-lang.c: Include langhooks-def.h.
969         * objc/objc-act.c: Similarly.
970         * Makefile.in: Update.
971         * objc/Make-lang.in: Update.
972
973 2001-11-06  Joseph S. Myers  <jsm28@cam.ac.uk>
974
975         * doc/install.texi: Document that configure options not listed in
976         this file are unsupported.  Document --with-system-zlib.
977
978 Tue Nov  6 09:21:34 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
979
980         * rtl.h (mem_for_const_double): New declaration.
981         * varasm.c (mem_for_const_double): New function.
982         * config/convex/convex.md (movdf): Use it.
983         * config/m68k/hp320.h (LEGITIMATE_PIC_OPERAND_P): Likewise.
984         * config/m68k/linux.h, config/m68k/m68k.h: Likewise.
985         * config/m68k/m68kv4.h: Likewise.
986
987         * config/alpha/alpha.h (SECONDARY_MEMORY_NEEDED): Adjust for addition
988         of new GP reg classes.
989
990         * expr.c (store_field): When making temp object for unaligned
991         component, set it to alias set 0.
992
993 2001-11-06  Joseph S. Myers  <jsm28@cam.ac.uk>
994
995         * c-common.c (c_expand_expr_stmt): Apply default conversions to
996         non-lvalue arrays if C99.
997         * c-typeck.c (default_conversion): Split out code handling
998         array-to-pointer and function-to-pointer conversions into a
999         separate default_function_array_conversion function.
1000         (default_function_array_conversion): New function.  Keep track of
1001         whether any NON_LVALUE_EXPRs were stripped.  Return non-lvalue
1002         arrays unchanged outside C99 mode instead of giving an error for
1003         them.
1004         (build_component_ref): Use pedantic_non_lvalue when handling
1005         COMPOUND_EXPR.  Don't handle COND_EXPR specially.
1006         (convert_arguments): Use default_function_array_conversion.
1007         (build_unary_op): For ADDR_EXPR, take a flag indicating whether
1008         non-lvalues are OK.
1009         (unary_complex_lvalue): Likewise.
1010         (internal_build_compound_expr): Use
1011         default_function_array_conversion.  Apply default conversions to
1012         function in compound expression.
1013         (build_c_cast, build_modify_expr, digest_init, build_asm_stmt):
1014         Use default_function_array_conversion.
1015         * doc/extend.texi: Update documentation of subscripting non-lvalue
1016         arrays.
1017         Fixes PR c/461.
1018
1019 2001-11-05  Zack Weinberg  <zack@codesourcery.com>
1020
1021         * aclocal.m4: (AM_WITH_NLS): Don't look at ALL_LINGUAS.
1022         (AM_GNU_GETTEXT): Set CATALOGS to a list of .gmo files
1023         corresponding to the complete set of .po and .gmo files in
1024         the source directory's po subdir, modified by LINGUAS.  Don't
1025         look at ALL_LINGUAS.
1026         * configure.in: Don't set ALL_LINGUAS.
1027         * configure: Regenerate.
1028
1029         * Makefile.in (.po.gmo): Don't move into source directory.
1030         (.po.pox): Clarify comments.
1031         (install-po): Look for .gmo files in both srcdir and objdir;
1032         don't fail if a file is totally missing.
1033         (distclean): rmdir ada subdirectory too.
1034
1035 2001-11-05  Geoffrey Keating  <geoffk@redhat.com>
1036
1037         * config/rs6000/rs6000.c (rs6000_select_section): Handle
1038         CONSTRUCTORs _correctly_.
1039
1040 2001-11-05  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
1041
1042         * c-decl.c (delete_block): Remove.
1043         * c-tree.h (delete_block): Remove.
1044
1045 2001-11-05  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
1046
1047         * cppexp.c (lex, parse_defined): Update warning about defined.
1048
1049 2001-11-05  Geoffrey Keating  <geoffk@redhat.com>
1050
1051         * config/rs6000/rs6000.c (rs6000_select_section): Handle
1052         CONSTRUCTORs too.
1053
1054 2001-11-05  Nick Clifton  <nickc@cambridge.redhat.com>
1055
1056         * config/arm/arm.c (arm_return_in_memory): Cope with
1057         int_size_in_bytes returning -1.
1058
1059         * config/arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Handle
1060         DECL being NULL.
1061
1062 Mon Nov  5 16:15:25 CET 2001  Jan Hubicka  <jh@suse.cz>
1063
1064         * Makefile.in (bb-reoder.o): Add dependency on cfglayout.h;
1065         remove unneeded dependencies;
1066         (cfglayout.o): New.
1067         * cfglayout.c, cfglayout.h: New files; break out from ...
1068         * bb-reorder.c: ... here; Remove unneeded includes;
1069
1070 2001-11-04  Alan Modra  <amodra@bigpond.net.au>
1071
1072         * config/rs6000/rs6000.md (load_toc_aix_{si,di}): Mark r2 as used.
1073
1074 2001-11-04  David Edelsohn  <edelsohn@gnu.org>
1075
1076         * config/rs6000/rs6000.c (rs6000_emit_move): Handle 64-bit
1077         mode as well.  Do not explicitly create intermediate regs.
1078
1079 2001-11-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1080
1081         * arm/aof.h (aof_text_section, aof_data_section): Don't declare.
1082         (common_section): Delete unused variable.
1083         (ASM_OUTPUT_ASCII): Fix signed/unsigned warnings.
1084         (ASM_GENERATE_INTERNAL_LABEL): Fix format specifier warning.
1085         * arm-protos.h (arm_poke_function_name, aof_add_import,
1086         aof_delete_import): Const-ify.
1087         * arm.c (legitimize_pic_address): Wrap variables in the macro
1088         controlling their usage.
1089         (arm_finalize_pic): Mark variable with ATTRIBUTE_UNUSED.
1090         (arm_poke_function_name, pic_chain, import, aof_add_import,
1091         aof_delete_import): Const-ify.
1092         * i386.c (ix86_osf_output_function_prologue): Const-ify.
1093         * i386/sysv4.h (ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE,
1094         ASM_OUTPUT_LONG_DOUBLE): Fix format specifier warnings.
1095         * i860/fx2800.h (DBX_OUTPUT_STANDARD_TYPES): Const-ify.
1096         * i860/sysv3.h: Add missing comment closure.
1097         * m68k/apollo68.h (ASM_RETURN_CASE_JUMP): Add missing semi-colon.
1098         * m88k/dgux.h (SELECT_RTX_SECTION): Add missing argument in call
1099         to symbolic_operand.
1100
1101         * config.gcc (m680[02]0-*-*): Rename case from m68000-*-*.
1102         (i960-*-*): Set tmake_file.
1103         (sparc86x-*-elf*): Fix typo in header name.
1104
1105         * sched-rgn.c (schedule_insns): Delete unused variable.
1106
1107 2001-11-04  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
1108
1109         PR c/2820
1110         * c-typeck.c (lookup_field): Rework to return a chain down to
1111         the looked-up field.
1112         (build_component_ref): Use the new lookup_field to handle
1113         nested anonymous entities correctly.
1114
1115 Sun Nov  4 11:53:31 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1116
1117         * config/sparc/sparc.c (sparc_emit_set_const32, GEN_HIGHINT64):
1118         Change parameters to gen_rtx_CONST_DOUBLE.
1119         (GEN_INT64, sparc_emit_set_const64): Likewise.
1120         * config/sparc/sparc.md (movdf split): Likewise.
1121
1122 2001-11-03  Geoffrey Keating  <geoffk@redhat.com>
1123
1124         * unroll.c (calculate_giv_inc): Use find_last_value rather
1125         than just hoping the last instruction is the right SET.
1126         [Fixes 990604-1.c on stormy16.]
1127
1128         * config/stormy16/stormy16.h (LIB_SPEC): Don't supply any libgloss
1129         library at all if -T is used.
1130
1131         * config/stormy16/stormy16.c (stormy16_print_operand): Avoid
1132         some uses of uninitialized variables in error cases.
1133
1134         * config/stormy16/stormy16.c (stormy16_output_shift): Don't
1135         look at 'temp' if we won't be using it.
1136
1137         * config/stormy16/stormy16.h (CONST_COSTS): Define.
1138         (RTX_COSTS): Define.
1139         (ADDRESS_COST): Define.
1140         (MEMORY_MOVE_COST): Allow for memory_move_secondary_cost.
1141
1142         * config/stormy16/stormy16.h (ASM_SPEC): Pass -g to the assembler.
1143
1144         * config/stormy16/stormy16.h (ASM_OUTPUT_MI_THUNK): Call
1145         stormy16_asm_output_mi_thunk.
1146         * config/stormy16/stormy16.c (stormy16_asm_output_mi_thunk): New
1147         function.
1148         * config/stormy16/stormy16-protos.h
1149         (stormy16_asm_output_mi_thunk): New prototype.
1150
1151 2001-11-04  Joseph S. Myers  <jsm28@cam.ac.uk>
1152
1153         * ChangeLog.2, ChangeLog.4, ChangeLog.5, ChangeLog,
1154         FSFChangeLog.10, FSFChangeLog.11, alias.c, attribs.c,
1155         caller-save.c, calls.c, cfg.c, cfganal.c, cfgcleanup.c, cfgrtl.c,
1156         cppmacro.c, fold-const.c, ifcvt.c, local-alloc.c, profile.c,
1157         sched-int.h, toplev.c, config/alpha/alpha.c,
1158         config/alpha/alpha.md, config/c4x/c4x.h, config/cris/cris.h,
1159         config/cris/cris.md, config/i370/i370.md, config/i386/i386.c,
1160         config/i386/i386.h, config/i386/i386.md, config/i386/xm-djgpp.h,
1161         config/ia64/ia64.c, config/m68hc11/m68hc11.c, config/m68k/m68k.md,
1162         config/mcore/mcore.h, config/mmix/mmix.c, config/ns32k/ns32k.h,
1163         config/ns32k/ns32k.md, config/rs6000/rs6000.c,
1164         config/rs6000/sysv4.h, config/sh/sh.md: Fix spelling errors.
1165
1166 2001-11-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1167
1168         * Makefile.in (dbxout.o): Depend on function.h.
1169         * collect2.c (is_in_list): Hide unused function.
1170         * dbxout.c: Include function.h.
1171         (source_label_number, dbxout_source_line, dbxout_source_file,
1172         dbxout_function_end, dbxout_begin_function): Wrap/move inside
1173         macros controlling usage.
1174         * gcc.c (TARGET_EXECUTABLE_SUFFIX): Undef before defining.
1175         * output.h (exports_section): Prototype.
1176
1177         * convex.c (convex_output_function_prologue): Fix format specifier
1178         warning.
1179         (asm_declare_function_name): Fix signed/unsigned warning.
1180         (print_operand): Fix format specifier warning.
1181         * convex.h (S_REGNO_P, A_REGNO_P): Fix signed/unsigned warning.
1182         * dsp16xx-protos.h (uns_comparison_operator,
1183         num_1600_core_shifts): Prototype.
1184         * dsp16xx.c: Include tm_p.h, not dsp16xx-protos.h.
1185         (frame_size, frame_pointer_offset): Delete.
1186         (dsp16xx_output_function_prologue, dsp16xx_output_function_epilogue):
1187         Make static.  Fix format specifier warnings.
1188         * dsp16xx.h (IS_ACCUM_REG): Fix unsigned>=0 warning.
1189         (EXTRA_SECTION_FUNCTIONS): Prototype const_section.
1190         * dsp16xx.md: Add default case in switches.
1191         * fr30.h (IN_RANGE): Delete.
1192         * ia64.h (ASM_OUTPUT_MI_THUNK): Fix format specifier warnings.
1193         * mcore-protos.h (mcore_output_cmov): Const-ify.
1194         * mcore.c (mcore_output_cmov): Likewise.
1195         * mcore.h (switch_to_section): Make static and prototype.
1196         * mn10200.h (REGNO_OK_FOR_INDEX_P, REG_OK_FOR_INDEX_P): Fix
1197         unsigned>=0 warnings.
1198         * mn10300.h (REGNO_IN_RANGE_P): Likewise.
1199         * rs6000-protos.h (read_only_data_section,
1200         read_only_private_data_section): Prototype.
1201         * rs6000.h (ASM_OUTPUT_BYTE): Fix format specifier warning.
1202         * sh.c (sh_adjust_cost): Mark parameter with ATTRIBUTE_UNUSED.
1203         * sh.h (GENERAL_REGISTER_P): Fix unsigned>=0 warning.
1204
1205 2001-11-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1206
1207         * dwarf2asm.c (dw2_asm_output_pcrel): Mark parameters with
1208         ATTRIBUTE_UNUSED.
1209         * final.c (final_scan_insn): Add brackets around body of if-stmt.
1210         * gcc.c (convert_filename): Add static prototype.  Const-ify.
1211         Wrap variable in macros controlling its use.
1212         * output.h (sdata_section): Add prototype.
1213
1214         * 1750a.h (EXTRA_SECTION_FUNCTIONS): Add prototype.
1215         (ASM_OUTPUT_ASCII): Avoid signed/unsigned warning.
1216         * c4x.h (INIT_SECTION_FUNCTION): Add prototype.
1217         (ASM_FILE_START): Const-ify.
1218         (ASM_OUTPUT_BYTE_FLOAT, ASM_OUTPUT_SHORT_FLOAT): Fix format
1219         specifier warning.
1220         * c4x.md: Don't use the 'U' integer suffix.
1221         * clipper.md (clipper_movstr): Delete declaration.
1222         * d30v-protos.h (d30v_move_2words): Const-ify.
1223         (debug_stack_info): Add prototype.
1224         * d30v.c: Include "integrate.h".
1225         (d30v_function_arg_boundary, d30v_function_arg,
1226         d30v_function_arg_partial_nregs, d30v_function_arg_advance): Avoid
1227         signed/unsigned warnings.
1228         (d30v_print_operand_memory_reference, d30v_move_2words):
1229         Const-ify.
1230         * d30v.h (REG_CLASS_FROM_LETTER): Use unsigned array subscript.
1231         * fr30.c (fr30_pass_by_reference, fr30_pass_by_value): Prototype.
1232         * fr30.md: Const-ify.
1233         * h8300.h (EXTRA_SECTION_FUNCTIONS): Add prototype.
1234         * i370.c (i370_label_scan, mvs_get_label): Make definition static.
1235         (mvs_get_label_page): Hide unused static function.
1236         * i860.c (current_function_original_name): Const-ify.
1237         * i860/sysv3.h (current_function_original_name): Likewise.
1238         * i860/sysv4.h (current_function_original_name): Likewise.
1239         * i960.md: Add default case in switches.  Remove unused variable.
1240         * i960/vx960-coff.h (MULTILIB_DEFAULTS): Undef before defining.
1241         * m32r.md: Const-ify.
1242         * m68hc11-protos.h (m68hc11_asm_file_start): Const-ify.
1243         * m68hc11.c: Include "reload.h".
1244         (static_chain_reg, print_options, m68hc11_asm_file_start):
1245         Const-ify.
1246         * m68hc11.md: Delete unused variable.  Const-ify.  Add parens
1247         around & in comparison.
1248         * mcore.h (TARGET_ASM_NAMED_SECTION): Undef before defining.
1249         * mn10200.c (shift_mode): Remove trailing comma.
1250         * mn10300-protos.h (output_tst): Const-ify.
1251         * mn10300.c (output_tst): Likewise.
1252         * pa/long_double.h (ASM_OUTPUT_LONG_DOUBLE): Fix format specifier
1253         warnings.
1254         * pa-protos.h (output_ascii): Use regular char *, not unsigned.
1255         * pa.c (output_ascii): Likewise.
1256         * pa/som.h (EXTRA_SECTION_FUNCTIONS): Add prototype.
1257         * pdp11.md (expand_unop): Delete declarations.
1258         * pj-protos.h (pj_output_addsi3): Const-ify.
1259         * pj.c (pj_output_push_int, pj_output_load, pj_output_inc,
1260         pj_output_cnv_op, mode_to_char, pj_output_varidx, pj_print_cond,
1261         unique_src_operand): Add prototypes.
1262         (pj_output_store_into_lval): Make definition static.
1263         (pj_function_incoming_arg): Don't use unary plus.
1264         (pj_output_addsi3): Const-ify.
1265         * romp.md (get_symref): Delete declarations.
1266         * v850-c.c (mark_current_function_as_interrupt): Don't return
1267         value from void function.
1268         * v850.c: Include "integrate.h".
1269         * v850.h (ASM_OUTPUT_LABELREF): Const-ify.
1270         * vax-protos.h (const_section): Add prototype.
1271
1272 2001-11-03  Aldy Hernandez  <aldyh@redhat.com>
1273
1274         * machmode.def: Add documentation for the seventh argument in
1275         vector modes.
1276
1277 2001-11-04  Hans-Peter Nilsson  <hp@bitrange.com>
1278
1279         * doc/invoke.texi (MMIX Options) <-mno-knuthdiv>: Say remainder
1280         consistently.
1281         <-mno-toplevel-symbols>: Change @code{:} to @samp{:}.
1282         <-melf>: Don't have markup for ELF acronym.
1283
1284 2001-11-03  Hans-Peter Nilsson  <hp@bitrange.com>
1285
1286         * config.gcc (mmix-*-*): New target.
1287         * doc/invoke.texi: Document MMIX options.
1288         * doc/contrib.texi: Add note about MMIX port to my entry.
1289         * config/mmix/t-mmix: New file.
1290         * config/mmix/mmix.h: New file.
1291         * config/mmix/mmix-protos.h: New file.
1292         * config/mmix/mmix.c: New file.
1293         * config/mmix/mmix.md: New file.
1294         * config/mmix/crti.asm: New file.
1295         * config/mmix/crtn.asm: New file.
1296
1297 2001-11-03  Kazu Hirata  <kazu@hxi.com>
1298
1299         * config/sparc/linux-aout.h: Fix comment formatting.
1300         * config/sparc/linux.h: Likewise.
1301         * config/sparc/linux64.h: Likewise.
1302         * config/sparc/lynx.h: Likewise.
1303         * config/sparc/pbd.h: Likewise.
1304         * config/sparc/sol2-sld-64.h: Likewise.
1305         * config/sparc/sol2.h: Likewise.
1306         * config/sparc/sparc.c: Likewise.
1307         * config/sparc/sparc.h: Likewise.
1308         * config/sparc/sparc.md: Likewise.
1309         * config/sparc/sunos4.h: Likewise.
1310         * config/sparc/vxsim.h: Likewise.
1311         * config/sparc/vxsparc.h: Likewise.
1312         * config/sparc/vxsparc64.h: Likewise.
1313
1314 Sat Nov  3 10:37:56 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1315
1316         * cselib.c (cselib_subst_to_values, case CONST_DOUBLE): Remove
1317         reference to CONST_DOUBLE_MEM in comment.
1318         * emit-rtl.c (gen_rtx_CONST_DOUBLE): Remove one operand.
1319         (gen_rtx, case CONST_DOUBLE): Call it with one less operand.
1320         (init_emit_once): Don't clear CONST_DOUBLE_MEM.
1321         * function.c (pop_function_context_from): Don't call
1322         restore_varasm_status.
1323         * function.h (restore_varasm_status): Delete declaration.
1324         * gengenrtl.c (CONST_DOUBLE_FORMAT): Delete CONST_DOUBLE_MEM slot.
1325         * rtl.c: Likewise.
1326         * rtl.def (CONST_DOUBLE): Update comment.
1327         * rtl.h (CONST_DOUBLE_HIGH, CONST_DOUBLE_LOW): Update operand number.
1328         (CONST_DOUBLE_CHAIN): Likewise.
1329         (CONST_DOUBLE_MEM): Delete.
1330         (gen_rtx_CONST_DOUBLE): Update parameters.
1331         * varasm.c (struct varasm_status): x_pool_offset now HOST_WIDE_INT.
1332         Remove reference to CONST_DOUBLE_MEM.
1333         (const_alias_set): New variable.
1334         (immed_double_const): Change call to gen_rtx_CONST_DOUBLE.
1335         (immed_real_const_1): Adjust tests for 0, 1, and 2.
1336         Don't set CONST_DOUBLE_MEM.
1337         (clear_const_double_mem): Don't do anything with const_tiny_rtx.
1338         (output_constant_def): Don't look at TREE_CST_RTL if INTEGER_CST.
1339         Put constant in const_alias_set.
1340         (struct pool_constant): ALIGN now unsigned.
1341         OFFSET now HOST_WIDE_INT.
1342         Delete LABEL.
1343         (restore_varasm_status): Deleted.
1344         (mark_pool_constant): Mark desc->rtl.
1345         (force_const_mem): Rework to store rtl in hash table,
1346         not CONST_DOUBLE_MEM.
1347         Put constant in const_alias_set.
1348         (find_pool_constant): Check desc->rtl.
1349         (mark_constants, mark_constant): Don't special-case CONST_DOUBLE.
1350         (init_varasm_once): Initialize const_alias_set.
1351
1352         * expr.c (expand_expr, case ADDDR_EXPR): If at top level, don't call
1353         force_const_mem.
1354
1355         * reload.c (combine_reloads): Don't combine an output reload if there
1356         are other reloads around for part of the output.
1357
1358         * emit-rtl.c (set_mem_attributes): Set RTX_UNCHANGINGP_P if T is a
1359         constant expression.
1360         (set_mem_decl): New function.
1361         * expr.h (set_mem_decl): New declaration.
1362         * final.c (get_decl_from_op): Don't use ORIGINAL_REGNO if not pseudo.
1363         (output_asm_operand_names): Add tab.
1364         * reload1.c (alter_reg): Set decl of MEM from REG_DECL.
1365
1366         * builtins.c (get_memory_rtx): Properly set MEM alias set and
1367         attributes.
1368
1369 2001-11-03  Joseph S. Myers  <jsm28@cam.ac.uk>
1370
1371         * doc/extend.texi, doc/gcc.texi, doc/install.texi, doc/tm.texi:
1372         Use "invalid" instead of "illegal".  Use @r in comments in
1373         examples.
1374
1375 2001-11-02  Neil Booth  <neil@daikokuya.demon.co.uk>
1376
1377         * c-decl.c (pushdecl): Move block inside if conditional to remove
1378         possibility of a segfault.  Lookup block-level extern
1379         variables in enclosing scopes correctly.
1380
1381         * testsuite/gcc.c-torture/compile/20001018-1.x: Remove XFAIL.
1382
1383 2001-11-02  Aldy Hernandez  <aldyh@redhat.com>
1384
1385         * expmed.c (store_bit_field): Use simplify_gen_subreg to make
1386         SUBREG so we avoid SUBREGing memory.
1387
1388         * expmed.c (store_bit_field): Same.
1389
1390 2001-11-02  DJ Delorie  <dj@redhat.com>
1391
1392         * config/rs6000/rs6000.c (rs6000_emit_move): Make sure that
1393         using FP registers for DImode mem-mem moves is acceptable.
1394
1395 2001-11-02  Aldy Hernandez  <aldyh@redhat.com>
1396
1397         * builtins.c (apply_args_size): Handle vector arguments.
1398         (apply_result_size): Same.
1399
1400         * machmode.def: Set WIDER mode field for all vector entries.
1401
1402 2001-11-02  Graham Stott  <grahams@redhat.com>
1403
1404         * recog.c (decode_asm_operands):  Check that the SRC is ASM_OPERANDS.
1405
1406 2001-11-01  Eric Christopher  <echristo@redhat.com>
1407
1408         * config.gcc: Revert part of earlier patch.
1409         * config/mips/linux.h: Ditto.
1410         * df.c: Include tm_p.h to avoid warnings.
1411         * config/mips/mips.h (ABI_GAS_ASM_SPEC): Add defaults.  Adjust
1412         #if/#endif.
1413         * config/mips/mips.c: Define mips_abi regardless.
1414         (mips_output_function_prologues): Add long casts for .frame
1415         output.
1416         (override_options): Allow use of ABI_32.
1417
1418 2001-11-01  Kazu Hirata  <kazu@hxi.com>
1419
1420         * config/m68hc11/m68hc11.c: Fix comment formatting.
1421         * config/m68hc11/m68hc11.h: Likewise.
1422         * config/m68hc11/m68hc11.md: Likewise.
1423
1424 2001-11-01  Neil Booth  <neil@daikokuya.demon.co.uk>
1425
1426         * c-typeck.c (default_conversion): Retain the original expression
1427         codes.
1428         * gcc.dg/Wparentheses.c: New tests.
1429
1430 2001-11-01  David S. Miller  <davem@redhat.com>
1431
1432         * doc/install.texi (Specific, sparc-sun-solaris2*): Bring
1433         64-bit Sparc description more in line with reality.
1434
1435 2001-11-01  Joseph S. Myers  <jsm28@cam.ac.uk>
1436
1437         * Makefile.in (GCOV_OBJS): Add version.o.
1438         * gcov.c: Include "version.h" and <getopt.h>.
1439         (gcov_version_string): Remove.
1440         (print_usage): Take a parameter to determine whether this is a
1441         call from --help or an error message.  Give fuller output that
1442         follows the GNU Coding Standards for --help.
1443         (print_version): New function.
1444         (options): New.
1445         (process_args): Use getopt_long.  Support long options.  Follow
1446         GNU Coding Standards for --help and --version.
1447         * doc/gcov.texi: Document long options.
1448         Addresses part of PR other/704.
1449
1450 2001-11-01  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1451
1452         * pa.c (output_move_double): Fix typo in double load.
1453
1454 2001-11-01  Kazu Hirata  <kazu@hxi.com>
1455
1456         * config/h8300/h8300.c (h8300_encode_label): Compute a string
1457         before passing it to ggc_alloc_string.
1458
1459 2001-11-01  Kazu Hirata  <kazu@hxi.com>
1460
1461         * config/m68k/3b1.h: Fix comment formatting.
1462         * config/m68k/3b1g.h: Likewise.
1463         * config/m68k/a-ux.h: Likewise.
1464         * config/m68k/amix.h: Likewise.
1465         * config/m68k/apollo68.h: Likewise.
1466         * config/m68k/atari.h: Likewise.
1467         * config/m68k/aux-exit.c: Likewise.
1468         * config/m68k/ccur-GAS.h: Likewise.
1469         * config/m68k/crds.h: Likewise.
1470         * config/m68k/dpx2.h: Likewise.
1471         * config/m68k/dpx2g.h: Likewise.
1472         * config/m68k/hp310.h: Likewise.
1473         * config/m68k/hp320.h: Likewise.
1474         * config/m68k/isi.h: Likewise.
1475         * config/m68k/linux.h: Likewise.
1476         * config/m68k/lynx.h: Likewise.
1477         * config/m68k/m68k-psos.h: Likewise.
1478         * config/m68k/m68k.c: Likewise.
1479         * config/m68k/m68k.h: Likewise.
1480         * config/m68k/m68k.md: Likewise.
1481         * config/m68k/m68kelf.h: Likewise.
1482         * config/m68k/m68kv4.h: Likewise.
1483         * config/m68k/mot3300.h: Likewise.
1484         * config/m68k/news.h: Likewise.
1485         * config/m68k/next.h: Likewise.
1486         * config/m68k/pbb.h: Likewise.
1487         * config/m68k/plexus.h: Likewise.
1488         * config/m68k/sgs.h: Likewise.
1489         * config/m68k/sun3.h: Likewise.
1490         * config/m68k/tower.h: Likewise.
1491         * config/m68k/vxm68k.h: Likewise.
1492
1493 2001-10-31  DJ Delorie  <dj@redhat.com>
1494
1495         * config/mips/mips.h (mips_cache_flush_func): Prototype.
1496         (TARGET_OPTIONS): Support -mflush-func= and -mno-flush-func.
1497         (INITIALIZE_TRAMPOLINE): Use mips_cache_flush_func if nonzero.
1498         * config/mips/mips.c (mips_cache_flush_func): New.
1499         * doc/invoke.texi: Document the new options.
1500
1501 2001-10-31  Hans-Peter Nilsson  <hp@axis.com>
1502
1503         * config.gcc (cris-*-linux*, tm_file): Rearrange order.
1504         * config/cris/linux.h (LIB_SPEC, STARTFILE_SPEC): Don't redefine.
1505
1506         * config/cris/cris.h (EH_RETURN_DATA_REGNO): Fix formatting.
1507
1508         * config/cris/cris.c: Include output.h after tree.h but before
1509         target.h.
1510
1511 2001-10-31  Zack Weinberg  <zack@codesourcery.com>
1512
1513         * Makefile.in (INTL_TARGETS, POSUB): Delete all references.
1514         (INTL_SUBDIRS): Just intl.
1515         (.SUFFIXES): Add .gmo .po .pox.
1516         (native): Also depend on build-@POSUB@.
1517         (intl.all, intl.install): Depend on config.h and things it includes.
1518         (po-generated): New target; depend on c-parse.c and tradcif.c.
1519         (install-normal): Also depend on install-@POSUB@.
1520         (XGETTEXT, GMSGFMT, MSGMERGE, PACKAGE, CATALOGS): New variables.
1521         (build-, install-, build-po, update-po, install-po,
1522         .po.gmo, .po.pox, $(PACKAGE).pot, po/$(PACKAGE).pot): New rules.
1523
1524         * aclocal.m4: Prefix each entry in CATALOGS with "po/"
1525         * configure.in: Don't munge XGETTEXT.  Don't generate
1526         po/Makefile.in.
1527         * configure: Regenerate.
1528
1529         * exgettext: Delete.
1530         * config/m68k/m68k.h: Add doc strings for -msky and -mnosky.
1531         * objc/Make-lang.in: Replace $(INTL_TARGETS) with po-generated.
1532
1533 2001-10-31  Kazu Hirata  <kazu@hxi.com>
1534
1535         * config/h8300/h8300.md (two anonymous patterns): New.
1536
1537 2001-10-31  Aldy Hernandez  <aldyh@redhat.com>
1538
1539         * tree.h (tree_index): Add support for V16QI and V8HI.
1540         (V8HI_type_node): New.
1541         (V16QI_type_node): New.
1542
1543         * tree.c (build_common_tree_nodes_2): Same.
1544
1545         * c-common.c (type_for_mode): Same.
1546
1547 2001-10-31  Kazu Hirata  <kazu@hxi.com>
1548
1549         * config/i386/att.h: Fix comment formatting.
1550         * config/i386/beos-elf.h: Likewise.
1551         * config/i386/bsd.h: Likewise.
1552         * config/i386/bsd386.h: Likewise.
1553         * config/i386/crtdll.h: Likewise.
1554         * config/i386/cygwin.asm: Likewise.
1555         * config/i386/cygwin.h: Likewise.
1556         * config/i386/djgpp.h: Likewise.
1557         * config/i386/freebsd-aout.h: Likewise.
1558         * config/i386/freebsd.h: Likewise.
1559         * config/i386/gas.h: Likewise.
1560         * config/i386/i386-interix.h: Likewise.
1561         * config/i386/i386-protos.h: Likewise.
1562         * config/i386/i386.c: Likewise.
1563         * config/i386/i386.h: Likewise.
1564         * config/i386/i386.md: Likewise.
1565         * config/i386/i386elf.h: Likewise.
1566         * config/i386/interix.c: Likewise.
1567         * config/i386/isc.h: Likewise.
1568         * config/i386/isccoff.h: Likewise.
1569         * config/i386/iscdbx.h: Likewise.
1570         * config/i386/linux.h: Likewise.
1571         * config/i386/lynx.h: Likewise.
1572         * config/i386/mingw32.h: Likewise.
1573         * config/i386/netbsd-elf.h: Likewise.
1574         * config/i386/next.h: Likewise.
1575         * config/i386/osf1elf.h: Likewise.
1576         * config/i386/osfrose.h: Likewise.
1577         * config/i386/sco5.h: Likewise.
1578         * config/i386/seq-gas.h: Likewise.
1579         * config/i386/seq-sysv3.h: Likewise.
1580         * config/i386/sequent.h: Likewise.
1581         * config/i386/sol2.h: Likewise.
1582         * config/i386/sun386.h: Likewise.
1583         * config/i386/uwin.asm: Likewise.
1584         * config/i386/uwin.h: Likewise.
1585         * config/i386/vxi386.h: Likewise.
1586         * config/i386/win32.h: Likewise.
1587         * config/i386/winnt.c: Likewise.
1588         * config/i386/xm-cygwin.h: Likewise.
1589         * config/i386/xm-mingw32.h: Likewise.
1590
1591 2001-10-31  Kazu Hirata  <kazu@hxi.com>
1592
1593         * builtins.def: Fix comment typos.
1594         * config/alpha.c: Likewise.
1595         * config/arm/arm.c: Likewise.
1596         * config/avr/avr.h: Likewise.
1597         * config/d30v/d30v.c: Likewise.
1598         * config/d30v/d30v.h: Likewise.
1599         * config/d30v/d30v.md: Likewise.
1600         * config/dsp16xx/dsp16xx.c: Likewise.
1601         * config/fr30/fr30.c: Likewise.
1602         * config/fr30/fr30.md: Likewise.
1603         * config/i386/i386.c: Likewise.
1604         * config/i860/i860.c: Likewise.
1605         * config/i960/i960.c: Likewise.
1606         * config/ia64/ia64.c: Likewise.
1607         * config/mips/mips.c: Likewise.
1608         * config/pa/pa.c: Likewise.
1609         * config/rs6000/rs6000.c: Likewise.
1610         * config/s390/s390.c: Likewise.
1611         * config/sparc/sparc.c: Likewise.
1612
1613 2001-10-30  Kazu Hirata  <kazu@hxi.com>
1614
1615         * config/mips/elf.h: Fix comment formatting.
1616         * config/mips/elf64.h: Likewise.
1617         * config/mips/iris5.h: Likewise.
1618         * config/mips/iris5gas.h: Likewise.
1619         * config/mips/iris6.h: Likewise.
1620         * config/mips/isa3264.h: Likewise.
1621         * config/mips/linux.h: Likewise.
1622         * config/mips/mips.c: Likewise.
1623         * config/mips/mips.h: Likewise.
1624         * config/mips/mips.md: Likewise.
1625         * config/mips/mips16.S: Likewise.
1626         * config/mips/netbsd.h: Likewise.
1627         * config/mips/osfrose.h: Likewise.
1628         * config/mips/r3900.h: Likewise.
1629         * config/mips/sni-svr4.h: Likewise.
1630         * config/mips/svr4-t.h: Likewise.
1631         * config/mips/ultrix.h: Likewise.
1632
1633 2001-10-30  Daniel Berlin  <dan@cgsoftware.com>
1634
1635         * bitmap.c (bitmap_element_free): Don't forget to update head->indx
1636         when we update head->current.
1637
1638 2001-10-30  Neil Booth  <neil@daikokuya.demon.co.uk>
1639
1640         * tree.c (id_string_size): Remove.
1641         (dump_tree_statistics): Update.
1642         * toplev.c (compile_file): If dumping stats, dump tree stats too.
1643
1644 Tue Oct 30 19:00:43 CET 2001  Jan Hubicka  <jh@suse.cz>
1645
1646         * sched-rgn.c (schedule_insns): Fix comment.
1647
1648 2001-10-30  Zack Weinberg  <zack@codesourcery.com>
1649
1650         * configure.in: Correct previous change: don't assume that
1651         gas's version number _isn't_ the last thing on the line, or
1652         isn't the only number on the line, either.
1653         * configure: Regenerate.
1654
1655 2001-10-30  Kazu Hirata  <kazu@hxi.com>
1656
1657         * cfgcleanup.c: Fix a comment typo.
1658
1659 2001-10-30  Kazu Hirata  <kazu@hxi.com>
1660
1661         * alias.c: Fix comment formatting.
1662         * recog.c: Likewise.
1663         * config/cris/cris.c: Likewise.
1664         * config/cris/cris.h: Likewise.
1665         * config/i960/i960.c: Likewise.
1666         * config/i960/i960.h: Likewise.
1667
1668 2001-10-30  Kazu Hirata  <kazu@hxi.com>
1669
1670         * config/arm/arm.c: Fix a comment typo.
1671         * config/arm/arm.h: Likewise.
1672         * config/ia64/ia64.c: Likewise.
1673
1674 2001-10-30  Jakub Jelinek  <jakub@redhat.com>
1675
1676         * emit-rtl.c (set_unique_reg_note): Don't create REG_EQUAL or
1677         REG_EQUIV notes for ASM_OPERANDS.  Return the new note (if any).
1678         * rtl.h (set_unique_reg_note): Change return value.
1679         * gcse.c (try_replace_reg): Use set_unique_reg_note.
1680         * cse.c (cse_insn): Likewise.
1681         * expr.c (emit_move_insn): Likewise.
1682         * explow.c (force_reg): Likewise.
1683         * local-alloc (update_equiv_regs): Likewise.
1684         * loop.c (move_moveables, load_mems): Likewise.
1685         * reload (find_reloads): Likewise.
1686
1687 2001-10-30  Paolo Bonzini  <bonzini@gnu.org>
1688
1689         Localization fixes.
1690         * c-decl.c (parmlist_tags_warning, start_struct,
1691         check_for_loop_decls): Separate messages for struct, union and
1692         enum cases to allow for languages in which they have different
1693         genders.
1694         * c-format.c (scanf_flag_specs): Separate short and long name of
1695         the assignment suppression feature.
1696         (check_format_types): Localize "pointer" and "different types"
1697         strings.
1698         * c-lex.c (lex_number): Localize "an unsigned long int" and
1699         related strings.
1700         (lex_string) [MULTIBYTE_CHARS]: Use initial lowercase letter on
1701         warning message.
1702         * c-typeck.c (build_unary_up): Separate messages for increment and
1703         decrement cases to allow for languages in which they use different
1704         articles.  Localize the strings "increment" and "decrement" in one
1705         case.
1706
1707 Tue Oct 30 11:08:11 CET 2001  Jan Hubicka  <jh@suse.cz>
1708
1709         * lcm.c (optimize_mode_switching):  Do not rebuild liveness information
1710         when no changes has been made.
1711
1712         * gcse.c (reg_set_bitmap): Turn into reg_set.
1713         (modify_mem_list_set, canon_modify_mem_list_set)
1714         (clear_modify_mem_tables, free_modify_mem_tables): New.
1715         (gcse_main); Use free_modify_mem_tables.
1716         (free_gcse_mem): Likewise; free the bitmaps.
1717         (alloc_gcse_main): Initialize the bitmaps.
1718         (canon_list_insert): Set canon_modify_mem_list_set.
1719         (record_last_mem_set_info): Likewise; set modify_mem_list_set.
1720         (compute_hash_table): Use clear_modify_mem_tables.
1721         (reset_opr_set_tables): Likewise.
1722         (oprs_not_set_p): reg_set_bitmap is regset.
1723         (mark_set, mark_clobber): Likewise.
1724
1725         * df.h (DF_EQUIV_NOTES): New constant.
1726         (df_insn_refs_record): Record uses inside or REG_EQUIV/EQUAL notes
1727         when asked for.
1728
1729         * sched-rgn.c (CHECK_DEAD_NOTES): New constant.
1730         (init_regions, schedule_insns): Conditionalize the checking
1731         code by CHECK_DEAD_NOTES; avoid multiple calls to update_life_info.
1732
1733 Tue Oct 30 11:02:31 CET 2001  Jan Hubicka  <jh@suse.cz>
1734
1735         * i386.md (movti_rex64 splitter): Fix condition.
1736
1737 2001-10-29  Zack Weinberg  <zack@codesourcery.com>
1738
1739         * configure.in: Do not assume that gas's version number is the
1740         last thing on the first line of as --version output.
1741         * configure: Regenerate.
1742
1743         * tradcpp.c: Include intl.h.  Rename WARNING, ERROR, FATAL to
1744         MT_WARNING, MT_ERROR, MT_FATAL.
1745         (main): Call gcc_init_libintl.
1746         (v_message): Call gettext on msgid and "warning: "
1747         * tradcif.y: Include intl.h.
1748         (yyerror): Make parameter definition consistent with
1749         prototype.  Call gettext on msgid argument.
1750
1751 2001-10-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1752
1753         * combine.c (num_sign_bit_copies): Avoid signed/unsigned
1754         warnings.
1755
1756         * sparc/sol2.h: Include <sys/mman.h> when L_trampoline is defined.
1757
1758 Mon Oct 29 19:22:07 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1759
1760         * reload1.c (eliminate_regs): Test for reg_renumber being allocated
1761         before referencing it.
1762
1763 2001-10-26  DJ Delorie  <dj@redhat.com>
1764
1765         * config/rs6000/sysv4.h (LINK_SPEC): Allow -msdata=none to
1766         override -G, and force -G0.
1767
1768 2001-10-29  Joseph S. Myers  <jsm28@cam.ac.uk>
1769
1770         * ChangeLog.2, ChangeLog.3, ChangeLog.4, FSFChangeLog.10,
1771         FSFChangeLog.11, c-common.c, c-common.def, c-common.h, c-decl.c,
1772         c-dump.c, c-typeck.c, except.c, sdbout.c, simplify-rtx.c,
1773         timevar.h, tree.h, varasm.c: Fix spelling errors and typos.
1774
1775         * loop.h (struct induction): Rename ext_dependant to
1776         ext_dependent.
1777         * loop.c: Change all uses.
1778         (check_ext_dependant_givs): Rename to check_ext_dependent_givs.
1779         All callers changed.
1780         * timevar.c (DEFTIMEVAR): Fix spelling of identifier__ parameter.
1781
1782 2001-10-29  Joseph S. Myers  <jsm28@cam.ac.uk>
1783
1784         * c-parse.in (expr_no_commas, primary), c-typeck.c
1785         (parser_build_binary_op): Use IS_EXPR_CODE_CLASS.
1786
1787 2001-10-29  David Edelsohn  <edelsohn@gnu.org>
1788
1789         Undo assemble_name change in earlier patch.
1790
1791 Mon Oct 29 21:11:40 2001  Nicola Pero  <n.pero@mi.flashnet.it>
1792
1793         * objc/objc-act.c (finish_message_expr): For the GNU runtime: when
1794         determining the type of the receiver, do not check that TREE_CODE
1795         of receiver is CALL_EXPR before calling receiver_is_class_object().
1796         (receiver_is_class_object): For the GNU runtime: recognize
1797         the case that the receiver is self in a class method context.
1798         Check that TREE_CODE of receiver is CALL_EXPR when checking that
1799         the receiver is a call to objc_get_class.
1800
1801 2001-10-29  John David Anglin  <dave@hiauly1.hia.nrc.ca>
1802
1803         * pa.md (floatunssisf2): Set subreg 0 of operand 2 to zero.
1804
1805 Mon Oct 29 07:23:33 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1806
1807         * Makefile.in (OBJS): Put all files in alphabetical order.
1808
1809         * dwarf2out.c (add_const_value_attribute): Fix error in last
1810         change.
1811
1812 Mon Oct 29 12:43:06 CET 2001  Jan Hubicka  <jh@suse.cz>
1813
1814         * basic-block.h (purge_all_dead_edges): Add update_life_p argument.
1815         * cfgcleanup.c (merge_blocks): Update the life flag after merging;
1816         fix warning.
1817         * cfgrtl.c (purge_all_dead_edges): Allow updating of liveness.
1818         (life_analysis): call purge_all_dead_edges after deleting noops.
1819         (delete_noop_move): Do not purge CFG.
1820         * toplev.c (rest_of_compilation): Update purge_all_dead_edges call.
1821
1822 2001-10-28  David Edelsohn  <edelsohn@gnu.org>
1823
1824         * config/rs6000/aix31.h (ASM_OUTPUT_EXTERNAL): Use assemble_name.
1825         * config/rs6000/darwin.h (RS6000_OUTPUT_BASENAME): Delete.
1826         (ASM_GLOBALIZE_LABEL): Use assemble_name.
1827         (ASM_OUTPUT_COMMON): Likewise.
1828         * config/rs6000/rs6000.c (print_operand): Use assemble_name.
1829         (rs6000_output_function_epilogue): Likewise.
1830         (output_mi_thunk): Fix typo.
1831         (rs6000_output_symbol_ref): Use assemble_name.
1832         (output_toc): Likewise.
1833         * config/rs6000/sysv4.h (RS6000_OUTPUT_BASENAME): Delete.
1834         * config/rs6000/xcoff.h (RS6000_OUTPUT_BASENAME): Delete;
1835         assemble_name calls STRIP_NAME_ENCODING.
1836         (ASM_OUTPUT_LABEL): Use assemble_name.
1837         (ASM_GLOBALIZE_LABEL): Likewise.
1838         (ASM_DECLARE_FUNCTION_NAME): Likewise.
1839         (ASM_OUTPUT_ALIGNED_COMMON): Indent pseudo-op.  Use assemble_name.
1840         (ASM_OUTPUT_LOCAL): Likewise.
1841
1842 Sun Oct 28 15:45:16 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1843
1844         * builtins.c (get_memory_rtx): Handle POINTERS_EXTEND_UNSIGNED case.
1845         (expand_builtin_apply, expand_builtin_return): Likewise.
1846         (expand_builtin_va_arg, expand_builtin_va_copy): Likewise.
1847
1848 2001-10-28  Joseph S. Myers  <jsm28@cam.ac.uk>
1849
1850         * ChangeLog.0, ChangeLog.1, ChangeLog.2, ChangeLog.3, ChangeLog.4,
1851         ChangeLog.5, ChangeLog, FSFChangeLog.10, FSFChangeLog.11,
1852         c-common.c, c-common.h, c-parse.in, c-typeck.c, cfg.c, config.gcc,
1853         configure, configure.in, except.c, except.h, flow.c, function.c,
1854         gcc.c, gcse.c, genrecog.c, libgcc2.c, loop.c, loop.h, params.def,
1855         predict.def, predict.h, reg-stack.c, regmove.c, sched-deps.c,
1856         sched-int.h, sibcall.c, ssa.c, stringpool.c, toplev.c, tree.c,
1857         unroll.c: Fix spelling errors.
1858
1859         * doc/extend.texi, doc/invoke.texi: Fix spelling.
1860
1861         * doc/gcc.texi: Document use of "dependent" and American spelling.
1862
1863 Sun Oct 28 17:05:36 CET 2001  Jan Hubicka  <jh@suse.cz>
1864
1865         * expr.c (emit_group_load): Support CONCATs by storing them to memory
1866         and reloading.
1867
1868 Sun Oct 28 09:59:54 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1869
1870         * expr.c (store_constructor_field): Only call adjust_address on MEM.
1871
1872 Sun Oct 28 16:48:09 CET 2001  Jan Hubicka  <jh@suse.cz>
1873
1874         * genrecog.c (write_switch):  Output if before switch for
1875         DT_elt_zero_wide_safe.
1876
1877 2001-10-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1878
1879         * Makefile.in (toplev.o, halfpic.o): Depend on halfpic.h
1880         * i386/osfrose.h (SUBTARGET_SWITCHES): Add missing comma.
1881         (FUNCTION_PROFILER): Const-ify.
1882         * halfpic.c: Include "expr.h", "output.h" and "halfpic.h".
1883         (eliminate_constant_term, assemble_name, output_addr_const):
1884         Remove declarations.
1885         (ptr_half_pic_address_p, half_pic_hash): Prototype.
1886         (all_refs, half_pic_prefix, half_pic_hash, half_pic_declare,
1887         half_pic_external, half_pic_address_p, half_pic_ptr): Const-ify.
1888         * halfpic.h (ptr_half_pic_address_p, half_pic_finish): Prototype.
1889         (half_pic_declare, half_pic_external): Const-ify.
1890         * toplev.c: Include "halfpic.h".
1891
1892 2001-10-28  Joseph S. Myers  <jsm28@cam.ac.uk>
1893
1894         * config/alpha/alpha.md, config/arm/arm.c, config/arm/arm.h,
1895         config/d30v/d30v.h, config/fr30/fr30.c, config/i370/x-oe,
1896         config/i386/i386.c, config/i386/i386-interix.h,
1897         config/i386/i386.md, config/i386/i386.h, config/i386/sco5.h,
1898         config/i860/i860.h, config/i860/i860.md, config/m68k/aux-exit.c,
1899         config/m68k/m68k.c, config/mcore/mcore.c, config/mips/mips.md,
1900         config/ns32k/ns32k.h, config/pa/pa.c, config/rs6000/rs6000.c,
1901         config/sparc/sparc.c, config/m68hc11/m68hc11.c,
1902         config/cris/cris.c, config/cris/cris.h, config/s390/s390.c,
1903         config/s390/s390.h, config/stormy16/stormy16.h, doc/tm.texi: Fix
1904         spelling errors.
1905
1906         * ChangeLog.0, ChangeLog.1, ChangeLog.2, ChangeLog.3, ChangeLog.4,
1907         ChangeLog.5, ChangeLog, ChangeLog.lib, FSFChangeLog.10, ONEWS,
1908         c-common.c, caller-save.c, cfg.c, cfgcleanup.c, cfgrtl.c,
1909         collect2.c, df.h, diagnostic.h, final.c, gcse.c, gthr.h,
1910         haifa-sched.c, jump.c, local-alloc.c, profile.c, protoize.c,
1911         regmove.c, reload1.c, rtlanal.c, sched-vis.c, ssa.c, stmt.c,
1912         system.h, toplev.c: Fix spelling errors.
1913
1914 Sat Oct 27 17:32:04 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1915
1916         * gcse.c (insert_insn_end_bb): Don't assume PAT is a SET.
1917
1918         * dwarf2out.c (reg_number): Abort if pseudo.
1919         (reg_loc_descriptor): Return 0 if pseudo.
1920         (is_based_loc): Return 0 if pseudo.
1921         (mem_loc_descriptor): Return 0 for pseudo and handle 0 return from
1922         recursive calls.
1923         (concat_loc_descriptor): Return 0 if either part's descriptor is 0.
1924         (loc_descriptor): Return 0 if can't find location and handle 0
1925         return from recursive calls.
1926         (loc_descriptor_from_tree): Likewise.
1927         Fix handling of indirect.
1928         Also return 0 for PLACEHOLDER_EXPR.
1929         Clean up COMPONENT_REF cases.
1930         (add_AT_location_descriptor): Simplify, but handle 0 return from
1931         loc_descriptor.
1932         (add_const_value_attribute): Avoid shift count warning.
1933         (add_bound_info): Remove test for PLACEHOLDER_EXPR here.
1934         Set comp_unit_die as context if not in function.
1935
1936         * config/mips/mips-protos.h: Break up long lines.
1937         Remove needless #ifdef/#endif blocks.
1938         Don't declare functions declared in file made by genpreds or recog.h.
1939         * config/mips/mips.c (mips_output_function_prologue): TSIZE
1940         is now HOST_WIDE_INT; delete unneeded casts.
1941         * config/mips/mips.h: Don't use #elif.
1942
1943         * expr.c (stor_constructor_field): Always call adjust_address.
1944         Copy TARGET before changing its alias set.
1945         (store_field): Likewise, for TO_RTX.
1946         (get_inner_reference): Stop at PLACEHOLDER_EXPR if can't find
1947         replacement.
1948         (safe_from_p, case ADDR_EXPR): Properly check for conflict.
1949         (find_placeholder): Return 0 if can't find object.
1950         (expand_expr, case PLACEHOLDER_EXPR): Abort if find_placeholder
1951         returns 0.
1952
1953 Sat Oct 27 16:31:23 CEST 2001  Jan Hubicka  <jh@suse.cz>
1954
1955         * ifcvt.c (if_convert): Call clear_aux_for_blocks.
1956
1957 Sat Oct 27 12:12:09 CEST 2001  Jan Hubicka  <jh@suse.cz>
1958
1959         * cfgcleanup.c (merge_blocks_move_predecessor_nojumps,
1960         merge_blocks_move_successors_nojumps): Set BB_UPDATE_LIFE.
1961         (merge_blocks): Properly udpate life after making edge nonfallthru.
1962         * cfgrtl.c (merge_blocks_nomove): Update global_live_at_end.
1963
1964 2001-10-26  Kazu Hirata  <kazu@hxi.com>
1965
1966         * config/h8300/h8300.c (get_shift_alg): Remove redundant code.
1967
1968 2001-10-26  Neil Booth  <neil@daikokuya.demon.co.uk>
1969
1970         * c-typeck.c (convert_arguments): When comparing for enumeral
1971         type equality, use TYPE_MAIN_VARIANT.
1972         * gcc.dg/Wconversion.c: New tests.
1973
1974 2001-10-26  Kazu Hirata  <kazu@hxi.com>
1975
1976         * s390/s390.c: Fix comment typos.
1977         * s390/s390.h: Likewise.
1978         * s390/s390.md: Likewise.
1979
1980 2001-10-26  Alexandre Oliva  <aoliva@redhat.com>
1981
1982         * tree-inline.c (WALK_SUBTREE_TAIL): New macro.
1983         (walk_tree): Use it for tail calls where appropriate.
1984
1985 2001-10-26  Alexandre Oliva  <aoliva@redhat.com>
1986
1987         * cse.c (check_for_label_ref): Don't require REG_LABEL notes for
1988         non-local label_refs.
1989
1990 2001-10-26  Kazu Hirata  <kazu@hxi.com>
1991
1992         * config/h8300/h8300.md (4 anonymous patterns): New.
1993
1994 2001-10-26  Kazu Hirata  <kazu@hxi.com>
1995
1996         * config/h8300/h8300.c (get_shift_alg): Clean up.  Return the
1997         algorithm through the shift_info structure.
1998         (emit_a_shift): Update the use of get_shift_alg.
1999
2000 2001-10-27  Daniel Berlin  <dan@cgsoftware.com>
2001
2002         * sched-rgn.c: Remove bitset typedef.
2003         Change bitset to sbitmap in prototypes / variable types.
2004         Remove bbset_size.
2005         Remove edgeset_bits.
2006         Remove edgeset_size.
2007         s/BITSET_ADD/SET_BIT/g
2008         s/BITSET_INVERT/sbitmap_ones/g
2009         s/BITSET_INTER/sbitmap_a_and_b/g
2010         s/BITSET_UNION/sbitmap_a_or_b/g
2011         s/BITSET_DIFFER/sbitmap_difference/g
2012         s/bitset_member/TEST_BIT/g
2013         (BITSET_*): Removed.
2014         (bitset_member): Removed.
2015         (extract_bitlst): Rewrite, now that we have sbitmaps, we can use
2016         EXECUTE_IF_SET_IN_SBITMAP.
2017         (split_edges): Rewrite, use sbitmap functions instead of bitset
2018         operations.
2019         (schedule_region): Allocate/free sbitmaps, rather than bitsets.
2020
2021 2001-10-26  Andreas Schwab  <schwab@suse.de>
2022
2023         * reload1.c (emit_input_reload_insns): Fix parens in last
2024         (undocumented) change that was supposed to change only whitespace.
2025
2026 Fri Oct 26 07:18:08 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2027
2028         * cfgcleanup.c (BB_SET_FLAG, BB_CLEAR_FLAG): Add cast to avoid warning.
2029
2030         * local-alloc.c (update_equiv_regs): Don't make REG_EQUAL note for
2031         ASM_OPERANDS.
2032
2033 2001-10-26  Andreas Jaeger  <aj@suse.de>
2034
2035         * flow.c (clear_log_links): Remove unused variable.
2036         * cfgcleanup.c (cleanup_cfg): Likewise.
2037
2038 2001-10-26  Alexandre Oliva  <aoliva@redhat.com>
2039
2040         * tree-inline.c (remap_decl): Don't copy size and size_unit here.
2041         (remap_save_expr): Map a remapped SAVE_EXPR to error_mark_node.
2042
2043 2001-10-26  Richard Henderson  <rth@redhat.com>
2044
2045         * config/alpha/alpha.h (enum reg_class): Add R24_REG, R25_REG;
2046         rename PV_REG to R27_REG.
2047         (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Update.
2048         (REG_CLASS_FROM_LETTER): Update.
2049         (PREFERRED_RELOAD_CLASS): Don't widen a reg class.
2050         * config/alpha/alpha.md (divsi3): Don't hard-code r24, r25, r27.
2051         (udivsi3, modsi3, umodsi3): Likewise.
2052         (divdi3, udivdi3, moddi3, umoddi3): Likewise.
2053
2054 2001-10-26  Richard Henderson  <rth@redhat.com>
2055
2056         * cfg.c (clear_aux_for_blocks): Split out of ...
2057         (free_aux_for_blocks): here.
2058         (clear_aux_for_edges): Split from ...
2059         (free_aux_for_edges): here.
2060         * basic-block.h: Declare them.
2061         * lcm.c (compute_antinout_edge): Use them.
2062         (compute_laterin, compute_available, compute_nearerout): Likewise.
2063         (optimize_mode_switching): Likewise.
2064
2065 2001-10-26  Richard Henderson  <rth@redhat.com>
2066
2067         * Makefile.in (unstage*): Remove as, ld, collect-ld before
2068         moving everything back to the main build directory.
2069
2070 2001-10-26  Christopher Faylor  <cgf@redhat.com>
2071
2072         * config/i386/cygwin.h: Search target specific include directory, if
2073         appropriate.
2074
2075 2001-10-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2076
2077         * dwarf2out.c (PTR_SIZE, default_eh_frame_section): Move outside
2078         of macro guards. Fix #endif comment.
2079
2080         * output.h (default_exception_section, default_eh_frame_section):
2081         Move prototypes outside of macro guard.
2082
2083         * crtstuff.c: Fix #endif comment.
2084
2085 Thu Oct 25 12:21:58 2001  Jeffrey A Law  (law@cygnus.com)
2086
2087         * doc/md.texi (movMM): Clarify semantics of storing into a
2088         non-paradoxical SUBREG.
2089
2090 2001-10-25  Zack Weinberg  <zack@codesourcery.com>
2091
2092         * langhooks.c (lang_hook_default_clear_binding_stack): New.
2093         (lang_hook_default_get_alias_set): Move next to other alias
2094         hooks.
2095         * langhooks.h: Prototype lang_hook_default_clear_binding_stack.
2096         (LANG_HOOKS_CLEAR_BINDING_STACK): New macro.
2097         (LANG_HOOKS_INITIALIZER): Add it.
2098         * toplev.h (struct lang_hooks): Add clear_binding_stack.
2099         * toplev.c (compile_file):  Call lang_hooks.clear_binding_stack
2100         instead of a loop calling poplevel.
2101
2102 2001-10-25  Nick Clifton  <nickc@cambridge.redhat.com>
2103
2104         * config/mips/isa3264.h (SUBTARGET_CPP_SIZE_SPEC): Replace
2105         occurrences of #elif with #if...#endif.
2106
2107 2001-10-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2108
2109         * cris.h (EH_RETURN_DATA_REGNO): Fix unsigned>=0 warning.
2110
2111 Thu Oct 25 08:46:06 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2112
2113         * alias.c (can_address_p): No longer static.
2114         * emit-rtl.c (get_mem_attrs): New parameter, MODE; all callers changed.
2115         Return 0 if all parameters are default values.
2116         (set_mem_attributes): Set MEM_KEEP_ALIAS_SET_P.
2117         (adjust_address_1): Try harder to compute a size.
2118         * expr.c (expand_assignment, store_constructor): If can't address,
2119         set MEM_KEEP_ALIAS_SET_P.
2120         (store_constructor_field): Don't change set if MEM_KEEP_ALIAS_SET_P.
2121         (store_field): Likewise.
2122         (store_constructor): Simplify call to store_constructor_field.
2123         * expr.h (can_address_p): New declaration.
2124         * gensupport.c (gen_rtx_CONST_INT): New function.
2125         * rtl.h (MEM_KEEP_ALIAS_SET_P): New macro.
2126         (MEM_SIZE): Get size from mode, if not set and not BLKmode.
2127         (MEM_COPY_ATTRIBUTES): Copy MEM_KEEP_ALIAS_SET_P.
2128
2129         * stmt.c (expand_end_case): Remove orig_minval and use tree_low_cst.
2130
2131 2001-10-24  Christopher Faylor  <cgf@redhat.com>
2132
2133         * config/i386/cygwin.h: Use proper path for mingw crt files when
2134         -mno-cygwin.
2135
2136 Wed Oct 24 18:43:42 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2137
2138         * dwarf2out.c (file_info_cmp): Always return consistent results.
2139
2140 2001-10-24  Roger Sayle <roger@eyesopen.com>
2141
2142         * stmt.c (expand_end_case): Index jumptables from zero for
2143         suitably small values of minval.
2144
2145 2001-10-24  Jakub Jelinek  <jakub@redhat.com>
2146
2147         * stor-layout.c (place_union_field): If any field was aligned with
2148         attribute aligned, set record type's TYPE_USER_ALIGN.
2149         (place_field): Likewise.
2150         (finalize_record_size): Don't clear TYPE_USER_ALIGN.
2151         (layout_type) [ARRAY_TYPE]: Copy element's TYPE_USER_ALIGN.
2152
2153 2001-10-24  Zack Weinberg  <zack@codesourcery.com>
2154
2155         * c-common.h (struct c_common_identifier): Remove rid_code field.
2156         (C_RID_CODE): Use ->node.rid_code instead of ->rid_code.
2157
2158         * c-typeck.c (constructor_designated): New local flag.
2159         (struct constructor_stack): Add "designated" field to match.
2160         (start_init): Clear it.
2161         (really_start_incremental_init, push_init_level): Push and
2162         clear it.
2163         (pop_init_level): Pop it.
2164         (set_designator): Set it.
2165
2166         (pop_init_level): Suppress "missing initializer" warnings if
2167         constructor_designated is true.
2168         (process_init_element): Suppress warning about union
2169         initialization under traditional C, if constructor_designated
2170         is true.
2171
2172 Wed Oct 24 15:35:38 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2173
2174         * integrate.c (copy_rtx_and_substitute, case CALL): Fix error in last
2175         change.
2176
2177 Wed Oct 24 13:26:12 2001  Jeffrey A Law  (law@cygnus.com)
2178
2179         * h8300.h (RETURN_ADDR_RTX): Remove old, incorrect definition.
2180
2181 2001-10-24  Dan Nicolaescu  <dann@ics.uci.edu>
2182
2183         * ssa-ccp.c (ssa_ccp_substitute_constants): Don't do anything if
2184         the node was already a set to a constant.
2185
2186 Wed Oct 24 12:41:19 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2187
2188         * emit-rtl.c (set_mem_attributes): Fix typo in last change.
2189         * print-rtl.c (print_rtx, case MEM): Improve display of MEM_DECL.
2190
2191 2001-10-24  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2192
2193         * s390/linux.h (ASM_OUTPUT_BYTE): Fix format specifier warnings.
2194         (ASM_OUTPUT_ASCII): Const-ify.  Fix signed/unsigned warning.
2195         (ASM_OUTPUT_MI_THUNK): Fix format specifier warnings.
2196         * s390.c (s390_final_chunkify): Don't use string concatenation.
2197         (s390_function_prologue, s390_function_epilogue): Const-ify.
2198         * s390.h (FUNCTION_PROFILER): Remove unused variable.
2199
2200 2001-10-24  Jakub Jelinek  <jakub@redhat.com>
2201
2202         * c-decl.c (finish_decl): Don't add DECL_STMTs for nested function
2203         prototypes.
2204
2205 2001-10-23  Stan Shebs  <shebs@apple.com>
2206
2207         * config/rs6000/x-darwin: Use -no-cpp-precomp instead of
2208         -traditional-cpp in first-stage compilation.
2209
2210 Tue Oct 23 21:45:40 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2211
2212         * gensupport.c (target_flags): Add.
2213
2214 Tue Oct 23 13:05:53 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.
2215
2216         * builtins.c (expand_builtin_setjmp): Only call convert_memory_address
2217         if needed.
2218         (expand_builtin_longjmp, expand_builtin_alloca): Likewise.
2219         * except.c (expand_builtin_frob_return_addr): Likewise.
2220         (expand_builtin_eh_return): Likewise.
2221         * stmt.c (expand_computed_goto): Likewise.
2222         * explow.c (memory_address): Likewise.
2223         (allocate_dynamic_stack_space): Clean up predicate testing.
2224         (probe_stack_range): Convert SIZE to Pmode.
2225         * calls.c (rtx_for_function_call): Only call convert_memory_address
2226         if needed.
2227         Pass function call operand as ptr_mode, not Pmode.
2228         * expr.c (expand_assignment): Clean up calls to convert_memory
2229         address by only doing so when needed and making offsets Pmode.
2230         (store_constructor, expand_expr, expand_expr_unaligned): Likewise.
2231         * function.c (assign_parms): Ensure address in MEM for RESULT_DECL
2232         is in Pmode, not ptr_mode.
2233
2234 2001-10-23  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2235
2236         * darwin-protos.h (constructor_section, destructor_section,
2237         mod_init_section, mod_term_section): Prototype.
2238         * darwin.c (machopic_finish, update_non_lazy_ptrs, update_stubs):
2239         Const-ify.
2240         * darwin.h (ASM_DECLARE_OBJECT_NAME, ASM_DECLARE_FUNCTION_NAME):
2241         Likewise.
2242         (SECTION_FUNCTION): Prototype `FUNCTION'.  Delete
2243         objc_section_init declaration.
2244         (EXTRA_SECTION_FUNCTIONS): Prototype objc_section_init.
2245         (objc_section_init, try_section_alias): Make static.
2246         (alias_section): Make static and hide unused function.
2247         (ASM_GENERATE_INTERNAL_LABEL): Fix format specifier warning.
2248
2249 Tue Oct 23 13:05:53 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2250
2251         * alias.c (can_address_p): Compnonents are not addressable if
2252         the containing type has alias set 0.
2253         (get_alias_set): Rework to use STRIP_NOPS.
2254         Only call front-end routine on object, type, or object with
2255         NOPs stripped, not inner values.
2256         Use language hook to call front-end routine.
2257         * builtins.c (get_memory_rtx): Always call set_mem_attributes.
2258         (expand_builtin_apply): Call set_mem_align on MEMs we make.
2259         Don't pass alignment to emit_block_move.
2260         (expand_builtin_memcpy, expand_builtin_va_copy): Likewise.
2261         (expand_builtin_memset): Likewise, but for clear_storage.
2262         * c-common.c (lang_get_alias_set): Renamed to c_common_alias_set
2263         and remove C++ specific parts.
2264         * c-common.h (c_common_get_alias_set): Add declaration.
2265         * c-lang.c (LANG_HOOKS_GET_ALIAS_SET): New macro.
2266         * calls.c (emit_call_1): Fix typo in sibcall_pop case.
2267         (save_fixed_argument_area): Call set_mem_align.
2268         Remove alignment in call to emit_block_move.
2269         (emit_library_call_value_1, store_one_arg): Likewise.
2270         (target_for_arg): Remove; disabled long ago.
2271         * emit-rtl.c (set_mem_attributes): Rework to only call get_mem_attrs
2272         once and similar cleanups.
2273         (offset_address): Use proper introductory comment.
2274         * expr.c (emit_block_move): Use alignment from that of MEM args, not
2275         from explicit operand; all callers changed.
2276         (clear_storage): Likewise.
2277         (expand_assignment): Don't call set_mem_alias_set on to_rtx.
2278         (store_field): Remove kludge on alias set used for to_rtx.
2279         (highest_pow2_factor, case *_DIV_EXPR): Never return 0.
2280         (expand_expr_unaligned): Call set_mem_attributes instead of
2281         set_mem_alias_set.
2282         * expr.h (emit_block_move, clear_storage): Remove ALIGN argument.
2283         * function.c (assign_stack_temp_for_type): Set MEM alignment.
2284         (expand_function_end): Track MEM attributes of trampolines.
2285         * ifcvt.c (noce_try_cmove_arith): Set alignment of new MEM.
2286         * integrate.c (copy_rtx_and_substitute, case CALL): Copy memory
2287         attributes from original.
2288         * langhooks.c (lang_hook_default_get_alias_set): New function.
2289         (hook_get_alias_set_0): New function.
2290         * langhooks.h (hook_get_alias_set_0): New declaration.
2291         (lang_hook_default_get_alias_set): Likewise.
2292         (LANG_HOOKS_GET_ALIAS_SET): New macro; add to initializer.
2293         * reload1.c (alter_reg): Use adjust_address_nv.
2294         * rtl.c (get_mode_alignment): Moved to here.
2295         * rtl.h (MEM_ALIGN): Take default from mode, if not BLKmode, and
2296         change default if unknown from 1 to BITS_PER_UNIT.
2297         * stor-layout.c (get_mode_alignment): Remove from here.
2298         * toplev.h (struct lang_hoks): Add get_alias_set field.
2299         * tree.h (lang_get_alias_set): Delete declaration.
2300         * config/arc/arc.c (arc_setup_incoming_varags): Set MEM alignment.
2301         * config/i386/i386.c (ix86_setup_incoming_varargs): Likewise.
2302         (ix86_va_arg): Likewise.
2303         * config/i960/i960.c (i960_setup_incoming_varargs): Likewise.
2304         * config/pa/pa.c (hppa_builtin_saveregs): Likewise.
2305         * config/sparc/sparc.c (sparc_va_arg): Likewise.
2306         * config/rs6000/rs6000.c (setup_incoming_varargs): Likewise.
2307         (expand_block_move_mem): Remove dead code.
2308
2309 2001-10-22  Neil Booth  <neil@daikokuya.demon.co.uk>
2310
2311         * c-common.c (warn_div_by_zero): New.
2312         * c-common.h (warn_div_by_zero): New.
2313         * c-decl.c (c_decode_option): Take it on the command line.
2314         * c-typeck.c (build_binary_op): Warn about division by zero.
2315         * doc/invoke.texi: Document the new command line option, fix
2316         documentation of -Wmultichar.
2317         * testsuite/gcc.dg/divbyzero.c: New tests.
2318         * testsuite/gcc.dg/noncompile/20010524-1.c: Update.
2319
2320 Tue Oct 23 15:30:23 CEST 2001  Jan Hubicka  <jh@suse.cz>
2321
2322         * i386.c (ix86_expand_int_movcc): Cleanup; use expand_simple_*op.
2323
2324         * toplev.c (rest_of_compilation): Use CLEANUP_UPDATE_LIFE
2325         to avoid update_life_info call.
2326         * basic-block.h (CLEANUP_UPATE_LIFE): Define.
2327         * cfgcleanup.c (bb_flags): New enum.
2328         (BB_FLAGS, BB_SET_FLAG, BB_CLEAR_FLAG, FORWARDER_BLOCK_P): New macros.
2329         (notice_new_block, update_forwarder_flag): New functions.
2330         (try_simplify_condjump): Use FORWARDER_BLOCK_P.
2331         (try_forward_edges): Likewise; update flags.
2332         (merge_blocks): Likewise.
2333         (outgoing_edges_match): Likewise.
2334         (try_crossjump_to_edge): Likewise.
2335         (try_optimize_cfg): Likewise; initialize and clear the flags;
2336         recompute life info if needed.
2337         (cleanup_cfg): No need to clear aux pointers.
2338
2339 2001-10-23  Alexandre Oliva  <aoliva@redhat.com>
2340
2341         * config/i386/i386.c (override_options): Default to minimum
2342         stack alignment when optimizing for code size.
2343         * doc/invoke.texi (-mpreferred-stack-boundary): Document the
2344         change.
2345
2346         * config/i386/i386.c (override_options): Set upper limit of
2347         -mpreferred-stack-boundary to 12.
2348
2349 2001-10-22  Zack Weinberg  <zack@codesourcery.com>
2350
2351         * recog.c (peephole2_optimize): Add default case to switch.
2352
2353 2001-10-23  Joseph S. Myers  <jsm28@cam.ac.uk>
2354
2355         * doc/gcc.texi (Sending Patches): Remove.
2356
2357 2001-10-22  Hans-Peter Nilsson  <hp@bitrange.com>
2358
2359         * unwind-dw2-fde.c (fde_unencoded_compare): Derefer pc_begin
2360         fields when comparing.
2361
2362 2001-10-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2363
2364         * arm.h (HOST_INT, HOST_UINT): Delete.  Remove all uses.
2365         * arm.c (HOST_INT, HOST_UINT): Likewise.
2366
2367 2001-10-22  Stan Shebs  <shebs@apple.com>
2368
2369         * config/darwin-protos.h (darwin_exception_section): Declare.
2370         (darwin_eh_frame_section): Declare.
2371
2372 Mon Oct 22 18:21:25 CEST 2001  Jan Hubicka  <jh@suse.cz>
2373
2374         * i386.md (movti_rex64): Fix mode.
2375
2376 2001-10-22  Stan Shebs  <shebs@apple.com>
2377
2378         * target.h (struct gcc_target): Add asm_out.exception_section,
2379         asm_out.eh_frame_section.
2380         * target-def.h (TARGET_ASM_EXCEPTION_SECTION): New macro.
2381         (TARGET_ASM_EH_FRAME_SECTION): New.
2382         (TARGET_INITIALIZER): Update.
2383         * output.h (default_exception_section): Declare.
2384         (default_eh_frame_section): Declare.
2385         * dwarf2out.c: Include target.h.
2386         (output_call_frame_info): Call target hook for eh frames.
2387         (default_eh_frame_section): New function.
2388         * except.c: Include target.h.
2389         (output_function_exception_table): Call target hook for exception
2390         section.
2391         * varasm.c (default_exception_section): Rename from
2392         exception_section, remove EXCEPTION_SECTION macro.
2393
2394         * config/darwin.h (darwin_eh_frame_section): New function.
2395         (EXCEPTION_SECTION): Remove.
2396         (TARGET_ASM_EXCEPTION_SECTION): Define.
2397         * config/nextstep.h (EH_FRAME_SECTION_ASM_OP): Remove.
2398         (nextstep_exception_section): New function.
2399         (nextstep_eh_frame_section): New function.
2400         (TARGET_ASM_EXCEPTION_SECTION): Define.
2401         (TARGET_ASM_EH_FRAME_SECTION): Define.
2402
2403         * config/pa/som.h (EXCEPTION_SECTION): Remove.
2404         (TARGET_ASM_EXCEPTION_SECTION): Define.
2405         * config/rs6000/sysv4.h, config/rs6000/xcoff.h
2406         (EXCEPTION_SECTION): Remove.
2407         (TARGET_ASM_EXCEPTION_SECTION): Define.
2408         * config/stormy16/stormy16.h: Remove comments referencing
2409         EXCEPTION_SECTION and EH_FRAME_SECTION_ASM_OP.
2410
2411         * doc/tm.texi: Document TARGET_ASM_EXCEPTION_SECTION and
2412         TARGET_ASM_EH_FRAME_SECTION.
2413
2414 2001-10-22  Nick Clifton  <nickc@cambridge.redhat.com>
2415
2416         * config/mips/mips.md (mul_acc_si): Fix precedence of conditional
2417         terms.
2418
2419         * c-format.c: Fix spelling typo in comment.
2420
2421         * sched-int.h: Fix typo in GCC preamble.
2422
2423 2001-10-21  Craig Rodrigues  <rodrigc@gcc.gnu.org>
2424
2425         PR debug/4252
2426         * doc/invoke.texi: Remove references to -fdump-translation-unit.
2427
2428 2001-10-22  Richard Henderson  <rth@redhat.com>
2429
2430         * config/i386/i386.c (ix86_expand_clear): New.
2431         * config/i386/i386-protos.h: Declare it.
2432         * config/i386/i386.md (setcc peep2s): Use it.
2433         (movsi_xor): Unexport.
2434
2435 2001-10-22  Richard Henderson  <rth@redhat.com>
2436
2437         * flow.c (clear_log_links): Use free_INSN_LIST_list, not
2438         free_EXPR_LIST_list for LOG_LINKS.
2439
2440 2001-10-21  Robert Lipe  <robertlipe@usa.net>
2441
2442         * config/i386/i386.c (sco_asm_named_section): Delete.
2443         (sco_asm_out_constructor): Delete.
2444         * config/i386/sco5.h (ASM_QUAD): Undo damage from att.h.
2445         (ASM_OUTPUT_DOUBLE_INT): Likewise.
2446         (TARGET_ASM_CONSTRUCTOR): Delete.  Use default.
2447         (TARGET_ASM_NAMED_SECTION): Use default for ELF.
2448         (EXCEPTION_SECTION): Delete EH scn renaming hack.
2449
2450 2001-10-21  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2451
2452         * c-format.c (maybe_read_dollar_number): Use safe-ctype macros
2453         and/or fold extra calls into fewer ones.
2454         * collect2.c (dump_file): Likewise.
2455         * cppexp.c (parse_number): Likewise.
2456         * cpplex.c (_cpp_lex_direct): Likewise.
2457         * final.c (output_asm_insn, asm_fprintf): Likewise.
2458         * fix-header.c (inf_scan_ident, main): Likewise.
2459         * fixinc/fixfixes.c (char_macro_use_fix, char_macro_def_fix):
2460         Likewise.
2461         * fold-const.c (real_hex_to_f): Likewise.
2462         * gen-protos.c (parse_fn_proto): Likewise.
2463         * genattrtab.c (check_attr_test, check_attr_value): Likewise.
2464         * genrecog.c (change_state, write_action): Likewise.
2465         * gensupport.c (shift_output_template): Likewise.
2466         * local-alloc.c (requires_inout): Likewise.
2467         * mips-tfile.c (IS_ASM_IDENT): Likewise.
2468         * protoize.c (is_id_char, main): Likewise.
2469         * real.c (asctoeg): Likewise.
2470         * recog.c (asm_operand_ok): Likewise.
2471         * reload.c (find_reloads): Likewise.
2472         * scan.c (scan_identget_token): Likewise.
2473         * sched-vis.c (print_value): Likewise.
2474         * stringpool.c (ggc_alloc_string): Likewise.
2475         * toplev.c (read_integral_parameter, decode_g_option): Likewise.
2476         * tradcif.y (parse_number, yylex, parse_escape): Likewise.
2477         * tradcpp.c (rescan): Likewise.
2478         * tree.c (clean_symbol_name): Likewise.
2479         * varasm.c (decode_reg_name): Likewise.
2480
2481         * alpha.h (ASM_OUTPUT_ASCII): Likewise.
2482         * darwin.c (name_needs_quotes, func_name_maybe_scoped): Likewise.
2483         * dsp16xx.h (ASM_OUTPUT_ASCII): Likewise.
2484         * m88k.c (output_ascii): Likewise.
2485         * m88k.h (OVERRIDE_OPTIONS): Likewise.
2486         * mcore.h (REG_CLASS_FROM_LETTER): Likewise.
2487         * ns32k/encore.h (ASM_OUTPUT_ASCII): Likewise.
2488         * sh.h (REG_CLASS_FROM_LETTER): Likewise.
2489
2490 2001-10-21  Neil Booth  <neil@daikokuya.demon.co.uk>
2491
2492         * langhooks.c (lang_hook_default_do_nothing,
2493         lang_hook_default_decode_option): New defaults.
2494         * langhooks.h: Make hooks unconditional and non-NULL.
2495         * toplev.c (compile_file, toplev_main): Update.
2496         * toplev.h: Update comments.
2497         * objc/objc-act.c (lang_hooks): Update to new paradigm.
2498
2499 2001-10-21  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2500
2501         * arm.h (FUNCTION_ARG_REGNO_P): Use IN_RANGE.
2502
2503         * system.h (IN_RANGE): New macro.
2504
2505 2001-10-21  Zack Weinberg  <zack@codesourcery.com>
2506
2507         * aclocal.m4 (AM_WITH_NLS): Also create and substitute
2508         INTLDEPS variable, which does not include $LIBICONV.
2509         * Makefile.in: Use INTLDEPS in LIBDEPS.
2510         * configure: Regenerate.
2511
2512 2001-10-21  Neil Booth  <neil@daikokuya.demon.co.uk>
2513
2514         * cpphash.h (struct cpp_buffer): Delete read_ahead and extra_char.
2515         * cpplex.c (lex_percent, lex_dot): Remove.
2516         (get_effective_char, skip_block_comment, skip_line_comment,
2517         parse_identifier_slow, parse_number, parse_string, save_comment,
2518         _cpp_lex_direct): Update to do lookback freely.
2519         (IF_NEXT_IS, BACKUP): New macros.
2520         * cpplib.c (cpp_push_buffer): Don't set read_ahead and extra_char.
2521         * cppmacro.c (paste_tokens): Update.
2522
2523 2001-10-20  Nick Clifton  <nickc@cambridge.redhat.com>
2524
2525         * doc/invoke.texi (i386 and x86-64 Options): Fix typo.
2526
2527 2001-10-20  Hans-Peter Nilsson  <hp@axis.com>
2528
2529         * reload1.c (reload): Check CONSTANT_P before calling
2530         LEGITIMATE_PIC_OPERAND_P.
2531         * config/cris/cris.c (cris_legitimate_pic_operand): Revert
2532         workaround of 2001-10-13.
2533
2534 Sat Oct 20 15:16:10 CEST 2001  Jan Hubicka  <jh@suse.cz>
2535
2536         * i386.c (split_di): Handle splitting of DFmode.
2537
2538 Sat Oct 20 07:27:14 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2539
2540         * emit-rtl.c (set_mem_attributes): Alignment is in bits.
2541         (adjust_address_1, offset_address): Likewise.
2542
2543         * final.c (output_asm_operand_names): New fcn, from output_asm_insn.
2544         (output_asm_insn): Call it for each line output.
2545         Don't record an operand more than once.
2546
2547         * toplev.h (struct lang_hooks): HONOR_READONLY now bool.
2548         * main.c: Include config.h and system.h, but not ansidecl.h.
2549         * Makefile.in (main.o): Update accordingly.
2550
2551 Sat Oct 20 12:05:31 CEST 2001  Jan Hubicka  <jh@suse.cz>
2552
2553         * i386.h (SSE_REGPARM_MAX): Set to 8 for x86_64.
2554
2555 Sat Oct 20 12:01:07 CEST 2001  Jan Hubicka  <jh@suse.cz>
2556
2557         * basic-block.h (find_sub_basic_blocks): Use sbitmap parameter.
2558         * cfgbuild.c (find_bb_boundaries, compute_outgoing_frequencies):
2559         Break out from ...
2560         (find_sub_basic_blocks): ... here;
2561         (find_many_sub_basic_blocks): New.
2562         * recog.c (split_all_insns): Update find_sub_basic_blocks call.
2563
2564         * i386.h (ASM_PREFERRED_EH_DATA_FORMAT): Define sdata4.
2565
2566         * i386.c (ix86_va_arg): Kill indirect_p handling; fix aliasing issues.:
2567
2568         * i386.c (split_di, split_ti): Revamp to use simplify_subreg.
2569
2570         * timevar.def (TV_LIFE, TV_LIFE_UPDATE, TV_MODE_SWITCH): new.
2571         * flow.c (update_life_info): Measure time.
2572         * c-decl.c: Include timevar.h
2573         (c_expand_body): Measure time.
2574         * toplev.c (rest_of_compilation): Measure time of mode switching
2575         separately.
2576         * Makefile.in (c-decl.o, cfgcleanup.o): Add dependency.
2577
2578         * toplev.c (flag_asynchronous_unwind_tables): New global variable.
2579         (lang_independent_options): Add asynchronous-unwind-tables
2580         (toplev_main): flag_asynchronous_unwind_tables implies
2581         flag_unwind_tables.
2582         * flags.h (flag_asynchronous_unwind_tables): Declare.
2583         * dwarf2out.c (dwarf2out_stack_adjust): Take into account
2584         flag_asynchronous_unwind_tables.
2585         (output_call_frame_info): Likewise.
2586         * invoke.texi (-fasynchronous-unwind-tables): Document.
2587         * i386.c (optimization_options): Enable
2588         flag_asynchronous_unwind_tables.
2589
2590         * i386.c (ix86_expand_setcc):  Always expect target to be QImode.
2591         * i386.md (s* expanders): Destination is QImode.
2592
2593         * toplev.c (rest_of_compilation): Do not call clear_log_links.
2594         * rtl.h (clear_log_links): Kill.
2595         * flow.c (clear_log_links): Make static; accept blocks parameter;
2596         do no clear life info.
2597         (update_life_info): Call clear_log_links.
2598
2599         * cfganal.c (forwarder_block_p): Avoid active_insn_p calls.
2600
2601 2001-10-20  Neil Booth  <neil@daikokuya.demon.co.uk>
2602
2603         * cpplex.c (handle_newline, skip_escaped_newlines,
2604         get_effective_char, skip_block_comment, skip_line_comment,
2605         parse_identifier_slow, parse_number, parse_string,
2606         _cpp_lex_direct): Update to do more stepping back.
2607         (trigraph_ok): Similarly.  Rename trigraph_p.
2608         (SAVE_STATE, RESTORE_STATE): Remove.
2609         (BUFF_SIZE_UPPER_BOUND): Tweak.  Add sanity check.
2610
2611         * cpplib.c (destringize): Rename destringize_and_run, and
2612         call run_directive directly.
2613         (_cpp_do__Pragma): Simplify.
2614
2615 2001-10-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2616
2617         * pe.c (arm_pe_unique_section): Const-ify.
2618         * pe.h (TARGET_ASM_NAMED_SECTION): Undef before defining.
2619         (switch_to_section): Add static prototype.
2620
2621         * output.h (drectve_section): Prototype.
2622
2623 2001-10-19  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2624
2625         * config.gcc (i[34567]86-*-gnu*, arc-*-elf*, d30v-*,
2626         fr30-*-elf, hppa*64*-*-linux*, parisc*64*-*-linux*, hppa*-*-linux*,
2627         parisc*-*-linux*, i370-*-linux*, i[34567]86-*-chorusos*,
2628         i[34567]86-*-elf*, i[34567]86-ncr-sysv4*, i[34567]86-*-netware,
2629         i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*,
2630         i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-freebsd*,
2631         i[34567]86-*-netbsdelf*, i[34567]86-*-linux*libc1,
2632         i[34567]86-*-linux*, i[34567]86-moss-msdos*, i[34567]86-*-moss*,
2633         i[34567]86-go32-rtems*, i[34567]86-*-rtems*, i[34567]86-*-rtemself*,
2634         i[34567]86-*-solaris2*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*,
2635         i[34567]86-*-udk*, i[34567]86-*-osf1*, i[34567]86-dg-dgux*,
2636         i860-alliant-*, i860-*-sysv4*, ia64*-*-aix*, ia64*-*-linux*,
2637         ia64*-*-hpux*, m32r-*-elf*, m88k-dg-dgux*, m88k-*-sysv4*, mcore-*-elf,
2638         mips*-*-linux*, mn10200-*-*, mn10300-*-*, pj*-linux*, pjl-*,
2639         powerpc64-*-linux*, powerpc-*-sysv*, powerpc-*-netbsd*,
2640         powerpc-*-chorusos*, powerpc-*-eabiaix*, powerpc-*-eabisim*,
2641         powerpc-*-elf*, powerpc-*-eabi*, powerpc-*-rtems*,
2642         powerpc-*-linux*libc1, powerpc-*-linux*, powerpc-wrs-vxworks*,
2643         powerpcle-wrs-vxworks*, powerpcle-*-sysv*, powerpcle-*-elf*,
2644         powerpcle-*-eabisim*, powerpcle-*-eabi*, powerpcle-*-solaris2*,
2645         rs6000-*-mach*, s390-*-linux*, s390x-*-linux*, sh-*-elf*,
2646         sh-*-rtemself*, sh-*-rtems*, sh-*-linux*, stormy16-*-elf,
2647         v850-*-rtems*, v850-*-*, x86_64-*-linux*), cris-*-aout, cris-*-elf,
2648         cris-*-none, cris-*-linux*: Update ${tmfile} list.
2649         (c4x-*-rtems*, c4x-*, i[34567]86-go32-rtems*, i[34567]86-*-rtemscoff*,
2650         i[34567]86-*-rtems*, i[34567]86-*-rtemself*, i[34567]86-*-osf1*,
2651         mn10200-*-*, mn10300-*-*, powerpc-*-beos*, powerpc-*-darwin*,
2652         powerpc-wrs-vxworks*, powerpcle-wrs-vxworks*, v850-*-rtems*,
2653         v850-*-*): Delete superflous ${cpu_type} setting.
2654         * config/linux.h: Delete svr4.h include.
2655         (SET_ASM_OP): Delete.
2656         * config/netware.h (INT_ASM_OP): Undef before define.
2657         * config/ptx4.h: Delete elfos.h include.
2658         (PREFERRED_DEBUGGING_TYPE): Undef instead of wrapping.
2659         * config/svr4.h: Delete elfos.h include. Update commentary.
2660         * config/arc/arc.h, config/d30v/d30v.h, config/fr30/fr30.h,
2661         config/m32r/m32r.h, config/m88k/sysv4.h, config/mn10200/mn10200.h,
2662         config/mn10200/mn10300.h, config/stormy16/stormy16.h,
2663         config/v850/v850.h: Delete svr4.h include.
2664         * config/i370/linux.h, config/i386/osf1elf.h, config/m68k/linux.h,
2665         config/m68k/m68kv4.h, config/m88k/sysv4.h,
2666         config/sparc/sysv4.h: Update includes.
2667         * config/i386/beos-elf.h, config/i386/netware.h, config/i386/ptx4-i.h,
2668         config/i386/rtemself.h, config/i386/sol2.h, config/i386/sysv4.h,
2669         config/i386/sysv5.h, config/i386/udk.h, config/ia64/linux.h,
2670         config/m88k/dguxbcs.h: Delete includes.
2671         * config/i386/dgux.h, config/i386/osf1elfgdb.h: Delete include.
2672         (PREFERRED_DEBUGGING_TYPE): Undef before defining it.
2673         * config/i860/fx2800.h (ASM_OUTPUT_SOURCE_LINE): Undef before defining
2674         it.
2675         * config/m88k/dgux.h: Delete include.
2676         (SDB_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE):  Undef before
2677         defining it.
2678         * config/pj/pj.h (ASM_GENERATE_INTERNAL_LABEL,
2679         ASM_OUTPUT_INTERNAL_LABEL, ASM_OUTPUT_SKIP): Undef before defining it.
2680         * config/sh/elf.h: Update include.
2681         (SDB_DEBUGGING_INFO, DWARF2_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE,
2682         DWARF2_ASM_LINE_DEBUG_INFO): Move behind includes.
2683
2684 2001-10-19  Catherine Moore  <clm@redhat.com>
2685
2686         * config/stormy16/stormy-abi:  Updates to varargs descriptions.
2687         * config/stormy16/stormy16.c (stormy16_build_va_list):  Reverse
2688         base and count fields.
2689         (stormy16_expand_builtin_va_start):  last_reg_count changed to
2690         size_of_reg_args.  Use count + size in first comparison.
2691
2692 Fri Oct 19 15:24:39 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2693
2694         * langhooks.h (LANG_HOOKS_HONOR_READONLY): New macro.
2695         * toplev.h (struct lang_hooks): New field HONOR_READONLY.
2696         * emit-rtl.c (set_mem_attributes): Set RTX_UNCHANGING_P from
2697         TREE_READONLY and TYPE_READONLY if lang_hooks.honor_readonly.
2698         Set alignment from type if INDIRECT_REF.
2699         (adjust_address_1, offset_address): Simplify alignment compuitation.
2700         * expr.c (expand_expr, case INDIRECT_REF): Don't set RTX_UNCHANGING_P
2701         here; done by set_mem_attributes.
2702
2703 2001-10-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2704
2705         * Makefile.in (rtlanal.o): Depend on $(TM_P_H).
2706         * arm-protos.h (rdata_section, zero_init_section, common_section):
2707         Prototype.
2708         * arm.h (ASM_OUTPUT_DEF_FROM_DECLS): Const-ify.
2709         * avr.h (ASM_OUTPUT_SKIP): Rename macro parameter to avoid
2710         traditional mode stringification.
2711         * function.c (thread_prologue_and_epilogue_insns): Wrap variable
2712         in macros controling its use.
2713         * rtlanal.c: Include tm_p.h.
2714         * varasm.c (asm_output_aligned_bss): Mark parameter with
2715         ATTRIBUTE_UNUSED.
2716         (assemble_constant_align, assemble_start_function, assemble_align,
2717         assemble_variable, assemble_trampoline_template,
2718         output_constant_def_contents): Wrap potentially empty if-stmt body
2719         in brackets.
2720
2721 2001-10-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2722
2723         * a29k-protos.h (literal_section): Prototype.
2724         * a29k.h (ASM_FILE_START): Don't discard pointer qualifier.
2725         * a29k.md: Ensure function pointers are prototyped.
2726         * genattrtab.c (write_eligible_delay): Mark parameter with
2727         ATTRIBUTE_UNUSED.
2728
2729 2001-10-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2730
2731         * calls.c (emit_call_1): Mark parameter with ATTRIBUTE_UNUSED.
2732         * 1750a.c (print_operand): Fix format specifier warning.
2733         * 1750a.h (ASM_FILE_START): Don't discard pointer qualifier.
2734         * 1750a.md: Likewise.
2735         * gcc.c (init_gcc_specs): Wrap with ENABLE_SHARED_LIBGCC.
2736         * genemit.c (output_add_clobbers): Mark parameter with
2737         ATTRIBUTE_UNUSED.
2738         * genrecog.c (write_subroutine): Likewise.
2739         * integrate.c (expand_inline_function): Delete unused variable.
2740         * varasm.c (remove_from_pending_weak_list): Wrap with
2741         ASM_WEAKEN_LABEL.
2742
2743 2001-10-19  Jakub Jelinek  <jakub@redhat.com>
2744
2745         * simplify-rtx.c (simplify_plus_minus): Negate constant iff its neg
2746         field is different to previous argument's neg field.
2747
2748         * config/alpha/alpha.c (summarize_insn): Don't abort on ASM_INPUT.
2749
2750 Fri Oct 19 15:24:39 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2751
2752         * final.c (get_decl_from_op): New function.
2753         (output_asm_insn): Call it; write "*" when item with decl is address.
2754
2755 2001-10-19  Janis Johnson  <janis187@us.ibm.com>
2756
2757         * doc/install.texi (Specific, sparc-sun-solaris2*) Copy documentation
2758         about 64-bit support from the 3.0_branch version.
2759
2760 2001-10-19  Zack Weinberg  <zack@codesourcery.com>
2761
2762         * aclocal.m4 (AM_WITH_NLS): AC_DEFINE HAVE_LIBINTL_H and
2763         USE_INCLUDED_LIBINTL when appropriate.
2764         * configure, config.in: Regenerate.
2765         * Makefile.in (datadir): Set to @datadir@.
2766         (intl.o): Also depend on $(CONFIG_H) and system.h.
2767
2768         * intl.c: Factor out common gettext initialization sequence.
2769         (gcc_init_libintl):  New function.
2770         * intl.h: Include intl/libgnuintl.h if USE_INCLUDED_LIBINTL;
2771         otherwise include libintl.h if HAVE_LIBINTL_H; otherwise turn
2772         off NLS.  Add multiple include guard.  No need to #ifdef-guard
2773         an #undef.  Prototype gcc_init_libintl here.
2774
2775         * collect2.c (main), cppmain.c (general_init), gcc.c (main),
2776         gcov.c (main), protoize.c (main), toplev.c (toplev_main):
2777         Use gcc_init_libintl.
2778
2779 2001-10-19  Catherine Moore  <clm@redhat.com>
2780
2781         * config/stormy16/stormy16.h (ASM_COMMENT_START): Define.
2782
2783         * config/stormy16/stormy16.c (stormy16_split_move):  Make
2784         sure that REG_INC notes are present for auto_inc operands.
2785
2786 2001-10-19  Andreas Jaeger  <aj@suse.de>
2787
2788         * configure: Regenerated.
2789         * configure.in: Add x86_64 to switch statements.
2790
2791 2001-10-18  Richard Henderson  <rth@redhat.com>
2792
2793         * config/alpha/alpha.md (sibcall_osf_1): Load destination
2794         address into $27 explicitly.
2795         (sibcall_value_osf_1): Likewise.
2796
2797 Thu Oct 18 16:07:39 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2798
2799         * emit-rtl.c (gen_reg_rtx): Also reallocate reg_decl array.
2800         (offset_address): New function.
2801         (free_emit_status): Free regno_decl.
2802         (init_emit): Pass proper number of elements to xcalloc.
2803         Allocate regno_decl.
2804         (mark_emit_status): Mark regno_decl values.
2805         * expr.c (highest_pow2_factor): New function.
2806         (expand_assigment): Use it and offset_address.
2807         Properly handle ptr_mode vs. Pmode in offset calculation.
2808         (store_constructor, expand_expr_unaligned): Likewise.
2809         (expand_expr, case COMPONENT_EXPR): Likewise.
2810         * expr.h (offset_address): New decl.
2811         * function.h (struct emit_status): Add regno_decl.
2812         (REGNO_DECL): New macro.
2813         * final.c (output_asm_name): Move in file and don't conditionalize
2814         on flag_print_asm_name.
2815         (output_asm_insn): Only call output_asm_name if flag_print_asm_name.
2816         Output names of operands, if known.
2817         * function.c (assign_parms): Set REGNO_DECL.
2818         * integrate.c (integrate_decl_tree): Likewise.
2819         * stmt.c (expand_decl): Likewise.
2820         * regclass.c (reg_scan_mark_refs): Propagate REGNO_DECL for copies.
2821
2822 2001-10-18  Alexandre Oliva  <aoliva@redhat.com>
2823
2824         * attribs.c (handle_noinline_attribute): New function.
2825         (handle_used_attribute): Likewise.
2826         (c_common_attribute_table): Added noinline and used.
2827         * doc/extend.texi (Function Attributes): Document them.
2828         * c-decl.c (duplicate_decls): Propagate DECL_UNINLINABLE.
2829         Warn when merging inline with attribute noinline.
2830         (start_decl, start_function): Warn if inline and attribute
2831         noinline appear in the same declaration.
2832
2833 2001-10-17  Neil Booth  <neil@daikokuya.demon.co.uk>
2834
2835         * config.gcc: Update c4x and i370 for C front end-specific
2836         dependencies.
2837         * config/c4x/c4x-c.c: New.
2838         * config/c4x/c4x-protos.h (c4x_handle_pragma): Remove.
2839         (code_tree, data_tree, pure_tree, noreturn_tree, interrupt_tree):
2840         New declarations.
2841         * config/c4x/c4x.c: Don't include c-lex.h or c-pragma.h.
2842         (code_tree, data_tree, pure_tree, noreturn_tree, interrupt_tree):
2843         Make extern.
2844         (c4x_init_pragma): Remove.
2845         (c4x_parse_pragma, c4x_pr_CODE_SECTION, c4x_pr_DATA_SECTION,
2846         c4x_pr_FUNC_IS_PURE, c4x_pr_FUNC_NEVER_RETURNS, c4x_pr_INTERRUPT,
2847         c4x_pr_ignored): Move to c4x-c.c.
2848         * config/c4x/c4x.h (REGISTER_TARGET_PRAGMAS): Update.
2849         * config/c4x/t-c4x: Update.
2850         * config/i370/i370-c.c: New.
2851         * config/i370/i370.c: Don't include c-lex.h or c-pragma.h.
2852         (i370_pr_map): Move to i370-c.c.
2853         * config/i370/t-i370: New.
2854
2855         * doc/tm.texi: Update.
2856
2857 2001-10-17  Stan Shebs  <shebs@apple.com>
2858
2859         * config/rs6000/rs6000.c: Make assorted mechanical formatting and
2860         typo fixes throughout.
2861         (machopic_output_stub): Remove some dead code.
2862
2863 2001-10-17  Richard Earnshaw <rearnsha@arm.com>
2864
2865         * cpplex.c (_cpp_get_buff): Fix off-by-one error that caused memory
2866         leak.
2867
2868 Wed Oct 17 05:26:39 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2869
2870         * Makefile.in (print-rtl.o): Depend on TREE_H.
2871         * alias.c (get_alias_set): Make two passes over objects to first
2872         see if inner object is access via restricted pointer.
2873         Defer allocating alias set for restricted pointer until here.
2874         Call find_placeholder with second arg nonzero.
2875         Minor cleanups.
2876         * c-common.c (c_apply_type_quals_to_decl): Defer getting alias
2877         set for restricted pointer types.
2878         * emit-rtl.c (set_mem_attributes): Set more attributes.
2879         (set_mem_align, change_address, adjust_address_1): New functions.
2880         (change_address_1): Now static.
2881         (adjust_address, adjust_address_nv): Deleted.
2882         (replace_equiv_address): Call change_address_1.
2883         * expr.c (get_inner_reference): Handle PLACEHOLDER_EXPR.
2884         (find_placeholder): Get starting point from PLIST arg.
2885         (expand_expr, case PLACEHOLDER_EXPR): Initialize find_placeholder arg.
2886         * expr.h (set_mem_align, change_address, adjust_address_1): New decls.
2887         (adjust_address, adjust_address_nv): New macros.
2888         * print-rtl.c (tree.h): New include.
2889         (print_rtx, case MEM): Print all memory attributes.
2890
2891 2001-10-17  Richard Henderson  <rth@redhat.com>
2892
2893         * config/alpha/alpha.c (direct_call_operand): Don't fall off end.
2894
2895 2001-10-16  Matt Kraai  <kraai@alumni.carnegiemellon.edu>
2896
2897         * c-tree.texi: Eliminate duplicated word.
2898         * cpp.texi: Likewise.
2899         * install.texi: Likewise.
2900         * invoke.texi: Likewise.
2901         * tm.texi: Likewise.
2902
2903 2001-10-17  Michael Collison  <collison@isisinc.net>
2904
2905         * dsp16xx.c: Fix comment formatting to match GNU standards.
2906         (dsp16xx_output_function_prologue): Change type of 'size'
2907         parameter from 'int' to HOST_WIDE_INT.
2908         (dsp16xx_output_function_epilogue): Change type of 'size'
2909         parameter from 'int' to HOST_WIDE_INT.
2910
2911 2001-10-16  Richard Henderson  <rth@redhat.com>
2912
2913         * configure.in (HAVE_AS_GOTOFF_IN_DATA): New x86 check.
2914         * configure, config.in: Rebuild.
2915
2916         * config/i386/i386.c (ix86_output_addr_vec_elt): New.
2917         (ix86_output_addr_diff_elt): New.
2918         * config/i386/i386.h (ASM_OUTPUT_ADDR_VEC_ELT): Use them.
2919         (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
2920         (JUMP_TABLES_IN_TEXT_SECTION): New.
2921         * config/i386/i386.md (tablejump): Handle HAVE_AS_GOTOFF_IN_DATA.
2922         * config/i386/i386-protos.h: Update.
2923
2924         * config/i386/386bsd.h, config/i386/beos-elf.h,
2925         config/i386/freebsd-aout.h, config/i386/freebsd.h,
2926         config/i386/i386-interix.h, config/i386/i386elf.h,
2927         config/i386/linux.h, config/i386/netbsd-elf.h,
2928         config/i386/netbsd.h, config/i386/openbsd.h,
2929         config/i386/ptx4-i.h, config/i386/rtemself.h,
2930         config/i386/sco5.h, config/i386/sysv4.h, config/i386/x86-64.h
2931         (ASM_OUTPUT_ADDR_DIFF_ELT, JUMP_TABLES_IN_TEXT_SECTION): Remove.
2932
2933 2001-10-16  Florian Weimer  <fw@deneb.enyo.de>
2934
2935         * stmt.c (expand_asm_operands): Update commentary.
2936
2937 2001-10-16  Stan Shebs  <shebs@apple.com>
2938
2939         * config/darwin.h (GCC_NAME): Remove, no longer used.
2940         (NO_MATH_LIBRARY): Ditto.
2941         (MATH_LIBRARY): Define to emptiness.
2942         (DWARF2_DEBUGGING_INFO): Define.
2943         (PREFERRED_DEBUGGING_TYPE): Define.
2944         (EXTRA_SECTION_FUNCTIONS): Add darwin_exception_section.
2945         (EXCEPTION_SECTION): Define.
2946         (ASM_PREFERRED_EH_DATA_FORMAT): Define.
2947         * config/darwin.c (darwin_encode_section_info): Handle case of
2948         DECL_INITIAL being error_mark_node.
2949
2950 2001-10-16  Richard Henderson  <rth@redhat.com>
2951
2952         * alpha.c (current_file_function_operand): Don't fail for profiling.
2953         (direct_call_operand): New.
2954         * alpha-protos.h: Declare it.
2955         * alpha.h (EXTRA_CONSTRAINT): Use it.
2956         (PREDICATE_CODES): Add it.
2957         (ASM_OUTPUT_MI_THUNK): Remove.
2958         * alpha32.h (ASM_OUTPUT_MI_THUNK): Remove.
2959         * alpha.md (sibcall_osf_1, sibcall_value_osf_1): Add 's' alternative.
2960
2961 2001-10-16  Krister Walfridsson  <cato@df.lth.se>
2962
2963         * config/i386/netbsd-elf.h (ASM_OUTPUT_ADDR_DIFF_ELT): Define.
2964         (JUMP_TABLES_IN_TEXT_SECTION): Define.
2965
2966 Wed Oct 17 00:21:31 CEST 2001  Jan Hubicka  <jh@suse.cz>
2967
2968         * cfg.c (free_edge): Break out from ....
2969         (remove_edge): ... here.
2970         (clear_edges): Use free_edge.
2971
2972         * att.h (ASM_QUAD): Add comment.
2973         * bsd.h, sco5.h, sun386.h (ASM_QUAD): Define.
2974
2975 Wed Oct 17 00:01:02 CEST 2001  Jan Hubicka  <jh@suse.cz>
2976
2977         * i386.c (split_ti): New function.
2978         (ix86_split_to_parts): Support TImodes.
2979         * i386.h (VALID_INT_MODE_P): Add TImode.
2980         * i386.md (movdi splitter): Fix.
2981         (movti): Support 64bit integer registers.
2982         (movti_rex64): New function and splitter.
2983
2984         * i386.c (*_cost): Add movsx/movzx cost.
2985         * i386.h (struct processor_costs): Add movsx/movzx fields.
2986         (RTX_COSTS): Handle zero/sign extend + avoid believing that
2987         64bit operations require split on 64bit machine.
2988         (CONST_COST): Make large 64bit constants expensive on 64bit compilation.
2989
2990         * i386.c (ix86_setup_incoming_varargs): Fix mode of PLUS.
2991         (ix86_expand_move): Avoid pushes of memory if size does not match;
2992         move long constants to register.
2993         (x86_initialize_trampoline): Fix mode.
2994         * i386.h (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT):
2995         Use ASM_QUAD on 64bit.
2996         * i386.md (test pattern): Disallow impossible constants.
2997         (tablejump PIC expander): Fix emitting of sum.
2998         (movdicc_rex64): Rename to movdicc.
2999         * linux64.h (LINK_SPEC): Add missing '%'.
3000
3001 2001-10-16  Alexandre Oliva  <aoliva@redhat.com>
3002
3003         * tree-inline.c (inlinable_function_p): Leave it up to the
3004         front-end to turn -finline-functions into DECL_INLINE set for all
3005         functions.
3006
3007 2001-10-16  Stan Shebs  <shebs@apple.com>
3008
3009         * config/rs6000/darwin.h (ASM_COMMENT_START): Define.
3010
3011 2001-10-16  Alan Modra  <amodra@bigpond.net.au>
3012
3013         * recog.c: Formatting and comment typo fixes.
3014
3015         * configure.in (gcc_cv_as_bfd_srcdir): New.  Use it to find gas
3016         version in single tree build.
3017         * configure: Regenerate.
3018
3019 2001-10-15  David Edelsohn  <edelsohn@gnu.org>
3020
3021         * config/rs6000/rs6000.md (cr_logical): Swap order of CODE and
3022         MODE arguments to gen_rtx and compare operand with const0_rtx.
3023
3024 2001-10-15  Neil Booth  <neil@daikokuya.demon.co.uk>
3025
3026         * system.h: Poison old unused target macros.
3027         * config/dsp16xx.h (ASM_OPEN_PAREN, ASM_CLOSE_PAREN): Remove.
3028         * config/stormy16/stormy16.c: Update references to obsolete macros.
3029         * config/stormy16/stormy16.h: Similarly.
3030         * config/stormy16/stormy16.md: Similarly.
3031         * config/cris/cris.h: Similarly.
3032
3033 2001-10-15  Neil Booth  <neil@daikokuya.demon.co.uk>
3034
3035         * cpplib.c (struct pragma_entry): Store the name as a hashnode.
3036         (lookup_pragma_entry, insert_pragma_entry, do_pragma,
3037         cpp_register_pragma): Update accordingly.
3038
3039 2001-10-14  Neil Booth  <neil@daikokuya.demon.co.uk>
3040
3041         * c-pragma.h (cpp_register_pragma_space): Remove.
3042         * cpplib.h (cpp_register_pragma_space): Remove.
3043         * cpplib.c (lookup_pragma_entry, insert_pragma_entry): New.
3044         (cpp_register_pragma_space): Remove.
3045         (cpp_register_pragma): Simplify using lookup_pragma_entry,
3046         add sanity checks.
3047         (do_pragma): Similarly.
3048         (_cpp_init_internal_pragmas): Don't register namespaces.
3049
3050         * config/v850/v850.h (REGISTER_TARGET_PRAGMAS):
3051         Don't register namespaces.
3052         * cp/lex.c (init_cp_pragma): Similarly.
3053         * doc/tm.texi: Update.
3054
3055 2001-10-10  Craig Rodrigues  <rodrigc@gcc.gnu.org>
3056
3057         PR c/4157
3058         * config/i386/cygwin.h: Add missing space to MINGW_INCLUDES
3059
3060 2001-10-13  Michael Collison  <collison@dhcp-12-114.townisp.com>
3061
3062         * config/dsp16xx/dsp16xx.md: Rewrite for more efficient code and
3063         add scheduling support.
3064         * config/dsp16xx/dsp16xx.h: Rewrite for more efficient code.
3065         * config/dsp16xx/dsp16xx.c: Rewrite for more efficient code.
3066         * config/dsp16xx/dsp16xx-protos.h: Add new function prototypes.
3067
3068
3069 2001-10-13  Hans-Peter Nilsson  <hp@axis.com>
3070
3071         * config/cris/cris.c (cris_legitimate_pic_operand): Kludge around
3072         missing CONSTANT_P test in core GCC.
3073
3074 2001-10-12  Neil Booth  <neil@daikokuya.demon.co.uk>
3075
3076         * cppmain.c (struct printer): New member source.
3077         (scan_translation_unit): Fix spacing at start of lines.
3078         (cb_line_change): Update.
3079
3080         * gcc.dg/cpp/spacing2.c: New test.
3081
3082 2001-10-12  Hans-Peter Nilsson  <hp@axis.com>
3083
3084         * config/cris/arit.c: Use __builtin_labs, not abs.
3085
3086         * config/cris/cris.h (SET_STRIPPABLE_EXECUTABLE): Don't define.
3087
3088         * config/cris/cris.c (cris_target_asm_function_epilogue): Move
3089         misplaced sprintf and fprintf argument.
3090
3091 2001-10-12  Zack Weinberg  <zack@codesourcery.com>
3092
3093         * ABOUT-NLS, aclocal.m4: Update i18n framework from gettext 0.10.40.
3094         * configure.in, Makefile.in: Take out obsolete check-po logic.
3095         * configure, config.in: Regenerate.
3096
3097 2001-10-12  Ziemowit Laski  <zlaski@apple.com>
3098
3099         * objc/objc-act.c (finish_objc): Correct precondition for emitting
3100         symtab declarations.
3101
3102 2001-10-12  Stan Shebs  <shebs@apple.com>
3103
3104         * config/rs6000/rs6000.c: Remove uses of "register" specifier in
3105         declarations of arguments and local variables.
3106
3107 2001-10-12  Christopher Faylor  <cgf@redhat.com>
3108
3109         * config/i386/cygwin.h: Revert erroneous checkin of crtbegin and
3110         ENDFILE_SPEC definition.
3111
3112 2001-10-12  Kazu Hirata  <kazu@hxi.com>
3113
3114         * gthr-dce.h: Fix comment formatting.
3115         * gthr-posix.h: Likewise.
3116         * gthr-single.h: Likewise.
3117         * gthr-solaris.h: Likewise.
3118         * gthr-vxworks.h: Likewise.
3119         * gthr-win32.h: Likewise.
3120
3121 2001-10-12  Jakub Jelinek  <jakub@redhat.com>
3122
3123         * final.c (output_asm_insn): Make sure assembly dialects are
3124         terminated, not nested.  Output `|' and `}' characters if they
3125         don't appear inside assembly dialect selection.
3126         * config/i386/i386.md (rep_movdi_rex64, rep_movsi, rep_movsi_rex64,
3127         rep_movqi, rep_movqi_rex64, rep_stosdi_rex64, rep_stossi,
3128         rep_stossi_rex64, rep_stosqi, rep_stosqi_rex64, strsetsi_1,
3129         strsetsi_rex_1): Add {} braces.
3130
3131 2001-10-11  Zack Weinberg  <zack@codesourcery.com>
3132
3133         * toplev.c (compile_file): Ignore return value from yyparse.
3134         Always pop any nested binding levels after yyparse returns.
3135
3136 2001-10-11  Richard Henderson  <rth@redhat.com>
3137
3138         * doc/c-tree.texi (Expression trees): Add VTABLE_REF.
3139
3140 2001-10-11  Richard Henderson  <rth@redhat.com>
3141
3142         * dwarf2out.c (add_const_value_attribute): If long < HOST_WIDE_INT,
3143         fall back to add_AT_long_long for large CONST_INT.
3144
3145 2001-10-11  Richard Henderson  <rth@redhat.com>
3146
3147         * config/i386/i386.md (setcc splitters): Add four splitters to
3148         simplify compound compares that simplify_comparison can't handle.
3149
3150 2001-10-11  Zack Weinberg  <zack@codesourcery.com>
3151
3152         * cpplex.c (digraph_spellings, token_spellings): Make static.
3153
3154 2001-10-11  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3155
3156         * unroll.c (loop_iterations): Fixup last patch.
3157
3158 2001-10-11  Richard Henderson  <rth@redhat.com>
3159
3160         * rtl.h (REG_VTABLE_REF): New.
3161         * rtl.c (reg_note_name): Add it.
3162         * combine.c (distribute_notes): Handle it.
3163         * final.c (final_scan_insn): Handle it.
3164         * tree.def (VTABLE_REF): New.
3165         * expr.c (expand_expr): Handle it.
3166         * varasm.c (assemble_vtable_entry, assemble_vtable_inherit): New.
3167         * output.h: Declare them.
3168
3169 2001-10-11  Richard Henderson  <rth@redhat.com>
3170
3171         * dwarf2out.c (rtl_for_decl_location): If no DECL_RTL, look
3172         for a DECL_INITIAL.
3173
3174 2001-10-11  David Edelsohn  <edelsohn@gnu.org>
3175
3176         * config/rs6000/xcoff.h (UNALIGNED_DOUBLE_INT_ASM_OP): Only
3177         available in 64-bit mode.
3178
3179 2001-10-11  Hans-Peter Nilsson  <hp@axis.com>
3180
3181         * config.gcc: Add cris-*-aout, cris-*-elf, cris-*-none,
3182         cris-*-linux* cases.
3183         * config/cris/cris-protos.h: New file.
3184         * config/cris/cris.c: New file.
3185         * config/cris/cris.h: New file.
3186         * config/cris/cris.md: New file.
3187         * config/cris/linux.h: New file.
3188         * config/cris/aout.h: New file.
3189         * config/cris/arit.c: New file.
3190         * config/cris/cris_abi_symbol.c: New file.
3191         * config/cris/mulsi3.asm: New file.
3192         * config/cris/t-aout: New file.
3193         * config/cris/t-cris: New file.
3194         * config/cris/t-elfmulti: New file.
3195         * config/cris/t-linux: New file.
3196         * doc/invoke.texi: Add CRIS options.
3197         * doc/install.texi (Specific): Add blurb for CRIS.
3198
3199 2001-10-10  Hartmut Schirmer <SchirmerH@Innovative-Systems.de>
3200
3201         * config/float-i128.h: Make sure __STDC__VERSION__ is defined
3202         before using it.
3203         * config/float/i32.h: Likewise.
3204         * config/float-i386.h: Likewise.
3205         * config/float-i64.h: Likewise.
3206         * config/float-m68k.h: Likewise.
3207         * config/float-sh.h: Likewise.
3208         * config/float-sparc.h: Likewise.
3209
3210 2001-10-11  Hans-Peter Nilsson  <hp@axis.com>
3211
3212         * doc/contrib.texi: Add note about CRIS port to my entry.
3213
3214 2001-10-11  Kazu Hirata  <kazu@hxi.com>
3215
3216         * basic-block.h: Fix formatting.
3217         * bitmap.h: Likewise.
3218         * cpplib.h: Likewise.
3219         * c-tree.h: Likewise.
3220         * diagnostic.h: Likewise.
3221         * flags.h: Likewise.
3222         * ggc.h: Likewise.
3223         * longlong.h: Likewise.
3224         * real.h: Likewise.
3225         * reload.h: Likewise.
3226         * rtl.h: Likewise.
3227         * tree.h: Likewise.
3228
3229 2001-10-10  Richard Henderson  <rth@redhat.com>
3230
3231         * c-parse.in (asm_operand): Allow named operands.
3232         * genconfig.c (max_recog_operands): Set to 29.
3233         * local-alloc.c (requires_inout): Skip multiple digits.
3234         * recog.c (asm_operand_ok): Likewise.
3235         (preprocess_constraints): Use strtoul for matching constraints.
3236         (constrain_operands): Likewise.
3237         * regmove.c (find_matches): Likewise.
3238         * reload.c (find_reloads): Likewise.
3239         * stmt.c (parse_output_constraint): Don't reject in-out
3240         constraint on operands > 9.  Reject '[' in constraint.
3241         (expand_asm_operands): Handle named operands.  Use strtoul
3242         for matching constraints.
3243         (check_operand_nalternatives): Split out from expand_asm_operands.
3244         (check_unique_operand_names): New.
3245         (resolve_operand_names, resolve_operand_name_1): New.
3246
3247         * doc/extend.texi (Extended Asm): Document named operands.
3248         * doc/md.texi (Simple Constraints): Document matching constraints
3249         on operands > 9.
3250
3251 2001-10-10  Richard Henderson  <rth@redhat.com>
3252
3253         * combine.c (try_combine): Handle a SEQUENCE of one insn.
3254
3255         * i386.c (test splitter): Narrow tests vs paradoxical subregs.
3256         (jcc splitters): Add two splitters to simplify compound compares
3257         that simplify_comparison can't handle.
3258
3259 2001-10-10  Richard Henderson  <rth@redhat.com>
3260
3261         * langhooks.c: Include langhooks.h.
3262         * Makefile.in (langhooks.o): Depend on it.
3263
3264 Wed Oct 10 23:49:06 EDT 2001  John Wehle  (john@feith.com)
3265
3266         * rtlanal.c (noop_move_p): Insns with a REG_RETVAL note
3267         should not be considered as a no-op.
3268         * flow.c (delete_noop_moves): Handle REG_LIBCALL notes.
3269
3270 2001-10-10  Stan Shebs  <shebs@apple.com>
3271
3272         * alias.c: Remove uses of "register" specifier in declarations
3273         of arguments and local variables.
3274         * c-common.c: Ditto.
3275         * c-convert.c: Ditto.
3276         * c-decl.c: Ditto.
3277         * c-format.c: Ditto.
3278         * c-semantics.c: Ditto.
3279         * c-typeck.c: Ditto.
3280         * caller-save.c: Ditto.
3281         * calls.c: Ditto.
3282         * cfg.c: Ditto.
3283         * cfgbuild.c: Ditto.
3284         * cfgrtl.c: Ditto.
3285         * collect2.c: Ditto.
3286         * combine.c: Ditto.
3287         * convert.c: Ditto.
3288         * cppexp.c: Ditto.
3289         * cppfiles.c: Ditto.
3290         * cse.c: Ditto.
3291         * dbxout.c: Ditto.
3292         * defaults.h: Ditto.
3293         * df.c: Ditto.
3294         * dwarf2out.c: Ditto.
3295         * dwarfout.c: Ditto.
3296         * emit-rtl.c: Ditto.
3297         * explow.c: Ditto.
3298         * expmed.c: Ditto.
3299         * expr.c: Ditto.
3300         * final.c: Ditto.
3301         * fix-header.c: Ditto.
3302         * floatlib.c: Ditto.
3303         * flow.c: Ditto.
3304         * fold-const.c: Ditto.
3305         * function.c: Ditto.
3306         * gcc.c: Ditto.
3307         * gcse.c: Ditto.
3308         * gen-protos.c: Ditto.
3309         * genattrtab.c: Ditto.
3310         * gencheck.c: Ditto.
3311         * genconfig.c: Ditto.
3312         * genemit.c: Ditto.
3313         * genextract.c: Ditto.
3314         * genflags.c: Ditto.
3315         * gengenrtl.c: Ditto.
3316         * genoutput.c: Ditto.
3317         * genpeep.c: Ditto.
3318         * genrecog.c: Ditto.
3319         * gensupport.c: Ditto.
3320         * global.c: Ditto.
3321         * gmon.c: Ditto.
3322         * graph.c: Ditto.
3323         * haifa-sched.c: Ditto.
3324         * hard-reg-set.h: Ditto.
3325         * hash.c: Ditto.
3326         * integrate.c: Ditto.
3327         * jump.c: Ditto.
3328         * lists.c: Ditto.
3329         * local-alloc.c: Ditto.
3330         * loop.c: Ditto.
3331         * mips-tdump.c: Ditto.
3332         * mips-tfile.c: Ditto.
3333         * optabs.c: Ditto.
3334         * prefix.c: Ditto.
3335         * print-rtl.c: Ditto.
3336         * read-rtl.c: Ditto.
3337         * real.c: Ditto.
3338         * recog.c: Ditto.
3339         * reg-stack.c: Ditto.
3340         * regclass.c: Ditto.
3341         * regmove.c: Ditto.
3342         * reload.c: Ditto.
3343         * reload1.c: Ditto.
3344         * reorg.c: Ditto.
3345         * resource.c: Ditto.
3346         * rtl.c: Ditto.
3347         * rtlanal.c: Ditto.
3348         * scan.c: Ditto.
3349         * sched-deps.c: Ditto.
3350         * sched-rgn.c: Ditto.
3351         * sdbout.c: Ditto.
3352         * simplify-rtx.c: Ditto.
3353         * stmt.c: Ditto.
3354         * stor-layout.c: Ditto.
3355         * toplev.c: Ditto.
3356         * tradcif.y: Ditto.
3357         * tradcpp.c: Ditto.
3358         * tree.c: Ditto.
3359         * unroll.c: Ditto.
3360         * varasm.c: Ditto.
3361         * xcoffout.c: Ditto.
3362
3363 2001-10-10  Richard Henderson  <rth@redhat.com>
3364
3365         * rtl.h (can_reverse_comparison_p): Remove.
3366
3367 2001-10-10  Christopher Faylor <cgf@redhat.com>
3368
3369         * config/i386/cygwin.h: Avoid adding include files if -nostdinc is
3370         used.
3371
3372 2001-10-10  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
3373
3374         * config/i386/mingw32.h (WIN32_NO_ABSOLUTE_INST_DIRS): New define.
3375         (Thanks to Chris Faylor for suggesting macro name).
3376         (CPP_PREDEFINES): Define __MINGW32__ but don't set value; add more
3377         WIN32 defines.
3378         (STANDARD_INCLUDE_DIR): Remove i386- from directory name.
3379         (STANDARD_INCLUDE_COMPONENT): Change to MINGW.
3380         (MATH_LIBRARY): Undef before definition.
3381         (OUTPUT_QUOTED_STRING): Likewise.
3382         * config/i386/cygwin.h: Use WIN32_NO_ABSOLUTE_INST_DIRS.
3383
3384 2001-10-10  Richard Henderson  <rth@redhat.com>
3385
3386         * unwind-dw2-fde.c (fde_compare_t): Change return type to int.
3387         (fde_unencoded_compare): Likewise.  Don't use subtraction to get
3388         a tristate comparison value.
3389         (fde_single_encoding_compare, fde_mixed_encoding_compare): Likewise.
3390
3391 2001-10-10  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3392
3393         PR c++/4512
3394         * unroll.c (loop_iterations): Ignore insns generated by loop
3395         unrolling.
3396
3397         * config.gcc (mips*-*-gnu*): Delete support.
3398         * config/mips/gnu.h: Remove.
3399
3400 2001-10-10  Kazu Hirata  <kazu@hxi.com>
3401
3402         * calls.c: Fix formatting.
3403         * c-decl.c: Likewise.
3404         * cfgcleanup.c: Likewise.
3405         * combine.c: Likewise.
3406         * cppfiles.c: Likewise.
3407         * cpplib.c: Likewise.
3408         * cppmacro.c: Likewise.
3409         * crtstuff.c: Likewise.
3410         * cse.c: Likewise.
3411         * dwarf2out.c: Likewise.
3412         * expmed.c: Likewise.
3413         * expr.c: Likewise.
3414         * fold-const.c: Likewise.
3415         * function.c: Likewise.
3416         * gcse.c: Likewise.
3417         * genattrtab.c: Likewise.
3418         * ggc-page.c: Likewise.
3419         * integrate.c: Likewise.
3420         * libgcc2.c: Likewise.
3421         * loop.c: Likewise.
3422         * optabs.c: Likewise.
3423         * profile.c: Likewise.
3424         * protoize.c: Likewise.
3425         * real.c: Likewise.
3426         * recog.c: Likewise.
3427         * reload1.c: Likewise.
3428         * reload.c: Likewise.
3429         * reorg.c: Likewise.
3430         * resource.c: Likewise.
3431         * sched-rgn.c: Likewise.
3432         * sdbout.c: Likewise.
3433         * stmt.c: Likewise.
3434         * toplev.c: Likewise.
3435         * varasm.c: Likewise.
3436
3437 2001-10-10  Janis Johnson  <janis187@us.ibm.com>, Alexandre Oliva  <aoliva@redhat.com>
3438
3439         * langhooks.c: Include rtl.h, insn-config.h and integrate.h.
3440         * Makefile.in (langhooks.o): Add dependencies.
3441
3442 Wed Oct 10 00:41:29 EDT 2001  John Wehle  (john@feith.com)
3443
3444         * rs6000.c (rs6000_emit_load_toc_table): Don't
3445         strdup the toc label.
3446         (create_TOC_reference): Likewise.
3447
3448 2001-10-09  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
3449
3450         * config.gcc (i[34567]86-*-mingw32*): Make msvcrt-dependent
3451         version default.
3452
3453 2001-10-09  Danny Smith  <danny_r_smith_2001@yahoo.co.nz>
3454
3455         * config/i386/i386.c (ix86_attribute_table): Correct
3456         min_len, max_len fields for dllimport, dllexport and shared.
3457
3458 2001-10-10  Joseph S. Myers  <jsm28@cam.ac.uk>
3459
3460         * doc/c-tree.texi, doc/cppinternals.texi, doc/extend.texi,
3461         doc/install.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi:
3462         Consistently use "nonzero" instead of "non-zero".
3463
3464 2001-10-09  Kazu Hirata  <kazu@hxi.com>
3465
3466         * acconfig.h: Fix comment formatting.
3467         * c-dump.h: Likewise.
3468         * c-tree.h: Likewise.
3469         * conditions.h: Likewise.
3470         * expr.h: Likewise.
3471         * function.h: Likewise.
3472         * gthr.h: Likewise.
3473         * hwint.h: Likewise.
3474         * integrate.h: Likewise.
3475         * intl.h: Likewise.
3476         * loop.h: Likewise.
3477         * optabs.h: Likewise.
3478
3479 2001-10-09  Kazu Hirata  <kazu@hxi.com>
3480
3481         * c-common.h: Fix comment formatting.
3482         * c-dump.c: Likewise.
3483         * cfg.c: Likewise.
3484         * diagnostic.h: Likewise.
3485         * except.c: Likewise.
3486         * gcc.h: Likewise.
3487         * gcov-io.h: Likewise.
3488         * genattrtab.c: Likewise.
3489         * output.h: Likewise.
3490         * predict.h: Likewise.
3491         * reload1.c: Likewise.
3492         * reload.h: Likewise.
3493         * resource.h: Likewise.
3494         * scan.h: Likewise.
3495         * system.h: Likewise.
3496         * tree.h: Likewise.
3497         * tree-inline.c: Likewise.
3498         * tsystem.h: Likewise.
3499         * varasm.c: Likewise.
3500         * xcoffout.h: Likewise.
3501
3502 2001-10-09  Joseph S. Myers  <jsm28@cam.ac.uk>
3503
3504         * doc/gcc.texi: Document preference for "nonzero" over "non-zero".
3505
3506 2001-10-09  Joseph S. Myers  <jsm28@cam.ac.uk>
3507
3508         * config/alpha/freebsd.h, config/alpha/lib1funcs.asm,
3509         config/i386/i386elf.h, config/i386/netbsd-elf.h,
3510         config/i386/netware.h, config/mcore/gfloat.h,
3511         config/mcore/mcore.c, config/mcore/mcore.h, config/mcore/mcore.md,
3512         config/netware.h, gccbug.in: Update FSF address.
3513
3514 2001-10-09  Kazu Hirata  <kazu@hxi.com>
3515
3516         * c-common.c: Fix comment typos.
3517         * cfgrtl.c: Likewise.
3518         * collect2.c: Likewise.
3519         * cpplex.c: Likewise.
3520         * doloop.c: Likewise.
3521         * dwarf2out.c: Likewise.
3522         * dwarfout.c: Likewise.
3523         * expr.c: Likewise.
3524         * fold-const.c: Likewise.
3525         * gcc.c: Likewise.
3526         * gcov.c: Likewise.
3527         * gcse.c: Likewise.
3528         * global.c: Likewise.
3529         * ifcvt.c: Likewise.
3530         * loop.c: Likewise.
3531         * optabs.c: Likewise.
3532         * protoize.c: Likewise.
3533         * regclass.c: Likewise.
3534         * reorg.c: Likewise.
3535         * rtl.h: Likewise.
3536         * stmt.c: Likewise.
3537         * tree.h: Likewise.
3538         * doc/cpp.texi: Likewise.
3539         * doc/c-tree.texi: Likewise.
3540         * doc/extend.texi: Likewise.
3541         * doc/invoke.texi: Likewise.
3542         * doc/objc.texi: Likewise.
3543         * doc/tm.texi: Likewise.
3544
3545 2001-10-08  Richard Henderson  <rth@redhat.com>
3546
3547         * varasm.c (set_named_section_flags): Initialize "declared".
3548
3549 2001-10-08  Robert Lipe  <robertlipe@usa.net>
3550
3551         * varasm.c (struct in_named_entry): Add declared.
3552         (named_section_first_declaration): New function.
3553         (default_elf_asm_named_section): Use it.
3554         * output.h (named_section_first_declaration): New.
3555
3556 2001-10-08  Richard Henderson  <rth@redhat.com>
3557
3558         * i386.md (movsi_xor): Export.
3559         (setcc peep2): Use it when available; add an alternative to
3560         match zero_extendhisi2_and.
3561
3562 2001-10-08  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3563
3564         * romp-protos.h (romp_initialize_trampoline): New function.
3565         * romp.c (romp_initialize_trampoline): Likewise.
3566         * romp.h (INITIALIZE_TRAMPOLINE): Define in terms of
3567         romp_initialize_trampoline.
3568
3569 2001-10-08  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3570
3571         * m68k/3b1.h (ASM_OUTPUT_SOURCE_LINE): Don't reference `last_linenum'.
3572         * m68k/auxas.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
3573         * m68k/crds.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
3574         * m68k/mot3300.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
3575
3576 2001-10-08  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3577
3578         * unroll.c (loop_iterations): Extend check for multiple back edges.
3579
3580 2001-10-08  Alexandre Oliva  <aoliva@redhat.com>
3581
3582         * langhooks.h: New file.
3583         * Makefile.in (OBJS): Added langhooks.o.
3584         (c-lang.o): Depend on langhooks.h.
3585         (c-common.o): Don't depend on tree-inline.h.
3586         (tree-inline.o): Depend on toplev.h.
3587         (langhooks.o): New rule.
3588         * c-common.c: Don't include tree-inline.h.
3589         (c_mark_lang_decl): Mark argument c as unused.
3590         (c_common_lang_init): Don't initialize hooks here.
3591         * c-lang.c: Include langhooks.h, then override some macros.
3592         (lang_hooks): Initialize with macros in langhooks.h.
3593         (c_init): Don't initialize hooks here.
3594         * toplev.c (struct lang_hooks_for_tree_inlining): New struct.
3595         (struct lang_hooks): Add tree_inlining.  Refer to langhooks.h.
3596         * tree-inline.c: Include toplev.h.  Don't define hook variables.
3597         * tree-inline.h: Don't define hook types nor declare hook
3598         variables.  Move macros to...
3599         * langhooks.c: ... new file, as functions.  Adjust all callers.
3600
3601 2001-10-08  Jeffrey A Law  <law@cygnus.com>
3602
3603         * sibcall.c (optimize_sibling_and_tail_recursive_calls): Call
3604         purge_mem_unchanging_flag on all instructions, not just on those
3605         before NOTE_INSN_FUNCTION_BEG.
3606
3607 2001-10-08  Neil Booth  <neil@daikokuya.demon.co.uk>
3608
3609         * cppmacro.c (_cpp_create_definition): Leave comments off.
3610
3611         * doc/cpp.texi: Update.
3612
3613 2001-10-08  DJ Delorie  <dj@redhat.com>
3614
3615         * c-decl.c (grokfield): Make sure the only unnamed fields
3616         we're allowing are either structs or unions.
3617         * doc/extend.texi: Add documentation for the unnamed field
3618         extension.
3619
3620 2001-10-08  Zack Weinberg  <zack@codesourcery.com>
3621
3622         * aclocal.m4 (gcc_AC_PROG_GNAT): New.
3623         * configure.in: Use it.
3624         * configure: Regenerated.
3625         * config/pa/t-linux, config/pa/t-pa, config/pa/t-pa64,
3626         config/pa/t-pro: Set T_ADAFLAGS, not ADA_CFLAGS.
3627
3628 2001-10-08  Neil Booth  <neil@daikokuya.demon.co.uk>
3629
3630         * cppfiles.c (open_file): Don't mark zero-length files
3631         never-reread here.  Don't output diagnostics here either.
3632         (stack_include_file): Mark them never-reread here.
3633         (_cpp_read_file): Update.
3634
3635 2001-10-08  Richard Henderson  <rth@redhat.com>
3636
3637         * config/i386/sol2.h (UNALIGNED_DOUBLE_INT_ASM_OP): New.
3638
3639 2001-10-08  Richard Henderson  <rth@redhat.com>
3640
3641         * expr.c (store_expr): When converting a CONST_INT for storage
3642         in a SUBREG, convert it to both SUBREG modes before stripping
3643         the SUBREG.
3644
3645 2001-10-08  Richard Henderson  <rth@redhat.com>
3646
3647         * varasm.c (restore_varasm_status): New.
3648         * function.h: Declare it.
3649         * function.c (pop_function_context_from): Call it.
3650
3651 2001-10-08  Richard Henderson  <rth@redhat.com>
3652
3653         * c-common.h (struct c_lang_decl): Add declared_inline.
3654         * c-tree.h (DECL_DECLARED_INLINE_P): New.
3655         * c-lang.c (c_disregard_inline_limits): Use it.
3656         * c-decl.c (duplicate_decls): Likewise.
3657         (pushdecl, redeclaration_error_message): Likewise.
3658         (pushdecl): Allocate DECL_LANG_SPECIFIC if needed.
3659         (grokdeclarator): Likewise.  Set DECL_DECLARED_INLINE_P.
3660         Set DECL_INLINE if -finline-functions.
3661         (store_parm_decls): Don't allocate DECL_LANG_SPECIFIC here.
3662
3663 2001-10-08  Neil Booth  <neil@daikokuya.demon.co.uk>
3664
3665         * cppmacro.c (funlike_invocation_p): Move some logic to caller
3666         in enter_macro_context.  Create a padding token in its own context
3667         if necessary when the search for '(' fails.
3668         (enter_macro_context): Update.
3669
3670 2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
3671
3672         * ChangeLog.2, c-decl.c, config/i386/i386.md, doc/gcc.texi, gcc.c,
3673         genmultilib, toplev.c: Fix spelling errors of "separate" as
3674         "seperate", and corresponding spelling errors of related words.
3675
3676 2001-10-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3677
3678         * builtins.c (expand_builtin_setjmp_receiver): Const-ify.
3679         * c-common.c (fname_var_t, c_tree_code_type, c_tree_code_length):
3680         Likewise.
3681         * c-dump.c (dump_option_value_info): Likewise.
3682         * c-format.c (format_length_info, format_char_info,
3683         format_flag_spec, format_flag_pair, format_kind_info): Likewise.
3684         * collect2.c (names): Likewise.
3685         * cppdefault.h (default_include): Likewise.
3686         * cppexp.c (suffix, vsuf_1, vsuf_2, vsuf_3): Likewise.
3687         * flow.c (life_analysis): Likewise.
3688         * gcc.c (dir_separator_str, modify_target, option_map,
3689         target_option_translations, spec_list_1, extra_specs_1,
3690         init_spec): Likewise.
3691         * gcov.c (gcov_version_string): Likewise.
3692         * genattr.c (write_units): Likewise.
3693         * genattrtab.c (make_length_attrs, write_function_unit_info): Likewise.
3694         * gengenrtl.c (rtx_definition, defs): Likewise.
3695         * genrecog.c (pred_table): Likewise.
3696         * global.c (global_alloc): Likewise.
3697         * lcm.c (optimize_mode_switching): Likewise.
3698         * local-alloc.c (find_free_reg): Likewise.
3699         * params.h (param_info): Likewise.
3700         * predict.c (predictor_info): Likewise.
3701         * protoize.c (unexpansion_struct): Likewise.
3702         * real.c (bmask): Likewise.
3703         * recog.h (insn_operand_data, insn_data): Likewise.
3704         * regclass.c (initial_fixed_regs, initial_call_used_regs): Likewise.
3705         * stmt.c (expand_nl_goto_receiver): Likewise.
3706         * toplev.c (da, debug_args, lang_opt, documented_lang_options,
3707         target_switches, target_options): Likewise.
3708         * tradcif.y (token, tokentab2, yylex): Likewise.
3709         * tree.h (attribute_spec): Likewise.
3710
3711         * alpha.c (override_options, alpha_lookup_xfloating_lib_func):
3712         Likewise.
3713         * arc.c (arc_output_function_epilogue): Likewise.
3714         * arm.c (processors, all_cores, all_architectures,
3715         arm_override_options, isr_attribute_arg, isr_attribute_args,
3716         arm_isr_value): Likewise.
3717         * avr.c (mcu_type_s, reg_class_tab, order_regs_for_local_alloc):
3718         Likewise.
3719         * c4x.c (c4x_int_reglist): Likewise.
3720         * d30v.c (override_options): Likewise.
3721         * h8300.c (shift_insn): Likewise.
3722         * i386.c (size_cost, i386_cost, i486_cost, pentium_cost,
3723         pentiumpro_cost, k6_cost, athlon_cost, pentium4_cost, ix86_cost,
3724         ix86_expand_sse_comi, ix86_expand_sse_compare, override_options,
3725         builtin_description, bdesc_comi, bdesc_2arg, bdesc_1arg,
3726         ix86_init_mmx_sse_builtins, ix86_expand_builtin): Likewise.
3727         * i386.h (processor_costs, ix86_cost): Likewise.
3728         * m68hc11.c (m68hc11_cost, m6811_cost, m6812_cost): Likewise.
3729         * m68hc11.h (processor_costs, m68hc11_cost): Likewise.
3730         * m68k.c (codes_68881, codes_FPA): Likewise.
3731         * m88k.c (mode_from_align, max_from_align, all_from_align,
3732         best_from_align, m_options): Likewise.
3733         * m88k.h (ORDER_REGS_FOR_LOCAL_ALLOC): Likewise.
3734         * mcore.c (mode_from_align): Likewise.
3735         * mips/elf64.h (UNIQUE_SECTION): Likewise.
3736         * mips/iris6gld.h (UNIQUE_SECTION): Likewise.
3737         * mips.c (mips_sw_reg_names, mips_regno_to_class): Likewise.
3738         * mips.h (mips_regno_to_class): Likewise.
3739         * ns32k.c (scales): Likewise.
3740         * pa.c (import_string, magic_milli): Likewise.
3741         * rs6000.c (alt_reg_names, rs6000_override_options): Likewise.
3742         * sparc.c (leaf_reg_remap, sparc_override_options,
3743         reg_leaf_alloc_order, reg_nonleaf_alloc_order, reg_alloc_orders):
3744         Likewise.
3745         * sparc.h (sparc_cpu_select, leaf_reg_remap): Likewise.
3746
3747 2001-10-07  Dale Johannesen  <dalej@apple.com>
3748
3749         * reload1.c (reload_reg_free_p): Teach register interference
3750         checking that multiple output reloads are emitted in
3751         reverse order.
3752         reload1.c (reload_reg_reaches_end_p):  Ditto.
3753         reload1.c (reloads_conflict):  Ditto.
3754
3755 2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
3756
3757         * doc/c-tree.texi, doc/tm.texi: Consistently put NULL and
3758         NULL_TREE inside @code.
3759
3760 2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
3761
3762         * doc/gcc.texi: Document consistent style of "32-bit",
3763         "Objective-C", and "@code{NULL}".
3764
3765 2001-10-06  Zack Weinberg  <zack@codesourcery.com>
3766
3767         * cpplex.c (enum spell_type): Add SPELL_NUMBER.
3768         (cpp_token_len, cpp_spell_token, cpp_output_token,
3769         _cpp_equiv_tokens): Handle it.
3770         * cpplib.h (TTYPE_TABLE): Use SPELL_NUMBER for CPP_NUMBER and
3771         CPP_COMMENT, SPELL_NONE for CPP_PADDING and CPP_EOF.
3772         * cppexp.c (_cpp_parse_expr): Use the correct operator code in
3773         error messages.
3774
3775 Sat Oct  6 07:42:39 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3776
3777         * gcc.c (default_compilers): Remove .ada.
3778
3779 2001-10-06  Neil Booth  <neil@daikokuya.demon.co.uk>
3780
3781         * doc/cppinternals.texi: Update.
3782
3783 2001-10-06  Zack Weinberg  <zack@codesourcery.com>
3784
3785         * gcc.c (main): Set this_file_error if the appropriate
3786         compiler for a language has not been installed.
3787
3788 2001-10-06  Ulrich Weigand  <uweigand@de.ibm.com>
3789
3790         * config/s390/s390.c (s390_va_arg): Use set_mem_alias_set.
3791
3792 2001-10-05  Joseph S. Myers  <jsm28@cam.ac.uk>
3793
3794         * gccbug.in (CATEGORIES): Add ada.
3795
3796 2001-10-05  Catherine Moore  <clm@redhat.com>
3797
3798         * config/stormy16/stormy-abi:  Document abi changes.
3799         * config/stormy16/stormy16.h (REG_ALLOC_ORDER): Redefine.
3800         (ICALL_REGS): New register class.
3801         (NUM_ARGUMENT_REGISTERS): Now 6.
3802         (DEFAULT_PCC_STRUCT_RETURN): Don't try to return structs
3803         in registers.
3804         (REG_CLASS_FROM_LETTER): Map 'z' to ICALL_REGS.
3805         * config/stormy16.md (call_internal, call_value_internal,
3806         indirect_jump): Use new 'z' constraint.
3807
3808 2001-10-05  Neil Booth  <neil@daikokuya.demon.co.uk>
3809
3810         * doc/cppinternals.texi: Update.
3811
3812 2001-10-05  Richard Henderson  <rth@redhat.com>
3813
3814         * dwarf2out.c (FRAME_BEGIN_LABEL): New.
3815         (output_call_frame_info): Use it instead of __FRAME_BEGIN__ and
3816         the gas section-name-as-label feature.
3817
3818 2001-10-05  Neil Booth  <neil@daikokuya.demon.co.uk>
3819
3820         * doc/cppinternals.texi: Update.
3821
3822 Fri Oct  5 08:17:46 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3823
3824         * config/i386/i386.c (ix86_split_to_parts): Use trunc_int_for_mode
3825         to ensure valid SImode constants.
3826
3827 2001-10-05  Alexandre Oliva  <aoliva@redhat.com>
3828
3829         * Makefile.in (c-decl.o): Depend on tree-inline.h.
3830         (c-lang.o): Likewise, as well as insn-config.h and integrate.h.
3831         * c-decl.c: Include tree-inline.h.
3832         (c_expand_body): Call optimize_inline_calls. Determine whether
3833         a function is inlinable upfront, and only clear
3834         DECL_SAVED_TREE, DECL_INITIAL and DECL_ARGUMENTS if it isn't.
3835         * c-lang.c: Include tree-inline.h, insn-config.h and integrate.h.
3836         (c_disregard_inline_limits): New function.
3837         (inline_forbidden_p, c_cannot_inline_tree_fn): Likewise.
3838         (c_post_options): Enable tree inlining if inlining is enabled.
3839         Don't inline trees when instrumenting functions.
3840         (c_init): Initialize lang_disregard_inline_limits and
3841         lang_cannot_inline_tree_fn.
3842         * tree-inline.c (initialize_inlined_parameters): Handle calls
3843         with fewer arguments than declared parameters, and fewer
3844         parameters than passed arguments.  Don't assume value is a
3845         DECL.
3846         (declare_return_variable): Convert return value back to the
3847         original type, if it was promoted.
3848         (tree_inlinable_function_p): New function.
3849         (inlinable_function_p): Don't look at DECL_INLINE if we're
3850         inlining all functions.  Make it work with a NULL id.
3851         Re-check DECL_UNINLINABLE after language-specific checks.
3852         * tree-inline.h (tree_inlinable_function_p): Declare it.
3853         * integrate.c (save_for_inline): Don't bother to prepare argvec
3854         when not inlining.
3855         * cse.c (check_for_label_ref): Don't check deleted labels.
3856
3857         * Makefile.in (tree-inline.o): Depend on newly-included headers.
3858         * tree-inline.c: Include headers needed for the functions moved in.
3859         (struct inline_data, INSNS_PER_STMT): Moved from cp/optimize.c.
3860         (remap_decl, remap_block, copy_scopy_stmt, copy_body_r): Likewise.
3861         (copy_body, initialize_inlined_parameters): Likewise.
3862         (declare_return_variable, inlinable_function_p): Likewise.
3863         (expand_call_inline, expand_calls_inline): Likewise.
3864         (optimize_inline_calls, clone_body): Likewise.
3865         (walk_tree, walk_tree_without_duplicates): Moved from cp/tree.c.
3866         (copy_tree_r, remap_save_expr): Likewise.
3867
3868 2001-10-04  Alexandre Oliva  <aoliva@redhat.com>
3869
3870         * Makefile.in (OBJS): Added tree-inline.o.
3871         (c-common.o): Depend on tree-inline.h.
3872         (tree-inline.o): New target.
3873         * c-common.c: Include tree-inline.h.
3874         (c_mark_lang_decl): Don't mark saved_tree.
3875         (c_common_lang_init): Set lang_anon_aggr_type_p.
3876         * c-common.h (walk_tree_fn, DECL_SAVED_TREE): Moved to tree.h.
3877         (struct c_lang_decl): Moved saved_tree to tree_decl.
3878         * ggc-common.c: Mark saved_tree and inlined_fns of FUNCTION_DECLs.
3879         * integrate.h (function_attribute_inlinable_p): Declare it.
3880         * integrate.c (function_attribute_inlinable_p): Export it.
3881         * tree-inline.c: New file.  Define variables declared in...
3882         * tree-inline.h: New file.  Declare functions to be moved to
3883         tree-inline.c.  Define macros and declare types and hooks for
3884         language-specific tree inlining.
3885         (flag_inline_trees): Moved definition from cp/decl2.c.
3886         * tree.h (walk_tree_fn, DECL_SAVED_TREE): Moved from c-common.h.
3887         (TREE_READONLY_DECL_P, DECL_INLINED_FNS): Moved from cp/cp-tree.h.
3888         (struct tree_decl): Moved saved_tree from c_lang_decl and
3889         inlined_fns from C++'s lang_decl.
3890
3891 2001-10-04  Loren J. Rittle  <ljrittle@acm.org>
3892
3893         * Makefile.in (STAGE2_FLAGS_TO_PASS): Remove patches which
3894         propagated HOST_CC, HOST_CFLAGS, HOST_LDFLAGS and HOST_CPPFLAGS.
3895
3896 2001-10-04  Neil Booth  <neil@daikokuya.demon.co.uk>
3897
3898         * doc/cppinternals.texi: Update.
3899
3900 2001-10-04  Eric Christopher  <echristo@redhat.com>
3901
3902         * config/mips/mips.c (init_cumulative_args): Remember to set
3903         cum->prototype.
3904         * config.gcc: Redo linux configuration. Add target_cpu_default
3905         of soft-float to all mipsisa32 combinations and tx39.
3906         * config/mips/linux.h: Remove include of mips.h.
3907
3908 2001-10-03  Loren J. Rittle  <ljrittle@acm.org>
3909
3910         * Makefile.in (STAGE2_FLAGS_TO_PASS): Propagate HOST_CFLAGS,
3911         HOST_LDFLAGS and HOST_CPPFLAGS.
3912
3913 2001-10-03  Ziemowit Laski  <zlaski@apple.com>
3914
3915         * c-parse.in (objc_inherit_code, objc_pq_context,
3916         objc_public_flag): Make static.
3917         (objc_interface_context, objc_implementation_context,
3918         objc_method_context, objc_ivar_chain, objc_ivar_context): Move to
3919         global tree array in objc/objc-act.[ch].
3920         (methoddef): Remove unnecessary code.
3921
3922         * objc/objc-act.c: (hashed_attribute, hashed_entry, imp_entry):
3923         Hoist struct definitions to objc-act.h.
3924         (nst_method_hash_list, cls_method_hash_list, imp_list, imp_count,
3925         cat_count): Place declaration in objc-act.h.
3926         (objc_tree_index): Move enumeration to objc-act.h.
3927         (objc_global_trees): Place declaration and macro accessors in
3928         objc-act.h.
3929         (implementation_context): Remove duplicate; use
3930         objc_implementation_context instead:
3931         (method_context): Remove duplicate; use objc_method_context
3932         instead.
3933         (objc_ellipsis_node, objc_method_prototype_template,
3934         implemented_classes, function_type): Move global vars to
3935         objc_global_trees.
3936         (init_objc): Use LAST_BASE_TREE_CODE instead of LAST_CODE.
3937         (build_message_expr): Move actual construction of ObjC message
3938         send nodes to finish_message_expr.
3939         (finish_message_expr): New routine, contains code formerly in
3940         build_message_expr.
3941         * objc/objc-act.h (finish_message_expr): New prototype.
3942         (objc_ivar_chain, objc_method_context, objc_ellipsis_node): Remove
3943         declarations; these vars are now part of objc_global_trees.
3944         (objc_tree_index, objc_global_trees): Move definitions from
3945         objc-act.c.
3946         * objc/objc-tree.def: Update copyright info.
3947
3948 Wed Oct  3 12:22:11 EDT 2001  John Wehle  (john@feith.com)
3949
3950         * dwarf2asm.c (unaligned_integer_asm_op): Abort if
3951         op is NULL.
3952         * sparc/sysv4.h (UNALIGNED_DOUBLE_INT_ASM_OP): Use
3953         only if TARGET_ARCH64.
3954
3955 2001-10-02  Bernd Schmidt  <bernds@redhat.com>
3956
3957         * doc/extend.texi: Fix some problems with previous checkin.
3958         * doc/invoke.texi: Likewise.
3959
3960 2001-10-02  Neil Booth  <neil@daikokuya.demon.co.uk>
3961
3962         * cpphash.h: Update comments.
3963         (cpp_context): Update.
3964         (spec_nodes): Remove n__Pragma.
3965         * cppinit.c (cpp_create_reader): Update.
3966         (builtin_array): Add _Pragma.
3967         * cpplib.h: Update comments.
3968         (NODE_DISABLED, BT_PRAGMA): New.
3969         (cpp_start_lookahead, cpp_stop_lookahead): Remove prototypes.
3970         * cppmacro.c (struct cpp_macro): Remove disabled.
3971         (builtin_macro): Return int, handle _Pragma, push the new token
3972         on the context stack.
3973         (funlike_invocation_p): Unconstify, update.
3974         (enter_macro_context): Handle builtins here.
3975         (replace_args, push_token_context, push_ptoken_context):
3976         Update for prototype changes.
3977         (_cpp_pop_context): Update.
3978         (cpp_get_token): Don't handle buitins, nor _Pragma here.
3979         (cpp_sys_macro_p): Update.
3980         (_cpp_free_definition): Clear disabled flag.
3981         (_cpp_create_definition): Upate.
3982         * cppmain.c: Update comments.
3983
3984 Tue Oct  2 12:46:01 CEST 2001  Bo Thorsen     <bo@suse.co.uk>,
3985                                 Andreas Jaeger <aj@suse.de>,
3986                                 Jan Hubicka    <jh@suse.cz>
3987
3988         * doc/invoke.texi (i386 Options): Document x86-64 options.
3989         (i386 and x86-64 Options): Rename i386 options section.
3990
3991         * config/i386/i386.h (TARGET_UNWIND_INFO): New.
3992         (TARGET_SWITCHES): Add -munwind-info.
3993         (MASK_NO_UNWIND_INFO): New.
3994         (NO_BUILTIN_SIZE_TYPE, NO_BUILTIN_PTRDIFF_TYPE): Define for
3995         biarch compilation.
3996         (ASM_OUTPUT_DOUBLE_INT): New.
3997
3998         * config/i386/linux64.h: New spec file for Linux x86-64 support.
3999         * config.gcc: Fix tm_file settings for x86-64.
4000         * config/i386/x86-64.h: New file with OS independent x86-64
4001         definitions.
4002         * config/i386/biarch64.h: New file used to configure compiler
4003         to biarch/64bit compilation.
4004
4005         * config/i386/i386.c: (override_options): Set flags default
4006         for 64bit compilation.
4007
4008 Tue Oct  2 12:46:01 CEST 2001  Jan Hubicka  <jh@suse.cz>
4009
4010         * i386.c (legitimize_pic_address): Add missing bits of 64bit support.
4011         (ix86_expand_int_movcc): Optimize DImode conditional moves with
4012         constants on x86_64.
4013         (ix86_attr_length_immediate_default): Support MODE_DI.
4014         * i386.md (fixdi splitter): Add missing "&& 1" in splitter
4015         condition.
4016         (indirect_jump, tablejump): Turn into expander.
4017
4018 2001-10-02  Joseph S. Myers  <jsm28@cam.ac.uk>
4019
4020         * c-common.c (c_format_attribute_table): Make format and
4021         format_arg attributes apply to function types rather than to
4022         decls.
4023         (is_valid_printf_arglist): Construct an attribute list and pass
4024         that to check_function_format rather than a name.
4025         * c-common.h (check_function_format): Adjust prototype.
4026         * c-decl.c (duplicate_decls): Preserve attributes from type of
4027         built-in decl when allowing for harmless conflict in types.
4028         * c-format.c (record_function_format,
4029         record_international_format, function_format_list,
4030         international_format_info, international_format_list): Remove.
4031         (function_format_info): Remove next, name and assembler_name.
4032         Make format_num and first_arg_num be unsigned HOST_WIDE_INT.
4033         (decode_format_attr): New.
4034         (handle_format_attribute): Handle receiving a type rather than a
4035         decl.  Call decode_format_attr.  Store format information in a
4036         function_format_info.
4037         (handle_format_arg_attribute): Correct comment.  Handle receiving
4038         a type rather than