Qdb
Qdb copied to clipboard
ql.run(begin=begin)时,qdb的cur_addr不在begin
在某些场景下,只想调试指定范围的代码。 启用debuger后,ql.run(begin=begin)时,qdb的PC不在begin位置;而与此同时,gdb却可以正常跳到begin位置运行。
怀疑是qdb.py中,76行到82行之间,对self.ql.loader.entry_point的赋值逻辑有问题,可能没顾及到run中传入的begin即self.ql.entry_point的值。
if self.ql.os.type == QL_OS.BLOB:
self.ql.loader.entry_point = self.ql.loader.load_address
elif init_hook and self.ql.loader.entry_point != init_hook:
self.do_breakpoint(init_hook)
self.cur_addr = self.ql.loader.entry_point