The simplescalar tool set, version 2.0(15)
时间:2025-03-09
时间:2025-03-09
under Contract DABT63-95-C-0127 and ARPA order no. D346. The current support for this work comes from a variety of sources, all of to which we are indebted.
CVT.W.S:Opcode:Format:Semantics:
CVT.W.D:Opcode:Format:Semantics:
C.EQ.S:Opcode:Format:Semantics:
C.EQ.D:Opcode:Format:Semantics:
C.LT.S:Opcode:Format:Semantics:
C.LT.D:Opcode:Format:Semantics:
C.LE.S:Opcode:Format:Semantics:
C.LE.D:Opcode:Format:Semantics:
SQRT.S:Opcode:Format:Semantics:
FPALIGN(FS)
SET_FPR_D(FD,(double)FPR_L(FS))
Convert single precision to integer.0x84
CVT.W.S fd,fs
FPALIGN(FD)FPALIGN(FS)
SET_FPR_L(FD, (long)FPR_F(FS))
Convert double precision to integer.0x85
CVT.W.D fd,fs
FPALIGN(FD)FPALIGN(FS)
SET_FPR_L(FD, (long)FPR_D(FS))
Test if equal, single precision.0x90
C.EQ.S fs,ft
FPALIGN(FS)FPALIGN(FT)
SET_FCC(FPR_F(FS) == FPR_F(FT))
Test if equal, double precision.0x91
C.EQ.D fs,ft
FPALIGN(FS)FPALIGN(FT)
SET_FCC(FPR_D(FS) == FPR_D(FT))
Test if less than, single precision.0x92
C.LT.S fs,ft
FPALIGN(FS)FPALIGN(FT)
SET_FCC(FPR_F(FS) < FPR_F(FT))
Test if less than, double precision.0x93
C.LT.D fs,ft
FPALIGN(FS)FPALIGN(FT)
SET_FCC(FPR_D(FS) < FPR_D(FT))
Test if less than or equal, single precision.0x94
C.LE.S fs,ft
FPALIGN(FS)FPALIGN(FT)
SET_FCC(FPR_F(FS) <= FPR_F(FT))
Test if less than or equal, double precision.0x95
C.LE.D fs,ft
FPALIGN(FS)FPALIGN(FT)
SET_FCC(FPR_D(FS) <= FPR_D(FT))
Square root, single precision.0x96
SQRT.S fd,fs
FPALIGN(FD)
SET_FPR_F(FD,sqrt((double)FPR_F(FS)))
SQRT.D:Square root, double precision.Opcode:0x97
Format:SQRT.D fd,fs
Semantics:
FPALIGN(FD)FPALIGN(FS)
SET_FPR_D(FD, sqrt(FPR_D(FS)))
A.5 Miscellaneous instructions
NOP:
No operation.Opcode:0x00Format:NOPSemantics:None
SYSCALL:System call.Opcode:0xa0
Format:SYSCALL
Semantics:See AppendixB for details
BREAK:Declare a program error.Opcode:0xa1
Format:BREAK uimm
Semantics:
Actions are simulator-dependent. Typically,an error message is printed andabort() iscalled.
LUI:
Load upper immediate.Opcode:0xa2
Format:LUI uimm
Semantics:SET_GPR(RT, UIMM << 16)
MFC1:Move from oating point to integer register le.Opcode:0xa3
Format:MFC1 rt,fs
Semantics:SET_GPR(RT, FPR_L(FS))
MTC1:Move from integer to oating point register le.Opcode:0xa5
Format:MTC1 rt,fs
Semantics:
SET_FPR_L(FS, GPR(RT))
B System call de nitions
This appendix lists all system calls supported by the simula-tors with their system call code (syscode), interface speci cation,and appropriate POSIX Unix reference. Systems calls are initi-ated with the SYSCALL instruction. Prior to execution of aSYSCALL instruction, register $v0 should be loaded with thesystem call code. The arguments of the system call interface pro-totype should be loaded into registers $a0 - $a3 in the order spec-i ed by the system call interface prototype,e.g., for:
read(int fd, char *buf, int nbyte),
0x03 is loaded into $v0,fd is loaded into $a0,buf into $a1, andnbyte into $a2.EXIT:
Exit process.
…… 此处隐藏:896字,全部文档内容请下载后查看。喜欢就下载吧 ……上一篇:农历闰月的推算
下一篇:职业技能鉴定试题(数控车)