| # MDMX .OB op tests. |
| # mach: mips64 sb1 |
| # as: -mabi=eabi |
| # as(mips64): -mabi=eabi -mdmx |
| # ld: -N -Ttext=0x80010000 |
| # output: *\\npass\\n |
| |
| .include "testutils.inc" |
| .include "utils-mdmx.inc" |
| |
| setup |
| |
| .set noreorder |
| |
| .ent DIAG |
| DIAG: |
| |
| enable_mdmx |
| |
| |
| ### |
| ### Non-accumulator, non-CC-using .ob format ops. |
| ### |
| ### Key: v = vector |
| ### ev = vector of single element |
| ### cv = vector of constant. |
| ### |
| |
| |
| writemsg "add.ob (v)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| add.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x7799bbddffffffff |
| |
| writemsg "add.ob (ev)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| add.ob $f10, $f8, $f9[6] |
| ck_ob $f10, 0x8899aabbccddeeff |
| |
| writemsg "add.ob (cv)" |
| ld_ob $f8, 0x1122334455667788 |
| add.ob $f10, $f8, 0x10 |
| ck_ob $f10, 0x2132435465768798 |
| |
| |
| writemsg "alni.ob" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| alni.ob $f10, $f8, $f9, 3 |
| ck_ob $f10, 0x4455667788667788 |
| |
| |
| writemsg "alnv.ob" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| li $4, 5 |
| alnv.ob $f10, $f8, $f9, $4 |
| ck_ob $f10, 0x66778866778899aa |
| |
| |
| writemsg "and.ob (v)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| and.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x0022000000224488 |
| |
| writemsg "and.ob (ev)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| and.ob $f10, $f8, $f9[4] |
| ck_ob $f10, 0x1100110011001188 |
| |
| writemsg "and.ob (cv)" |
| ld_ob $f8, 0x1122334455667788 |
| and.ob $f10, $f8, 0x1e |
| ck_ob $f10, 0x1002120414061608 |
| |
| |
| writemsg "max.ob (v)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| max.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x66778899aabbccdd |
| |
| writemsg "max.ob (ev)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| max.ob $f10, $f8, $f9[7] |
| ck_ob $f10, 0x6666666666667788 |
| |
| writemsg "max.ob (cv)" |
| ld_ob $f8, 0x1122334455667788 |
| max.ob $f10, $f8, 0x15 |
| ck_ob $f10, 0x1522334455667788 |
| |
| |
| writemsg "min.ob (v)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| min.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x1122334455667788 |
| |
| writemsg "min.ob (ev)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| min.ob $f10, $f8, $f9[7] |
| ck_ob $f10, 0x1122334455666666 |
| |
| writemsg "min.ob (cv)" |
| ld_ob $f8, 0x1122334455667788 |
| min.ob $f10, $f8, 0x15 |
| ck_ob $f10, 0x1115151515151515 |
| |
| |
| writemsg "mul.ob (v)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x0001020304050607 |
| mul.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x002266ccffffffff |
| |
| writemsg "mul.ob (ev)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x0001020304050607 |
| mul.ob $f10, $f8, $f9[4] |
| ck_ob $f10, 0x336699ccffffffff |
| |
| writemsg "mul.ob (cv)" |
| ld_ob $f8, 0x1122334455667788 |
| mul.ob $f10, $f8, 2 |
| ck_ob $f10, 0x22446688aacceeff |
| |
| |
| writemsg "nor.ob (v)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| nor.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x8888442200000022 |
| |
| writemsg "nor.ob (ev)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| nor.ob $f10, $f8, $f9[6] |
| ck_ob $f10, 0x8888888888888800 |
| |
| writemsg "nor.ob (cv)" |
| ld_ob $f8, 0x1122334455667788 |
| nor.ob $f10, $f8, 0x08 |
| ck_ob $f10, 0xe6d5c4b3a2918077 |
| |
| |
| writemsg "or.ob (v)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| or.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x7777bbddffffffdd |
| |
| writemsg "or.ob (ev)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| or.ob $f10, $f8, $f9[6] |
| ck_ob $f10, 0x77777777777777ff |
| |
| writemsg "or.ob (cv)" |
| ld_ob $f8, 0x1122334455667788 |
| or.ob $f10, $f8, 0x08 |
| ck_ob $f10, 0x192a3b4c5d6e7f88 |
| |
| |
| writemsg "shfl.mixh.ob" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| shfl.mixh.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x1166227733884499 |
| |
| |
| writemsg "shfl.mixl.ob" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| shfl.mixl.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x55aa66bb77cc88dd |
| |
| |
| writemsg "shfl.pach.ob" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| shfl.pach.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x113355776688aacc |
| |
| |
| writemsg "shfl.upsl.ob" |
| ld_ob $f8, 0x1122334455667788 |
| shfl.upsl.ob $f10, $f8, $f8 |
| ck_ob $f10, 0x005500660077ff88 |
| |
| |
| writemsg "sll.ob (v)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x0001020304050607 |
| sll.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x1144cc2050c0c000 |
| |
| writemsg "sll.ob (ev)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x0001020304050607 |
| sll.ob $f10, $f8, $f9[3] |
| ck_ob $f10, 0x1020304050607080 |
| |
| writemsg "sll.ob (cv)" |
| ld_ob $f8, 0x1122334455667788 |
| sll.ob $f10, $f8, 1 |
| ck_ob $f10, 0x22446688aaccee10 |
| |
| |
| writemsg "srl.ob (v)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x0001020304050607 |
| srl.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x11110c0805030101 |
| |
| writemsg "srl.ob (ev)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x0001020304050607 |
| srl.ob $f10, $f8, $f9[3] |
| ck_ob $f10, 0x0102030405060708 |
| |
| writemsg "srl.ob (cv)" |
| ld_ob $f8, 0x1122334455667788 |
| srl.ob $f10, $f8, 1 |
| ck_ob $f10, 0x081119222a333b44 |
| |
| |
| writemsg "sub.ob (v)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x0001020304050607 |
| sub.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x1121314151617181 |
| |
| writemsg "sub.ob (ev)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| sub.ob $f10, $f8, $f9[7] |
| ck_ob $f10, 0x0000000000001122 |
| |
| writemsg "sub.ob (cv)" |
| ld_ob $f8, 0x1122334455667788 |
| sub.ob $f10, $f8, 0x10 |
| ck_ob $f10, 0x0112233445566778 |
| |
| |
| writemsg "xor.ob (v)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| xor.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x7755bbddffddbb55 |
| |
| writemsg "xor.ob (ev)" |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| xor.ob $f10, $f8, $f9[6] |
| ck_ob $f10, 0x66554433221100ff |
| |
| writemsg "xor.ob (cv)" |
| ld_ob $f8, 0x1122334455667788 |
| xor.ob $f10, $f8, 0x08 |
| ck_ob $f10, 0x192a3b4c5d6e7f80 |
| |
| |
| ### |
| ### Accumulator .ob format ops (in order: rd/wr, math, scale/round) |
| ### |
| ### Key: v = vector |
| ### ev = vector of single element |
| ### cv = vector of constant. |
| ### |
| |
| |
| writemsg "wacl.ob / rac[hml].ob" |
| ld_ob $f8, 0x8001028304850687 |
| ld_ob $f9, 0x1011121314151617 |
| wacl.ob $f8, $f9 |
| ck_acc_ob 0xff0000ff00ff00ff, 0x8001028304850687, 0x1011121314151617 |
| |
| # Note: relies on data left in accumulator by previous test. |
| writemsg "wach.ob / rac[hml].ob" |
| ld_ob $f8, 0x2021222324252627 |
| wach.ob $f8 |
| ck_acc_ob 0x2021222324252627, 0x8001028304850687, 0x1011121314151617 |
| |
| |
| writemsg "adda.ob (v)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| adda.ob $f8, $f9 |
| ck_acc_ob 0x0001020304050607, 0x0000000000010101, 0x7799bbddff214365 |
| |
| writemsg "adda.ob (ev)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| adda.ob $f8, $f9[2] |
| ck_acc_ob 0x0001020304050607, 0x0000000001010101, 0xccddeeff10213243 |
| |
| writemsg "adda.ob (cv)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| adda.ob $f8, 0x1f |
| ck_acc_ob 0x0001020304050607, 0x0000000000000000, 0x30415263748596a7 |
| |
| |
| writemsg "addl.ob (v)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| addl.ob $f8, $f9 |
| ck_acc_ob 0x0000000000000000, 0x0000000000010101, 0x7799bbddff214365 |
| |
| writemsg "addl.ob (ev)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| addl.ob $f8, $f9[2] |
| ck_acc_ob 0x0000000000000000, 0x0000000001010101, 0xccddeeff10213243 |
| |
| writemsg "addl.ob (cv)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| addl.ob $f8, 0x1f |
| ck_acc_ob 0x0000000000000000, 0x0000000000000000, 0x30415263748596a7 |
| |
| |
| writemsg "mula.ob (v)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| mula.ob $f8, $f9 |
| ck_acc_ob 0x0001020304050607, 0x060f1b28384a5e75, 0xc6ce18a47282d468 |
| |
| writemsg "mula.ob (ev)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| mula.ob $f8, $f9[2] |
| ck_acc_ob 0x0001020304050607, 0x0c1825313e4a5663, 0x6bd641ac1782ed58 |
| |
| writemsg "mula.ob (cv)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| mula.ob $f8, 0x1f |
| ck_acc_ob 0x0001020304050607, 0x020406080a0c0e10, 0x0f1e2d3c4b5a6978 |
| |
| |
| writemsg "mull.ob (v)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| mull.ob $f8, $f9 |
| ck_acc_ob 0x0000000000000000, 0x060f1b28384a5e75, 0xc6ce18a47282d468 |
| |
| writemsg "mull.ob (ev)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| mull.ob $f8, $f9[2] |
| ck_acc_ob 0x0000000000000000, 0x0c1825313e4a5663, 0x6bd641ac1782ed58 |
| |
| writemsg "mull.ob (cv)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| mull.ob $f8, 0x1f |
| ck_acc_ob 0x0000000000000000, 0x020406080a0c0e10, 0x0f1e2d3c4b5a6978 |
| |
| |
| writemsg "muls.ob (v)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| muls.ob $f8, $f9 |
| ck_acc_ob 0xff00010203040506, 0xf9f0e4d7c7b5a18a, 0x3a32e85c8e7e2c98 |
| |
| writemsg "muls.ob (ev)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| muls.ob $f8, $f9[2] |
| ck_acc_ob 0xff00010203040506, 0xf3e7dacec1b5a99c, 0x952abf54e97e13a8 |
| |
| writemsg "muls.ob (cv)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| muls.ob $f8, 0x1f |
| ck_acc_ob 0xff00010203040506, 0xfdfbf9f7f5f3f1ef, 0xf1e2d3c4b5a69788 |
| |
| |
| writemsg "mulsl.ob (v)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| mulsl.ob $f8, $f9 |
| ck_acc_ob 0xffffffffffffffff, 0xf9f0e4d7c7b5a18a, 0x3a32e85c8e7e2c98 |
| |
| writemsg "mulsl.ob (ev)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| mulsl.ob $f8, $f9[2] |
| ck_acc_ob 0xffffffffffffffff, 0xf3e7dacec1b5a99c, 0x952abf54e97e13a8 |
| |
| writemsg "mulsl.ob (cv)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| mulsl.ob $f8, 0x1f |
| ck_acc_ob 0xffffffffffffffff, 0xfdfbf9f7f5f3f1ef, 0xf1e2d3c4b5a69788 |
| |
| |
| writemsg "suba.ob (v)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| suba.ob $f8, $f9 |
| ck_acc_ob 0xff00010203040506, 0xffffffffffffffff, 0xabababababababab |
| |
| writemsg "suba.ob (ev)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| suba.ob $f8, $f9[2] |
| ck_acc_ob 0xff00010203040506, 0xffffffffffffffff, 0x566778899aabbccd |
| |
| writemsg "suba.ob (cv)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| suba.ob $f8, 0x1f |
| ck_acc_ob 0xff01020304050607, 0xff00000000000000, 0xf203142536475869 |
| |
| |
| writemsg "subl.ob (v)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| subl.ob $f8, $f9 |
| ck_acc_ob 0xffffffffffffffff, 0xffffffffffffffff, 0xabababababababab |
| |
| writemsg "subl.ob (ev)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| ld_ob $f9, 0x66778899aabbccdd |
| subl.ob $f8, $f9[2] |
| ck_acc_ob 0xffffffffffffffff, 0xffffffffffffffff, 0x566778899aabbccd |
| |
| writemsg "subl.ob (cv)" |
| ld_acc_ob 0x0001020304050607, 0x0000000000000000, 0x0000000000000000 |
| ld_ob $f8, 0x1122334455667788 |
| subl.ob $f8, 0x1f |
| ck_acc_ob 0xff00000000000000, 0xff00000000000000, 0xf203142536475869 |
| |
| |
| writemsg "rnau.ob (v)" |
| ld_acc_ob 0x0000000000000000, 0x0000000003030303, 0x40424446f8fafcfe |
| ld_ob $f8, 0x0001020304050607 |
| rnau.ob $f9, $f8 |
| ck_ob $f9, 0x4021110940201008 |
| |
| writemsg "rnau.ob (ev)" |
| ld_acc_ob 0x0000000000000000, 0x0000000003030303, 0x40424446f8fafcfe |
| ld_ob $f8, 0x0001020304050607 |
| rnau.ob $f9, $f8[4] |
| ck_ob $f9, 0x080809097f7f8080 |
| |
| writemsg "rnau.ob (cv)" |
| ld_acc_ob 0x0000000000000000, 0x0000000003030303, 0x40424446f8fafcfe |
| rnau.ob $f9, 2 |
| ck_ob $f9, 0x10111112feffffff |
| |
| |
| writemsg "rneu.ob (v)" |
| ld_acc_ob 0x0000000000000000, 0x0000000003030303, 0x40424446f8fafcfe |
| ld_ob $f8, 0x0001020304050607 |
| rneu.ob $f9, $f8 |
| ck_ob $f9, 0x4021110940201008 |
| |
| writemsg "rneu.ob (ev)" |
| ld_acc_ob 0x0000000000000000, 0x0000000003030303, 0x40424446f8fafcfe |
| ld_ob $f8, 0x0001020304050607 |
| rneu.ob $f9, $f8[4] |
| ck_ob $f9, 0x080808097f7f8080 |
| |
| writemsg "rneu.ob (cv)" |
| ld_acc_ob 0x0000000000000000, 0x0000000003030303, 0x40424446f8fafcfe |
| rneu.ob $f9, 2 |
| ck_ob $f9, 0x10101112fefeffff |
| |
| |
| writemsg "rzu.ob (v)" |
| ld_acc_ob 0x0000000000000000, 0x0000000003030303, 0x40424446f8fafcfe |
| ld_ob $f8, 0x0001020304050607 |
| rzu.ob $f9, $f8 |
| ck_ob $f9, 0x402111083f1f0f07 |
| |
| writemsg "rzu.ob (ev)" |
| ld_acc_ob 0x0000000000000000, 0x0000000003030303, 0x40424446f8fafcfe |
| ld_ob $f8, 0x0001020304050607 |
| rzu.ob $f9, $f8[4] |
| ck_ob $f9, 0x080808087f7f7f7f |
| |
| writemsg "rzu.ob (cv)" |
| ld_acc_ob 0x0000000000000000, 0x0000000003030303, 0x40424446f8fafcfe |
| rzu.ob $f9, 2 |
| ck_ob $f9, 0x10101111fefeffff |
| |
| |
| ### |
| ### CC-using .ob format ops. |
| ### |
| ### Key: v = vector |
| ### ev = vector of single element |
| ### cv = vector of constant. |
| ### |
| |
| |
| writemsg "c.eq.ob (v)" |
| ld_ob $f8, 0x0001010202030304 |
| ld_ob $f9, 0x0101020203030404 |
| clr_fp_cc 0xff |
| c.eq.ob $f8, $f9 |
| ck_fp_cc 0x55 |
| |
| writemsg "c.eq.ob (ev)" |
| ld_ob $f8, 0x0001010202030304 |
| ld_ob $f9, 0x0101020203030404 |
| clr_fp_cc 0xff |
| c.eq.ob $f8, $f9[5] |
| ck_fp_cc 0x18 |
| |
| writemsg "c.eq.ob (cv)" |
| ld_ob $f8, 0x0001010202030304 |
| clr_fp_cc 0xff |
| c.eq.ob $f8, 0x03 |
| ck_fp_cc 0x06 |
| |
| |
| writemsg "c.le.ob (v)" |
| ld_ob $f8, 0x0001010202030304 |
| ld_ob $f9, 0x0101020203030404 |
| clr_fp_cc 0xff |
| c.le.ob $f8, $f9 |
| ck_fp_cc 0xff |
| |
| writemsg "c.le.ob (ev)" |
| ld_ob $f8, 0x0001010202030304 |
| ld_ob $f9, 0x0101020203030404 |
| clr_fp_cc 0xff |
| c.le.ob $f8, $f9[5] |
| ck_fp_cc 0xf8 |
| |
| writemsg "c.le.ob (cv)" |
| ld_ob $f8, 0x0001010202030304 |
| clr_fp_cc 0xff |
| c.le.ob $f8, 0x03 |
| ck_fp_cc 0xfe |
| |
| |
| writemsg "c.lt.ob (v)" |
| ld_ob $f8, 0x0001010202030304 |
| ld_ob $f9, 0x0101020203030404 |
| clr_fp_cc 0xff |
| c.lt.ob $f8, $f9 |
| ck_fp_cc 0xaa |
| |
| writemsg "c.lt.ob (ev)" |
| ld_ob $f8, 0x0001010202030304 |
| ld_ob $f9, 0x0101020203030404 |
| clr_fp_cc 0xff |
| c.lt.ob $f8, $f9[5] |
| ck_fp_cc 0xe0 |
| |
| writemsg "c.lt.ob (cv)" |
| ld_ob $f8, 0x0001010202030304 |
| clr_fp_cc 0xff |
| c.lt.ob $f8, 0x03 |
| ck_fp_cc 0xf8 |
| |
| |
| writemsg "pickf.ob (v)" |
| ld_ob $f8, 0x0001020304050607 |
| ld_ob $f9, 0x08090a0b0c0d0e0f |
| clrset_fp_cc 0xff, 0xaa |
| pickf.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x08010a030c050e07 |
| |
| writemsg "pickf.ob (ev)" |
| ld_ob $f8, 0x0001020304050607 |
| ld_ob $f9, 0x08090a0b0c0d0e0f |
| clrset_fp_cc 0xff, 0xaa |
| pickf.ob $f10, $f8, $f9[4] |
| ck_ob $f10, 0x0b010b030b050b07 |
| |
| writemsg "pickf.ob (cv)" |
| ld_ob $f8, 0x0001020304050607 |
| clrset_fp_cc 0xff, 0xaa |
| pickf.ob $f10, $f8, 0x10 |
| ck_ob $f10, 0x1001100310051007 |
| |
| |
| writemsg "pickt.ob (v)" |
| ld_ob $f8, 0x0001020304050607 |
| ld_ob $f9, 0x08090a0b0c0d0e0f |
| clrset_fp_cc 0xff, 0xaa |
| pickt.ob $f10, $f8, $f9 |
| ck_ob $f10, 0x0009020b040d060f |
| |
| writemsg "pickt.ob (ev)" |
| ld_ob $f8, 0x0001020304050607 |
| ld_ob $f9, 0x08090a0b0c0d0e0f |
| clrset_fp_cc 0xff, 0xaa |
| pickt.ob $f10, $f8, $f9[5] |
| ck_ob $f10, 0x000a020a040a060a |
| |
| writemsg "pickt.ob (cv)" |
| ld_ob $f8, 0x0001020304050607 |
| clrset_fp_cc 0xff, 0xaa |
| pickt.ob $f10, $f8, 0x10 |
| ck_ob $f10, 0x0010021004100610 |
| |
| |
| pass |
| |
| .end DIAG |