CPU: Pentium/P55C (1497.62-MHz 586-class CPU)
Origin="GenuineIntel" Id=0x543 Family=0x5 Model=0x4 Stepping=3
Features=0x8003bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,APIC,MMX>
But did you compile it on that actual HW ?
$ sysctl -a | egrep -i 'hw.machine|hw.model|hw.ncpu'
hw.machine: i386
hw.model: Pentium/P55C
hw.ncpu: 1
hw.machine_arch: i386
$ grep -A 4 CPU /var/run/dmesg.boot
CPU: Pentium/P55C (233.87-MHz 586-class CPU)
Origin="GenuineIntel" Id=0x543 Family=0x5 Model=0x4 Stepping=3
Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX>
real memory = 268435456 (256 MB)
avail memory = 232763392 (221 MB)
-fcf-protection
option generates an endbr32
instruction which only exists with i686+ and should not be used with an i586/i486/i386 CPU. -fcf-protection
is used by default if --disable-hardening
is not specified with the configure
script.-march
< i686 ?-fcf-protection
?--disable-hardening
an option for the build ?--disable-hardening
macro do. In this scenario you'd be better off with gcc.CFLAGS=-g -march=i586 -fcf-protection
test: test.c
cc $(CFLAGS) -o test test.c
clean:
rm -f *.o test