Commit Graph

110 Commits

Author SHA1 Message Date
hjk
a839a46d4f Debugger: Fix initialization of Dumper structure
Change-Id: Ib753cb421361abcfa1f55bc8a0d43e8aa2d43dfd
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-01-31 11:25:31 +01:00
hjk
5e5eb43d18 Debugger: move dumper initialization to separate method for re-use
Change-Id: I8eb6f67ee342c88bc0f1b15874e37e130fa719a1
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-01-31 10:30:12 +01:00
hjk
e629899766 Debugger: always prepend '::' to types when constructing expressions
Traditionally, this would have been exactly the wrong thing to do as the
colons confused gdb's command line parser. Now that the general C++
awareness has improved, the parser accepts :: but gets confused by name
lookups, see http://sourceware.org/bugzilla/show_bug.cgi?id=15008

Change-Id: I01e46643a5179ecef26fcc11eab7bab84c359ec6
Reviewed-by: hjk <qthjk@ovi.com>
2013-01-10 17:43:07 +01:00
hjk
18121bf420 Debugger: allow plain gdb's pretty printers to be used in Creator
Change-Id: If31fe1bce75bef4f4a687c51ef57381f5083814c
Reviewed-by: hjk <qthjk@ovi.com>
2013-01-08 17:54:45 +01:00
hjk
ecf9704b25 Debugger: support for C99 complex/_Complex type
Task-number: QTCREATORBUG-8513

Change-Id: I1241c05c18f6fa7e1f22276253419c395ae9013b
Reviewed-by: hjk <qthjk@ovi.com>
2013-01-03 14:45:59 +01:00
hjk
efb3e91daa debugger: add gdb function to scan a corrupted stack for code references
Change-Id: I23377b0c75152b5bc27822c325d2fd2aeafd6f40
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-20 14:35:09 +01:00
hjk
0a5f0ba5af debugger: don't limit strings when "displayed"
Change-Id: I156f66f93deaa818d4409b2a02f0b2e046373656
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-17 18:57:52 +01:00
Ryan May
9884a76879 Add processing for array types to a standalone dumper.
This way, it can be overridden to make a custom dumper for an array of
data (such as creating an image display).

Change-Id: I0fda56872293554c6235e24f9af467c82f0b0f21
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-16 23:57:47 +01:00
Eike Ziller
3e7d94c362 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	qtcreator.pri
	qtcreator.qbs

Change-Id: Ib5e7c433606406d123b4a384ae1b48e2dbb26824
2012-11-16 15:31:02 +01:00
hjk
3685ce7599 debugger: make string cutoff value configurable
Change-Id: I118016956a597ad689daa438f5517a47efe3cef0
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-16 13:59:47 +01:00
hjk
72c2a73bcb debugger: handle gdb.TYPE_CODE_FUNC as "generic" type
This seems not to have been used in the past.

Change-Id: I6e6ce80b8cdd1f20477cde2718e5283a886bb87a
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-16 10:20:16 +01:00
hjk
9a204ebe7a debugger: don't show large uint64_t as negative values
Task-number: QTCREATORBUG-8215
Change-Id: I1b7ef66f82b69c55d4a9778ad9ac79437d00022a
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-09 11:43:12 +01:00
hjk
3621e3e392 debugger: implement pretty printing for D arrays (gdc compiled)
Change-Id: If8bf60dcfbb52546bc9c49ba28adddf52163321e
Reviewed-by: hjk <qthjk@ovi.com>
2012-10-21 20:24:34 +02:00
Orgad Shaneh
6aaaacd4e4 Dumper: Remove unused variables
Add a missing call to removeTempFile

Change-Id: Iea21102ed54e372f6c2991ac31fef008962f0638
Reviewed-by: hjk <qthjk@ovi.com>
2012-10-20 14:51:13 +02:00
hjk
9f1d8b66e3 debugger: fix display of gcc's built-in vector types
Change-Id: I293be4f5c207828c64de30236a25f6c0062346b8
Reviewed-by: hjk <qthjk@ovi.com>
2012-10-17 15:25:04 +02:00
Eike Ziller
68c796e244 Merge origin/2.6
Conflicts:
	src/libs/utils/fileutils.cpp
	src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp
	src/plugins/cmakeprojectmanager/cmakeopenprojectwizard.cpp
	src/plugins/cmakeprojectmanager/cmakeopenprojectwizard.h
	src/plugins/cmakeprojectmanager/cmakeproject.cpp
	src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp
	src/plugins/cmakeprojectmanager/makestep.cpp
	src/plugins/qtsupport/baseqtversion.cpp

