lebedev.ri added a comment. In D80344#2051804 <https://reviews.llvm.org/D80344#2051804>, @tentzen wrote:
> > It may be helpful (even for the reviewers) to first specify their behavior, > > instead of writing that after-the-fact "backwardly" based on the > > implementation. > > For reviewers, the purpose of those intrinsic are described in Summary > section: Like the disscussion we just had in HWLoops patch, unless the behavior of new intrinsics/etc is stated in langref, they are unspecified. > - Two intrinsic are created to track CPP object scopes; eha_scope_begin() and > eha_scope_end(). _scope_begin() is immediately added after ctor() is called > and EHStack is pushed. So it must be an invoke, not a call. With that it's > also guaranteed an EH-cleanup-pad is created regardless whether there exists > a call in this scope. _scope_end is added before dtor(). These two intrinsics > make the computation of Block-State possible in downstream code gen pass, > even in the presence of ctor/dtor inlining. > - Two intrinsic, seh_try_begin() and seh_try_end(), are added for C-code to > mark _try boundary and to prevent from exceptions being moved across _try > boundary. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D80344/new/ https://reviews.llvm.org/D80344 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits