Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8920329
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 15, 20262026-06-15T06:14:31+00:00 2026-06-15T06:14:31+00:00

I am looking into a topic on register allocation in compilers. A widely used

  • 0

I am looking into a topic on register allocation in compilers. A widely used algorithm for register allocation is iterative graph coloring by simplification. In the book Modern Compiler Implementation in Java by Andrew W. Appel, chapter 11 on register allocation states:

Each node in the interference graph represents a temporary value.

[…]

Some temporaries are precolored – they represent machine registers. The front end generates these when interfacing to standard calling conventions across module boundaries, for example. For each actual register that is used for some specific purpose, such as the frame pointer, standard-argument-1-register, standard-argument-2-register, and so on, the Codegen or Frame module should use the particular temporary that is permanently bound to that register. For any given color (that is, for any given machine register) there should be only one precolored node of that color.

I don’t completely understand the indicated line in the quote above. I can imagine situations where there are multiple temporaries that would be precolored with the same register. For example, the x86 mul instruction stores the result in the EDX:EAX register pair, but functions also return values in the EAX register. So I have different temporaries that have the same color. I would think that those different uses of EAX must be different nodes, or am I wrong?

Could someone explain the highlighted sentence, maybe present some examples?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-15T06:14:32+00:00Added an answer on June 15, 2026 at 6:14 am

    In the book, the idea is, you would have a single temporary EAX, which you use both with mul and for the return value. When some value needs to be in a given register, you generate a move from the temporary containing that value to the temporary representing that register; similarly, once a value has arrived in a particular register (for example, a function has returned), you generate a move from the register’s temporary to a temporary that will hold that value from then on. See Figure 11.7 in the book.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I've been looking into the topic of creating instances of a class within its
Looking into org.pentaho.reporting.engine.classic.core.DataFactory and more specifically into the initialize method (which was formerly part
Looking into selector performance between $('#ID1, #ID2, #ID3') vs $('1X CLASS'). Which is faster?
While looking into parallel programming, and subsequently evaluation strategies, the question whether thunks are
By looking into the Open JPA website i've found that i can log the
Currently looking into learn new technology and silverlight is on the potential list. However,
Am looking into developing an iPhone native app using Titanium Developer Since this is
I looking into making a kind of robot testing browser. Like Selenium, but one
I am looking into making a c# program that will read in the logcat
I'm looking into changing the ASP.NET session state mode of our application from SQLServer

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.