Commit Graph

11353 Commits

Author SHA1 Message Date
Nico Weber 794d080e2e [gn build] (semi-automatically) port fb34d531af 2022-06-15 07:42:40 -04:00
Nico Weber 650c0b6e39 [gn build] (semi-automatically) port 8bc0bb9564 2022-06-15 07:42:19 -04:00
LLVM GN Syncbot b5e9241eba [gn build] Port 48ebc1af29 2022-06-15 05:24:12 +00:00
LLVM GN Syncbot 1ca2730ca1 [gn build] Port 435897b41d 2022-06-15 00:32:13 +00:00
python3kgae 435897b41d [TableGen][DirectX] Add tableGen backend to generate DXIL operation for DirectX backend.
A new tableGen backend gen-dxil-enum is added to generate enum for DXIL operation and operation class.

A new file "DXILConstants.inc" will be generated when build DirectX target which include the enums.

More tableGen backends will be added to replace manually written table in DirectX backend.
The unused fields in dxil_inst will be used in future PR.

Reviewed By: bogner

Differential Revision: https://reviews.llvm.org/D125435
2022-06-14 17:31:58 -07:00
Peter Collingbourne 0e3c8bdd4b Revert "gn build: Add support for building the standalone ubsan runtime."
As well as followup commits.
Build is still failing on mac. I'll debug it locally.
http://45.33.8.238/macm1/37269/step_4.txt

This reverts commit ee21411107.
This reverts commit 6ef9af6386.
This reverts commit b49bd8e07f.
2022-06-13 14:06:14 -07:00
Peter Collingbourne ee21411107 gn build: Don't define an action for gen_version_script on mac/win.
Nothing should depend on the action on those platforms,
as they don't use version scripts.

Should fix mac build:
http://45.33.8.238/macm1/37264/step_4.txt
2022-06-13 13:54:57 -07:00
Peter Collingbourne 6ef9af6386 gn build: Disable ubsan build on mac/win.
Build failures:
http://45.33.8.238/macm1/37263/step_4.txt
http://45.33.8.238/win/60034/step_4.txt
2022-06-13 13:45:14 -07:00
Peter Collingbourne 7316b0d54c gn build: Add support for building the AArch64 LSE builtins.
Differential Revision: https://reviews.llvm.org/D127560
2022-06-13 13:15:29 -07:00
Peter Collingbourne b49bd8e07f gn build: Add support for building the standalone ubsan runtime.
Differential Revision: https://reviews.llvm.org/D127556
2022-06-13 13:15:28 -07:00
LLVM GN Syncbot be232979bc [gn build] Port ea9ff9fac3 2022-06-13 20:04:00 +00:00
LLVM GN Syncbot c39b76ae2e [gn build] Port 3abaefe64c 2022-06-13 19:41:30 +00:00
LLVM GN Syncbot 5a0ec6ff68 [gn build] Port e183bf8e15 2022-06-13 12:03:48 +00:00
LLVM GN Syncbot d59809de16 [gn build] Port 988682a389 2022-06-13 10:23:45 +00:00
Alex Brachet 98052b6463 Revert "[lit] Passthrough CLANG_MODULE_CACHE_PATH env var"
This reverts commit 6466c9abf3.
2022-06-12 03:01:08 +00:00
Alex Brachet 6466c9abf3 [lit] Passthrough CLANG_MODULE_CACHE_PATH env var
This environment variable can be set to control module
caching. It disables caching by setting the variable
empty. As such, it needs to be handled differently
from other environment variables here which are
assumed to not be empty.
2022-06-11 21:04:02 +00:00
Fangrui Song 62b3d8d10a [TableGen] const char *const x => const char x[] 2022-06-10 19:13:59 -07:00
Ivan Kosarev eccbe6d122 [TableGen][CodeEmitterGen] Do not crash on insufficient positional instruction operands.
Reviewed By: foad

