mirror of
https://github.com/Gericom/teak-llvm.git
synced 2025-06-20 20:15:49 -04:00

Jim pointed out that the LLDB global variables should only be available in interactive mode. When used from a command for example, their values might be stale or not at all what the user expects. Therefore we want to explicitly make these variables unavailable. Differential revision: https://reviews.llvm.org/D67685 llvm-svn: 372192
22 lines
863 B
Python
22 lines
863 B
Python
# encoding: utf-8
|
|
|
|
import lldb
|
|
|
|
class MyFrameRecognizer(object):
|
|
def get_recognized_arguments(self, frame):
|
|
if frame.name == "foo":
|
|
arg1 = frame.EvaluateExpression("$arg1").signed
|
|
arg2 = frame.EvaluateExpression("$arg2").signed
|
|
val1 = frame.GetThread().GetProcess().GetTarget().CreateValueFromExpression("a", "%d" % arg1)
|
|
val2 = frame.GetThread().GetProcess().GetTarget().CreateValueFromExpression("b", "%d" % arg2)
|
|
return [val1, val2]
|
|
elif frame.name == "bar":
|
|
arg1 = frame.EvaluateExpression("$arg1").signed
|
|
val1 = frame.GetThread().GetProcess().GetTarget().CreateValueFromExpression("a", "(int *)%d" % arg1)
|
|
return [val1]
|
|
return []
|
|
|
|
class MyOtherFrameRecognizer(object):
|
|
def get_recognized_arguments(self, frame):
|
|
return []
|