I found that on Cortex M0 or on Cortex M3 GCC ports,
there is no api for portSAVECONTEXT or port RESTORECONTEXT.
I guess the task can handle context switching
without those api's in arm architecture, but what about ISR?
Don't I need to wrap my ISR functions with portSAVECONTEXT
if a context switch will occur inside my ISR function?
If so, how should I define my own portSAVECONTEXT
and portRESTORECONTEXT for cortex m series?
No they are not needed. Please read the "Interrupt Service Routines" section of any of the Cortex M0 or M3 documentation pages, and refer to the many examples provided.