| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
This time's the charm.
llvm-svn: 370552
|
|
|
|
|
|
|
|
|
|
|
|
| |
In r370135 I committed a temporary workaround for the sanitized bot to
not set (DY)LD_LIBRARY_PATH when (DY)LD_INSERT_LIBRARIES was set.
Setting (DY)LD_LIBRARY_PATH is only necessary for (standalone)
shared-library builds, so a better solution is to only set the
environment variable when necessary.
Differential revision: https://reviews.llvm.org/D67012
llvm-svn: 370549
|
|
|
|
|
|
| |
Use `sys.stdout.buffer` instead of `sys.stdout` in lldbpexpect.py.
llvm-svn: 370545
|
|
|
|
|
|
|
|
| |
Currently tests using expect_prompt are failing on the Python 3 bot with
an error saying "argument must be str, not bytes". I don't have a Python
3 build handy, but I suspect this might fix that.
llvm-svn: 370526
|
|
|
|
| |
llvm-svn: 370503
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
My follow-up commit to mess with DYLD_LIBRARY_PATH was bogus for two
reasons:
- The condition was inverted.
- We were checking the OS's environment, instead of the config's.
Two wrongs don't make a right, but the second mistake meant that the
sanitizer bot passed.
llvm-svn: 370483
|
|
|
|
|
|
|
| |
One usage of this option remained, and caused dotest to error out if one
happened to pass the -v flag.
llvm-svn: 370462
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
While working on r370054, i've found it frustrating that the test output
was compeletely unhelpful in case of failures. Therefore I've decided to
improve that. In this I reuse the PExpectTest class, which was one of
our mechanisms for running pexpect tests, but which has gotten orhpaned
in the mean time.
I've replaced the existing send methods with a "expect" method, which
I've tried to design so that it has a similar interface to the expect
method in regular non-pexpect dotest tests (as it essentially does
something very similar). I've kept the ability to dump the transcript of
the pexpect communication to stdout in the "trace" mode, as that is a
very handy way to figure out what the test is doing. I've also removed
the "expect_string" method used in the existing tests -- I've found this
to be unhelpful because it hides the message that would be normally
displayed by the EOF exception. Although vebose, this message includes
some important information, like what strings we were searching for,
what were the last bits of lldb output, etc. I've also beefed up the
class to automatically disable the debug info test duplication, and
auto-skip tests when the host platform does not support pexpect.
This patch ports TestMultilineCompletion and TestIOHandlerCompletion to
the new class. It also deletes TestFormats as it is not testing anything
(definitely not formats) -- it was committed with the test code
commented out (r228207), and then the testing code was deleted in
r356000.
Reviewers: teemperor, JDevlieghere, davide
Subscribers: aprantl, lldb-commits
Differential Revision: https://reviews.llvm.org/D66954
llvm-svn: 370449
|
|
|
|
|
|
|
|
|
| |
LLVMUserExpression doesn't use these variables and they are all specific to Clang.
Also removes m_const_object as this was actually never used by anyone (and Clang
didn't report it as we assigned it in the constructor which seems to count as use).
llvm-svn: 370440
|
|
|
|
|
|
|
|
|
|
|
|
| |
A test is marked unresolved when we're unable to find PASSED or FAILED
in the dotest output. Usually this is because we crashed and when that
happens the exit code can give a clue as to why. This patch adds the
exit code to the lit output to make it easier to investigate those
issues.
Differential revision: https://reviews.llvm.org/D66975
llvm-svn: 370413
|
|
|
|
|
|
| |
Somehow this option was only documented in the swift branch.
llvm-svn: 370395
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, lit tests don't set neither the module cache for building
inferiors nor the module cache used by lldb when running tests.
Furthermore, we have several places where we rely on the path to the
module cache being always the same, rather than passing the correct
value around. This makes it hard to specify a different module cache
path when debugging a a test.
This patch reworks how we determine and pass around the module cache
paths and fixes the omission on the lit side. It also adds a sanity
check to the lit and dotest suites.
Differential revision: https://reviews.llvm.org/D66966
llvm-svn: 370394
|
|
|
|
|
|
|
|
|
|
| |
It used to be possible to enable logging through environment variables
read by dotest. This approach is deprecated, as stated in the dotest
help output. Instead --channel should be used.
Differential revision: https://reviews.llvm.org/D66920
llvm-svn: 370387
|
|
|
|
|
|
|
|
|
|
| |
This removes the curses result formatter which appears to be broken.
Passing --curses to dotest.py screws up my terminal and doesn't run any
tests. It even crashes Python on occasion.
Differential revision: https://reviews.llvm.org/D66917
llvm-svn: 370386
|
|
|
|
|
|
| |
Sometimes it's easier to resolve merge conflict than arguing.
llvm-svn: 370385
|
|
|
|
|
|
|
|
|
|
|
|
| |
context
Currently, we return all the entries such that their decl_ctx pointer >= decl_ctx provided.
Instead, we should return only the ones that decl_ctx pointer == decl_ctx provided.
Differential Revision: https://reviews.llvm.org/D66357
Patch by Guilherme Andrade <guiandrade@google.com>.
llvm-svn: 370374
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The only reason for this function's existance is so that we could pass
the correct size into the DWARFExpression constructor. However, there is
no harm in passing the entire data extractor into the DWARFExpression,
since the same code is performing the size determination as well as the
subsequent parse. So, if we get malformed input or there's a bug in the
parser, we'd compute the wrong size anyway.
Additionally, reducing the number of entry points into the location list
parsing machinery makes it easier to switch the llvm debug_loc(lists)
parsers.
While inside, I added a couple of tests for invalid location list
handling.
Reviewers: JDevlieghere, clayborg
Subscribers: aprantl, javed.absar, kristof.beyls, lldb-commits
Differential Revision: https://reviews.llvm.org/D66789
llvm-svn: 370373
|
|
|
|
| |
llvm-svn: 370316
|
|
|
|
| |
llvm-svn: 370315
|
|
|
|
| |
llvm-svn: 370303
|
|
|
|
| |
llvm-svn: 370302
|
|
|
|
| |
llvm-svn: 370301
|
|
|
|
| |
llvm-svn: 370287
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This is self-contained, and doesn't need anything in the
compiler to work. Mainly to reduce the diff between upstream
and downstream.
Patch by Kuba Mracek!
Reviewers: kubamracek
Subscribers: lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D66915
llvm-svn: 370286
|
|
|
|
|
|
|
|
|
|
|
| |
This removes support for reading the LLDB_TEST_ARGUMENTS environment
variable and instead requires all arguments to be specified as part of
the invocation. This ensures that dotest.py invocations are easily
repeatable.
Differential revision: https://reviews.llvm.org/D66912
llvm-svn: 370278
|
|
|
|
|
|
|
|
| |
This argument was used by dosep.py to pass information around from the
workers. With dosep.py gone, I'm fairly sure we don't need this any
longer.
llvm-svn: 370266
|
|
|
|
|
|
| |
This variable corresponding to this argument is set but never read.
llvm-svn: 370264
|
|
|
|
|
|
|
|
| |
I was looking at the session directory logic for unrelated reasons and
noticed that the logic spread out across dotest. This simplifies things
a bit by moving the logic together.
llvm-svn: 370259
|
|
|
|
|
|
|
| |
GetAPInt should be able to handle all cases. I have plans to generalize
the float dumping logic and this makes it easier to do later.
llvm-svn: 370255
|
|
|
|
|
|
|
|
|
|
| |
Disable the two failing tests until Raphael has a chance to investigate:
Failing Tests (2):
lldb-Suite :: functionalities/completion/TestCompletion.py
lldb-Suite :: functionalities/target_command/TestTargetCommand.py
llvm-svn: 370237
|
|
|
|
|
|
| |
The referenced function `find_test_files_in_dir_tree` no longer exists.
llvm-svn: 370235
|
|
|
|
|
|
|
|
|
|
| |
Now that all supported build systems create a valid dotest.py
invocation, we no longer need to guess the location of the lldb binary
and Python directory.
Differential revision: https://reviews.llvm.org/D66896
llvm-svn: 370234
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now that all supported build systems create a valid dotest.py
invocation, we no longer need to guess the directory where any of the
llvm tools live. Additionally, the current logic is incomplete: it
doesn't try to find any other tools than FileCheck, such as dsymutil for
example.
If no FileCheck is provided, we should print a warning and skip the
tests that need it, but that's not part of this patch.
Differential revision: https://reviews.llvm.org/D66893
llvm-svn: 370232
|
|
|
|
|
|
|
| |
Replacing all spaces with dashes seems like a lot of needless work for a
string that's just printed.
llvm-svn: 370231
|
|
|
|
|
|
|
|
|
| |
This test is passing on the Windows bot:
Unexpected Passing Tests (1):
lldb-Suite :: lang/cpp/operators/TestCppOperators.py
llvm-svn: 370227
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch removes the -q (quiet) flag and changing the default
behavior. Currently the flag serves two purposes that are somewhat
contradictory, as illustrated by the difference between the argument
name (quiet) and the configuration flag (parsable). On the one hand it
reduces output, but on the other hand it prints more output, like the
result of individual tests. My proposal is to guard the extra output
behind the verbose flag and always print the individual test results.
Differential revision: https://reviews.llvm.org/D66837
llvm-svn: 370226
|
|
|
|
|
|
| |
Should make it clearer what actually is going on in there.
llvm-svn: 370201
|
|
|
|
|
|
| |
confuse LLDB
llvm-svn: 370199
|
|
|
|
|
|
|
|
|
|
|
|
| |
Apparently inline tests stop running anything after an empty line
behind an self.expect, which is a very good approach that could
never cause people to write tests that never run.
This patch removes all the empty lines so that all this test
is actually run. Also fixes the broken expects that only passed
because they weren't run before.
llvm-svn: 370195
|
|
|
|
| |
llvm-svn: 370194
|
|
|
|
| |
llvm-svn: 370186
|
|
|
|
|
|
|
|
|
|
| |
The refactoring patch for the option completion broke the completion
for ambiguous long options. As this feature was also untested (as
testing ambiguous options with the current test methods is impossible),
I just noticed now. This patch restores the old behavior and adds a
test for this feature.
llvm-svn: 370185
|
|
|
|
| |
llvm-svn: 370179
|
|
|
|
|
|
|
| |
We no longer have return values or any of the mentioned arguments
in these functions since the introduction of CompletionRequest.
llvm-svn: 370174
|
|
|
|
|
|
|
|
|
|
| |
A new SPI was added to the objc runtime to get class names without
any demangling; AppleObjCRuntimeV2::ParseClassInfoArray was using
the original prototype name but had not been updated for the final
name yet, so lldb was falling back to the old function and doing
extra work for classes that were demangled. This commit fixes that.
llvm-svn: 370152
|
|
|
|
|
|
| |
The old method would throw a KeyError.
llvm-svn: 370138
|
|
|
|
|
|
| |
This test is flaky on GreenDragon. Disable it until we figure out why.
llvm-svn: 370136
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Setting DYLD_INSERT_LIBRARIES to the Asan runtime and DYLD_LIBRARY_PATH
to the LLVM shared library dir causes the test suite to crash with a
segfault. We see this on the LLDB sanitized bot [1] on GreenDragon. I've
spent some time investigating, but I'm not sure what's going on (yet).
Originally I thought this was because we were building compiler-rt and
were loading an incompatible, just-built Asan library. However, the
issue persists even without compiler-rt. It doesn't look like the Asan
runtime is opening any other libraries that might be found in LLVM's
shared library dir and talking to the team confirms that. Another
possible explanation is that we're loading lldb form a place we don't
expect, but that doesn't make sense either, because DYLD_LIBRARY_PATH is
always set without the crash. I tried different Python versions and
interpreters but the issue persist.
As a (temporary?) workaround I propose not setting DYLD_LIBRARY_PATH
when DYLD_INSERT_LIBRARIES is set so we can turn the Asan bot on again
and get useful results.
[1] http://green.lab.llvm.org/green/view/LLDB/job/lldb-cmake-sanitized/
Differential revision: https://reviews.llvm.org/D66845
llvm-svn: 370135
|
|
|
|
|
|
|
|
|
|
|
|
| |
ClangPersistentVariables"
This reverts commit r367842 since it wasn't quite as NFC as advertised
and broke Swift support. See https://reviews.llvm.org/D46083 for the
rationale behind the original functionality.
rdar://problem/54619322
llvm-svn: 370126
|
|
|
|
| |
llvm-svn: 370120
|