| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 360049
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
defining them
When builing the hermetic static library, the compiler switch
-fvisibility-global-new-delete-hidden is necessary to get the new and
delete operator definitions made correctly. However, when those
definitions are not included in the library, then this switch does harm.
With lld (though not all linkers) setting STV_HIDDEN on SHN_UNDEF
symbols makes it an error to leave them undefined or defined via dynamic
linking that should generate PLTs for -shared linking (lld makes this a
hard error even without -z defs). Though leaving the symbols undefined
would usually work in practice if the linker were to allow it (and the
user didn't pass -z defs), this actually indicates a real problem that
could bite some target configurations more subtly at runtime. For
example, x86-32 ELF -fpic code generation uses hidden visibility on
declarations in the caller's scope as a signal that the call will never
be resolved to a PLT entry and so doesn't have to meet the special ABI
requirements for PLT calls (setting %ebx). Since these functions might
actually be resolved to PLT entries at link time (we don't know what the
user is linking in when the hermetic library doesn't provide all the
symbols itself), it's not safe for the compiler to treat their
declarations at call sites as having hidden visibility.
Differential Revision: https://reviews.llvm.org/D61572
llvm-svn: 360004
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When builing the hermetic static library, the compiler switch
-fvisibility-global-new-delete-hidden is necessary to get the new and
delete operator definitions made correctly. However, when those
definitions are not included in the library, then this switch does harm.
With lld (though not all linkers) setting STV_HIDDEN on SHN_UNDEF
symbols makes it an error to leave them undefined or defined via dynamic
linking that should generate PLTs for -shared linking (lld makes this a
hard error even without -z defs). Though leaving the symbols undefined
would usually work in practice if the linker were to allow it (and the
user didn't pass -z defs), this actually indicates a real problem that
could bite some target configurations more subtly at runtime. For
example, x86-32 ELF -fpic code generation uses hidden visibility on
declarations in the caller's scope as a signal that the call will never
be resolved to a PLT entry and so doesn't have to meet the special ABI
requirements for PLT calls (setting %ebx). Since these functions might
actually be resolved to PLT entries at link time (we don't know what the
user is linking in when the hermetic library doesn't provide all the
symbols itself), it's not safe for the compiler to treat their
declarations at call sites as having hidden visibility.
Differential Revision: https://reviews.llvm.org/D61571
llvm-svn: 360003
|
|
|
|
| |
llvm-svn: 359888
|
|
|
|
|
|
|
|
| |
This was omitted in r359805.
Differential Revision: https://reviews.llvm.org/D61462
llvm-svn: 359828
|
|
|
|
|
|
| |
This reflects changes made in r359763.
llvm-svn: 359825
|
|
|
|
|
|
| |
This was omitted in r359806 but is already referenced in the GN build.
llvm-svn: 359815
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change introduces support for building libc++. The library
build should be complete, but not all CMake options have been
replicated in GN. We also don't support tests yet.
We only support two stage build at the moment.
Differential Revision: https://reviews.llvm.org/D61143
llvm-svn: 359806
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change introduces support for building libcxxabi. The library
build should be complete, but not all CMake options have been
replicated in GN. We also don't support tests yet.
We only support two stage build at the moment.
Differential Revision: https://reviews.llvm.org/D60372
llvm-svn: 359805
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change introduces support for building libuwind. The library
build should be complete, but not all CMake options have been
replicated in GN. We also don't support tests yet.
We only support two stage build at the moment.
Differential Revision: https://reviews.llvm.org/D60370
llvm-svn: 359804
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Tooling tests do have a lit.local.cfg with
if not config.root.clang_staticanalyzer:
config.unsupported = True
so what's wrong isn't the missing dep, but that lit prints a warning for
the binary missing. This will need a different kind of fix.
llvm-svn: 359739
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
check-clang (the target that runs all clang tests) used to
only depend on clang-check (a binary like clang-tidy,
clang-refactor, etc) if the static analyzer is enabled.
However, several lit tests call clang-check unconditionally,
so always depend on it.
Fixes a "could not find clang-check" lit warning in clean builds with
the static analyzer disabled.
Also sort the deps in the CMake file and put just one dep on each line.
Differential Revision: https://reviews.llvm.org/D61324
llvm-svn: 359717
|
|
|
|
| |
llvm-svn: 359637
|
|
|
|
| |
llvm-svn: 359635
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
r359527 already merged some of that to the GN build,
but it was missing some bits as well.
The check-clangd target works (at least for now) differently than all
the other check-foo targets, see https://reviews.llvm.org/D61187
For that reason, there's no gni file and the generated lit configs are
not (yet?) added to llvm-lit/BUILD.gn.
llvm-svn: 359570
|
|
|
|
| |
llvm-svn: 359562
|
|
|
|
| |
llvm-svn: 359527
|
|
|
|
| |
llvm-svn: 359514
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Multiple targets in the same output directory can use the same
target_output_name. The typical example of that is having a shared
and a static library of the same, e.g. libc++.so and libc++.a.
When that's the case, the object files produced for each target
are going to conflict. Using the label_name avoids this conflict
since labels are guaranteed to be unique within a single BUILD.gn
file which corresponds to a single output directory.
Differential Revision: https://reviews.llvm.org/D60329
llvm-svn: 359494
|
|
|
|
| |
llvm-svn: 359429
|
|
|
|
| |
llvm-svn: 359196
|
|
|
|
|
|
|
|
| |
If this is set, %INCLUDE% must contain ".../DIA SDK/include"
and %LIB% must contain ".../DIA SKD/lib/amd64" (assuming you're doing a
64-bit build).
llvm-svn: 359195
|
|
|
|
| |
llvm-svn: 359189
|
|
|
|
| |
llvm-svn: 359188
|
|
|
|
| |
llvm-svn: 359187
|
|
|
|
| |
llvm-svn: 359058
|
|
|
|
| |
llvm-svn: 359056
|
|
|
|
| |
llvm-svn: 358993
|
|
|
|
| |
llvm-svn: 358991
|
|
|
|
| |
llvm-svn: 358912
|
|
|
|
|
|
| |
format`
llvm-svn: 358862
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since the symlinks list for llvm-symbolizer is now never empty,
the :symlinks target no longer needs an explicit dep on :llvm-symbolizer
-- there will be at least one dep on a symlink, and each symlink depends
on :llvm-symbolizer already.
Since llvm-symbolizer:symlinks now produces symlinks that check-llvm
uses, make llvm/test depend on the symlink target.
llvm-svn: 358861
|
|
|
|
| |
llvm-svn: 358860
|
|
|
|
| |
llvm-svn: 358851
|
|
|
|
|
|
|
|
|
|
|
| |
ClangdLSPServer and clangd unittests now include Features.inc so we
need to append the target_gen_dir that contains it to their
include_dirs. To do so, we use a public config that's applied to
any target that depends on the features one.
Differential Revision: https://reviews.llvm.org/D60919
llvm-svn: 358837
|
|
|
|
| |
llvm-svn: 358790
|
|
|
|
|
|
|
|
| |
Some file paths use dots to pick up sources from parent directories.
Differential Revision: https://reviews.llvm.org/D60734
llvm-svn: 358774
|
|
|
|
| |
llvm-svn: 358755
|
|
|
|
| |
llvm-svn: 358754
|
|
|
|
| |
llvm-svn: 358670
|
|
|
|
| |
llvm-svn: 358669
|
|
|
|
| |
llvm-svn: 358668
|
|
|
|
| |
llvm-svn: 358578
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Previously, write_cmake_config.py would raise an error while printing
the error, because `leftovers` in "'\n'.join(leftovers)" is a tuple.
Subscribers: mgorny, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D60766
llvm-svn: 358557
|
|
|
|
| |
llvm-svn: 358486
|
|
|
|
| |
llvm-svn: 358397
|
|
|
|
| |
llvm-svn: 358366
|
|
|
|
| |
llvm-svn: 358365
|
|
|
|
| |
llvm-svn: 358364
|
|
|
|
| |
llvm-svn: 358004
|