Commit Graph

90 Commits

Author SHA1 Message Date
Anton Korobeynikov aa4c0f9374 1. Clean up code due to changes in SwitchTo*Section(2)
2. Added partial debug support for mingw\cygwin targets (the same as
   Linux\ELF). Please note, that currently mingw\cygwin uses 'stabs' format
   for storing debug info by default, thus many (runtime) libraries has
   this information included. These formats shouldn't be mixed in one binary
   ('stabs' & 'DWARF'), otherwise binutils tools will be confused.

llvm-svn: 31311
2006-10-31 08:31:24 +00:00
Reid Spencer 7eda51d4cf Fix a problem introduced by a last-minute change (logic negation).
llvm-svn: 31302
2006-10-30 23:34:32 +00:00
Reid Spencer b51b5c0b1f Add debug support for X86/ELF targets (Linux). This allows llvm-gcc4
generated object modules to be debugged with gdb. Hopefully this helps
pre-release debugging.

llvm-svn: 31299
2006-10-30 22:32:30 +00:00
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