Skip to content

A Gentle Introduction to LLVM IR

mcyoung.xyz
47 pointsscraptor4 comments
On HN

Comments

Picolisp is written on raw llvm-ir.

https://git.envs.net/mpech/pil21

what does this mean? "In LLVM IR, much like in Rust but unlike in C/C++, individual loads and stores are volatile (i.e., have compiler-invisible side-effects)."

In C and C++, volatile is a qualifier for a type. You then use that type like any other.

In Rust, there is no volatile types. There are two functions, read_volatile and write_volatile, on pointers.

Rust’s API is basically identical to the intrinsics, whereas C and C++‘s are not. This plays out with stuff like the drama around volatile compound operators being deprecated.

Great article.

I'd like to see more of stuff like this

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.