Douglas Gregor
1ce52caf0d
Reference binding via user-defined conversion can compute a binding
...
that is not reference-related (because it requires another implicit
conversion to which we can find). Fixes PR6483.
llvm-svn: 97922
2010-03-07 23:17:44 +00:00
Kovarththanan Rajaratnam
39f2fbd129
Undefine correct macro
...
llvm-svn: 97920
2010-03-07 19:10:13 +00:00
Chris Lattner
0a65574ccb
implement support for -Wno-deprecated, PR6534. While
...
I'm in there, change the altivec diagnostics to use 'double'
instead of "double" for consistency.
llvm-svn: 97919
2010-03-07 18:50:21 +00:00
Kovarththanan Rajaratnam
7a67f67823
Don't rely on implicit conversion
...
llvm-svn: 97916
2010-03-07 11:21:46 +00:00
Kovarththanan Rajaratnam
752a124aeb
Rename to addPPCallbacks since we're effectively adding a callback and maybe chaining it to an existing one
...
llvm-svn: 97913
2010-03-07 07:30:06 +00:00
Kovarththanan Rajaratnam
981a6a110e
Don't assert if PP already contains a valid PP callback. The PP can handle multiple callbacks (using PPChainedCallbacks)
...
llvm-svn: 97910
2010-03-07 07:18:58 +00:00
Eric Christopher
4c70358296
Add sse4.1 packed min and max intrinsics.
...
llvm-svn: 97907
2010-03-07 07:00:42 +00:00
Eric Christopher
7288890b51
Add load hint instruction intrinsic.
...
llvm-svn: 97904
2010-03-07 06:29:09 +00:00
Eric Christopher
8fffe75eaa
Add in movntdqa intrinsic for load hint.
...
llvm-svn: 97903
2010-03-07 06:28:34 +00:00
Eric Christopher
87990fe5df
Add in support for dword multiply and fp dot product intrinsics.
...
llvm-svn: 97902
2010-03-07 06:17:19 +00:00
Eric Christopher
1d99699bda
Add in dot product intrinsics for dpps and dppd.
...
llvm-svn: 97901
2010-03-07 06:16:56 +00:00
Eli Friedman
b632e30e41
Fix for PR6294: we should only delay recording nested dynamic classes if they
...
are lexically nested. Othewise, we never end up recording semantically nested
classes.
llvm-svn: 97900
2010-03-07 05:49:51 +00:00
Douglas Gregor
577cf97cf3
Don't turn off mangling in implicitly extern "C" system headers. GCC
...
doesn't do this on any of the major platforms, and we don't really
support any of the platforms that do (nor will we actually handle
those headers well). Fixes PR6217; see PR6530 for details on what we
would need to do to support these platforms.
llvm-svn: 97899
2010-03-07 05:10:40 +00:00
Tanya Lattner
5cb196e14b
Fix 80 col violation.
...
llvm-svn: 97898
2010-03-07 04:47:12 +00:00
Rafael Espindola
08a692aba4
Don't produce debug info when given -g. Fixes PR6529.
...
llvm-svn: 97897
2010-03-07 04:46:18 +00:00
Tanya Lattner
5cbff48b01
Fix indentation, use string directly instead of StringRef.
...
llvm-svn: 97896
2010-03-07 04:40:06 +00:00
Tanya Lattner
351e4393f1
Fix some weird patch issue.
...
llvm-svn: 97894
2010-03-07 04:27:11 +00:00
Tanya Lattner
5029d56cc1
Implement missing-braces warning and add a test case.
...
llvm-svn: 97893
2010-03-07 04:17:15 +00:00
Chris Lattner
03b3eba151
disable these dirs which rely on dynamic linking on mingw/cygwin
...
llvm-svn: 97892
2010-03-07 00:17:28 +00:00
Chris Lattner
5178f56255
add mblaze target support, patch by Wesley Peck!
...
llvm-svn: 97890
2010-03-06 21:21:27 +00:00
Chris Lattner
8341c390aa
on both the mac and linux, /usr/local/include is treated
...
as a "C++ Friendly" system header directory. This fixes
PR6523.
llvm-svn: 97885
2010-03-06 19:38:10 +00:00
Benjamin Kramer
aaff78ec9c
Rename the new Iterator objects and raise an assertion instead of returning invalid objects when the key is out of range.
...
llvm-svn: 97881
2010-03-06 15:38:03 +00:00
Benjamin Kramer
ff90813e42
Update the python bindings for recent changes in the CIndex API.
...
llvm-svn: 97880
2010-03-06 14:53:07 +00:00
Kovarththanan Rajaratnam
1c558cd773
Lowercase for consistency
...
llvm-svn: 97878
2010-03-06 12:07:48 +00:00
Eric Christopher
b0759be4d0
Fix _MM_FROUND_NEARBYINT and move rounding intrinsics to macros.
...
llvm-svn: 97874
2010-03-06 10:31:44 +00:00
Benjamin Kramer
f0a0f68c79
Add a message to these asserts.
...
llvm-svn: 97873
2010-03-06 09:07:19 +00:00
Rafael Espindola
d51c9b9a9f
Use static method in GlobalValue
...
llvm-svn: 97872
2010-03-06 07:35:18 +00:00
Eli Friedman
99d20f83ba
PR6515: Implement __builtin_signbit and friends.
...
I'm reasonably sure my implementation is correct, but it would be nice if
someone could double-check.
llvm-svn: 97864
2010-03-06 02:17:52 +00:00
Fariborz Jahanian
af9553a23a
Allow use of byref (__block attributed) arrays inside
...
the block. Fixes radar 7671883.
llvm-svn: 97863
2010-03-06 01:58:53 +00:00
John McCall
beec5a080f
Implement __builtin_dwarf_sp_column for i386 (Darwin and not), x86-64 (all),
...
and ARM. Implement __builtin_init_dwarf_reg_size_table for i386 (both) and
x86-64 (all).
llvm-svn: 97859
2010-03-06 00:35:14 +00:00
Douglas Gregor
6de584c2d2
When declaring a catch block in C++, make sure that the type being
...
caught can be copy-initialized and destructed. Fixes PR6518.
llvm-svn: 97853
2010-03-05 23:38:39 +00:00
Ted Kremenek
a00c5db1a8
Augment __has_feature to report that Clang supports adding attribute 'unused'
...
to an Objective-C instance variable.
llvm-svn: 97850
2010-03-05 22:43:32 +00:00
Ted Kremenek
a6d3ab394c
Check if 'Unit' is NULL before trying to iterate over the diagnostics.
...
This obviates a null dereference that can occur when 'NumErrors'
is not zero.
llvm-svn: 97849
2010-03-05 22:43:29 +00:00
Ted Kremenek
b39084072f
Add clang version to crashtracer string.
...
llvm-svn: 97848
2010-03-05 22:43:25 +00:00
Fariborz Jahanian
d2bccafe82
Patch to build qualifier on objective-c
...
pointer types. Fixes radar 7626768.
llvm-svn: 97847
2010-03-05 22:42:55 +00:00
Douglas Gregor
7829362620
The Windows build is just too weird; there's no real cost to doing the concurrency checks for ASTUnit in all builds
...
llvm-svn: 97840
2010-03-05 22:19:41 +00:00
Douglas Gregor
1e1973c0eb
Switch from NDEBUG to _DEBUG, since our Windows build is funny
...
llvm-svn: 97835
2010-03-05 21:48:53 +00:00
Douglas Gregor
554e13efc6
Only make __ptr64 and __w64 keywords when Microsoft extensions are enabled.
...
llvm-svn: 97834
2010-03-05 21:39:18 +00:00
Douglas Gregor
0c7c2f8b4d
A little hack to identify unwanted concurrency in CIndex
...
llvm-svn: 97831
2010-03-05 21:16:25 +00:00
Chris Lattner
b2bc4b9880
Emit warning on indirect goto that potentially violates
...
scope instead of error, PR6517
llvm-svn: 97826
2010-03-05 20:38:02 +00:00
Chris Lattner
2df50e6573
address PR6502 by downgrading the scope checker's address
...
of label error to a warning controllable with a -W flag.
llvm-svn: 97815
2010-03-05 19:26:49 +00:00
Kovarththanan Rajaratnam
3c36a6669a
Use clang::io::Emit8
...
llvm-svn: 97810
2010-03-05 15:40:54 +00:00
Benjamin Kramer
d4870700ad
Make sure the raw_string_ostream gets flushed so we don't accidentally return an empty string.
...
llvm-svn: 97809
2010-03-05 15:39:20 +00:00
Zhongxing Xu
e73584384a
Remove reference to AnalysisContext in Environment. We already have LocationContext
...
information in ExplodedNode.
llvm-svn: 97785
2010-03-05 04:45:36 +00:00
Fariborz Jahanian
2574577828
Remove header file dependencies in block patch
...
test case.
llvm-svn: 97777
2010-03-05 01:49:18 +00:00
Blaine Garst
f27ab71d9f
add support for a 1<<29 bit in the block flags field to mark blocks using alternate struct return ABI
...
llvm-svn: 97775
2010-03-05 01:29:59 +00:00
Rafael Espindola
4c489c7030
Don't produce an alias for a destructor if the target is weak.
...
This fixes bootstrap on ELF systems :-)
llvm-svn: 97773
2010-03-05 01:21:10 +00:00
Douglas Gregor
90d4717767
When we invalidate a declaration, make it public, so that it doesn't
...
trigger access control or one of the many assertions we have for valid
access specifiers.
llvm-svn: 97767
2010-03-05 00:26:45 +00:00
Fariborz Jahanian
97bb418575
Make rewritten source compiled with clang++.
...
llvm-svn: 97762
2010-03-04 23:13:29 +00:00
Fariborz Jahanian
7103835d79
Make rewritten source compiled with clang++ for correctness.
...
llvm-svn: 97761
2010-03-04 23:03:49 +00:00
Fariborz Jahanian
3db51d80ec
Change test to compile rewritten test with clang++.
...
llvm-svn: 97756
2010-03-04 21:57:21 +00:00
Fariborz Jahanian
535c9c0ba2
Patch to get around a rewriter bug rewriting storage class
...
on a block API struct definition.
llvm-svn: 97754
2010-03-04 21:35:37 +00:00
Rafael Espindola
bef98689ad
really fix 6473 by handling weakref in constant expressions.
...
llvm-svn: 97750
2010-03-04 21:26:03 +00:00
Chris Lattner
09797543bd
add TCE target support, patch by Pekka J!
...
llvm-svn: 97746
2010-03-04 21:07:38 +00:00
Erick Tryzelaar
e62248a79c
Use LLVM's new DESTDIR-less PROJ_* variables.
...
llvm-svn: 97744
2010-03-04 20:57:19 +00:00
Douglas Gregor
0b46650b66
c-index-test's printing of linkage was completely broken, as was the
...
test of this functionality. The API worked great, though! :)
llvm-svn: 97736
2010-03-04 19:36:27 +00:00
Fariborz Jahanian
8bb35c4d7c
Fixes a bug whereby static const block var has static
...
moved incorrectly. (radar 7714443).
llvm-svn: 97734
2010-03-04 18:54:29 +00:00
Rafael Espindola
2e42fec3a0
Fix PR6473.
...
Clang's support for weakref is now better than llvm-gcc's :-)
We don't introduce a new symbol and we correctly mark undefined references weak only if there is no
definition or regular undefined references in the same file.
llvm-svn: 97733
2010-03-04 18:17:24 +00:00
John McCall
b07d8b56d2
Steal the TARGET lit condition from the LLVM test suite.
...
llvm-svn: 97727
2010-03-04 09:38:07 +00:00
Zhongxing Xu
6f84d46f33
The FIXME is fixed.
...
llvm-svn: 97725
2010-03-04 09:05:58 +00:00
Zhongxing Xu
5cb8d9d40f
When profiling Environment, also profile with AnalysisContext*, bacause
...
we now may have identical states with different analysis context.
Set the right AnalysisContext in state when entering and leaving a callee.
With both of the above changes, we can pass the test case.
llvm-svn: 97724
2010-03-04 09:04:52 +00:00
John McCall
731be6620c
Revert changes r97693, r97700, and r97718.
...
Our testing framework can't deal with disabled targets yet.
llvm-svn: 97719
2010-03-04 04:29:44 +00:00
John McCall
61076e1d87
XFAIL these tests on win32, since the win32 buildbot apparently disables all
...
targets except X86.
llvm-svn: 97718
2010-03-04 04:14:44 +00:00
Eric Christopher
94567c04bb
First start on smmintrin.h, rounding and blending.
...
llvm-svn: 97717
2010-03-04 02:56:19 +00:00
Eric Christopher
cfeceffa27
Add in disabled case as well.
...
llvm-svn: 97716
2010-03-04 02:31:44 +00:00
Eric Christopher
399ffa55d2
Add in -msse4.1 and -msse4.2 options and continuing a rather
...
hacky solution for translating. Expanded on comment explaining
the hack a bit.
llvm-svn: 97714
2010-03-04 02:26:37 +00:00
Eric Christopher
45fa7e60fb
Fix __builtin_ia32_roundss and __builtin_ia32_roundsd definitions.
...
Re-enable test.
llvm-svn: 97707
2010-03-04 01:34:19 +00:00
Fariborz Jahanian
9eba9dfb0c
Refactor local class name mangling and make it
...
ABI conforming.
llvm-svn: 97702
2010-03-04 01:02:03 +00:00
John McCall
81d4d12504
Implement __builtin_dwarf_sp_column().
...
llvm-svn: 97700
2010-03-04 00:44:01 +00:00
Chris Lattner
eaa2778f27
fix a buildbot failure, this was passing for me because the
...
'%t' file was left around on my disk. doh.
llvm-svn: 97699
2010-03-04 00:38:16 +00:00
John McCall
6abe39c61e
Create a TargetMachine whenever we create a CodeGenAction. The codegen of
...
some builtins will rely on target knowledge.
llvm-svn: 97693
2010-03-04 00:23:29 +00:00
Douglas Gregor
cc3f325fa6
Reinstate r97674 with a fix for the assertion that was firing in <list>
...
llvm-svn: 97686
2010-03-03 23:55:11 +00:00
Eric Christopher
6197c1cd8c
Remove the linux c includes part of my last patch.
...
llvm-svn: 97679
2010-03-03 23:27:49 +00:00
Douglas Gregor
979302e14a
Revert r97674; it's causing failures
...
llvm-svn: 97677
2010-03-03 23:26:56 +00:00
Douglas Gregor
f2a42a66e2
Implement disambiguation of base class members via a
...
nested-name-specifier. For example, this allows member access in
diamond-shaped hierarchies like:
struct Base {
void Foo();
int Member;
};
struct D1 : public Base {};
struct D2 : public Base {};
struct Derived : public D1, public D2 { }
void Test(Derived d) {
d.Member = 17; // error: ambiguous cast from Derived to Base
d.D1::Member = 17; // error: okay, modify D1's Base's Member
}
Fixes PR5820 and <rdar://problem/7535045>. Also, eliminate some
redundancy between Sema::PerformObjectMemberConversion() and
Sema::PerformObjectArgumentInitialization() -- the latter now calls
the former.
llvm-svn: 97674
2010-03-03 22:53:40 +00:00
Fariborz Jahanian
281aae6328
Fix code gen bug generating code for
...
((id)cat)->isa. Fixes radar 7709015.
llvm-svn: 97672
2010-03-03 22:09:47 +00:00
Chris Lattner
aabec2fb84
merge asm-2.c into asm.c, remove asm-inout.c because it is
...
XFAIL and already tracked in bugzilla.
llvm-svn: 97671
2010-03-03 21:56:57 +00:00
Chris Lattner
576def7fbe
fix PR6475, we were doing side-effecting stuff in an assert.
...
llvm-svn: 97669
2010-03-03 21:52:23 +00:00
Eric Christopher
114a85381a
Add in more c++ header paths for later gccs under gentoo linux.
...
Add in c header path for various linuxes as well.
Partial patch from Christian Adåker!
llvm-svn: 97666
2010-03-03 21:41:50 +00:00
Fariborz Jahanian
a529c25555
Implements mangling of local class names to
...
fix a code gen crash. This is WIP as not
all ABI cases are covered (there is a FIXME to
this effect). Fixes radar 7696748.
llvm-svn: 97658
2010-03-03 19:41:08 +00:00
Chris Lattner
5cc15e058b
add framework for ARM builtins, Patch by Edmund Grimley Evans!
...
llvm-svn: 97656
2010-03-03 19:03:45 +00:00
Benjamin Kramer
a3b13411fa
Simplify code a bit and remove unneeded semicolons.
...
llvm-svn: 97654
2010-03-03 16:28:47 +00:00
John McCall
515c3c548c
Sketch out an implementation for __builtin_dwarf_cfa. I have no idea
...
why the front-end is calculating the argument to llvm.eh.dwarf.cfa().
llvm-svn: 97653
2010-03-03 10:30:05 +00:00
Ted Kremenek
83b28a2433
Add '-test-print-linkage-source' option to c-index-test
...
to test clang_getCursorLinkage()
llvm-svn: 97648
2010-03-03 06:37:58 +00:00
Ted Kremenek
547f4172b7
Export clang_getCursorLinkage().
...
llvm-svn: 97647
2010-03-03 06:37:30 +00:00
Ted Kremenek
fb4961dfd0
Add clang_getCursorLinkage(), which returns the
...
underlying linkage for the entity referred to by a
CXCursor.
llvm-svn: 97646
2010-03-03 06:36:57 +00:00
John McCall
66769f8544
Implement __builtin_eh_return.
...
llvm-svn: 97643
2010-03-03 05:38:58 +00:00
Anders Carlsson
5b0057c05b
Fix a bug with base offset merging that Devang noticed.
...
llvm-svn: 97641
2010-03-03 04:58:02 +00:00
Douglas Gregor
3e637467d7
Implement name hiding for names found through virtual base subobjects
...
that are hidden by other derived base subobjects reached along a
lookup path that does *not* pass through the hiding subobject (C++
[class.member.lookup]p6). Fixes PR6462.
llvm-svn: 97640
2010-03-03 04:38:46 +00:00
John McCall
d4f4b7f5ee
Add proper target hooks for __builtin_extract_return_address and
...
__builtin_frob_return_address. The implementations for both are
still trivial in the default case.
llvm-svn: 97638
2010-03-03 04:15:11 +00:00
John McCall
1950a11939
Don't emit derived-to-base destructor aliases if we don't have a definition
...
for the base destructor, because aliases to declarations aren't legal.
Fixes PR 6471.
llvm-svn: 97637
2010-03-03 03:40:11 +00:00
Douglas Gregor
0555f7eefa
Refactor CXXRecordDecl::lookupInBases() to push the recursion down a
...
level. No functionality change, and it obeys access control this
time.
llvm-svn: 97634
2010-03-03 02:18:00 +00:00
Ted Kremenek
c9ef64ff67
Use SVN_REVISION, not SVN_VERSION.
...
llvm-svn: 97625
2010-03-03 01:30:39 +00:00
Ted Kremenek
0f0883b918
Fix an algorithmic bug in LiveVariables pointed out by Zhongxing.
...
If an initializer in a DeclStmt references the declared variable, that
extends the liveness of that variable.
llvm-svn: 97624
2010-03-03 01:17:41 +00:00
Douglas Gregor
77709906a4
Revert r97618. Access control sucks
...
llvm-svn: 97621
2010-03-03 01:13:25 +00:00
Ted Kremenek
47307292f1
Make getClangRevision() check that SVN_VERSION is an empty string
...
(even if it is defined). This fixes the issue of this function
returning '0' when SVN_VERSION is defined to be "".
Fixes: <rdar://problem/7663667>
llvm-svn: 97620
2010-03-03 01:02:48 +00:00
Zhongxing Xu
6b11b4e050
Add comments to test case.
...
llvm-svn: 97619
2010-03-03 01:02:48 +00:00
Douglas Gregor
a62a5237fc
Factor out the recursive lookup into C++ base classes into a separate,
...
static function. No functionality change.
llvm-svn: 97618
2010-03-03 01:02:31 +00:00
Douglas Gregor
aa5087f6e5
Initialize your storage, dummy
...
llvm-svn: 97615
2010-03-03 00:29:43 +00:00
Douglas Gregor
a75600b7d8
Don't use echo in the Index test, which I hope will work around an intermittent Windows failure
...
llvm-svn: 97613
2010-03-03 00:03:22 +00:00