1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-01-31 20:51:52 +01:00

9052 Commits

Author SHA1 Message Date
Marcel Hlopko
9b7583cc96 Make lit TestRunner.py work in Python 3
Summary: In Python3 SubstituteCaptures are no longer converted to String implicitly behind the scenes. Converting explicitly makes the TestRunner to work in Python3.

Reviewers: gribozavr2, compnerd

Reviewed By: gribozavr2

Subscribers: tbkka, delcypher, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D81361
2020-07-22 11:44:00 +02:00
Brian Cain
dbfffd9884 [test-release] fallback to py3's venv module
If virtualenv is not available, we can look for py3's venv instead. We only
use this particular env for installing and running the test suite.
2020-07-21 19:51:15 -05:00
Nico Weber
3900b1c685 Build: Move TF source file inclusion from build system to source files
Outside of compiler-rt (where it's arguably an anti-pattern too),
LLVM tries to keep its build files as simple as possible. See e.g.
llvm/docs/SupportLibrary.rst, "Code Organization".

Differential Revision: https://reviews.llvm.org/D84243
2020-07-21 13:02:34 -04:00
Nico Weber
56f3c2b2d3 [gn build] (manually) hack around 70f8d0ac8a3 2020-07-21 06:35:36 -04:00
Logan Smith
16a34f1645 Enable -Wsuggest-override in the LLVM build
This patch adds Clang's new (and GCC's old) -Wsuggest-override to the warning flags for the LLVM build. The warning is a stronger form of -Winconsistent-missing-override which warns _everywhere_ that override is missing, not just in places where it's inconsistent within a class.

Some directories in the monorepo need the warning disabled for compatibility's, or sanity's, sake; in particular, libcxx/libcxxabi, and any code implementing or interoperating with googletest, googlemock, or google benchmark (which do not themselves use override). This patch adds -Wno-suggest-override to the relevant CMakeLists.txt's to accomplish this.

Differential Revision: https://reviews.llvm.org/D84126
2020-07-20 12:32:47 -07:00
LLVM GN Syncbot
d8d3b91ab3 [gn build] Port e1270b16c94 2020-07-20 17:51:57 +00:00
Simon Pilgrim
741fef4349 CodeGenDAGPatterns.h - remove unnecessary ComplexPattern forward declaration. NFCI.
This is defined in CodeGenTarget.h which we have to explicitly include already.
2020-07-20 15:17:19 +01:00
Simon Pilgrim
f042856ca0 CodeGenDAGPatterns.h - remove unused CodeGenHwModes.h include. NFCI. 2020-07-20 15:17:18 +01:00
Simon Pilgrim
36f9d237ba SubtargetFeatureInfo.h - remove unnecessary include and forward declarations. NFCI.
Move necessary include down to SubtargetFeatureInfo.cpp.
2020-07-20 13:39:24 +01:00
sstefan1
2831dc56cb [Utils][Fix] remove unnecessary ; at the end 2020-07-19 20:48:28 +02:00
sstefan1
cd779b624c [Utils] Check function attributes in update_test_checks
Summary:
This introduces new flag to the update_test_checks and
update_cc_test_checks that allows for function attributes
to be checked in a check-line. If the flag is not set,
the behavior should remain the same.

Reviewers: jdoerfert

Subscribers: arichardson, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D83629
2020-07-19 20:07:24 +02:00
Michael Spencer
ea50f003c4 [clangd] Fix the build with clang <3.9.
In clang <3.9 the `unique_ptr` constructor that is supposed to allow
for Derived to Base conversion does not work. Remove this if we drop
support for such configurations.

This is the same fix as in fda901a987ddd, and it updates the comments
to better reflect the actual issue. The same thing reproduces with
libc++ with older clangs.
2020-07-17 16:12:31 -06:00
Michael Spencer
91ecc54ba0 [Clang] Fix building with Clang < 3.9.
This is a workaround for a bug in older versions of Clang when. The
constructor that is supposed to allow for Derived to Base conversion
does not work. Remove this if we drop support for such configurations.
2020-07-17 13:33:15 -06:00
Nico Weber
74cfe04a0f [gn build] Run git ls-files '*.gn' '*.gni' | xargs llvm/utils/gn/gn.py format 2020-07-17 12:31:42 -04:00
Nico Weber
598efdf414 [gn build] (manually) merge 6c43ed608 2020-07-17 12:27:21 -04:00
Nico Weber
1fb7448577 [gn build] Make sync_source_lists_from_cmake handle one-line sources lines
sync_source_lists_from_cmake now also looks for source files in
`sources += [ "foo.cc" ]` lines, which allows us to remove most
`# Make `gn format` not collapse this` comments.

