|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-ia64-devel]Question about priv_ptc_e
Le Vendredi 10 Mars 2006 07:06, Xu, Anthony a écrit :
> Dan,
> Why is ptc_e emulated as fc when gr is larger than 63?
>
> IA64FAULT priv_ptc_e(VCPU *vcpu, INST64 inst)
> {
> UINT src = inst.M28.r3;
>
> // NOTE: ptc_e with source gr > 63 is emulated as a fc r(y-64)
> if (src > 63) return(vcpu_fc(vcpu,vcpu_get_gr(vcpu,src - 64)));
> return vcpu_ptc_e(vcpu,vcpu_get_gr(vcpu,src));
> }
This is the way fc is privatized.
You need to privatize fc because its semantic is different in CPL0 and CPL !=
0. You couldn't use a break (at least during the privatize area), so Dan
used a priv op with special registers.
Maybe this area is over and this could be now cleaned.
Tristan.
_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |