[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 23/26] target-xtensa: implement interrupt option
From: |
Max Filippov |
Subject: |
Re: [Qemu-devel] [PATCH 23/26] target-xtensa: implement interrupt option |
Date: |
Sat, 21 May 2011 01:30:10 +0400 |
User-agent: |
KMail/1.13.6 (Linux/2.6.34.8-68.fc13.x86_64; KDE/4.5.5; x86_64; ; ) |
> > By the way, do I understand it right that if I chain TBs than I need
> > to periodically check for pending interrupts myself, otherwise e.g.
> > "j $" will create uninterruptible infinite loop?
>
> No, it won't. It'll create a loop, but it'll be broken by the host
> signal handler. Notice no other target is checking for this.
>
> >>> +DEF_HELPER_0(check_interrupts, void)
> >>> +DEF_HELPER_2(waiti, void, i32, i32)
> >>> +DEF_HELPER_2(timer_irq, void, i32, i32)
> >>> +DEF_HELPER_1(advance_ccount, void, i32)
> >>
> >> You shouldn't have to manage any of this from within the translator.
>
> You should *never* have to check for interrupts, or advance cycle counters,
> from within the translated code. Interrupt processing, and thus timers,
> are handled in between TBs as necessary by generic code.
Well,
- cycles fed into advance_ccount may (and on real hardware actually do) depend
on executed commands/pipeline/cache hits. Most of this stuff may be counted at
the translation time;
- timer_irq is a helper that raises IRQ generated by CCOMPARE match;
- waiti is a helper for the instruction of the same name;
- check_interrupts converts IRQs on enabled interrupt sources into current irq
level.
Thanks.
-- Max
- Re: [Qemu-devel] [PATCH 21/26] target-xtensa: implement unaligned exception option, (continued)
[Qemu-devel] [PATCH 22/26] target-xtensa: implement SIMCALL, Max Filippov, 2011/05/17
[Qemu-devel] [PATCH 23/26] target-xtensa: implement interrupt option, Max Filippov, 2011/05/17
- Re: [Qemu-devel] [PATCH 23/26] target-xtensa: implement interrupt option, Richard Henderson, 2011/05/20
- Re: [Qemu-devel] [PATCH 23/26] target-xtensa: implement interrupt option, Max Filippov, 2011/05/20
- Re: [Qemu-devel] [PATCH 23/26] target-xtensa: implement interrupt option, Richard Henderson, 2011/05/20
- Re: [Qemu-devel] [PATCH 23/26] target-xtensa: implement interrupt option,
Max Filippov <=
- Re: [Qemu-devel] [PATCH 23/26] target-xtensa: implement interrupt option, Richard Henderson, 2011/05/20
- Re: [Qemu-devel] [PATCH 23/26] target-xtensa: implement interrupt option, Max Filippov, 2011/05/24
- Re: [Qemu-devel] [PATCH 23/26] target-xtensa: implement interrupt option, Richard Henderson, 2011/05/24
- Re: [Qemu-devel] [PATCH 23/26] target-xtensa: implement interrupt option, Max Filippov, 2011/05/24
[Qemu-devel] [PATCH 24/26] target-xtensa: implement accurate window check, Max Filippov, 2011/05/17
[Qemu-devel] [PATCH 25/26] target-xtensa: implement CPENABLE and PRID SRs, Max Filippov, 2011/05/17
[Qemu-devel] [PATCH 26/26] target-xtensa: implement relocatable vectors, Max Filippov, 2011/05/17