]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
i386.h (MASK_64BIT): New constant.
[gcc.git] / gcc / ChangeLog
CommitLineData
25f94bb5
JH
1Fri Mar 9 17:38:08 CET 2001 Jan Hubicka <jh@suse.cz>
2
3 * i386.h (mask_64bit): New constant.
4 (target_64bit): New macro.
5 (target_options): Add '64'/'32'
6 (target_default): Define.
7 * cygwin.h freebsd-aout.h i386-interix.h i386.h i386elf.h isc.h
8 isccoff.h netbsd.h next.h openbsd.h p sco.h sco5.h scodbx.h sequent.h
9 unix.h win32.h (TARGET_DEFAULT): Rename to TARGET_SUBTARGET_DEFAULT.
10
8b737c83
JL
11Thu Mar 8 23:36:56 2001 Jeffrey A Law (law@cygnus.com)
12
13 * config/pa/som.h (MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL): Disable.
14
e7d96a83
JW
15Thu Mar 8 23:29:37 2001 John Wehle (john@feith.com)
16
17 * rtlanal.c (rtx_varies_p): Check operand 0 of a
18 LO_SUM unless for_alias is set.
19
4ce693cd
SS
202001-03-08 Stan Shebs <shebs@apple.com>
21
22 * objc/objc-act.c: Fix old typos in comments, add comments for
23 various functions.
24 (hash_init): Fix file name in error message.
25 (hash_enter): Ditto.
26 (hash_add_attr): Ditto.
27 (continue_class): Ditto.
28
0bf679a3
BK
292001-03-08 Bruce Korb <bkorb@gnu.org>
30
31 gcc.c(main): ensure SIGCHLD handling is set to SIG_DFL so that
32 wiat4() can receive the signal.
33
786b0d35
RO
34Thu Mar 8 21:09:10 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
35
36 * fixinc/inclhack.def (AAB_dgux_int_varargs): Don't use HTML
37 entities.
38 * fixinc/fixincl.x: Regenerate.
39
40Thu Mar 8 21:09:10 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
41
42 * fixinc/inclhack.def (AAA_standards): Undo <standards.h> breakage
43 on Tru64 UNIX.
44 * fixinc/fixincl.x: Regenerate.
45
b7460f24
RH
462001-03-08 Richard Henderson <rth@redhat.com>
47
48 * configure.in (HAVE_AS_LEB128): New assembler check.
49 * configure, config.in: Rebuilt.
50
cadcffb3
JH
51Thu Mar 8 19:54:04 CET 2001 Jan Hubicka <jh@suse.cz>
52
53 * reg-stack.c (move_for_stack_reg): Avoid non-poping fst for
54 TFmode too.
55
b19a539e
KG
562001-03-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
57
58 * config/ns32k/xm-pc532-min.h, config/we32k/xm-we32k.h: Delete
59 references to the MAXPATHLEN macro.
60
61 * config/alpha/xm-alpha.h, config/arm/xm-arm.h,
62 config/i386/xm-cygwin.h, config/xm-linux.h: Delete references to
63 the POSIX macro.
64
65 * config/i386/xm-gnu.h, config/xm-gnu.h,
66 config/alpha/xm-openbsd.h, config/i386/xm-openbsd.h,
67 config/m68k/xm-openbsd.h, config/mips/xm-openbsd.h,
68 config/sparc/xm-openbsd.h, config/xm-openbsd.h: Delete empty
69 and/or unused files.
70
71 * config.gcc: Define POSIX in xm_defines as appropriate in lieu of
72 doing so in various xm-*.h files.
73
4082ab0f
RK
74Thu Mar 8 06:32:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
75
76 * config/i386/i386.md (clrstrsi): Call ix86_set_move_mem_attrs.
77
c785e0fa
AO
782001-03-08 Alexandre Oliva <aoliva@redhat.com>
79
80 * configure.in (enable_shared): Support per-package shared-library
81 enabling.
82 * configure: Rebuilt.
83
251b3667
DE
842001-03-07 David Edelsohn <edelsohn@gnu.org>
85
86 * rs6000.md (cr logic): Add original POWER mnemonic alternative
87 for crnot. Set operands[5] in splitter.
88
cf30ef80
KG
892001-03-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
90
91 * config/i370/xm-mvs.h, config/i370/xm-oe.h,
92 config/i386/xm-beos.h, config/i386/xm-mingw32.h,
93 config/m88k/xm-m88k.h, config/mips/xm-iris6.h,
94 config/mips/xm-openbsd.h, config/pa/xm-pa64hpux.h,
95 config/pa/xm-pahpux.h, config/rs6000/xm-beos.h,
96 config/rs6000/xm-darwin.h, config/rs6000/xm-mach.h,
97 config/rs6000/xm-rs6000.h, config/xm-interix.h: Delete references
98 to the USG macro.
99
100 * config/vax/xm-vaxv.h, config/a29k/xm-unix.h,
101 config/i370/xm-i370.h, config/i386/xm-dgux.h,
102 config/i386/xm-sun.h, config/i386/xm-sysv3.h,
103 config/m68k/xm-tower.h, config/m68k/xm-aux.h,
104 config/m68k/xm-hp320.h, config/m68k/xm-amix.h,
105 config/m68k/xm-altos3068.h, config/m68k/xm-mot3300.h,
106 config/m68k/xm-m68kv.h, config/m88k/xm-openbsd.h,
107 config/mips/xm-nws3250v4.h, config/mips/xm-sysv.h,
108 config/mips/xm-iris3.h, config/mips/xm-iris4.h, config/xm-svr3.h,
109 config/xm-svr4.h, config/sparc/xm-pbd.h, config/clipper/xm-clix.h:
110 Delete unused and/or empty files.
111
112 * config.gcc: Define USG in xm_defines as appropriate. Define
113 POSIX in lieu of xm-svr4.h. Delete all references to the SVR3
114 macro. Remove deleted xm-* files from $xm_files variable.
115
75382c6d
TT
1162001-03-07 Tom Tromey <tromey@redhat.com>
117
118 * configure: Rebuilt.
119 * configure.in: Allow config-lang.in to set `lang_requires' to list
120 of other required languages.
121
c874ab11
AM
1222001-03-07 Andrew MacLeod <amacleod@redhat.com>
123
124 * config/a29k/a29k.c (print_operand): Free a29k_last_prologue_insn
125 after its emitted.
126 (output_prologue): Use xmalloc not oballoc.
127 (output_epilog): Free a29k_first_epilogue_insn when finished.
128 * confif/a29k/a29k.h (PREDICATE_CODES): Remove shift_constant_operand.
129
de6c5979
BL
1302001-03-07 Brad Lucier <lucier@math.purdue.edu>
131
132 * builtins.c (expand_builtin_mathfn): Check
133 flag_unsafe_math_optimizations, not flag_fast_math.
134 (expand_builtin): Likewise
135 * combine.c (combine_simplify_rtx): Likewise.
136 (simplify_if_then_else): Likewise.
137 * cse.c (fold_rtx): Likewise.
138 * flags.h: Remove flag_fast_math. Add
139 flag_unsafe_math_optimizations and flag_trapping_math.
140 * fold-const.c (negate_expr): Check
141 flag_unsafe_math_optimizations, not flag_fast_math.
142 (invert_truthvalue): Likewise.
143 (fold): Likewise. Before associating operands, check that
144 code == MULT_EXPR, not code != MULT_EXPR.
145 * ifcvt.c (noce_try_minmax): Check
146 flag_unsafe_math_optimizations, not flag_fast_math.
147 (noce_operand_ok): Check flag_trapping_math, not flag_fast_math.
148 * invoke.texi: Document -funsafe-math-optimizations and
149 -fno-trapping-math. Change documentation for -ffast-math.
150 * jump.c (reversed_comparison_code_parts): Likewise.
151 (rtx_equal_for_thread_p): Likewise.
152 * optabs.c (emit_conditional_move): Likewise.
153 * simplify-rtx.c (simplify_binary_operation): Likewise.
154 (simplify_relational_operation): Likewise.
155 (simplify_ternary_operation): Likewise.
156 * toplev.c: Remove flag_fast_math. Add flag_trapping_math and
157 flag_unsafe_math_optimizations. Remove fast-math entry from f_options.
158 Add trapping-math and unsafe-math-optimizations entries to f_options.
159 (set_fast_math_flags): New, sets flags for -ffast-math.
160 (set_no_fast_math_flags): New, sets flags for -fno-fast-math.
161 (decode_f_option): Add code to handle -ffast-math and -fno-fast-math.
162 * toplev.h: Declare set_fast_math_flags and set_no_fast_math_flags.
163
164 * config/alpha/alpha.c (alpha_emit_conditional_branch): Likewise.
165 (alpha_emit_conditional_move): Initialize local_fast_math to
166 flag_unsafe_math_optimizations, not flat_fast_math.
167 * config/c4x/c4x.c (c4x_override_options): Call set_fast_math_flags
168 instead of setting flag_fast_math to 1.
169 * config/convex/convex.md: Check flag_unsafe_math_optimizations,
170 not flag_fast_math.
171 * config/i386/i386.c (override_options): Likewise
172 * config/i386/i386.md: Likewise.
173 * config/m68k/m68k.md: Likewise.
174 * config/mips/mips.md: Likewise.
175 * config/rs6000/rs6000.c (validate_condition_mode): Likewise.
176 (rs6000_generate_compare): Likewise.
177
6822468a
LB
1782001-03-07 Laurynas Biveinis <lauras@softhome.net>
179
180 * Makefile.in: Set RANLIB to @RANLIB@.
181 Remove RANLIB_TEST.
182
1832001-03-07 Laurynas Biveinis <lauras@softhome.net>
184
185 * fixinc/inclhack.def (djgpp_wchar_h): New test.
186 * fixinc/fixincl.x: Regenerated.
187
6e487492
RH
1882001-03-07 Richard Henderson <rth@redhat.com>
189
190 * config/alpha/alpha.md (call_osf_1_noreturn): New pattern.
191
542d73ae
RH
1922001-03-07 Richard Henderson <rth@redhat.com>
193
194 * emit-rtl.c (remove_unnecessary_notes): Verify proper nesting
195 of block notes and exception handling notes.
196
232f749b
RH
197 * lists.c (init_EXPR_INSN_LIST_cache): Don't check initialized.
198 * toplev.c (rest_of_compilation): Call init_EXPR_INSN_LIST_cache ...
199 (compile_file): ... here.
200
ed173cc9
KG
2012001-03-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
202
203 * fixinc/Makefile.in (FIXINC_DEFS): Add -DHAVE_CONFIG_H.
204
205 * fixinc/gnu-regex.c: Don't include auto-host.h since we get
206 config.h now. Include libiberty.h to handle alloca.
207
cc937581
ZW
2082001-03-06 Zack Weinberg <zackw@stanford.edu>
209
210 * c-parse.in (yylexname): New function, split out of _yylex.
211 (objc_rid_sans_at): New table.
212 (init_reswords): Initialize it.
213 (_yylex): Give labels clearer names. Handle CPP_ATSIGN by
214 retrieving the next token and checking it for significance as
215 an ObjC keyword or string constant.
216
217 * cpplex.c (_cpp_lex_token): Just return CPP_ATSIGN for '@'.
218 * cpplib.h (TTYPE_TABLE): Add CPP_ATSIGN, drop CPP_OSTRING.
219
220 * c-lex.c, c-parse.in, cppmacro.c, cpplex.c: Remove references
221 to CPP_OSTRING.
222
07ed7ecf
SM
2232001-03-06 Stephen L Moshier <moshier@mediaone.net>
224
225 * config/m68k/m68k.c (const_uint32_operand): Accept any
226 const_int on a 32-bit host.
227
805c6c57
NP
2282001-03-06 Nicola Pero <n.pero@mi.flashnet.it>
229
230 * objc/objc-act.c (init_objc): Set save_lang_status,
231 restore_lang_status, and mark_lang_status.
232
d2f65b7b
KW
2332001-03-06 Krister Walfridsson <cato@df.lth.se>
234
235 * dwarf2asm.c (dw2_asm_output_delta): Fix smallest_mode_for_size call.
236
a867b80c
NB
2372001-03-06 Neil Booth <neil@daikokuya.demon.co.uk>
238
239 * cppinternals.texi: Update.
240
68527d81
KG
2412001-03-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
242
243 * config/a29k/xm-a29k.h, config/a29k/xm-unix.h,
244 config/alpha/xm-alpha.h, config/arc/xm-arc.h, config/arm/xm-arm.h,
245 config/c4x/xm-c4x.h, config/clipper/xm-clix.h,
246 config/convex/xm-convex.h, config/d30v/xm-d30v.h,
247 config/dsp16xx/xm-dsp16xx.h, config/elxsi/xm-elxsi.h,
248 config/h8300/xm-h8300.h, config/i370/xm-i370.h,
249 config/i370/xm-linux.h, config/i370/xm-mvs.h, config/i370/xm-oe.h,
250 config/i386/xm-i386.h, config/i860/xm-i860.h,
251 config/i960/xm-i960.h, config/ia64/xm-ia64.h,
252 config/m32r/xm-m32r.h, config/m68k/xm-m68k.h,
253 config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
254 config/mips/xm-mips.h, config/mn10200/xm-mn10200.h,
255 config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
256 config/pa/xm-linux.h, config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
257 config/pa/xm-pahpux.h, config/pa/xm-papro.h, config/pj/xm-pj.h,
258 config/romp/xm-romp.h, config/rs6000/xm-beos.h,
259 config/rs6000/xm-lynx.h, config/rs6000/xm-rs6000.h,
260 config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
261 config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
262 config/v850/xm-v850.h, config/vax/xm-vax.h, config/vax/xm-vms.h,
263 config/we32k/xm-we32k.h: Delete HOST_BITS_PER_* definitions which
264 match the defaults provided in hwint.h.
265
266 * config/i386/xm-lynx.h, config/m68k/xm-lynx.h,
267 config/sparc/xm-lynx.h, config/xm-std32.h: Delete files.
268
269 * config.gcc (xm_file): Don't set to files which are deleted.
270
271 * hwint.h: Provide default values for HOST_BITS_PER_*. No longer
272 guard this file against these macros being undefined.
273
69f8cbfa
ZW
2742001-03-06 Zack Weinberg <zackw@stanford.edu>
275
276 * objc/objc-act.c (objc_add_static_instance): Set DECL_INITIAL
277 and DECL_DEFER_OUTPUT on the decl we create, before calling
278 rest_of_decl_compilation.
279
1f50aafb
ZW
2802001-03-06 Zack Weinberg <zackw@stanford.edu>
281
282 * aclocal.m4 (AM_GNU_GETTEXT): Don't AC_REQUIRE
283 AC_FUNC_ALLOCA.
284 * configure, config.in: Regenerate.
285 * config.gcc: Remove references to deleted files.
286
287 * genattr.c, genattrtab.c, genextract.c, genoutput.c,
288 genrecog.c, rtl.c: Do not use alloca anywhere.
289
290 * Makefile.in, build-make, system.h, config/x-interix,
291 config/x-svr4, config/xm-interix.h, config/xm-openbsd.h,
292 config/alpha/xm-alpha.h, config/alpha/xm-vms.h,
293 config/arc/xm-arc.h, config/arm/xm-arm.h,
294 config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
295 config/h8300/xm-h8300.h, config/i370/x-oe,
296 config/i370/xm-linux.h, config/i386/x-aix, config/i386/x-beos,
297 config/i386/x-ncr3000, config/i386/x-sco5,
298 config/i386/xm-dgux.h, config/i860/x-sysv4,
299 config/i960/xm-i960.h, config/m32r/xm-m32r.h,
300 config/m68k/x-crds, config/m68k/x-dpx2, config/m68k/x-hp320,
301 config/m68k/x-hp320g, config/m69k/x-mot3300,
302 config/m68k/x-mot3300-gas, config/m68k/xm-amix.h,
303 config/m68k/xm-hp320.h, config/m68k/xm-m68kv.h,
304 config/m68k/xm-mot3300.h, config/m88k/x-dolph,
305 config/m88k/x-sysv4, config/m88k/x-tekXD88,
306 config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
307 config/mips/x-iris, config/mips/x-iris3,
308 config/mips/x-sni-svr4, config/mips/x-sysv,
309 config/mips/xm-iris6.h, config/mips/xm-mips.h,
310 config/mips/xm-nws3250v4.h, config/pa/x-hpux,
311 config/pa/x-pa-mpeix, config/pa/xm-pa.h,
312 config/pa/xm-pa64hpux.h, config/pa/xm-pahpux.h,
313 config/pa/xm-papro.h, config/romp/xm-romp.h,
314 config/rs6000/x-aix31, config/rs6000/x-aix41,
315 config/rs6000/x-beos, config/rs6000/x-lynx,
316 config/rs6000/x-mach, config/rs6000/x-rs6000,
317 config/rs6000/x-sysv4, config/rs6000/xm-rs6000.h,
318 config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
319 config/sparc/x-sysv4, config/sparc/xm-linux.h,
320 config/sparc/xm-pbd.h, config/sparc/xm-sparc.h,
321 config/vax/xm-vms.h: Eradicate all references to alloca and
322 related stuff.
323
324 * config/xm-alloca.h, config/clipper/x-clix,
325 config/i386/xm-sysv4.h, config/i860/x-fx2800,
326 config/i860/x-sysv3, config/m88k/x-sysv3,
327 config/sparc/xm-sol2.h, config/we32k/x-we32k: Delete
328 (contained only alloca related hacks).
329
330 * config/i386/xm-beos.h, config/rs6000/xm-beos.h: Just define
331 USE_C_ALLOCA.
332
d97b75be
BL
3332001-03-05 Brad Lucier <lucier@math.purdue.edu>
334
335 * invoke.texi: Document __FAST_MATH__.
336
1b5640cd
KG
3372001-03-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
338
339 * crtstuff.c: Restore include of auto-host.h.
340
aa5b94de
FH
3412001-03-05 Fergus Henderson <fjh@cs.mu.oz.au>
342
343 Put main() in a separate file, so that the language
344 front-end can use a different main().
345
346 * main.c: New.
347 * toplev.c: (main): Rename as toplev_main.
348 * toplev.h: Declare toplev_main.
349 * Makefile.in (OBJS): add toplev.o.
350 (BACKEND): remove toplev.o, add main.o.
351
04c8d9b9
NB
3522001-03-04 Neil Booth <neil@daikokuya.demon.co.uk>
353
354 * cppfiles.c (search_from): Special case the empty string.
355
7868b4a2
NB
3562001-03-04 Neil Booth <neil@daikokuya.demon.co.uk>
357
358 * cppfiles.c (_cpp_execute_include): Don't make a null-terminated
359 copy of the filename. Don't use CPP_PREV_BUFFER. Don't call
360 strlen or strcpy; we already know the length.
361 (_cpp_compare_file_date): Similarly.
362 * cpphash.h (struct cpp_reader): Delete done_initialising.
363 (CPP_PREV_BUFFER): Delete.
364 * cppinit.c (cpp_start_read): Don't set done_initialising.
365 * cpplex.c (parse_string): Guarantee null-termination.
366 (_cpp_equiv_toklists): Remove.
367 * cpplib.c (glue_header_name): Null-terminate.
368 (do_line): Don't leak memory.
369 * cpplib.h (BT_WEAK): Delete.
370 * cppmain.c (cb_ident): Strings are now null-terminated.
371
3722001-03-04 Laurynas Biveinis <lauras@softhome.net>
373
374 * gcc.c (convert_filename): Append executable suffix
375 if NO_AUTO_EXE_SUFFIX is not defined.
376 * gcc.texi: Document NO_AUTO_EXE_SUFFIX.
377 * config/i386/djgpp.h: Define NO_AUTO_EXE_SUFFIX.
91c704c4 378
7e7be827 3792001-03-03 David O'Brien <obrien@FreeBSD.org>
1f50aafb 380
7e7be827
DB
381 from 2000-09-06 Zack Weinberg <zack@wolery.cumb.org>
382 * c-parse.gperf, c-gperf.h: Delete.
69f8cbfa
ZW
383 (c-gperf.h was accidently re-added to the CVS repo in the rev
384 1.16 commit by tromey)
7e7be827 385
e8408f25
NB
3862001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
387
388 * cpplex.c (_cpp_lex_token): Don't warn about directives in
389 macro arguments when looking for the '('.
390 * cppmacro.c (funlike_invocation_p): Set parsing_args to
391 2 when really parsing arguments; 1 when looking for '('.
392 Always restore the lexer position.
393
1d67c69a
NB
3942001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
395
396 * longlong.h (umul_ppmm): Don't use a multiline string.
397
f6242907
JDA
3982001-03-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
399
400 * fixinc/fixlib.h (t_bool): Add identifier `t_bool' in typedef.
401 * fixinc/server.c (read_pipe_timeout): Use enum t_bool instead of
402 t_bool in declaration because pcc can't combine volatile with typedef
403 types.
404
bf71a4f8
JH
405Sat Mar 3 19:47:13 CET 2001 Jan Hubicka <jh@suse.cz>
406
407 * i386.c (ix86_expand_fp_compare): Delay creating of scratch register
408 until when it is really needed.
409 (ix86_expand_compare): Update call of ix86_expand_fp_compare.
410 * i386.h (PREDICATE_CODES): Add all codes for sse_comparison_operator
411 * i386.md (float?i?f splitter): Don't force source operand to memory
412 for SSE.
413 (sse_movdfcc): Fix constraint.
414 (sse_movdfcc splitter): Handle properly the second alternative.
415
795a25f4
NB
4162001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
417
20f9202d 418 * cpplex.c (parse_string): Unconditionally pedwarn.
795a25f4 419
c691145a
NB
4202001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
421
20f9202d 422 * cpp.texi: Update.
1f50aafb 423 * cppexp.c (parse_number): Update.
20f9202d
DB
424 * cpplex.c (parse_string): Pedwarn if multiline string does not
425 result from a system header's macro.
426 * cpplib.h (sys_objmacro_p): Rename sys_macro_p.
427 * cppmacro.c (sys_objmacro_p): Rename sys_macro_p. Return true
428 for function-like macros too.
c691145a
NB
429 * c-lex.c (lex_number): Update.
430
e7f4d38a
RH
4312001-03-03 Richard Henderson <rth@redhat.com>
432
433 * dwarf2out.c (output_call_frame_info): Fix augmentation length.
434
5dd3e650
R
435Sat Mar 3 04:17:17 2001 J"orn Rennecke <amylaar@redhat.com>
436
437 * combine.c (try_combine): If split with mode-changed scratch
438 register didn't work, try the original mode.
439
31a02448
R
440Sat Mar 3 03:46:47 2001 J"orn Rennecke <amylaar@redhat.com>
441
442 * tm.texi: Change STRUCT_FORCE_BLK to MEMBER_TYPE_FORCES_BLK.
443 * config/c4x/c4x.h: Likewise.
444 * stor-layout.c (compute_record_mode): Likewise.
445 (layout_type, case ARRAY_TYPE): Use MEMBER_TYPE_FORCES_BLK.
446
eaf4e618
ZW
4472001-03-02 Zack Weinberg <zackw@stanford.edu>
448
449 * configure.in: Kill tm.h. Include the files in the $tm_file
450 list in all three of config.h, hconfig.h, tconfig.h, after the
451 relevant set of xm_files. Put TARGET_CPU_DEFAULT in all
452 three, include insn-codes.h in all three (#ifndef GENERATOR_FILE).
453 * configure: Regenerate.
454 * Makefile.in (clean): Don't delete tm.h.
455
456 * system.h: If SUCCESS_EXIT_CODE and FATAL_EXIT_CODE are not
457 defined, set them from EXIT_SUCCESS and EXIT_FAILURE. If
458 those are not defined, set SEC and FEC to 0 and 1.
459 * gcc.texi: Update to match.
460
461 * crtstuff.c: Include tconfig.h, not auto-host.h and tm.h.
462 * config/fp-bit.c, config/m68k/aux-crt2.asm,
463 config/m68k/aux-crtn.asm, config/m68k/aux-mcount.c:
464 Include tconfig.h, not tm.h.
465
466 * config/xm-lynx.h, config/xm-std32.h,
467 config/a29k/xm-a29k.h, config/a29k/xm-unix.h,
468 config/alpha/xm-alpha.h, config/arc/xm-arc.h,
469 config/avr/xm-avr.h, config/c4x/xm-c4x.h,
470 config/clipper/xm-clix.h, config/convex/xm-convex.h,
471 config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
472 config/elxsi/xm-elxsi.h, config/fr30/xm-fr30.h,
473 config/h8300/xm-h8300.h, config/i370/xm-linux.h,
474 config/i386/xm-i386.h, config/i860/xm-i860.h,
475 config/i960/xm-i960.h, config/ia64/xm-ia64.h,
476 config/m32r/xm-m32r.h, config/m68hc11/xm-m68hc11.h,
477 config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
478 config/mips/xm-mips.h, config/mn10200/xm-mn10200.h,
479 config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
480 config/pa/xm-linux.h, config/pa/xm-pa.h,
481 config/pa/xm-pa64hpux.h, config/pa/xm-pahpux.h,
482 config/pa/xm-papro.h, config/pdp11/xm-pdp11.h,
483 config/pj/xm-pj.h, config/romp/xm-romp.h,
484 config/rs6000/xm-beos.h, config/rs6000/xm-rs6000.h,
485 config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
486 config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
487 config/v850/xm-v850.h, config/vax/xm-vax.h,
488 config/we32k/xm-we32k.h:
489 Don't include tm.h.
490 Don't define SUCCESS_EXIT_CODE or FATAL_EXIT_CODE.
491
492 * config/i370/xm-i370.h, config/i370/xm-mvs.h,
493 config/i370/xm-oe.h: Don't include tm.h. Don't define
494 SUCCESS_EXIT_CODE.
495 * config/vax/xm-vms.h: Don't include tm.h.
496
497 * config/xm-lynx.h, config/avr/xm-avr.h,
498 config/fr30/xm-fr30.h, config/pdp11/xm-pdp11.h,
499 Delete; made empty by above changes.
500 * config/i386/xm-lynx.h, config/m68k/xm-lynx.h,
501 config/rs6000/xm-lynx.h, config/sparc/xm-lynx.h:
502 Don't include config/xm-lynx.h or tm.h.
503
504 * config/xm-gnu.h: Don't include fcntl.h.
505 * config/sparc/xm-lynx.h: Don't include sys/types.h and
506 sys/wait.h.
507 * config/clipper/xm-clix.h, config/vax/xm-vax.h: Don't define isinf.
508
1a7519ff
RH
5092001-03-02 Richard Henderson <rth@redhat.com>
510
511 * tm.texi (File Framework): Document UNALIGNED_SHORT_ASM_OP,
512 UNALIGNED_INT_ASM_OP, and UNALIGNED_DOUBLE_INT_ASM_OP.
513
2e4b9b8c
RH
5142001-03-02 Richard Henderson <rth@redhat.com>
515
516 * Makefile.in (OBJS): Add dwarf2asm.o.
517 * dwarf2asm.c, dwarf2asm.h: New files.
518 * dwarf2out.c (*): Use them.
519 (size_of_uleb128, size_of_sleb128): Remove.
520 (output_uleb128, output_sleb128): Remove.
521 (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Remove.
522 (UNALIGNED_DOUBLE_INT_ASM_OP, ASM_BYTE_OP): Remove.
523 (UNALIGNED_OFFSET_ASM_OP, UNALIGNED_WORD_ASM_OP): Remove.
524 (FDE_LABEL, LINE_NUMBER_BEGIN_LABEL, LINE_NUMBER_END_LABEL): New.
525 (ASM_OUTPUT_DWARF_DATA1, ASM_OUTPUT_DWARF_DELTA1): Remove.
526 (ASM_OUTPUT_DWARF_DATA2, ASM_OUTPUT_DWARF_DELTA2): Remove.
527 (ASM_OUTPUT_DWARF_DATA4, ASM_OUTPUT_DWARF_DELTA4): Remove.
528 (ASM_OUTPUT_DWARF_DATA, ASM_OUTPUT_DWARF_DELTA): Remove.
529 (ASM_OUTPUT_DWARF_ADDR, ASM_OUTPUT_DWARF_ADDR_DATA): Remove.
530 (ASM_OUTPUT_DWARF_ADDR_DELTA, ASM_OUTPUT_DWARF_ADDR_CONST): Remove.
531 (ASM_OUTPUT_DWARF_OFFSET4, ASM_OUTPUT_DWARF_OFFSET): Remove.
532 (ASM_OUTPUT_DWARF_CONST_DOUBLE): Remove.
533 (ASM_OUTPUT_DWARF_NSTRING, ASM_OUTPUT_DWARF_STRING): Remove.
534 (dwarf2out_frame_debug): Remove unused variables.
535 (output_loc_operands): Don't abort on 8 byte constants if
536 host integers are wide enough.
537 (output_symbolic_ref): Remove.
538 (size_of_die): Don't assume 4 byte host integers.
539 (output_line_info): Use ASM_GENERATE_INTERNAL_LABEL for begin
540 and end labels.
541 (add_const_value_attribute) [CONST_INT]: Verify we're not doing
542 something stupid with HOST_WIDE_INT to long truncation.
543 [CONST_DOUBLE]: Likewise.
544
545 * config/arm/conix-elf.h (UNALIGNED_WORD_ASM_OP): Remove.
546 (ASM_OUTPUT_DWARF2_ADDR_CONST, ASM_OUTPUT_DWARF_ADDR_CONST): Remove.
547 * config/arm/unknown-elf.h: Likewise.
548 * config/rs6000/aix.h (UNALIGNED_SHORT_ASM_OP): New.
549 (UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_INT_ASM_OP): New.
550 (ASM_OUTPUT_DWARF_ADDR_VAR, ASM_OUTPUT_DWARF_DELTA_VAR): Remove.
551 (ASM_OUTPUT_DWARF_DELTA2, ASM_OUTPUT_DWARF_DELTA4): Remove.
552 (ASM_OUTPUT_DWARF_DELTA, ASM_OUTPUT_DWARF_ADDR_DELTA): Remove.
553 (ASM_OUTPUT_DWARF_ADDR, ASM_OUTPUT_DWARF_DATA4): Remove.
554 (ASM_OUTPUT_DWARF_DATA2, ASM_OUTPUT_DWARF_OFFSET4): Remove.
555 (ASM_OUTPUT_DWARF_OFFSET): Remove.
556 * config/rs6000/sysv4.h (ASM_OUTPUT_DWARF_ADDR): Remove.
557 * config/sparc/sp64-elf.h (UNALIGNED_DOUBLE_INT_ASM_OP): New.
558 (UNALIGNED_LONGLONG_ASM_OP, ASM_OUTPUT_DWARF_ADDR): Remove.
559 (ASM_OUTPUT_DWARF_ADDR_CONST, ASM_OUTPUT_DWARF_REF): Remove.
560
dc76f41c
JDA
5612001-03-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
562
563 * cselib.c (hash_rtx): Cast enums to unsigned int.
564
dbbbbf3b
JDA
5652001-03-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
566
567 * print-rtl.c (print_rtx): Cast enums to int for comparison.
568 * c-decl.c (grokdeclarator): Cast enums to int for comparison and
569 shifts.
570 * c-format.c (C_STD_VER): Cast to int for comparisons.
571 (check_function_format): Cast various enums to int for &.
572 (maybe_read_dollar_number): Likewise.
573 (check_format_info): Likewise.
574 (check_format_info_main): Likewise.
575 * expr.c (emit_move_insn_1): Cast enums to unsigned int for comparison.
576 (safe_from_p): Likewise.
577 * varasm.c (const_hash): Cast enum to int for %.
578 * emit-rtl.c (init_emit_once): Use int loop variable to work around
579 pcc enum problems with < and ++ operators.
580 * regclass.c (init_reg_sets_1): Cast enums for comparison.
581 (choose_hard_reg_mode): Use unsigned int to iterate over CCmodes.
582 (regclass_init): Change enum class to int to iterate over reg_classes.
583 * genrecog.c (merge_trees): Cast enums for comparison.
584 * rtl.h (GET_CODE): Cast to enum rtx_code.
585 (PUT_CODE): Cast to ENUM_BITFIELD(rtx_code).
586 (GET_MODE): Cast to enum machine_mode.
587 (PUT_MODE): Cast to ENUM_BITFIELD(machine_mode).
588 (GET_NOTE_INSN_NAME): Cast enum to int.
589 * tree.h (TREE_CODE): Cast to enum tree_code.
590 (TREE_SET_CODE): Cast VALUE to ENUM_BITFIELD(tree_code).
eaf4e618 591 * timevar.c (timevar_print): Change loop variable id from enum to
dbbbbf3b
JDA
592 unsigned int.
593 * fixinc/fixincl.c (VLEVEL): Cast enums in comparison to unsigned int.
594 * config/i386/i386.md: Use PUT_MODE for mode assignment.
595 * toplev.c (compile_file): Cast enum DFI to int.
596 (decode_d_option): Likewise.
597
4737b274
CF
598Fri Mar 2 12:18:13 2001 Christopher Faylor <cgf@cygnus.com>
599
600 * cppinit.c (append_include_chain): Mark "after" include file name list
601 as a system directory.
602 * cpp.texi: Document new behavior.
603
68af29ce
JH
604Fri Mar 2 11:59:43 CET 2001 Jan Hubicka <jh@suse.cz>
605
606 * ifcvt.c (noce_operand_ok): Handle properly unarry operations.
607
591e15a1
NB
6082001-03-02 Neil Booth <neil@daikokuya.demon.co.uk>
609
eaf4e618
ZW
610 * cppfiles.c (struct include_file): Update.
611 (stack_include_file): Use search_from.
612 (cpp_included, find_include_file): Update.
613 (cpp_execute_include): Update. ptr->name may not be
614 null terminated. Use the new search_from member variable
615 of cpp_buffer.
616 (_cpp_compare_file_date): Similarly.
617 (search_from): New function, similiar to actual_directory.
618 (actual_directory): Delete.
619 (remap_filename): Update. loc->name may not be null terminated.
620 (struct file_name_list): Rename search_path. Update.
621 * cpphash.h (struct cpp_buffer): Delete actual_dir. New members
622 search_from and dir.
623 (struct cpp_reader): Remove actual_dirs.
624 * cppinit.c (struct cpp_pending): Update for renamed objects.
625 (append_include_chain, remove_dup_dir, remove_dup_dirs,
626 merge_include_chains, cpp_destroy, cpp_start_read): Similarly.
627 * cpplib.h (struct cpp_options): Similarly.
591e15a1 628
d6edb99e
ZW
6292001-03-01 Zack Weinberg <zackw@stanford.edu>
630
631 * config/xm-lynx.h, config/xm-std32.h, config/a29k/xm-a29k.h,
632 config/a29k/xm-unix.h, config/alpha/xm-alpha.h,
633 config/arc/xm-arc.h, config/arm/xm-arm.h, config/c4x/xm-c4x.h,
634 config/clipper/xm-clix.h, config/convex/xm-convex.h,
635 config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
636 config/elxsi/xm-elxsi.h, config/fr30/xm-fr30.h,
637 config/h8300/xm-h8300.h, config/i370/xm-i370.h,
638 config/i370/xm-linux.h, config/i370/xm-mvs.h,
639 config/i370/xm-oe.h, config/i386/xm-aix.h,
640 config/i386/xm-i386.h, config/i386/xm-osf.h,
641 config/i860/xm-i860.h, config/i960/xm-i960.h,
642 config/ia64/xm-ia64.h, config/m32r/xm-m32r.h,
643 config/m68k/xm-m68k.h, config/m88k/xm-m88k.h,
644 config/mcore/xm-mcore.h, config/mips/xm-mips.h,
645 config/mn10200/xm-mn10200.h, config/mn10300/xm-mn10300.h,
646 config/ns32k/xm-ns32k.h, config/pa/xm-linux.h,
647 config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
648 config/pa/xm-pahpux.h, config/pa/xm-papro.h,
649 config/pj/xm-pj.h, config/romp/xm-romp.h,
650 config/rs6000/xm-beos.h, config/rs6000/xm-rs6000.h,
651 config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
652 config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
653 config/v850/xm-v850.h, config/vax/xm-vax.h,
654 config/vax/xm-vms.h, config/we32k/xm-we32k.h:
655 Do not define TRUE or FALSE.
656
657 * config/i386/xm-aix.h, config/i386/xm-osf.h: Delete; made
658 empty by above change.
659 * config.gcc: Remove references to these files.
660
661 * configure.in: Detect stdbool.h.
662 * configure, config.in: Regenerate.
eaf4e618 663 * system.h: Include stddef.h here if available.
d6edb99e
ZW
664 Set HAVE__BOOL based on GCC_VERSION and __STDC_VERSION__.
665 Then set up a sensible boolean type at the very end.
666
667 * combine.c, cse.c, expr.c, fold-const.c, gensupport.c,
668 config/mcore/mcore.c: Rename variables named 'true' and/or 'false'.
669
670 * hash.h: Delete 'boolean' typedef and related #undefs.
671
672 * function.c, ggc-common.c, hash.h, hash.c, tlink.c: Replace
673 all uses of 'boolean' with 'bool'.
674
37b8524c
JDA
6752001-03-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
676
677 * cpplib.c (_cpp_init_stacks): Cast enum for comparison.
678 * cppexp.c (lex): Cast enums for comparison.
679 * cppinit.c (parse_option): Cast enum for comparison.
680 * cpplex.c (cpp_spell_token): Cast enums to int for minus.
681 (cpp_output_token): Likewise.
682 (cpp_can_paste): Cast enums for comparsion and plus/minus.
683 (cpp_avoid_paste): Cast enums for minus and comparison.
684
f7143427
ZW
6852001-03-01 Zack Weinberg <zackw@stanford.edu>
686
687 * gcc.c, objc/lang-specs.h: Add zero initializer for cpp_spec
688 field to all array elements.
689
cb773845
ZW
6902001-03-01 Zack Weinberg <zackw@stanford.edu>
691
692 * cpphash.h (struct cpp_reader): Add print_version field.
693 * cppinit.c (cpp_handle_option): For -v, -version, and --version,
694 just set print_version and other flags as appropriate.
695 (cpp_post_options): Print version here if print_version is set.
696
697 * toplev.c (exit_after_options): New flag.
698 (independent_decode_option): Don't exit here; just set
699 exit_after_options.
700 (main): Exit after calling lang_hooks.post_options if
701 exit_after_options is true.
702
703 * cppinit.c (append_include_chain): Drop never-used case QUOTE.
704 (merge_include_chains): Adjust comment to match code.
705
71b7be38
ZW
7062001-03-01 Zack Weinberg <zackw@stanford.edu>
707
708 * stringpool.c (set_identifier): New function.
709 * tree.h: Prototype it.
710
711 * c-parse.in: Kill D_YES. If compiled for objc, call
712 save_and_forget_protocol_qualifiers from init_reswords.
713 * objc/objc-act.c (remember_protocol_qualifiers,
714 forget_protocol_qualifiers): Don't diddle C_IS_RESERVED_WORD.
715 Swap out the non-keyword IDENTIFIER_NODEs for keyword ones, or
716 vice versa.
717 (save_and_forget_protocol_qualifiers): New function.
718 * c-lex.h: Prototype save_and_forget_protocol_qualifiers.
719
5aa709ad
DN
7202001-03-01 Diego Novillo <dnovillo@redhat.com>
721
722 * c-semantics.c (prune_unused_decls): Return error_mark_node
723 instead of (tree) 1 to stop traversing the tree chain.
724
791f5e8d
BS
7252001-03-01 Bernd Schmidt <bernds@redhat.com>
726
727 Fix a problem introduced by Kenner's Feb 18 change.
728 * toplev.c (rest_of_compilation): Disable flag_cse_follow_jumps and
729 flag_cse_skip_blocks only temporarily, not for ever.
730
9c1eed37
JL
731Thu Mar 1 09:49:58 2001 Jeffrey A Law (law@cygnus.com)
732
913553ce
JL
733 * config/pa/som.h (ASM_IDENTIFY_GCC): Define.
734 (ASM_IDENTIFY_GCC_AFTER_SOURCE): Likewise.
735
9c1eed37
JL
736 * pa.c (emit_move_sequence): Verify operand0 is a hard register
737 before determining its register class.
738
21e4c9a8
BS
7392001-03-01 Bernd Schmidt <bernds@redhat.com>
740
8cb71435
BS
741 * config/ia64/ia64.c (ia64_hard_regno_rename_ok): Disallow renaming
742 from reg 4 if current_function_calls_setjmp.
7a87c39c
BS
743 (gen_nop_type): New function.
744 (ia64_emit_nops): New function.
745 (ia64_reorg): Call it.
2d1b811d 746 (ia64_sched_reorder): Move code that rotates bundles up a bit.
8cb71435 747
1abdf5e7
BS
748 * reload1.c (eliminate_regs_in_insn): Restrict the special case
749 code not to try to optimize adds with anything but a REG destination.
750
21e4c9a8
BS
751 * sched-int.h (struct haifa_insn_data): Add new member priority_known.
752 (INSN_PRIORITY_KNOWN): New accessor macro.
753 * haifa-sched.c (priority): Use it instead of testing priority against
754 zero.
755
d676911f
DD
7562001-02-28 DJ Delorie <dj@redhat.com>
757
758 * config/m68k/m68k.h (MOVE_BY_PIECES_P): Avoid pushing bytes,
759 since that doesn't work the way gcc wants on a generic m68k.
760
d448e3e9
RH
7612001-02-28 Richard Henderson <rth@redhat.com>
762
763 * caller-save.c (save_call_clobbered_regs): Fix typo in
764 comparison last change.
765
b4e89e2d
JH
766Wed Feb 28 19:31:42 CET 2001 Jan Hubicka <jh@suse.cz>
767
768 * i386.c (pentium4_cost): New.
769 (m_PENT4): New macro.
770 (x86_push_memory, x86_movx,x86_cmove, x86_deep_branch, x86_use_sahf
771 x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8
772 x86_integer_DFmode_moves, x86_partial_reg_dependency,
773 x86_memory_mismatch_stall): Add Pentium4
774 (x86_use_q_reg, x86_use_any_reg): Kill.
775 (override_options): Add pentium4.
776 (incdec_operand): Return 0 for pentium4.
777 (ix86_issue_rate): Add PROCESSOR_PENTIUM4 and PROCESSOR_ATHLON.
778 * i386.h (x86_use_q_reg, x86_use_any_reg): Kill.
779 (TARGET_PENTIUM4): Define.
780 (enum processor_type): Add PROCESSOR_PENTIUM4.
781 (CPP_CPU_DEFAULT_SPEC): Add pentium4 support.
782 * i386.md (attribute "cpu"): Add pentium4.
783 * invoke.texi (march): Add pentium4.
784
0073023d
JH
785Wed Feb 28 19:28:06 CET 2001 Jan Hubicka <jh@suse.cz>
786
787 * i386.md (sse_mov?fcc*): New patterns and splitters.
788 * i386.c (ix86_expand_movcc): Work post-reload; recognize
789 the SSE based conditional moves.
790
2b04e52b
JH
791Wed Feb 28 19:18:23 CET 2001 Jan Hubicka <jh@suse.cz>
792
793 * i386.md (attribute mode): Add "TI".
794 (movsf_1): Add pxor support; remove constant propagation splitter.
795 (movdf_integer): Likewise.
796 (movdf_nointeger): Likewise.
797 (movxf constant prop splitter): Handle all modes; update for SSE.
798 * i386.h (CONST_DOUBLE_OK_FOR_LETTER): Add 'H' for SSE constants.
799 * i386.c (standard_80387_constant_p): Rewrite.
800 (standard_sse_constant_p): New.
801 * i386-protos.h (standard_sse_constant_p): New.
802
a46d1d38
JH
803Wed Feb 28 19:05:37 CET 2001 Jan Hubicka <jh@suse.cz>
804
805 * i386.md (sse_setccsf, sse_setccdf): New.
806 (sse_cmp* patterns): Use '%D' instead of outputtting condition
807 flag directly.
808 * i386.c (sse_comparison_operator): Accept the supported unordered
809 comparses; be ready for fast_math.
810 (print_operand): Support 'D'.
811
91afe941
JH
812Wed Feb 28 18:54:51 CET 2001 Jan Hubicka <jh@suse.cz>
813
814 * jump.c (reversed_comparison_code): Kill.
815
6f45f005
JH
816Wed Feb 28 18:50:15 CET 2001 Jan Hubicka <jh@suse.cz>
817
818 * toplev.c (rest_of_compilation): Do post-reload splitting unconditionally
819 for STACK_REGS
820
c679d048
JH
821Wed Feb 28 18:47:37 CET 2001 Jan Hubicka <jh@suse.cz>
822
823 * i386.md (sse_andti3, sse_nandti_3, sse_xorti3): Add SSE2 versions;
824 add missing '%' in constraints.
825
4ae31003
JH
826Wed Feb 28 17:24:24 CET 2001 Jan Hubicka <jh@suse.cz>
827
828 * c-common.c (build_common_tree_nodes): Build intTI_type_nodes
829 for HOST_BITS_PER_WIDE_INT == 32 too.
830
787dc842
JH
831Wed Feb 28 17:22:35 CET 2001 Jan Hubicka <jh@suse.cz>
832
833 * caller-save.c (reg_save_code, reg_restore_code): Index by mode, not
834 NREGS.
835 (insert_save, insert_restore): New parameter save_mode.
836 (init_caller_save): Update initialization of reg_save_code
837 and reg_restore_code.
838 (save_call_clobbered_regs): Compute save_modes and update calls to
839 reg_save_code and reg_restore_code.
840 (insert_restore): Unsignetize numbers; use save_modes to choose mode
841 of spill; update use of reg_restore_code.
842 (insert_save): Likewise.
843 * i386.h (HARD_REGNO_CALLER_SAVE_MODE): Update.
844 * c4x.h (HARD_REGNO_CALLER_SAVE_MODE): Update.
845 * regs.h (HARD_REGNO_CALLER_SAVE_MODE): Likewise.
846
847Wed Feb 28 17:19:28 CET 2001 Jan Hubicka <jh@suse.cz>
dc2698bc
JH
848
849 * ifcvt.c (noce_emit_store_flag, noce_try_store_flag_constants,
850 noce_try_store_flag_inc, noce_try_store_flag_mask,
851 noce_try_cmove_arith):
852 Use reversed_comparison_code instead of reverse_comparison and
853 can_reverse_comparison_p.
854
2450703c
JH
855Wed Feb 28 17:17:29 CET 2001 Jan Hubicka <jh@suse.cz>
856
857 * jump.c (reversed_comparison_code_parts): Allow reversal of
858 unordered compares in -ffast-math mode; reverse ordered compares
859 for FP even w/o -ffast-math.
860
25cff714
RH
8612001-02-27 Richard Henderson <rth@redhat.com>
862
863 * print-rtl.c (print_rtx) [i]: Don't print field five on
864 NOTEs other than NOTE_INSN_DELETED_LABEL.
865
26029fe2
ZW
8662001-02-27 Zack Weinberg <zackw@stanford.edu>
867
868 * mips/xm-iris4.h: Delete #if 0 block (there since before 1997).
869 * pa/xm-linux.h, pa/xm-pa.h, pa/xm-papro.h: Don't declare errno.
870
87aee676
DN
8712001-02-27 Diego Novillo <dnovillo@redhat.com>
872
873 * c-common.c (walk_stmt_tree): Visit the chain of the current tree
874 even if walk_subtrees is 0.
875 * c-semantics.c (prune_unused_decls): Return a non-null value to
876 stop traversing the tree chain.
877
67935d3f
DD
8782001-02-27 DJ Delorie <dj@redhat.com>
879
880 * config/m68k/m68k.c (output_function_prologue): Save the new CFA
881 register, *then* define it as the new CFA.
882
7ee72796
JL
883Tue Feb 27 16:49:13 2001 Jeffrey A Law (law@cygnus.com)
884
885 * pa.c (override_options): Promote -fpic to -fPIC.
886 (legitimize_pic_address): Simplify due to removal of
887 small PIC as a code generation option.
888 (secondary_reload_class): Similarly.
889 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Similarly.
890 (PRINT_OPERAND_ADDRESS): Similarly.
891 * pa.md (various patterns): Similarly.
892 (small pic lo_sum pattern): Remove.
893
b71b019a
JH
894Tue Feb 27 16:01:13 CET 2001 Jan Hubicka <jh@suse.cz>
895 Fergus Henderson
896
897 * md.texi (min, max): Document
d6edb99e 898
79005df5
JH
899Tue Feb 27 15:51:35 CET 2001 Jan Hubicka <jh@suse.cz>
900
901 * i386.md (movsf, movdf): Use movaps for reg-reg moves if
902 TARGET_PARTIAL_REG_DEPENDENCY.
903 (truncdfsf2_1_sse, truncdfsf2_2): Penalize the fpreg->mem case.
904
7ada6625
JH
905Tue Feb 27 15:36:48 CET 2001 Jan Hubicka <jh@suse.cz>
906
907 * i386.md (mins*, maxs*): New patterns, expanders and splitters.
908
8bb3dc77
JO
9092001-02-26 Jeffrey Oldham <oldham@codesourcery.com>
910
911 * mips.c (mips_make_temp_file): Fix thinko in last change.
912
ac4cdf40
JE
9132001-02-26 Jason Eckhardt <jle@redhat.com>
914
915 * combine.c (known_cond): Do not reverse the condition when
d6edb99e 916 SMAX/UMAX is being considered and the condition is for equality
ac4cdf40
JE
917 or inequality.
918
919 * testsuite/gcc.c-torture/execute/20010221-1.c: New test.
920
14879e76
PB
9212001-02-26 Philip Blundell <philb@gnu.org>
922
923 * config.gcc: Remove obsolete targets "arm*-*-linuxoldld" and
924 "armv2-*-linux".
925 * config/arm/linux-elf.h: Remove historical relics related to
926 above configurations.
927 * config/arm/linux-oldld.h: Delete.
928 * config/arm/linux-elf26.h: Delete.
929
8cf8d8a2
JM
9302001-02-26 Jason Merrill <jason@redhat.com>
931
932 * c-decl.c (finish_decl): Set DECL_DEFER_OUTPUT on tentative file-scope
933 definitions.
934 * toplev.c (rest_of_decl_compilation): Check DECL_DEFER_OUTPUT to
935 recognize a tentative definition. Lose obsolete code.
936
937 * toplev.c (wrapup_global_declarations): Don't emit DECL_COMDAT
938 variables unless necessary, either.
939
05cc23e8
RH
9402001-02-25 Richard Henderson <rth@redhat.com>
941
942 * ifcvt.c (struct noce_if_info): Add test_bb.
943 (noce_get_alt_condition): New.
944 (noce_try_minmax, noce_try_abs): New.
945 (noce_operand_ok): New.
946 (noce_process_if_block): Use them.
947 * rtlanal.c (may_trap_p): NEG and ABS can never trap.
948
052d4b6c
CF
949Sun Feb 25 14:26:17 2001 Christopher Faylor <cgf@cygnus.com>
950
951 * config/i386/cygwin.h (CPP_SPEC): Add missing space before w32api
952 include.
953
e1b71de9
ZW
9542001-02-25 Zack Weinberg <zackw@stanford.edu>
955
956 * config.gcc: Put back pa/t-openbsd and rs6000/t-openbsd.
957 * config/mips/mips.c (mips_make_temp_file): Set temp_filename
958 properly.
959 (mips_asm_file_end): Free temp_filename here.
960
4ddb47b3
RK
961Sun Feb 25 08:34:23 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
962
397be6cf
RK
963 * config/i386/i386-protos.h (ix86_set_move_mem_attrs): Move decl.
964 * config/i386/i386.c (ix86_set_move_mem_attrs_1): Fix typo.
965
4ddb47b3
RK
966 * config/i386/i386.md (movstrsi): Handle FAIL case.
967
618cdda7
NB
9682001-02-25 Neil Booth <neil@daikokuya.demon.co.uk>
969
05cc23e8
RH
970 * cppinit.c (builtin_array): Update.
971 (init_builtins): Flag builtins to warn if redefined or
972 undefined. Define __GXX_WEAK as a normal macro.
973 * cpplib.c (do_undef): Warn if flagged NODE_WARN.
974 * cpplib.h (NODE_WARN): New flag.
975 * cppmacro.c (builtin_macro): Remove handling of __GXX_WEAK__.
976 Handle __STDC__ as a builtin only on Solaris.
977 (warn_of_redefinition): Renamed from check_macro_definition.
978 Reverse sense of test. Always warn if NODE_WARN.
979 (_cpp_create_definition): Use warn_of_redefinition. Flag
980 any macro beginning with "__STDC_" to require a mandatory
981 warning if redefined or undefined.
618cdda7 982
000b5f54
ZW
9832001-02-24 Zack Weinberg <zackw@stanford.edu>
984
985 * xm-interix.h, xm-lynx.h, alpha/xm-vms.h, convex/xm-convex.h,
986 i370/xm-i370.h, i370/xm-linux.h, i370/xm-mvs.h, i370/xm-oe.h,
987 i386/xm-beos.h, i386/xm-dos.h, i386/xm-mingw32.h,
988 i860/xm-i860.h, m68k/xm-3b1.h, m68k/xm-amix.h, m68k/xm-aux.h,
989 m68k/xm-crds.h, m68k/xm-mot3300.h, m88k/xm-sysv3.h,
990 mips/xm-mips.h, rs6000/xm-beos.h, vax/xm-vms.h:
991 Don't define any of:
992 USE_PROTOTYPES, vfork, mktemp, SVR3, NO_SYS_PARAMS_H,
993 P_tmpdir, MVS, NO_DBX_FORMAT, USE_STDARGS, STDC_HEADERS,
994 NO_PRECOMPILES, i860, __PTR_TO_INT, __INT_TO_PTR, rindex,
995 index, FULL_PROTOTYPES, AUX, R_OK, W_OK, X_OK, F_OK,
996 STACK_DIRECTION, MIPS, MAX_READ_LEN, MAX_WRITE_LEN.
997
998 * alpha/xm-alpha.h, clipper/xm-clix.h, d30v/xm-d30v.h,
999 fr30/xm-fr30.h, i370/xm-linux.h: Remove commented-out macro
1000 definitions.
1001
1002 * m68k/xm-3b1.h, m68k/xm-crds.h, m88k/xm-sysv3.h:
1003 Delete now-empty file.
1004
1005 * alpha/vms.h: Define NEED_ATEXIT here...
1006 * alpha/xm-vms.h: ...not here.
1007
1008 * i386/cygwin.h: Don't define PARAMS.
1009 * mips/mips.c: Don't prototype mktemp. Don't define
1010 P_tmpdir. Use make_temp_file to create temporary files.
1011 Don't be clever and delete temporary files early.
1012 * config.gcc: Drop references to deleted files. Don't define
1013 FULL_PROTOTYPES.
1014 * gcc.texi: Don't mention USE_PROTOTYPES.
1015
0e4970d7
RK
1016Sat Feb 24 20:25:29 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1017
1018 * config/i386/i386.c (ix86_set_move_mem_attrs): New function.
1019 (ix86_set_move_mem_attrs_1): Likewise.
1020 * config/i386/i386-protos.h (ix86_set_move_mem_attrs): New declaration.
1021 * config/i386/i386.md (movstrsi): Call it.
1022
a59b81be
ZW
10232001-02-24 Zack Weinberg <zackw@stanford.edu>
1024
1025 * config.gcc: Expunge references to alpha/t-pe, pa/t-openbsd,
1026 x-linux-aout, i386/t-go32, t-osf, m68k/x-m68kv,
1027 ns32k/xm-netbsd.h, rs6000/t-openbsd, rs6000/t-xnewas,
1028 rs6000/x-aix41-gld. These are nonexistent, empty, or obsolete.
1029
1030 (i750a-*-*): Error here if hosting on i750a.
1031 (alpha*-*-winnt*, ix86-*-winnt3*): Remove stanzas entirely.
1032
1033 * x-linux-aout, xm-freebsd.h, i386/beos-pe.h, ns32k/xm-netbsd.h:
1034 Remove (empty modulo comments).
1035
1036 * 1750a/xm-1750a.h, alpha/config-nt.sed, alpha/win-nt.h,
1037 alpha/xm-winnt.h, i386/config-nt.sed, i386/os2.h,
1038 i386/t-winnt, i386/win-nt.h, i386/xm-freebsd.h, i386/xm-os2.h,
1039 i386/xm-winnt.h, m68k/x-alloca-c, m88k/x-dguxbcs,
1040 mips/x-netbsd, mips/x-nws3250v4, rs6000/t-xnewas,
1041 rs6000/t-xrs6000, rs6000/xm-cygwin.h: Remove (obsolete)
1042
1043 * i386/crtdll.h, i386/cygwin.h, i386/mingw32.h:
1044 Remove reference to winnt.h in comment.
1045 * rs6000/t-newas, rs6000/t-rs6000: Override LIBGCC1_TEST to null.
1046
c7b30677
FS
10472001-02-24 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
1048
1049 * loop.c (check_dbra_loop): A biv has uses besides counting if it is
1050 used to set another biv.
1051
f900ecd8
RK
1052Sat Feb 24 06:45:21 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1053
bd015d37
RK
1054 * tree.h (BLOCK_DEAD): New macro.
1055 (struct tree_block): New flag, dead_flag.
1056 * print-tree.c (print_node, case 'b'): Print missing fields.
1057 * emit-rtl.c (remove_unnecessary_notes): Set BLOCK_DEAD.
1058 * function.c (identify_blocks): Enable test for misplaced notes.
1059 (all_blocks): Skip BLOCK_DEAD blocks.
1060 * integrate.c (integrate_decl_tree): Likewise.
1061
f900ecd8
RK
1062 * errors.c (internal_error, trim_filename): New functions.
1063 (fancy_abort): Call internal_error.
1064 * errors.h (internal_error, trim_filename): New declarations.
1065
0651fbc0
AO
10662001-02-24 Alexandre Oliva <aoliva@redhat.com>
1067
1068 * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Reverted
1069 2000-08-26's patch.
1070 (EXTRA_CONSTRAINT): Formatting changes.
1071
5ea1bc0e
KG
10722001-02-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1073
1074 * rtl.c (rtl_check_failed_code2): Fix typo in last change.
1075
1aed31b6
PB
10762001-02-23 Per Bothner <per@bothner.com>
1077
1078 * gcc.c (record_temp_file, pfatal_with_name, error): Make non-static,
1079 so they can be called from java/jvspec.c.
1080 * gcc.h (record_temp_file, pfatal_with_name, error): Declare.
1081
4dd2ac2c
JH
1082Sat Feb 24 03:32:50 CET 2001 Jan Hubicka <jh@suse.cz>
1083
1084 * i386.c (ix86_frame): New structure.
1085 (ix86_compute_frame_size): Kill.
1086 (ix86_compute_frame_layout): New.
1087 (ix86_save_reg): New.
1088 (ix86_can_use_return_insn_p): Use frame layout stuff.
1089 (ix86_expand_prologue): Likewise.
1090 (ix86_expand_epilogue): Likewise.
1091 (ix86_initial_elimination_offset): Likewise.
1092 (ix86_nsaved_regs): Use ix86_save_reg.
1093 (ix86_emit_save_regs): Likewise.
1094
a686dbf8
JH
1095Sat Feb 24 03:30:38 CET 2001 Jan Hubicka <jh@suse.cz>
1096
1097 * flow.c (find_sub_basic_blocks): New function.
1098 (split_block): Be ready for basic block introduced by CODE_LABEL.
1099 (commit_one_edge_insertion): Call find_sub_basic_block.
1100
1101 * flow.c (make_edges): Add edge from entry for blocks starting with
1102 label having ALTERNATE_NAME
1103
016030fe
JH
1104Sat Feb 24 03:19:42 CET 2001 Jan Hubicka <jh@suse.cz>
1105
1106 * function.c (epilogue_done): Be ready for first basic block not
1107 containing PROLOGUE_END note.
1108 (reposition_prologue_and_epilogue_notes): Avoid placing
1109 PROLOGUE_END note between BASIC_BLOCK.
1110
c9212f33
JH
1111Sat Feb 24 03:17:09 CET 2001 Jan Hubicka <jh@suse.cz>
1112
1113 * loop.c (canonicalize_condition): Move to reversed_comparison_code.
1114
4f0a3098
DD
11152001-02-21 DJ Delorie <dj@redhat.com>
1116
1117 * config/i960/i960.h (FRAME_POINTER_REQUIRED): Revert removal of
1118 check for current_function_has_nonlocal_goto from 1999-11-12.
1119
e82a84c4
RK
1120Fri Feb 23 15:28:39 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1121
fce687f8
RK
1122 * diagnostic.c (trim_filename): No longer static.
1123 * toplev.h (trim_filename): Declare.
1124 * rtl.c (rtl_check_failed_bounds): Call internal_error.
1125 (rtl_check_failed_type1, rtl_check_failed_type2): Likewise.
1126 (rtl_check_failed_code1, rtl_check_failed_code2): Likewise.
1127 (rtvec_check_failed_bounds): Likewise.
1128 * tree.c (tree_check_failed, tree_class_check_failed): Likewise.
1129
3cc247a8
RK
1130 * convert.c (convert_to_integer): Don't do unsigned unless result or
1131 both inputs are unsigned.
1132
ac50176d
RK
1133 * fold-const.c (fold_convert): Don't call size_int_type_wide if
1134 input overflows.
1135
9b58f739
RK
1136 * c-decl.c (set_block): Set NAMES and BLOCKS from BLOCK.
1137
e82a84c4
RK
1138 * varasm.c (output_constant): Recompute CODE after lang-specific fn.
1139
d5d063d7
JO
11402001-02-23 Jeffrey Oldham <oldham@codesourcery.com>
1141
1142 * Makefile.in (resource.o): Add params.h dependence.
1143 * params.def (MAX_DELAY_SLOT_LIVE_SEARCH): New parameter.
1144 * params.h (MAX_DELAY_SLOT_LIVE_SEARCH): Likewise.
1145 * resource.c: Add dependence on params.h.
1146 (current_live_regs): Fix explanatory comment.
1147 (find_basic_block): Add new parameter to permit limiting search
1148 for a BARRIER.
1149 (mark_target_live_regs): Add new argument to find_basic_block call.
1150 (incr_ticks_for_insn): Likewise.
1151
3d7c9b7e
GDR
11522001-02-23 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
1153
1154 * diagnostic.c (output_to_stream): Rename to
1155 output_buffer_to_stream. Loses the stream parameter.
1156 (init_output_buffer): Set diagnosic_buffer's stream.
1157 (flush_diagnostic_buffer): Adjust.
1158 (default_print_error_function): Likewise.
1159 (finish_diagnostic): Likewise.
1160 (verbatim): Likewise.
1161
1162 * diagnostic.h (struct output_buffer): Add `stream' field.
1163 (output_buffer_attached_stream): New macro.
1164
fba2c0cd
JJ
11652001-02-23 Jakub Jelinek <jakub@redhat.com>
1166
1167 * fold-const.c (extract_muldiv) [case PLUS_EXPR]: If not MULT_EXPR,
1168 check if either operand is divisible by C.
1169 (multiple_of_p): Handle LSHIFT_EXPR with small constant shift.
1170 If type is signed, consider negative numbers as well.
1171
515edc9b
RH
11722001-02-22 Richard Henderson <rth@redhat.com>
1173
1174 * config/ia64/crtbegin.asm (.fini): Use pc-relative relocs to
1175 reach .text instead of gp-relative relocs.
1176 * config/ia64/crtend.asm (.init): Likewise.
1177
3844cd2e
AJ
11782001-02-22 Andreas Jaeger <aj@suse.de>
1179
1180 * extend.texi (C++ Attributes): Fix typo.
1181
3f67ac08
DM
11822001-02-21 David Mosberger <davidm@hpl.hp.com>
1183
1184 * config/ia64/ia64.c (ia64_epilogue_uses): For syscall_linkage
1185 functions, drop current_function_args_info.words test.
1186 (ia64_compute_frame_size): Mark syscall_linkage functions as
1187 using eight input registers.
1188
89647e8a
LR
11892001-02-21 Loren J. Rittle <ljrittle@acm.org>
1190 Bruce Korb <bkorb@gnu.org>
1191
1192 * fixinc/inclhack.def (freebsd_gcc3_breakage): new fix
1193 * fixinc/README: Document how to convert sed substitutions
1194 to format style c_fix-es.
1195 * fixinc/fixincl.x: regen
1196
e889f41a
JO
11972001-02-21 Jeffrey D. Oldham <oldham@codesourcery.com>
1198
1199 * gcc.c: Add comment explaining how to add a command-line option.
1200 Add title to specs language comment.
1201
7521b913
JO
12022001-02-21 Jeffrey Oldham <oldham@codesourcery.com>
1203
1204 * gcc.c (cc1_options): Add "-param".
1205 (DEFAULT_WORD_SWITCH_TAKES_ARG): Likewise.
1206 (option_map): Likewise.
1207 * toplev.c (display_help): Add entry for "--param".
1208 (independent_decode_option): Fix typographical error.
1209
82a127a9
CM
1210Wed Feb 21 18:57:28 CET 2001 Catherine Moore <clm@redhat.com>
1211 Bernd Schmidt <bernds@redhat.com>
1212 Jan Hubicka <jh@suse.cz>
1213
a59b81be 1214 * i386.c (function_arg_advance): Pass SSE arguments in registers.
82a127a9
CM
1215 (function_arg): Likewise.
1216
2b71bf37
JH
1217Wed Feb 21 18:12:41 CET 2001 Jan Hubicka <jh@suse.cz>
1218
1219 * i386.md (mmx_lshrdi3, mmx_ashldi3): Guard by unspec.
1220
eb57ffec
KH
12212001-02-21 Kazu Hirata <kazu@hxi.com>
1222
1223 * config/h8300/h8300.md (iorsi3): Do not output an extra newline
1224 character.
1225 (xorsi3): Likewise.
1226
ccfce8d2
JH
1227Wed Feb 21 17:35:24 CET 2001 Jan Hubicka <jh@suse.cz>
1228
1229 * flow.c (init_propagate_block_info): Canon address and use single_set
1230 for killing dead memory stores.
1231
0443f602
JO
12322001-02-21 Jeffrey Oldham <oldham@codesourcery.com>
1233
1234 * Makefile.in (reorg.o): Add params.h dependence.
1235 * params.def: Fix typographical error in comment.
1236 (MAX_DELAY_SLOT_INSN_SEARCH): New parameter.
1237 * params.h: Modify introductory comment.
1238 (MAX_DELAY_SLOT_INSN_SEARCH): New parameter.
1239 * reorg.c: Add dependence on params.h.
1240 (redundant_insn): Add parameterized throttle for search.
1241 (fill_simple_delay_slots): Add a comment explaining a variable.
1242 Move conditional out of loop, simplifying code.
1243 (fill_eager_delay_slots): Fix typographical error in comment.
1244
7e6d8ba1
AH
12452001-02-20 Aldy Hernandez <aldyh@redhat.com>
1246
a59b81be 1247 * tm.texi (REVERSE_CONDEXEC_PREDICATES_P): New macro documentation.
7e6d8ba1 1248
a59b81be
ZW
1249 * flow.c (ior_reg_cond): Use REVERSE_CONDEXEC_PREDICATES_P macro.
1250 (REVERSE_CONDEXEC_PREDICATES_P): Define macro.
7e6d8ba1 1251
5daf7c0a
JM
12522001-02-21 Jason Merrill <jason@redhat.com>
1253
1254 * tree.h (DECL_UNINLINABLE): Move from C++ frontend.
1255 (struct tree_decl): Add uninlinable bitfield.
1256 * c-decl.c (duplicate_decls): Set it.
1257 * integrate.c (function_cannot_inline_p): Check it.
1258
3844cd2e 1259 * dwarf2out.c (add_name_and_src_coords_attributes): Don't add
5daf7c0a
JM
1260 DW_AT_MIPS_linkage_name to abstract methods.
1261 (dwarf2out_abstract_function): Emit class context before calling
1262 set_decl_abstract_flags. Don't clear DECL_ABSTRACT.
1263 (gen_subprogram_die): Remove obsolete code.
1264 (gen_member_die): Don't include clones in the member list.
1265 (gen_decl_die): Emit abstract info for clone origin.
1266 * dwarfout.c (output_type): Don't include clones in the member list.
1267 * dbxout.c (dbxout_type_methods): Ignore abstract methods.
1268 * toplev.c (note_deferral_of_defined_inline_function): Don't clear
1269 DECL_ABSTRACT on a function that already has it set.
1270
1271 * dwarf2out.c (gen_formal_types_die): Also accept a FUNCTION_DECL.
1272 (get_subprogram_die): Pass it in.
1273
3c88f366
RE
12742001-02-21 Richard Earnshaw <rearnsha@arm.com>
1275
1276 * flow.c (mark_set_1): Make not_dead unsigned long. For
3844cd2e 1277 non-pseudos, use it as a bitmask of the hard regs that
3c88f366
RE
1278 don't die.
1279
373e2177
NB
12802001-02-21 Neil Booth <neil@daikokuya.demon.co.uk>
1281
a59b81be
ZW
1282 * cppfiles.c: Update comments.
1283 (_cpp_read_file): Don't check for NULL filenames any more.
1284 * cppinit.c (cpp_start_read): Don't do canonicalization of
1285 in_fname and out_fname. Use the passed file name exclusively.
1286 (_cpp_handle_options): Don't treat "-" as a command line option,
1287 but as a normal filename.
1288 (_cpp_post_options): Canonicalize in_fname and out_fname.
1289 * cppmain.c (printer_init): Don't check out_fname for NULL.
1290 * c-lex.c (orig_filename): Rename cpp_filename for clarity.
1291 (init_c_lex): Update, and use "" to represent stdin to CPP.
1292 (yyparse): Update.
373e2177 1293
75beacf8 12942001-02-20 Will Cohen <wcohen@redhat.com>
3844cd2e 1295
75beacf8
WC
1296 * config/pa/quadlib.c (_U_Qfcnvfxt_quad_to_usgl): New function.
1297 * config/pa/long_double.h (FIXUNS_TRUNCTFSI2_LIBCALL): Added.
1298 (INIT_TARGET_OPTABS): Use FIXUNS_TRUNCTFSI2_LIBCALL for
1299 fixunstfsi_libfunc.
1300
33011c35
SS
13012001-02-20 Stan Shebs <shebs@apple.com>
1302
1303 * config/rs6000/rs6000.c (output_cbranch): Output branches
1304 on separate lines instead of using ';' to separate.
1305
c740cee2
NB
13062001-02-20 Neil Booth <neil@daikokuya.demon.co.uk>
1307
a59b81be 1308 * cppinit.c (set_lang): Move builtin handling to...
c740cee2
NB
1309 (init_builtins): ...here.
1310 (_cpp_create_reader): Move call to set_lang.
1311
c9407e4c
MM
13122001-02-20 Mark Mitchell <mark@codesourcery.com>
1313
1314 * stmt.c (expand_return): If an attempt is made to return the
1315 error_mar_node, treat the return like a return without a value.
1316
cd5a58e5
ZW
13172001-02-19 Zack Weinberg <zackw@stanford.edu>
1318
1319 * sibcall.c (skip_copy_to_return_value): Call
1320 identify_call_return_value here, and return orig_insn if it
1321 returns zero. Hardret and softret arguments now unnecessary.
1322 (call_ends_block_p): Don't call identify_call_return_value here.
1323
1324 * ggc-common.c (ggc_mark_rtx_children): No need to mark 'S' or
1325 's' slots in RTXen.
1326 * ggc-page.c, ggc-simple.c (ggc_mark_if_gcable): Delete function.
1327 * ggc.h (ggc_mark_if_gcable): Delete prototype.
1328
f8eb41cc
JL
1329Mon Feb 19 20:30:16 2001 Jeffrey A Law (law@cygnus.com)
1330
1331 * pa.c (move_operand): Accept code to load the address of a
1332 symbol out of the DLT as a valid move operand.
1333 (print_operand, case 'A'): New to handle generating a DLT
1334 reference for a LO_SUM expression.
1335 * pa.h (EXTRA_CONSTRAINT): Handle 'A' for DLT LO_SUM references.
1336 * pa.md (movsi, movdi patterns): Allow DLT LO_SUM references.
1337
75393169
JM
13382001-02-19 Joseph S. Myers <jsm28@cam.ac.uk>
1339
1340 * README, cpp.texi, gcc.texi, version.c: Update version number to
1341 3.1.
1342 * cpp.1, gcov.1, gcc.1: Regenerate.
1343
51d0f328
NB
13442001-02-19 Neil Booth <neil@daikokuya.demon.co.uk>
1345
a59b81be
ZW
1346 * cppfiles.c (stack_include_file): Generate dependencies
1347 here, and manage include_count here too.
1348 (PRINT_THIS_DEP): Delete.
1349 (_cpp_execute_include): Do not generate dependencies here,
1350 apart from the case of a missing header. Do not manage
1351 include_count.
1352 (_cpp_read_file): Leave dependency generation to
1353 stack_include_file.
51d0f328 1354
c81460e4
JL
1355Mon Feb 19 10:17:47 2001 Jeffrey A Law (law@cygnus.com)
1356
1357 * config.gcc (hppa*64*-*-hpux11*): Add MASK_GAS to
1358 target_cpu_default. Remove dead assignment to
1359 target_cpu_default.
1360
6df26b8f
JH
1361Mon Feb 19 16:47:39 CET 2001 Jan Hubicka <jh@suse.cz>
1362
1363 * regclass.c (contains_reg_of_mode): Make global.
1364 (init_reg_sets): Remove contains_reg_of_mode; take into account
1365 CLASS_MAX_NREGS when looking for the proper mode.
1366 (dump_regclass): Dump only classes considered for the pseudo.
1367 (regclass): Use contains_reg_of_mode.
1368
4a88a060
JH
1369Mon Feb 19 16:45:42 CET 2001 Jan Hubicka <jh@suse.cz>
1370
1371 * gcc.c (do_spec_1): 'n' for printing notices.
1372 * i386.h (CC1_CPU_SPEC): Notice deprecated options as deprecated.
1373
0eac0e81
JH
1374Mon Feb 19 15:51:30 CET 2001 Jan Hubicka <jh@suse.cz>
1375
1376 * reg-stack.c (next_flags_user): Use current_block->end
1377 (swap_rtx_condition): Look for next user if flags don't die;
1378 give up on CALL_INSNs; use current_block->end.
1379
e5c617ff
RK
1380Mon Feb 19 08:27:21 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1381
1382 * sibcall.c (call_ends_block_p): New function.
1383 (optimize_sibling_and_tail_recursive_call): Use it.
1384
55de49e3
KH
13852001-02-18 Kazu Hirata <kazu@hxi.com>
1386
63a262f1
KH
1387 * config/h8300/h8300.md: Update copyright.
1388 (andsi3): Do not output an extra newline character.
55de49e3 1389
48aba75b
RK
1390Sun Feb 18 15:45:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1391
1392 * toplev.c (note_deferral_of_defined_inlined_function): Argument
1393 FNDECL may be unused.
1394
1395 * toplev.c (rest_of_compilation): Don't have CSE skip blocks or
1396 follow jumps after first run.
1397 If -fexpensive-optimizations rerun CSE after GCSE and iterate until
1398 it doesn't change any jumps.
1399
3335f1d9
JL
1400Sun Feb 18 17:05:50 2001 Jeffrey A Law (law@cygnus.com)
1401
1402 * Makefile.in (rtlanal.o): Depend on hard-reg-set.h.
1403 ($HOST_PREFIX_1)rtlanal.o: Remove rules for building
1404 (mostlyclean): Corresponding changes.
1405 * rtlanal.c (hard-reg-set.h): Include.
1406 (rtx_unstable_p): Do not treat the argument pointer specially
1407 if it is not a fixed register.
1408 (rtx_varies_p, rtx_addr_can_trap_p): Similarly.
1409
651a788e
RK
1410Sun Feb 18 15:45:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1411
021921d0
RK
1412 * sibcall.c (optimize_sibling_and_tail_recursive_call): Compare
1413 against last real insn in basic block.
1414 Rework to avoid gotos.
1415
fb0c0a12
RK
1416 * Makefile.in (gcse.o): Now includes ggc.h.
1417 * gcse.c: Include ggc.h.
1418 (want_to_gcse_p): Verify expression can be in SET as valid insn.
1419 (try_replace_reg): Remove warning of uninitialize variable.
1420 (process_insert_insn): Call invalid_insn_p to validate insn.
1421 * recog.c (insn_invalid_p): Now global.
1422 See if can make valid by adding CLOBBERs of SCRATCH only and do if so.
1423 * recog.h (insn_invalid_p): New declaration.
1424
d659de97
RK
1425 * jump.c (jump_optimize_1): Only define reversed_code #ifdef HAVE_trap.
1426
3ec6f1a9 1427 * config/sparc/sparc.c (eligible_for_epilogue_delay): Don't put
20636516 1428 assignments from FP constants since 'Y' output code can't handle it.
3ec6f1a9
RK
1429 (eligible_for_sibcall_delay): Likewise.
1430
63c499dc
RK
1431 * flow.c (print_rtl_and_abort_fcn): Renamed from print_rtl_and_abort.
1432 Call fancy_abort directly, passing args.
1433 (print_rtl_and_abort): Now a macro, like fancy_abort.
1434
651a788e
RK
1435 * final.c (output_operand_lossage): Use internal_error, not error.
1436
71641c15
RH
14372001-02-18 Shane Nay <shane@agendacomputing.com>
1438
3844cd2e 1439 * mips.c (mips_expand_prologue) Add REG_MAYBE_DEAD to
71641c15
RH
1440 structure shift insns.
1441
14422001-02-18 Mark Mitchell <mark@codesourcery.com>
8fa33dfa
MM
1443
1444 * invoke.texi (-fsquangle): Remove documentation.
1445 (-fname-mangling-version): Likewise.
1446
e1078cfc
LB
14472001-02-18 Lars Brinkhoff <lars@nocrew.org>
1448
1449 * optabs.c (expand_abs): Remove reference to
1450 HAVE_contitional_arithmetic.
1451 * combine.c (simplify_set): Likewise.
1452
3bd24117
RH
14532001-02-18 Richard Henderson <rth@redhat.com>
1454
1455 * ifcvt.c (dead_or_predicable): Don't move code if eh regions
1456 would be disrupted.
1457
5cada064
RH
14582001-02-18 Richard Henderson <rth@redhat.com>
1459
31189758
RH
1460 * config/ns32k/ns32k.h (ADJSP): Upcase arguments.
1461
e491fe9a
RH
1462 * config/alpha/alpha.md (movsi_fix): Fix typo in pattern name.
1463
5cada064
RH
1464 * reload1.c (reload_cse_simplify_set): Fix typo.
1465
751aa7cc
RK
1466Sun Feb 18 09:30:09 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1467
e28a09a4
RK
1468 * diagnostic.c (_fatal_insn): Decrement errorcount.
1469
d0a5eb32
RK
1470 * invoke.texi (-I): Add note avoiding use for system header files.
1471
751aa7cc
RK
1472 * rtl.h (add_clobbers): Remove duplicate declaration.
1473 * recog.h (added_clobbers_hard_reg_p): New declaration.
1474 * genemit.c (struct clobber_pat): New field has_hard_reg.
1475 (gen_insn): Record if added clobbers clobber hard reg.
1476 (gen_split): Avoid unused warning if number of operands is 0.
1477 (output_added_clobbers_hard_reg_p): New function.
1478 (main): Call it.
1479
4096479e
AM
14802001-02-18 Alan Modra <alan@linuxcare.com.au>
1481
3844cd2e
AJ
1482 * pa.c (hppa_expand_prologue): Simplify code storing return
1483 pointer. For large (>=8k) frames with a post_store, adjust stack
1484 pointer by 8k-64 first rather than by 64. When testing with
1485 VAL_14_BITS_P, always use the actual value rather than the value
1486 negated. Add blockage to prevent scheduling of spills before
1487 stack frame has been created.
1488 (hppa_expand_epilogue): Simplify code loading return pointer.
1489 Allow a slightly larger range for merge_sp_adjust_with_load case.
1490 When testing with VAL_14_BITS_P, always use the actual value.
31d68947 1491
4096479e
AM
1492 * pa.c (pa_adjust_insn_length): Check that block move
1493 pattern is a set before looking at operands.
1494
9c2c54dc
MM
14952001-02-17 Mark Mitchell <mark@codesourcery.com>
1496
68626d4f
MM
1497 * fold-const.c (fold_binary_op_with_conditional_arg): New
1498 function, split out from ...
1499 (fold): ... here.
1500 * tree.def (COND_EXPR): Document the use of VOID_TYPE for
1501 conditional arms that throw exceptions.
1502
9c2c54dc
MM
1503 * print-tree.c (print_node): Do not use BLOCK_CHAIN when we're not
1504 looking at a BLOCK.
1505
7afe8c41
KG
15062001-02-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1507
1508 * aclocal.m4 (gcc_AC_CHECK_DECL): Before attempting the test,
1509 define HAVE_DECL_* to 1 to mask potential backup declarations.
1510 * configure: Regenerated.
1511
3747f3dc
MM
15122001-02-17 Mark Mitchell <mark@codesourcery.com>
1513
1514 * invoke.texi (-Woverloaded-virtual): Clarify documentation.
1515
78adc5a0
RH
15162001-02-17 Richard Henderson <rth@redhat.com>
1517
1518 * reload1.c (reload_cse_simplify_set): Respect LOAD_EXTEND_OP
1519 when replacing a memory load with a register.
1520
e2373f95
RK
1521Sat Feb 17 14:48:30 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1522 Jan Hubicka <jh@suse.cz>
1523
1524 * recog.c (validate_replace_src_1): New.
1525 (validate_replace_src_data): Likewise.
1526 (validate_replace_src): Use note_uses.
1527 * rtl.h (note_uses): Declare.
1528 * rtlanal.c (note_uses): New.
1529
b00b2cc2
JH
1530Sat Feb 17 10:52:34 CET 2001 Jan Hubicka <jh@suse.cz>
1531
1532 * reg-stack.c (stack_def): Make field reg unsigned.
1533 (remove_regno_note): Unsignetize parameter.
1534
f5bbdc0c
JS
15352001-02-16 Jes Sorensen <jes@linuxcare.com>
1536
1537 * ia64.c (errata_emit_nops): Add VOIDmode as second argument to
1538 shladd_operand() call.
1539
6ee71e49 15402001-02-16 Bruce Korb <bkorb@gnu.org>
a59b81be 1541 Rodney Brown <RodneyBrown@mynd.com>
6ee71e49
BK
1542
1543 * fixinc/mkfixinc.sh: Use C fixincludes for UnixWare 7.
1544 * fixinc/inclhack.def: Add fixinc.svr4 patterns with matching
1545 machine restrictions
1546 * fixinc/fixincl.x: regen
1547
f85cc4cb
RK
1548Fri Feb 16 12:41:30 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1549
172890a2
RK
1550 * gcse.c (hash_scan_set): If cprop, see if REG_EQUAL or REG_EQUIV.
1551 Don't CSE a nop.
1552 (hash_scan_insn): Clean up calls to hash_scan_set.
1553 (compute_kill_rd): REGNO now unsigned.
1554 (try_replace_reg): Rework to use simplify_replace_rtx.
1555 (cprop_jump, cprop_cc0_jump): Likewise.
1556 (cprop_insn): Call find_reg_equal_equiv_note.
1557 Reflect changes to cprop_jump and cprop_cc0_jump.
1558
d6447708 1559 * recog.c (validate_replace_src): Replace in operands of
b71e8e84
RK
1560 ZERO_EXTRACT in SET_DEST.
1561
f85cc4cb
RK
1562 * cse.c (new_label_ref): New variable.
1563 (insert): Set it instead of recorded_label_ref.
1564 (cse_basic_block): Set recorded_label_ref if new_label_ref use, has
1565 CODE_LABEL for this function, and not already in REG_LABEL note.
1566
f5df2e8c
JO
15672001-02-16 Jeffrey Oldham <oldham@codesourcery.com>
1568
1569 * resource.c (mark_referenced_resources): Fix typo in introductory
1570 comment.
1571 * config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Fix typo in
1572 string constant.
1573
a901fa64
JM
15742001-02-16 Jason Merrill <jason@redhat.com>
1575
1edf43d6
JM
1576 * dwarf2out.c (add_bound_info): Don't crash if SAVE_EXPR_RTL is
1577 NULL.
3844cd2e 1578 (gen_subprogram_die): Don't abort on seeing a second definition if
1edf43d6
JM
1579 the previous one was abstract. Don't replace an abstract instance
1580 in the lookup table.
1581
1582 * dwarf2out.c (dwarf2out_abstract_function): Rename from
1583 gen_abstract_function.
1584 * dwarf2out.h: Declare it.
1585 * toplev.c (note_outlining_of_inline_function): New fn.
1586 * toplev.h: Declare it.
1587 * integrate.c (output_inline_function): Call it.
1588 * c-decl.c (duplicate_decls): Call it when redefining an extern
1589 inline. Don't inline the new defn.
1590
a901fa64
JM
1591 * tree.h (BLOCK_CHAIN): Use BLOCK_CHECK.
1592
cc06d68c
GP
15932001-02-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
1594
1595 * .gdbinit: Rename to gdbinit.in.
3844cd2e 1596 * gdbinit.in: New file,
cc06d68c
GP
1597 * configure.in: Generate .gdbinit from gdbinit.in.
1598 * configure: Regenerated.
1599 * Makefile.in (distclean): Always remove .gdbinit.
1600
4f6bcad0
JJ
16012001-02-16 Jakub Jelinek <jakub@redhat.com>
1602
1603 * objc/objc-act.c (start_class): Register implemented_classes with
1604 GC.
1605
e4a345f8
NB
16062001-02-16 Neil Booth <neil@daikokuya.demon.co.uk>
1607
a59b81be
ZW
1608 * cppfiles.c (_cpp_make_system_header): Generate a file
1609 change callback.
e4a345f8 1610
fd48c9b5 16112001-02-15 Jim Meyering <meyering@lucent.com>
e658449e 1612
fd48c9b5
DD
1613 * Makefile.in (install-common): Don't depend on installdirs here.
1614 Instead, make each of the lang.install-common targets (e.g.,
1615 c++.install-common in cp/Make-lang.in) depend on it.
e658449e
JM
1616 (install-driver): Depend on installdirs.
1617
d64236b4
RK
1618Thu Feb 15 21:30:26 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1619
a8b94b40
RK
1620 * flow.c (tidy_fallthru_edge): Never end block on line number NOTE.
1621
d64236b4
RK
1622 * function.c (assign_parms): Set RTX_UNCHANGING_P in pseudo when we
1623 do in memory.
1624
3af64fd6
MM
16252001-02-15 Mark Mitchell <mark@codesourcery.com>
1626
1627 * invoke.texi (--param): Document.
1628
ba21a8a8
AO
1629Thu Feb 15 15:16:38 2001 Alexandre Oliva <aoliva@redhat.com>
1630
1631 * config/sh/sh.h (BOOL_TYPE_SIZE): Don't define.
1632
ff78d082
JH
1633Thu Feb 15 10:52:31 CET 2001 Jan Hubicka <jh@suse.cz>
1634
1635 * i386.md (extendsfdf2_2): Fix constraints.
1636
2b66da3c
JH
1637Thu Feb 15 09:46:21 CET 2001 Jan Hubicka <jh@suse.cz>
1638
1639 * i386.md (fop_df_3 splitter): Fix operand number.
1640
266da7a2
JH
1641Wed Feb 14 12:37:37 CET 2001 Jan Hubicka <jh@suse.cz>
1642
1643 * invoke.texi (-mreg-alloc): Nuke.
1644 * i386.c (ix86_reg_alloc_order, regs_allocated,
1645 order_regs_for_local_alloc): Nuke.
1646 (override_options): Kill reg_alloc code.
1647 * i386.h (TARGET_OPTIONS): Kill reg-alloc.
1648 (REG_ALLOC_ORDER): SSE goes before I387.
1649 (ORDER_REGS_FOR_LOCAL_ALLOC): Kill.
1650 (ix86_reg_alloc_order): Likewise.
1651 * i386-protos.h (ix86_reg_alloc_order): Kill.
1652
121bc96b
RH
16532001-02-14 Richard Henderson <rth@redhat.com>
1654
1655 * toplev.c (f_options): Clarify -fschedule-insns2 documentation.
1656
04b1a223
JH
1657Wed Feb 14 11:59:58 CET 2001 Jan Hubicka <jh@suse.cz>
1658
1659 * i386.h (RETURN_IN_MEMORY): Fix formating; reject TFmodes
1660
fa79946e
JH
1661Wed Feb 14 11:12:38 CET 2001 Jan Hubicka <jh@suse.cz>
1662
1663 * i386-protos.h (ix86_memory_move_cost): Move offline.
1664 * i386.c (ix86_register_move_cost): Compute properly cost of
1665 SSE, MMX and i387 instructions.
1666 (*_cost): Add costs of SSE/MMX moves.
1667 (ix86_memory_move_cost): Move offline from ....; Likewise.
1668 * i386.h (MEMORY_MOVE_COST): .... here;
1669 (struct processor costs): Add new fields to represent costs
1670 of SSE/MMX moves.
1671
6836e024
JH
1672Wed Feb 14 10:08:26 CET 2001 Jan Hubicka <jh@suse.cz>
1673
1674 * regclass.c (init_reg_sets_1): Reinstall the optimization of
1675 move_cost together with Matt Kraai's fix.
1676
d3fb92b8
JO
16772001-02-14 Jeffrey Oldham <oldham@codesourcery.com>
1678
1679 * Makefile.in (OBJS): Add params.o.
1680
8e0b124e
RH
16812001-02-14 Richard Henderson <rth@redhat.com>
1682 DJ Delorie <dj@redhat.com>
1683
1684 * jump.c (jump_optimize_1): When we delete a conditional jump
1685 preceeding a non-conditional jump to effectively the same place,
1686 make sure that the combined jump skips any clobber insns between
1687 the two labels.
1688
55bd9f24
JO
16892001-02-14 Jeffrey Oldham <oldham@codesourcery.com>
1690
1691 * gcc.c (do_spec_1): Fix off-by-one error for '%M' case.
1692
c6d9a88c
MM
16932001-02-14 Mark Mitchell <mark@codesourcery.com>
1694
1695 * Makefile.in (toplev.o): Depend on params.h.
1696 (intergate.o): Likewise.
1697 (params.o): New target.
1698 * flags.h (inline_max_insns): Remove.
1699 * integrate.c: Include params.h.
1700 Use MAX_INLINE_INSNS instead of inline_max_insns.
1701 * params.c: New file.
1702 * params.h: Likewise.
1703 * params.def: Likewise.
1704 * toplev.c: Include params.h.
1705 (lang_independent_params): New variable.
3844cd2e 1706 (decode_f_option): Use the param machinery instead of setting
c6d9a88c
MM
1707 max_inline_insns.
1708 (independent_decode_option): Handle "--param name=value".
1709 (main): Register language-independent parameters.
1710
c6e95f34
JH
1711Wed Feb 14 11:13:45 CET 2001 Jan Hubicka <jh@suse.cz>
1712
1713 * i386.md (pushsf, pushdf_nointeger): Fix constraint.
1714
c7c0ae3d
RH
17152001-02-14 Richard Henderson <rth@redhat.com>
1716
1717 * regclass.c (init_reg_sets_1): Revert last two changes.
1718
fe375cf1
JJ
17192001-02-14 Jakub Jelinek <jakub@redhat.com>
1720
1721 * stor-layout.c (is_pending_size, put_pending_size): New functions.
1722 (variable_size): Call put_pending_size.
1723 * tree.h (is_pending_size, put_pending_size): Add prototypes.
1724 * fold-const.c (extract_muldiv): If SAVE_EXPR is on the pending
1725 sizes list, put newly created SAVE_EXPR there as well.
1726
17272001-02-14 Jakub Jelinek <jakub@redhat.com>
1728
1729 * config/ia64/ia64.c (last_group): Only 2 entries are needed.
1730 (errata_find_address_regs): load_group has only 2 entries.
1731 (errata_emit_nops): Likewise. shladd is not problematic.
1732 Clear last_group if nop was emitted.
1733 (fixup_errata): load_group has only 2 entries.
1734 Optimize.
1735
7065e130
NB
17362001-02-14 Neil Booth <neil@daikokuya.demon.co.uk>
1737
fe375cf1
JJ
1738 * c-lex.c (lex_number): Only warn traditionally for U suffix
1739 outside system macros.
1740 * cppexp.c (parse_number): Similarly.
1741 * cpplib.h (NODE_SYSHDR, cpp_sys_objmacro_p): New.
1742 * cppmacro.c (struct cpp_macro): New member node.
1743 (parse_args): Only warn about missing rest args if not
1744 a system macro.
1745 (funlike_invocation_p): Similarly for uninvoked funlike macros.
1746 (cpp_sys_objmacro_p): New.
1747 (_cpp_create_definition): Store the node with the macro defn.
1748 Remember if the macro is defined in a system header.
7065e130 1749
cbc59f01
DD
17502001-02-13 DJ Delorie <dj@redhat.com>
1751
1752 * configure.in (check_languages): determine languages to check
1753 * Makefile.in (check-c++): alias for check-g++
1754 (check-f77): alias for check-g77
1755 (CHECK_TARGETS): depend on configured languages
1756
ca9a9b12
JH
1757Wed Feb 14 01:13:59 CET 2001 Jan Hubicka <jh@suse.cz>
1758
1759 * i386.md (fixsfsi2, fixdfdi2): Fix previous patch again.
1760 (sqrtsf2): Use TARGET_SSE instead of TARGET_SSE2)
1761 (sqrtsf2 patterns): Use 'x' instead of 'Y'.
1762 (sqrtextendsfdf2): Disable for SSE2.
1763
1764Wed Feb 14 00:19:28 CET 2001 Jan Hubicka <jh@suse.cz>
1765
1766 * i386.md (fixsfsi2, fixdfdi2): Fix previous patch again.
1767 (sqrtsf2): Use TARGET_SSE instead of TARGET_SSE2)
1768 (sqrtsf2 patterns): Use 'x' instead of 'Y'.
1769 (sqrtextendsfdf2): Disable for SSE2.
1770
7093c9ea
JH
1771Wed Feb 14 00:11:20 CET 2001 Jan Hubicka <jh@suse.cz>
1772
1773 * i386.md (movsfcc_1): Support integer cmove instruction.
1774 (movdfcc_1): Likewise; new splitter.
1775
0644b628
JH
1776Tue Feb 13 23:19:27 CET 2001 Jan Hubicka <jh@suse.cz>
1777
1778 * i386.c (output_fp_compare): Support SSE.
1779 (prepare_fp_compare_args): SSE comparisons always support memory.
1780 * i386.h (TARGET_CMOVE): SSE imply cmove.
1781 * i386.md (cmp?f2): Enable for SSE too.
1782 (cmpfp_i*): Support SSE.
1783 (cmpfp_i_sse): New.
1784 (cmpfp_i_sse_only): New.
1785 (s*, b* fp expanters): Enable for SSE too.
1786 (fp_jcc_1_sse, fp_jcc_1_sse_only, fp_jcc_2_sse, fp_jcc_2_sse_only):
1787 New patterns.
1788
1464632b
JH
1789Tue Feb 13 23:05:42 CET 2001 Jan Hubicka <jh@suse.cz>
1790
a901fa64 1791 * regclass.c (init_reg_sets_1): Silence warning.
1464632b 1792
a8083431
JH
1793Tue Feb 13 22:03:07 CET 2001 Jan Hubicka <jh@suse.cz>
1794
1795 * i386.md (sqrt?f2): Change to expander.
1796 (sqrt?f2_1, sqrt?f2_sse_only, sqrt?f2_i387): New.
1797
d9c695ff
RK
1798Tue Feb 13 15:42:05 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1799
1800 * rtlanal.c (find_reg_equal_equiv_note): New function.
1801 * simplify-rtx.c (simplify_gen_unary, simplify_gen_ternary): New fns.
1802 (simplify_gen_relational, simplify_replace_rtx): Likewise.
1803 * rtl.h: Add declarations for above functions.
1804
848e0190
JH
1805Tue Feb 13 21:09:11 CET 2001 Jan Hubicka <jh@suse.cz>
1806
1807 * cse.c (cse_main): Converts ifdefs on PIC_OFFSET_TABLE_REGNUM to
1808 conditionals.
1809 * defaults.h (PIC_OFFSET_TABLE_REGNUM): Default to INVALID_REGNUM.
1810 * emit-rtl.c (init_emit_once): Convert ifdefs to conditionals.
1811 * flow.c (mark_regs_live_at_end): Likewise.
1812 (calculate_global_regs_live): Likewise.
1813 * gcse.c (compute_hash_table): Likewise.
1814 (compute_kill_rd): Likewise.
1815 * resource.c (mark_target_live_regs): Likewise.
1816 * rtl.h (INVALID_REGNUM): New macro.
1817
b1675dbd
JH
1818Tue Feb 13 20:59:22 CET 2001 Jan Hubicka <jh@suse.cz>
1819
1820 * i386.md (fixsfsi2, fixdfdi2): Fix previous patch.
1821
1698bba1
JH
1822Tue Feb 13 16:32:20 CET 2001 Jan Hubicka <jh@suse.cz>
1823
1824 * i386.md (fixsfsi2, fixdfdi2): Force operand to register
1825 for SSE.
1826
1deaa899
JH
1827Tue Feb 13 14:53:16 CET 2001 Jan Hubicka <jh@suse.cz>
1828
1829 * i386.md (add?f3, sub?f3, mul?f3, dif?f3): Enable for TARGET_SSE(2)
1830 too.
1831 (fop_sf_comm, fop_df_comm, fop_sf_1, fop_df_1): Support SSE.
1832 (fop_sf_comm_sse, fop_df_comm_sse): New patterns.
1833 (fop_sf_1_sse, fop_df_1_sse): New patterns
1834 (fop_*): Disable float_extend and float patterns for SSE compilation.
1835 * i386.c (output_387_binary_op): Support SSE.
1836
42a0aa6f
JH
1837Tue Feb 13 14:16:34 CET 2001 Jan Hubicka <jh@suse.cz>
1838
1839 * i386.md (dummy_extendsfdf2): Support SSE2
1840 (extendsfdf2): Enable if 80387 or SSE2.
1841 (extendsfdf2_1): Support SSE2. Disable if SSE2 is avialble
1842 and no MIX_I387_SSE2
1843 (extendsfdf2_1_sse_only): New pattern.
1844 (truncdfsf2): Enable if SSE2 or 80387; Always use SSE only version
1845 of SSE.
1846 (truncdfsf2_1): Support SSE.
1847 (truncdfsf2_2): Support SSE.
1848 (truncdfsf2_2_1_sse): New pattern.
1849 (fixtruncsfsi2): Always use SSE if available.
1850 (fix_truncsfsi_sse): New pattern.
1851 (fix_truncdfsi_sse): New pattern.
1852 (floatsis?f2): Support SSE.
1853 (floatsidf2_i387): New pattern.
1854 (floatsidf2_sse): Likewise.
1855
8a7199ad
RK
1856Tue Feb 13 07:52:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1857
1ffc5c6e
RK
1858 * configure.in: Use "have_gnat" variable, not "gnat".
1859 * configure: Regenerated.
1860
8a7199ad
RK
1861 * config/sparc/sparc.c (function_value): Treat all non-record
1862 aggregate types like used to treat UNION_TYPE.
1863
446988df
JH
1864Tue Feb 13 13:31:33 CET 2001 Jan Hubicka <jh@suse.cz>
1865
1866 * i386.c (print_reg): Use ANY_FP_REG instead of FP_REG
1867 * i386.h (MASK_128BIT_LONG_DOUBLE): Renumber
1868 (MASK_SSE2): New.
1869 (MASK_MIX_SSE_I387): New.
1870 (TARGET_SSE): SSE2 imply SSE.
1871 (TARGET_SSE2, TARGET_MIX_SSE_I387): New.
1872 (TARGET_SWITCHES): Add "sse2", "mix-sse-i387".
1873 (enum reg_class): Add new classes.
1874 (REG_CLASS_NAMES): Likewise.
1875 (REG_CLASS_CONTENTS): Likewise.
1876 (ANY_FP_REG_P, ANY_FP_REGNO_P, SSE_REG_P, SSE_FLOAT_MODE): New macros.
1877 (REG_CLASS_FROM_LETTER): 'x' and 'y' is SSE_REGS only when SSE is
1878 supported. Add 'Y' to be SSE_REGS when SSE2 is supported.
1879 (CLASS_MAX_NREGS): Use new macros.
1880 (REGISTER_MOVE_COST): Rewrite using SECONDARY_MEMORY_MAYBE_NEEDED.
1881 * i386.md (pushsf, movsf): Support SSE.
1882 (pushdf_nointeger, pushdf_integer, pushdf): Support SSE, update
1883 splitters to use ANY_FP_REGNO_P.
1884 (movdf_nointeger, movdf_integer): Likewise.
1885
42a6ff51
AO
18862001-02-13 Alexandre Oliva <aoliva@redhat.com>
1887
1888 * combine.c (UWIDE_SHIFT_LEFT_BY_BITS_PER_WORD): New macro.
1889 (try_combine): Use it.
1890
f84aa48a
JH
1891Tue Feb 13 11:37:06 CET 2001 Jan Hubicka <jh@suse.cz>
1892
1893 * i386.h (SSE_CLASS_P, MMX_CLASS_P, MAYBE_FLOAT_CLASS_P,
1894 MAYBE_SSE_CLASS_P, MAYBE_MMX_CLASS_P): New macros.
1895 (PREFERRED_RELOAD_CLASS, SECONDARY_MEMORY_NEEDED): Move offline.
1896 (REGISTER_MOVE_COST): Likewise.
1897 * i386-protos.h (ix86_secondary_memory_needed,
1898 ix86_preferred_reload_class, ix86_register_move_cost): Declare.
1899 * i386.c (ix86_secondary_memory_needed,
1900 ix86_preferred_reload_class, ix86_register_move_cost): New function.
1901
a946dd00
JH
1902Die Feb 13 11:04:25 CET 2001 Jan Hubicka <jh@suse.cz>
1903
1904 * i386.h (VALID_FP_MODE_P, VALID_INT_MODE_P): New.
1905 (HARD_REGNO_MODE_OK): Move offline to ....
1906 * i386.c (ix86_hard_regno_mode_ok) ... here;
1907 refuse all incorrect modes.
1908 * i386-protos.h (ix86_hard_regno_mode_ok): Declare.
1909
1b9ea8eb
RH
19102001-02-13 Richard Henderson <rth@redhat.com>
1911
1912 * sparc.md (cmp_cc_arith_op_set): Don't use match_dup on the
1913 entire operator; replicate that and match_dup the operands.
1914 (cmp_ccx_arith_op_set): Likewise.
1915 (cmp_cc_arith_op_not_set): Likewise.
1916 (cmp_ccx_arith_op_not_set): Likewise.
1917
5b0d91c3
AO
19182001-02-13 Alexandre Oliva <aoliva@redhat.com>
1919
1920 * explow.c (trunc_int_for_mode): Sign-extend value to mode.
1921
9a155f91
GK
19222001-02-12 Geoffrey Keating <geoffk@redhat.com>
1923
1924 * config/rs6000/sysv4.h (MASK_NO_BITFIELD_WORD): New macro.
1925 (TARGET_NO_BITFIELD_WORD): New macro.
1926 (SUBTARGET_SWITCHES): Add -mbit-word, -mno-bit-word options.
1927 (BITFIELD_NBYTES_LIMITED): Define based on TARGET_NO_BITFIELD_WORD.
1928
fa49fd0f
RK
1929Mon Feb 12 18:13:26 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1930
1931 * cselib.c: New file, from simplify-rtx.c.
1932 * simplify-rtx.c: Remove cselib parts.
1933 * Makefile.in: Add cselib.o.
1934
c36ae96c
GK
19352001-02-12 Geoffrey Keating <geoffk@redhat.com>
1936
ca5adc63
GK
1937 * config/rs6000/rs6000.c (rs6000_float_const): Remove warning.
1938 (setup_incoming_varargs): Remove warning.
1939
1940 * config/rs6000/rs6000.c (validate_condition_mode): When
1941 flag_fast_math, allow floating-point conditionals to be reversed.
1942 (rs6000_generate_compare): When flag_fast_math, don't generate
1943 cror operations for FP conditionals.
1944
c36ae96c
GK
1945 * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Handle
1946 -mcall-i960.
1947 (ASM_SPEC): Likewise.
1948 (CC1_ENDIAN_LITTLE_SPEC): Likewise.
1949 (CC1_SPEC): Likewise.
1950 (LINK_TARGET_SPEC): Likewise.
1951 (CPP_ENDIAN_SPEC): Likewise.
1952 * Makefile.in (check-consistency): New target.
1953
f43b2795
JM
19542001-02-12 Joseph S. Myers <jsm28@cam.ac.uk>
1955
1956 * c-decl.c (grokdeclarator): In C99 mode, give the more specific
1957 "return type defaults" warning for functions with return type
1958 defaulting to int.
1959 * c-lang.c (c_init): In C99 mode, enable warnings for implicit
1960 function declarations by default rather than only when pedantic.
1961
7004b11b
JH
1962Mon Feb 12 17:28:48 CET 2001 Jan Hubicka <jh@suse.cz>
1963
1964 * regclass.c (init_reg_sets_1): Optimize calculation of move_cost
1965 arrays.
1966
82c18d5c
NS
19672001-02-12 Nathan Sidwell <nathan@codesourcery.com>
1968
1969 * extend.texi (Deprecated): Deprecate new initializer lists.
1970
48ce6bbb
NS
19712001-02-12 Nathan Sidwell <nathan@codesourcery.com>
1972
1973 * mkdeps.c (deps_add_default_target): Robustify. Add
1974 basename component only.
1975 * cpp.texi (-M): Describe how default target is generated.
1976 * invoke.texi (-M): Likewise.
1977
823a9919
KH
19782001-02-12 Kazu Hirata <kazu@hxi.com>
1979
1980 * toplev.c (push_float_handler): Remove.
1981 (pop_float_handler): Remove.
1982 * toplev.h: Remove prototypes for the above functions.
1983
d02b54f6
JJ
19842001-02-12 Jakub Jelinek <jakub@redhat.com>
1985
1986 * c-common.c (constant_fits_type_p): New function.
1987 (convert_and_check): Use it.
1988
b1012f1b
MM
19892001-02-11 Mark Mitchell <mark@codesourcery.com>
1990
1991 * Makefile.in (GXX_ABI_FLAG): Don't define.
1992 * configure.in (--enable-new-gxx-abi): Remove option.
1993 * config.in: Regenerated.
1994 * configure: Likewise.
1995
e8eacc3f
AO
19962001-02-12 Alexandre Oliva <aoliva@redhat.com>
1997
1998 * lcm.c (compute_earliest): Let EXIT_BLOCK be handled as a regular
1999 basic block.
2000 (optimize_mode_switching) [NORMAL_MODE]: Set up EXIT_BLOCK as a
2001 regular basic block, and arrange for all edges into it to switch
2002 to normal mode.
2003
e065341b
GP
20042001-02-11 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2005
2006 * Makefile.in (distclean): Do not remove .gdbinit.
2007
8c310e3f
MM
20082001-02-11 Mark Mitchell <mark@codesourcery.com>
2009
2010 * Makefile.in (gcc.o): Fix typos.
2011 (protize.o): Likewise.
2012 (unprotoize.o): Likewise.
2013
258835c7
RH
20142001-02-11 Richard Henderson <rth@redhat.com>
2015
2016 * tree.c (build1): Check for null operand in last change.
2017
1796dff4
RH
20182001-02-11 Richard Henderson <rth@redhat.com>
2019
2020 * fold-const.c (split_tree): Don't assume a constant isn't splittable.
2021 (fold): Don't assume a constant isn't foldable.
2022 * tree.c (build): Set TREE_CONSTANT for an expression with no
2023 side-effects and constant operands.
2024 (build1): Likewise.
2025
7f437481
RH
20262001-02-10 Richard Henderson <rth@redhat.com>
2027
2028 * jump.c (squeeze_notes): Revert 2000-05-12 change.
2029
3220116f
AG
20302001-02-10 Anthony Green <green@redhat.com>
2031
2032 * cpp.texi (Standard Predefined): Add documentation for
2033 __OPTIMIZE_SIZE__.
2034
2035 * c-common.c (combine_strings): Improve warning message.
2036
36b8ffbe
GK
20372001-02-10 Geoffrey Keating <geoffk@redhat.com>
2038
2039 * config/rs6000/sysv4.h (LINK_TARGET_SPEC): Use two dashes for
2040 --oformat.
2041 * config/rs6000/sysv4le.h (LINK_TARGET_SPEC): Likewise.
2042
ce675456
CF
2043Fri Feb 9 15:05:27 2001 Christopher Faylor <cgf@cygnus.com>
2044
2045 * config/i386/t-cygwin (T_CPPFLAGS): Use correct location for
2046 CYGWIN_CROSS_DIR.
2047
cc0744d1
AO
20482001-02-09 Alexandre Oliva <aoliva@redhat.com>
2049
2050 * config/sh/sh.md (sibcalli, sibcalli_pcrel, sibcalli): Set
2051 fp_mode attribute.
2052
ab51eb25
NC
20532001-02-09 Nick Clifton <nickc@redhat.com>
2054
2055 * config/arm/arm.md: Change output contraint on post inc
2056 load/store multiple patterns to be a read/write contraint.
2057
58e31b83
NB
20582001-02-09 Neil Booth <neil@daikokuya.demon.co.uk>
2059
1b9ea8eb
RH
2060 * gcc.c (cpp_options): Delete .d files on error. Don't delete
2061 .o files when using the -M options.
58e31b83 2062
db9473af 20632001-02-08 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
02a4ec28
FS
2064 David Edelsohn <edelsohn@gnu.org>
2065
2066 * config/rs6000/rs6000.c (output_toc): Allow 32-bit targets to
2067 handle DImode constants. Use one TOC entry for SImode and smaller
2068 constants, aligned properly.
2069
34ce3d7b
JM
20702001-02-08 Jason Merrill <jason@redhat.com>
2071
2072 * config/arm/arm.c (arm_expand_prologue): Do tell the dwarf2 backend
2073 about the SP adjustment for saving the static chain pointer.
2074 * dwarf2out.c (dwarf2out_frame_debug_expr): Use the specified
2075 offset when setting a temporary CFA register.
2076
8da6d80e
CC
20772001-02-08 Chandrakala Chavva <cchavva@redhat.com>
2078
2079 * config.gcc : New targets, i386-*-chorusos*, sparc-*-chorusos*,
2080 powerpc-*-chorusos* .
2081 * config/rs6000/chorus.h : New file.
2082 * config/i386/chorus.h : New file.
2083 * config/sparc/chorus.h : New file.
2084 * config/sparc/t-chorus-elf : New file.
2085
7841642f
DE
20862001-02-08 David Edelsohn <edelsohn@gnu.org>
2087
2088 * config/rs6000/rs6000.h (ASM_OUTPUT_SYMBOL_REF): Move from here ...
2089 * config/rs6000/aix.h (ASM_OUTPUT_SYMBOL_REF): ... to here.
2090 * config/rs6000/aix51.h (CPLUSCPLUS_CPP_SPEC): Define it.
2091 (__WCHAR_TYPE__): Correct macro name.
3844cd2e 2092
6fca22eb
RH
20932001-02-08 Richard Henderson <rth@redhat.com>
2094
2095 * config/i386/i386.c (ix86_frame_pointer_required): New.
2096 (ix86_setup_frame_addresses): New.
2097 (struct machine_funciton): Add accesses_prev_frame.
2098 * config/i386/i386.h (FRAME_POINTER_REQUIRED): Call
2099 ix86_frame_pointer_required.
2100 (SUBTARGET_FRAME_POINTER_REQUIRED): New.
2101 (SETUP_FRAME_ADDRESSES): New.
2102 * config/i386/i386-protos.h: Update.
2103 * config/i386/sco5.h (SUBTARGET_FRAME_POINTER_REQUIRED): Rename
2104 from FRAME_POINTER_REQUIRED.
2105 * config/i386/svr3gas.h: Likewise.
2106 * config/i386/sysv3.h: Likewise.
2107 * config/i386/v3gas.h: Likewise.
2108
0020b823
RH
21092001-02-08 Richard Henderson <rth@redhat.com>
2110
2111 * config/sparc/sparc.c (function_arg_record_value_3): Fix
2112 calculation of the number of integer registers required.
2113 (function_arg_record_value): Likewise.
2114
00a42e21
JM
21152001-02-08 Jason Merrill <jason@redhat.com>
2116
33c4f174
JM
2117 * diagnostic.c (internal_error): Say "confused" after 1 error, not
2118 two. Print file and line with "confused" message.
2119
00a42e21
JM
2120 * dwarf2out.c (dwarf2out_line): Include filename in -dA output.
2121
dd248abd
RK
2122Thu Feb 8 11:21:28 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2123
2124 * rtlanal.c (remove_node_from_expr_list): Correctly update PREV.
2125
04337620
BS
21262001-02-08 Bernd Schmidt <bernds@redhat.com>
2127
2128 * final.c (cleanup_subreg_operands): The address of a MEM can
2129 contain SUBREGs.
2130
0c1cf241
BS
2131 * config/ia64/ia64.c (ia64_variable_issue): Call group_barrier_needed_p
2132 for asms, too.
2133
14baf6b5
JM
21342001-02-08 Joseph S. Myers <jsm28@cam.ac.uk>
2135
2136 * gcc.texi (Incompatibilities): Update documentation of
2137 preprocessing numbers.
2138
1ada4cd0
JJ
21392001-02-07 Jakub Jelinek <jakub@redhat.com>
2140
2141 * c-decl.c (finish_enum): Revert part of 2000-01-05 change.
2142
a9374841
MM
21432001-02-07 Mark Mitchell <mark@codesourcery.com>
2144
830a95f8
MM
2145 * config/rs6000/aix43.h (CPLUSCPLUS_CPP_SPEC): Define it.
2146
a9374841
MM
2147 * defaults.h (CPLUSPLUS_CPP_SPEC): New macro.
2148 * gcc.c (struct compiler): Add cpp_spec field.
2149 (input_file_compiler): New variable.
3844cd2e 2150 (do_spec_1): Allow a particular compiler to handle `%C'
a9374841
MM
2151 specially.
2152 (main): Store the current compiler in input_file_compiler.
2153 * tm.texi (CPLUSPLUS_CPP_SPEC): Document.
3844cd2e 2154
7d4918a2
ZW
21552001-02-07 Zack Weinberg <zack@wolery.stanford.edu>
2156
2157 * cpphash.h (struct spec_nodes): Add n_true and n_false.
2158 * cppinit.c (cpp_create_reader): Initialize them.
2159 (append_include_chain): cxx_aware arg might be unused.
2160 * cppexp.c (lex): In C++ mode, recognize 'true' and 'false'
2161 keywords and give them their phase 7 meaning. Pedwarn about
2162 this unless '__bool_true_false_are_defined' is defined.
2163
09d84e04
AO
21642001-02-07 Alexandre Oliva <aoliva@redhat.com>
2165
2166 * lcm.c (optimize_mode_switching): Emit mode_set before the
2167 JUMP_INSN of an abnormal edge.
2168
bcd7edfe
BS
21692001-02-07 Bernd Schmidt <bernds@redhat.com>
2170
2171 * builtins.c (expand_builtin_setjmp_receiver): Emit an ASM_INPUT as
2172 a scheduling barrier at the end.
2173
4a1d48f6
BS
2174 * tm.texi (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Document.
2175
3dbd1134
AO
21762001-02-07 Alexandre Oliva <aoliva@redhat.com>
2177
c2d10707
AO
2178 * config/sh/sh.md (reload_outsf): Removed.
2179 (movsf_ie): Introduce constraints for FPUL loads and stores.
2180 (reload_insf): Broaden the output constraint.
2181
3dbd1134
AO
2182 * config/elfos.h (INT_ASM_OP): Don't define it if it's already
2183 defined.
2184 * config/sh/sh.h (INT_ASM_OP, ASM_OUTPUT_CONSTRUCTOR,
2185 ASM_OUTPUT_DESTRUCTOR): Copy definitions from config/elfos.h.
2186
8480e480
CC
21872001-02-06 Chandrakala Chavva <cchavva@redhat.com>
2188
8da6d80e 2189 * final.c: Revert my previous changes.
8480e480
CC
2190 * output.h: Make profile_label_no extern.
2191 * config/rs6000/rs6000.c (output_profile_hook): Use standard functions
2192 for generating label.
2193
df447210
LB
21942001-02-06 Laurynas Biveinis <lauras@softhome.net>
2195
2196 * config/i386/djgpp.h: Add comments about standard paths.
2197 (MD_EXEC_PREFIX): Undefine before defining.
2198 (MD_STARTFILE_PREFIX): New.
2199
ca21b4a5
BK
22002001-01-30 Bruce Korb <bkorb@gnu.org>
2201
6fca22eb
RH
2202 fixinc/fixincl.c(process): Emit error message only if appropriate :)
2203 (load_file): do not rely on load_file_data() to close file pointer
2204 fixinc/fixlib.c(load_file_data): do not close passed in file pointer
ca21b4a5
BK
2205 fixinc/inclhack.def(irix_limits_const): add test_text
2206
3c8465d0
NB
22072001-02-06 Neil Booth <neil@daikokuya.demon.co.uk>
2208
6fca22eb
RH
2209 * cppexp.c (parse_defined): Improve diagnostics for invalid
2210 syntax.
3c8465d0 2211
b7a0a5fa
NB
22122001-02-06 Neil Booth <neil@daikokuya.demon.co.uk>
2213
6fca22eb 2214 * cppmacro.c (cpp_get_token): Avoid pasting after a builtin.
b7a0a5fa 2215
28e510bd
MM
22162001-02-06 Mark Mitchell <mark@codesourcery.com>
2217
2218 * config/rs6000/rs6000.h (ASM_OUTPUT_SYMBOL_REF): Define.
2219 * config/rs6000/rs6000-protos.h (rs6000_output_symbol_ref): Declare.
2220 * config/rs6000/rs6000.c (VTABLE_NAME_P): New macro.
2221 (rs6000_output_symbol_ref): New function.
2222 (output_toc): Use VTABLE_NAME_P.
3844cd2e 2223
05bd3d41
RK
2224Tue Feb 6 07:54:51 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2225
df10e9ec
RK
2226 * print-tree.c (print_node, case PARM_DECL):
2227 Print DECL_ARG_TYPE and DECL_ARG_TYPE_AS_WRITTEN.
2228
b5d6a2ff
RK
2229 * stor-layout.c (reference_types_internal): New variable.
2230 (internal_reference_types): New function.
2231 (layout_type, case REFERENCE_TYPE): Make Pmode if internal.
2232 * tree.h (internal_reference_types): New declaration.
2233
05bd3d41
RK
2234 * cse.c (find_best_addr): Fix typo in computing cost.
2235
d1405722
RK
2236Mon Feb 5 21:56:16 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2237
2238 * combine.c (nonzero_bits, case PLUS): If pointers extend unsigned
2239 and this is the sum of a pointer and a constant, we know the result
2240 did not overflow.
2241 (num_sign_bit_copies, case PLUS): Likewise.
2242 * explow.c (convert_memory_address): Remove opposite SUBREG.
2243 * function.c (instantiate_new_reg): New function (from common code).
2244 (instantiate_virtual_regs_1): Call it.
2245 For PLUS, handle if (plus (subreg (virt-reg) (const_int))
2246 if pointers sign- or zero-extend.
2247 * simplify-rtx.c (simplify_unary_operation, case ZERO_EXTEND):
2248 If pointers extend unsigned, use inside of SUBREG.
2249 (simplify_unary_operation, case SIGN_EXTEND): Likewise, if sign extend.
2250
3e897b66
BK
22512001-02-05 Benjamin Kosnik <bkoz@redhat.com>
2252
2253 * Makefile.in (-DGPLUSPLUS_TOOL_INCLUDE_DIR): Change to target
2254 subdir of gcc_gxx_include_dir.
2255 (gcc_gxx_target_include_dir): Remove.
2256
a401107d
JO
22572001-02-05 Jeffrey Oldham <oldham@codesourcery.com>
2258
2259 * dwarf2out.c: Revise DWARF2 Abbreviation Glossary comments.
2260 (dwarf2out_frame_debug_expr): Revise introductory comments to add
2261 a high-level description.
2262
411707f4
CC
22632001-02-05 Chandrakala Chavva <cchavva@redhat.com>
2264
d6706c51 2265 * final.c: Move the declaration of profile_label_no to ...
6fca22eb
RH
2266 * output.h: ... here.
2267 * function.c (expand_function_start): Call PROFILE_HOOK.
2268 * config/rs6000/aix.h: Define PROFILE_HOOK.
2269 * config/rs6000/rs6000-protos.h: output_profile_hook new.
2270 * config/rs6000/rs6000.c (output_profile_hook): Define.
2271 (output_prolog): Do nothing for ABI_AIX as it is taken care by
2272 output_profile_hook.
411707f4
CC
2273 tm.texi : Explain new macro PROFILE_HOOK.
2274
8720914b
HPN
22752001-02-06 Hans-Peter Nilsson <hp@axis.com>
2276
2277 * extend.texi (Extended Asm): Do not say that semicolon is always
2278 a valid line-breaking character for GNU assemblers. Use
2279 newline-tab as the most commonly supported syntax. Use
2280 newline-tab rather than semicolon in multi-insn examples.
2281
56cf87e7
FS
22822001-02-05 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
2283
2284 * Makefile.in (gcc_gxx_target_include_dir): Use $(target_alias).
2285
9638617e 22862001-02-05 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
6fca22eb 2287 David Edelsohn <edelsohn@gnu.org>
9638617e 2288
3844cd2e 2289 * config/rs6000/rs6000.c (rs6000_return_addr): Use PIC
9638617e
FS
2290 code for AIX, even without flag_pic.
2291
2f4e8f2b
JJ
22922001-02-05 Jakub Jelinek <jakub@redhat.com>
2293
2294 * c-typeck.c (common_type): push and pop binding level around
2295 calling common_type on function parameters.
2296
45677496
CF
2297Mon Feb 5 14:30:37 2001 Christopher Faylor <cgf@cygnus.com>
2298
2299 * config/i386/cygwin.h (CPP_SPEC): Add missing space after -idirafter.
2300
789c026d
RK
2301Mon Feb 5 11:23:16 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2302
2303 * config/mips/mips.c (override_options): Fix typo in last change.
e2bbb660
RK
2304 (mips_make_temp_file): Call fatal_io_error, not pfatal_with_name.
2305 (mips_asm_file_end): Likewise; also pass more args to fatal_io_error.
789c026d 2306
9965d119
NS
23072001-02-05 Nathan Sidwell <nathan@codesourcery.com>
2308
2309 * invoke.texi (-fdump-class-layout): Document.
2310 (-fdump-translation-unit): Use `=' as filename separator.
2311
39d6f2e8
MM
23122001-02-05 Mark Mitchell <mark@codesourcery.com>
2313
2314 * Makefile.in (s-mlib): Don't build multilibs if
2315 --disable-multilib.
2316 (DRIVER_DEFINES): Adjust accordingly.
2317 (gcc.o): Likewise.
2318 (protoize.o): Likewise.
2319 (unprotoize.o): Likewise.
2320 * configure.in: Recognize --enable-multilib.
3844cd2e 2321
22fdd65e
MM
23222001-02-04 Mark Mitchell <mark@codesourcery.com>
2323
9f8bf073
MM
2324 * Makefile.in (DRIVER_DEFINES): Fix quoting.
2325
22fdd65e
MM
2326 * Makefile.in (site.exp): Always set HAVE_LIBSTDCXX_V3.
2327 * configure.in: Remove --enable-libstdcxx_v3 support.
2328 * configure: Regenerated.
2329
400500c4
RK
2330Sun Feb 4 15:52:44 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2331
c4636dd1
RK
2332 * config/avr/avr.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP):
2333 Call abort instead of fatal.
2334 (TRAMPOLINE_TEMPLATE): Call internal_error instead of fatal.
2335 * config/dsp16xx/dsp16xx.h (FUNCTION_PROFILER): Likewise.
2336 (FUNCTION_BLOCK_PROFILER, BLOCK_PROFILER): Likewise.
2337 (TRAMPOLINE_TEMPLATE, INITIALIZE_TRAMPOLINE): Likewise.
2338 (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Likewise.
2339 * config/rs6000/rs6000.h (RETURN_ADDRESS_OFFSET): Likewise.
2340
400500c4
RK
2341 * diagnostic.h (set_internal_error_function): Renamed.
2342 * toplev.h (internal_error): Renamed from fatal.
2343 (pfatal_with_name): Deleted.
2344 (fatal_io_error): Now has printf-style arguments.
2345 * diagnostic.c (pfatal_with_name): Deleted.
2346 (fatal_io_error): Rework to have args in printf-style.
2347 (set_internal_error_function): Renamed from set_fatal_function.
2348 (internal_error): Renamed from fatal.
2349 (error_recursion, fancy_abort): Call internal_error instead of fatal.
2350 * dwarf2out.c (get_cfa_from_loc_descr): Likewise.
2351 * emit-rtl.c (gen_realpart, gen_imagpart): Likewise.
2352 * expr.c (check_max_integer_computation_mode, expand_expr): Likewise.
2353 * flow.c (verify_flow_info): Likewise.
2354 * config/arm/arm.c (thumb_unexpanded_epilogue): Likewise.
2355 * config/mips/mips.c (save_restore_insns): Likewise.
2356
2357 * except.c (duplicate_eh_handlers): Call abort instead of fatal.
3844cd2e 2358 * flow.c (verify_flow_info): Likewise.
400500c4
RK
2359 * config/arm/arm.c (thumb_load_double_from_address): Likewise.
2360 * config/avr/avr.c (pttreg_to_str, unique_section): Likewise.
2361 (avr_normalize_condition): Likewise.
2362 * config/c4x/c4x.c (c4x_emit_libcall, c4x_valid_operands): Likewise.
2363 * config/dsp16xx/dsp16xx.c (dsp16xx_reg_class_from_letter): Likewise.
2364 (limit_reload_class, double_reg_to_memory): Likewise.
2365 (print_operand_address, emit_1600_code_shift): Likewise.
2366 (gen_tst_reg, gen_compare_reg): Likewise.
2367 * config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Likewise.
2368 * config/dsp16xx/dsp16xx.c (dsp16xx_invalid_register_for_compare):
2369 Deleted.
2370 * config/dsp16xx/dsp16xx.md (unnamed cmphi): Call abort instead of it.
2371
2372 * c-parse.in (methoddef): Call fatal_error instead of fatal.
2373 * objc/objc-act.c (build_ivar_chain): Likewise.
2374 * dwarfout.c (dwarfout_init): Call fatal_io_error instead of
2375 pfatal_with_name.
2376 * graph.c (clean_graph_dump_file): Likewise.
2377 * profile.c (init_branch_prob): Likewise.
2378 * objc/objc-act.c (objc_init): Likewise.
3844cd2e 2379
400500c4 2380 * config/arm/arm.c (arm_override_options): Make errors non-fatal.
3844cd2e 2381 * config/avr/avr.c (avr_override_options): Likewise.
400500c4
RK
2382 * config/c4x/c4x.c (c4x_expand_prologue): Likewise.
2383 * config/dsp16xx/dsp16xx.c (function_prologue): Likewise.
2384 * config/h8300/h8300.c (h8300_init_once): Likewise.
2385 * config/mips/mips.c (override_options): Likewise.
2386 * config/i386/i386.c (override_options): Likewise, rework.
2387 * config/m68k/m68k.c (override_options): Likewise.
2388
2389 * config/dsp16xx/dsp16xx.c (print_operand): Call output_operand_lossage
2390 instead of fatal.
2391 * config/mips/mips.c (print_operand): Likewise.
2392 * hash.c (hash_allocate): Don't check for failure returns from
2393 obstack functions that can't fail.
2394 (hash_table_init_n, hash_table_init): Likewise; also now return void.
2395 * hash.h (hash_table_init_n, hash_table_init): Now return void.
2396 * objc/objc_act.c (objc_check_decl): Remove unneeded fatal call.
2397 (get_object_reference): Likewise.
2398
eab4abeb
NC
23992001-02-04 Nick Clifton <nickc@redhat.com>
2400
2401 * config/arm/arm.c (all_cores): Add 710T, 720T, 740T, 940T, 9e,
2402 StrongARM1110, 10TDMI, and 1020T.
2403
7ce2fcb9
KG
24042001-02-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2405
2406 * mips.h (MULTILIB_ISA_DEFAULT): Don't use #elif.
2407
b6c02328
AO
24082001-02-04 Alexandre Oliva <aoliva@redhat.com>
2409
2410 * config/sh/sh.md (movdf load split): Pass register number to
2411 FP_OR_XD_REGISTER_P.
2412
1ca894a0
MM
24132001-02-04 Mark Mitchell <mark@codesourcery.com>
2414
2415 * cppinit.c (BC): New macro.
2416 (builtin_array): Add __GXX_WEAK__.
2417 * cpplib.h (builtin_type): Add BT_WEAK.
2418 * cppmacro.c (builtin_macro): Handle BT_WEAK.
2419 * defaults.h (SUPPORTS_ONE_ONLY): Define.
2420 * varasm.c (SUPPORTS_ONE_ONLY): Do not define.
2421
52b357ea
JJ
24222001-02-03 Jakub Jelinek <jakub@redhat.com>
2423
2424 * cppinit.c (append_include_chain): Honor NO_IMPLICIT_EXTERN_C.
2425
269592a8
NB
24262001-02-03 Neil Booth <neil@daikokuya.demon.co.uk>
2427
6fca22eb 2428 * cpphash.h: Rename _ALIGN POOL_ALIGN.
3844cd2e 2429 * cpplex.c (new_chunk, _cpp_pool_reserve): Update.
269592a8 2430
2da6090f
NB
24312001-02-03 Neil Booth <neil@daikokuya.demon.co.uk>
2432
6fca22eb 2433 * cpphash.h: Rename ALIGN _ALIGN.
3844cd2e 2434 * cpplex.c (new_chunk, _cpp_pool_reserve): Update.
2da6090f 2435
4e190cf3
CF
2436Fri Feb 2 23:15:29 2001 Christopher Faylor <cgf@cygnus.com>
2437
2438 * config/i386/cygwin.h (CPP_SPEC): Reorganize YA to better handle cross
2439 compilation environment.
2440 * config/i386/t-cygwin (T_CPPFLAGS): Define CYGWIN_CROSS_DIR to allow
2441 control over location of cygwin includes and libs.
2442
c98f0cdb
MH
24432001-02-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz)
2444
2445 * c4x.h (HARD_REGNO_CALL_PART_CLOBBERED): Fix typo.
2446
39ed8974
LB
24472001-02-02 lars brinkhoff <lars@nocrew.org>
2448
2449 * md.texi (Standard Names): remove reference to spur.md.
2450
0b53f039
MH
24512001-02-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz)
2452
2453 * c4x.h (IS_INT_CALL_SAVED_REG, IS_FLOAT_CALL_SAVED_REG): Define.
2454 (HARD_REGNO_CALL_PART_CLOBBERED): Use IS_FLOAT_CALL_SAVED_REG.
2455 (INITIAL_FRAME_POINTER_OFFSET, INITIAL_ELIMINATION_OFFSET): Likewise.
2456 * c4x.c (c4x_hard_regno_rename_ok): Use IS_XXX_CALL_SAVED_REG.
2457 (c4x_expand_prologue, c4x_expand_epilogue): Likewise.
2458
d001969e
HB
24592001-02-03 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
2460
2461 * c4x.c (group1_reg_operand, group1_mem_operand, arx_reg_operand,
2462 c4x_arn_reg_operand, c4x_arn_mem_operand): Do not check register
2463 number before reload.
2464 (c4x_adjust_cost): Return zero before reload.
2465 * c4x.md (load_immed_address+1, load_immed_address+2): Do not
2466 split before reload.
2467
40eef757
HB
24682001-02-03 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
2469
2470 * c4x.c (c4x_hard_regno_rename_ok): New.
2471 * c4x-protos.h (c4x_hard_regno_rename_ok): New.
2472 * c4x.h (HARD_REGNO_RENAME_OK): Define.
2473
0d6882a0
RK
2474Fri Feb 2 20:03:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2475
2476 * diagnostic.h: Add missing "extern" in all declarations.
2477
362f2295
AS
24782001-02-02 Alex Samuel <samuel@codesourcery.com>
2479
2480 * Makefile.in (gcc_gxx_target_include_dir): Generate dynamically
2481 as for gcc_gxx_include_dir.
2482
da312b55
NB
24832001-02-02 Neil Booth <neil@daikokuya.demon.co.uk>
2484
2485 * cpp.texi, invoke.texi: Update -Wtraditional documentation.
2486
38df95a4
AO
24872001-02-02 Alexandre Oliva <aoliva@redhat.com>
2488
e6dfd05f
AO
2489 * config/sh/sh.c (output_far_jump): Don't use braf on SH1. Emit
2490 label before alignment to be used as the braf base address.
2491 * config/sh/sh.md (length): Use longer lengths for SH1 PIC far
2492 branches.
2493 (casesi_jump_2): Require at least TARGET_SH2.
2494
38df95a4
AO
2495 * config/float-sh.h (LDBL_EPSILON, LDBL_MIN, LDBL_MAX): Prevent
2496 truncation to 32-bit doubles on -m3e and -m4-single-only.
2497
049f6ec9
MM
24982001-02-02 Mark Mitchell <mark@codesourcery.com>
2499
3844cd2e 2500 * gcc.c (init_gcc_specs): New function. Make -shared-libgcc
049f6ec9
MM
2501 the default when building a shared object.
2502 (init_spec): Use it.
2503 * testsuite/lib/g++.exp: Include the directory where libgcc
2504 is located to the LD_LIBRARY_PATH list.
1ca894a0 2505 * invoke.texi (-shared-libgcc): Document the cases in which
049f6ec9 2506 GCC defaults to using the shared libgcc.
3844cd2e 2507
483b9fd0
AO
25082001-02-02 Alexandre Oliva <aoliva@redhat.com>
2509
2510 * config/fp-bit.h (MAX_USI_INT, MAX_SI_INT): Don't assume
2511 unsigned is wide enough.
2512 (BITS_PER_SI): New.
2513 * config/fp-bit.c (_fpmul_parts): Don't assume 32-bits SI.
2514 (si_to_float): Likewise.
2515 (float_to_si, float_to_usi): Use BITS_PER_SI.
2516
770ca8c6
JO
25172001-02-01 Jeffrey Oldham <oldham@codesourcery.com>
2518
2519 * dwarf2out.c: Added explanation of abbreviations.
2520 (def_cfa_1): Added comments listing DWARF2 instructions.
2521 (cfa_temp_reg): Removed in favor of cfa_temp.
2522 (cfa_temp_value): Removed in favor of cfa_temp.
2523 (cfa_temp): New global variable.
2524 (dwarf2out_frame_debug_expr): Added extensive introductory
2525 comments explaining the function's transformations. Revised to
2526 use cfa_temp. Added some rtx checking. Generalize IOR case.
2527 (dwarf2out_frame_debug): Revised to use cfa_temp.
2528 (output_aranges): Cast as "unsigned" to avoid warning.
2529 * rtl.texi (RTX_FRAME_RELATED_P): Revise entry to emphasize better
2530 explain which instructions must be marked.
2531
cad33336
RH
25322001-02-01 Richard Henderson <rth@redhat.com>
2533
2534 * local-alloc.c (update_equiv_regs): Copy INSN_CODE to the
2535 new instruction.
2536
8a5d897f
AO
25372001-02-01 Alexandre Oliva <aoliva@redhat.com>
2538
2539 * config/sh/crt1.asm (main_k): Modified so that start calls
2540 ___setup_argv_and_call_main.
2541
bd969772
NB
25422001-02-01 Neil Booth <neil@daikokuya.demon.co.uk>
2543
6fca22eb
RH
2544 * cpphash.h (struct cpp_buffer): Move saved_flags from cpp_reader.
2545 * cpplex.c (_cpp_lex_token): New token picks up the saved flags,
2546 and AVOID_LPASTE is cleared on meeting an unescaped newline.
2547 * cppmacro.c (builtin_macro): Set builtin flags here.
2548 (paste_all_tokens): Preserve AVOID_LPASTE on pasted token.
2549 (replace_args): Clarify intent.
2550 (cpp_get_token): Macro expansion tokens get the saved flags.
2551 Update.
2552 * cppmain.c (scan_buffer): Remove now-redundant print.printed
2553 check.
bd969772 2554
8c0abc88
JO
25552001-02-01 Jeffrey Oldham <oldham@codesourcery.com>
2556
2557 * config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Reverse change of
2558 2001-Jan-29.
2559
fcbfaa65
RK
2560Thu Feb 1 07:22:41 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2561
d5457140
RK
2562 * builtins.c (expand_builtin_alloca): allocate_dynamic_stack_space
2563 returns Pmode pseudo, but we need ptr_mode.
2564 * explow.c (allocate_dynamic_stack_space): Use plus_constant.
2565 Remove bogus conversions; use HOST_WIDE_INT for size.
2566 Don't use TARGET if wrong mode.
2567
fcbfaa65
RK
2568 * config/i386/i386.c (ix86_compute_frame_size): Allow
2569 stack_alignment_needed to be non-default even if size is zero.
2570
10d17cb7
AM
25712001-01-31 Alan Modra <alan@linuxcare.com.au>
2572
824e7605
AM
2573 * (hppa_init_pic_save): Emit the pic offset table
2574 reg save after last_parm_insn.
2575 * pa.c (hppa_init_pic_save): New function.
2576 * pa.h (hppa_init_pic_save): Declare.
2577 * pa.md (call, call_value, sibcall, sibcall_value): Use
2578 the above instead of duplicated code.
2579
10d17cb7
AM
2580 * pa.c (hppa_encode_label): Correct size of alloca buffer
2581 so we don't overrun it. Correct leading `*' case.
2582 * pa.h (STRIP_NAME_ENCODING): Simplify now that we don't
2583 need to handle `*@'.
2584 (FUNCTION_NAME_P): Likewise.
2585
b9e6ebe9
RH
25862001-01-31 Richard Henderson <rth@redhat.com>
2587
c3e5f9fa
RH
2588 * config.gcc (alpha-osf5): Use float-i128.h.
2589
b9e6ebe9
RH
2590 * config/float-i128.h (FLT_EVAL_METHOD, DECIMAL_DIG): Define.
2591 * config/float-i32.h: Likewise.
2592 * config/float-i64.h: Likewise.
2593 * config/float-sh.h: Likewise.
2594 * config/float-sparc.h: Likewise.
2595
dbac5d0d 25962001-01-31 DJ Delorie <dj@redhat.com>
aac280fb
DD
2597
2598 * expmed.c (extract_bit_field): allow non-integral modes if we
2599 want to extract a whole register from itself.
2600
ce662d4c
JJ
26012001-01-31 Jakub Jelinek <jakub@redhat.com>
2602
2603 * c-typeck.c (set_init_index): If first is equal to last, assume as
2604 if it was not a range at all.
2605
8b1065f1
AO
26062001-01-31 Alexandre Oliva <aoliva@redhat.com>
2607
3cb95a7d 2608 * config/fp-bit.c: Include tm.h.
8b1065f1
AO
2609 (float_to_si): Don't assume SImode is 32-bits wide.
2610 (float_to_usi): Likewise.
2611
0aca1a4f
JM
26122001-01-31 Joseph S. Myers <jsm28@cam.ac.uk>
2613
2614 * c-parse.in (structsp): Pedwarn when "enum foo" refers to an
2615 incomplete type.
2616 (typename): Call pending_xref_error after parsing typed_typespecs.
2617 * c-decl.c (lookup_tag): Give error immediately rather than
2618 leaving it pending if the tag of the wrong type is in the same
2619 binding level.
2620 (xref_tag): Don't pedwarn for forward declarations of enum types
2621 here.
2622 * gcc.texi (Actual Bugs): Remove entry for misuse of struct, union
2623 and enum tags.
2624
92fa350a
AO
26252001-01-31 Alexandre Oliva <aoliva@redhat.com>
2626
2627 * config/float-sparc.h (LDBL_MAX) [sparc32]: Fix typo.
2628
f000294d
NB
26292001-01-31 Neil Booth <neil@daikokuya.demon.co.uk>
2630
6fca22eb
RH
2631 * cpplib.c (T_ELIF): Move to STDC89, not that it matters.
2632 (_cpp_handle_directive): Suggest not using #elif with -Wtraditional.
f000294d 2633
ec1a23e6
NB
26342001-01-31 Neil Booth <neil@daikokuya.demon.co.uk>
2635
6fca22eb
RH
2636 * cpphash.h (struct cpp_reader): New saved_flags.
2637 * cppmacro.c (cpp_get_token): Use saved_flags to remember
2638 to avoid a paste after a pasted token.
3844cd2e 2639
5d0e6486
AO
26402001-01-31 Alexandre Oliva <aoliva@redhat.com>
2641
2642 * libgcc2.h (Wtype_MAX, Wtype_MIN): Define.
2643 * libgcc2.c (__fixunssfSI, __fixunsdfSI, __fixunsxfSI): Use
2644 Wtype_MIN instead of LONG_MIN.
2645
b2321b26
JO
26462001-01-30 Jeffrey Oldham <oldham@codesourcery.com>
2647
2648 * fixinc/fixincl.tpl: Add 2001 to copyright. Change name of
2649 README file.
2650 * fixinc/fixincl.x: Regenerated.
2651 * fixinc/inclhack.def (irix_limits_const): New definition to
2652 convert "const" to "__const" in limits.h.
2653
4989b020
JO
26542001-01-30 Jeffrey Oldham <oldham@codesourcery.com>
2655
2656 * fixinc/genfixes (AG): Fix "autogen4" thinko.
2657
2f33c635
HB
26582001-01-30 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
2659
2660 * regmove.c (try_auto_increment): Change REG_DEAD into REG_UNUSED
2661 when register dies in the insn.
2662
bdda3325
NB
26632001-01-30 Neil Booth <neil@daikokuya.demon.co.uk>
2664
2665 * diagnostic.c (fatal): Fix word wrap.
2666
48b4d901
AO
26672001-01-30 Alexandre Oliva <aoliva@redhat.com>
2668
2669 * combine.c (try_combine): Fix SUBREG setting for
2670 HOST_BITS_PER_WIDE_INT >= 2 * BITS_PER_WORD.
2671
1e738f74
FS
26722001-01-30 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
2673
2674 * jump.c (comparison_dominates_p): Don't try to handle UNKNOWN
2675 comparison codes.
2676
e9770d51
NB
26772001-01-30 Neil Booth <neil@daikokuya.demon.co.uk>
2678
6fca22eb
RH
2679 * c-decl.c (c_expand_body): Check TYPE_SIZE_UNIT (ret_type)
2680 is not NULL.
2681 * toplev.c (decode_W_option): Update warn_larger_than
2682 unconditionally for each processed switch.
e9770d51 2683
d966ae60
JDA
26842001-01-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
2685
2686 * pa.c (pa_init_machine_status): Initialize pic_offset_table_save_rtx
2687 to NULL_RTX.
2688 (hppa_expand_prologue): Delete code to save pic offset table register
2689 in the function prologue.
2690 * pa.h (PIC_OFFSET_TABLE_SAVE_RTX): Correct type in comment.
2691 * pa.md (call, call_value, sibcall, sibcall_value): Save the pic offset
2692 table register at the beginning of the function after the prologue.
2693
f25561bb
LB
26942001-01-29 lars brinkhoff <lars@nocrew.org>
2695
6fca22eb 2696 * tm.texi (PUSH_ROUNDING): Remove duplicate lines.
f25561bb 2697
7ea9fcc6
JDA
26982001-01-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
2699 Jeff Law <law@redhat.com>
2700
2701 * pa.md (return): Revise comment for trivial return.
2702 (return_internal): Non-trivial return pattern for non-PIC code.
2703 (return_internal_pic): Non-trivial return pattern for PIC code.
2704 It uses the PIC register to ensure it is restored after
2705 function calls.
2706 (epilogue): Generate appropriate return for PIC and non-PIC code.
2707
05d9f8b0
CF
2708Mon Jan 29 23:53:14 2001 Christopher Faylor <cgf@cygnus.com>
2709
2710 * config/i386/cygwin.h: Fix -mno-cygwin search path for link.
2711
80c8b1aa
DD
27122001-01-29 DJ Delorie <dj@redhat.com>
2713
2714 * combine.c (if_then_else_cond): Pass the correct mode to
2715 operand_subword() for constants.
2716
f6fc3552
CF
2717Mon Jan 29 20:38:19 2001 Christopher Faylor <cgf@cygnus.com>
2718
2719 * config/i386/cygwin.h: Add w32api to include search. Search different
2720 directories in a cross-build environment.
2721
2b5f2501
RH
27222001-11-29 Tim Josling <tej@melbpc.org.au>
2723
2724 * tree.h (TYPE_STUB_DECL): Add documentation.
2725
27262001-11-29 Laurynas Biveinis <lauras@softhome.net>
1270a9b3
LB
2727
2728 * sdbout.c (sdbout_one_type): Skip types with indeterminate size.
2729 (sdbout_field_types): Likwise. Fix use of host_integerp.
2730
9c7c6e6c
TP
27312001-01-29 Thomas Pfaff <tpfaff@gmx.net>
2732
2733 * mingw32.h: Override STARTFILE_SPEC and LINK_SPEC declared in
2734 cygwin.h.
2735
f1e9980a
JO
27362001-01-29 Jeffrey Oldham <oldham@codesourcery.com>
2737
2738 * config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Revise definition
2739 to use flag_gnu_linker.
2740
766ee681
NB
27412001-01-29 Neil Booth <neil@daikokuya.demon.co.uk>
2742
6fca22eb
RH
2743 * cpplib.c (T_BAD_DIRECTIVE): Remove.
2744 (_cpp_init_stacks): Loop from 0 to N_DIRECTIVES - 1.
766ee681 2745
718b8ea5
JM
27462001-01-29 Joseph S. Myers <jsm28@cam.ac.uk>
2747
2748 * tree.c, tree.h (build_parse_node): Remove; was identical to
2749 build_nt.
2750 * c-lang.c (start_cdtor), objc/objc-act.c
2751 (build_module_descriptor): Use build_nt instead of
2752 build_parse_node.
2753
adc88131
JJ
27542001-01-29 Jakub Jelinek <jakub@redhat.com>
2755
2756 * config/i386/i386.md (addqi_1_lea): Fix mode (QI instead of HI).
2757 (testqi_1, andqi_2): If widening to SImode, make sure CONST_INT does
2758 not have any upper bits set.
2759
42c0c80a
PE
27602001-01-29 Phil Edwards <pme@sources.redhat.com>
2761
2762 * COPYING.LIB: Update to LGPL 2.1 from the FSF.
2763
f2d1f0ba
KG
27642001-01-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2765
2766 * stmt.c (estimate_case_costs): Use integer_minus_one_node.
2767
2768 * tree.c (build_common_tree_nodes_2): Set integer_minus_one_node.
2769
2770 * tree.h (tree_index): Add new element TI_INTEGER_MINUS_ONE.
2771 (integer_minus_one_node): Define.
2772
4f92461a
AO
27732001-01-28 Alexandre Oliva <aoliva@redhat.com>
2774
2775 * Makefile.in (bootstrap2-lean): Fix typo.
2776
26ec42ee
NB
27772001-01-28 Neil Booth <neil@daikokuya.demon.co.uk>
2778
6fca22eb
RH
2779 * cpphash.c (_cpp_cleanup_hashtable, _cpp_lookup_with_hash)
2780 : Don't set fe_value.
3844cd2e 2781 * cpplib.h (AVOID_LPASTE): New flag.
6fca22eb
RH
2782 (struct cpp_hashnode): Remove fe_value.
2783 * cpplex.c (cpp_avoid_paste): Don't paste '.' with a number.
2784 * cppmacro.c (builtin_macro): Don't set flags here.
2785 (replace_args): Set AVOID_LPASTE flag on first token of an
2786 argument, and the token following it.
2787 (cpp_get_token): Set AVOID_LPASTE flag on first token of a
2788 macro expansion, and on the token following it. Do it for
2789 builtins too.
2790 * cppmain.c (scan_buffer): Avoid pasting only flagged tokens.
26ec42ee 2791
0be25992
RH
27922001-01-27 Richard Henderson <rth@redhat.com>
2793
2794 * config/alpha/t-ieee: Remove multilibbing.
2795 (TARGET_LIBGCC2_CFLAGS): Add -mieee.
2796
c913b6f1
KG
27972001-01-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2798
2799 * configure.in: Arrange to include defaults.h in [ht]config.h/tm.h.
2800
2801 * Makefile.in: Remove all dependencies on defaults.h.
2802 * builtins.c: Don't include defaults.h.
2803 * c-common.c: Likewise.
2804 * c-decl.c: Likewise.
2805 * c-pragma.c: Likewise.
2806 * c-typeck.c: Likewise.
2807 * combine.c: Likewise.
2808 * i386.c: Likewise.
2809 * frame-ia64.c: Likewise.
2810 * cppexp.c: Likewise.
2811 * crtstuff.c: Likewise.
2812 * dbxout.c: Likewise.
2813 * dwarf2out.c: Likewise.
2814 * dwarfout.c: Likewise.
2815 * emit-rtl.c: Likewise.
2816 * except.c: Likewise.
2817 * expr.c: Likewise.
2818 * final.c: Likewise.
2819 * frame-dwarf2.c: Likewise.
2820 * libgcc2.c: Likewise.
2821 * optabs.c: Likewise.
2822 * profile.c: Likewise.
2823 * sdbout.c: Likewise.
2824 * toplev.c: Likewise.
2825 * tradcif.y: Likewise.
2826 * tree.c: Likewise.
2827 * varasm.c: Likewise.
2828
013dea40
KG
28292001-01-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2830
2831 * builtins.c (expand_builtin_fputs): Use size_one_node when
2832 transforming into fwrite.
2833
2c5e91d2
JM
28342001-01-27 Joseph S. Myers <jsm28@cam.ac.uk>
2835
2836 * extend.texi (Attribute Syntax): New section.
2837
825ac704
MS
28382001-01-27 Michael Sokolov <msokolov@ivan.Harhan.ORG>
2839
2840 * fixproto: Correctly install synthesised unistd.h and stdlib.h when
2841 they didn't need fixing.
2842
70305f2b
RH
28432001-01-27 Janis Johnson <janis@us.ibm.com>
2844
2845 * config.gcc (i[34567]86-sequent-{ptx4*,sysv4*}): Use usegas.h
2846 if appropriate.
2847 * config/ptx4.h: Several fixes to build on DYNIX/ptx v4.[456], and
2848 to remove macro definitions that are duplicated from elfos.h.
2849
28502001-01-27 Richard Henderson <rth@redhat.com>
2851
2852 * config/i386/sco5gas.h: Move ...
2853 * config/usegas.h: ... here.
2854 * config.gcc (i[34567]86-*-sco3.2v5) [tm_file]: Update.
2855
940ff66d
JJ
28562001-01-27 Jakub Jelinek <jakub@redhat.com>
2857
2858 * c-typeck.c (struct constructor_stack): Add range_stack member.
2859 (really_start_incremental_init): Clear it.
2860 (push_init_level): Save constructor_range_stack and clear it if
2861 pushing explicit braces.
2862 (pop_init_level): abort if constructor_range_stack is non-zero at
2863 explicit closing brace. Restore saved constructor_range_stack if
2864 not implicit.
2865
de1b33dd
AO
28662001-01-27 Alexandre Oliva <aoliva@redhat.com>
2867
2868 * expr.c (emit_move_insn): Add REG_EQUAL note when constant loaded
2869 into register was forced into memory.
2870
3d84f80f
AO
28712001-01-27 Alexandre Oliva <aoliva@redhat.com>
2872
2873 * Makefile.in: Remove uses of + before $(MAKE).
2874
2a2137c4
RH
28752001-01-26 Richard Henderson <rth@redhat.com>
2876
2877 * stmt.c (cost_table): Remove.
2878 (COST_TABLE, cost_table_initialized): New.
2879 (estimate_case_costs): Use the later instead of the former.
2880 (balance_case_nodes): Likewise.
2881
66cce54d
RH
28822001-01-26 Richard Henderson <rth@redhat.com>
2883
2884 * alias.c (objects_must_conflict_p): Read-only slots may not
2885 conflict despite having the same type.
2886
616fde53
MH
28872001-01-27 Michael Hayes <mhayes@redhat.com>
2888
2889 * loop.c (loop_giv_reduce_benefit): Copy mode size into
2890 int variable.
2891 (check_ext_dependant_givs): Initialise u_start_val and
2892 u_end_val.
2893 (load_mems): Make last_max_reg unsigned.
2894 (try_swap_copy_prop): Use INSN_P and initialise set.
2895
b63471e9
DC
2896Fri Jan 26 23:22:58 2001 Denis Chertykov <denisc@overta.ru>
2897
2898 * README.AVR : Removed.
2899
d1ebd58d
JL
2900Fri Jan 26 11:37:26 2001 Jeffrey A Law (law@cygnus.com)
2901
2902 * pa-64.h (text_section): Remove declaration.
2903
2904 * pa.md (return_internal): Remove mode on PIC register use.
2905
a8d1550a
LB
29062001-01-25 lars brinkhoff <lars@nocrew.org>
2907
2908 * tm.texi (DATA_ALIGNMENT, LOCAL_ALIGNMENT, ASM_OPEN_PAREN,
2909 ASM_CLOSE_PAREN): fix typos.
2910
78e0ba39
MM
29112001-01-25 Mark Mitchell <mark@codesourcery.com>
2912
2913 * acconfig.h: Define `const' to the empty string if neither
2914 __STDC__ nor __cplusplus is defined.
2915 * config.in: Regenerated.
2916
05dba9ee
DE
29172001-01-25 David Edelsohn <edelsohn@gnu.org>
2918
2919 * config.gcc (rs6000-ibm-aix[5-9]*): Change to aix51.h.
2920 * collect2.c (main): Delete importf. Add ".obj" file extension.
2921 (GCC_CHECK_HDR): Handle AIX V5 new magic number.
2922 (aix_std_libs): Add additional AIX libraries to skip.
2923 * config/rs6000/aix.h (MY_ISCOFF): Add AIX V5 new magic number.
2924 * config/rs6000/aix51.h: New file.
2925
86e21212
MH
29262001-01-25 Michael Hayes <mhayes@redhat.com>
2927
2928 * loop.c (loop_call_insn_emit_before, loop_call_insn_hoist): New.
2929 (loop_insn_emit_before): No longer static.
2930 (move_movables): Replace emit_insn_after with loop_insn_emit_after.
2931 (loop_givs_rescan, load_mems): Likewise.
2932 (check_dbra_loop): Replace emit_insn_before with loop_insn_emit_before.
2933 (maybe_eliminate_biv_1):
2934 (move_movables): Replace emit_call_insn_before with
2935 loop_call_insn_hoist.
2936 * loop.h (loop_insn_emit_before): Add.
3844cd2e 2937 * unroll.c (copy_loop_body): Replace emit_insn_before with
86e21212
MH
2938 loop_insn_emit_before.
2939
7fa531a6
NB
29402001-01-25 Neil Booth <neil@daikokuya.demon.co.uk>
2941
70305f2b 2942 * diagnostic.c (fatal): Request preprocessed source.
7fa531a6 2943
91239b93
R
2944Thu Jan 25 02:01:16 2001 J"orn Rennecke <amylaar@redhat.com>
2945
2946 * c-decl.c (duplicate_decls): If different_binding_level is nonzero,
2947 olddecl has argument types and newdecl has none, use the argument
2948 types from olddecl.
2949
e57cabac
UD
29502001-01-24 Ulrich Drepper <drepper@redhat.com>
2951
2952 * dwarf2out.c (prefix_of): New function. Determine longest common
2953 prefix of the two arguments. The units are whole path components.
2954 (output_file_names): When adding a new directory find the one entry
2955 with the longest common prefix already in the list. Artificially
2956 generate entry if there is none for this prefix.
2957 Fix test to check whether the zeroth directory entry is used.
2958
304a22dd
R
2959Wed Jan 24 23:51:55 2001 J"orn Rennecke <amylaar@redhat.com>
2960
2961 * reload1.c (reload_reg_free_for_value_p): New parameter start_regno.
2962 Changed all callers. Take it into account when deciding if a
2963 previously loaded value matches.
2964
0a28aef9
RH
29652001-01-24 Richard Henderson <rth@redhat.com>
2966
2967 * reload.c (find_reloads_subreg_address): Fail the substitution
2968 if the resulting address is insufficiently aligned.
2969
1cac8785
DD
29702001-01-24 DJ Delorie <dj@redhat.com>
2971
2972 * combine.c (combine_simplify_rtx): If the modes are all VOIDmode,
2973 check the original operand's mode also.
2974 * simplify-rtx.c (simplify_ternary_operation): Ditto.
2975
cedd825f
JM
29762001-01-24 Joseph S. Myers <jsm28@cam.ac.uk>
2977
2978 * c-parse.in (cast_expr): Move compound literals from here ...
2979 (primary): ... to here. Use standard terminology "compound
2980 literal" instead of "constructor expression".
2981
445c435a
JM
29822001-01-24 Joseph S. Myers <jsm28@cam.ac.uk>
2983
2984 * gcc.1, cpp.1: Regenerate.
2985
4cfc6042
AO
29862001-01-24 Alexandre Oliva <aoliva@redhat.com>
2987
2988 * calls.c (emit_library_call_value_1): Memory slot for
2989 pass-by-reference argument should have the mode of the argument,
2990 not of the pointer to it.
2991
597dba19
TT
29922001-01-24 Tom Tromey <tromey@redhat.com>
2993
2994 * gcc.texi (G++ and GCC): Mention gcj manual.
2995 (Standards): Link to section of manual mentioning gcj/Java
2996 compatibility.
2997
7855db7c
JJ
29982001-01-24 Jakub Jelinek <jakub@redhat.com>
2999
3000 * cppfiles.c (_cpp_read_file): Add to dependencies if requested.
3001 * cppinit.c (cpp_start_read): Remove deps_add_dep call.
3002 * tradcpp.c (main): Add -imacros or -include'd dependencies
3003 for -M*.
3004 * cpp.texi (-M, -MM): Document -M -include behaviour.
3005
6a40fc2b 30062001-01-24 Roger Collins <roger@ProProject.com>
e57cabac 3007
70305f2b 3008 * config/i386/xm-i386.h: Make __i386__ a boolean macro.
6a40fc2b 3009
2f3fdc52
WC
30102001-01-24 Will Cohen <wcohen@redhat.com>
3011
3012 * config/mips/abi64.h (RETURN_IN_MEMORY): Always take into account
3013 whether registers are 32 bits or 64 bits in size.
3014
a941b588
BE
30152001-01-24 Ben Elliston <bje@redhat.com>
3016
3017 * config/m32r/m32r.h (PREDICATE_CODES): Remove m32r_not_same_reg.
3018
64b4ab5a
RH
30192001-01-24 Richard Henderson <rth@redhat.com>
3020
3021 * config/alpha/alpha.md (builtin_longjmp_internal): New.
3022 (builtin_longjmp): Use it instead of emit_indirect_jump.
3023
b0cc7919
JDA
30242001-01-23 John David Anglin <dave@hiauly1.hia.nrc.ca>
3025
3026 * bb-reorder.c (make_reorder_chain_1): Handle case where
3027 jump edge goes to the same block as the fallthru edge.
e57cabac 3028
0024a804
JW
30292001-01-23 Jim Wilson <wilson@redhat.com>
3030
3031 * dwarf2out.c (dwarf2out_line): Make last_file_num be unsigned.
3032 * frame.h (__ia64_personality_v1): Add prototype.
3033 * libgcc2.c (ia64_throw_helper): Change personality declaration to
3034 prototype form. Add void * cast to first argument to personality
3035 call.
3036 * real.c (e113toe): Surround with INTEL_EXTENDED_IEEE_FORMAT ifdefs.
3037 (asctoe113): Likewise.
3038 * config/ia64/frame-ia64.c: Include eh-common.h.
3039 * config/ia64/ia64-protos.h (sdata_section, sbbs_section): Add
3040 prototypes.
3041 * config/ia64/ia64.c (emit_insn_group_barriers): Add ATTRIBUTE_UNUSED
3042 to dump parameter.
3043 (itanium_split_issue): Add prototype.
3044 (gen_nop_type): Ifdef out.
3045 (find_best_packet): Initialize best_packet.
3046 (ia64_encode_section_info): New local string. Use for ggc_alloc_string
3047 result.
3048 * config/ia64/ia64.h (ASM_OUTPUT_LONG_DOUBLE): Use 0L not 0.
3049 * config/ia64/ia64.md (bsp_value): Add explicit stop bit at start.
3050 (flushrs): Add explicit stop bit at end.
3051 * config/ia64/lib1funcs.asm (__ia64_restore_stack_nonlocal): Change
3052 trailing \ to >.
e57cabac 3053
8a1894ac
CD
30542001-01-23 Chris Demetriou <cgd@broadcom.com>
3055
3056 * libgcc-std.ver (GCC_3.0): Add __terminate_func_set to list
3057 of EH symbols.
3058 * libgcc2.c (__terminate_func): Make variable static.
3059 (__terminate_set_func): New function to set __terminate_func.
3060 * libgcc2.h (__terminate_func_ptr): New typedef.
3061 (__terminate_set_func): New function.
3062
240f9c2b
RH
30632001-01-23 Richard Henderson <rth@redhat.com>
3064
3065 * flow.c (init_propagate_block_info): Don't consider unchanging
3066 memories for dead frame store elimination.
3067
fc9f395a
RH
30682001-01-23 Richard Henderson <rth@redhat.com>
3069
3070 * varasm.c (UNIQUE_SECTION): Move default implementation ...
3071 * defaults.h: ... here.
3072
860b3499
MH
30732001-01-24 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
3074
3075 * c4x.h (TARGET_LOAD_DIRECT_MEMS): Define.
3076
955dc84a
NB
30772001-01-23 Neil Booth <neil@daikokuya.demon.co.uk>
3078
70305f2b 3079 * c-lex.c (lex_charconst): Fix typo: s/p/str.
955dc84a 3080
608ab802
FS
30812001-01-23 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
3082
3083 * rs6000.h (rs6000_return_addr): Move prototype from here...
3084 * rs6000-protos.h (rs6000_return_addr): ...to here.
3085 (rs6000_init_expanders): Delete prototype.
3086
371e300b
NC
30872001-01-23 Nick Clifton <nickc@redhat.com>
3088
3089 * invoke.texi: Replace , with \, inside @gccoptlist macros.
3090 (Spec Files): Document %B and %j and %. and %v3 and %M and
3091 %{S*&T} spec switches.
3092
4a1f52a8
HB
30932001-01-24 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
3094
3095 * c4x.c (c4x_r11_set_p): Calculate rtx code correctly.
3096
c933c209
CD
30972001-01-23 Chris Demetriou <cgd@sibyte.com>
3098 Neil Booth <neil@daikokuya.demon.co.uk>
3099
70305f2b
RH
3100 * cpperror.c: Merge handlers of PEDWARN and WARNING.
3101 Have -Werror make pedantic warnings errors, like the
3102 rest of GCC.
c933c209 3103
3fb74b82
PE
31042001-01-23 Phil Edwards <pme@sources.redhat.com>
3105
3106 * c-tree.texi (IDENTIFIER_LENGTH): Fix typo.
3107
96e60f0c
JJ
31082001-01-23 Jakub Jelinek <jakub@redhat.com>
3109
3110 * integrate.h (struct inline_remap): Add compare_src, compare_mode.
3111 * integrate.c (expand_inline_function): Initialize them.
3112 (subst_constants): If changing COMPARE so that both its arguments
3113 will be VOIDmode and the comparison mode will be lost, note
3114 compare_mode. Use the recorded compare_mode to optimize
3115 IF_THEN_ELSE.
3116
3f4907a6
JM
31172001-01-23 Jason Merrill <jason@redhat.com>
3118
3119 * dwarf2out.c (new_die): Use xcalloc.
3120 (output_die): Abort rather than emit a local reference to offset 0.
3121
44f715c8
AH
31222001-01-17 Andrew Haley <aph@redhat.com>
3123
3124 * libgcc2.c (get_reg_addr): Don't abort if we haven't got a copy
3125 of a saved register; return NULL instead.
3126 (copy_reg): Take a pointer to a source register rather than a
3127 frame_state.
3128 (next_stack_level): Remember the address in the stack frame of all
3129 saved registers.
3130 Use the saved register pointer array as the source of the CFA.
3131 (throw_helper): Rewrite. Unwind once rather than twice and keep
3132 track of saved registers as we go.
e57cabac 3133
eb253d90
HB
31342001-01-23 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
3135
3136 * c4x-protos.h (c4x_legitimize_reload_address): Remove.
3137 * c4x.c (c4x_legitimize_reload_address): Remove.
3138 * c4x.h (LEGITIMIZE_RELOAD_ADDRESS): Rewrite to generate correct
3139 reload address for ldp(k) insn.
3140
2caa0ddf
JL
3141Mon Jan 22 20:53:47 2001 Jeffrey A Law (law@cygnus.com)
3142
3143 * pa.md (return_internal): Add a USE of the PIC register to ensure
3144 it is restored after each call.
3145 (return expander): Corresponding changes.
3146
71f123ca
FS
31472001-01-22 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
3148
3149 * rs6000.h (INIT_EXPANDERS): Delete.
3150 (RETURN_ADDR_RTX): Call rs6000_return_addr().
3151 * rs6000.c (rs6000_override_options): Call *_machine_status from
3152 here...
3153 (rs6000_init_expanders): ...instead of here. Delete.
3154 (rs6000_mark_machine_status): New function.
3155 (rs6000_init_machine_status): Use xcalloc.
3156 (rs6000_return_addr): Generate RTX for the return address.
3157 (rs6000_ra_ever_killed): New, check if LR was ever destroyed.
3158 (rs6000_stack_info): Use it.
3159
5dab7f92
TP
31602001-01-22 Thomas Pfaff <tpfaff@gmx.net>
3161
3162 * gthr-win32.h: Include errno.h to get a declaration for
3163 EINVAL and _mingw.h if the target is mingw32.
3164
586964a7
AFV
31652001-01-22 Andres Felipe Vargas <avargas@teletulua.com.co>
3166
3167 * cpp.texi: Correct typos.
3168
f5f5363f
RK
3169Mon Jan 22 13:59:09 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3170
3171 * explow.c (probe_stack_range): Ensure value passed to
3172 stack_check_libfunc is ptr_mode, not Pmode.
3173
44e4159d
R
3174Mon Jan 22 16:53:06 2001 J"orn Rennecke <amylaar@redhat.com>
3175
3176 * recog.c (validate_replace_rtx_1): In ZERO_EXTEND / SIGN_EXTEND
3177 case, don't use operand_subword to calculate a SUBREG that is
3178 wider than a word.
3179
3180 * rtl.texi: Comparisons yield 0 or STORE_FLAG_VALUE.
3181
0bbcfbaf
HB
31822001-01-22 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
3183
3184 * c4x.c (c4x_valid_rptb_p, c4x_label_ref_used_p): New functions.
3185 (c4x_rptb_insert): Call c4x_valid_rptb_p to check if repeat block is
3186 valid. If not replace it by equivalent insns.
3187
5078f5eb
HB
31882001-01-22 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
3189
3190 * c4x.c (c4x_check_legit_addr): Only check CONST. Not if CONST
3191 contains SYMBOL_REF, LABEL_REF and CONST_INT.
3192 (c4x_U_constraint, symbolic_address_operand): Likewise.
3193 (c4x_immed_float_constant): Do not check if CONST_DOUBLE is in
3194 memory.
3195 (c4x_r11_set_p, c4x_check_laj_p): New functions.
3196 * c4x-protos.h (c4x_check_laj_p): Add prototype.
e57cabac 3197 * c4x.md (in_annul_slot_3): Do not allow auto-increment in last
5078f5eb
HB
3198 anulling slot because of silicon bug.
3199 (laj, lajv): Call c4x_check_laj_p to check for silicon bug.
3200
6dc0d164
AM
32012001-01-22 Alan Modra <alan@linuxcare.com.au>
3202
70305f2b
RH
3203 * cppexp.c (parse_charconst): Change `mask' type to agree
3204 with parse_escape.
6dc0d164 3205
c7f0da1d
RH
32062001-01-21 Richard Henderson <rth@redhat.com>
3207
3208 * config/i386/i386.c (ix86_asm_file_end): Disable putting
3209 pic_label_name in a linkonce section.
3210
380a627a
PT
32112001-01-17 Philipp Thomas <pthomas@suse.de>
3212
3213 * aclocal.m4 (AM_WITH_NLS): Add -lintl to LIBS if gettext was
3214 found in libintl.
3215 * configure: Regenerate.
3216
02a65aef
R
3217Sun Jan 21 02:38:56 2001 J"orn Rennecke <amylaar@redhat.com>
3218
3219 * expmed.c (synth_mult, expand_mult_highpart, expand_divmod): Guard
3220 uses of shift_cost, shiftadd_cost and shiftsub_cost with bound checks.
3221
56b871c1
DC
3222Sun Jan 21 09:44:17 2001 Denis Chertykov <denisc@overta.ru>
3223
3224 * config/avr/avr.c (ret_cond_branch): New argument (reverse) added.
3225 If REVERSE nonzero then condition code in X must be reversed.
3226 (encode_section_info): Optimise if/else.
3227 (avr_function_value): Fix formatting.
3228
3229 * config/avr/avr.md (branch): Call to ret_cond_branch changed.
3230 (difficult_branch): Likewise.
3231 (rvbranch): Likewise.
3232 (difficult_rvbranch): Likewise.
3233
3234 * config/avr/avr-protos.h (ret_cond_branch): Prototype changed.
3235
3236 * config/avr/libgcc.S: Fix comment.
3237
04e91ffb
MS
32382001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3239
3240 * sdbout.c (PUT_SDB_DEF): Fix after last bogus change.
3241
3943e756
MS
32422001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3243
3244 * cppinit.c (INO_T_EQ): Don't use #elif, fix formatting.
3245
b3e1e64f
MS
32462001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
3247
3248 * aclocal.m4 (gcc_AC_FUNC_STRSTR): New macro.
3249 * configure.in (gcc_AC_FUNC_STRSTR): Add invokation.
3250 * configure, config.in: Regenerate.
3251 * Makefile.in (STRSTR, HOST_STRSTR, USE_HOST_STRSTR): New variables.
3252 (LIBDEPS, HOST_LIBDEPS, LIBS, HOST_LIBS): Add strstr handling.
3253 (strstr.o, $(HOST_PREFIX_1)strstr.o): New rules.
3254 (doprint.o): New rule.
3255
47f8b473
JM
32562001-01-20 Joseph S. Myers <jsm28@cam.ac.uk>
3257
3258 * c-typeck.c (digest_init): Handle boolean types as scalars.
3259
2954d7db
RK
3260Sat Jan 20 12:46:57 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3261
3262 * stmt.c (expand_return): Don't return anything if size is zero.
3263 Delete redundant assignment to BYTES.
3264 * expr.c (move_block_from_reg): Do nothing if NREGS is zero.
3265
1d26ac96
MM
32662001-01-20 Marek Michalkiewicz <marekm@linux.org.pl>
3267
3268 * config/avr/avr.h (INIT_TARGET_OPTABS): Remove most of it, was
3269 the same as the default library function names.
3270 * config/avr/avr.md: Document special characters after '%'.
3271 (mulqi3, mulhi3, mulsi3): Call libgcc.S functions ourselves,
3272 knowing which of the call-used registers are really clobbered.
3273 (divmodqi4, udivmodqi4, divmodhi4, udivmodhi4, divmodsi4, udivmodsi4):
3274 New. Both quotient and remainder from one libgcc.S call.
3275 * config/avr/libgcc.S: Optimize mul/divmod for the new insns above,
3276 clobber as few registers as possible.
3277 * config/avr/t-avr (LIB1ASMFUNCS): Adjust for the above changes.
3278
673b13e2
NB
32792001-01-20 Neil Booth <neil@daikokuya.demon.co.uk>
3280
70305f2b
RH
3281 * cppmacro.c (funlike_invocation_p): Don't move back up to the
3282 context of the top of the stack.
673b13e2 3283
a42a5f59
ZW
32842001-01-20 Jakub Jelinek <jakub@redhat.com>
3285
3286 * function.c (fixup_var_refs): Move CALL_PLACEHOLDER handling...
3287 (fixup_var_refs_insns): ...here.
3288
a42a5f59
ZW
32892001-01-20 Zack Weinberg <zack@wolery.stanford.edu>
3290
3291 * function.c (fixup_var_refs_insns): Break up into
3292 fixup_var_refs_insn [body of loop], fixup_var_refs_insns
3293 [loop over entire insn list], and fixup_var_refs_insns_with_hash
3294 [loop over hash table entries].
3295 (fixup_var_refs): Adjust calls to fixup_var_refs_insns and/or
3296 fixup_var_refs_insns_with_hash, to match above changes.
3297
03bbd83f
JDA
32982001-01-19 John David Anglin <dave@hiauly1.hia.nrc.ca>
3299
3300 * Makefile.in (ORDINARY_FLAGS_TO_PASS): Add MAKEOVERRIDES variable.
3301 (libgcc.a): Likewise.
3302 (stmp-multilib): Likewise.
3303 (STAGE2_FLAGS_TO_PASS): Likewise.
3304
68c37dc9
AO
33052001-01-19 Alexandre Oliva <aoliva@redhat.com>
3306
3307 * config/sh/sh.c (prepare_move_operands) [PIC]: Use operands[0] as
3308 temporary if no_new_pseudos.
3309
111e0469
NB
33102001-01-19 Neil Booth <neil@daikokuya.demon.co.uk>
3311
a42a5f59 3312 * cppinternals.texi: Update.
111e0469 3313
55cf7bb9
RE
33142001-01-19 Richard Earnshaw <rearnsha@arm.com>
3315
3316 * arm.c (arm_init_builtins): Re-enable builtins.
3317
831ecbd4
RK
3318Fri Jan 19 13:02:56 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3319
7193d1dc
RK
3320 * rtl.texi (SET, CLOBBER): Document PARALLEL as SET_DEST possibility.
3321 * flow.c (mark_set_1, case PARALLEL): Don't require BLKmode, allow
3322 element to be null, and always expect an EXPR_LIST.
3323 * rtlanal.c (reg_overlap_mentioned_p, note_stores): Likewise.
3324 * sched-deps.c (sched_analyze_1): Likewise.
3325 * sched-rgn.c (check_live_1, update_live_1): Likewise.
3326
79b9ec0d
RK
3327 * regclass.c (max_set_parallel): New variable.
3328 (reg_scan): Take it into account in computation of max_parallel.
3329 (reg_scan_mark_refs, case SET): Compute it.
3330
831ecbd4
RK
3331 * alias.c (rtx_equal_for_memref_p, case ADDRESSOF): Don't assume
3332 args are REG.
3333 * expr.c (store_constructor): Don't look at MEM_ALIAS_SET unless MEM.
3334 * function.c (assign_parms): Use INTVAL for a CONST_INT.
3335
cb9e9d8d
JM
33362001-01-19 Jason Merrill <jason@redhat.com>
3337
3338 * dwarf2out.c (gen_subprogram_die): Don't reuse the in-class decl
3339 for the abstract instance of an inline function.
3340
831ecbd4
RK
3341Fri Jan 19 14:31:35 2001 Alexandre Oliva <aoliva@redhat.com>
3342 J"orn Rennecke <amylaar@redhat.com>
61f5625b 3343
20342a6b
AO
3344 * reload1.c (move2add_note_store): Treat all registers directly or
3345 indirectly derived from a base register as members of the same set
3346 of values.
3347 (reload_cse_move2add): Adjust accordingly. Take mode and offset
3348 of base register into account.
61f5625b 3349
61f0131c
R
3350Fri Jan 19 09:18:42 2001 J"orn Rennecke <amylaar@redhat.com>
3351
3352 * alias.c (find_base_value): Recognize TRUNCATE.
3353 (record_set): In PLUS case, invalidate if other summand is also a
3354 base value.
3355
8eeb855e
RK
3356Thu Jan 18 06:43:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3357
831ecbd4 3358 * flow.c (mark_set_1, case PARALLEL): New case; rework to allow
90d036a0
RK
3359 entry to be EXPR_LIST.
3360 * rtlanal.c (reg_overlap_mentioned_p): Allow PARALLEL in SET to
3361 be an EXPR_LIST (but not null, which other code doesn't allow).
3362 (note_stores): Properly handle PARALLEL in SET.
3363 Recursively call for top-level PARALLEL.
3364 * sched-deps.c (sched_analyze_1): Handle EXPR_LIST in PARALLEL in SET.
3365 * sched-rgn.c (check_live_1, update_live_1): Likewise.
3366
8eeb855e
RK
3367 * config.gcc (rs6000-ibm-aix*, rs6000-bull-bosx): Add rs6000/aix.h.
3368
6fe349a9
NB
33692001-01-18 Neil Booth <neil@daikokuya.demon.co.uk>
3370
a42a5f59
ZW
3371 * cpplib.c (_cpp_handle_directive): Use buffer->was_skipping,
3372 not pfile->skipping (== 0).
6fe349a9 3373
988144ce
NC
33742001-01-17 Nick Clifton <nickc@redhat.com>
3375
3376 * config/rs6000/rs6000.c: Add prototypes for {init|free}_
3377 machine_status.
3378
15d3a111
JW
33792001-01-17 Jim Wilson <wilson@redhat.com>
3380
3381 * invoke.texi (IA-64 options): Improve.
3382
2bab2366
TT
33832001-01-17 Tom Tromey <tromey@redhat.com>
3384
3385 * invoke.texi (Optimize Options): Use `{}' to around @samp
3386 argument.
3387
454d0cc7
AH
33882001-01-17 Aldy Hernandez <aldyh@redhat.com>
3389
a42a5f59 3390 * invoke.texi (-fno-guess-branch-probability): New option.
454d0cc7 3391
c7be4f66
RK
3392Wed Jan 17 13:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3393
3394 * combine.c (try_combine): Don't set i3_subst_into_i2 for
3395 case of making new double-word constant.
3396 Revert last change: instead just test i3_subst_into_i2.
3397
5efdd890
JJ
33982001-01-17 Jakub Jelinek <jakub@redhat.com>
3399
3400 * config/i386/i386.md (cmpqi_minus_1): Use {b} for QImode operation.
d70401eb 3401 Use q constraints instead of r.
5efdd890 3402
5dfcd8e1
AM
3403Tue Jan 16 22:23:04 2001 Alan Modra (alan@linuxcare.com.au)
3404
3405 * config/pa/pa.h (PIC_OFFSET_TABLE_REGNUM_SAVED): Remove.
3406 (machine_function): Define.
3407 (PIC_OFFSET_TABLE_SAVE_RTX) : Define.
3408 * config/pa/pa.c (pa_init_machine_status, pa_mark_machine_status,
3409 pa_free_machine_status): New functions.
3410 (override_options): Set {init,mark,free}_machine_status to above.
3411 (hppa_expand_prologue): Use PIC_OFFSET_TABLE_SAVE_RTX instead of
3412 PIC_OFFSET_TABLE_REGNUM_SAVED.
3413 * config/pa/pa.md: Use PIC_OFFSET_TABLE_SAVE_RTX instead of
3414 PIC_OFFSET_TABLE_REGNUM_SAVED throughout.
3415 * config/pa/pa32-regs.h (CONDITIONAL_REGISTER_USAGE): Remove
3416 references to PIC_OFFSET_TABLE_REGNUM_SAVED.
3417 * config/pa/pa64-regs.h (CONDITIONAL_REGISTER_USAGE): Likewise.
3418
ce3b8848
DD
34192001-01-15 DJ Delorie <dj@redhat.com>
3420
3421 * Makefile.in (gcov.1): Protect against texi2pod/pod2man failing.
3422 (cpp.1): Ditto.
3423 (gcc.1): Ditto.
3424
6953fdb4
RK
3425Tue Jan 16 17:20:43 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3426
50e9b3f1
RK
3427 * flow.c (propagate_on_insn): Make trying to delete a prologue
3428 or epilogue insn an ICE, not a warning. Allow doing this if
3429 the current function returns with stack pointer depressed.
3430
6953fdb4
RK
3431 * combine.c (try_combine): If i3_subst_into_i2, properly check for
3432 I3 having more than one SET.
3433
aebf2462
JW
34342001-01-16 Jim Wilson <wilson@redhat.com>
3435
df6194d4
JW
3436 * invoke.texi: Document IA-64 options.
3437
aebf2462
JW
3438 * config/ia64/ia64.c (ia64_print_operand_address): Delete 'B' support.
3439 (fixup_errata): Delete TARGET_A_STEP use.
3440 * config/ia64/ia64.h (MASK_A_STEP, TARGET_A_STEP): Delete.
3441 (TARGET_SWITCHES): Delete -ma-step option.
3442 * config/ia64/ia64.md (all FP patterns): Delete %B0.
3443 (movqicc_astep, movqi_internal_astep, movhicc_astep,
3444 movhi_internal_astep, movsicc_astep, movsi_internal_astep, movdi+1,
3445 movdi_internal_astep, movsfcc_astep, movsf_internal_astep,
3446 movdfcc_astep, movdf_internal_astep, movtfcc_astep,
3447 movtf_internal_astep, cmovdi_internal_astep, cmovsi_internal_astep):
3448 Delete.
3449 (movqi_internal, movhi_internal, movsi_internal, movdi_internal,
3450 movsf_internal, movdf_internal, movtf_internal, cmovdi_internal,
3451 cmovsi_internal): Delete ! TARGET_A_STEP check.
a42a5f59 3452
aebb127a
GP
34532001-01-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3454
3455 * gcc.texi (Bug Lists): Do not mention newsgroups nor the
3456 possibility to report bugs via postal mail. Change a URL and
3457 merge in a nearly duplicate statement...
3458 (Bug Reporting): ...from here.
3459 (Service): Refer to the Bug Reporting section instead of
3460 duplicating an URL.
3461 (Contributing): Remove trivial explanations concerning snapshots.
3462
95f4ac8b
AM
34632001-01-16 Alan Modra <alan@linuxcare.com.au>
3464
a42a5f59 3465 * cppmain.c (general_init): Don't use ANSI prototype.
95f4ac8b 3466
c32ee81e
TT
34672001-01-16 Tom Tromey <tromey@redhat.com>
3468
3469 * gcc.c (cpp_options): Added `*' to specs for -MF, -MQ, and -MT.
3470
2c873473
RH
34712001-01-16 Richard Henderson <rth@redhat.com>
3472
3473 * config/i386/i386.h: Fix comment typo.
3474 * config/i386/i386.md (shift+compare pattern names): s/cmpno/cmp/
3475 (ashr+compare patterns): Match CCGOCmode not CCNOmode.
3476
76e5b312
PE
34772001-01-16 Phil Edwards <pme@sources.redhat.com>
3478
3479 * gcc.c: Revert previous -fsyntax-only-related change; move
20f9202d 3480 to cp/g++spec.c.
76e5b312 3481
b62d22a2
JJ
34822001-01-16 Jakub Jelinek <jakub@redhat.com>
3483
3484 * config/i386/i386.c (fcmov_comparison_operator): Only initialize
3485 inmode after checking GET_CODE (op).
3486
0875baa0
RH
34872001-01-16 Richard Henderson <rth@redhat.com>
3488
3489 * flow.c (struct propagate_block_info): Add mem_set_list_len.
3490 (MAX_MEM_SET_LIST_LEN): New.
3491 (propagate_one_insn): Update mem_set_list_len.
3492 (invalidate_mems_from_autoinc): Likewise.
3493 (invalidate_mems_from_set): Likewise.
3494 (mark_used_regs): Likewise.
3495 (init_propagate_block_info): Likewise. Stop collecting memories
3496 when we reach MAX_MEM_SET_LIST_LEN.
3497 (mark_set_1): Likewise.
3498
c55fa4d6
RH
34992001-01-16 Richard Henderson <rth@redhat.com>
3500
3501 * unroll.c (precondition_loop_p): Fail if no iteration
3502 variable found.
3503
6488ac06
PE
35042001-01-16 Phil Edwards <pme@sources.redhat.com>
3505
3506 * gcc.c: When -fsyntax-only is given, do not complain about
20f9202d 3507 unused libraries.
6488ac06 3508
4cf12e7e
RH
35092001-01-15 Richard Henderson <rth@redhat.com>
3510
3511 * config/i386/i386.c (asm_output_function_prefix): Remove.
3512 (ix86_asm_file_end): New.
3513 (load_pic_register): Generate pic_label_name into a
3514 staticly allocated buffer.
3515 * config/i386/i386-protos.h: Update.
3516 * config/i386/i386.h (ASM_OUTPUT_FUNCTION_PREFIX): Remove.
3517 (ASM_FILE_END): New.
3518 * config/i386/i386afe.h: New file.
3519 * config.gcc (i?86-*-elf) [tm_file]: Use it.
3520 (i?86-*-{freebsd,linux*,moss*}): Likewise.
3521 * config/elfos.h (ASM_FILE_END): Undef before redefinition.
3522 * config/i386/cygwin.h (ASM_FILE_END): Likewise.
3523 * config/i386/osfrose.h (ASM_FILE_END): Invoke ix86_asm_file_end.
3524 * config/i386/sco5.h (ASM_FILE_END): Likewise.
3525 * config/i386/winnt.c (i386_pe_asm_file_end): Likewise.
3526
3f896fc2
JM
35272001-01-15 Joseph S. Myers <jsm28@cam.ac.uk>
3528
ad3b5aff
JM
3529 * Makefile.in (install-man): Remove explicit dependency on
3530 $(srcdir)/gcc.1.
3531
3f896fc2
JM
3532 * configure.in, configure: Revert previous patch requiring perl
3533 5.6.0.
3534
3ff51205
AH
35352001-01-12 Aldy Hernandez <aldyh@redhat.com>
3536
3537 * toplev.c (flag_guess_branch_prob): New.
3538 (f_options): Add guess-branch-probability option.
3539 (rest_of_decl_compilation): Only estimate branch probability if
3540 flag set.
3541 (main): set flag_guess_branch_prob.
3542
3543 * flags.h (flag_guess_branch_prob): New.
3544
b8dea7e0
DD
35452001-01-15 DJ Delorie <dj@redhat.com>
3546
3547 * gcc.texi (Makefile): Add documentation for Makefile targets.
3548
c1163e75
PB
35492001-01-15 Philip Blundell <philb@gnu.org>
3550
3551 * config/arm/arm.c (arm_finalize_pic): New arg "prologue".
3552 (is_pic): Delete.
3553 * config/arm/arm-protos.h (arm_finalize_pic): Update prototype.
3554 (is_pic): Delete declaration.
3cf96b52 3555 * config/arm/arm.h (FINALIZE_PIC): Update call to arm_finalize_pic.
c1163e75 3556 (OUTPUT_INT_ADDR_CONST): Remove special handling of PIC address.
3cf96b52 3557 * config/arm/arm.md (builtin_setjmp_receiver): New.
c1163e75 3558
9b598fa0
RE
35592001-01-15 Richard Earnshaw <rearnsha@arm.com>
3560
3561 * arm.c (use_return_insn): Don't try to determine the function type
3562 until after reload has completed.
3563 (arm_output_epilogue): Don't adjust the sp value recovered from the
3564 stack.
3565 (emit_multi_reg_push): Don't record dwarf information for the pc.
3566 * arm.md (eh_epilogue): The function type may have changed, so it
3567 needs to be recalculated.
a42a5f59 3568 * arm/netbsd.h (DWARF2_UNWIND_INFO): Delete. Can now use dwarf2
9b598fa0
RE
3569 unwind tables on arm/netbsd.
3570
6c98269c
RE
35712001-01-15 Richard Earnshaw <rearnsha@arm.com>
3572
3573 * arm.md (cbranchsi4): Correct calculation of branch ranges.
3574 (negated_cbranchsi4): Likewise.
3575
fa13446b
RE
35762001-01-15 Richard Earnshaw <rearnsha@arm.com>
3577
3578 * config/arm/semi.h (SUBTARGET_EXTRA_SPECS): Define.
3579 (SUBTARGET_EXTRA_ASM_SPEC): Define to empty string.
b3c5b2be
RE
3580 (ASM_SPEC): Call subtarget_extra_asm_spec. Don't
3581 pass -mapcs-* options to assembler.
fa13446b
RE
3582 * config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Define.
3583 (SUBTARGET_EXTRA_ASM_SPEC): Define to empty string.
3584 (ASM_SPEC): Call subtarget_extra_asm_spec.
3585
77ebd435
AJ
35862001-01-15 Andreas Jaeger <aj@suse.de>
3587
a42a5f59 3588 * config/i386/i386.c (ix86_init_builtins): Make i size_t to remove
fa13446b 3589 warnings.
77ebd435
AJ
3590 (ix86_expand_builtin): Likewise.
3591
3592 * gencodes.c (output_predicate_decls): Make i size_t to avoid
3593 warning about comparison between signed and unsigned.
3594
998a298e
GK
35952001-01-14 Geoffrey Keating <geoffk@redhat.com>
3596
3597 * expr.c (do_jump): Treat VOIDmode CONST_DOUBLEs like CONST_INTs.
3598
1b26cad7
RB
35992001-01-14 Ralf Baechle <ralf@gnu.org>
3600
a42a5f59
ZW
3601 * config/mips/linux.h (SUBTARGET_CPP_SPEC): Default ABI is 32; change
3602 SUBTARGET_CPP_SPEC apropriatly.
1b26cad7 3603
e3406b2a
MM
36042001-01-12 Mark Mitchell <mark@codesourcery.com>
3605
3606 * varasm.c (make_decl_rtl): Fix typo in last change.
3607
ea4f1fce
JO
36082001-01-14 Jeffrey Oldham <oldham@codesourcery.com>
3609
3610 * defaults.h (SUPPORTS_INIT_PRIORITY): New macro to indicate the
3611 linker supports the init_priority C++ attribute.
3612 * tm.texi (SUPPORTS_INIT_PRIORITY): Documentation for new macro.
3613 * config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Indicate Irix
3614 linker does not support init_priority C++ attribute.
3615
3e854cf7
R
3616Sun Jan 14 22:31:30 2001 J"orn Rennecke <amylaar@redhat.com>
3617
3618 * Makefile.in (libgcc1-test.o): Depends on stmp-int-hdrs.
3619
400023a3
NB
36202001-01-14 Neil Booth <neil@daikokuya.demon.co.uk>
3621
a42a5f59
ZW
3622 * c-parse.in (finish_parse): Add comment about cpp_destroy.
3623 * cp/lex.c (finish_parse): Similarly.
3624 * cppinit.c (cpp_cleanup): Rename cpp_destroy for clarity.
3625 Return the number of errors encountered.
3626 * cpplib.h (cpp_cleanup): Rename cpp_destroy, return int.
3627 * cppmain.c (main): Don't call cpp_destroy.
400023a3 3628
150d3c00
JM
36292001-01-14 Joseph S. Myers <jsm28@cam.ac.uk>
3630
3631 * configure.in: Require at least perl 5.6.0 to regenerate
3632 manpages.
3633 * configure: Regenerate.
3634
521b9224
RH
36352001-01-14 Richard Henderson <rth@redhat.com>
3636
3637 * genrecog.c (DT_veclen_ge): New.
3638 (add_to_sequence) [MATCH_PARALLEL]: Generate one.
3639 (maybe_both_true_2): Simplify DT_veclen vs DT_veclen_ge.
3640 (nodes_identical_1): Handle DT_veclen_ge.
3641 (write_cond, debug_decision_2): Likewise.
3642
d6c5a763
RE
36432001-01-14 Richard Earnshaw <rearnsha@arm.com>
3644
3645 * arm.md (ldmsi_postinc, ldmsi, stmsi_postinc, smsi): Delete. Replace
3646 with ...
3647 (ldmsi_postinc[432], ldmsi[432], stmsi_postinc[432], stmsi[432]): New.
3648
6de8f7fc
NB
36492001-01-14 Neil Booth <neil@daikokuya.demon.co.uk>
3650
a42a5f59
ZW
3651 * cppmain.c (do_preprocessing): New function; most of the old
3652 main.
3653 (main): Call it to do most of the work.
3654 (cb): Move from global scope to set_callbacks ().
3655 (setup_callbacks): Get the callback pointer.
3656 (general_init, printer_init): Clean up code and comments.
6de8f7fc 3657
17879734
RE
36582001-01-14 Richard Earnshaw <rearnsha@arm.com>
3659
1b26cad7 3660 * config/arm/semi.h (ASM_SPEC): Pass -k to the assembler when
17879734
RE
3661 compiling PIC.
3662
c009a745
KH
36632001-01-14 Kazu Hirata <kazu@hxi.com>
3664
3665 * config/h8300/h8300.c (get_shift_alg): Update comments.
3666
bd0f0717
RK
3667Sun Jan 14 06:20:49 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3668
3669 * ggc-page.c (alloc_annon): Call perror and correctly call exit.
3670 (alloc_page, ggc_alloc): Add casts to remove warnings.
3671
aa6683f7
GK
36722001-01-14 Geoffrey Keating <geoffk@redhat.com>
3673
3674 * combine.c (simplify_comparison): Don't change `code' when
3675 can't reverse comparison.
3676
fce7e199
RH
36772001-01-14 Richard Henderson <rth@redhat.com>
3678
3679 * rtlanal.c (computed_jump_p_1): Rename from jmp_uses_reg_or_mem;
3680 update all call sites. Return true for all non-label constants.
3681
a1b8572c
JH
3682Sun Jan 14 10:09:48 MET 2001 Jan hubicka <jh@suse.cz>
3683
3684 * i386.c (ix86_expand_compare): Add bypass_test and second_test
3685 parameters.
3686 (ix86_expand_branch): Update.
3687 (ix86_expand_setcc): Update to handle multiple test conditions.
3688 (expand_int_movcc): Likewise.
3689 (expand_fp_movcc): Likewise.
3690 * i386-protos.h (ix86_expand_compare): New.
3691 * i386.md (andqi_?_slp, orqi_?_slp): New.
3692 (conditional trap expander): Update call to ix86_expand_compare.
3693
17ad4377
RH
36942001-01-14 Richard Henderson <rth@redhat.com>
3695
3696 * config/vax/vax.md: Use nonimmediate_operand instead of
3697 general_operand in destinations.
3698
5b9b177a
RH
3699 * config/vax/vax.md (indirect_jump): Use register_operand.
3700
264ddbaa
RH
3701 * config/vax/vax.h (RETURN_POPS_ARGS): Max at 255 arguments.
3702 * config/vax/vax.md (call_pop): Turn into an expander.
3703 (call_value_pop): Likewise.
3704 (call, call_value): New.
3705
8752c357
AJ
37062001-01-14 Andreas Jaeger <aj@suse.de>
3707
3708 * config/i386/i386.c (ix86_split_fp_branch): Remove unused
3709 variables.
3710 (ix86_fp_compare_mode): Add unused attribute.
3711 (ix86_expand_fp_movcc): Remove unused variable.
3712 (ix86_expand_builtin): Make fcode unsigned.
3713
3714 * expr.c (MOVE_BY_PIECES_P): Cast MOVE_RATIO to unsigned.
3715 (expand_expr): Add cast to avoid signed warning.
3716 (store_field): Likewise.
3717 (store_constructor_field): Likewise.
3718 (store_constructor): Likewise.
3719 (store_expr): Likewise.
3720 (clear_storage): Likewise.
3721 (emit_group_store): Likewise.
3722 (emit_group_load): Likewise.
3723
1312c143
JM
37242001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
3725
3726 * c-common.c: Move format checking code to ...
3727 * c-format.c: ... here. New file. Reorder some functions and
3728 declarations.
3729 (decl_handle_format_attribute, decl_handle_format_arg_attribute):
3730 New functions.
3731 * c-common.h (decl_handle_format_attribute,
3732 decl_handle_format_arg_attribute): Declare.
3733 * Makefile.in (C_AND_OBJC_OBJS): Add c-format.o.
3734 (c-common.o): Adjust dependencies.
3735 (c-format.o): New list of dependencies.
3736
9e2adb2a
JJ
37372001-01-13 Jakub Jelinek <jakub@redhat.com>
3738
3739 * unroll.c (loop_iterations): If we cannot prove iteration variable
3740 is set once in each iteration, punt.
3741
63eaee71
DC
3742Sun Jan 14 00:23:15 2001 Denis Chertykov <denisc@overta.ru>
3743
3744 * config/avr/avr.md ("strlenhi"): Remove clobber of input address.
3745 (*strlenhi): Remove clobber (which was buggy) of output address.
3746
4bc1997b
JM
37472001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
3748
3749 * Makefile.in (generated-manpages): Add gcc.1
3750 ($(srcdir)/gcc.1): New target.
3751 (maintainer-clean): Delete $(srcdir)/gcc.1.
3752 * gcc.texi: Add macros @gccoptlist and @gol.
3753 * invoke.texi: Include option summary in manpage. Mark up option
3754 summary with @gccoptlist and @gol. Use @r in one place where
3755 appropriate.
3756 * texinfo.tex: Update to version 2000-12-11.07 from ftp.gnu.org.
3757 * gcc.1: Generate from invoke.texi.
3758
130fadbb
RH
37592001-01-13 Richard Henderson <rth@redhat.com>
3760
3761 * ggc-page.c (USING_MALLOC_PAGE_GROUPS): New; set if not using mmap.
3762 (struct page_entry): Add group member.
3763 (struct page_group): New.
3764 (struct globals): Add page_groups member.
3765 (alloc_anon): Only define for using mmap; remove valloc call.
3766 (page_group_index): New.
3767 (set_page_group_in_use): New.
3768 (clear_page_group_in_use): New.
3769 (alloc_page): Implement USING_MALLOC_PAGE_GROUPS.
3770 (free_page, release_pages): Likewise.
3771 * configure.in (with-gc): Default to ggc-page always.
3772
086fef9e
AO
37732001-01-13 Alexandre Oliva <aoliva@redhat.com>
3774
3775 * reload1.c (replace_pseudos_in_call_usage): Use
3776 reg_equiv_constant and reg_equiv_address, and don't try
3777 regno_reg_rtx first.
3778
ca79429a
RH
37792001-01-13 Richard Henderson <rth@redhat.com>
3780
3781 * ggc-page.c (alloc_page): Round up allocation size to one page.
3782 Set e->order on extra pages.
3783
2cec75a1
RH
37842001-01-13 Richard Henderson <rth@redhat.com>
3785
3786 * genrecog.c (nodes_identical): Expand commentary.
3787 (write_switch): Watch out for identical nodes.
3788
d6d52dd6
NB
37892001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
3790
a42a5f59
ZW
3791 * cppfiles.c (_cpp_fake_include): New function.
3792 * cpphash.h (_cpp_fake_include): New.
3793 * cpplib.c (do_line): Call _cpp_fake_include when entering
3794 header files in preprocessed input.
3795 * cppmain.c (cb_pragma_implementation): Remove handling.
d6d52dd6
NB
3796 (setup_callbacks): Don't register pragmas.
3797
ccd96f0a
NB
37982001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
3799
3800 * extend.texi: Udate for CPP.
3801
174fa2c4
AJ
38022001-01-13 Andreas Jaeger <aj@suse.de>
3803
3804 * reload1.c: Add prototype for replace_pseudos_in_call_usage.
3805
3806 * regmove.c: Add prototype for replace_in_call_usage.
3807
8121d2c3
NB
38082001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
3809
a42a5f59
ZW
3810 * cpplib.h (cpp_pool, mi_state, mi_ind, struct cpp_macro,
3811 struct cpp_chunk, struct htab, struct toklist,
3812 struct cpp_context, CPP_STACK_MAX, struct lexer_state,
3813 struct spec_nodes, struct cpp_reader, CPP_OPTION, CPP_BUFFER,
3814 CPP_BUF_LINE, CPP_BUF_COL, CPP_BUF_COLUMN, U, ustrcmp, ustrncmp,
3815 ustrlen, uxstrdup, ustrchr, ufputs): Move to cpphash.h.
3816 (struct macro_args): Delete.
3817 * cpphash.h: See above.
8121d2c3 3818
620ef26c
NB
38192001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
3820
a42a5f59
ZW
3821 * cppmain.c (struct printer): Remove no_line_dirs.
3822 (options, cb): New.
3823 (main, setup_callbacks, scan_buffer, printer_init, cb_define)
3824 : Use options rather than CPP_OPTION.
3825 (setup_callbacks): Use cb rather than pfile->cb.
3826 (main): No need to check for a buffer. Use cpp_errors.
3827 (printer_init): Don't set no_line_dirs.
3828 (maybe_print_line): Use options not no_line_dirs.
3829 (cb_file_change): Don't call print_line if -P.
620ef26c 3830
b61c5ed0
NB
38312001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
3832
a42a5f59
ZW
3833 * c-lex.c (init_c_lex): Use cpp_get_callbacks to set
3834 callbacks.
3835 * c-parse.in (finish_parse): Use cpp_errors.
3836 (__yylex): Use return value of cpp_pop_buffer.
3837 * cp/lex.c (finish_parse): Use cpp_errors.
3838 * cp/spew.c (read_token): Use return value of cpp_pop_buffer.
b61c5ed0 3839
f14269a0
DC
3840Sat Jan 13 16:57:40 2001 Denis Chertykov <denisc@overta.ru>
3841
3842 * README.AVR: URLs corrected.
3843
757e6639
RK
3844Sat Jan 13 07:30:02 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3845
3846 * c-decl.c (start_function): Don't warn if old prototype is builtin
3847 that's not in C's namespace.
3848 * libgcc2.c (_varargs): Update definition of __builtin_saveregs.
3849 (_bb): Add prototype for ctime.
3850 * config/alpha/osf.h (TRANSFER_FROM_TRAMPOLINE): Add missing protos.
3851
9e7adcb3
JH
3852Sat Jan 13 09:53:32 MET 2001 Jan Hubicka <jh@suse.cz>
3853
3854 * i386.c (ix86_fp_comparison_arithmetics_cost,
3855 ix86_fp_comparison_fcomi_cost, ix86_fp_comparison_sahf_cost,
3856 ix86_fp_comparison_cost): New functions.
3857 (ix86_expand_fp_compare): Use the costs to choose best bethod; add
3858 two new parameters SECOND_TEST and BYPASS_TEST; allow generating
3859 two-branch sequences; make static.
3860 (ix86_use_fcomi_compare): Do decision according to the costs.
3861 (split_fp_branch): New.
3862 * i386.md (compare-and-branch patterns): Use split_fp_branch.
3863 * i386-protos.h (ix86_expand_fp_compare): Remove
3864 (ix86_split_fp_branch): Declare.
3865
3866 * i386.h (PREDICATE_CODES): Update codes from fcmov_comparison_operand
3867 and ix86_comparison_operator.
3868
3869 * i386.c (ix86_prepare_fp_compare_args): Try to rearange the comparison
3870 to make it cheaper.
3871
3872 * i386.c (put_condition_code): Output properly the unordered/ordered
3873 compares in fp case.
3874 (ix86_expand_fp_movcc): Use ix86_expand_compare infrastructure.
3875
3876 * tm.texi (REVERSE_CONDITION): Document.
3877 * i386.c (ix86_fp_compare_mode): Simplify; return always CCFPmode
3878 in -ffast-math mode.
3879 * i386.h (REVERSE_CONDITION, REVERSIBLE_CC_MODE): New macro.
3880
35ef2880
AO
38812001-01-13 Alexandre Oliva <aoliva@redhat.com>
3882
89d4bc35
AO
3883 * config/sh/sh.c (sh_expand_epilogue): Use PR explicitly.
3884
b90dbca6
AO
3885 * config/sh/sh.c (sh_expand_prologue): Let the second toggle_sz be
3886 optimized away.
3887
35ef2880
AO
3888 * config/sh/sh.c (mova_p): Fix test for mova_const.
3889
f85c14ee
NB
38902001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
3891
a42a5f59
ZW
3892 * fix-header.c (read_scan_file): Use cpp_get_callbacks and
3893 cpp_get_options rather than dereferencing pfile and using
3894 CPP_OPTION.
3895 * scan-decls.c (scan_decls): Use return value of
3896 cpp_pop_buffer rather than CPP_BUFFER.
174fa2c4 3897
7e96d768
NB
38982001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
3899
a42a5f59
ZW
3900 * cppinit.c (cpp_handle_option): help_only is now part of the
3901 cpp_options structure.
3902 * cpplib.c (cpp_errors, cpp_get_options, cpp_get_callbacks,
3903 cpp_set_callbacks): New functions.
3904 * cpplib.h (cpp_callbacks): Break out as a named structure.
3905 (cpp_options): Move help_only here from cpp_reader.
3906 (CPP_FATAL_ERRORS): Update to use cpp_errors.
3907 (cpp_errors, cpp_get_options, cpp_get_callbacks,
3908 cpp_set_callbacks): New prototypes.
3909 * cppmain.c (main): Update for help_only.
7e96d768 3910
23de1fbf
JM
39112001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
3912
3913 * Makefile.in (info, maintainer-clean, install-info, uninstall):
3914 Also build and remove and install and uninstall c-tree.info and
3915 cppinternals.info.
3916 ($(srcdir)/gcc.info): Add dependency on contrib.texi.
3917 ($(srcdir)/cppinternals.info): New target.
3918 * c-tree.texi: Change file name used when makeinfo used without -o
3919 from ir.info to c-tree.info. Add info directory entry.
3920 * cppinternals.texi: Add info directory entry.
3921 * .cvsignore: Update.
3922
8b6a5902
JJ
39232001-01-12 Jakub Jelinek <jakub@redhat.com>
3924
3925 * c-typeck.c (store_init_value): Don't require constant initializer
3926 elements with -pedantic -std=c99.
3927 (digest_init): Change error about non-constant initializer elements
3928 into pedwarn.
3929 (constructor_range_end): Remove.
3930 (constructor_incremental, designator_depth,
3931 designator_errorneous): New variables.
3932 (struct constructor_stack): Remove range_end, add incremental.
3933 (struct constructor_range_stack, constructor_range_stack): New.
3934 (struct initializer_stack): Add constructor_range_stack.
3935 (finish_init): Set it.
3936 (start_init): Likewise. require_constant_elements for non-static
3937 trees only if not flag_isoc99.
3938 (really_start_incremental_init): Remove constructor_range_end, add
3939 constructor_incremental.
3940 (pop_init_level): Likewise.
3941 (push_init_level): Likewise. If implicit and the subobject had some
3942 value set already, preinitialize the level with it.
3943 Warn about missing braces only if not pushing due to designators.
3944 (set_designator, push_range_stack): New functions.
3945 (set_init_label): Use them.
3946 (set_init_index): Likewise. Remove constructor_range_end.
3947 Error if designator index is outside of array bounds.
3948 (add_pending_init): Compare values of purpose index trees, not the
3949 trees themselves. Allow overwriting of already initialized element.
3950 Issue a warning if it had side-effects.
3951 (set_nonincremental_init, set_nonincremental_init_from_string): New
3952 functions.
3953 (pending_init_member): Rename to...
3954 (find_init_member): ...this function. Call set_nonincremental_init
3955 if necessary. Compare values of purpose index trees, not the trees
3956 themselves. Return the actual value, not just non-zero if something
3957 is found.
3958 (output_init_element): Remove checks for duplicates.
3959 If field has zero size, only check the initializer for correctness.
3960 Call set_nonincremental_init if necessary. Push RECORD/ARRAY into AVL
3961 if constructor_incremental is zero. Change error about initializers
3962 not computable at load time into pedwarn.
3963 (output_pending_init_elements): Compare bit positions, not
3964 FIELD_DECLs to take into account zero-sized fields.
3965 (process_init_element): Use constructor_range_stack to fill all
3966 ranges in the designator lists from current level up.
3967 * extend.texi: Update documentation for labeled elements.
3968
7dd232a8
AO
39692001-01-12 Alexandre Oliva <aoliva@redhat.com>
3970
f474c6f8
AO
3971 * calls.c (emit_library_call_value_1): Add USEs and CLOBBERs
3972 to function usage for arguments passed by reference. Optimize
3973 callee-copied arguments.
ec7c0481 3974 * regmove.c (replace_in_call_usage): New function.
f474c6f8
AO
3975 (fixup_match_1): Call it.
3976 * cse.c (cse_insn): Canonicalize registers in function usage.
3977 * reload1.c (replace_pseudos_in_call_usage): New function.
3978 (reload): Call it.
3979
7dd232a8
AO
3980 * Makefile.in: Reverted yesterday's wrong patch. Installed the
3981 right version.
3982
d0285326
JJ
39832001-01-12 Jakub Jelinek <jakub@redhat.com>
3984
3985 * config/alpha/alpha.c (alpha_expand_block_move): GET_MODE of tmp,
3986 not XEXP (tmp, 0).
3987
770861f3
DD
39882001-01-12 DJ Delorie <dj@redhat.com>
3989
3990 * Makefile.in (bootstrap): rename stages to be mnemonic. Add
3991 restageN, unstageN, bubblestrap, quickstrap, and cleanstrap
3992 targets.
3993
5490d604
JM
39942001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
3995
3996 * cpp.texi, extend.texi, gcc.texi, install.texi, invoke.texi,
3997 tm.texi: Consistently refer to ISO C instead of ANSI C. Refer to
3998 -std options alongside references to -ansi. Update some
3999 documentation for C99.
4000 * cpp.1: Regenerate.
4001
d24b8f53
AJ
40022001-01-12 Andreas Jaeger <aj@suse.de>
4003
14052b68
AJ
4004 * haifa-sched.c (restore_line_notes): Remove argument block B
4005 since it's unused.
4006 * sched-ebb.c (schedule_ebb): Change caller.
4007 * sched-rgn.c (schedule_region): Likewise.
4008 * sched-int.h (restore_line_notes): Adjust prototype.
4009
d24b8f53
AJ
4010 * loop.h: Remove wrong declaration of doloop_condition_get.
4011
e6f3b89d
PE
40122001-01-12 Phil Edwards <pme@sources.redhat.com>
4013
4014 * extend.texi: Move C++-extension-related node from the C section
20f9202d 4015 into the C++ section.
e6f3b89d 4016
89aed483
JM
40172001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
4018
4019 * extend.texi: Refer to an array of pointers to functions instead
4020 of one of functions.
4021
c3ffea50
AJ
4022Fri Jan 12 12:08:12 MET 2001 Andreas Jaeger <aj@suse.de>
4023 Jan Hubicka <jh@suse.cz>
4024
d24b8f53 4025 * combine.c (reversed_comparison): Fix typo in last patch.
c3ffea50 4026 Check X for NULL.
d24b8f53
AJ
4027 (combine_reversed_comparison_code): Make static to follow
4028 prototype declaration.
c3ffea50 4029
159227d5
PE
40302001-01-12 Phil Edwards <pme@sources.redhat.com>
4031
4032 * install.texi: Remove misplaced duplicate entry.
4033
ac70ce21
UD
40342001-01-11 Ulrich Drepper <drepper@redhat.com>
4035
4036 * config/float-i386.h: Define FLT_EVAL_METHOD and DECIMAL_DIG for C99.
4037
b660f82f
JW
4038Thu Jan 11 17:06:30 EST 2001 John Wehle (john@feith.com)
4039
4040 * final.c: (leaf_function_p): Fix typo.
4041
825b6926
ZW
40422001-01-11 Zack Weinberg <zack@wolery.stanford.edu>
4043
4044 * aclocal.m4 (AC_FUNC_MMAP_ANYWHERE): Completely rewritten.
4045 Now defines HAVE_MMAP_DEV_ZERO and/or HAVE_MMAP_ANON depending
4046 which you have.
4047 (AC_FUNC_MMAP_FILE): Don't AC_REQUIRE AC_FUNC_MMAP_ANYWHERE.
4048 * configure.in: Set GGC to ggc-page if any of mmap_dev_zero,
4049 mmap_anon, and valloc is available.
4050 * ggc-page.c: Restructure ifdef logic to match new autoconf
4051 spec. Don't throw away the test page in init_ggc.
4052
4053 * configure, config.in: Regenerate.
4054
099f0f3f
MH
40552001-01-12 Michael Hayes <mhayes@redhat.com>
4056
4057 * loop.h (total_biv_increment): Constify iv_class pointer.
4058 (struct induction): Replace `mem_mode' with `mem' rtx.
4059 * unroll.c (total_biv_increment): Constify iv_class pointer.
4060 * loop.c (loop_giv_reduce_benefit): Derive mem mode from mem rtx.
4061 (find_mem_givs, combine_givs_p): Likewise.
4062 (debug_ivs, debug_iv_class, loop_ivs_dump, loop_iv_class_dump): New.
4063
69e905c8
TP
40642001-01-10 Thomas Pfaff <tpfaff@gmx.net>
4065
4066 * gthr-win32.h (__gthread_objc_thread_get_data): Save and restore Win32
4067 LastError.
4068 (__gthread_getspecific): Ditto.
4069
9a915772
JH
4070Fri Jan 12 00:04:00 MET 2001 Jan Hubicka <jh@suse.cz>
4071
4072 * i386.c (ix86_comparison_operator, fcmov_comparison_operator,
4073 put_condition_code): Convert fp comparison codes to integer
4074 before handling.
4075 (ix86_expand_fp_compare): Postnote the fp comparison code converison
4076 to final.
4077
4078 * i386.c (unsigned_comparison, no_comparison_operator): Kill.
4079 * i386-protos.h (no_comparison_operator): Kill.
4080
4081 * i386.c (ix86_expand_fp_compare): Fix ordered/unordered confussion.
4082
4083 * combine.c (REVERSIBLE_CC_MODE): Remove.
4084 (reversible_comparison_p): Remove.
4085 (combine_reversed_comparison_code): New.
4086 (reversed_comparison): New.
4087 (combine_simplify_rtx): Use
4088 combine_reversed_comparison_code/reversed_comparison instead
4089 of reversible_comparison_p.
4090 (simplify_if_then_else): Likewise.
4091 (simplify_set): Likewise.
4092 (simplify_logical): Likewise.
4093 (if_then_else_cond): Likewise.
4094 (known_cond): Likewise.
4095 (simplify_comparison): Likewise.
4096
bbc7fda9
AL
40972001-01-11 Alan Lehotsky <lehotsky@tiac.net>
4098
4099 * builtins.c (std_expand_builtin_va_start): Handle varargs when
4100 sizeof (int) is larger than sizeof(__word__).
825b6926 4101
a4299d07
NB
41022001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
4103
825b6926 4104 * cppinit.c (do_includes): Fix typo.
a4299d07 4105
76028b1f
SC
41062001-01-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
4107
4108 * config/m68hc11/m68hc11.md (cmphi_1): Make sure reloading
4109 in S_REGS does not occur because not all sources are possible
4110 when a S_REGS is a destination (sometimes needs a clobber).
4111 (movqi_const0, zero_extendhisi2, zero_extendqisi2): Likewise.
4112 (zero_extendhidi2, extendqisi2, extendqihi2, extendhisi2): Likewise.
4113 (anddi3, iordi3, xordi3, negqi2, one_cmplhi2, one_cmplqi2: Likewise.
4114 (ashldi3_const32, ashldi3_const1, ashlsi3_const16): Likewise.
4115 (ashlsi3_const1, ashlhi3_2, ashlqi3_const1, ashrhi3): Likewise.
4116 (ashrqi3_const1, lshrdi3_const32, lshrdi3_const63): Likewise.
4117 (lshrdi_const1, lshrsi3_const16): Likewise.
4118 (*addhi3, lshrsi3_const1, lshrqi3_const1): Likewise.
4119 (*movhi_68hc12, *movqi_68hc12): Likewise.
825b6926 4120 (movstrictqi): Make sure reloading in D_REGS as a destination
76028b1f
SC
4121 does not happen.
4122
d3956766
NB
41232001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
4124
825b6926 4125 * cppspec.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Add -MQ.
d3956766 4126
05e81724
NB
41272001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
4128
825b6926
ZW
4129 * cppinit.c (cpp_start_read): If -fpreprocessed, ignore
4130 -D, -U and -A, and don't initialize the builtins.
a4299d07 4131 (do_includes): Error if -include or -imacros with -fpreprocessed.
825b6926
ZW
4132 * cppmain.c (cb_define, cb_undef): Unconditionally process
4133 the callback.
4134 * tradcpp.c (main): Fix typo.
05e81724
NB
4135
41362000-01-11 Mark Elbrecht <snowball3@bigfoot.com>
825b6926 4137
20f9202d
DB
4138 * cppfiles.c (cpp_included, find_include_file, _cpp_execute_include)
4139 (read_name_map): Use IS_ABSOLUTE_PATH.
4140 * tradcpp.c (get_filename): Likewise.
05e81724 4141
76d06edc
SC
41422001-01-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
4143
4144 * config/m68hc11/m68hc11.md (*adcq, *subcq): Fix operand numbers.
4145 (*ashlsi3_const16_zexthi, *ashlsi3_const1): Likewise.
4146 (*lshrsi3_const, *lshrsi3_const1, *lshrsi3_const16): Likewise.
4147 (*ashrsi3, *ashrsi3_const, *ashlsi3, *ashlsi3_const): Likewise.
4148 (*ashlsi3_const1, *lshrsi3, *ashlsi3_const16): Likewise.
4149 (cmphi_z_used): Don't use '@' for the output.
4150 (tstqi_z_used): Likewise.
4151 (cmpqi_z_used): Likewise.
4152 (one_cmplsi2): Likewise.
4153
1594c6bc
AO
41542001-01-11 Alexandre Oliva <aoliva@redhat.com>
4155
4156 * config/sh/sh.c (barrier_align): Recognize branch around far
4157 branch and redundant insn.
4158
7da723ef
NB
41592001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
4160
825b6926 4161 * invoke.texi: Restore documentation of the drivers' switches -MD
7da723ef
NB
4162 and -MMD.
4163
a738a85c
AO
41642001-01-11 Alexandre Oliva <aoliva@redhat.com>
4165
f6f1dc95
AO
4166 * config/sh/sh.h (LABEL_ALIGN): Use UNSPECV_ALIGN instead of 1.
4167
a738a85c
AO
4168 * Makefile.in (check-gcc//%, check-g++//%, check-g77//%,
4169 check-objc//%): Support parallel testing of multilibs.
4170 (TESTSUITEDIR): Set to testsuite by default, but override for
4171 parallel testing.
4172 (check-gcc, check-g++, check-g77, check-objc): Enter
4173 $(TESTSUITEDIR).
4174
fb6754f0
BS
41752001-01-11 Bernd Schmidt <bernds@redhat.com>
4176
4177 * alias.c (throughout): Use REGNO, rather than ORIGINAL_REGNO.
4178 * sched-deps.c (deps_may_trap_p): Likewise.
4179 * basic-block.h: Remove a comment.
4180 * flow.c (PROP_POSTRELOAD): Remove.
4181 (update_life_info): Don't add it to prop_flags.
4182 (mark_set_1): Lose the code that was enabled by it.
4183
0ab409ed
MH
41842001-01-11 Michael Hayes <mhayes@redhat.com>
4185
4186 * flow.c (flow_call_edges_add): New.
4187 * basic_block.h (flow_call_edges_add): New.
4188
ada6635f
R
41892001-01-11 J"orn Rennecke <amylaar@redhat.com>
4190
4191 * reload1.c (move2add_note_store): Update reg_set_luid even if
4192 base reg remains the same.
4193
73d771f0
NC
41942001-01-10 Nick Clifton <nickc@redhat.com>
4195
4196 * config/d30v/d30v.c (d30v_init_machine_status): Initialise
4197 machine_function structure to zero.
4198 Add prototypes for machine_status functions.
4199
cbd5937a
MM
42002001-01-10 Mark Mitchell <mark@codesourcery.com>
4201
4202 * c-common.h (CTI_VOID_LIST): Remove.
4203 (void_list_node): Likewise.
4204 * tree.h (TI_VOID_LIST_NODE): New enumeral.
4205 (void_list_node): New macro.
4206 * config/arm/arm.c (arm_init_builtins): Use void_list_node.
4207 * config/i386/i386.c (ix86_init_builtins): Likewise.
4208 * config/ia64a/ia64.c (ia64_init_builtins): Likewise.
4209
2f638f96
NB
42102001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
4211
825b6926
ZW
4212 * Makefile.in (tradcpp0): Depend on mkdeps.h. Link mkdeps.o
4213 * cppinit.c (cpp_start_read): Update comment, remove unneeded
4214 if statement.
4215 * tradcpp.c: Include mkdeps.h.
4216 (deps, print_deps_phony_targets, deps_append, output_deps,
4217 init_dependency_output, output_deps): New.
4218 (deps_buffer, deps_allocated_size, deps_size, deps_column,
4219 deps_output): Delete.
4220 (print_deps_missing_files): Rename deps_missing_files.
4221 (inhibit_output): Make global.
4222 (main): Delete inhibit_output, deps_stream, deps_target.
4223 Use mkdeps functionality in the same way as cpplib. Remove
4224 -g3 handling. Handle -MF, -MP, -MQ, -MT. Update handling of
4225 -M and -MM. Remove old handling of deps via deps_out, and
4226 old reading of environment variables.
4227 (get_filename): Update to use deps_add_dep.
2f638f96 4228
6c418184
MM
42292001-01-10 Mark Mitchell <mark@codesourcery.com>
4230
4231 * output.h (make_function_rtl): Remove prototype.
4232 (make_decl_rtl): Likewise.
4233 * varasm.c (make_function_rtl): Remove.
4234 (make_decl_rtl): Determine top-levelness from DECL_CONTEXT, rather
4235 than from a third parameter.
4236 * tree.h (make_decl_rtl): Remove last parameter.
4237 * c-decl.c (builtin_function): Remove last argument in call to
4238 make_decl_rtl; use make_function_rtl instead of make_decl_rtl.
4239 (start_function): Likewise.
4240 * except.c (call_get_eh_context): Likewise.
4241 * expr.c (emit_block_move): Likewise.
4242 (clear_storage): Likewise.
4243 * profile.c (output_func_start_profiler): Likewise.
4244 * toplev.c (rest_of_decl_compilation): Likewise.
4245 * objc/objc-act.c (create_builtin_decl): Likewise.
4246 (synth_module_prologue): Likewise.
4247 (generate_static_reference): Likewise.
4248 (build_selector_reference_decl): Likewise.
4249 (build_class_reference_decl): Likewise.
4250 (build_objc_string_decl): Likewise.
4251 (build_protocol_reference): Likewise.
4252
4621c640
RH
42532001-01-10 Richard Henderson <rth@redhat.com>
4254
4255 * hwint.h: Revert yesterday's change.
4256
414c4dc4
NC
42572001-01-10 Nick Clifton <nickc@redhat.com>
4258
4259 * function.h (save_machine_status): Delete.
4260 (restore_machine_status): Delete.
4261 Amend comment describing {init|mark|free}_machine_status.
4262
4263 * function.c (save_machine_status): Delete.
4264 (restore_machine_status): Delete.
4265 Amend comment describing {init|mark|free}_machine_status.
4266 (push_function_context_to): Remove invocation of
4267 save_machine_status.
4268 (pop_function_context_from): Remove invocation of
4269 restore_machine_status.
4270
4271 * emit-rtl.c (init_emit_once): Amend comment describing
825b6926 4272 {init|mark|free}_machine_status.
414c4dc4
NC
4273
4274 * tm.texi (Per-Function Data): New node. Describe the
4275 INIT_EXPANDERS macro and the {init|mark|free}_machine_status
4276 function pointers.
4277
5c5d1ea0
NB
42782001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
4279
825b6926
ZW
4280 * cppinit.c (OPT_g): Remove.
4281 (cpp_handle_option): Update for removed -g3.
4282 (print_help): Update.
4283 * cpplib.h (struct cpp_options): Remove debug_output.
4284 * cppmain.c (setup_callbacks, cb_define): Update.
4285 * gcc.c (cpp_options): Translate -g3 to -dD.
5c5d1ea0 4286
d9271ccc
AH
42872001-01-10 Aldy Hernandez <aldyh@redhat.com>
4288
4289 * config/i960/i960.md: Change modifier to + on the zero_extract
825b6926 4290 pattern after the (rotate -2 reg) canonicalization pattern.
d9271ccc 4291
37b15744
RH
42922001-01-10 Richard Henderson <rth@redhat.com>
4293
4294 * config/alpha/alpha.c (alpha_free_machine_status): New.
4295 (override_options): Install it.
4296 (alpha_mark_machine_status): Verify machine non-null.
4297 * config/i386/i386.c (ix86_free_machine_status): New.
4298 (override_options): Install it.
4299 (ix86_init_machine_status): Use xcalloc.
4300 (ix86_mark_machine_status): Verify machine non-null.
4301 * config/ia64/ia64.c (ia64_free_machine_status): New.
4302 (ia64_override_options): Install it.
4303 (ia64_mark_machine_status): Verify machine non-null.
4304
87c61e2d
JL
4305Wed Jan 10 11:34:39 2001 Jeffrey A Law (law@cygnus.com)
4306
4307 * function.c (instantiate_virtual_regs): Instantiate virtual
4308 registers found in CALL_INSN_FUNCTION_USAGE.
4309
930bbdd2
JM
43102001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
4311
4312 * i386.h (CPP_CPU_SPEC): Allow for -std=c* and -std=i* as
4313 equivalent to -ansi in disabling -Di386.
4314
c0c102a9
JH
4315Wed Jan 10 16:38:31 MET 2001 Jan Hubicka <jh@suse.cz>
4316
4317 * i386.c (ix86_fp_compare_code_to_integer, ix86_fp_comparison_codes):
4318 new functions.
4319 (ix86_expand_fp_compare): Make trivial use of new infrastructure.
4320
78053907
RE
43212001-01-10 Richard Earnshaw <rearnsha@arm.com>
4322
4323 * arm.c (arm_init_builtins): Temporarily disable xscale builtins.
4324
a7537031
JM
43252001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
4326
4327 * invoke.texi: Document that -fcond-mismatch isn't supported for
4328 C++.
4329
2642624b
JM
43302001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
4331
4332 * gcc.texi: Define macro gcctabopt.
4333 * invoke.texi: Add manpage sections BUGS and AUTHOR. Use
4334 @command, @env and @option in some places where appropriate. Use
4335 @gcctabopt where appropriate. Put URLs and email addresses inside
4336 @w.
4337
11972f66 43382001-01-10 Nathan Sidwell <nathan@codesourcery.com>
825b6926
ZW
4339
4340 * gcc.c (cpp_options): Set MD file name from output
4341 filename, if specified.
4342 (suffix_subst): New static variable.
4343 (do_spec): Clear it.
4344 (do_spec_1, case '.'): Handle new `%.suffix' spec.
4345 Clear it.
4346 (give_switch): Handle suffix_subst.
11972f66 4347
0a75e5c3
PE
43482001-01-10 Phil Edwards <pme@sources.redhat.com>
4349
4350 * invoke.texi: Fix another typo.
4351
9169269f
PE
43522001-01-10 Phil Edwards <pme@sources.redhat.com>
4353
4354 * invoke.texi: Fix typo.
4355
ee811cfd
NB
43562001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
4357
825b6926
ZW
4358 * c-lang.c (lang_hooks): Update.
4359 (lang_decode_option): Remove.
4360 (lang_init_options): Rename c_init_options.
4361 * toplev.c (main): Use lang_hooks for lang_init_options
4362 and lang_decode_option.
4363 * toplev.h (lang_hooks): Add 2 new hooks.
4364 * tree.h: Remove lang_init_options and lang_decode_option.
4365 * cp/cp-tree.h (lang_decode_option): Rename cxx_decode_option.
4366 * cp/decl2.c: Similarly.
4367 * cp/lex.c (lang_init_options): Rename cxx_init_options.
4368 (lang_hooks): Update.
4369 * f/com.c (f_init, f_finish): Rename ffe_init, ffe_finish
4370 for consistency.
4371 (lang_init_options): Rename ffe_init_options.
4372 (lang_hooks): Update.
4373 (lang_decode_option): Remove.
4374 * java/lang.c (lang_init_options): Rename java_init_options.
4375 (lang_decode_option): Rename java_decode_option.
4376 (lang_hooks): Update.
4377 * objc/objc-act.c (lang_init_options): Rename objc_init_options.
4378 (lang_decode_option): Rename objc_decode_option.
4379 (lang_hooks): Update.
ee811cfd 4380
8541c24b
NC
43812001-01-09 Nick Clifton <nickc@redhat.com>
4382
4383 * config/d30v/d30v.c (d30v_eh_epilogue_sp_ofs): Delete.
4384 (d30v_return_addr_rtx): Delete.
4385 (d30v_expand_epilogue): Use eh_epilogue_sp_ofs field in the
4386 cfun->machine structure.
4387 (struct machine_function): Move to d30v.h
4388 (d30v_save_machine_status): Delete.
4389 (d30v_restore_machine_status): Delete.
4390 (d30v_init_machine_status): New Function.
4391 (d30v_mark_machine_status): New Function.
4392 (d30v_free_machine_status): New Function.
4393 (d30v_init_expanders): Use new functions.
4394 (d30v_return_addr): Use ra_rtx field in cfun->machine.
4395 (d30v_add_gc_roots): Remove d30v_eh_epilogue_sp_ofs and
4396 d30v_return_addr_rtx.
4397
4398 * config/d30v/d30v.h (struct_machine): Move here.
4399 Add eh_epilogue_sp_ofs field.
4400
4401 *config/d30v/d30v.md (epilogue): Initialise eh_epilogue_sp_ofs
4402 field in cfun->machine structure.
4403
4d5a6f78
JDA
4404Tue Jan 9 21:34:57 2001 John David Anglin <dave@hiauly1.hia.nrc.ca>
4405
4406 * pa32-regs.h (CONDITIONAL_REGISTER_USAGE): When generating pic code,
4407 PIC_OFFSET_TABLE_REGNUM_SAVED is a call_used register.
4408 * pa64-regs.h (CONDITIONAL_REGISTER_USAGE): Likewise.
4409
ecb7e784
JL
4410Tue Jan 9 21:25:19 2001 Jeffrey A Law (law@cygnus.com)
4411
4412 * objc/lang-options.h: Remove bogus reference to
4413 Java trademark.
4414
35fb3d1f
KH
44152001-01-09 Kazu Hirata <kazu@hxi.com>
4416
4417 * config/h8300/h8300.c (get_shift_alg): Use a struct shift_info to
4418 return the result.
4419
4971426b
AL
44202001-01-09 Alan Lehotsky <lehotsky@tiac.net>
4421
4422 * reload.c (find_reloads_address): Check for eliminable registers
20f9202d 4423 when substituting a constant expression for a pseudo.
825b6926 4424
10a4c7ac
JM
44252001-01-09 Joseph S. Myers <jsm28@cam.ac.uk>
4426
4427 * c-common.c (enum format_type): Add format_type_error.
4428 (decode_format_type): New function.
4429 (decl_attributes): Use it.
4430 (format_kind_info): Adjust comment.
4431
f6e0c56c
DB
44322001-01-09 David O'Brien <obrien@BSDi.com>
4433
4434 * config.gcc (*-*-gnu*, i[34567]86-*-elf*, i[34567]86-*-linux*libc1,
4435 i[34567]86-*-linux*, i[34567]86-*-moss*): Specify needed platform specific
4436 files in tm_file.
4437 * config/i386/gnu.h: Don't include required platform specific .h files,
4438 tm.h will do it instead.
4439 * config/i386/i386elf.h: Likewise.
4440 * config/i386/linux.h: Likewise.
4441 * config/i386/moss.h: Likewise.
4442 * config/mips/gnu.h: Likewise.
4443
e556ad19
FS
44442001-01-09 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
4445
4446 * config.gcc (powerpc-*-beos*): Include ${tm_file} and rs6000/aix.h.
4447 (rs6000-ibm-aix3.[01]*): Likewise.
4448 (rs6000-ibm-aix3.2.[456789]*, powerpc-ibm-aix3.2.[456789]*): Likewise.
4449 (rs6000-ibm-aix4.[12]*, powerpc-ibm-aix4.[12]*): Likewise.
4450 (rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Likewise.
4451 (rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise.
4452 (powerpc-*-sysv*): Include {tm_file}. svr4.h and rs6000/sysv4.h.
4453 (powerpc-*-eabiaix*): Likewise.
4454 (powerpc-*-eabisim*): Likewise.
4455 (powerpc-*-elf*): Likewise.
4456 (powerpc-*-eabi*): Likewise.
4457 (powerpc-*-rtems*): Likewise.
4458 (powerpc-*-linux*libc1): Likewise.
4459 (powerpc-*-linux*): Likewise.
4460 (powerpc-wrs-vxworks*): Likewise.
4461 (powerpcle-wrs-vxworks*): Likewise.
4462 (powerpcle-*-sysv*): Likewise.
4463 (powerpcle-*-elf*): Likewise.
4464 (powerpcle-*-eabisim*): Likewise.
4465 (powerpcle-*-eabi*): Likewise.
4466 (powerpcle-*-solaris2*): Likewise.
4467 * config/rs6000/aix31.h: Delete includes.
4468 * config/rs6000/aix3newas.h: Likewise.
4469 * config/rs6000/aix41.h: Likewise.
4470 * config/rs6000/aix43.h: Likewise.
4471 * config/rs6000/beos.h: Likewise.
4472 * config/rs6000/rtems.h: Likewise.
4473 * config/rs6000/sysv4.h: Likewise.
4474
9789584b
KH
44752001-01-09 Kazu Hirata <kazu@hxi.com>
4476
4477 * config/h8300/h8300.c (get_shift_alg): Remove an argument cpu.
4478 Change an argument mode of machine_mode to shift_mode of
4479 shift_mode. Remove an extra error check.
4480 (emit_a_shift): Adopt to the new calling prototype of
4481 get_shift_alg.
46d00fef
KH
4482 (function_prologue): Fix code for a monitor
4483 function. Support H8/S.
4484 (function_epilogue): Do not output pop for a monitor function.
9789584b 4485
a2e11fd9
NC
44862001-01-09 Nick Clifton <nickc@redhat.com>
4487
4488 * config/rs6000/rs6000.c (rs6000_sysv_varargs_p): Delete.
4489 (setup_incoming_varargs): Use sysv_varargs_p field of the
4490 cfun->machine structure.
4491 (struct machine_function): Move to rs6000.h
4492 (rs6000_save_machine_status): Delete.
4493 (rs6000_restore_machine_status): Delete.
4494 (rs6000_init_machine_status): New Function.
4495 (rs6000_free_machine_status): New Function.
4496 (rs6000_init_expanders): Use new functions.
4497
4498 * config/rs6000/rs6000.h (rs6000_sysv_varargs_p): Delete
4499 export.
4500 (struct machine_function): Move here.
4501
4502 * config/rs6000/sysv4.h (RS6000_VARARGS_AREA): Use
4503 sysv_varargs_p field of the cfun->machine structure.
4504
4505 * config/rs6000/rs6000-protos.h (rs6000_save_machine_status):
4506 Remove prototype.
4507 (rs6000_restore_machine_status): Remove prototype.
4508
4ba478b8
RH
45092001-01-09 Richard Henderson <rth@redhat.com>
4510
4511 * sched-int.h (struct deps): Add max_reg, reg_last_in_use; merge
4512 reg_last_uses, reg_last_sets, reg_last_clobbers into struct deps_reg.
4513 * sched-deps.c (sched_analyze_1): Update uses of struct deps.
4514 (sched_analyze_2, sched_analyze_insn): Likewise.
4515 (sched_analyze, init_deps): Likewise.
4516 (free_deps): Likewise. Iterate with EXECUTE_IF_SET_IN_REG_SET.
4517 * sched-rgn.c (propagate_deps): Likewise. Remove max_reg argument.
4518 (compute_block_backward_dependences): Update propagate_deps call.
4519
9c1fcbfb
ME
45202001-01-09 Mark Elbrecht <snowball3@bigfoot.com>
4521
4522 * gcc.c (process_command): Set switches[n_switches].ordering to 0.
4523
e582248c
NB
45242001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
4525
825b6926
ZW
4526 * cppinit.c (OPT_MD, OPT_MMD): Restore.
4527 (cpp_handle_option): Handle them.
4528 (cpp_post_options): Ensure one of -M or -MM is specified with
4529 any other -M? option.
4530 (init_dependency_output): Suppress output with -MG.
e582248c
NB
4531
45322001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
4533
825b6926
ZW
4534 * cpp.texi: Update.
4535 * invoke.texi: Update.
e582248c 4536
7894cb27
BS
45372001-01-09 Bernd Schmidt <bernds@redhat.com>
4538
4539 * sh.md (reload_outsf): Generate recognizable patterns for
4540 TARGET_SH3E.
4541
9f56ed15
NB
45422001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
4543
4544 * c-lang.c (lang_hooks): Update.
825b6926
ZW
4545 (lang_init): Rename c_init.
4546 (lang_finish): Remove.
4547 * toplev.c (compile_file): Use lang_hooks for lang_init ()
4548 and lang_finish ().
4549 * toplev.h (lang_hooks): Add init () and finish ().
4550 * tree.h (lang_init, lang_finish): Remove.
4551 * cp/tree.h (lang_init, lang_finish): Remove.
4552 * cp/decl2.c (cxx_post_options, lang_hooks): Move to cp/lex.c.
4553 * cp/lex.c (cxx_init, cxx_finish, cxx_post_options,
4554 lang_hooks): New.
4555 (lang_init, lang_finish): Remove.
4556 * f/com.c (lang_init, lang_finish): Rename f_init, f_finish.
4557 (lang_hooks): Update.
4558 * java/lang.c (lang_init): Rename java_init.
4559 (lang_finish): Remove.
4560 (lang_hooks): Update.
4561 * objc/objc-act.c (lang_init): Rename objc_init.
4562 (lang_finish): Remove.
4563 (lang_hoooks): Update.
9f56ed15 4564
fb83deef
GS
456520001-01-09 Graham Stott <grahams@redhat.com>
4566
4567 * cppfiles.c (_cpp_execute_include): Move `len` initialisation
4568 after `ptr` is initialised.
4569
ec4ad0f9
AO
45702001-01-09 Alexandre Oliva <aoliva@redhat.com>
4571
4572 * config/sh/sh.h (STATIC_CHAIN_REGNUM): Change from r13 to r3.
4573 (INITIALIZE_TRAMPOLINE): Adjust accordingly.
4574 * config/sh/sh.c (sh_expand_prologue): Use r1 as temporary for
4575 stack adjusts, instead of r3.
4576
eab02feb
MH
45772001-01-09 Michael Hayes <mhayes@redhat.com>
4578
4579 * flow.c (flow_loop_scan): Break out of ...
4580 (flow_loops_find) ... here.
4581 * basic-block.h (flow_loop_scan): New.
4582 (LOOP_ENTRY_EDGES, LOOP_EXIT_EDGES): Add.
4583 (LOOP_EDGES, LOOP_EXITS_DOMS, LOOP_ALL): Redefine.
4584
bad48d7e
AO
45852001-01-09 Alexandre Oliva <aoliva@redhat.com>
4586
4b49c365
AO
4587 * cppinit.c (cpp_cleanup): NULLify macro_buffer and zero
4588 macro_buffer_len.
4589 * cppmacro.c (cpp_macro_definition): Reset macro_buffer_len when
4590 realloc()ing macro_buffer.
4591
bad48d7e
AO
4592 * hwint.h (HOST_BITS_PER_WIDE_INT, HOST_WIDE_INT): Use long long
4593 if it's wider than long and the target's long is wider than the
4594 host's.
4595
34fa3e7d
MM
45962001-01-09 Mark Mitchell <mark@codesourcery.com>
4597
4598 Remove support for using UWIN as a host machine.
4599 * configure.in: Issue an error message.
4600 * configure: Regenerated.
4601 * config.gcc: Remove xm_* UWIN configury.
4602 * config/i386/xm-uwin.h: Remove.
4603
61db4608
NC
46042001-01-08 Nick Clifton <nickc@redhat.com>
4605
4606 * config/v850/v850.c (ra_rtx): Delete.
825b6926 4607 (v850_save_machine_status): Delete.
61db4608
NC
4608 (v850_restore_machine_status): Delete.
4609 (v850_init_machine_status): New function.
4610 (v850_mark_machine_status): New function.
4611 (v850_free_machine_status): New function.
4612 (v850_return_addr): Use ra_rtx field in machine structure.
4613 (v850_init_expanders): Use new functions.
4614
4615 * config/v850/v850-protos.h: Fix prototypes for v850_output_*
4616 * config/v850/v850.c: Change arguments to v850_output+* functions
4617 to take a const char *, to avoid compile time warning.
4618 * config/v850/v850.h (ASM_OUTPUT_LABELREF): Undefine, not needed.
4619 (USER_LABEL_PREFIX): Redefine.
825b6926 4620
9c8fad33
JW
46212000-01-08 Jim Wilson <wilson@redhat.com>
4622
4623 * sched-rgn.c (BITSET_ADD, BITSET_REMOVE, bitset_member): Cast
4624 1 to unsigned HOST_WIDE_INT before left shift.
4625
f7a80099
NC
46262001-01-08 Nick Clifton <nickc@redhat.com>
4627
4628 * config/arm/arm.c (arm_mark_machine_status): Check to see if
4629 the machine structure has been allocated.
4630 (arm_free_machine_status): New function: Free the machine
4631 specific function structure.
4632
3c74f8f9
RH
46332001-01-08 Richard Henderson <rth@redhat.com>
4634
4635 * jump.c (simplejump_p): Revert last change.
4636
674c3b40
NB
46372001-01-08 Neil Booth <neil@daikokuya.demon.co.uk>
4638
825b6926
ZW
4639 * cppinit.c (init): Rename init_library.
4640 (cpp_create_reader): Update.
4641 * gcc.c (cpp_options): If -o given, use it as the target of
4642 any -M options.
674c3b40 4643
b15bca31
RE
46442001-01-08 Richard Earnshaw <rearnsha@arm.com>
4645
4646 * arm.c (arm_arch5e): New variable.
4647 (all_cores): XScale is a 5TE device.
4648 (arm_override_options): Set arm_arch5e.
4649 (arm_init_builtins): __builtin_prefetch is in arch5e.
4650 * arm.h (arm_arch5e): Declare it.
4651
4652 * arm.h (PREDICATE_CODES): Add arm_hard_register_operand.
4653
4654 * arm.md (define_constants): Add defines for UNSPEC and
4655 UNSPEC_VOLATILE insns. Update all users.
4656 (define_constants): Add constants for IP_REGNUM, SP_REGNUM, PC_REGNUM.
4657 * arm.c (multi_register_push, note_invalid_constants)
4658 (emit_multi_reg_push, emit_sfm, expand_prologue): Use constants.
4659 * arm.h (SP_REGNUM, IP_REGNUM, PC_REGNUM): Delete defines.
4660 (STACK_POINTER_REGNUM): Define in terms of SP_REGNUM.
825b6926 4661
261efdef
JH
4662Mon Jan 8 16:14:56 MET 2001 Jan Hubicka <jh@suse.cz>
4663
4664 * jump.c (jump_optimize_1): Use reversed_comparison_code
4665 instead of can_reverse_comparison_p.
4666 (jump_back_p): Likewise.
4667 (invert_exp_1): Likewise.
4668 (thread_jumps): Likewise.
4669 * simplify-rtx.c (simplify_unary_operation): Likewise.
4670 (simplify_ternary_operation): Likewise.
4671 * cse.c (find_comparison_args): Convert to use
4672 can_reverse_comparison_p.
4673 (record_jump_equiv): Likewise.
4674
c7861455
RE
46752001-01-08 Richard Earnshaw <rearnsha@arm.com>
4676
4677 * arm.h (HARD_REGNO_RENAME_OK): Delete.
4678 (EPILOGUE_USES): Define.
825b6926 4679 (INITIAL_ELIMINATION_OFFSET): Current prologue code does not
c7861455
RE
4680 automatically stack the LR if it isn't live.
4681
734dba19
JH
4682Mon Jan 8 13:46:02 MET 2001 Jan Hubicka <jh@suse.cz>
4683
4684 * i386.c (ix86_expand_int_movcc): Take care to reverse fp conditions
4685 properly.
4686
b1095f9c
MM
4687Sun Jan 7 18:37:43 2001 Mark P Mitchell <mark@codesourcery.com>
4688
4689 * ggc-page.c (max_alignment): New structure.
4690 (MAX_ALIGNMENT): New macro.
4691 (init_ggc): Use it to round up the sizes in the
4692 extra_order_size_table.
4693
a701949a
FS
46942001-01-07 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
4695
4696 * config/rs6000/rs6000.h (EPILOGUE_USES): New, mark link register
4697 after reload.
4698
18f988a0
KG
46992001-01-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4700
4701 * builtins.def (BUILT_IN_FPRINTF): New entry.
4702
4703 * c-common.c (c_expand_builtin_fprintf): New function.
4704 (init_function_format_info): Handle __builtin_fprintf.
4705 (c_common_nodes_and_builtins): Declare fprintf/__builtin_fprintf.
4706 (c_expand_builtin): Handle BUILT_IN_FPRINTF.
4707
4708 * c-decl.c (duplicate_decls): Adjust comment.
4709
4710 * extend.texi (fprintf): Document new builtin.
4711
8cd0792f
RH
47122001-01-07 Richard Henderson <rth@redhat.com>
4713
4714 * jump.c (simplejump_p): Recognize any single_set jump
4715 of the proper form.
4716
5b15f277
RH
47172001-01-07 Richard Henderson <rth@redhat.com>
4718
4719 * configure.in (slibdir): Accept an --with-slibdir option.
4720 Use "test" not "[" in configure. Default to $(libdir).
4721
9c2e06d9
RH
4722 * config/t-linux (SHLIB_INSTALL): Double quote slibdir;
4723 fix typo in rm -f.
4724 * config/t-aix43 (SHLIB_INSTALL): Likewise.
4725 * config/alpha/t-osf4 (SHLIB_INSTALL): Likewise.
4726 (SHLIB_LINK): Create links for the soname.
4727 * config/mips/t-iris6: Likewise.
4728 * config/sparc/t-slibgcc: Likewise.
4729 * config/sparc/t-slibgcc-sld: Likewise.
4730
eaf19aba
JJ
47312001-01-07 Jakub Jelinek <jakub@redhat.com>
4732
4733 * config/i386/i386.c (constant_call_address_operand): Accept
4734 (const (plus (symbol_ref) (const_int))).
4735 * config/i386/i386.h (PREDICATE_CODES): Add CONST for
4736 constant_call_address_operand.
4737
a8b462be
MH
47382001-01-08 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
4739
4740 * libgcc2.h (W_TYPE_SIZE): Fix case where MIN_UNITS_PER_WORD == 1
4741 and LONG_LONG_TYPE_SIZE > 32.
4742
3799607a
GP
47432001-01-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
4744
4745 * jump.c (reversed_comparison_code_parts): Fix typo introduced by
4746 the previous change.
4747
ab94bc48
JH
4748Sun Jan 7 19:37:48 MET 2001 Jan Hubicka <jh@suse.cz>
4749
4750 * jump.c (reversed_comparison_code_parts, reversed_comparison_code):
4751 New.
4752 (can_reverse_comparison_p): Rewrite to use reversed_comparison_code.
4753 (reverse_condition_maybe_unordered): Abort on unsigned comparisons.
4754 * rtl.h (reversed_comparison_code_parts, reversed_comparison_code):
4755 Declare.
4756
f6a13bff
NB
47572001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
4758
825b6926 4759 * fix-header.c (read_scan_file): s/pfile/scan_in/.
f6a13bff 4760
96302433
NB
47612001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
4762
825b6926 4763 * c-lang.c (c_post_options): Call cpp_post_options.
96302433
NB
4764 * objc/objc-act.c (objc_post_options): Similarly.
4765 * cppmain.c (main): Similarly.
825b6926
ZW
4766 * fix-header.c (read_scan_file): Similarly.
4767 * cppinit.c (cpp_start_read): Move option consistency checks
4768 to cpp_post_options. Don't call init_dependency_output.
4769 If needed, add default target and main file dependency.
4770 (OPT_MD, OPT_MMD): Remove.
4771 (OPT_MF): New.
4772 (cpp_handle_option): Update for OPT_* changes.
4773 (cpp_post_options): New.
4774 (init_dependency_output): Command line -MF overrides environment
4775 variables. Don't set default target etc. Suppress output
4776 if dependencies are going to stdout.
4777 (print_help): Update.
4778 * cpplib.h (cpp_post_options): New.
4779 * gcc.c (cpp_options): Update for -MD, -MMD, -MF.
4780
b34878a3
JH
4781Sun Jan 7 14:44:19 MET 2001 Jan Hubicka <jh@suse.cz>
4782
4783 * jump.c (comparison_dominates_p): Support unordered compares.
4784
1f36a2dd
JH
4785Sun Jan 7 14:39:07 MET 2001 Jan Hubicka <jh@suse.cz>
4786
4787 * simplify-rtx.c (simplify_relational_operation): Always simplify
4788 ORDERED and UNORDERED when FLAG_FAST_MATH. Handle properly UNLE
4789 and UNGE.
4790
69bc0a1f
JH
4791Sun Jan 7 14:35:13 MET 2001 Jan Hubicka <jh@suse.cz>
4792
4793 * combine.c (combine_simplify_rtx): Recognize the unordered compares.
4794 (nonzero_bits): Likewise.
4795 (simplify_comparison): Likewise.
4796 (num_sign_bit_copies): Likewise; return more sane value depending
4797 on STORE_FLAG_VALUE.
4798 (known_cond): Do not assume EQ to be always true for equivalent
4799 operands.
4800
fd13313f
JH
4801Sun Jan 7 14:31:57 MET 2001 Jan Hubicka <jh@suse.cz>
4802
4803 * cse.c (fold_rtx): Handle unordered comparisons.
4804
91b2d119
JH
4805Sun Jan 7 13:49:19 MET 2001 Jan Hubicka <jh@suse.cz>
4806
4807 * rtlanal.c (set_of_1): New static function.
4808 (reg_set_last_1, reg_set_p_1, reg_set_reg, reg_set_flag,
4809 reg_set_last_unknown, reg_set_last_value, reg_set_last_first_regno,
4810 reg_set_last_last_regno): Remove.
4811 (set_of): New global function.
4812 (set_of_data): New structure.
4813 (reg_set_p, reg_set_last): Revamp for set_of.
4814 * rtl.h (set_of): New.
4815
796cdb65
JM
48162001-01-07 Joseph S. Myers <jsm28@cam.ac.uk>
4817
4818 * c-common.c (c_common_nodes_and_builtins): Add _Exit builtin.
4819 * extend.texi: Document _Exit builtin.
4820
7ca3d2b1
NB
48212001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
4822
825b6926
ZW
4823 * (initialize, initialize_builtins,
4824 initialize_dependency_output, initialize_standard_includes):
4825 Rename s/initialize/init. Update.
4826 (init_dependency_output): Move to after
4827 cpp_handle_options, the correct location temporally at least.
4828 (opt_comp): Move next to init (), its caller. Fix prototype.
4829 (init): Make "initialized" local scope.
4830 (cpp_create_reader): Always call init ().
4831 (cpp_start_read): Update.
4832 (output_deps): New function, broken out of cpp_finish.
4833 (cpp_finish): Break out output_deps.
7ca3d2b1 4834
34445094
RH
48352001-01-07 Richard Henderson <rth@redhat.com>
4836
4837 * collect2.c (COFF specific stuff): Revert 12-06 patch
4838 to prototype system functions.
4839
96a45535
MH
48402001-01-07 Michael Hayes <mhayes@redhat.com>
4841
4842 * hard-reg-set.h: Add multiple include guard.
4843 * basic-block.h (struct loop): Add `sink' field.
4844 * loop.h: Include sbitmap.h, hard-reg-set.h, and basic-block.h.
4845 (emit_iv_add_mult): Delete.
4846 (loop_iv_add_mult_hoist, loop_iv_add_mult_sink): Define.
4847 (loop_iv_add_mult_emit_before, loop_insn_sink): Define.
4848 (unroll_loop): Remove end_insert_before argument.
4849 * loop.c (loop_givs_rescan): Remove end_insert_before argument.
4850 (maybe_eliminate_biv_1): Likewise.
4851 (emit_iv_add_mult): Delete.
4852 (gen_add_mult, loop_regs_update): New.
4853 (loop_insn_emit_after, loop_insn_emit_before): New.
4854 (loop_insn_sink, loop_insn_sink_or_swim): New.
4855 (emit_iv_add_mult): Delete.
4856 (scan_loop): Set loop->sink.
4857 (loop_givs_reduce): Use loop_insn_sink and its ilk.
4858 (loop_givs_rescan, strength_reduce, check_dbra_loop): Likewise.
4859 (maybe_eliminate_biv_1): Likewise.
4860 (maybe_eliminate_biv_1): Add basic block argument.
4861 * unroll.c (unroll_loop): Remove end_insert_before argument.
4862 (find_splittable_regs): Likewise.
4863 (find_splittable_regs): Use loop_insn_sink and its ilk.
4864 (find_splittable_givs, final_biv_value, final_giv_value): Likewise.
4865
804a718a
MH
48662001-01-07 Michael Hayes <mhayes@redhat.com>
4867
4868 * loop.h (loop_insn_hoist): New prototype.
4869 * loop.c (loop_insn_hoist, loop_insn_emit_before): New.
4870 (move_movables, loop_givs_rescan): Use loop_insn_hoist.
4871 (check_dbra_loop, load_mems): Likewise.
4872 * unroll.c (unroll_loop, find_splittable_regs): Likewise.
4873 (find_splittable_givs): Likewise.
4874
30a1181a
MH
48752001-01-07 Michael Hayes <mhayes@redhat.com>
4876
4877 * loop.c (emit_iv_add_mult): Use single_set to examine new insn.
4878
cabf3891
RH
48792001-01-07 Richard Henderson <rth@redhat.com>
4880
4881 * sched-rgn.c (is_cfg_nonregular): Fix thinko's last change.
4882
9db0819e
RH
48832001-01-07 Richard Henderson <rth@redhat.com>
4884
4885 * Makefile.in (DRIVER_DEFINES): Define ENABLE_SHARED_LIBGCC and
4886 NO_SHARED_LIBGCC_MULTILIB as required for the target.
4887 * gcc.c (init_spec): Massage the existing libgcc_spec into a
4888 variant that handles a shared libgcc.
4889 (process_command): Always validate -{static,shared}-libgcc.
4890 (do_spec_1): New 'M' case.
4891 * invoke.text (Link Options): Document -{static,shared}-libgcc.
4892
2bbea3a6
RH
48932001-01-07 Richard Henderson <rth@redhat.com>
4894
4895 * Makefile.in (slibdir): New variable.
4896 (libgcc.mk): Pass SHLIB_INSTALL to mklibgcc.
4897 (installdirs): Create slibdir.
4898 (install-libgcc, install-multilib): Defer to libgcc.mk.
4899 * configure.in (slibdir): Substitute.
4900 * mklibgcc.in (install): New target.
4901
4902 * config/t-linux (SHLIB_LINK): Create links for the soname.
4903 (SHLIB_INSTALL): New.
4904 * config/alpha/t-osf4 (SHLIB_INSTALL): New.
4905 * config/mips/t-iris6 (SHLIB_INSTALL): New.
4906 * config/rs6000/t-aix43 (SHLIB_INSTALL): New.
4907 * config/sparc/t-slibgcc (SHLIB_INSTALL): New.
4908 * config/sparc/t-slibgcc-sld (SHLIB_INSTALL): New.
4909
fc51424c
RH
49102001-01-07 Richard Henderson <rth@redhat.com>
4911
4912 * config/rs6000/aix.h (LINK_LIBGCC_SPECIAL_1): New.
4913 * config/rs6000/rs6000.h (LIBGCC_SPEC): Remove.
4914 * config/rs6000/sysv4.h (LIBGCC_SPEC): Remove.
4915
1d7ae250
MH
49162001-01-07 Michael Hayes <mhayes@redhat.com>
4917
4918 * loop.c (count_loop_regs_set): Delete.
4919 (load_mems_and_recount_loop_regs_set): Delete.
4920 (loop_regs_scan): Merge common code from count_loop_regs_set,
4921 scan_loop, and load_mems_and_recount_loop_regs_set.
4922 (scan_loop): Call load_mems directly and loop_regs_scan
4923 again if new registers created.
4924
cd2a3ba2
NB
49252001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
4926
825b6926
ZW
4927 * toplev.c (main): Call the front-end specific post_options
4928 hook if one is given.
4929 * toplev.h (struct_lang_hooks, lang_hooks): New.
4930 * c-lang.c (c_post_options, lang_hooks): Implement lang_hooks
4931 for the C front end.
4932 * cp/decl2.c (cxx_post_options, lang_hooks): Implement
4933 lang_hooks for the C++ front end.
4934 * objc/objc-act.c (objc_post_options, lang_hooks): Implement
4935 lang_hooks for the ObjC front end.
4936 * f/com.c (lang_hooks): Hooks for the Fortran front end.
4937 * java/lang.c (lang_hooks): Hooks for the Java front end.
cd2a3ba2 4938
65289a3a
NB
49392001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
4940
825b6926
ZW
4941 * c-lex.c (init_c_lex): Request #define / #undef callbacks
4942 for verbose DWARF[2] debugging.
4943 (cb_define, cb_undef): The new callbacks.
4944 * toplev.h (debug_define, debug_undef): Make const correct.
4945 * toplev.c (debug_define, debug_undef): Similarly. Do not
4946 perform the verbosity tests here anymore.
65289a3a 4947
f759eb8b
AO
49482001-01-07 Alexandre Oliva <aoliva@redhat.com>
4949
4950 * reload.c (subst_reloads): Take INSN argument. When
4951 replacing a LABEL_REF in a JUMP_INSN, add a REG_LABEL note.
4952 * reload.h (subst_reloads): Adjust prototype.
4953 * reload1.c (reload_as_needed): Pass INSN to subst_reloads.
4954 * jump.c (mark_all_labels): Canonicalize any REG_LABEL notes
4955 present in JUMP_INSNs and copy them to JUMP_LABEL.
4956 * flow.c (find_label_refs, find_basic_blocks_1): Skip
4957 JUMP_INSNs and insns with REG_LABELs that are followed by
4958 JUMP_INSNs with the same REG_LABEL.
4959 * sched-rgn.c (is_cfg_nonregular): Likewise.
4960 * rtlanal.c (computed_jump_p): Make it false if a REG_LABEL
4961 note is available.
4962 * unroll.c (unroll_loop): Look for REG_LABEL notes in
4963 JUMP_INSNs too.
4964 * rtl.texi (REG_LABEL): Document usage in JUMP_INSNs.
4965
587f56c2
RH
49662001-01-06 Richard Henderson <rth@redhat.com>
4967
4968 * loop.c (scan_loop): Use xcalloc for the regs array.
4969 (load_mems_and_recount_loop_regs_set): Zero the new memory
4970 received from xrealloc.
4971
fa6f74f6
NB
49722001-01-06 Neil Booth <neil@daikokuya.demon.co.uk>
4973
4974 * mkdeps.c (deps_add_dep): Fix vector re-allocation.
4975
ea55fa7a
R
4976Sat Jan 6 00:09:34 2001 J"orn Rennecke <amylaar@redhat.com>
4977
4978 * integrate.c (copy_rtx_and_substitute): When copying
4979 an ignored return value, strip REG_FUNCTION_VALUE_P.
4980
c804f3f8
MH
49812001-01-06 Michael Hayes <mhayes@redhat.com>
4982
4983 * loop.c (debug_biv, debug_giv): New.
4984 (loop_biv_dump): Break out from ...
4985 (record_biv): ... here.
4986 (loop_giv_dump): Break out from ...
4987 (record_giv): ... here.
4988 (loop_bivs_check): Use print_simple_rtl.
4989 * unroll.c (loop_iterations): Use print_simple_rtl.
4990
d492b096
JDA
49912000-01-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
4992
4993 * pa.md (return, return_internal): Modify patterns to prevent regrename
4994 mucking with the return pointer.
4995
f7d2b0ed
RH
49962001-01-05 Richard Henderson <rth@redhat.com>
4997
4998 * dwarf2out.c (mem_loc_descriptor) [case MEM]: Revert 10-31 change.
4999
0426e049
NC
5000Fri Jan 5 16:34:18 2001 Nick Clifton <nickc@redhat.com>
5001
5002 * config/v850/lib1funcs.asm: Replace __mulsi3 routine with faster
5003 version supplied by Matteo Frigo.
5004
f7114e17
NB
50052001-01-05 Neil Booth <neil@daikokuya.demon.co.uk>
5006
825b6926
ZW
5007 * cpp.texi: Update for -MQ.
5008 * cppinit.c (cpp_create_reader): Always create pfile->deps.
5009 (cpp_cleanup): Always free pfile->deps.
5010 (initialize_dependency_output): Don't create pfile->deps.
5011 (cpp_handle_option): Similarly.
5012 (OPT_MQ): New.
5013 * gcc.c (cpp_options): Handle -MQ.
5014 (DEFAULT_WORD_SWITCH_TAKES_ARG): Add -MQ.
5015 * mkdeps.c (base_name): Remove.
5016 (deps_init): Don't allocate vector space until it's needed.
5017 (deps_free): Only free vectors if allocated.
5018 (deps_add_target, deps_add_dep): Update for initial allocation.
5019 (deps_add_default_target): Don't strip to the base_name.
f7114e17 5020
a64761a3
DD
50212001-01-05 DJ Delorie <dj@redhat.com>
5022
5023 * config/v850/v850.h (RETURN_ADDR_RTX): Define.
5024 (INIT_EXPANDERS): Define.
5025
5026 * config/v850/v850.c (struct machine_function): Define.
5027 (v850_save_machine_status): New function.
5028 (v850_restore_machine_status): New function.
5029 (v850_return_addr): New function.
5030 (v850_init_expanders): New function.
5031
5032 * config/v850/v850-protos.h: Add prototypes for v850_return_addr
5033 and v850_init_expanders.
825b6926 5034
f4cdc368
ZW
50352001-01-05 Zack Weinberg <zack@wolery.stanford.edu>
5036
5037 * cpplib.h (struct cpp_reader): Add help_only field.
5038 * cppinit.c (COMMAND_LINE_OPTIONS): Add OPT_version.
5039 (cpp_handle_option): Set pfile->help_only if we see -h,
5040 --help, -target-help, or --version. Print version string but
5041 do not set help_only if we see -v or -version. Make text
5042 printed by -v match that printed by (-)-version.
5043
5044 * cppmain.c (main): Exit after option parsing if
5045 pfile->help_only is true.
5046
5047 * toplev.c (independent_decode_option): Call print_version,
5048 then exit, if we see --version (but not -version).
5049 (print_version): Split lengthy message into two lines.
5050
3326b760
NC
50512001-01-05 Nick Clifton <nickc@redhat.com>
5052
5053 * config/v850/v850.c (v850_encode_data_area): Use alloca to create
5054 temporary string for initialisation before calling ggc_alloc_string.
5055
75b7557d
MH
50562001-01-06 Michael Hayes <mhayes@redhat.com>
5057
5058 * rtl.h (print_simple_rtl): New.
5059 * print-rtl.c (print_simple_rtl): New.
5060 (flag_simple): New.
5061 (print_rtx): Disable printing of flags and modes, etc.,
825b6926 5062 if `flag_simple` nonzero.
75b7557d 5063
b05467dc
ZW
50642001-01-05 Zack Weinberg <zack@wolery.stanford.edu>
5065
5066 * function.c (fixup_var_refs): Use push_to_full_sequence where
5067 possible.
5068
b883f801
MM
50692001-01-05 Michael Meissner <meissner@redhat.com>
5070
5071 * flags.h (flag_reorder_blocks): Add declaration.
5072 (flag_rename_block): Ditto.
5073
cc1fe44f
DD
50742001-01-05 DJ Delorie <dj@redhat.com>
5075
5076 * function.c (reorder_blocks): Make sure the flags are all reset
5077 before using them to mark blocks, else a second invocation will
5078 corrupt the block chain.
5079 (reorder_blocks_0): New, resets the flags.
5080
8b03b984
R
5081Fri Jan 5 20:34:06 2001 J"orn Rennecke <amylaar@redhat.com>
5082
5083 * cse.c (find_comparison_args): Stop if the argument is known to
5084 be constant.
5085
18a7c2a7
AO
50862001-01-05 Alexandre Oliva <aoliva@redhat.com>
5087
5088 * config/sh/sh.md (movdf): When splitting load into pair of
5089 registers, don't clobber the register used in the address too
5090 early.
5091
fcbd8ef2
JO
50922001-01-05 Jeffrey Oldham <oldham@codesourcery.com>
5093
5094 * varasm.c (mark_constant_pool): Improve initial comments.
5095 (mark_constants): Move marking of constants to mark_constant.
5096 (mark_constant): New function to recursively mark all constants
5097 referred to by a constant.
5098
ebb0cdf3
CM
50992001-01-05 Catherine Moore <clm@redhat.com>
5100
5101 * dbxout.c ((dbxout_parms): Handle invisible ref where decl is a REG.
5102
3b4e6a16
PE
51032001-01-05 Phil Edwards <pme@sources.redhat.com>
5104
5105 * cp/lang-options.h: Bring comment in line with reality.
5106 * f/lang-options.h: Likewise.
5107 * java/lang-options.h: Likewise.
5108 * objc/lang-options.h: Likewise.
5109 * ch/lang-options.h: Likewise.
5110 * f/g77.texi: And update the manual.
5111
dcfb1a36
MM
51122001-01-05 Marek Michalkiewicz <marekm@linux.org.pl>
5113 Denis Chertykov <denisc@overta.ru>
5114
5115 * config/avr/avr-protos.h (avr_peep2_scratch_safe): Prototype.
5116 * config/avr/avr.c (avr_peep2_scratch_safe): New function.
5117 * config/avr/avr.md (all peepholes that request a scratch register):
5118 Call it, FAIL the peephole if not safe (in interrupt functions).
5119
cef3d50c
MM
51202001-01-05 Mark Mitchell <mark@codesourcery.com>
5121
5122 * ggc-page.c (NUM_EXTRA_ORDERS): Hardwire to zero for now.
5123
341e3d11
JM
51242001-01-05 Joseph S. Myers <jsm28@cam.ac.uk>
5125
5126 * builtins.def (BUILT_IN_CONJ, BUILT_IN_CREAL, BUILT_IN_CIMAG):
5127 Define.
5128 * builtins.c (expand_builtin): Abort on BUILT_IN_CONJ,
5129 BUILT_IN_CREAL and BUILT_IN_CIMAG.
5130 * c-common.c (c_common_nodes_and_builtins): Create builtin conjf,
5131 conj, conjl, crealf, creal, creall, cimagf, cimag and cimagl.
5132 (expand_tree_builtin): Handle BUILT_IN_CONJ, BUILT_IN_CREAL and
5133 BUILT_IN_CIMAG.
5134 * extend.texi: Document these builtins.
5135
604bb87d
DB
51362001-01-05 Daniel Berlin <dberlin@redhat.com>
5137
5138 * c-common.c (lang_get_alias_set): Say we know nothing of
825b6926 5139 VECTOR_TYPE aliasing.
604bb87d
DB
5140
5141 * dwarf2out.c (is_base_type): Handle VECTOR_TYPE properly.
5142
15fe1a7e
BK
51432001-01-05 Bruce Korb <bkorb@gnu.org>
5144
5145 * fixinc/mkfixinc.sh(vax-*-bsd): convert exit and atexit calls to
5146 their x* equivalent versions for atexit-less systems
5147 * fixinc/fixincl.c(main): do not return from main() on atexit-less
5148 systems (or any other system any more).
5149
b0888988
RE
51502001-01-05 Richard Earnshaw <rearnsha@arm.com>
5151
5152 * arm.md (ldmsi_postinc): Avoid use of match_dup between input and
5153 output operands. Use arm_hard_register_operand for operand 4.
5154 (stmsi_postinc): Similarly.
5155 (ldmsi): Use arm_hard_register_operand for opernand 2.
5156 (stmsi): Similarly.
5157 * arm.c (arm_hard_register_operand): New function.
5158 * arm-protos.h (arm_hard_register_operand): Prototype it.
5159
5160 * arm.h (HARD_REGNO_RENAME_OK): Define.
5161
90a74703
JH
5162Fri Jan 5 16:29:49 MET 2001 Jan Hubicka <jh@suse.cz>
5163
5164 * simplify-rtx.c (cfc_args): add "unordered" field.
5165 (check_fold_consts): Set unordered field.
5166 (simplify_relational_operation): Simplify the unordered
5167 comparisons.
5168
5169 * reg-stack.c (swap_rtx_condition): Ensure that the transformation
5170 is valid.
5171
5172 * emit-rtl.c (try_split): Fix code to mark labels.
5173 * jump.c (mark_jump_label): Make global.
5174 * rtl.h (mark_jump_label): Declare.
5175
5176 * predict.c (estimate_probability): Handle unordred comparisons.
5177
a5a4ce3c
NB
51782001-01-05 Neil Booth <neil@daikokuya.demon.co.uk>
5179
825b6926
ZW
5180 * cpp.texi: Update for -MP. Clarify behaviour of -MT.
5181 * cppinit.c (initialize_dependency_output): Update.
5182 (cpp_finish): Output dummy targets for -MP.
5183 (OPT_MP): New.
5184 (cpp_handle_option): Handle -MP. Don't quote -MT options.
5185 * cpplib.h (struct cpp_options): Add deps_phony_targets.
5186 * gcc.c (cpp_options): Update to handle -MP.
5187 * mkdeps.c (deps_add_target, deps_add_default_target): Update
5188 to quote only the default target.
5189 (deps_phony_targets): Insert a preceding newline. Rename from
5190 deps_dummy_targets for consistency.
5191 * mkdeps.h: Update
a5a4ce3c 5192
97fc4caf
AO
51932001-01-05 Alexandre Oliva <aoliva@redhat.com>
5194
5195 * calls.c (emit_library_call_value_1): Support
5196 INIT_CUMULATIVE_LIBCALL_ARGS.
5197 * tm.texi (INIT_CUMULATIVE_LIBCALL_ARGS): Document it.
5198
ffc5c6a9
RH
51992001-01-04 Richard Henderson <rth@redhat.com>
5200
5201 * c-decl.c (finish_struct): Detect flexible array members
5202 used in an inappropriate context.
5203 * c-typeck.c (really_start_incremental_init): Special case
5204 constructor_max_index for zero length arrays.
5205 (pop_init_level): Allow initialization of flexible array
5206 members. Deprecate initialization of zero length arrays.
5207 Don't issue missing initializer warning for flexible array
5208 members or zero length arrays.
5209 (process_init_element): Don't dereference null DECL_SIZE.
5210 * varasm.c (array_size_for_constructor): Return a HOST_WIDE_INT.
5211 Don't abort for empty constructors. Use size_binop
825b6926 5212 (output_constructor): Add commentary regarding zero length
ffc5c6a9
RH
5213 array futures. Abort if we try to initialize an array of
5214 unspecified length with a non-empty constructor in the middle
5215 of a structure.
5216
5217 * extend.texi (Zero Length): Update and clarify documentation
5218 on static initialization.
5219
69f6e760
MH
52202001-01-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
5221
5222 * config/c4x/c4x.c (c4x_expand_prologue): Don't compile an ISR
5223 with more than 32767 words of local storage.
5224
06dd70c6
MH
52252001-01-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
5226
5227 * config/c4x/c4x.c (c4x_init_builtins): Remove builtin support
5228 for 'abs', 'labs', and 'fabs'.
5229 (c4x_expand_builtin): Likewise.
5230 * config/c4x/c4x.h (enum c4x_builtins): Likewise.
5231
99e87c10
AO
52322001-01-05 Alexandre Oliva <aoliva@redhat.com>
5233
5234 * config/sh/sh.md (prget, prset): New insn types.
5235 (return delay slot): Dont' allow prset.
5236 (call, sfunc delay slot): Don't allow prget.
5237 (movsi_i, movsi_ie, movsi_i_lowpart): Create separate alternatives
5238 for prset and prget.
5239
576d0b54 52402001-01-05 Michael Hayes <mhayes@redhat.com>
825b6926 5241
f1d4ac80
MH
5242 * loop.h (struct loop_reg): New.
5243 (struct loop_regs): Change to use array of `struct loop_reg'.
5244 * loop.c: Replace assortment of varrays with single regs array.
5245 (count_one_set): Delete may_not_move array argument
5246 and use regs array instead. All caller's changed.
5247 (count_loop_regs_set): Delete may_not_move and single_usage
5248 arguments and use regs array instead. All caller's changed.
5249 (find_single_use_in_loop): Replace usage array argument with pointer
5250 to regs structure. All caller's changed.
5251 (loop_optimize): Delete `moved_once' array.
5252
52532001-01-05 Michael Hayes <mhayes@redhat.com>
825b6926 5254
576d0b54
MH
5255 * loop.c (prescan_loop): Set loop_info->has_nonconst_call.
5256 Use it instead of loop_info->has_call for scanning loop mems.
5257 (check_dbra_loop): Replace loop_info->has_call test with
5258 loop_info->has_nonconst_call.
5259
616af7ee
MH
52602000-01-04 Matthew Hiller <hiller@redhat.com>
5261
5262 * config/sh/sh.h (EPILOGUE_USES): Recognize fpscr as epilogue-used
5263 for TARGET_SH3E.
5264
32812a40
JM
52652001-01-04 Joseph S. Myers <jsm28@cam.ac.uk>
5266
5267 * fold-const.c (fold): When folding a CONJ_EXPR of a COMPLEX_CST,
5268 use TREE_REALPART and TREE_IMAGPART instead of TREE_OPERAND.
5269
eaa7c03f
JM
52702001-01-04 Joseph S. Myers <jsm28@cam.ac.uk>
5271
5272 * c-common.c (SIZE_TYPE, WCHAR_TYPE): Define.
5273 (flag_short_double, flag_short_wchar): Define.
5274 (c_common_nodes_and_builtins): Create many tree nodes shared
5275 between C and C++ here instead of in cp/decl.c and ...
5276 * c-decl.c (init_decl_processing): ... here.
5277 (SIZE_TYPE, WCHAR_TYPE): Don't define.
5278 (flag_short_double, flag_short_wchar): Don't define.
5279 (record_builtin_type): New function.
5280 (build_void_list_node): New function.
5281 * c-common.h (flag_short_double, flag_short_wchar,
5282 record_builtin_type, build_void_list_node): Declare.
5283
e2a5f96b
R
5284Thu Jan 4 21:09:47 2001 J"orn Rennecke <amylaar@redhat.com>
5285
5286 * integrate.c (expand_inline_function): Don't put a virtual
5287 register into the reg map.
5288
5289 * function.c (fixup_var_refs_1): If force_operand didn't put
5290 the address into the target, move it there.
5291
2be510b8
MM
52922001-01-04 Mark Mitchell <mark@codesourcery.com>
5293
5294 Special-case tree_decl/tree_list allocations.
5295 * ggc-page.c (OBJECT_PER_PAGE): Reimplement.
5296 (OBJECT_SIZE): New macro.
5297 (NUM_EXTRA_ORDER): Likewise.
5298 (extra_order_size_table): New variable.
5299 (NUM_ORDERS): New macro.
5300 (objects_per_page_table): New variable.
5301 (object_size_table): New variable.
5302 (G.pages): Use NUM_ORDERS to bound the array.
5303 (G.page_tails): Likewise.
5304 (DIV_ROUND_UP): Remove.
5305 (BITMAP_SIZE): Use CEIL, instead of DIV_ROUND_UP.
5306 (alloc_page): Use OBJECT_SIZE.
5307 (size_lookup): Don't make it const.
5308 (ggc_alloc): Use OBJECT_SIZE.
5309 (ggc_set_mark): Likewise.
5310 (ggc_get_size): Likewise.
5311 (init_ggc): Set up the object_size_table, objects_per_page_table,
5312 and adjust size_lookup.
5313 (ggc_recalculate_in_use_p): Use CEIL, not DIV_ROUND_UP.
5314 (ggc_pop_context): Use NUM_ORDERS.
5315 (clear_marks): Likewise.
5316 (sweep_pages): Likewise.
5317 (poison_pages): Likewise.
5318 (ggc_print_statistics): Use OBJECT_SIZE.
5319
bf1aaf0a
RK
5320Thu Jan 4 15:54:05 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5321
5322 * varasm.c (output_constructor): Use HOST_WIDE_INT for sizes.
5323 Only call array_size_for_constructor if last field and array type
5324 with no upper bound.
5325
ceebdb09
PB
53262001-01-04 Philip Blundell <philb@gnu.org>
5327
5328 * config/arm/arm.c (arm_gen_constant): Prefer to emit constants
5329 from bit 31 downwards, if this requires no more insns.
5330 (count_insns_for_constant): New helper function for above.
5331
1fd4f141
AO
53322001-01-04 Alexandre Oliva <aoliva@redhat.com>
5333
5334 * gencodes.c (output_predicate_decls): Remove empty initializer.
5335
3af4c257
MM
53362001-01-04 Mark Mitchell <mark@codesourcery.com>
5337
5338 * tree.c (copy_node): Remove documentation about obstacks.
5339 (buidl1): Check that nobody tries to build 2-argument nodes this
5340 way.
5341
30472f46
KG
53422001-01-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5343
a41d0855
KG
5344 * sparc.h (PREDICATE_CODES): Delete fp_sethi_p, fp_mov_p and
5345 fp_high_losum_p.
5346
30472f46
KG
5347 * gencodes.c (output_predicate_decls): Fill empty initializer
5348 braces.
5349
c3843cea
JJ
53502001-01-04 Jakub Jelinek <jakub@redhat.com>
5351
5352 * tradcpp.c (deps_file, print_deps_missing_files): New variables.
5353 (main): Handle -MG, -MD, -MMD. Bail out if -MG is given without -M
5354 or -MM.
5355 (do_include): Handle missing headers like cpp0.
5356 * cppfiles.c (_cpp_execute_include): Don't prefix absolute header
5357 paths with first include pathname. Don't strcat to uninitialized
5358 string.
5359
f4d578da
BS
53602001-01-04 Bernd Schmidt <bernds@redhat.com>
5361
5362 * regrename.c (regrename_optimize): Don't rename from frame pointer
5363 if frame_pointer_needed.
5364 (do_replace): Don't set ORIGINAL_REGNO to a hard register number.
5365 * config/ia64/ia64.c (emit_all_group_insn_barriers): New function.
5366 (ia64_reorg): Use it instead of scheduling if ! optimize.
5367 (errata_emit_nops): Properly call asm_noperands.
5368 (ia64_sched_reorder): Finish cycle if we see an asm.
5369 (ia64_variable_issue): Clear scheduling state after asms.
5370
03b9ab42
NB
53712001-01-04 Neil Booth <neil@daikokuya.demon.co.uk>
5372
825b6926
ZW
5373 * cpp.texi: Update for -MT.
5374 * cppinit.c (initialize_dependency_output): Add a default
5375 target if none has been given already.
5376 (no_tgt, OPT_MT): New.
5377 (cpp_handle_option): Handle -MT. Update -M etc.
5378 * cpplib.h (struct cpp_options): Remove deps_target.
5379 * gcc.c (cpp_options): Handle -MT.
5380 * mkdeps.c (struct deps): Move from mkdeps.h.
5381 (deps_calc_target): Rename deps_add_default_target. Add a
5382 default target if none has been specified already.
5383 * mkdeps.h (struct deps): Move to mkdeps.c.
5384 (deps_calc_target): Rename deps_add_default_target.
03b9ab42 5385
584ef5fe
RH
53862000-01-03 Richard Henderson <rth@redhat.com>
5387
5388 * c-decl.c (grokdeclarator): Give zero-length arrays size zero.
5389 Remove dead code.
5390 * c-typeck.c (push_init_level): Move checks for flexible array
5391 members and zero length arrays ...
5392 (pop_init_level): ... here. Silently discard empty initializations.
5393 Remove dead code.
5394 * varasm.c (output_constructor): Update for sizeof change to
5395 zero-length arrays.
5396
5397 * extend.texi (Zero Length): Clarify semantics.
5398
04d430b8
AO
53992001-01-03 Alexandre Oliva <aoliva@redhat.com>
5400
5401 * configure.in (tm.h): Include isns-codes.h last.
5402 * configure: Rebuilt.
5403
e55a9a6e
RH
54042001-01-03 Richard Henderson <rth@redhat.com>
5405
5406 * config/alpha/alpha.md (addvsi3, addvdi3): New.
5407 (negvsi2, negvdi2, subvsi3, subvdi3, mulvsi3, mulvdi3): New.
825b6926 5408
fa5db828
FS
54092001-01-03 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
5410
5411 * tradcpp.c (main): Make sure finclude() is called with a valid
5412 indepth value while handling -include.
5413
975d393a
AO
54142001-01-03 Alexandre Oliva <aoliva@redhat.com>
5415
5416 * gencodes.c (output_predicate_decls): New function.
5417 (main): Call it.
5418 * machmode.h (GET_MODE_MASK): Arrange for it to be defined
5419 even if it is not the first time machmode.h is #included.
5420 * config/sh/sh.c (fpul_operand): Declare MODE argument.
5421 * tm.texi (PREDICATE_CODES): Document predicate declarations.
5422 * gcc.texi (Copyright): Added 2001.
5423
03dc0325
JM
54242001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
5425
5426 * c-common.c (c_common_lang_init): New function. Warn if format
5427 warning options which only have effects when used with -Wformat
5428 are used without -Wformat.
5429 * c-common.h (c_common_lang_init): Declare.
5430 * c-lang.c (lang_init): Call c_common_lang_init.
5431 * objc/objc-act.c (lang_init): Call c_common_lang_init.
5432
955be633
JM
54332001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
5434
5435 * configure.in: Check for the mktemp command.
5436 * configure: Regenerate.
5437 * gccbug.in: Use a separate temporary file $TEMP0 for one use of
5438 $TEMP. Create temporary files with mktemp, if available at
5439 configure time; otherwise use set -C. Remove temporary files
5440 before exit.
5441
fd939e46
JM
54422001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
5443
5444 * configure.in: Require at least texinfo 4.0. Check for whether
5445 Pod::Man is sufficiently recent to regenerate GCC manpages.
5446 * configure: Regenerate.
5447 * Makefile.in (TEXI2POD): Call perl explicitly rather than relying
5448 on #!.
5449 (GENERATED_MANPAGES): Define.
5450 (generated-manpages): New target. Depend on cpp.1 as well as
5451 gcov.1.
5452 (install-man): Depend on $(GENERATED_MANPAGES) (defined by
5453 configure to generated-manpages or empty) rather than on the
5454 manpages directly. Remove execute permission from installed
5455 gcov.1 as well as cpp.1.
5456 * cpp.1, gcov.1: Regenerate.
5457
819c1488
KG
54582001-01-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5459
5460 * builtins.c (expand_builtin_strncmp): Use host_integerp and
5461 tree_low_cst. Allow using cmpstrsi in more cases.
5462
f07d22aa
RK
5463Wed Jan 3 10:48:43 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5464
5465 * config/sparc/sparc.h (RETURN_IN_MEMORY): Return 0 for variable
5466 sized types.
5467
7ccb4206
AO
5468Wed Jan 3 12:22:32 2001 Alexandre Oliva <aoliva@redhat.com>
5469
5470 * build-make (HOST_CFLAGS): Added `-DGENERATOR_FILE'.
5471 * Makefile.in (HOST_CFLAGS): Mention build-make.
5472
a338321e
RK
5473Wed Jan 3 08:53:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5474
5475 * config/sparc/sparc.md (nonlocal_goto): Emit goto_handler_and_restore
5476 as JUMP_INSN.
5477
432fd734
BS
54782001-01-01 Bernd Schmidt <bernds@redhat.com>
5479
5480 * builtins.c (expand_builtin_return_addr): Don't use MEM_ALIAS_SET on
5481 a REG rtx.
5482
2be28ee2
BS
5483 * cse.c (cse_rtx_varies_p): Accept additional FROM_ALIAS arg. All
5484 callers changed.
5485
713f41f9
BS
5486 * alias.c (throughout): Use ORIGINAL_REGNO when accessing
5487 reg_base_value and reg_known_value arrays.
5488 (init_alias_analysis): Add more cases to detect known values.
5489 * sched-deps.c (deps_may_trap_p): New function.
5490 (sched_analyze_2): Use it.
5491
8f8d8d6e
AO
54922001-01-03 Alexandre Oliva <aoliva@redhat.com>
5493
5494 * combine.c (simplify_shift_const): Even if we're sign-extracting,
5495 don't discard an ASHIFTRT if we're shifting in a wider mode.
5496
232a132f
JDA
54972000-01-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
5498
5499 * toplev.c (rest_of_compilation): Don't print basic block information
5500 when CFG isn't up to date.
5501
19723541
ME
55022001-01-02 Mark Elbrecht <snowball3@bigfoot.com>
5503
5504 * config/i386/djgpp.h (DWARF2_DEBUGGING_INFO): Define.
5505 (UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_ASM_OP): Define.
5506 (UNALIGNED_SHORT_ASM_OP): Define.
5507 (CPP_PREDEFINES): Remove defines for GO32 and DJGPP.
5508
55560b9d
MM
55092001-01-02 Mark Mitchell <mark@codesourcery.com>
5510
5511 * fold-const.c (fold_convert): Fix typo.
5512
4f78b9a8
RH
55132001-01-02 Richard Henderson <rth@redhat.com>
5514
5515 * c-common.h (ASM_INPUT_P): New.
5516 * c-parse.in (asm): Set it when needed.
825b6926 5517 * c-semantics.c (genrtl_asm_stmt): Test it instead of the
4f78b9a8
RH
5518 existance of an operand.
5519
e2134eea
JH
5520Tue Jan 2 20:27:07 MET 2001 Jan Hubicka <jh@suse.cz>
5521
5522 * dwarf2out.c (stack_adjust_offset): Handle PRE_MODIFY.
5523 (dwarf2out_frame_debug_expr): Likewise.
5524 (mem_loc_descriptor): Handle PRE and POST_MODIFY.
5525
2b589241
JH
5526Tue Jan 2 20:21:31 MET 2001 Jan Hubicka <jh@suse.cz>
5527
5528 * i386.c (ix86_split_to_parts): Return number of part required;
5529 handle TFmodes.
5530 (print_operand, ix86_expand_branch, ix86_expand_fp_movcc): Handle
5531 TFmodes.
5532 (ix86_split_long_move): Use number of part returned
5533 by ix86_split_to_parts
5534 * i386.h (MASK_128BIT_LONG_DOUBLE, TARGET_128BIT_LONG_DOUBLE):
5535 New macros.
5536 (TARGET_SWITCHES): Add 128bit-long-double and 96bit-long-double
5537 (LONG_DOUBLE_TYPE_SIZE): Change from constant.
5538 (MAX_LONG_DOUBLE_TYPE_SIZE): New macro.
5539 (INTEL_EXTENDED_IEEE_FORMAT): Likewise.
5540 (ALIGN_MODE_128): Add TFmode.
5541 (IS_STACK_MODE): Likewise.
5542 (HARD_REGNO_NREGS): TFmode needs 3 registers.
5543 (HARD_REGNO_OK): Support TFmodes.
5544 (ASM_OUTPUT_LONG_DOUBLE): Handle TFmodes.
5545 * i386.md (scheduler definitions): Use memory operand to determine
5546 fst/fld instructions; use mode attribute to determine real mode of
5547 the instruction.
5548 (*tf): New patterns, expanders and splitters; based on XFmode patterns.
5549 * invoke.texi (128bit-long-double, 96bit-long-double): Document.
5550
330aa9a3
MM
55512001-01-02 Mark Mitchell <mark@codesourcery.com>
5552
5553 * tree.def (TRUTH_NOT_EXPR): Improve documentation.
5554
e0339ef7
RK
5555Tue Jan 2 10:47:38 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.
5556
5557 * expr.c (store_constructor_field): Update ALIGN before calling
5558 store_constructor.
5559
d07bec95
JO
55602001-01-02 Jeffrey Oldham <oldham@codesourcery.com>
5561
5562 * config/mips/mips.c (function_arg): Don't pass NULL_TREE to
5563 host_integerp.
5564
3719d27b
JO
55652001-01-02 Jeffrey Oldham <oldham@codesourcery.com>
5566
5567 * tm.texi (FUNCTION_ARG): Document that @var{type} can be an
5568 incomplete type.
5569
6d1c15cc
RK
5570Tue Jan 2 10:47:38 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.
5571
5572 * c-decl.c (start_function): Don't warn on third parameter to main.
5573
16b97540
KG
55742001-01-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5575
5576 * tsystem.h: Define HAVE_DECL_GETOPT.
5577
8515dc81
PB
55782001-01-02 Philip Blundell <pb@futuretv.com>
5579
825b6926 5580 * config/arm/linux-gas.h (CLEAR_INSN_CACHE): Avoid illegal clobber
8515dc81
PB
5581 of input operand.
5582
6f85e02b
RH
55832001-01-02 Richard Henderson <rth@redhat.com>
5584
5585 * alpha.md (*ze_and_ne): Duplicate insn condition to split.
5586
21c7361e
AJ
55872001-01-02 Andreas Jaeger <aj@suse.de>
5588
5589 * c-decl.c (c_decode_option): Remove support of
5590 -Wmissing-noreturn.
5591
5592 * toplev.c (documented_lang_options): Remove -Wmissing-noreturn.
5593 (W_options): Add -Wmissing-noreturn here.
5594
5595 * flow.c: Define lang_missing_noreturn_ok_p.
5596 (check_function_return_warnings): Use it.
5597
5598 * c-common.h: Declare lang_missing_noreturn_ok_p.
5599
5600 * c-lang.c (c_missing_noreturn_ok_p): New function.
5601 (lang_init): Set lang_missing_noreturn_ok_p.
5602
5603 * invoke.texi (Warning Options): Document this.
5604
5c25e11d
PE
56052000-12-27 Phil Edwards <pme@sources.redhat.com>
5606
5607 * extend.texi (C++ Extensions): New node for C++ attributes;
20f9202d 5608 describe init_priority and com_interface.
5c25e11d
PE
5609 * invoke.texi: Remove -finit-priority as it now has zero effect.
5610 * install.texi: Fix xref syntax.
5611 * md.texi: Likewise.
5612
d1608933
RK
5613Mon Jan 1 21:28:29 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5614
e428b937
RK
5615 * config.gcc (sparc64-wrs-vxworks*): New case.
5616 * config/sparc/vxsparc64.h, config/sparc/t-vxsparc64: New files.
5617
3276910d
RK
5618 * config/sparc/sparc.c (sparc_override_options): Do support different
5619 pointer and architecture size.
5620 * config/sparc/sparc.h (MIN_UNITS_PER_WORD): Always 4.
5621 (POINTERS_EXTEND_UNSIGNED): Define.
5622 (Pmode): Test TARGET_ARCH64, not TARGET_PTR64.
5623 (FUNCTION_MODE): Define to be Pmode.
5624 * config/sparc/sparc.md (64-bit call patterns): FUNCTION_MODE now DI.
5625
d1608933
RK
5626 * function.c (expand_function_end): Properly handle DECL_RESULT
5627 and copy when ptr_mode != Pmode.
5628 * expmed.c (make_tree): Convert X from Pmode to ptr_mode, if needed.
5629
c2e42aab
KG
56302001-01-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5631
5632 * c-common.c (c_common_nodes_and_builtins): Set prototype
5633 parameters for __builtin_fputs, __builtin_fputc and
5634 __builtin_fwrite. Don't declare plain fputc as a builtin.
5635
5b1ef594
JDA
56362001-01-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
5637
825b6926
ZW
5638 * loop.c (add_label_notes): Increment the label usage count when
5639 a note is added to an insn which refers to a CODE_LABEL.
5640 * gcse.c (add_label_notes): Likewise.
5b1ef594 5641
021d7b26
AJ
56422001-01-01 Andreas Jaeger <aj@suse.de>
5643
5644 * loop.c (scan_loop): Use xmalloc to allocate movables.
5645
cf011243
AO
56462001-01-01 Alexandre Oliva <aoliva@redhat.com>
5647
5648 * tm.texi (REGISTER_MOVE_COST): Add a mode argument.
5649 * reload.c (REGISTER_MOVE_COST): Likewise. Adjust all callers.
5650 * reload1.c (REGISTER_MOVE_COST): Likewise.
5651 * regclass.c (REGISTER_MOVE_COST): Likewise.
5652 (move_cost, may_move_in_cost, may_move_out_cost): Add mode
5653 dimension. Adjust all users.
5654 (init_reg_sets_1): Iterate on all modes.
5655 * config/1750a/1750a.h (REGISTER_MOVE_COST): Adjust.
5656 * config/a29k/a29k.h (REGISTER_MOVE_COST): Adjust.
5657 * config/alpha/alpha.h (REGISTER_MOVE_COST): Adjust.
5658 * config/arc/arc.h (REGISTER_MOVE_COST): Adjust.
5659 * config/arm/arm.h (REGISTER_MOVE_COST): Adjust.
5660 * config/avr/avr.h (REGISTER_MOVE_COST): Adjust.
5661 * config/c4x/c4x.h (REGISTER_MOVE_COST): Adjust.
5662 * config/d30v/d30v.h (REGISTER_MOVE_COST): Adjust.
5663 * config/dsp16xx/dsp16xx.h (REGISTER_MOVE_COST): Adjust.
5664 * config/h8300/h8300.h (REGISTER_MOVE_COST): Adjust.
5665 * config/i386/i386.h (REGISTER_MOVE_COST): Adjust.
5666 * config/ia64/ia64.h (REGISTER_MOVE_COST): Adjust.
5667 * config/m32r/m32r.h (REGISTER_MOVE_COST): Adjust.
5668 * config/m68hc11/m68hc11.h (REGISTER_MOVE_COST): Adjust.
5669 * config/m68k/m68k.h (REGISTER_MOVE_COST): Adjust.
5670 * config/mcore/mcore.h (REGISTER_MOVE_COST): Adjust.
5671 * config/mips/mips.h (REGISTER_MOVE_COST): Adjust.
5672 * config/mn10200/mn10200.h (REGISTER_MOVE_COST): Adjust.
5673 * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Adjust.
5674 * config/ns32k/ns32k.h (REGISTER_MOVE_COST): Adjust.
5675 * config/pa/pa.h (REGISTER_MOVE_COST): Adjust.
5676 * config/pdp11/pdp11.h (REGISTER_MOVE_COST): Adjust.
5677 * config/pj/pj.h (REGISTER_MOVE_COST): Adjust.
5678 * config/romp/romp.h (REGISTER_MOVE_COST): Adjust.
5679 * config/rs6000/rs6000.h (REGISTER_MOVE_COST): Adjust.
5680 * config/sh/sh.h (REGISTER_MOVE_COST): Adjust.
5681 * config/sparc/sparc.h (REGISTER_MOVE_COST): Adjust.
5682
e38fe8e0
BS
56832001-01-01 Bernd Schmidt <bernds@redhat.com>
5684
5685 * alias.c (fixed_scalar_and_varying_struct): Adjust prototype of
5686 arg VARIES_P. Call it with extra arg.
5687 (true_dependence): Likewise.
5688 * rtl.h (rtx_addr_can_trap_p): Declare.
5689 (rtx_varies_p, rtx_addr_varies_p, true_dependence): Update
5690 prototypes.
5691 * rtlanal.c (rtx_addr_can_trap_p): No longer static.
5692 (rtx_varies_p): Accept extra arg FOR_ALIAS; only disallow
5693 pic offset table register if it's zero. All callers changed.
5694 (rtx_addr_varies_p): Accept extra arg FOR_ALIAS; all callers changed.
5695
7a2bf7af
RK
5696Mon Jan 1 07:38:33 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5697
7d797311
RK
5698 * explow.c (convert_memory_address, case SYMBOL_REF): Copy
5699 STRING_POOL_ADDRESS_P.
5700
4746e0fe
RK
5701 * config/sparc/sparc.c (input_operand): Properly test for short op.
5702
fbd68e5d
RK
5703 * config.gcc (sparc-*-elf): Include sparc/sol2.h.
5704 (sparc-*-rtems*): Include sparc/sol2.h and sparc/elf.h.
5705 (sparclite-*-elf*, sparc86x-*-elf*): Likewise.
5706 * config/sparc/elf.h: No longer include sol2.h.
5707 * config/sparc/lifeelf.h: No longer include sparc/elf.h.
5708 * config/sparc/rtemself.h, config/sparc/sp86x-elf.h: Likewise.
5709
7a2bf7af
RK
5710 * config/sparc/sparc.md: Test TARGET_ARCH64 instead of TARGET_PTR64.
5711
14be28e5
MH
57122001-01-01 Michael Hayes <mhayes@redhat.com>
5713
86fee241
MH
5714 * loop.c (check_insn_for_bivs): Use ivs->n_regs to check array bounds.
5715 (find_mem_givs, record_biv, maybe_eliminate_biv): Likewise.
5716 (record_initial): Likewise.
5717 * unroll.c (copy_loop_body, loop_iterations): Likewise.
5718 (remap_split_bivs): Likewise.
5719
21c7361e 57202001-01-01 Michael Hayes <mhayes@redhat.com>
86fee241 5721
b2735d9a
MH
5722 * loop.c (loop_ivs_free): New function.
5723 (strength_reduce): Break out from...
5724
57252001-01-01 Michael Hayes <mhayes@redhat.com>
21c7361e 5726
14be28e5
MH
5727 * loop.h (struct iv): New.
5728 (REG_IV_TYPE, REG_IV_CLASS, REG_INFO): Modify to use 'struct iv'.
5729 (struct loop_ivs): Replace 'reg_iv_type', 'reg_iv_info',
5730 'reg_biv_class' fields with 'regs' and 'n_regs'.
5731 (struct ivs): Rename 'loop_iv_list' field to 'list'.
5732 * loop.c (loop_bivs_find, strength_reduce): Use ivs->regs array.
5733 * unroll.c (loop_iterations): Check array bounds with ivs->n_regs.
5734
1d2215fe
AO
57352000-12-31 Alexandre Oliva <aoliva@redhat.com>
5736
5737 * resource.c (mark_referenced_resources): Abort() before
5738 attempting to mark a pseudo register.
5739 (mark_set_resources): Likewise.
5740
8b634749
MH
57412001-01-01 Michael Hayes <mhayes@redhat.com>
5742
5743 * loop.h (REG_IV_CLASS): New accessor macro.
5744 * loop.c (REG_IV_CLASS): Use it instead of reg_iv_class array.
5745 * unroll.c (REG_IV_CLASS): Likewise.
21c7361e 5746
38fd12ea 5747See ChangeLog.4 for earlier changes.
This page took 0.81483 seconds and 5 git commands to generate.