- Jan 23, 2014
-
-
Pekka Jaaskelainen authored
The tests (forgot to svn add, sorry!). Patch from Fraser Cormack! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199907 91177308-0d34-0410-b5e6-96231b3b80d8
-
Pekka Jaaskelainen authored
Patch from Fraser Cormack! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199906 91177308-0d34-0410-b5e6-96231b3b80d8
-
Amara Emerson authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199904 91177308-0d34-0410-b5e6-96231b3b80d8
-
NAKAMURA Takumi authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199903 91177308-0d34-0410-b5e6-96231b3b80d8
-
NAKAMURA Takumi authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199902 91177308-0d34-0410-b5e6-96231b3b80d8
-
NAKAMURA Takumi authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199901 91177308-0d34-0410-b5e6-96231b3b80d8
-
Serge Pavlov authored
Due to statement expressions supported as GCC extension, it is possible to put 'break' or 'continue' into a loop/switch statement but outside its body, for example: for ( ; ({ if (first) { first = 0; continue; } 0; }); ) This code is rejected by GCC if compiled in C mode but is accepted in C++ code. GCC bug 44715 tracks this discrepancy. Clang used code generation that differs from GCC in both modes: only statement of the third expression of 'for' behaves as if it was inside loop body. This change makes code generation more close to GCC, considering 'break' or 'continue' statement in condition and increment expressions of a loop as it was inside the loop body. It also adds error for the cases when 'break'/'continue' appear outside loop due to this syntax. If code generation differ from GCC, warning is issued. Differential Revision: http://llvm-reviews.chandlerc.com/D2518 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199897 91177308-0d34-0410-b5e6-96231b3b80d8
-
Tim Northover authored
This is a simpler rule, broadly in line with previous Darwin (which chose between "soft" and "softfp") but probably safer. In practice the only real reason for "softfp" is ABI compatibility, not usually an issue on limited chips like these, so anyone who wanted hard-float should already be saying so. That's my story and I'm sticking to it. rdar://problem/15887493 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199896 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Woodhouse authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199894 91177308-0d34-0410-b5e6-96231b3b80d8
-
Anton Yartsev authored
More universal way of removing trailing whitespace characters then 'chomp' does. Chomp "removes any trailing string that corresponds to the current value of $/" (quote from perldoc). In my case an input ended with '\r\r\n', chomp left '\r' at the end of input and the script ended up with an error "Use of uninitialized value in concatenation (.) or string" git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199892 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Bataev authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199875 91177308-0d34-0410-b5e6-96231b3b80d8
-
Justin Bogner authored
Some ABIs have different return types for constructors and destructors, and we're just looking for the end of the function here. Loosen up the regex. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199870 91177308-0d34-0410-b5e6-96231b3b80d8
-
Jordan Rose authored
If there are non-trivially-copyable types /other/ than C++ records, we won't have a synthesized copy expression, but we can't just use a simple load/return. Also, add comments and shore up tests, making sure to test in both ARC and non-ARC. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199869 91177308-0d34-0410-b5e6-96231b3b80d8
-
Jordan Rose authored
Now we'll get a warning if we miss a case. Refinement of r199800. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199868 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Trieu authored
match argument type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199867 91177308-0d34-0410-b5e6-96231b3b80d8
-
Kevin Qin authored
As vcles_f32() and vcled_f64 are implemented by FCMGE, operands should make a swap. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199866 91177308-0d34-0410-b5e6-96231b3b80d8
-
Justin Bogner authored
This adds tests for both logical or and for logical and, which was already correct. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199865 91177308-0d34-0410-b5e6-96231b3b80d8
-
Justin Bogner authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199864 91177308-0d34-0410-b5e6-96231b3b80d8
-
Justin Bogner authored
This test requires asserts for now, and exception handling has an awkward structure that leads to extra run lines. Because of this, the test file's not a great place for other C++ PGO tests, but instr-profile.cpp is obviously the better name for them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199863 91177308-0d34-0410-b5e6-96231b3b80d8
-
Justin Bogner authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199862 91177308-0d34-0410-b5e6-96231b3b80d8
-
Ben Langmuir authored
Removes some old code that allowed a module to be loaded from a pcm file even if the module.map could not be found. Also update a number of tests that relied on the old behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199852 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
create an implicit declaration of it (because some type it depends on is unavailable). This had the effect of causing us to not implicitly give it the right attributes. It turns out that glibc's __sigsetjmp is declared before sigjmp_buf is declared, and this resulted in us not implicitly giving it __attribute__((returns_twice)), which in turn resulted in miscompiles in any C code calling glibc's sigsetjmp. (See also the vaguely-related sourceware.org/PR4662.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199850 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jan 22, 2014
-
-
Aaron Ballman authored
If an attribute has a semantically meaningful spelling (such as ArgumentWithTypeTagAttr or MSInheritanceAttr), display the spelling used for the attribute as part of the AST dump. This should ease debugging the AST for these attributes. Attributes without semantically meaningful spelling variations are not affected. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199834 91177308-0d34-0410-b5e6-96231b3b80d8
-
Mark Seaborn authored
PNaCl and Emscripten can both handle va_arg IR instructions with struct type. Also add a test to cover generating a va_arg IR instruction from va_arg in C on le32 (as already handled by VisitVAArgExpr() in CGExprScalar.cpp), which was not covered by a test before. (This fixes https://code.google.com/p/nativeclient/issues/detail?id=2381) Differential Revision: http://llvm-reviews.chandlerc.com/D2539 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199830 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
the defaulting because it would delete the member, produce additional notes explaining why the member is implicitly deleted. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199829 91177308-0d34-0410-b5e6-96231b3b80d8
-
Hans Wennborg authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199828 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Blaikie authored
(to go with existing suppression of -Wa,-compress-debug-sections) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199822 91177308-0d34-0410-b5e6-96231b3b80d8
-
Fariborz Jahanian authored
not using backing ivar warning, ignore when property is not being synthesized (user declared its implementation @dynamic). // rdar://1583425 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199820 91177308-0d34-0410-b5e6-96231b3b80d8
-
Weiming Zhao authored
currently, for thumbv8, two predefined macros are missing: define __THUMB_INTERWORK__ 1 define __THUMB_INTERWORK__ 1 This patch adds them for thumbv8. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199819 91177308-0d34-0410-b5e6-96231b3b80d8
-
Daniel Jasper authored
Before: std::unique_ptr<int[]> foo() {} After: std::unique_ptr<int []> foo() {} Also, the formatting could go severely wrong after such a function before. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199817 91177308-0d34-0410-b5e6-96231b3b80d8
-
Anton Yartsev authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199800 91177308-0d34-0410-b5e6-96231b3b80d8
-
NAKAMURA Takumi authored
Each functions is exported as "dllexport" in include/clang-c. See also KB835326. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199799 91177308-0d34-0410-b5e6-96231b3b80d8
-
Daniel Jasper authored
Before: optional really.really.long.and.qualified.type.aaaaaaa .aaaaaaaa another_fiiiiiiiiiiiiiiiiiiiiield = 2; After: optional really.really.long.and.qualified.type.aaaaaaa.aaaaaaaa another_fiiiiiiiiiiiiiiiiiiiiield = 2; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199796 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alp Toker authored
It's guaranteed to be a CXXMethodDecl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199795 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alp Toker authored
Lift the getFunctionDecl() utility out of the parser into a general Decl::getAsFunction() and use it to simplify other parts of the implementation. Reduce isFunctionOrFunctionTemplate() to a simple type check that works the same was as the other is* functions and move unwrapping of shadowed decls to callers so it doesn't get run twice. Shuffle around canSkipFunctionBody() to reduce virtual dispatch on ASTConsumer. There's no need to query when we already know the body can't be skipped. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199794 91177308-0d34-0410-b5e6-96231b3b80d8
-
Ted Kremenek authored
This involved making CheckReturnStackAddr into a static function, which is now called by a top-level return value checking routine called CheckReturnValExpr. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199790 91177308-0d34-0410-b5e6-96231b3b80d8
-
Hans Wennborg authored
We don't currently support this option, but we should be able to parse it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199787 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199783 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
the program, in C++. (We allow the latter as an extension, since we've always permitted it, and GCC does the same, and our supported C++ ABIs don't do anything special in main.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199782 91177308-0d34-0410-b5e6-96231b3b80d8
-
Fariborz Jahanian authored
when the deployment target is 10.5. // rdar://15852259 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199780 91177308-0d34-0410-b5e6-96231b3b80d8
-