This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Feature request: ability to describe x86 register halves as contraints.


On Mon, Jun 29, 1998 at 06:44:04PM +0200, ak@muc.de wrote:
> The only way to do this is to use fixed input registers and hardcode the 
> register halves. Unfortunately this adds some compiler version dependencies
> to my code, and also limits the possibilities of the compiler to do other
> optimizations. 

Incorrect:

   b -- print the QImode name of the register for the indicated operand.
        %b0 would print %al if operands[0] is reg 0.
   w --  likewise, print the HImode name of the register.
   k --  likewise, print the SImode name of the register.
   h --  print the QImode name for a "high" register, either ah, bh, ch or dh.

So:

	asm ("# %0 %b0 %h0 %w0 %k0" : : "q"(x));

yields

	# %eax %al %ah %ax %eax


r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]