Is it safe to use customized CFLAGS while compiling linux kernel, e.g enable SSE, MMX instructions, is that a problem ?
If you are building a custom kernel then you are already playing with features which may or may not work depending on version of GCC (as mentioned by GillieS) and other factors. So deciding to enable SSE,MX and so forth, probably doesn't introduce any more 'risk'. Basically, you are going to need to test your custom kernel extensively anyway, so it depends on what you call 'safe'.
If you are building modules (device drivers) for an existing kernel, then you really do need to use the same GCC as the kernel and the CFLAGS selected by the appropriate makefiles or you are asking for trouble.