Commit Graph

2378 Commits

Author SHA1 Message Date
LLVM GN Syncbot ece75e2035 [gn build] Port cb8a0b0797 2021-12-22 17:34:39 +00:00
LLVM GN Syncbot 19030717e3 [gn build] Port 7056250f51 2021-12-22 01:35:25 +00:00
Nico Weber 0e9393f522 [gn build] (manually) port f68e89044a 2021-12-21 18:59:37 -05:00
LLVM GN Syncbot 3ce4b6a599 [gn build] Port f78d49e068 2021-12-21 18:57:55 +00:00
Nico Weber f2f6d09185 [gn build] (semiautomatically) port 9b4f179bf8 2021-12-21 08:10:52 -05:00
Fangrui Song 98e0b2cf70 [Support] Revert posix_fallocate in resize_file
This reverts 3816c53f04 and removes follow-up
fixups.

The original intention was to show error earlier (posix_fallocate time) than
later for ld.lld but it appears to cause some problems which make it not free.

* FreeBSD ZFS: EINVAL, not too bad.
* FreeBSD UFS: according to khng "devastatingly slow on freebsd because UFS on freebsd does not have preallocation support like illumos. It zero-fills."
* NetBSD: maybe EOPNOTSUPP
* Linux tmpfs: unless tmpfs is set up to use huge pages (requires CONFIG_TRANSPARENT_HUGE_PAGECACHE=y), I can consistently demonstrate ~300ms delay for a 1.4GiB output.
* Linux ext4: I don't measure any benefit, either backed by a hard disk or by a file in tmpfs.
* The current code organization of `defined(HAVE_POSIX_FALLOCATE)` costs us a macro dispatch for AIX.

I think we should just remove it. I think if posix_fallocate ever finds demonstrable benefit,
it is likely Linux specific and will not need HAVE_POSIX_FALLOCATE, and possibly opt-in by some specific programs.

In a filesystem with CoW and compression, the ENOSPC benefit may be lost as well.

Reviewed By: khng300

Differential Revision: https://reviews.llvm.org/D115957
2021-12-20 11:16:03 -08:00
LLVM GN Syncbot ed086a8dbc [gn build] Port 37e6bd8bc8 2021-12-20 17:19:51 +00:00
LLVM GN Syncbot 3b2fd945b7 [gn build] Port 754ea6fd4d 2021-12-20 08:24:56 +00:00
LLVM GN Syncbot 7de813e14c [gn build] Port 65d7fd0239 2021-12-17 18:52:31 +00:00
LLVM GN Syncbot 2fefb66e53 [gn build] Port cc324af0d6 2021-12-17 18:41:48 +00:00
Nico Weber 2438540a4a [gn build] (manually) port fb9a075c81 2021-12-17 10:02:26 -05:00
Nico Weber fc01f85bf3 [gn build] (semiautomatically) port 3f5f687e2e 2021-12-17 07:26:34 -05:00
LLVM GN Syncbot cccc7aed4d [gn build] Port 09103807e7 2021-12-17 01:57:11 +00:00
LLVM GN Syncbot d98f00aa19 [gn build] Port bdc68ee70f 2021-12-17 00:28:54 +00:00
Nico Weber 85f799730f [gn build] Port 95946d2f85 2021-12-16 18:38:32 -05:00
Nico Weber 0a1bcb120f [gn build] port 78523516bc (cut MC->ProfileData dep) 2021-12-16 18:38:32 -05:00
LLVM GN Syncbot d3208cf1cd [gn build] Port 8a85be807b 2021-12-16 21:40:46 +00:00
LLVM GN Syncbot 9043c3d65b [gn build] Port da816ca0cb 2021-12-16 19:27:34 +00:00
Nico Weber 35ae37a161 [gn build] port ec37e0bbaf 2021-12-16 14:27:18 -05:00
LLVM GN Syncbot c42decb033 [gn build] Port db5aceb979 2021-12-16 07:22:17 +00:00
LLVM GN Syncbot fd65d39793 [gn build] Port 2b48761575 2021-12-15 23:47:26 +00:00
Nico Weber 65146382b3 [gn build] Remove unhelpful default for goma_dir
The default hasn't worked in over 9 months now.

Getting a friendly error message if this isn't set is more useful than getting
a bad default value.

Differential Revision: https://reviews.llvm.org/D115833
2021-12-15 18:39:53 -05:00
LLVM GN Syncbot 5949a3d210 [gn build] Port 8179e1fd51 2021-12-15 19:34:58 +00:00
Nico Weber d4f3af2f6c [gn build] (manually) port b45ad7363c (LLVM_WITH_Z3) 2021-12-14 23:11:42 -05:00
LLVM GN Syncbot 794b4df504 [gn build] Port 4299d8d0ce 2021-12-15 01:15:06 +00:00
LLVM GN Syncbot d4127c0d76 [gn build] Port 3f630cff65 2021-12-15 00:46:46 +00:00
Fangrui Song 1add613642 [gn build] (manually) port 9c7fbc3f9b (LLDB_ENABLE_FBSDVMCORE) 2021-12-14 16:36:44 -08:00
LLVM GN Syncbot 803ec71b84 [gn build] Port 4e94cba5b4 2021-12-14 19:12:20 +00:00
Nico Weber 0e5e963b2d [gn build] Reformat all build files
Ran:

    git ls-files '*.gn' '*.gni' | xargs llvm/utils/gn/gn.py format
