summaryrefslogtreecommitdiff
path: root/opcodes
diff options
context:
space:
mode:
authorGravatar Andrew Waterman <waterman@s144.Millennium.Berkeley.EDU>2010-10-25 19:41:39 -0700
committerGravatar Andrew Waterman <waterman@s144.Millennium.Berkeley.EDU>2010-10-25 19:41:39 -0700
commit91615aeaf5e3f97a9a34375e911cd001c599a976 (patch)
treebce0b1cd486915bd5a77cdfd711ea3dfc916f340 /opcodes
parent02d5513802a9dac37643d3410cf250e8b8856ece (diff)
[sim,xcc,pk,opcodes] static rounding modes for FP insns
Now, you can either use the RM in the FSR or specify it in the insn. (Except for FP->int; no dynamic for that.)
Diffstat (limited to 'opcodes')
-rw-r--r--opcodes72
1 files changed, 52 insertions, 20 deletions
diff --git a/opcodes b/opcodes
index ecb066e..43d41e1 100644
--- a/opcodes
+++ b/opcodes
@@ -139,15 +139,27 @@ sgninj.d 31..25=0x6A 14..13=3 12..10=0 9..5=0x5 rdr rs1 rs2
sgninjn.d 31..25=0x6A 14..13=3 12..10=0 9..5=0x6 rdr rs1 rs2
sgnmul.d 31..25=0x6A 14..13=3 12..10=0 9..5=0x7 rdr rs1 rs2
-trunc.l.s 31..25=0x6A 14..13=0 12..10=0 9..5=0x8 24..20=0 rdr rs1
-truncu.l.s 31..25=0x6A 14..13=0 12..10=0 9..5=0x9 24..20=0 rdr rs1
-trunc.w.s 31..25=0x6A 14..13=0 12..10=0 9..5=0xA 24..20=0 rdr rs1
-truncu.w.s 31..25=0x6A 14..13=0 12..10=0 9..5=0xB 24..20=0 rdr rs1
-
-trunc.l.d 31..25=0x6A 14..13=3 12..10=0 9..5=0x8 24..20=0 rdr rs1
-truncu.l.d 31..25=0x6A 14..13=3 12..10=0 9..5=0x9 24..20=0 rdr rs1
-trunc.w.d 31..25=0x6A 14..13=3 12..10=0 9..5=0xA 24..20=0 rdr rs1
-truncu.w.d 31..25=0x6A 14..13=3 12..10=0 9..5=0xB 24..20=0 rdr rs1
+add.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0 rdr rs1 rs2 rm
+sub.s.rm 31..25=0x6A 14..13=0 10=1 9..5=1 rdr rs1 rs2 rm
+mul.s.rm 31..25=0x6A 14..13=0 10=1 9..5=2 rdr rs1 rs2 rm
+div.s.rm 31..25=0x6A 14..13=0 10=1 9..5=3 rdr rs1 rs2 rm
+sqrt.s.rm 31..25=0x6A 14..13=0 10=1 9..5=4 24..20=0 rdr rs1 rm
+
+add.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x0 rdr rs1 rs2 rm
+sub.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x1 rdr rs1 rs2 rm
+mul.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x2 rdr rs1 rs2 rm
+div.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x3 rdr rs1 rs2 rm
+sqrt.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x4 24..20=0 rdr rs1 rm
+
+cvt.l.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0x8 24..20=0 rdr rs1 rm
+cvtu.l.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0x9 24..20=0 rdr rs1 rm
+cvt.w.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0xA 24..20=0 rdr rs1 rm
+cvtu.w.s.rm 31..25=0x6A 14..13=0 10=1 9..5=0xB 24..20=0 rdr rs1 rm
+
+cvt.l.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x8 24..20=0 rdr rs1 rm
+cvtu.l.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0x9 24..20=0 rdr rs1 rm
+cvt.w.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0xA 24..20=0 rdr rs1 rm
+cvtu.w.d.rm 31..25=0x6A 14..13=3 10=1 9..5=0xB 24..20=0 rdr rs1 rm
cvt.s.l 31..25=0x6A 14..13=0 12..10=0 9..5=0xC 24..20=0 rdr rs1
cvtu.s.l 31..25=0x6A 14..13=0 12..10=0 9..5=0xD 24..20=0 rdr rs1
@@ -159,8 +171,18 @@ cvtu.d.l 31..25=0x6A 14..13=3 12..10=0 9..5=0xD 24..20=0 rdr rs1
cvt.d.w 31..25=0x6A 14..13=3 12..10=0 9..5=0xE 24..20=0 rdr rs1
cvtu.d.w 31..25=0x6A 14..13=3 12..10=0 9..5=0xF 24..20=0 rdr rs1
-cvt.s.d 31..25=0x6A 14..13=0 12..10=1 9..5=0x13 24..20=0 rdr rs1
-cvt.d.s 31..25=0x6A 14..13=3 12..10=1 9..5=0x10 24..20=0 rdr rs1
+cvt.s.l.rm 31..25=0x6A 14..13=0 10=1 9..5=0xC 24..20=0 rdr rs1 rm
+cvtu.s.l.rm 31..25=0x6A 14..13=0 10=1 9..5=0xD 24..20=0 rdr rs1 rm
+cvt.s.w.rm 31..25=0x6A 14..13=0 10=1 9..5=0xE 24..20=0 rdr rs1 rm
+cvtu.s.w.rm 31..25=0x6A 14..13=0 10=1 9..5=0xF 24..20=0 rdr rs1 rm
+
+cvt.d.l.rm 31..25=0x6A 14..13=3 10=1 9..5=0xC 24..20=0 rdr rs1 rm
+cvtu.d.l.rm 31..25=0x6A 14..13=3 10=1 9..5=0xD 24..20=0 rdr rs1 rm
+
+cvt.s.d 31..25=0x6A 14..13=0 12..10=0 9..5=0x13 24..20=0 rdr rs1
+cvt.d.s 31..25=0x6A 14..13=3 12..10=0 9..5=0x10 24..20=0 rdr rs1
+
+cvt.s.d.rm 31..25=0x6A 14..13=0 10=1 9..5=0x13 24..20=0 rdr rs1 rm
c.eq.s 31..25=0x6A 14..13=0 12..10=0 9..5=0x15 rdr rs1 rs2
c.lt.s 31..25=0x6A 14..13=0 12..10=0 9..5=0x16 rdr rs1 rs2
@@ -184,13 +206,23 @@ l.d 31..25=0x68 14..12=3 rdi rs1 imm12
s.s 31..25=0x69 14..12=2 rs2 rs1 imm12
s.d 31..25=0x69 14..12=3 rs2 rs1 imm12
-madd.s 31..25=0x6B 14..13=0 12..10=0 rdr rs1 rs2 rs3
-msub.s 31..25=0x6B 14..13=0 12..10=1 rdr rs1 rs2 rs3
-nmsub.s 31..25=0x6B 14..13=0 12..10=2 rdr rs1 rs2 rs3
-nmadd.s 31..25=0x6B 14..13=0 12..10=3 rdr rs1 rs2 rs3
-
-madd.d 31..25=0x6B 14..13=3 12..10=0 rdr rs1 rs2 rs3
-msub.d 31..25=0x6B 14..13=3 12..10=1 rdr rs1 rs2 rs3
-nmsub.d 31..25=0x6B 14..13=3 12..10=2 rdr rs1 rs2 rs3
-nmadd.d 31..25=0x6B 14..13=3 12..10=3 rdr rs1 rs2 rs3
+madd.s 31..25=0x6C 14..13=0 12..10=0 rdr rs1 rs2 rs3
+msub.s 31..25=0x6D 14..13=0 12..10=0 rdr rs1 rs2 rs3
+nmsub.s 31..25=0x6E 14..13=0 12..10=0 rdr rs1 rs2 rs3
+nmadd.s 31..25=0x6F 14..13=0 12..10=0 rdr rs1 rs2 rs3
+
+madd.d 31..25=0x6C 14..13=3 12..10=0 rdr rs1 rs2 rs3
+msub.d 31..25=0x6D 14..13=3 12..10=0 rdr rs1 rs2 rs3
+nmsub.d 31..25=0x6E 14..13=3 12..10=0 rdr rs1 rs2 rs3
+nmadd.d 31..25=0x6F 14..13=3 12..10=0 rdr rs1 rs2 rs3
+
+madd.s.rm 31..25=0x6C 14..13=0 10=1 rdr rs1 rs2 rs3 rm
+msub.s.rm 31..25=0x6D 14..13=0 10=1 rdr rs1 rs2 rs3 rm
+nmsub.s.rm 31..25=0x6E 14..13=0 10=1 rdr rs1 rs2 rs3 rm
+nmadd.s.rm 31..25=0x6F 14..13=0 10=1 rdr rs1 rs2 rs3 rm
+
+madd.d.rm 31..25=0x6C 14..13=3 10=1 rdr rs1 rs2 rs3 rm
+msub.d.rm 31..25=0x6D 14..13=3 10=1 rdr rs1 rs2 rs3 rm
+nmsub.d.rm 31..25=0x6E 14..13=3 10=1 rdr rs1 rs2 rs3 rm
+nmadd.d.rm 31..25=0x6F 14..13=3 10=1 rdr rs1 rs2 rs3 rm