Граф коммитов

36298 Коммитов

Автор SHA1 Сообщение Дата
Evgeniy Stepanov eca187e9f2 Only pass -mcpu, -march, -mfpu to linux-as on ARM.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155431 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-24 09:05:31 +00:00
Kostya Serebryany c9fe6056e4 enable TBAA when -fthread-sanitizer is given, even with -O0 or -relaxed-aliasing
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155430 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-24 06:57:01 +00:00
Chandler Carruth 8ac95f19e6 Fix a typo spotted by Matt.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155427 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-24 05:59:48 +00:00
Richard Smith 2b2a0876c9 Don't try to delay parsing the exception specification for a data member of a
class; we would never actually parse it and attach it to the type.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155426 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-24 05:48:42 +00:00
Chandler Carruth 5775351564 Introduce an initial sketch of a MSVC compatible 'intrin.h' builtin
header, along with a stub test to make sure it compiles in the
appropriate modes.

Thanks to Aaron Ballman for working with me to figure out the initial
strategy here, and to Nico for reviewing and pestering me to actually
commit it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155425 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-24 05:23:54 +00:00
Richard Smith 8c614e4f2b PR12629: Cope with parenthesized function types when attaching a delayed
exception specification to a function.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155424 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-24 05:06:35 +00:00
NAKAMURA Takumi 88442c935d clang/test/Rewriter/objc-modern-boxing.mm: Mark as XFAIL:mingw for now, due to predefined __declspec similar to r155278.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155417 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-24 01:19:04 +00:00
DeLesley Hutchins 64b111e81d Thread safety analysis: refactor test cases so that the style is
consistent.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155388 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 20:41:57 +00:00
Fariborz Jahanian d672436751 with -Wdeprecated, include a note to its deprecated declaration
location. // rdar://10893232


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155385 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 20:30:52 +00:00
Eric Christopher 87380aaf42 Forward declarations should take a context. This helps the debugger
find forward declarations in the context that the actual definition
will occur.

rdar://11291658

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155381 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 19:00:24 +00:00
DeLesley Hutchins aed9ea398a Thread safety analysis: support the use of pt_guarded_by attributes
on smart pointers.  Also adds test case for previous commit.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155379 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 18:39:55 +00:00
Chandler Carruth 6603ff85d4 Revert r155363, due to the underlying patches in LLVM causing regression
test suite failures.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155371 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 18:25:40 +00:00
Rafael Espindola 923b0c9337 Fix visibility when we have two types with explicit visibility in a template
argument list.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155368 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 17:51:55 +00:00
Sirish Pande ac28eca18a Hexagon V5 (floating point) support in cfe.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155363 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 17:48:57 +00:00
DeLesley Hutchins 79747e00e9 Thread-safety analysis: support new "pointer to member" syntax for
existentially quantified lock expressions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155357 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 16:45:01 +00:00
Douglas Gregor e656b8397f Teach RequireCompleteType about multi-dimensional arrays. Fixes
<rdar://problem/11284902>.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155356 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 16:42:52 +00:00
Manuel Klimek 9f99d06e0d Fix PR12608. Patch contributed by Yang Chen.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155355 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 16:40:40 +00:00
Bob Wilson d8f0276472 Add a test for svn r155263.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155353 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 16:22:22 +00:00
Rafael Espindola 38c4767439 Inline helper function into only caller.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155352 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 14:27:47 +00:00
Rafael Espindola 546ee6dbca Add another testcase that was not being covered.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155351 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 14:02:53 +00:00
Kostya Serebryany 219cd6cb5f [asan] fix typo
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155345 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 10:15:18 +00:00
Kostya Serebryany cef57e55fb [asan] update docs
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155343 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 09:05:50 +00:00
Anton Korobeynikov a8063c33d8 Do not use stdint.h, driver might provide invalid location for it. Instead, provide the types directly.
This should fix PR12628


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155342 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 09:02:13 +00:00
Manuel Klimek 295413422d Fixes comment referencing old name.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155340 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-23 08:43:08 +00:00
Rafael Espindola a5416bd3ca Add a testcase that we already get right but was not being tested. Found
by a chrome build on OS X. Thanks to Nico Weber for testing a patch and
providing the .ii file.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155326 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-22 22:31:25 +00:00
Benjamin Kramer 471131a05d Sema: Initialize NSString method cache members.
Found by valgrind.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155324 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-22 20:43:35 +00:00
Benjamin Kramer 0eb7526cd2 Remove unnecessary StringRef->char*->StringRef conversion, which read uninitialized memory if the input wasn't 0-terminated.
Found by valgrind.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155323 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-22 20:43:30 +00:00
Rafael Espindola 71776efce5 Cleanup testcase.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155317 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-22 16:03:00 +00:00
Rafael Espindola f6a8b9cba4 An attribute in a explicit template installation should take precedence over
the tempale arguments in deciding the visibility.

