Movatterモバイル変換


[0]ホーム

URL:


US20020147969A1 - Dynamic optimizing object code translator for architecture emulation and dynamic optimizing object code translation method - Google Patents

Dynamic optimizing object code translator for architecture emulation and dynamic optimizing object code translation method
Download PDF

Info

Publication number
US20020147969A1
US20020147969A1US09/176,112US17611298DUS2002147969A1US 20020147969 A1US20020147969 A1US 20020147969A1US 17611298 DUS17611298 DUS 17611298DUS 2002147969 A1US2002147969 A1US 2002147969A1
Authority
US
United States
Prior art keywords
branch
instructions
compiler
interpreter
code
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.)
Granted
Application number
US09/176,112
Other versions
US6463582B1 (en
Inventor
Richard A. Lethin
Joseph A. Bank
Charles D. Garrett
Mikayo Wada
Mitsuo Sakurai
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.)
Fujitsu Ltd
Original Assignee
Individual
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 IndividualfiledCriticalIndividual
Assigned to FUJITSU LIMITEDreassignmentFUJITSU LIMITEDASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: GARRETT, CHARLES D., SAKURAI, MITSUO, WADA, MIKAYO, BANK, JOSEPH A., LETHIN, RICARD A.
Assigned to FUJITSU LIMITEDreassignmentFUJITSU LIMITEDCORRECTIVE ASSIGNMENT TO CORRECT CONVEYING PARTY'S NAME. AN ASSIGNMENT PREVIOUSLY RECORDED AT REEL 009714, FRAME 0542.Assignors: GARRETT, CHARLES D., SAKURAI, MITSUO, WADA, MIKAYO, BANK, JOSEPH A., LETHIN, RICHARD A.
Publication of US20020147969A1publicationCriticalpatent/US20020147969A1/en
Grantedlegal-statusCriticalCurrent

Links

Images

Classifications

Definitions

Landscapes

Abstract

An optimizing object code translation system and method perform dynamic compilation and translation of a target object code on a source operating system while performing optimization. Compilation and optimization of the target code is dynamically executed in real time. A compiler performs analysis and optimizations that improve emulation relative to template-based translation and interpretation such that a host processor which processes larger order instructions, such as 32-bit instructions, may emulate a target processor which processes smaller order instructions, such as 16-bit and 8-bit instructions. The optimizing object code translator does not require knowledge of a static program flow graph or memory locations of target instructions prior to run time. In addition, the optimizing object code translator does not require knowledge of the location of all join points into the target object code prior to execution. During program execution, a translator records branch operations. The logging of information identifies instructions and instruction join points. When a number of times a branch operation is executed exceeds a threshold, the destination of the branch becomes a seed for compilation and code portions between seeds are defined as segments. A segment may be incomplete allowing for modification or replacement to account for a new flow of program control during real time program execution.

Description

Claims (34)

What is claimed is:
1. A computer architecture emulation system which emulates a source computer architecture on a destination computer architecture, comprising:
interpreter means for individually translating source object code into corresponding translated object code and for determining a number of executions of branch instructions in the source object code; and
compiler means for grouping instructions of the source object code into a segment when a number of executions of a corresponding branch instruction exceeds a threshold number, and for dynamically compiling the segment.
2. The computer architecture emulation system according toclaim 1, wherein branch object code instructions corresponding to segments which are not compiled are stored in memory.
3. The computer architecture emulation system according toclaim 2, wherein segments corresponding to branch object code instructions which have not exceeded the threshold number are not compiled.
4. The computer architecture emulation system according toclaim 1, wherein segments corresponding to branch object code instructions corresponding to segments which are not compiled are stored in memory while said interpreter means executes the translated object code instructions.
5. The computer architecture emulation system according toclaim 1, wherein said interpreter means and said compiler means are tasks which operate simultaneously in a multi-tasking operating system in real time.
6. The computer architecture emulation system according toclaim 1, further comprising:
branch logger means for storing branch profile information of the branch instructions determined by said interpreter means.
7. The computer architecture emulation system according toclaim 6, wherein
said branch profile information includes a branch address, a branch successor, a non-branch successor, a branch execution count, and a branch taken count, and
said branch profile information is logged by said interpreter means during branch instruction emulation.
8. The computer architecture emulation system according toclaim 1, further comprising:
means for placing a code flag after branch instructions that execute a jump into or out of translatable instructions; and
means for checking if successor instructions to the corresponding branch instructions are translatable or not by referencing the corresponding code flag.
9. The computer architecture emulation system according toclaim 1, further comprising:
means for initiating translation of a branch instruction when a number of executions of a successor instruction to the branch instruction surpasses a threshold value.
10. The computer architecture emulation system according toclaim 1, further comprising:
means for communicating between said interpreter means and said compiler means while said interpreter means is continuing to emulate the source code to initiate the translation of segments corresponding to frequently branched instructions.
11. The computer architecture emulation system according toclaim 1, further comprising:
means for controlling a rate of compilation of segments to be compiled by raising the threshold number when a queue for storing the segments to be translated reaches a predetermined capacity.
12. The computer architecture emulation system according toclaim 1, wherein said compiler means makes an optimized object while tracing each instruction which is in memory, in order, by using a profile corresponding to the address from which compiling was started.
13. The computer architecture emulation system according toclaim 12, wherein said compiler means does not compile a block upon detection of a page fault, such that when a block causes a page fault, said compiler means produces an object to log branch information in said branch logging means.
14. The computer architecture emulation system according toclaim 13, wherein if an instruction execution process does not timely execute with respect to a predetermined rate, said compiler means traces the execution by using a profile, checks whether a branch count is under a predetermined number and produces an object to log branch information.
15. The computer architecture emulation system according toclaim 1, further comprising:
branch logging means for storing profile information of the branch instructions in the source object code including the number of executions, wherein said branch logging means includes a cache for storing profile information of frequently executed branch instructions and a branch log for storing profile information of less frequently executed branch instructions.
16. The computer architecture emulation system according toclaim 15, wherein the profile information is organized in the cache by combining branch address information and branch destination information.
17. The computer architecture emulation system according toclaim 16, wherein the profile information organized in the cache is stored in a plurality of groups in a decreasing order of entry into the group.
18. The computer architecture emulation system according toclaim 1, wherein each branch instruction is a seed, said compiler means further including
a block picker which selects a segment of the source object code to compiled based upon the seed and the profile information of the branch,
a block layout unit which flattens the segment into a linear list of instructions, and
an optimizing code generation unit which performs the actual compilation of original instructions into translated code segment instructions.
19. The computer architecture emulation system according toclaim 18, wherein the block picker creates a control flow graph that describes the original instructions to compile and passes the control flow graph to the block layout unit.
20. A computer architecture emulation system which emulates a source computer architecture on a destination computer architecture system, comprising:
a plurality of interpreter means for individually translating source object code into corresponding translated object code, wherein each of said plurality of interpreter means profile source object code branch information in real time while executing translated object code instructions; and
compiler means for grouping source object code instructions from any of said plurality of interpreter means into segments based upon corresponding branch instructions in the source object code and for dynamically compiling the segments of the source object code when the corresponding branch instruction is greater than a threshold number.
21. The computer architecture emulation system according toclaim 20, each of said plurality of interpreter means profiles the branch object code instructions and stores the branch object code instructions which have not exceeded the threshold number by calling a branch logger.
22. A computer architecture emulation system which emulates a source computer architecture on a destination computer architecture system, comprising:
interpreter means for individually translating source object code into corresponding translated object code, wherein said interpreter means profiles branch instructions of the source object code by storing a number executions for each branch instruction and comparing the number of executions with a threshold number, such that branch instructions which exceed the threshold number are seeds; and
compiler means for grouping the source object code instructions into segments based upon the seeds and dynamically compiling the segments of the source object code during translation and profiling by said interpreter means.
23. The computer architecture emulation system according toclaim 22, wherein
each segment contains instructions that result from optimizing the source object code based on a corresponding seed, and
each segment is installed and uninstalled as a unit.
24. The computer architecture emulation system according toclaim 23, wherein branch object code instructions corresponding to segments which are not compiled are stored in memory while segments corresponding to branch object code instructions which have not exceeded the threshold number are not compiled.
25. The computer architecture emulation system according toclaim 23, further comprising:
branch logger means for storing branch profile information of the branch instructions determined by said interpreter means, wherein the branch profile information including a branch address, a branch successor, a non-branch successor, a branch execution count, and a branch taken count, and the branch profile information is logged by said interpreter means during branch instruction emulation.
26. The computer architecture emulation system according toclaim 23, further comprising:
means for placing a code flag after branch instructions that execute a jump into or out of translatable instructions; and
means for checking if successor instructions to the corresponding branch instructions are translatable or not by referencing the corresponding code flag.
27. The computer architecture emulation system according toclaim 23, further comprising:
means for initiating translation of a branch instruction when a number of executions of a successor instruction to the branch instruction surpasses a threshold value.
28. The computer architecture emulation system according toclaim 23, further comprising:
means for controlling a rate of compilation of segments to be compiled by raising the threshold number when a queue for storing the segments to be translated reaches a predetermined capacity.
29. The computer architecture emulation system according toclaim 23, wherein if an instruction execution process does not timely execute with respect to a predetermined rate, said compiler means traces the execution by using a profile, checks whether a branch count is under a predetermined number and produces an object to log branch information like the page fault.
30. The computer architecture emulation system according toclaim 23, further comprising:
branch logging means for storing profile information of the branch instructions in the source object code including the number of executions, wherein said branch logging means includes a cache for storing profile information of frequently executed branch instructions and a branch log for storing profile information of less frequently executed branch instructions,
wherein the profile information is organized in the cache by combining branch address information and branch destination information and the profile information organized in the cache is stored in a plurality of groups in a decreasing order of entry into the group.
31. The computer architecture emulation system according toclaim 23, wherein said compiler means further includes
a block picker which selects a segment of the source object code to compiled based upon the seed and the profile information of the branch, wherein the block picker creates a control flow graph that describes the original instructions to compile;
a block layout unit which flattens the control flow graph into a linear list of instructions, and
an optimizing code generation unit which performs the actual compilation of original instructions into translated code segment instructions.
32. A multi-tasking computer architecture emulation system which emulates a source computer architecture on a multi-tasking destination computer architecture, comprising:
an interpreter task for individually translating source object code into corresponding translated object code and for determining a number of executions of branch instructions in the source object code; and
a compiler task operating with said interpreter on the multi-tasking destination computer architecture, for grouping instructions of the source object code into a segment when a number of executions of a corresponding branch instruction exceeds a threshold number, and for dynamically compiling the segment.
33. The multi-tasking computer architecture emulation system according toclaim 32, wherein said multi-tasking computer architecture emulation system is a dynamic translation system, said multi-tasking computer architecture system further comprising:
software feedback means to equalize a rate of compilation requests sent by said interpreter task and the rate of compilations completed by said compiler task, without allowing the compiler task to become idle by varying the threshold number.
34. The multi-tasking computer architecture emulation system according toclaim 33, further comprising:
a queue for storing segments to be compiled by said compiler task, wherein the threshold number is compared with a minimum threshold number to turn said compiler task on or off.
US09/176,1121998-10-211998-10-21Dynamic optimizing object code translator for architecture emulation and dynamic optimizing object code translation methodGrantedUS20020147969A1 (en)

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
US09/176,112US6463582B1 (en)1998-10-211998-10-21Dynamic optimizing object code translator for architecture emulation and dynamic optimizing object code translation method

Publications (1)

Publication NumberPublication Date
US20020147969A1true US20020147969A1 (en)2002-10-10

Family

ID=22643028

Family Applications (2)

Application NumberTitlePriority DateFiling Date
US09/176,112GrantedUS20020147969A1 (en)1998-10-211998-10-21Dynamic optimizing object code translator for architecture emulation and dynamic optimizing object code translation method
US09/176,112Expired - LifetimeUS6463582B1 (en)1998-10-211998-10-21Dynamic optimizing object code translator for architecture emulation and dynamic optimizing object code translation method

Family Applications After (1)

Application NumberTitlePriority DateFiling Date
US09/176,112Expired - LifetimeUS6463582B1 (en)1998-10-211998-10-21Dynamic optimizing object code translator for architecture emulation and dynamic optimizing object code translation method

Country Status (4)

CountryLink
US (2)US20020147969A1 (en)
JP (1)JP3553834B2 (en)
CN (1)CN1308818C (en)
DE (1)DE19945992B4 (en)

Cited By (91)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20020032822A1 (en)*1998-11-162002-03-14Insignia Solutions, PlcMethod and system for handling device driver interrupts
US20030130834A1 (en)*2001-12-212003-07-10Hitachi, Ltd.Execution time modification of instruction emulation parameters
US20030217248A1 (en)*2002-03-272003-11-20Achim NohlMethod and system for instruction-set architecture simulation using just in time compilation
US20040044990A1 (en)*2002-08-282004-03-04Honeywell International Inc.Model-based composable code generation
US20040054993A1 (en)*2002-09-172004-03-18International Business Machines CorporationHybrid mechanism for more efficient emulation and method therefor
US20040054518A1 (en)*2002-09-172004-03-18International Business Machines CorporationMethod and system for efficient emulation of multiprocessor address translation on a multiprocessor host
US20040054517A1 (en)*2002-09-172004-03-18International Business Machines CorporationMethod and system for multiprocessor emulation on a multiprocessor host system
US20040054992A1 (en)*2002-09-172004-03-18International Business Machines CorporationMethod and system for transparent dynamic optimization in a multiprocessing environment
US20040068701A1 (en)*2002-10-082004-04-08Chang Victor A.Boosting simulation performance by dynamically customizing segmented object codes based on stimulus coverage
US20040078785A1 (en)*2002-10-222004-04-22Bala DuttSystem and method for marking software code
US20040078186A1 (en)*2002-09-172004-04-22International Business Machines CorporationMethod and system for efficient emulation of multiprocessor memory consistency
US20040095348A1 (en)*2002-11-192004-05-20Bleiweiss Avi I.Shading language interface and method
US20040117460A1 (en)*2002-12-132004-06-17Walsh Robert E.Multi-user web simulator
US20040117170A1 (en)*2002-12-132004-06-17Walsh Robert E.Web simulator
US6868434B1 (en)*2000-08-072005-03-15Sun Microsystems, Inc.System and method for testing server latencies using multiple concurrent users in a computer system
US6880152B1 (en)*1999-10-132005-04-12Transmeta CorporationMethod of determining a mode of code generation
US20050154573A1 (en)*2004-01-082005-07-14Maly John W.Systems and methods for initializing a lockstep mode test case simulation of a multi-core processor design
US20050166192A1 (en)*2003-11-062005-07-28Polcha Michael P.Run time compiler system and method
US20050229232A1 (en)*2002-06-272005-10-13Thomson Licensing S.A.Data processing device and method for interactive television
US20060037005A1 (en)*2004-08-152006-02-16Russell Paul FMethod and apparatus for increasing computer security
US20060070042A1 (en)*2004-09-242006-03-30Muratori Richard DAutomatic clocking in shared-memory co-simulation
US20060195732A1 (en)*2005-02-112006-08-31Joerg DeutschleMethod and system for executing test cases for a device under verification
US20060224600A1 (en)*2005-04-012006-10-05Ronen GrosmanTraversal of empty regions in a searchable data structure
US7124407B1 (en)*2000-08-162006-10-17Sun Microsystems, Inc.Method and apparatus for caching native code in a virtual machine interpreter
US7188062B1 (en)*2002-12-272007-03-06Unisys CorporationConfiguration management for an emulator operating system
US20070074196A1 (en)*2005-09-282007-03-29Matsushita Electric Industrial Co., Ltd.Compiler apparatus
US20070226714A1 (en)*2003-05-282007-09-27Shigenori DoiProgram execution control device, program execution control method, control program, and recording medium
US20070226717A1 (en)*2006-03-092007-09-27Sun Microsystems, Inc.Code transformation to optimize fragments that implement constant loading
US20070234240A1 (en)*2006-03-292007-10-04Microsoft CorporationAutomatically optimize performance of package execution
US20070240142A1 (en)*2006-04-052007-10-11Brokenshire Daniel AApparatus and method for ensuring maximum code motion of accesses to dma buffers
US20070240120A1 (en)*2006-02-272007-10-11Miller James SAdaptive Compiled Code
US20080091926A1 (en)*2006-10-112008-04-17Motohiro KawahitoOptimization of a target program
US20080140537A1 (en)*2006-12-072008-06-12Norman PowellMethod for selling custom business software and software exchange marketplace
US7392245B1 (en)*1999-07-302008-06-24International Business Machines CorporationDirect call threaded code
US20080263527A1 (en)*2007-04-182008-10-23Sony Computer Entertainment Inc.Processor emulation using speculative forward translation
US20090007086A1 (en)*2004-05-252009-01-01Motohiro KawahitoCompiler Optimization
US20090113403A1 (en)*2007-09-272009-04-30Microsoft CorporationReplacing no operations with auxiliary code
US20090125887A1 (en)*2007-11-142009-05-14Nec Laboratories America, Inc.System and method for generating error traces for concurrency bugs
US20090228677A1 (en)*2005-12-192009-09-10Dxo LabsDigital data processing method and system
US20090271772A1 (en)*2008-04-242009-10-29International Business Machines CorporationUsing hardware interrupts to drive dynamic binary code recompilation
US7644210B1 (en)*2000-06-192010-01-05John BanningMethod and system for storing and retrieving a translation of target program instruction from a host processor using fast look-up of indirect branch destination in a dynamic translation system
US20100017183A1 (en)*2006-07-062010-01-21Imperas Ltd.Multiprocessor Development Environment
US20100042983A1 (en)*2008-08-122010-02-18Sun Microsystems, Inc.Cross-isa inlining in a system virtual machine
US20100088688A1 (en)*2008-10-032010-04-08Icera Inc.Instruction cache
US20100115498A1 (en)*1999-11-302010-05-06Stmicroelectronics LimitedAdaptive production of assembler
US20100125554A1 (en)*2008-11-182010-05-20Unisys CorporationMemory Recovery Across Reboots of an Emulated Operating System
US20100174853A1 (en)*2009-01-082010-07-08Samsung Electronics Co., Ltd.User device including flash and random write cache and method writing data
US20100262636A1 (en)*2004-01-052010-10-14International Business Machines CorporationGarbage collector with eager read barrier
US20100313079A1 (en)*2009-06-032010-12-09Robert BerettaMethods and apparatuses for a compiler server
US20110016459A1 (en)*2009-07-142011-01-20Robert Joseph MeyersSystems, methods, and computer programs for dynamic binary translation in an interpreter
US20110145551A1 (en)*2009-12-162011-06-16Cheng WangTwo-stage commit (tsc) region for dynamic binary optimization in x86
US20120089760A1 (en)*2006-03-292012-04-12Bratin SahaIncreasing Functionality Of A Reader-Writer Lock
US20120124555A1 (en)*2010-11-112012-05-17Codekko Software, Inc.Optimization of Compiled Control Objects
US8214813B2 (en)2007-01-122012-07-03Microsoft CorporationCode optimization across interfaces
US20120185833A1 (en)*2011-01-182012-07-19Hyeong-Seok OhCode generator and method for generating extra code for a virtual machine
US20120198458A1 (en)*2010-12-162012-08-02Advanced Micro Devices, Inc.Methods and Systems for Synchronous Operation of a Processing Device
US20120198428A1 (en)*2011-01-282012-08-02International Business Machines CorporationUsing Aliasing Information for Dynamic Binary Optimization
WO2012143760A1 (en)*2011-04-202012-10-26Freescale Semiconductor, Inc.Method and apparatus for generating resource efficient computer program code
US20120290809A1 (en)*2002-03-202012-11-15Research In Motion LimitedSystem and Method of Secure Garbage Collection on a Mobile Device
US20120291040A1 (en)*2011-05-112012-11-15Mauricio BreternitzAutomatic load balancing for heterogeneous cores
US20130067442A1 (en)*2011-09-132013-03-14Fujitsu LimitedInformation processing apparatus, method of controlling information processing apparatus, and program for executing intermediate code instructions
US20130090913A1 (en)*2011-10-112013-04-11David StrongStreamlined execution of emulated code using block-based translation mode
US20130173887A1 (en)*2006-07-062013-07-04Imperas Software Ltd.Processor simulation environment
US8555392B2 (en)2012-02-242013-10-08Kaspersky Lab ZaoSystem and method for detecting unknown packers and cryptors
US20130346952A1 (en)*2012-06-262013-12-26Marvell World Trade Ltd.Method and apparatus for code performance analysis
US20140067886A1 (en)*2012-09-042014-03-06Fujitsu LimitedInformation processing apparatus, method of outputting log, and recording medium
US8689202B1 (en)2004-03-302014-04-01Synopsys, Inc.Scheduling of instructions
US20140229916A1 (en)*2013-02-112014-08-14International Business Machines CorporationDebugger with previous version feature
US20150113251A1 (en)*2013-10-182015-04-23Marvell World Trade Ltd.Systems and Methods for Register Allocation
US20150113513A1 (en)*2013-10-182015-04-23Microsoft CorporationIncrementally compiling software artifacts from an interactive development environment
US9069782B2 (en)2012-10-012015-06-30The Research Foundation For The State University Of New YorkSystem and method for security and privacy aware virtual machine checkpointing
US20150269052A1 (en)*2014-03-212015-09-24Marvell World Trade LtdMethod and apparatus for supporting performance analysis
US9280326B1 (en)2004-05-262016-03-08Synopsys, Inc.Compiler retargeting based on instruction semantic models
US9383977B1 (en)2004-03-302016-07-05Synopsys, Inc.Generation of compiler description from architecture description
US9767271B2 (en)2010-07-152017-09-19The Research Foundation For The State University Of New YorkSystem and method for validating program execution at run-time
US9767284B2 (en)2012-09-142017-09-19The Research Foundation For The State University Of New YorkContinuous run-time validation of program execution: a practical approach
JP2018014142A (en)*2011-12-232018-01-25ザ アリゾナ ボード オブ リージェンツ オン ビハーフ オブ ザ ユニバーシティー オブ アリゾナ Method of micro specialization in database management system
US9946873B2 (en)2009-06-032018-04-17Apple Inc.Methods and apparatuses for secure compilation
US10365900B2 (en)2011-12-232019-07-30Dataware Ventures, LlcBroadening field specialization
US10491524B2 (en)2017-11-072019-11-26Advanced Micro Devices, Inc.Load balancing scheme
US20200012503A1 (en)*2017-04-262020-01-09International Business Machines CorporationRecursive stack-based serialization of hierarchical data
US10554777B1 (en)2014-01-212020-02-04Shape Security, Inc.Caching for re-coding techniques
US10635595B2 (en)2017-07-282020-04-28Citrix Systems, Inc.Dynamic delete command partitioning with disk caching
US10733099B2 (en)2015-12-142020-08-04Arizona Board Of Regents On Behalf Of The University Of ArizonaBroadening field specialization
US10897616B2 (en)*2014-12-082021-01-19Harmonic, Inc.Dynamic allocation of CPU cycles vis-a-vis virtual machines in video stream processing
US11216257B1 (en)*2020-07-022022-01-04Intrado CorporationAutomated conference sessions generated to manage application development
US11455153B2 (en)*2019-03-182022-09-27Advanced Micro Devices, Inc.Dynamic instances semantics
US11550600B2 (en)2019-11-072023-01-10Intel CorporationSystem and method for adapting executable object to a processing unit
US11677574B1 (en)2020-07-022023-06-13Intrado CorporationAutomated conference sessions generated to manage application development
US20230305992A1 (en)*2022-03-252023-09-28Nokia Solutions And Networks OyProcessor using target instructions
US12045653B2 (en)2017-06-222024-07-23Dataware Ventures, LlcField specialization to reduce memory-access stalls and allocation requests in data-intensive applications

Families Citing this family (338)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
JPH11296381A (en)*1998-04-081999-10-29Matsushita Electric Ind Co Ltd Virtual machine and compiler
US6199201B1 (en)*1998-08-032001-03-06Xerox CorporationSoftware constructs that facilitate partial evaluation of source code
DE69924857T2 (en)*1998-10-102006-03-02Transitive Ltd., Hanging Ditch PROGRAM CODE CONVERSION
EP0997815A3 (en)*1998-10-292004-05-26Texas Instruments IncorporatedInteractive translation system and method
US7065633B1 (en)1999-01-282006-06-20Ati International SrlSystem for delivering exception raised in first architecture to operating system coded in second architecture in dual architecture CPU
US7275246B1 (en)1999-01-282007-09-25Ati International SrlExecuting programs for a first computer architecture on a computer of a second architecture
US6763452B1 (en)1999-01-282004-07-13Ati International SrlModifying program execution based on profiling
US7111290B1 (en)1999-01-282006-09-19Ati International SrlProfiling program execution to identify frequently-executed portions and to assist binary translation
US8121828B2 (en)1999-01-282012-02-21Ati Technologies UlcDetecting conditions for transfer of execution from one computer instruction stream to another and executing transfer on satisfaction of the conditions
US7941647B2 (en)1999-01-282011-05-10Ati Technologies UlcComputer for executing two instruction sets and adds a macroinstruction end marker for performing iterations after loop termination
US6954923B1 (en)1999-01-282005-10-11Ati International SrlRecording classification of instructions executed by a computer
US8127121B2 (en)1999-01-282012-02-28Ati Technologies UlcApparatus for executing programs for a first computer architechture on a computer of a second architechture
US6978462B1 (en)1999-01-282005-12-20Ati International SrlProfiling execution of a sequence of events occuring during a profiled execution interval that matches time-independent selection criteria of events to be profiled
US7013456B1 (en)1999-01-282006-03-14Ati International SrlProfiling execution of computer programs
US8074055B1 (en)1999-01-282011-12-06Ati Technologies UlcAltering data storage conventions of a processor when execution flows from first architecture code to second architecture code
JP4088379B2 (en)*1999-01-292008-05-21インターナショナル・ビジネス・マシーンズ・コーポレーション Compiling method and apparatus, and stack tracing method and apparatus
US6662354B1 (en)*1999-01-292003-12-09Unisys CorporationDetermining destinations of a dynamic branch
US7058932B1 (en)*1999-04-192006-06-06Unisys CorporationSystem, computer program product, and methods for emulation of computer programs
US6779107B1 (en)1999-05-282004-08-17Ati International SrlComputer execution by opportunistic adaptation
JP2001005675A (en)*1999-06-212001-01-12Matsushita Electric Ind Co Ltd Program conversion device and processor
JP4041248B2 (en)*1999-07-092008-01-30松下電器産業株式会社 COMPILER DEVICE, COMPUTER-READABLE RECORDING MEDIUM CONTAINING COMPILING PROGRAM, AND COMPILING METHOD
US6629312B1 (en)*1999-08-202003-09-30Hewlett-Packard Development Company, L.P.Programmatic synthesis of a machine description for retargeting a compiler
US6772106B1 (en)*1999-08-202004-08-03Hewlett-Packard Development Company, L.P.Retargetable computer design system
US6549959B1 (en)1999-08-302003-04-15Ati International SrlDetecting modification to computer memory by a DMA device
WO2001022228A1 (en)1999-09-172001-03-29Nortel Networks LimitedSystem and method for producing a verification system for verifying procedure interfaces
US6714904B1 (en)*1999-10-132004-03-30Transmeta CorporationSystem for using rate of exception event generation during execution of translated instructions to control optimization of the translated instructions
US7761857B1 (en)*1999-10-132010-07-20Robert BedichekMethod for switching between interpretation and dynamic translation in a processor system based upon code sequence execution counts
JP3608993B2 (en)*1999-11-102005-01-12富士通株式会社 Compiler device and recording medium recording compiler program
JP3356742B2 (en)*1999-11-172002-12-16インターナショナル・ビジネス・マシーンズ・コーポレーション Program execution method
US6681387B1 (en)*1999-12-012004-01-20Board Of Trustees Of The University Of IllinoisMethod and apparatus for instruction execution hot spot detection and monitoring in a data processing unit
DE19963832A1 (en)*1999-12-302001-07-05Ericsson Telefon Ab L M Program profiling
US7100164B1 (en)*2000-01-062006-08-29Synopsys, Inc.Method and apparatus for converting a concurrent control flow graph into a sequential control flow graph
US6986128B2 (en)*2000-01-072006-01-10Sony Computer Entertainment Inc.Multiple stage program recompiler and method
US6934832B1 (en)2000-01-182005-08-23Ati International SrlException mechanism for a computer
US20020066081A1 (en)*2000-02-092002-05-30Evelyn DuesterwaldSpeculative caching scheme for fast emulation through statically predicted execution traces in a caching dynamic translator
US6594821B1 (en)2000-03-302003-07-15Transmeta CorporationTranslation consistency checking for modified target instructions by comparing to original copy
US6862565B1 (en)*2000-04-132005-03-01Hewlett-Packard Development Company, L.P.Method and apparatus for validating cross-architecture ISA emulation
US6862730B1 (en)*2000-04-262005-03-01Lucent Technologies Inc.Register allocation in code translation between processors
JP2001325111A (en)*2000-05-162001-11-22Hitachi Ltd Compilation method for speculation
US6968542B2 (en)*2000-06-162005-11-22Hewlett-Packard Development Company, L.P.Method for dynamically identifying pseudo-invariant instructions and their most common output values on frequently executing program paths
SE0002440D0 (en)2000-06-282000-06-28Virtutech Ab Interpreter
US6553362B2 (en)*2000-07-142003-04-22Hewlett-Packard Development Company, L.P.Case-reduced verification condition generation system and method using weakest precondition operator expressed using strongest postcondition operators
US6701518B1 (en)*2000-08-032004-03-02Hewlett-Packard Development Company, L.P.System and method for enabling efficient processing of a program that includes assertion instructions
JP2002073345A (en)*2000-08-252002-03-12Fujitsu Ltd Information processing device and recording medium
US6691306B1 (en)*2000-12-222004-02-10Lsi Logic CorporationUse of limited program space of general purpose processor for unlimited sequence of translated instructions
US6721943B2 (en)*2001-03-302004-04-13Intel CorporationCompile-time memory coalescing for dynamic arrays
US7099970B1 (en)*2001-04-032006-08-29Electronic Label Technology, Inc.Apparatus and method to enhance a one-wire bus
US7356673B2 (en)*2001-04-302008-04-08International Business Machines CorporationSystem and method including distributed instruction buffers for storing frequently executed instructions in predecoded form
CA2346762A1 (en)*2001-05-072002-11-07Ibm Canada Limited-Ibm Canada LimiteeCompiler generation of instruction sequences for unresolved storage devices
US6993751B2 (en)*2001-05-142006-01-31Microsoft CorporationPlacing exception throwing instructions in compiled code
US6851110B2 (en)*2001-06-072005-02-01Hewlett-Packard Development Company, L.P.Optimizing an executable computer program having address-bridging code segments
US7110525B1 (en)2001-06-252006-09-19Toby HellerAgent training sensitive call routing system
US6880154B2 (en)*2001-06-292005-04-12Intel CorporationAlias-free test for dynamic array structures
US20030033593A1 (en)*2001-08-082003-02-13Evelyn DuesterwaldDynamic execution layer interface for explicitly or transparently executing application or system binaries
US6966053B2 (en)*2001-08-102005-11-15The Boeing CompanyArchitecture for automated analysis and design with read only structure
US7207035B2 (en)*2001-08-232007-04-17International Business Machines CorporationApparatus and method for converting an instruction and data trace to an executable program
US6857119B1 (en)*2001-09-252005-02-15Oracle International CorporationTechniques for modifying a compiled application
CA2359862A1 (en)*2001-10-242003-04-24Ibm Canada Limited - Ibm Canada LimiteeUsing identifiers and counters for controlled optimization compilation
US6976249B1 (en)*2001-11-122005-12-13Apple Computer, Inc.Method for embedding object codes in source codes
US6738969B2 (en)2001-11-142004-05-18Sun Microsystems, Inc.Non-intrusive gathering of code usage information to facilitate removing unused compiled code
US20030093774A1 (en)*2001-11-142003-05-15Ronald HiltonState-specific variants of translated code under emulation
US20030101439A1 (en)*2001-11-292003-05-29Giuseppe DesoliSystem and method for supporting emulation of a computer system through dynamic code caching and transformation
DE10204345A1 (en)*2002-02-012003-08-14Systemonic Ag Command processing procedures
US7331040B2 (en)*2002-02-062008-02-12Transitive LimtedCondition code flag emulation for program code conversion
GB0202728D0 (en)*2002-02-062002-03-27Transitive Technologies LtdCondition code flag emulation for program code conversion
US7134115B2 (en)*2002-02-072006-11-07Matsushita Electric Industrial Co., Ltd.Apparatus, method, and program for breakpoint setting
US20030167457A1 (en)*2002-03-012003-09-04Thompson Carol L.System and method for providing an optimizer display tool
US7506321B1 (en)*2002-06-112009-03-17Unisys CorporationComputer emulator employing direct execution of compiled functions
JP3956113B2 (en)*2002-06-132007-08-08インターナショナル・ビジネス・マシーンズ・コーポレーション Data processing apparatus and program
JP2004021425A (en)*2002-06-132004-01-22Hitachi Ltd Memory allocation method in compiler
US7926032B2 (en)*2002-07-182011-04-12International Business Machines CorporationTwo meta-level modeling approach for mapping typed data
US7107585B2 (en)*2002-07-292006-09-12Arm LimitedCompilation of application code in a data processing apparatus
US7124237B2 (en)*2002-10-032006-10-17Seagate Technology LlcVirtual machine emulation in the memory space of a programmable processor
US7194736B2 (en)*2002-12-102007-03-20Intel CorporationDynamic division optimization for a just-in-time compiler
US20040117778A1 (en)*2002-12-162004-06-17Sehr David C.Optimization of software code using N-bit pointer conversion
US7930490B2 (en)*2002-12-232011-04-19Siemens Industry, Inc.Method for utilizing a memory device for a programmable logic controller (PLC)
US7111287B2 (en)*2003-01-102006-09-19International Business Machines CorporationGlobal processor resource assignment in an assembler
US7100154B2 (en)*2003-01-162006-08-29International Business Machines CorporationDynamic compiler apparatus and method that stores and uses persistent execution statistics
US7389501B1 (en)*2003-02-182008-06-17Microsoft CorporationSystem and method for register allocation using SSA construction
US7310723B1 (en)2003-04-022007-12-18Transmeta CorporationMethods and systems employing a flag for deferring exception handling to a commit or rollback point
GB0307805D0 (en)*2003-04-042003-05-07Intuwave LtdA method of enabling source code to be used to generate a first and a second software application,each compatible with a different operating system
GB0309056D0 (en)*2003-04-222003-05-28Transitive Technologies LtdBlock translation optimizations for program code conversion
US7308682B2 (en)*2003-04-252007-12-11Intel CorporationMethod and apparatus for recovering data values in dynamic runtime systems
US7284100B2 (en)2003-05-122007-10-16International Business Machines CorporationInvalidating storage, clearing buffer entries, and an instruction therefor
US7159122B2 (en)*2003-05-122007-01-02International Business Machines CorporationMessage digest instructions
US20040243379A1 (en)*2003-05-292004-12-02Dominic PaulrajIdeal machine simulator with infinite resources to predict processor design performance
US7219329B2 (en)*2003-06-132007-05-15Microsoft CorporationSystems and methods providing lightweight runtime code generation
US7260815B1 (en)*2003-06-302007-08-21Vmware, Inc.Method and apparatus for managing registers in a binary translator
GB0316531D0 (en)*2003-07-152003-08-20Transitive LtdMethod and apparatus for performing native binding
US20050028132A1 (en)*2003-07-312005-02-03Srinivasamurthy Venugopal K.Application specific optimization of interpreters for embedded systems
US20050028148A1 (en)*2003-08-012005-02-03Sun Microsystems, Inc.Method for dynamic recompilation of a program
US7318222B2 (en)*2003-08-272008-01-08Sun Microsystems, Inc.Methods for execution control acquistion of a program and for executing an optimized version of a program
US7207038B2 (en)*2003-08-292007-04-17Nokia CorporationConstructing control flows graphs of binary executable programs at post-link time
DE10344847A1 (en)*2003-09-262005-04-14Philips Intellectual Property & Standards GmbhSource code compilation method for use in a client-server network environment, wherein a compilation program runs on a server and queries a client via a source code input, while the client queries a server output for compiled code
US7051301B2 (en)*2003-10-012006-05-23Hewlett-Packard Development Company, L.P.System and method for building a test case including a summary of instructions
US7584455B2 (en)*2003-10-232009-09-01Microsoft CorporationPredicate-based test coverage and generation
US20050149913A1 (en)*2003-12-292005-07-07Yun WangApparatus and methods to optimize code in view of masking status of exceptions
JP4701611B2 (en)*2004-01-152011-06-15株式会社日立製作所 Memory management method for dynamic conversion emulators
US7478374B2 (en)*2004-03-222009-01-13Intel CorporationDebug system having assembler correcting register allocation errors
US7665070B2 (en)*2004-04-232010-02-16International Business Machines CorporationMethod and apparatus for a computing system using meta program representation
CN1294495C (en)*2004-05-202007-01-10北京大学Simulator structure method
CN100359470C (en)*2004-06-302008-01-02中国科学院计算技术研究所 Method and device for processing incomplete static information in dynamic-static combined binary translation
US7747992B2 (en)*2004-08-232010-06-29Intel CorporationMethods and apparatus for creating software basic block layouts
US20060048106A1 (en)*2004-08-272006-03-02International Business Machines CorporationLink-time profile-based method for reducing run-time image of executables
US7784039B2 (en)*2004-09-222010-08-24Panasonic CorporationCompiler, compilation method, and compilation program
US7624384B2 (en)*2004-11-302009-11-24Intel CorporationApparatus, system, and method of dynamic binary translation with translation reuse
US7913239B2 (en)*2005-03-082011-03-22International Business Machines CorporationMethod and apparatus for a programming framework for pattern matching and transformation of intermediate language expression trees
US7805708B2 (en)*2005-05-132010-09-28Texas Instruments IncorporatedAutomatic tool to eliminate conflict cache misses
US7770152B1 (en)*2005-05-202010-08-03Oracle America, Inc.Method and apparatus for coordinating state and execution context of interpreted languages
US8413162B1 (en)2005-06-282013-04-02Guillermo J. RozasMulti-threading based on rollback
US20070006189A1 (en)*2005-06-302007-01-04Intel CorporationApparatus, system, and method of detecting modification in a self modifying code
US20070169012A1 (en)*2005-11-142007-07-19Microsoft CorporationAsynchronous just-in-time compilation
US9830174B2 (en)*2005-12-222017-11-28Synopsys, Inc.Dynamic host code generation from architecture description for fast simulation
US20070150881A1 (en)*2005-12-222007-06-28Motorola, Inc.Method and system for run-time cache logging
US7792666B2 (en)*2006-05-032010-09-07Sony Computer Entertainment Inc.Translation block invalidation prehints in emulation of a target system on a host system
US7813909B2 (en)2006-05-032010-10-12Sony Computer Entertainment Inc.Register mapping in emulation of a target system on a host system
US7770050B2 (en)*2006-05-032010-08-03Sony Computer Entertainment Inc.Method and apparatus for resolving clock management issues in emulation involving both interpreted and translated code
US8266605B2 (en)*2006-02-222012-09-11Wind River Systems, Inc.Method and system for optimizing performance based on cache analysis
US7568189B2 (en)*2006-05-032009-07-28Sony Computer Entertainment Inc.Code translation and pipeline optimization
JP4884297B2 (en)*2006-05-262012-02-29パナソニック株式会社 Compiler device, compiling method, and compiler program
US8301870B2 (en)*2006-07-272012-10-30International Business Machines CorporationMethod and apparatus for fast synchronization and out-of-order execution of instructions in a meta-program based computing system
US7934208B2 (en)*2006-10-132011-04-26International Business Machines CorporationMethod for transparent on-line dynamic binary optimization
US8671248B2 (en)*2007-01-052014-03-11International Business Machines CorporationArchitecture support of memory access coloring
US8799581B2 (en)*2007-01-052014-08-05International Business Machines CorporationCache coherence monitoring and feedback
MX2009007876A (en)*2007-01-242009-07-31IbmField device having an assembly clip for fastening to a fastening area.
US7890939B2 (en)*2007-02-132011-02-15Microsoft CorporationPartial methods
US8443029B2 (en)2007-03-012013-05-14International Business Machines CorporationRound for reround mode in a decimal floating point instruction
US7934073B2 (en)*2007-03-142011-04-26Andes Technology CorporationMethod for performing jump and translation state change at the same time
US8146065B2 (en)*2007-08-132012-03-27International Business Machines CorporationRunning time of short running applications by effectively interleaving compilation with computation in a just-in-time environment
US7991962B2 (en)*2007-12-102011-08-02International Business Machines CorporationSystem and method of using threads and thread-local storage
US8108868B2 (en)*2007-12-182012-01-31Microsoft CorporationWorkflow execution plans through completion condition critical path analysis
US8060356B2 (en)2007-12-192011-11-15Sony Computer Entertainment Inc.Processor emulation using fragment level translation
US8041922B2 (en)*2008-01-112011-10-18International Business Machines CorporationEnhanced dynamic address translation with load real address function
US8677098B2 (en)2008-01-112014-03-18International Business Machines CorporationDynamic address translation with fetch protection
US8082405B2 (en)*2008-01-112011-12-20International Business Machines CorporationDynamic address translation with fetch protection
US8335906B2 (en)*2008-01-112012-12-18International Business Machines CorporationPerform frame management function instruction for clearing blocks of main storage
US8019964B2 (en)*2008-01-112011-09-13International Buisness Machines CorporationDynamic address translation with DAT protection
US8103851B2 (en)2008-01-112012-01-24International Business Machines CorporationDynamic address translation with translation table entry format control for indentifying format of the translation table entry
US7895419B2 (en)2008-01-112011-02-22International Business Machines CorporationRotate then operate on selected bits facility and instructions therefore
US8117417B2 (en)2008-01-112012-02-14International Business Machines CorporationDynamic address translation with change record override
US8041923B2 (en)*2008-01-112011-10-18International Business Machines CorporationLoad page table entry address instruction execution based on an address translation format control field
US8037278B2 (en)*2008-01-112011-10-11International Business Machines CorporationDynamic address translation with format control
US8417916B2 (en)2008-01-112013-04-09International Business Machines CorporationPerform frame management function instruction for setting storage keys and clearing blocks of main storage
US7739434B2 (en)2008-01-112010-06-15International Business Machines CorporationPerforming a configuration virtual topology change and instruction therefore
US8151083B2 (en)2008-01-112012-04-03International Business Machines CorporationDynamic address translation with frame management
US7734900B2 (en)2008-01-112010-06-08International Business Machines CorporationComputer configuration virtual topology discovery and instruction therefore
US8086811B2 (en)2008-02-252011-12-27International Business Machines CorporationOptimizations of a perform frame management function issued by pageable guests
US8176280B2 (en)2008-02-252012-05-08International Business Machines CorporationUse of test protection instruction in computing environments that support pageable guests
US8095773B2 (en)2008-02-262012-01-10International Business Machines CorporationDynamic address translation with translation exception qualifier
US8291397B2 (en)*2008-04-022012-10-16International Business Machines CorporationCompiler optimized function variants for use when return codes are ignored
US8407681B2 (en)*2008-05-232013-03-26International Business Machines CorporationSystem and method for changing variables at runtime
US8387026B1 (en)*2008-12-242013-02-26Google Inc.Compile-time feedback-directed optimizations using estimated edge profiles from hardware-event sampling
US8308185B2 (en)*2009-01-302012-11-13Weaver Danny CPin-engaging drawbar and lock plate assembly
US10152504B2 (en)2009-03-112018-12-11Actian Netherlands B.V.Column-store database architecture utilizing positional delta tree update system and methods
US8438558B1 (en)2009-03-272013-05-07Google Inc.System and method of updating programs and data
US8949103B2 (en)*2009-05-012015-02-03Microsoft CorporationProgram code simulator
US8577950B2 (en)*2009-08-172013-11-05International Business Machines CorporationMatrix multiplication operations with data pre-conditioning in a high performance computing architecture
US8650240B2 (en)*2009-08-172014-02-11International Business Machines CorporationComplex matrix multiplication operations with data pre-conditioning in a high performance computing architecture
US8752008B2 (en)*2009-09-022014-06-10Advanced Micro Devices, Inc.Lightweight service based dynamic binary rewriter framework
US8949106B2 (en)*2009-09-182015-02-03International Business Machines CorporationJust in time compiler in spatially aware emulation of a guest computer instruction set
US9158566B2 (en)2009-09-182015-10-13International Business Machines CorporationPage mapped spatially aware emulation of computer instruction set
US8617049B2 (en)*2009-09-182013-12-31Ethicon Endo-Surgery, Inc.Symmetrical drive system for an implantable restriction device
US8428930B2 (en)*2009-09-182013-04-23International Business Machines CorporationPage mapped spatially aware emulation of a computer instruction set
US8301434B2 (en)2009-09-182012-10-30International Buisness Machines CorporationHost cell spatially aware emulation of a guest wild branch
US8447583B2 (en)2009-09-182013-05-21International Business Machines CorporationSelf initialized host cell spatially aware emulation of a computer instruction set
US8930635B2 (en)2009-12-142015-01-06International Business Machines CorporationPage invalidation processing with setting of storage key to predefined value
US8918601B2 (en)*2009-12-142014-12-23International Business Machines CorporationDeferred page clearing in a multiprocessor computer system
US8510511B2 (en)2009-12-142013-08-13International Business Machines CorporationReducing interprocessor communications pursuant to updating of a storage key
US8806179B2 (en)2009-12-152014-08-12International Business Machines CorporationNon-quiescing key setting facility
US8505034B2 (en)2009-12-172013-08-06Amazon Technologies, Inc.Automated service interface optimization
US8516230B2 (en)2009-12-292013-08-20International Business Machines CorporationSPE software instruction cache
US8438340B2 (en)*2010-02-182013-05-07International Business Machines CorporationExecuting atomic store disjoint instructions
US8850166B2 (en)2010-02-182014-09-30International Business Machines CorporationLoad pair disjoint facility and instruction therefore
US8914619B2 (en)2010-06-222014-12-16International Business Machines CorporationHigh-word facility for extending the number of general purpose registers available to instructions
US8635430B2 (en)2010-06-232014-01-21International Business Machines CorporationTranslation of input/output addresses to memory addresses
US9342352B2 (en)2010-06-232016-05-17International Business Machines CorporationGuest access to address spaces of adapter
US8650337B2 (en)2010-06-232014-02-11International Business Machines CorporationRuntime determination of translation formats for adapter functions
US8650335B2 (en)2010-06-232014-02-11International Business Machines CorporationMeasurement facility for adapter functions
US8549182B2 (en)2010-06-232013-10-01International Business Machines CorporationStore/store block instructions for communicating with adapters
US8615622B2 (en)2010-06-232013-12-24International Business Machines CorporationNon-standard I/O adapters in a standardized I/O architecture
US9213661B2 (en)2010-06-232015-12-15International Business Machines CorporationEnable/disable adapters of a computing environment
US8645606B2 (en)2010-06-232014-02-04International Business Machines CorporationUpbound input/output expansion request and response processing in a PCIe architecture
US8621112B2 (en)2010-06-232013-12-31International Business Machines CorporationDiscovery by operating system of information relating to adapter functions accessible to the operating system
US8505032B2 (en)2010-06-232013-08-06International Business Machines CorporationOperating system notification of actions to be taken responsive to adapter events
US8468284B2 (en)2010-06-232013-06-18International Business Machines CorporationConverting a message signaled interruption into an I/O adapter event notification to a guest operating system
US8572635B2 (en)2010-06-232013-10-29International Business Machines CorporationConverting a message signaled interruption into an I/O adapter event notification
US8639858B2 (en)2010-06-232014-01-28International Business Machines CorporationResizing address spaces concurrent to accessing the address spaces
US8683108B2 (en)2010-06-232014-03-25International Business Machines CorporationConnected input/output hub management
US8645767B2 (en)2010-06-232014-02-04International Business Machines CorporationScalable I/O adapter function level error detection, isolation, and reporting
US8566480B2 (en)2010-06-232013-10-22International Business Machines CorporationLoad instruction for communicating with adapters
US8615645B2 (en)2010-06-232013-12-24International Business Machines CorporationControlling the selectively setting of operational parameters for an adapter
US8478922B2 (en)2010-06-232013-07-02International Business Machines CorporationControlling a rate at which adapter interruption requests are processed
US8918573B2 (en)2010-06-232014-12-23International Business Machines CorporationInput/output (I/O) expansion response processing in a peripheral component interconnect express (PCIe) environment
US8504754B2 (en)2010-06-232013-08-06International Business Machines CorporationIdentification of types of sources of adapter interruptions
US8745292B2 (en)2010-06-232014-06-03International Business Machines CorporationSystem and method for routing I/O expansion requests and responses in a PCIE architecture
US9195623B2 (en)2010-06-232015-11-24International Business Machines CorporationMultiple address spaces per adapter with address translation
US8510599B2 (en)2010-06-232013-08-13International Business Machines CorporationManaging processing associated with hardware events
US8626970B2 (en)2010-06-232014-01-07International Business Machines CorporationControlling access by a configuration to an adapter function
US10521231B2 (en)2010-06-242019-12-31International Business Machines CorporationFunction virtualization facility for blocking instruction function of a multi-function instruction of a virtual processor
US9851969B2 (en)2010-06-242017-12-26International Business Machines CorporationFunction virtualization facility for function query of a processor
US8407701B2 (en)2010-06-242013-03-26International Business Machines CorporationFacilitating quiesce operations within a logically partitioned computer system
US8595469B2 (en)2010-06-242013-11-26International Business Machines CorporationDiagnose instruction for serializing processing
US8631225B2 (en)2010-06-252014-01-14International Business Machines CorporationDynamically rewriting branch instructions to directly target an instruction cache location
US20110320786A1 (en)2010-06-252011-12-29International Business Machines CorporationDynamically Rewriting Branch Instructions in Response to Cache Line Eviction
US8522225B2 (en)2010-06-252013-08-27International Business Machines CorporationRewriting branch instructions using branch stubs
US9459851B2 (en)2010-06-252016-10-04International Business Machines CorporationArranging binary code based on call graph partitioning
US9600281B2 (en)2010-07-122017-03-21International Business Machines CorporationMatrix multiplication operations using pair-wise load and splat operations
US9063743B2 (en)*2010-11-232015-06-23Sap SeModel-based programming, configuration, and integration of networked embedded devices
CN108874693B (en)2011-01-272022-09-23英特尔公司Guest instruction to native instruction range based mapping using a translation lookaside buffer of a processor
WO2012103359A2 (en)2011-01-272012-08-02Soft Machines, Inc.Hardware acceleration components for translating guest instructions to native instructions
WO2012103367A2 (en)2011-01-272012-08-02Soft Machines, Inc.Guest to native block address mappings and management of native code storage
WO2012103245A2 (en)2011-01-272012-08-02Soft Machines Inc.Guest instruction block with near branching and far branching sequence construction to native instruction block
WO2012103253A2 (en)2011-01-272012-08-02Soft Machines, Inc.Multilevel conversion table cache for translating guest instructions to native instructions
WO2012103373A2 (en)2011-01-272012-08-02Soft Machines, Inc.Variable caching structure for managing physical storage
US8533714B2 (en)2011-05-032013-09-10International Business Machines CorporationDynamic virtual machine domain configuration and virtual machine relocation management
US9032526B2 (en)2011-05-122015-05-12Microsoft Technology Licensing, LlcEmulating mixed-code programs using a virtual machine instance
US9323668B2 (en)2011-06-102016-04-26International Business Machines CorporationDeconfigure storage class memory command
US9037907B2 (en)2011-06-102015-05-19International Business Machines CorporationOperator message commands for testing a coupling facility
US8799522B2 (en)2011-06-102014-08-05International Business Machines CorporationExecuting a start operator message command
US8918797B2 (en)2011-06-102014-12-23International Business Machines CorporationProcessing operator message commands
US9021180B2 (en)2011-06-102015-04-28International Business Machines CorporationClearing blocks of storage class memory
US9116634B2 (en)2011-06-102015-08-25International Business Machines CorporationConfigure storage class memory command
US9021179B2 (en)2011-06-102015-04-28International Business Machines CorporationStore storage class memory information command
US9116788B2 (en)2011-06-102015-08-25International Business Machines CorporationUsing extended asynchronous data mover indirect data address words
US9021226B2 (en)2011-06-102015-04-28International Business Machines CorporationMoving blocks of data between main memory and storage class memory
US9058275B2 (en)2011-06-102015-06-16International Business Machines CorporationData returned responsive to executing a start subchannel instruction
US9058243B2 (en)2011-06-102015-06-16International Business Machines CorporationReleasing blocks of storage class memory
US8689240B2 (en)2011-06-102014-04-01International Business Machines CorporationTransmitting operator message commands to a coupling facility
US8560737B2 (en)2011-06-102013-10-15International Business Machines CorporationManaging operator message buffers in a coupling facility
US9116789B2 (en)2011-06-102015-08-25International Business Machines CorporationChaining move specification blocks
US8549094B2 (en)2011-06-302013-10-01International Business Machines CorporationFacilitating communication between isolated memory spaces of a communications environment
US9116685B2 (en)2011-07-192015-08-25Qualcomm IncorporatedTable call instruction for frequently called functions
US8806452B2 (en)2011-11-102014-08-12International Business Machines CorporationTransformation of computer programs and eliminating errors
US20130132061A1 (en)*2011-11-182013-05-23Michael J. RieschlJust-in-time static translation system for emulated computing environments
US9335993B2 (en)2011-12-292016-05-10International Business Machines CorporationConvert from zoned format to decimal floating point format
US9329861B2 (en)2011-12-292016-05-03International Business Machines CorporationConvert to zoned format from decimal floating point format
US8850450B2 (en)2012-01-182014-09-30International Business Machines CorporationWarning track interruption facility
US9104508B2 (en)2012-01-182015-08-11International Business Machines CorporationProviding by one program to another program access to a warning track facility
US9110878B2 (en)2012-01-182015-08-18International Business Machines CorporationUse of a warning track interruption facility by a program
GB2513516A (en)2012-01-312014-10-29IbmMajor branch instructions with transactional memory
US9268566B2 (en)2012-03-152016-02-23International Business Machines CorporationCharacter data match determination by loading registers at most up to memory block boundary and comparing
US9459868B2 (en)2012-03-152016-10-04International Business Machines CorporationInstruction to load data up to a dynamically determined memory boundary
US9715383B2 (en)2012-03-152017-07-25International Business Machines CorporationVector find element equal instruction
US9588762B2 (en)2012-03-152017-03-07International Business Machines CorporationVector find element not equal instruction
US9454367B2 (en)2012-03-152016-09-27International Business Machines CorporationFinding the length of a set of character data having a termination character
US9454366B2 (en)2012-03-152016-09-27International Business Machines CorporationCopying character data having a termination character from one memory location to another
US9710266B2 (en)2012-03-152017-07-18International Business Machines CorporationInstruction to compute the distance to a specified memory boundary
US9459864B2 (en)2012-03-152016-10-04International Business Machines CorporationVector string range compare
US9459867B2 (en)2012-03-152016-10-04International Business Machines CorporationInstruction to load data up to a specified memory boundary indicated by the instruction
US9280347B2 (en)2012-03-152016-03-08International Business Machines CorporationTransforming non-contiguous instruction specifiers to contiguous instruction specifiers
US9922090B1 (en)2012-03-272018-03-20Actian Netherlands, B.V.System and method for automatic vertical decomposition of a table for improving input/output and memory utilization in a database
CN103365931B (en)*2012-04-102016-12-14南京中兴新软件有限责任公司The method and device of quick mapping function performance inventory in performance analysis tool
US20130332434A1 (en)2012-06-112013-12-12Actian Netherlands, B.V.System and method using partial just-in-time complation to resolve memory access pattern problems in hash table probing
WO2013187864A1 (en)*2012-06-112013-12-19Empire Technology Development LlcModulating dynamic optimizations of a computer program
US9361115B2 (en)2012-06-152016-06-07International Business Machines CorporationSaving/restoring selected registers in transactional processing
US8682877B2 (en)2012-06-152014-03-25International Business Machines CorporationConstrained transaction execution
US8880959B2 (en)2012-06-152014-11-04International Business Machines CorporationTransaction diagnostic block
US8688661B2 (en)2012-06-152014-04-01International Business Machines CorporationTransactional processing
US9317460B2 (en)2012-06-152016-04-19International Business Machines CorporationProgram event recording within a transactional environment
US9336046B2 (en)2012-06-152016-05-10International Business Machines CorporationTransaction abort processing
US9436477B2 (en)2012-06-152016-09-06International Business Machines CorporationTransaction abort instruction
US9772854B2 (en)2012-06-152017-09-26International Business Machines CorporationSelectively controlling instruction execution in transactional processing
US9448796B2 (en)2012-06-152016-09-20International Business Machines CorporationRestricted instructions in transactional execution
US10437602B2 (en)2012-06-152019-10-08International Business Machines CorporationProgram interruption filtering in transactional execution
DE102013210839B4 (en)2012-06-152023-06-07International Business Machines Corporation Restricting processing within a processor to facilitate execution of a transaction
US9348642B2 (en)2012-06-152016-05-24International Business Machines CorporationTransaction begin/end instructions
US9442737B2 (en)2012-06-152016-09-13International Business Machines CorporationRestricting processing within a processor to facilitate transaction completion
US9182984B2 (en)2012-06-152015-11-10International Business Machines CorporationLocal clearing control
US8966324B2 (en)2012-06-152015-02-24International Business Machines CorporationTransactional execution branch indications
DE102013210160A1 (en)2012-06-152013-12-19International Business Machines CorporationMethod for facilitating processing of transaction within multiprocessor data processing environment, involves automatically setting counter to predefined value based on presenting interrupt of transaction when transaction is aborted
US9740549B2 (en)2012-06-152017-08-22International Business Machines CorporationFacilitating transaction completion subsequent to repeated aborts of the transaction
US9384004B2 (en)2012-06-152016-07-05International Business Machines CorporationRandomized testing within transactional execution
US20130339680A1 (en)2012-06-152013-12-19International Business Machines CorporationNontransactional store instruction
US9367323B2 (en)2012-06-152016-06-14International Business Machines CorporationProcessor assist facility
US10656945B2 (en)2012-06-152020-05-19International Business Machines CorporationNext instruction access intent instruction for indicating usage of a storage operand by one or more instructions subsequent to a next sequential instruction
US9256410B2 (en)*2012-08-092016-02-09Apple Inc.Failure profiling for continued code optimization
US9823924B2 (en)2013-01-232017-11-21International Business Machines CorporationVector element rotate and insert under mask instruction
US9715385B2 (en)2013-01-232017-07-25International Business Machines CorporationVector exception code
US9471308B2 (en)2013-01-232016-10-18International Business Machines CorporationVector floating point test data class immediate instruction
US9778932B2 (en)2013-01-232017-10-03International Business Machines CorporationVector generate mask instruction
US9513906B2 (en)2013-01-232016-12-06International Business Machines CorporationVector checksum instruction
US9804840B2 (en)2013-01-232017-10-31International Business Machines CorporationVector Galois Field Multiply Sum and Accumulate instruction
US11507574B1 (en)2013-03-132022-11-22Actian Netherlands B.V.Adaptive selection of a processing method based on observed performance for improved and robust system efficiency
US9201629B2 (en)2013-03-142015-12-01International Business Machines CorporationInstruction for performing a pseudorandom number seed operation
US8873750B2 (en)2013-03-142014-10-28International Business Machines CorporationInstruction for performing a pseudorandom number generate operation
KR101761498B1 (en)2013-03-152017-07-25인텔 코포레이션Method and apparatus for guest return address stack emulation supporting speculation
US9582279B2 (en)2013-03-152017-02-28International Business Machines CorporationExecution of condition-based instructions
WO2014151652A1 (en)2013-03-152014-09-25Soft Machines IncMethod and apparatus to allow early dependency resolution and data forwarding in a microprocessor
US10089218B2 (en)*2013-03-172018-10-02Typemock Ltd.Methods circuits apparatuses systems and associated computer executable code for generating a software unit test
US9396097B2 (en)*2013-03-172016-07-19Typemock Ltd.Methods, circuits, devices, systems and associated computer executable code for testing software code
US9513924B2 (en)2013-06-282016-12-06Globalfoundries Inc.Predictor data structure for use in pipelined processing
US9361144B2 (en)2013-06-282016-06-07Globalfoundries Inc.Predictive fetching and decoding for selected return instructions
US9619230B2 (en)2013-06-282017-04-11International Business Machines CorporationPredictive fetching and decoding for selected instructions
US9348596B2 (en)2013-06-282016-05-24International Business Machines CorporationForming instruction groups based on decode time instruction optimization
US9372695B2 (en)2013-06-282016-06-21Globalfoundries Inc.Optimization of instruction groups across group boundaries
US10318299B2 (en)2013-10-312019-06-11International Business Machines CorporationReading a register pair by writing a wide register
US9201635B2 (en)*2013-12-302015-12-01Unisys CorporationJust-in-time dynamic translation for translation, compilation, and execution of non-native instructions
CN103838616B (en)*2014-03-052017-04-05北京工业大学Computer program Just-In-Time method based on tree-shaped program branch
US9558032B2 (en)2014-03-142017-01-31International Business Machines CorporationConditional instruction end operation
US9454370B2 (en)2014-03-142016-09-27International Business Machines CorporationConditional transaction end instruction
US10120681B2 (en)2014-03-142018-11-06International Business Machines CorporationCompare and delay instructions
US9582295B2 (en)2014-03-182017-02-28International Business Machines CorporationArchitectural mode configuration
US9588774B2 (en)2014-03-182017-03-07International Business Machines CorporationCommon boot sequence for control utility able to be initialized in multiple architectures
US9916185B2 (en)2014-03-182018-03-13International Business Machines CorporationManaging processing associated with selected architectural facilities
US9569115B2 (en)2014-03-312017-02-14International Business Machines CorporationTransparent code patching
US9715449B2 (en)2014-03-312017-07-25International Business Machines CorporationHierarchical translation structures providing separate translations for instruction fetches and data accesses
US9483295B2 (en)2014-03-312016-11-01International Business Machines CorporationTransparent dynamic code optimization
US9858058B2 (en)2014-03-312018-01-02International Business Machines CorporationPartition mobility for partitions with extended code
US9824021B2 (en)2014-03-312017-11-21International Business Machines CorporationAddress translation structures to provide separate translations for instruction fetches and data accesses
US9720661B2 (en)2014-03-312017-08-01International Businesss Machines CorporationSelectively controlling use of extended mode features
US9734083B2 (en)2014-03-312017-08-15International Business Machines CorporationSeparate memory address translations for instruction fetches and data accesses
US9256546B2 (en)2014-03-312016-02-09International Business Machines CorporationTransparent code patching including updating of address translation structures
CN104049949B (en)*2014-05-302016-10-05南阳理工学院A kind of peephole optimization method towards BSWAP instruction
EP3012764A1 (en)*2014-10-242016-04-27Thomson LicensingControl flow graph flattening device and method
US10284646B2 (en)*2014-12-172019-05-07International Business Machines CorporationApplication multi-versioning in a traditional language environment
US9495303B2 (en)*2015-02-032016-11-15Intel CorporationFine grained address remapping for virtualization
GB2554553B (en)*2015-04-102021-12-01Google LlcBinary translation on shared object level
CN107408053B (en)*2015-04-102021-04-16谷歌有限责任公司 Method, system and medium for binary translation to native client
EP3106982B1 (en)*2015-06-182021-03-10ARM LimitedDetermination of branch convergence in a sequence of program instructions
US10048952B2 (en)*2015-11-112018-08-14Oracle International CorporationCompiler optimized data model evaluation
US9971581B1 (en)*2015-12-282018-05-15Wells Fargo Bank, N.A.Programming language conversion
CN107665125B (en)*2016-07-292021-03-09北京小米移动软件有限公司Method and device for executing operation instruction
US9965374B2 (en)*2016-08-262018-05-08Qualcomm IncorporatedProfile guided indirect function call check for control flow integrity
CN106775913B (en)*2016-12-162019-07-09华东师范大学A kind of object code controlling stream graph generation method
US10474442B2 (en)*2017-09-292019-11-12Intel CorporationMethods and apparatus to perform region formation for a dynamic binary translation processor
JP7035751B2 (en)*2018-04-122022-03-15富士通株式会社 Code conversion device, code conversion method, and code conversion program
US10698668B1 (en)*2018-05-292020-06-30Amazon Technologies, Inc.Custom code transformations during compilation process
JP7163697B2 (en)*2018-09-282022-11-01富士通株式会社 Generation program, information processing device and generation method
US10970073B2 (en)*2018-10-022021-04-06International Business Machines CorporationBranch optimization during loading
CN109491918B (en)*2018-11-222020-05-01中国人民解放军战略支援部队信息工程大学Method and device for detecting assembly redundant instructions
CN111435309A (en)*2019-01-112020-07-21中标软件有限公司Register allocation optimization implementation method
CN109918132B (en)*2019-03-262021-04-16龙芯中科技术股份有限公司Instruction installation method and device, electronic equipment and storage medium
CN111026398B (en)*2019-10-282023-08-11贝壳技术有限公司Construction method and construction system for data integration based on cache
CN111966397B (en)*2020-07-222025-01-07哈尔滨工业大学 A method for automatic migration and optimization of heterogeneous parallel programs
US11526336B2 (en)*2021-03-152022-12-13Fujitsu LimitedCommunity-oriented, cloud-based digital annealing platform
US12056494B2 (en)*2021-04-232024-08-06Nvidia CorporationTechniques for parallel execution
CN113377378B (en)*2021-07-022024-11-29北京百度网讯科技有限公司Processing method, device, equipment and storage medium for small program
US20240329981A1 (en)*2023-03-312024-10-03Veracode, Inc.Renaming global variables based on inferred types of variables in application program code

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
GB2240861A (en)1990-02-091991-08-14Hewlett Packard CoApparatus and method for adapting computer program from one operating environment to another
JPH06282437A (en)1993-03-301994-10-07Hitachi Ltd Object attribute access method
US5757982A (en)*1994-10-181998-05-26Hewlett-Packard CompanyQuadrantal scaling of dot matrix data
US5751982A (en)1995-03-311998-05-12Apple Computer, Inc.Software emulation system with dynamic translation of emulated instructions for increased processing speed
US5761477A (en)*1995-12-041998-06-02Microsoft CorporationMethods for safe and efficient implementations of virtual machines
US6115809A (en)*1998-04-302000-09-05Hewlett-Packard CompanyCompiling strong and weak branching behavior instruction blocks to separate caches for dynamic and static prediction
US6158047A (en)*1998-07-082000-12-05Hewlett-Packard CompanyClient/server system for fast, user transparent and memory efficient computer language translation

Cited By (169)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US7039738B2 (en)*1998-11-162006-05-02Esmertec AgMethod and system for handling device driver interrupts
US20020032822A1 (en)*1998-11-162002-03-14Insignia Solutions, PlcMethod and system for handling device driver interrupts
US20080208799A1 (en)*1999-07-302008-08-28International Business Machines CorporationDirect call threaded code
US7392245B1 (en)*1999-07-302008-06-24International Business Machines CorporationDirect call threaded code
US7974968B2 (en)1999-07-302011-07-05International Business Machines CorporationDirect call threaded code
US6880152B1 (en)*1999-10-132005-04-12Transmeta CorporationMethod of determining a mode of code generation
US7331041B1 (en)*1999-10-132008-02-12Transmeta CorporationMethod of changing modes of code generation
US8464235B2 (en)*1999-11-302013-06-11Stmicroelectronics Ltd.Adaptive production of assembler
US20100115498A1 (en)*1999-11-302010-05-06Stmicroelectronics LimitedAdaptive production of assembler
US7644210B1 (en)*2000-06-192010-01-05John BanningMethod and system for storing and retrieving a translation of target program instruction from a host processor using fast look-up of indirect branch destination in a dynamic translation system
US6868434B1 (en)*2000-08-072005-03-15Sun Microsystems, Inc.System and method for testing server latencies using multiple concurrent users in a computer system
US7124407B1 (en)*2000-08-162006-10-17Sun Microsystems, Inc.Method and apparatus for caching native code in a virtual machine interpreter
US7251594B2 (en)*2001-12-212007-07-31Hitachi, Ltd.Execution time modification of instruction emulation parameters
US20030130834A1 (en)*2001-12-212003-07-10Hitachi, Ltd.Execution time modification of instruction emulation parameters
US10642730B2 (en)2002-03-202020-05-05Citrix Systems International GmbhSecure garbage collection on a mobile device
US9558113B2 (en)*2002-03-202017-01-31Citrix Systems International GmbhSecure garbage collection on a mobile device
US9311237B2 (en)*2002-03-202016-04-12Citrix Systems International GmbhSystem and method of secure garbage collection on a mobile device
US20150234743A1 (en)*2002-03-202015-08-20Blackberry LimitedSystem and Method of Secure Garbage Collection on a Mobile Device
US10210081B2 (en)2002-03-202019-02-19Citrix Systems International GmbhSecure garbage collection on a mobile device
US8973148B2 (en)*2002-03-202015-03-03Blackberry LimitedSystem and method of secure garbage collection on a mobile device
US20160203076A1 (en)*2002-03-202016-07-14Citrix Systems International GmbhSecure Garbage Collection on a Mobile Device
US20120290809A1 (en)*2002-03-202012-11-15Research In Motion LimitedSystem and Method of Secure Garbage Collection on a Mobile Device
US8086438B2 (en)*2002-03-272011-12-27Synopsys, Inc.Method and system for instruction-set architecture simulation using just in time compilation
US20120158397A1 (en)*2002-03-272012-06-21Synopsys, Inc.Instruction-set architecture simulation techniques using just in time compilation
US20030217248A1 (en)*2002-03-272003-11-20Achim NohlMethod and system for instruction-set architecture simulation using just in time compilation
US8554535B2 (en)*2002-03-272013-10-08Synopsys, Inc.Instruction-set architecture simulation techniques using just in time compilation
US20050229232A1 (en)*2002-06-272005-10-13Thomson Licensing S.A.Data processing device and method for interactive television
US20040044990A1 (en)*2002-08-282004-03-04Honeywell International Inc.Model-based composable code generation
US7219328B2 (en)*2002-08-282007-05-15Honeywell International Inc.Model-based composable code generation
US7953588B2 (en)2002-09-172011-05-31International Business Machines CorporationMethod and system for efficient emulation of multiprocessor address translation on a multiprocessor host
US9043194B2 (en)2002-09-172015-05-26International Business Machines CorporationMethod and system for efficient emulation of multiprocessor memory consistency
US20040078186A1 (en)*2002-09-172004-04-22International Business Machines CorporationMethod and system for efficient emulation of multiprocessor memory consistency
US8108843B2 (en)*2002-09-172012-01-31International Business Machines CorporationHybrid mechanism for more efficient emulation and method therefor
US20090157377A1 (en)*2002-09-172009-06-18International Business Machines CorporationMethod and system for multiprocessor emulation on a multiprocessor host system
US7496494B2 (en)2002-09-172009-02-24International Business Machines CorporationMethod and system for multiprocessor emulation on a multiprocessor host system
US7146607B2 (en)*2002-09-172006-12-05International Business Machines CorporationMethod and system for transparent dynamic optimization in a multiprocessing environment
US8578351B2 (en)2002-09-172013-11-05International Business Machines CorporationHybrid mechanism for more efficient emulation and method therefor
US20040054992A1 (en)*2002-09-172004-03-18International Business Machines CorporationMethod and system for transparent dynamic optimization in a multiprocessing environment
US7844446B2 (en)2002-09-172010-11-30International Business Machines CorporationMethod and system for multiprocessor emulation on a multiprocessor host system
US20040054517A1 (en)*2002-09-172004-03-18International Business Machines CorporationMethod and system for multiprocessor emulation on a multiprocessor host system
US20040054518A1 (en)*2002-09-172004-03-18International Business Machines CorporationMethod and system for efficient emulation of multiprocessor address translation on a multiprocessor host
US20040054993A1 (en)*2002-09-172004-03-18International Business Machines CorporationHybrid mechanism for more efficient emulation and method therefor
US6775810B2 (en)*2002-10-082004-08-10Sun Microsystems, Inc.Boosting simulation performance by dynamically customizing segmented object codes based on stimulus coverage
US20040068701A1 (en)*2002-10-082004-04-08Chang Victor A.Boosting simulation performance by dynamically customizing segmented object codes based on stimulus coverage
US20040078785A1 (en)*2002-10-222004-04-22Bala DuttSystem and method for marking software code
US7603664B2 (en)*2002-10-222009-10-13Sun Microsystems, Inc.System and method for marking software code
US20040095348A1 (en)*2002-11-192004-05-20Bleiweiss Avi I.Shading language interface and method
US7143025B2 (en)2002-12-132006-11-28Sun Microsystems, Inc.Web simulator
US7533012B2 (en)2002-12-132009-05-12Sun Microsystems, Inc.Multi-user web simulator
US20040117460A1 (en)*2002-12-132004-06-17Walsh Robert E.Multi-user web simulator
US20040117170A1 (en)*2002-12-132004-06-17Walsh Robert E.Web simulator
US7188062B1 (en)*2002-12-272007-03-06Unisys CorporationConfiguration management for an emulator operating system
US7958499B2 (en)2003-05-282011-06-07Panasonic CorporationProgram execution control device, program execution control method, control program, and recording medium
US20070226714A1 (en)*2003-05-282007-09-27Shigenori DoiProgram execution control device, program execution control method, control program, and recording medium
US20050166192A1 (en)*2003-11-062005-07-28Polcha Michael P.Run time compiler system and method
US20100262636A1 (en)*2004-01-052010-10-14International Business Machines CorporationGarbage collector with eager read barrier
US7984083B2 (en)*2004-01-052011-07-19International Business Machines CorporationGarbage collector with eager read barrier
US20050154573A1 (en)*2004-01-082005-07-14Maly John W.Systems and methods for initializing a lockstep mode test case simulation of a multi-core processor design
US9383977B1 (en)2004-03-302016-07-05Synopsys, Inc.Generation of compiler description from architecture description
US8689202B1 (en)2004-03-302014-04-01Synopsys, Inc.Scheduling of instructions
US20090007086A1 (en)*2004-05-252009-01-01Motohiro KawahitoCompiler Optimization
US9280326B1 (en)2004-05-262016-03-08Synopsys, Inc.Compiler retargeting based on instruction semantic models
US20060037005A1 (en)*2004-08-152006-02-16Russell Paul FMethod and apparatus for increasing computer security
US20060070042A1 (en)*2004-09-242006-03-30Muratori Richard DAutomatic clocking in shared-memory co-simulation
US20060195732A1 (en)*2005-02-112006-08-31Joerg DeutschleMethod and system for executing test cases for a device under verification
US20060224600A1 (en)*2005-04-012006-10-05Ronen GrosmanTraversal of empty regions in a searchable data structure
US7565217B2 (en)*2005-04-012009-07-21International Business Machines CorporationTraversal of empty regions in a searchable data structure
US7827542B2 (en)*2005-09-282010-11-02Panasonic CorporationCompiler apparatus
US20070074196A1 (en)*2005-09-282007-03-29Matsushita Electric Industrial Co., Ltd.Compiler apparatus
US8429625B2 (en)*2005-12-192013-04-23Dxo LabsDigital data processing method and system
US20090228677A1 (en)*2005-12-192009-09-10Dxo LabsDigital data processing method and system
US8615743B2 (en)*2006-02-272013-12-24Microsoft CorporationAdaptive compiled code
US20070240120A1 (en)*2006-02-272007-10-11Miller James SAdaptive Compiled Code
US20070226717A1 (en)*2006-03-092007-09-27Sun Microsystems, Inc.Code transformation to optimize fragments that implement constant loading
US7873952B2 (en)*2006-03-092011-01-18Oracle America, Inc.Code transformation to optimize fragments that implement constant loading
US8407386B2 (en)*2006-03-292013-03-26Intel CorporationIncreasing functionality of a reader-writer lock
US7904894B2 (en)*2006-03-292011-03-08Microsoft CorporationAutomatically optimize performance of package execution
US20120089760A1 (en)*2006-03-292012-04-12Bratin SahaIncreasing Functionality Of A Reader-Writer Lock
US20070234240A1 (en)*2006-03-292007-10-04Microsoft CorporationAutomatically optimize performance of package execution
US8775708B2 (en)2006-03-292014-07-08Intel CorporationIncreasing functionality of a reader-writer lock
US8141067B2 (en)*2006-04-052012-03-20International Business Machines CorporationEnsuring maximum code motion of accesses to DMA buffers
US20070240142A1 (en)*2006-04-052007-10-11Brokenshire Daniel AApparatus and method for ensuring maximum code motion of accesses to dma buffers
US7870544B2 (en)*2006-04-052011-01-11International Business Machines CorporationInsuring maximum code motion of accesses to DMA buffers
US20080229295A1 (en)*2006-04-052008-09-18International Business Machines CorporationEnsuring Maximum Code Motion of Accesses to DMA Buffers
US9658849B2 (en)*2006-07-062017-05-23Imperas Software Ltd.Processor simulation environment
US20100017183A1 (en)*2006-07-062010-01-21Imperas Ltd.Multiprocessor Development Environment
US8417508B2 (en)*2006-07-062013-04-09Imperas Software Ltd.Multiprocessor development environment
US20130173887A1 (en)*2006-07-062013-07-04Imperas Software Ltd.Processor simulation environment
US8296750B2 (en)2006-10-112012-10-23International Business Machines CorporationOptimization of a target program
US20080091926A1 (en)*2006-10-112008-04-17Motohiro KawahitoOptimization of a target program
US7739256B2 (en)*2006-12-072010-06-15Norman PowellMethod for selling custom business software and software exchange marketplace
US20080140537A1 (en)*2006-12-072008-06-12Norman PowellMethod for selling custom business software and software exchange marketplace
US8214813B2 (en)2007-01-122012-07-03Microsoft CorporationCode optimization across interfaces
US20080263527A1 (en)*2007-04-182008-10-23Sony Computer Entertainment Inc.Processor emulation using speculative forward translation
US8621443B2 (en)*2007-04-182013-12-31Sony Computer Entertainment Inc.Processor emulation using speculative forward translation
US20120284011A1 (en)*2007-04-182012-11-08Sony Computer Entertainment Inc.Processor emulation using speculative forward translation
US8245202B2 (en)*2007-04-182012-08-14Sony Computer Entertainment Inc.Processor emulation using speculative forward translation
US20090113403A1 (en)*2007-09-272009-04-30Microsoft CorporationReplacing no operations with auxiliary code
US20090125887A1 (en)*2007-11-142009-05-14Nec Laboratories America, Inc.System and method for generating error traces for concurrency bugs
US8527976B2 (en)*2007-11-142013-09-03Nec Laboratories America, Inc.System and method for generating error traces for concurrency bugs
US8453129B2 (en)*2008-04-242013-05-28International Business Machines CorporationUsing hardware interrupts to drive dynamic binary code recompilation
US20090271772A1 (en)*2008-04-242009-10-29International Business Machines CorporationUsing hardware interrupts to drive dynamic binary code recompilation
US8281296B2 (en)*2008-08-122012-10-02Oracle America, Inc.Cross-ISA inlining in a system virtual machine
US20100042983A1 (en)*2008-08-122010-02-18Sun Microsystems, Inc.Cross-isa inlining in a system virtual machine
US8689197B2 (en)*2008-10-032014-04-01Icera, Inc.Instruction cache
US20100088688A1 (en)*2008-10-032010-04-08Icera Inc.Instruction cache
US20100125554A1 (en)*2008-11-182010-05-20Unisys CorporationMemory Recovery Across Reboots of an Emulated Operating System
US20100174853A1 (en)*2009-01-082010-07-08Samsung Electronics Co., Ltd.User device including flash and random write cache and method writing data
US8677329B2 (en)*2009-06-032014-03-18Apple Inc.Methods and apparatuses for a compiler server
US20100313079A1 (en)*2009-06-032010-12-09Robert BerettaMethods and apparatuses for a compiler server
US9946873B2 (en)2009-06-032018-04-17Apple Inc.Methods and apparatuses for secure compilation
US9880819B2 (en)2009-06-032018-01-30Apple Inc.Methods and apparatuses for a compiler server
US20110016459A1 (en)*2009-07-142011-01-20Robert Joseph MeyersSystems, methods, and computer programs for dynamic binary translation in an interpreter
US8527969B2 (en)*2009-07-142013-09-03Unisys CorporationSystems, methods, and computer programs for dynamic binary translation in an interpreter
US20110145551A1 (en)*2009-12-162011-06-16Cheng WangTwo-stage commit (tsc) region for dynamic binary optimization in x86
US8418156B2 (en)*2009-12-162013-04-09Intel CorporationTwo-stage commit (TSC) region for dynamic binary optimization in X86
US9767271B2 (en)2010-07-152017-09-19The Research Foundation For The State University Of New YorkSystem and method for validating program execution at run-time
US20120124555A1 (en)*2010-11-112012-05-17Codekko Software, Inc.Optimization of Compiled Control Objects
US20120198458A1 (en)*2010-12-162012-08-02Advanced Micro Devices, Inc.Methods and Systems for Synchronous Operation of a Processing Device
US20120185833A1 (en)*2011-01-182012-07-19Hyeong-Seok OhCode generator and method for generating extra code for a virtual machine
US9792132B2 (en)*2011-01-182017-10-17Samsung Electronics Co., Ltd.Code generator and method for generating extra code for a virtual machine
US9495136B2 (en)*2011-01-282016-11-15International Business Machines CorporationUsing aliasing information for dynamic binary optimization
US20120198428A1 (en)*2011-01-282012-08-02International Business Machines CorporationUsing Aliasing Information for Dynamic Binary Optimization
WO2012143760A1 (en)*2011-04-202012-10-26Freescale Semiconductor, Inc.Method and apparatus for generating resource efficient computer program code
CN103562870A (en)*2011-05-112014-02-05超威半导体公司Automatic load balancing for heterogeneous cores
US8782645B2 (en)*2011-05-112014-07-15Advanced Micro Devices, Inc.Automatic load balancing for heterogeneous cores
US20120291040A1 (en)*2011-05-112012-11-15Mauricio BreternitzAutomatic load balancing for heterogeneous cores
US8762973B2 (en)*2011-09-132014-06-24Fujitsu LimitedInformation processing apparatus, method of controlling information processing apparatus, and program for executing intermediate code instructions
US20130067442A1 (en)*2011-09-132013-03-14Fujitsu LimitedInformation processing apparatus, method of controlling information processing apparatus, and program for executing intermediate code instructions
US8600727B2 (en)*2011-10-112013-12-03Unisys CorporationStreamlined execution of emulated code using block-based translation mode
US20130090913A1 (en)*2011-10-112013-04-11David StrongStreamlined execution of emulated code using block-based translation mode
JP2018014142A (en)*2011-12-232018-01-25ザ アリゾナ ボード オブ リージェンツ オン ビハーフ オブ ザ ユニバーシティー オブ アリゾナ Method of micro specialization in database management system
US10365900B2 (en)2011-12-232019-07-30Dataware Ventures, LlcBroadening field specialization
US8555392B2 (en)2012-02-242013-10-08Kaspersky Lab ZaoSystem and method for detecting unknown packers and cryptors
US20130346952A1 (en)*2012-06-262013-12-26Marvell World Trade Ltd.Method and apparatus for code performance analysis
US9098308B2 (en)*2012-06-262015-08-04Marvell World Trade Ltd.Method and apparatus for code performance analysis based on execution trace information
US20140067886A1 (en)*2012-09-042014-03-06Fujitsu LimitedInformation processing apparatus, method of outputting log, and recording medium
US9767284B2 (en)2012-09-142017-09-19The Research Foundation For The State University Of New YorkContinuous run-time validation of program execution: a practical approach
US9552495B2 (en)2012-10-012017-01-24The Research Foundation For The State University Of New YorkSystem and method for security and privacy aware virtual machine checkpointing
US10324795B2 (en)2012-10-012019-06-18The Research Foundation for the State University oSystem and method for security and privacy aware virtual machine checkpointing
US9069782B2 (en)2012-10-012015-06-30The Research Foundation For The State University Of New YorkSystem and method for security and privacy aware virtual machine checkpointing
US9117017B2 (en)*2013-02-112015-08-25International Business Machines CorporationDebugger with previous version feature
US20140229916A1 (en)*2013-02-112014-08-14International Business Machines CorporationDebugger with previous version feature
US9047403B2 (en)*2013-02-112015-06-02International Business Machines CorporationDebugger with previous version feature
US20140229915A1 (en)*2013-02-112014-08-14International Business Machines CorporationDebugger with previous version feature
US20150113251A1 (en)*2013-10-182015-04-23Marvell World Trade Ltd.Systems and Methods for Register Allocation
WO2015056098A3 (en)*2013-10-182015-08-13Marvell World Trade Ltd.Systems and methods for register allocation
US9690584B2 (en)*2013-10-182017-06-27Marvell World Trade Ltd.Systems and methods for register allocation
US20150113513A1 (en)*2013-10-182015-04-23Microsoft CorporationIncrementally compiling software artifacts from an interactive development environment
CN105637474A (en)*2013-10-182016-06-01马维尔国际贸易有限公司Systems and methods for register allocation
EP3058456A4 (en)*2013-10-182018-01-24Marvell World Trade Ltd.Systems and methods for register allocation
US9600256B2 (en)*2013-10-182017-03-21Microsoft Technology Licensing, LlcIncrementally compiling software artifacts from an interactive development environment
US10554777B1 (en)2014-01-212020-02-04Shape Security, Inc.Caching for re-coding techniques
US20150269052A1 (en)*2014-03-212015-09-24Marvell World Trade LtdMethod and apparatus for supporting performance analysis
US9558096B2 (en)*2014-03-212017-01-31Marvell World Trade Ltd.Method and apparatus for supporting performance analysis
US20210144380A1 (en)*2014-12-082021-05-13Harmonic, Inc.Dynamic allocation of virtual and/or physical resources vis-a-vis virtual machines in video stream processing
US11601650B2 (en)*2014-12-082023-03-07Harmonic, Inc.Dynamic allocation of virtual and/or physical resources vis-a-vis virtual machines in video stream processing
US10897616B2 (en)*2014-12-082021-01-19Harmonic, Inc.Dynamic allocation of CPU cycles vis-a-vis virtual machines in video stream processing
US10733099B2 (en)2015-12-142020-08-04Arizona Board Of Regents On Behalf Of The University Of ArizonaBroadening field specialization
US20200012503A1 (en)*2017-04-262020-01-09International Business Machines CorporationRecursive stack-based serialization of hierarchical data
US10901755B2 (en)*2017-04-262021-01-26International Business Machines CorporationRecursive stack-based serialization of hierarchical data
US12045653B2 (en)2017-06-222024-07-23Dataware Ventures, LlcField specialization to reduce memory-access stalls and allocation requests in data-intensive applications
US10635595B2 (en)2017-07-282020-04-28Citrix Systems, Inc.Dynamic delete command partitioning with disk caching
US10491524B2 (en)2017-11-072019-11-26Advanced Micro Devices, Inc.Load balancing scheme
US11455153B2 (en)*2019-03-182022-09-27Advanced Micro Devices, Inc.Dynamic instances semantics
US11550600B2 (en)2019-11-072023-01-10Intel CorporationSystem and method for adapting executable object to a processing unit
US11216257B1 (en)*2020-07-022022-01-04Intrado CorporationAutomated conference sessions generated to manage application development
US11677574B1 (en)2020-07-022023-06-13Intrado CorporationAutomated conference sessions generated to manage application development
US20230305992A1 (en)*2022-03-252023-09-28Nokia Solutions And Networks OyProcessor using target instructions

Also Published As

Publication numberPublication date
JP2000132408A (en)2000-05-12
DE19945992A1 (en)2000-05-04
CN1308818C (en)2007-04-04
JP3553834B2 (en)2004-08-11
CN1270348A (en)2000-10-18
US6463582B1 (en)2002-10-08
DE19945992B4 (en)2004-12-09

Similar Documents

PublicationPublication DateTitle
US6463582B1 (en)Dynamic optimizing object code translator for architecture emulation and dynamic optimizing object code translation method
US7058929B2 (en)Direct invocation of methods using class loader
Fitzgerald et al.Marmot: An optimizing compiler for Java
HolzleAdaptive optimization for SELF: reconciling high performance with exploratory programming
US7725883B1 (en)Program interpreter
US6199095B1 (en)System and method for achieving object method transparency in a multi-code execution environment
US6093216A (en)Method of run-time tracking of object references in Java programs
US7036118B1 (en)System for executing computer programs on a limited-memory computing machine
AU2891600A (en)Method and apparatus for building a calling convention prolog and epilog code using a register allocator
TarditiDesign and Implementation of Code Optimizations for a Type-Directed Compiler for Standard ML.
US7200841B2 (en)Method and apparatus for performing lazy byteswapping optimizations during program code conversion
Brandis et al.The Oberon system family
GallagherMemory disambiguation to facilitate instruction-level parallelism compilation
WallExperience with a software-defined machine architecture
Adl-TabatabaiSource-level debugging of globally optimized code
NystromBytecode level analysis and optimization of Java classes
Chambers et al.Iterative type analysis and extended message splitting: Optimizing dynamically-typed object-oriented programs
BurgerEfficient compilation and profile-driven dynamic recompilation in scheme
Padlewski et al.Modeling the Invariance of Virtual Pointers in LLVM
KeppelRuntime code generation
PrabhuJust in time compilation for high performance computing
Erhardt et al.A Control-Flow-Sensitive Analysis and Optimization Framework for the KESO Multi-JVM
Cooper et al.Compiler-Based Code-Improvement Techniques
McConnell et al.The RTL system
KalogeropulosIdentifying the available parallelism using static analysis

[8]ページ先頭

©2009-2025 Movatter.jp