You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am not sure this endProfiling function would be called. This has something to do with the exception handling in c++. I think endProfiling should be added before that terminate call.
The text was updated successfully, but these errors were encountered:
I've been getting a similar issue, though not entirely identical (the symptom is the same as the title of this issue, so I'll leave it here). In my case, main() is not having an endProfiling call placed before the return (following snippet is from main() in IR):
I have found that it might be because that LLFI cannot deal with exception handling in C++ well. The program I am using is complex, but I guess you can find a c++ file with exception blocks (try/catch) and see how it goes.
I found a case when I was running llfi. This is the generated profiling IR:
%178 = landingpad { i8_, i32 } personality i8_ bitcast (i32 (...)* @gxx_personality_v0 to i8)
catch i8 null, !llfi_index !15416
call void @doProfiling(i32 59)
%179 = extractvalue { i8_, i32 } %178, 0, !llfi_index !15417
call void @doProfiling(i32 57)
call void @_clang_call_terminate(i8 %179) #11, !llfi_index !15418
call void @endProfiling()
unreachable, !llfi_index !15419
I am not sure this endProfiling function would be called. This has something to do with the exception handling in c++. I think endProfiling should be added before that terminate call.
The text was updated successfully, but these errors were encountered: