]> granicus.if.org Git - clang/log
clang
14 years agoRobustify callers that rebuild typename type nodes again NULL return
Douglas Gregor [Sun, 7 Mar 2010 23:26:22 +0000 (23:26 +0000)]
Robustify callers that rebuild typename type nodes again NULL return
types. Fixes PR6463.

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

14 years agoPerform overload resolution when static_cast'ing from a
Douglas Gregor [Sun, 7 Mar 2010 23:24:59 +0000 (23:24 +0000)]
Perform overload resolution when static_cast'ing from a
pointer-to-member-to-derived to a pointer-to-member-to-base. Fixes
PR6072.

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

14 years agoReference binding via user-defined conversion can compute a binding
Douglas Gregor [Sun, 7 Mar 2010 23:17:44 +0000 (23:17 +0000)]
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.

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

14 years agoUndefine correct macro
Kovarththanan Rajaratnam [Sun, 7 Mar 2010 19:10:13 +0000 (19:10 +0000)]
Undefine correct macro

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

14 years agoimplement support for -Wno-deprecated, PR6534. While
Chris Lattner [Sun, 7 Mar 2010 18:50:21 +0000 (18:50 +0000)]
implement support for -Wno-deprecated, PR6534.  While
I'm in there, change the altivec diagnostics to use 'double'
instead of "double" for consistency.

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

14 years agoDon't rely on implicit conversion
Kovarththanan Rajaratnam [Sun, 7 Mar 2010 11:21:46 +0000 (11:21 +0000)]
Don't rely on implicit conversion

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

14 years agoRename to addPPCallbacks since we're effectively adding a callback and maybe chaining...
Kovarththanan Rajaratnam [Sun, 7 Mar 2010 07:30:06 +0000 (07:30 +0000)]
Rename to addPPCallbacks since we're effectively adding a callback and maybe chaining it to an existing one

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

14 years agoDon't assert if PP already contains a valid PP callback. The PP can handle multiple...
Kovarththanan Rajaratnam [Sun, 7 Mar 2010 07:18:58 +0000 (07:18 +0000)]
Don't assert if PP already contains a valid PP callback. The PP can handle multiple callbacks (using PPChainedCallbacks)

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

14 years agoAdd sse4.1 packed min and max intrinsics.
Eric Christopher [Sun, 7 Mar 2010 07:00:42 +0000 (07:00 +0000)]
Add sse4.1 packed min and max intrinsics.

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

14 years agoAdd load hint instruction intrinsic.
Eric Christopher [Sun, 7 Mar 2010 06:29:09 +0000 (06:29 +0000)]
Add load hint instruction intrinsic.

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

14 years agoAdd in movntdqa intrinsic for load hint.
Eric Christopher [Sun, 7 Mar 2010 06:28:34 +0000 (06:28 +0000)]
Add in movntdqa intrinsic for load hint.

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

14 years agoAdd in support for dword multiply and fp dot product intrinsics.
Eric Christopher [Sun, 7 Mar 2010 06:17:19 +0000 (06:17 +0000)]
Add in support for dword multiply and fp dot product intrinsics.

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

14 years agoAdd in dot product intrinsics for dpps and dppd.
Eric Christopher [Sun, 7 Mar 2010 06:16:56 +0000 (06:16 +0000)]
Add in dot product intrinsics for dpps and dppd.

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

14 years agoFix for PR6294: we should only delay recording nested dynamic classes if they
Eli Friedman [Sun, 7 Mar 2010 05:49:51 +0000 (05:49 +0000)]
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.

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

14 years agoDon't turn off mangling in implicitly extern "C" system headers. GCC
Douglas Gregor [Sun, 7 Mar 2010 05:10:40 +0000 (05:10 +0000)]
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.

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

14 years agoFix 80 col violation.
Tanya Lattner [Sun, 7 Mar 2010 04:47:12 +0000 (04:47 +0000)]
Fix 80 col violation.

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

