Chris Lattner
ffe0c407be
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
de011196a4
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
d44eba5166
Trailing whitespace.
...
llvm-svn: 76229
2009-07-17 20:38:17 +00:00
Chris Lattner
1cb7dceb60
fix include guard.
...
llvm-svn: 76228
2009-07-17 20:32:07 +00:00
Evan Cheng
ba5b67f66d
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
56e00a404f
GetElementPtr instructions default to having no overflow.
...
llvm-svn: 76222
2009-07-17 19:23:21 +00:00
Xerxes Ranby
d90b36055d
Implement cmake LLVM_MULTITHREADED gcc atomic builtin checks.
...
llvm-svn: 76221
2009-07-17 19:22:41 +00:00
Bob Wilson
7c323a8936
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
006b15b943
Define a no-pointer-overflow flag for GetElementPtr instructions.
...
llvm-svn: 76218
2009-07-17 19:01:15 +00:00
Dan Gohman
9a36c67769
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
e0aa2053d5
Fix copy & paste errors
...
llvm-svn: 76216
2009-07-17 18:57:16 +00:00
Dan Gohman
3a0e58549b
Add a method to clear optional optimization information from a Value.
...
llvm-svn: 76215
2009-07-17 18:56:23 +00:00
Anton Korobeynikov
59a1adb87c
Add missed attributes to C bindings
...
llvm-svn: 76214
2009-07-17 18:55:30 +00:00
Daniel Dunbar
cff1fabab5
Start generating AsmMatcher.inc for X86.
...
llvm-svn: 76213
2009-07-17 18:55:26 +00:00
Daniel Dunbar
d84feb8aa1
tblgen/AsmMatcher: Emit simple matcher for register names.
...
llvm-svn: 76212
2009-07-17 18:51:11 +00:00
Jeffrey Yasskin
1669f312b5
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
cfd362eb0e
Fix compile warning.
...
llvm-svn: 76210
2009-07-17 18:33:52 +00:00
Anton Korobeynikov
fbac44c040
Add missed return
...
llvm-svn: 76209
2009-07-17 18:28:59 +00:00
Daniel Dunbar
d4143bc1d8
opt: Add -std-link-opts argument, matches llvm-ld's optimizations.
...
llvm-svn: 76199
2009-07-17 18:09:39 +00:00
Anton Korobeynikov
60f7bd3562
Add support for naked functions
...
llvm-svn: 76198
2009-07-17 18:07:26 +00:00
Chris Lattner
fb1ff2b993
rename test.
...
llvm-svn: 76197
2009-07-17 18:05:55 +00:00
Bruno Cardoso Lopes
ddd0013bb6
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
Dan Gohman
67f2b7d376
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
112af1d308
Fix typo.
...
llvm-svn: 76186
2009-07-17 16:41:57 +00:00
Daniel Dunbar
8ce5e03431
Initialize another Context, in the hopes of unbreaking CBE.
...
llvm-svn: 76184
2009-07-17 16:20:23 +00:00
Dan Gohman
e2276d0168
Fix an apparent typo.
...
llvm-svn: 76183
2009-07-17 16:12:36 +00:00
David Greene
ba889e5a71
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
dc9438e8d9
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
David Greene
70e8a51127
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
d1b273609e
Avoid a compiler warning when assertions are turned off.
...
llvm-svn: 76176
2009-07-17 12:25:14 +00:00
Duncan Sands
c77e727d4f
Testcase for PR4214.
...
llvm-svn: 76174
2009-07-17 11:44:20 +00:00
Eli Friedman
ff61032fa0
Documentation clarifications for isSafeToSpeculativelyExecute.
...
llvm-svn: 76168
2009-07-17 08:38:29 +00:00
Eli Friedman
6e61f56a5c
Oops, accidentally set a legal operation to expand.
...
llvm-svn: 76165
2009-07-17 07:34:23 +00:00
Eli Friedman
b946eb988f
Expand misc operations from test/CodeGen/Generic.
...
llvm-svn: 76163
2009-07-17 07:28:06 +00:00
Eli Friedman
93d9c9f85f
Handle void in XCoreTargetLowering::isLegalAddressingMode. Triggers in
...
test/CodeGen/Generic.
llvm-svn: 76162
2009-07-17 07:16:38 +00:00
Eli Friedman
7c72917709
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
Eli Friedman
98a65107b3
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
1396b57ab1
Add broken gcc from PR4532.
...
llvm-svn: 76157
2009-07-17 06:32:10 +00:00
Evan Cheng
490d2cc5a4
Fix tSUBspi operand definition. It reads and writes sp, which is a high register.
...
llvm-svn: 76155
2009-07-17 05:43:12 +00:00
Eli Friedman
12bf15280b
Set an operation expansion, noticed while running
...
llc over test/CodeGen/Generic with -march=alpha.
llvm-svn: 76154
2009-07-17 05:23:03 +00:00
Eli Friedman
fde598545c
Make promotion in operation legalization for SETCC work correctly.
...
llvm-svn: 76153
2009-07-17 05:16:04 +00:00
Eli Friedman
b56b3ca224
Replace isTrapping with a new, similar method called
...
isSafeToSpeculativelyExecute. The new method is a bit closer to what
the callers actually care about in that it rejects more things callers
don't want. It also adds more precise handling for integer
division, and unifies code for analyzing the legality of a speculative
load.
llvm-svn: 76150
2009-07-17 04:28:42 +00:00
Eli Friedman
6be9680238
One more operation expansion for MIPS, from test/CodeGen/Generic.
...
llvm-svn: 76149
2009-07-17 04:07:24 +00:00
Daniel Dunbar
f988544dcf
Make sure CWriter's Context get's initialized.
...
llvm-svn: 76147
2009-07-17 03:43:21 +00:00
Eli Friedman
48510f16fb
Expand a bunch of illegal operations on MIPS (found by
...
inspection and running over CodeGen/Generic).
llvm-svn: 76146
2009-07-17 02:28:12 +00:00
Daniel Dunbar
fd7e588f92
Fix 'may be used uninitialized' warning.
...
- Anton, please review.
llvm-svn: 76144
2009-07-17 02:19:26 +00:00
Dan Gohman
7c3853f1ab
Add the private keyword to the polygen grammar.
...
llvm-svn: 76135
2009-07-17 01:07:45 +00:00
Dan Gohman
aa63f9763f
Add the private keyword to the VIM syntax highlighting.
...
llvm-svn: 76134
2009-07-17 01:06:53 +00:00
Evan Cheng
9a2f6c2a99
Fix my brain cramp by inverting the assertion condition.
...
llvm-svn: 76131
2009-07-17 00:32:06 +00:00
Jeffrey Yasskin
5509582ad0
Fix "no newline at end of file" warning from gcc.
...
llvm-svn: 76127
2009-07-16 23:58:14 +00:00