search for: cont0

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

Did you mean: cont
2011 Jun 12
5
[LLVMdev] Is LLVM expressive enough to represent asynchronous exceptions?
...; call llvm.aeh.continue(%result,blockaddress(@whatever,%aeh.try.except.handler0)) unreachable aeh.try.except.body0: ; no predecessor call printf "handler\n" br label aeh.try.exit0 aeh.try.exit0: ;; -----> this would be the no-op <----- llvm.aeh.exit br label aeh.try.cont0 aeh.try.cont0: <whatever> } I like this one because it is explicit. All options here would require a little bit extra futzing to integrate with C++ exceptions. So my question to you is: given that there is interest in proper Windows support, and that asynchronous exceptions are generally...
2011 Jun 12
0
[LLVMdev] Is LLVM expressive enough to represent asynchronous exceptions?
...s(@whatever,%aeh.try.except.handler0)) > unreachable > aeh.try.except.body0: ; no predecessor > call printf "handler\n" > br label aeh.try.exit0 > aeh.try.exit0: > ;; -----> this would be the no-op<----- > llvm.aeh.exit > br label aeh.try.cont0 > aeh.try.cont0: > <whatever> > } > > I like this one because it is explicit. > > All options here would require a little bit extra futzing to integrate > with C++ exceptions. > > So my question to you is: given that there is interest in proper > Windows su...
2020 Jan 26
2
[RFC] Replacing inalloca with llvm.call.setup and preallocated
...eptional cleanup onto the cleanup stack. Here is what the IR for the previous example would look like, assuming each argument has a constructor that may throw: ```llvm %cs = call token @llvm.call.setup(i32 3) %m0 = call i8* @llvm.call.alloc(token %cs, i32 0) invoke void @ctor0(i8* %m0) to label %cont0 unwind label %cleanupCall cont0: %m1 = call i8* @llvm.call.alloc(token %cs, i32 1) invoke void @ctor1(i8* %m1) to label %cont1 unwind label %cleanup0 cont1: %m2 = call i8* @llvm.call.alloc(token %cs, i32 2) invoke void @ctor2(i8* %m2) to label %cont2 unwind label %cleanup1 cont2: call void...