f78375a16e9702dda525ed8ff4addba143b1b676
1 /* Automatically generated by parse-opcodes */
2 switch((insn
.bits
>> 0x0) & 0x7f)
6 switch((insn
.bits
>> 0x7) & 0x7)
10 if((insn
.bits
& 0xffffffff) == 0x0)
12 #include "insns/unimp.h"
15 #include "insns/unimp.h"
19 #include "insns/unimp.h"
26 switch((insn
.bits
>> 0x7) & 0x7)
30 #include "insns/l_b.h"
35 #include "insns/l_h.h"
40 #include "insns/l_w.h"
45 #include "insns/l_d.h"
50 #include "insns/l_bu.h"
55 #include "insns/l_hu.h"
60 #include "insns/l_wu.h"
65 #include "insns/unimp.h"
72 switch((insn
.bits
>> 0x7) & 0x7)
76 #include "insns/lf_w.h"
81 #include "insns/lf_d.h"
86 #include "insns/unimp.h"
93 switch((insn
.bits
>> 0x7) & 0x7)
97 #include "insns/addi.h"
102 if((insn
.bits
& 0x3f03ff) == 0x93)
104 #include "insns/slli.h"
107 #include "insns/unimp.h"
111 #include "insns/slti.h"
116 #include "insns/sltiu.h"
121 #include "insns/xori.h"
126 if((insn
.bits
& 0x3f03ff) == 0x293)
128 #include "insns/srli.h"
131 if((insn
.bits
& 0x3f03ff) == 0x10293)
133 #include "insns/srai.h"
136 #include "insns/unimp.h"
140 #include "insns/ori.h"
145 #include "insns/andi.h"
150 #include "insns/unimp.h"
157 switch((insn
.bits
>> 0x7) & 0x7)
161 if((insn
.bits
& 0x7ffffff) == 0x17)
163 #include "insns/rdnpc.h"
166 #include "insns/unimp.h"
170 if((insn
.bits
& 0xffffffff) == 0x97)
172 #include "insns/synci.h"
175 #include "insns/unimp.h"
179 if((insn
.bits
& 0xffffffff) == 0x117)
181 #include "insns/sync.h"
184 #include "insns/unimp.h"
188 if((insn
.bits
& 0xffc003ff) == 0x197)
190 #include "insns/syscall.h"
193 #include "insns/unimp.h"
197 #include "insns/unimp.h"
204 switch((insn
.bits
>> 0x7) & 0x7)
208 #include "insns/addiw.h"
213 if((insn
.bits
& 0x3f83ff) == 0x9b)
215 #include "insns/slliw.h"
218 #include "insns/unimp.h"
222 if((insn
.bits
& 0x3f83ff) == 0x29b)
224 #include "insns/srliw.h"
227 if((insn
.bits
& 0x3f83ff) == 0x1029b)
229 #include "insns/sraiw.h"
232 #include "insns/unimp.h"
236 #include "insns/unimp.h"
243 switch((insn
.bits
>> 0x7) & 0x7)
247 #include "insns/s_b.h"
252 #include "insns/s_h.h"
257 #include "insns/s_w.h"
262 #include "insns/s_d.h"
267 #include "insns/unimp.h"
274 switch((insn
.bits
>> 0x7) & 0x7)
278 #include "insns/sf_w.h"
283 #include "insns/sf_d.h"
288 #include "insns/unimp.h"
295 switch((insn
.bits
>> 0x7) & 0x7)
299 if((insn
.bits
& 0x1ffff) == 0x33)
301 #include "insns/add.h"
304 if((insn
.bits
& 0x1ffff) == 0x433)
306 #include "insns/mul.h"
309 if((insn
.bits
& 0x1ffff) == 0x10033)
311 #include "insns/sub.h"
314 #include "insns/unimp.h"
318 if((insn
.bits
& 0x1ffff) == 0xb3)
320 #include "insns/sll.h"
323 if((insn
.bits
& 0x1ffff) == 0x4b3)
325 #include "insns/mulh.h"
328 #include "insns/unimp.h"
332 if((insn
.bits
& 0x1ffff) == 0x533)
334 #include "insns/mulhsu.h"
337 if((insn
.bits
& 0x1ffff) == 0x133)
339 #include "insns/slt.h"
342 #include "insns/unimp.h"
346 if((insn
.bits
& 0x1ffff) == 0x1b3)
348 #include "insns/sltu.h"
351 if((insn
.bits
& 0x1ffff) == 0x5b3)
353 #include "insns/mulhu.h"
356 #include "insns/unimp.h"
360 if((insn
.bits
& 0x1ffff) == 0x633)
362 #include "insns/div.h"
365 if((insn
.bits
& 0x1ffff) == 0x233)
367 #include "insns/xor.h"
370 #include "insns/unimp.h"
374 if((insn
.bits
& 0x1ffff) == 0x102b3)
376 #include "insns/sra.h"
379 if((insn
.bits
& 0x1ffff) == 0x2b3)
381 #include "insns/srl.h"
384 if((insn
.bits
& 0x1ffff) == 0x6b3)
386 #include "insns/divu.h"
389 #include "insns/unimp.h"
393 if((insn
.bits
& 0x1ffff) == 0x733)
395 #include "insns/rem.h"
398 if((insn
.bits
& 0x1ffff) == 0x333)
400 #include "insns/or.h"
403 #include "insns/unimp.h"
407 if((insn
.bits
& 0x1ffff) == 0x7b3)
409 #include "insns/remu.h"
412 if((insn
.bits
& 0x1ffff) == 0x3b3)
414 #include "insns/and.h"
417 #include "insns/unimp.h"
421 #include "insns/unimp.h"
428 #include "insns/lui.h"
433 switch((insn
.bits
>> 0x7) & 0x7)
437 if((insn
.bits
& 0x1ffff) == 0x3b)
439 #include "insns/addw.h"
442 if((insn
.bits
& 0x1ffff) == 0x1003b)
444 #include "insns/subw.h"
447 if((insn
.bits
& 0x1ffff) == 0x43b)
449 #include "insns/mulw.h"
452 #include "insns/unimp.h"
456 if((insn
.bits
& 0x1ffff) == 0xbb)
458 #include "insns/sllw.h"
461 #include "insns/unimp.h"
465 if((insn
.bits
& 0x1ffff) == 0x63b)
467 #include "insns/divw.h"
470 #include "insns/unimp.h"
474 if((insn
.bits
& 0x1ffff) == 0x6bb)
476 #include "insns/divuw.h"
479 if((insn
.bits
& 0x1ffff) == 0x2bb)
481 #include "insns/srlw.h"
484 if((insn
.bits
& 0x1ffff) == 0x102bb)
486 #include "insns/sraw.h"
489 #include "insns/unimp.h"
493 if((insn
.bits
& 0x1ffff) == 0x73b)
495 #include "insns/remw.h"
498 #include "insns/unimp.h"
502 if((insn
.bits
& 0x1ffff) == 0x7bb)
504 #include "insns/remuw.h"
507 #include "insns/unimp.h"
511 #include "insns/unimp.h"
518 switch((insn
.bits
>> 0x7) & 0x7)
522 #include "insns/fmadd_s.h"
527 #include "insns/fmadd_d.h"
532 if((insn
.bits
& 0x1ffff) == 0x1943)
534 #include "insns/amominu_w.h"
537 if((insn
.bits
& 0x1ffff) == 0x943)
539 #include "insns/amoand_w.h"
542 if((insn
.bits
& 0x1ffff) == 0x1d43)
544 #include "insns/amomaxu_w.h"
547 if((insn
.bits
& 0x1ffff) == 0x1543)
549 #include "insns/amomax_w.h"
552 if((insn
.bits
& 0x1ffff) == 0x143)
554 #include "insns/amoadd_w.h"
557 if((insn
.bits
& 0x1ffff) == 0xd43)
559 #include "insns/amoor_w.h"
562 if((insn
.bits
& 0x1ffff) == 0x1143)
564 #include "insns/amomin_w.h"
567 if((insn
.bits
& 0x1ffff) == 0x543)
569 #include "insns/amoswap_w.h"
572 #include "insns/unimp.h"
576 if((insn
.bits
& 0x1ffff) == 0x19c3)
578 #include "insns/amominu_d.h"
581 if((insn
.bits
& 0x1ffff) == 0x9c3)
583 #include "insns/amoand_d.h"
586 if((insn
.bits
& 0x1ffff) == 0x1dc3)
588 #include "insns/amomaxu_d.h"
591 if((insn
.bits
& 0x1ffff) == 0x11c3)
593 #include "insns/amomin_d.h"
596 if((insn
.bits
& 0x1ffff) == 0x1c3)
598 #include "insns/amoadd_d.h"
601 if((insn
.bits
& 0x1ffff) == 0x15c3)
603 #include "insns/amomax_d.h"
606 if((insn
.bits
& 0x1ffff) == 0xdc3)
608 #include "insns/amoor_d.h"
611 if((insn
.bits
& 0x1ffff) == 0x5c3)
613 #include "insns/amoswap_d.h"
616 #include "insns/unimp.h"
620 #include "insns/unimp.h"
627 switch((insn
.bits
>> 0x7) & 0x7)
631 #include "insns/fmsub_s.h"
636 #include "insns/fmsub_d.h"
641 #include "insns/unimp.h"
648 switch((insn
.bits
>> 0x7) & 0x7)
652 #include "insns/fnmsub_s.h"
657 #include "insns/fnmsub_d.h"
662 #include "insns/unimp.h"
669 switch((insn
.bits
>> 0x7) & 0x7)
673 #include "insns/fnmadd_s.h"
678 #include "insns/fnmadd_d.h"
683 #include "insns/unimp.h"
690 switch((insn
.bits
>> 0x7) & 0x7)
694 if((insn
.bits
& 0x3ff1ff) == 0x11053)
696 #include "insns/fcvt_s_d.h"
699 if((insn
.bits
& 0x1f1ff) == 0x53)
701 #include "insns/fadd_s.h"
704 if((insn
.bits
& 0x3ff1ff) == 0xe053)
706 #include "insns/fcvt_s_w.h"
709 if((insn
.bits
& 0x3ff1ff) == 0xb053)
711 #include "insns/fcvtu_w_s.h"
714 if((insn
.bits
& 0x3ff1ff) == 0x8053)
716 #include "insns/fcvt_l_s.h"
719 if((insn
.bits
& 0x1f1ff) == 0x3053)
721 #include "insns/fdiv_s.h"
724 if((insn
.bits
& 0x1f1ff) == 0x2053)
726 #include "insns/fmul_s.h"
729 if((insn
.bits
& 0x3ff1ff) == 0xa053)
731 #include "insns/fcvt_w_s.h"
734 if((insn
.bits
& 0x1f1ff) == 0x1053)
736 #include "insns/fsub_s.h"
739 if((insn
.bits
& 0x3ff1ff) == 0xf053)
741 #include "insns/fcvtu_s_w.h"
744 if((insn
.bits
& 0x3ff1ff) == 0xd053)
746 #include "insns/fcvtu_s_l.h"
749 if((insn
.bits
& 0x3ff1ff) == 0x9053)
751 #include "insns/fcvtu_l_s.h"
754 if((insn
.bits
& 0x3ff1ff) == 0xc053)
756 #include "insns/fcvt_s_l.h"
759 if((insn
.bits
& 0x3ff1ff) == 0x4053)
761 #include "insns/fsqrt_s.h"
764 #include "insns/unimp.h"
768 if((insn
.bits
& 0x3ff1ff) == 0xc0d3)
770 #include "insns/fcvt_d_l.h"
773 if((insn
.bits
& 0x3ff1ff) == 0x80d3)
775 #include "insns/fcvt_l_d.h"
778 if((insn
.bits
& 0x1f1ff) == 0x20d3)
780 #include "insns/fmul_d.h"
783 if((insn
.bits
& 0x3ff1ff) == 0xa0d3)
785 #include "insns/fcvt_w_d.h"
788 if((insn
.bits
& 0x3ff1ff) == 0xb0d3)
790 #include "insns/fcvtu_w_d.h"
793 if((insn
.bits
& 0x1f1ff) == 0xd3)
795 #include "insns/fadd_d.h"
798 if((insn
.bits
& 0x3ff1ff) == 0x90d3)
800 #include "insns/fcvtu_l_d.h"
803 if((insn
.bits
& 0x1f1ff) == 0x10d3)
805 #include "insns/fsub_d.h"
808 if((insn
.bits
& 0x3ff1ff) == 0x40d3)
810 #include "insns/fsqrt_d.h"
813 if((insn
.bits
& 0x1f1ff) == 0x30d3)
815 #include "insns/fdiv_d.h"
818 if((insn
.bits
& 0x3ff1ff) == 0xd0d3)
820 #include "insns/fcvtu_d_l.h"
823 #include "insns/unimp.h"
827 if((insn
.bits
& 0x1ffff) == 0x6e53)
829 #include "insns/fsinjn_s.h"
832 if((insn
.bits
& 0x7c1ffff) == 0x18e53)
834 #include "insns/mff_s.h"
837 if((insn
.bits
& 0xf83fffff) == 0x1de53)
839 #include "insns/mtfsr.h"
842 if((insn
.bits
& 0x3fffff) == 0x1ce53)
844 #include "insns/mtf_s.h"
847 if((insn
.bits
& 0x7ffffff) == 0x1be53)
849 #include "insns/mffsr.h"
852 if((insn
.bits
& 0x1ffff) == 0x16e53)
854 #include "insns/fc_lt_s.h"
857 if((insn
.bits
& 0x1ffff) == 0x7e53)
859 #include "insns/fsmul_s.h"
862 if((insn
.bits
& 0x1ffff) == 0x5e53)
864 #include "insns/fsinj_s.h"
867 if((insn
.bits
& 0x1ffff) == 0x17e53)
869 #include "insns/fc_le_s.h"
872 if((insn
.bits
& 0x1ffff) == 0x15e53)
874 #include "insns/fc_eq_s.h"
877 #include "insns/unimp.h"
881 if((insn
.bits
& 0x7c1ffff) == 0x18ed3)
883 #include "insns/mff_d.h"
886 if((insn
.bits
& 0x1ffff) == 0x6ed3)
888 #include "insns/fsinjn_d.h"
891 if((insn
.bits
& 0x3fffff) == 0xeed3)
893 #include "insns/fcvt_d_w.h"
896 if((insn
.bits
& 0x3fffff) == 0x10ed3)
898 #include "insns/fcvt_d_s.h"
901 if((insn
.bits
& 0x3fffff) == 0x1ced3)
903 #include "insns/mtf_d.h"
906 if((insn
.bits
& 0x3fffff) == 0xfed3)
908 #include "insns/fcvtu_d_w.h"
911 if((insn
.bits
& 0x1ffff) == 0x16ed3)
913 #include "insns/fc_lt_d.h"
916 if((insn
.bits
& 0x1ffff) == 0x15ed3)
918 #include "insns/fc_eq_d.h"
921 if((insn
.bits
& 0x1ffff) == 0x7ed3)
923 #include "insns/fsmul_d.h"
926 if((insn
.bits
& 0x1ffff) == 0x5ed3)
928 #include "insns/fsinj_d.h"
931 if((insn
.bits
& 0x1ffff) == 0x17ed3)
933 #include "insns/fc_le_d.h"
936 #include "insns/unimp.h"
940 #include "insns/unimp.h"
947 switch((insn
.bits
>> 0x7) & 0x7)
951 #include "insns/beq.h"
956 #include "insns/bne.h"
961 #include "insns/blt.h"
966 #include "insns/bge.h"
971 #include "insns/bltu.h"
976 #include "insns/bgeu.h"
981 #include "insns/unimp.h"
993 switch((insn
.bits
>> 0x7) & 0x7)
997 #include "insns/jalr_c.h"
1002 #include "insns/jalr_r.h"
1007 #include "insns/jalr_j.h"
1012 #include "insns/unimp.h"
1019 #include "insns/jal.h"
1024 switch((insn
.bits
>> 0x7) & 0x7)
1028 if((insn
.bits
& 0x7ffffff) == 0x47f)
1030 #include "insns/di.h"
1033 if((insn
.bits
& 0x7ffffff) == 0x7f)
1035 #include "insns/ei.h"
1038 #include "insns/unimp.h"
1042 if((insn
.bits
& 0x7c1ffff) == 0xff)
1044 #include "insns/mfpcr.h"
1047 if((insn
.bits
& 0xf801ffff) == 0x4ff)
1049 #include "insns/mtpcr.h"
1052 #include "insns/unimp.h"
1056 if((insn
.bits
& 0xffffffff) == 0x17f)
1058 #include "insns/eret.h"
1061 #include "insns/unimp.h"
1065 #include "insns/unimp.h"
1072 #include "insns/unimp.h"