2021-12-14 14:07:19 -05:00
Nico Weber 5ac14cd167 [gn build] (manually) port f0ca8d2461 (debuginfod-find) 2021-12-14 14:06:12 -05:00
Nico Weber 0319d4a12e [gn build] (manually) port 1042de9058 to lit.site.cfg.in too 2021-12-14 13:49:04 -05:00
Fangrui Song aeea20eebe [gn] Use CLANG_DEFAULT_PIE_ON_LINUX= 2021-12-14 10:20:51 -08:00
Fangrui Song 1042de9058 [Driver] Add CLANG_DEFAULT_PIE_ON_LINUX to emulate GCC --enable-default-pie
In 2015-05, GCC added the configure option `--enable-default-pie`. When enabled,

* in the absence of -fno-pic/-fpie/-fpic (and their upper-case variants), -fPIE is the default.
* in the absence of -no-pie/-pie/-shared/-static/-static-pie, -pie is the default.

This has been adopted by all(?) major distros.

I think default PIE is the majority in the Linux world, but
--disable-default-pie users is not that uncommon because GCC upstream hasn't
switched the default yet (https://gcc.gnu.org/PR103398).

This patch add CLANG_DEFAULT_PIE_ON_LINUX which allows distros to use default PIE.
The option is justified as its adoption can be very high among Linux distros
to make Clang default match GCC, and is likely a future-new-default, at which
point we will remove CLANG_DEFAULT_PIE_ON_LINUX.
The lit feature `default-pie-on-linux` can be handy to exclude default PIE sensitive tests.

Reviewed By: foutrelis, sylvestre.ledru, thesamesam

Differential Revision: https://reviews.llvm.org/D113372
2021-12-14 10:09:00 -08:00
Kirill Stoimenov 3bc08d8b8d [gn build] Reland 5082c330138: (semimanually) port ebc31d2. 2021-12-14 17:22:25 +00:00
LLVM GN Syncbot bc56ea7c3e [gn build] Port fff876c20e 2021-12-13 23:30:23 +00:00
Noah Shutty 34491ca729 [Symbolizer][Debuginfo] Add debuginfod client to llvm-symbolizer.
Adds a fallback to use the debuginfod client library (386655) in `findDebugBinary`.
Fixed a cast of Erorr::success() to Expected<> in debuginfod library.
Added Debuginfod to Symbolize deps in gn.
Updates compiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh to include Debuginfod library to fix sanitizer-x86_64-linux breakage.

Reviewed By: jhenderson, vitalybuka

Differential Revision: https://reviews.llvm.org/D113717
2021-12-13 23:00:32 +00:00
Noah Shutty 6c3bc57f25 [gn build] Remove unnecessary lld dependency on DebugInfo/Symbolize.
The gn script for lld's COFF lib adds an unnecessary dependency on llvm/lib/DebugInfo/Symbolize. There is no such dependency in lld/COFF/CMakeLists.txt. This can be safely removed.

Reviewed By: phosek, thakis

Differential Revision: https://reviews.llvm.org/D115554
2021-12-13 20:07:44 +00:00
LLVM GN Syncbot 9c1fd1b533 [gn build] Port 78b0f3701d 2021-12-13 15:53:45 +00:00
Matt Devereau 41def32040 [AArch64][SVE][NEON] Add NEON-SVE-Bridge intrinsics
Adds svset_neonq, svget_neonq, svdup_neonq AArch64 intrinsics.

These are described in the ACLE specification:
https://github.com/ARM-software/acle/pull/72

https://reviews.llvm.org/D114713
2021-12-13 11:31:57 +00:00
Nico Weber 318942de22 [gn build] Port abb5dd6e99
(This reverts commit 7d9f11be81,
to reland the Ryu code: ae53d02f55 relanded in abb5dd6e99).
2021-12-12 12:39:32 -05:00
Yitzhak Mandelbaum 93fbaa46c8 Revert "Revert "[clang][dataflow] Add framework for testing analyses.""
This reverts commit 78ff12da11 and fixes the initial cause of the revert.
2021-12-11 23:16:59 +00:00
Nico Weber 3ca6928344 Revert "[gn build] (manually) port 492de35df44"
This reverts commit 9a3df8fbc2.
492de35df4 was reverted in 30fc88bf1d.
2021-12-10 21:00:02 -05:00
Nico Weber 9a3df8fbc2 [gn build] (manually) port 492de35df4 2021-12-10 16:33:55 -05:00
LLVM GN Syncbot bebfbfd4a8 [gn build] Port 04f2712ef4 2021-12-10 19:52:50 +00:00
LLVM GN Syncbot 2d1761bffc [gn build] Port d25a65030b 2021-12-10 18:58:26 +00:00
Nico Weber 78ff12da11 Revert "[clang][dataflow] Add framework for testing analyses."
Doesn't build on Windows.

This reverts commit 5a40df6381
and commit db494bd4e8.
2021-12-10 11:06:40 -05:00
Nico Weber 5082c33013 [gn build] (semimanually) port ebc31d2e72 2021-12-10 10:39:28 -05:00
Nico Weber db494bd4e8 [gn build] Port 5a40df6381 2021-12-10 10:37:31 -05:00
Nico Weber 30f221bba0 Revert "[Symbolizer][Debuginfo] Add debuginfod client to llvm-symbolizer."
This reverts commit 5bba0fe12b.
Makes lld depend on libcurl, see comments on https://reviews.llvm.org/D113717
2021-12-10 10:33:05 -05:00
Nico Weber 2586c23bae [gn build] Prevent deps on HTTP requests in clang and lld at GN time
To make sure no regressions creep in. See also discussion on
https://reviews.llvm.org/D113717

We don't want this dep in most targets, but protecting clang and lld is
a good start.
2021-12-10 08:56:24 -05:00