JP6418696B2 - 命令セットシミュレータおよびそのシミュレータ生成方法 - Google Patents

命令セットシミュレータおよびそのシミュレータ生成方法 Download PDF

Info

Publication number
JP6418696B2
JP6418696B2 JP2015145452A JP2015145452A JP6418696B2 JP 6418696 B2 JP6418696 B2 JP 6418696B2 JP 2015145452 A JP2015145452 A JP 2015145452A JP 2015145452 A JP2015145452 A JP 2015145452A JP 6418696 B2 JP6418696 B2 JP 6418696B2
Authority
JP
Japan
Prior art keywords
instruction
subroutine
program
address
machine language
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015145452A
Other languages
English (en)
Japanese (ja)
Other versions
JP2017027375A5 (enExample
JP2017027375A (ja
Inventor
剛 一色
剛 一色
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tokyo Institute of Technology NUC
Original Assignee
Tokyo Institute of Technology NUC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tokyo Institute of Technology NUC filed Critical Tokyo Institute of Technology NUC
Priority to JP2015145452A priority Critical patent/JP6418696B2/ja
Priority to CN201680055109.2A priority patent/CN108027748B/zh
Priority to PCT/JP2016/071632 priority patent/WO2017014318A1/ja
Publication of JP2017027375A publication Critical patent/JP2017027375A/ja
Priority to US15/877,397 priority patent/US10459707B2/en
Publication of JP2017027375A5 publication Critical patent/JP2017027375A5/ja
Application granted granted Critical
Publication of JP6418696B2 publication Critical patent/JP6418696B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/53Decompilation; Disassembly
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Debugging And Monitoring (AREA)
JP2015145452A 2015-07-23 2015-07-23 命令セットシミュレータおよびそのシミュレータ生成方法 Active JP6418696B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2015145452A JP6418696B2 (ja) 2015-07-23 2015-07-23 命令セットシミュレータおよびそのシミュレータ生成方法
CN201680055109.2A CN108027748B (zh) 2015-07-23 2016-07-22 指令集模拟器及其模拟器生成方法
PCT/JP2016/071632 WO2017014318A1 (ja) 2015-07-23 2016-07-22 命令セットシミュレータおよびそのシミュレータ生成方法
US15/877,397 US10459707B2 (en) 2015-07-23 2018-01-23 Instruction-set simulator and its simulator generation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015145452A JP6418696B2 (ja) 2015-07-23 2015-07-23 命令セットシミュレータおよびそのシミュレータ生成方法

Publications (3)

Publication Number Publication Date
JP2017027375A JP2017027375A (ja) 2017-02-02
JP2017027375A5 JP2017027375A5 (enExample) 2018-08-16
JP6418696B2 true JP6418696B2 (ja) 2018-11-07

Family

ID=57834504

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015145452A Active JP6418696B2 (ja) 2015-07-23 2015-07-23 命令セットシミュレータおよびそのシミュレータ生成方法

Country Status (4)

Country Link
US (1) US10459707B2 (enExample)
JP (1) JP6418696B2 (enExample)
CN (1) CN108027748B (enExample)
WO (1) WO2017014318A1 (enExample)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013242700A (ja) * 2012-05-21 2013-12-05 Internatl Business Mach Corp <Ibm> コード最適化方法、プログラム及びシステム
US10884720B2 (en) 2018-10-04 2021-01-05 Microsoft Technology Licensing, Llc Memory ordering annotations for binary emulation
US20200183661A1 (en) * 2018-12-11 2020-06-11 GM Global Technology Operations LLC Method and apparatus for cross-execution of binary embedded software
US10684835B1 (en) * 2018-12-11 2020-06-16 Microsoft Technology Licensing, Llc Improving emulation and tracing performance using compiler-generated emulation optimization metadata
CN110309655B (zh) * 2019-07-05 2021-08-17 武汉绿色网络信息服务有限责任公司 一种检测app更新过程中安全性的方法以及检测装置
CN110659032B (zh) * 2019-09-24 2023-08-22 网易(杭州)网络有限公司 游戏应用的指令执行方法、装置、终端设备和存储介质
CN112148370B (zh) * 2020-09-21 2025-09-19 深圳前海微众银行股份有限公司 机器代码生成方法、装置、设备及计算机可读存储介质
US11900136B2 (en) * 2021-07-28 2024-02-13 Sony Interactive Entertainment LLC AoT compiler for a legacy game
CN117407267B (zh) * 2022-07-07 2025-08-15 格兰菲智能科技股份有限公司 条件分支覆盖率计算方法、装置、计算机设备、存储介质
US20240338186A1 (en) * 2023-04-06 2024-10-10 Oracle International Corporation Compile-Time Checking For Exhaustive Switch Statements And Expressions
US12487828B2 (en) * 2023-05-23 2025-12-02 Microchip Technology Inc. Processor having switch instruction circuit
CN119883372B (zh) * 2025-03-24 2025-06-27 北京开源芯片研究院 指令流的重建方法、装置、电子设备及可读存储介质

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH096646A (ja) * 1995-06-14 1997-01-10 Oki Electric Ind Co Ltd プログラムシミュレーション装置
JPH1083311A (ja) * 1996-09-06 1998-03-31 Mitsubishi Electric Corp シミュレータ
JP3495230B2 (ja) * 1997-06-30 2004-02-09 Necマイクロシステム株式会社 エミュレーション処理方式
EP1010070B1 (de) * 1997-09-01 2002-10-23 Fujitsu Siemens Computers GmbH Verfahren zum umsetzen eines objektcodes in einen programmcode
WO1999030229A1 (en) * 1997-12-11 1999-06-17 Digits Corp. Object code analysis and remediation system and method
JP3956131B2 (ja) * 2002-12-26 2007-08-08 インターナショナル・ビジネス・マシーンズ・コーポレーション プログラム変換装置、プログラム変換方法及びプログラム
US7356672B2 (en) * 2004-05-28 2008-04-08 The Regents Of The University Of California Warp processor for dynamic hardware/software partitioning
US8621444B2 (en) * 2004-06-01 2013-12-31 The Regents Of The University Of California Retargetable instruction set simulators
US8056138B2 (en) * 2005-02-26 2011-11-08 International Business Machines Corporation System, method, and service for detecting improper manipulation of an application
CN101216775A (zh) * 2008-01-03 2008-07-09 北京深思洛克数据保护中心 一种软件程序的保护方法、装置及系统
US20100274755A1 (en) * 2009-04-28 2010-10-28 Stewart Richard Alan Binary software binary image analysis
US8510723B2 (en) * 2009-05-29 2013-08-13 University Of Maryland Binary rewriting without relocation information
JP5542643B2 (ja) * 2010-12-10 2014-07-09 三菱電機株式会社 シミュレーション装置及びシミュレーションプログラム
US8726255B2 (en) * 2012-05-01 2014-05-13 Concurix Corporation Recompiling with generic to specific replacement
KR102147355B1 (ko) * 2013-09-27 2020-08-24 삼성전자 주식회사 프로그램 변환 방법 및 장치
US20180211046A1 (en) * 2017-01-26 2018-07-26 Intel Corporation Analysis and control of code flow and data flow

Also Published As

Publication number Publication date
CN108027748A (zh) 2018-05-11
US20180165079A1 (en) 2018-06-14
US10459707B2 (en) 2019-10-29
CN108027748B (zh) 2019-09-10
JP2017027375A (ja) 2017-02-02
WO2017014318A1 (ja) 2017-01-26

Similar Documents

Publication Publication Date Title
JP6418696B2 (ja) 命令セットシミュレータおよびそのシミュレータ生成方法
US7712092B2 (en) Binary translation using peephole translation rules
US20030088860A1 (en) Compiler annotation for binary translation tools
WO2004095264A2 (en) Method and apparatus for performing interpreter optimizations during program code conversion
CN110245467B (zh) 基于Dex2C与LLVM的Android应用程序保护方法
CN106529224A (zh) 基于rop攻击特点的二进制混淆方法
CN105446704A (zh) 一种着色器的解析方法和装置
US20230113783A1 (en) Cross-platform code conversion method and device
WO2004095265A2 (en) Method and apparatus for performing lazy byteswapping optimizations during program code conversion
CN115480871B (zh) 一种通用的tms320c3x处理器指令集虚拟化仿真方法
US20090235054A1 (en) Disassembling an executable binary
CN119938046B (zh) 基本块链接方法、翻译器、电子设备及可读存储介质
CN101208690B (zh) 计算环境中翻译表达式
CN114610364A (zh) 应用程序更新、应用程序开发方法、装置及计算机设备
US7120905B2 (en) System and method for transformation of assembly code for conditional execution
CN113760236A (zh) 重定位方法、装置、链接器及编译系统
JP3266097B2 (ja) 非リエントラントプログラムの自動リエントラント化方法及びシステム
Ramsey et al. A transformational approach to binary translation of delayed branches
Bezzubikov et al. Automatic dynamic binary translator generation from instruction set description
US20040045018A1 (en) Using address space bridge in postoptimizer to route indirect calls at runtime
CN118246377B (zh) 一种张量处理器的模拟器架构、模拟方法、设备及介质
CN119149115B (zh) 一种基于自反射机制的动态指令转换调试方法
KR102834292B1 (ko) 디컴파일 특화 정적 이진 변환 방법 및 장치
CN120610908B (zh) 一种用于gpu编译器的内存访问安全性检查方法
CN120491983B (zh) 一种二进制翻译中x86程序xmm寄存器的向量指令翻译方法

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20180122

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20180118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20180122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180703

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180703

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180703

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180709

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180731

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180913

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180925

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181005

R150 Certificate of patent or registration of utility model

Ref document number: 6418696

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250