2296 Commits

Author SHA1 Message Date
Jordan Rupprecht
afce1b1014
[bazel] Remove empty Rename tests for now-deleted clang-rename (#109162)
Removed in #108988, the tool is fine but the glob for tests is now empty
because all the tests were deleted.
2024-09-18 10:42:03 -05:00
Aaron Ballman
40c45b6b43
Remove clang-rename (#108988)
clang-rename has largely been superseded by clangd and this project
hasn't received much attention in many years. Further, our
documentation on it still claims it's in very early stages of
development despite being ~10 years old. One of the primary people
driving the tool has mentioned that they don't believe there is a
reason to continue to support it unless it's still being actively
used (https://reviews.llvm.org/D148439#4303202) and I've found no
evidence to suggest that is the case.

Original RFC:
https://discourse.llvm.org/t/rfc-time-to-deprecate-remove-clang-rename/70707
2024-09-18 08:25:58 -04:00
Fangrui Song
125635eb68 [CMake] Remove unused HAVE_SYS_PARAM_H/HAVE_SYS_TYPES_H 2024-09-17 22:55:53 -07:00
Benjamin Kramer
d3532d1b67 [bazel] Port 64972834c193632cbc47e54c0f0c721636b077e6 2024-09-17 19:39:41 +02:00
Benjamin Kramer
4de7026ce3 [bazel] Split linux time targets to avoid dependency cycles
clock_gettime is much heavier than the others as it depends on vdso.
2024-09-17 10:28:03 +02:00
Guillaume Chatelet
c970e96eae
[libc][bazel] Enable software prefetching for memset (#108860)
This will affect only Bazel configuration for now.
2024-09-17 09:52:23 +02:00
Mikhail Goncharov
57b50a9739 [bazel] port 2ae968a0d9fb61606b020e898d884c82dd0ed8b5 2024-09-16 11:01:50 +02:00
Benjamin Kramer
0098cee45c [bazel] Port f4763b3d24546808720ff457761159b4e1605876 2024-09-15 23:22:13 +02:00
Benjamin Kramer
d044732a25 [bazel] Port a205a854e06d36c1d0def3e3bc3743defdb6abc1 2024-09-15 23:14:38 +02:00
Benjamin Kramer
c618a23514 [bazel] Add missing dependency for ca4973972bf1306b49413a76f2d0c25c3df711aa 2024-09-14 12:58:39 +02:00
Jordan Rupprecht
d0638ed0fd
[bazel][NFC] Use globs to make Vectorize less brittle (#108644)
This avoids needing to update the rule every time there's a new
directory, e.g. SandboxVectorizer packages.
2024-09-13 17:12:47 -05:00
Keith Smiley
ee3f5c2f91
[bazel] Port a953982cb7dee0678bb5f7c2febe4c3b8b718c7a (#108651) 2024-09-13 14:49:25 -07:00
Pranav Kant
a592e4b4b0
[bazel] add vdso dependency to time_linux lib (#108647)
This is a quick fix to unbreak Bazel build. The right solution would
probably add vdso.cpp in the support library which includes circular
dependency and needs more restructuring.
2024-09-13 14:35:59 -07:00
Pranav Kant
aca226c0f8
[Bazel] Fix build break for SandboxVectorizer (#108638)
Fixes
39f2d2f156
2024-09-13 13:01:50 -07:00
Nirvedh Meshram
a16164d0c2
[MLIR][ROCDL] Add dynamically legal ops to LowerGpuOpsToROCDLOpsPass (#108302)
Similar to https://github.com/llvm/llvm-project/pull/108266
After https://github.com/llvm/llvm-project/pull/102971
It is legal to generate `LLVM::ExpOp` and `LLVM::LogOp` if the type is
is a float16 or float32
2024-09-12 11:20:27 -05:00
Mikhail Goncharov
59731eebf8 [bazel] port ded080152acceca5d68014d63f5027a6d8266cbb 2024-09-12 12:01:03 +02:00
Michael Jones
4618b67b48
[libc][bazel] Enable epoll_pwait2 on bazel (#108254)
The wrapper for epoll_pwait2 has been difficult to enable since it
requires a very new version of the linux kernel (5.11). On cmake we
still need to create a mechanism to check if we can build it, but our
current bazel users are all on a new enough kernel version we can just
enable it.
2024-09-11 14:36:10 -07:00
lntue
1896ee3889
[libc] Fix undefined behavior for nan functions. (#106468)
Currently the nan* functions use nullptr dereferencing to crash with
SIGSEGV if the input is nullptr. Both `nan(nullptr)` and `nullptr`
dereferencing are undefined behaviors according to the C standard.
Employing `nullptr` dereference in the `nan` function implementation is
ok if users only linked against the pre-built library, but it might be
completely removed by the compilers' optimizations if it is built from
source together with the users' code.

See for instance:  https://godbolt.org/z/fd8KcM9bx

This PR uses volatile load to prevent the undefined behavior if libc is
built without sanitizers, and leave the current undefined behavior if
libc is built with sanitizers, so that the undefined behavior can be
caught for users' codes.
2024-09-11 14:13:31 -04:00
Mikhail Goncharov
b9c2e2e3e9 [bazel] port 2f3d061918ece414d6db544a34b2e44a9950bc23 2024-09-11 14:19:29 +02:00
Benjamin Kramer
c4a00be08a [bazel] Add missing dependency for a8f3d303122d049e65b699870615d464b77b489f 2024-09-11 11:36:59 +02:00
Benjamin Kramer
2e4e918bf0 [bazel] Port bc152fbf43157659f8b6817e8510e1fbe6e175b5 2024-09-11 11:35:22 +02:00
Jordan Rupprecht
feeb6aa303
[bazel] Add CGData targets/deps (#108070)
This is newly used as of 0f525452896771cc8c579eb362dc7645e38fd0b9.

The bulk of the targets were added earlier in
9bb555688caf6ae4ba89fee5baa3dc29fec6a9b1.
2024-09-10 13:40:39 -05:00
Mikhail Goncharov
33f1235b80 [libc][bazel] fix accidental rename
for 277371943fa48f2550df02870951f5e5a77efef5
2024-09-10 16:22:21 +02:00
Benjamin Kramer
fffdd9ed42 [bazel] Port 69f8923efa61034b57805a8d6d859e9c1ca976eb 2024-09-10 12:39:18 +02:00
Jordan Rupprecht
02ab43596f
[bazel][libc][NFC] Add missing dep for standalone compile (#107957)
One more after 277371943fa48f2550df02870951f5e5a77efef5
2024-09-09 22:39:29 -05:00
Jordan Rupprecht
7a8e9dfe5c
[bazel][libc][NFC] Add missing layering deps (#107947)
After 277371943fa48f2550df02870951f5e5a77efef5

e.g.

```
external/llvm-project/libc/test/src/math/smoke/NextTowardTest.h:12:10: error: module llvm-project//libc/test/src/math/smoke:nexttowardf_test does not depend on a module exporting 'src/__support/CPP/bit.h'
```
2024-09-09 20:34:43 -05:00
lntue
277371943f
[libc][bazel] Update bazel overlay for math functions and their tests. (#107862) 2024-09-09 14:15:46 -04:00
Benjamin Kramer
09c00b6f04 [bazel] Add missing dependencies for 345cc47ba7a28811ae4ec7d113059ccb39c500a3 2024-09-09 13:03:53 +02:00
NAKAMURA Takumi
78fa41524b [bazel] Update deps (#107339) for AMDGPU/InstCombineTableGen
FIXME: Move this to the relevant block.
2024-09-08 19:59:11 +09:00
Jorge Gorbe Moya
9700ca0a30 [bazel] add missing dependencies 2024-09-06 15:48:40 -07:00
Benjamin Kramer
3edd21ba6e [bazel] Add missing dependencies for b8d6885ff67efbc3142a2b49506ed0cc2b95e054 2024-09-06 17:53:44 +02:00
Benjamin Kramer
c782d54f0f [bazel] port 1f70fcefa981e6e2b 2024-09-06 14:57:57 +02:00
Sterling-Augustine
b525ead65c
[SandboxIR] Add bazel support (#107486) 2024-09-05 16:41:18 -07:00
Christian Sigg
df4746d1d0
[bazel] Change cache-silo-key to fix blob fetch issue.
Bazel builds currently fail with `Failed to fetch blobs because they do not exist remotely.`. 

Set a cache-silo-key to start a new cache.
2024-09-03 18:15:27 +02:00
Christian Sigg
a70d999203
[bazel] Attempt to fix issue fetching remote blob
Bazel builds currently fail with `Failed to fetch blobs because they do not exist remotely.`. These extra bazel flags hopefully fix it.
2024-09-03 11:08:33 +02:00
Christian Sigg
e90b21959a
[llvm][bazel] Port 1e65b76 to bazel.
1e65b76587
2024-09-02 13:33:49 +02:00
Danial Klimkin
d6dc7cf71b
Fix bazel build past 89e6a288674c (#106685) 2024-08-30 10:21:55 +02:00
JoelWee
c28b84e30b
Update BUILD.bazel after e37d6d2a74d7 2024-08-29 10:49:59 +01:00
Jakub Kuderski
1bc7057a8e
Revert "[mlir][spirv] Add an argmax integration test with mlir-vulkan-runner" (#106457)
Reverts llvm/llvm-project#106426.

This caused failures on nvidia:
https://lab.llvm.org/buildbot/#/builders/138/builds/2853
2024-08-28 17:27:06 -04:00
Angel Zhang
17b7a9da46
[mlir][spirv] Add an argmax integration test with mlir-vulkan-runner (#106426)
This PR adds an integration test for an argmax kernel with
`mlir-vulkan-runner`. This test exercises the `convert-to-spirv` pass
(landed in #95942) and demonstrates that we can use SPIR-V ops as
"intrinsics" among higher-level dialects.

The support for `index` dialect in `mlir-vulkan-runner` is also added.
2024-08-28 16:29:32 -04:00
Jakub Kuderski
b2f1d06986
[mlir][amdgpu] Improve Chipset version utility (#106169)
* Fix an OOB access
* Add comparison operators
* Add documentation
* Add unit tests
2024-08-28 09:55:38 -04:00
Jordan Rupprecht
c1a4896070
[bazel][test] Add missing transforms test dep (#106323)
For 73c3b7337b0a3a8cb447f9801341d5648aebe9b2
2024-08-27 20:26:11 -05:00
Jordan Rupprecht
82db08e731
[bazel][mlir] Add missing ROCDLTarget srcs/deps (#106322)
For 016e1eb9c86923bf6a9669697f6be8309d12b78c
2024-08-27 20:21:02 -05:00
Jordan Rupprecht
2a3d735f91
[bazel][mlir] Add ConvertToSPIRV dep to mlir-vulkan-runner (#106285)
New dep needed for 2bf2468553f69c72680d138b91046d4c00d2c7a6
2024-08-27 15:54:39 -05:00
Angel Zhang
2bf2468553
[mlir][spirv] Integrate convert-to-spirv into mlir-vulkan-runner (#106082)
**Description**
This PR adds a new option for `convert-to-spirv` pass to clone and
convert only GPU kernel modules for integration testing. The reason for
using pass options instead of two separate passes is that they both
consist of `memref` types conversion and individual dialect patterns,
except they run on different scopes. The PR also replaces the
`gpu-to-spirv` pass with the `convert-to-spirv` pass (with the new
option) in `mlir-vulkan-runner`.

**Future Plan**
Use nesting pass pipelines in `mlir-vulkan-runner` instead of adding
this option.

---------

Co-authored-by: Jakub Kuderski <kubakuderski@gmail.com>
2024-08-27 12:16:54 -04:00
Benjamin Kramer
7fc67b5eb5 [bazel] Port 1387ba48a312b6e9b174d850f8c9a1322f44c623 2024-08-26 20:11:43 +02:00
Keith Smiley
be8ee098c4
[bazel] Move lldb-dap cc_binary to lldb/BUILD.bazel (#105733)
On linux lldb-dap uses the location of the lldb-dap binary to search for
lldb-server. Previously these were produced in different directories
corresponding to the BUILD file paths. It's not ideal that the BUILD
file location matters for the binary at runtime but it doesn't hurt to
have this tool here too like the others.
2024-08-22 18:27:59 -07:00
Chenguang Wang
216d6a0652
[bazel] Fix mlir build broken by 681ae097. (#105552)
The cmake config creates two targets, `MLIRTensorMeshShardingExtensions`
and `MLIRTensorAllExtensions`; but for bazel, with the `Func` dialect we
only have a single `FuncExtensions`. Here I am following the `Func`
dialect convension to only create a single `TensorExtensions`.
2024-08-21 09:54:57 -07:00
Benjamin Kramer
3083459c1d [bazel] Port a3d41879ecf5690a73f9226951d3856c7faa34a4 2024-08-21 11:47:48 +02:00
Benjamin Kramer
019e1a3a42 [bazel] Add missing dependencies for c8a678b1e4863df2845b1305849534047f10caf1 2024-08-20 23:58:20 +02:00