added cs672 ILP lab files

git-svn-id: svn://anubis/gvsu@415 45c1a28c-8058-47b2-ae61-ca45b979098e
This commit is contained in:
josh 2009-05-30 14:39:05 +00:00
parent 4b39b69c2a
commit dc03ea0987
6 changed files with 84 additions and 0 deletions

16
cs672/ILP-1.s Normal file
View File

@ -0,0 +1,16 @@
lw r2, 4(r1) ; load item1
lw r3, 8(r1) ; load item2
lw r4, 16(r1) ; load item3
add r6, r2, r3 ; item1 + item2
lw r5, 20(r1) ; load item4
sw 0(r1), r6 ; sum1 = item1 + item2
add r7, r4, r5 ; item3 + item4
sw 12(r1), r7 ; sum2 = item3 + item4
add r8, r6, r7 ; sum1 + sum2
sw 24(r1), r8 ; total = sum1 + sum2
nop
nop
nop
nop

17
cs672/ILP-11.s Normal file
View File

@ -0,0 +1,17 @@
ld f0, 32(r1) ; get value from M into f0
ld f4, 24(r1) ; get value from M into f4
ld f6, 16(r1) ; get value from M into f6
ld f8, 8(r1) ; get value from M into f8
addd f0, f0, f2 ; add to scalar in f2, result into f0
addd f4, f4, f2 ; add to scalar in f2, result into f4
addd f6, f6, f2 ; add to scalar in f2, result into f6
addd f8, f8, f2 ; add to scalar in f2, result into f8
sd 32(r1), f0 ; store result back into M
sd 24(r1), f4 ; store result back into M
sd 16(r1), f6 ; store result back into M
sd 8(r1), f8 ; store result back into M
nop
nop
nop
nop
trap #0

12
cs672/ILP-6.s Normal file
View File

@ -0,0 +1,12 @@
addi r1, r0, #32 ; initialize loop counter
Loop:
ld f0, 0(r1) ; get value from M into f0
subi r1, r1, #8 ; decrement array pointer
addd f4, f0, f2 ; add to scalar in f2, result into f4
bnez r1, Loop ; branch if not done
sd 8(r1), f4 ; store result back into M
nop
nop
nop
nop
trap #0

22
cs672/ILP-9.s Normal file
View File

@ -0,0 +1,22 @@
addi r1, r0, #32 ; initialize loop counter
ld f0, 0(r1) ; get value from M into f0
addd f4, f0, f2 ; add to scalar in f2, result into f4
sd 0(r1), f4 ; store result back into M
subi r1, r1, #8 ; decrement array pointer
ld f0, 0(r1) ; get value from M into f0
addd f4, f0, f2 ; add to scalar in f2, result into f4
sd 0(r1), f4 ; store result back into M
subi r1, r1, #8 ; decrement array pointer
ld f0, 0(r1) ; get value from M into f0
addd f4, f0, f2 ; add to scalar in f2, result into f4
sd 0(r1), f4 ; store result back into M
subi r1, r1, #8 ; decrement array pointer
ld f0, 0(r1) ; get value from M into f0
addd f4, f0, f2 ; add to scalar in f2, result into f4
sd 0(r1), f4 ; store result back into M
subi r1, r1, #8 ; decrement array pointer
nop
nop
nop
nop
trap #0

BIN
cs672/ilp.odt Normal file

Binary file not shown.

17
cs672/lab2-13.s Normal file
View File

@ -0,0 +1,17 @@
add r4, r0, r0 ; clear R4 = 0
add r5, r0, r0 ; clear R5 = 0
addi r1, r0, 5 ; set R1 (loop counter) = 5
LOOP: subi r1, r1, 1 ; decrement R1
addi r4, r4, 2 ; R4 = R4 + 2
bnez r1, LOOP ; if (r1 != 0), goto LOOP
addi r5, r5, 10 ; R5 = R5 + 10
add r6, r4, r5 ; R6 = R4 + R5
nop
nop
nop
nop
trap #0