{
case 0x0:
{
- switch((insn.bits >> 0x7) & 0x7)
- {
- case 0x0:
- {
- if((insn.bits & 0xffffffff) == 0x0)
- {
- #include "insns/unimp.h"
- break;
- }
- #include "insns/unimp.h"
- }
- default:
- {
- #include "insns/unimp.h"
- }
- }
+ #include "insns/c_addi.h"
break;
}
case 0x3:
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
#include "insns/sb_v.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x1:
{
#include "insns/shst_v.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x2:
{
#include "insns/lwst_v.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x3:
{
#include "insns/sdst_v.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x4:
{
#include "insns/lbust_v.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x5:
{
- if((insn.bits & 0x1ffff) == 0x228b)
- {
- #include "insns/lhuseg_v.h"
- break;
- }
if((insn.bits & 0x1ffff) == 0x128b)
{
#include "insns/lhust_v.h"
#include "insns/lhu_v.h"
break;
}
- #include "insns/unimp.h"
+ if((insn.bits & 0x1ffff) == 0x228b)
+ {
+ #include "insns/lhuseg_v.h"
+ break;
+ }
+ throw trap_illegal_instruction;
}
case 0x6:
{
#include "insns/lwust_v.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
#include "insns/lbsegst_v.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x1:
{
#include "insns/lhsegst_v.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x2:
{
#include "insns/swsegst_v.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x3:
{
#include "insns/fsdsegst_v.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x4:
{
#include "insns/lbusegst_v.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x5:
{
#include "insns/lhusegst_v.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x6:
{
#include "insns/lwusegst_v.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
#include "insns/slli.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x2:
{
#include "insns/srai.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x6:
{
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
#include "insns/slliw.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x5:
{
#include "insns/sraiw.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
}
+ case 0x20:
+ {
+ #include "insns/c_addi.h"
+ break;
+ }
case 0x23:
{
switch((insn.bits >> 0x7) & 0x7)
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
#include "insns/amoswap_w.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x3:
{
#include "insns/amomin_d.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
#include "insns/sub.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x1:
{
#include "insns/mulh.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x2:
{
#include "insns/slt.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x3:
{
#include "insns/mulhu.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x4:
{
#include "insns/xor.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x5:
{
#include "insns/divu.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x6:
{
#include "insns/or.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x7:
{
#include "insns/and.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
#include "insns/subw.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x1:
{
#include "insns/sllw.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x4:
{
#include "insns/divw.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x5:
{
#include "insns/sraw.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x6:
{
#include "insns/remw.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x7:
{
#include "insns/remuw.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
}
+ case 0x40:
+ {
+ #include "insns/c_addi.h"
+ break;
+ }
case 0x43:
{
switch((insn.bits >> 0x7) & 0x7)
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
#include "insns/fadd_s.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x1:
{
#include "insns/fdiv_d.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x4:
{
#include "insns/fadd_s.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x5:
{
#include "insns/fdiv_d.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
}
+ case 0x60:
+ {
+ #include "insns/c_addi.h"
+ break;
+ }
case 0x63:
{
switch((insn.bits >> 0x7) & 0x7)
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
#include "insns/rdnpc.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
#include "insns/setvl.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x2:
{
#include "insns/vf.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
#include "insns/syscall.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x1:
{
#include "insns/break.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x2:
{
#include "insns/stop.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x3:
{
#include "insns/utidx.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
#include "insns/ei.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x1:
{
#include "insns/di.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x2:
{
#include "insns/mfpcr.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x3:
{
#include "insns/mtpcr.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
case 0x4:
{
#include "insns/eret.h"
break;
}
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}
break;
}
default:
{
- #include "insns/unimp.h"
+ throw trap_illegal_instruction;
}
}