xref: /linux/arch/x86/Makefile_32.cpu (revision aec2f682d47c54ef434b2d440992626d80b1ebdc)
1# SPDX-License-Identifier: GPL-2.0
2# CPU tuning section - shared with UML.
3# Must change only cflags-y (or [yn]), not CFLAGS! That makes a difference for UML.
4
5tune		= $(call cc-option,-mtune=$(1),$(2))
6
7ifdef CONFIG_CC_IS_CLANG
8align		:= -falign-functions=0 $(call cc-option,-falign-jumps=0) $(call cc-option,-falign-loops=0)
9else
10align		:= -falign-functions=0 -falign-jumps=0 -falign-loops=0
11endif
12
13cflags-$(CONFIG_M586)		+= -march=i586
14cflags-$(CONFIG_M586TSC)	+= -march=i586
15cflags-$(CONFIG_M586MMX)	+= -march=pentium-mmx
16cflags-$(CONFIG_M686)		+= -march=i686
17cflags-$(CONFIG_MPENTIUMII)	+= -march=i686 $(call tune,pentium2)
18cflags-$(CONFIG_MPENTIUMIII)	+= -march=i686 $(call tune,pentium3)
19cflags-$(CONFIG_MPENTIUMM)	+= -march=i686 $(call tune,pentium3)
20cflags-$(CONFIG_MPENTIUM4)	+= -march=i686 $(call tune,pentium4)
21cflags-$(CONFIG_MK6)		+= -march=k6
22# Please note, that patches that add -march=athlon-xp and friends are pointless.
23# They make zero difference whatsosever to performance at this time.
24cflags-$(CONFIG_MK7)		+= -march=athlon
25cflags-$(CONFIG_MCRUSOE)	+= -march=i686 $(align)
26cflags-$(CONFIG_MEFFICEON)	+= -march=i686 $(call tune,pentium3) $(align)
27cflags-$(CONFIG_MWINCHIPC6)	+= $(call cc-option,-march=winchip-c6,-march=i586)
28cflags-$(CONFIG_MWINCHIP3D)	+= $(call cc-option,-march=winchip2,-march=i586)
29cflags-$(CONFIG_MCYRIXIII)	+= $(call cc-option,-march=c3,-march=i486) $(align)
30cflags-$(CONFIG_MVIAC3_2)	+= $(call cc-option,-march=c3-2,-march=i686)
31cflags-$(CONFIG_MVIAC7)		+= -march=i686
32cflags-$(CONFIG_MATOM)		+= -march=atom
33
34# AMD Elan support
35cflags-$(CONFIG_MELAN)		+= -march=i486
36
37# Geode GX1 support
38cflags-$(CONFIG_MGEODEGX1)	+= -march=pentium-mmx
39cflags-$(CONFIG_MGEODE_LX)	+= $(call cc-option,-march=geode,-march=pentium-mmx)
40# add at the end to overwrite eventual tuning options from earlier
41# cpu entries
42cflags-$(CONFIG_X86_GENERIC) 	+= $(call tune,generic,$(call tune,i686))
43