Owen Anderson
ed14e767e8
Reapply r73647 in a non-broken form.
...
llvm-svn: 73662
2009-06-17 23:49:06 +00:00
Anton Korobeynikov
5658086052
Fix asm string from MOVi16
...
llvm-svn: 73661
2009-06-17 23:43:36 +00:00
Anton Korobeynikov
f687a828b2
Thumb2 instructions are enabled only in unified assembler mode.
...
Emit switch directive for it. I have no idea whether this is
requirement for Darwin or not.
llvm-svn: 73660
2009-06-17 23:43:18 +00:00
Douglas Gregor
f187420feb
Diagnose class members that shadow a template parameter. Fixes
...
<rdar://problem/6952203>.
To do this, we actually remove a not-quite-correct optimization in the
C++ name lookup routines. We'll revisit this optimization for the
general case once more C++ is working.
llvm-svn: 73659
2009-06-17 23:37:01 +00:00
Douglas Gregor
4dd5b57ef4
Fix regression testing in Xcode, again
...
llvm-svn: 73658
2009-06-17 23:35:04 +00:00
Argyrios Kyrtzidis
9941a4d314
Fix some erroneous comments due to trigger-happy copy&paste.
...
No functionality change.
llvm-svn: 73657
2009-06-17 23:19:02 +00:00
Dan Gohman
7f836c7c61
Instcombine zext(trunc(x) & mask) to x&mask, even if the trunc has
...
multiple users.
llvm-svn: 73656
2009-06-17 23:17:05 +00:00
Argyrios Kyrtzidis
7bcce49e04
Factor out some common code into Sema::EnterDeclaratorContext/ExitDeclaratorContext.
...
llvm-svn: 73655
2009-06-17 23:15:40 +00:00
Owen Anderson
89ee957cbd
Use double-checked locking for this lazy initialization.
...
llvm-svn: 73653
2009-06-17 22:53:57 +00:00
Argyrios Kyrtzidis
3df1978270
Implement correct name lookup inside an initializer of a C++ class static data member.
...
Fixes "test/CXX/basic/basic.lookup/basic.lookup.unqual/p13.cpp" test case.
llvm-svn: 73652
2009-06-17 22:50:06 +00:00
Argyrios Kyrtzidis
c4b766bc65
Move CXXMethodDecl::OutOfLineDefinition into Decl::OutOfLine.
...
llvm-svn: 73651
2009-06-17 22:49:50 +00:00
Fariborz Jahanian
b1743254e7
Removed deadcode related to addition of constructor
...
decls to a class.
llvm-svn: 73650
2009-06-17 22:44:31 +00:00
Steve Naroff
fb4330f255
First step toward fixing <rdar://problem/6613046> refactor clang objc type representation.
...
Add a type (ObjCObjectPointerType) and remove a type (ObjCQualifiedIdType).
This large/tedious patch is just a first step. Next step is to remove ObjCQualifiedInterfaceType. After that, I will remove the magic TypedefType for 'id' (installed by Sema). This work will enable various simplifications throughout clang (when dealing with ObjC types).
No functionality change.
llvm-svn: 73649
2009-06-17 22:40:22 +00:00
Ted Kremenek
b35e2caab5
Remove more uses of GRStateRef.
...
llvm-svn: 73648
2009-06-17 22:28:13 +00:00
Owen Anderson
aab59c52cf
Protect the GC table in Function.cpp
...
llvm-svn: 73647
2009-06-17 22:23:31 +00:00
Anton Korobeynikov
603a0b7a09
Honour calling convention and attributes of Callee by default.
...
llvm-svn: 73646
2009-06-17 22:20:46 +00:00
Ted Kremenek
d0d4cfc8e7
Class 'Environment' no longer should subclass llvm::FoldingSetNode.
...
Environment hasn't been uniqued in a FoldingSet for some time, so this
was just wasting a pointer in GRState.
llvm-svn: 73645
2009-06-17 22:06:03 +00:00
Ted Kremenek
609df30929
Start moving in the direction of removing GRStateRef. Now each
...
GRState object has a direct reference to its GRStateManager, making
the functionality of GRStateRef redunandant. This will lead to some
nice API cleanup and code shrinking across libAnalysis.
llvm-svn: 73644
2009-06-17 22:02:04 +00:00
Owen Anderson
b299d40d5a
Use atomic increment here.
...
llvm-svn: 73643
2009-06-17 22:01:09 +00:00
Owen Anderson
c7b91a0820
Thread-safe (and ManagedStatic-ized) LeakDetector!
...
llvm-svn: 73642
2009-06-17 21:56:05 +00:00
Douglas Gregor
758a869b14
Support dependent extended vector types and template instantiation
...
thereof. Patch by Anders Johnsen!
llvm-svn: 73641
2009-06-17 21:51:59 +00:00
Daniel Dunbar
3f460e84d0
Testing improvements:
...
- Make python test runner force COLUMNS=0 to increase determinism.
- Substitute clang-cc as we do for clang.
- Improved detection of Ctrl-C.
- Honor CLANG and CLANGCC environment variables.
- Add proper command line arguments to TestRunner.py (see --help)
llvm-svn: 73640
2009-06-17 21:33:37 +00:00
Owen Anderson
0dd39fdf96
Guard mutation of the timing info global.
...
llvm-svn: 73639
2009-06-17 21:28:54 +00:00
Douglas Gregor
791505b5ea
Search path for 64-bit Ubuntu Linux, from Anders Johnsen
...
llvm-svn: 73637
2009-06-17 21:18:36 +00:00
Owen Anderson
eae9772679
We need to use double-checked locking for lazy initialization in this case when running multithreaded.
...
llvm-svn: 73636
2009-06-17 21:16:20 +00:00
Stefanus Du Toit
667cd9abe2
Fix link to BasicBlock doxygen documentation in Programmer's Manual
...
llvm-svn: 73635
2009-06-17 21:12:26 +00:00
Lang Hames
16cab1935e
VNInfo cleanup.
...
llvm-svn: 73634
2009-06-17 21:01:20 +00:00
Dan Gohman
432af7ace0
Add -disable-output to a bunch of tests that don't care about the output.
...
llvm-svn: 73633
2009-06-17 20:56:26 +00:00
Dale Johannesen
81b6463ed0
This fixes a bug introduced in 72661, which can
...
move loads back past a check that the load address
is valid, see new testcase. The test that went
in with 72661 has exactly this case, except that
the conditional it's moving past is checking
something else; I've settled for changing that
test to reference a global, not a pointer. It
may be possible to scan all the tests you pass and
make sure none of them are checking any component
of the address, but it's not trivial and I'm not
trying to do that here.
llvm-svn: 73632
2009-06-17 20:48:23 +00:00
Owen Anderson
f89c38cace
Factor out some common code.
...
llvm-svn: 73631
2009-06-17 20:43:39 +00:00
Owen Anderson
65c5cd728e
Add an RAII ScopedWriter, which allows one to acquire a writer lock for the duration of a scope. Simplify a lot of uses of
...
writer locks in Constants.cpp by using it.
llvm-svn: 73630
2009-06-17 20:34:43 +00:00
Fariborz Jahanian
ccd44a5072
Added missing @endcode.
...
llvm-svn: 73629
2009-06-17 20:24:52 +00:00
Owen Anderson
61794049e4
Simplify the locking on the Constants tables, and make it more efficient, by pushing it into the ValueMap from the callers.
...
Document those ValueMap functions that are _not_ locked, so that callers are aware that they need to do the locking themselves.
llvm-svn: 73628
2009-06-17 20:10:08 +00:00
Douglas Gregor
6b6bba4a20
Diagnose the use of attributes on namespace aliases, from Anis Ahmad
...
llvm-svn: 73626
2009-06-17 19:49:00 +00:00
Torok Edwin
ba93ea7632
Add debug message about non-local loads being clobbered.
...
llvm-svn: 73625
2009-06-17 18:48:18 +00:00
Owen Anderson
2d7231d4c3
Type safety for Constants.cpp! Some of this is temporary, as I'm planning to push some of the R/W locking into FoldingSet.
...
llvm-svn: 73624
2009-06-17 18:40:29 +00:00
Douglas Gregor
4bf38785b1
Make sure that .td and .def files get into the list of headers in a CMake build, for use in Xcode and Visual Studio
...
llvm-svn: 73623
2009-06-17 18:31:02 +00:00
Anton Korobeynikov
02bb33c58d
Initial support for some Thumb2 instructions.
...
Patch by Viktor Kutuzov and Anton Korzh from Access Softek, Inc.
llvm-svn: 73622
2009-06-17 18:13:58 +00:00
Dan Gohman
d8329e8378
Update comments to use doxygen syntax.
...
llvm-svn: 73621
2009-06-17 17:51:33 +00:00
Owen Anderson
4b660a8da7
Protect the ValueHandle table.
...
llvm-svn: 73620
2009-06-17 17:36:57 +00:00
Chris Lattner
a0e4dedf9e
link in targets
...
llvm-svn: 73619
2009-06-17 17:25:50 +00:00
Chris Lattner
d15131020d
Remove old #includes
...
llvm-svn: 73618
2009-06-17 17:23:16 +00:00
Owen Anderson
e5fdd0b5d1
We need to guard reads of the AbstractTypeUsers list, as well as writes to it. While it would be nice to use a R/W lock here,
...
we can't, because it HAS to be recursive.
llvm-svn: 73617
2009-06-17 17:13:54 +00:00
Douglas Gregor
3def847551
Define LLVM_NATIVE_ARCH in CMake, so that lli can actually JIT
...
llvm-svn: 73616
2009-06-17 17:01:56 +00:00
Douglas Gregor
2761988cfd
Add RWMutex.cpp to the CMake makefiles
...
llvm-svn: 73615
2009-06-17 17:01:30 +00:00
Owen Anderson
a4b739aff4
Type safety for TypeSymbolTable!
...
llvm-svn: 73614
2009-06-17 16:56:27 +00:00
Chris Lattner
d24df24527
make sure that JIT examples link in their appropriate target.
...
llvm-svn: 73613
2009-06-17 16:48:44 +00:00
Chris Lattner
f44da17824
remove two headers subsumed by TargetSelect.h
...
llvm-svn: 73612
2009-06-17 16:45:02 +00:00
Chris Lattner
5dcc4f6999
switch to using llvm/Target/TargetSelect.h
...
llvm-svn: 73611
2009-06-17 16:42:19 +00:00
Chris Lattner
e57ab8dbd0
Add a utility header that makes it easy to link in the right set
...
of targets for various purposes.
llvm-svn: 73610
2009-06-17 16:42:01 +00:00