### compiled by Neal Wagner on
#     Fri Dec 12 16:44:44 2014
main:   move    $s7, $ra
        la      $s1, M # data addr
# Print your name
        li      $v0, 4
        la      $a0, Name
        syscall
### Compiled code starts here
# M[36] = M[0] - M[4]
        l.d     $f2, 0($s1)
        l.d     $f4, 32($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 288($s1)
# M[10] = M[36]
        l.d     $f2, 288($s1)
        s.d     $f2, 80($s1)
# Output Blank
        li      $v0, 4
        la      $a0, Blank
        syscall
# M[11] = M[7]
        l.d     $f2, 56($s1)
        s.d     $f2, 88($s1)
# Output Blank
        li      $v0, 4
        la      $a0, Blank
        syscall
# M[37] = M[0] - M[10]
        l.d     $f2, 0($s1)
        l.d     $f4, 80($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 296($s1)
# M[38] = M[37] + M[11]
        l.d     $f2, 296($s1)
        l.d     $f4, 88($s1)
        add.d   $f6, $f2, $f4
        s.d     $f6, 304($s1)
# Output M[38]
        li      $v0, 3
        l.d     $f12, 304($s1)
        syscall
# Output Blank
        li      $v0, 4
        la      $a0, Blank
        syscall
# M[39] = M[10] - M[11]
        l.d     $f2, 80($s1)
        l.d     $f4, 88($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 312($s1)
# Output M[39]
        li      $v0, 3
        l.d     $f12, 312($s1)
        syscall
# Output Blank
        li      $v0, 4
        la      $a0, Blank
        syscall
# M[40] = M[0] - M[11]
        l.d     $f2, 0($s1)
        l.d     $f4, 88($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 320($s1)
# M[41] = M[40] + M[10]
        l.d     $f2, 320($s1)
        l.d     $f4, 80($s1)
        add.d   $f6, $f2, $f4
        s.d     $f6, 328($s1)
# M[42] = M[0] - M[41]
        l.d     $f2, 0($s1)
        l.d     $f4, 328($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 336($s1)
# Output M[42]
        li      $v0, 3
        l.d     $f12, 336($s1)
        syscall
# Output Blank
        li      $v0, 4
        la      $a0, Blank
        syscall
# M[43] = M[0] - M[4]
        l.d     $f2, 0($s1)
        l.d     $f4, 32($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 344($s1)
# M[44] = M[0] - M[3]
        l.d     $f2, 0($s1)
        l.d     $f4, 24($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 352($s1)
# M[45] = M[43] - M[44]
        l.d     $f2, 344($s1)
        l.d     $f4, 352($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 360($s1)
# Output M[45]
        li      $v0, 3
        l.d     $f12, 360($s1)
        syscall
# Output Blank
        li      $v0, 4
        la      $a0, Blank
        syscall
# M[46] = M[10] - M[11]
        l.d     $f2, 80($s1)
        l.d     $f4, 88($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 368($s1)
# M[47] = M[0] - M[46]
        l.d     $f2, 0($s1)
        l.d     $f4, 368($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 376($s1)
# M[48] = M[0] - M[11]
        l.d     $f2, 0($s1)
        l.d     $f4, 88($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 384($s1)
# M[49] = M[47] - M[48]
        l.d     $f2, 376($s1)
        l.d     $f4, 384($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 392($s1)
# M[50] = M[0] - M[49]
        l.d     $f2, 0($s1)
        l.d     $f4, 392($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 400($s1)
# Output M[50]
        li      $v0, 3
        l.d     $f12, 400($s1)
        syscall
# Output Blank
        li      $v0, 4
        la      $a0, Blank
        syscall
# M[51] = M[0] - M[10]
        l.d     $f2, 0($s1)
        l.d     $f4, 80($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 408($s1)
# M[52] = M[51] - M[11]
        l.d     $f2, 408($s1)
        l.d     $f4, 88($s1)
        sub.d   $f6, $f2, $f4
        s.d     $f6, 416($s1)
# Output M[52]
        li      $v0, 3
        l.d     $f12, 416($s1)
        syscall
# Output Blank
        li      $v0, 4
        la      $a0, Blank
        syscall
# Output NewL
        li      $v0, 4
        la      $a0, NewL
        syscall
# Stuff at end
        move    $ra, $s7
        jr      $ra  # ret to sys
# data declarations
        .data
        .align  3
M:      .double 0.,1.,2.,3.,4.,5.
        .double 6.,7.,8.,9. # cons
        .space  208  # a to z
        .space  1000 # 125 temps
Blank:  .asciiz " "
NewL:   .asciiz "\n"
Tab:    .asciiz "\t"
Name:   .asciiz "Executed by Neal Wagner\n"
### tiny source program:
# # test_unary.t: Test unary + and -
# 
# a = -4; < B;
# b = 7; < B;
# < -a + b;  < B; # 11
# < --a - b;  < B; # -11
# < -(-b + a);  < B; # 11
# < +-+4 -+-3;   < B; # -1
# < - ( - ( --a -+b) --b);   < B; # -18
# < --++---a--+++---b;  < B; # -3
# < N; $