Commit Graph

1813 Commits

Author SHA1 Message Date
LLVM GN Syncbot d51b22d782 [gn build] Port 120fa8293e 2021-04-20 15:33:43 +00:00
Nico Weber 476155e68e [gn build] reformat all gn files
$ git ls-files '*.gn' '*.gni' | xargs llvm/utils/gn/gn.py format

(and manually wrap two comments)
2021-04-20 10:34:08 -04:00
Nico Weber 1a3f88658a [llvm-objdump] Add an llvm-otool tool
This implements an LLVM tool that's flag- and output-compatible
with macOS's `otool` -- except for bugs, but from testing with both
`otool` and `xcrun otool-classic`, llvm-otool matches vanilla
otool's behavior very well already. It's not 100% perfect, but
it's a very solid start.

This uses the same approach as llvm-objcopy: llvm-objdump uses
a different OptTable when it's invoked as llvm-otool. This
is possible thanks to D100433.

Differential Revision: https://reviews.llvm.org/D100583
2021-04-20 08:24:58 -04:00
LLVM GN Syncbot 03b98114ce [gn build] Port e0adf7e06a 2021-04-19 18:35:15 +00:00
Nico Weber 004d807f4d [gn build] (manually) merge 5f87ab336e 2021-04-19 10:34:41 -04:00
Nico Weber f12b7daaf1 [gn build] Add missing dependencies to clang/lib/Basic
These are needed when buildling `clang-format` in a clean build dir.
It's a bit unfortunate that clang's lib/Basic depends on these
random TableGen targets. In the CMake build, this is less visible
because I think all llvm-tblgen's complete before all compiles there
(not sure though).
2021-04-19 10:30:10 -04:00
LLVM GN Syncbot 410d4492e3 [gn build] Port 01ace074fc 2021-04-18 11:35:28 +00:00
Nico Weber bc636c1c2c [gn build] (manually) port ca6751043d better 2021-04-16 18:16:29 -04:00
Nico Weber 48cc5b0d35 [gn build] (manually) port ca6751043d 2021-04-16 18:03:44 -04:00
LLVM GN Syncbot 68744bb479 [gn build] Port 3bc88eb392 2021-04-16 01:16:51 +00:00
LLVM GN Syncbot 915a778098 [gn build] Port 82787eb228 2021-04-15 18:54:08 +00:00
LLVM GN Syncbot 730c0b6ea3 [gn build] Port b7459a10da 2021-04-15 01:52:03 +00:00
Nico Weber 1035123ac5 [llvm-objdump] Switch command-line parsing from llvm::cl to OptTable
This is similar to D83530, but for llvm-objdump.

The motivation is the desire to add an `llvm-otool` symlink to
llvm-objdump that behaves like macOS's `otool`, using the same
technique the at llvm-objcopy uses to behave like `strip` (etc).

This change for the most part preserves behavior. In some cases,
it increases compatibility with GNU objdump a bit. For example,
the long options now require two dashes, and the long options
taking arguments for the most part now require a `=` in front
of the value. Exceptions are flags where tests passed the
value separately, for these the separate form is kept as
an alias to the = form.

The one-letter short form args are now joined or separate
and long longer accept a =, which also matches GNU objdump.

cl::opt<>s in libraries now have to be explicitly plumbed
through. This patch does that for --x86-asm-syntax=, but
there's hope that we can remove that again.

Differential Revision: https://reviews.llvm.org/D100433
2021-04-14 20:12:24 -04:00
LLVM GN Syncbot c0fa3fe4aa [gn build] Port f992cfba71 2021-04-14 18:37:22 +00:00
LLVM GN Syncbot 89dc4e3312 [gn build] Port e98060fa72 2021-04-14 18:37:21 +00:00
Nico Weber e200690381 [gn build] try to make sync_source_lists_from_cmake.py py3-compatible 2021-04-14 14:36:29 -04:00
LLVM GN Syncbot 34367dd253 [gn build] Port bbab9f986c 2021-04-14 13:59:02 +00:00
LLVM GN Syncbot 096857426e [gn build] Port 530456caf9 2021-04-14 07:28:18 +00:00
LLVM GN Syncbot 9052920676 [gn build] Port cbc9c4ea90 2021-04-14 06:32:13 +00:00
LLVM GN Syncbot 961967453a [gn build] Port 8ca366935b 2021-04-13 18:49:06 +00:00
LLVM GN Syncbot d13c6ce5db [gn build] Port 46b8ea2fff 2021-04-13 18:49:05 +00:00
LLVM GN Syncbot 0f24c0118d [gn build] Port bb6d96ced8 2021-04-13 16:05:40 +00:00
LLVM GN Syncbot 7ec5907a6c [gn build] Port 8914902b01 2021-04-13 16:05:39 +00:00
LLVM GN Syncbot 0f42675c86 [gn build] Port be54341cd2 2021-04-13 13:07:25 +00:00
LLVM GN Syncbot 6674a7a1fd [gn build] Port 9b0a3388eb 2021-04-13 13:07:25 +00:00
LLVM GN Syncbot b0d988d499 [gn build] Port 916fecb499 2021-04-13 13:07:24 +00:00
LLVM GN Syncbot 5c148258a1 [gn build] Port 7f1963dc8e 2021-04-13 13:07:23 +00:00
LLVM GN Syncbot b7e826136b [gn build] Port 4f9b2469f3 2021-04-13 13:07:23 +00:00
LLVM GN Syncbot 37f54edbc2 [gn build] Port 21d6636d83 2021-04-13 13:07:22 +00:00
Nico Weber 5482228e5c [gn build] fix bug in fb0b19c3de
Since __config is no longer in the concatenated generated __config_site,
it now needs to be copied.

