Page MenuHomePhabricator

craig.topper (Craig Topper)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 30 2013, 7:58 PM (460 w, 3 d)

Recent Activity

Yesterday

craig.topper requested review of D126589: Add test cases showing missed opportunity to use slli.uw or shXadd.uw. NFC.
Fri, May 27, 10:49 PM · Restricted Project, Restricted Project
craig.topper requested review of D126588: [RISCV] isel (add (and X, 0x1FFFFFFFE), Y) as (SH1ADD (SRLI X, 1), Y).
Fri, May 27, 10:48 PM · Restricted Project, Restricted Project
craig.topper requested review of D126576: [RISCV] Add custom isel for (add X, imm) used by load/stores..
Fri, May 27, 3:48 PM · Restricted Project, Restricted Project
craig.topper accepted D126563: [RISCV] Allow PRE of vsetvli involving non-1 LMUL.

LGTM

Fri, May 27, 3:35 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D126563: [RISCV] Allow PRE of vsetvli involving non-1 LMUL.
Fri, May 27, 3:33 PM · Restricted Project, Restricted Project
craig.topper added a reviewer for D124833: [RISCV] Optimize redundant vsetvli for Vector Mask-Register Logical Instructions.: reames.
Fri, May 27, 3:05 PM · Restricted Project, Restricted Project
craig.topper committed rG542a83c36222: [RISCV] Correct load/store alignments in sink-splat-operands.ll. NFC (authored by craig.topper).
[RISCV] Correct load/store alignments in sink-splat-operands.ll. NFC
Fri, May 27, 2:44 PM · Restricted Project, Restricted Project
craig.topper closed D126567: [RISCV] Correct load/store alignments in sink-splat-operands.ll. NFC.
Fri, May 27, 2:44 PM · Restricted Project, Restricted Project
craig.topper updated the diff for D126567: [RISCV] Correct load/store alignments in sink-splat-operands.ll. NFC.

Upload complete diff

Fri, May 27, 2:29 PM · Restricted Project, Restricted Project
craig.topper requested review of D126567: [RISCV] Correct load/store alignments in sink-splat-operands.ll. NFC.
Fri, May 27, 2:24 PM · Restricted Project, Restricted Project
craig.topper added a comment to D126563: [RISCV] Allow PRE of vsetvli involving non-1 LMUL.

There is an option to scale the LMUL returned to the vectorizer by TTI getRegisterBitWidth. Using that you can get LMUL>1 fixed vector loops. https://godbolt.org/z/34asbPcv7 should work for scalar too.

Fri, May 27, 1:43 PM · Restricted Project, Restricted Project
craig.topper committed rGb09e54541a92: [RISCV] Use template version of SignExtend64 for constant extends. NFC (authored by craig.topper).
[RISCV] Use template version of SignExtend64 for constant extends. NFC
Fri, May 27, 1:11 PM · Restricted Project, Restricted Project
craig.topper committed rGd0f65eaa850d: [RISCV] Remove unused variables. NFC (authored by craig.topper).
[RISCV] Remove unused variables. NFC
Fri, May 27, 12:14 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D125747: [RISCV] Enable scalable vectorization by default for RVV.
Fri, May 27, 11:30 AM · Restricted Project, Restricted Project
craig.topper committed rGaaad507546a5: [RISCV] Return false from isOffsetFoldingLegal instead of reversing the fold in… (authored by craig.topper).
[RISCV] Return false from isOffsetFoldingLegal instead of reversing the fold in…
Fri, May 27, 11:06 AM · Restricted Project, Restricted Project
craig.topper closed D126558: [RISCV] Return false from isOffsetFoldingLegal instead of reversing the fold in lowering..
Fri, May 27, 11:05 AM · Restricted Project, Restricted Project
craig.topper updated the diff for D126558: [RISCV] Return false from isOffsetFoldingLegal instead of reversing the fold in lowering..

clang-format

Fri, May 27, 10:30 AM · Restricted Project, Restricted Project
craig.topper requested review of D126558: [RISCV] Return false from isOffsetFoldingLegal instead of reversing the fold in lowering..
Fri, May 27, 10:20 AM · Restricted Project, Restricted Project
craig.topper updated the diff for D126392: [RISCV] Use two ADDIs to do some stack pointer adjustments..

