1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799 |
- /* DO NOT EDIT! -*- buffer-read-only: t -*-
- This file is automatically generated by z8kgen. */
- /* Copyright (C) 2007-2022 Free Software Foundation, Inc.
- This file is part of the GNU opcodes library.
- This library is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
- It is distributed in the hope that it will be useful, but WITHOUT
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
- License for more details.
- You should have received a copy of the GNU General Public License
- along with this file; see the file COPYING. If not, write to the
- Free Software Foundation, 51 Franklin Street - Fifth Floor, Boston,
- MA 02110-1301, USA. */
- #define ARG_MASK 0x0f
- #define ARG_SRC 0x01
- #define ARG_DST 0x02
- #define ARG_RS 0x01
- #define ARG_RD 0x02
- #define ARG_RA 0x03
- #define ARG_RB 0x04
- #define ARG_RR 0x05
- #define ARG_RX 0x06
- #define ARG_IMM4 0x01
- #define ARG_IMM8 0x02
- #define ARG_IMM16 0x03
- #define ARG_IMM32 0x04
- #define ARG_IMMN 0x05
- #define ARG_IMMNMINUS1 0x05
- #define ARG_IMM_1 0x06
- #define ARG_IMM_2 0x07
- #define ARG_DISP16 0x08
- #define ARG_NIM8 0x09
- #define ARG_IMM2 0x0a
- #define ARG_IMM1OR2 0x0b
- #define ARG_DISP12 0x0b
- #define ARG_NIM4 0x0c
- #define ARG_DISP8 0x0c
- #define ARG_IMM4M1 0x0d
- #define CLASS_X 0x10
- #define CLASS_BA 0x20
- #define CLASS_DA 0x30
- #define CLASS_BX 0x40
- #define CLASS_DISP 0x50
- #define CLASS_IMM 0x60
- #define CLASS_CC 0x70
- #define CLASS_CTRL 0x80
- #define CLASS_IGNORE 0x90
- #define CLASS_ADDRESS 0xd0
- #define CLASS_0CCC 0xe0
- #define CLASS_1CCC 0xf0
- #define CLASS_0DISP7 0x100
- #define CLASS_1DISP7 0x200
- #define CLASS_01II 0x300
- #define CLASS_00II 0x400
- #define CLASS_BIT 0x500
- #define CLASS_FLAGS 0x600
- #define CLASS_IR 0x700
- #define CLASS_IRO 0x800
- #define CLASS_DISP8 0x900
- #define CLASS_BIT_1OR2 0xa00
- #define CLASS_REG 0x7000
- #define CLASS_REG_BYTE 0x2000
- #define CLASS_REG_WORD 0x3000
- #define CLASS_REG_QUAD 0x4000
- #define CLASS_REG_LONG 0x5000
- #define CLASS_REGN0 0x8000
- #define CLASS_PR 0x10000
- #define CLASS_MASK 0x1fff0
- #define OPC_adc 0
- #define OPC_adcb 1
- #define OPC_add 2
- #define OPC_addb 3
- #define OPC_addl 4
- #define OPC_and 5
- #define OPC_andb 6
- #define OPC_bit 7
- #define OPC_bitb 8
- #define OPC_call 9
- #define OPC_calr 10
- #define OPC_clr 11
- #define OPC_clrb 12
- #define OPC_com 13
- #define OPC_comb 14
- #define OPC_comflg 15
- #define OPC_cp 16
- #define OPC_cpb 17
- #define OPC_cpd 18
- #define OPC_cpdb 19
- #define OPC_cpdr 20
- #define OPC_cpdrb 21
- #define OPC_cpi 22
- #define OPC_cpib 23
- #define OPC_cpir 24
- #define OPC_cpirb 25
- #define OPC_cpl 26
- #define OPC_cpsd 27
- #define OPC_cpsdb 28
- #define OPC_cpsdr 29
- #define OPC_cpsdrb 30
- #define OPC_cpsi 31
- #define OPC_cpsib 32
- #define OPC_cpsir 33
- #define OPC_cpsirb 34
- #define OPC_dab 35
- #define OPC_dbjnz 36
- #define OPC_dec 37
- #define OPC_decb 38
- #define OPC_di 39
- #define OPC_div 40
- #define OPC_divl 41
- #define OPC_djnz 42
- #define OPC_ei 43
- #define OPC_ex 44
- #define OPC_exb 45
- #define OPC_exts 46
- #define OPC_extsb 47
- #define OPC_extsl 48
- #define OPC_halt 49
- #define OPC_in 50
- #define OPC_inb 51
- #define OPC_inc 52
- #define OPC_incb 53
- #define OPC_ind 54
- #define OPC_indb 55
- #define OPC_indr 56
- #define OPC_indrb 57
- #define OPC_ini 58
- #define OPC_inib 59
- #define OPC_inir 60
- #define OPC_inirb 61
- #define OPC_iret 62
- #define OPC_jp 63
- #define OPC_jr 64
- #define OPC_ld 65
- #define OPC_lda 66
- #define OPC_ldar 67
- #define OPC_ldb 68
- #define OPC_ldctl 69
- #define OPC_ldir 70
- #define OPC_ldirb 71
- #define OPC_ldk 72
- #define OPC_ldl 73
- #define OPC_ldm 74
- #define OPC_ldps 75
- #define OPC_ldr 76
- #define OPC_ldrb 77
- #define OPC_ldrl 78
- #define OPC_mbit 79
- #define OPC_mreq 80
- #define OPC_mres 81
- #define OPC_mset 82
- #define OPC_mult 83
- #define OPC_multl 84
- #define OPC_neg 85
- #define OPC_negb 86
- #define OPC_nop 87
- #define OPC_or 88
- #define OPC_orb 89
- #define OPC_otdr 90
- #define OPC_otdrb 91
- #define OPC_otir 92
- #define OPC_otirb 93
- #define OPC_out 94
- #define OPC_outb 95
- #define OPC_outd 96
- #define OPC_outdb 97
- #define OPC_outi 98
- #define OPC_outib 99
- #define OPC_pop 100
- #define OPC_popl 101
- #define OPC_push 102
- #define OPC_pushl 103
- #define OPC_res 104
- #define OPC_resb 105
- #define OPC_resflg 106
- #define OPC_ret 107
- #define OPC_rl 108
- #define OPC_rlb 109
- #define OPC_rlc 110
- #define OPC_rlcb 111
- #define OPC_rldb 112
- #define OPC_rr 113
- #define OPC_rrb 114
- #define OPC_rrc 115
- #define OPC_rrcb 116
- #define OPC_rrdb 117
- #define OPC_sbc 118
- #define OPC_sbcb 119
- #define OPC_sda 120
- #define OPC_sdab 121
- #define OPC_sdal 122
- #define OPC_sdl 123
- #define OPC_sdlb 124
- #define OPC_sdll 125
- #define OPC_set 126
- #define OPC_setb 127
- #define OPC_setflg 128
- #define OPC_sin 129
- #define OPC_sinb 130
- #define OPC_sind 131
- #define OPC_sindb 132
- #define OPC_sindr 133
- #define OPC_sindrb 134
- #define OPC_sini 135
- #define OPC_sinib 136
- #define OPC_sinir 137
- #define OPC_sinirb 138
- #define OPC_sla 139
- #define OPC_slab 140
- #define OPC_slal 141
- #define OPC_sll 142
- #define OPC_sllb 143
- #define OPC_slll 144
- #define OPC_sotdr 145
- #define OPC_sotdrb 146
- #define OPC_sotir 147
- #define OPC_sotirb 148
- #define OPC_sout 149
- #define OPC_soutb 150
- #define OPC_soutd 151
- #define OPC_soutdb 152
- #define OPC_souti 153
- #define OPC_soutib 154
- #define OPC_sra 155
- #define OPC_srab 156
- #define OPC_sral 157
- #define OPC_srl 158
- #define OPC_srlb 159
- #define OPC_srll 160
- #define OPC_sub 161
- #define OPC_subb 162
- #define OPC_subl 163
- #define OPC_tcc 164
- #define OPC_tccb 165
- #define OPC_test 166
- #define OPC_testb 167
- #define OPC_testl 168
- #define OPC_trdb 169
- #define OPC_trdrb 170
- #define OPC_trib 171
- #define OPC_trirb 172
- #define OPC_trtdrb 173
- #define OPC_trtib 174
- #define OPC_trtirb 175
- #define OPC_trtrb 176
- #define OPC_tset 177
- #define OPC_tsetb 178
- #define OPC_xor 179
- #define OPC_xorb 180
- #define OPC_ldd 181
- #define OPC_lddb 182
- #define OPC_lddr 183
- #define OPC_lddrb 184
- #define OPC_ldi 185
- #define OPC_ldib 186
- #define OPC_sc 187
- #define OPC_bpt 188
- #define OPC_ext0e 188
- #define OPC_ext0f 188
- #define OPC_ext8e 188
- #define OPC_ext8f 188
- #define OPC_rsvd36 188
- #define OPC_rsvd38 188
- #define OPC_rsvd78 188
- #define OPC_rsvd7e 188
- #define OPC_rsvd9d 188
- #define OPC_rsvd9f 188
- #define OPC_rsvdb9 188
- #define OPC_rsvdbf 188
- #define OPC_ldctlb 189
- #define OPC_trtdb 190
- #define OPC_brk 191
- typedef struct {
- #ifdef NICENAMES
- const char *nicename;
- int type;
- int cycles;
- int flags;
- #endif
- const char *name;
- unsigned char opcode;
- void (*func) (void);
- unsigned int arg_info[4];
- unsigned int byte_info[10];
- unsigned int noperands;
- unsigned int length;
- unsigned int idx;
- } opcode_entry_type;
- #ifdef DEFINE_TABLE
- const opcode_entry_type z8k_table[] = {
- /* 1011 0101 ssss dddd *** adc rd,rs */
- {
- #ifdef NICENAMES
- "adc rd,rs",16,5,0x3c,
- #endif
- "adc",OPC_adc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+0xb,CLASS_BIT+5,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,0},
- /* 1011 0100 ssss dddd *** adcb rbd,rbs */
- {
- #ifdef NICENAMES
- "adcb rbd,rbs",8,5,0x3f,
- #endif
- "adcb",OPC_adcb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+0xb,CLASS_BIT+4,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,1},
- /* 0000 0001 ssN0 dddd *** add rd,@rs */
- {
- #ifdef NICENAMES
- "add rd,@rs",16,7,0x3c,
- #endif
- "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+0,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,2},
- /* 0100 0001 0000 dddd address_src *** add rd,address_src */
- {
- #ifdef NICENAMES
- "add rd,address_src",16,9,0x3c,
- #endif
- "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+4,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,2},
- /* 0100 0001 ssN0 dddd address_src *** add rd,address_src(rs) */
- {
- #ifdef NICENAMES
- "add rd,address_src(rs)",16,10,0x3c,
- #endif
- "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+4,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,2},
- /* 0000 0001 0000 dddd imm16 *** add rd,imm16 */
- {
- #ifdef NICENAMES
- "add rd,imm16",16,7,0x3c,
- #endif
- "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+0,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,2},
- /* 1000 0001 ssss dddd *** add rd,rs */
- {
- #ifdef NICENAMES
- "add rd,rs",16,4,0x3c,
- #endif
- "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+8,CLASS_BIT+1,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,2},
- /* 0000 0000 ssN0 dddd *** addb rbd,@rs */
- {
- #ifdef NICENAMES
- "addb rbd,@rs",8,7,0x3f,
- #endif
- "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+0,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,3},
- /* 0100 0000 0000 dddd address_src *** addb rbd,address_src */
- {
- #ifdef NICENAMES
- "addb rbd,address_src",8,9,0x3f,
- #endif
- "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+4,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,3},
- /* 0100 0000 ssN0 dddd address_src *** addb rbd,address_src(rs) */
- {
- #ifdef NICENAMES
- "addb rbd,address_src(rs)",8,10,0x3f,
- #endif
- "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+4,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,3},
- /* 0000 0000 0000 dddd imm8 imm8 *** addb rbd,imm8 */
- {
- #ifdef NICENAMES
- "addb rbd,imm8",8,7,0x3f,
- #endif
- "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,3},
- /* 1000 0000 ssss dddd *** addb rbd,rbs */
- {
- #ifdef NICENAMES
- "addb rbd,rbs",8,4,0x3f,
- #endif
- "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,3},
- /* 0001 0110 ssN0 dddd *** addl rrd,@rs */
- {
- #ifdef NICENAMES
- "addl rrd,@rs",32,14,0x3c,
- #endif
- "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+1,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,4},
- /* 0101 0110 0000 dddd address_src *** addl rrd,address_src */
- {
- #ifdef NICENAMES
- "addl rrd,address_src",32,15,0x3c,
- #endif
- "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+5,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,4},
- /* 0101 0110 ssN0 dddd address_src *** addl rrd,address_src(rs) */
- {
- #ifdef NICENAMES
- "addl rrd,address_src(rs)",32,16,0x3c,
- #endif
- "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,4},
- /* 0001 0110 0000 dddd imm32 *** addl rrd,imm32 */
- {
- #ifdef NICENAMES
- "addl rrd,imm32",32,14,0x3c,
- #endif
- "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
- {CLASS_BIT+1,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,4},
- /* 1001 0110 ssss dddd *** addl rrd,rrs */
- {
- #ifdef NICENAMES
- "addl rrd,rrs",32,8,0x3c,
- #endif
- "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
- {CLASS_BIT+9,CLASS_BIT+6,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,4},
- /* 0000 0111 ssN0 dddd *** and rd,@rs */
- {
- #ifdef NICENAMES
- "and rd,@rs",16,7,0x18,
- #endif
- "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+0,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,5},
- /* 0100 0111 0000 dddd address_src *** and rd,address_src */
- {
- #ifdef NICENAMES
- "and rd,address_src",16,9,0x18,
- #endif
- "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+4,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,5},
- /* 0100 0111 ssN0 dddd address_src *** and rd,address_src(rs) */
- {
- #ifdef NICENAMES
- "and rd,address_src(rs)",16,10,0x18,
- #endif
- "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+4,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,5},
- /* 0000 0111 0000 dddd imm16 *** and rd,imm16 */
- {
- #ifdef NICENAMES
- "and rd,imm16",16,7,0x18,
- #endif
- "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+0,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,5},
- /* 1000 0111 ssss dddd *** and rd,rs */
- {
- #ifdef NICENAMES
- "and rd,rs",16,4,0x18,
- #endif
- "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+8,CLASS_BIT+7,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,5},
- /* 0000 0110 ssN0 dddd *** andb rbd,@rs */
- {
- #ifdef NICENAMES
- "andb rbd,@rs",8,7,0x1c,
- #endif
- "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+0,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,6},
- /* 0100 0110 0000 dddd address_src *** andb rbd,address_src */
- {
- #ifdef NICENAMES
- "andb rbd,address_src",8,9,0x1c,
- #endif
- "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+4,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,6},
- /* 0100 0110 ssN0 dddd address_src *** andb rbd,address_src(rs) */
- {
- #ifdef NICENAMES
- "andb rbd,address_src(rs)",8,10,0x1c,
- #endif
- "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+4,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,6},
- /* 0000 0110 0000 dddd imm8 imm8 *** andb rbd,imm8 */
- {
- #ifdef NICENAMES
- "andb rbd,imm8",8,7,0x1c,
- #endif
- "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,6},
- /* 1000 0110 ssss dddd *** andb rbd,rbs */
- {
- #ifdef NICENAMES
- "andb rbd,rbs",8,4,0x1c,
- #endif
- "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+8,CLASS_BIT+6,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,6},
- /* 0010 0111 ddN0 imm4 *** bit @rd,imm4 */
- {
- #ifdef NICENAMES
- "bit @rd,imm4",16,8,0x10,
- #endif
- "bit",OPC_bit,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+2,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,7},
- /* 0110 0111 ddN0 imm4 address_dst *** bit address_dst(rd),imm4 */
- {
- #ifdef NICENAMES
- "bit address_dst(rd),imm4",16,11,0x10,
- #endif
- "bit",OPC_bit,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+6,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,7},
- /* 0110 0111 0000 imm4 address_dst *** bit address_dst,imm4 */
- {
- #ifdef NICENAMES
- "bit address_dst,imm4",16,10,0x10,
- #endif
- "bit",OPC_bit,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+6,CLASS_BIT+7,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,7},
- /* 1010 0111 dddd imm4 *** bit rd,imm4 */
- {
- #ifdef NICENAMES
- "bit rd,imm4",16,4,0x10,
- #endif
- "bit",OPC_bit,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+0xa,CLASS_BIT+7,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,7},
- /* 0010 0111 0000 ssss 0000 dddd 0000 0000 *** bit rd,rs */
- {
- #ifdef NICENAMES
- "bit rd,rs",16,10,0x10,
- #endif
- "bit",OPC_bit,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+2,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,7},
- /* 0010 0110 ddN0 imm4 *** bitb @rd,imm4 */
- {
- #ifdef NICENAMES
- "bitb @rd,imm4",8,8,0x10,
- #endif
- "bitb",OPC_bitb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+2,CLASS_BIT+6,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,8},
- /* 0110 0110 ddN0 imm4 address_dst *** bitb address_dst(rd),imm4 */
- {
- #ifdef NICENAMES
- "bitb address_dst(rd),imm4",8,11,0x10,
- #endif
- "bitb",OPC_bitb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+6,CLASS_BIT+6,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,8},
- /* 0110 0110 0000 imm4 address_dst *** bitb address_dst,imm4 */
- {
- #ifdef NICENAMES
- "bitb address_dst,imm4",8,10,0x10,
- #endif
- "bitb",OPC_bitb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+6,CLASS_BIT+6,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,8},
- /* 1010 0110 dddd imm4 *** bitb rbd,imm4 */
- {
- #ifdef NICENAMES
- "bitb rbd,imm4",8,4,0x10,
- #endif
- "bitb",OPC_bitb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+0xa,CLASS_BIT+6,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,8},
- /* 0010 0110 0000 ssss 0000 dddd 0000 0000 *** bitb rbd,rs */
- {
- #ifdef NICENAMES
- "bitb rbd,rs",8,10,0x10,
- #endif
- "bitb",OPC_bitb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+2,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,8},
- /* 0011 0110 0000 0000 *** bpt */
- {
- #ifdef NICENAMES
- "bpt",8,2,0x00,
- #endif
- "bpt",OPC_bpt,0,{0},
- {CLASS_BIT+3,CLASS_BIT+6,CLASS_BIT+0,CLASS_BIT+0,0,0,0,0,0,},0,2,9},
- /* 0000 1111 0000 1100 *** brk */
- {
- #ifdef NICENAMES
- "brk",8,10,0x00,
- #endif
- "brk",OPC_brk,0,{0},
- {CLASS_BIT+0,CLASS_BIT+0xf,CLASS_BIT+0,CLASS_BIT+0xc,0,0,0,0,0,},0,2,10},
- /* 0001 1111 ddN0 0000 *** call @rd */
- {
- #ifdef NICENAMES
- "call @rd",32,10,0x00,
- #endif
- "call",OPC_call,0,{CLASS_IR+(ARG_RD),},
- {CLASS_BIT+1,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,11},
- /* 0101 1111 0000 0000 address_dst *** call address_dst */
- {
- #ifdef NICENAMES
- "call address_dst",32,12,0x00,
- #endif
- "call",OPC_call,0,{CLASS_DA+(ARG_DST),},
- {CLASS_BIT+5,CLASS_BIT+0xf,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,11},
- /* 0101 1111 ddN0 0000 address_dst *** call address_dst(rd) */
- {
- #ifdef NICENAMES
- "call address_dst(rd)",32,13,0x00,
- #endif
- "call",OPC_call,0,{CLASS_X+(ARG_RD),},
- {CLASS_BIT+5,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,11},
- /* 1101 disp12 *** calr disp12 */
- {
- #ifdef NICENAMES
- "calr disp12",16,10,0x00,
- #endif
- "calr",OPC_calr,0,{CLASS_DISP,},
- {CLASS_BIT+0xd,CLASS_DISP+(ARG_DISP12),0,0,0,0,0,0,0,},1,2,12},
- /* 0000 1101 ddN0 1000 *** clr @rd */
- {
- #ifdef NICENAMES
- "clr @rd",16,8,0x00,
- #endif
- "clr",OPC_clr,0,{CLASS_IR+(ARG_RD),},
- {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,13},
- /* 0100 1101 0000 1000 address_dst *** clr address_dst */
- {
- #ifdef NICENAMES
- "clr address_dst",16,11,0x00,
- #endif
- "clr",OPC_clr,0,{CLASS_DA+(ARG_DST),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,13},
- /* 0100 1101 ddN0 1000 address_dst *** clr address_dst(rd) */
- {
- #ifdef NICENAMES
- "clr address_dst(rd)",16,12,0x00,
- #endif
- "clr",OPC_clr,0,{CLASS_X+(ARG_RD),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,13},
- /* 1000 1101 dddd 1000 *** clr rd */
- {
- #ifdef NICENAMES
- "clr rd",16,7,0x00,
- #endif
- "clr",OPC_clr,0,{CLASS_REG_WORD+(ARG_RD),},
- {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,13},
- /* 0000 1100 ddN0 1000 *** clrb @rd */
- {
- #ifdef NICENAMES
- "clrb @rd",8,8,0x00,
- #endif
- "clrb",OPC_clrb,0,{CLASS_IR+(ARG_RD),},
- {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,14},
- /* 0100 1100 0000 1000 address_dst *** clrb address_dst */
- {
- #ifdef NICENAMES
- "clrb address_dst",8,11,0x00,
- #endif
- "clrb",OPC_clrb,0,{CLASS_DA+(ARG_DST),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,14},
- /* 0100 1100 ddN0 1000 address_dst *** clrb address_dst(rd) */
- {
- #ifdef NICENAMES
- "clrb address_dst(rd)",8,12,0x00,
- #endif
- "clrb",OPC_clrb,0,{CLASS_X+(ARG_RD),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,14},
- /* 1000 1100 dddd 1000 *** clrb rbd */
- {
- #ifdef NICENAMES
- "clrb rbd",8,7,0x00,
- #endif
- "clrb",OPC_clrb,0,{CLASS_REG_BYTE+(ARG_RD),},
- {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,14},
- /* 0000 1101 ddN0 0000 *** com @rd */
- {
- #ifdef NICENAMES
- "com @rd",16,12,0x18,
- #endif
- "com",OPC_com,0,{CLASS_IR+(ARG_RD),},
- {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,15},
- /* 0100 1101 0000 0000 address_dst *** com address_dst */
- {
- #ifdef NICENAMES
- "com address_dst",16,15,0x18,
- #endif
- "com",OPC_com,0,{CLASS_DA+(ARG_DST),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,15},
- /* 0100 1101 ddN0 0000 address_dst *** com address_dst(rd) */
- {
- #ifdef NICENAMES
- "com address_dst(rd)",16,16,0x18,
- #endif
- "com",OPC_com,0,{CLASS_X+(ARG_RD),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,15},
- /* 1000 1101 dddd 0000 *** com rd */
- {
- #ifdef NICENAMES
- "com rd",16,7,0x18,
- #endif
- "com",OPC_com,0,{CLASS_REG_WORD+(ARG_RD),},
- {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,15},
- /* 0000 1100 ddN0 0000 *** comb @rd */
- {
- #ifdef NICENAMES
- "comb @rd",8,12,0x1c,
- #endif
- "comb",OPC_comb,0,{CLASS_IR+(ARG_RD),},
- {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,16},
- /* 0100 1100 0000 0000 address_dst *** comb address_dst */
- {
- #ifdef NICENAMES
- "comb address_dst",8,15,0x1c,
- #endif
- "comb",OPC_comb,0,{CLASS_DA+(ARG_DST),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,16},
- /* 0100 1100 ddN0 0000 address_dst *** comb address_dst(rd) */
- {
- #ifdef NICENAMES
- "comb address_dst(rd)",8,16,0x1c,
- #endif
- "comb",OPC_comb,0,{CLASS_X+(ARG_RD),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,16},
- /* 1000 1100 dddd 0000 *** comb rbd */
- {
- #ifdef NICENAMES
- "comb rbd",8,7,0x1c,
- #endif
- "comb",OPC_comb,0,{CLASS_REG_BYTE+(ARG_RD),},
- {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,16},
- /* 1000 1101 flags 0101 *** comflg flags */
- {
- #ifdef NICENAMES
- "comflg flags",16,7,0x3c,
- #endif
- "comflg",OPC_comflg,0,{CLASS_FLAGS,},
- {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_FLAGS,CLASS_BIT+5,0,0,0,0,0,},1,2,17},
- /* 0000 1101 ddN0 0001 imm16 *** cp @rd,imm16 */
- {
- #ifdef NICENAMES
- "cp @rd,imm16",16,11,0x3c,
- #endif
- "cp",OPC_cp,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+1,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,18},
- /* 0100 1101 ddN0 0001 address_dst imm16 *** cp address_dst(rd),imm16 */
- {
- #ifdef NICENAMES
- "cp address_dst(rd),imm16",16,15,0x3c,
- #endif
- "cp",OPC_cp,0,{CLASS_X+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+1,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM16),0,0,0,},2,6,18},
- /* 0100 1101 0000 0001 address_dst imm16 *** cp address_dst,imm16 */
- {
- #ifdef NICENAMES
- "cp address_dst,imm16",16,14,0x3c,
- #endif
- "cp",OPC_cp,0,{CLASS_DA+(ARG_DST),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+1,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM16),0,0,0,},2,6,18},
- /* 0000 1011 ssN0 dddd *** cp rd,@rs */
- {
- #ifdef NICENAMES
- "cp rd,@rs",16,7,0x3c,
- #endif
- "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+0,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,18},
- /* 0100 1011 0000 dddd address_src *** cp rd,address_src */
- {
- #ifdef NICENAMES
- "cp rd,address_src",16,9,0x3c,
- #endif
- "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+4,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,18},
- /* 0100 1011 ssN0 dddd address_src *** cp rd,address_src(rs) */
- {
- #ifdef NICENAMES
- "cp rd,address_src(rs)",16,10,0x3c,
- #endif
- "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+4,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,18},
- /* 0000 1011 0000 dddd imm16 *** cp rd,imm16 */
- {
- #ifdef NICENAMES
- "cp rd,imm16",16,7,0x3c,
- #endif
- "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+0,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,18},
- /* 1000 1011 ssss dddd *** cp rd,rs */
- {
- #ifdef NICENAMES
- "cp rd,rs",16,4,0x3c,
- #endif
- "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+8,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,18},
- /* 0000 1100 ddN0 0001 imm8 imm8 *** cpb @rd,imm8 */
- {
- #ifdef NICENAMES
- "cpb @rd,imm8",8,11,0x3c,
- #endif
- "cpb",OPC_cpb,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+1,CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,19},
- /* 0100 1100 ddN0 0001 address_dst imm8 imm8 *** cpb address_dst(rd),imm8 */
- {
- #ifdef NICENAMES
- "cpb address_dst(rd),imm8",8,15,0x3c,
- #endif
- "cpb",OPC_cpb,0,{CLASS_X+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+1,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,},2,6,19},
- /* 0100 1100 0000 0001 address_dst imm8 imm8 *** cpb address_dst,imm8 */
- {
- #ifdef NICENAMES
- "cpb address_dst,imm8",8,14,0x3c,
- #endif
- "cpb",OPC_cpb,0,{CLASS_DA+(ARG_DST),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+1,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,},2,6,19},
- /* 0000 1010 ssN0 dddd *** cpb rbd,@rs */
- {
- #ifdef NICENAMES
- "cpb rbd,@rs",8,7,0x3c,
- #endif
- "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+0,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,19},
- /* 0100 1010 0000 dddd address_src *** cpb rbd,address_src */
- {
- #ifdef NICENAMES
- "cpb rbd,address_src",8,9,0x3c,
- #endif
- "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+4,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,19},
- /* 0100 1010 ssN0 dddd address_src *** cpb rbd,address_src(rs) */
- {
- #ifdef NICENAMES
- "cpb rbd,address_src(rs)",8,10,0x3c,
- #endif
- "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+4,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,19},
- /* 0000 1010 0000 dddd imm8 imm8 *** cpb rbd,imm8 */
- {
- #ifdef NICENAMES
- "cpb rbd,imm8",8,7,0x3c,
- #endif
- "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,19},
- /* 1000 1010 ssss dddd *** cpb rbd,rbs */
- {
- #ifdef NICENAMES
- "cpb rbd,rbs",8,4,0x3c,
- #endif
- "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+8,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,19},
- /* 1011 1011 ssN0 1000 0000 rrrr dddd cccc *** cpd rd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpd rd,@rs,rr,cc",16,11,0x3c,
- #endif
- "cpd",OPC_cpd,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,20},
- /* 1011 1010 ssN0 1000 0000 rrrr dddd cccc *** cpdb rbd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpdb rbd,@rs,rr,cc",8,11,0x3c,
- #endif
- "cpdb",OPC_cpdb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,21},
- /* 1011 1011 ssN0 1100 0000 rrrr dddd cccc *** cpdr rd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpdr rd,@rs,rr,cc",16,11,0x3c,
- #endif
- "cpdr",OPC_cpdr,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,22},
- /* 1011 1010 ssN0 1100 0000 rrrr dddd cccc *** cpdrb rbd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpdrb rbd,@rs,rr,cc",8,11,0x3c,
- #endif
- "cpdrb",OPC_cpdrb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,23},
- /* 1011 1011 ssN0 0000 0000 rrrr dddd cccc *** cpi rd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpi rd,@rs,rr,cc",16,11,0x3c,
- #endif
- "cpi",OPC_cpi,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,24},
- /* 1011 1010 ssN0 0000 0000 rrrr dddd cccc *** cpib rbd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpib rbd,@rs,rr,cc",8,11,0x3c,
- #endif
- "cpib",OPC_cpib,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,25},
- /* 1011 1011 ssN0 0100 0000 rrrr dddd cccc *** cpir rd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpir rd,@rs,rr,cc",16,11,0x3c,
- #endif
- "cpir",OPC_cpir,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,26},
- /* 1011 1010 ssN0 0100 0000 rrrr dddd cccc *** cpirb rbd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpirb rbd,@rs,rr,cc",8,11,0x3c,
- #endif
- "cpirb",OPC_cpirb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,27},
- /* 0001 0000 ssN0 dddd *** cpl rrd,@rs */
- {
- #ifdef NICENAMES
- "cpl rrd,@rs",32,14,0x3c,
- #endif
- "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+1,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,28},
- /* 0101 0000 0000 dddd address_src *** cpl rrd,address_src */
- {
- #ifdef NICENAMES
- "cpl rrd,address_src",32,15,0x3c,
- #endif
- "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+5,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,28},
- /* 0101 0000 ssN0 dddd address_src *** cpl rrd,address_src(rs) */
- {
- #ifdef NICENAMES
- "cpl rrd,address_src(rs)",32,16,0x3c,
- #endif
- "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,28},
- /* 0001 0000 0000 dddd imm32 *** cpl rrd,imm32 */
- {
- #ifdef NICENAMES
- "cpl rrd,imm32",32,14,0x3c,
- #endif
- "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
- {CLASS_BIT+1,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,28},
- /* 1001 0000 ssss dddd *** cpl rrd,rrs */
- {
- #ifdef NICENAMES
- "cpl rrd,rrs",32,8,0x3c,
- #endif
- "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
- {CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,28},
- /* 1011 1011 ssN0 1010 0000 rrrr ddN0 cccc *** cpsd @rd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpsd @rd,@rs,rr,cc",16,11,0x3c,
- #endif
- "cpsd",OPC_cpsd,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,29},
- /* 1011 1010 ssN0 1010 0000 rrrr ddN0 cccc *** cpsdb @rd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpsdb @rd,@rs,rr,cc",8,11,0x3c,
- #endif
- "cpsdb",OPC_cpsdb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,30},
- /* 1011 1011 ssN0 1110 0000 rrrr ddN0 cccc *** cpsdr @rd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpsdr @rd,@rs,rr,cc",16,11,0x3c,
- #endif
- "cpsdr",OPC_cpsdr,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xe,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,31},
- /* 1011 1010 ssN0 1110 0000 rrrr ddN0 cccc *** cpsdrb @rd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpsdrb @rd,@rs,rr,cc",8,11,0x3c,
- #endif
- "cpsdrb",OPC_cpsdrb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xe,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,32},
- /* 1011 1011 ssN0 0010 0000 rrrr ddN0 cccc *** cpsi @rd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpsi @rd,@rs,rr,cc",16,11,0x3c,
- #endif
- "cpsi",OPC_cpsi,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,33},
- /* 1011 1010 ssN0 0010 0000 rrrr ddN0 cccc *** cpsib @rd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpsib @rd,@rs,rr,cc",8,11,0x3c,
- #endif
- "cpsib",OPC_cpsib,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,34},
- /* 1011 1011 ssN0 0110 0000 rrrr ddN0 cccc *** cpsir @rd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpsir @rd,@rs,rr,cc",16,11,0x3c,
- #endif
- "cpsir",OPC_cpsir,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,35},
- /* 1011 1010 ssN0 0110 0000 rrrr ddN0 cccc *** cpsirb @rd,@rs,rr,cc */
- {
- #ifdef NICENAMES
- "cpsirb @rd,@rs,rr,cc",8,11,0x3c,
- #endif
- "cpsirb",OPC_cpsirb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
- {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,36},
- /* 1011 0000 dddd 0000 *** dab rbd */
- {
- #ifdef NICENAMES
- "dab rbd",8,5,0x38,
- #endif
- "dab",OPC_dab,0,{CLASS_REG_BYTE+(ARG_RD),},
- {CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,37},
- /* 1111 dddd 0disp7 *** dbjnz rbd,disp7 */
- {
- #ifdef NICENAMES
- "dbjnz rbd,disp7",16,11,0x00,
- #endif
- "dbjnz",OPC_dbjnz,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DISP,},
- {CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_0DISP7,0,0,0,0,0,0,},2,2,38},
- /* 0010 1011 ddN0 imm4m1 *** dec @rd,imm4m1 */
- {
- #ifdef NICENAMES
- "dec @rd,imm4m1",16,11,0x1c,
- #endif
- "dec",OPC_dec,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+2,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,39},
- /* 0110 1011 ddN0 imm4m1 address_dst *** dec address_dst(rd),imm4m1 */
- {
- #ifdef NICENAMES
- "dec address_dst(rd),imm4m1",16,14,0x1c,
- #endif
- "dec",OPC_dec,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+6,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,39},
- /* 0110 1011 0000 imm4m1 address_dst *** dec address_dst,imm4m1 */
- {
- #ifdef NICENAMES
- "dec address_dst,imm4m1",16,13,0x1c,
- #endif
- "dec",OPC_dec,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+6,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,39},
- /* 1010 1011 dddd imm4m1 *** dec rd,imm4m1 */
- {
- #ifdef NICENAMES
- "dec rd,imm4m1",16,4,0x1c,
- #endif
- "dec",OPC_dec,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+0xa,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,39},
- /* 0010 1010 ddN0 imm4m1 *** decb @rd,imm4m1 */
- {
- #ifdef NICENAMES
- "decb @rd,imm4m1",8,11,0x1c,
- #endif
- "decb",OPC_decb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+2,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,40},
- /* 0110 1010 ddN0 imm4m1 address_dst *** decb address_dst(rd),imm4m1 */
- {
- #ifdef NICENAMES
- "decb address_dst(rd),imm4m1",8,14,0x1c,
- #endif
- "decb",OPC_decb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+6,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,40},
- /* 0110 1010 0000 imm4m1 address_dst *** decb address_dst,imm4m1 */
- {
- #ifdef NICENAMES
- "decb address_dst,imm4m1",8,13,0x1c,
- #endif
- "decb",OPC_decb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+6,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,40},
- /* 1010 1010 dddd imm4m1 *** decb rbd,imm4m1 */
- {
- #ifdef NICENAMES
- "decb rbd,imm4m1",8,4,0x1c,
- #endif
- "decb",OPC_decb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+0xa,CLASS_BIT+0xa,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,40},
- /* 0111 1100 0000 00ii *** di i2 */
- {
- #ifdef NICENAMES
- "di i2",16,7,0x00,
- #endif
- "di",OPC_di,0,{CLASS_IMM+(ARG_IMM2),},
- {CLASS_BIT+7,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_00II,0,0,0,0,0,},1,2,41},
- /* 0001 1011 ssN0 dddd *** div rrd,@rs */
- {
- #ifdef NICENAMES
- "div rrd,@rs",16,107,0x3c,
- #endif
- "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+1,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,42},
- /* 0101 1011 0000 dddd address_src *** div rrd,address_src */
- {
- #ifdef NICENAMES
- "div rrd,address_src",16,107,0x3c,
- #endif
- "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+5,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,42},
- /* 0101 1011 ssN0 dddd address_src *** div rrd,address_src(rs) */
- {
- #ifdef NICENAMES
- "div rrd,address_src(rs)",16,107,0x3c,
- #endif
- "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,42},
- /* 0001 1011 0000 dddd imm16 *** div rrd,imm16 */
- {
- #ifdef NICENAMES
- "div rrd,imm16",16,107,0x3c,
- #endif
- "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+1,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,42},
- /* 1001 1011 ssss dddd *** div rrd,rs */
- {
- #ifdef NICENAMES
- "div rrd,rs",16,107,0x3c,
- #endif
- "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+9,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,42},
- /* 0001 1010 ssN0 dddd *** divl rqd,@rs */
- {
- #ifdef NICENAMES
- "divl rqd,@rs",32,744,0x3c,
- #endif
- "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+1,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,43},
- /* 0101 1010 0000 dddd address_src *** divl rqd,address_src */
- {
- #ifdef NICENAMES
- "divl rqd,address_src",32,745,0x3c,
- #endif
- "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+5,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,43},
- /* 0101 1010 ssN0 dddd address_src *** divl rqd,address_src(rs) */
- {
- #ifdef NICENAMES
- "divl rqd,address_src(rs)",32,746,0x3c,
- #endif
- "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,43},
- /* 0001 1010 0000 dddd imm32 *** divl rqd,imm32 */
- {
- #ifdef NICENAMES
- "divl rqd,imm32",32,744,0x3c,
- #endif
- "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
- {CLASS_BIT+1,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,43},
- /* 1001 1010 ssss dddd *** divl rqd,rrs */
- {
- #ifdef NICENAMES
- "divl rqd,rrs",32,744,0x3c,
- #endif
- "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
- {CLASS_BIT+9,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,43},
- /* 1111 dddd 1disp7 *** djnz rd,disp7 */
- {
- #ifdef NICENAMES
- "djnz rd,disp7",16,11,0x00,
- #endif
- "djnz",OPC_djnz,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DISP,},
- {CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_1DISP7,0,0,0,0,0,0,},2,2,44},
- /* 0111 1100 0000 01ii *** ei i2 */
- {
- #ifdef NICENAMES
- "ei i2",16,7,0x00,
- #endif
- "ei",OPC_ei,0,{CLASS_IMM+(ARG_IMM2),},
- {CLASS_BIT+7,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_01II,0,0,0,0,0,},1,2,45},
- /* 0010 1101 ssN0 dddd *** ex rd,@rs */
- {
- #ifdef NICENAMES
- "ex rd,@rs",16,12,0x00,
- #endif
- "ex",OPC_ex,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+2,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,46},
- /* 0110 1101 0000 dddd address_src *** ex rd,address_src */
- {
- #ifdef NICENAMES
- "ex rd,address_src",16,15,0x00,
- #endif
- "ex",OPC_ex,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+6,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,46},
- /* 0110 1101 ssN0 dddd address_src *** ex rd,address_src(rs) */
- {
- #ifdef NICENAMES
- "ex rd,address_src(rs)",16,16,0x00,
- #endif
- "ex",OPC_ex,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+6,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,46},
- /* 1010 1101 ssss dddd *** ex rd,rs */
- {
- #ifdef NICENAMES
- "ex rd,rs",16,6,0x00,
- #endif
- "ex",OPC_ex,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+0xa,CLASS_BIT+0xd,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,46},
- /* 0010 1100 ssN0 dddd *** exb rbd,@rs */
- {
- #ifdef NICENAMES
- "exb rbd,@rs",8,12,0x00,
- #endif
- "exb",OPC_exb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+2,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,47},
- /* 0110 1100 0000 dddd address_src *** exb rbd,address_src */
- {
- #ifdef NICENAMES
- "exb rbd,address_src",8,15,0x00,
- #endif
- "exb",OPC_exb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+6,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,47},
- /* 0110 1100 ssN0 dddd address_src *** exb rbd,address_src(rs) */
- {
- #ifdef NICENAMES
- "exb rbd,address_src(rs)",8,16,0x00,
- #endif
- "exb",OPC_exb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+6,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,47},
- /* 1010 1100 ssss dddd *** exb rbd,rbs */
- {
- #ifdef NICENAMES
- "exb rbd,rbs",8,6,0x00,
- #endif
- "exb",OPC_exb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+0xa,CLASS_BIT+0xc,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,47},
- /* 0000 1110 imm8 *** ext0e imm8 */
- {
- #ifdef NICENAMES
- "ext0e imm8",8,10,0x00,
- #endif
- "ext0e",OPC_ext0e,0,{CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0,CLASS_BIT+0xe,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,48},
- /* 0000 1111 imm8 *** ext0f imm8 */
- {
- #ifdef NICENAMES
- "ext0f imm8",8,10,0x00,
- #endif
- "ext0f",OPC_ext0f,0,{CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,49},
- /* 1000 1110 imm8 *** ext8e imm8 */
- {
- #ifdef NICENAMES
- "ext8e imm8",8,10,0x00,
- #endif
- "ext8e",OPC_ext8e,0,{CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+8,CLASS_BIT+0xe,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,50},
- /* 1000 1111 imm8 *** ext8f imm8 */
- {
- #ifdef NICENAMES
- "ext8f imm8",8,10,0x00,
- #endif
- "ext8f",OPC_ext8f,0,{CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+8,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,51},
- /* 1011 0001 dddd 1010 *** exts rrd */
- {
- #ifdef NICENAMES
- "exts rrd",16,11,0x00,
- #endif
- "exts",OPC_exts,0,{CLASS_REG_LONG+(ARG_RD),},
- {CLASS_BIT+0xb,CLASS_BIT+1,CLASS_REG+(ARG_RD),CLASS_BIT+0xa,0,0,0,0,0,},1,2,52},
- /* 1011 0001 dddd 0000 *** extsb rd */
- {
- #ifdef NICENAMES
- "extsb rd",8,11,0x00,
- #endif
- "extsb",OPC_extsb,0,{CLASS_REG_WORD+(ARG_RD),},
- {CLASS_BIT+0xb,CLASS_BIT+1,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,53},
- /* 1011 0001 dddd 0111 *** extsl rqd */
- {
- #ifdef NICENAMES
- "extsl rqd",32,11,0x00,
- #endif
- "extsl",OPC_extsl,0,{CLASS_REG_QUAD+(ARG_RD),},
- {CLASS_BIT+0xb,CLASS_BIT+1,CLASS_REG+(ARG_RD),CLASS_BIT+7,0,0,0,0,0,},1,2,54},
- /* 0111 1010 0000 0000 *** halt */
- {
- #ifdef NICENAMES
- "halt",16,8,0x00,
- #endif
- "halt",OPC_halt,0,{0},
- {CLASS_BIT+7,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_BIT+0,0,0,0,0,0,},0,2,55},
- /* 0011 1101 ssss dddd *** in rd,@ri */
- {
- #ifdef NICENAMES
- "in rd,@ri",16,10,0x00,
- #endif
- "in",OPC_in,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IRO+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+0xd,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,56},
- /* 0011 1011 dddd 0100 imm16 *** in rd,imm16 */
- {
- #ifdef NICENAMES
- "in rd,imm16",16,12,0x00,
- #endif
- "in",OPC_in,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_BIT+4,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,56},
- /* 0011 1100 ssss dddd *** inb rbd,@ri */
- {
- #ifdef NICENAMES
- "inb rbd,@ri",8,12,0x00,
- #endif
- "inb",OPC_inb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IRO+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+0xc,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,57},
- /* 0011 1010 dddd 0100 imm16 *** inb rbd,imm16 */
- {
- #ifdef NICENAMES
- "inb rbd,imm16",8,10,0x00,
- #endif
- "inb",OPC_inb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RD),CLASS_BIT+4,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,57},
- /* 0010 1001 ddN0 imm4m1 *** inc @rd,imm4m1 */
- {
- #ifdef NICENAMES
- "inc @rd,imm4m1",16,11,0x1c,
- #endif
- "inc",OPC_inc,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+2,CLASS_BIT+9,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,58},
- /* 0110 1001 ddN0 imm4m1 address_dst *** inc address_dst(rd),imm4m1 */
- {
- #ifdef NICENAMES
- "inc address_dst(rd),imm4m1",16,14,0x1c,
- #endif
- "inc",OPC_inc,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+6,CLASS_BIT+9,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,58},
- /* 0110 1001 0000 imm4m1 address_dst *** inc address_dst,imm4m1 */
- {
- #ifdef NICENAMES
- "inc address_dst,imm4m1",16,13,0x1c,
- #endif
- "inc",OPC_inc,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+6,CLASS_BIT+9,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,58},
- /* 1010 1001 dddd imm4m1 *** inc rd,imm4m1 */
- {
- #ifdef NICENAMES
- "inc rd,imm4m1",16,4,0x1c,
- #endif
- "inc",OPC_inc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+0xa,CLASS_BIT+9,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,58},
- /* 0010 1000 ddN0 imm4m1 *** incb @rd,imm4m1 */
- {
- #ifdef NICENAMES
- "incb @rd,imm4m1",8,11,0x1c,
- #endif
- "incb",OPC_incb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+2,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,59},
- /* 0110 1000 ddN0 imm4m1 address_dst *** incb address_dst(rd),imm4m1 */
- {
- #ifdef NICENAMES
- "incb address_dst(rd),imm4m1",8,14,0x1c,
- #endif
- "incb",OPC_incb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+6,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,59},
- /* 0110 1000 0000 imm4m1 address_dst *** incb address_dst,imm4m1 */
- {
- #ifdef NICENAMES
- "incb address_dst,imm4m1",8,13,0x1c,
- #endif
- "incb",OPC_incb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+6,CLASS_BIT+8,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,59},
- /* 1010 1000 dddd imm4m1 *** incb rbd,imm4m1 */
- {
- #ifdef NICENAMES
- "incb rbd,imm4m1",8,4,0x1c,
- #endif
- "incb",OPC_incb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
- {CLASS_BIT+0xa,CLASS_BIT+8,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,59},
- /* 0011 1011 ssss 1000 0000 aaaa ddN0 1000 *** ind @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "ind @rd,@ri,ra",16,21,0x04,
- #endif
- "ind",OPC_ind,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,60},
- /* 0011 1010 ssss 1000 0000 aaaa ddN0 1000 *** indb @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "indb @rd,@ri,ra",8,21,0x04,
- #endif
- "indb",OPC_indb,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,61},
- /* 0011 1011 ssss 1000 0000 aaaa ddN0 0000 *** indr @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "indr @rd,@ri,ra",16,11,0x04,
- #endif
- "indr",OPC_indr,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,62},
- /* 0011 1010 ssss 1000 0000 aaaa ddN0 0000 *** indrb @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "indrb @rd,@ri,ra",8,11,0x04,
- #endif
- "indrb",OPC_indrb,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,63},
- /* 0011 1011 ssss 0000 0000 aaaa ddN0 1000 *** ini @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "ini @rd,@ri,ra",16,21,0x04,
- #endif
- "ini",OPC_ini,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,64},
- /* 0011 1010 ssss 0000 0000 aaaa ddN0 1000 *** inib @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "inib @rd,@ri,ra",8,21,0x04,
- #endif
- "inib",OPC_inib,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,65},
- /* 0011 1011 ssss 0000 0000 aaaa ddN0 0000 *** inir @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "inir @rd,@ri,ra",16,11,0x04,
- #endif
- "inir",OPC_inir,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,66},
- /* 0011 1010 ssss 0000 0000 aaaa ddN0 0000 *** inirb @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "inirb @rd,@ri,ra",8,11,0x04,
- #endif
- "inirb",OPC_inirb,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,67},
- /* 0111 1011 0000 0000 *** iret */
- {
- #ifdef NICENAMES
- "iret",16,13,0x3f,
- #endif
- "iret",OPC_iret,0,{0},
- {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+0,0,0,0,0,0,},0,2,68},
- /* 0001 1110 ddN0 cccc *** jp cc,@rd */
- {
- #ifdef NICENAMES
- "jp cc,@rd",16,10,0x00,
- #endif
- "jp",OPC_jp,0,{CLASS_CC,CLASS_IR+(ARG_RD),},
- {CLASS_BIT+1,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_CC,0,0,0,0,0,},2,2,69},
- /* 0101 1110 0000 cccc address_dst *** jp cc,address_dst */
- {
- #ifdef NICENAMES
- "jp cc,address_dst",16,7,0x00,
- #endif
- "jp",OPC_jp,0,{CLASS_CC,CLASS_DA+(ARG_DST),},
- {CLASS_BIT+5,CLASS_BIT+0xe,CLASS_BIT+0,CLASS_CC,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,69},
- /* 0101 1110 ddN0 cccc address_dst *** jp cc,address_dst(rd) */
- {
- #ifdef NICENAMES
- "jp cc,address_dst(rd)",16,8,0x00,
- #endif
- "jp",OPC_jp,0,{CLASS_CC,CLASS_X+(ARG_RD),},
- {CLASS_BIT+5,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_CC,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,69},
- /* 1110 cccc disp8 *** jr cc,disp8 */
- {
- #ifdef NICENAMES
- "jr cc,disp8",16,6,0x00,
- #endif
- "jr",OPC_jr,0,{CLASS_CC,CLASS_DISP,},
- {CLASS_BIT+0xe,CLASS_CC,CLASS_DISP8,0,0,0,0,0,0,},2,2,70},
- /* 0000 1101 ddN0 0101 imm16 *** ld @rd,imm16 */
- {
- #ifdef NICENAMES
- "ld @rd,imm16",16,7,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,71},
- /* 0010 1111 ddN0 ssss *** ld @rd,rs */
- {
- #ifdef NICENAMES
- "ld @rd,rs",16,8,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_IR+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+2,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,71},
- /* 0100 1101 ddN0 0101 address_dst imm16 *** ld address_dst(rd),imm16 */
- {
- #ifdef NICENAMES
- "ld address_dst(rd),imm16",16,15,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_X+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+5,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM16),0,0,0,},2,6,71},
- /* 0110 1111 ddN0 ssss address_dst *** ld address_dst(rd),rs */
- {
- #ifdef NICENAMES
- "ld address_dst(rd),rs",16,12,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_X+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+6,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,71},
- /* 0100 1101 0000 0101 address_dst imm16 *** ld address_dst,imm16 */
- {
- #ifdef NICENAMES
- "ld address_dst,imm16",16,14,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_DA+(ARG_DST),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+5,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM16),0,0,0,},2,6,71},
- /* 0110 1111 0000 ssss address_dst *** ld address_dst,rs */
- {
- #ifdef NICENAMES
- "ld address_dst,rs",16,11,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_DA+(ARG_DST),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+6,CLASS_BIT+0xf,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,71},
- /* 0011 0011 ddN0 ssss imm16 *** ld rd(imm16),rs */
- {
- #ifdef NICENAMES
- "ld rd(imm16),rs",16,14,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_BA+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,71},
- /* 0111 0011 ddN0 ssss 0000 xxxx 0000 0000 *** ld rd(rx),rs */
- {
- #ifdef NICENAMES
- "ld rd(rx),rs",16,14,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_BX+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+7,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,71},
- /* 0010 0001 ssN0 dddd *** ld rd,@rs */
- {
- #ifdef NICENAMES
- "ld rd,@rs",16,7,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+2,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,71},
- /* 0110 0001 0000 dddd address_src *** ld rd,address_src */
- {
- #ifdef NICENAMES
- "ld rd,address_src",16,9,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+6,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,71},
- /* 0110 0001 ssN0 dddd address_src *** ld rd,address_src(rs) */
- {
- #ifdef NICENAMES
- "ld rd,address_src(rs)",16,10,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+6,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,71},
- /* 0010 0001 0000 dddd imm16 *** ld rd,imm16 */
- {
- #ifdef NICENAMES
- "ld rd,imm16",16,7,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+2,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,71},
- /* 1010 0001 ssss dddd *** ld rd,rs */
- {
- #ifdef NICENAMES
- "ld rd,rs",16,3,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+0xa,CLASS_BIT+1,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,71},
- /* 0011 0001 ssN0 dddd imm16 *** ld rd,rs(imm16) */
- {
- #ifdef NICENAMES
- "ld rd,rs(imm16)",16,14,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_BA+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,71},
- /* 0111 0001 ssN0 dddd 0000 xxxx 0000 0000 *** ld rd,rs(rx) */
- {
- #ifdef NICENAMES
- "ld rd,rs(rx)",16,14,0x00,
- #endif
- "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_BX+(ARG_RS),},
- {CLASS_BIT+7,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,71},
- /* 0111 0110 0000 dddd address_src *** lda prd,address_src */
- {
- #ifdef NICENAMES
- "lda prd,address_src",16,12,0x00,
- #endif
- "lda",OPC_lda,0,{CLASS_PR+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+7,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,72},
- /* 0111 0110 ssN0 dddd address_src *** lda prd,address_src(rs) */
- {
- #ifdef NICENAMES
- "lda prd,address_src(rs)",16,13,0x00,
- #endif
- "lda",OPC_lda,0,{CLASS_PR+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+7,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,72},
- /* 0011 0100 ssN0 dddd imm16 *** lda prd,rs(imm16) */
- {
- #ifdef NICENAMES
- "lda prd,rs(imm16)",16,15,0x00,
- #endif
- "lda",OPC_lda,0,{CLASS_PR+(ARG_RD),CLASS_BA+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,72},
- /* 0111 0100 ssN0 dddd 0000 xxxx 0000 0000 *** lda prd,rs(rx) */
- {
- #ifdef NICENAMES
- "lda prd,rs(rx)",16,15,0x00,
- #endif
- "lda",OPC_lda,0,{CLASS_PR+(ARG_RD),CLASS_BX+(ARG_RS),},
- {CLASS_BIT+7,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,72},
- /* 0011 0100 0000 dddd disp16 *** ldar prd,disp16 */
- {
- #ifdef NICENAMES
- "ldar prd,disp16",16,15,0x00,
- #endif
- "ldar",OPC_ldar,0,{CLASS_PR+(ARG_RD),CLASS_DISP,},
- {CLASS_BIT+3,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,73},
- /* 0000 1100 ddN0 0101 imm8 imm8 *** ldb @rd,imm8 */
- {
- #ifdef NICENAMES
- "ldb @rd,imm8",8,7,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,74},
- /* 0010 1110 ddN0 ssss *** ldb @rd,rbs */
- {
- #ifdef NICENAMES
- "ldb @rd,rbs",8,8,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_IR+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+2,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,74},
- /* 0100 1100 ddN0 0101 address_dst imm8 imm8 *** ldb address_dst(rd),imm8 */
- {
- #ifdef NICENAMES
- "ldb address_dst(rd),imm8",8,15,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_X+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+5,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,},2,6,74},
- /* 0110 1110 ddN0 ssss address_dst *** ldb address_dst(rd),rbs */
- {
- #ifdef NICENAMES
- "ldb address_dst(rd),rbs",8,12,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_X+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+6,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,74},
- /* 0100 1100 0000 0101 address_dst imm8 imm8 *** ldb address_dst,imm8 */
- {
- #ifdef NICENAMES
- "ldb address_dst,imm8",8,14,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_DA+(ARG_DST),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+5,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,},2,6,74},
- /* 0110 1110 0000 ssss address_dst *** ldb address_dst,rbs */
- {
- #ifdef NICENAMES
- "ldb address_dst,rbs",8,11,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_DA+(ARG_DST),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+6,CLASS_BIT+0xe,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,74},
- /* 0010 0000 ssN0 dddd *** ldb rbd,@rs */
- {
- #ifdef NICENAMES
- "ldb rbd,@rs",8,7,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+2,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,74},
- /* 0110 0000 0000 dddd address_src *** ldb rbd,address_src */
- {
- #ifdef NICENAMES
- "ldb rbd,address_src",8,9,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+6,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,74},
- /* 0110 0000 ssN0 dddd address_src *** ldb rbd,address_src(rs) */
- {
- #ifdef NICENAMES
- "ldb rbd,address_src(rs)",8,10,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+6,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,74},
- /* 1100 dddd imm8 *** ldb rbd,imm8 */
- {
- #ifdef NICENAMES
- "ldb rbd,imm8",8,5,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},2,2,74},
- /* 0010 0000 0000 dddd imm8 imm8 *** ldb rbd,imm8 */
- {
- #ifdef NICENAMES
- "ldb rbd,imm8",8,7,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+2,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,74},
- /* 1010 0000 ssss dddd *** ldb rbd,rbs */
- {
- #ifdef NICENAMES
- "ldb rbd,rbs",8,3,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,74},
- /* 0011 0000 ssN0 dddd imm16 *** ldb rbd,rs(imm16) */
- {
- #ifdef NICENAMES
- "ldb rbd,rs(imm16)",8,14,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_BA+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,74},
- /* 0111 0000 ssN0 dddd 0000 xxxx 0000 0000 *** ldb rbd,rs(rx) */
- {
- #ifdef NICENAMES
- "ldb rbd,rs(rx)",8,14,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_BX+(ARG_RS),},
- {CLASS_BIT+7,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,74},
- /* 0011 0010 ddN0 ssss imm16 *** ldb rd(imm16),rbs */
- {
- #ifdef NICENAMES
- "ldb rd(imm16),rbs",8,14,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_BA+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,74},
- /* 0111 0010 ddN0 ssss 0000 xxxx 0000 0000 *** ldb rd(rx),rbs */
- {
- #ifdef NICENAMES
- "ldb rd(rx),rbs",8,14,0x00,
- #endif
- "ldb",OPC_ldb,0,{CLASS_BX+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+7,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,74},
- /* 0111 1101 ssss 1ccc *** ldctl ctrl,rs */
- {
- #ifdef NICENAMES
- "ldctl ctrl,rs",32,7,0x00,
- #endif
- "ldctl",OPC_ldctl,0,{CLASS_CTRL,CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+7,CLASS_BIT+0xd,CLASS_REG+(ARG_RS),CLASS_1CCC,0,0,0,0,0,},2,2,75},
- /* 0111 1101 dddd 0ccc *** ldctl rd,ctrl */
- {
- #ifdef NICENAMES
- "ldctl rd,ctrl",32,7,0x00,
- #endif
- "ldctl",OPC_ldctl,0,{CLASS_REG_WORD+(ARG_RD),CLASS_CTRL,},
- {CLASS_BIT+7,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_0CCC,0,0,0,0,0,},2,2,75},
- /* 1000 1100 ssss 1001 *** ldctlb ctrl,rbs */
- {
- #ifdef NICENAMES
- "ldctlb ctrl,rbs",32,7,0x3f,
- #endif
- "ldctlb",OPC_ldctlb,0,{CLASS_CTRL,CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RS),CLASS_BIT+9,0,0,0,0,0,},2,2,76},
- /* 1000 1100 dddd 0001 *** ldctlb rbd,ctrl */
- {
- #ifdef NICENAMES
- "ldctlb rbd,ctrl",32,7,0x00,
- #endif
- "ldctlb",OPC_ldctlb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_CTRL,},
- {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+1,0,0,0,0,0,},2,2,76},
- /* 1011 1011 ssN0 1001 0000 rrrr ddN0 1000 *** ldd @rd,@rs,rr */
- {
- #ifdef NICENAMES
- "ldd @rd,@rs,rr",16,11,0x04,
- #endif
- "ldd",OPC_ldd,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,77},
- /* 1011 1010 ssN0 1001 0000 rrrr ddN0 1000 *** lddb @rd,@rs,rr */
- {
- #ifdef NICENAMES
- "lddb @rd,@rs,rr",8,11,0x04,
- #endif
- "lddb",OPC_lddb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,78},
- /* 1011 1011 ssN0 1001 0000 rrrr ddN0 0000 *** lddr @rd,@rs,rr */
- {
- #ifdef NICENAMES
- "lddr @rd,@rs,rr",16,11,0x04,
- #endif
- "lddr",OPC_lddr,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,79},
- /* 1011 1010 ssN0 1001 0000 rrrr ddN0 0000 *** lddrb @rd,@rs,rr */
- {
- #ifdef NICENAMES
- "lddrb @rd,@rs,rr",8,11,0x04,
- #endif
- "lddrb",OPC_lddrb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,80},
- /* 1011 1011 ssN0 0001 0000 rrrr ddN0 1000 *** ldi @rd,@rs,rr */
- {
- #ifdef NICENAMES
- "ldi @rd,@rs,rr",16,11,0x04,
- #endif
- "ldi",OPC_ldi,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,81},
- /* 1011 1010 ssN0 0001 0000 rrrr ddN0 1000 *** ldib @rd,@rs,rr */
- {
- #ifdef NICENAMES
- "ldib @rd,@rs,rr",8,11,0x04,
- #endif
- "ldib",OPC_ldib,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,82},
- /* 1011 1011 ssN0 0001 0000 rrrr ddN0 0000 *** ldir @rd,@rs,rr */
- {
- #ifdef NICENAMES
- "ldir @rd,@rs,rr",16,11,0x04,
- #endif
- "ldir",OPC_ldir,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,83},
- /* 1011 1010 ssN0 0001 0000 rrrr ddN0 0000 *** ldirb @rd,@rs,rr */
- {
- #ifdef NICENAMES
- "ldirb @rd,@rs,rr",8,11,0x04,
- #endif
- "ldirb",OPC_ldirb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,84},
- /* 1011 1101 dddd imm4 *** ldk rd,imm4 */
- {
- #ifdef NICENAMES
- "ldk rd,imm4",16,5,0x00,
- #endif
- "ldk",OPC_ldk,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+0xb,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,85},
- /* 0001 1101 ddN0 ssss *** ldl @rd,rrs */
- {
- #ifdef NICENAMES
- "ldl @rd,rrs",32,11,0x00,
- #endif
- "ldl",OPC_ldl,0,{CLASS_IR+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
- {CLASS_BIT+1,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,86},
- /* 0101 1101 ddN0 ssss address_dst *** ldl address_dst(rd),rrs */
- {
- #ifdef NICENAMES
- "ldl address_dst(rd),rrs",32,14,0x00,
- #endif
- "ldl",OPC_ldl,0,{CLASS_X+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,86},
- /* 0101 1101 0000 ssss address_dst *** ldl address_dst,rrs */
- {
- #ifdef NICENAMES
- "ldl address_dst,rrs",32,15,0x00,
- #endif
- "ldl",OPC_ldl,0,{CLASS_DA+(ARG_DST),CLASS_REG_LONG+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,86},
- /* 0011 0111 ddN0 ssss imm16 *** ldl rd(imm16),rrs */
- {
- #ifdef NICENAMES
- "ldl rd(imm16),rrs",32,17,0x00,
- #endif
- "ldl",OPC_ldl,0,{CLASS_BA+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,86},
- /* 0111 0111 ddN0 ssss 0000 xxxx 0000 0000 *** ldl rd(rx),rrs */
- {
- #ifdef NICENAMES
- "ldl rd(rx),rrs",32,17,0x00,
- #endif
- "ldl",OPC_ldl,0,{CLASS_BX+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
- {CLASS_BIT+7,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,86},
- /* 0001 0100 ssN0 dddd *** ldl rrd,@rs */
- {
- #ifdef NICENAMES
- "ldl rrd,@rs",32,11,0x00,
- #endif
- "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+1,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,86},
- /* 0101 0100 0000 dddd address_src *** ldl rrd,address_src */
- {
- #ifdef NICENAMES
- "ldl rrd,address_src",32,12,0x00,
- #endif
- "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+5,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,86},
- /* 0101 0100 ssN0 dddd address_src *** ldl rrd,address_src(rs) */
- {
- #ifdef NICENAMES
- "ldl rrd,address_src(rs)",32,13,0x00,
- #endif
- "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,86},
- /* 0001 0100 0000 dddd imm32 *** ldl rrd,imm32 */
- {
- #ifdef NICENAMES
- "ldl rrd,imm32",32,11,0x00,
- #endif
- "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
- {CLASS_BIT+1,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,86},
- /* 1001 0100 ssss dddd *** ldl rrd,rrs */
- {
- #ifdef NICENAMES
- "ldl rrd,rrs",32,5,0x00,
- #endif
- "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
- {CLASS_BIT+9,CLASS_BIT+4,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,86},
- /* 0011 0101 ssN0 dddd imm16 *** ldl rrd,rs(imm16) */
- {
- #ifdef NICENAMES
- "ldl rrd,rs(imm16)",32,17,0x00,
- #endif
- "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_BA+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,86},
- /* 0111 0101 ssN0 dddd 0000 xxxx 0000 0000 *** ldl rrd,rs(rx) */
- {
- #ifdef NICENAMES
- "ldl rrd,rs(rx)",32,17,0x00,
- #endif
- "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_BX+(ARG_RS),},
- {CLASS_BIT+7,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,86},
- /* 0001 1100 ddN0 1001 0000 ssss 0000 imm4m1 *** ldm @rd,rs,n */
- {
- #ifdef NICENAMES
- "ldm @rd,rs,n",16,11,0x00,
- #endif
- "ldm",OPC_ldm,0,{CLASS_IR+(ARG_RD),CLASS_REG_WORD+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
- {CLASS_BIT+1,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),0,},3,4,87},
- /* 0101 1100 ddN0 1001 0000 ssss 0000 imm4m1 address_dst *** ldm address_dst(rd),rs,n */
- {
- #ifdef NICENAMES
- "ldm address_dst(rd),rs,n",16,15,0x00,
- #endif
- "ldm",OPC_ldm,0,{CLASS_X+(ARG_RD),CLASS_REG_WORD+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
- {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),},3,6,87},
- /* 0101 1100 0000 1001 0000 ssss 0000 imm4m1 address_dst *** ldm address_dst,rs,n */
- {
- #ifdef NICENAMES
- "ldm address_dst,rs,n",16,14,0x00,
- #endif
- "ldm",OPC_ldm,0,{CLASS_DA+(ARG_DST),CLASS_REG_WORD+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
- {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),},3,6,87},
- /* 0001 1100 ssN0 0001 0000 dddd 0000 imm4m1 *** ldm rd,@rs,n */
- {
- #ifdef NICENAMES
- "ldm rd,@rs,n",16,11,0x00,
- #endif
- "ldm",OPC_ldm,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
- {CLASS_BIT+1,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),0,},3,4,87},
- /* 0101 1100 ssN0 0001 0000 dddd 0000 imm4m1 address_src *** ldm rd,address_src(rs),n */
- {
- #ifdef NICENAMES
- "ldm rd,address_src(rs),n",16,15,0x00,
- #endif
- "ldm",OPC_ldm,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
- {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_SRC),},3,6,87},
- /* 0101 1100 0000 0001 0000 dddd 0000 imm4m1 address_src *** ldm rd,address_src,n */
- {
- #ifdef NICENAMES
- "ldm rd,address_src,n",16,14,0x00,
- #endif
- "ldm",OPC_ldm,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),CLASS_IMM + (ARG_IMM4M1),},
- {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_SRC),},3,6,87},
- /* 0011 1001 ssN0 0000 *** ldps @rs */
- {
- #ifdef NICENAMES
- "ldps @rs",16,12,0x3f,
- #endif
- "ldps",OPC_ldps,0,{CLASS_IR+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,0,0,0,0,},1,2,88},
- /* 0111 1001 0000 0000 address_src *** ldps address_src */
- {
- #ifdef NICENAMES
- "ldps address_src",16,16,0x3f,
- #endif
- "ldps",OPC_ldps,0,{CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+7,CLASS_BIT+9,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},1,4,88},
- /* 0111 1001 ssN0 0000 address_src *** ldps address_src(rs) */
- {
- #ifdef NICENAMES
- "ldps address_src(rs)",16,17,0x3f,
- #endif
- "ldps",OPC_ldps,0,{CLASS_X+(ARG_RS),},
- {CLASS_BIT+7,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},1,4,88},
- /* 0011 0011 0000 ssss disp16 *** ldr disp16,rs */
- {
- #ifdef NICENAMES
- "ldr disp16,rs",16,14,0x00,
- #endif
- "ldr",OPC_ldr,0,{CLASS_DISP,CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,89},
- /* 0011 0001 0000 dddd disp16 *** ldr rd,disp16 */
- {
- #ifdef NICENAMES
- "ldr rd,disp16",16,14,0x00,
- #endif
- "ldr",OPC_ldr,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DISP,},
- {CLASS_BIT+3,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,89},
- /* 0011 0010 0000 ssss disp16 *** ldrb disp16,rbs */
- {
- #ifdef NICENAMES
- "ldrb disp16,rbs",8,14,0x00,
- #endif
- "ldrb",OPC_ldrb,0,{CLASS_DISP,CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,90},
- /* 0011 0000 0000 dddd disp16 *** ldrb rbd,disp16 */
- {
- #ifdef NICENAMES
- "ldrb rbd,disp16",8,14,0x00,
- #endif
- "ldrb",OPC_ldrb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DISP,},
- {CLASS_BIT+3,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,90},
- /* 0011 0111 0000 ssss disp16 *** ldrl disp16,rrs */
- {
- #ifdef NICENAMES
- "ldrl disp16,rrs",32,17,0x00,
- #endif
- "ldrl",OPC_ldrl,0,{CLASS_DISP,CLASS_REG_LONG+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,91},
- /* 0011 0101 0000 dddd disp16 *** ldrl rrd,disp16 */
- {
- #ifdef NICENAMES
- "ldrl rrd,disp16",32,17,0x00,
- #endif
- "ldrl",OPC_ldrl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DISP,},
- {CLASS_BIT+3,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,91},
- /* 0111 1011 0000 1010 *** mbit */
- {
- #ifdef NICENAMES
- "mbit",16,7,0x38,
- #endif
- "mbit",OPC_mbit,0,{0},
- {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+0xa,0,0,0,0,0,},0,2,92},
- /* 0111 1011 dddd 1101 *** mreq rd */
- {
- #ifdef NICENAMES
- "mreq rd",16,12,0x18,
- #endif
- "mreq",OPC_mreq,0,{CLASS_REG_WORD+(ARG_RD),},
- {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_BIT+0xd,0,0,0,0,0,},1,2,93},
- /* 0111 1011 0000 1001 *** mres */
- {
- #ifdef NICENAMES
- "mres",16,5,0x00,
- #endif
- "mres",OPC_mres,0,{0},
- {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+9,0,0,0,0,0,},0,2,94},
- /* 0111 1011 0000 1000 *** mset */
- {
- #ifdef NICENAMES
- "mset",16,5,0x00,
- #endif
- "mset",OPC_mset,0,{0},
- {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+8,0,0,0,0,0,},0,2,95},
- /* 0001 1001 ssN0 dddd *** mult rrd,@rs */
- {
- #ifdef NICENAMES
- "mult rrd,@rs",16,70,0x3c,
- #endif
- "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+1,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,96},
- /* 0101 1001 0000 dddd address_src *** mult rrd,address_src */
- {
- #ifdef NICENAMES
- "mult rrd,address_src",16,70,0x3c,
- #endif
- "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+5,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,96},
- /* 0101 1001 ssN0 dddd address_src *** mult rrd,address_src(rs) */
- {
- #ifdef NICENAMES
- "mult rrd,address_src(rs)",16,70,0x3c,
- #endif
- "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,96},
- /* 0001 1001 0000 dddd imm16 *** mult rrd,imm16 */
- {
- #ifdef NICENAMES
- "mult rrd,imm16",16,70,0x3c,
- #endif
- "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+1,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,96},
- /* 1001 1001 ssss dddd *** mult rrd,rs */
- {
- #ifdef NICENAMES
- "mult rrd,rs",16,70,0x3c,
- #endif
- "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+9,CLASS_BIT+9,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,96},
- /* 0001 1000 ssN0 dddd *** multl rqd,@rs */
- {
- #ifdef NICENAMES
- "multl rqd,@rs",32,282,0x3c,
- #endif
- "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+1,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,97},
- /* 0101 1000 0000 dddd address_src *** multl rqd,address_src */
- {
- #ifdef NICENAMES
- "multl rqd,address_src",32,282,0x3c,
- #endif
- "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+5,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,97},
- /* 0101 1000 ssN0 dddd address_src *** multl rqd,address_src(rs) */
- {
- #ifdef NICENAMES
- "multl rqd,address_src(rs)",32,282,0x3c,
- #endif
- "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,97},
- /* 0001 1000 0000 dddd imm32 *** multl rqd,imm32 */
- {
- #ifdef NICENAMES
- "multl rqd,imm32",32,282,0x3c,
- #endif
- "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
- {CLASS_BIT+1,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,97},
- /* 1001 1000 ssss dddd *** multl rqd,rrs */
- {
- #ifdef NICENAMES
- "multl rqd,rrs",32,282,0x3c,
- #endif
- "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
- {CLASS_BIT+9,CLASS_BIT+8,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,97},
- /* 0000 1101 ddN0 0010 *** neg @rd */
- {
- #ifdef NICENAMES
- "neg @rd",16,12,0x3c,
- #endif
- "neg",OPC_neg,0,{CLASS_IR+(ARG_RD),},
- {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,98},
- /* 0100 1101 0000 0010 address_dst *** neg address_dst */
- {
- #ifdef NICENAMES
- "neg address_dst",16,15,0x3c,
- #endif
- "neg",OPC_neg,0,{CLASS_DA+(ARG_DST),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,98},
- /* 0100 1101 ddN0 0010 address_dst *** neg address_dst(rd) */
- {
- #ifdef NICENAMES
- "neg address_dst(rd)",16,16,0x3c,
- #endif
- "neg",OPC_neg,0,{CLASS_X+(ARG_RD),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,98},
- /* 1000 1101 dddd 0010 *** neg rd */
- {
- #ifdef NICENAMES
- "neg rd",16,7,0x3c,
- #endif
- "neg",OPC_neg,0,{CLASS_REG_WORD+(ARG_RD),},
- {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,98},
- /* 0000 1100 ddN0 0010 *** negb @rd */
- {
- #ifdef NICENAMES
- "negb @rd",8,12,0x3c,
- #endif
- "negb",OPC_negb,0,{CLASS_IR+(ARG_RD),},
- {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,99},
- /* 0100 1100 0000 0010 address_dst *** negb address_dst */
- {
- #ifdef NICENAMES
- "negb address_dst",8,15,0x3c,
- #endif
- "negb",OPC_negb,0,{CLASS_DA+(ARG_DST),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,99},
- /* 0100 1100 ddN0 0010 address_dst *** negb address_dst(rd) */
- {
- #ifdef NICENAMES
- "negb address_dst(rd)",8,16,0x3c,
- #endif
- "negb",OPC_negb,0,{CLASS_X+(ARG_RD),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,99},
- /* 1000 1100 dddd 0010 *** negb rbd */
- {
- #ifdef NICENAMES
- "negb rbd",8,7,0x3c,
- #endif
- "negb",OPC_negb,0,{CLASS_REG_BYTE+(ARG_RD),},
- {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,99},
- /* 1000 1101 0000 0111 *** nop */
- {
- #ifdef NICENAMES
- "nop",16,7,0x00,
- #endif
- "nop",OPC_nop,0,{0},
- {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+7,0,0,0,0,0,},0,2,100},
- /* 0000 0101 ssN0 dddd *** or rd,@rs */
- {
- #ifdef NICENAMES
- "or rd,@rs",16,7,0x38,
- #endif
- "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+0,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,101},
- /* 0100 0101 0000 dddd address_src *** or rd,address_src */
- {
- #ifdef NICENAMES
- "or rd,address_src",16,9,0x38,
- #endif
- "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+4,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,101},
- /* 0100 0101 ssN0 dddd address_src *** or rd,address_src(rs) */
- {
- #ifdef NICENAMES
- "or rd,address_src(rs)",16,10,0x38,
- #endif
- "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+4,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,101},
- /* 0000 0101 0000 dddd imm16 *** or rd,imm16 */
- {
- #ifdef NICENAMES
- "or rd,imm16",16,7,0x38,
- #endif
- "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+0,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,101},
- /* 1000 0101 ssss dddd *** or rd,rs */
- {
- #ifdef NICENAMES
- "or rd,rs",16,4,0x38,
- #endif
- "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+8,CLASS_BIT+5,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,101},
- /* 0000 0100 ssN0 dddd *** orb rbd,@rs */
- {
- #ifdef NICENAMES
- "orb rbd,@rs",8,7,0x3c,
- #endif
- "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+0,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,102},
- /* 0100 0100 0000 dddd address_src *** orb rbd,address_src */
- {
- #ifdef NICENAMES
- "orb rbd,address_src",8,9,0x3c,
- #endif
- "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+4,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,102},
- /* 0100 0100 ssN0 dddd address_src *** orb rbd,address_src(rs) */
- {
- #ifdef NICENAMES
- "orb rbd,address_src(rs)",8,10,0x3c,
- #endif
- "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+4,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,102},
- /* 0000 0100 0000 dddd imm8 imm8 *** orb rbd,imm8 */
- {
- #ifdef NICENAMES
- "orb rbd,imm8",8,7,0x3c,
- #endif
- "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,102},
- /* 1000 0100 ssss dddd *** orb rbd,rbs */
- {
- #ifdef NICENAMES
- "orb rbd,rbs",8,4,0x3c,
- #endif
- "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+8,CLASS_BIT+4,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,102},
- /* 0011 1011 ssN0 1010 0000 aaaa dddd 0000 *** otdr @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "otdr @ro,@rs,ra",16,11,0x04,
- #endif
- "otdr",OPC_otdr,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,103},
- /* 0011 1010 ssN0 1010 0000 aaaa dddd 0000 *** otdrb @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "otdrb @ro,@rs,ra",8,11,0x04,
- #endif
- "otdrb",OPC_otdrb,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,104},
- /* 0011 1011 ssN0 0010 0000 aaaa dddd 0000 *** otir @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "otir @ro,@rs,ra",16,11,0x04,
- #endif
- "otir",OPC_otir,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,105},
- /* 0011 1010 ssN0 0010 0000 aaaa dddd 0000 *** otirb @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "otirb @ro,@rs,ra",8,11,0x04,
- #endif
- "otirb",OPC_otirb,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,106},
- /* 0011 1111 dddd ssss *** out @ro,rs */
- {
- #ifdef NICENAMES
- "out @ro,rs",16,10,0x00,
- #endif
- "out",OPC_out,0,{CLASS_IRO+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,107},
- /* 0011 1011 ssss 0110 imm16 *** out imm16,rs */
- {
- #ifdef NICENAMES
- "out imm16,rs",16,12,0x00,
- #endif
- "out",OPC_out,0,{CLASS_IMM+(ARG_IMM16),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+6,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,107},
- /* 0011 1110 dddd ssss *** outb @ro,rbs */
- {
- #ifdef NICENAMES
- "outb @ro,rbs",8,10,0x00,
- #endif
- "outb",OPC_outb,0,{CLASS_IRO+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+0xe,CLASS_REG+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,108},
- /* 0011 1010 ssss 0110 imm16 *** outb imm16,rbs */
- {
- #ifdef NICENAMES
- "outb imm16,rbs",8,12,0x00,
- #endif
- "outb",OPC_outb,0,{CLASS_IMM+(ARG_IMM16),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+6,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,108},
- /* 0011 1011 ssN0 1010 0000 aaaa dddd 1000 *** outd @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "outd @ro,@rs,ra",16,21,0x04,
- #endif
- "outd",OPC_outd,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,109},
- /* 0011 1010 ssN0 1010 0000 aaaa dddd 1000 *** outdb @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "outdb @ro,@rs,ra",8,21,0x04,
- #endif
- "outdb",OPC_outdb,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,110},
- /* 0011 1011 ssN0 0010 0000 aaaa dddd 1000 *** outi @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "outi @ro,@rs,ra",16,21,0x04,
- #endif
- "outi",OPC_outi,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,111},
- /* 0011 1010 ssN0 0010 0000 aaaa dddd 1000 *** outib @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "outib @ro,@rs,ra",8,21,0x04,
- #endif
- "outib",OPC_outib,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,112},
- /* 0001 0111 ssN0 ddN0 *** pop @rd,@rs */
- {
- #ifdef NICENAMES
- "pop @rd,@rs",16,12,0x00,
- #endif
- "pop",OPC_pop,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+1,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),0,0,0,0,0,},2,2,113},
- /* 0101 0111 ssN0 ddN0 address_dst *** pop address_dst(rd),@rs */
- {
- #ifdef NICENAMES
- "pop address_dst(rd),@rs",16,16,0x00,
- #endif
- "pop",OPC_pop,0,{CLASS_X+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,113},
- /* 0101 0111 ssN0 0000 address_dst *** pop address_dst,@rs */
- {
- #ifdef NICENAMES
- "pop address_dst,@rs",16,16,0x00,
- #endif
- "pop",OPC_pop,0,{CLASS_DA+(ARG_DST),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,113},
- /* 1001 0111 ssN0 dddd *** pop rd,@rs */
- {
- #ifdef NICENAMES
- "pop rd,@rs",16,8,0x00,
- #endif
- "pop",OPC_pop,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+9,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,113},
- /* 0001 0101 ssN0 ddN0 *** popl @rd,@rs */
- {
- #ifdef NICENAMES
- "popl @rd,@rs",32,19,0x00,
- #endif
- "popl",OPC_popl,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+1,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),0,0,0,0,0,},2,2,114},
- /* 0101 0101 ssN0 ddN0 address_dst *** popl address_dst(rd),@rs */
- {
- #ifdef NICENAMES
- "popl address_dst(rd),@rs",32,23,0x00,
- #endif
- "popl",OPC_popl,0,{CLASS_X+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,114},
- /* 0101 0101 ssN0 0000 address_dst *** popl address_dst,@rs */
- {
- #ifdef NICENAMES
- "popl address_dst,@rs",32,23,0x00,
- #endif
- "popl",OPC_popl,0,{CLASS_DA+(ARG_DST),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,114},
- /* 1001 0101 ssN0 dddd *** popl rrd,@rs */
- {
- #ifdef NICENAMES
- "popl rrd,@rs",32,12,0x00,
- #endif
- "popl",OPC_popl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+9,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,114},
- /* 0001 0011 ddN0 ssN0 *** push @rd,@rs */
- {
- #ifdef NICENAMES
- "push @rd,@rs",16,13,0x00,
- #endif
- "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+1,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),0,0,0,0,0,},2,2,115},
- /* 0101 0011 ddN0 0000 address_src *** push @rd,address_src */
- {
- #ifdef NICENAMES
- "push @rd,address_src",16,14,0x00,
- #endif
- "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+5,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,115},
- /* 0101 0011 ddN0 ssN0 address_src *** push @rd,address_src(rs) */
- {
- #ifdef NICENAMES
- "push @rd,address_src(rs)",16,14,0x00,
- #endif
- "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,115},
- /* 0000 1101 ddN0 1001 imm16 *** push @rd,imm16 */
- {
- #ifdef NICENAMES
- "push @rd,imm16",16,12,0x00,
- #endif
- "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+9,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,115},
- /* 1001 0011 ddN0 ssss *** push @rd,rs */
- {
- #ifdef NICENAMES
- "push @rd,rs",16,9,0x00,
- #endif
- "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+9,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,115},
- /* 0001 0001 ddN0 ssN0 *** pushl @rd,@rs */
- {
- #ifdef NICENAMES
- "pushl @rd,@rs",32,20,0x00,
- #endif
- "pushl",OPC_pushl,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+1,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),0,0,0,0,0,},2,2,116},
- /* 0101 0001 ddN0 0000 address_src *** pushl @rd,address_src */
- {
- #ifdef NICENAMES
- "pushl @rd,address_src",32,21,0x00,
- #endif
- "pushl",OPC_pushl,0,{CLASS_IR+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+5,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,116},
- /* 0101 0001 ddN0 ssN0 address_src *** pushl @rd,address_src(rs) */
- {
- #ifdef NICENAMES
- "pushl @rd,address_src(rs)",32,21,0x00,
- #endif
- "pushl",OPC_pushl,0,{CLASS_IR+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,116},
- /* 1001 0001 ddN0 ssss *** pushl @rd,rrs */
- {
- #ifdef NICENAMES
- "pushl @rd,rrs",32,12,0x00,
- #endif
- "pushl",OPC_pushl,0,{CLASS_IR+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
- {CLASS_BIT+9,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,116},
- /* 0010 0011 ddN0 imm4 *** res @rd,imm4 */
- {
- #ifdef NICENAMES
- "res @rd,imm4",16,11,0x00,
- #endif
- "res",OPC_res,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+2,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,117},
- /* 0110 0011 ddN0 imm4 address_dst *** res address_dst(rd),imm4 */
- {
- #ifdef NICENAMES
- "res address_dst(rd),imm4",16,14,0x00,
- #endif
- "res",OPC_res,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+6,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,117},
- /* 0110 0011 0000 imm4 address_dst *** res address_dst,imm4 */
- {
- #ifdef NICENAMES
- "res address_dst,imm4",16,13,0x00,
- #endif
- "res",OPC_res,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+6,CLASS_BIT+3,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,117},
- /* 1010 0011 dddd imm4 *** res rd,imm4 */
- {
- #ifdef NICENAMES
- "res rd,imm4",16,4,0x00,
- #endif
- "res",OPC_res,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+0xa,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,117},
- /* 0010 0011 0000 ssss 0000 dddd 0000 0000 *** res rd,rs */
- {
- #ifdef NICENAMES
- "res rd,rs",16,10,0x00,
- #endif
- "res",OPC_res,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+2,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,117},
- /* 0010 0010 ddN0 imm4 *** resb @rd,imm4 */
- {
- #ifdef NICENAMES
- "resb @rd,imm4",8,11,0x00,
- #endif
- "resb",OPC_resb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+2,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,118},
- /* 0110 0010 ddN0 imm4 address_dst *** resb address_dst(rd),imm4 */
- {
- #ifdef NICENAMES
- "resb address_dst(rd),imm4",8,14,0x00,
- #endif
- "resb",OPC_resb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+6,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,118},
- /* 0110 0010 0000 imm4 address_dst *** resb address_dst,imm4 */
- {
- #ifdef NICENAMES
- "resb address_dst,imm4",8,13,0x00,
- #endif
- "resb",OPC_resb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+6,CLASS_BIT+2,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,118},
- /* 1010 0010 dddd imm4 *** resb rbd,imm4 */
- {
- #ifdef NICENAMES
- "resb rbd,imm4",8,4,0x00,
- #endif
- "resb",OPC_resb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+0xa,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,118},
- /* 0010 0010 0000 ssss 0000 dddd 0000 0000 *** resb rbd,rs */
- {
- #ifdef NICENAMES
- "resb rbd,rs",8,10,0x00,
- #endif
- "resb",OPC_resb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+2,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,118},
- /* 1000 1101 flags 0011 *** resflg flags */
- {
- #ifdef NICENAMES
- "resflg flags",16,7,0x3c,
- #endif
- "resflg",OPC_resflg,0,{CLASS_FLAGS,},
- {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_FLAGS,CLASS_BIT+3,0,0,0,0,0,},1,2,119},
- /* 1001 1110 0000 cccc *** ret cc */
- {
- #ifdef NICENAMES
- "ret cc",16,10,0x00,
- #endif
- "ret",OPC_ret,0,{CLASS_CC,},
- {CLASS_BIT+9,CLASS_BIT+0xe,CLASS_BIT+0,CLASS_CC,0,0,0,0,0,},1,2,120},
- /* 1011 0011 dddd 00I0 *** rl rd,imm1or2 */
- {
- #ifdef NICENAMES
- "rl rd,imm1or2",16,6,0x3c,
- #endif
- "rl",OPC_rl,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0,0,0,0,0,0,},2,2,121},
- /* 1011 0010 dddd 00I0 *** rlb rbd,imm1or2 */
- {
- #ifdef NICENAMES
- "rlb rbd,imm1or2",8,6,0x3c,
- #endif
- "rlb",OPC_rlb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
- {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0,0,0,0,0,0,},2,2,122},
- /* 1011 0011 dddd 10I0 *** rlc rd,imm1or2 */
- {
- #ifdef NICENAMES
- "rlc rd,imm1or2",16,6,0x3c,
- #endif
- "rlc",OPC_rlc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+8,0,0,0,0,0,},2,2,123},
- /* 1011 0010 dddd 10I0 *** rlcb rbd,imm1or2 */
- {
- #ifdef NICENAMES
- "rlcb rbd,imm1or2",8,9,0x10,
- #endif
- "rlcb",OPC_rlcb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
- {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+8,0,0,0,0,0,},2,2,124},
- /* 1011 1110 aaaa bbbb *** rldb rbb,rba */
- {
- #ifdef NICENAMES
- "rldb rbb,rba",8,9,0x10,
- #endif
- "rldb",OPC_rldb,0,{CLASS_REG_BYTE+(ARG_RB),CLASS_REG_BYTE+(ARG_RA),},
- {CLASS_BIT+0xb,CLASS_BIT+0xe,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RB),0,0,0,0,0,},2,2,125},
- /* 1011 0011 dddd 01I0 *** rr rd,imm1or2 */
- {
- #ifdef NICENAMES
- "rr rd,imm1or2",16,6,0x3c,
- #endif
- "rr",OPC_rr,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+4,0,0,0,0,0,},2,2,126},
- /* 1011 0010 dddd 01I0 *** rrb rbd,imm1or2 */
- {
- #ifdef NICENAMES
- "rrb rbd,imm1or2",8,6,0x3c,
- #endif
- "rrb",OPC_rrb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
- {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+4,0,0,0,0,0,},2,2,127},
- /* 1011 0011 dddd 11I0 *** rrc rd,imm1or2 */
- {
- #ifdef NICENAMES
- "rrc rd,imm1or2",16,6,0x3c,
- #endif
- "rrc",OPC_rrc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0xc,0,0,0,0,0,},2,2,128},
- /* 1011 0010 dddd 11I0 *** rrcb rbd,imm1or2 */
- {
- #ifdef NICENAMES
- "rrcb rbd,imm1or2",8,9,0x10,
- #endif
- "rrcb",OPC_rrcb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
- {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0xc,0,0,0,0,0,},2,2,129},
- /* 1011 1100 aaaa bbbb *** rrdb rbb,rba */
- {
- #ifdef NICENAMES
- "rrdb rbb,rba",8,9,0x10,
- #endif
- "rrdb",OPC_rrdb,0,{CLASS_REG_BYTE+(ARG_RB),CLASS_REG_BYTE+(ARG_RA),},
- {CLASS_BIT+0xb,CLASS_BIT+0xc,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RB),0,0,0,0,0,},2,2,130},
- /* 0011 0110 imm8 *** rsvd36 */
- {
- #ifdef NICENAMES
- "rsvd36",8,10,0x00,
- #endif
- "rsvd36",OPC_rsvd36,0,{0},
- {CLASS_BIT+3,CLASS_BIT+6,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,131},
- /* 0011 1000 imm8 *** rsvd38 */
- {
- #ifdef NICENAMES
- "rsvd38",8,10,0x00,
- #endif
- "rsvd38",OPC_rsvd38,0,{0},
- {CLASS_BIT+3,CLASS_BIT+8,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,132},
- /* 0111 1000 imm8 *** rsvd78 */
- {
- #ifdef NICENAMES
- "rsvd78",8,10,0x00,
- #endif
- "rsvd78",OPC_rsvd78,0,{0},
- {CLASS_BIT+7,CLASS_BIT+8,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,133},
- /* 0111 1110 imm8 *** rsvd7e */
- {
- #ifdef NICENAMES
- "rsvd7e",8,10,0x00,
- #endif
- "rsvd7e",OPC_rsvd7e,0,{0},
- {CLASS_BIT+7,CLASS_BIT+0xe,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,134},
- /* 1001 1101 imm8 *** rsvd9d */
- {
- #ifdef NICENAMES
- "rsvd9d",8,10,0x00,
- #endif
- "rsvd9d",OPC_rsvd9d,0,{0},
- {CLASS_BIT+9,CLASS_BIT+0xd,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,135},
- /* 1001 1111 imm8 *** rsvd9f */
- {
- #ifdef NICENAMES
- "rsvd9f",8,10,0x00,
- #endif
- "rsvd9f",OPC_rsvd9f,0,{0},
- {CLASS_BIT+9,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,136},
- /* 1011 1001 imm8 *** rsvdb9 */
- {
- #ifdef NICENAMES
- "rsvdb9",8,10,0x00,
- #endif
- "rsvdb9",OPC_rsvdb9,0,{0},
- {CLASS_BIT+0xb,CLASS_BIT+9,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,137},
- /* 1011 1111 imm8 *** rsvdbf */
- {
- #ifdef NICENAMES
- "rsvdbf",8,10,0x00,
- #endif
- "rsvdbf",OPC_rsvdbf,0,{0},
- {CLASS_BIT+0xb,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,138},
- /* 1011 0111 ssss dddd *** sbc rd,rs */
- {
- #ifdef NICENAMES
- "sbc rd,rs",16,5,0x3c,
- #endif
- "sbc",OPC_sbc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+0xb,CLASS_BIT+7,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,139},
- /* 1011 0110 ssss dddd *** sbcb rbd,rbs */
- {
- #ifdef NICENAMES
- "sbcb rbd,rbs",8,5,0x3f,
- #endif
- "sbcb",OPC_sbcb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+0xb,CLASS_BIT+6,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,140},
- /* 0111 1111 imm8 *** sc imm8 */
- {
- #ifdef NICENAMES
- "sc imm8",8,33,0x3f,
- #endif
- "sc",OPC_sc,0,{CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+7,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,141},
- /* 1011 0011 dddd 1011 0000 ssss 0000 0000 *** sda rd,rs */
- {
- #ifdef NICENAMES
- "sda rd,rs",16,15,0x3c,
- #endif
- "sda",OPC_sda,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,142},
- /* 1011 0010 dddd 1011 0000 ssss 0000 0000 *** sdab rbd,rs */
- {
- #ifdef NICENAMES
- "sdab rbd,rs",8,15,0x3c,
- #endif
- "sdab",OPC_sdab,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,143},
- /* 1011 0011 dddd 1111 0000 ssss 0000 0000 *** sdal rrd,rs */
- {
- #ifdef NICENAMES
- "sdal rrd,rs",32,15,0x3c,
- #endif
- "sdal",OPC_sdal,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+0xf,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,144},
- /* 1011 0011 dddd 0011 0000 ssss 0000 0000 *** sdl rd,rs */
- {
- #ifdef NICENAMES
- "sdl rd,rs",16,15,0x38,
- #endif
- "sdl",OPC_sdl,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,145},
- /* 1011 0010 dddd 0011 0000 ssss 0000 0000 *** sdlb rbd,rs */
- {
- #ifdef NICENAMES
- "sdlb rbd,rs",8,15,0x38,
- #endif
- "sdlb",OPC_sdlb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,146},
- /* 1011 0011 dddd 0111 0000 ssss 0000 0000 *** sdll rrd,rs */
- {
- #ifdef NICENAMES
- "sdll rrd,rs",32,15,0x38,
- #endif
- "sdll",OPC_sdll,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,147},
- /* 0010 0101 ddN0 imm4 *** set @rd,imm4 */
- {
- #ifdef NICENAMES
- "set @rd,imm4",16,11,0x00,
- #endif
- "set",OPC_set,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+2,CLASS_BIT+5,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,148},
- /* 0110 0101 ddN0 imm4 address_dst *** set address_dst(rd),imm4 */
- {
- #ifdef NICENAMES
- "set address_dst(rd),imm4",16,14,0x00,
- #endif
- "set",OPC_set,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+6,CLASS_BIT+5,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,148},
- /* 0110 0101 0000 imm4 address_dst *** set address_dst,imm4 */
- {
- #ifdef NICENAMES
- "set address_dst,imm4",16,13,0x00,
- #endif
- "set",OPC_set,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+6,CLASS_BIT+5,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,148},
- /* 1010 0101 dddd imm4 *** set rd,imm4 */
- {
- #ifdef NICENAMES
- "set rd,imm4",16,4,0x00,
- #endif
- "set",OPC_set,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+0xa,CLASS_BIT+5,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,148},
- /* 0010 0101 0000 ssss 0000 dddd 0000 0000 *** set rd,rs */
- {
- #ifdef NICENAMES
- "set rd,rs",16,10,0x00,
- #endif
- "set",OPC_set,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+2,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,148},
- /* 0010 0100 ddN0 imm4 *** setb @rd,imm4 */
- {
- #ifdef NICENAMES
- "setb @rd,imm4",8,11,0x00,
- #endif
- "setb",OPC_setb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+2,CLASS_BIT+4,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,149},
- /* 0110 0100 ddN0 imm4 address_dst *** setb address_dst(rd),imm4 */
- {
- #ifdef NICENAMES
- "setb address_dst(rd),imm4",8,14,0x00,
- #endif
- "setb",OPC_setb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+6,CLASS_BIT+4,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,149},
- /* 0110 0100 0000 imm4 address_dst *** setb address_dst,imm4 */
- {
- #ifdef NICENAMES
- "setb address_dst,imm4",8,13,0x00,
- #endif
- "setb",OPC_setb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+6,CLASS_BIT+4,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,149},
- /* 1010 0100 dddd imm4 *** setb rbd,imm4 */
- {
- #ifdef NICENAMES
- "setb rbd,imm4",8,4,0x00,
- #endif
- "setb",OPC_setb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+0xa,CLASS_BIT+4,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,149},
- /* 0010 0100 0000 ssss 0000 dddd 0000 0000 *** setb rbd,rs */
- {
- #ifdef NICENAMES
- "setb rbd,rs",8,10,0x00,
- #endif
- "setb",OPC_setb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+2,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,149},
- /* 1000 1101 flags 0001 *** setflg flags */
- {
- #ifdef NICENAMES
- "setflg flags",16,7,0x3c,
- #endif
- "setflg",OPC_setflg,0,{CLASS_FLAGS,},
- {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_FLAGS,CLASS_BIT+1,0,0,0,0,0,},1,2,150},
- /* 0011 1011 dddd 0101 imm16 *** sin rd,imm16 */
- {
- #ifdef NICENAMES
- "sin rd,imm16",16,12,0x00,
- #endif
- "sin",OPC_sin,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,151},
- /* 0011 1010 dddd 0101 imm16 *** sinb rbd,imm16 */
- {
- #ifdef NICENAMES
- "sinb rbd,imm16",8,10,0x00,
- #endif
- "sinb",OPC_sinb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,152},
- /* 0011 1011 ssss 1001 0000 aaaa ddN0 1000 *** sind @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "sind @rd,@ri,ra",16,21,0x04,
- #endif
- "sind",OPC_sind,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,153},
- /* 0011 1010 ssss 1001 0000 aaaa ddN0 1000 *** sindb @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "sindb @rd,@ri,ra",8,21,0x04,
- #endif
- "sindb",OPC_sindb,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,154},
- /* 0011 1011 ssss 1001 0000 aaaa ddN0 0000 *** sindr @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "sindr @rd,@ri,ra",16,11,0x04,
- #endif
- "sindr",OPC_sindr,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,155},
- /* 0011 1010 ssss 1001 0000 aaaa ddN0 0000 *** sindrb @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "sindrb @rd,@ri,ra",8,11,0x04,
- #endif
- "sindrb",OPC_sindrb,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,156},
- /* 0011 1011 ssss 0001 0000 aaaa ddN0 1000 *** sini @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "sini @rd,@ri,ra",16,21,0x04,
- #endif
- "sini",OPC_sini,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,157},
- /* 0011 1010 ssss 0001 0000 aaaa ddN0 1000 *** sinib @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "sinib @rd,@ri,ra",8,21,0x04,
- #endif
- "sinib",OPC_sinib,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,158},
- /* 0011 1011 ssss 0001 0000 aaaa ddN0 0000 *** sinir @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "sinir @rd,@ri,ra",16,11,0x04,
- #endif
- "sinir",OPC_sinir,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,159},
- /* 0011 1010 ssss 0001 0000 aaaa ddN0 0000 *** sinirb @rd,@ri,ra */
- {
- #ifdef NICENAMES
- "sinirb @rd,@ri,ra",8,11,0x04,
- #endif
- "sinirb",OPC_sinirb,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,160},
- /* 1011 0011 dddd 1001 0000 0000 imm8 *** sla rd,imm8 */
- {
- #ifdef NICENAMES
- "sla rd,imm8",16,13,0x3c,
- #endif
- "sla",OPC_sla,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+9,CLASS_BIT+0,CLASS_BIT+0,CLASS_IMM+(ARG_IMM8),0,0,},2,4,161},
- /* 1011 0010 dddd 1001 iiii iiii 0000 imm4 *** slab rbd,imm4 */
- {
- #ifdef NICENAMES
- "slab rbd,imm4",8,13,0x3c,
- #endif
- "slab",OPC_slab,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+9,CLASS_IGNORE,CLASS_IGNORE,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),0,},2,4,162},
- /* 1011 0011 dddd 1101 0000 0000 imm8 *** slal rrd,imm8 */
- {
- #ifdef NICENAMES
- "slal rrd,imm8",32,13,0x3c,
- #endif
- "slal",OPC_slal,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+0,CLASS_IMM+(ARG_IMM8),0,0,},2,4,163},
- /* 1011 0011 dddd 0001 0000 0000 imm8 *** sll rd,imm8 */
- {
- #ifdef NICENAMES
- "sll rd,imm8",16,13,0x38,
- #endif
- "sll",OPC_sll,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+1,CLASS_BIT+0,CLASS_BIT+0,CLASS_IMM+(ARG_IMM8),0,0,},2,4,164},
- /* 1011 0010 dddd 0001 iiii iiii 0000 imm4 *** sllb rbd,imm4 */
- {
- #ifdef NICENAMES
- "sllb rbd,imm4",8,13,0x38,
- #endif
- "sllb",OPC_sllb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+1,CLASS_IGNORE,CLASS_IGNORE,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),0,},2,4,165},
- /* 1011 0011 dddd 0101 0000 0000 imm8 *** slll rrd,imm8 */
- {
- #ifdef NICENAMES
- "slll rrd,imm8",32,13,0x38,
- #endif
- "slll",OPC_slll,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_BIT+0,CLASS_BIT+0,CLASS_IMM+(ARG_IMM8),0,0,},2,4,166},
- /* 0011 1011 ssN0 1011 0000 aaaa dddd 0000 *** sotdr @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "sotdr @ro,@rs,ra",16,11,0x04,
- #endif
- "sotdr",OPC_sotdr,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,167},
- /* 0011 1010 ssN0 1011 0000 aaaa dddd 0000 *** sotdrb @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "sotdrb @ro,@rs,ra",8,11,0x04,
- #endif
- "sotdrb",OPC_sotdrb,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,168},
- /* 0011 1011 ssN0 0011 0000 aaaa dddd 0000 *** sotir @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "sotir @ro,@rs,ra",16,11,0x04,
- #endif
- "sotir",OPC_sotir,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,169},
- /* 0011 1010 ssN0 0011 0000 aaaa dddd 0000 *** sotirb @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "sotirb @ro,@rs,ra",8,11,0x04,
- #endif
- "sotirb",OPC_sotirb,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,170},
- /* 0011 1011 ssss 0111 imm16 *** sout imm16,rs */
- {
- #ifdef NICENAMES
- "sout imm16,rs",16,12,0x00,
- #endif
- "sout",OPC_sout,0,{CLASS_IMM+(ARG_IMM16),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+7,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,171},
- /* 0011 1010 ssss 0111 imm16 *** soutb imm16,rbs */
- {
- #ifdef NICENAMES
- "soutb imm16,rbs",8,12,0x00,
- #endif
- "soutb",OPC_soutb,0,{CLASS_IMM+(ARG_IMM16),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+7,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,172},
- /* 0011 1011 ssN0 1011 0000 aaaa dddd 1000 *** soutd @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "soutd @ro,@rs,ra",16,21,0x04,
- #endif
- "soutd",OPC_soutd,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,173},
- /* 0011 1010 ssN0 1011 0000 aaaa dddd 1000 *** soutdb @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "soutdb @ro,@rs,ra",8,21,0x04,
- #endif
- "soutdb",OPC_soutdb,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,174},
- /* 0011 1011 ssN0 0011 0000 aaaa dddd 1000 *** souti @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "souti @ro,@rs,ra",16,21,0x04,
- #endif
- "souti",OPC_souti,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,175},
- /* 0011 1010 ssN0 0011 0000 aaaa dddd 1000 *** soutib @ro,@rs,ra */
- {
- #ifdef NICENAMES
- "soutib @ro,@rs,ra",8,21,0x04,
- #endif
- "soutib",OPC_soutib,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
- {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,176},
- /* 1011 0011 dddd 1001 1111 1111 nim8 *** sra rd,imm8 */
- {
- #ifdef NICENAMES
- "sra rd,imm8",16,13,0x3c,
- #endif
- "sra",OPC_sra,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+9,CLASS_BIT+0xf,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM8),0,0,},2,4,177},
- /* 1011 0010 dddd 1001 iiii iiii 1111 nim4 *** srab rbd,imm4 */
- {
- #ifdef NICENAMES
- "srab rbd,imm4",8,13,0x3c,
- #endif
- "srab",OPC_srab,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+9,CLASS_IGNORE,CLASS_IGNORE,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM4),0,},2,4,178},
- /* 1011 0011 dddd 1101 1111 1111 nim8 *** sral rrd,imm8 */
- {
- #ifdef NICENAMES
- "sral rrd,imm8",32,13,0x3c,
- #endif
- "sral",OPC_sral,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+0xd,CLASS_BIT+0xf,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM8),0,0,},2,4,179},
- /* 1011 0011 dddd 0001 1111 1111 nim8 *** srl rd,imm8 */
- {
- #ifdef NICENAMES
- "srl rd,imm8",16,13,0x3c,
- #endif
- "srl",OPC_srl,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+1,CLASS_BIT+0xf,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM8),0,0,},2,4,180},
- /* 1011 0010 dddd 0001 iiii iiii 1111 nim4 *** srlb rbd,imm4 */
- {
- #ifdef NICENAMES
- "srlb rbd,imm4",8,13,0x3c,
- #endif
- "srlb",OPC_srlb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
- {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+1,CLASS_IGNORE,CLASS_IGNORE,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM4),0,},2,4,181},
- /* 1011 0011 dddd 0101 1111 1111 nim8 *** srll rrd,imm8 */
- {
- #ifdef NICENAMES
- "srll rrd,imm8",32,13,0x3c,
- #endif
- "srll",OPC_srll,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_BIT+0xf,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM8),0,0,},2,4,182},
- /* 0000 0011 ssN0 dddd *** sub rd,@rs */
- {
- #ifdef NICENAMES
- "sub rd,@rs",16,7,0x3c,
- #endif
- "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+0,CLASS_BIT+3,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,183},
- /* 0100 0011 0000 dddd address_src *** sub rd,address_src */
- {
- #ifdef NICENAMES
- "sub rd,address_src",16,9,0x3c,
- #endif
- "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+4,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,183},
- /* 0100 0011 ssN0 dddd address_src *** sub rd,address_src(rs) */
- {
- #ifdef NICENAMES
- "sub rd,address_src(rs)",16,10,0x3c,
- #endif
- "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+4,CLASS_BIT+3,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,183},
- /* 0000 0011 0000 dddd imm16 *** sub rd,imm16 */
- {
- #ifdef NICENAMES
- "sub rd,imm16",16,7,0x3c,
- #endif
- "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+0,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,183},
- /* 1000 0011 ssss dddd *** sub rd,rs */
- {
- #ifdef NICENAMES
- "sub rd,rs",16,4,0x3c,
- #endif
- "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+8,CLASS_BIT+3,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,183},
- /* 0000 0010 ssN0 dddd *** subb rbd,@rs */
- {
- #ifdef NICENAMES
- "subb rbd,@rs",8,7,0x3f,
- #endif
- "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+0,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,184},
- /* 0100 0010 0000 dddd address_src *** subb rbd,address_src */
- {
- #ifdef NICENAMES
- "subb rbd,address_src",8,9,0x3f,
- #endif
- "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+4,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,184},
- /* 0100 0010 ssN0 dddd address_src *** subb rbd,address_src(rs) */
- {
- #ifdef NICENAMES
- "subb rbd,address_src(rs)",8,10,0x3f,
- #endif
- "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+4,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,184},
- /* 0000 0010 0000 dddd imm8 imm8 *** subb rbd,imm8 */
- {
- #ifdef NICENAMES
- "subb rbd,imm8",8,7,0x3f,
- #endif
- "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,184},
- /* 1000 0010 ssss dddd *** subb rbd,rbs */
- {
- #ifdef NICENAMES
- "subb rbd,rbs",8,4,0x3f,
- #endif
- "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+8,CLASS_BIT+2,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,184},
- /* 0001 0010 ssN0 dddd *** subl rrd,@rs */
- {
- #ifdef NICENAMES
- "subl rrd,@rs",32,14,0x3c,
- #endif
- "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+1,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,185},
- /* 0101 0010 0000 dddd address_src *** subl rrd,address_src */
- {
- #ifdef NICENAMES
- "subl rrd,address_src",32,15,0x3c,
- #endif
- "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+5,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,185},
- /* 0101 0010 ssN0 dddd address_src *** subl rrd,address_src(rs) */
- {
- #ifdef NICENAMES
- "subl rrd,address_src(rs)",32,16,0x3c,
- #endif
- "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+5,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,185},
- /* 0001 0010 0000 dddd imm32 *** subl rrd,imm32 */
- {
- #ifdef NICENAMES
- "subl rrd,imm32",32,14,0x3c,
- #endif
- "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
- {CLASS_BIT+1,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,185},
- /* 1001 0010 ssss dddd *** subl rrd,rrs */
- {
- #ifdef NICENAMES
- "subl rrd,rrs",32,8,0x3c,
- #endif
- "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
- {CLASS_BIT+9,CLASS_BIT+2,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,185},
- /* 1010 1111 dddd cccc *** tcc cc,rd */
- {
- #ifdef NICENAMES
- "tcc cc,rd",16,5,0x00,
- #endif
- "tcc",OPC_tcc,0,{CLASS_CC,CLASS_REG_WORD+(ARG_RD),},
- {CLASS_BIT+0xa,CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_CC,0,0,0,0,0,},2,2,186},
- /* 1010 1110 dddd cccc *** tccb cc,rbd */
- {
- #ifdef NICENAMES
- "tccb cc,rbd",8,5,0x00,
- #endif
- "tccb",OPC_tccb,0,{CLASS_CC,CLASS_REG_BYTE+(ARG_RD),},
- {CLASS_BIT+0xa,CLASS_BIT+0xe,CLASS_REG+(ARG_RD),CLASS_CC,0,0,0,0,0,},2,2,187},
- /* 0000 1101 ddN0 0100 *** test @rd */
- {
- #ifdef NICENAMES
- "test @rd",16,8,0x18,
- #endif
- "test",OPC_test,0,{CLASS_IR+(ARG_RD),},
- {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,188},
- /* 0100 1101 0000 0100 address_dst *** test address_dst */
- {
- #ifdef NICENAMES
- "test address_dst",16,11,0x00,
- #endif
- "test",OPC_test,0,{CLASS_DA+(ARG_DST),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,188},
- /* 0100 1101 ddN0 0100 address_dst *** test address_dst(rd) */
- {
- #ifdef NICENAMES
- "test address_dst(rd)",16,12,0x00,
- #endif
- "test",OPC_test,0,{CLASS_X+(ARG_RD),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,188},
- /* 1000 1101 dddd 0100 *** test rd */
- {
- #ifdef NICENAMES
- "test rd",16,7,0x00,
- #endif
- "test",OPC_test,0,{CLASS_REG_WORD+(ARG_RD),},
- {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,188},
- /* 0000 1100 ddN0 0100 *** testb @rd */
- {
- #ifdef NICENAMES
- "testb @rd",8,8,0x1c,
- #endif
- "testb",OPC_testb,0,{CLASS_IR+(ARG_RD),},
- {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,189},
- /* 0100 1100 0000 0100 address_dst *** testb address_dst */
- {
- #ifdef NICENAMES
- "testb address_dst",8,11,0x1c,
- #endif
- "testb",OPC_testb,0,{CLASS_DA+(ARG_DST),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,189},
- /* 0100 1100 ddN0 0100 address_dst *** testb address_dst(rd) */
- {
- #ifdef NICENAMES
- "testb address_dst(rd)",8,12,0x1c,
- #endif
- "testb",OPC_testb,0,{CLASS_X+(ARG_RD),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,189},
- /* 1000 1100 dddd 0100 *** testb rbd */
- {
- #ifdef NICENAMES
- "testb rbd",8,7,0x1c,
- #endif
- "testb",OPC_testb,0,{CLASS_REG_BYTE+(ARG_RD),},
- {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,189},
- /* 0001 1100 ddN0 1000 *** testl @rd */
- {
- #ifdef NICENAMES
- "testl @rd",32,13,0x18,
- #endif
- "testl",OPC_testl,0,{CLASS_IR+(ARG_RD),},
- {CLASS_BIT+1,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,190},
- /* 0101 1100 0000 1000 address_dst *** testl address_dst */
- {
- #ifdef NICENAMES
- "testl address_dst",32,16,0x18,
- #endif
- "testl",OPC_testl,0,{CLASS_DA+(ARG_DST),},
- {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,190},
- /* 0101 1100 ddN0 1000 address_dst *** testl address_dst(rd) */
- {
- #ifdef NICENAMES
- "testl address_dst(rd)",32,17,0x18,
- #endif
- "testl",OPC_testl,0,{CLASS_X+(ARG_RD),},
- {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,190},
- /* 1001 1100 dddd 1000 *** testl rrd */
- {
- #ifdef NICENAMES
- "testl rrd",32,13,0x18,
- #endif
- "testl",OPC_testl,0,{CLASS_REG_LONG+(ARG_RD),},
- {CLASS_BIT+9,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,190},
- /* 1011 1000 ddN0 1000 0000 rrrr ssN0 0000 *** trdb @rd,@rs,rr */
- {
- #ifdef NICENAMES
- "trdb @rd,@rs,rr",8,25,0x04,
- #endif
- "trdb",OPC_trdb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,191},
- /* 1011 1000 ddN0 1100 0000 rrrr ssN0 0000 *** trdrb @rd,@rs,rr */
- {
- #ifdef NICENAMES
- "trdrb @rd,@rs,rr",8,25,0x04,
- #endif
- "trdrb",OPC_trdrb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,192},
- /* 1011 1000 ddN0 0000 0000 rrrr ssN0 0000 *** trib @rd,@rs,rr */
- {
- #ifdef NICENAMES
- "trib @rd,@rs,rr",8,25,0x04,
- #endif
- "trib",OPC_trib,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,193},
- /* 1011 1000 ddN0 0100 0000 rrrr ssN0 0000 *** trirb @rd,@rs,rr */
- {
- #ifdef NICENAMES
- "trirb @rd,@rs,rr",8,25,0x04,
- #endif
- "trirb",OPC_trirb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,194},
- /* 1011 1000 aaN0 1010 0000 rrrr bbN0 0000 *** trtdb @ra,@rb,rr */
- {
- #ifdef NICENAMES
- "trtdb @ra,@rb,rr",8,25,0x14,
- #endif
- "trtdb",OPC_trtdb,0,{CLASS_IR+(ARG_RA),CLASS_IR+(ARG_RB),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0,0,},3,4,195},
- /* 1011 1000 aaN0 1110 0000 rrrr bbN0 1110 *** trtdrb @ra,@rb,rr */
- {
- #ifdef NICENAMES
- "trtdrb @ra,@rb,rr",8,25,0x14,
- #endif
- "trtdrb",OPC_trtdrb,0,{CLASS_IR+(ARG_RA),CLASS_IR+(ARG_RB),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+0xe,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0xe,0,},3,4,196},
- /* 1011 1000 aaN0 0010 0000 rrrr bbN0 0000 *** trtib @ra,@rb,rr */
- {
- #ifdef NICENAMES
- "trtib @ra,@rb,rr",8,25,0x14,
- #endif
- "trtib",OPC_trtib,0,{CLASS_IR+(ARG_RA),CLASS_IR+(ARG_RB),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0,0,},3,4,197},
- /* 1011 1000 aaN0 0110 0000 rrrr bbN0 1110 *** trtirb @ra,@rb,rr */
- {
- #ifdef NICENAMES
- "trtirb @ra,@rb,rr",8,25,0x14,
- #endif
- "trtirb",OPC_trtirb,0,{CLASS_IR+(ARG_RA),CLASS_IR+(ARG_RB),CLASS_REG_WORD+(ARG_RR),},
- {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0xe,0,},3,4,198},
- /* 0000 1101 ddN0 0110 *** tset @rd */
- {
- #ifdef NICENAMES
- "tset @rd",16,11,0x08,
- #endif
- "tset",OPC_tset,0,{CLASS_IR+(ARG_RD),},
- {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,199},
- /* 0100 1101 0000 0110 address_dst *** tset address_dst */
- {
- #ifdef NICENAMES
- "tset address_dst",16,14,0x08,
- #endif
- "tset",OPC_tset,0,{CLASS_DA+(ARG_DST),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,199},
- /* 0100 1101 ddN0 0110 address_dst *** tset address_dst(rd) */
- {
- #ifdef NICENAMES
- "tset address_dst(rd)",16,15,0x08,
- #endif
- "tset",OPC_tset,0,{CLASS_X+(ARG_RD),},
- {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,199},
- /* 1000 1101 dddd 0110 *** tset rd */
- {
- #ifdef NICENAMES
- "tset rd",16,7,0x08,
- #endif
- "tset",OPC_tset,0,{CLASS_REG_WORD+(ARG_RD),},
- {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,199},
- /* 0000 1100 ddN0 0110 *** tsetb @rd */
- {
- #ifdef NICENAMES
- "tsetb @rd",8,11,0x08,
- #endif
- "tsetb",OPC_tsetb,0,{CLASS_IR+(ARG_RD),},
- {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,200},
- /* 0100 1100 0000 0110 address_dst *** tsetb address_dst */
- {
- #ifdef NICENAMES
- "tsetb address_dst",8,14,0x08,
- #endif
- "tsetb",OPC_tsetb,0,{CLASS_DA+(ARG_DST),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,200},
- /* 0100 1100 ddN0 0110 address_dst *** tsetb address_dst(rd) */
- {
- #ifdef NICENAMES
- "tsetb address_dst(rd)",8,15,0x08,
- #endif
- "tsetb",OPC_tsetb,0,{CLASS_X+(ARG_RD),},
- {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,200},
- /* 1000 1100 dddd 0110 *** tsetb rbd */
- {
- #ifdef NICENAMES
- "tsetb rbd",8,7,0x08,
- #endif
- "tsetb",OPC_tsetb,0,{CLASS_REG_BYTE+(ARG_RD),},
- {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,200},
- /* 0000 1001 ssN0 dddd *** xor rd,@rs */
- {
- #ifdef NICENAMES
- "xor rd,@rs",16,7,0x18,
- #endif
- "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+0,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,201},
- /* 0100 1001 0000 dddd address_src *** xor rd,address_src */
- {
- #ifdef NICENAMES
- "xor rd,address_src",16,9,0x18,
- #endif
- "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+4,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,201},
- /* 0100 1001 ssN0 dddd address_src *** xor rd,address_src(rs) */
- {
- #ifdef NICENAMES
- "xor rd,address_src(rs)",16,10,0x18,
- #endif
- "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+4,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,201},
- /* 0000 1001 0000 dddd imm16 *** xor rd,imm16 */
- {
- #ifdef NICENAMES
- "xor rd,imm16",16,7,0x18,
- #endif
- "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
- {CLASS_BIT+0,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,201},
- /* 1000 1001 ssss dddd *** xor rd,rs */
- {
- #ifdef NICENAMES
- "xor rd,rs",16,4,0x18,
- #endif
- "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
- {CLASS_BIT+8,CLASS_BIT+9,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,201},
- /* 0000 1000 ssN0 dddd *** xorb rbd,@rs */
- {
- #ifdef NICENAMES
- "xorb rbd,@rs",8,7,0x1c,
- #endif
- "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
- {CLASS_BIT+0,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,202},
- /* 0100 1000 0000 dddd address_src *** xorb rbd,address_src */
- {
- #ifdef NICENAMES
- "xorb rbd,address_src",8,9,0x1c,
- #endif
- "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
- {CLASS_BIT+4,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,202},
- /* 0100 1000 ssN0 dddd address_src *** xorb rbd,address_src(rs) */
- {
- #ifdef NICENAMES
- "xorb rbd,address_src(rs)",8,10,0x1c,
- #endif
- "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
- {CLASS_BIT+4,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,202},
- /* 0000 1000 0000 dddd imm8 imm8 *** xorb rbd,imm8 */
- {
- #ifdef NICENAMES
- "xorb rbd,imm8",8,7,0x1c,
- #endif
- "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
- {CLASS_BIT+0,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,202},
- /* 1000 1000 ssss dddd *** xorb rbd,rbs */
- {
- #ifdef NICENAMES
- "xorb rbd,rbs",8,4,0x1c,
- #endif
- "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
- {CLASS_BIT+8,CLASS_BIT+8,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,202},
- /* end marker */
- {
- #ifdef NICENAMES
- NULL,0,0,
- 0,
- #endif
- NULL,0,0,{0,0,0,0},{0,0,0,0,0,0,0,0,0,0},0,0,0}
- };
- #endif
|