Differential Revision: https://reviews.llvm.org/D126288
2022-06-10 14:38:54 +01:00
LLVM GN Syncbot f90cbfe4fd [gn build] Port ff6d5dee71 2022-06-10 10:37:02 +00:00
LLVM GN Syncbot 9e931b3c57 [gn build] Port 1972d1e86a 2022-06-10 10:37:01 +00:00
Nico Weber ceef00d33d [gn build] (manually) port 6bc8163c79 2022-06-10 06:26:31 -04:00
Nico Weber f8144700eb [gn build] (manually) port 25c8a061c5 2022-06-09 18:07:14 -04:00
LLVM GN Syncbot 51d84737b5 [gn build] Port 976f37050d 2022-06-09 19:04:54 +00:00
Nico Weber 1efe354088 [gn build] (manually) port 4ff5e8184c
Fixes link of many binaries if RISCV is enabled but most other targets aren't.
2022-06-09 12:29:56 -04:00
Nico Weber f4da30ba68 [gn build] (manually) port 0e9a01dcac (libcxx module.modulemap gen) 2022-06-08 19:51:07 -04:00
LLVM GN Syncbot e21c1b4706 [gn build] Port 916e9052ba 2022-06-08 10:19:18 +00:00
LLVM GN Syncbot c6d6535a26 [gn build] Port 638b0fb4d6 2022-06-08 07:20:40 +00:00
Nico Weber 28c078e2c7 [gn build] (manually) port f3966eaf86 (_LIBCPP_ENABLE_DEBUG_MODE) 2022-06-07 18:13:13 -04:00
Reid Kleckner 570e76bb6c [config] Remove vestigial LLVM_VERSION_INFO
This has been superseded by the llvm/Support/VCSRevision.h header. So
far as I can tell, nothing in the CMake build sets LLVM_VERSION_INFO. It
was always undefined, and the ifdefs using it were dead. However, CMake
is very flexible, so it's possible that I missed some ways to set this
variable. One could, for example, probably pass -DLLVM_VERSION_INFO=x on
the command line and get that through to configure_file, or set the
variable in an obscure way (`set(${proj}_VERSION_INFO "x")`). I'm
reasonably confident that isn't happening, but I'd like a second
opinion.

Update the Bazel and gn builds accordingly.

Differential Revision: https://reviews.llvm.org/D126977
2022-06-07 11:36:26 -07:00
Reid Kleckner b1c7889f32 [config] Remove RETSIGTYPE from config.h.cmake, NFC
This doesn't need to be configurable. It was hardcoded to void in all
LLVM build systems.
2022-06-07 11:35:25 -07:00
Jay Foad 4561352f7b [CodeEmitter] Fix encoding wide instructions on big-endian hosts
For instructions wider than 64 bits the InstBits table is initialized in
64-bit chunks from APInt::getRawData, but it was being read with
LoadIntFromMemory which is byte-based.

Fix this by reading the table with the APInt constructor that takes an
ArrayRef to the raw data instead.

This is currently NFC for in-tree targets but fixes AMDGPU failures on
big-endian hosts that were caused by D126483 until it was reverted.

Differential Revision: https://reviews.llvm.org/D127195
2022-06-07 19:06:28 +01:00
LLVM GN Syncbot c39fdc84aa [gn build] Port 47c8ec811f 2022-06-07 14:38:58 +00:00
LLVM GN Syncbot 0b7291796d [gn build] Port b79b2b6772 2022-06-06 20:32:38 +00:00
LLVM GN Syncbot 51914d5a52 [gn build] Port 352c395fb6 2022-06-06 18:25:14 +00:00
LLVM GN Syncbot 0f5fc4c9a6 [gn build] Port 8171586176 2022-06-06 11:33:45 +00:00
Nico Weber 7ed089153c [gn build] port f06abbb393 a bit (create main() functions for GENERATE_DRIVER targets) 2022-06-06 06:28:52 -04:00
Nico Weber 460151e61d [gn build] set LLVM_TOOL_LLVM_DRIVER_BUILD to 0 for now 2022-06-06 05:52:37 -04:00
Peter Collingbourne a739f4d083 gn build: Fix build when not building the native target.
Differential Revision: https://reviews.llvm.org/D127068
2022-06-05 14:12:51 -07:00
Fangrui Song 557efc9a8b [llvm] Remove unneeded cl::ZeroOrMore for cl::opt options. NFC
Some cl::ZeroOrMore were added to avoid the `may only occur zero or one times!`
error. More were added due to cargo cult. Since the error has been removed,
cl::ZeroOrMore is unneeded.

