octave-maintainers
[Top][All Lists]
Advanced

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

Re: JIT interrupt handler naming


From: Rik
Subject: Re: JIT interrupt handler naming
Date: Tue, 23 Jul 2013 07:56:20 -0700

On 07/23/2013 07:22 AM, address@hidden wrote:
> From: lyh.kernel <address@hidden>
> Date: 2013/7/23
> Subject: Re: Question of JITC
> To: Max Brister <address@hidden>
>
>
> Hello Max,
>
> I would like to remove interrupt handler of JITC linear IR because I want
>>> >> to focus on your implementation rather than distracted by interrupt 
>>> >> handler.
>>> >>
>> >
>> > The interrupt handler is part of the implementation. For example, the
>> > interrupt check is added for the for loop here[1]. You can see the code
>> > generation (octave linear IR -> LLVM IR) here[2]. If you wanted to remove
>> > the interrupt check from LLVM, I guess you could comment out the switch
>> > statement at [2].
>> >
> I modify the function void jit_convert::visit_while_command
> (tree_while_command& wc):pt-jit.cc:
>
> #if 0
>   if (! all_breaking || continues.size ())
>     {
>       jit_block *interrupt_check
>         = factory.create<jit_block> ("interrupt_check");
>       blocks.push_back (interrupt_check);
>       finish_breaks (interrupt_check, continues);
>       if (! all_breaking)
>         block->append (factory.create<jit_branch> (interrupt_check));
>
>       block = interrupt_check;
>       jit_error_check *ec
>         = factory.create<jit_error_check> (jit_error_check::var_interrupt,
>                                            cond_check, final_block);
>       block->append (ec);
>     }
> #else
>   block->append (factory.create<jit_branch> (cond_check));
> #endif
>
> After I add this modification. There is no JITC Linear IR related to
> interrupt/error handler. Is it correct position to disable interrupt/error
> support?
Max will hopefully know whether disabling error support is acceptable.  I
assume this means the ability to press Ctrl+C during long calculations?
>  If it is, I would like to add a option like
> disable_jit_handle_error(1) or disable_jit_handle_interrupt(1).
If you do need to add a new function it should start with the prefix "jit_"
and be relatively short.  Currently the user-visible functions are
jit_enable and jit_startcnt.  Something like jit_irq_enable.

--Rik



reply via email to

[Prev in Thread] Current Thread [Next in Thread]