13352 Commits

Author SHA1 Message Date
Nivetha Kuruparan
c3356ac3b9
[llvm-readtapi] Fix bad symlink with readtapi tool (#68835)
The Clang-AIX-Wyvern-Dev buildbot is currently failing at the set
directory permission due to a bad symlink caused by this
[commit](a54f31fabd).
This change is creating the additional symlink `readtapi ->
llvm-readtapi` which causes it to appear in
`/buildbot_worker/official-worker/clang-aix-dev/installdir`.

After some investigation, it looks like `readtapi` is the only tool that
is getting symlinked that is not guarded by the
`LLVM_INSTALL_BINUTILS_SYMLINKS` macro. For example:

1. `llvm/tools/llvm-objcopy/CMakeLists.txt`

```
if(LLVM_INSTALL_BINUTILS_SYMLINKS)
  add_llvm_tool_symlink(objcopy llvm-objcopy)
endif()
```

2. `llvm/tools/llvm-dwp/CMakeLists.txt`
```
if(LLVM_INSTALL_BINUTILS_SYMLINKS)
  add_llvm_tool_symlink(dwp llvm-dwp)
endif()
```
2023-10-12 10:34:05 -04:00
Nico Weber
bdc66912a8 [gn] port 2b05fa8f0be7 (InterpTests) 2023-10-12 08:39:33 -04:00
LLVM GN Syncbot
77354c9ec2 [gn build] Port f90125434159 2023-10-10 18:12:41 +00:00
LLVM GN Syncbot
f26fb3e8e6 [gn build] Port 71ae858c079f 2023-10-10 08:42:41 +00:00
Nico Weber
d4feffb3e0 [gn] port 24b0c43c9916 2023-10-09 18:52:15 -04:00
Aiden Grossman
f8148e4815
[Github] Add PR author name to subscription email (#68440)
Currently the email that gets sent out to people subscribing to a label
that the bot tags on the PR doesn't include any authorship information
which some people are interested in having. This patch adds an author
field to the message with the relevant information.
2023-10-09 15:46:53 -07:00
Juergen Ributzka
eb601430d3
[llvm][objdump] Remove support for printing the embedded Bitcode section in MachO files. (#68457)
It's no longer possible to submit bitcode apps to the Apple App Store.
The tools
used to create xar archived bitcode sections inside MachO files have
been
discontinued. Additionally, the xar APIs have been deprecated since
macOS 12,
so this change removes unnecessary code from objdump and all
dependencies on
libxar.

This fixes rdar://116600767
2023-10-09 15:03:29 -07:00
LLVM GN Syncbot
2cbdeb7bc1 [gn build] Port d07c3cf66716 2023-10-06 22:50:25 +00:00
LLVM GN Syncbot
8e4757110a [gn build] Port aade74675c15 2023-10-06 22:50:25 +00:00
LLVM GN Syncbot
9c2bdb6f55 [gn build] Port 5d2a7101b72a 2023-10-06 22:50:24 +00:00
LLVM GN Syncbot
f3c477aeb3 [gn build] Port 8f378ff7a0a3 2023-10-06 17:44:03 +00:00
Min-Yih Hsu
d36d8d67f5
[TableGen][GISel] Fix incorrect binding of predicate operands upon PredicateUsesOperands = 1 (#68125)
When `PredicateUsesOperands` is set to true, GlobalISelEmitter preserves
the original index of predicate operands and uses that information on
each predicate usage. However, previously it only looked up the original
index for "actual" operands (i.e. operands of a predicate usage) that
are leaf nodes, which is an incorrect assumption.
This patch fix it by generalizing the acceptable kinds of actual
operands for predicate as well as checking the existance of bound
predicate operands.
2023-10-05 08:57:15 -07:00
Joel E. Denny
3dc7039f24
[lit] Fix shell commands with newlines (#67898)
In PR #65242 (landed as 9e739fdb85ac672f3e25e971d96e71823e07ebda), I
claimed that RUN lines cannot contain newlines. Actually, they can after
substitution expansion. More generally, a lit config file can define
substitutions or preamble commands containing newlines. While both of
those cases seem unlikely in practice,
[D154987](https://reviews.llvm.org/D154987) proposes PYTHON directives
where it seems very likely.

Regardless of the use case, without this patch, such newlines break
expansion of `%dbg(RUN: at line N)`, and the fix is simple.
2023-10-03 10:00:21 -04:00
LLVM GN Syncbot
93e0127b50 [gn build] Port 8ebd22637548 2023-10-02 20:52:06 +00:00
LLVM GN Syncbot
2db8540a71 [gn build] Port cdd3e964f229 2023-10-02 17:46:46 +00:00
Uday Bondhugula
4533d474b7
[LIT] NFC. Add missing punctuation on a LIT driver message (#67941)
Add missing punctuation on a LIT driver message.
2023-10-02 15:40:59 +05:30
LLVM GN Syncbot
11fbbcb310 [gn build] Port 4ae51570806b 2023-09-30 05:26:40 +00:00
LLVM GN Syncbot
88b31f4cae [gn build] Port 3adc2a0b84d0 2023-09-29 19:27:42 +00:00
Nico Weber
a806aef753 [gn] port 7ddf7d87831a and b2518971d82331 (LLVMOrcDebugging) 2023-09-29 08:28:41 -04:00
René Rebe
0eed8ae7d2
Fix release/export.sh to export runtimes tarball, too (#67404)
This addresses missing cmake files needed to build some sub-projects
like libstdcxx.

Co-authored-by: René Rebe <rene@exactcode.de>
2023-09-28 16:37:24 +02:00
LLVM GN Syncbot
a82368ca7b [gn build] Port 61b0f12d6b9c 2023-09-27 20:51:14 +00:00
Gregory Alfonso
40dc8e6889 [NFC] Use const references to avoid copying objects in for-loops
Differential Revision: https://reviews.llvm.org/D139487
2023-09-27 13:39:30 -07:00
Fangrui Song
ab3e647b89 [FileCheck] Fix performance-for-range-copy issues. NFC 2023-09-27 13:34:41 -07:00
Craig Topper
7afc442fb3
[TableGen][GISel] Add PtrValueTypeByHwMode to be able to vary … (#67501)
…the size of a pointer by HwMode.

This adds an equivalent of PtrValueType that can use a
ValueTypeByHwMode.

This allows the size of a pointer to vary based on HwMode. This is
needed for RISC-V to support XLen sized pointers.
2023-09-27 13:09:58 -07:00
Fangrui Song
0bc68ca427 [TableGen] Optimize SizeToOperandName iteration. NFC 2023-09-27 12:41:54 -07:00
LLVM GN Syncbot
bc380fedc5 [gn build] Port e705b37a77c6 2023-09-27 17:52:46 +00:00
XinWang10
2e9a04b985
[X86]Add NO_REVERSE attribute to X86 RMW instrs in memfold table (#67288)
X86 don't want to unfold RMW instrs to 1 load + 1 op + 1 store, because
RMW could save code size and benefit RA when reg pressure is high.
And from all the call position analysis, we could find we didn't unfold
RMW in current code.
2023-09-27 22:18:14 +08:00
Vitaly Buka
7d495d6787 [gn] Add "-Wl,-U,___sanitizer_symbolize_demangle"
Followup to #67491
2023-09-26 17:20:34 -07:00
Michael Maitland
891d511fdb
[UpdateTestChecks][llvm-mca] Use common.itertests in update_mca_test_checks (#67477)
common.itertests has useful functionality such as skipping test case if
it starts with UTC_AVOID comment string. It also does some of the
functionality, such as skipping test file pattern if not found, that was
duplicated by update_mca_test_checks.

This patch uses this function to take advantage of extra behavior and
remove duplication.
2023-09-26 19:23:41 -04:00
Ramkumar Ramachandra
ac466c7525
UpdateTestChecks: squelch warning on SCEV output (#67443)
update_analyze_test_checks.py currently outputs a warning when updating
a script with the run line:

  $ opt -passes='print<scalar-evolution>'

saying that the script doesn't support its output, when it indeed does,
as evidenced by several tests in test/Analysis/ScalarEvolution generated
by this script. There is even a test for update_analyze_test_checks that
makes sure that SCEV output is supported. Hence, squelch the warning.

While at it, rename the update_analyze_test_checks test from basic.ll to
a more explicit scev.ll.
2023-09-26 19:40:13 +01:00
LLVM GN Syncbot
8d77d078b8 [gn build] Port d85d143ad990 2023-09-26 08:42:04 +00:00
Shao-Ce SUN
b0e28eb832
[llvm][tblgen] Add Source Filename for emitSourceFileHeader (#65744)
I think this is very helpful for reading generated `.inc` files.
2023-09-26 13:40:56 +08:00
Ivan Kosarev
f7f8bae7a9
[TableGen][NFCI] Speed up generating *GenRegisterInfo.inc files on builds with expensive checks. (#67340)
This is mostly AMDGPU-specific. When the expensive checks are enabled,
generating of AMDGPUGenRegisterInfo.inc currently takes about 20 minutes
on my machine for release+asserts builds, which effectively prevents
such testing from regular use. This patch fixes this by reducing the
time to about 2 minutes.

Generation times for AMDGPUGenRegisterInfo.inc without expensive checks
and other *GenRegisterInfo.inc files with and without the expensive
checks remain approximately the same.

The patch doesn't cause any changes in the contents of the generated
files.

The root cause of the current poor performance is that where glibcxx is
used, enabling the expensive checks defines _GLIBCXX_DEBUG, which
enables various consistency checks in the library. One such check is in
std::binary_search() to make sure the range is ordered. As
CodeGenRegisterClass::contains() relies on std::binary_search() and it
is called very a large number of times from within
CodeGenRegBank::inferMatchingSuperRegClass(), the libcxx checks heavily
affect the runtimes.
2023-09-25 19:13:29 +01:00
cor3ntin
b7ff03206d
[Documentation] Replace recommonmark by myst-parser (#65664)
Recommonmark has been deprecated, then archived last year. This was
tracked by: https://github.com/llvm/llvm-iwg/issues/30

See https://github.com/readthedocs/recommonmark

This patch migrates all our doc to use myst

Additional details for bot maintainers: https://discourse.llvm.org/t/maintenance-required-on-sphinx-build-bots/73612
2023-09-25 14:02:39 +02:00
Wang Pengcheng
a433592524
[TableGen] Fix wrong bits output in GenericTable (#66867)
We used to return `int` in `getAsInt`, while `IntInit::getValue`
returns `int64_t` and `utohexstr` needs `uint64_t`. The casting
causes the wrong hex value when printing bits value.
2023-09-25 19:32:59 +08:00
Tomáš Zeman
5a285bd325
[LLVM][TableGen] Read from uninitialised variable (#66889)
Fixing an issue found in a UBsan build. When defining a variable-length
encoding with no operands or slices, the HasDynamicSegment member was
read without being initialised.
2023-09-25 10:45:47 +02:00
Ivan Kosarev
6fbbcb4ee7
[TableGen] Fix ordering of register classes. (#67245)
This commit:

TableGen: Try to fix expensive checks failures
d2a9b87fee84766b28bd39b46c913da00e1450f4

fixed one of the sort() calls, but there's another.

Caught on expensive-checks buildbots that started to fail sporadically
after submitting

[AMDGPU] Add True16 register classes.
469b3bfad20550968ac428738eb1f8bb8ce3e96d
2023-09-24 10:41:12 +01:00
LLVM GN Syncbot
782f1a0d89 [gn build] Port e5f169f91a86 2023-09-23 04:44:28 +00:00
LLVM GN Syncbot
193c67cf4b [gn build] Port e1a5bb59b91d 2023-09-22 23:19:20 +00:00
Arthur Eubanks
2aff14ef3e [gn build] Manually port 8e87dc10 2023-09-22 12:22:35 -07:00
LLVM GN Syncbot
80e17328f2 [gn build] Port eb02ee44d325 2023-09-22 12:18:09 +00:00
Tobias Hieta
fe7fe6d343
build-docs: Add option to disable doxygen/sphinx docs (#66928)
Doxygen documentation takes very long to build, when making releases we
want to get the normal documentation up earlier so that we don't have to
wait for doxygen documentation.

This PR just adds the flag to disable doxygen builds, I will then later
make a PR that changes the actions to first build the normal docs and
another job to build the doxygen docs.
2023-09-22 10:41:33 +02:00
Tobias Hieta
a1177b0bdb
Reland: [Workflow] Add new code format helper.
I landed this format helper, but unfortunately, it didn't work because
of permissions, it could not add comments on a fork's PR. @cor3ntin
informed me there are fixes for this that you had worked on @tstellar -
but I didn't have time to read up on it too much. Can you explain what
changes are needed to get the action to be able to write comments on
fork's PR?
2023-09-22 10:26:09 +02:00
Paulo Matos
0495cd89fc
[UpdateTestChecks] Add support for SPIRV in update_llc_test_checks.py (#66213)
Support for SPIRV added, updated test SPV_INTEL_optnone.ll using the script.

Previously https://reviews.llvm.org/D157858
2023-09-21 12:51:42 +02:00
LLVM GN Syncbot
bccaf939e6 [gn build] Port 75e862077834 2023-09-21 10:39:00 +00:00
LLVM GN Syncbot
0ce4b86efd [gn build] Port a7b78cac9a77 2023-09-21 09:32:49 +00:00
LLVM GN Syncbot
be52db0719 [gn build] Port 933ad5c897ee 2023-09-20 22:56:15 +00:00
Nico Weber
54e1454965 [gn] expand dummy target from 2ed813ff2696
It also needs a sources list for the sync script not to complain.
2023-09-20 18:55:40 -04:00
Nico Weber
2ed813ff26 [gn] Add dummy build file for VETests
sync_source_lists_from_cmake.py checks that every unittest in CMake
also exists in the GN build. 4f330b7f756e added VETests, but the GN
build doesn't include the VE target. So add a dummy target for this
to placate the check.
2023-09-20 11:08:36 -04:00
Tobias Hieta
fe5c185641
Revert "[Workflow] Add new code format helper. (#66684)"
This reverts commit da94bf0d561109529e4ab3dabfcbb8b6c258ea39.
2023-09-20 10:01:37 +02:00