]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
i960.c (i960_function_prologue): Compute size of frame according to number of registe...
[gcc.git] / gcc / ChangeLog
CommitLineData
fca097e7
DD
12001-03-14 DJ Delorie <dj@redhat.com>
2 Vladimir Makarov <vmakarov@redhat.com>
3
4 * config/i960/i960.c (i960_function_prologue): Compute size of
5 frame according to number of registers actually saved there.
6
e9c0bd54
RH
72001-03-14 Richard Henderson <rth@redhat.com>
8
9 * expr.c (emit_move_insn_1): Fix else if around #endif.
10
0c56474e
JH
11Wed Mar 14 22:39:12 CET 2001 Jan Hubicka <jh@suse.cz>
12 Vojtech Pavlik
13
14 * md.texi (machine constraints): Document 'Q', 'R', 'e' and 'Z'
15 constraints.
16
6189a572
JH
17Wed Mar 14 22:26:10 CET 2001 Jan Hubicka <jh@suse.cz>
18
19 * i386.c (ix86_cmodel_string, ix86_cmodel): Define.
20 (override_options): Parse cmodel string.
21 (x86_64_sign_extended_value, x86_64_zero_extended_value): New.
22 * i386.h (TARGET_OPTIONS): Add "cmodel".
23 (EXTRA_CONSTRAINT): Recognize 'e' and 'Z'.
24 (enum cmodel): New.
25 (ix86_cmodel_string, ix86_cmodel): Declare.
26
27Wed Mar 14 22:26:54 CET 2001 Jan Hubicka <jh@suse.cz>
28
29 Spot by Matt Kraai:
30 * i386.h (GENERAL_REG_P): Add missing REG_P.
31
16a0fe50
LB
322001-03-14 Laurynas Biveinis <lauras@softhome.net>
33
34 * configure.in: Use $gcc_cv_as instead of $as.
35 * configure: Regenerated.
36
e7182666
NB
372001-03-14 Neil Booth <neil@daikokuya.demon.co.uk>
38
39 * cppfiles.c (stack_include_file): Only increase the include
40 count if we actually process the file properly, as opposed
41 to treating it as length zero. Only call read_include_file
42 if not DO_NOT_REREAD. Handle the -H include file output
43 here.
44 (read_include_file): Remove now redundant DO_NOT_REREAD check.
45 (cpp_included, find_include_file): Simplify pathnames after
46 remapping them. If remapping, don't use the remapped file
47 name's buffer as our scratch buffer.
48 (cpp_pop_file_buffer): Replace the multiple include macro
49 only if it isn't yet set.
50 (read_name_map): Simplify remapped names when reading in.
51 (remap_filename): Move code to code path that uses it.
52 (_cpp_simplify_pathname): Return the input pointer.
53 * cpphash.h (_cpp_simplify_pathname): Update prototype.
54
f80022ff
MM
552001-03-14 Mark Mitchell <mark@codesourcery.com>
56
57 * expr.c (expand_expr): Revove bogus conditional.
58
79ce92d7
JH
59Wed Mar 14 19:29:50 CET 2001 Jan Hubicka <jh@suse.cz>
60
61 * expr.c (emit_move_insn_1): Guard PUSH_ROUNDING use by ifdef.
62
9cf218a3
JJ
632001-03-14 Jakub Jelinek <jakub@redhat.com>
64
65 * reg-stack.c (stack_result): Unconditionally use
66 FUNCTION_OUTGOING_VALUE resp. FUNCTION_VALUE.
67
1a06f5fe
JH
68Wed Mar 14 16:36:25 CET 2001 Jan Hubicka <jh@suse.cz>
69
70 * expr.c (emit_move_insn_1): Split push of complex value when
71 no suitable push instruction exist.
72
73 * i386.md (QImode move/add/shift patterns): Use ANY_QI_REG_P
74 instead of QI_REG_P.
75
6e24b709
RK
76Tue Mar 13 22:22:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
77
78 * alias.c (handled_component_p, can_address_p): New functions.
79 (get_alias_set): Use them.
80
9502c558
JW
812001-03-13 Jim Wilson <wilson@redhat.com>
82
83 * config/ia64/ia64.c (find_gr_spill): Subtract frame_pointer_needed
84 from 80 in try_locals code.
85 (ia64_expand_prologue): Add comment pointing to find_gr_spill change.
86
75e93faa
ZW
872001-03-13 Zack Weinberg <zackw@stanford.edu>
88
89 * aclocal.m4 (gcc_AC_COMPILE_CHECK_SIZEOF, gcc_AC_C_CHAR_BIT,
90 gcc_AC_C_LONG_LONG): New.
91 * configure.in: Use them. Probe the size of short, int, long,
92 and long long/__int64 if we have them. Move all the AC_C_*
93 checks together, except gcc_AC_C_CHAR_BIT which has to go
94 after AC_CHECK_HEADERS(limits.h).
95 Take hwint.h out of host_xm_file and build_xm_file.
96
97 * hwint.h: Unconditionally define HOST_BITS_PER_CHAR,
98 HOST_BITS_PER_SHORT, HOST_BITS_PER_INT, HOST_BITS_PER_LONG,
99 and HOST_BITS_PER_LONGLONG in terms of SIZEOF_* and CHAR_BIT.
100 Move the HOST_WIDEST_INT setup logic here from system.h.
101 Provide HOST_WIDEST_INT even if HOST_BITS_PER_LONGLONG is not
102 defined.
103 * system.h: Include hwint.h after limits.h. HOST_WIDEST_INT
104 is now handled by hwint.h.
105
106 * config/alpha/xm-alpha-interix.h, config/alpha/xm-vms.h,
107 config/c4x/xm-c4x.h, config/i370/xm-oe.h,
108 config/ia64/xm-ia64.h: Don't define any of:
109 HOST_BITS_PER_LONG, HOST_BITS_PER_CHAR, HOST_BITS_PER_SHORT,
110 HOST_BITS_PER_LONGLONG.
111
112 * config/alpha/xm-alpha.h, config/dsp16xx/xm-dsp16xx.h,
113 config/h8300/xm-h8300.h, config/mips/iris6.h,
114 config/mn10200/xm-mn10200.h, config/pa/xm-pa64hpux.h,
115 config/sparc/xm-sp64.h: Delete.
116 * config.gcc: Remove references to deleted files.
117
118 * config/arm/xm-arm.h, config/mips/xm-mips.h: Don't define
119 HOST_FLOAT_FORMAT to IEEE_FLOAT_FORMAT.
120 * config/i370/xm-linux.h: Clarify floating-point situation in
121 a comment.
122
41947a54
NB
1232001-03-13 Neil Booth <neil@daikokuya.demon.co.uk>
124
125 * cppfiles.c (NO_INCLUDE_PATH): New macro.
126 (find_include_file): Decide here which part of the include
127 chain to start the search. Complain about an empty include
128 chain in all cases apart from an abolsute file name.
129 (_cpp_execute_include): Don't choose the search chain here.
130 Don't call handle_missing_include in the case of an empty
131 include chain.
132 (_cpp_compare_file_date): Don't choose the search chain here.
133 * cpplib.c (do_include_next): Move the in-main-file diagnostic
134 here from _cpp_execute_include. Behave like #include if
135 we're in the main file.
136
77b84559
KG
1372001-03-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
138
139 * system.h (malloc, realloc, calloc, strdup): Only poison these
140 tokens when IN_GCC is defined.
141
ca29d1dc
JH
142Tue Mar 13 14:38:44 CET 2001 Jan Hubicka <jh@suse.cz>
143
144 * i386.md (abs?f expander): Support SSE case.
145 (abd?f_if): Add new "USE"; add splitters.
146
bf4ab281
KG
1472001-03-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
148
149 * cpp.texi (poison): Explain the macro expansion exception.
150
e5408e52
JJ
1512001-03-13 Jakub Jelinek <jakub@redhat.com>
152
153 * expr.c (store_expr): Add dont_store_target. If temp is already in
154 target before copying to reg, don't store it into target again.
155
1198142b
NB
1562001-03-12 Neil Booth <neil@daikokuya.demon.co.uk>
157
158 * cppinternals.texi: Update for file handling.
159
a84efb51
JO
1602001-03-12 Jeffrey Oldham <oldham@codesourcery.com>
161
162 * emit-rtl.c (remove_unnecessary_notes): Reverse Richard Kenner's
163 2001-02-24 which broke building the Java library.
164 * function.c (identify_blocks): Likewise.
165 (all_blocks): Likewise.
166 * integrate.c (integrate_decl_tree): Likewise.
167 * print-tree.c (print_node): Likewise.
168 * tree.h (BLOCK_NUMBER): Likewise.
169 (struct tree_block): Likewise.
170
ba8afff6
DE
1712001-03-12 David Edelsohn <edelsohn@gnu.org>
172
173 * rs6000/aix51.h (CPP_SPEC, CPLUSPLUS_CPP_SPEC): Fix typo in
174 __WCHAR_TYPE__ definition.
175 (WCHAR_TYPE_SIZE): #undef before #define.
176
a36c54fa
NB
1772001-03-12 Neil Booth <neil@daikokuya.demon.co.uk>
178
75e93faa 179 * cppfiles.c: Update comments.
a36c54fa
NB
180 (destroy_include_file_node): Rename destroy_node.
181 (find_or_create_entry): New function.
182 (open_file, _cpp_fake_include): Use it.
183 (handle_missing_header): New function, broken out of
184 _cpp_execute include. Don't segfault if there is no
185 system or quoted path.
186 (_cpp_execute_include): Use handle_missing_header.
187
23712c11
JO
1882001-03-12 Jeffrey Oldham <oldham@codesourcery.com>
189
190 * jump.c (reversed_comparison_code_parts): Reverse Jan Hubricka's
191 2001-02-28 patch because it breaks arm-linux and mips-sgi-irix6.5.
192
e8ea2809
RK
193Mon Mar 12 14:05:32 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
194
195 * flow.c (insn_dead_p): Don't consider two memrefs equivalent
196 unless anti_dependence says they are.
197 * alias.c (objects_must_conflict): If neither has a type specified,
198 they must conflict.
199
89c9653e
NB
2002001-03-12 Neil Booth <neil@daikokuya.demon.co.uk>
201 David Billinghurst <David.Billinghurst@riotinto.com>
202
203 * config/mips/iris5.h: Change WCHAR_TYPE to int.
204
99560e26
JH
205Mon Mar 12 16:32:21 CET 2001 Jan Hubicka <jh@suse.cz>
206
207 * i386.md (trunctfdf2_2): Rename missnamed pattern.
208 (*_one_bit): Remove type on the match_operand in attributes.
209
3d117b30
JH
210Mon Mar 12 16:27:56 CET 2001 Jan Hubicka <jh@suse.cz>
211
212 * i386.c: Commit forgotten hunk in previous patch.
213 (regclass_map): Add extended registers.
214 (dbx_register_map): Add missing frame register.
215
1e07edd3
JH
216Mon Mar 12 15:41:08 CET 2001 Jan Hubicka <jh@suse.cz>
217
218 * i386.md (all XFmode patterns except swapxf): Disable for 64bit.
219
220 * i386.md (x86_sahf_1): Disable for 64bit.
221 (popsi*, pophi*): Likewise.
222 (pushqi, pushhi): Likewise.
223 (movdi, pushdi): Likewise.
224 (zero extend DImode splitter): Likewise.
225 (adddi, minusdi splitter): Likewise.
226 (umulsidi): Likewise.
227 (umulsi): New.
228 (mulsidi): Disable for 64bit
229 (lshift:DI/ashift:DI): Disable for 64bit.
230 (loop patterns): Likewise.
231 (call_pop, call_value_pop expanders and patterns): Likewise.
232 (prologue_get_pc): Likewise.
233 (leave): Likewise.
234 (fcmovDI pattern and splitter): Likewise.
235 (movdfcc_1_rex64): New.
236
d2836273
JH
237Mon Mar 12 15:16:36 CET 2001 Jan Hubicka <jh@suse.cz>
238
239 * i386.h (VALID_FP_MODE_P): XFmode is invalid on x86_64.
240 (MODES_TIEABLE_P): QImodes and DImodes are tiable on x86_64.
241 (HARD_REGNO_CALLER_SAVE_MODE): Save QImodes as QImodes for x86_64.
242 (STATIC_CHAIN_REGNUM): Set to r10 for x86_64.
243 (PIC_OFFSET_TABLE_REGNUM): Set to INVALID_REGNUM for x86_64.
244 (LIMIT_RELOAD_CLASS): Avoid limiting of QImodes on x86_64.
245 (SECONDARY_OUTPUT_RELOAD_CLASS): No need to QImodes.
246 (PUSH_ROUNDING): x86_64 rounds to 64bits.
247 (CONSTANT_ADDRESS_P): Accept CONST_DOUBLE.
248 (REGPARM_MAX): Set to 6 for x86_64.
249 (SSE_REGPARM_MAX): Set to 16 for x86_64.
250 * i386.c (hard_regno_mode_ok): QImodes can be in all general purpose
251 registers.
252
253 * (patterns that does use upper halves): Update constraints
254 'q' to 'Q' and 'r' to 'R'.
255 (cmpqi_ext_1): Disable for 64bit.
256 (cmpqi_ext_3_insn): Likewise.
257 (movqi_extzv_1): Likewsie.
258 (addqi_ext_1): Liekwsie
259 (testqi_ext_1): Liekwsie
260 (andqi_ext_1): Liekwsie
261 (xorqi_ext_1): Liekwsie
262 (cmpqi_ext_1_rex64): New.
263 (cmpqi_ext_3_insn_rex64): Likewise.
264 (movqi_extzv_1_rex64): Likewsie.
265 (addqi_ext_1_rex64): Liekwsie
266 (testqi_ext_1_rex64): Liekwsie
267 (andqi_ext_1_rex64): Liekwsie
268 (xorqi_ext_1_rex64): Liekwsie
269
9612ab65
ZW
2702001-03-11 Zack Weinberg <zackw@stanford.edu>
271
75e93faa 272 * configure.in: Move check for unsigned enumerated bitfields
9612ab65
ZW
273 to macro in aclocal.m4. Disable it for now.
274 * configure, config.in: Regenerate.
275 * system.h: Don't do anything with ONLY_INT_FIELDS. Use the
276 unsigned-int form of ENUM_BITFIELD() unless being compiled by GCC.
277 * varasm.c (struct rtx_const): Use ENUM_BITFIELD(). Move enum
278 kind above its first use.
279
280 * config/xm-interix.h, config/alpha/xm-alpha.h,
281 config/i370/xm-linux.h, config/i386/xm-beos.h,
282 config/i386/xm-mingw32.h, config/mips/xm-mips.h,
283 config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
75e93faa 284 config/rs6000/xm-beos.h, config/rs6000/xm-sysv4.h,
9612ab65
ZW
285 Don't define ONLY_INT_FIELDS under any circumstances.
286
287 * config/pa/xm-pa.h: Don't define __BSD_NET2__.
288
289 * config/pa/xm-pahpux.h, config/pa/xm-papro.h,
290 config/sparc/xm-sysv4.h: Delete - now identical with some
291 other xm header.
292 * config.gcc (hppa targets): Replace xm-pahpux.h and
293 xm-papro.h with implicit xm-pa.h.
294 (sparc targets): Replace xm-sysv4.h with implicit or explicit
75e93faa 295 xm-sparc.h.
9612ab65 296
d5ae21aa
AH
2972001-03-12 Aldy Hernandez <aldyh@redhat.com>
298
75e93faa
ZW
299 * reload1.c (reload_cse_simplify): Call reload_cse_simplify_set
300 before reload_cse_noop_set_p.
d5ae21aa 301
190c4cb4
ZW
3022001-03-11 Zack Weinberg <zackw@stanford.edu>
303
304 * config.gcc: Where xm-host.h used to include another
305 xm-host.h, list the nested header directly in xm_file. Remove
306 references to deleted files. Can now use sparc/xm-sp64.h for
307 sparcv9-*-solaris*.
308
309 * config/xm-linux.h, config/arm/xm-linux.h,
310 config/i386/xm-dos.h, config/i386/xm-gnu.h,
311 config/i386/xm-linux.h, config/i386/xm-openbsd.h,
312 config/i860/xm-fx2800.h, config/m68k/xm-atari.h,
313 config/m68k/xm-linux.h, config/m68k/xm-sun3.h,
314 config/sparc/xm-linux.h, config/sparc/xm-sysv4-64.h:
315 Delete.
316
317 * config/alpha/xm-alpha-interix.h: Don't include alpha/xm-alpha.h.
318 * config/mips/xm-iris5.h: Don't include mips/xm-mips.h. Don't
319 bother to wrap #undef in #ifdef.
320 * config/pa/xm-linux.h, config/rs6000/xm-sysv4.h:
321 Don't include xm-linux.h.
322 * config/sparc/xm-sp64.h: Don't include sparc/xm-sparc.h.
323
324 * configure.in: Wrap regexps using [] in changequote block.
325 Use expr : not echo | grep. Simplify regexps.
326 * configure: Regenerate.
327
328 56 xm-files remain, 22 xm-arch.
329
45a647be
KG
3302001-03-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
331
332 * mips-tfile.c: Cast arg to PTR when specifier is HOST_PTR_PRINTF.
333 (__proto, PTR_T, CPTR_T): Delete, use PARAMS/PTR instead.
334 (local_index, local_rindex): Delete, use strchr/strrchr instead.
335 (copy_object): Fix format specifier vs argument mismatch.
336
337 * mips-tdump.c: Make local functions static.
338 (rindex): Don't #undef.
339 (__proto, PTR_T, CPTR_T): Delete, use PARAMS/PTR instead.
340 (fatal, fancy_abort): Delete.
341 (read_seek): Avoid signed/unsigned compare.
342
c7ca5912
RK
343Sun Mar 11 17:01:41 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
344
345 * combine.c (try_combine): Fix error in change to try original
346 register.
347 (gen_rtx_combine): Do same as gen_rtx for now.
348
3d9d2476
ZW
3492001-03-11 Zack Weinberg <zackw@stanford.edu>
350
351 * configure.in: AC_SUBST xm_defines.
352 * configure: Regenerate.
353 * Makefile.in: Set DEFINES=$(xm_defines) when building
354 tconfig.h.
355
b6464a73
NB
3562001-03-11 Neil Booth <neil@daikokuya.demon.co.uk>
357
75e93faa 358 * cppfiles.c (INCLUDE_LEN_FUDGE, ENOMEM): Delete.
b6464a73
NB
359 (cpp_included, find_include_file): Update.
360 (_cpp_compare_file_date): Make else unconditional.
361
2cef831c
KK
3622001-03-10 kaz Kojima <kkojima@rr.iij4u.or.jp>
363
364 * config/sh/sh.h (LEGITIMATE_PIC_OPERAND_P): Defined.
365
e9a9e960
TM
3662001-03-10 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
367
75e93faa 368 * config/sh/sh.md (umulhisi3_i, mulhisi3_i): Fix mnemonics.
e9a9e960
TM
369 * config/sh/lib1funcs.asm (mulsi3): Convert mulu to mulu.w.
370
066c84df
AO
371Sat Mar 10 22:42:05 2001 Alexandre Oliva <aoliva@redhat.com>
372
373 * tree.c (build_common_tree_nodes_2): Don't copy va_list_type_node
374 if it's a record type.
375
936ee790
CF
376Sat Mar 10 17:52:54 2001 Christopher Faylor <cgf@cygnus.com>
377
378 * config/i386/cygwin.h: Make ../w32api a system directory. Reorganize
379 mingw includes slightly.
380
8a0e5115
KG
3812001-03-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
382
383 * system.h (malloc, realloc, calloc, strdup, bzero, bcmp, rindex):
384 #undef token before poisoning it.
385
6439a1f2
KG
3862001-03-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
387
388 * alpha.c (check_float_value): Use memcpy, not bcopy.
389
390 * m32r.c (m32r_sched_reorder): Likewise.
391
392 * vax.c (check_float_value): Likewise.
393
b3e68a79
NB
3942001-03-10 Neil Booth <neil@daikokuya.demon.co.uk>
395
396 * toplev.c (file_name_nondirectory): Remove.
397 * toplev.h: Similarly.
398 * dwarf2out.c (compute_section_prefix): Use lbasename instead
399 of file_name_nondirectory.
400
ea23d540
RK
401Sat Mar 10 10:36:45 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
402
403 * mips-tdump.c (read_seek): Call xmalloc, not malloc.
404 * mips-tfile.c: Don't #undef rindex; not used.
405
0f7fa3d0
JH
406Sat Mar 10 14:34:59 CET 2001 Jan Hubicka <jh@suse.cz>
407
408 * i386.h (DBX_REGISTER_NUMBER): Return proper values for 64bits.
409 (dbx64_register_map): Declare.
410 (RETURN_ADDR_RTX): Fix for 64bit.
411 (DWARF_FRAME_RETURN_COLUMN): Set to 16 for 64bit.
412 (INCOMING_FRAME_SP_OFFSET): Set to 8.
413 * i386.c (dbx64_register_map): New global array.
414 * beos-elf.h, freebsd.h, i386-interix.h, i386elf.h,
415 linux.h (DBX_REGISTER_REGNUMBER): Use dbx64_register_map
416 for 64bits.
417
2251fd78
NB
4182001-03-10 Neil Booth <neil@daikokuya.demon.co.uk>
419
420 * cppfiles.c (search_from): Use lbasename.
421 * mkdeps.c (deps_add_default_target): Use lbasename.
422
f4ce9d90
KG
4232001-03-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
424
425 * fixinc/server.c (load_data, run_shell): Use xmalloc, xrealloc &
426 xcalloc in lieu of malloc, realloc & calloc.
190c4cb4 427
f4ce9d90
KG
428 * gencheck.c (xmalloc): Use really_call_malloc, not malloc.
429
430 * gengenrtl.c (xmalloc): Likewise.
431
432 * gensupport.c (xcalloc, xrealloc, xmalloc): Use the
433 really_call_* memory allocation routines.
434
435 * stmt.c (check_for_full_enumeration_handling): Use
436 really_call_calloc, not calloc.
437
438 * system.h (really_call_malloc, really_call_calloc,
439 really_call_realloc): Define.
440 (malloc, realloc, calloc, strdup, bzero, bcmp, rindex): Poison.
441
0eac2984
JL
442Fri Mar 9 18:39:19 2001 Jeffrey A Law (law@cygnus.com)
443
444 * pa.md (builtin_longjmp): Rework slightly to work for PA64 too.
445
1bf17cc4
NP
4462001-03-09 Nicola Pero <n.pero@mi.flashnet.it>
447
448 * configure: Rebuilt.
449 * configure.in: Only use `lang_requires' for languages athat are
450 actually enabled.
451
6ca3ad1b
JM
4522001-03-09 Joseph S. Myers <jsm28@cam.ac.uk>
453
454 * invoke.texi: Fix typo.
455 * gcc.1: Regenerate.
456
11642c3a
ZW
4572001-03-09 Zack Weinberg <zackw@stanford.edu>
458
459 * configure.in: Prune nonexistent files from build_xm_file,
460 xm_file, and host_xm_file lists. Warn unless they're
461 $cpu/xm-$cpu.h.
462 Don't generate *config.h here.
463 AC_SUBST all variables needed to generate *config.h.
464 * configure: Regenerate.
465 * mkconfig.sh: New helper script, from code removed from
466 configure.in.
467 * Makefile.in: Zap all MALLOC variables - no longer used
468 anywhere, and malloc.c doesn't exist.
469 Substitute in variables needed to generate *config.h.
470 Stop lying about the dependencies contained in CONFIG_H and
471 GCONFIG_H.
472 (HCONFIG_H, TCONFIG_H, TM_P_H): New variables.
473 (config.h, hconfig.h, tconfig.h, tm_p.h, cs-config.h,
474 cs-hconfig.h, cs-tconfig.h, cs-tm_p.h): New rules.
475 (all .o): Add dependencies on $(HCONFIG_H), $(TCONFIG_H),
476 $(TM_P_H), etc. as appropriate.
477
478 * config.gcc: Zap references to deleted files.
479 * ggc-none.c: Don't include rtl.h or tm_p.h.
480
481 * config/i386/xm-beos.h, config/i386/xm-dgux.h,
482 config/i386/xm-djgpp.h, config/i386/xm-dos.h,
483 config/i386/xm-gnu.h, config/i386/xm-i386-interix.h,
484 config/i386/xm-linux.h, config/i386/xm-linux.h,
485 config/i386/xm-next.h, config/i386/xm-openbsd.h,
486 config/i386/xm-sun.h, config/i386/xm-sysv3.h:
487 Don't include i386/xm-i386.h.
488
489 * config/elxsi/xm-elxsi.h, config/i386/xm-bsd386.h,
490 config/i386/xm-i386.h, config/i860/xm-i860.h,
491 config/i960/xm-i960.h, config/mcore/xm-mcore.h,
492 config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
493 config/pj/xm-pj.h, config/sh/xm-sh.h, config/v850/xm-v850.h:
494 Delete (empty except comments, #includes of other deleted
495 files, and macros used nowhere).
496
2faf6b96
JH
497Fri Mar 9 20:05:27 CET 2001 Jan Hubicka <jh@suse.cz>
498
499 * i386.h (MAX_WCHAR_TYPE_SIZE): New constant to keep tradcpp
500 independent on TARGET_FLAGS.
501
3f3f2124
JH
502Fri Mar 9 19:52:52 CET 2001 Jan Hubicka <jh@suse.cz>
503
504 * i386.h (FIRST_PSEUDO_REGISTER): Set to 53.
11642c3a
ZW
505
506 (FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ONES): Add
507 extended ones.
508 (CONDITIONAL_REGISTER_USAGE): Set proper values according to
509 TARGET_64BIT.
510 (FIRST_REX_INT_REG, LAST_REX_INT_REG, FIRST_REX_SSE_REG,
511 LAST_REX_SSE_REG): define.
3f3f2124
JH
512 (enum reg_class): Add 'LEGACY_REGS'
513 (REG_CLASS_CONTENTS): Likewise; add extended registers.
514 (SSE_REGNO_P): Recognize extended registers.
515 (ANY_QI_REG_P, REX_INT_REGNO_P, REX_INT_REG_P): New.
516 (REG_CLASS_FROM_LETTER): Add 'R' and 'Q'.
11642c3a
ZW
517 (REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P,
518 REG_OK_FOR_BASE_NONSTRICT_P): Recognize REX registers.
3f3f2124
JH
519 (REG_OK_FOR_STRREG_NONSTRICT_P, REG_OK_FOR_STRREG_STRICT_P,
520 REG_OK_FOR_STRREG_P): Remove.
521 (HI_REGISTER_NAMES): Add extended registers.
522 (ADDITIONAL_REGISTER_NAMES): Likewise.
523 (QI_REGISTER_NAMES): Add 8bit extended registers.
524 (DEBUG_REG): Support extended registers.
525 * i386.c (regclass_map): Add extended registers.
526 (dbx_register-map): Likewise.
527 (svr4_dbx_register_map): Likewise.
528 (print_reg): Support extended registers.
529 (print_operand): Support 64bit operands.
530
65d9c0ab
JH
531Fri Mar 9 19:37:46 CET 2001 Jan Hubicka <jh@suse.cz>
532
533 * i386.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Set to 128bit for x86_64
534 (BOOL_TYPE_SIZE, SHORT_TYPE_SIZE, INT_TYPE_SIZE,
535 FLOAT_TYPE_SIZE, LONG_TYPE_SIZE, MAX_LONG_TYPE_SIZE,
536 DOUBLE_TYPE_SIZE, LONG_LONG_TYPE_SIZE): New constants.
537 (BITS_PER_WORD, UNITS_PER_WORD, POINTER_SIZE, PARM_BOUNDARY,
538 STACK_BOUNDARY): Set properly for 64bits.
539 (MAX_BITS_PER_WORD, MIN_UNITS_PER_WORD): New constants.
540 (EMPTY_FIELD_BOUNDARY): Define using BITS_PER_WORD.
541 (BIGGEST_FIELD_ALIGNMENT): Set to 128 for 64bits.
542 (MOVE_MAX): Set to 16.
543 (MOVE_MAX_PIECES): 8 for 64bit.
544 (Pmode): Set to SImode.
545
dc647e99
MS
546Fri Mar 9 09:00:36 2001 Mike Stump <mrs@wrs.com>
547
548 * cselib.c (hash_rtx): Ensure that hash isn't zero upon return.
549
25f94bb5
JH
550Fri Mar 9 17:38:08 CET 2001 Jan Hubicka <jh@suse.cz>
551
552 * i386.h (mask_64bit): New constant.
553 (target_64bit): New macro.
554 (target_options): Add '64'/'32'
555 (target_default): Define.
556 * cygwin.h freebsd-aout.h i386-interix.h i386.h i386elf.h isc.h
557 isccoff.h netbsd.h next.h openbsd.h p sco.h sco5.h scodbx.h sequent.h
558 unix.h win32.h (TARGET_DEFAULT): Rename to TARGET_SUBTARGET_DEFAULT.
559
8b737c83
JL
560Thu Mar 8 23:36:56 2001 Jeffrey A Law (law@cygnus.com)
561
562 * config/pa/som.h (MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL): Disable.
563
e7d96a83
JW
564Thu Mar 8 23:29:37 2001 John Wehle (john@feith.com)
565
566 * rtlanal.c (rtx_varies_p): Check operand 0 of a
567 LO_SUM unless for_alias is set.
568
4ce693cd
SS
5692001-03-08 Stan Shebs <shebs@apple.com>
570
571 * objc/objc-act.c: Fix old typos in comments, add comments for
572 various functions.
573 (hash_init): Fix file name in error message.
574 (hash_enter): Ditto.
575 (hash_add_attr): Ditto.
576 (continue_class): Ditto.
577
0bf679a3
BK
5782001-03-08 Bruce Korb <bkorb@gnu.org>
579
580 gcc.c(main): ensure SIGCHLD handling is set to SIG_DFL so that
11642c3a 581 wait4() can receive the signal.
0bf679a3 582
786b0d35
RO
583Thu Mar 8 21:09:10 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
584
585 * fixinc/inclhack.def (AAB_dgux_int_varargs): Don't use HTML
586 entities.
587 * fixinc/fixincl.x: Regenerate.
588
589Thu Mar 8 21:09:10 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
590
591 * fixinc/inclhack.def (AAA_standards): Undo <standards.h> breakage
592 on Tru64 UNIX.
593 * fixinc/fixincl.x: Regenerate.
594
b7460f24
RH
5952001-03-08 Richard Henderson <rth@redhat.com>
596
597 * configure.in (HAVE_AS_LEB128): New assembler check.
598 * configure, config.in: Rebuilt.
599
cadcffb3
JH
600Thu Mar 8 19:54:04 CET 2001 Jan Hubicka <jh@suse.cz>
601
602 * reg-stack.c (move_for_stack_reg): Avoid non-poping fst for
603 TFmode too.
604
b19a539e
KG
6052001-03-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
606
607 * config/ns32k/xm-pc532-min.h, config/we32k/xm-we32k.h: Delete
608 references to the MAXPATHLEN macro.
609
610 * config/alpha/xm-alpha.h, config/arm/xm-arm.h,
611 config/i386/xm-cygwin.h, config/xm-linux.h: Delete references to
612 the POSIX macro.
613
614 * config/i386/xm-gnu.h, config/xm-gnu.h,
615 config/alpha/xm-openbsd.h, config/i386/xm-openbsd.h,
616 config/m68k/xm-openbsd.h, config/mips/xm-openbsd.h,
617 config/sparc/xm-openbsd.h, config/xm-openbsd.h: Delete empty
618 and/or unused files.
619
620 * config.gcc: Define POSIX in xm_defines as appropriate in lieu of
621 doing so in various xm-*.h files.
622
4082ab0f
RK
623Thu Mar 8 06:32:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
624
625 * config/i386/i386.md (clrstrsi): Call ix86_set_move_mem_attrs.
626
c785e0fa
AO
6272001-03-08 Alexandre Oliva <aoliva@redhat.com>
628
629 * configure.in (enable_shared): Support per-package shared-library
630 enabling.
631 * configure: Rebuilt.
632
251b3667
DE
6332001-03-07 David Edelsohn <edelsohn@gnu.org>
634
635 * rs6000.md (cr logic): Add original POWER mnemonic alternative
636 for crnot. Set operands[5] in splitter.
637
cf30ef80
KG
6382001-03-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
639
640 * config/i370/xm-mvs.h, config/i370/xm-oe.h,
641 config/i386/xm-beos.h, config/i386/xm-mingw32.h,
642 config/m88k/xm-m88k.h, config/mips/xm-iris6.h,
643 config/mips/xm-openbsd.h, config/pa/xm-pa64hpux.h,
644 config/pa/xm-pahpux.h, config/rs6000/xm-beos.h,
645 config/rs6000/xm-darwin.h, config/rs6000/xm-mach.h,
646 config/rs6000/xm-rs6000.h, config/xm-interix.h: Delete references
647 to the USG macro.
648
649 * config/vax/xm-vaxv.h, config/a29k/xm-unix.h,
650 config/i370/xm-i370.h, config/i386/xm-dgux.h,
651 config/i386/xm-sun.h, config/i386/xm-sysv3.h,
652 config/m68k/xm-tower.h, config/m68k/xm-aux.h,
653 config/m68k/xm-hp320.h, config/m68k/xm-amix.h,
654 config/m68k/xm-altos3068.h, config/m68k/xm-mot3300.h,
655 config/m68k/xm-m68kv.h, config/m88k/xm-openbsd.h,
656 config/mips/xm-nws3250v4.h, config/mips/xm-sysv.h,
657 config/mips/xm-iris3.h, config/mips/xm-iris4.h, config/xm-svr3.h,
658 config/xm-svr4.h, config/sparc/xm-pbd.h, config/clipper/xm-clix.h:
659 Delete unused and/or empty files.
660
661 * config.gcc: Define USG in xm_defines as appropriate. Define
662 POSIX in lieu of xm-svr4.h. Delete all references to the SVR3
663 macro. Remove deleted xm-* files from $xm_files variable.
664
75382c6d
TT
6652001-03-07 Tom Tromey <tromey@redhat.com>
666
667 * configure: Rebuilt.
668 * configure.in: Allow config-lang.in to set `lang_requires' to list
669 of other required languages.
670
c874ab11
AM
6712001-03-07 Andrew MacLeod <amacleod@redhat.com>
672
673 * config/a29k/a29k.c (print_operand): Free a29k_last_prologue_insn
674 after its emitted.
675 (output_prologue): Use xmalloc not oballoc.
676 (output_epilog): Free a29k_first_epilogue_insn when finished.
677 * confif/a29k/a29k.h (PREDICATE_CODES): Remove shift_constant_operand.
678
de6c5979
BL
6792001-03-07 Brad Lucier <lucier@math.purdue.edu>
680
681 * builtins.c (expand_builtin_mathfn): Check
682 flag_unsafe_math_optimizations, not flag_fast_math.
683 (expand_builtin): Likewise
684 * combine.c (combine_simplify_rtx): Likewise.
685 (simplify_if_then_else): Likewise.
686 * cse.c (fold_rtx): Likewise.
11642c3a 687 * flags.h: Remove flag_fast_math. Add
de6c5979
BL
688 flag_unsafe_math_optimizations and flag_trapping_math.
689 * fold-const.c (negate_expr): Check
690 flag_unsafe_math_optimizations, not flag_fast_math.
691 (invert_truthvalue): Likewise.
692 (fold): Likewise. Before associating operands, check that
693 code == MULT_EXPR, not code != MULT_EXPR.
694 * ifcvt.c (noce_try_minmax): Check
695 flag_unsafe_math_optimizations, not flag_fast_math.
696 (noce_operand_ok): Check flag_trapping_math, not flag_fast_math.
697 * invoke.texi: Document -funsafe-math-optimizations and
698 -fno-trapping-math. Change documentation for -ffast-math.
699 * jump.c (reversed_comparison_code_parts): Likewise.
700 (rtx_equal_for_thread_p): Likewise.
701 * optabs.c (emit_conditional_move): Likewise.
702 * simplify-rtx.c (simplify_binary_operation): Likewise.
703 (simplify_relational_operation): Likewise.
704 (simplify_ternary_operation): Likewise.
705 * toplev.c: Remove flag_fast_math. Add flag_trapping_math and
706 flag_unsafe_math_optimizations. Remove fast-math entry from f_options.
707 Add trapping-math and unsafe-math-optimizations entries to f_options.
708 (set_fast_math_flags): New, sets flags for -ffast-math.
709 (set_no_fast_math_flags): New, sets flags for -fno-fast-math.
710 (decode_f_option): Add code to handle -ffast-math and -fno-fast-math.
711 * toplev.h: Declare set_fast_math_flags and set_no_fast_math_flags.
712
713 * config/alpha/alpha.c (alpha_emit_conditional_branch): Likewise.
714 (alpha_emit_conditional_move): Initialize local_fast_math to
715 flag_unsafe_math_optimizations, not flat_fast_math.
716 * config/c4x/c4x.c (c4x_override_options): Call set_fast_math_flags
717 instead of setting flag_fast_math to 1.
718 * config/convex/convex.md: Check flag_unsafe_math_optimizations,
719 not flag_fast_math.
720 * config/i386/i386.c (override_options): Likewise
721 * config/i386/i386.md: Likewise.
722 * config/m68k/m68k.md: Likewise.
723 * config/mips/mips.md: Likewise.
724 * config/rs6000/rs6000.c (validate_condition_mode): Likewise.
725 (rs6000_generate_compare): Likewise.
726
6822468a
LB
7272001-03-07 Laurynas Biveinis <lauras@softhome.net>
728
11642c3a
ZW
729 * Makefile.in: Set RANLIB to @RANLIB@.
730 Remove RANLIB_TEST.
6822468a
LB
731
7322001-03-07 Laurynas Biveinis <lauras@softhome.net>
11642c3a 733
6822468a
LB
734 * fixinc/inclhack.def (djgpp_wchar_h): New test.
735 * fixinc/fixincl.x: Regenerated.
736
6e487492
RH
7372001-03-07 Richard Henderson <rth@redhat.com>
738
739 * config/alpha/alpha.md (call_osf_1_noreturn): New pattern.
740
542d73ae
RH
7412001-03-07 Richard Henderson <rth@redhat.com>
742
743 * emit-rtl.c (remove_unnecessary_notes): Verify proper nesting
744 of block notes and exception handling notes.
745
232f749b
RH
746 * lists.c (init_EXPR_INSN_LIST_cache): Don't check initialized.
747 * toplev.c (rest_of_compilation): Call init_EXPR_INSN_LIST_cache ...
748 (compile_file): ... here.
749
ed173cc9
KG
7502001-03-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
751
752 * fixinc/Makefile.in (FIXINC_DEFS): Add -DHAVE_CONFIG_H.
753
754 * fixinc/gnu-regex.c: Don't include auto-host.h since we get
755 config.h now. Include libiberty.h to handle alloca.
756
cc937581
ZW
7572001-03-06 Zack Weinberg <zackw@stanford.edu>
758
759 * c-parse.in (yylexname): New function, split out of _yylex.
760 (objc_rid_sans_at): New table.
761 (init_reswords): Initialize it.
762 (_yylex): Give labels clearer names. Handle CPP_ATSIGN by
763 retrieving the next token and checking it for significance as
764 an ObjC keyword or string constant.
765
766 * cpplex.c (_cpp_lex_token): Just return CPP_ATSIGN for '@'.
767 * cpplib.h (TTYPE_TABLE): Add CPP_ATSIGN, drop CPP_OSTRING.
768
769 * c-lex.c, c-parse.in, cppmacro.c, cpplex.c: Remove references
770 to CPP_OSTRING.
771
07ed7ecf
SM
7722001-03-06 Stephen L Moshier <moshier@mediaone.net>
773
774 * config/m68k/m68k.c (const_uint32_operand): Accept any
775 const_int on a 32-bit host.
776
805c6c57
NP
7772001-03-06 Nicola Pero <n.pero@mi.flashnet.it>
778
779 * objc/objc-act.c (init_objc): Set save_lang_status,
780 restore_lang_status, and mark_lang_status.
781
d2f65b7b
KW
7822001-03-06 Krister Walfridsson <cato@df.lth.se>
783
784 * dwarf2asm.c (dw2_asm_output_delta): Fix smallest_mode_for_size call.
785
a867b80c
NB
7862001-03-06 Neil Booth <neil@daikokuya.demon.co.uk>
787
788 * cppinternals.texi: Update.
789
68527d81
KG
7902001-03-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
791
792 * config/a29k/xm-a29k.h, config/a29k/xm-unix.h,
793 config/alpha/xm-alpha.h, config/arc/xm-arc.h, config/arm/xm-arm.h,
794 config/c4x/xm-c4x.h, config/clipper/xm-clix.h,
795 config/convex/xm-convex.h, config/d30v/xm-d30v.h,
796 config/dsp16xx/xm-dsp16xx.h, config/elxsi/xm-elxsi.h,
797 config/h8300/xm-h8300.h, config/i370/xm-i370.h,
798 config/i370/xm-linux.h, config/i370/xm-mvs.h, config/i370/xm-oe.h,
799 config/i386/xm-i386.h, config/i860/xm-i860.h,
800 config/i960/xm-i960.h, config/ia64/xm-ia64.h,
801 config/m32r/xm-m32r.h, config/m68k/xm-m68k.h,
802 config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
803 config/mips/xm-mips.h, config/mn10200/xm-mn10200.h,
804 config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
805 config/pa/xm-linux.h, config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
806 config/pa/xm-pahpux.h, config/pa/xm-papro.h, config/pj/xm-pj.h,
807 config/romp/xm-romp.h, config/rs6000/xm-beos.h,
808 config/rs6000/xm-lynx.h, config/rs6000/xm-rs6000.h,
809 config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
810 config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
811 config/v850/xm-v850.h, config/vax/xm-vax.h, config/vax/xm-vms.h,
812 config/we32k/xm-we32k.h: Delete HOST_BITS_PER_* definitions which
813 match the defaults provided in hwint.h.
814
815 * config/i386/xm-lynx.h, config/m68k/xm-lynx.h,
816 config/sparc/xm-lynx.h, config/xm-std32.h: Delete files.
817
818 * config.gcc (xm_file): Don't set to files which are deleted.
819
820 * hwint.h: Provide default values for HOST_BITS_PER_*. No longer
821 guard this file against these macros being undefined.
822
69f8cbfa
ZW
8232001-03-06 Zack Weinberg <zackw@stanford.edu>
824
825 * objc/objc-act.c (objc_add_static_instance): Set DECL_INITIAL
826 and DECL_DEFER_OUTPUT on the decl we create, before calling
827 rest_of_decl_compilation.
828
1f50aafb
ZW
8292001-03-06 Zack Weinberg <zackw@stanford.edu>
830
831 * aclocal.m4 (AM_GNU_GETTEXT): Don't AC_REQUIRE
832 AC_FUNC_ALLOCA.
833 * configure, config.in: Regenerate.
834 * config.gcc: Remove references to deleted files.
835
836 * genattr.c, genattrtab.c, genextract.c, genoutput.c,
837 genrecog.c, rtl.c: Do not use alloca anywhere.
838
839 * Makefile.in, build-make, system.h, config/x-interix,
840 config/x-svr4, config/xm-interix.h, config/xm-openbsd.h,
841 config/alpha/xm-alpha.h, config/alpha/xm-vms.h,
842 config/arc/xm-arc.h, config/arm/xm-arm.h,
843 config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
844 config/h8300/xm-h8300.h, config/i370/x-oe,
845 config/i370/xm-linux.h, config/i386/x-aix, config/i386/x-beos,
846 config/i386/x-ncr3000, config/i386/x-sco5,
847 config/i386/xm-dgux.h, config/i860/x-sysv4,
848 config/i960/xm-i960.h, config/m32r/xm-m32r.h,
849 config/m68k/x-crds, config/m68k/x-dpx2, config/m68k/x-hp320,
850 config/m68k/x-hp320g, config/m69k/x-mot3300,
851 config/m68k/x-mot3300-gas, config/m68k/xm-amix.h,
852 config/m68k/xm-hp320.h, config/m68k/xm-m68kv.h,
853 config/m68k/xm-mot3300.h, config/m88k/x-dolph,
854 config/m88k/x-sysv4, config/m88k/x-tekXD88,
855 config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
856 config/mips/x-iris, config/mips/x-iris3,
857 config/mips/x-sni-svr4, config/mips/x-sysv,
858 config/mips/xm-iris6.h, config/mips/xm-mips.h,
859 config/mips/xm-nws3250v4.h, config/pa/x-hpux,
860 config/pa/x-pa-mpeix, config/pa/xm-pa.h,
861 config/pa/xm-pa64hpux.h, config/pa/xm-pahpux.h,
862 config/pa/xm-papro.h, config/romp/xm-romp.h,
863 config/rs6000/x-aix31, config/rs6000/x-aix41,
864 config/rs6000/x-beos, config/rs6000/x-lynx,
865 config/rs6000/x-mach, config/rs6000/x-rs6000,
866 config/rs6000/x-sysv4, config/rs6000/xm-rs6000.h,
867 config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
868 config/sparc/x-sysv4, config/sparc/xm-linux.h,
869 config/sparc/xm-pbd.h, config/sparc/xm-sparc.h,
870 config/vax/xm-vms.h: Eradicate all references to alloca and
871 related stuff.
872
873 * config/xm-alloca.h, config/clipper/x-clix,
874 config/i386/xm-sysv4.h, config/i860/x-fx2800,
875 config/i860/x-sysv3, config/m88k/x-sysv3,
876 config/sparc/xm-sol2.h, config/we32k/x-we32k: Delete
877 (contained only alloca related hacks).
878
879 * config/i386/xm-beos.h, config/rs6000/xm-beos.h: Just define
880 USE_C_ALLOCA.
881
d97b75be
BL
8822001-03-05 Brad Lucier <lucier@math.purdue.edu>
883
884 * invoke.texi: Document __FAST_MATH__.
885
1b5640cd
KG
8862001-03-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
887
888 * crtstuff.c: Restore include of auto-host.h.
889
aa5b94de
FH
8902001-03-05 Fergus Henderson <fjh@cs.mu.oz.au>
891
892 Put main() in a separate file, so that the language
893 front-end can use a different main().
894
895 * main.c: New.
896 * toplev.c: (main): Rename as toplev_main.
897 * toplev.h: Declare toplev_main.
898 * Makefile.in (OBJS): add toplev.o.
899 (BACKEND): remove toplev.o, add main.o.
900
04c8d9b9
NB
9012001-03-04 Neil Booth <neil@daikokuya.demon.co.uk>
902
903 * cppfiles.c (search_from): Special case the empty string.
904
7868b4a2
NB
9052001-03-04 Neil Booth <neil@daikokuya.demon.co.uk>
906
907 * cppfiles.c (_cpp_execute_include): Don't make a null-terminated
908 copy of the filename. Don't use CPP_PREV_BUFFER. Don't call
909 strlen or strcpy; we already know the length.
910 (_cpp_compare_file_date): Similarly.
911 * cpphash.h (struct cpp_reader): Delete done_initialising.
912 (CPP_PREV_BUFFER): Delete.
913 * cppinit.c (cpp_start_read): Don't set done_initialising.
914 * cpplex.c (parse_string): Guarantee null-termination.
915 (_cpp_equiv_toklists): Remove.
916 * cpplib.c (glue_header_name): Null-terminate.
917 (do_line): Don't leak memory.
918 * cpplib.h (BT_WEAK): Delete.
919 * cppmain.c (cb_ident): Strings are now null-terminated.
920
9212001-03-04 Laurynas Biveinis <lauras@softhome.net>
922
923 * gcc.c (convert_filename): Append executable suffix
924 if NO_AUTO_EXE_SUFFIX is not defined.
925 * gcc.texi: Document NO_AUTO_EXE_SUFFIX.
926 * config/i386/djgpp.h: Define NO_AUTO_EXE_SUFFIX.
91c704c4 927
7e7be827 9282001-03-03 David O'Brien <obrien@FreeBSD.org>
1f50aafb 929
7e7be827
DB
930 from 2000-09-06 Zack Weinberg <zack@wolery.cumb.org>
931 * c-parse.gperf, c-gperf.h: Delete.
69f8cbfa
ZW
932 (c-gperf.h was accidently re-added to the CVS repo in the rev
933 1.16 commit by tromey)
7e7be827 934
e8408f25
NB
9352001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
936
937 * cpplex.c (_cpp_lex_token): Don't warn about directives in
938 macro arguments when looking for the '('.
939 * cppmacro.c (funlike_invocation_p): Set parsing_args to
940 2 when really parsing arguments; 1 when looking for '('.
941 Always restore the lexer position.
942
1d67c69a
NB
9432001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
944
945 * longlong.h (umul_ppmm): Don't use a multiline string.
946
f6242907
JDA
9472001-03-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
948
949 * fixinc/fixlib.h (t_bool): Add identifier `t_bool' in typedef.
950 * fixinc/server.c (read_pipe_timeout): Use enum t_bool instead of
951 t_bool in declaration because pcc can't combine volatile with typedef
952 types.
953
bf71a4f8
JH
954Sat Mar 3 19:47:13 CET 2001 Jan Hubicka <jh@suse.cz>
955
956 * i386.c (ix86_expand_fp_compare): Delay creating of scratch register
957 until when it is really needed.
958 (ix86_expand_compare): Update call of ix86_expand_fp_compare.
959 * i386.h (PREDICATE_CODES): Add all codes for sse_comparison_operator
960 * i386.md (float?i?f splitter): Don't force source operand to memory
961 for SSE.
962 (sse_movdfcc): Fix constraint.
963 (sse_movdfcc splitter): Handle properly the second alternative.
964
795a25f4
NB
9652001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
966
20f9202d 967 * cpplex.c (parse_string): Unconditionally pedwarn.
795a25f4 968
c691145a
NB
9692001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
970
20f9202d 971 * cpp.texi: Update.
1f50aafb 972 * cppexp.c (parse_number): Update.
20f9202d
DB
973 * cpplex.c (parse_string): Pedwarn if multiline string does not
974 result from a system header's macro.
975 * cpplib.h (sys_objmacro_p): Rename sys_macro_p.
976 * cppmacro.c (sys_objmacro_p): Rename sys_macro_p. Return true
977 for function-like macros too.
c691145a
NB
978 * c-lex.c (lex_number): Update.
979
e7f4d38a
RH
9802001-03-03 Richard Henderson <rth@redhat.com>
981
982 * dwarf2out.c (output_call_frame_info): Fix augmentation length.
983
5dd3e650
R
984Sat Mar 3 04:17:17 2001 J"orn Rennecke <amylaar@redhat.com>
985
986 * combine.c (try_combine): If split with mode-changed scratch
987 register didn't work, try the original mode.
988
31a02448
R
989Sat Mar 3 03:46:47 2001 J"orn Rennecke <amylaar@redhat.com>
990
991 * tm.texi: Change STRUCT_FORCE_BLK to MEMBER_TYPE_FORCES_BLK.
992 * config/c4x/c4x.h: Likewise.
993 * stor-layout.c (compute_record_mode): Likewise.
994 (layout_type, case ARRAY_TYPE): Use MEMBER_TYPE_FORCES_BLK.
995
eaf4e618
ZW
9962001-03-02 Zack Weinberg <zackw@stanford.edu>
997
998 * configure.in: Kill tm.h. Include the files in the $tm_file
999 list in all three of config.h, hconfig.h, tconfig.h, after the
1000 relevant set of xm_files. Put TARGET_CPU_DEFAULT in all
1001 three, include insn-codes.h in all three (#ifndef GENERATOR_FILE).
1002 * configure: Regenerate.
1003 * Makefile.in (clean): Don't delete tm.h.
1004
1005 * system.h: If SUCCESS_EXIT_CODE and FATAL_EXIT_CODE are not
1006 defined, set them from EXIT_SUCCESS and EXIT_FAILURE. If
1007 those are not defined, set SEC and FEC to 0 and 1.
1008 * gcc.texi: Update to match.
1009
1010 * crtstuff.c: Include tconfig.h, not auto-host.h and tm.h.
1011 * config/fp-bit.c, config/m68k/aux-crt2.asm,
1012 config/m68k/aux-crtn.asm, config/m68k/aux-mcount.c:
1013 Include tconfig.h, not tm.h.
1014
1015 * config/xm-lynx.h, config/xm-std32.h,
1016 config/a29k/xm-a29k.h, config/a29k/xm-unix.h,
1017 config/alpha/xm-alpha.h, config/arc/xm-arc.h,
1018 config/avr/xm-avr.h, config/c4x/xm-c4x.h,
1019 config/clipper/xm-clix.h, config/convex/xm-convex.h,
1020 config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
1021 config/elxsi/xm-elxsi.h, config/fr30/xm-fr30.h,
1022 config/h8300/xm-h8300.h, config/i370/xm-linux.h,
1023 config/i386/xm-i386.h, config/i860/xm-i860.h,
1024 config/i960/xm-i960.h, config/ia64/xm-ia64.h,
1025 config/m32r/xm-m32r.h, config/m68hc11/xm-m68hc11.h,
1026 config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
1027 config/mips/xm-mips.h, config/mn10200/xm-mn10200.h,
1028 config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
1029 config/pa/xm-linux.h, config/pa/xm-pa.h,
1030 config/pa/xm-pa64hpux.h, config/pa/xm-pahpux.h,
1031 config/pa/xm-papro.h, config/pdp11/xm-pdp11.h,
1032 config/pj/xm-pj.h, config/romp/xm-romp.h,
1033 config/rs6000/xm-beos.h, config/rs6000/xm-rs6000.h,
1034 config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
1035 config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
1036 config/v850/xm-v850.h, config/vax/xm-vax.h,
1037 config/we32k/xm-we32k.h:
1038 Don't include tm.h.
1039 Don't define SUCCESS_EXIT_CODE or FATAL_EXIT_CODE.
1040
1041 * config/i370/xm-i370.h, config/i370/xm-mvs.h,
1042 config/i370/xm-oe.h: Don't include tm.h. Don't define
1043 SUCCESS_EXIT_CODE.
1044 * config/vax/xm-vms.h: Don't include tm.h.
1045
1046 * config/xm-lynx.h, config/avr/xm-avr.h,
1047 config/fr30/xm-fr30.h, config/pdp11/xm-pdp11.h,
1048 Delete; made empty by above changes.
1049 * config/i386/xm-lynx.h, config/m68k/xm-lynx.h,
1050 config/rs6000/xm-lynx.h, config/sparc/xm-lynx.h:
1051 Don't include config/xm-lynx.h or tm.h.
1052
1053 * config/xm-gnu.h: Don't include fcntl.h.
1054 * config/sparc/xm-lynx.h: Don't include sys/types.h and
1055 sys/wait.h.
1056 * config/clipper/xm-clix.h, config/vax/xm-vax.h: Don't define isinf.
1057
1a7519ff
RH
10582001-03-02 Richard Henderson <rth@redhat.com>
1059
1060 * tm.texi (File Framework): Document UNALIGNED_SHORT_ASM_OP,
1061 UNALIGNED_INT_ASM_OP, and UNALIGNED_DOUBLE_INT_ASM_OP.
1062
2e4b9b8c
RH
10632001-03-02 Richard Henderson <rth@redhat.com>
1064
1065 * Makefile.in (OBJS): Add dwarf2asm.o.
1066 * dwarf2asm.c, dwarf2asm.h: New files.
1067 * dwarf2out.c (*): Use them.
1068 (size_of_uleb128, size_of_sleb128): Remove.
1069 (output_uleb128, output_sleb128): Remove.
1070 (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Remove.
1071 (UNALIGNED_DOUBLE_INT_ASM_OP, ASM_BYTE_OP): Remove.
1072 (UNALIGNED_OFFSET_ASM_OP, UNALIGNED_WORD_ASM_OP): Remove.
1073 (FDE_LABEL, LINE_NUMBER_BEGIN_LABEL, LINE_NUMBER_END_LABEL): New.
1074 (ASM_OUTPUT_DWARF_DATA1, ASM_OUTPUT_DWARF_DELTA1): Remove.
1075 (ASM_OUTPUT_DWARF_DATA2, ASM_OUTPUT_DWARF_DELTA2): Remove.
1076 (ASM_OUTPUT_DWARF_DATA4, ASM_OUTPUT_DWARF_DELTA4): Remove.
1077 (ASM_OUTPUT_DWARF_DATA, ASM_OUTPUT_DWARF_DELTA): Remove.
1078 (ASM_OUTPUT_DWARF_ADDR, ASM_OUTPUT_DWARF_ADDR_DATA): Remove.
1079 (ASM_OUTPUT_DWARF_ADDR_DELTA, ASM_OUTPUT_DWARF_ADDR_CONST): Remove.
1080 (ASM_OUTPUT_DWARF_OFFSET4, ASM_OUTPUT_DWARF_OFFSET): Remove.
1081 (ASM_OUTPUT_DWARF_CONST_DOUBLE): Remove.
1082 (ASM_OUTPUT_DWARF_NSTRING, ASM_OUTPUT_DWARF_STRING): Remove.
1083 (dwarf2out_frame_debug): Remove unused variables.
1084 (output_loc_operands): Don't abort on 8 byte constants if
1085 host integers are wide enough.
1086 (output_symbolic_ref): Remove.
1087 (size_of_die): Don't assume 4 byte host integers.
1088 (output_line_info): Use ASM_GENERATE_INTERNAL_LABEL for begin
1089 and end labels.
1090 (add_const_value_attribute) [CONST_INT]: Verify we're not doing
1091 something stupid with HOST_WIDE_INT to long truncation.
1092 [CONST_DOUBLE]: Likewise.
1093
1094 * config/arm/conix-elf.h (UNALIGNED_WORD_ASM_OP): Remove.
1095 (ASM_OUTPUT_DWARF2_ADDR_CONST, ASM_OUTPUT_DWARF_ADDR_CONST): Remove.
1096 * config/arm/unknown-elf.h: Likewise.
1097 * config/rs6000/aix.h (UNALIGNED_SHORT_ASM_OP): New.
1098 (UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_INT_ASM_OP): New.
1099 (ASM_OUTPUT_DWARF_ADDR_VAR, ASM_OUTPUT_DWARF_DELTA_VAR): Remove.
1100 (ASM_OUTPUT_DWARF_DELTA2, ASM_OUTPUT_DWARF_DELTA4): Remove.
1101 (ASM_OUTPUT_DWARF_DELTA, ASM_OUTPUT_DWARF_ADDR_DELTA): Remove.
1102 (ASM_OUTPUT_DWARF_ADDR, ASM_OUTPUT_DWARF_DATA4): Remove.
1103 (ASM_OUTPUT_DWARF_DATA2, ASM_OUTPUT_DWARF_OFFSET4): Remove.
1104 (ASM_OUTPUT_DWARF_OFFSET): Remove.
1105 * config/rs6000/sysv4.h (ASM_OUTPUT_DWARF_ADDR): Remove.
1106 * config/sparc/sp64-elf.h (UNALIGNED_DOUBLE_INT_ASM_OP): New.
1107 (UNALIGNED_LONGLONG_ASM_OP, ASM_OUTPUT_DWARF_ADDR): Remove.
1108 (ASM_OUTPUT_DWARF_ADDR_CONST, ASM_OUTPUT_DWARF_REF): Remove.
1109
dc76f41c
JDA
11102001-03-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
1111
1112 * cselib.c (hash_rtx): Cast enums to unsigned int.
1113
dbbbbf3b
JDA
11142001-03-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
1115
1116 * print-rtl.c (print_rtx): Cast enums to int for comparison.
1117 * c-decl.c (grokdeclarator): Cast enums to int for comparison and
1118 shifts.
1119 * c-format.c (C_STD_VER): Cast to int for comparisons.
1120 (check_function_format): Cast various enums to int for &.
1121 (maybe_read_dollar_number): Likewise.
1122 (check_format_info): Likewise.
1123 (check_format_info_main): Likewise.
1124 * expr.c (emit_move_insn_1): Cast enums to unsigned int for comparison.
1125 (safe_from_p): Likewise.
1126 * varasm.c (const_hash): Cast enum to int for %.
1127 * emit-rtl.c (init_emit_once): Use int loop variable to work around
1128 pcc enum problems with < and ++ operators.
1129 * regclass.c (init_reg_sets_1): Cast enums for comparison.
1130 (choose_hard_reg_mode): Use unsigned int to iterate over CCmodes.
1131 (regclass_init): Change enum class to int to iterate over reg_classes.
1132 * genrecog.c (merge_trees): Cast enums for comparison.
1133 * rtl.h (GET_CODE): Cast to enum rtx_code.
1134 (PUT_CODE): Cast to ENUM_BITFIELD(rtx_code).
1135 (GET_MODE): Cast to enum machine_mode.
1136 (PUT_MODE): Cast to ENUM_BITFIELD(machine_mode).
1137 (GET_NOTE_INSN_NAME): Cast enum to int.
1138 * tree.h (TREE_CODE): Cast to enum tree_code.
1139 (TREE_SET_CODE): Cast VALUE to ENUM_BITFIELD(tree_code).
eaf4e618 1140 * timevar.c (timevar_print): Change loop variable id from enum to
dbbbbf3b
JDA
1141 unsigned int.
1142 * fixinc/fixincl.c (VLEVEL): Cast enums in comparison to unsigned int.
1143 * config/i386/i386.md: Use PUT_MODE for mode assignment.
1144 * toplev.c (compile_file): Cast enum DFI to int.
1145 (decode_d_option): Likewise.
1146
4737b274
CF
1147Fri Mar 2 12:18:13 2001 Christopher Faylor <cgf@cygnus.com>
1148
1149 * cppinit.c (append_include_chain): Mark "after" include file name list
1150 as a system directory.
1151 * cpp.texi: Document new behavior.
1152
68af29ce
JH
1153Fri Mar 2 11:59:43 CET 2001 Jan Hubicka <jh@suse.cz>
1154
1155 * ifcvt.c (noce_operand_ok): Handle properly unarry operations.
1156
591e15a1
NB
11572001-03-02 Neil Booth <neil@daikokuya.demon.co.uk>
1158
eaf4e618
ZW
1159 * cppfiles.c (struct include_file): Update.
1160 (stack_include_file): Use search_from.
1161 (cpp_included, find_include_file): Update.
1162 (cpp_execute_include): Update. ptr->name may not be
1163 null terminated. Use the new search_from member variable
1164 of cpp_buffer.
1165 (_cpp_compare_file_date): Similarly.
1166 (search_from): New function, similiar to actual_directory.
1167 (actual_directory): Delete.
1168 (remap_filename): Update. loc->name may not be null terminated.
1169 (struct file_name_list): Rename search_path. Update.
1170 * cpphash.h (struct cpp_buffer): Delete actual_dir. New members
1171 search_from and dir.
1172 (struct cpp_reader): Remove actual_dirs.
1173 * cppinit.c (struct cpp_pending): Update for renamed objects.
1174 (append_include_chain, remove_dup_dir, remove_dup_dirs,
1175 merge_include_chains, cpp_destroy, cpp_start_read): Similarly.
1176 * cpplib.h (struct cpp_options): Similarly.
591e15a1 1177
d6edb99e
ZW
11782001-03-01 Zack Weinberg <zackw@stanford.edu>
1179
1180 * config/xm-lynx.h, config/xm-std32.h, config/a29k/xm-a29k.h,
1181 config/a29k/xm-unix.h, config/alpha/xm-alpha.h,
1182 config/arc/xm-arc.h, config/arm/xm-arm.h, config/c4x/xm-c4x.h,
1183 config/clipper/xm-clix.h, config/convex/xm-convex.h,
1184 config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
1185 config/elxsi/xm-elxsi.h, config/fr30/xm-fr30.h,
1186 config/h8300/xm-h8300.h, config/i370/xm-i370.h,
1187 config/i370/xm-linux.h, config/i370/xm-mvs.h,
1188 config/i370/xm-oe.h, config/i386/xm-aix.h,
1189 config/i386/xm-i386.h, config/i386/xm-osf.h,
1190 config/i860/xm-i860.h, config/i960/xm-i960.h,
1191 config/ia64/xm-ia64.h, config/m32r/xm-m32r.h,
1192 config/m68k/xm-m68k.h, config/m88k/xm-m88k.h,
1193 config/mcore/xm-mcore.h, config/mips/xm-mips.h,
1194 config/mn10200/xm-mn10200.h, config/mn10300/xm-mn10300.h,
1195 config/ns32k/xm-ns32k.h, config/pa/xm-linux.h,
1196 config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
1197 config/pa/xm-pahpux.h, config/pa/xm-papro.h,
1198 config/pj/xm-pj.h, config/romp/xm-romp.h,
1199 config/rs6000/xm-beos.h, config/rs6000/xm-rs6000.h,
1200 config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
1201 config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
1202 config/v850/xm-v850.h, config/vax/xm-vax.h,
1203 config/vax/xm-vms.h, config/we32k/xm-we32k.h:
1204 Do not define TRUE or FALSE.
1205
1206 * config/i386/xm-aix.h, config/i386/xm-osf.h: Delete; made
1207 empty by above change.
1208 * config.gcc: Remove references to these files.
1209
1210 * configure.in: Detect stdbool.h.
1211 * configure, config.in: Regenerate.
eaf4e618 1212 * system.h: Include stddef.h here if available.
d6edb99e
ZW
1213 Set HAVE__BOOL based on GCC_VERSION and __STDC_VERSION__.
1214 Then set up a sensible boolean type at the very end.
1215
1216 * combine.c, cse.c, expr.c, fold-const.c, gensupport.c,
1217 config/mcore/mcore.c: Rename variables named 'true' and/or 'false'.
1218
1219 * hash.h: Delete 'boolean' typedef and related #undefs.
1220
1221 * function.c, ggc-common.c, hash.h, hash.c, tlink.c: Replace
1222 all uses of 'boolean' with 'bool'.
1223
37b8524c
JDA
12242001-03-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
1225
1226 * cpplib.c (_cpp_init_stacks): Cast enum for comparison.
1227 * cppexp.c (lex): Cast enums for comparison.
1228 * cppinit.c (parse_option): Cast enum for comparison.
1229 * cpplex.c (cpp_spell_token): Cast enums to int for minus.
1230 (cpp_output_token): Likewise.
1231 (cpp_can_paste): Cast enums for comparsion and plus/minus.
1232 (cpp_avoid_paste): Cast enums for minus and comparison.
1233
f7143427
ZW
12342001-03-01 Zack Weinberg <zackw@stanford.edu>
1235
1236 * gcc.c, objc/lang-specs.h: Add zero initializer for cpp_spec
1237 field to all array elements.
1238
cb773845
ZW
12392001-03-01 Zack Weinberg <zackw@stanford.edu>
1240
1241 * cpphash.h (struct cpp_reader): Add print_version field.
1242 * cppinit.c (cpp_handle_option): For -v, -version, and --version,
1243 just set print_version and other flags as appropriate.
1244 (cpp_post_options): Print version here if print_version is set.
1245
1246 * toplev.c (exit_after_options): New flag.
1247 (independent_decode_option): Don't exit here; just set
1248 exit_after_options.
1249 (main): Exit after calling lang_hooks.post_options if
1250 exit_after_options is true.
1251
1252 * cppinit.c (append_include_chain): Drop never-used case QUOTE.
1253 (merge_include_chains): Adjust comment to match code.
1254
71b7be38
ZW
12552001-03-01 Zack Weinberg <zackw@stanford.edu>
1256
1257 * stringpool.c (set_identifier): New function.
1258 * tree.h: Prototype it.
1259
1260 * c-parse.in: Kill D_YES. If compiled for objc, call
1261 save_and_forget_protocol_qualifiers from init_reswords.
1262 * objc/objc-act.c (remember_protocol_qualifiers,
1263 forget_protocol_qualifiers): Don't diddle C_IS_RESERVED_WORD.
1264 Swap out the non-keyword IDENTIFIER_NODEs for keyword ones, or
1265 vice versa.
1266 (save_and_forget_protocol_qualifiers): New function.
1267 * c-lex.h: Prototype save_and_forget_protocol_qualifiers.
1268
5aa709ad
DN
12692001-03-01 Diego Novillo <dnovillo@redhat.com>
1270
1271 * c-semantics.c (prune_unused_decls): Return error_mark_node
1272 instead of (tree) 1 to stop traversing the tree chain.
1273
791f5e8d
BS
12742001-03-01 Bernd Schmidt <bernds@redhat.com>
1275
1276 Fix a problem introduced by Kenner's Feb 18 change.
1277 * toplev.c (rest_of_compilation): Disable flag_cse_follow_jumps and
1278 flag_cse_skip_blocks only temporarily, not for ever.
1279
9c1eed37
JL
1280Thu Mar 1 09:49:58 2001 Jeffrey A Law (law@cygnus.com)
1281
913553ce
JL
1282 * config/pa/som.h (ASM_IDENTIFY_GCC): Define.
1283 (ASM_IDENTIFY_GCC_AFTER_SOURCE): Likewise.
1284
9c1eed37
JL
1285 * pa.c (emit_move_sequence): Verify operand0 is a hard register
1286 before determining its register class.
1287
21e4c9a8
BS
12882001-03-01 Bernd Schmidt <bernds@redhat.com>
1289
8cb71435
BS
1290 * config/ia64/ia64.c (ia64_hard_regno_rename_ok): Disallow renaming
1291 from reg 4 if current_function_calls_setjmp.
7a87c39c
BS
1292 (gen_nop_type): New function.
1293 (ia64_emit_nops): New function.
1294 (ia64_reorg): Call it.
2d1b811d 1295 (ia64_sched_reorder): Move code that rotates bundles up a bit.
8cb71435 1296
1abdf5e7
BS
1297 * reload1.c (eliminate_regs_in_insn): Restrict the special case
1298 code not to try to optimize adds with anything but a REG destination.
1299
21e4c9a8
BS
1300 * sched-int.h (struct haifa_insn_data): Add new member priority_known.
1301 (INSN_PRIORITY_KNOWN): New accessor macro.
1302 * haifa-sched.c (priority): Use it instead of testing priority against
1303 zero.
1304
d676911f
DD
13052001-02-28 DJ Delorie <dj@redhat.com>
1306
1307 * config/m68k/m68k.h (MOVE_BY_PIECES_P): Avoid pushing bytes,
1308 since that doesn't work the way gcc wants on a generic m68k.
1309
d448e3e9
RH
13102001-02-28 Richard Henderson <rth@redhat.com>
1311
1312 * caller-save.c (save_call_clobbered_regs): Fix typo in
1313 comparison last change.
1314
b4e89e2d
JH
1315Wed Feb 28 19:31:42 CET 2001 Jan Hubicka <jh@suse.cz>
1316
1317 * i386.c (pentium4_cost): New.
1318 (m_PENT4): New macro.
1319 (x86_push_memory, x86_movx,x86_cmove, x86_deep_branch, x86_use_sahf
1320 x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8
1321 x86_integer_DFmode_moves, x86_partial_reg_dependency,
1322 x86_memory_mismatch_stall): Add Pentium4
1323 (x86_use_q_reg, x86_use_any_reg): Kill.
1324 (override_options): Add pentium4.
1325 (incdec_operand): Return 0 for pentium4.
1326 (ix86_issue_rate): Add PROCESSOR_PENTIUM4 and PROCESSOR_ATHLON.
1327 * i386.h (x86_use_q_reg, x86_use_any_reg): Kill.
1328 (TARGET_PENTIUM4): Define.
1329 (enum processor_type): Add PROCESSOR_PENTIUM4.
1330 (CPP_CPU_DEFAULT_SPEC): Add pentium4 support.
1331 * i386.md (attribute "cpu"): Add pentium4.
1332 * invoke.texi (march): Add pentium4.
1333
0073023d
JH
1334Wed Feb 28 19:28:06 CET 2001 Jan Hubicka <jh@suse.cz>
1335
1336 * i386.md (sse_mov?fcc*): New patterns and splitters.
1337 * i386.c (ix86_expand_movcc): Work post-reload; recognize
1338 the SSE based conditional moves.
1339
2b04e52b
JH
1340Wed Feb 28 19:18:23 CET 2001 Jan Hubicka <jh@suse.cz>
1341
1342 * i386.md (attribute mode): Add "TI".
1343 (movsf_1): Add pxor support; remove constant propagation splitter.
1344 (movdf_integer): Likewise.
1345 (movdf_nointeger): Likewise.
1346 (movxf constant prop splitter): Handle all modes; update for SSE.
1347 * i386.h (CONST_DOUBLE_OK_FOR_LETTER): Add 'H' for SSE constants.
1348 * i386.c (standard_80387_constant_p): Rewrite.
1349 (standard_sse_constant_p): New.
1350 * i386-protos.h (standard_sse_constant_p): New.
1351
a46d1d38
JH
1352Wed Feb 28 19:05:37 CET 2001 Jan Hubicka <jh@suse.cz>
1353
1354 * i386.md (sse_setccsf, sse_setccdf): New.
1355 (sse_cmp* patterns): Use '%D' instead of outputtting condition
1356 flag directly.
1357 * i386.c (sse_comparison_operator): Accept the supported unordered
1358 comparses; be ready for fast_math.
1359 (print_operand): Support 'D'.
1360
91afe941
JH
1361Wed Feb 28 18:54:51 CET 2001 Jan Hubicka <jh@suse.cz>
1362
1363 * jump.c (reversed_comparison_code): Kill.
1364
6f45f005
JH
1365Wed Feb 28 18:50:15 CET 2001 Jan Hubicka <jh@suse.cz>
1366
1367 * toplev.c (rest_of_compilation): Do post-reload splitting unconditionally
1368 for STACK_REGS
1369
c679d048
JH
1370Wed Feb 28 18:47:37 CET 2001 Jan Hubicka <jh@suse.cz>
1371
1372 * i386.md (sse_andti3, sse_nandti_3, sse_xorti3): Add SSE2 versions;
1373 add missing '%' in constraints.
1374
4ae31003
JH
1375Wed Feb 28 17:24:24 CET 2001 Jan Hubicka <jh@suse.cz>
1376
1377 * c-common.c (build_common_tree_nodes): Build intTI_type_nodes
1378 for HOST_BITS_PER_WIDE_INT == 32 too.
1379
787dc842
JH
1380Wed Feb 28 17:22:35 CET 2001 Jan Hubicka <jh@suse.cz>
1381
1382 * caller-save.c (reg_save_code, reg_restore_code): Index by mode, not
1383 NREGS.
1384 (insert_save, insert_restore): New parameter save_mode.
1385 (init_caller_save): Update initialization of reg_save_code
1386 and reg_restore_code.
1387 (save_call_clobbered_regs): Compute save_modes and update calls to
1388 reg_save_code and reg_restore_code.
1389 (insert_restore): Unsignetize numbers; use save_modes to choose mode
1390 of spill; update use of reg_restore_code.
1391 (insert_save): Likewise.
1392 * i386.h (HARD_REGNO_CALLER_SAVE_MODE): Update.
1393 * c4x.h (HARD_REGNO_CALLER_SAVE_MODE): Update.
1394 * regs.h (HARD_REGNO_CALLER_SAVE_MODE): Likewise.
1395
1396Wed Feb 28 17:19:28 CET 2001 Jan Hubicka <jh@suse.cz>
dc2698bc
JH
1397
1398 * ifcvt.c (noce_emit_store_flag, noce_try_store_flag_constants,
1399 noce_try_store_flag_inc, noce_try_store_flag_mask,
1400 noce_try_cmove_arith):
1401 Use reversed_comparison_code instead of reverse_comparison and
1402 can_reverse_comparison_p.
1403
2450703c
JH
1404Wed Feb 28 17:17:29 CET 2001 Jan Hubicka <jh@suse.cz>
1405
1406 * jump.c (reversed_comparison_code_parts): Allow reversal of
1407 unordered compares in -ffast-math mode; reverse ordered compares
1408 for FP even w/o -ffast-math.
1409
25cff714
RH
14102001-02-27 Richard Henderson <rth@redhat.com>
1411
1412 * print-rtl.c (print_rtx) [i]: Don't print field five on
1413 NOTEs other than NOTE_INSN_DELETED_LABEL.
1414
26029fe2
ZW
14152001-02-27 Zack Weinberg <zackw@stanford.edu>
1416
1417 * mips/xm-iris4.h: Delete #if 0 block (there since before 1997).
1418 * pa/xm-linux.h, pa/xm-pa.h, pa/xm-papro.h: Don't declare errno.
1419
87aee676
DN
14202001-02-27 Diego Novillo <dnovillo@redhat.com>
1421
1422 * c-common.c (walk_stmt_tree): Visit the chain of the current tree
1423 even if walk_subtrees is 0.
1424 * c-semantics.c (prune_unused_decls): Return a non-null value to
1425 stop traversing the tree chain.
1426
67935d3f
DD
14272001-02-27 DJ Delorie <dj@redhat.com>
1428
1429 * config/m68k/m68k.c (output_function_prologue): Save the new CFA
1430 register, *then* define it as the new CFA.
1431
7ee72796
JL
1432Tue Feb 27 16:49:13 2001 Jeffrey A Law (law@cygnus.com)
1433
1434 * pa.c (override_options): Promote -fpic to -fPIC.
1435 (legitimize_pic_address): Simplify due to removal of
1436 small PIC as a code generation option.
1437 (secondary_reload_class): Similarly.
1438 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Similarly.
1439 (PRINT_OPERAND_ADDRESS): Similarly.
1440 * pa.md (various patterns): Similarly.
1441 (small pic lo_sum pattern): Remove.
1442
b71b019a
JH
1443Tue Feb 27 16:01:13 CET 2001 Jan Hubicka <jh@suse.cz>
1444 Fergus Henderson
1445
1446 * md.texi (min, max): Document
d6edb99e 1447
79005df5
JH
1448Tue Feb 27 15:51:35 CET 2001 Jan Hubicka <jh@suse.cz>
1449
1450 * i386.md (movsf, movdf): Use movaps for reg-reg moves if
1451 TARGET_PARTIAL_REG_DEPENDENCY.
1452 (truncdfsf2_1_sse, truncdfsf2_2): Penalize the fpreg->mem case.
1453
7ada6625
JH
1454Tue Feb 27 15:36:48 CET 2001 Jan Hubicka <jh@suse.cz>
1455
1456 * i386.md (mins*, maxs*): New patterns, expanders and splitters.
1457
8bb3dc77
JO
14582001-02-26 Jeffrey Oldham <oldham@codesourcery.com>
1459
1460 * mips.c (mips_make_temp_file): Fix thinko in last change.
1461
ac4cdf40
JE
14622001-02-26 Jason Eckhardt <jle@redhat.com>
1463
1464 * combine.c (known_cond): Do not reverse the condition when
d6edb99e 1465 SMAX/UMAX is being considered and the condition is for equality
ac4cdf40
JE
1466 or inequality.
1467
1468 * testsuite/gcc.c-torture/execute/20010221-1.c: New test.
1469
14879e76
PB
14702001-02-26 Philip Blundell <philb@gnu.org>
1471
1472 * config.gcc: Remove obsolete targets "arm*-*-linuxoldld" and
1473 "armv2-*-linux".
1474 * config/arm/linux-elf.h: Remove historical relics related to
1475 above configurations.
1476 * config/arm/linux-oldld.h: Delete.
1477 * config/arm/linux-elf26.h: Delete.
1478
8cf8d8a2
JM
14792001-02-26 Jason Merrill <jason@redhat.com>
1480
1481 * c-decl.c (finish_decl): Set DECL_DEFER_OUTPUT on tentative file-scope
1482 definitions.
1483 * toplev.c (rest_of_decl_compilation): Check DECL_DEFER_OUTPUT to
1484 recognize a tentative definition. Lose obsolete code.
1485
1486 * toplev.c (wrapup_global_declarations): Don't emit DECL_COMDAT
1487 variables unless necessary, either.
1488
05cc23e8
RH
14892001-02-25 Richard Henderson <rth@redhat.com>
1490
1491 * ifcvt.c (struct noce_if_info): Add test_bb.
1492 (noce_get_alt_condition): New.
1493 (noce_try_minmax, noce_try_abs): New.
1494 (noce_operand_ok): New.
1495 (noce_process_if_block): Use them.
1496 * rtlanal.c (may_trap_p): NEG and ABS can never trap.
1497
052d4b6c
CF
1498Sun Feb 25 14:26:17 2001 Christopher Faylor <cgf@cygnus.com>
1499
1500 * config/i386/cygwin.h (CPP_SPEC): Add missing space before w32api
1501 include.
1502
e1b71de9
ZW
15032001-02-25 Zack Weinberg <zackw@stanford.edu>
1504
1505 * config.gcc: Put back pa/t-openbsd and rs6000/t-openbsd.
1506 * config/mips/mips.c (mips_make_temp_file): Set temp_filename
1507 properly.
1508 (mips_asm_file_end): Free temp_filename here.
1509
4ddb47b3
RK
1510Sun Feb 25 08:34:23 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1511
397be6cf
RK
1512 * config/i386/i386-protos.h (ix86_set_move_mem_attrs): Move decl.
1513 * config/i386/i386.c (ix86_set_move_mem_attrs_1): Fix typo.
1514
4ddb47b3
RK
1515 * config/i386/i386.md (movstrsi): Handle FAIL case.
1516
618cdda7
NB
15172001-02-25 Neil Booth <neil@daikokuya.demon.co.uk>
1518
05cc23e8
RH
1519 * cppinit.c (builtin_array): Update.
1520 (init_builtins): Flag builtins to warn if redefined or
1521 undefined. Define __GXX_WEAK as a normal macro.
1522 * cpplib.c (do_undef): Warn if flagged NODE_WARN.
1523 * cpplib.h (NODE_WARN): New flag.
1524 * cppmacro.c (builtin_macro): Remove handling of __GXX_WEAK__.
1525 Handle __STDC__ as a builtin only on Solaris.
1526 (warn_of_redefinition): Renamed from check_macro_definition.
1527 Reverse sense of test. Always warn if NODE_WARN.
1528 (_cpp_create_definition): Use warn_of_redefinition. Flag
1529 any macro beginning with "__STDC_" to require a mandatory
1530 warning if redefined or undefined.
618cdda7 1531
000b5f54
ZW
15322001-02-24 Zack Weinberg <zackw@stanford.edu>
1533
1534 * xm-interix.h, xm-lynx.h, alpha/xm-vms.h, convex/xm-convex.h,
1535 i370/xm-i370.h, i370/xm-linux.h, i370/xm-mvs.h, i370/xm-oe.h,
1536 i386/xm-beos.h, i386/xm-dos.h, i386/xm-mingw32.h,
1537 i860/xm-i860.h, m68k/xm-3b1.h, m68k/xm-amix.h, m68k/xm-aux.h,
1538 m68k/xm-crds.h, m68k/xm-mot3300.h, m88k/xm-sysv3.h,
1539 mips/xm-mips.h, rs6000/xm-beos.h, vax/xm-vms.h:
1540 Don't define any of:
1541 USE_PROTOTYPES, vfork, mktemp, SVR3, NO_SYS_PARAMS_H,
1542 P_tmpdir, MVS, NO_DBX_FORMAT, USE_STDARGS, STDC_HEADERS,
1543 NO_PRECOMPILES, i860, __PTR_TO_INT, __INT_TO_PTR, rindex,
1544 index, FULL_PROTOTYPES, AUX, R_OK, W_OK, X_OK, F_OK,
1545 STACK_DIRECTION, MIPS, MAX_READ_LEN, MAX_WRITE_LEN.
1546
1547 * alpha/xm-alpha.h, clipper/xm-clix.h, d30v/xm-d30v.h,
1548 fr30/xm-fr30.h, i370/xm-linux.h: Remove commented-out macro
1549 definitions.
1550
1551 * m68k/xm-3b1.h, m68k/xm-crds.h, m88k/xm-sysv3.h:
1552 Delete now-empty file.
1553
1554 * alpha/vms.h: Define NEED_ATEXIT here...
1555 * alpha/xm-vms.h: ...not here.
1556
1557 * i386/cygwin.h: Don't define PARAMS.
1558 * mips/mips.c: Don't prototype mktemp. Don't define
1559 P_tmpdir. Use make_temp_file to create temporary files.
1560 Don't be clever and delete temporary files early.
1561 * config.gcc: Drop references to deleted files. Don't define
1562 FULL_PROTOTYPES.
1563 * gcc.texi: Don't mention USE_PROTOTYPES.
1564
0e4970d7
RK
1565Sat Feb 24 20:25:29 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1566
1567 * config/i386/i386.c (ix86_set_move_mem_attrs): New function.
1568 (ix86_set_move_mem_attrs_1): Likewise.
1569 * config/i386/i386-protos.h (ix86_set_move_mem_attrs): New declaration.
1570 * config/i386/i386.md (movstrsi): Call it.
1571
a59b81be
ZW
15722001-02-24 Zack Weinberg <zackw@stanford.edu>
1573
1574 * config.gcc: Expunge references to alpha/t-pe, pa/t-openbsd,
1575 x-linux-aout, i386/t-go32, t-osf, m68k/x-m68kv,
1576 ns32k/xm-netbsd.h, rs6000/t-openbsd, rs6000/t-xnewas,
1577 rs6000/x-aix41-gld. These are nonexistent, empty, or obsolete.
1578
1579 (i750a-*-*): Error here if hosting on i750a.
1580 (alpha*-*-winnt*, ix86-*-winnt3*): Remove stanzas entirely.
1581
1582 * x-linux-aout, xm-freebsd.h, i386/beos-pe.h, ns32k/xm-netbsd.h:
1583 Remove (empty modulo comments).
1584
1585 * 1750a/xm-1750a.h, alpha/config-nt.sed, alpha/win-nt.h,
1586 alpha/xm-winnt.h, i386/config-nt.sed, i386/os2.h,
1587 i386/t-winnt, i386/win-nt.h, i386/xm-freebsd.h, i386/xm-os2.h,
1588 i386/xm-winnt.h, m68k/x-alloca-c, m88k/x-dguxbcs,
1589 mips/x-netbsd, mips/x-nws3250v4, rs6000/t-xnewas,
1590 rs6000/t-xrs6000, rs6000/xm-cygwin.h: Remove (obsolete)
1591
1592 * i386/crtdll.h, i386/cygwin.h, i386/mingw32.h:
1593 Remove reference to winnt.h in comment.
1594 * rs6000/t-newas, rs6000/t-rs6000: Override LIBGCC1_TEST to null.
1595
c7b30677
FS
15962001-02-24 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
1597
1598 * loop.c (check_dbra_loop): A biv has uses besides counting if it is
1599 used to set another biv.
1600
f900ecd8
RK
1601Sat Feb 24 06:45:21 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1602
bd015d37
RK
1603 * tree.h (BLOCK_DEAD): New macro.
1604 (struct tree_block): New flag, dead_flag.
1605 * print-tree.c (print_node, case 'b'): Print missing fields.
1606 * emit-rtl.c (remove_unnecessary_notes): Set BLOCK_DEAD.
1607 * function.c (identify_blocks): Enable test for misplaced notes.
1608 (all_blocks): Skip BLOCK_DEAD blocks.
1609 * integrate.c (integrate_decl_tree): Likewise.
1610
f900ecd8
RK
1611 * errors.c (internal_error, trim_filename): New functions.
1612 (fancy_abort): Call internal_error.
1613 * errors.h (internal_error, trim_filename): New declarations.
1614
0651fbc0
AO
16152001-02-24 Alexandre Oliva <aoliva@redhat.com>
1616
1617 * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Reverted
1618 2000-08-26's patch.
1619 (EXTRA_CONSTRAINT): Formatting changes.
1620
5ea1bc0e
KG
16212001-02-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1622
1623 * rtl.c (rtl_check_failed_code2): Fix typo in last change.
1624
1aed31b6
PB
16252001-02-23 Per Bothner <per@bothner.com>
1626
1627 * gcc.c (record_temp_file, pfatal_with_name, error): Make non-static,
1628 so they can be called from java/jvspec.c.
1629 * gcc.h (record_temp_file, pfatal_with_name, error): Declare.
1630
4dd2ac2c
JH
1631Sat Feb 24 03:32:50 CET 2001 Jan Hubicka <jh@suse.cz>
1632
1633 * i386.c (ix86_frame): New structure.
1634 (ix86_compute_frame_size): Kill.
1635 (ix86_compute_frame_layout): New.
1636 (ix86_save_reg): New.
1637 (ix86_can_use_return_insn_p): Use frame layout stuff.
1638 (ix86_expand_prologue): Likewise.
1639 (ix86_expand_epilogue): Likewise.
1640 (ix86_initial_elimination_offset): Likewise.
1641 (ix86_nsaved_regs): Use ix86_save_reg.
1642 (ix86_emit_save_regs): Likewise.
1643
a686dbf8
JH
1644Sat Feb 24 03:30:38 CET 2001 Jan Hubicka <jh@suse.cz>
1645
1646 * flow.c (find_sub_basic_blocks): New function.
1647 (split_block): Be ready for basic block introduced by CODE_LABEL.
1648 (commit_one_edge_insertion): Call find_sub_basic_block.
1649
1650 * flow.c (make_edges): Add edge from entry for blocks starting with
1651 label having ALTERNATE_NAME
1652
016030fe
JH
1653Sat Feb 24 03:19:42 CET 2001 Jan Hubicka <jh@suse.cz>
1654
1655 * function.c (epilogue_done): Be ready for first basic block not
1656 containing PROLOGUE_END note.
1657 (reposition_prologue_and_epilogue_notes): Avoid placing
1658 PROLOGUE_END note between BASIC_BLOCK.
1659
c9212f33
JH
1660Sat Feb 24 03:17:09 CET 2001 Jan Hubicka <jh@suse.cz>
1661
1662 * loop.c (canonicalize_condition): Move to reversed_comparison_code.
1663
4f0a3098
DD
16642001-02-21 DJ Delorie <dj@redhat.com>
1665
1666 * config/i960/i960.h (FRAME_POINTER_REQUIRED): Revert removal of
1667 check for current_function_has_nonlocal_goto from 1999-11-12.
1668
e82a84c4
RK
1669Fri Feb 23 15:28:39 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1670
fce687f8
RK
1671 * diagnostic.c (trim_filename): No longer static.
1672 * toplev.h (trim_filename): Declare.
1673 * rtl.c (rtl_check_failed_bounds): Call internal_error.
1674 (rtl_check_failed_type1, rtl_check_failed_type2): Likewise.
1675 (rtl_check_failed_code1, rtl_check_failed_code2): Likewise.
1676 (rtvec_check_failed_bounds): Likewise.
1677 * tree.c (tree_check_failed, tree_class_check_failed): Likewise.
1678
3cc247a8
RK
1679 * convert.c (convert_to_integer): Don't do unsigned unless result or
1680 both inputs are unsigned.
1681
ac50176d
RK
1682 * fold-const.c (fold_convert): Don't call size_int_type_wide if
1683 input overflows.
1684
9b58f739
RK
1685 * c-decl.c (set_block): Set NAMES and BLOCKS from BLOCK.
1686
e82a84c4
RK
1687 * varasm.c (output_constant): Recompute CODE after lang-specific fn.
1688
d5d063d7
JO
16892001-02-23 Jeffrey Oldham <oldham@codesourcery.com>
1690
1691 * Makefile.in (resource.o): Add params.h dependence.
1692 * params.def (MAX_DELAY_SLOT_LIVE_SEARCH): New parameter.
1693 * params.h (MAX_DELAY_SLOT_LIVE_SEARCH): Likewise.
1694 * resource.c: Add dependence on params.h.
1695 (current_live_regs): Fix explanatory comment.
1696 (find_basic_block): Add new parameter to permit limiting search
1697 for a BARRIER.
1698 (mark_target_live_regs): Add new argument to find_basic_block call.
1699 (incr_ticks_for_insn): Likewise.
1700
3d7c9b7e
GDR
17012001-02-23 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
1702
1703 * diagnostic.c (output_to_stream): Rename to
1704 output_buffer_to_stream. Loses the stream parameter.
1705 (init_output_buffer): Set diagnosic_buffer's stream.
1706 (flush_diagnostic_buffer): Adjust.
1707 (default_print_error_function): Likewise.
1708 (finish_diagnostic): Likewise.
1709 (verbatim): Likewise.
1710
1711 * diagnostic.h (struct output_buffer): Add `stream' field.
1712 (output_buffer_attached_stream): New macro.
1713
fba2c0cd
JJ
17142001-02-23 Jakub Jelinek <jakub@redhat.com>
1715
1716 * fold-const.c (extract_muldiv) [case PLUS_EXPR]: If not MULT_EXPR,
1717 check if either operand is divisible by C.
1718 (multiple_of_p): Handle LSHIFT_EXPR with small constant shift.
1719 If type is signed, consider negative numbers as well.
1720
515edc9b
RH
17212001-02-22 Richard Henderson <rth@redhat.com>
1722
1723 * config/ia64/crtbegin.asm (.fini): Use pc-relative relocs to
1724 reach .text instead of gp-relative relocs.
1725 * config/ia64/crtend.asm (.init): Likewise.
1726
3844cd2e
AJ
17272001-02-22 Andreas Jaeger <aj@suse.de>
1728
1729 * extend.texi (C++ Attributes): Fix typo.
1730
3f67ac08
DM
17312001-02-21 David Mosberger <davidm@hpl.hp.com>
1732
1733 * config/ia64/ia64.c (ia64_epilogue_uses): For syscall_linkage
1734 functions, drop current_function_args_info.words test.
1735 (ia64_compute_frame_size): Mark syscall_linkage functions as
1736 using eight input registers.
1737
89647e8a
LR
17382001-02-21 Loren J. Rittle <ljrittle@acm.org>
1739 Bruce Korb <bkorb@gnu.org>
1740
1741 * fixinc/inclhack.def (freebsd_gcc3_breakage): new fix
1742 * fixinc/README: Document how to convert sed substitutions
1743 to format style c_fix-es.
1744 * fixinc/fixincl.x: regen
1745
e889f41a
JO
17462001-02-21 Jeffrey D. Oldham <oldham@codesourcery.com>
1747
1748 * gcc.c: Add comment explaining how to add a command-line option.
1749 Add title to specs language comment.
1750
7521b913
JO
17512001-02-21 Jeffrey Oldham <oldham@codesourcery.com>
1752
1753 * gcc.c (cc1_options): Add "-param".
1754 (DEFAULT_WORD_SWITCH_TAKES_ARG): Likewise.
1755 (option_map): Likewise.
1756 * toplev.c (display_help): Add entry for "--param".
1757 (independent_decode_option): Fix typographical error.
1758
82a127a9
CM
1759Wed Feb 21 18:57:28 CET 2001 Catherine Moore <clm@redhat.com>
1760 Bernd Schmidt <bernds@redhat.com>
1761 Jan Hubicka <jh@suse.cz>
1762
a59b81be 1763 * i386.c (function_arg_advance): Pass SSE arguments in registers.
82a127a9
CM
1764 (function_arg): Likewise.
1765
2b71bf37
JH
1766Wed Feb 21 18:12:41 CET 2001 Jan Hubicka <jh@suse.cz>
1767
1768 * i386.md (mmx_lshrdi3, mmx_ashldi3): Guard by unspec.
1769
eb57ffec
KH
17702001-02-21 Kazu Hirata <kazu@hxi.com>
1771
1772 * config/h8300/h8300.md (iorsi3): Do not output an extra newline
1773 character.
1774 (xorsi3): Likewise.
1775
ccfce8d2
JH
1776Wed Feb 21 17:35:24 CET 2001 Jan Hubicka <jh@suse.cz>
1777
1778 * flow.c (init_propagate_block_info): Canon address and use single_set
1779 for killing dead memory stores.
1780
0443f602
JO
17812001-02-21 Jeffrey Oldham <oldham@codesourcery.com>
1782
1783 * Makefile.in (reorg.o): Add params.h dependence.
1784 * params.def: Fix typographical error in comment.
1785 (MAX_DELAY_SLOT_INSN_SEARCH): New parameter.
1786 * params.h: Modify introductory comment.
1787 (MAX_DELAY_SLOT_INSN_SEARCH): New parameter.
1788 * reorg.c: Add dependence on params.h.
1789 (redundant_insn): Add parameterized throttle for search.
1790 (fill_simple_delay_slots): Add a comment explaining a variable.
1791 Move conditional out of loop, simplifying code.
1792 (fill_eager_delay_slots): Fix typographical error in comment.
1793
7e6d8ba1
AH
17942001-02-20 Aldy Hernandez <aldyh@redhat.com>
1795
a59b81be 1796 * tm.texi (REVERSE_CONDEXEC_PREDICATES_P): New macro documentation.
7e6d8ba1 1797
a59b81be
ZW
1798 * flow.c (ior_reg_cond): Use REVERSE_CONDEXEC_PREDICATES_P macro.
1799 (REVERSE_CONDEXEC_PREDICATES_P): Define macro.
7e6d8ba1 1800
5daf7c0a
JM
18012001-02-21 Jason Merrill <jason@redhat.com>
1802
1803 * tree.h (DECL_UNINLINABLE): Move from C++ frontend.
1804 (struct tree_decl): Add uninlinable bitfield.
1805 * c-decl.c (duplicate_decls): Set it.
1806 * integrate.c (function_cannot_inline_p): Check it.
1807
3844cd2e 1808 * dwarf2out.c (add_name_and_src_coords_attributes): Don't add
5daf7c0a
JM
1809 DW_AT_MIPS_linkage_name to abstract methods.
1810 (dwarf2out_abstract_function): Emit class context before calling
1811 set_decl_abstract_flags. Don't clear DECL_ABSTRACT.
1812 (gen_subprogram_die): Remove obsolete code.
1813 (gen_member_die): Don't include clones in the member list.
1814 (gen_decl_die): Emit abstract info for clone origin.
1815 * dwarfout.c (output_type): Don't include clones in the member list.
1816 * dbxout.c (dbxout_type_methods): Ignore abstract methods.
1817 * toplev.c (note_deferral_of_defined_inline_function): Don't clear
1818 DECL_ABSTRACT on a function that already has it set.
1819
1820 * dwarf2out.c (gen_formal_types_die): Also accept a FUNCTION_DECL.
1821 (get_subprogram_die): Pass it in.
1822
3c88f366
RE
18232001-02-21 Richard Earnshaw <rearnsha@arm.com>
1824
1825 * flow.c (mark_set_1): Make not_dead unsigned long. For
3844cd2e 1826 non-pseudos, use it as a bitmask of the hard regs that
3c88f366
RE
1827 don't die.
1828
373e2177
NB
18292001-02-21 Neil Booth <neil@daikokuya.demon.co.uk>
1830
a59b81be
ZW
1831 * cppfiles.c: Update comments.
1832 (_cpp_read_file): Don't check for NULL filenames any more.
1833 * cppinit.c (cpp_start_read): Don't do canonicalization of
1834 in_fname and out_fname. Use the passed file name exclusively.
1835 (_cpp_handle_options): Don't treat "-" as a command line option,
1836 but as a normal filename.
1837 (_cpp_post_options): Canonicalize in_fname and out_fname.
1838 * cppmain.c (printer_init): Don't check out_fname for NULL.
1839 * c-lex.c (orig_filename): Rename cpp_filename for clarity.
1840 (init_c_lex): Update, and use "" to represent stdin to CPP.
1841 (yyparse): Update.
373e2177 1842
75beacf8 18432001-02-20 Will Cohen <wcohen@redhat.com>
3844cd2e 1844
75beacf8
WC
1845 * config/pa/quadlib.c (_U_Qfcnvfxt_quad_to_usgl): New function.
1846 * config/pa/long_double.h (FIXUNS_TRUNCTFSI2_LIBCALL): Added.
1847 (INIT_TARGET_OPTABS): Use FIXUNS_TRUNCTFSI2_LIBCALL for
1848 fixunstfsi_libfunc.
1849
33011c35
SS
18502001-02-20 Stan Shebs <shebs@apple.com>
1851
1852 * config/rs6000/rs6000.c (output_cbranch): Output branches
1853 on separate lines instead of using ';' to separate.
1854
c740cee2
NB
18552001-02-20 Neil Booth <neil@daikokuya.demon.co.uk>
1856
a59b81be 1857 * cppinit.c (set_lang): Move builtin handling to...
c740cee2
NB
1858 (init_builtins): ...here.
1859 (_cpp_create_reader): Move call to set_lang.
1860
c9407e4c
MM
18612001-02-20 Mark Mitchell <mark@codesourcery.com>
1862
1863 * stmt.c (expand_return): If an attempt is made to return the
1864 error_mar_node, treat the return like a return without a value.
1865
cd5a58e5
ZW
18662001-02-19 Zack Weinberg <zackw@stanford.edu>
1867
1868 * sibcall.c (skip_copy_to_return_value): Call
1869 identify_call_return_value here, and return orig_insn if it
1870 returns zero. Hardret and softret arguments now unnecessary.
1871 (call_ends_block_p): Don't call identify_call_return_value here.
1872
1873 * ggc-common.c (ggc_mark_rtx_children): No need to mark 'S' or
1874 's' slots in RTXen.
1875 * ggc-page.c, ggc-simple.c (ggc_mark_if_gcable): Delete function.
1876 * ggc.h (ggc_mark_if_gcable): Delete prototype.
1877
f8eb41cc
JL
1878Mon Feb 19 20:30:16 2001 Jeffrey A Law (law@cygnus.com)
1879
1880 * pa.c (move_operand): Accept code to load the address of a
1881 symbol out of the DLT as a valid move operand.
1882 (print_operand, case 'A'): New to handle generating a DLT
1883 reference for a LO_SUM expression.
1884 * pa.h (EXTRA_CONSTRAINT): Handle 'A' for DLT LO_SUM references.
1885 * pa.md (movsi, movdi patterns): Allow DLT LO_SUM references.
1886
75393169
JM
18872001-02-19 Joseph S. Myers <jsm28@cam.ac.uk>
1888
1889 * README, cpp.texi, gcc.texi, version.c: Update version number to
1890 3.1.
1891 * cpp.1, gcov.1, gcc.1: Regenerate.
1892
51d0f328
NB
18932001-02-19 Neil Booth <neil@daikokuya.demon.co.uk>
1894
a59b81be
ZW
1895 * cppfiles.c (stack_include_file): Generate dependencies
1896 here, and manage include_count here too.
1897 (PRINT_THIS_DEP): Delete.
1898 (_cpp_execute_include): Do not generate dependencies here,
1899 apart from the case of a missing header. Do not manage
1900 include_count.
1901 (_cpp_read_file): Leave dependency generation to
1902 stack_include_file.
51d0f328 1903
c81460e4
JL
1904Mon Feb 19 10:17:47 2001 Jeffrey A Law (law@cygnus.com)
1905
1906 * config.gcc (hppa*64*-*-hpux11*): Add MASK_GAS to
1907 target_cpu_default. Remove dead assignment to
1908 target_cpu_default.
1909
6df26b8f
JH
1910Mon Feb 19 16:47:39 CET 2001 Jan Hubicka <jh@suse.cz>
1911
1912 * regclass.c (contains_reg_of_mode): Make global.
1913 (init_reg_sets): Remove contains_reg_of_mode; take into account
1914 CLASS_MAX_NREGS when looking for the proper mode.
1915 (dump_regclass): Dump only classes considered for the pseudo.
1916 (regclass): Use contains_reg_of_mode.
1917
4a88a060
JH
1918Mon Feb 19 16:45:42 CET 2001 Jan Hubicka <jh@suse.cz>
1919
1920 * gcc.c (do_spec_1): 'n' for printing notices.
1921 * i386.h (CC1_CPU_SPEC): Notice deprecated options as deprecated.
1922
0eac0e81
JH
1923Mon Feb 19 15:51:30 CET 2001 Jan Hubicka <jh@suse.cz>
1924
1925 * reg-stack.c (next_flags_user): Use current_block->end
1926 (swap_rtx_condition): Look for next user if flags don't die;
1927 give up on CALL_INSNs; use current_block->end.
1928
e5c617ff
RK
1929Mon Feb 19 08:27:21 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1930
1931 * sibcall.c (call_ends_block_p): New function.
1932 (optimize_sibling_and_tail_recursive_call): Use it.
1933
55de49e3
KH
19342001-02-18 Kazu Hirata <kazu@hxi.com>
1935
63a262f1
KH
1936 * config/h8300/h8300.md: Update copyright.
1937 (andsi3): Do not output an extra newline character.
55de49e3 1938
48aba75b
RK
1939Sun Feb 18 15:45:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1940
1941 * toplev.c (note_deferral_of_defined_inlined_function): Argument
1942 FNDECL may be unused.
1943
1944 * toplev.c (rest_of_compilation): Don't have CSE skip blocks or
1945 follow jumps after first run.
1946 If -fexpensive-optimizations rerun CSE after GCSE and iterate until
1947 it doesn't change any jumps.
1948
3335f1d9
JL
1949Sun Feb 18 17:05:50 2001 Jeffrey A Law (law@cygnus.com)
1950
1951 * Makefile.in (rtlanal.o): Depend on hard-reg-set.h.
1952 ($HOST_PREFIX_1)rtlanal.o: Remove rules for building
1953 (mostlyclean): Corresponding changes.
1954 * rtlanal.c (hard-reg-set.h): Include.
1955 (rtx_unstable_p): Do not treat the argument pointer specially
1956 if it is not a fixed register.
1957 (rtx_varies_p, rtx_addr_can_trap_p): Similarly.
1958
651a788e
RK
1959Sun Feb 18 15:45:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1960
021921d0
RK
1961 * sibcall.c (optimize_sibling_and_tail_recursive_call): Compare
1962 against last real insn in basic block.
1963 Rework to avoid gotos.
1964
fb0c0a12
RK
1965 * Makefile.in (gcse.o): Now includes ggc.h.
1966 * gcse.c: Include ggc.h.
1967 (want_to_gcse_p): Verify expression can be in SET as valid insn.
1968 (try_replace_reg): Remove warning of uninitialize variable.
1969 (process_insert_insn): Call invalid_insn_p to validate insn.
1970 * recog.c (insn_invalid_p): Now global.
1971 See if can make valid by adding CLOBBERs of SCRATCH only and do if so.
1972 * recog.h (insn_invalid_p): New declaration.
1973
d659de97
RK
1974 * jump.c (jump_optimize_1): Only define reversed_code #ifdef HAVE_trap.
1975
3ec6f1a9 1976 * config/sparc/sparc.c (eligible_for_epilogue_delay): Don't put
20636516 1977 assignments from FP constants since 'Y' output code can't handle it.
3ec6f1a9
RK
1978 (eligible_for_sibcall_delay): Likewise.
1979
63c499dc
RK
1980 * flow.c (print_rtl_and_abort_fcn): Renamed from print_rtl_and_abort.
1981 Call fancy_abort directly, passing args.
1982 (print_rtl_and_abort): Now a macro, like fancy_abort.
1983
651a788e
RK
1984 * final.c (output_operand_lossage): Use internal_error, not error.
1985
71641c15
RH
19862001-02-18 Shane Nay <shane@agendacomputing.com>
1987
3844cd2e 1988 * mips.c (mips_expand_prologue) Add REG_MAYBE_DEAD to
71641c15
RH
1989 structure shift insns.
1990
19912001-02-18 Mark Mitchell <mark@codesourcery.com>
8fa33dfa
MM
1992
1993 * invoke.texi (-fsquangle): Remove documentation.
1994 (-fname-mangling-version): Likewise.
1995
e1078cfc
LB
19962001-02-18 Lars Brinkhoff <lars@nocrew.org>
1997
1998 * optabs.c (expand_abs): Remove reference to
1999 HAVE_contitional_arithmetic.
2000 * combine.c (simplify_set): Likewise.
2001
3bd24117
RH
20022001-02-18 Richard Henderson <rth@redhat.com>
2003
2004 * ifcvt.c (dead_or_predicable): Don't move code if eh regions
2005 would be disrupted.
2006
5cada064
RH
20072001-02-18 Richard Henderson <rth@redhat.com>
2008
31189758
RH
2009 * config/ns32k/ns32k.h (ADJSP): Upcase arguments.
2010
e491fe9a
RH
2011 * config/alpha/alpha.md (movsi_fix): Fix typo in pattern name.
2012
5cada064
RH
2013 * reload1.c (reload_cse_simplify_set): Fix typo.
2014
751aa7cc
RK
2015Sun Feb 18 09:30:09 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2016
e28a09a4
RK
2017 * diagnostic.c (_fatal_insn): Decrement errorcount.
2018
d0a5eb32
RK
2019 * invoke.texi (-I): Add note avoiding use for system header files.
2020
751aa7cc
RK
2021 * rtl.h (add_clobbers): Remove duplicate declaration.
2022 * recog.h (added_clobbers_hard_reg_p): New declaration.
2023 * genemit.c (struct clobber_pat): New field has_hard_reg.
2024 (gen_insn): Record if added clobbers clobber hard reg.
2025 (gen_split): Avoid unused warning if number of operands is 0.
2026 (output_added_clobbers_hard_reg_p): New function.
2027 (main): Call it.
2028
4096479e
AM
20292001-02-18 Alan Modra <alan@linuxcare.com.au>
2030
3844cd2e
AJ
2031 * pa.c (hppa_expand_prologue): Simplify code storing return
2032 pointer. For large (>=8k) frames with a post_store, adjust stack
2033 pointer by 8k-64 first rather than by 64. When testing with
2034 VAL_14_BITS_P, always use the actual value rather than the value
2035 negated. Add blockage to prevent scheduling of spills before
2036 stack frame has been created.
2037 (hppa_expand_epilogue): Simplify code loading return pointer.
2038 Allow a slightly larger range for merge_sp_adjust_with_load case.
2039 When testing with VAL_14_BITS_P, always use the actual value.
31d68947 2040
4096479e
AM
2041 * pa.c (pa_adjust_insn_length): Check that block move
2042 pattern is a set before looking at operands.
2043
9c2c54dc
MM
20442001-02-17 Mark Mitchell <mark@codesourcery.com>
2045
68626d4f
MM
2046 * fold-const.c (fold_binary_op_with_conditional_arg): New
2047 function, split out from ...
2048 (fold): ... here.
2049 * tree.def (COND_EXPR): Document the use of VOID_TYPE for
2050 conditional arms that throw exceptions.
2051
9c2c54dc
MM
2052 * print-tree.c (print_node): Do not use BLOCK_CHAIN when we're not
2053 looking at a BLOCK.
2054
7afe8c41
KG
20552001-02-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2056
2057 * aclocal.m4 (gcc_AC_CHECK_DECL): Before attempting the test,
2058 define HAVE_DECL_* to 1 to mask potential backup declarations.
2059 * configure: Regenerated.
2060
3747f3dc
MM
20612001-02-17 Mark Mitchell <mark@codesourcery.com>
2062
2063 * invoke.texi (-Woverloaded-virtual): Clarify documentation.
2064
78adc5a0
RH
20652001-02-17 Richard Henderson <rth@redhat.com>
2066
2067 * reload1.c (reload_cse_simplify_set): Respect LOAD_EXTEND_OP
2068 when replacing a memory load with a register.
2069
e2373f95
RK
2070Sat Feb 17 14:48:30 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2071 Jan Hubicka <jh@suse.cz>
2072
2073 * recog.c (validate_replace_src_1): New.
2074 (validate_replace_src_data): Likewise.
2075 (validate_replace_src): Use note_uses.
2076 * rtl.h (note_uses): Declare.
2077 * rtlanal.c (note_uses): New.
2078
b00b2cc2
JH
2079Sat Feb 17 10:52:34 CET 2001 Jan Hubicka <jh@suse.cz>
2080
2081 * reg-stack.c (stack_def): Make field reg unsigned.
2082 (remove_regno_note): Unsignetize parameter.
2083
f5bbdc0c
JS
20842001-02-16 Jes Sorensen <jes@linuxcare.com>
2085
2086 * ia64.c (errata_emit_nops): Add VOIDmode as second argument to
2087 shladd_operand() call.
2088
6ee71e49 20892001-02-16 Bruce Korb <bkorb@gnu.org>
a59b81be 2090 Rodney Brown <RodneyBrown@mynd.com>
6ee71e49
BK
2091
2092 * fixinc/mkfixinc.sh: Use C fixincludes for UnixWare 7.
2093 * fixinc/inclhack.def: Add fixinc.svr4 patterns with matching
2094 machine restrictions
2095 * fixinc/fixincl.x: regen
2096
f85cc4cb
RK
2097Fri Feb 16 12:41:30 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2098
172890a2
RK
2099 * gcse.c (hash_scan_set): If cprop, see if REG_EQUAL or REG_EQUIV.
2100 Don't CSE a nop.
2101 (hash_scan_insn): Clean up calls to hash_scan_set.
2102 (compute_kill_rd): REGNO now unsigned.
2103 (try_replace_reg): Rework to use simplify_replace_rtx.
2104 (cprop_jump, cprop_cc0_jump): Likewise.
2105 (cprop_insn): Call find_reg_equal_equiv_note.
2106 Reflect changes to cprop_jump and cprop_cc0_jump.
2107
d6447708 2108 * recog.c (validate_replace_src): Replace in operands of
b71e8e84
RK
2109 ZERO_EXTRACT in SET_DEST.
2110
f85cc4cb
RK
2111 * cse.c (new_label_ref): New variable.
2112 (insert): Set it instead of recorded_label_ref.
2113 (cse_basic_block): Set recorded_label_ref if new_label_ref use, has
2114 CODE_LABEL for this function, and not already in REG_LABEL note.
2115
f5df2e8c
JO
21162001-02-16 Jeffrey Oldham <oldham@codesourcery.com>
2117
2118 * resource.c (mark_referenced_resources): Fix typo in introductory
2119 comment.
2120 * config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Fix typo in
2121 string constant.
2122
a901fa64
JM
21232001-02-16 Jason Merrill <jason@redhat.com>
2124
1edf43d6
JM
2125 * dwarf2out.c (add_bound_info): Don't crash if SAVE_EXPR_RTL is
2126 NULL.
3844cd2e 2127 (gen_subprogram_die): Don't abort on seeing a second definition if
1edf43d6
JM
2128 the previous one was abstract. Don't replace an abstract instance
2129 in the lookup table.
2130
2131 * dwarf2out.c (dwarf2out_abstract_function): Rename from
2132 gen_abstract_function.
2133 * dwarf2out.h: Declare it.
2134 * toplev.c (note_outlining_of_inline_function): New fn.
2135 * toplev.h: Declare it.
2136 * integrate.c (output_inline_function): Call it.
2137 * c-decl.c (duplicate_decls): Call it when redefining an extern
2138 inline. Don't inline the new defn.
2139
a901fa64
JM
2140 * tree.h (BLOCK_CHAIN): Use BLOCK_CHECK.
2141
cc06d68c
GP
21422001-02-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2143
2144 * .gdbinit: Rename to gdbinit.in.
3844cd2e 2145 * gdbinit.in: New file,
cc06d68c
GP
2146 * configure.in: Generate .gdbinit from gdbinit.in.
2147 * configure: Regenerated.
2148 * Makefile.in (distclean): Always remove .gdbinit.
2149
4f6bcad0
JJ
21502001-02-16 Jakub Jelinek <jakub@redhat.com>
2151
2152 * objc/objc-act.c (start_class): Register implemented_classes with
2153 GC.
2154
e4a345f8
NB
21552001-02-16 Neil Booth <neil@daikokuya.demon.co.uk>
2156
a59b81be
ZW
2157 * cppfiles.c (_cpp_make_system_header): Generate a file
2158 change callback.
e4a345f8 2159
fd48c9b5 21602001-02-15 Jim Meyering <meyering@lucent.com>
e658449e 2161
fd48c9b5
DD
2162 * Makefile.in (install-common): Don't depend on installdirs here.
2163 Instead, make each of the lang.install-common targets (e.g.,
2164 c++.install-common in cp/Make-lang.in) depend on it.
e658449e
JM
2165 (install-driver): Depend on installdirs.
2166
d64236b4
RK
2167Thu Feb 15 21:30:26 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2168
a8b94b40
RK
2169 * flow.c (tidy_fallthru_edge): Never end block on line number NOTE.
2170
d64236b4
RK
2171 * function.c (assign_parms): Set RTX_UNCHANGING_P in pseudo when we
2172 do in memory.
2173
3af64fd6
MM
21742001-02-15 Mark Mitchell <mark@codesourcery.com>
2175
2176 * invoke.texi (--param): Document.
2177
ba21a8a8
AO
2178Thu Feb 15 15:16:38 2001 Alexandre Oliva <aoliva@redhat.com>
2179
2180 * config/sh/sh.h (BOOL_TYPE_SIZE): Don't define.
2181
ff78d082
JH
2182Thu Feb 15 10:52:31 CET 2001 Jan Hubicka <jh@suse.cz>
2183
2184 * i386.md (extendsfdf2_2): Fix constraints.
2185
2b66da3c
JH
2186Thu Feb 15 09:46:21 CET 2001 Jan Hubicka <jh@suse.cz>
2187
2188 * i386.md (fop_df_3 splitter): Fix operand number.
2189
266da7a2
JH
2190Wed Feb 14 12:37:37 CET 2001 Jan Hubicka <jh@suse.cz>
2191
2192 * invoke.texi (-mreg-alloc): Nuke.
2193 * i386.c (ix86_reg_alloc_order, regs_allocated,
2194 order_regs_for_local_alloc): Nuke.
2195 (override_options): Kill reg_alloc code.
2196 * i386.h (TARGET_OPTIONS): Kill reg-alloc.
2197 (REG_ALLOC_ORDER): SSE goes before I387.
2198 (ORDER_REGS_FOR_LOCAL_ALLOC): Kill.
2199 (ix86_reg_alloc_order): Likewise.
2200 * i386-protos.h (ix86_reg_alloc_order): Kill.
2201
121bc96b
RH
22022001-02-14 Richard Henderson <rth@redhat.com>
2203
2204 * toplev.c (f_options): Clarify -fschedule-insns2 documentation.
2205
04b1a223
JH
2206Wed Feb 14 11:59:58 CET 2001 Jan Hubicka <jh@suse.cz>
2207
2208 * i386.h (RETURN_IN_MEMORY): Fix formating; reject TFmodes
2209
fa79946e
JH
2210Wed Feb 14 11:12:38 CET 2001 Jan Hubicka <jh@suse.cz>
2211
2212 * i386-protos.h (ix86_memory_move_cost): Move offline.
2213 * i386.c (ix86_register_move_cost): Compute properly cost of
2214 SSE, MMX and i387 instructions.
2215 (*_cost): Add costs of SSE/MMX moves.
2216 (ix86_memory_move_cost): Move offline from ....; Likewise.
2217 * i386.h (MEMORY_MOVE_COST): .... here;
2218 (struct processor costs): Add new fields to represent costs
2219 of SSE/MMX moves.
2220
6836e024
JH
2221Wed Feb 14 10:08:26 CET 2001 Jan Hubicka <jh@suse.cz>
2222
2223 * regclass.c (init_reg_sets_1): Reinstall the optimization of
2224 move_cost together with Matt Kraai's fix.
2225
d3fb92b8
JO
22262001-02-14 Jeffrey Oldham <oldham@codesourcery.com>
2227
2228 * Makefile.in (OBJS): Add params.o.
2229
8e0b124e
RH
22302001-02-14 Richard Henderson <rth@redhat.com>
2231 DJ Delorie <dj@redhat.com>
2232
2233 * jump.c (jump_optimize_1): When we delete a conditional jump
2234 preceeding a non-conditional jump to effectively the same place,
2235 make sure that the combined jump skips any clobber insns between
2236 the two labels.
2237
55bd9f24
JO
22382001-02-14 Jeffrey Oldham <oldham@codesourcery.com>
2239
2240 * gcc.c (do_spec_1): Fix off-by-one error for '%M' case.
2241
c6d9a88c
MM
22422001-02-14 Mark Mitchell <mark@codesourcery.com>
2243
2244 * Makefile.in (toplev.o): Depend on params.h.
2245 (intergate.o): Likewise.
2246 (params.o): New target.
2247 * flags.h (inline_max_insns): Remove.
2248 * integrate.c: Include params.h.
2249 Use MAX_INLINE_INSNS instead of inline_max_insns.
2250 * params.c: New file.
2251 * params.h: Likewise.
2252 * params.def: Likewise.
2253 * toplev.c: Include params.h.
2254 (lang_independent_params): New variable.
3844cd2e 2255 (decode_f_option): Use the param machinery instead of setting
c6d9a88c
MM
2256 max_inline_insns.
2257 (independent_decode_option): Handle "--param name=value".
2258 (main): Register language-independent parameters.
2259
c6e95f34
JH
2260Wed Feb 14 11:13:45 CET 2001 Jan Hubicka <jh@suse.cz>
2261
2262 * i386.md (pushsf, pushdf_nointeger): Fix constraint.
2263
c7c0ae3d
RH
22642001-02-14 Richard Henderson <rth@redhat.com>
2265
2266 * regclass.c (init_reg_sets_1): Revert last two changes.
2267
fe375cf1
JJ
22682001-02-14 Jakub Jelinek <jakub@redhat.com>
2269
2270 * stor-layout.c (is_pending_size, put_pending_size): New functions.
2271 (variable_size): Call put_pending_size.
2272 * tree.h (is_pending_size, put_pending_size): Add prototypes.
2273 * fold-const.c (extract_muldiv): If SAVE_EXPR is on the pending
2274 sizes list, put newly created SAVE_EXPR there as well.
2275
22762001-02-14 Jakub Jelinek <jakub@redhat.com>
2277
2278 * config/ia64/ia64.c (last_group): Only 2 entries are needed.
2279 (errata_find_address_regs): load_group has only 2 entries.
2280 (errata_emit_nops): Likewise. shladd is not problematic.
2281 Clear last_group if nop was emitted.
2282 (fixup_errata): load_group has only 2 entries.
2283 Optimize.
2284
7065e130
NB
22852001-02-14 Neil Booth <neil@daikokuya.demon.co.uk>
2286
fe375cf1
JJ
2287 * c-lex.c (lex_number): Only warn traditionally for U suffix
2288 outside system macros.
2289 * cppexp.c (parse_number): Similarly.
2290 * cpplib.h (NODE_SYSHDR, cpp_sys_objmacro_p): New.
2291 * cppmacro.c (struct cpp_macro): New member node.
2292 (parse_args): Only warn about missing rest args if not
2293 a system macro.
2294 (funlike_invocation_p): Similarly for uninvoked funlike macros.
2295 (cpp_sys_objmacro_p): New.
2296 (_cpp_create_definition): Store the node with the macro defn.
2297 Remember if the macro is defined in a system header.
7065e130 2298
cbc59f01
DD
22992001-02-13 DJ Delorie <dj@redhat.com>
2300
2301 * configure.in (check_languages): determine languages to check
2302 * Makefile.in (check-c++): alias for check-g++
2303 (check-f77): alias for check-g77
2304 (CHECK_TARGETS): depend on configured languages
2305
ca9a9b12
JH
2306Wed Feb 14 01:13:59 CET 2001 Jan Hubicka <jh@suse.cz>
2307
2308 * i386.md (fixsfsi2, fixdfdi2): Fix previous patch again.
2309 (sqrtsf2): Use TARGET_SSE instead of TARGET_SSE2)
2310 (sqrtsf2 patterns): Use 'x' instead of 'Y'.
2311 (sqrtextendsfdf2): Disable for SSE2.
2312
2313Wed Feb 14 00:19:28 CET 2001 Jan Hubicka <jh@suse.cz>
2314
2315 * i386.md (fixsfsi2, fixdfdi2): Fix previous patch again.
2316 (sqrtsf2): Use TARGET_SSE instead of TARGET_SSE2)
2317 (sqrtsf2 patterns): Use 'x' instead of 'Y'.
2318 (sqrtextendsfdf2): Disable for SSE2.
2319
7093c9ea
JH
2320Wed Feb 14 00:11:20 CET 2001 Jan Hubicka <jh@suse.cz>
2321
2322 * i386.md (movsfcc_1): Support integer cmove instruction.
2323 (movdfcc_1): Likewise; new splitter.
2324
0644b628
JH
2325Tue Feb 13 23:19:27 CET 2001 Jan Hubicka <jh@suse.cz>
2326
2327 * i386.c (output_fp_compare): Support SSE.
2328 (prepare_fp_compare_args): SSE comparisons always support memory.
2329 * i386.h (TARGET_CMOVE): SSE imply cmove.
2330 * i386.md (cmp?f2): Enable for SSE too.
2331 (cmpfp_i*): Support SSE.
2332 (cmpfp_i_sse): New.
2333 (cmpfp_i_sse_only): New.
2334 (s*, b* fp expanters): Enable for SSE too.
2335 (fp_jcc_1_sse, fp_jcc_1_sse_only, fp_jcc_2_sse, fp_jcc_2_sse_only):
2336 New patterns.
2337
1464632b
JH
2338Tue Feb 13 23:05:42 CET 2001 Jan Hubicka <jh@suse.cz>
2339
a901fa64 2340 * regclass.c (init_reg_sets_1): Silence warning.
1464632b 2341
a8083431
JH
2342Tue Feb 13 22:03:07 CET 2001 Jan Hubicka <jh@suse.cz>
2343
2344 * i386.md (sqrt?f2): Change to expander.
2345 (sqrt?f2_1, sqrt?f2_sse_only, sqrt?f2_i387): New.
2346
d9c695ff
RK
2347Tue Feb 13 15:42:05 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2348
2349 * rtlanal.c (find_reg_equal_equiv_note): New function.
2350 * simplify-rtx.c (simplify_gen_unary, simplify_gen_ternary): New fns.
2351 (simplify_gen_relational, simplify_replace_rtx): Likewise.
2352 * rtl.h: Add declarations for above functions.
2353
848e0190
JH
2354Tue Feb 13 21:09:11 CET 2001 Jan Hubicka <jh@suse.cz>
2355
2356 * cse.c (cse_main): Converts ifdefs on PIC_OFFSET_TABLE_REGNUM to
2357 conditionals.
2358 * defaults.h (PIC_OFFSET_TABLE_REGNUM): Default to INVALID_REGNUM.
2359 * emit-rtl.c (init_emit_once): Convert ifdefs to conditionals.
2360 * flow.c (mark_regs_live_at_end): Likewise.
2361 (calculate_global_regs_live): Likewise.
2362 * gcse.c (compute_hash_table): Likewise.
2363 (compute_kill_rd): Likewise.
2364 * resource.c (mark_target_live_regs): Likewise.
2365 * rtl.h (INVALID_REGNUM): New macro.
2366
b1675dbd
JH
2367Tue Feb 13 20:59:22 CET 2001 Jan Hubicka <jh@suse.cz>
2368
2369 * i386.md (fixsfsi2, fixdfdi2): Fix previous patch.
2370
1698bba1
JH
2371Tue Feb 13 16:32:20 CET 2001 Jan Hubicka <jh@suse.cz>
2372
2373 * i386.md (fixsfsi2, fixdfdi2): Force operand to register
2374 for SSE.
2375
1deaa899
JH
2376Tue Feb 13 14:53:16 CET 2001 Jan Hubicka <jh@suse.cz>
2377
2378 * i386.md (add?f3, sub?f3, mul?f3, dif?f3): Enable for TARGET_SSE(2)
2379 too.
2380 (fop_sf_comm, fop_df_comm, fop_sf_1, fop_df_1): Support SSE.
2381 (fop_sf_comm_sse, fop_df_comm_sse): New patterns.
2382 (fop_sf_1_sse, fop_df_1_sse): New patterns
2383 (fop_*): Disable float_extend and float patterns for SSE compilation.
2384 * i386.c (output_387_binary_op): Support SSE.
2385
42a0aa6f
JH
2386Tue Feb 13 14:16:34 CET 2001 Jan Hubicka <jh@suse.cz>
2387
2388 * i386.md (dummy_extendsfdf2): Support SSE2
2389 (extendsfdf2): Enable if 80387 or SSE2.
2390 (extendsfdf2_1): Support SSE2. Disable if SSE2 is avialble
2391 and no MIX_I387_SSE2
2392 (extendsfdf2_1_sse_only): New pattern.
2393 (truncdfsf2): Enable if SSE2 or 80387; Always use SSE only version
2394 of SSE.
2395 (truncdfsf2_1): Support SSE.
2396 (truncdfsf2_2): Support SSE.
2397 (truncdfsf2_2_1_sse): New pattern.
2398 (fixtruncsfsi2): Always use SSE if available.
2399 (fix_truncsfsi_sse): New pattern.
2400 (fix_truncdfsi_sse): New pattern.
2401 (floatsis?f2): Support SSE.
2402 (floatsidf2_i387): New pattern.
2403 (floatsidf2_sse): Likewise.
2404
8a7199ad
RK
2405Tue Feb 13 07:52:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2406
1ffc5c6e
RK
2407 * configure.in: Use "have_gnat" variable, not "gnat".
2408 * configure: Regenerated.
2409
8a7199ad
RK
2410 * config/sparc/sparc.c (function_value): Treat all non-record
2411 aggregate types like used to treat UNION_TYPE.
2412
446988df
JH
2413Tue Feb 13 13:31:33 CET 2001 Jan Hubicka <jh@suse.cz>
2414
2415 * i386.c (print_reg): Use ANY_FP_REG instead of FP_REG
2416 * i386.h (MASK_128BIT_LONG_DOUBLE): Renumber
2417 (MASK_SSE2): New.
2418 (MASK_MIX_SSE_I387): New.
2419 (TARGET_SSE): SSE2 imply SSE.
2420 (TARGET_SSE2, TARGET_MIX_SSE_I387): New.
2421 (TARGET_SWITCHES): Add "sse2", "mix-sse-i387".
2422 (enum reg_class): Add new classes.
2423 (REG_CLASS_NAMES): Likewise.
2424 (REG_CLASS_CONTENTS): Likewise.
2425 (ANY_FP_REG_P, ANY_FP_REGNO_P, SSE_REG_P, SSE_FLOAT_MODE): New macros.
2426 (REG_CLASS_FROM_LETTER): 'x' and 'y' is SSE_REGS only when SSE is
2427 supported. Add 'Y' to be SSE_REGS when SSE2 is supported.
2428 (CLASS_MAX_NREGS): Use new macros.
2429 (REGISTER_MOVE_COST): Rewrite using SECONDARY_MEMORY_MAYBE_NEEDED.
2430 * i386.md (pushsf, movsf): Support SSE.
2431 (pushdf_nointeger, pushdf_integer, pushdf): Support SSE, update
2432 splitters to use ANY_FP_REGNO_P.
2433 (movdf_nointeger, movdf_integer): Likewise.
2434
42a6ff51
AO
24352001-02-13 Alexandre Oliva <aoliva@redhat.com>
2436
2437 * combine.c (UWIDE_SHIFT_LEFT_BY_BITS_PER_WORD): New macro.
2438 (try_combine): Use it.
2439
f84aa48a
JH
2440Tue Feb 13 11:37:06 CET 2001 Jan Hubicka <jh@suse.cz>
2441
2442 * i386.h (SSE_CLASS_P, MMX_CLASS_P, MAYBE_FLOAT_CLASS_P,
2443 MAYBE_SSE_CLASS_P, MAYBE_MMX_CLASS_P): New macros.
2444 (PREFERRED_RELOAD_CLASS, SECONDARY_MEMORY_NEEDED): Move offline.
2445 (REGISTER_MOVE_COST): Likewise.
2446 * i386-protos.h (ix86_secondary_memory_needed,
2447 ix86_preferred_reload_class, ix86_register_move_cost): Declare.
2448 * i386.c (ix86_secondary_memory_needed,
2449 ix86_preferred_reload_class, ix86_register_move_cost): New function.
2450
a946dd00
JH
2451Die Feb 13 11:04:25 CET 2001 Jan Hubicka <jh@suse.cz>
2452
2453 * i386.h (VALID_FP_MODE_P, VALID_INT_MODE_P): New.
2454 (HARD_REGNO_MODE_OK): Move offline to ....
2455 * i386.c (ix86_hard_regno_mode_ok) ... here;
2456 refuse all incorrect modes.
2457 * i386-protos.h (ix86_hard_regno_mode_ok): Declare.
2458
1b9ea8eb
RH
24592001-02-13 Richard Henderson <rth@redhat.com>
2460
2461 * sparc.md (cmp_cc_arith_op_set): Don't use match_dup on the
2462 entire operator; replicate that and match_dup the operands.
2463 (cmp_ccx_arith_op_set): Likewise.
2464 (cmp_cc_arith_op_not_set): Likewise.
2465 (cmp_ccx_arith_op_not_set): Likewise.
2466
5b0d91c3
AO
24672001-02-13 Alexandre Oliva <aoliva@redhat.com>
2468
2469 * explow.c (trunc_int_for_mode): Sign-extend value to mode.
2470
9a155f91
GK
24712001-02-12 Geoffrey Keating <geoffk@redhat.com>
2472
2473 * config/rs6000/sysv4.h (MASK_NO_BITFIELD_WORD): New macro.
2474 (TARGET_NO_BITFIELD_WORD): New macro.
2475 (SUBTARGET_SWITCHES): Add -mbit-word, -mno-bit-word options.
2476 (BITFIELD_NBYTES_LIMITED): Define based on TARGET_NO_BITFIELD_WORD.
2477
fa49fd0f
RK
2478Mon Feb 12 18:13:26 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2479
2480 * cselib.c: New file, from simplify-rtx.c.
2481 * simplify-rtx.c: Remove cselib parts.
2482 * Makefile.in: Add cselib.o.
2483
c36ae96c
GK
24842001-02-12 Geoffrey Keating <geoffk@redhat.com>
2485
ca5adc63
GK
2486 * config/rs6000/rs6000.c (rs6000_float_const): Remove warning.
2487 (setup_incoming_varargs): Remove warning.
2488
2489 * config/rs6000/rs6000.c (validate_condition_mode): When
2490 flag_fast_math, allow floating-point conditionals to be reversed.
2491 (rs6000_generate_compare): When flag_fast_math, don't generate
2492 cror operations for FP conditionals.
2493
c36ae96c
GK
2494 * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Handle
2495 -mcall-i960.
2496 (ASM_SPEC): Likewise.
2497 (CC1_ENDIAN_LITTLE_SPEC): Likewise.
2498 (CC1_SPEC): Likewise.
2499 (LINK_TARGET_SPEC): Likewise.
2500 (CPP_ENDIAN_SPEC): Likewise.
2501 * Makefile.in (check-consistency): New target.
2502
f43b2795
JM
25032001-02-12 Joseph S. Myers <jsm28@cam.ac.uk>
2504
2505 * c-decl.c (grokdeclarator): In C99 mode, give the more specific
2506 "return type defaults" warning for functions with return type
2507 defaulting to int.
2508 * c-lang.c (c_init): In C99 mode, enable warnings for implicit
2509 function declarations by default rather than only when pedantic.
2510
7004b11b
JH
2511Mon Feb 12 17:28:48 CET 2001 Jan Hubicka <jh@suse.cz>
2512
2513 * regclass.c (init_reg_sets_1): Optimize calculation of move_cost
2514 arrays.
2515
82c18d5c
NS
25162001-02-12 Nathan Sidwell <nathan@codesourcery.com>
2517
2518 * extend.texi (Deprecated): Deprecate new initializer lists.
2519
48ce6bbb
NS
25202001-02-12 Nathan Sidwell <nathan@codesourcery.com>
2521
2522 * mkdeps.c (deps_add_default_target): Robustify. Add
2523 basename component only.
2524 * cpp.texi (-M): Describe how default target is generated.
2525 * invoke.texi (-M): Likewise.
2526
823a9919
KH
25272001-02-12 Kazu Hirata <kazu@hxi.com>
2528
2529 * toplev.c (push_float_handler): Remove.
2530 (pop_float_handler): Remove.
2531 * toplev.h: Remove prototypes for the above functions.
2532
d02b54f6
JJ
25332001-02-12 Jakub Jelinek <jakub@redhat.com>
2534
2535 * c-common.c (constant_fits_type_p): New function.
2536 (convert_and_check): Use it.
2537
b1012f1b
MM
25382001-02-11 Mark Mitchell <mark@codesourcery.com>
2539
2540 * Makefile.in (GXX_ABI_FLAG): Don't define.
2541 * configure.in (--enable-new-gxx-abi): Remove option.
2542 * config.in: Regenerated.
2543 * configure: Likewise.
2544
e8eacc3f
AO
25452001-02-12 Alexandre Oliva <aoliva@redhat.com>
2546
2547 * lcm.c (compute_earliest): Let EXIT_BLOCK be handled as a regular
2548 basic block.
2549 (optimize_mode_switching) [NORMAL_MODE]: Set up EXIT_BLOCK as a
2550 regular basic block, and arrange for all edges into it to switch
2551 to normal mode.
2552
e065341b
GP
25532001-02-11 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2554
2555 * Makefile.in (distclean): Do not remove .gdbinit.
2556
8c310e3f
MM
25572001-02-11 Mark Mitchell <mark@codesourcery.com>
2558
2559 * Makefile.in (gcc.o): Fix typos.
2560 (protize.o): Likewise.
2561 (unprotoize.o): Likewise.
2562
258835c7
RH
25632001-02-11 Richard Henderson <rth@redhat.com>
2564
2565 * tree.c (build1): Check for null operand in last change.
2566
1796dff4
RH
25672001-02-11 Richard Henderson <rth@redhat.com>
2568
2569 * fold-const.c (split_tree): Don't assume a constant isn't splittable.
2570 (fold): Don't assume a constant isn't foldable.
2571 * tree.c (build): Set TREE_CONSTANT for an expression with no
2572 side-effects and constant operands.
2573 (build1): Likewise.
2574
7f437481
RH
25752001-02-10 Richard Henderson <rth@redhat.com>
2576
2577 * jump.c (squeeze_notes): Revert 2000-05-12 change.
2578
3220116f
AG
25792001-02-10 Anthony Green <green@redhat.com>
2580
2581 * cpp.texi (Standard Predefined): Add documentation for
2582 __OPTIMIZE_SIZE__.
2583
2584 * c-common.c (combine_strings): Improve warning message.
2585
36b8ffbe
GK
25862001-02-10 Geoffrey Keating <geoffk@redhat.com>
2587
2588 * config/rs6000/sysv4.h (LINK_TARGET_SPEC): Use two dashes for
2589 --oformat.
2590 * config/rs6000/sysv4le.h (LINK_TARGET_SPEC): Likewise.
2591
ce675456
CF
2592Fri Feb 9 15:05:27 2001 Christopher Faylor <cgf@cygnus.com>
2593
2594 * config/i386/t-cygwin (T_CPPFLAGS): Use correct location for
2595 CYGWIN_CROSS_DIR.
2596
cc0744d1
AO
25972001-02-09 Alexandre Oliva <aoliva@redhat.com>
2598
2599 * config/sh/sh.md (sibcalli, sibcalli_pcrel, sibcalli): Set
2600 fp_mode attribute.
2601
ab51eb25
NC
26022001-02-09 Nick Clifton <nickc@redhat.com>
2603
2604 * config/arm/arm.md: Change output contraint on post inc
2605 load/store multiple patterns to be a read/write contraint.
2606
58e31b83
NB
26072001-02-09 Neil Booth <neil@daikokuya.demon.co.uk>
2608
1b9ea8eb
RH
2609 * gcc.c (cpp_options): Delete .d files on error. Don't delete
2610 .o files when using the -M options.
58e31b83 2611
db9473af 26122001-02-08 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
02a4ec28
FS
2613 David Edelsohn <edelsohn@gnu.org>
2614
2615 * config/rs6000/rs6000.c (output_toc): Allow 32-bit targets to
2616 handle DImode constants. Use one TOC entry for SImode and smaller
2617 constants, aligned properly.
2618
34ce3d7b
JM
26192001-02-08 Jason Merrill <jason@redhat.com>
2620
2621 * config/arm/arm.c (arm_expand_prologue): Do tell the dwarf2 backend
2622 about the SP adjustment for saving the static chain pointer.
2623 * dwarf2out.c (dwarf2out_frame_debug_expr): Use the specified
2624 offset when setting a temporary CFA register.
2625
8da6d80e
CC
26262001-02-08 Chandrakala Chavva <cchavva@redhat.com>
2627
2628 * config.gcc : New targets, i386-*-chorusos*, sparc-*-chorusos*,
2629 powerpc-*-chorusos* .
2630 * config/rs6000/chorus.h : New file.
2631 * config/i386/chorus.h : New file.
2632 * config/sparc/chorus.h : New file.
2633 * config/sparc/t-chorus-elf : New file.
2634
7841642f
DE
26352001-02-08 David Edelsohn <edelsohn@gnu.org>
2636
2637 * config/rs6000/rs6000.h (ASM_OUTPUT_SYMBOL_REF): Move from here ...
2638 * config/rs6000/aix.h (ASM_OUTPUT_SYMBOL_REF): ... to here.
2639 * config/rs6000/aix51.h (CPLUSCPLUS_CPP_SPEC): Define it.
2640 (__WCHAR_TYPE__): Correct macro name.
3844cd2e 2641
6fca22eb
RH
26422001-02-08 Richard Henderson <rth@redhat.com>
2643
2644 * config/i386/i386.c (ix86_frame_pointer_required): New.
2645 (ix86_setup_frame_addresses): New.
2646 (struct machine_funciton): Add accesses_prev_frame.
2647 * config/i386/i386.h (FRAME_POINTER_REQUIRED): Call
2648 ix86_frame_pointer_required.
2649 (SUBTARGET_FRAME_POINTER_REQUIRED): New.
2650 (SETUP_FRAME_ADDRESSES): New.
2651 * config/i386/i386-protos.h: Update.
2652 * config/i386/sco5.h (SUBTARGET_FRAME_POINTER_REQUIRED): Rename
2653 from FRAME_POINTER_REQUIRED.
2654 * config/i386/svr3gas.h: Likewise.
2655 * config/i386/sysv3.h: Likewise.
2656 * config/i386/v3gas.h: Likewise.
2657
0020b823
RH
26582001-02-08 Richard Henderson <rth@redhat.com>
2659
2660 * config/sparc/sparc.c (function_arg_record_value_3): Fix
2661 calculation of the number of integer registers required.
2662 (function_arg_record_value): Likewise.
2663
00a42e21
JM
26642001-02-08 Jason Merrill <jason@redhat.com>
2665
33c4f174
JM
2666 * diagnostic.c (internal_error): Say "confused" after 1 error, not
2667 two. Print file and line with "confused" message.
2668
00a42e21
JM
2669 * dwarf2out.c (dwarf2out_line): Include filename in -dA output.
2670
dd248abd
RK
2671Thu Feb 8 11:21:28 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2672
2673 * rtlanal.c (remove_node_from_expr_list): Correctly update PREV.
2674
04337620
BS
26752001-02-08 Bernd Schmidt <bernds@redhat.com>
2676
2677 * final.c (cleanup_subreg_operands): The address of a MEM can
2678 contain SUBREGs.
2679
0c1cf241
BS
2680 * config/ia64/ia64.c (ia64_variable_issue): Call group_barrier_needed_p
2681 for asms, too.
2682
14baf6b5
JM
26832001-02-08 Joseph S. Myers <jsm28@cam.ac.uk>
2684
2685 * gcc.texi (Incompatibilities): Update documentation of
2686 preprocessing numbers.
2687
1ada4cd0
JJ
26882001-02-07 Jakub Jelinek <jakub@redhat.com>
2689
2690 * c-decl.c (finish_enum): Revert part of 2000-01-05 change.
2691
a9374841
MM
26922001-02-07 Mark Mitchell <mark@codesourcery.com>
2693
830a95f8
MM
2694 * config/rs6000/aix43.h (CPLUSCPLUS_CPP_SPEC): Define it.
2695
a9374841
MM
2696 * defaults.h (CPLUSPLUS_CPP_SPEC): New macro.
2697 * gcc.c (struct compiler): Add cpp_spec field.
2698 (input_file_compiler): New variable.
3844cd2e 2699 (do_spec_1): Allow a particular compiler to handle `%C'
a9374841
MM
2700 specially.
2701 (main): Store the current compiler in input_file_compiler.
2702 * tm.texi (CPLUSPLUS_CPP_SPEC): Document.
3844cd2e 2703
7d4918a2
ZW
27042001-02-07 Zack Weinberg <zack@wolery.stanford.edu>
2705
2706 * cpphash.h (struct spec_nodes): Add n_true and n_false.
2707 * cppinit.c (cpp_create_reader): Initialize them.
2708 (append_include_chain): cxx_aware arg might be unused.
2709 * cppexp.c (lex): In C++ mode, recognize 'true' and 'false'
2710 keywords and give them their phase 7 meaning. Pedwarn about
2711 this unless '__bool_true_false_are_defined' is defined.
2712
09d84e04
AO
27132001-02-07 Alexandre Oliva <aoliva@redhat.com>
2714
2715 * lcm.c (optimize_mode_switching): Emit mode_set before the
2716 JUMP_INSN of an abnormal edge.
2717
bcd7edfe
BS
27182001-02-07 Bernd Schmidt <bernds@redhat.com>
2719
2720 * builtins.c (expand_builtin_setjmp_receiver): Emit an ASM_INPUT as
2721 a scheduling barrier at the end.
2722
4a1d48f6
BS
2723 * tm.texi (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Document.
2724
3dbd1134
AO
27252001-02-07 Alexandre Oliva <aoliva@redhat.com>
2726
c2d10707
AO
2727 * config/sh/sh.md (reload_outsf): Removed.
2728 (movsf_ie): Introduce constraints for FPUL loads and stores.
2729 (reload_insf): Broaden the output constraint.
2730
3dbd1134
AO
2731 * config/elfos.h (INT_ASM_OP): Don't define it if it's already
2732 defined.
2733 * config/sh/sh.h (INT_ASM_OP, ASM_OUTPUT_CONSTRUCTOR,
2734 ASM_OUTPUT_DESTRUCTOR): Copy definitions from config/elfos.h.
2735
8480e480
CC
27362001-02-06 Chandrakala Chavva <cchavva@redhat.com>
2737
8da6d80e 2738 * final.c: Revert my previous changes.
8480e480
CC
2739 * output.h: Make profile_label_no extern.
2740 * config/rs6000/rs6000.c (output_profile_hook): Use standard functions
2741 for generating label.
2742
df447210
LB
27432001-02-06 Laurynas Biveinis <lauras@softhome.net>
2744
2745 * config/i386/djgpp.h: Add comments about standard paths.
2746 (MD_EXEC_PREFIX): Undefine before defining.
2747 (MD_STARTFILE_PREFIX): New.
2748
ca21b4a5
BK
27492001-01-30 Bruce Korb <bkorb@gnu.org>
2750
6fca22eb
RH
2751 fixinc/fixincl.c(process): Emit error message only if appropriate :)
2752 (load_file): do not rely on load_file_data() to close file pointer
2753 fixinc/fixlib.c(load_file_data): do not close passed in file pointer
ca21b4a5
BK
2754 fixinc/inclhack.def(irix_limits_const): add test_text
2755
3c8465d0
NB
27562001-02-06 Neil Booth <neil@daikokuya.demon.co.uk>
2757
6fca22eb
RH
2758 * cppexp.c (parse_defined): Improve diagnostics for invalid
2759 syntax.
3c8465d0 2760
b7a0a5fa
NB
27612001-02-06 Neil Booth <neil@daikokuya.demon.co.uk>
2762
6fca22eb 2763 * cppmacro.c (cpp_get_token): Avoid pasting after a builtin.
b7a0a5fa 2764
28e510bd
MM
27652001-02-06 Mark Mitchell <mark@codesourcery.com>
2766
2767 * config/rs6000/rs6000.h (ASM_OUTPUT_SYMBOL_REF): Define.
2768 * config/rs6000/rs6000-protos.h (rs6000_output_symbol_ref): Declare.
2769 * config/rs6000/rs6000.c (VTABLE_NAME_P): New macro.
2770 (rs6000_output_symbol_ref): New function.
2771 (output_toc): Use VTABLE_NAME_P.
3844cd2e 2772
05bd3d41
RK
2773Tue Feb 6 07:54:51 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2774
df10e9ec
RK
2775 * print-tree.c (print_node, case PARM_DECL):
2776 Print DECL_ARG_TYPE and DECL_ARG_TYPE_AS_WRITTEN.
2777
b5d6a2ff
RK
2778 * stor-layout.c (reference_types_internal): New variable.
2779 (internal_reference_types): New function.
2780 (layout_type, case REFERENCE_TYPE): Make Pmode if internal.
2781 * tree.h (internal_reference_types): New declaration.
2782
05bd3d41
RK
2783 * cse.c (find_best_addr): Fix typo in computing cost.
2784
d1405722
RK
2785Mon Feb 5 21:56:16 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2786
2787 * combine.c (nonzero_bits, case PLUS): If pointers extend unsigned
2788 and this is the sum of a pointer and a constant, we know the result
2789 did not overflow.
2790 (num_sign_bit_copies, case PLUS): Likewise.
2791 * explow.c (convert_memory_address): Remove opposite SUBREG.
2792 * function.c (instantiate_new_reg): New function (from common code).
2793 (instantiate_virtual_regs_1): Call it.
2794 For PLUS, handle if (plus (subreg (virt-reg) (const_int))
2795 if pointers sign- or zero-extend.
2796 * simplify-rtx.c (simplify_unary_operation, case ZERO_EXTEND):
2797 If pointers extend unsigned, use inside of SUBREG.
2798 (simplify_unary_operation, case SIGN_EXTEND): Likewise, if sign extend.
2799
3e897b66
BK
28002001-02-05 Benjamin Kosnik <bkoz@redhat.com>
2801
2802 * Makefile.in (-DGPLUSPLUS_TOOL_INCLUDE_DIR): Change to target
2803 subdir of gcc_gxx_include_dir.
2804 (gcc_gxx_target_include_dir): Remove.
2805
a401107d
JO
28062001-02-05 Jeffrey Oldham <oldham@codesourcery.com>
2807
2808 * dwarf2out.c: Revise DWARF2 Abbreviation Glossary comments.
2809 (dwarf2out_frame_debug_expr): Revise introductory comments to add
2810 a high-level description.
2811
411707f4
CC
28122001-02-05 Chandrakala Chavva <cchavva@redhat.com>
2813
d6706c51 2814 * final.c: Move the declaration of profile_label_no to ...
6fca22eb
RH
2815 * output.h: ... here.
2816 * function.c (expand_function_start): Call PROFILE_HOOK.
2817 * config/rs6000/aix.h: Define PROFILE_HOOK.
2818 * config/rs6000/rs6000-protos.h: output_profile_hook new.
2819 * config/rs6000/rs6000.c (output_profile_hook): Define.
2820 (output_prolog): Do nothing for ABI_AIX as it is taken care by
2821 output_profile_hook.
411707f4
CC
2822 tm.texi : Explain new macro PROFILE_HOOK.
2823
8720914b
HPN
28242001-02-06 Hans-Peter Nilsson <hp@axis.com>
2825
2826 * extend.texi (Extended Asm): Do not say that semicolon is always
2827 a valid line-breaking character for GNU assemblers. Use
2828 newline-tab as the most commonly supported syntax. Use
2829 newline-tab rather than semicolon in multi-insn examples.
2830
56cf87e7
FS
28312001-02-05 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
2832
2833 * Makefile.in (gcc_gxx_target_include_dir): Use $(target_alias).
2834
9638617e 28352001-02-05 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
6fca22eb 2836 David Edelsohn <edelsohn@gnu.org>
9638617e 2837
3844cd2e 2838 * config/rs6000/rs6000.c (rs6000_return_addr): Use PIC
9638617e
FS
2839 code for AIX, even without flag_pic.
2840
2f4e8f2b
JJ
28412001-02-05 Jakub Jelinek <jakub@redhat.com>
2842
2843 * c-typeck.c (common_type): push and pop binding level around
2844 calling common_type on function parameters.
2845
45677496
CF
2846Mon Feb 5 14:30:37 2001 Christopher Faylor <cgf@cygnus.com>
2847
2848 * config/i386/cygwin.h (CPP_SPEC): Add missing space after -idirafter.
2849
789c026d
RK
2850Mon Feb 5 11:23:16 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2851
2852 * config/mips/mips.c (override_options): Fix typo in last change.
e2bbb660
RK
2853 (mips_make_temp_file): Call fatal_io_error, not pfatal_with_name.
2854 (mips_asm_file_end): Likewise; also pass more args to fatal_io_error.
789c026d 2855
9965d119
NS
28562001-02-05 Nathan Sidwell <nathan@codesourcery.com>
2857
2858 * invoke.texi (-fdump-class-layout): Document.
2859 (-fdump-translation-unit): Use `=' as filename separator.
2860
39d6f2e8
MM
28612001-02-05 Mark Mitchell <mark@codesourcery.com>
2862
2863 * Makefile.in (s-mlib): Don't build multilibs if
2864 --disable-multilib.
2865 (DRIVER_DEFINES): Adjust accordingly.
2866 (gcc.o): Likewise.
2867 (protoize.o): Likewise.
2868 (unprotoize.o): Likewise.
2869 * configure.in: Recognize --enable-multilib.
3844cd2e 2870
22fdd65e
MM
28712001-02-04 Mark Mitchell <mark@codesourcery.com>
2872
9f8bf073
MM
2873 * Makefile.in (DRIVER_DEFINES): Fix quoting.
2874
22fdd65e
MM
2875 * Makefile.in (site.exp): Always set HAVE_LIBSTDCXX_V3.
2876 * configure.in: Remove --enable-libstdcxx_v3 support.
2877 * configure: Regenerated.
2878
400500c4
RK
2879Sun Feb 4 15:52:44 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2880
c4636dd1
RK
2881 * config/avr/avr.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP):
2882 Call abort instead of fatal.
2883 (TRAMPOLINE_TEMPLATE): Call internal_error instead of fatal.
2884 * config/dsp16xx/dsp16xx.h (FUNCTION_PROFILER): Likewise.
2885 (FUNCTION_BLOCK_PROFILER, BLOCK_PROFILER): Likewise.
2886 (TRAMPOLINE_TEMPLATE, INITIALIZE_TRAMPOLINE): Likewise.
2887 (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Likewise.
2888 * config/rs6000/rs6000.h (RETURN_ADDRESS_OFFSET): Likewise.
2889
400500c4
RK
2890 * diagnostic.h (set_internal_error_function): Renamed.
2891 * toplev.h (internal_error): Renamed from fatal.
2892 (pfatal_with_name): Deleted.
2893 (fatal_io_error): Now has printf-style arguments.
2894 * diagnostic.c (pfatal_with_name): Deleted.
2895 (fatal_io_error): Rework to have args in printf-style.
2896 (set_internal_error_function): Renamed from set_fatal_function.
2897 (internal_error): Renamed from fatal.
2898 (error_recursion, fancy_abort): Call internal_error instead of fatal.
2899 * dwarf2out.c (get_cfa_from_loc_descr): Likewise.
2900 * emit-rtl.c (gen_realpart, gen_imagpart): Likewise.
2901 * expr.c (check_max_integer_computation_mode, expand_expr): Likewise.
2902 * flow.c (verify_flow_info): Likewise.
2903 * config/arm/arm.c (thumb_unexpanded_epilogue): Likewise.
2904 * config/mips/mips.c (save_restore_insns): Likewise.
2905
2906 * except.c (duplicate_eh_handlers): Call abort instead of fatal.
3844cd2e 2907 * flow.c (verify_flow_info): Likewise.
400500c4
RK
2908 * config/arm/arm.c (thumb_load_double_from_address): Likewise.
2909 * config/avr/avr.c (pttreg_to_str, unique_section): Likewise.
2910 (avr_normalize_condition): Likewise.
2911 * config/c4x/c4x.c (c4x_emit_libcall, c4x_valid_operands): Likewise.
2912 * config/dsp16xx/dsp16xx.c (dsp16xx_reg_class_from_letter): Likewise.
2913 (limit_reload_class, double_reg_to_memory): Likewise.
2914 (print_operand_address, emit_1600_code_shift): Likewise.
2915 (gen_tst_reg, gen_compare_reg): Likewise.
2916 * config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Likewise.
2917 * config/dsp16xx/dsp16xx.c (dsp16xx_invalid_register_for_compare):
2918 Deleted.
2919 * config/dsp16xx/dsp16xx.md (unnamed cmphi): Call abort instead of it.
2920
2921 * c-parse.in (methoddef): Call fatal_error instead of fatal.
2922 * objc/objc-act.c (build_ivar_chain): Likewise.
2923 * dwarfout.c (dwarfout_init): Call fatal_io_error instead of
2924 pfatal_with_name.
2925 * graph.c (clean_graph_dump_file): Likewise.
2926 * profile.c (init_branch_prob): Likewise.
2927 * objc/objc-act.c (objc_init): Likewise.
3844cd2e 2928
400500c4 2929 * config/arm/arm.c (arm_override_options): Make errors non-fatal.
3844cd2e 2930 * config/avr/avr.c (avr_override_options): Likewise.
400500c4
RK
2931 * config/c4x/c4x.c (c4x_expand_prologue): Likewise.
2932 * config/dsp16xx/dsp16xx.c (function_prologue): Likewise.
2933 * config/h8300/h8300.c (h8300_init_once): Likewise.
2934 * config/mips/mips.c (override_options): Likewise.
2935 * config/i386/i386.c (override_options): Likewise, rework.
2936 * config/m68k/m68k.c (override_options): Likewise.
2937
2938 * config/dsp16xx/dsp16xx.c (print_operand): Call output_operand_lossage
2939 instead of fatal.
2940 * config/mips/mips.c (print_operand): Likewise.
2941 * hash.c (hash_allocate): Don't check for failure returns from
2942 obstack functions that can't fail.
2943 (hash_table_init_n, hash_table_init): Likewise; also now return void.
2944 * hash.h (hash_table_init_n, hash_table_init): Now return void.
2945 * objc/objc_act.c (objc_check_decl): Remove unneeded fatal call.
2946 (get_object_reference): Likewise.
2947
eab4abeb
NC
29482001-02-04 Nick Clifton <nickc@redhat.com>
2949
2950 * config/arm/arm.c (all_cores): Add 710T, 720T, 740T, 940T, 9e,
2951 StrongARM1110, 10TDMI, and 1020T.
2952
7ce2fcb9
KG
29532001-02-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2954
2955 * mips.h (MULTILIB_ISA_DEFAULT): Don't use #elif.
2956
b6c02328
AO
29572001-02-04 Alexandre Oliva <aoliva@redhat.com>
2958
2959 * config/sh/sh.md (movdf load split): Pass register number to
2960 FP_OR_XD_REGISTER_P.
2961
1ca894a0
MM
29622001-02-04 Mark Mitchell <mark@codesourcery.com>
2963
2964 * cppinit.c (BC): New macro.
2965 (builtin_array): Add __GXX_WEAK__.
2966 * cpplib.h (builtin_type): Add BT_WEAK.
2967 * cppmacro.c (builtin_macro): Handle BT_WEAK.
2968 * defaults.h (SUPPORTS_ONE_ONLY): Define.
2969 * varasm.c (SUPPORTS_ONE_ONLY): Do not define.
2970
52b357ea
JJ
29712001-02-03 Jakub Jelinek <jakub@redhat.com>
2972
2973 * cppinit.c (append_include_chain): Honor NO_IMPLICIT_EXTERN_C.
2974
269592a8
NB
29752001-02-03 Neil Booth <neil@daikokuya.demon.co.uk>
2976
6fca22eb 2977 * cpphash.h: Rename _ALIGN POOL_ALIGN.
3844cd2e 2978 * cpplex.c (new_chunk, _cpp_pool_reserve): Update.
269592a8 2979
2da6090f
NB
29802001-02-03 Neil Booth <neil@daikokuya.demon.co.uk>
2981
6fca22eb 2982 * cpphash.h: Rename ALIGN _ALIGN.
3844cd2e 2983 * cpplex.c (new_chunk, _cpp_pool_reserve): Update.
2da6090f 2984
4e190cf3
CF
2985Fri Feb 2 23:15:29 2001 Christopher Faylor <cgf@cygnus.com>
2986
2987 * config/i386/cygwin.h (CPP_SPEC): Reorganize YA to better handle cross
2988 compilation environment.
2989 * config/i386/t-cygwin (T_CPPFLAGS): Define CYGWIN_CROSS_DIR to allow
2990 control over location of cygwin includes and libs.
2991
c98f0cdb
MH
29922001-02-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz)
2993
2994 * c4x.h (HARD_REGNO_CALL_PART_CLOBBERED): Fix typo.
2995
39ed8974
LB
29962001-02-02 lars brinkhoff <lars@nocrew.org>
2997
2998 * md.texi (Standard Names): remove reference to spur.md.
2999
0b53f039
MH
30002001-02-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz)
3001
3002 * c4x.h (IS_INT_CALL_SAVED_REG, IS_FLOAT_CALL_SAVED_REG): Define.
3003 (HARD_REGNO_CALL_PART_CLOBBERED): Use IS_FLOAT_CALL_SAVED_REG.
3004 (INITIAL_FRAME_POINTER_OFFSET, INITIAL_ELIMINATION_OFFSET): Likewise.
3005 * c4x.c (c4x_hard_regno_rename_ok): Use IS_XXX_CALL_SAVED_REG.
3006 (c4x_expand_prologue, c4x_expand_epilogue): Likewise.
3007
d001969e
HB
30082001-02-03 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
3009
3010 * c4x.c (group1_reg_operand, group1_mem_operand, arx_reg_operand,
3011 c4x_arn_reg_operand, c4x_arn_mem_operand): Do not check register
3012 number before reload.
3013 (c4x_adjust_cost): Return zero before reload.
3014 * c4x.md (load_immed_address+1, load_immed_address+2): Do not
3015 split before reload.
3016
40eef757
HB
30172001-02-03 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
3018
3019 * c4x.c (c4x_hard_regno_rename_ok): New.
3020 * c4x-protos.h (c4x_hard_regno_rename_ok): New.
3021 * c4x.h (HARD_REGNO_RENAME_OK): Define.
3022
0d6882a0
RK
3023Fri Feb 2 20:03:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3024
3025 * diagnostic.h: Add missing "extern" in all declarations.
3026
362f2295
AS
30272001-02-02 Alex Samuel <samuel@codesourcery.com>
3028
3029 * Makefile.in (gcc_gxx_target_include_dir): Generate dynamically
3030 as for gcc_gxx_include_dir.
3031
da312b55
NB
30322001-02-02 Neil Booth <neil@daikokuya.demon.co.uk>
3033
3034 * cpp.texi, invoke.texi: Update -Wtraditional documentation.
3035
38df95a4
AO
30362001-02-02 Alexandre Oliva <aoliva@redhat.com>
3037
e6dfd05f
AO
3038 * config/sh/sh.c (output_far_jump): Don't use braf on SH1. Emit
3039 label before alignment to be used as the braf base address.
3040 * config/sh/sh.md (length): Use longer lengths for SH1 PIC far
3041 branches.
3042 (casesi_jump_2): Require at least TARGET_SH2.
3043
38df95a4
AO
3044 * config/float-sh.h (LDBL_EPSILON, LDBL_MIN, LDBL_MAX): Prevent
3045 truncation to 32-bit doubles on -m3e and -m4-single-only.
3046
049f6ec9
MM
30472001-02-02 Mark Mitchell <mark@codesourcery.com>
3048
3844cd2e 3049 * gcc.c (init_gcc_specs): New function. Make -shared-libgcc
049f6ec9
MM
3050 the default when building a shared object.
3051 (init_spec): Use it.
3052 * testsuite/lib/g++.exp: Include the directory where libgcc
3053 is located to the LD_LIBRARY_PATH list.
1ca894a0 3054 * invoke.texi (-shared-libgcc): Document the cases in which
049f6ec9 3055 GCC defaults to using the shared libgcc.
3844cd2e 3056
483b9fd0
AO
30572001-02-02 Alexandre Oliva <aoliva@redhat.com>
3058
3059 * config/fp-bit.h (MAX_USI_INT, MAX_SI_INT): Don't assume
3060 unsigned is wide enough.
3061 (BITS_PER_SI): New.
3062 * config/fp-bit.c (_fpmul_parts): Don't assume 32-bits SI.
3063 (si_to_float): Likewise.
3064 (float_to_si, float_to_usi): Use BITS_PER_SI.
3065
770ca8c6
JO
30662001-02-01 Jeffrey Oldham <oldham@codesourcery.com>
3067
3068 * dwarf2out.c: Added explanation of abbreviations.
3069 (def_cfa_1): Added comments listing DWARF2 instructions.
3070 (cfa_temp_reg): Removed in favor of cfa_temp.
3071 (cfa_temp_value): Removed in favor of cfa_temp.
3072 (cfa_temp): New global variable.
3073 (dwarf2out_frame_debug_expr): Added extensive introductory
3074 comments explaining the function's transformations. Revised to
3075 use cfa_temp. Added some rtx checking. Generalize IOR case.
3076 (dwarf2out_frame_debug): Revised to use cfa_temp.
3077 (output_aranges): Cast as "unsigned" to avoid warning.
3078 * rtl.texi (RTX_FRAME_RELATED_P): Revise entry to emphasize better
3079 explain which instructions must be marked.
3080
cad33336
RH
30812001-02-01 Richard Henderson <rth@redhat.com>
3082
3083 * local-alloc.c (update_equiv_regs): Copy INSN_CODE to the
3084 new instruction.
3085
8a5d897f
AO
30862001-02-01 Alexandre Oliva <aoliva@redhat.com>
3087
3088 * config/sh/crt1.asm (main_k): Modified so that start calls
3089 ___setup_argv_and_call_main.
3090
bd969772
NB
30912001-02-01 Neil Booth <neil@daikokuya.demon.co.uk>
3092
6fca22eb
RH
3093 * cpphash.h (struct cpp_buffer): Move saved_flags from cpp_reader.
3094 * cpplex.c (_cpp_lex_token): New token picks up the saved flags,
3095 and AVOID_LPASTE is cleared on meeting an unescaped newline.
3096 * cppmacro.c (builtin_macro): Set builtin flags here.
3097 (paste_all_tokens): Preserve AVOID_LPASTE on pasted token.
3098 (replace_args): Clarify intent.
3099 (cpp_get_token): Macro expansion tokens get the saved flags.
3100 Update.
3101 * cppmain.c (scan_buffer): Remove now-redundant print.printed
3102 check.
bd969772 3103
8c0abc88
JO
31042001-02-01 Jeffrey Oldham <oldham@codesourcery.com>
3105
3106 * config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Reverse change of
3107 2001-Jan-29.
3108
fcbfaa65
RK
3109Thu Feb 1 07:22:41 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3110
d5457140
RK
3111 * builtins.c (expand_builtin_alloca): allocate_dynamic_stack_space
3112 returns Pmode pseudo, but we need ptr_mode.
3113 * explow.c (allocate_dynamic_stack_space): Use plus_constant.
3114 Remove bogus conversions; use HOST_WIDE_INT for size.
3115 Don't use TARGET if wrong mode.
3116
fcbfaa65
RK
3117 * config/i386/i386.c (ix86_compute_frame_size): Allow
3118 stack_alignment_needed to be non-default even if size is zero.
3119
10d17cb7
AM
31202001-01-31 Alan Modra <alan@linuxcare.com.au>
3121
824e7605
AM
3122 * (hppa_init_pic_save): Emit the pic offset table
3123 reg save after last_parm_insn.
3124 * pa.c (hppa_init_pic_save): New function.
3125 * pa.h (hppa_init_pic_save): Declare.
3126 * pa.md (call, call_value, sibcall, sibcall_value): Use
3127 the above instead of duplicated code.
3128
10d17cb7
AM
3129 * pa.c (hppa_encode_label): Correct size of alloca buffer
3130 so we don't overrun it. Correct leading `*' case.
3131 * pa.h (STRIP_NAME_ENCODING): Simplify now that we don't
3132 need to handle `*@'.
3133 (FUNCTION_NAME_P): Likewise.
3134
b9e6ebe9
RH
31352001-01-31 Richard Henderson <rth@redhat.com>
3136
c3e5f9fa
RH
3137 * config.gcc (alpha-osf5): Use float-i128.h.
3138
b9e6ebe9
RH
3139 * config/float-i128.h (FLT_EVAL_METHOD, DECIMAL_DIG): Define.
3140 * config/float-i32.h: Likewise.
3141 * config/float-i64.h: Likewise.
3142 * config/float-sh.h: Likewise.
3143 * config/float-sparc.h: Likewise.
3144
dbac5d0d 31452001-01-31 DJ Delorie <dj@redhat.com>
aac280fb
DD
3146
3147 * expmed.c (extract_bit_field): allow non-integral modes if we
3148 want to extract a whole register from itself.
3149
ce662d4c
JJ
31502001-01-31 Jakub Jelinek <jakub@redhat.com>
3151
3152 * c-typeck.c (set_init_index): If first is equal to last, assume as
3153 if it was not a range at all.
3154
8b1065f1
AO
31552001-01-31 Alexandre Oliva <aoliva@redhat.com>
3156
3cb95a7d 3157 * config/fp-bit.c: Include tm.h.
8b1065f1
AO
3158 (float_to_si): Don't assume SImode is 32-bits wide.
3159 (float_to_usi): Likewise.
3160
0aca1a4f
JM
31612001-01-31 Joseph S. Myers <jsm28@cam.ac.uk>
3162
3163 * c-parse.in (structsp): Pedwarn when "enum foo" refers to an
3164 incomplete type.
3165 (typename): Call pending_xref_error after parsing typed_typespecs.
3166 * c-decl.c (lookup_tag): Give error immediately rather than
3167 leaving it pending if the tag of the wrong type is in the same
3168 binding level.
3169 (xref_tag): Don't pedwarn for forward declarations of enum types
3170 here.
3171 * gcc.texi (Actual Bugs): Remove entry for misuse of struct, union
3172 and enum tags.
3173
92fa350a
AO
31742001-01-31 Alexandre Oliva <aoliva@redhat.com>
3175
3176 * config/float-sparc.h (LDBL_MAX) [sparc32]: Fix typo.
3177
f000294d
NB
31782001-01-31 Neil Booth <neil@daikokuya.demon.co.uk>
3179
6fca22eb
RH
3180 * cpplib.c (T_ELIF): Move to STDC89, not that it matters.
3181 (_cpp_handle_directive): Suggest not using #elif with -Wtraditional.
f000294d 3182
ec1a23e6
NB
31832001-01-31 Neil Booth <neil@daikokuya.demon.co.uk>
3184
6fca22eb
RH
3185 * cpphash.h (struct cpp_reader): New saved_flags.
3186 * cppmacro.c (cpp_get_token): Use saved_flags to remember
3187 to avoid a paste after a pasted token.
3844cd2e 3188
5d0e6486
AO
31892001-01-31 Alexandre Oliva <aoliva@redhat.com>
3190
3191 * libgcc2.h (Wtype_MAX, Wtype_MIN): Define.
3192 * libgcc2.c (__fixunssfSI, __fixunsdfSI, __fixunsxfSI): Use
3193 Wtype_MIN instead of LONG_MIN.
3194
b2321b26
JO
31952001-01-30 Jeffrey Oldham <oldham@codesourcery.com>
3196
3197 * fixinc/fixincl.tpl: Add 2001 to copyright. Change name of
3198 README file.
3199 * fixinc/fixincl.x: Regenerated.
3200 * fixinc/inclhack.def (irix_limits_const): New definition to
3201 convert "const" to "__const" in limits.h.
3202
4989b020
JO
32032001-01-30 Jeffrey Oldham <oldham@codesourcery.com>
3204
3205 * fixinc/genfixes (AG): Fix "autogen4" thinko.
3206
2f33c635
HB
32072001-01-30 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
3208
3209 * regmove.c (try_auto_increment): Change REG_DEAD into REG_UNUSED
3210 when register dies in the insn.
3211
bdda3325
NB
32122001-01-30 Neil Booth <neil@daikokuya.demon.co.uk>
3213
3214 * diagnostic.c (fatal): Fix word wrap.
3215
48b4d901
AO
32162001-01-30 Alexandre Oliva <aoliva@redhat.com>
3217
3218 * combine.c (try_combine): Fix SUBREG setting for
3219 HOST_BITS_PER_WIDE_INT >= 2 * BITS_PER_WORD.
3220
1e738f74
FS
32212001-01-30 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
3222
3223 * jump.c (comparison_dominates_p): Don't try to handle UNKNOWN
3224 comparison codes.
3225
e9770d51
NB
32262001-01-30 Neil Booth <neil@daikokuya.demon.co.uk>
3227
6fca22eb
RH
3228 * c-decl.c (c_expand_body): Check TYPE_SIZE_UNIT (ret_type)
3229 is not NULL.
3230 * toplev.c (decode_W_option): Update warn_larger_than
3231 unconditionally for each processed switch.
e9770d51 3232
d966ae60
JDA
32332001-01-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
3234
3235 * pa.c (pa_init_machine_status): Initialize pic_offset_table_save_rtx
3236 to NULL_RTX.
3237 (hppa_expand_prologue): Delete code to save pic offset table register
3238 in the function prologue.
3239 * pa.h (PIC_OFFSET_TABLE_SAVE_RTX): Correct type in comment.
3240 * pa.md (call, call_value, sibcall, sibcall_value): Save the pic offset
3241 table register at the beginning of the function after the prologue.
3242
f25561bb
LB
32432001-01-29 lars brinkhoff <lars@nocrew.org>
3244
6fca22eb 3245 * tm.texi (PUSH_ROUNDING): Remove duplicate lines.
f25561bb 3246
7ea9fcc6
JDA
32472001-01-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
3248 Jeff Law <law@redhat.com>
3249
3250 * pa.md (return): Revise comment for trivial return.
3251 (return_internal): Non-trivial return pattern for non-PIC code.
3252 (return_internal_pic): Non-trivial return pattern for PIC code.
3253 It uses the PIC register to ensure it is restored after
3254 function calls.
3255 (epilogue): Generate appropriate return for PIC and non-PIC code.
3256
05d9f8b0
CF
3257Mon Jan 29 23:53:14 2001 Christopher Faylor <cgf@cygnus.com>
3258
3259 * config/i386/cygwin.h: Fix -mno-cygwin search path for link.
3260
80c8b1aa
DD
32612001-01-29 DJ Delorie <dj@redhat.com>
3262
3263 * combine.c (if_then_else_cond): Pass the correct mode to
3264 operand_subword() for constants.
3265
f6fc3552
CF
3266Mon Jan 29 20:38:19 2001 Christopher Faylor <cgf@cygnus.com>
3267
3268 * config/i386/cygwin.h: Add w32api to include search. Search different
3269 directories in a cross-build environment.
3270
2b5f2501
RH
32712001-11-29 Tim Josling <tej@melbpc.org.au>
3272
3273 * tree.h (TYPE_STUB_DECL): Add documentation.
3274
32752001-11-29 Laurynas Biveinis <lauras@softhome.net>
1270a9b3
LB
3276
3277 * sdbout.c (sdbout_one_type): Skip types with indeterminate size.
3278 (sdbout_field_types): Likwise. Fix use of host_integerp.
3279
9c7c6e6c
TP
32802001-01-29 Thomas Pfaff <tpfaff@gmx.net>
3281
3282 * mingw32.h: Override STARTFILE_SPEC and LINK_SPEC declared in
3283 cygwin.h.
3284
f1e9980a
JO
32852001-01-29 Jeffrey Oldham <oldham@codesourcery.com>
3286
3287 * config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Revise definition
3288 to use flag_gnu_linker.
3289
766ee681
NB
32902001-01-29 Neil Booth <neil@daikokuya.demon.co.uk>
3291
6fca22eb
RH
3292 * cpplib.c (T_BAD_DIRECTIVE): Remove.
3293 (_cpp_init_stacks): Loop from 0 to N_DIRECTIVES - 1.
766ee681 3294
718b8ea5
JM
32952001-01-29 Joseph S. Myers <jsm28@cam.ac.uk>
3296
3297 * tree.c, tree.h (build_parse_node): Remove; was identical to
3298 build_nt.
3299 * c-lang.c (start_cdtor), objc/objc-act.c
3300 (build_module_descriptor): Use build_nt instead of
3301 build_parse_node.
3302
adc88131
JJ
33032001-01-29 Jakub Jelinek <jakub@redhat.com>
3304
3305 * config/i386/i386.md (addqi_1_lea): Fix mode (QI instead of HI).
3306 (testqi_1, andqi_2): If widening to SImode, make sure CONST_INT does
3307 not have any upper bits set.
3308
42c0c80a
PE
33092001-01-29 Phil Edwards <pme@sources.redhat.com>
3310
3311 * COPYING.LIB: Update to LGPL 2.1 from the FSF.
3312
f2d1f0ba
KG
33132001-01-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3314
3315 * stmt.c (estimate_case_costs): Use integer_minus_one_node.
3316
3317 * tree.c (build_common_tree_nodes_2): Set integer_minus_one_node.
3318
3319 * tree.h (tree_index): Add new element TI_INTEGER_MINUS_ONE.
3320 (integer_minus_one_node): Define.
3321
4f92461a
AO
33222001-01-28 Alexandre Oliva <aoliva@redhat.com>
3323
3324 * Makefile.in (bootstrap2-lean): Fix typo.
3325
26ec42ee
NB
33262001-01-28 Neil Booth <neil@daikokuya.demon.co.uk>
3327
6fca22eb
RH
3328 * cpphash.c (_cpp_cleanup_hashtable, _cpp_lookup_with_hash)
3329 : Don't set fe_value.
3844cd2e 3330 * cpplib.h (AVOID_LPASTE): New flag.
6fca22eb
RH
3331 (struct cpp_hashnode): Remove fe_value.
3332 * cpplex.c (cpp_avoid_paste): Don't paste '.' with a number.
3333 * cppmacro.c (builtin_macro): Don't set flags here.
3334 (replace_args): Set AVOID_LPASTE flag on first token of an
3335 argument, and the token following it.
3336 (cpp_get_token): Set AVOID_LPASTE flag on first token of a
3337 macro expansion, and on the token following it. Do it for
3338 builtins too.
3339 * cppmain.c (scan_buffer): Avoid pasting only flagged tokens.
26ec42ee 3340
0be25992
RH
33412001-01-27 Richard Henderson <rth@redhat.com>
3342
3343 * config/alpha/t-ieee: Remove multilibbing.
3344 (TARGET_LIBGCC2_CFLAGS): Add -mieee.
3345
c913b6f1
KG
33462001-01-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3347
3348 * configure.in: Arrange to include defaults.h in [ht]config.h/tm.h.
3349
3350 * Makefile.in: Remove all dependencies on defaults.h.
3351 * builtins.c: Don't include defaults.h.
3352 * c-common.c: Likewise.
3353 * c-decl.c: Likewise.
3354 * c-pragma.c: Likewise.
3355 * c-typeck.c: Likewise.
3356 * combine.c: Likewise.
3357 * i386.c: Likewise.
3358 * frame-ia64.c: Likewise.
3359 * cppexp.c: Likewise.
3360 * crtstuff.c: Likewise.
3361 * dbxout.c: Likewise.
3362 * dwarf2out.c: Likewise.
3363 * dwarfout.c: Likewise.
3364 * emit-rtl.c: Likewise.
3365 * except.c: Likewise.
3366 * expr.c: Likewise.
3367 * final.c: Likewise.
3368 * frame-dwarf2.c: Likewise.
3369 * libgcc2.c: Likewise.
3370 * optabs.c: Likewise.
3371 * profile.c: Likewise.
3372 * sdbout.c: Likewise.
3373 * toplev.c: Likewise.
3374 * tradcif.y: Likewise.
3375 * tree.c: Likewise.
3376 * varasm.c: Likewise.
3377
013dea40
KG
33782001-01-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3379
3380 * builtins.c (expand_builtin_fputs): Use size_one_node when
3381 transforming into fwrite.
3382
2c5e91d2
JM
33832001-01-27 Joseph S. Myers <jsm28@cam.ac.uk>
3384
3385 * extend.texi (Attribute Syntax): New section.
3386
825ac704
MS
33872001-01-27 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3388
3389 * fixproto: Correctly install synthesised unistd.h and stdlib.h when
3390 they didn't need fixing.
3391
70305f2b
RH
33922001-01-27 Janis Johnson <janis@us.ibm.com>
3393
3394 * config.gcc (i[34567]86-sequent-{ptx4*,sysv4*}): Use usegas.h
3395 if appropriate.
3396 * config/ptx4.h: Several fixes to build on DYNIX/ptx v4.[456], and
3397 to remove macro definitions that are duplicated from elfos.h.
3398
33992001-01-27 Richard Henderson <rth@redhat.com>
3400
3401 * config/i386/sco5gas.h: Move ...
3402 * config/usegas.h: ... here.
3403 * config.gcc (i[34567]86-*-sco3.2v5) [tm_file]: Update.
3404
940ff66d
JJ
34052001-01-27 Jakub Jelinek <jakub@redhat.com>
3406
3407 * c-typeck.c (struct constructor_stack): Add range_stack member.
3408 (really_start_incremental_init): Clear it.
3409 (push_init_level): Save constructor_range_stack and clear it if
3410 pushing explicit braces.
3411 (pop_init_level): abort if constructor_range_stack is non-zero at
3412 explicit closing brace. Restore saved constructor_range_stack if
3413 not implicit.
3414
de1b33dd
AO
34152001-01-27 Alexandre Oliva <aoliva@redhat.com>
3416
3417 * expr.c (emit_move_insn): Add REG_EQUAL note when constant loaded
3418 into register was forced into memory.
3419
3d84f80f
AO
34202001-01-27 Alexandre Oliva <aoliva@redhat.com>
3421
3422 * Makefile.in: Remove uses of + before $(MAKE).
3423
2a2137c4
RH
34242001-01-26 Richard Henderson <rth@redhat.com>
3425
3426 * stmt.c (cost_table): Remove.
3427 (COST_TABLE, cost_table_initialized): New.
3428 (estimate_case_costs): Use the later instead of the former.
3429 (balance_case_nodes): Likewise.
3430
66cce54d
RH
34312001-01-26 Richard Henderson <rth@redhat.com>
3432
3433 * alias.c (objects_must_conflict_p): Read-only slots may not
3434 conflict despite having the same type.
3435
616fde53
MH
34362001-01-27 Michael Hayes <mhayes@redhat.com>
3437
3438 * loop.c (loop_giv_reduce_benefit): Copy mode size into
3439 int variable.
3440 (check_ext_dependant_givs): Initialise u_start_val and
3441 u_end_val.
3442 (load_mems): Make last_max_reg unsigned.
3443 (try_swap_copy_prop): Use INSN_P and initialise set.
3444
b63471e9
DC
3445Fri Jan 26 23:22:58 2001 Denis Chertykov <denisc@overta.ru>
3446
3447 * README.AVR : Removed.
3448
d1ebd58d
JL
3449Fri Jan 26 11:37:26 2001 Jeffrey A Law (law@cygnus.com)
3450
3451 * pa-64.h (text_section): Remove declaration.
3452
3453 * pa.md (return_internal): Remove mode on PIC register use.
3454
a8d1550a
LB
34552001-01-25 lars brinkhoff <lars@nocrew.org>
3456
3457 * tm.texi (DATA_ALIGNMENT, LOCAL_ALIGNMENT, ASM_OPEN_PAREN,
3458 ASM_CLOSE_PAREN): fix typos.
3459
78e0ba39
MM
34602001-01-25 Mark Mitchell <mark@codesourcery.com>
3461
3462 * acconfig.h: Define `const' to the empty string if neither
3463 __STDC__ nor __cplusplus is defined.
3464 * config.in: Regenerated.
3465
05dba9ee
DE
34662001-01-25 David Edelsohn <edelsohn@gnu.org>
3467
3468 * config.gcc (rs6000-ibm-aix[5-9]*): Change to aix51.h.
3469 * collect2.c (main): Delete importf. Add ".obj" file extension.
3470 (GCC_CHECK_HDR): Handle AIX V5 new magic number.
3471 (aix_std_libs): Add additional AIX libraries to skip.
3472 * config/rs6000/aix.h (MY_ISCOFF): Add AIX V5 new magic number.
3473 * config/rs6000/aix51.h: New file.
3474
86e21212
MH
34752001-01-25 Michael Hayes <mhayes@redhat.com>
3476
3477 * loop.c (loop_call_insn_emit_before, loop_call_insn_hoist): New.
3478 (loop_insn_emit_before): No longer static.
3479 (move_movables): Replace emit_insn_after with loop_insn_emit_after.
3480 (loop_givs_rescan, load_mems): Likewise.
3481 (check_dbra_loop): Replace emit_insn_before with loop_insn_emit_before.
3482 (maybe_eliminate_biv_1):
3483 (move_movables): Replace emit_call_insn_before with
3484 loop_call_insn_hoist.
3485 * loop.h (loop_insn_emit_before): Add.
3844cd2e 3486 * unroll.c (copy_loop_body): Replace emit_insn_before with
86e21212
MH
3487 loop_insn_emit_before.
3488
7fa531a6
NB
34892001-01-25 Neil Booth <neil@daikokuya.demon.co.uk>
3490
70305f2b 3491 * diagnostic.c (fatal): Request preprocessed source.
7fa531a6 3492
91239b93
R
3493Thu Jan 25 02:01:16 2001 J"orn Rennecke <amylaar@redhat.com>
3494
3495 * c-decl.c (duplicate_decls): If different_binding_level is nonzero,
3496 olddecl has argument types and newdecl has none, use the argument
3497 types from olddecl.
3498
e57cabac
UD
34992001-01-24 Ulrich Drepper <drepper@redhat.com>
3500
3501 * dwarf2out.c (prefix_of): New function. Determine longest common
3502 prefix of the two arguments. The units are whole path components.
3503 (output_file_names): When adding a new directory find the one entry
3504 with the longest common prefix already in the list. Artificially
3505 generate entry if there is none for this prefix.
3506 Fix test to check whether the zeroth directory entry is used.
3507
304a22dd
R
3508Wed Jan 24 23:51:55 2001 J"orn Rennecke <amylaar@redhat.com>
3509
3510 * reload1.c (reload_reg_free_for_value_p): New parameter start_regno.
3511 Changed all callers. Take it into account when deciding if a
3512 previously loaded value matches.
3513
0a28aef9
RH
35142001-01-24 Richard Henderson <rth@redhat.com>
3515
3516 * reload.c (find_reloads_subreg_address): Fail the substitution
3517 if the resulting address is insufficiently aligned.
3518
1cac8785
DD
35192001-01-24 DJ Delorie <dj@redhat.com>
3520
3521 * combine.c (combine_simplify_rtx): If the modes are all VOIDmode,
3522 check the original operand's mode also.
3523 * simplify-rtx.c (simplify_ternary_operation): Ditto.
3524
cedd825f
JM
35252001-01-24 Joseph S. Myers <jsm28@cam.ac.uk>
3526
3527 * c-parse.in (cast_expr): Move compound literals from here ...
3528 (primary): ... to here. Use standard terminology "compound
3529 literal" instead of "constructor expression".
3530
445c435a
JM
35312001-01-24 Joseph S. Myers <jsm28@cam.ac.uk>
3532
3533 * gcc.1, cpp.1: Regenerate.
3534
4cfc6042
AO
35352001-01-24 Alexandre Oliva <aoliva@redhat.com>
3536
3537 * calls.c (emit_library_call_value_1): Memory slot for
3538 pass-by-reference argument should have the mode of the argument,
3539 not of the pointer to it.
3540
597dba19
TT
35412001-01-24 Tom Tromey <tromey@redhat.com>
3542
3543 * gcc.texi (G++ and GCC): Mention gcj manual.
3544 (Standards): Link to section of manual mentioning gcj/Java
3545 compatibility.
3546
7855db7c
JJ
35472001-01-24 Jakub Jelinek <jakub@redhat.com>
3548
3549 * cppfiles.c (_cpp_read_file): Add to dependencies if requested.
3550 * cppinit.c (cpp_start_read): Remove deps_add_dep call.
3551 * tradcpp.c (main): Add -imacros or -include'd dependencies
3552 for -M*.
3553 * cpp.texi (-M, -MM): Document -M -include behaviour.
3554
6a40fc2b 35552001-01-24 Roger Collins <roger@ProProject.com>
e57cabac 3556
70305f2b 3557 * config/i386/xm-i386.h: Make __i386__ a boolean macro.
6a40fc2b 3558
2f3fdc52
WC
35592001-01-24 Will Cohen <wcohen@redhat.com>
3560
3561 * config/mips/abi64.h (RETURN_IN_MEMORY): Always take into account
3562 whether registers are 32 bits or 64 bits in size.
3563
a941b588
BE
35642001-01-24 Ben Elliston <bje@redhat.com>
3565
3566 * config/m32r/m32r.h (PREDICATE_CODES): Remove m32r_not_same_reg.
3567
64b4ab5a
RH
35682001-01-24 Richard Henderson <rth@redhat.com>
3569
3570 * config/alpha/alpha.md (builtin_longjmp_internal): New.
3571 (builtin_longjmp): Use it instead of emit_indirect_jump.
3572
b0cc7919
JDA
35732001-01-23 John David Anglin <dave@hiauly1.hia.nrc.ca>
3574
3575 * bb-reorder.c (make_reorder_chain_1): Handle case where
3576 jump edge goes to the same block as the fallthru edge.
e57cabac 3577
0024a804
JW
35782001-01-23 Jim Wilson <wilson@redhat.com>
3579
3580 * dwarf2out.c (dwarf2out_line): Make last_file_num be unsigned.
3581 * frame.h (__ia64_personality_v1): Add prototype.
3582 * libgcc2.c (ia64_throw_helper): Change personality declaration to
3583 prototype form. Add void * cast to first argument to personality
3584 call.
3585 * real.c (e113toe): Surround with INTEL_EXTENDED_IEEE_FORMAT ifdefs.
3586 (asctoe113): Likewise.
3587 * config/ia64/frame-ia64.c: Include eh-common.h.
3588 * config/ia64/ia64-protos.h (sdata_section, sbbs_section): Add
3589 prototypes.
3590 * config/ia64/ia64.c (emit_insn_group_barriers): Add ATTRIBUTE_UNUSED
3591 to dump parameter.
3592 (itanium_split_issue): Add prototype.
3593 (gen_nop_type): Ifdef out.
3594 (find_best_packet): Initialize best_packet.
3595 (ia64_encode_section_info): New local string. Use for ggc_alloc_string
3596 result.
3597 * config/ia64/ia64.h (ASM_OUTPUT_LONG_DOUBLE): Use 0L not 0.
3598 * config/ia64/ia64.md (bsp_value): Add explicit stop bit at start.
3599 (flushrs): Add explicit stop bit at end.
3600 * config/ia64/lib1funcs.asm (__ia64_restore_stack_nonlocal): Change
3601 trailing \ to >.
e57cabac 3602
8a1894ac
CD
36032001-01-23 Chris Demetriou <cgd@broadcom.com>
3604
3605 * libgcc-std.ver (GCC_3.0): Add __terminate_func_set to list
3606 of EH symbols.
3607 * libgcc2.c (__terminate_func): Make variable static.
3608 (__terminate_set_func): New function to set __terminate_func.
3609 * libgcc2.h (__terminate_func_ptr): New typedef.
3610 (__terminate_set_func): New function.
3611
240f9c2b
RH
36122001-01-23 Richard Henderson <rth@redhat.com>
3613
3614 * flow.c (init_propagate_block_info): Don't consider unchanging
3615 memories for dead frame store elimination.
3616
fc9f395a
RH
36172001-01-23 Richard Henderson <rth@redhat.com>
3618
3619 * varasm.c (UNIQUE_SECTION): Move default implementation ...
3620 * defaults.h: ... here.
3621
860b3499
MH
36222001-01-24 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
3623
3624 * c4x.h (TARGET_LOAD_DIRECT_MEMS): Define.
3625
955dc84a
NB
36262001-01-23 Neil Booth <neil@daikokuya.demon.co.uk>
3627
70305f2b 3628 * c-lex.c (lex_charconst): Fix typo: s/p/str.
955dc84a 3629
608ab802
FS
36302001-01-23 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
3631
3632 * rs6000.h (rs6000_return_addr): Move prototype from here...
3633 * rs6000-protos.h (rs6000_return_addr): ...to here.
3634 (rs6000_init_expanders): Delete prototype.
3635
371e300b
NC
36362001-01-23 Nick Clifton <nickc@redhat.com>
3637
3638 * invoke.texi: Replace , with \, inside @gccoptlist macros.
3639 (Spec Files): Document %B and %j and %. and %v3 and %M and
3640 %{S*&T} spec switches.
3641
4a1f52a8
HB
36422001-01-24 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
3643
3644 * c4x.c (c4x_r11_set_p): Calculate rtx code correctly.
3645
c933c209
CD
36462001-01-23 Chris Demetriou <cgd@sibyte.com>
3647 Neil Booth <neil@daikokuya.demon.co.uk>
3648
70305f2b
RH
3649 * cpperror.c: Merge handlers of PEDWARN and WARNING.
3650 Have -Werror make pedantic warnings errors, like the
3651 rest of GCC.
c933c209 3652
3fb74b82
PE
36532001-01-23 Phil Edwards <pme@sources.redhat.com>
3654
3655 * c-tree.texi (IDENTIFIER_LENGTH): Fix typo.
3656
96e60f0c
JJ
36572001-01-23 Jakub Jelinek <jakub@redhat.com>
3658
3659 * integrate.h (struct inline_remap): Add compare_src, compare_mode.
3660 * integrate.c (expand_inline_function): Initialize them.
3661 (subst_constants): If changing COMPARE so that both its arguments
3662 will be VOIDmode and the comparison mode will be lost, note
3663 compare_mode. Use the recorded compare_mode to optimize
3664 IF_THEN_ELSE.
3665
3f4907a6
JM
36662001-01-23 Jason Merrill <jason@redhat.com>
3667
3668 * dwarf2out.c (new_die): Use xcalloc.
3669 (output_die): Abort rather than emit a local reference to offset 0.
3670
44f715c8
AH
36712001-01-17 Andrew Haley <aph@redhat.com>
3672
3673 * libgcc2.c (get_reg_addr): Don't abort if we haven't got a copy
3674 of a saved register; return NULL instead.
3675 (copy_reg): Take a pointer to a source register rather than a
3676 frame_state.
3677 (next_stack_level): Remember the address in the stack frame of all
3678 saved registers.
3679 Use the saved register pointer array as the source of the CFA.
3680 (throw_helper): Rewrite. Unwind once rather than twice and keep
3681 track of saved registers as we go.
e57cabac 3682
eb253d90
HB
36832001-01-23 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
3684
3685 * c4x-protos.h (c4x_legitimize_reload_address): Remove.
3686 * c4x.c (c4x_legitimize_reload_address): Remove.
3687 * c4x.h (LEGITIMIZE_RELOAD_ADDRESS): Rewrite to generate correct
3688 reload address for ldp(k) insn.
3689
2caa0ddf
JL
3690Mon Jan 22 20:53:47 2001 Jeffrey A Law (law@cygnus.com)
3691
3692 * pa.md (return_internal): Add a USE of the PIC register to ensure
3693 it is restored after each call.
3694 (return expander): Corresponding changes.
3695
71f123ca
FS
36962001-01-22 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
3697
3698 * rs6000.h (INIT_EXPANDERS): Delete.
3699 (RETURN_ADDR_RTX): Call rs6000_return_addr().
3700 * rs6000.c (rs6000_override_options): Call *_machine_status from
3701 here...
3702 (rs6000_init_expanders): ...instead of here. Delete.
3703 (rs6000_mark_machine_status): New function.
3704 (rs6000_init_machine_status): Use xcalloc.
3705 (rs6000_return_addr): Generate RTX for the return address.
3706 (rs6000_ra_ever_killed): New, check if LR was ever destroyed.
3707 (rs6000_stack_info): Use it.
3708
5dab7f92
TP
37092001-01-22 Thomas Pfaff <tpfaff@gmx.net>
3710
3711 * gthr-win32.h: Include errno.h to get a declaration for
3712 EINVAL and _mingw.h if the target is mingw32.
3713
586964a7
AFV
37142001-01-22 Andres Felipe Vargas <avargas@teletulua.com.co>
3715
3716 * cpp.texi: Correct typos.
3717
f5f5363f
RK
3718Mon Jan 22 13:59:09 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3719
3720 * explow.c (probe_stack_range): Ensure value passed to
3721 stack_check_libfunc is ptr_mode, not Pmode.
3722
44e4159d
R
3723Mon Jan 22 16:53:06 2001 J"orn Rennecke <amylaar@redhat.com>
3724
3725 * recog.c (validate_replace_rtx_1): In ZERO_EXTEND / SIGN_EXTEND
3726 case, don't use operand_subword to calculate a SUBREG that is
3727 wider than a word.
3728
3729 * rtl.texi: Comparisons yield 0 or STORE_FLAG_VALUE.
3730
0bbcfbaf
HB
37312001-01-22 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
3732
3733 * c4x.c (c4x_valid_rptb_p, c4x_label_ref_used_p): New functions.
3734 (c4x_rptb_insert): Call c4x_valid_rptb_p to check if repeat block is
3735 valid. If not replace it by equivalent insns.
3736
5078f5eb
HB
37372001-01-22 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
3738
3739 * c4x.c (c4x_check_legit_addr): Only check CONST. Not if CONST
3740 contains SYMBOL_REF, LABEL_REF and CONST_INT.
3741 (c4x_U_constraint, symbolic_address_operand): Likewise.
3742 (c4x_immed_float_constant): Do not check if CONST_DOUBLE is in
3743 memory.
3744 (c4x_r11_set_p, c4x_check_laj_p): New functions.
3745 * c4x-protos.h (c4x_check_laj_p): Add prototype.
e57cabac 3746 * c4x.md (in_annul_slot_3): Do not allow auto-increment in last
5078f5eb
HB
3747 anulling slot because of silicon bug.
3748 (laj, lajv): Call c4x_check_laj_p to check for silicon bug.
3749
6dc0d164
AM
37502001-01-22 Alan Modra <alan@linuxcare.com.au>
3751
70305f2b
RH
3752 * cppexp.c (parse_charconst): Change `mask' type to agree
3753 with parse_escape.
6dc0d164 3754
c7f0da1d
RH
37552001-01-21 Richard Henderson <rth@redhat.com>
3756
3757 * config/i386/i386.c (ix86_asm_file_end): Disable putting
3758 pic_label_name in a linkonce section.
3759
380a627a
PT
37602001-01-17 Philipp Thomas <pthomas@suse.de>
3761
3762 * aclocal.m4 (AM_WITH_NLS): Add -lintl to LIBS if gettext was
3763 found in libintl.
3764 * configure: Regenerate.
3765
02a65aef
R
3766Sun Jan 21 02:38:56 2001 J"orn Rennecke <amylaar@redhat.com>
3767
3768 * expmed.c (synth_mult, expand_mult_highpart, expand_divmod): Guard
3769 uses of shift_cost, shiftadd_cost and shiftsub_cost with bound checks.
3770
56b871c1
DC
3771Sun Jan 21 09:44:17 2001 Denis Chertykov <denisc@overta.ru>
3772
3773 * config/avr/avr.c (ret_cond_branch): New argument (reverse) added.
3774 If REVERSE nonzero then condition code in X must be reversed.
3775 (encode_section_info): Optimise if/else.
3776 (avr_function_value): Fix formatting.
3777
3778 * config/avr/avr.md (branch): Call to ret_cond_branch changed.
3779 (difficult_branch): Likewise.
3780 (rvbranch): Likewise.
3781 (difficult_rvbranch): Likewise.
3782
3783 * config/avr/avr-protos.h (ret_cond_branch): Prototype changed.
3784
3785 * config/avr/libgcc.S: Fix comment.
3786
04e91ffb
MS
37872001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3788
3789 * sdbout.c (PUT_SDB_DEF): Fix after last bogus change.
3790
3943e756
MS
37912001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3792
3793 * cppinit.c (INO_T_EQ): Don't use #elif, fix formatting.
3794
b3e1e64f
MS
37952001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3796
3797 * aclocal.m4 (gcc_AC_FUNC_STRSTR): New macro.
3798 * configure.in (gcc_AC_FUNC_STRSTR): Add invokation.
3799 * configure, config.in: Regenerate.
3800 * Makefile.in (STRSTR, HOST_STRSTR, USE_HOST_STRSTR): New variables.
3801 (LIBDEPS, HOST_LIBDEPS, LIBS, HOST_LIBS): Add strstr handling.
3802 (strstr.o, $(HOST_PREFIX_1)strstr.o): New rules.
3803 (doprint.o): New rule.
3804
47f8b473
JM
38052001-01-20 Joseph S. Myers <jsm28@cam.ac.uk>
3806
3807 * c-typeck.c (digest_init): Handle boolean types as scalars.
3808
2954d7db
RK
3809Sat Jan 20 12:46:57 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3810
3811 * stmt.c (expand_return): Don't return anything if size is zero.
3812 Delete redundant assignment to BYTES.
3813 * expr.c (move_block_from_reg): Do nothing if NREGS is zero.
3814
1d26ac96
MM
38152001-01-20 Marek Michalkiewicz <marekm@linux.org.pl>
3816
3817 * config/avr/avr.h (INIT_TARGET_OPTABS): Remove most of it, was
3818 the same as the default library function names.
3819 * config/avr/avr.md: Document special characters after '%'.
3820 (mulqi3, mulhi3, mulsi3): Call libgcc.S functions ourselves,
3821 knowing which of the call-used registers are really clobbered.
3822 (divmodqi4, udivmodqi4, divmodhi4, udivmodhi4, divmodsi4, udivmodsi4):
3823 New. Both quotient and remainder from one libgcc.S call.
3824 * config/avr/libgcc.S: Optimize mul/divmod for the new insns above,
3825 clobber as few registers as possible.
3826 * config/avr/t-avr (LIB1ASMFUNCS): Adjust for the above changes.
3827
673b13e2
NB
38282001-01-20 Neil Booth <neil@daikokuya.demon.co.uk>
3829
70305f2b
RH
3830 * cppmacro.c (funlike_invocation_p): Don't move back up to the
3831 context of the top of the stack.
673b13e2 3832
a42a5f59
ZW
38332001-01-20 Jakub Jelinek <jakub@redhat.com>
3834
3835 * function.c (fixup_var_refs): Move CALL_PLACEHOLDER handling...
3836 (fixup_var_refs_insns): ...here.
3837
a42a5f59
ZW
38382001-01-20 Zack Weinberg <zack@wolery.stanford.edu>
3839
3840 * function.c (fixup_var_refs_insns): Break up into
3841 fixup_var_refs_insn [body of loop], fixup_var_refs_insns
3842 [loop over entire insn list], and fixup_var_refs_insns_with_hash
3843 [loop over hash table entries].
3844 (fixup_var_refs): Adjust calls to fixup_var_refs_insns and/or
3845 fixup_var_refs_insns_with_hash, to match above changes.
3846
03bbd83f
JDA
38472001-01-19 John David Anglin <dave@hiauly1.hia.nrc.ca>
3848
3849 * Makefile.in (ORDINARY_FLAGS_TO_PASS): Add MAKEOVERRIDES variable.
3850 (libgcc.a): Likewise.
3851 (stmp-multilib): Likewise.
3852 (STAGE2_FLAGS_TO_PASS): Likewise.
3853
68c37dc9
AO
38542001-01-19 Alexandre Oliva <aoliva@redhat.com>
3855
3856 * config/sh/sh.c (prepare_move_operands) [PIC]: Use operands[0] as
3857 temporary if no_new_pseudos.
3858
111e0469
NB
38592001-01-19 Neil Booth <neil@daikokuya.demon.co.uk>
3860
a42a5f59 3861 * cppinternals.texi: Update.
111e0469 3862
55cf7bb9
RE
38632001-01-19 Richard Earnshaw <rearnsha@arm.com>
3864
3865 * arm.c (arm_init_builtins): Re-enable builtins.
3866
831ecbd4
RK
3867Fri Jan 19 13:02:56 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3868
7193d1dc
RK
3869 * rtl.texi (SET, CLOBBER): Document PARALLEL as SET_DEST possibility.
3870 * flow.c (mark_set_1, case PARALLEL): Don't require BLKmode, allow
3871 element to be null, and always expect an EXPR_LIST.
3872 * rtlanal.c (reg_overlap_mentioned_p, note_stores): Likewise.
3873 * sched-deps.c (sched_analyze_1): Likewise.
3874 * sched-rgn.c (check_live_1, update_live_1): Likewise.
3875
79b9ec0d
RK
3876 * regclass.c (max_set_parallel): New variable.
3877 (reg_scan): Take it into account in computation of max_parallel.
3878 (reg_scan_mark_refs, case SET): Compute it.
3879
831ecbd4
RK
3880 * alias.c (rtx_equal_for_memref_p, case ADDRESSOF): Don't assume
3881 args are REG.
3882 * expr.c (store_constructor): Don't look at MEM_ALIAS_SET unless MEM.
3883 * function.c (assign_parms): Use INTVAL for a CONST_INT.
3884
cb9e9d8d
JM
38852001-01-19 Jason Merrill <jason@redhat.com>
3886
3887 * dwarf2out.c (gen_subprogram_die): Don't reuse the in-class decl
3888 for the abstract instance of an inline function.
3889
831ecbd4
RK
3890Fri Jan 19 14:31:35 2001 Alexandre Oliva <aoliva@redhat.com>
3891 J"orn Rennecke <amylaar@redhat.com>
61f5625b 3892
20342a6b
AO
3893 * reload1.c (move2add_note_store): Treat all registers directly or
3894 indirectly derived from a base register as members of the same set
3895 of values.
3896 (reload_cse_move2add): Adjust accordingly. Take mode and offset
3897 of base register into account.
61f5625b 3898
61f0131c
R
3899Fri Jan 19 09:18:42 2001 J"orn Rennecke <amylaar@redhat.com>
3900
3901 * alias.c (find_base_value): Recognize TRUNCATE.
3902 (record_set): In PLUS case, invalidate if other summand is also a
3903 base value.
3904
8eeb855e
RK
3905Thu Jan 18 06:43:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3906
831ecbd4 3907 * flow.c (mark_set_1, case PARALLEL): New case; rework to allow
90d036a0
RK
3908 entry to be EXPR_LIST.
3909 * rtlanal.c (reg_overlap_mentioned_p): Allow PARALLEL in SET to
3910 be an EXPR_LIST (but not null, which other code doesn't allow).
3911 (note_stores): Properly handle PARALLEL in SET.
3912 Recursively call for top-level PARALLEL.
3913 * sched-deps.c (sched_analyze_1): Handle EXPR_LIST in PARALLEL in SET.
3914 * sched-rgn.c (check_live_1, update_live_1): Likewise.
3915
8eeb855e
RK
3916 * config.gcc (rs6000-ibm-aix*, rs6000-bull-bosx): Add rs6000/aix.h.
3917
6fe349a9
NB
39182001-01-18 Neil Booth <neil@daikokuya.demon.co.uk>
3919
a42a5f59
ZW
3920 * cpplib.c (_cpp_handle_directive): Use buffer->was_skipping,
3921 not pfile->skipping (== 0).
6fe349a9 3922
988144ce
NC
39232001-01-17 Nick Clifton <nickc@redhat.com>
3924
3925 * config/rs6000/rs6000.c: Add prototypes for {init|free}_
3926 machine_status.
3927
15d3a111
JW
39282001-01-17 Jim Wilson <wilson@redhat.com>
3929
3930 * invoke.texi (IA-64 options): Improve.
3931
2bab2366
TT
39322001-01-17 Tom Tromey <tromey@redhat.com>
3933
3934 * invoke.texi (Optimize Options): Use `{}' to around @samp
3935 argument.
3936
454d0cc7
AH
39372001-01-17 Aldy Hernandez <aldyh@redhat.com>
3938
a42a5f59 3939 * invoke.texi (-fno-guess-branch-probability): New option.
454d0cc7 3940
c7be4f66
RK
3941Wed Jan 17 13:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3942
3943 * combine.c (try_combine): Don't set i3_subst_into_i2 for
3944 case of making new double-word constant.
3945 Revert last change: instead just test i3_subst_into_i2.
3946
5efdd890
JJ
39472001-01-17 Jakub Jelinek <jakub@redhat.com>
3948
3949 * config/i386/i386.md (cmpqi_minus_1): Use {b} for QImode operation.
d70401eb 3950 Use q constraints instead of r.
5efdd890 3951
5dfcd8e1
AM
3952Tue Jan 16 22:23:04 2001 Alan Modra (alan@linuxcare.com.au)
3953
3954 * config/pa/pa.h (PIC_OFFSET_TABLE_REGNUM_SAVED): Remove.
3955 (machine_function): Define.
3956 (PIC_OFFSET_TABLE_SAVE_RTX) : Define.
3957 * config/pa/pa.c (pa_init_machine_status, pa_mark_machine_status,
3958 pa_free_machine_status): New functions.
3959 (override_options): Set {init,mark,free}_machine_status to above.
3960 (hppa_expand_prologue): Use PIC_OFFSET_TABLE_SAVE_RTX instead of
3961 PIC_OFFSET_TABLE_REGNUM_SAVED.
3962 * config/pa/pa.md: Use PIC_OFFSET_TABLE_SAVE_RTX instead of
3963 PIC_OFFSET_TABLE_REGNUM_SAVED throughout.
3964 * config/pa/pa32-regs.h (CONDITIONAL_REGISTER_USAGE): Remove
3965 references to PIC_OFFSET_TABLE_REGNUM_SAVED.
3966 * config/pa/pa64-regs.h (CONDITIONAL_REGISTER_USAGE): Likewise.
3967
ce3b8848
DD
39682001-01-15 DJ Delorie <dj@redhat.com>
3969
3970 * Makefile.in (gcov.1): Protect against texi2pod/pod2man failing.
3971 (cpp.1): Ditto.
3972 (gcc.1): Ditto.
3973
6953fdb4
RK
3974Tue Jan 16 17:20:43 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3975
50e9b3f1
RK
3976 * flow.c (propagate_on_insn): Make trying to delete a prologue
3977 or epilogue insn an ICE, not a warning. Allow doing this if
3978 the current function returns with stack pointer depressed.
3979
6953fdb4
RK
3980 * combine.c (try_combine): If i3_subst_into_i2, properly check for
3981 I3 having more than one SET.
3982
aebf2462
JW
39832001-01-16 Jim Wilson <wilson@redhat.com>
3984
df6194d4
JW
3985 * invoke.texi: Document IA-64 options.
3986
aebf2462
JW
3987 * config/ia64/ia64.c (ia64_print_operand_address): Delete 'B' support.
3988 (fixup_errata): Delete TARGET_A_STEP use.
3989 * config/ia64/ia64.h (MASK_A_STEP, TARGET_A_STEP): Delete.
3990 (TARGET_SWITCHES): Delete -ma-step option.
3991 * config/ia64/ia64.md (all FP patterns): Delete %B0.
3992 (movqicc_astep, movqi_internal_astep, movhicc_astep,
3993 movhi_internal_astep, movsicc_astep, movsi_internal_astep, movdi+1,
3994 movdi_internal_astep, movsfcc_astep, movsf_internal_astep,
3995 movdfcc_astep, movdf_internal_astep, movtfcc_astep,
3996 movtf_internal_astep, cmovdi_internal_astep, cmovsi_internal_astep):
3997 Delete.
3998 (movqi_internal, movhi_internal, movsi_internal, movdi_internal,
3999 movsf_internal, movdf_internal, movtf_internal, cmovdi_internal,
4000 cmovsi_internal): Delete ! TARGET_A_STEP check.
a42a5f59 4001
aebb127a
GP
40022001-01-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
4003
4004 * gcc.texi (Bug Lists): Do not mention newsgroups nor the
4005 possibility to report bugs via postal mail. Change a URL and
4006 merge in a nearly duplicate statement...
4007 (Bug Reporting): ...from here.
4008 (Service): Refer to the Bug Reporting section instead of
4009 duplicating an URL.
4010 (Contributing): Remove trivial explanations concerning snapshots.
4011
95f4ac8b
AM
40122001-01-16 Alan Modra <alan@linuxcare.com.au>
4013
a42a5f59 4014 * cppmain.c (general_init): Don't use ANSI prototype.
95f4ac8b 4015
c32ee81e
TT
40162001-01-16 Tom Tromey <tromey@redhat.com>
4017
4018 * gcc.c (cpp_options): Added `*' to specs for -MF, -MQ, and -MT.
4019
2c873473
RH
40202001-01-16 Richard Henderson <rth@redhat.com>
4021
4022 * config/i386/i386.h: Fix comment typo.
4023 * config/i386/i386.md (shift+compare pattern names): s/cmpno/cmp/
4024 (ashr+compare patterns): Match CCGOCmode not CCNOmode.
4025
76e5b312
PE
40262001-01-16 Phil Edwards <pme@sources.redhat.com>
4027
4028 * gcc.c: Revert previous -fsyntax-only-related change; move
20f9202d 4029 to cp/g++spec.c.
76e5b312 4030
b62d22a2
JJ
40312001-01-16 Jakub Jelinek <jakub@redhat.com>
4032
4033 * config/i386/i386.c (fcmov_comparison_operator): Only initialize
4034 inmode after checking GET_CODE (op).
4035
0875baa0
RH
40362001-01-16 Richard Henderson <rth@redhat.com>
4037
4038 * flow.c (struct propagate_block_info): Add mem_set_list_len.
4039 (MAX_MEM_SET_LIST_LEN): New.
4040 (propagate_one_insn): Update mem_set_list_len.
4041 (invalidate_mems_from_autoinc): Likewise.
4042 (invalidate_mems_from_set): Likewise.
4043 (mark_used_regs): Likewise.
4044 (init_propagate_block_info): Likewise. Stop collecting memories
4045 when we reach MAX_MEM_SET_LIST_LEN.
4046 (mark_set_1): Likewise.
4047
c55fa4d6
RH
40482001-01-16 Richard Henderson <rth@redhat.com>
4049
4050 * unroll.c (precondition_loop_p): Fail if no iteration
4051 variable found.
4052
6488ac06
PE
40532001-01-16 Phil Edwards <pme@sources.redhat.com>
4054
4055 * gcc.c: When -fsyntax-only is given, do not complain about
20f9202d 4056 unused libraries.
6488ac06 4057
4cf12e7e
RH
40582001-01-15 Richard Henderson <rth@redhat.com>
4059
4060 * config/i386/i386.c (asm_output_function_prefix): Remove.
4061 (ix86_asm_file_end): New.
4062 (load_pic_register): Generate pic_label_name into a
4063 staticly allocated buffer.
4064 * config/i386/i386-protos.h: Update.
4065 * config/i386/i386.h (ASM_OUTPUT_FUNCTION_PREFIX): Remove.
4066 (ASM_FILE_END): New.
4067 * config/i386/i386afe.h: New file.
4068 * config.gcc (i?86-*-elf) [tm_file]: Use it.
4069 (i?86-*-{freebsd,linux*,moss*}): Likewise.
4070 * config/elfos.h (ASM_FILE_END): Undef before redefinition.
4071 * config/i386/cygwin.h (ASM_FILE_END): Likewise.
4072 * config/i386/osfrose.h (ASM_FILE_END): Invoke ix86_asm_file_end.
4073 * config/i386/sco5.h (ASM_FILE_END): Likewise.
4074 * config/i386/winnt.c (i386_pe_asm_file_end): Likewise.
4075
3f896fc2
JM
40762001-01-15 Joseph S. Myers <jsm28@cam.ac.uk>
4077
ad3b5aff
JM
4078 * Makefile.in (install-man): Remove explicit dependency on
4079 $(srcdir)/gcc.1.
4080
3f896fc2
JM
4081 * configure.in, configure: Revert previous patch requiring perl
4082 5.6.0.
4083
3ff51205
AH
40842001-01-12 Aldy Hernandez <aldyh@redhat.com>
4085
4086 * toplev.c (flag_guess_branch_prob): New.
4087 (f_options): Add guess-branch-probability option.
4088 (rest_of_decl_compilation): Only estimate branch probability if
4089 flag set.
4090 (main): set flag_guess_branch_prob.
4091
4092 * flags.h (flag_guess_branch_prob): New.
4093
b8dea7e0
DD
40942001-01-15 DJ Delorie <dj@redhat.com>
4095
4096 * gcc.texi (Makefile): Add documentation for Makefile targets.
4097
c1163e75
PB
40982001-01-15 Philip Blundell <philb@gnu.org>
4099
4100 * config/arm/arm.c (arm_finalize_pic): New arg "prologue".
4101 (is_pic): Delete.
4102 * config/arm/arm-protos.h (arm_finalize_pic): Update prototype.
4103 (is_pic): Delete declaration.
3cf96b52 4104 * config/arm/arm.h (FINALIZE_PIC): Update call to arm_finalize_pic.
c1163e75 4105 (OUTPUT_INT_ADDR_CONST): Remove special handling of PIC address.
3cf96b52 4106 * config/arm/arm.md (builtin_setjmp_receiver): New.
c1163e75 4107
9b598fa0
RE
41082001-01-15 Richard Earnshaw <rearnsha@arm.com>
4109
4110 * arm.c (use_return_insn): Don't try to determine the function type
4111 until after reload has completed.
4112 (arm_output_epilogue): Don't adjust the sp value recovered from the
4113 stack.
4114 (emit_multi_reg_push): Don't record dwarf information for the pc.
4115 * arm.md (eh_epilogue): The function type may have changed, so it
4116 needs to be recalculated.
a42a5f59 4117 * arm/netbsd.h (DWARF2_UNWIND_INFO): Delete. Can now use dwarf2
9b598fa0
RE
4118 unwind tables on arm/netbsd.
4119
6c98269c
RE
41202001-01-15 Richard Earnshaw <rearnsha@arm.com>
4121
4122 * arm.md (cbranchsi4): Correct calculation of branch ranges.
4123 (negated_cbranchsi4): Likewise.
4124
fa13446b
RE
41252001-01-15 Richard Earnshaw <rearnsha@arm.com>
4126
4127 * config/arm/semi.h (SUBTARGET_EXTRA_SPECS): Define.
4128 (SUBTARGET_EXTRA_ASM_SPEC): Define to empty string.
b3c5b2be
RE
4129 (ASM_SPEC): Call subtarget_extra_asm_spec. Don't
4130 pass -mapcs-* options to assembler.
fa13446b
RE
4131 * config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Define.
4132 (SUBTARGET_EXTRA_ASM_SPEC): Define to empty string.
4133 (ASM_SPEC): Call subtarget_extra_asm_spec.
4134
77ebd435
AJ
41352001-01-15 Andreas Jaeger <aj@suse.de>
4136
a42a5f59 4137 * config/i386/i386.c (ix86_init_builtins): Make i size_t to remove
fa13446b 4138 warnings.
77ebd435
AJ
4139 (ix86_expand_builtin): Likewise.
4140
4141 * gencodes.c (output_predicate_decls): Make i size_t to avoid
4142 warning about comparison between signed and unsigned.
4143
998a298e
GK
41442001-01-14 Geoffrey Keating <geoffk@redhat.com>
4145
4146 * expr.c (do_jump): Treat VOIDmode CONST_DOUBLEs like CONST_INTs.
4147
1b26cad7
RB
41482001-01-14 Ralf Baechle <ralf@gnu.org>
4149
a42a5f59
ZW
4150 * config/mips/linux.h (SUBTARGET_CPP_SPEC): Default ABI is 32; change
4151 SUBTARGET_CPP_SPEC apropriatly.
1b26cad7 4152
e3406b2a
MM
41532001-01-12 Mark Mitchell <mark@codesourcery.com>
4154
4155 * varasm.c (make_decl_rtl): Fix typo in last change.
4156
ea4f1fce
JO
41572001-01-14 Jeffrey Oldham <oldham@codesourcery.com>
4158
4159 * defaults.h (SUPPORTS_INIT_PRIORITY): New macro to indicate the
4160 linker supports the init_priority C++ attribute.
4161 * tm.texi (SUPPORTS_INIT_PRIORITY): Documentation for new macro.
4162 * config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Indicate Irix
4163 linker does not support init_priority C++ attribute.
4164
3e854cf7
R
4165Sun Jan 14 22:31:30 2001 J"orn Rennecke <amylaar@redhat.com>
4166
4167 * Makefile.in (libgcc1-test.o): Depends on stmp-int-hdrs.
4168
400023a3
NB
41692001-01-14 Neil Booth <neil@daikokuya.demon.co.uk>
4170
a42a5f59
ZW
4171 * c-parse.in (finish_parse): Add comment about cpp_destroy.
4172 * cp/lex.c (finish_parse): Similarly.
4173 * cppinit.c (cpp_cleanup): Rename cpp_destroy for clarity.
4174 Return the number of errors encountered.
4175 * cpplib.h (cpp_cleanup): Rename cpp_destroy, return int.
4176 * cppmain.c (main): Don't call cpp_destroy.
400023a3 4177
150d3c00
JM
41782001-01-14 Joseph S. Myers <jsm28@cam.ac.uk>
4179
4180 * configure.in: Require at least perl 5.6.0 to regenerate
4181 manpages.
4182 * configure: Regenerate.
4183
521b9224
RH
41842001-01-14 Richard Henderson <rth@redhat.com>
4185
4186 * genrecog.c (DT_veclen_ge): New.
4187 (add_to_sequence) [MATCH_PARALLEL]: Generate one.
4188 (maybe_both_true_2): Simplify DT_veclen vs DT_veclen_ge.
4189 (nodes_identical_1): Handle DT_veclen_ge.
4190 (write_cond, debug_decision_2): Likewise.
4191
d6c5a763
RE
41922001-01-14 Richard Earnshaw <rearnsha@arm.com>
4193
4194 * arm.md (ldmsi_postinc, ldmsi, stmsi_postinc, smsi): Delete. Replace
4195 with ...
4196 (ldmsi_postinc[432], ldmsi[432], stmsi_postinc[432], stmsi[432]): New.
4197
6de8f7fc
NB
41982001-01-14 Neil Booth <neil@daikokuya.demon.co.uk>
4199
a42a5f59
ZW
4200 * cppmain.c (do_preprocessing): New function; most of the old
4201 main.
4202 (main): Call it to do most of the work.
4203 (cb): Move from global scope to set_callbacks ().
4204 (setup_callbacks): Get the callback pointer.
4205 (general_init, printer_init): Clean up code and comments.
6de8f7fc 4206
17879734
RE
42072001-01-14 Richard Earnshaw <rearnsha@arm.com>
4208
1b26cad7 4209 * config/arm/semi.h (ASM_SPEC): Pass -k to the assembler when
17879734
RE
4210 compiling PIC.
4211
c009a745
KH
42122001-01-14 Kazu Hirata <kazu@hxi.com>
4213
4214 * config/h8300/h8300.c (get_shift_alg): Update comments.
4215
bd0f0717
RK
4216Sun Jan 14 06:20:49 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4217
4218 * ggc-page.c (alloc_annon): Call perror and correctly call exit.
4219 (alloc_page, ggc_alloc): Add casts to remove warnings.
4220
aa6683f7
GK
42212001-01-14 Geoffrey Keating <geoffk@redhat.com>
4222
4223 * combine.c (simplify_comparison): Don't change `code' when
4224 can't reverse comparison.
4225
fce7e199
RH
42262001-01-14 Richard Henderson <rth@redhat.com>
4227
4228 * rtlanal.c (computed_jump_p_1): Rename from jmp_uses_reg_or_mem;
4229 update all call sites. Return true for all non-label constants.
4230
a1b8572c
JH
4231Sun Jan 14 10:09:48 MET 2001 Jan hubicka <jh@suse.cz>
4232
4233 * i386.c (ix86_expand_compare): Add bypass_test and second_test
4234 parameters.
4235 (ix86_expand_branch): Update.
4236 (ix86_expand_setcc): Update to handle multiple test conditions.
4237 (expand_int_movcc): Likewise.
4238 (expand_fp_movcc): Likewise.
4239 * i386-protos.h (ix86_expand_compare): New.
4240 * i386.md (andqi_?_slp, orqi_?_slp): New.
4241 (conditional trap expander): Update call to ix86_expand_compare.
4242
17ad4377
RH
42432001-01-14 Richard Henderson <rth@redhat.com>
4244
4245 * config/vax/vax.md: Use nonimmediate_operand instead of
4246 general_operand in destinations.
4247
5b9b177a
RH
4248 * config/vax/vax.md (indirect_jump): Use register_operand.
4249
264ddbaa
RH
4250 * config/vax/vax.h (RETURN_POPS_ARGS): Max at 255 arguments.
4251 * config/vax/vax.md (call_pop): Turn into an expander.
4252 (call_value_pop): Likewise.
4253 (call, call_value): New.
4254
8752c357
AJ
42552001-01-14 Andreas Jaeger <aj@suse.de>
4256
4257 * config/i386/i386.c (ix86_split_fp_branch): Remove unused
4258 variables.
4259 (ix86_fp_compare_mode): Add unused attribute.
4260 (ix86_expand_fp_movcc): Remove unused variable.
4261 (ix86_expand_builtin): Make fcode unsigned.
4262
4263 * expr.c (MOVE_BY_PIECES_P): Cast MOVE_RATIO to unsigned.
4264 (expand_expr): Add cast to avoid signed warning.
4265 (store_field): Likewise.
4266 (store_constructor_field): Likewise.
4267 (store_constructor): Likewise.
4268 (store_expr): Likewise.
4269 (clear_storage): Likewise.
4270 (emit_group_store): Likewise.
4271 (emit_group_load): Likewise.
4272
1312c143
JM
42732001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
4274
4275 * c-common.c: Move format checking code to ...
4276 * c-format.c: ... here. New file. Reorder some functions and
4277 declarations.
4278 (decl_handle_format_attribute, decl_handle_format_arg_attribute):
4279 New functions.
4280 * c-common.h (decl_handle_format_attribute,
4281 decl_handle_format_arg_attribute): Declare.
4282 * Makefile.in (C_AND_OBJC_OBJS): Add c-format.o.
4283 (c-common.o): Adjust dependencies.
4284 (c-format.o): New list of dependencies.
4285
9e2adb2a
JJ
42862001-01-13 Jakub Jelinek <jakub@redhat.com>
4287
4288 * unroll.c (loop_iterations): If we cannot prove iteration variable
4289 is set once in each iteration, punt.
4290
63eaee71
DC
4291Sun Jan 14 00:23:15 2001 Denis Chertykov <denisc@overta.ru>
4292
4293 * config/avr/avr.md ("strlenhi"): Remove clobber of input address.
4294 (*strlenhi): Remove clobber (which was buggy) of output address.
4295
4bc1997b
JM
42962001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
4297
4298 * Makefile.in (generated-manpages): Add gcc.1
4299 ($(srcdir)/gcc.1): New target.
4300 (maintainer-clean): Delete $(srcdir)/gcc.1.
4301 * gcc.texi: Add macros @gccoptlist and @gol.
4302 * invoke.texi: Include option summary in manpage. Mark up option
4303 summary with @gccoptlist and @gol. Use @r in one place where
4304 appropriate.
4305 * texinfo.tex: Update to version 2000-12-11.07 from ftp.gnu.org.
4306 * gcc.1: Generate from invoke.texi.
4307
130fadbb
RH
43082001-01-13 Richard Henderson <rth@redhat.com>
4309
4310 * ggc-page.c (USING_MALLOC_PAGE_GROUPS): New; set if not using mmap.
4311 (struct page_entry): Add group member.
4312 (struct page_group): New.
4313 (struct globals): Add page_groups member.
4314 (alloc_anon): Only define for using mmap; remove valloc call.
4315 (page_group_index): New.
4316 (set_page_group_in_use): New.
4317 (clear_page_group_in_use): New.
4318 (alloc_page): Implement USING_MALLOC_PAGE_GROUPS.
4319 (free_page, release_pages): Likewise.
4320 * configure.in (with-gc): Default to ggc-page always.
4321
086fef9e
AO
43222001-01-13 Alexandre Oliva <aoliva@redhat.com>
4323
4324 * reload1.c (replace_pseudos_in_call_usage): Use
4325 reg_equiv_constant and reg_equiv_address, and don't try
4326 regno_reg_rtx first.
4327
ca79429a
RH
43282001-01-13 Richard Henderson <rth@redhat.com>
4329
4330 * ggc-page.c (alloc_page): Round up allocation size to one page.
4331 Set e->order on extra pages.
4332
2cec75a1
RH
43332001-01-13 Richard Henderson <rth@redhat.com>
4334
4335 * genrecog.c (nodes_identical): Expand commentary.
4336 (write_switch): Watch out for identical nodes.
4337
d6d52dd6
NB
43382001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
4339
a42a5f59
ZW
4340 * cppfiles.c (_cpp_fake_include): New function.
4341 * cpphash.h (_cpp_fake_include): New.
4342 * cpplib.c (do_line): Call _cpp_fake_include when entering
4343 header files in preprocessed input.
4344 * cppmain.c (cb_pragma_implementation): Remove handling.
d6d52dd6
NB
4345 (setup_callbacks): Don't register pragmas.
4346
ccd96f0a
NB
43472001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
4348
4349 * extend.texi: Udate for CPP.
4350
174fa2c4
AJ
43512001-01-13 Andreas Jaeger <aj@suse.de>
4352
4353 * reload1.c: Add prototype for replace_pseudos_in_call_usage.
4354
4355 * regmove.c: Add prototype for replace_in_call_usage.
4356
8121d2c3
NB
43572001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
4358
a42a5f59
ZW
4359 * cpplib.h (cpp_pool, mi_state, mi_ind, struct cpp_macro,
4360 struct cpp_chunk, struct htab, struct toklist,
4361 struct cpp_context, CPP_STACK_MAX, struct lexer_state,
4362 struct spec_nodes, struct cpp_reader, CPP_OPTION, CPP_BUFFER,
4363 CPP_BUF_LINE, CPP_BUF_COL, CPP_BUF_COLUMN, U, ustrcmp, ustrncmp,
4364 ustrlen, uxstrdup, ustrchr, ufputs): Move to cpphash.h.
4365 (struct macro_args): Delete.
4366 * cpphash.h: See above.
8121d2c3 4367
620ef26c
NB
43682001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
4369
a42a5f59
ZW
4370 * cppmain.c (struct printer): Remove no_line_dirs.
4371 (options, cb): New.
4372 (main, setup_callbacks, scan_buffer, printer_init, cb_define)
4373 : Use options rather than CPP_OPTION.
4374 (setup_callbacks): Use cb rather than pfile->cb.
4375 (main): No need to check for a buffer. Use cpp_errors.
4376 (printer_init): Don't set no_line_dirs.
4377 (maybe_print_line): Use options not no_line_dirs.
4378 (cb_file_change): Don't call print_line if -P.
620ef26c 4379
b61c5ed0
NB
43802001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
4381
a42a5f59
ZW
4382 * c-lex.c (init_c_lex): Use cpp_get_callbacks to set
4383 callbacks.
4384 * c-parse.in (finish_parse): Use cpp_errors.
4385 (__yylex): Use return value of cpp_pop_buffer.
4386 * cp/lex.c (finish_parse): Use cpp_errors.
4387 * cp/spew.c (read_token): Use return value of cpp_pop_buffer.
b61c5ed0 4388
f14269a0
DC
4389Sat Jan 13 16:57:40 2001 Denis Chertykov <denisc@overta.ru>
4390
4391 * README.AVR: URLs corrected.
4392
757e6639
RK
4393Sat Jan 13 07:30:02 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4394
4395 * c-decl.c (start_function): Don't warn if old prototype is builtin
4396 that's not in C's namespace.
4397 * libgcc2.c (_varargs): Update definition of __builtin_saveregs.
4398 (_bb): Add prototype for ctime.
4399 * config/alpha/osf.h (TRANSFER_FROM_TRAMPOLINE): Add missing protos.
4400
9e7adcb3
JH
4401Sat Jan 13 09:53:32 MET 2001 Jan Hubicka <jh@suse.cz>
4402
4403 * i386.c (ix86_fp_comparison_arithmetics_cost,
4404 ix86_fp_comparison_fcomi_cost, ix86_fp_comparison_sahf_cost,
4405 ix86_fp_comparison_cost): New functions.
4406 (ix86_expand_fp_compare): Use the costs to choose best bethod; add
4407 two new parameters SECOND_TEST and BYPASS_TEST; allow generating
4408 two-branch sequences; make static.
4409 (ix86_use_fcomi_compare): Do decision according to the costs.
4410 (split_fp_branch): New.
4411 * i386.md (compare-and-branch patterns): Use split_fp_branch.
4412 * i386-protos.h (ix86_expand_fp_compare): Remove
4413 (ix86_split_fp_branch): Declare.
4414
4415 * i386.h (PREDICATE_CODES): Update codes from fcmov_comparison_operand
4416 and ix86_comparison_operator.
4417
4418 * i386.c (ix86_prepare_fp_compare_args): Try to rearange the comparison
4419 to make it cheaper.
4420
4421 * i386.c (put_condition_code): Output properly the unordered/ordered
4422 compares in fp case.
4423 (ix86_expand_fp_movcc): Use ix86_expand_compare infrastructure.
4424
4425 * tm.texi (REVERSE_CONDITION): Document.
4426 * i386.c (ix86_fp_compare_mode): Simplify; return always CCFPmode
4427 in -ffast-math mode.
4428 * i386.h (REVERSE_CONDITION, REVERSIBLE_CC_MODE): New macro.
4429
35ef2880
AO
44302001-01-13 Alexandre Oliva <aoliva@redhat.com>
4431
89d4bc35
AO
4432 * config/sh/sh.c (sh_expand_epilogue): Use PR explicitly.
4433
b90dbca6
AO
4434 * config/sh/sh.c (sh_expand_prologue): Let the second toggle_sz be
4435 optimized away.
4436
35ef2880
AO
4437 * config/sh/sh.c (mova_p): Fix test for mova_const.
4438
f85c14ee
NB
44392001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
4440
a42a5f59
ZW
4441 * fix-header.c (read_scan_file): Use cpp_get_callbacks and
4442 cpp_get_options rather than dereferencing pfile and using
4443 CPP_OPTION.
4444 * scan-decls.c (scan_decls): Use return value of
4445 cpp_pop_buffer rather than CPP_BUFFER.
174fa2c4 4446
7e96d768
NB
44472001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
4448
a42a5f59
ZW
4449 * cppinit.c (cpp_handle_option): help_only is now part of the
4450 cpp_options structure.
4451 * cpplib.c (cpp_errors, cpp_get_options, cpp_get_callbacks,
4452 cpp_set_callbacks): New functions.
4453 * cpplib.h (cpp_callbacks): Break out as a named structure.
4454 (cpp_options): Move help_only here from cpp_reader.
4455 (CPP_FATAL_ERRORS): Update to use cpp_errors.
4456 (cpp_errors, cpp_get_options, cpp_get_callbacks,
4457 cpp_set_callbacks): New prototypes.
4458 * cppmain.c (main): Update for help_only.
7e96d768 4459
23de1fbf
JM
44602001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
4461
4462 * Makefile.in (info, maintainer-clean, install-info, uninstall):
4463 Also build and remove and install and uninstall c-tree.info and
4464 cppinternals.info.
4465 ($(srcdir)/gcc.info): Add dependency on contrib.texi.
4466 ($(srcdir)/cppinternals.info): New target.
4467 * c-tree.texi: Change file name used when makeinfo used without -o
4468 from ir.info to c-tree.info. Add info directory entry.
4469 * cppinternals.texi: Add info directory entry.
4470 * .cvsignore: Update.
4471
8b6a5902
JJ
44722001-01-12 Jakub Jelinek <jakub@redhat.com>
4473
4474 * c-typeck.c (store_init_value): Don't require constant initializer
4475 elements with -pedantic -std=c99.
4476 (digest_init): Change error about non-constant initializer elements
4477 into pedwarn.
4478 (constructor_range_end): Remove.
4479 (constructor_incremental, designator_depth,
4480 designator_errorneous): New variables.
4481 (struct constructor_stack): Remove range_end, add incremental.
4482 (struct constructor_range_stack, constructor_range_stack): New.
4483 (struct initializer_stack): Add constructor_range_stack.
4484 (finish_init): Set it.
4485 (start_init): Likewise. require_constant_elements for non-static
4486 trees only if not flag_isoc99.
4487 (really_start_incremental_init): Remove constructor_range_end, add
4488 constructor_incremental.
4489 (pop_init_level): Likewise.
4490 (push_init_level): Likewise. If implicit and the subobject had some
4491 value set already, preinitialize the level with it.
4492 Warn about missing braces only if not pushing due to designators.
4493 (set_designator, push_range_stack): New functions.
4494 (set_init_label): Use them.
4495 (set_init_index): Likewise. Remove constructor_range_end.
4496 Error if designator index is outside of array bounds.
4497 (add_pending_init): Compare values of purpose index trees, not the
4498 trees themselves. Allow overwriting of already initialized element.
4499 Issue a warning if it had side-effects.
4500 (set_nonincremental_init, set_nonincremental_init_from_string): New
4501 functions.
4502 (pending_init_member): Rename to...
4503 (find_init_member): ...this function. Call set_nonincremental_init
4504 if necessary. Compare values of purpose index trees, not the trees
4505 themselves. Return the actual value, not just non-zero if something
4506 is found.
4507 (output_init_element): Remove checks for duplicates.
4508 If field has zero size, only check the initializer for correctness.
4509 Call set_nonincremental_init if necessary. Push RECORD/ARRAY into AVL
4510 if constructor_incremental is zero. Change error about initializers
4511 not computable at load time into pedwarn.
4512 (output_pending_init_elements): Compare bit positions, not
4513 FIELD_DECLs to take into account zero-sized fields.
4514 (process_init_element): Use constructor_range_stack to fill all
4515 ranges in the designator lists from current level up.
4516 * extend.texi: Update documentation for labeled elements.
4517
7dd232a8
AO
45182001-01-12 Alexandre Oliva <aoliva@redhat.com>
4519
f474c6f8
AO
4520 * calls.c (emit_library_call_value_1): Add USEs and CLOBBERs
4521 to function usage for arguments passed by reference. Optimize
4522 callee-copied arguments.
ec7c0481 4523 * regmove.c (replace_in_call_usage): New function.
f474c6f8
AO
4524 (fixup_match_1): Call it.
4525 * cse.c (cse_insn): Canonicalize registers in function usage.
4526 * reload1.c (replace_pseudos_in_call_usage): New function.
4527 (reload): Call it.
4528
7dd232a8
AO
4529 * Makefile.in: Reverted yesterday's wrong patch. Installed the
4530 right version.
4531
d0285326
JJ
45322001-01-12 Jakub Jelinek <jakub@redhat.com>
4533
4534 * config/alpha/alpha.c (alpha_expand_block_move): GET_MODE of tmp,
4535 not XEXP (tmp, 0).
4536
770861f3
DD
45372001-01-12 DJ Delorie <dj@redhat.com>
4538
4539 * Makefile.in (bootstrap): rename stages to be mnemonic. Add
4540 restageN, unstageN, bubblestrap, quickstrap, and cleanstrap
4541 targets.
4542
5490d604
JM
45432001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
4544
4545 * cpp.texi, extend.texi, gcc.texi, install.texi, invoke.texi,
4546 tm.texi: Consistently refer to ISO C instead of ANSI C. Refer to
4547 -std options alongside references to -ansi. Update some
4548 documentation for C99.
4549 * cpp.1: Regenerate.
4550
d24b8f53
AJ
45512001-01-12 Andreas Jaeger <aj@suse.de>
4552
14052b68
AJ
4553 * haifa-sched.c (restore_line_notes): Remove argument block B
4554 since it's unused.
4555 * sched-ebb.c (schedule_ebb): Change caller.
4556 * sched-rgn.c (schedule_region): Likewise.
4557 * sched-int.h (restore_line_notes): Adjust prototype.
4558
d24b8f53
AJ
4559 * loop.h: Remove wrong declaration of doloop_condition_get.
4560
e6f3b89d
PE
45612001-01-12 Phil Edwards <pme@sources.redhat.com>
4562
4563 * extend.texi: Move C++-extension-related node from the C section
20f9202d 4564 into the C++ section.
e6f3b89d 4565
89aed483
JM
45662001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
4567
4568 * extend.texi: Refer to an array of pointers to functions instead
4569 of one of functions.
4570
c3ffea50
AJ
4571Fri Jan 12 12:08:12 MET 2001 Andreas Jaeger <aj@suse.de>
4572 Jan Hubicka <jh@suse.cz>
4573
d24b8f53 4574 * combine.c (reversed_comparison): Fix typo in last patch.
c3ffea50 4575 Check X for NULL.
d24b8f53
AJ
4576 (combine_reversed_comparison_code): Make static to follow
4577 prototype declaration.
c3ffea50 4578
159227d5
PE
45792001-01-12 Phil Edwards <pme@sources.redhat.com>
4580
4581 * install.texi: Remove misplaced duplicate entry.
4582
ac70ce21
UD
45832001-01-11 Ulrich Drepper <drepper@redhat.com>
4584
4585 * config/float-i386.h: Define FLT_EVAL_METHOD and DECIMAL_DIG for C99.
4586
b660f82f
JW
4587Thu Jan 11 17:06:30 EST 2001 John Wehle (john@feith.com)
4588
4589 * final.c: (leaf_function_p): Fix typo.
4590
825b6926
ZW
45912001-01-11 Zack Weinberg <zack@wolery.stanford.edu>
4592
4593 * aclocal.m4 (AC_FUNC_MMAP_ANYWHERE): Completely rewritten.
4594 Now defines HAVE_MMAP_DEV_ZERO and/or HAVE_MMAP_ANON depending
4595 which you have.
4596 (AC_FUNC_MMAP_FILE): Don't AC_REQUIRE AC_FUNC_MMAP_ANYWHERE.
4597 * configure.in: Set GGC to ggc-page if any of mmap_dev_zero,
4598 mmap_anon, and valloc is available.
4599 * ggc-page.c: Restructure ifdef logic to match new autoconf
4600 spec. Don't throw away the test page in init_ggc.
4601
4602 * configure, config.in: Regenerate.
4603
099f0f3f
MH
46042001-01-12 Michael Hayes <mhayes@redhat.com>
4605
4606 * loop.h (total_biv_increment): Constify iv_class pointer.
4607 (struct induction): Replace `mem_mode' with `mem' rtx.
4608 * unroll.c (total_biv_increment): Constify iv_class pointer.
4609 * loop.c (loop_giv_reduce_benefit): Derive mem mode from mem rtx.
4610 (find_mem_givs, combine_givs_p): Likewise.
4611 (debug_ivs, debug_iv_class, loop_ivs_dump, loop_iv_class_dump): New.
4612
69e905c8
TP
46132001-01-10 Thomas Pfaff <tpfaff@gmx.net>
4614
4615 * gthr-win32.h (__gthread_objc_thread_get_data): Save and restore Win32
4616 LastError.
4617 (__gthread_getspecific): Ditto.
4618
9a915772
JH
4619Fri Jan 12 00:04:00 MET 2001 Jan Hubicka <jh@suse.cz>
4620
4621 * i386.c (ix86_comparison_operator, fcmov_comparison_operator,
4622 put_condition_code): Convert fp comparison codes to integer
4623 before handling.
4624 (ix86_expand_fp_compare): Postnote the fp comparison code converison
4625 to final.
4626
4627 * i386.c (unsigned_comparison, no_comparison_operator): Kill.
4628 * i386-protos.h (no_comparison_operator): Kill.
4629
4630 * i386.c (ix86_expand_fp_compare): Fix ordered/unordered confussion.
4631
4632 * combine.c (REVERSIBLE_CC_MODE): Remove.
4633 (reversible_comparison_p): Remove.
4634 (combine_reversed_comparison_code): New.
4635 (reversed_comparison): New.
4636 (combine_simplify_rtx): Use
4637 combine_reversed_comparison_code/reversed_comparison instead
4638 of reversible_comparison_p.
4639 (simplify_if_then_else): Likewise.
4640 (simplify_set): Likewise.
4641 (simplify_logical): Likewise.
4642 (if_then_else_cond): Likewise.
4643 (known_cond): Likewise.
4644 (simplify_comparison): Likewise.
4645
bbc7fda9
AL
46462001-01-11 Alan Lehotsky <lehotsky@tiac.net>
4647
4648 * builtins.c (std_expand_builtin_va_start): Handle varargs when
4649 sizeof (int) is larger than sizeof(__word__).
825b6926 4650
a4299d07
NB
46512001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
4652
825b6926 4653 * cppinit.c (do_includes): Fix typo.
a4299d07 4654
76028b1f
SC
46552001-01-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
4656
4657 * config/m68hc11/m68hc11.md (cmphi_1): Make sure reloading
4658 in S_REGS does not occur because not all sources are possible
4659 when a S_REGS is a destination (sometimes needs a clobber).
4660 (movqi_const0, zero_extendhisi2, zero_extendqisi2): Likewise.
4661 (zero_extendhidi2, extendqisi2, extendqihi2, extendhisi2): Likewise.
4662 (anddi3, iordi3, xordi3, negqi2, one_cmplhi2, one_cmplqi2: Likewise.
4663 (ashldi3_const32, ashldi3_const1, ashlsi3_const16): Likewise.
4664 (ashlsi3_const1, ashlhi3_2, ashlqi3_const1, ashrhi3): Likewise.
4665 (ashrqi3_const1, lshrdi3_const32, lshrdi3_const63): Likewise.
4666 (lshrdi_const1, lshrsi3_const16): Likewise.
4667 (*addhi3, lshrsi3_const1, lshrqi3_const1): Likewise.
4668 (*movhi_68hc12, *movqi_68hc12): Likewise.
825b6926 4669 (movstrictqi): Make sure reloading in D_REGS as a destination
76028b1f
SC
4670 does not happen.
4671
d3956766
NB
46722001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
4673
825b6926 4674 * cppspec.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Add -MQ.
d3956766 4675
05e81724
NB
46762001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
4677
825b6926
ZW
4678 * cppinit.c (cpp_start_read): If -fpreprocessed, ignore
4679 -D, -U and -A, and don't initialize the builtins.
a4299d07 4680 (do_includes): Error if -include or -imacros with -fpreprocessed.
825b6926
ZW
4681 * cppmain.c (cb_define, cb_undef): Unconditionally process
4682 the callback.
4683 * tradcpp.c (main): Fix typo.
05e81724
NB
4684
46852000-01-11 Mark Elbrecht <snowball3@bigfoot.com>
825b6926 4686
20f9202d
DB
4687 * cppfiles.c (cpp_included, find_include_file, _cpp_execute_include)
4688 (read_name_map): Use IS_ABSOLUTE_PATH.
4689 * tradcpp.c (get_filename): Likewise.
05e81724 4690
76d06edc
SC
46912001-01-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
4692
4693 * config/m68hc11/m68hc11.md (*adcq, *subcq): Fix operand numbers.
4694 (*ashlsi3_const16_zexthi, *ashlsi3_const1): Likewise.
4695 (*lshrsi3_const, *lshrsi3_const1, *lshrsi3_const16): Likewise.
4696 (*ashrsi3, *ashrsi3_const, *ashlsi3, *ashlsi3_const): Likewise.
4697 (*ashlsi3_const1, *lshrsi3, *ashlsi3_const16): Likewise.
4698 (cmphi_z_used): Don't use '@' for the output.
4699 (tstqi_z_used): Likewise.
4700 (cmpqi_z_used): Likewise.
4701 (one_cmplsi2): Likewise.
4702
1594c6bc
AO
47032001-01-11 Alexandre Oliva <aoliva@redhat.com>
4704
4705 * config/sh/sh.c (barrier_align): Recognize branch around far
4706 branch and redundant insn.
4707
7da723ef
NB
47082001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
4709
825b6926 4710 * invoke.texi: Restore documentation of the drivers' switches -MD
7da723ef
NB
4711 and -MMD.
4712
a738a85c
AO
47132001-01-11 Alexandre Oliva <aoliva@redhat.com>
4714
f6f1dc95
AO
4715 * config/sh/sh.h (LABEL_ALIGN): Use UNSPECV_ALIGN instead of 1.
4716
a738a85c
AO
4717 * Makefile.in (check-gcc//%, check-g++//%, check-g77//%,
4718 check-objc//%): Support parallel testing of multilibs.
4719 (TESTSUITEDIR): Set to testsuite by default, but override for
4720 parallel testing.
4721 (check-gcc, check-g++, check-g77, check-objc): Enter
4722 $(TESTSUITEDIR).
4723
fb6754f0
BS
47242001-01-11 Bernd Schmidt <bernds@redhat.com>
4725
4726 * alias.c (throughout): Use REGNO, rather than ORIGINAL_REGNO.
4727 * sched-deps.c (deps_may_trap_p): Likewise.
4728 * basic-block.h: Remove a comment.
4729 * flow.c (PROP_POSTRELOAD): Remove.
4730 (update_life_info): Don't add it to prop_flags.
4731 (mark_set_1): Lose the code that was enabled by it.
4732
0ab409ed
MH
47332001-01-11 Michael Hayes <mhayes@redhat.com>
4734
4735 * flow.c (flow_call_edges_add): New.
4736 * basic_block.h (flow_call_edges_add): New.
4737
ada6635f
R
47382001-01-11 J"orn Rennecke <amylaar@redhat.com>
4739
4740 * reload1.c (move2add_note_store): Update reg_set_luid even if
4741 base reg remains the same.
4742
73d771f0
NC
47432001-01-10 Nick Clifton <nickc@redhat.com>
4744
4745 * config/d30v/d30v.c (d30v_init_machine_status): Initialise
4746 machine_function structure to zero.
4747 Add prototypes for machine_status functions.
4748
cbd5937a
MM
47492001-01-10 Mark Mitchell <mark@codesourcery.com>
4750
4751 * c-common.h (CTI_VOID_LIST): Remove.
4752 (void_list_node): Likewise.
4753 * tree.h (TI_VOID_LIST_NODE): New enumeral.
4754 (void_list_node): New macro.
4755 * config/arm/arm.c (arm_init_builtins): Use void_list_node.
4756 * config/i386/i386.c (ix86_init_builtins): Likewise.
4757 * config/ia64a/ia64.c (ia64_init_builtins): Likewise.
4758
2f638f96
NB
47592001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
4760
825b6926
ZW
4761 * Makefile.in (tradcpp0): Depend on mkdeps.h. Link mkdeps.o
4762 * cppinit.c (cpp_start_read): Update comment, remove unneeded
4763 if statement.
4764 * tradcpp.c: Include mkdeps.h.
4765 (deps, print_deps_phony_targets, deps_append, output_deps,
4766 init_dependency_output, output_deps): New.
4767 (deps_buffer, deps_allocated_size, deps_size, deps_column,
4768 deps_output): Delete.
4769 (print_deps_missing_files): Rename deps_missing_files.
4770 (inhibit_output): Make global.
4771 (main): Delete inhibit_output, deps_stream, deps_target.
4772 Use mkdeps functionality in the same way as cpplib. Remove
4773 -g3 handling. Handle -MF, -MP, -MQ, -MT. Update handling of
4774 -M and -MM. Remove old handling of deps via deps_out, and
4775 old reading of environment variables.
4776 (get_filename): Update to use deps_add_dep.
2f638f96 4777
6c418184
MM
47782001-01-10 Mark Mitchell <mark@codesourcery.com>
4779
4780 * output.h (make_function_rtl): Remove prototype.
4781 (make_decl_rtl): Likewise.
4782 * varasm.c (make_function_rtl): Remove.
4783 (make_decl_rtl): Determine top-levelness from DECL_CONTEXT, rather
4784 than from a third parameter.
4785 * tree.h (make_decl_rtl): Remove last parameter.
4786 * c-decl.c (builtin_function): Remove last argument in call to
4787 make_decl_rtl; use make_function_rtl instead of make_decl_rtl.
4788 (start_function): Likewise.
4789 * except.c (call_get_eh_context): Likewise.
4790 * expr.c (emit_block_move): Likewise.
4791 (clear_storage): Likewise.
4792 * profile.c (output_func_start_profiler): Likewise.
4793 * toplev.c (rest_of_decl_compilation): Likewise.
4794 * objc/objc-act.c (create_builtin_decl): Likewise.
4795 (synth_module_prologue): Likewise.
4796 (generate_static_reference): Likewise.
4797 (build_selector_reference_decl): Likewise.
4798 (build_class_reference_decl): Likewise.
4799 (build_objc_string_decl): Likewise.
4800 (build_protocol_reference): Likewise.
4801
4621c640
RH
48022001-01-10 Richard Henderson <rth@redhat.com>
4803
4804 * hwint.h: Revert yesterday's change.
4805
414c4dc4
NC
48062001-01-10 Nick Clifton <nickc@redhat.com>
4807
4808 * function.h (save_machine_status): Delete.
4809 (restore_machine_status): Delete.
4810 Amend comment describing {init|mark|free}_machine_status.
4811
4812 * function.c (save_machine_status): Delete.
4813 (restore_machine_status): Delete.
4814 Amend comment describing {init|mark|free}_machine_status.
4815 (push_function_context_to): Remove invocation of
4816 save_machine_status.
4817 (pop_function_context_from): Remove invocation of
4818 restore_machine_status.
4819
4820 * emit-rtl.c (init_emit_once): Amend comment describing
825b6926 4821 {init|mark|free}_machine_status.
414c4dc4
NC
4822
4823 * tm.texi (Per-Function Data): New node. Describe the
4824 INIT_EXPANDERS macro and the {init|mark|free}_machine_status
4825 function pointers.
4826
5c5d1ea0
NB
48272001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
4828
825b6926
ZW
4829 * cppinit.c (OPT_g): Remove.
4830 (cpp_handle_option): Update for removed -g3.
4831 (print_help): Update.
4832 * cpplib.h (struct cpp_options): Remove debug_output.
4833 * cppmain.c (setup_callbacks, cb_define): Update.
4834 * gcc.c (cpp_options): Translate -g3 to -dD.
5c5d1ea0 4835
d9271ccc
AH
48362001-01-10 Aldy Hernandez <aldyh@redhat.com>
4837
4838 * config/i960/i960.md: Change modifier to + on the zero_extract
825b6926 4839 pattern after the (rotate -2 reg) canonicalization pattern.
d9271ccc 4840
37b15744
RH
48412001-01-10 Richard Henderson <rth@redhat.com>
4842
4843 * config/alpha/alpha.c (alpha_free_machine_status): New.
4844 (override_options): Install it.
4845 (alpha_mark_machine_status): Verify machine non-null.
4846 * config/i386/i386.c (ix86_free_machine_status): New.
4847 (override_options): Install it.
4848 (ix86_init_machine_status): Use xcalloc.
4849 (ix86_mark_machine_status): Verify machine non-null.
4850 * config/ia64/ia64.c (ia64_free_machine_status): New.
4851 (ia64_override_options): Install it.
4852 (ia64_mark_machine_status): Verify machine non-null.
4853
87c61e2d
JL
4854Wed Jan 10 11:34:39 2001 Jeffrey A Law (law@cygnus.com)
4855
4856 * function.c (instantiate_virtual_regs): Instantiate virtual
4857 registers found in CALL_INSN_FUNCTION_USAGE.
4858
930bbdd2
JM
48592001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
4860
4861 * i386.h (CPP_CPU_SPEC): Allow for -std=c* and -std=i* as
4862 equivalent to -ansi in disabling -Di386.
4863
c0c102a9
JH
4864Wed Jan 10 16:38:31 MET 2001 Jan Hubicka <jh@suse.cz>
4865
4866 * i386.c (ix86_fp_compare_code_to_integer, ix86_fp_comparison_codes):
4867 new functions.
4868 (ix86_expand_fp_compare): Make trivial use of new infrastructure.
4869
78053907
RE
48702001-01-10 Richard Earnshaw <rearnsha@arm.com>
4871
4872 * arm.c (arm_init_builtins): Temporarily disable xscale builtins.
4873
a7537031
JM
48742001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
4875
4876 * invoke.texi: Document that -fcond-mismatch isn't supported for
4877 C++.
4878
2642624b
JM
48792001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
4880
4881 * gcc.texi: Define macro gcctabopt.
4882 * invoke.texi: Add manpage sections BUGS and AUTHOR. Use
4883 @command, @env and @option in some places where appropriate. Use
4884 @gcctabopt where appropriate. Put URLs and email addresses inside
4885 @w.
4886
11972f66 48872001-01-10 Nathan Sidwell <nathan@codesourcery.com>
825b6926
ZW
4888
4889 * gcc.c (cpp_options): Set MD file name from output
4890 filename, if specified.
4891 (suffix_subst): New static variable.
4892 (do_spec): Clear it.
4893 (do_spec_1, case '.'): Handle new `%.suffix' spec.
4894 Clear it.
4895 (give_switch): Handle suffix_subst.
11972f66 4896
0a75e5c3
PE
48972001-01-10 Phil Edwards <pme@sources.redhat.com>
4898
4899 * invoke.texi: Fix another typo.
4900
9169269f
PE
49012001-01-10 Phil Edwards <pme@sources.redhat.com>
4902
4903 * invoke.texi: Fix typo.
4904
ee811cfd
NB
49052001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
4906
825b6926
ZW
4907 * c-lang.c (lang_hooks): Update.
4908 (lang_decode_option): Remove.
4909 (lang_init_options): Rename c_init_options.
4910 * toplev.c (main): Use lang_hooks for lang_init_options
4911 and lang_decode_option.
4912 * toplev.h (lang_hooks): Add 2 new hooks.
4913 * tree.h: Remove lang_init_options and lang_decode_option.
4914 * cp/cp-tree.h (lang_decode_option): Rename cxx_decode_option.
4915 * cp/decl2.c: Similarly.
4916 * cp/lex.c (lang_init_options): Rename cxx_init_options.
4917 (lang_hooks): Update.
4918 * f/com.c (f_init, f_finish): Rename ffe_init, ffe_finish
4919 for consistency.
4920 (lang_init_options): Rename ffe_init_options.
4921 (lang_hooks): Update.
4922 (lang_decode_option): Remove.
4923 * java/lang.c (lang_init_options): Rename java_init_options.
4924 (lang_decode_option): Rename java_decode_option.
4925 (lang_hooks): Update.
4926 * objc/objc-act.c (lang_init_options): Rename objc_init_options.
4927 (lang_decode_option): Rename objc_decode_option.
4928 (lang_hooks): Update.
ee811cfd 4929
8541c24b
NC
49302001-01-09 Nick Clifton <nickc@redhat.com>
4931
4932 * config/d30v/d30v.c (d30v_eh_epilogue_sp_ofs): Delete.
4933 (d30v_return_addr_rtx): Delete.
4934 (d30v_expand_epilogue): Use eh_epilogue_sp_ofs field in the
4935 cfun->machine structure.
4936 (struct machine_function): Move to d30v.h
4937 (d30v_save_machine_status): Delete.
4938 (d30v_restore_machine_status): Delete.
4939 (d30v_init_machine_status): New Function.
4940 (d30v_mark_machine_status): New Function.
4941 (d30v_free_machine_status): New Function.
4942 (d30v_init_expanders): Use new functions.
4943 (d30v_return_addr): Use ra_rtx field in cfun->machine.
4944 (d30v_add_gc_roots): Remove d30v_eh_epilogue_sp_ofs and
4945 d30v_return_addr_rtx.
4946
4947 * config/d30v/d30v.h (struct_machine): Move here.
4948 Add eh_epilogue_sp_ofs field.
4949
4950 *config/d30v/d30v.md (epilogue): Initialise eh_epilogue_sp_ofs
4951 field in cfun->machine structure.
4952
4d5a6f78
JDA
4953Tue Jan 9 21:34:57 2001 John David Anglin <dave@hiauly1.hia.nrc.ca>
4954
4955 * pa32-regs.h (CONDITIONAL_REGISTER_USAGE): When generating pic code,
4956 PIC_OFFSET_TABLE_REGNUM_SAVED is a call_used register.
4957 * pa64-regs.h (CONDITIONAL_REGISTER_USAGE): Likewise.
4958
ecb7e784
JL
4959Tue Jan 9 21:25:19 2001 Jeffrey A Law (law@cygnus.com)
4960
4961 * objc/lang-options.h: Remove bogus reference to
4962 Java trademark.
4963
35fb3d1f
KH
49642001-01-09 Kazu Hirata <kazu@hxi.com>
4965
4966 * config/h8300/h8300.c (get_shift_alg): Use a struct shift_info to
4967 return the result.
4968
4971426b
AL
49692001-01-09 Alan Lehotsky <lehotsky@tiac.net>
4970
4971 * reload.c (find_reloads_address): Check for eliminable registers
20f9202d 4972 when substituting a constant expression for a pseudo.
825b6926 4973
10a4c7ac
JM
49742001-01-09 Joseph S. Myers <jsm28@cam.ac.uk>
4975
4976 * c-common.c (enum format_type): Add format_type_error.
4977 (decode_format_type): New function.
4978 (decl_attributes): Use it.
4979 (format_kind_info): Adjust comment.
4980
f6e0c56c
DB
49812001-01-09 David O'Brien <obrien@BSDi.com>
4982
4983 * config.gcc (*-*-gnu*, i[34567]86-*-elf*, i[34567]86-*-linux*libc1,
4984 i[34567]86-*-linux*, i[34567]86-*-moss*): Specify needed platform specific
4985 files in tm_file.
4986 * config/i386/gnu.h: Don't include required platform specific .h files,
4987 tm.h will do it instead.
4988 * config/i386/i386elf.h: Likewise.
4989 * config/i386/linux.h: Likewise.
4990 * config/i386/moss.h: Likewise.
4991 * config/mips/gnu.h: Likewise.
4992
e556ad19
FS
49932001-01-09 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
4994
4995 * config.gcc (powerpc-*-beos*): Include ${tm_file} and rs6000/aix.h.
4996 (rs6000-ibm-aix3.[01]*): Likewise.
4997 (rs6000-ibm-aix3.2.[456789]*, powerpc-ibm-aix3.2.[456789]*): Likewise.
4998 (rs6000-ibm-aix4.[12]*, powerpc-ibm-aix4.[12]*): Likewise.
4999 (rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Likewise.
5000 (rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise.
5001 (powerpc-*-sysv*): Include {tm_file}. svr4.h and rs6000/sysv4.h.
5002 (powerpc-*-eabiaix*): Likewise.
5003 (powerpc-*-eabisim*): Likewise.
5004 (powerpc-*-elf*): Likewise.
5005 (powerpc-*-eabi*): Likewise.
5006 (powerpc-*-rtems*): Likewise.
5007 (powerpc-*-linux*libc1): Likewise.
5008 (powerpc-*-linux*): Likewise.
5009 (powerpc-wrs-vxworks*): Likewise.
5010 (powerpcle-wrs-vxworks*): Likewise.
5011 (powerpcle-*-sysv*): Likewise.
5012 (powerpcle-*-elf*): Likewise.
5013 (powerpcle-*-eabisim*): Likewise.
5014 (powerpcle-*-eabi*): Likewise.
5015 (powerpcle-*-solaris2*): Likewise.
5016 * config/rs6000/aix31.h: Delete includes.
5017 * config/rs6000/aix3newas.h: Likewise.
5018 * config/rs6000/aix41.h: Likewise.
5019 * config/rs6000/aix43.h: Likewise.
5020 * config/rs6000/beos.h: Likewise.
5021 * config/rs6000/rtems.h: Likewise.
5022 * config/rs6000/sysv4.h: Likewise.
5023
9789584b
KH
50242001-01-09 Kazu Hirata <kazu@hxi.com>
5025
5026 * config/h8300/h8300.c (get_shift_alg): Remove an argument cpu.
5027 Change an argument mode of machine_mode to shift_mode of
5028 shift_mode. Remove an extra error check.
5029 (emit_a_shift): Adopt to the new calling prototype of
5030 get_shift_alg.
46d00fef
KH
5031 (function_prologue): Fix code for a monitor
5032 function. Support H8/S.
5033 (function_epilogue): Do not output pop for a monitor function.
9789584b 5034
a2e11fd9
NC
50352001-01-09 Nick Clifton <nickc@redhat.com>
5036
5037 * config/rs6000/rs6000.c (rs6000_sysv_varargs_p): Delete.
5038 (setup_incoming_varargs): Use sysv_varargs_p field of the
5039 cfun->machine structure.
5040 (struct machine_function): Move to rs6000.h
5041 (rs6000_save_machine_status): Delete.
5042 (rs6000_restore_machine_status): Delete.
5043 (rs6000_init_machine_status): New Function.
5044 (rs6000_free_machine_status): New Function.
5045 (rs6000_init_expanders): Use new functions.
5046
5047 * config/rs6000/rs6000.h (rs6000_sysv_varargs_p): Delete
5048 export.
5049 (struct machine_function): Move here.
5050
5051 * config/rs6000/sysv4.h (RS6000_VARARGS_AREA): Use
5052 sysv_varargs_p field of the cfun->machine structure.
5053
5054 * config/rs6000/rs6000-protos.h (rs6000_save_machine_status):
5055 Remove prototype.
5056 (rs6000_restore_machine_status): Remove prototype.
5057
4ba478b8
RH
50582001-01-09 Richard Henderson <rth@redhat.com>
5059
5060 * sched-int.h (struct deps): Add max_reg, reg_last_in_use; merge
5061 reg_last_uses, reg_last_sets, reg_last_clobbers into struct deps_reg.
5062 * sched-deps.c (sched_analyze_1): Update uses of struct deps.
5063 (sched_analyze_2, sched_analyze_insn): Likewise.
5064 (sched_analyze, init_deps): Likewise.
5065 (free_deps): Likewise. Iterate with EXECUTE_IF_SET_IN_REG_SET.
5066 * sched-rgn.c (propagate_deps): Likewise. Remove max_reg argument.
5067 (compute_block_backward_dependences): Update propagate_deps call.
5068
9c1fcbfb
ME
50692001-01-09 Mark Elbrecht <snowball3@bigfoot.com>
5070
5071 * gcc.c (process_command): Set switches[n_switches].ordering to 0.
5072
e582248c
NB
50732001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
5074
825b6926
ZW
5075 * cppinit.c (OPT_MD, OPT_MMD): Restore.
5076 (cpp_handle_option): Handle them.
5077 (cpp_post_options): Ensure one of -M or -MM is specified with
5078 any other -M? option.
5079 (init_dependency_output): Suppress output with -MG.
e582248c
NB
5080
50812001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
5082
825b6926
ZW
5083 * cpp.texi: Update.
5084 * invoke.texi: Update.
e582248c 5085
7894cb27
BS
50862001-01-09 Bernd Schmidt <bernds@redhat.com>
5087
5088 * sh.md (reload_outsf): Generate recognizable patterns for
5089 TARGET_SH3E.
5090
9f56ed15
NB
50912001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
5092
5093 * c-lang.c (lang_hooks): Update.
825b6926
ZW
5094 (lang_init): Rename c_init.
5095 (lang_finish): Remove.
5096 * toplev.c (compile_file): Use lang_hooks for lang_init ()
5097 and lang_finish ().
5098 * toplev.h (lang_hooks): Add init () and finish ().
5099 * tree.h (lang_init, lang_finish): Remove.
5100 * cp/tree.h (lang_init, lang_finish): Remove.
5101 * cp/decl2.c (cxx_post_options, lang_hooks): Move to cp/lex.c.
5102 * cp/lex.c (cxx_init, cxx_finish, cxx_post_options,
5103 lang_hooks): New.
5104 (lang_init, lang_finish): Remove.
5105 * f/com.c (lang_init, lang_finish): Rename f_init, f_finish.
5106 (lang_hooks): Update.
5107 * java/lang.c (lang_init): Rename java_init.
5108 (lang_finish): Remove.
5109 (lang_hooks): Update.
5110 * objc/objc-act.c (lang_init): Rename objc_init.
5111 (lang_finish): Remove.
5112 (lang_hoooks): Update.
9f56ed15 5113
fb83deef
GS
511420001-01-09 Graham Stott <grahams@redhat.com>
5115
5116 * cppfiles.c (_cpp_execute_include): Move `len` initialisation
5117 after `ptr` is initialised.
5118
ec4ad0f9
AO
51192001-01-09 Alexandre Oliva <aoliva@redhat.com>
5120
5121 * config/sh/sh.h (STATIC_CHAIN_REGNUM): Change from r13 to r3.
5122 (INITIALIZE_TRAMPOLINE): Adjust accordingly.
5123 * config/sh/sh.c (sh_expand_prologue): Use r1 as temporary for
5124 stack adjusts, instead of r3.
5125
eab02feb
MH
51262001-01-09 Michael Hayes <mhayes@redhat.com>
5127
5128 * flow.c (flow_loop_scan): Break out of ...
5129 (flow_loops_find) ... here.
5130 * basic-block.h (flow_loop_scan): New.
5131 (LOOP_ENTRY_EDGES, LOOP_EXIT_EDGES): Add.
5132 (LOOP_EDGES, LOOP_EXITS_DOMS, LOOP_ALL): Redefine.
5133
bad48d7e
AO
51342001-01-09 Alexandre Oliva <aoliva@redhat.com>
5135
4b49c365
AO
5136 * cppinit.c (cpp_cleanup): NULLify macro_buffer and zero
5137 macro_buffer_len.
5138 * cppmacro.c (cpp_macro_definition): Reset macro_buffer_len when
5139 realloc()ing macro_buffer.
5140
bad48d7e
AO
5141 * hwint.h (HOST_BITS_PER_WIDE_INT, HOST_WIDE_INT): Use long long
5142 if it's wider than long and the target's long is wider than the
5143 host's.
5144
34fa3e7d
MM
51452001-01-09 Mark Mitchell <mark@codesourcery.com>
5146
5147 Remove support for using UWIN as a host machine.
5148 * configure.in: Issue an error message.
5149 * configure: Regenerated.
5150 * config.gcc: Remove xm_* UWIN configury.
5151 * config/i386/xm-uwin.h: Remove.
5152
61db4608
NC
51532001-01-08 Nick Clifton <nickc@redhat.com>
5154
5155 * config/v850/v850.c (ra_rtx): Delete.
825b6926 5156 (v850_save_machine_status): Delete.
61db4608
NC
5157 (v850_restore_machine_status): Delete.
5158 (v850_init_machine_status): New function.
5159 (v850_mark_machine_status): New function.
5160 (v850_free_machine_status): New function.
5161 (v850_return_addr): Use ra_rtx field in machine structure.
5162 (v850_init_expanders): Use new functions.
5163
5164 * config/v850/v850-protos.h: Fix prototypes for v850_output_*
5165 * config/v850/v850.c: Change arguments to v850_output+* functions
5166 to take a const char *, to avoid compile time warning.
5167 * config/v850/v850.h (ASM_OUTPUT_LABELREF): Undefine, not needed.
5168 (USER_LABEL_PREFIX): Redefine.
825b6926 5169
9c8fad33
JW
51702000-01-08 Jim Wilson <wilson@redhat.com>
5171
5172 * sched-rgn.c (BITSET_ADD, BITSET_REMOVE, bitset_member): Cast
5173 1 to unsigned HOST_WIDE_INT before left shift.
5174
f7a80099
NC
51752001-01-08 Nick Clifton <nickc@redhat.com>
5176
5177 * config/arm/arm.c (arm_mark_machine_status): Check to see if
5178 the machine structure has been allocated.
5179 (arm_free_machine_status): New function: Free the machine
5180 specific function structure.
5181
3c74f8f9
RH
51822001-01-08 Richard Henderson <rth@redhat.com>
5183
5184 * jump.c (simplejump_p): Revert last change.
5185
674c3b40
NB
51862001-01-08 Neil Booth <neil@daikokuya.demon.co.uk>
5187
825b6926
ZW
5188 * cppinit.c (init): Rename init_library.
5189 (cpp_create_reader): Update.
5190 * gcc.c (cpp_options): If -o given, use it as the target of
5191 any -M options.
674c3b40 5192
b15bca31
RE
51932001-01-08 Richard Earnshaw <rearnsha@arm.com>
5194
5195 * arm.c (arm_arch5e): New variable.
5196 (all_cores): XScale is a 5TE device.
5197 (arm_override_options): Set arm_arch5e.
5198 (arm_init_builtins): __builtin_prefetch is in arch5e.
5199 * arm.h (arm_arch5e): Declare it.
5200
5201 * arm.h (PREDICATE_CODES): Add arm_hard_register_operand.
5202
5203 * arm.md (define_constants): Add defines for UNSPEC and
5204 UNSPEC_VOLATILE insns. Update all users.
5205 (define_constants): Add constants for IP_REGNUM, SP_REGNUM, PC_REGNUM.
5206 * arm.c (multi_register_push, note_invalid_constants)
5207 (emit_multi_reg_push, emit_sfm, expand_prologue): Use constants.
5208 * arm.h (SP_REGNUM, IP_REGNUM, PC_REGNUM): Delete defines.
5209 (STACK_POINTER_REGNUM): Define in terms of SP_REGNUM.
825b6926 5210
261efdef
JH
5211Mon Jan 8 16:14:56 MET 2001 Jan Hubicka <jh@suse.cz>
5212
5213 * jump.c (jump_optimize_1): Use reversed_comparison_code
5214 instead of can_reverse_comparison_p.
5215 (jump_back_p): Likewise.
5216 (invert_exp_1): Likewise.
5217 (thread_jumps): Likewise.
5218 * simplify-rtx.c (simplify_unary_operation): Likewise.
5219 (simplify_ternary_operation): Likewise.
5220 * cse.c (find_comparison_args): Convert to use
5221 can_reverse_comparison_p.
5222 (record_jump_equiv): Likewise.
5223
c7861455
RE
52242001-01-08 Richard Earnshaw <rearnsha@arm.com>
5225
5226 * arm.h (HARD_REGNO_RENAME_OK): Delete.
5227 (EPILOGUE_USES): Define.
825b6926 5228 (INITIAL_ELIMINATION_OFFSET): Current prologue code does not
c7861455
RE
5229 automatically stack the LR if it isn't live.
5230
734dba19
JH
5231Mon Jan 8 13:46:02 MET 2001 Jan Hubicka <jh@suse.cz>
5232
5233 * i386.c (ix86_expand_int_movcc): Take care to reverse fp conditions
5234 properly.
5235
b1095f9c
MM
5236Sun Jan 7 18:37:43 2001 Mark P Mitchell <mark@codesourcery.com>
5237
5238 * ggc-page.c (max_alignment): New structure.
5239 (MAX_ALIGNMENT): New macro.
5240 (init_ggc): Use it to round up the sizes in the
5241 extra_order_size_table.
5242
a701949a
FS
52432001-01-07 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
5244
5245 * config/rs6000/rs6000.h (EPILOGUE_USES): New, mark link register
5246 after reload.
5247
18f988a0
KG
52482001-01-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5249
5250 * builtins.def (BUILT_IN_FPRINTF): New entry.
5251
5252 * c-common.c (c_expand_builtin_fprintf): New function.
5253 (init_function_format_info): Handle __builtin_fprintf.
5254 (c_common_nodes_and_builtins): Declare fprintf/__builtin_fprintf.
5255 (c_expand_builtin): Handle BUILT_IN_FPRINTF.
5256
5257 * c-decl.c (duplicate_decls): Adjust comment.
5258
5259 * extend.texi (fprintf): Document new builtin.
5260
8cd0792f
RH
52612001-01-07 Richard Henderson <rth@redhat.com>
5262
5263 * jump.c (simplejump_p): Recognize any single_set jump
5264 of the proper form.
5265
5b15f277
RH
52662001-01-07 Richard Henderson <rth@redhat.com>
5267
5268 * configure.in (slibdir): Accept an --with-slibdir option.
5269 Use "test" not "[" in configure. Default to $(libdir).
5270
9c2e06d9
RH
5271 * config/t-linux (SHLIB_INSTALL): Double quote slibdir;
5272 fix typo in rm -f.
5273 * config/t-aix43 (SHLIB_INSTALL): Likewise.
5274 * config/alpha/t-osf4 (SHLIB_INSTALL): Likewise.
5275 (SHLIB_LINK): Create links for the soname.
5276 * config/mips/t-iris6: Likewise.
5277 * config/sparc/t-slibgcc: Likewise.
5278 * config/sparc/t-slibgcc-sld: Likewise.
5279
eaf19aba
JJ
52802001-01-07 Jakub Jelinek <jakub@redhat.com>
5281
5282 * config/i386/i386.c (constant_call_address_operand): Accept
5283 (const (plus (symbol_ref) (const_int))).
5284 * config/i386/i386.h (PREDICATE_CODES): Add CONST for
5285 constant_call_address_operand.
5286
a8b462be
MH
52872001-01-08 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
5288
5289 * libgcc2.h (W_TYPE_SIZE): Fix case where MIN_UNITS_PER_WORD == 1
5290 and LONG_LONG_TYPE_SIZE > 32.
5291
3799607a
GP
52922001-01-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
5293
5294 * jump.c (reversed_comparison_code_parts): Fix typo introduced by
5295 the previous change.
5296
ab94bc48
JH
5297Sun Jan 7 19:37:48 MET 2001 Jan Hubicka <jh@suse.cz>
5298
5299 * jump.c (reversed_comparison_code_parts, reversed_comparison_code):
5300 New.
5301 (can_reverse_comparison_p): Rewrite to use reversed_comparison_code.
5302 (reverse_condition_maybe_unordered): Abort on unsigned comparisons.
5303 * rtl.h (reversed_comparison_code_parts, reversed_comparison_code):
5304 Declare.
5305
f6a13bff
NB
53062001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
5307
825b6926 5308 * fix-header.c (read_scan_file): s/pfile/scan_in/.
f6a13bff 5309
96302433
NB
53102001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
5311
825b6926 5312 * c-lang.c (c_post_options): Call cpp_post_options.
96302433
NB
5313 * objc/objc-act.c (objc_post_options): Similarly.
5314 * cppmain.c (main): Similarly.
825b6926
ZW
5315 * fix-header.c (read_scan_file): Similarly.
5316 * cppinit.c (cpp_start_read): Move option consistency checks
5317 to cpp_post_options. Don't call init_dependency_output.
5318 If needed, add default target and main file dependency.
5319 (OPT_MD, OPT_MMD): Remove.
5320 (OPT_MF): New.
5321 (cpp_handle_option): Update for OPT_* changes.
5322 (cpp_post_options): New.
5323 (init_dependency_output): Command line -MF overrides environment
5324 variables. Don't set default target etc. Suppress output
5325 if dependencies are going to stdout.
5326 (print_help): Update.
5327 * cpplib.h (cpp_post_options): New.
5328 * gcc.c (cpp_options): Update for -MD, -MMD, -MF.
5329
b34878a3
JH
5330Sun Jan 7 14:44:19 MET 2001 Jan Hubicka <jh@suse.cz>
5331
5332 * jump.c (comparison_dominates_p): Support unordered compares.
5333
1f36a2dd
JH
5334Sun Jan 7 14:39:07 MET 2001 Jan Hubicka <jh@suse.cz>
5335
5336 * simplify-rtx.c (simplify_relational_operation): Always simplify
5337 ORDERED and UNORDERED when FLAG_FAST_MATH. Handle properly UNLE
5338 and UNGE.
5339
69bc0a1f
JH
5340Sun Jan 7 14:35:13 MET 2001 Jan Hubicka <jh@suse.cz>
5341
5342 * combine.c (combine_simplify_rtx): Recognize the unordered compares.
5343 (nonzero_bits): Likewise.
5344 (simplify_comparison): Likewise.
5345 (num_sign_bit_copies): Likewise; return more sane value depending
5346 on STORE_FLAG_VALUE.
5347 (known_cond): Do not assume EQ to be always true for equivalent
5348 operands.
5349
fd13313f
JH
5350Sun Jan 7 14:31:57 MET 2001 Jan Hubicka <jh@suse.cz>
5351
5352 * cse.c (fold_rtx): Handle unordered comparisons.
5353
91b2d119
JH
5354Sun Jan 7 13:49:19 MET 2001 Jan Hubicka <jh@suse.cz>
5355
5356 * rtlanal.c (set_of_1): New static function.
5357 (reg_set_last_1, reg_set_p_1, reg_set_reg, reg_set_flag,
5358 reg_set_last_unknown, reg_set_last_value, reg_set_last_first_regno,
5359 reg_set_last_last_regno): Remove.
5360 (set_of): New global function.
5361 (set_of_data): New structure.
5362 (reg_set_p, reg_set_last): Revamp for set_of.
5363 * rtl.h (set_of): New.
5364
796cdb65
JM
53652001-01-07 Joseph S. Myers <jsm28@cam.ac.uk>
5366
5367 * c-common.c (c_common_nodes_and_builtins): Add _Exit builtin.
5368 * extend.texi: Document _Exit builtin.
5369
7ca3d2b1
NB
53702001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
5371
825b6926
ZW
5372 * (initialize, initialize_builtins,
5373 initialize_dependency_output, initialize_standard_includes):
5374 Rename s/initialize/init. Update.
5375 (init_dependency_output): Move to after
5376 cpp_handle_options, the correct location temporally at least.
5377 (opt_comp): Move next to init (), its caller. Fix prototype.
5378 (init): Make "initialized" local scope.
5379 (cpp_create_reader): Always call init ().
5380 (cpp_start_read): Update.
5381 (output_deps): New function, broken out of cpp_finish.
5382 (cpp_finish): Break out output_deps.
7ca3d2b1 5383
34445094
RH
53842001-01-07 Richard Henderson <rth@redhat.com>
5385
5386 * collect2.c (COFF specific stuff): Revert 12-06 patch
5387 to prototype system functions.
5388
96a45535
MH
53892001-01-07 Michael Hayes <mhayes@redhat.com>
5390
5391 * hard-reg-set.h: Add multiple include guard.
5392 * basic-block.h (struct loop): Add `sink' field.
5393 * loop.h: Include sbitmap.h, hard-reg-set.h, and basic-block.h.
5394 (emit_iv_add_mult): Delete.
5395 (loop_iv_add_mult_hoist, loop_iv_add_mult_sink): Define.
5396 (loop_iv_add_mult_emit_before, loop_insn_sink): Define.
5397 (unroll_loop): Remove end_insert_before argument.
5398 * loop.c (loop_givs_rescan): Remove end_insert_before argument.
5399 (maybe_eliminate_biv_1): Likewise.
5400 (emit_iv_add_mult): Delete.
5401 (gen_add_mult, loop_regs_update): New.
5402 (loop_insn_emit_after, loop_insn_emit_before): New.
5403 (loop_insn_sink, loop_insn_sink_or_swim): New.
5404 (emit_iv_add_mult): Delete.
5405 (scan_loop): Set loop->sink.
5406 (loop_givs_reduce): Use loop_insn_sink and its ilk.
5407 (loop_givs_rescan, strength_reduce, check_dbra_loop): Likewise.
5408 (maybe_eliminate_biv_1): Likewise.
5409 (maybe_eliminate_biv_1): Add basic block argument.
5410 * unroll.c (unroll_loop): Remove end_insert_before argument.
5411 (find_splittable_regs): Likewise.
5412 (find_splittable_regs): Use loop_insn_sink and its ilk.
5413 (find_splittable_givs, final_biv_value, final_giv_value): Likewise.
5414
804a718a
MH
54152001-01-07 Michael Hayes <mhayes@redhat.com>
5416
5417 * loop.h (loop_insn_hoist): New prototype.
5418 * loop.c (loop_insn_hoist, loop_insn_emit_before): New.
5419 (move_movables, loop_givs_rescan): Use loop_insn_hoist.
5420 (check_dbra_loop, load_mems): Likewise.
5421 * unroll.c (unroll_loop, find_splittable_regs): Likewise.
5422 (find_splittable_givs): Likewise.
5423
30a1181a
MH
54242001-01-07 Michael Hayes <mhayes@redhat.com>
5425
5426 * loop.c (emit_iv_add_mult): Use single_set to examine new insn.
5427
cabf3891
RH
54282001-01-07 Richard Henderson <rth@redhat.com>
5429
5430 * sched-rgn.c (is_cfg_nonregular): Fix thinko's last change.
5431
9db0819e
RH
54322001-01-07 Richard Henderson <rth@redhat.com>
5433
5434 * Makefile.in (DRIVER_DEFINES): Define ENABLE_SHARED_LIBGCC and
5435 NO_SHARED_LIBGCC_MULTILIB as required for the target.
5436 * gcc.c (init_spec): Massage the existing libgcc_spec into a
5437 variant that handles a shared libgcc.
5438 (process_command): Always validate -{static,shared}-libgcc.
5439 (do_spec_1): New 'M' case.
5440 * invoke.text (Link Options): Document -{static,shared}-libgcc.
5441
2bbea3a6
RH
54422001-01-07 Richard Henderson <rth@redhat.com>
5443
5444 * Makefile.in (slibdir): New variable.
5445 (libgcc.mk): Pass SHLIB_INSTALL to mklibgcc.
5446 (installdirs): Create slibdir.
5447 (install-libgcc, install-multilib): Defer to libgcc.mk.
5448 * configure.in (slibdir): Substitute.
5449 * mklibgcc.in (install): New target.
5450
5451 * config/t-linux (SHLIB_LINK): Create links for the soname.
5452 (SHLIB_INSTALL): New.
5453 * config/alpha/t-osf4 (SHLIB_INSTALL): New.
5454 * config/mips/t-iris6 (SHLIB_INSTALL): New.
5455 * config/rs6000/t-aix43 (SHLIB_INSTALL): New.
5456 * config/sparc/t-slibgcc (SHLIB_INSTALL): New.
5457 * config/sparc/t-slibgcc-sld (SHLIB_INSTALL): New.
5458
fc51424c
RH
54592001-01-07 Richard Henderson <rth@redhat.com>
5460
5461 * config/rs6000/aix.h (LINK_LIBGCC_SPECIAL_1): New.
5462 * config/rs6000/rs6000.h (LIBGCC_SPEC): Remove.
5463 * config/rs6000/sysv4.h (LIBGCC_SPEC): Remove.
5464
1d7ae250
MH
54652001-01-07 Michael Hayes <mhayes@redhat.com>
5466
5467 * loop.c (count_loop_regs_set): Delete.
5468 (load_mems_and_recount_loop_regs_set): Delete.
5469 (loop_regs_scan): Merge common code from count_loop_regs_set,
5470 scan_loop, and load_mems_and_recount_loop_regs_set.
5471 (scan_loop): Call load_mems directly and loop_regs_scan
5472 again if new registers created.
5473
cd2a3ba2
NB
54742001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
5475
825b6926
ZW
5476 * toplev.c (main): Call the front-end specific post_options
5477 hook if one is given.
5478 * toplev.h (struct_lang_hooks, lang_hooks): New.
5479 * c-lang.c (c_post_options, lang_hooks): Implement lang_hooks
5480 for the C front end.
5481 * cp/decl2.c (cxx_post_options, lang_hooks): Implement
5482 lang_hooks for the C++ front end.
5483 * objc/objc-act.c (objc_post_options, lang_hooks): Implement
5484 lang_hooks for the ObjC front end.
5485 * f/com.c (lang_hooks): Hooks for the Fortran front end.
5486 * java/lang.c (lang_hooks): Hooks for the Java front end.
cd2a3ba2 5487
65289a3a
NB
54882001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
5489
825b6926
ZW
5490 * c-lex.c (init_c_lex): Request #define / #undef callbacks
5491 for verbose DWARF[2] debugging.
5492 (cb_define, cb_undef): The new callbacks.
5493 * toplev.h (debug_define, debug_undef): Make const correct.
5494 * toplev.c (debug_define, debug_undef): Similarly. Do not
5495 perform the verbosity tests here anymore.
65289a3a 5496
f759eb8b
AO
54972001-01-07 Alexandre Oliva <aoliva@redhat.com>
5498
5499 * reload.c (subst_reloads): Take INSN argument. When
5500 replacing a LABEL_REF in a JUMP_INSN, add a REG_LABEL note.
5501 * reload.h (subst_reloads): Adjust prototype.
5502 * reload1.c (reload_as_needed): Pass INSN to subst_reloads.
5503 * jump.c (mark_all_labels): Canonicalize any REG_LABEL notes
5504 present in JUMP_INSNs and copy them to JUMP_LABEL.
5505 * flow.c (find_label_refs, find_basic_blocks_1): Skip
5506 JUMP_INSNs and insns with REG_LABELs that are followed by
5507 JUMP_INSNs with the same REG_LABEL.
5508 * sched-rgn.c (is_cfg_nonregular): Likewise.
5509 * rtlanal.c (computed_jump_p): Make it false if a REG_LABEL
5510 note is available.
5511 * unroll.c (unroll_loop): Look for REG_LABEL notes in
5512 JUMP_INSNs too.
5513 * rtl.texi (REG_LABEL): Document usage in JUMP_INSNs.
5514
587f56c2
RH
55152001-01-06 Richard Henderson <rth@redhat.com>
5516
5517 * loop.c (scan_loop): Use xcalloc for the regs array.
5518 (load_mems_and_recount_loop_regs_set): Zero the new memory
5519 received from xrealloc.
5520
fa6f74f6
NB
55212001-01-06 Neil Booth <neil@daikokuya.demon.co.uk>
5522
5523 * mkdeps.c (deps_add_dep): Fix vector re-allocation.
5524
ea55fa7a
R
5525Sat Jan 6 00:09:34 2001 J"orn Rennecke <amylaar@redhat.com>
5526
5527 * integrate.c (copy_rtx_and_substitute): When copying
5528 an ignored return value, strip REG_FUNCTION_VALUE_P.
5529
c804f3f8
MH
55302001-01-06 Michael Hayes <mhayes@redhat.com>
5531
5532 * loop.c (debug_biv, debug_giv): New.
5533 (loop_biv_dump): Break out from ...
5534 (record_biv): ... here.
5535 (loop_giv_dump): Break out from ...
5536 (record_giv): ... here.
5537 (loop_bivs_check): Use print_simple_rtl.
5538 * unroll.c (loop_iterations): Use print_simple_rtl.
5539
d492b096
JDA
55402000-01-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
5541
5542 * pa.md (return, return_internal): Modify patterns to prevent regrename
5543 mucking with the return pointer.
5544
f7d2b0ed
RH
55452001-01-05 Richard Henderson <rth@redhat.com>
5546
5547 * dwarf2out.c (mem_loc_descriptor) [case MEM]: Revert 10-31 change.
5548
0426e049
NC
5549Fri Jan 5 16:34:18 2001 Nick Clifton <nickc@redhat.com>
5550
5551 * config/v850/lib1funcs.asm: Replace __mulsi3 routine with faster
5552 version supplied by Matteo Frigo.
5553
f7114e17
NB
55542001-01-05 Neil Booth <neil@daikokuya.demon.co.uk>
5555
825b6926
ZW
5556 * cpp.texi: Update for -MQ.
5557 * cppinit.c (cpp_create_reader): Always create pfile->deps.
5558 (cpp_cleanup): Always free pfile->deps.
5559 (initialize_dependency_output): Don't create pfile->deps.
5560 (cpp_handle_option): Similarly.
5561 (OPT_MQ): New.
5562 * gcc.c (cpp_options): Handle -MQ.
5563 (DEFAULT_WORD_SWITCH_TAKES_ARG): Add -MQ.
5564 * mkdeps.c (base_name): Remove.
5565 (deps_init): Don't allocate vector space until it's needed.
5566 (deps_free): Only free vectors if allocated.
5567 (deps_add_target, deps_add_dep): Update for initial allocation.
5568 (deps_add_default_target): Don't strip to the base_name.
f7114e17 5569
a64761a3
DD
55702001-01-05 DJ Delorie <dj@redhat.com>
5571
5572 * config/v850/v850.h (RETURN_ADDR_RTX): Define.
5573 (INIT_EXPANDERS): Define.
5574
5575 * config/v850/v850.c (struct machine_function): Define.
5576 (v850_save_machine_status): New function.
5577 (v850_restore_machine_status): New function.
5578 (v850_return_addr): New function.
5579 (v850_init_expanders): New function.
5580
5581 * config/v850/v850-protos.h: Add prototypes for v850_return_addr
5582 and v850_init_expanders.
825b6926 5583
f4cdc368
ZW
55842001-01-05 Zack Weinberg <zack@wolery.stanford.edu>
5585
5586 * cpplib.h (struct cpp_reader): Add help_only field.
5587 * cppinit.c (COMMAND_LINE_OPTIONS): Add OPT_version.
5588 (cpp_handle_option): Set pfile->help_only if we see -h,
5589 --help, -target-help, or --version. Print version string but
5590 do not set help_only if we see -v or -version. Make text
5591 printed by -v match that printed by (-)-version.
5592
5593 * cppmain.c (main): Exit after option parsing if
5594 pfile->help_only is true.
5595
5596 * toplev.c (independent_decode_option): Call print_version,
5597 then exit, if we see --version (but not -version).
5598 (print_version): Split lengthy message into two lines.
5599
3326b760
NC
56002001-01-05 Nick Clifton <nickc@redhat.com>
5601
5602 * config/v850/v850.c (v850_encode_data_area): Use alloca to create
5603 temporary string for initialisation before calling ggc_alloc_string.
5604
75b7557d
MH
56052001-01-06 Michael Hayes <mhayes@redhat.com>
5606
5607 * rtl.h (print_simple_rtl): New.
5608 * print-rtl.c (print_simple_rtl): New.
5609 (flag_simple): New.
5610 (print_rtx): Disable printing of flags and modes, etc.,
825b6926 5611 if `flag_simple` nonzero.
75b7557d 5612
b05467dc
ZW
56132001-01-05 Zack Weinberg <zack@wolery.stanford.edu>
5614
5615 * function.c (fixup_var_refs): Use push_to_full_sequence where
5616 possible.
5617
b883f801
MM
56182001-01-05 Michael Meissner <meissner@redhat.com>
5619
5620 * flags.h (flag_reorder_blocks): Add declaration.
5621 (flag_rename_block): Ditto.
5622
cc1fe44f
DD
56232001-01-05 DJ Delorie <dj@redhat.com>
5624
5625 * function.c (reorder_blocks): Make sure the flags are all reset
5626 before using them to mark blocks, else a second invocation will
5627 corrupt the block chain.
5628 (reorder_blocks_0): New, resets the flags.
5629
8b03b984
R
5630Fri Jan 5 20:34:06 2001 J"orn Rennecke <amylaar@redhat.com>
5631
5632 * cse.c (find_comparison_args): Stop if the argument is known to
5633 be constant.
5634
18a7c2a7
AO
56352001-01-05 Alexandre Oliva <aoliva@redhat.com>
5636
5637 * config/sh/sh.md (movdf): When splitting load into pair of
5638 registers, don't clobber the register used in the address too
5639 early.
5640
fcbd8ef2
JO
56412001-01-05 Jeffrey Oldham <oldham@codesourcery.com>
5642
5643 * varasm.c (mark_constant_pool): Improve initial comments.
5644 (mark_constants): Move marking of constants to mark_constant.
5645 (mark_constant): New function to recursively mark all constants
5646 referred to by a constant.
5647
ebb0cdf3
CM
56482001-01-05 Catherine Moore <clm@redhat.com>
5649
5650 * dbxout.c ((dbxout_parms): Handle invisible ref where decl is a REG.
5651
3b4e6a16
PE
56522001-01-05 Phil Edwards <pme@sources.redhat.com>
5653
5654 * cp/lang-options.h: Bring comment in line with reality.
5655 * f/lang-options.h: Likewise.
5656 * java/lang-options.h: Likewise.
5657 * objc/lang-options.h: Likewise.
5658 * ch/lang-options.h: Likewise.
5659 * f/g77.texi: And update the manual.
5660
dcfb1a36
MM
56612001-01-05 Marek Michalkiewicz <marekm@linux.org.pl>
5662 Denis Chertykov <denisc@overta.ru>
5663
5664 * config/avr/avr-protos.h (avr_peep2_scratch_safe): Prototype.
5665 * config/avr/avr.c (avr_peep2_scratch_safe): New function.
5666 * config/avr/avr.md (all peepholes that request a scratch register):
5667 Call it, FAIL the peephole if not safe (in interrupt functions).
5668
cef3d50c
MM
56692001-01-05 Mark Mitchell <mark@codesourcery.com>
5670
5671 * ggc-page.c (NUM_EXTRA_ORDERS): Hardwire to zero for now.
5672
341e3d11
JM
56732001-01-05 Joseph S. Myers <jsm28@cam.ac.uk>
5674
5675 * builtins.def (BUILT_IN_CONJ, BUILT_IN_CREAL, BUILT_IN_CIMAG):
5676 Define.
5677 * builtins.c (expand_builtin): Abort on BUILT_IN_CONJ,
5678 BUILT_IN_CREAL and BUILT_IN_CIMAG.
5679 * c-common.c (c_common_nodes_and_builtins): Create builtin conjf,
5680 conj, conjl, crealf, creal, creall, cimagf, cimag and cimagl.
5681 (expand_tree_builtin): Handle BUILT_IN_CONJ, BUILT_IN_CREAL and
5682 BUILT_IN_CIMAG.
5683 * extend.texi: Document these builtins.
5684
604bb87d
DB
56852001-01-05 Daniel Berlin <dberlin@redhat.com>
5686
5687 * c-common.c (lang_get_alias_set): Say we know nothing of
825b6926 5688 VECTOR_TYPE aliasing.
604bb87d
DB
5689
5690 * dwarf2out.c (is_base_type): Handle VECTOR_TYPE properly.
5691
15fe1a7e
BK
56922001-01-05 Bruce Korb <bkorb@gnu.org>
5693
5694 * fixinc/mkfixinc.sh(vax-*-bsd): convert exit and atexit calls to
5695 their x* equivalent versions for atexit-less systems
5696 * fixinc/fixincl.c(main): do not return from main() on atexit-less
5697 systems (or any other system any more).
5698
b0888988
RE
56992001-01-05 Richard Earnshaw <rearnsha@arm.com>
5700
5701 * arm.md (ldmsi_postinc): Avoid use of match_dup between input and
5702 output operands. Use arm_hard_register_operand for operand 4.
5703 (stmsi_postinc): Similarly.
5704 (ldmsi): Use arm_hard_register_operand for opernand 2.
5705 (stmsi): Similarly.
5706 * arm.c (arm_hard_register_operand): New function.
5707 * arm-protos.h (arm_hard_register_operand): Prototype it.
5708
5709 * arm.h (HARD_REGNO_RENAME_OK): Define.
5710
90a74703
JH
5711Fri Jan 5 16:29:49 MET 2001 Jan Hubicka <jh@suse.cz>
5712
5713 * simplify-rtx.c (cfc_args): add "unordered" field.
5714 (check_fold_consts): Set unordered field.
5715 (simplify_relational_operation): Simplify the unordered
5716 comparisons.
5717
5718 * reg-stack.c (swap_rtx_condition): Ensure that the transformation
5719 is valid.
5720
5721 * emit-rtl.c (try_split): Fix code to mark labels.
5722 * jump.c (mark_jump_label): Make global.
5723 * rtl.h (mark_jump_label): Declare.
5724
5725 * predict.c (estimate_probability): Handle unordred comparisons.
5726
a5a4ce3c
NB
57272001-01-05 Neil Booth <neil@daikokuya.demon.co.uk>
5728
825b6926
ZW
5729 * cpp.texi: Update for -MP. Clarify behaviour of -MT.
5730 * cppinit.c (initialize_dependency_output): Update.
5731 (cpp_finish): Output dummy targets for -MP.
5732 (OPT_MP): New.
5733 (cpp_handle_option): Handle -MP. Don't quote -MT options.
5734 * cpplib.h (struct cpp_options): Add deps_phony_targets.
5735 * gcc.c (cpp_options): Update to handle -MP.
5736 * mkdeps.c (deps_add_target, deps_add_default_target): Update
5737 to quote only the default target.
5738 (deps_phony_targets): Insert a preceding newline. Rename from
5739 deps_dummy_targets for consistency.
5740 * mkdeps.h: Update
a5a4ce3c 5741
97fc4caf
AO
57422001-01-05 Alexandre Oliva <aoliva@redhat.com>
5743
5744 * calls.c (emit_library_call_value_1): Support
5745 INIT_CUMULATIVE_LIBCALL_ARGS.
5746 * tm.texi (INIT_CUMULATIVE_LIBCALL_ARGS): Document it.
5747
ffc5c6a9
RH
57482001-01-04 Richard Henderson <rth@redhat.com>
5749
5750 * c-decl.c (finish_struct): Detect flexible array members
5751 used in an inappropriate context.
5752 * c-typeck.c (really_start_incremental_init): Special case
5753 constructor_max_index for zero length arrays.
5754 (pop_init_level): Allow initialization of flexible array
5755 members. Deprecate initialization of zero length arrays.
5756 Don't issue missing initializer warning for flexible array
5757 members or zero length arrays.
5758 (process_init_element): Don't dereference null DECL_SIZE.
5759 * varasm.c (array_size_for_constructor): Return a HOST_WIDE_INT.
5760 Don't abort for empty constructors. Use size_binop
825b6926 5761 (output_constructor): Add commentary regarding zero length
ffc5c6a9
RH
5762 array futures. Abort if we try to initialize an array of
5763 unspecified length with a non-empty constructor in the middle
5764 of a structure.
5765
5766 * extend.texi (Zero Length): Update and clarify documentation
5767 on static initialization.
5768
69f6e760
MH
57692001-01-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
5770
5771 * config/c4x/c4x.c (c4x_expand_prologue): Don't compile an ISR
5772 with more than 32767 words of local storage.
5773
06dd70c6
MH
57742001-01-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
5775
5776 * config/c4x/c4x.c (c4x_init_builtins): Remove builtin support
5777 for 'abs', 'labs', and 'fabs'.
5778 (c4x_expand_builtin): Likewise.
5779 * config/c4x/c4x.h (enum c4x_builtins): Likewise.
5780
99e87c10
AO
57812001-01-05 Alexandre Oliva <aoliva@redhat.com>
5782
5783 * config/sh/sh.md (prget, prset): New insn types.
5784 (return delay slot): Dont' allow prset.
5785 (call, sfunc delay slot): Don't allow prget.
5786 (movsi_i, movsi_ie, movsi_i_lowpart): Create separate alternatives
5787 for prset and prget.
5788
576d0b54 57892001-01-05 Michael Hayes <mhayes@redhat.com>
825b6926 5790
f1d4ac80
MH
5791 * loop.h (struct loop_reg): New.
5792 (struct loop_regs): Change to use array of `struct loop_reg'.
5793 * loop.c: Replace assortment of varrays with single regs array.
5794 (count_one_set): Delete may_not_move array argument
5795 and use regs array instead. All caller's changed.
5796 (count_loop_regs_set): Delete may_not_move and single_usage
5797 arguments and use regs array instead. All caller's changed.
5798 (find_single_use_in_loop): Replace usage array argument with pointer
5799 to regs structure. All caller's changed.
5800 (loop_optimize): Delete `moved_once' array.
5801
58022001-01-05 Michael Hayes <mhayes@redhat.com>
825b6926 5803
576d0b54
MH
5804 * loop.c (prescan_loop): Set loop_info->has_nonconst_call.
5805 Use it instead of loop_info->has_call for scanning loop mems.
5806 (check_dbra_loop): Replace loop_info->has_call test with
5807 loop_info->has_nonconst_call.
5808
616af7ee
MH
58092000-01-04 Matthew Hiller <hiller@redhat.com>
5810
5811 * config/sh/sh.h (EPILOGUE_USES): Recognize fpscr as epilogue-used
5812 for TARGET_SH3E.
5813
32812a40
JM
58142001-01-04 Joseph S. Myers <jsm28@cam.ac.uk>
5815
5816 * fold-const.c (fold): When folding a CONJ_EXPR of a COMPLEX_CST,
5817 use TREE_REALPART and TREE_IMAGPART instead of TREE_OPERAND.
5818
eaa7c03f
JM
58192001-01-04 Joseph S. Myers <jsm28@cam.ac.uk>
5820
5821 * c-common.c (SIZE_TYPE, WCHAR_TYPE): Define.
5822 (flag_short_double, flag_short_wchar): Define.
5823 (c_common_nodes_and_builtins): Create many tree nodes shared
5824 between C and C++ here instead of in cp/decl.c and ...
5825 * c-decl.c (init_decl_processing): ... here.
5826 (SIZE_TYPE, WCHAR_TYPE): Don't define.
5827 (flag_short_double, flag_short_wchar): Don't define.
5828 (record_builtin_type): New function.
5829 (build_void_list_node): New function.
5830 * c-common.h (flag_short_double, flag_short_wchar,
5831 record_builtin_type, build_void_list_node): Declare.
5832
e2a5f96b
R
5833Thu Jan 4 21:09:47 2001 J"orn Rennecke <amylaar@redhat.com>
5834
5835 * integrate.c (expand_inline_function): Don't put a virtual
5836 register into the reg map.
5837
5838 * function.c (fixup_var_refs_1): If force_operand didn't put
5839 the address into the target, move it there.
5840
2be510b8
MM
58412001-01-04 Mark Mitchell <mark@codesourcery.com>
5842
5843 Special-case tree_decl/tree_list allocations.
5844 * ggc-page.c (OBJECT_PER_PAGE): Reimplement.
5845 (OBJECT_SIZE): New macro.
5846 (NUM_EXTRA_ORDER): Likewise.
5847 (extra_order_size_table): New variable.
5848 (NUM_ORDERS): New macro.
5849 (objects_per_page_table): New variable.
5850 (object_size_table): New variable.
5851 (G.pages): Use NUM_ORDERS to bound the array.
5852 (G.page_tails): Likewise.
5853 (DIV_ROUND_UP): Remove.
5854 (BITMAP_SIZE): Use CEIL, instead of DIV_ROUND_UP.
5855 (alloc_page): Use OBJECT_SIZE.
5856 (size_lookup): Don't make it const.
5857 (ggc_alloc): Use OBJECT_SIZE.
5858 (ggc_set_mark): Likewise.
5859 (ggc_get_size): Likewise.
5860 (init_ggc): Set up the object_size_table, objects_per_page_table,
5861 and adjust size_lookup.
5862 (ggc_recalculate_in_use_p): Use CEIL, not DIV_ROUND_UP.
5863 (ggc_pop_context): Use NUM_ORDERS.
5864 (clear_marks): Likewise.
5865 (sweep_pages): Likewise.
5866 (poison_pages): Likewise.
5867 (ggc_print_statistics): Use OBJECT_SIZE.
5868
bf1aaf0a
RK
5869Thu Jan 4 15:54:05 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5870
5871 * varasm.c (output_constructor): Use HOST_WIDE_INT for sizes.
5872 Only call array_size_for_constructor if last field and array type
5873 with no upper bound.
5874
ceebdb09
PB
58752001-01-04 Philip Blundell <philb@gnu.org>
5876
5877 * config/arm/arm.c (arm_gen_constant): Prefer to emit constants
5878 from bit 31 downwards, if this requires no more insns.
5879 (count_insns_for_constant): New helper function for above.
5880
1fd4f141
AO
58812001-01-04 Alexandre Oliva <aoliva@redhat.com>
5882
5883 * gencodes.c (output_predicate_decls): Remove empty initializer.
5884
3af4c257
MM
58852001-01-04 Mark Mitchell <mark@codesourcery.com>
5886
5887 * tree.c (copy_node): Remove documentation about obstacks.
5888 (buidl1): Check that nobody tries to build 2-argument nodes this
5889 way.
5890
30472f46
KG
58912001-01-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5892
a41d0855
KG
5893 * sparc.h (PREDICATE_CODES): Delete fp_sethi_p, fp_mov_p and
5894 fp_high_losum_p.
5895
30472f46
KG
5896 * gencodes.c (output_predicate_decls): Fill empty initializer
5897 braces.
5898
c3843cea
JJ
58992001-01-04 Jakub Jelinek <jakub@redhat.com>
5900
5901 * tradcpp.c (deps_file, print_deps_missing_files): New variables.
5902 (main): Handle -MG, -MD, -MMD. Bail out if -MG is given without -M
5903 or -MM.
5904 (do_include): Handle missing headers like cpp0.
5905 * cppfiles.c (_cpp_execute_include): Don't prefix absolute header
5906 paths with first include pathname. Don't strcat to uninitialized
5907 string.
5908
f4d578da
BS
59092001-01-04 Bernd Schmidt <bernds@redhat.com>
5910
5911 * regrename.c (regrename_optimize): Don't rename from frame pointer
5912 if frame_pointer_needed.
5913 (do_replace): Don't set ORIGINAL_REGNO to a hard register number.
5914 * config/ia64/ia64.c (emit_all_group_insn_barriers): New function.
5915 (ia64_reorg): Use it instead of scheduling if ! optimize.
5916 (errata_emit_nops): Properly call asm_noperands.
5917 (ia64_sched_reorder): Finish cycle if we see an asm.
5918 (ia64_variable_issue): Clear scheduling state after asms.
5919
03b9ab42
NB
59202001-01-04 Neil Booth <neil@daikokuya.demon.co.uk>
5921
825b6926
ZW
5922 * cpp.texi: Update for -MT.
5923 * cppinit.c (initialize_dependency_output): Add a default
5924 target if none has been given already.
5925 (no_tgt, OPT_MT): New.
5926 (cpp_handle_option): Handle -MT. Update -M etc.
5927 * cpplib.h (struct cpp_options): Remove deps_target.
5928 * gcc.c (cpp_options): Handle -MT.
5929 * mkdeps.c (struct deps): Move from mkdeps.h.
5930 (deps_calc_target): Rename deps_add_default_target. Add a
5931 default target if none has been specified already.
5932 * mkdeps.h (struct deps): Move to mkdeps.c.
5933 (deps_calc_target): Rename deps_add_default_target.
03b9ab42 5934
584ef5fe
RH
59352000-01-03 Richard Henderson <rth@redhat.com>
5936
5937 * c-decl.c (grokdeclarator): Give zero-length arrays size zero.
5938 Remove dead code.
5939 * c-typeck.c (push_init_level): Move checks for flexible array
5940 members and zero length arrays ...
5941 (pop_init_level): ... here. Silently discard empty initializations.
5942 Remove dead code.
5943 * varasm.c (output_constructor): Update for sizeof change to
5944 zero-length arrays.
5945
5946 * extend.texi (Zero Length): Clarify semantics.
5947
04d430b8
AO
59482001-01-03 Alexandre Oliva <aoliva@redhat.com>
5949
5950 * configure.in (tm.h): Include isns-codes.h last.
5951 * configure: Rebuilt.
5952
e55a9a6e
RH
59532001-01-03 Richard Henderson <rth@redhat.com>
5954
5955 * config/alpha/alpha.md (addvsi3, addvdi3): New.
5956 (negvsi2, negvdi2, subvsi3, subvdi3, mulvsi3, mulvdi3): New.
825b6926 5957
fa5db828
FS
59582001-01-03 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
5959
5960 * tradcpp.c (main): Make sure finclude() is called with a valid
5961 indepth value while handling -include.
5962
975d393a
AO
59632001-01-03 Alexandre Oliva <aoliva@redhat.com>
5964
5965 * gencodes.c (output_predicate_decls): New function.
5966 (main): Call it.
5967 * machmode.h (GET_MODE_MASK): Arrange for it to be defined
5968 even if it is not the first time machmode.h is #included.
5969 * config/sh/sh.c (fpul_operand): Declare MODE argument.
5970 * tm.texi (PREDICATE_CODES): Document predicate declarations.
5971 * gcc.texi (Copyright): Added 2001.
5972
03dc0325
JM
59732001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
5974
5975 * c-common.c (c_common_lang_init): New function. Warn if format
5976 warning options which only have effects when used with -Wformat
5977 are used without -Wformat.
5978 * c-common.h (c_common_lang_init): Declare.
5979 * c-lang.c (lang_init): Call c_common_lang_init.
5980 * objc/objc-act.c (lang_init): Call c_common_lang_init.
5981
955be633
JM
59822001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
5983
5984 * configure.in: Check for the mktemp command.
5985 * configure: Regenerate.
5986 * gccbug.in: Use a separate temporary file $TEMP0 for one use of
5987 $TEMP. Create temporary files with mktemp, if available at
5988 configure time; otherwise use set -C. Remove temporary files
5989 before exit.
5990
fd939e46
JM
59912001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
5992
5993 * configure.in: Require at least texinfo 4.0. Check for whether
5994 Pod::Man is sufficiently recent to regenerate GCC manpages.
5995 * configure: Regenerate.
5996 * Makefile.in (TEXI2POD): Call perl explicitly rather than relying
5997 on #!.
5998 (GENERATED_MANPAGES): Define.
5999 (generated-manpages): New target. Depend on cpp.1 as well as
6000 gcov.1.
6001 (install-man): Depend on $(GENERATED_MANPAGES) (defined by
6002 configure to generated-manpages or empty) rather than on the
6003 manpages directly. Remove execute permission from installed
6004 gcov.1 as well as cpp.1.
6005 * cpp.1, gcov.1: Regenerate.
6006
819c1488
KG
60072001-01-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6008
6009 * builtins.c (expand_builtin_strncmp): Use host_integerp and
6010 tree_low_cst. Allow using cmpstrsi in more cases.
6011
f07d22aa
RK
6012Wed Jan 3 10:48:43 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6013
6014 * config/sparc/sparc.h (RETURN_IN_MEMORY): Return 0 for variable
6015 sized types.
6016
7ccb4206
AO
6017Wed Jan 3 12:22:32 2001 Alexandre Oliva <aoliva@redhat.com>
6018
6019 * build-make (HOST_CFLAGS): Added `-DGENERATOR_FILE'.
6020 * Makefile.in (HOST_CFLAGS): Mention build-make.
6021
a338321e
RK
6022Wed Jan 3 08:53:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6023
6024 * config/sparc/sparc.md (nonlocal_goto): Emit goto_handler_and_restore
6025 as JUMP_INSN.
6026
432fd734
BS
60272001-01-01 Bernd Schmidt <bernds@redhat.com>
6028
6029 * builtins.c (expand_builtin_return_addr): Don't use MEM_ALIAS_SET on
6030 a REG rtx.
6031
2be28ee2
BS
6032 * cse.c (cse_rtx_varies_p): Accept additional FROM_ALIAS arg. All
6033 callers changed.
6034
713f41f9
BS
6035 * alias.c (throughout): Use ORIGINAL_REGNO when accessing
6036 reg_base_value and reg_known_value arrays.
6037 (init_alias_analysis): Add more cases to detect known values.
6038 * sched-deps.c (deps_may_trap_p): New function.
6039 (sched_analyze_2): Use it.
6040
8f8d8d6e
AO
60412001-01-03 Alexandre Oliva <aoliva@redhat.com>
6042
6043 * combine.c (simplify_shift_const): Even if we're sign-extracting,
6044 don't discard an ASHIFTRT if we're shifting in a wider mode.
6045
232a132f
JDA
60462000-01-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
6047
6048 * toplev.c (rest_of_compilation): Don't print basic block information
6049 when CFG isn't up to date.
6050
19723541
ME
60512001-01-02 Mark Elbrecht <snowball3@bigfoot.com>
6052
6053 * config/i386/djgpp.h (DWARF2_DEBUGGING_INFO): Define.
6054 (UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_ASM_OP): Define.
6055 (UNALIGNED_SHORT_ASM_OP): Define.
6056 (CPP_PREDEFINES): Remove defines for GO32 and DJGPP.
6057
55560b9d
MM
60582001-01-02 Mark Mitchell <mark@codesourcery.com>
6059
6060 * fold-const.c (fold_convert): Fix typo.
6061
4f78b9a8
RH
60622001-01-02 Richard Henderson <rth@redhat.com>
6063
6064 * c-common.h (ASM_INPUT_P): New.
6065 * c-parse.in (asm): Set it when needed.
825b6926 6066 * c-semantics.c (genrtl_asm_stmt): Test it instead of the
4f78b9a8
RH
6067 existance of an operand.
6068
e2134eea
JH
6069Tue Jan 2 20:27:07 MET 2001 Jan Hubicka <jh@suse.cz>
6070
6071 * dwarf2out.c (stack_adjust_offset): Handle PRE_MODIFY.
6072 (dwarf2out_frame_debug_expr): Likewise.
6073 (mem_loc_descriptor): Handle PRE and POST_MODIFY.
6074
2b589241
JH
6075Tue Jan 2 20:21:31 MET 2001 Jan Hubicka <jh@suse.cz>
6076
6077 * i386.c (ix86_split_to_parts): Return number of part required;
6078 handle TFmodes.
6079 (print_operand, ix86_expand_branch, ix86_expand_fp_movcc): Handle
6080 TFmodes.
6081 (ix86_split_long_move): Use number of part returned
6082 by ix86_split_to_parts
6083 * i386.h (MASK_128BIT_LONG_DOUBLE, TARGET_128BIT_LONG_DOUBLE):
6084 New macros.
6085 (TARGET_SWITCHES): Add 128bit-long-double and 96bit-long-double
6086 (LONG_DOUBLE_TYPE_SIZE): Change from constant.
6087 (MAX_LONG_DOUBLE_TYPE_SIZE): New macro.
6088 (INTEL_EXTENDED_IEEE_FORMAT): Likewise.
6089 (ALIGN_MODE_128): Add TFmode.
6090 (IS_STACK_MODE): Likewise.
6091 (HARD_REGNO_NREGS): TFmode needs 3 registers.
6092 (HARD_REGNO_OK): Support TFmodes.
6093 (ASM_OUTPUT_LONG_DOUBLE): Handle TFmodes.
6094 * i386.md (scheduler definitions): Use memory operand to determine
6095 fst/fld instructions; use mode attribute to determine real mode of
6096 the instruction.
6097 (*tf): New patterns, expanders and splitters; based on XFmode patterns.
6098 * invoke.texi (128bit-long-double, 96bit-long-double): Document.
6099
330aa9a3
MM
61002001-01-02 Mark Mitchell <mark@codesourcery.com>
6101
6102 * tree.def (TRUTH_NOT_EXPR): Improve documentation.
6103
e0339ef7
RK
6104Tue Jan 2 10:47:38 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.
6105
6106 * expr.c (store_constructor_field): Update ALIGN before calling
6107 store_constructor.
6108
d07bec95
JO
61092001-01-02 Jeffrey Oldham <oldham@codesourcery.com>
6110
6111 * config/mips/mips.c (function_arg): Don't pass NULL_TREE to
6112 host_integerp.
6113
3719d27b
JO
61142001-01-02 Jeffrey Oldham <oldham@codesourcery.com>
6115
6116 * tm.texi (FUNCTION_ARG): Document that @var{type} can be an
6117 incomplete type.
6118
6d1c15cc
RK
6119Tue Jan 2 10:47:38 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.
6120
6121 * c-decl.c (start_function): Don't warn on third parameter to main.
6122
16b97540
KG
61232001-01-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6124
6125 * tsystem.h: Define HAVE_DECL_GETOPT.
6126
8515dc81
PB
61272001-01-02 Philip Blundell <pb@futuretv.com>
6128
825b6926 6129 * config/arm/linux-gas.h (CLEAR_INSN_CACHE): Avoid illegal clobber
8515dc81
PB
6130 of input operand.
6131
6f85e02b
RH
61322001-01-02 Richard Henderson <rth@redhat.com>
6133
6134 * alpha.md (*ze_and_ne): Duplicate insn condition to split.
6135
21c7361e
AJ
61362001-01-02 Andreas Jaeger <aj@suse.de>
6137
6138 * c-decl.c (c_decode_option): Remove support of
6139 -Wmissing-noreturn.
6140
6141 * toplev.c (documented_lang_options): Remove -Wmissing-noreturn.
6142 (W_options): Add -Wmissing-noreturn here.
6143
6144 * flow.c: Define lang_missing_noreturn_ok_p.
6145 (check_function_return_warnings): Use it.
6146
6147 * c-common.h: Declare lang_missing_noreturn_ok_p.
6148
6149 * c-lang.c (c_missing_noreturn_ok_p): New function.
6150 (lang_init): Set lang_missing_noreturn_ok_p.
6151
6152 * invoke.texi (Warning Options): Document this.
6153
5c25e11d
PE
61542000-12-27 Phil Edwards <pme@sources.redhat.com>
6155
6156 * extend.texi (C++ Extensions): New node for C++ attributes;
20f9202d 6157 describe init_priority and com_interface.
5c25e11d
PE
6158 * invoke.texi: Remove -finit-priority as it now has zero effect.
6159 * install.texi: Fix xref syntax.
6160 * md.texi: Likewise.
6161
d1608933
RK
6162Mon Jan 1 21:28:29 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6163
e428b937
RK
6164 * config.gcc (sparc64-wrs-vxworks*): New case.
6165 * config/sparc/vxsparc64.h, config/sparc/t-vxsparc64: New files.
6166
3276910d
RK
6167 * config/sparc/sparc.c (sparc_override_options): Do support different
6168 pointer and architecture size.
6169 * config/sparc/sparc.h (MIN_UNITS_PER_WORD): Always 4.
6170 (POINTERS_EXTEND_UNSIGNED): Define.
6171 (Pmode): Test TARGET_ARCH64, not TARGET_PTR64.
6172 (FUNCTION_MODE): Define to be Pmode.
6173 * config/sparc/sparc.md (64-bit call patterns): FUNCTION_MODE now DI.
6174
d1608933
RK
6175 * function.c (expand_function_end): Properly handle DECL_RESULT
6176 and copy when ptr_mode != Pmode.
6177 * expmed.c (make_tree): Convert X from Pmode to ptr_mode, if needed.
6178
c2e42aab
KG
61792001-01-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6180
6181 * c-common.c (c_common_nodes_and_builtins): Set prototype
6182 parameters for __builtin_fputs, __builtin_fputc and
6183 __builtin_fwrite. Don't declare plain fputc as a builtin.
6184
5b1ef594
JDA
61852001-01-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
6186
825b6926
ZW
6187 * loop.c (add_label_notes): Increment the label usage count when
6188 a note is added to an insn which refers to a CODE_LABEL.
6189 * gcse.c (add_label_notes): Likewise.
5b1ef594 6190
021d7b26
AJ
61912001-01-01 Andreas Jaeger <aj@suse.de>
6192
6193 * loop.c (scan_loop): Use xmalloc to allocate movables.
6194
cf011243
AO
61952001-01-01 Alexandre Oliva <aoliva@redhat.com>
6196
6197 * tm.texi (REGISTER_MOVE_COST): Add a mode argument.
6198 * reload.c (REGISTER_MOVE_COST): Likewise. Adjust all callers.
6199 * reload1.c (REGISTER_MOVE_COST): Likewise.
6200 * regclass.c (REGISTER_MOVE_COST): Likewise.
6201 (move_cost, may_move_in_cost, may_move_out_cost): Add mode
6202 dimension. Adjust all users.
6203 (init_reg_sets_1): Iterate on all modes.
6204 * config/1750a/1750a.h (REGISTER_MOVE_COST): Adjust.
6205 * config/a29k/a29k.h (REGISTER_MOVE_COST): Adjust.
6206 * config/alpha/alpha.h (REGISTER_MOVE_COST): Adjust.
6207 * config/arc/arc.h (REGISTER_MOVE_COST): Adjust.
6208 * config/arm/arm.h (REGISTER_MOVE_COST): Adjust.
6209 * config/avr/avr.h (REGISTER_MOVE_COST): Adjust.
6210 * config/c4x/c4x.h (REGISTER_MOVE_COST): Adjust.
6211 * config/d30v/d30v.h (REGISTER_MOVE_COST): Adjust.
6212 * config/dsp16xx/dsp16xx.h (REGISTER_MOVE_COST): Adjust.
6213 * config/h8300/h8300.h (REGISTER_MOVE_COST): Adjust.
6214 * config/i386/i386.h (REGISTER_MOVE_COST): Adjust.
6215 * config/ia64/ia64.h (REGISTER_MOVE_COST): Adjust.
6216 * config/m32r/m32r.h (REGISTER_MOVE_COST): Adjust.
6217 * config/m68hc11/m68hc11.h (REGISTER_MOVE_COST): Adjust.
6218 * config/m68k/m68k.h (REGISTER_MOVE_COST): Adjust.
6219 * config/mcore/mcore.h (REGISTER_MOVE_COST): Adjust.
6220 * config/mips/mips.h (REGISTER_MOVE_COST): Adjust.
6221 * config/mn10200/mn10200.h (REGISTER_MOVE_COST): Adjust.
6222 * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Adjust.
6223 * config/ns32k/ns32k.h (REGISTER_MOVE_COST): Adjust.
6224 * config/pa/pa.h (REGISTER_MOVE_COST): Adjust.
6225 * config/pdp11/pdp11.h (REGISTER_MOVE_COST): Adjust.
6226 * config/pj/pj.h (REGISTER_MOVE_COST): Adjust.
6227 * config/romp/romp.h (REGISTER_MOVE_COST): Adjust.
6228 * config/rs6000/rs6000.h (REGISTER_MOVE_COST): Adjust.
6229 * config/sh/sh.h (REGISTER_MOVE_COST): Adjust.
6230 * config/sparc/sparc.h (REGISTER_MOVE_COST): Adjust.
6231
e38fe8e0
BS
62322001-01-01 Bernd Schmidt <bernds@redhat.com>
6233
6234 * alias.c (fixed_scalar_and_varying_struct): Adjust prototype of
6235 arg VARIES_P. Call it with extra arg.
6236 (true_dependence): Likewise.
6237 * rtl.h (rtx_addr_can_trap_p): Declare.
6238 (rtx_varies_p, rtx_addr_varies_p, true_dependence): Update
6239 prototypes.
6240 * rtlanal.c (rtx_addr_can_trap_p): No longer static.
6241 (rtx_varies_p): Accept extra arg FOR_ALIAS; only disallow
6242 pic offset table register if it's zero. All callers changed.
6243 (rtx_addr_varies_p): Accept extra arg FOR_ALIAS; all callers changed.
6244
7a2bf7af
RK
6245Mon Jan 1 07:38:33 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
6246
7d797311
RK
6247 * explow.c (convert_memory_address, case SYMBOL_REF): Copy
6248 STRING_POOL_ADDRESS_P.
6249
4746e0fe
RK
6250 * config/sparc/sparc.c (input_operand): Properly test for short op.
6251
fbd68e5d
RK
6252 * config.gcc (sparc-*-elf): Include sparc/sol2.h.
6253 (sparc-*-rtems*): Include sparc/sol2.h and sparc/elf.h.
6254 (sparclite-*-elf*, sparc86x-*-elf*): Likewise.
6255 * config/sparc/elf.h: No longer include sol2.h.
6256 * config/sparc/lifeelf.h: No longer include sparc/elf.h.
6257 * config/sparc/rtemself.h, config/sparc/sp86x-elf.h: Likewise.
6258
7a2bf7af
RK
6259 * config/sparc/sparc.md: Test TARGET_ARCH64 instead of TARGET_PTR64.
6260
14be28e5
MH
62612001-01-01 Michael Hayes <mhayes@redhat.com>
6262
86fee241
MH
6263 * loop.c (check_insn_for_bivs): Use ivs->n_regs to check array bounds.
6264 (find_mem_givs, record_biv, maybe_eliminate_biv): Likewise.
6265 (record_initial): Likewise.
6266 * unroll.c (copy_loop_body, loop_iterations): Likewise.
6267 (remap_split_bivs): Likewise.
6268
21c7361e 62692001-01-01 Michael Hayes <mhayes@redhat.com>
86fee241 6270
b2735d9a
MH
6271 * loop.c (loop_ivs_free): New function.
6272 (strength_reduce): Break out from...
6273
62742001-01-01 Michael Hayes <mhayes@redhat.com>
21c7361e 6275
14be28e5
MH
6276 * loop.h (struct iv): New.
6277 (REG_IV_TYPE, REG_IV_CLASS, REG_INFO): Modify to use 'struct iv'.
6278 (struct loop_ivs): Replace 'reg_iv_type', 'reg_iv_info',
6279 'reg_biv_class' fields with 'regs' and 'n_regs'.
6280 (struct ivs): Rename 'loop_iv_list' field to 'list'.
6281 * loop.c (loop_bivs_find, strength_reduce): Use ivs->regs array.
6282 * unroll.c (loop_iterations): Check array bounds with ivs->n_regs.
6283
1d2215fe
AO
62842000-12-31 Alexandre Oliva <aoliva@redhat.com>
6285
6286 * resource.c (mark_referenced_resources): Abort() before
6287 attempting to mark a pseudo register.
6288 (mark_set_resources): Likewise.
6289
8b634749
MH
62902001-01-01 Michael Hayes <mhayes@redhat.com>
6291
6292 * loop.h (REG_IV_CLASS): New accessor macro.
6293 * loop.c (REG_IV_CLASS): Use it instead of reg_iv_class array.
6294 * unroll.c (REG_IV_CLASS): Likewise.
21c7361e 6295
38fd12ea 6296See ChangeLog.4 for earlier changes.
This page took 0.87913 seconds and 5 git commands to generate.