Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
No description, website, or topics provided.
Similar implementation of .gdbinit from fG! for lldb in python How to install it: cp lldbinit.py /Library/Python/2.7/site-packages in $HOME/.lldbinit add: command script import lldbinit If you want latest lldb, to compile it from svn we need to do: svn co http://llvm.org/svn/llvm-project/lldb/trunk lldb xcodebuild -configuration Release Commands which are implemented: stepo - step over some instructions (call/movs/stos/cmps/loop) dd - dump hex data at certain address (keep compatibility with .gdbinit) this shoud be db command ctx/context - dump registers and assembly lb - load breakpoints from file and apply them (currently only func names are applied) lb_rva - load breakpoints from file and apply to main executable, only RVA in this case and command will determine main program base and apply breaks u - dump instructions at certain address (SoftICE like u command style) ddword - dump data as dword dq - dump data as qword dw - dump data as word iphone - connect to debugserver running on iPhone findmem - command to search memory [options] -s searches for specified string -u searches for specified unicode string -b searches binary (eg. -b 4142434445 will find ABCDE anywhere in mem) -d searches dword (eg. -d 0x41414141) -q searches qword (eg. -d 0x4141414141414141) -f loads patern from file if it's tooooo big to fit into any of specified options -c specify if you want to find N occurances (default is all) bt - broken... and removed, now thread/frame information is by default shown on every hook-stop by lldb itself... hook-stop can be added only when target exists, before it's not possible (maybe in later versions of lldb it is or will be possible but...). Trick to get arround this is to create thread which will try to add hook-stop, and will continue doing so until it's done. This could cause some raise conditions as I don't know if this is thread safe, however in my testing (and using it) it worked quite well so I keep using it instead of adding extra command "init" or such when target is created... Currently registers dump are done for i386/x86_64/arm For supported ARM types for iPhone check here: source/Plugins/Platform/MacOSX/PlatformDarwin.cpp PlatformDarwin::ARMGetSupportedArchitectureAtIndex <-- maybe wrong, but you have idea what they support