~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/x86/Makefile_32.cpu

Version: ~ [ linux-5.3 ] ~ [ linux-5.2.15 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.73 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.144 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.193 ] ~ [ linux-4.8.17 ] ~ [ linux-4.7.10 ] ~ [ linux-4.6.7 ] ~ [ linux-4.5.7 ] ~ [ linux-4.4.193 ] ~ [ linux-4.3.6 ] ~ [ linux-4.2.8 ] ~ [ linux-4.1.52 ] ~ [ linux-4.0.9 ] ~ [ linux-3.19.8 ] ~ [ linux-3.18.140 ] ~ [ linux-3.17.8 ] ~ [ linux-3.16.73 ] ~ [ linux-3.15.10 ] ~ [ linux-3.14.79 ] ~ [ linux-3.13.11 ] ~ [ linux-3.12.74 ] ~ [ linux-3.11.10 ] ~ [ linux-3.10.108 ] ~ [ linux-3.9.11 ] ~ [ linux-3.8.13 ] ~ [ linux-3.7.10 ] ~ [ linux-3.6.11 ] ~ [ linux-3.5.7 ] ~ [ linux-3.4.113 ] ~ [ linux-3.3.8 ] ~ [ linux-3.2.102 ] ~ [ linux-3.1.10 ] ~ [ linux-3.0.101 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.5 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 # CPU tuning section - shared with UML.
  2 # Must change only cflags-y (or [yn]), not CFLAGS! That makes a difference for UML.
  3 
  4 #-mtune exists since gcc 3.4
  5 HAS_MTUNE       := $(call cc-option-yn, -mtune=i386)
  6 ifeq ($(HAS_MTUNE),y)
  7 tune            = $(call cc-option,-mtune=$(1),$(2))
  8 else
  9 tune            = $(call cc-option,-mcpu=$(1),$(2))
 10 endif
 11 
 12 align := $(cc-option-align)
 13 cflags-$(CONFIG_M486)           += -march=i486
 14 cflags-$(CONFIG_M586)           += -march=i586
 15 cflags-$(CONFIG_M586TSC)        += -march=i586
 16 cflags-$(CONFIG_M586MMX)        += -march=pentium-mmx
 17 cflags-$(CONFIG_M686)           += -march=i686
 18 cflags-$(CONFIG_MPENTIUMII)     += -march=i686 $(call tune,pentium2)
 19 cflags-$(CONFIG_MPENTIUMIII)    += -march=i686 $(call tune,pentium3)
 20 cflags-$(CONFIG_MPENTIUMM)      += -march=i686 $(call tune,pentium3)
 21 cflags-$(CONFIG_MPENTIUM4)      += -march=i686 $(call tune,pentium4)
 22 cflags-$(CONFIG_MK6)            += -march=k6
 23 # Please note, that patches that add -march=athlon-xp and friends are pointless.
 24 # They make zero difference whatsosever to performance at this time.
 25 cflags-$(CONFIG_MK7)            += -march=athlon
 26 cflags-$(CONFIG_MK8)            += $(call cc-option,-march=k8,-march=athlon)
 27 cflags-$(CONFIG_MCRUSOE)        += -march=i686 $(align)-functions=0 $(align)-jumps=0 $(align)-loops=0
 28 cflags-$(CONFIG_MEFFICEON)      += -march=i686 $(call tune,pentium3) $(align)-functions=0 $(align)-jumps=0 $(align)-loops=0
 29 cflags-$(CONFIG_MWINCHIPC6)     += $(call cc-option,-march=winchip-c6,-march=i586)
 30 cflags-$(CONFIG_MWINCHIP3D)     += $(call cc-option,-march=winchip2,-march=i586)
 31 cflags-$(CONFIG_MCYRIXIII)      += $(call cc-option,-march=c3,-march=i486) $(align)-functions=0 $(align)-jumps=0 $(align)-loops=0
 32 cflags-$(CONFIG_MVIAC3_2)       += $(call cc-option,-march=c3-2,-march=i686)
 33 cflags-$(CONFIG_MVIAC7)         += -march=i686
 34 cflags-$(CONFIG_MCORE2)         += -march=i686 $(call tune,core2)
 35 cflags-$(CONFIG_MATOM)          += $(call cc-option,-march=atom,$(call cc-option,-march=core2,-march=i686)) \
 36         $(call cc-option,-mtune=atom,$(call cc-option,-mtune=generic))
 37 
 38 # AMD Elan support
 39 cflags-$(CONFIG_MELAN)          += -march=i486
 40 
 41 # Geode GX1 support
 42 cflags-$(CONFIG_MGEODEGX1)      += -march=pentium-mmx
 43 cflags-$(CONFIG_MGEODE_LX)      += $(call cc-option,-march=geode,-march=pentium-mmx)
 44 # add at the end to overwrite eventual tuning options from earlier
 45 # cpu entries
 46 cflags-$(CONFIG_X86_GENERIC)    += $(call tune,generic,$(call tune,i686))
 47 
 48 # Work around the pentium-mmx code generator madness of gcc4.4.x which
 49 # does stack alignment by generating horrible code _before_ the mcount
 50 # prologue (push %ebp, mov %esp, %ebp) which breaks the function graph
 51 # tracer assumptions. For i686, generic, core2 this is set by the
 52 # compiler anyway
 53 ifeq ($(CONFIG_FUNCTION_GRAPH_TRACER), y)
 54 ADD_ACCUMULATE_OUTGOING_ARGS := y
 55 endif
 56 
 57 # Work around to a bug with asm goto with first implementations of it
 58 # in gcc causing gcc to mess up the push and pop of the stack in some
 59 # uses of asm goto.
 60 ifeq ($(CONFIG_JUMP_LABEL), y)
 61 ADD_ACCUMULATE_OUTGOING_ARGS := y
 62 endif
 63 
 64 cflags-$(ADD_ACCUMULATE_OUTGOING_ARGS) += $(call cc-option,-maccumulate-outgoing-args)
 65 
 66 # Bug fix for binutils: this option is required in order to keep
 67 # binutils from generating NOPL instructions against our will.
 68 ifneq ($(CONFIG_X86_P6_NOP),y)
 69 cflags-y                        += $(call cc-option,-Wa$(comma)-mtune=generic32,)
 70 endif

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | Wiki (Japanese) | Wiki (English) | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

osdn.jp