summaryrefslogtreecommitdiff
path: root/gcc/config/i386/unix.h
Commit message (Collapse)AuthorAgeFilesLines
* * invoke.texi (-malign-double): Re-add lost warning.hubicka2002-05-151-54/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * i386-protos.h (x86_output_mi_thunk): Declare. * unix.h (ASM_OUTPUT_MI_THUNK): Move offline to ... * i386.c (x86_output_mi_thunk): ... here; handle 64bits. * dwarf2out.c (output_call_frame_info): Do not skip unwind info when flag_asynchronous_unwind_tables is set. * flags.h (flag_reorder_functions): Declare. * function.c (prepare_function_start): Initialize frequnecy. * params.def (HOT_BB_COUNT_FRACTION, HOT_BB_FREQUENCY_FRACTION): New paramters. * Makefile.in (predict.o): Add dependency on target.h and params.h * defaults.h (HOT_TEXT_SECTION_NAME, UNLIKELY_EXECUTED_TEXT_SECTION_NAME): New macros. * predict.c (choose_function_section): New function. (estimate_bb_frequencies): Use it. * toplev.c (flag_reorder_functions): New global variable. (lang_independent_options): New. (parse_options_and_default_flags): Set. * varasm.c (assemble_start_function): Bypass functdion alignment for never executed functions. * invoke.texi (-freorder-blocks, -freorder-functions): Document. (param hot-bb-count-fraction, hot-bb-frequency-fraction): New. * tm.texi (HOT_TEXT_SECTION_NAME, UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Document. Thu Jan 3 21:52:09 CET 2002 Jan Hubicka <jh@suse.cz> * predict.c: Inlude profile.h (MIN_COUNT): Rename to MIN_COUNT_FRACTION (maybe_hot_bb_p, probably_cold_bb_p, probably_never_executed_bb_p): Use the information about maximal counter in the program. Thu Dec 20 22:14:00 CET 2001 Jan Hubicka <jh@suse.cz> * basic-block.h (maybe_hot_bb_p, probably_cold_bb_p, probably_never_executed_bb_p): New functions. * cfgcleanup.c (outgoing_edges_match): Use them. * predict.c (MIN_COUNT, MIN_FREQUENCY): New macros. (maybe_hot_bb_p, probably_cold_bb_p, probably_never_executed_bb_p): New functions. * function.h (function): Add new field function_frequency. * predict.c (compute_function_frequency): New function. (estimate_probability): Call it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@53478 138bc75d-0d04-0410-961f-82ee72b054a4
* * basic-block.h (flow_delete_insn, flow_delete_insn_chain): Kill.hubicka2001-09-211-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * cfg.c (delete_insn): Rename from ....; use remove_insn; do not remove some labels. (flow_delete_insn): This one. (delete_insn_chain): Rename from ...; do not care labels. (flow_delete_insn_chain): ... this one. (flow_delete_block): Remove the insns one BB has been expunged. (merge_blocks_nomove): Likewise. (try_redirect_by_replacing_jump): Use delete_insn[_chain]; do not care updating BB boundaries. (tidy_fallthru_edge): Likewise. (commit_one_edge_insertion): Likewise. * cfgbuild.c (find_basic_block): Likewise. (find_basic_blocks_1): Likewise. * cfgcleanup.c (merge_blocks_move_predecessor_nojumps): Likewise. (try_crossjump_to_edge): Likewise. (try_optimize_cfg): Likewise. * cse.c (delete_trivially_dead_insns): Likewise. * df.c (df_insn_delete): Likewise. * doloop.c (doloop_modify): Use delete_related_insns. * emit-rtl.c (try_split): Likewise. (remove_insn): Update BB boundaries. * expect.c (connect_post_landing_pads): Use delete_related_insns. * flow.c (delete_dead_jumptables): Use delete_insn[_chain]; do not care updating BB boundaries. (propagate_block_delete_insn): Likewise. (propagate_block_delete_libcall): Likewise. * function.c (delete_handlers): Use delete_related_insns. (thread_prologue_and_epilogue_insns): Likewise. * gcse.c (delete_null_pointer_checks): Use delete_related_insns. * genpeep.c (gen_peephole): Use delete_related_insns. * ifcvt.c (noce_process_if_block): Use delete_insn; do not care updating BB boundaries. (find_cond_trap): Likewise. * integrate.c (save_for_inline): Use delete_related_insns. (copy_insn_list): Likewise. * jump.c (pruge_linie_number_notes): Likewise. (duplicate_loop_exit_test): Likewise. (delete_computation): Likewise. (delete_related_insn): Rename from ...; use delete_insn (delete_insn): ... this one. (redirect_jump): Use delete_related_insns. * loop.c (scan_loop): Likewise. (move_movables): Likewise. (find_and_verify_loops): Likewise. (check_dbra_loop): Likewise. * recog.c (peephole2_optimize): Likewise. * reg-stack.c (delete_insn_for_stacker): Remove. (move_for_stack_reg): Use delete_insn. * regmove.c (combine_stack_adjustments_for_block): Likewise. * reload1.c (delete_address_reloads): Use delete_related_insns. (fixup_abnormal_edges): Use delete_insn. * recog.c (emit_delay_sequence): Use delete_related_insns. (delete_from-delay_slot): Likewise. (delete_scheduled_jump): likewise. (optimize_skip): Likewise. (try_merge_delay_insns): Likewise. (full_simple_delay_slots): Likewise. (fill_slots_from_thread): Likewise. (relax_delay_slots): Likewise. (make_return_insns): Likewise. (dbr_schedule): Likewise. * rtl.h (delete_insn): Rename to delete_related_insns. (delete_insn, delete_insn_chain): New prototypes. * ssa-ccp (sse_fast_dce): Remove deleting of DEF, as it is done by df_insn_delete already. * ssa-dce.c (delete_insn_bb): Use delete_insn. * ssa.c (convert_from_ssa): Use delete_related_insns. * unroll.c (unroll_loop): Likewise. (calculate_giv_inc): Likewise. (copy_loop_body): Likewise. * i386-protos.h (ix86_libcall_value, ix86_function_value, ix86_function_arg_regno_p, ix86_function_arg_boundary, ix86_return_in_memory, ix86_function_value): Declare. * i386.c (x86_64_int_parameter_registers, x86_64_int_return_registers): new static valurables. (x86_64_reg_class): New enum (x86_64_reg_class_name): New array. (classify_argument, examine_argument, construct_container, merge_classes): New static functions. (optimization_options): Enable flag_omit_frame_pointer and disable flag_pcc_struct_return on 64bit. (ix86_libcall_value, ix86_function_value, ix86_function_arg_regno_p, ix86_function_arg_boundary, ix86_return_in_memory, ix86_function_value): New global functions. (init_cumulative_args): Refuse regparm on x86_64, set maybe_vaarg. (function_arg_advance): Handle x86_64 passing conventions. (function_arg): Likewise. * i386.h (FUNCTION_ARG_BOUNDARY): New macro. (RETURN_IN_MEMORY): Move offline. (FUNCTION_VALUE, LIBCALL_VALUE): Likewise. (FUNCTION_VALUE_REGNO_P): New macro. (FUNCTION_ARG_REGNO_P): Move offline. (struct ix86_args): Add maybe_vaarg. * next.h (FUNCTION_VALUE_REGNO_P): Delete. * unix.h (FUNCTION_VALUE_REGNO_P): Delete. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45726 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-09-14 Marc Espie <espie@openbsd.org>espie2001-09-141-2/+3
| | | | | | | | * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Generate reference to GOT correctly. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45601 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Don't capitalizeaj2001-08-131-2/+2
| | | | | | | register %rip. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44848 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Fix output format foraj2001-07-171-1/+1
| | | | | | | | | | | | x86-64 pic support. * lcm.c (optimize_mode_switching): Avoid warning for unused variable if !NORMAL_MODE * flow.c (try_crossjump_to_edge): Remove unused variable. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44062 138bc75d-0d04-0410-961f-82ee72b054a4
* Implement vtable jumps for x86-64.bo2001-07-091-1/+7
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@43860 138bc75d-0d04-0410-961f-82ee72b054a4
* * i386.h (MASK_64BIT): New constant.hubicka2001-03-091-1/+1
| | | | | | | | | | | | (TARGET_64BIT): New macro. (TARGET_OPTIONS): Add '64'/'32' (TARGET_DEFAULT): Define. * cygwin.h freebsd-aout.h i386-interix.h i386.h i386elf.h isc.h isccoff.h netbsd.h next.h openbsd.h p sco.h sco5.h scodbx.h sequent.h unix.h win32.h (TARGET_DEFAULT): Rename to TARGET_SUBTARGET_DEFAULT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@40345 138bc75d-0d04-0410-961f-82ee72b054a4
* 2000-12-15 Diego Novillo <dnovillo@redhat.com>dnovillo2000-12-161-1/+1
| | | | | | | | * i386/unix.h (ASM_OUTPUT_MI_THUNK): Fix references to _GLOBAL_OFFSET_TABLE_ when using Intel syntax. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@38308 138bc75d-0d04-0410-961f-82ee72b054a4
* 2000-10-17 Diego Novillo <dnovillo@cygnus.com>dnovillo2000-10-171-1/+1
| | | | | | | | | * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Symbol _GLOBAL_OFFSET_TABLE should not have a $ prefix when using -mintel-syntax. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@36906 138bc75d-0d04-0410-961f-82ee72b054a4
* 2000-10-13 Diego Novillo <dnovillo@cygnus.com>dnovillo2000-10-161-3/+5
| | | | | | | | * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Output final jump using appropriate assembler dialect. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@36887 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix BSS_SECTION_ASM_OP typo introduced and covered by todays ASM.*_OP ↵hp2000-09-251-1/+1
| | | | | | changelog entry. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@36618 138bc75d-0d04-0410-961f-82ee72b054a4
* definitions in config/i3*:hp2000-09-251-4/+4
| | | | | | | | Changes add TABs on either or both sides, covering start of line, up to any operand for all .*ASM.*_OP definitions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@36607 138bc75d-0d04-0410-961f-82ee72b054a4
* Add MMX and SSE registers to i386 machine descriptioncrux2000-06-261-1/+3
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34721 138bc75d-0d04-0410-961f-82ee72b054a4
* Merge new ia32 backend from the branch!rth1999-09-021-106/+45
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@29044 138bc75d-0d04-0410-961f-82ee72b054a4
* Donn Terry <donn@interix.com>rth1999-04-171-1/+1
| | | | | | | | | | | * i386.h (PRINT_OPERAND_PUNCT_VALID_P): Allow _. * i386.c (print_operand): New %_ operator. (load_pic_register): Proper number of leading _ in GOT literal. * i386.md (prologue_get_pc_and_set_got): Likewise. * i386/unix.h (ASM_OUTPUT_MI_THUNK): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26525 138bc75d-0d04-0410-961f-82ee72b054a4
* Update copyright.rth1999-01-191-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@24771 138bc75d-0d04-0410-961f-82ee72b054a4
* * i386/isc.h (TARGET_DEFAULT): Define symbolicly.rth1999-01-191-3/+2
| | | | | | | | * i386/isccoff.h, i386/next.h, i386/sco.h, i386/sco5.h: Likewise. * i386/scodbx.h, i386/sequent.h, i386.unix.h: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@24769 138bc75d-0d04-0410-961f-82ee72b054a4
* Patch to fix g++.other/local1.C.wilson1998-05-131-4/+2
| | | | | | | | | | | | | * varasm.c (make_decl_rtl): Revert April 1 change. * alpha/alpha.h, alpha/win-nt.h, arm/arm.h, i386/unix.h, i960/i960.h, m68k/linux.h, pa/pa.h, sparc/sparc.h, vax/vax.h (ASM_OUTPUT_MI_THUNK): Get function name from the SYMBOL_REF in the DECL_RTL, not from DECL_ASSEMBLER_NAME. * i386/winnt.c (gen_stdcall_suffix): Comment for questionable use of DECL_ASSEMBLER_NAME. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@19723 138bc75d-0d04-0410-961f-82ee72b054a4
* Remove COMMENT_BEGINcoxs1996-11-151-1/+0
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@13177 138bc75d-0d04-0410-961f-82ee72b054a4
* (ASM_OUTPUT_MI_THUNK): Handle functions returning an aggregate.coxs1996-09-181-38/+41
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@12739 138bc75d-0d04-0410-961f-82ee72b054a4
* (SHIFT_DOUBLE_OMITS_COUNT): new macro.coxs1996-06-091-1/+3
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@12251 138bc75d-0d04-0410-961f-82ee72b054a4
* unix.h (ASM_OUTPUT_MI_THUNK): Define.coxs1996-05-171-0/+41
| | | | | | | {att.h,bsd.h,sun386.h} (ASM_OUTPUT_MI_THUNK): Delete. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@12010 138bc75d-0d04-0410-961f-82ee72b054a4
* Update FSF address.kenner1995-06-151-1/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@9975 138bc75d-0d04-0410-961f-82ee72b054a4
* Treat ALMOST_STDC like __STDC__.kenner1994-09-301-2/+4
| | | | | | | (AS2C): New macro. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@8185 138bc75d-0d04-0410-961f-82ee72b054a4
* Comment fix.rms1992-09-241-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2221 138bc75d-0d04-0410-961f-82ee72b054a4
* (TARGET_DEFAULT,VALUE_REGNO,FUNCTION_VALUE_REGNO): Moved from unix targetjrv1992-08-311-0/+18
| | | | | | | | | | | | files (aix386.h, i386gas.h, i386sun.h, i386v.h, i386v4.h, i386vgas.h, seq386.h). (TARGET_DEFAULT): Make TARGET_IEEE_FP default on. (VALUE_REGNO): Test for MODE_FLOAT instead of specific modes. (VALUE_REGNO,FUNCTION_VALUE_REGNO): MODE_FLOAT return reg depends on TARGET_FLOAT_RETURNS_IN_80387. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2000 138bc75d-0d04-0410-961f-82ee72b054a4
* entered into RCSmycroft1992-05-111-0/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@958 138bc75d-0d04-0410-961f-82ee72b054a4
* Initial revisionrms1991-12-091-0/+121
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@107 138bc75d-0d04-0410-961f-82ee72b054a4