14 years agoDon't produce debug info when given -g. Fixes PR6529.
Rafael Espindola [Sun, 7 Mar 2010 04:46:18 +0000 (04:46 +0000)]
Don't produce debug info when given -g. Fixes PR6529.

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

14 years agoFix indentation, use string directly instead of StringRef.
Tanya Lattner [Sun, 7 Mar 2010 04:40:06 +0000 (04:40 +0000)]
Fix indentation, use string directly instead of StringRef.

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

14 years agoFix some weird patch issue.
Tanya Lattner [Sun, 7 Mar 2010 04:27:11 +0000 (04:27 +0000)]
Fix some weird patch issue.

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

14 years agoImplement missing-braces warning and add a test case.
Tanya Lattner [Sun, 7 Mar 2010 04:17:15 +0000 (04:17 +0000)]
Implement missing-braces warning and add a test case.

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

14 years agodisable these dirs which rely on dynamic linking on mingw/cygwin
Chris Lattner [Sun, 7 Mar 2010 00:17:28 +0000 (00:17 +0000)]
disable these dirs which rely on dynamic linking on mingw/cygwin

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

14 years agoadd mblaze target support, patch by Wesley Peck!
Chris Lattner [Sat, 6 Mar 2010 21:21:27 +0000 (21:21 +0000)]
add mblaze target support, patch by Wesley Peck!

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

14 years agoon both the mac and linux, /usr/local/include is treated
Chris Lattner [Sat, 6 Mar 2010 19:38:10 +0000 (19:38 +0000)]
on both the mac and linux, /usr/local/include is treated
as a "C++ Friendly" system header directory.  This fixes
PR6523.

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

14 years agoRename the new Iterator objects and raise an assertion instead of returning invalid...
Benjamin Kramer [Sat, 6 Mar 2010 15:38:03 +0000 (15:38 +0000)]
Rename the new Iterator objects and raise an assertion instead of returning invalid objects when the key is out of range.

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

14 years agoUpdate the python bindings for recent changes in the CIndex API.
Benjamin Kramer [Sat, 6 Mar 2010 14:53:07 +0000 (14:53 +0000)]
Update the python bindings for recent changes in the CIndex API.

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

14 years agoLowercase for consistency
Kovarththanan Rajaratnam [Sat, 6 Mar 2010 12:07:48 +0000 (12:07 +0000)]
Lowercase for consistency

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

14 years agoFix _MM_FROUND_NEARBYINT and move rounding intrinsics to macros.
Eric Christopher [Sat, 6 Mar 2010 10:31:44 +0000 (10:31 +0000)]
Fix _MM_FROUND_NEARBYINT and move rounding intrinsics to macros.

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

14 years agoAdd a message to these asserts.
Benjamin Kramer [Sat, 6 Mar 2010 09:07:19 +0000 (09:07 +0000)]
Add a message to these asserts.

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

14 years agoUse static method in GlobalValue
Rafael Espindola [Sat, 6 Mar 2010 07:35:18 +0000 (07:35 +0000)]
Use static method in GlobalValue

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

14 years agoPR6515: Implement __builtin_signbit and friends.
Eli Friedman [Sat, 6 Mar 2010 02:17:52 +0000 (02:17 +0000)]
PR6515: Implement __builtin_signbit and friends.

I'm reasonably sure my implementation is correct, but it would be nice if
someone could double-check.

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

14 years agoAllow use of byref (__block attributed) arrays inside
Fariborz Jahanian [Sat, 6 Mar 2010 01:58:53 +0000 (01:58 +0000)]
Allow use of byref (__block attributed) arrays inside
the block. Fixes radar 7671883.

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

14 years agoImplement __builtin_dwarf_sp_column for i386 (Darwin and not), x86-64 (all),
John McCall [Sat, 6 Mar 2010 00:35:14 +0000 (00:35 +0000)]
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).

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

14 years agoWhen declaring a catch block in C++, make sure that the type being
Douglas Gregor [Fri, 5 Mar 2010 23:38:39 +0000 (23:38 +0000)]
When declaring a catch block in C++, make sure that the type being
caught can be copy-initialized and destructed. Fixes PR6518.

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

