Complaints about using #LLVM to write #compilers.
on 02026-01-12#video of Jon #Blow’s presentation at Reboot Develop in 02017 about designing #Jai for #videogames. Photoshop takes 7 seconds to start up to display you an image, during which time it’s displaying you a high-resolution image on its splash screen that isn’t the one you wanted to see, and “now” in 02017 opening the File→New menu window takes an entire second. (Indeed, in this 30fps video, it takes 30 frames to finish drawing the menu.) On his i7-7700HQ. He says single-core performance had improved 24× since 02000 based on SPECfp, but it’s also quad-core. Demo of his in-progress Sokoban game, started a year earlier at the same time as Jai, starts at 16'36". Roughly 100kloc per second unoptimized compilation speed on the i7-7700HQ. A thing I hadn’t realized before is that his compile-time execution represents a repudiation of the idea of simple DSLs like the shell, which is consistent with his dislike of things like Lua. The video is unfortunately very hard to read his screen from. This is one of the videos where he says that the syntax is temporary. His reflection system is useful for not just compile-time computation but also run-time debug messages and experimental interfaces. He never mentions the name of the language, so maybe he hadn’t settled on “Jai” yet, but the compiler is already called “jai.exe” and the filenames end in “.jai”. Also he already had the #LLVM backend, which he described as the “short-term plan” for optimization. #compilers
on 02025-08-03#LLVM supports the TI-84+ CE calculator now, which has 256KiB of RAM, and ocamlcc can compile #OCaml to C, and js_of_ocaml compiles it to JS. Farlow wrote a new c_of_ocaml backend for js_of_ocaml. But he doesn’t have floats or exceptions working yet. #compilers
#LDC is the #LLVM based #D compiler which Baziotis recommends studying. “The compiler uses the official DMD frontend to support the latest version of D2, and relies on the LLVM Core libraries for code generation.” #compilers
on 02024-12-12SML/NJ seems to still be alive, using #LLVM these days. #ML #compilers
on 02024-11-28#LLVM #compilers optimization problems related to linking.
on 02017-11-25Christina Brooks (Kristina) and David Given wrote an #LLVM backend for the #Videocore-IV GPU used in the #Raspberry-Pi, in particular to make free-software boot firmware for it.
on 02017-01-06#Rust is getting contaminated with undefined behavior via #LLVM. #compilers
on 02015-12-31Introduction to #LLVM for hacking on stuff.
on 02015-08-05The Virtual Ghost #security #kernel thingy limits kernel access to hardware to be via “a thin hardware abstraction layer” imposed by a combination of compiler instrumentation (#LLVM) and runtime checks on OS code, without using “a higher privilege level than the kernel”
on 02015-08-05