3 ms·
> What is missing is a way forward for getting secret types and the corresponding semantics into LLVM. Seems crazy that this hasn't happened already given how
by staticassertion 5y ago
> What is missing is a way forward for getting secret types and the corresponding semantics into LLVM.
Seems crazy that this hasn't happened already given how prevalent and old this issue is.
- tigersforhire 5y agoI think one reason is that it actually entails a pretty big lift from LLVMs side since it would introduce a new invariant that needs to be upheld by optimization passes and code generators. I’ve heard rumours that Google have done some work internally in this area, but it was never open sourced or upstreamed.
- staticassertion 5y agoThe thing is that this issue predates LLVM. It just feels like the sort of thing that would have been brought up really really early in the process, like as soon as anyone used it for any real world project. I imagine it's not straightforward, just seems like the effort would have started earlier.
- vlovich123 5y agoMost projects targeting binaries provide coarse escape hatches that work well enough (in the form of asm volatile). This is a new space where we now need to persist the optimization to work correctly through one AOT pass and then a totally separate JIT which is a new thing and I’m not surprised there’s work to be done.
- staticassertion 5y agoThat's true - we're definitely working with much more complex compilation pipelines now.