]> granicus.if.org Git - clang/log
clang
14 years agoFix thinko and enable clang build on mingw again (hopefully)
Anton Korobeynikov [Sun, 14 Mar 2010 12:55:35 +0000 (12:55 +0000)]
Fix thinko and enable clang build on mingw again (hopefully)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98492 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd EmitString helper method
Kovarththanan Rajaratnam [Sun, 14 Mar 2010 08:35:19 +0000 (08:35 +0000)]
Add EmitString helper method

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98488 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUnbreak last commit. This should have been part of r98478.
Kovarththanan Rajaratnam [Sun, 14 Mar 2010 07:55:43 +0000 (07:55 +0000)]
Unbreak last commit. This should have been part of r98478.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98480 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPass file string by reference
Kovarththanan Rajaratnam [Sun, 14 Mar 2010 07:38:15 +0000 (07:38 +0000)]
Pass file string by reference

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98478 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPath related cleanup. Remove unnecessary variables.
Kovarththanan Rajaratnam [Sun, 14 Mar 2010 07:15:57 +0000 (07:15 +0000)]
Path related cleanup. Remove unnecessary variables.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98473 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse makeAbsolute()
Kovarththanan Rajaratnam [Sun, 14 Mar 2010 07:06:50 +0000 (07:06 +0000)]
Use makeAbsolute()

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98472 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMove to anonymous namespace
Kovarththanan Rajaratnam [Sun, 14 Mar 2010 06:48:05 +0000 (06:48 +0000)]
Move to anonymous namespace

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98469 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFixed copy-and-paste error causing categories to contain the protocols declared on...
David Chisnall [Sat, 13 Mar 2010 22:20:45 +0000 (22:20 +0000)]
Fixed copy-and-paste error causing categories to contain the protocols declared on the class, not the protocols declared on the category.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98455 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRevert 98439. There is a bad race condition in sys::Path::makeUnique on win32.
Benjamin Kramer [Sat, 13 Mar 2010 21:22:49 +0000 (21:22 +0000)]
Revert 98439. There is a bad race condition in sys::Path::makeUnique on win32.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98452 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd missing space.
Rafael Espindola [Sat, 13 Mar 2010 20:14:52 +0000 (20:14 +0000)]
Add missing space.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98448 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoGive explicit template instantiations weak ODR linkage. Former
Douglas Gregor [Sat, 13 Mar 2010 18:23:07 +0000 (18:23 +0000)]
Give explicit template instantiations weak ODR linkage. Former
iterations of this patch gave explicit template instantiation
link-once ODR linkage, which permitted the back end to eliminate
unused symbols. Weak ODR linkage still requires the symbols to be
generated.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98441 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix PR6562. If a type is dependent, we don't know if it will have implicit
Rafael Espindola [Sat, 13 Mar 2010 18:12:56 +0000 (18:12 +0000)]
Fix PR6562. If a type is dependent, we don't know if it will have implicit
destructors.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98440 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake getTemporaryPath a static member of CIndexer and use it to replace tmpnam calls.
Benjamin Kramer [Sat, 13 Mar 2010 13:05:20 +0000 (13:05 +0000)]
Make getTemporaryPath a static member of CIndexer and use it to replace tmpnam calls.
This fixes linker warnings on linux.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98439 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse raw_ostream instead of sprintf.
Benjamin Kramer [Sat, 13 Mar 2010 12:06:51 +0000 (12:06 +0000)]
Use raw_ostream instead of sprintf.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98438 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSimplify code.
Benjamin Kramer [Sat, 13 Mar 2010 11:34:41 +0000 (11:34 +0000)]
Simplify code.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98437 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse SmallString instead of SmallVector
Kovarththanan Rajaratnam [Sat, 13 Mar 2010 10:17:05 +0000 (10:17 +0000)]
Use SmallString instead of SmallVector

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98436 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoNo need to call setIdentifierInfo() after LookUpIdentifierInfo() which LookUpIdentifi...
Kovarththanan Rajaratnam [Sat, 13 Mar 2010 08:53:33 +0000 (08:53 +0000)]
No need to call setIdentifierInfo() after LookUpIdentifierInfo() which LookUpIdentifierInfo() will automatically do

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98435 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRe-revert the explicit template instantiation linkage patch. I am beginning to look...
Douglas Gregor [Sat, 13 Mar 2010 03:49:57 +0000 (03:49 +0000)]
Re-revert the explicit template instantiation linkage patch. I am beginning to look incompetent

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98425 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoReinstate patch to turn explicit template instantiations into weak symbols
Douglas Gregor [Sat, 13 Mar 2010 03:14:19 +0000 (03:14 +0000)]
Reinstate patch to turn explicit template instantiations into weak symbols

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98424 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImplement several CIndex functions for constructing USRs from C-strings instead of...
Ted Kremenek [Sat, 13 Mar 2010 02:50:34 +0000 (02:50 +0000)]
Implement several CIndex functions for constructing USRs from C-strings instead of AST elements.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98421 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCheck compatibility of vector types using their canonicalizations.
John McCall [Fri, 12 Mar 2010 23:14:13 +0000 (23:14 +0000)]
Check compatibility of vector types using their canonicalizations.
Fixes an assertion arising C overload analysis, but really I can't imagine
that this wouldn't cause a thousand other uncaught failures.

