Replies: 1 comment 6 replies
-
There is a performance comparison of many C compilers on small benchmarks in my blogpost Basically cproc with QBE generates 20% slower code than You can run these benchmarks by yourself if you have cproc in your PATH mir/c-benchmarks/run-benchmarks.sh Line 93 in 761fc31
QBE does not support long double as I know. I am not sure QBE is ABI compatible even besides long double part. I am still actively working on MIR. GITHUB shows changes only for master branch therefore MIR looks like stalled. But I am doing most my work on bbv branch. This branch will be the base for the next MIR release and I am planning to make at least one release this year. The branch is not release ready but I am using it for my work on MIR-based JIT for CRuby.
Thank you for your kind words. |
Beta Was this translation helpful? Give feedback.
-
First of all, sorry if this is annoying! In my eyes, this is a classic question. It's like "GCC vs Clang", "Linux vs Windows", "C++ vs D", "Barcelona vs Real Madrid" etc. and it will never stop been asked (and for a good reason). I think that QBE is the only other IR that can compete with MIR (at least from the ones I know and excluding "Vox" as it doesn't have some things that I need) so this question is very important and it has to be reviewed every couple of months. Especially now, it doesn't help that there are no benchmarks against QBE but only against other C compilers. So I really believe that we need official benchmarks against QBE to be taken at least once!
Now, I want to make 2 things clear!
Now that I'm clear, the thing is pretty clear. How does MIR compares with QBE? I'm talking about compilation times, runtime performance of the output, features of the library, ease of use and in general, any comparison that can be made between them.
For what I can see myself, QBE (cproc) seems to truly compile very fast and it indeed seems to have at least 70% of "GCC -O2" runtime performance as it claims, it's IR also seems pretty easy and straightforward. Both projects seem to not be very active (at least based on how often commits are uploaded), MIR has more backends (wow!!!). And.... this is all I know!
Thank you for your time regardless! Keep up the amazing work!
Beta Was this translation helpful? Give feedback.
All reactions