Note that I only see the problem when building the loader as part of a
buildworld.  Compiling just the boot stuff in /usr/src/sys/boot/ (i.e.,
without a bootstrapped gcc) results in a loader that works fine.

Curious. Either what you are seeing is a different problem then or it somehow shows in a different way than on my system. I would be very interested in investigating this further.


To find the root of the cause, I guess it would be best to compare the .s files generated for the loader when a) compiling it as part of the world and b) compiling it on its own. In both cases, CPUTYPE=athlon-xp should be set, of course. Also, you should be using the exact same GCC to eliminate the possibility that different GCC binaries behave in different ways.

I am not sure how much space this would take, but if you have the space, it would be great if you could do a full buildworld with -save-temps and then a separate build of the loader, with -save-temps again. For me, one of the offending files is:

/usr/obj/usr/src/sys/boot/i386/loader/bcache.s

You could try diffing that file and if it shows no differences, all the other .s files in that directory. Some file must change when the loader breaks / unbreaks after all.

If you can send me the diffs, I will be glad to look into it.

- Bartosz
_______________________________________________
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to