Rename variable. Cleanup comment slightly.

Fri, May 27, 9:08 AM · Restricted Project, Restricted Project
craig.topper added inline comments to D126392: [RISCV] Use two ADDIs to do some stack pointer adjustments..
Fri, May 27, 8:56 AM · Restricted Project, Restricted Project
craig.topper added inline comments to D125747: [RISCV] Enable scalable vectorization by default for RVV.
Fri, May 27, 8:22 AM · Restricted Project, Restricted Project
craig.topper added a comment to D125747: [RISCV] Enable scalable vectorization by default for RVV.

Do you have any performance data?

I use the TSCV test suit, then run on the spike,

when option: -scalable-vectorization=on, the performance more better. But I'm not sure if the performance data from the spike run can be used as a standard to measure performance

Fri, May 27, 8:14 AM · Restricted Project, Restricted Project

Thu, May 26

craig.topper accepted D126516: [RISCV][NFC] Simplified code for integer promotion setcc/vp.setcc.

LGTM

Thu, May 26, 8:06 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D126516: [RISCV][NFC] Simplified code for integer promotion setcc/vp.setcc.
Thu, May 26, 7:15 PM · Restricted Project, Restricted Project
craig.topper added a comment to D126461: [RISCV] Extract and store new vl of vleff iff destination isn't null.

What is it isn't known to be null at compile time but gets optimized to it. Are we trying to make passing a null pointer defined behavior for these intrinsics?

Thu, May 26, 7:08 PM · Restricted Project, Restricted Project
craig.topper committed rG460781feef56: [LegalizeTypes] Fix bug in expensive checks verification (authored by craig.topper).
[LegalizeTypes] Fix bug in expensive checks verification
Thu, May 26, 1:14 PM · Restricted Project, Restricted Project
craig.topper committed rGe9ac99b6090c: [RISCV] Simplfy creation of IndexVT in lowerMaskedGather/lowerMaskedScatter. NFC (authored by craig.topper).
[RISCV] Simplfy creation of IndexVT in lowerMaskedGather/lowerMaskedScatter. NFC
Thu, May 26, 1:14 PM · Restricted Project, Restricted Project
craig.topper closed D126036: [LegalizeTypes] Fix bug in expensive checks verification.
Thu, May 26, 1:13 PM · Restricted Project, Restricted Project
craig.topper added a comment to D113291: [AggressiveInstCombine] Lower Table Based CTTZ and enable it for AARCH64 in -O3.

as for the second I'm not sure when it would be profitable to transform back and emit the table

You really just have to weigh it against the current default expansion on targets where ctlz/cttz aren't legal, which is popcount(v & -v). It should be a straightforward comparison, generally. If you have popcount, use it. If multiply is legal, use a table lookup. Otherwise... maybe stick with the popcount expansion? Probably any approach is expensive at that point.

Thu, May 26, 11:04 AM · Restricted Project, Restricted Project
craig.topper added a comment to D113291: [AggressiveInstCombine] Lower Table Based CTTZ and enable it for AARCH64 in -O3.

as for the second I'm not sure when it would be profitable to transform back and emit the table

You really just have to weigh it against the current default expansion on targets where ctlz/cttz aren't legal, which is popcount(v & -v). It should be a straightforward comparison, generally. If you have popcount, use it. If multiply is legal, use a table lookup. Otherwise... maybe stick with the popcount expansion? Probably any approach is expensive at that point.

Compare the generated code for arm-eabi.

You may not want to do that for non-hot ctzs?

As opposed to what, calling into compiler-rt?

I was meaning - it can be difficult for the compiler to recognize _when_ a ctz is performance critical. If the size of the table is large (which I was possible over-estimating the size of in my mind), then you may not want to emit the table for every ctz in the program. Currently that places where this is used have said, from the fact that they wrote it this way, that these ctz's are important. It just depends on whether converting to a table is always better, and if the table it small enough to be reasonable in the common case. 32 x i8 doesn't sound too big compared to what I originally imagined, if that is all it needs.

Thu, May 26, 11:03 AM · Restricted Project, Restricted Project
craig.topper added a comment to D126036: [LegalizeTypes] Fix bug in expensive checks verification.