14 years agoAugment __has_feature to report that Clang supports adding attribute 'unused'
Ted Kremenek [Fri, 5 Mar 2010 22:43:32 +0000 (22:43 +0000)]
Augment __has_feature to report that Clang supports adding attribute 'unused'
to an Objective-C instance variable.

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

14 years agoCheck if 'Unit' is NULL before trying to iterate over the diagnostics.
Ted Kremenek [Fri, 5 Mar 2010 22:43:29 +0000 (22:43 +0000)]
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.

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

14 years agoAdd clang version to crashtracer string.
Ted Kremenek [Fri, 5 Mar 2010 22:43:25 +0000 (22:43 +0000)]
Add clang version to crashtracer string.

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

14 years agoPatch to build qualifier on objective-c
Fariborz Jahanian [Fri, 5 Mar 2010 22:42:55 +0000 (22:42 +0000)]
Patch to build qualifier on objective-c
pointer types. Fixes radar 7626768.

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

14 years agoThe Windows build is just too weird; there's no real cost to doing the concurrency...
Douglas Gregor [Fri, 5 Mar 2010 22:19:41 +0000 (22:19 +0000)]
The Windows build is just too weird; there's no real cost to doing the concurrency checks for ASTUnit in all builds

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

14 years agoSwitch from NDEBUG to _DEBUG, since our Windows build is funny
Douglas Gregor [Fri, 5 Mar 2010 21:48:53 +0000 (21:48 +0000)]
Switch from NDEBUG to _DEBUG, since our Windows build is funny

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

14 years agoOnly make __ptr64 and __w64 keywords when Microsoft extensions are enabled.
Douglas Gregor [Fri, 5 Mar 2010 21:39:18 +0000 (21:39 +0000)]
Only make __ptr64 and __w64 keywords when Microsoft extensions are enabled.

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

14 years agoA little hack to identify unwanted concurrency in CIndex
Douglas Gregor [Fri, 5 Mar 2010 21:16:25 +0000 (21:16 +0000)]
A little hack to identify unwanted concurrency in CIndex

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

14 years agoEmit warning on indirect goto that potentially violates
Chris Lattner [Fri, 5 Mar 2010 20:38:02 +0000 (20:38 +0000)]
Emit warning on indirect goto that potentially violates
scope instead of error, PR6517

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

14 years agoaddress PR6502 by downgrading the scope checker's address
Chris Lattner [Fri, 5 Mar 2010 19:26:49 +0000 (19:26 +0000)]
address PR6502 by downgrading the scope checker's address
of label error to a warning controllable with a -W flag.

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

14 years agoUse clang::io::Emit8
Kovarththanan Rajaratnam [Fri, 5 Mar 2010 15:40:54 +0000 (15:40 +0000)]
Use clang::io::Emit8

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

14 years agoMake sure the raw_string_ostream gets flushed so we don't accidentally return an...
Benjamin Kramer [Fri, 5 Mar 2010 15:39:20 +0000 (15:39 +0000)]
Make sure the raw_string_ostream gets flushed so we don't accidentally return an empty string.

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

14 years agoRemove reference to AnalysisContext in Environment. We already have LocationContext
Zhongxing Xu [Fri, 5 Mar 2010 04:45:36 +0000 (04:45 +0000)]
Remove reference to AnalysisContext in Environment. We already have LocationContext
information in ExplodedNode.

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

14 years agoRemove header file dependencies in block patch
Fariborz Jahanian [Fri, 5 Mar 2010 01:49:18 +0000 (01:49 +0000)]
Remove header file dependencies in block patch
test case.

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

14 years agoadd support for a 1<<29 bit in the block flags field to mark blocks using alternate...
Blaine Garst [Fri, 5 Mar 2010 01:29:59 +0000 (01:29 +0000)]
add support for a 1<<29 bit in the block flags field to mark blocks using alternate struct return ABI

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

