Commit Graph

87 Commits

Author SHA1 Message Date
hjk
0b57c8ded2 Debugger: Fix LLDB display of std::array with "complex" content
Change-Id: I43dd9b8afe76f204fe2509f1f2f81f74c48a16ab
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-08 13:15:20 +02:00
hjk
6aea42251b Debugger: Make LLDB dumpers more robust
Take care of older versions without SBValue.GetCanonicalType()

Change-Id: I10c1330633e5568b7c94059d4286c93adfecb1a2
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-05 17:55:19 +02:00
hjk
ea8ecfb890 Debugger: Suppress printing of name fields in LLDB
Brings it more in line with what we do on the GDB side
and makes a few more autotests pass.

Change-Id: I89fd7a9d5b7bfd6ffd68dcda824c95dd7a7a52b0
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-04 17:08:28 +02:00
hjk
ccf0abf781 Debugger: Fix Q{Size,Rect,Point}F dumpers
They were only showing the integral parts in the
summary line. Duh...

Change-Id: I5efd7a9d5b7bfd6ffd68dcda824c95dd7a7a52b0
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-04 10:31:41 +02:00
hjk
7a359baa50 Debugger: More LLDB dumper work
QLinkedList, QMap, ...

Change-Id: I4efd7a9d5b7bfd6ffd68dcda824c95dd7a7a52b0
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-04 10:31:11 +02:00
hjk
a036f7f1e4 Debugger: Fix more LLDB dumpers
Simple QVariants, references, const pointers, QObject names,
QList<Foo*>, ...

Change-Id: Iaa3fb9e4db1c249817e59239029db7dd220ba5b3
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-03 17:07:20 +02:00
hjk
db4ce016bc Debugger: Fix a few LLDB dumpers
Change-Id: Ibdf3ff3f03cfc91df44168243972b1e5a0ee5077
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-03 13:30:13 +02:00
hjk
0292600c72 Debugger: Work on dumper without debug info
Change-Id: Iae5f60fe43c28f4cf0254b87530002145dc67e27
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-07-01 14:21:05 +02:00
hjk
103d0e643f Debugger: Add a more generic way to distinguish Qt 4 and 5 in dumpers
Change-Id: I1f020032984fb61554b75cc404784d39d9464890
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-28 14:00:56 +02:00
hjk
012924ec46 Debugger: Fix behavior on pressing 'Stop' for LLDB
Task-number: QTCREATORBUG-9634
Change-Id: Iaa8eaf53169d7105e5f0657a06f5c9a780ba996d
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2013-06-25 15:41:57 +02:00
hjk
ab94f6ebc5 Debugger: Make strip_typedefs robust for older LLDB
Change-Id: I9adac11f8997fcb0594d0a67419d4733dd4ed86b
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-24 16:54:08 +02:00
hjk
ee77d21b00 Debugger: Make use of {S,G}etCondition optional with LLDB
Some older versions don't have it.

Change-Id: Ie6e73e0bd13e7aa5a1cae8f6d1647d4695a315a8
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2013-06-24 15:05:08 +02:00
hjk
405fef48e0 Debugger: Safeguard against wrong child count
Empty base classes do not seem to show up as children
but are recorded in GetNumberOfChildren

Change-Id: I175b8b0f9a2c761850d34e1ab26ff343be7a16c7
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-21 15:19:54 +02:00
hjk
f041937570 Debugger: Fix display of function pointers with LLDB
While it's a pointer, auto-dereferencing does not
make much sense...

Change-Id: I036e2d5195ea0f9813fe7ebaa7dc2434579abbe5
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-21 15:17:06 +02:00
hjk
2b64cdcde9 Debugger: Fix display of some boost types with LLDB
Change-Id: Ied11317f8389963e5c98230d6885311a84c2dc25
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-21 13:24:55 +02:00
hjk
3de1592090 Debugger: Fix display of anon unions with LLDB
Change-Id: Ifd11317f8389963e5c98230d6885311a84c2dc25
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-21 11:39:21 +02:00
hjk
61b160c9c5 Debugger: Resolve dynamic types with LLDB if possible
Change-Id: I39b995eb9328e449befad85792512c45670cc8c9
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-20 18:06:33 +02:00
hjk
84a597e411 Debugger: Small dumper cleanups and consolidation
Change-Id: I1511317f8389963e5c98230d6885311a84c2dc25
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-20 14:53:31 +02:00
hjk
c3649f53bf Debugger: Handle some watchpoint failures more gracefully
Change-Id: I09524aa8a3b0256ec0468416bc823353d5b011ea
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-20 09:42:30 +02:00
hjk
1f72afb997 Debugger: Select usable frame on stop
Change-Id: I37305aa6b44b7b9edf33a6828d965ab84289e353
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-20 09:35:52 +02:00
hjk
bba1b0932a Debugger: Enable breakpoints on throw and catch with LLDB
Change-Id: Ia7305aa6b44b7b9edf33a6828d965ab84289e353
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-13 18:25:19 +02:00
hjk
2846e54ad0 Debugger: Re-enable LLDB register contents reporting
Change-Id: I02291db4eda22e9dae3e493a8f31c7d9bb5420d6
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-12 10:26:43 +02:00
hjk
7ecdb633d4 Debugger: Enable simple assignments with LLDB
This currently handles top-level frame entries only.

Change-Id: I00291db4eda22e9dae3e493a8f31c7d9bb5420d8
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-12 10:26:26 +02:00
hjk
e8093a9e59 Debugger: Show nested arrays in LLDB
Change-Id: I0130b769e977c6ffced1a87715831386ef0d5319
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-11 18:33:04 +02:00
hjk
0bf7854882 Debugger: Hard-code fallback path if LLDB does not handle -P
The fallback is the "standard" location for LLDB coming with XCode.

