⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 arm_dec.h

📁 RISC processor ARM-7 emulator
💻 H
📖 第 1 页 / 共 4 页
字号:
  _FUNC_NAME(rsc_2s),
  _FUNC_NAME(ld2_imm),
  _FUNC_NAME(rsc_2s),
  _FUNC_NAME(ld2_imm),
  _FUNC_NAME(rsc_2s),
  _FUNC_NAME(ld2_imm),
_TABLE_DEF_END

/*
Table begin: index=1 size=6
Mask=0x000000e0	DMask=0x0ff00010	CMask=0x00000080	Sig=0x01500090
Prob=0.578947368	Entropy=0.845350938	HTreeHeight=1.27272727
-------------------------------------------------------------------
mask=0x0ff00090	sig=0x01500010	prob=0.727272727	name=cmp_3s
mask=0x0ff000f0	sig=0x015000b0	prob=0.0909090909	name=ld2_imm
mask=0x0ff000f0	sig=0x015000d0	prob=0.0909090909	name=ld2_imm
mask=0x0ff000f0	sig=0x015000f0	prob=0.0909090909	name=ld2_imm
mask=0x0ff000f0	sig=0x01500090	prob=1.81818182e-11	name=null
mask=0x0ff000f0	sig=0x01500090	prob=9.09090909e-12	name=null
-------------------------------------------------------------------
Table Mask=0x000000e0*/

_TABLE_DEF_BEGIN(table_15, 8)
  _FUNC_NAME(cmp_3s),
  _FUNC_NAME(cmp_3s),
  _FUNC_NAME(cmp_3s),
  _FUNC_NAME(cmp_3s),
  _FUNC_NAME(null),
  _FUNC_NAME(ld2_imm),
  _FUNC_NAME(ld2_imm),
  _FUNC_NAME(ld2_imm),
_TABLE_DEF_END

/*
Table begin: index=1 size=6
Mask=0x000000e0	DMask=0x0ff00010	CMask=0x00000080	Sig=0x01700090
Prob=0.578947368	Entropy=0.845350938	HTreeHeight=1.27272727
-------------------------------------------------------------------
mask=0x0ff00090	sig=0x01700010	prob=0.727272727	name=cmn_3s
mask=0x0ff000f0	sig=0x017000b0	prob=0.0909090909	name=ld2_imm
mask=0x0ff000f0	sig=0x017000d0	prob=0.0909090909	name=ld2_imm
mask=0x0ff000f0	sig=0x017000f0	prob=0.0909090909	name=ld2_imm
mask=0x0ff000f0	sig=0x01700090	prob=1.81818182e-11	name=null
mask=0x0ff000f0	sig=0x01700090	prob=9.09090909e-12	name=null
-------------------------------------------------------------------
Table Mask=0x000000e0*/

_TABLE_DEF_BEGIN(table_16, 8)
  _FUNC_NAME(cmn_3s),
  _FUNC_NAME(cmn_3s),
  _FUNC_NAME(cmn_3s),
  _FUNC_NAME(cmn_3s),
  _FUNC_NAME(null),
  _FUNC_NAME(ld2_imm),
  _FUNC_NAME(ld2_imm),
  _FUNC_NAME(ld2_imm),
_TABLE_DEF_END

/*
Table begin: index=1 size=5
Mask=0x000000e0	DMask=0x0ff00010	CMask=0x00000080	Sig=0x01d00090
Prob=0.578947368	Entropy=0.845350937	HTreeHeight=1.27272727
-------------------------------------------------------------------
mask=0x0ff00090	sig=0x01d00010	prob=0.727272727	name=bic_3s
mask=0x0ff000f0	sig=0x01d000b0	prob=0.0909090909	name=ld2_imm
mask=0x0ff000f0	sig=0x01d000d0	prob=0.0909090909	name=ld2_imm
mask=0x0ff000f0	sig=0x01d000f0	prob=0.0909090909	name=ld2_imm
mask=0x0ff000f0	sig=0x01d00090	prob=9.09090909e-12	name=null
-------------------------------------------------------------------
Table Mask=0x000000e0*/

