x86-64-ABI VS kaleidoscope

Compare x86-64-ABI vs kaleidoscope and see what are their differences.

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
x86-64-ABI kaleidoscope
14 10
- 1,041
- 0.0%
- 0.0
- about 6 years ago
Haskell
- MIT License
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.

x86-64-ABI

Posts with mentions or reviews of x86-64-ABI. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2025-12-02.
  • Addressing the adding situation – Matt Godbolt
    4 projects | news.ycombinator.com | 2 Dec 2025
  • We found a bug in Go's ARM64 compiler
    7 projects | news.ycombinator.com | 8 Oct 2025
    Ehh I wouldn’t say so (thanks for the correct link for ARM64 though in any case). What you need to be comparing to here is DWARF[1,2] section 6.4, and while it’s not as bad as other parts of DWARF, I still think it’s plenty complicated.

    [1] https://dwarfstd.org/doc/DWARF5.pdf#page=171

    [2] Slightly modified by psABI[3] section 3.7 for x86-64 or the LSB[4] section 11.6 for ARM64, but at this point that’s a drop in the bucket as far as overall complexity is concerned.

    [3] https://gitlab.com/x86-psABIs/x86-64-ABI/-/jobs/artifacts/ma...

    [4] https://refspecs.linuxfoundation.org/LSB_4.0.0/LSB-Core-gene...

  • The repercussions of a typo in C++ & Rust
    1 project | news.ycombinator.com | 6 Sep 2025
    > if an argument fits into the size of a register, it's better to pass by value to avoid the extra indirection.

    Whether an argument is passed in a register or not is unfortunately much more nuanced than this: it depends on the ABI calling conventions (which vary depending on OS as well as CPU architecture). There are some examples where the argument will not be passed in a register despite being "small enough", and some examples where the argument may be split across two or more registers.

    For instance, in the x86-64 ELF ABI spec [0], the type needs to be <= 16 bytes (despite registers only being 8 bytes), and it must not have any nontrivial copy / move constructors. And, of course, only some registers are used in this way, and if those are used up, your value params will be passed on the stack regardless.

    [0] Section 3.2.3 of https://gitlab.com/x86-psABIs/x86-64-ABI

  • Evolution of the ELF object file format
    2 projects | news.ycombinator.com | 27 May 2024
  • Linux/ELF .eh_frame from the bottom up
    2 projects | news.ycombinator.com | 16 Feb 2024
    Linux uses the sysv calling convention. I believe these are the official or semi-official documents for x86 64-bit and 32-bit, respectively:

    https://gitlab.com/x86-psABIs/x86-64-ABI (Table 3.4 in section 3.2.3 lists which registers may be clobbered and which must be saved)

  • Book recommendations.
    1 project | /r/asm | 5 Dec 2023
    System V Application Binary Interface AMD64 Architecture Processor Supplement
  • Six Great Features with the Upcoming Linux 6.6 Kernel
    1 project | news.ycombinator.com | 29 Oct 2023
    ABI is just the name for any stable binary interface between parts of a program, eg in C there is a well-defined ABI for calling functions: https://gitlab.com/x86-psABIs/x86-64-ABI/-/jobs/artifacts/ma... https://www.agner.org/optimize/calling_conventions.pdf

    If you combine that with a stable set of C function names and parameters, then you could define an ABI for kernel modules if you (and the Linux developers) wanted. While it sounds like a good idea, the outcome probably wouldn't be great for users.

  • Does C++ have a stable ABI or not?
    1 project | /r/cpp | 29 Apr 2023
    But in the same breath, that paragraph's footnote points directly to the Itanium C++ ABI specification which seems to do precisely what they said has never been done. (I've filed a bug...).
  • What x64 ABI does linux / GCC ACTUALLY use?
    1 project | /r/linux | 4 Feb 2023
    The supposed latest psABI specs (https://gitlab.com/x86-psABIs/x86-64-ABI) contain the following, with regards to classifying aggregates for argument passing (section 3.2.3, page 24, of the AMD64 ABI 1.0 – December 6, 2022 specs):
  • Change default CPU type?
    1 project | /r/Proxmox | 20 Dec 2022
    RHEL, from version 9, requires x86-64 v2. The levels are a common effort between several companies, AMD included. The definitions can be found in this repo, and here is the latest PDF.

kaleidoscope

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

What are some alternatives?

When comparing x86-64-ABI and kaleidoscope you can also consider the following projects:

abi-aa - Application Binary Interface for the Arm® Architecture

hyper-haskell-server - The strongly hyped Haskell interpreter.

i386-ABI

haskelm - Haskell to Elm translation using Template Haskell. Contains both a library and executable.

cpplinks - A categorized list of C++ resources.

accelerate-io - Read and write Accelerate arrays in various formats

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured