The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.

The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.

Date of Patent:
Jan. 24, 2017

Filed:

Mar. 08, 2013
Applicant:

Facebook, Inc., Menlo Park, CA (US);

Inventors:

Ali-Reza Adl-Tabatabai, San Jose, CA (US);

Guilherme de Lima Ottoni, Campbell, CA (US);

Assignee:

Facebook, Inc., Menlo Park, CA (US);

Attorney:
Primary Examiner:
Assistant Examiner:
Int. Cl.
CPC ...
G06F 9/45 (2006.01); G06F 11/36 (2006.01); G06F 9/44 (2006.01);
U.S. Cl.
CPC ...
G06F 8/443 (2013.01); G06F 8/48 (2013.01); G06F 8/36 (2013.01); G06F 8/447 (2013.01); G06F 11/3612 (2013.01); G06F 2201/865 (2013.01);
Abstract

Disclosed here are methods, systems, paradigms and structures for incrementally compiling scripts at runtime to generate executable code. The incremental compilation generates executable code corresponding to basic blocks of a script in various phases and at various scopes. In a first phase, an executable code for a basic block of the script is generated for a set of types of variables of the basic block. The generated executable block is stored and executed for subsequent requests. In a second phase, a set of executable blocks whose profiling information, such as frequency of (a) execution, (b) transition between two executable blocks, or (c) execution of a particular path, satisfies an optimization criterion is identified. The identified set of executable blocks are combined to generate an executable control region, which is more optimal than the executable blocks generated in the first phase. The executable control region is executed for subsequent requests.


Find Patent Forward Citations

Loading…