Change-Id: I153295bad2d97609d96d28945e9f942c5b46b2da
2012-10-05 20:51:31 +02:00
hjk
009c3f1a26 debugger: use symbolic constants for "Display in Seperate Window" modes
Change-Id: Iab2b918e94abddb1fb4132c27e0b5f29810d4598
Reviewed-by: hjk <qthjk@ovi.com>
2012-10-05 08:12:26 +02:00
hjk
4c51cbce0a debugger: use a more robust method to detect function pointers
The previous one was failing on 'this' pointers of instances of
classes templatized on function pointers.

Change-Id: I2be50db5be643974f318fb6999136f5c7a4cfc1c
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2012-10-04 10:29:49 +02:00
Eike Ziller
5ac721dd58 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	qtcreator.pri
	qtcreator.qbp
	src/libs/utils/utils.pro

Change-Id: I6f0aba746f915d8c51dcf9372f7d9f593562fc2b
2012-09-11 14:02:03 +02:00
hjk
d34f44f460 debugger: fix display of signed data in arrays
This was a regression introduced with the block dumping for arrays.

Change-Id: I9684fafeb27a9268a2558557f76d1092136975a4
Reviewed-by: hjk <qthjk@ovi.com>
2012-09-11 00:33:46 +02:00
hjk
19a7f66df3 debugger: add gnuplot based display for QVector
Change-Id: Ic24a0d77906a59bc2c216ef0d6dd655695e2033e
(cherry picked from commit 41ac231ddfbabec6c09101345cf4d1370646f027)
Reviewed-by: hjk <qthjk@ovi.com>
2012-09-10 12:16:46 +02:00
Orgad Shaneh
3518934e24 Dumper: Use Latin1 as default for char array
Change-Id: Ia3e2fc737c4d40e9b8bce0fbb147fe3d8a523351
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-30 09:09:17 +02:00
hjk
69059fef8a debugger: handle type code "Method"
Seems to be new use in mingw 4.6.

Change-Id: I7331e3be3c14fed86d4eebf333ab4b01d1b237bf
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-08-28 12:23:29 +02:00
hjk
c8b180a55b debugger: also report sizes of anonymous structs
Change-Id: Ibd7397ddf9b70db599befe8cc99fcf7147b959e6
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-24 17:03:23 +02:00
hjk
7e884db7fb debugger: fix reporting of type size from python dumpers
Change-Id: I46ed81d3c0bf06e8c7b6a80266ea1b833120e90e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-08-21 16:11:18 +02:00
Orgad Shaneh
1d209b9c3e Dumper: Respect dynamic type option for locals and references
Task-number: QTCREATORBUG-7504

Change-Id: Ib49b4189e84cd4d3539ec9bbbada373f306ca68d
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-20 15:14:31 +02:00
Orgad Shaneh
e2a50ef71d Dumper: Always respect Use Dynamic Type option
Task-number: QTCREATORBUG-7504

Change-Id: Ifdc3f541eb67c36ea0cb5e61a7e5954c39cd75c4
Reviewed-by: hjk <qthjk@ovi.com>
2012-07-31 18:17:00 +02:00
Orgad Shaneh
78d59afa8d Dumper: Rename upcast -> downcast
Change-Id: I776373da348a961e3daf2c45bbbb84ca4736512a
Reviewed-by: hjk <qthjk@ovi.com>
2012-07-26 13:47:13 +02:00
hjk
d92df40125 debugger: fix display of member function pointers
Change-Id: I957e805aad45bf62b6fb8318accd29f54b474b11
Reviewed-by: hjk <qthjk@ovi.com>
2012-07-19 15:01:26 +02:00
Orgad Shaneh
19fa243ef7 Dumper: Fix Qt namespace resolution
qqNs should not be called directly

Change-Id: I845b5c1b9af3fbf79bac7a5ab85dc054678e3e53
Reviewed-by: hjk <qthjk@ovi.com>
2012-07-16 15:01:29 +02:00
hjk
2d466528c9 debugger: rework core adapter
The name of the binary is now read using the elfreader instead
of attaching gdb twice.

Change-Id: I7a75bc64278c4f43e7085d2e479b53173602c966
Reviewed-by: hjk <qthjk@ovi.com>
2012-06-06 09:41:08 +02:00
hjk
0576fa01fa debugger: do not offer expansion for inaccessible items
Change-Id: Ib8607377e36dbf51aa38b32a18491ec3437a2387
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-31 14:33:26 +02:00
hjk
d982b216ff debugger: rework dumping arrays of plain data
Simple array data can be fetched in one go.
The "normal" way gdb asks the server for contents is one item
at a time, at ~3ms per round trip. Now we get 2000 in 200ms.

