This seems like it is probably a bug with the i686-specific code production in gcc 3.2, as opposed to the i386 generic code production; see http://gcc.gnu.org/ml/gcc/2002-11/msg00139.html and http://gcc.gnu.org/ml/gcc/2002-11/msg00159.html Sending this message to keep a paper trail in the bug report.