a watchpoint for either the variable encapsulated by SBValue (Watch) or the pointee encapsulated by SBValue (WatchPointee). Removed SBFrame::WatchValue() and SBFrame::WatchLocation() API as a result of that. Modified the watchpoint related test suite to reflect the change. Plus replacing WatchpointLocation with Watchpoint throughout the code base. There are still cleanups to be dome. This patch passes the whole test suite. Check it in so that we aggressively catch regressions. llvm-svn: 141925
38 lines
1.0 KiB
Python
38 lines
1.0 KiB
Python
"""
|
|
Fuzz tests an object after the default construction to make sure it does not crash lldb.
|
|
"""
|
|
|
|
import sys
|
|
import lldb
|
|
|
|
def fuzz_obj(obj):
|
|
obj.GetFrameID()
|
|
obj.GetPC()
|
|
obj.SetPC(0xffffffff)
|
|
obj.GetSP()
|
|
obj.GetFP()
|
|
obj.GetPCAddress()
|
|
obj.GetSymbolContext(0)
|
|
obj.GetModule()
|
|
obj.GetCompileUnit()
|
|
obj.GetFunction()
|
|
obj.GetSymbol()
|
|
obj.GetBlock()
|
|
obj.GetFunctionName()
|
|
obj.IsInlined()
|
|
obj.EvaluateExpression("x + y")
|
|
obj.EvaluateExpression("x + y", lldb.eDynamicCanRunTarget)
|
|
obj.GetFrameBlock()
|
|
obj.GetLineEntry()
|
|
obj.GetThread()
|
|
obj.Disassemble()
|
|
obj.GetVariables(True, True, True, True)
|
|
obj.GetVariables(True, True, True, False, lldb.eDynamicCanRunTarget)
|
|
obj.GetRegisters()
|
|
obj.FindVariable("my_var")
|
|
obj.FindVariable("my_var", lldb.eDynamicCanRunTarget)
|
|
obj.FindValue("your_var", lldb.eValueTypeVariableGlobal)
|
|
obj.FindValue("your_var", lldb.eValueTypeVariableStatic, lldb.eDynamicCanRunTarget)
|
|
obj.GetDescription(lldb.SBStream())
|
|
obj.Clear()
|