[LLVMdev] Moving data between regs
Fernando Magno Quintao Pereira
fernando at CS.UCLA.EDU
Tue Jun 12 22:15:36 PDT 2007
Dear LLVMers,
I wish someone could help me to clarify a register allocation
question. I will use X86 in this example, but it really does not matter
too much.
Imagine that I have a virtual v stored in register AL, and I am about
to cross a function call, that effectively overwrites AL. Well, I have,
say, register ESI free, but as it happens, ESI is bigger than AL. It
should be technically possible to move the contents of AL into ESI, to
avoid spilling 'v', but I don't know if that is possible in LLVM.
Basically, ESI is not in the class of 'v', and it has no 8 bit alias. Is
this a problem (the move can't be done), or am I missing something?
all the best,
Fernando
More information about the llvm-dev
mailing list