[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Relocatable Xen early boot code



On 12/06/15 15:36, Daniel Kiper wrote:
>> As stated at the hackathon, the problem with using %ebp is that it turns
>> all implicit %ds references into implicit %ss references, and tends to
> I am aware of that. However, I think that this is not a problem right
> now because %ds == %ss.

Some data segment attributes have different meanings when loaded into
%ss, than when loaded into any of the plain data segment registers.  I
believe what we have is compatible between the two. but...

> Additionally, I do not think that it will change in the future.

Stack references behave differently to data references.  For example, a
non-canonical addresses generate a #GP fault for data references, or a
#SS fault for stack references.

The concern with implicit stack references comes from the subtle
behaviour changes, not because it won't work in the general case.

>
>> add a SIB+imm32 to each instruction with a memory reference (ebp
>> relative memory references, and r13 for that matter, have restrictions
>> in the way in which they can be encoded).
> I am not sure what are you talking about here. What do you mean by r13?
> Register name? In 32-bit mode? Could you point me a paragraph in Intel
> or AMD docs which says about this restrictions?

This isn't a restriction pe say.  It is a properly of ModRM/SIB
encoding.  It is described in both the Intel and AMD instruction
reference manuals.

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.