[PATCH] D61524: [BPF] Support for compile once and run everywhere
Arthur Eubanks via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 4 16:05:14 PDT 2021
aeubanks added a comment.
The opaque pointers project (https://llvm.org/docs/OpaquePointers.html) is trying to remove pointee types from pointer types. For example, the GEP instruction doesn't look at the base pointer's type, but rather the type is separately encoded into the instruction (https://llvm.org/docs/LangRef.html#getelementptr-instruction).
In terms of code changes, this means that all calls to `Type::getPointerElementType()` won't work. BPFAbstractMemberAccess.cpp uses that to see what type to operate on for these added intrinsics. Basically it's emulating the old GEP instruction which did indeed look at the base pointer's pointee type. But that won't work at some point.
As for overloaded intrinsic types, see https://llvm.org/docs/LangRef.html#intrinsic-functions.
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D61524/new/
https://reviews.llvm.org/D61524
More information about the llvm-commits
mailing list