14 years agoDon't produce an alias for a destructor if the target is weak.
Rafael Espindola [Fri, 5 Mar 2010 01:21:10 +0000 (01:21 +0000)]
Don't produce an alias for a destructor if the target is weak.

This fixes bootstrap on ELF systems :-)

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

14 years agoWhen we invalidate a declaration, make it public, so that it doesn't
Douglas Gregor [Fri, 5 Mar 2010 00:26:45 +0000 (00:26 +0000)]
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.

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

14 years agoMake rewritten source compiled with clang++.
Fariborz Jahanian [Thu, 4 Mar 2010 23:13:29 +0000 (23:13 +0000)]
Make rewritten source compiled with clang++.

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

14 years agoMake rewritten source compiled with clang++ for correctness.
Fariborz Jahanian [Thu, 4 Mar 2010 23:03:49 +0000 (23:03 +0000)]
Make rewritten source compiled with clang++ for correctness.

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

14 years agoChange test to compile rewritten test with clang++.
Fariborz Jahanian [Thu, 4 Mar 2010 21:57:21 +0000 (21:57 +0000)]
Change test to compile rewritten test with clang++.

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

14 years agoPatch to get around a rewriter bug rewriting storage class
Fariborz Jahanian [Thu, 4 Mar 2010 21:35:37 +0000 (21:35 +0000)]
Patch to get around a rewriter bug rewriting storage class
on a block API struct definition.

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

14 years agoreally fix 6473 by handling weakref in constant expressions.
Rafael Espindola [Thu, 4 Mar 2010 21:26:03 +0000 (21:26 +0000)]
really fix 6473 by handling weakref in constant expressions.

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

14 years agoadd TCE target support, patch by Pekka J!
Chris Lattner [Thu, 4 Mar 2010 21:07:38 +0000 (21:07 +0000)]
add TCE target support, patch by Pekka J!

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

14 years agoUse LLVM's new DESTDIR-less PROJ_* variables.
Erick Tryzelaar [Thu, 4 Mar 2010 20:57:19 +0000 (20:57 +0000)]
Use LLVM's new DESTDIR-less PROJ_* variables.

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

14 years agoc-index-test's printing of linkage was completely broken, as was the
Douglas Gregor [Thu, 4 Mar 2010 19:36:27 +0000 (19:36 +0000)]
c-index-test's printing of linkage was completely broken, as was the
test of this functionality. The API worked great, though! :)

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

14 years agoFixes a bug whereby static const block var has static
Fariborz Jahanian [Thu, 4 Mar 2010 18:54:29 +0000 (18:54 +0000)]
Fixes a bug whereby static const block var has static
moved incorrectly. (radar 7714443).

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

14 years agoFix PR6473.
Rafael Espindola [Thu, 4 Mar 2010 18:17:24 +0000 (18:17 +0000)]
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.

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

14 years agoSteal the TARGET lit condition from the LLVM test suite.
John McCall [Thu, 4 Mar 2010 09:38:07 +0000 (09:38 +0000)]
Steal the TARGET lit condition from the LLVM test suite.

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

14 years agoThe FIXME is fixed.
Zhongxing Xu [Thu, 4 Mar 2010 09:05:58 +0000 (09:05 +0000)]
The FIXME is fixed.

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

14 years agoWhen profiling Environment, also profile with AnalysisContext*, bacause
Zhongxing Xu [Thu, 4 Mar 2010 09:04:52 +0000 (09:04 +0000)]
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.

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

14 years agoRevert changes r97693, r97700, and r97718.
John McCall [Thu, 4 Mar 2010 04:29:44 +0000 (04:29 +0000)]
Revert changes r97693, r97700, and r97718.

Our testing framework can't deal with disabled targets yet.

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

14 years agoXFAIL these tests on win32, since the win32 buildbot apparently disables all
John McCall [Thu, 4 Mar 2010 04:14:44 +0000 (04:14 +0000)]
XFAIL these tests on win32, since the win32 buildbot apparently disables all
targets except X86.

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

14 years agoFirst start on smmintrin.h, rounding and blending.
Eric Christopher [Thu, 4 Mar 2010 02:56:19 +0000 (02:56 +0000)]
First start on smmintrin.h, rounding and blending.

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

