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 274768c28eSRichard Henderson%assemble_11a 4:12 0:1 !function=expand_11a 2801afb7beSRichard Henderson%assemble_12 0:s1 2:1 3:10 !function=expand_shl2 2946174e14SRichard Henderson%assemble_12a 3:13 0:1 !function=expand_12a 3072bace2dSRichard Henderson%assemble_16 0:16 !function=expand_16 318340f534SRichard Henderson%assemble_17 0:s1 16:5 2:1 3:10 !function=expand_shl2 328340f534SRichard Henderson%assemble_22 0:s1 16:10 2:1 3:10 !function=expand_shl2 3372bace2dSRichard Henderson%assemble_sp 14:2 !function=sp0_if_wide 3401afb7beSRichard Henderson 350588e061SRichard Henderson%assemble_21 0:s1 1:11 14:2 16:5 12:2 !function=expand_shl11 360588e061SRichard Henderson 370588e061SRichard Henderson%lowsign_11 0:s1 1:10 380588e061SRichard Henderson 39e36f27efSRichard Henderson%sm_imm 16:10 !function=expand_sm_imm 40e36f27efSRichard Henderson 41740038d7SRichard Henderson%rm64 1:1 16:5 42e8777db7SRichard Henderson%rt64 6:1 0:5 43c3bad4f8SRichard Henderson%ra64 7:1 21:5 44c3bad4f8SRichard Henderson%rb64 12:1 16:5 45c3bad4f8SRichard Henderson%rc64 8:1 13:3 9:2 46c3bad4f8SRichard Henderson%rc32 13:3 9:2 47740038d7SRichard Henderson 481cd012a5SRichard Henderson%im5_0 0:s1 1:4 491cd012a5SRichard Henderson%im5_16 16:s1 17:4 5072ae4f2bSRichard Henderson%len5 0:5 !function=assemble_6 5172ae4f2bSRichard Henderson%len6_8 8:1 0:5 !function=assemble_6 5272ae4f2bSRichard Henderson%len6_12 12:1 0:5 !function=assemble_6 5372ae4f2bSRichard Henderson%cpos6_11 11:1 5:5 541cd012a5SRichard Henderson%ma_to_m 5:1 13:1 !function=ma_to_m 55740038d7SRichard Henderson%ma2_to_m 2:2 !function=ma_to_m 56740038d7SRichard Henderson%pos_to_m 0:1 !function=pos_to_m 57740038d7SRichard Henderson%neg_to_m 0:1 !function=neg_to_m 58740038d7SRichard Henderson%a_to_m 2:1 !function=neg_to_m 59c65c3ee1SRichard Henderson%cmpbid_c 13:2 !function=cmpbid_c 601cd012a5SRichard Henderson 61c603e14aSRichard Henderson#### 62deee69a1SRichard Henderson# Argument set definitions 63deee69a1SRichard Henderson#### 64deee69a1SRichard Henderson 65deee69a1SRichard Henderson# All insns that need to form a virtual address should use this set. 66deee69a1SRichard Henderson&ldst t b x disp sp m scale size 67deee69a1SRichard Henderson 68af240753SRichard Henderson&rr_cf_d t r cf d 690843563fSRichard Henderson&rrr t r1 r2 700c982a28SRichard Henderson&rrr_cf t r1 r2 cf 71fa8e3bedSRichard Henderson&rrr_cf_d t r1 r2 cf d 723bbb8e48SRichard Henderson&rrr_sh t r1 r2 sh 73faf97ba1SRichard Henderson&rrr_cf_d_sh t r1 r2 cf d sh 74151f309bSRichard Henderson&rri t r i 750588e061SRichard Henderson&rri_cf t r i cf 76345aa35fSRichard Henderson&rri_cf_d t r i cf d 770c982a28SRichard Henderson 7801afb7beSRichard Henderson&rrb_c_f disp n c f r1 r2 79e9efd4bcSRichard Henderson&rrb_c_d_f disp n c d f r1 r2 8001afb7beSRichard Henderson&rib_c_f disp n c f r i 81c65c3ee1SRichard Henderson&rib_c_d_f disp n c d f r i 8201afb7beSRichard Henderson 830c982a28SRichard Henderson#### 840c982a28SRichard Henderson# Format definitions 850c982a28SRichard Henderson#### 860c982a28SRichard Henderson 87af240753SRichard Henderson@rr_cf_d ...... r:5 ..... cf:4 ...... d:1 t:5 &rr_cf_d 880843563fSRichard Henderson@rrr ...... r2:5 r1:5 .... ....... t:5 &rrr 890c982a28SRichard Henderson@rrr_cf ...... r2:5 r1:5 cf:4 ....... t:5 &rrr_cf 90fa8e3bedSRichard Henderson@rrr_cf_d ...... r2:5 r1:5 cf:4 ...... d:1 t:5 &rrr_cf_d 913bbb8e48SRichard Henderson@rrr_sh ...... r2:5 r1:5 ........ sh:2 . t:5 &rrr_sh 92faf97ba1SRichard Henderson@rrr_cf_d_sh ...... r2:5 r1:5 cf:4 .... sh:2 d:1 t:5 &rrr_cf_d_sh 93faf97ba1SRichard Henderson@rrr_cf_d_sh0 ...... r2:5 r1:5 cf:4 ...... d:1 t:5 &rrr_cf_d_sh sh=0 940588e061SRichard Henderson@rri_cf ...... r:5 t:5 cf:4 . ........... &rri_cf i=%lowsign_11 95345aa35fSRichard Henderson@rri_cf_d ...... r:5 t:5 cf:4 d:1 ........... &rri_cf_d i=%lowsign_11 960c982a28SRichard Henderson 9701afb7beSRichard Henderson@rrb_cf ...... r2:5 r1:5 c:3 ........... n:1 . \ 9801afb7beSRichard Henderson &rrb_c_f disp=%assemble_12 99e9efd4bcSRichard Henderson@rrb_cdf ...... r2:5 r1:5 c:3 ........... n:1 . \ 100e9efd4bcSRichard Henderson &rrb_c_d_f disp=%assemble_12 10101afb7beSRichard Henderson@rib_cf ...... r:5 ..... c:3 ........... n:1 . \ 10201afb7beSRichard Henderson &rib_c_f disp=%assemble_12 i=%im5_16 103c65c3ee1SRichard Henderson@rib_cdf ...... r:5 ..... c:3 ........... n:1 . \ 104c65c3ee1SRichard Henderson &rib_c_d_f disp=%assemble_12 i=%im5_16 10501afb7beSRichard Henderson 106deee69a1SRichard Henderson#### 10740f9f908SRichard Henderson# System 10840f9f908SRichard Henderson#### 10940f9f908SRichard Henderson 11040f9f908SRichard Hendersonbreak 000000 ----- ----- --- 00000000 ----- 111c603e14aSRichard Henderson 112c603e14aSRichard Hendersonmtsp 000000 ----- r:5 ... 11000001 00000 sp=%assemble_sr3 113c603e14aSRichard Hendersonmtctl 000000 t:5 r:5 --- 11000010 00000 114c603e14aSRichard Hendersonmtsarcm 000000 01011 r:5 --- 11000110 00000 115c603e14aSRichard Hendersonmtsm 000000 00000 r:5 000 11000011 00000 116c603e14aSRichard Henderson 117c603e14aSRichard Hendersonmfia 000000 ----- 00000 --- 10100101 t:5 118c603e14aSRichard Hendersonmfsp 000000 ----- 00000 ... 00100101 t:5 sp=%assemble_sr3 119c603e14aSRichard Hendersonmfctl 000000 r:5 00000- e:1 -01000101 t:5 120e36f27efSRichard Henderson 121e36f27efSRichard Hendersonsync 000000 ----- ----- 000 00100000 00000 # sync, syncdma 122e36f27efSRichard Henderson 123e36f27efSRichard Hendersonldsid 000000 b:5 ----- sp:2 0 10000101 t:5 124e36f27efSRichard Henderson 125e36f27efSRichard Hendersonrsm 000000 .......... 000 01110011 t:5 i=%sm_imm 126e36f27efSRichard Hendersonssm 000000 .......... 000 01101011 t:5 i=%sm_imm 127e36f27efSRichard Henderson 128e36f27efSRichard Hendersonrfi 000000 ----- ----- --- 01100000 00000 129e36f27efSRichard Hendersonrfi_r 000000 ----- ----- --- 01100101 00000 130deee69a1SRichard Henderson 13196927adbSRichard Henderson# These are artificial instructions used by QEMU firmware. 13296927adbSRichard Henderson# They are allocated from the unassigned instruction space. 13396927adbSRichard Hendersonhalt 1111 1111 1111 1101 1110 1010 1101 0000 13496927adbSRichard Hendersonreset 1111 1111 1111 1101 1110 1010 1101 0001 1354a4554c6SHelge Dellergetshadowregs 1111 1111 1111 1101 1110 1010 1101 0010 13696927adbSRichard Henderson 137deee69a1SRichard Henderson#### 138deee69a1SRichard Henderson# Memory Management 139deee69a1SRichard Henderson#### 140deee69a1SRichard Henderson 141deee69a1SRichard Henderson@addrx ...... b:5 x:5 .. ........ m:1 ..... \ 142deee69a1SRichard Henderson &ldst disp=0 scale=0 t=0 sp=0 size=0 143deee69a1SRichard Henderson 144deee69a1SRichard Hendersonnop 000001 ----- ----- -- 11001010 0 ----- # fdc, disp 145deee69a1SRichard Hendersonnop_addrx 000001 ..... ..... -- 01001010 . ----- @addrx # fdc, index 146deee69a1SRichard Hendersonnop_addrx 000001 ..... ..... -- 01001011 . ----- @addrx # fdce 147*ad1fdacdSSven Schnellefic 000001 ..... ..... --- 0001010 . ----- @addrx # fic 0x0a 148*ad1fdacdSSven Schnellefic 000001 ..... ..... -- 01001111 . 00000 @addrx # fic 0x4f 149*ad1fdacdSSven Schnellefic 000001 ..... ..... --- 0001011 . ----- @addrx # fice 150deee69a1SRichard Hendersonnop_addrx 000001 ..... ..... -- 01001110 . 00000 @addrx # pdc 151deee69a1SRichard Henderson 152deee69a1SRichard Hendersonprobe 000001 b:5 ri:5 sp:2 imm:1 100011 write:1 0 t:5 153deee69a1SRichard Henderson 1548577f354SRichard Henderson# pa1.x tlb insert instructions 155deee69a1SRichard Hendersonixtlbx 000001 b:5 r:5 sp:2 0100000 addr:1 0 00000 data=1 156deee69a1SRichard Hendersonixtlbx 000001 b:5 r:5 ... 000000 addr:1 0 00000 \ 157deee69a1SRichard Henderson sp=%assemble_sr3x data=0 158deee69a1SRichard Henderson 1596797c315SNick Hudson# pcxl and pcxl2 Fast TLB Insert instructions 1606797c315SNick Hudsonixtlbxf 000001 00000 r:5 00 0 data:1 01000 addr:1 0 00000 1616797c315SNick Hudson 1628577f354SRichard Henderson# pa2.0 tlb insert idtlbt and iitlbt instructions 1638577f354SRichard Hendersonixtlbt 000001 r2:5 r1:5 000 data:1 100000 0 00000 # idtlbt 1648577f354SRichard Henderson 165eb25d10fSHelge Deller# pdtlb, pitlb 166eb25d10fSHelge Dellerpxtlb 000001 b:5 x:5 sp:2 01001000 m:1 ----- \ 167eb25d10fSHelge Deller &ldst disp=0 scale=0 size=0 t=0 168eb25d10fSHelge Dellerpxtlb 000001 b:5 x:5 ... 0001000 m:1 ----- \ 169eb25d10fSHelge Deller &ldst disp=0 scale=0 size=0 t=0 sp=%assemble_sr3x 170eb25d10fSHelge Deller 171eb25d10fSHelge Deller# ... pa20 local 172eb25d10fSHelge Dellerpxtlb_l 000001 b:5 x:5 sp:2 01011000 m:1 ----- \ 173eb25d10fSHelge Deller &ldst disp=0 scale=0 size=0 t=0 174eb25d10fSHelge Dellerpxtlb_l 000001 b:5 x:5 ... 0011000 m:1 ----- \ 175eb25d10fSHelge Deller &ldst disp=0 scale=0 size=0 t=0 sp=%assemble_sr3x 176eb25d10fSHelge Deller 177eb25d10fSHelge Deller# pdtlbe, pitlbe 178eb25d10fSHelge Dellerpxtlbe 000001 b:5 x:5 sp:2 01001001 m:1 ----- \ 179eb25d10fSHelge Deller &ldst disp=0 scale=0 size=0 t=0 180eb25d10fSHelge Dellerpxtlbe 000001 b:5 x:5 ... 0001001 m:1 ----- \ 181eb25d10fSHelge Deller &ldst disp=0 scale=0 size=0 t=0 sp=%assemble_sr3x 182deee69a1SRichard Henderson 183deee69a1SRichard Hendersonlpa 000001 b:5 x:5 sp:2 01001101 m:1 t:5 \ 184deee69a1SRichard Henderson &ldst disp=0 scale=0 size=0 185deee69a1SRichard Henderson 186deee69a1SRichard Hendersonlci 000001 ----- ----- -- 01001100 0 t:5 1870c982a28SRichard Henderson 1880c982a28SRichard Henderson#### 1890c982a28SRichard Henderson# Arith/Log 1900c982a28SRichard Henderson#### 1910c982a28SRichard Henderson 192fa8e3bedSRichard Hendersonandcm 000010 ..... ..... .... 000000 . ..... @rrr_cf_d 193fa8e3bedSRichard Hendersonand 000010 ..... ..... .... 001000 . ..... @rrr_cf_d 194fa8e3bedSRichard Hendersonor 000010 ..... ..... .... 001001 . ..... @rrr_cf_d 195fa8e3bedSRichard Hendersonxor 000010 ..... ..... .... 001010 . ..... @rrr_cf_d 196af240753SRichard Hendersonuxor 000010 ..... ..... .... 001110 . ..... @rrr_cf_d 1970c982a28SRichard Hendersonds 000010 ..... ..... .... 010001 0 ..... @rrr_cf 198345aa35fSRichard Hendersoncmpclr 000010 ..... ..... .... 100010 . ..... @rrr_cf_d 199af240753SRichard Hendersonuaddcm 000010 ..... ..... .... 100110 . ..... @rrr_cf_d 200af240753SRichard Hendersonuaddcm_tc 000010 ..... ..... .... 100111 . ..... @rrr_cf_d 201af240753SRichard Hendersondcor 000010 ..... 00000 .... 101110 . ..... @rr_cf_d 202af240753SRichard Hendersondcor_i 000010 ..... 00000 .... 101111 . ..... @rr_cf_d 2030c982a28SRichard Henderson 204faf97ba1SRichard Hendersonadd 000010 ..... ..... .... 0110.. . ..... @rrr_cf_d_sh 205faf97ba1SRichard Hendersonadd_l 000010 ..... ..... .... 1010.. . ..... @rrr_cf_d_sh 206faf97ba1SRichard Hendersonadd_tsv 000010 ..... ..... .... 1110.. . ..... @rrr_cf_d_sh 2073bbb8e48SRichard Henderson{ 208faf97ba1SRichard Henderson add_c 000010 ..... ..... .... 011100 . ..... @rrr_cf_d_sh0 2093bbb8e48SRichard Henderson hshladd 000010 ..... ..... 0000 0111.. 0 ..... @rrr_sh 2103bbb8e48SRichard Henderson} 211faf97ba1SRichard Hendersonadd_c_tsv 000010 ..... ..... .... 111100 . ..... @rrr_cf_d_sh0 2120c982a28SRichard Henderson 21363c427c6SRichard Hendersonsub 000010 ..... ..... .... 010000 . ..... @rrr_cf_d 21463c427c6SRichard Hendersonsub_tsv 000010 ..... ..... .... 110000 . ..... @rrr_cf_d 21563c427c6SRichard Hendersonsub_tc 000010 ..... ..... .... 010011 . ..... @rrr_cf_d 21663c427c6SRichard Hendersonsub_tsv_tc 000010 ..... ..... .... 110011 . ..... @rrr_cf_d 2173bbb8e48SRichard Henderson{ 21863c427c6SRichard Henderson sub_b 000010 ..... ..... .... 010100 . ..... @rrr_cf_d 2193bbb8e48SRichard Henderson hshradd 000010 ..... ..... 0000 0101.. 0 ..... @rrr_sh 2203bbb8e48SRichard Henderson} 22163c427c6SRichard Hendersonsub_b_tsv 000010 ..... ..... .... 110100 . ..... @rrr_cf_d 2221cd012a5SRichard Henderson 2230588e061SRichard Hendersonldil 001000 t:5 ..................... i=%assemble_21 2240588e061SRichard Hendersonaddil 001010 r:5 ..................... i=%assemble_21 22572bace2dSRichard Hendersonldo 001101 b:5 t:5 ................ i=%assemble_16 2260588e061SRichard Henderson 2270588e061SRichard Hendersonaddi 101101 ..... ..... .... 0 ........... @rri_cf 2280588e061SRichard Hendersonaddi_tsv 101101 ..... ..... .... 1 ........... @rri_cf 2290588e061SRichard Hendersonaddi_tc 101100 ..... ..... .... 0 ........... @rri_cf 2300588e061SRichard Hendersonaddi_tc_tsv 101100 ..... ..... .... 1 ........... @rri_cf 2310588e061SRichard Henderson 2320588e061SRichard Hendersonsubi 100101 ..... ..... .... 0 ........... @rri_cf 2330588e061SRichard Hendersonsubi_tsv 100101 ..... ..... .... 1 ........... @rri_cf 2340588e061SRichard Henderson 235345aa35fSRichard Hendersoncmpiclr 100100 ..... ..... .... . ........... @rri_cf_d 2360588e061SRichard Henderson 2370843563fSRichard Hendersonhadd 000010 ..... ..... 00000011 11 0 ..... @rrr 2380843563fSRichard Hendersonhadd_ss 000010 ..... ..... 00000011 01 0 ..... @rrr 2390843563fSRichard Hendersonhadd_us 000010 ..... ..... 00000011 00 0 ..... @rrr 2400843563fSRichard Henderson 2411b3cb7c8SRichard Hendersonhavg 000010 ..... ..... 00000010 11 0 ..... @rrr 2421b3cb7c8SRichard Henderson 243151f309bSRichard Hendersonhshl 111110 00000 r:5 100010 i:4 0 t:5 &rri 244151f309bSRichard Hendersonhshr_s 111110 r:5 00000 110011 i:4 0 t:5 &rri 245151f309bSRichard Hendersonhshr_u 111110 r:5 00000 110010 i:4 0 t:5 &rri 246151f309bSRichard Henderson 24710c9e58dSRichard Hendersonhsub 000010 ..... ..... 00000001 11 0 ..... @rrr 24810c9e58dSRichard Hendersonhsub_ss 000010 ..... ..... 00000001 01 0 ..... @rrr 24910c9e58dSRichard Hendersonhsub_us 000010 ..... ..... 00000001 00 0 ..... @rrr 25010c9e58dSRichard Henderson 251c2a7ee3fSRichard Hendersonmixh_l 111110 ..... ..... 1 00 00100000 ..... @rrr 252c2a7ee3fSRichard Hendersonmixh_r 111110 ..... ..... 1 10 00100000 ..... @rrr 253c2a7ee3fSRichard Hendersonmixw_l 111110 ..... ..... 1 00 00000000 ..... @rrr 254c2a7ee3fSRichard Hendersonmixw_r 111110 ..... ..... 1 10 00000000 ..... @rrr 255c2a7ee3fSRichard Henderson 2564e7abdb1SRichard Hendersonpermh 111110 r1:5 r2:5 0 c0:2 0 c1:2 c2:2 c3:2 0 t:5 2574e7abdb1SRichard Henderson 2581cd012a5SRichard Henderson#### 2591cd012a5SRichard Henderson# Index Mem 2601cd012a5SRichard Henderson#### 2611cd012a5SRichard Henderson 2621cd012a5SRichard Henderson@ldstx ...... b:5 x:5 sp:2 scale:1 ....... m:1 t:5 &ldst disp=0 2631cd012a5SRichard Henderson@ldim5 ...... b:5 ..... sp:2 ......... t:5 \ 2641cd012a5SRichard Henderson &ldst disp=%im5_16 x=0 scale=0 m=%ma_to_m 2651cd012a5SRichard Henderson@stim5 ...... b:5 t:5 sp:2 ......... ..... \ 2661cd012a5SRichard Henderson &ldst disp=%im5_0 x=0 scale=0 m=%ma_to_m 2671cd012a5SRichard Henderson 2681cd012a5SRichard Hendersonld 000011 ..... ..... .. . 1 -- 00 size:2 ...... @ldim5 2691cd012a5SRichard Hendersonld 000011 ..... ..... .. . 0 -- 00 size:2 ...... @ldstx 2701cd012a5SRichard Hendersonst 000011 ..... ..... .. . 1 -- 10 size:2 ...... @stim5 2711cd012a5SRichard Hendersonldc 000011 ..... ..... .. . 1 -- 0111 ...... @ldim5 size=2 2721cd012a5SRichard Hendersonldc 000011 ..... ..... .. . 0 -- 0111 ...... @ldstx size=2 27351416c4eSRichard Hendersonldc 000011 ..... ..... .. . 1 -- 0101 ...... @ldim5 size=3 27451416c4eSRichard Hendersonldc 000011 ..... ..... .. . 0 -- 0101 ...... @ldstx size=3 2751cd012a5SRichard Hendersonlda 000011 ..... ..... .. . 1 -- 0110 ...... @ldim5 size=2 2761cd012a5SRichard Hendersonlda 000011 ..... ..... .. . 0 -- 0110 ...... @ldstx size=2 27751416c4eSRichard Hendersonlda 000011 ..... ..... .. . 1 -- 0100 ...... @ldim5 size=3 27851416c4eSRichard Hendersonlda 000011 ..... ..... .. . 0 -- 0100 ...... @ldstx size=3 2791cd012a5SRichard Hendersonsta 000011 ..... ..... .. . 1 -- 1110 ...... @stim5 size=2 28051416c4eSRichard Hendersonsta 000011 ..... ..... .. . 1 -- 1111 ...... @stim5 size=3 2811cd012a5SRichard Hendersonstby 000011 b:5 r:5 sp:2 a:1 1 -- 1100 m:1 ..... disp=%im5_0 28225460fc5SRichard Hendersonstdby 000011 b:5 r:5 sp:2 a:1 1 -- 1101 m:1 ..... disp=%im5_0 283b1e2af57SRichard Henderson 284e8777db7SRichard Henderson@fldstwx ...... b:5 x:5 sp:2 scale:1 ....... m:1 ..... \ 285e8777db7SRichard Henderson &ldst t=%rt64 disp=0 size=2 286e8777db7SRichard Henderson@fldstwi ...... b:5 ..... sp:2 . ....... . ..... \ 287e8777db7SRichard Henderson &ldst t=%rt64 disp=%im5_16 m=%ma_to_m x=0 scale=0 size=2 288e8777db7SRichard Henderson 289e8777db7SRichard Hendersonfldw 001001 ..... ..... .. . 0 -- 000 . . ..... @fldstwx 290e8777db7SRichard Hendersonfldw 001001 ..... ..... .. . 1 -- 000 . . ..... @fldstwi 291e8777db7SRichard Hendersonfstw 001001 ..... ..... .. . 0 -- 100 . . ..... @fldstwx 292e8777db7SRichard Hendersonfstw 001001 ..... ..... .. . 1 -- 100 . . ..... @fldstwi 293e8777db7SRichard Henderson 294e8777db7SRichard Henderson@fldstdx ...... b:5 x:5 sp:2 scale:1 ....... m:1 t:5 \ 295e8777db7SRichard Henderson &ldst disp=0 size=3 296e8777db7SRichard Henderson@fldstdi ...... b:5 ..... sp:2 . ....... . t:5 \ 297e8777db7SRichard Henderson &ldst disp=%im5_16 m=%ma_to_m x=0 scale=0 size=3 298e8777db7SRichard Henderson 299e8777db7SRichard Hendersonfldd 001011 ..... ..... .. . 0 -- 000 0 . ..... @fldstdx 300e8777db7SRichard Hendersonfldd 001011 ..... ..... .. . 1 -- 000 0 . ..... @fldstdi 301e8777db7SRichard Hendersonfstd 001011 ..... ..... .. . 0 -- 100 0 . ..... @fldstdx 302e8777db7SRichard Hendersonfstd 001011 ..... ..... .. . 1 -- 100 0 . ..... @fldstdi 303e8777db7SRichard Henderson 304b1e2af57SRichard Henderson#### 305740038d7SRichard Henderson# Offset Mem 306740038d7SRichard Henderson#### 307740038d7SRichard Henderson 3084768c28eSRichard Henderson@ldstim11 ...... b:5 t:5 ................ \ 3094768c28eSRichard Henderson &ldst sp=%assemble_sp disp=%assemble_11a \ 3104768c28eSRichard Henderson m=%ma2_to_m x=0 scale=0 size=3 31172bace2dSRichard Henderson@ldstim14 ...... b:5 t:5 ................ \ 31272bace2dSRichard Henderson &ldst sp=%assemble_sp disp=%assemble_16 \ 31372bace2dSRichard Henderson x=0 scale=0 m=0 31472bace2dSRichard Henderson@ldstim14m ...... b:5 t:5 ................ \ 31572bace2dSRichard Henderson &ldst sp=%assemble_sp disp=%assemble_16 \ 31672bace2dSRichard Henderson x=0 scale=0 m=%neg_to_m 31746174e14SRichard Henderson@ldstim12m ...... b:5 t:5 ................ \ 31846174e14SRichard Henderson &ldst sp=%assemble_sp disp=%assemble_12a \ 31946174e14SRichard Henderson x=0 scale=0 m=%pos_to_m 320740038d7SRichard Henderson 321740038d7SRichard Henderson# LDB, LDH, LDW, LDWM 322740038d7SRichard Hendersonld 010000 ..... ..... .. .............. @ldstim14 size=0 323740038d7SRichard Hendersonld 010001 ..... ..... .. .............. @ldstim14 size=1 324740038d7SRichard Hendersonld 010010 ..... ..... .. .............. @ldstim14 size=2 325740038d7SRichard Hendersonld 010011 ..... ..... .. .............. @ldstim14m size=2 326740038d7SRichard Hendersonld 010111 ..... ..... .. ...........10. @ldstim12m size=2 327740038d7SRichard Henderson 328740038d7SRichard Henderson# STB, STH, STW, STWM 329740038d7SRichard Hendersonst 011000 ..... ..... .. .............. @ldstim14 size=0 330740038d7SRichard Hendersonst 011001 ..... ..... .. .............. @ldstim14 size=1 331740038d7SRichard Hendersonst 011010 ..... ..... .. .............. @ldstim14 size=2 332740038d7SRichard Hendersonst 011011 ..... ..... .. .............. @ldstim14m size=2 333740038d7SRichard Hendersonst 011111 ..... ..... .. ...........10. @ldstim12m size=2 334740038d7SRichard Henderson 33546174e14SRichard Hendersonfldw 010110 b:5 ..... ................ \ 33646174e14SRichard Henderson &ldst disp=%assemble_12a sp=%assemble_sp \ 33746174e14SRichard Henderson t=%rm64 m=%a_to_m x=0 scale=0 size=2 33846174e14SRichard Hendersonfldw 010111 b:5 ..... .............0.. \ 33946174e14SRichard Henderson &ldst disp=%assemble_12a sp=%assemble_sp \ 34046174e14SRichard Henderson t=%rm64 m=0 x=0 scale=0 size=2 341740038d7SRichard Henderson 34246174e14SRichard Hendersonfstw 011110 b:5 ..... ................ \ 34346174e14SRichard Henderson &ldst disp=%assemble_12a sp=%assemble_sp \ 34446174e14SRichard Henderson t=%rm64 m=%a_to_m x=0 scale=0 size=2 34546174e14SRichard Hendersonfstw 011111 b:5 ..... .............0.. \ 34646174e14SRichard Henderson &ldst disp=%assemble_12a sp=%assemble_sp \ 34746174e14SRichard Henderson t=%rm64 m=0 x=0 scale=0 size=2 348740038d7SRichard Henderson 34951416c4eSRichard Hendersonld 010100 ..... ..... .. ............0. @ldstim11 35051416c4eSRichard Hendersonfldd 010100 ..... ..... .. ............1. @ldstim11 351740038d7SRichard Henderson 35251416c4eSRichard Hendersonst 011100 ..... ..... .. ............0. @ldstim11 35351416c4eSRichard Hendersonfstd 011100 ..... ..... .. ............1. @ldstim11 354740038d7SRichard Henderson 355740038d7SRichard Henderson#### 356b1e2af57SRichard Henderson# Floating-point Multiply Add 357b1e2af57SRichard Henderson#### 358b1e2af57SRichard Henderson 359b1e2af57SRichard Henderson&mpyadd rm1 rm2 ta ra tm 360b1e2af57SRichard Henderson@mpyadd ...... rm1:5 rm2:5 ta:5 ra:5 . tm:5 &mpyadd 361b1e2af57SRichard Henderson 362b1e2af57SRichard Hendersonfmpyadd_f 000110 ..... ..... ..... ..... 0 ..... @mpyadd 363b1e2af57SRichard Hendersonfmpyadd_d 000110 ..... ..... ..... ..... 1 ..... @mpyadd 364b1e2af57SRichard Hendersonfmpysub_f 100110 ..... ..... ..... ..... 0 ..... @mpyadd 365b1e2af57SRichard Hendersonfmpysub_d 100110 ..... ..... ..... ..... 1 ..... @mpyadd 36601afb7beSRichard Henderson 36701afb7beSRichard Henderson#### 36801afb7beSRichard Henderson# Conditional Branches 36901afb7beSRichard Henderson#### 37001afb7beSRichard Henderson 37184e224d4SRichard Hendersonbb_sar 110000 00000 r:5 c:1 1 d:1 ........... n:1 . disp=%assemble_12 37284e224d4SRichard Hendersonbb_imm 110001 p:5 r:5 c:1 1 d:1 ........... n:1 . disp=%assemble_12 37301afb7beSRichard Henderson 37401afb7beSRichard Hendersonmovb 110010 ..... ..... ... ........... . . @rrb_cf f=0 37501afb7beSRichard Hendersonmovbi 110011 ..... ..... ... ........... . . @rib_cf f=0 37601afb7beSRichard Henderson 377e9efd4bcSRichard Hendersoncmpb 100000 ..... ..... ... ........... . . @rrb_cdf d=0 f=0 378e9efd4bcSRichard Hendersoncmpb 100010 ..... ..... ... ........... . . @rrb_cdf d=0 f=1 379e9efd4bcSRichard Hendersoncmpb 100111 ..... ..... ... ........... . . @rrb_cdf d=1 f=0 380e9efd4bcSRichard Hendersoncmpb 101111 ..... ..... ... ........... . . @rrb_cdf d=1 f=1 381c65c3ee1SRichard Hendersoncmpbi 100001 ..... ..... ... ........... . . @rib_cdf d=0 f=0 382c65c3ee1SRichard Hendersoncmpbi 100011 ..... ..... ... ........... . . @rib_cdf d=0 f=1 383c65c3ee1SRichard Hendersoncmpbi 111011 r:5 ..... f:1 .. ........... n:1 . \ 384c65c3ee1SRichard Henderson &rib_c_d_f d=1 disp=%assemble_12 c=%cmpbid_c i=%im5_16 38501afb7beSRichard Henderson 38601afb7beSRichard Hendersonaddb 101000 ..... ..... ... ........... . . @rrb_cf f=0 38701afb7beSRichard Hendersonaddb 101010 ..... ..... ... ........... . . @rrb_cf f=1 38801afb7beSRichard Hendersonaddbi 101001 ..... ..... ... ........... . . @rib_cf f=0 38901afb7beSRichard Hendersonaddbi 101011 ..... ..... ... ........... . . @rib_cf f=1 39030878590SRichard Henderson 39130878590SRichard Henderson#### 39230878590SRichard Henderson# Shift, Extract, Deposit 39330878590SRichard Henderson#### 39430878590SRichard Henderson 395f7b775a9SRichard Hendersonshrp_sar 110100 r2:5 r1:5 c:3 00 0 d:1 0000 t:5 396f7b775a9SRichard Hendersonshrp_imm 110100 r2:5 r1:5 c:3 01 0 cpos:5 t:5 d=0 397f7b775a9SRichard Hendersonshrp_imm 110100 r2:5 r1:5 c:3 0. 1 ..... t:5 \ 398f7b775a9SRichard Henderson d=1 cpos=%cpos6_11 39930878590SRichard Henderson 400bd792da3SRichard Hendersonextr_sar 110100 r:5 t:5 c:3 10 se:1 00 000 ..... d=0 len=%len5 401bd792da3SRichard Hendersonextr_sar 110100 r:5 t:5 c:3 10 se:1 1. 000 ..... d=1 len=%len6_8 402bd792da3SRichard Hendersonextr_imm 110100 r:5 t:5 c:3 11 se:1 pos:5 ..... d=0 len=%len5 403bd792da3SRichard Hendersonextr_imm 110110 r:5 t:5 c:3 .. se:1 ..... ..... \ 404bd792da3SRichard Henderson d=1 len=%len6_12 pos=%cpos6_11 40530878590SRichard Henderson 40672ae4f2bSRichard Hendersondep_sar 110101 t:5 r:5 c:3 00 nz:1 00 000 ..... d=0 len=%len5 40772ae4f2bSRichard Hendersondep_sar 110101 t:5 r:5 c:3 00 nz:1 1. 000 ..... d=1 len=%len6_8 40872ae4f2bSRichard Hendersondep_imm 110101 t:5 r:5 c:3 01 nz:1 cpos:5 ..... d=0 len=%len5 40972ae4f2bSRichard Hendersondep_imm 111100 t:5 r:5 c:3 .. nz:1 ..... ..... \ 41072ae4f2bSRichard Henderson d=1 len=%len6_12 cpos=%cpos6_11 41172ae4f2bSRichard Hendersondepi_sar 110101 t:5 ..... c:3 10 nz:1 d:1 . 000 ..... \ 41272ae4f2bSRichard Henderson i=%im5_16 len=%len6_8 41372ae4f2bSRichard Hendersondepi_imm 110101 t:5 ..... c:3 11 nz:1 cpos:5 ..... \ 41472ae4f2bSRichard Henderson d=0 i=%im5_16 len=%len5 41572ae4f2bSRichard Hendersondepi_imm 111101 t:5 ..... c:3 .. nz:1 ..... ..... \ 41672ae4f2bSRichard Henderson d=1 i=%im5_16 len=%len6_12 cpos=%cpos6_11 4178340f534SRichard Henderson 4188340f534SRichard Henderson#### 4198340f534SRichard Henderson# Branch External 4208340f534SRichard Henderson#### 4218340f534SRichard Henderson 4228340f534SRichard Henderson&BE b l n disp sp 4238340f534SRichard Henderson@be ...... b:5 ..... ... ........... n:1 . \ 4248340f534SRichard Henderson &BE disp=%assemble_17 sp=%assemble_sr3 4258340f534SRichard Henderson 4268340f534SRichard Hendersonbe 111000 ..... ..... ... ........... . . @be l=0 4278340f534SRichard Hendersonbe 111001 ..... ..... ... ........... . . @be l=31 4288340f534SRichard Henderson 4298340f534SRichard Henderson#### 4308340f534SRichard Henderson# Branch 4318340f534SRichard Henderson#### 4328340f534SRichard Henderson 4338340f534SRichard Henderson&BL l n disp 4348340f534SRichard Henderson@bl ...... l:5 ..... ... ........... n:1 . &BL disp=%assemble_17 4358340f534SRichard Henderson 4368340f534SRichard Henderson# B,L and B,L,PUSH 4378340f534SRichard Hendersonbl 111010 ..... ..... 000 ........... . . @bl 4388340f534SRichard Hendersonbl 111010 ..... ..... 100 ........... . . @bl 4398340f534SRichard Henderson# B,L (long displacement) 4408340f534SRichard Hendersonbl 111010 ..... ..... 101 ........... n:1 . &BL l=2 \ 4418340f534SRichard Henderson disp=%assemble_22 4428340f534SRichard Hendersonb_gate 111010 ..... ..... 001 ........... . . @bl 4438340f534SRichard Hendersonblr 111010 l:5 x:5 010 00000000000 n:1 0 444a8966ba7SRichard Hendersonnopbts 111010 00000 00000 010 0---------1 0 1 # clrbts/popbts 445a8966ba7SRichard Hendersonnopbts 111010 00000 ----- 010 00000000000 0 1 # pushbts/pushnom 4468340f534SRichard Hendersonbv 111010 b:5 x:5 110 00000000000 n:1 0 4478340f534SRichard Hendersonbve 111010 b:5 00000 110 10000000000 n:1 - l=0 4488340f534SRichard Hendersonbve 111010 b:5 00000 111 10000000000 n:1 - l=2 449c3bad4f8SRichard Henderson 450c3bad4f8SRichard Henderson#### 451c3bad4f8SRichard Henderson# FP Fused Multiple-Add 452c3bad4f8SRichard Henderson#### 453c3bad4f8SRichard Henderson 454c3bad4f8SRichard Hendersonfmpyfadd_f 101110 ..... ..... ... . 0 ... . . neg:1 ..... \ 455c3bad4f8SRichard Henderson rm1=%ra64 rm2=%rb64 ra3=%rc64 t=%rt64 456c3bad4f8SRichard Hendersonfmpyfadd_d 101110 rm1:5 rm2:5 ... 0 1 ..0 0 0 neg:1 t:5 ra3=%rc32 4571ca74648SRichard Henderson 4581ca74648SRichard Henderson#### 4591ca74648SRichard Henderson# FP operations 4601ca74648SRichard Henderson#### 4611ca74648SRichard Henderson 4621ca74648SRichard Henderson&fclass01 r t 4631ca74648SRichard Henderson&fclass2 r1 r2 c y 4641ca74648SRichard Henderson&fclass3 r1 r2 t 4651ca74648SRichard Henderson 4661ca74648SRichard Henderson@f0c_0 ...... r:5 00000 ..... 00 000 0 t:5 &fclass01 4671ca74648SRichard Henderson@f0c_1 ...... r:5 000.. ..... 01 000 0 t:5 &fclass01 4681ca74648SRichard Henderson@f0c_2 ...... r1:5 r2:5 y:3 .. 10 000 . c:5 &fclass2 4691ca74648SRichard Henderson@f0c_3 ...... r1:5 r2:5 ..... 11 000 0 t:5 &fclass3 4701ca74648SRichard Henderson 4711ca74648SRichard Henderson@f0e_f_0 ...... ..... 00000 ... 0 0 000 .. 0 ..... \ 4721ca74648SRichard Henderson &fclass01 r=%ra64 t=%rt64 4731ca74648SRichard Henderson@f0e_d_0 ...... r:5 00000 ... 0 1 000 00 0 t:5 &fclass01 4741ca74648SRichard Henderson 4751ca74648SRichard Henderson@f0e_ff_1 ...... ..... 000 ... 0000 010 .. 0 ..... \ 4761ca74648SRichard Henderson &fclass01 r=%ra64 t=%rt64 4771ca74648SRichard Henderson@f0e_fd_1 ...... ..... 000 ... 0100 010 .0 0 t:5 &fclass01 r=%ra64 4781ca74648SRichard Henderson@f0e_df_1 ...... r:5 000 ... 0001 010 0. 0 ..... &fclass01 t=%rt64 4791ca74648SRichard Henderson@f0e_dd_1 ...... r:5 000 ... 0101 010 00 0 t:5 &fclass01 4801ca74648SRichard Henderson 4811ca74648SRichard Henderson@f0e_f_2 ...... ..... ..... y:3 .0 100 .00 c:5 \ 4821ca74648SRichard Henderson &fclass2 r1=%ra64 r2=%rb64 4831ca74648SRichard Henderson@f0e_d_2 ...... r1:5 r2:5 y:3 01 100 000 c:5 &fclass2 4841ca74648SRichard Henderson 4851ca74648SRichard Henderson@f0e_f_3 ...... ..... ..... ... .0 110 ..0 ..... \ 4861ca74648SRichard Henderson &fclass3 r1=%ra64 r2=%rb64 t=%rt64 4870843563fSRichard Henderson@f0e_d_3 ...... r1:5 r2:5 ... 01 110 000 t:5 &fclass3 4881ca74648SRichard Henderson 4891ca74648SRichard Henderson# Floating point class 0 4901ca74648SRichard Henderson 49159f8c04bSHelge Dellerfid_f 001100 00000 00000 000 00 000000 00000 4921ca74648SRichard Henderson 4931ca74648SRichard Hendersonfcpy_f 001100 ..... ..... 010 00 ...... ..... @f0c_0 4941ca74648SRichard Hendersonfabs_f 001100 ..... ..... 011 00 ...... ..... @f0c_0 4951ca74648SRichard Hendersonfsqrt_f 001100 ..... ..... 100 00 ...... ..... @f0c_0 4961ca74648SRichard Hendersonfrnd_f 001100 ..... ..... 101 00 ...... ..... @f0c_0 4971ca74648SRichard Hendersonfneg_f 001100 ..... ..... 110 00 ...... ..... @f0c_0 4981ca74648SRichard Hendersonfnegabs_f 001100 ..... ..... 111 00 ...... ..... @f0c_0 4991ca74648SRichard Henderson 5001ca74648SRichard Hendersonfcpy_d 001100 ..... ..... 010 01 ...... ..... @f0c_0 5011ca74648SRichard Hendersonfabs_d 001100 ..... ..... 011 01 ...... ..... @f0c_0 5021ca74648SRichard Hendersonfsqrt_d 001100 ..... ..... 100 01 ...... ..... @f0c_0 5031ca74648SRichard Hendersonfrnd_d 001100 ..... ..... 101 01 ...... ..... @f0c_0 5041ca74648SRichard Hendersonfneg_d 001100 ..... ..... 110 01 ...... ..... @f0c_0 5051ca74648SRichard Hendersonfnegabs_d 001100 ..... ..... 111 01 ...... ..... @f0c_0 5061ca74648SRichard Henderson 5071ca74648SRichard Hendersonfcpy_f 001110 ..... ..... 010 ........ ..... @f0e_f_0 5081ca74648SRichard Hendersonfabs_f 001110 ..... ..... 011 ........ ..... @f0e_f_0 5091ca74648SRichard Hendersonfsqrt_f 001110 ..... ..... 100 ........ ..... @f0e_f_0 5101ca74648SRichard Hendersonfrnd_f 001110 ..... ..... 101 ........ ..... @f0e_f_0 5111ca74648SRichard Hendersonfneg_f 001110 ..... ..... 110 ........ ..... @f0e_f_0 5121ca74648SRichard Hendersonfnegabs_f 001110 ..... ..... 111 ........ ..... @f0e_f_0 5131ca74648SRichard Henderson 5141ca74648SRichard Hendersonfcpy_d 001110 ..... ..... 010 ........ ..... @f0e_d_0 5151ca74648SRichard Hendersonfabs_d 001110 ..... ..... 011 ........ ..... @f0e_d_0 5161ca74648SRichard Hendersonfsqrt_d 001110 ..... ..... 100 ........ ..... @f0e_d_0 5171ca74648SRichard Hendersonfrnd_d 001110 ..... ..... 101 ........ ..... @f0e_d_0 5181ca74648SRichard Hendersonfneg_d 001110 ..... ..... 110 ........ ..... @f0e_d_0 5191ca74648SRichard Hendersonfnegabs_d 001110 ..... ..... 111 ........ ..... @f0e_d_0 5201ca74648SRichard Henderson 5211ca74648SRichard Henderson# Floating point class 1 5221ca74648SRichard Henderson 5231ca74648SRichard Henderson# float/float 5241ca74648SRichard Hendersonfcnv_d_f 001100 ..... ... 000 00 01 ...... ..... @f0c_1 5251ca74648SRichard Hendersonfcnv_f_d 001100 ..... ... 000 01 00 ...... ..... @f0c_1 5261ca74648SRichard Henderson 5271ca74648SRichard Hendersonfcnv_d_f 001110 ..... ... 000 .......... ..... @f0e_df_1 5281ca74648SRichard Hendersonfcnv_f_d 001110 ..... ... 000 .......... ..... @f0e_fd_1 5291ca74648SRichard Henderson 5301ca74648SRichard Henderson# int/float 5311ca74648SRichard Hendersonfcnv_w_f 001100 ..... ... 001 00 00 ...... ..... @f0c_1 5321ca74648SRichard Hendersonfcnv_q_f 001100 ..... ... 001 00 01 ...... ..... @f0c_1 5331ca74648SRichard Hendersonfcnv_w_d 001100 ..... ... 001 01 00 ...... ..... @f0c_1 5341ca74648SRichard Hendersonfcnv_q_d 001100 ..... ... 001 01 01 ...... ..... @f0c_1 5351ca74648SRichard Henderson 5361ca74648SRichard Hendersonfcnv_w_f 001110 ..... ... 001 .......... ..... @f0e_ff_1 5371ca74648SRichard Hendersonfcnv_q_f 001110 ..... ... 001 .......... ..... @f0e_df_1 5381ca74648SRichard Hendersonfcnv_w_d 001110 ..... ... 001 .......... ..... @f0e_fd_1 5391ca74648SRichard Hendersonfcnv_q_d 001110 ..... ... 001 .......... ..... @f0e_dd_1 5401ca74648SRichard Henderson 5411ca74648SRichard Henderson# float/int 5421ca74648SRichard Hendersonfcnv_f_w 001100 ..... ... 010 00 00 ...... ..... @f0c_1 5431ca74648SRichard Hendersonfcnv_d_w 001100 ..... ... 010 00 01 ...... ..... @f0c_1 5441ca74648SRichard Hendersonfcnv_f_q 001100 ..... ... 010 01 00 ...... ..... @f0c_1 5451ca74648SRichard Hendersonfcnv_d_q 001100 ..... ... 010 01 01 ...... ..... @f0c_1 5461ca74648SRichard Henderson 5471ca74648SRichard Hendersonfcnv_f_w 001110 ..... ... 010 .......... ..... @f0e_ff_1 5481ca74648SRichard Hendersonfcnv_d_w 001110 ..... ... 010 .......... ..... @f0e_df_1 5491ca74648SRichard Hendersonfcnv_f_q 001110 ..... ... 010 .......... ..... @f0e_fd_1 5501ca74648SRichard Hendersonfcnv_d_q 001110 ..... ... 010 .......... ..... @f0e_dd_1 5511ca74648SRichard Henderson 5521ca74648SRichard Henderson# float/int truncate 5531ca74648SRichard Hendersonfcnv_t_f_w 001100 ..... ... 011 00 00 ...... ..... @f0c_1 5541ca74648SRichard Hendersonfcnv_t_d_w 001100 ..... ... 011 00 01 ...... ..... @f0c_1 5551ca74648SRichard Hendersonfcnv_t_f_q 001100 ..... ... 011 01 00 ...... ..... @f0c_1 5561ca74648SRichard Hendersonfcnv_t_d_q 001100 ..... ... 011 01 01 ...... ..... @f0c_1 5571ca74648SRichard Henderson 5581ca74648SRichard Hendersonfcnv_t_f_w 001110 ..... ... 011 .......... ..... @f0e_ff_1 5591ca74648SRichard Hendersonfcnv_t_d_w 001110 ..... ... 011 .......... ..... @f0e_df_1 5601ca74648SRichard Hendersonfcnv_t_f_q 001110 ..... ... 011 .......... ..... @f0e_fd_1 5611ca74648SRichard Hendersonfcnv_t_d_q 001110 ..... ... 011 .......... ..... @f0e_dd_1 5621ca74648SRichard Henderson 5631ca74648SRichard Henderson# uint/float 5641ca74648SRichard Hendersonfcnv_uw_f 001100 ..... ... 101 00 00 ...... ..... @f0c_1 5651ca74648SRichard Hendersonfcnv_uq_f 001100 ..... ... 101 00 01 ...... ..... @f0c_1 5661ca74648SRichard Hendersonfcnv_uw_d 001100 ..... ... 101 01 00 ...... ..... @f0c_1 5671ca74648SRichard Hendersonfcnv_uq_d 001100 ..... ... 101 01 01 ...... ..... @f0c_1 5681ca74648SRichard Henderson 5691ca74648SRichard Hendersonfcnv_uw_f 001110 ..... ... 101 .......... ..... @f0e_ff_1 5701ca74648SRichard Hendersonfcnv_uq_f 001110 ..... ... 101 .......... ..... @f0e_df_1 5711ca74648SRichard Hendersonfcnv_uw_d 001110 ..... ... 101 .......... ..... @f0e_fd_1 5721ca74648SRichard Hendersonfcnv_uq_d 001110 ..... ... 101 .......... ..... @f0e_dd_1 5731ca74648SRichard Henderson 5741ca74648SRichard Henderson# float/int 5751ca74648SRichard Hendersonfcnv_f_uw 001100 ..... ... 110 00 00 ...... ..... @f0c_1 5761ca74648SRichard Hendersonfcnv_d_uw 001100 ..... ... 110 00 01 ...... ..... @f0c_1 5771ca74648SRichard Hendersonfcnv_f_uq 001100 ..... ... 110 01 00 ...... ..... @f0c_1 5781ca74648SRichard Hendersonfcnv_d_uq 001100 ..... ... 110 01 01 ...... ..... @f0c_1 5791ca74648SRichard Henderson 5801ca74648SRichard Hendersonfcnv_f_uw 001110 ..... ... 110 .......... ..... @f0e_ff_1 5811ca74648SRichard Hendersonfcnv_d_uw 001110 ..... ... 110 .......... ..... @f0e_df_1 5821ca74648SRichard Hendersonfcnv_f_uq 001110 ..... ... 110 .......... ..... @f0e_fd_1 5831ca74648SRichard Hendersonfcnv_d_uq 001110 ..... ... 110 .......... ..... @f0e_dd_1 5841ca74648SRichard Henderson 5851ca74648SRichard Henderson# float/int truncate 5861ca74648SRichard Hendersonfcnv_t_f_uw 001100 ..... ... 111 00 00 ...... ..... @f0c_1 5871ca74648SRichard Hendersonfcnv_t_d_uw 001100 ..... ... 111 00 01 ...... ..... @f0c_1 5881ca74648SRichard Hendersonfcnv_t_f_uq 001100 ..... ... 111 01 00 ...... ..... @f0c_1 5891ca74648SRichard Hendersonfcnv_t_d_uq 001100 ..... ... 111 01 01 ...... ..... @f0c_1 5901ca74648SRichard Henderson 5911ca74648SRichard Hendersonfcnv_t_f_uw 001110 ..... ... 111 .......... ..... @f0e_ff_1 5921ca74648SRichard Hendersonfcnv_t_d_uw 001110 ..... ... 111 .......... ..... @f0e_df_1 5931ca74648SRichard Hendersonfcnv_t_f_uq 001110 ..... ... 111 .......... ..... @f0e_fd_1 5941ca74648SRichard Hendersonfcnv_t_d_uq 001110 ..... ... 111 .......... ..... @f0e_dd_1 5951ca74648SRichard Henderson 5961ca74648SRichard Henderson# Floating point class 2 5971ca74648SRichard Henderson 5981ca74648SRichard Hendersonftest 001100 00000 00000 y:3 00 10000 1 c:5 5991ca74648SRichard Henderson 6001ca74648SRichard Hendersonfcmp_f 001100 ..... ..... ... 00 ..... 0 ..... @f0c_2 6011ca74648SRichard Hendersonfcmp_d 001100 ..... ..... ... 01 ..... 0 ..... @f0c_2 6021ca74648SRichard Henderson 6031ca74648SRichard Hendersonfcmp_f 001110 ..... ..... ... ..... ... ..... @f0e_f_2 6041ca74648SRichard Hendersonfcmp_d 001110 ..... ..... ... ..... ... ..... @f0e_d_2 6051ca74648SRichard Henderson 6061ca74648SRichard Henderson# Floating point class 3 6071ca74648SRichard Henderson 6081ca74648SRichard Hendersonfadd_f 001100 ..... ..... 000 00 ...... ..... @f0c_3 6091ca74648SRichard Hendersonfsub_f 001100 ..... ..... 001 00 ...... ..... @f0c_3 6101ca74648SRichard Hendersonfmpy_f 001100 ..... ..... 010 00 ...... ..... @f0c_3 6111ca74648SRichard Hendersonfdiv_f 001100 ..... ..... 011 00 ...... ..... @f0c_3 6121ca74648SRichard Henderson 6131ca74648SRichard Hendersonfadd_d 001100 ..... ..... 000 01 ...... ..... @f0c_3 6141ca74648SRichard Hendersonfsub_d 001100 ..... ..... 001 01 ...... ..... @f0c_3 6151ca74648SRichard Hendersonfmpy_d 001100 ..... ..... 010 01 ...... ..... @f0c_3 6161ca74648SRichard Hendersonfdiv_d 001100 ..... ..... 011 01 ...... ..... @f0c_3 6171ca74648SRichard Henderson 6181ca74648SRichard Hendersonfadd_f 001110 ..... ..... 000 ..... ... ..... @f0e_f_3 6191ca74648SRichard Hendersonfsub_f 001110 ..... ..... 001 ..... ... ..... @f0e_f_3 6201ca74648SRichard Hendersonfmpy_f 001110 ..... ..... 010 ..... ... ..... @f0e_f_3 6211ca74648SRichard Hendersonfdiv_f 001110 ..... ..... 011 ..... ... ..... @f0e_f_3 6221ca74648SRichard Henderson 6231ca74648SRichard Hendersonfadd_d 001110 ..... ..... 000 ..... ... ..... @f0e_d_3 6241ca74648SRichard Hendersonfsub_d 001110 ..... ..... 001 ..... ... ..... @f0e_d_3 6251ca74648SRichard Hendersonfmpy_d 001110 ..... ..... 010 ..... ... ..... @f0e_d_3 6261ca74648SRichard Hendersonfdiv_d 001110 ..... ..... 011 ..... ... ..... @f0e_d_3 6271ca74648SRichard Henderson 6281ca74648SRichard Hendersonxmpyu 001110 ..... ..... 010 .0111 .00 t:5 r1=%ra64 r2=%rb64 62915da177bSSven Schnelle 63015da177bSSven Schnelle# diag 631a64b8842SHelge Dellerdiag 000101 i:26 632