_TABLE_DEF_BEGIN(table_17, 8)
  _FUNC_NAME(bic_3s),
  _FUNC_NAME(bic_3s),
  _FUNC_NAME(bic_3s),
  _FUNC_NAME(bic_3s),
  _FUNC_NAME(null),
  _FUNC_NAME(ld2_imm),
  _FUNC_NAME(ld2_imm),
  _FUNC_NAME(ld2_imm),
_TABLE_DEF_END

/*
Table begin: index=1 size=5
Mask=0x000000e0	DMask=0x0ff00010	CMask=0x00000080	Sig=0x01f00090
Prob=0.578947368	Entropy=0.845350937	HTreeHeight=1.27272727
-------------------------------------------------------------------
mask=0x0ff000f0	sig=0x01f000b0	prob=0.0909090909	name=ld2_imm
mask=0x0ff000f0	sig=0x01f000d0	prob=0.0909090909	name=ld2_imm
mask=0x0ff000f0	sig=0x01f000f0	prob=0.0909090909	name=ld2_imm
mask=0x0ff00090	sig=0x01f00010	prob=0.727272727	name=mvn_3s
mask=0x0ff000f0	sig=0x01f00090	prob=9.09090909e-12	name=null
-------------------------------------------------------------------
Table Mask=0x000000e0*/

_TABLE_DEF_BEGIN(table_18, 8)
  _FUNC_NAME(mvn_3s),
  _FUNC_NAME(mvn_3s),
  _FUNC_NAME(mvn_3s),
  _FUNC_NAME(mvn_3s),
  _FUNC_NAME(null),
  _FUNC_NAME(ld2_imm),
  _FUNC_NAME(ld2_imm),
  _FUNC_NAME(ld2_imm),
_TABLE_DEF_END


_STUB_ENTRY(stub_0_0)
{
 _TABLE_JUMP(table_1, 0x0000000f, 4);
}

_STUB_ENTRY(stub_0_1)
{
 _TABLE_JUMP(table_2, 0x0000000f, 4);
}

_STUB_ENTRY(stub_0_2)
{
 _TABLE_JUMP(table_3, 0x0000000f, 4);
}

_STUB_ENTRY(stub_0_3)
{
 _TABLE_JUMP(table_4, 0x0000000f, 4);
}

_STUB_ENTRY(stub_0_4)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(sub_2);
 } else {
   if _PATTERN_TRUE(0x00000080, 0x00000000) {
     _FUNC_CALL(sub_3);
   } else {
     if _PATTERN_TRUE(0x00000060, 0x00000020) {
       _FUNC_CALL(st2_imm);
     } else {
       _FUNC_CALL(null);
     }
   }
 }
}

_STUB_ENTRY(stub_0_5)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(sub_2s);
 } else {
   _TABLE_JUMP(table_5, 0x00000007, 5);
 }
}

_STUB_ENTRY(stub_0_6)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(rsb_2);
 } else {
   if _PATTERN_TRUE(0x00000080, 0x00000000) {
     _FUNC_CALL(rsb_3);
   } else {
     if _PATTERN_TRUE(0x00000060, 0x00000020) {
       _FUNC_CALL(st2_imm);
     } else {
       _FUNC_CALL(null);
     }
   }
 }
}

_STUB_ENTRY(stub_0_7)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(rsb_2s);
 } else {
   _TABLE_JUMP(table_6, 0x00000007, 5);
 }
}

_STUB_ENTRY(stub_0_8)
{
 _TABLE_JUMP(table_7, 0x0000000f, 4);
}

_STUB_ENTRY(stub_0_9)
{
 _TABLE_JUMP(table_8, 0x0000000f, 4);
}

_STUB_ENTRY(stub_0_10)
{
 _TABLE_JUMP(table_9, 0x0000000f, 4);
}

_STUB_ENTRY(stub_0_11)
{
 _TABLE_JUMP(table_10, 0x0000000f, 4);
}

_STUB_ENTRY(stub_0_12)
{
 _TABLE_JUMP(table_11, 0x0000000f, 4);
}

_STUB_ENTRY(stub_0_13)
{
 _TABLE_JUMP(table_12, 0x0000000f, 4);
}

