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:
Oct. 06, 2015

Filed:

Nov. 17, 2014
Applicant:

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

Inventors:

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

Brett Hain Simmers, Mountain View, CA (US);

Bertrand Allen Maher, Newark, CA (US);

Edwin Thur Gideon Smith, Newton, MA (US);

Assignee:

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

Attorney:
Primary Examiner:
Int. Cl.
CPC ...
G06F 9/45 (2006.01); G06F 9/455 (2006.01); G06F 9/32 (2006.01); G06F 12/02 (2006.01);
U.S. Cl.
CPC ...
G06F 8/443 (2013.01); G06F 8/52 (2013.01); G06F 9/321 (2013.01); G06F 9/45525 (2013.01); G06F 12/0261 (2013.01);
Abstract

The disclosure is related to optimizing generation of intermediate representation (IR) for a script code by eliminating redundant reference count code from the IR. The reference count code includes code that manages a reference count of an object, e.g., code that increments a reference count of the object ('incref code') and an observer code which consumes or the execution of which depends on the reference count of the object. The IR is analyzed to identify redundant reference count code. Counters associated with the object are evaluated and upon satisfying the optimization criterion, the incref code is moved closer to the observer code. The incref code and the observer code that are adjacent to each other are identified as redundant code pair and the code pair is eliminated from the IR to generate an optimized IR. The optimized IR is further converted to an executable code.


Find Patent Forward Citations

Loading…