summaryrefslogtreecommitdiffstats
path: root/llvm/utils
Commit message (Collapse)AuthorAgeFilesLines
* [UpdateTestChecks] Emit warning when invalid test pathsDavid Bolvansky2019-07-111-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Recently I ran into the following issue: ./update_test_checks.py /path/not-existing-file.ll The script was silent and I was suprised why the real test file hadn't been updated. Solution: Emit warning if we detect this problem. Reviewers: lebedev.ri, spatel, jdoerfert, nikic Reviewed By: lebedev.ri, spatel, jdoerfert, nikic Subscribers: jdoerfert, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D64572 llvm-svn: 365818
* gn build: Merge r365792Nico Weber2019-07-112-0/+2
| | | | llvm-svn: 365795
* gn build: Merge r365773Nico Weber2019-07-111-0/+1
| | | | llvm-svn: 365787
* gn build: Merge r365687Nico Weber2019-07-102-0/+2
| | | | llvm-svn: 365689
* gn build: Merge r365585Nico Weber2019-07-101-0/+1
| | | | llvm-svn: 365633
* gn build: Merge r365536.Peter Collingbourne2019-07-091-0/+1
| | | | llvm-svn: 365572
* gn build: Merge r365532.Peter Collingbourne2019-07-091-1/+1
| | | | llvm-svn: 365571
* gn build: Merge r365541.Peter Collingbourne2019-07-092-0/+6
| | | | llvm-svn: 365570
* gn build: Merge r365531.Peter Collingbourne2019-07-091-0/+1
| | | | llvm-svn: 365569
* gn build: Merge r365503.Peter Collingbourne2019-07-091-0/+2
| | | | llvm-svn: 365530
* gn build: Merge r365453Nico Weber2019-07-091-0/+1
| | | | llvm-svn: 365481
* Update gn filesVitaly Buka2019-07-082-0/+4
| | | | llvm-svn: 365361
* Update gn filesVitaly Buka2019-07-083-0/+3
| | | | llvm-svn: 365354
* [lit] Parse command-line options from LIT_OPTSJoel E. Denny2019-07-084-1/+44
| | | | | | | | | | | | | | | | | Similar to `FILECHECK_OPTS` for FileCheck, `LIT_OPTS` makes it easy to adjust lit behavior when running the test suite via ninja. For example: ``` $ LIT_OPTS='--time-tests -vv --filter=threadprivate' \ ninja check-clang-openmp ``` Reviewed By: probinson Differential Revision: https://reviews.llvm.org/D64135 llvm-svn: 365313
* [UpdateTestChecks] Skip over .Lfunc_begin for RISC-VAlex Bradbury2019-07-081-1/+1
| | | | | | | | This mirrors the change made for X86 in rL336987. Without this patch, update_llc_test_checks will completely skip functions with personality functions. llvm-svn: 365297
* gn build: Merge r355546Nico Weber2019-07-071-0/+2
| | | | | | Found by inspection; the sync script doesn't sync .ipp files. llvm-svn: 365280
* gn build: Merge r365273Nico Weber2019-07-071-0/+1
| | | | llvm-svn: 365279
* gn build: Sort sync script outputNico Weber2019-07-071-2/+2
| | | | llvm-svn: 365278
* gn build: Sort cxx_sources in libcxx build fileNico Weber2019-07-071-33/+33
| | | | | | | | | | | Since these are in a custom list, `gn format` doesn't automatically sort them. Now their order matches the CMake build. No additions or deletions, this just sorts the files that are there. llvm-svn: 365277
* gn build: Merge r365258 and follow-ups r365263, r365264Nico Weber2019-07-071-0/+4
| | | | llvm-svn: 365276
* [CodeGen] Add larger vector types for i32 and f32David Majnemer2019-07-071-0/+12
| | | | | | | | | | Some out of tree backend require larger vector type. Since maintaining the changes out of tree is difficult due to the many manual changes needed when adding a new type we are adding it even if no backend currently use it. Differential Revision: https://reviews.llvm.org/D64141 Patch by Thomas Raoux! llvm-svn: 365274
* gn build: Merge r365203Nico Weber2019-07-051-0/+1
| | | | llvm-svn: 365213
* gn build: Merge r365179Nico Weber2019-07-051-0/+1
| | | | llvm-svn: 365185
* gn build: Merge r365130.Peter Collingbourne2019-07-051-0/+1
| | | | llvm-svn: 365167
* gn build: Merge r365103.Peter Collingbourne2019-07-051-0/+1
| | | | llvm-svn: 365166
* gn build: Merge r365007.Peter Collingbourne2019-07-051-0/+1
| | | | llvm-svn: 365165
* gn build: Merge r365091.Peter Collingbourne2019-07-055-3/+23
| | | | llvm-svn: 365164
* [TableGen] Allow DAG isel patterns to override default operands.Simon Tatham2019-07-043-10/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a Tablegen instruction description uses `OperandWithDefaultOps`, isel patterns for that instruction don't have to fill in the default value for the operand in question. But the flip side is that they actually //can't// override the defaults even if they want to. This will be very inconvenient for the Arm backend, when we start wanting to write isel patterns that generate the many MVE predicated vector instructions, in the form with predication actually enabled. So this small Tablegen fix makes it possible to write an isel pattern either with or without values for a defaulted operand, and have the default values filled in only if they are not overridden. If all the defaulted operands come at the end of the instruction's operand list, there's a natural way to match them up to the arguments supplied in the pattern: consume pattern arguments until you run out, then fill in any missing instruction operands with their default values. But if defaulted and non-defaulted operands are interleaved, it's less clear what to do. This does happen in existing targets (the first example I came across was KILLGT, in the AMDGPU/R600 backend), and of course they expect the previous behaviour (that the default for those operands is used and a pattern argument is not consumed), so for backwards compatibility I've stuck with that. Reviewers: nhaehnle, hfinkel, dmgreen Subscribers: mehdi_amini, javed.absar, tpr, kristof.beyls, steven_wu, dexonsmith, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D63814 llvm-svn: 365114
* [Bitcode] Move Bitstream to a separate libraryFrancis Visoiu Mistrih2019-07-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | This moves Bitcode/Bitstream*, Bitcode/BitCodes.h to Bitstream/. This is needed to avoid a circular dependency when using the bitstream code for parsing optimization remarks. Since Bitcode uses Core for the IR part: libLLVMRemarks -> Bitcode -> Core and Core uses libLLVMRemarks to generate remarks (see IR/RemarkStreamer.cpp): Core -> libLLVMRemarks we need to separate the Bitstream and Bitcode part. For clang-doc, it seems that it doesn't need the whole bitcode layer, so I updated the CMake to only use the bitstream part. Differential Revision: https://reviews.llvm.org/D63899 llvm-svn: 365091
* Fix GN buildVitaly Buka2019-07-021-1/+0
| | | | llvm-svn: 364942
* gn build: Merge r364866Nico Weber2019-07-021-0/+1
| | | | llvm-svn: 364908
* [UpdateTestChecks][PowerPC] Avoid empty string when scrubbing loop commentsJinsong Ji2019-07-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: SCRUB_LOOP_COMMENT_RE was introduced in https://reviews.llvm.org/D31285 This works for some loops. However, we may generate lines with loop comments only. And since we don't scrub leading white spaces, this will leave an empty line there, and FileCheck will complain it. eg: llvm/test/CodeGen/PowerPC/PR35812-neg-cmpxchg.ll:27:15: error: found empty check string with prefix 'CHECK:' ; CHECK-NEXT: This prevented us from using the `update_llc_test_checks.py` for quite some cases. We should still keep the comment token there, so that we can safely scrub the loop comment without breaking FileCheck. Reviewers: timshen, hfinkel, lebedev.ri, RKSimon Subscribers: nemanjai, jfb, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D63957 llvm-svn: 364775
* [benchmark] Disable CMake get_git_versionAndrew Ng2019-07-012-2/+7
| | | | | | | | | | | | | | | Disabled CMake get_git_version as it is meaningless for this in-tree build, and hardcoded a null version. Not using get_git_version avoids a refresh of the git index that is executed by get_git_version. Refreshing the index can take a considerable amount of time if the index needs to be refreshed (particularly with the mono repo). This situation can arise when building shared source on a host in VMs. Differential Revision: https://reviews.llvm.org/D63925 llvm-svn: 364742
* Clean up MSVC visualization of LLVM pointer typesMike Spertus2019-06-301-14/+5
| | | | | | | | | | | Create separate natvis ptr and int views for PointerIntPair. These are convenient in watch Windows and will be used by Clang visualizers to be checked in shortly Also, removed deref views as the MSVC na format has done the same thing natively since MSVC2013. llvm-svn: 364723
* [UpdateChecks] Add support for armv7-apple-darwinJinsong Ji2019-06-281-0/+9
| | | | | | | | | | | armv7-apple-darwin was not supported well, the script can't generate checks. https://reviews.llvm.org/D60601/new/#inline-568671 Differential Revision: https://reviews.llvm.org/D63939 llvm-svn: 364668
* [compiler-rt] Rename lit.*.cfg.* -> lit.*.cfg.py.*Reid Kleckner2019-06-271-2/+2
| | | | | | | | | | | | | These lit configuration files are really Python source code. Using the .py file extension helps editors and tools use the correct language mode. LLVM and Clang already use this convention for lit configuration, this change simply applies it to all of compiler-rt. Reviewers: vitalybuka, dberris Differential Revision: https://reviews.llvm.org/D63658 llvm-svn: 364591
* [GN] Update build fileVitaly Buka2019-06-271-1/+0
| | | | llvm-svn: 364583
* [GN] Set exit code to 1 if changes are neededVitaly Buka2019-06-271-2/+12
| | | | llvm-svn: 364582
* gn build: Follow-up to r364491 "[GN] Update build files"Nico Weber2019-06-275-4/+19
| | | | | | | | | | | - Merge r364427 (GSYM lib) more: It was missing the new unit test (as pointed out by llvm/utils/gn/build/sync_source_lists_from_cmake.py), and it had some superfluous deps not present in the cmake build. - Merge r364474 (clang DependencyScanning lib) more: The deps didn't quite match cmake. llvm-svn: 364501
* [GN] Fix check-llvmVitaly Buka2019-06-271-0/+14
| | | | llvm-svn: 364493
* [GN] Update build filesVitaly Buka2019-06-277-0/+25
| | | | llvm-svn: 364491
* [UpdateTestChecks][NFC] Remove entries with same prefixJinsong Ji2019-06-261-2/+0
| | | | | | | | Matching is 'lossy', triples with same prefix can be dropped. Differential Revision: https://reviews.llvm.org/D63732 llvm-svn: 364471
* Revert "r364412 [ExpandMemCmp][MergeICmps] Move passes out of CodeGen into ↵Clement Courbet2019-06-262-1/+1
| | | | | | | | | | | | | | opt pipeline." Breaks sanitizers: libFuzzer :: cxxstring.test libFuzzer :: memcmp.test libFuzzer :: recommended-dictionary.test libFuzzer :: strcmp.test libFuzzer :: value-profile-mem.test libFuzzer :: value-profile-strcmp.test llvm-svn: 364416
* [ExpandMemCmp][MergeICmps] Move passes out of CodeGen into opt pipeline.Clement Courbet2019-06-262-1/+1
| | | | | | | | | This allows later passes (in particular InstCombine) to optimize more cases. One that's important to us is `memcmp(p, q, constant) < 0` and memcmp(p, q, constant) > 0. llvm-svn: 364412
* gn build: Merge r364387Nico Weber2019-06-261-0/+1
| | | | llvm-svn: 364411
* gn build: Merge r364386Nico Weber2019-06-261-0/+1
| | | | llvm-svn: 364409
* gn build: Merge r364389Nico Weber2019-06-261-0/+1
| | | | llvm-svn: 364408
* gn build: Merge r364288.Peter Collingbourne2019-06-261-0/+1
| | | | llvm-svn: 364374
* Teach TableGen Intrin Emitter to handle LLVMPointerType<llvm_any_ty>Erich Keane2019-06-261-0/+3
| | | | | | | | | | r363233 rewrote a bunch of the Intrin Emitter code, however the new function to update the arg codes did not properly consider a pointer to an any. This patch adds that logic. Differential Revision: https://reviews.llvm.org/D63507 llvm-svn: 364364
* [PowerPC][UpdateTestChecks] powerpc- triple supportJinsong Ji2019-06-241-2/+1
| | | | | | | | | There are quite some old testcases with powerpc- triple, we should add this triple support so that we can update them with script. Differential Revision: https://reviews.llvm.org/D63723 llvm-svn: 364213
OpenPOWER on IntegriCloud