[LLVMdev] Paired register allocation problem
anton at korobeynikov.info
Mon Feb 22 06:47:38 PST 2010
> I have defined registers, aliases and subregister set.
> The problem is that register allocator is using 32bit registers that are
> already used in a pair, for example:
> lw $r0, 16[$r12] // load word to r0
> ld $p0, 36[$r12] // load doubleword to p0
> shl $p0, $p0, $r0 // shift left p0 by r0 and store result in p0
> where p0 is a pair r0:r1
> Could anyone tell me what am I doing wrong?
Have you defined aliases properly? Look how this is handled inside
s390 backend (systemz).
Note that in general you'll need to write "paired" reg-reg mov pseudo
With best regards, Anton Korobeynikov
Faculty of Mathematics and Mechanics, Saint Petersburg State University
More information about the llvm-dev