Take the 2-minute tour ×

As we know that c code can be converted into javabytecode by different ways like:- first, we can convert c code into java source code and then use java compiler to convert into bytecode. second, c to MIPS binary and then MIPS to bytecode.

As both adds overhead in execution, I want to know the way of Axiomatic Ansi C Compiler which i want to use in my project. I need a faster way. Or advise me any other alternate options. Thanks for your effort.

share|improve this question
If your issue is that you want more speed, then why don't you just measure the performance? Even if the Axiomatic compiler does a direct conversion to bytecode (for some definition of direct) that isn't a guarantee that it'll actually be any faster than the approaches you've tried. –  Laurence Gonsalves Nov 27 '10 at 8:45
add comment

1 Answer

After googling and some knowledge about JVM I landed on following points:

The java bytecode generated by the axiomatic C compiler, is not efficient. Instead of that NestedVM and Cibyl both works by compiling MIPS binaries and then translating the binary into Java bytecode. And it's efficient, with the main problem being memory access of 8- and 16-byte values which needs to be done in multiple steps.

NestedVM and Cibyl have slightly different performance characteristics, with Cibyl typically being faster for integer-heavy workloads whereas NestedVM handles floats and doubles better. This is because Cibyl uses GCC soft-float support (though using "real" Java bytecode floating point instructions) while NestedVM translates MIPS FPU instructions.

In my guess you would have more luck with either of them instead of Axiomatic C compiler.

share|improve this answer
add comment

Your Answer


