llvm17/llvm-workaround-superfluous-branches.patch
Aaron Puchert b497fbd409 Accepting request 1112838 from home:aaronpuchert:llvm-next
- Initial release based on version 17.0.1.
  * For details, see the release notes:
    - https://releases.llvm.org/17.0.1/docs/ReleaseNotes.html
    - https://releases.llvm.org/17.0.1/tools/clang/docs/ReleaseNotes.html
    - https://releases.llvm.org/17.0.1/tools/clang/tools/extra/docs/ReleaseNotes.html
    - https://releases.llvm.org/17.0.1/projects/libcxx/docs/ReleaseNotes.html
    - https://releases.llvm.org/17.0.1/tools/lld/docs/ReleaseNotes.html
- Rebase patches:
  * libcxx-test-library-path.patch
  * llvm_build_tablegen_component_as_shared_library.patch
  * llvm-do-not-install-static-libraries.patch
  * llvm-normally-versioned-libllvm.patch
  * llvm-remove-clang-only-flags.patch
  * opt-viewer-Find-style-css-in-usr-share.patch
- Simplify check-no-llvm-exegesis.patch by removing test directory.
- Drop patches that have landed upstream:
  * openmp-drop-rpath.patch
- Add openmp-dont-run-gpu-arch.patch: the binaries are not
  available in our build, and neither are the toolchains they test
  for (NV CUDA and AMD HSA).

OBS-URL: https://build.opensuse.org/request/show/1112838
OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm17?expand=0&rev=1
2023-09-21 15:06:33 +00:00

15 lines
567 B
Diff

diff --git a/llvm/include/llvm/Support/Casting.h b/llvm/include/llvm/Support/Casting.h
index 4ff5865..19623f6 100644
--- a/llvm/include/llvm/Support/Casting.h
+++ b/llvm/include/llvm/Support/Casting.h
@@ -661,6 +661,9 @@ template <typename To, typename From>
template <typename To, typename From>
[[nodiscard]] inline decltype(auto) dyn_cast(From *Val) {
assert(detail::isPresent(Val) && "dyn_cast on a non-existent value");
+#if defined(__clang__) && defined(NDEBUG)
+ __builtin_assume(Val);
+#endif
return CastInfo<To, From *>::doCastIfPossible(Val);
}