Ping

Thu, May 26, 11:01 AM · Restricted Project, Restricted Project
craig.topper added inline comments to D126465: [RISCV] Use knowledge of VLEN to avoid over-aligning the stack.
Thu, May 26, 10:33 AM · Restricted Project, Restricted Project
craig.topper added a comment to D126465: [RISCV] Use knowledge of VLEN to avoid over-aligning the stack.

I'm a bit confused by this patch. Where does the VLEN > 32 bit come from? All I kind find in the spec is that VLEN >= ELEN, and must be a power of 2. Given ELEN only has to be 8, shouldn't the smallest VLEN also be 8? This seems like an utterly useless configuration, but the spec seems to allow it?

Thu, May 26, 10:32 AM · Restricted Project, Restricted Project
craig.topper added a comment to D126448: [NFC][LegalizeTypes][VP] Refactor code in SplitRes_Select.

I don't understand the motivation for this change. LLVM coding guidelines encourage using early returns.

Thu, May 26, 1:00 AM · Restricted Project, Restricted Project

Wed, May 25

craig.topper added a reviewer for D126440: [RISCV] Return an invalid cost for memory ops with unsupported types: frasercrmck.
Wed, May 25, 10:03 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D126442: [LegalizeTypes][VP] Add widen and split support for VP_SIGN_EXTEND and VP_ZERO_EXTEND..
Wed, May 25, 10:03 PM · Restricted Project, Restricted Project
craig.topper updated the diff for D126392: [RISCV] Use two ADDIs to do some stack pointer adjustments..

Use DestReg as the source for the second operation.

Wed, May 25, 8:24 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D126392: [RISCV] Use two ADDIs to do some stack pointer adjustments..
Wed, May 25, 7:48 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D126392: [RISCV] Use two ADDIs to do some stack pointer adjustments..
Wed, May 25, 2:03 PM · Restricted Project, Restricted Project
craig.topper added a reviewer for D126392: [RISCV] Use two ADDIs to do some stack pointer adjustments.: jrtc27.
Wed, May 25, 1:21 PM · Restricted Project, Restricted Project
craig.topper updated the diff for D126392: [RISCV] Use two ADDIs to do some stack pointer adjustments..

Instead of dividing in half use a large immediate, either -2048 or (2048-stackalign),
to do a first adjustment. Then a smaller adjustment for the remainder.

Wed, May 25, 1:12 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D126085: [RISCV] Add a subtarget feature to enable unaligned scalar loads and stores.
Wed, May 25, 12:07 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D126085: [RISCV] Add a subtarget feature to enable unaligned scalar loads and stores.
Wed, May 25, 11:44 AM · Restricted Project, Restricted Project
craig.topper planned changes to D126392: [RISCV] Use two ADDIs to do some stack pointer adjustments..

Doesn't this run the risk of temporarily misaligning the stack (e.g. for Val == 2064)? The psABI says using such a non-standard ABI within a function is fine and that kernels should realign stacks before calling signal handlers. Both FreeBSD and Linux correctly do this for signal handlers so as to not make assumptions about whether userspace is following the standard ABI, but both assume that the kernel itself is following the standard ABI, and so do not realign the stack in their exception entry points, causing the stack to be misaligned if an interrupt is taken in between. Whether this is a bug or not in the kernels is debatable, but with a more careful splitting of Val it should be possible to avoid anyway, with the exception of 4080?

Wed, May 25, 11:40 AM · Restricted Project, Restricted Project
craig.topper accepted D125950: [LegalizeTypes][VP] Add widen and split support for VP_TRUNCATE.

LGTM

Wed, May 25, 10:05 AM · Restricted Project, Restricted Project
craig.topper added a reviewer for D126392: [RISCV] Use two ADDIs to do some stack pointer adjustments.: frasercrmck.
Wed, May 25, 10:04 AM · Restricted Project, Restricted Project
craig.topper requested review of D126392: [RISCV] Use two ADDIs to do some stack pointer adjustments..
Wed, May 25, 9:54 AM · Restricted Project, Restricted Project
craig.topper accepted D125364: [RISCV] Replace ISD::FP_EXTEND and ISD::FP_ROUND with RVV VL op..

LGTM

