Benjamin Kramer
2cade0b3ff
Eliminate temporary string.
...
llvm-svn: 101711
2010-04-18 09:19:41 +00:00
Benjamin Kramer
6f6354213f
Properly inherit the environment on darwin where environ is not available for shared libraries.
...
llvm-svn: 101710
2010-04-18 09:16:04 +00:00
Nick Lewycky
152b2bc046
This is horrible. Split the difference, and declare 'environ' on all non-Darwin
...
platforms to unbreak the darwin and linux builds. The BSD folks should feel
free to change the #if, if this breaks them.
llvm-svn: 101703
2010-04-18 07:07:48 +00:00
Nick Lewycky
459afe3cce
Revert r101701, Darwin doesn't have 'environ'. Go figure.
...
llvm-svn: 101702
2010-04-18 06:44:21 +00:00
Nick Lewycky
2b694c49bb
Fix linux build. posix_spawn doesn't inherit the environment by default.
...
llvm-svn: 101701
2010-04-18 06:22:26 +00:00
Chris Lattner
22b58ac393
make Program::Execute use posix_spawn on systems that support it,
...
as it is more efficient than fork/exec.
Thanks to Eric for adding the autoconf check. It would be nice if
a cmake guru could add a cmake check for posix_spawn as well.
llvm-svn: 101693
2010-04-18 04:14:37 +00:00
Chris Lattner
f543d5e029
reduce indentation
...
llvm-svn: 101692
2010-04-18 03:35:23 +00:00
Chris Lattner
49c39866b3
unnest from namespace.
...
llvm-svn: 101691
2010-04-18 03:33:55 +00:00
Chris Lattner
9d12c8bb70
silence some -Wmissing-field-initializers warnings.
...
llvm-svn: 101690
2010-04-18 03:30:32 +00:00
Chris Lattner
733984a968
silence some unused-value warnings.
...
llvm-svn: 101689
2010-04-18 03:28:20 +00:00
Bill Wendling
3592f4fac4
Don't rely upon the MCSymbol "isDefined" method to indicate if a label has been
...
emitted or not. The JIT doesn't set that. Look it up in the label location table
instead.
llvm-svn: 101686
2010-04-18 00:56:05 +00:00
Bill Wendling
19aefaac85
Formatting changes. No functionality change.
...
llvm-svn: 101685
2010-04-18 00:52:08 +00:00
Bill Wendling
9218175b5f
Add a "PadTo" field to the emitULEB128Bytes method. This will pad out to the
...
indicated number of bytes.
llvm-svn: 101684
2010-04-18 00:51:49 +00:00
Nick Lewycky
c639c07492
Fix declarations in a few more tests.
...
llvm-svn: 101676
2010-04-17 21:29:25 +00:00
Daniel Dunbar
0cfafd5b8f
Revert "reject forward references to functions whose type don't match", because DJG told me to!
...
llvm-svn: 101675
2010-04-17 21:24:55 +00:00
Nick Lewycky
7abefa1195
Fix intrinsic signature in this test.
...
llvm-svn: 101674
2010-04-17 21:12:55 +00:00
Chris Lattner
8028c98fe2
reject forward references to functions whose type don't match
...
up with the definition (and fix a broken testcase). PR6491.
llvm-svn: 101670
2010-04-17 20:45:56 +00:00
Dale Johannesen
f044ed7cf9
Add comment (lost when reverting and reapplying 101503).
...
llvm-svn: 101664
2010-04-17 19:56:46 +00:00
Chris Lattner
3117e48427
doh, didn't mean to check in my hackaround lit sucking. :)
...
llvm-svn: 101663
2010-04-17 19:04:03 +00:00
Chris Lattner
99d17acb35
fix PR6332, allowing an index of zero into a zero sized array
...
even if the element of the array has no size.
llvm-svn: 101662
2010-04-17 19:02:33 +00:00
Chris Lattner
65d1e40895
teach the x86 asm parser how to handle segment prefixes
...
in memory operands. rdar://7874844
llvm-svn: 101661
2010-04-17 18:56:34 +00:00
Chris Lattner
a5798151a3
refactor .if handling code a bit.
...
llvm-svn: 101659
2010-04-17 18:14:27 +00:00
Chris Lattner
a5eb6419eb
fix PR6858: a dangling pointer use bug which was caused
...
by switching CachedFunctionInfo from a std::map to a
ValueMap (which is implemented in terms of a DenseMap).
DenseMap has different iterator invalidation semantics
than std::map.
This should hopefully fix the dragonegg builder.
llvm-svn: 101658
2010-04-17 17:57:56 +00:00
Chris Lattner
d506ae2617
a bunch of cleanups and tweaks, no functionality changes.
...
llvm-svn: 101657
2010-04-17 17:55:00 +00:00
Dan Gohman
b66acedc8a
Fix more -Wcast-qual warnings.
...
llvm-svn: 101656
2010-04-17 17:44:03 +00:00
Dan Gohman
fba34ef042
Fix -Wcast-qual warnings.
...
llvm-svn: 101655
2010-04-17 17:42:52 +00:00
Chris Lattner
99878c7ca4
remove a dead variable, PR6856
...
llvm-svn: 101648
2010-04-17 17:28:00 +00:00
Chris Lattner
80a22bfcdb
testcase for r101538, patch by Nico Schmidt!
...
llvm-svn: 101642
2010-04-17 17:22:06 +00:00
Dan Gohman
3dde4fe35f
Add const qualifiers to TargetLoweringObjectFile usage.
...
llvm-svn: 101640
2010-04-17 16:44:48 +00:00
Dan Gohman
b5109cda0e
Use const_cast instead of a C-style cast to cast away const.
...
llvm-svn: 101639
2010-04-17 16:43:55 +00:00
Dan Gohman
5736cd1e47
Start function numbering at 0.
...
llvm-svn: 101638
2010-04-17 16:29:15 +00:00
Dan Gohman
6065ff317b
Delete now-unnecessary const_casts.
...
llvm-svn: 101637
2010-04-17 15:32:28 +00:00
Dan Gohman
87af9f6bf4
Use cast instead of dyn_cast when assuming success.
...
llvm-svn: 101636
2010-04-17 15:31:16 +00:00
Dan Gohman
a0f855157e
Use const qualifiers with TargetLowering. This eliminates several
...
const_casts, and it reinforces the design of the Target classes being
immutable.
SelectionDAGISel::IsLegalToFold is now a static member function, because
PIC16 uses it in an unconventional way. There is more room for API
cleanup here.
And PIC16's AsmPrinter no longer uses TargetLowering.
llvm-svn: 101635
2010-04-17 15:26:15 +00:00
Dan Gohman
5c8db5ab3f
Move per-function state out of TargetLowering subclasses and into
...
MachineFunctionInfo subclasses.
llvm-svn: 101634
2010-04-17 14:41:14 +00:00
Chandler Carruth
c03e85229d
Name these stub files consistently with the SPU and PPC targets' conventions.
...
Also rename the classes appropriately. The CMake build already used these
names.
llvm-svn: 101631
2010-04-17 08:50:29 +00:00
Chris Lattner
42337931b2
a bunch of ssse3 instructions are misencoded to think they have an
...
i8 field when they really do not. This fixes rdar://7840289
llvm-svn: 101629
2010-04-17 07:38:24 +00:00
Chris Lattner
bef627e798
reenable r101565, removing a problematic assertion.
...
CGSCC can delete nodes in regions of the callgraph that
have already been visited. If new CG nodes are allocated
to the same pointer, we shouldn't abort, just handle it
correctly by assigning a new number. This should restore
stability by removing invalidated pointers that *will* be
reused from the densemap in the iterator.
llvm-svn: 101628
2010-04-17 07:17:19 +00:00
Evan Cheng
0004496a98
Postra machine licm must add registers defined by loop invariants to *all* of
...
the live-in sets of BBs in the loop. Otherwise later pass may end up using the
registers and override the invariant. rdar://7852937
No reasonablly sized test case possible.
llvm-svn: 101626
2010-04-17 07:07:11 +00:00
Nick Lewycky
35e42e1c73
Refresh this documentation. Things have changed a bit in the mean time:
...
- LLVMgold.so --> libLLVMgold.so
- the GCC LTO project is no longer 'upcoming'
- document the plugin support for 'ar' and 'nm'
llvm-svn: 101624
2010-04-17 07:00:24 +00:00
Evan Cheng
81f543c005
Fix codegen passes. -disable-ssc shouldn't disable postra machine licm.
...
llvm-svn: 101622
2010-04-17 06:47:47 +00:00
Evan Cheng
6442d111dd
More work to allow dag combiner to promote 16-bit ops to 32-bit.
...
llvm-svn: 101621
2010-04-17 06:13:15 +00:00
Evan Cheng
aa2f3449c4
Another 80 col violation.
...
llvm-svn: 101620
2010-04-17 06:12:32 +00:00
Bob Wilson
7e53f886d2
Revise my previous change to ExpandBIT_CONVERT. I hadn't realized that this
...
may be called when either the source or destination type is i64, and my
change also hadn't fixed the most obvious problem -- assuming that i64 will
only be bitconverted to f64, ignoring the various vector types.
Radar 7873160.
llvm-svn: 101615
2010-04-17 05:30:19 +00:00
Evan Cheng
d3d5e6793a
Add nounwind.
...
llvm-svn: 101613
2010-04-17 03:43:36 +00:00
Bob Wilson
ad00f21093
Re-commit my previous SSAUpdater changes. The previous version naively tried
...
to determine where to place PHIs by iteratively comparing reaching definitions
at each block. That was just plain wrong. This version now computes the
dominator tree within the subset of the CFG where PHIs may need to be placed,
and then places the PHIs in the iterated dominance frontier of each definition.
The rest of the patch is mostly the same, with a few more performance
improvements added in.
llvm-svn: 101612
2010-04-17 03:08:24 +00:00
Bob Wilson
01b8b8ef7d
As a temporary workaround for post-RA not handling DebugValue instructions,
...
just remove them all. Radar 7873207 (working around the root problem of
Radar 7759363).
llvm-svn: 101604
2010-04-17 00:49:11 +00:00
Jakob Stoklund Olesen
2f0fbb4587
Revert "Use a simpler data structure to calculate the least recently used register in RegAllocLocal."
...
This reverts commit 101392. It broke a buildbot.
llvm-svn: 101595
2010-04-17 00:38:36 +00:00
Dale Johannesen
9968eef300
Reapply 101503+101520. These are "obviously correct" [Chris]
...
and don't cause any problems on Darwin.
llvm-svn: 101584
2010-04-17 00:08:21 +00:00
Chris Lattner
36a76e4185
disable r101565: an assert is getting triggered. More lurking badness no doubt.
...
llvm-svn: 101583
2010-04-17 00:05:36 +00:00