LLVM IR isn't platform-independent ʟʟᴠᴍ ɪʀ ɪsɴ'ᴛ ᴘʟᴀᴛғᴏʀᴍ-ɪɴᴅᴇᴘᴇɴᴅᴇɴᴛ ʇuǝpuǝdǝpuᴉ ɯɹoɟʇɐld ʇ,usᴉ ɹI WΛ˥˥ Ļ̥̰͉̲L̺V̥̲̖̥̣̝͝M͓̖͇ I͍͓R͇͓̝͍ ̵̪͇͖̻ị͔̺̫͚͟s̞͙̯͓͍̭̗n̝'͚t̟͇͖͉̖̖̀ͅ p̴͇̣ĺ̞a̗̤͓̟͚̤̭͜t̗̺̻̬f̵̰̗̬̙ơ̗͔̭̞̱rm̶͙͙͓̲̖͉-ḭ̲̭̣n̕deͅp͖̣͜e̡̜̮̗̤n҉̟̥̭d̴̳̮͍͎̝̫e̩̣͉͔͇̝͝ͅn̟͓ͅt̺̞̼͍̀
-
-
LLVM IR has some extra non-independent bits as well (ABI, data layout, intrinsics)
-
but yeah, the ifdefs and language-specific stuff from C is basically fatal at the start.
-
You could opt to choose canonical type sizes, endianness, etc. and use that on all platforms, of course, but it would have nontrivial cost & wouldn't match existing platform ABIs.
-
yeah, and of course, some of the ABI is already encoded in the IR that comes out of the frontend! it's great.
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.