Commit Graph

187 Commits

Author SHA1 Message Date
Jim Laskey
ad2f5b7d18 Switch abbreviations to use the folding set.a.
llvm-svn: 31296
2006-10-30 15:59:54 +00:00
Jim Laskey
43c19124bb Simplify DwarfWriter header.
llvm-svn: 31295
2006-10-30 13:35:07 +00:00
Jim Laskey
516cd40b5c Tighter data structure for deleted debug labels.
llvm-svn: 31152
2006-10-24 11:50:43 +00:00
Jim Laskey
5e1a34032b More complete solution to deleting blocks and debug info.
llvm-svn: 31129
2006-10-23 14:56:37 +00:00
Chris Lattner
145f6b3ec8 Do not leak all of the SourceLineInfo objects. Do not bother mallocing each
one separately.

llvm-svn: 31022
2006-10-17 22:06:46 +00:00
Jim Laskey
d24b913a61 Clean up interface to getGlobalLinkName.
llvm-svn: 31001
2006-10-17 17:17:24 +00:00
Jim Laskey
7126254a0e Basic support for getGlobalLinkName.
llvm-svn: 30997
2006-10-17 13:41:07 +00:00
Jim Laskey
9db3a08864 Global name regression.
llvm-svn: 30982
2006-10-16 19:38:41 +00:00
Jim Laskey
ccee9baebe Workaround for templates
llvm-svn: 30927
2006-10-13 13:02:19 +00:00
Jim Laskey
0d5a0eae57 More long term solution
llvm-svn: 30720
2006-10-04 10:40:15 +00:00
Jim Laskey
66b0b55816 Work around for some problems with templates.
llvm-svn: 30715
2006-10-04 01:43:13 +00:00
Jim Laskey
d30bba331f Sort out mangled names for globals
llvm-svn: 30460
2006-09-18 14:47:26 +00:00
Jim Laskey
261779bb45 Make target asm info a property of the target machine.
llvm-svn: 30162
2006-09-07 22:06:40 +00:00
Jim Laskey
a6211dcdad Separate target specific asm properties from the asm printers.
llvm-svn: 30126
2006-09-06 18:34:40 +00:00
Jim Laskey
5352d0cc4d Corrections.
llvm-svn: 30021
2006-09-01 12:55:05 +00:00
Jim Laskey
2eebe8b05e Handle callee saved registers in dwarf frame info (lead up to exception
handling.)

llvm-svn: 29954
2006-08-29 16:24:26 +00:00
Jim Laskey
f8bf1e6034 Allow for register numbers > 31.
llvm-svn: 29879
2006-08-25 19:39:52 +00:00
Jim Laskey
b6ac11e120 Adding C++ member support.
llvm-svn: 29799
2006-08-21 21:20:18 +00:00
Jim Laskey
194bef7ff4 Fixed a bug handling void function types.
Requires rebuild of llvm-gcc4 (touch llvm-debug.cpp.)

llvm-svn: 29131
2006-07-13 15:27:42 +00:00
Jim Laskey
6c72aa7411 1. Support for c++ mangled names.
2. Support for private/protected class members.

llvm-svn: 29104
2006-07-11 15:58:09 +00:00
Jim Laskey
a7b2bd5997 Add and sort "sections" in debug lines. This always stepping through
code in sections other than ".text", including weak sections like ctors and
dtors.

llvm-svn: 28909
2006-06-23 12:51:53 +00:00
Jim Laskey
0a9e837b6f Add support for function types.
llvm-svn: 28874
2006-06-20 19:41:06 +00:00
Jim Laskey
2837e3204f References need to be section relative.
llvm-svn: 28861
2006-06-19 19:49:42 +00:00
Jim Laskey
f32058a2b7 References need to be section relative.
llvm-svn: 28858
2006-06-19 15:48:00 +00:00
Jim Laskey
b2ff2d481e 1. Revise vector debug support.
2. Update docs for vector debug support and new version control.

3. Simplify serialization of DebugDescInfo subclasses.

llvm-svn: 28816
2006-06-16 13:14:03 +00:00
Jim Laskey
19f964e048 1. Support standard dwarf format (was bootstrapping in Apple format.)
2. Add vector support.

llvm-svn: 28807
2006-06-15 20:51:43 +00:00
Jim Laskey
f67bec0579 Place dwarf headers at earliest possible point. Well behaved when skipping
functions.

llvm-svn: 28781
2006-06-14 11:35:03 +00:00
Owen Anderson
8c2c1e90c4 Refactor a bunch of includes so that TargetMachine.h doesn't have to include
TargetData.h.  This should make recompiles a bit faster with my current
TargetData tinkering.

