This IR will be parsed by opt, but will not be parsed by llc. This is very surprising, and it arises because llc allows the target triple to override the datalayout string during loading. This causes the program address to be incorrectly determined when using llc.
The fact that CHERIoT is not part of the target triple in LLVM IR causes a few problems. One interesting one is this:
This IR will be parsed by
opt
, but will not be parsed byllc
. This is very surprising, and it arises becausellc
allows the target triple to override the datalayout string during loading. This causes the program address to be incorrectly determined when usingllc
.