140f9f908SRichard Henderson# 240f9f908SRichard Henderson# HPPA instruction decode definitions. 340f9f908SRichard Henderson# 440f9f908SRichard Henderson# Copyright (c) 2018 Richard Henderson <rth@twiddle.net> 540f9f908SRichard Henderson# 640f9f908SRichard Henderson# This library is free software; you can redistribute it and/or 740f9f908SRichard Henderson# modify it under the terms of the GNU Lesser General Public 840f9f908SRichard Henderson# License as published by the Free Software Foundation; either 9d6ea4236SChetan Pant# version 2.1 of the License, or (at your option) any later version. 1040f9f908SRichard Henderson# 1140f9f908SRichard Henderson# This library is distributed in the hope that it will be useful, 1240f9f908SRichard Henderson# but WITHOUT ANY WARRANTY; without even the implied warranty of 1340f9f908SRichard Henderson# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1440f9f908SRichard Henderson# Lesser General Public License for more details. 1540f9f908SRichard Henderson# 1640f9f908SRichard Henderson# You should have received a copy of the GNU Lesser General Public 1740f9f908SRichard Henderson# License along with this library; if not, see <http://www.gnu.org/licenses/>. 1840f9f908SRichard Henderson# 1940f9f908SRichard Henderson 2040f9f908SRichard Henderson#### 21c603e14aSRichard Henderson# Field definitions 22c603e14aSRichard Henderson#### 23c603e14aSRichard Henderson 24c603e14aSRichard Henderson%assemble_sr3 13:1 14:2 25deee69a1SRichard Henderson%assemble_sr3x 13:1 14:2 !function=expand_sr3x 26c603e14aSRichard Henderson 27740038d7SRichard Henderson%assemble_11a 0:s1 4:10 !function=expand_shl3 2801afb7beSRichard Henderson%assemble_12 0:s1 2:1 3:10 !function=expand_shl2 29740038d7SRichard Henderson%assemble_12a 0:s1 3:11 !function=expand_shl2 308340f534SRichard Henderson%assemble_17 0:s1 16:5 2:1 3:10 !function=expand_shl2 318340f534SRichard Henderson%assemble_22 0:s1 16:10 2:1 3:10 !function=expand_shl2 3201afb7beSRichard Henderson 330588e061SRichard Henderson%assemble_21 0:s1 1:11 14:2 16:5 12:2 !function=expand_shl11 340588e061SRichard Henderson 350588e061SRichard Henderson%lowsign_11 0:s1 1:10 360588e061SRichard Henderson%lowsign_14 0:s1 1:13 370588e061SRichard Henderson 38e36f27efSRichard Henderson%sm_imm 16:10 !function=expand_sm_imm 39e36f27efSRichard Henderson 40740038d7SRichard Henderson%rm64 1:1 16:5 41e8777db7SRichard Henderson%rt64 6:1 0:5 42c3bad4f8SRichard Henderson%ra64 7:1 21:5 43c3bad4f8SRichard Henderson%rb64 12:1 16:5 44c3bad4f8SRichard Henderson%rc64 8:1 13:3 9:2 45c3bad4f8SRichard Henderson%rc32 13:3 9:2 46740038d7SRichard Henderson 471cd012a5SRichard Henderson%im5_0 0:s1 1:4 481cd012a5SRichard Henderson%im5_16 16:s1 17:4 4972ae4f2bSRichard Henderson%len5 0:5 !function=assemble_6 5072ae4f2bSRichard Henderson%len6_8 8:1 0:5 !function=assemble_6 5172ae4f2bSRichard Henderson%len6_12 12:1 0:5 !function=assemble_6 5272ae4f2bSRichard Henderson%cpos6_11 11:1 5:5 531cd012a5SRichard Henderson%ma_to_m 5:1 13:1 !function=ma_to_m 54740038d7SRichard Henderson%ma2_to_m 2:2 !function=ma_to_m 55740038d7SRichard Henderson%pos_to_m 0:1 !function=pos_to_m 56740038d7SRichard Henderson%neg_to_m 0:1 !function=neg_to_m 57740038d7SRichard Henderson%a_to_m 2:1 !function=neg_to_m 58c65c3ee1SRichard Henderson%cmpbid_c 13:2 !function=cmpbid_c 591cd012a5SRichard Henderson 60c603e14aSRichard Henderson#### 61deee69a1SRichard Henderson# Argument set definitions 62deee69a1SRichard Henderson#### 63deee69a1SRichard Henderson 64deee69a1SRichard Henderson# All insns that need to form a virtual address should use this set. 65deee69a1SRichard Henderson&ldst t b x disp sp m scale size 66deee69a1SRichard Henderson 67af240753SRichard Henderson&rr_cf_d t r cf d 680843563fSRichard Henderson&rrr t r1 r2 690c982a28SRichard Henderson&rrr_cf t r1 r2 cf 70fa8e3bedSRichard Henderson&rrr_cf_d t r1 r2 cf d 71*3bbb8e48SRichard Henderson&rrr_sh t r1 r2 sh 72faf97ba1SRichard Henderson&rrr_cf_d_sh t r1 r2 cf d sh 73151f309bSRichard Henderson&rri t r i 740588e061SRichard Henderson&rri_cf t r i cf 75345aa35fSRichard Henderson&rri_cf_d t r i cf d 760c982a28SRichard Henderson 7701afb7beSRichard Henderson&rrb_c_f disp n c f r1 r2 78e9efd4bcSRichard Henderson&rrb_c_d_f disp n c d f r1 r2 7901afb7beSRichard Henderson&rib_c_f disp n c f r i 80c65c3ee1SRichard Henderson&rib_c_d_f disp n c d f r i 8101afb7beSRichard Henderson 820c982a28SRichard Henderson#### 830c982a28SRichard Henderson# Format definitions 840c982a28SRichard Henderson#### 850c982a28SRichard Henderson 86af240753SRichard Henderson@rr_cf_d ...... r:5 ..... cf:4 ...... d:1 t:5 &rr_cf_d 870843563fSRichard Henderson@rrr ...... r2:5 r1:5 .... ....... t:5 &rrr 880c982a28SRichard Henderson@rrr_cf ...... r2:5 r1:5 cf:4 ....... t:5 &rrr_cf 89fa8e3bedSRichard Henderson@rrr_cf_d ...... r2:5 r1:5 cf:4 ...... d:1 t:5 &rrr_cf_d 90*3bbb8e48SRichard Henderson@rrr_sh ...... r2:5 r1:5 ........ sh:2 . t:5 &rrr_sh 91faf97ba1SRichard Henderson@rrr_cf_d_sh ...... r2:5 r1:5 cf:4 .... sh:2 d:1 t:5 &rrr_cf_d_sh 92faf97ba1SRichard Henderson@rrr_cf_d_sh0 ...... r2:5 r1:5 cf:4 ...... d:1 t:5 &rrr_cf_d_sh sh=0 930588e061SRichard Henderson@rri_cf ...... r:5 t:5 cf:4 . ........... &rri_cf i=%lowsign_11 94345aa35fSRichard Henderson@rri_cf_d ...... r:5 t:5 cf:4 d:1 ........... &rri_cf_d i=%lowsign_11 950c982a28SRichard Henderson 9601afb7beSRichard Henderson@rrb_cf ...... r2:5 r1:5 c:3 ........... n:1 . \ 9701afb7beSRichard Henderson &rrb_c_f disp=%assemble_12 98e9efd4bcSRichard Henderson@rrb_cdf ...... r2:5 r1:5 c:3 ........... n:1 . \ 99e9efd4bcSRichard Henderson &rrb_c_d_f disp=%assemble_12 10001afb7beSRichard Henderson@rib_cf ...... r:5 ..... c:3 ........... n:1 . \ 10101afb7beSRichard Henderson &rib_c_f disp=%assemble_12 i=%im5_16 102c65c3ee1SRichard Henderson@rib_cdf ...... r:5 ..... c:3 ........... n:1 . \ 103c65c3ee1SRichard Henderson &rib_c_d_f disp=%assemble_12 i=%im5_16 10401afb7beSRichard Henderson 105deee69a1SRichard Henderson#### 10640f9f908SRichard Henderson# System 10740f9f908SRichard Henderson#### 10840f9f908SRichard Henderson 10940f9f908SRichard Hendersonbreak 000000 ----- ----- --- 00000000 ----- 110c603e14aSRichard Henderson 111c603e14aSRichard Hendersonmtsp 000000 ----- r:5 ... 11000001 00000 sp=%assemble_sr3 112c603e14aSRichard Hendersonmtctl 000000 t:5 r:5 --- 11000010 00000 113c603e14aSRichard Hendersonmtsarcm 000000 01011 r:5 --- 11000110 00000 114c603e14aSRichard Hendersonmtsm 000000 00000 r:5 000 11000011 00000 115c603e14aSRichard Henderson 116c603e14aSRichard Hendersonmfia 000000 ----- 00000 --- 10100101 t:5 117c603e14aSRichard Hendersonmfsp 000000 ----- 00000 ... 00100101 t:5 sp=%assemble_sr3 118c603e14aSRichard Hendersonmfctl 000000 r:5 00000- e:1 -01000101 t:5 119e36f27efSRichard Henderson 120e36f27efSRichard Hendersonsync 000000 ----- ----- 000 00100000 00000 # sync, syncdma 121e36f27efSRichard Henderson 122e36f27efSRichard Hendersonldsid 000000 b:5 ----- sp:2 0 10000101 t:5 123e36f27efSRichard Henderson 124e36f27efSRichard Hendersonrsm 000000 .......... 000 01110011 t:5 i=%sm_imm 125e36f27efSRichard Hendersonssm 000000 .......... 000 01101011 t:5 i=%sm_imm 126e36f27efSRichard Henderson 127e36f27efSRichard Hendersonrfi 000000 ----- ----- --- 01100000 00000 128e36f27efSRichard Hendersonrfi_r 000000 ----- ----- --- 01100101 00000 129deee69a1SRichard Henderson 13096927adbSRichard Henderson# These are artificial instructions used by QEMU firmware. 13196927adbSRichard Henderson# They are allocated from the unassigned instruction space. 13296927adbSRichard Hendersonhalt 1111 1111 1111 1101 1110 1010 1101 0000 13396927adbSRichard Hendersonreset 1111 1111 1111 1101 1110 1010 1101 0001 1344a4554c6SHelge Dellergetshadowregs 1111 1111 1111 1101 1110 1010 1101 0010 13596927adbSRichard Henderson 136deee69a1SRichard Henderson#### 137deee69a1SRichard Henderson# Memory Management 138deee69a1SRichard Henderson#### 139deee69a1SRichard Henderson 140deee69a1SRichard Henderson@addrx ...... b:5 x:5 .. ........ m:1 ..... \ 141deee69a1SRichard Henderson &ldst disp=0 scale=0 t=0 sp=0 size=0 142deee69a1SRichard Henderson 143deee69a1SRichard Hendersonnop 000001 ----- ----- -- 11001010 0 ----- # fdc, disp 144deee69a1SRichard Hendersonnop_addrx 000001 ..... ..... -- 01001010 . ----- @addrx # fdc, index 145deee69a1SRichard Hendersonnop_addrx 000001 ..... ..... -- 01001011 . ----- @addrx # fdce 146deee69a1SRichard Hendersonnop_addrx 000001 ..... ..... --- 0001010 . ----- @addrx # fic 0x0a 147deee69a1SRichard Hendersonnop_addrx 000001 ..... ..... -- 01001111 . 00000 @addrx # fic 0x4f 148deee69a1SRichard Hendersonnop_addrx 000001 ..... ..... --- 0001011 . ----- @addrx # fice 149deee69a1SRichard Hendersonnop_addrx 000001 ..... ..... -- 01001110 . 00000 @addrx # pdc 150deee69a1SRichard Henderson 151deee69a1SRichard Hendersonprobe 000001 b:5 ri:5 sp:2 imm:1 100011 write:1 0 t:5 152deee69a1SRichard Henderson 1538577f354SRichard Henderson# pa1.x tlb insert instructions 154deee69a1SRichard Hendersonixtlbx 000001 b:5 r:5 sp:2 0100000 addr:1 0 00000 data=1 155deee69a1SRichard Hendersonixtlbx 000001 b:5 r:5 ... 000000 addr:1 0 00000 \ 156deee69a1SRichard Henderson sp=%assemble_sr3x data=0 157deee69a1SRichard Henderson 1586797c315SNick Hudson# pcxl and pcxl2 Fast TLB Insert instructions 1596797c315SNick Hudsonixtlbxf 000001 00000 r:5 00 0 data:1 01000 addr:1 0 00000 1606797c315SNick Hudson 1618577f354SRichard Henderson# pa2.0 tlb insert idtlbt and iitlbt instructions 1628577f354SRichard Hendersonixtlbt 000001 r2:5 r1:5 000 data:1 100000 0 00000 # idtlbt 1638577f354SRichard Henderson 164deee69a1SRichard Hendersonpxtlbx 000001 b:5 x:5 sp:2 0100100 local:1 m:1 ----- data=1 165deee69a1SRichard Hendersonpxtlbx 000001 b:5 x:5 ... 000100 local:1 m:1 ----- \ 166deee69a1SRichard Henderson sp=%assemble_sr3x data=0 167deee69a1SRichard Henderson 168deee69a1SRichard Hendersonlpa 000001 b:5 x:5 sp:2 01001101 m:1 t:5 \ 169deee69a1SRichard Henderson &ldst disp=0 scale=0 size=0 170deee69a1SRichard Henderson 171deee69a1SRichard Hendersonlci 000001 ----- ----- -- 01001100 0 t:5 1720c982a28SRichard Henderson 1730c982a28SRichard Henderson#### 1740c982a28SRichard Henderson# Arith/Log 1750c982a28SRichard Henderson#### 1760c982a28SRichard Henderson 177fa8e3bedSRichard Hendersonandcm 000010 ..... ..... .... 000000 . ..... @rrr_cf_d 178fa8e3bedSRichard Hendersonand 000010 ..... ..... .... 001000 . ..... @rrr_cf_d 179fa8e3bedSRichard Hendersonor 000010 ..... ..... .... 001001 . ..... @rrr_cf_d 180fa8e3bedSRichard Hendersonxor 000010 ..... ..... .... 001010 . ..... @rrr_cf_d 181af240753SRichard Hendersonuxor 000010 ..... ..... .... 001110 . ..... @rrr_cf_d 1820c982a28SRichard Hendersonds 000010 ..... ..... .... 010001 0 ..... @rrr_cf 183345aa35fSRichard Hendersoncmpclr 000010 ..... ..... .... 100010 . ..... @rrr_cf_d 184af240753SRichard Hendersonuaddcm 000010 ..... ..... .... 100110 . ..... @rrr_cf_d 185af240753SRichard Hendersonuaddcm_tc 000010 ..... ..... .... 100111 . ..... @rrr_cf_d 186af240753SRichard Hendersondcor 000010 ..... 00000 .... 101110 . ..... @rr_cf_d 187af240753SRichard Hendersondcor_i 000010 ..... 00000 .... 101111 . ..... @rr_cf_d 1880c982a28SRichard Henderson 189faf97ba1SRichard Hendersonadd 000010 ..... ..... .... 0110.. . ..... @rrr_cf_d_sh 190faf97ba1SRichard Hendersonadd_l 000010 ..... ..... .... 1010.. . ..... @rrr_cf_d_sh 191faf97ba1SRichard Hendersonadd_tsv 000010 ..... ..... .... 1110.. . ..... @rrr_cf_d_sh 192*3bbb8e48SRichard Henderson{ 193faf97ba1SRichard Henderson add_c 000010 ..... ..... .... 011100 . ..... @rrr_cf_d_sh0 194*3bbb8e48SRichard Henderson hshladd 000010 ..... ..... 0000 0111.. 0 ..... @rrr_sh 195*3bbb8e48SRichard Henderson} 196faf97ba1SRichard Hendersonadd_c_tsv 000010 ..... ..... .... 111100 . ..... @rrr_cf_d_sh0 1970c982a28SRichard Henderson 19863c427c6SRichard Hendersonsub 000010 ..... ..... .... 010000 . ..... @rrr_cf_d 19963c427c6SRichard Hendersonsub_tsv 000010 ..... ..... .... 110000 . ..... @rrr_cf_d 20063c427c6SRichard Hendersonsub_tc 000010 ..... ..... .... 010011 . ..... @rrr_cf_d 20163c427c6SRichard Hendersonsub_tsv_tc 000010 ..... ..... .... 110011 . ..... @rrr_cf_d 202*3bbb8e48SRichard Henderson{ 20363c427c6SRichard Henderson sub_b 000010 ..... ..... .... 010100 . ..... @rrr_cf_d 204*3bbb8e48SRichard Henderson hshradd 000010 ..... ..... 0000 0101.. 0 ..... @rrr_sh 205*3bbb8e48SRichard Henderson} 20663c427c6SRichard Hendersonsub_b_tsv 000010 ..... ..... .... 110100 . ..... @rrr_cf_d 2071cd012a5SRichard Henderson 2080588e061SRichard Hendersonldil 001000 t:5 ..................... i=%assemble_21 2090588e061SRichard Hendersonaddil 001010 r:5 ..................... i=%assemble_21 2100588e061SRichard Hendersonldo 001101 b:5 t:5 -- .............. i=%lowsign_14 2110588e061SRichard Henderson 2120588e061SRichard Hendersonaddi 101101 ..... ..... .... 0 ........... @rri_cf 2130588e061SRichard Hendersonaddi_tsv 101101 ..... ..... .... 1 ........... @rri_cf 2140588e061SRichard Hendersonaddi_tc 101100 ..... ..... .... 0 ........... @rri_cf 2150588e061SRichard Hendersonaddi_tc_tsv 101100 ..... ..... .... 1 ........... @rri_cf 2160588e061SRichard Henderson 2170588e061SRichard Hendersonsubi 100101 ..... ..... .... 0 ........... @rri_cf 2180588e061SRichard Hendersonsubi_tsv 100101 ..... ..... .... 1 ........... @rri_cf 2190588e061SRichard Henderson 220345aa35fSRichard Hendersoncmpiclr 100100 ..... ..... .... . ........... @rri_cf_d 2210588e061SRichard Henderson 2220843563fSRichard Hendersonhadd 000010 ..... ..... 00000011 11 0 ..... @rrr 2230843563fSRichard Hendersonhadd_ss 000010 ..... ..... 00000011 01 0 ..... @rrr 2240843563fSRichard Hendersonhadd_us 000010 ..... ..... 00000011 00 0 ..... @rrr 2250843563fSRichard Henderson 2261b3cb7c8SRichard Hendersonhavg 000010 ..... ..... 00000010 11 0 ..... @rrr 2271b3cb7c8SRichard Henderson 228151f309bSRichard Hendersonhshl 111110 00000 r:5 100010 i:4 0 t:5 &rri 229151f309bSRichard Hendersonhshr_s 111110 r:5 00000 110011 i:4 0 t:5 &rri 230151f309bSRichard Hendersonhshr_u 111110 r:5 00000 110010 i:4 0 t:5 &rri 231151f309bSRichard Henderson 23210c9e58dSRichard Hendersonhsub 000010 ..... ..... 00000001 11 0 ..... @rrr 23310c9e58dSRichard Hendersonhsub_ss 000010 ..... ..... 00000001 01 0 ..... @rrr 23410c9e58dSRichard Hendersonhsub_us 000010 ..... ..... 00000001 00 0 ..... @rrr 23510c9e58dSRichard Henderson 2361cd012a5SRichard Henderson#### 2371cd012a5SRichard Henderson# Index Mem 2381cd012a5SRichard Henderson#### 2391cd012a5SRichard Henderson 2401cd012a5SRichard Henderson@ldstx ...... b:5 x:5 sp:2 scale:1 ....... m:1 t:5 &ldst disp=0 2411cd012a5SRichard Henderson@ldim5 ...... b:5 ..... sp:2 ......... t:5 \ 2421cd012a5SRichard Henderson &ldst disp=%im5_16 x=0 scale=0 m=%ma_to_m 2431cd012a5SRichard Henderson@stim5 ...... b:5 t:5 sp:2 ......... ..... \ 2441cd012a5SRichard Henderson &ldst disp=%im5_0 x=0 scale=0 m=%ma_to_m 2451cd012a5SRichard Henderson 2461cd012a5SRichard Hendersonld 000011 ..... ..... .. . 1 -- 00 size:2 ...... @ldim5 2471cd012a5SRichard Hendersonld 000011 ..... ..... .. . 0 -- 00 size:2 ...... @ldstx 2481cd012a5SRichard Hendersonst 000011 ..... ..... .. . 1 -- 10 size:2 ...... @stim5 2491cd012a5SRichard Hendersonldc 000011 ..... ..... .. . 1 -- 0111 ...... @ldim5 size=2 2501cd012a5SRichard Hendersonldc 000011 ..... ..... .. . 0 -- 0111 ...... @ldstx size=2 25151416c4eSRichard Hendersonldc 000011 ..... ..... .. . 1 -- 0101 ...... @ldim5 size=3 25251416c4eSRichard Hendersonldc 000011 ..... ..... .. . 0 -- 0101 ...... @ldstx size=3 2531cd012a5SRichard Hendersonlda 000011 ..... ..... .. . 1 -- 0110 ...... @ldim5 size=2 2541cd012a5SRichard Hendersonlda 000011 ..... ..... .. . 0 -- 0110 ...... @ldstx size=2 25551416c4eSRichard Hendersonlda 000011 ..... ..... .. . 1 -- 0100 ...... @ldim5 size=3 25651416c4eSRichard Hendersonlda 000011 ..... ..... .. . 0 -- 0100 ...... @ldstx size=3 2571cd012a5SRichard Hendersonsta 000011 ..... ..... .. . 1 -- 1110 ...... @stim5 size=2 25851416c4eSRichard Hendersonsta 000011 ..... ..... .. . 1 -- 1111 ...... @stim5 size=3 2591cd012a5SRichard Hendersonstby 000011 b:5 r:5 sp:2 a:1 1 -- 1100 m:1 ..... disp=%im5_0 26025460fc5SRichard Hendersonstdby 000011 b:5 r:5 sp:2 a:1 1 -- 1101 m:1 ..... disp=%im5_0 261b1e2af57SRichard Henderson 262e8777db7SRichard Henderson@fldstwx ...... b:5 x:5 sp:2 scale:1 ....... m:1 ..... \ 263e8777db7SRichard Henderson &ldst t=%rt64 disp=0 size=2 264e8777db7SRichard Henderson@fldstwi ...... b:5 ..... sp:2 . ....... . ..... \ 265e8777db7SRichard Henderson &ldst t=%rt64 disp=%im5_16 m=%ma_to_m x=0 scale=0 size=2 266e8777db7SRichard Henderson 267e8777db7SRichard Hendersonfldw 001001 ..... ..... .. . 0 -- 000 . . ..... @fldstwx 268e8777db7SRichard Hendersonfldw 001001 ..... ..... .. . 1 -- 000 . . ..... @fldstwi 269e8777db7SRichard Hendersonfstw 001001 ..... ..... .. . 0 -- 100 . . ..... @fldstwx 270e8777db7SRichard Hendersonfstw 001001 ..... ..... .. . 1 -- 100 . . ..... @fldstwi 271e8777db7SRichard Henderson 272e8777db7SRichard Henderson@fldstdx ...... b:5 x:5 sp:2 scale:1 ....... m:1 t:5 \ 273e8777db7SRichard Henderson &ldst disp=0 size=3 274e8777db7SRichard Henderson@fldstdi ...... b:5 ..... sp:2 . ....... . t:5 \ 275e8777db7SRichard Henderson &ldst disp=%im5_16 m=%ma_to_m x=0 scale=0 size=3 276e8777db7SRichard Henderson 277e8777db7SRichard Hendersonfldd 001011 ..... ..... .. . 0 -- 000 0 . ..... @fldstdx 278e8777db7SRichard Hendersonfldd 001011 ..... ..... .. . 1 -- 000 0 . ..... @fldstdi 279e8777db7SRichard Hendersonfstd 001011 ..... ..... .. . 0 -- 100 0 . ..... @fldstdx 280e8777db7SRichard Hendersonfstd 001011 ..... ..... .. . 1 -- 100 0 . ..... @fldstdi 281e8777db7SRichard Henderson 282b1e2af57SRichard Henderson#### 283740038d7SRichard Henderson# Offset Mem 284740038d7SRichard Henderson#### 285740038d7SRichard Henderson 28651416c4eSRichard Henderson@ldstim11 ...... b:5 t:5 sp:2 .............. \ 28751416c4eSRichard Henderson &ldst disp=%assemble_11a m=%ma2_to_m x=0 scale=0 size=3 288740038d7SRichard Henderson@ldstim14 ...... b:5 t:5 sp:2 .............. \ 289740038d7SRichard Henderson &ldst disp=%lowsign_14 x=0 scale=0 m=0 290740038d7SRichard Henderson@ldstim14m ...... b:5 t:5 sp:2 .............. \ 291740038d7SRichard Henderson &ldst disp=%lowsign_14 x=0 scale=0 m=%neg_to_m 292740038d7SRichard Henderson@ldstim12m ...... b:5 t:5 sp:2 .............. \ 293740038d7SRichard Henderson &ldst disp=%assemble_12a x=0 scale=0 m=%pos_to_m 294740038d7SRichard Henderson 295740038d7SRichard Henderson# LDB, LDH, LDW, LDWM 296740038d7SRichard Hendersonld 010000 ..... ..... .. .............. @ldstim14 size=0 297740038d7SRichard Hendersonld 010001 ..... ..... .. .............. @ldstim14 size=1 298740038d7SRichard Hendersonld 010010 ..... ..... .. .............. @ldstim14 size=2 299740038d7SRichard Hendersonld 010011 ..... ..... .. .............. @ldstim14m size=2 300740038d7SRichard Hendersonld 010111 ..... ..... .. ...........10. @ldstim12m size=2 301740038d7SRichard Henderson 302740038d7SRichard Henderson# STB, STH, STW, STWM 303740038d7SRichard Hendersonst 011000 ..... ..... .. .............. @ldstim14 size=0 304740038d7SRichard Hendersonst 011001 ..... ..... .. .............. @ldstim14 size=1 305740038d7SRichard Hendersonst 011010 ..... ..... .. .............. @ldstim14 size=2 306740038d7SRichard Hendersonst 011011 ..... ..... .. .............. @ldstim14m size=2 307740038d7SRichard Hendersonst 011111 ..... ..... .. ...........10. @ldstim12m size=2 308740038d7SRichard Henderson 309740038d7SRichard Hendersonfldw 010110 b:5 ..... sp:2 .............. \ 310740038d7SRichard Henderson &ldst disp=%assemble_12a t=%rm64 m=%a_to_m x=0 scale=0 size=2 311740038d7SRichard Hendersonfldw 010111 b:5 ..... sp:2 ...........0.. \ 312740038d7SRichard Henderson &ldst disp=%assemble_12a t=%rm64 m=0 x=0 scale=0 size=2 313740038d7SRichard Henderson 314740038d7SRichard Hendersonfstw 011110 b:5 ..... sp:2 .............. \ 315740038d7SRichard Henderson &ldst disp=%assemble_12a t=%rm64 m=%a_to_m x=0 scale=0 size=2 316740038d7SRichard Hendersonfstw 011111 b:5 ..... sp:2 ...........0.. \ 317740038d7SRichard Henderson &ldst disp=%assemble_12a t=%rm64 m=0 x=0 scale=0 size=2 318740038d7SRichard Henderson 31951416c4eSRichard Hendersonld 010100 ..... ..... .. ............0. @ldstim11 32051416c4eSRichard Hendersonfldd 010100 ..... ..... .. ............1. @ldstim11 321740038d7SRichard Henderson 32251416c4eSRichard Hendersonst 011100 ..... ..... .. ............0. @ldstim11 32351416c4eSRichard Hendersonfstd 011100 ..... ..... .. ............1. @ldstim11 324740038d7SRichard Henderson 325740038d7SRichard Henderson#### 326b1e2af57SRichard Henderson# Floating-point Multiply Add 327b1e2af57SRichard Henderson#### 328b1e2af57SRichard Henderson 329b1e2af57SRichard Henderson&mpyadd rm1 rm2 ta ra tm 330b1e2af57SRichard Henderson@mpyadd ...... rm1:5 rm2:5 ta:5 ra:5 . tm:5 &mpyadd 331b1e2af57SRichard Henderson 332b1e2af57SRichard Hendersonfmpyadd_f 000110 ..... ..... ..... ..... 0 ..... @mpyadd 333b1e2af57SRichard Hendersonfmpyadd_d 000110 ..... ..... ..... ..... 1 ..... @mpyadd 334b1e2af57SRichard Hendersonfmpysub_f 100110 ..... ..... ..... ..... 0 ..... @mpyadd 335b1e2af57SRichard Hendersonfmpysub_d 100110 ..... ..... ..... ..... 1 ..... @mpyadd 33601afb7beSRichard Henderson 33701afb7beSRichard Henderson#### 33801afb7beSRichard Henderson# Conditional Branches 33901afb7beSRichard Henderson#### 34001afb7beSRichard Henderson 34184e224d4SRichard Hendersonbb_sar 110000 00000 r:5 c:1 1 d:1 ........... n:1 . disp=%assemble_12 34284e224d4SRichard Hendersonbb_imm 110001 p:5 r:5 c:1 1 d:1 ........... n:1 . disp=%assemble_12 34301afb7beSRichard Henderson 34401afb7beSRichard Hendersonmovb 110010 ..... ..... ... ........... . . @rrb_cf f=0 34501afb7beSRichard Hendersonmovbi 110011 ..... ..... ... ........... . . @rib_cf f=0 34601afb7beSRichard Henderson 347e9efd4bcSRichard Hendersoncmpb 100000 ..... ..... ... ........... . . @rrb_cdf d=0 f=0 348e9efd4bcSRichard Hendersoncmpb 100010 ..... ..... ... ........... . . @rrb_cdf d=0 f=1 349e9efd4bcSRichard Hendersoncmpb 100111 ..... ..... ... ........... . . @rrb_cdf d=1 f=0 350e9efd4bcSRichard Hendersoncmpb 101111 ..... ..... ... ........... . . @rrb_cdf d=1 f=1 351c65c3ee1SRichard Hendersoncmpbi 100001 ..... ..... ... ........... . . @rib_cdf d=0 f=0 352c65c3ee1SRichard Hendersoncmpbi 100011 ..... ..... ... ........... . . @rib_cdf d=0 f=1 353c65c3ee1SRichard Hendersoncmpbi 111011 r:5 ..... f:1 .. ........... n:1 . \ 354c65c3ee1SRichard Henderson &rib_c_d_f d=1 disp=%assemble_12 c=%cmpbid_c i=%im5_16 35501afb7beSRichard Henderson 35601afb7beSRichard Hendersonaddb 101000 ..... ..... ... ........... . . @rrb_cf f=0 35701afb7beSRichard Hendersonaddb 101010 ..... ..... ... ........... . . @rrb_cf f=1 35801afb7beSRichard Hendersonaddbi 101001 ..... ..... ... ........... . . @rib_cf f=0 35901afb7beSRichard Hendersonaddbi 101011 ..... ..... ... ........... . . @rib_cf f=1 36030878590SRichard Henderson 36130878590SRichard Henderson#### 36230878590SRichard Henderson# Shift, Extract, Deposit 36330878590SRichard Henderson#### 36430878590SRichard Henderson 365f7b775a9SRichard Hendersonshrp_sar 110100 r2:5 r1:5 c:3 00 0 d:1 0000 t:5 366f7b775a9SRichard Hendersonshrp_imm 110100 r2:5 r1:5 c:3 01 0 cpos:5 t:5 d=0 367f7b775a9SRichard Hendersonshrp_imm 110100 r2:5 r1:5 c:3 0. 1 ..... t:5 \ 368f7b775a9SRichard Henderson d=1 cpos=%cpos6_11 36930878590SRichard Henderson 370bd792da3SRichard Hendersonextr_sar 110100 r:5 t:5 c:3 10 se:1 00 000 ..... d=0 len=%len5 371bd792da3SRichard Hendersonextr_sar 110100 r:5 t:5 c:3 10 se:1 1. 000 ..... d=1 len=%len6_8 372bd792da3SRichard Hendersonextr_imm 110100 r:5 t:5 c:3 11 se:1 pos:5 ..... d=0 len=%len5 373bd792da3SRichard Hendersonextr_imm 110110 r:5 t:5 c:3 .. se:1 ..... ..... \ 374bd792da3SRichard Henderson d=1 len=%len6_12 pos=%cpos6_11 37530878590SRichard Henderson 37672ae4f2bSRichard Hendersondep_sar 110101 t:5 r:5 c:3 00 nz:1 00 000 ..... d=0 len=%len5 37772ae4f2bSRichard Hendersondep_sar 110101 t:5 r:5 c:3 00 nz:1 1. 000 ..... d=1 len=%len6_8 37872ae4f2bSRichard Hendersondep_imm 110101 t:5 r:5 c:3 01 nz:1 cpos:5 ..... d=0 len=%len5 37972ae4f2bSRichard Hendersondep_imm 111100 t:5 r:5 c:3 .. nz:1 ..... ..... \ 38072ae4f2bSRichard Henderson d=1 len=%len6_12 cpos=%cpos6_11 38172ae4f2bSRichard Hendersondepi_sar 110101 t:5 ..... c:3 10 nz:1 d:1 . 000 ..... \ 38272ae4f2bSRichard Henderson i=%im5_16 len=%len6_8 38372ae4f2bSRichard Hendersondepi_imm 110101 t:5 ..... c:3 11 nz:1 cpos:5 ..... \ 38472ae4f2bSRichard Henderson d=0 i=%im5_16 len=%len5 38572ae4f2bSRichard Hendersondepi_imm 111101 t:5 ..... c:3 .. nz:1 ..... ..... \ 38672ae4f2bSRichard Henderson d=1 i=%im5_16 len=%len6_12 cpos=%cpos6_11 3878340f534SRichard Henderson 3888340f534SRichard Henderson#### 3898340f534SRichard Henderson# Branch External 3908340f534SRichard Henderson#### 3918340f534SRichard Henderson 3928340f534SRichard Henderson&BE b l n disp sp 3938340f534SRichard Henderson@be ...... b:5 ..... ... ........... n:1 . \ 3948340f534SRichard Henderson &BE disp=%assemble_17 sp=%assemble_sr3 3958340f534SRichard Henderson 3968340f534SRichard Hendersonbe 111000 ..... ..... ... ........... . . @be l=0 3978340f534SRichard Hendersonbe 111001 ..... ..... ... ........... . . @be l=31 3988340f534SRichard Henderson 3998340f534SRichard Henderson#### 4008340f534SRichard Henderson# Branch 4018340f534SRichard Henderson#### 4028340f534SRichard Henderson 4038340f534SRichard Henderson&BL l n disp 4048340f534SRichard Henderson@bl ...... l:5 ..... ... ........... n:1 . &BL disp=%assemble_17 4058340f534SRichard Henderson 4068340f534SRichard Henderson# B,L and B,L,PUSH 4078340f534SRichard Hendersonbl 111010 ..... ..... 000 ........... . . @bl 4088340f534SRichard Hendersonbl 111010 ..... ..... 100 ........... . . @bl 4098340f534SRichard Henderson# B,L (long displacement) 4108340f534SRichard Hendersonbl 111010 ..... ..... 101 ........... n:1 . &BL l=2 \ 4118340f534SRichard Henderson disp=%assemble_22 4128340f534SRichard Hendersonb_gate 111010 ..... ..... 001 ........... . . @bl 4138340f534SRichard Hendersonblr 111010 l:5 x:5 010 00000000000 n:1 0 414a8966ba7SRichard Hendersonnopbts 111010 00000 00000 010 0---------1 0 1 # clrbts/popbts 415a8966ba7SRichard Hendersonnopbts 111010 00000 ----- 010 00000000000 0 1 # pushbts/pushnom 4168340f534SRichard Hendersonbv 111010 b:5 x:5 110 00000000000 n:1 0 4178340f534SRichard Hendersonbve 111010 b:5 00000 110 10000000000 n:1 - l=0 4188340f534SRichard Hendersonbve 111010 b:5 00000 111 10000000000 n:1 - l=2 419c3bad4f8SRichard Henderson 420c3bad4f8SRichard Henderson#### 421c3bad4f8SRichard Henderson# FP Fused Multiple-Add 422c3bad4f8SRichard Henderson#### 423c3bad4f8SRichard Henderson 424c3bad4f8SRichard Hendersonfmpyfadd_f 101110 ..... ..... ... . 0 ... . . neg:1 ..... \ 425c3bad4f8SRichard Henderson rm1=%ra64 rm2=%rb64 ra3=%rc64 t=%rt64 426c3bad4f8SRichard Hendersonfmpyfadd_d 101110 rm1:5 rm2:5 ... 0 1 ..0 0 0 neg:1 t:5 ra3=%rc32 4271ca74648SRichard Henderson 4281ca74648SRichard Henderson#### 4291ca74648SRichard Henderson# FP operations 4301ca74648SRichard Henderson#### 4311ca74648SRichard Henderson 4321ca74648SRichard Henderson&fclass01 r t 4331ca74648SRichard Henderson&fclass2 r1 r2 c y 4341ca74648SRichard Henderson&fclass3 r1 r2 t 4351ca74648SRichard Henderson 4361ca74648SRichard Henderson@f0c_0 ...... r:5 00000 ..... 00 000 0 t:5 &fclass01 4371ca74648SRichard Henderson@f0c_1 ...... r:5 000.. ..... 01 000 0 t:5 &fclass01 4381ca74648SRichard Henderson@f0c_2 ...... r1:5 r2:5 y:3 .. 10 000 . c:5 &fclass2 4391ca74648SRichard Henderson@f0c_3 ...... r1:5 r2:5 ..... 11 000 0 t:5 &fclass3 4401ca74648SRichard Henderson 4411ca74648SRichard Henderson@f0e_f_0 ...... ..... 00000 ... 0 0 000 .. 0 ..... \ 4421ca74648SRichard Henderson &fclass01 r=%ra64 t=%rt64 4431ca74648SRichard Henderson@f0e_d_0 ...... r:5 00000 ... 0 1 000 00 0 t:5 &fclass01 4441ca74648SRichard Henderson 4451ca74648SRichard Henderson@f0e_ff_1 ...... ..... 000 ... 0000 010 .. 0 ..... \ 4461ca74648SRichard Henderson &fclass01 r=%ra64 t=%rt64 4471ca74648SRichard Henderson@f0e_fd_1 ...... ..... 000 ... 0100 010 .0 0 t:5 &fclass01 r=%ra64 4481ca74648SRichard Henderson@f0e_df_1 ...... r:5 000 ... 0001 010 0. 0 ..... &fclass01 t=%rt64 4491ca74648SRichard Henderson@f0e_dd_1 ...... r:5 000 ... 0101 010 00 0 t:5 &fclass01 4501ca74648SRichard Henderson 4511ca74648SRichard Henderson@f0e_f_2 ...... ..... ..... y:3 .0 100 .00 c:5 \ 4521ca74648SRichard Henderson &fclass2 r1=%ra64 r2=%rb64 4531ca74648SRichard Henderson@f0e_d_2 ...... r1:5 r2:5 y:3 01 100 000 c:5 &fclass2 4541ca74648SRichard Henderson 4551ca74648SRichard Henderson@f0e_f_3 ...... ..... ..... ... .0 110 ..0 ..... \ 4561ca74648SRichard Henderson &fclass3 r1=%ra64 r2=%rb64 t=%rt64 4570843563fSRichard Henderson@f0e_d_3 ...... r1:5 r2:5 ... 01 110 000 t:5 &fclass3 4581ca74648SRichard Henderson 4591ca74648SRichard Henderson# Floating point class 0 4601ca74648SRichard Henderson 46159f8c04bSHelge Dellerfid_f 001100 00000 00000 000 00 000000 00000 4621ca74648SRichard Henderson 4631ca74648SRichard Hendersonfcpy_f 001100 ..... ..... 010 00 ...... ..... @f0c_0 4641ca74648SRichard Hendersonfabs_f 001100 ..... ..... 011 00 ...... ..... @f0c_0 4651ca74648SRichard Hendersonfsqrt_f 001100 ..... ..... 100 00 ...... ..... @f0c_0 4661ca74648SRichard Hendersonfrnd_f 001100 ..... ..... 101 00 ...... ..... @f0c_0 4671ca74648SRichard Hendersonfneg_f 001100 ..... ..... 110 00 ...... ..... @f0c_0 4681ca74648SRichard Hendersonfnegabs_f 001100 ..... ..... 111 00 ...... ..... @f0c_0 4691ca74648SRichard Henderson 4701ca74648SRichard Hendersonfcpy_d 001100 ..... ..... 010 01 ...... ..... @f0c_0 4711ca74648SRichard Hendersonfabs_d 001100 ..... ..... 011 01 ...... ..... @f0c_0 4721ca74648SRichard Hendersonfsqrt_d 001100 ..... ..... 100 01 ...... ..... @f0c_0 4731ca74648SRichard Hendersonfrnd_d 001100 ..... ..... 101 01 ...... ..... @f0c_0 4741ca74648SRichard Hendersonfneg_d 001100 ..... ..... 110 01 ...... ..... @f0c_0 4751ca74648SRichard Hendersonfnegabs_d 001100 ..... ..... 111 01 ...... ..... @f0c_0 4761ca74648SRichard Henderson 4771ca74648SRichard Hendersonfcpy_f 001110 ..... ..... 010 ........ ..... @f0e_f_0 4781ca74648SRichard Hendersonfabs_f 001110 ..... ..... 011 ........ ..... @f0e_f_0 4791ca74648SRichard Hendersonfsqrt_f 001110 ..... ..... 100 ........ ..... @f0e_f_0 4801ca74648SRichard Hendersonfrnd_f 001110 ..... ..... 101 ........ ..... @f0e_f_0 4811ca74648SRichard Hendersonfneg_f 001110 ..... ..... 110 ........ ..... @f0e_f_0 4821ca74648SRichard Hendersonfnegabs_f 001110 ..... ..... 111 ........ ..... @f0e_f_0 4831ca74648SRichard Henderson 4841ca74648SRichard Hendersonfcpy_d 001110 ..... ..... 010 ........ ..... @f0e_d_0 4851ca74648SRichard Hendersonfabs_d 001110 ..... ..... 011 ........ ..... @f0e_d_0 4861ca74648SRichard Hendersonfsqrt_d 001110 ..... ..... 100 ........ ..... @f0e_d_0 4871ca74648SRichard Hendersonfrnd_d 001110 ..... ..... 101 ........ ..... @f0e_d_0 4881ca74648SRichard Hendersonfneg_d 001110 ..... ..... 110 ........ ..... @f0e_d_0 4891ca74648SRichard Hendersonfnegabs_d 001110 ..... ..... 111 ........ ..... @f0e_d_0 4901ca74648SRichard Henderson 4911ca74648SRichard Henderson# Floating point class 1 4921ca74648SRichard Henderson 4931ca74648SRichard Henderson# float/float 4941ca74648SRichard Hendersonfcnv_d_f 001100 ..... ... 000 00 01 ...... ..... @f0c_1 4951ca74648SRichard Hendersonfcnv_f_d 001100 ..... ... 000 01 00 ...... ..... @f0c_1 4961ca74648SRichard Henderson 4971ca74648SRichard Hendersonfcnv_d_f 001110 ..... ... 000 .......... ..... @f0e_df_1 4981ca74648SRichard Hendersonfcnv_f_d 001110 ..... ... 000 .......... ..... @f0e_fd_1 4991ca74648SRichard Henderson 5001ca74648SRichard Henderson# int/float 5011ca74648SRichard Hendersonfcnv_w_f 001100 ..... ... 001 00 00 ...... ..... @f0c_1 5021ca74648SRichard Hendersonfcnv_q_f 001100 ..... ... 001 00 01 ...... ..... @f0c_1 5031ca74648SRichard Hendersonfcnv_w_d 001100 ..... ... 001 01 00 ...... ..... @f0c_1 5041ca74648SRichard Hendersonfcnv_q_d 001100 ..... ... 001 01 01 ...... ..... @f0c_1 5051ca74648SRichard Henderson 5061ca74648SRichard Hendersonfcnv_w_f 001110 ..... ... 001 .......... ..... @f0e_ff_1 5071ca74648SRichard Hendersonfcnv_q_f 001110 ..... ... 001 .......... ..... @f0e_df_1 5081ca74648SRichard Hendersonfcnv_w_d 001110 ..... ... 001 .......... ..... @f0e_fd_1 5091ca74648SRichard Hendersonfcnv_q_d 001110 ..... ... 001 .......... ..... @f0e_dd_1 5101ca74648SRichard Henderson 5111ca74648SRichard Henderson# float/int 5121ca74648SRichard Hendersonfcnv_f_w 001100 ..... ... 010 00 00 ...... ..... @f0c_1 5131ca74648SRichard Hendersonfcnv_d_w 001100 ..... ... 010 00 01 ...... ..... @f0c_1 5141ca74648SRichard Hendersonfcnv_f_q 001100 ..... ... 010 01 00 ...... ..... @f0c_1 5151ca74648SRichard Hendersonfcnv_d_q 001100 ..... ... 010 01 01 ...... ..... @f0c_1 5161ca74648SRichard Henderson 5171ca74648SRichard Hendersonfcnv_f_w 001110 ..... ... 010 .......... ..... @f0e_ff_1 5181ca74648SRichard Hendersonfcnv_d_w 001110 ..... ... 010 .......... ..... @f0e_df_1 5191ca74648SRichard Hendersonfcnv_f_q 001110 ..... ... 010 .......... ..... @f0e_fd_1 5201ca74648SRichard Hendersonfcnv_d_q 001110 ..... ... 010 .......... ..... @f0e_dd_1 5211ca74648SRichard Henderson 5221ca74648SRichard Henderson# float/int truncate 5231ca74648SRichard Hendersonfcnv_t_f_w 001100 ..... ... 011 00 00 ...... ..... @f0c_1 5241ca74648SRichard Hendersonfcnv_t_d_w 001100 ..... ... 011 00 01 ...... ..... @f0c_1 5251ca74648SRichard Hendersonfcnv_t_f_q 001100 ..... ... 011 01 00 ...... ..... @f0c_1 5261ca74648SRichard Hendersonfcnv_t_d_q 001100 ..... ... 011 01 01 ...... ..... @f0c_1 5271ca74648SRichard Henderson 5281ca74648SRichard Hendersonfcnv_t_f_w 001110 ..... ... 011 .......... ..... @f0e_ff_1 5291ca74648SRichard Hendersonfcnv_t_d_w 001110 ..... ... 011 .......... ..... @f0e_df_1 5301ca74648SRichard Hendersonfcnv_t_f_q 001110 ..... ... 011 .......... ..... @f0e_fd_1 5311ca74648SRichard Hendersonfcnv_t_d_q 001110 ..... ... 011 .......... ..... @f0e_dd_1 5321ca74648SRichard Henderson 5331ca74648SRichard Henderson# uint/float 5341ca74648SRichard Hendersonfcnv_uw_f 001100 ..... ... 101 00 00 ...... ..... @f0c_1 5351ca74648SRichard Hendersonfcnv_uq_f 001100 ..... ... 101 00 01 ...... ..... @f0c_1 5361ca74648SRichard Hendersonfcnv_uw_d 001100 ..... ... 101 01 00 ...... ..... @f0c_1 5371ca74648SRichard Hendersonfcnv_uq_d 001100 ..... ... 101 01 01 ...... ..... @f0c_1 5381ca74648SRichard Henderson 5391ca74648SRichard Hendersonfcnv_uw_f 001110 ..... ... 101 .......... ..... @f0e_ff_1 5401ca74648SRichard Hendersonfcnv_uq_f 001110 ..... ... 101 .......... ..... @f0e_df_1 5411ca74648SRichard Hendersonfcnv_uw_d 001110 ..... ... 101 .......... ..... @f0e_fd_1 5421ca74648SRichard Hendersonfcnv_uq_d 001110 ..... ... 101 .......... ..... @f0e_dd_1 5431ca74648SRichard Henderson 5441ca74648SRichard Henderson# float/int 5451ca74648SRichard Hendersonfcnv_f_uw 001100 ..... ... 110 00 00 ...... ..... @f0c_1 5461ca74648SRichard Hendersonfcnv_d_uw 001100 ..... ... 110 00 01 ...... ..... @f0c_1 5471ca74648SRichard Hendersonfcnv_f_uq 001100 ..... ... 110 01 00 ...... ..... @f0c_1 5481ca74648SRichard Hendersonfcnv_d_uq 001100 ..... ... 110 01 01 ...... ..... @f0c_1 5491ca74648SRichard Henderson 5501ca74648SRichard Hendersonfcnv_f_uw 001110 ..... ... 110 .......... ..... @f0e_ff_1 5511ca74648SRichard Hendersonfcnv_d_uw 001110 ..... ... 110 .......... ..... @f0e_df_1 5521ca74648SRichard Hendersonfcnv_f_uq 001110 ..... ... 110 .......... ..... @f0e_fd_1 5531ca74648SRichard Hendersonfcnv_d_uq 001110 ..... ... 110 .......... ..... @f0e_dd_1 5541ca74648SRichard Henderson 5551ca74648SRichard Henderson# float/int truncate 5561ca74648SRichard Hendersonfcnv_t_f_uw 001100 ..... ... 111 00 00 ...... ..... @f0c_1 5571ca74648SRichard Hendersonfcnv_t_d_uw 001100 ..... ... 111 00 01 ...... ..... @f0c_1 5581ca74648SRichard Hendersonfcnv_t_f_uq 001100 ..... ... 111 01 00 ...... ..... @f0c_1 5591ca74648SRichard Hendersonfcnv_t_d_uq 001100 ..... ... 111 01 01 ...... ..... @f0c_1 5601ca74648SRichard Henderson 5611ca74648SRichard Hendersonfcnv_t_f_uw 001110 ..... ... 111 .......... ..... @f0e_ff_1 5621ca74648SRichard Hendersonfcnv_t_d_uw 001110 ..... ... 111 .......... ..... @f0e_df_1 5631ca74648SRichard Hendersonfcnv_t_f_uq 001110 ..... ... 111 .......... ..... @f0e_fd_1 5641ca74648SRichard Hendersonfcnv_t_d_uq 001110 ..... ... 111 .......... ..... @f0e_dd_1 5651ca74648SRichard Henderson 5661ca74648SRichard Henderson# Floating point class 2 5671ca74648SRichard Henderson 5681ca74648SRichard Hendersonftest 001100 00000 00000 y:3 00 10000 1 c:5 5691ca74648SRichard Henderson 5701ca74648SRichard Hendersonfcmp_f 001100 ..... ..... ... 00 ..... 0 ..... @f0c_2 5711ca74648SRichard Hendersonfcmp_d 001100 ..... ..... ... 01 ..... 0 ..... @f0c_2 5721ca74648SRichard Henderson 5731ca74648SRichard Hendersonfcmp_f 001110 ..... ..... ... ..... ... ..... @f0e_f_2 5741ca74648SRichard Hendersonfcmp_d 001110 ..... ..... ... ..... ... ..... @f0e_d_2 5751ca74648SRichard Henderson 5761ca74648SRichard Henderson# Floating point class 3 5771ca74648SRichard Henderson 5781ca74648SRichard Hendersonfadd_f 001100 ..... ..... 000 00 ...... ..... @f0c_3 5791ca74648SRichard Hendersonfsub_f 001100 ..... ..... 001 00 ...... ..... @f0c_3 5801ca74648SRichard Hendersonfmpy_f 001100 ..... ..... 010 00 ...... ..... @f0c_3 5811ca74648SRichard Hendersonfdiv_f 001100 ..... ..... 011 00 ...... ..... @f0c_3 5821ca74648SRichard Henderson 5831ca74648SRichard Hendersonfadd_d 001100 ..... ..... 000 01 ...... ..... @f0c_3 5841ca74648SRichard Hendersonfsub_d 001100 ..... ..... 001 01 ...... ..... @f0c_3 5851ca74648SRichard Hendersonfmpy_d 001100 ..... ..... 010 01 ...... ..... @f0c_3 5861ca74648SRichard Hendersonfdiv_d 001100 ..... ..... 011 01 ...... ..... @f0c_3 5871ca74648SRichard Henderson 5881ca74648SRichard Hendersonfadd_f 001110 ..... ..... 000 ..... ... ..... @f0e_f_3 5891ca74648SRichard Hendersonfsub_f 001110 ..... ..... 001 ..... ... ..... @f0e_f_3 5901ca74648SRichard Hendersonfmpy_f 001110 ..... ..... 010 ..... ... ..... @f0e_f_3 5911ca74648SRichard Hendersonfdiv_f 001110 ..... ..... 011 ..... ... ..... @f0e_f_3 5921ca74648SRichard Henderson 5931ca74648SRichard Hendersonfadd_d 001110 ..... ..... 000 ..... ... ..... @f0e_d_3 5941ca74648SRichard Hendersonfsub_d 001110 ..... ..... 001 ..... ... ..... @f0e_d_3 5951ca74648SRichard Hendersonfmpy_d 001110 ..... ..... 010 ..... ... ..... @f0e_d_3 5961ca74648SRichard Hendersonfdiv_d 001110 ..... ..... 011 ..... ... ..... @f0e_d_3 5971ca74648SRichard Henderson 5981ca74648SRichard Hendersonxmpyu 001110 ..... ..... 010 .0111 .00 t:5 r1=%ra64 r2=%rb64 59915da177bSSven Schnelle 60015da177bSSven Schnelle# diag 601a64b8842SHelge Dellerdiag 000101 i:26 602