Wed, May 25, 9:19 AM · Restricted Project, Restricted Project
craig.topper accepted D125866: [RISCV] Add test for experimental.vector.reverse.

LGTM

Wed, May 25, 9:17 AM · Restricted Project, Restricted Project
craig.topper committed rG172149e98c2a: [RISCV] Preserve fast math flags in lowerVPOp. (authored by craig.topper).
[RISCV] Preserve fast math flags in lowerVPOp.
Wed, May 25, 9:17 AM · Restricted Project, Restricted Project
craig.topper closed D126306: [RISCV] Preserve fast math flags in lowerVPOp..
Wed, May 25, 9:16 AM · Restricted Project, Restricted Project
craig.topper added a comment to D123112: [VP] Legalize the stride operand for EXPERIMENTAL_VP_STRIDED SDNodes.

Is it possible to test this?

Wed, May 25, 9:15 AM · Restricted Project, Restricted Project
craig.topper accepted D125270: [riscv] Remove mutation of prior vsetvli from insertion dataflow.

LGTM

Wed, May 25, 9:13 AM · Restricted Project, Restricted Project
craig.topper committed rG06fee478d217: [X86] Add isSimple check to the load combine in combineExtractVectorElt. (authored by craig.topper).
[X86] Add isSimple check to the load combine in combineExtractVectorElt.
Wed, May 25, 9:11 AM · Restricted Project, Restricted Project
craig.topper closed D126353: [X86] Add isSimple check to the load combine in combineExtractVectorElt..
Wed, May 25, 9:11 AM · Restricted Project, Restricted Project
craig.topper updated the diff for D126353: [X86] Add isSimple check to the load combine in combineExtractVectorElt..

Rebase. I used the wrong repo so it might have been older than I meant it to be.

Wed, May 25, 12:31 AM · Restricted Project, Restricted Project
craig.topper requested review of D126353: [X86] Add isSimple check to the load combine in combineExtractVectorElt..
Wed, May 25, 12:24 AM · Restricted Project, Restricted Project

Tue, May 24

craig.topper added inline comments to D125364: [RISCV] Replace ISD::FP_EXTEND and ISD::FP_ROUND with RVV VL op..
Tue, May 24, 9:46 PM · Restricted Project, Restricted Project
craig.topper committed rG66db5312bd66: [RISCV] Fix vnsrl/vnsra isel patterns that are dropping VL. (authored by craig.topper).
[RISCV] Fix vnsrl/vnsra isel patterns that are dropping VL.
Tue, May 24, 9:39 PM · Restricted Project, Restricted Project
craig.topper closed D126319: [RISCV] Fix vnsrl/vnsra isel patterns that are dropping VL..
Tue, May 24, 9:39 PM · Restricted Project, Restricted Project
craig.topper accepted D126338: [RISCV] Hoist VSETVLI out of some scalable loops.

LGTM

Tue, May 24, 7:09 PM · Restricted Project, Restricted Project
craig.topper added a comment to D126338: [RISCV] Hoist VSETVLI out of some scalable loops.

The use of vscale came from the scalable vector autovectorizer. llvm.vscale is VLEN/RISCV::RVVBitsPerBlock. Which I guess is the right VLMAX for SEW=RISCV::RVVBitsPerBlock where RISCV::RVVBitPerBlock is 64.

Tue, May 24, 4:24 PM · Restricted Project, Restricted Project
craig.topper committed rGd2ee2c9c8d34: [RISCV] Add an operand kind to the opcode/imm returned from RISCVMatInt. (authored by craig.topper).
[RISCV] Add an operand kind to the opcode/imm returned from RISCVMatInt.
Tue, May 24, 3:00 PM · Restricted Project, Restricted Project
craig.topper closed D126317: [RISCV] Add an operand kind to the opcode/imm returned from RISCVMatInt..
Tue, May 24, 3:00 PM · Restricted Project, Restricted Project
craig.topper updated the diff for D126317: [RISCV] Add an operand kind to the opcode/imm returned from RISCVMatInt..

Add a method to convert opcode to operand kind. All opcodes listed with an
unreachable default to make sure it always gets updated if new opcodes are used.

