1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-02-01 05:01:59 +01:00

9379 Commits

Author SHA1 Message Date
LLVM GN Syncbot
3ab165d1a9 [gn build] Port 77bb3ebebbc 2020-10-13 19:14:10 +00:00
LLVM GN Syncbot
7af631872f [gn build] Port 662ed9e67ad 2020-10-13 19:14:09 +00:00
Ahsan Saghir
179c563da5 [PowerPC] Add assemble disassemble intrinsics for MMA
This patch adds support for assemble disassemble intrinsics
for MMA.

Reviewed By: bsaleil, #powerpc

Differential Revision: https://reviews.llvm.org/D88739
2020-10-13 13:21:58 -05:00
LLVM GN Syncbot
9b4c282db0 [gn build] Port b76dc111dd0 2020-10-13 17:53:40 +00:00
LLVM GN Syncbot
b114391be7 [gn build] Port 44b7cf2983b 2020-10-13 17:53:39 +00:00
Raphael Isemann
ff389f157f [lldb][NFC] Fix some invalid escapes sequences in Python strings
I recently had to run the test suite with a debug Python which got started
warning about some invalid escape sequences in LLDB's Python code. They all
attempt to add a backslash by doing a single backslash instead of a double
backslash in a normal string. This seems to work fine for now, but Python says
this behaviour is deprecated, so this patch turns all those strings into raw
strings (where a single backslash is actually a single backslash)

Reviewed By: JDevlieghere

Differential Revision: https://reviews.llvm.org/D88289
2020-10-13 16:04:24 +02:00
Evgeny Leviant
71a9feee28 Fix Windows/MSVC build after 6e56046f65
Commit 6e56046f65 may trigger SEGV in llvm-tablegen if the latter
is built with -DLLVM_OPTIMIZED_TABLEGEN=OFF. The reason of SEGV was
accessing stale memory after expansion of std::vector.
2020-10-13 15:24:58 +03:00
Evgeny Leviant
a5e5f602ef [TableGen][SchedModels] Fix aliasing of SchedWriteVariant
Differential revision: https://reviews.llvm.org/D89114
2020-10-13 13:05:24 +03:00
LLVM GN Syncbot
9263495686 [gn build] Port 412cdcf2edf 2020-10-13 01:07:55 +00:00
Paul C. Anagnostopoulos
69c806cfe8 [TableGen] Add overload of RecordKeeper::getAllDerivedDefinitions()
and use in PseudoLowering backend.
Now the two getAllDerivedDefinitions() use StringRef and Arrayref.
Use all_of() in getAllDerivedDefinitions().
2020-10-12 16:40:09 -04:00
Nico Weber
68c9b7691c [gn build] Add libclang_rt.ios.a, libclang_rt.iossim.a to the build
It's built with just-built clang, like all other compiler-rt parts
in the GN build.

This requires adding some cross build support to the mac toolchain.

Also add explicit mmacosx-version-min and miphoneos-version-min
flags to the build.

ios.a is only built with the arm64 slice, iossim.a only with the
x86_64 slice for now. (The latter should maybe become host_cpu
when Arm Macs become a common iOS development platform.)

With this, it's possible to build chromium/iOS with a GN-built LLVM.

Differential Revision: https://reviews.llvm.org/D89260
2020-10-12 16:21:04 -04:00
LLVM GN Syncbot
d1ef7ad43b [gn build] Port f9317f7bf6b 2020-10-12 13:27:45 +00:00
sstefan1
6a1e373c9c [IR][FIX] Intrinsics - don't apply default willreturn if IntrNoReturn is specified
Summary: Since willreturn will soon be added as default attribute, we can end up with both noreturn and willreturn on the same intrinsic. This was exposed by llvm.wasm.throw which has IntrNoReturn.

Reviewers: jdoerfert, arsenm

Differential Revision: https://reviews.llvm.org/D88644
2020-10-12 11:29:33 +02:00
Kito Cheng
b69d089152 [Tablegen][SubtargetEmitter] Print TuneCPU in Subtarget::ParseSubtargetFeatures
Let user able to know which -tune-cpu are used now.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D88951
2020-10-12 14:46:44 +08:00
David Green
08b29d77c1 [TblGen][Scheduling] Fix debug output. NFC
This just moves some newlines to the expected places.
2020-10-10 10:04:28 +01:00
LLVM GN Syncbot
eaed84a6bd [gn build] Port 0741a2c9cac 2020-10-09 13:54:24 +00:00
Kazushi (Jam) Marukawa
9d098730c5 [VE] Add new MVT types for NEC SX Aurora VE vector
This patch adds entries for:
    v64i64
    v128i64
    v256i64
    v64f64
    v128f64
    v256f64

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D88776
2020-10-09 12:07:41 +09:00
Dan Liew
a50a440b7c [lit] Try to remove the flakeyness of shtest-timeout.py and googletest-timeout.py.
The tests previously relied on the `short.py` and `FirstTest.subTestA`
script being executed on a machine within a short time window (1 or 2
seconds). While this "seems to work" it can fail on resource constrained
machines. We could bump the timeout a little bit (bumping it too
much would mean the test would take a long time to execute) but it wouldn't
really solve the problem of the test being prone to failures.