14 years agoAdd in disabled case as well.
Eric Christopher [Thu, 4 Mar 2010 02:31:44 +0000 (02:31 +0000)]
Add in disabled case as well.

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

14 years agoAdd in -msse4.1 and -msse4.2 options and continuing a rather
Eric Christopher [Thu, 4 Mar 2010 02:26:37 +0000 (02:26 +0000)]
Add in -msse4.1 and -msse4.2 options and continuing a rather
hacky solution for translating.  Expanded on comment explaining
the hack a bit.

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

14 years agoFix __builtin_ia32_roundss and __builtin_ia32_roundsd definitions.
Eric Christopher [Thu, 4 Mar 2010 01:34:19 +0000 (01:34 +0000)]
Fix __builtin_ia32_roundss and __builtin_ia32_roundsd definitions.
Re-enable test.

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

14 years agoRefactor local class name mangling and make it
Fariborz Jahanian [Thu, 4 Mar 2010 01:02:03 +0000 (01:02 +0000)]
Refactor local class name mangling and make it
ABI conforming.

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

14 years agoImplement __builtin_dwarf_sp_column().
John McCall [Thu, 4 Mar 2010 00:44:01 +0000 (00:44 +0000)]
Implement __builtin_dwarf_sp_column().

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

14 years agofix a buildbot failure, this was passing for me because the
Chris Lattner [Thu, 4 Mar 2010 00:38:16 +0000 (00:38 +0000)]
fix a buildbot failure, this was passing for me because the
'%t' file was left around on my disk.  doh.

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

14 years agoCreate a TargetMachine whenever we create a CodeGenAction. The codegen of
John McCall [Thu, 4 Mar 2010 00:23:29 +0000 (00:23 +0000)]
Create a TargetMachine whenever we create a CodeGenAction.  The codegen of
some builtins will rely on target knowledge.

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

14 years agoReinstate r97674 with a fix for the assertion that was firing in <list>
Douglas Gregor [Wed, 3 Mar 2010 23:55:11 +0000 (23:55 +0000)]
Reinstate r97674 with a fix for the assertion that was firing in <list>

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

14 years agoRemove the linux c includes part of my last patch.
Eric Christopher [Wed, 3 Mar 2010 23:27:49 +0000 (23:27 +0000)]
Remove the linux c includes part of my last patch.

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

14 years agoRevert r97674; it's causing failures
Douglas Gregor [Wed, 3 Mar 2010 23:26:56 +0000 (23:26 +0000)]
Revert r97674; it's causing failures

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

14 years agoImplement disambiguation of base class members via a
Douglas Gregor [Wed, 3 Mar 2010 22:53:40 +0000 (22:53 +0000)]
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.

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

14 years agoFix code gen bug generating code for
Fariborz Jahanian [Wed, 3 Mar 2010 22:09:47 +0000 (22:09 +0000)]
Fix code gen bug generating code for
((id)cat)->isa. Fixes radar 7709015.

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

14 years agomerge asm-2.c into asm.c, remove asm-inout.c because it is
Chris Lattner [Wed, 3 Mar 2010 21:56:57 +0000 (21:56 +0000)]
merge asm-2.c into asm.c, remove asm-inout.c because it is
XFAIL and already tracked in bugzilla.

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

14 years agofix PR6475, we were doing side-effecting stuff in an assert.
Chris Lattner [Wed, 3 Mar 2010 21:52:23 +0000 (21:52 +0000)]
fix PR6475, we were doing side-effecting stuff in an assert.

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

14 years agoAdd in more c++ header paths for later gccs under gentoo linux.
Eric Christopher [Wed, 3 Mar 2010 21:41:50 +0000 (21:41 +0000)]
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!

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

14 years agoImplements mangling of local class names to
Fariborz Jahanian [Wed, 3 Mar 2010 19:41:08 +0000 (19:41 +0000)]
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.

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

