search for: load_with_trap

Displaying 3 results from an estimated 3 matches for "load_with_trap".

2015 Apr 23
5
[LLVMdev] RFC: implicit null checks in llvm
...res, virtual dispatches etc.). I'm sure there are other less obvious and more interesting use cases. I plan to break the design into two parts, roughly following the statepoint philosophy: # invokable @llvm.(load|store)_with_trap intrinsics We introduce two new intrinsic families T @llvm.load_with_trap(T*) [modulo name mangling] void @llvm.store_with_trap(T, T*) [modulo name mangling] They cannot be `call`ed, they can only be `invoke`d. Semantically, they try to load from or store to the pointer passed to them as normal load / store instructions do. @llvm.load_with_trap returns the lo...
2015 Apr 23
4
[LLVMdev] RFC: implicit null checks in llvm
...ee it being done right. +1 > > I plan to break the design into two parts, roughly following the > > statepoint philosophy: > > > > # invokable @llvm.(load|store)_with_trap intrinsics > > > > We introduce two new intrinsic families > > > > T @llvm.load_with_trap(T*) [modulo name mangling] > > void @llvm.store_with_trap(T, T*) [modulo name mangling] > > > > They cannot be `call`ed, they can only be `invoke`d. > Why not allow non-nounwind calls, in other words, an intrinsic call that may throw? In most languages with implicit n...
2015 Apr 24
2
[LLVMdev] RFC: implicit null checks in llvm
On Thu, Apr 23, 2015 at 5:17 PM, Andrew Trick <atrick at apple.com> wrote: > The scheduler itself doesn’t move anything around labels. But any pass can > perform code motion or load/store optimization. Also, any pass can insert > an instruction, like a copy, between the label and the load. > > I’m not really sure how EH_LABEL ends up translating into exception > tables,