Commit Graph

2294 Commits

Author SHA1 Message Date
Ed Maste b04fb08c8a Add annotation for test failure due to clang 3.4
FreeBSD recently updated to Clang 3.4 and the TestFormatters test case
started failing as it omits the C1 complete object constructor when not
needed.

llvm.org/pr19011

llvm-svn: 204652
2014-03-24 18:30:59 +00:00
Jim Ingham 74287f4a12 Adapt test to avoid short string types.
llvm-svn: 204295
2014-03-20 02:21:17 +00:00
Jim Ingham c81a99eb48 More recent compilers emit debug info for the length property of NSString, so the length will be correctly
reported as NSUInteger.  Adopt the test case to handle either possibility.

llvm-svn: 204288
2014-03-20 01:08:27 +00:00
Jim Ingham 4e2084d792 expectedFailureDarwin for this test case.
llvm-svn: 204287
2014-03-20 00:19:16 +00:00
Jim Ingham c49d0d4fe6 I changed the logging test to just test that logging doesn't crash and does produce output. That's
about all it is useful to test.

llvm-svn: 204284
2014-03-19 23:55:54 +00:00
Jim Ingham a7d63fc610 These logging tests depend on the exact output of lldb logging, which is brittle
and not particularly useful.  Skipping till we get a chance to make a test that 
actually tests something we care about.