_STUB_ENTRY(stub_0_14)
{
 _TABLE_JUMP(table_13, 0x0000000f, 4);
}

_STUB_ENTRY(stub_0_15)
{
 _TABLE_JUMP(table_14, 0x0000000f, 4);
}

_STUB_ENTRY(stub_0_16)
{
 if _PATTERN_TRUE(0x00000ff0, 0x00000090) {
   _FUNC_CALL(swap);
 } else {
   if _PATTERN_TRUE(0x00000010, 0x00000000) {
     if _PATTERN_TRUE(0x000f0fef, 0x000f0000) {
       _FUNC_CALL(mrs);
     } else {
       _FUNC_CALL(null);
     }
   } else {
     if _PATTERN_TRUE(0x00000fc0, 0x00000080) {
       _FUNC_CALL(st2_reg);
     } else {
       _FUNC_CALL(null);
     }
   }
 }
}

_STUB_ENTRY(stub_0_17)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(tst_2s);
 } else {
   if _PATTERN_TRUE(0x00000080, 0x00000000) {
     _FUNC_CALL(tst_3s);
   } else {
     if _PATTERN_TRUE(0x00000f20, 0x00000020) {
       _FUNC_CALL(ld2_reg);
     } else {
       if _PATTERN_TRUE(0x00000f60, 0x00000040) {
         _FUNC_CALL(ld2_reg);
       } else {
         _FUNC_CALL(null);
       }
     }
   }
 }
}

_STUB_ENTRY(stub_0_18)
{
 if _PATTERN_TRUE(0x00000080, 0x00000000) {
   if _PATTERN_TRUE(0x0000ff70, 0x0000f000) {
     _FUNC_CALL(msr_2);
   } else {
     _FUNC_CALL(null);
   }
 } else {
   if _PATTERN_TRUE(0x00000f70, 0x00000030) {
     _FUNC_CALL(st2_reg);
   } else {
     _FUNC_CALL(null);
   }
 }
}

_STUB_ENTRY(stub_0_19)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(teq_2s);
 } else {
   if _PATTERN_TRUE(0x00000080, 0x00000000) {
     _FUNC_CALL(teq_3s);
   } else {
     if _PATTERN_TRUE(0x00000f20, 0x00000020) {
       _FUNC_CALL(ld2_reg);
     } else {
       if _PATTERN_TRUE(0x00000f60, 0x00000040) {
         _FUNC_CALL(ld2_reg);
       } else {
         _FUNC_CALL(null);
       }
     }
   }
 }
}

_STUB_ENTRY(stub_0_20)
{
 if _PATTERN_TRUE(0x000000d0, 0x00000090) {
   if _PATTERN_TRUE(0x00000020, 0x00000000) {
     if _PATTERN_TRUE(0x00000f00, 0x00000000) {
       _FUNC_CALL(swap_byte);
     } else {
       _FUNC_CALL(null);
     }
   } else {
     _FUNC_CALL(st2_imm);
   }
 } else {
   if _PATTERN_TRUE(0x000f0fff, 0x000f0000) {
     _FUNC_CALL(mrs_r);
   } else {
     _FUNC_CALL(null);
   }
 }
}

_STUB_ENTRY(stub_0_21)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(cmp_2s);
 } else {
   _TABLE_JUMP(table_15, 0x00000007, 5);
 }
}

_STUB_ENTRY(stub_0_22)
{
 if _PATTERN_TRUE(0x00000080, 0x00000000) {
   if _PATTERN_TRUE(0x0000ff70, 0x0000f000) {
     _FUNC_CALL(msr_2r);
   } else {
     _FUNC_CALL(null);
   }
 } else {
   if _PATTERN_TRUE(0x00000070, 0x00000030) {
     _FUNC_CALL(st2_imm);
   } else {
     _FUNC_CALL(null);
   }
 }
}

_STUB_ENTRY(stub_0_23)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(cmn_2s);
 } else {
   _TABLE_JUMP(table_16, 0x00000007, 5);
 }
}

