Re: [Qemu-devel] qemu softmmu inlined lookup sequence

2012-07-11 Thread Wei-Ren Chen
On Sat, Apr 21, 2012 at 05:28:36PM -0400, Xin Tong wrote: > On Mon, Apr 16, 2012 at 10:51 PM, 陳韋任 wrote: > >> what does the inline sequence look like ? what kind of things (other > >> than refill tlb) performed in callout but not the inlined sequence ? > > > > What do you mean by the inline seque

Re: [Qemu-devel] qemu softmmu inlined lookup sequence

2012-04-21 Thread Xin Tong
On Mon, Apr 16, 2012 at 10:51 PM, 陳韋任 wrote: >> what does the inline sequence look like ? what kind of things (other >> than refill tlb) performed in callout but not the inlined sequence ? > > What do you mean by the inline sequence, the host binary? If so, > > --- > 0xe86c8 > mov_i32 tmp2

Re: [Qemu-devel] qemu softmmu inlined lookup sequence

2012-04-18 Thread Blue Swirl
On Wed, Apr 18, 2012 at 02:49, 陳韋任 wrote: > On Tue, Apr 17, 2012 at 08:17:09PM +, Blue Swirl wrote: >> On Tue, Apr 17, 2012 at 05:40, Xin Tong wrote: >> > that is possible. but if that is the case, why not split the tlb >> > walking and the tlb fill ? can anyone please confirm ? >> >> I sent

Re: [Qemu-devel] qemu softmmu inlined lookup sequence

2012-04-17 Thread 陳韋任
On Tue, Apr 17, 2012 at 08:17:09PM +, Blue Swirl wrote: > On Tue, Apr 17, 2012 at 05:40, Xin Tong wrote: > > that is possible. but if that is the case, why not split the tlb > > walking and the tlb fill ? can anyone please confirm ? > > I sent a patch earlier that did something like that but

Re: [Qemu-devel] qemu softmmu inlined lookup sequence

2012-04-17 Thread Blue Swirl
On Tue, Apr 17, 2012 at 05:40, Xin Tong wrote: > that is possible. but if that is the case, why not split the tlb > walking and the tlb fill ? can anyone please confirm ? I sent a patch earlier that did something like that but it wasn't very successful: http://lists.nongnu.org/archive/html/qemu-d

Re: [Qemu-devel] qemu softmmu inlined lookup sequence

2012-04-17 Thread 陳韋任
> > If TLB miss, it will call something like __ldb_mmu (b). __ldb_mmu will try > > to > > walk guest page table, then fill TLB entry if page table hit, or raise a > > guest > > page fault exception if page table miss. > > Yep. that is what i was taught. the sequence of code above is an > inlined

Re: [Qemu-devel] qemu softmmu inlined lookup sequence

2012-04-17 Thread 陳韋任
> what does the inline sequence look like ? what kind of things (other > than refill tlb) performed in callout but not the inlined sequence ? What do you mean by the inline sequence, the host binary? If so, --- 0xe86c8 mov_i32 tmp2,edi qemu_ld8u tmp0,tmp2,$0x0 ext8u_i32 tmp12,tmp0 mo

Re: [Qemu-devel] qemu softmmu inlined lookup sequence

2012-04-16 Thread Xin Tong
that is possible. but if that is the case, why not split the tlb walking and the tlb fill ? can anyone please confirm ? Xin 2012/4/16 陳韋任 : >> > If TLB miss, it will call something like __ldb_mmu (b). __ldb_mmu will try >> > to >> > walk guest page table, then fill TLB entry if page table hit,

Re: [Qemu-devel] qemu softmmu inlined lookup sequence

2012-04-16 Thread Xin Tong
On Mon, Apr 16, 2012 at 10:51 PM, 陳韋任 wrote: >> what does the inline sequence look like ? what kind of things (other >> than refill tlb) performed in callout but not the inlined sequence ? > >  What do you mean by the inline sequence, the host binary? If so, > > --- >   0xe86c8 >  mov_i32 tmp2

[Qemu-devel] qemu softmmu inlined lookup sequence

2012-04-16 Thread Xin Tong
it seems qemu has an inlined sequence to walk the tlb. if that fails, it does a call out. tcg_out_tlb_load(s, addrlo_idx, mem_index, s_bits, args, label_ptr, offsetof(CPUTLBEntry, addr_write)); /* TLB Hit. */ tcg_out_qemu_st_direct(s, data_reg, data_reg2,