[patch] tuning gcc for AMDFAM10 processor (patch 2)

Jagasia, Harsha harsha.jagasia@amd.com
Tue Jan 30 01:07:00 GMT 2007


This is the 2nd of 11 patches to tune gcc for AMD's AMDFAM10 processor
(based on mainline rev 121295). This patch defines mtune=amdfam10 and
enables/disables some existing tuning choices for amdfam10 such as
aligning loop tops to 32 bytes and using push/pops instead of moves for
prologue/epilogue.

Each patch has been reviewed by Richard Henderson and Jan Hubicka and
also pre-reviewed by Diego Novillo. 

2007-01-29      Harsha Jagasia  <harsha.jagasia@amd.com>


        * gcc/gcc/config/i386/i386.h (TARGET_AMDFAM10): New macro.
        (TARGET_CPU_CPP_BUILTINS): Add code for amdfam10.
        Define TARGET_CPU_DEFAULT_amdfam10.
        (TARGET_CPU_DEFAULT_NAMES): Add amdfam10.
        (processor_type): Add PROCESSOR_AMDFAM10.

        * gcc/gcc/config/i386/i386.md:  Add amdfam10 as a new cpu
        attribute to match processor_type in gcc/gcc/config/i386/i386.h
        Enable imul peepholes for TARGET_AMDFAM10

        * gcc/gcc/config.gcc: Add support for --with-cpu option for
        amdfam10

        * gcc/gcc/config/i386/i386.c (amdfam10_cost): New variable.
        (m_AMDFAM10): New macro.
        (x86_use_leave, x86_push_memory, int x86_movx,
x86_unroll_strlen,
        x86_cmove, x86_fisttp, x86_3dnow_a, x86_deep_branch,
        x86_use_simode_fiop, x86_promote_QImode,
x86_integer_DFmode_moves,
        x86_partial_reg_dependency, x86_memory_mismatch_stall,
        x86_accumulate_outgoing_args, x86_arch_always_fancy_math_387,
        x86_sse_partial_reg_dependency, x86_sse_typeless_stores,
        x86_use_ffreep, x86_use_incdec, x86_four_jump_limit,
x86_schedule,
        x86_use_bt, x86_cmpxchg16b, x86_pad_returns):
        (override_options): Add amdfam10_cost to processor_target_table.
        Set up PROCESSOR_AMDFAM10 for amdfam10 entry in
        processor_alias_table.
        (ix86_issue_rate): Add PROCESSOR_AMDFAM10.
        (ix86_adjust_cost): Add code for amdfam10.


Thanks,
Harsha Jagasia
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gcc-amdfam10-2.patch
Type: application/octet-stream
Size: 25554 bytes
Desc: gcc-amdfam10-2.patch
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20070130/301e40c0/attachment.obj>


More information about the Gcc-patches mailing list