Chris Lattner
e79b2bc088
Untangle a snarl that I discovered when updating the mangler,
...
starting in getCurrentFunctionEHName. Among other problems,
we would try to privative a "foo.eh" label, but end up emitting
the label as _Lfoo.eh instead of L_foo.eh on darwin. This is really
bad, and the linker has always tolerated these labels existing.
For now, just emit them as _foo.eh.
This patch also fixes problems with ".eh" labels on unnamed
functions and eliminates two strangely defined TargetAsmInfo
hooks.
llvm-svn: 76231
2009-07-17 20:46:40 +00:00
Daniel Dunbar
71475775b9
Sketch support for target specific assembly parser.
...
- Not fully enabled yet, need a configure regeneration.
llvm-svn: 76230
2009-07-17 20:42:00 +00:00
Mikhail Glushenkov
28309ac04c
Trailing whitespace.
...
llvm-svn: 76229
2009-07-17 20:38:17 +00:00
Chris Lattner
7a7cd9294d
fix include guard.
...
llvm-svn: 76228
2009-07-17 20:32:07 +00:00
Evan Cheng
f08b003bf0
Simplify the coalescer (finally!) by making LiveIntervals::processImplicitDefs a little more aggressive and teaching liveintervals to make use of isUndef marker on MachineOperands.
...
llvm-svn: 76223
2009-07-17 19:43:40 +00:00
Dan Gohman
97190a2c93
GetElementPtr instructions default to having no overflow.
...
llvm-svn: 76222
2009-07-17 19:23:21 +00:00
Xerxes Ranby
64c6d42a9a
Implement cmake LLVM_MULTITHREADED gcc atomic builtin checks.
...
llvm-svn: 76221
2009-07-17 19:22:41 +00:00
Bob Wilson
46f079e33f
Fix a crash in SROA. The FunctionPass::doInitialization method was never
...
being called so that Context was never initialized. I'm not sure if this
is the right fix but at least it keeps opt from crashing.
llvm-svn: 76220
2009-07-17 19:05:13 +00:00
Dan Gohman
e17cf4527c
Define a no-pointer-overflow flag for GetElementPtr instructions.
...
llvm-svn: 76218
2009-07-17 19:01:15 +00:00
Dan Gohman
23131ccffc
Add new classes for working with optional optimization data
...
for binary operators Add, Sub, Mul, and UDiv.
llvm-svn: 76217
2009-07-17 18:59:51 +00:00
Anton Korobeynikov
9750be9776
Fix copy & paste errors
...
llvm-svn: 76216
2009-07-17 18:57:16 +00:00
Dan Gohman
2035302038
Add a method to clear optional optimization information from a Value.
...
llvm-svn: 76215
2009-07-17 18:56:23 +00:00
Anton Korobeynikov
08c08870f9
Add missed attributes to C bindings
...
llvm-svn: 76214
2009-07-17 18:55:30 +00:00
Daniel Dunbar
bdffb1a333
Start generating AsmMatcher.inc for X86.
...
llvm-svn: 76213
2009-07-17 18:55:26 +00:00
Daniel Dunbar
e2eec05e60
tblgen/AsmMatcher: Emit simple matcher for register names.
...
llvm-svn: 76212
2009-07-17 18:51:11 +00:00
Jeffrey Yasskin
15d54b9504
r76102 added the MachineCodeEmitter::processDebugLoc call and called it from
...
the X86 Emitter. This patch extends that to the rest of the targets that can
write to a MachineCodeEmitter: ARM, Alpha, and PPC.
llvm-svn: 76211
2009-07-17 18:49:39 +00:00
Daniel Dunbar
e974dc3eb1
Fix compile warning.
...
llvm-svn: 76210
2009-07-17 18:33:52 +00:00
Anton Korobeynikov
acd2f4dcea
Add missed return
...
llvm-svn: 76209
2009-07-17 18:28:59 +00:00
Ted Kremenek
2182259f36
Move WalkAST logic for 'ChooseExpr' to 'VisitChooseExpr'.
...
llvm-svn: 76205
2009-07-17 18:20:32 +00:00
Ted Kremenek
51d40b07a0
Move WalkAST logic for 'ConditionalOperator' into 'VisitConditionalOperator'.
...
llvm-svn: 76202
2009-07-17 18:15:54 +00:00
Daniel Dunbar
c3ccd180e7
Fix indentation / trailing white space.
...
llvm-svn: 76200
2009-07-17 18:10:27 +00:00
Daniel Dunbar
41f9a3afdb
opt: Add -std-link-opts argument, matches llvm-ld's optimizations.
...
llvm-svn: 76199
2009-07-17 18:09:39 +00:00
Anton Korobeynikov
c8ce7b08ba
Add support for naked functions
...
llvm-svn: 76198
2009-07-17 18:07:26 +00:00
Chris Lattner
52d436e98b
rename test.
...
llvm-svn: 76197
2009-07-17 18:05:55 +00:00
Ted Kremenek
0bcdc981ef
Remove stale comments.
...
llvm-svn: 76196
2009-07-17 18:04:55 +00:00
Bruno Cardoso Lopes
0cded73755
revert one of the loops to use indicies over iterators because there are vector insertions inside the loop
...
llvm-svn: 76195
2009-07-17 18:02:30 +00:00
Ted Kremenek
8a286fbdb9
Per offline discussion with Steve Naroff, add back Type::getAsXXXType() methods
...
until Doug Gregor's Type smart pointer code lands (or more discussion occurs).
These methods just call the new Type::getAs<XXX> methods, so we still have
reduced implementation redundancy. Having explicit getAsXXXType() methods makes
it easier to set breakpoints in the debugger.
llvm-svn: 76193
2009-07-17 17:50:17 +00:00
Dan Gohman
9691e71a4f
Add a SubclassOptionalData field to Value. See the doxygen comment for
...
details.
llvm-svn: 76189
2009-07-17 17:16:59 +00:00
Daniel Dunbar
412e4fc5a1
Fix typo.
...
llvm-svn: 76186
2009-07-17 16:41:57 +00:00
Daniel Dunbar
482bd9dcb8
Initialize another Context, in the hopes of unbreaking CBE.
...
llvm-svn: 76184
2009-07-17 16:20:23 +00:00
Dan Gohman
ce51c29bca
Fix an apparent typo.
...
llvm-svn: 76183
2009-07-17 16:12:36 +00:00
David Greene
d3d52aabdf
Make DOUT an lvalue in release mode so that developers may use DOUT in
...
their code in release mode. This helps to debug release-mode problems.
llvm-svn: 76182
2009-07-17 15:55:53 +00:00
Daniel Dunbar
50745bf080
Provide slightly more refined error message when trying to lookup a target, and
...
none are registered.
llvm-svn: 76181
2009-07-17 15:50:49 +00:00
Chris Lattner
c960b3e80c
clean up this code, add the fixme back.
...
llvm-svn: 76180
2009-07-17 15:50:19 +00:00
Chris Lattner
5230191e37
objc methods can't be an operand to callexpr.
...
llvm-svn: 76179
2009-07-17 15:46:27 +00:00
David Greene
33d1e7db01
Add logic to align instruction operands to columns for pretty-printing.
...
No target uses this currently. This patch only adds the mechanism so
that local installations can choose to enable this.
llvm-svn: 76177
2009-07-17 14:24:46 +00:00
Duncan Sands
35e95639c0
Avoid a compiler warning when assertions are turned off.
...
llvm-svn: 76176
2009-07-17 12:25:14 +00:00
Duncan Sands
520024b465
Testcase for PR4214.
...
llvm-svn: 76174
2009-07-17 11:44:20 +00:00
Eli Friedman
ce343d2103
Documentation clarifications for isSafeToSpeculativelyExecute.
...
llvm-svn: 76168
2009-07-17 08:38:29 +00:00
Zhongxing Xu
9d05213899
Rename Entity::getName() to Entity::getPrintableName() to make its purpose
...
more obvious.
llvm-svn: 76167
2009-07-17 07:49:44 +00:00
Zhongxing Xu
3436f58e40
As suggested by Argyrios, revert r76159 and make "FindImmediateParent"
...
a public static method of ASTLocation.
llvm-svn: 76166
2009-07-17 07:36:20 +00:00
Eli Friedman
fab6cbe6cd
Oops, accidentally set a legal operation to expand.
...
llvm-svn: 76165
2009-07-17 07:34:23 +00:00
Zhongxing Xu
3c8fa978ad
Refactor code into a new CallExpr::getDirectCallee() method. Simplify some
...
code with the new method.
llvm-svn: 76164
2009-07-17 07:29:51 +00:00
Eli Friedman
6a60a66b2b
Expand misc operations from test/CodeGen/Generic.
...
llvm-svn: 76163
2009-07-17 07:28:06 +00:00
Eli Friedman
efa2215e30
Handle void in XCoreTargetLowering::isLegalAddressingMode. Triggers in
...
test/CodeGen/Generic.
llvm-svn: 76162
2009-07-17 07:16:38 +00:00
Zhongxing Xu
2391d265ed
CallGraph: add a bunch of stmt visitors.
...
llvm-svn: 76161
2009-07-17 07:05:19 +00:00
Eli Friedman
836024d76d
Remove some unnecessary expansion markings. Add a few expansion
...
markings that show up in test/CodeGen/Generic.
llvm-svn: 76160
2009-07-17 07:03:00 +00:00
Zhongxing Xu
d25ea831b2
Relax the assertion in ASTLocation's ctor: if the decl is not the immediate
...
parent of the stmt, find the immediate parent for the stmt.
This is because sometimes we cannot get the immediate decl of the stmt when
creating the ASTLocation. We can only get a parent of the stmt.
llvm-svn: 76159
2009-07-17 06:58:08 +00:00
Eli Friedman
aeb44a31f6
Add operation expansion/promotion for a bunch of operations, many of
...
which show up in test/CodeGen/Generic.
llvm-svn: 76158
2009-07-17 06:36:24 +00:00
Nick Lewycky
d562ab1cfd
Add broken gcc from PR4532.
...
llvm-svn: 76157
2009-07-17 06:32:10 +00:00