Вот сейчас проверял у меня ps af | grep cc1 выдаёт следующее: \_ /usr/lib/gcc/i686-linux-gnu/4.4.5/cc1 -quiet -nostdinc -I/usr/src/linux-source-2.6.35/arch/x86/include -Iinclude -Iubuntu/include -D__KERNEL__ -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DKBUILD_STR(s)=#s -DKBUILD_BASENAME=KBUILD_STR(apic_noop) -DKBUILD_MODNAME=KBUILD_STR(apic_noop) -isystem /usr/lib/gcc/i686-linux-gnu/4.4.5/include -include include/generated/autoconf.h -MD arch/x86/kernel/apic/.apic_noop.o.d arch/x86/kernel/apic/apic_noop.c -D_FORTIFY_SOURCE=2 -quiet -dumpbase apic_noop.c -m32 -msoft-float -mregparm=3 -mpreferred-stack-boundary=2 -march=i686 -mtune=core2 -mtune=generic -maccumulate-outgoing-args -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -auxbase-strip arch/x86/kernel/apic/.tmp_apic_noop.o -g -O2 -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -Werror-implicit-function-declaration -Wno-format-security -Wno-sign-compare -Wframe-larger-than=1024 -Wdeclaration-after-statement -Wno-pointer-sign -p -fno-strict-aliasing -fno-common -fno-delete-null-pointer-checks -freg-struct-return -ffreestanding -fstack-protector -fno-asynchronous-unwind-tables -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-strict-overflow -fconserve-stack -fstack-protector -o -
то есть как вы можете наблюдать опции -march=i686 -mtune=core2 проставлены. У меня процессор core 2 duo, и эти опции компилятор автоматически поставил вместо -march=native
видимо лучше жёстко проставить -march=core2 для более лучшей оптимизации, ибо как извесно опции -march=i686 -mtune=core2 выдают код который будет работать на процессорах от pentiumpro(i686) и выше, при жёстком указании -march=core2 будет выдавать код чисто для core2