| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds build files for //llvm/unittest/[A-D].
Also teach sync_source_lists_from_cmake.py to not complain about missing
BUILD.gn files for CMakeLists.txt files that just call add_subdirectory()
without calling add_.+_unittest, like e.g.
llvm/unittests/Target/CMakeLists.txt.
(Omits CodeGen/GlobalISel and DebugInfo/PDB because their build files are somewhat interesting, and this patch is already on the larger side.)
Differential Revision: https://reviews.llvm.org/D56212
llvm-svn: 350411
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this, check-llvm runs and passes all of clang's lit tests. It doesn't run
any of its unit tests yet.
This is the only change in the GN build patch series that needs a change to a
file outside of llvm/utils/gn: llvm/test/tools/llvm-config/booleans.test checks
the result of llvm-config --build-system for some reason, so I'm updating the
test to accept "gn" as valid output in addition to "cmake". (The alternative
would be to let the gn build self-identify as cmake, which seems worse.)
Like with check-clang and check-lld, running just ninja -C out/gn will build
all prerequisites needed to run tests, but it won't run the tests (so that the
build becomes clean after one build). Running ninja -C out/gn check-llvm will
build prerequisites if needed and run the tests. The check-llvm target never
becomes clean and runs tests every time.
Differential Revision: https://reviews.llvm.org/D56195
llvm-svn: 350410
|
| |
|
|
|
|
|
|
| |
Not used by anything yet, but will be needed to make check-llvm run ld64's libLTO plugin tests.
Differential Revision: https://reviews.llvm.org/D56317
llvm-svn: 350409
|
| |
|
|
|
|
|
|
|
|
|
| |
Nothing pulls them in yet, but they will be needed for check-llvm.
LineEditor depends on libedit, so create a gn/build/lib for it, following the
usual pattern.
Differential Revision: https://reviews.llvm.org/D56316
llvm-svn: 350407
|
| |
|
|
|
|
|
|
| |
I got that wrong once while locally while working on check-llvm.
Reviewed as part of https://reviews.llvm.org/D56195
llvm-svn: 350394
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The previously introduced new operand type for br_table didn't have
a disassembler implementation, causing an assert.
Reviewers: dschuff, aheejin
Subscribers: sbc100, jgravelle-google, sunfish, llvm-commits
Differential Revision: https://reviews.llvm.org/D56227
llvm-svn: 350366
|
| |
|
|
|
|
|
|
| |
Update documentation and shebang.
Differential Revision: https://reviews.llvm.org/D56252
llvm-svn: 350327
|
| |
|
|
|
|
|
|
| |
In Python2 next() is used wile it's __next__ in Python3.
Differential Revision: https://reviews.llvm.org/D56250
llvm-svn: 350326
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D56261
llvm-svn: 350315
|
| |
|
|
|
|
|
|
| |
Use portable `in` operator instead of `has_key(...)` method.
Differential Revision: https://reviews.llvm.org/D56260
llvm-svn: 350314
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D56259
llvm-svn: 350313
|
| |
|
|
|
|
|
|
| |
Always use `items()` and introduce extra `list(...)` call when needed.
Differential Revision: https://reviews.llvm.org/D56257
llvm-svn: 350312
|
| |
|
|
|
|
|
|
|
| |
Use range instead of xrange whenever possible. The extra list creation in Python2
is generally not a performance bottleneck.
Differential Revision: https://reviews.llvm.org/D56253
llvm-svn: 350309
|
| |
|
|
|
|
|
|
|
| |
Make sure all print statements are compatible with Python 2 and Python3 using
the `from __future__ import print_function` statement.
Differential Revision: https://reviews.llvm.org/D56249
llvm-svn: 350307
|
| |
|
|
|
|
|
|
| |
Calculate which item is being held and then display it with the appropriate type. We also
optimize the display of PointerUnion3 to take advantage of our knowing that the IntMask is
always 1 in PointerUnion types
llvm-svn: 350280
|
| |
|
|
|
|
| |
And add a test for it.
llvm-svn: 350277
|
| |
|
|
| |
llvm-svn: 350275
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D56186
llvm-svn: 350250
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Also add a fuzzer() template for defining fuzzers that's similar to
add_llvm_fuzzer in the CMake build, and a build file for dependency
llvm/lib/FuzzMutate.
Also make `assert(defined(...` error strings a bit more self-consistent.
Differential Revision: https://reviews.llvm.org/D56194
llvm-svn: 350238
|
| |
|
|
|
|
|
|
|
|
|
|
| |
These two plugins are loaded into a host process that contains all LLVM
symbols, so they don't link against anything. This required minor readjustments
to the tablegen() setup of IR.
Needed for check-llvm.
Differential Revision: https://reviews.llvm.org/D56204
llvm-svn: 350234
|
| |
|
|
|
|
|
|
|
|
| |
Also add build files for dependencies llvm/lib/ExecutionEngine/{Interpreter,Orc}
Needed for check-llvm.
Differential Revision: https://reviews.llvm.org/D56193
llvm-svn: 350226
|
| |
|
|
|
|
|
|
|
|
| |
Also add build file for dependency llvm/lib/OptRemarks.
Needed for check-llvm.
Differential Revision: https://reviews.llvm.org/D56192
llvm-svn: 350217
|
| |
|
|
|
|
|
|
|
|
| |
llvm-cvtres
Needed for check-llvm.
Differential Revision: https://reviews.llvm.org/D56191
llvm-svn: 350216
|
| |
|
|
|
|
|
|
|
|
| |
Needed for check-llvm.
This is the last target reading llvm_install_binutils_symlinks.
Differential Revision: https://reviews.llvm.org/D56190
llvm-svn: 350215
|
| |
|
|
|
|
|
|
| |
Needed for check-llvm.
Differential Revision: https://reviews.llvm.org/D56189
llvm-svn: 350214
|
| |
|
|
|
|
|
|
|
|
| |
Also add build file for dependency llvm/lib/MCA.
Needed for check-llvm.
Differential Revision: https://reviews.llvm.org/D56166
llvm-svn: 350213
|
| |
|
|
|
|
|
|
| |
Needed for check-llvm.
Differential Revision: https://reviews.llvm.org/D56164
llvm-svn: 350212
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
verify-uselistorder, yaml-bench
Also add build file for dependency llvm/lib/XRay.
Needed for check-llvm.
(yaml-bench is an llvm/util, not an llvm/tool.)
Differential Revision: https://reviews.llvm.org/D56163
llvm-svn: 350211
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also add build file for dependency llvm/lib/ExecutionEngine/MCJIT.
The exegesis stuff is pretty hairy and knows a lot about Target internals (in
general, not specifically in the GN build). I put the llvm-tblgen -gen-exegesis
call in llvm/tools/llvm-exegesis/lib/X86, instead of in llvm/lib/Target/X86
where it is in CMake land, and asked on D52932 why it's in that place in the
CMake build.
Needed for check-llvm.
Differential Revision: https://reviews.llvm.org/D56167
llvm-svn: 350184
|
| |
|
|
|
|
|
|
|
|
|
| |
Also add build file for dependencies llvm/lib/ExecutionEngine,
llvm/lib/ExecutionEngine/RuntimeDyld.
Needed for check-llvm.
Differential Revision: https://reviews.llvm.org/D56165
llvm-svn: 350183
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also add a build file for clang/lib/ASTMatchers/Dynamic, which is only needed
by tests (and clang/tools/extra).
Also make llvm/utils/gn/build/sync_source_lists_from_cmake.py check that every
CMakeLists.txt file below {lld,clang}/unittests has a corresponding BUILD.gn
file, so we notice if new test binaries get added (since the failure mode for
missing GN build files for tests is just the tests silently not running in the
GN build).
Also add a unittest() macro for defining unit test targets, and add a lengthy
comment there about where the unit test binaries go and why.
With this, the build files for //clang are complete.
Differential Revision: https://reviews.llvm.org/D56116
llvm-svn: 350171
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this, check-clang runs and passes all of clang's lit tests. It doesn't run
any of its unit tests yet.
Like with check-lld, running just ninja -C out/gn will build all prerequisites
needed to run tests, but it won't run the tests (so that the build becomes
clean after one build). Running ninja -C out/gn check-clang will build
prerequisites if needed and run the tests. The check-clang target never becomes
clean and runs tests every time.
Differential Revision: https://reviews.llvm.org/D56095
llvm-svn: 350108
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
GN wants the NOSORT line to be the first line of a comment block, not the last
line.
I sent https://gn-review.googlesource.com/c/gn/+/3560 to support having it in
the last line too, but since it will be a while until everyone has that change
even if it's expected, use the form that works today.
Differential Revision: https://reviews.llvm.org/D56065
llvm-svn: 350060
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
their dependency clang/tools/libclang
libclang is somewhat incomplete. It's just enough to get check-clang to pass,
but that requires it to be pretty complete. The biggest thing is that it's not
built as a shared library on Linux. The libclang/BUILD.gn file has a comment
with details on what else is missing.
Differential Revision: https://reviews.llvm.org/D56059
llvm-svn: 350054
|
| |
|
|
|
|
|
|
|
|
| |
clang/tools/{arcmt-test,clang-check,clang-func-mapping}
Needed for check-clang.
Differential Revision: https://reviews.llvm.org/D56056
llvm-svn: 350026
|
| |
|
|
|
|
|
|
|
|
| |
clang/utils/hmaptool, clang/lib/Tooling/Refactoring
Needed for check-clang.
Differential Revision: https://reviews.llvm.org/D56055
llvm-svn: 350025
|
| |
|
|
|
|
|
|
|
|
| |
clang/tools/{clang-diff,clang-import-test,diagtool and clang/lib/Tooling, clang/lib/Tooling/ASTDiff
Needed for check-clang.
Differential Revision: https://reviews.llvm.org/D56054
llvm-svn: 350024
|
| |
|
|
|
|
|
|
|
| |
Verified by comparing the output of `otool -P bin/clang` between the GN and the
CMake build.
Differential Revision: https://reviews.llvm.org/D55984
llvm-svn: 349992
|
| |
|
|
|
|
|
|
|
|
| |
clang/lib/Headers
With this, the GN build can build clang!
Differential Revision: https://reviews.llvm.org/D55981
llvm-svn: 349991
|
| |
|
|
|
|
|
|
|
|
| |
llvm-modextract, llvm-profdata, llvm-symbolizer
These are the llvm/tools needed by check-clang.
Differential Revision: https://reviews.llvm.org/D56018
llvm-svn: 349989
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D55980
llvm-svn: 349988
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D55979
llvm-svn: 349987
|
| |
|
|
|
|
|
|
|
|
| |
clang/lib/StaticAnalyzer/{Checkers,Core,Frontend}
The intent is to add the build file for clang/lib/StaticAnalyzer/Frontend; everything else is pulled in by that.
Differential Revision: https://reviews.llvm.org/D55978
llvm-svn: 349986
|
| |
|
|
|
|
|
|
| |
The check-lld target was missing the dependency on llvm-nm and llvm-objdump in that case.
Differential Revision: https://reviews.llvm.org/D55941
llvm-svn: 349836
|
| |
|
|
|
|
|
|
| |
llvm/lib/ProfileData/Coverage
Differential Revision: https://reviews.llvm.org/D55931
llvm-svn: 349834
|
| |
|
|
|
|
|
|
| |
clang/lib/{Frontend,Frontend/Rewrite,Serialization}
Differential Revision: https://reviews.llvm.org/D55930
llvm-svn: 349833
|
| |
|
|
|
|
|
|
|
| |
Mostly boring, except for the spurious dependency on StaticAnalyzer/Checkers --
see comments in the code.
Differential Revision: https://reviews.llvm.org/D55927
llvm-svn: 349832
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Nothing really interesting. One thing to consider is where the clang_tablegen()
invocations that generate files that are private to a library should be. The
CMake build puts them in clang/include/clang/Parse (in this case), but maybe
putting them right in clang/lib/Parse/BUILD.gn makes mor sense. (For
clang_tablegen() calls that generate .inc files used by the public headers,
putting the call in the public BUILD file makes sense.)
For now, I've put the build file in the public header folder, since that
matches CMake and what I did in the last 2 clang patches, but I'm not sure I
like this.
Differential Revision: https://reviews.llvm.org/D55925
llvm-svn: 349831
|
| |
|
|
|
|
|
|
| |
lib/{Format,Rewrite,Tooling/Core,Tooling/Inclusions}
Differential Revision: https://reviews.llvm.org/D55924
llvm-svn: 349830
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D55913
llvm-svn: 349757
|