This also introduces a re-usable readRawMemory function and
removes a few checkAccess calls which will be triggered anyways.

Change-Id: Ic07a3d6593fd2ea45f7a8058509118fe22a845bb
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-30 11:31:29 +02:00
Robert Loehning
7d96a3218e debugger: Fixed syntax error
Found by Squish test suite_debugger/tst_cli_output_console

Change-Id: I3d4bf97f9971e44ac39bc262d17da0641a99af19
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-30 10:02:01 +02:00
hjk
093363ef21 debugger: use 'None' instead of -1 for default parameter
Change-Id: I865ecaa73bee5880d746fed019ac879b563367e7
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-29 13:05:27 +02:00
hjk
1ba684ad39 debugger: make max string size more configurable
Change-Id: I4fd3c854eb2bb752c5338e96f2e19884bdcf71a8
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-29 12:24:41 +02:00
hjk
bc9326abb7 debugger: move type info cache population to lookupType
This way we miss some data from types we never lookup (like 'int')
but having it out of the performance path in SubItem.__exit__ is
more important.

Change-Id: I9ff86a7d9bf0d66e5781581d04942f29ca0e520b
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-25 16:00:12 +02:00
hjk
d5fdc08bd0 debugger: check typedefs for specialized dumpers first
A __m128 showed up as float[4] unconditionally.

Change-Id: Ie01a0a329953a5e4bf4cd9c964a562ce49e14e81
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-17 19:09:34 +02:00
hjk
de2a88c0f3 debugger: take advantage of simple contents in array-like containers
Change-Id: I79e8fc7cf083d5c6c135cce5e0a42e41475a7b44
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-17 19:08:33 +02:00
hjk
eeeefc226a debugger: transfer simple array contents more directly
Change-Id: I75537b1ef6890767b12968f907348f9d9bb88069
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-17 19:01:22 +02:00
hjk
0183a9021f debugger: don't search dumper hash twice
Change-Id: I18a93ca41c9aa380a7a83adc43b737def12d771c
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-15 18:20:33 +02:00
hjk
075153fc85 debugger: use a faster way to check for "QObject-derivedness"
Change-Id: Id212f66de665db05a6a03675a0bf3edaa0c4fb81
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-15 18:19:26 +02:00
hjk
785a9cea81 debugger: do not hide errors thrown in typedef'ed items
Change-Id: I86539bb08a43f59c53f80b0eb83db1f7cda5fe1b
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-15 10:32:21 +02:00
hjk
38905e523e debugger: fix display of type of dynamic references
This is actually a bug in gdb, but can be worked around.
See http://sourceware.org/bugzilla/show_bug.cgi?id=14077

Change-Id: I5aab39e9a3cfd9d7c12d52339005b1979421229e
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-11 23:38:04 +02:00
hjk
5787c1e4cd debugger: simplify OutputSafer interface
Change-Id: I22857522a5be4fb65d3124cd26f82ca1aeb68d60
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-11 14:57:31 +02:00
hjk
7dc71bc43c debugger: display references in type columns
This breaks tradition.

Change-Id: I6780f31d584021490293a1ed3a96b5c3608a8a36
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-08 12:24:02 +02:00
hjk
7388034eef debugger: recognize null references explicitly.
Change-Id: Ie315997363d9f591526ea8c122759f59d808fae5
Reviewed-by: hjk <qthjk@ovi.com>
2012-05-08 10:33:20 +02:00
hjk
a7a3941cc2 debugger: Fix QString, QVector, QByteArray dumper for Qt 5 container changes.
Change-Id: Ib966adda453cbc8e44c36ae629f62ac3a5bf5bf7
Reviewed-by: Christian Stenger <christian.stenger@nokia.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-04-18 15:56:55 +02:00
Orgad Shaneh
fe8746b3ed Dumper: Make QFile base dumper consistent
and avoid hard-coding the base class

Task-number: QTCREATORBUG-7283

Change-Id: I42f5577062c9de1a0fea6bf50a27e1aae8612ad9
Reviewed-by: hjk <qthjk@ovi.com>
2012-04-15 20:29:39 +02:00
Orgad Shaneh
d6a2667dac Dumper: Fix dynamic type dumper for generic struct
Change-Id: Idb5ff44061afa8170afed3737f1be378165732f2
Reviewed-by: hjk <qthjk@ovi.com>
2012-04-02 13:50:45 +02:00