当前位置: 首页>>代码示例>>C++>>正文


C++ X64Assembler::store_imm64_disp_reg64方法代码示例

本文整理汇总了C++中X64Assembler::store_imm64_disp_reg64方法的典型用法代码示例。如果您正苦于以下问题:C++ X64Assembler::store_imm64_disp_reg64方法的具体用法?C++ X64Assembler::store_imm64_disp_reg64怎么用?C++ X64Assembler::store_imm64_disp_reg64使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在X64Assembler的用法示例。


在下文中一共展示了X64Assembler::store_imm64_disp_reg64方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: deltaFits

StoreImmPatcher::StoreImmPatcher(X64Assembler& as, uint64_t initial,
                                 register_name_t reg,
                                 int32_t offset, register_name_t base) {
  is32 = deltaFits(initial, sz::dword);
  if (is32) {
    as.store_imm64_disp_reg64(initial, offset, base);
  } else {
    as.mov_imm64_reg(initial, reg);
    as.store_reg64_disp_reg64(reg, offset, base);
  }
  m_addr = as.code.frontier - (is32 ? 4 : 8);
  ASSERT((is32 ? (uint64_t)*(int32_t*)m_addr : *(uint64_t*)m_addr) == initial);
}
开发者ID:huasanyelao,项目名称:hiphop-php,代码行数:13,代码来源:asm-x64.cpp

示例2: deltaFits

StoreImmPatcher::StoreImmPatcher(CodeBlock& cb, uint64_t initial,
                                 RegNumber reg,
                                 int32_t offset, RegNumber base) {
  X64Assembler as { cb };
  m_is32 = deltaFits(initial, sz::dword);
  if (m_is32) {
    as.store_imm64_disp_reg64(initial, offset, base);
    m_addr = cb.frontier() - 4;
  } else {
    as.mov_imm64_reg(initial, reg);
    m_addr = cb.frontier() - 8;
    as.store_reg64_disp_reg64(reg, offset, base);
  }
  assert((m_is32 ?  (uint64_t)*(int32_t*)m_addr : *(uint64_t*)m_addr)
         == initial);
}
开发者ID:360buyliulei,项目名称:hiphop-php,代码行数:16,代码来源:asm-x64.cpp


注:本文中的X64Assembler::store_imm64_disp_reg64方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。