(Also fix a comment typo while here.)
2021-04-13 09:06:29 -04:00
LLVM GN Syncbot d926498d9f [gn build] Port e96df3e531 2021-04-13 01:35:58 +00:00
LLVM GN Syncbot 9f64e6ce76 [gn build] Port 6a1ac88fc1 2021-04-12 15:51:13 +00:00
LLVM GN Syncbot 07274e3238 [gn build] Port 26beecfe47 2021-04-12 15:51:12 +00:00
LLVM GN Syncbot db51d5968c [gn build] Port 0b439e4cc9 2021-04-12 15:51:11 +00:00
Arthur Eubanks 9c8b28a69b [llvm-reduce] Remove unwanted module inline asm
We can clear line by line, but that's likely not very important.

Reviewed By: hans

Differential Revision: https://reviews.llvm.org/D99921
2021-04-06 09:35:37 -07:00
Nico Weber 6103f3f39c [gn build] (manually) port 0116d04d04 2021-04-05 14:12:58 -04:00
LLVM GN Syncbot 5abc725012 [gn build] Port 9b3df78b4c 2021-04-05 17:21:14 +00:00
Nico Weber 03c41191af [gn build] hook up tsan on macOS too
Mostly just works already.
2021-04-02 19:21:38 -04:00
Nico Weber 8156d899ab [gn build] (manually) port 4c58f333f1 2021-04-02 18:21:37 -04:00
Nico Weber 55978f914e [gn build] add build file for tsan runtime
Linux-only for now. Some mac bits stubbed out, but not tested.

Good enough for the tiny_race.c example at
https://clang.llvm.org/docs/ThreadSanitizer.html :

   $ out/gn/bin/clang -fsanitize=address -g -O1 tiny_race.c
   $ while true; do ./a.out || echo $? ; done

While here, also make `-fsanitize=address` work for .c files.

Differential Revision: https://reviews.llvm.org/D99795
2021-04-02 12:59:14 -04:00
LLVM GN Syncbot b0c32199a6 [gn build] Port 0f7bbbc481 2021-04-02 10:22:54 +00:00
Samuel 56fa1b4ff2 [llvm-reduce] Add header guards and fix clang-tidy warnings
Add header guards and fix other clang-tidy warnings in .h files.
Also align misaligned header docs

Reviewed By: aeubanks

Differential Revision: https://reviews.llvm.org/D99634
2021-04-01 20:38:49 -07:00
LLVM GN Syncbot 4be379b18b [gn build] Port fdc4f19e2f 2021-04-01 17:18:32 +00:00
Nico Weber fb0b19c3de Reland "[gn build] port 48e4b0f (__config_site)"
This reverts commit 13aff21f0d,
since the CMake part relanded in c06a8f9caa.

The GN part is a bit simpler than last time due to the
prior simplifications in acea470c16.
2021-03-30 20:32:36 -04:00
LLVM GN Syncbot 69473d68b5 [gn build] Port c51e91e046 2021-03-30 12:15:19 +00:00
Nico Weber 8315890bdc [gn build] (semi-manually) port 51fa9e0fd9 2021-03-30 06:59:37 -04:00
LLVM GN Syncbot b75018e305 [gn build] Port 5178ffc7cf 2021-03-29 22:12:00 +00:00
Samuel 24339056c8 [llvm-reduce] Remove dso_local when possible
Add a new delta pass to llvm-reduce that removes dso_local when possible

Reviewed By: aeubanks

Differential Revision: https://reviews.llvm.org/D98673
2021-03-29 12:00:10 -07:00
LLVM GN Syncbot 1e9746d229 [gn build] Port 7b6f760fcd 2021-03-28 18:35:33 +00:00
Zakk Chen 821547cabb [RISCV][Clang] Update new overloading rules for RVV intrinsics.
RVV intrinsics has new overloading rule, please see
82aac7dad4

Changed:
1. Rename `generic` to `overloaded` because the new rule is not using C11 generic.
2. Change HasGeneric to HasNoMaskedOverloaded because all masked operations
   support overloading api.
3. Add more overloaded tests due to overloading rule changed.

Differential Revision: https://reviews.llvm.org/D99189
2021-03-28 09:04:35 -07:00