Compiler allocating a register to a data item used between a use and store of another data item previously allocated to the register

A compiler includes a register allocation method making use of the concept of assigning temporary items to lifetime holes if such holes exist that are suitable. The compiler includes a front end for converting the input code to an intermediate representation, then this input representation is traver...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: NOYCE, WILLIAM B, HARRIS, KEVIN W, HOBBS, STEVEN O, BURMEISTER, CURT K
Format: Patent
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page
container_issue
container_start_page
container_title
container_volume
creator NOYCE
WILLIAM B
HARRIS
KEVIN W
HOBBS
STEVEN O
BURMEISTER
CURT K
description A compiler includes a register allocation method making use of the concept of assigning temporary items to lifetime holes if such holes exist that are suitable. The compiler includes a front end for converting the input code to an intermediate representation, then this input representation is traversed to identify all of the temporary items, and to find all of the holes in the temporary items. Lists are maintained of the identified temporaries and holes. Register allocation then includes assigning temporaries to registers so long as there are free registers, and if holes are available in already-assigned temporaries then these holes are used in assigning registers. After all the available registers and holes are used, remaining temporaries are unallocated and thus represent memory references.
format Patent
fullrecord <record><control><sourceid>epo_EVB</sourceid><recordid>TN_cdi_epo_espacenet_US5339428A</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>US5339428A</sourcerecordid><originalsourceid>FETCH-epo_espacenet_US5339428A3</originalsourceid><addsrcrecordid>eNqFjTkOwkAMRdNQIOAM-AI0BCQoUQSiB-rIJD8w0mQczTggeg6OC5aSynr-2zB7FtJ2ziMSey8VqwsXYoq4uKT2VTGqWZmcoqU-oaYz9A4EEwyJQ01JJYKkMRC9WuyX6CJuTvrkH58Fa7BWs31XxtmgYZ8wed9RNt1tj8V-hk5KpI4rBGh5OizzfL2Yrzb5f8cL8GFJkQ</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>patent</recordtype></control><display><type>patent</type><title>Compiler allocating a register to a data item used between a use and store of another data item previously allocated to the register</title><source>esp@cenet</source><creator>NOYCE; WILLIAM B ; HARRIS; KEVIN W ; HOBBS; STEVEN O ; BURMEISTER; CURT K</creator><creatorcontrib>NOYCE; WILLIAM B ; HARRIS; KEVIN W ; HOBBS; STEVEN O ; BURMEISTER; CURT K</creatorcontrib><description>A compiler includes a register allocation method making use of the concept of assigning temporary items to lifetime holes if such holes exist that are suitable. The compiler includes a front end for converting the input code to an intermediate representation, then this input representation is traversed to identify all of the temporary items, and to find all of the holes in the temporary items. Lists are maintained of the identified temporaries and holes. Register allocation then includes assigning temporaries to registers so long as there are free registers, and if holes are available in already-assigned temporaries then these holes are used in assigning registers. After all the available registers and holes are used, remaining temporaries are unallocated and thus represent memory references.</description><edition>5</edition><language>eng</language><subject>ADVERTISING ; ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICESUSING STATIC MEANS TO PRESENT VARIABLE INFORMATION ; CALCULATING ; COMPUTING ; COUNTING ; CRYPTOGRAPHY ; DISPLAY ; EDUCATION ; ELECTRIC DIGITAL DATA PROCESSING ; PHYSICS ; SEALS</subject><creationdate>1994</creationdate><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://worldwide.espacenet.com/publicationDetails/biblio?FT=D&amp;date=19940816&amp;DB=EPODOC&amp;CC=US&amp;NR=5339428A$$EHTML$$P50$$Gepo$$Hfree_for_read</linktohtml><link.rule.ids>230,308,776,881,25542,76289</link.rule.ids><linktorsrc>$$Uhttps://worldwide.espacenet.com/publicationDetails/biblio?FT=D&amp;date=19940816&amp;DB=EPODOC&amp;CC=US&amp;NR=5339428A$$EView_record_in_European_Patent_Office$$FView_record_in_$$GEuropean_Patent_Office$$Hfree_for_read</linktorsrc></links><search><creatorcontrib>NOYCE; WILLIAM B</creatorcontrib><creatorcontrib>HARRIS; KEVIN W</creatorcontrib><creatorcontrib>HOBBS; STEVEN O</creatorcontrib><creatorcontrib>BURMEISTER; CURT K</creatorcontrib><title>Compiler allocating a register to a data item used between a use and store of another data item previously allocated to the register</title><description>A compiler includes a register allocation method making use of the concept of assigning temporary items to lifetime holes if such holes exist that are suitable. The compiler includes a front end for converting the input code to an intermediate representation, then this input representation is traversed to identify all of the temporary items, and to find all of the holes in the temporary items. Lists are maintained of the identified temporaries and holes. Register allocation then includes assigning temporaries to registers so long as there are free registers, and if holes are available in already-assigned temporaries then these holes are used in assigning registers. After all the available registers and holes are used, remaining temporaries are unallocated and thus represent memory references.</description><subject>ADVERTISING</subject><subject>ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICESUSING STATIC MEANS TO PRESENT VARIABLE INFORMATION</subject><subject>CALCULATING</subject><subject>COMPUTING</subject><subject>COUNTING</subject><subject>CRYPTOGRAPHY</subject><subject>DISPLAY</subject><subject>EDUCATION</subject><subject>ELECTRIC DIGITAL DATA PROCESSING</subject><subject>PHYSICS</subject><subject>SEALS</subject><fulltext>true</fulltext><rsrctype>patent</rsrctype><creationdate>1994</creationdate><recordtype>patent</recordtype><sourceid>EVB</sourceid><recordid>eNqFjTkOwkAMRdNQIOAM-AI0BCQoUQSiB-rIJD8w0mQczTggeg6OC5aSynr-2zB7FtJ2ziMSey8VqwsXYoq4uKT2VTGqWZmcoqU-oaYz9A4EEwyJQ01JJYKkMRC9WuyX6CJuTvrkH58Fa7BWs31XxtmgYZ8wed9RNt1tj8V-hk5KpI4rBGh5OizzfL2Yrzb5f8cL8GFJkQ</recordid><startdate>19940816</startdate><enddate>19940816</enddate><creator>NOYCE; WILLIAM B</creator><creator>HARRIS; KEVIN W</creator><creator>HOBBS; STEVEN O</creator><creator>BURMEISTER; CURT K</creator><scope>EVB</scope></search><sort><creationdate>19940816</creationdate><title>Compiler allocating a register to a data item used between a use and store of another data item previously allocated to the register</title><author>NOYCE; WILLIAM B ; HARRIS; KEVIN W ; HOBBS; STEVEN O ; BURMEISTER; CURT K</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-epo_espacenet_US5339428A3</frbrgroupid><rsrctype>patents</rsrctype><prefilter>patents</prefilter><language>eng</language><creationdate>1994</creationdate><topic>ADVERTISING</topic><topic>ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICESUSING STATIC MEANS TO PRESENT VARIABLE INFORMATION</topic><topic>CALCULATING</topic><topic>COMPUTING</topic><topic>COUNTING</topic><topic>CRYPTOGRAPHY</topic><topic>DISPLAY</topic><topic>EDUCATION</topic><topic>ELECTRIC DIGITAL DATA PROCESSING</topic><topic>PHYSICS</topic><topic>SEALS</topic><toplevel>online_resources</toplevel><creatorcontrib>NOYCE; WILLIAM B</creatorcontrib><creatorcontrib>HARRIS; KEVIN W</creatorcontrib><creatorcontrib>HOBBS; STEVEN O</creatorcontrib><creatorcontrib>BURMEISTER; CURT K</creatorcontrib><collection>esp@cenet</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>NOYCE; WILLIAM B</au><au>HARRIS; KEVIN W</au><au>HOBBS; STEVEN O</au><au>BURMEISTER; CURT K</au><format>patent</format><genre>patent</genre><ristype>GEN</ristype><title>Compiler allocating a register to a data item used between a use and store of another data item previously allocated to the register</title><date>1994-08-16</date><risdate>1994</risdate><abstract>A compiler includes a register allocation method making use of the concept of assigning temporary items to lifetime holes if such holes exist that are suitable. The compiler includes a front end for converting the input code to an intermediate representation, then this input representation is traversed to identify all of the temporary items, and to find all of the holes in the temporary items. Lists are maintained of the identified temporaries and holes. Register allocation then includes assigning temporaries to registers so long as there are free registers, and if holes are available in already-assigned temporaries then these holes are used in assigning registers. After all the available registers and holes are used, remaining temporaries are unallocated and thus represent memory references.</abstract><edition>5</edition><oa>free_for_read</oa></addata></record>
fulltext fulltext_linktorsrc
identifier
ispartof
issn
language eng
recordid cdi_epo_espacenet_US5339428A
source esp@cenet
subjects ADVERTISING
ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICESUSING STATIC MEANS TO PRESENT VARIABLE INFORMATION
CALCULATING
COMPUTING
COUNTING
CRYPTOGRAPHY
DISPLAY
EDUCATION
ELECTRIC DIGITAL DATA PROCESSING
PHYSICS
SEALS
title Compiler allocating a register to a data item used between a use and store of another data item previously allocated to the register
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-05T15%3A45%3A16IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-epo_EVB&rft_val_fmt=info:ofi/fmt:kev:mtx:patent&rft.genre=patent&rft.au=NOYCE;%20WILLIAM%20B&rft.date=1994-08-16&rft_id=info:doi/&rft_dat=%3Cepo_EVB%3EUS5339428A%3C/epo_EVB%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true