Tue, May 24, 2:32 PM · Restricted Project, Restricted Project
craig.topper accepted D124869: [RISCV] Hoist VSETVLI out of idiomatic fixed length vector loops.
Tue, May 24, 2:11 PM · Restricted Project, Restricted Project
craig.topper added a comment to D124869: [RISCV] Hoist VSETVLI out of idiomatic fixed length vector loops.

LGTM. Other than that last comment.

Tue, May 24, 2:11 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D124869: [RISCV] Hoist VSETVLI out of idiomatic fixed length vector loops.
Tue, May 24, 2:01 PM · Restricted Project, Restricted Project
craig.topper added a comment to D126317: [RISCV] Add an operand kind to the opcode/imm returned from RISCVMatInt..

I want to suggest an alternate, and possibly simpler change.

Instead of adding a field to Inst, what if we added a helper routine instead which just did the switch on opcode internally and returned the Kind? The client code would look largely the same, but without needing to explicitly track the kind of each opcode at the construction site.

Tue, May 24, 1:43 PM · Restricted Project, Restricted Project
craig.topper retitled D126319: [RISCV] Fix vnsrl/vnsra isel patterns that are dropping VL. from [RISCV] Fix vnsrl/vnsra isel patterns that were dropping VL. to [RISCV] Fix vnsrl/vnsra isel patterns that are dropping VL..
Tue, May 24, 12:46 PM · Restricted Project, Restricted Project
craig.topper retitled D126319: [RISCV] Fix vnsrl/vnsra isel patterns that are dropping VL. from [RISCV] Fix vnsrl/vnsra isel patterns what were dropping VL. to [RISCV] Fix vnsrl/vnsra isel patterns that were dropping VL..
Tue, May 24, 12:45 PM · Restricted Project, Restricted Project
craig.topper requested review of D126319: [RISCV] Fix vnsrl/vnsra isel patterns that are dropping VL..
Tue, May 24, 12:44 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D125364: [RISCV] Replace ISD::FP_EXTEND and ISD::FP_ROUND with RVV VL op..
Tue, May 24, 12:40 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D125364: [RISCV] Replace ISD::FP_EXTEND and ISD::FP_ROUND with RVV VL op..
Tue, May 24, 12:36 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D125950: [LegalizeTypes][VP] Add widen and split support for VP_TRUNCATE.
Tue, May 24, 12:29 PM · Restricted Project, Restricted Project
craig.topper retitled D126317: [RISCV] Add an operand kind to the opcode/imm returned from RISCVMatInt. from [RISCV] Add an operand kind to the instruction/imm returned from RISCVMatInt. to [RISCV] Add an operand kind to the opcode/imm returned from RISCVMatInt..
Tue, May 24, 12:18 PM · Restricted Project, Restricted Project
craig.topper requested review of D126317: [RISCV] Add an operand kind to the opcode/imm returned from RISCVMatInt..
Tue, May 24, 12:17 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D124869: [RISCV] Hoist VSETVLI out of idiomatic fixed length vector loops.
Tue, May 24, 11:30 AM · Restricted Project, Restricted Project
craig.topper added inline comments to D124869: [RISCV] Hoist VSETVLI out of idiomatic fixed length vector loops.
Tue, May 24, 11:23 AM · Restricted Project, Restricted Project
craig.topper added inline comments to D124869: [RISCV] Hoist VSETVLI out of idiomatic fixed length vector loops.
Tue, May 24, 10:43 AM · Restricted Project, Restricted Project
craig.topper added inline comments to D125270: [riscv] Remove mutation of prior vsetvli from insertion dataflow.
Tue, May 24, 10:25 AM · Restricted Project, Restricted Project
craig.topper requested review of D126306: [RISCV] Preserve fast math flags in lowerVPOp..
Tue, May 24, 10:02 AM · Restricted Project, Restricted Project
craig.topper added a reverting change for rGdfe513ae1bb6: Revert "[RISCV] Use selectShiftMaskXLen ComplexPattern for isel of rotates.": rG415b9f595d4d: Recommit "[RISCV] Use selectShiftMaskXLen ComplexPattern for isel of rotates.".
Tue, May 24, 9:42 AM · Restricted Project, Restricted Project
craig.topper committed rG415b9f595d4d: Recommit "[RISCV] Use selectShiftMaskXLen ComplexPattern for isel of rotates." (authored by craig.topper).
Recommit "[RISCV] Use selectShiftMaskXLen ComplexPattern for isel of rotates."
Tue, May 24, 9:42 AM · Restricted Project, Restricted Project
craig.topper committed rGcddeb78e8d5b: [RISCV] Add test cases showing failure to remove mask on rotate amounts. (authored by craig.topper).
[RISCV] Add test cases showing failure to remove mask on rotate amounts.
Tue, May 24, 9:42 AM · Restricted Project, Restricted Project
craig.topper added inline comments to D126273: [DAGCombiner][VP] Add DAGCombine for merging VP_FADD and VP_FMUL to VP_FMA..
Tue, May 24, 9:42 AM · Restricted Project, Restricted Project
craig.topper added a comment to D126273: [DAGCombiner][VP] Add DAGCombine for merging VP_FADD and VP_FMUL to VP_FMA..

