Home
       setjmp.s - scc - simple c99 compiler
  HTML git clone git://git.simple-cc.org/scc
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
   DIR README
   DIR LICENSE
       ---
       setjmp.s (868B)
       ---
            1         .file        "setjmp.s"
            2         .text
            3         .global        setjmp
            4 
            5 setjmp:
            6         /*
            7          * 0) store IP int 0,
            8          *    then into the jmpbuf
            9          *    pointed to by r3 (first arg)
           10          */
           11         mflr        0
           12         stw        0,0(3)
           13         /* 1) store reg1 (SP) */
           14         stw        1,4(3)
           15         /* 2) store cr */
           16         mfcr        0
           17         stw        0,8(3)
           18         /* 3) store r14-31 */
           19         stw        14,12(3)
           20         stw        15,16(3)
           21         stw        16,20(3)
           22         stw        17,24(3)
           23         stw        18,28(3)
           24         stw        19,32(3)
           25         stw        20,36(3)
           26         stw        21,40(3)
           27         stw        22,44(3)
           28         stw        23,48(3)
           29         stw        24,52(3)
           30         stw        25,56(3)
           31         stw        26,60(3)
           32         stw        27,64(3)
           33         stw        28,68(3)
           34         stw        29,72(3)
           35         stw        30,76(3)
           36         stw        31,80(3)
           37         stfd        14,88(3)
           38         stfd        15,96(3)
           39         stfd        16,104(3)
           40         stfd        17,112(3)
           41         stfd        18,120(3)
           42         stfd        19,128(3)
           43         stfd        20,136(3)
           44         stfd        21,144(3)
           45         stfd        22,152(3)
           46         stfd        23,160(3)
           47         stfd        24,168(3)
           48         stfd        25,176(3)
           49         stfd        26,184(3)
           50         stfd        27,192(3)
           51         stfd        28,200(3)
           52         stfd        29,208(3)
           53         stfd        30,216(3)
           54         stfd        31,224(3)
           55 
           56         /* 4) set return value to 0 */
           57         li        3,0
           58 
           59         /* 5) return */
           60         blr