Also remove cl::init(false) while touching the lines.
2022-06-03 21:59:05 -07:00
Sam McCall a43fef05d4 [pseudo] rename pseudo-gen -> clang-pseudo-gen. NFC
This name is not namespaced. Requested in D126717

Differential Revision: https://reviews.llvm.org/D126725
2022-06-03 20:45:48 +02:00
Reid Kleckner 0a832ba5c2 [config] Remove LLVM_DEFAULT_TARGET_TRILE from config.h
It is redundant with llvm-config.h, which is always included by
config.h.

Port D12660 / d178f4fc89 from config.h to
llvm-config.h.

Update the gn build accordingly.

NFCI
2022-06-03 10:15:46 -07:00
Nico Weber 10f7255d32 [gn build] Extract compiled_action.gni from tablegen.gni
After years of tablegen being the only host binary we run as part
of the build, we're now in the process of growing at least two more:
- make_confusable_table (https://reviews.llvm.org/rG180bae08a04d)
- pseudo-gen (not yet fully hooked up in the GN build, but I have
  a local branch that hooks it up)

Factor out the few lines we need for running a host binary as part of the
build.

No behavior change.

Differential Revision: https://reviews.llvm.org/D126963
2022-06-03 10:22:15 -04:00
Nico Weber 371e6f8b7f Revert "[clang-tidy] Confusable identifiers detection"
This reverts commit b94db7ed7e.
See comments on https://reviews.llvm.org/D112916:
- breaks `check-clangd`, and makes clang-tidy crash on simple inputs
- likely does the wrong thing in cross builds

Also revert follow-up "[gn build] (manually) port b94db7ed7e (Confusables.inc)"
This reverts commit 180bae08a0.
2022-06-03 09:30:01 -04:00
Nico Weber 180bae08a0 [gn build] (manually) port b94db7ed7e (Confusables.inc) 2022-06-03 07:49:28 -04:00
LLVM GN Syncbot 1523e8bb19 [gn build] Port a29a1a33ac 2022-06-03 08:36:05 +00:00
LLVM GN Syncbot 883b09b664 [gn build] Port f9b8f422e7 2022-06-02 14:47:37 +00:00
Tobias Hieta fde9ef5214 [NFC][workflow] Fix issue where the workflow would say all PR's already exists 2022-06-02 08:20:21 +02:00
LLVM GN Syncbot 11d8bc98d1 [gn build] Port a15ae4139c 2022-06-02 06:04:25 +00:00
Hendrik Greving a92ed167f2 [ValueTypes] Define MVTs for v128i2/v64i4 as well as i2 and i4.
Adds MVT::v128i2, MVT::v64i4, and implied MVT::i2, MVT::i4.

Keeps MVT::i2, MVT::i4 lowering actions as expand, which should be
removed once targets set this explicitly.

Adjusts 11 lit tests to reflect slightly different behavior during
DAG combine.

Differential Revision: https://reviews.llvm.org/D125247
2022-06-02 00:49:11 +00:00
Nicolai Hähnle d53de9b7ac update_mir_test_checks: Better handling of common prefixes
Support the pattern where a test file uses multiple prefixes per run line:
one prefix that is unique to the run line, and additional prefixes that are
common with other run lines.

Decide on a per-function basis which prefix(es) to emit, based on which run
lines have the same output.

Move the renaming of vregs earlier, so that we can compare the output as it
would actually be printed in check lines.

Differential Revision: https://reviews.llvm.org/D126411
2022-06-01 15:53:32 -05:00