Hacker News new | ask | show | jobs
by weitzj 2159 days ago
Does anybody know what’s the status with bitcode support? Last info from about 1.5 years ago was that the Golang and Rust toolchain did not support it, but also Apple did not make it mandatory.

What is the current state? Does ocaml support bitcode?

3 comments

There is no support to bitcode, but there is no major advantage to support it, so it doesn't seems to be worthy
tvOS and watchOS require bitcode, but yes I agree that's not major advantage compared to work required to support it.
Rust had bitcode support since 2018: https://github.com/rust-lang/rust/pull/48896
Good. One more reason to look at rust. Main motivation is webassembly for me
There is an OCaml interpreter that does run a bitcode, is that what you're referring to?
The App Store has an option where, in addition to uploading an ARM binary, you can upload LLVM bitcode (a binary representation of LLVM IR). This allows Apple to optimize the app differently for different devices[0], and is required to build apps for watchOS and maybe tvOS.

[0]: Not sure if Apple does this in practice, but I believe the purpose of bitcode is that they could do that if they wanted to.

OCaml compiler isn't LLVM based and LLVM bitcode is not supported.
When they released the first arm64_32-based watch they rebuilt all existing apps on the app store for that architecture from bitcode.