> It is possible. Your expander can handle it before reload; to handle it > during and after reload, you need to implement a TARGET_SECONDARY_RELOAD hook. > > http://gcc.gnu.org/onlinedocs/gccint/Register-Classes.html#index-TARGET_005fSECONDARY_005fRELOAD-3974 > Thanks Dave, It works, but I found that reload is not the only pass which might generate fpload/fpstore instructions. I am working with GCC 4.4(mips), there is function(mips_emit_move), which is called in many pass after register allocation and might generate fpload/fpstore. For example, in pass pro_and_epilogue, it generates load/store for fpu register which saved by function prologue/epilogue.
Seems I have to track down all calling of this function and make sure it works in my way. Thanks. -- Best Regards.