- Mar 04, 2014
-
-
Rui Ueyama authored
llvm-svn: 202772
-
Richard Smith authored
module import. llvm-svn: 202771
-
Rui Ueyama authored
This is a small cleanup before making a bit larger change to this function. llvm-svn: 202770
-
David Blaikie authored
DebugInfo: Emit only the declaration of a class template that has an explicit instantiation declaration (& always emit such a type when there's an explicit instantiation definition) We should only have this optimization fire when the explicit instantiation definition would cause at least one member function to be emitted, thus ensuring that even a compiler not performing this optimization would still emit the full type information elsewhere. But we should also pessimize output still by always emitting the definition when the explicit instantiation definition appears so that at some point in the future we can depend on that information even when no code had to be emitted in that TU. (this shouldn't happen very often, since people mostly use explicit spec decl/defs to reduce code size - but perhaps one day they could use it to explicitly reduce debug info size too) This was worth about 2% for Clang and LLVM - so not a huge win, but a win. It looks really great for simple STL programs (include <string> and just declare a string - 14k -> 1.4k of .dwo) llvm-svn: 202769
-
Chad Rosier authored
for the Cortex-A53 subtarget in the AArch64 backend. This patch lays the ground work to annotate each AArch64 instruction (no NEON yet) with a list of SchedReadWrite types. The patch also provides the Cortex-A53 processor resources, maps those the the default SchedReadWrites, and provides basic latency. NEON support will be added in a subsequent patch with proper forwarding logic. Verification was done by setting the pre-RA scheduler to linearize to better gauge the effect of the MIScheduler. Even without modeling the forward logic, the results show a modest improvement for Cortex-A53. Reviewers: apazos, mcrosier, atrick Patch by Dave Estes <cestes@codeaurora.org>! llvm-svn: 202767
-
- Mar 03, 2014
-
-
Tobias Grosser authored
llvm-svn: 202766
-
Hans Wennborg authored
llvm-svn: 202765
-
Tobias Grosser authored
llvm-svn: 202764
-
Tobias Grosser authored
This fixes the buildbots who failed, because the linker eliminated most of the Polly functionality when building without BUILD_SHARED_LIBS=ON. Besides fixing the build, this change also brings additional functionality. With the new separation between the general polly libraries and the functionality for the polly module, it is now possible to link polly directly into a tool instead of using requiring users to load a shared library. llvm-svn: 202762
-
Fariborz Jahanian authored
for metadata symbols for forward referenced protocols which are never defined. // rdar://16203115 llvm-svn: 202761
-
Aaron Ballman authored
llvm-svn: 202760
-
Richard Smith authored
the type of the first parameter fails, and it is the only, unnamed, parameter). llvm-svn: 202759
-
Reid Kleckner authored
We'd like to keep the clang-cl self-host working until we implement MSVC-compatible RTTI. Differential Revision: http://llvm-reviews.chandlerc.com/D2930 llvm-svn: 202758
-
Benjamin Kramer authored
llvm-svn: 202757
-
Greg Clayton authored
llvm-svn: 202756
-
Benjamin Kramer authored
No functionality change. llvm-svn: 202755
-
Diego Novillo authored
This needs to modify a line table test to account for the new lexical block created to hold the new discriminator value. llvm-svn: 202754
-
Benjamin Kramer authored
libstdc++ and libc++ pulled this in transitively so I didn't notice. llvm-svn: 202753
-
Diego Novillo authored
DWARF discriminators are used to distinguish multiple control flow paths on the same source location. When this happens, instructions across basic block boundaries will share the same debug location. This pass detects this situation and creates a new lexical scope to one of the two instructions. This lexical scope is a child scope of the original and contains a new discriminator value. This discriminator is then picked up from MCObjectStreamer::EmitDwarfLocDirective to be written on the object file. This fixes http://llvm.org/bugs/show_bug.cgi?id=18270. llvm-svn: 202752
-
Benjamin Kramer authored
No functionality change. llvm-svn: 202751
-
Peter Collingbourne authored
Differential Revision: http://llvm-reviews.chandlerc.com/D2923 llvm-svn: 202750
-
Peter Collingbourne authored
Differential Revision: http://llvm-reviews.chandlerc.com/D2811 llvm-svn: 202749
-
Benjamin Kramer authored
It's not needed anymore. llvm-svn: 202748
-
Jordan Rose authored
Always run the test again, even for a trivial change... llvm-svn: 202747
-
Jordan Rose authored
llvm-svn: 202746
-
Argyrios Kyrtzidis authored
[libclang] Have clang_getCursorSpelling() return the string for a CXCursor_ObjCStringLiteral or CXCursor_StringLiteral cursor. rdar://16206459 llvm-svn: 202745
-
Chandler Carruth authored
predicate. The wrapper used by SetVector was erroneously requiring an adaptable predicate. It has been fixed and we really don't want to require an indirect call for every predicate evaluation. llvm-svn: 202744
-
Tobias Grosser authored
The module LLVMPolly.so links to that. There is really no reason to build a large number of mini-libraries here, especially as we do have dependences between the libraries that are not properly handled and that make linking fail on darwin. Submitted-by:
David Fang <fang@csl.cornell.edu> llvm-svn: 202743
-
Chandler Carruth authored
remove_if that its predicate is adaptable. We don't actually need this, we can write a generic adapter for any predicate. This lets us remove some very wrong std::function usages. We should never be using std::function for predicates to algorithms. This incurs an *indirect* call overhead for every evaluation of the predicate, and makes it very hard to inline through. llvm-svn: 202742
-
Marshall Clow authored
Implement LWG 2324: Insert iterator constructors should use addressof(). Add two new container classes to the test suite that overload operator &, and add test cases to the insert/front_insert/back_insert iterator tests that use these containers. llvm-svn: 202741
-
Jim Ingham authored
llvm-svn: 202740
-
Marshall Clow authored
llvm-svn: 202739
-
Greg Clayton authored
"size_t" isn't always 64 bit, it is 32 bit on 32 bit systems. All printf style statements that were assuming size_t were 64 bit were changed, and they were also changed to display them as unsigned values as "size_t" isn't signed. If you print anything with 'size_t', please cast it to "uint64_t" in the printf and use PRIu64 or PRIx64. llvm-svn: 202738
-
Diego Novillo authored
Create lexical blocks with discriminator value 0 by default. llvm-svn: 202737
-
Diego Novillo authored
This adds support for emitting discriminators from DILexicalBlocks. llvm-svn: 202736
-
Lang Hames authored
llvm-svn: 202735
-
Aaron Ballman authored
I guess we're still using LLVM_DELETED_FUNCTION instead of = delete. This should fix a complaining built bot. llvm-svn: 202734
-
Jordan Rose authored
Serialized diagnostics were accidentally using the AST diagnostic level values rather than a dedicated stable enum, so the addition of "remark" broke the reading of existing serialized diagnostics files. I've added a .dia file generated from Xcode 5's Clang to make sure we don't break this in the future. llvm-svn: 202733
-
Reid Kleckner authored
llvm-svn: 202732
-
Benjamin Kramer authored
Breaks the MSVC build. DataStream.cpp(44): error C2552: 'llvm::Statistic::Value' : non-aggregates cannot be initialized with initializer list llvm-svn: 202731
-