Commit Graph

8536 Commits

Author SHA1 Message Date
LLVM GN Syncbot 1d5560c363 [gn build] Port 733b319948 2020-03-19 09:52:27 +00:00
Simon Moll 733b319948 [VP,Integer,#1] Vector-predicated integer intrinsics
Summary:
This patch adds IR intrinsics for vector-predicated integer arithmetic.

It is subpatch #1 of the [integer
slice](https://reviews.llvm.org/D57504#1732277) of
[LLVM-VP](https://reviews.llvm.org/D57504).  LLVM-VP is a larger effort to bring
native vector predication to LLVM.

Reviewed By: andrew.w.kaylor

Differential Revision: https://reviews.llvm.org/D69891
2020-03-19 10:51:47 +01:00
Louis Dionne f951b0f82d [lit] Add builtin support for flaky tests in lit
This commit adds a new keyword in lit called ALLOW_RETRIES. This keyword
takes a single integer as an argument, and it allows the test to fail that
number of times before it first succeeds.

This work attempts to make the existing test_retry_attempts more flexible
by allowing by-test customization, as well as eliminate libc++'s FLAKY_TEST
custom logic.

Differential Revision: https://reviews.llvm.org/D76288
2020-03-18 18:04:01 -04:00
lewis-revill e9f22fd429 [TableGen][GlobalISel] Account for HwMode in RegisterBank register sizes
This patch generates TableGen descriptions for the specified register
banks which contain a list of register sizes corresponding to the
available HwModes. The appropriate size is used during codegen according
to the current HwMode. As this HwMode was not available on generation,
it is set upon construction of the RegisterBankInfo class. Targets
simply need to provide the HwMode argument to the
<target>GenRegisterBankInfo constructor.

The RISC-V RegisterBankInfo constructor has been updated accordingly
(plus an unused argument removed).

Differential Revision: https://reviews.llvm.org/D76007
2020-03-18 19:52:23 +00:00
lewis-revill e225e770f7 [TableGen][GlobalISel] Rework RegisterBankEmitter for easier const correctness.
This patch rewrites the RegisterBankEmitter class to derive
RegisterClassHierarchy from CodeGenTarget::getRegBank() rather than
constructing our own copy. All are now accessed through a const
reference.

Differential Revision: https://reviews.llvm.org/D76006
2020-03-18 19:52:23 +00:00
Nico Weber 642a424bc4 [gn build] remove a workaround that is no longer needed 2020-03-18 12:37:15 -04:00
Nico Weber f57290ec57 [gn build] add rebase changes that should have been in 9f981e9adf 2020-03-18 11:38:37 -04:00
Nico Weber 9f981e9adf Reland "[gn build] (manually) port 8b409eaba"
This reverts commit 4060016fce
and re-merges c5b81466c.
2020-03-18 11:31:18 -04:00
Louis Dionne 1458bb92df [lit] NFC: Fix typo in log statement 2020-03-17 16:49:56 -04:00
LLVM GN Syncbot 5555c04ba9 [gn build] Port 080dd10f7d 2020-03-17 19:45:39 +00:00
LLVM GN Syncbot ad357c1523 [gn build] Port ac1d23ed7d 2020-03-17 13:01:49 +00:00
LLVM GN Syncbot 1b5970edda [gn build] Port 876bb86e26 2020-03-17 08:24:39 +00:00
LLVM GN Syncbot 78ce190803 [gn build] Port df082ac45a 2020-03-16 23:09:12 +00:00
Nico Weber 9e48422035 Revert "[llvm-objdump] Display locations of variables alongside disassembly"
Makes tests fail on Windows, see https://reviews.llvm.org/D70720#1924542

This reverts commit 3a5ddedadb, and
follow-ups:
f4cb9c919e
042eb0482a
c0cf5f5da9
18649f4813
f62b898c1f
2020-03-16 14:04:25 -04:00
Nico Weber 4060016fce Revert "[gn build] (manually) port 8b409eaba"
This reverts commit 85462aefb5
and follow-up 8d6582aa6b.

8b409eaba was reverted.
2020-03-16 11:33:19 -04:00
LLVM GN Syncbot 185b41393d [gn build] Port f62b898c1f 2020-03-16 13:54:40 +00:00
Nico Weber 8d6582aa6b [gn build] (manually) port 8b409eaba more 2020-03-16 09:54:22 -04:00
Nico Weber 85462aefb5 [gn build] (manually) port 8b409eaba 2020-03-16 09:47:06 -04:00
Nico Weber 7f5b8115ac [gn build] don't repeat arm header targets twice. no behavior change. 2020-03-15 18:20:26 -04:00
LLVM GN Syncbot de0011abf5 [gn build] Port 5087ace651 2020-03-15 20:28:52 +00:00
Nico Weber 47df2220a2 [gn build] (manually) port 5087ace651 more 2020-03-15 16:28:19 -04:00
Nico Weber d09a46cdbc [gn build] (manually) port 5087ace651 2020-03-15 16:06:37 -04:00
LLVM GN Syncbot ee04339b7f [gn build] Port 633ea07200 2020-03-14 21:50:50 +00:00
Simon Cook a26bd4ec16 [TableGen] Support combining AssemblerPredicates with ORs
For context, the proposed RISC-V bit manipulation extension has a subset
of instructions which require one of two SubtargetFeatures to be
enabled, 'zbb' or 'zbp', and there is no defined feature which both of
these can imply to use as a constraint either (see comments in D65649).

AssemblerPredicates allow multiple SubtargetFeatures to be declared in
the "AssemblerCondString" field, separated by commas, and this means
that the two features must both be enabled. There is no equivalent to
say that _either_ feature X or feature Y must be enabled, short of
creating a dummy SubtargetFeature for this purpose and having features X
and Y imply the new feature.

To solve the case where X or Y is needed without adding a new feature,
and to better match a typical TableGen style, this replaces the existing
"AssemblerCondString" with a dag "AssemblerCondDag" which represents the
same information. Two operators are defined for use with
AssemblerCondDag, "all_of", which matches the current behaviour, and
"any_of", which adds the new proposed ORing features functionality.

This was originally proposed in the RFC at
http://lists.llvm.org/pipermail/llvm-dev/2020-February/139138.html

Changes to all current backends are mechanical to support the replaced
functionality, and are NFCI.

At this stage, it is illegal to combine features with ands and ors in a
single AssemblerCondDag. I suspect this case is sufficiently rare that
adding more complex changes to support it are unnecessary.

Differential Revision: https://reviews.llvm.org/D74338
2020-03-13 17:13:51 +00:00
Matt Arsenault 6bbc1737e0 TableGen: Fix typo 2020-03-13 10:45:28 -04:00
LLVM GN Syncbot 73d8a324ec [gn build] Port 512767eb3f 2020-03-13 14:09:37 +00:00
Nico Weber 5c68043b9f [gn build] (manually) port ce79c4246 2020-03-13 06:08:28 -04:00
Nico Weber 03f5f6bebd [gn build] (manually) port eb41cc6198 2020-03-12 19:29:09 -04:00
LLVM GN Syncbot b93dd67797 [gn build] Port fa8080376e 2020-03-12 16:33:39 +00:00
LLVM GN Syncbot e79397f5e2 [gn build] Port 2c9cf9f4dd 2020-03-12 16:01:56 +00:00
LLVM GN Syncbot f31f22ef0f [gn build] Port d5edcb9064 2020-03-12 11:58:14 +00:00
LLVM GN Syncbot 9dd561d8b1 [gn build] Port 518292dbdf 2020-03-12 05:17:52 +00:00
Christian Sigg f3ad6eb5d3 Change to individual pretty printer classes, remove generic `make_printer`.
Summary: Follow-up from D72589.

Reviewers: dblaikie

Reviewed By: dblaikie

Subscribers: merge_guards_bot, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D73609
2020-03-11 15:04:03 +01:00
LLVM GN Syncbot 8d9886f893 [gn build] Port 326bc1da45 2020-03-11 10:47:56 +00:00
LLVM GN Syncbot 7ecc743c5d [gn build] Port ebdb98f254 2020-03-10 20:34:28 +00:00
LLVM GN Syncbot a1224432ca [gn build] Port a4cde9ad7b 2020-03-10 17:04:42 +00:00
LLVM GN Syncbot 14219aa442 [gn build] Port 714466bf36 2020-03-10 14:33:04 +00:00
Nico Weber 877073bc1c [gn build] (manually) merge 47edf5bafb 2020-03-10 10:22:39 -04:00
Reid Kleckner d75be4c06a [gn] Use ghash if using clang & LLD together to make PDBs
I noticed my links were a bit slower on Windows than usual.

Reviewed By: thakis

Differential Revision: https://reviews.llvm.org/D75774
2020-03-09 15:23:54 -07:00
LLVM GN Syncbot 78ad24bff6 [gn build] Port 1e0669bfe0 2020-03-09 21:59:49 +00:00
Arthur Eubanks 3262319806 Fix typo in gn files
SKD -> SDK
2020-03-09 13:33:13 -07:00
LLVM GN Syncbot 4a1b6b0057 [gn build] Port 3486cc014b 2020-03-09 17:56:57 +00:00
LLVM GN Syncbot 3b64bf7b01 [gn build] Port 882f589e20 2020-03-09 16:03:39 +00:00
LLVM GN Syncbot 9800543aed [gn build] Port 57c964aaa7 2020-03-08 11:50:36 +00:00
Nico Weber 8fef67a2c5 [gn build] copy compiler-rt headers to clang include dir on all platforms 2020-03-06 21:55:56 -05:00
Yuanfang Chen 1f7badf979 Add some more vscode files
On top of existing TableGen file syntax highlighting, added
- IR syntax highlighting
- LIT test output patterMatcher
- etc.
2020-03-05 19:31:28 -08:00
Fangrui Song 3e851f4a68 [PowerPC] Delete PPCMachObjectWriter and powerpc{,64}-apple-darwin
Reviewed By: #powerpc, sfertile

Differential Revision: https://reviews.llvm.org/D75494
2020-03-05 11:05:26 -08:00
LLVM GN Syncbot 6f1222560b [gn build] Port cada5b881b 2020-03-05 10:56:10 +00:00
Fangrui Song 1a5da3f0b2 [gn build] Fix llvm-gsymutil after D75291 2020-03-03 16:37:52 -08:00
Greg Clayton 90e40a0bda Rename "llvm-gsym" to "llvm-gsymutil" and fix dependencies.
Summary: This patch renames the "llvm-gsym" tool directory to "llvm-gsymutil". Dependencies are also reduced to the bare minimum for llvm-gsymutil.

Reviewers: aprantl, thakis

Subscribers: mgorny, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D75291
2020-03-03 14:13:29 -08:00