Anders Carlsson
3c9beab48a
Handle references correctly when synthesizing copy constructors.
...
With this change, the clang-on-clang test result is now
Expected Passes : 224
Unexpected Failures: 37
Which means that we can compile over 80% of clang with clang! :)
llvm-svn: 89799
2009-11-24 21:08:10 +00:00
John McCall
45b1a47a9c
Fix some major problems dealing with dependently-qualified names in implicit
...
member-reference contexts. Fixes some clang-on-clang asserts.
llvm-svn: 89796
2009-11-24 20:33:45 +00:00
Devang Patel
b3e0168428
Use StringRef instead of std::string in DIEString.
...
llvm-svn: 89793
2009-11-24 19:42:17 +00:00
Fariborz Jahanian
831451b417
Fix the test case failed in buildbot.
...
llvm-svn: 89791
2009-11-24 19:37:10 +00:00
Devang Patel
21c2e100ba
Remove DebugLabelFolder pass. It is not used by dwarf writer anymore.
...
llvm-svn: 89790
2009-11-24 19:37:07 +00:00
Fariborz Jahanian
6f2d25e441
More cleanup of argument call collection.
...
llvm-svn: 89789
2009-11-24 19:27:49 +00:00
Devang Patel
c8654eb64e
Swith to pubtypes section before emitting pub types.
...
llvm-svn: 89787
2009-11-24 19:18:41 +00:00
Daniel Dunbar
7402c472c3
Remove bogus error handling code.
...
llvm-svn: 89786
2009-11-24 19:03:33 +00:00
John McCall
e66edc18ae
Rip out TemplateIdRefExpr and make UnresolvedLookupExpr and
...
DependentScopeDeclRefExpr support storing templateids. Unite the common
code paths between ActOnDeclarationNameExpr and ActOnTemplateIdExpr.
This gets us to a point where we don't need to store function templates in
the AST using TemplateNames, which is critical to ripping out OverloadedFunction.
Also resolves a few FIXMEs.
llvm-svn: 89785
2009-11-24 19:00:30 +00:00
John McCall
95c66b9ddc
DeclarationName::getIdentifier should take a const IdentifierInfo, since the
...
constructor does anyway.
llvm-svn: 89784
2009-11-24 18:44:29 +00:00
Anders Carlsson
3a202f601e
Handle cases where we're constructing an array of objects and the constructor has default arguments.
...
llvm-svn: 89783
2009-11-24 18:43:52 +00:00
John McCall
847e2a10d6
Helper function for turning a TemplateName into a DeclarationName.
...
llvm-svn: 89782
2009-11-24 18:42:40 +00:00
Fariborz Jahanian
835026e9f1
Refactor collection of call arguments in common code.
...
Add support for variadic collection functions. More to do
here.
llvm-svn: 89781
2009-11-24 18:29:37 +00:00
Anders Carlsson
0b11a3ef71
GNUNullExpr is a valid sentinel even though it isn't of pointer type.
...
llvm-svn: 89778
2009-11-24 17:24:21 +00:00
Sebastian Redl
03b67ea1a2
Make sure redeclaration chains are properly linked, even through invalid decls. This fixes PR5415.
...
llvm-svn: 89777
2009-11-24 17:14:34 +00:00
Douglas Gregor
dcf1962405
Explicitly store the condition variable within switch statements, and
...
make sure that this variable is destroyed when we exit the switch
statement.
llvm-svn: 89776
2009-11-24 17:07:59 +00:00
Anders Carlsson
b9f96a3286
We always need to emit the base expression of a member expression, even when the member decl refers to an enum. Thanks to Eli for pointing this out!
...
llvm-svn: 89775
2009-11-24 16:57:33 +00:00
Anders Carlsson
b7408b95ed
Fix a crash when "instantiating" VarDecls that are neither type nor value dependent.
...
llvm-svn: 89774
2009-11-24 16:52:50 +00:00
Douglas Gregor
965f450d42
Introduce cleanup scopes for "if" statements in two places:
...
- Outside the "if", to ensure that we destroy the condition variable
at the end of the "if" statement rather than at the end of the
block containing the "if" statement.
- Inside the "then" and "else" branches, so that we emit then- or
else-local cleanups at the end of the corresponding block when the
block is not a compound statement.
To make adding these new cleanup scopes easier (and since
switch/do/while will all need the same treatment), added the
CleanupScope RAII object to introduce a new cleanup scope and make
sure it gets cleaned up.
llvm-svn: 89773
2009-11-24 16:43:22 +00:00
Kovarththanan Rajaratnam
8e4b3ed386
Remove empty wpa directory. It was moved to examples/wpa in r88825
...
llvm-svn: 89772
2009-11-24 16:40:46 +00:00
Kovarththanan Rajaratnam
2279b1308e
Sort CMakeLists.txt
...
llvm-svn: 89771
2009-11-24 16:32:20 +00:00
Edward O'Callaghan
2b12faa1fd
Fix comments as pre-post review for rev.89765.
...
llvm-svn: 89770
2009-11-24 16:29:23 +00:00
Douglas Gregor
48a409eb39
Rename CleanupScope -> DelayedCleanupBlock. No functionality change.
...
llvm-svn: 89769
2009-11-24 16:21:10 +00:00
Anders Carlsson
3c15b80e21
Update project file.
...
llvm-svn: 89768
2009-11-24 16:12:41 +00:00
Douglas Gregor
0156d1c8db
Un-break instantiation of if statements with conditional variables
...
llvm-svn: 89767
2009-11-24 16:07:02 +00:00
Edward O'Callaghan
db521ec23b
Fix for PR5568.
...
llvm-svn: 89766
2009-11-24 15:23:21 +00:00
Edward O'Callaghan
dddf134a3c
Provide Path::isSpecialFile interface for PR5568.
...
llvm-svn: 89765
2009-11-24 15:19:10 +00:00
Kovarththanan Rajaratnam
fdfca4aaef
Remove trailing spaces
...
llvm-svn: 89764
2009-11-24 14:30:21 +00:00
Ken Dyck
a34032d227
Add getByteSize() and getTypeSizeInBytes().
...
llvm-svn: 89760
2009-11-24 12:04:54 +00:00
Edward O'Callaghan
5fd452d596
Fix for PR5373, Credit to Jakub Staszak.
...
llvm-svn: 89758
2009-11-24 11:51:52 +00:00
Zhongxing Xu
c2998766f0
We can remove this file now.
...
llvm-svn: 89751
2009-11-24 08:28:49 +00:00
Zhongxing Xu
c6123a1a3c
Refactor undefined result checker. This is the last one.
...
llvm-svn: 89750
2009-11-24 08:24:26 +00:00
Evan Cheng
184ec26fcd
Enable predication of NEON instructions in Thumb2 mode.
...
llvm-svn: 89748
2009-11-24 08:06:15 +00:00
Zhongxing Xu
9e200798c2
Refactor NilReceiverStructRet and NilReceiverLargerThanVoidPtrRet into
...
CallAndMessageChecker.
llvm-svn: 89745
2009-11-24 07:06:39 +00:00
Kovarththanan Rajaratnam
506b89325c
Remove trailing spaces
...
llvm-svn: 89744
2009-11-24 06:30:23 +00:00
Anders Carlsson
59486a2ddb
Get rid of the ugly CGCXX names and replace them with CGClass, CGExprCXX and CGTemporaries.
...
llvm-svn: 89742
2009-11-24 05:51:11 +00:00
Anders Carlsson
bd97548f35
When mangling a ctor/dtor we need to take into consideration whether it's a member template.
...
llvm-svn: 89741
2009-11-24 05:36:32 +00:00
Anders Carlsson
65e6d131f0
Set the template specialization kind before instantiating the function definition so that the function will have the right linkage.
...
llvm-svn: 89740
2009-11-24 05:34:41 +00:00
Eli Friedman
fb8a93fe1d
Teach Evaluate to handle member expressions referring to enum constants and
...
static member constants. No significant visible difference at the moment
because it conservatively assumes the base has side effects. I'm planning to
use this for CodeGen.
llvm-svn: 89738
2009-11-24 05:28:59 +00:00
Anders Carlsson
0ade9715f2
Ignore constructor member templates in CodeGenModule::EmitTopLevelDecl.
...
llvm-svn: 89737
2009-11-24 05:16:24 +00:00
Anders Carlsson
6445773279
It is common for vtables to contain pointers to functions that have either incomplete return types or incomplete argument types.
...
Handle this by returning the llvm::OpaqueType for those cases, which CodeGenModule::GetOrCreateLLVMFunction knows about, and treats as being an "incomplete function".
llvm-svn: 89736
2009-11-24 05:08:52 +00:00
Zhongxing Xu
72269ec8cb
rename UndefinedArgChecker to CallAndMessageChecker.
...
llvm-svn: 89735
2009-11-24 04:45:44 +00:00
Zhongxing Xu
da32375115
Rename: UndefinedArgChecker.cpp => CallAndMessageChecker.cpp
...
llvm-svn: 89734
2009-11-24 04:08:01 +00:00
Jeffrey Yasskin
9c2d34012d
Oops. Re-disable JITTest.NoStubs on ARM and PPC since they still use stubs to
...
make far calls work.
llvm-svn: 89733
2009-11-24 02:11:14 +00:00
Dan Gohman
cfb181d3cb
Delete some dead and non-obvious code.
...
llvm-svn: 89729
2009-11-24 01:48:15 +00:00
Ted Kremenek
c0229557dd
Enhance null dereference diagnostics by indicating what variable (if any) was dereferenced. Addresses <rdar://problem/7039161>.
...
llvm-svn: 89726
2009-11-24 01:33:10 +00:00
Devang Patel
04d2f2d192
Emit pubtypes.
...
llvm-svn: 89725
2009-11-24 01:14:22 +00:00
Dale Johannesen
86dcae106d
Make capitalization of names starting "is" more consistent.
...
No functional change.
llvm-svn: 89724
2009-11-24 01:09:07 +00:00
Evan Cheng
ece825dc4f
Data type suffix must come after predicate.
...
llvm-svn: 89723
2009-11-24 01:05:23 +00:00
David Goodwin
3f3a8b1c7e
<rdar://problem/6721894>. Allow multiple registers to be renamed together (super and sub) if necessary to break an anti-dependence.
...
llvm-svn: 89722
2009-11-24 00:59:08 +00:00