cvs commit: src/sys/i386/isa apic_vector.s clock.c src/sys/kern kern_intr.c kern_sig.c kern_slaballoc.c kern_switch.c kern_systimer.c kern_upcall.c lwkt_msgport.c lwkt_thread.c lwkt_token.c src/sys/sys slaballoc.h

Matthew Dillon dillon at
Thu Feb 19 11:45:32 PST 2004

:> Interestingly enough, on my dfly test box, recent kernels built with gcc2
:> along with CPUTYPE=i686 set in make.conf yield broken kernels almost
:> identical to what you are describing. Removing CPUTYPE from make.conf yields
:> working kernel with gcc2. Is this reproducible on your end ?
:Yes, that did it.

    Umm..  you guys realize that setting CPUTYPE will generate specific
    instructions for that particular processor?  If you do not actually
    have a pentium-pro cpu in your box, using CPUTYPE=i686 is likely to
    produce instructions that your cpu does not support. 

    In particular, ppro optimizations will use the CMOV instruction.
    Is 'CMOV' in the Features line near the top of your dmesg?   

    Post the first 25 lines of your dmesg output.

    Also, what -O optimization level are you trying to compile things
    under?  e.g. for example, -O2 or -O3 has historically been rather buggy
    with GCC2.  Even so, I tried recompiling my kernel with
    gcc2 -march=pentiumpro -O3 on an AMD64, and it seemed to work.

					Matthew Dillon 
					<dillon at xxxxxxxxxxxxx>

More information about the Bugs mailing list