| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
the test should no longer crash, but we need to investigate why ToT clang still generates debug
info we don't understand.
llvm-svn: 268619
|
|
|
|
| |
llvm-svn: 268616
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D19943
llvm-svn: 268574
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Fixed semicolon placement in the lambda in the test itself.
2. Fixed lldbinline tests in general so that we don't attempt tests on platforms that don't use the given type of debug info. (For example, no DWO tests on Windows.) This fixes one of the two failures on Windows. (TestLambdas.py was the only inline test that wasn't XFailed or skipped on Windows.)
3. Set the error string in IRInterpreter::CanInterpret so that the caller doesn't print (null) instead of an explanation. I don't entirely understand the error, so feel free to suggest a better wording.
4. XFailed the test on Windows. The interpreter won't evaluate the lambda because the module has multiple function bodies. I don't exactly understand why that's a problem for the interpreter nor why the problem arises only on Windows.
Differential Revision: http://reviews.llvm.org/D19606
llvm-svn: 268573
|
|
|
|
|
|
|
|
|
| |
Also added a data formatter that presents them as structs if you use frame
variable to look at their contents. Now the blocks testcase works.
<rdar://problem/15984431>
llvm-svn: 268307
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: clayborg
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D19751
llvm-svn: 268135
|
|
|
|
|
|
|
|
|
| |
a bitfield member doesn't lie within the bit bounds of the type itself, just leave it out so we don't get clang asserting and killing our IDE when it gets unhappy with the information.
https://llvm.org/bugs/show_bug.cgi?id=27515
<rdar://problem/21082998>
llvm-svn: 268110
|
|
|
|
|
|
|
|
| |
or asserting.
<rdar://problem/23776428>
llvm-svn: 268098
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In templated const functions, trying to run an expression would produce the
error
error: out-of-line definition of '$__lldb_expr' does not match any declaration
in 'foo' member declaration does not match because it is const qualified
error: 1 error parsing expression
which is no good. It turned out we don't actually need to worry about "const,"
we just need to be consistent about the declaration of the expression and the
FunctionDecl we inject into the class for "this."
Also added a test case.
<rdar://problem/24985958>
llvm-svn: 268083
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Started failing after rL267895.
Possibly related to http://llvm.org/pr27510.
Reviewers: labath, tfiala
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D19680
llvm-svn: 267923
|
|
|
|
|
|
|
|
|
|
| |
$__lldb_expr."
This reverts commit r267833 as it breaks the build. It looks like some work in progress got
committed together with the actual fix, but I'm not sure which one is which, so I'll revert the
whole patch and let author resumbit it after fixing the build error.
llvm-svn: 267861
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In templated const functions, trying to run an expression would produce the
error
error: out-of-line definition of '$__lldb_expr' does not match any declaration in 'foo'
member declaration does not match because it is const qualified
error: 1 error parsing expression
which is no good. It turned out we don't actually need to worry about "const,"
we just need to be consistent about the declaration of the expression and the
FunctionDecl we inject into the class for "this."
Also added a test case.
<rdar://problem/24985958>
llvm-svn: 267833
|
|
|
|
|
|
| |
The flakyness is no longer reproducible, and the tests seem to be passing reliably now.
llvm-svn: 267704
|
|
|
|
|
|
|
|
| |
Use __attribute__((regparm(x))) to ensure the compiler enregisters at least some arguments when calling functions.
Differential Revision: http://reviews.llvm.org/D19548
llvm-svn: 267616
|
|
|
|
|
|
|
| |
tracked by:
https://llvm.org/bugs/show_bug.cgi?id=27515
llvm-svn: 267421
|
|
|
|
|
|
|
| |
Test added in r267248 exposed a bug in handling of dwarf produced by clang>=3.9, which causes a
crash during expression evaluation. Skip the test until this is sorted out.
llvm-svn: 267407
|
|
|
|
|
|
|
|
| |
Some older versions of clang emitted bit offsets that were negative and these bitfields would have their bitfield-ness stripped off and it would cause a clang assertion in clang assertions were enabled. I updated the bitfield C test to make sure we don't regress.
<rdar://problem/21082998>
llvm-svn: 267248
|
|
|
|
|
|
| |
information when using precompiled headers and -gmodules.
llvm-svn: 266791
|
|
|
|
| |
llvm-svn: 266400
|
|
|
|
|
|
| |
<rdar://problem/25739133>
llvm-svn: 266397
|
|
|
|
|
|
| |
<rdar://problem/25738696>
llvm-svn: 266389
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A number of test cases were failing on big-endian systems simply due to
byte order assumptions in the tests themselves, and no underlying bug
in LLDB.
These two test cases:
tools/lldb-server/lldbgdbserverutils.py
python_api/process/TestProcessAPI.py
actually check for big-endian target byte order, but contain Python errors
in the corresponding code paths.
These test cases:
functionalities/data-formatter/data-formatter-python-synth/TestDataFormatterPythonSynth.py
functionalities/data-formatter/data-formatter-smart-array/TestDataFormatterSmartArray.py
functionalities/data-formatter/synthcapping/TestSyntheticCapping.py
lang/cpp/frame-var-anon-unions/TestFrameVariableAnonymousUnions.py
python_api/sbdata/TestSBData.py (first change)
could be fixed to check for big-endian target byte order and update the
expected result strings accordingly. For the two synthetic tests, I've
also updated the source to make sure the fake_a value is always nonzero
on both big- and little-endian platforms.
These test case:
python_api/sbdata/TestSBData.py (second change)
functionalities/memory/cache/TestMemoryCache.py
simply accessed memory with the wrong size, which wasn't noticed on LE
but fails on BE.
Differential Revision: http://reviews.llvm.org/D18985
llvm-svn: 266315
|
|
|
|
| |
llvm-svn: 266054
|
|
|
|
| |
llvm-svn: 265527
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This test sets the compiler optimization level to -O1 and
makes some assumptions about how local frame vars will be
stored (i.e. in registers). These assumptions are not always
true.
I did a first-pass set of improvements that:
(1) no longer assumes that every one of the target locations has
every variable in a register. Sometimes the compiler
is even smarter and skips the register entirely.
(2) simply expects one of the 5 or so variables it checks
to be in a register.
This test probably passes on a whole lot more systems than it
used to now. This is certainly true on OS X.
llvm-svn: 265498
|
|
|
|
|
|
|
| |
The test was failing on windows because the clean rule (which is executed even if the test is
skipped) returned an error there.
llvm-svn: 265140
|
|
|
|
|
|
| |
<rdar://problem/25447765>
llvm-svn: 264914
|
|
|
|
|
|
|
| |
the main reason is that our decorator contains extra fluff to "expect" crashes (which seem to
happen occasionaly on the android buildbot).
llvm-svn: 263633
|
|
|
|
|
|
|
|
|
|
| |
In r262970 this was changed from xfail Clang < 3.5 to > 3.5, but it
still fails on FreeBSD 10's system Clang 3.4.1 so assume it fails on
all versions.
llvm.org/pr26937
llvm-svn: 263467
|
|
|
|
|
|
|
|
|
|
| |
struct/union
When the parent of an expression is anonymous, skip adding '.' or '->' before the expression name.
Differential Revision: http://reviews.llvm.org/D18005
llvm-svn: 263166
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
GCC does not emit DW_AT_data_member_location for members of a union.
Starting with a 0 value for member locations helps is reading union types
in such cases.
Reviewers: clayborg
Subscribers: ldrumm, lldb-commits
Differential Revision: http://reviews.llvm.org/D18008
llvm-svn: 263085
|
|
|
|
|
|
|
|
| |
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D17972
llvm-svn: 262970
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The System-V x86_64 ABI requires floating point values to be passed
in 128-but SSE vector registers (xmm0, ...). When printing such a
variable this currently yields an <invalid load address>.
This patch makes LLDB's DWARF expression evaluator accept 128-bit
registers as scalars. It also relaxes the check that the size of the
result of the DWARF expression be equal to the size of the variable to a
greater-than. DWARF defers to the ABI how smaller values are being placed
in a larger register.
Implementation note: I found the code in Value::SetContext() that changes
the m_value_type after the fact to be questionable. I added a sanity check
that the Value's memory buffer has indeed been written to (this is
necessary, because we may have a scalar value in a vector register), but
really I feel like this is the wrong place to be setting it.
Reviewed by Greg Clayton.
http://reviews.llvm.org/D17897
rdar://problem/24944340
llvm-svn: 262947
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The inlining semantics for C and C++ are different, which affects the test's expectation of the number of times the function should appear in the binary. In the case of this test, C semantics means there should be three instances of inner_inline, while C++ semantics means there should be only two.
On Windows, clang uses C++ inline semantics even for C code, and there doesn't seem to be a combination of compiler flags to avoid this.
So, for consistency, I've recast the test to use C++ everywhere. Since the test resided under lang/c, it seemed appropriate to move it to lang/cpp.
This does not address the other XFAIL for this test on Linux/gcc. See https://llvm.org/bugs/show_bug.cgi?id=26710
Differential Revision: http://reviews.llvm.org/D17650
llvm-svn: 262255
|
|
|
|
|
|
|
|
|
| |
"sif <target function>" - i.e. step-into-function
to allow you to step through a complex calling sequence into a particular function that may span multiple lines. Also some
test cases for this and the --step-target feature.
llvm-svn: 261953
|
|
|
|
|
|
|
|
| |
Test expects the breakpoint to resolve to three locations, but clang on windows yields only 2.
llvm.org/pr26710
llvm-svn: 261810
|
|
|
|
| |
llvm-svn: 261630
|
|
|
|
| |
llvm-svn: 261599
|
|
|
|
|
|
|
|
| |
All invocations are updated to use the generic expectedFailureAll.
Differential Revision: http://reviews.llvm.org/D17455
llvm-svn: 261355
|
|
|
|
|
|
|
|
| |
Both Linux and FreeBSD had a comment "This needs to be root-caused."
It looks like the failure has been fixed on both, and the Linux XFAIL
decorator was removed in r233716 (Mar 2015).
llvm-svn: 261333
|
|
|
|
|
|
| |
Test should work everywhere except windows now.
llvm-svn: 261314
|
|
|
|
|
|
|
| |
Test cases should not be named after PR or Radar numbers. It's fine to
annotate them with these numbers in comments, however.
llvm-svn: 260699
|
|
|
|
| |
llvm-svn: 260440
|
|
|
|
| |
llvm-svn: 260422
|
|
|
|
|
|
|
|
|
|
| |
CFLAGS is now being set correctly to pass -flimit-debug-info or
-fno-limit-debug-info on FreeBSD. I'm not sure which change is
responsible for the fix, though.
llvm.org/pr25626
llvm-svn: 260330
|
|
|
|
|
|
|
| |
These were supposed to have been removed in a previous patch,
but I missed them.
llvm-svn: 260291
|
|
|
|
|
|
| |
All existing usages were ported over to the common decorators.
llvm-svn: 260290
|
|
|
|
|
|
| |
Ported everything over to using expectedFailureAll.
llvm-svn: 260289
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This removes the following decorators:
* skipIfI386
* expectedFailureI386
* expectedFailurex86_64
* skipIfArch
* skipUnlessArch
* skipUnlessI386
And other related decorators. All code using those decorators
is updated to use expectedFailureAll and skipIf
llvm-svn: 260178
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Change the `not_in` function to be called `no_match`. This makes
it clear that keyword arguments can be more than just lists.
* Change the name of `_check_list_or_lambda` to
`_match_decorator_property`. Again clarifying that decorator params
are not always lists.
* Always use a regex match when matching strings. This allows automatic
support for regex matching on all decorator properties. Also support
compiled regex values.
* Fix a bug in the compiler check used by _decorateTest. The two
arguments were reversed, the condition was always wrong.
* Change one test that uses skipUnlessArch to use skipIf, to
demonstrate that skipIf can now handle more scenarios.
Differential Revision: http://reviews.llvm.org/D16938
llvm-svn: 260135
|