On Sep 2, 2009, at 4:41 PM, Masao Uebayashi wrote:
@@ -876,10 +876,17 @@ move s2, t2 # stash most of temporary regs REG_S t3, FRAME_T3(k1) # syscall saved gp for fork mfc0 a1, MIPS_COP_0_STATUS # 2nd arg is STATUS +#if defined(__mips_n32) || defined(__mips_n64) + REG_S a4, FRAME_A4(k1) + REG_S a5, FRAME_A5(k1) + REG_S a6, FRAME_A6(k1) + REG_S a7, FRAME_A7(k1) +#else move s4, ta0 move s5, ta1 move s6, ta2 move s7, ta3 +#endif #REG_S t8, FRAME_T8(k1) #REG_S t9, FRAME_T9(k1) REG_S gp, FRAME_GP(k1)This should be #if !defined(__mips_o32) ... #else ... #endif. Otherwise O64kernel + N32/N64 userland won't work.
O64 kernel? why should we worry about O64?