octave-maintainers
[Top][All Lists]
Advanced

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

JIT Proof of Concept


From: Max Brister
Subject: JIT Proof of Concept
Date: Mon, 7 May 2012 17:10:43 -0600

I have completed a proof of concept implementation of JIT compilation.
Currently, simple expressions containing only octave_scalars will
compile. The code is a little ugly, and I will probably end up
rewriting it once coding actually starts for GSoC. The code can be
checked out from
http://inversethought.com/hg/repos/octave-max/

This initial implementation has brought up a few issues/questions.
1) Calling a function with silent_function will mark statements as
permanently silent as they are executed. Supporting this behavior is
slightly problematic in JIT, and seems like a bug anyways. Maybe
tree_expression::print_result should be modified to take into account
silent_function?

2) configure.ac check: I wasn't quite sure how to do this. LLVM is odd
because it uses its own llvm-config program. Can someone who knows m4
check how I did this?

3) It would be nice if tree_walker allowed be to return values from
callback functions. There might be some way to do this with template
specialization, but I'm quite sure how right now.

4) It might be nice to separate type inference and code generation.
This would allow us to have variables with multiple possible types. I
think this would make supporting the possibility of undefined values
cleaner.

Max Brister


reply via email to

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