History log of /llvm-project-15.0.7/lldb/source/Target/StackFrame.cpp (Results 51 – 75 of 189)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-4.0.1-rc2
# 97206d57 12-May-2017 Zachary Turner <[email protected]>

Rename Error -> Status.

This renames the LLDB error class to Status, as discussed
on the lldb-dev mailing list.

A change of this magnitude cannot easily be done without
find and replace, but that h

Rename Error -> Status.

This renames the LLDB error class to Status, as discussed
on the lldb-dev mailing list.

A change of this magnitude cannot easily be done without
find and replace, but that has potential to catch unwanted
occurrences of common strings such as "Error". Every effort
was made to find all the obvious things such as the word "Error"
appearing in a string, etc, but it's possible there are still
some lingering occurences left around. Hopefully nothing too
serious.

llvm-svn: 302872

show more ...


Revision tags: llvmorg-4.0.1-rc1
# bdbdd229 12-Apr-2017 Jim Ingham <[email protected]>

Teach SBFrame how to guess its language.

<rdar://problem/31411646>

llvm-svn: 300012


# 2f3df613 06-Apr-2017 Zachary Turner <[email protected]>

iwyu fixes for lldbCore.

This adjusts header file includes for headers and source files
in Core. In doing so, one dependency cycle is eliminated
because all the includes from Core to that project w

iwyu fixes for lldbCore.

This adjusts header file includes for headers and source files
in Core. In doing so, one dependency cycle is eliminated
because all the includes from Core to that project were dead
includes anyway. In places where some files in other projects
were only compiling due to a transitive include from another
header, fixups have been made so that those files also include
the header they need. Tested on Windows and Linux, and plan
to address failures on OSX and FreeBSD after watching the
bots.

llvm-svn: 299714

show more ...


# 99d1e28a 31-Mar-2017 Jim Ingham <[email protected]>

DisassembleRange can return an empty DisassemblerSP
check for it.

<rdar://problem/31379799>

llvm-svn: 299276


# 4c08fe28 31-Mar-2017 Tamas Berghammer <[email protected]>

Add support for sythetic operator dereference

Summary:
After this change a sythetic child provider can generate a special child
named "$$dereference$$" what if present is used when "operator*" or
"o

Add support for sythetic operator dereference

Summary:
After this change a sythetic child provider can generate a special child
named "$$dereference$$" what if present is used when "operator*" or
"operator->" used on a ValueObject. The goal of the change is to make
expressions like "up->foo" work inside the "frame variable" command.

Reviewers: labath, jingham

Subscribers: lldb-commits

Differential Revision: https://reviews.llvm.org/D31368

llvm-svn: 299251

show more ...


Revision tags: llvmorg-4.0.0, llvmorg-4.0.0-rc4, llvmorg-4.0.0-rc3
# 3bc714b2 02-Mar-2017 Zachary Turner <[email protected]>

Fix various warnings. NFC

llvm-svn: 296717


# 8b3f2160 28-Feb-2017 Zachary Turner <[email protected]>

Fix incorrect logic in StackFrame::Disassemble.

This had broken as the result of some previous cleanup.

llvm-svn: 296495


Revision tags: llvmorg-4.0.0-rc2, llvmorg-4.0.0-rc1, llvmorg-3.9.1, llvmorg-3.9.1-rc3, llvmorg-3.9.1-rc2, llvmorg-3.9.1-rc1
# 7edc3a6e 21-Nov-2016 Zachary Turner <[email protected]>

Fix a bug caught by adding LLVM_NODISCARD to StringRef.

llvm-svn: 287598


# 0eb31a1d 17-Nov-2016 Zachary Turner <[email protected]>

Fix warnings and errors introduced with UUID changes.

llvm-svn: 287208


# 24bd3178 17-Nov-2016 Zachary Turner <[email protected]>

Make GetValueForVariableExpression use StringRef.

Also significantly reduced the indentation level by use of
early returns, and simplified some of the logic by using
StringRef functions such as cons

Make GetValueForVariableExpression use StringRef.

Also significantly reduced the indentation level by use of
early returns, and simplified some of the logic by using
StringRef functions such as consumeInteger() and getAsInteger()
instead of strtoll, etc.

llvm-svn: 287189

show more ...


# c156427d 16-Nov-2016 Zachary Turner <[email protected]>

Don't allow direct access to StreamString's internal buffer.

This is a large API change that removes the two functions from
StreamString that return a std::string& and a const std::string&,
and inst

Don't allow direct access to StreamString's internal buffer.

This is a large API change that removes the two functions from
StreamString that return a std::string& and a const std::string&,
and instead provide one function which returns a StringRef.

Direct access to the underlying buffer violates the concept of
a "stream" which is intended to provide forward only access,
and makes porting to llvm::raw_ostream more difficult in the
future.

Differential Revision: https://reviews.llvm.org/D26698

llvm-svn: 287152

show more ...


# 22a2628f 12-Nov-2016 Zachary Turner <[email protected]>

Make ValueObjectMemory::Create accept StringRefs.

llvm-svn: 286726


# 5a8ad459 05-Oct-2016 Zachary Turner <[email protected]>

Make lldb -Werror clean on Windows.

Differential Revision: https://reviews.llvm.org/D25247

llvm-svn: 283344


# a0a1d2db 29-Sep-2016 Sean Callanan <[email protected]>

Introduced a null check to avoid a crash in a test on i386.

llvm-svn: 282653


# 228e4abb 21-Sep-2016 Ed Maste <[email protected]>

Fix -Wcovered-switch-default warning in StackFrame.cpp

The switch coveres all possible values. If a new one is added in the
future the compiler will start warning, providing a notification that
the

Fix -Wcovered-switch-default warning in StackFrame.cpp

The switch coveres all possible values. If a new one is added in the
future the compiler will start warning, providing a notification that
the switch needs updating.

llvm-svn: 282111

show more ...


# 9666ba75 21-Sep-2016 Todd Fiala <[email protected]>

add stop column highlighting support

This change introduces optional marking of the column within a source
line where a thread is stopped. This marking will show up when the
source code for a threa

add stop column highlighting support

This change introduces optional marking of the column within a source
line where a thread is stopped. This marking will show up when the
source code for a thread stop is displayed, when the debug info
knows the column information, and if the optional column marking is
enabled.

There are two separate methods for handling the marking of the stop
column:

* via ANSI terminal codes, which are added inline to the source line
display. The default ANSI mark-up is to underline the column.

* via a pure text-based caret that is added in the appropriate column
in a newly-inserted blank line underneath the source line in
question.

There are some new options that control how this all works.

* settings set stop-show-column

This takes one of 4 values:

* ansi-or-caret: use the ANSI terminal code mechanism if LLDB
is running with color enabled; if not, use the caret-based,
pure text method (see the "caret" mode below).

* ansi: only use the ANSI terminal code mechanism to highlight
the stop line. If LLDB is running with color disabled, no
stop column marking will occur.

* caret: only use the pure text caret method, which introduces
a newly-inserted line underneath the current line, where
the only character in the new line is a caret that highlights
the stop column in question.

* none: no stop column marking will be attempted.

* settings set stop-show-column-ansi-prefix

This is a text format that indicates the ANSI formatting
code to insert into the stream immediately preceding the
column where the stop column character will be marked up.
It defaults to ${ansi.underline}; however, it can contain
any valid LLDB format codes, e.g.

${ansi.fg.red}${ansi.bold}${ansi.underline}

* settings set stop-show-column-ansi-suffix

This is the text format that specifies the ANSI terminal
codes to end the markup that was started with the prefix
described above. It defaults to: ${ansi.normal}. This
should be sufficient for the common cases.

Significant leg-work was done by Adrian Prantl. (Thanks, Adrian!)

differential review: https://reviews.llvm.org/D20835

reviewers: clayborg, jingham
llvm-svn: 282105

show more ...


# 561a9bbf 14-Sep-2016 Sean Callanan <[email protected]>

More cleanup in `frame diagnose,` eliminating a bunch of messy cases.

llvm-svn: 281545


# aa4b44c6 14-Sep-2016 Sean Callanan <[email protected]>

Replaced two instances of std::function with auto.

Thanks to Zachary Turner for the suggestion. It's distasteful that the actual
type of the lambda can't be spelled out, but it should be evident fr

Replaced two instances of std::function with auto.

Thanks to Zachary Turner for the suggestion. It's distasteful that the actual
type of the lambda can't be spelled out, but it should be evident from the
definition of the lambda body.

llvm-svn: 281536

show more ...


# 0ac172d8 14-Sep-2016 Sean Callanan <[email protected]>

Cleaned up a little bit of redundant code in 'frame diagnose.`

llvm-svn: 281534


# 50857108 14-Sep-2016 Sean Callanan <[email protected]>

Cleaned up the code that handles function return addresses in "frame diagnose."

llvm-svn: 281428


# 807ee2ff 13-Sep-2016 Sean Callanan <[email protected]>

Cleaned up some of the "frame diagnose" code to use Operands as currency.

Also added some utility functions around Operands to make code easier and more
compact to write.

llvm-svn: 281398


# 4f730dc7 12-Sep-2016 Ilia K <[email protected]>

Fix about a dozen compile warnings

Summary:
It fixes the following compile warnings:
1. '0' flag ignored with precision and ‘%d’ gnu_printf format
2. enumeral and non-enumeral type in conditional ex

Fix about a dozen compile warnings