(sync_source_lists_from_cmake doesn't look for `foo_headers += [...]`
still, so the comment is still needed in two places for that.)

No intentional behavior change.
2020-07-17 11:53:42 -04:00
Nico Weber
5e45050636 [gn format] (manually) merge 6bddd099ac 2020-07-17 11:21:42 -04:00
LLVM GN Syncbot
02ac158b95 [gn build] Port 6bddd099ac1 2020-07-17 14:58:08 +00:00
LLVM GN Syncbot
bd49fc9d37 [gn build] Port c7562e77b3a 2020-07-17 14:38:56 +00:00
Hans Wennborg
c9528722ad Add -flang flag to the test-release.sh script
The flag is off by default.
2020-07-17 13:30:14 +02:00
Jay Foad
f65d86c32b [TableGen] Report an error instead of asserting
This gives a nice error if you accidentally try to use an empty list for
the RegTypes of a RegisterClass.

Differential Revision: https://reviews.llvm.org/D78285
2020-07-17 11:32:46 +01:00
LLVM GN Syncbot
9476f32c02 [gn build] Port 9870f77441c 2020-07-16 23:07:46 +00:00
LLVM GN Syncbot
12bd51a094 [gn build] Port 0f6220ddd6c 2020-07-16 23:07:45 +00:00
LLVM GN Syncbot
ff4f09f824 [gn build] Port 0e940d55f8a 2020-07-16 23:07:45 +00:00
Nico Weber
754d8450bf [gn build] (manually) merge 9870f77441c 2020-07-16 19:07:28 -04:00
serge-sans-paille
c5e705c5f8 Harmonize Python shebang
Differential Revision: https://reviews.llvm.org/D83857
2020-07-16 21:53:45 +02:00
LLVM GN Syncbot
207caa9df8 [gn build] Port 5e8b4be9f85 2020-07-16 19:08:09 +00:00
Nadav Rotem
8c87e8c6cf [TableGen] Change std::vector to SmallVector
The size of VTList that is pushed into this container is usually 1, but
often 6 or 7. Change the vector to SmallVector to eliminate frequent
mallocs.  This happens hundreds of thousands of times in each tablegen
execution during the LLVM/clang build.

https://reviews.llvm.org/D83849
2020-07-16 11:32:44 -07:00
Nico Weber
0ee3da9a31 [gn build] Fix merge script mishap 2020-07-16 13:46:45 -04:00
LLVM GN Syncbot
9506f9a061 [gn build] Port 1360e140cc7 2020-07-16 16:14:13 +00:00
Craig Topper
2c95c9a618 [X86] Allow lsl/lar to be parsed with a GR16, GR32, or GR64 as source register.
This matches GNU assembler behavior. Operand size is determined
only from the destination register.
2020-07-15 23:51:37 -07:00
LLVM GN Syncbot
3194a601ce [gn build] Port 4a539faf74b 2020-07-15 17:53:38 +00:00
Hans Wennborg
7ddc914b02 Bump the trunk major version to 12
and clear the release notes.
2020-07-15 12:05:05 +02:00
LLVM GN Syncbot
137ffe83dc [gn build] Port 0750757e80c 2020-07-15 02:13:43 +00:00
Nico Weber
750e5616cb [gn build] (manually) merge c1e2f73c 2020-07-14 20:43:59 -04:00
Louis Dionne
6ac4774c26 [libc++] Automatically detect whether RTTI is enabled
Instead of detecting it automatically but also allowing for the setting
to be specified explicitly, always detect whether exceptions are enabled
based on whether -fno-rtti (or equivalent) is used. It's less confusing
to have a single way of tweaking that knob.

This change follows the lead of 71d88cebfb42.
2020-07-14 16:51:37 -04:00
Valentin Clement
dfb82bf336 [flang][openacc] OpenACC 3.0 parser
Summary:
This patch introduce the parser for OpenACC 3.0 in Flang. It uses the same TableGen mechanism
than OpenMP.

