title: Cortex m3 svc with gcc inline assembly
body: <p>I hope to make a svc # into c code. Now I can use assembly to take up the value of svc.</p>
  
  <pre><code>SVC_Handler:
     tst  lr, #0x4
     ite  eq
     mrseq    r0, msp
     mrsne    r0, psp
     b    SVC_Handler_C
  
     void SVC_Handler_C(unsigned int *svc_args)
     {
         unsigned int svc_number;
         svc_number=((char *)svc_args[6])[-2];
  </code></pre>
  
  <p>But I hope translate it to inline assembly in c code. But I found the sp will be modify by function entry by local variable or something. Is any possible to solve the problem? Thanks</p>