Fixes PR6600.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98400 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAllow users to set CPPFLAGS and CXXFLAGS on the make command line.
Jeffrey Yasskin [Fri, 12 Mar 2010 22:55:16 +0000 (22:55 +0000)]
Allow users to set CPPFLAGS and CXXFLAGS on the make command line.

Tested: make CPPFLAGS=-m64 CXXFLAGS=-m64 -j8 && (cd tools/clang;make test)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98399 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse llvm::SmallVector instead of std::vector.
Ted Kremenek [Fri, 12 Mar 2010 22:22:36 +0000 (22:22 +0000)]
Use llvm::SmallVector instead of std::vector.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98397 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix a rare corner case bug which exposed a serious block API generation
Fariborz Jahanian [Fri, 12 Mar 2010 21:40:43 +0000 (21:40 +0000)]
Fix a rare corner case bug which exposed a serious block API generation
when initialized variable is a byref block variable and is referenced recursively
in the initializer (you guessed it, it is block implementation of
fibonacci number). Fix, on the other hand is trvial, by generating the
API for byref variable before API for its initializer. We will have this
test added to our internal test suite as a clang-style test is not possible
due to very convoluted IR sequence. Fixes radar 7745514.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98393 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoIf main file name is empty then use "<unknown>".
Devang Patel [Fri, 12 Mar 2010 21:04:27 +0000 (21:04 +0000)]
If main file name is empty then use "<unknown>".

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98385 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPreserve the inherited-default-argument bit through instantiation.
John McCall [Fri, 12 Mar 2010 20:02:47 +0000 (20:02 +0000)]
Preserve the inherited-default-argument bit through instantiation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98375 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemember whether a ParmVarDecl was spelled with a default argument or
John McCall [Fri, 12 Mar 2010 18:31:32 +0000 (18:31 +0000)]
Remember whether a ParmVarDecl was spelled with a default argument or
whether it inherited one from a previous declaration.

Patch by Enea Zaffanella!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98362 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix grammar
Ted Kremenek [Fri, 12 Mar 2010 16:46:36 +0000 (16:46 +0000)]
Fix grammar

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98352 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMake IdentifierTable::get(StringRef) "primary" (no functionality change)
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 12:01:19 +0000 (12:01 +0000)]
Make IdentifierTable::get(StringRef) "primary" (no functionality change)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98347 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoReintroduce r98340 and r98341 now without copy/paste errors.
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 11:27:37 +0000 (11:27 +0000)]
Reintroduce r98340 and r98341 now without copy/paste errors.

