summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Always print the implicit .text at the start of an asm file.Rafael Espindola2014-03-059-17/+18
| | | | | | | | | | | | | | | | | Before llvm-mc would print it, but llc was assuming that it would produce another section changing directive before one was needed. That assumption is false with inline asm. Fixes PR19049. Another option would be to always create the section, but in the asm printer avoid printing sections changes during initialization. That would work, but * We do use the fact that llvm-mc prints it in testing. The tests can be changed if needed. * A quick poll on IRC suggest that most developers prefer the implicit .text to be printed. llvm-svn: 203001
* Update for llvm change.Rafael Espindola2014-03-051-2/+5
| | | | llvm-svn: 203000
* Fix an inconsistency in treatment of trailing / in path::const_iteratorBen Langmuir2014-03-052-8/+34
| | | | | | | | | When using a //net/ path, we were transforming the trailing / into a '.' when the path was just the root path and we were iterating backwards. Forwards iteration and other kinds of root path (C:\, /) were already correct. llvm-svn: 202999
* Add "override" to member functions where appropriate.Rui Ueyama2014-03-059-116/+117
| | | | llvm-svn: 202998
* ConstantFolding: Also fold the vector overloads of our math intrinsics.Benjamin Kramer2014-03-052-34/+81
| | | | llvm-svn: 202997
* Lower AVX v4i64->v4i32 truncate to one shuffle.Cameron McInally2014-03-052-15/+7
| | | | llvm-svn: 202996
* [code-completion] Add a couple of test cases suggested by Jordan, and a FIXME.Argyrios Kyrtzidis2014-03-051-1/+9
| | | | llvm-svn: 202995
* Implement LWG 2193. Default constructors for standard library containers are ↵Marshall Clow2014-03-0517-8/+91
| | | | | | explicit. Note that libc++ already did this for string/deque/forward_list/list/vector and the unordered containers; implement it for set/multiset/map/multimap. Add tests for all the containers. Two drive-by fixes as well: add a missing explicit in <deque>, and remove a tab that snuck into a container test. This issue is also LLVM bug 15724, and resolves it. llvm-svn: 202994
* AST: Remove layering violation with SemaDavid Majnemer2014-03-056-14/+29
| | | | | | Scope lives in Sema and cannot be used in AST. Shuffle things around. llvm-svn: 202993
* Fix clang -Werror build break due to mismatched sign comparison.David Blaikie2014-03-051-1/+1
| | | | | | Originally committed in r202985. llvm-svn: 202992
* Mark is_final as a C++14 feature.Marshall Clow2014-03-052-2/+2
| | | | llvm-svn: 202991
* Remove definition of std::fmaf from libc++. Fixes bug #18910. This function ↵Marshall Clow2014-03-052-7/+3
| | | | | | should come from the C standard library. As a drive-by fix, update the tests to remove a warning from -Wabsolute-value llvm-svn: 202990
* [C++11] Using std::unique_ptr to ensure that Argument objects do not leak ↵Aaron Ballman2014-03-051-50/+45
| | | | | | (since clang-tblgen isn't long-lived, the old leak is probably acceptable, but it offended my senses nonetheless). llvm-svn: 202989
* Work around MSVC bug in IntrusiveRefCntPtr.hHans Wennborg2014-03-051-1/+1
| | | | | | | | | | | The build was failing with: error C2664: 'std::atomic_int::atomic_int(const std::atomic_int &)' : cannot convert argument 1 from 'int' to 'const std::atomic_int &' Apparently "std::atomic_int x(0)" doesn't work, but "std::atomic<int> x(0)" does. llvm-svn: 202988
* Fixed a crash when handling diagnostics without a valid file location, e.g. ↵Alexander Kornienko2014-03-052-9/+13
| | | | | | 'error reading <file>'. llvm-svn: 202987
* Use ThreadSafeRefCountedBase for vfs::FileSystemBen Langmuir2014-03-051-1/+1
| | | | | | | Allow trivial read-only filesystems such as RealFileSystem to be shared between threads. llvm-svn: 202986
* ARM: Correctly align arguments after a byval struct is passed on the stackOliver Stannard2014-03-058-67/+245
| | | | llvm-svn: 202985
* Add a ThreadSafeRefCountedBaseBen Langmuir2014-03-051-0/+26
| | | | | | | A version of RefCountedBase that uses std::atomic_int to store its reference count. llvm-svn: 202984
* asan_symbolize.py: use llvm-symbolizer results even if it returned function ↵Alexey Samsonov2014-03-051-2/+2
| | | | | | name w/o file/line info llvm-svn: 202983
* Improve llvm-symbolizer discovery in asan_symbolize.pyAlexey Samsonov2014-03-052-18/+25
| | | | llvm-svn: 202982
* Enable memrchr interceptor only on LinuxAlexey Samsonov2014-03-051-1/+1
| | | | llvm-svn: 202981
* Build JITLoader on FreeBSD alsoEd Maste2014-03-055-5/+8
| | | | llvm-svn: 202980
* tsan: add missing header file to sanitizer_common cmake fileDmitry Vyukov2014-03-051-0/+1
| | | | llvm-svn: 202979
* Style fix: replace "1 entries" with "1 entry" in the vftable layout dumping codeTimur Iskhodzhanov2014-03-055-74/+76
| | | | llvm-svn: 202978
* tsan: fix deadlock detector build for SANITIZER_DEADLOCK_DETECTOR_VERSION=2Dmitry Vyukov2014-03-053-9/+5
| | | | llvm-svn: 202977
* Put "jit" in alpha order in log category listEd Maste2014-03-051-2/+2
| | | | llvm-svn: 202976
* tsan: implement new version of standalong deadlock detectorDmitry Vyukov2014-03-059-204/+635
| | | | | | | intercept pthread_cond (it is required to properly track state of mutexes) detect cycles in mutex graph llvm-svn: 202975
* tsan: include what you useDmitry Vyukov2014-03-051-0/+1
| | | | | | VPrintf uses common_flags() llvm-svn: 202974
* [LangRef] Improve llvm.mem.parallel_loop_access exampleTobias Grosser2014-03-051-8/+9
| | | | | | | | | | | | | | | | | | | | The following changes have been applied: - Removed 'align 4'. We can simplify this away, as it does not provide useful information in the example. - Use named instructions instead of '%0'. This is nicer, but more importantly this makes the IR valid. Before we had two assignments to %0 in a single example. - Add a missing branch instruction to make the loop structure clear. - Move one access into outer.for.body to make it not look that empty. - The statments that are only in the outer loop body should not reference the inner loop metadata, but only the outer loop. Only statements in both loops should reference both surrounding loops. - Rename the array indexes to make them all independent. Before there were identical array indexes in the inner and the outer loop. We want to avoid this special case as it may lead to confusion. llvm-svn: 202973
* Add common interceptors for memchr/memrchrAlexey Samsonov2014-03-054-16/+64
| | | | llvm-svn: 202972
* Revert "[C++11] Replace trivial lambda with std::cref."Benjamin Kramer2014-03-051-1/+3
| | | | | | MSVC2013's standard library is too broken to understand this pattern. llvm-svn: 202971
* Added a module for checks not related to LLVM or Google coding style.Alexander Kornienko2014-03-058-5/+65
| | | | llvm-svn: 202970
* Fixed formatting.Alexander Kornienko2014-03-056-13/+6
| | | | llvm-svn: 202969
* [C++11] Replace trivial lambda with std::cref.Benjamin Kramer2014-03-051-3/+1
| | | | llvm-svn: 202968
* Enable integrated assembler on OpenBSD/PPC32 by default, too.Joerg Sonnenberger2014-03-051-1/+2
| | | | | | From Brad Smith. llvm-svn: 202967
* This patch implements .set dsp directive and sets appropriate feature ↵Vladimir Medic2014-03-054-0/+24
| | | | | | bits.This directive is a counterpart of -mattr=dsp command line option with the exception that it does not influence elf header flags. The usage example is gives in test file. llvm-svn: 202966
* Added a const qualifier to SourceManager& parameters.Alexander Kornienko2014-03-052-12/+15
| | | | llvm-svn: 202964
* Add missing parenthesis in SCEV commentTobias Grosser2014-03-051-1/+1
| | | | | Contributed-by: Michael Zolutukin <mzolotukhin@apple.com> llvm-svn: 202963
* MS ABI: Mangle lambdasDavid Majnemer2014-03-052-1/+50
| | | | | | | | | | | | | | | | Use a scheme inspired by the Itanium ABI to properly implement the mangling of lambdas. N.B. The incredibly astute observer will notice that we do not generate external names that are identical, or even compatible with, MSVC. This is fine because they don't generate names that they can use across translation units. Technically, we can generate any name we'd like so long as that name wouldn't conflict with any other and would be stable across translation units. This fixes PR15512. llvm-svn: 202962
* [Layering] Move AutoUpgrade.h into the IR library where itsChandler Carruth2014-03-054-6/+6
| | | | | | implementation already lives. llvm-svn: 202961
* [Layering] Move DebugLoc.h into the IR library. The implementationChandler Carruth2014-03-0516-18/+18
| | | | | | | | | | | already lived there and it is where it belongs -- this is the in-memory debug location representation. This is just cleanup -- Modules can actually cope with this, but that doesn't make it right. After chatting with folks that have out-of-tree stuff, going ahead and moving the rest of the headers seems preferable. llvm-svn: 202960
* [C++11] Add overloads for externally used OwningPtr functions.Ahmed Charles2014-03-059-35/+150
| | | | | | | | This will allow external callers of these functions to switch over time rather than forcing a breaking change all a once. These particular functions were determined by building clang/lld/lldb. llvm-svn: 202959
* [C++11] Make this interface accept const Use pointers and use overrideChandler Carruth2014-03-055-12/+12
| | | | | | | | to ensure we don't mess up any of the overrides. Necessary for cleaning up the Value use iterators and enabling range-based traversing of use lists. llvm-svn: 202958
* [C++11] Replace OwningPtr::take() with OwningPtr::release().Ahmed Charles2014-03-0543-117/+117
| | | | llvm-svn: 202957
* Add support for JIT debugging on Linux using the GDB JIT interface. Patch ↵Andrew MacPherson2014-03-0527-16/+1231
| | | | | | written with Keno Fischer. llvm-svn: 202956
* Test commit.Andrew MacPherson2014-03-051-1/+1
| | | | llvm-svn: 202955
* [CMake] Minor fix to llvm-config discoveryAlexey Samsonov2014-03-051-2/+2
| | | | llvm-svn: 202954
* [C++11] Add 'override' keyword to virtual methods that override their base ↵Craig Topper2014-03-0587-300/+342
| | | | | | class. llvm-svn: 202953
* Disable BasicTests/VFS on win32 for now. Investigating.NAKAMURA Takumi2014-03-051-0/+2
| | | | | | | | | | | Failing Tests (5): Clang-Unit :: Basic/BasicTests.exe/VFSFromYAMLTest.CaseInsensitive Clang-Unit :: Basic/BasicTests.exe/VFSFromYAMLTest.MappedFiles Clang-Unit :: Basic/BasicTests.exe/VFSFromYAMLTest.MultiComponentPath Clang-Unit :: Basic/BasicTests.exe/VFSFromYAMLTest.TrailingSlashes Clang-Unit :: Basic/BasicTests.exe/VFSFromYAMLTest.UseExternalName llvm-svn: 202952
* [-cxx-abi microsoft] Implement local manglings accuratelyDavid Majnemer2014-03-0518-202/+385
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: The MSVC ABI appears to mangle the lexical scope into the names of statics. Specifically, a counter is incremented whenever a scope is entered where things can be declared in such a way that an ambiguity can arise. For example, a class scope inside of a class scope doesn't do anything interesting because the nested class cannot collide with another nested class. There are problems with this scheme: - It is unreliable. The counter is only incremented when a previously never encountered scope is entered. There are cases where this will cause ambiguity amongst declarations that have the same name where one was introduced in a deep scope while the other was introduced right after in the previous lexical scope. - It is wasteful. Statements like: {{{{{{{ static int foo = a; }}}}}}} will make the mangling of "foo" larger than it need be because the scope counter has been incremented many times. Because of these problems, and practical implementation concerns. We choose not to implement this scheme if the local static or local type isn't visible. The mangling of these declarations will look very similar but the numbering will make far more sense, this scheme is lifted from the Itanium ABI implementation. Reviewers: rsmith, doug.gregor, rnk, eli.friedman, cdavis5x Reviewed By: rnk CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2953 llvm-svn: 202951
OpenPOWER on IntegriCloud