- Dec 19, 2013
-
-
Aaron Ballman authored
Replacing calls to getAttr with calls to hasAttr for clarity. No functional change intended -- this only replaces Boolean uses of getAttr. llvm-svn: 197648
-
Anna Zaks authored
llvm-svn: 197647
-
Rafael Espindola authored
This matches the data in clang which was added by Jakob Stoklund Olesen in r179596. Thanks for erikjv on irc for pointing me to the relevant documents: http://sparc.com/standards/64.psabi.1.35.ps.Z page 25: Every stack frame must be 16-byte aligned. http://sparc.com/standards/psABI3rd.pdf page 3-10: Although the architecture requires only word alignment, software convention and the operating system require every stack frame to be doubleword aligned. I tried to add a test, but it looks like sparc doesn't implement dynamic stack realignment. This will be tested in clang shortly. llvm-svn: 197646
-
Reid Kleckner authored
The inalloca attribute is designed to support passing C++ objects by value in the Microsoft C++ ABI. It behaves the same as byval, except that it always implies that the argument is in memory and that the bytes are never copied. This attribute allows the caller to take the address of an outgoing argument's memory and execute arbitrary code to store into it. This patch adds basic IR support, docs, and verification. It does not attempt to implement any lowering or fix any possibly broken transforms. When this patch lands, a complete description of this feature should appear at http://llvm.org/docs/InAlloca.html . Differential Revision: http://llvm-reviews.chandlerc.com/D2173 llvm-svn: 197645
-
Dmitri Gribenko authored
We started by trying to deserialize decltype(func-param) in a trailing return type, which causes the function parameter decl to be deserialized, which pulls in the function decl, which pulls the function type, which pulls the same decltype() in the return type, and then we crashed. llvm-svn: 197644
-
Dmitri Gribenko authored
llvm-svn: 197643
-
Adrian Prantl authored
llvm-svn: 197642
-
Adrian Prantl authored
rdar://problem/15678916. llvm-svn: 197641
-
Rafael Espindola authored
Patch by Derek Schuff. llvm-svn: 197640
-
Warren Hunt authored
The alignment impact of the virtual bases apperas to be applied in order, rather than up front. This patch adds the new behavior and provides a test case. llvm-svn: 197639
-
Reed Kotler authored
patch r196331. llvm-svn: 197638
-
Aaron Ballman authored
Added a comment about the launch_bounds attribute's AST node being required. Since there were no test cases for the attribute, some have been added. This promptly demonstrated a bug with the semantic handling, which is also fixed. llvm-svn: 197637
-
NAKAMURA Takumi authored
ArchiveFileDescriptorTests: Fix CMake build. Each unit test is expected to have suffix "*Tests" for lit gtest runner to seek one. llvm-svn: 197636
-
NAKAMURA Takumi authored
ArchiveFileDescriptorTests: Resurrect part of r197600, but make it invalidated, to appease buildbots. Please revert this several hours later ;) llvm-svn: 197635
-
rdar://problem/15639995Han Ming Ong authored
Allow the root XPC launcher to launch any target as root. llvm-svn: 197634
-
Yuchen Wu authored
Similar to the file summaries, the function summaries output line, branching and call statistics. The file summaries have been moved outside the initial loop so that all of the function summaries can be outputted before file summaries. Also updated test cases. llvm-svn: 197633
-
Jason Molenda authored
llvm-svn: 197632
-
Jason Molenda authored
<rdar://problem/15694319> llvm-svn: 197631
-
Reed Kotler authored
tail call optimization. Some more work may be needed for indirect calls but this patch fixes the current regression in Prolangc++/trees. S2 optimization as part of the general cleanup and optimization of prolog and epilog was not saving S2 in this case and needed to. llvm-svn: 197630
-
Aaron Ballman authored
Refactor the Microsoft inheritance attribute handling so that it no longer has special treatment. Also fixes a minor bug where the attributes were being parsed as though they were GNU-style attributes when they were in fact keyword attributes. llvm-svn: 197629
-
Rafael Espindola authored
Reviewed by Derek Schuff. llvm-svn: 197628
-
Ted Kremenek authored
Fixes <rdar://problem/15584219> and <rdar://problem/12241361>. This change looks large, but all it does is reuse and consolidate the delayed diagnostic logic for deprecation warnings with unavailability warnings. By doing so, it showed various inconsistencies between the diagnostics, which were close, but not consistent. It also revealed some missing "note:"'s in the deprecated diagnostics that were showing up in the unavailable diagnostics, etc. This change also changes the wording of the core deprecation diagnostics. Instead of saying "function has been explicitly marked deprecated" we now saw "'X' has been been explicitly marked deprecated". It turns out providing a bit more context is useful, and often we got the actual term wrong or it was not very precise (e.g., "function" instead of "destructor"). By just saying the name of the thing that is deprecated/deleted/unavailable we define this issue away. This diagnostic can likely be further wordsmithed to be shorter. llvm-svn: 197627
-
Reid Kleckner authored
llvm-svn: 197626
-
Fariborz Jahanian authored
and methods. rdar://15450637 llvm-svn: 197625
-
Andrew Trick authored
This reverts commit r197466. The MachineCSE fix that required the -mcpu flag has been disabled until more work can be done to fix downstream issues. Adding -mcpu wasn't the right workaround anyway. llvm-svn: 197624
-
Douglas Gregor authored
The problem here is more serious than the fix implies. Adding a field to a class updates the triviality bits for the class (among other things). Failing to require a complete type before adding the field meant that these updates don't happen in the well-formed case where the capture is an uninstantiated class template specialization, leading the lambda itself to be treated as having a trivial copy constructor when it shouldn't. Fixes <rdar://problem/15560464>. llvm-svn: 197623
-
- Dec 18, 2013
-
-
Jason Molenda authored
offsets structure is read & saved in the platform object -- soon we'll be getting more than the queue name offset out of this structure so we'll need to reuse the information in other methods. llvm-svn: 197620
-
Rafael Espindola authored
llvm-svn: 197617
-
Alp Toker authored
Move some of the verifier directives away from the end of the pragma line. This ensures that the diagnostics relate to the trailing token being tested and not the verifier comments which are themselves part of the token stream. llvm-svn: 197616
-
Weiming Zhao authored
Given vsel_cc, op1, op2, since vsel has no LE/LT, to generate vsel for such selection, it needs to inverse cc and swap op1 and op2. To inverse cc, both L/G and E bits should be flipped. llvm-svn: 197615
-
Adrian Prantl authored
member functions. Paired commit with CFE. rdar://problem/15356637 llvm-svn: 197613
-
Adrian Prantl authored
member functions. Paired commit with LLVM. rdar://problem/15356637 llvm-svn: 197612
-
Adrian Prantl authored
llvm-svn: 197611
-
Adrian Prantl authored
llvm-svn: 197610
-
Douglas Gregor authored
Finishes the work started in r194224, and fixes <rdar://problem/15494681>. llvm-svn: 197609
-
Alp Toker authored
While debating the finer points of file extension matching, we somehow missed the bigger problem that the current code will match anything starting with the default or user-specified pattern (e.g. lit.site.cfg.in). Fix this by doing what find(1) does, implicitly wrapping the pattern with ^$. llvm-svn: 197608
-
Rafael Espindola authored
Fixes a crash in llc where some parts think the target is thumb and others think it is ARM. llvm-svn: 197607
-
Yuchen Wu authored
File summaries will now be optionally outputted which will give line, branching and call coverage info. Unfortunately, clang's current instrumentation does not give enough information to deduce function calls, something that gcc is able to do. Thus, no calls are always outputted to be consistent with gcov output. Also updated tests. llvm-svn: 197606
-
Fariborz Jahanian authored
cstring, converted to NSString, produce the matching AST for it. This also required some refactoring of the previous code. // rdar://14106083 llvm-svn: 197605
-
Rafael Espindola authored
These functions now always set the same variables in the same order and they don't overlap with thep constructor. llvm-svn: 197604
-