[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-ia64-devel] pv_ops: ministate.h typo fix
It is mentioned as move some instructions to make bundle compact. I understand. Seems reasonable. On Thu, Mar 27, 2008 at 02:40:52PM +0900, Isaku Yamahata wrote: > On Thu, Mar 27, 2008 at 12:20:37PM +0800, Dong, Eddie wrote: > > > > - shuffle instructions of XEN_BSW_1 and xen DO_XEN_MIN(). > > > Is this for producing better bundles? Please ellaborate on this. > > > If so, I'll take as another patch. > > > > ??? Which code are u talking for? > > The following hunks. The instruction order was changed. > What's the purpose? > > diff --git a/include/asm-ia64/xen/inst.h b/include/asm-ia64/xen/inst.h > index a8fb2ac..1e92d02 100644 > --- a/include/asm-ia64/xen/inst.h > +++ b/include/asm-ia64/xen/inst.h > @@ -414,10 +414,10 @@ > movl r30 = XSI_B1NAT; \ > ;; \ > ld8 r30 = [r30]; \ > + mov r31 = 1; \ > ;; \ > mov ar.unat = r30; \ > movl r30 = XSI_BANKNUM; \ > - mov r31 = 1; \ > ;; \ > st4 [r30] = r31; \ > movl r30 = XSI_BANK1_R16; \ > diff --git a/include/asm-ia64/xen/minstate.h b/include/asm-ia64/xen/minstate.h > index 67bbf79..7cdebc2 100644 > --- a/include/asm-ia64/xen/minstate.h > +++ b/include/asm-ia64/xen/minstate.h > @@ -25,17 +25,16 @@ > * Note that psr.ic is NOT turned on by this macro. This is so that > * we can pass interruption state as arguments to a handler. > */ > -#define DO_SAVE_MIN(__COVER,SAVE_IFS,EXTRA) > \ > +#define DO_SAVE_MIN(COVER,SAVE_IFS,EXTRA) > \ > mov r16=IA64_KR(CURRENT); /* M */ > \ > mov r27=ar.rsc; /* M */ > \ > mov r20=r1; /* A */ > \ > mov r25=ar.unat; /* M */ > \ > MOV_FROM_IPSR(r29); /* M */ > \ > - mov r26=ar.pfs; /* I */ > \ > MOV_FROM_IIP(r28); /* M */ > \ > mov r21=ar.fpsr; /* M */ > \ > - __COVER; /* B;; (or nothing) */ > \ > - ;; > \ > + mov r26=ar.pfs; /* I */ > \ > + COVER; /* B;; (or nothing) */ > \ > adds r16=IA64_TASK_THREAD_ON_USTACK_OFFSET,r16; > \ > ;; > \ > ld1 r17=[r16]; /* load > current->thread.on_ustack flag */ \ > @@ -80,17 +79,17 @@ > .mem.offset 8,0; st8.spill [r17]=r9,16; > \ > ;; > \ > .mem.offset 0,0; st8.spill [r16]=r10,24; > \ > + movl r8=XSI_PRECOVER_IFS; > \ > .mem.offset 8,0; st8.spill [r17]=r11,24; > \ > ;; > \ > /* xen special handling for possibly lazy cover */ > \ > /* XXX: SAVE_MIN case in dispatch_ia32_handler: mov r30=r0 */ > \ > - movl r8=XSI_PRECOVER_IFS; > \ > ;; > \ > ld8 r30=[r8]; > \ > - ;; > \ > +(pUStk) sub r18=r18,r22; /* r18=RSE.ndirty*8 */ > \ > st8 [r16]=r28,16; /* save cr.iip */ > \ > + ;; \ > st8 [r17]=r30,16; /* save cr.ifs */ > \ > -(pUStk) sub r18=r18,r22; /* r18=RSE.ndirty*8 */ > \ > mov r8=ar.ccv; > \ > mov r9=ar.csd; > \ > mov r10=ar.ssd; > \ > @@ -131,7 +130,5 @@ > adds r2=IA64_PT_REGS_R16_OFFSET,r1; > \ > ;; > \ > movl r1=__gp; /* establish kernel global pointer */ > \ > - ;; > \ > - /*bsw.1;*/ /* switch back to bank 1 (must be last in insn > group) */ \ > ;; > #endif /* __IA64_ASM_PARAVIRTUALIZED_XEN */ > > -- yamahata _______________________________________________ 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 |