> From: Dale Johannesen [mailto:[EMAIL PROTECTED] > > On Jul 21, 2005, at 4:36 PM, Tabony, Charles wrote: > > > Hi, > > > > I am working on a port for a processor that has 32 bit registers but > > can > > only load 16 bit immediates. > > "" > > "%0.h = #HI(%1)") > > What are the semantics of this? Low bits zeroed, or untouched? > If the former, your semantics are identical to Sparc; look at that.
The low bits are untouched. However, I would expect the compiler to always follow setting the high bits with setting the low bits. The point of splitting them is that I want the insn setting the high bits to be scheduled in a vliw packet with the preceding insns and the insn setting the low bits to be scheduled with the following insns whenever possible. The processor cannot execute both instructions in the same cycle. -Charles