Abramo Bagnara
8de74e9c81
Added locations and type source info for DeclarationName inside UsingDecl.
...
llvm-svn: 110912
2010-08-12 11:46:03 +00:00
Jordy Rose
5af0e3cbba
Remove OwnershipAttr::Kind, since it's essentially redundant with attr::Kind the way it's being used. Also fix isa<OwnershipAttr> support, break more-than-80-char lines, and other miscellaneous ownership attr cleanup.
...
llvm-svn: 110908
2010-08-12 08:54:03 +00:00
John McCall
8246e350be
Handle the obvious case for diagnosing redeclarations of extern "C" functions.
...
Fixes PR7859.
llvm-svn: 110906
2010-08-12 07:09:11 +00:00
Jordy Rose
2f7ee3ca40
Actually use reduced set of checkers in EvalAssume.
...
llvm-svn: 110904
2010-08-12 04:05:07 +00:00
Daniel Dunbar
e9e91b0597
Frontend: Move the bulk of the cc1_main() processing into
...
ExecuteCompilerInvocation in libFrontend.
llvm-svn: 110903
2010-08-12 02:53:12 +00:00
John McCall
bdb989eca4
Bail out of MaybeBindToTemporary if the record type is invalid. Test case
...
is 8.5MB, sorry.
llvm-svn: 110901
2010-08-12 02:40:37 +00:00
John McCall
398dc37d1f
Implement RTTI generation for Objective C types. Fixes PR7864.
...
llvm-svn: 110900
2010-08-12 02:17:33 +00:00
John McCall
12d53da8cb
Fix a crash on invalid when declaring an implicit member of a class with an
...
invalid destructor.
llvm-svn: 110891
2010-08-12 00:57:17 +00:00
Daniel Dunbar
628fcf4e3b
Driver: Use the compile time linker version as the default for -mlinker-version,
...
if detected.
- This is a hack, we really want the linker version at execution time, but we
don't have any infrastructure for getting that. Yet.
llvm-svn: 110886
2010-08-12 00:05:12 +00:00
Devang Patel
caa23f0708
Emit debug info for static const class member.
...
llvm-svn: 110885
2010-08-12 00:02:44 +00:00
John McCall
2ded5d25a9
Don't try to implicitly declare special members of an invalid class.
...
Fixes a crash in a rather large and difficult-to-reduce test case.
llvm-svn: 110882
2010-08-11 23:52:36 +00:00
Tom Care
ec389da6f2
Fix a bug where child statements could not be identified as being in a CFGBlock in CFGStmtMap::getBlock.
...
llvm-svn: 110881
2010-08-11 23:36:58 +00:00
Argyrios Kyrtzidis
90bdfbbdf7
Switch on PCH for C++. C++ fans all over the world rejoice.
...
llvm-svn: 110879
2010-08-11 23:27:58 +00:00
Daniel Dunbar
cacb0e2d45
Driver/Darwin: Pass -demangle when linking, if the linker supports it.
...
llvm-svn: 110873
2010-08-11 23:07:50 +00:00
Daniel Dunbar
976a2f54fa
Driver: Add -mlinker-version=, which forwards to -target-linker-version.
...
llvm-svn: 110872
2010-08-11 23:07:47 +00:00
Daniel Dunbar
a1d107cb46
Frontend: Add -target-linker-version, for specifying the version string of the
...
linker in use.
llvm-svn: 110871
2010-08-11 23:07:42 +00:00
Eli Friedman
854f110834
Fix oversight with symbolic names in TargetInfo::validateInputConstraint.
...
llvm-svn: 110870
2010-08-11 23:03:37 +00:00
Argyrios Kyrtzidis
3084a61e98
-Make TokenID of IdentifierInfo read-only, remove setTokenID().
...
-There are 2 instances that change the TokenID for GNU libstdc++ 4.2 compatibility.
To handler those cases introduce a RevertedTokenID bitfield, RevertTokenIDToIdentifier() and hasRevertedTokenIDToIdentifier() methods.
Store the bitfield in PCH.
llvm-svn: 110868
2010-08-11 22:55:12 +00:00
John McCall
5996699834
Revise r110163: don't mark weak functions nounwind, because the optimizer
...
treats that as a contract to be fulfilled by any replacements.
llvm-svn: 110864
2010-08-11 22:38:33 +00:00
Abramo Bagnara
d6d2f18905
Added locations and type source info for DeclarationName.
...
llvm-svn: 110860
2010-08-11 22:01:17 +00:00
Douglas Gregor
00c37ef021
Once code completion has completed, pass a "completion context" on to
...
the code-completion consumer. The consumer can use this information to
augument, filter, or display the code-completion results.
llvm-svn: 110858
2010-08-11 21:23:17 +00:00
Devang Patel
d76c1dbe39
Emit a stop point for delegate constructor call. This gives user a chance to step into constructor body.
...
llvm-svn: 110853
2010-08-11 21:04:37 +00:00
John McCall
ffe4630f3d
When re-raising an exception after a cleanup, we need to call _Unwind_Resume_or_Rethrow
...
instead of _Unwind_Resume. With SJLJ exceptions, this is spelled
"_Unwind_SjLj_Resume_or_Rethrow", not "_Unwind_SjLj_Resume", which has
significantly different semantics.
We should actually never be generating a call to _Unwind_SjLj_Resume directly;
even if we were generating true cleanups (which we aren't because of the
horrible hack), we should be calling __cxa_end_cleanup() on ARM. I
haven't implemented this because there's little point as long as the HH is
present.
I believe this fixes <rdar://problem/8281377>.
llvm-svn: 110851
2010-08-11 20:59:53 +00:00
Eli Friedman
961fc05418
Work in progress for PR7864. Someone more familiar with ObjC++ needs to fill
...
in the code after the "FIXME: Needs to be written".
llvm-svn: 110849
2010-08-11 20:41:51 +00:00
Sebastian Redl
eaa4ade80e
Reintroduce the ASTConsumer/ASTUnit fix from r110610, it has nothing to do with the breakage.
...
llvm-svn: 110840
2010-08-11 18:52:41 +00:00
Bruno Cardoso Lopes
8c333153e0
Fix define inserting a comma :)
...
llvm-svn: 110839
2010-08-11 18:45:43 +00:00
Fariborz Jahanian
d539d098a4
IRGen support for functions returning objc object
...
types. Fixes PR7865.
llvm-svn: 110832
2010-08-11 17:37:35 +00:00
Benjamin Kramer
e8394df11b
Random temporary string cleanup.
...
llvm-svn: 110807
2010-08-11 14:47:12 +00:00
Douglas Gregor
13e6587313
If name lookup finds different type declarations in different scopes
...
that actually refer to the same underlying type, it is not an
ambiguity; add uniquing support based on the canonical type of type
declarations. Fixes <rdar://problem/8296180>.
llvm-svn: 110806
2010-08-11 14:45:53 +00:00
Douglas Gregor
20975b25c3
Fix a thinko in the creation of temporary files for the precompiled preamble
...
llvm-svn: 110804
2010-08-11 13:06:56 +00:00
Douglas Gregor
1c28331b57
Speculatively revert r110610 " Make ObjCInterfaceDecl redeclarable,
...
and create separate decl nodes for forward declarations and the
definition," which appears to be causing significant Objective-C
breakage.
llvm-svn: 110803
2010-08-11 12:19:30 +00:00
Zhongxing Xu
8de0a3d8c3
MemRegion can refer to ASTContext without external help.
...
llvm-svn: 110784
2010-08-11 06:10:55 +00:00
Daniel Dunbar
9034aa36c7
ARM: Recognize single precision float register names.
...
- We don't recognize double or NEON register names yet -- we don't have the
infrastructure to generate the right clobbers for them.
llvm-svn: 110775
2010-08-11 02:17:20 +00:00
Daniel Dunbar
256e1f3ad0
ARM: Swap which registers we consider real / aliases to match LLVM and llvm-gcc.
...
llvm-svn: 110774
2010-08-11 02:17:11 +00:00
Douglas Gregor
836a7e8468
Improve our handling of user-defined conversions when computing
...
implicit conversion sequences. In particular, model the "standard
conversion" from a class to its own type (or a base type) directly as
a standard conversion in the normal path *without* trying to determine
if there is a valid copy constructor. This appears to match the intent
of C++ [over.best.ics]p6 and more closely matches GCC and EDG.
As part of this, model non-lvalue reference initialization via
user-defined conversion in overloading the same way we handle it in
InitializationSequence, separating the "general user-defined
conversion" and "conversion to compatible class type" cases.
The churn in the overload-call-copycon.cpp test case is because the
test case was originally wrong; it assumed that we should do more
checking for copy constructors that we actually should, which affected
overload resolution.
Fixes PR7055. Bootstrapped okay.
llvm-svn: 110773
2010-08-11 02:15:33 +00:00
Bruno Cardoso Lopes
65954ffc69
Remove 256-bit cast built-ins and make the AVX intrinsic call llvm __builtin_shufflevector with the appropriate arguments
...
llvm-svn: 110771
2010-08-11 02:14:38 +00:00
Bruno Cardoso Lopes
a4f1930b75
Remove 256-bit unpack built-ins and make the AVX intrinsic call llvm __builtin_shufflevector with the appropriate arguments
...
llvm-svn: 110768
2010-08-11 01:43:24 +00:00
Bruno Cardoso Lopes
e712a135b7
Remove 256-bit shuffle built-ins and make the AVX intrinsic call llvm __builtin_shufflevector with the appropriate arguments
...
llvm-svn: 110766
2010-08-11 01:17:34 +00:00
John Thompson
46667afccd
Fix for pr7869, inline asm mult-alt constraints.
...
llvm-svn: 110764
2010-08-11 00:58:20 +00:00
John McCall
cebe0ca75e
Fix a bug in @finally emission in both the fragile and non-fragile EH schemes
...
where we weren't accounting for the possibility that a @finally block might
have internal cleanups and therefore might write to the cleanup destination slot.
Fixes <rdar://problem/8293901>.
llvm-svn: 110760
2010-08-11 00:16:14 +00:00
Ted Kremenek
2b4adffa16
Have GRCoreEngine record the blocks where analysis was aborted because we visited a block too many times along a given path. This is to support the unreachable code analysis.
...
llvm-svn: 110755
2010-08-11 00:03:02 +00:00
Devang Patel
8166571a25
Simplify
...
llvm-svn: 110716
2010-08-10 20:16:57 +00:00
John Thompson
a5c7d706b8
Slightly revised handling of mult-alt constraints, to avoid an assert, until we have the full fix.
...
llvm-svn: 110706
2010-08-10 19:20:14 +00:00
John McCall
62eb9a8e84
When initializing a static local, pop the guard-abort EH cleanup after
...
the variable is fully initialized.
llvm-svn: 110704
2010-08-10 18:51:44 +00:00
Devang Patel
76e3b53541
Do not use DIGlobalVariable to emit debugging information for enums.
...
llvm-svn: 110697
2010-08-10 18:27:15 +00:00
Fariborz Jahanian
32e59ba01d
Fix a spurious warning when message sent to qualified-id
...
type receiver (pr7861).
llvm-svn: 110696
2010-08-10 18:10:50 +00:00
Ted Kremenek
0476899b20
Turn on idempotent operations checker when using --analyze.
...
llvm-svn: 110695
2010-08-10 18:03:13 +00:00
Devang Patel
dc866e119c
Simplify code and add comments, in code that generate debug info for constant integer globals, based on Chris's feedback.
...
llvm-svn: 110694
2010-08-10 17:53:33 +00:00
Daniel Dunbar
ce25f33e2a
Driver/FreeBSD: Infer the right arch name in the presence of -m32,-m64, for the
...
cases we care about.
- This is eventually going to be unified outside the host specific code.
llvm-svn: 110693
2010-08-10 17:39:05 +00:00
Douglas Gregor
7058c265f5
Eliminate unnecessary uses of TemporaryBase in TreeTransform;
...
transforming TypeSourceInfos already gives us proper (and better)
source-location information.
llvm-svn: 110678
2010-08-10 14:27:00 +00:00