[Lldb-commits] [PATCH] D15978: Prevent infinite recursive loop in AppleObjCTrampolineHandler constructor

Jim Ingham via lldb-commits lldb-commits at lists.llvm.org
Thu Jan 7 18:01:26 PST 2016


jingham added a comment.

Ah, right.  We're doing that so that we can make sure that an ObjC Exception thrown during the course of expression evaluation doesn't unwind past the frame we are using to call the function.

Seems like for low-level stuff like AllocateMemory we should be avoiding all this extra work, which you can do by calling options.SetTrapExceptions(false) on the ExpressionEvaluationOptions that you pass in to the thread plan in InferiorCallMmap in InferiorCallPOSIX.cpp.

Would you mind checking that adding that bit to InferiorCallMmap (without your change to avoid recursion fixes the problem as well.)  I don't mind the current change as well, but it would be really nice to get the ObjC runtime out of the picture when trying to allocate memory...


http://reviews.llvm.org/D15978





More information about the lldb-commits mailing list