]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
Makefile.in (cpp.info): Just state dependencies.
[gcc.git] / gcc / ChangeLog
CommitLineData
6280c439
MM
12003-08-29 Mark Mitchell <mark@codesourcery.com>
2
3 * Makefile.in (cpp.info): Just state dependencies.
4 (gcc.info): Likewise.
5 (gccint.info): Likewise.
6 (gccinstall.info): Likewise.
7 (cppinternals.info): Likewise.
8 (cpp.dvi): Likewise.
9 (gcc.dvi): Likewise.
10 (gccint.dvi): Likewise.
11 (gccinstall.dvi): Likewise.
12 (cppinternals.dvi): Likewise.
13 (gcov.1): Likewise.
14 (cpp.1): Likewise.
15 (gcc.1): Likewise.
16 (gfdl.7): Likewise.
17 (gpl.7): Likewise.
18 (fsf-funding.7): Likewise.
19 ($(objdir)/%.info): New pattern rule.
20 (%.dvi): Likewise.
21
e46f77a4
KC
222003-08-29 Kelley Cook <kelleycook@wideopenwest.com>
23
24 * Makefile.in (restage1): Pass BOOT_CFLAGS to recursive make.
25 (restage2): Likewise.
26 (restage3): Likewise.
27 (restage4): Likewise.
28 (restageprofile): Likewise.
29 (restagefeedback): Likewise.
30 (bubblestrap): Likewise.
31
8e3a7070
NN
322003-08-29 Nathanael Nerode <neroden@gcc.gnu.org>
33
34 * config.gcc: Narrow unsupported target match to avoid clobbering
35 i?86-sequent-sysv4*.
36
d119e83e
KG
372003-08-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
38
39 * builtins.c (mathfn_built_in): Handle new math builtins.
40
2be570f9
PB
412003-08-28 Per Bothner <per@bothner.com>
42
43 Fix (hopefully temporary) for breakage caused by my 08-21 patch.
44 * cpplex.c (_cpp_get_fresh_line): Check for null buffer.
45 (_cpp_lex_buffer): Likewise.
46 * cpptrad.c (_cpp_read_logical_line_trad): Likewise.
47
f1e77d83
UW
482003-08-28 Ulrich Weigand <uweigand@de.ibm.com>
49
50 * config/s390/s390.md ("*mulsi3_sign"): New insn.
51 ("mulsidi3" expander, "mulsi_6432" insn): Remove, replace by ...
52 ("mulsidi3"): ... this new insn.
53 ("umulsidi3"): New insn.
54 ("divmoddi3", "divmodtidi3", "divmodtisi3"): Simplify by using
55 mixed-mode matching constraints.
56 ("udivmodsi4", "udivmoddisi3"): New insns.
57 ("udivsi3", "umodsi3"): Use only in ESA/390 mode.
58
a2a919aa
KG
592003-08-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
60
61 * builtin-types.def (BT_INT_PTR, BT_FLOAT_PTR, BT_DOUBLE_PTR,
62 BT_LONGDOUBLE_PTR, BT_FN_FLOAT_FLOAT_FLOATPTR,
63 BT_FN_DOUBLE_DOUBLE_DOUBLEPTR,
64 BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLEPTR,
65 BT_FN_FLOAT_FLOAT_INTPTR, BT_FN_DOUBLE_DOUBLE_INTPTR,
66 BT_FN_LONGDOUBLE_LONGDOUBLE_INTPTR,
67 BT_FN_FLOAT_FLOAT_FLOAT_INTPTR, BT_FN_DOUBLE_DOUBLE_DOUBLE_INTPTR,
68 BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_INTPTR,
69 BT_FN_VOID_FLOAT_FLOATPTR_FLOATPTR,
70 BT_FN_VOID_DOUBLE_DOUBLEPTR_DOUBLEPTR,
71 BT_FN_VOID_LONGDOUBLE_LONGDOUBLEPTR_LONGDOUBLEPTR): New.
72 * builtins.def (BUILT_IN_FREXP, BUILT_IN_FREXPF, BUILT_IN_FREXPL,
73 BUILT_IN_MODF, BUILT_IN_MODFF, BUILT_IN_MODFL, BUILT_IN_REMQUO,
74 BUILT_IN_REMQUOF, BUILT_IN_REMQUOL, BUILT_IN_SINCOS,
75 BUILT_IN_SINCOSF, BUILT_IN_SINCOSL): New.
76 * tree.c: Assign new type_nodes.
77 * tree.h (tree_index): Add TI_FLOAT_PTR_TYPE, TI_DOUBLE_PTR_TYPE,
78 TI_LONG_DOUBLE_PTR_TYPE, TI_INTEGER_PTR_TYPE.
79 (float_ptr_type_node, double_ptr_type_node,
80 long_double_ptr_type_node, integer_ptr_type_node): New type_nodes.
81
82 * doc/extend.texi: Document new builtins.
83
488f17e1
KG
842003-08-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
85
86 * builtin-types.def (BT_FN_FLOAT_INT_FLOAT,
87 BT_FN_DOUBLE_INT_DOUBLE, BT_FN_LONGDOUBLE_INT_LONGDOUBLE): New.
88
89 * builtins.def (BUILT_IN_ERF, BUILT_IN_ERFC, BUILT_IN_ERFCF,
90 BUILT_IN_ERFCL, BUILT_IN_ERFF, BUILT_IN_ERFL, BUILT_IN_GAMMA,
91 BUILT_IN_GAMMAF, BUILT_IN_GAMMAL, BUILT_IN_J0, BUILT_IN_J0F,
92 BUILT_IN_J0L, BUILT_IN_J1, BUILT_IN_J1F, BUILT_IN_J1L,
93 BUILT_IN_JN, BUILT_IN_JNF, BUILT_IN_JNL, BUILT_IN_LGAMMA,
94 BUILT_IN_LGAMMAF, BUILT_IN_LGAMMAL, BUILT_IN_SIGNIFICAND,
95 BUILT_IN_SIGNIFICANDF, BUILT_IN_SIGNIFICANDL, BUILT_IN_TGAMMA,
96 BUILT_IN_TGAMMAF, BUILT_IN_TGAMMAL, BUILT_IN_Y0, BUILT_IN_Y0F,
97 BUILT_IN_Y0L, BUILT_IN_Y1, BUILT_IN_Y1F, BUILT_IN_Y1L,
98 BUILT_IN_YN, BUILT_IN_YNF, BUILT_IN_YNL): New.
99
100 * doc/extend.texi: Document new builtins.
101
199c4ccc
NN
1022003-08-28 Nathanael Nerode <neroden@gcc.gnu.org>
103
2882c718
NN
104 * fixinc/mkfixinc.sh: Remove special case code for unsupported
105 variants of i?86, powerpcle, and thumb.
199c4ccc
NN
106 * fixinc/mkfixinc.sh: Remove special case code for unsupported
107 arm and hppa variants.
108
98ff7c4d
KG
1092003-08-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
110
111 * builtin-types.def (BT_FN_INT_FLOAT, BT_FN_INT_DOUBLE,
112 BT_FN_INT_LONGDOUBLE, BT_FN_LONG_FLOAT, BT_FN_LONG_DOUBLE,
113 BT_FN_LONG_LONGDOUBLE, BT_FN_LONGLONG_FLOAT,
114 BT_FN_LONGLONG_DOUBLE, BT_FN_LONGLONG_LONGDOUBLE,
115 BT_FN_FLOAT_FLOAT_LONGDOUBLE, BT_FN_DOUBLE_DOUBLE_LONGDOUBLE,
116 BT_FN_FLOAT_FLOAT_INT, BT_FN_DOUBLE_DOUBLE_INT,
117 BT_FN_LONGDOUBLE_LONGDOUBLE_INT, BT_FN_FLOAT_FLOAT_LONG,
118 BT_FN_DOUBLE_DOUBLE_LONG, BT_FN_LONGDOUBLE_LONGDOUBLE_LONG,
119 BT_FN_FLOAT_FLOAT_FLOAT_FLOAT, BT_FN_DOUBLE_DOUBLE_DOUBLE_DOUBLE,
120 BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE): New.
121
122 * builtins.def (BUILT_IN_ACOS, BUILT_IN_ACOSF, BUILT_IN_ACOSH,
123 BUILT_IN_ACOSHF, BUILT_IN_ACOSHL, BUILT_IN_ACOSL, BUILT_IN_ASIN,
124 BUILT_IN_ASINF, BUILT_IN_ASINH, BUILT_IN_ASINHF, BUILT_IN_ASINHL,
125 BUILT_IN_ASINL, BUILT_IN_ATANH, BUILT_IN_ATANHF, BUILT_IN_ATANHL,
126 BUILT_IN_CBRT, BUILT_IN_CBRTF, BUILT_IN_CBRTL, BUILT_IN_COPYSIGN,
127 BUILT_IN_COPYSIGNF, BUILT_IN_COPYSIGNL, BUILT_IN_COSH,
128 BUILT_IN_COSHF, BUILT_IN_COSHL, BUILT_IN_DREM, BUILT_IN_DREMF,
129 BUILT_IN_DREML, BUILT_IN_EXP10, BUILT_IN_EXP10F, BUILT_IN_EXP10L,
130 BUILT_IN_EXP2, BUILT_IN_EXP2F, BUILT_IN_EXP2L, BUILT_IN_EXPM1,
131 BUILT_IN_EXPM1F, BUILT_IN_EXPM1L, BUILT_IN_FDIM, BUILT_IN_FDIMF,
132 BUILT_IN_FDIML, BUILT_IN_FMA, BUILT_IN_FMAF, BUILT_IN_FMAL,
133 BUILT_IN_FMAX, BUILT_IN_FMAXF, BUILT_IN_FMAXL, BUILT_IN_FMIN,
134 BUILT_IN_FMINF, BUILT_IN_FMINL, BUILT_IN_HYPOT, BUILT_IN_HYPOTF,
135 BUILT_IN_HYPOTL, BUILT_IN_ILOGB, BUILT_IN_ILOGBF, BUILT_IN_ILOGBL,
136 BUILT_IN_LDEXP, BUILT_IN_LDEXPF, BUILT_IN_LDEXPL, BUILT_IN_LLRINT,
137 BUILT_IN_LLRINTF, BUILT_IN_LLRINTL, BUILT_IN_LLROUND,
138 BUILT_IN_LLROUNDF, BUILT_IN_LLROUNDL, BUILT_IN_LOG10,
139 BUILT_IN_LOG10F, BUILT_IN_LOG10L, BUILT_IN_LOG1P, BUILT_IN_LOG1PF,
140 BUILT_IN_LOG1PL, BUILT_IN_LOG2, BUILT_IN_LOG2F, BUILT_IN_LOG2L,
141 BUILT_IN_LOGB, BUILT_IN_LOGBF, BUILT_IN_LOGBL, BUILT_IN_LRINT,
142 BUILT_IN_LRINTF, BUILT_IN_LRINTL, BUILT_IN_LROUND,
143 BUILT_IN_LROUNDF, BUILT_IN_LROUNDL, BUILT_IN_NEXTAFTER,
144 BUILT_IN_NEXTAFTERF, BUILT_IN_NEXTAFTERL, BUILT_IN_NEXTTOWARD,
145 BUILT_IN_NEXTTOWARDF, BUILT_IN_NEXTTOWARDL, BUILT_IN_POW10,
146 BUILT_IN_POW10F, BUILT_IN_POW10L, BUILT_IN_REMAINDER,
147 BUILT_IN_REMAINDERF, BUILT_IN_REMAINDERL, BUILT_IN_RINT,
148 BUILT_IN_RINTF, BUILT_IN_RINTL, BUILT_IN_SCALB, BUILT_IN_SCALBF,
149 BUILT_IN_SCALBL, BUILT_IN_SCALBLN, BUILT_IN_SCALBLNF,
150 BUILT_IN_SCALBLNL, BUILT_IN_SCALBN, BUILT_IN_SCALBNF,
151 BUILT_IN_SCALBNL, BUILT_IN_SINH, BUILT_IN_SINHF, BUILT_IN_SINHL,
152 BUILT_IN_TANH, BUILT_IN_TANHF, BUILT_IN_TANHL): New.
153
154 * doc/extend.texi: Document new builtins.
155
9e8327e3
UW
1562003-08-28 Ulrich Weigand <uweigand@de.ibm.com>
157
158 * config/s390/s390.c (legitmate_constant_p): Use LARL on
159 zSeries machines even in 31-bit addressing mode.
160 (legitimate_reload_constant_p): Likewise.
161 (legitimize_pic_address): Likewise.
162 (legitimize_tls_address): Likewise.
163 (s390_split_branches): Likewise.
164 (s390_dump_pool): Likewise.
165 (s390_mainpool_finish): Likewise.
166 (s390_chunkify_start): Likewise.
167 (s390_select_rtx_section): Likewise.
168 * config/s390/s390.md ("doloop_si"): Likewise.
169 ("pool_start_31", "pool_end_31"): Likewise.
170 ("pool_start_64", "pool_end_64"): Likewise.
171 ("main_base_31_small", "main_base_31_large"): Likewise.
172 ("main_base_64"): Likewise.
173 ("reload_base_31", "reload_base_64"): Likewise.
174 ("*movsi_larl"): New insn.
175 ("cjump", "icjump"): Use long branches on zSeries machines.
176 ("jump"): Likewise.
177 ("call"): Use BRASL on zSeries machines.
178 ("call_value", "call_value_tls"): Likewise.
179 ("brasl", "bras", "basr_64", "basr_31", "bas_64", "bas_31"): Remove
180 and replace by ...
181 ("*bras", "*brasl", "*basr") ... these new insns.
182 ("brasl_r", "bras_r", "basr_64_r", "basr_31_r", "bas_64_r",
183 "bas_31_r"): Remove and replace by ...
184 ("*bras_r", "*brasl_r", "*basr_r") ... these new insns.
185 ("brasl_tls", "bras_tls", "basr_64_tls", "basr_31_tls",
186 "bas_64_tls", "bas_31_tls"): Remove and replace by ...
187 ("*bras_tls", "*brasl_tls", "*basr_tls") ... these new insns.
188 ("*return_si", "*return_di"): Remove and replace by ...
189 ("*return"): ... this new insn.
190 ("rotlsi3"): Allow on zSeries machines.
191
192 * config/s390/s390.c (legitimize_reload_constant_p): Use
193 LL/LH type instructions in z/Architecture mode.
194 * config/s390/s390.md ("*movsi_lli"): Likewise.
195 ("*andsi3_ni", "*andhi3_ni", "*andqi3_ni"): Likewise.
196 ("*iorsi3_ni", "*iorhi3_ni", "*iorqi3_ni"): Likewise.
197 ("*extendqisi2"): Use LB in z/Architecture mode.
198 ("*zero_extendqisi2_64", "*zero_extendqisi2_31"): Use LLGC in
199 z/Architecture mode.
200 ("zero_extendqihi2", "*zero_extendqihi2_64", "*zero_extendqihi2_31"):
201 Likewise.
202
203 * config/s390/s390.md ("*tmdi_ext"): Allow in both 64-bit
204 and 31-bit mode.
205 ("ptr_extend"): Allow only in 64-bit mode.
206
0d037580
DJ
2072003-08-27 Daniel Jacobowitz <drow@mvista.com>
208
209 * gcc.c (STANDARD_EXEC_PREFIX, STANDARD_STARTFILE_PREFIX)
210 (TOOLDIR_BASE_PREFIX, STANDARD_BINDIR_PREFIX): Remove unnecessary
211 definitions.
212 (main): Only use standard_startfile_prefix if native.
213 * doc/tm.texi (STANDARD_STARTFILE_PREFIX): Update.
214
75ee800b
PB
2152003-08-27 Per Bothner <pbothner@apple.com>
216
217 * cpperror.c (print_location): Don't check for !pfile->buffer. That
218 test fails following my 08-21 change, and it seems unnecessary anyway.
219 (cpp_error): Likewise.
220
138ca312
JM
2212003-08-27 Jason Merrill <jason@redhat.com>
222
223 * real.c (do_multiply): Initialize with memset.
224
3d7ca167
ZD
2252003-08-27 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
226
227 * gcov.c (typedef struct arc_info): New field cs_count.
228 (accumulate_line_counts): Find cycles correctly.
229
5af2f3d3
UW
2302003-08-27 Ulrich Weigand <uweigand@de.ibm.com>
231
232 * config/s390/s390.c (struct machine_function): Remove member
233 literal_pool_label.
234 (s390_optimize_prolog): Replace TEMP_REG argument with
235 TEMP_USED and BASE_USED. Do not check get_pool_size ().
236 (general_s_operand): Accept all immediates before reload if
237 ALLOW_IMMEDIATE. If not ALLOW_IMMEDIATE, reject literal pool
238 references.
239 (s390_output_symbolic_const): Remove UNSPEC_LTREL_OFFSET handling.
240 (find_constant_pool_ref): Ignore UNSPECV_POOL_ENTRY insns.
241 (s390_alloc_pool): New function.
242 (s390_new_pool): Call it.
243 (s390_dump_pool): Add REMOTE_LABEL argument.
244 (s390_chunkify_start): Add BASE_REG argument. Do not check
245 get_pool_size ().
246 (s390_chunkify_finish): Add BASE_REG argument. Adapt
247 s390_dump_pool call.
248 (s390_pool_count, s390_nr_constants): Remove.
249 (s390_output_constant_pool): Remove.
250 (s390_mainpool_start): New function.
251 (s390_mainpool_finish): New function.
252 (s390_mainpool_cancel): New function.
253 (s390_reorg): Implement main literal pool handling.
254 (s390_emit_prologue): Emit main_pool placeholder instead of
255 literal_pool_31 / literal_pool_64 insns.
256 * config/s390/s390.h (s390_pool_count, s390_nr_constants): Remove.
257 (ASM_OUTPUT_POOL_PROLOGUE, ASM_OUTPUT_SPECIAL_POOL_ENTRY): Remove.
258 * config/s390/s390.md (UNSPEC_MAIN_BASE): New symbolic constant.
259 ("main_base_31_small", "main_base_31_large"): New insns.
260 ("main_base_64", "main_pool"): New insns.
261 ("literal_pool_31", "literal_pool_64"): Remove.
262
036e07f2
NN
2632003-08-27 Nathanael Nerode <neroden@gcc.gnu.org>
264
265 * fixinc/inclhack.def (ptx_netswap): New disabled fix, ported from
266 fixinc.ptx.
267 * fixinc/inclhack.def (undefine_null): Don't generate \r characters.
268 Prettify a little.
269 * fixinc/fixincl.x: Regenerate.
270
4202ce82
RE
2712003-08-27 Richard Earnshaw <rearnsha@arm.com>
272
273 * lib1funcs.asm (L_ieee754_sp): New. Include ieee754-sf.S.
274 (L_ieee754_dp): New. Include ieee754-df.S.
275 * arm/ieee754-sf.S: Rework to allow interworking, calling from Thumb,
276 and compilation in apcs-26 mode.
277 * arm/ieee754-df.S: Likewise.
278 * t-arm-elf (DPBIT, FPBIT, fp-bit.c dp-bit.c): Delete rules
279 (LIB1ASMFUNCS): Add _ieee754_sp and _ieee754_dp targets.
280
2812003-08-27 Nicolas Pitre <nico@cam.org>
282
283 * arm/ieee754-sf.S: New.
284 * arm/ieee754-df.S: New.
285
b7bc76e3
JJ
2862003-08-27 Jakub Jelinek <jakub@redhat.com>
287
288 * builtins.c (expand_builtin_expect_jump): Save pending_stack_adjust
289 and restore it if returning NULL.
290
648bb159
RS
2912003-08-27 Richard Sandiford <rsandifo@redhat.com>
292
293 * calls.c (initialize_argument_information): If an argument has no
294 stack space associated with it, and BLOCK_REG_PADDING is defined,
295 use it to decide at which end the argument should be padded.
296 * function.c (assign_parms): Allocate BLKmode stack slots.
297 * config/mips/mips-protos.h (mips_pad_arg_upward): Declare.
298 (mips_pad_reg_upward): Declare.
299 * config/mips/mips.h (PAD_VARARGS_DOWN): Use FUNCTION_ARG_PADDING.
300 (CUMULATIVE_ARGS): Remove num_adjusts and adjusts.
301 (FUNCTION_ARG_PADDING): Use mips_pad_arg_upward.
302 (BLOCK_REG_PADDING): Use mips_pad_reg_upward.
303 * config/mips/mips.c (struct mips_arg_info): Remove struct_p.
304 (mips_expand_call): Remove code for generating structure shifts.
305 (mips_arg_info): Don't set struct_p. Don't set fpr_p for non-float
306 types unless using the EABI.
307 (function_arg_advance): Don't generate shift instructions.
308 (function_arg): Don't return them. Don't short-circuit the
309 check for double structure chunks for DFmode arguments.
310 (mips_pad_arg_upward, mips_pad_reg_upward): New functions.
311 (mips_expand_prologue): Remove code to emit structure shifts.
312 * config/mips/irix6-libc-compat.c: Remove workarounds for buggy
313 structure passing (inet_ntoa, inet_lnaof, inet_netof). Update
314 comments to say that only structure returns are a problem.
315
228e7b62
NN
3162003-08-26 Nathanael Nerode <neroden@gcc.gnu.org>
317
88f505f6
NN
318 * fixinc/tests/base/string.h, fixinc/tests/base/sys/regset.h:
319 Fix to match produced versions.
320 * fixinc/inclhack.def (longlong_t): New disabled test, ported
321 from fixinc.svr4.
7309576c
NN
322 * fixinc/inclhack.def (ptx_pwd_h): New disabled fix, ported
323 from fixinc.ptx.
228e7b62
NN
324 * fixinc/inclhack.def (ptx_sys_mc_param_h): New disabled fix,
325 ported from fixinc.ptx.
326
dc3786d8
PB
3272003-08-26 Per Bothner <pbothner@apple.com>
328
329 * cpplib.h (struct cpp_token): Change type of field line to fileline.
330 (cpp_error_with_line): Use fileline for appropriate parameter.
331 * cpphash.h (struct cpp_macro): Change type of field line to fileline.
332 (struct cpp_reader): Likewise for fields line and directive_line.
333 (_cpp_begin_message): Use fileline for appropriate parameter.
334 * cpperror.c (print_location, _cpp_begin_message, cpp_error_with_line,
335 cpp_error): Use fileline for appropriate parameters and variables.
336 (print_location): New local lin, since it is not a fileline.
337
00229de4
RS
3382003-08-26 Roger Sayle <roger@eyesopen.com>
339
340 PR middle-end/12002
341 * tree.h (SCALAR_FLOAT_TYPE_P, COMPLEX_FLOAT_TYPE_P): New macros.
342 (FLOAT_TYPE_P): Define in terms of these two new macros.
343 * fold-const.c (fold <PLUS_EXPR>): Don't convert x+x into x*2.0
344 for complex floating point types.
345
b41ead3e
UW
3462003-08-26 Ulrich Weigand <uweigand@de.ibm.com>
347
348 * config/s390/s390.c (emit_prologue): Don't check literal pool size.
349 * config/s390/s390.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Call
350 s390_output_pool_entry.
351
c2f523ea
NN
3522003-08-26 Nathanael Nerode <neroden@gcc.gnu.org>
353
354 * fixinc/inclhack.def (svr4_preproc_lint_on,
355 svr4_preproc_lint_off, svr4_preproc_machine): New disabled
356 fixes, ported from fixinc.svr4.
357
e158a5fb
MM
3582003-08-26 Mark Mitchell <mark@codesourcery.com>
359
360 * doc/install.texi (Prerequisites): Mention GNU make requirement.
361
362 * Makefile.in (AR_FOR_TARGET): Export it.
363 (AR_CREATE_FOR_TARGET): Likewise.
364 (AR_FLAGS_FOR_TARGET): Likewise.
365 (AR_EXTRACT_FOR_TARGET): Likewise.
366 (AWK): Likewise.
367 (BUILD_PREFIX): Likewise.
368 (BUILD_PREFIX_1): Likewise.
369 (DESTDIR): Likewise.
370 (GCC_FOR_TARGET): Likewise.
371 (INCLUDES): Likewise.
372 (INSTALL_DATA): Likewise.
373 (LIB1ASMSRC): Likewise.
374 (LIBGCC2_CFLAGS): Likewise.
375 (MACHMODE_H): Likewise.
376 (NM_FOR_TARGET): Likewise.
377 (RANLIB_FOR_TARGET): Likewise.
378 (libsubdir): Likewise.
379 (slibdir): Likewise.
380 (ORDINARY_FLAGS_TO_PASS): Remove stuff that we're
381 exporting.
382 (libgcc.a): Don't pass them here.
383 (stmp-multilib): Or here.
384 (install-libgcc): Or here.
385 (install-multilib): Or here.
386 (POSTSTAGE1_FLAGS_TO_PASS): Or here.
387 (stage1_build): Or here.
388
288e517f
AK
3892003-08-26 Andreas Krebbel <krebbel1@de.ibm.com>
390
391 * config/s390/s390.md ("*llgt_sisi", "*llgt_sisi_split", "*llgt_didi",
392 "*llgt_didi_split", "*llgt_sidi", "*llgt_sidi_split"): New insns.
393
a1b892b5
AK
3942003-08-26 Andreas Krebbel <krebbel1@de.ibm.com>
395
396 * config/s390/s390.md ("*fmadddf", "*fmsubdf",
397 "*fmaddsf", "*fmsubsf"): New insns.
398
e3232933
RS
3992003-08-26 Roger Sayle <roger@eyesopen.com>
400
401 * fold-const.c (fold <MULT_EXPR>): Optimize (C1/X)*C2 into
402 (C1*C2)/X when unsafe math optimizations are allowed.
403 (fold <RDIV_EXPR>): Optimize C1/(X*C2) into (C1/C2)/X with unsafe
404 math optimizations. Minor code clean-ups. Recursively call
405 fold when constructing sub-expressions.
406
cf42869d
RS
4072003-08-26 Roger Sayle <roger@eyesopen.com>
408
409 * builtins.c (fold_builtin_bitop): New function to perform constant
410 folding of ffs, clz, ctz, popcount and parity builtin functions
411 and their long and long long variants (such as ffsl and ffsll).
412 (fold_builtin): fold_builtin_bitop when appropriate.
413 * simplify-rtx.c (simplify_unary_operation): Honor both
414 CLZ_DEFINED_VALUE_AT_ZERO and CTZ_DEFINED_VALUE_AT_ZERO when
415 evaluating clz and ctz at compile-time, for operands wider
416 than HOST_WIDE_INT.
417
d128effb
NS
4182003-08-26 Nathan Sidwell <nathan@codesourcery.com>
419
20b50672
NS
420 * builtins.c (build_function_call_expr): Don't set
421 TREE_SIDE_EFFECTS here.
422 * expr.c (emit_block_move_via_libcall): Likewise.
423 (clear_storage_via_libcall): Likewise.
424 * tree.c (build): Set TREE_SIDE_EFFECTS for non-const, non-pure
425 CALL_EXPRs.
426
d128effb
NS
427 * gcse.c (is_too_expensive): New function.
428 (gcse_main, delete_null_pointer_checks, bypass_jumps): Use it.
429
7e2055ec
ZW
4302003-08-25 Zack Weinberg <zack@codesourcery.com>
431
432 * config.gcc (hppa*-*-hpux11*, ia64*-*-hpux*): Remove
433 commented-out logic to use DCE threads (if present), add
434 support for POSIX threads.
435 * config/ia64/hpux.h: Define CPP_SPEC to set appropriate
436 #defines for -pthread. Add -lpthread to LIB_SPEC when
437 -pthread. In both cases take -mt as a synonym for -pthread
438 for acc compatibility.
439 Define GTHREAD_USE_WEAK to 0.
440 * config/pa/pa-hpux11.h: Likewise for CPP_SPEC and LIB_SPEC.
441 Remove old logic for DCE threads from LIB_SPEC.
442 * config/pa/pa64-hpux.h: Define GTHREAD_USE_WEAK to 0.
443
8634629b
RS
4442003-08-25 Roger Sayle <roger@eyesopen.com>
445
446 * builtins.c (expand_builtin_mathfn): Rearrange so that we only
447 return 0 for invalid argument types. Instead drop through to a
448 call of expand_call at the bottom of function. If op is SQRT,
449 try attaching a SQRT rtx as the REQ_EQUAL note of the libcall.
450
0d433a6a
RH
4512003-08-25 Richard Henderson <rth@redhat.com>
452
453 * config/ia64/ia64.c (ia64_expand_tls_address): Properly truncate
454 result when op0 is SImode.
7e2055ec 455
1d109416
NN
4562003-08-25 Nathanael Nerode <neroden@twcny.rr.com>
457
458 * fixinc/inclhack.def (svr4_sighandler_type): New fix, ported
459 from fixinc.svr4.
460 * fixinc/fixincl.x: Regenerate.
461 * fixinc/tests/base/sys/signal.h: Regenerate.
462
dc5c3188
UW
4632003-08-25 Ulrich Weigand <uweigand@de.ibm.com>
464
465 * combine.c (simplify_comparison): Re-enable widening of comparisons
466 with non-paradoxical subregs of non-REG expressions.
467
b01e3e38
UW
4682003-08-25 Ulrich Weigand <uweigand@de.ibm.com>
469
470 * combine.c (distribute_notes): Handle REG_ALWAYS_RETURN.
471
c6279378
UW
4722003-08-25 Ulrich Weigand <uweigand@de.ibm.com>
473
474 * combine.c (combine_simplify_rtx): Fix RTL sharing bug.
475
12ea3302
GDR
4762003-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
477
478 * pretty-print.h (pp_maybe_newline_and_indent): New macro.
479 * c-pretty-print.h (c_pretty_printer): Now typedef to the
480 structure. Be consistent with pretty-print.h abd cxx-pretty-print.h
481 (struct c_pretty_print_info): Document. Add new fields.
482 (pp_type_specifier_seq): Rename from pp_c_type_specifier.
483 (pp_direct_abstract_declarator): New macro.
484 (pp_ptr_operator): Likewise.
485 (pp_simple_type_specifier): Likewise.
486 (pp_expression): Likewise.
487 (pp_parameter_list): Rename from pp_parameter_declaration.
488 * c-pretty-print.c (pp_c_whitespace): Now a function.
489 (pp_c_left_paren): Likewise.
490 (pp_c_right_paren): Likewise.
491 (pp_c_dot): Likewise.
492 (pp_c_ampersand): Likewise.
493 (pp_c_arrow): Likewise.
494 (pp_c_semicolon): Likewise.
495 (pp_c_type_cast): New function.
496 (pp_c_space_for_pointer_operator): Likewise.
497 (pp_c_call_argument_list): Likewise.
498 (pp_c_cv_qualifier): Adjust prototype.
499 (pp_c_type_qualifier_list): Likewise.
500 (pp_c_pointer): Likewise. Handle REFERENCE_TYPE here.
501 (pp_c_type_specifier): Rename from pp_c_simple_type_specifier.
502 Adjust to follow standard grammar.
503 (pp_c_specifier_qualifier_list): Adjusr prototype. Handle
504 REFERENCE_TYPE. Tidy.
505 (pp_c_parameter_type_list): Adjust prototype. Tidy.
506 (pp_c_parameter_declaration): Remove.
507 (pp_c_abstract_declarator): Adjust prototype.
508 (pp_c_direct_abstract_declarator): Likewise.
509 (pp_c_type_id): Likewise.
7e2055ec 510 (pp_c_storage_class_specifier): Likewise.
12ea3302
GDR
511 (pp_c_function_specifier): Likewise.
512 (pp_c_declaration_specifiers): Likewise.
513 (pp_c_direct_declarator): Likewise.
514 (pp_c_declarator): Likewise.
515 (pp_c_declarator): Likewise.
516 (pp_c_declaration): Likewise.
517 (pp_c_attributes): Likewise. Tidy.
518 (pp_c_function_definition): Adjust prototype.
519 (pp_c_char): Likewise.
520 (pp_c_string_literal): Likewise.
521 (pp_c_integer_constant): Likewise.
522 (pp_c_character_constant): Likewise.
523 (pp_c_bool_constant): Likewise.
524 (pp_c_enumeration_constant): Likewise.
525 (pp_c_floating_constant): Likewise.
526 (pp_c_constant): Likewise.
527 (pp_c_identifier): Likewise.
528 (pp_c_primary_expression): Likewise. Remove TARGET_EXPR case. Tidy.
529 (pp_c_initializer): Adjust prototype.
530 (pp_c_init_declarator): Likewise.
531 (pp_c_initializer_list): Likewise.
532 (pp_c_id_expression): Likewise.
533 (pp_c_postfix_expression): Likewise.
534 (pp_c_expression_list): Likewise.
535 (pp_c_unary_expression): Likewise.
536 (pp_c_cast_expression): Likewise.
537 (pp_c_multiplicative_expression): Likewise.
538 (pp_c_additive_expression): Likewise.
539 (pp_c_shift_expression): Likewise.
540 (pp_c_relational_expression): Likewise.
541 (pp_c_equality_expression): Likewise.
542 (pp_c_and_expression): Likewise.
543 (pp_c_exclusive_or_expression): Likewise.
544 (pp_c_inclusive_or_expression): Likewise.
545 (pp_c_logical_and_expression): Likewise.
546 (pp_c_logical_or_expression): Likewise.
547 (pp_c_conditional_expression): Likewise.
548 (pp_c_assignment_expression): Likewise.
549 (pp_c_expression): Likewise. Tidy.
550 (pp_c_statement): Likewise. Document.
551 (pp_c_pretty_printer_init): Adjust prototype. Tidy.
552
553 * c-lang.c (c_initialize_diagnostics): Update.
554 * c-common.h (strip_pointer_operator): Declare.
555 * c-common.c (strip_pointer_operator): Define.
556
43dc123f
MM
5572003-08-25 Mark Mitchell <mark@codesourcery.com>
558
559 PR c++/8795
560 * tree.h (build_method_type_directly): Declare.
561 * c-common.c (handle_vector_size_attributes): Handle METHOD_TYPEs.
562 (vector_size_helper): Likewise.
563 * tree.c (build_method_type_directly): New function.
564 (build_method_type): Use it.
565
a30b6839
RH
5662003-08-24 Richard Henderson <rth@redhat.com>
567
568 * config/i386.i386.c (ix86_return_in_memory): Reformat. Return true
569 for 16-byte vector modes if sse not enabled; warn for abi change.
570 (ix86_value_regno): Only return xmm0 for 16-byte vector types.
571
30c3267c
KH
5722003-08-24 Kazu Hirata <kazu@cs.umass.edu>
573
574 * rtlanal.c (may_trap_p): Simplify an integer comparison.
575
791996d1
NN
5762003-08-24 Nathanael Nerode <neroden@gcc.gnu.org>
577
578 * fixinc/inclhack.def (AAB_svr4_replace_byteorder): Enhance
579 comment. Enable for DYNIX/ptx systems (when they switch to
580 regular fixincludes).
581 * fixinc/fixincl.x: Regenerate.
582
b882d60d
JE
5832003-08-23 Jason Eckhardt <jle@rice.edu>
584
585 * config/i860/t-i860: New.
586 * config.gcc (i860-*-sysv4*): Add t-i860 to tmake_file.
587
61c234ce
JJ
5882003-08-23 Jakub Jelinek <jakub@redhat.com>
589
590 * c-decl.c (pushdecl): Only put decls which finish_struct will do
591 something about onto incomplete chain.
592 (finish_struct): If not removing type from incomplete
593 list, update prev.
594
ebe75517
JH
595Wed Aug 20 12:08:55 CEST 2003 Jan Hubicka <jh@suse.cz>
596
597 PR target/11369
598 * i386.c (ix86_expand_carry_flag_compare): Validate operand.
599
600 PR target/11031
601 * i386.c (const_0_to_3_operand, const_0_to_7_operand,
602 const_0_to_15_operand, const_0_to_255_operand): New predicates.
603 * i386.h (PREDICATE_CODES): Add these.
604 * i386.c (pinsrw and pextrw patterns): Use them.
605
606 PR target/10984
607 * i386.c (ix86_expand_binop_builtin): Behave sanely for VOIDmodes.
608
609 PR target/8869
610 * expr.c (convert_modes): Deal properly with integer to vector
611 constant conversion.
612
613 PR target/8871
614 * i386.md (zero_extendsidi2*): Add MMX and SSE alternatives.
615
02ed3c5e
UW
6162003-08-23 Ulrich Weigand <uweigand@de.ibm.com>
617
618 * config/s390/s390.h (LOAD_EXTEND_OP): Remove.
619 * config/s390/s390.md ("movhi"): New expander; old insn renamed to ...
620 ("*movhi"): ... this.
621 ("movqi", "*movqi"): Likewise.
622 ("movqi_64"): Remove.
623 ("*zero_extendhisi2_31"): Change predicate to s_operand.
624
643642eb
DJ
6252003-08-23 Dale Johannesen <dalej@apple.com>
626 * calls.c (emit_library_call_value_1): Fix obvious errors in
f346cc37 627 arguments to emit_group_store.
643642eb 628
edf11bda
JE
6292003-08-23 Jason Eckhardt <jle@rice.edu>
630
631 * calls.c (emit_library_call_value_1): Remove code related
632 to LIBGCC_NEEDS_DOUBLE.
633 * config/stormy16/stormy16.h: Remove mention of LIBGCC_NEEDS_DOUBLE.
634 * doc/tm.texi: Likewise.
635 * system.h: Poison the LIBGCC_NEEDS_DOUBLE macro.
636
e2a188b2
RS
6372003-08-23 Richard Sandiford <rsandifo@redhat.com>
638
639 * config/mips/linux64.h (STARTFILE_PREFIX_SPEC): Remove.
640
520d96c6
RS
6412003-08-23 Richard Sandiford <rsandifo@redhat.com>
642
643 * config/mips/mips.c (mips_setup_incoming_varargs): Handle o32 and o64
644 as well. Put memory references in the varargs alias set.
645 (mips_expand_prologue): Remove varargs handling from here.
646
47798692
UW
6472003-08-23 Ulrich Weigand <uweigand@de.ibm.com>
648
649 * config/s390/s390.c (s390_expand_movstr, s390_expand_clrstr,
650 s390_expand_cmpmem, s390_output_constant_pool, s390_build_va_list,
651 s390_function_profiler, s390_output_mi_thunk): Use ISO C syntax
652 for function pointer calls.
653 * config/s390/s390.md ("*negdi2_31"): Likewise.
654
a0209ac2
RS
6552003-08-23 Roger Sayle <roger@eyesopen.com>
656
657 * combine.c (apply_distributive_law): Correct comment.
658
fe232263
JE
6592003-08-23 Jason Eckhardt <jle@rice.edu>
660
661 * config/i860/i860.h: Remove comment mentioning LIBGCC_NEEDS_DOUBLE.
662
5dab8d92
JE
6632003-08-22 Jason Eckhardt <jle@rice.edu>
664
665 * config/i860/i860.c (i860_build_va_list): Create the va_decl
666 declaration. Document the va_list structure.
667 (i860_va_start): Initialize the va_list structure.
668 (i860_va_arg): Rewrite completely.
669 * config/i860/i860.h (LIBGCC_NEEDS_DOUBLE): Don't define.
670 * config/i860/varargs.asm: Do not allocate or initialize
671 a va_list. Return the address of the register save area.
672
2cac216b
KH
6732003-08-22 Kazu Hirata <kazu@cs.umass.edu>
674
675 * config/iq2000/iq2000.c: Fix comment typos.
676 * config/iq2000/iq2000.md: Likewise.
677
4375e090
KH
6782003-08-22 Kazu Hirata <kazu@cs.umass.edu>
679
680 * config/iq2000/iq2000.c: Follow spelling conventions.
681 * config/iq2000/iq2000.h: Likewise.
682 * config/mn10300/mn10300.c: Likewise.
683
a36b8cb8
JE
6842003-08-22 Jason Eckhardt <jle@rice.edu>
685
686 * config/i860/i860.c (output_move_double): Don't set latehalf
687 to zero for CONST_INT (since it could be, e.g., -1).
688
689 * config/i860/i860.h (REMSI3_LIBCALL): Replace this macro...
690 (MODSI3_LIBCALL): ...with this one.
691 (UREMSI3_LIBCALL): Replace this macro...
692 (UMODSI3_LIBCALL): ...with this one.
693
89520fd7
JE
6942003-08-22 Jason Eckhardt <jle@rice.edu>
695
696 * config/i860/i860-protos.h (output_delay_insn): Remove prototype.
697 (output_delayed_branch): Remove prototype.
698 (single_insn_src_p): Remove prototype.
699 * config/i860/i860.c (single_insn_src_p): Remove function.
700 (output_delayed_branch): Remove function.
701 (output_delay_insn): Remove function.
702 (va_start): Remove unconditional test and dead code, re-format.
703 Fix coding style and spelling problems in various comments.
704 * config/i860/i860.md (UNSPECV_BLOCKAGE): Define constant...
705 (blockage pattern): ...and use it here.
706 (all define_peephole patterns related to delayed branches): Remove.
707 Fix coding style and spelling problems in various comments.
708
8274e603
JE
7092003-08-22 Jason Eckhardt <jle@rice.edu>
710
711 * config/i860/i860.c: Replace all occurrences of 'GNU CC' with 'GCC'.
712 Remove all uses of the PARAMS macro. Remove superflous prototypes.
713 Convert all function definitions from traditional to ISO C90 syntax.
714 * config/i860/i860-protos.h: Replace all occurrences of 'GNU CC'
715 with 'GCC'. Remove all uses of the PARAMS macro.
716 * config/i860/i860.h: Replace all occurrences of 'GNU CC' with 'GCC'.
717 * config/i860/i860.md: Likewise.
718 * config/i860/sysv4.h: Likewise.
719 * config/i860/varargs.asm: Likewise.
720
cfbdb830
JE
7212003-08-22 Jason Eckhardt <jle@rice.edu>
722
723 * config/i860/i860-protos.h (i860_va_start): Remove 'stdarg_p'
724 argument.
725 (tdesc_section): Add prototype.
726 Update copyright dates.
727 * config/i860/i860.c: Include coretypes.h, tm.h, and toplev.h.
728 (TARGET_ASM_FUNCTION_PROLOGUE): Move definition to end of file.
729 (TARGET_ASM_FUNCTION_EPILOGUE): Likewise.
730 (targetm): Likewise.
731 (i860_output_function_prologue): Substitute HOST_WIDE_INT_PRINT_DEC
732 for '%d' where necessary.
733 (i860_va_start): Remove 'stdarg_p' argument. Make conditional checks
734 on 'stdarg_p' unconditional. Divide current_function_args_info.ints
735 by UNITS_PER_WORD when referencing (likewise for .floats).
736 (I860_SVR4_VARARGS): Rename...
737 (I860_SVR4_VA_LIST): ...to this.
738 Call build() with 't' rather than 'field'.
739 (i860_rtx_costs): New function.
740 (TARGET_RTX_COSTS): Define.
741 (i860_internal_label): New function.
742 (TARGET_ASM_INTERNAL_LABEL): Define.
743 (i860_file_start): New function.
744 Update copyright dates.
745 * config/i860/i860.h (CPP_PREDEFINES): Remove.
746 (TARGET_CPU_CPP_BUILTINS): Define.
747 (EXPAND_BUILTIN_VA_START): Remove 'stdarg' argument.
748 (CONST_COSTS): Remove (and move code to i860_rtx_costs).
749 (ASM_FILE_START): Remove.
750 (ASM_FILE_START_1): Remove.
751 (ASM_GLOBALIZE_LABEL): Remove.
752 (ASM_OUTPUT_INTERNAL_LABEL): Remove.
753 (ASM_OUTPUT_CASE_LABEL): Replace call of ASM_OUTPUT_INTERNAL_LABEL
754 with targetm.asm_out.internal_label.
755 Update copyright dates.
756 * config/i860/sysv4.h (USER_LABEL_PREFIX): Define.
757 (CPP_PREDEFINES): Remove.
758 (TARGET_OS_CPP_BUILTINS): Define.
759 (GLOBAL_ASM_OP): Define.
760 (ASM_FILE_START): Remove.
761 (TARGET_ASM_FILE_START_FILE_DIRECTIVE): Define.
762 (TARGET_ASM_FILE_START): Define.
763 Update copyright dates.
764
e1567352
JE
7652003-08-22 Jason Eckhardt <jle@rice.edu>
766
a36b8cb8 767 * gcc/config.gcc (i860-*-sysv4*): Add target.
e1567352
JE
768 * config/i860/i860-protos.h: New.
769 * config/i860/i860.c: New.
770 * config/i860/i860.h: New.
771 * config/i860/i860.md: New.
772 * config/i860/sysv4.h: New.
773 * config/i860/varargs.asm: New.
774 * config/i860/x-sysv4: New.
775
b7849684
JE
7762003-08-22 Jason Eckhardt <jle@rice.edu>
777
778 * config/pa/pa.c: Replace 'GNU CC' with 'GCC'.
779 Remove all uses of PARAMS macro.
780 Convert all function definitions to ISO C90 syntax.
781 * config/pa/elf.h: Replace 'GNU CC' with 'GCC'.
782 * config/pa/fptr.c: Likewise.
783 * config/pa/lib2funcs.asm: Likewise.
784 * config/pa/long_double.h: Likewise.
785 * config/pa/milli64.S: Likewise.
786 * config/pa/pa-64.h: Likewise.
787 * config/pa/pa-hpux.h: Likewise.
788 * config/pa/pa-hpux10.h: Likewise.
789 * config/pa/pa-hpux11.h: Likewise.
790 * config/pa/pa-linux.h: Likewise.
791 * config/pa/pa-modes.def: Likewise.
792 * config/pa/pa-osf.h: Likewise.
793 * config/pa/pa-pro-end.h: Likewise.
794 * config/pa/pa.md: Likewise.
795 * config/pa/pa32-linux.h: Likewise.
796 * config/pa/pa64-linux.h: Likewise.
797 * config/pa/pa64-hpux.h: Likewise.
798 * config/pa/pa64-regs.h: Likewise.
799 * config/pa/quadlib.c: Likewise.
800 * config/pa/rtems.h: Likewise.
801 * config/pa/pa-protos.h: Replace 'GNU CC' with 'GCC' and remove
7e2055ec 802 all uses of the PARAMS macro.
b7849684
JE
803 * config/pa/pa.h: Likewise.
804 * config/pa/som.h: Likewise.
805
7e2055ec
ZW
806 * config/iq2000/iq2000.c: Replace 'GNU CC' with 'GCC'.
807 Remove all uses of PARAMS macro.
808 Convert all function definitions to ISO C90 syntax.
b7849684 809 * config/iq2000-protos.h: Replace 'GNU CC' with 'GCC'.
7e2055ec 810 Remove all uses of PARAMS macro.
b7849684 811 * config/iq2000.h: Remove all uses of PARAMS macro.
7e2055ec 812 * config/iq2000/iq2000.md: Replace 'GNU CC' with 'GCC'.
b7849684 813
416cf582
UW
8142003-08-23 Ulrich Weigand <uweigand@de.ibm.com>
815
816 * config/s390/s390-protos.h (s390_output_pool_entry): Declare.
817 * config/s390/s390.c (gen_consttable): Remove.
818 (s390_dump_pool): Use UNSPECV_POOL_ENTRY for pool entry insns.
819 (s390_output_pool_entry): New function.
7e2055ec
ZW
820 * config/s390/s390.md (UNSPECV_POOL_QI, UNSPECV_POOL_HI,
821 UNSPECV_POOL_SI, UNSPECV_POOL_DI, UNSPECV_POOL_TI,
416cf582
UW
822 UNSPECV_POOL_SF, UNSPECV_POOL_DF): Remove, replace by ...
823 (UNSPECV_POOL_ENTRY): ... this new constant.
824 ("consttable_qi", "consttable_hi", "consttable_si", "consttable_di",
825 "consttable_ti", "consttable_sf", "consttable_df"): Remove ...
826 ("*pool_entry"): ... and replace by this new insn.
827 ("literal_pool_31"): Do not emit anchor label if pool empty.
828
829 * config/s390/s390.c (struct machine_function): Add save_return_addr_p.
830 (s390_optimize_prolog): Save RETURN_REGNUM if save_return_addr_p.
831 (s390_fixup_clobbered_return_reg): Remove.
832 (s390_reorg): Don't call s390_fixup_clobbered_return_reg.
833 (s390_return_addr_rtx): Always retrieve return address from save area
834 slot. Use save_return_addr_p to force slot to be filled.
835 (s390_emit_prologue): Remove has_hard_reg_initial_val test.
836
beadc644
CD
8372003-08-22 Chris Demetriou <cgd@broadcom.com>
838
839 * config/mips/mips.h (MASK_FIX_SB1, TARGET_FIX_SB1): New defines.
840 (TARGET_SWITCHES): Add -mfix-sb1 and -mno-fix-sb1.
841 * config/mips/mips.md (divdf3, divsf3, sqrtdf2, sqrtsf2): Work
842 around SB-1 errata if TARGET_FIX_SB1 is set.
843 (recip.d insn, recip.s insn, rsqrt.d insn, rsqrt.s insn): Likewise.
844 * doc/invoke.texi: Document MIPS -mfix-sb1 and -mno-fix-sb1.
845
4ae2e3e9
RS
8462003-08-22 Roger Sayle <roger@eyesopen.com>
847
848 * hashtable.c (ht_expand): Avoid calculating rehash for the common
849 case that the first probe hits an empty hash table slot.
850
74487c57
MM
8512003-08-22 Mark Mitchell <mark@codesourcery.com>
852
853 * config/ia64/hpux.h (SUPPORTS_INIT_PRIORITY): Define to 0.
854
36c216e5
MM
8552003-08-22 Mark Mitchell <mark@codesourcery.com>
856
857 * config/ia64/ia64.md (*ptr_extend_plus_1): Rename to ...
858 (ptr_extend_plus_imm): ... this.
859 * config/ia64/ia64.c (addp4_optimize_ok): Do not disable addp4
860 optimization in C++.
861 (ia64_output_mi_thunk): Support ILP32 mode.
862
02ac9ec6
BI
8632003-08-22 bernardo innocenti <bernie@develer.com>
864
865 * gcc/config/m68k/m68k.c (m68k_coff_asm_named_section): remove unused
866 function.
867 * gcc/config/m68k/m68k.c (-m68k_svr3_asm_out_constructor): likewise.
868
dac4a0de
KH
8692003-08-22 Kazu Hirata <kazu@cs.umass.edu>
870
871 * config/i386/i386.c (const_int_1_operand): Simplify an
872 integer comparison.
873
65dbc870
AM
8742003-08-22 Alan Modra <amodra@bigpond.net.au>
875
876 * config/fp-bit.c: Specify config/ dir for include of fp-bit.h.
877 * config/rs6000/ppc64-fp.c: Likewise.
878
dcc24678
KH
8792003-08-22 Kazu Hirata <kazu@cs.umass.edu>
880
881 * cfgcleanup.c: Fix comment typos.
882 * emit-rtl.c: Likewise.
883 * optabs.c: Likewise.
884 * ra-build.c: Likewise.
885 * rtlanal.c: Likewise.
886 * tree.h: Likewise.
887
beb235f8
KH
8882003-08-22 Kazu Hirata <kazu@cs.umass.edu>
889
890 * c-decl.c: Fix comment formatting.
891 * cfgrtl.c: Likewise.
892 * combine.c: Likewise.
893 * convert.c: Likewise.
894 * dominance.c: Likewise.
895 * dwarf2out.c: Likewise.
896 * dwarfout.c: Likewise.
897 * expmed.c: Likewise.
898 * fold-const.c: Likewise.
899 * gcov.c: Likewise.
900 * genattrtab.c: Likewise.
901 * ggc-common.c: Likewise.
902 * mips-tfile.c: Likewise.
903 * regmove.c: Likewise.
904
2b72593e
KH
9052003-08-22 Kazu Hirata <kazu@cs.umass.edu>
906
907 * builtin-attrs.def: Fix comment formatting.
908 * c-pretty-print.c: Likewise.
909 * diagnostic.h: Likewise.
910 * langhooks.h: Likewise.
911 * recog.c: Likewise.
912 * simplify-rtx.c: Likewise.
913 * tree.def: Likewise.
914
8a4a2253
BI
9152003-08-22 Bernardo Innocenti <bernie@develer.com>
916
917 * config/m68k/m68k-protos.h: Convert to ISO C90.
918 * config/m68k/m68k.c: Likewise.
919
eb849993 9202003-08-21 Bernardo Innocenti <bernie@develer.com>
7e2055ec
ZW
921 Paul Dale <pauli@snapgear.com>
922 Peter Barada <peter@baradas.org>
eb849993
BI
923
924 * config/m68k/m68k.c (m68k_rtx_costs): Adjust mul/div costs for
925 ColdFire cores.
926
ca11c37c
ZW
9272003-08-21 Zack Weinberg <zack@codesourcery.com>
928
929 * Makefile.in (INCLUDES): Remove -I$(srcdir)/config.
930 * config.gcc (*-*-openbsd): Don't set tm_file.
931 (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*,
932 arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*,
933 h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*,
934 i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*,
935 i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*,
936 m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*,
937 m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*,
938 m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*,
939 mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka,
940 sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*,
941 xscale-*-coff): Use explicit and complete lists of target headers
942 to include. Move definitions to tm_defines where appropriate.
943 (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for
944 not-yet-contributed configuration.
945
946 * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h
947 * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h
948 * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h
949 * config/i386/nto.h, config/iq2000/iq2000.h,
950 * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h
951 * config/m68k/linux.h, config/m68k/m68k-aout.h
952 * config/m68k/m68k-none.h, config/m68k/m68kv4.h
953 * config/m68k/netbsd.h, config/m68k/openbsd.h
954 * config/m68k/sgs.h, config/mcore/mcore-pe.h,
955 * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h,
956 * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h:
957 Remove includes of other target config headers, and
958 definitions of macros moved to tm_defines lists. Add #undefs
959 where now necessary to prevent redefinition warnings.
960
961 * config/h8300/coff.h: New file split out of...
962 * config/h8300/elf.h: ...here.
963 * config/m68k/hp320base.h: New file split out of...
964 * config/m68k/hp320.h: ...here.
965 * config/rs6000/lynxbase.h: New file split out of...
966 * config/rs6000/lynx.h: ...here.
967
968 * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h
969 * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file.
970
971 * config/sol2.h: Remove #if 0-ed #include of sys/mman.h.
972 * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h.
973 * config/mcore/mcore.h: Don't include hwint.h nor machmode.h.
974 Remove unnecessary #ifndef.
975 * config/s390/s390.h: Prefix #include of s390/fixdfdi.h
976 [under IN_LIBGCC2] with config/.
977
75ee800b 9782003-08-21 Per Bothner <pbothner@apple.com>
ac650a0a
PB
979
980 * cppfiles.c (stack_file): Correctly pass return_at_eof parameter
981 to cpp_push_buffer.
982 * cpplex.c (_cpp_get_fresh_line): Don't buffer->prev - handled
983 by return_at_eof check. Always call _cpp_pop_buffer at end.
984
43c446b8
KH
9852003-08-21 Kazu Hirata <kazu@cs.umass.edu>
986
987 PR target/11805
988 * config/h8300/h8300.md (two anonymous patterns): Remove.
989
7bc22451
RS
9902003-08-21 Richard Sandiford <rsandifo@redhat.com>
991
992 * config/mips/mips.h (MUST_PASS_IN_STACK): Remove BLKmode clause.
993 * config/mips/mips.c (function_arg_pass_by_reference): Never return
994 true for n32 & n64.
995
ed6f90f7
JZ
9962003-08-21 Josef Zlomek <zlomekj@suse.cz>
997
998 * fold-const.c (fold): Fix bug in (A & C) == D where D & ~C != 0
999 and similarly in (A | C) == D where C & ~D != 0.
1000
e50084fa
GK
10012003-08-20 Geoffrey Keating <geoffk@apple.com>
1002
1003 PR 8180
1004 * configure.in: When testing with_libs and with_headers, treat
1005 'no' as unset. Based on a patch by Dan Kegel <dank@kegel.com>.
1006 * configure: Regenerate.
ca11c37c 1007
e50084fa 10082003-08-20 Peter Barada <peter@baradas.org>
bab4470d
PB
1009
1010 * longlong.h (umul_ppmm): Add ColdFire support.
1011
e50084fa 10122003-08-20 Peter Barada <peter@baradas.org>
ca11c37c 1013 Bernardo Innocenti <bernie@develer.com>
9425fb04
PB
1014
1015 * config/m68k/m68k-none.h: Introduce new ColdFire archs.
1016 * config/m68k/m68k.h: Likewise.
1017 * config/m68k/lb1sf68.asm: Rename __mcf5200__ to __mcoldfire__.
1018 * config/m68k/coff.h: Rename TARGET_5200 to TARGET_COLDFIRE.
1019 * config/m68k/linux.h: Likewise.
1020 * config/m68k/m68k.c: Likewise.
1021 * config/m68k/m68k.md: Likewise.
1022 * config/m68k/m68kelf.h: Likewise.
1023 * config/m68k/netbsd-elf.h: Likewise.
1024 * config/m68k/t-m68kelf: Add multilib targets for new ColdFire archs.
1025
d1b87863
BI
10262003-08-20 Bernardo Innocenti <bernie@develer.com>
1027
1028 * config/m68k/m68k.c: Strip away code depending on NO_ADDSUB_Q definition.
1029 * config/m68k/m68k.md: Likewise.
1030
b6343a33
MM
10312003-08-20 Mark Mitchell <mark@codesourcery.com>
1032
1033 PR java/11996
1034 Revert this change:
1035 2003-08-19 Mark Mitchell <mark@codesourcery.com>
1036 * c-common.c (c_common_signed_or_unsigned_type): Correctly handle
1037 types with precisions other than those given by native machine
1038 modes.
1039
bf4563cb
GN
10402003-08-20 Gunther Nikl <gni@gecko.de>
1041
1042 * config/m68k/m68k.md (anonymous define_insn): remove obsolete code
1043 selected by FSGLMUL_USE_S and FSGLDIV_USE_S
1044 * config/m68k/m68k.c (output_move_himode): remove SGS_NO_LI check
1045 * config/m68k/m68k.md (anonymous define_insn): Likewise
1046 * config/m68k/m68k.md (anonymous define_insn): remove ISI_OV check
1047 * config/m68k/m68k.c (standard_68881_constant_p): remove obsolete
1048 code selected by NO_ASM_FMOVECR
1049
0fb8241d
GN
10502003-08-20 Gunther Nikl <gni@gecko.de>
1051
1052 * config/m68k/m68k.c (output_move_const_into_data_reg,
1053 output_move_himode): unify MOTOROLA/MIT handling of moveq
1054 * config/m68k/m68k.md (movsi_const0, anonymous define_insn):
1055 Likewise
1056
c23b0b90
GN
10572003-08-20 Gunther Nikl <gni@gecko.de>
1058
1059 * config/m68k/m68k.c (m68k_output_function_prologue): use %U in
1060 label name
1061 * config/m68k/m68k.c (m68k_output_function_epilogue): replace
1062 HOST_WIDE_INT_PRINT_DEC with %wd
1063
9e68a9dc
LR
10642003-08-20 Loren James Rittle <ljrittle@acm.org>
1065
1066 * config/i386/freebsd.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Handle
1067 redefine warning.
1068
2cf099a5
RS
10692003-08-20 Roger Sayle <roger@eyesopen.com>
1070
1071 PR middle-end/11984
1072 * fold-const.c (fold <PLUS_EXPR>): Check for integer constant
1073 operands before calling tree_int_cst_lt when performing associative
1074 transformations.
1075
68ad9159
JM
10762003-08-20 Jason Merrill <jason@redhat.com>
1077
1078 * tree.h (IS_EXPR_CODE_CLASS): Also include 'r' and 's'.
1079 (EXPR_CHECK): Don't check for 'r' or 's' if we're
1080 checking IS_EXPR_CODE_CLASS.
1081 * calls.c (calls_function_1): Likewise.
1082 * fold-const.c (fold): Likewise.
1083 * tree.c (iterative_hash_expr): Likewise.
1084 * tree-inline.c (walk_tree, copy_tree_r): Likewise.
1085
c8e60672
GN
10862003-08-20 Gunther Nikl <gni@gecko.de>
1087
1088 * config/m68k/m68k.c (m68k_output_mi_thunk): delete obsolete code
1089 depending on MOTOROLA_BSR
1090 * config/m68k/m68k.md (anonymous define_insn): Likewise
1091
3acef2ae
JM
10922003-08-20 Jason Merrill <jason@redhat.com>
1093
2f503025 1094 * builtins.c (expand_builtin_mathfn): Use get_callee_fndecl.
ca11c37c 1095 (expand_builtin_mathfn2, expand_builtin, builtin_mathfn_code,
2f503025
JM
1096 fold_trunc_transparent_mathfn, fold_builtin): Likewise.
1097 * dojump.c (do_jump): Likewise.
1098 * fold-const.c (operand_equal_p, fold): Likewise.
1099 (tree_expr_nonnegative_p): Likewise.
1100
3acef2ae
JM
1101 * stor-layout.c (do_type_align): Only copy DECL_USER_ALIGN from
1102 TYPE_USER_ALIGN for FIELD_DECLs.
ca11c37c 1103
3acef2ae
JM
1104 * attribs.c (decl_attributes): Rebuild the function pointer type after
1105 changing the target type.
1106 * tree.c (get_qualified_type): Also check that the attributes match.
1107
8f7d850c
MK
11082003-08-19 Matt Kraai <kraai@alumni.cmu.edu>
1109
1110 * Makefile.in (STAGESTUFF): Move cc1obj$(exeext) from here ...
1111 * objc/config-lang.in (stagestuff): ... to here.
1112
4b0d3cbe
MM
11132003-08-19 Mark Mitchell <mark@codesourcery.com>
1114
1115 PR c++/11946
1116 * convert.c (convert_to_integer): Use CONVERT_EXPR (instead of
1117 NOP_EXPR) when necessary.
1118 * c-common.c (c_common_signed_or_unsigned_type): Correctly handle
1119 types with precisions other than those given by native machine
1120 modes.
1121
3a7e8b87
GK
11222003-08-19 Geoffrey Keating <geoffk@apple.com>
1123
ccc01444
GK
1124 * cpppch.c (cpp_valid_state): Re-add warning about PCH not used
1125 because some macro is defined.
1126
3a7e8b87
GK
1127 * config/darwin.h (LINK_COMMAND_SPEC): Add -arch and -arch_only
1128 options.
1129 * config/i386/darwin.h (ASM_SPEC): New.
1130 (SUBTARGET_EXTRA_SPECS): New.
1131 * config/rs6000/darwin.h (ASM_SPEC): New.
1132 (SUBTARGET_EXTRA_SPECS): New.
1133 * configure.in: Don't set CROSS or SYSTEM_HEADER_DIR when building
1134 a cross-compiler between two different processors on Darwin.
1135 * configure: Regenerate.
1136
a98ebe2e
KH
11372003-08-19 Kazu Hirata <kazu@cs.umass.edu>
1138
1139 * builtins.c: Fix comment typos.
1140 * c-common.c: Likewise.
1141 * c-decl.c: Likewise.
1142 * c-pretty-print.c: Likewise.
1143 * cfgbuild.c: Likewise.
1144 * cfglayout.c: Likewise.
1145 * cfgloopanal.c: Likewise.
1146 * cgraphunit.c: Likewise.
1147 * cppfiles.c: Likewise.
1148 * dwarfout.c: Likewise.
1149 * expr.c: Likewise.
1150 * fold-const.c: Likewise.
1151 * gcse.c: Likewise.
1152 * ggc-page.c: Likewise.
1153 * haifa-sched.c: Likewise.
1154 * pretty-print.c: Likewise.
1155 * tree.c: Likewise.
1156 * tree.h: Likewise.
1157 * value-prof.c: Likewise.
1158
02fa63cd
KH
11592003-08-19 Kazu Hirata <kazu@cs.umass.edu>
1160
1161 * c-decl.c: Follow spelling conventions.
1162 * cppfiles.c: Likewise.
1163
59e4e217
KH
11642003-08-19 Kazu Hirata <kazu@cs.umass.edu>
1165
1166 * c-common.c: Fix comment formatting.
1167 * c-common.h: Likewise.
1168 * c-decl.c: Likewise.
1169 * cppinit.c: Likewise.
1170 * cpplib.h: Likewise.
1171 * emit-rtl.c: Likewise.
1172 * input.h: Likewise.
1173 * line-map.h: Likewise.
1174 * opts.c: Likewise.
1175 * opts.h: Likewise.
1176 * simplify-rtx.c: Likewise.
1177
1ee93c1b
DJ
11782003-08-19 Daniel Jacobowitz <drow@mvista.com>
1179
1180 * unwind-c.c: Add libgcc-style exception.
1181 * unwind-dw2.c: Likewise.
1182 * unwind-pe.h: Likewise.
1183 * unwind-sjlj.c: Likewise.
1184 * unwind.inc: Likewise.
1185
f5e7af77
AP
11862003-08-19 Andrew Pinski <pinskia@physics.uc.edu>
1187
1188 PR c/5582 PR c++/10538
1189 * langhooks-def.h (lhd_decl_uninit): Declare.
1190 (LANG_HOOKS_DECL_UNINIT): New macro.
1191 (LANG_HOOKS_INITIALIZER): Adjust.
1192 * langhooks.h (struct lang_hooks): Add new field
1193 decl_uninit.
1194 * langhooks.c (lhd_decl_uninit): Define.
1195 * c-common.c (c_decl_uninit_1): New function.
1196 (c_decl_uninit): New function.
1197 (warn_init_self): Define.
1198 * c-common.h (c_decl_uninit): Declare.
1199 (warn_init_self): Declare.
1200 * c.opt: Introduce -Winit-self.
1201 * c-opts.c (c_common_handle_options): Set warn_init_self.
1202 * c-lang.c (LANG_HOOKS_DECL_UNINIT): Define.
1203 * objc/objc-lang.c (LANG_HOOKS_DECL_UNINIT): Define.
1204 * function.c (uninitialized_vars_warning): Call the language hook.
1205 * doc/invoke.texi: Document -Winit-self.
1206
d68f4cc4
CD
12072003-08-19 Chris Demetriou <cgd@broadcom.com>
1208
1209 * config/mips/mips.md: Adjust SI-mode "trap_if" instruction
1210 to use better predicates and constraints. Define new
1211 instruction to handle "trap_if" with DI-mode arguments.
1212 (conditional_trap): FAIL if trap code is not 0.
1213
86ecdfb6
AP
12142003-08-19 Andrew Pinski <pinskia@physics.uc.edu>
1215
1216 * config/i386/i386.c (legitimate_pic_address_disp_p): Change the
1217 strstr with $pb to a strcompare with "<pic base>"
1218 (ix86_output_addr_diff_elt): Output the real pic base.
1219
fc95cf70
GDR
12202003-08-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
1221
1222 * langhooks-def.h (LANG_HOOKS_INITIALIZE_DIAGNOSTICS): Fix spelling.
1223 (LANG_HOOKS_INITIALIZER): Correct.
1224 * c-lang.c: Likewise.
1225
810db579
JH
12262003-08-19 Jan Hubicka <jh@suse.cz>
1227
1228 * cgraph.c (cgraph_mark_needed_node): Call notice_global_symbol.
1229 (cgraph_varpool_mark_needed_node): Likewise.
1230 * cgraph.h (notice_global_symbol): Declare
1231 * varasm.c (notice_global_symbol): Break out from ...
1232 (assemble_start_function): ... here; update for variables.
1233 (assemble_variable): Use notice_global_symbol.
1234
fc4fe9e4
RS
12352003-08-19 Richard Sandiford <rsandifo@redhat.com>
1236
1237 * config/mips/mips.c (mips_va_arg): If EABI_FLOAT_VARARGS_P,
1238 expect SFmode and DFmode arguments to be passed in FPRs,
1239 regardless of the underlying type.
1240
4b8174ff
RS
12412003-08-19 Richard Sandiford <rsandifo@redhat.com>
1242
1243 PR target/11924
1244 * config/mips/mips.c (INTERNAL_SYMBOL_P): New macro.
1245 (mips_classify_symbol, m16_usym8_4, m16_usym5_4): Use it.
1246
622adc7e
MK
12472003-08-18 Matt Kraai <kraai@alumni.cmu.edu>
1248
1249 PR c/11207
1250 * c-typeck.c (set_init_index): Check for negative index.
1251
dfccfad9
BW
12522003-08-18 Bob Wilson <bob.wilson@acm.org>
1253
1254 * config/xtensa/crti.asm (_init, _fini): Add alternate code for new
1255 call0 ABI.
1256 * config/xtensa/crtn.asm (_init, _fini): Likewise.
1257 * config/xtensa/lib1funcs.asm (__mulsi3, __udivsi3, __divsi3,
1258 __umodsi3, __modsi3): Likewise.
1259 * config/xtensa/t-xtensa (crti.o, crtn.o): Add $(GCC_CFLAGS) and
1260 $(INCLUDES).
1261
fe9c3a97
AH
12622003-08-18 Aldy Hernandez <aldyh@redhat.com>
1263
1264 * config/rs6000/spe.md ("*nabssf2_gpr"): New.
1265
431d5fdd
RS
12662003-08-18 Richard Sandiford <rsandifo@redhat.com>
1267
1268 * config/mips/mips.md: Quote C code in braces. Remove use of
1269 fake const0_rtx operands. Remove double backslashes. Use \;.
1270 Remove workarounds for bogus warnings.
1271
4195786e
RS
12722003-08-18 Richard Sandiford <rsandifo@redhat.com>
1273
1274 * config/mips/mips.md (muldf3, mulsf3): Don't call a gen_* function.
1275 (muldf3_internal, muldf3_r4300): Select based on TARGET_4300_MUL_FIX
1276 rather than TARGET_MIPS4300.
1277 (mulsf3_internal, mulsf3_r4300): Likewise.
1278
6d4ede5f
RS
12792003-08-18 Richard Sandiford <rsandifo@redhat.com>
1280
1281 * config/mips/mips.md: Renumber unspecs. Clean up comments.
1282
dd61aa98
RS
12832003-08-17 Roger Sayle <roger@eyesopen.com>
1284
1285 * simplify-rtx.c (associative_constant_p): New function to test
1286 whether an RTX expression is an immediate constant.
1287 (simplify_associative_operation): New function to perform some
1288 reassociation optimizations of associative binary expressions.
1289 (simplify_binary_operation): Use simplify_associative_operation
1290 to simplify PLUS, MULT, AND, IOR, XOR, SMIN, SMAX, UMIN and UMAX.
1291 Floating point expressions are only reassociated when unsafe
1292 math optimizations are permitted.
1293
9c808aad
AJ
12942003-08-17 Andreas Jaeger <aj@suse.de>
1295
1296 * config/alpha/alpha.md: Remove usage of PARAMS.
1297
1298 * config/i386/cygwin.h: Convert K&R prototypes to ISO C90.
1299 * config/i386/i386-interix.h: Likewise.
1300 * config/i386/winnt.c: Likewise.
1301 * config/i386/cygming.h: Likewise.
1302 * config/i386/cygwin2.c: Likewise.
1303 * config/darwin.c: Likewise.
1304 * config/darwin-c.c: Likewise.
1305 * config/darwin-protos.h: Likewise.
1306 * config/darwin.h: Likewise.
1307 * config/s390/s390-protos.h: Likewise.
1308 * config/s390/s390.c: Likewise.
1309 * config/ia64/ia64.c: Likewse
1310 * config/ia64/ia64-protos.h: Likewise.
fde46628 1311 * config/ia64/ia64-c.c: Likewise.
9c808aad 1312
e80d5f80
KG
13132003-08-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1314
fc27d102
KG
1315 * config/sparc/sparc.c: Convert to ISO C.
1316
e80d5f80
KG
1317 * config/sparc/sparc-protos.h: Don't use the PARAMS macro.
1318 * config/sparc/sparc.c: Likewise.
1319
e895113a
NS
13202003-08-16 Nathan Sidwell <nathan@codesourcery.com>
1321
1322 PR c++/11512
1323 * stmt.c (expand_expr_stmt_value): Don't warn about any void
1324 typed expression.
1325
e767b5be
JH
13262003-08-16 Jan Hubicka <jh@suse.cz>
1327
1328 * i386.c (ix86_fntype_regparm): Rename from ...
1329 (ix86_function_regparm): ... this one; add fastcall and local
1330 functions.
1331 (ix86_function_ok_for_sibcall): Update.
1332 (ix86_return_pops_args): Likewise.
1333 (init_cumulative_args): Likewise.
1334 (x86_can_output_mi_thunk): Likewise.
1335 (function_arg): Fix formating.
1336 (x86_this_parameter): Fix fastcall.
1337 (x86_output_mi_thunk): Likewise.
1338
1339 * cgraph.c (cgraph_mark_needed_node): Do not mark functions without
1340 body as reachable; mark nested functions as needed too.
1341 (dump_cgraph): Do not output global.calls.
1342 * cgraph.h (cgraph_global_info): Kill.
1343 * cgraphunit.c (cgraph_finalize_function): Enqueue needed functions.
1344 (record_call_1): Speedup.
1345 (cgraph_analyze_function): Break out from ...; compute inlining
1346 parameters.
1347 (cgraph_finalize_compilation_unit): ... here.
1348 (cgraph_mark_inline): Kill computation of calls.
1349 (cgraph_decide_inlining): Do not compute most of initial values.
1350
8ab49fef
RS
13512003-08-14 Roger Sayle <roger@eyesopen.com>
1352
1353 * fold-const.c (negate_expr_p): MULT_EXPRs and RDIV_EXPRs are easy
1354 to negate if either operand is easy to negate, if we don't care
1355 about sign-dependent rounding.
1356 (negate_expr): Make the logic to negate a REAL_CST explicit.
1357 Attempt to negate a MULT_EXPR or RDIV_EXPR by negating an operand
1358 that's easy to negate, if we don't honor sign-dependent rounding.
1359 (fold <MULT_EXPR>): Optimize -A * B as A * -B if B is easy to
1360 negate, and the symmetric A * -B as -A * B if A is easy to negate.
1361 (fold <RDIV_EXPR>): Likewise, optimize -A/B and C/-D as A/-B and
1362 -C/D if B and C are cheap to negate. Add an explicit rule to
1363 optimize X/-1.0 as -X when we don't care about signaling NaNs.
1364
e22340b0
ZW
13652003-08-14 Zack Weinberg <zack@codesourcery.com>
1366
1367 * Makefile.in (tm_file): Rename tm_include_list.
1368 (tm_p_file): Rename tm_p_include_list.
1369 (build_xm_file): Rename build_xm_include_list.
1370 (host_xm_file): Rename host_xm_include_list.
1371 (xm_file): Rename xm_include_list.
1372 (xm_file_list): Add to be substituted.
1373 (cs-config.h, cs-bconfig.h, cs-tconfig.h, cs-tm.h, cs-tm_p.h):
1374 Update to match.
1375 (bt-load.o): Add missing dependency on $(TM_H).
1376 * configure.in: Prefix value of EXTRA_MODES_FILE with config/.
1377 For each of tm_file, tm_p_file, xm_file, host_xm_file, and
1378 build_xm_file, generate both *_file_list and *_include_list
1379 values from it. (xm_file_list was formerly not being generated.)
1380 In *_include_list, prefix the names of all headers found in
1381 $(srcdir)/config with config/. In each loop, consider only
1382 the special case files that can actually appear in that list.
1383 AC_SUBST all *_file_list and all *_include_list variables; do
1384 not AC_SUBST the plain *_file variables.
1385 * configure: Regenerate.
1386
4139675b
ZD
13872003-08-14 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
1388
1389 * cfg.c (dump_edge_info): Add name of loop_exit edge flag.
1390
32562302
JDA
13912003-08-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1392
1393 * pa.c (pa_adjust_insn_length): Delete adjustment for delay slot in
1394 direct calls.
1395 (attr_length_call): Include it here. Improve length estimate for
1396 local calls.
1397 (output_call): Use targetm.binds_local_p.
1398
9e46226d
KG
13992003-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1400
daa027cc
KG
1401 * builtins.c (CASE_MATHFN): New helper macro.
1402 (mathfn_built_in): Simplify and sort.
1403
9e46226d
KG
1404 * protoize.c (substr): Delete, callers changed to `strstr'.
1405
c5d19037
ZW
14062003-08-13 Zack Weinberg <zack@codesourcery.com>
1407
1408 * config.gcc (iq2000*-*-elf*): Don't set xm_file.
1409 * config/iq2000/xm-iq2000.h: Delete file.
1410
4da6879c
GK
14112003-08-13 Geoffrey Keating <geoffk@apple.com>
1412
1413 * gengtype.c (walk_type): Process a subobject before processing
1414 the pointer that points to the subobject.
1415
28420116
PB
14162003-08-13 Per Bothner <pbothner@apple.com>
1417
1418 * regclass.c (init_reg_modes): Make non-static.
1419 Rename to init_reg_modes_once per new naming convention.
1420 (init_regs): Don't call init_reg_modes here.
1421 * emit-rtl.c (init_emit_once): Call init_reg_modes_once here instead.
1422 * rtl.h (init_reg_modes_once): New declaration.
1423 * toplev.c (backend_init): Call init_regs after init_emit_once.
1424
235b4b36
KK
14252003-08-13 Kaz Kojima <kkojima@gcc.gnu.org>
1426
1427 * config/sh/linux.h (DBX_REGISTER_NUMBER): Define so to map a
1428 special index for MD_FALLBACK_FRAME_STATE_FOR to itself.
1429
dce20bbc
R
14302003-08-13 J"orn Rennecke <joern.rennecke@superh.com>
1431
1432 * sh.c (sh_get_pr_initial_val): Always wrap in unspec for TARGET_SH1.
1433 * sh.md (load_ra): Change insn predicate to TARGET_SH1.
1434
5a195cb5
DJ
14352003-08-13 Dale Johannesen <dalej@apple.com>
1436
1437 * config/rs6000/rs6000.md (ctrsi, ctrdi): Reenable
1438 handling of decrement-and-branch farther than 32 bits.
1439
3a000df0
KC
14402003-08-12 Kelley Cook <kelleycook@wideopenwest.com>
1441
1442 * configure.in (make_compare_target): Move test to ...
1443 * aclocal.m4 (gcc_AC_PROG_CMP_IGNORE_INITIAL): here.
1444 * configure: Regenerate.
1445
b4966b1b
RS
14462003-08-12 Richard Sandiford <rsandifo@redhat.com>
1447
1448 * config/mips/iris6.h: Convert to C90 prototypes.
1449 * config/mips/irix6-libc-compat.c: Likewise.
1450 * config/mips/mips-protos.h: Likewise.
1451 * config/mips/mips.c: Likewise.
1452
825d7d64
NN
14532003-08-12 Nathanael Nerode <neroden@gcc.gnu.org>
1454
1455 fixinc/inclhack.def (svr4_krnl): Rename from svr4_kernel. Enable
1456 for selected machines. Comment heavily.
1457 fixinc/fixincl.x: Rebuild.
1458 fixinc/tests/base/fs/rfs/rf_cache.h: New file.
1459
dfad12b5
RS
14602003-08-12 Richard Sandiford <rsandifo@redhat.com>
1461
1462 * config/mips/mips.h: Tweak various comments.
1463 * config/mips/mips.c: Likewise.
1464
e3f049a8
JW
14652003-08-11 James E Wilson <wilson@tuliptree.org>
1466
1467 PR optimization/11319
1468 PR target/10021
1469 * alias.c (find_base_value, case REG): Return 0 not src if no base
1470 found.
1471
4ac11022
KG
14722003-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1473
1474 * gcse.c (gmalloc): Fix last change.
1475
ae351e1e
RS
14762003-08-11 Roger Sayle <roger@eyesopen.com>
1477
1478 * simplify-rtx.c (simplify_binary_operation): Replace calls to
1479 gen_rtx_NEG and gen_rtx_NOT with calls to simplify_gen_unary,
1480 and calls to gen_rtx_PLUS, gen_rtx_MULT, gen_rtx_LSHIFTRT,
1481 gen_rtx_ASHIFT and gen_rtx_AND with calls to simplify_gen_binary.
1482
11017cc7
RS
14832003-08-11 Roger Sayle <roger@eyesopen.com>
1484
1485 * expr.c (expand_expr): If an ABS_EXPR has a complex type, abort.
1486 * c-typeck.c (build_unary_op): COMPLEX_TYPE is not a valid
1487 typecode for an ABS_EXPR.
1488
1489 * doc/c-tree.texi: Document ABS_EXPR.
1490
af7b5c1c
RS
14912003-08-11 Roger Sayle <roger@eyesopen.com>
1492
1493 * fold-const.c (fold): Optimize any associative floating point
1494 operator with -funsafe-math-optimizations, not just MULT_EXPR.
1495
e3bf220a
KK
14962003-08-11 Kaz Kojima <kkojima@gcc.gnu.org>
1497
1498 * config/sh/lib1funcs.asm (__udivdi3): Add .type and .size
1499 information in SHmedia case too.
1500 (__divdi3, __umoddi3, __moddi3, __init_trampoline, __ic_invalidate):
1501 Likewise.
1502 (__set_fpscr): Use an access via GOT for PIC case.
1503
0c46c5c7
KC
15042003-08-11 Kelley Cook <kelleycook@wideopenwest.com>
1505
1506 * configure.in (intermodule): Make switch test more portable.
1507 * configure: Regenerate.
1508
727793cb
KC
15092003-08-11 Kelley Cook <kelleycook@wideopenwest.com>
1510
1511 * Makefile.in (cleanstrap): Pass BOOT_CFLAGS to bootstrap.
1512 (restrap): Likewise.
1513
29da5c92
KG
15142003-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1515
9fe15a12
KG
1516 * gcse.c (gmalloc): Argument is a size_t. Add ATTRIBUTE_MALLOC.
1517 (grealloc): Size argument is a size_t.
1518 (gcalloc): New function. Use throughout in lieu of
1519 gmalloc/memset.
1520
29da5c92
KG
1521 * config/avr/avr.c (avr_init_once): Use xcalloc in lieu of
1522 xmalloc/memset.
1523 * config/ia64/ia64.c (ia64_reorg): Likewise.
1524 * conflict.c (conflict_graph_new): Likewise.
1525 * fixinc/fixincl.c (run_compiles): Likewise.
1526 * genattrtab.c (optimize_attrs): Likewise.
1527 * genrecog.c (new_decision): Likewise.
1528 * haifa-sched.c (schedule_block): Likewise.
1529 * hashtable.c (ht_create): Likewise.
1530
13fb3a61
BW
15312003-08-11 Bob Wilson <bob.wilson@acm.org>
1532
1533 * config/xtensa/lib2funcs.S: Fix whitespace.
1534 * config/xtensa/xtensa.md (all insns and expanders): Use brace block
1535 syntax where appropriate. Remove unnecessary backslash escapes.
1536 Reformat comments and fix some code formatting.
1537 (extendqisi2): Rearrange conditional.
1538 (*btrue, *bfalse, *ubtrue, *ubfalse, *bittrue, *bitfalse, *masktrue,
1539 *maskfalse, movsicc_internal0, movsfcc_internal0): Call abort instead
1540 of fatal_insn.
1541
f1d5187e
RS
15422003-08-11 Richard Sandiford <rsandifo@redhat.com>
1543
1544 * config/mips/mips.c: Various formatting fixes.
1545 (override_options): Resync -mtune handling with gas.
1546 (mips_issue_rate): Rearrange like mips_use_dfa_pipeline_interface.
1547 * config/mips/mips.h: More formatting fixes.
1548 (mips_abi): Move declaration.
1549 * config/mips/mips.md (exception_receiver): Add mode to
1550 unspec_volatile.
1551
00332c9f
AH
15522003-08-11 Aldy Hernandez <aldyh@redhat.com>
1553
1554 * config/rs6000/rs6000.c (spe_init_builtins): Handle evsplati and
1555 evsplatfi here.
1556 (bdesc_1arg): Remove evsplati and evsplatfi.
1557
a5c414e0
R
15582003-08-11 J"orn Rennecke <joern.rennecke@superh.com>
1559
1560 * dwarf2asm.c (dw2_output_indirect_constant_1): Take user_label_prefix
1561 into account.
1562
0235f855
KG
15632003-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1564
1565 * builtins.c (expand_builtin_strcat): Optimize constant strings.
1566
4b780675
GDR
15672003-08-10 Gabriel Dos Reis <gdr@integrable-solutions.net>
1568
1569 * pretty-print.c (pp_base_indent): Rename from pp_indent.
1570 * c-pretty-print.h (pp_c_pretty_print_flag)s: New datatype.
1571 (struct c_pretty_print_info): Add more fields.
1572 (pp_c_left_paren): Move to c-pretty-print.c.
1573 (pp_c_right_paren): Likewise.
1574 (pp_c_left_brace): Likewise.
1575 (pp_c_right_brace): Likewise.
1576 (pp_c_left_bracket): Likewise.
1577 (pp_c_right_bracket): Likewise.
1578 (pp_c_declarator): Declare.
1579 (pp_c_direct_declarator): Likewise.
1580 (pp_c_specifier_qualifier_list): Likewise.
1581 (pp_c_type_id): Likewise.
1582 * c-pretty-print.c (pp_c_cv_qualifier): Change prootype. Rework..
1583 (pp_c_type_qualifier_list): New.
1584 (pp_c_pointer): Likewise.
1585 (pp_c_parameter_type_list): Likewise.
1586 (pp_c_function_definition): Likewise.
1587 (pp_c_id_expression): Likewise.
1588 (pp_c_simple_type_specifier): Tidy.
1589 (pp_c_unary_expression): Likewise.
1590 (pp_c_expression): Likewise.
1591 (pp_c_pretty_printer_init): Likewise.
1592 (pp_c_specifier_qualifier_list): Rework..
1593 (pp_c_abstract_declarator): Likewise.
1594 (pp_c_postfix_expression): Likewise.
1595 (pp_c_primary_expression): Likewise.
1596 (pp_c_cast_expression): Likewise.
1597 (pp_c_direct_abstract_declarator): Likewise.
1598 (pp_c_storage_class_specifier): Likewise.
1599 (pp_c_function_specifier): Likewise.
1600 (pp_c_declaration_specifiers): Likewise.
1601 (pp_c_direct_declarator): Likewise.
1602 (pp_c_declarator): Likewise.
1603 (pp_c_declaration): Likewise.
1604 (pp_c_statement): Likewise.
1605 (pp_c_integer_constant): Rename from pp_c_integer_literal.
1606 (pp_c_character_constant): Rename from pp_c_character_literal.
1607 (pp_c_bool_constant): Rename from pp_c_bool_literal.
1608 (pp_c_enumeration_constant): Rename from pp_c_enumerator.
1609 (pp_c_floating_constant): Rename from pp_c_real_literal.
1610 (pp_c_constant): Rename from pp_c_literal.
1611 * c-lang.c: Include diagnostic.h and c-pretty-print.h
1612 (LANG_HOOKS_INITIALIZE_DIAGNOSTITCS): Define.
1613 (c_initialize_diagnostics): New.
1614 * Makefile.in (c-lang.o): Update dependency.
1615
bae39a73
NS
16162003-08-10 Nathan Sidwell <nathan@codesourcery.com>
1617
1618 * c-typeck.c (digest_init): Add conversion for VECTOR_TYPEs.
1619
3372178c
RS
16202003-08-10 Richard Sandiford <rsandifo@redhat.com>
1621
1622 * config/mips/mips.c (mips_no_mips16_string): Remove.
1623 (override_options): Don't handle -mips16 as part of -mipsN.
1624 * config/mips/mips.h (mips_no_mips16_string): Remove declaration.
1625 (TARGET_SWITCHES): Add -mips16 and -mno-mips16 entries.
1626 (TARGET_OPTIONS): Remove -mno-mips16.
1627
1d5565cd
RS
16282003-08-10 Richard Sandiford <rsandifo@redhat.com>
1629
1630 * config/mips/mips-protos.h (coprocessor_operand): Remove declaration.
1631 (coprocessor2_operand): Likewise.
1632 * config/mips/mips.c (STAB_CODE_TYPE): Remove.
1633 (lookup_name): Remove declaration.
1634 (abort_with_insn): Remove. Replace all uses with fatal_insn.
1635 (mips16, mips_abicalls): Remove.
1636 (mips_char_to_class): Remove initialiser: all entries are NO_REGS.
1637 (arith32_operand, large_int, true_reg_or_0_operand): Remove.
1638 (coprocessor_operand, coprocessor2_operand): Remove.
1639 (override_options): Don't set mips16 or mips_abicalls.
1640 (print_operand): Don't expect SIGN_EXTEND operands.
1641 (mips_secondary_reload_class): Likewise.
1642 (mips_output_conditional_branch): Remove disabled long-branch code.
1643 * config/mips/mips.h (call_used_regs): Remove declaration.
1644 (may_call_alloca): Likewise.
1645 (mips_cpu_attr, mips_abicalls_type, mips_abicalls_attr): Remove.
1646 (mips_abicalls, mips16): Remove declarations.
1647 (ASM_FINAL_SPEC, LIB_SPEC): Remove.
1648 (CC1_SPEC): Remove outdated comment.
1649 (MIPS_VERSION, MACHINE_TYPE): Remove.
1650 (TARGET_VERSION_INTERNAL, TARGET_VERSION): Remove.
1651 (PC_REGNUM, STACK_POINTER_OFFSET): Remove disabled definitions.
1652 (STRUCT_VALUE_RETURN_REGNUM, STACK_DYNAMIC_OFFSET): Likewise.
1653 (PUSH_ROUNDING): Likewise.
1654 (ASSEMBLER_SCRATCH_REGNUM): Remove.
1655 * config/mips/mips.md: Replace mips_cpu_attr with mips_tune
1656 and mips16 with TARGET_MIPS16.
1657
4169c321
PB
16582003-08-09 Per Bothner <pbothner@apple.com>
1659
c5d19037
ZW
1660 * cppinit.c (cpp_read_main_file): Split out source-independent
1661 initialization to separate function ...
1662 (cpp_post_options): New function.
1663 * cppfiles.c (cpp_stack_file): Rename public name to ...
1664 (_cpp_stack_file): New internal function name.
1665 * cpplib.h: Update accordingly.
1666 * cppinit.c: (cpp_create_reader): Initialize cpp_readers line here.
1667 (cpp_read_main_file): Don't initialize line here.
1668 * c-opts.c (c_common_post_options): Call cpp_post_options.
1669 (c_common_parse_file): Call cpp_read_main_file, not cpp_stack_file.
1670 * fix-header.c (read_scan_file): Call cpp_post_options.
1671
3d93cdfa
PB
16722003-08-09 Per Bothner <per@bothner.com>
1673
1674 * c-decl.c (SCOPE_LIST_APPEND): Remove bogus line continuation.
1675
dfd8db86
JDA
16762003-08-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1677
1678 * pa.c (pa_asm_output_mi_thunk): Fix typo.
1679
a54c550f
NB
16802003-08-09 Neil Booth <neil@daikokuya.co.uk>
1681
1682 PR preprocessor/11839
1683 * cppfiles.c (open_file): Handle ENOTDIR.
1684
142ee136
RS
16852003-08-09 Richard Sandiford <rsandifo@redhat.com>
1686
1687 PR target/11699
1688 * config/mips/mips.c (override_options): Reject -mabi=eabi -mabicalls.
1689
561af708
JDA
16902003-08-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1691
1692 * pa.md (extzv, extv, insv): Fix operand limit checks. Fail if
1693 source/destination is not a register operand.
1694
af1e5518
RH
16952003-08-08 Richard Henderson <rth@redhat.com>
1696
c5d19037
ZW
1697 PR target/11535
1698 * config/ia64/ia64.c (ia64_initial_elimination_offset): Remove
1699 RETURN_ADDRESS_POINTER_REGNUM.
1700 (ia64_expand_prologue): Don't frob it.
1701 (ia64_output_function_epilogue): Likewise.
1702 (ia64_return_addr_rtx): New.
1703 (ia64_split_return_addr_rtx): New.
1704 * config/ia64/ia64-protos.h: Update.
1705 * config/ia64/ia64.h (FIRST_PSEUDO_REGISTER): Decrement.
1706 (RETURN_ADDRESS_POINTER_REGNUM): Remove.
1707 (GENERAL_REGNO_P): Don't check it.
1708 (AR_*_REGNUM): Renumber.
1709 (FIXED_REGISTERS): Remove RETURN_ADDRESS_POINTER_REGNUM.
1710 (CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS): Likewise.
1711 (REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Likewise.
1712 (ELIMINABLE_REGS, REGISTER_NAMES): Likewise.
1713 (RETURN_ADDR_RTX): Use ia64_return_addr_rtx.
1714 * config/ia64/ia64.md (UNSPEC_RET_ADDR): New.
1715 (movdi_ret_addr): New.
af1e5518 1716
5dddb920
GK
17172003-08-08 Geoffrey Keating <geoffk@apple.com>
1718
1719 * config.gcc (powerpc-*-darwin*): Don't build a soft-float multilib.
1720
7bb3fbbb
RS
17212003-08-08 Roger Sayle <roger@eyesopen.com>
1722
1723 * tree.h (get_identifier) Define a macro form of get_identifier
1724 that calls get_identifier_with_length when the string is constant.
1725 (get_identifier_with_length): Change type of second argument to
1726 size_t in prototype.
1727 * stringpool.c (get_identifier): Undefine the macro before giving
1728 the function definition.
1729 (get_identifier_with_length): Change type of second argument to
1730 size_t in function definition.
1731 * hashtable.c (calc_hash): Change type of second argument to size_t.
1732 (ht_lookup): Change type of third argument to size_t. Reorganize
1733 to speed-up the cases where the hash table slot is empty, or the
1734 first probe matches (i.e. there isn't a collision).
1735 * hashtable.h (ht_lookup): Adjust function prototype.
1736
32247ce9
BI
17372003-08-08 Bernardo Innocenti <bernie@develer.com>
1738
1739 PR target/9697
1740 PR target/11777
1741 * longlong.h (count_leading_zeros): Exclude on __mcpu32__.
1742
df38ffef
NB
17432003-08-08 Neil Booth <neil@daikokuya.co.uk>
1744
1745 * common.opt: Add debug switches.
1746 * flags.h (use_gnu_debug_info_extensions): Boolify.
1747 * opts.c (write_symbols, debug_info_level,
1748 use_gnu_debug_info_extensions): Move from toplev.c.
1749 (set_debug_level): New.
1750 (common_handle_options): Handle debug switches.
1751 (print_help): Display target options directly.
1752 * toplev.c (debug_hooks): Don't initialize.
1753 (write_symbols, debug_info_level,
1754 use_gnu_debug_info_extensions): Move to opts.c.
1755 (debug_args, display_help, decode_g_option): Remove.
1756 (process_options): Set no debug if level zero here,
1757 and no-debug-hooks. Error here if impossible debug format selected.
1758 * toplev.h (display_help, decode_g_option): Remove.
1759
679c4092
RS
17602003-08-08 Richard Sandiford <rsandifo@redhat.com>
1761
1762 * tree.c (get_file_function_name_long): Fix size of alloca() area.
1763
c8b5beb8
KC
17642003-08-08 Kelley Cook <kelleycook@wideopenwest.com>
1765
1766 * configure.in (gcc_cv_prog_cmp_skip): Flipflop make_compare_target
c5d19037 1767 and gcc_cv_prog_cmp_skip.
c8b5beb8
KC
1768 * configure: Regenerate.
1769
6b3d1e47
SC
17702003-08-08 Stan Cox <scox@redhat.com>
1771
1772 * config/iq2000: New port.
1773 * config.gcc (iq2000-*-elf): Added.
1774 * doc/install.texi (Specific): Add iq2000 description.
1775
cfa9ee99
AS
17762003-08-08 Andreas Schwab <schwab@suse.de>
1777
7ce27ffb 1778 * configure.in (gcc_cv_as_ia64_ltoffx_ldxmov_relocs): Fix quoting
cfa9ee99
AS
1779 and insert missing empty argument.
1780 * configure: Regenerate.
1781
cb99b61a
JDA
17822003-08-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1783
62910663
JDA
1784 * pa.c (update_total_code_bytes): Use new macro IN_NAMED_SECTION_P.
1785 (attr_length_millicode_call): Likewise.
1786 (attr_length_call): Likewise. Revise some maximum insn lengths.
1787 (attr_length_indirect_call): Likewise.
1788 (output_call): Fix thinko that added extra nop.
1789 * pa.h (IN_NAMED_SECTION_P): Define.
1790
cb99b61a
JDA
1791 PR c++/11712
1792 * pa-hpux.h, pa-hpux10.h, pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define
1793 __STDC_EXT__ when using C++ dialect.
1794
97b3d0f0
R
17952003-08-07 J"orn Rennecke <joern.rennecke@superh.com>
1796
7d73a2ba
R
1797 * sh.c (calc_live_regs): If the return address pointer is live,
1798 force pr live.
1799 (sh5_schedule_saves): Exclude PR_MEDIA_REG from being a temp register
1800 for saves / restores.
1801 (sh_expand_epilogue): If sh_media_register_for_return returns a
1802 register number, flag the instructions that restores PR_MEDIA_REG
1803 as possibly dead.
1804 Remove dead update of offset.
1805 (sh_get_pr_initial_val): Use UNSPEC_RA if we don't know yet if
1806 we can use the result of get_hard_reg_initial_val.
1807 * sh.md (UNSPEC_RA): New constant.
1808 (movsi_i_lowpart+1): Changed into a define_insn_and_split, named:
1809 (load_ra). Handle UNSPEC_RA.
1810 (sibcall_media): Use PR_MEDIA_REG.
1811
97b3d0f0
R
1812 * sh.h (CALL_USED_REGISTERS): Include PR_REG and PR_MEDIA_REG.
1813 * sh.c (calc_live_regs): Use sh_pr_n_sets to determine if pr
1814 needs saving on SHmedia.
1815
d40c829f
UW
18162003-08-07 Ulrich Weigand <uweigand@de.ibm.com>
1817
1818 * config/s390/s390.md: Replace all occurrences of \\t with \t.
1819
a5342656
RS
18202003-08-07 Richard Sandiford <rsandifo@redhat.com>
1821
1822 * local-alloc.c (combine_regs): Fix comment typo.
1823
fdc49e10
ZW
18242003-08-06 Zack Weinberg <zack@codesourcery.com>
1825
1826 * c-decl.c (builtin_decls): Replace with first_builtin_decl
1827 and last_builtin_decl.
1828 (c_init_decl_processing): Initialize both.
1829 (c_reset_state): Iterate from first_builtin_decl to
1830 last_builtin_decl inclusive to reintroduce builtins.
1831
a32767e4
DM
18322003-08-06 David Mosberger <davidm@hpl.hp.com>
1833
fdc49e10
ZW
1834 * doc/extend.texi (Function Attributes): Document the IA-64 version
1835 of the "model" attribute.
1836
1837 * config/ia64/ia64.h (SYMBOL_FLAG_SMALL_ADDR): New macro.
1838 (SYMBOL_REF_SMALL_ADDR_P): Ditto.
1839 (PREDICATE_CODES): Mention "small_addr_symbolic_operand".
1840
1841 * config/ia64/ia64.c (ia64_handle_model_attribute): New function.
1842 (ia64_encode_section_info): Likewise.
1843 (ia64_attribute_table): Add "model" attribute.
1844 (TARGET_ENCODE_SECTION_INFO): Define.
1845 (small_addr_symbolic_operand): New function.
1846 (got_symbolic_operand): Return 0 for a symbolref to an object
1847 in the small address area.
1848 (enum ia64_addr_area): New type.
1849 (small_ident1): New variable.
1850 (small_ident2): Likewise.
1851 (init_idents): New function.
1852 (ia64_get_addr_area): Likewise.
1853 (ia64_encode_addr_area): Likewise.
1854 (ia64_encode_section_info): Likewise.
1855 (ia64_expand_load_address): For symbolic references to objects in
1856 the small-address-area, load the address via gen_rtx_SET() (which,
1857 eventually, will expand into "addl").
a32767e4 1858
8b82c528
PB
18592003-08-06 Per Bothner <pbothner@apple.com>
1860
1861 * line-map.h (fileline): New typedef.
fdc49e10 1862 (struct line_map, linemap_add, linemap_lookup): Use it.
8b82c528
PB
1863 * input.h (struct location_s): Comment notes that long-term we want
1864 to replace it by fileline.
1865
b869f904
R
18662003-08-06 J"orn Rennecke <joern.rennecke@superh.com>
1867
1868 Fix SHcompact exception handling:
1869 * sh.c (sh_get_pr_initial_val): If PR is or miight be clobbered
1870 by the prologue, return a MEM with return_address_pointer_rtx
1871 as address.
1872 * sh.h (HARD_REGNO_MODE_OK): PR is OK for SImode.
1873 (RETURN_ADDR_OFFSET): Don't define.
1874 (SH_DBX_REGISTER_NUMBER): Use SHmedia numbers for SHmedia
1875 registers that are visible in compact mode. Show that SHmedia
1876 registers still exist in compact mode, even if there are not
1877 readily accessible.
1878 (ASM_PREFERRED_EH_DATA_FORMAT): Supply DW_EH_PE_indirect
1879 if GLOBAL. Use DW_EH_PE_textrel (nominally) for CODE,
1880 and DW_EH_PE_pcrel for pic data.
1881 (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): If DW_EH_PE_textrel,
1882 set SYMBOL_FLAG_FUNCTION in symbol, and actually use
1883 DW_EH_PE_pcrel / DW_EH_PE_absptr encoding.
1884 (ALLOCATE_INITIAL_VALUE): Put PR on stack if prologue clobbers it.
1885 * sh.md (movsi_media-1): New splitter.
1886
f2feed2c
GP
18872003-08-06 Graeme Peterson <gp@qnx.com>
1888
1889 * config/i386/nto.h: New.
1890 * config/i386/t-nto: New.
1891 * config.gcc (i[34567]86-*-nto-qnx*): New.
1892
1cba0a4e
PE
18932003-08-06 Phil Edwards <pme@gcc.gnu.org>
1894
1895 * doc/install.texi (*-*-solaris2*): Refine configure instructions.
1896
980f6e8e
AM
18972003-08-06 Alan Modra <amodra@bigpond.net.au>
1898
1899 * calls.c (load_register_parameters): Arrange for call_fusage to
1900 report the whole register as used when shifting to the msb.
1901
d25225de
RS
19022003-08-05 Roger Sayle <roger@eyesopen.com>
1903
1904 * builtins.c (expand_builtin): When not optimizing, call the library
1905 function for all builtins that have library functions (except alloca).
1906
b20d9f0c
AO
19072003-08-05 Alexandre Oliva <aoliva@redhat.com>
1908
1909 * c.opt: Introduce -fworking-directory.
1910 * doc/cpp.texi, doc/invoke.texi, doc/cppopts.texi: Document it.
1911 * c-common.h (flag_working_directory): Declare.
1912 * c-common.c (flag_working_directory): Define.
1913 * c-opts.c (c_common_handle_options): Set it.
1914 (sanitize_cpp_opts): Set...
1915 * cpplib.h (struct cpp_options): ... working_directory option.
1916 (struct cpp_callbacks): Add dir_change.
1917 * cppinit.c (read_original_filename): Call...
1918 (read_original_directory): New. Look for # 1 "directory//"
1919 and process it.
1920 (cpp_read_main_file): Call dir_change callback if working_directory
1921 option is set.
1922 * gcc.c (cpp_unique_options): Pass -g*.
1923 * c-lex.c (cb_dir_change): New.
1924 (init_c_lex): Set dir_change callback.
1925 * toplev.c (src_pwd): New static variable.
1926 (set_src_pwd, get_src_pwd): New functions.
1927 * toplev.h (get_src_pwd, set_src_pwd): Declare.
1928 * dbxout.c (dbxout_init): Call get_src_pwd() instead of getpwd().
1929 * dwarf2out.c (gen_compile_unit_die): Likewise.
1930 * dwarfout.c (output_compile_unit_die, dwarfout_init): Likewise.
1931
e1a4dd13
GDR
19322003-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
1933
1934 * pretty-print.h (pp_set_line_maximum_length): Make macro.
1935 (pp_set_prefix): Likewise.
1936 (pp_destroy_prefix): Likewise.
1937 (pp_remaining_character_count_for_line): Likewise.
1938 (pp_clear_output_area): Likewise.
1939 (pp_formatted_text): Likewise.
1940 (pp_last_position_in_text): Likewise.
1941 (pp_emit_prefix): Likewise.
1942 (pp_append_text): Likewise.
1943 (pp_flush): Likewise.
1944 (pp_format_text): Likewise.
1945 (pp_format_verbatim): Likewise.
1946 (pp_tree_identifier): Tidy.
1947 * pretty-print.c (pp_base_format_text): Rename from pp_format_text.
1948 (pp_base_format_verbatim): Rename from pp_format_verbatim.
1949 (pp_base_flush): Rename from pp_flush.
1950 (pp_base_set_line_maximum_length): Rename from
1951 pp_set_line_maximum_length.
1952 (pp_base_clear_output_area): Rename from pp_clear_output_area.
1953 (pp_base_set_prefix): Rename from pp_set_prefix.
1954 (pp_base_destroy_prefix): Rename from pp_destroy_prefix.
1955 (pp_base_emit_prefix): Rename from pp_emit_prefix.
1956 (pp_base_append_text): Rename from pp_append_text.
1957 (pp_base_formatted_text): Rename from pp_formatted_text.
1958 (pp_base_last_position_in_text): Rename from pp_last_position_in_text.
1959 (pp_base_remaining_character_count_for_line): Rename from
1960 pp_remaining_character_count_for_line.
1961 * diagnostic.h (diagnostic_format_decoder): Tidy.
1962 (diagnostic_flush_buffer): Likewise.
1963 * c-pretty-print.h: (pp_c_string_literal): Declare.
1964 (pp_c_real_literal): Likewise.
1965 (pp_c_integer_literal): Likewise.
1966 * c-pretty-print.c (pp_c_char): Use pp_string in lieu of
fdc49e10 1967 pp_identifier.
e1a4dd13
GDR
1968 (pp_c_character_literal): Tidy.
1969 (pp_c_string_literal): Make public.
1970 (pp_c_bool_literal): Likewise.
1971 (pp_c_integer_literal): Likewise.
1972 (pp_c_real_literal): Likewise.
1973
1974 * Makefile.in (C_PRETTY_PRINT_H): New variable.
1975 (c-pretty-print.o): Update dependence.
1976
8c98b170
CD
19772003-08-05 Chris Demetriou <cgd@broadcom.com>
1978
1979 * config/mips/mips.md (fix_truncdfsi2_macro): Properly restore
1980 ".set nomacro" state.
1981 (fix_truncsfsi2_macro): Likewise.
1982
b3c3af2f
SB
19832003-08-05 Steven Bosscher <steven@gcc.gnu.org>
1984
1985 * tree.h (DID_INLINE_FUNC): Remove macro.
1986 (DECL_DECLARED_INLINE_P): Move from c-tree.h and cp/cp-tree.h,
1987 add tree check for FUNCTION_DECL.
1988 (DECL_ESTIMATED_INSNS): Move from c-common.h and java/java-tree.h.
1989 (struct tree_decl): Rename inlined_function_flag to
1990 declared_inline_flag.
1991 * c-common.h (c_lang_decl): Remove.
1992 (DECL_ESTIMATED_INSNS): Remove.
1993 * c-tree.h (struct lang_decl): Don't include c_lang_decl.
1994 (DECL_DECLARED_INLINE_P): Remove.
1995 * c-decl.c (grokdeclarator): Update comment. With -finline-functions,
1996 do not reset DECL_DECLARED_INLINE_P. Don't use DID_INLINE_FUNC.
1997 (finish_function): Make uninlinable a bool. Fixup call to
1998 tree_inlinable_function_p() and fix some code style issues.
1999 * cgraph.h (disgread_inline_limits): Fix spelling: `disregard'.
2000 * cgraph.c (dump_cgraph): Likewise.
2001 * cgraphunit.c (cgraph_decide_inlining): Likewise
2002 (cgraph_finalize_compilation_unit): Likewise.
2003 Also update call to tree_inlinable_function_p().
2004 (cgraph_default_inline_p): Don't use DID_INLINE_FUNC. Instead
2005 look at DECL_DECLARED_INLINE and reverse logic.
2006 * print-tree.c (print_node): Likewise.
2007 * toplev.c (rest_of_handle_inlining): Don't use DID_INLINE_FUNC.
2008 * tree-inline.h (tree_inlinable_function_p): Make a bool. Update
2009 prototype.
2010 * tree-inline.c (inlinable_function_p): Split up in this function to
2011 check for basic inlining inhibiting conditions, and new
2012 limits_allow_inlining() function. Warn if inlining is impossible
2013 because the inline candidate calls alloca or uses sjlj exceptions.
2014 (limits_allow_inlining): this new function to check if the inlining
2015 limits are satisfied. Throttle from currfn_max_inline_insns, not from
2016 MAX_INLINE_INSNS_SINGLE. The latter only makes sense if
2017 MAX_INLINE_INSNS_AUTO and MAX_INLINE_INSNS_SINGLE are equal.
2018 Update prototypes.
2019 (tree_inlinable_function_p): Make a bool. Update call to
2020 inlinable_function_p
2021 (expand_call_inline): Use limits_allow_inlining() when not in
2022 unit-at-a-time mode to decide on inlining. Don't use DID_INLINE_FUNC,
2023 instead see if the function was declared `inline'.
2024
ed8395a0
JZ
20252003-08-05 Josef Zlomek <zlomekj@suse.cz>
2026
2027 * gcse.c (try_replace_reg): Fix updating of note.
2028
02a1994c
RS
20292003-08-04 Roger Sayle <roger@eyesopen.com>
2030
2031 PR middle-end/11771
2032 * fold-const.c (negate_expr_p <MINUS_EXPR>): Change to match the
2033 logic in negate_expr, i.e. we don't invert (A-B) for floating
2034 point types unless flag_unsafe_math_optimizations.
2035
f2593a66
RS
20362003-08-04 Roger Sayle <roger@eyesopen.com>
2037
2038 * fold-const.c (fold <PLUS_EXPR>): Transform x+x into x*2.0.
2039 Optimize x*c+x and x+x*c into x*(c+1) and x*c1+x*c2 into x*(c1+c2)
2040 for floating point expressions with -ffast-math.
2041 (fold <MULT_EXPR>): Don't transform x*2.0 into x+x.
2042 * expmed.c (expand_mult): Wrap long line. Expand x*2.0 as x+x.
2043
03aa99d4
RS
20442003-08-04 Roger Sayle <roger@eyesopen.com>
2045
2046 * c-common.c (flag_noniso_default_format_attributes): Delete.
2047 (built_in_attribute): Don't define/undefine DEF_FN_ATTR.
2048 (c_attrs_initialized): Delete.
2049 (c_common_nodes_and_builtins): Don't test c_attrs_initialized,
2050 always call c_init_attributes.
2051 (c_init_attributes): Don't define/undefine DEF_FN_ATTR. Don't
2052 set c_attrs_initialized when done.
2053 (c_common_insert_default_attributes): Delete.
2054 * c-common.h (flag_noniso_default_format_attributes): Delete.
2055 (c_coomon_insert_default_attributes): Delete prototype.
2056 * c-opts.c (set_std_c89, set_std_c99, set_std_cxx98): Dont set
2057 flag_noniso_default_format_attributes.
2058
2059 * c-decl.c (c_insert_default_attributes): Delete.
2060 * c-tree.h (c_insert_default_attributes): Delete prototype.
2061
2062 * attribs.c (decl_attributes): Don't call insert_default_attributes
2063 langhook. Update function description comment.
2064 * langhooks.h (lang_hooks): Remove insert_default_attributes field.
2065 * langhooks-def.h (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Delete.
2066 * c-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Don't define.
2067 * system.h: Poison LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES macro.
2068
2069 * objc/objc-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Don't
2070 define.
2071
38e596df
RS
20722003-08-04 Richard Sandiford <rsandif@redhat.com>
2073
2074 * config/mips/mips.c (override_options): Disable -G on targets that
2075 have no .section support.
2076 (mips_select_section): Use default_select_section for such targets.
2077
76d2e2c5
NN
20782003-08-04 Nathanael Nerode <neroden@gcc.gnu.org>
2079
2080 * fixinc/inclhack.def (svr4_undeclared_getrnge): Introduce and enable.
2081 * fixinc/inclhack.def (static_getrnge): Remove disabled hack.
2082 * fixinc/fixincl.x: Rebuild.
2083 * fixinc/tests/base/regexp.h: New test.
2084
b2734c68
AO
20852003-08-04 Alexandre Oliva <aoliva@redhat.com>
2086
2087 * c-ppoutput.c (cb_line_change): Don't skip line changing while
2088 parsing macro arguments in the top-level context.
2089
4e87a651
NB
20902003-08-04 Neil Booth <neil@daikokuya.co.uk>
2091
2092 * config.in: Remove HAVE_LSTAT.
2093 * configure, configure.in: Don't test for lstat.
2094
21ecc5a7
GDR
20952003-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
2096
2097 * opts.c (decode_options): Do language-specific initialization for
2098 the global diagnostic context.
2099 * langhooks-def.h (lhd_initialize_diagnostics): Declare.
2100 (LANG_HOOKS_INITIALIZE_DIAGNOSTITCS): New macro.
2101 (LANG_HOOKS_INITIALIZER): Adjust.
fdc49e10
ZW
2102 * langhooks.h (struct lang_hooks): Add new field
2103 initialize_diagnostics.
21ecc5a7
GDR
2104 * langhooks.c (lhd_initialize_diagnostics): Define.
2105
21062003-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
2107
2108 * pretty-print.h: Adjust macro definitions.
2109 * pretty-print.c (pp_newline): Rename to pp_base_newline.
2110 (pp_character): Rename to pp_base_character.
2111 (pp_string): Rename to pp_base_string.
2112 * c-pretty-print.c (pp_buffer): Move to pretty-print.h
2113 (pp_newline): Likewise. Adjust.
2114 (pp_c_char): Adjust.
2115
d82f81dd
KG
21162003-08-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2117
2118 * builtins.def (BUILT_IN_ABS, BUILT_IN_IMAXABS, BUILT_IN_LABS,
2119 BUILT_IN_LLABS): Move to miscellaneous section.
2120
335d03ec
NB
21212003-08-03 Neil Booth <neil@daikokuya.co.uk>
2122
cb6eb88a 2123 PR preprocessor/11534
335d03ec
NB
2124 * cppexp.c (parse_defined): Warn only if -pedantic.
2125
76bf2c97
NB
21262003-08-03 Neil Booth <neil@daikokuya.co.uk>
2127
2128 * cppfiles.c (stack_file): Use file path.
2129
178b2b9f
RS
21302003-08-02 Roger Sayle <roger@eyesopen.com>
2131
2132 * builtin-types.def (BT_SSIZE): New primitive type.
2133 (BT_FN_INT_PTR_CONST_STRING_VALIST_ARG,
2134 BT_FN_STRING_CONST_STRING_CONST_STRING_INT,
2135 BT_FN_SIZE_STRING_SIZE_CONST_STRING_CONST_PTR,
2136 BT_FN_SSIZE_STRING_SIZE_CONST_STRING_VAR): New function types.
2137 * builtins.def (BUILT_IN_DCGETTEXT, BUILT_IN_DGETTEXT,
2138 BUILT_IN_FSCANF, BUILT_IN_GETTEXT, BUILT_IN_STRFMON,
2139 BUILT_IN_STRFTIME, BUILT_IN_VFPRINTF, BUILT_IN_VFSCANF): New builtins.
2140 * builtin-attrs.def: Remove DEF_FN_ATTR construct and the last
2141 few functions that define default attributes using it.
2142 * c-common.c (c_common_insert_default_attributes): Do nothing.
2143
2144 * doc/extend.texi: Document these "new" builtins.
2145
469146c1
KK
21462003-08-02 Kaz Kojima <kkojima@gcc.gnu.org>
2147
2148 * config/sh/linux.h (SUBTARGET_LINK_SPEC): Don't set rpath.
2149 (LIB_SPEC): Set -lpthread always when -pthread set. Set -lieee
2150 when -mieee-fp set and -shared not set.
2151 (SH_FALLBACK_FRAME_FLOAT_STATE): Don't define for SH5.
2152
49634b3a
NB
21532003-08-02 Neil Booth <neil@daikokuya.co.uk>
2154
2155 * cppfiles.c (struct _cpp_file): Rename once_only_next to
2156 next_file. Remove import and pragma_once, add once_only.
2157 (find_file): Add new file structures to the all_files list.
2158 (should_stack_file): Mark #import-ed files once-only, and
2159 don't stack them if the file has already been stacked.
2160 (_cp_mark_file_once_only): Simplify.
2161 * cpphash.h (struct cpp_reader): Rename once_only_files
2162 to all_files. Rename saw_pragma_once to seen_once_only.
2163 (_cpp_mark_file_once_only): Update prototype.
2164 * cpplib.c (do_pragma_once): Update.
2165
cf1ee30c
NB
21662003-08-02 Neil Booth <neil@daikokuya.co.uk>
2167
2168 * cppfiles.c (ENOTDIR): Remove.
2169 (open_file_in_dir): Rename find_file_in_dir. Handle errors
2170 other than ENOENT here.
2171 (once_only_file_p): Rename should_stack_file.
2172 (find_file, open_file_failed, read_file_guts): Report errors
2173 with full path name.
2174 (read_file): Move pch handling to should_stack_file.
2175 (should_stack_file): Handle PCH and once-only issues, and
2176 reading the file.
2177 (stack_file): Don't do file reads.
2178
50612a04
ZD
21792003-08-02 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
2180
2181 * libgcov.c (gcov_exit): Cleanup and fix.
2182 * profile.c (compute_value_histograms): Don't try to read profiles
2183 that are not present.
2184
f6a46818
KG
21852003-08-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2186
f53b62e1
KG
2187 * builtins.def: Categorize.
2188
f6a46818
KG
2189 * builtins.def (BUILT_IN_CABS, BUILT_IN_CABSF, BUILT_IN_CABSL):
2190 Mind fp rounding.
2191 (BUILT_IN_FFSL): Use DEF_EXT_LIB_BUILTIN.
2192
12550591
AT
21932003-08-02 Andreas Tobler <a.tobler@schweiz.ch>
2194
2195 * config.gcc: Enable posix threads by default on darwin.
2196
5f77fbd4
JJ
21972003-08-01 Jakub Jelinek <jakub@redhat.com>
2198
2199 * cfgcleanup.c (outgoing_edges_match): Check REG_EH_REGION notes
2200 even if nehedges1 is 0.
2201
f4dbf936
NN
22022003-08-01 Nathanael Nerode <neroden@gcc.gnu.org>
2203
2204 * fixinc/fixfixes.c, fixinc/fixlib.c, fixinc/fixlib.h,
2205 fixinc/fixtests.c, fixinc/procopen.c, fixinc/server.c,
2206 fixinc/server.h, fixinc/fixincl.c: ANSIfy function prototypes
2207 and defintions.
2208
2209 * fixinc/inclhack.def (broken_cabs): Make matching more generous.
2210 * fixinc/fixincl.x: Regenerate.
2211 * fixinc/tests/base/math.h: Regenerate to match test_text change.
2212
c76becbd
RO
22132003-08-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2214
2215 * ggc-common.c (gt_pch_restore): Case MAP_FAILED to void *.
2216
f920765d
RK
22172003-08-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2218
2219 * except.c (sjlj_emit_dispatch_table): Use ptr_mode, not Pmode,
2220 for accesses to exc_ptr.
2221
8e5f33ff
GK
22222003-08-01 Geoffrey Keating <geoffk@apple.com>
2223
2224 * doc/sourcebuild.texi (Front End Directory): Don't make references
2225 to libsubdir, it's not part of the interface to frontends.
2226 * doc/install.texi (Configuration): Help users read faster by saying
2227 that GCC's configure options are the standard autoconf ones.
2228 Mention --libdir. Update the default rules for finding the
2229 assembler. Don't use libsubdir since we haven't said what it means.
2230 (Specific): In the Solaris 7 notes, update the place to put the
2231 assembler.
2232 * doc/invoke.texi: Update lib/gcc-lib to lib/gcc.
2233 * doc/cpp.texi (Search Path): Actually, the search path
2234 depends on libdir, which can relocate with cpp.
2235 * doc/tm.texi (Driver): Don't document STANDARD_EXEC_PREFIX, it's
2236 now a private interface between the Makefile and the driver.
2237
75c20980
RH
22382003-08-01 Richard Henderson <rth@redhat.com>
2239
2240 * system.h: Poison ASM_SIMPLIFY_DWARF_ADDR.
2241
2242 * varasm.c (lookup_constant_def): New function.
2243 * rtl.h (lookup_constant_def): Declare it.
fdc49e10 2244 * dwarf2out.c (loc_descriptor_from_tree): Use it.
75c20980
RH
2245 Use targetm.delegitimize_address, not ASM_SIMPLIFY_DWARF_ADDR.
2246
f91f41b2
ZW
22472003-08-01 Zack Weinberg <zack@codesourcery.com>
2248
2249 * c-decl.c (gettags, pushdecl_function_level): Delete.
2250 (last_function_parm_vars): Rename last_function_parm_others.
2251 (current_function_parm_vars): Rename current_function_parm_others.
2252 (struct c_scope): Rewrite comment explaining this data structure.
2253 Add names_last, blocks_last, parms_last fields. Rename
2254 incomplete_list to incomplete.
2255 (SCOPE_LIST_APPEND, SCOPE_LIST_CONCAT): New macros.
2256 (poplevel): Ignore second argument. No need to nreverse
2257 anything. Restructure such that each list is processed
2258 exactly once. Use 'const location_t *locus' syntactic sugar
2259 variable where useful. Issue unused variable warnings
2260 ourselves, do not rely on function.c.
2261 (insert_block, pushdecl, bind_label): Use SCOPE_LIST_APPEND.
2262 (pushdecl_top_level): Likewise. Don't call duplicate_decls.
2263 (implicitly_declare): decl cannot be error_mark_node.
2264 (undeclared_variable): Manipulate scope structure directly.
2265 (c_make_fname_decl): Likewise.
2266 (getdecls, c_init_decl_processing): Fix comment.
2267 (mark_forward_parm_decls): Use SCOPE_LIST_CONCAT. No need
2268 for 'last' variable.
2269 (grokparms): No need to nreverse parms list.
2270 (store_parm_decls_newstyle): Set up the parms_last and
2271 names_last fields of the new scope too.
2272 (store_parm_decls_oldstyle): Can assume DECL_WEAK is not set
2273 on parms to begin with; check this under ENABLE_CHECKING. Set
2274 up parms_last.
2275 (check_for_loop_decls): Refer directly to current_scope->tags.
2276 Use consistent quote style in diagnostics.
2277 (c_write_global_declarations): The names list is not backward.
2278
2279 * c-common.h: Don't prototype gettags.
2280 * c-parse.in: Call poplevel with second argument 0 always.
2281
a8eb1db5
KG
22822003-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2283
2284 * builtins.def: Resort builtins.
2285
da7cfe13
KG
22862003-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2287
2288 * builtins.def (DEF_GCC_BUILTIN, DEF_LIB_BUILTIN,
2289 DEF_EXT_LIB_BUILTIN, DEF_C99_BUILTIN, DEF_C99_C90RES_BUILTIN):
2290 Prepend "__builtin_" onto NAME with string concatenation. Remove
2291 explicit "__builtin_" from each macro call.
2292
2293 Reformat entire file.
2294
ea8eb0b9
KG
22952003-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2296
2297 * builtins.def (ATTR_MATHFN_ERRNO, ATTR_MATHFN_FPROUNDING,
2298 ATTR_MATHFN_FPROUNDING_ERRNO): New macros. Use throughout.
2299
61152e48 23002003-08-01 Andreas Krebbel <krebbel1@de.ibm.com>
3ef093a8
AK
2301
2302 * config/s390/s390.c (s390_select_ccmode): Do not attempt to use CCL,
2303 CCL1, or CCL2 modes with floating point operations.
2304
2305 * config/s390/s390.md ("*addsf3_cc", "*addsf3_cconly", "*adddf3_cc",
2306 "*adddf3_cconly", "*subsf3_cc", "*subsf3_cconly", "*subdf3_cc",
2307 "*subdf3_cconly"): New insns.
2308 ("*negabssi2", "*negabsdi2", "*negabsdf2", "*negabssf2"): Likewise.
2309
bf42e45b
NB
23102003-08-01 Neil Booth <neil@daikokuya.co.uk>
2311
2312 * Makefile.in: Refine dependencies.
2313 * c-opts.c (c_common_handle_option): Do nothing for -Wimport.
2314 * c.opt: Update help for -Wimport.
2315 * cppfiles.c: Include hashtab.h. Update comments.
2316 (stack_file): Read the file before updating dependencies.
2317 (once_only_file_p): Be smarter about marking once-only files.
2318 (_cpp_mark_file_once_only): Correct the check for existence on
2319 the list.
2320 (open_file_failed): Use name not path, which is NULL.
2321 * cpphash.h: Don't include hashtab.h.
2322 (struct _cpp_file): Remove.
2323 (struct cpp_reader): Update.
2324 * cppinit.c (cpp_create_reader): Don't initialize warn_import.
2325 * cpplib.h (struct cpp_options): Remove warn_import.
2326 (cpp_simplify_path): Remove.
2327
a5bcc582
NS
23282003-08-01 Nathan Sidwell <nathan@codesourcery.com>
2329
2330 PR c++/11295
2331 * doc/extend.texi (Statement Expressions): Document C++ semantics.
2332
2fdd01a0
ST
23332003-07-31 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
2334
2335 * config.gcc (sh-*-linux*): Do not override sh/t-linux with sh/t-le.
2336
3c260e1d
KG
23372003-07-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2338
2339 * builtin-types.def: Use `LONGDOUBLE' instead of `LONG_DOUBLE'
2340 throughout.
2341 * builtins.def: Likewise.
2342
40209195
JM
23432003-07-31 Jason Merrill <jason@redhat.com>
2344
2345 * Makefile.in (bubblestrap): Don't require a previous full
2346 bootstrap.
2347
2348 * expr.c (mostly_zeros_p): No longer static.
2349 * tree.h: Declare it.
2350 * stmt.c (resolve_asm_operand_names): Don't copy the pattern
2351 unless we need to do substitutions.
2352
2598550f
RS
23532003-07-31 Roger Sayle <roger@eyesopen.com>
2354
2355 * fold-const.c (fold <MULT_EXPR>): Optimize both x*pow(x,c) and
2356 pow(x,c)*x as pow(x,c+1) for constant values c. Optimize x*x
2357 as pow(x,2.0) when the latter will be expanded back into x*x.
2358 (fold <RDIV_EXPR>): Optimize pow(x,c)/x as pow(x,c-1).
2359 * builtins.c (expand_builtin_pow): Ignore flag_errno_math as
2360 pow can never set errno when used with an integer exponent.
2361 Always use expand_powi when exponent is -1, 0, 1 or 2.
2362 (fold_builtin): Don't rewrite pow(x,2.0) as x*x nor pow(x,-2.0)
2363 as 1.0/(x*x). This avoids unbounded recursion as we now prefer
2364 the pow forms of these expressions.
2365
a8ee6e2d
GK
23662003-07-31 Geoffrey Keating <geoffk@apple.com>
2367
2368 * Makefile.in (libexecdir): New.
2369 (libsubdir): Use gcc instead of gcc-lib.
2370 (libexecsubdir): New.
2371 (ORDINARY_FLAGS_TO_PASS): Add libexecsubdir.
2372 (DRIVER_DEFINES): Add STANDARD_LIBEXEC_PREFIX, use gcc instead of
2373 gcc-lib.
2374 (installdirs): Make libexecsubdir.
2375 (install-common): Put executables in libexecsubdir.
2376 (itoolsdir): Use libexecsubdir.
2377 (itoolsdatadir): New.
2378 (install-mkheaders): Separate data files and executables.
2379 (install-collect2): Put executables in libexecsubdir.
2380 (uninstall): Remove libexecsubdir.
2381 * mkheaders.in: Update for new arrangement of files.
2382 (libexecdir): New.
2383 (libexecsubdir): New.
2384 (itoolsdir): Use libexecsubdir.
2385 (itoolsdatadir): New.
2386 * gcc.c (gcc_libexec_prefix): New.
2387 (STANDARD_LIBEXEC_PREFIX): Use gcc instead of gcc-lib.
2388 (standard_exec_prefix_1): Use libexec.
2389 (standard_exec_prefix_2): New.
2390 (standard_libexec_prefix): New.
2391 (process_command): Update for new arrangement of files. Compute
2392 gcc_libexec_prefix. Update for change from gcc-lib to gcc.
2393
631099c9
NN
23942003-07-31 Nathanael Nerode <neroden@gcc.gnu.org>
2395
2396 * inclhack.def (stdio_va_list): Avoid bogus replacement which
2397 triggers on Interix.
2398 * fixincl.x: Regenerate.
2399
a132b6a8
JJ
24002003-07-31 Jakub Jelinek <jakub@redhat.com>
2401
2402 * config/i386/i386.c (legitimate_pic_address_disp_p): Disallow TLS
2403 SYMBOL_REFs not inside UNSPEC even in PLUS rtx.
2404
c67b2a58
RK
24052003-07-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2406
2407 * dwarf2out.c (loc_descriptor_from_tree, case CONSTRUCTOR): New case.
2408
40e941af
PB
24092003-07-31 Per Bothner <pbothner@apple.com>
2410
2411 * opts.c (in_fnames, num_in_fnames): Moved here from c-opts.
2412 (add_input_filename): New function.
2413 (handle_options): Call add_input_filename directly instead of
2414 with a lang hook.
2415 * opts.h (in_fnames, num_in_fnames): Moved here.
2416 (add_input_filename): Declare.
2417 * c-decl.c: Need to #include opts.h.
2418 * Makefile.in (c-decl.o): Also depends on opts.h.
2419 * c-opts.c (in_fnames, num_in_fnames): Moved to opts.c.
2420 (c_common_handle_filename): Replaced by add_input_filename.
2421 * c-common.h (in_fnames, num_in_fnames, c_common_handle_filename):
2422 Remove.
2423 * langhooks.h (struct lang_hooks): Remove handle_filename hook.
2424 * langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME): Remove macro.
2425 (LANG_HOOKS_INITIALIZER): Remove use of LANG_HOOKS_HANDLE_FILENAME.
2426 * c-lang.c (LANG_HOOKS_HANDLE_FILENAME): Remove macro.
2427
9143c6b7
ZD
24282003-07-31 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
2429
2430 * combine.c (try_combine): Set JUMP_LABEL for newly created
2431 unconditional jump.
2432
b7de5864
ZD
24332003-07-31 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
2434
2435 * fold-const.c (fold): Fold some comparisons of bit operations.
2436
fdacb904
JH
2437Thu Jul 31 19:49:53 CEST 2003 Jan Hubicka <jh@suse.cz>
2438
2439 * cgraph.c (create_edge): Fix typo.
2440 * i386.c (pic_symbolic_operand): Reorder tests.
2441
8100063e
NS
24422003-07-31 Nathan Sidwell <nathan@codesourcery.com>
2443
2444 * doc/gcov.texi (Invoking Gcov): Describe output name mangling
2445 more fully.
2446 (Gcov Data Files): Update.
2447
2a4e8ebc
RO
24482003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2449
2450 * config.gcc (alpha*-dec-osf[45]*): Enable POSIX thread support by
2451 default.
2452
2453 * gthr-posix.c: New file.
2454 * gthr-posix.h: Define _REENTRANT if missing.
2455 Make _LIBOBJC #pragma weak visible with _LIBOBJC_WEAK.
2456
2457 * config/alpha/t-osf4 (SHLIB_LINK): Hide dummy functions provided
2458 by gthr-posix.o.
2459 * config/alpha/t-osf-pthread: New file.
2460
2461 * fixinc/inclhack.def (alpha_pthread): New fix.
2462 * fixinc/fixincl.x: Regenerate.
2463 * fixinc/tests/base/pthread.h [ALPHA_PTHREAD_CHECK]: New testcase.
2464
2465 * doc/install.texi (alpha*-dec-osf*): Remove --enable-threads
2466 warning.
2467 Fixes PR bootstrap/9330.
2468
689a714d
RO
24692003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2470
2471 * configure.in (gcc_cv_ld_hidden): Also disable on mips-sgi-irix5*
2472 without GNU ld.
2473 Update comment.
2474 * configure: Regenerate.
2475
caf819ae
VM
24762003-07-31 Vladimir Makarov <vmakarov@redhat.com>
2477
f91f41b2
ZW
2478 * sched-deps.c (sched_analyze_2): Prevent interblock move of CC0
2479 setter.
caf819ae 2480
1aa0a5f6
RS
24812003-07-30 Roger Sayle <roger@eyesopen.com>
2482
2483 * builtins.def: Alphabetize.
2484
4bd0bee9
MK
24852003-07-30 Matt Kraai <kraai@alumni.cmu.edu>
2486
2487 * doc/c-tree.texi: Normalize spellings of "lowercase" and
2488 "uppercase".
2489 * doc/cpp.texi: Likewise.
2490 * doc/md.texi: Likewise.
2491 * doc/rtl.texi: Likewise.
2492 * doc/tm.texi: Likewise.
2493
7f02cb5c
MK
24942003-07-30 Matt Kraai <kraai@alumni.cmu.edu>
2495
2496 * objc/Make-lang.in (objc.stage1, objc.stage2, objc.stage3)
2497 (objc.stage4, objc.stageprofile, objc.stagefeedback): Remove moves
2498 of cc1obj.
2499
498887c8
CD
25002003-07-30 Chris Demetriou <cgd@broadcom.com>
2501
2502 * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Undef these
2503 macros before defining them.
2504
10bbf137
UW
25052003-07-31 Ulrich Weigand <uweigand@de.ibm.com>
2506
f91f41b2 2507 * config/s390/s390.md (UNSPEC_ROUND, UNSPEC_SETHIGH,
10bbf137
UW
2508 UNSPECV_BLOCKAGE): New constants.
2509 ("*sethighqisi", "*sethighhisi", "*sethiqidi_64", "*sethiqidi_31",
2510 "*extractqi", "*extracthi", "*extendqidi2" splitter, "*extendqisi2"
2511 splitter, "fix_truncdfdi2_ieee", "fix_truncdfsi2_ieee",
2512 "fix_truncsfdi2", "fix_truncsfsi2", "blockage"): Use them.
2513
2514 (all insns and expanders): Write output control string as brace block
2515 where appropriate. Remove \-escapes for doublequote characters.
2516
3f2eae23
JH
2517Thu Jul 31 01:04:19 CEST 2003 Jan Hubicka <jh@suse.cz>
2518
2519 * gcse.c (insert_store): Fix typo in previous patch.
2520
f0babc9a
NB
25212003-07-30 Neil Booth <neil@daikokuya.co.uk>
2522
2523 * cppfiles.c (stack_file, open_file_failed): Use path for deps.
2524
edeac5de
AK
25252003-07-30 Andi Kleen <ak@muc.de>
2526
2527 * loop.c (check_dbra_loop): Allow LTU in the loop condition.
2528
6e885ee3
ZD
25292003-07-30 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
2530
2531 * combine.c (distribute_notes): Cancel REG_VALUE_PROFILE notes.
2532 * gcov-io.h (GCOV_FIRST_VALUE_COUNTER, GCOV_LAST_VALUE_COUNTER,
2533 GCOV_N_VALUE_COUNTERS): New.
2534 * profile.c (compute_value_histograms): New static function.
2535 (branch_prob): Read back the value histograms.
2536 * rtl.c (reg_note_name): Add name for REG_VALUE_PROFILE note.
2537 * rtl.h (enum reg_note): Add REG_VALUE_PROFILE note.
2538 * value-prof.c: Add comment on reading the profile.
2539 * value-prof.h (COUNTER_FOR_HIST_TYPE, HIST_TYPE_FOR_COUNTER): New.
2540 * doc/invoke.texi (-fprofile-values): Document behavior with
2541 -fbranch-probabilities.
2542
0e6cb2cb
DE
25432003-07-30 David Edelsohn <edelsohn@gnu.org>
2544
2545 * longlong.h (PowerPC umul_ppmm): Do not test __vxworks__.
2546
656ec3b1
UW
25472003-07-30 Ulrich Weigand <uweigand@de.ibm.com>
2548
2549 * config/s390/s390.h (EH_RETURN_HANDLER_RTX): Compute offset
2550 symbolically.
2551
a0c8285b
JH
2552Wed Jul 30 19:12:10 CEST 2003 Jan Hubicka <jh@suse.cz>
2553
2554 * gcse.c (insert_store): Ignore fake edges.
2555
2556 * c-common.c (flag_vtable_gc): Kill.
2557 * c-common.g (flag_vtable_gc): Kill.
2558 * c-opts (c_common_handle_option): Kill.
2559 * c.opt (fvtable-gc): Kill.
2560 * final.c (final_scan_insn): Do not call assemble_vtable_entry.
2561 * output.h (assemble_vtable_entry, assemble_vtable_inherit): Kill.
2562 * varasm.c (assemble_vtable_entry, assemble_vtable_inherit): Kill.
2563
2564 * invoke.texi (-ftable-gc): Kill documentation.
2565
2566 * tree-inline.c (inlinable_function_p): Don't set DECL_UNINLINABLE
2567 just because function body is missing.
2568
2569 * i386.c (pic_symbolic_operand): Properly detect RIP relative unspecs.
2570
b2e863b8
RM
25712003-07-30 Ranjit Mathew <rmathew@hotmail.com>
2572
2573 * unwind-sjlj.c: Fix typo in file description.
2574
9206d736
AM
25752003-07-30 Alan Modra <amodra@bigpond.net.au>
2576
2577 * calls.c (load_register_parameters): When shifting reg sized values
2578 to the msb, move the value to a reg first.
2579
9074464c
GK
25802003-07-29 Geoffrey Keating <geoffk@apple.com>
2581
2582 * cppfiles.c (stack_file): Leave filename as "" rather than "<stdin>".
2583 * line-map.h (linemap_add): Update comments.
2584 * line-map.c (linemap_add): Update comments, interpret zero-length
2585 filename as "<stdin>".
2586
e55e4f68
NN
25872003-07-29 Nathanael Nerode <neroden@gcc.gnu.org>
2588
2589 * mkinstalldirs: Import autoconf 2.57 / automake 1.7 version.
2590
55d54003
ZW
25912003-07-29 Zack Weinberg <zack@codesourcery.com>
2592
2593 * c-decl.c (last_function_parm_vars, current_function_parm_vars):
2594 New static variables.
2595 (struct c_scope): Add parms and warned_forward_parm_decls
2596 fields; remove parm_order.
2597 (storedecls, storetags): Delete.
2598 (poplevel): Also clear bindings on the parms chain.
2599 (pushdecl): Handle forward declarations of parameters, and
2600 chain PARM_DECLs on the parms list, not the names list.
2601 (lookup_name_current_level): Check for PARM_DECLs on the parms
2602 list too.
2603 (push_parm_decl): Don't update parm_order.
2604 (clear_parm_order): Rename mark_forward_parm_decls. Issue the
2605 warning, only once per parameter list, and set TREE_ASM_WRITTEN
2606 on the decls here. Then move the forward decls to the names list.
2607 (grokparms): Set last_function_parm_vars.
2608 (get_parm_info): Don't use gettags or getdecls. No need to
2609 extract non-parms from the parms list, or reorganize the parms
2610 list. Feed nonparms back in the TREE_TYPE of the list node
2611 returned. Issue only one error per parameter list for "void"
2612 appearing more than once in said parameter list. Collapse
2613 parmlist_tags_warning into this function to avoid double scan
2614 of tags list.
2615 (start_function): Set current_function_parm_vars.
2616 (store_parm_decls_newstyle): Bypass pushdecl, manipulate scope
2617 directly. Get non-parms from current_function_parm_vars; no
2618 need to extract them from the parms chain. Properly bind tags
2619 in the new scope.
2620 (store_parm_decls_oldstyle): No need to extract non-parameters
2621 from the parms chain, nor to store them back afterward. Move
2622 declaration to top of function, restructure code reordering
2623 DECL_ARGUMENTS.
2624 (store_parm_decls): No need to save and restore warn_shadow.
2625 * c-parse.in: Don't call parmlist_tags_warning nor
2626 clear_parm_order. Call mark_forward_parm_decls when forward
2627 parm decls are encountered.
2628 * c-tree.h: Prototype mark_forward_parm_decls; not
2629 clear_parm_order or parmlist_tags_warning.
2630
18c81520
GK
26312003-07-29 Geoffrey Keating <geoffk@apple.com>
2632
2633 * c-common.c (allow_pch): Remove.
2634 * c-common.h (allow_pch): Remove.
2635 (c_common_no_more_pch): Declare.
2636 * c-lex.c (c_lex): Call c_common_no_more_pch when appropriate.
2637 * c-pch.c: Include hosthooks.h.
2638 (c_common_valid_pch): Don't check allow_pch.
2639 (c_common_read_pch): Clear valid_pch to prevent reading PCH files.
2640 (c_common_no_more_pch): New.
2641 * ggc-common.c: Include hosthooks.h.
2642 (gt_pch_save): Call gt_pch_get_address.
2643 (gt_pch_restore): Call gt_pch_use_address.
2644 * hooks.c (hook_voidp_size_t_null): New.
2645 (hook_bool_voidp_size_t_false): New.
2646 * hooks.h (hook_voidp_size_t_null): New.
2647 (hook_bool_voidp_size_t_false): New.
2648 * hosthooks-def.h (HOST_HOOKS_GT_PCH_GET_ADDRESS): New.
2649 (HOST_HOOKS_GT_PCH_USE_ADDRESS): New.
2650 (HOST_HOOKS_INITIALIZER): Add HOST_HOOKS_GT_PCH_GET_ADDRESS,
2651 HOST_HOOKS_GT_PCH_USE_ADDRESS.
2652 * hosthooks.h (struct host_hooks): Add gt_pch_get_address,
2653 gt_pch_use_address.
2654 * doc/hostconfig.texi (Host Common): Document
2655 HOST_HOOKS_GT_PCH_GET_ADDRESS, HOST_HOOKS_GT_PCH_USE_ADDRESS.
2656 * Makefile.in (c-pch.o): Depend on hosthooks.h.
2657 (ggc-common.o): Likewise.
2658
2659 * config/rs6000/host-darwin.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Define.
2660 (HOST_HOOKS_GT_PCH_USE_ADDRESS): Define.
2661 (pch_address_space): New.
2662 (darwin_rs6000_gt_pch_get_address): New.
2663 (darwin_rs6000_gt_pch_use_address): New.
2664
8f9b4009
NB
26652003-07-29 Neil Booth <neil@daikokuya.co.uk>
2666
cb6eb88a
NB
2667 PR preprocessor/11569
2668 PR preprocessor/11649
8f9b4009
NB
2669 * Makefile.in (LIBCPP_DEPS): Add HASHTAB_H.
2670 * cppfiles.c: Completely rewritten.
2671 * c-incpath.c (free_path, remove_duplicates, heads, tails, add_path):
2672 struct cpp_path is now struct cpp_dir.
2673 (remove_duplicates): Don't simplify path names.
2674 * c-opts.c (c_common_parse_file): cpp_read_next_file renamed
2675 cpp_stack_file.
2676 * cpphash.h: Include hashtab.h.
2677 (_cpp_file): Declare.
2678 (struct cpp_buffer): struct include_file is now struct _cpp_file,
2679 and struct cpp_path is now struct cpp_dir. Rename members.
2680 (struct cpp_reader): Similarly. New members once_only_files,
2681 file_hash, file_hash_entries, quote_ignores_source_dir,
2682 no_search_path, saw_pragma_once. Remove all_include_files and
2683 max_include_len. Make some members bool.
2684 (_cpp_mark_only_only): Renamed from _cpp_never_reread.
2685 (_cpp_stack_file): Renamed from _cpp_read_file.
2686 (_cpp_stack_include): Renamed from _cpp_execute_include.
2687 (_cpp_init_files): Renamed from _cpp_init_includes.
2688 (_cpp_cleanup_files): Renamed from _cpp_cleanup_includes.
2689 * cppinit.c (cpp_create_reader): Initialize no_search_path. Update.
2690 (cpp_read_next_file): Rename and move to cppfiles.c.
2691 (cpp_read_main_file): Update.
2692 * cpplib.c (run_directive): Update for renamed members.
2693 (do_include_common, _cpp_pop_buffer): Update.
2694 (do_import): Undeprecate #import.
2695 (do_pragma_once): Undeprecate. Use _cpp_mark_file_once_only.
2696 * cpplib.h: Remove file_name_map_list.
2697 (cpp_options): Remove map_list.
2698 (cpp_dir): Rename from cpp_path. New datatype for name_map.
2699 (cpp_set_include_chains, cpp_stack_file, cpp_included): Update.
2700
a6400add
PE
27012003-07-29 Phil Edwards <pme@gcc.gnu.org>
2702
2703 * Makefile.in: Make stamp-objdir safe for parallel builds.
2704
b2790407
PE
27052003-07-29 Phil Edwards <pme@gcc.gnu.org>
2706
2707 * Makefile.in (stmp-docobjdir): New target; ensure $docobjdir exists.
2708 (info): Depend on stmp-docobjdir.
2709
8e3940b2
RO
27102003-07-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2711
2712 * configure: Regenerate.
2713
987bf56f
JH
2714Tue Jul 29 19:24:49 CEST 2003 Jan Hubicka <jh@suse.cz>
2715
2716 PR C++/11131
2717 * tree-inline.c (expand_call_inline): Always call inlinable_function_p
2718 in !unit-at-a-time mode.
2719
5f0eabcc
GK
27202003-07-28 Geoffrey Keating <geoffk@apple.com>
2721
2722 * c-decl.c (c_expand_body_1): Use C_DECL_FILE_SCOPE to detect
2723 main function.
2724
7b6d72fc
MM
27252003-07-28 Mark Mitchell <mark@codesourcery.com>
2726
2727 PR c++/11667
2728 * c-common.c (shorten_compare): Take into account differences
2729 between C and C++ representation for enumeration types.
2730 * tree.h (set_min_and_max_values_for_integral_type): Declare.
2731 * stor-layout.c (set_min_and_max_values_for_integral_type): New
2732 function, broken out from ...
2733 (fixup_signed_type): ... here and ...
2734 (fixup_unsigned_type): ... here.
2735
14077d68
ZW
27362003-07-28 Zack Weinberg <zack@codesourcery.com>
2737
2738 * c-decl.c: Update commentary, adjust blank lines throughout.
2739 (struct c_scope): Fix indentation. Reorder members so
2740 outer-context pointers come first, booleans last.
2741 (duplicate_decls, define_label): Use a 'locus' variable for
2742 diagnostic locations in a few more places.
2743 (warn_if_shadowing): Un-split a conditional that fits on one line.
2744 (c_init_decl_processing): No need to clear current_scope and
2745 current_function_scope.
2746 (start_decl): Merge if/else if statements with same action.
2747 (push_parm_decl): Rename old_immediate_size_expand to use
2748 save_foo convention; save/restore around entire function.
2749 (grokdeclarator): Remove unnecessary braces.
2750
85617eba
HPN
27512003-07-28 Hans-Peter Nilsson <hp@bitrange.com>
2752 Michael Culbertson <Michael.J.Culbertson@wheaton.edu>
2753
2754 * c-parse.in (lineno_stmt_decl_or_labels_ending_decl): Also warn
2755 when warn_declaration_after_statement. Call pedwarn_c90, not
2756 pedwarn. Correct message: it's "ISO C90", not "ISO C89".
2757 * c-common.c (warn_declaration_after_statement): Define.
2758 * c-common.h (warn_declaration_after_statement): Declare.
2759 * c.opt (Wdeclaration-after-statement): New.
2760 * c-errors.c (pedwarn_c90): New function.
2761 * c-opts.c (c_common_handle_option) <case
2762 OPT_Wdeclaration_after_statement>: New.
2763 * c-tree.h (pedwarn_c90): Declare.
2764 * doc/invoke.texi (Option Summary): Document
2765 -Wdeclaration-after-statement.
2766 (Warning Options): Ditto.
2767
f527d196
JH
2768Mon Jul 28 20:13:06 CEST 2003 Jan Hubicka <jh@suse.cz>
2769
2770 * i386.md (memory attribute) Avoid accessing uninitialized memory
2771 for ishift1 type instructions.
2772
5dfa45d0
JJ
27732003-07-28 Jakub Jelinek <jakub@redhat.com>
2774
2775 * configure.in (--enable-checking): Add fold category.
2776 (ENABLE_FOLD_CHECKING): Define if requested.
2777 * configure: Rebuilt.
2778 * config.in: Rebuilt.
2779 * doc/install.texi: Document it.
2780 * fold-const.c: Include md5.h.
2781 [ENABLE_FOLD_CHECKING] (fold): Define to fold_1.
2782 [ENABLE_FOLD_CHECKING] (fold, fold_checksum_tree, fold_check_failed,
2783 print_fold_checksum): New functions.
2784
2785 * fold-const.c (fold): Never modify argument passed to fold, instead
2786 change a copy and return it.
2787 * convert.c (convert_to_integer): Likewise.
2788
447673de
NN
27892003-07-27 Nathanael Nerode <neroden@gcc.gnu.org>
2790
14077d68 2791 * fixinc/fixinc.svr4: Remove dead code. Remove now-unnecessary
447673de
NN
2792 cleanup of junk after #else and #endif directives. Collapse repeated
2793 clauses into for statment.
2794
2795 * fixinc/fixincl.sh: GNU C -> GCC. Add usage comment.
2796
66db6b62
ZW
27972003-07-27 Zack Weinberg <zack@codesourcery.com>
2798
a8ccdffe
ZW
2799 * c-decl.c (struct c_scope): Remove keep_if_subblocks field.
2800 (keep_next_if_subblocks): Rename next_is_function_body.
2801 (pushlevel): Adjust commentary. Always set ->keep on the
2802 outermost level of a function. Don't set ->keep_if_subblocks.
2803 (poplevel): Adjust commentary. Don't look at ->keep_if_subblocks.
2804 (store_parm_decls): Adjust to match.
2805 (finish_function): Adjust to match.
2806 Call poplevel with all three arguments zero.
2807
66db6b62
ZW
2808 * c-decl.c (store_parm_decls_newstyle, store_parm_decls_oldstyle):
2809 New functions split out of store_parm_decls.
2810 Avoid unnecessary work. Use local variables consistently.
2811 (store_parm_decls): Likewise.
2812
2813 (finish_function): No need to set functionbody flag on call to
2814 poplevel.
2815 (struct language_function): Remove scope field.
2816 (c_push_function_context, c_pop_function_context): No need to
2817 save and restore current_scope.
2818
90ea7324
NS
28192003-07-27 Nathan Sidwell <nathan@codesourcery.com>
2820
2821 * doc/extend.texi (Deprecated Features): Implicit typename is
2822 gone. Default args on types is going.
2823
11a004ef
R
28242003-07-26 J"orn Rennecke <joern.rennecke@superh.com>
2825
2826 * Makefile.in (ifcvt.o): Depend on target.h
2827 * ifcvt.c (target.h): Include.
2828 (if_convert): Don't call mark_loop_exit_edges if we can't
2829 modify jumps.
2830
6cbf57c9
GP
28312003-07-26 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2832
2833 * doc/install.texi (Testing): Adjust required versions of DejaGnu.
2834
a6c14a64
RH
28352003-07-26 Richard Henderson <rth@redhat.com>
2836
2837 PR inline-asm/11676
2838 * cse.c (count_reg_usage): Handle asm_operands properly.
2839
cc42f5f5
RS
28402003-07-26 Roger Sayle <roger@eyesopen.com>
2841
2842 * builtins.def (DEF_FALLBACK_BUILTIN): Delete.
2843 (DEF_EXT_FALLBACK_BUILTIN): Delete.
2844 (BUILT_IN_BZERO, BUILT_IN_BCOPY, BUILT_IN_BCMP): Declare using
2845 the regular DEF_EXT_LIB_BUILTIN macro.
2846 (BUILT_IN_FPUTC, BUILT_IN_FPUTS, BUILT_IN_FWRITE): Declare using
2847 the regular DEF_LIB_BUILTIN macro.
2848 (BUILT_IN_PUTCHAR_UNLOCKED, BUILT_IN_PUTS_UNLOCKED,
2849 BUILT_IN_FPUTC_UNLOCKED, BUILT_IN_FPUTS_UNLOCKED,
2850 BUILT_IN_FWRITE_UNLOCKED): Declare using the regular
2851 DEF_EXT_LIB_BUILTIN macro.
2852
2853 * c-decl.c (duplicate_decls): Remove code to handle builtin
2854 functions prototyped without an argument list.
2855
92e7a6ef
DS
28562003-07-26 Danny Smith <dannysmith@users.sourceforge.net>
2857
2858 * config/i386/winnt.c: Revert 2003-07-08 change.
2859 (i386_pe_section_type_flags): Remove error_with_decl here too.
2860
ba9cfcb5
GDR
28612003-07-26 Gabriel Dos Reis <gdr@integrable-solutions.net>
2862
2863 * config/arm/pe.c (arm_mark_dllimport): Don't use xxx_with_decl.
2864 * config/mcore/mcore.c (mcore_mark_dllimport): Likewise.
2865 * config/v850/v850.c (v850_handle_data_area_attribute): Likewise.
2866 (v850_handle_data_area_attribute): Likewise.
2867
0e5da0be
GK
28682003-07-26 Geoffrey Keating <geoffk@apple.com>
2869
66db6b62 2870 * varasm.c (output_constant_def_contents): Use
18f3e349
GK
2871 ASM_DECLARE_CONSTANT_NAME if defined.
2872 * doc/tm.texi (Label Output): Document ASM_DECLARE_CONSTANT_NAME.
2873 * config/darwin.h (ASM_DECLARE_OBJECT_NAME): Ensure zero-sized
2874 objects get at least one byte to prevent assembler problems.
2875 (ASM_DECLARE_CONSTANT_NAME): New.
2876
d2908a50
GK
2877 * Makefile.in (libbackend.o): Remove options_.h.
2878 (mostlyclean): Likewise.
2879
0e5da0be
GK
2880 * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Don't
2881 insert a label at the end of an function under Mach-O.
863d3dfb
GK
2882
2883 * c-decl.c (c_static_assembler_name): Remove TREE_STATIC test.
2884
36252949
AH
28852003-07-25 Aldy Hernandez <aldyh@redhat.com>
2886
2887 * config/rs6000/rs6000.c (is_ev64_opaque_type): Only check pointer
2888 equality.
2889 (spe_init_builtins): Declare __ev64_opaque__ as a builtin type.
2890
2891 * config/rs6000/spe.h: Remove __ev64_opaque__ definition.
2892
0fe37f68
GDR
28932003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
2894
2895 * doc/passes.texi (Passes): Mention pretty-printing and
2896 diagnostic files.
2897
50fc59e7
NS
28982003-07-25 Nathan Sidwell <nathan@codesourcery.com>
2899
2900 * doc/extend.texi (Function Attributes): GNU C++ does now allow
2901 unused parameter decls.
2902 (Attribute Syntax): GNU C++ does not allow label attributes to be
2903 after the ':'.
2904
cd475805
GDR
29052003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
2906
2907 * objc/objc-act.c (objc_check_decl): Don't use xxx_with_decl.
2908 (objc_declare_class): Likewise.
2909 (error_with_ivar): Likewise.
2910 (start_class): Likewise.
2911 (warn_with_method): Likewise.
2912
b6fe0bb8
GDR
29132003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
2914
2915 Remove pedwarn_with_decl, warning_with_decl and error_with_decl
66db6b62 2916 from GCC.
b6fe0bb8
GDR
2917 * calls.c (try_to_integrate): Don't use xxx_with_decl.
2918 (expand_call): Likewise.
2919 * dwarfout.c (output_reg_number): Likewise.
2920 * expr.c (expand_expr): Likewise.
2921 * function.c (assign_temp): Likewise.
2922 (uninitialized_vars_warning): Likewise.
2923 (setjmp_args_warning): Likewise.
2924 (expand_function_end): Likewise.
2925 * stmt.c (fixup_gotos): Likewise.
2926 (warn_about_unused_variables): Likewise.
2927 (expand_end_bindings): Likewise.
2928 * stor-layout.c (layout_decl): Likewise.
2929 (place_field): Likewise.
2930 * toplev.c (check_global_declarations): Likewise.
2931 (rest_of_handle_inlining): Likewise.
2932 (default_tree_printer): New function.
2933 (general_init): Initialize diagnostic machinery before routing
2934 signals to the ICE machinery. Set default tree printer.
2935 * toplev.h (pedwarn_with_decl): Remove declaration.
2936 (warning_with_decl): Likewise.
2937 (error_with_decl): Likewise.
66db6b62 2938 (pedwarn): Remove attribute for the time being.
b6fe0bb8
GDR
2939 * tree-inline.c (expand_call_inline): Don't use xxx_with_decl.
2940 * varasm.c (named_section): Likewise.
2941 (make_decl_rtl): Likewise.
2942 (assemble_variable): Likewise.
2943 (merge_weak): Likewise.
2944 (declare_weak): Likewise.
2945
2946 * diagnostic.h: Move non-diagnostic stuff into pretty-print.h.
2947 * diagnostic.c: Move non-diagnostic stuff into pretty-print.c.
2948 (format_with_decl): Remove.
2949 (diagnostic_for_decl): Likewise.
2950 (pedwarn_with_decl): Likewise.
2951 (warning_with_decl): Likewise.
2952 (error_with_decl): Likewise.
2953 (diagnostic_initialize): Adjust.
2954 (diagnostic_count_diagnostic): Likewise.
2955 (announce_function): Likewise.
2956 (lhd_print_error_function): Likewise.
2957 (diagnostic_report_current_module): Likewise.
2958 (default_diagnostic_starter): Likewise.
2959 (diagnostic_report_diagnostic): Likewise.
2960 (default_diagnostic_finalizer): Likewise.
2961 (verbatim): Likewise.
2962 (error): Likewise.
2963 (warning): Likewise.
2964 * opts.c (common_handle_option): Likewise.
2965 * pretty-print.c: New file.
2966 * c-pretty-print.h (pp_base): Override.
2967 * c-pretty-print.c: Adjust use of macros throughout.
2968 (pp_buffer): New macro.
2969 (pp_newline): Likewise.
2970 * c-objc-common.c (c_tree_printer): Adjust prototype. Tidy.
2971 * Makefile.in (DIAGNOSTIC_H): New variable.
2972 (c-errors.o): Use it.
2973 (c-objc-common.o): Likewise.
2974 (c-common.o): Likewise.
2975 (c-opts.o): Likewise.
2976 (c-format.o): Likewise.
2977 (diagnostic.o): Likewise.
2978 (opts.o): Likewise.
2979 (toplev.o): Likewise.
2980 (rtl-error.o): Likewise.
2981 (dwarf2out.o): Likewise.
2982 (jump.o): Likewise.
2983 (pretty-print.o): New rule.
2984
868b8cda
RS
29852003-07-24 Roger Sayle <roger@eyesopen.com>
2986
2987 * builtins.def (BUILT_IN_PRINTF, BUILT_IN_FPRINTF): Changed from
2988 front-end builtins to normal builtins, using DEF_LIB_BUILTIN.
2989 (BUILT_IN_PRINTF_UNLOCKED, BUILT_IN_FPRINTF_UNLOCKED): Changed
2990 from front-end to normal builtins, using DEF_EXT_LIB_BUILTIN.
2991 (DEF_FRONT_END_LIB_BUILTIN): Delete.
2992 (DEF_EXT_FRONT_END_LIB_BUILTIN): Delete.
2993 (BUILT_IN_FWRITE_UNLOCKED): Wrap long line.
2994
2995 * builtins.c (build_string_literal): New function to construct
2996 a char* pointer to a string literal.
2997 (expand_builtin_fputs): Change 2nd argument from "int ignore" to
2998 "rtx target" to be consistent with other expand_builtin_* functions.
2999 Change 3rd argument from "int unlocked" to "bool unlocked".
3000 (expand_builtin_printf): Rewrite of c_expand_builtin_printf from
3001 c-common.c to avoid front-end dependencies. Optimize printf("")
3002 as a no-op when the result isn't required. Handle embedded NULs
3003 in format string.
3004 (expand_builtin_fprintf): A rewrite of c_expand_builtin_fprintf
3005 from c-common.c to avoid front-end dependencies. Likewise, optimize
3006 fprintf(fp,"") as a no-op when the result isn't required, evaluating
3007 fp for side-effects. Handle embedded NULs in format string.
3008 (expand_builtin_sprintf): Fix typo.
3009 (expand_builtin): Don't expand BUILT_IN_FPRINT{,_UNLOCKED} when not
3010 optimizing. Adjust calls of expand_builtin_fputs to match the API
3011 change. Expand BUILT_IN_PRINTF and BUILT_IN_PRINTF_UNLOCKED using
3012 expand_builtin_printf. Likewise, expand BUILT_IN_FPRINTF_UNLOCKED
3013 and BUILT_IN_FPRINTF using expand_builtin_fprintf.
3014
3015 * c-common.c (is_valid_printf_arglist): Delete.
3016 (c_expand_builtin): Delete.
3017 (c_expand_builtin_printf): Moved to builtins.c. Delete.
3018 (c_expand_builtin_fprintf): Moved to builtins.c. Delete.
3019 (c_expand_expr): No longer treat CALL_EXPRs specially.
3020 (CALLED_AS_BUILT_IN): Delete.
3021
2a868ea4
ZD
30222003-07-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
3023
3024 PR optimization/11631
3025 * gcse.c (store_motion): Connect infinite loops to exit.
3026
de7df9eb
JM
30272003-07-24 Jason Merrill <jason@redhat.com>
3028
3029 * tree.h (boolean_type_node): Move from C/C++/Java frontends.
3030 (boolean_true_node, boolean_false_node): Likewise.
3031 (enum tree_index): Add TI_BOOLEAN_{TYPE,FALSE,TRUE}.
3032 * tree.c (build_common_tree_nodes): Init boolean_type_node.
3033 (build_common_tree_nodes_2): Init boolean_{true,false}_node.
3034 * stor-layout.c (set_sizetype): Handle an early BOOLEAN_TYPE.
3035 * c-common.h (truthvalue_type_node): Renamed from boolean_type_node.
3036 (truthvalue_true_node): Renamed from boolean_true_node.
3037 (truthvalue_false_node): Renamed from boolean_false_node.
3038 * c-decl.c: Just set truthvalue_* to integer_*.
3039 * c-*.[ch]: s/boolean/truthvalue/. s/c_bool/boolean/.
3040
6907ddd3
RS
30412003-07-24 Roger Sayle <roger@eyesopen.com>
3042
3043 * c-decl.c (match_builtin_function_types): New subroutine of
3044 duplicate_decls to test whether a redeclaration of a builtin
3045 function is suitably close, i.e. the return type and all of
3046 the argument types have the same modes as the builtin expects.
3047 (duplicate_decls): Fuzzy type matching for builtin functions
3048 moved to match_builtin_function_types.
3049
84d45ad1
ZD
30502003-07-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
3051
3052 * cfgloopmanip.c (duplicate_loop_to_header_edge): Update irreducible
3053 flag correctly.
3054
f8521984
ZW
30552003-07-24 Zack Weinberg <zack@codesourcery.com>
3056
3057 * c-decl.c: Search-and-replace change 'binding level' to
3058 'scope' in commentary.
3059 (struct binding_level): Now struct c_scope.
3060 (current_binding_level): Now current_scope.
3061 (free_binding_level): Now scope_freelist.
3062 (current_function_level): Now current_function_scope.
3063 (global_binding_level): Now global_scope.
3064 (make_binding_level): Now make_scope.
3065 (pop_binding_level): Now pop_scope.
3066
0f31374d
RO
30672003-07-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3068
3069 * configure.in (libgcc_visibility): Add missing whitespace.
3070
270606ac
RH
30712003-07-24 Richard Henderson <rth@redhat.com>
3072
3073 * libgcc-std.ver (GCC_3.3.1): Export __gcc_personality_sj0,
3074 __gcc_personality_v0.
f8521984 3075
5f08e44f
RO
30762003-07-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3077
3078 * Makefile.in: Replace pwd by ${PWD_COMMAND}.
3079
a4878735
NS
30802003-07-24 Nathan Sidwell <nathan@codesourcery.com>
3081
3082 * doc/invoke.texi (-fprofile-arcs, -ftest-coverage): Update
3083 documentation missed from my 2003-07-09 patch.
3084
5aaaf0e8
NN
30852003-07-24 Nathanael Nerode <neroden@gcc.gnu.org>
3086
3087 * aclocal.m4 (_gcc_COMPUTE_GAS_VERSION): Set patch level to 0 if
3088 it's not provided.
3089 * configure: Rebuild.
3090
8f5b6d29
SB
30912003-07-24 Steven Bosscher <steven@gcc.gnu.org>
3092
3093 PR c/10602
3094 * c-typeck.c (type_lists_compatible_p): Do not compare
3095 arguments if one of them is an error_mark_node
3096
acd0b319
AM
30972003-07-24 Alan Modra <amodra@bigpond.net.au>
3098
3099 * config/rs6000/rs6000.c (rs6000_emit_prologue): Save fp regs inline
3100 if current_function_calls_eh_return.
3101
28b619b2
MM
31022003-07-23 Mark Mitchell <mark@codesourcery.com>
3103
3104 * doc/c-tree.texi (OFFSET_TYPE): Update description.
3105
07154156
BW
31062003-07-23 Bob Wilson <bob.wilson@acm.org>
3107
3108 * config/xtensa/crti.asm (_init, _fini): Increase frame size to 64.
3109 * config/xtensa/lib1funcs.asm (__mulsi3, __udivsi3, __divsi3,
3110 __umodsi3, __modsi3): Increase frame size to 32.
3111
5f5bfdd0
GK
31122003-07-23 Geoffrey Keating <geoffk@apple.com>
3113
3114 * config/rs6000/host-darwin.c: ANSIfy, update comment for sigaltstack
3115 prototype.
3116
11b8e71c
MM
31172003-07-23 Mark Mitchell <mark@codesourcery.com>
3118
28b619b2
MM
3119 * doc/c-tree.texi (Types): Update documentation for OFFSET_TYPE.
3120
11b8e71c
MM
3121 PR optimization/10679
3122 * tree-inline.c (inlinable_function_p): Honor MIN_INLINE_INSNS.
3123
9d6b7c09
JDA
31242003-07-23 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3125
3126 PR target/11607 and PR target/11516
3127 * pa.md (extzv, extv, insv): Revert latter half of last patch.
3128
a5ac359a
MM
31292003-07-22 Mark Mitchell <mark@codesourcery.com>
3130
3131 * fold-const.c (force_fit_type): Handle OFFSET_TYPE.
3132 * varasam.c (output_constant): Likewise.
3133
938d968e
KH
31342003-07-22 Kazu Hirata <kazu@cs.umass.edu>
3135
3136 * alias.c: Fix comment formatting.
3137 * c-common.c: Likewise.
3138 * c-decl.c: Likewise.
3139 * c-opts.c: Likewise.
3140 * combine.c: Likewise.
3141 * cpplib.c: Likewise.
3142 * diagnostic.c: Likewise.
3143 * dojump.c: Likewise.
3144 * final.c: Likewise.
3145 * fold-const.c: Likewise.
3146 * gcc.c: Likewise.
3147 * gcse.c: Likewise.
3148 * ggc-page.c: Likewise.
3149 * jump.c: Likewise.
3150 * loop.c: Likewise.
3151 * mips-tfile.c: Likewise.
3152 * recog.c: Likewise.
3153 * regclass.c: Likewise.
3154 * regmove.c: Likewise.
3155 * tree.c: Likewise.
3156 * tree.h: Likewise.
3157
b3147029
PB
31582003-07-22 Per Bothner <pbothner@apple.com>
3159
3160 * line-map.c (add_line_map): Handle invalid LEAVE request.
3161 Fixes PR preprocessor/11361.
3162
53f72d60
PB
31632003-07-22 Per Bothner <pbothner@apple.com>
3164
3165 * diagnostic.c.(diagnostic_report_current_module): Update to match
3166 2003-06-05 changes to push_srcloc and pop_srcloc.
3167
5cf0212f
WB
31682003-07-22 Wolfgang Bangerth <bangerth@dealii.org>
3169
3170 * doc/trouble.texi: Better document two-stage name lookup.
3171
c7453384
EC
31722003-07-22 Eric Christopher <echristo@redhat.com>
3173
3174 * config/s390.c (s390_valid_pointer_mode): New.
3175 (TARGET_VALID_POINTER_MODE): Use.
3176 (s390_emit_prologue): Add tpf profiling hooks.
3177 (s390_emit_epilogue): Ditto.
3178 * config/s390.h (MASK_TPF): New.
3179 (TARGET_TPF): Use.
3180 (POINTERS_EXTEND_UNSIGNED): Define.
3181 * config/s390.md (ptr_extend): New pattern.
3182
a2f7be91
ZW
31832003-07-22 Zack Weinberg <zack@codesourcery.com>
3184
3185 * hashtable.c (approx_sqrt): Make static.
3186 * hashtable.h: Don't prototype approx_sqrt.
3187 * line-map.c (init_line_maps): Rename linemap_init.
3188 (free_line_maps): Rename linemap_free.
3189 (add_line_map): Rename linemap_add.
3190 (lookup_line): Rename linemap_lookup.
3191 (print_containing_files): Rename linemap_print_containing_files.
3192 * linemap.h: Update to match.
3193
3194 * cpperror.c, cppinit.c, cpplib.c, cppmacro.c: Update calls to
3195 linemap routines to use new names.
3196
c6e4cc53
NS
31972003-07-16 Nathan Sidwell <nathan@codesourcery.com>
3198
3199 * c-common.c (handle_packed_attribute): Don't pack a struct via a
3200 typedef. Propagate packedness from a main variant.
3201
55de4f08
NN
32022003-07-22 Nathanael Nerode <neroden@gcc.gnu.org>
3203
3204 * Makefile.in (install-common): Add dependency on installdirs.
3205
fb5d2a87
AO
32062003-07-21 Alexandre Oliva <aoliva@redhat.com>
3207
3208 * c-common.c (c_common_type_for_mode): Return integer types for
3209 pointer modes.
3210
905bd7b5
GK
32112003-07-22 Geoffrey Keating <geoffk@apple.com>
3212
d05cc98e
GK
3213 * c-decl.c (start_decl): Don't call maybe_apply_pragma_weak here.
3214 (finish_decl): Call maybe_apply_pragma_weak here.
3215 (grokdeclarator): Check that DECL_ASSEMBLER_NAME isn't set before
3216 TREE_PUBLIC and TREE_STATIC are decided.
3217 (start_function): Move call to maybe_apply_pragma_weak. Check that
3218 DECL_ASSEMBLER_NAME isn't set too early.
3219
905bd7b5
GK
3220 * cpplex.c (_cpp_process_line_notes): Mention option name in
3221 trigraphs warning.
3222
87d9741e
KH
32232003-07-22 Kazu Hirata <kazu@cs.umass.edu>
3224
3225 * combine.c (if_then_else_cond): Simplify the comparison of
3226 rtx against -1, 0, and 1.
3227 * loop.c (check_dbra_loop): Likewise.
3228 * optabs.c (emit_conditional_move): Likewise.
3229 (emit_conditional_add): Likewise.
3230 * config/i386/i386.md (*movsi_or): Likewise.
3231 (*movdi_or_rex6): Likewise.
3232
b67d7f4a
JH
3233Tue Jul 22 00:42:12 CEST 2003 Jan Hubicka <jh@suse.cz>
3234
3235 * cgraphunit.c (cgraph_finalize_compilation_unit): Remove redundant if.
3236
8d973a83
NB
32372003-07-21 Neil Booth <neil@daikokuya.co.uk>
3238
3239 * cppfiles.c (open_file_pch): Don't put unused entries in the
3240 splay tree. Remove dead code.
3241
49a64b24
GK
32422003-07-21 Geoffrey Keating <geoffk@apple.com>
3243
48873ed2
GK
3244 * c-common.h (num_in_fnames): Declare.
3245 (c_static_assembler_name): Move from here...
3246 * c-tree.h (c_static_assembler_name): ... to here.
3247 * c-opts.c: Don't include langhooks-def.h.
3248 (c_static_assembler_name): Move to c-decl.c.
3249 (num_in_fnames): Make externally visible.
3250 * c-decl.c: Include langhooks-def.h.
3251 (c_static_assembler_name): Move from c-opts.c.
3252 * Makefile.in (c-decl.o): Add $(LANGHOOKS_DEF_H).
3253 (c-opts.o): Remove $(LANGHOOKS_DEF_H).
3254
49a64b24
GK
3255 * c-pragma.c (maybe_apply_pragma_weak): Don't get DECL_ASSEMBLER_NAME
3256 when it's not needed.
3257
8c29550d
JJ
32582003-07-21 Jakub Jelinek <jakub@redhat.com>
3259
3260 * config/rs6000/rs6000.h (machine_function): Add ra_need_lr.
3261 * config/rs6000/rs6000.c (rs6000_return_addr): Set it.
3262 (rs6000_emit_prologue): Save FPRs inline if set.
3263
92cbea22
L
32642003-07-21 H.J. Lu <hongjiu.lu@intel.com>
3265
3266 * config/ia64/ia64.md (prefetch): Support predicate.
3267
ee735eef
JZ
32682003-07-21 Josef Zlomek <zlomekj@suse.cz>
3269
3270 * cfgcleanup.c (merge_blocks_move_successor_nojumps): Use tablejump_p.
3271 * rtlanal.c (tablejump_p): Use next_active_insn for finding the jump
3272 table.
3273
bbda30a4
EB
32742003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
3275
a2f7be91 3276 PR optimization/11536
bbda30a4
EB
3277 * unroll.c (loop_iterations): Do not replace a register holding
3278 the final value by its equivalent before the loop if it is not
3279 invariant.
3280
64c18e57
DF
32812003-07-21 Dave Fluri <dave.fluri@onlink.net>
3282
3283 * doc/extend.texi: Fixes to spelling, grammar, and diction.
3284
b222f49a
BE
32852003-07-21 Ben Elliston <bje@wasabisystems.com>
3286
3287 * doc/invoke.texi (Optimize Options): Replace "it's" with "its".
3288 (V850 Options): Spelling fixes.
3289
9eff22bc
LG
32902003-07-20 Lisa M. Goldstein <opus@gnu.org>
3291
a2f7be91 3292 * doc/invoke.texi: Fixes to style, grammar and diction.
9eff22bc 3293
6a6c0154
RS
32942003-07-20 Roger Sayle <roger@eyesopen.com>
3295
3296 * builtins.def (BUILT_IN_ALLOCA): Remove "#if SMALL_STACK" form.
3297 * system.h (SMALL_STACK): Poison obsolete target macro.
3298 * doc/tm.texi (SMALL_STACK): Remove target macro documentation.
3299
d38b3a8d
PE
33002003-07-20 Phil Edwards <pme@gcc.gnu.org>
3301
3302 * configure.in: Cache the results of testing for cmp's capabilities.
3303 * configure: Regenerate.
3304
35dc2bd8
MM
33052003-07-20 Mark Mitchell <mark@codesourcery.com>
3306
3307 PR debug/11279
3308 * dwarf2out.c (gen_enumeration_type_die): Remember that
3309 enumerators can be unsigned.
3310
14e33ee8
ZW
33112003-07-19 Zack Weinberg <zack@codesourcery.com>
3312
3313 * c-decl.c (named_labels, shadowed_labels, label_level_chain)
3314 (push_label_level, pop_label_level): Kill.
3315 (struct binding_level): Rename level_chain to outer.
3316 Add outer_function field. Change parm_flag, function_body,
3317 keep, keep_if_subblocks to 1-bit bitfields of type bool.
3318 (current_function_level): New variable.
3319 (keep_next_level_flag, keep_next_if_subblocks): Change type to bool.
3320 (keep_next_level, declare_parm_level, warn_if_shadowing):
3321 Update to match.
3322 (struct language_function): Kill named_labels, shadowed_labels fields.
3323 (c_init_decl_processing, start_function, c_push__function_context)
3324 (c_pop_function_context): No need to muck with named_labels nor
3325 shadowed_labels.
3326
3327 (make_binding_level): No need to clear the structure here.
3328 (pop_binding_level): Always operate on current_binding_level.
3329 Update current_function_level if necessary.
3330 (pushlevel): Don't clear named_labels. Update current_function_level
3331 if necessary. Use "true" and "false" where appropriate.
3332 (poplevel): Diagnose labels defined but not used, or vice
3333 versa, and clear out label-meanings leaving scope, while
3334 walking down the decls list, for all binding levels.
3335 Handle LABEL_DECLs appearing in the shadowed list.
3336 pop_binding_level takes no arguments.
3337 (pushdecl_function_level): Use current_function_level.
3338
3339 (make_label, bind_label): New static functions.
3340 (declare_label): New exported function.
3341 (lookup_label, define_label): Rewritten for new data structure.
3342 (shadow_label): Kill.
3343
3344 * c-tree.h: Prototype declare_label; don't prototype
3345 push_label_level, pop_label_level, nor shadow_label.
3346 * c-parse.in: Remove all calls to push_label_level and
3347 pop_label_level. Use declare_label for __label__ decls.
3348
3349 * doc/extend.texi: Clarify that __label__ can be used to
3350 declare labels with local scope in any nested block, not
3351 just statement expressions. Cross-reference nested functions
3352 section from local labels section.
3353
8a6b9b7f
ZD
33542003-07-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
3355
3356 * sched-rgn.c (find_rgns): Initialize current_edge correctly.
3357
026fe6c8
PE
33582003-07-19 Phil Edwards <pme@gcc.gnu.org>
3359
3360 * doc/makefile.texi (restrap, profiledbootstrap): Document targets.
3361
c68b0a84
KG
33622003-07-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3363
3364 * fixinc/fixfixes.c fixinc/fixincl.c fixinc/fixlib.c
3365 fixinc/server.c objc/objc-act.c: Remove unnecessary casts.
3366
fd7643fb
UW
33672003-07-19 Ulrich Weigand <uweigand@de.ibm.com>
3368
14e33ee8 3369 * config/s390/s390.c (legitimize_pic_address): Access local symbols
fd7643fb
UW
3370 relative to the GOT instead of relative to the literal pool base.
3371 (s390_output_symbolic_const): Handle new GOT-relative accesses.
3372 * config/s390/s390.md ("call"): Access local functions and PLT stubs
3373 relative to the GOT instead of relative to the literal pool base.
3374 ("call_value"): Likewise.
3375 ("call_value_tls"): Likewise.
3376
14e33ee8 3377 * config/s390/s390.c (s390_chunkify_start): Remove pool anchor
fd7643fb
UW
3378 reloading. Support LTREL_BASE / LTREL_OFFSET construct.
3379 (s390_chunkify_finish): Likewise.
3380 (s390_chunkify_cancel): Likewise.
3381 (s390_reorg): Adapt caller.
3382 (find_base_register_in_addr,
3383 find_base_register_ref, replace_base_register_ref): Delete.
3384 (find_ltrel_base, replace_ltrel_base): New functions.
3385 (find_constant_pool_ref): Handle LTREL_BASE unspecs.
3386 (s390_decompose_address): Handle LTREL_BASE unspecs. Optimize
3387 base vs. index register usage.
3388 (struct constant_pool): Remove 'anchor'.
3389 (s390_add_anchor): Delete.
3390 (s390_dump_pool): Remove anchor handling.
3391 * config/s390/s390.md ("reload_anchor"): Remove.
3392
3393 * config/s390/s390.c (s390_split_branches): Use LTREL_BASE/OFFSET.
3394 (s390_load_got): New function. Use LTREL_BASE/OFFSET.
3395 (s390_emit_prologue): Use it.
14e33ee8
ZW
3396 * config/s390/s390.md ("builtin_longjmp", "builtin_setjmp_setup",
3397 "builtin_setjmp_receiver"): Cleanup. Use s390_load_got. Do not
fd7643fb
UW
3398 hard-code register 14.
3399 * config/s390/s390-protos.h (s390_load_got): Declare.
3400
14e33ee8 3401 * config/s390/s390.c (NR_C_MODES, constant_modes, gen_consttable):
fd7643fb
UW
3402 Support TImode constants.
3403 * config/s390/s390.md ("consttable_ti"): New.
3404 ("consttable_si", "consttable_di"): Handle TLS symbols correctly.
3405
3406 * config/s390/s390.md (UNSPEC_LTREL_OFFSET, UNSPEC_LTREL_BASE,
3407 UNSPEC_GOTENT, UNSPEC_GOT, UNSPEC_GOTOFF, UNSPEC_PLT, UNSPEC_PLTOFF,
3408 UNSPEC_RELOAD_BASE, UNSPECV_POOL, UNSPECV_POOL_START, UNSPECV_POOL_END,
3409 UNSPECV_POOL_QI, UNSPECV_POOL_HI, UNSPECV_POOL_SI, UNSPECV_POOL_DI,
3410 UNSPECV_POOL_TI, UNSPECV_POOL_SF, UNSPECV_POOL_DF, UNSPECV_MAIN_POOL):
3411 New symbolic constants.
3412 ("consttable_qi", "consttable_hi", "consttable_si", "consttable_di",
3413 "consttable_sf", "consttable_df", "pool_start_31", "pool_end_31",
3414 "pool_start_64", "pool_end_64", "reload_base_31", "reload_base_64",
3415 "pool", "literal_pool_31", "literal_pool_64"): Cleanup. Use
3416 symbolic UNSPEC values.
14e33ee8 3417 * config/s390/s390.c (larl_operand, s390_short_displacement,
fd7643fb
UW
3418 bras_sym_operand, s390_cannot_force_const_mem,
3419 s390_delegitimize_address, s390_decompose_address,
3420 legitimize_pic_address, s390_output_symbolic_const,
3421 s390_function_profiler): Use symbolic UNSPEC values.
3422
703ad42b
KG
34232003-07-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3424
3425 * alias.c alloc-pool.c bitmap.c bitmap.h bt-load.c builtins.c
3426 c-common.c c-decl.c c-incpath.c c-lex.c c-opts.c c-parse.in
3427 c-pragma.c c-typeck.c calls.c cfg.c cfganal.c cfgloop.c cfgrtl.c
3428 collect2.c combine.c conflict.c coverage.c cppexp.c cppfiles.c
3429 cpphash.c cppinit.c cpplex.c cpplib.c cppmacro.c cppspec.c
3430 cpptrad.c cse.c cselib.c dbxout.c defaults.h df.c dominance.c
3431 dwarf2out.c dwarfout.c emit-rtl.c except.c expmed.c expr.c final.c
3432 fix-header.c flow.c fold-const.c function.c gcc.c gccspec.c gcov.c
3433 gcse.c genattr.c genattrtab.c genautomata.c genconditions.c
3434 genemit.c genextract.c genoutput.c genrecog.c gensupport.c
3435 ggc-page.c ggc-simple.c global.c graph.c haifa-sched.c hashtable.c
3436 integrate.c jump.c langhooks.c lcm.c line-map.c local-alloc.c
3437 loop.c mips-tdump.c mips-tfile.c mkdeps.c optabs.c params.c
3438 postreload.c prefix.c print-tree.c protoize.c ra-build.c
3439 ra-colorize.c ra-rewrite.c ra.c recog.c reg-stack.c regclass.c
3440 regmove.c regrename.c reload.c reload1.c reorg.c resource.c
3441 sbitmap.c sched-deps.c sched-rgn.c sched-vis.c sdbout.c
3442 simplify-rtx.c ssa-ccp.c ssa.c stmt.c stor-layout.c timevar.c
3443 tlink.c toplev.c tree-dump.c tree.c unroll.c unwind-dw2-fde.c
3444 varasm.c varray.c vmsdbgout.c xcoffout.c: Remove unnecessary
3445 casts.
3446
308ca868
GDR
34472003-07-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
3448
3449 * c-pragma.c (apply_pragma_weak): Don't use warning_with_decl.
3450 * toplev.h (warning): Remove attribute.
3451
435ab236
GDR
34522003-07-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
3453
3454 * c-decl.c (c_finish_incomplete_decl): Don't use xxx_with_decl.
3455 (pop_label_level): Likewise.
3456 (duplicate_decls): Likewise.
3457 (implicitly_declare): Likewise.
3458 (shadow_label): Likewise.
3459 (start_decl): Likewise.
3460 (finish_decl): Likewise.
3461 (grokdeclarator): Likewise.
3462 (get_parm_info): Likewise.
3463 (detect_field_duplicates): Likewise.
3464 (finish_struct): Likewise.
3465 (start_function): Likewise.
3466 (store_parm_decls): Likewise.
3467 (finish_function): Likewise.
3468 (c_expand_body_1): Likewise.
3469 (check_for_loop_decls): Likewise.
3470 (merge_translation_unit_decls): Likewise.
3471
2cc98056
NB
34722003-07-19 Neil Booth <neil@daikokuya.co.uk>
3473
3474 * common.opt: Document --param.
3475 * opts.c (columns, undocumented_msg): New.
3476 (print_help): Get number of columns from environment. Print
3477 --param help. Tweak newline handling.
3478 (print_param_help): New.
3479 (print_filtered_help): Better handling of duplicates. Complain
3480 about undocumented switches.
3481 (print_switch): New.
3482 (wrap_help): Improve wrapping, use COLUMNS.
3483 * opts.sh: Ignore comments in records.
3484 * params.def: Fix typos and remove trailing periods.
3485 * toplev.c (display_help): Don't dump --param help.
3486 * doc/sourcebuild.texi: Update.
3487
d893ccde
RH
34882003-07-18 Richard Henderson <rth@redhat.com>
3489
0e38b30b 3490 PR target/11556
d893ccde
RH
3491 * optabs.c (prepare_operand): Fail gracefully instead of abort
3492 if the predicate doesn't satisfy.
3493 (gen_cond_trap): Allow prepare_operand to fail.
3494
eb8221ea
GDR
34952003-07-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
3496
3497 * c-common.c: Don't undefine GCC_DIAG_STYLE.
3498 (fname_decl): Don't use xxx_with_decl.
3499 (c_add_case_label): Likewise.
3500 (handle_section_attribute): Likewise.
3501 (handle_alias_attribute): Likewise.
3502 (handle_no_instrument_function_attribute): Likewise.
3503 (handle_no_limit_stack_attribute): Likewise.
3504 * c-objc-common.c (c_tree_printer): Print IDENTIFIER_NODEs.
3505 * c-format.c (gcc_cdiag_char_table): Add '%E' format-specifier.
3506
65f43cdf
ZD
35072003-07-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
3508
3509 * Makefile.in (ifcvt.o): Add cfgloop.h.
3510 * basic-block.h (EDGE_LOOP_EXIT): New flag.
3511 * cfgrtl.c (rtl_verify_flow_info_1): Handle it correctly.
3512 * ifcvt.c: Include cfgloop.h.
3513 (mark_loop_exit_edges): New static function.
3514 (if_convert): Call it.
3515 (find_if_header): Ignore branches out of loops.
3516
e5686da7
KH
35172003-07-18 Kazu Hirata <kazu@cs.umass.edu>
3518
14e33ee8 3519 * combine.c (simplify_comparison): Don't share rtx when converting
e5686da7
KH
3520 (ne (and (not X) 1) 0) to (eq (and X 1) 0).
3521
8d05ebaa
DE
35222003-07-18 David Edelsohn <edelsohn@gnu.org>
3523
3524 * config/rs6000/aix.h (AGGREGATE_PADDING_FIXED): Define.
3525 (AGGREGATES_PAD_UPWARD_ALWAYS): Define.
3526 (MUST_PASS_IN_STACK): Define.
3527 (BLOCK_REG_PADDING): Define.
3528
79019985
RH
35292003-07-18 Richard Henderson <rth@redhat.com>
3530
3531 * cfgrtl.c (force_nonfallthru_and_redirect): Use tablejump_p
3532 to skip the addr_vec.
3533
0595d388
AO
3534Fri Jul 18 15:22:28 2003 Alexandre Oliva <aoliva@redhat.com>
3535
3536 * combine.c (combinable_i3pat): Don't forbid occurrences of
3537 i2dest or i1dest in inner_dest if inner_dest is a mem.
3538
2ee1067b
JH
3539Fri Jul 18 17:05:57 CEST 2003 Jan Hubicka <jh@suse.cz>
3540
3541 * cgraph.c (cgraph_remove_node): Clear the hash table slot.
3542
16f6812f
JJ
35432003-07-17 Jakub Jelinek <jakub@redhat.com>
3544
3545 PR target/11087
3546 * loop.c (basic_induction_var): Check if convert_modes emitted any
3547 instructions. Remove them and return 0 if so.
3548
f129791c
EB
35492003-07-18 Eric Botcazou <ebotcazou@libertysurf.fr>
3550
3551 PR optimization/11083
3552 * toplev.c (rest_of_handle_addresof): Rename into
3553 rest_of_handle_addressof. Delete unreachable blocks
3554 if dead edges were purged after the addressof pass.
3555
b2e608ca
NB
35562003-07-18 Neil Booth <neil@daikokuya.co.uk>
3557
3558 * Makefile.in, configure, configure.in: Remove handling of
3559 lang-options.h and options_.h.
3560 * toplev.c (struct lang_opt, documented_lang_options): Remove.
3561 (display_help): Don't use documented_lang_options.
3562
9cd51ef6
ZW
35632003-07-17 Zack Weinberg <zack@codesourcery.com>
3564
3565 * c-decl.c (pushdecl_function_level): Make static, return nothing.
3566 (kept_level_p): Fold into poplevel.
3567 (undeclared_variable): Moved here from c-typeck.c. Export.
3568 * c-tree.h (KEEP_YES, KEEP_NO, KEEP_MAYBE): New #defines.
3569 (undeclared_variable): Prototype here. Don't prototype
3570 kept_level_p nor pushdecl_function_level.
3571 * c-parse.in: Change first argument to poplevel from
3572 "kept_level_p()" to "KEEP_MAYBE".
3573 * c-typeck.c (undeclared_variable): Moved to c-decl.c.
3574
cf6bcbd0
RS
35752003-07-17 Roger Sayle <roger@eyesopen.com>
3576
3577 * simplify-rtx.c (simplify_rtx): Use simplify_gen_binary to swap
3578 commutative operands instead of modifying the RTL in-place.
3579
2b187c63
MM
35802003-07-17 Mark Mitchell <mark@codesourcery.com>
3581
3582 PR optimization/11557
3583 * calls.c (flags_from_decl_or_type): Do not set ECF_LIBCALL_BLOCK
3584 unless we know which function is being called.
3585
c715abdd
RS
35862003-07-17 Roger Sayle <roger@eyesopen.com>
3587
3588 * cse.c (fold_rtx): Use swap_commutative_operands_p to determine
3589 whether to reorder the operands of a commutative binary operator.
3590
3e4093b6
RS
35912003-07-17 Roger Sayle <roger@eyesopen.com>
3592
3593 * fold-const.c (const_binop): Avoid performing the FP operation at
3594 compile-time, if either operand is NaN and we honor signaling NaNs,
3595 or if we're dividing by zero and either flag_trapping_math is set
3596 or the desired mode doesn't support infinities.
3597 (fold_initializer): New function to fold an expression ignoring any
3598 potential run-time exceptions or traps.
3599 * tree.h (fold_initializer): Prototype here.
3600 * c-typeck.c (build_binary_op): Move to the end of the file so
3601 that intializer_stack is in scope. If constructing an initializer,
3602 i.e. when initializer_stack is not NULL, use fold_initializer to
3603 fold expressions.
3604 * simplify-rtx.c (simplify_binary_operation): Likewise, avoid
3605 performing FP operations at compile-time, if they would raise an
3606 exception at run-time.
3607
89e9faee
GK
36082003-07-17 Geoffrey Keating <geoffk@apple.com>
3609
26e0dcb3
GK
3610 PR 11498
3611 * Makefile.in (c-opts.o): Add $(LANGHOOKS_DEF_H).
3612 (langhooks.o): Add $(GGC_H), gt-langhooks.h.
3613 (GTFILES): Add langhooks.c.
3614 (gt-langhooks.h): New.
3615 * c-common.h (c_static_assembler_name): Prototype.
3616 * c-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
3617 * objc/objc-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
3618 * c-opts.c: Include langhooks-def.h.
3619 (c_static_assembler_name): New.
3620 * langhooks.c: Include ggc.h. Include gt-langhooks.h.
3621 (var_labelno): New.
3622 (lhd_set_decl_assembler_name): Give static objects with context
3623 unique names.
3624 * varasm.c (var_labelno): Delete.
3625 (make_decl_rtl): Don't change the assembler name once it's set.
3626
89e9faee
GK
3627 * c-opts.c (this_input_filename): New.
3628 (finish_options): Take new parameter, name of file being compiled.
3629 Update callers. Set this_input_filename.
3630 (push_command_line_include): Use this_input_filename not
3631 main_input_filename.
3632
6ec3f553
NB
36332003-07-17 Neil Booth <neil@daikokuya.co.uk>
3634
3635 * Makefile.in: Depend .pot generation on options.c.
3636 * po/exgettext: Add an extra_files variable containing additional
3637 files to scan.
3638
78ff95dc
ZW
36392003-07-17 Zack Weinberg <zack@codesourcery.com>
3640
36c6d174
ZW
3641 * objc/objc-lang.c: Override LANG_HOOKS_WRITE_GLOBALS to
3642 c_write_global_declarations.
3643
eb1dfbb2
ZW
3644 * c-decl.c: Fix typos in several comments. Remove all
3645 #if 0 blocks; reindent as needed. Remove unused argument
3646 to declare_parm_level; all callers changed.
3647 * c-parse.in: Update calls to declare_parm_level. Avoid
3648 issuing a double warning in some circumstances.
3649 * c-typeck.c: Update calls to declare_parm_level.
3650 * c-tree.h: Update prototype of declare_parm_level.
3651
3652 * c-pragma.c (apply_pragma_weak): Don't complain about a
3653 redundant #pragma weak.
3654
3655 * objc/objc-act.c (forward_declare_categories,
3656 build_selector_reference_decl, build_class_reference_decl,
3657 build_objc_string_decl, synth_forward_declarations,
3658 build_protocol_reference): Set TREE_PUBLIC on synthetic
3659 forward decl to 0, consistent with eventual definition.
3660 Correct comments to match.
3661
78ff95dc
ZW
3662 * fixinc/inclhack.def (solaris_mutex_init_2): Escape braces
3663 in regexp that don't form a range expression.
3664 * fixinc/fixincl.def: Regenerate.
3665
b23ba0b8
RH
36662003-07-17 Richard Henderson <rth@redhat.com>
3667
78ff95dc
ZW
3668 PR target/10907
3669 * config/ia64/ia64.c (ia64_epilogue_uses): GP is live at end
3670 even with !TARGET_CONST_GP.
3671 (ia64_function_ok_for_sibcall): Reject non-local functions.
b23ba0b8 3672
d944c82d
SB
36732003-07-17 Steven Bosscher <steven@gcc.gnu.org>
3674
3675 * c-common.c (c_estimate_num_insns_1): Don't handle
3676 METHOD_CALL_EXPR.
3677 * expr.c (safe_from_p): Likewise.
3678 * gengtype.c (adjust_field_tree_exp): Likewise.
3679 * stmt.c (warn_if_unused_value): Likewise
3680 * tree.c (first_rtl_op): Likewise.
3681 * tree.def: Don't define METHOD_CALL_EXPR.
3682 * java/lang.c (java_estimate_num_insns_1): Don't handle
3683 METHOD_CALL_EXPR.
3684
54284728
EB
36852003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
3686
3687 PR other/11466
3688 * doc/invoke.texi (SPARC Options): Document "-mlittle-endian"
3689 and its restrictions for the SPARC64 port.
3690 Move the entry of "-mimpure-text" before that of "-mv8".
3691
bc890961 36922003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
78ff95dc 3693 Phil Edwards <phil@jaj.com>
bc890961
EB
3694
3695 * doc/install.texi (*-*-solaris2*): Document the step-by-step
3696 procedure to bootstrap and install.
3697 Document the preference for the legacy Sun tools in /usr/bin
3698 over the POSIX tools in /usr/xpg4/bin for the build process.
3699
f2ac9964
NB
37002003-07-17 Neil Booth <neil@daikokuya.co.uk>
3701
3702 * c.opt: Document Uncodumented; use it. Document ObjC options.
3703 * opts.c (print_filtered_help): Skip undocumented switches.
3704 * opts.h (CL_UNDOCUMENTED): New.
3705 * opts.sh: Handle Undocumented.
3706 * toplev.c (documented_lang_options): Prevent its becoming empty.
3707objc:
3708 * lang-options.h: Remove.
3709
03988cac
UW
37102003-07-16 Ulrich Weigand <uweigand@de.ibm.com>
3711
3712 * loop.c (check_ext_dependent_givs): Pass const struct loop *
3713 instead of struct loop_info * as argument. Accept BIVs with
3714 increment +/- 1 provided there is a friendly exit test against
3715 a loop-invariant value.
3716 (strength_reduce): Adapt call to check_ext_dependent_givs.
3717
fada1961
R
37182003-07-16 J"orn Rennecke <joern.rennecke@superh.com>
3719 Con Bradley <con.bradley@superh.com>
3720
3721 * sh-protos.h (sh_get_pr_initial_val): Declare.
3722 * sh.c (regno_reg_class): Make its elements type enum reg_class.
3723 (output_stack_adjust): Remove emit_fn argument. Add epilogue_p
3724 and live_regs_mask arguments. Changed all callers.
3725 (save_schedule_s): New structure.
3726 (save_schedule): New typedef.
3727 (scavenge_reg, sh5_schedule_saves, sh5_schedule_saves): New functions.
3728 (calc_live_regs): For TARGET_SHMEDIA, use leaf_function_p.
3729 In interrupts handlers, also save registers that are usually
3730 partially saved, and make sure there is at least one general purpose
3731 register saved if a target register needs saving.
3732 Add casts in comparisons to avoid warnings.
3733 (sh_media_register_for_return): return -1 for interrupt handlers.
3734 (MAX_SAVED_REGS, MAX_TEMPS): New defines.
3735 (sh_expand_prologue): Use sh5_schedule_saves. Check that any temp
3736 registers used are available.
3737 Set RTX_FRAME_RELATED_P where appropriate.
3738 Add an REG_FRAME_RELATED_EXPR for r0 + offset addressing.
3739 (sh_expand_epilogue, sh_set_return_address): Use sh5_schedule_saves.
3740 (initial_elimination_offset): Likewise.
3741 * sh.h (DWARF_CIE_DATA_ALIGNMENT): Set to -4.
3742 (LOCAL_ALIGNMENT, GENERAL_REGISTER_P): Add casts to avoid warnings.
3743 (FP_REGISTER_P): Add casts to fix broken handling of unsigned REGNO.
3744 (XD_REGISTER_P, TARGET_REGISTER_P): Likewise.
3745 (HARD_REGNO_CALL_PART_CLOBBERED): Also yield nonzero for r15,
3746 and for target registers.
3747 (RETURN_IN_MEMORY): Add parentheses to avoid warnings.
3748 (regno_reg_class): Make its elements type enum reg_class.
3749 (CONSTRAINT_LEN): Don't use isdigit.
3750 (FUNCTION_ARG_REGNO_P): Add casts to avoid warnings.
3751 (FUNCTION_ARG): Add parentheses to avoid warnings.
3752 (RETURN_ADDR_RTX): Use sh_get_pr_initial_val.
3753 (RETURN_ADDR_OFFSET): Define to -1 for TARGET_SH5.
3754 (SH_DBX_REGISTER_NUMBER): Add casts to avoid warnings.
3755 (EH_RETURN_DATA_REGNO): Use unsigned constants to avoid warnings.
3756 * sh.md (xordi3+1): Remove unused variable regno.
3757 (return_media): Check that tr0 is available before using it.
3758
bae92bf3
NB
37592003-07-16 Neil Booth <neil@daikokuya.co.uk>
3760
3761 * c.opt: Document more options.
3762
cc8c96fd
RS
37632003-07-16 Roger Sayle <roger@eyesopen.com>
3764
3765 * combine.c (subst): Also handle (subreg (const_double ...)) case
3766 if created by a substitution, by using the original inner mode.
3767
d41ba56f
RS
37682003-07-16 Roger Sayle <roger@eyesopen.com>
3769
3770 * simplify-rtx.c (simplify_replace_rtx): Convert constant comparisons
3771 to MODE_FLOAT constants if FLOAT_STORE_FLAG_VALUE is defined.
3772 (simplify_rtx): Likewise. Simplify (lo_sum (high X) X) as X.
3773
264d65c1 37742003-07-16 Andrew Pinski <pinskia@physics.uc.edu>
78ff95dc 3775
264d65c1 3776 * doc/install.texi (--without-headers): New.
1622229c
AP
3777
3778 Partial Fix PR/10129
3779 * config/darwin.c (machopic_function_base_name): Only Return "<pic base>".
3780 (machopic_output_function_base_name): New; print the true pic label.
3781 (machopic_classify_ident): Pic Base is always a defined data.
3782 * config/darwin.h (ASM_OUTPUT_LABELREF): Support the pic base label.
3783 * config/darwin-proto.h (machopic_output_function_base_name): Prototype.
3784
db2f435b
AP
3785 * gcse.c (gcse_constant_p): COMPARE of the same registers is a constant
3786 if they are not floating point registers.
3787
d07605f5
AP
3788 PR c/10962
3789 * ggc.h: Add header guards.
3790 * c-decl.c (finish_struct): Sort fields if
3791 number greater than 15 and there are no
3792 anonymous structs/unions.
3793 * c-common.h: Include ggc.h.
3794 (sorted_fields_type): New struct.
3795 (field_decl_cmp): New prototype.
3796 (resort_sorted_fields): New prototype.
3797 (DECL_DECLARES_TYPE_NON_TEMPLATE_P): New macro.
3798 * c-tree.h: (lang_type): Use pointer to sorted_fields_type
3799 as s, removing other fields.
3800 * c-typeck.c (lookup_field): Use s in lang_type.
3801 These were mostly moved from cp/class.c:
3802 * c-common.c (field_decl_cmp): New static function.
3803 (field_decl_cmp): New function.
3804 (resort_sorted_fields): New function.
3805
3d7964d5
GK
38062003-07-16 Geoffrey Keating <geoffk@apple.com>
3807
3808 * config/darwin.c (machopic_select_section): Use decl_readonly_section
3809 to do most of the work.
3810
4e58524e
HPN
38112003-07-16 Hans-Peter Nilsson <hp@bitrange.com>
3812
3813 * config/mmix/mmix-protos.h: Convert prototypes to ISO C90.
3814 * config/mmix/mmix.c: Convert functions to ISO C90.
3815 (mmix_eh_return_handler_rtx, mmix_output_shifted_value): Tweak
3816 formatting.
3817 (mmix_get_hard_reg_initial_val): Tweak section head comment.
3818
1e0343dd
R
38192003-07-16 J"orn Rennecke <joern.rennecke@superh.com>
3820
3821 * c-pragma.h (HANDLE_PRAGMA_WEAK): Always define to SUPPORTS_WEAK.
3822
fc4767bb
JJ
38232003-07-16 Jakub Jelinek <jakub@redhat.com>
3824
3825 * unwind-dw2.c (MD_FROB_UPDATE_CONTEXT): Define.
3826 (uw_update_context_1): Use it.
3827 * config/rs6000/rs6000.c (insn_after_throw): Remove.
3828 (rs6000_aix_emit_builtin_unwind_init): Save $r2 to its location
3829 in parent frame if _Unwind_* called directly instead of through
3830 .plt.
3831 (rs6000_emit_eh_toc_restore): Remove.
3832 (rs6000_emit_prologue): Update stack pointer before doing any saving
3833 if current_function_calls_eh_return. Generate unwind info for $r2.
3834 (rs6000_emit_epilogue): Restore stack pointer after doing all
3835 restoring if current_function_calls_eh_return. Restore $r2.
3836 * config/rs6000/rs6000-protos.h (rs6000_emit_eh_toc_restore): Remove.
3837 * config/rs6000/rs6000.md (eh_return): Remove call to
3838 rs6000_emit_eh_toc_restore.
3839 * config/rs6000/linux64.h (MD_FROB_UPDATE_CONTEXT): Define.
3840 * config/rs6000/aix.h (MD_FROB_UPDATE_CONTEXT): Define.
3841
6972c506
JJ
38422003-07-15 Jakub Jelinek <jakub@redhat.com>
3843
3844 * expr.c (emit_block_move): Don't move anything if size is const 0.
3845 (clear_storage): Test against const0_rtx instead of comparing INTVAL
3846 against 0.
3847
ac59ed37
DM
38482003-07-15 David S. Miller <davem@redhat.com>
3849
3850 * config/sparc/sparc.c (sparc_nonflat_function_epilogue): Only
3851 emit nop if the last real insn is CALL_INSN.
3852
b828d124
DS
38532003-07-16 Danny Smith <dannysmith@users.sourceforge.net>
3854
3855 * config/i386/xm-mingw32.h (HOST_BIT_BUCKET): Define
3856 as "nul".
3857 * config/i386/xm-mingw32.h: Change GNU CC to GCC.
3858
d5648e12
DS
38592003-07-16 Danny Smith <dannysmith@users.sourceforge.net>
3860
3861 * config/i386/winnt.c (associated_type): Artificial methods are not
3862 affected by the import/export status of their class unless they are
3863 COMDAT.
3864 (i386_pe_dllimport_p): Do not mark artificial methods as dllimport.
3865
3866 * config/i386/winnt.c: Fix GCC copyright comment.
3867
b0e3f7ec
GDR
38682003-07-16 Gabriel Dos Reis <gcc@integrable-solutions.net>
3869
3870 PR c++/11531
3871 * diagnostic.c (diagnostic_report_diagnostic): Don't ICE if we're
3872 not recursing on hard error.
3873 (diagnostic_for_decl): Likewise.
3874 * diagnostic.def: Rearrange.
3875
71628aa0
R
38762003-07-15 J"orn Rennecke <joern.rennecke@superh.com>
3877
3878 * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
3879 If DWARF_FRAME_RETURN_COLUMN doesn't have a register mode, use Pmode.
3880
38812003-07-15 J"orn Rennecke <joern.rennecke@superh.com>
3882 Richard Henderson <rth@redhat.com>
3883
3884 * unwind-dw2.c (_Unwind_GetGR): Use dwarf_reg_size_table
3885 to decide if to access a _Unwind_Ptr or a _Unwind_Word.
3886 (_Unwind_SetGR): Likewise.
3887 (_Unwind_GetPtr, _Unwind_SetSpColumn): New functions.
3888 (Unwind_SpTmp): New typedef.
3889 (uw_update_context_1): Use _Unwind_SetSpColumn and _Unwind_GetPtr.
3890 (uw_update_context): Use _Unwind_GetPtr.
3891 (init_dwarf_reg_size_table): Move above uw_init_context_1.
3892 (uw_init_context_1): Initialize dwarf_reg_size_table if necessary.
3893 Use _Unwind_SetSpColumn.
3894 (uw_install_context_1): Don't initialize dwarf_reg_size_table.
3895 Use _Unwind_GetPtr.
3896
5a170a05
NB
38972003-07-15 Neil Booth <neil@daikokuya.co.uk>
3898
3899 * c.opt: Document more options.
3900 * toplev.c (documented_lang_options): Remove all local help strings.
3901
b0afa2fc
MM
39022003-07-15 Mark Mitchell <mark@codesourcery.com>
3903
3904 PR debug/11473
3905 * dbxout.c (dbxout_type): Use TYPE_SIZE to determine the sizes of
3906 base classes.
3907
5df90541
KH
39082003-07-15 Kazu Hirata <kazu@cs.umass.edu>
3909
3910 PR target/10795
3911 * config/i386/i386.c (ix86_expand_carry_flag_compare): Don't
3912 swap comparison operands if doing so would generate an
3913 unrecognizable insn.
3914
5a257872
EB
39152003-07-15 Eric Botcazou <ebotcazou@libertysurf.fr>
3916
3917 PR optimization/11320
3918 * sched-int.h (struct deps) [reg_conditional_sets]: New field.
3919 (struct sched_info) [compute_jump_reg_dependencies]: New prototype.
3920 * sched-deps.c (sched_analyze_insn) [JUMP_INSN]: Update call to
3921 current_sched_info->compute_jump_reg_dependencies. Record which
3922 registers are used and which registers are set by the jump.
3923 Clear deps->reg_conditional_sets after a barrier.
3924 Set deps->reg_conditional_sets if the insn is a COND_EXEC.
3925 Clear deps->reg_conditional_sets if the insn is not a COND_EXEC.
3926 (init_deps): Initialize reg_conditional_sets.
3927 (free_deps): Clear reg_conditional_sets.
3928 * sched-ebb.c (compute_jump_reg_dependencies): New prototype.
3929 Mark registers live on entry of the fallthrough block and conditionally
3930 set as set by the jump. Mark registers live on entry of non-fallthrough
3931 blocks as used by the jump.
3932 * sched-rgn.c (compute_jump_reg_dependencies): New prototype.
3933 Mark new parameters as unused.
3934
3cec3f83
RS
39352003-07-15 Richard Sandiford <rsandifo@redhat.com>
3936
3937 * doc/invoke.texi: Resync MIPS -march documentation.
3938
98450f0d
RS
39392003-07-15 Richard Sandiford <rsandifo@redhat.com>
3940
3941 * config/mips/mips.h (PROCESSOR_R9000): New processor_type.
3942 (TARGET_MIPS9000, TUNE_MIPS9000): New macros.
3943 (GENERATE_MULT3_SI): True for TARGET_MIPS9000.
3944 * config/mips/mips.c (mips_cpu_info_table): Add rm9000 entry.
3945 (mips_rtx_costs): Adjust integer multiplication costs for the rm9000.
3946 (mips_issue_rate): Handle PROCESSOR_R9000.
3947 (mips_use_dfa_pipeline_interface): Likewise.
3948 * config/mips/9000.md: New file.
3949 * config/mips/mips.md: Include it.
3950 (define_attr cpu): Add r9000.
3951 (mulsi3_mult3): Use "mul" for rm9000 code.
3952
5fe25f47
SC
39532003-07-15 Stan Cox <scox@redhat.com>
3954
3955 * config/mips/mips.h (PROCESSOR_R7000): New processor_type.
3956 (TARGET_MIPS7000, TUNE_MIPS7000): New macros.
3957 (GENERATE_MULT3_SI): True for TARGET_MIPS7000.
3958 * config/mips/mips.c (mips_cpu_info_table): Add rm7000 entry.
3959 (mips_rtx_costs): Adjust integer multiplication costs for the rm7000.
3960 (mips_issue_rate): Handle PROCESSOR_R7000.
3961 (mips_use_dfa_pipeline_interface): Likewise.
3962 * config/mips/7000.md: New file.
3963 * config/mips/mips.md: Include it.
3964 (define_attr cpu): Add r7000.
3965 (mulsi3_mult3): Use "mul" for rm7000 code.
3966
5a2515e6
RS
39672003-07-15 Richard Sandiford <rsandifo@redhat.com>
3968
3969 * config/mips/mips.md (define_attr type): Add condmove. Use it for
3970 the conditional move patterns.
3971 * config/mips/5400.md (ir_vr54_move): Rename to ir_vr54_condmove.
3972 Check for condmove type.
3973 (ir_vr54_arith): Add move type.
3974 * config/mips/5500.md (ir_vr55_move, ir_vr55_arith): Likewise.
3975 * config/mips/sr71k.md (ir_sr70_move, ir_sr70_arith): Likewise.
3976
72de27ea
NB
39772003-07-15 Neil Booth <neil@daikokuya.co.uk>
3978
3979 * c-opts.c (print_help): Remove.
3980 (c_common_handle_option): Don't handle --help.
3981 * c.opt: Document some options.
3982 (--help): Remove.
3983 * opts.c (print_filtered_help): New.
3984 (print_help): Use it.
3985
e6ebd07b
GK
39862003-07-14 Geoffrey Keating <geoffk@apple.com>
3987
2d799c09
GK
3988 * c-common.c (c_common_type_for_mode): Handle V4DFmode.
3989 * tree.c: (build_common_tree_nodes_2): Likewise.
3990 * tree.h (enum tree_index): Add TI_V4DF_TYPE.
3991 (V4DF_type_node): New.
3992
e6ebd07b
GK
3993 * c-opts.c (push_command_line_include): Don't free deferred_opts,
3994 we'll need it.
3995 (finish_options): Reset init_cursor.
3996
b90f141a
KH
39972003-07-15 Kazu Hirata <kazu@cs.umass.edu>
3998
3999 * expr.c (expand_assignment): Remove an unused argument
4000 SUGGEST_REG.
4001 * expr.h: Update the prototype.
4002 * function.c: Update the callers.
4003 * stmt.c: Likewise.
4004
1e7ee6ad
MM
40052003-07-14 Mark Mitchell <mark@codesourcery.com>
4006
4007 PR debug/11098
4008 * integrate.c (copy_decl_for_inlining): Do not mark copied decls
4009 as DECL_ABSTRACT.
4010
bf66f7b0
NN
40112003-07-14 Nathanael Nerode <neroden@gcc.gnu.org>
4012
4013 * fixinc/inclhack.def (avoid_bool_define, avoid_bool_type): Bypass
4014 with __cplusplus, not "we must use the C++ compiler's type"
4015 * fixinc/inclhack.def (void_null): Note that Interix needs this.
4016 * fixinc/fixincl.x: Regenerate.
4017
18009d03
GK
40182003-07-14 Geoffrey Keating <geoffk@apple.com>
4019
ea00486e
GK
4020 * unwind-dw2-fde-darwin.c (live_image_destructor): Get seen_objects
4021 and unseen_objects from the global data before calling
4022 __deregister_frame_info_bases.
4023 (examine_objects): Insert objects into the seen_objects list,
4024 not unseen_objects.
4025 (_Unwind_Find_FDE): Always unlock the global object lists, even if
4026 we couldn't allocate a data structure to put in it.
4027
18009d03
GK
4028 * objc/objc-act.h (CLASS_SUPER_NAME): Add a little typechecking.
4029 (TYPE_PROTOCOL_LIST): Share use of type.context with C frontend.
4030 (SET_TYPE_PROTOCOL_LIST): New.
4031 * objc/objc-act.c (get_static_reference): Use SET_TYPE_PROTOCOL_LIST.
4032 (get_object_reference): Likewise.
4033
9ae130f8
JH
4034Mon Jul 14 23:14:28 CEST 2003 Jan Hubicka <jh@suse.cz>
4035
4036 * cfglayout.c (locator_file): Break out from ....
4037 (insn_file): ... here.
4038 (locator_line): Break out from ....
4039 (insn_line): ... here.
4040 * rtl.h (locator_file, locator_line): Declare.
4041 (final_start_function): Set proper line/file info.
4042
e07d4821
GDR
40432003-07-14 Gabriel Dos Reis <gdr@integrable-solutions.net>
4044
4045 * c-pretty-print.c (pp_c_unary_expression): A CONVERT_EXPR is
4046 handled by pp_c_cast_expression.
4047
121d69e6
RS
40482003-07-14 Richard Sandiford <rsandifo@redhat.com>
4049
4050 * config/mips/mips.c (mips_expand_prologue): Use a single insn to
4051 allocate 32768 bytes of stack. Use addition rather than subtraction
4052 when a single insn is enough.
4053 * config/mips/mips.md: Remove insns and splitters for subtracting
4054 constants.
4055 (subsi3): Only accept register operands.
4056 (subsi3_internal): Likewise. Use for TARGET_MIPS16 as well.
4057 (subdi3_internal_3, subsi3_internal_2): Likewise.
4058 (casesi): Use expand_binop to subtract the lower bound.
4059
3485245e
RS
40602003-07-14 Richard Sandiford <rsandifo@redhat.com>
4061
4062 * config/mips/mips.c (mips_in_small_data_p): Don't handle
4063 TARGET_MIPS16 specially.
4064
6627b7f9
RS
40652003-07-14 Richard Sandiford <rsandifo@redhat.com>
4066
6d0b50a4
RS
4067 * config/mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Use
4068 mips_output_aligned_bss.
4069 * config/mips/linux.h: Likewise.
4070 * config/mips/mips-protos.h (mips_output_aligned_bss): Declare.
4071 * config/mips/mips.c (mips_output_aligned_bss): New function.
4072
8d50bd19
RS
4073 * config/mips/elf.h (DBX_DEBUGGING_INFO): Delete.
4074 * config/mips/elf64.h: Likewise.
4075
c1115ccd
RS
4076 * config/mips/elf.h (ASM_DECLARE_OBJECT_NAME): Use
4077 mips_declare_object_name.
4078 (ASM_FINISH_DECLARE_OBJECT): Likewise mips_finish_declare_object.
4079 * config/mips/elf64.h: As for elf.h.
4080 * config/mips/iris6.h: Likewise.
4081 * config/mips/linux.h (ASM_DECLARE_OBJECT_NAME): As for elf.h.
4082 * config/mips/mips.h (ASM_DECLARE_OBJECT_NAME): Remove unnecessary
4083 do...while (0) block.
4084 * config/mips/mips-protos.h (mips_declare_object_name): Declare.
4085 (mips_finish_declare_object): Declare.
4086 * config/mips/mips.c (mips_declare_object_name): New function.
4087 (mips_finish_declare_object): New function.
4088
060ff934
RS
4089 * config/mips/elf.h (SBSS_SECTION_ASM_OP): Delete.
4090 * config/mips/linux.h: Likewise.
4091
d82783b6
RS
4092 * config/mips/mips.c (inside_function): Delete.
4093 (file_in_function_warning, ignore_line_number): Delete.
4094 (mips_output_filename): Don't warn about changing filenames within
4095 a function.
4096 (mips_output_lineno): Update accordingly.
4097 (mips_output_function_prologue): Don't reset the deleted variables.
4098 * config/mips/mips.h (inside_function): Delete.
4099 (file_in_function_warning, ignore_line_number): Delete.
4100
373f8df7
RS
4101 * config/mips/elf.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Remove undefs.
4102 * config/mips/elf64.h: Likewise.
4103 * config/mips/openbsd.h: Likewise.
4104 * config/mips/iris5.h (OBJECT_FORMAT_COFF): Remove undefs.
4105 * config/mips/linux.h: Likewise.
4106 * config/mips/mips.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Delete.
4107 (CODE_MASK, MIPS_IS_STAB, MIPS_MARK_STAB, MIPS_UNMARK_STAB): Delete.
4108
6627b7f9
RS
4109 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Add mips/sdb.h
4110 to the list of include files when using gas.
4111 (mips*el-*-openbsd*, mips*-*-openbsd*): Add mips/sdb.h unconditionally.
4112 * config/mips/elf.h: Remove #undef SDB_DEBUGGING_INFO.
4113 * config/mips/elf64.h: Likewise.
4114 * config/mips/iris5.h: Likewise.
4115 * config/mips/linux.h: Likewise.
4116 * config/mips/iris5gas.h (SDB_DEBUGGING_INFO): Remove definition.
4117 * config/mips/mips.h (PREFERRED_DEBUGGING_TYPE): Likewise.
4118 (SDB_DEBUGGING_INFO, sdb*, SDB_ALLOW_*, PUT_SDB*): Move to...
4119 * config/mips/sdb.h: ...this new file.
4120
c18b00c0
NN
41212003-07-14 Douglas Rupp <rupp@gnat.com>
4122
4123 * fixinc/server.c (server_setup): Don't use non-POSIX NULL first
4124 argument to getcwd; use fixed buffer instead.
4125
41262003-07-14 Nathanael Nerode <neroden@gcc.gnu.org>
4127
4128 * fixinc/mkfixinc.sh: Treat OpenBSD normally.
4129 * fixinc/fixinc.wrap: Delete.
4130
adc4adcd
GP
41312003-07-14 Dan Nicolaescu <dann@ics.uci.edu>
4132
4133 * ggc-page.c (extra_order_size_table): Insns have 9 slots. Regs
4134 don't have 2.
4135
41362003-07-14 Dan Nicolaescu <dann@ics.uci.edu>
4137
4138 * ggc-page.c (struct globals): Add new fields to keep track of the
4139 total allocated memory and overhead.
4140 (ggc_print_statistics): Print them.
4141 (ggc_alloc): Keep track of the total allocated memory and the
4142 overhead.
4143
4144 * tree.c (dump_tree_statistics): Increase spacing.
4145 (enum tree_node_kind): Move to ...
4146 * tree.h (enum tree_node_kind): ... here.
4147 (tree_node_counts, tree_node_sizes): Declare.
4148
41492003-07-14 James A. Morrison <ja2morri@student.math.uwaterloo.ca>
4150
4151 * doc/include/texinfo.tex: Upgrade to texinfo 4.6.
4152
bbd288a4
FS
41532003-07-14 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
4154
4155 PR optimization/11440
4156 * gcse.c (try_replace_reg): Don't attach notes to ZERO_EXTRACT or
4157 SIGN_EXTRACT SETs.
4158
6e985040
AM
41592003-07-14 Alan Modra <amodra@bigpond.net.au>
4160
4161 * doc/tm.texi (BLOCK_REG_PADDING): Describe.
4162 * expr.h (struct locate_and_pad_arg_data): Add where_pad.
4163 (emit_group_load, emit_group_store): Adjust declarations.
4164 Remove most occurrences of #ifdef TREE_CODE.
4165 * expr.c (emit_group_load): Add "type" param, and use
4166 BLOCK_REG_PADDING to determine need for a shift. Optimize non-
4167 aligned accesses if !SLOW_UNALIGNED_ACCESS.
4168 (emit_group_store): Likewise.
4169 (emit_push_insn, expand_assignment, store_expr, expand_expr): Adjust
4170 emit_group_load and emit_group_store calls.
4171 * calls.c (store_unaligned_arguments_into_pseudos): Tidy. Use
4172 BLOCK_REG_PADDING to determine whether we need endian_correction.
4173 (load_register_parameters): Localize vars. Handle shifting of
4174 small values to the correct end of regs. Adjust emit_group_load
4175 call.
4176 (expand_call, emit_library_call_value_1): Adjust emit_group_load
4177 and emit_group_store calls.
4178 * function.c (assign_parms): Set mem alignment for stack slots.
4179 Adjust emit_group_store call. Store values at the "wrong" end
4180 of regs to the stack. Use BLOCK_REG_PADDING.
4181 (locate_and_pad_parm): Save where_pad.
4182 (expand_function_end): Adjust emit_group_load call.
4183 * stmt.c (expand_value_return): Adjust emit_group_load call.
4184 * Makefile.in (calls.o): Depend on $(OPTABS_H).
4185 * config/rs6000/linux64.h (TARGET_LITTLE_ENDIAN): Redefine as 0.
4186 (AGGREGATE_PADDING_FIXED, AGGREGATES_PAD_UPWARD_ALWAYS): Define.
4187 (MUST_PASS_IN_STACK): Define.
4188 (BLOCK_REG_PADDING): Define.
4189 * config/rs6000/rs6000.h (struct rs6000_args): Remove orig_nargs.
4190 (PAD_VARARGS_DOWN): Define in terms of FUNCTION_ARG_PADDING.
4191 * config/rs6000/rs6000.c (init_cumulative_args): Don't set orig_nargs.
4192 (function_arg_padding): !AGGREGATE_PADDING_FIXED compatibility code.
4193 Act on AGGREGATES_PAD_UPWARD_ALWAYS.
4194
4fab535e
AL
41952003-07-13 Aaron W. LaFramboise <awlaframboise@aol.com>
4196
4197 * config/i386/gthr-win32.c (__GTHREAD_HIDE_WIN32API): Define to 1.
4198
8d2e5f72
RK
41992003-07-13 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4200
4201 * expr.c (expand_expr, case COMPONENT_REF): If reg, copy OP0 to MEM
4202 both if OFFSET specified and if result BLKmode for ARRAY_RANGE_REF.
4203
7eaab492
NN
42042003-07-13 Nathanael Nerode <neroden@gcc.gnu.org>
4205
4206 PR other/11123
4207 * toplev.c: Don't cut off option names.
4208
9d4a30f2
AJ
42092003-07-13 Andreas Jaeger <aj@suse.de>
4210
4211 * c-decl.c (link_hash_hash): Avoid warning about casting pointer
4212 to integer of different size.
4213
34ed3bb0
KH
42142003-07-13 Kazu Hirata <kazu@cs.umass.edu>
4215
4216 * combine.c (simplify_comparison): Convert (ne (and (not X) 1) 0)
4217 to (eq (and X 1) 0).
4218
1a7d0840
AJ
42192003-07-13 Andreas Jaeger <aj@suse.de>
4220
4221 * config.gcc: Add pmmintrin.h for x86_64-*-*.
4222
43839642
ZW
42232003-07-13 Zack Weinberg <zack@codesourcery.com>
4224
4225 * Makefile.in (LIBCPP_DEPS): Remove coretypes.h and $(TM_H).
4226 (hashtable.o, line-map.o, mkdeps.o): Likewise, from dependency
4227 list. Move these all together down by cpplib.
4228
4229 * cpplib.h: Don't refer to MAX_WCHAR_TYPE_SIZE when determining
4230 definition of CPPCHAR_SIGNED_T.
4231
4232 * cppcharset.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c, cppinit.c
4233 * cpplex.c, cpplib.c, cppmacro.c, cpppch.c, cpptrad.c, hashtable.c
4234 * line-map.c, mkdeps.c: Don't include coretypes.h or tm.h.
4235
4236 * cpphash.c (_cpp_init_hashtable): Don't use gcc_obstack_init.
4237 * cppinit.c (cpp_create_reader): Likewise.
4238
4239 * cpphash.h (scan_out_logical_line): Rename _cpp_scan_out_logical_line.
4240 * cpptrad.c: Likewise. All callers changed.
4241 * cpplib.c: All callers changed.
4242 * c-ppoutput.c: Replace 'uchar' with 'unsigned char' throughout.
4243 * hashtable.h: Define GTY(x) to nothing here too.
4244
0acf4f88
RK
42452003-07-13 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
4246
4247 * stor-layout.c (compute_record_mode): Remove very obsolete test
4248 that forces BLKmode for records with fields crossing word boundary.
4249
46db61e7
ZW
42502003-07-13 Zack Weinberg <zack@codesourcery.com>
4251
4252 * Makefile.in: Remove orphan reference to acconfig.h.
4253
db0e878d
AJ
42542003-07-13 Andreas Jaeger <aj@suse.de>
4255
4256 * cgraphunit.c: Convert prototypes to ISO C90.
4257
4146d8d0
NN
42582003-07-13 Nathanael Nerode <neroden@gcc.gnu.org>
4259
4260 * fixinc/inclhack.def (avoid_wchar_t_type): Use __cplusplus bypass
4261 (for OpenBSD).
4262 * fixinc/fixincl.x: Rebuild.
4263
6f3ca281
ZW
42642003-07-12 Zack Weinberg <zack@codesourcery.com>
4265
4266 * configure.in: Always define HAVE_AS_GOTOFF_IN_DATA for
4267 i?86-*-*. Use correct name of cache variable.
4268 * configure: Regenerate.
4269
9a9f7594
KH
42702003-07-12 Kazu Hirata <kazu@cs.umass.edu>
4271
4272 * config/alpha/alpha.c: Fix comment typos.
4273 * config/alpha/alpha.md: Likewise.
4274 * config/arm/arm.c: Likewise.
4275 * config/arm/arm.md: Likewise.
4276 * config/arm/lib1funcs.asm: Likewise.
4277 * config/avr/avr.md: Likewise.
4278 * config/arm/README-interworking: Fix typos.
4279
4ed43216
KH
42802003-07-12 Kazu Hirata <kazu@cs.umass.edu>
4281
4282 * c-format.c: Fix comment formatting.
4283 * c-typeck.c: Likewise.
4284 * coverage.c: Likewise.
4285 * cppcharset.c: Likewise.
4286 * cpplib.c: Likewise.
4287 * dbxout.c: Likewise.
4288 * gcov-io.h: Likewise.
4289 * toplev.c: Likewise.
4290
c3a5b1e9
NN
42912003-07-12 Nathanael Nerode <neroden@gcc.gnu.org>
4292
6f3ca281 4293 * fixinc/inclhack.def (alpha_sbrk): Note that OpenBSD needs this
c3a5b1e9
NN
4294 fix.
4295
8ada417f
ZW
42962003-07-12 Zack Weinberg <zack@codesourcery.com>
4297
4298 * aclocal.m4 (gcc_AC_CHECK_TYPE): Clone of AC_CHECK_TYPE,
4299 uses three-argument AC_DEFINE so no acconfig.h entries are
4300 needed.
4301 (_gcc_COMPUTE_GAS_VERSION): Also provide gcc_cv_gas_vers
4302 which contains the GAS version number as a scaled integer.
4303 (gcc_GAS_VERSION_GTE_IFELSE): Use gcc_cv_gas_vers. Add
4304 ability to check for ELF assembler.
4305 (gcc_GAS_CHECK_FEATURE): New macro.
4306 * configure.in: Use gcc_AC_CHECK_TYPE. Rewrite all
4307 assembler feature checks using gcc_GAS_CHECK_FEATURE.
4308 Use three-argument AC_DEFINE everywhere.
4309 * acconfig.h: Deleted.
4310 * config.in, configure: Regenerate.
4311
d5d16b5f
NN
43122003-07-12 Nathanael Nerode <neroden@gcc.gnu.org>
4313
3b57c563
NN
4314 * fixinc/inclhack.def (struct_sockaddr): Avoid "fixing" sockaddr_in
4315 (on OpenBSD).
d33fb69b 4316 * fixinc/fixincl.x: Regenerate.
3b57c563 4317
d5d16b5f
NN
4318 * fixinc/inclhack.def (gnu_types): Improve comment.
4319
439f7bc3
AJ
43202003-07-12 Andreas Jaeger <aj@suse.de>
4321
4322 * fp-test.c (main): Use ISO C90 prototype.
4323
4324 * version.c: Remove unneded include of ansidecl.h.
4325
4326 * cgraph.h: Convert prototypes to ISO C90.
4327 * cgraph.c: Likewise.
4328 * fix-header.c: Likewise.
4329 * ra.h: Likewise.
4330 * protoize.c: Likewise.
4331
1a5c5701
JH
4332Sat Jul 12 06:09:38 CEST 2003 Jan Hubicka <jh@suse.cz>
4333
4334 * cgraphunit.c (cgraph_inlined_into, cgraph_inlined_calees): Fix
4335 warning.
4336
b58b1157
JH
4337Sat Jul 12 03:06:01 CEST 2003 Jan Hubicka <jh@suse.cz>
4338 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
4339
4340 * cgraph.c (cgraph_max_uid): New global variable.
4341 (cgraph_node): Set uid field.
4342 (create_edge): Keep inline flags consistent.
4343 (dump_cgraph): Dump more info.
4344 * cgraph.h (struct cgraph_local_info): Remove inline_many and
4345 can_inline_once; add inlinable, disgread_inline_limits, and self_insn
4346 (struct cgraph_global_info): Add insns, calls, cloned_times,
4347 will_be_output.
4348 (struct cgraph_node): Add uid.
4349 (struct cgraph_edge): Add inline_call.
4350 (cgraph_max_uid, cgraph_inline_p): Declare.
4351 * cgraph.c: Include params.h and fibheap.h
4352 (cgraph_mark_functions_to_inline_once): Kill.
4353 (INSNS_PER_CALL): New constant.
4354 (ncalls_inlined, nfunctions_inlined, initial_insns, overall_insns): New
4355 static variables.
4356 (cgraph_finalize_function): Do not analyze inlining.
4357 (cgraph_finalize_compilation_unit): Set inlining attributes.
4358 (cgraph_mark_functions_to_output): More consistency checks.
4359 (cgraph_optimize_function): Set current_function_decl to NULL.
4360 (cgraph_expand_function): Use new inline flags.
4361 (cgraph_postorder): Expand from cgraph_expand_functions.
4362 (INLINED_TIMES, SET_INLINED_TIMES): New macros.
4363 (cgraph_inlined_into, cgraph_inlined_callees,
4364 cgraph_estimate_size_after_inlining, cgraph_estimate_growth,
4365 cgraph_mark_inline, cgraph_check_inline_limits,
439f7bc3 4366 cgraph_default_inline_p, cgraph_decide_inling_of_small_functions,
b58b1157
JH
4367 cgraph_decide_inlining, cgraph_inline_p): New functions.
4368 * params.def (PARAM_LARGE_FUNCTION_INSNS, PARAM_LARGE_FUNCTION_GROWTH,
4369 PARAM_INLINE_UNIT_GROWTH): New parameters.
4370 * tree-inline.c (struct inline_data): New field current_decl.
4371 (expand_call_inline): Avoid forward declarations; use
4372 inlinable_function_p.
4373 (optimize_inline_calls): Set id.current_decl.
4374
27b8e366
AP
43752003-07-11 Andrew Pinski <pinskia@physics.uc.edu>
4376
4377 * configure.in: Remove wrongly added definition of
4378 local_prefix.
4379 * configure: Regenerate.
4380
80fa0b4c
DN
43812003-07-11 Dan Nicolaescu <dann@ics.uci.edu>
4382
4383 * rtl.def (NOTE): Do not use padding.
4384
1ea6f4c8
DH
43852003-07-11 Dara Hazeghi <dhazeghi@yahoo.com>
4386
4387 * doc/install.tex: Update required binutils for i?86-*-linux*
4388
ed2d8944
RH
43892003-07-11 Richard Henderson <rth@redhat.com>
4390
4391 * Makefile.in (stage1_build): Force OBJS-onestep=OBJS.
4392
a44cea75
MM
43932003-07-11 Mark Mitchell <mark@codesourcery.com>
4394
4395 * varasm.c (make_decl_rtl): Treat decls with a DECL_CONTEXT of
4396 TRANSLATION_UNIT_DECL as top_level.
4397
358b8f01
JJ
43982003-07-11 Jakub Jelinek <jakub@redhat.com>
4399
4400 * optabs.c (prepare_cmp_insn): Try cmpmemM first if it exists,
4401 then fall back to cmpstrM.
4402 * builtins.c (expand_builtin_memcmp): Likewise.
4403 * config/s390/s390-protos.h (s390_expand_cmpstr): Rename to...
4404 (s390_expand_cmpmem): ... this.
4405 * config/s390/s390.md (cmpmemdi, cmpmemsi, cmpmem_short_64,
4406 cmpmem_short_31, cmpmem_long_64, cmpmem_long_31): Renamed
4407 from cmpstr* patterns. Rename call to s390_expand_cmpstr
4408 to s390_expand_cmpmem.
4409 * config/s390/s390.c (s390_expand_cmpstr): Rename to...
4410 (s390_expand_cmpstr): ... this. Rename cmpstr* instructions
4411 to cmpmem*.
4412 * config/i370/i370.md (cmpmemsi, cmpmemsi_1): Renamed from
4413 cmpstr* patterns.
4414 * doc/md.texi (cmpstrM): Describe as String compare insn, not
4415 Block compare insn.
4416 (cmpmemM): Add.
4417
8634e925
LR
44182003-07-11 Loren James Rittle <ljrittle@acm.org>
4419
4420 * config/i386/freebsd.h (SET_ASM_OP): Remove.
4421 (SUBTARGET_OVERRIDE_OPTIONS): Handle TARGET_64BIT case.
4422 (ASM_COMMENT_START, ASM_APP_ON, ASM_APP_OFF, DBX_REGISTER_NUMBER
4423 MCOUNT_NAME, SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE_SIZE): Whitespace.
4424
48144cd4
RH
44252003-07-11 Richard Henderson <rth@redhat.com>
4426
4427 * function.c (assign_parms): Don't recombine complex args if
4428 fnargs is unchanged from orig_fnargs.
4429 (split_complex_args): Return args without complex before copying.
4430 Re-layout the modified parameters.
4431
fee226d2
R
44322003-07-11 J"orn Rennecke <joern.rennecke@superh.com>
4433
4434 * regclass.c (choose_hard_reg_mode): Add third argument.
4435 Changed all callers.
4436 * rtl.h (choose_hard_reg_mode): Update declaration.
4437 * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
4438 Take HARD_REGNO_CALL_PART_CLOBBERED into account.
4439
d1bd0ded
GK
44402003-07-11 Geoffrey Keating <geoffk@apple.com>
4441
4442 * c-decl.c (finish_decl): Handle 'used' here...
4443 * cgraphunit.c (cgraph_finalize_function): ... and here ...
4444 * c-common.c: (handle_used_attribute): ... not here.
439f7bc3 4445
d1bd0ded
GK
4446 * configure.in (onstep): Support --enable-intermodule.
4447 * Makefile.in (OBJS-common): New.
4448 (OBJS-md): New.
4449 (OBJS-archive): New.
4450 (OBJS): Build from OBJS-common, OBJS-md, OBJS-archive.
4451 (OBJS-onestep): New.
4452 (libbackend.a): Support @onestep@.
4453 (libbackend.o): New.
4454 * configure: Regenerate.
439f7bc3 4455
d1bd0ded
GK
4456 * c-common.h (c_reset_state): New prototype.
4457 (c_parse_file): New prototype.
4458 (finish_file): Move prototype from c-tree.h.
4459 * c-decl.c: Include <hashtab.h>.
4460 (builtin_decls): New.
4461 (current_file_decl): New.
4462 (duplicate_decls): Add extra parameter. Change all callers. Don't
4463 output duplicate common symbols.
4464 (link_hash_hash): New.
4465 (link_hash_eq): New.
4466 (poplevel): Handle popping of the top level.
4467 (warn_if_shadowing): Handle TRANSLATION_UNIT_DECL.
4468 (pushdecl): Set DECL_CONTEXT to TRANSLATION_UNIT_DECL if appropriate.
4469 (pushdecl_top_level): Likewise.
4470 (redeclaration_error_message): Handle TRANSLATION_UNIT_DECL.
4471 (c_init_decl_processing): Create TRANSLATION_UNIT_DECL.
4472 (finish_decl): Handle TRANSLATION_UNIT_DECL.
4473 (merge_translation_unit_decls): New.
4474 (c_write_global_declarations): New.
4475 (c_reset_state): New.
4476 (implicitly_declare): Handle TRANSLATION_UNIT_DECL.
4477 * c-lang.c (LANG_HOOKS_WRITE_GLOBALS): New.
4478 * c-objc-common.c (c_cannot_inline_tree_fn): Handle
4479 TRANSLATION_UNIT_DECL.
4480 (c_objc_common_finish_file): Call merge_translation_unit_decls.
4481 * c-opts.c (in_fnames): Rename from in_fname.
4482 (c_common_decode_option): Handle multiple input filenames.
4483 (c_common_post_options): Likewise.
4484 (c_common_parse_file): Likewise; also, call c_parse_file rather than
4485 yyparse.
4486 * c-parse.in: Move cleanup code to c_parse_file.
4487 (free_parser_stacks): Move contents to c_parse_file.
4488 (c_parse_file): New.
4489 * c-tree.h (union lang_tree_node): Chain along TYPE_NEXT_VARIANT
4490 for integer types.
4491 (C_DECL_FILE_SCOPE): New.
4492 (finish_file): Move prototype to c-common.h.
4493 (merge_translation_unit_decls): New prototype.
4494 (comptypes): Add extra parameter to prototype.
4495 (c_write_global_declarations): New prototype.
4496 * c-typeck.c (tagged_types_tu_compatible_p): New.
4497 (function_types_compatible_p): Add extra parameter, change all callers.
4498 (type_lists_compatible_p): Likewise.
4499 (comptypes): Likewise.
4500 (struct tagged_tu_seen): New.
4501 (tagged_tu_seen_base): New.
4502 (build_unary_op): Handle TRANSLATION_UNIT_DECL.
4503 (c_mark_addressable): Remove #if 0 code.
4504 * calls.c (special_function_p): Handle TRANSLATION_UNIT_DECL, add
4505 comment explaining why it shouldn't have to.
4506 * cgraph.h (struct cgraph_node): Add chain_next and chain_prev GTY
4507 options.
4508 * cppinit.c (cpp_read_next_file): New.
4509 (cpp_read_main_file): Use it.
4510 * cpplib.c (undefine_macros): New.
4511 (cpp_undef_all): New.
4512 * cpplib.h (cpp_read_next_file): Prototype.
4513 (cpp_undef_all): Prototype.
4514 * langhooks-def.h (write_global_declarations): Remove prototype.
4515 * toplev.h (write_global_declarations): Add prototype.
4516 * tree.c (decl_type_context): Use switch statement, handle
4517 TRANSLATION_UNIT_DECL.
4518 * tree.def: Update documentation for TRANSLATION_UNIT_DECL.
4519 (TRANSLATION_UNIT_DECL): New kind of tree.
4520 * tree.h: Update documentation for TRANSLATION_UNIT_DECL.
4521 * Makefile.in (c-decl.o): Add $(HASHTAB_H) to dependencies.
4522 * doc/invoke.texi: Make attempt to document new functionality.
4523
4524 2003-05-19 Per Bothner <bothner@apple.com>
4525
4526 * gcc.c (combine_inputs): New.
4527 (process_command): Set combine_inputs.
4528 (do_spec_1): Handle combine_inputs.
4529 (main): Likewise.
4530
ac8354b1
JW
45312003-07-10 James E Wilson <wilson@tuliptree.org>
4532
4533 PR optimization/9745
4534 * loop.c (loop_iv_add_mult_emit_before): Call loop_regs_update before
4535 loop_insn_emit_before.
4536 (loop_iv_add_mult_sink, loop_iv_add_mult_hoist): Likewise.
439f7bc3 4537
dea55da5
ZW
45382003-07-10 Zack Weinberg <zack@codesourcery.com>
4539
4540 * cppcharset.c: Fix comment.
4541 (iconv_close [!HAVE_ICONV]): #define to (void)0 to prevent warning.
4542 (EILSEQ): #define to EINVAL if not already defined.
4543 (convert_using_iconv): #if out when !HAVE_ICONV.
4544 (init_iconv_desc): Handle !HAVE_ICONV here...
4545 (cpp_init_iconv): ...not here.
4546
f3fdaec4
NB
45472003-07-11 Neil Booth <neil@daikokuya.co.uk>
4548
4549 * common.opt: More --help messages.
4550 * opts.c (print_help): Use puts().
4551 * toplev.c (f_options): Remove help text.
4552 (display_help): Don't dump f_options.
4553
7ebbf1ea
NN
45542003-07-11 Nathanael Nerode <neroden@gcc.gnu.org>
4555
4556 * fixinc/mkfixinc.sh: Drop reference to unsupported alpha-*-interix*.
4557 Move i?86-*-interix* to the don't-fix list.
4558 * fixinc/fixinc.interix: Delete with extreme prejudice.
4559
959a73a4
DH
45602003-07-10 Dara Hazeghi <dhazeghi@yahoo.com>
4561
4562 PR bootstrap/10758
4563 * doc/install.texi: Document requirements for ia64-*-hpux* target.
4564
9959901c
RS
45652003-07-10 Roger Sayle <roger@eyesopen.com>
4566
4567 * config/ia64/hpux.h (TARGET_C99_FUNCTIONS): Define.
4568
6b88314c
ZW
45692003-07-10 Zack Weinberg <zack@codesourcery.com>
4570
4571 * cppcharset.c (one_utf8_to_cppchar, one_cppchar_to_utf8,
4572 one_utf8_to_utf32, one_utf32_to_utf8, one_utf8_to_utf16,
4573 one_utf16_to_utf8, conversion_loop, convert_utf8_utf16,
4574 convert_utf8_utf32, convert_utf16_utf8, convert_utf32_utf8,
4575 convert_no_conversion, convert_using_iconv): New functions.
4576 (APPLY_CONVERSION): New macro.
4577 (struct conversion, conversion_tab): New data structure.
4578 (init_iconv_desc): Check conversion_tab for a custom conversion
4579 primitive before trying to use iconv.
4580 (convert_cset): Deleted.
4581 (cpp_init_iconv): Use UTF- terminology, not UCS-.
4582 (_cpp_destroy_iconv): Update to match.
4583 (_cpp_valid_ucn): We don't need iconv to implement UCNs.
4584 (convert_ucn): Use one_cppchar_to_utf8 and APPLY_CONVERSION.
4585 (convert_escape, cpp_interpret_string): Use APPLY_CONVERSION.
4586 (_cpp_interpret_string_notranslate): New function, moved here
4587 from cpplib.c.
4588
4589 * cpphash.h (convert_f, struct cset_converter): New types.
4590 (struct cpp_reader): narrow_cset_desc and wide_cset_desc
4591 are now struct cset_converter, not bare iconv_t.
4592 Update prototypes.
4593 * cpplib.c (interpret_string_notranslate): Moved to cppcharset.c;
4594 all callers changed.
4595
38f4680f 45962003-07-10 Kelley Cook <kelleycook@wideopenwest.com>
6b88314c 4597
38f4680f
KC
4598 * Makefile.in (options.h): Depend on Makefile. Add move-if-change
4599 to opts.sh command line.
4600 * opts.sh: Write to temporary files with a move-if-change at the end.
4601
2a868fac 46022003-07-10 Denis Chertykov <denisc@overta.ru>
6b88314c 4603 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
9db367b4
DC
4604
4605 * combine.c (gen_binary): Handle the CLOBBER rtx and
4606 don't build a binary operation with it.
4607
3b14e3af
ZD
46082003-07-10 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
4609
4610 * gcse.c (load_kills_store, find_loads, store_killed_in_insn,
4611 store_killed_after, store_killed_before): Keep track of the correct
4612 dependency function to use.
4613
a9189cc0
SB
46142003-07-10 Steven Bosscher <steven@gcc.gnu.org>
4615 * toplev.c (do_compile): Don't try to open dump files before
4616 lang_dependent_init initializes dump_base_name.
4617
e97a46ce
KG
46182003-07-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
4619
4620 * config/arm/arm.c (arm_init_iwmmxt_builtins, arm_expand_builtin):
4621 Use ARRAY_SIZE.
4622 * config/frv/frv.c (frv_expand_builtin): Likewise.
4623 * config/sh/sh.c (sh_media_init_builtins): Likewise.
4624
4a386498
MM
46252003-07-09 Mark Mitchell <mark@codesourcery.com>
4626
4627 PR c++/10032
4628 * doc/invoke.texi (C++ Dialect Options): Change documentation of
4629 -fpermissive.
4630
1e60c057
R
46312003-07-10 J"orn Rennecke <joern.rennecke@superh.com>
4632
4633 * tm.texi (RETURN_ADDR_OFFSET): Document.
4634
330d2e2a
NS
46352003-07-10 Nathan Sidwell <nathan@codesourcery.com>
4636
4637 * gcov-io.h: Update documentation.
4638 (GCOV_UNSIGNED2STRING): New.
4639 (GCOV_TAG_FUNCTION_LENGTH, GCOV_TAG_BLOCKS_LENGTH,
4640 GCOV_TAG_ARCS_LENGTH, GCOV_TAG_COUNTER_LENGTH,
4641 GCOV_TAG_SUMMARY_LENGTH): Adjust.
4642 (GCOV_TAG_BLOCKS_NUM, GCOV_TAG_ARCS_NUM,
4643 GCOV_TAG_COUNTER_NUM): New.
4644 (GCOV_BLOCK_SIZE): Number of words.
4645 (gcov_var): Adjust buffer type.
4646 * gcov-io.c (gcov_write_bytes, gcov_read_bytes): Rename to ...
4647 (gcov_write_words, gcov_read_words): ... here. Take a 4-byte word
4648 count, not byte count.
4649 (gcov_open): Adjust overread init.
4650 (gcov_allocate, gcov_write_unsigned, gcov_write_counter,
4651 gcov_write_string, gcov_write_tag, gcov_write_length,
4652 gcov_write_tag_length): Adjust.
4653 (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Adjust.
4654 (gcov_sync, gcov_seek): Adjust.
4655 * gcov-dump.c (print_usage): Show gcc version only.
4656 (dump_file): Use GCOV_UNSIGNED2STRING.
4657 (tag_blocks, tag_arcs, tag_counters): Use GCOV_TAG_*_NUM macros.
4658 * gcov.c (print_version): Show gcc version only.
4659 (read_graph_file): Use GCOV_UNSIGNED2STRING. Use
4660 GCOV_TAG_*_NUM macros.
4661 (read_count_file): Use GCOV_UNSIGNED2STRING. Use
4662 GCOV_TAG_COUNTER_LENGTH.
4663 * coverage.c (read_counts_file): Use GCOV_UNSIGNED2STRING.
4664 Use GCOV_TAG_COUNTER_NUM.
4665 * libgcov.c (gcov_version): Use GCOV_UNSIGNED2STRING.
4666 (__gcov_merge_single, __gcov_merge_delta): Use GCOV_CHECK.
4667
3dbb446e
AS
46682003-07-10 Andreas Schwab <schwab@suse.de>
4669
4670 * gcov-dump.c (dump_file): Fix missing address operator.
4671
11791dbc
KH
46722003-07-10 Kazu Hirata <kazu@cs.umass.edu>
4673
4674 PR c/11449
4675 * fold-const.c (sign_bit_p): Return EXP if VAL is the sign bit
4676 of HOST_WIDE_INT.
4677 (fold_single_bit_test): If sign_bit_p() fails, assume that the
4678 bit being tested is not a sign bit.
4679
ae12c666
KH
46802003-07-10 Kazu Hirata <kazu@cs.umass.edu>
4681
4682 * config/h8300/h8300.md (a peephole2): New.
4683
2beef00e
AO
46842003-07-10 Alexandre Oliva <aoliva@redhat.com>
4685
4686 2001-12-13 Alexandre Oliva <aoliva@redhat.com>
4687 * config/mn10300/linux.h (LINK_SPEC): Rename the dynamic linker
4688 from ld-linux.so.2 to ld.so.1.
4689 2001-11-18 Alexandre Oliva <aoliva@redhat.com>
4690 * config/mn10300/linux.h (LINK_SPEC): -lpthread, not -lthread.
4691 * config/mn10300/linux.h (LINK_SPEC): Don't handle -Wl,-rpath
4692 nor -Wl,-rpath-link.
4693 (LIB_SPEC): Add -rpath-link if !static.
4694 2001-08-22 Alexandre Oliva <aoliva@redhat.com>
4695 * config/mn10300/mn10300.c (mn10300_protect_label): New
4696 variable.
4697 * config/mn10300/linux.h (PRINT_OPERAND,
4698 PRINT_OPERAND_ADDRESS): Set it during their execution.
4699 (ASM_OUTPUT_LABELREF): Output `+' before symbol name if
4700 mn10300_protect_label is set.
4701 * config/mn10300/linux.h (LINK_SPEC): Recognize -Wl,-rpath and
4702 -Wl,-rpath-link.
4703 (LIB_SPEC, STARTFILE_SPEC): Define.
4704 2001-05-11 Alexandre Oliva <aoliva@redhat.com>
4705 * config/mn10300/t-linux (dp-bit.c, fp-bit.c): Don't define
4706 FLOAT_BIT_ORDER_MISMATCH.
4707 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
4708 * config.gcc (am33_2.0-*-linux*): Added.
4709 * config/mn10300/linux.h: New.
4710 * config/mn10300/t-linux: New.
4711
75040a04
AJ
47122003-07-10 Andreas Jaeger <aj@suse.de>
4713
4714 * fold-const.c: Properly wrap prototypes.
4715
d1776069
AO
47162003-07-09 Alexandre Oliva <aoliva@redhat.com>
4717
4718 2003-06-16 Alexandre Oliva <aoliva@redhat.com>
4719 * config/mn10300/mn10300.c (mn10300_unspec_int_label_counter):
4720 Moved from...
4721 * config/mn10300/mn10300.md (GOTaddr2picreg): ... here.
4722 * config/mn10300/mn10300.h: GTY-declare it.
4723 2003-06-11 Alexandre Oliva <aoliva@redhat.com>
4724 * config/mn10300/mn10300.c (mn10300_encode_section_info): Fix
4725 prototype. Use incoming RTL argument.
4726 2002-12-12 Alexandre Oliva <aoliva@redhat.com>
4727 * config/mn10300/mn10300.md (int_label): Move C statements...
4728 (GOTaddr2picreg): ... here.
4729 2002-08-15 Alexandre Oliva <aoliva@redhat.com>
4730 * config/mn10300/mn10300.h (ENCODE_SECTION_INFO): Move...
4731 * config/mn10300/mn10300.c (mn10300_encode_section_info):
4732 ... here. New function.
4733 (TARGET_ENCODE_SECTION_INFO): Define to it.
4734 2001-11-04 Alexandre Oliva <aoliva@redhat.com>
4735 * config/mn10300/mn10300.md (builtin_setjmp_receiver): Fix typo in
4736 pattern name.
4737 (mn10300_loadPC): Define as insn splittable after reload.
4738 2001-05-13 Alexandre Oliva <aoliva@redhat.com>
4739 * config/sh/mn10300.h (JUMP_TABLES_IN_TEXT_SECTION): Let them
4740 be defined in .rodata even in PIC, now that the assembler
4741 supports that.
4742 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
4743 * config/mn10300/mn10300.h (GOT_SYMBOL_NAME): Don't let the
4744 symbol take an underscore prefix.
4745 2001-04-14 Alexandre Oliva <aoliva@redhat.com>
4746 * config/mn10300/mn10300-protos.h (legitimate_pic_operand_p,
4747 legitimize_pic_address): Declare.
4748 * config/mn10300/mn10300.h (CONDITIONAL_REGISTER_USAGE): Mark
4749 the PIC register as fixed.
4750 (EXTRA_CONSTRAINT): Match UNSPEC_PLT and UNSPEC_PIC for 'S'.
4751 (GO_IF_LEGITIMATE_ADDRESS): Require legitimate_pic_operand for
4752 PIC.
4753 (LEGITIMATE_PIC_OPERAND_P): Define.
4754 (PIC_OFFSET_TABLE_REGNUM): Define.
4755 (GOT_SYMBOL_NAME): Define.
4756 (SYMBOLIC_CONST_P): Define.
4757 (ENCODE_SECTION_INFO): Use SYMBOL_REF_FLAG to mark local
4758 symbols.
4759 (MN10300_GLOBAL_P): Test it.
4760 (OUTPUT_ADDR_CONST_EXTRA): Handle PIC-related unspecs.
4761 (JUMP_TABLES_IN_TEXT_SECTION): Enable for PIC.
4762 * config/mn10300/mn10300.c (print_operand): Handle unspec.
4763 (expand_prologue): Set PIC register.
4764 (call_address_operand): Don't match SYMBOL_REFs in PIC.
4765 (legitimize_address): Call legitimize_pic_address.
4766 (legitimize_pic_address): New fn.
4767 (legitimate_pic_operand_p): New fn.
4768 * config/mn10300/mn10300.md (PIC_REG, SP_REG): New constants.
4769 (UNSPEC_INT_LABEL, UNSPEC_PIC, UNSPEC_GOT, UNSPEC_GOTOFF,
4770 UNSPEC_PLT): New constants.
4771 (pop_pic_reg): New insn.
4772 (movsi): Adjust non-PIC addresses.
4773 (builtin_setjmp_receiver): Restore the PIC register.
4774 (casesi): New insn.
4775 (call): Adjust non-PIC addresses.
4776 (int_label, GOTaddr2picreg): New expands.
4777 (am33_loadPC): New insn.
4778 (mn10300_loadPC): New expand.
4779 (call_next_insn): New insn.
4780 (add_GOT_to_pic_reg): New expand.
4781 (symGOT2reg, symGOT2reg_i): New expands.
4782 (symGOTOFF2reg, symGOTOFF2reg_i): New expands.
4783 (sym2PIC, sym2PLT): New expands.
4784
18e9d2f9
AO
47852003-07-09 Alexandre Oliva <aoliva@redhat.com>
4786
4787 * config/mn10300/mn10300.h (PREDICATE_CODES): Define.
4788 2001-05-01 Alexandre Oliva <aoliva@redhat.com>
4789 * config/mn10300/mn10300.md (sqrtsf2): flag_fast_math was renamed
4790 to flag_unsafe_math_optimizations.
4791 2001-04-14 Alexandre Oliva <aoliva@redhat.com>
4792 * config/mn10300/mn10300.c (expand_prologue): Mark
4793 FP-register-saving insns as frame-related.
4794 2001-02-13 Alexandre Oliva <aoliva@redhat.com>
4795 * config/mn10300/mn10300.c
4796 (mn10300_get_live_callee_saved_regs): Don't search past
4797 LAST_EXTENDED_REGNUM.
4798 (mn10300_gen_multiple_store, store_multiple_operation): Likewise.
4799 * config/mn10300/mn10300.md: Remove excessive line breaks from
4800 `@' output patterns that were accounted as additional
4801 alternatives.
4802 * config/mn10300/mn10300.md, config/mn10300/mn10300.c:
4803 Re-introduce changes accidentally removed in Richard Sandiford's
4804 2000-12-05's patch.
4805 * config/mn10300/t-mn10300 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
4806 Re-instate am33-2 lost in merge from net GCC.
4807 2000-08-26 Alexandre Oliva <aoliva@redhat.com>
4808 * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Added
4809 floating-point registers.
4810 2000-08-07 Alexandre Oliva <aoliva@redhat.com>
4811 * config/mn10300/mn10300.md (movdf): Revert some am33-specific
4812 pessimizations that had gone in on 2000-05-08.
4813 2000-06-28 Graham Stott <grahams@cygnus.co.uk>
4814 * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Fix typo.
4815 2000-06-22 Graham Stott <grahams@cygnus.co.uk>
4816 * config/mn10300/mn10300.md (movqi): Use nonimmediate_operand for
4817 operand 0.
4818 * (movhi): Likewise.
4819 * (movsi): Likewise.
4820 * (movsf): Likewise.
4821 * (movdi): Likewise.
4822 * (movdf): Likewise.
4823 Wed May 24 13:16:09 2000 Alexandre Oliva <aoliva@cygnus.com>
4824 * config/mn10300/mn10300.c (fp_regs_to_save): New function.
4825 (can_use_return_insn, initial_offset): Add fp_regs_to_save.
4826 (expand_prologue, expand_epilogue): Save and restore FP regs.
4827 2000-05-20 Alexandre Oliva <aoliva@cygnus.com>
4828 * config/mn10300/mn10300.md (movdi, movdf): 64-bit clean-up.
4829 2000-05-13 Alexandre Oliva <aoliva@cygnus.com>
4830 * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2, addsf3,
4831 subsf3, mulsf3, divsf3, fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4):
4832 Do not clobber cc0.
4833 2000-05-12 Alexandre Oliva <aoliva@cygnus.com>
4834 * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2):
4835 Discourage the two-argument, longer opcodes.
4836 (addsf3, subsf3, mulsf3, divsf3): Likewise for three-argument
4837 ones.
4838 * config/mn10300/mn10300.h (struct mn10300_cc_status_mdep): New.
4839 (CC_STATUS_MDEP, CC_STATUS_MDEP_INIT): Define.
4840 * config/mn10300/mn10300.md (cmpsf): New pattern.
4841 (branch): Test mdep.fpCC and output fbCC.
4842 * config/mn10300/mn10300.c (print_operand): Output conditions.
4843 (notice_cc_update): Recognize fcmp and set mdep.fpCC.
4844 2000-05-10 Alexandre Oliva <aoliva@cygnus.com>
4845 * config/mn10300/mn10300.md (movsf, movdf, addsf3, subsf3,
4846 mulsf3, divsf3): Use the `F' constraint for FP values.
4847 * config/mn10300/mn10300.c (const_1f_operand): New function.
4848 * config/mn10300/mn10300-protos.h (const_1f_operand): Declare.
4849 * config/mn10300/mn10300.md (sqrtsf2): New expand.
4850 (rsqrtsf2): New insn.
4851 2000-05-09 Alexandre Oliva <aoliva@cygnus.com>
4852 * config/mn10300/mn10300.md (movdf): Oops, I missed it in my
4853 previous check-in.
4854 2000-05-08 Alexandre Oliva <aoliva@cygnus.com>
4855 * config/mn10300/mn10300.md (abssf2, negdf2): On
4856 TARGET_AM33_2, expand to...
4857 (abssf2_am33_2, negdf2_am33_2): New insns.
4858 (addsf3, subsf3, mulsf3, divsf3): Likewise.
4859 (fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4): Likewise.
4860 * config/mn10300/mn10300.md (movqi, movhi, movsi, movsf,
4861 movdi, movdf): Added FP regs.
4862 * invoke.texi (-mam33-2, -mno-am33-2): Document.
4863 2000-04-29 Alexandre Oliva <aoliva@cygnus.com>
4864 * config/mn10300/mn10300.h (FIRST_FP_REGNUM, LAST_FP_REGNUM):
4865 New macros.
4866 (REGNO_AM33_2_FP_P): Renamed to...
4867 (REGNO_FP_P): Redefine in terms of FIRST_* and LAST_*.
4868 (CONDITIONAL_REGISTER_USAGE, REGNO_REG_CLASS): Likewise.
4869 2000-04-27 Alexandre Oliva <aoliva@cygnus.com>
4870 * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Remove FP
4871 regs from GENERAL_REGS.
4872 2000-04-27 Alexandre Oliva <aoliva@cygnus.com>
4873 * config/mn10300/mn10300.h (REGNO_AM33_2_FP_P): New macro.
4874 * config/mn10300/mn10300.c (mn10300_address_cost): Added FP_REGS.
4875 * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Added FP_REGS.
4876 2000-04-23 Alexandre Oliva <aoliva@cygnus.com>
4877 * config/mn10300/mn10300.h (CLASS_CANNOT_CHANGE_SIZE): Defined
4878 as FP_REGS.
4879 2000-04-21 Alexandre Oliva <aoliva@cygnus.com>
4880 * config/mn10300/mn10300.h (OK_FOR_Q): New macro.
4881 (EXTRA_CONSTRAINT): Added OK_FOR_Q.
4882 * config/mn10300/mn10300.c (secondary_reload_class): Adjust.
4883 * config/mn10300/mn10300.c (print_operand): Support `D' for doubles.
4884 * config/mn10300/mn10300.h (FIRST_PSEUDO_REGISTER): Adjust.
4885 (FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER): Added
4886 AM33/2.0 floating-point registers.
4887 (CONDITIONAL_REGISTER_USAGE): Adjust.
4888 (enum reg_class, REG_CLASS_NAMES): Added FP_REGS and FP_ACC_REGS.
4889 (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Adjust.
4890 (REG_CLASS_FROM_LETTER): Added `f' and `A'.
4891 (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Adjust.
4892 * config/mn10300/t-mn10300 (MULTILIB_OPTIONS): Added am33-2.
4893 (MULTILIB_DIRNAMES): Likewise.
4894 * config/mn10300/mn10300.h (CPP_SPEC): Define `__AM33__=2' and
4895 `__AM33_2__' when `-mam33-2' is given.
4896 (TARGET_AM33_2): Define.
4897 (TARGET_SWITCHES): Adjust.
4898 * config/mn10300/mn10300.c (asm_file_start): Print `.am33_2'
4899 when appropriate.
4900
2ff16718
MK
49012003-07-09 Matt Kraai <kraai@alumni.cmu.edu>
4902
4903 * doc/install.texi: Add missing @.
4904
a7bda3d5
BW
49052003-07-09 Bob Wilson <bob.wilson@acm.org>
4906
4907 * config/xtensa/xtensa.h (CRT_CALL_STATIC_FUNCTION): Define.
4908
bb498ea3
AH
49092003-07-09 Aldy Hernandez <aldyh@redhat.com>
4910
4911 PR/11144
4912 * config/i386/i386.c (ix86_function_arg_boundary): Remove abort.
4913
a401fd60
NN
49142003-07-09 Nathanael Nerode <neroden@gcc.gnu.org>
4915
21f3dbfc 4916 PR bootstrap/11043
6b88314c 4917 * config/arc/t-arc: Replace bogus references to "x-crtinit.o",
21f3dbfc
NN
4918 "x-crtfini.o" with "crtinit.o", "crtfini.o".
4919
15e4ea18
NN
4920 * fixinc/inclhack.def (limits_ifndefs): Add select test.
4921 * fixinc/fixincl.x: Rebuild.
4922
a401fd60
NN
4923 * fixinc/inclhack.def (math_exception): Improve bypass and comment.
4924 * fixinc/fixincl.x: Rebuild.
4925
c2f82a84
HPN
49262003-07-09 Hans-Peter Nilsson <hp@bitrange.com>
4927
4928 * doc/install.texi (Configuration): Document the valgrind option
4929 to --enable-checking.
4930
1f66e2a0
JH
4931Wed Jul 9 16:16:30 CEST 2003 Jan Hubicka <jh@suse.cz>
4932
4933 * objc-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
4934
d0974745
RO
49352003-07-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
4936
4937 * c-lex.c (cb_ident): Cast cstr.text to const char *.
4938
160e2e4f
NS
49392003-07-09 Nathan Sidwell <nathan@codesourcery.com>
4940
4941 * gcov-io.h: Update documentation.
4942 (GCOV_GRAPH_SUFFIX, GCOV_GRAPH_MAGIC): Rename to GCOV_NOTE_SUFFIX,
4943 GCOV_NOTE_MAGIC.
4944 (GCOV_DATA_SUFFIX, GCOV_NOTE_SUFFIX): Update.
4945 (GCOV_DATA_MAGIC, GCOV_NOTE_MAGIC): Make non-palindromic.
4946 (struct gcov_var): Change buffer's type. Add endian flag.
4947 (gcov_open): Remove mode in libgcov.
4948 (gcov_magic): Prototype.
4949 * gcov-io.c (from_file): New.
4950 (gcov_open): Clear endian flag.
4951 (gcov_magic): New.
4952 (gcov_write_bytes, gcov_read_bytes): Return gcov_unsigned_t
4953 pointers.
4954 (gcov_write_unsigned, gcov_write_counter, gcov_write_string,
4955 gcov_write_tag, gcov_write_length, gcov_write_tag_length): Update.
4956 (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Update.
4957 * gcov-iov.c (main): Correct cast.
4958 * coverage.c (read_counts_file): Use gcov_magic. Remove endianness
4959 conversion.
4960 (gcov_begin_output): Use GCOV_NOTE_MAGIC.
4961 (coverage_init): Use GCOV_NOTE_SUFFIX.
4962 * libgcov.c (gcov_version_mismatch): Remove endianness conversion.
4963 Rename to gcov_version, and return flag.
4964 (gcov_exit): Use gcov_version.
4965 (__gcov_init): Use gcov_version.
4966 * Makefile.in (coverageexts): Update.
4967 * gcov.c (print_version): Remove endianness conversion.
4968 (create_file_names): Use GCOV_NOTE_SUFFIX.
4969 (read_graph_file): Use gcov_magic.
4970 (read_count_file): Likewise.
4971 * gcov-dump.c (dump_file): Remove endianness conversion, use
4972 gcov_magic.
4973
83599948
NS
49742003-07-09 Nathan Sidwell <nathan@codesourcery.com>
4975
4976 * configure.in (BUILD_PREFIX, BUILD_PREFIX_1): Set if enable
4977 coverage is on.
4978 * configure: Regenerated.
4979 * Makefile.in (ALL_CFLAGS): Correct its comment.
4980
d17811fd
MM
49812003-07-08 Mark Mitchell <mark@codesourcery.com>
4982
4983 * fold-const.c (make_range): Do not access operand 1 for a
4984 zero-operand operator.
4985
28786366
NB
49862003-07-09 Neil Booth <neil@daikokuya.co.uk>
4987
4988 * toplev.c (warn_dummy, W_options): Die.
4989 (display_help): Don't print W_options.
4990 * common.opt: Add W_options help from toplev.c.
4991
fbdb0453
AJ
49922003-07-09 Andreas Jaeger <aj@suse.de>
4993
4994 * opts.c (wrap_help): Only pass int arguments as arguments to
4995 printf's '*' modifier. Change argument of function.
4996
c80e4c17
MK
49972003-07-08 Matt Kraai <kraai@alumni.cmu.edu>
4998
4999 * doc/invoke.texi: Fix misspelling of "@item".
5000
2c5a64c6
KH
50012003-07-08 Kazu Hirata <kazu@cs.umass.edu>
5002
5003 * config/i386/i386.md: Remove an old comment about
5004 NOTICE_UPDATE_CC.
5005
a194aa56
JH
5006Wed Jul 9 03:00:10 CEST 2003 Jan Hubicka <jh@suse.cz>
5007
5008 * cgraph.c (cgraph_node_name): New function.
5009 (dump_cgraph): Use it.
5010 * cgraph.h (cgraph_dump_file): Declare.
5011 (cgraph_node_name): Declare.
5012 * cgraphunit.c: Include timevar.h
5013 (cgraph_finalize_compilation_unit): Use timevar; reorganize dumps.
5014 (cgraph_optimize_function): Use TV_INTEGRATION.
5015 (cgraph_mark_local_functions): reorganize dumps.
5016 (cgraph_mark_functions_to_inline_once): Likewise.
5017 (cgraph_optimize): Likewise; use timevar.
5018 * timevar.def (TV_CGRAPH, TV_CGRAPHOPT): New.
5019 * toplev.c (dump_file_index): Add DFI_cgraph.
5020 (dump_file_info): Likewise.
5021 (cgraph_dump_file): New global variable.
5022 (do_compile): Open and close cgraph dump.
5023 * invoke.texi (-d): Document new flag; renumber.
5024
8af61113
RS
50252003-07-08 Roger Sayle <roger@eyesopen.com>
5026
5027 PR c/11370
5028 * calls.c (emit_call_1): Don't bother popping the arguments off of
5029 the stack after a noreturn function call; The adjustment is dead.
5030 (expand_call): Likewise.
5031
436bcda1
GK
50322003-07-08 Geoffrey Keating <geoffk@apple.com>
5033
5034 * expr.c (MOVE_MAX_PIECES): Move from here...
5035 * defaults.h (MOVE_MAX_PIECES): ... to here.
5036
6f3fcc0b
MK
50372003-07-08 Matt Kraai <kraai@alumni.cmu.edu>
5038
5039 * Makefile.in (stage1-start): Handle an empty SUBDIRS.
5040
ec049fdb
KG
50412003-07-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5042
5043 * genattr.c (internal_dfa_insn_code): Don't prototype.
5044 * genattrtab.c (attr_desc): Add `static_p' field.
5045 (expand_units): Make blockage range and ready cost functions
5046 static.
5047 (write_attr_get): Don't add extern prototypes in C file. Mark
5048 static functions as appropriate.
5049 (find_attr, make_internal_attr): Initialize static_p.
5050 * genattrtab.h (ATTR_STATIC): New macro.
5051 * genautomata.c (output_internal_reset_func): Mark output function
5052 as inline.
5053 (make_internal_dfa_insn_code_attr): Mark output function as static.
5054
11597bc9
KG
50552003-07-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5056
5057 * genattrtab.h: Add new macros for attr `special' flags.
5058 * genattrtab.c (attr_desc): Reorder/resize fields better.
5059 Use attr `special' macros in all calls to make_internal_attr.
5060 * genautomata.c: Likewise.
5061
084c1779
JH
5062Wed Jul 9 02:25:39 CEST 2003 Jan Hubicka <jh@suse.cz>
5063
5064 * c-common.c (c_estimate_num_insns_1): New static function.
5065 (c_estimate_num_insns): New global function.
5066 * c-common.h (DECL_NUM_STMTS): Rename to...
5067 (DECL_ESTIMATED_INSNS): ... this.
5068 (c_estimate_num_insns): Declare.
5069 * c-decl.c (duplicate_decls): Use DECL_ESTIMATED_INSNS.
5070 * c-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
5071 * c-semantics.c (add_stmt): Do not account statements.
5072 * langhooks-def.h (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS):
5073 New.
5074 * langhooks.h (lang_hooks_for_tree_inlining): Add
5075 estimate_num_insns
5076 * params.def (max-inline-insns-auto, max-inline-insns-auto): set
5077 to 100.
5078 (max-inline-insns): set to 300.
5079 (min-inline-insns): set to 10.
5080 * tree-inline.c (struct inline_data): Rename inlined_stmts to
5081 inlined-insns.
5082 (INSNS_PER_STMT): Kill.
5083 (inlinable_function_p): Compute and store body size.
5084 (expand_call_inline): Likewise.
5085 (optimize_inline_calls): Likewise.
5086
1b1838b6
JW
50872003-07-08 James E Wilson <wilson@tuliptree.org>
5088
5089 PR target/10021
5090 * emit-rtl.c (set_mem_attribute_minus_bitpos): When handle ARRAY_REF,
5091 loop over new variable t2 instead of t.
5092
81a6341d
DS
50932003-07-08 Danny Smith <dannysmith@users.sourceforge.net>
5094
5095 PR bootstrap/11455
5096 * config/i386/winnt.c: Replace use of error(), warning() with
5097 error_with_decl(), warning_with_decl(), throughout.
5098
21789816
NB
50992003-07-08 Neil Booth <neil@daikokuya.co.uk>
5100
5101 * opts.c (wrap_help): Use unsigned int, not size_t.
5102
f6423302
SC
51032003-07-08 Stephane Carrez <stcarrez@nerim.fr>
5104
5105 * config/m68hc11/m68hc11.h (HAVE_AS_DWARF2_DEBUG_LINE): Don't define
5106 as .file/.loc directives are incompatible with linker relaxation.
5107
ab747408
ZW
51082003-07-08 Zack Weinberg <zack@codesourcery.com>
5109
5110 * Makefile.in (fixinc.sh): Remove gnu-regex.[ch] from dependencies.
5111 * fixinc/Makefile.in: Remove all references to gnu-regex.[och].
5112 * fixinc/fixfixes.c, fixinc/fixincl.c, fixinc/fixlib.c
5113 * fixinc/fixtests.c: Use xregexec not regexec, xregcomp not regcomp.
5114 * fixinc/fixlib.h: Include xregex.h not gnu-regex.h.
5115 * fixinc/inclhack.def (hpux10_cpp_pow_inline, hpux11_cpp_pow_inline):
5116 Escape { and } characters which are not part of range expressions.
5117 * fixinc/fixincl.x: Regenerate.
a27531fb 5118 * fixinc/gnu-regex.c, fixinc/gnu-regex.h: Delete file.
ab747408 5119
51657442
SB
51202003-07-08 Steven Bosscher <steven@gcc.gnu.org>
5121
5122 PR c/1687
5123 * tree-inline.c (find_alloca_call): Use
5124 walk_tree_without_duplicates, instead of walk_tree.
5125 (find_builtin_longjmp_call): Likewise.
5126 * c-objc-common.c (c_cannot_inline_fn): Likewise.
5127 * c-semantics.c (find_reachable_label): Likewise.
5128
7e6dc358
JJ
51292003-07-08 Jakub Jelinek <jakub@redhat.com>
5130
5131 PR c/11420
5132 * config/i386/i386.c (ix86_check_movabs): New function.
5133 * config/i386/i386-protos.h (ix86_check_movabs): New prototype.
5134 * config/i386/i386.md (movabs[shqd]i_1_rex64): Kill broken alternative.
5135 (movabs[shqd]i_[12]_rex64): Add ix86_check_movabs check to conditions.
5136
318b7749
CD
51372003-07-08 Chris Demetriou <cgd@broadcom.com>
5138
5139 * Makefile.in (install-po): Cope with empty CATALOGS.
5140
b8898790
RS
51412003-07-08 Richard Sandiford <rsandifo@redhat.com>
5142
5143 * config/mips/elf64.h (TARGET_ASM_UNIQUE_SECTION): Delete.
5144 (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
5145 (SECTION_FUNCTION_TEMPLATE): Delete.
5146 * config/mips/elf.h: As for elf64.h.
5147 (ASM_OUTPUT_ALIGNED_BSS): Use named_section rather than sbss_section.
5148 * config/mips/linux.h: As for elf.h
5149 * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
5150 * config/mips/iris6.h (EXTRA_SECTIONS): Delete.
5151 (EXTRA_SECTION_FUNCTIONS): Remove sdata_section. Remove the handling
5152 of in_sdata from current_section_name and current_section_flags.
5153 * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
5154 * config/mips/mips.h (sdata_section, sbss_section): Remove prototypes.
5155 (MASK_GP_OPT, TARGET_GP_OPT): Delete.
5156 (MASK_NO_FUSED_MADD): Use MASK_GP_OPT's old value.
5157 (TARGET_SWITCHES): Neuter gpOPT, gpopt, no-gpOPT and no-gpopt.
5158 (SMALL_DATA_SECTION, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Remove.
5159 * config/mips/mips.c (TARGET_IN_SMALL_DATA_P): Override.
5160 (TARGET_SECTION_TYPE_FLAGS): Override if TARGET_IRIX6.
5161 (mips_classify_symbol): Use SYMBOL_REF_SMALL_P.
5162 (override_options): Remove setting of MASK_GPOPT.
5163 (mips_output_external): Use mips_in_small_data_p to check whether a
5164 symbol needs an .extern directive. Don't emit such directives for
5165 TARGET_EXPLICIT_RELOCS.
5166 (mips_declare_object): Update accordingly.
5167 (mips_select_rtx_section): Call named_section rather than
5168 SMALL_DATA_SECTION.
5169 (mips_select_section): Use default_elf_section_section for everything
5170 except .text string constants.
5171 (mips_in_small_data_p): New function.
5172 (mips_encode_section_info): Remove small data handling.
5173 (mips_unique_section): Delete.
5174 (iris6_section_type_flags): New function.
5175 * doc/tm.texi: Remove documentation of -mgpopt and -mhalf-pic.
5176
f5d1c3de
JDA
51772003-07-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
5178
5179 PR Target/11453
5180 * pa.md: Disparage all mtsar constraints.
5181 (extzv, extv, insv): Don't fail on length of {32|64}.
5182
ce1bb65b
ZW
51832003-07-08 Zack Weinberg <zack@codesourcery.com>
5184
5185 * system.h: Poison MAP_CHARACTER.
5186 * config/i370/i370-protos.h (mvs_map_char): Delete.
5187 * config/i370/i370.c (ascebc, ebcasc, mvs_map_char): Delete.
5188 * config/i370/i370.h (MAP_CHARACTER): Delete definition.
5189 (ASM_OUTPUT_ASCII): Don't use MAP_CHARACTER.
5190
c163ddca
DS
51912003-07-08 Danny Smith <dannysmith@users.sourceforge.net>
5192
5193 * toplev.c (randomize): Correct call to time().
5194
8df63efa
JJ
51952003-07-08 Jakub Jelinek <jakub@redhat.com>
5196
5197 * unroll.c (reg_dead_after_loop): Check for reg in REG_EQUAL and
5198 REG_EQUIV notes as well.
5199
4b5cc2b3
KH
52002003-07-08 Kazu Hirata <kazu@cs.umass.edu>
5201
5202 * doc/md.texi: Fix the description of addmodecc.
5203
56694dd9
ZW
52042003-07-07 Zack Weinberg <zack@codesourcery.com>
5205
5206 * Makefile.in (top_builddir): Set to "..", not ".".
5207 (INTLLIBS, INTLDEPS): Delete.
5208 (LIBINTL, LIBINTL_DEP, LIBICONV_DEP): New variables to be substituted.
5209 (LIBDEPS): Add $(LIBICONV_DEP).
5210 (LIBS): Take out $(INTLLIBS), add $(LIBINTL) and $(LIBICONV).
5211 (INCLUDES): Replace -I../intl with @INCINTL@.
5212 ($(top_builddir)/intl/libintl.a): Delete rule.
5213 (stage2-start, stage3-start, stage4-start, stageprofile-start,
5214 stagefeedback-start): Use $$ for variable to be evaluated by
5215 shell, not make.
5216 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT,
5217 HAVE_LC_MESSAGES, HAVE_STPCPY): Delete.
5218 * aclocal.m4: sinclude ../config/progtest.m4. Add
5219 contents of lcmessage.m4 from gettext distro.
5220 * configure.in: Check for wchar.h and setlocale. Set
5221 LIBICONV_DEP to the empty string and substitute it.
5222 Call AM_LC_MESSAGES. Delete AC_ARG_ENABLE for --enable-nls;
5223 this is handled elsewhere. Use ZW_GNU_GETTEXT_SISTER_DIR,
5224 not CY_GNU_GETTEXT. Clear $LIBICONV if its text is included
5225 in $LIBINTL, to avoid linking it twice.
5226 * configure, config.in: Regenerate.
5227
a294c4cf
NN
52282003-07-08 Nathanael Nerode <neroden@gcc.gnu.org>
5229
5230 * fixinc/mkfixinc.sh: Remove winnt support.
5231 * fixinc/fixinc.winnt: Delete with extreme prejudice.
5232
979312a4
NB
52332003-07-08 Neil Booth <neil@daikokuya.co.uk>
5234
5235 * Makefile.in: Update.
5236 * c-opts.c (c_common_handle_option): opt_text now contains the '-'.
5237 * c.opt: Update documentation.
5238 * common.opt: Add some help text.
5239 * opts.c: Include intl.h.
5240 (wrap_help, print_help): New.
5241 (find_opt, handle_option, common_handle_option): opt_text now
5242 contains the '-'. Use print_help to output help.
5243 * opts.h (struct cl_option): New member "help".
5244 * opts.sh: Update to handle help text output and to prepend
5245 options with '-'.
5246 * toplev.c (display_help): Remove some help text.
5247
2c4a9cff
DE
52482003-07-07 David Edelsohn <edelsohn@gnu.org>
5249 Fariborz Jahanian <fjahanian@apple.com>
5250
5251 * configure.in: Test for PowerPC mfcr field support in assembler.
5252 * config.in, configure: Regenderated.
5253
5254 * config/rs6000/power4.md: Add mfcrf reservation.
5255 * config/rs6000/rs6000-protos.h (mfcr_operation): Declare.
5256 * config/rs6000/rs6000.c (mfcr_operation): Define.
5257 (print_operand): Add 'Q' case for mfcrf.
5258 * config/rs6000/rs6000.h (TARGET_MFCRF): New.
5259 * config/rs6000/rs6000.md (attribute "type"): Add mfcrf.
5260 (movcc_internal1): Emit optional field operand for mfcr and set
5261 "type" attribute appropriately.
5262 (mfcr SCC): Likewise.
5263 (movesi_from_cr_one): New.
5264
923c4cf2
RS
52652003-07-07 Roger Sayle <roger@eyesopen.com>
5266
5267 * config/i386/i386.md: Correct check-in of incorrect version.
5268
75b6f3fd
KG
52692003-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5270
5271 * bitmap.c (debug_bitmap_file): Merge uses of HOST_PTR_PRINTF with
5272 adjacent stdio calls.
5273 * c-decl.c (c_print_identifier): Likewise.
5274 * mips-tfile.c (write_varray, write_object, allocate_cluster): Likewise.
5275 * print-rtl.c (print_rtx): Likewise.
5276 * print-tree.c (print_node_brief, print_node): Likewise.
5277 * system.h (HOST_PTR_PRINTF): Ensure we have a literal string.
56694dd9 5278
75b6f3fd
KG
5279 * configure.in (AC_COMPILE_CHECK_SIZEOF): Check for `void *'.
5280 * config.in, configure: Regenerated.
5281
afeeac3f
RS
52822003-07-07 Roger Sayle <roger@eyesopen.com>
5283
5284 PR target/10979
5285 * config/i386/i386.md (atan2df3, atan2sf3, atan2xf3, atan2tf3):
5286 Changed to define_expand patterns that copy operand[1] to prevent
5287 it from being clobbered before emitting an atan2?f3_1 insn.
5288 (atan2df3_1, atan2sf3_1, atan2xf_1, atan2tf3_1): New define_insn
5289 patterns that actually specify the behaviour of x87's FPATAN.
5290
eeff9307
JJ
52912003-07-07 Jakub Jelinek <jakub@redhat.com>
5292
5293 * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Remove bogus
5294 clearing of SYMBOL_FLAG_LOCAL bit.
5295 If vcall_offset fits into signed 16-bit immediate, use
5296 one instruction for both addition and load.
5297
0fcd5dda
NB
52982003-07-07 Neil Booth <neil@daikokuya.co.uk>
5299
5300 * opts.c (common_handle_option): Correct handling of the
5301 -falign- switches that do and don't take an argument.
5302
b275810a
KH
53032003-07-07 Kazu Hirata <kazu@cs.umass.edu>
5304
5305 * config/h8300/h8300.md (pushqi1_h8300hs): Revert my patch
5306 today.
5307 (pushhi1_h8300hs): Likewise.
5308
5671bf27
AJ
53092003-07-07 Andreas Jaeger <aj@suse.de>
5310
5311 * genextract.c: Convert remaining prototypes to ISO C90.
5312
5313 * cpplex.c (_cpp_free_buff): Convert prototype to ISO C90.
5314 * fold-const.c (fold_single_bit_test): Likewise.
5315 * diagnostic.c (default_diagnostic_finalizer): Likewise.
5316 * cfgrtl.c (rtl_redirect_edge_and_branch): Likewise.
5317
5318 * gengtype.c (write_array): Generate ISO C90 prototypes.
5319
5320 * genflags.c (gen_proto): Generate ISO C90 prototypes.
5321
2c430630
RS
53222003-07-07 Roger Sayle <roger@eyesopen.com>
5323
5324 PR optimization/11059
5325 * expr.c (can_store_by_pieces): Return true if length is zero.
5326 (store_by_pieces): If length is zero and endp is two, abort,
5327 othwerise, if length is zero and endp is not two, return "to".
5328 (clear_by_pieces): Do nothing if length is zero.
5329 (clear_storage): Do nothing if length is zero.
5330 (store_constructor): Simplify code when size is zero, or the
5331 target has already been cleared. This avoids emitting a
5332 blockage instruction when initializing empty structures.
5333
cf633f5b
AJ
53342003-07-07 Andreas Jaeger <aj@suse.de>
5335
5336 * mips-tfile.c: Convert prototypes to ISO C90.
5337 * mips-tdump.c: Convert prototypes to ISO C90.
5338
0cea056b
NS
53392003-07-07 Nathan Sidwell <nathan@codesourcery.com>
5340
5341 * rtl.h (emit_line_note): Take a location_t.
5342 (emit_line_note_force): Remove.
5343 (set_file_and_line_for_statement): Take a location_t.
5344 * tree.g (emit_line_note): Take a location_t.
5345 * emit-rtl.c (emit_line_note): Take a location_t.
5346 (emit_line_note_force): Remove.
5347 * function.c (init_function_start): Adjust emit_line_note call.
5348 (expand_function_end): Use force_next_line_note, not
5349 emit_line_note_force.
5350 * c-parse.in (maybe_type_qual): Adjust emit_line_note calls.
5351 * c-semantics.c (genrtl_do_pushlevel, genrtl_goto_stmt,
5352 genrtl_expr_stmt_value, genrtl_decl_stmt, genrtl_if_stmt,
5353 genrtl_while_stmt, genrtl_do_stmt_1, genrtl_return_stmt,
5354 genrtl_for_stmt, genrtl_break_stmt, genrtl_continue_stmt,
5355 genrtl_continue_stmt, genrtl_switch_stmt,
5356 genrtl_asm_stmt): Likewise.
5357 * expr.c (expand_expr): Likewise.
5358 * integrate.c (expand_inline_function): Likewise.
5359 * stmt.c (set_file_and_line_for_stmt): Take a location_t.
5360 (expand_decl_init): Adjust emit_line_note call.
5361
8eb910fc
DJ
53622003-07-07 Dale Johannesen <dalej@apple.com>
5363
56694dd9 5364 * config/rs6000/darwin-tramp.asm: Fix trampolines. PR 10900.
8eb910fc 5365
b96a374d
AJ
53662003-07-07 Andreas Jaeger <aj@suse.de>
5367
5368 * config/i386/i386-protos.h: Convert prototypes to ISO C90.
5369 * config/i386/i386.c: Likewise.
5370
273fc01e
KH
53712003-07-07 Kazu Hirata <kazu@cs.umass.edu>
5372
5373 * config/h8300/h8300.md: Use gen_int_mode instead of
5374 GEN_INT (trunc_int_for_mode (...)).
5375
fb7d7712
KH
53762003-07-07 Kazu Hirata <kazu@cs.umass.edu>
5377
5378 * config/h8300/h8300.md (pushqi1_h8300hs): Optimize by pushing
5379 2 bytes and then subtract 2 from the stack pointer.
5380 (pushhi1_h8300hs): Likewise.
5381
e61a2eb7
NS
53822003-07-07 Nathan Sidwell <nathan@codesourcery.com>
5383
5384 * configure.in (enable_coverage): Remove -DSELF_COVERAGE, add
5385 -frandom-seed.
5386 * configure: Regenerated.
5387 * Makefile.in: Remove extraneous comment.
5388 * toplev.c (randomize): Protect against potential multiple calls.
5389 * doc/invoke.texi (-frandom-seed): Document use for in coverage
5390 files.
5391
82d610ec 53922003-07-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
56694dd9 5393 Eric Botcazou <ebotcazou@libertysurf.fr>
82d610ec
RK
5394
5395 PR optimization/11198
5396 * alias.c (objects_must_conflict_p): Return 1 if the types have
5397 the same alias set, not if the alias sets only conflict.
5398
5beadb33
AP
53992003-07-07 Andrew Pinski <pinskia@physics.uc.edu>
5400
5401 * cppcharset.c (ICONV_CONST): Define iff !HAVE_ICONV.
5402 (convert_cset): Change inbuf to type ICONV_CONST char.
5403 * Makefile.in (LIBS): Add LIBICONV.
5404
9bb34f3c
AJ
5405 * doc/invoke.texi (-falign-functions): Document that
5406 when n is zero then a machine-dependent default is used.
5407 (-falign-labels): Document that when n is zero then a
5408 machine-dependent default is used and that -falign-labels =1
5409 is equivalent to -fno-align-labels.
5410 (-falign-loops): Likewise.
5411 (-falign-jumps): Likewise.
5412
1dbb6ce8
AH
54132003-07-06 Art Haas <ahaas@airmail.net>
5414
5415 * f/global.c (ffeglobal_type_string_): Fix obsolete GCC array
5416 initializer syntax.
5417
8338d44d
JW
54182003-07-06 James E Wilson <wilson@tuliptree.org>
5419
5420 PR optimization/9812
5421 * rtl.h (mem_for_const_double): Delete prototype.
5422 * varasm.c (mem_for_const_double): Delete function.
5423 * config/m68k/hp320.h, config/m68k/linux.h, config/m68k/m68kelf.h,
5424 config/m68k/m68kv4.h, config/m68k/netbsd-elf.h
5425 (LEGITIMATE_PIC_OPERAND_P): Delete duplicate definitions.
5426 * config/m68k/m68k.h (LEGITIMATE_CONSTANT_P): Disallow XFmode.
5427 (LEGITIMATE_PIC_OPERAND_P): Delete CONST_DOUBLE tests.
5428 * config/m68k/m68k.md (movxf): Add reload_in_progress guard. Add
5429 comment about confused support for XFmode constants.
5430
9efd34a5
JH
5431Mon Jul 7 02:03:56 CEST 2003 Jan Hubicka <jh@suse.cz>
5432
5433 * cfglayout.c (fixup_reorder_chain): Call delete_dead_jumptables.
5434
2a43945f
KH
54352003-07-06 Kazu Hirata <kazu@cs.umass.edu>
5436
5437 * config/h8300/h8300.c: Fix comment typos.
5438 * config/h8300/h8300.md: Likewise.
5439 * config/i386/athlon.md: Likewise.
5440 * config/i386/i386.c: Likewise.
5441 * config/i386/pentium.md: Likewise.
5442 * config/ia64/ia64.c: Likewise.
5443 * config/ia64/itanium1.md: Likewise.
5444 * config/ia64/itanium2.md: Likewise.
5445 * config/m32r/m32r.md: Likewise.
5446 * config/m68hc11/m68hc11.c: Likewise.
5447 * config/mcore/mcore.c: Likewise.
5448 * config/mips/sr71k.md: Likewise.
5449 * config/mips/t-iris5-as: Likewise.
5450 * config/mmix/mmix.h: Likewise.
5451 * config/ns32k/ns32k.h: Likewise.
5452 * config/ns32k/NOTES: Fix a typo.
5453
ceee09f7
AJ
54542003-07-06 Andreas Jaeger <aj@suse.de>
5455
7e51717c
AJ
5456 * stmt.c: Convert remaining prototypes to ISO C90.
5457 * cfglayout.c: Likewise.
5458 * dbxout.c: Likewise.
5459 * gcc.c: Likewise.
5460 * genemit.c: Likewise.
5461
ceee09f7
AJ
5462 * basic-block.h: Convert prototypes to ISO C90.
5463 * c-parse.in: Likewise.
5464 * c-pragma.h: Likewise.
5465 * c-typeck.c: Likewise.
5466 * cfghooks.h: Likewise.
5467 * cfgloopanal.c: Likewise.
5468 * dbxout.h: Likewise.
5469 * debug.h: Likewise.
5470 * dwarf2asm.h: Likewise.
5471 * gcov.c: Likewise.
5472 * gengtype-lex.l: Likewise.
5473 * sched-int.h: Likewise.
5474 * timevar.c: Likewise.
5475
cb66e385
NB
54762003-07-06 Neil Booth <neil@daikokuya.co.uk>
5477
5478 * c-common.h (c_comon_handle_filename,
5479 c_common_missing_arguement): New.
5480 * c-lang.c (LANG_HOOKS_HANDLE_FILENAME,
5481 LANG_HOOKS_MISSING_ARGUMENT): New.
5482 * c-opts.c (missing_arg): Rename c_common_missing_argument,
5483 update to be an appropriate langhook.
5484 (c_common_handle_option): Don't handle filenames.
5485 (c_common_handle_filename): New.
5486 * hooks.c (hook_void_constcharptr,
5487 hook_bool_constcharptr_size_t_false): New.
5488 * hooks.h (hook_void_constcharptr,
5489 hook_bool_constcharptr_size_t_false): New.
5490 * langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME,
5491 LANG_HOOKS_MISSING_ARGUMENT): New.
5492 (LANG_HOOKS_INITIALIZER): Update.
5493 * langhooks.h (struct lang_hooks): Add handle_filename and
5494 missing_argument.
5495 * opts.c (handle_option): Don't handle filenames here, but ...
5496 (handle_options): ... here.
5497 (common_handle_option): Don't handle missing arguments here.
5498 * objc/objc-lang.c (LANG_HOOKS_HANDLE_FILENAME,
5499 LANG_HOOKS_MISSING_ARGUMENT): New.
5500
ade4289c
NB
55012003-07-06 Neil Booth <neil@daikokuya.co.uk>
5502
5503 * Makfile.in: Remove traces of mbchar.
5504 * c-parse.in (MULTIBYTE_CHARS): Remove.
5505 * config.in (MULTIBYTE_CHARS): Remove.
5506 * configure: Remove --enable-mbchar.
5507 * configure.in: Remove --enable-mbchar.
5508 * mbchar.c, mbchar.h: Remove.
5509 * system.h: Poison MULTIBYTE_CHARS.
5510 * config/linux-aout.h (MULTIBYTE_CHARS): Remove.
5511 * config/linux.h (MULTIBYTE_CHARS): Remove.
5512 * config/svr4.h (MULTIBYTE_CHARS): Remove.
5513 * config/sparc/linux.h (MULTIBYTE_CHARS): Remove.
5514
2e1eedd6
AJ
55152003-07-06 Andreas Jaeger <aj@suse.de>
5516
11dc5cc6
AJ
5517 * varray.c (varray_check_failed): Fix typo.
5518
5519 * unroll.c: Convert prototypes to ISO C90.
2e1eedd6
AJ
5520 * varasm.c: Likewise.
5521 * varray.c: Likewise.
5522 * varray.h: Likewise.
5523 * vmsdbgout.c: Likewise.
5524 * xcoffout.c: Likewise.
5525 * xcoffout.h: Likewise.
5526
dd486eb2
NS
55272003-07-06 Nathan Sidwell <nathan@codesourcery.com>
5528
5529 * gcov-io.h: Add a local time stamp.
5530 (struct gcov_info): Add stamp field.
5531 (gcov_truncate): New.
5532 * coverage.c (read_counts_file): Skip the stamp.
5533 (coverage_begin_output): Write the stamp.
5534 (build_gcov_info): Declare and init the stamp.
5535 (coverage_finish): Only unlink data file, if stamp is zero.
5536 * gcov-dump.c (dump_file): Dump the stamp.
5537 * gcov.c (bbg_stamp): New.
5538 (release_structures): Clear bbg_stamp.
5539 (read_graph_file): Read stamp.
5540 (read_count_file): Check stamp.
5541 * libgcov.c (gcov_exit): Check stamp and truncate if needed.
5542
c07e5477
NS
55432003-07-06 Nathan Sidwell <nathan@codesourcery.com>
5544
5545 * tree.h (default_flag_random_seed): Remove.
5546 * toplev.h (local_tick): Declare.
5547 * tree.c (flag_random_seed, default_flag_random_seed): Move to
5548 toplev.c.
5549 (append_random_chars): Don't call default_flag_random_seed.
5550 * toplev.c (flag_random_seed): Define here. Set local_tick.
5551 (local_tick): Define.
5552 (randomize): New, moved from tree.c.
5553 (print_switch_values): Adjust.
5554 (toplev_main): Call randomize.
5555
2aab7ceb
NS
55562003-07-06 Nathan Sidwell <nathan@codesourcery.com>
5557
5558 * tree.h (crc32_string): Declare.
5559 * tree.c (append_random_chars): Remove.
5560 (crc32_string): New.
5561 (get_file_function_name_long): Use crc32_string here.
5562
1d088dee
AJ
55632003-07-06 Andreas Jaeger <aj@suse.de>
5564
5565 * gcc.c: Convert prototypes to ISO C90.
5566 * gcc.h: Likewise.
5567 * gcov-dump.c: Likewise.
5568 * gcov-iov.c: Likewise.
5569 * gcse.c: Likewise.
5570 * genattrtab.h: Likewise.
5571 * ggc.h: Likewise.
5572 * global.c: Likewise.
5573 * graph.c: Likewise.
5574 * graph.h: Likewise.
5575 * hosthooks.h: Likewise.
5576 * hooks.h: Likewise.
5577 * hooks.c: Likewise.
5578 * hashtable.h: Likewise.
5579 * hashtable.c: Likewise.
5580 * haifa-sched.c: Likewise.
5581 * integrate.h: Likewise.
5582 * integrate.c: Likewise.
5583 * input.h: Likewise.
5584 * ifcvt.c: Likewise.
f8ec47c7 5585 * jump.c: Likewise.
0c20a65f
AJ
5586 * langhooks-def.h: Likewise. Add extern to prototypes.
5587 * langhooks.c: Likewise.
5588 * langhooks.h: Likewise.
5589 * lcm.c: Likewise.
5590 * local-alloc.c: Likewise.
5591 * loop-init.c: Likewise.
5592 * loop-unroll.c: Likewise.
5593 * loop-unswitch.c: Likewise.
5594 * loop.c: Likewise.
5595 * loop.h: Likewise. Add extern to prototypes.
5596 * machmode.h: Likewise.
5597 * main.c: Likewise.
5598 * mbchar.c: Likewise.
5599 * mbchar.h: Likewise.
5600 * mkdeps.c: Likewise.
5601 * mkdeps.h: Likewise.
5602 * optabs.c: Likewise.
5603 * optabs.h: Likewise.
5604 * output.h: Likewise.
5605 * gccspec.c: Likwise.
5606 * postreload.c: Likewise.
5607 * prefix.c: Likewise.
5608 * prefix.h: Likewise.
5609 * print-rtl.c: Likewise.
5610 * print-tree.c: Likewise.
5611 * profile.c: Likewise.
5612 * read-rtl.c: Likewise.
5613 * real.c: Likewise.
5614 * real.h: Likewise.
5615 * recog.c: Likewise.
5616 * recog.h: Likewise.
5617 * reg-stack.c: Likewise.
5618 * regclass.c: Likewise.
5619 * regmove.c: Likewise.
5620 * regrename.c: Likewise.
5621 * regs.h: Likewise.
5622 * reload.c: Likewise.
5623 * reload.h: Likewise.
5624 * reload1.c: Likewise.
5625 * reorg.c: Likewise.
5626 * resource.c: Likewise.
5627 * resource.h: Likewise.
5628 * rtl-error.c: Likewise.
5629 * rtl.c: Likewise.
5630 * rtl.h: Likewise.
5631 * rtlanal.c: Likewise.
46c5ad27
AJ
5632 * sbitmap.c: Likewise.
5633 * sbitmap.h: Likewise.
5634 * scan-decls.c: Likewise.
5635 * scan.c: Likewise.
5636 * sched-deps.c: Likewise.
5637 * sched-ebb.c: Likewise.
5638 * sched-int.h: Likewise.
5639 * sched-rgn.c: Likewise.
5640 * sched-vis.c: Likewise.
5641 * sibcall.c: Likewise.
5642 * simplify-rtx.c: Likewise.
5643 * sreal.c: Likewise.
5644 * sreal.h: Likewise.
5645 * ssa-ccp.c: Likewise.
5646 * ssa-dce.c: Likewise.
5647 * ssa.c: Likewise.
5648 * ssa.h: Likewise.
5649 * stack.h: Likewise.
5650 * stmt.c: Likewise.
5651 * stor-layout.c: Likewise.
5652 * stringpool.c: Likewise.
5653 * target.h: Likewise.
5654 * timevar.c: Likewise.
5655 * timevar.h: Likewise.
5656 * tlink.c: Likewise.
5657 * tracer.c: Likewise.
5658 * tree-inline.c: Likewise.
5659 * tree-inline.h: Likewise.
5660 * tree.c: Likewise.
5661 * tree.h: Likewise.
1d088dee 5662
4f649bc1
KH
56632003-07-05 Kazu Hirata <kazu@cs.umass.edu>
5664
5665 * combine.c (nonzero_bits1): Fix a warning.
5666
56672003-07-05 Kazu Hirata <kazu@cs.umass.edu>
2c4a71b3
KH
5668
5669 * config/h8300/h8300.c (compute_mov_length): Correct the
5670 length of loading CONST0_RTX (SFmode).
5671
f5924ac1
NS
56722003-07-05 Nathan Sidwell <nathan@codesourcery.com>
5673
5674 * toplev.c (output_clean_symbol_name): Remove.
5675 * toplev.h (output_clean_symbol_name): Remove.
5676 * config/alpha/alpha.c (unicosmk_output_module_name): Use
5677 lbasename & clean_symbol_name.
5678
39e3f58c
KH
56792003-07-05 Kazu Hirata <kazu@cs.umass.edu>
5680
5681 * ggc.h: Follow spelling conventions.
5682 * config/i386/i386.c: Likewise.
5683 * config/i386/winnt.c: Likewise.
5684 * config/rs6000/rs6000.c: Likewise.
5685
4d6922ee
KH
56862003-07-05 Kazu Hirata <kazu@cs.umass.edu>
5687
5688 * bt-load.c: Fix comment typos.
5689 * c-incpath.c: Likewise.
5690 * cfg.c: Likewise.
5691 * cfgcleanup.c: Likewise.
5692 * cfgloop.h: Likewise.
5693 * cfgloopmanip.c: Likewise.
5694 * cfgrtl.c: Likewise.
5695 * diagnostic.h: Likewise.
5696 * dwarfout.c: Likewise.
5697 * emit-rtl.c: Likewise.
5698 * et-forest.c: Likewise.
5699 * et-forest.h: Likewise.
5700 * expr.c: Likewise.
5701 * gcse.c: Likewise.
5702 * genattr.c: Likewise.
5703 * jump.c: Likewise.
5704 * langhooks.h: Likewise.
5705 * local-alloc.c: Likewise.
5706 * loop-unroll.c: Likewise.
5707 * loop-unswitch.c: Likewise.
5708 * ra-build.c: Likewise.
5709 * regclass.c: Likewise.
5710 * regmove.c: Likewise.
5711 * rtl.def: Likewise.
5712 * rtlanal.c: Likewise.
5713 * sched-ebb.c: Likewise.
5714 * sched-rgn.c: Likewise.
5715 * simplify-rtx.c: Likewise.
5716 * ssa.c: Likewise.
5717 * tracer.c: Likewise.
5718 * tree.c: Likewise.
5719
f1c4bc4f
ZW
57202003-07-05 Zack Weinberg <zack@codesourcery.com>
5721
5722 * cppcharset.c: Use the correct return type for the fallback iconv
5723 macro.
5724
65c6f1b4
ZD
5725Sat Jul 5 16:18:53 CEST 2003 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
5726
5727 Blame to Jan Hubicka <jh@suse.cz>
5728 * cfglayout.c (record_effective_endpoints): Split insns before
5729 first basic block correctly.
5730
a8f3bf52
RK
57312003-07-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
5732
f1c4bc4f 5733 * expr.c (expand_expr, case COMPONENT_REF): When seeing if should use
a8f3bf52
RK
5734 bitfield operations, use STRICT_ALIGNMENT, not SLOW_UNALIGNED_ACCESS
5735 if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
5736
0641776c
AJ
57372003-07-05 Andreas Jaeger <aj@suse.de>
5738
5739 * genattrtab.c (write_attr_get): Revert part of last patch to
5740 always write out a prototype.
5741
5742 * genemit.c (gen_split): Readd lost unused attributes in last
5743 patch.
5744
977129f6
ZD
57452003-07-05 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
5746
5747 * cfgloopmanip.c (force_single_succ_latches): Force latch to be
5748 different from header.
5749
5ee084df
AS
57502003-07-05 Andreas Schwab <schwab@suse.de>
5751
5752 * config/m68k/m68k.c: Remove code protected by CRDS.
5753 * config/m68k/m68k.md: Likewise.
5754
33de9573
NB
57552003-07-05 Neil Booth <neil@daikokuya.co.uk>
5756
5757 PR driver/11417
5758 * c-opts.c (permit_fortran_options): New.
5759 (c_common_init_options): Accept fortran front end options if
5760 it looks like we might be preprocessing Fortran.
5761 (c_common_handle_option): Don't reject switch if permit_fotran_options.
5762
6906ba40
KG
57632003-07-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5764
5765 * genattr.c (internal_dfa_insn_code): Output prototype.
5766 * genattrtab.c: Don't output unnecessary decls, output in ISO C.
5767 * genautomata.c: Likewise.
5768 * genconditions.c: Likewise.
5769 * genemit.c: Likewise.
5770 * genextract.c: Likewise.
5771 * gengenrtl.c: Likewise.
5772 * gengtype.c: Likewise.
5773 * genopinit.c: Likewise.
5774 * genoutput.c: Likewise.
5775 * genpeep.c: Likewise.
5776 * genrecog.c: Likewise.
5777
e6cc3a24
ZW
57782003-07-04 Zack Weinberg <zack@codesourcery.com>
5779
5780 * cpplib.h (CPP_AT_NAME, CPP_OBJC_STRING): New token types.
5781 (struct cpp_options): Add narrow_charset, wide_charset,
5782 bytes_big_endian fields. Remove EBCDIC field.
5783 (cpp_init_iconv, cpp_interpret_string): New external interfaces.
5784
5785 * cpphash.h: Include <iconv.h> if we have it, otherwise
5786 provide a dummy definition of iconv_t.
5787 (struct cpp_reader): Add narrow_cset_desc and wide_cset_desc fields.
5788 (_cpp_valid_ucn): Update prototype.
5789 (_cpp_destroy_iconv): New prototype.
5790
5791 * doc/cpp.texi: Document character set handling.
5792 * doc/cppopts.texi: Document -fexec-charset= and -fexec-wide-charset=.
5793 * doc/extend.texi: Delete entire section on multiline strings.
5794 Rewrite section on __FUNCTION__ etc now that these are
5795 variables in C.
5796
5797 * cppucnid.tab, cppucnid.pl: New files.
5798 * cppucnid.h: New generated file.
5799 * cppcharset.c: Include cppucnid.h. Lots of commentary added.
5800 (iconv_open, iconv, iconv_close): Provide dummy definitions
5801 if !HAVE_ICONV.
5802 (SOURCE_CHARSET, struct strbuf, init_iconv_desc, cpp_init_iconv,
5803 _cpp_destroy_iconv, convert_cset, width_to_mask, convert_ucn,
5804 emit_numeric_escape, convert_hex, convert_oct, convert_escape,
5805 cpp_interpret_string, narrow_str_to_charconst,
5806 wide_str_to_charconst): New.
5807 (ucn_valid_in_identifier): Use a binary search through the
5808 ucnranges table defined in cppucnid.h, not a long chain of if
5809 statements.
5810 (_cpp_valid_ucn): Add a limit pointer. Downgrade "universal
5811 character names are only valid in C++ and C99" to a warning.
5812 Issue the "meaning of \[uU] is different in traditional C"
5813 warning here. Take care not to let iconv see an invalid UCS
5814 value if we get a malformed UCN. Issue an error if we don't
5815 have iconv.
5816 (cpp_interpret_charconst): Moved here from cpplex.c. Use
5817 cpp_interpret_string to do the heavy lifting.
5818
5819 * cppinit.c (cpp_create_reader): Initialize bytes_big_endian,
5820 narrow_charset, wide_charset fields of options structure.
5821 (cpp_destroy): Call _cpp_destroy_iconv.
5822 * cpplex.c (forms_identifier_p): Adjust call to _cpp_valid_ucn.
5823 (maybe_read_ucn, hex_digit_value, cpp_parse_escape): Delete.
5824 (cpp_interpret_charconst): Moved to cppcharset.c.
5825 * cpplib.c (dequote_string): Delete.
5826 (interpret_string_notranslate): New.
5827 (do_line, do_linemarker): Use interpret_string_notranslate.
5828
5829 * Makefile.in (cppcharset.o): Depend on cppucnid.h.
5830
5831 * c-common.c (fname_string, combine_strings): Delete.
5832 * c-common.h (fname_string, combine_strings): Delete prototypes.
5833 * c-lex.c (ignore_escape_flag): Delete.
5834 (cb_ident): Use cpp_interpret_string, not lex_string.
5835 (get_nonpadding_token): New function.
5836 (c_lex): Handle Objective-C @-prefixed identifiers and strings here.
5837 Adjust calls to lex_string. Don't write *value twice.
5838 (lex_string): Now handles string constant concatenation.
5839 Most of the work handed off to cpp_interpret_string.
5840 Call fix_string_type here.
5841 * c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): Replace with
5842 FUNC_NAME, throughout.
5843 (OBJC_STRING): New token type.
5844 (primary:STRING): No need to call fix_string_type here.
5845 (primary:objc_string): Make that OBJC_STRING.
5846 (objc_string nonterminal): Delete.
5847 (yylexname): Delete code to handle fake string constants.
5848 (yylexstring): Delete entirely.
5849 (_yylex): Handle CPP_AT_NAME and CPP_OBJC_STRING. No need
5850 to handle CPP_ATSIGN.
5851
5852 * c.opt (-fexec-charset=, -fwide-exec-charset=): New options.
5853 * c-opts.c (missing_arg, c_common_handle_option): Handle
5854 OPT_fexec_charset_ and OPT_fwide_exec_charset_.
5855 (c_common_init): Set cpp_opts->bytes_big_endian, not
5856 cpp_opts->EBCDIC. Call cpp_init_iconv.
5857 (print_help): Document -fexec-charset= and -fexec-wide-charset=.
5858 (TARGET_EBCDIC): Delete default definition.
5859
5860 * objc/objc-act.c (build_objc_string_object): No need to
5861 handle string constant concatenation.
5862
61aeb06f
KH
58632003-07-04 Kazu Hirata <kazu@cs.umass.edu>
5864
5865 * doc/install.texi: Fix typos.
5866 * doc/invoke.texi: Likewise.
5867 * doc/tm.texi: Likewise.
5868
c1207243
KH
58692003-07-04 Kazu Hirata <kazu@cs.umass.edu>
5870
5871 * config/pa/fptr.c: Fix comment typos.
5872 * config/pa/pa-64.h: Likewise.
5873 * config/pa/pa.c: Likewise.
5874 * config/pa/pa.h: Likewise.
5875 * config/rs6000/603.md: Likewise.
5876 * config/rs6000/7xx.md: Likewise.
5877 * config/rs6000/darwin.h: Likewise.
5878 * config/rs6000/freebsd.h: Likewise.
5879 * config/rs6000/rs6000.c: Likewise.
5880 * config/rs6000/rs6000.md: Likewise.
5881 * config/rs6000/spe.h: Likewise.
5882
58add37a
UW
58832003-07-04 Ulrich Weigand <uweigand@de.ibm.com>
5884
5885 * config/s390/2064.md: Change GNU CC to GCC.
5886 * config/s390/2084.md: Likewise.
5887 * config/s390/fixdfdi.h: Likewise.
5888 * config/s390/linux.h: Likewise.
5889 * config/s390/s390-modes.def: Likewise.
5890 * config/s390/s390-protos.h: Likewise.
5891 * config/s390/s390.c: Likewise.
5892 * config/s390/s390.h: Likewise.
5893 * config/s390/s390.md: Likewise.
5894 * config/s390/s390x.h: Likewise.
5895
60cd4dae
JL
58962003-07-04 Jeff Law <law@redhat.com>
5897
a38825d2 5898 PR c/11428
60cd4dae
JL
5899 * expr.c (do_store_flag): Pass in the correct result type
5900 when calling fold_single_bit_test.
5901 * fold-const.c (fold_single_bit_test): Use result_type for the
5902 result when folding a sign bit test.
5903
5e14ae7e
NB
59042003-07-04 Neil Booth <neil@daikokuya.co.uk>
5905
5906 * opts.c (common_handle_options): Negate sense of -falign- switches.
5907
8c90b13a
L
59082003-07-04 H.J. Lu <hongjiu.lu@intel.com>
5909
c3b3975a 5910 * Makefile.in: Replace PWD with PWD_COMMAND.
8c90b13a 5911
72d4a2ad
ZD
59122003-07-04 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
5913
5914 * cfgloopanal.c (count_strange_loop_iterations): New static function.
5915 (constant_iterations, count_loop_iterations, simple_loop_exit_p):
5916 Handle strange loops.
5917
8e9a4a45
TM
59182003-07-04 Toon Moene <toon@moene.indiv.nluug.nl>
5919
5920 * install.texi: Even the g77 manpage is derived from
5921 the full g77 manual.
5922
6eb95e99
ZW
59232003-07-04 Zack Weinberg <zack@codesourcery.com>
5924
5925 * ABOUT-NLS: Delete.
5926 * intl: Delete entire directory.
5927 * aclocal.m4: Include ../config/gettext.m4. Delete
5928 AC_ISC_POSIX, AM_LANGINFO_CODESET, jm_GLIBC21, AM_LC_MESSAGES,
5929 AM_PATH_PROG_WITH_TEST, AM_WITH_NLS, and AM_GNU_GETTEXT.
5930 * configure.in: Use CY_GNU_GETTEXT, not AM_GNU_GETTEXT.
5931 Remove intl/Makefile from all_outputs.
5932 * configure, config.in: Regenerate.
5933 * Makefile.in: Expunge all references to intl subdirectory.
5934 Add -I../intl to INCLUDES.
5935 * intl.h: Include libintl.h if and only if ENABLE_NLS is defined.
5936
bcd5d841
RS
59372003-07-04 Roger Sayle <roger@eyesopen.com>
5938
5939 * config/rs6000/aix51.h (TARGET_C99_FUNCTIONS): Define.
5940 * config/rs6000/aix52.h (TARGET_C99_FUNCTIONS): Likewise.
5941
6b6cb52e
DS
59422003-07-04 Danny Smith <dannysmith@users.sourceforge.net>
5943
5944 PR c++/5287, PR c++/7910, PR c++/11021
5945 * config/i386/winnt.c (ix86_handle_dll_attribute): Don't add
5946 dllimport attribute if function is defined at declaration, but
5947 report error instead. Likewise for dllimport'd variable
5948 definitions. Set implicit TREE_PUBLIC for dllimport'd variables
5949 declared within functions, Report error if dllimport or dllexport
5950 symbol is not global.
5951 (i386_pe_dllimport_p): Ignore dllimport attribute of functions
5952 if defined after declaration or if inlined. Don't allow definition
5953 of static data members of C++ classes. Don't dllimport virtual
5954 methods.
5955 (i386_pe_mark_dllexport): Warn about inconsistent dll attributes.
5956 (i386_pe_mark_dllimport): Remove unnecessary checks.
5957 (i386_pe_encode_section_info): Warn if the dllimport attribute
5958 and symbol prefix have been instantiated and then overridden.
5959
5960 * doc/extend.texi: Document dllimport and dllexport attributes.
5961
5962 * config/i386/winnt.c (i386_pe_output_labelref): Fix indents.
5963
cc2f5d34
US
59642003-07-03 Uwe Stieber <uwe@kaos-group.de>
5965
5966 * config/kaos.h (CPP_PREDEFINES): Delete.
5967 (TARGET_OS_CPP_BUILTINS): New.
5968
5f1989e6
KG
59692003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
5970
5971 * c-aux-info.c: Include toplev.h after c-tree.h.
5972 * c-common.c: Likewise.
5973 (GCC_DIAG_STYLE): Undef.
5974 * c-semantics.c (GCC_DIAG_STYLE): Define.
5975 * c-tree.h (GCC_DIAG_STYLE): Likewise.
5976 * diagnostic.h (inform): Move prototype to toplev.h.
5977 * jump.c: Include diagnostic.h before toplev.h.
5978 * toplev.h (GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG): Define.
5979 (warning, error, fatal_error, pedwarn, sorry, inform,
5980 error_for_asm, warning_for_asm): Mark with ATTRIBUTE_GCC_CXXDIAG.
5981
8d28e87d
ZD
59822003-07-03 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
5983
5984 * cfglayout.c (cfg_layout_duplicate_bb): Do not update frequencies
5985 at all if edge is not specified.
5986 (can_copy_bbs_p, copy_bbs): New.
5987 * cfglayout.h (can_copy_bbs_p, copy_bbs): Declare.
5988 * cfgloop.c (get_loop_body): Comment more precisely.
5989 * cfgloopmanip.c (copy_bbs, record_exit_edges): Removed.
5990 (scale_bbs_frequencies): Fix comment typo.
5991 (can_duplicate_loop_p): Use can_copy_bbs_p.
5992 (duplicate_loop_to_header_edge): Simplify by using copy_bbs.
5993
694abeb6
DP
59942003-07-03 Devang Patel <dpatel@apple.com>
5995
5996 * c-opts.c (c_common_parse_file): Remove extra
5997 debug_hooks->start_source_file call.
6eb95e99 5998
0a9530a9
RS
59992003-07-03 Roger Sayle <roger@eyesopen.com>
6000
6001 * real.c (real_trunc, real_floor, real_ceil): New functions
6002 to implement trunc, floor and ceil respectively.
6003 * real.h (real_trunc, real_floor, real_ceil): Prototype here.
6004 * builtins.c (integer_valued_real_p): New function to test if
6005 a floating point expression has an integer valued result.
6006 (fold_trunc_transparent_mathfn): Optimize foo(foo(x)) as
6007 foo(x) where foo is an integer rounding function. Similarly,
6008 optimize foo(bar(x)) as bar(x), and foo((double)(int)x) as
6009 (double)(int)x when both foo and bar are integer rounding
6010 functions and we don't need to honor errno.
6011 (fold_builtin_trunc, fold_builtin_floor, fold_builtin_ceil):
6012 New functions to fold trunc, floor and ceil.
6013 (fold_builtin): Use fold_builtin_trunc to fold BUILT_IN_TRUNC*,
6014 fold_builtin_floor to fold BUILT_IN_FLOOR* and fold_builtin_ceil
6015 to fold BUILT_IN_CEIL*.
6016 * fold-const.c (tree_expr_nonnegative_p): Handle FLOAT_EXPR and
6017 the remaining integer rounding functions.
6018
c3427c7d
EB
60192003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr>
6020
6021 * config/sparc/sparc.c (function_arg_partial_nregs): Use
6022 SPARC_INT_ARG_MAX to determine where to split unnamed
6023 complex FP arguments.
6024
bc35512f
JH
6025Thu Jul 3 20:36:47 CEST 2003 Jan Hubicka <jh@suse.cz>
6026
6027 * basic-block.h (create_basic_block, merge_blocks_nomove): Kill.
6028 * cfgcleanup.c (merge_blocks): Rename to merge_blocks_move.
6029 (merge_blocks_move_predecessor_nojumps,
6030 merge_blocks_move_successor_nojumps): Use merge_blocks.
6031 (try_optimize_cfg): Use merge_blocks_move.
6032 * cfgrtl.c (create_basic_block): Rename to rtl_create_basic_block.
6033 (merge_blocks_nomove): Rename to rtl_merge_blocks.
6034 (cfg_layout_create_basic_block): New.
6035 (rtl_can_merge_blocks): New.
6036 (cfg_layout_split_block): Do not alloc aux by hand.
6037 * cfghooks.h (cfg_hooks): Add create_basic_block, can_merge_blocks_p,
6038 merge_blocks.
6039 (create_basic_block, can_merge_blocks_p, merge_blocks): New macros.
6040 * cfglayout.c (cfg_layout_duplicate_bb): Do not allocate aux by hand.
6041 * cfgloopmanip.c (loop_split_edge_with): Likewise.
6042 * ifcvt.c (merge_if_block): Use merge_blocks_nomove.
6043
6044 * basic-block.h (basic_block_def): Add field 'rbi'.
6045 * bb-reorder.c (find_traces, rotate_loop, mark_bb_visited,
6046 find_traces_1_round, copy_bb, connect_traces): Update use of rbi.
6047 * cfg.c (entry_exit_blocks): Add new field.
6048 * cfglayout.c: Include alloc-pool.h;
6049 (cfg_layout_pool): New.
6050 (record_effective_endpoints, fixup_reorder_chain,
6051 fixup_fallthru_exit_predecessor, cfg_layout_duplicate_bb): Update use
6052 of rbi.
6053 (cfg_layout_initialize_rbi): New function.
6054 (cfg_layout_initialize): Use it.
6055 (cfg_layout_finalize): Clear rbi fields.
6056 * cfglayout.h (RBI): Kill.
6057 (cfg_layout_initialize_rbi): Declare.
6058 * cfgloopmanip.c (copy_bbs): Use rbi.
6059 (record_exit_edges): Likewise.
6060 (duplicate_loop_to_header_edge): Likewise.
6061 * cfgrtl.c (cfg_layout_create_basic_block): Use
6062 cfg_layout_initialize_rbi.
6063 (cfg_layout_split_block): Use rbi.
6064 (cfg_layout_delete_block): Likewise.
6065 * loop-init.c (loop_optimizer_finalize): Likewise.
6066 * loop-unswitch.c (unswitch_loop): Likewise.
6067 * tracer.c (seen, tail_duplicate, layout_superblocks): Likewise.
6068
6069 * cfgrtl.c: Update comments.
6070 (try_redirect_by_replacing_jump): New argument.
6071 (redirect_branch_edge): Break out from ...
6072 (rtl_redirect_edge_and_branch): ... this one.
6073 (update_cfg_after_block_merging): Break out from ...
6074 (rtl_merge_blocks): ... this one.
6075 (cfg_layout_split_edge): New.
6076 (cfg_layout_merge_blocks): New.
6077 (cfg_layout_can_merge_blocks_p): New.
6078 (cfg_layout_redirect_edge_and_branch): Reorganize.
6079 (cfg_layout_rtl_cfg_hooks): Fill in.
6080 (cfg_layout_delete_block): Kill barriers.
6081 * cfganal.c (can_fallthru): Deal with exit blocks
6082 * cfglayout.c (cfg_layout_function_header): New function
6083 (record_effective_endpoints): Record function header.
6084 (fixup_reorder_chain): Fixup dead jumptables; place header
6085
6086 * basic-block.h (CLEANUP_CFGLAYOUT): New flag.
6087 * bb-reorder.c (cfg_layout_initialize): Update call.
6088 * cfgcleanup.c (try_optimize_cfg): Supress optimizations of fallthru
6089 edges in cfglayout mode.
6090 * cfglayout.c (cleanup_unconditional_jumps): Kill.
6091 (cfg_layout_initialize): Kill agrument loops; use cfgcleanup.
6092 * cfglayout.h (cfg_layout_initialize): Update prototype.
6093 * cfgloop.h (CP_INSIDE_CFGLAYOUT): Kill.
6094 * cfgloopmanip.c (loop_split_edge_with): Use split_edge.
6095 * flow.c (propagate_block): Do not crash when basic block ends
6096 by first insn in the chain.
6097 * loop-init.c (loop_optimizer_init): First enter cfglayout mode; later
6098 do loop discovery.
6099 * tracer.c (tracer): Update call of cfg_layout_initialize.
6100
dd220c49
KG
61012003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6102
6103 * Makefile.in: Use dependency variables in lieu of explicit
6104 files throughout.
6105
fa5b060f
SB
61062003-07-03 Steven Bosscher <steven@gcc.gnu.org>
6107
6108 * rtl.h (ECF_*, flags_from_decl_or_type): Move from here...
6109 * tree.h: ...to here.
6110
fae778eb
KH
61112003-07-03 Kazu Hirata <kazu@cs.umass.edu>
6112
6113 * config/s390/2064.md: Fix comment typos.
6114 * config/s390/2084.md: Likewise.
6115 * config/s390/s390.c: Likewise.
6116 * config/s390/s390.md: Likewise.
6117 * config/sh/sh.c: Likewise.
6118 * config/sh/sh.h: Likewise.
6119 * config/sh/sh.md: Likewise.
6120 * config/sparc/sparc.c: Likewise.
6121 * config/sparc/sparc.h: Likewise.
6122 * config/sparc/sparc.md: Likewise.
6123 * config/stormy16/stormy16.c: Likewise.
6124 * config/stormy16/stormy16.h: Likewise.
6125 * config/stormy16/stormy-abi: Fix a typo.
6126
58eabcb1
KC
61272003-07-03 Kelley Cook <kelleycook@wideopenwest.org>
6128
6129 * Makefile.in (ifcvt.o): Depend on OPTABS_H.
6130
af261903
KG
61312003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6132
6133 * config/mips/mips.h (save_argv): Delete.
6134
a11c61d2
RS
61352003-07-03 Roger Sayle <roger@eyesopen.com>
6136
6137 PR target/10700
6138 * fold-const.c (extract_muldiv_1): There's nothing that can be done
6139 if the expression is a SAVE_EXPR.
6140
dab66575
KH
61412003-07-03 Kazu Hirata <kazu@cs.umass.edu>
6142
6143 * config/m32r/m32r.c: Fix comment typos.
6144 * config/m68hc11/m68hc11.c: Likewise.
6145 * config/m68hc11/m68hc11.h: Likewise.
6146 * config/m68k/m68k.c: Likewise.
6147 * config/mcore/mcore.c: Likewise.
6148 * config/mcore/mcore.h: Likewise.
6149 * config/mcore/mcore.md: Likewise.
6150 * config/mips/mips.c: Likewise.
6151 * config/mips/mips.h: Likewise.
6152 * config/mips/mips.md: Likewise.
6153 * config/mips/netbsd.h: Likewise.
6154 * config/mn10300/mn10300.c: Likewise.
6155
8837d828
AS
61562003-07-03 Andreas Schwab <schwab@suse.de>
6157
6158 * dbxout.c (pending_bincls): Move decl down inside
6159 DBX_DEBUGGING_INFO || XCOFF_DEBUGGING_INFO section.
6160
dd107e66
NS
61612003-07-02 Nathan Sidwell <nathan@codesourcery.com>
6162
6163 * rtl.h (NOTE_DATA): Refer to whole union.
6164 * emit-rtl.c (emit_note): Use memset to clear NOTE_DATA.
6165
8821d091
EB
61662003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr>
6167
6168 PR optimization/11381
6169 * simplify-rtx.c (simplify_relational_operation): Check that
6170 two equal operands have no side-effects before simplifying
6171 the comparison.
6172
7960bf22
JL
61732003-07-02 Jeff Law <law@redhat.com>
6174
6175 * expr.c (do_store_flag): Remove special case folding for
6176 single bit tests. Instead call back into the commonized folder
6177 routine.
6178 * fold-const.c (fold_single_bit_test): New function, mostly
6179 extracted from do_store_flag, with an additional case extracted
6180 from fold.
6181 (fold): Call fold_single_bit_test appropriately.
6182 * tree.h (fold_single_bit_test): Prototype.
6183
3dce1408
ZW
61842003-07-02 Zack Weinberg <zack@codesourcery.com>
6185
6186 * system.h: Include filenames.h.
6187 (IS_DIR_SEPARATOR, IS_ABSOLUTE_PATHNAME): Don't define.
6188 (DIR_SEPARATOR, DIR_SEPARATOR_2): If not already defined,
6189 define based on HAVE_DOS_BASED_FILE_SYSTEM.
6190 * config/i386/xm-cygwin.h, config/i386/xm-djgpp.h
6191 * config/i386/xm-mingw32.h: Don't define
6192 HAVE_DOS_BASED_FILE_SYSTEM,
6193 DIR_SEPARATOR, or DIR_SEPARATOR_2.
6194 * doc/hostconfig.texi: Update to match.
6195
6196 * cppfiles.c, gcc.c, gensupport.c, protoize.c,
6197 config/i386/cygwin.h:
6198 Use IS_ABSOLUTE_PATH throughout.
6199 * gcc.c (DIR_UP): Delete, unused.
6200 * protoize.c (IS_SAME_PATH): Define in terms of
6201 FILENAME_CMP.
6202 (is_abspath): Delete.
6203
c51e6d85
KH
62042003-07-02 Kazu Hirata <kazu@cs.umass.edu>
6205
6206 * config/i386/emmintrin.h: Fix comment typos.
6207 * config/i386/i386.c: Likewise.
6208 * config/i386/i386.h: Likewise.
6209 * config/i386/sco5.h: Likewise.
6210 * config/ia64/ia64.c: Likewise.
6211 * config/ia64/itanium2.md: Likewise.
6212
5ec3a5a7
L
62132003-07-02 H.J. Lu <hongjiu.lu@intel.com>
6214
6215 * dbxout.c (pending_bincls): Replace DBX_USE_BINCLS with
6216 DBX_USE_BINCL.
6217 (emit_bincl_stab): Same.
6218 (emit_pending_bincls): Same.
6219
fad37371
KH
62202003-07-02 Kazu Hirata <kazu@cs.umass.edu>
6221
6222 * config/h8300/h8300.c (compute_mov_length): Fix the length of
6223 loading CONST0_RTX (SFmode).
6224 * config/h8300/h8300.h (CONST_DOUBLE_OK_FOR_LETTER_P): Change
6225 'G' to CONST0_RTX (SFmode).
6226 * config/h8300/h8300.md (movsf_h8300): Change the first
6227 constraint to 'G'.
6228 (movsf_h8300h): Likewise.
6229
b86f6cd9
NB
62302003-07-02 Neil Booth <neil@daikokuya.co.uk>
6231
6232 * c-common.h (c_common_init_options): New prototype.
6233 * c-opts.c (deferred_size): Remove.
6234 (defer_opt): Array is now pre-allocated.
6235 (c_common_init_options): Pre-allocate deferred_opts. Make
6236 lang_flags unsigned.
6237 (push_command_line_options): Free deferred_opts.
6238 * hooks.c (hook_uint_uint_constcharptrptr_0): New.
6239 * hooks.h (hook_uint_uint_constcharptrptr_0): New.
6240 * langhooks-def.h (LANG_HOOKS_INIT_OPTIONS): Update.
6241 * langhooks.h (struct lang_hooks): New prototype for init_options.
6242 * main.c (main): Cast argv.
6243 * opts.c (handle_option, handle_options): Update prototypes.
6244 (decode_options): save_argc, save_argv are not global. Constify.
6245 * opts.h (decode_options): New prototype.
6246 * toplev.c (general_init): New protoype.
6247 (save_argv): Make static.
6248 (save_argc): Remove.
6249 (print_switch_values, general_init): Constify.
6250 (toplev_main): Save argv.
6251 * toplev.h (toplev_main): Update prototype.
6252 (save_argc, save_argv): Remove.
6253
f23b9d52
DE
62542003-07-02 David Edelsohn <edelsohn@gnu.org>
6255
6256 * dbxout.c (pending_bincls): Guard with DBX_USE_BINCLS.
6257 (emit_bincl_stab): Same.
6258 (emit_pending_bincls): Same.
6259
300e89a2
NS
62602003-07-02 Nathan Sidwell <nathan@codesourcery.com>
6261
6262 PR c++/11072
6263 * ginclude/stddef.h (offsetof): Remove cast to 'char &'. Explain why.
6264
eaac6968
AS
62652003-07-02 Andreas Schwab <schwab@suse.de>
6266
6267 * dbxout.c (pending_bincls): Only define if DBX_DEBUGGING_INFO.
6268
1a8c4ca6
EB
62692003-07-02 Eric Botcazou <ebotcazou@libertysurf.fr>
6270
6271 PR optimization/11210
6272 * expr.c (handled_component_p) [NOP_EXPR]: Add ??? note
6273 about the behaviour with regard to bitfields.
6274 * fold-const (decode_field_reference): Record outermost type in
6275 case the expression is a NOP. Strip all NOPs. Set the signedness
6276 to that of the outermost type (if any) when the bitsize is equal
6277 to the size of the type.
6278
23cdfcf7
RS
62792003-07-02 Richard Sandiford <rsandifo@redhat.com>
6280
6281 * config/mips/mips.md (addsi3): Remove workaround for adds of -32768.
6282 (addsi3_internal, adddi3, adddi3_internal_2): Likewise.
6283 (adddi3_internal_3, addsi3_internal_2): Likewise.
6284
6f2993e5
RS
62852003-07-02 Richard Sandiford <rsandifo@redhat.com>
6286
6287 * config/mips/mips.c (machine_function): Add new fields:
6288 ignore_hazard_length_p and all_noreorder_p.
6289 (mips_flag_delayed_branch): New variable.
6290 (override_options): Treat '/' as an operand punctuation character.
6291 Set up mips_flag_delayed_branch.
6292 (print_operand): Handle '/'.
6293 (mips_output_function_prologue): Put the whole function in
6294 .set noreorder and .set nomacro if all_noreorder_p is true.
6295 (mips_output_function_epilogue): End the noreorder/nomacro sequence.
6296 (mips16_optimize_gp): Remove "first insn" parameter.
6297 (mips16_lay_out_constants): New function, split out from mips_reorg.
6298 (mips_avoid_hazard, mips_avoid_hazards): New functions.
6299 (mips_reorg): For mips16 code, call mips16_lay_out_constant
6300 and (optionally) mips16_optimize. If TARGET_EXPLICIT_RELOCS,
6301 do delayed-branch scheduling followed by hazard detection.
6302 (mips_adjust_insn_length): Only account for hazards if
6303 !ignore_hazard_length_p.
6304 (mips_output_load_label): Add a nop to the o32 sequence if
6305 the target suffers from load delays.
6306 (mips_output_conditional_branch): Add %/ to the end of branches.
6307 (mips_output_division): Fill the branch delay slot with %#.
6308 * config/mips/mips.md: Remove redundant '%*' from mips16 branch
6309 instructions. End all other %* branches with %/.
6310 (ffssi2, ffsdi2): Fix lengths.
6311 (truncdisi2, truncdihi2, truncdiqi2): Add store attributes.
6312 (fix_truncdfsi2_macro): Turn off .set nomacro if appropriate.
6313 (fix_truncsfsi2_macro): Likewise.
6314 (mov_lwl): Set hazard to "none".
6315 (ashldi3_internal): Fill the branch delay slot with %#.
6316 (ashrdi3_internal, lshrdi3_internal): Likewise.
6317 (exception_receiver): Explicitly set $28.
6318 (hazard_nop): New pattern.
6319
0184bd46
JH
6320Wed Jul 2 08:12:36 CEST 2003 Jan Hubicka <jh@suse.cz>
6321
6322 * cgraphunit.c (cgraph_finalize_unit): Set current_function_decl
6323 before calling tree_inlinable_function_p.
6324
1a78e5a7
RO
63252003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
6326
6327 * fixinc/inclhack.def (irix_stdio_va_list): Apply to IRIX 6.5
6328 <internal/stdio_core.h> too.
6329 (stdio_va_list): Apply to IRIX 6.5 <internal/stdio_core.h> and
6330 <internal/wchar_core.h> too.
6331 Substitute va_list uses in inline definition.
6332 * fixinc/fixincl.x: Regenerate.
6333
4c82f12b
RO
63342003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
6335
6336 * config/mips/iris5.h (SET_FILE_NUMBER): Moved here from iris3.h.
6337 Undef before redefinition.
6338 (LABEL_AFTER_LOC): Likewise.
6339 (DEFAULT_SIGNED_CHAR): Likewise.
6340 (ASM_OUTPUT_ASCII): Moved here from iris4.h.
6341 Fix IRIX spelling.
3dce1408 6342
4c82f12b
RO
6343 * config/mips/iris3.h: Remove, unused.
6344 * config/mips/iris4.h: Likewise.
6345
6346 * config/mips/mips.h (STACK_ARGS_ADJUST): Remove, unused.
6347
6348 * config/mips/iris5.h (TARGET_DEFAULT): Move ...
6349 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here to
6350 target_cpu_default.
6351
6352 * config/mips/iris5.h: Move explicit includes ...
6353 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here.
3dce1408 6354
4c82f12b
RO
6355 * config/mips/iris6.h (MIPS_ISA_DEFAULT, MIPS_ABI_DEFAULT): Move ...
6356 * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
6357 tm_defines.
6358
6359 * config/mips/iris6.h (TARGET_DEFAULT): Move ...
6360 * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
6361 target_cpu_default.
6362
6363 * config/mips/iris6.h: Fix IRIX spelling.
6364 (MULTILIB_DEFAULTS): Undef before redefinition.
3dce1408 6365
4c82f12b
RO
6366 * config/mips/iris6.h: Move explicit includes ...
6367 * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here.
6368
8bd87c4e
JH
6369Wed Jul 2 02:16:48 CEST 2003 Jan Hubicka <jh@suse.cz>
6370
6371 * cgraph.c (cgraph_mark_needed_node, cgraph_varpool_mark_needed_node,
6372 cgraph_varpool_finalize_decl, cgraph_varpool_assemble_pending_decls):
6373 Use next_needed field instead of aux to maintain the queue.
6374 * cgraph.h (cgraph_node): Add next_needed.
6375 (cgraph_varpool_node): Add next_needed; remove aux.
6376 * cgraphunit.c (cgraph_finalize_compilation_unit): Use next_needed.
6377
f6981e16
JH
6378Wed Jul 2 02:12:51 CEST 2003 Jan Hubicka <jh@suse.cz>
6379
6380 * cgraphunit.c (cgraph_finalize_function): Set finalized.
6381 (cgraph_finalize_function): Do not examine inlinablility.
6382 (cgraph_finalize_compilation_unit): Do it here.
6383 * cgraph.h (cgraph_local_info): Add finalized field.
6384
d1c60855
RO
63852003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
6386
6387 * ggc-common.c (gt_pch_save): Cast MAP_FAILED to void *.
6388 (gt_pch_restore): Likewise.
6389
093354e0
KH
63902003-07-01 Kazu Hirata <kazu@cs.umass.edu>
6391
6392 * config/alpha/alpha.c: Fix comment typos.
6393 * config/alpha/elf.h: Likewise.
6394 * config/arm/arm.c: Likewise.
6395 * config/arm/arm.h: Likewise.
6396 * config/arm/arm.md: Likewise.
6397 * config/arm/t-arm-coff: Likewise.
6398 * config/arm/t-strongarm-pe: Likewise.
6399 * config/arm/xscale-elf.h: Likewise.
6400 * config/avr/avr.h: Likewise.
6401
ce47ca44
JL
64022003-07-01 Jeff Law <law@redhat.com>
6403
6404 * stmt.c (any_pending_cleanups): Remove another redundant test.
6405
43b68ce5
DE
64062003-07-01 David Edelsohn <edelsohn@gnu.org>
6407 J"orn Rennecke <joern.rennecke@superh.com>
6408
6409 * config/rs6000/rs6000.md (ctr{s,d}i_internal?): Add earlyclobber
6410 for MEM case.
6411
33e9d2aa
DP
64122003-07-01 Devang Patel <dpatel@apple.com>
6413
6414 * dbxout.c (DBXOUT_DECR_NESTING): Emit pending bincls, if required.
6415 (binclstatus): New.
3dce1408 6416 (struct dbx_file): New members - bincl_status, pending_bincl_name and
33e9d2aa
DP
6417 prev.
6418 (pending_bincls): New.
6419 (dbxout_init): Initialize new dbx_file members.
6420 (dbxout_start_source_file): Same.
6421 (emit_bincl_stab): New function.
6422 (emit_pending_bincls): Same.
6423 (emit_pending_bincls_if_required): Same.
3dce1408 6424 (dbxout_end_source_file): Emit EINCL stab only if BINCL is already
33e9d2aa
DP
6425 processed.
6426 (dbxout_begin_block): Emit pending BINCL stabs.
6427 (dbxout_end_block): Same.
6428 (dbxout_function_decl): Same.
6429 (dbxout_continue): Same.
6430 (dbxout_type): Same.
6431 (dbxout_class_name_qualifiers): Same.
6432 (dbxout_symbol): Same.
6433 (dbxout_symbol_location): Same.
6434 (dbxout_parms): Same.
3dce1408 6435
0108ae51
KG
64362003-07-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
6437
6438 * c-semantics.c (genrtl_case_label): Fix format specifier bug.
6439 * cfgrtl.c (rtl_verify_flow_info_1): Likewise.
6440
54ced33d
AJ
64412003-07-01 Andreas Jaeger <aj@suse.de>
6442
6443 * fold-const.c: Convert prototypes to ISO C90.
6444 * function.c: Likewise.
6445 * function.h: Likewise.
6446
c0cbdbd9
KH
64472003-07-01 Kazu Hirata <kazu@cs.umass.edu>
6448
6449 * doc/contrib.texi: Fix typos.
6450 * doc/invoke.texi: Likewise.
6451 * doc/passes.texi: Likewise.
6452 * doc/sourcebuild.texi: Likewise.
6453 * doc/tm.texi: Likewise.
6454
e0bb17a8
KH
64552003-07-01 Kazu Hirata <kazu@cs.umass.edu>
6456
6457 * basic-block.h: Fix comment typos.
6458 * bb-reorder.c: Likewise.
6459 * c-format.c: Likewise.
6460 * cfgcleanup.c: Likewise.
6461 * cfghooks.h: Likewise.
6462 * cfgloop.c: Likewise.
6463 * cfgloopmanip.c: Likewise.
6464 * cfgrtl.c: Likewise.
6465 * cgraph.h: Likewise.
6466 * cgraphunit.c: Likewise.
6467 * combine.c: Likewise.
6468 * convert.c: Likewise.
6469 * dbxout.c: Likewise.
6470 * df.c: Likewise.
6471 * df.h: Likewise.
6472 * diagnostic.c: Likewise.
6473 * dwarf2out.c: Likewise.
6474 * et-forest.h: Likewise.
6475 * flow.c: Likewise.
6476 * fold-const.c: Likewise.
6477 * function.h: Likewise.
6478 * gcov-io.h: Likewise.
6479 * gcov.c: Likewise.
6480 * gcse.c: Likewise.
6481 * genautomata.c: Likewise.
6482 * ggc-common.c: Likewise.
6483 * ggc-page.c: Likewise.
6484 * loop-unroll.c: Likewise.
6485 * loop-unswitch.c: Likewise.
6486 * loop.c: Likewise.
6487 * mips-tfile.c: Likewise.
6488 * optabs.c: Likewise.
6489 * ra-build.c: Likewise.
6490 * ra-colorize.c: Likewise.
6491 * ra-rewrite.c: Likewise.
6492 * ra.h: Likewise.
6493 * regmove.c: Likewise.
6494 * reload.c: Likewise.
6495 * rtlanal.c: Likewise.
6496 * sched-ebb.c: Likewise.
6497 * sched-int.h: Likewise.
6498 * sched-vis.c: Likewise.
6499 * sreal.c: Likewise.
6500 * ssa-ccp.c: Likewise.
6501 * ssa.c: Likewise.
6502 * toplev.c: Likewise.
6503 * tree-inline.c: Likewise.
6504 * value-prof.c: Likewise.
6505 * value-prof.h: Likewise.
6506
5f2fc772
NS
65072003-07-01 Nathan Sidwell <nathan@codesourcery.com>
6508
6509 * rtl.h (emit_line_note_after): Remove.
6510 (emit_note_copy_after, emit_note_copy): New.
6511 * emit-rtl.c (reorder_insns_with_line_notes): Replace
6512 emit_line_note_after with emit_note_copy_after.
6513 (emit_insn_after_with_line_notes): Likewise.
6514 (emit_line_note_after): Kill.
6515 (emit_note_copy_after): New.
6516 (emit_note_copy): New.
6517 * function.c (emit_return_into_block): Use emit_note_copy_after.
6518 (thread_prologue_and_epilogue_insns): Likewise.
6519 * integrate.c (expand_inline_function): Use emit_note_copy.
6520 (copy_insn_list): Likewise.
6521 * unroll.c (copy_loop_body): Likewise.
6522 * cfglayout.c (duplicate_insn_chain): Likewise.
6523
5b030314
NS
65242003-07-01 Nathan Sidwell <nathan@codesourcery.com>
6525
6526 * c-tree.h (define_label): Replace filename and lineno arguments
6527 with a location_t.
6528 * c-decl.c (poplevel): Adjust define_label call.
6529 (pop_label_level): Likewise.
6530 (define_label): Replace filename and lineno arguments with a
6531 location_t.
6532 (store_parm_decls): Use DECL_SOURCE_LOCATION.
6533 * c-parse.in (label): Adjust define_label call.
6534
04df6730
NB
65352003-07-01 Neil Booth <neil@daikokuya.co.uk>
6536
6537 * config/sol2.h, config/alpha/alpha.h, config/alpha/linux.h,
6538 config/i386/i386-interix.h, config/ia64/hpux.h, config/mips/iris6.h,
6539 config/mips/linux.h, config/mips/mips.h, config/pa/pa-hpux.h,
6540 config/pa/pa-hpux10.h, config/pa/pa-hpux11.h, config/pa/pa-pro-end.h,
6541 config/pa/pa.h, config/pa/rtems.h: Use c_dialect_ macros.
6542
6cf9ac28
AJ
65432003-07-01 Andreas Jaeger <aj@suse.de>
6544
6545 * final.c: Convert prototypes to ISO C90.
6546 * flow.c: Likewise.
6547 * flags.h: Likewise.
6548 * gcov-io.c: Likewise.
6549 * gcov-io.h: Likewise.
6550
2a868fac 6551See ChangeLog.9 for earlier changes.
This page took 0.893545 seconds and 5 git commands to generate.