- Mar 13, 2017
-
-
Peter Collingbourne authored
Fix a bug introduced in r297313 which caused them to resolve to the end of the ELF header in PIEs and DSOs. Differential Revision: https://reviews.llvm.org/D30843 llvm-svn: 297638
-
Zachary Turner authored
llvm-svn: 297637
-
Zachary Turner authored
The value_type is no longer a struct, it's a class whose members you have to access via a method. llvm-svn: 297635
-
Zachary Turner authored
There were some issues in the implementation of enumerate() preventing it from being used in various contexts. These were all related to the fact that it did not supporter llvm's iterator_facade_base class. So this patch adds support for that and additionally exposes a new helper method to_vector() that will evaluate an entire range and store the results in a vector. Differential Revision: https://reviews.llvm.org/D30853 llvm-svn: 297633
-
Zachary Turner authored
llvm-svn: 297632
-
Sam McCall authored
Summary: Add fuzzy SymbolIndex, where identifier needn't match exactly. The purpose for this is global autocomplete in clangd. The query will be a partial identifier up to the cursor, and the results will be suggestions. It's in include-fixer because: - it handles SymbolInfos, actually SymbolIndex is exactly the right interface - it's a good harness for lit testing the fuzzy YAML index - (Laziness: we can't unit test clangd until reorganizing with a tool/ dir) Other questionable choices: - FuzzySymbolIndex, which just refines the contract of SymbolIndex. This is an interface to allow extension to large monorepos (*cough*) - an always-true safety check that Identifier == Name is removed from SymbolIndexManager, as it's not true for fuzzy matching - exposing -db=fuzzyYaml from include-fixer is not a very useful feature, and a non-orthogonal ui (fuzziness vs data source). -db=fixed is similar though. Reviewers: bkramer Subscribers: cfe-commits, mgorny Differential Revision: https://reviews.llvm.org/D30720 llvm-svn: 297630
-
Sanjay Patel authored
llvm-svn: 297629
-
Alex Lorenz authored
setters using the block type information that's obtained from the property rdar://12604235 llvm-svn: 297628
-
Gabor Horvath authored
Patch by Zoltan Gera! Differential Revision: https://reviews.llvm.org/D30831 llvm-svn: 297627
-
Jon Roelofs authored
Also has the side-effect of fixing the build on systems with glibc < 2.12 https://reviews.llvm.org/D30844 llvm-svn: 297626
-
Zachary Turner authored
Previously we could round-trip type records from PDB -> Yaml -> PDB, but for symbols we could only go from PDB -> Yaml. This completes the round-tripping for symbols as well. llvm-svn: 297625
-
Rafael Espindola authored
If raw_fd_ostream is constructed with the path of "-", it claims ownership of the stdout file descriptor. This means that it closes stdout when it is destroyed. If there are multiple users of raw_fd_ostream wrapped around stdout, then a crash can occur because of operations on a closed stream. An example of this would be running something like "clang -S -o - -MD -MF - test.cpp". Alternatively, using outs() (which creates a local version of raw_fd_stream to stdout) anywhere combined with such a stream usage would cause the crash. The fix duplicates the stdout file descriptor when used within raw_fd_ostream, so that only that particular descriptor is closed when the stream is destroyed. Patch by James Henderson! llvm-svn: 297624
-
Sylvestre Ledru authored
Reviewers: djasper Reviewed By: djasper Subscribers: cfe-commits, klimek Differential Revision: https://reviews.llvm.org/D30860 llvm-svn: 297623
-
George Rimar authored
llvm-svn: 297622
-
Diana Picus authored
We used to hit an unreachable in getRegBankFromRegClass when dealing with the stack pointer. This commit adds support for the GPRsp reg class. llvm-svn: 297621
-
Roger Ferrer Ibanez authored
Given that we have already explicitly stated in the qualifier that the expression is __unaligned, it makes little sense to diagnose that the address of the packed member may not be aligned. Differential Revision: https://reviews.llvm.org/D30884 llvm-svn: 297620
-
Gabor Horvath authored
It looks like on some host-triples the result of a valist related expr can be a LazyCompoundVal. Handle that case in the check. Patch by Abramo Bagnara! llvm-svn: 297619
-
Aaron Ballman authored
http://bb.pgr.jp/builders/cmake-llvm-x86_64-linux/builds/49970 llvm-svn: 297618
-
Aaron Ballman authored
Patch by James Henderson. llvm-svn: 297617
-
Pavel Labath authored
Summary: This adds support for building libc++ tests when targetting android. The tests are still not passing due to several other problems, but this way we can at least build them. Reviewers: eugene, EricWF, danalbert Subscribers: srhines, lldb-commits Differential Revision: https://reviews.llvm.org/D30737 llvm-svn: 297616
-
Pavel Labath authored
I have got my boolean logic incorrect. Sorry about the spam. llvm-svn: 297615
-
Alex Lorenz authored
This commit adds support for a new -iframeworkwithsysroot compiler option which allows the user to specify a framework path that can be prefixed with the sysroot. This option is similar to the -iwithsysroot option that exists to supplement -isystem. rdar://21316352 Differential Revision: https://reviews.llvm.org/D30183 llvm-svn: 297614
-
Alex Lorenz authored
CFPropertyListCreateFromXMLData that's used in __isOSVersionAtLeast llvm-svn: 297613
-
Pavel Labath authored
getpwent is not available on android until API level 21, and even then it is only available when doing a non-static link. Since android's concept of users is very different from linux, it's doubtful the home directory resolution would be useful, so I approximate this state by just not using getpwent on android. We've had another getpwent occurance in FileSpec for a while -- it wasn't causing problems because it was stripped out by the linker, but I disable that also, for consistency's sake. llvm-svn: 297612
-
Balaram Makam authored
llvm-svn: 297611
-
Gil Rapaport authored
This commit is a follow-up on r297580. It fixes the FIXME added temporarily by that commit to keep the removal of Unroller's specialized version of scalarizeInstruction() an NFC. See https://reviews.llvm.org/D30715 for details. llvm-svn: 297610
-
Pavel Labath authored
Propagate changes that were made during review, and fix a couple of warnings while I'm in there. llvm-svn: 297609
-
Sjoerd Meijer authored
Loop over the ARM decode tables; this is a clean-up to reduce some code duplication. Differential Revision: https://reviews.llvm.org/D30814 llvm-svn: 297608
-
Martin Probst authored
Summary: @see is special among JSDoc tags in that it is commonly followed by URLs. The JSDoc spec suggests that users should wrap URLs in an additional {@link url...} tag (@see http://usejsdoc.org/tags-see.html), but this is very commonly violated, with @see being followed by a "naked" URL. This change special cases all JSDoc lines that contain an @see not to be wrapped to account for that. Reviewers: djasper Subscribers: klimek, cfe-commits Differential Revision: https://reviews.llvm.org/D30883 llvm-svn: 297607
-
Martin Probst authored
Summary: Previously clang-format would not break after any !. However in TypeScript, ! can be used as a post fix operator for non-nullability: x.foo()!.bar()!; With this change, clang-format will wrap after the ! if it is likely a post-fix non null operator. Reviewers: djasper Subscribers: klimek, cfe-commits Differential Revision: https://reviews.llvm.org/D30705 llvm-svn: 297606
-
Martin Probst authored
Summary: `interface` and `type` are pseudo keywords and cause automatic semicolon insertion when followed by a line break: interface // gets parsed as a long variable access to "interface" VeryLongInterfaceName { } With this change, clang-format not longer wraps after `interface` or `type`. Reviewers: djasper Subscribers: cfe-commits, klimek Differential Revision: https://reviews.llvm.org/D30874 llvm-svn: 297605
-
Konstantin Zhuravlyov authored
Test is in the separate patch. Differential Revision: https://reviews.llvm.org/D30027 llvm-svn: 297604
-
Craig Topper authored
llvm-svn: 297603
-
Craig Topper authored
Revert "[AVX-512] EVEX2VEX, don't reject intrinsic instructions when both have a memory operand. We should just continue to check other operands instead." This reverts r297596. There were other issues that were making this not work that have been fixed now. Reverting this results in a more accurate table. llvm-svn: 297602
-
Craig Topper authored
[AVX-512] Add VEX_WIG to VEX vcvtsd2ss/vcvtss2sd intrinsic instructions so they can be correctly matched by EVEX2VEX table generation. llvm-svn: 297601
-
Craig Topper authored
llvm-svn: 297600
-
Craig Topper authored
llvm-svn: 297599
-
Zachary Turner authored
FileSpec::EnumerateDirectory has a bunch of platform-specific gunk in it for posix and non-posix platforms. We can get rid of all this by using LLVM's easy-to-use directory iterators. Differential Revision: https://reviews.llvm.org/D30807 llvm-svn: 297598
-
Zachary Turner authored
This fixes the compilation failures with the original patch. llvm-svn: 297597
-
Craig Topper authored
[AVX-512] EVEX2VEX, don't reject intrinsic instructions when both have a memory operand. We should just continue to check other operands instead. This exposed that we have several intrinsic instructions that have identical TSFlags to other instructions. We should merge their patterns and kill of the duplicate. I'll fix that in a follow up patch. llvm-svn: 297596
-