llvm-svn: 28238
2006-05-12 06:33:49 +00:00
Chris Lattner
8488ba2e41 Split SwitchSection into SwitchTo{Text|Data}Section methods.
llvm-svn: 28184
2006-05-09 04:59:56 +00:00
Owen Anderson
20a631fde7 Refactor TargetMachine, pushing handling of TargetData into the target-specific subclasses. This has one caller-visible change: getTargetData() now returns a pointer instead of a reference.
This fixes PR 759.

llvm-svn: 28074
2006-05-03 01:29:57 +00:00
Jim Laskey
dca2655daa Use existing information.
llvm-svn: 27574
2006-04-10 23:09:19 +00:00
Jim Laskey
7d4592733c Remove section change in function end, preventing override of function's real
section.

llvm-svn: 27503
2006-04-08 00:35:59 +00:00
Jim Laskey
c0d6518f27 Make sure that debug labels are defined within the same section and after the
entry point of a function.

llvm-svn: 27494
2006-04-07 20:44:42 +00:00
Jim Laskey
2d7298c362 Foundation for call frame information.
llvm-svn: 27491
2006-04-07 16:34:46 +00:00
Jim Laskey
dea0348853 Refactor address attributes. Add base register to frame info.
llvm-svn: 27226
2006-03-28 14:58:32 +00:00
Jim Laskey
3324c7236f Hack no more.
llvm-svn: 27079
2006-03-24 21:10:36 +00:00
Jim Laskey
fb39d2a7f7 Unneeded forward.
llvm-svn: 27004
2006-03-23 23:05:52 +00:00
Jim Laskey
f7cfa52e7a Make sure types are allocated in the scope of their use.
llvm-svn: 27002
2006-03-23 23:02:34 +00:00
Jim Laskey
2b74656f25 Generate local variable and scope information and equivalent dwarf forms.
llvm-svn: 26989
2006-03-23 18:07:55 +00:00
Jim Laskey
71050ba709 Expand subprogram and added block descriptor.
llvm-svn: 26782
2006-03-15 19:09:58 +00:00
Chris Lattner
f0fc6bbaf3 back out my previous hack
llvm-svn: 26650
2006-03-09 17:48:46 +00:00
Chris Lattner
c44be2c4ef temporary hack to get the build working again, apparently a header
commit was forgotten

llvm-svn: 26642
2006-03-09 17:11:08 +00:00
Jim Laskey
4b0e1d9e6c Move bit field endianness to backend.
llvm-svn: 26639
2006-03-09 13:28:47 +00:00
Jim Laskey
2698f0de7a Get rid of the multiple copies of getStringValue. Now a Constant:: method.
llvm-svn: 26616
2006-03-08 18:11:07 +00:00
Jim Laskey
3bad199894 Bitfield support.
llvm-svn: 26593
2006-03-07 15:51:33 +00:00
Jim Laskey
c44f05d624 Added support for dwarf block data entries.
llvm-svn: 26509
2006-03-03 21:00:14 +00:00
Jim Laskey
88f0fe15a2 Adding basic structure support.
llvm-svn: 26505
2006-03-03 15:06:57 +00:00
Jim Laskey
862001ad75 Support for enumerations.
llvm-svn: 26466
2006-03-01 23:52:37 +00:00
Jim Laskey
4e71db13d6 Switch back to using actual dwarf tags. Simplifies code without loss to other
debug forms.

llvm-svn: 26455
2006-03-01 20:39:36 +00:00
Jim Laskey
f770cf5b90 Use context and not compile unit.
llvm-svn: 26453
2006-03-01 18:20:30 +00:00
Jim Laskey
1246d5c054 I guess I can handle large type sizes.
llvm-svn: 26452
2006-03-01 18:13:05 +00:00
Jim Laskey
b9ac4cba66 Basic array support.
llvm-svn: 26451
2006-03-01 17:53:02 +00:00
Jim Laskey
716edb9754 Add const, volatile, restrict support.
Add array of debug descriptor support.

llvm-svn: 26428
2006-02-28 20:15:07 +00:00
Jim Laskey
6d5c2a0156 Qualify dwarf namespace inside llvm namespace.
llvm-svn: 26409
2006-02-27 22:37:23 +00:00
Jim Laskey
bc7a3832e8 Partial enabling of functions.
llvm-svn: 26404
2006-02-27 20:37:42 +00:00
Jim Laskey
72b66d6d8a Supporting multiple compile units.
llvm-svn: 26402
2006-02-27 17:27:12 +00:00
Jim Laskey
22e47b9f4e Re-orging file.
llvm-svn: 26401
2006-02-27 12:43:29 +00:00
Jim Laskey
723d3e0746 Add pointer and reference types. Added short-term code to ignore NULL types
(to allow llvm-gcc4 to build.)