Thanks to Ben for pointing this out.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98345 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoBack out r98340 abd r98341
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 11:00:51 +0000 (11:00 +0000)]
Back out r98340 abd r98341

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98344 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd IdentifierTable::get() overload and start using it
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 10:32:27 +0000 (10:32 +0000)]
Add IdentifierTable::get() overload and start using it

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98343 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix PR6584: __SSE3__ not defined with -mss3
Nuno Lopes [Fri, 12 Mar 2010 10:20:09 +0000 (10:20 +0000)]
fix PR6584: __SSE3__ not defined with -mss3

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98342 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSwitch parameter order for consistency (no functionality change)
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 10:17:07 +0000 (10:17 +0000)]
Switch parameter order for consistency (no functionality change)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98341 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd keywords using StringRef
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 10:14:26 +0000 (10:14 +0000)]
Add keywords using StringRef

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98340 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCleanup using StringRef
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 09:33:31 +0000 (09:33 +0000)]
Cleanup using StringRef

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98339 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSwitch over IdentifierInfoLookup to StringRef
Kovarththanan Rajaratnam [Fri, 12 Mar 2010 08:23:34 +0000 (08:23 +0000)]
Switch over IdentifierInfoLookup to StringRef

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98337 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImprove the unused-value check to look into comma expressions and filter out
John McCall [Fri, 12 Mar 2010 07:11:26 +0000 (07:11 +0000)]
Improve the unused-value check to look into comma expressions and filter out
voids in sub-expressions.  Patch by Mike M!

