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:
Mar. 07, 2023

Filed:

Apr. 22, 2022
Applicant:

Microsoft Technology Licensing, Llc., Redmond, WA (US);

Inventors:

Todd Edward Sharpe, Redmond, WA (US);

Ten Tzen, Sammamish, WA (US);

Assignee:
Attorney:
Primary Examiner:
Assistant Examiner:
Int. Cl.
CPC ...
G06F 12/1009 (2016.01); G06F 12/02 (2006.01); G06F 8/41 (2018.01);
U.S. Cl.
CPC ...
G06F 12/1009 (2013.01); G06F 8/41 (2013.01); G06F 8/443 (2013.01); G06F 12/0223 (2013.01); G06F 2212/65 (2013.01); G06F 2212/7201 (2013.01);
Abstract

In order to reduce the number of instructions that the compiler generates to load the address of a global variable into a register, the compiler uses a technique that analyzes the global variables used in each function in order to estimate which global variables will be located within the same memory page and have a common base address. A base global variable is selected for each function whose address is fully resolved. The address of each subsequent global variable is constructed using an offset relative to the address of the base global variable that is based on the subsequent global variable's position in a global variable order list.


Find Patent Forward Citations

Loading…