#
41ae8e74 |
| 31-Oct-2018 |
Kuba Mracek <mracek@apple.com> |
[lldb] Introduce StackFrameRecognizer [take 3]
This patch introduces a concept of "frame recognizer" and "recognized frame". This should be an extensible mechanism that retrieves information about s
[lldb] Introduce StackFrameRecognizer [take 3]
This patch introduces a concept of "frame recognizer" and "recognized frame". This should be an extensible mechanism that retrieves information about special frames based on ABI, arguments or other special properties of that frame, even without source code. A few examples where that could be useful could be 1) objc_exception_throw, where we'd like to get the current exception, 2) terminate_with_reason and extracting the current terminate string, 3) recognizing Objective-C frames and automatically extracting the receiver+selector, or perhaps all arguments (based on selector).
Differential Revision: https://reviews.llvm.org/D44603
llvm-svn: 345693
show more ...
|
#
cb3628bc |
| 31-Oct-2018 |
Kuba Mracek <mracek@apple.com> |
Revert r345686 due to build failures
llvm-svn: 345688
|
#
8fddd981 |
| 31-Oct-2018 |
Kuba Mracek <mracek@apple.com> |
[lldb] Introduce StackFrameRecognizer [take 2]
This patch introduces a concept of "frame recognizer" and "recognized frame". This should be an extensible mechanism that retrieves information about s
[lldb] Introduce StackFrameRecognizer [take 2]
This patch introduces a concept of "frame recognizer" and "recognized frame". This should be an extensible mechanism that retrieves information about special frames based on ABI, arguments or other special properties of that frame, even without source code. A few examples where that could be useful could be 1) objc_exception_throw, where we'd like to get the current exception, 2) terminate_with_reason and extracting the current terminate string, 3) recognizing Objective-C frames and automatically extracting the receiver+selector, or perhaps all arguments (based on selector).
Differential Revision: https://reviews.llvm.org/D44603
llvm-svn: 345686
show more ...
|
#
377f9f9b |
| 31-Oct-2018 |
Kuba Mracek <mracek@apple.com> |
Revert r345678 (build failure on Linux machines).
llvm-svn: 345680
|
#
ac0ba8c5 |
| 31-Oct-2018 |
Kuba Mracek <mracek@apple.com> |
[lldb] Introduce StackFrameRecognizer
This patch introduces a concept of "frame recognizer" and "recognized frame". This should be an extensible mechanism that retrieves information about special fr
[lldb] Introduce StackFrameRecognizer
This patch introduces a concept of "frame recognizer" and "recognized frame". This should be an extensible mechanism that retrieves information about special frames based on ABI, arguments or other special properties of that frame, even without source code. A few examples where that could be useful could be 1) objc_exception_throw, where we'd like to get the current exception, 2) terminate_with_reason and extracting the current terminate string, 3) recognizing Objective-C frames and automatically extracting the receiver+selector, or perhaps all arguments (based on selector).
Differential Revision: https://reviews.llvm.org/D44603
llvm-svn: 345678
show more ...
|
#
74587a0e |
| 14-Oct-2018 |
Vadim Chugunov <vadimcn@gmail.com> |
Fix double import of _lldb module.
Fix llvm.org/pr39054: - Register _lldb as a built-in module during initialization of script interpreter, - Reverse the order of imports in __init__.py: first try t
Fix double import of _lldb module.
Fix llvm.org/pr39054: - Register _lldb as a built-in module during initialization of script interpreter, - Reverse the order of imports in __init__.py: first try to import by absolute name, which will find the built-in module in the context of lldb (and other hosts that embed liblldb), then try relative import, in case the module is being imported from Python interpreter.
This works for SWIG>=3.0.11; before that, SWIG did not support custom module import code.
Differential revision: https://reviews.llvm.org/D52404
llvm-svn: 344474
show more ...
|
Revision tags: llvmorg-7.0.0 |
|
#
3815e702 |
| 13-Sep-2018 |
Jim Ingham <jingham@apple.com> |
Add a "scripted" breakpoint type to lldb.
This change allows you to write a new breakpoint type where the logic for setting breakpoints is determined by a Python callback written using the SB API's.
Add a "scripted" breakpoint type to lldb.
This change allows you to write a new breakpoint type where the logic for setting breakpoints is determined by a Python callback written using the SB API's.
Differential Revision: https://reviews.llvm.org/D51830
llvm-svn: 342185
show more ...
|
Revision tags: llvmorg-7.0.0-rc3, llvmorg-7.0.0-rc2, llvmorg-7.0.0-rc1 |
|
#
17af5b6e |
| 23-Jul-2018 |
Raphael Isemann <teemperor@gmail.com> |
[NFC] Minor code refactoring.
Subscribers: lldb-commits
Differential Revision: https://reviews.llvm.org/D49696
llvm-svn: 337737
|
#
d6c062bc |
| 13-Jul-2018 |
Raphael Isemann <teemperor@gmail.com> |
No longer pass a StringRef to the Python API
Summary: The refactoring patch for DoExecute missed this case of a variadic function that just silently accepts a StringRef which it then tries to reinte
No longer pass a StringRef to the Python API
Summary: The refactoring patch for DoExecute missed this case of a variadic function that just silently accepts a StringRef which it then tries to reinterpret as a C-string.
This should fix the Windows builds.
Reviewers: stella.stamenova
Reviewed By: stella.stamenova
Subscribers: lldb-commits
Differential Revision: https://reviews.llvm.org/D49309
llvm-svn: 337030
show more ...
|
#
4d51a902 |
| 12-Jul-2018 |
Raphael Isemann <teemperor@gmail.com> |
Get rid of the C-string parameter in DoExecute
Summary: This patch gets rid of the C-string parameter in the RawCommandObject::DoExecute function, making the code simpler and less memory unsafe.
Th
Get rid of the C-string parameter in DoExecute
Summary: This patch gets rid of the C-string parameter in the RawCommandObject::DoExecute function, making the code simpler and less memory unsafe.
There seems to be a assumption in some command objects that this parameter could be a nullptr, but from what I can see the rest of the API doesn't actually allow this (and other command objects and related code pieces dereference this parameter without any checks).
Especially CommandObjectRegexCommand has error handling code for a nullptr that is now gone.
Reviewers: davide, jingham, teemperor
Reviewed By: teemperor
Subscribers: jingham, lldb-commits
Differential Revision: https://reviews.llvm.org/D49207
llvm-svn: 336955
show more ...
|
#
d68983e3 |
| 21-Jun-2018 |
Pavel Labath <labath@google.com> |
Partially revert r335236
Jim pointed out that XCode has build configurations that build without python and removing the ifdefs around the python code breaks them.
This reverts the #ifdef part of th
Partially revert r335236
Jim pointed out that XCode has build configurations that build without python and removing the ifdefs around the python code breaks them.
This reverts the #ifdef part of the above patch, while keeping the cmake parts.
llvm-svn: 335260
show more ...
|
#
bcadb5a3 |
| 21-Jun-2018 |
Pavel Labath <labath@google.com> |
ScriptInterpreterPython cleanup
Instead of #ifdef-ing the contents of all files in the plugin for all non-python builds, just disable the plugin at the cmake level. Also, remove spurious extra linki
ScriptInterpreterPython cleanup
Instead of #ifdef-ing the contents of all files in the plugin for all non-python builds, just disable the plugin at the cmake level. Also, remove spurious extra linking of the Python plugin in liblldb. This plugin is already included as a part of LLDB_ALL_PLUGINS variable.
llvm-svn: 335236
show more ...
|
#
2df331b0 |
| 20-Jun-2018 |
Pavel Labath <labath@google.com> |
Remove dependency from Host to python
Summary: The only reason python was used in the Host module was to compute the python path. I resolve this the same way as D47384 did for clang, by moving the p
Remove dependency from Host to python
Summary: The only reason python was used in the Host module was to compute the python path. I resolve this the same way as D47384 did for clang, by moving the path computation into the python plugin and modifying SBHostOS class to call into this module for ePathTypePythonDir.
Reviewers: zturner, jingham, davide
Subscribers: mgorny, lldb-commits
Differential Revision: https://reviews.llvm.org/D48215
llvm-svn: 335104
show more ...
|
#
60f028ff |
| 19-Jun-2018 |
Pavel Labath <labath@google.com> |
Replace HostInfo::GetLLDBPath with specific functions
Summary: Instead of a function taking an enum value determining which path to return, we now have a suite of functions, each returning a single
Replace HostInfo::GetLLDBPath with specific functions
Summary: Instead of a function taking an enum value determining which path to return, we now have a suite of functions, each returning a single path kind. This makes it easy to move the python-path function into a specific plugin in a follow-up commit.
All the users of GetLLDBPath were converted to call specific functions instead. Most of them were hard-coding the enum value anyway, so this conversion was simple. The only exception was SBHostOS, which I've changed to use a switch on the incoming enum value.
Reviewers: clayborg, zturner
Subscribers: lldb-commits
Differential Revision: https://reviews.llvm.org/D48272
llvm-svn: 335052
show more ...
|
Revision tags: llvmorg-6.0.1, llvmorg-6.0.1-rc3 |
|
#
ad8d48f9 |
| 13-Jun-2018 |
Jonas Devlieghere <jonas@devlieghere.com> |
[FileSpec] Delegate common operations to llvm::sys::path
With the recent changes in FileSpec to use LLVM's path style, it is possible to delegate a bunch of common path operations to LLVM's path hel
[FileSpec] Delegate common operations to llvm::sys::path
With the recent changes in FileSpec to use LLVM's path style, it is possible to delegate a bunch of common path operations to LLVM's path helpers. This means we only have to maintain a single implementation and at the same time can benefit from the efforts made by the rest of the LLVM community.
This is part one of a set of patches. There was no obvious way to split this so I just worked from top to bottom.
Differential revision: https://reviews.llvm.org/D48084
llvm-svn: 334615
show more ...
|
Revision tags: llvmorg-6.0.1-rc2 |
|
#
05097246 |
| 30-Apr-2018 |
Adrian Prantl <aprantl@apple.com> |
Reflow paragraphs in comments.
This is intended as a clean up after the big clang-format commit (r280751), which unfortunately resulted in many of the comment paragraphs in LLDB being very hard to r
Reflow paragraphs in comments.
This is intended as a clean up after the big clang-format commit (r280751), which unfortunately resulted in many of the comment paragraphs in LLDB being very hard to read.
FYI, the script I used was:
import textwrap import commands import os import sys import re tmp = "%s.tmp"%sys.argv[1] out = open(tmp, "w+") with open(sys.argv[1], "r") as f: header = "" text = "" comment = re.compile(r'^( *//) ([^ ].*)$') special = re.compile(r'^((([A-Z]+[: ])|([0-9]+ )).*)|(.*;)$') for line in f: match = comment.match(line) if match and not special.match(match.group(2)): # skip intentionally short comments. if not text and len(match.group(2)) < 40: out.write(line) continue
if text: text += " " + match.group(2) else: header = match.group(1) text = match.group(2)
continue
if text: filled = textwrap.wrap(text, width=(78-len(header)), break_long_words=False) for l in filled: out.write(header+" "+l+'\n') text = ""
out.write(line)
os.rename(tmp, sys.argv[1])
Differential Revision: https://reviews.llvm.org/D46144
llvm-svn: 331197
show more ...
|
Revision tags: llvmorg-6.0.1-rc1, llvmorg-5.0.2, llvmorg-5.0.2-rc2, llvmorg-5.0.2-rc1, llvmorg-6.0.0, llvmorg-6.0.0-rc3, llvmorg-6.0.0-rc2, llvmorg-6.0.0-rc1, llvmorg-5.0.1, llvmorg-5.0.1-rc3, llvmorg-5.0.1-rc2 |
|
#
23502721 |
| 02-Nov-2017 |
Jason Molenda <jmolenda@apple.com> |
Revert r317182 for https://reviews.llvm.org/D39128 we're still failing on android. I'll ask Larry to ask Pavel for any tips he might be able to give.
llvm-svn: 317183
|
#
edc2def4 |
| 02-Nov-2017 |
Jason Molenda <jmolenda@apple.com> |
Commit Lawrence D'Anna's patch to change SetOututFileHandle to work with IOBase.
I did make one change after checking with Larry -- I renamed SBDebugger::Flush to FlushDebuggerOutputHandles and adde
Commit Lawrence D'Anna's patch to change SetOututFileHandle to work with IOBase.
I did make one change after checking with Larry -- I renamed SBDebugger::Flush to FlushDebuggerOutputHandles and added a short docstring to the .i file to make it a little clearer under which context programs may need to use this API.
Differential Revision: https://reviews.llvm.org/D39128 <rdar://problem/34870417>
llvm-svn: 317182
show more ...
|
#
9e27b70a |
| 02-Nov-2017 |
Jason Molenda <jmolenda@apple.com> |
Ahhhh roll back that commit, I didn't see that Lawrence had filed a separate phabracator with the revised change. This was his first atttempt which broke on the bots the second time too.
llvm-svn:
Ahhhh roll back that commit, I didn't see that Lawrence had filed a separate phabracator with the revised change. This was his first atttempt which broke on the bots the second time too.
llvm-svn: 317181
show more ...
|
#
c139a402 |
| 02-Nov-2017 |
Jason Molenda <jmolenda@apple.com> |
Commit Lawrence D'Anna's patch to change SetOututFileHandle to work with IOBase.
I did make one change after checking with Larry -- I renamed SBDebugger::Flush to FlushDebuggerOutputHandles and adde
Commit Lawrence D'Anna's patch to change SetOututFileHandle to work with IOBase.
I did make one change after checking with Larry -- I renamed SBDebugger::Flush to FlushDebuggerOutputHandles and added a short docstring to the .i file to make it a little clearer under which context programs may need to use this API.
Differential Revision: https://reviews.llvm.org/D38829
llvm-svn: 317180
show more ...
|
Revision tags: llvmorg-5.0.1-rc1 |
|
#
ef96986a |
| 17-Oct-2017 |
Jason Molenda <jmolenda@apple.com> |
Reverting r315966 - it caused a build failure on an ubuntu x android bot.
llvm-svn: 315967
|
#
695a1f6e |
| 17-Oct-2017 |
Jason Molenda <jmolenda@apple.com> |
Committing this for Larry D'Anna:
This patch adds support for passing an arbitrary python stream (anything inheriting from IOBase) to SetOutputFileHandle or SetErrorFileHandle.
Differential revisio
Committing this for Larry D'Anna:
This patch adds support for passing an arbitrary python stream (anything inheriting from IOBase) to SetOutputFileHandle or SetErrorFileHandle.
Differential revision: https://reviews.llvm.org/D38829 <rdar://problem/34870417>
llvm-svn: 315966
show more ...
|
Revision tags: llvmorg-5.0.0, llvmorg-5.0.0-rc5, llvmorg-5.0.0-rc4, llvmorg-5.0.0-rc3, llvmorg-5.0.0-rc2, llvmorg-5.0.0-rc1 |
|
#
ac43c1bb |
| 09-Jul-2017 |
Zachary Turner <zturner@google.com> |
Don't access Python objects while not holding the GIL.
Patch by Tatyana Krasnukha Differential Revision: https://reviews.llvm.org/D34942
llvm-svn: 307512
|
#
38d0632e |
| 29-Jun-2017 |
Pavel Labath <labath@google.com> |
Move Timer and TraceOptions from Core to Utility
Summary: The classes have no dependencies, and they are used both by lldb and lldb-server, so it makes sense for them to live in the lowest layers.
Move Timer and TraceOptions from Core to Utility
Summary: The classes have no dependencies, and they are used both by lldb and lldb-server, so it makes sense for them to live in the lowest layers.
Reviewers: zturner, jingham
Subscribers: emaste, mgorny, lldb-commits
Differential Revision: https://reviews.llvm.org/D34746
llvm-svn: 306682
show more ...
|
Revision tags: llvmorg-4.0.1, llvmorg-4.0.1-rc3, llvmorg-4.0.1-rc2 |
|
#
f9d16476 |
| 15-May-2017 |
Pavel Labath <labath@google.com> |
Remove an expensive lock from Timer
The Timer destructor would grab a global mutex in order to update execution time. Add a class to define a category once, statically; the class adds itself to an a
Remove an expensive lock from Timer
The Timer destructor would grab a global mutex in order to update execution time. Add a class to define a category once, statically; the class adds itself to an atomic singly linked list, and thus subsequent updates only need to use an atomic rather than grab a lock and perform a hashtable lookup.
Differential Revision: https://reviews.llvm.org/D32823 Patch by Scott Smith <scott.smith@purestorage.com>.
llvm-svn: 303058
show more ...
|