cparser VS libfirm

Compare cparser vs libfirm and see what are their differences.

libfirm

graph based intermediate representation and backend for optimising compilers (by libfirm)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
cparser libfirm
2 2
320 455
1.3% 1.8%
4.6 5.2
6 months ago 6 months ago
C C
GNU General Public License v3.0 only GNU Lesser General Public License v3.0 only
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

cparser

Posts with mentions or reviews of cparser. We have used some of these posts to build our list of alternatives and similar projects.
  • Compiling History: A brief tour of C compilers
    1 project | news.ycombinator.com | 14 Feb 2024
    > QBE is a new optimizing backend much simpler than LLVM; cproc and cparser are two of the C compilers that target it, in addition to its own minic.

    I thought cparser targeted libFirm. That's what their GitHub page says [0].

    "It acts as a frontend to the libFirm intermediate representation library."

    > We really need a production quality open source C compiler that is actually written in C.

    I honestly think cproc or cparser are almost there already. For cproc, you just need to improve the quality of code optimization; it's really QBE you'd need to change. For example, you could change unnecessary multiplications by powers of 2 into left shifts, improve instruction selection so that subtraction is always something like "sub rax, rdi" and not "neg rdi / add rax, rdi" [1]).

    For cparser, I notice slightly higher quality codegen; libFirm just needs more architecture support (e.g. AMD64 support appears to work for me, but it's labeled as experimental).

    [0]: https://github.com/libfirm/cparser

    [1]: I'm pretty sure this is the line of code that generates it, too: https://c9x.me/git/qbe.git/tree/amd64/emit.c#n418

  • Cparser – A C99 parser (with GNU extensions) (2020)
    1 project | news.ycombinator.com | 15 Aug 2023

libfirm

Posts with mentions or reviews of libfirm. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-12-29.

What are some alternatives?

When comparing cparser and libfirm you can also consider the following projects:

honey-potion - Writing eBPF programs with Elixir!

mir - A lightweight JIT compiler based on MIR (Medium Internal Representation) and C11 JIT compiler and interpreter based on MIR

pg_plan_advsr - PostgreSQL extension for automated execution plan tuning

libass - libass is a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format.

qbe-rs - QBE IR in natural Rust data structures

cru - co-recursion utilities

wasmtime - A fast and secure runtime for WebAssembly

METIS - METIS - Serial Graph Partitioning and Fill-reducing Matrix Ordering