We do not seem to be communicating well. I suggest that you invoke the compile command manually with the -v verbose flag and see where the cross-compiler is finding the assembler. Not compiler and assembler print version options. In other words, go to the build directory and manually invoke /usr/src/BUILD/gcc/gcc/xgcc -B/usr/src/BUILD/gcc/gcc/ -B/usr/local/cross-tools/rs6000-ibm-aix4.3.3.0/bin/ ... -mcpu=power -DL_divdi3 -c /usr/src/gcc-3.4.4/gcc/libgcc2.c -fexceptions -fnon-call-exceptions -v The entire command It will print the sub-programs that it is invoking and the options that it is using. Then you can determine if it is invoking the wrong assembler or manually invoke the assembler on an assembly file containing "mfcr" to investigate further. David