Chris Lattner
41e275dc8e
simplify EmitFrameMoves to take BaseLabel in as a symbol
...
instead of as a stem+idx pair, simplify the "is a new
location" check to use symbol comparison.
llvm-svn: 98432
2010-03-13 08:05:25 +00:00
Chris Lattner
8811e12314
factor some labels, simplify some code.
...
llvm-svn: 98429
2010-03-13 07:40:56 +00:00
Chris Lattner
2c3f478c0b
various cleanups.
...
llvm-svn: 98426
2010-03-13 07:26:18 +00:00
Chris Lattner
b7aa9527ef
reimplement the string pool used for inlined function
...
entries to not thrash std::strings and MCSymbols.
llvm-svn: 98415
2010-03-13 02:17:42 +00:00
Chris Lattner
9e4cafe6f1
inline the now-trivial implementation of GetGlobalValueSymbol into
...
some of its callers.
llvm-svn: 98388
2010-03-12 21:09:07 +00:00
Jeffrey Yasskin
35b4e4f641
Free DbgScopes in DwarfDebug::endFunction(). Also increased the const-ness of
...
several fields to make it easier to figure out where bugs might be creeping in.
llvm-svn: 98358
2010-03-12 17:45:06 +00:00
Devang Patel
f5c2a6b371
There is no need to create specification DIE for definitions at DIFile level.
...
llvm-svn: 98302
2010-03-11 23:44:52 +00:00
Jeffrey Yasskin
0708de1f97
Avoid leaking CompileUnits in DwarfDebug.cpp.
...
llvm-svn: 98268
2010-03-11 18:29:55 +00:00
Chris Lattner
a26fbe4d68
add missing filename!
...
llvm-svn: 98125
2010-03-10 02:29:31 +00:00
Chris Lattner
b245dfb408
inline away a form of IsPCRelative, eliminating the
...
dead IsPCRel argument.
llvm-svn: 98117
2010-03-10 01:17:49 +00:00
Chris Lattner
7e998b7363
add some fixme's for MCizing. EH still has a few things that
...
need to be MCized, but the last debug info thing are LEB and
cygwin specific (which the MC api doesn't support yet) and
one specific form of EmitReference which I'll tackle next.
llvm-svn: 98116
2010-03-10 01:04:13 +00:00
Chris Lattner
566cae9086
eliminate EOL, adding all comments with the OutStreamer.AddComment
...
method. With this, comments should end up on the same lines as the .byte
directives (for example) and we now get no output with:
$ llc CodeGen/X86/2009-02-12-DebugInfoVLA.ll -o - -filetype=null -asm-verbose
woot.
llvm-svn: 98105
2010-03-09 23:52:58 +00:00
Chris Lattner
3d72a678de
eliminate a bunch of \n's that are being printed to O. Next up is to kill
...
off "EOL".
llvm-svn: 98102
2010-03-09 23:38:23 +00:00
Chris Lattner
ba35a67062
reapply r98035:
...
Now that setStartLabel takes an MCSymbol, we can de-ID'ize
beginScope and RecordSourceLine.
llvm-svn: 98047
2010-03-09 04:54:43 +00:00
Chris Lattner
54a6876821
add some extra checks. I'm not sure why, but this does unbreak a
...
failure remaining on mainline.
llvm-svn: 98046
2010-03-09 04:48:35 +00:00
Eric Christopher
66194fbf86
Speculatively revert r98035. It appears to have caused a set of buildbot
...
failures.
llvm-svn: 98039
2010-03-09 02:36:31 +00:00
Chris Lattner
06c5e9060c
Now that setStartLabel takes an MCSymbol, we can de-ID'ize
...
beginScope and RecordSourceLine.
llvm-svn: 98035
2010-03-09 02:08:02 +00:00
Chris Lattner
e13c37232a
change DbgScope to keep track of the start/end label as MCSymbol*
...
now that the dependence on ID is removed from MMI.
llvm-svn: 98034
2010-03-09 01:58:53 +00:00
Chris Lattner
a552246b3d
remove a useless optimization: now that label replacement never
...
happens, the start/end of a scope can never be the same.
llvm-svn: 98032
2010-03-09 01:52:43 +00:00
Chris Lattner
c3b70f636f
strength reduce MMI::MappedLabel to MMI::isLabelDeleted,
...
and add a FIXME about how we are eventually going to zap this
lookup table once mc world domination is complete.
llvm-svn: 98031
2010-03-09 01:51:43 +00:00
Chris Lattner
9e57c676dd
mcstreamerize AsmPrinter::printLabel.
...
llvm-svn: 98025
2010-03-09 01:02:30 +00:00
Chris Lattner
b14490d912
add a EmitSymbolValue convenience method to MCStreamer.
...
llvm-svn: 98017
2010-03-09 00:39:24 +00:00
Chris Lattner
085b65283c
make InlineInfoLabels hold MCSymbol*'s, avoiding
...
recomputation of the labels.
llvm-svn: 98016
2010-03-09 00:31:02 +00:00
Chris Lattner
53d6d1e87d
mc'ize the last use of PrintLabelName and eliminate PrintLabelName.
...
llvm-svn: 98015
2010-03-09 00:26:09 +00:00
Chris Lattner
4d728127fb
now that the debug and eh emitters use a common .set counter,
...
we can eliminate "flavor".
llvm-svn: 98011
2010-03-09 00:00:15 +00:00
Chris Lattner
27a9732450
simplify EmitSectionOffset to always use .set if it is
...
available, the only thing this affects is that we produce
.set in one case we didn't before, which shouldn't harm
anything. Make EmitSectionOffset call EmitDifference
instead of duplicating it.
llvm-svn: 98005
2010-03-08 23:23:25 +00:00
Chris Lattner
449a9ff14b
Remove a version of EmitDifference.
...
llvm-svn: 98002
2010-03-08 23:02:59 +00:00
Chris Lattner
ee20b5f236
eliminate a form of PrintLabelName.
...
llvm-svn: 97999
2010-03-08 22:52:49 +00:00
Chris Lattner
b779eb6a1d
eliminate the non-MCSymbol versions of EmitReference.
...
llvm-svn: 97997
2010-03-08 22:47:57 +00:00
Chris Lattner
722714dde2
mc'ize EmitLabel.
...
llvm-svn: 97996
2010-03-08 22:44:40 +00:00
Chris Lattner
8dcf41ed66
merge DIEObjectLabel and DIEDwarfLabel into DIELabel.
...
Yes, DIE you fiendish labels, die all of you.
llvm-svn: 97995
2010-03-08 22:31:46 +00:00
Chris Lattner
bc9210cb70
elimiante the DWLabel class, using MCSymbol instead. Start
...
switching some stuff over to passing around MCSymbol* instead
of stem+ID.
llvm-svn: 97993
2010-03-08 22:23:36 +00:00
Devang Patel
8119fe87d8
Derive DIType from DIScope. This simplifies getContext() where for members the context is a type. This also eliminates need of CompileUnitMaps maintained by dwarf writer.
...
llvm-svn: 97990
2010-03-08 22:02:50 +00:00
Devang Patel
3b548aa8e2
Avoid using DIDescriptor.isNull().
...
This is a first step towards eliminating checks in Descriptor constructors.
llvm-svn: 97975
2010-03-08 20:52:55 +00:00
Devang Patel
bc97f6b757
Revert r97947.
...
llvm-svn: 97963
2010-03-08 19:20:38 +00:00
Devang Patel
fe28599f6f
Avoid using DIDescriptor.isNull().
...
This is a first step towards eliminating unncessary constructor checks in light weight DIDescriptor wrappers.
llvm-svn: 97947
2010-03-08 18:25:48 +00:00
Douglas Gregor
9abb538be0
Revert r97917, which was causing Clang Debug self-host failures.
...
llvm-svn: 97932
2010-03-08 02:58:37 +00:00
Jeffrey Yasskin
37a0372fc4
Roll r97906 forward again, without double-deleting CompileUnit::IndexTyDie.
...
llvm-svn: 97917
2010-03-07 17:10:13 +00:00
Jeffrey Yasskin
7068bdba50
_2_ gcc crashes, ah, ah, ah...
...
(Rolling back r97906.)
llvm-svn: 97909
2010-03-07 07:16:49 +00:00
Jeffrey Yasskin
413721b050
Avoid leaking CompileUnits and DbgScopes from DwarfDebug. Leaks found by Valgrind!
...
llvm-svn: 97906
2010-03-07 06:55:35 +00:00
Devang Patel
f200b39d13
Fix grammar.
...
Thanks Duncan!
llvm-svn: 97572
2010-03-02 17:58:15 +00:00
Devang Patel
d0fa304dc7
Constructors and operators for anonymous aggregates does not names. Do not force empty AT_name attribute in such cases.
...
llvm-svn: 97533
2010-03-02 01:26:20 +00:00
Devang Patel
ca55a04273
Before setting scope end marker, pay attention to scope begin marker and existing scope end marker, if any. Scope must begin before it ends and nested inlined scope do not truncate surrounding scope.
...
llvm-svn: 96445
2010-02-17 02:20:34 +00:00
Dan Gohman
4a618827de
Fix "the the" and similar typos.
...
llvm-svn: 95781
2010-02-10 16:03:48 +00:00
Devang Patel
ce25dd74c0
Add declaration attribute to a variable DIE, if there is a separate DIE for the definition.
...
llvm-svn: 95646
2010-02-09 01:58:33 +00:00
Devang Patel
6efc8e5120
Set DW_AT_artificial only if argument is marked as artificial.
...
llvm-svn: 95461
2010-02-06 01:02:37 +00:00
Devang Patel
d4be4ced76
Do not generate specification DIE for nested functions.
...
llvm-svn: 95452
2010-02-05 23:09:20 +00:00
Devang Patel
d231689adb
Emit appropriate expression to find virtual base offset.
...
llvm-svn: 95242
2010-02-03 20:08:48 +00:00
Devang Patel
999b499024
Provide interface to identifiy artificial methods.
...
llvm-svn: 95240
2010-02-03 19:57:19 +00:00
Devang Patel
057c642486
Apparently gdb is not amused by empty lines in pubtypes section.
...
llvm-svn: 95064
2010-02-02 03:47:27 +00:00