This agrees with gcc 4.7.

Found by trying to build chrome with component=shared_library with 155314
reverted.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155316 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-22 15:31:59 +00:00
Rafael Espindola 51183374a5 Revert 155102 but add a fixme while I debug what is wrong with chrome's
components build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155314 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-22 12:37:27 +00:00
Benjamin Kramer dd26998c1f Better C++11 support is no longer an advantage of GCC.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155312 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-22 11:34:43 +00:00
Richard Smith 1664d540d1 PR12571: Objects of type clang::ConstantArrayType aren't always emitted with
type llvm::ArrayType -- sometimes we emit them as packed structs. Don't assert
if such a global array has an element type with a non-trivial destructor.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155305 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-22 05:51:36 +00:00
Rafael Espindola a77e072634 Add another missing testcase.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155304 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-22 02:41:22 +00:00
Richard Smith 6e21b16ab2 PR12585: When processing a friend template inside a class template, don't
pretend there was no previous declaration -- that can lead us to injecting
a class template (with no access specifier) into a class scope. Instead,
just avoid the problematic checks.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155303 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-22 02:13:50 +00:00
Rafael Espindola bc356d0aa9 Add a testcase we were already getting right, but were not testing for.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155302 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-22 01:22:25 +00:00
Rafael Espindola 60115a0453 Fix handling of template parameters. Found by inspection. GCC 4.7 agrees
with this testcase.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155301 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-22 00:43:48 +00:00
Rafael Espindola 1266b613e4 All the members of LVFlags always have the same value, replace the class with
a boolean.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155299 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-21 23:28:21 +00:00
Richard Smith a4156b8574 Fix regression in r154844. If necessary, defer computing adjusted destructor
exception specifications in C++11 until after we've parsed the exception
specifications for nested classes.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155293 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-21 18:42:51 +00:00
Fariborz Jahanian 94d55d7ecd Remove unneeded code.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155290 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-21 17:51:44 +00:00
Richard Smith 7bb698aa05 Fix serialization of uninstantiated exception specifications. Patch by Li Kan,
test by me.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155289 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-21 17:47:47 +00:00
Nuno Lopes 79e244f49a move some stuff to .rodata
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155282 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-21 14:45:25 +00:00
NAKAMURA Takumi c86d1fdb7b SemaDeclCXX.cpp: Fix utf8 in comment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155279 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-21 09:40:04 +00:00
NAKAMURA Takumi 126d3d0905 clang/test/Rewriter/rewrite-modern-extern-c-func-decl.mm: Mark as XFAIL:mingw for now, due to predefined __declspec.
It could be tweaked to add -triple i686-win32, though.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155278 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-21 09:39:58 +00:00
Matt Beaumont-Gay 73664a4e5a Also highlight the member name.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155274 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-21 02:13:04 +00:00
Richard Smith 227e9f6f08 Fix test failure.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155271 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-21 01:51:32 +00:00
Richard Smith 71c598fc05 When declaring a template, check that the context doesn't already contain a
declaration of the same name. r155187 caused us to miss this if the prior
declaration did not declare a type.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155269 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-21 01:27:54 +00:00
Matt Beaumont-Gay 7d90fe5a94 Fix a QoI bug reported by a user.
Set the source location for the "member reference base type ... is not a
structure or union" diag to point at the operator rather than the member name.
If we're giving this diagnostic because of a typo'd '.' in place of a ';' at
the end of a line, the caret previously pointed at the identifier on the
following line, which isn't as helpful as it could be. Pointing the caret at
the '.' makes it more obvious what the problem is.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155267 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-21 01:12:48 +00:00
Bob Wilson 0b1c715684 Link with Foundation whenever -fobjc-link-runtime is used. <rdar://10976177>
The check for excluding libarclite on i386 MacOSX should not apply to
Foundation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155263 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-21 00:21:42 +00:00
Argyrios Kyrtzidis f676608f60 [libclang] Don't set dylib load address to 0xe000000.
Per Greg Clayton:
libclang.dylib is trying to be smart and load itself at a valid address
to be able to load faster which would work for 32 bit systems,
bit won't make any difference on 64 bit systems.
It should either pick a better 64 bit address, or just let itself be loaded at zero.

rdar://11159142

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155246 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-20 22:07:11 +00:00
Fariborz Jahanian 0e78afbb15 objective-c arc: With currnt documentation,
objc_returns_inner_pointer attribute can be applied to
methods only. Diagnsose otherwise, instead of
crashing. // rdar://11253688


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155245 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-20 22:00:46 +00:00