When I test tsvc.

The IR is:

@llvm.fmuladd.nxv2f32(<vscale x 2 x float>.....

Not

@llvm.riscv.vfmul.nxv2f32.nxv2f32(<vscale x 2 x float> ......
@llvm.riscv.vfadd.nxv2f32.nxv2f32(<vscale x 2 x float> ......

So I am not sure, we need merge vp.fmul and vp.fadd to vp.fma. maybe vp.fma is enough?

Tue, May 24, 8:08 AM · Restricted Project, Restricted Project
craig.topper added inline comments to D126275: [LegalizeTypes][VP] Add integer promote support for vp.gather and vp.scatter.
Tue, May 24, 1:10 AM · Restricted Project, Restricted Project
craig.topper added inline comments to D126275: [LegalizeTypes][VP] Add integer promote support for vp.gather and vp.scatter.
Tue, May 24, 12:14 AM · Restricted Project, Restricted Project
craig.topper added inline comments to D126275: [LegalizeTypes][VP] Add integer promote support for vp.gather and vp.scatter.
Tue, May 24, 12:11 AM · Restricted Project, Restricted Project
craig.topper requested changes to D126275: [LegalizeTypes][VP] Add integer promote support for vp.gather and vp.scatter.
Tue, May 24, 12:09 AM · Restricted Project, Restricted Project

Mon, May 23

craig.topper accepted D126276: [LegalizeTypes][VP] Fix OpNo in WidenVecOp_VP_SCATTER.

LGTM

Mon, May 23, 11:36 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D126273: [DAGCombiner][VP] Add DAGCombine for merging VP_FADD and VP_FMUL to VP_FMA..
Mon, May 23, 9:39 PM · Restricted Project, Restricted Project
craig.topper added reviewers for D126273: [DAGCombiner][VP] Add DAGCombine for merging VP_FADD and VP_FMUL to VP_FMA.: spatel, rogfer01.
Mon, May 23, 9:36 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D126060: [RISCV] Add basic cost modelling for fixed length vector arithmetic.
Mon, May 23, 9:27 PM · Restricted Project, Restricted Project
craig.topper added inline comments to D126060: [RISCV] Add basic cost modelling for fixed length vector arithmetic.
Mon, May 23, 9:23 PM · Restricted Project, Restricted Project
craig.topper added reviewers for D126048: [SplitKit] Handle early clobber + tied to def correctly: qcolombet, arsenm.
Mon, May 23, 6:05 PM · Restricted Project, Restricted Project
craig.topper committed rG569d8945f311: [DAGCombiner][AArch64] Don't fold (smulo x, 2) -> (saddo x, x) if VT is i2. (authored by craig.topper).
[DAGCombiner][AArch64] Don't fold (smulo x, 2) -> (saddo x, x) if VT is i2.
Mon, May 23, 11:15 AM · Restricted Project, Restricted Project
craig.topper committed rG75eb0576debd: [AArch64] Add test case for pr55644. NFC (authored by craig.topper).
[AArch64] Add test case for pr55644. NFC
Mon, May 23, 11:14 AM · Restricted Project, Restricted Project
craig.topper closed D126213: [DAGCombiner][AArch64] Don't fold (smulo x, 2) -> (saddo x, x) if VT is i2..
Mon, May 23, 11:14 AM · Restricted Project, Restricted Project