Fixes PR4806.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98335 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMore this adjustment simplification.
Anders Carlsson [Fri, 12 Mar 2010 05:28:07 +0000 (05:28 +0000)]
More this adjustment simplification.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98333 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRevert the linkage change for explicit template instantiations; something is amiss
Douglas Gregor [Fri, 12 Mar 2010 05:13:59 +0000 (05:13 +0000)]
Revert the linkage change for explicit template instantiations; something is amiss

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98332 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove OldOffset.
Anders Carlsson [Fri, 12 Mar 2010 05:02:01 +0000 (05:02 +0000)]
Remove OldOffset.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98331 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove debug output.
Anders Carlsson [Fri, 12 Mar 2010 04:55:20 +0000 (04:55 +0000)]
Remove debug output.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98330 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoBegin simplifying handling of thunks.
Anders Carlsson [Fri, 12 Mar 2010 04:54:20 +0000 (04:54 +0000)]
Begin simplifying handling of thunks.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98329 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoGive explicit template instantiations weak linkage (but don't defer
Douglas Gregor [Fri, 12 Mar 2010 04:49:06 +0000 (04:49 +0000)]
Give explicit template instantiations weak linkage (but don't defer
them). Fixes PR6578.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98328 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoExtend the builtin syntax to allow address-space qualifiers on pointers and
John McCall [Fri, 12 Mar 2010 04:21:28 +0000 (04:21 +0000)]
Extend the builtin syntax to allow address-space qualifiers on pointers and
references.  Based on a patch by Arnaud de Grandmaison!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98327 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSplit Sema::ActOnProperty() into two recursive functions to clearly separate
Ted Kremenek [Fri, 12 Mar 2010 02:31:10 +0000 (02:31 +0000)]
Split Sema::ActOnProperty() into two recursive functions to clearly separate
the handling of class extensions from other cases.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98326 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd SSE4 packed integer comparisons and corresponding intrinsics.
Eric Christopher [Fri, 12 Mar 2010 01:22:33 +0000 (01:22 +0000)]
Add SSE4 packed integer comparisons and corresponding intrinsics.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98323 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd an extra test to this test-case.
John McCall [Fri, 12 Mar 2010 01:20:21 +0000 (01:20 +0000)]
Add an extra test to this test-case.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98322 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImplement basic support for friend types and functions in non-dependent
John McCall [Fri, 12 Mar 2010 01:19:31 +0000 (01:19 +0000)]
Implement basic support for friend types and functions in non-dependent
contexts.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98321 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix 80 col violations.
Ted Kremenek [Fri, 12 Mar 2010 00:49:00 +0000 (00:49 +0000)]
Fix 80 col violations.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98320 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMove 'ActOn' methods to the beginning of the file
Ted Kremenek [Fri, 12 Mar 2010 00:46:40 +0000 (00:46 +0000)]
Move 'ActOn' methods to the beginning of the file
so we can clearly see the parser entry points.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98319 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate CMake build.
Ted Kremenek [Fri, 12 Mar 2010 00:38:40 +0000 (00:38 +0000)]
Update CMake build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98318 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSplit Sema logic for ObjC @property and @synthesize into
Ted Kremenek [Fri, 12 Mar 2010 00:38:38 +0000 (00:38 +0000)]
Split Sema logic for ObjC @property and @synthesize into
a separate file.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98317 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoInteger array extraction for sse4.1.
Eric Christopher [Thu, 11 Mar 2010 23:50:18 +0000 (23:50 +0000)]
Integer array extraction for sse4.1.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98305 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd packed integer array insertion.
Eric Christopher [Thu, 11 Mar 2010 23:36:29 +0000 (23:36 +0000)]
Add packed integer array insertion.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98299 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoKeep track of Record context to ensure that record elements are properly nested in...
Devang Patel [Thu, 11 Mar 2010 20:01:48 +0000 (20:01 +0000)]
Keep track of Record context to ensure that record elements are properly nested in debug info.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98283 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFor ivars created using @synthesize, set their DeclContext to be
Ted Kremenek [Thu, 11 Mar 2010 19:44:54 +0000 (19:44 +0000)]
For ivars created using @synthesize, set their DeclContext to be
the @implementation (instead of the @interface) and actually add
the ivar to the DeclContext (which we weren't doing before).

This allows us to simplify ASTContext::CollectNonClassIvars() by
removing ASTContext::CollectProtocolSynthesizedIvars().  Now all
ivars can be found by either inspecting the ObjCInterfaceDecl and
its companion ObjCImplementationDecl.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98280 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoWarn about comparing an unsigned expression with 0 in tautological ways.
John McCall [Thu, 11 Mar 2010 19:43:18 +0000 (19:43 +0000)]
Warn about comparing an unsigned expression with 0 in tautological ways.
Patch by mikem!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98279 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemember the PR number.
John McCall [Thu, 11 Mar 2010 19:33:57 +0000 (19:33 +0000)]
Remember the PR number.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98276 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImplement -Wmissing-field-initializers. Patch by mikem!
John McCall [Thu, 11 Mar 2010 19:32:38 +0000 (19:32 +0000)]
Implement -Wmissing-field-initializers.  Patch by mikem!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98275 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse -emit-llvm-only, to avoid leaving a temp around.
Daniel Dunbar [Thu, 11 Mar 2010 18:23:02 +0000 (18:23 +0000)]
Use -emit-llvm-only, to avoid leaving a temp around.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98267 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd tentative support for accessing local variables with
Fariborz Jahanian [Thu, 11 Mar 2010 18:20:03 +0000 (18:20 +0000)]
Add tentative support for accessing local variables with
external linkage (static, extern, etc.) in blocks in
rewriter. wip.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98265 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix PR6433, crash on va_arg of typedef.
Chris Lattner [Thu, 11 Mar 2010 18:19:55 +0000 (18:19 +0000)]
fix PR6433, crash on va_arg of typedef.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98264 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDriver: Free Action objects.
Daniel Dunbar [Thu, 11 Mar 2010 18:04:58 +0000 (18:04 +0000)]
Driver: Free Action objects.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98263 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDriver: Free synthesized derived arguments.
Daniel Dunbar [Thu, 11 Mar 2010 18:04:53 +0000 (18:04 +0000)]
Driver: Free synthesized derived arguments.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98262 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDriver: Free jobs in JobList and PipedJob instances.
Daniel Dunbar [Thu, 11 Mar 2010 18:04:49 +0000 (18:04 +0000)]
Driver: Free jobs in JobList and PipedJob instances.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98261 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate checker build.
Ted Kremenek [Thu, 11 Mar 2010 16:47:29 +0000 (16:47 +0000)]
Update checker build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98259 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse the new vtable layout code for computing virtual base offset offsets.
Anders Carlsson [Thu, 11 Mar 2010 16:06:20 +0000 (16:06 +0000)]
Use the new vtable layout code for computing virtual base offset offsets.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98257 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCorrectly mangle address of member in template arguments. Fixes PR6460
Rafael Espindola [Thu, 11 Mar 2010 14:07:00 +0000 (14:07 +0000)]
Correctly mangle address of member in template arguments. Fixes PR6460

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98254 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix a self-host problem caused by this over-eager assertion. I'm not sure
John McCall [Thu, 11 Mar 2010 09:33:17 +0000 (09:33 +0000)]
Fix a self-host problem caused by this over-eager assertion.  I'm not sure
there's a good equivalent that's actually true, unfortunately.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98253 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMaintain type source information for functions through template
John McCall [Thu, 11 Mar 2010 09:03:00 +0000 (09:03 +0000)]
Maintain type source information for functions through template
instantiation.  Based on a patch by Enea Zaffanella!  I found a way to
reduce some of the redundancy between TreeTransform's "standard"
FunctionProtoType transformation and TemplateInstantiator's override,
and I killed off the old SubstFunctionType by adding type source info
for the last cases where we were creating FunctionDecls without TSI
(at least that get passed through template instantiation).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98252 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSplit C++ friend declarations into their own header/implementation file.
John McCall [Thu, 11 Mar 2010 07:50:04 +0000 (07:50 +0000)]
Split C++ friend declarations into their own header/implementation file.
I'm expecting this portion of the AST to grow and change, and I'd like to
be able to do that with minimal recompilation.  If this proves unnecessary
when access control is fully-implemented, I'll fold the classes back into
DeclCXX.h.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98249 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRename getVirtualBaseOffsetIndex to getVirtualBaseOffsetOffset to reflect what it...
Anders Carlsson [Thu, 11 Mar 2010 07:15:17 +0000 (07:15 +0000)]
Rename getVirtualBaseOffsetIndex to getVirtualBaseOffsetOffset to reflect what it actually does.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98248 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoWhen possible, use the vbase offset offsets from the most derived class directly.
Anders Carlsson [Thu, 11 Mar 2010 07:00:45 +0000 (07:00 +0000)]
When possible, use the vbase offset offsets from the most derived class directly.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98247 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd a test.
Anders Carlsson [Thu, 11 Mar 2010 06:44:31 +0000 (06:44 +0000)]
Add a test.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98246 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoKeep track of, and dump, vbase offset offsets.
Anders Carlsson [Thu, 11 Mar 2010 06:43:12 +0000 (06:43 +0000)]
Keep track of, and dump, vbase offset offsets.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98245 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix tests.
Anders Carlsson [Thu, 11 Mar 2010 06:10:52 +0000 (06:10 +0000)]
Fix tests.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98242 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRun the new vtable builder for construction vtables as well now. Note that we still...
Anders Carlsson [Thu, 11 Mar 2010 05:48:21 +0000 (05:48 +0000)]
Run the new vtable builder for construction vtables as well now. Note that we still don't use the data it generates.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98239 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMore record layout builder cleanup and simplification.
Anders Carlsson [Thu, 11 Mar 2010 05:42:17 +0000 (05:42 +0000)]
More record layout builder cleanup and simplification.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98238 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoGet rid of the PrimaryBase parameter from LayoutVirtualBases.
Anders Carlsson [Thu, 11 Mar 2010 04:33:54 +0000 (04:33 +0000)]
Get rid of the PrimaryBase parameter from LayoutVirtualBases.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98233 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMore cleanup towards fixing the real bug.
Anders Carlsson [Thu, 11 Mar 2010 04:24:02 +0000 (04:24 +0000)]
More cleanup towards fixing the real bug.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98232 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoReplace the class offset vectors in RecordLayoutBuilder with maps instead so we'll...
Anders Carlsson [Thu, 11 Mar 2010 04:10:39 +0000 (04:10 +0000)]
Replace the class offset vectors in RecordLayoutBuilder with maps instead so we'll have faster lookup and so we can detect duplicates.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98231 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMore cleanup.
Anders Carlsson [Thu, 11 Mar 2010 03:39:12 +0000 (03:39 +0000)]
More cleanup.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98230 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMore record layout builder cleanup.
Anders Carlsson [Thu, 11 Mar 2010 02:41:30 +0000 (02:41 +0000)]
More record layout builder cleanup.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98229 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAssert that primary bases always have offset 0.
Anders Carlsson [Thu, 11 Mar 2010 01:49:18 +0000 (01:49 +0000)]
Assert that primary bases always have offset 0.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98223 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove unused 'IVars' field from ObjCInterfaceDecl. That functionality
Ted Kremenek [Thu, 11 Mar 2010 00:36:10 +0000 (00:36 +0000)]
Remove unused 'IVars' field from ObjCInterfaceDecl.  That functionality
has migrated to DeclContext.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98213 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove the IndirectPrimary parameter in LayoutVirtualBases; it's already there as...
Anders Carlsson [Thu, 11 Mar 2010 00:21:21 +0000 (00:21 +0000)]
Remove the IndirectPrimary parameter in LayoutVirtualBases; it's already there as a member variable.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98211 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMore cleanup and simplification of the record layout builder.
Anders Carlsson [Thu, 11 Mar 2010 00:15:35 +0000 (00:15 +0000)]
More cleanup and simplification of the record layout builder.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98208 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSupport PPC-32 DWARF EH intrinisics. Thanks to rdivacky for his assistance.
John McCall [Thu, 11 Mar 2010 00:10:12 +0000 (00:10 +0000)]
Support PPC-32 DWARF EH intrinisics.  Thanks to rdivacky for his assistance.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98206 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoset alignment on static locals properly, patch by Arnaud de Grandmaison!
Chris Lattner [Wed, 10 Mar 2010 23:59:59 +0000 (23:59 +0000)]
set alignment on static locals properly, patch by Arnaud de Grandmaison!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98204 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoGet rid of the LayoutBaseNonVirtually; it was used to lay out a base either as a...
Anders Carlsson [Wed, 10 Mar 2010 22:26:24 +0000 (22:26 +0000)]
Get rid of the LayoutBaseNonVirtually; it was used to lay out a base either as a non-virtual base or a virtual base.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98198 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMore shuffling.
Anders Carlsson [Wed, 10 Mar 2010 22:21:28 +0000 (22:21 +0000)]
More shuffling.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98197 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCleanups, no functionality change yet.
Anders Carlsson [Wed, 10 Mar 2010 22:16:06 +0000 (22:16 +0000)]
Cleanups, no functionality change yet.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98196 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd DESTDIR support for clang headers, PR6556.
Chris Lattner [Wed, 10 Mar 2010 21:26:01 +0000 (21:26 +0000)]
add DESTDIR support for clang headers, PR6556.
Patch by Matthias Klose!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98192 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix calculation of whether a member function needs a thunk in construction vtables.
Anders Carlsson [Wed, 10 Mar 2010 21:25:37 +0000 (21:25 +0000)]
Fix calculation of whether a member function needs a thunk in construction vtables.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98191 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoChange the 'super' messaging API in the rewriter.
Fariborz Jahanian [Wed, 10 Mar 2010 21:17:41 +0000 (21:17 +0000)]
Change the 'super' messaging API in the rewriter.
Fixes radar 7738452.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98190 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSuppress the tag when printing an ElaboratedType if the language options
John McCall [Wed, 10 Mar 2010 21:05:46 +0000 (21:05 +0000)]
Suppress the tag when printing an ElaboratedType if the language options
claim this is C.  We don't make ElaboratedTypes in C, but sometimes
the language options during pretty-print lie to us.

The rewriter should really be fixed to not rely on how types are pretty-printed,
though.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98189 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoWe were mistakenly marking morally virtual bases as being uninteresting. Fix this.
Anders Carlsson [Wed, 10 Mar 2010 19:39:11 +0000 (19:39 +0000)]
We were mistakenly marking morally virtual bases as being uninteresting. Fix this.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98180 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoIgnore non-interesting bases when emitting construction vtables.
Anders Carlsson [Wed, 10 Mar 2010 19:15:26 +0000 (19:15 +0000)]
Ignore non-interesting bases when emitting construction vtables.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98177 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSimplify assertion.
Ted Kremenek [Wed, 10 Mar 2010 19:09:37 +0000 (19:09 +0000)]
Simplify assertion.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98176 91177308-0d34-0410-b5e6-96231b3b80d8