Page MenuHomePhabricator
Feed Advanced Search

Today

craig.topper added inline comments to D100769: [RISCV] Optimize addition with immediate.
Mon, Apr 19, 9:18 AM · Restricted Project

Yesterday

craig.topper committed rGb7ddd45081a0: [TableGen] Pass SmallVector to union_modes instead of returning a std::vector. (authored by craig.topper).
[TableGen] Pass SmallVector to union_modes instead of returning a std::vector.
Sun, Apr 18, 4:01 PM
craig.topper committed rGf08b171b1874: [TableGen] Use MachineValueTypeSet in place of SmallSet. (authored by craig.topper).
[TableGen] Use MachineValueTypeSet in place of SmallSet.
Sun, Apr 18, 1:39 PM
craig.topper committed rGf1aaa306ee6c: [TableGen] Use range-based for loop. NFC (authored by craig.topper).
[TableGen] Use range-based for loop. NFC
Sun, Apr 18, 12:45 PM

Sat, Apr 17

craig.topper committed rGa5e579cc2b8d: [TableGen] Remove local SmallSet from TypeSetByHwMode::insert. (authored by craig.topper).
[TableGen] Remove local SmallSet from TypeSetByHwMode::insert.
Sat, Apr 17, 10:49 AM
craig.topper updated the diff for D100691: [TableGen] Store predicates in PatternToMatch as ListInit *. Add string for HwModeFeatures.

Have caller create the SmallVector and pass by reference. This is much more common in the code base.

Sat, Apr 17, 10:20 AM · Restricted Project
craig.topper added a comment to D100691: [TableGen] Store predicates in PatternToMatch as ListInit *. Add string for HwModeFeatures.

I presume this passes all the TableGen tests.

How else did you test it? Knowing this may help me in the future.

Sat, Apr 17, 10:07 AM · Restricted Project

Fri, Apr 16

craig.topper updated the diff for D100695: [TableGen] Remove predicate filtering from GenerateVariants..

Remove the HwModeFeature check. We're running this before HwMode expansion. Just assert that the string is empty.

Fri, Apr 16, 11:46 PM · Restricted Project
craig.topper updated the diff for D100695: [TableGen] Remove predicate filtering from GenerateVariants..

Add the HwModeFeatures comparison I accidentally removed.

Fri, Apr 16, 10:41 PM · Restricted Project
craig.topper requested review of D100695: [TableGen] Remove predicate filtering from GenerateVariants..
Fri, Apr 16, 10:24 PM · Restricted Project
craig.topper committed rGa623051dc301: [TableGen] Replace two SmallDenseSets with SmallSets. (authored by craig.topper).
[TableGen] Replace two SmallDenseSets with SmallSets.
Fri, Apr 16, 5:58 PM
craig.topper updated the summary of D100691: [TableGen] Store predicates in PatternToMatch as ListInit *. Add string for HwModeFeatures.
Fri, Apr 16, 4:10 PM · Restricted Project
craig.topper requested review of D100691: [TableGen] Store predicates in PatternToMatch as ListInit *. Add string for HwModeFeatures.
Fri, Apr 16, 4:10 PM · Restricted Project
craig.topper committed rGbe0ffbb21f66: [TableGen] Run GenerateVariants before ExpandHwModeBasedTypes. (authored by craig.topper).
[TableGen] Run GenerateVariants before ExpandHwModeBasedTypes.
Fri, Apr 16, 3:08 PM
craig.topper accepted D100616: [clang][NFC] Fix a potential assert failure.

LGTM. Thanks for removing the NEON and SVE.

Fri, Apr 16, 2:32 PM · Restricted Project
craig.topper requested review of D100687: [Hexagon] Use 'not' instead of 'vnot' in patterns with vectors..
Fri, Apr 16, 2:28 PM · Restricted Project
craig.topper committed rG6b446310bef9: [TableGen] Predicate::operator== needs to compare the HwMode feature name in… (authored by craig.topper).
[TableGen] Predicate::operator== needs to compare the HwMode feature name in…
Fri, Apr 16, 1:23 PM
craig.topper added inline comments to D99158: [RISCV][WIP] Implement intrinsics for P extension.
Fri, Apr 16, 9:41 AM · Restricted Project, Restricted Project
craig.topper added a comment to D99158: [RISCV][WIP] Implement intrinsics for P extension.

