aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
AgeCommit message (Collapse)Author
2001-08-10 * doc/install.texi (Specific, avr): Fix cross-reference to theGerald Pfeifer
main manual to work both for info and HTML versions. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44755 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-10 * stmt.c (expand_null_return_1): Remove code to generate simple returnsJohn David Anglin
and "use_goto" argument. (expand_null_return, expand_value_return): Update all callers. * function.c (expand_function_end): Remove code to generate simple return. * config/vax/vax.md (epilogue): New expander for function return. * doc/md.texi (epilogue): Remove "if defined". git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44750 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-09Move constructor/destructor handling into target hooks.Richard Henderson
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44747 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-07 * doc/install.texi: Document fine-grained multilib configuration.David Edelsohn
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44695 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-06 * config/i386/i386.h (FORCE_PREFERRED_STACK_BOUNDARY_IN_MAIN): New.Richard Henderson
* function.c (expand_main_function): Implement it. * doc/tm.texi: Document it. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44664 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-06 * doc/install.texi: Document powerpc-*-darwin* details.Stan Shebs
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44662 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-04 * doc/extend.texi (Other Builtins): Fix typo in last change.Hans-Peter Nilsson
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44624 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-04 * target.h (gcc_target): Add asm_out.named_section,Richard Henderson
section_type_flags, have_named_sections. * target-def.h (TARGET_ASM_NAMED_SECTION): New. (TARGET_HAVE_NAMED_SECTIONS): New. (TARGET_SECTION_TYPE_FLAGS): New. * Makefile.in (toplev.o): Depend on TARGET_H. (varasm.o, dbxout.o): Likewise. * c-common.c (decl_attributes): Check targetm.have_named_sections instead of ifdef ASM_OUTPUT_SECTION_NAME. * dbxout.c (dbxout_function_decl): Likewise. (dbxout_function_end): Likewise. * toplev.c (compile_file): Likewise. * varasm.c (exception_section): Likewise. * cp/decl2.c (finish_objects): Likewise. * defaults.h (EH_FRAME_SECTION): Remove. (EH_FRAME_SECTION_ASM_OP): Remove. (EH_FRAME_SECTION_NAME): New. (UNIQUE_SECTION): Don't depend on ASM_OUTPUT_SECTION_NAME. (UNIQUE_SECTION_P): Remove. * dwarf2out.c (SECTION_FORMAT): Remove. (ASM_OUTPUT_SECTION): Remove. (output_call_frame_info): Use named_section_flags. (output_comp_unit, dwarf2out_start_source_file): Likewise. (dwarf2out_end_source_file, dwarf2out_define): Likewise. (dwarf2out_undef, dwarf2out_init, dwarf2out_finish): Likewise. * varasm.c (in_eh_frame, eh_frame_section): Remove. (named_section_flags): New. (named_section): Use it and targetm.section_type_flags. (resolve_unique_section): New. (assemble_start_function): Use it. (asm_emit_uninitialised, assemble_variable): Likewise. (default_section_type_flags): New. (default_no_named_section, default_elf_asm_named_section): New. (default_coff_asm_named_section, default_pe_asm_named_section): New. * output.h: Update varasm.c decls. (SECTION_*): New flags. * crtstuff.c: Check EH_FRAME_SECTION_NAME not EH_FRAME_SECTION_ASM_OP. (__EH_FRAME_BEGIN__, __FRAME_END__): Use attribute section. * config/elfos.h (UNIQUE_SECTION_P): Remove. * config/alpha/elf.h, config/arm/linux-elf.h: Likewise. * config/arm/pe.h, config/arm/unknown-elf.h: Likewise. * config/i386/cygwin.h, config/i386/djgpp.h: Likewise. * config/i386/i386-interix.h, config/i386/win32.h: Likewise. * config/ia64/sysv4.h, config/mcore/mcore-pe.h: Likewise. * config/mips/elf.h, config/mips/elf64.h: Likewise. * config/mips/iris6gld.h, config/mips/mips.h: Likewise. * config/pa/pa64-hpux.h, * config/elfos.h (ASM_OUTPUT_SECTION_NAME): Remove. (TARGET_ASM_NAMED_SECTION): New. * config/psos.h, config/a29k/a29k.h, config/alpha/elf.h: Likewise. * config/alpha/vms.h, config/arm/coff.h: Likewise. * config/arm/conix-elf.h, config/arm/elf.h: Likewise. * config/arm/linux-elf.h, config/arm/pe.h: Likewise. * config/arm/unknown-elf.h, config/avr/avr.h: Likewise. * config/c4x/c4x.h, config/h8300/h8300.h: Likewise. * config/i386/cygwin.h, config/i386/djgpp.h: Likewise. * config/i386/i386-interix.h, config/i386/i386elf.h : Likewise. * config/i386/sco5.h, config/i386/win32.h: Likewise. * config/m68k/coff.h, config/mcore/mcore-pe.h: Likewise. * config/mcore/mcore.h, config/mips/elf.h: Likewise. * config/mips/elf64.h, config/mips/iris6.h: Likewise. * config/mips/netbsd.h, config/mips/openbsd.h: Likewise. * config/pa/pa64-hpux.h, config/rs6000/sysv4.h: Likewise. * config/rs6000/xcoff.h, config/sh/sh.h: Likewise. * config/sparc/sysv4.h: Likewise. * config/nextstep.h: Error until named sections implemented. * config/a29k/a29k.c (a29k_asm_named_section): New. * config/alpha/alpha.c (SECTION_VMS_OVERLAY): New. (vms_section_type_flags, vms_asm_named_section): New. * config/arm/arm.c (arm_elf_asm_named_section): New. * config/avr/avr.c (asm_output_section_name): Remove. * config/avr/avr-protos.h: Update. * config/c4x/c4x.c (c4x_asm_named_section): New. * config/h8300/h8300.c (h8300_asm_named_section): New. * config/i386/i386.c (sco_asm_named_section): New. * config/i386/winnt.c (SECTION_PE_SHARED): New. (i386_pe_section_type_flags): New. (i386_pe_asm_named_section): New. * config/i386/i386-protos.h: Update. * config/m68k/m68k.c (m68k_coff_asm_named_section): New. * config/mcore/mcore.c (mcore_asm_named_section): New. * config/mips/mips.c (iris6_asm_named_section): New. * config/mips/mips.h (ENCODE_SECTION_INFO): Use DECL_ONE_ONLY instead of UNIQUE_SECTION_P. * config/rs6000/rs6000.c (rs6000_elf_section_type_flags): New. (xcoff_asm_named_section): New. * config/sh/sh.c (sh_asm_named_section): New. * config/sparc/sparc.c (sparc_elf_asm_named_section): New. * config/i386/djgpp.h (EH_FRAME_SECTION_ASM_OP): Remove. * config/i386/sco5.h (EH_FRAME_SECTION_ASM_OP*): Remove. (EH_FRAME_SECTION_NAME): New. (EXCEPTION_SECTION): New. * config/ia64/ia64.h (EH_FRAME_SECTION_ASM_OP): Remove. (DEBUG_*_SECTION): Remove. * config/m68k/rtemself.h (EH_FRAME_SECTION_ASM_OP): Remove. * config/mips/iris6.h (DEBUG_*_SECTION): Remove. (EH_FRAME_SECTION_ASM_OP): Remove. * doc/tm.texi (UNIQUE_SECTION_P): Remove. (ASM_OUTPUT_SECTION_NAME): Remove. (TARGET_ASM_NAMED_SECTION): New. (TARGET_HAVE_NAMED_SECTIONS): New. (TARGET_SECTION_TYPE_FLAGS): New. (EH_FRAME_SECTION_ASM_OP): Remove. (EH_FRAME_SECTION_NAME): New. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44623 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-04 * builtins.c (fold_builtin_constant_p): Return integer_zero_nodeZack Weinberg
for complex expressions when cfun == 0. * doc/extend.texi: Document that __builtin_constant_p can be used in data initializers as well as functions. * gcc.dg/bconstp-1.c: New test. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44619 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-03 * doc/install.texi (Configuration): Fix markup.Rainer Orth
(Specific, i?86-*-udk): Likewise. (Specific, alpha*-dec-osf*): Warn against --with-gnu-as, --with-gnu-ld. Document --enable-threads and --enable-libgcj status. (Specific, mips-sgi-irix*): Canonicalize triples. (Specific, mips-sgi-irix5): Warn about problems with this config. Mention required GNU as patch. Native assembler problems are fixed. (Specific, mips-sgi-irix6): Update O32 ABI support status. Document --enable-threads and --enable-libgcj status. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44599 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-03 * combine.c, config.gcc, cse.c, defaults.h, real.c, reload.c,Lars Brinkhoff
simplify-rtx.c, config/alpha/alpha.h, config/avr/avr.h, config/convex/convex.h, config/d30v/d30v.c, config/d30v/d30v.h, config/dsp16xx/dsp16xx.h, config/elxsi/elxsi.h, config/fr30/fr30.h, config/m88k/m88k.c, config/mips/mips.h, config/mn10200/mn10200.h, config/mn10300/mn10300.h, config/pdp11/pdp11.md, config/v850/v850.h, config/vax/openbsd.h, config/vax/openbsd1.h, config/vax/ultrix.h, config/vax/vax-protos.h, config/vax/vax.c, config/vax/vax.h, config/vax/vax.md, config/vax/vaxv.h, config/vax/xm-vms.h, cp/decl2.c, doc/contrib.texi, doc/cpp.texi, doc/gcc.texi, doc/install.texi, doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: consistently use "VAX", "VAXen", and "MicroVAX" in comments and documentation. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44589 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-02 * doc/install.texi (Install GCC: Binaries): Update Bull info.David Edelsohn
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44575 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-02.:Nathan Sidwell
Kill -fhonor-std. * doc/c-tree.texi (Namespaces): Remove std & -fhonor-std interaction. * doc/invoke.texi (C++ Dialect Options): Remove -fno-honor-std. cp: Kill -fhonor-std. * NEWS: Document. * cp-tree.h (flag_honor_std): Remove. (CPTI_FAKE_STD): Remove. (std_node): Remove comment about it being NULL. (fake_std_node): Remove. * decl.c (in_fake_std): Remove. (walk_namespaces_r): Remove fake_std_node check. (push_namespace): Remove in_fake_std code. (pop_namespace): Likewise. (lookup_name_real): Remove fake_std_node check. (init_decl_processing): Always create std_node. Always add std:: things there. (builtin_function): Always put non '_' fns in std. * decl2.c (flag_honor_std): Remove. (lang_f_options): Remove honor-std. (unsupported_options): Add honor-std. (set_decl_namespace): Remove fake_std_node check. (validate_nonmember_using_decl): Likewise. (do_using_directive): Likewise. (handle_class_head): Likewise. * dump.c (cp_dump_tree): Likewise. * except.c (init_exception_processing): Adjust. * init.c (build_member_call): Remove fake_std_node check. (build_offset_ref): Likewise. * lang-options.h: Remove -fhonor-std, -fno-honor-std. * rtti.c (init_rtti_processing): Adjust. testsuite: Kill -fhonor-std. * g++.old-deja/g++.ns/ns14.C: Remove special options. * g++.old-deja/g++.other/std1.C: Likewise. * g++.old-deja/g++.robertl/eb133.C: Likewise. Add using directive. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44569 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-012001-08-01 Andrew MacLeod <amacleod@redhat.com>Andrew MacLeod
* regclass.c (call_really_used_regs): New array for registers which are actually used by a call. (init_reg_sets_1): Initialize regs_invalidated_by_call with the new array. (fix_register): Set call_really_used too. * config/ia64/ia64.h (CALL_REALLY_USED_REGISTERS): Initialize. * doc/tm.texi (CALL_REALLY_USED_REGISTERS): Document. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44558 138bc75d-0d04-0410-961f-82ee72b054a4
2001-08-01* config.gcc: Recognize powerpc-*-netbsd*.Andrew Cagney
* doc/install.texi (Host/target specific installation notes for GCC): Mention powerpc-*-netbsd*. * config/rs6000/netbsd.h: New file. (STANDARD_STARTFILE_PREFIX, LINK_SHLIB_SPEC): Redefine. (LIB_DEFAULT_SPEC, STARTFILE_DEFAULT_SPEC): Redefine. (ENDFILE_DEFAULT_SPEC, LINK_START_DEFAULT_SPEC): Redefine. (LINK_OS_DEFAULT_SPEC, CPP_OS_DEFAULT_SPEC): Redefine. (TARGET_VERSION): Redefine. * config/rs6000/t-ppccomm (MULTILIB_MATCHES_SYSV): Recognize mcall-netbsd as a match for mcall-sysv. (EXTRA_MULTILIB_PARTS): Add ncrti$(objext) and ncrtn$(objext). (ncrti.S, ncrtn.S): New targets. ($(T)ncrti$(objext), $(T)ncrtn$(objext)): New targets. * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Recognize "netbsd' as a V4 ABI. (ASM_SPEC): Check for -mcall-netbsd. (CC1_SPEC, CC1_SPEC, LINK_START_SPEC, LINK_OS_SPEC): Ditto. (CPP_ENDIAN_SPEC, CPP_SPEC, STARTFILE_SPEC): Ditto. (LIB_SPEC, ENDFILE_SPEC): Ditto. (LIB_NETBSD_SPEC, STARTFILE_NETBSD_SPEC): Define. (ENDFILE_NETBSD_SPEC, LINK_START_NETBSD_SPEC): Define. (LINK_OS_NETBSD_SPEC, CPP_OS_NETBSD_SPEC): Define. (SUBTARGET_EXTRA_SPECS): Add NetBSD specs. * doc/invoke.texi (Option Summary): Add -mcall-netbsd. (RS/6000 and PowerPC Options): Mention -mcall-netbsd. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44552 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-31 *doc/install.texi: Add s390 s390x as new targets.Hartmut Penner
*doc/invoke.texi: Add documantation of S/390 and zSeries target options. * doc/md.texi: Add documantation of S/390 and zSeries constraints. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44501 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-29 * cppexp.c (parse_defined): Always record the macro name.Neil Booth
(lex): Don't worry about identifiers, or special-case CPP_NOT here. (_cpp_parse_expr): Figure out at the end of the routine whether we saw a valid !defined() expression. * cppfiles.c (stack_include_file): Update for mi_valid. (_cpp_pop_file_buffer): Similarly. * cpplex.c (_cpp_lex_token): Similarly. * cpphash.h (enum mi_state, enum mi_ind, mi_state, mi_if_not_defined, mi_lexed): Remove. (mi_valid): New. * cpplib.c (do_if): Simplify. (do_endif, push_conditional, _cpp_handle_directive): Update for renaming of mi_state to mi_valid. * cpp.texi: Add index entries for digraphs, and add comment that C++ refers to them as alternative tokens. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44459 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-27 * doc/install.texi (Configuration): Properly link the hostGerald Pfeifer
specific instructions also when generating HTML. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44416 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-262001-07-26 Andrew MacLeod <amacleod@redhat.com>Andrew MacLeod
* params.def (PARAM_MAX_PENDING_LIST_LENGTH): Add parameter to limit length of dependancy flush list. * params.h (MAX_PENDING_LIST_LENGTH): Define. * sched-int.h (struct deps): Add pending_flush_length field. * sched-deps.c (flush_pending_lists): Last_pending_memory_flush now has 1 element in it. (sched_analyze_1): Use MAX_PENDING_LIST_LENGTH. (sched_analyze): After a jump, if the pending memory flush list is too large, flush the pending lists. (init_deps): Initialize pending_flush_length to 0. * doc/invoke.texi (max_pending_list_length): Document parameter. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44398 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-24 * config/mips/irix6-libc-compat.c: New file.Rainer Orth
* config/mips/t-iris6 (LIB2FUNCS_STATIC_EXTRA): Use it. * doc/install.texi (Specific, mips*-sgi-irix6): Mention structure passing workaround. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44294 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-24 * rtl.texi (REG_POINTER): Document.lars brinkhoff
(Machine Modes): Document BImode, OImode, PQImode, PHImode, QFmode, HFmode, TQFmode, QCmode, and HCmode. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44292 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-232001-07-23 H.J. Lu (hjl@gnu.org)H.J. Lu
* doc/extend.texi: Update __builtin_return_address and __builtin_frame_address. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44281 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-23 * tm.texi (TARGET_FLOAT_FORMAT): Document IBM_FLOAT_FORMATlars brinkhoff
and C4X_FLOAT_FORMAT. (BOOL_TYPE_SIZE): Document. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44277 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-232001-07-13 Andrew Haley <aph@redhat.com>Andrew Haley
* doc/tm.texi (MD_CAN_REDIRECT_BRANCH): New macro. * config/sh/sh.h (MD_CAN_REDIRECT_BRANCH): New macro. * config/sh/sh.c (sh_can_redirect_branch): New function. * config/sh/sh-protos.h (sh_can_redirect_branch): Declare. * reorg.c (steal_delay_list_from_target): Use MD_CAN_REDIRECT_BRANCH to see if redirection is possible. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44269 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-22 * basic-block.h (redirect_edge_and_branch_force,Jan Hubicka
redirect_edge_and_branch, block_label, forwarder_block_p): Declare. * flow.c (redirect_edge_and_branch_force, redirect_edge_and_branch, block_label, forwarder_block_p): Make global. (redirect_edge_and_branch_force): Fix copying of lifeness information. (block_label): Handle EXIT_BLOCK_PTR by returning NULL. * ifcvt.c (dead_or_predictable): Take BB as an new destionation instead of label; update CFG after transformation. (find_if_case_1): Update call, use redirect_edge_and_branch_force for finishing the transformation; handle even case where ELSE does not follow THEN. (find_if_case_2): Update call of dead_or_predictable; simplify CFG update. * emit-rtl.c (split_branch_probability): New global variable. (try_split): Take care to set split_branch_probability and create REG_BR_PROB note for new jump insns. * md.texi (define_split): Document new feature. * i386.c (ix86_split_fp_branch): Redistribute branch probability notes. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44249 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-21gcc:Nathan Sidwell
* doc/tm.texi: Remove DEFAULT_VTABLE_THUNKS. * config/freebsd.h: Likewise. * config/linux.h: Likewise. * config/openbsd.h: Likewise. * config/alpha/linux-elf.h: Likewise. * config/arm/linux-elf.h: Likewise. * config/d30v/d30v.h: Likewise. * config/fr30/fr30.h: Likewise. * config/ia64/aix.h: Likewise. * config/ia64/ia64.h: Likewise. * config/mips/linux.h: Likewise. * config/pj/pj.h: Likewise. * config/rs6000/linux.h: Likewise. * config/sparc/linux.h: Likewise. * config/sparc/linux64.h: Likewise. cp: Remove flag_vtable_thunk. It is always on for the 3.0 ABI. * cp-tree.h (CPTI_DELTA2_IDENTIFIER): Remove. (CPTI_INDEX_IDENTIFIER): Remove. (CPT_PFN_OR_DELTA2_IDENTIFIER): Remove. (delta2_identifier): Remove. (index_identifier): Remove. (pfn_or_delta2_identifier): Remove. (flag_vtable_thunks): Remove. (VTABLE_DELTA2_NAME): Remove. (VTABLE_INDEX_NAME): Remove. (FNADDR_FROM_VTABLE_ENTRY): Adjust. (vfunc_ptr_type_node): Adjust. (VTABLE_NAME_PREFIX): Adjust. (build_vfn_ref): Lose first parameter. (fixup_all_virtual_upcast_offsets): Remove. * decl.c (initialize_predefined_identifiers): Remove delta2_identifier, index_identifier, pfn_or_delta2_identifier. (init_decl_processing): Remove no-vtable-thunk code. * decl2.c (flag_vtable_thunks): Remove. (mark_vtable_entries): Remove no-vtable-thunk code. * error.c (dump_decl): Remove no-vtable-thunk code. (dump_expr): Adjust ptr to member function code. * init.c (initialize_vtable_ptrs): Remove no-vtable-thunk code. * rtti.c (build_headof): Remove no-vtable-thunk code. (get_tinfo_decl_dynamic): Adjust build_vfn_ref call. * search.c (get_base_distance): Remove expand_upcast_fixups case. (virtual_context) Remove. (expand_upcast_fixups): Remove. (fixup_virtual_upcast_offsets): Remove. (fixup_all_virtual_upcast_offsets): Remove. * typeck.c (get_member_function_from_ptrfunc): Remove no-vtable-thunk code. * call.c (build_over_call): Adjust call to build_vfn_ref. * class.c (build_vfn_ref): Lose first parameter. Remove no-vtable-thunk code. (build_rtti_vtbl_entries): Remove no-vtable-thunk code. (build_vtable_entry): Remove no-vtable-thunk code. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44227 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-20 * doc/rtl.texi (REG_DEAD): Update for current semantics.Richard Henderson
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44214 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-20Correct typo.Jan Hubicka
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44213 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-20 * expr.c (emit_single_push_insn): Add call to push expander.Jan Hubicka
* expr.h (optab_index): Add OTI_push (push_optab): New constant. * genopinit.c (optabs): Add push_optab. * optabs.c (init_optab): Init push optab. * md.texi (push??1): Document git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44211 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-20 * doc/install.texi (sparc-sun-solaris*): Add in 4.x assembler bugKelley Cook
information. Move rest into ... (*-*-solaris): ... here. Eliminate redundant information and reword necessary packages section. Delete 4.x assembler bug info. (sparc-sun-*): Merge into ... (sparc-sun-sunos*): here. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44198 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-19 * tm.texi (POINTERS_EXTEND_UNSIGNED) Modify definition.Steve Ellcey
* optabs.c (can_extend_p) Check HAVE_ptr_extend for a specialized pointer extension instruction. * combine.c (nonzero_bits,num_sign_bit_copies) Likewise. * simplify-rtx.c (simplify_unary_operation) Likewise. * explow.c (convert_memory_address) Check value of POINTERS_EXTEND_UNSIGNED to avoid some conversions when less than zero. * config/ia64/t-hpux (LIBGCC, INSTALL_LIBGCC, MULTILIB_OPTIONS, MULTILIB_DIRNAMES, MULTILIB_MATCHES) Add multilib support. * config/ia64/hpux.h (CPP_SPEC, ASM_SPEC, SUBTARGET_SWITCHES) Add Multilib Support. (POINTERS_EXTEND_UNSIGNED) Define for ILP32 support. * config/ia64/ia64.h (MASK_ILP32, TARGET_ILP32, SUBTARGET_SWITCHES) Add Multilib Support. (POINTER_SIZE, LONG_TYPE_SIZE, MAX_LONG_TYPE_SIZE) Modify for ILP32 support. * config/ia64/ia64.c (rtx_needs_barrier) Add support for addp4. * config/ia64/ia64.md (ptr_extend) New instruction to "swizzle" a 32 bit HP-UX pointer into a 64 bit HP-UX pointer. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44166 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-192001-07-19 Toon Moene <toon@moene.indiv.nluug.nl>Toon Moene
* tree.def: Document restriction on {L|R}SHIFT_EXPR's second argument. * doc/tree.texi: Ditto. * f/com.c (ffecom_expr_intrinsic_): Cope with it. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44156 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-18Fix markup for reload_in/out.Richard Henderson
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44137 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-18 * doc/md.texi (reload_in/out): Document restrictions in predicatesRichard Henderson
and constraints for these patterns. Document empty string matching ALL_REGS. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44134 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-17 * c-pragma.h (HANDLE_PRAGMA_WEAK): Define iff ASM_WEAKEN_LABEL andH.J. Lu
ASM_OUTPUT_WEAK_ALIAS are defined. * defaults.h (ASM_OUTPUT_WEAK_ALIAS): Define if possible. * config/mips/iris6.h (ASM_OUTPUT_WEAK_ALIAS, ASM_WEAKEN_LABEL): Moved ... * config/mips/iris5.h: ... here. (HANDLE_SYSV_PRAGMA): Defined as 1. * varasm.c (weak_finish): Use ASM_OUTPUT_WEAK_ALIAS. * doc/tm.texi (ASM_OUTPUT_WEAK_ALIAS): Support the undefined weak symbol. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44072 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-17 * c-parse.in (all_prefix_attributes): New variable.Joseph Myers
(PUSH_DECLSPEC_STACK, POP_DECLSPEC_STACK): New macros. (maybe_resetattrs): New production. (c_parse_init, datadef, fndef, datadecl, setspecs, setattrs, decl, maybe_type_quals_setattrs, initdecls, notype_initdecls, initdcl, notype_initdcl, nested_function, notype_nested_function, component_decl, components, components_notype, component_declarator, component_notype_declarator, absdcl_maybe_attribute, parm, firstparm, setspecs_fp, ivar_decl, ivars, mydecl, myparm): Update. Avoid prefix attributes just after a comma being applied to more than one declarator. * doc/extend.texi (Attribute Syntax): Update. Remove documentation of bugs that are no longer present. testsuite: * gcc.c-torture/compile/20010714-1.c, gcc.dg/format/attr-4.c: New tests. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44070 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-14 Re-install recently reverted patch.Jan Hubicka
* emit-rtl.c (try_split): Update mark_jump_label call. * flow.c (find_sub_basic_blocks): Likewise. * jump.c (cross_jump_death_matters, find_cross_jump, do_cross_jump, jump_back_p): Kill. (mark_all_labels): Kill second parameter. (jump_optimize, jump_optimize_1): Kill cross_jump parameter. (rebuild_jump_labels, jump_optimize_minimal): Update call of jump_optimize_1. (jump_optimize_1): Kill crossjumping code. (mark_jump_label): Kill cross_jump parameter. * rtl.h (mark_jump_label, jump_optimize): Update prototypes. (JUMP_CROSS_JUMP, JUMP_CROSS_JUMP_DEATH_MATTERS): Kill. * reg-stack.c (reg_to_stack): Do not rebuild if not needed; do splitting. * toplev.c (enum dump_file_index): Kill DFI_jump2; put DFI_stack before DFI_bpro. (dump_file_info): Likewise. (rest_of_compilation): Update calls to jump_optimize; kill jump2 pass; reorganize passes to do reg-stack first, bb-reorder second. * invoke.texi (-d letters doc): Remove the jump2 pass. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@44008 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-13 Revert Jan Hubicka's patch of Fri Jul 13 14:46:21 CEST 2001.Geoffrey Keating
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@43986 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-13 * emit-rtl.c (try_split): Update mark_jump_label call.Jan Hubicka
* flow.c (find_sub_basic_blocks): Likewise. * jump.c (cross_jump_death_matters, find_cross_jump, do_cross_jump, jump_back_p): Kill. (mark_all_labels): Kill second parameter. (jump_optimize, jump_optimize_1): Kill cross_jump parameter. (rebuild_jump_labels, jump_optimize_minimal): Update call of jump_optimize_1. (jump_optimize_1): Kill crossjumping code. (mark_jump_label): Kill cross_jump parameter. * rtl.h (mark_jump_label, jump_optimize): Update prototypes. (JUMP_CROSS_JUMP, JUMP_CROSS_JUMP_DEATH_MATTERS): Kill. * reg-stack.c (reg_to_stack): Do not rebuild if not needed; do splitting. * toplev.c (enum dump_file_index): Kill DFI_jump2; put DFI_stack before DFI_bpro. (rest_of_compilation): Update calls to jump_optimize; kill jump2 pass; reorganize passes to do reg-stack first, bb-reorder second. * invoke.texi (-d letters doc): Remove the jump2 pass. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@43979 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-10 * tm.texi: Fix markup.Neil Booth
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@43907 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-10 * doc/tm.texi (Misc): Fix thinko.Gabriel Dos Reis
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@43895 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-10 * target.h (struct gcc_target): New fields init_builtins andStan Shebs
expand_builtin. * target-def.h (TARGET_INIT_BUILTINS): New macro. (TARGET_EXPAND_BUILTIN): New macro. (TARGET_INITIALIZER): Add them. * builtins.c: Include target.h. (expand_builtin): Use targetm.expand_builtin. (default_init_builtins): New function. (default_expand_builtin): New function. * expr.h (default_init_builtins): Declare. (default_expand_builtin): Declare. * c-common.c (c_common_nodes_and_builtins): Use targetm.init_builtins. * defaults.h (MD_INIT_BUILTINS): Remove. * Makefile.in (builtins.o): Depend on target.h. * config/arm/arm.c (TARGET_INIT_BUILTINS): Define. (TARGET_EXPAND_BUILTIN): Define. * config/arm/arm.h (MD_INIT_BUILTINS): Remove. (MD_EXPAND_BUILTIN): Remove. * config/c4x/c4x.c (TARGET_INIT_BUILTINS): Define. (TARGET_EXPAND_BUILTIN): Define. (c4x_init_builtins): Make endlink arg a local. (c4x_print_operand): Fix typos in adjust_address usages. * config/c4x/c4x-protos.h (c4x_init_builtins): Update decl. * config/c4x/c4x.h (MD_INIT_BUILTINS): Remove. (MD_EXPAND_BUILTIN): Remove. * config/i386/i386.c (TARGET_INIT_BUILTINS): Define. (TARGET_EXPAND_BUILTIN): Define. (ix86_init_mmx_sse_builtins): New function, was ix86_init_builtins. (ix86_init_builtins): Call new function only if TARGET_MMX. * config/i386/i386-protos.h (ix86_init_mmx_sse_builtins): Declare. * config/i386/i386.h (MD_INIT_BUILTINS): Remove. (MD_EXPAND_BUILTIN): Remove. * config/ia64/ia64.c (TARGET_INIT_BUILTINS): Define. (TARGET_EXPAND_BUILTIN): Define. * config/ia64/ia64.h (MD_INIT_BUILTINS): Remove. (MD_EXPAND_BUILTIN): Remove. * doc/tm.texi: Document these changes. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@43888 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-09 * Makefile.in (OBJS): Add ssa-ccp.oJeffrey A Law
(ssa-ccp.o): Add dependencies. * toplev.c (DFI_ssa_ccp): New dump file enum. (dump_file): Add entry for dumping after SSA CCP. (flag_ssa_ccp): New flag variable. (f_options): Add -fssa-ccp. (rest_of_compilation): Run SSA CCP if requested. * timevar.def (TV_SSA_CCP): New timevar. * ssa.c (mark_phi_and_copy_regs): Handle deleted PHI nodes. * doc/gcc.texi (Passes): Add documentation for SSA CCP pass. Fix minor typo in SSA DCE documentation. * doc/invoke.texi: Add documentation for new flag -fssa-ccp. Add documentation for new dump option. Renumber dump files appropriately. * po/POTFILES.in: Add ssa-ccp.c git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@43872 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-09 * tm.texi: Fix markup.Neil Booth
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@43857 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-09 * final.c (output_addr_const): Use target opening andNeil Booth
closing parentheses. * target-def.h: Define TARGET_ASM_OPEN_PAREN, TARGET_ASM_CLOSE_PAREN defaults, add to TARGET_ASM_OUT. * target.h (struct gcc_target): Add open_paren and close_paren. * doc/md.texi: Update. * doc/tm.texi: Document TARGET_ASM_FUNCTION_END_PROLOGUE, TARGET_ASM_FUNCTION_BEGIN_EPILOGUE, TARGET_ASM_OPEN_PAREN and TARGET_ASM_CLOSE_PAREN. config: * i386/i386.c (TARGET_ASM_OPEN_PAREN, TARGET_ASM_CLOSE_PAREN): Override. * pdp11/pdp11.c (TARGET_ASM_OPEN_PAREN, TARGET_ASM_CLOSE_PAREN): Override. * 1750a/1750a.h (ASM_OPEN_PAREN, ASM_CLOSE_PAREN): Remove. * a29k/a29k.h: Similarly. * alpha/alpha.h: Similarly. * arc/arc.h: Similarly. * arm/aof.h: Similarly. * arm/aout.h: Similarly. * avr/avr.h: Similarly. * c4x/c4x.h: Similarly. * clipper/clipper.h: Similarly. * convex/convex.h: Similarly. * d30v/d30v.h: Similarly. * dsp16xx/dsp16xx.h: Similarly. * elxsi/elxsi.h: Similarly. * fr30/fr30.h: Similarly. * h8300/h8300.h: Similarly. * i370/i370.h: Similarly. * i386/i386.h: Similarly. * i860/i860.h: Similarly. * i960/i960.h: Similarly. * ia64/ia64.h: Similarly. * m32r/m32r.h: Similarly. * m68hc11/m68hc11.h: Similarly. * m68k/m68k.h: Similarly. * m88k/m88k.h: Similarly. * mcore/mcore.h: Similarly. * mips/mips.h: Similarly. * mn10200/mn10200.h: Similarly. * mn10300/mn10300.h: Similarly. * ns32k/ns32k.h: Similarly. * pa/pa.h: Similarly. * pdp11/pdp11.h: Similarly. * pj/pj.h: Similarly. * romp/romp.h: Similarly. * rs6000/rs6000.h: Similarly. * sh/sh.h: Similarly. * sparc/sparc.h: Similarly. * v850/v850.h: Similarly. * vax/vax.h: Similarly. * we32k/we32k.h: Similarly. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@43856 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-08 * doc/c-tree.texi: Document representation of attributes.Joseph Myers
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@43854 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-08 * doc/tm.texi: Update some places for the rename of target toJoseph Myers
targetm. Fix typo. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@43852 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-08 * target.h (struct gcc_target): Add insert_attributes.Joseph Myers
* target-def.h (TARGET_INSERT_ATTRIBUTES): Define. (TARGET_INITIALIZER): Update. * tree.c, tree.h (default_insert_attributes): New function. Update comments on other default functions to refer to targetm, not target. * doc/tm.texi (INSERT_ATTRIBUTES): Update to document TARGET_INSERT_ATTRIBUTES. (SET_DEFAULT_DECL_ATTRIBUTES): Remove. * c-common.c (decl_attributes): Use targetm.insert_attributes. Don't use PRAGMA_INSERT_ATTRIBUTES. * Makefile.in (c-common.o): Depend on $(TARGET_H). * c-decl.c (start_decl, start_function): Don't call SET_DEFAULT_DECL_ATTRIBUTES. * config/c4x/c4x.h (SET_DEFAULT_DECL_ATTRIBUTES): Don't define. * config/c4x/c4x-protos.h (c4x_set_default_attributes): Don't declare. * config/c4x/c4x.c (TARGET_INSERT_ATTRIBUTES): Define. (c4x_check_attribute): Avoid modifying attribute list itself. (c4x_set_default_attributes): Rename to c4x_insert_attributes. Make static. * config/sh/sh.h (PRAGMA_INSERT_ATTRIBUTES): Don't define. * config/sh/sh-protos.h (sh_pragma_insert_attributes): Don't declare. * config/sh/sh.c (TARGET_INSERT_ATTRIBUTES): Define. (sh_pragma_insert_attributes): Rename to sh_insert_attributes. Make static. * config/v850/v850.h (SET_DEFAULT_DECL_ATTRIBUTES): Don't define. * config/v850/v850-protos.h (v850_set_default_decl_attr): Don't declare. * config/v850/v850.c (TARGET_INSERT_ATTRIBUTES): Define. (v850_set_default_decl_attr): Rename to v850_insert_attributes. Adjust parameters. Make static. cp: * decl.c (start_decl): Don't call SET_DEFAULT_DECL_ATTRIBUTES. (start_function): Don't call SET_DEFAULT_DECL_ATTRIBUTES. Call cplus_decl_attributes even if attrs is NULL. * friend.c (do_friend): Don't call SET_DEFAULT_DECL_ATTRIBUTES. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@43851 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-08 * c-common.c (decl_attributes): Only take a single attributesJoseph Myers
parameter. * c-common.h (decl_attributes): Update prototype. * c-decl.c (start_decl, start_function): Only take a single attributes parameter. Update calls to decl_attributes. (finish_struct, finish_enum): Update calls to decl_attributes. (push_parm_decl): Expect unified list of attributes. Update call to decl_attributes. * c-parse.in (fndef, initdcl, notype_initdcl, nested_function, notype_nested_function, component_declarator, component_notype_declarator, label): Update calls to decl_attributes. (absdcl_maybe_attribute, parm, firstparm, myparm): Unify attribute lists that are passed to push_parm_decl. * c-tree.h (start_function, start_decl): Update prototypes. * config/sh/sh-protos.h, config/sh/sh.c (sh_pragma_insert_attributes): Only take a single attributes parameter. * config/sh/sh.h (PRAGMA_INSERT_ATTRIBUTES): Likewise. * doc/tm.texi (INSERT_ATTRIBUTES): Update. * objc/objc-act.c (define_decl, generate_objc_symtab_decl, build_module_descriptor, generate_static_references, generate_strings, build_selector_translation_table, generate_descriptor_table, generate_protocols, generate_ivars_list, generate_dispatch_table, generate_protocol_list, generate_category, generate_shared_structures, really_start_method, add_objc_decls, generate_classref_translation_entry): Update calls to start_decl and start_function. (build_tmp_function_decl, start_method_def): Unify attribute lists that are passed to push_parm_decl. cp: * decl.c (grokdeclarator), decl2.c (cplus_decl_attributes): Update calls to decl_attributes. testsuite: * gcc.c-torture/compile/20010701-1.c, g++.old-deja/g++.ext/attrib6.C: New tests. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@43850 138bc75d-0d04-0410-961f-82ee72b054a4
2001-07-08 * doc/tm.texi (Exception Handling): New subnode of Stack and Calling.Richard Henderson
Document MD_FALLBACK_FRAME_STATE_FOR. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@43843 138bc75d-0d04-0410-961f-82ee72b054a4