[AMDGPU] Add a debug option `-amdgpu-snop-padding` for `GCNHazardRecognizer`
This can help to identify if there is potential hazards.
Co-authored-by: Byrnes, Jeffrey <Jeffrey.Byrnes at amd.com>
[RFC][NFC][AMDGPU] Remove explicit value assignments from `AMDGPU::GPUKind` (#146567)
We don't seem to rely on the specific values of these enums, so removing
the
explicit assignments simplifies the process of adding new targets.
[WebAssembly] Fix inline assembly with vector types (#146574)
This commit fixes using inline assembly with v128 results. Previously
this failed with an internal assertion about a failure to legalize a
`CopyFromReg` where the source register was typed `v8f16`. It looks like
the type used for the destination register was whatever was listed first
in the `def V128 : WebAssemblyRegClass` listing, so the types were
shuffled around to have a default-supported type.
A small test was added as well which failed to generate previously and
should now pass in generation. This test passed on LLVM 18 additionally
and regressed by accident in #93228 which was first included in LLVM 19.
Driver: Avoid llvm::sys::path::append if resource directory absolute.
After #145996 CLANG_RESOURCE_DIR can be an absolute path so we need to
handle it correctly in the driver.
llvm::sys::path::append does not append absolute paths in the way
that I expected (or consistent with other similar APIs such as C++17
std::filesystem::path::append or Python os.path.join); instead, it
effectively discards the leading / and appends the resulting relative path
(e.g. append(P, "/bar") with P = "/foo" sets P to "/foo/bar").
Many tests start failing if I try to align llvm::sys::path::append with
the other APIs because of callers that expect the existing behavior,
so for now let's add a special case here for absolute resource paths,
and document the behavior in Path.h.
Reviewers: MaskRay
Reviewed By: MaskRay
[2 lines not shown]
[MLIR][Affine] Enhance simplifyAdd for AffineExpr mod (#146492)
Currently AffineExpr Add has ability to optimize `"s1 + (s1 // c * -c)"
to "s1 % c"`,
but can not optimize `"(s0 + s1) + (s1 // c * -c)"`.
This patch provide an opportunity to do this simplification, let it can
be simplified to `"s0 + s1 % c"`.
bc: update to 1.08.2
Remove last vestages of K&R C; this allows gcc-15+ to compile the
code without special options.
Plug a small memory leak in dc.
Some typo and formatting fixes in the documentation.
17335 remove duplicate bool definition from Intel NIC drivers
Reviewed by: Dan McDonald <danmcd at edgecast.io>
Reviewed by: Kyle Simpson <kyle at oxide.computer>
Approved by: Patrick Mooney <pmooney at pfmooney.com>
[lldb] Fix the hardware breakpoint decorator (#146609)
A decorator to skip or XFAIL a test takes effect when the function
that's passed in returns a reason string. The wrappers around
hw_breakpoints_supported were doing that incorrectly by inverting
(calling `not`) on the result, turning it into a boolean, which means
the test is always skipped.