Summary:
It fixes the following compile warnings:
1. '0' flag ignored with precision and ‘%d’ gnu_printf format
2. enumeral and non-enumeral type in conditional expression
3. format ‘%d’ expects argument of type ‘int’, but argument 4 has type ...
4. enumeration value ‘...’ not handled in switch
5. cast from type ‘const uint64_t* {aka ...}’ to type ‘int64_t* {aka ...}’ casts away qualifiers
6. extra ‘;’
7. comparison between signed and unsigned integer expressions
8. variable ‘register_operand’ set but not used
9. control reaches end of non-void function

Reviewers: jingham, emaste, zturner, clayborg

Subscribers: lldb-commits

Differential Revision: https://reviews.llvm.org/D24331

llvm-svn: 281191

show more ...


# 0b4c26b2 08-Sep-2016 Jason Molenda <[email protected]>

I'm experimenting with changing how the mixed source & assembly
mode in lldb works. I've been discussing this with Jim Ingham,
Greg Clayton, and Kate Stone for the past week or two.

Previously lldb

I'm experimenting with changing how the mixed source & assembly
mode in lldb works. I've been discussing this with Jim Ingham,
Greg Clayton, and Kate Stone for the past week or two.

Previously lldb would print three source lines (centered on the
line table entry line for the current line) followed by the assembly.
It would print the context information (module`function + offset)
before those three lines of source.

Now lldb will print up to two lines before/after the line table
entry. It prints two '*' characters for the line table line to
make it clear what line is showing assembly. There is one line of
whitespace before/after the source lines so the separation between
source & assembly is clearer. I don't print the context line
(module`function + offset). I stop printing context lines if it's
a different line table entry, or if it's a source line I've already
printed as context to another source line. If I have two line table
entries one after another for the same source line (I get these often
with clang - with different column information in them), I only print
the source line once.

I'm also using the target.process.thread.step-avoid-regexp setting
(which keeps you from stepping into STL functions that have been inlined
into your own code) and avoid printing any source lines from functions
that match that regexp.

When lldb disassembles into a new function, it will try to find the
declaration line # for the function and print all of the source lines
between the decl and the first line table entry (usually a { curly brace)
so we have a good chance of including the arguments, at least with the
debug info emitted by clang.

Finally, the # of source lines of context to show has been separated
from whether we're doing mixed source & assembly or not. Previously
specifying 0 lines of context would turn off mixed source & assembly.

I think there's room for improvement, and maybe some bugs I haven't
found yet, but it's in good enough shape to upstream and iterate at
this point.

I'm not sure how best to indicate which source line is the actual line
table # versus context lines. I'm using '**' right now. Both Kate
and Greg had the initial idea to reuse '->' (normally used to indicate
"currently executing source line") - I tried it but I wasn't thrilled,
I'm too used to the established meaning of ->.

Greg had the interesting idea of avoiding context source lines only
in two line table entries in the same source file. So we'd print
two lines before & after a source line, and then the next line table
entry (if it was on the next source line after those two context lines)
we'd display only the following two lines -- the previous two had just
been printed. If an inline source line was printed between these two,
though, we'd print the context lines for both of them. It's an
interesting idea, and I want to see how it works with both -O0 and -O3
codegen where we have different amounts of inlining.

<rdar://problem/27961419>

llvm-svn: 280906

show more ...


# b9c1b51e 06-Sep-2016 Kate Stone <[email protected]>

*** This commit represents a complete reformatting of the LLDB source code
*** to conform to clang-format’s LLVM style. This kind of mass change has
*** two obvious implications:

Firstly, merging t

*** This commit represents a complete reformatting of the LLDB source code
*** to conform to clang-format’s LLVM style. This kind of mass change has
*** two obvious implications:

Firstly, merging this particular commit into a downstream fork may be a huge
effort. Alternatively, it may be worth merging all changes up to this commit,
performing the same reformatting operation locally, and then discarding the
merge for this particular commit. The commands used to accomplish this
reformatting were as follows (with current working directory as the root of
the repository):

find . \( -iname "*.c" -or -iname "*.cpp" -or -iname "*.h" -or -iname "*.mm" \) -exec clang-format -i {} +
find . -iname "*.py" -exec autopep8 --in-place --aggressive --aggressive {} + ;

The version of clang-format used was 3.9.0, and autopep8 was 1.2.4.

Secondly, “blame” style tools will generally point to this commit instead of
a meaningful prior commit. There are alternatives available that will attempt
to look through this change and find the appropriate prior commit. YMMV.

llvm-svn: 280751

show more ...


# 5cf1ece2 06-Sep-2016 Pavel Labath <[email protected]>

Fix build breakage in r280692

The commit introduced an array of const objects, which libstdc++ does not like. Make the object
non-const.

Also fix a compiler warning while I'm in there.

llvm-svn: 2

Fix build breakage in r280692

The commit introduced an array of const objects, which libstdc++ does not like. Make the object
non-const.

Also fix a compiler warning while I'm in there.

llvm-svn: 280697

show more ...


12345678