1 2003-07-11 Geoffrey Keating <geoffk@apple.com>
3 * c-decl.c (finish_decl): Handle 'used' here...
4 * cgraphunit.c (cgraph_finalize_function): ... and here ...
5 * c-common.c: (handle_used_attribute): ... not here.
7 * configure.in (onstep): Support --enable-intermodule.
8 * Makefile.in (OBJS-common): New.
11 (OBJS): Build from OBJS-common, OBJS-md, OBJS-archive.
13 (libbackend.a): Support @onestep@.
15 * configure: Regenerate.
17 * c-common.h (c_reset_state): New prototype.
18 (c_parse_file): New prototype.
19 (finish_file): Move prototype from c-tree.h.
20 * c-decl.c: Include <hashtab.h>.
22 (current_file_decl): New.
23 (duplicate_decls): Add extra parameter. Change all callers. Don't
24 output duplicate common symbols.
25 (link_hash_hash): New.
27 (poplevel): Handle popping of the top level.
28 (warn_if_shadowing): Handle TRANSLATION_UNIT_DECL.
29 (pushdecl): Set DECL_CONTEXT to TRANSLATION_UNIT_DECL if appropriate.
30 (pushdecl_top_level): Likewise.
31 (redeclaration_error_message): Handle TRANSLATION_UNIT_DECL.
32 (c_init_decl_processing): Create TRANSLATION_UNIT_DECL.
33 (finish_decl): Handle TRANSLATION_UNIT_DECL.
34 (merge_translation_unit_decls): New.
35 (c_write_global_declarations): New.
37 (implicitly_declare): Handle TRANSLATION_UNIT_DECL.
38 * c-lang.c (LANG_HOOKS_WRITE_GLOBALS): New.
39 * c-objc-common.c (c_cannot_inline_tree_fn): Handle
40 TRANSLATION_UNIT_DECL.
41 (c_objc_common_finish_file): Call merge_translation_unit_decls.
42 * c-opts.c (in_fnames): Rename from in_fname.
43 (c_common_decode_option): Handle multiple input filenames.
44 (c_common_post_options): Likewise.
45 (c_common_parse_file): Likewise; also, call c_parse_file rather than
47 * c-parse.in: Move cleanup code to c_parse_file.
48 (free_parser_stacks): Move contents to c_parse_file.
50 * c-tree.h (union lang_tree_node): Chain along TYPE_NEXT_VARIANT
52 (C_DECL_FILE_SCOPE): New.
53 (finish_file): Move prototype to c-common.h.
54 (merge_translation_unit_decls): New prototype.
55 (comptypes): Add extra parameter to prototype.
56 (c_write_global_declarations): New prototype.
57 * c-typeck.c (tagged_types_tu_compatible_p): New.
58 (function_types_compatible_p): Add extra parameter, change all callers.
59 (type_lists_compatible_p): Likewise.
60 (comptypes): Likewise.
61 (struct tagged_tu_seen): New.
62 (tagged_tu_seen_base): New.
63 (build_unary_op): Handle TRANSLATION_UNIT_DECL.
64 (c_mark_addressable): Remove #if 0 code.
65 * calls.c (special_function_p): Handle TRANSLATION_UNIT_DECL, add
66 comment explaining why it shouldn't have to.
67 * cgraph.h (struct cgraph_node): Add chain_next and chain_prev GTY
69 * cppinit.c (cpp_read_next_file): New.
70 (cpp_read_main_file): Use it.
71 * cpplib.c (undefine_macros): New.
73 * cpplib.h (cpp_read_next_file): Prototype.
74 (cpp_undef_all): Prototype.
75 * langhooks-def.h (write_global_declarations): Remove prototype.
76 * toplev.h (write_global_declarations): Add prototype.
77 * tree.c (decl_type_context): Use switch statement, handle
78 TRANSLATION_UNIT_DECL.
79 * tree.def: Update documentation for TRANSLATION_UNIT_DECL.
80 (TRANSLATION_UNIT_DECL): New kind of tree.
81 * tree.h: Update documentation for TRANSLATION_UNIT_DECL.
82 * Makefile.in (c-decl.o): Add $(HASHTAB_H) to dependencies.
83 * doc/invoke.texi: Make attempt to document new functionality.
85 2003-05-19 Per Bothner <bothner@apple.com>
87 * gcc.c (combine_inputs): New.
88 (process_command): Set combine_inputs.
89 (do_spec_1): Handle combine_inputs.
92 2003-07-10 James E Wilson <wilson@tuliptree.org>
95 * loop.c (loop_iv_add_mult_emit_before): Call loop_regs_update before
96 loop_insn_emit_before.
97 (loop_iv_add_mult_sink, loop_iv_add_mult_hoist): Likewise.
99 2003-07-10 Zack Weinberg <zack@codesourcery.com>
101 * cppcharset.c: Fix comment.
102 (iconv_close [!HAVE_ICONV]): #define to (void)0 to prevent warning.
103 (EILSEQ): #define to EINVAL if not already defined.
104 (convert_using_iconv): #if out when !HAVE_ICONV.
105 (init_iconv_desc): Handle !HAVE_ICONV here...
106 (cpp_init_iconv): ...not here.
108 2003-07-11 Neil Booth <neil@daikokuya.co.uk>
110 * common.opt: More --help messages.
111 * opts.c (print_help): Use puts().
112 * toplev.c (f_options): Remove help text.
113 (display_help): Don't dump f_options.
115 2003-07-11 Nathanael Nerode <neroden@gcc.gnu.org>
117 * fixinc/mkfixinc.sh: Drop reference to unsupported alpha-*-interix*.
118 Move i?86-*-interix* to the don't-fix list.
119 * fixinc/fixinc.interix: Delete with extreme prejudice.
121 2003-07-10 Dara Hazeghi <dhazeghi@yahoo.com>
124 * doc/install.texi: Document requirements for ia64-*-hpux* target.
126 2003-07-10 Roger Sayle <roger@eyesopen.com>
128 * config/ia64/hpux.h (TARGET_C99_FUNCTIONS): Define.
130 2003-07-10 Zack Weinberg <zack@codesourcery.com>
132 * cppcharset.c (one_utf8_to_cppchar, one_cppchar_to_utf8,
133 one_utf8_to_utf32, one_utf32_to_utf8, one_utf8_to_utf16,
134 one_utf16_to_utf8, conversion_loop, convert_utf8_utf16,
135 convert_utf8_utf32, convert_utf16_utf8, convert_utf32_utf8,
136 convert_no_conversion, convert_using_iconv): New functions.
137 (APPLY_CONVERSION): New macro.
138 (struct conversion, conversion_tab): New data structure.
139 (init_iconv_desc): Check conversion_tab for a custom conversion
140 primitive before trying to use iconv.
141 (convert_cset): Deleted.
142 (cpp_init_iconv): Use UTF- terminology, not UCS-.
143 (_cpp_destroy_iconv): Update to match.
144 (_cpp_valid_ucn): We don't need iconv to implement UCNs.
145 (convert_ucn): Use one_cppchar_to_utf8 and APPLY_CONVERSION.
146 (convert_escape, cpp_interpret_string): Use APPLY_CONVERSION.
147 (_cpp_interpret_string_notranslate): New function, moved here
150 * cpphash.h (convert_f, struct cset_converter): New types.
151 (struct cpp_reader): narrow_cset_desc and wide_cset_desc
152 are now struct cset_converter, not bare iconv_t.
154 * cpplib.c (interpret_string_notranslate): Moved to cppcharset.c;
157 2003-07-10 Kelley Cook <kelleycook@wideopenwest.com>
159 * Makefile.in (options.h): Depend on Makefile. Add move-if-change
160 to opts.sh command line.
161 * opts.sh: Write to temporary files with a move-if-change at the end.
163 2003-06-30 Denis Chertykov <denisc@overta.ru>
164 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
166 * combine.c (gen_binary): Handle the CLOBBER rtx and
167 don't build a binary operation with it.
169 2003-07-10 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
171 * gcse.c (load_kills_store, find_loads, store_killed_in_insn,
172 store_killed_after, store_killed_before): Keep track of the correct
173 dependency function to use.
175 2003-07-10 Steven Bosscher <steven@gcc.gnu.org>
176 * toplev.c (do_compile): Don't try to open dump files before
177 lang_dependent_init initializes dump_base_name.
179 2003-07-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
181 * config/arm/arm.c (arm_init_iwmmxt_builtins, arm_expand_builtin):
183 * config/frv/frv.c (frv_expand_builtin): Likewise.
184 * config/sh/sh.c (sh_media_init_builtins): Likewise.
186 2003-07-09 Mark Mitchell <mark@codesourcery.com>
189 * doc/invoke.texi (C++ Dialect Options): Change documentation of
192 2003-07-10 J"orn Rennecke <joern.rennecke@superh.com>
194 * tm.texi (RETURN_ADDR_OFFSET): Document.
196 2003-07-10 Nathan Sidwell <nathan@codesourcery.com>
198 * gcov-io.h: Update documentation.
199 (GCOV_UNSIGNED2STRING): New.
200 (GCOV_TAG_FUNCTION_LENGTH, GCOV_TAG_BLOCKS_LENGTH,
201 GCOV_TAG_ARCS_LENGTH, GCOV_TAG_COUNTER_LENGTH,
202 GCOV_TAG_SUMMARY_LENGTH): Adjust.
203 (GCOV_TAG_BLOCKS_NUM, GCOV_TAG_ARCS_NUM,
204 GCOV_TAG_COUNTER_NUM): New.
205 (GCOV_BLOCK_SIZE): Number of words.
206 (gcov_var): Adjust buffer type.
207 * gcov-io.c (gcov_write_bytes, gcov_read_bytes): Rename to ...
208 (gcov_write_words, gcov_read_words): ... here. Take a 4-byte word
209 count, not byte count.
210 (gcov_open): Adjust overread init.
211 (gcov_allocate, gcov_write_unsigned, gcov_write_counter,
212 gcov_write_string, gcov_write_tag, gcov_write_length,
213 gcov_write_tag_length): Adjust.
214 (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Adjust.
215 (gcov_sync, gcov_seek): Adjust.
216 * gcov-dump.c (print_usage): Show gcc version only.
217 (dump_file): Use GCOV_UNSIGNED2STRING.
218 (tag_blocks, tag_arcs, tag_counters): Use GCOV_TAG_*_NUM macros.
219 * gcov.c (print_version): Show gcc version only.
220 (read_graph_file): Use GCOV_UNSIGNED2STRING. Use
221 GCOV_TAG_*_NUM macros.
222 (read_count_file): Use GCOV_UNSIGNED2STRING. Use
223 GCOV_TAG_COUNTER_LENGTH.
224 * coverage.c (read_counts_file): Use GCOV_UNSIGNED2STRING.
225 Use GCOV_TAG_COUNTER_NUM.
226 * libgcov.c (gcov_version): Use GCOV_UNSIGNED2STRING.
227 (__gcov_merge_single, __gcov_merge_delta): Use GCOV_CHECK.
229 2003-07-10 Andreas Schwab <schwab@suse.de>
231 * gcov-dump.c (dump_file): Fix missing address operator.
233 2003-07-10 Kazu Hirata <kazu@cs.umass.edu>
236 * fold-const.c (sign_bit_p): Return EXP if VAL is the sign bit
238 (fold_single_bit_test): If sign_bit_p() fails, assume that the
239 bit being tested is not a sign bit.
241 2003-07-10 Kazu Hirata <kazu@cs.umass.edu>
243 * config/h8300/h8300.md (a peephole2): New.
245 2003-07-10 Alexandre Oliva <aoliva@redhat.com>
247 2001-12-13 Alexandre Oliva <aoliva@redhat.com>
248 * config/mn10300/linux.h (LINK_SPEC): Rename the dynamic linker
249 from ld-linux.so.2 to ld.so.1.
250 2001-11-18 Alexandre Oliva <aoliva@redhat.com>
251 * config/mn10300/linux.h (LINK_SPEC): -lpthread, not -lthread.
252 * config/mn10300/linux.h (LINK_SPEC): Don't handle -Wl,-rpath
254 (LIB_SPEC): Add -rpath-link if !static.
255 2001-08-22 Alexandre Oliva <aoliva@redhat.com>
256 * config/mn10300/mn10300.c (mn10300_protect_label): New
258 * config/mn10300/linux.h (PRINT_OPERAND,
259 PRINT_OPERAND_ADDRESS): Set it during their execution.
260 (ASM_OUTPUT_LABELREF): Output `+' before symbol name if
261 mn10300_protect_label is set.
262 * config/mn10300/linux.h (LINK_SPEC): Recognize -Wl,-rpath and
264 (LIB_SPEC, STARTFILE_SPEC): Define.
265 2001-05-11 Alexandre Oliva <aoliva@redhat.com>
266 * config/mn10300/t-linux (dp-bit.c, fp-bit.c): Don't define
267 FLOAT_BIT_ORDER_MISMATCH.
268 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
269 * config.gcc (am33_2.0-*-linux*): Added.
270 * config/mn10300/linux.h: New.
271 * config/mn10300/t-linux: New.
273 2003-07-10 Andreas Jaeger <aj@suse.de>
275 * fold-const.c: Properly wrap prototypes.
277 2003-07-09 Alexandre Oliva <aoliva@redhat.com>
279 2003-06-16 Alexandre Oliva <aoliva@redhat.com>
280 * config/mn10300/mn10300.c (mn10300_unspec_int_label_counter):
282 * config/mn10300/mn10300.md (GOTaddr2picreg): ... here.
283 * config/mn10300/mn10300.h: GTY-declare it.
284 2003-06-11 Alexandre Oliva <aoliva@redhat.com>
285 * config/mn10300/mn10300.c (mn10300_encode_section_info): Fix
286 prototype. Use incoming RTL argument.
287 2002-12-12 Alexandre Oliva <aoliva@redhat.com>
288 * config/mn10300/mn10300.md (int_label): Move C statements...
289 (GOTaddr2picreg): ... here.
290 2002-08-15 Alexandre Oliva <aoliva@redhat.com>
291 * config/mn10300/mn10300.h (ENCODE_SECTION_INFO): Move...
292 * config/mn10300/mn10300.c (mn10300_encode_section_info):
293 ... here. New function.
294 (TARGET_ENCODE_SECTION_INFO): Define to it.
295 2001-11-04 Alexandre Oliva <aoliva@redhat.com>
296 * config/mn10300/mn10300.md (builtin_setjmp_receiver): Fix typo in
298 (mn10300_loadPC): Define as insn splittable after reload.
299 2001-05-13 Alexandre Oliva <aoliva@redhat.com>
300 * config/sh/mn10300.h (JUMP_TABLES_IN_TEXT_SECTION): Let them
301 be defined in .rodata even in PIC, now that the assembler
303 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
304 * config/mn10300/mn10300.h (GOT_SYMBOL_NAME): Don't let the
305 symbol take an underscore prefix.
306 2001-04-14 Alexandre Oliva <aoliva@redhat.com>
307 * config/mn10300/mn10300-protos.h (legitimate_pic_operand_p,
308 legitimize_pic_address): Declare.
309 * config/mn10300/mn10300.h (CONDITIONAL_REGISTER_USAGE): Mark
310 the PIC register as fixed.
311 (EXTRA_CONSTRAINT): Match UNSPEC_PLT and UNSPEC_PIC for 'S'.
312 (GO_IF_LEGITIMATE_ADDRESS): Require legitimate_pic_operand for
314 (LEGITIMATE_PIC_OPERAND_P): Define.
315 (PIC_OFFSET_TABLE_REGNUM): Define.
316 (GOT_SYMBOL_NAME): Define.
317 (SYMBOLIC_CONST_P): Define.
318 (ENCODE_SECTION_INFO): Use SYMBOL_REF_FLAG to mark local
320 (MN10300_GLOBAL_P): Test it.
321 (OUTPUT_ADDR_CONST_EXTRA): Handle PIC-related unspecs.
322 (JUMP_TABLES_IN_TEXT_SECTION): Enable for PIC.
323 * config/mn10300/mn10300.c (print_operand): Handle unspec.
324 (expand_prologue): Set PIC register.
325 (call_address_operand): Don't match SYMBOL_REFs in PIC.
326 (legitimize_address): Call legitimize_pic_address.
327 (legitimize_pic_address): New fn.
328 (legitimate_pic_operand_p): New fn.
329 * config/mn10300/mn10300.md (PIC_REG, SP_REG): New constants.
330 (UNSPEC_INT_LABEL, UNSPEC_PIC, UNSPEC_GOT, UNSPEC_GOTOFF,
331 UNSPEC_PLT): New constants.
332 (pop_pic_reg): New insn.
333 (movsi): Adjust non-PIC addresses.
334 (builtin_setjmp_receiver): Restore the PIC register.
336 (call): Adjust non-PIC addresses.
337 (int_label, GOTaddr2picreg): New expands.
338 (am33_loadPC): New insn.
339 (mn10300_loadPC): New expand.
340 (call_next_insn): New insn.
341 (add_GOT_to_pic_reg): New expand.
342 (symGOT2reg, symGOT2reg_i): New expands.
343 (symGOTOFF2reg, symGOTOFF2reg_i): New expands.
344 (sym2PIC, sym2PLT): New expands.
346 2003-07-09 Alexandre Oliva <aoliva@redhat.com>
348 * config/mn10300/mn10300.h (PREDICATE_CODES): Define.
349 2001-05-01 Alexandre Oliva <aoliva@redhat.com>
350 * config/mn10300/mn10300.md (sqrtsf2): flag_fast_math was renamed
351 to flag_unsafe_math_optimizations.
352 2001-04-14 Alexandre Oliva <aoliva@redhat.com>
353 * config/mn10300/mn10300.c (expand_prologue): Mark
354 FP-register-saving insns as frame-related.
355 2001-02-13 Alexandre Oliva <aoliva@redhat.com>
356 * config/mn10300/mn10300.c
357 (mn10300_get_live_callee_saved_regs): Don't search past
358 LAST_EXTENDED_REGNUM.
359 (mn10300_gen_multiple_store, store_multiple_operation): Likewise.
360 * config/mn10300/mn10300.md: Remove excessive line breaks from
361 `@' output patterns that were accounted as additional
363 * config/mn10300/mn10300.md, config/mn10300/mn10300.c:
364 Re-introduce changes accidentally removed in Richard Sandiford's
366 * config/mn10300/t-mn10300 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
367 Re-instate am33-2 lost in merge from net GCC.
368 2000-08-26 Alexandre Oliva <aoliva@redhat.com>
369 * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Added
370 floating-point registers.
371 2000-08-07 Alexandre Oliva <aoliva@redhat.com>
372 * config/mn10300/mn10300.md (movdf): Revert some am33-specific
373 pessimizations that had gone in on 2000-05-08.
374 2000-06-28 Graham Stott <grahams@cygnus.co.uk>
375 * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Fix typo.
376 2000-06-22 Graham Stott <grahams@cygnus.co.uk>
377 * config/mn10300/mn10300.md (movqi): Use nonimmediate_operand for
384 Wed May 24 13:16:09 2000 Alexandre Oliva <aoliva@cygnus.com>
385 * config/mn10300/mn10300.c (fp_regs_to_save): New function.
386 (can_use_return_insn, initial_offset): Add fp_regs_to_save.
387 (expand_prologue, expand_epilogue): Save and restore FP regs.
388 2000-05-20 Alexandre Oliva <aoliva@cygnus.com>
389 * config/mn10300/mn10300.md (movdi, movdf): 64-bit clean-up.
390 2000-05-13 Alexandre Oliva <aoliva@cygnus.com>
391 * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2, addsf3,
392 subsf3, mulsf3, divsf3, fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4):
394 2000-05-12 Alexandre Oliva <aoliva@cygnus.com>
395 * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2):
396 Discourage the two-argument, longer opcodes.
397 (addsf3, subsf3, mulsf3, divsf3): Likewise for three-argument
399 * config/mn10300/mn10300.h (struct mn10300_cc_status_mdep): New.
400 (CC_STATUS_MDEP, CC_STATUS_MDEP_INIT): Define.
401 * config/mn10300/mn10300.md (cmpsf): New pattern.
402 (branch): Test mdep.fpCC and output fbCC.
403 * config/mn10300/mn10300.c (print_operand): Output conditions.
404 (notice_cc_update): Recognize fcmp and set mdep.fpCC.
405 2000-05-10 Alexandre Oliva <aoliva@cygnus.com>
406 * config/mn10300/mn10300.md (movsf, movdf, addsf3, subsf3,
407 mulsf3, divsf3): Use the `F' constraint for FP values.
408 * config/mn10300/mn10300.c (const_1f_operand): New function.
409 * config/mn10300/mn10300-protos.h (const_1f_operand): Declare.
410 * config/mn10300/mn10300.md (sqrtsf2): New expand.
411 (rsqrtsf2): New insn.
412 2000-05-09 Alexandre Oliva <aoliva@cygnus.com>
413 * config/mn10300/mn10300.md (movdf): Oops, I missed it in my
415 2000-05-08 Alexandre Oliva <aoliva@cygnus.com>
416 * config/mn10300/mn10300.md (abssf2, negdf2): On
417 TARGET_AM33_2, expand to...
418 (abssf2_am33_2, negdf2_am33_2): New insns.
419 (addsf3, subsf3, mulsf3, divsf3): Likewise.
420 (fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4): Likewise.
421 * config/mn10300/mn10300.md (movqi, movhi, movsi, movsf,
422 movdi, movdf): Added FP regs.
423 * invoke.texi (-mam33-2, -mno-am33-2): Document.
424 2000-04-29 Alexandre Oliva <aoliva@cygnus.com>
425 * config/mn10300/mn10300.h (FIRST_FP_REGNUM, LAST_FP_REGNUM):
427 (REGNO_AM33_2_FP_P): Renamed to...
428 (REGNO_FP_P): Redefine in terms of FIRST_* and LAST_*.
429 (CONDITIONAL_REGISTER_USAGE, REGNO_REG_CLASS): Likewise.
430 2000-04-27 Alexandre Oliva <aoliva@cygnus.com>
431 * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Remove FP
432 regs from GENERAL_REGS.
433 2000-04-27 Alexandre Oliva <aoliva@cygnus.com>
434 * config/mn10300/mn10300.h (REGNO_AM33_2_FP_P): New macro.
435 * config/mn10300/mn10300.c (mn10300_address_cost): Added FP_REGS.
436 * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Added FP_REGS.
437 2000-04-23 Alexandre Oliva <aoliva@cygnus.com>
438 * config/mn10300/mn10300.h (CLASS_CANNOT_CHANGE_SIZE): Defined
440 2000-04-21 Alexandre Oliva <aoliva@cygnus.com>
441 * config/mn10300/mn10300.h (OK_FOR_Q): New macro.
442 (EXTRA_CONSTRAINT): Added OK_FOR_Q.
443 * config/mn10300/mn10300.c (secondary_reload_class): Adjust.
444 * config/mn10300/mn10300.c (print_operand): Support `D' for doubles.
445 * config/mn10300/mn10300.h (FIRST_PSEUDO_REGISTER): Adjust.
446 (FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER): Added
447 AM33/2.0 floating-point registers.
448 (CONDITIONAL_REGISTER_USAGE): Adjust.
449 (enum reg_class, REG_CLASS_NAMES): Added FP_REGS and FP_ACC_REGS.
450 (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Adjust.
451 (REG_CLASS_FROM_LETTER): Added `f' and `A'.
452 (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Adjust.
453 * config/mn10300/t-mn10300 (MULTILIB_OPTIONS): Added am33-2.
454 (MULTILIB_DIRNAMES): Likewise.
455 * config/mn10300/mn10300.h (CPP_SPEC): Define `__AM33__=2' and
456 `__AM33_2__' when `-mam33-2' is given.
457 (TARGET_AM33_2): Define.
458 (TARGET_SWITCHES): Adjust.
459 * config/mn10300/mn10300.c (asm_file_start): Print `.am33_2'
462 2003-07-09 Matt Kraai <kraai@alumni.cmu.edu>
464 * doc/install.texi: Add missing @.
466 2003-07-09 Bob Wilson <bob.wilson@acm.org>
468 * config/xtensa/xtensa.h (CRT_CALL_STATIC_FUNCTION): Define.
470 2003-07-09 Aldy Hernandez <aldyh@redhat.com>
473 * config/i386/i386.c (ix86_function_arg_boundary): Remove abort.
475 2003-07-09 Nathanael Nerode <neroden@gcc.gnu.org>
478 * config/arc/t-arc: Replace bogus references to "x-crtinit.o",
479 "x-crtfini.o" with "crtinit.o", "crtfini.o".
481 * fixinc/inclhack.def (limits_ifndefs): Add select test.
482 * fixinc/fixincl.x: Rebuild.
484 * fixinc/inclhack.def (math_exception): Improve bypass and comment.
485 * fixinc/fixincl.x: Rebuild.
487 2003-07-09 Hans-Peter Nilsson <hp@bitrange.com>
489 * doc/install.texi (Configuration): Document the valgrind option
490 to --enable-checking.
492 Wed Jul 9 16:16:30 CEST 2003 Jan Hubicka <jh@suse.cz>
494 * objc-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
496 2003-07-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
498 * c-lex.c (cb_ident): Cast cstr.text to const char *.
500 2003-07-09 Nathan Sidwell <nathan@codesourcery.com>
502 * gcov-io.h: Update documentation.
503 (GCOV_GRAPH_SUFFIX, GCOV_GRAPH_MAGIC): Rename to GCOV_NOTE_SUFFIX,
505 (GCOV_DATA_SUFFIX, GCOV_NOTE_SUFFIX): Update.
506 (GCOV_DATA_MAGIC, GCOV_NOTE_MAGIC): Make non-palindromic.
507 (struct gcov_var): Change buffer's type. Add endian flag.
508 (gcov_open): Remove mode in libgcov.
509 (gcov_magic): Prototype.
510 * gcov-io.c (from_file): New.
511 (gcov_open): Clear endian flag.
513 (gcov_write_bytes, gcov_read_bytes): Return gcov_unsigned_t
515 (gcov_write_unsigned, gcov_write_counter, gcov_write_string,
516 gcov_write_tag, gcov_write_length, gcov_write_tag_length): Update.
517 (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Update.
518 * gcov-iov.c (main): Correct cast.
519 * coverage.c (read_counts_file): Use gcov_magic. Remove endianness
521 (gcov_begin_output): Use GCOV_NOTE_MAGIC.
522 (coverage_init): Use GCOV_NOTE_SUFFIX.
523 * libgcov.c (gcov_version_mismatch): Remove endianness conversion.
524 Rename to gcov_version, and return flag.
525 (gcov_exit): Use gcov_version.
526 (__gcov_init): Use gcov_version.
527 * Makefile.in (coverageexts): Update.
528 * gcov.c (print_version): Remove endianness conversion.
529 (create_file_names): Use GCOV_NOTE_SUFFIX.
530 (read_graph_file): Use gcov_magic.
531 (read_count_file): Likewise.
532 * gcov-dump.c (dump_file): Remove endianness conversion, use
535 2003-07-09 Nathan Sidwell <nathan@codesourcery.com>
537 * configure.in (BUILD_PREFIX, BUILD_PREFIX_1): Set if enable
539 * configure: Regenerated.
540 * Makefile.in (ALL_CFLAGS): Correct its comment.
542 2003-07-08 Mark Mitchell <mark@codesourcery.com>
544 * fold-const.c (make_range): Do not access operand 1 for a
545 zero-operand operator.
547 2003-07-09 Neil Booth <neil@daikokuya.co.uk>
549 * toplev.c (warn_dummy, W_options): Die.
550 (display_help): Don't print W_options.
551 * common.opt: Add W_options help from toplev.c.
553 2003-07-09 Andreas Jaeger <aj@suse.de>
555 * opts.c (wrap_help): Only pass int arguments as arguments to
556 printf's '*' modifier. Change argument of function.
558 2003-07-08 Matt Kraai <kraai@alumni.cmu.edu>
560 * doc/invoke.texi: Fix misspelling of "@item".
562 2003-07-08 Kazu Hirata <kazu@cs.umass.edu>
564 * config/i386/i386.md: Remove an old comment about
567 Wed Jul 9 03:00:10 CEST 2003 Jan Hubicka <jh@suse.cz>
569 * cgraph.c (cgraph_node_name): New function.
570 (dump_cgraph): Use it.
571 * cgraph.h (cgraph_dump_file): Declare.
572 (cgraph_node_name): Declare.
573 * cgraphunit.c: Include timevar.h
574 (cgraph_finalize_compilation_unit): Use timevar; reorganize dumps.
575 (cgraph_optimize_function): Use TV_INTEGRATION.
576 (cgraph_mark_local_functions): reorganize dumps.
577 (cgraph_mark_functions_to_inline_once): Likewise.
578 (cgraph_optimize): Likewise; use timevar.
579 * timevar.def (TV_CGRAPH, TV_CGRAPHOPT): New.
580 * toplev.c (dump_file_index): Add DFI_cgraph.
581 (dump_file_info): Likewise.
582 (cgraph_dump_file): New global variable.
583 (do_compile): Open and close cgraph dump.
584 * invoke.texi (-d): Document new flag; renumber.
586 2003-07-08 Roger Sayle <roger@eyesopen.com>
589 * calls.c (emit_call_1): Don't bother popping the arguments off of
590 the stack after a noreturn function call; The adjustment is dead.
591 (expand_call): Likewise.
593 2003-07-08 Geoffrey Keating <geoffk@apple.com>
595 * expr.c (MOVE_MAX_PIECES): Move from here...
596 * defaults.h (MOVE_MAX_PIECES): ... to here.
598 2003-07-08 Matt Kraai <kraai@alumni.cmu.edu>
600 * Makefile.in (stage1-start): Handle an empty SUBDIRS.
602 2003-07-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
604 * genattr.c (internal_dfa_insn_code): Don't prototype.
605 * genattrtab.c (attr_desc): Add `static_p' field.
606 (expand_units): Make blockage range and ready cost functions
608 (write_attr_get): Don't add extern prototypes in C file. Mark
609 static functions as appropriate.
610 (find_attr, make_internal_attr): Initialize static_p.
611 * genattrtab.h (ATTR_STATIC): New macro.
612 * genautomata.c (output_internal_reset_func): Mark output function
614 (make_internal_dfa_insn_code_attr): Mark output function as static.
616 2003-07-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
618 * genattrtab.h: Add new macros for attr `special' flags.
619 * genattrtab.c (attr_desc): Reorder/resize fields better.
620 Use attr `special' macros in all calls to make_internal_attr.
621 * genautomata.c: Likewise.
623 Wed Jul 9 02:25:39 CEST 2003 Jan Hubicka <jh@suse.cz>
625 * c-common.c (c_estimate_num_insns_1): New static function.
626 (c_estimate_num_insns): New global function.
627 * c-common.h (DECL_NUM_STMTS): Rename to...
628 (DECL_ESTIMATED_INSNS): ... this.
629 (c_estimate_num_insns): Declare.
630 * c-decl.c (duplicate_decls): Use DECL_ESTIMATED_INSNS.
631 * c-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
632 * c-semantics.c (add_stmt): Do not account statements.
633 * langhooks-def.h (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS):
635 * langhooks.h (lang_hooks_for_tree_inlining): Add
637 * params.def (max-inline-insns-auto, max-inline-insns-auto): set
639 (max-inline-insns): set to 300.
640 (min-inline-insns): set to 10.
641 * tree-inline.c (struct inline_data): Rename inlined_stmts to
643 (INSNS_PER_STMT): Kill.
644 (inlinable_function_p): Compute and store body size.
645 (expand_call_inline): Likewise.
646 (optimize_inline_calls): Likewise.
648 2003-07-08 James E Wilson <wilson@tuliptree.org>
651 * emit-rtl.c (set_mem_attribute_minus_bitpos): When handle ARRAY_REF,
652 loop over new variable t2 instead of t.
654 2003-07-08 Danny Smith <dannysmith@users.sourceforge.net>
657 * config/i386/winnt.c: Replace use of error(), warning() with
658 error_with_decl(), warning_with_decl(), throughout.
660 2003-07-08 Neil Booth <neil@daikokuya.co.uk>
662 * opts.c (wrap_help): Use unsigned int, not size_t.
664 2003-07-08 Stephane Carrez <stcarrez@nerim.fr>
666 * config/m68hc11/m68hc11.h (HAVE_AS_DWARF2_DEBUG_LINE): Don't define
667 as .file/.loc directives are incompatible with linker relaxation.
669 2003-07-08 Zack Weinberg <zack@codesourcery.com>
671 * Makefile.in (fixinc.sh): Remove gnu-regex.[ch] from dependencies.
672 * fixinc/Makefile.in: Remove all references to gnu-regex.[och].
673 * fixinc/fixfixes.c, fixinc/fixincl.c, fixinc/fixlib.c
674 * fixinc/fixtests.c: Use xregexec not regexec, xregcomp not regcomp.
675 * fixinc/fixlib.h: Include xregex.h not gnu-regex.h.
676 * fixinc/inclhack.def (hpux10_cpp_pow_inline, hpux11_cpp_pow_inline):
677 Escape { and } characters which are not part of range expressions.
678 * fixinc/fixincl.x: Regenerate.
679 * fixinc/gnu-regex.c, fixinc/gnu-regex.h: Delete file.
681 2003-07-08 Steven Bosscher <steven@gcc.gnu.org>
684 * tree-inline.c (find_alloca_call): Use
685 walk_tree_without_duplicates, instead of walk_tree.
686 (find_builtin_longjmp_call): Likewise.
687 * c-objc-common.c (c_cannot_inline_fn): Likewise.
688 * c-semantics.c (find_reachable_label): Likewise.
690 2003-07-08 Jakub Jelinek <jakub@redhat.com>
693 * config/i386/i386.c (ix86_check_movabs): New function.
694 * config/i386/i386-protos.h (ix86_check_movabs): New prototype.
695 * config/i386/i386.md (movabs[shqd]i_1_rex64): Kill broken alternative.
696 (movabs[shqd]i_[12]_rex64): Add ix86_check_movabs check to conditions.
698 2003-07-08 Chris Demetriou <cgd@broadcom.com>
700 * Makefile.in (install-po): Cope with empty CATALOGS.
702 2003-07-08 Richard Sandiford <rsandifo@redhat.com>
704 * config/mips/elf64.h (TARGET_ASM_UNIQUE_SECTION): Delete.
705 (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
706 (SECTION_FUNCTION_TEMPLATE): Delete.
707 * config/mips/elf.h: As for elf64.h.
708 (ASM_OUTPUT_ALIGNED_BSS): Use named_section rather than sbss_section.
709 * config/mips/linux.h: As for elf.h
710 * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
711 * config/mips/iris6.h (EXTRA_SECTIONS): Delete.
712 (EXTRA_SECTION_FUNCTIONS): Remove sdata_section. Remove the handling
713 of in_sdata from current_section_name and current_section_flags.
714 * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
715 * config/mips/mips.h (sdata_section, sbss_section): Remove prototypes.
716 (MASK_GP_OPT, TARGET_GP_OPT): Delete.
717 (MASK_NO_FUSED_MADD): Use MASK_GP_OPT's old value.
718 (TARGET_SWITCHES): Neuter gpOPT, gpopt, no-gpOPT and no-gpopt.
719 (SMALL_DATA_SECTION, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Remove.
720 * config/mips/mips.c (TARGET_IN_SMALL_DATA_P): Override.
721 (TARGET_SECTION_TYPE_FLAGS): Override if TARGET_IRIX6.
722 (mips_classify_symbol): Use SYMBOL_REF_SMALL_P.
723 (override_options): Remove setting of MASK_GPOPT.
724 (mips_output_external): Use mips_in_small_data_p to check whether a
725 symbol needs an .extern directive. Don't emit such directives for
726 TARGET_EXPLICIT_RELOCS.
727 (mips_declare_object): Update accordingly.
728 (mips_select_rtx_section): Call named_section rather than
730 (mips_select_section): Use default_elf_section_section for everything
731 except .text string constants.
732 (mips_in_small_data_p): New function.
733 (mips_encode_section_info): Remove small data handling.
734 (mips_unique_section): Delete.
735 (iris6_section_type_flags): New function.
736 * doc/tm.texi: Remove documentation of -mgpopt and -mhalf-pic.
738 2003-07-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
741 * pa.md: Disparage all mtsar constraints.
742 (extzv, extv, insv): Don't fail on length of {32|64}.
744 2003-07-08 Zack Weinberg <zack@codesourcery.com>
746 * system.h: Poison MAP_CHARACTER.
747 * config/i370/i370-protos.h (mvs_map_char): Delete.
748 * config/i370/i370.c (ascebc, ebcasc, mvs_map_char): Delete.
749 * config/i370/i370.h (MAP_CHARACTER): Delete definition.
750 (ASM_OUTPUT_ASCII): Don't use MAP_CHARACTER.
752 2003-07-08 Danny Smith <dannysmith@users.sourceforge.net>
754 * toplev.c (randomize): Correct call to time().
756 2003-07-08 Jakub Jelinek <jakub@redhat.com>
758 * unroll.c (reg_dead_after_loop): Check for reg in REG_EQUAL and
759 REG_EQUIV notes as well.
761 2003-07-08 Kazu Hirata <kazu@cs.umass.edu>
763 * doc/md.texi: Fix the description of addmodecc.
765 2003-07-07 Zack Weinberg <zack@codesourcery.com>
767 * Makefile.in (top_builddir): Set to "..", not ".".
768 (INTLLIBS, INTLDEPS): Delete.
769 (LIBINTL, LIBINTL_DEP, LIBICONV_DEP): New variables to be substituted.
770 (LIBDEPS): Add $(LIBICONV_DEP).
771 (LIBS): Take out $(INTLLIBS), add $(LIBINTL) and $(LIBICONV).
772 (INCLUDES): Replace -I../intl with @INCINTL@.
773 ($(top_builddir)/intl/libintl.a): Delete rule.
774 (stage2-start, stage3-start, stage4-start, stageprofile-start,
775 stagefeedback-start): Use $$ for variable to be evaluated by
777 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT,
778 HAVE_LC_MESSAGES, HAVE_STPCPY): Delete.
779 * aclocal.m4: sinclude ../config/progtest.m4. Add
780 contents of lcmessage.m4 from gettext distro.
781 * configure.in: Check for wchar.h and setlocale. Set
782 LIBICONV_DEP to the empty string and substitute it.
783 Call AM_LC_MESSAGES. Delete AC_ARG_ENABLE for --enable-nls;
784 this is handled elsewhere. Use ZW_GNU_GETTEXT_SISTER_DIR,
785 not CY_GNU_GETTEXT. Clear $LIBICONV if its text is included
786 in $LIBINTL, to avoid linking it twice.
787 * configure, config.in: Regenerate.
789 2003-07-08 Nathanael Nerode <neroden@gcc.gnu.org>
791 * fixinc/mkfixinc.sh: Remove winnt support.
792 * fixinc/fixinc.winnt: Delete with extreme prejudice.
794 2003-07-08 Neil Booth <neil@daikokuya.co.uk>
796 * Makefile.in: Update.
797 * c-opts.c (c_common_handle_option): opt_text now contains the '-'.
798 * c.opt: Update documentation.
799 * common.opt: Add some help text.
800 * opts.c: Include intl.h.
801 (wrap_help, print_help): New.
802 (find_opt, handle_option, common_handle_option): opt_text now
803 contains the '-'. Use print_help to output help.
804 * opts.h (struct cl_option): New member "help".
805 * opts.sh: Update to handle help text output and to prepend
807 * toplev.c (display_help): Remove some help text.
809 2003-07-07 David Edelsohn <edelsohn@gnu.org>
810 Fariborz Jahanian <fjahanian@apple.com>
812 * configure.in: Test for PowerPC mfcr field support in assembler.
813 * config.in, configure: Regenderated.
815 * config/rs6000/power4.md: Add mfcrf reservation.
816 * config/rs6000/rs6000-protos.h (mfcr_operation): Declare.
817 * config/rs6000/rs6000.c (mfcr_operation): Define.
818 (print_operand): Add 'Q' case for mfcrf.
819 * config/rs6000/rs6000.h (TARGET_MFCRF): New.
820 * config/rs6000/rs6000.md (attribute "type"): Add mfcrf.
821 (movcc_internal1): Emit optional field operand for mfcr and set
822 "type" attribute appropriately.
823 (mfcr SCC): Likewise.
824 (movesi_from_cr_one): New.
826 2003-07-07 Roger Sayle <roger@eyesopen.com>
828 * config/i386/i386.md: Correct check-in of incorrect version.
830 2003-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
832 * bitmap.c (debug_bitmap_file): Merge uses of HOST_PTR_PRINTF with
833 adjacent stdio calls.
834 * c-decl.c (c_print_identifier): Likewise.
835 * mips-tfile.c (write_varray, write_object, allocate_cluster): Likewise.
836 * print-rtl.c (print_rtx): Likewise.
837 * print-tree.c (print_node_brief, print_node): Likewise.
838 * system.h (HOST_PTR_PRINTF): Ensure we have a literal string.
840 * configure.in (AC_COMPILE_CHECK_SIZEOF): Check for `void *'.
841 * config.in, configure: Regenerated.
843 2003-07-07 Roger Sayle <roger@eyesopen.com>
846 * config/i386/i386.md (atan2df3, atan2sf3, atan2xf3, atan2tf3):
847 Changed to define_expand patterns that copy operand[1] to prevent
848 it from being clobbered before emitting an atan2?f3_1 insn.
849 (atan2df3_1, atan2sf3_1, atan2xf_1, atan2tf3_1): New define_insn
850 patterns that actually specify the behaviour of x87's FPATAN.
852 2003-07-07 Jakub Jelinek <jakub@redhat.com>
854 * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Remove bogus
855 clearing of SYMBOL_FLAG_LOCAL bit.
856 If vcall_offset fits into signed 16-bit immediate, use
857 one instruction for both addition and load.
859 2003-07-07 Neil Booth <neil@daikokuya.co.uk>
861 * opts.c (common_handle_option): Correct handling of the
862 -falign- switches that do and don't take an argument.
864 2003-07-07 Kazu Hirata <kazu@cs.umass.edu>
866 * config/h8300/h8300.md (pushqi1_h8300hs): Revert my patch
868 (pushhi1_h8300hs): Likewise.
870 2003-07-07 Andreas Jaeger <aj@suse.de>
872 * genextract.c: Convert remaining prototypes to ISO C90.
874 * cpplex.c (_cpp_free_buff): Convert prototype to ISO C90.
875 * fold-const.c (fold_single_bit_test): Likewise.
876 * diagnostic.c (default_diagnostic_finalizer): Likewise.
877 * cfgrtl.c (rtl_redirect_edge_and_branch): Likewise.
879 * gengtype.c (write_array): Generate ISO C90 prototypes.
881 * genflags.c (gen_proto): Generate ISO C90 prototypes.
883 2003-07-07 Roger Sayle <roger@eyesopen.com>
885 PR optimization/11059
886 * expr.c (can_store_by_pieces): Return true if length is zero.
887 (store_by_pieces): If length is zero and endp is two, abort,
888 othwerise, if length is zero and endp is not two, return "to".
889 (clear_by_pieces): Do nothing if length is zero.
890 (clear_storage): Do nothing if length is zero.
891 (store_constructor): Simplify code when size is zero, or the
892 target has already been cleared. This avoids emitting a
893 blockage instruction when initializing empty structures.
895 2003-07-07 Andreas Jaeger <aj@suse.de>
897 * mips-tfile.c: Convert prototypes to ISO C90.
898 * mips-tdump.c: Convert prototypes to ISO C90.
900 2003-07-07 Nathan Sidwell <nathan@codesourcery.com>
902 * rtl.h (emit_line_note): Take a location_t.
903 (emit_line_note_force): Remove.
904 (set_file_and_line_for_statement): Take a location_t.
905 * tree.g (emit_line_note): Take a location_t.
906 * emit-rtl.c (emit_line_note): Take a location_t.
907 (emit_line_note_force): Remove.
908 * function.c (init_function_start): Adjust emit_line_note call.
909 (expand_function_end): Use force_next_line_note, not
910 emit_line_note_force.
911 * c-parse.in (maybe_type_qual): Adjust emit_line_note calls.
912 * c-semantics.c (genrtl_do_pushlevel, genrtl_goto_stmt,
913 genrtl_expr_stmt_value, genrtl_decl_stmt, genrtl_if_stmt,
914 genrtl_while_stmt, genrtl_do_stmt_1, genrtl_return_stmt,
915 genrtl_for_stmt, genrtl_break_stmt, genrtl_continue_stmt,
916 genrtl_continue_stmt, genrtl_switch_stmt,
917 genrtl_asm_stmt): Likewise.
918 * expr.c (expand_expr): Likewise.
919 * integrate.c (expand_inline_function): Likewise.
920 * stmt.c (set_file_and_line_for_stmt): Take a location_t.
921 (expand_decl_init): Adjust emit_line_note call.
923 2003-07-07 Dale Johannesen <dalej@apple.com>
925 * config/rs6000/darwin-tramp.asm: Fix trampolines. PR 10900.
927 2003-07-07 Andreas Jaeger <aj@suse.de>
929 * config/i386/i386-protos.h: Convert prototypes to ISO C90.
930 * config/i386/i386.c: Likewise.
932 2003-07-07 Kazu Hirata <kazu@cs.umass.edu>
934 * config/h8300/h8300.md: Use gen_int_mode instead of
935 GEN_INT (trunc_int_for_mode (...)).
937 2003-07-07 Kazu Hirata <kazu@cs.umass.edu>
939 * config/h8300/h8300.md (pushqi1_h8300hs): Optimize by pushing
940 2 bytes and then subtract 2 from the stack pointer.
941 (pushhi1_h8300hs): Likewise.
943 2003-07-07 Nathan Sidwell <nathan@codesourcery.com>
945 * configure.in (enable_coverage): Remove -DSELF_COVERAGE, add
947 * configure: Regenerated.
948 * Makefile.in: Remove extraneous comment.
949 * toplev.c (randomize): Protect against potential multiple calls.
950 * doc/invoke.texi (-frandom-seed): Document use for in coverage
953 2003-07-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
954 Eric Botcazou <ebotcazou@libertysurf.fr>
956 PR optimization/11198
957 * alias.c (objects_must_conflict_p): Return 1 if the types have
958 the same alias set, not if the alias sets only conflict.
960 2003-07-07 Andrew Pinski <pinskia@physics.uc.edu>
962 * cppcharset.c (ICONV_CONST): Define iff !HAVE_ICONV.
963 (convert_cset): Change inbuf to type ICONV_CONST char.
964 * Makefile.in (LIBS): Add LIBICONV.
966 * doc/invoke.texi (-falign-functions): Document that
967 when n is zero then a machine-dependent default is used.
968 (-falign-labels): Document that when n is zero then a
969 machine-dependent default is used and that -falign-labels =1
970 is equivalent to -fno-align-labels.
971 (-falign-loops): Likewise.
972 (-falign-jumps): Likewise.
974 2003-07-06 Art Haas <ahaas@airmail.net>
976 * f/global.c (ffeglobal_type_string_): Fix obsolete GCC array
979 2003-07-06 James E Wilson <wilson@tuliptree.org>
982 * rtl.h (mem_for_const_double): Delete prototype.
983 * varasm.c (mem_for_const_double): Delete function.
984 * config/m68k/hp320.h, config/m68k/linux.h, config/m68k/m68kelf.h,
985 config/m68k/m68kv4.h, config/m68k/netbsd-elf.h
986 (LEGITIMATE_PIC_OPERAND_P): Delete duplicate definitions.
987 * config/m68k/m68k.h (LEGITIMATE_CONSTANT_P): Disallow XFmode.
988 (LEGITIMATE_PIC_OPERAND_P): Delete CONST_DOUBLE tests.
989 * config/m68k/m68k.md (movxf): Add reload_in_progress guard. Add
990 comment about confused support for XFmode constants.
992 Mon Jul 7 02:03:56 CEST 2003 Jan Hubicka <jh@suse.cz>
994 * cfglayout.c (fixup_reorder_chain): Call delete_dead_jumptables.
996 2003-07-06 Kazu Hirata <kazu@cs.umass.edu>
998 * config/h8300/h8300.c: Fix comment typos.
999 * config/h8300/h8300.md: Likewise.
1000 * config/i386/athlon.md: Likewise.
1001 * config/i386/i386.c: Likewise.
1002 * config/i386/pentium.md: Likewise.
1003 * config/ia64/ia64.c: Likewise.
1004 * config/ia64/itanium1.md: Likewise.
1005 * config/ia64/itanium2.md: Likewise.
1006 * config/m32r/m32r.md: Likewise.
1007 * config/m68hc11/m68hc11.c: Likewise.
1008 * config/mcore/mcore.c: Likewise.
1009 * config/mips/sr71k.md: Likewise.
1010 * config/mips/t-iris5-as: Likewise.
1011 * config/mmix/mmix.h: Likewise.
1012 * config/ns32k/ns32k.h: Likewise.
1013 * config/ns32k/NOTES: Fix a typo.
1015 2003-07-06 Andreas Jaeger <aj@suse.de>
1017 * stmt.c: Convert remaining prototypes to ISO C90.
1018 * cfglayout.c: Likewise.
1019 * dbxout.c: Likewise.
1021 * genemit.c: Likewise.
1023 * basic-block.h: Convert prototypes to ISO C90.
1024 * c-parse.in: Likewise.
1025 * c-pragma.h: Likewise.
1026 * c-typeck.c: Likewise.
1027 * cfghooks.h: Likewise.
1028 * cfgloopanal.c: Likewise.
1029 * dbxout.h: Likewise.
1030 * debug.h: Likewise.
1031 * dwarf2asm.h: Likewise.
1033 * gengtype-lex.l: Likewise.
1034 * sched-int.h: Likewise.
1035 * timevar.c: Likewise.
1037 2003-07-06 Neil Booth <neil@daikokuya.co.uk>
1039 * c-common.h (c_comon_handle_filename,
1040 c_common_missing_arguement): New.
1041 * c-lang.c (LANG_HOOKS_HANDLE_FILENAME,
1042 LANG_HOOKS_MISSING_ARGUMENT): New.
1043 * c-opts.c (missing_arg): Rename c_common_missing_argument,
1044 update to be an appropriate langhook.
1045 (c_common_handle_option): Don't handle filenames.
1046 (c_common_handle_filename): New.
1047 * hooks.c (hook_void_constcharptr,
1048 hook_bool_constcharptr_size_t_false): New.
1049 * hooks.h (hook_void_constcharptr,
1050 hook_bool_constcharptr_size_t_false): New.
1051 * langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME,
1052 LANG_HOOKS_MISSING_ARGUMENT): New.
1053 (LANG_HOOKS_INITIALIZER): Update.
1054 * langhooks.h (struct lang_hooks): Add handle_filename and
1056 * opts.c (handle_option): Don't handle filenames here, but ...
1057 (handle_options): ... here.
1058 (common_handle_option): Don't handle missing arguments here.
1059 * objc/objc-lang.c (LANG_HOOKS_HANDLE_FILENAME,
1060 LANG_HOOKS_MISSING_ARGUMENT): New.
1062 2003-07-06 Neil Booth <neil@daikokuya.co.uk>
1064 * Makfile.in: Remove traces of mbchar.
1065 * c-parse.in (MULTIBYTE_CHARS): Remove.
1066 * config.in (MULTIBYTE_CHARS): Remove.
1067 * configure: Remove --enable-mbchar.
1068 * configure.in: Remove --enable-mbchar.
1069 * mbchar.c, mbchar.h: Remove.
1070 * system.h: Poison MULTIBYTE_CHARS.
1071 * config/linux-aout.h (MULTIBYTE_CHARS): Remove.
1072 * config/linux.h (MULTIBYTE_CHARS): Remove.
1073 * config/svr4.h (MULTIBYTE_CHARS): Remove.
1074 * config/sparc/linux.h (MULTIBYTE_CHARS): Remove.
1076 2003-07-06 Andreas Jaeger <aj@suse.de>
1078 * varray.c (varray_check_failed): Fix typo.
1080 * unroll.c: Convert prototypes to ISO C90.
1081 * varasm.c: Likewise.
1082 * varray.c: Likewise.
1083 * varray.h: Likewise.
1084 * vmsdbgout.c: Likewise.
1085 * xcoffout.c: Likewise.
1086 * xcoffout.h: Likewise.
1088 2003-07-06 Nathan Sidwell <nathan@codesourcery.com>
1090 * gcov-io.h: Add a local time stamp.
1091 (struct gcov_info): Add stamp field.
1092 (gcov_truncate): New.
1093 * coverage.c (read_counts_file): Skip the stamp.
1094 (coverage_begin_output): Write the stamp.
1095 (build_gcov_info): Declare and init the stamp.
1096 (coverage_finish): Only unlink data file, if stamp is zero.
1097 * gcov-dump.c (dump_file): Dump the stamp.
1098 * gcov.c (bbg_stamp): New.
1099 (release_structures): Clear bbg_stamp.
1100 (read_graph_file): Read stamp.
1101 (read_count_file): Check stamp.
1102 * libgcov.c (gcov_exit): Check stamp and truncate if needed.
1104 2003-07-06 Nathan Sidwell <nathan@codesourcery.com>
1106 * tree.h (default_flag_random_seed): Remove.
1107 * toplev.h (local_tick): Declare.
1108 * tree.c (flag_random_seed, default_flag_random_seed): Move to
1110 (append_random_chars): Don't call default_flag_random_seed.
1111 * toplev.c (flag_random_seed): Define here. Set local_tick.
1112 (local_tick): Define.
1113 (randomize): New, moved from tree.c.
1114 (print_switch_values): Adjust.
1115 (toplev_main): Call randomize.
1117 2003-07-06 Nathan Sidwell <nathan@codesourcery.com>
1119 * tree.h (crc32_string): Declare.
1120 * tree.c (append_random_chars): Remove.
1121 (crc32_string): New.
1122 (get_file_function_name_long): Use crc32_string here.
1124 2003-07-06 Andreas Jaeger <aj@suse.de>
1126 * gcc.c: Convert prototypes to ISO C90.
1128 * gcov-dump.c: Likewise.
1129 * gcov-iov.c: Likewise.
1131 * genattrtab.h: Likewise.
1133 * global.c: Likewise.
1134 * graph.c: Likewise.
1135 * graph.h: Likewise.
1136 * hosthooks.h: Likewise.
1137 * hooks.h: Likewise.
1138 * hooks.c: Likewise.
1139 * hashtable.h: Likewise.
1140 * hashtable.c: Likewise.
1141 * haifa-sched.c: Likewise.
1142 * integrate.h: Likewise.
1143 * integrate.c: Likewise.
1144 * input.h: Likewise.
1145 * ifcvt.c: Likewise.
1147 * langhooks-def.h: Likewise. Add extern to prototypes.
1148 * langhooks.c: Likewise.
1149 * langhooks.h: Likewise.
1151 * local-alloc.c: Likewise.
1152 * loop-init.c: Likewise.
1153 * loop-unroll.c: Likewise.
1154 * loop-unswitch.c: Likewise.
1156 * loop.h: Likewise. Add extern to prototypes.
1157 * machmode.h: Likewise.
1159 * mbchar.c: Likewise.
1160 * mbchar.h: Likewise.
1161 * mkdeps.c: Likewise.
1162 * mkdeps.h: Likewise.
1163 * optabs.c: Likewise.
1164 * optabs.h: Likewise.
1165 * output.h: Likewise.
1166 * gccspec.c: Likwise.
1167 * postreload.c: Likewise.
1168 * prefix.c: Likewise.
1169 * prefix.h: Likewise.
1170 * print-rtl.c: Likewise.
1171 * print-tree.c: Likewise.
1172 * profile.c: Likewise.
1173 * read-rtl.c: Likewise.
1176 * recog.c: Likewise.
1177 * recog.h: Likewise.
1178 * reg-stack.c: Likewise.
1179 * regclass.c: Likewise.
1180 * regmove.c: Likewise.
1181 * regrename.c: Likewise.
1183 * reload.c: Likewise.
1184 * reload.h: Likewise.
1185 * reload1.c: Likewise.
1186 * reorg.c: Likewise.
1187 * resource.c: Likewise.
1188 * resource.h: Likewise.
1189 * rtl-error.c: Likewise.
1192 * rtlanal.c: Likewise.
1193 * sbitmap.c: Likewise.
1194 * sbitmap.h: Likewise.
1195 * scan-decls.c: Likewise.
1197 * sched-deps.c: Likewise.
1198 * sched-ebb.c: Likewise.
1199 * sched-int.h: Likewise.
1200 * sched-rgn.c: Likewise.
1201 * sched-vis.c: Likewise.
1202 * sibcall.c: Likewise.
1203 * simplify-rtx.c: Likewise.
1204 * sreal.c: Likewise.
1205 * sreal.h: Likewise.
1206 * ssa-ccp.c: Likewise.
1207 * ssa-dce.c: Likewise.
1210 * stack.h: Likewise.
1212 * stor-layout.c: Likewise.
1213 * stringpool.c: Likewise.
1214 * target.h: Likewise.
1215 * timevar.c: Likewise.
1216 * timevar.h: Likewise.
1217 * tlink.c: Likewise.
1218 * tracer.c: Likewise.
1219 * tree-inline.c: Likewise.
1220 * tree-inline.h: Likewise.
1224 2003-07-05 Kazu Hirata <kazu@cs.umass.edu>
1226 * combine.c (nonzero_bits1): Fix a warning.
1228 2003-07-05 Kazu Hirata <kazu@cs.umass.edu>
1230 * config/h8300/h8300.c (compute_mov_length): Correct the
1231 length of loading CONST0_RTX (SFmode).
1233 2003-07-05 Nathan Sidwell <nathan@codesourcery.com>
1235 * toplev.c (output_clean_symbol_name): Remove.
1236 * toplev.h (output_clean_symbol_name): Remove.
1237 * config/alpha/alpha.c (unicosmk_output_module_name): Use
1238 lbasename & clean_symbol_name.
1240 2003-07-05 Kazu Hirata <kazu@cs.umass.edu>
1242 * ggc.h: Follow spelling conventions.
1243 * config/i386/i386.c: Likewise.
1244 * config/i386/winnt.c: Likewise.
1245 * config/rs6000/rs6000.c: Likewise.
1247 2003-07-05 Kazu Hirata <kazu@cs.umass.edu>
1249 * bt-load.c: Fix comment typos.
1250 * c-incpath.c: Likewise.
1252 * cfgcleanup.c: Likewise.
1253 * cfgloop.h: Likewise.
1254 * cfgloopmanip.c: Likewise.
1255 * cfgrtl.c: Likewise.
1256 * diagnostic.h: Likewise.
1257 * dwarfout.c: Likewise.
1258 * emit-rtl.c: Likewise.
1259 * et-forest.c: Likewise.
1260 * et-forest.h: Likewise.
1263 * genattr.c: Likewise.
1265 * langhooks.h: Likewise.
1266 * local-alloc.c: Likewise.
1267 * loop-unroll.c: Likewise.
1268 * loop-unswitch.c: Likewise.
1269 * ra-build.c: Likewise.
1270 * regclass.c: Likewise.
1271 * regmove.c: Likewise.
1272 * rtl.def: Likewise.
1273 * rtlanal.c: Likewise.
1274 * sched-ebb.c: Likewise.
1275 * sched-rgn.c: Likewise.
1276 * simplify-rtx.c: Likewise.
1278 * tracer.c: Likewise.
1281 2003-07-05 Zack Weinberg <zack@codesourcery.com>
1283 * cppcharset.c: Use the correct return type for the fallback iconv
1286 Sat Jul 5 16:18:53 CEST 2003 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
1288 Blame to Jan Hubicka <jh@suse.cz>
1289 * cfglayout.c (record_effective_endpoints): Split insns before
1290 first basic block correctly.
1292 2003-07-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
1294 * expr.c (expand_expr, case COMPONENT_REF): When seeing if should use
1295 bitfield operations, use STRICT_ALIGNMENT, not SLOW_UNALIGNED_ACCESS
1296 if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
1298 2003-07-05 Andreas Jaeger <aj@suse.de>
1300 * genattrtab.c (write_attr_get): Revert part of last patch to
1301 always write out a prototype.
1303 * genemit.c (gen_split): Readd lost unused attributes in last
1306 2003-07-05 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
1308 * cfgloopmanip.c (force_single_succ_latches): Force latch to be
1309 different from header.
1311 2003-07-05 Andreas Schwab <schwab@suse.de>
1313 * config/m68k/m68k.c: Remove code protected by CRDS.
1314 * config/m68k/m68k.md: Likewise.
1316 2003-07-05 Neil Booth <neil@daikokuya.co.uk>
1319 * c-opts.c (permit_fortran_options): New.
1320 (c_common_init_options): Accept fortran front end options if
1321 it looks like we might be preprocessing Fortran.
1322 (c_common_handle_option): Don't reject switch if permit_fotran_options.
1324 2003-07-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1326 * genattr.c (internal_dfa_insn_code): Output prototype.
1327 * genattrtab.c: Don't output unnecessary decls, output in ISO C.
1328 * genautomata.c: Likewise.
1329 * genconditions.c: Likewise.
1330 * genemit.c: Likewise.
1331 * genextract.c: Likewise.
1332 * gengenrtl.c: Likewise.
1333 * gengtype.c: Likewise.
1334 * genopinit.c: Likewise.
1335 * genoutput.c: Likewise.
1336 * genpeep.c: Likewise.
1337 * genrecog.c: Likewise.
1339 2003-07-04 Zack Weinberg <zack@codesourcery.com>
1341 * cpplib.h (CPP_AT_NAME, CPP_OBJC_STRING): New token types.
1342 (struct cpp_options): Add narrow_charset, wide_charset,
1343 bytes_big_endian fields. Remove EBCDIC field.
1344 (cpp_init_iconv, cpp_interpret_string): New external interfaces.
1346 * cpphash.h: Include <iconv.h> if we have it, otherwise
1347 provide a dummy definition of iconv_t.
1348 (struct cpp_reader): Add narrow_cset_desc and wide_cset_desc fields.
1349 (_cpp_valid_ucn): Update prototype.
1350 (_cpp_destroy_iconv): New prototype.
1352 * doc/cpp.texi: Document character set handling.
1353 * doc/cppopts.texi: Document -fexec-charset= and -fexec-wide-charset=.
1354 * doc/extend.texi: Delete entire section on multiline strings.
1355 Rewrite section on __FUNCTION__ etc now that these are
1358 * cppucnid.tab, cppucnid.pl: New files.
1359 * cppucnid.h: New generated file.
1360 * cppcharset.c: Include cppucnid.h. Lots of commentary added.
1361 (iconv_open, iconv, iconv_close): Provide dummy definitions
1363 (SOURCE_CHARSET, struct strbuf, init_iconv_desc, cpp_init_iconv,
1364 _cpp_destroy_iconv, convert_cset, width_to_mask, convert_ucn,
1365 emit_numeric_escape, convert_hex, convert_oct, convert_escape,
1366 cpp_interpret_string, narrow_str_to_charconst,
1367 wide_str_to_charconst): New.
1368 (ucn_valid_in_identifier): Use a binary search through the
1369 ucnranges table defined in cppucnid.h, not a long chain of if
1371 (_cpp_valid_ucn): Add a limit pointer. Downgrade "universal
1372 character names are only valid in C++ and C99" to a warning.
1373 Issue the "meaning of \[uU] is different in traditional C"
1374 warning here. Take care not to let iconv see an invalid UCS
1375 value if we get a malformed UCN. Issue an error if we don't
1377 (cpp_interpret_charconst): Moved here from cpplex.c. Use
1378 cpp_interpret_string to do the heavy lifting.
1380 * cppinit.c (cpp_create_reader): Initialize bytes_big_endian,
1381 narrow_charset, wide_charset fields of options structure.
1382 (cpp_destroy): Call _cpp_destroy_iconv.
1383 * cpplex.c (forms_identifier_p): Adjust call to _cpp_valid_ucn.
1384 (maybe_read_ucn, hex_digit_value, cpp_parse_escape): Delete.
1385 (cpp_interpret_charconst): Moved to cppcharset.c.
1386 * cpplib.c (dequote_string): Delete.
1387 (interpret_string_notranslate): New.
1388 (do_line, do_linemarker): Use interpret_string_notranslate.
1390 * Makefile.in (cppcharset.o): Depend on cppucnid.h.
1392 * c-common.c (fname_string, combine_strings): Delete.
1393 * c-common.h (fname_string, combine_strings): Delete prototypes.
1394 * c-lex.c (ignore_escape_flag): Delete.
1395 (cb_ident): Use cpp_interpret_string, not lex_string.
1396 (get_nonpadding_token): New function.
1397 (c_lex): Handle Objective-C @-prefixed identifiers and strings here.
1398 Adjust calls to lex_string. Don't write *value twice.
1399 (lex_string): Now handles string constant concatenation.
1400 Most of the work handed off to cpp_interpret_string.
1401 Call fix_string_type here.
1402 * c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): Replace with
1403 FUNC_NAME, throughout.
1404 (OBJC_STRING): New token type.
1405 (primary:STRING): No need to call fix_string_type here.
1406 (primary:objc_string): Make that OBJC_STRING.
1407 (objc_string nonterminal): Delete.
1408 (yylexname): Delete code to handle fake string constants.
1409 (yylexstring): Delete entirely.
1410 (_yylex): Handle CPP_AT_NAME and CPP_OBJC_STRING. No need
1411 to handle CPP_ATSIGN.
1413 * c.opt (-fexec-charset=, -fwide-exec-charset=): New options.
1414 * c-opts.c (missing_arg, c_common_handle_option): Handle
1415 OPT_fexec_charset_ and OPT_fwide_exec_charset_.
1416 (c_common_init): Set cpp_opts->bytes_big_endian, not
1417 cpp_opts->EBCDIC. Call cpp_init_iconv.
1418 (print_help): Document -fexec-charset= and -fexec-wide-charset=.
1419 (TARGET_EBCDIC): Delete default definition.
1421 * objc/objc-act.c (build_objc_string_object): No need to
1422 handle string constant concatenation.
1424 2003-07-04 Kazu Hirata <kazu@cs.umass.edu>
1426 * doc/install.texi: Fix typos.
1427 * doc/invoke.texi: Likewise.
1428 * doc/tm.texi: Likewise.
1430 2003-07-04 Kazu Hirata <kazu@cs.umass.edu>
1432 * config/pa/fptr.c: Fix comment typos.
1433 * config/pa/pa-64.h: Likewise.
1434 * config/pa/pa.c: Likewise.
1435 * config/pa/pa.h: Likewise.
1436 * config/rs6000/603.md: Likewise.
1437 * config/rs6000/7xx.md: Likewise.
1438 * config/rs6000/darwin.h: Likewise.
1439 * config/rs6000/freebsd.h: Likewise.
1440 * config/rs6000/rs6000.c: Likewise.
1441 * config/rs6000/rs6000.md: Likewise.
1442 * config/rs6000/spe.h: Likewise.
1444 2003-07-04 Ulrich Weigand <uweigand@de.ibm.com>
1446 * config/s390/2064.md: Change GNU CC to GCC.
1447 * config/s390/2084.md: Likewise.
1448 * config/s390/fixdfdi.h: Likewise.
1449 * config/s390/linux.h: Likewise.
1450 * config/s390/s390-modes.def: Likewise.
1451 * config/s390/s390-protos.h: Likewise.
1452 * config/s390/s390.c: Likewise.
1453 * config/s390/s390.h: Likewise.
1454 * config/s390/s390.md: Likewise.
1455 * config/s390/s390x.h: Likewise.
1457 2003-07-04 Jeff Law <law@redhat.com>
1460 * expr.c (do_store_flag): Pass in the correct result type
1461 when calling fold_single_bit_test.
1462 * fold-const.c (fold_single_bit_test): Use result_type for the
1463 result when folding a sign bit test.
1465 2003-07-04 Neil Booth <neil@daikokuya.co.uk>
1467 * opts.c (common_handle_options): Negate sense of -falign- switches.
1469 2003-07-04 H.J. Lu <hongjiu.lu@intel.com>
1471 * Makefile.in: Replace PWD with PWD_COMMAND.
1473 2003-07-04 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
1475 * cfgloopanal.c (count_strange_loop_iterations): New static function.
1476 (constant_iterations, count_loop_iterations, simple_loop_exit_p):
1477 Handle strange loops.
1479 2003-07-04 Toon Moene <toon@moene.indiv.nluug.nl>
1481 * install.texi: Even the g77 manpage is derived from
1482 the full g77 manual.
1484 2003-07-04 Zack Weinberg <zack@codesourcery.com>
1486 * ABOUT-NLS: Delete.
1487 * intl: Delete entire directory.
1488 * aclocal.m4: Include ../config/gettext.m4. Delete
1489 AC_ISC_POSIX, AM_LANGINFO_CODESET, jm_GLIBC21, AM_LC_MESSAGES,
1490 AM_PATH_PROG_WITH_TEST, AM_WITH_NLS, and AM_GNU_GETTEXT.
1491 * configure.in: Use CY_GNU_GETTEXT, not AM_GNU_GETTEXT.
1492 Remove intl/Makefile from all_outputs.
1493 * configure, config.in: Regenerate.
1494 * Makefile.in: Expunge all references to intl subdirectory.
1495 Add -I../intl to INCLUDES.
1496 * intl.h: Include libintl.h if and only if ENABLE_NLS is defined.
1498 2003-07-04 Roger Sayle <roger@eyesopen.com>
1500 * config/rs6000/aix51.h (TARGET_C99_FUNCTIONS): Define.
1501 * config/rs6000/aix52.h (TARGET_C99_FUNCTIONS): Likewise.
1503 2003-07-04 Danny Smith <dannysmith@users.sourceforge.net>
1505 PR c++/5287, PR c++/7910, PR c++/11021
1506 * config/i386/winnt.c (ix86_handle_dll_attribute): Don't add
1507 dllimport attribute if function is defined at declaration, but
1508 report error instead. Likewise for dllimport'd variable
1509 definitions. Set implicit TREE_PUBLIC for dllimport'd variables
1510 declared within functions, Report error if dllimport or dllexport
1511 symbol is not global.
1512 (i386_pe_dllimport_p): Ignore dllimport attribute of functions
1513 if defined after declaration or if inlined. Don't allow definition
1514 of static data members of C++ classes. Don't dllimport virtual
1516 (i386_pe_mark_dllexport): Warn about inconsistent dll attributes.
1517 (i386_pe_mark_dllimport): Remove unnecessary checks.
1518 (i386_pe_encode_section_info): Warn if the dllimport attribute
1519 and symbol prefix have been instantiated and then overridden.
1521 * doc/extend.texi: Document dllimport and dllexport attributes.
1523 * config/i386/winnt.c (i386_pe_output_labelref): Fix indents.
1525 2003-07-03 Uwe Stieber <uwe@kaos-group.de>
1527 * config/kaos.h (CPP_PREDEFINES): Delete.
1528 (TARGET_OS_CPP_BUILTINS): New.
1530 2003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1532 * c-aux-info.c: Include toplev.h after c-tree.h.
1533 * c-common.c: Likewise.
1534 (GCC_DIAG_STYLE): Undef.
1535 * c-semantics.c (GCC_DIAG_STYLE): Define.
1536 * c-tree.h (GCC_DIAG_STYLE): Likewise.
1537 * diagnostic.h (inform): Move prototype to toplev.h.
1538 * jump.c: Include diagnostic.h before toplev.h.
1539 * toplev.h (GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG): Define.
1540 (warning, error, fatal_error, pedwarn, sorry, inform,
1541 error_for_asm, warning_for_asm): Mark with ATTRIBUTE_GCC_CXXDIAG.
1543 2003-07-03 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
1545 * cfglayout.c (cfg_layout_duplicate_bb): Do not update frequencies
1546 at all if edge is not specified.
1547 (can_copy_bbs_p, copy_bbs): New.
1548 * cfglayout.h (can_copy_bbs_p, copy_bbs): Declare.
1549 * cfgloop.c (get_loop_body): Comment more precisely.
1550 * cfgloopmanip.c (copy_bbs, record_exit_edges): Removed.
1551 (scale_bbs_frequencies): Fix comment typo.
1552 (can_duplicate_loop_p): Use can_copy_bbs_p.
1553 (duplicate_loop_to_header_edge): Simplify by using copy_bbs.
1555 2003-07-03 Devang Patel <dpatel@apple.com>
1557 * c-opts.c (c_common_parse_file): Remove extra
1558 debug_hooks->start_source_file call.
1560 2003-07-03 Roger Sayle <roger@eyesopen.com>
1562 * real.c (real_trunc, real_floor, real_ceil): New functions
1563 to implement trunc, floor and ceil respectively.
1564 * real.h (real_trunc, real_floor, real_ceil): Prototype here.
1565 * builtins.c (integer_valued_real_p): New function to test if
1566 a floating point expression has an integer valued result.
1567 (fold_trunc_transparent_mathfn): Optimize foo(foo(x)) as
1568 foo(x) where foo is an integer rounding function. Similarly,
1569 optimize foo(bar(x)) as bar(x), and foo((double)(int)x) as
1570 (double)(int)x when both foo and bar are integer rounding
1571 functions and we don't need to honor errno.
1572 (fold_builtin_trunc, fold_builtin_floor, fold_builtin_ceil):
1573 New functions to fold trunc, floor and ceil.
1574 (fold_builtin): Use fold_builtin_trunc to fold BUILT_IN_TRUNC*,
1575 fold_builtin_floor to fold BUILT_IN_FLOOR* and fold_builtin_ceil
1576 to fold BUILT_IN_CEIL*.
1577 * fold-const.c (tree_expr_nonnegative_p): Handle FLOAT_EXPR and
1578 the remaining integer rounding functions.
1580 2003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr>
1582 * config/sparc/sparc.c (function_arg_partial_nregs): Use
1583 SPARC_INT_ARG_MAX to determine where to split unnamed
1584 complex FP arguments.
1586 Thu Jul 3 20:36:47 CEST 2003 Jan Hubicka <jh@suse.cz>
1588 * basic-block.h (create_basic_block, merge_blocks_nomove): Kill.
1589 * cfgcleanup.c (merge_blocks): Rename to merge_blocks_move.
1590 (merge_blocks_move_predecessor_nojumps,
1591 merge_blocks_move_successor_nojumps): Use merge_blocks.
1592 (try_optimize_cfg): Use merge_blocks_move.
1593 * cfgrtl.c (create_basic_block): Rename to rtl_create_basic_block.
1594 (merge_blocks_nomove): Rename to rtl_merge_blocks.
1595 (cfg_layout_create_basic_block): New.
1596 (rtl_can_merge_blocks): New.
1597 (cfg_layout_split_block): Do not alloc aux by hand.
1598 * cfghooks.h (cfg_hooks): Add create_basic_block, can_merge_blocks_p,
1600 (create_basic_block, can_merge_blocks_p, merge_blocks): New macros.
1601 * cfglayout.c (cfg_layout_duplicate_bb): Do not allocate aux by hand.
1602 * cfgloopmanip.c (loop_split_edge_with): Likewise.
1603 * ifcvt.c (merge_if_block): Use merge_blocks_nomove.
1605 * basic-block.h (basic_block_def): Add field 'rbi'.
1606 * bb-reorder.c (find_traces, rotate_loop, mark_bb_visited,
1607 find_traces_1_round, copy_bb, connect_traces): Update use of rbi.
1608 * cfg.c (entry_exit_blocks): Add new field.
1609 * cfglayout.c: Include alloc-pool.h;
1610 (cfg_layout_pool): New.
1611 (record_effective_endpoints, fixup_reorder_chain,
1612 fixup_fallthru_exit_predecessor, cfg_layout_duplicate_bb): Update use
1614 (cfg_layout_initialize_rbi): New function.
1615 (cfg_layout_initialize): Use it.
1616 (cfg_layout_finalize): Clear rbi fields.
1617 * cfglayout.h (RBI): Kill.
1618 (cfg_layout_initialize_rbi): Declare.
1619 * cfgloopmanip.c (copy_bbs): Use rbi.
1620 (record_exit_edges): Likewise.
1621 (duplicate_loop_to_header_edge): Likewise.
1622 * cfgrtl.c (cfg_layout_create_basic_block): Use
1623 cfg_layout_initialize_rbi.
1624 (cfg_layout_split_block): Use rbi.
1625 (cfg_layout_delete_block): Likewise.
1626 * loop-init.c (loop_optimizer_finalize): Likewise.
1627 * loop-unswitch.c (unswitch_loop): Likewise.
1628 * tracer.c (seen, tail_duplicate, layout_superblocks): Likewise.
1630 * cfgrtl.c: Update comments.
1631 (try_redirect_by_replacing_jump): New argument.
1632 (redirect_branch_edge): Break out from ...
1633 (rtl_redirect_edge_and_branch): ... this one.
1634 (update_cfg_after_block_merging): Break out from ...
1635 (rtl_merge_blocks): ... this one.
1636 (cfg_layout_split_edge): New.
1637 (cfg_layout_merge_blocks): New.
1638 (cfg_layout_can_merge_blocks_p): New.
1639 (cfg_layout_redirect_edge_and_branch): Reorganize.
1640 (cfg_layout_rtl_cfg_hooks): Fill in.
1641 (cfg_layout_delete_block): Kill barriers.
1642 * cfganal.c (can_fallthru): Deal with exit blocks
1643 * cfglayout.c (cfg_layout_function_header): New function
1644 (record_effective_endpoints): Record function header.
1645 (fixup_reorder_chain): Fixup dead jumptables; place header
1647 * basic-block.h (CLEANUP_CFGLAYOUT): New flag.
1648 * bb-reorder.c (cfg_layout_initialize): Update call.
1649 * cfgcleanup.c (try_optimize_cfg): Supress optimizations of fallthru
1650 edges in cfglayout mode.
1651 * cfglayout.c (cleanup_unconditional_jumps): Kill.
1652 (cfg_layout_initialize): Kill agrument loops; use cfgcleanup.
1653 * cfglayout.h (cfg_layout_initialize): Update prototype.
1654 * cfgloop.h (CP_INSIDE_CFGLAYOUT): Kill.
1655 * cfgloopmanip.c (loop_split_edge_with): Use split_edge.
1656 * flow.c (propagate_block): Do not crash when basic block ends
1657 by first insn in the chain.
1658 * loop-init.c (loop_optimizer_init): First enter cfglayout mode; later
1660 * tracer.c (tracer): Update call of cfg_layout_initialize.
1662 2003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1664 * Makefile.in: Use dependency variables in lieu of explicit
1667 2003-07-03 Steven Bosscher <steven@gcc.gnu.org>
1669 * rtl.h (ECF_*, flags_from_decl_or_type): Move from here...
1670 * tree.h: ...to here.
1672 2003-07-03 Kazu Hirata <kazu@cs.umass.edu>
1674 * config/s390/2064.md: Fix comment typos.
1675 * config/s390/2084.md: Likewise.
1676 * config/s390/s390.c: Likewise.
1677 * config/s390/s390.md: Likewise.
1678 * config/sh/sh.c: Likewise.
1679 * config/sh/sh.h: Likewise.
1680 * config/sh/sh.md: Likewise.
1681 * config/sparc/sparc.c: Likewise.
1682 * config/sparc/sparc.h: Likewise.
1683 * config/sparc/sparc.md: Likewise.
1684 * config/stormy16/stormy16.c: Likewise.
1685 * config/stormy16/stormy16.h: Likewise.
1686 * config/stormy16/stormy-abi: Fix a typo.
1688 2003-07-03 Kelley Cook <kelleycook@wideopenwest.org>
1690 * Makefile.in (ifcvt.o): Depend on OPTABS_H.
1692 2003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1694 * config/mips/mips.h (save_argv): Delete.
1696 2003-07-03 Roger Sayle <roger@eyesopen.com>
1699 * fold-const.c (extract_muldiv_1): There's nothing that can be done
1700 if the expression is a SAVE_EXPR.
1702 2003-07-03 Kazu Hirata <kazu@cs.umass.edu>
1704 * config/m32r/m32r.c: Fix comment typos.
1705 * config/m68hc11/m68hc11.c: Likewise.
1706 * config/m68hc11/m68hc11.h: Likewise.
1707 * config/m68k/m68k.c: Likewise.
1708 * config/mcore/mcore.c: Likewise.
1709 * config/mcore/mcore.h: Likewise.
1710 * config/mcore/mcore.md: Likewise.
1711 * config/mips/mips.c: Likewise.
1712 * config/mips/mips.h: Likewise.
1713 * config/mips/mips.md: Likewise.
1714 * config/mips/netbsd.h: Likewise.
1715 * config/mn10300/mn10300.c: Likewise.
1717 2003-07-03 Andreas Schwab <schwab@suse.de>
1719 * dbxout.c (pending_bincls): Move decl down inside
1720 DBX_DEBUGGING_INFO || XCOFF_DEBUGGING_INFO section.
1722 2003-07-02 Nathan Sidwell <nathan@codesourcery.com>
1724 * rtl.h (NOTE_DATA): Refer to whole union.
1725 * emit-rtl.c (emit_note): Use memset to clear NOTE_DATA.
1727 2003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr>
1729 PR optimization/11381
1730 * simplify-rtx.c (simplify_relational_operation): Check that
1731 two equal operands have no side-effects before simplifying
1734 2003-07-02 Jeff Law <law@redhat.com>
1736 * expr.c (do_store_flag): Remove special case folding for
1737 single bit tests. Instead call back into the commonized folder
1739 * fold-const.c (fold_single_bit_test): New function, mostly
1740 extracted from do_store_flag, with an additional case extracted
1742 (fold): Call fold_single_bit_test appropriately.
1743 * tree.h (fold_single_bit_test): Prototype.
1745 2003-07-02 Zack Weinberg <zack@codesourcery.com>
1747 * system.h: Include filenames.h.
1748 (IS_DIR_SEPARATOR, IS_ABSOLUTE_PATHNAME): Don't define.
1749 (DIR_SEPARATOR, DIR_SEPARATOR_2): If not already defined,
1750 define based on HAVE_DOS_BASED_FILE_SYSTEM.
1751 * config/i386/xm-cygwin.h, config/i386/xm-djgpp.h
1752 * config/i386/xm-mingw32.h: Don't define
1753 HAVE_DOS_BASED_FILE_SYSTEM,
1754 DIR_SEPARATOR, or DIR_SEPARATOR_2.
1755 * doc/hostconfig.texi: Update to match.
1757 * cppfiles.c, gcc.c, gensupport.c, protoize.c,
1758 config/i386/cygwin.h:
1759 Use IS_ABSOLUTE_PATH throughout.
1760 * gcc.c (DIR_UP): Delete, unused.
1761 * protoize.c (IS_SAME_PATH): Define in terms of
1763 (is_abspath): Delete.
1765 2003-07-02 Kazu Hirata <kazu@cs.umass.edu>
1767 * config/i386/emmintrin.h: Fix comment typos.
1768 * config/i386/i386.c: Likewise.
1769 * config/i386/i386.h: Likewise.
1770 * config/i386/sco5.h: Likewise.
1771 * config/ia64/ia64.c: Likewise.
1772 * config/ia64/itanium2.md: Likewise.
1774 2003-07-02 H.J. Lu <hongjiu.lu@intel.com>
1776 * dbxout.c (pending_bincls): Replace DBX_USE_BINCLS with
1778 (emit_bincl_stab): Same.
1779 (emit_pending_bincls): Same.
1781 2003-07-02 Kazu Hirata <kazu@cs.umass.edu>
1783 * config/h8300/h8300.c (compute_mov_length): Fix the length of
1784 loading CONST0_RTX (SFmode).
1785 * config/h8300/h8300.h (CONST_DOUBLE_OK_FOR_LETTER_P): Change
1786 'G' to CONST0_RTX (SFmode).
1787 * config/h8300/h8300.md (movsf_h8300): Change the first
1789 (movsf_h8300h): Likewise.
1791 2003-07-02 Neil Booth <neil@daikokuya.co.uk>
1793 * c-common.h (c_common_init_options): New prototype.
1794 * c-opts.c (deferred_size): Remove.
1795 (defer_opt): Array is now pre-allocated.
1796 (c_common_init_options): Pre-allocate deferred_opts. Make
1797 lang_flags unsigned.
1798 (push_command_line_options): Free deferred_opts.
1799 * hooks.c (hook_uint_uint_constcharptrptr_0): New.
1800 * hooks.h (hook_uint_uint_constcharptrptr_0): New.
1801 * langhooks-def.h (LANG_HOOKS_INIT_OPTIONS): Update.
1802 * langhooks.h (struct lang_hooks): New prototype for init_options.
1803 * main.c (main): Cast argv.
1804 * opts.c (handle_option, handle_options): Update prototypes.
1805 (decode_options): save_argc, save_argv are not global. Constify.
1806 * opts.h (decode_options): New prototype.
1807 * toplev.c (general_init): New protoype.
1808 (save_argv): Make static.
1809 (save_argc): Remove.
1810 (print_switch_values, general_init): Constify.
1811 (toplev_main): Save argv.
1812 * toplev.h (toplev_main): Update prototype.
1813 (save_argc, save_argv): Remove.
1815 2003-07-02 David Edelsohn <edelsohn@gnu.org>
1817 * dbxout.c (pending_bincls): Guard with DBX_USE_BINCLS.
1818 (emit_bincl_stab): Same.
1819 (emit_pending_bincls): Same.
1821 2003-07-02 Nathan Sidwell <nathan@codesourcery.com>
1824 * ginclude/stddef.h (offsetof): Remove cast to 'char &'. Explain why.
1826 2003-07-02 Andreas Schwab <schwab@suse.de>
1828 * dbxout.c (pending_bincls): Only define if DBX_DEBUGGING_INFO.
1830 2003-07-02 Eric Botcazou <ebotcazou@libertysurf.fr>
1832 PR optimization/11210
1833 * expr.c (handled_component_p) [NOP_EXPR]: Add ??? note
1834 about the behaviour with regard to bitfields.
1835 * fold-const (decode_field_reference): Record outermost type in
1836 case the expression is a NOP. Strip all NOPs. Set the signedness
1837 to that of the outermost type (if any) when the bitsize is equal
1838 to the size of the type.
1840 2003-07-02 Richard Sandiford <rsandifo@redhat.com>
1842 * config/mips/mips.md (addsi3): Remove workaround for adds of -32768.
1843 (addsi3_internal, adddi3, adddi3_internal_2): Likewise.
1844 (adddi3_internal_3, addsi3_internal_2): Likewise.
1846 2003-07-02 Richard Sandiford <rsandifo@redhat.com>
1848 * config/mips/mips.c (machine_function): Add new fields:
1849 ignore_hazard_length_p and all_noreorder_p.
1850 (mips_flag_delayed_branch): New variable.
1851 (override_options): Treat '/' as an operand punctuation character.
1852 Set up mips_flag_delayed_branch.
1853 (print_operand): Handle '/'.
1854 (mips_output_function_prologue): Put the whole function in
1855 .set noreorder and .set nomacro if all_noreorder_p is true.
1856 (mips_output_function_epilogue): End the noreorder/nomacro sequence.
1857 (mips16_optimize_gp): Remove "first insn" parameter.
1858 (mips16_lay_out_constants): New function, split out from mips_reorg.
1859 (mips_avoid_hazard, mips_avoid_hazards): New functions.
1860 (mips_reorg): For mips16 code, call mips16_lay_out_constant
1861 and (optionally) mips16_optimize. If TARGET_EXPLICIT_RELOCS,
1862 do delayed-branch scheduling followed by hazard detection.
1863 (mips_adjust_insn_length): Only account for hazards if
1864 !ignore_hazard_length_p.
1865 (mips_output_load_label): Add a nop to the o32 sequence if
1866 the target suffers from load delays.
1867 (mips_output_conditional_branch): Add %/ to the end of branches.
1868 (mips_output_division): Fill the branch delay slot with %#.
1869 * config/mips/mips.md: Remove redundant '%*' from mips16 branch
1870 instructions. End all other %* branches with %/.
1871 (ffssi2, ffsdi2): Fix lengths.
1872 (truncdisi2, truncdihi2, truncdiqi2): Add store attributes.
1873 (fix_truncdfsi2_macro): Turn off .set nomacro if appropriate.
1874 (fix_truncsfsi2_macro): Likewise.
1875 (mov_lwl): Set hazard to "none".
1876 (ashldi3_internal): Fill the branch delay slot with %#.
1877 (ashrdi3_internal, lshrdi3_internal): Likewise.
1878 (exception_receiver): Explicitly set $28.
1879 (hazard_nop): New pattern.
1881 Wed Jul 2 08:12:36 CEST 2003 Jan Hubicka <jh@suse.cz>
1883 * cgraphunit.c (cgraph_finalize_unit): Set current_function_decl
1884 before calling tree_inlinable_function_p.
1886 2003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1888 * fixinc/inclhack.def (irix_stdio_va_list): Apply to IRIX 6.5
1889 <internal/stdio_core.h> too.
1890 (stdio_va_list): Apply to IRIX 6.5 <internal/stdio_core.h> and
1891 <internal/wchar_core.h> too.
1892 Substitute va_list uses in inline definition.
1893 * fixinc/fixincl.x: Regenerate.
1895 2003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1897 * config/mips/iris5.h (SET_FILE_NUMBER): Moved here from iris3.h.
1898 Undef before redefinition.
1899 (LABEL_AFTER_LOC): Likewise.
1900 (DEFAULT_SIGNED_CHAR): Likewise.
1901 (ASM_OUTPUT_ASCII): Moved here from iris4.h.
1904 * config/mips/iris3.h: Remove, unused.
1905 * config/mips/iris4.h: Likewise.
1907 * config/mips/mips.h (STACK_ARGS_ADJUST): Remove, unused.
1909 * config/mips/iris5.h (TARGET_DEFAULT): Move ...
1910 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here to
1913 * config/mips/iris5.h: Move explicit includes ...
1914 * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here.
1916 * config/mips/iris6.h (MIPS_ISA_DEFAULT, MIPS_ABI_DEFAULT): Move ...
1917 * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
1920 * config/mips/iris6.h (TARGET_DEFAULT): Move ...
1921 * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
1924 * config/mips/iris6.h: Fix IRIX spelling.
1925 (MULTILIB_DEFAULTS): Undef before redefinition.
1927 * config/mips/iris6.h: Move explicit includes ...
1928 * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here.
1930 Wed Jul 2 02:16:48 CEST 2003 Jan Hubicka <jh@suse.cz>
1932 * cgraph.c (cgraph_mark_needed_node, cgraph_varpool_mark_needed_node,
1933 cgraph_varpool_finalize_decl, cgraph_varpool_assemble_pending_decls):
1934 Use next_needed field instead of aux to maintain the queue.
1935 * cgraph.h (cgraph_node): Add next_needed.
1936 (cgraph_varpool_node): Add next_needed; remove aux.
1937 * cgraphunit.c (cgraph_finalize_compilation_unit): Use next_needed.
1939 Wed Jul 2 02:12:51 CEST 2003 Jan Hubicka <jh@suse.cz>
1941 * cgraphunit.c (cgraph_finalize_function): Set finalized.
1942 (cgraph_finalize_function): Do not examine inlinablility.
1943 (cgraph_finalize_compilation_unit): Do it here.
1944 * cgraph.h (cgraph_local_info): Add finalized field.
1946 2003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1948 * ggc-common.c (gt_pch_save): Cast MAP_FAILED to void *.
1949 (gt_pch_restore): Likewise.
1951 2003-07-01 Kazu Hirata <kazu@cs.umass.edu>
1953 * config/alpha/alpha.c: Fix comment typos.
1954 * config/alpha/elf.h: Likewise.
1955 * config/arm/arm.c: Likewise.
1956 * config/arm/arm.h: Likewise.
1957 * config/arm/arm.md: Likewise.
1958 * config/arm/t-arm-coff: Likewise.
1959 * config/arm/t-strongarm-pe: Likewise.
1960 * config/arm/xscale-elf.h: Likewise.
1961 * config/avr/avr.h: Likewise.
1963 2003-07-01 Jeff Law <law@redhat.com>
1965 * stmt.c (any_pending_cleanups): Remove another redundant test.
1967 2003-07-01 David Edelsohn <edelsohn@gnu.org>
1968 J"orn Rennecke <joern.rennecke@superh.com>
1970 * config/rs6000/rs6000.md (ctr{s,d}i_internal?): Add earlyclobber
1973 2003-07-01 Devang Patel <dpatel@apple.com>
1975 * dbxout.c (DBXOUT_DECR_NESTING): Emit pending bincls, if required.
1977 (struct dbx_file): New members - bincl_status, pending_bincl_name and
1979 (pending_bincls): New.
1980 (dbxout_init): Initialize new dbx_file members.
1981 (dbxout_start_source_file): Same.
1982 (emit_bincl_stab): New function.
1983 (emit_pending_bincls): Same.
1984 (emit_pending_bincls_if_required): Same.
1985 (dbxout_end_source_file): Emit EINCL stab only if BINCL is already
1987 (dbxout_begin_block): Emit pending BINCL stabs.
1988 (dbxout_end_block): Same.
1989 (dbxout_function_decl): Same.
1990 (dbxout_continue): Same.
1991 (dbxout_type): Same.
1992 (dbxout_class_name_qualifiers): Same.
1993 (dbxout_symbol): Same.
1994 (dbxout_symbol_location): Same.
1995 (dbxout_parms): Same.
1997 2003-07-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1999 * c-semantics.c (genrtl_case_label): Fix format specifier bug.
2000 * cfgrtl.c (rtl_verify_flow_info_1): Likewise.
2002 2003-07-01 Andreas Jaeger <aj@suse.de>
2004 * fold-const.c: Convert prototypes to ISO C90.
2005 * function.c: Likewise.
2006 * function.h: Likewise.
2008 2003-07-01 Kazu Hirata <kazu@cs.umass.edu>
2010 * doc/contrib.texi: Fix typos.
2011 * doc/invoke.texi: Likewise.
2012 * doc/passes.texi: Likewise.
2013 * doc/sourcebuild.texi: Likewise.
2014 * doc/tm.texi: Likewise.
2016 2003-07-01 Kazu Hirata <kazu@cs.umass.edu>
2018 * basic-block.h: Fix comment typos.
2019 * bb-reorder.c: Likewise.
2020 * c-format.c: Likewise.
2021 * cfgcleanup.c: Likewise.
2022 * cfghooks.h: Likewise.
2023 * cfgloop.c: Likewise.
2024 * cfgloopmanip.c: Likewise.
2025 * cfgrtl.c: Likewise.
2026 * cgraph.h: Likewise.
2027 * cgraphunit.c: Likewise.
2028 * combine.c: Likewise.
2029 * convert.c: Likewise.
2030 * dbxout.c: Likewise.
2033 * diagnostic.c: Likewise.
2034 * dwarf2out.c: Likewise.
2035 * et-forest.h: Likewise.
2037 * fold-const.c: Likewise.
2038 * function.h: Likewise.
2039 * gcov-io.h: Likewise.
2042 * genautomata.c: Likewise.
2043 * ggc-common.c: Likewise.
2044 * ggc-page.c: Likewise.
2045 * loop-unroll.c: Likewise.
2046 * loop-unswitch.c: Likewise.
2048 * mips-tfile.c: Likewise.
2049 * optabs.c: Likewise.
2050 * ra-build.c: Likewise.
2051 * ra-colorize.c: Likewise.
2052 * ra-rewrite.c: Likewise.
2054 * regmove.c: Likewise.
2055 * reload.c: Likewise.
2056 * rtlanal.c: Likewise.
2057 * sched-ebb.c: Likewise.
2058 * sched-int.h: Likewise.
2059 * sched-vis.c: Likewise.
2060 * sreal.c: Likewise.
2061 * ssa-ccp.c: Likewise.
2063 * toplev.c: Likewise.
2064 * tree-inline.c: Likewise.
2065 * value-prof.c: Likewise.
2066 * value-prof.h: Likewise.
2068 2003-07-01 Nathan Sidwell <nathan@codesourcery.com>
2070 * rtl.h (emit_line_note_after): Remove.
2071 (emit_note_copy_after, emit_note_copy): New.
2072 * emit-rtl.c (reorder_insns_with_line_notes): Replace
2073 emit_line_note_after with emit_note_copy_after.
2074 (emit_insn_after_with_line_notes): Likewise.
2075 (emit_line_note_after): Kill.
2076 (emit_note_copy_after): New.
2077 (emit_note_copy): New.
2078 * function.c (emit_return_into_block): Use emit_note_copy_after.
2079 (thread_prologue_and_epilogue_insns): Likewise.
2080 * integrate.c (expand_inline_function): Use emit_note_copy.
2081 (copy_insn_list): Likewise.
2082 * unroll.c (copy_loop_body): Likewise.
2083 * cfglayout.c (duplicate_insn_chain): Likewise.
2085 2003-07-01 Nathan Sidwell <nathan@codesourcery.com>
2087 * c-tree.h (define_label): Replace filename and lineno arguments
2089 * c-decl.c (poplevel): Adjust define_label call.
2090 (pop_label_level): Likewise.
2091 (define_label): Replace filename and lineno arguments with a
2093 (store_parm_decls): Use DECL_SOURCE_LOCATION.
2094 * c-parse.in (label): Adjust define_label call.
2096 2003-07-01 Neil Booth <neil@daikokuya.co.uk>
2098 * config/sol2.h, config/alpha/alpha.h, config/alpha/linux.h,
2099 config/i386/i386-interix.h, config/ia64/hpux.h, config/mips/iris6.h,
2100 config/mips/linux.h, config/mips/mips.h, config/pa/pa-hpux.h,
2101 config/pa/pa-hpux10.h, config/pa/pa-hpux11.h, config/pa/pa-pro-end.h,
2102 config/pa/pa.h, config/pa/rtems.h: Use c_dialect_ macros.
2104 2003-07-01 Andreas Jaeger <aj@suse.de>
2106 * final.c: Convert prototypes to ISO C90.
2108 * flags.h: Likewise.
2109 * gcov-io.c: Likewise.
2110 * gcov-io.h: Likewise.
2112 2003-06-30 Bruno Haible <bruno@clisp.org>
2115 * libgcc2.c (__subvsi3): Remove simplification that would not work
2116 when subtracting -0x80000000.
2117 (__subvdi3): Remove simplification that would return a wrong result.
2118 (__mulvsi3): Fix overflow check.
2119 (__absvdi2): Fix simplification that would return a wrong result.
2120 (__mulvdi3): Fix overflow check.
2122 2003-06-30 Jeff Law <law@redhat.com>
2124 * stmt.c (any_pending_cleanups): Lose argument THIS_CONTOUR, it
2125 was always passed in the value '1'. Simplify body appropriately.
2126 * tree.h (any_pending_cleanups): Corresponding changes.
2127 * calls.c: (expand_call): Corresponding changes.
2129 2003-06-30 Kazu Hirata <kazu@cs.umass.edu>
2131 * combine.c (distribute_notes): Don't bother REG_WAS_0.
2132 * cse.c (cse_insn): Likewise.
2133 * final.c (final_scan_insn): Likewise.
2134 * jump.c (duplicate_loop_exit_test): Likewise.
2135 * rtl.c (reg_note_name): Remove REG_WAS_0.
2136 * rtl.h (REG_WAS_0): Remove.
2137 * unroll.c (final_reg_note_copy): Don't bother REG_WAS_0.
2138 * config/avr/avr.c (output_movqi): Don't use reg_was_0.
2139 (output_movhi): Likewise.
2140 (output_movsisf): Likewise.
2141 (reg_was_0): Remove.
2142 * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Don't use
2144 (m68hc11_gen_movqi): Likewise.
2145 * config/vax/vax-protos.h: Remove the prototype for
2147 * config/vax/vax.c (follows_p): Remove.
2148 (reg_was_0_p): Likewise.
2149 * config/vax/vax.md (movsi): Don't use reg_was_0_p.
2152 * doc/rtl.texi (REG_WAS_0): Remove.
2154 2003-06-30 Mark Mitchell <mark@codesourcery.com>
2156 * config/rs6000/spe.h (__ev_set_spefscr_frmc): Set the flag.
2158 2003-06-30 Bob Wilson <bob.wilson@acm.org>
2160 * config/xtensa/lib1funcs.asm: Use "xtensa-config.h" from
2161 top-level include directory.
2162 * config/xtensa/lib2funcs.S: Likewise.
2163 * config/xtensa/xtensa.h: Likewise.
2164 * config/xtensa/xtensa-config.h: Remove.
2165 * doc/install.texi: Update location of "xtensa-config.h" header.
2167 2003-06-30 Ulrich Weigand <uweigand@de.ibm.com>
2169 * config/s390/s390.c (s390_extra_constraint): New function.
2170 * config/s390/s390-protos.h (s390_extra_constraint): Declare it.
2171 * config/s390/s390.h (EXTRA_CONSTRAINT): Use it.
2172 * config/s390/s390.c (q_constraint): Remove.
2173 * config/s390/s390-protos.h (q_constraint): Likewise.
2174 * config/s390/s390.h (EXTRA_MEMORY_CONSTRAINT): Add 'R', 'S', 'T'.
2175 (EXTRA_ADDRESS_CONSTRAINT): Define.
2177 * config/s390/s390.c (larl_operand): Refuse out-of-range operands.
2178 (DISP_IN_RANGE, s390_short_displacement): New.
2179 (legitimate_reload_operand_p): Support long displacements.
2180 (s390_decompose_address): Likewise.
2181 (legitimize_pic_address): Likewise.
2182 (legitimize_address): Likewise.
2183 (s390_fixup_clobbered_return_reg): Likewise.
2184 (s390_emit_prologue, s390_emit_epilogue): Likewise.
2185 (s390_output_mi_thunk): Likewise.
2187 * config/s390/s390.md (attr "op_type"): Add "RXY", "RSY", "SIY".
2188 (attr "atype", attr "length"): Add defaults for new op_types.
2189 (all insns): Change op_type attribute where appropriate.
2191 ("*movdi_lay", "*movsi_lay", "*extendqidi2", "*extendqisi2"): New insns.
2192 ("*tmqi_ext", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem", *tmqi_mem",
2193 "*tstsi", "*tstsi_cconly", "*tsthiCCT", "*tsthiCCT_cconly",
2194 "*tsthi", "*tsthi_cconly", "*tstqiCCT", "*tstqiCCT_cconly",
2195 "*tstqi", "*tstqi_cconly", "*cmpsi_ccs_sign", "*cmpsi_ccs",
2196 "*cmpsi_ccu", "*cmphi_ccu", "*cmpqi_ccu", "*cli",
2197 "movti", "*movdi_64", "*movdi_31", "*movsi", "movhi", "movqi_64",
2198 "movqi", "*movstrictqi", "*movstricthi", "movstrictsi",
2199 "*movdf_64", "*movdf_31", "*movsf",
2200 "*load_multiple_si", "*store_multiple_di",
2201 "*sethighqisi", "*sethighhisi", "*sethighqidi_31", "*extendhisi2",
2202 "*la_64", "*la_31", "*la_31_and", "force_la_31",
2203 "*addsi3_carry1_cc", *addsi3_carry1_cconly",
2204 "*addsi3_carry2_cc", *addsi3_carry2_cconly",
2205 "*addsi3_cc", "*addsi3_cconly", "*addsi3_cconly2",
2206 "*addsi3_sign", "*addsi3_sub", "addsi3",
2207 "*subsi3_borrow_cc", "*subsi3_borrow_cconly", "*subsi3_cc",
2208 "*subsi3_cconly", "*subsi3_sign", "*subsi3_sub", "subsi3",
2210 "*andsi3_cc", "*andsi3_cconly", "andsi3",
2211 "*andqi3_ss", "*andqi3_ss_inv",
2212 "*iorsi3_cc", "*iorsi3_cconly", "iorsi3",
2213 "*iorqi3_ss", "*iorqi3_ss_inv",
2214 "*xorsi3_cc", "*xorsi3_cconly", "xorsi3",
2215 "*xorqi3_ss", "*xorqi3_ss_inv",
2216 "*tls_load_31"): Add alternatives for long-displacement instructions.
2218 ("*cmpdf_ccs", "*cmpdf_ccs_ibm", "*cmpsf_ccs", "*cmpsf_ccs_ibm",
2219 "*load_multiple_di", "*store_multiple_di",
2220 "*sethighqidi_64", "*zero_extendhisi2_31",
2221 "truncdfsf2_ibm", "extendsfdf2_ieee", "extendsfdf2_ibm",
2222 "adddf3", "*adddf3", "*adddf3_ibm",
2223 "addsf3", "*addsf3", "*addsf3_ibm",
2224 "subdf3", "*subdf3", "*subdf3_ibm",
2225 "subsf3", "*subsf3", "*subsf3_ibm",
2226 "mulsi_6432", "divmoddisi3",
2227 "muldf3", "*muldf3", "*muldf3_ibm",
2228 "mulsf3", "*mulsf3", "*mulsf3_ibm",
2229 "divdf3", "*divdf3", "*divdf3_ibm",
2230 "divsf3", "div*sf3", "*divsf3_ibm",
2231 "sqrtdf2", "sqrtsf2",
2232 "*cjump_long", "*icjump_long", "indirect_jump", "casesi_jump",
2233 "*doloop_si_long", "*doloop_di_long", "bas_64", "bas_31",
2234 "bas_r_64", "bas_r_31", "bas_tls_31", "bas_tls_64"): Adapt memory
2235 and address constraints for instructions that do not accept long
2238 2003-06-30 Hartmut Penner <hpenner@de.ibm.com>
2239 Ulrich Weigand <uweigand@de.ibm.com>
2241 * config/s390/2084.md: New file.
2242 * config/s390/s390.md: Include it.
2243 * config/s390/s390.c (s390_adjust_priority): New function.
2244 (TARGET_SCHED_ADJUST_PRIORITY): Define.
2245 (s390_first_cycle_multipass_dfa_lookahead): New function.
2246 (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Define.
2247 (s390_sched_reorder2): New function.
2248 (TARGET_SCHED_REORDER2): Define.
2249 (s390_adjust_cost): Support PROCESSOR_2084_Z990 cpu type.
2250 (s390_issue_rate): Likewise.
2252 Mon Jun 30 23:47:33 CEST 2003 Jan Hubicka <jh@suse.cz>
2254 * Makefile.in (GTFILES): Add cgraph.h.
2255 * cgraph.c (known_decls): Remove.
2256 (cgraph_hash, cgraph_nodes, cgraph_nodes_queue,
2257 cgraph_varpool_hash, cgraph_varpool_nodes_queue): GTYize.
2258 (cgraph_node): Do not allocate known_decls; use polutate hashtable.
2259 (cgraph_varpool_node): Likewise; add next pointer.
2260 (cgraph_varpool_nodes): New static variable.
2261 * cgraph.h (cgraph_local_info, cgraph_global_info, cgraph_rtl_info,
2262 cgraph_node, cgraph_edge, cgraph_varpool_node, cgraph_nodes, cgraph_n_nodes,
2263 cgraph_varpool_n_nodes, cgraph_varpool_nodes_queue): GTYize.
2264 * gengtype.c (open_base_files): Include cgraph.h
2266 2003-06-30 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
2268 * Changelog: Remove ">>>>>>>" from previous change.
2270 2003-06-30 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
2272 * config/cris/cris.c: Fix spelling for "testcase".
2273 * config/cris/cris.h: Likewise.
2274 * config/cris/cris.md: Likewise.
2275 * config/mmix/crti.asm: Likewise.
2276 * config/mmix/mmix.h: Likewise.
2277 * config/mmix/mmix.md: Likewise.
2279 2003-06-30 Kazu Hirata <kazu@cs.umass.edu>
2281 * config/h8300/h8300.h (LEGITIMATE_CONSTANT_P): Make it always
2284 2003-06-30 Ulrich Weigand <uweigand@de.ibm.com>
2286 * config.gcc [s390*-*-*]: Support --with-arch, --with-tune, and
2287 --with-mode configure options.
2288 * config/s390/s390.h (OPTION_DEFAULT_SPECS): Define.
2289 (DRIVER_SELF_SPECS): Define.
2290 * config/s390/linux.h (ASM_SPEC): Pass architecture mode and cpu
2291 architecture to assembler.
2292 (LINK_SPEC): Merge 31-bit and 64-bit variants.
2293 (LINK_ARCH31_SPEC, LINK_ARCH64_SPEC, EXTRA_SPECS): Remove.
2294 * config/s390/s390.c (override_options): New default rules for
2295 architecture mode and cpu architecture selection.
2296 * doc/invoke.texi (-mesa, -mzarch, -march, -mtune): Document
2299 * config/s390/s390.h (enum processor_type): Add PROCESSOR_2084_Z990.
2300 * config/s390/s390.md (attr "cpu"): Add "z990" processor type.
2301 * config/s390/s390.c (override_options): Add "z990" to
2302 processor_alias_table.
2303 * doc/invoke.texi (-march): Document "z990" processor type.
2305 * config/s390/s390.c (s390_tune_flags, s390_arch_flags): New variables.
2306 * config/s390/s390.h (s390_tune_flags, s390_arch_flags): Declare.
2307 (enum processor_flags, TARGET_CPU_IEEE_FLOAT, TARGET_CPU_ZARCH,
2308 TARGET_CPU_LONG_DISPLACEMENT, TARGET_LONG_DISPLACEMENT): New.
2309 * config/s390/s390.c (override_options): Replace enum pta_flags by
2310 enum processor_flags. Fill in s390_tune_flags and s390_arch_flags.
2312 * config/s390/s390.c (s390_cpu): Rename to ...
2313 (s390_tune): ... this.
2314 * config/s390/s390.h (s390_cpu, s390_tune): Likewise.
2315 * config/s390/s390.c (s390_issue_rate, override_options): Likewise.
2316 * config/s390/s390.md (attr "cpu"): Likewise.
2318 2003-06-30 Neil Booth <neil@daikokuya.co.uk>
2320 * c-common.c (enum c_language_kind, flag_objc): Remove.
2321 (fix_string_type, check_case_value, c_common_nodes_and_builtins,
2322 c_add_case_label, finish_label_addr_expr, boolean_increment):
2323 Use c_dialect_ macros.
2324 * c-common.h (enum c_language_kind): Extend.
2325 (c_dialect_cxx, c_dialect_objc): New.
2326 (flag_objc): Remove.
2327 (c_common_init_options): Update prototype.
2328 * c-cppbuiltin.c (define__GNUC__, c_cpp_builtins): Use c_dialect_
2330 * c-decl.c (finsih_decl, grokfield, finish_struct): Use c_dialect_
2332 * c-format.c (C_STD_VER, C_STD_NAME): Similarly.
2333 * c-lang.c (c_init_options): Remove.
2334 (c_language): Define.
2335 (LANG_HOOKS_INIT_OPTIONS): Use common hook.
2336 * c-lex.c (lex_charconst): Use c_dialect_ macros.
2337 * c-opts.c (lang_flags): Make function-local.
2338 (c_common_init_options): Use c_dialect_ macros. Handle
2339 C++ diagnostic requirements.
2340 (c_common_handle_option, c_common_post_options): Use flag_cxx.
2341 * c-parse.in (init_reswords): Use c_dialect_objc ().
2342 * c-pch.c (get_ident): Use c_language.
2343 * c-pretty-print.c (pp_c_bool_literal): Use c_dialect_ macros.
2344 * c-typeck.c (comptypes, build_c_cast): Similarly.
2345 * objc/objc-lang.c (c_language): Define.
2346 (LANG_HOOKS_INIT_OPTIONS): Use common hook.
2347 (objc_init_options): Remove.
2349 2003-06-30 Kazu Hirata <kazu@cs.umass.edu>
2351 * config/alpha/alpha.h (FUNCTION_ARG_PADDING): Remove.
2352 * config/alpha/unicosmk.h: Don't #undef FUNCTION_ARG_PADDING.
2354 2003-06-30 Wolfgang Bangerth <bangerth@dealii.org>
2356 * doc/sourcebuild.texi: Don't reference gnats.html any more.
2358 2003-06-30 Kazu Hirata <kazu@cs.umass.edu>
2360 * config/h8300/h8300.c (compute_mov_length): Fix length of
2363 2003-06-30 Nick Clifton <nickc@redhat.com>
2365 * config/arm/arm.h (BIGGEST_FIELD_ALIGNMENT): Make defintion
2368 Mon Jun 30 15:36:29 CEST 2003 Jan Hubicka <jh@suse.cz>
2370 (fyl2x_sfxf3, fyl2x_dfxf3, fscale_sfxf3, fscale_dfxf3): Fix condition.
2372 2003-06-30 Hartmut Penner <hpenner@de.ibm.com>
2374 * config/rs6000/rs6000.c (rs6000_split_altivec_in_gprs): New function.
2375 (altivec_in_gprs_p): New function.
2377 * config/rs6000/rs6000-protos (rs6000_split_altivec_in_gprs): New
2379 (altivec_in_gprs_p): New prototype.
2381 * config/rs6000/altivec.md (*movv4si_internal): Change
2382 multi-assembler alternative to '#'. Add postreload splitter to
2384 (*movv4hi_internal): Likewise.
2385 (*movv4qi_internal): Likewise.
2386 (*movv4sf_internal): Likewise.
2388 2003-06-30 Jason Merrill <jason@redhat.com>
2390 * defaults.h (PUSH_ARGS_REVERSED): Define default here.
2391 * calls.c: Not here.
2393 2003-06-30 Ben Elliston <bje@wasabisystems.com>
2395 * config/arm/arm.c (arm_rtx_costs): Remove #if 0 block.
2396 (bad_signed_byte_operand): Likewise.
2397 (arm_output_epilogue): Likewise.
2398 (arm_final_prescan_insn): Likewise.
2400 2003-06-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2402 * cfgrtl.c (mark_killed_regs): Cast HARD_REGNO_NREGS to int.
2404 2003-06-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2406 * c-pch.c (c_common_write_pch): Flush asm_out_file to allow for
2409 Mon Jun 30 10:03:02 CEST 2003 Jan Hubicka <jh@suse.cz>
2411 * cfgrtl.c (verify_flow_info): Accept degenerated condjumps
2414 Mon Jun 30 09:52:39 CEST 2003 Jan Hubicka <jh@suse.cz>
2416 * i386.c (standard_80387_constant_p): Accept TFmode constants too.
2417 (init_ext_80387_constants): Likewise.
2418 (standard_80387_constant_rtx): Likewise.
2419 * i386.md (atanxf): Disable for TARGET_128BIT_LONG_LONG
2420 (atantf): Disable for !TARGET_128BIT_LONG_LONG
2421 (fyl2x_sfxf3, fyl2x_dfxf3): Accept TFmode operands.
2422 (fyl2x_xfxf3, fyl2x_tfxf3): Enable/disable as needed.
2423 (fscale_sfxf3, fscale_dfxf3): Accept TFmode operands.
2424 (fscale_xfxf3, fscale_tfxf3): Enable/disable as needed.
2427 (exp?f2): Use expsf2_tf when needed.
2431 2003-06-29 Uwe Stieber <uwe@kaos-group.de>
2433 * config.gcc (sh*-*-kaos*): Put tm_file setting in separate case
2434 statement from tmake_file set.
2436 2003-06-29 James E Wilson <wilson@tuliptree.org>
2438 * reload.c (find_reloads): Change push_reloads to push_reload in
2440 * reload1.c (eliminate_regs): Likewise.
2441 (dump_needs): Delete prototype for deleted function.
2443 2003-06-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2445 * builtin-attrs.def (gcc_diag, gcc_cdiag, gcc_cxxdiag): New
2447 * c-format.c (enum format_type): Add gcc_diag_format_type,
2448 gcc_cdiag_format_type, and gcc_cxxdiag_format_type.
2449 (gcc_diag_length_specs, gcc_cdiag_length_specs,
2450 gcc_cxxdiag_length_specs, gcc_diag_flag_pairs,
2451 gcc_cdiag_flag_pairs, gcc_cxxdiag_flag_pairs, gcc_diag_flag_specs,
2452 gcc_cdiag_flag_specs, gcc_cxxdiag_flag_specs, gcc_diag_char_table,
2453 gcc_cdiag_char_table, gcc_cxxdiag_char_table): New.
2454 (format_types_orig): Add new data.
2455 (find_char_info_specifier_index, init_dynamic_diag_info): New
2457 (handle_format_attribute): Update to handle new format attributes.
2459 2003-06-29 Aaron W. LaFramboise <awlaframboise@aol.com>
2461 * config/i386/gthr-win32.h (__GTHREAD_HIDE_WIN32API): Define to 1.
2463 2003-06-29 Dara Hazeghi <dhazeghi@yahoo.com>
2465 * doc/install.texi: Remove install documentation for obsoleted targets
2466 i?86-*-sco, i?86-*-sco3.2v4, powerpcle-*-pe, powerpcle-*-winnt,
2468 Update information about IA64 toolchain, AIX make requirements,
2469 and binutils for m68k-*-hpux and *-*-linuxaout targets.
2471 Mon Jun 30 00:50:43 CEST 2003 Jan Hubicka <jh@suse.cz>
2473 * regmove.c (regmove_optimize): Don't try to make src and dst match
2474 when they are in different modes.
2476 Sun Jun 29 23:06:32 CEST 2003 Jan Hubicka <jh@suse.cz>
2478 * builtins.c (expand_builtin_mathfn, expand_builtin_mathfn_2): Avoid
2479 busy work when builtin is not supported by the backend.
2481 2003-06-29 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
2483 * loop.c (count_one_set): Fix detection of registers set in more
2484 than one basic block.
2486 2003-06-29 Andreas Jaeger <aj@suse.de>
2488 * target-def.h: Remove usage of OBJECT_FORMAT_ROSE.
2489 * system.h: Poison OBJ_FORMAT_ROSE.
2490 * doc/tm.texi (Macros for Initialization): Remove documentatin of
2492 * config/rs6000/lynx.h: Remove undef of OBJECT_FORMAT_ROSE.
2493 * collect2.c: Remove usage of OBJECT_FORMAT_ROSE.
2495 2003-06-29 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2497 * pa.c (update_total_code_bytes): New function.
2498 (last_address): Number of bytes output for a function and its
2500 (compute_frame_size): Use BITS_PER_UNIT.
2501 (pa_output_function_epilogue): Compute last_address. Use
2502 update_total_code_bytes.
2503 (output_lbranch): Handle long branch on portable runtime.
2504 (attr_length_millicode_call, attr_length_call,
2505 attr_length_indirect_call): Only use total_code_bytes for calls in
2507 (output_call): Only use an indirect call sequence when the target is
2509 (pa_asm_output_mi_thunk): Handle updating of total_code_bytes. Improve
2510 test to determine when an IA-relative branch can be used. Add various
2511 long branch sequences. Avoid using an indirect branch on all ports
2514 2003-06-29 Ulrich Weigand <uweigand@de.ibm.com>
2516 * expr.c (clear_by_pieces): Fix prototype.
2518 2003-06-29 Andreas Jaeger <aj@suse.de>
2520 * cse.c: Convert prototypes to ISO C90.
2521 * cselib.c: Likewise.
2522 * cselib.h: Likewise.
2523 * dbxout.c: Likewise.
2524 * debug.c: Likewise.
2527 * dojump.c: Likewise.
2528 * doloop.c: Likewise.
2529 * dominance.c: Likewise.
2530 * dwarf2asm.c: Likewise.
2531 * dwarf2out.c: Likewise.
2532 * dwarf2out.h: Likewise.
2533 * dwarfout.c: Likewise.
2534 * except.c: Likewise.
2535 * except.h: Likewise.
2536 * emit-rtl.c: Likewise.
2537 * et-forest.c: Likewise.
2538 * et-forest.h: Likewise.
2539 * except.c: Likewise.
2540 * explow.c: Likewise.
2541 * expmed.c: Likewise.
2545 2003-06-29 Kazu Hirata <kazu@cs.umass.edu>
2547 * alloc-pool.c: Fix comment formatting.
2548 * bitmap.c: Likewise.
2549 * bitmap.h: Likewise.
2550 * bt-load.c: Likewise.
2551 * builtins.c: Likewise.
2552 * caller-save.c: Likewise.
2553 * cfganal.c: Likewise.
2554 * cfgrtl.c: Likewise.
2555 * collect2.c: Likewise.
2558 * diagnostic.c: Likewise.
2559 * dwarf2out.c: Likewise.
2560 * dwarfout.c: Likewise.
2561 * expmed.c: Likewise.
2562 * final.c: Likewise.
2563 * flags.h: Likewise.
2564 * fold-const.c: Likewise.
2566 * gcov-io.h: Likewise.
2568 * genattrtab.c: Likewise.
2569 * genautomata.c: Likewise.
2570 * libgcov.c: Likewise.
2571 * mips-tfile.c: Likewise.
2572 * optabs.c: Likewise.
2573 * prefix.c: Likewise.
2574 * rtlanal.c: Likewise.
2576 * stor-layout.c: Likewise.
2577 * toplev.c: Likewise.
2578 * varasm.c: Likewise.
2579 * vmsdbgout.c: Likewise.
2581 2003-06-29 Kazu Hirata <kazu@cs.umass.edu>
2583 * expr.c (emit_single_push_insn): If padding is needed
2584 downward, adjust the stack pointer first, and then store the
2585 data into the stack location using an offset.
2587 2003-06-29 Andreas Jaeger <aj@suse.de>
2589 * collect2.h: Convert prototypes to ISO C90.
2590 * collect2.c: Likewise.
2591 * conflict.c: Likewise.
2592 * coverage.c: Likewise.
2593 * convert.h: Likewise.
2594 * convert.c: Likewise.
2596 2003-06-29 Nathan Sidwell <nathan@codesourcery.com>
2598 * c-decl.c (c_init_decl_processing): Use a location_t. Set input
2599 filename to <internal>.
2600 * tree.c (make_node): Just copy the current location.
2602 2003-06-29 Eric Botcazou <ebotcazou@libertysurf.fr>
2604 PR optimization/11210
2605 * fold-const (decode_field_reference): Revert 2003-06-26 patch.
2607 2003-06-29 Neil Booth <neil@daikokuya.co.uk>
2609 * toplev.c (flag_dummy): Remove.
2610 (f_options): Restore flag pointers.
2612 2003-06-29 David Edelsohn <edelsohn@gnu.org>
2614 * config/rs6000/rs6000.c (processor_target_table): Add 970.
2615 * config.gcc: Add 970.
2617 2003-06-29 Kazu Hirata <kazu@cs.umass.edu>
2619 * dwarf2out.c (add_AT_string): Replace ggc_alloc_string (X,
2620 -1) with ggc_strdup.
2621 * stmt.c (expand_asm_operands): Likewise.
2622 * config/rs6000/rs6000.md (builtin_setjmp_receiver): Likewise.
2624 2003-06-28 Kazu Hirata <kazu@cs.umass.edu>
2626 * config/ip2k/ip2k.c (ip2k_reorg): Use INSN_P instead of its
2629 2003-06-29 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
2631 * opts.c: Include insn-attr.h.
2632 * Makefile.in (opts.o): Depend on INSN_ATTR_H.
2634 2003-06-27 J"orn Rennecke <joern.rennecke@superh.com>
2636 * flow.c (propagate_one_insn): Use proper test for a register
2637 being part of the return value.
2639 2003-06-28 Kazu Hirata <kazu@cs.umass.edu>
2641 * config/avr/avr.c: Fix a comment typo.
2643 2003-06-28 Kazu Hirata <kazu@cs.umass.edu>
2645 * config/avr/avr-protos.h: Replace avr_simplify_comparision_p
2646 with avr_simplify_comparison_p.
2647 * config/avr/avr.c: Likewise.
2649 2003-06-28 Kazu Hirata <kazu@cs.umass.edu>
2651 * builtins.c: Follow spelling conventions.
2652 * cgraph.c: Likewise.
2653 * cpplex.c: Likewise.
2654 * config/arm/arm.c: Likewise.
2655 * config/arm/iwmmxt.md: Likewise.
2656 * config/c4x/c4x-modes.def: Likewise.
2657 * config/c4x/c4x.c: Likewise.
2658 * config/c4x/c4x.h: Likewise.
2659 * config/c4x/c4x.md: Likewise.
2660 * config/i386/i386-interix.h: Likewise.
2661 * config/mips/mips.h: Likewise.
2663 2003-06-28 Neil Booth <neil@daikokuya.co.uk>
2665 * config/m68k/m68k.h (TARGET_CPU_CPP_BUILTINS): Predicate
2666 __mc68020__ on TARGET_68020.
2668 2003-06-28 Kazu Hirata <kazu@cs.umass.edu>
2670 * config/h8300/h8300.c: Fix a comment typo.
2672 2003-06-28 Nathan Sidwell <nathan@codesourcery.com>
2674 * c-parse.in (yylexstring): Use a location_t.
2676 * diagnostic.h (diagnostic_set_info): Replace file and lineno
2677 parameters with a location_t.
2678 * diagnostic.c (diagnostic_set_info): Replace file and lineno
2679 parameters with a location_t.
2680 (inform, warning, pedwarn, error, sorry, fatal_error,
2681 internal_error, warning_with_decl, pedwarn_with_decl,
2682 error_with_decl): Adjust.
2683 * c-error.c (pedwarn_c99): Adjust.
2684 * c-format.c (status_warning): Adjust.
2685 * rtl-error.c (file_and_line_for_asm): Rename to ...
2686 (location_for_asm): Return a location_t.
2687 (diagnostic_for_asm): Adjust.
2689 2003-06-28 Neil Booth <neil@daikokuya.co.uk>
2691 * cpptrad.c (skip_macro_block_comment): New.
2692 (copy_comment): Use it if appropriate.
2694 2003-06-28 Kazu Hirata <kazu@cs.umass.edu>
2696 * gcse.c (compute_ld_motion_mems): Use INSN_P instead of its
2698 (store_killed_in_insn): Likewise.
2699 * print-rtl.c (print_rtx): Likewise.
2700 * config/frv/frv.c (frv_final_prescan_insn): Likewise.
2701 * config/m68hc11/m68hc11.c (dead_register_here): Likewise.
2702 (m68hc11_reassign_regs): Likewise.
2703 (m68hc11_reorg): Likewise.
2705 2003-06-28 Gabriel Dos Reis <gdr@integrable-solutions.net>
2707 * diagnostic.c (output_integer_with_precision): New macro.
2708 (output_format): Use it. Handle more format specifiers.
2709 (output_long_decimal): Remove.
2710 (output_unsigned_decimal): Likewise.
2711 (output_long_unsigned_decimal): Likewise.
2712 (output_octal): Likewise.
2713 (output_long_octal): Likewise.
2714 (output_hexadecimal): Likewise.
2715 (output_long_hexadecimal): Likewise.
2716 (output_long_long_decimal): Likewise.
2718 2003-06-28 Andreas Schwab <schwab@suse.de>
2720 * config/ia64/ia64.md: Follow recent emit_note API change.
2722 2003-06-28 Nathan Sidwell <nathan@codesourcery.com>
2724 * c-parse.in (%union): Replace filename & lineno with location.
2725 (save_filename, save_lineno): Remove.
2726 (save_location): New.
2727 (fndef, old_style_parm_decls_1, lineno_datadecl, lineno_decl,
2728 nested_function, notype_nested_function, if_prefix, lineno_stmt,
2729 lineno_label, label): Adjust.
2731 2003-06-28 Jakub Jelinek <jakub@redhat.com>
2733 * builtins.c (c_strlen): Add only_value argument.
2734 Handle COND_EXPR and COMPOUND_EXPR.
2735 (expand_builtin_strlen): Optimize also strlen (i++ ? "foo" : "bar").
2736 Adjust c_strlen callers.
2737 (expand_builtin_strcpy, expand_builtin_strncpy,
2738 expand_builtin_strcmp, expand_builtin_strncmp,
2739 expand_builtin_fputs, expand_builtin_sprintf,
2740 fold_builtin): Adjust c_strlen callers.
2742 2003-06-28 Josef Zlomek <zlomekj@suse.cz>
2744 * bb-reorder.c (find_traces_1_round): Do not send basic block
2745 to next round when we are in the last round.
2747 2003-06-28 Neil Booth <neil@daikokuya.co.uk>
2749 * Makefile.in: Update.
2750 * opts.c: Include tm_p.h.
2751 (handle_options): Make static.
2752 (decode_options): Copied from toplev.c.
2753 * opts.h (decode_options): New.
2754 * toplev.c (parse_options_and_default_flags): Move most to opts.c,
2756 (general_init): ...here.
2757 (toplev_main): Use decode_options instead.
2758 * toplev.h (save_argc, save_argv): New.
2760 2003-06-28 Kazu Hirata <kazu@cs.umass.edu>
2762 * explow.c (find_next_ref): Remove.
2763 * rtl.h: Remove the prototype for find_next_ref.
2765 2003-06-27 Roger Sayle <roger@eyesopen.com>
2767 * config/alpha/alpha.md (anonymous define_split): Adjust emit_note
2768 call to match recent API change.
2770 2003-06-27 Zack Weinberg <zack@codesourcery.com>
2772 * dbxout.c (flag_debug_only_used_symbols): Delete redundant
2775 * c-format.c (check_format_string, get_constant)
2776 * cfgrtl.c (rtl_split_edge):
2777 Mark the definition static, matching the forward declaration.
2779 2003-06-27 Gunther Nikl <gni@gecko.de>
2781 * unwind-c.c (PERSONALITY_FUNCTION): Delete duplicate define.
2784 * config/m68k/m68k.c (m68k_output_mi_thunk): Use correct assembly
2785 syntax for MIT / MOTOROLA.
2788 * configure.in: Removed $(XCFLAGS) from BUILD_CFLAGS for build != host.
2789 * configure: Rebuilt.
2791 2003-06-27 Chris Demetriou <cgd@broadcom.com>
2793 * config/mips/mips.c (mips_build_va_list): Make padding in
2794 va_list structure explicit to avoid -Wpadded warnings.
2796 2003-06-27 Ulrich Weigand <uweigand@de.ibm.com>
2798 * config/s390/s390.h (SECONDARY_OUTPUT_RELOAD_CLASS): Define.
2799 * config/s390/s390.c (s390_secondary_output_reload_class): New function.
2800 * config/s390/s390-protos.h (s390_secondary_output_reload_class):
2802 * config/s390/s390.md ("reload_outti", "reload_outdi",
2803 "reload_outdf"): New expanders.
2805 * config/s390/s390.md ("movti" + splitters): Handle non-offsettable
2806 memory operands as source.
2807 ("movdi" + splitters): Likewise.
2808 ("movdf" + splitters): Likewise.
2809 * config/s390/s390.c (s390_split_ok_p): New function.
2810 * config/s390/s390-protos.h (s390_split_ok_p): Declare it.
2812 2003-06-27 Kazu Hirata <kazu@cs.umass.edu>
2814 * combine.c (force_to_mode): Replace the equality comparison
2815 of INTVALs with a pointer equality comparison.
2816 (simplify_comparison): Likewise.
2818 2003-06-27 Kazu Hirata <kazu@cs.umass.edu>
2820 * jump.c (rtx_renumbered_equal_p): Replace an expression that
2821 is known to be 0 with 0.
2823 2003-06-27 Kazu Hirata <kazu@cs.umass.edu>
2825 * gcse.c (expr_equiv_p): Replace expressions that are known to
2828 2003-06-27 Kazu Hirata <kazu@cs.umass.edu>
2830 * cse.c (fold_rtx): Replace the equality comparison of INTVALs
2831 with a pointer equality comparison.
2833 2003-06-27 Kazu Hirata <kazu@cs.umass.edu>
2835 * rtlanal.c (reg_mentioned_p): Return 0 earlier if REG and IN
2836 are known to be not equivalent.
2838 2003-06-27 Richard Henderson <rth@redhat.com>
2840 * config/alpha/alpha.c (function_arg): Don't pass small aggregates
2841 in floating point registers. Validate that we don't receive complex
2842 values here. Use #elif.
2843 (return_in_memory, function_value): New.
2844 (alpha_va_arg): Handle complex values as two arguments.
2845 * config/alpha/alpha.h (RETURN_IN_MEMORY): Use return_in_memory.
2846 (FUNCTION_VALUE, LIBCALL_VALUE): Use function_value.
2847 (SPLIT_COMPLEX_ARGS): New.
2848 * config/alpha/alpha-protos.h: Update.
2850 2003-06-27 Ulrich Weigand <uweigand@de.ibm.com>
2852 * ggc-page.c (inverse_table): Change type of mult to size_t.
2853 (compute_inverse): Compute inverse using size_t, not unsigned int.
2854 Compute inverse also for sizes larger than half a machine page.
2856 Fri Jun 27 18:36:12 CEST 2003 Jan Hubicka <jh@suse.cz>
2858 * toplev.c (rest_of_decl_compilation): Only varpoolize argument
2859 when called before cgraph_optimize.
2861 2003-06-27 Zack Weinberg <zack@codesourcery.com>
2863 * config/darwin.h, config/elfos.h, config/i960/i960-coff.h
2864 * config/m68k/coff.h: ASM_FILE_START_FILE_DIRECTIVE should
2865 be TARGET_ASM_FILE_START_FILE_DIRECTIVE.
2867 Fri Jun 27 17:41:16 CEST 2003 Jan Hubicka <jh@suse.cz>
2869 * cgraph.c (cgraph_node, cgraph_varpool_node): Avoid re-initializing
2872 2003-06-27 Hans-Peter Nilsson <hp@axis.com>
2874 * defaults.h (REGISTER_MOVE_COST): Define default here.
2875 * regclass.c: Don't define default REGISTER_MOVE_COST here.
2876 * reload.c, reload1.c: Ditto.
2878 2003-06-27 Richard Earnshaw <rearnsha@arm.com>
2880 * flags.h: Really install previous change.
2882 2003-06-27 Nathan Sidwell <nathan@codesourcery.com>
2884 * rtl.h (emit_note): Remove FILE parameter.
2885 * emit-rtl.c (emit_line_note): Adjust emit_note call.
2886 (emit_note): Remove FILE parameter. Adjust.
2887 * builtins.c (expand_builtin_expect): Adjust emit_note call.
2888 * c-semantics.c (genrtl_scope_stmt): Likewise.
2889 (expand_stmt): Likewise.
2890 * cfglayout.c (reemit_insn_block_notes): Likewise.
2891 (duplicate_insn_chain): Likewise.
2892 * except.c (expand_eh_region_start, expand_eh_region_end,
2893 sjlj_emit_function_enter): Likewise.
2894 * explow.c (probe_stack_range): Likewise.
2895 * expr.c (emit_block_move_via_loop): Likewise.
2896 * function.c (init_function_start, expand_function_start,
2897 expand_function_end, thread_prologue_and_epilogue_insns): Likewise.
2898 * integrate.c (expand_inline_function, copy_insn_list): Likewise.
2899 * reg-stack.c (compensate_edge): Likewise.
2900 * reload1.c (reload): Likewise.
2901 * rtlanal.c (hoist_insn_to_edge): Likewise.
2902 * stmt.c (expand_fixup, expand_start_loop, expand_start_null_loop,
2903 expand_loop_continue_here, expand_end_loop, expand_continue_loop,
2904 expand_exit_loop_top_cond, expand_value_return,
2905 expand_start_bindings_and_block, expand_end_bindings,
2906 expand_decl_cleanup, expand_start_case): Likewise.
2907 * unroll.c (copy_loop_body
2908 * config/alpha/alpha.c (alpha_output_mi_thunk_osf): Likewise.
2909 * config/ia64/ia64.c (ia64_output_mi_thunk): Likewise.
2910 * config/rs6000/rs6000.c (rs6000_emit_eh_toc_restore,
2911 rs6000_emit_allocate_stack, rs6000_output_function_prologue,
2912 rs6000_output_function_epilogue, rs6000_output_mi_thunk): Likewise.
2913 * config/sh/sh.c (sh_output_mi_thunk): Likewise.
2914 * config/sparc/sparc.c (sparc_output_mi_thunk): Likewise.
2916 2003-06-27 Nathan Sidwell <nathan@codesourcery.com>
2918 * c-tree.h (grokfield): Remove unused filename and line parameters.
2919 * c-decl.c (grokfield): Remove unused filename and line parameters.
2920 * c-parse.in (component_decl): Adjust field grokking rules, adjust
2922 (component_declarator): Likewise.
2923 (component_notype_declarator): Likewise.
2924 * objc/objc-act.c (build_module_descriptor): Adjust grokfield
2926 (build_protocol_template, build_method_prototype_list_template,
2927 build_method_prototype_template, build_category_template,
2928 build_selector_template, build_class_template,
2929 build_super_template, build_ivar_template,
2930 build_ivar_list_template, build_method_list_template,
2931 build_method_template, add_instance_variable): Likewise.
2933 2003-06-27 Kazu Hirata <kazu@cs.umass.edu>
2935 * stmt.c (do_jump_if_equal): Return 0 earlier if OP1 and
2936 OP2 are known to be not equivalent.
2938 2003-06-26 Devang Patel <dpatel@apple.com>
2940 * final.c (debug_flush_symbol_queue): New function.
2941 (debug_queue_symbol): New function.
2942 (debug_free_queue): New function.
2943 (debug_nesting): New variable.
2944 (symbol_queue): New variable.
2945 (symbol_queue_index): Same.
2946 (symbol_queue_size): Same.
2947 * debug.h (debug_flush_symbol_queue): New.
2948 (debug_queue_symbol): New.
2949 (debug_free_queue): New.
2950 (debug_nesting): New.
2951 (symbol_queue_index): New.
2952 * dbxout.c (DBXOUT_DECR_NESTING): New macro.
2953 (DBXOUT_DECR_NESTING_AND_RETURN): New macro.
2954 (dbxout_init): Delay symbol output.
2955 (dbxout_global_decl): Save, set and reset TREE_USED bit around
2956 dbxout_symbol() call.
2957 (dbxout_begin_function): Same.
2958 (dbxout_finish): Free symbol queue.
2959 (dbxout_type): Put appropriate symbols in queue.
2960 (dbxout_symbol): Put info for symbol's type in queue.
2961 Decrement/Increment nesting counts flush symbol queue appropriately.
2962 (dbxout_parms): Increment dbxout nesting.
2963 (dbxout_reg_parms): Same.
2964 * flags.h (flag_debug_only_used_symbols): New.
2965 * toplev.c (flag_debug_only_used_symbols): New variable.
2966 (lang_independent_options): Add entries for new option
2967 -feliminate-unused-debug-symbols.
2968 * common.opt: Add entry for -feliminate-unused-debug-symbols.
2969 * opts.c (common_handle_options): Same.
2970 * config/rs6000/darwin.h (CC1_SPEC): Interpret -gused as
2971 -feliminate-unused-debug-symbols.
2972 * doc/invoke.texi (Debugging Options): Document
2973 -feliminate-unused-debug-symbols.
2975 2003-06-26 Roger Sayle <roger@eyesopen.com>
2976 Jakub Jelinek <jakub@redhat.com>
2978 * builtins.c (expand_builtin_sprintf): Use c_getstr and strlen to
2979 obtain the format string instead of using TREE_STRING_POINTER and
2980 TREE_STRING_LENGTH. Only optimize sprintf(dst,"%s",src) when the
2981 return value is unused or the length of src is a known constant.
2983 2003-06-26 Richard Henderson <rth@redhat.com>
2985 * config/ia64/ia64.h (REGISTER_NAMES): R0 is really AP.
2987 2003-06-26 Richard Henderson <rth@redhat.com>
2989 * config/ia64/ia64.c (ia64_expand_call): Don't add ar.pfs for sibcalls.
2990 (ia64_split_call): Only load descriptor for GP register inputs.
2991 (ia64_expand_epilogue): Check current_frame_info.mask not
2992 current_function_is_leaf to restore ar.pfs.
2994 2003-06-26 Richard Henderson <rth@redhat.com>
2996 * emit-rtl.c (try_split): Append to new CALL_INSN_FUNCTION_USAGE
2997 instead of replacing it.
2999 2003-06-26 Richard Henderson <rth@redhat.com>
3001 * flow.c (propagate_one_insn): Kill function return value
3002 registers across tail calls.
3004 * flow.c (propagate_one_insn): Preserve live-at-end registers
3007 2003-06-26 J"orn Rennecke <joern.rennecke@superh.com>
3009 * reload.c (can_reload_into): New function.
3010 (push_reload): Use it.
3012 2003-06-26 Kazu Hirata <kazu@cs.umass.edu>
3014 * config/h8300/h8300.c (compute_a_rotate_length): Fix the
3015 references to the amount of a rotation.
3017 2003-06-26 Nathanael Nerode <neroden@gcc.gnu.org>
3019 * config/sh/coff.h: Don't include dbxcoff.h.
3020 * config.gcc: List it here.
3022 2003-06-26 Kazu Hirata <kazu@cs.umass.edu>
3024 * postreload.c (reload_cse_simplify_set): Call cselib_lookup
3025 earlier. Don't check if SRC is a constant.
3027 2003-06-26 Kazu Hirata <kazu@cs.umass.edu>
3029 * Makefile.in (OBJS): Add postreload.o.
3030 Remove cselib.h from the dependency list for reload1.o.
3031 Add a dependency list for postreload.o.
3032 * reload.h: Change the comment for the prototype of
3034 * reload1.c: Don't include cselib.h.
3035 (reload_cse_regs): Move to postreload.c
3036 (reload_cse_regs_1): Likewise.
3037 (reload_cse_noop_set_p): Likewise.
3038 (reload_cse_simplify_set): Likewise.
3039 (reload_cse_simplify_operands): Likewise.
3040 (RELOAD_COMBINE_MAX_USES): Likewise.
3041 (reload_combine_ruid): Likewise.
3042 (LABEL_LIVE): Likewise.
3043 (reload_combine): Likewise.
3044 (reload_combine_note_use): Likewise.
3045 (reload_combine_note_store): Likewise.
3046 (reg_set_luid): Likewise.
3047 (reg_offset): Likewise.
3048 (reg_base_reg): Likewise.
3049 (reg_mode): Likewise.
3050 (move2add_luid): Likewise.
3051 (move2add_last_label_luid): Likewise.
3052 (MODES_OK_FOR_MOVE2ADD): Likewise.
3053 (reload_cse_move2add): Likewise.
3054 (move2add_note_store): Likewise.
3055 (reload_cse_simplify): Likewise.
3056 * postreload.c: New.
3058 2003-06-26 Kazu Hirata <kazu@cs.umass.edu>
3060 * config/avr/avr.c (final_prescan_insn): Remove support for
3062 * config/avr/avr.h (MASK_RTL_DUMP): Remove.
3063 (TARGET_RTL_DUMP): Likewise.
3064 (TARGET_SWITCHES): Remove -mrtl.
3066 2003-06-26 Kazu Hirata <kazu@cs.umass.edu>
3068 * config/h8300/h8300-protos.h: Change emit_a_rotate to
3069 output_a_rotate. Add a prototype for compute_a_rotate_length.
3070 * config/h8300/h8300.c (emit_a_rotate): Change to
3072 (compute_a_rotate_length): New.
3073 (h8300_adjust_insn_length): Remove.
3074 * config/h8300/h8300.h (ADJUST_INSN_LENGTH): Remove.
3075 * config/h8300/h8300.md (adjust_length): Remove.
3076 (*rotlqi3_1): Use output_a_rotate and compute_a_rotate_length.
3077 (*rotlhi3_1): Likewise.
3078 (*rotlsi3_1): Likewise.
3080 2003-06-26 Roger Sayle <roger@eyesopen.com>
3081 Richard Henderson <rth@redhat.com>
3083 * builtins.c (expand_builtin_mathfn): Always stabilize the argument
3084 list against re-evaluation. If expand_unop fails, call expand_call
3085 with the stabilized argument list rather than return NULL_RTX.
3086 (expand_builtin_mathfn2): Likewise, always stabilize the argument
3087 list, and call expand_call ourselves if expand_binop fails.
3089 2003-06-26 Eric Botcazou <ebotcazou@libertysurf.fr>
3091 PR optimization/11210
3092 * fold-const (decode_field_reference): Strip only NOPs that
3093 don't affect the sign.
3095 2003-06-26 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
3097 * gcc/config/sh/sh.md (push_fpscr): Enable for TARGET_SH2E.
3098 (pop_fpscr, fpu_switch): Likewise.
3100 2003-06-26 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
3102 * value-prof.c: New.
3103 * value-prof.h: New.
3104 * Makefile.in (value-prof.o): New.
3105 (LIBGCOV): Add _gcov_merge_single and _gcov_merge_delta
3106 (profile.o): Add value-prof.h and tree.h dependency.
3107 * flags.h (flag_profile_values): Declare.
3108 * gcov-io.h (GCOV_COUNTERS, GCOV_COUNTER_NAMES, GCOV_MERGE_FUNCTIONS):
3110 (GCOV_COUNTER_V_INTERVAL, GCOV_COUNTER_V_POW2, GCOV_COUNTER_V_SINGLE,
3111 GCOV_COUNTER_V_DELTA): New counter sections.
3112 (__gcov_merge_single, __gcov_merge_delta): Declare.
3113 * flow.c (mark_used_regs): Set subregs_of_mode only when the
3114 structure is initialized.
3115 * libgcov.c (__gcov_merge_single, __gcov_merge_delta): New functions.
3116 * profile.c: Include value-prof.h and tree.h.
3117 (gen_interval_profiler, gen_pow2_profiler, gen_one_value_profiler,
3118 gen_const_delta_profiler, instrument_values): New static functions.
3119 (get_exec_counts): Fix comment.
3120 (branch_prob): Invoke instrument_values.
3121 * toplev.c (flag_profile_values): New flag.
3122 * doc/invoke.texi (-fprofile-values): Document.
3124 2003-06-26 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
3126 * Makefile.in (cfgrtl.o): Add expr.h dependency.
3127 * cfgrtl.c: Include expr.h.
3128 (mark_killed_regs, safe_insert_insn_on_edge): New
3130 * config/i386/i386.h (AVOID_CCMODE_COPIES): Define.
3131 * basic-block.h (safe_insert_insn_on_edge): Declare.
3133 2003-06-26 Neil Booth <neil@daikokuya.co.uk>
3135 * c-opts.c (missing_arg): Make non-static.
3136 (c_common_handle_option): Don't check for missing arguments.
3137 * opts.c (handle_option): Check for missing arguments.
3139 2003-06-26 David Edelsohn <edelsohn@gnu.org>
3141 * config/rs6000/power4.md (power4-veccomplex): Correct latency.
3143 2003-06-25 Loren James Rittle <ljrittle@acm.org>
3145 * configure.in (ld_vers): Portability [sed].
3146 * configure: Regenerate with autoconf213.
3148 2003-06-25 H.J. Lu <hongjiu.lu@intel.com>
3150 * doc/extend.texi: Document new builtin functions for Intel
3151 Prescott New Intrunctions.
3153 * doc/invoke.texi: Document new command-line options, -mpni and
3154 -mno-pni, for Intel Prescott New Intrunctions.
3156 * config.gcc (extra_headers): Add pmmintrin.h for i[34567]86-*-*.
3158 * config/i386/i386.c (override_options): Turn on MASK_SSE2
3159 for -mpni. Turn on MASK_SSE for -msse2.
3160 (bdesc_2arg): Add PNI builtins with 2 args.
3161 (bdesc_1arg): Add PNI builtins with 1 arg.
3162 (ix86_init_mmx_sse_builtins): Handle PNI builtins.
3163 (ix86_expand_builtin): Likewise.
3165 * config/i386/i386.h (MASK_3DNOW, MASK_3DNOW_A,
3166 MASK_128BIT_LONG_DOUBLE, MASK_64BIT, MASK_MS_BITFIELD_LAYOUT,
3167 MASK_TLS_DIRECT_SEG_REFS): Renumbered.
3169 (TARGET_SWITCHES): Don't enable MASK_SSE for -msse2 here. Add
3171 (TARGET_CPU_CPP_BUILTINS): Defined __PNI__ for PNI.
3172 (ix86_builtins): Add PNI builtins.
3173 (config/i386/i386.md): Add PNI patterns.
3175 * config/i386/pmmintrin.h: New file.
3177 2003-06-25 Kazu Hirata <kazu@cs.umass.edu>
3179 * config/h8300/h8300.md (call): Fix the insn lengths.
3180 (call_value): Likewise.
3182 Thu Jun 26 00:13:35 CEST 2003 Jan Hubicka <jh@suse.cz>
3184 * c-common.c (handle_used_attribute): Use mark_referenced.
3185 * varasm.c (mark_referenced): Break out from ...
3186 (assemble_name): ... here.
3187 * tree.h (mark_referenced): Declare.
3189 2003-06-25 Wolfgang Bangerth <bangerth@dealii.org>
3191 * gccbug.in: Add PCH to list of categories.
3193 2003-06-25 Martin Schaffner <schaffner@gmx.li>
3195 * cppfiles.c: Clarify comments.
3196 * cpphash.h: Likewise.
3197 * cpplib.h: Likewise.
3198 * cppmacro.c: Likewise.
3199 * mkdeps.h: Likewise.
3201 2003-06-25 Neil Booth <neil@daikokuya.co.uk>
3203 * c-opts.c (complain_wrong_lang, write_langs): Remove.
3204 (c_common_handle_option): Complaints about wrong language are
3205 handled in opts.c now.
3206 * opts.c (complain_wrong_lang, write_langs, handle_options): New.
3207 (find_opt): Fix thinko.
3208 (handle_option): Update prototype. Complain about switches for
3209 a different front end.
3210 * opts.h (lang_names, handle_options): New.
3211 (handle_option): Remove.
3212 * opts.sh: Write out language names array.
3213 * toplev.c (parse_options_and_default_flags): Use handle_options.
3215 2003-06-25 H.J. Lu <hongjiu.lu@intel.com>
3217 * config/i386/i386.c (MASK_SSE1): Removed.
3218 (MASK_SSE164): Removed.
3219 (MASK_SSE264): Removed.
3220 (bdesc_2arg): Replace MASK_SSE1 with MASK_SSE. Replace
3221 MASK_SSE164 with MASK_SSE | MASK_64BIT. Replace MASK_SSE264
3222 with MASK_SSE2 | MASK_64BIT.
3223 (bdesc_1arg): Likewise.
3224 (ix86_init_mmx_sse_builtins): Likewise.
3226 * config/i386/i386.h (TARGET_SSE): Remove MASK_SSE2.
3227 (TARGET_SWITCHES): Enable both MASK_SSE and MASK_SSE2 for
3230 2003-06-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3232 * hwint.h (HOST_WIDE_INT_PRINT, HOST_WIDE_INT_PRINT_C): New macros.
3233 (HOST_WIDE_INT_PRINT_DEC_SPACE,
3234 HOST_WIDE_INT_PRINT_UNSIGNED_SPACE,
3235 HOST_WIDEST_INT_PRINT_DEC_SPACE,
3236 HOST_WIDEST_INT_PRINT_UNSIGNED_SPACE): Delete.
3237 (HOST_WIDE_INT_PRINT_DEC, HOST_WIDE_INT_PRINT_DEC_C,
3238 HOST_WIDE_INT_PRINT_UNSIGNED, HOST_WIDE_INT_PRINT_HEX): Define in
3239 terms of HOST_WIDE_INT_PRINT and possibly HOST_WIDE_INT_PRINT_C.
3241 * final.c (asm_fprintf): Use HOST_WIDE_INT_PRINT.
3242 * ra-debug.c (dump_static_insn_cost): Likewise.
3244 2003-06-26 Nick Clifton <nickc@redhat.com>
3246 * config/arm/arm.h (BIGGEST_FIELD_ALIGNMENT): Define instead
3247 of ADJUST_FIELD_ALIGN if IN_TARGET_LIBS.
3248 Replace occurances of '???' with 'XXX' incase they are
3249 mistaken for trigraphs.
3250 (THUMB_PRINT_OPERAND_ADDRESS): abort if a compound address
3251 does not have a register for the first operand.
3253 2003-06-25 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
3255 * config/sh/sh.c (sh_register_move_cost):
3256 Add case for moving between MAC_REGS.
3258 2003-06-25 Zack Weinberg <zack@codesourcery.com>
3261 * langhooks.h (struct lang_hooks): Add no_body_blocks bool.
3262 * langhooks-def.h (LANG_HOOKS_NO_BODY_BLOCKS): New; default false.
3263 * c-lang.c, objc/objc-lang.c: Override LANG_HOOKS_NO_BODY_BLOCKS
3265 * stmt.c (is_body_block): If lang_hooks.no_body_blocks, always
3268 2003-06-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3270 * Makefile.in (bt-load.o): Depend on $(TM_P_H).
3271 * bt-load.c: Include "tm_p.h".
3273 2003-06-25 Kazu Hirata <kazu@cs.umass.edu>
3275 * config/h8300/h8300.c (compute_mov_length): Adjust for the
3277 * config/h8300/h8300.md (*movsi_h8300): Optimize the load of
3278 an SImode constant whose upper and lower are the same.
3280 Wed Jun 25 11:31:59 CEST 2003 Jan Hubicka <jh@suse.cz>
3282 * varasm.c (assemble_name): Mark needed variables even when
3283 global info is ready.
3285 2003-06-24 Jerry Quinn <jlquinn@optonline.net>
3288 * gcc/doc/invoke.texi (Optimization Options): Remove -Os from
3289 -freorder-functions description.
3291 2003-06-25 Josef Zlomek <zlomekj@suse.cz>
3293 * dwarf2out.c (gen_field_die): Return if type of decl is error mark.
3295 2003-06-25 Neil Booth <neil@daikokuya.co.uk>
3297 * opts.c (common_handle_option): Add missing break;s.
3299 2003-06-24 Kazu Hirata <kazu@cs.umass.edu>
3301 * config/h8300/h8300-protos.h: Add a prototype for
3303 * config/h8300/h8300.c (compute_mov_length): New.
3304 * config/h8300/h8300.md (*movqi_h8300): Use it.
3305 (*movqi_h8300hs): Likewise.
3306 (movstrictqi): Likewise.
3307 (*movhi_h8300): Likewise.
3308 (*movhi_h8300hs): Likewise.
3309 (movstricthi): Likewise.
3310 (*movsi_h8300): Likewise.
3311 (*movsf_h8300): Likewise.
3312 (*movsi_h8300hs): Likewise.
3313 (*movsf_h8300hs): Likewise.
3315 2003-06-24 Kazu Hirata <kazu@cs.umass.edu>
3317 * jump.c (next_nondeleted_insn): Remove.
3318 * rtl.h: Remove the prototype for next_nondeleted_insn.
3320 2003-06-24 Roger Sayle <roger@eyesopen.com>
3322 PR optimization/11311
3323 * builtins.c (powi_cost): Fix typo. The number of multiplications
3324 required is the number to reduce the argument, result, plus the
3325 cost of calculating the residual, val [not n, the original value].
3327 2003-06-24 Roger Sayle <roger@eyesopen.com>
3329 * config/alpha/osf5.h (TARGET_C99_FUNCTIONS): Define.
3331 2003-06-24 Richard Henderson <rth@redhat.com>
3332 (blame to: Loren James Rittle <ljrittle@acm.org>)
3334 * real.h (ieee_extended_intel_96_round_53_format): New.
3335 * real.c (ieee_extended_intel_96_round_53_format): New.
3336 * config/i386/freebsd.h (SUBTARGET_OVERRIDE_OPTIONS): Use it
3337 for XFmode and TFmode.
3339 2003-06-24 Kazu Hirata <kazu@cs.umass.edu>
3341 * config/h8300/h8300.md (4 anonymous patterns): Give internal
3343 (movsi_h8300): Change the name to *movsi_h8300.
3344 (movsi_h8300hs): Change the name to *movsi_h8300hs.
3345 (movsf_h8300): Change the name to *movsf_h8300.
3346 (movsf_h8300hs): Change the name to *movsf_h8300hs.
3348 2003-06-24 Jakub Jelinek <jakub@redhat.com>
3350 * builtins.c (expand_builtin_strcpy): Don't evaluate side-effects in
3353 2003-06-24 J"orn Rennecke <joern.rennecke@superh.com>
3355 Back out these patches:
3356 2003-06-02 J"orn Rennecke <joern.rennecke@superh.com>
3357 * sh.h (OLD_ARG_MODE): New macro.
3358 (FUNCTION_ARG_ADVANCE, FUNCTION_ARG_PASS_BY_REFERENCE): Use it.
3359 (FUNCTION_ARG_1): Break out of:
3360 (FUNCTION_ARG). Use OLD_ARG_MODE.
3361 2003-06-06 J"orn Rennecke <joern.rennecke@superh.com>
3362 * sh.h (FUNCTION_ARG_1): Consistently use NEW_MODE for the mode
3363 of the generated register.
3365 * sh.h (FUNCTION_ARG_SCmode_WART): Define.
3366 (FUNCTION_ARG): Unless FUNCTION_ARG_SCmode_WART is defined and
3367 an even number of floating point regs are in use, use the same
3368 sequence of argument passing registers for SCmode as would be
3369 used for two SFmode values.
3370 * sh.c (sh_va_arg): If FUNCTION_ARG_SCmode_WART is defined,
3371 swap real / imaginary parts in incoming SCmode values passed
3374 2003-06-24 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
3377 * config/alpha/alpha.md (sqrtdf2): Fix operand substitution.
3379 Tue Jun 24 18:49:33 CEST 2003 Jan Hubicka <jh@suse.cz>
3381 * Makefile.in (cgraph.o): Depend on output.h, not depend on
3383 * cgraph.c: Do not include tree-inline.h; include output.h
3384 (known_fns): Rename to ...
3385 (known_decls): ... this one; update all uses.
3386 (cgraph_varpool_hash): New static variable.
3387 (cgraph_varpool_n_nodes, cgraph_varpool_nodes_queue): New global
3389 (cgraph_varpool_hash_node, eq_cgraph_varpool_node, cgraph_varpool_node,
3390 cgraph_varpool_node_for_identifier, cgraph_varpool_mark_needed_node,
3391 cgraph_varpool_finalize_decl, cgraph_varpool_assemble_pending_decls):
3393 * cgraph.h (cgraph_varpool_node): New structure.
3394 (cgraph_varpool_n_nodes, cgraph_varpool_nodes_queue): Declare.
3395 (cgraph_varpool_node, cgraph_varpool_node_for_identifier,
3396 cgraph_varpool_finalize_decl, cgraph_varpool_mark_needed_node,
3397 cgraph_varpool_asemble_pending_decls): Declare.
3398 * cgraphunit.c (record_call_1): Notice variable references.
3399 (cgraph_finalize_compilation_unit): Assemble pending variables.
3400 * toplev.c (wrapup_global_declarations): Use varpool.
3401 (compile_file): Assemble pending declarations.
3402 (rest_of_decl_compilation): Use varpool in unit-at-a-time mode.
3403 * varasm.c (assemble_name): Notice varpool references.
3405 Tue Jun 24 13:52:11 CEST 2003 Jan Hubicka <jh@suse.cz>
3407 * langhooks-def.h (LANG_HOOKS_PREPARE_ASSEMBLE_VARIABLE): New macro.
3408 * langhooks.h (lang_hooks_for_decls): Add prepare_assemble_variable.
3409 * varasm.c (assemble_variable): Call prepare_assemble_variable.
3411 2003-06-23 Roger Sayle <roger@eyesopen.com>
3413 * builtins.c (expand_builtin): Use expand_builtin_pow to expand
3414 calls for pow, powf, powl and their __builtin_ variants.
3415 (expand_builtin_pow): If the second argument is a constant
3416 integer and compiling with -ffast-math, use expand_powi to
3417 generate RTL if powi_cost is less than POWI_MAX_MULTS.
3418 (powi_cost): New function to return the number of multiplications
3419 necessary to evaluate an Nth power, for integer constant N.
3420 (expand_powi): New function to expand the RTL for evaluating
3421 the Nth power of a floating point value, for integer constant N.
3423 * doc/tm.texi (POWI_MAX_MULTS): Document new target macro.
3425 Mon Jun 23 23:07:35 CEST 2003 Jan Hubicka <jh@suse.cz>
3427 * cgraph.c (cgraph_nodes_queue): Declare.
3428 (eq_node): Take identifier as p2.
3429 (cgraph_node): Update htab_find_slot_with_hash call.
3430 (cgraph_node_for_identifier): New.
3431 (cgraph_mark_needed_node): Move here from cgraphunit.c.
3432 * cgraph.h (cgraph_nodes_queue): Declare.
3433 (cgraph_node_for_identifier): Declare.
3434 * cgraphunit.c (cgraph_finalize_function): Collect entry points here
3435 instead of in cgraph_finalize_compilation_unit; constructors and
3436 destructors are entry points.
3437 (cgraph_finalize_compilation_unit): Reorganize debug outout;
3438 examine nested functions after lowerng; call collect_functions hook.
3439 (cgraph_mark_local_functions): DECL_COMDAT functions are not local.
3440 (cgraph_finalize_compilation_unit): Do not collect entry points.
3441 * varasm.c: Include cgraph.h
3442 (assemble_name): Mark referenced identifier as needed.
3444 * cgraphunit.c (record_call_1): Use get_callee_fndecl.
3446 2003-06-23 Jakub Jelinek <jakub@redhat.com>
3448 * config/i386/i386.c (x86_output_mi_thunk): Don't pass MEM to %P0,
3450 * config/s390/s390.c (s390_output_mi_thunk): Avoid .plt in -m31
3451 mode, as it requires pic register loaded.
3453 * varasm.c (resolve_unique_section): Remove prototype. No longer
3455 * tree.h (resolve_unique_section): New prototype.
3457 2003-06-23 Andreas Schwab <schwab@suse.de>
3460 * dwarf2out.c (loc_descriptor_from_tree): Handle MODIFY_EXPR by
3461 recursing through first argument.
3463 2003-06-23 Kazu Hirata <kazu@cs.umass.edu>
3465 * ChangeLog.1: Fix a typo.
3466 * cfgrtl.c: Fix comment typos.
3467 * dwarf2out.c: Likewise.
3468 * expmed.c: Likewise.
3469 * genrecog.c: Likewise.
3471 * rtlanal.c: Likewise.
3472 * ssa-dce.c: Likewise.
3473 * toplev.c: Likewise.
3475 2003-06-23 Kazu Hirata <kazu@cs.umass.edu>
3477 * doc/extend.texi: Fix typos.
3478 * doc/md.texi: Likewise.
3479 * doc/tm.texi: Likewise.
3481 2003-06-23 Kazu Hirata <kazu@cs.umass.edu>
3483 * basic-block.h: Fix comment formatting.
3484 * bt-load.c: Likewise.
3485 * builtins.c: Likewise.
3486 * c-common.c: Likewise.
3487 * c-common.h: Likewise.
3488 * c-format.c: Likewise.
3489 * coverage.c: Likewise.
3490 * cpplib.h: Likewise.
3491 * cpppch.c: Likewise.
3492 * dbxout.c: Likewise.
3493 * diagnostic.c: Likewise.
3494 * dwarf2out.c: Likewise.
3496 * fold-const.c: Likewise.
3497 * function.c: Likewise.
3499 * gcov-io.c: Likewise.
3500 * gcov-io.h: Likewise.
3502 * profile.c: Likewise.
3504 * sched-deps.c: Likewise.
3506 2003-06-23 Roger Sayle <roger@eyesopen.com>
3507 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3509 * doc/contrib.texi (Contributors): Add a note on testing and
3510 remove duplicates from testers list.
3512 2003-06-23 Nick Clifton <nickc@redhat.com>
3514 * read-rtl.c (read_braced_string): Check for EOF. If
3515 encountered issue an error message.
3517 2003-06-23 Kazu Hirata <kazu@cs.umass.edu>
3519 * doc/invoke.texi: Document dump options, dT and dW.
3521 2003-06-23 Kazu Hirata <kazu@cs.umass.edu>
3523 * genrecog.c (pred_table): Remove the entry for
3524 mode_independent_operand.
3525 * recog.c (next_insns_test_no_inequality): Remove.
3526 (mode_independent_operand): Likewise.
3527 * recog.h: Remove the prototype for mode_independent_operand.
3529 2003-06-22 Kazu Hirata <kazu@cs.umass.edu>
3531 * config/h8300/h8300.c (output_simode_bld): Use rotxl.l to
3533 * config/h8300/h8300.md (*extzv_1_r_h8300hs): Change cc of the
3534 second alternative to set_znv.
3535 (*extzv_1_r_inv_h8300hs): Likewise.
3537 2003-06-23 Hans-Peter Nilsson <hp@bitrange.com>
3539 * configure.in (in_tree_gas): Find out here whether GAS is ELF,
3540 set in_tree_gas_is_elf accordingly.
3541 (in_tree_ld): Find out whether LD emulation is ELF, set
3542 in_tree_ld_is_elf accordingly.
3543 (gcc_cv_as_subsections, gcc_cv_as_hidden, gcc_cv_as_leb128)
3544 (gcc_cv_as_eh_frame, gcc_cv_as_shf_merge)
3545 (gcc_cv_as_dwarf2_debug_line, gcc_cv_as_gdwarf2_flag)
3546 (gcc_cv_as_gstabs_flag): Use $in_tree_gas_is_elf instead of
3547 grepping gas/Makefile.
3548 (gcc_cv_ld_ro_rw_mix, gcc_cv_ld_eh_frame_hdr, gcc_cv_ld_pie): Use
3549 $in_tree_ld_is_elf instead of grepping ld/Makefile.
3550 * configure: Regenerate.
3552 2003-06-22 Roger Sayle <roger@eyesopen.com>
3554 * builtins.c (expand_builtin_mathfn_2): Use tree_cons to build
3555 up the stabilized argument list, not build_tree_list.
3556 (expand_builtin_strcpy): Construct new argument list manually
3557 instead of using chainon to modify the original argument list.
3558 (expand_builtin_stpcpy): Construct new argument list manually
3559 instead of using copy_list and chainon.
3560 (expand_builtin_sprintf): New function. Optimize calls to
3561 sprintf when the format is "%s" or doesn't contain a '%'.
3562 (expand_builtin): Expand BUILT_IN_SPRINTF using the new function
3563 expand_builtin_sprintf.
3565 2003-06-22 Andreas Schwab <schwab@suse.de>
3567 * function.c (set_insn_locators): Mark as unused.
3569 2003-06-22 Neil Booth <neil@daikokuya.co.uk>
3571 * common.opt: Add -finline-limit.
3572 * opts.c (common_handle_options): Handle it.
3573 * opts.sh: Temporary kludge for -finline-limit.
3574 * toplev.c (decode_f_option, independent_decode_option): Die.
3575 (parse_options_and_default_flags): No independent_decode_option.
3577 2003-06-22 Andreas Jaeger <aj@suse.de>
3579 * calls.c (emit_call_1): Readd lost ATTRIBUTE_UNUSED.
3581 2003-06-22 Kazu Hirata <kazu@cs.umass.edu>
3583 * doc/invoke.texi: Document dumps, .btl, .cfg, and .bypass.
3585 2003-06-22 Andreas Schwab <schwab@suse.de>
3587 * doc/invoke.texi: Remove leading `-' from options in index.
3589 2003-06-22 Kazu Hirata <kazu@cs.umass.edu>
3591 * bt-load.c: Follow spelling conventions.
3593 2003-06-22 Kazu Hirata <kazu@cs.umass.edu>
3595 * expr.c (emit_move_insn_1): Fix a comment typo.
3597 2003-06-22 Kazu Hirata <kazu@cs.umass.edu>
3599 * doc/invoke.texi: Alphabetize dump options.
3601 2003-06-22 Kazu Hirata <kazu@cs.umass.edu>
3603 * doc/invoke.texi: Remove a duplicate -dk.
3605 2003-06-22 Kazu Hirata <kazu@cs.umass.edu>
3607 * doc/invoke.texi: Update dump file names.
3609 2003-06-22 Zack Weinberg <zack@codesourcery.com>
3611 * config/i370/i370.c, config/i370/i370.h: Use HOST_CHARSET_ASCII
3612 and HOST_CHARSET_EBCDIC, not HC_ASCII and HC_EBCDIC.
3614 2003-06-22 Kazu Hirata <kazu@cs.umass.edu>
3616 * doc/rtl.texi: Fix the @findex for pre_modify.
3618 2003-06-22 Andreas Jaeger <aj@suse.de>
3620 * caller-save.c: Convert to ISO C90.
3621 * calls.c: Likewise.
3623 * cfganal.c: Likewise.
3624 * cfgbuild.c: Likewise.
3625 * cfgcleanup.c: Likewise.
3626 * cfghooks.c: Likewise.
3627 * cfglayout.c: Likewise.
3628 * cfglayout.h: Likewise.
3629 * cfgloop.c: Likewise.
3630 * cfgloop.h: Likewise.
3631 * cfgloopanal.c: Likewise.
3632 * cfgloopmainip.c: Likewise.
3633 * cfgrtl.c: Likewise.
3635 2003-06-22 Richard Earnshaw <rearnsha@arm.com>
3637 * arm.h (BIGGEST_ALIGNMENT): Use TARGET_REALLY_IWMMXT for selecting
3640 2003-06-22 Richard Earnshaw <rearnsha@arm.com>
3642 * arm.md (all call_value patterns): Remove register constraints on
3645 2003-06-22 Neil Booth <neil@daikokuya.co.uk>
3647 * common.opt: More -f switches.
3648 * opts.c (common_handle_options): Handle them.
3649 * toplev.c (time_report): Make extern.
3650 (f_options): USe flag_dummy.
3651 (decode_f_option): No need to use f_options now.
3652 * toplev.h (flag_cprop_registers, flag_ssa, flag_ssa_ccp,
3653 flag_ssa_dce, time_report, flag_new_regalloc): Make extern.
3655 2003-06-22 Andreas Jaeger <aj@suse.de>
3657 * c-lex.c: Convert to ISO C90.
3658 * c-objc-common.c: Likewise.
3659 * c-opts.c: Likewise.
3660 * c-pch.c: Likewise.
3661 * c-ppoutput.c: Likewise.
3662 * c-pragma.h: Likewise.
3663 * c-pretty-print.c: Likewise.
3664 * c-pretty-print.h: Likewise.
3665 * c-semantics.c: Likewise.
3666 * c-tree.h: Likewise.
3667 * c-typeck.c: Likewise.
3669 * c-lang.c: Convert to ISO C90.
3671 2003-06-22 Neil Booth <neil@daikokuya.co.uk>
3673 * opts.c (find_opt): Fix to always guarantee a find of a
3674 switch with joined parameter.
3675 * opts.h (struct cl_option): New member back_chain.
3676 * opts.sh: Update to calculate and add back_chain member.
3678 2003-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
3680 * diagnostic.h (output_host_wide_integer): Declare.
3681 * diagnostic.c (output_long_long_decicaml): New function.
3682 (output_host_wide_integer): Likewise.
3683 (output_format): Use them. Handle "%ll" and "%w".
3685 2003-06-21 Jason Thorpe <thorpej@wasabisystems.com>
3687 * config.gcc (*-*-netbsd*): Add t-libgcc-pic to tmake_file.
3689 2003-06-21 Zack Weinberg <zack@codesourcery.com>
3691 * aclocal.m4 (gcc_AC_C_CHARSET): Delete.
3692 * configure.in: Don't use gcc_AC_C_CHARSET.
3693 * configure, config.in: Regenerate.
3694 * config/i370/i370.c, config/i370/i370.h: Use
3695 (HOST_CHARSET == HC_EBCDIC) or (HOST_CHARSET == HC_ASCII)
3696 instead of HOST_EBCDIC or !HOST_EBCDIC. Clarify comments a tad.
3698 2003-06-21 Neil Booth <neil@daikokuya.co.uk>
3700 * Makefile.in: Update.
3701 * common.opt: New switches.
3702 * opts.c: Include diagnostic.h.
3703 (common_handle_option): Handle new switches.
3704 * toplev.c (flag_loop_optimize, flag_crossjumping, flag_if_conversion,
3705 flag_if_conversion2, flag_delete_null_pointer_checks,
3706 flag_rerun_cse_after_loop): Make extern.
3708 (f_options): Update to use flag_dummy for moved options.
3709 (decode_f_option): Some switches moved to opts.c.
3710 * toplev.h (flag_loop_optimize, flag_crossjumping, flag_if_conversion,
3711 flag_if_conversion2, flag_delete_null_pointer_checks,
3712 flag_rerun_cse_after_loop, flag_keep_static_consts, flag_peel_loops,
3713 flag_tracer, flag_thread_jumps, flag_unroll_loops,
3714 flag_unroll_all_loops, flag_unswitch_loops): New.
3716 Sat Jun 21 13:41:00 CEST 2003 Jan Hubicka <jh@suse.cz>
3718 * i386.c (ix86_va_arg): Fix allocation of temporary slot.
3720 2003-06-20 Kazu Hirata <kazu@cs.umass.edu>
3722 * config/h8300/h8300-protos.h: Add a prototype for
3723 same_cmp_preceding_p.
3724 * config/h8300/h8300.c (same_cmp_preceding): New.
3725 * config/h8300/h8300.md: Extend peephole2's that transform
3726 compare:SI into shorter sequences so that they can deal with
3729 2003-06-21 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3731 * doc/contrib.texi (Contributors): Use Windows instead of Win32.
3733 Update Andreas Jaeger's entry.
3735 Merge the two entries of Kaveh Ghazi, David Edelsohn, and
3738 2003-06-21 Nathanael Nerode <neroden@gcc.gnu.org>
3740 * mkconfig.sh: Add multiple inclusion guards to generated headers.
3742 2003-06-20 Neil Booth <neil@daikokuya.co.uk>
3744 * c-decl.c (store_parm_decls): Make saved_warn_shadow boolean.
3745 * common.opt: Add remaining -W options and -g.
3746 * diagnostic.c (warnings_are_errors): Remove.
3747 * flags.h: Make most warning flags boolean.
3748 * opts.c (common_handle_option): Handle remaining -W options, and -g.
3749 Move many warning flags from toplev.c, making them boolean.
3750 * toplev.c: Remove many warning flags.
3751 (decode_W_option): Remove.
3752 (decode_g_option): Make extern. Error on unknown switch.
3753 (lang_independent_W_options): Use warn_dummy.
3754 (independent_decode_option): Just handle -f switches now.
3755 * toplev.h (decode_g_option): New.
3757 2003-06-20 Aldy Hernandez <aldyh@redhat.com>
3760 * config/rs6000/rs6000.h (LEGITIMATE_CONSTANT_P): Adjust for
3763 2003-06-20 Kelley Cook <kelleycook@wideopenwest.com>
3765 * opts.sh: Tweak awk script for portability.
3767 2003-06-20 Mark Mitchell <mark@codesourcery.com>
3770 * tree-inline.c (expand_call_inline): Do not warn about failing to
3771 inline functions declared in system headers.
3772 * doc/invoke.texi (-Winline): Expand on documentation.
3774 2003-06-20 Richard Henderson <rth@redhat.com>
3776 * config/alpha/alpha.c (alpha_file_start): Disable
3777 file_start_file_directive for ELF and not MDEBUG.
3779 2003-06-20 J"orn Rennecke <joern.rennecke@superh.com>
3781 * sh.h (ROUND_TYPE_ALIGN): Remove.
3783 2003-06-20 Richard Henderson <rth@redhat.com>
3785 * hooks.c (hook_int_void_no_regs): Rename from
3786 hook_reg_class_void_no_regs; change return type.
3788 * target-def.h (TARGET_BRANCH_TARGET_REGISTER_CLASS): Update.
3789 * target.h (branch_target_register_class): Change return type to int.
3791 * config/sh/sh.c (sh_target_reg_class): Change return type.
3792 * doc/tm.texi (TARGET_BRANCH_TARGET_REGISTER_CLASS): Likewise.
3794 2003-06-20 Andreas Tobler <toa@pop.agri.ch>
3796 * c-format.c: Change _Bool to bool reverting part of the last
3799 2003-06-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3801 * som.h (ASM_OUTPUT_SOURCE_LINE): Use targetm.strip_name_encoding to
3802 strip name encoding.
3804 2003-06-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3806 * configure.in (gcc_cv_as_gstabs_flag): Disable if assembler warns.
3807 * configure: Regenerate.
3808 Fixes PR driver/9362.
3810 2003-06-20 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
3812 * config/alpha/alpha.c (alpha_file_start): Fix typo.
3814 2003-06-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3816 * config/mips/mips.h (PUT_SDB_FUNCTION_END): Pass 0 as third arg
3817 to ASM_OUTPUT_SOURCE_LINE.
3819 2003-06-20 Daniel Egger <degger@fhm.edu>
3820 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3822 * doc/install.texi (Building): Correct and improve statement
3823 about parallel builds.
3825 2003-06-20 Andreas Jaeger <aj@suse.de>
3827 * c-common.c: Change _Bool to bool reverting part of the last
3830 2003-06-20 Nathan Sidwell <nathan@codesourcery.com>
3832 * tree.h (expand_function_end): Remove all parameters.
3833 * function.c (expand_function_end): Remove all parameters.
3834 Use input_location. Never expand_end_bindings.
3835 * c-decl.c (c_expand_body_1): Adjust expand_function_end call.
3836 * coverage.c (create_coverage): Likewise.
3838 2003-06-20 Nick Clifton <nickc@redhat.com>
3840 * doc/extend.texi (ARM Built-in Functions): New node. Document
3841 ARM builtin functions for iWMMXt support.
3843 2003-06-20 Eric Botcazou <ebotcazou@libertysurf.fr>
3845 * doc/install.texi (--with-gnu-as): Mention SPARC/Solaris and
3846 SPARC64/Solaris as platforms where --with-gnu-as makes a difference.
3847 (--with-as): Add @anchor.
3848 (--with-gnu-ld): Fix typo.
3849 (--with-ld): Add @uref to --with-as.
3851 2003-06-19 Zack Weinberg <zack@codesourcery.com>
3853 * doc/tm.texi: Uniformly use @defmac for macros, rather than
3854 @table items. Minor formatting and editorial corrections.
3856 2003-06-20 Neil Booth <neil@daikokuya.co.uk>
3858 * line-map.c, line-map.h: Convert to ISO prototypes.
3860 2003-06-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
3862 * gcse.c (store_killed_in_insn): Fix.
3864 2003-06-19 Zack Weinberg <zack@codesourcery.com>
3866 * target.h (asm_out.file_start, file_start_app_off,
3867 file_start_file_directive): New hooks.
3868 * target-def.h (TARGET_ASM_FILE_START_FILE_DIRECTIVE,
3869 TARGET_ASM_FILE_START_APP_OFF, TARGET_ASM_FILE_START):
3870 New hook-definition macros.
3871 * doc/tm.texi: Document new hooks; remove docs of ASM_FILE_START.
3872 * varasm.c (default_file_start): New.
3873 * output.h: Prototype it.
3874 * toplev.c (init_asm_output): Use targetm.asm_out.file_start.
3875 * system.h: Poison ASM_FILE_START.
3877 * config/alpha/alpha.c (alpha_write_verstamp): Delete.
3878 (alpha_file_start): New, define if !TARGET_ABI_UNICOSMK.
3879 (unicosmk_asm_file_start): Rename unicosmk_file_start,
3880 make static, take no arguments.
3881 (TARGET_ASM_FILE_START, TARGET_ASM_FILE_END,
3882 TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set as appropriate.
3883 * config/alpha/unicosmk.h: Don't define ASM_FILE_START nor
3884 TARGET_ASM_FILE_END. Remove reference to ASM_FILE_START in
3886 * config/arc/arc.c (arc_asm_file_start): Rename
3887 arc_file_start, take no arguments, make static.
3888 (TARGET_ASM_FILE_START): Set it.
3889 * config/arm/arm.c (aof_file_start): New static function.
3890 (TARGET_ASM_FILE_START): Set it, when appropriate.
3891 * config/arm/coff.h, config/arm/elf.h:
3892 Set TARGET_ASM_FILE_START_APP_OFF to true.
3893 * config/avr/avr.c (asm_file_start): Rename avr_file_start,
3894 take no arguments, make static.
3895 (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE):
3897 * config/c4x/c4x.c (c4x_file_start): New static function.
3898 (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE):
3900 * config/cris/cris.c (cris_file_start): New static function.
3901 (TARGET_ASM_FILE_START): Set it.
3902 * config/dsp16xx/dsp16xx.c (coff_dsp16xx_file_start): Rename
3903 dsp16xx_file_start, make static.
3904 (luxworks_dsp16xx_file_start): Delete.
3905 (TARGET_ASM_FILE_START): Set it.
3906 * config/h8300/h8300.c (asm_file_start): Rename
3907 h8300_file_start, make static, take no arguments.
3908 (TARGET_ASM_FILE_START): Set it.
3909 * config/i370/i370.c (i370_file_start): New static function.
3910 (TARGET_ASM_FILE_START): Set it.
3911 * config/i386/i386.c (x86_file_start): New static function.
3912 (TARGET_ASM_FILE_START): Set it.
3913 * config/i386/i386.h (X86_FILE_START_VERSION_DIRECTIVE,
3914 X86_FILE_START_FLTUSED): New macros, default to false.
3915 * config/i386/i386-interix.h: Override X86_FILE_START_FLTUSED to 1.
3916 * config/i386/sysv4.h, config/i386/sco5.h: Override
3917 X86_FILE_START_VERSION_DIRECTIVE to true.
3918 * config/ia64/ia64.c (ia64_file_start): New static function.
3919 (TARGET_ASM_FILE_START): Set it.
3920 (emit_safe_across_calls): Take no arguments.
3921 * config/ia64/ia64.md: Update to match.
3922 * config/m32r/m32r.c (m32r_asm_file_start): Rename
3923 m32r_file_start, make static, take no arguments.
3924 (TARGET_ASM_FILE_START): Set it.
3925 * config/m68hc11/m68hc11.c (m68hc11_asm_file_start): Rename
3926 m68hc11_file_start, make static, take no arguments.
3927 (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
3928 (print_options): Delete.
3929 * config/m68k/m68k.c (m68k_hp320_file_start): New static function.
3930 (TARGET_ASM_FILE_START_APP_OFF): Set.
3931 * config/m68k/hp320.h: Set TARGET_ASM_FILE_START to
3932 m68k_hp320_file_start.
3933 * config/mips/mips.c (iris6_asm_file_start, mips_asm_file_start):
3934 Make static, take no arguments.
3935 (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
3936 * config/mmix/mmix.c (mmix_asm_file_start): Rename
3937 mmix_file_start, make static, take no arguments.
3938 (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
3939 * config/mn10300/mn10300.c (asm_file_start): Rename
3940 mn10300_file_start, make static, take no arguments.
3941 (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
3942 * config/ns32k/ns32k.c (TARGET_ASM_FILE_START_APP_OFF): Set.
3943 * config/pa/pa.c (pa_file_start_level, pa_file_start_space,
3944 pa_file_start_file, pa_file_start_mcount, pa_elf_file_start,
3945 pa_som_file_start, pa_linux_file_start, pa_hpux64_gas_file_start,
3946 pa_hpux64_hpas_file_start): New static functions.
3947 * config/pa/elf.h: Set TARGET_ASM_FILE_START to pa_elf_file_start.
3948 * config/pa/pa-linux.h: Set TARGET_ASM_FILE_START to
3949 pa_linux_file_start.
3950 * config/pa/pa64-hpux.h: Set TARGET_ASM_FILE_START to
3951 pa_hpux64_gas_file_start or pa_hpux64_hpas_file_start, as
3953 * config/pa/som.h: Set TARGET_ASM_FILE_START to pa_som_file_start.
3954 * config/rs6000/rs6000.c: Include xcoffout.h when TARGET_XCOFF.
3955 (rs6000_file_start): Make static, take no arguments. Reset
3956 default_cpu under certain conditions.
3957 (rs6000_xcoff_file_start): New function.
3958 * config/rs6000/rs6000.h (TARGET_ASM_FILE_START): Set.
3959 * config/rs6000/xcoff.h (TARGET_ASM_FILE_START,
3960 TARGET_ASM_FILE_START_FILE_DIRECTIVE): Override.
3961 * config/sh/sh.c (output_file_start): Rename
3962 sh_file_start, make static, take no arguments. Merge in old
3963 code from sh/elf.h's ASM_FILE_START, conditioned on TARGET_ELF.
3964 (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
3965 * config/sh/sh.c (TARGET_ELF): Define to 0.
3966 * config/sh/elf.h (TARGET_ELF): Redefine to 1.
3967 * config/v850/v850.c (asm_file_start): Delete.
3968 (TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
3969 * config/vax/vax.c (vax_file_start): New static function.
3970 (TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_APP_OFF): Set.
3972 * config/darwin.h: Override ASM_FILE_START_FILE_DIRECTIVE to false.
3973 * config/elfos.h, config/svr3.h, config/arm/elf.h, config/arm/pe.h
3974 * config/i386/att.h, config/i386/gas.h, config/i386/linux.h
3975 * config/i386/sysv4.h, config/i386/sco5.h, config/i960/i960-coff.h
3976 * config/m68k/coff.h, config/m68k/hp320.h, config/mcore/mcore-pe.h
3977 * config/vax/vaxv.h: Set ASM_FILE_START_FILE_DIRECTIVE to true.
3979 * config/darwin.h, config/elfos.h, config/alpha/elf.h
3980 * config/alpha/openbsd.h, config/alpha/osf.h, config/alpha/vms.h
3981 * config/arc/arc.h, config/arm/aof.h, config/arm/aout.h
3982 * config/arm/coff.h, config/arm/elf.h, config/arm/pe.h
3983 * config/avr/avr.h, config/c4x/c4x.h, config/cris/cris.h
3984 * config/dsp16xx/dsp16xx.h, config/h8300/elf.h, config/h8300/h8300.h
3985 * config/i370/i370.h, config/i386/att.h, config/i386/gas.h
3986 * config/i386/i386-interix.h, config/i386/linux.h, config/i386/sysv4.h
3987 * config/i386/sco5.h, config/i960/i960-coff.h, config/i960/i960.h
3988 * config/ia64/ia64.h, config/ia64/sysv4.h, config/m32r/m32r.h
3989 * config/m68hc11/m68hc11.h, config/m68k/coff.h, config/m68k/m68k.h
3990 * config/mcore/mcore-pe.h, config/mips/iris6.h, config/mips/mips.h
3991 * config/mmix/mmix.h, config/mn10300/mn10300.h, config/ns32k/ns32k.h
3992 * config/pa/elf.h, config/pa/pa-linux.h, config/pa/pa64-hpux.h
3993 * config/pa/som.h, config/pdp11/pdp11.h, config/rs6000/linux64.h
3994 * config/rs6000/lynx.h, config/rs6000/xcoff.h, config/sh/elf.h
3995 * config/sh/sh.h, config/sparc/sparc.h, config/v850/v850.h
3996 * config/vax/vax.h, config/vax/vaxv.h: Don't (re)define ASM_FILE_START.
3998 * config/alpha/alpha-protos.h, config/arc/arc-protos.h
3999 * config/avr/avr-protos.h, config/dsp16xx/dsp16xx-protos.h
4000 * config/h8300/h8300-protos.h, config/ia64/ia64-protos.h
4001 * config/m32r/m32r-protos.h, config/m68hc11/m68hc11-protos.h
4002 * config/mips/mips-protos.h, config/mmix/mmix-protos.h
4003 * config/mn10300/mn10300-protos.h, config/rs6000/rs6000-protos.h
4004 * config/sh/sh-protos.h, config/v850/v850-protos.h: Update.
4006 * xcoffout.h, config/rs6000/aix.h, config/rs6000/xcoff.h:
4007 Remove reference to ASM_FILE_START in comment.
4008 * config/arm/aof.h, config/arm/aout.h, config/arm/freebsd.h
4009 * config/arm/linux-gas.h, config/arm/netbsd-elf.h
4010 * config/arm/netbsd.h: Delete definition of ARM_OS_NAME.
4012 2003-06-19 Graeme Peterson <gp@qnx.com>
4014 * gcc.c (target_sysroot_suffix, target_sysroot_hdrs_suffix,
4015 SYSROOT_SUFFIX_SPEC, SYSROOT_HEADERS_SUFFIX_SPEC, sysroot_suffix_spec,
4016 sysroot_hdrs_suffix_spec): New.
4017 (static_specs): Initialize new variables.
4018 (add_sysroot_suffix_prefix, do_spec_1, main): Use new variables.
4019 * doc/tm.texi (SYSROOT_SUFFIX_SPEC, SYSROOT_HEADERS_SUFFIX_SPEC):
4022 2003-06-19 Andreas Jaeger <aj@suse.de>
4024 * c-aux-info.c: Convert to ISO C90.
4025 * c-pragma.c: Likewise.
4026 * c-common.c: Likewise.
4027 * c-common.h: Likewise.
4028 * c-convert.c: Likewise.
4029 * c-cppbuiltin.c: Likewise.