From: kaz K. <kk...@rr...> - 2003-06-12 00:42:28
|
Stuart Menefy <stu...@st...> wrote: > You need to build kernel modules with the -mno-implicit-fp compiler > option. This is the same option used when building the kernel, and > prevents the compiler making use of the floating point unit for integer > divides. It also effects which intrinsic functions the compiler uses > for integer divide, which is what you are seeing here. BTW, we don't have even local patches for -mno-implicit-fp against gcc-3.3 and gcc-3.4. I hear that the "stage1" of gcc-3.4 will end at July 4 and it means that we can't add any new features to the official gcc-3.4 after that day. I'm unsure that there are technical merits to use them when compiling kernel, but some folks would like to use a single (and new) SH gcc. Sugioka-san taught me that the option -m4-nofpu -U__sh3__ -D__SH4__=1 works for the kernel, at least to some extent. It slightly changes the ABI of function calling conventions even for the integer arguments, so we might need to check that it doesn't break something, though I guess there are few possibilities and we can easily fix them if any. So, it might be enough for the kernel and the kernel modules. # Caveat: Don't use -m4-nofpu for userland works without the complete # understanding about this option. The third way might be to rewrite kernel so as to enable the use of FPU by kernel itself, though it'd be the another issue. Opinions? |