_STUB_ENTRY(stub_0_24)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(orr_2);
 } else {
   if _PATTERN_TRUE(0x00000080, 0x00000000) {
     _FUNC_CALL(orr_3);
   } else {
     if _PATTERN_TRUE(0x00000f60, 0x00000020) {
       _FUNC_CALL(st2_reg);
     } else {
       _FUNC_CALL(null);
     }
   }
 }
}

_STUB_ENTRY(stub_0_25)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(orr_2s);
 } else {
   if _PATTERN_TRUE(0x00000080, 0x00000000) {
     _FUNC_CALL(orr_3s);
   } else {
     if _PATTERN_TRUE(0x00000f20, 0x00000020) {
       _FUNC_CALL(ld2_reg);
     } else {
       if _PATTERN_TRUE(0x00000f60, 0x00000040) {
         _FUNC_CALL(ld2_reg);
       } else {
         _FUNC_CALL(null);
       }
     }
   }
 }
}

_STUB_ENTRY(stub_0_26)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(mov_2);
 } else {
   if _PATTERN_TRUE(0x00000080, 0x00000000) {
     _FUNC_CALL(mov_3);
   } else {
     if _PATTERN_TRUE(0x00000f60, 0x00000020) {
       _FUNC_CALL(st2_reg);
     } else {
       _FUNC_CALL(null);
     }
   }
 }
}

_STUB_ENTRY(stub_0_27)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(mov_2s);
 } else {
   if _PATTERN_TRUE(0x00000080, 0x00000000) {
     _FUNC_CALL(mov_3s);
   } else {
     if _PATTERN_TRUE(0x00000f20, 0x00000020) {
       _FUNC_CALL(ld2_reg);
     } else {
       if _PATTERN_TRUE(0x00000f60, 0x00000040) {
         _FUNC_CALL(ld2_reg);
       } else {
         _FUNC_CALL(null);
       }
     }
   }
 }
}

_STUB_ENTRY(stub_0_28)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(bic_2);
 } else {
   if _PATTERN_TRUE(0x00000080, 0x00000000) {
     _FUNC_CALL(bic_3);
   } else {
     if _PATTERN_TRUE(0x00000060, 0x00000020) {
       _FUNC_CALL(st2_imm);
     } else {
       _FUNC_CALL(null);
     }
   }
 }
}

_STUB_ENTRY(stub_0_29)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(bic_2s);
 } else {
   _TABLE_JUMP(table_17, 0x00000007, 5);
 }
}

_STUB_ENTRY(stub_0_30)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(mvn_2);
 } else {
   if _PATTERN_TRUE(0x00000080, 0x00000000) {
     _FUNC_CALL(mvn_3);
   } else {
     if _PATTERN_TRUE(0x00000060, 0x00000020) {
       _FUNC_CALL(st2_imm);
     } else {
       _FUNC_CALL(null);
     }
   }
 }
}

_STUB_ENTRY(stub_0_31)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(mvn_2s);
 } else {
   _TABLE_JUMP(table_18, 0x00000007, 5);
 }
}

_STUB_ENTRY(stub_0_50)
{
 if _PATTERN_TRUE(0x0000f000, 0x0000f000) {
   _FUNC_CALL(msr_1);
 } else {
   _FUNC_CALL(null);
 }
}

_STUB_ENTRY(stub_0_54)
{
 if _PATTERN_TRUE(0x0000f000, 0x0000f000) {
   _FUNC_CALL(msr_1r);
 } else {
   _FUNC_CALL(null);
 }
}

_STUB_ENTRY(stub_0_96)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(st1_reg);
 } else {
   _FUNC_CALL(null);
 }
}

_STUB_ENTRY(stub_0_97)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(ld1_reg);
 } else {
   _FUNC_CALL(null);
 }
}

_STUB_ENTRY(stub_0_98)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(st1_reg);
 } else {
   _FUNC_CALL(null);
 }
}

_STUB_ENTRY(stub_0_99)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(ld1_reg);
 } else {
   _FUNC_CALL(null);
 }
}

_STUB_ENTRY(stub_0_100)
{
 if _PATTERN_TRUE(0x00000010, 0x00000000) {
   _FUNC_CALL(st1_reg_b);
 } else {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -