Profile guided jit code generation

A source code and generator technology, used in code compilation, program code conversion, instrumentation, etc., to solve problems such as inefficient execution and not taking full advantage of the flexibility of the JavaScript language

Active Publication Date: 2013-04-24
MICROSOFT TECH LICENSING LLC
View PDF2 Cites 22 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

Furthermore, most code that is actually written in JavaScript does not take full advantage of the flexibility of the JavaScript language
However, the machine code generated by the JavaScript compiler is generated to correctly handle the large number of possibilities at runtime, which leads to inefficient execution

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Profile guided jit code generation
  • Profile guided jit code generation
  • Profile guided jit code generation

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0031] I. Introduction

[0032] This specification discloses one or more embodiments that incorporate the features of this invention. The disclosed embodiments are merely illustrative of the invention. The scope of the invention is not limited to the disclosed embodiments. The invention is defined by the appended claims.

[0033] References in the specification to "one embodiment," "an embodiment," "example embodiment" and the like mean that the described embodiment may include a particular feature, structure, or characteristic, but that each embodiment may not necessarily include the particular feature. , structure, or feature. Moreover, these phrases are not necessarily referring to the same embodiment. Furthermore, when a particular feature, structure or characteristic is described with respect to one embodiment, it is considered to be within the purview of those skilled in the art to implement that feature, structure or characteristic with respect to other embodiments ...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

Methods, systems, and computer program products are provided for profiling source code to enable improved source code execution. A runtime engine includes a parser, a bytecode generator, an execution controller, an interpreter, a just-in-time (JIT) compiler, and a profile generator. The parser receives source code coded in a dynamic language and parses the source code to generate parsed source code. The bytecode generator converts the parsed source code to bytecode. The interpreter is configured to interpret the bytecode when enabled by the execution controller. The JIT compiler is configured to compile the bytecode when enabled by the execution controller. The profile generator generates profile information from the bytecode and stores the profile information. The execution controller enables the interpreter or the JIT compiler to perform their respective functions based on the profile information.

Description

technical field [0001] This application relates to JIT code generation, and more particularly to profile-oriented JIT code generation. Background technique [0002] Many types of programming languages ​​exist. One form of programming language is a scripting language. A scripting language is a programming language that enables control of one or more applications. A "script" or a program generated according to a scripting language may be written in the same language as that of the associated application or in a different language. While applications are usually first compiled to native machine code, scripts are often interpreted from source code. [0003] Another form of programming language is a dynamic programming language. A dynamic programming language is a programming language that performs some behavior during runtime that other (not dynamic) programming languages ​​can perform during compile time. Such actions may include extending the program by adding new code, e...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
Patent Type & Authority Applications(China)
IPC IPC(8): G06F9/45
CPCG06F8/00G06F9/4552G06F11/36G06F8/41G06F11/3612
Inventor L·拉弗雷尼尔C·曼J·米亚多维茨P·莱瑟斯J·库马尔A·比亚尼基
Owner MICROSOFT TECH LICENSING LLC
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products