diff options
Diffstat (limited to 'llvm/utils')
12 files changed, 44 insertions, 14 deletions
diff --git a/llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp b/llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp index 10f0213..fd8ddb1 100644 --- a/llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp +++ b/llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp @@ -588,7 +588,12 @@ void RuntimeLibcallEmitter::emitSystemRuntimeLibrarySetCalls( PredicateSorter.insert( PredicateWithCC()); // No predicate or CC override first. + constexpr unsigned BitsPerStorageElt = 64; DenseMap<PredicateWithCC, LibcallsWithCC> Pred2Funcs; + + SmallVector<uint64_t, 32> BitsetValues( + divideCeil(RuntimeLibcallImplDefList.size(), BitsPerStorageElt)); + for (const Record *Elt : *Elements) { const RuntimeLibcallImpl *LibCallImpl = getRuntimeLibcallImpl(Elt); if (!LibCallImpl) { @@ -597,16 +602,24 @@ void RuntimeLibcallEmitter::emitSystemRuntimeLibrarySetCalls( continue; } + size_t BitIdx = LibCallImpl->getEnumVal(); + uint64_t BitmaskVal = uint64_t(1) << (BitIdx % BitsPerStorageElt); + size_t BitsetIdx = BitIdx / BitsPerStorageElt; + auto It = Func2Preds.find(LibCallImpl); if (It == Func2Preds.end()) { + BitsetValues[BitsetIdx] |= BitmaskVal; Pred2Funcs[PredicateWithCC()].LibcallImpls.push_back(LibCallImpl); continue; } for (const Record *Pred : It->second.first) { const Record *CC = It->second.second; - PredicateWithCC Key(Pred, CC); + AvailabilityPredicate SubsetPredicate(Pred); + if (SubsetPredicate.isAlwaysAvailable()) + BitsetValues[BitsetIdx] |= BitmaskVal; + PredicateWithCC Key(Pred, CC); auto &Entry = Pred2Funcs[Key]; Entry.LibcallImpls.push_back(LibCallImpl); Entry.CallingConv = It->second.second; @@ -614,6 +627,22 @@ void RuntimeLibcallEmitter::emitSystemRuntimeLibrarySetCalls( } } + OS << " static constexpr LibcallImplBitset SystemAvailableImpls({\n" + << indent(6); + + ListSeparator LS; + unsigned EntryCount = 0; + for (uint64_t Bits : BitsetValues) { + if (EntryCount++ == 4) { + EntryCount = 1; + OS << ",\n" << indent(6); + } else + OS << LS; + OS << format_hex(Bits, 16); + } + OS << "\n });\n" + " AvailableLibcallImpls = SystemAvailableImpls;\n\n"; + SmallVector<PredicateWithCC, 0> SortedPredicates = PredicateSorter.takeVector(); diff --git a/llvm/utils/docker/example/Dockerfile b/llvm/utils/docker/example/Dockerfile index 197716f..39990c0 100644 --- a/llvm/utils/docker/example/Dockerfile +++ b/llvm/utils/docker/example/Dockerfile @@ -10,7 +10,7 @@ # Stage 1. Check out LLVM source code and run the build. # FIXME: Replace 'ubuntu' with your base image -FROM ubuntu AS builder +FROM docker.io/ubuntu AS builder # FIXME: Change maintainer name LABEL maintainer="Maintainer <maintainer@email>" # FIXME: Install llvm/clang build dependencies here. Including compiler to @@ -29,7 +29,7 @@ RUN /tmp/scripts/build_install_llvm.sh --to /tmp/clang-install ${buildscript_arg # Stage 2. Produce a minimal release image with build results. # FIXME: Replace 'ubuntu' with your base image. -FROM ubuntu +FROM docker.io/ubuntu # FIXME: Change maintainer name. LABEL maintainer="Maintainer <maintainer@email>" # FIXME: Install all packages you want to have in your release container. diff --git a/llvm/utils/docker/nvidia-cuda/Dockerfile b/llvm/utils/docker/nvidia-cuda/Dockerfile index 035c582..f4fb3cc 100644 --- a/llvm/utils/docker/nvidia-cuda/Dockerfile +++ b/llvm/utils/docker/nvidia-cuda/Dockerfile @@ -6,7 +6,7 @@ # #===----------------------------------------------------------------------===// # Stage 1. Check out LLVM source code and run the build. -FROM nvidia/cuda:12.6.3-devel-ubuntu24.04 AS builder +FROM docker.io/nvidia/cuda:12.6.3-devel-ubuntu24.04 AS builder LABEL maintainer="LLVM Developers" # Install llvm build dependencies. RUN apt-get update && \ @@ -26,7 +26,7 @@ RUN /tmp/scripts/build_install_llvm.sh --to /tmp/clang-install ${buildscript_arg # Stage 2. Produce a minimal release image with build results. -FROM nvidia/cuda:12.6.3-devel-ubuntu24.04 +FROM docker.io/nvidia/cuda:12.6.3-devel-ubuntu24.04 LABEL maintainer="LLVM Developers" # Copy clang installation into this container. COPY --from=builder /tmp/clang-install/ /usr/local/ diff --git a/llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/fuchsia/BUILD.gn b/llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/fuchsia/BUILD.gn index ddb9848..48384ef 100644 --- a/llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/fuchsia/BUILD.gn +++ b/llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/fuchsia/BUILD.gn @@ -18,6 +18,7 @@ static_library("fuchsia") { "MultipleInheritanceCheck.cpp", "OverloadedOperatorCheck.cpp", "StaticallyConstructedObjectsCheck.cpp", + "TemporaryObjectsCheck.cpp", "TrailingReturnCheck.cpp", "VirtualInheritanceCheck.cpp", ] diff --git a/llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/zircon/BUILD.gn b/llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/zircon/BUILD.gn index c349414..8195452 100644 --- a/llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/zircon/BUILD.gn +++ b/llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/zircon/BUILD.gn @@ -10,8 +10,5 @@ static_library("zircon") { "//clang/lib/Lex", "//llvm/lib/Support", ] - sources = [ - "TemporaryObjectsCheck.cpp", - "ZirconTidyModule.cpp", - ] + sources = [ "ZirconTidyModule.cpp" ] } diff --git a/llvm/utils/gn/secondary/clang/lib/ASTMatchers/BUILD.gn b/llvm/utils/gn/secondary/clang/lib/ASTMatchers/BUILD.gn index 63bf726..8fe30b8 100644 --- a/llvm/utils/gn/secondary/clang/lib/ASTMatchers/BUILD.gn +++ b/llvm/utils/gn/secondary/clang/lib/ASTMatchers/BUILD.gn @@ -9,7 +9,6 @@ static_library("ASTMatchers") { sources = [ "ASTMatchFinder.cpp", "ASTMatchersInternal.cpp", - "GtestMatchers.cpp", "LowLevelHelpers.cpp", ] } diff --git a/llvm/utils/gn/secondary/clang/unittests/ASTMatchers/BUILD.gn b/llvm/utils/gn/secondary/clang/unittests/ASTMatchers/BUILD.gn index 10f540b..56d3484 100644 --- a/llvm/utils/gn/secondary/clang/unittests/ASTMatchers/BUILD.gn +++ b/llvm/utils/gn/secondary/clang/unittests/ASTMatchers/BUILD.gn @@ -17,6 +17,5 @@ unittest("ASTMatchersTests") { "ASTMatchersNarrowingTest.cpp", "ASTMatchersNodeTest.cpp", "ASTMatchersTraversalTest.cpp", - "GtestMatchersTest.cpp", ] } diff --git a/llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn b/llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn index 2208ae5..c89e335 100644 --- a/llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn +++ b/llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn @@ -202,6 +202,7 @@ static_library("LLVMAMDGPUCodeGen") { "AMDGPUTargetMachine.cpp", "AMDGPUTargetObjectFile.cpp", "AMDGPUTargetTransformInfo.cpp", + "AMDGPUUniformIntrinsicCombine.cpp", "AMDGPUUnifyDivergentExitNodes.cpp", "AMDGPUWaitSGPRHazards.cpp", "GCNCreateVOPD.cpp", diff --git a/llvm/utils/gn/secondary/llvm/unittests/ADT/BUILD.gn b/llvm/utils/gn/secondary/llvm/unittests/ADT/BUILD.gn index 92e596e..8d19d30 100644 --- a/llvm/utils/gn/secondary/llvm/unittests/ADT/BUILD.gn +++ b/llvm/utils/gn/secondary/llvm/unittests/ADT/BUILD.gn @@ -21,6 +21,7 @@ unittest("ADTTests") { "BitTest.cpp", "BitVectorTest.cpp", "BitmaskEnumTest.cpp", + "BitsetTest.cpp", "BreadthFirstIteratorTest.cpp", "BumpPtrListTest.cpp", "CoalescingBitVectorTest.cpp", diff --git a/llvm/utils/lit/tests/xunit-output-report-failures-only.py b/llvm/utils/lit/tests/xunit-output-report-failures-only.py index e15fd6a..c331578 100644 --- a/llvm/utils/lit/tests/xunit-output-report-failures-only.py +++ b/llvm/utils/lit/tests/xunit-output-report-failures-only.py @@ -5,7 +5,7 @@ # CHECK: <?xml version="1.0" encoding="UTF-8"?> # CHECK-NEXT: <testsuites time="{{[0-9.]+}}"> # CHECK-NEXT: <testsuite name="test-data" tests="1" failures="1" skipped="0" time="{{[0-9.]+}}"> -# CHECK-NEXT: <testcase classname="test-data.test-data" name="bad&name.ini" time="{{[0-1]\.[0-9]+}}"> +# CHECK-NEXT: <testcase classname="test-data.test-data" name="bad&name.ini" time="{{[0-9.]+}}"> # CHECK-NEXT: <failure><![CDATA[& < > ]]]]><![CDATA[> &"]]></failure> # CHECK-NEXT: </testcase> # CHECK-NEXT: </testsuite> diff --git a/llvm/utils/llvm-test-mustache-spec/llvm-test-mustache-spec.cpp b/llvm/utils/llvm-test-mustache-spec/llvm-test-mustache-spec.cpp index 9007eb3..93e2efe 100644 --- a/llvm/utils/llvm-test-mustache-spec/llvm-test-mustache-spec.cpp +++ b/llvm/utils/llvm-test-mustache-spec/llvm-test-mustache-spec.cpp @@ -212,7 +212,10 @@ static void runTest(StringRef InputFile) { for (Value V : *TestArray) { auto TestData = ExitOnErr(TestData::createTestData(V.getAsObject(), InputFile)); - Template T(TestData.TemplateStr); + BumpPtrAllocator Allocator; + StringSaver Saver(Allocator); + MustacheContext Ctx(Allocator, Saver); + Template T(TestData.TemplateStr, Ctx); registerPartials(TestData.Partials, T); std::string ActualStr; diff --git a/llvm/utils/profcheck-xfail.txt b/llvm/utils/profcheck-xfail.txt index 74ed172..f101624 100644 --- a/llvm/utils/profcheck-xfail.txt +++ b/llvm/utils/profcheck-xfail.txt @@ -10,6 +10,7 @@ CodeGen/AArch64/llvm-masked-gather-legal-for-sve.ll CodeGen/AArch64/llvm-masked-scatter-legal-for-sve.ll CodeGen/AArch64/selectopt-cast.ll CodeGen/AArch64/selectopt.ll +CodeGen/AMDGPU/amdgpu-attributor-min-agpr-alloc.ll CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll CodeGen/AMDGPU/amdgpu-codegenprepare-fdiv.ll CodeGen/AMDGPU/amdgpu-codegenprepare-sqrt.ll @@ -915,7 +916,6 @@ Transforms/InstCombine/select_frexp.ll Transforms/InstCombine/select.ll Transforms/InstCombine/select-min-max.ll Transforms/InstCombine/select-of-symmetric-selects.ll -Transforms/InstCombine/select-safe-bool-transforms.ll Transforms/InstCombine/select-safe-impliedcond-transforms.ll Transforms/InstCombine/select-safe-transforms.ll Transforms/InstCombine/select-select.ll |