Fix new noreturn test on !darwin platforms

r221575 introduced a NoreturnUnwind test that did not skip the dsym
test on non-darwin platforms, and had the @dwarf_test case as an exact
copy of the dsym case (including the test name, test_with_dsym).


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221611 91177308-0d34-0410-b5e6-96231b3b80d8
Fix a problem reported by Ed Maste where the test harness was failing to call bound methods as cleanup hooks

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221624 91177308-0d34-0410-b5e6-96231b3b80d8
Fix selectors not being objc-uniquified in the expression parser after a recent renaming in clang (clang change for revision 221451). This broke all objective C expressions in LLDB.

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221632 91177308-0d34-0410-b5e6-96231b3b80d8
Fix comments to match the current reality.

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221633 91177308-0d34-0410-b5e6-96231b3b80d8
Fix some compiler warnings, one of which was a legit bug.

MSVC warns that not all control paths return a value when a switch
doesn't have a default case handler.  Changed explicit value checks
to a default check.

Also, it caught a case where bitwise AND was being used instead of
logical AND.  I'm not sure what this fixes, but presumably it is
not covered by any kind of test case.

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221636 91177308-0d34-0410-b5e6-96231b3b80d8
[ProcessWindows] Notify process plugin when the launch succeeds.

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221637 91177308-0d34-0410-b5e6-96231b3b80d8
Cleaned up the StringLexer a little bit.  It turns
out we only want to roll back text that was in the
buffer to begin with, so it's not necessary to
provide a pushback stack.

I'm going to use this slightly cleaner API to perform
lookahead for the Objective-C runtime type parser.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221640 91177308-0d34-0410-b5e6-96231b3b80d8
[ProcessWindows] Implement breakpoint stop / resume on Windows.

This patch implements basic support for stopping at breakpoints
and resuming later.  While a breakpoint is stopped at, LLDB will
cease to process events in the debug loop, effectively suspending
the process, and then resume later when ProcessWindows::DoResume
is called.

As a side effect, this also correctly handles the loader breakpoint
(i.e. the initial stop) so that LLDB goes through the correct state
sequence during the initial process launch.

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221642 91177308-0d34-0410-b5e6-96231b3b80d8
Added a testcase that checks that fairly complicated
structures are parsed safely by the Objective-C runtime.

Also made some modifications to the way we parse structs
in the runtime to avoid mis-parsing @ followed by the name
of the next field.

<rdar://problem/18887634>


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221643 91177308-0d34-0410-b5e6-96231b3b80d8
Fix error handling in NativeProcessLinux::AttachToInferior: http://reviews.llvm.org/D6158

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221647 91177308-0d34-0410-b5e6-96231b3b80d8
Fixed two issues in the type encoding parser:

- A correctness issue: with assertions disabled,
  ReadQuotedString would misbehave; and

- A performance issue: BuildType used a long
  chain of if()s; I changed that to two switch
  statements.  That also makes the code much
  nicer to step through when debugging it.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221651 91177308-0d34-0410-b5e6-96231b3b80d8
Ignore templated aggregates in the Objective-C
runtime.  This eliminates potential confusion
when the compiler has to deal with these weird
types later on.

One day I'd like to actually generate the proper
templates, but this is not the day that I write
the parser code to do that.

<rdar://problem/18887634>


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221658 91177308-0d34-0410-b5e6-96231b3b80d8
Made the expression parser more resilient against
being asked about symbols it doesn't know about.  If
it's asked about a symbol by mangled name and it finds
nothing, then it will try again with the demangled
base name.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221660 91177308-0d34-0410-b5e6-96231b3b80d8
Add an operator== to the RegisterNumber class; it simplifies
RegisterContextLLDB a bit more in a few places.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221677 91177308-0d34-0410-b5e6-96231b3b80d8
Put the current pc arrow back into the default disassembly format.
I went back and forth on removing this - and tried dropping it for
a few weeks.  But when you're working at an assembly language, it
really is helpful to have this displayed to show where the current
pc is.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221682 91177308-0d34-0410-b5e6-96231b3b80d8
Add support for 32-bit core file dumping.  Add support for i386 process core file dumping.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221683 91177308-0d34-0410-b5e6-96231b3b80d8
Substitute cc with c++ when compiling c++ test files for Siva Chandra : http://reviews.llvm.org/D6199

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221692 91177308-0d34-0410-b5e6-96231b3b80d8
Add -std=c99 for building the test case of TestValueVarUpdate - for Siva Chandra : http://reviews.llvm.org/D6201

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221694 91177308-0d34-0410-b5e6-96231b3b80d8
Move a bunch of summary formatters to oneliner mode. This makes more cases eligible for oneline printing, and fixes rdar://18120906

git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221701 91177308-0d34-0410-b5e6-96231b3b80d8
Sketch out the armv7 and arm64 core file writing support in
ObjectFileMachO.  It's close but we seem to be missing some
of the memory region segments - not exactly sure how that's
happening.  The register context writing into the LC_THREAD
load commands is working correctly though.

Slightly reordered the arm64 definitions in ArchSpec.cpp so
when we look for an arm64 core file definiton we're getting
a cpu subtype of CPU_ANY which we can't put in the mach
header of a core file.  Make the first definition we find by
linear search have the currently correct '1' cpu subtype.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@221743 91177308-0d34-0410-b5e6-96231b3b80d8