summaryrefslogtreecommitdiffstats
path: root/llvm/utils
Commit message (Collapse)AuthorAgeFilesLines
...
* lit: support long paths on WindowsSaleem Abdulrasool2019-04-052-9/+64
| | | | | | | | Use ctypes to call into SHFileOperationW with the extended NT path to allow us to remove paths which exceed 261 characters on Windows. This functionality is exercised by swift's test suite. llvm-svn: 357778
* gn build: Merge r357663Nico Weber2019-04-043-0/+3
| | | | llvm-svn: 357666
* [gn] Use "$link /lib" for archives instead of lib.exeReid Kleckner2019-04-041-1/+1
| | | | | | | | | | | | | | | | Summary: This avoids the need to talk about lib.exe or llvm-lib.exe and it does the right thing with LLD. Reviewers: thakis Subscribers: llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D60155 llvm-svn: 357660
* gn build: Add build file for dexpNico Weber2019-04-032-2/+14
| | | | | | | | | None of check-clang-tools's tests run this, but the CMake check-clang-tools depends on the binary, so add it for consistency. Differential Revision: https://reviews.llvm.org/D60222 llvm-svn: 357624
* gn build: Add build files for clangd xpc framework codeNico Weber2019-04-035-2/+207
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a bit of a larger change since this is the first (and as far as I can tell only) place where the LLVM build produces macOS framework bundles. GN has some built-in support for this, so use that. `gn help create_bundle` has a terse description (but it's a bit outdated: `deps` must be `public_deps` and the conditionals in the example in the help aren't quite right on non-iOS). We need a new 'copy_bundle_data' tool, and since we copy the clangd.xpc bundle as bundle_data into ClangdXPC.framework it needs to be able to handle directories in addition to files. GN also insists we have a compile_xcassets tool even though it's not used. I just made that run `false`. Despite GN's support for bundles, we still need to manually create the expected symlink structure in the .framework bundle. Since this code never runs on Windows, it's safe to create the symlinks before the symlink targets exist, so we can just make the bundle depend on the steps that create the symlinks. For this to work, change the symlink script to create the symlink's containing directory if it doesn't yet exist. I locally verified that CMake and GN build create the same bundle structure. (I noticed that both builds set LC_ID_DYLIB to the pre-copy libClangdXPCLib.dylib name, but that seems to not cause any issues and it happens in the CMake build too.) (Also add an error message to clangd-xpc-test-client for when loading the dylib fails – this was useful while locally debugging this.) Differential Revision: https://reviews.llvm.org/D60130 llvm-svn: 357574
* [TableGen] Properly calculate the minimum size needed or ConvertFn in ↵Craig Topper2019-04-021-7/+11
| | | | | | | | | | GenAsmmatcher.inc files We were using the number of Matchables rather than the number of rows in the converter table. This only matters for a few of the targets where the number of matchables is more than 255, but the number of converters is less than 255. Many of the targets have more than 256 converters. So already required a uint16_t. llvm-svn: 357527
* [FileCheck] Fix FileCheck.cpp compilation on SolarisRainer Orth2019-04-021-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Both LLVM 8.0.0 and current trunk fail to compile on Solaris with GCC 8.1.0: /vol/llvm/src/llvm/dist/utils/FileCheck/FileCheck.cpp: In function ‘void DumpAnnotatedInput(llvm::raw_ostream&, const llvm::FileCheckRequest&, llvm::StringRef, std::vector<InputAnnotation>&, unsigned int)’: /vol/llvm/src/llvm/dist/utils/FileCheck/FileCheck.cpp:408:41: error: call of overloaded ‘log10(unsigned int&)’ is ambiguous unsigned LineNoWidth = log10(LineCount) + 1; ^ In file included from /vol/gcc-8/lib/gcc/i386-pc-solaris2.11/8.1.0/include-fixed/math.h:24, from /vol/gcc-8/include/c++/8.1.0/cmath:45, from /vol/llvm/src/llvm/dist/include/llvm-c/DataTypes.h:28, from /vol/llvm/src/llvm/dist/include/llvm/Support/DataTypes.h:16, from /vol/llvm/src/llvm/dist/include/llvm/ADT/Hashing.h:47, from /vol/llvm/src/llvm/dist/include/llvm/ADT/ArrayRef.h:12, from /vol/llvm/src/llvm/dist/include/llvm/Support/CommandLine.h:22, from /vol/llvm/src/llvm/dist/utils/FileCheck/FileCheck.cpp:18: /vol/gcc-8/lib/gcc/i386-pc-solaris2.11/8.1.0/include-fixed/iso/math_iso.h:209:21: note: candidate: ‘long double std::log10(long double)’ inline long double log10(long double __X) { return __log10l(__X); } ^~~~~ /vol/gcc-8/lib/gcc/i386-pc-solaris2.11/8.1.0/include-fixed/iso/math_iso.h:170:15: note: candidate: ‘float std::log10(float)’ inline float log10(float __X) { return __log10f(__X); } ^~~~~ /vol/gcc-8/lib/gcc/i386-pc-solaris2.11/8.1.0/include-fixed/iso/math_iso.h:70:15: note: candidate: ‘double std::log10(double)’ extern double log10 __P((double)); ^~~~~ Fixed by using std::log10 instead, which allowed the compilation on i386-pc-solaris2.11 and sparc-sun-solaris2.11 to continue. Differential Revision: https://reviews.llvm.org/D60043 llvm-svn: 357509
* gn build: Merge r357469Nico Weber2019-04-021-0/+1
| | | | llvm-svn: 357477
* gn build: Add build files for non-framework xpc clangd bitsNico Weber2019-04-026-12/+58
| | | | | | Differential Revision: https://reviews.llvm.org/D60124 llvm-svn: 357476
* gn build: Merge r357383Nico Weber2019-04-011-0/+1
| | | | llvm-svn: 357398
* gn build: Add build files for most clang-tools-extra unit testsNico Weber2019-03-3113-2/+287
| | | | | | Differential Revision: https://reviews.llvm.org/D60038 llvm-svn: 357369
* fix typo: "\t" => " "Liang Zou2019-03-311-1/+1
| | | | | | | | | | | | | | Reviewers: llvm.org, Jim Reviewed By: Jim Subscribers: arsenm, jvesely, nhaehnle, rupprecht, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D59983 llvm-svn: 357365
* gn build: Merge r357340Nico Weber2019-03-311-0/+1
| | | | llvm-svn: 357358
* gn build: Merge r357326Nico Weber2019-03-312-1/+1
| | | | llvm-svn: 357357
* gn build: Merge r357248Nico Weber2019-03-291-0/+1
| | | | llvm-svn: 357261
* gn build: Merge r357259Nico Weber2019-03-292-1/+2
| | | | llvm-svn: 357260
* gn build: Add check-clang-tools to run clang-tools-extra lit testsNico Weber2019-03-295-12/+151
| | | | | | | | | | | Only runs the clang-tools-extra lit tests; not yet the unit tests. Add a build file for clangd-indexer too, since it's needed for the tests. Differential Revision: https://reviews.llvm.org/D59955 llvm-svn: 357232
* [WebAssembly] Merge used feature sets, update atomics linkage policyThomas Lively2019-03-291-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: It does not currently make sense to use WebAssembly features in some functions but not others, so this CL adds an IR pass that takes the union of all used feature sets and applies it to each function in the module. This allows us to prevent atomics from being lowered away if some function has opted in to using them. When atomics is not enabled anywhere, we detect whether there exists any atomic operations or thread local storage that would be stripped and disallow linking with objects that contain atomics if and only if atomics or tls are stripped. When atomics is enabled, mark it as used but do not require it of other objects in the link. These changes allow libraries that do not use atomics to be built once and linked into both single-threaded and multithreaded binaries. Reviewers: aheejin, sbc100, dschuff Subscribers: jgravelle-google, hiraditya, sunfish, jfb, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D59625 llvm-svn: 357226
* Update lit config for ld.lld command to match "ld\.lld" instead of trying to ↵Rumeet Dhindsa2019-03-281-2/+2
| | | | | | | | match respective regex. (It was able to work with ld-lld and ld1lld as well) Differential Revision: https://reviews.llvm.org/D59962 llvm-svn: 357218
* gn build: Add some build files for clangdNico Weber2019-03-286-0/+179
| | | | | | | | | | | | | | Enough to build the clangd binaries, but this is still missing build files for: - fuzzer - indexer - index/dex/dexp - benchmarks - xpc Differential Revision: https://reviews.llvm.org/D59899 llvm-svn: 357182
* Add "git llvm revert" and "git llvm svn-lookup" subcommandsJordan Rupprecht2019-03-281-3/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: The current git-svnrevert script only works with git-svn repos (e.g. using "git svn find-rev" to find the commit to revert). This adds a similar implementation that works with the llvm git command handler. Usage: ``` // Revert by svn id $ git llvm revert r123456 // See what commands would be run instead of actually reverting $ git llvm revert -n r123456 <full git revert + git commit commands> // Git commit hash also fine $ git llvm revert abc123456 // For convenience, the git->svn method can be used directly: $ git llvm svn-lookup abc123456 r123456 // Push revert upstream (drop the -n when ready) $ git llvm push -n ``` Regardless of how the command is invoked (with a svn revision or git hash), the message is: ``` Revert [LibFoo] Change Foo implementation This reverts r123456 (git commit abc123) ``` Reviewers: jyknight, mehdi_amini, jlebar Reviewed By: jlebar Subscribers: llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D59837 llvm-svn: 357180
* gn build: Merge r357047Nico Weber2019-03-271-0/+1
| | | | llvm-svn: 357071
* gn build: Add build files for clang-include-fixer and find-all-symbolsNico Weber2019-03-275-0/+86
| | | | | | Differential Revision: https://reviews.llvm.org/D59838 llvm-svn: 357042
* gn build: Format all build filesNico Weber2019-03-264-7/+7
| | | | | | Re-ran `git ls-files '*.gn' '*.gni' | xargs llvm/utils/gn/gn.py format`. llvm-svn: 357021
* gn build: Merge r356929 (effectively relands r353518, reverted in r353621)Nico Weber2019-03-265-6/+7
| | | | llvm-svn: 357019
* merge-request.sh: Update 8.0 metabug for 8.0.1Tom Stellard2019-03-251-1/+1
| | | | llvm-svn: 356924
* [clang-tidy] Separate the check-facing interfaceAlexander Kornienko2019-03-251-0/+1
| | | | | | | | | | | | | | | | | | | Summary: Move ClangTidyCheck to a separate header/.cpp Switch checks to #include "ClangTidyCheck.h" Mention ClangTidyCheck.h in the docs Reviewers: hokein, gribozavr, aaron.ballman Reviewed By: hokein Subscribers: mgorny, javed.absar, xazax.hun, arphaman, jdoerfert, llvm-commits, cfe-commits Tags: #clang, #llvm Differential Revision: https://reviews.llvm.org/D59714 llvm-svn: 356890
* gn build: Clean up README.rst a bitNico Weber2019-03-251-37/+34
| | | | | | | | | | | - Make introduction a bit shorter - Add a `git clone` step to Quick start - Put command to run first in each of the Quick start steps - Use ``code`` instead of `label` throughout; this is .rst not .md Differential Revision: https://reviews.llvm.org/D59600 llvm-svn: 356885
* gn build: Let get.py keep zip file in memory instead of using a temp fileNico Weber2019-03-251-12/+5
| | | | | | | | | The zip is small, and it's a bit less code this way. No intended behavior change. Differential Revision: https://reviews.llvm.org/D59677 llvm-svn: 356884
* gn build: Merge r356820Nico Weber2019-03-232-0/+9
| | | | llvm-svn: 356846
* gn build: Add build files for modularize and pp-traceNico Weber2019-03-233-0/+39
| | | | | | Differential Revision: https://reviews.llvm.org/D59701 llvm-svn: 356845
* [gn] Add clang-tools-extra/clang-tidy/tool/BUILD.gnVitaly Buka2019-03-231-0/+18
| | | | llvm-svn: 356828
* [gn] Add clang-tools-extra/clang-tidy/tool/BUILD.gnVitaly Buka2019-03-231-0/+1
| | | | llvm-svn: 356827
* Make clang-move use same file naming convention as other toolsNico Weber2019-03-222-2/+2
| | | | | | | | | | | | In all the other clang-foo tools, the main library file is called Foo.cpp and the file in the tool/ folder is called ClangFoo.cpp. Do this for clang-move too. No intended behavior change. Differential Revision: https://reviews.llvm.org/D59700 llvm-svn: 356780
* gn build: Merge r356750Nico Weber2019-03-221-0/+1
| | | | llvm-svn: 356772
* gn build: Merge r356570Nico Weber2019-03-221-0/+1
| | | | llvm-svn: 356771
* gn build: Merge r356662Nico Weber2019-03-221-0/+1
| | | | llvm-svn: 356770
* gn build: Merge r356692Nico Weber2019-03-221-0/+1
| | | | llvm-svn: 356769
* gn build: Merge r356753Nico Weber2019-03-223-0/+5
| | | | llvm-svn: 356767
* gn build: Merge r356652 (and follow-up r56655)Nico Weber2019-03-223-0/+5
| | | | llvm-svn: 356766
* gn build: Merge r356729Nico Weber2019-03-221-0/+1
| | | | llvm-svn: 356765
* Remove HAVE_REALPATH from config.hNico Weber2019-03-201-2/+0
| | | | | | | | | Its last use was removed in r352916. No behavior change. Differential Revision: https://reviews.llvm.org/D59601 llvm-svn: 356579
* gn build: Add build files for some clang-tools-extraNico Weber2019-03-209-0/+149
| | | | | | | | | Adds clang-change-namespace, clang-move, clang-query, clang-reorder-fields. Differential Revision: https://reviews.llvm.org/D59554 llvm-svn: 356567
* gn build: Merge r356508Nico Weber2019-03-201-0/+1
| | | | llvm-svn: 356563
* gn build: Merge r356519Nico Weber2019-03-202-1/+3
| | | | llvm-svn: 356560
* gn build: Merge r356387.Peter Collingbourne2019-03-191-0/+1
| | | | llvm-svn: 356485
* gn build: Merge r356451.Peter Collingbourne2019-03-191-0/+1
| | | | llvm-svn: 356484
* Use response file when generating LLVM-C.dllSerge Guelton2019-03-191-1/+11
| | | | | | | | | | | As discovered in D56774 the command line gets to long, so use a response file to give the script the libs. This change has been tested and is confirmed working for me. Commited on behalf of Jakob Bornecrantz. Differential Revision: https://reviews.llvm.org/D56781 llvm-svn: 356443
* [X86] Allow any 8-bit immediate to be used with BT/BTC/BTR/BTS not just sign ↵Craig Topper2019-03-181-0/+6
| | | | | | | | extended 8-bit immediates. We need to allow [128,255] in addition to [-128, 127] to match gas. llvm-svn: 356413
* [X86] Remove the _alt forms of (V)CMP instructions. Use a combination of ↵Craig Topper2019-03-181-4/+0
| | | | | | | | | | custom printing and custom parsing to achieve the same result and more Similar to previous change done for VPCOM and VPCMP Differential Revision: https://reviews.llvm.org/D59468 llvm-svn: 356384
OpenPOWER on IntegriCloud