[Lldb-commits] [PATCH] Expression evaluation, a new ThreadPlanCallFunctionNoJIT for executing a function call on target via register manipulation

Jim Ingham jingham at apple.com
Wed Jul 1 10:03:10 PDT 2015


I didn't look at the IRInterpreter part of this closely at first, but now looking over this a bit I am concerned about passing the ExecutionContext to CanInterpret, what information is that really providing?  Do we expect some threads could interpret but not others?  This just makes it confusing.  It looks like in fact you only need the architecture, so maybe passing that - or getting it from something you already have your hands on - might be cleaner.

Also a trivial thing, but you do a whole bunch of work in the branch that handles the Call instruction, and then check that the execution context has a process in it, and bail otherwise.  It would be cleaner to check that up front.

Finally, I didn't look at this too closely, but for some purposes it is important to ensure that you don't try to run the target at all.  We should make sure we weren't accidentally using the fact that Interpret didn't run the target, as part of our strategy for implementing this...


REPOSITORY
  rL LLVM

http://reviews.llvm.org/D9404

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the lldb-commits mailing list