Also can you please explain the vector codegen plan at a high level? Do you intend to support auto vectorization or just using vector_size in C?

Fri, Apr 16, 9:27 AM · Restricted Project, Restricted Project
craig.topper added inline comments to D99158: [RISCV][WIP] Implement intrinsics for P extension.
Fri, Apr 16, 9:26 AM · Restricted Project, Restricted Project
craig.topper accepted D100549: [RISCV] Lower vector shuffles to vrgather operations.

LGTM

Fri, Apr 16, 9:17 AM · Restricted Project
craig.topper accepted D100617: [RISCV][Clang] Drop the assembly tests for RVV intrinsics..

LGTM

Fri, Apr 16, 9:13 AM · Restricted Project
craig.topper accepted D100391: [RISCV][Clang] Add RVV miscellaneous intrinsic functions..

LGTM

Fri, Apr 16, 9:09 AM · Restricted Project

Thu, Apr 15

craig.topper requested review of D100618: [RISCV] Pad v4i1/v2i1/v1i1 stores with 0s to make a full byte..
Thu, Apr 15, 9:20 PM · Restricted Project
craig.topper added a comment to D100616: [clang][NFC] Fix a potential assert failure.

SVE::FirstTSBuiltin is 8148, the largest.

Isn't SVE::FirstTSBuiltin used to start AArch64's builtins list. So shouldn't AArch64::LastTSBuiltin be larger?

You are right. I misspoke. AArch64::LastTSBuiltin is 8328.

Thu, Apr 15, 9:09 PM · Restricted Project
craig.topper added a comment to D100616: [clang][NFC] Fix a potential assert failure.

SVE::FirstTSBuiltin is 8148, the largest.

Thu, Apr 15, 8:59 PM · Restricted Project
craig.topper updated the summary of D100611: [RISCV] Add new attribute __clang_riscv_builtin_alias for intrinsics..
Thu, Apr 15, 6:39 PM · Restricted Project
craig.topper updated the summary of D100611: [RISCV] Add new attribute __clang_riscv_builtin_alias for intrinsics..
Thu, Apr 15, 6:39 PM · Restricted Project
craig.topper updated the summary of D100611: [RISCV] Add new attribute __clang_riscv_builtin_alias for intrinsics..
Thu, Apr 15, 6:38 PM · Restricted Project
craig.topper accepted D99362: Verify the LLVMContext for Attributes..

LGTM

Thu, Apr 15, 5:21 PM · Restricted Project
craig.topper added a reviewer for D99585: [X86] add dwarf information for loop stack probe: pengfei.
Thu, Apr 15, 2:29 PM · Restricted Project
craig.topper committed rG07edd7899392: [TableGen] Reduce the number of map lookups in TypeSetByHwMode::getOrCreate. (authored by craig.topper).
[TableGen] Reduce the number of map lookups in TypeSetByHwMode::getOrCreate.
Thu, Apr 15, 12:33 PM
craig.topper committed rG1656df13daa1: [RISCV] Share RVInstIShift and RVInstIShiftW instruction format classes with… (authored by craig.topper).
[RISCV] Share RVInstIShift and RVInstIShiftW instruction format classes with…
Thu, Apr 15, 11:23 AM
craig.topper closed D100424: [RISCV] Share RVInstIShift and RVInstIShiftW instruction format classes with the B extension..
Thu, Apr 15, 11:23 AM · Restricted Project
craig.topper added a comment to D98479: [RISCV] Add DAG combine to optimize vXi64 all ones/zeros fixed vector on RV32..

Ping

Thu, Apr 15, 11:19 AM · Restricted Project
craig.topper added a comment to D99236: [RISCV] Turn splat shuffles of vector loads into scalar loads and a splat..

Ping.

Thu, Apr 15, 11:18 AM · Restricted Project
craig.topper added inline comments to D100424: [RISCV] Share RVInstIShift and RVInstIShiftW instruction format classes with the B extension..
Thu, Apr 15, 11:10 AM · Restricted Project
craig.topper added a comment to D100549: [RISCV] Lower vector shuffles to vrgather operations.

I wonder if we could take advantage of this "(vs1[i] >= VLMAX) ? 0 : vs2[vs1[i]]" to use an OR instead of a merge in some cases. If the index type has SEW=32 or SEW=64 surely a "-1" would be above VLMAX. If were to do that it should be a different patch.

Thu, Apr 15, 10:57 AM · Restricted Project
craig.topper added a comment to D100577: [RISCV] Optimize getVLENFactoredAmount function..

LGTM but please add a description of the optimization so that once it is committed it can be understood from git log without needing to read the patch.

Thu, Apr 15, 10:12 AM · Restricted Project
craig.topper added a comment to D100574: [RISCV] Fix missing emergency slots for scalable stack offsets.

Our downstream contains this additional change to reduce the number of virtual registers created

Thu, Apr 15, 9:34 AM · Restricted Project
craig.topper added inline comments to D99509: [RISCV] Add legality check for vectoring reduction.
Thu, Apr 15, 9:24 AM · Restricted Project
craig.topper added inline comments to D100574: [RISCV] Fix missing emergency slots for scalable stack offsets.
Thu, Apr 15, 9:19 AM · Restricted Project
craig.topper added inline comments to D98136: [RISCV][RFC] Initially support the K-extension instructions on the LLVM MC layer.
Thu, Apr 15, 9:17 AM · Restricted Project
craig.topper added inline comments to D99509: [RISCV] Add legality check for vectoring reduction.
Thu, Apr 15, 9:09 AM · Restricted Project

Wed, Apr 14

craig.topper committed rGc3f127146415: [RISCV] Add a PatFrag to shorten repeated (XLenVT (VLOp GPR:$vl)) in V… (authored by craig.topper).
[RISCV] Add a PatFrag to shorten repeated (XLenVT (VLOp GPR:$vl)) in V…
Wed, Apr 14, 10:37 PM
craig.topper added a comment to D100288: [RISCV] Add vector types to GPR for P extension and explict type to codegen patterns.

Any comments?

I think it's worth having the whole stack ready before committing this in case later patches motivate changes to this one.

Or at least the MC layer for P

Can we commit the parts of this that aren't really P specific changes so they don't bit rot. Especially the changes to the V extension files.

I guess, though they don't make a huge deal of sense without P even if they're notionally not P-specific, and those could still bit-rot in the tree until P lands

Wed, Apr 14, 7:44 PM · Restricted Project
craig.topper added a comment to D100288: [RISCV] Add vector types to GPR for P extension and explict type to codegen patterns.

Any comments?

I think it's worth having the whole stack ready before committing this in case later patches motivate changes to this one.

Or at least the MC layer for P

Wed, Apr 14, 7:37 PM · Restricted Project
craig.topper added a comment to D99741: [RISCV][Clang] Add some RVV Floating-Point intrinsic functions. (vfclass, vfmerge, vfrec7, vfrsqrt7, vfsqrt).

One of the ten commits that landed here (https://github.com/llvm/llvm-project/compare/a3bfddbb6a27...59d5b8c27b43), this being one of them, slowed down check-clang by over 20%: https://bugs.llvm.org/show_bug.cgi?id=49962

Since recovering test runtime regressions is very difficult, it's probably a good idea to revert this first and then reland in smaller chunks to see which of the commits causes the problem (?)

Wed, Apr 14, 5:01 PM · Restricted Project
craig.topper added inline comments to D100368: [X86] Support some missing intrinsics.
Wed, Apr 14, 8:45 AM · Restricted Project
craig.topper accepted D100474: [docs] Add vector predication call.

LGTM

Wed, Apr 14, 8:36 AM · Restricted Project, Restricted Project

Tue, Apr 13

craig.topper updated the diff for D100427: [RISCV] Cleanup instruction formats used for B extension ternary operations..

Fix formatting

Tue, Apr 13, 7:39 PM · Restricted Project
craig.topper requested review of D100427: [RISCV] Cleanup instruction formats used for B extension ternary operations..
Tue, Apr 13, 4:54 PM · Restricted Project
craig.topper requested review of D100424: [RISCV] Share RVInstIShift and RVInstIShiftW instruction format classes with the B extension..
Tue, Apr 13, 4:17 PM · Restricted Project
craig.topper added inline comments to D99565: [X86] Support replacing aligned vector moves with unaligned moves when avx is enabled..
Tue, Apr 13, 3:00 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D99565: [X86] Support replacing aligned vector moves with unaligned moves when avx is enabled..
Tue, Apr 13, 2:58 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D100391: [RISCV][Clang] Add RVV miscellaneous intrinsic functions..
Tue, Apr 13, 2:52 PM · Restricted Project
craig.topper updated the diff for D100288: [RISCV] Add vector types to GPR for P extension and explict type to codegen patterns.

RISCVInstrInfoB.td makes more use of PatGpr* now so some of the changes are no longer needed.

Tue, Apr 13, 12:34 PM · Restricted Project
craig.topper commandeered D100288: [RISCV] Add vector types to GPR for P extension and explict type to codegen patterns.

Commandeering so I can rebase this after making changes to RISCVInstrInfoB.td that reduce the size of this patch.

Tue, Apr 13, 12:32 PM · Restricted Project
craig.topper committed rG6aa6f748ae9d: [RISCV] Add a generic PatGprImm class and use it to simplify patterns in… (authored by craig.topper).
[RISCV] Add a generic PatGprImm class and use it to simplify patterns in…
Tue, Apr 13, 12:15 PM
craig.topper committed rGcb073f1bc0b9: [RISCV] Make use of PatGprGpr and PatGpr in RISCVInstrInfoB.td. NFC (authored by craig.topper).
[RISCV] Make use of PatGprGpr and PatGpr in RISCVInstrInfoB.td. NFC
Tue, Apr 13, 12:15 PM
craig.topper committed rG1afdfc6169be: [RISCV] Rename RISCVISD::GREVI(W)/GORCI(W) to RISCVISD::GREV(W)/GORC(W). Don't… (authored by craig.topper).
[RISCV] Rename RISCVISD::GREVI(W)/GORCI(W) to RISCVISD::GREV(W)/GORC(W). Don't…
Tue, Apr 13, 11:16 AM
craig.topper added inline comments to D100288: [RISCV] Add vector types to GPR for P extension and explict type to codegen patterns.
Tue, Apr 13, 11:13 AM · Restricted Project
craig.topper added inline comments to D78203: [VP,Integer,#2] ExpandVectorPredication pass.
Tue, Apr 13, 9:02 AM · Restricted Project, Restricted Project
craig.topper added a comment to D97764: [clang][patch] To solve PR26413, x86 interrupt routines may only call routines with no_saved_reg.

I received a bug report that this patch creates error diagnostics for calls to a builtin, like calling 'abort', 'exit' or one of the target builtins like __builtin_ia32_packssw then that call should be allowed without remark but this patch causes the compilation to fail. We could require that all builtin's be declared with "no caller saved reg" but that's a big modification. I'm planning to make a change which igores builtin calls, but continue to error on any implicitly declared or user declared functions without the "no caller saved reg" attribute.

Builtins like __builtin_ia32_packssw aren't usually called directly. The user should be calling the always_inline wrapper functions in x86intrin.h. Would that also fail?

Thanks for the suggestion Craig! I could change the check to look for "always_inline" [that means they're always inlined and the call would never be created even with optimization disabled right? ] However, I don't see _builtin_ia32_packssw declared in <immintrin.h>. In immintrin it is declared implicitly when the usage is seen for example
_mm_packs_pi16(m64 m1, m64 m2)
{

return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);

}

Is it a bug that __builtin_ia32_packsswb is omitted from the x86intrin declarations? Is there some tricky reason it's not declared?

Tue, Apr 13, 7:58 AM · Restricted Project
craig.topper added a comment to D97764: [clang][patch] To solve PR26413, x86 interrupt routines may only call routines with no_saved_reg.

I received a bug report that this patch creates error diagnostics for calls to a builtin, like calling 'abort', 'exit' or one of the target builtins like __builtin_ia32_packssw then that call should be allowed without remark but this patch causes the compilation to fail. We could require that all builtin's be declared with "no caller saved reg" but that's a big modification. I'm planning to make a change which igores builtin calls, but continue to error on any implicitly declared or user declared functions without the "no caller saved reg" attribute.

Tue, Apr 13, 7:21 AM · Restricted Project
craig.topper added a comment to D100368: [X86] Support some missing intrinsics.

Add _mm512_i32loscatter_epi64 and _mm512_mask_i32loscatter_epi64 for completeness?

It seems we doesn't support KNCNI in LLVM. Am I right?

Tue, Apr 13, 6:49 AM · Restricted Project
craig.topper added inline comments to D99565: [X86] Support replacing aligned vector moves with unaligned moves when avx is enabled..
Tue, Apr 13, 1:00 AM · Restricted Project, Restricted Project

Mon, Apr 12

craig.topper committed rG7c9bbbf7358c: [RISCV] Rename RISCVISD::SHFLI to RISCVISD::SHFL and don't require the second… (authored by craig.topper).
[RISCV] Rename RISCVISD::SHFLI to RISCVISD::SHFL and don't require the second…
Mon, Apr 12, 11:47 PM
craig.topper added inline comments to D100085: [X86] Support -march=rocketlake.
Mon, Apr 12, 6:07 PM · Restricted Project, Restricted Project, Restricted Project
craig.topper added inline comments to D100280: [RISCV] Implement COPY for Zvlsseg registers.
Mon, Apr 12, 10:21 AM · Restricted Project
craig.topper accepted D100115: [RISCV] Add missing part of instruction vmsge {u}. VX.

LGTM

Mon, Apr 12, 10:09 AM · Restricted Project
craig.topper added a comment to D100288: [RISCV] Add vector types to GPR for P extension and explict type to codegen patterns.

Surely some of this can be inferred by TableGen? This is rather disruptive (especially with my downstream hat on...).

Mon, Apr 12, 10:07 AM · Restricted Project
craig.topper accepted D100266: [RISCV][Clang] Add vmv and vfmv series intrinsic functions..

LGTM

Mon, Apr 12, 10:00 AM · Restricted Project
craig.topper accepted D100085: [X86] Support -march=rocketlake.

LGTM

Mon, Apr 12, 9:55 AM · Restricted Project, Restricted Project, Restricted Project
craig.topper accepted D100288: [RISCV] Add vector types to GPR for P extension and explict type to codegen patterns.

LGTM

Mon, Apr 12, 9:50 AM · Restricted Project
craig.topper accepted D100096: [RISCV] Support vector SET[U]LT and SET[U]GE with splatted immediates.

LGTM

Mon, Apr 12, 9:37 AM · Restricted Project

Sun, Apr 11

craig.topper accepted D100279: [X86] Remove FeatureCLWB from FeaturesICLClient.

LGTM

Sun, Apr 11, 8:41 PM · Restricted Project, Restricted Project
craig.topper added a comment to D100085: [X86] Support -march=rocketlake.

Thanks. I also found this https://github.com/gcc-mirror/gcc/commit/c422e5f81f42a0fc197f0715f4fcd81f1be90bff can you create a new patch to do the same for llvm/clang and rebase this patch on top of it.

Sun, Apr 11, 7:24 PM · Restricted Project, Restricted Project, Restricted Project
craig.topper added inline comments to D100085: [X86] Support -march=rocketlake.
Sun, Apr 11, 6:58 PM · Restricted Project, Restricted Project, Restricted Project
craig.topper committed rGcb4c793e46bb: [RISCV] Update computeKnownBitsForTargetNode to treat READ_VLENB as being 16… (authored by craig.topper).
[RISCV] Update computeKnownBitsForTargetNode to treat READ_VLENB as being 16…
Sun, Apr 11, 6:42 PM
craig.topper added reviewers for D99833: [TableGen] generate `getRegBankFromRegClass`: arsenm, dsanders, paquette, qcolombet, aemerson.

Please upload the patch with full context using -U99999 as documented here https://llvm.org/docs/Phabricator.html#requesting-a-review-via-the-web-interface

Sun, Apr 11, 6:03 PM · Restricted Project
craig.topper committed rGff902080a9fb: [RISCV] Use SLLI/SRLI instead of SLLIW/SRLIW for (srl (and X, 0xffff), C)… (authored by craig.topper).
[RISCV] Use SLLI/SRLI instead of SLLIW/SRLIW for (srl (and X, 0xffff), C)…
Sun, Apr 11, 2:00 PM
craig.topper committed rG3ae71226ef49: [RISCV] Drop earlyclobber constraint from vwadd(u).wx, vwsub(u).wx, vfwadd.wf… (authored by craig.topper).
[RISCV] Drop earlyclobber constraint from vwadd(u).wx, vwsub(u).wx, vfwadd.wf…
Sun, Apr 11, 10:28 AM
craig.topper closed D100217: [RISCV] Drop earlyclobber constraint from vwadd(u).wx, vwsub(u).wx, vfwadd.wf and vfwsub.wf..
Sun, Apr 11, 10:28 AM · Restricted Project
craig.topper committed rGbc0e0527305d: [RISCV] Teach targetShrinkDemandedConstant to preserve (and X, 0xffff) when… (authored by craig.topper).
[RISCV] Teach targetShrinkDemandedConstant to preserve (and X, 0xffff) when…
Sun, Apr 11, 10:19 AM
craig.topper committed rG48d69edadef1: [RISCV] Add i8 and i16 srli and srai tests to Zbb/Zbp test files. NFC (authored by craig.topper).
[RISCV] Add i8 and i16 srli and srai tests to Zbb/Zbp test files. NFC
Sun, Apr 11, 10:19 AM
craig.topper added inline comments to D100085: [X86] Support -march=rocketlake.
Sun, Apr 11, 9:15 AM · Restricted Project, Restricted Project, Restricted Project

Fri, Apr 9

craig.topper requested review of D100217: [RISCV] Drop earlyclobber constraint from vwadd(u).wx, vwsub(u).wx, vfwadd.wf and vfwsub.wf..
Fri, Apr 9, 10:42 AM · Restricted Project
craig.topper added inline comments to D100085: [X86] Support -march=rocketlake.
Fri, Apr 9, 9:48 AM · Restricted Project, Restricted Project, Restricted Project
craig.topper accepted D100190: [RISCV][NFC] Remove unneeded explict XLenVT type on codegen patterns.

LGTM

Fri, Apr 9, 9:39 AM · Restricted Project
craig.topper accepted D100120: [RISCV][Clang] Add all RVV Mask intrinsic functions..

LGTM

Fri, Apr 9, 9:38 AM · Restricted Project, Restricted Project
craig.topper added a comment to D100115: [RISCV] Add missing part of instruction vmsge {u}. VX.

Do we need this case? Case 4 is any vd. It means (vd == v0) || (vd != v0), right? These two cases are already covered by case 2 and case 3.

I think this is the case that a temp register is provided and the destination isn't v0. The user probably should use case 2 by not providing the temp register. But if they give the temp register should we accept it and match the spec or error for the destination not being v0(what we currently do)?

If the destination is not v0, case 2 is better than case 4. There should be no need to provide the temp register. I think the case 4 is useful when we could not determine vd is v0 or not, but it should not be the case in AsmParser. The registers in MCInst should be physical registers.

Fri, Apr 9, 9:33 AM · Restricted Project

Thu, Apr 8

craig.topper added a comment to D100115: [RISCV] Add missing part of instruction vmsge {u}. VX.

Do we need this case? Case 4 is any vd. It means (vd == v0) || (vd != v0), right? These two cases are already covered by case 2 and case 3.

Thu, Apr 8, 11:49 PM · Restricted Project
craig.topper added inline comments to D98136: [RISCV][RFC] Initially support the K-extension instructions on the LLVM MC layer.
Thu, Apr 8, 11:02 PM · Restricted Project
craig.topper accepted D100097: [RISCV][NFC] Replace explicit type i64 with riscv customized SDTypeProfile..

LGTM

Thu, Apr 8, 10:42 PM · Restricted Project
craig.topper added inline comments to D100085: [X86] Support -march=rocketlake.
Thu, Apr 8, 7:58 PM · Restricted Project, Restricted Project, Restricted Project
craig.topper added inline comments to D100085: [X86] Support -march=rocketlake.
Thu, Apr 8, 7:46 PM · Restricted Project, Restricted Project, Restricted Project
craig.topper added a comment to D99565: [X86] Support replacing aligned vector moves with unaligned moves when avx is enabled..

I think I wouldn't mind if we just didn't emit aligned loads/store instructions for AVX/AVX512 from isel and other places in the compiler in the first place. As noted, if the load gets folded the alignment check doesn't happen. That would reduce the size of the isel tables and remove branches, reducing complexity of the compiler. Adding a new step and a command line to undo the earlier decision increases complexity.

Thu, Apr 8, 3:40 PM · Restricted Project, Restricted Project
craig.topper committed rG872931e5d857: [RISCV] Use multiclass inheritance where possible for the VPat* multiclasses in… (authored by craig.topper).
[RISCV] Use multiclass inheritance where possible for the VPat* multiclasses in…
Thu, Apr 8, 3:17 PM
craig.topper committed rGac347a8a0fb4: [RISCV] Remove empty string after 'defm' at top level of vector .td files. NFC (authored by craig.topper).
[RISCV] Remove empty string after 'defm' at top level of vector .td files. NFC
Thu, Apr 8, 3:16 PM