On Fri, 5 Jan 2001 Lisa.Hsu@taec.toshiba.com wrote: > With the help from Kevin Kissell, I've found out that the compilation > directives "set .mips3[4]" were turned on before cpu_probe() and cpu_probe > () functions in my head.S file. This is the reason why I've got that wrong > code generated although I've specified mip1 in the gcc options. > > I 've temporarily used #define to add "set .mips1" in the code to fix the > problem. My question now, is: how can we make the kernel code flexible > to free from the problem of the one that I've got? 1. Don't use "set .mips*" unless absolutely needed. The right ISA level is already set via a compiler option depending on the host CPU selected upon kernel configuration. 2. If you can't avoid "set .mips*" for some reason, then always restore the default state after the relevant code, either by ".set mips0" or by ".set push" and ".set pop". -- + Maciej W. Rozycki, Technical University of Gdansk, Poland + +--------------------------------------------------------------+ + e-mail: macro@ds2.pg.gda.pl, PGP key available +