aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2003-10-17* config/ptx4.h: Switch to DWARF 2; update comments.Nathanael Nerode2-6/+13
From-SVN: r72624
2003-10-17* Add PRs to Altivec ChangeLog entry.David Edelsohn1-0/+1
From-SVN: r72622
2003-10-17altivec.md ("altivec_dst", [...]): Use a memory_operand.Segher Boessenkool3-105/+151
2003-10-17 Segher Boessenkool <boessen@de.ibm.com> Hartmut Penner <hpenner@de.ibm.com> * config/rs6000/altivec.md ("altivec_dst", "altivec_dstt", "altivec_dstst", "altivec_dststt", "altivec_lvsl", "altivec_lvsr", "altivec_lvebx", "altivec_lvehx", "altivec_lvewx", "altivec_lvxl", "altivec_lvx", "altivec_stvx", "altivec_stvxl", "altivec_stvebx", "altivec_stvehx", "altivec_stvewx"): Use a memory_operand. * config/rs6000/rs6000.c (altivec_expand_lv_builtin): New function. (altivec_expand_stv_builtin): Adjust for the memory_operand. (altivec_expand_builtin): Call altivec_expand_lv_builtin. (altivec_init_builtins): Use `long int' for memory offsets. Co-Authored-By: Hartmut Penner <hpenner@de.ibm.com> From-SVN: r72621
2003-10-17opts.c (common_handle_option): Handle OPT_fwebJan Hubicka3-1/+19
* opts.c (common_handle_option): Handle OPT_fweb * invoke.texi (-fweb): Add missing parts of documentation. From-SVN: r72614
2003-10-17linux.h (FUNCTION_NAME_ALREADY_DECLARED): Undef before redefinition.Rainer Orth2-0/+6
* config/mips/linux.h (FUNCTION_NAME_ALREADY_DECLARED): Undef before redefinition. From-SVN: r72613
2003-10-17common.opt: Add description of the new -fgcse-las flag.Mostafa Hagog7-22/+139
2003-10-17 Mostafa Hagog <mustafa@il.ibm.com> * common.opt: Add description of the new -fgcse-las flag. * flags.h (flag_gcse_las): Declaration of global flag_gcse_las. * gcse.c (hash_scan_set): Handle the case of store expression and insert the memory expression to the hash table, this way we make it possible to discover redundant loads after stores and remove them. (pre_insert_copy_insn): moved the call to update_ld_motion_stores, to pre_insert_copies, it is not the correct place to call it after adding stores to be in the available expression hash table. (pre_insert_copies): Added the call to update_ld_motion_stores when one or more copies were inserted. * opts.c (common_handle_option): Handle the -fgcse-las flag. * toplev.c (flag_gcse_las): Initialization of flag_gcse_las. * doc/invoke.tex: Document new -fgcse-las flag. From-SVN: r72612
2003-10-17re PR c++/2513 (internal template template parameter causes ICE)Kriang Lerdsuwanakij5-10/+57
PR c++/2513 * decl.c (make_typename_type): Use dependent_type_p. (make_unbound_class_template): Likewise. * pt.c (instantiate_class_template): Increment processing_template_decl during substitution of template friend function. Preincrement processing_template_decl rather than postincrement. (get_mostly_instantiated_function_type): Increment processing_template_decl during partial substitution of function type. * g++.dg/template/typename5.C: New test. From-SVN: r72611
2003-10-18* config/rs6000/crtsavres.asm: Remove powerpc64 code.Alan Modra2-104/+3
From-SVN: r72610
2003-10-18* config/rs6000/crtsavres.asm: Correct alignment of powerpc64 code.Alan Modra2-0/+6
From-SVN: r72609
2003-10-17arm.c (use_return_insn): Not a single instruction, if there's a frame pointer.Richard Earnshaw2-3/+25
* config/arm/arm.c (use_return_insn): Not a single instruction, if there's a frame pointer. (arm_output_epilogue): Protect stack pointer from being corrupted on interrupt. Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com> From-SVN: r72606
2003-10-17* ifcvt.c (noce_try_addcc): Handle ifs with 'else' case.Ulrich Weigand2-4/+6
From-SVN: r72603
2003-10-17combine.c (simplify_set): Do not clear out undobuf.other_insn already set ↵Ulrich Weigand2-4/+9
elsewhere. * combine.c (simplify_set): Do not clear out undobuf.other_insn already set elsewhere. From-SVN: r72602
2003-10-17i386.c (ix86_expand_prologue): Use gen_allocate_stack_worker.Kelley Cook2-16/+13
* config/i386/i386.c (ix86_expand_prologue): Use gen_allocate_stack_worker. From-SVN: r72601
2003-10-17config.gcc (mips-sgi-irix6*o32): Only enable use_collect2 without gas.Rainer Orth11-189/+484
* config.gcc (mips-sgi-irix6*o32): Only enable use_collect2 without gas. (mips-sgi-irix6*): Likewise. * config/mips/iris6gas.h: New file. * gcc/config.gcc (mips-sgi-irix6*): Use it. * config/mips/mips.h (TARGET_IRIX): Provide default. (TARGET_IRIX5): Likewise. (TARGET_SGI_O32_AS): Likewise. * config/mips/iris5.h (TARGET_IRIX): Redefine as 1. (TARGET_IRIX5): Likewise. * config/mips/iris6.h (TARGET_IRIX6): Remove. (TARGET_IRIX5): Redefine as 0. * config/mips/mips.c (mips_output_external): Test for IRIX 6 O32 linker workaround with TARGET_IRIX and mips_abi instead of ASM_OUTPUT_UNDEF_FUNCTION. (mips_file_end): Inline old ASM_OUTPUT_UNDEF_FUNCTION definition, testing TARGET_IRIX and mips_abi explicitly. * config/mips/iris5.h (ASM_OUTPUT_UNDEF_FUNCTION): Remove. * config/mips/iris6.h (ASM_OUTPUT_UNDEF_FUNCTION): Remove undef. * config/mips/mips.c (irix_output_external_libcall): Renamed from mips_output_external_libcall. Use new TARGET_IRIX in guard. * config/mips/mips-protos.h (irix_output_external_libcall): Match this. * config/mips/iris5.h (TARGET_ASM_EXTERNAL_LIBCALL): Likewise. * config/mips/iris5gas.h (HAVE_GAS_SHF_MERGE): Update comment. Define as 0. * config/mips/iris6.h (FUNCTION_NAME_ALREADY_DECLARED): Define depending on mips_abi. * config/mips/linux.h (FUNCTION_NAME_ALREADY_DECLARED): Define as 1. * config/mips/mips.c (mips_output_function_prologue): Test FUNCTION_NAME_ALREADY_DECLARED at runtime. (mips_output_function_epilogue): Likewise. (build_mips16_function_stub): Likewise. (build_mips16_call_stub): Likewise. * config/mips/mips.h (FUNCTION_NAME_ALREADY_DECLARED): Provide default. * config/mips/iris6.h (DWARF2_UNWIND_INFO): Don't define for native IRIX 6 O32 assembler. (SUBTARGET_CC1_SPEC): Enforce mips2 ISA with O32 ABI. (TARGET_OS_CPP_BUILTINS): Define _ABIO32, use it to define _MIPS_SIM for O32 ABI. (DWARF2_FRAME_INFO): Don't define for native IRIX 6 O32 assembler. (ASM_DECLARE_FUNCTION_NAME): Integrate mips.h version. (ASM_DECLARE_FUNCTION_SIZE): Move undef before redefinition. Integrate O32 version. (SUBTARGET_ASM_SPEC): Handle -mabi=32. (SUBTARGET_ASM_DEBUGGING_SPEC): Add mdebug_asm_spec for gas with O32 ABI. (BSS_SECTION_ASM_OP_32): Define. (BSS_SECTION_ASM_OP_64): Likewise. (BSS_SECTION_ASM_OP): Define differently for O32 and N32/N64 ABIs using them. (TARGET_ASM_NAMED_SECTION): Reflect renaming. Move up to allow override for O32 ABI without GNU as. (EH_FRAME_SECTION_NAME): Define explicitly. (MUST_USE_SJLJ_EXCEPTIONS): Define. [_MIPS_SIM == _ABIO32 && !GAS] (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Dummy definitions. (TARGET_ASM_NAMED_SECTION): Undef statically. (EH_FRAME_SECTION_NAME): Likewise. (ASM_OUTPUT_FILENAME): Integrate mips.h version. (LINK_SPEC): Only use default options -call_shared -no_unresolved without -r. Don't pass -init, -fini with -mabi=32. (COLLECT_PARSE_FLAG): Define. * config/mips/mips.c (iris6_asm_named_section_1): Changed guard to TARGET_IRIX. Renamed to use irix_ prefix. (iris6_asm_named_section): Likewise. (iris_section_align_entry_eq): Likewise. (iris_section_align_entry_hash): Likewise. (iris6_file_start): Likewise. (iris6_section_align_1): Likewise. (iris6_file_end): Likewise. (iris6_section_type_flags): Likewise. (iris_section_align_htab): Likewise. (iris_orig_asm_out_file): Likewise. [TARGET_IRIX] (TARGET_ASM_FILE_START): Reflect rename. (TARGET_ASM_FILE_END): Likewise. (TARGET_SECTION_TYPE_FLAGS): Likewise. * config/mips/mips.c [TARGET_IRIX5 && !TARGET_IRIX6] (TARGET_ASM_UNALIGNED_HI_OP): Use runtime initialization in override_options instead. (TARGET_ASM_UNALIGNED_SI_OP): Likewise. (TARGET_ASM_UNALIGNED_DI_OP): Likewise. * config/mips/mips.c (override_options) [USE_COLLECT2]: Restore flag_gnu_linker to defaults without USE_COLLECT2 for non-IRIX O32 assemblers. Likewise for constructor/destructor handling. (override_options): Handle IRIX O32 assembler quirks. [TARGET_IRIX] (irix_asm_named_section): Handle O32 ABI with and without gas. (mips_file_start): Use new TARGET_IRIX. (mips_declare_object_name): No special processing for IRIX O32 assembler. (mips_finish_declare_object): Likewise. (irix_asm_output_align): Renamed from iris6_asm_output_align. Don't record alignment for O32 ABI. (irix_file_start): Renamed from iris6_file_start. Return early for O32 ABI. (irix_file_end): Renamed from iris6_file_end. Don't emit .section directives for O32 ABI. * config/mips/iris6.h (ASM_OUTPUT_ALIGN): Reflect renaming. * config/mips/mips-protos.h (irix_asm_output_align): Likewise. * config/mips/t-iris6 (MULTILIB_OPTIONS): Add mabi=32. (MULTILIB_OSDIRNAMES): Likewise. From-SVN: r72600
2003-10-17collect2.c (COLLECT_PARSE_FLAG): Provide default.Rainer Orth3-2/+21
* collect2.c (COLLECT_PARSE_FLAG): Provide default. (main): Use it. * doc/tm.texi (COLLECT_PARSE_FLAG): Document it. From-SVN: r72599
2003-10-17re PR c++/12369 (ICE with templates and friends)Kriang Lerdsuwanakij2-0/+19
PR c++/12369 * g++.dg/template/friend25.C: New test. From-SVN: r72596
2003-10-17arm-modes.def (CC_Nmode): New condition code mode.Richard Earnshaw6-43/+736
* arm-modes.def (CC_Nmode): New condition code mode. * arm.c (thumb_condition_code): Delete. (arm_select_cc_mode): Handle single-bit test for Thumb. (arm_print_operand, cases 'd' and 'D'): Don't special case the condition code logic for Thumb. (get_arm_condition_code): Handle CC_Nmode. (thumb_cbrch_target_operand): New function. * arm.h (PREDICATE_CODES): Add thumb_cbrch_target_operand. * arm-protos.h (thumb_cbrch_target_operand): Add prototype. * arm.md: Add Thumb split patterns for zero_extract and sign_extract. (tbit_cbranch, andsi3_cbranch_scratch, andsi3_cbranch) (orrsi3_cbranch_scratch, orrsi3_cbranch, xorsi3_cbranch_scratch) (xorsi3_cbranch, addsi3_cbranch, addsi3_cbranch_scratch) (subsi3_cbranch, subsi3_cbranch_scratch): New Thumb patterns. (cbranchne_decr1): Re-work to use CC_Nmode. * arm.c (thumb_expand_epilogue): Add clobbers of registers restored by the return instruction. Add a use of the link register if it wasn't stored. From-SVN: r72595
2003-10-17flow.c (init_propagate_block_info): Don't abort if a conditional jump is not ↵Richard Earnshaw2-37/+48
a comparison of a register. * flow.c (init_propagate_block_info): Don't abort if a conditional jump is not a comparison of a register. Instead, just don't record conditional life information. From-SVN: r72594
2003-10-17fixJason Merrill1-1/+2
From-SVN: r72592
2003-10-17re PR rtl-optimization/12630 (Various unrecognizable insns and ICEs at -O3)Jan Hubicka2-6/+12
PR optimization/12630 * pa.md (movstrsi, movstrsi_internal): Use match_scratch in clobbers for operands 7 and 8. From-SVN: r72590
2003-10-16Change TARGET_ALTIVEC to TARGET_ALTIVEC_ABI.David Edelsohn2-2/+2
From-SVN: r72589
2003-10-17Daily bump.GCC Administrator1-1/+1
[[Split portion of a mixed commit.]] From-SVN: r72586.2
2003-10-16eliminate conflict indicatorR. Kelley Cook1-1/+0
From-SVN: r72583
2003-10-16* objc/Make-lang.in (objc-parse.o): Honor $(parsedir) for objc-parse.c.R. Kelley Cook2-0/+7
From-SVN: r72581
2003-10-16cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Define.Danny Smith3-21/+47
* config/i386/cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Define. * config/i386/winnt.c (gen_stdcall_suffix): Make static (gen_fastcall_suffix): Likewise. (i386_pe_dllexport_p): Likewise. (i386_pe_dllimport_p): Likewise. (i386_pe_mark_dllexport): Likewise. (i386_pe_mark_dllimport): Likewise. (i386_pe_asm_named_section): Fix formatting. From-SVN: r72566
2003-10-16try-catch-2.m: Relax target triple to all Darwin versions.Ziemowit Laski2-1/+6
2003-10-16 Ziemowit Laski <zlaski@apple.com> * objc.dg/try-catch-2.m: Relax target triple to all Darwin versions. From-SVN: r72563
2003-10-16configure.in: Add snprintf to gcc_AC_CHECK_DECLS list.Zack Weinberg5-105/+121
* configure.in: Add snprintf to gcc_AC_CHECK_DECLS list. * system.h: Declare snprintf if necessary. * configure, config.in: Regenerate. From-SVN: r72557
2003-10-16rs6000.c (rs6000_va_arg): Only align vector arguments if TARGET_ALTIVEC.David Edelsohn2-1/+6
* config/rs6000/rs6000.c (rs6000_va_arg): Only align vector arguments if TARGET_ALTIVEC. From-SVN: r72555
2003-10-1620031003-1.c: Enable only when INT_MAX == 2147483647.Kazu Hirata2-0/+9
* gcc.c-torture/execute/20031003-1.c: Enable only when INT_MAX == 2147483647. From-SVN: r72549
2003-10-16builtins.c (fold_builtin_memcpy, [...]): New functions.Roger Sayle2-16/+321
* builtins.c (fold_builtin_memcpy, fold_builtin_mempcpy, fold_builtin_memmove, fold_builtin_strcpy, fold_builtin_strncpy, fold_builtin_memcmp, fold_builtin_strcmp, fold_builtin_strncmp): New functions. (expand_builtin_memcpy): Use integer_zerop instead of testing host_integerp and tree_low_cst directly. Move misapplied hunk for optimization wher SRC and DEST point to the same location. (expand_builtin_mempcpy): From here. (expand_builtin_memmove): Use integer_zerop instead of testing host_integerp and tree_low_cst_directly. (expand_builtin_memset): Likewise. (expand_builtin_memcmp): Likewise (and for integer_onep). (expand_builtin_strncmp): Likewise. (fold_builtin): Call the appropriate fold_builtin_foo functions to optimize memcpy, mempcpy, memmove, strcpy, strncpy, memcmp, strcmp and strncmp. From-SVN: r72547
2003-10-16960416-1.x: Remove.Kazu Hirata3-10/+5
* gcc.c-torture/execute/960416-1.x: Remove. * gcc.c-torture/execute/divconst-3.x: Likewise. From-SVN: r72545
2003-10-16darwin-protos.h (machopic_non_lazy_ptr_name): Delete prototype.Geoffrey Keating3-93/+111
* config/darwin-protos.h (machopic_non_lazy_ptr_name): Delete prototype. Clean up some whitespace. * config/darwin.c: Use gen_rtx_FOO (...) rather than gen_rtx (FOO, ...). (machopic_non_lazy_ptr_name): Make static. (name_needs_quotes): Allow '.' and '$' unquoted. (machopic_legitimize_pic_address): Improve codegen in dynamic-no-pic case. From-SVN: r72544
2003-10-16Fix CRLF problem with 20031012-1.cR. Kelley Cook1-32/+32
From-SVN: r72543
2003-10-16Daily bump.GCC Administrator1-1/+1
From-SVN: r72541
2003-10-15problem that current decl duplication mechanizm > > /* If we didn't remap ↵Jan Hubicka2-10/+20
this variable... problem that current decl duplication mechanizm > > /* If we didn't remap this variable, so we can't mess with its > TREE_CHAIN. If we remapped this variable to the return slot, it's From-SVN: r72539
2003-10-15fold-const.c (tree_swap_operands_p): disables some features when optimizing ↵Gábor Lóki2-0/+8
for size. 2003-10-15 G�bor L�ki <alga@rgai.hu> * fold-const.c (tree_swap_operands_p): disables some features when optimizing for size. From-SVN: r72538
2003-10-15linux.h (MD_FALLBACK_FRAME_STATE_FOR): NewDavid Daney1-0/+10
* config/mips/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New * config/mips/mips.h (DWARF_FRAME_REGNUM): Fixed to allow unwind from leaf functions. (DWARF_FRAME_RETURN_COLUMN): Ditto. (SIGNAL_UNWIND_RETURN_COLUMN): New, used by MD_FALLBACK_FRAME_STATE_FOR. * testsuite/gcc.dg/cleanup-9.c: Added mips*-*-linux* target. From-SVN: r72537
2003-10-15linux.h (MD_FALLBACK_FRAME_STATE_FOR): NewDavid Daney3-4/+77
* config/mips/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New * config/mips/mips.h (DWARF_FRAME_REGNUM): Fixed to allow unwind from leaf functions. (DWARF_FRAME_RETURN_COLUMN): Ditto. (SIGNAL_UNWIND_RETURN_COLUMN): New, used by MD_FALLBACK_FRAME_STATE_FOR. * testsuite/gcc.dg/cleanup-9.c: Added mips*-*-linux* target. From-SVN: r72536
2003-10-15Remove stray blank lineZack Weinberg1-1/+0
From-SVN: r72535
2003-10-15genmodes.c: Include hashtab.h.Zack Weinberg6-53/+260
* genmodes.c: Include hashtab.h. (modes_by_name, hash_mode, eq_mode, struct mode_adjust) (adj_bytesize, adj_alignment, adj_format, new_adjust) (_ADD_ADJUST, ADJUST_BYTESIZE, ADJUST_ALIGNMENT, ADJUST_FORMAT) (print_maybe_const_decl, emit_mode_adjustments): New. (known_modes): Rename to modes. (find_mode): Kill class argument; look up in hash table. (new_mode): Insert into hash table also. (new_adjust): New. (reset_float_format, make_partial_integer_mode) (make_vector_mode): Tweak error reporting. (reset_float_format): Correct type of fourth argument. (emit_insn_modes_h): Add #defines to help make mode_size, mode_base_align, and real_format_for_mode conditionally const. (emit_mode_size, emit_mode_base_align): Use print_maybe_const_decl. (emit_real_format_for_mode): Likewise, but temporarily disabled. (emit_insn_modes_c): Call emit_mode_adjustments. (main): Initialize modes_by_name. * Makefile.in: Update dependencies. * machmode.def: Document EXPR arguments and new ADJUST_* statements. * machmode.h: Use CONST_MODE_SIZE and CONST_MODE_BASE_ALIGN in declarations of mode_size and mode_base_align. Declare init_adjust_machine_modes. * toplev.c (backend_init): Call init_adjust_machine_modes. From-SVN: r72534
2003-10-15genmodes.c (calc_wider_mode): Allocate enough room for all the entries we'll ↵Olivier Hainque2-1/+8
possibly assign in the sort buffer. * genmodes.c (calc_wider_mode): Allocate enough room for all the entries we'll possibly assign in the sort buffer. From-SVN: r72531
2003-10-15Fixed up last commit.Ulrich Weigand2-1/+10
From-SVN: r72530
2003-10-15config.gcc (s390x-ibm-tpf*): New target.Ulrich Weigand4-0/+140
* config.gcc (s390x-ibm-tpf*): New target. * doc/invoke.texi: Document it. * config/s390/t-tpf: New file. * config/s390/tpf.h: New file. From-SVN: r72529
2003-10-15Forgot to mention cris_notice_update_cc in last ChangeLog entryHans-Peter Nilsson1-0/+2
From-SVN: r72522
2003-10-15re PR target/12598 (Invalid size optimization on volatile memory reference)Hans-Peter Nilsson4-57/+92
PR target/12598 * config/cris/cris.md (define_split "*mov_sidesi_biap_mem"+1) (define_splits "*mov_sidesi_mem"+1, "casesi"+9, +10, +11, +12): Use cris_mem_op and replace_equiv_address, not gen_rtx_MEM. ("call", "call_value", define_split "*mov_sidesi_mem"+19, +20) (define_split "*mov_sidesi_mem"+21, +22, +23, +24, +25, +26, +27) (define_split "*mov_sidesi_mem"+28, +29, +30): Use replace_equiv_address, not gen_rtx_MEM. * config/cris/cris.c (cris_mem_op): New match_operator function. * config/cris/cris.h (PREDICATE_CODES): Add cris_mem_op. From-SVN: r72521
2003-10-15re PR target/12598 (Invalid size optimization on volatile memory reference)Hans-Peter Nilsson2-0/+77
PR target/12598 * gcc.dg/torture/cris-volatile-1.c: New test. From-SVN: r72520
2003-10-15m68k.h (MASK_SEP_DATA, [...]): Move definitions after the other flags.Bernardo Innocenti2-13/+19
* config/m68k/m68k.h (MASK_SEP_DATA, TARGET_SEP_DATA, MASK_ID_SHARED_LIBRARY, TARGET_ID_SHARED_LIBRARY): Move definitions after the other flags. From-SVN: r72516
2003-10-14oopsJason Merrill1-4/+4
From-SVN: r72511
2003-10-15Daily bump.GCC Administrator1-1/+1
From-SVN: r72508
2003-10-15c-parse.in (methoddef, [...]): Call objc_add_method() instead of add_method().Ziemowit Laski4-9/+23
2003-10-14 Ziemowit Laski <zlaski@apple.com> * c-parse.in (methoddef, methodproto): Call objc_add_method() instead of add_method(). * objc/objc-act.c (objc_check_decl): Do not check for constant_string_type. (add_method): Rename to objc_add_method(). (really_start_method): Call objc_add_method() instead of add_method(). * objc/objc-act.h (add_method): Rename to objc_add_method(). From-SVN: r72506