Eric Christopher
957fc3df52
Moar words!
...
llvm-svn: 110422
2010-08-06 01:30:54 +00:00
Dan Gohman
5f1702e4fe
Move all the logic for function attributes and call attributes out of the
...
AliasAnalysis base class and into BasicAliasAnalyais. This avoids confusion
about where such logic is happening when there are other AliasAnalysis
implementations present.
Move the logic for translating two-callsite getModRefInfo queries into
other AliasAnalysis queries out of BasicAliasAnalysis and into the
AliasAnalysis base class, as it is useful for other AliasAnalysis
implementations.
llvm-svn: 110421
2010-08-06 01:25:49 +00:00
Nate Begeman
ad5dd42817
vdup_lane was missing
...
<rdar://problem/8278732>
llvm-svn: 110420
2010-08-06 01:24:57 +00:00
Nate Begeman
a59132e329
Add tablegen support for vdup_lane
...
llvm-svn: 110419
2010-08-06 01:24:11 +00:00
Eli Friedman
e83d2b7649
Attempt to fix uninitialized value warning reported on cfe-commits.
...
llvm-svn: 110418
2010-08-06 01:17:25 +00:00
John McCall
dc9796e23a
Properly pop out of Objective-C method declarations when they are (ill-formedly)
...
found within contexts other than the translation unit.
llvm-svn: 110417
2010-08-06 00:46:05 +00:00
Owen Anderson
c2107d2eaa
Fix botched revert.
...
llvm-svn: 110416
2010-08-06 00:36:20 +00:00
Sean Callanan
fc16cc0a0c
Removed the -i option from the expr command, and
...
made IR-based expression evaluation the default.
Also added a new class to hold persistent variables.
The class is empty as yet while I write up a design
document for what it will do. Also the place where
it is currently created (by the Expression command)
is certainly wrong.
llvm-svn: 110415
2010-08-06 00:35:32 +00:00
Sebastian Redl
e98428d7bd
Add an environment variable that makes libclang use chaining for PCH.
...
llvm-svn: 110414
2010-08-06 00:35:11 +00:00
Sean Callanan
c503e784c7
Fixed namespace issues that were breaking the
...
SWIG wrappers on a non-internal SnowLeopard
system.
llvm-svn: 110413
2010-08-06 00:33:35 +00:00
Sean Callanan
c7fbf73651
Fixed namespace visibility problems that were
...
breaking the build for me on a non-internal
SnowLeopard system.
llvm-svn: 110412
2010-08-06 00:32:49 +00:00
Devang Patel
8a18aee421
While emitting DBG_VALUE for registers spilled at the end of a block do not use location of MBB->end(). If a block does not have terminator then incoming iterator points to end().
...
llvm-svn: 110411
2010-08-06 00:26:18 +00:00
Owen Anderson
bda59bd247
Revert r110396 to fix buildbots.
...
llvm-svn: 110410
2010-08-06 00:23:35 +00:00
Zhongxing Xu
396e041f5e
add test case.
...
llvm-svn: 110408
2010-08-06 00:04:40 +00:00
Bruno Cardoso Lopes
085ce5c5e1
Remove unused AVX intrinsics
...
llvm-svn: 110407
2010-08-06 00:04:07 +00:00
Eric Christopher
e1fb772aa5
Add an option to always emit realignment code for a particular module.
...
llvm-svn: 110404
2010-08-05 23:57:43 +00:00
Jakob Stoklund Olesen
01a81b01bc
Be more aggressive about removing joined physreg copies.
...
When a joined COPY changes subreg liveness, we keep it around as a KILL,
otherwise it is safe to delete.
llvm-svn: 110403
2010-08-05 23:51:28 +00:00
Jakob Stoklund Olesen
b4ef4a961d
Don't verify LiveVariables if LiveIntervals is available.
...
LiveVariables becomes horribly wrong while the coalescer is running, but the
analysis is not zapped until after the coalescer pass has run. This causes tons
of false reports when calling verify form the coalescer.
llvm-svn: 110402
2010-08-05 23:51:26 +00:00
Dan Gohman
e0d5c458ec
Fix 80-column violations.
...
llvm-svn: 110401
2010-08-05 23:48:14 +00:00
Johnny Chen
ae9fea401d
Added description about unittest2.
...
llvm-svn: 110400
2010-08-05 23:47:51 +00:00
Bruno Cardoso Lopes
e2538c4ecf
We don't want to support built-ins which aren't needed by the intrinsics. Remove them
...
llvm-svn: 110399
2010-08-05 23:47:43 +00:00
Dan Gohman
78d7c080e0
Make AA private, since subclasses shouldn't (aren't don't) access it directly.
...
llvm-svn: 110398
2010-08-05 23:44:45 +00:00
Johnny Chen
73258830f3
o Added unittest2 which has added the new features in unittest for Python 2.7
...
backported to Python 2.3+. Some of the features desired include better
verbose reporting in unittest2.TextTestRunner and decorator support for
skipping tests and expected failures.
http://pypi.python.org/pypi/unittest2
o Modified the existing .py tests to use unittest2 and decorated
TestSTL.test_step_into_stl(), which is known to always fail currently, with
@unittest2.expectedFailure.
llvm-svn: 110397
2010-08-05 23:42:46 +00:00
Owen Anderson
755aceb5d0
Don't use PassInfo* as a type identifier for passes. Instead, use the address of the static
...
ID member as the sole unique type identifier. Clean up APIs related to this change.
llvm-svn: 110396
2010-08-05 23:42:04 +00:00
Dan Gohman
ddb2d65c50
Remove IntrWriteMem, as it's the default. Rename IntrWriteArgMem
...
to IntrReadWriteArgMem, as it's for reading as well as writing.
llvm-svn: 110395
2010-08-05 23:36:21 +00:00
Bruno Cardoso Lopes
77954bdf7a
Support very basic (doesn't include ABI support in the front-end, varags, ...) 256-bit argument passing and return for AVX
...
llvm-svn: 110394
2010-08-05 23:35:51 +00:00
Dan Gohman
884dd752c3
Implement AccessesArguments checking in the two-callsite form
...
of BasicAA::getModRefInfo. This allows BasicAA to say that two
memset calls to non-aliasing memory locations don't interfere.
llvm-svn: 110393
2010-08-05 23:34:50 +00:00
Zhongxing Xu
cf61a0639d
Don't assert on a file stream if its state is not tracked. Fix pr7831.
...
llvm-svn: 110392
2010-08-05 23:24:13 +00:00
Dan Gohman
e2a67168bf
Yes, we can do better, but this is not the place for it.
...
llvm-svn: 110391
2010-08-05 23:23:32 +00:00
Jordy Rose
afdb053618
When checking if a buffer access is valid, first make sure the buffer has a valid Loc. Fixes PR7830.
...
llvm-svn: 110390
2010-08-05 23:11:30 +00:00
Bruno Cardoso Lopes
3d19889ca8
Fix AVX 256-bit intrinsics headers by using the right cast type while dealing with logical ops
...
llvm-svn: 110389
2010-08-05 23:04:58 +00:00
Owen Anderson
0f306a45ad
Add the beginnings of infrastructure for range tracking.
...
llvm-svn: 110388
2010-08-05 22:59:19 +00:00
Eric Christopher
b7ad70d1e8
Revert my last commit, apparently it's a runtime issue.
...
llvm-svn: 110387
2010-08-05 22:48:32 +00:00
Jakob Stoklund Olesen
e7709ebb64
Add basic verification of LiveIntervals.
...
We verify that the LiveInterval is live at uses and defs, and that all
instructions have a SlotIndex.
Stuff we don't check yet:
- Is the LiveInterval minimal?
- Do all defs correspond to instructions or phis?
- Do all defs dominate all their live ranges?
- Are all live ranges continually reachable from their def?
llvm-svn: 110386
2010-08-05 22:32:21 +00:00
Eric Christopher
d7d0517cc2
Remove unnecessary include.
...
llvm-svn: 110385
2010-08-05 22:28:22 +00:00
Owen Anderson
4674dd6cf5
Give JumpThreading+LVI a long-form cl::opt so that it's easier to toggle the default.
...
llvm-svn: 110384
2010-08-05 22:11:31 +00:00
Owen Anderson
c3a1413ea1
Split the tag and value members of LVILatticeVal in preparation for expanding the lattice to something that won't fit in two bits.
...
llvm-svn: 110383
2010-08-05 22:10:46 +00:00
Dan Gohman
26ef7c7ab7
Fix memdep's code for reasoning about dependences between two calls. A Ref
...
response from getModRefInfo is not useful here. Instead, check for identical
calls only in the NoModRef case.
Reapply r110270, and strengthen it to compensate for the memdep changes.
When both calls are readonly, there is no dependence between them.
llvm-svn: 110382
2010-08-05 22:09:15 +00:00
John McCall
491462425a
Don't crash when mangling empty anonymous unions. We never actually *need*
...
these, but it's convenient to mangle them when deferring them (in the 99.99%
case where it's not an anonymous union, of course).
llvm-svn: 110381
2010-08-05 22:02:13 +00:00
Gabor Greif
638c823211
remove the private hack from CallInst, it was not supposed to hit the branch anyway
...
as a positive consequence the CallSite::getCallee() methods now can be rewritten to be
a bit more efficient
llvm-svn: 110380
2010-08-05 21:25:49 +00:00
Johnny Chen
a21249597e
When running a single test case, lldb.SBDebugger.Terminate() is not being called
...
because unittest.main() calls sys.exit() before returning. Fixed by registering
an exit handler for this situation.
llvm-svn: 110379
2010-08-05 21:23:45 +00:00
Sebastian Redl
f03cdc5d27
Collect namespaces that need updating in a PCH chain. WIP
...
llvm-svn: 110378
2010-08-05 21:22:19 +00:00
Fariborz Jahanian
903aba39ee
Add support for block imported struct variable layout info.
...
(objc gc and blocks in NeXt runtime).
llvm-svn: 110377
2010-08-05 21:00:25 +00:00
Owen Anderson
d3c94af142
Give ConstantRange an operator=
...
llvm-svn: 110376
2010-08-05 20:51:10 +00:00
John McCall
5513fce96b
It turns out that linkers (at least, the Darwin linker) don't necessarily
...
do the right thing with mixed-visibility symbols, so disable the visibility
optimization where that's possible, i.e. with template classes (since it's
possible that an arbitrary template might be subject to an explicit
instantiation elsewhere). 447.dealII actually does this.
I've put the code under an option that's currently not hooked up to anything.
llvm-svn: 110374
2010-08-05 20:39:18 +00:00
Eric Christopher
fa5d2415b6
Document results of PR7762.
...
llvm-svn: 110373
2010-08-05 20:38:39 +00:00
Devang Patel
cc3f3b341d
Move x86 specific tests into test/CodeGen/X86.
...
llvm-svn: 110372
2010-08-05 20:25:37 +00:00
Eric Christopher
4d9c3400f3
Handle the memory barrier pseudo that goes to nothing for the JIT.
...
llvm-svn: 110371
2010-08-05 20:04:36 +00:00
Chris Lattner
dc7ee3cd6b
fix the va_list definition for vc++64, patch by Cameron Esfahani!
...
llvm-svn: 110370
2010-08-05 20:04:20 +00:00
Eric Christopher
7fd06eb8ce
Set hasSideEffects on the 64-bit no-sse memory barrier.
...
llvm-svn: 110369
2010-08-05 19:54:59 +00:00