The current documentation for LLVM has an example of using JIT with an existing 'C' program, without a custom front-end. I couldn't get it to work using the sample, so maybe it's not in version 3.1 - 3.2. And maybe it's a mis-print!

I joined the LLVMdev list and asked that question.

If and when I get an answer, I'll post either 'success' or 'failure' or whatever, but 15% improvement is nice. I'm not endorsing anything, since this is more of a learning exercise for me.

IBM 'xlc' is way faster on p-series machines than 'GCC', but I gave up long ago trying to get 'C' code that was designed and tested with 'GCC' to get compiled with 'xlc'!
If it's my code, then I'll go with 'xlc'.

To generate a Perl 5.16.0 took half the time with 'clang' as it was to generate it with 'GCC'. And 100% of the Perl test-cases worked.

For that, I'm impressed.

Thank you

"Well done is better than well said." - Benjamin Franklin

Comment on
Re^4: perllVm: A Linux test of how Perl and LLVM would work together.
Replies are listed 'Best First'.

Clang brings meaningful competition to free compilers and vastly improved diagnostics. Double yay.
But chromatic's right. JITting Perl is a big big big job. If you'd done it, we'd be having this conversation many months later and you'd have been asking p5p a hard question every day.

If you compile the perl sources to bitcode and run them with lli, then it can jit the perl runtime whilst it is running Ack.pl.

That wasn't what flexvault was doing; and I'm not sure what performance would result; but when you're first playing with this stuff it is easy to get confused about what is happening during the different phases; and/or sucked in by what you read.

Whilst lli is slow compared to native-compiled C; the relative effects of it using JIT on the bitcoded C, do give some indication of the possibilities of gains that are possible when running the native-compiled C -- iff you can get the optimiser to see all the relevant parts of the C-source concurrently.

Easier said than done given perl's architecture; but that could change.

With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'

Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.

"Science is about questioning the status quo. Questioning authority".

In the absence of evidence, opinion is indistinguishable from prejudice.