14 years agoadd framework for ARM builtins, Patch by Edmund Grimley Evans!
Chris Lattner [Wed, 3 Mar 2010 19:03:45 +0000 (19:03 +0000)]
add framework for ARM builtins, Patch by Edmund Grimley Evans!

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

14 years agoSimplify code a bit and remove unneeded semicolons.
Benjamin Kramer [Wed, 3 Mar 2010 16:28:47 +0000 (16:28 +0000)]
Simplify code a bit and remove unneeded semicolons.

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

14 years agoSketch out an implementation for __builtin_dwarf_cfa. I have no idea
John McCall [Wed, 3 Mar 2010 10:30:05 +0000 (10:30 +0000)]
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().

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

14 years agoAdd '-test-print-linkage-source' option to c-index-test
Ted Kremenek [Wed, 3 Mar 2010 06:37:58 +0000 (06:37 +0000)]
Add '-test-print-linkage-source' option to c-index-test
to test clang_getCursorLinkage()

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

14 years agoExport clang_getCursorLinkage().
Ted Kremenek [Wed, 3 Mar 2010 06:37:30 +0000 (06:37 +0000)]
Export clang_getCursorLinkage().

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

14 years agoAdd clang_getCursorLinkage(), which returns the
Ted Kremenek [Wed, 3 Mar 2010 06:36:57 +0000 (06:36 +0000)]
Add clang_getCursorLinkage(), which returns the
underlying linkage for the entity referred to by a
CXCursor.

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

14 years agoImplement __builtin_eh_return.
John McCall [Wed, 3 Mar 2010 05:38:58 +0000 (05:38 +0000)]
Implement __builtin_eh_return.

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

14 years agoFix a bug with base offset merging that Devang noticed.
Anders Carlsson [Wed, 3 Mar 2010 04:58:02 +0000 (04:58 +0000)]
Fix a bug with base offset merging that Devang noticed.

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

14 years agoImplement name hiding for names found through virtual base subobjects
Douglas Gregor [Wed, 3 Mar 2010 04:38:46 +0000 (04:38 +0000)]
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.

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

14 years agoAdd proper target hooks for __builtin_extract_return_address and
John McCall [Wed, 3 Mar 2010 04:15:11 +0000 (04:15 +0000)]
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.

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

14 years agoDon't emit derived-to-base destructor aliases if we don't have a definition
John McCall [Wed, 3 Mar 2010 03:40:11 +0000 (03:40 +0000)]
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.

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

14 years agoRefactor CXXRecordDecl::lookupInBases() to push the recursion down a
Douglas Gregor [Wed, 3 Mar 2010 02:18:00 +0000 (02:18 +0000)]
Refactor CXXRecordDecl::lookupInBases() to push the recursion down a
level. No functionality change, and it obeys access control this
time.

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

14 years agoUse SVN_REVISION, not SVN_VERSION.
Ted Kremenek [Wed, 3 Mar 2010 01:30:39 +0000 (01:30 +0000)]
Use SVN_REVISION, not SVN_VERSION.

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

14 years agoFix an algorithmic bug in LiveVariables pointed out by Zhongxing.
Ted Kremenek [Wed, 3 Mar 2010 01:17:41 +0000 (01:17 +0000)]
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.

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

14 years agoRevert r97618. Access control sucks
Douglas Gregor [Wed, 3 Mar 2010 01:13:25 +0000 (01:13 +0000)]
Revert r97618. Access control sucks

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

14 years agoMake getClangRevision() check that SVN_VERSION is an empty string
Ted Kremenek [Wed, 3 Mar 2010 01:02:48 +0000 (01:02 +0000)]
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>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97620 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd comments to test case.
Zhongxing Xu [Wed, 3 Mar 2010 01:02:48 +0000 (01:02 +0000)]
Add comments to test case.

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

14 years agoFactor out the recursive lookup into C++ base classes into a separate,
Douglas Gregor [Wed, 3 Mar 2010 01:02:31 +0000 (01:02 +0000)]
Factor out the recursive lookup into C++ base classes into a separate,
static function. No functionality change.

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