llvm-svn: 26355
2006-02-24 16:46:40 +00:00
Jim Laskey
e5386d4d98 Added basic support for typedefs.
llvm-svn: 26339
2006-02-23 22:37:30 +00:00
Jim Laskey
69b9e26186 DwarfWriter reading basic type information from llvm-gcc4 code.
llvm-svn: 26331
2006-02-23 16:58:18 +00:00
Jim Laskey
2fa33a989d Coordinate activities with llvm-gcc4 and dwarf.
llvm-svn: 26314
2006-02-22 19:02:11 +00:00
Jim Laskey
ebb50a61d2 Using wrong DW_FORM.
llvm-svn: 26184
2006-02-14 22:01:57 +00:00
Jim Laskey
85263234a8 Changing model for the construction of debug information.
llvm-svn: 26016
2006-02-06 15:33:21 +00:00
Jim Laskey
0cda006a69 Using bit size of integers instead of ambiguous "long" et all.
llvm-svn: 25694
2006-01-27 20:31:25 +00:00
Jim Laskey
4a84e97421 Sorry - really folowing convention.
llvm-svn: 25691
2006-01-27 18:32:41 +00:00
Jim Laskey
116bb15473 Following convention.
llvm-svn: 25689
2006-01-27 18:28:31 +00:00
Andrew Lenharth
fc3eca9023 fix build
llvm-svn: 25687
2006-01-27 18:16:17 +00:00
Jim Laskey
f98fc8441c Improve visibility/correctness of operand indices in "llvm.db" objects.
Handle 64 in DIEs.

llvm-svn: 25684
2006-01-27 15:20:54 +00:00
Jim Laskey
0689dfad23 Use global information to fill out Dwarf compile units.
llvm-svn: 25662
2006-01-26 21:22:49 +00:00
Jim Laskey
0bbdc55333 Set up MachineDebugInfo to scan for debug information form "llvm.db"g globals.
Global Variable information is now pulled from "llvm.dbg.globals"

llvm-svn: 25655
2006-01-26 20:21:46 +00:00
Jeff Cohen
c3cafb8a67 Make it even more portable.
llvm-svn: 25605
2006-01-25 17:18:50 +00:00
Jeff Cohen
a292744ecc Portably cast a pointer to an integer.
llvm-svn: 25594
2006-01-25 02:40:10 +00:00
Andrew Lenharth
1dbc389ad2 fix build on 64 bit hosts
llvm-svn: 25591
2006-01-24 21:26:43 +00:00
Jeff Cohen
b56a80061a Remove unused variables.
llvm-svn: 25576
2006-01-24 04:42:53 +00:00
Jim Laskey
3e65f28ffe Crude Dwarf global variable debugging.
llvm-svn: 25569
2006-01-24 00:49:18 +00:00
Jim Laskey
3d8f3a55b7 Simplify search for abbreviations.
llvm-svn: 25491
2006-01-21 01:13:18 +00:00
Jim Laskey
45900baadb Correct some simple errors.
llvm-svn: 25490
2006-01-21 00:59:54 +00:00
Jim Laskey
b17434dc1d Right size integer values before emitting.
llvm-svn: 25489
2006-01-20 21:02:36 +00:00
Jim Laskey
7a3e9aa282 Reworked how Dwarf debug info entries and abbreviations are handled. Added
pubnames and debuy str sections.

llvm-svn: 25487
2006-01-20 20:34:06 +00:00
Jim Laskey
194a5268cb Added minimum Dwarf aranges. Cleaned up some section headers. Line number
support now works in gdb.

llvm-svn: 25417
2006-01-18 16:54:26 +00:00
Jim Laskey
cc9dfecf81 Add frame work for additional dwarf sections. Comments will improve as code
is added.

llvm-svn: 25410
2006-01-17 20:41:40 +00:00
Jim Laskey
b9966029fe Adding basic support for Dwarf line number debug information.
I promise to keep future commits smaller.

llvm-svn: 25396
2006-01-17 17:31:53 +00:00
Jim Laskey
219d559824 Applied some recommend changes from sabre. The dominate one beginning "let the
pass manager do it's thing."  Fixes crash when compiling -g files and suppresses
dwarf statements if no debug info is present.

llvm-svn: 25100
2006-01-04 22:28:25 +00:00
Jim Laskey
2741e8304c Add check for debug presence.
llvm-svn: 25095
2006-01-04 14:30:12 +00:00
Jim Laskey
b0609d91c3 Tie dwarf generation to darwin assembler.
llvm-svn: 25093
2006-01-04 13:52:30 +00:00
Reid Spencer
2335fc2f44 Add an eol at the end to shut gcc sup.
llvm-svn: 24926
2005-12-22 01:41:00 +00:00
Jim Laskey
7b52a923b8 Start of Dwarf framework.
llvm-svn: 24914
2005-12-21 19:48:16 +00:00