summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Make ListScope and DictScope re-use the same code.Zachary Turner2016-05-041-18/+11
| | | | llvm-svn: 268472
* Fix CodeCompletion & TypoCorrection when combining a PCH with ModulesBen Langmuir2016-05-048-12/+109
| | | | | | | | | | | | | | This commit fixes the IdentifierIterator to actually include identifiers from a PCH or precompiled preamble when there is also a global module index. This was causing code-completion (outside of C++) and typo-correction to be missing global identifiers defined in the PCH/preamble. Typo-correction has been broken since we first started using the module index, whereas code-completion only started relying on identifier iterator in r232793. rdar://problem/25642879 llvm-svn: 268471
* [X86] Lower zext i1 argumentsDavid Majnemer2016-05-042-0/+57
| | | | | | | | | | | | | i1 is now a legal type for X86 with AVX512. There were some paths in X86FastISel which were not quite ready to see an i1 value: they were not quite sure how to deal with sign/zero extends for call arguments. DTRT by extending to i8 for zeroext and bailing out of FastISel for signext. This fixes PR27591. llvm-svn: 268470
* Remove (unused) "using namespace llvm;" in Support header. This caused the ↵Richard Smith2016-05-041-2/+0
| | | | | | modules build to break. llvm-svn: 268469
* [GlobalDCE, Misc] Don't remove functions referenced by ifuncsDavid Majnemer2016-05-047-22/+72
| | | | | | | | | | | | We forgot to consider the target of ifuncs when considering if a function was alive or dead. N.B. Also update a few auxiliary tools like bugpoint and verify-uselistorder. This fixes PR27593. llvm-svn: 268468
* You have to call setHasLoadedFieldsFromExternalStorage AFTER callingJim Ingham2016-05-041-1/+1
| | | | | | | | | | | the field_begin that starts the copy or it won't do anything. This causes failures, but only in complex apps, I haven't found a reduced test case for this yet. <rdar://problem/21951798> llvm-svn: 268467
* [sanitizer] Move stat/__xstat to the common interceptorsMike Aizatsky2016-05-036-64/+48
| | | | | | | | | | | | | | | | | | Summary: Adds stat/__xstat to the common interceptors. Removes the now-duplicate stat/__xstat interceptor from msan/tsan/esan. This adds stat/__xstat to asan, which previously did not intercept it. Resubmit of http://reviews.llvm.org/D19875 with win build fixes. Reviewers: aizatsky, eugenis Subscribers: tberghammer, llvm-commits, danalbert, vitalybuka, bruening, srhines, kubabrecka, kcc Differential Revision: http://reviews.llvm.org/D19890 llvm-svn: 268466
* [Support] Add a free toString function for ErrorVedant Kumar2016-05-032-0/+38
| | | | | | | | | | toString() consumes an Error and returns a string representation of its contents. This commit also adds a message() method to ErrorInfoBase for convenience. Differential Revision: http://reviews.llvm.org/D19883 llvm-svn: 268465
* llvm-pdbdump: Update libdeps.NAKAMURA Takumi2016-05-031-1/+2
| | | | llvm-svn: 268464
* Produce another specific error message for a malformed Mach-O file when a loadKevin Enderby2016-05-035-8/+11
| | | | | | | | | | | | | | | | command has a size less than 8 bytes. I think the existing test case in test/Object/macho-invalid.test for macho64-invalid-too-small-load-command was trying to test for this but that test case triggered a different error given how it was constructed. So I constructed a new test case that would trigger this specific error. I also changed the error message to be consistent with the other malformed Mach-O file error messages. I also removed object_error::macho_small_load_command from Object/Error.h as it is not needed and can just use object_error::parse_failed and let the error message string distinguish the error. llvm-svn: 268463
* NFC remove unneded spaces (test commit)Paul Osmialowski2016-05-031-1/+1
| | | | llvm-svn: 268462
* [clang-tidy] MoveConstructorInitCheck - Add parameter name to check message.Felix Berger2016-05-032-3/+4
| | | | | | | | | | Reviewers: alexfh Subscribers: aaron.ballman, cfe-commits Differential Revision: http://reviews.llvm.org/D19849 llvm-svn: 268461
* [modules][debuginfo] Only include imported modules when targeting LLDBDavid Blaikie2016-05-036-5/+20
| | | | | | | | | | | | | | | | | These constructs are only applicable to a debugger capable of loading a Clang AST, so omit them for brevity when not doing so. We could potentially propagate more of CodeGenOptions through the ObjectFilePCGContainerOperations for consistency (so the next person who adds some CodeGenOpts feature that tweaks debug info output doesn't get caught by this), so I'm open to objections/alternatives there, but went with this for now. Tested just a couple of basic cases (one direct, one indirect (through the ObjectFilePCHContainerOperations) & fixed up other cases to pass the -debugger-tuning flag as appropriate. llvm-svn: 268460
* Update version numbers in docsEric Fiselier2016-05-031-3/+3
| | | | llvm-svn: 268459
* Fix template type deduction error on some compilers.Zachary Turner2016-05-031-1/+1
| | | | llvm-svn: 268458
* Add opt-bisect support to additional passes that can be skippedAndrew Kaylor2016-05-0316-6/+46
| | | | | | Differential Revision: http://reviews.llvm.org/D19882 llvm-svn: 268457
* Add documentation for new experimental libraryEric Fiselier2016-05-032-0/+56
| | | | llvm-svn: 268456
* Remove unused variable.Zachary Turner2016-05-031-2/+0
| | | | llvm-svn: 268455
* Move CodeViewTypeStream to DebugInfo/CodeViewZachary Turner2016-05-035-184/+161
| | | | | | | | | | | | | Ability to parse codeview type streams is also needed by DebugInfoPDB for parsing PDBs, so moving this into a library gives us this option. Since DebugInfoPDB had already hand rolled some code to do this, that code is now convereted over to using this common abstraction. Differential Revision: http://reviews.llvm.org/D19887 Reviewed By: dblaikie, amccarth llvm-svn: 268454
* [scan-build] fix dead store warnings emitted on clang code baseDavid Blaikie2016-05-031-2/+2
| | | | | | | | | | | | | This fixes dead store warnings of the type "dead assignment" reported by CLang Static Analyzer on the following file: - tools/c-index-test/c-index-test.c. Patch by Apelete Seketeli <apelete@seketeli.net>! Differential Revision: http://reviews.llvm.org/D19831 llvm-svn: 268453
* PM: Port LoopRotation to the new loop pass managerJustin Bogner2016-05-037-10/+71
| | | | llvm-svn: 268452
* Make check-libcxx dependant on libc++experimental if present.Eric Fiselier2016-05-031-1/+5
| | | | llvm-svn: 268451
* [X86][XOP] Add placeholder VPERMIL2 combining testsSimon Pilgrim2016-05-031-0/+62
| | | | llvm-svn: 268450
* Revert "[sanitizer] Move stat/__xstat to the common interceptors"Mike Aizatsky2016-05-036-48/+64
| | | | | | | | This reverts commit 268440 because it breaks the windows bot. http://lab.llvm.org:8011/builders/sanitizer-windows/builds/21425/steps/build%20compiler-rt/logs/stdio llvm-svn: 268448
* PM: Port LoopSimplifyCFG to the new pass managerJustin Bogner2016-05-037-44/+92
| | | | llvm-svn: 268446
* [X86] Tidied up SDValue's SDNode referencing. NFCI.Simon Pilgrim2016-05-031-5/+5
| | | | llvm-svn: 268445
* PM: Check that loop passes preserve a basic set of analysesJustin Bogner2016-05-034-1/+35
| | | | | | | | | | | A loop pass that didn't preserve this entire set of passes wouldn't play well with other loop passes, since these are generally a basic requirement to do any interesting transformations to a loop. Adds a helper to get the set of analyses a loop pass should preserve, and checks that any loop pass we run satisfies the requirement. llvm-svn: 268444
* Create new library 'libc++experimental.a' for packaging TS symbols.Eric Fiselier2016-05-036-3/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Out-of-line symbols for <experimental/...> headers are not ABI or API stable and cannot live in the 'libc++.dylib'. Currently they have nowhere to live. I would like to add a new library target `libc++experimental.a` to fix this. Previously I had suggested different libraries for different TS's (`libc++filesystem.a`, 'libc++LFTS.a`, ect). I no longer think this is the right approach. Instead `c++experimental` will hold *all* TS implementations as a single monolithic library. I see two main benefits to this: 1. Users only have to know about and manually link one library. 2. It makes it easy to implement TS's with one or two out-of-line symbols. (Ex. PMRs) `c++experimental` provides NO ABI compatibility. Symbols can freely be added/removed/changed without concern for ABI stability. I will add documentation for this after landing this patch (but before adding anything to it). `c++experimental` only builds as a static library. By default CMake will build/test this library but will *NOT* install it. This patch adds the CMake and LIT logic needed to build/test the new library. Once this lands I plan on using it to implement parts of `<experimental/memory_resource>`. Reviewers: mclow.lists Subscribers: cfe-commits, theraven, krememek, dexonsmith, bcraig, beanz, danalbert Differential Revision: http://reviews.llvm.org/D19856 llvm-svn: 268443
* [IPO/ConstantMerge] Garbage collect dead code. NFC.Davide Italiano2016-05-031-3/+0
| | | | llvm-svn: 268442
* Disable LLVM_ENABLE_TIMESTAMPS by defaultChris Bieneman2016-05-031-1/+1
| | | | | | | | This change is based on the discussion from http://lists.llvm.org/pipermail/llvm-dev/2016-May/098990.html. The goal is to make the default LLVM configuration build deterministically. llvm-svn: 268441
* [sanitizer] Move stat/__xstat to the common interceptorsMike Aizatsky2016-05-036-64/+48
| | | | | | | | | | | | | | | | Summary: Adds stat/__xstat to the common interceptors. Removes the now-duplicate stat/__xstat interceptor from msan/tsan/esan. This adds stat/__xstat to asan, which previously did not intercept it. Reviewers: aizatsky, eugenis Subscribers: tberghammer, danalbert, srhines, kubabrecka, llvm-commits, vitalybuka, eugenis, kcc, bruening Differential Revision: http://reviews.llvm.org/D19875 llvm-svn: 268440
* [Support] Drop template line in favor of 'inline'Vedant Kumar2016-05-031-3/+2
| | | | | Reviewed-by: lhames llvm-svn: 268438
* X86-Darwin: start emitting data-region directives for jump-tables.Tim Northover2016-05-033-2/+4
| | | | | | The surrounding tools can cope these days, and they were invented for a reason. llvm-svn: 268437
* [RS4GC] Add a test case around calling conventions; NFCSanjoy Das2016-05-031-0/+11
| | | | llvm-svn: 268436
* Implement --build-id=none.Rafael Espindola2016-05-032-3/+7
| | | | | | | Both bfd and gold have this. It allows disabling build-id when it is the default with by adding -Wl,--build-id=none no the clang command line. llvm-svn: 268435
* [ADT] Add drop_front method to ArrayRefReid Kleckner2016-05-032-2/+21
| | | | | | | | We have it for StringRef but not ArrayRef, and ArrayRef has drop_back, so I see no reason it shouldn't have drop_front. Splitting this out of a change that I have that will use this funcitonality. llvm-svn: 268434
* Added a testcase for the ptr_refs tool so we catch if it stops working.Sean Callanan2016-05-033-0/+75
| | | | llvm-svn: 268433
* Add address space 258 (X86 SS segment) to clang documentation.David L Kreitzer2016-05-031-4/+5
| | | | | | | | | | The change reflects llvm r268431. Patch by Michael Lemay (michael.lemay@intel.com) Differential Revision: http://reviews.llvm.org/D19458 llvm-svn: 268432
* Add an address space for the X86 SS segment.David L Kreitzer2016-05-032-5/+11
| | | | | | | | Patch by Michael LeMay (michael.lemay@intel.com) Differential Revision: http://reviews.llvm.org/D17093 llvm-svn: 268431
* [clang-tidy] Speedup misc-static-assert.Samuel Benzaquen2016-05-031-3/+7
| | | | | | | | | | | | | | | | | | | Summary: Speedup the misc-static-assert check by not use `stmt()` as the toplevel matcher. The framework runs a filter on the matchers before trying them on each node and uses the toplevel type for this. Using `stmt()` as the toplevel causes the matcher to be run on every `Stmt` node, even if the node doesn't match the desired types. This change speeds up clang-tidy by ~5% in a benchmark. Reviewers: alexfh Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D19877 llvm-svn: 268430
* [IPO/IPCP] Convert to use static functions. NFC.Davide Italiano2016-05-031-35/+32
| | | | | | In preparation for porting this pass to the new PM. llvm-svn: 268429
* [ProfileData] Propagate an error from InstrProfSymtabVedant Kumar2016-05-031-4/+8
| | | | | | | | | CovMapFuncReader::get should propagate up errors from InstrProfSymtab. This is part of a series of patches to transition ProfileData over to the stricter Error/Expected interface. llvm-svn: 268428
* [CMake] NFC. Add support for testing the compiler without testing the linkerChris Bieneman2016-05-033-13/+81
| | | | | | | | | | | | | | | | | | | Summary: One of the big limitations we have in the compiler-rt build system today is that we cannot bootstrap building the builtins because you need a fully functional toolchain to pass CMake's tests. This change adds support for compile only tests. It is NFC because nothing is using the compile-only tests yet. I believe this is the last separable part of D16653. Reviewers: samsonov Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D19692 llvm-svn: 268427
* [esan] Use do-while rather than braces for empty interceptorsDerek Bruening2016-05-031-28/+129
| | | | | | | | | | | | | | | Summary: Replaces {} with a do..while sequence in esan's empty interceptors to allow natural use with a trailing semicolon. The sequence uses each argument to avoid warnings. Reviewers: filcab Subscribers: kubabrecka, llvm-commits, zhaoqin Differential Revision: http://reviews.llvm.org/D19832 llvm-svn: 268426
* [IPO/GlobalDCE] Port to the new pass manager.Davide Italiano2016-05-038-31/+80
| | | | | | Differential Revision: http://reviews.llvm.org/D19782 llvm-svn: 268425
* [SROA] Function canConvertValue needs to check whether both NewTy and OldTy ↵Jack Liu2016-05-032-3/+22
| | | | | | | | | | | pointers are pointing to the same addr space. This can prevent SROA from creating a bitcast between pointers with different addr spaces. Differential Revision: http://reviews.llvm.org/D19697 llvm-svn: 268424
* AArch64: fixup comment after changeTim Northover2016-05-031-1/+1
| | | | llvm-svn: 268423
* AArch64: simplify illegal vector check. NFC.Tim Northover2016-05-031-1/+1
| | | | | | | | Use a utility function to check whether the number of elements is a power of 2 and drop the redundant upper limit (a 128-bit vector with more than 16 elements would have each element < 8 bits, not possible). llvm-svn: 268422
* Revert 268409 due to missing comment.Jack Liu2016-05-032-22/+3
| | | | llvm-svn: 268421
* [ProfileData] Assert NoError in CoverageMappingTestVedant Kumar2016-05-031-13/+13
| | | | | | | | | Check for success values in the CoverageMappingTest unit test file. This is part of a series of patches to transition ProfileData over to the stricter Error/Expected interface. llvm-svn: 268420
OpenPOWER on IntegriCloud