llvm-svn: 204283
2014-03-19 23:50:48 +00:00
Jim Ingham 040e26a945 Remember to run ranlib after ar to make useful archive files.
llvm-svn: 204282
2014-03-19 23:38:22 +00:00
Jim Ingham 1b15136b52 Remove unnecessary dependence on vecLib.
llvm-svn: 204281
2014-03-19 23:25:11 +00:00
Jim Ingham 7675035235 Check if "golden_output.txt" exists before trying to delete it rather than just raising an uncaught error.
llvm-svn: 204258
2014-03-19 19:45:37 +00:00
Jim Ingham 3a520a9373 Put a workaround for flaky unwinder behavior on Darwin (<rdar://problem/16363195>).
llvm-svn: 204254
2014-03-19 17:50:46 +00:00
Jim Ingham 3a0bcc032a Add a test to check the C's constructor's name is C::C, which will fail everywhere now,
so mark as expected fail.  And find another way to check that we hit our constructor
breakpoint, so we don't need to expected fail the Disassembly tests.

llvm-svn: 204209
2014-03-19 01:54:41 +00:00
Jim Ingham ac57f43072 Don't use the Disassembly test to report the fact that we don't decorate up
constructors with their class name, that seems inessential.  We can make another
test specifically for this if we want to.

llvm-svn: 204208
2014-03-19 01:41:19 +00:00
Jim Ingham 39771db637 Work around clang's ignoring __attribute ( align(16) ) in this test case.
llvm-svn: 204207
2014-03-19 00:50:08 +00:00
Jim Ingham 8e522094b2 Expected failure printing std::string::c_str() due to flubbing the typedef lookup.
llvm-svn: 204206
2014-03-19 00:30:31 +00:00
Steve Pucci 44ba171ae3 Inform users when *not* running dosep.ty multithreaded.
The gain with multithreading is large, but turning it on requires
an environment variable and so is hard for users to discover.  This
gives users a way to discover the feature by printing out a message
when the environment variable is not set.

llvm-svn: 204018
2014-03-16 18:23:59 +00:00
Jim Ingham 20e1458795 Test cases for stepping out past frames with no debug info if that is turned on.
llvm-svn: 203993
2014-03-15 00:57:48 +00:00
Jason Molenda b00cc1f92f Refactor the Queues test case a little based on feedback from Jim.
Add queues tests for when libBacktraceRecording is absent.

llvm-svn: 203864
2014-03-13 23:04:22 +00:00
Jason Molenda 846952f5d4 Also check if the queues are serial or concurrent.
llvm-svn: 203755
2014-03-13 05:43:18 +00:00
Jason Molenda 7f8b9111a5 Add a quick test case for some of the queues debugging support.
It should only run on Darwin systems, and only when a couple of
libraries are available.

llvm-svn: 203754
2014-03-13 05:37:51 +00:00
Jim Ingham 4b4b2478fc This commit reworks how the thread plan's ShouldStopHere mechanism works, so that it is useful not only
for customizing "step-in" behavior (e.g. step-in doesn't step into code with no debug info), but also 
the behavior of step-in/step-out and step-over when they step out of the frame they started in.

I also added as a proof of concept of this reworking a mode for stepping where stepping out of a frame
into a frame with no debug information will continue stepping out till it arrives at a frame that does
have debug information.  This is useful when you are debugging callback based code where the callbacks
are separated from the code that initiated them by some library glue you don't care about, among other
things.

llvm-svn: 203747
2014-03-13 02:47:14 +00:00
Jason Molenda 53b8ea1c89 Need to use rm -rf on dSYM bundle directories.
llvm-svn: 203332
2014-03-08 01:53:27 +00:00
Ed Maste c5a3c9f483 Use predefined $(RM) in clean rule, and -r only for (expected) directories
llvm-svn: 203271
2014-03-07 19:11:00 +00:00
Ed Maste 49f359aea4 Fix malloc thread step-out test on FreeBSD
After hitting the malloc() breakpoint on FreeBSD our top frame is actually
an inlined function malloc_init.

  * frame #0: 0x0000000800dcba19 libc.so.7`malloc [inlined] malloc_init at malloc.c:5397
    frame #1: 0x0000000800dcba19 libc.so.7`malloc(size=1024) + 9 at malloc.c:5949
    frame #2: 0x00000000004006e5 test_step_out_of_malloc_into_function_b_with_dwarf`b(val=1) + 37 at main2.cpp:29

Add a heuristic to keep stepping out until we come to a non-malloc caller,
before checking if it is our desired caller from the test code.

llvm.org/pr17944

llvm-svn: 203268
2014-03-07 19:02:20 +00:00
Ed Maste 0990e05d43 Fix test 'make clean' target for empty $(DSYM) on FreeBSD
A freebsd issue with rm prevents '[g]make clean' from working if $(DSYM)
is empty (fts_open(3) fails if passed an empty argument).

To work around this, simplify the clean target by using three separate
rm invocations: one for the common files, one for the case of non-empty
$(DYLIB_NAME), and one for non-empty $(DSYM).

Issue diagnosed (and reported to FreeBSD) by John Wolfe.

llvm.org/pr17933

llvm-svn: 203253
2014-03-07 17:20:50 +00:00
Ed Maste 11cbb11611 Add decorator for recent FreeBSD failure
llvm.org/pr19075

llvm-svn: 203245
2014-03-07 14:50:29 +00:00
Steve Pucci befe2b1c48 This commit provides support for running the dosep.ty test driver with multiple threads.
It speeds up running the full test suite on my HP z620 Ubuntu machine with 32 hyperthreaded CPUs from 11 minutes to about 1m13s (about 9x).

The default behavior is to run single-threaded as before.  If the environment variable LLDB_TEST_THREADS is set, a Python work queue is set up with that many worker threads.

To avoid collisions within a test directory where multiple tests make use of the same prebuilt executable, the unit of work for the worker threads is a single directory (that is, all tests within a directory are processed in the normal serial way by a single thread).

tfiala & I have run this way a number of times; the only issue I found was that the TestProcessAttach.py test failed once, when attempting to attach to the process "a.out" by name.  I assume this is because some other thread was running an executable of that name at the same time, and we were attempting to attach to the wrong one, so I changed that test to use a different executable name (that change is also included in this commit).

llvm-svn: 203180
2014-03-07 00:01:11 +00:00
Todd Fiala c25fd190ef Modified some test annotations so that tests on Linux that should be skipped don't show up as XFAIL.
The following two tests showed up as XFAIL even though they should
always be skipped on Linux, due to the @unittest2.expectedFailure
annotation appearing above the @dsym_test annotation:

TestObjCNewSyntax.ObjCNewSyntaxTestCase.test_expr_with_dsym
TestBlocks.BlocksTestCase.test_expr_with_dsym.

For those two, I simply moved the @dsym_test annotation to the top so
that it would be marked for skip ahead of being marked for XFAIL.

TestObjCNewSyntax.ObjCNewSyntaxTestCase.test_expr_with_dwarf I marked
as @skipIfLinux since my understanding is that isn't a valid test to
run on Linux. So rather than categorize as a fail (i.e. something
wrong to be fixed), just skip it. (My recent changes to Linux tests
have been following that model: if it could never work, skip; if it's
broken, mark XFAIL so we can easily track, fix, notice the fix and
adjust accordingly).

TestDeadStrip.DeadStripTestCase.test_with_dwarf I had previously
marked as XFAIL but this would never work on Linux with the current
linker AFAICT.  Marked it as skip.

llvm-svn: 202788
2014-03-04 05:28:24 +00:00
Ed Maste aa954d1188 Update test class name and comment to match test
llvm-svn: 202718
2014-03-03 15:01:28 +00:00
Todd Fiala d6ed44f926 Converted TestDeadStrip.py to be expected failure on Linux.
llvm-svn: 202522
2014-02-28 18:16:50 +00:00
Todd Fiala bae1d15491 Adjust TestExprDoesntBlock.py to be expected failure on Linux.
I suspect I may have misrun the test previously for check-in
r202456 re: pr15258.  This test fails consistently on my end.
I changed the test to expected failure on Linux.

llvm-svn: 202517
2014-02-28 17:49:20 +00:00
Todd Fiala 163bc1da1b Enabled TestSetWatchlocation.py on Linux.
This worked 25 out of 25 times for me on Ubuntu 12.04 LTS x86_64 built
with gcc 4.8.2 and the July 2013 libedit.

llvm-svn: 202516
2014-02-28 17:28:44 +00:00
Todd Fiala 4112545855 Converted TestRegisterVariables to run on Linux and skip with clang.
TestRegisterVariables.test_with_dwarf_and_run_command was being
skipped on Linux due to issues with clang. I converted it to a
@expectedFailureClang and no longer skip on Linux.

llvm-svn: 202515
2014-02-28 17:19:20 +00:00
Todd Fiala 319758af88 Converted TestConstVariables expected failure to @expectedFailureClang.
TestConstVariables.py was disabled on Linux and marked as
unconditional expected failure. This change removes the Linux disable
and makes the expected failure conditional on using clang. The test
runs fine on gcc-built lldb.

llvm-svn: 202514
2014-02-28 17:13:42 +00:00
Ed Maste c71f60f4a1 Restore signal delivery to the inferior on FreeBSD
This was broken in the threaded inferior implementation for FreeBSD
(r196787) and caused FreeBSD to resume always with no signal.

llvm-svn: 202513
2014-02-28 17:13:39 +00:00
Todd Fiala 4c523d3f8d Enable TestExitDuringBreak.test_with_dwarf on Linux.
This test passed 50 out of 50 times for me on Unbuntu 12.04 LTS x86_64
with lldb built using gcc 4.8.2 and July 2013 libedit.

This is related to:
http://llvm.org/bugs/show_bug.cgi?id=16170

llvm-svn: 202512
2014-02-28 17:04:04 +00:00
Todd Fiala 9ce4a73c89 Adjust TestConcurrentEvents.py test running for Linux.
Related to this bug:
http://llvm.org/bugs/show_bug.cgi?id=16714

On TOT lldb svn r202507, I found several of the tests disabled within
TestConcurrentEvents.py to run fine, and several of them to fail 100%
of the time on my system (25 out of 25 times).

This changes the following tests for Linux:

Enables (these all work consistently):
* test_many_watchpoints_dwarf
* test_signal_watch_break_dwarf (line 250)
* test_signal_watch_break_dwarf (line 260 - same named test?)
* test_crash_with_watchpoint_dwarf
* test_crash_with_watchpoint_breakpoint_signal_dwarf
* test_delayed_crash_with_breakpoint_watchpoint_dwarf

Marks as expected failure (these all fail consistently):
* test_many_watchpoints_dwarf
* test_watch_break_dwarf
* test_delay_watch_break_dwarf
* test_watch_break_dwarf_delay
* test_signal_watch_dwarf
* test_delay_signal_watch_dwarf
* test_signal_delay_watch_dwarf
* test_two_breakpoints_one_watchpoint_dwarf
* test_breakpoints_delayed_breakpoint_one_watchpoint_dwarf
* test_two_watchpoint_threads_dwarf
* test_watchpoint_with_delay_watchpoint_threads_dwarf
* test_two_watchpoints_one_breakpoint_dwarf
* test_two_watchpoints_one_delay_breakpoint_dwarf
* test_watchpoint_delay_watchpoint_one_breakpoint_dwarf
* test_two_watchpoints_one_signal_dwarf
* test_signal_watch_break_dwarf

llvm-svn: 202511
2014-02-28 16:50:05 +00:00
Todd Fiala 722311edc8 Enabled TestBreakAfterJoin.py on Linux.
This is related to:
http://llvm.org/bugs/show_bug.cgi?id=16170

This test ran successfully 40 out of 40 times on Ubuntu 12.04 LTS
x86_64.

llvm-svn: 202508
2014-02-28 15:54:36 +00:00
Todd Fiala f9dc4b7373 Change TestStopHookMechanism to @expectedFailureLinux.
Similar to my previous check-in related to:
http://llvm.org/bugs/show_bug.cgi?id=15037

10 out of 10 runs of this failed.  Mark it XFAIL.

llvm-svn: 202507
2014-02-28 15:47:48 +00:00
Todd Fiala 71c53fb25b Marked linux TestStopHookMultipleThreads as expected failure.
Related to this bug:
http://llvm.org/bugs/show_bug.cgi?id=15037

Previously this was marked as skipped. I tried running it 10 times in
a row and it failed every time. Switched it to XFAIL.

llvm-svn: 202506
2014-02-28 15:26:10 +00:00
Todd Fiala 550b1a298a Re-enable TestExprDoesntBlock.py on Linux.
This is related to:
http://llvm.org/bugs/show_bug.cgi?id=15258

I ran this test 10 times successfully against Ubuntu 12.04 LTS x86_64
with lldb built with gcc 4.8.2 and July 2013 libedit.

llvm-svn: 202456
2014-02-28 00:46:57 +00:00
Todd Fiala 7ffb2b0b53 Enable TestCallThatRestarts test on Linux.
This is related to:
http://llvm.org/bugs/show_bug.cgi?id=15278

I ran this 20 times in a row without failure at svn r202440 on Ubuntu
12.04 LTS x86_64 using July 2013 libedit and gcc 4.8.2.

llvm-svn: 202448
2014-02-28 00:20:10 +00:00
Todd Fiala 347284f82d Re-enable TestMultithreaded.py test on Linux.
I could not get http://llvm.org/bugs/show_bug.cgi?id=16016)
to fail on my end running 10 times in a row.  Re-enabling
the test.

llvm-svn: 202446
2014-02-28 00:13:00 +00:00
Enrico Granata dc598febe4 Make TestStdCXXDisassembly.StdCXXDisassembleTestCase work with libc++
<rdar://problem/16115219>

llvm-svn: 202180
2014-02-25 18:47:23 +00:00
Ed Maste c00c6e661f Remove TestConnectRemote decorator for FreeBSD
Failure is not reproducible on ToT LLDB locally or on the buildbot.

llvm.org/pr18313

llvm-svn: 202043
2014-02-24 15:10:00 +00:00
Ed Maste 9cd270e26e Stop skipping test on FreeBSD that no longer fails
llvm.org/pr17232

llvm-svn: 201928
2014-02-22 03:13:12 +00:00
Ed Maste 4fe0aba12b On FreeBSD "x86_64" is spelled "amd64"
llvm-svn: 201802
2014-02-20 18:40:01 +00:00
Ed Maste c30e764942 Treat 'amd64' as 'x86_64' as done for other tests
And add a decorator for llvm.org/pr18200

Patch by John Wolfe.

llvm-svn: 201708
2014-02-19 18:55:39 +00:00
Ed Maste a4be2c5dcd FreeBSD hardware watchpoint implementation
Implement x86_64 debug register read/write in support of hardware
watchpoints. Hoist LinuxThread::TraceNotify code back into
POSIXThread::TraceNotify()

Patch by John Wolfe.

We still need to rework this later to avoid the #ifdef FreeBSD.

llvm-reviews.chandlerc.com/D2572
llvm.org/pr16706

llvm-svn: 201706
2014-02-19 18:34:06 +00:00
Ed Maste 01fd1c60cd Update decorator for test that still fails with FreeBSD Watchpoint support
llvm.org/pr18832

llvm-svn: 201705
2014-02-19 18:26:48 +00:00
Enrico Granata 08a04327a9 <rdar://problem/15960553>
Fix a bug where calling SBFrame::FindValue() would cause a copy of all variables in the block to be inserted in the frame's variable list, regardless of whether those same variables were there or not - which means one could end up with a frame with lots of duplicate copies of the same variables

llvm-svn: 201614
2014-02-18 23:48:11 +00:00
Ed Maste 63f358baad Eliminate kernel warning when running tests on FreeBSD
pexpect had a hack to work around some old buggy platforms, and as a
result of the hack running the tests on FreeBSD produced a stream of
kernel warnings in the system log:

  Feb 5 17:19:11 feynman kernel: WARNING pid 11323 (python2.7):
    ioctl sign-extension ioctl ffffffff80087467

The hack has now been removed upstream, so remove it here too.

llvm.org/pr18749

llvm-svn: 201603
2014-02-18 21:33:10 +00:00
Enrico Granata 465f4bc287 <rdar://problem/16006373>
Revert the spirit of r199857 - a convincing case can be made that overriding a summary's format markers behind its back is not the right thing to do
This commit reverts the behavior of the code to the previous model, and changes the test case to validate the opposite of what it was validating before

llvm-svn: 201455
2014-02-15 01:24:44 +00:00
Ed Maste 96d7f449b1 Adjust logging test case after r201372
The final "HandleCommand, command succeeded" for "log disable lldb"
doesn't make it to the log file before the command takes effect.

llvm-svn: 201422
2014-02-14 16:06:35 +00:00
Ed Maste 96430645eb Update decorators for tests that still fail with FreeBSD Watchpoint support
llvm.org/pr18832

Reported by John Wolfe

llvm-svn: 201418
2014-02-14 14:52:10 +00:00
Todd Fiala 6bb55ba42b Re-enable TestAbbreviations.py on Linux after test fix.
See http://llvm.org/bugs/show_bug.cgi?id=18816.

llvm-svn: 201357
2014-02-13 19:21:13 +00:00
Greg Clayton 8b963bbd07 Fixed a test suite failure on Darwin due to logging issues.
llvm-svn: 201356
2014-02-13 18:30:23 +00:00
Ed Maste 2a798d9c05 Remove decorator for fixed test
llvm.org/pr18805 fixed by r201270

llvm-svn: 201284
2014-02-13 01:10:20 +00:00
Greg Clayton c7d8885be4 Fixed the TestLogging test.
llvm-svn: 201273
2014-02-12 23:46:08 +00:00
Greg Clayton fdde7ccf37 Fixed the functionalities/abbreviation/TestAbbreviations.py test case.
llvm-svn: 201270
2014-02-12 23:40:31 +00:00
Todd Fiala 027baff8a0 Change TestAbbreviations test to expected failure on Linux.
See http://llvm.org/bugs/show_bug.cgi?id=18816.
Likely the same issue as http://llvm.org/bugs/show_bug.cgi?id=18805.

llvm-svn: 201244
2014-02-12 17:50:26 +00:00
Ed Maste 197305e916 Remove decorator for llvm.org/pr17233
This test was skipped as it used to segfault on FreeBSD.  It seems
the original issue has since been fixed, so have the test run again.

llvm-svn: 201169
2014-02-11 18:55:19 +00:00
Ed Maste acbfbbb20f Remove FreeBSD decorator for llvm.org/pr17499 (no longer fails)
llvm-svn: 201168
2014-02-11 18:36:26 +00:00
Ed Maste 65edfe3ed1 Remove decorators for llvm.org/pr17920 fixed by r200646
llvm-svn: 201167
2014-02-11 18:34:26 +00:00
Ed Maste 8744d38ee8 Update decorator for FreeBSD failure pr18066
The test expects the inferior to have exited, but it is still stopped.

llvm.org/pr18066

llvm-svn: 201166
2014-02-11 18:28:18 +00:00
Ed Maste 3fb0a9cc6f Add decorator for llvm.org/pr18805 until root cause is identified
llvm-svn: 201153
2014-02-11 13:50:45 +00:00
Sean Callanan c5c3a3c92c Added a test case for variables in registers, with
clang -O1.

<rdar://problem/15767528>

llvm-svn: 201005
2014-02-07 23:04:57 +00:00
Sean Callanan d6be7085c2 Removed spurious lookup of the $__lldb_expr
selector when compiling an expression in an
Objective-C context.

<rdar://problem/15797390>

llvm-svn: 200950
2014-02-06 22:24:11 +00:00
Ed Maste cc8068f2ac Remove failure decorators for FreeBSD bug
The issue described in llvm.org/pr18065 is actually due to FreeBSD bug
theads/186309 [1], which is now fixed in FreeBSD SVN r261354 [2] and will
be merged to release branches shortly.

Diagnosed and fixed by John Wolfe.

[1] http://www.freebsd.org/cgi/query-pr.cgi?pr=186309
[2] http://svnweb.freebsd.org/base?view=revision&revision=261354

llvm-svn: 200648
2014-02-02 19:29:50 +00:00
Ed Maste dbd5950b63 Use libc++ on FreeBSD as on Darwin
This could use some refinement still, but the previous behaviour of adding
-stdlib=libstc++ on FreeBSD w/ Clang is the least likely case to work.

llvm.org/pr17910

llvm-svn: 200646
2014-02-02 19:24:15 +00:00
Todd Fiala 31cb474e2d Fix for failure to unwind Linux stack frames with call in final position.
Fixes http://llvm.org/bugs/show_bug.cgi?id=18656.

Note this exposes a failure on Linux of
TestInferiorAssert.test_inferior_asserting_disassemble, similar to how
it fails on FreeBSD. I'll file a bug for this next. We're now getting
another frame beyond where we used to prior to this fix, so the fix is
exposing failures in previosly not-reachable frames.

Much thanks to Jason Molenda, who had much to do with helping figure
out where unwinding was breaking.

llvm-svn: 200600
2014-02-01 00:48:34 +00:00
Todd Fiala 3452df6723 Fixed b18655: cleaned up script interpreter file reference handling.
This change addresses shutdown crashes in the python lldb module when
the script interpreter was hanging on to saved file references after
leaving a session.  It also gets rid of extra references to the
stdin/stdout/stderr python file objects that are created when entering
the session.

This change also moves the bundled pyexpect 2.4 library to the front
of the python library path so that a python distribution default
pyexpect (2.3 in Ubuntu 12.04) is not picked up first.

llvm-svn: 200486
2014-01-30 20:19:22 +00:00
Greg Clayton 44d937820b Merging the iohandler branch back into main.
The many many benefits include:
1 - Input/Output/Error streams are now handled as real streams not a push style input
2 - auto completion in python embedded interpreter
3 - multi-line input for "script" and "expression" commands now allow you to edit previous/next lines using up and down arrow keys and this makes multi-line input actually a viable thing to use
4 - it is now possible to use curses to drive LLDB (please try the "gui" command)

We will need to deal with and fix any buildbot failures and tests and arise now that input/output and error are correctly hooked up in all cases.

llvm-svn: 200263
2014-01-27 23:43:24 +00:00
Enrico Granata 5000ee16f6 <rdar://problem/15776874>
ValueObjectPrinter could enter an infinite loop while trying to display an aptly formed ValueObject: a reference, with a child of some pointer type, such that the pointees chain ended up pointing back to some part of itself - a pointer to itself being the simplest such case

Fixed here by only setting a pointer depth when needed, and ensuring that we won't overflow and wrap the pointer depth when it's zero.

llvm-svn: 200247
2014-01-27 21:31:26 +00:00
Greg Clayton bc8911807c Fixed a test suite exception that was cause by bad python (sys.unlink instead of os.unlink).
llvm-svn: 199952
2014-01-23 22:53:05 +00:00
Enrico Granata 90890bba04 If a user specifies a format option to frame variable or expression, that format should prevail over whatever format(s) a summary specifies
(see test case for an example)

llvm-svn: 199857
2014-01-23 01:21:18 +00:00
Ed Maste e108405aaf Relax alias test for failing command
The alias test "exprf x 1234" expands to "expr -f x 1234" and is
expected to fail: it ends up trying to evaluate the invalid expression

    void
    $__lldb_expr(void *$__lldb_arg)
    {
        -f x 1234;
    }

On FreeBSD LLDB ends up finding a static function f() in a math library,
and thus the error produced does not include "use of undeclared
identifier 'f'".

We will report failure to parse the expression in any case, so require
only that error message.

llvm-svn: 199623
2014-01-20 03:45:47 +00:00
Ed Maste c5efc526c8 Remove decorators for now-fixed pr18191
llvm-svn: 199557
2014-01-18 17:03:41 +00:00
Ed Maste f170add239 Add decorator for failing FreeBSD test
llvm-svn: 199551
2014-01-18 16:23:30 +00:00
Ed Maste c787822545 Add decorator for FreeBSD test failure pr18522
llvm-svn: 199550
2014-01-18 14:29:57 +00:00
Ed Maste e8b2ef56e1 Handle LLDB_LIB_DIR on FreeBSD as on Linux
Diagnosed and tested by Mike Ma.
http://llvm.org/pr18191

llvm-svn: 199549
2014-01-18 14:22:28 +00:00
Ed Maste cbcf8ac51a Undo r199448, already implemented in r199426
llvm-svn: 199449
2014-01-17 00:53:01 +00:00
Ed Maste 1318b854a4 Link thread-specific breakpoint test against libpthread
llvm-svn: 199448
2014-01-17 00:48:11 +00:00
Todd Fiala a475693947 Fix bug in Linux remote dynamic loader setup and fix test.
Part 1 changes PlatformLinux::CreateInstance to always create with
is_host=false; that method is only used as the plug-in creator method
associated with the remote-linux platform plugin, and should therefore
always be remote.

Part 1 patch by Steve Pucci.

Part 2: fix a test break on linux.

In test/functionalities/thread/thread_specific_break, when using gcc,
either C99 mode would need to be enabled, or the code would need to
change.  I changed a couple loop variable definitions to conform
to pre-C99 to simplify testing the fix.  The second issue was
the necessity to include -lpthread as a linker option in the Makefile.

Any issues with that part are due to me (Todd Fiala).

llvm-svn: 199426
2014-01-16 21:22:11 +00:00
Jim Ingham 39fdae7f6a Fix a bug where if we stop but nobody says there was a reason for the stop, we would return
control to the user anyway.  This was put in to handle monitors that would say there was no
stop reason when you first attached to them.  But it broke the case where you hit a thread specific
breakpoint on many threads, but NOT the one specified in the breakpoint.  I work around this
by only doing the junky override when the StopID is 0 - i.e. on first attach.

This commit also adds a test for thread specific breakpoints.

llvm-svn: 199290
2014-01-15 03:32:42 +00:00
Jim Ingham 4746a90d66 Change the name of the test class for this test (was copy/paste value...)
llvm-svn: 199251
2014-01-14 19:48:23 +00:00
Jim Ingham 0f7e294d65 Remove a compilation warning in the test case main.c file.
llvm-svn: 199243
2014-01-14 18:46:15 +00:00
Jim Ingham fc4a4e4e51 This is a macosx specific test case for stepping & setting breakpoints on indirect
and re-exported symbols.  I don't know if Linux has the latter, if it does, we could
probably make this a generic test.  Somebody who knows how to make these gadgets on 
Linux can maybe take a look...

llvm-svn: 199134
2014-01-13 20:44:26 +00:00
Greg Clayton fd6e4b91b7 Make sure to cleanup the "dwarf-lookups.txt" log file.
llvm-svn: 198984
2014-01-11 00:54:56 +00:00
Greg Clayton c26e63e986 We are doing spurious name lookups when running expressions in objective C methods.
<rdar://problem/15797390>

This new test case will detect this and make sure we don't regress on global name lookups that search all DWARF for everything when we don't need to.

llvm-svn: 198982
2014-01-11 00:29:50 +00:00
Greg Clayton 9485dcfb1a Fixed the assertion test case.
llvm-svn: 198962
2014-01-10 22:22:44 +00:00
Greg Clayton 14aa26bbb5 Fixed the connect remote test.
llvm-svn: 198961
2014-01-10 22:21:12 +00:00
Enrico Granata 29726a94ce Alignment fix
llvm-svn: 198731
2014-01-08 03:14:18 +00:00
Enrico Granata 30f287fde5 Add a new way to bind a format to a type: by enum type
The "type format add" command gets a new flag --type (-t). If you pass -t <sometype>, upon fetching the value for an object of your type,
LLDB will display it as-if it was of enumeration type <sometype>
This is useful in cases of non-contiguous enums where there are empty gaps of unspecified values, and as such one cannot type their variables as the enum type,
but users would still like to see them as-if they were of the enum type (e.g. DWARF field types with their user-reserved ranges)

The SB API has also been improved to handle both types of formats, and a test case is added

llvm-svn: 198105
2013-12-28 08:44:02 +00:00
Ed Maste 4d31d5499f Add decorator for GDB connect test failing on FreeBSD
llvm.org/pr18313

llvm-svn: 197910
2013-12-23 15:22:07 +00:00
Greg Clayton c694751a06 Correctly set the working directory when launching processes for both local and remote targets.
llvm-svn: 197266
2013-12-13 19:18:59 +00:00
Greg Clayton d3b16b3c03 Fixed the size of the malloc buffer to match the size of the string that is memcpy'ed so we don't crash in a fiery ball of death when running the test suite on darwin.
llvm-svn: 197200
2013-12-13 02:02:44 +00:00
Ed Maste ccc2ebcc83 test: Skip failure on FreeBSD from test infrastructure issue
test_convenience_registers_16bit_with_process_attach fails due to
pr18200.  The test has a @expectedFailureFreeBSD decorator, but it
appears this does not catch a RuntimError exception raised in the test
infrastructure, so the test still reports failure.  For now just skip
it.

llvm-svn: 197174
2013-12-12 20:26:08 +00:00
Enrico Granata 601ec50ac9 Actually initialize the magic pointer to NULL safely
llvm-svn: 197107
2013-12-12 01:47:35 +00:00
Enrico Granata 739050236e Having binary files in a repository is not a good thing
With this checkin, we use the installed clang compiler to build crashinfo.so from crashinfo.c upon every test suite execution
We also try to cleanup after ourselves, which of course will only work if the test suite does not actually crash

llvm-svn: 197106
2013-12-12 01:42:17 +00:00
Enrico Granata 2c3f140551 <rdar://problem/15640353>
Add an hook for the test suite into the OSX-only CrashReporter "App-specific info"

This allows the test suite to set the crash info to the name and file location of every test as the test gets executed
If the test suite crashes, the crash log will then report which test is the culprit, even when not using verbose mode

This only works on OSX, and defaults to not doing anything on other platforms, but OS/platform-specific invocations
can be devised by each individual platform

llvm-svn: 197095
2013-12-12 00:02:05 +00:00