This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
gcc/gcc ChangeLog config.gcc config/i386/athlo ...
- From: hubicka at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: 20 Nov 2002 21:00:42 -0000
- Subject: gcc/gcc ChangeLog config.gcc config/i386/athlo ...
CVSROOT: /cvs/gcc
Module name: gcc
Branch: gcc-3_4-basic-improvements-branch
Changes by: hubicka@gcc.gnu.org 2002-11-20 13:00:42
Modified files:
gcc : ChangeLog config.gcc
gcc/config/i386: athlon.md i386.c i386.h i386.md k6.md
pentium.md ppro.md
gcc/doc : invoke.texi
Log message:
* config.gcc: Add k8 target alias support
* i386.c (_cost): Declare costs for various variants of divides and
multiplies.
(k8_cost): New.
(m_K8, m_ATHLON_K8): New macros.
(x86_use_leave, x86_push_memory, x86_movx, x86_unroll_strlen,
x86_cmove, x86_3dnow_a, x86_deep_branch, x86_use_fiop,
x86_promote_QImode, x86_sub_esp_?, x86_add_esp_?,
x86_integer_DFmode_moves, x86_partial_reg_dependency,
x86_memory_mismatch_stall, x86_accumulate_outgoing_args,
x86_prologue_using_move, x86_epilogue_using_move,
x86_arch_always_fancy_math_387, x86_sse_partial_regs,
x86_sse_typeless_stores): Set for K8
(override_options): Add k8 support; fix athlon alignment;
complain about non-x86-64 capable CPU being used in x86-64 compilation.
(ix86_issue_rate): Set for K8.
(ix86_adjust_cost, ia32_use_dfa_pipeline_interface,
x86_machine_dependent_reorg): Handle K8 like
* i386.h
(x86_costs): Change mult_init and divide into array.
(TARGET_K8, TARGET_ATHLON): New macros.
(MODE_INDEX): New macro.
(RTX_COST): Use new costs.
(TARGET_CPU_CPP_BUILTINS): Define __k8__ and __tune_k8__.
(TARGET_CPU_DEFAULT_NAMES): Add k8
(TARGET_CPU_DEFAULT_k8): New constant
(enum processor_type): Add PROCESSOR_K8.
* i386.md (cpu attribute): Add k8.
* invoke.texi: Document -march=k8.
* i386.md (type attribute): Add leave
(mode attribute): Remove unknownfp.
(length_immediate, modrm, memory attributes): Handle leave correctly.
(fp comparison patterns): Determine FP mode.
(leave, leave_rex64): Remove special cases.
* ppro.md (ppro_uops, ppro_p2): Add leave
* pentiun.md (pent_pop): Handle leave too.
* k6.md (k6_load): Handle leave.
* athlon.md (athlon_leave, athlon_pop): Fix.
(athlon_decode): Handle leave.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-basic-improvements-branch&r1=1.15234.2.105&r2=1.15234.2.106
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config.gcc.diff?cvsroot=gcc&only_with_tag=gcc-3_4-basic-improvements-branch&r1=1.240.2.13&r2=1.240.2.14
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/athlon.md.diff?cvsroot=gcc&only_with_tag=gcc-3_4-basic-improvements-branch&r1=1.1.16.1&r2=1.1.16.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-basic-improvements-branch&r1=1.447.2.24&r2=1.447.2.25
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.h.diff?cvsroot=gcc&only_with_tag=gcc-3_4-basic-improvements-branch&r1=1.280.4.17&r2=1.280.4.18
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.md.diff?cvsroot=gcc&only_with_tag=gcc-3_4-basic-improvements-branch&r1=1.380.4.27&r2=1.380.4.28
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/k6.md.diff?cvsroot=gcc&only_with_tag=gcc-3_4-basic-improvements-branch&r1=1.1&r2=1.1.16.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/pentium.md.diff?cvsroot=gcc&only_with_tag=gcc-3_4-basic-improvements-branch&r1=1.1.16.2&r2=1.1.16.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/ppro.md.diff?cvsroot=gcc&only_with_tag=gcc-3_4-basic-improvements-branch&r1=1.1&r2=1.1.16.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/invoke.texi.diff?cvsroot=gcc&only_with_tag=gcc-3_4-basic-improvements-branch&r1=1.175.2.10&r2=1.175.2.11