📄 tt.core.s
字号:
tgei_: .asciiz "Testing TGEI\nExpect two exception messages:\n " .text li $v0 4 # syscall 4 (print_str) la $a0 tgei_ syscall li $2 8 tgei $0 4 tgei $0 0 tgei $2 1 .datatgeiu_: .asciiz "Testing TGEIU\nExpect two exception messages:\n " .text li $v0 4 # syscall 4 (print_str) la $a0 tgeiu_ syscall li $2 -4 tgeiu $0 4 tgeiu $0 0 tgeiu $2 1 .datatgeu_: .asciiz "Testing TGEU\nExpect two exception messages:\n " .text li $v0 4 # syscall 4 (print_str) la $a0 tgeu_ syscall li $2 1 li $3 -4 tgeu $2 $3 tgeu $0 $0 tgeu $3 $2 .datatlb_: .asciiz "Testing TLB operations:\n " .text li $v0 4 # syscall 4 (print_str) la $a0 tlb_ syscall tlbp tlbr tlbwi tlbr .datatlt_: .asciiz "Testing TLT\nExpect one exception message:\n " .text li $v0 4 # syscall 4 (print_str) la $a0 tlt_ syscall li $2 1 li $3 2 tlt $2 $3 tlt $0 $0 tlt $3 $2 .datatlti_: .asciiz "Testing TLTI\nExpect one exception message:\n " .text li $v0 4 # syscall 4 (print_str) la $a0 tlti_ syscall li $2 8 tlti $0 4 tlti $0 0 tlti $2 1 .datatltiu_: .asciiz "Testing TLTIU\nExpect one exception message:\n " .text li $v0 4 # syscall 4 (print_str) la $a0 tltiu_ syscall li $2 -4 tltiu $0 4 tltiu $0 0 tltiu $2 1 .datatltu_: .asciiz "Testing TLTU\nExpect one exception message:\n " .text li $v0 4 # syscall 4 (print_str) la $a0 tltu_ syscall li $2 1 li $3 -4 tltu $2 $3 tltu $0 $0 tltu $3 $2 .datatne_: .asciiz "Testing TNE\nExpect one exception message:\n " .text li $v0 4 # syscall 4 (print_str) la $a0 tne_ syscall li $2 1 tne $0 $2 tne $0 $0 .datatnei_: .asciiz "Testing TNEI\nExpect one exception message:\n " .text li $v0 4 # syscall 4 (print_str) la $a0 tnei_ syscall tnei $0 4 tnei $0 0 .dataxor_: .asciiz "Testing XOR\n" .text li $v0 4 # syscall 4 (print_str) la $a0 xor_ syscall li $2 1 li $3 -1 xor $4 $0 $0 bne $4 0 fail xor $4 $3 $3 bne $4 0 fail xor $4 $2 $3 bne $4 0xfffffffe fail .dataxori_: .asciiz "Testing XORI\n" .text li $v0 4 # syscall 4 (print_str) la $a0 xori_ syscall li $2 1 li $3 -1 xori $4 $0 0 bne $4 0 fail xori $4 $3 0xffff bne $4 0xffff0000 fail xori $4 $2 0xffff bne $4 0x0000fffe fail## Testing Floating Point Ops# .dataabs.s_:.asciiz "Testing ABS.S\n"fp_s100:.float 100.0fp_sm100:.float -100.0 .text li $v0 4 # syscall 4 (print_str) la $a0 abs.s_ syscall lw $4 fp_s100 lwc1 $f0 fp_s100 abs.s $f2 $f0 mfc1 $5 $f2 bne $4 $5 fail lwc1 $f0 fp_sm100 abs.s $f2 $f0 mfc1 $5 $f2 bne $4 $5 fail .dataabs.d_:.asciiz "Testing ABS.D\n"fp_d100:.double 100.0fp_dm100:.double -100.0 .text li $v0 4 # syscall 4 (print_str) la $a0 abs.d_ syscall lw $4 fp_d100 lw $5 fp_d100+4 lwc1 $f0 fp_d100 lwc1 $f1 fp_d100+4 abs.d $f2 $f0 mfc1 $6 $f2 mfc1 $7 $f3 bne $4 $6 fail bne $5 $7 fail lwc1 $f0 fp_dm100 lwc1 $f1 fp_dm100+4 abs.d $f2 $f0 mfc1 $6 $f2 mfc1 $7 $f3 bne $4 $6 fail bne $5 $7 fail .dataadd.s_: .asciiz "Testing ADD.S\n"fp_s0: .float 0.0fp_s1: .float 1.0 .text li $v0 4 # syscall 4 (print_str) la $a0 add.s_ syscall lw $4 fp_s0 lwc1 $f0 fp_s0 add.s $f2 $f0 $f0 mfc1 $6 $f2 bne $4 $6 fail lw $4 fp_s1 lwc1 $f0 fp_s0 lwc1 $f2 fp_s1 add.s $f4 $f0 $f2 mfc1 $6 $f4 bne $4 $6 fail lw $4 fp_s0 lwc1 $f0 fp_s1 lwc1 $f2 fp_sm1 add.s $f4 $f0 $f2 mfc1 $6 $f4 bne $4 $6 fail .dataadd.d_: .asciiz "Testing ADD.D\n"fp_d0: .double 0.0fp_d1: .double 1.0fp_dm1: .double -1.0 .text li $v0 4 # syscall 4 (print_str) la $a0 add.d_ syscall lw $4 fp_d0 lw $5 fp_d0+4 lwc1 $f0 fp_d0 lwc1 $f1 fp_d0+4 add.d $f2 $f0 $f0 mfc1 $6 $f2 mfc1 $7 $f3 bne $4 $6 fail bne $5 $7 fail lw $4 fp_d1 lw $5 fp_d1+4 lwc1 $f0 fp_d0 lwc1 $f1 fp_d0+4 lwc1 $f2 fp_d1 lwc1 $f3 fp_d1+4 add.d $f4 $f0 $f2 mfc1 $6 $f4 mfc1 $7 $f5 bne $4 $6 fail bne $5 $7 fail lw $4 fp_d0 lw $5 fp_d0+4 lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_dm1 lwc1 $f3 fp_dm1+4 add.d $f4 $f0 $f2 mfc1 $6 $f4 mfc1 $7 $f5 bne $4 $6 fail bne $5 $7 fail .databc1f_: .asciiz "Testing BC1F and BC1T\n" .text li $v0 4 # syscall 4 (print_str) la $a0 bc1f_ syscall lwc1 $f0 fp_s1 lwc1 $f2 fp_s1 lwc1 $f4 fp_s1p5 c.eq.s $f0 $f2 bc1f fail bc1t l205 j faill205: c.eq.s $f0 $f4 bc1t fail bc1f l206 j faill206:# ToDo: Check order/unordered exception in floating point comparison. .datac.eq.d_: .asciiz "Testing C.EQ.D\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.eq.d_ syscall lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_d1 lwc1 $f3 fp_d1+4 lwc1 $f4 fp_d1p5 lwc1 $f5 fp_d1p5+4 c.eq.d $f0 $f2 bc1f fail bc1t l200 j faill200: c.eq.d $f0 $f4 bc1t fail bc1f l201 j faill201: .datac.eq.s_: .asciiz "Testing C.EQ.S\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.eq.s_ syscall lwc1 $f0 fp_s1 lwc1 $f2 fp_s1 lwc1 $f4 fp_s1p5 c.eq.s $f0 $f2 bc1f fail bc1t l210 j faill210: c.eq.s $f0 $f4 bc1t fail bc1f l211 j faill211: .datac.f.d_: .asciiz "Testing C.F.D\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.f.d_ syscall lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_d1 lwc1 $f3 fp_d1+4 lwc1 $f4 fp_d1p5 lwc1 $f5 fp_d1p5+4 c.f.d $f0 $f2 bc1t fail bc1f l220 j faill220: c.f.d $f0 $f4 bc1t fail bc1f l221 j faill221: .datac.f.s_: .asciiz "Testing C.F.S\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.f.s_ syscall lwc1 $f0 fp_s1 lwc1 $f2 fp_s1 lwc1 $f4 fp_s1p5 c.f.s $f0 $f2 bc1t fail bc1f l230 j faill230: c.f.s $f0 $f4 bc1t fail bc1f l231 j faill231: .datac.le.d_: .asciiz "Testing C.LE.D\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.le.d_ syscall lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_d1p5 lwc1 $f3 fp_d1p5+4 lwc1 $f4 fp_dm2 lwc1 $f5 fp_dm2+4 c.le.d $f0 $f2 bc1f fail bc1t l240 j faill240: c.le.d $f2 $f0 bc1t fail bc1f l241 j faill241: c.le.d $f0 $f0 bc1f fail bc1t l242 j faill242: c.le.d $f4 $f0 bc1f fail bc1t l243 j faill243: .datac.le.s_: .asciiz "Testing C.LE.S\n"fp_sm2: .float -2.0 .text li $v0 4 # syscall 4 (print_str) la $a0 c.le.s_ syscall lwc1 $f0 fp_s1 lwc1 $f2 fp_s1p5 lwc1 $f4 fp_sm2 c.le.s $f0 $f2 bc1f fail bc1t l250 j faill250: c.le.s $f2 $f0 bc1t fail bc1f l251 j faill251: c.le.s $f0 $f0 bc1f fail bc1t l252 j faill252: c.le.s $f4 $f0 bc1f fail bc1t l253 j faill253: .datac.lt.d_: .asciiz "Testing C.LT.D\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.lt.d_ syscall lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_d1p5 lwc1 $f3 fp_d1p5+4 lwc1 $f4 fp_dm2 lwc1 $f5 fp_dm2+4 c.lt.d $f0 $f2 bc1f fail bc1t l260 j faill260: c.lt.d $f2 $f0 bc1t fail bc1f l261 j faill261: c.lt.d $f0 $f0 bc1t fail bc1f l262 j faill262: c.lt.d $f4 $f0 bc1f fail bc1t l263 j faill263: .datac.lt.s_: .asciiz "Testing C.LT.S\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.lt.s_ syscall lwc1 $f0 fp_s1 lwc1 $f2 fp_s1p5 lwc1 $f4 fp_sm2 c.lt.s $f0 $f2 bc1f fail bc1t l270 j faill270: c.lt.s $f2 $f0 bc1t fail bc1f l271 j faill271: c.lt.s $f0 $f0 bc1t fail bc1f l272 j faill272: c.lt.s $f4 $f0 bc1f fail bc1t l273 j faill273: .datac.nge.d_: .asciiz "Testing C.NGE.D\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.nge.d_ syscall lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_d1p5 lwc1 $f3 fp_d1p5+4 lwc1 $f4 fp_dm2 lwc1 $f5 fp_dm2+4 c.nge.d $f0 $f2 bc1f fail bc1t l280 j faill280: c.nge.d $f2 $f0 bc1t fail bc1f l281 j faill281: c.nge.d $f0 $f0 bc1t fail bc1f l282 j faill282: c.nge.d $f4 $f0 bc1f fail bc1t l283 j faill283: .datac.nge.s_: .asciiz "Testing C.NGE.S\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.nge.s_ syscall lwc1 $f0 fp_s1 lwc1 $f2 fp_s1p5 lwc1 $f4 fp_sm2 c.nge.s $f0 $f2 bc1f fail bc1t l290 j faill290: c.nge.s $f2 $f0 bc1t fail bc1f l291 j faill291: c.nge.s $f0 $f0 bc1t fail bc1f l292 j faill292: c.nge.s $f4 $f0 bc1f fail bc1t l293 j faill293: .datac.ngle.d_: .asciiz "Testing C.NGLE.D\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.ngle.d_ syscall lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_d1 lwc1 $f3 fp_d1+4 lwc1 $f4 fp_d1p5 lwc1 $f5 fp_d1p5+4 c.ngle.d $f0 $f2 bc1t faill300: c.ngle.d $f0 $f4 bc1t faill301: .datac.ngle.s_: .asciiz "Testing C.NGLE.S\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.ngle.s_ syscall lwc1 $f0 fp_s1 lwc1 $f2 fp_s1 lwc1 $f4 fp_s1p5 c.ngle.s $f0 $f2 bc1t faill310: c.ngle.s $f0 $f4 bc1t faill311: .datac.ngl.d_: .asciiz "Testing C.NGL.D\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.ngl.d_ syscall lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_d1 lwc1 $f3 fp_d1+4 lwc1 $f4 fp_d1p5 lwc1 $f5 fp_d1p5+4 c.ngl.d $f0 $f2 bc1f fail bc1t l320 j faill320: c.ngl.d $f0 $f4 bc1t fail bc1f l321 j faill321: .datac.ngl.s_: .asciiz "Testing C.NGL.S\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.ngl.s_ syscall lwc1 $f0 fp_s1 lwc1 $f2 fp_s1 lwc1 $f4 fp_s1p5 c.ngl.s $f0 $f2 bc1f fail bc1t l330 j faill330: c.ngl.s $f0 $f4 bc1t fail bc1f l331 j faill331: .datac.ngt.d_: .asciiz "Testing C.NGT.D\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.ngt.d_ syscall lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_d1p5 lwc1 $f3 fp_d1p5+4 lwc1 $f4 fp_dm2 lwc1 $f5 fp_dm2+4 c.ngt.d $f0 $f2 bc1f fail bc1t l340 j faill340: c.ngt.d $f2 $f0 bc1t fail bc1f l341 j faill341: c.ngt.d $f0 $f0 bc1f fail bc1t l342 j faill342: c.ngt.d $f4 $f0 bc1f fail bc1t l343 j faill343: .datac.ngt.s_: .asciiz "Testing C.NGT.S\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.ngt.s_ syscall lwc1 $f0 fp_s1 lwc1 $f2 fp_s1p5 lwc1 $f4 fp_sm2 c.ngt.s $f0 $f2 bc1f fail bc1t l350 j faill350: c.ngt.s $f2 $f0 bc1t fail bc1f l351 j faill351: c.ngt.s $f0 $f0 bc1f fail bc1t l352 j faill352: c.ngt.s $f4 $f0 bc1f fail bc1t l353 j faill353: .datac.ole.d_: .asciiz "Testing C.OLE.D\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.ole.d_ syscall lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_d1p5 lwc1 $f3 fp_d1p5+4 lwc1 $f4 fp_dm2 lwc1 $f5 fp_dm2+4 c.ole.d $f0 $f2 bc1f fail bc1t l360 j faill360: c.ole.d $f2 $f0 bc1t fail bc1f l361 j faill361: c.ole.d $f0 $f0 bc1f fail bc1t l362 j faill362: c.ole.d $f4 $f0 bc1f fail bc1t l363 j faill363: .datac.ole.s_: .asciiz "Testing C.OLE.S\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.ole.s_ syscall lwc1 $f0 fp_s1 lwc1 $f2 fp_s1p5 lwc1 $f4 fp_sm2 c.ole.s $f0 $f2 bc1f fail bc1t l370 j faill370: c.ole.s $f2 $f0 bc1t fail bc1f l371 j faill371: c.ole.s $f0 $f0 bc1f fail bc1t l372 j faill372: c.ole.s $f4 $f0 bc1f fail bc1t l373 j faill373: .datac.seq.d_: .asciiz "Testing C.SEQ.D\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.seq.d_ syscall lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_d1 lwc1 $f3 fp_d1+4 lwc1 $f4 fp_d1p5 lwc1 $f5 fp_d1p5+4 c.seq.d $f0 $f2 bc1f fail bc1t l380 j faill380: c.seq.d $f0 $f4 bc1t fail bc1f l381 j faill381: .datac.seq.s_: .asciiz "Testing C.SEQ.S\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.seq.s_ syscall lwc1 $f0 fp_s1 lwc1 $f2 fp_s1 lwc1 $f4 fp_s1p5 c.seq.s $f0 $f2 bc1f fail bc1t l390 j faill390: c.seq.s $f0 $f4 bc1t fail bc1f l391 j faill391: .datac.sf.d_: .asciiz "Testing C.SF.D\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.sf.d_ syscall lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_d1 lwc1 $f3 fp_d1+4 lwc1 $f4 fp_d1p5 lwc1 $f5 fp_d1p5+4 c.sf.d $f0 $f2 bc1t faill400: c.sf.d $f0 $f4 bc1t faill401: .datac.sf.s_: .asciiz "Testing C.SF.S\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.sf.s_ syscall lwc1 $f0 fp_s1 lwc1 $f2 fp_s1 lwc1 $f4 fp_s1p5 c.sf.s $f0 $f2 bc1t faill410: c.sf.s $f0 $f4 bc1t faill411: .datac.ueq.d_: .asciiz "Testing C.UEQ.D\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.ueq.d_ syscall lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_d1 lwc1 $f3 fp_d1+4 lwc1 $f4 fp_d1p5 lwc1 $f5 fp_d1p5+4 c.ueq.d $f0 $f2 bc1f fail bc1t l420 j faill420: c.ueq.d $f0 $f4 bc1t fail bc1f l421 j faill421: .datac.ueq.s_: .asciiz "Testing C.UEQ.S\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.ueq.s_ syscall lwc1 $f0 fp_s1 lwc1 $f2 fp_s1 lwc1 $f4 fp_s1p5 c.ueq.s $f0 $f2 bc1f fail bc1t l430 j faill430: c.ueq.s $f0 $f4 bc1t fail bc1f l431 j faill431: .datac.ule.d_: .asciiz "Testing C.ULE.D\n" .text li $v0 4 # syscall 4 (print_str) la $a0 c.ule.d_ syscall lwc1 $f0 fp_d1 lwc1 $f1 fp_d1+4 lwc1 $f2 fp_d1p5 lwc1 $f3 fp_d1p5+4 lwc1 $f4 fp_dm2 lwc1 $f5 fp_dm2+4 c.ule.d $f0 $f2 bc1f fail bc1t l440 j faill440: c.ule.d $f2 $f0 bc1t fail bc1f l441 j faill441: c.ule.d $f0 $f0 bc1f fail bc1t l442 j faill442: c.ule.d $f4 $f0 bc1f fail bc1t l443 j fail
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -