|
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init |
|
| #
d2e86866 |
| 07-Jul-2022 |
Louis Dionne <[email protected]> |
[libc++] Re-apply the use of ABI tags to provide per-TU insulation
This commit re-applies 9ee97ce3b830, which was reverted by 61d417ce because it broke the LLDB data formatter tests. It also re-appl
[libc++] Re-apply the use of ABI tags to provide per-TU insulation
This commit re-applies 9ee97ce3b830, which was reverted by 61d417ce because it broke the LLDB data formatter tests. It also re-applies 6148c79a (the manual GN change associated to it).
Differential Revision: https://reviews.llvm.org/D127444
show more ...
|
| #
9c6e0435 |
| 29-Jun-2022 |
Muhammad Omair Javaid <[email protected]> |
[LLDB] Allow API tests to override -gdwarf on Windows
This patch fixes LLDB API tests MakeFile.rules to allow overriding of debug symbol flags when compiling tests for Windows. Previously windows te
[LLDB] Allow API tests to override -gdwarf on Windows
This patch fixes LLDB API tests MakeFile.rules to allow overriding of debug symbol flags when compiling tests for Windows. Previously windows tests were forced to emit only dwarf debug symbols as majority of the tests rely on dwarf debug info. After this patch any test can override debug symbol flag by setting DEBUG_INFO_FLAG variable in its make file.
show more ...
|
|
Revision tags: llvmorg-14.0.6, llvmorg-14.0.5 |
|
| #
e4ed7ca9 |
| 07-Jun-2022 |
Muhammad Omair Javaid <[email protected]> |
[LLDB] Avoid using -fno-builtin for building API tests
This patch removes use of -fno-builtin flag for building LLDB API tests.
LLDB API tests are built using Makefile.rules where we were using -fn
[LLDB] Avoid using -fno-builtin for building API tests
This patch removes use of -fno-builtin flag for building LLDB API tests.
LLDB API tests are built using Makefile.rules where we were using -fno-builtin flag to avoid gcc intrinsic optimization conflicting with Android runtime in past.
Now that we no longer use gcc for building testsuite and compiling LLDB API tests on AArch64/Windows require clang to optimize certain calls like _setjmp to setjmpex as former is not implemented by AArch64 windows runtime.
show more ...
|
|
Revision tags: llvmorg-14.0.4 |
|
| #
ac7747ef |
| 09-May-2022 |
Pavel Labath <[email protected]> |
[lldb/test] Append CXXFLAGS_EXTRAS last in Makefile.rules
This matches what we do with CFLAGS, and it started to matter 8abfa5119ad, which added some -std=-apending code.
|
| #
8abfa511 |
| 09-May-2022 |
Pavel Labath <[email protected]> |
[lldb/test] Fix TestCppIncompleteTypeMembers.py
modify the Makefile.rules line which was interfering with the target-specific variable values.
|
|
Revision tags: llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2 |
|
| #
4ef02cba |
| 10-Feb-2022 |
Adrian Prantl <[email protected]> |
Revert "Add -fmodules-local-submodule-visibility to MANDATORY_MODULE_BUILD_CFLAGS"
This reverts commit 547a667ceeb60dca5447e5bc09165a52b22925eb.
|
| #
547a667c |
| 10-Feb-2022 |
Adrian Prantl <[email protected]> |
Add -fmodules-local-submodule-visibility to MANDATORY_MODULE_BUILD_CFLAGS
to work around build failure introduced in https://reviews.llvm.org/D119036
|
|
Revision tags: llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2, llvmorg-13.0.1-rc1, llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1, llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4, llvmorg-12.0.0-rc3, llvmorg-12.0.0-rc2, llvmorg-11.1.0, llvmorg-11.1.0-rc3, llvmorg-12.0.0-rc1, llvmorg-13-init |
|
| #
50830e50 |
| 24-Jan-2021 |
Fangrui Song <[email protected]> |
[lldb] Add -Wl,-rpath to make tests run with fresh built libc++
On my Debian machine, system libc++/libc++abi is not installed (`libc++1-9 libc++abi-9`), 21 check-lldb-api tests fail because -stdlib
[lldb] Add -Wl,-rpath to make tests run with fresh built libc++
On my Debian machine, system libc++/libc++abi is not installed (`libc++1-9 libc++abi-9`), 21 check-lldb-api tests fail because -stdlib=libc++ linked executables cannot find runtime libc++.so.1 at runtime.
Use the `-Wl,-rpath,$(LLVM_LIBS_DIR)` mechanism in `packages/Python/lldbsuite/test/make/Makefile.rules` (D58630 for NetBSD) to allow such tests compile/link with fresh libc++ built beside lldb. (A system libc++.so.1 is not guaranteed to match fresh libc++ header files.)
Some tweaks to the existing NetBSD rule when generalizing:
* Drop `-L$(LLVM_LIBS_DIR)` since Clang driver adds it correctly. * Add `-stdlib=libc++` only for `USE_LIBCPP`.
Also, drop `-isystem /usr/include/c++/v1` introduced in D9426. It is not needed by Clang driver. GCC using libc++ requires more setup.
I don't find any test needing `-Wl,-rpath` in `test/Shell/helper/{build,toolchain}.py` (D58630 for NetBSD added them).
Reviewed By: labath
Differential Revision: https://reviews.llvm.org/D94888
show more ...
|
|
Revision tags: llvmorg-11.1.0-rc2 |
|
| #
6afdf13a |
| 20-Jan-2021 |
Fangrui Song <[email protected]> |
Makefile.rules: Avoid redundant .d generation (make restart) and inline archive rule to the only test
Take an example when `CXX_SOURCES` is main.cpp.
main.d is an included file. make will rebuild m
Makefile.rules: Avoid redundant .d generation (make restart) and inline archive rule to the only test
Take an example when `CXX_SOURCES` is main.cpp.
main.d is an included file. make will rebuild main.d, re-executes itself [1] to read in the new main.d file, then rebuild main.o, finally link main.o into a.out. main.cpp is parsed twice in this process.
This patch merges .d generation into .o generation [2], writes explicit rules for .c/.m and deletes suffix rules for %.m and %.o. Since a target can be satisfied by either of .c/.cpp/.m/.mm, we use multiple pattern rules. The rule with the prerequisite (with VPATH considered) satisfied is used [3].
Since suffix rules are disabled, the implicit rule for archive member targets is no long available [4]. Rewrite, simplify the archive rule and inline it into the only test `test/API/functionalities/archives/Makefile`.
[1]: https://www.gnu.org/software/make/manual/html_node/Remaking-Makefiles.html [2]: http://make.mad-scientist.net/papers/advanced-auto-dependency-generation/ [3]: https://www.gnu.org/software/make/manual/html_node/Pattern-Match.html [4]: https://www.gnu.org/software/make/manual/html_node/Archive-Update.html
ObjC/ObjCXX tests only run on macOS. I don't have testing environment. Hope someone can do it for me.
Reviewed By: JDevlieghere
Differential Revision: https://reviews.llvm.org/D94890
show more ...
|
| #
b74ae43c |
| 18-Jan-2021 |
Fangrui Song <[email protected]> |
Makefile.rules: Make HOST_OS/OS simply expanded variable to avoid excess uname -s invocations
This decreases the number of runs from 18 to 1.
|
| #
95d14618 |
| 17-Jan-2021 |
Fangrui Song <[email protected]> |
Makefile.rules: Delete GCC 4.6 workaround
5.1 is the minimum supported version.
|
|
Revision tags: llvmorg-11.1.0-rc1, llvmorg-11.0.1, llvmorg-11.0.1-rc2, llvmorg-11.0.1-rc1, llvmorg-11.0.0, llvmorg-11.0.0-rc6, llvmorg-11.0.0-rc5, llvmorg-11.0.0-rc4, llvmorg-11.0.0-rc3, llvmorg-11.0.0-rc2 |
|
| #
e5d08fcb |
| 19-Aug-2020 |
Jonas Devlieghere <[email protected]> |
[lldb] Extend Darwin builder to pass the ARCH_CFLAGS spec to Make.
Construct the ARCH_CFLAGS in Python rather than in Make by disassembling the TRIPLE.
Differential revision: https://reviews.llvm.o
[lldb] Extend Darwin builder to pass the ARCH_CFLAGS spec to Make.
Construct the ARCH_CFLAGS in Python rather than in Make by disassembling the TRIPLE.
Differential revision: https://reviews.llvm.org/D85539
show more ...
|
| #
1922bf12 |
| 19-Aug-2020 |
Jonas Devlieghere <[email protected]> |
[lldb] Convert builders to use inheritance (NFC)
Rather than have different modules for different platforms, use inheritance so we can have a Builer base class and optional child classes that overri
[lldb] Convert builders to use inheritance (NFC)
Rather than have different modules for different platforms, use inheritance so we can have a Builer base class and optional child classes that override platform specific methods.
Differential revision: https://reviews.llvm.org/D86174
show more ...
|
|
Revision tags: llvmorg-11.0.0-rc1 |
|
| #
9decf040 |
| 15-Jul-2020 |
Pavel Labath <[email protected]> |
[lldb/test] Simplify Makefile rules for .d files
The sed line in the rules was adding the .d file as a target to the dependency rules -- to ensure the file gets rebuild when the sources change. The
[lldb/test] Simplify Makefile rules for .d files
The sed line in the rules was adding the .d file as a target to the dependency rules -- to ensure the file gets rebuild when the sources change. The same thing can be achieved more elegantly with some -M flags.
show more ...
|
| #
313fca65 |
| 15-Jul-2020 |
Pavel Labath <[email protected]> |
[lldb/test] Remove JOIN_CMD from Makefile.rules
It's possible to achieve the same effect by providing multi-step recipe instead of a single-step recipe where the step happens to contain multiple com
[lldb/test] Remove JOIN_CMD from Makefile.rules
It's possible to achieve the same effect by providing multi-step recipe instead of a single-step recipe where the step happens to contain multiple commands.
show more ...
|
|
Revision tags: llvmorg-12-init, llvmorg-10.0.1, llvmorg-10.0.1-rc4, llvmorg-10.0.1-rc3, llvmorg-10.0.1-rc2 |
|
| #
7e825abd |
| 16-Jun-2020 |
Adrian Prantl <[email protected]> |
Repair support for launching ios/tv/watch simulator binaries through platform
and delete a bunch (but not all) redundant code. If you compare the remaining implementations of Platform*Simulator.cpp,
Repair support for launching ios/tv/watch simulator binaries through platform
and delete a bunch (but not all) redundant code. If you compare the remaining implementations of Platform*Simulator.cpp, there is still an obvious leftover cleanup task.
Specifically, this patch
- removes SDK initialization from dotest (there is equivalent but more complete code in Makefile.rules)
- make Platform*Simulator inherit the generic implementation of PlatformAppleSimulator (more can be done here)
- simplify the platform logic in Makefile.rules
- replace the custom SDK finding logic in Platform*Simulator with XcodeSDK
- adds a test for each supported simulator
Differential Revision: https://reviews.llvm.org/D81980
show more ...
|
| #
539b47c9 |
| 10-Jun-2020 |
Pavel Labath <[email protected]> |
[lldb/Makefile.rules] Apply CFLAGS_EXTRAS after debug-info mode flags
This makes it possible to conditionally override some of these flags via CFLAGS_EXTRAS. It should be NFC right now, but this see
[lldb/Makefile.rules] Apply CFLAGS_EXTRAS after debug-info mode flags
This makes it possible to conditionally override some of these flags via CFLAGS_EXTRAS. It should be NFC right now, but this seems the logical order in which to apply these things, and I am going to make use of this in another patch.
show more ...
|
| #
54422d21 |
| 01-Jun-2020 |
Raphael Isemann <[email protected]> |
Revert "[lldb] Pass -fPIC flag even when DYLIB_ONLY is set"
This reverts commit fd0ab3b3eb88de3fe4792c34b50084595e22d68d.
The fix here is incorrect and the actual fault was an incorrect test Makefi
Revert "[lldb] Pass -fPIC flag even when DYLIB_ONLY is set"
This reverts commit fd0ab3b3eb88de3fe4792c34b50084595e22d68d.
The fix here is incorrect and the actual fault was an incorrect test Makefile.
To give some more background:
The original test for D80798 compiled three source files into either one executable or one executable + 2 shared libraries, each being one different test setup. If both the monolithic executable and the shared libraries where compiled in the same directory, then Make would overwrite the .o files of one test setup with the other. This caused that while -fPIC was passed correctly to the test setup with the shared libraries, the compiler invocations for the monolithic executable would later overwrite these object files (and as only the test setup with the shared library used -fPIC, it appeared as if the shared library object files didn't receive the -fPIC flag).
Thanks to Pavel for figuring this out.
show more ...
|
| #
fd0ab3b3 |
| 29-May-2020 |
Raphael Isemann <[email protected]> |
[lldb] Pass -fPIC flag even when DYLIB_ONLY is set
Summary: It seems that when we rewrite a few rules to only build a dylib (i.e., when DYLIB_ONLY is set), the rule for setting the CFLAGS for the dy
[lldb] Pass -fPIC flag even when DYLIB_ONLY is set
Summary: It seems that when we rewrite a few rules to only build a dylib (i.e., when DYLIB_ONLY is set), the rule for setting the CFLAGS for the dylib's object file compilation will no longer work. From what I can see this is because in DYLIB_ONLY mode we pretend to compile the main executable so the DYLIB_OBJECTS scope is actually never used.
This patch makes `-fPIC` unstopped if DYLIB_ONLY is set so that -fPIC actually ends up in the CFLAGS for the dylib object file compilation.
The test for this is D80798 which only compiles on Linux with this patch.
Reviewers: friss, labath
Reviewed By: friss
Subscribers: JDevlieghere
Differential Revision: https://reviews.llvm.org/D80789
show more ...
|
|
Revision tags: llvmorg-10.0.1-rc1 |
|
| #
e0dbd025 |
| 06-Apr-2020 |
Pavel Labath <[email protected]> |
[lldb/test] Make TestLoadUnload compatible with windows
Summary: This patch introduces a header "dylib.h" which can be used in tests to handle shared libraries semi-portably. The shared library APIs
[lldb/test] Make TestLoadUnload compatible with windows
Summary: This patch introduces a header "dylib.h" which can be used in tests to handle shared libraries semi-portably. The shared library APIs on windows and posix systems look very different, but their underlying functionality is relatively similar, so the mapping is not difficult.
It also introduces two new macros to wrap the functinality necessary to export/import function across the dll boundary on windows. Previously we had the LLDB_TEST_API macro for this purpose, which automagically changed meaning depending on whether we were building the shared library or the executable. While convenient for simple cases, this approach was not sufficient for the more complicated setups where one deals with multiple shared libraries.
Lastly it rewrites TestLoadUnload, to make use of the new APIs. The trickiest aspect there is the handling of DYLD_LIBRARY_PATH on macos -- previously setting this variable was not needed as the test used @executable_path-relative dlopens, but the new generic api does not support that. Other systems do not support such dlopens either so the test already contained support for setting the appropriate path variable, and this patch just makes that logic more generic. In doesn't seem that the purpose of this test was to exercise @executable_path imports, so this should not be a problem.
These changes are sufficient to make some of the TestLoadUnload tests pass on windows. Two other tests will start to pass once D77287 lands.
Reviewers: amccarth, jingham, JDevlieghere, compnerd
Subscribers: lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D77662
show more ...
|
|
Revision tags: llvmorg-10.0.0, llvmorg-10.0.0-rc6, llvmorg-10.0.0-rc5, llvmorg-10.0.0-rc4, llvmorg-10.0.0-rc3, llvmorg-10.0.0-rc2, llvmorg-10.0.0-rc1 |
|
| #
fa001767 |
| 21-Jan-2020 |
Adrian Prantl <[email protected]> |
Fix typos
|
| #
509b7888 |
| 18-Jan-2020 |
Fred Riss <[email protected]> |
[lldb/Makefile.rules] Force the default target to be 'all'
The test harness invokes the test Makefiles with an explicit 'all' target, but it's handy to be able to recursively call Makefile.rules wit
[lldb/Makefile.rules] Force the default target to be 'all'
The test harness invokes the test Makefiles with an explicit 'all' target, but it's handy to be able to recursively call Makefile.rules without speficying a goal.
Some time ago, we rewrote some tests in terms of recursive invocations of Makefile.rules. It turns out this had an unintended side effect. While using $(MAKE) for a recursive invocation passes all the variables set on the command line down, it doesn't pass the make goals. This means that those recursive invocations would invoke the default rule. It turns out the default rule of Makefile.rules is not 'all', but $(EXE). This means that ti would work becuase the executable is always needed, but it also means that the created binaries would not follow some of the other top-level build directives, like MAKE_DSYM.
Forcing 'all' to be the default target seems easier than making sure all the invocations are correct going forward. This patch does this using the .DEFAULT_GOAL directive rather than hoisting the 'all' rule to be the first one of the file. It seems like this explicit approach will be less prone to be broken in the future. Hopefully all the make implementations we use support it.
show more ...
|
|
Revision tags: llvmorg-11-init, llvmorg-9.0.1, llvmorg-9.0.1-rc3, llvmorg-9.0.1-rc2, llvmorg-9.0.1-rc1 |
|
| #
1cbe0038 |
| 14-Nov-2019 |
Adrian Prantl <[email protected]> |
[-gmodules] Let LLDB log a warning if the Clang module hash mismatches.
This feature is mostly there to aid debugging of Clang module issues, since the only useful actual the end-user can to is to r
[-gmodules] Let LLDB log a warning if the Clang module hash mismatches.
This feature is mostly there to aid debugging of Clang module issues, since the only useful actual the end-user can to is to recompile their program.
Differential Revision: https://reviews.llvm.org/D70272
show more ...
|
| #
f9f30f2e |
| 14-Nov-2019 |
Muhammad Omair Javaid <[email protected]> |
[LLDB] Fix whitespace/tabs mismatch in lldbsuite Makefile.rules
This patch fixes whitespace/tabs mismatch in lldb/packages/Python/lldbsuite/test/make/Makefile.rules
Legacy make files always used ta
[LLDB] Fix whitespace/tabs mismatch in lldbsuite Makefile.rules
This patch fixes whitespace/tabs mismatch in lldb/packages/Python/lldbsuite/test/make/Makefile.rules
Legacy make files always used tabs though modern make version can work with white-spaces I have chosen the legacy just to be safe.
Signed-off-by: Muhammad Omair Javaid <[email protected]>
Differential Revision: https://reviews.llvm.org/D70154
show more ...
|
| #
9b958356 |
| 13-Nov-2019 |
Muhammad Omair Javaid <[email protected]> |
[LLDB] Add core definition for armv8l and armv7l
This patch adds core definitions in lldb ArchSpecs for armv8l and armv7l cores.
This was needed because on Linux running on 32-bit Arm v8 we are ret
[LLDB] Add core definition for armv8l and armv7l
This patch adds core definitions in lldb ArchSpecs for armv8l and armv7l cores.
This was needed because on Linux running on 32-bit Arm v8 we are returned armv8l in case we are running 32-bit sysroot on 64bit kernel. In case of 32-bit kernel and 32-bit sysroot running on arm v8 hardware we are returned armv7l. This is quite common when we run 32 bit arm using docker container.
Signed-off-by: Muhammad Omair Javaid <[email protected]>
Differential Revision: https://reviews.llvm.org/D69904
show more ...
|