This patch tries to remove this flakeyness by separating testing into
two separate parts:

1. Testing if a test can hit a timeout.
2. Testing if a test can run to completion in the presence of a
timeout.

This way we can give (1.) a really short timeout (to make the test run
as fast as possible) and (2.) a really long timeout. This means for (2.)
we are no longer trying to rely on the "short" test executing within
some short time window. Instead the window is now 3600 seconds which
should be long enough even for a heavily resource constrained machine to
execute the "short" test.

Thanks to Julian Lettner for suggesting this approach. This superseeds
my original approach in https://reviews.llvm.org/D88807.

This patch also changes the command line override test to run the quick
test rather than the slow one to make the test run faster.

Differential Revision: https://reviews.llvm.org/D89020
2020-10-08 10:46:18 -07:00
Nico Weber
385deec198 [gn build] (manually) port 9b58b0c06e6 better 2020-10-08 10:13:54 -04:00
Nico Weber
aaecbeabb4 [gn build] (manually) port 9b58b0c06e6 2020-10-08 10:08:45 -04:00
Min-Yih Hsu
b05cf821e6 [M680x0] Add google/benchmark's CycleTimer support for M68K
This is a cherrypick of the upstream fix commit ffe1342 onto
`llvm/utils/benchmark` and `libcxx/utils/google-benchmark`.
This adds CycleTimer implementation for M680x0, which simply
uses `gettimeofday` same as MIPS.

Differential Review: https://reviews.llvm.org/D88868
2020-10-07 14:58:36 -07:00
LLVM GN Syncbot
c887e89634 [gn build] Port ddf1864ace4 2020-10-07 15:50:43 +00:00
Nico Weber
667a8e234b [gn build] (manually) port ce1365f8f7e 2020-10-07 10:33:51 -04:00
Nico Weber
2e9cf00e3d [gn build] manually port 5e4409f308177 2020-10-06 18:43:49 -04:00
Alexandre Ganea
8eda5d6321 Revert [lit] Support running tests on Windows without GnuWin32
This reverts b3418cb4eb1456c41606f4621dcfa362fe54183c and d12ae042e17b27ebc8d2b5ae3d8dd5f88384d093

This breaks some external bots, see discussion in https://reviews.llvm.org/D84380

In the meanwhile, please use `cmake -DLLVM_LIT_TOOLS_DIR="C:/Program Files/Git/usr/bin"` or add it to %PATH%.
2020-10-06 15:38:18 -04:00
LLVM GN Syncbot
045458557c [gn build] Port aa2b593f149 2020-10-06 14:49:44 +00:00
LLVM GN Syncbot
f024187bee [gn build] Port d6c9dc3c17e 2020-10-06 12:02:07 +00:00
Joseph Huber
058a89097b Revert "[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload"
Reverting because detecting architecture size doesn't work on all
platforms.

This reverts commit eaf73293cb6b8d45dd85ffced57aea7ad4177754.
2020-10-05 12:35:39 -04:00
Joseph Huber
34a590c455 [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload
Summary:
This patch adds an error to Clang that detects if OpenMP offloading is
used between two architectures with incompatible pointer sizes. This
ensures that the data mapping can be done correctly and solves an issue
in code generation generating the wrong size pointer. This patch adds a
new lit substitution, %omp_powerpc_triple that, if the system is 32-bit or
64-bit, sets the powerpc triple accordingly. This was required to fix
some OpenMP tests that automatically populated the target architecture.

Reviewers: jdoerfert

Subscribers: cfe-commits guansong sstefan1 yaxunl delcypher

Tags: OpenMP clang LLVM

Differential Revision: https://reviews.llvm.org/D88594
2020-10-05 11:02:13 -04:00
Dmitry Preobrazhensky
487e45e4f5 [TableGen] Added a function for identification of unsupported opcodes.
This change implements generation of a function which may be used by a backend to check if a given instruction is supported for a specific subtarget.

Reviewers: sdesmalen

Differential Revision: https://reviews.llvm.org/D88214
2020-10-05 14:23:41 +03:00
Gabriel Hjort Åkerlund
ba5a05d667 [TableGen][GlobalISel] add handling of nested *_SUBREG
When nesting INSERT_SUBREG and EXTRACT_SUBREG, GlobalISelEmitter would
fail to find the register class of the nested node. This patch fixes
that for registers with subregs.

Reviewed By: arsenm

Differential Revision: https://reviews.llvm.org/D88487
2020-10-05 10:42:18 +02:00
LLVM GN Syncbot
90e91d175f [gn build] Port 6c6cd5f8a97 2020-10-04 19:10:39 +00:00
LLVM GN Syncbot
235ba6748a [gn build] Port ace644030e6 2020-10-02 23:59:59 +00:00
Arthur Eubanks
63659fb23e [gn build] Don't define CINDEX_EXPORTS
This causes
../../clang/include\clang-c/Platform.h(23,11): warning: 'CINDEX_EXPORTS' macro redefined [-Wmacro-redefined]
  #define CINDEX_EXPORTS
2020-10-02 10:39:49 -07:00
LLVM GN Syncbot
6db7f6f068 [gn build] Port 0c1bb4f8851 2020-10-02 14:24:01 +00:00
Paul C. Anagnostopoulos
6ec902749c [TableGen] New backend to print detailed records.
Pertinent lints are fixed.
2020-10-02 10:22:13 -04:00
Arthur Eubanks
f70b28627d [gn build] Support building with ThinLTO
Differential Revision: https://reviews.llvm.org/D88584
2020-10-01 13:48:31 -07:00
Reid Kleckner
f0bf98943a [lit] Fix Python 2/3 compat in new winreg search code
This should fix the test failures on the clang win64 bot:
http://lab.llvm.org:8011/builders/clang-x64-windows-msvc/builds/18830
It has been red since Sept 23-ish.

This was subtle to debug. Windows has 'find' and 'sort' utilities in
C:\Windows\system32, but they don't support all the same flags as the
coreutils programs. I configured the buildbot above with Python 2.7
64-bit (hey, it was set up in 2016). When I installed git for Windows, I
opted to add all the Unix utilities that come with git to the system
PATH. This is *almost* enough to make the LLVM tests pass, but not
quite, because if you use the system PATH, the Windows version of find
and sort come first, but the tests that use diff, cmp, etc, will all
pass. So only a handful of tests will fail, and with cryptic error
messages.

The code changed in this CL doesn't work with Python 2. Before
Python 3.2, the winreg.OpenKey function did not accept the `access=`
keyword argument, the caller was required to pass an unused `reserved`
positional argument of 0. The try/except/pass around the OpenKey
operation masked this usage error in Python 2.

Further, the result of the registry operation has to be converted from
unicode to add it to the environment, but that was incidental.
2020-10-01 12:22:28 -07:00
LLVM GN Syncbot
fb69abb068 [gn build] Port f6b1323bc68 2020-10-01 14:18:52 +00:00
LLVM GN Syncbot
77de5cb36a [gn build] Port d53b4bee0cc 2020-10-01 12:55:59 +00:00
LLVM GN Syncbot
d8d20d81de [gn build] Port 413577a8790 2020-09-30 10:09:34 +00:00
Xiang1 Zhang
92910706f0 [X86] Support Intel Key Locker
Key Locker provides a mechanism to encrypt and decrypt data with an AES key without having access
to the raw key value by converting AES keys into “handles”. These handles can be used to perform the
same encryption and decryption operations as the original AES keys, but they only work on the current
system and only until they are revoked. If software revokes Key Locker handles (e.g., on a reboot),
then any previous handles can no longer be used.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D88398
2020-09-30 18:08:45 +08:00
Arthur Eubanks
a8a0bb5888 [gn build] Add missing dependency to Extensions 2020-09-29 20:12:00 -07:00
LLVM GN Syncbot
51ad2660a8 [gn build] Port 6d193ba3337 2020-09-29 17:50:16 +00:00
LLVM GN Syncbot
117b16b4b6 [gn build] Port 54d9f743c8b 2020-09-29 00:24:06 +00:00
Nico Weber
cce683e16e [gn build] Re-run CompletionModelCodegen when input json files change 2020-09-28 16:58:00 -04:00
Paul C. Anagnostopoulos
90d4bf8784 [TableGen] Improved messages in PseudoLoweringEmitter. 2020-09-28 10:18:22 -04:00
LLVM GN Syncbot
9643d50ff5 [gn build] Port 018066d9475 2020-09-28 11:38:04 +00:00
Fangrui Song
4e56e25d41 Internalize functions from various tools. NFC
And internalize some classes if I noticed them:)
2020-09-26 15:57:13 -07:00
Nico Weber
247d4d7f35 [gn build] update TODO 2020-09-26 12:42:50 -04:00