home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Misc / CLISP-2.LHA / CLISP960530-ki.lha / ffcall / avcall / avcall-mips.s < prev    next >
Encoding:
Text File  |  1996-04-15  |  4.6 KB  |  363 lines

  1.     .file    1 "avcall-mips.c"
  2.     .option pic2
  3.  
  4.  # GNU C 2.7.0 [AL 1.1, MM 40] SGI running IRIX 5.x compiled by GNU C
  5.  
  6.  # Cc1 defaults:
  7.  # -mabicalls
  8.  
  9.  # Cc1 arguments (-G value = 0, Cpu = 3000, ISA = 1):
  10.  # -quiet -dumpbase -o
  11.  
  12. gcc2_compiled.:
  13. __gnu_compiled_c:
  14.     .text
  15.     .align    2
  16.     .globl    __builtin_avcall
  17.     .ent    __builtin_avcall
  18. __builtin_avcall:
  19.     .frame    $fp,80,$31        # vars= 40, regs= 3/0, args= 16, extra= 8
  20.     .mask    0xd0000000,-8
  21.     .fmask    0x00000000,0
  22.     .set    noreorder
  23.     .cpload    $25
  24.     .set    reorder
  25.     subu    $sp,$sp,80
  26.     .cprestore 16
  27.     sw    $31,72($sp)
  28.     sw    $fp,68($sp)
  29.     sw    $28,64($sp)
  30.     move    $fp,$sp
  31.     sw    $4,80($fp)
  32.     addu    $sp,$sp,-1032
  33.     addu    $2,$sp,16
  34.     addu    $3,$2,7
  35.     srl    $2,$3,3
  36.     move    $3,$2
  37.     sll    $4,$3,3
  38.     #.set    volatile
  39.     lw    $2,0($sp)
  40.     #.set    novolatile
  41.     sw    $4,24($fp)
  42.     sw    $sp,28($fp)
  43.     lw    $2,80($fp)
  44.     lw    $3,20($2)
  45.     addu    $2,$3,-48
  46.     lw    $3,80($fp)
  47.     subu    $2,$2,$3
  48.     move    $3,$2
  49.     sra    $2,$3,2
  50.     sw    $2,32($fp)
  51.     lw    $2,80($fp)
  52.     lw    $3,4($2)
  53.     andi    $2,$3,0x0200
  54.     beq    $2,$0,$L2
  55.     lw    $8,80($fp)
  56.  #APP
  57.     l.d $f12,32($8)
  58.  #NO_APP
  59.     lw    $2,80($fp)
  60.     lw    $3,4($2)
  61.     andi    $2,$3,0x0400
  62.     beq    $2,$0,$L3
  63.     lw    $8,80($fp)
  64.  #APP
  65.     l.d $f14,40($8)
  66.  #NO_APP
  67. $L3:
  68. $L2:
  69.     .set    noreorder
  70.     nop
  71.     .set    reorder
  72.     li    $2,0x00000004        # 4
  73.     sw    $2,36($fp)
  74. $L4:
  75.     lw    $2,36($fp)
  76.     lw    $3,32($fp)
  77.     slt    $2,$2,$3
  78.     bne    $2,$0,$L7
  79.     j    $L5
  80. $L7:
  81.     lw    $2,36($fp)
  82.     move    $3,$2
  83.     sll    $2,$3,2
  84.     lw    $3,28($fp)
  85.     addu    $2,$2,$3
  86.     lw    $3,80($fp)
  87.     lw    $4,36($fp)
  88.     move    $5,$4
  89.     sll    $4,$5,2
  90.     addu    $3,$4,$3
  91.     addu    $4,$3,48
  92.     lw    $3,0($4)
  93.     sw    $3,0($2)
  94. $L6:
  95.     lw    $3,36($fp)
  96.     addu    $2,$3,1
  97.     move    $3,$2
  98.     sw    $3,36($fp)
  99.     j    $L4
  100. $L5:
  101.     lw    $2,80($fp)
  102.     lw    $25,0($2)
  103.     lw    $2,80($fp)
  104.     lw    $3,80($fp)
  105.     lw    $6,80($fp)
  106.     lw    $7,80($fp)
  107.     lw    $4,48($2)
  108.     lw    $5,52($3)
  109.     lw    $6,56($6)
  110.     lw    $7,60($7)
  111.     jal    $31,$25
  112.     sw    $2,36($fp)
  113.     lw    $2,80($fp)
  114.     lw    $3,12($2)
  115.     sltu    $4,$3,15
  116.     beq    $4,$0,$L45
  117.     lw    $2,12($2)
  118.     move    $3,$2
  119.     sll    $2,$3,2
  120.     la    $3,$L46
  121.     addu    $2,$2,$3
  122.     lw    $3,0($2)
  123.     .cpadd    $3
  124.     j    $3
  125.     .rdata
  126.     .align    3
  127. $L46:
  128.     .gpword    $L10
  129.     .gpword    $L9
  130.     .gpword    $L11
  131.     .gpword    $L12
  132.     .gpword    $L13
  133.     .gpword    $L14
  134.     .gpword    $L15
  135.     .gpword    $L16
  136.     .gpword    $L17
  137.     .gpword    $L18
  138.     .gpword    $L19
  139.     .gpword    $L20
  140.     .gpword    $L21
  141.     .gpword    $L22
  142.     .gpword    $L23
  143.     .text
  144. $L9:
  145.     j    $L8
  146. $L10:
  147.     lw    $2,80($fp)
  148.     lw    $3,8($2)
  149.     lw    $2,36($fp)
  150.     sw    $2,0($3)
  151.     j    $L8
  152. $L11:
  153.     lw    $2,80($fp)
  154.     lw    $3,8($2)
  155.     lbu    $2,39($fp)
  156.     sb    $2,0($3)
  157.     j    $L8
  158. $L12:
  159.     lw    $2,80($fp)
  160.     lw    $3,8($2)
  161.     lbu    $2,39($fp)
  162.     sb    $2,0($3)
  163.     j    $L8
  164. $L13:
  165.     lw    $2,80($fp)
  166.     lw    $3,8($2)
  167.     lbu    $2,39($fp)
  168.     sb    $2,0($3)
  169.     j    $L8
  170. $L14:
  171.     lw    $2,80($fp)
  172.     lw    $3,8($2)
  173.     lhu    $2,38($fp)
  174.     sh    $2,0($3)
  175.     j    $L8
  176. $L15:
  177.     lw    $2,80($fp)
  178.     lw    $3,8($2)
  179.     lhu    $2,38($fp)
  180.     sh    $2,0($3)
  181.     j    $L8
  182. $L16:
  183.     lw    $2,80($fp)
  184.     lw    $3,8($2)
  185.     lw    $2,36($fp)
  186.     sw    $2,0($3)
  187.     j    $L8
  188. $L17:
  189.     lw    $2,80($fp)
  190.     lw    $3,8($2)
  191.     lw    $2,36($fp)
  192.     sw    $2,0($3)
  193.     j    $L8
  194. $L18:
  195.     lw    $2,80($fp)
  196.     lw    $3,8($2)
  197.     lw    $2,36($fp)
  198.     sw    $2,0($3)
  199.     j    $L8
  200. $L19:
  201.     lw    $2,80($fp)
  202.     lw    $3,8($2)
  203.     lw    $2,36($fp)
  204.     sw    $2,0($3)
  205.     j    $L8
  206. $L20:
  207.     lw    $2,80($fp)
  208.     lw    $3,8($2)
  209.     s.s    $f0,0($3)
  210.     j    $L8
  211. $L21:
  212.     lw    $2,80($fp)
  213.     lw    $3,8($2)
  214.     s.d    $f0,0($3)
  215.     j    $L8
  216. $L22:
  217.     lw    $2,80($fp)
  218.     lw    $3,8($2)
  219.     lw    $2,36($fp)
  220.     sw    $2,0($3)
  221.     j    $L8
  222. $L23:
  223.     lw    $2,80($fp)
  224.     lw    $3,4($2)
  225.     andi    $2,$3,0x0001
  226.     beq    $2,$0,$L24
  227.     lw    $3,80($fp)
  228.     lw    $2,16($3)
  229.     li    $3,0x00000002        # 2
  230.     beq    $2,$3,$L27
  231.     sltu    $3,$2,3
  232.     beq    $3,$0,$L35
  233.     li    $3,0x00000001        # 1
  234.     beq    $2,$3,$L26
  235.     j    $L30
  236. $L35:
  237.     li    $3,0x00000004        # 4
  238.     beq    $2,$3,$L28
  239.     li    $3,0x00000008        # 8
  240.     beq    $2,$3,$L29
  241.     j    $L30
  242. $L26:
  243.     lw    $3,80($fp)
  244.     lw    $2,8($3)
  245.     lw    $3,36($fp)
  246.     lbu    $4,0($3)
  247.     sb    $4,0($2)
  248.     j    $L25
  249. $L27:
  250.     lw    $3,80($fp)
  251.     lw    $2,8($3)
  252.     lw    $3,36($fp)
  253.     lhu    $4,0($3)
  254.     sh    $4,0($2)
  255.     j    $L25
  256. $L28:
  257.     lw    $3,80($fp)
  258.     lw    $2,8($3)
  259.     lw    $3,36($fp)
  260.     lw    $4,0($3)
  261.     sw    $4,0($2)
  262.     j    $L25
  263. $L29:
  264.     lw    $3,80($fp)
  265.     lw    $2,8($3)
  266.     lw    $3,36($fp)
  267.     lw    $4,0($3)
  268.     sw    $4,0($2)
  269.     lw    $2,80($fp)
  270.     lw    $3,8($2)
  271.     addu    $2,$3,4
  272.     lw    $4,36($fp)
  273.     addu    $3,$4,4
  274.     lw    $4,0($3)
  275.     sw    $4,0($2)
  276.     j    $L25
  277. $L30:
  278.     lw    $2,80($fp)
  279.     lw    $3,16($2)
  280.     addu    $2,$3,3
  281.     srl    $3,$2,2
  282.     sw    $3,40($fp)
  283. $L31:
  284.     lw    $3,40($fp)
  285.     addu    $2,$3,-1
  286.     move    $3,$2
  287.     sw    $3,40($fp)
  288.     bgez    $3,$L33
  289.     j    $L32
  290. $L33:
  291.     lw    $2,80($fp)
  292.     lw    $3,40($fp)
  293.     move    $4,$3
  294.     sll    $3,$4,2
  295.     lw    $4,8($2)
  296.     addu    $2,$3,$4
  297.     lw    $3,40($fp)
  298.     move    $4,$3
  299.     sll    $3,$4,2
  300.     lw    $4,36($fp)
  301.     addu    $3,$3,$4
  302.     lw    $4,0($3)
  303.     sw    $4,0($2)
  304.     j    $L31
  305. $L32:
  306.     j    $L25
  307. $L25:
  308.     j    $L36
  309. $L24:
  310.     lw    $2,80($fp)
  311.     lw    $3,4($2)
  312.     andi    $2,$3,0x0002
  313.     beq    $2,$0,$L37
  314.     lw    $3,80($fp)
  315.     lw    $2,16($3)
  316.     li    $3,0x00000002        # 2
  317.     beq    $2,$3,$L40
  318.     sltu    $3,$2,3
  319.     beq    $3,$0,$L44
  320.     li    $3,0x00000001        # 1
  321.     beq    $2,$3,$L39
  322.     j    $L42
  323. $L44:
  324.     li    $3,0x00000004        # 4
  325.     beq    $2,$3,$L41
  326.     j    $L42
  327. $L39:
  328.     lw    $2,80($fp)
  329.     lw    $3,8($2)
  330.     lbu    $2,39($fp)
  331.     sb    $2,0($3)
  332.     j    $L38
  333. $L40:
  334.     lw    $2,80($fp)
  335.     lw    $3,8($2)
  336.     lhu    $2,38($fp)
  337.     sh    $2,0($3)
  338.     j    $L38
  339. $L41:
  340.     lw    $2,80($fp)
  341.     lw    $3,8($2)
  342.     lw    $2,36($fp)
  343.     sw    $2,0($3)
  344.     j    $L38
  345. $L42:
  346.     j    $L38
  347. $L38:
  348. $L37:
  349. $L36:
  350.     j    $L8
  351. $L45:
  352.     j    $L8
  353. $L8:
  354.     move    $2,$0
  355.     j    $L1
  356. $L1:
  357.     move    $sp,$fp            # sp not trusted here
  358.     lw    $31,72($sp)
  359.     lw    $fp,68($sp)
  360.     addu    $sp,$sp,80
  361.     j    $31
  362.     .end    __builtin_avcall
  363.