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