1878cc677SRichard Henderson# SPDX-License-Identifier: LGPL-2.0+ 2878cc677SRichard Henderson# 3878cc677SRichard Henderson# Sparc instruction decode definitions. 4878cc677SRichard Henderson# Copyright (c) 2023 Richard Henderson <rth@twiddle.net> 5878cc677SRichard Henderson 66d2a0768SRichard Henderson## 76d2a0768SRichard Henderson## Major Opcodes 00 and 01 -- branches, call, and sethi. 86d2a0768SRichard Henderson## 96d2a0768SRichard Henderson 10276567aaSRichard Henderson&bcc i a cond cc 11276567aaSRichard HendersonBPcc 00 a:1 cond:4 001 cc:1 0 - i:s19 &bcc 12276567aaSRichard HendersonBicc 00 a:1 cond:4 010 i:s22 &bcc cc=0 1345196ea4SRichard HendersonFBPfcc 00 a:1 cond:4 101 cc:2 - i:s19 &bcc 1445196ea4SRichard HendersonFBfcc 00 a:1 cond:4 110 i:s22 &bcc cc=0 15276567aaSRichard Henderson 16ab9ffe98SRichard Henderson%d16 20:s2 0:14 17ab9ffe98SRichard HendersonBPr 00 a:1 0 cond:3 011 .. - rs1:5 .............. i=%d16 18ab9ffe98SRichard Henderson 1945196ea4SRichard HendersonNCP 00 - ---- 111 ---------------------- # CBcc 2045196ea4SRichard Henderson 216d2a0768SRichard HendersonSETHI 00 rd:5 100 i:22 226d2a0768SRichard Henderson 2323ada1b1SRichard HendersonCALL 01 i:s30 2430376636SRichard Henderson 250faef01bSRichard Henderson## 260faef01bSRichard Henderson## Major Opcode 10 -- integer, floating-point, vis, and system insns. 270faef01bSRichard Henderson## 280faef01bSRichard Henderson 290bba7572SRichard Henderson%dfp_rd 25:5 !function=extract_dfpreg 300bba7572SRichard Henderson%dfp_rs1 14:5 !function=extract_dfpreg 310bba7572SRichard Henderson%dfp_rs2 0:5 !function=extract_dfpreg 324fd71d19SRichard Henderson%dfp_rs3 9:5 !function=extract_dfpreg 330bba7572SRichard Henderson 340bba7572SRichard Henderson%qfp_rd 25:5 !function=extract_qfpreg 350bba7572SRichard Henderson%qfp_rs1 14:5 !function=extract_qfpreg 360bba7572SRichard Henderson%qfp_rs2 0:5 !function=extract_qfpreg 370bba7572SRichard Henderson 380faef01bSRichard Henderson&r_r_ri rd rs1 rs2_or_imm imm:bool 390faef01bSRichard Henderson@n_r_ri .. ..... ...... rs1:5 imm:1 rs2_or_imm:s13 &r_r_ri rd=0 4086b82fe0SRichard Henderson@r_r_ri .. rd:5 ...... rs1:5 imm:1 rs2_or_imm:s13 &r_r_ri 410faef01bSRichard Henderson 42428881deSRichard Henderson&r_r_ri_cc rd rs1 rs2_or_imm imm:bool cc:bool 43428881deSRichard Henderson@r_r_ri_cc .. rd:5 . cc:1 .... rs1:5 imm:1 rs2_or_imm:s13 &r_r_ri_cc 4422188d7dSRichard Henderson@r_r_ri_cc0 .. rd:5 ...... rs1:5 imm:1 rs2_or_imm:s13 &r_r_ri_cc cc=0 45a9aba13dSRichard Henderson@r_r_ri_cc1 .. rd:5 ...... rs1:5 imm:1 rs2_or_imm:s13 &r_r_ri_cc cc=1 46428881deSRichard Henderson 47b88ce6f2SRichard Henderson&r_r_r rd rs1 rs2 48b88ce6f2SRichard Henderson@r_r_r .. rd:5 ...... rs1:5 . ........ rs2:5 &r_r_r 490bba7572SRichard Henderson@d_r_r .. ..... ...... rs1:5 . ........ rs2:5 \ 500bba7572SRichard Henderson &r_r_r rd=%dfp_rd 510bba7572SRichard Henderson@r_d_d .. rd:5 ...... ..... . ........ ..... \ 520bba7572SRichard Henderson &r_r_r rs1=%dfp_rs1 rs2=%dfp_rs2 530bba7572SRichard Henderson@d_r_d .. ..... ...... rs1:5 . ........ ..... \ 540bba7572SRichard Henderson &r_r_r rd=%dfp_rd rs2=%dfp_rs2 550bba7572SRichard Henderson@d_d_d .. ..... ...... ..... . ........ ..... \ 560bba7572SRichard Henderson &r_r_r rd=%dfp_rd rs1=%dfp_rs1 rs2=%dfp_rs2 570bba7572SRichard Henderson@q_q_q .. ..... ...... ..... . ........ ..... \ 580bba7572SRichard Henderson &r_r_r rd=%qfp_rd rs1=%qfp_rs1 rs2=%qfp_rs2 590bba7572SRichard Henderson@q_d_d .. ..... ...... ..... . ........ ..... \ 600bba7572SRichard Henderson &r_r_r rd=%qfp_rd rs1=%dfp_rs1 rs2=%dfp_rs2 610bba7572SRichard Henderson 627f10b52fSRichard Henderson@r_r_r_swap .. rd:5 ...... rs2:5 . ........ rs1:5 &r_r_r 630bba7572SRichard Henderson@d_d_d_swap .. ..... ...... ..... . ........ ..... \ 640bba7572SRichard Henderson &r_r_r rd=%dfp_rd rs1=%dfp_rs2 rs2=%dfp_rs1 65b88ce6f2SRichard Henderson 66baf3dbf2SRichard Henderson&r_r rd rs 67baf3dbf2SRichard Henderson@r_r1 .. rd:5 ...... rs:5 . ........ ..... &r_r 68baf3dbf2SRichard Henderson@r_r2 .. rd:5 ...... ..... . ........ rs:5 &r_r 690bba7572SRichard Henderson@r_d2 .. rd:5 ...... ..... . ........ ..... &r_r rs=%dfp_rs2 700bba7572SRichard Henderson@r_q2 .. rd:5 ...... ..... . ........ ..... &r_r rs=%qfp_rs2 710bba7572SRichard Henderson@d_r2 .. ..... ...... ..... . ........ rs:5 &r_r rd=%dfp_rd 720bba7572SRichard Henderson@q_r2 .. ..... ...... ..... . ........ rs:5 &r_r rd=%qfp_rd 730bba7572SRichard Henderson@d_d1 .. ..... ...... ..... . ........ ..... \ 740bba7572SRichard Henderson &r_r rd=%dfp_rd rs=%dfp_rs1 750bba7572SRichard Henderson@d_d2 .. ..... ...... ..... . ........ ..... \ 760bba7572SRichard Henderson &r_r rd=%dfp_rd rs=%dfp_rs2 770bba7572SRichard Henderson@d_q2 .. ..... ...... ..... . ........ ..... \ 780bba7572SRichard Henderson &r_r rd=%dfp_rd rs=%qfp_rs2 790bba7572SRichard Henderson@q_q2 .. ..... ...... ..... . ........ ..... \ 800bba7572SRichard Henderson &r_r rd=%qfp_rd rs=%qfp_rs2 810bba7572SRichard Henderson@q_d2 .. ..... ...... ..... . ........ ..... \ 820bba7572SRichard Henderson &r_r rd=%qfp_rd rs=%dfp_rs2 83baf3dbf2SRichard Henderson 844fd71d19SRichard Henderson&r_r_r_r rd rs1 rs2 rs3 854fd71d19SRichard Henderson@r_r_r_r .. rd:5 ...... rs1:5 rs3:5 .... rs2:5 &r_r_r_r 864fd71d19SRichard Henderson@d_d_d_d .. ..... ...... ..... ..... .... ..... \ 874fd71d19SRichard Henderson &r_r_r_r rd=%dfp_rd rs1=%dfp_rs1 rs2=%dfp_rs2 rs3=%dfp_rs3 884fd71d19SRichard Henderson 89af25071cSRichard Henderson{ 90af25071cSRichard Henderson [ 91af25071cSRichard Henderson STBAR 10 00000 101000 01111 0 0000000000000 92af25071cSRichard Henderson MEMBAR 10 00000 101000 01111 1 000000 cmask:3 mmask:4 93af25071cSRichard Henderson 94af25071cSRichard Henderson RDCCR 10 rd:5 101000 00010 0 0000000000000 95af25071cSRichard Henderson RDASI 10 rd:5 101000 00011 0 0000000000000 96af25071cSRichard Henderson RDTICK 10 rd:5 101000 00100 0 0000000000000 97af25071cSRichard Henderson RDPC 10 rd:5 101000 00101 0 0000000000000 98af25071cSRichard Henderson RDFPRS 10 rd:5 101000 00110 0 0000000000000 99af25071cSRichard Henderson RDASR17 10 rd:5 101000 10001 0 0000000000000 100af25071cSRichard Henderson RDGSR 10 rd:5 101000 10011 0 0000000000000 101af25071cSRichard Henderson RDSOFTINT 10 rd:5 101000 10110 0 0000000000000 102af25071cSRichard Henderson RDTICK_CMPR 10 rd:5 101000 10111 0 0000000000000 103af25071cSRichard Henderson RDSTICK 10 rd:5 101000 11000 0 0000000000000 104af25071cSRichard Henderson RDSTICK_CMPR 10 rd:5 101000 11001 0 0000000000000 105af25071cSRichard Henderson RDSTRAND_STATUS 10 rd:5 101000 11010 0 0000000000000 106af25071cSRichard Henderson ] 107af25071cSRichard Henderson # Before v8, all rs1 accepted; otherwise rs1==0. 108af25071cSRichard Henderson RDY 10 rd:5 101000 rs1:5 0 0000000000000 109af25071cSRichard Henderson} 110af25071cSRichard Henderson 111668bb9b7SRichard Henderson{ 1120faef01bSRichard Henderson [ 1130faef01bSRichard Henderson WRY 10 00000 110000 ..... . ............. @n_r_ri 1140faef01bSRichard Henderson WRCCR 10 00010 110000 ..... . ............. @n_r_ri 1150faef01bSRichard Henderson WRASI 10 00011 110000 ..... . ............. @n_r_ri 1160faef01bSRichard Henderson WRFPRS 10 00110 110000 ..... . ............. @n_r_ri 1170faef01bSRichard Henderson { 1180faef01bSRichard Henderson WRGSR 10 10011 110000 ..... . ............. @n_r_ri 1190faef01bSRichard Henderson WRPOWERDOWN 10 10011 110000 ..... . ............. @n_r_ri 1200faef01bSRichard Henderson } 1210faef01bSRichard Henderson WRSOFTINT_SET 10 10100 110000 ..... . ............. @n_r_ri 1220faef01bSRichard Henderson WRSOFTINT_CLR 10 10101 110000 ..... . ............. @n_r_ri 1230faef01bSRichard Henderson WRSOFTINT 10 10110 110000 ..... . ............. @n_r_ri 1240faef01bSRichard Henderson WRTICK_CMPR 10 10111 110000 ..... . ............. @n_r_ri 1250faef01bSRichard Henderson WRSTICK 10 11000 110000 ..... . ............. @n_r_ri 1260faef01bSRichard Henderson WRSTICK_CMPR 10 11001 110000 ..... . ............. @n_r_ri 1270faef01bSRichard Henderson ] 1280faef01bSRichard Henderson # Before v8, rs1==0 was WRY, and the rest executed as nop. 1290faef01bSRichard Henderson [ 1300faef01bSRichard Henderson NOP_v7 10 ----- 110000 ----- 0 00000000 ----- 1310faef01bSRichard Henderson NOP_v7 10 ----- 110000 ----- 1 -------- ----- 1320faef01bSRichard Henderson ] 1330faef01bSRichard Henderson} 1340faef01bSRichard Henderson 1350faef01bSRichard Henderson{ 136668bb9b7SRichard Henderson RDPSR 10 rd:5 101001 00000 0 0000000000000 137668bb9b7SRichard Henderson RDHPR_hpstate 10 rd:5 101001 00000 0 0000000000000 138668bb9b7SRichard Henderson} 139668bb9b7SRichard HendersonRDHPR_htstate 10 rd:5 101001 00001 0 0000000000000 140668bb9b7SRichard HendersonRDHPR_hintp 10 rd:5 101001 00011 0 0000000000000 141668bb9b7SRichard HendersonRDHPR_htba 10 rd:5 101001 00101 0 0000000000000 142668bb9b7SRichard HendersonRDHPR_hver 10 rd:5 101001 00110 0 0000000000000 143668bb9b7SRichard HendersonRDHPR_hstick_cmpr 10 rd:5 101001 11111 0 0000000000000 144668bb9b7SRichard Henderson 1455d617bfbSRichard Henderson{ 14625524734SRichard Henderson WRPSR 10 00000 110001 ..... . ............. @n_r_ri 14725524734SRichard Henderson SAVED 10 00000 110001 00000 0 0000000000000 14825524734SRichard Henderson} 14925524734SRichard HendersonRESTORED 10 00001 110001 00000 0 0000000000000 15025524734SRichard Henderson# UA2005 ALLCLEAN 15125524734SRichard Henderson# UA2005 OTHERW 15225524734SRichard Henderson# UA2005 NORMALW 15325524734SRichard Henderson# UA2005 INVALW 15425524734SRichard Henderson 15525524734SRichard Henderson{ 1565d617bfbSRichard Henderson RDWIM 10 rd:5 101010 00000 0 0000000000000 1575d617bfbSRichard Henderson RDPR_tpc 10 rd:5 101010 00000 0 0000000000000 1585d617bfbSRichard Henderson} 1595d617bfbSRichard HendersonRDPR_tnpc 10 rd:5 101010 00001 0 0000000000000 1605d617bfbSRichard HendersonRDPR_tstate 10 rd:5 101010 00010 0 0000000000000 1615d617bfbSRichard HendersonRDPR_tt 10 rd:5 101010 00011 0 0000000000000 1625d617bfbSRichard HendersonRDPR_tick 10 rd:5 101010 00100 0 0000000000000 1635d617bfbSRichard HendersonRDPR_tba 10 rd:5 101010 00101 0 0000000000000 1645d617bfbSRichard HendersonRDPR_pstate 10 rd:5 101010 00110 0 0000000000000 1655d617bfbSRichard HendersonRDPR_tl 10 rd:5 101010 00111 0 0000000000000 1665d617bfbSRichard HendersonRDPR_pil 10 rd:5 101010 01000 0 0000000000000 1675d617bfbSRichard HendersonRDPR_cwp 10 rd:5 101010 01001 0 0000000000000 1685d617bfbSRichard HendersonRDPR_cansave 10 rd:5 101010 01010 0 0000000000000 1695d617bfbSRichard HendersonRDPR_canrestore 10 rd:5 101010 01011 0 0000000000000 1705d617bfbSRichard HendersonRDPR_cleanwin 10 rd:5 101010 01100 0 0000000000000 1715d617bfbSRichard HendersonRDPR_otherwin 10 rd:5 101010 01101 0 0000000000000 1725d617bfbSRichard HendersonRDPR_wstate 10 rd:5 101010 01110 0 0000000000000 1735d617bfbSRichard HendersonRDPR_gl 10 rd:5 101010 10000 0 0000000000000 1745d617bfbSRichard HendersonRDPR_strand_status 10 rd:5 101010 11010 0 0000000000000 1755d617bfbSRichard HendersonRDPR_ver 10 rd:5 101010 11111 0 0000000000000 1765d617bfbSRichard Henderson 177e8325dc0SRichard Henderson{ 1789422278eSRichard Henderson WRWIM 10 00000 110010 ..... . ............. @n_r_ri 1799422278eSRichard Henderson WRPR_tpc 10 00000 110010 ..... . ............. @n_r_ri 1809422278eSRichard Henderson} 1819422278eSRichard HendersonWRPR_tnpc 10 00001 110010 ..... . ............. @n_r_ri 1829422278eSRichard HendersonWRPR_tstate 10 00010 110010 ..... . ............. @n_r_ri 1839422278eSRichard HendersonWRPR_tt 10 00011 110010 ..... . ............. @n_r_ri 1849422278eSRichard HendersonWRPR_tick 10 00100 110010 ..... . ............. @n_r_ri 1859422278eSRichard HendersonWRPR_tba 10 00101 110010 ..... . ............. @n_r_ri 1869422278eSRichard HendersonWRPR_pstate 10 00110 110010 ..... . ............. @n_r_ri 1879422278eSRichard HendersonWRPR_tl 10 00111 110010 ..... . ............. @n_r_ri 1889422278eSRichard HendersonWRPR_pil 10 01000 110010 ..... . ............. @n_r_ri 1899422278eSRichard HendersonWRPR_cwp 10 01001 110010 ..... . ............. @n_r_ri 1909422278eSRichard HendersonWRPR_cansave 10 01010 110010 ..... . ............. @n_r_ri 1919422278eSRichard HendersonWRPR_canrestore 10 01011 110010 ..... . ............. @n_r_ri 1929422278eSRichard HendersonWRPR_cleanwin 10 01100 110010 ..... . ............. @n_r_ri 1939422278eSRichard HendersonWRPR_otherwin 10 01101 110010 ..... . ............. @n_r_ri 1949422278eSRichard HendersonWRPR_wstate 10 01110 110010 ..... . ............. @n_r_ri 1959422278eSRichard HendersonWRPR_gl 10 10000 110010 ..... . ............. @n_r_ri 1969422278eSRichard HendersonWRPR_strand_status 10 11010 110010 ..... . ............. @n_r_ri 1979422278eSRichard Henderson 1989422278eSRichard Henderson{ 199e8325dc0SRichard Henderson FLUSHW 10 00000 101011 00000 0 0000000000000 200e8325dc0SRichard Henderson RDTBR 10 rd:5 101011 00000 0 0000000000000 201e8325dc0SRichard Henderson} 202e8325dc0SRichard Henderson 203bb97f2f5SRichard Henderson{ 204bb97f2f5SRichard Henderson WRTBR 10 00000 110011 ..... . ............. @n_r_ri 205bb97f2f5SRichard Henderson WRHPR_hpstate 10 00000 110011 ..... . ............. @n_r_ri 206bb97f2f5SRichard Henderson} 207bb97f2f5SRichard HendersonWRHPR_htstate 10 00001 110011 ..... . ............. @n_r_ri 208bb97f2f5SRichard HendersonWRHPR_hintp 10 00011 110011 ..... . ............. @n_r_ri 209bb97f2f5SRichard HendersonWRHPR_htba 10 00101 110011 ..... . ............. @n_r_ri 210bb97f2f5SRichard HendersonWRHPR_hstick_cmpr 10 11111 110011 ..... . ............. @n_r_ri 211bb97f2f5SRichard Henderson 212428881deSRichard HendersonADD 10 ..... 0.0000 ..... . ............. @r_r_ri_cc 213428881deSRichard HendersonAND 10 ..... 0.0001 ..... . ............. @r_r_ri_cc 214428881deSRichard HendersonOR 10 ..... 0.0010 ..... . ............. @r_r_ri_cc 215428881deSRichard HendersonXOR 10 ..... 0.0011 ..... . ............. @r_r_ri_cc 216428881deSRichard HendersonSUB 10 ..... 0.0100 ..... . ............. @r_r_ri_cc 217428881deSRichard HendersonANDN 10 ..... 0.0101 ..... . ............. @r_r_ri_cc 218428881deSRichard HendersonORN 10 ..... 0.0110 ..... . ............. @r_r_ri_cc 219428881deSRichard HendersonXORN 10 ..... 0.0111 ..... . ............. @r_r_ri_cc 220420a187dSRichard HendersonADDC 10 ..... 0.1000 ..... . ............. @r_r_ri_cc 221dfebb950SRichard HendersonSUBC 10 ..... 0.1100 ..... . ............. @r_r_ri_cc 222428881deSRichard Henderson 22322188d7dSRichard HendersonMULX 10 ..... 001001 ..... . ............. @r_r_ri_cc0 224b5372650SRichard HendersonUMUL 10 ..... 0.1010 ..... . ............. @r_r_ri_cc 225b5372650SRichard HendersonSMUL 10 ..... 0.1011 ..... . ............. @r_r_ri_cc 226a9aba13dSRichard HendersonMULScc 10 ..... 100100 ..... . ............. @r_r_ri_cc1 22722188d7dSRichard Henderson 228f3141174SRichard HendersonUDIVX 10 ..... 001101 ..... . ............. @r_r_ri 229f3141174SRichard HendersonSDIVX 10 ..... 101101 ..... . ............. @r_r_ri 2303a6b8de3SRichard HendersonUDIV 10 ..... 001110 ..... . ............. @r_r_ri 2313a6b8de3SRichard HendersonUDIVcc 10 ..... 011110 ..... . ............. @r_r_ri_cc1 232c2636853SRichard HendersonSDIV 10 ..... 0.1111 ..... . ............. @r_r_ri_cc 2334ee85ea9SRichard Henderson 234a9aba13dSRichard HendersonTADDcc 10 ..... 100000 ..... . ............. @r_r_ri_cc1 235a9aba13dSRichard HendersonTSUBcc 10 ..... 100001 ..... . ............. @r_r_ri_cc1 236a9aba13dSRichard HendersonTADDccTV 10 ..... 100010 ..... . ............. @r_r_ri_cc1 237a9aba13dSRichard HendersonTSUBccTV 10 ..... 100011 ..... . ............. @r_r_ri_cc1 238a9aba13dSRichard Henderson 2399c6ec5bcSRichard HendersonPOPC 10 rd:5 101110 00000 imm:1 rs2_or_imm:s13 \ 2409c6ec5bcSRichard Henderson &r_r_ri_cc rs1=0 cc=0 2419c6ec5bcSRichard Henderson 2425fc546eeSRichard Henderson&shiftr rd rs1 rs2 x:bool 2435fc546eeSRichard Henderson@shiftr .. rd:5 ...... rs1:5 . x:1 ....... rs2:5 &shiftr 2445fc546eeSRichard Henderson 2455fc546eeSRichard HendersonSLL_r 10 ..... 100101 ..... 0 . 0000000 ..... @shiftr 2465fc546eeSRichard HendersonSRL_r 10 ..... 100110 ..... 0 . 0000000 ..... @shiftr 2475fc546eeSRichard HendersonSRA_r 10 ..... 100111 ..... 0 . 0000000 ..... @shiftr 2485fc546eeSRichard Henderson 2495fc546eeSRichard Henderson&shifti rd rs1 i x:bool 2505fc546eeSRichard Henderson@shifti .. rd:5 ...... rs1:5 . x:1 ...... i:6 &shifti 2515fc546eeSRichard Henderson 2525fc546eeSRichard HendersonSLL_i 10 ..... 100101 ..... 1 . 000000 ...... @shifti 2535fc546eeSRichard HendersonSRL_i 10 ..... 100110 ..... 1 . 000000 ...... @shifti 2545fc546eeSRichard HendersonSRA_i 10 ..... 100111 ..... 1 . 000000 ...... @shifti 2555fc546eeSRichard Henderson 25630376636SRichard HendersonTcc_r 10 0 cond:4 111010 rs1:5 0 cc:1 0000000 rs2:5 25730376636SRichard Henderson{ 25830376636SRichard Henderson # For v7, the entire simm13 field is present, but masked to 7 bits. 25930376636SRichard Henderson # For v8, [12:7] are reserved. However, a compatibility note for 26030376636SRichard Henderson # the Tcc insn in the v9 manual suggests that the v8 reserved field 26130376636SRichard Henderson # was ignored and did not produce traps. 26230376636SRichard Henderson Tcc_i_v7 10 0 cond:4 111010 rs1:5 1 ------ i:7 26330376636SRichard Henderson 26430376636SRichard Henderson # For v9, bits [12:11] are cc1 and cc0 (and cc0 must be 0). 26530376636SRichard Henderson # Bits [10:8] are reserved and the OSA2011 manual says they must be 0. 26630376636SRichard Henderson Tcc_i_v9 10 0 cond:4 111010 rs1:5 1 cc:1 0 000 i:8 26730376636SRichard Henderson} 268fb4ed7aaSRichard Henderson 269fb4ed7aaSRichard HendersonMOVcc 10 rd:5 101100 1 cond:4 imm:1 cc:1 0 rs2_or_imm:s11 270fb4ed7aaSRichard HendersonMOVfcc 10 rd:5 101100 0 cond:4 imm:1 cc:2 rs2_or_imm:s11 271fb4ed7aaSRichard HendersonMOVR 10 rd:5 101111 rs1:5 imm:1 cond:3 rs2_or_imm:s10 272d3c7e8adSRichard Henderson 27386b82fe0SRichard HendersonJMPL 10 ..... 111000 ..... . ............. @r_r_ri 27486b82fe0SRichard Henderson{ 27586b82fe0SRichard Henderson RETT 10 00000 111001 ..... . ............. @n_r_ri 27686b82fe0SRichard Henderson RETURN 10 00000 111001 ..... . ............. @n_r_ri 27786b82fe0SRichard Henderson} 278d3825800SRichard HendersonNOP 10 00000 111011 ----- 0 00000000----- # FLUSH reg+reg 279d3825800SRichard HendersonNOP 10 00000 111011 ----- 1 ------------- # FLUSH reg+imm 280d3825800SRichard HendersonSAVE 10 ..... 111100 ..... . ............. @r_r_ri 281d3825800SRichard HendersonRESTORE 10 ..... 111101 ..... . ............. @r_r_ri 28286b82fe0SRichard Henderson 2838f75b8a4SRichard HendersonDONE 10 00000 111110 00000 0 0000000000000 2848f75b8a4SRichard HendersonRETRY 10 00001 111110 00000 0 0000000000000 2858f75b8a4SRichard Henderson 286baf3dbf2SRichard HendersonFMOVs 10 ..... 110100 00000 0 0000 0001 ..... @r_r2 2870bba7572SRichard HendersonFMOVd 10 ..... 110100 00000 0 0000 0010 ..... @d_d2 2880bba7572SRichard HendersonFMOVq 10 ..... 110100 00000 0 0000 0011 ..... @q_q2 289baf3dbf2SRichard HendersonFNEGs 10 ..... 110100 00000 0 0000 0101 ..... @r_r2 2900bba7572SRichard HendersonFNEGd 10 ..... 110100 00000 0 0000 0110 ..... @d_d2 2910bba7572SRichard HendersonFNEGq 10 ..... 110100 00000 0 0000 0111 ..... @q_q2 292baf3dbf2SRichard HendersonFABSs 10 ..... 110100 00000 0 0000 1001 ..... @r_r2 2930bba7572SRichard HendersonFABSd 10 ..... 110100 00000 0 0000 1010 ..... @d_d2 2940bba7572SRichard HendersonFABSq 10 ..... 110100 00000 0 0000 1011 ..... @q_q2 295119cb94fSRichard HendersonFSQRTs 10 ..... 110100 00000 0 0010 1001 ..... @r_r2 2960bba7572SRichard HendersonFSQRTd 10 ..... 110100 00000 0 0010 1010 ..... @d_d2 2970bba7572SRichard HendersonFSQRTq 10 ..... 110100 00000 0 0010 1011 ..... @q_q2 298c1514961SRichard HendersonFADDs 10 ..... 110100 ..... 0 0100 0001 ..... @r_r_r 2990bba7572SRichard HendersonFADDd 10 ..... 110100 ..... 0 0100 0010 ..... @d_d_d 3000bba7572SRichard HendersonFADDq 10 ..... 110100 ..... 0 0100 0011 ..... @q_q_q 301c1514961SRichard HendersonFSUBs 10 ..... 110100 ..... 0 0100 0101 ..... @r_r_r 3020bba7572SRichard HendersonFSUBd 10 ..... 110100 ..... 0 0100 0110 ..... @d_d_d 3030bba7572SRichard HendersonFSUBq 10 ..... 110100 ..... 0 0100 0111 ..... @q_q_q 304c1514961SRichard HendersonFMULs 10 ..... 110100 ..... 0 0100 1001 ..... @r_r_r 3050bba7572SRichard HendersonFMULd 10 ..... 110100 ..... 0 0100 1010 ..... @d_d_d 3060bba7572SRichard HendersonFMULq 10 ..... 110100 ..... 0 0100 1011 ..... @q_q_q 307c1514961SRichard HendersonFDIVs 10 ..... 110100 ..... 0 0100 1101 ..... @r_r_r 3080bba7572SRichard HendersonFDIVd 10 ..... 110100 ..... 0 0100 1110 ..... @d_d_d 3090bba7572SRichard HendersonFDIVq 10 ..... 110100 ..... 0 0100 1111 ..... @q_q_q 3100bba7572SRichard HendersonFsMULd 10 ..... 110100 ..... 0 0110 1001 ..... @d_r_r 3110bba7572SRichard HendersonFdMULq 10 ..... 110100 ..... 0 0110 1110 ..... @q_d_d 312199d43efSRichard HendersonFsTOx 10 ..... 110100 00000 0 1000 0001 ..... @r_r2 3130bba7572SRichard HendersonFdTOx 10 ..... 110100 00000 0 1000 0010 ..... @r_d2 3140bba7572SRichard HendersonFqTOx 10 ..... 110100 00000 0 1000 0011 ..... @r_q2 3158c94bcd8SRichard HendersonFxTOs 10 ..... 110100 00000 0 1000 0100 ..... @r_r2 3160bba7572SRichard HendersonFxTOd 10 ..... 110100 00000 0 1000 1000 ..... @d_r2 3170bba7572SRichard HendersonFxTOq 10 ..... 110100 00000 0 1000 1100 ..... @q_r2 318119cb94fSRichard HendersonFiTOs 10 ..... 110100 00000 0 1100 0100 ..... @r_r2 3190bba7572SRichard HendersonFdTOs 10 ..... 110100 00000 0 1100 0110 ..... @r_d2 3200bba7572SRichard HendersonFqTOs 10 ..... 110100 00000 0 1100 0111 ..... @r_q2 3210bba7572SRichard HendersonFiTOd 10 ..... 110100 00000 0 1100 1000 ..... @d_r2 3220bba7572SRichard HendersonFsTOd 10 ..... 110100 00000 0 1100 1001 ..... @d_r2 3230bba7572SRichard HendersonFqTOd 10 ..... 110100 00000 0 1100 1011 ..... @d_q2 3240bba7572SRichard HendersonFiTOq 10 ..... 110100 00000 0 1100 1100 ..... @q_r2 3250bba7572SRichard HendersonFsTOq 10 ..... 110100 00000 0 1100 1101 ..... @q_r2 3260bba7572SRichard HendersonFdTOq 10 ..... 110100 00000 0 1100 1110 ..... @q_d2 327119cb94fSRichard HendersonFsTOi 10 ..... 110100 00000 0 1101 0001 ..... @r_r2 3280bba7572SRichard HendersonFdTOi 10 ..... 110100 00000 0 1101 0010 ..... @r_d2 3290bba7572SRichard HendersonFqTOi 10 ..... 110100 00000 0 1101 0011 ..... @r_q2 330baf3dbf2SRichard Henderson 331f7ec8155SRichard HendersonFMOVscc 10 rd:5 110101 0 cond:4 1 cc:1 0 000001 rs2:5 3320bba7572SRichard HendersonFMOVdcc 10 ..... 110101 0 cond:4 1 cc:1 0 000010 ..... \ 3330bba7572SRichard Henderson rd=%dfp_rd rs2=%dfp_rs2 3340bba7572SRichard HendersonFMOVqcc 10 ..... 110101 0 cond:4 1 cc:1 0 000011 ..... \ 3350bba7572SRichard Henderson rd=%qfp_rd rs2=%qfp_rs2 336f7ec8155SRichard Henderson 337f7ec8155SRichard HendersonFMOVsfcc 10 rd:5 110101 0 cond:4 0 cc:2 000001 rs2:5 3380bba7572SRichard HendersonFMOVdfcc 10 ..... 110101 0 cond:4 0 cc:2 000010 ..... \ 3390bba7572SRichard Henderson rd=%dfp_rd rs2=%dfp_rs2 3400bba7572SRichard HendersonFMOVqfcc 10 ..... 110101 0 cond:4 0 cc:2 000011 ..... \ 3410bba7572SRichard Henderson rd=%qfp_rd rs2=%qfp_rs2 342f7ec8155SRichard Henderson 343f7ec8155SRichard HendersonFMOVRs 10 rd:5 110101 rs1:5 0 cond:3 00101 rs2:5 3440bba7572SRichard HendersonFMOVRd 10 ..... 110101 rs1:5 0 cond:3 00110 ..... \ 3450bba7572SRichard Henderson rd=%dfp_rd rs2=%dfp_rs2 3460bba7572SRichard HendersonFMOVRq 10 ..... 110101 rs1:5 0 cond:3 00111 ..... \ 3470bba7572SRichard Henderson rd=%qfp_rd rs2=%qfp_rs2 348f7ec8155SRichard Henderson 34940f9ad21SRichard HendersonFCMPs 10 000 cc:2 110101 rs1:5 0 0101 0001 rs2:5 3500bba7572SRichard HendersonFCMPd 10 000 cc:2 110101 ..... 0 0101 0010 ..... \ 3510bba7572SRichard Henderson rs1=%dfp_rs1 rs2=%dfp_rs2 3520bba7572SRichard HendersonFCMPq 10 000 cc:2 110101 ..... 0 0101 0011 ..... \ 3530bba7572SRichard Henderson rs1=%qfp_rs1 rs2=%qfp_rs2 35440f9ad21SRichard HendersonFCMPEs 10 000 cc:2 110101 rs1:5 0 0101 0101 rs2:5 3550bba7572SRichard HendersonFCMPEd 10 000 cc:2 110101 ..... 0 0101 0110 ..... \ 3560bba7572SRichard Henderson rs1=%dfp_rs1 rs2=%dfp_rs2 3570bba7572SRichard HendersonFCMPEq 10 000 cc:2 110101 ..... 0 0101 0111 ..... \ 3580bba7572SRichard Henderson rs1=%qfp_rs1 rs2=%qfp_rs2 35940f9ad21SRichard Henderson 360b88ce6f2SRichard Henderson{ 361b88ce6f2SRichard Henderson [ 362b88ce6f2SRichard Henderson EDGE8cc 10 ..... 110110 ..... 0 0000 0000 ..... @r_r_r 363b88ce6f2SRichard Henderson EDGE8N 10 ..... 110110 ..... 0 0000 0001 ..... @r_r_r 364b88ce6f2SRichard Henderson EDGE8Lcc 10 ..... 110110 ..... 0 0000 0010 ..... @r_r_r 365b88ce6f2SRichard Henderson EDGE8LN 10 ..... 110110 ..... 0 0000 0011 ..... @r_r_r 366b88ce6f2SRichard Henderson EDGE16cc 10 ..... 110110 ..... 0 0000 0100 ..... @r_r_r 367b88ce6f2SRichard Henderson EDGE16N 10 ..... 110110 ..... 0 0000 0101 ..... @r_r_r 368b88ce6f2SRichard Henderson EDGE16Lcc 10 ..... 110110 ..... 0 0000 0110 ..... @r_r_r 369b88ce6f2SRichard Henderson EDGE16LN 10 ..... 110110 ..... 0 0000 0111 ..... @r_r_r 370b88ce6f2SRichard Henderson EDGE32cc 10 ..... 110110 ..... 0 0000 1000 ..... @r_r_r 371b88ce6f2SRichard Henderson EDGE32N 10 ..... 110110 ..... 0 0000 1001 ..... @r_r_r 372b88ce6f2SRichard Henderson EDGE32Lcc 10 ..... 110110 ..... 0 0000 1010 ..... @r_r_r 373b88ce6f2SRichard Henderson EDGE32LN 10 ..... 110110 ..... 0 0000 1011 ..... @r_r_r 37445bfed3bSRichard Henderson 37545bfed3bSRichard Henderson ARRAY8 10 ..... 110110 ..... 0 0001 0000 ..... @r_r_r 37645bfed3bSRichard Henderson ARRAY16 10 ..... 110110 ..... 0 0001 0010 ..... @r_r_r 37745bfed3bSRichard Henderson ARRAY32 10 ..... 110110 ..... 0 0001 0100 ..... @r_r_r 3789e20ca94SRichard Henderson 379015fc6fcSRichard Henderson ADDXC 10 ..... 110110 ..... 0 0001 0001 ..... @r_r_r 380015fc6fcSRichard Henderson ADDXCcc 10 ..... 110110 ..... 0 0001 0011 ..... @r_r_r 381015fc6fcSRichard Henderson 3829e20ca94SRichard Henderson ALIGNADDR 10 ..... 110110 ..... 0 0001 1000 ..... @r_r_r 3839e20ca94SRichard Henderson ALIGNADDRL 10 ..... 110110 ..... 0 0001 1010 ..... @r_r_r 38439ca3490SRichard Henderson 38539ca3490SRichard Henderson BMASK 10 ..... 110110 ..... 0 0001 1001 ..... @r_r_r 386baf3dbf2SRichard Henderson 387*c973b4e8SRichard Henderson CMASK8 10 00000 110110 00000 0 0001 1011 rs2:5 388*c973b4e8SRichard Henderson CMASK16 10 00000 110110 00000 0 0001 1101 rs2:5 389*c973b4e8SRichard Henderson CMASK32 10 00000 110110 00000 0 0001 1111 rs2:5 390*c973b4e8SRichard Henderson 3910bba7572SRichard Henderson FPCMPLE16 10 ..... 110110 ..... 0 0010 0000 ..... @r_d_d 3920bba7572SRichard Henderson FPCMPNE16 10 ..... 110110 ..... 0 0010 0010 ..... @r_d_d 3930bba7572SRichard Henderson FPCMPGT16 10 ..... 110110 ..... 0 0010 1000 ..... @r_d_d 3940bba7572SRichard Henderson FPCMPEQ16 10 ..... 110110 ..... 0 0010 1010 ..... @r_d_d 3950bba7572SRichard Henderson FPCMPLE32 10 ..... 110110 ..... 0 0010 0100 ..... @r_d_d 3960bba7572SRichard Henderson FPCMPNE32 10 ..... 110110 ..... 0 0010 0110 ..... @r_d_d 3970bba7572SRichard Henderson FPCMPGT32 10 ..... 110110 ..... 0 0010 1100 ..... @r_d_d 3980bba7572SRichard Henderson FPCMPEQ32 10 ..... 110110 ..... 0 0010 1110 ..... @r_d_d 399e2fa6bd1SRichard Henderson 4000bba7572SRichard Henderson FMUL8x16 10 ..... 110110 ..... 0 0011 0001 ..... @d_r_d 4010bba7572SRichard Henderson FMUL8x16AU 10 ..... 110110 ..... 0 0011 0011 ..... @d_r_r 4020bba7572SRichard Henderson FMUL8x16AL 10 ..... 110110 ..... 0 0011 0101 ..... @d_r_r 4030bba7572SRichard Henderson FMUL8SUx16 10 ..... 110110 ..... 0 0011 0110 ..... @d_d_d 4040bba7572SRichard Henderson FMUL8ULx16 10 ..... 110110 ..... 0 0011 0111 ..... @d_d_d 4050bba7572SRichard Henderson FMULD8SUx16 10 ..... 110110 ..... 0 0011 1000 ..... @d_r_r 4060bba7572SRichard Henderson FMULD8ULx16 10 ..... 110110 ..... 0 0011 1001 ..... @d_r_r 4070bba7572SRichard Henderson FPACK32 10 ..... 110110 ..... 0 0011 1010 ..... @d_d_d 4080bba7572SRichard Henderson FPACK16 10 ..... 110110 00000 0 0011 1011 ..... @r_d2 4090bba7572SRichard Henderson FPACKFIX 10 ..... 110110 00000 0 0011 1101 ..... @r_d2 4104fd71d19SRichard Henderson PDIST 10 ..... 110110 ..... 0 0011 1110 ..... \ 4114fd71d19SRichard Henderson &r_r_r_r rd=%dfp_rd rs1=%dfp_rd rs2=%dfp_rs1 rs3=%dfp_rs2 412e06c9f83SRichard Henderson 4130bba7572SRichard Henderson FALIGNDATAg 10 ..... 110110 ..... 0 0100 1000 ..... @d_d_d 4140bba7572SRichard Henderson FPMERGE 10 ..... 110110 ..... 0 0100 1011 ..... @d_r_r 4150bba7572SRichard Henderson BSHUFFLE 10 ..... 110110 ..... 0 0100 1100 ..... @d_d_d 4160bba7572SRichard Henderson FEXPAND 10 ..... 110110 00000 0 0100 1101 ..... @d_r2 417e06c9f83SRichard Henderson 4180bba7572SRichard Henderson FSRCd 10 ..... 110110 ..... 0 0111 0100 00000 @d_d1 # FSRC1d 419baf3dbf2SRichard Henderson FSRCs 10 ..... 110110 ..... 0 0111 0101 00000 @r_r1 # FSRC1s 4200bba7572SRichard Henderson FSRCd 10 ..... 110110 00000 0 0111 1000 ..... @d_d2 # FSRC2d 421baf3dbf2SRichard Henderson FSRCs 10 ..... 110110 00000 0 0111 1001 ..... @r_r2 # FSRC2s 4220bba7572SRichard Henderson FNOTd 10 ..... 110110 ..... 0 0110 1010 00000 @d_d1 # FNOT1d 423baf3dbf2SRichard Henderson FNOTs 10 ..... 110110 ..... 0 0110 1011 00000 @r_r1 # FNOT1s 4240bba7572SRichard Henderson FNOTd 10 ..... 110110 00000 0 0110 0110 ..... @d_d2 # FNOT2d 425baf3dbf2SRichard Henderson FNOTs 10 ..... 110110 00000 0 0110 0111 ..... @r_r2 # FNOT2s 4267f10b52fSRichard Henderson 4270bba7572SRichard Henderson FPADD16 10 ..... 110110 ..... 0 0101 0000 ..... @d_d_d 4287f10b52fSRichard Henderson FPADD16s 10 ..... 110110 ..... 0 0101 0001 ..... @r_r_r 4290bba7572SRichard Henderson FPADD32 10 ..... 110110 ..... 0 0101 0010 ..... @d_d_d 4307f10b52fSRichard Henderson FPADD32s 10 ..... 110110 ..... 0 0101 0011 ..... @r_r_r 4310bba7572SRichard Henderson FPSUB16 10 ..... 110110 ..... 0 0101 0100 ..... @d_d_d 4327f10b52fSRichard Henderson FPSUB16s 10 ..... 110110 ..... 0 0101 0101 ..... @r_r_r 4330bba7572SRichard Henderson FPSUB32 10 ..... 110110 ..... 0 0101 0110 ..... @d_d_d 4347f10b52fSRichard Henderson FPSUB32s 10 ..... 110110 ..... 0 0101 0111 ..... @r_r_r 435e06c9f83SRichard Henderson 4360bba7572SRichard Henderson FNORd 10 ..... 110110 ..... 0 0110 0010 ..... @d_d_d 4377f10b52fSRichard Henderson FNORs 10 ..... 110110 ..... 0 0110 0011 ..... @r_r_r 4380bba7572SRichard Henderson FANDNOTd 10 ..... 110110 ..... 0 0110 0100 ..... @d_d_d # FANDNOT2d 4397f10b52fSRichard Henderson FANDNOTs 10 ..... 110110 ..... 0 0110 0101 ..... @r_r_r # FANDNOT2s 4400bba7572SRichard Henderson FANDNOTd 10 ..... 110110 ..... 0 0110 1000 ..... @d_d_d_swap # ... 1d 4417f10b52fSRichard Henderson FANDNOTs 10 ..... 110110 ..... 0 0110 1001 ..... @r_r_r_swap # ... 1s 4420bba7572SRichard Henderson FXORd 10 ..... 110110 ..... 0 0110 1100 ..... @d_d_d 4437f10b52fSRichard Henderson FXORs 10 ..... 110110 ..... 0 0110 1101 ..... @r_r_r 4440bba7572SRichard Henderson FNANDd 10 ..... 110110 ..... 0 0110 1110 ..... @d_d_d 4457f10b52fSRichard Henderson FNANDs 10 ..... 110110 ..... 0 0110 1111 ..... @r_r_r 4460bba7572SRichard Henderson FANDd 10 ..... 110110 ..... 0 0111 0000 ..... @d_d_d 4477f10b52fSRichard Henderson FANDs 10 ..... 110110 ..... 0 0111 0001 ..... @r_r_r 4480bba7572SRichard Henderson FXNORd 10 ..... 110110 ..... 0 0111 0010 ..... @d_d_d 4497f10b52fSRichard Henderson FXNORs 10 ..... 110110 ..... 0 0111 0011 ..... @r_r_r 4500bba7572SRichard Henderson FORNOTd 10 ..... 110110 ..... 0 0111 0110 ..... @d_d_d # FORNOT2d 4517f10b52fSRichard Henderson FORNOTs 10 ..... 110110 ..... 0 0111 0111 ..... @r_r_r # FORNOT2s 4520bba7572SRichard Henderson FORNOTd 10 ..... 110110 ..... 0 0111 1010 ..... @d_d_d_swap # ... 1d 4537f10b52fSRichard Henderson FORNOTs 10 ..... 110110 ..... 0 0111 1011 ..... @r_r_r_swap # ... 1s 4540bba7572SRichard Henderson FORd 10 ..... 110110 ..... 0 0111 1100 ..... @d_d_d 4557f10b52fSRichard Henderson FORs 10 ..... 110110 ..... 0 0111 1101 ..... @r_r_r 4563a38260eSRichard Henderson 4570bba7572SRichard Henderson FZEROd 10 ..... 110110 00000 0 0110 0000 00000 rd=%dfp_rd 4583a38260eSRichard Henderson FZEROs 10 rd:5 110110 00000 0 0110 0001 00000 4590bba7572SRichard Henderson FONEd 10 ..... 110110 00000 0 0111 1110 00000 rd=%dfp_rd 4603a38260eSRichard Henderson FONEs 10 rd:5 110110 00000 0 0111 1111 00000 461b88ce6f2SRichard Henderson ] 4625458fd31SRichard Henderson NCP 10 ----- 110110 ----- --------- ----- # v8 CPop1 463b88ce6f2SRichard Henderson} 464b88ce6f2SRichard Henderson 4654fd71d19SRichard Henderson{ 4664fd71d19SRichard Henderson [ 4674fd71d19SRichard Henderson FMADDs 10 ..... 110111 ..... ..... 0001 ..... @r_r_r_r 4684fd71d19SRichard Henderson FMADDd 10 ..... 110111 ..... ..... 0010 ..... @d_d_d_d 4694fd71d19SRichard Henderson FMSUBs 10 ..... 110111 ..... ..... 0101 ..... @r_r_r_r 4704fd71d19SRichard Henderson FMSUBd 10 ..... 110111 ..... ..... 0110 ..... @d_d_d_d 4714fd71d19SRichard Henderson FNMSUBs 10 ..... 110111 ..... ..... 1001 ..... @r_r_r_r 4724fd71d19SRichard Henderson FNMSUBd 10 ..... 110111 ..... ..... 1010 ..... @d_d_d_d 4734fd71d19SRichard Henderson FNMADDs 10 ..... 110111 ..... ..... 1101 ..... @r_r_r_r 4744fd71d19SRichard Henderson FNMADDd 10 ..... 110111 ..... ..... 1110 ..... @d_d_d_d 4754fd71d19SRichard Henderson ] 4765458fd31SRichard Henderson NCP 10 ----- 110111 ----- --------- ----- # v8 CPop2 4774fd71d19SRichard Henderson} 4785458fd31SRichard Henderson 4790880d20bSRichard Henderson## 4800880d20bSRichard Henderson## Major Opcode 11 -- load and store instructions 4810880d20bSRichard Henderson## 4820880d20bSRichard Henderson 4830880d20bSRichard Henderson&r_r_ri_asi rd rs1 rs2_or_imm asi imm:bool 4840880d20bSRichard Henderson@r_r_ri_na .. rd:5 ...... rs1:5 imm:1 rs2_or_imm:s13 &r_r_ri_asi asi=-1 48506c060d9SRichard Henderson@d_r_ri_na .. ..... ...... rs1:5 imm:1 rs2_or_imm:s13 \ 48606c060d9SRichard Henderson &r_r_ri_asi rd=%dfp_rd asi=-1 48706c060d9SRichard Henderson@q_r_ri_na .. ..... ...... rs1:5 imm:1 rs2_or_imm:s13 \ 48806c060d9SRichard Henderson &r_r_ri_asi rd=%qfp_rd asi=-1 48906c060d9SRichard Henderson 49042071fc1SRichard Henderson@r_r_r_asi .. rd:5 ...... rs1:5 0 asi:8 rs2_or_imm:5 &r_r_ri_asi imm=0 49142071fc1SRichard Henderson@r_r_i_asi .. rd:5 ...... rs1:5 1 rs2_or_imm:s13 \ 49242071fc1SRichard Henderson &r_r_ri_asi imm=1 asi=-2 493287b1152SRichard Henderson@d_r_r_asi .. ..... ...... rs1:5 0 asi:8 rs2_or_imm:5 \ 494287b1152SRichard Henderson &r_r_ri_asi rd=%dfp_rd imm=0 495287b1152SRichard Henderson@d_r_i_asi .. ..... ...... rs1:5 1 rs2_or_imm:s13 \ 496287b1152SRichard Henderson &r_r_ri_asi rd=%dfp_rd imm=1 asi=-2 497287b1152SRichard Henderson@q_r_r_asi .. ..... ...... rs1:5 0 asi:8 rs2_or_imm:5 \ 498287b1152SRichard Henderson &r_r_ri_asi rd=%qfp_rd imm=0 499287b1152SRichard Henderson@q_r_i_asi .. ..... ...... rs1:5 1 rs2_or_imm:s13 \ 500287b1152SRichard Henderson &r_r_ri_asi rd=%qfp_rd imm=1 asi=-2 501d0a11d25SRichard Henderson@casa_imm .. rd:5 ...... rs1:5 1 00000000 rs2_or_imm:5 \ 502d0a11d25SRichard Henderson &r_r_ri_asi imm=1 asi=-2 5030880d20bSRichard Henderson 5040880d20bSRichard HendersonLDUW 11 ..... 000000 ..... . ............. @r_r_ri_na 5050880d20bSRichard HendersonLDUB 11 ..... 000001 ..... . ............. @r_r_ri_na 5060880d20bSRichard HendersonLDUH 11 ..... 000010 ..... . ............. @r_r_ri_na 5070880d20bSRichard HendersonLDD 11 ..... 000011 ..... . ............. @r_r_ri_na 5080880d20bSRichard HendersonLDSW 11 ..... 001000 ..... . ............. @r_r_ri_na 5090880d20bSRichard HendersonLDSB 11 ..... 001001 ..... . ............. @r_r_ri_na 5100880d20bSRichard HendersonLDSH 11 ..... 001010 ..... . ............. @r_r_ri_na 5110880d20bSRichard HendersonLDX 11 ..... 001011 ..... . ............. @r_r_ri_na 5120880d20bSRichard Henderson 5130880d20bSRichard HendersonSTW 11 ..... 000100 ..... . ............. @r_r_ri_na 5140880d20bSRichard HendersonSTB 11 ..... 000101 ..... . ............. @r_r_ri_na 5150880d20bSRichard HendersonSTH 11 ..... 000110 ..... . ............. @r_r_ri_na 5160880d20bSRichard HendersonSTD 11 ..... 000111 ..... . ............. @r_r_ri_na 5170880d20bSRichard HendersonSTX 11 ..... 001110 ..... . ............. @r_r_ri_na 5180880d20bSRichard Henderson 51942071fc1SRichard HendersonLDUW 11 ..... 010000 ..... . ............. @r_r_r_asi # LDUWA 52042071fc1SRichard HendersonLDUW 11 ..... 010000 ..... . ............. @r_r_i_asi # LDUWA 52142071fc1SRichard HendersonLDUB 11 ..... 010001 ..... . ............. @r_r_r_asi # LDUBA 52242071fc1SRichard HendersonLDUB 11 ..... 010001 ..... . ............. @r_r_i_asi # LDUBA 52342071fc1SRichard HendersonLDUH 11 ..... 010010 ..... . ............. @r_r_r_asi # LDUHA 52442071fc1SRichard HendersonLDUH 11 ..... 010010 ..... . ............. @r_r_i_asi # LDUHA 52542071fc1SRichard HendersonLDD 11 ..... 010011 ..... . ............. @r_r_r_asi # LDDA 52642071fc1SRichard HendersonLDD 11 ..... 010011 ..... . ............. @r_r_i_asi # LDDA 52742071fc1SRichard HendersonLDX 11 ..... 011011 ..... . ............. @r_r_r_asi # LDXA 52842071fc1SRichard HendersonLDX 11 ..... 011011 ..... . ............. @r_r_i_asi # LDXA 52942071fc1SRichard HendersonLDSB 11 ..... 011001 ..... . ............. @r_r_r_asi # LDSBA 53042071fc1SRichard HendersonLDSB 11 ..... 011001 ..... . ............. @r_r_i_asi # LDSBA 53142071fc1SRichard HendersonLDSH 11 ..... 011010 ..... . ............. @r_r_r_asi # LDSHA 53242071fc1SRichard HendersonLDSH 11 ..... 011010 ..... . ............. @r_r_i_asi # LDSHA 53342071fc1SRichard HendersonLDSW 11 ..... 011000 ..... . ............. @r_r_r_asi # LDSWA 53442071fc1SRichard HendersonLDSW 11 ..... 011000 ..... . ............. @r_r_i_asi # LDSWA 53542071fc1SRichard Henderson 53642071fc1SRichard HendersonSTW 11 ..... 010100 ..... . ............. @r_r_r_asi # STWA 53742071fc1SRichard HendersonSTW 11 ..... 010100 ..... . ............. @r_r_i_asi # STWA 53842071fc1SRichard HendersonSTB 11 ..... 010101 ..... . ............. @r_r_r_asi # STBA 53942071fc1SRichard HendersonSTB 11 ..... 010101 ..... . ............. @r_r_i_asi # STBA 54042071fc1SRichard HendersonSTH 11 ..... 010110 ..... . ............. @r_r_r_asi # STHA 54142071fc1SRichard HendersonSTH 11 ..... 010110 ..... . ............. @r_r_i_asi # STHA 54242071fc1SRichard HendersonSTD 11 ..... 010111 ..... . ............. @r_r_r_asi # STDA 54342071fc1SRichard HendersonSTD 11 ..... 010111 ..... . ............. @r_r_i_asi # STDA 54442071fc1SRichard HendersonSTX 11 ..... 011110 ..... . ............. @r_r_r_asi # STXA 54542071fc1SRichard HendersonSTX 11 ..... 011110 ..... . ............. @r_r_i_asi # STXA 54642071fc1SRichard Henderson 54706c060d9SRichard HendersonLDF 11 ..... 100000 ..... . ............. @r_r_ri_na 5483d3c0673SRichard HendersonLDFSR 11 00000 100001 ..... . ............. @n_r_ri 5493d3c0673SRichard HendersonLDXFSR 11 00001 100001 ..... . ............. @n_r_ri 55006c060d9SRichard HendersonLDQF 11 ..... 100010 ..... . ............. @q_r_ri_na 55106c060d9SRichard HendersonLDDF 11 ..... 100011 ..... . ............. @d_r_ri_na 55206c060d9SRichard Henderson 55306c060d9SRichard HendersonSTF 11 ..... 100100 ..... . ............. @r_r_ri_na 5543d3c0673SRichard HendersonSTFSR 11 00000 100101 ..... . ............. @n_r_ri 5553d3c0673SRichard HendersonSTXFSR 11 00001 100101 ..... . ............. @n_r_ri 55606c060d9SRichard Henderson{ 55706c060d9SRichard Henderson STQF 11 ..... 100110 ..... . ............. @q_r_ri_na 55806c060d9SRichard Henderson STDFQ 11 ----- 100110 ----- - ------------- 55906c060d9SRichard Henderson} 56006c060d9SRichard HendersonSTDF 11 ..... 100111 ..... . ............. @d_r_ri_na 56106c060d9SRichard Henderson 562cf07cd1eSRichard HendersonLDSTUB 11 ..... 001101 ..... . ............. @r_r_ri_na 563cf07cd1eSRichard HendersonLDSTUB 11 ..... 011101 ..... . ............. @r_r_r_asi # LDSTUBA 564cf07cd1eSRichard HendersonLDSTUB 11 ..... 011101 ..... . ............. @r_r_i_asi # LDSTUBA 565cf07cd1eSRichard Henderson 566dca544b9SRichard HendersonSWAP 11 ..... 001111 ..... . ............. @r_r_ri_na 567dca544b9SRichard HendersonSWAP 11 ..... 011111 ..... . ............. @r_r_r_asi # SWAPA 568dca544b9SRichard HendersonSWAP 11 ..... 011111 ..... . ............. @r_r_i_asi # SWAPA 569dca544b9SRichard Henderson 570d0a11d25SRichard HendersonCASA 11 ..... 111100 ..... . ............. @r_r_r_asi 571d0a11d25SRichard HendersonCASA 11 ..... 111100 ..... . ............. @casa_imm 572d0a11d25SRichard HendersonCASXA 11 ..... 111110 ..... . ............. @r_r_r_asi 573d0a11d25SRichard HendersonCASXA 11 ..... 111110 ..... . ............. @casa_imm 574d0a11d25SRichard Henderson 5755458fd31SRichard HendersonNOP_v9 11 ----- 101101 ----- 0 00000000 ----- # PREFETCH 5765458fd31SRichard HendersonNOP_v9 11 ----- 101101 ----- 1 ------------- # PREFETCH 5775458fd31SRichard HendersonNOP_v9 11 ----- 111101 ----- - ------------- # PREFETCHA 578d3c7e8adSRichard Henderson 579287b1152SRichard Henderson{ 580287b1152SRichard Henderson [ 581287b1152SRichard Henderson LDFA 11 ..... 110000 ..... . ............. @r_r_r_asi 582287b1152SRichard Henderson LDFA 11 ..... 110000 ..... . ............. @r_r_i_asi 583287b1152SRichard Henderson ] 584d3c7e8adSRichard Henderson NCP 11 ----- 110000 ----- --------- ----- # v8 LDC 585287b1152SRichard Henderson} 586d3c7e8adSRichard HendersonNCP 11 ----- 110001 ----- --------- ----- # v8 LDCSR 587287b1152SRichard HendersonLDQFA 11 ..... 110010 ..... . ............. @q_r_r_asi 588287b1152SRichard HendersonLDQFA 11 ..... 110010 ..... . ............. @q_r_i_asi 589287b1152SRichard Henderson{ 590287b1152SRichard Henderson [ 591287b1152SRichard Henderson LDDFA 11 ..... 110011 ..... . ............. @d_r_r_asi 592287b1152SRichard Henderson LDDFA 11 ..... 110011 ..... . ............. @d_r_i_asi 593287b1152SRichard Henderson ] 594d3c7e8adSRichard Henderson NCP 11 ----- 110011 ----- --------- ----- # v8 LDDC 595287b1152SRichard Henderson} 596287b1152SRichard Henderson 597287b1152SRichard Henderson{ 598287b1152SRichard Henderson [ 599287b1152SRichard Henderson STFA 11 ..... 110100 ..... . ............. @r_r_r_asi 600287b1152SRichard Henderson STFA 11 ..... 110100 ..... . ............. @r_r_i_asi 601287b1152SRichard Henderson ] 602d3c7e8adSRichard Henderson NCP 11 ----- 110100 ----- --------- ----- # v8 STC 603287b1152SRichard Henderson} 604d3c7e8adSRichard HendersonNCP 11 ----- 110101 ----- --------- ----- # v8 STCSR 605287b1152SRichard Henderson{ 606287b1152SRichard Henderson [ 607287b1152SRichard Henderson STQFA 11 ..... 110110 ..... . ............. @q_r_r_asi 608287b1152SRichard Henderson STQFA 11 ..... 110110 ..... . ............. @q_r_i_asi 609287b1152SRichard Henderson ] 610d3c7e8adSRichard Henderson NCP 11 ----- 110110 ----- --------- ----- # v8 STDCQ 611287b1152SRichard Henderson} 612287b1152SRichard Henderson{ 613287b1152SRichard Henderson [ 614287b1152SRichard Henderson STDFA 11 ..... 110111 ..... . ............. @d_r_r_asi 615287b1152SRichard Henderson STDFA 11 ..... 110111 ..... . ............. @d_r_i_asi 616287b1152SRichard Henderson ] 617d3c7e8adSRichard Henderson NCP 11 ----- 110111 ----- --------- ----- # v8 STDC 618287b1152SRichard Henderson} 619