JP7410269B2 - テスト・ベクタを使用した高水準コンストラクトの最適化の自動検証 - Google Patents

テスト・ベクタを使用した高水準コンストラクトの最適化の自動検証 Download PDF

Info

Publication number
JP7410269B2
JP7410269B2 JP2022500767A JP2022500767A JP7410269B2 JP 7410269 B2 JP7410269 B2 JP 7410269B2 JP 2022500767 A JP2022500767 A JP 2022500767A JP 2022500767 A JP2022500767 A JP 2022500767A JP 7410269 B2 JP7410269 B2 JP 7410269B2
Authority
JP
Japan
Prior art keywords
machine instructions
executable code
generating
level
instructions
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
JP2022500767A
Other languages
English (en)
Japanese (ja)
Other versions
JP2022542007A (ja
JP2022542007A5 (https=
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2022542007A publication Critical patent/JP2022542007A/ja
Publication of JP2022542007A5 publication Critical patent/JP2022542007A5/ja
Application granted granted Critical
Publication of JP7410269B2 publication Critical patent/JP7410269B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/53Decompilation; Disassembly

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)
JP2022500767A 2019-07-31 2020-07-24 テスト・ベクタを使用した高水準コンストラクトの最適化の自動検証 Active JP7410269B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/527,362 US10776255B1 (en) 2019-07-31 2019-07-31 Automatic verification of optimization of high level constructs using test vectors
US16/527,362 2019-07-31
PCT/IB2020/057017 WO2021019401A1 (en) 2019-07-31 2020-07-24 Automatic verification of optimization of high level constructs using test vectors

Publications (3)

Publication Number Publication Date
JP2022542007A JP2022542007A (ja) 2022-09-29
JP2022542007A5 JP2022542007A5 (https=) 2022-12-08
JP7410269B2 true JP7410269B2 (ja) 2024-01-09

Family

ID=72425773

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022500767A Active JP7410269B2 (ja) 2019-07-31 2020-07-24 テスト・ベクタを使用した高水準コンストラクトの最適化の自動検証

Country Status (6)

Country Link
US (1) US10776255B1 (https=)
JP (1) JP7410269B2 (https=)
CN (1) CN114174983B (https=)
DE (1) DE112020003634T5 (https=)
GB (1) GB2604237B (https=)
WO (1) WO2021019401A1 (https=)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11886848B2 (en) 2022-05-25 2024-01-30 International Business Machines Corporation Binary translation using raw binary code with compiler produced metadata

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004295398A (ja) 2003-03-26 2004-10-21 Toshiba Corp コンパイラ、コンパイル方法、及びプログラム開発ツール
US20090164501A1 (en) 2007-12-21 2009-06-25 Microsoft Corporation E-matching for smt solvers
JP2015153191A (ja) 2014-02-14 2015-08-24 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 最適化したバイナリー・モジュールをテストする方法、並びに、当該最適化したバイナリー・モジュールをテストするためのコンピュータ及びそのコンピュータ・プログラム
US20180260198A1 (en) 2017-03-09 2018-09-13 Microsoft Technology Licensing, Llc Instrumenting program code

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060031820A1 (en) * 2004-08-09 2006-02-09 Aizhong Li Method for program transformation and apparatus for COBOL to Java program transformation
US7624384B2 (en) * 2004-11-30 2009-11-24 Intel Corporation Apparatus, system, and method of dynamic binary translation with translation reuse
US8381175B2 (en) * 2010-03-16 2013-02-19 Microsoft Corporation Low-level code rewriter verification
US8832672B2 (en) * 2011-01-28 2014-09-09 International Business Machines Corporation Ensuring register availability for dynamic binary optimization
CN102622260B (zh) * 2012-02-27 2014-12-10 中国科学院计算技术研究所 一种在线迭代编译的优化方法和优化系统
US8959495B2 (en) * 2012-09-14 2015-02-17 Oracle International Corporation Unifying static and dynamic compiler optimizations in source-code bases
JP5967618B2 (ja) * 2013-04-17 2016-08-10 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 二進化十進数型変数へのアクセスを有する言語のバイナリコードを最適化する方法、並びにそのコンピュータ及びコンピュータ・プログラム
US9442707B2 (en) * 2014-06-25 2016-09-13 Microsoft Technology Licensing, Llc Incremental whole program compilation of code
US10261889B2 (en) * 2014-06-25 2019-04-16 Microsoft Technology Licensing, Llc Techniques for edit-and-continue and enhanced optimized debugging on optimized code
US9563536B1 (en) * 2015-10-19 2017-02-07 International Business Machines Corporation Performance neutral isolation of runtime discrepancies in binary code
US9715377B1 (en) 2016-01-04 2017-07-25 International Business Machines Corporation Behavior based code recompilation triggering scheme
AU2016396782B2 (en) * 2016-03-11 2021-07-22 Lzlabs Gmbh Load module compiler
US10579498B2 (en) * 2016-07-31 2020-03-03 Microsoft Technology Licensing, Llc. Debugging tool for a JIT compiler
US10514909B2 (en) * 2017-03-29 2019-12-24 Technion Research & Development Foundation Limited Similarity of binaries
US10339837B1 (en) * 2018-06-01 2019-07-02 Polyverse Corporation Distribution of scrambled binary output using a randomized compiler

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004295398A (ja) 2003-03-26 2004-10-21 Toshiba Corp コンパイラ、コンパイル方法、及びプログラム開発ツール
US20090164501A1 (en) 2007-12-21 2009-06-25 Microsoft Corporation E-matching for smt solvers
JP2015153191A (ja) 2014-02-14 2015-08-24 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 最適化したバイナリー・モジュールをテストする方法、並びに、当該最適化したバイナリー・モジュールをテストするためのコンピュータ及びそのコンピュータ・プログラム
US20180260198A1 (en) 2017-03-09 2018-09-13 Microsoft Technology Licensing, Llc Instrumenting program code

Also Published As

Publication number Publication date
GB2604237B (en) 2023-03-22
JP2022542007A (ja) 2022-09-29
US10776255B1 (en) 2020-09-15
CN114174983A (zh) 2022-03-11
GB2604237A (en) 2022-08-31
WO2021019401A1 (en) 2021-02-04
CN114174983B (zh) 2022-10-11
DE112020003634T5 (de) 2022-06-09

Similar Documents

Publication Publication Date Title
JP7776247B2 (ja) コード更新時におけるソースコード有効性のチェック
JP5951022B2 (ja) デコード時間命令最適化を用いた、強化されたアプリケーション・バイナリ・インターフェース(abi)のためのコードのリンク
JP6044968B2 (ja) デコード時間命令最適化を用いた、強化されたアプリケーション・バイナリ・インターフェース(abi)のためのコードのコンパイル
US11074154B2 (en) Identifying a source file for use in debugging compiled code
US8732674B1 (en) Revertable managed execution image instrumentation
CN109564540B (zh) 用于jit编译器的调试的系统、方法和设备
US11740875B2 (en) Type inference in dynamic languages
CN114830099B (zh) 集成引用和次对象的标记
WO2017015071A1 (en) Incremental interprocedural dataflow analysis during compilation
CN116830080A (zh) 经合并的机器级中间表示优化
US11947966B2 (en) Identifying computer instructions enclosed by macros and conflicting macros at build time
CN114327497B (zh) 一种代码处理方法、装置及设备
CN116685946A (zh) 在不停止应用的执行的情况下的更新的共享库的重新加载
US20230259444A1 (en) Setting breakpoints for source code segments enclosed by macros
JP7410269B2 (ja) テスト・ベクタを使用した高水準コンストラクトの最適化の自動検証
EP3991027B1 (en) Method and apparatus for enabling autonomous acceleration of dataflow ai applications
US12499031B2 (en) Impact analysis of changes in third-party software components on downstream users
US11972237B1 (en) Member invocation declarative interception
US20150220310A1 (en) Object field optimization
Cornaglia et al. Accurate LLVM IR to Binary CFGs Mapping for Simulation of Optimized Embedded Software

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20220518

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221128

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221223

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231130

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: 20231205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231221

R150 Certificate of patent or registration of utility model

Ref document number: 7410269

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150