By doing this we can make any number of decisions about code generation during the prologue. For instance, we can decide whether or not to reserve a register to hold the value of GUEST_BASE.
This fixes a latent bug in the two ppc ports in that GUEST_BASE was being loaded as an immediate before the final value of GUEST_BASE is computed. This also fixes some register reservation problems I noticed in the ia64 port, while trying to decide which register to use for holding GUEST_BASE across the TB. r~ Richard Henderson (5): tcg: Initialize the prologue after GUEST_BASE is fixed. tcg-hppa: Load GUEST_BASE as an immediate. tcg-ia64: Fix some register usage issues. tcg-ia64: Load GUEST_BASE into a register. tcg-ppc: Conditionally reserve TCG_GUEST_BASE_REG. bsd-user/main.c | 9 ++- exec.c | 5 + linux-user/main.c | 9 ++- tcg/hppa/tcg-target.c | 12 +-- tcg/ia64/tcg-target.c | 199 +++++++++++++++++++++++++++++++----------------- tcg/ppc/tcg-target.c | 8 +- tcg/ppc64/tcg-target.c | 9 +- tcg/tcg.c | 3 + tcg/tcg.h | 1 + 9 files changed, 167 insertions(+), 88 deletions(-)