Change-Id: I1230176bc7e96476e2f748d850a5a4c93b57cafa
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-11 11:24:35 +02:00
hjk
10e01db4fb Debugger: Make autotest pass for LLDB arrays
Change-Id: I1baa4684e85d0ccd677956eeff88b4cc7d807922
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-10 15:40:12 +02:00
hjk
46171f5470 Debugger: Un-duplicate dumper code
Change-Id: Idf617c9ea7e13474abab6fc5dad4f8885dc7902b
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-10 09:51:42 +02:00
hjk
d2344a7ac7 Debugger: More LLDB dumper work
For e.g. QMap<uint, float>, std::stack<int *>, 73 pass, 103 fail.

Change-Id: I24f68ad59d10e9751d09ed6e0f959d2a78d53822
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-06 10:40:50 +02:00
hjk
71f80d6449 Debugger: Implement Dumper.putCallItem() in LLDB interface
Change-Id: I7243b4fe9e8fd91653e236722282fa8f8a9ed82d
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-06 10:40:27 +02:00
hjk
f5200167ed Debugger: Work on LLDB dumpers
54 passed, 122 failed (lldb 300.99/gcc)

Change-Id: I71e1666c542406b126214c2b9b8b56193bcbcf76
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-05 13:48:53 +02:00
hjk
9c5a4dff1d Debugger: Work on LLDB dumper autotests
Implement putEmptyValue, use type priorities,
introduce concept of backend specific tests.
39 pass, 136 fail...

Change-Id: I71e89259dc925f799bca413b537b65e9e689e1b8
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-04 17:04:29 +02:00
hjk
0f4cfa7e39 Debugger: Enable dumper autotest suite for LLDB
26 pass, 149 fail...

Change-Id: I243eb03fe0ddcb193ed8d45e672564f7113b662f
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-04 13:12:47 +02:00
hjk
22d358cb0a Debugger: Handle failed stop requests in LLDB interface
Change-Id: I79950d9a5114ee9810dc959412d1695015c083b1
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-31 16:52:46 +02:00
hjk
762e175e7c Debugger: Fix lbridge.py standalone startup
Change-Id: I47116fcce1c063a6a0af82ebac080f843d2d158f
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-31 16:27:03 +02:00
hjk
64458f1a23 Debugger: Simplify LLDB startup sequence
Change-Id: I17121fcce1c063a6a0af82ebac080f843d2d157f
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-31 15:58:41 +02:00
hjk
1dac4ba791 Debugger: Prepare assigning of values in LLDB interface
Change-Id: I722e78c352066ddd05e96199fd8ead088e3e9f59
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-31 15:58:26 +02:00
hjk
2e3e11d00b Debugger: Remove unneeded code
Change-Id: I492e78c352066ddd05e96199fd8ead088e3e9f58
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-31 15:10:20 +02:00
hjk
c6b4a831bc Debugger: Give more thread details in LLDB interface
Change-Id: I352e78c352066ddd05e96199fd8ead088e3e9f58
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-31 15:09:57 +02:00
hjk
9072db09ab Debugger: Fix module listing
Change-Id: I342e78c352066ddd05e96199fd8ead088e3e9f58
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-29 16:29:16 +02:00
hjk
8906b4a4c8 Debugger: Make thread switching work in LLDB interface
Change-Id: I332e78c352066ddd05e96199fd8ead088e3e9f58
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-29 16:29:08 +02:00
hjk
b75209d653 Debugger: Cleaner shutdown of LLDB/python machinery
Change-Id: I482e78c352066ddd05e96199fd8ead088e3e9f58
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-29 15:49:29 +02:00
hjk
31634a07f4 Debugger: Cleanup LLDB python startup code
Change-Id: I682e78c352066ddd05e96199fd8ead088e3e9f55
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-29 15:48:54 +02:00
hjk
cc611e076f Debugger: Pass autoderef pointers down to LLDB machinery
Change-Id: I282e78c352066ddd05e96199fd8ead088e3e9f56
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-29 15:48:24 +02:00
hjk
14481df670 Debugger: Handle application output in LLDB interface
Change-Id: Ie97c628ece272249c23aab6d5438555c051f5aa1
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-29 12:24:03 +02:00
hjk
61bf74be32 Debugger: Work on LLDB event handling
Change-Id: Ie97c628ece272249c23aab6d5438555c051f5aa8
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-29 12:23:39 +02:00
hjk
8ffb0c7c1f Debugger: Implement stack frame switching with LLDB
Change-ID: I6efed5ffdccc5ce0aa13b1e7296137396ca28efe
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-24 10:16:43 +02:00
hjk
7fbcf01e40 Debugger: frame.GetFunction().GetName() is not GetFunctionName()
This makes 'start' show up in the stack instead of 'None'.

Change-Id: Ie277c4f86bb09e14c26babf63127d48871c09cfb
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-24 09:30:02 +02:00
hjk
81b7ed3636 Debugger: Fix step out and instruction-wise for LLDB
Change-Id: I1017aefdece671f748f00b9c6bc2385d85b8c170
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-24 09:16:02 +02:00
hjk
f37cf85d16 Debugger: Make LLDB std::vector dumper work
Change-Id: Iaa1a0065f1b7db60be5ed6006cd64c853cecc001
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-23 17:16:58 +02:00
hjk
484357035f Debugger: Don't show LLDB's "synthetic" name suffix
Change-Id: I4229792171edef807619ec4e68393ec3e91e12dc
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-05-23 16:51:17 +02:00