Reviewers: nvdatian, sscalpone, tskeith, klausler, ichoyjx, jdoerfert, DavidTruby

Reviewed By: klausler

Subscribers: MaskRay, SouraVX, mgorny, hiraditya, jfb, sstefan1, llvm-commits

Tags: #llvm, #flang

Differential Revision: https://reviews.llvm.org/D83649
2020-07-14 14:29:40 -04:00
Matt Arsenault
908ef3f208 TableGen/GlobalISel: Partially fix nontrivial, custom predicates
Currently custom code predicates can only really be used for
contextless checks tied to a single instruction (e.g. check the def
for hasOneUse). If you do want to inspect the input instructions in
the source pattern, you cannot without re-verifying the opcode and
type checks implied by the patterns, since this check was emitted
before any operand constraints. Really, these are pattern level
predicates that implicitly depend on the instruction and operand
checks.

Introduce a filtering function so the custom predicate is emitted
last. I'm not sure this is the most elegant solution. It seems like
this is really a different thing from the InstructionMatcher/IPM_
predicate kinds. I initially tried keeping this in a separate
predicate list, but that also seemed awkward.

This only half fixes the problem I'm trying to solve. The AMDGPU
pattern I'm attempting to port also uses the PredicateCodeUsesOperands
feature to allow checks on the source operands when the input pattern
is commuted. Really the emitter should reject the pattern since it
doesn't handle this case, but at this point it would be more
productive to just implement this.
2020-07-14 14:26:51 -04:00
Richard Barton
3d5f62147e [lit] Prevent hang when lit sees non-ASCII characters
As per discussion in D69207, have lit ignore UnicodeDecodeErrors
when running with python 2 in an ASCII shell.

Differential Revision: https://reviews.llvm.org/D82754
2020-07-14 18:41:15 +01:00
Simon Tatham
38ef31c22c [utils] New script check_ninja_deps.py
Summary:
This can be run after a ninja-based build, and analyzes the ninja
build files and dependency database to spot any missing dependencies
in the build scripts.

I wrote it in the course of investigating D82659, and it seems likely
to be useful again.

Reviewers: thakis, chandlerc, theraven

Reviewed By: thakis

Subscribers: riccibruno, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D83032
2020-07-14 14:54:08 +01:00
LLVM GN Syncbot
fe0b46e2d5 [gn build] Port dd6faf13d8e 2020-07-14 09:36:07 +00:00
LLVM GN Syncbot
fbb19ba599 [gn build] Port c15e04ee5e4 2020-07-14 09:31:18 +00:00
LLVM GN Syncbot
ef5b92a924 [gn build] Port caf395ee8c2 2020-07-13 23:39:28 +00:00
LLVM GN Syncbot
818fdbce3f [gn build] Port 9908a3b9f52 2020-07-13 20:18:59 +00:00
LLVM GN Syncbot
9485ea1e41 [gn build] Port fdb69539bcd 2020-07-13 18:10:37 +00:00
Matt Arsenault
de32382a70 TableGen/GlobalISel: Emit enum names for reg class ID instead of value
This was emitting the raw value for the reg class ID with a comment
for the actual class name. Switch to emitting the qualified enum name
instead, which obviates the need for the comment and also helps keep
the lit tests on the emitter output more stable.
2020-07-13 14:02:08 -04:00
LLVM GN Syncbot
4289f3f3ad [gn build] Port 83080a294ad 2020-07-13 17:19:05 +00:00
clementval
dbcd329511 [openmp] Remove unused variable in DirectiveEmitter 2020-07-11 12:59:52 -04:00
Valentin Clement
948efbf02a [flang][openmp] Check clauses allowed semantic with tablegen generated map
Summary:
This patch is enabling the generation of clauses enum sets for semantics check in Flang through
tablegen. Enum sets and directive - sets map is generated by the new tablegen infrsatructure for OpenMP
and other directive languages.
The semantic checks for OpenMP are modified to use this newly generated map.

Reviewers: DavidTruby, sscalpone, kiranchandramohan, ichoyjx, jdoerfert

Reviewed By: DavidTruby, ichoyjx

Subscribers: mgorny, yaxunl, hiraditya, guansong, sstefan1, aaron.ballman, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D83326
2020-07-11 12:45:12 -04:00
Nico Weber
4ae0689f8c [gn build] (manually) merge 943660fd15f193 2020-07-11 06:44:28 -04:00