[llvm-branch-commits] [llvm] [SPARC][MC] Add tests for VIS family instructions (PR #130967)
https://github.com/koachan updated https://github.com/llvm/llvm-project/pull/130967 >From e2e0d44800b65a8fbddd6234c2ee9f83af92d7da Mon Sep 17 00:00:00 2001 From: Koakuma Date: Wed, 12 Mar 2025 21:14:42 +0700 Subject: [PATCH 1/3] Add missing NO-VIS lines Created using spr 1.3.5 --- llvm/test/MC/Sparc/sparc-vis.s | 11 +++ 1 file changed, 11 insertions(+) diff --git a/llvm/test/MC/Sparc/sparc-vis.s b/llvm/test/MC/Sparc/sparc-vis.s index bf01da19293d0..bed901b6a7272 100644 --- a/llvm/test/MC/Sparc/sparc-vis.s +++ b/llvm/test/MC/Sparc/sparc-vis.s @@ -199,28 +199,39 @@ fcmpeq16 %f0, %f2, %o0 ! VIS: fcmpeq32 %f0, %f2, %o0 ! encoding: [0x91,0xb0,0x05,0xc2] fcmpeq32 %f0, %f2, %o0 +! NO-VIS: error: instruction requires a CPU feature not currently enabled ! VIS: edge8 %o0, %o1, %o2 ! encoding: [0x95,0xb2,0x00,0x09] edge8 %o0, %o1, %o2 +! NO-VIS: error: instruction requires a CPU feature not currently enabled ! VIS: edge8l %o0, %o1, %o2! encoding: [0x95,0xb2,0x00,0x49] edge8l %o0, %o1, %o2 +! NO-VIS: error: instruction requires a CPU feature not currently enabled ! VIS: edge16 %o0, %o1, %o2! encoding: [0x95,0xb2,0x00,0x89] edge16 %o0, %o1, %o2 +! NO-VIS: error: instruction requires a CPU feature not currently enabled ! VIS: edge16l %o0, %o1, %o2 ! encoding: [0x95,0xb2,0x00,0xc9] edge16l %o0, %o1, %o2 +! NO-VIS: error: instruction requires a CPU feature not currently enabled ! VIS: edge32 %o0, %o1, %o2! encoding: [0x95,0xb2,0x01,0x09] edge32 %o0, %o1, %o2 +! NO-VIS: error: instruction requires a CPU feature not currently enabled ! VIS: edge32l %o0, %o1, %o2 ! encoding: [0x95,0xb2,0x01,0x49] edge32l %o0, %o1, %o2 +! NO-VIS: error: instruction requires a CPU feature not currently enabled ! VIS: pdist %f0, %f2, %f4 ! encoding: [0x89,0xb0,0x07,0xc2] pdist %f0, %f2, %f4 +! NO-VIS: error: instruction requires a CPU feature not currently enabled ! VIS: array8 %o0, %o1, %o2! encoding: [0x95,0xb2,0x02,0x09] array8 %o0, %o1, %o2 +! NO-VIS: error: instruction requires a CPU feature not currently enabled ! VIS: array16 %o0, %o1, %o2 ! encoding: [0x95,0xb2,0x02,0x49] array16 %o0, %o1, %o2 +! NO-VIS: error: instruction requires a CPU feature not currently enabled ! VIS: array32 %o0, %o1, %o2 ! encoding: [0x95,0xb2,0x02,0x89] array32 %o0, %o1, %o2 +! NO-VIS: error: instruction requires a CPU feature not currently enabled ! VIS: shutdown! encoding: [0x81,0xb0,0x10,0x00] shutdown >From b98295fcdaa9fc1d6a839956c304dd5a7d31cc24 Mon Sep 17 00:00:00 2001 From: Koakuma Date: Wed, 12 Mar 2025 22:27:36 +0700 Subject: [PATCH 2/3] Fix typo in comment Created using spr 1.3.5 --- llvm/lib/Target/Sparc/SparcInstrVIS.td | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/llvm/lib/Target/Sparc/SparcInstrVIS.td b/llvm/lib/Target/Sparc/SparcInstrVIS.td index 6d0f12da3afcf..fbf56ae22cd30 100644 --- a/llvm/lib/Target/Sparc/SparcInstrVIS.td +++ b/llvm/lib/Target/Sparc/SparcInstrVIS.td @@ -7,7 +7,7 @@ //===--===// // // This file contains instruction formats, definitions and patterns needed for -// VIS, VIS II, VIS II instructions on SPARC. +// VIS, VIS II, VIS III instructions on SPARC. //===--===// // VIS Instruction Format. >From 618c4853f63fa60bd6d6d0e9ec69d6149e2b2137 Mon Sep 17 00:00:00 2001 From: Koakuma Date: Sun, 23 Mar 2025 20:51:40 +0700 Subject: [PATCH 3/3] Apply suggestions Created using spr 1.3.5 --- llvm/lib/Target/Sparc/SparcInstrFormats.td | 4 ++-- llvm/lib/Target/Sparc/SparcInstrInfo.td| 3 ++- llvm/lib/Target/Sparc/SparcInstrVIS.td | 2 +- llvm/test/MC/Sparc/sparc-vis.s | 2 +- llvm/test/MC/Sparc/sparc-vis2.s| 2 +- llvm/test/MC/Sparc/sparc-vis3.s| 2 +- 6 files changed, 8 insertions(+), 7 deletions(-) diff --git a/llvm/lib/Target/Sparc/SparcInstrFormats.td b/llvm/lib/Target/Sparc/SparcInstrFormats.td index 7d32cd8e5671b..3ddb485923fcc 100644 --- a/llvm/lib/Target/Sparc/SparcInstrFormats.td +++ b/llvm/lib/Target/Sparc/SparcInstrFormats.td @@ -205,7 +205,7 @@ class F3_3c opVal, bits<6> op3val, bits<9> opfval, dag outs, dag ins, class F3_3_siam opVal, bits<6> op3val, bits<9> opfval, dag outs, dag ins, string asmstr, list pattern, InstrItinClass itin = NoItinerary> : F3 { - bits<3> siam_mode; + bits<3> uimm3; let op = opVal; let op3= op3val; @@ -213,7 +213,7 @@ class F3_3_siam opVal, bits<6> op3val, bits<9> opfval, dag outs, dag ins let rs1= 0; let Inst{13-5} = opfval; // fp opcode let Inst{4-3} = 0; - let Inst{2-0} = siam_mode; + let Inst{2-0} = uimm3; } //
[llvm-branch-commits] [BOLT][NFC] Pass JumpTable to analyzeJumpTable (PR #132110)
https://github.com/aaupov updated https://github.com/llvm/llvm-project/pull/132110 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [RISCV] Replace @plt/@gotpcrel in data directives with %plt %gotpcrel (PR #132569)
@@ -18,6 +18,6 @@ .globl _start _start: .data - .word foo@PLT - . - .word foo@PLT - . + 1 - .word foo@PLT - . - 1 + .word %plt(foo - .) lenary wrote: Yeah I don't like `%plt(foo - .)`, because the thing being put into the instruction is really the difference between foo's PLT entry's address, and the current address (rather than a PLT entry for the difference between foo and the current address). I would much prefer `%pltpcrel(foo)` if `%plt(foo)-.` is not a direction you are happy with, given the existing `%gotpcrel(foo)` means the difference between the current address and foo's GOT entry's address. https://github.com/llvm/llvm-project/pull/132569 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [RISCV] Replace @plt/@gotpcrel in data directives with %pltpcrel %gotpcrel (PR #132569)
https://github.com/MaskRay edited https://github.com/llvm/llvm-project/pull/132569 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [RISCV] Replace @plt/@gotpcrel in data directives with %plt %gotpcrel (PR #132569)
@@ -18,6 +18,6 @@ .globl _start _start: .data - .word foo@PLT - . - .word foo@PLT - . + 1 - .word foo@PLT - . - 1 + .word %plt(foo - .) MaskRay wrote: The IR doesn't model the current location (DOT). Instead, It computes `SymA-SymB+offset`. `SymB` might not be the current location, but it and the current location must be in the same section. Let's use `llvm/test/CodeGen/X86/x86-64-plt-relative-reloc.ll` (legacy; but slightly better than `dso_local_equivalent.ll`): ``` @vtable = constant [5 x i32] [i32 0, i32 trunc (i64 sub (i64 ptrtoint (ptr @fn1 to i64), i64 ptrtoint (ptr getelementptr ([5 x i32], ptr @vtable, i32 0, i32 1) to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint (ptr @fn2 to i64), i64 ptrtoint (ptr getelementptr ([5 x i32], ptr @vtable, i32 0, i32 1) to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint (ptr @fn3 to i64), i64 ptrtoint (ptr getelementptr ([5 x i32], ptr @vtable, i32 0, i32 1) to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint (ptr @global4 to i64), i64 ptrtoint (ptr getelementptr ([5 x i32], ptr @vtable, i32 0, i32 1) to i64)) to i32) ] ``` If we need to emit `%pltpcrel`, we will have to change `AsmPrinter::lowerConstant` to know the base GlobalVariable, which might be possible... https://github.com/llvm/llvm-project/pull/132569 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [mlir] [mlir] Decouple enum generation from attributes, adding EnumInfo and EnumCase (PR #132148)
https://github.com/krzysz00 edited https://github.com/llvm/llvm-project/pull/132148 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [mlir] [mlir] Decouple enum generation from attributes, adding EnumInfo and EnumCase (PR #132148)
@@ -128,8 +143,95 @@ namespace llvm { inline ::llvm::raw_ostream &operator<<(::llvm::raw_ostream &p, {0} value) {{ auto valueStr = stringifyEnum(value); )"; - os << formatv(parsedAndPrinterStart, qualName, cppNamespace, -enumAttr.getSummary()); + + const char *parsedAndPrinterStartUnquotedBitEnum = R"( + namespace mlir { + template + struct FieldParser; + + template<> + struct FieldParser<{0}, {0}> {{ krzysz00 wrote: There's a FieldParser implementation above that's the old-style bit enum. It's handled by always quoting bit enum values that have more than one bit set. Usually, these FieldParser values were very much unused, as there are separate parser implementatinos both in `EnumParameter` and in other bits of `mlir-tblgen` that mean this code was basically never called. https://github.com/llvm/llvm-project/pull/132148 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [RISCV] Replace @plt/@gotpcrel in data directives with %plt %gotpcrel (PR #132569)
@@ -18,6 +18,6 @@ .globl _start _start: .data - .word foo@PLT - . - .word foo@PLT - . + 1 - .word foo@PLT - . - 1 + .word %plt(foo - .) jrtc27 wrote: Well my overarching point would be that user-facing syntax should not be beholden to arbitrary historic implementation choices. If it's truly impossible to make it work then that's one thing, but I doubt that to be the case. https://github.com/llvm/llvm-project/pull/132569 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [lld] [lld][LoongArch] Convert TLS IE to LE in the normal or medium code model (PR #123680)
ylzsx wrote: @MaskRay @xen0n Could you help me review the code? https://github.com/llvm/llvm-project/pull/123680 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [mlir] [mlir] Improve EnumProp, making it take an EnumInfo (PR #132349)
https://github.com/krzysz00 updated https://github.com/llvm/llvm-project/pull/132349 >From b7e84740dbe3795a87deb0e7b7fe5d92d181f7b1 Mon Sep 17 00:00:00 2001 From: Krzysztof Drewniak Date: Thu, 20 Mar 2025 23:08:31 -0700 Subject: [PATCH] [mlir] Improve EnumProp, making it take an EnumInfo This commit improves the `EnumProp` class, causing it to wrap around an `EnumInfo` just like` EnumAttr` does. This EnumProp also has logic for converting to/from an integer attribute and for being read and written as bitcode. The following variants of `EnumProp` are provided: - `EnumPropWithAttrForm` - an EnumProp that can be constructed from (and will be converted to, if `storeInCustomAttribute` is true) a custom attribute, like an `EnumAttr`, instead of a plain integer. This is meant for backwards compatibility with code that uses enum attributes. `NamedEnumProp` adds a "`mnemonic` `<` $enum `>`" syntax around the enum, replicating a common pattern seen in MLIR printers and allowing for reduced ambiguity. `NamedEnumPropWithAttrForm` combines both of these extensions. (Sadly, bitcode auto-upgrade is hampered by the lack of the ability to optionally parse an attribute.) --- mlir/include/mlir/Dialect/LLVMIR/LLVMEnums.td | 14 +- mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td | 8 +- mlir/include/mlir/IR/EnumAttr.td | 134 ++ mlir/include/mlir/IR/Properties.td| 19 --- mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp| 64 - mlir/test/IR/enum-attr-invalid.mlir | 75 ++ mlir/test/IR/enum-attr-roundtrip.mlir | 45 ++ mlir/test/lib/Dialect/Test/TestOps.td | 46 ++ 8 files changed, 313 insertions(+), 92 deletions(-) diff --git a/mlir/include/mlir/Dialect/LLVMIR/LLVMEnums.td b/mlir/include/mlir/Dialect/LLVMIR/LLVMEnums.td index a9de787806452..34a30a00790ea 100644 --- a/mlir/include/mlir/Dialect/LLVMIR/LLVMEnums.td +++ b/mlir/include/mlir/Dialect/LLVMIR/LLVMEnums.td @@ -485,17 +485,16 @@ def DISubprogramFlags : I32BitEnumAttr< // IntegerOverflowFlags //===--===// -def IOFnone : I32BitEnumAttrCaseNone<"none">; -def IOFnsw : I32BitEnumAttrCaseBit<"nsw", 0>; -def IOFnuw : I32BitEnumAttrCaseBit<"nuw", 1>; +def IOFnone : I32BitEnumCaseNone<"none">; +def IOFnsw : I32BitEnumCaseBit<"nsw", 0>; +def IOFnuw : I32BitEnumCaseBit<"nuw", 1>; -def IntegerOverflowFlags : I32BitEnumAttr< +def IntegerOverflowFlags : I32BitEnum< "IntegerOverflowFlags", "LLVM integer overflow flags", [IOFnone, IOFnsw, IOFnuw]> { let separator = ", "; let cppNamespace = "::mlir::LLVM"; - let genSpecializedAttr = 0; let printBitEnumPrimaryGroups = 1; } @@ -504,6 +503,11 @@ def LLVM_IntegerOverflowFlagsAttr : let assemblyFormat = "`<` $value `>`"; } +def LLVM_IntegerOverflowFlagsProp : +NamedEnumPropWithAttrForm { + let defaultValue = enum.cppType # "::" # "none"; +} + //===--===// // FastmathFlags //===--===// diff --git a/mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td b/mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td index 90cc851c0a3b2..75f23e5b46c5f 100644 --- a/mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td +++ b/mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td @@ -60,7 +60,7 @@ class LLVM_IntArithmeticOpWithOverflowFlag traits = []> : LLVM_ArithmeticOpBase], traits)> { - dag iofArg = (ins EnumProp<"IntegerOverflowFlags", "", "IntegerOverflowFlags::none">:$overflowFlags); + dag iofArg = (ins LLVM_IntegerOverflowFlagsProp:$overflowFlags); let arguments = !con(commonArgs, iofArg); string mlirBuilder = [{ @@ -69,7 +69,7 @@ class LLVM_IntArithmeticOpWithOverflowFlag($overflowFlags) attr-dict `:` type($res) +$lhs `,` $rhs ($overflowFlags^)? attr-dict `:` type($res) }]; string llvmBuilder = "$res = builder.Create" # instName # @@ -563,10 +563,10 @@ class LLVM_CastOpWithOverflowFlag traits = []> : LLVM_Op], traits)>, LLVM_Builder<"$res = builder.Create" # instName # "($arg, $_resultType, /*Name=*/\"\", op.hasNoUnsignedWrap(), op.hasNoSignedWrap());"> { - let arguments = (ins type:$arg, EnumProp<"IntegerOverflowFlags", "", "IntegerOverflowFlags::none">:$overflowFlags); + let arguments = (ins type:$arg, LLVM_IntegerOverflowFlagsProp:$overflowFlags); let results = (outs resultType:$res); let builders = [LLVM_OneResultOpBuilder]; - let assemblyFormat = "$arg `` custom($overflowFlags) attr-dict `:` type($arg) `to` type($res)"; + let assemblyFormat = "$arg ($overflowFlags^)? attr-dict `:` type($arg) `to` type($res)"; string llvmInstName = instName; string mlirBuilder = [{ auto op = $_builder.create<$_qualCppClassName>( diff --git a/mlir/include/mlir/IR/EnumAttr.td b/mlir/include/mlir/IR/EnumAttr.td index e5406546b1950..aedda1d952eb6 100644 --- a/mlir/include/mlir/
[llvm-branch-commits] [mlir] [mlir] Decouple enum generation from attributes, adding EnumInfo and EnumCase (PR #132148)
@@ -66,20 +67,34 @@ static void emitEnumClass(const Record &enumDef, StringRef enumName, os << "};\n\n"; } -static void emitParserPrinter(const EnumAttr &enumAttr, StringRef qualName, +static void emitParserPrinter(const EnumInfo &enumInfo, StringRef qualName, StringRef cppNamespace, raw_ostream &os) { - if (enumAttr.getUnderlyingType().empty() || - enumAttr.getConstBuilderTemplate().empty()) + std::optional enumAttrInfo = enumInfo.asEnumAttr(); + if (enumInfo.getUnderlyingType().empty() || + (enumAttrInfo && enumAttrInfo->getConstBuilderTemplate().empty())) return; - auto cases = enumAttr.getAllCases(); + auto cases = enumInfo.getAllCases(); // Check which cases shouldn't be printed using a keyword. llvm::BitVector nonKeywordCases(cases.size()); - for (auto [index, caseVal] : llvm::enumerate(cases)) -if (!mlir::tblgen::canFormatStringAsKeyword(caseVal.getStr())) + std::string casesList; + llvm::raw_string_ostream caseListOs(casesList); + caseListOs << "["; + for (auto [index, caseVal] : llvm::enumerate(cases)) { +if (index != 0) krzysz00 wrote: Looks like I can, yeah https://github.com/llvm/llvm-project/pull/132148 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [RISCV] Replace @plt/@gotpcrel in data directives with %pltpcrel %gotpcrel (PR #132569)
@@ -2289,25 +2314,6 @@ bool TargetLoweringObjectFileWasm::shouldPutJumpTableInFunctionSection( return false; } -const MCExpr *TargetLoweringObjectFileWasm::lowerRelativeReference( MaskRay wrote: I'll pre-commit this. wasm and xcoff did cargo culting and added the unneeded functions. https://github.com/llvm/llvm-project/pull/132569 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [CI] Move CI over to new project computation script (PR #132642)
llvmbot wrote: @llvm/pr-subscribers-github-workflow Author: Aiden Grossman (boomanaiden154) Changes This patch migrates the CI over to the new compute_projects.py script for calculating what projects need to be tested based on a change to LLVM. --- Full diff: https://github.com/llvm/llvm-project/pull/132642.diff 3 Files Affected: - (removed) .ci/compute-projects.sh (-194) - (modified) .ci/generate-buildkite-pipeline-premerge (+8-14) - (modified) .github/workflows/premerge.yaml (+19-71) ``diff diff --git a/.ci/compute-projects.sh b/.ci/compute-projects.sh deleted file mode 100644 index 32baf26b4f0a0..0 --- a/.ci/compute-projects.sh +++ /dev/null @@ -1,194 +0,0 @@ -#!/usr/bin/env bash -#===--===## -# -# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -# See https://llvm.org/LICENSE.txt for license information. -# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -# -#===--===## - -# -# This file contains functions to compute which projects should be built by CI -# systems and is intended to provide common functionality applicable across -# multiple systems during a transition period. -# - -function compute-projects-to-test() { - isForWindows=$1 - shift - projects=${@} - for project in ${projects}; do -echo "${project}" -case ${project} in -lld) - for p in bolt cross-project-tests; do -echo $p - done -;; -llvm) - for p in bolt clang clang-tools-extra lld lldb mlir polly; do -echo $p - done - # Flang is not stable in Windows CI at the moment - if [[ $isForWindows == 0 ]]; then -echo flang - fi -;; -clang) - # lldb is temporarily removed to alleviate Linux pre-commit CI waiting times - for p in clang-tools-extra compiler-rt cross-project-tests; do -echo $p - done -;; -clang-tools-extra) - echo libc -;; -mlir) - # Flang is not stable in Windows CI at the moment - if [[ $isForWindows == 0 ]]; then -echo flang - fi -;; -*) - # Nothing to do -;; -esac - done -} - -function compute-runtimes-to-test() { - projects=${@} - for project in ${projects}; do -case ${project} in -clang) - for p in libcxx libcxxabi libunwind; do -echo $p - done -;; -*) - # Nothing to do -;; -esac - done -} - -function add-dependencies() { - projects=${@} - for project in ${projects}; do -echo "${project}" -case ${project} in -bolt) - for p in clang lld llvm; do -echo $p - done -;; -cross-project-tests) - for p in lld clang; do -echo $p - done -;; -clang-tools-extra) - for p in llvm clang; do -echo $p - done -;; -compiler-rt|libc|openmp) - echo clang lld -;; -flang|lldb|libclc) - for p in llvm clang; do -echo $p - done -;; -lld|mlir|polly) - echo llvm -;; -*) - # Nothing to do -;; -esac - done -} - -function exclude-linux() { - projects=${@} - for project in ${projects}; do -case ${project} in -cross-project-tests) ;; # tests failing -openmp) ;; # https://github.com/google/llvm-premerge-checks/issues/410 -*) - echo "${project}" -;; -esac - done -} - -function exclude-windows() { - projects=${@} - for project in ${projects}; do -case ${project} in -cross-project-tests) ;; # tests failing -compiler-rt) ;; # tests taking too long -openmp) ;; # TODO: having trouble with the Perl installation -libc);; # no Windows support -lldb);; # custom environment requirements (https://github.com/llvm/llvm-project/pull/94208#issuecomment-2146256857) -bolt);; # tests are not supported yet -*) - echo "${project}" -;; -esac - done -} - -# Prints only projects that are both present in $modified_dirs and the passed -# list. -function keep-modified-projects() { - projects=${@} - for project in ${projects}; do -if echo "$modified_dirs" | grep -q -E "^${project}$"; then - echo "${project}" -fi - done -} - -function check-targets() { - # Do not use "check-all" here because if there is "check-all" plus a - # project specific target like "check-clang", that project's tests - # will be run twice. - projects=${@} - for project in ${projects}; do -case ${project} in -clang-tools-extra) - echo "check-clang-tools" -;; -compiler-rt) - echo "check-compiler-rt" -;; -cross-project-tests) - echo "check-cross-project" -;; -libcxx) - echo "check-cxx" -;; -libcxxabi) - echo "check-cxxabi" -;; -libunwind) - echo "check-unwind" -;; -
[llvm-branch-commits] [RISCV] Replace @plt/@gotpcrel in data directives with %pltpcrel %gotpcrel (PR #132569)
https://github.com/MaskRay updated https://github.com/llvm/llvm-project/pull/132569 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [RISCV] Replace @plt/@gotpcrel in data directives with %pltpcrel %gotpcrel (PR #132569)
https://github.com/MaskRay updated https://github.com/llvm/llvm-project/pull/132569 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
[llvm-branch-commits] [llvm] [YAML] fix output incorrect format for block scalar string (PR #131694)
HerrCai0907 wrote: ping @thurstond https://github.com/llvm/llvm-project/pull/131694 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits