Page MenuHomePhabricator

Please use GitHub pull requests for new patches. Phabricator shutdown timeline

jacquesguan (Jianjian Guan)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 7 2021, 12:43 AM (119 w, 6 d)

Recent Activity

Wed, Sep 20

jacquesguan updated the diff for D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.

rebase and fix test

Wed, Sep 20, 1:40 AM · Restricted Project, Restricted Project

Tue, Sep 19

jacquesguan added inline comments to D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.
Tue, Sep 19, 11:48 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.

remove unreachable break

Tue, Sep 19, 11:46 PM · Restricted Project, Restricted Project
jacquesguan added a comment to D121187: [DAGCombiner][VP] Add DAGCombine for VP_MUL..

ping

Tue, Sep 19, 1:13 AM · Restricted Project, Restricted Project
jacquesguan added inline comments to D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.
Tue, Sep 19, 1:01 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.

change to custom lowering

Tue, Sep 19, 1:00 AM · Restricted Project, Restricted Project

Thu, Sep 14

jacquesguan added inline comments to D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.
Thu, Sep 14, 6:54 PM · Restricted Project, Restricted Project

Wed, Sep 13

jacquesguan added a comment to D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.

ping

Wed, Sep 13, 2:22 AM · Restricted Project, Restricted Project

Mon, Sep 11

jacquesguan added a comment to D133829: [RISCV] Add cost model for insertelement/extractelement of vector type that should be splitted..

ping

Mon, Sep 11, 1:38 AM · Restricted Project, Restricted Project

Thu, Sep 7

jacquesguan committed rG4d2536c82fc4: [RISCV] Enable more builtin for zvfhmin without zvfh (authored by jacquesguan).
[RISCV] Enable more builtin for zvfhmin without zvfh
Thu, Sep 7, 7:56 PM · Restricted Project, Restricted Project
jacquesguan closed D151869: [RISCV] Enable more builtin for zvfhmin without zvfh.
Thu, Sep 7, 7:55 PM · Restricted Project, Restricted Project
jacquesguan added a comment to D151869: [RISCV] Enable more builtin for zvfhmin without zvfh.

ping

Thu, Sep 7, 2:36 AM · Restricted Project, Restricted Project

Wed, Sep 6

jacquesguan added a comment to D158259: [clang][RISCV] Support operators for RVV sizeless vector types.

ping.

Wed, Sep 6, 4:04 AM · Restricted Project, Restricted Project
jacquesguan added inline comments to D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.
Wed, Sep 6, 2:32 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.

Move back to riscv target

Wed, Sep 6, 2:30 AM · Restricted Project, Restricted Project

Tue, Aug 29

jacquesguan updated the diff for D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.

Skip constant in promotion.

Tue, Aug 29, 1:10 AM · Restricted Project, Restricted Project

Mon, Aug 28

jacquesguan updated the diff for D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.

pre lower all constant splat

Mon, Aug 28, 11:21 PM · Restricted Project, Restricted Project
jacquesguan added inline comments to D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.
Mon, Aug 28, 8:26 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.

rewrite the comment.

Mon, Aug 28, 8:25 PM · Restricted Project, Restricted Project
jacquesguan requested review of D159053: [RISCV] Support select/merge like ops for fp16 vectors when only have Zvfhmin.
Mon, Aug 28, 8:07 PM · Restricted Project, Restricted Project

Aug 24 2023

jacquesguan retitled D151869: [RISCV] Enable more builtin for zvfhmin without zvfh from [RISCV] Support more builtin for zvfhmin. to [RISCV] Enable more builtin for zvfhmin without zvfh.
Aug 24 2023, 2:46 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D151869: [RISCV] Enable more builtin for zvfhmin without zvfh.

rebase

Aug 24 2023, 2:45 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D158479: [clang] Support elementwise builtin for sizeless vector type.

remove unused cases

Aug 24 2023, 12:34 AM · Restricted Project, Restricted Project

Aug 23 2023

jacquesguan committed rG654fa9a7e898: [RISCV] Add Zvfhmin extension for clang (authored by jacquesguan).
[RISCV] Add Zvfhmin extension for clang
Aug 23 2023, 2:09 AM · Restricted Project, Restricted Project
jacquesguan closed D150253: [RISCV] Add Zvfhmin extension for clang.
Aug 23 2023, 2:09 AM · Restricted Project, Restricted Project, Restricted Project
jacquesguan committed rG879e801a9166: [RISCV] Apply promotion for f16 vector ops when only have zvfhmin (authored by jacquesguan).
[RISCV] Apply promotion for f16 vector ops when only have zvfhmin
Aug 23 2023, 1:50 AM · Restricted Project, Restricted Project
jacquesguan closed D153848: [RISCV] Apply promotion for f16 vector ops when only have zvfhmin.
Aug 23 2023, 1:49 AM · Restricted Project, Restricted Project
jacquesguan committed rG759903568ff5: [RISCV] Add Zvfhmin extension support for llvm RISCV backend (authored by jacquesguan).
[RISCV] Add Zvfhmin extension support for llvm RISCV backend
Aug 23 2023, 1:48 AM · Restricted Project, Restricted Project
jacquesguan closed D151414: [RISCV] Add Zvfhmin extension support for llvm RISCV backend.
Aug 23 2023, 1:48 AM · Restricted Project, Restricted Project
jacquesguan retitled D150253: [RISCV] Add Zvfhmin extension for clang from [RISCV] Add Zvfhmin extension for clang. to [RISCV] Add Zvfhmin extension for clang.
Aug 23 2023, 1:28 AM · Restricted Project, Restricted Project, Restricted Project
jacquesguan updated the diff for D150253: [RISCV] Add Zvfhmin extension for clang.

rebase

Aug 23 2023, 1:28 AM · Restricted Project, Restricted Project, Restricted Project

Aug 22 2023

jacquesguan retitled D153848: [RISCV] Apply promotion for f16 vector ops when only have zvfhmin from [RISCV] Apply promotion for f16 vector ops when only have zvfhmin. to [RISCV] Apply promotion for f16 vector ops when only have zvfhmin.
Aug 22 2023, 8:03 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D153848: [RISCV] Apply promotion for f16 vector ops when only have zvfhmin.

rebase

Aug 22 2023, 8:02 PM · Restricted Project, Restricted Project
jacquesguan retitled D151414: [RISCV] Add Zvfhmin extension support for llvm RISCV backend from [RISCV] Add Zvfhmin extension support for llvm RISCV backend. to [RISCV] Add Zvfhmin extension support for llvm RISCV backend.
Aug 22 2023, 7:41 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D151414: [RISCV] Add Zvfhmin extension support for llvm RISCV backend.

Rebase main.

Aug 22 2023, 7:40 PM · Restricted Project, Restricted Project
jacquesguan added inline comments to D158259: [clang][RISCV] Support operators for RVV sizeless vector types.
Aug 22 2023, 1:01 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D158259: [clang][RISCV] Support operators for RVV sizeless vector types.

add fp16 cases.

Aug 22 2023, 12:56 AM · Restricted Project, Restricted Project
jacquesguan added inline comments to D153848: [RISCV] Apply promotion for f16 vector ops when only have zvfhmin.
Aug 22 2023, 12:20 AM · Restricted Project, Restricted Project

Aug 21 2023

jacquesguan requested review of D158479: [clang] Support elementwise builtin for sizeless vector type.
Aug 21 2023, 8:23 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D158259: [clang][RISCV] Support operators for RVV sizeless vector types.

fix test cases

Aug 21 2023, 2:04 AM · Restricted Project, Restricted Project

Aug 20 2023

jacquesguan added inline comments to D158259: [clang][RISCV] Support operators for RVV sizeless vector types.
Aug 20 2023, 7:55 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D158259: [clang][RISCV] Support operators for RVV sizeless vector types.

fix if statement

Aug 20 2023, 7:52 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D158259: [clang][RISCV] Support operators for RVV sizeless vector types.

Address comment

Aug 20 2023, 7:47 PM · Restricted Project, Restricted Project
jacquesguan accepted D157130: [RISCV] Check type size for lax conversions between RVV builtin types and VectorType::RVVFixedLengthDataVector..

LGTM

Aug 20 2023, 7:01 PM · Restricted Project, Restricted Project

Aug 18 2023

jacquesguan requested review of D158259: [clang][RISCV] Support operators for RVV sizeless vector types.
Aug 18 2023, 1:24 AM · Restricted Project, Restricted Project

Aug 17 2023

jacquesguan updated the diff for D153848: [RISCV] Apply promotion for f16 vector ops when only have zvfhmin.

support int_to_fp ops

Aug 17 2023, 1:16 AM · Restricted Project, Restricted Project

Aug 16 2023

jacquesguan committed rG28741a23c9fc: [clang][SVE] Rename isVLSTBuiltinType, NFC (authored by jacquesguan).
[clang][SVE] Rename isVLSTBuiltinType, NFC
Aug 16 2023, 11:19 PM · Restricted Project, Restricted Project
jacquesguan closed D158045: [clang][SVE] Rename isVLSTBuiltinType, NFC.
Aug 16 2023, 11:18 PM · Restricted Project, Restricted Project
jacquesguan added a comment to D158045: [clang][SVE] Rename isVLSTBuiltinType, NFC.

I'd hope there are common code paths where isVLSTBuiltinType would still be useful but I guess this step is required to make that happen anyway.

If you permit a minor request can the new name please be isSveVLSBuiltinType to match the case used by the related getSveEltType function and the extra T in the old name has always bugged me.

Aug 16 2023, 7:52 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D158045: [clang][SVE] Rename isVLSTBuiltinType, NFC.

rename to isSveVLSBuiltinType.

Aug 16 2023, 7:48 PM · Restricted Project, Restricted Project
jacquesguan added a comment to D157077: [RISCV] Teach VSETVLIInserter to not demand tail policy when there is no tail element.

ping.

Aug 16 2023, 7:11 PM · Restricted Project, Restricted Project

Aug 15 2023

jacquesguan updated the diff for D158045: [clang][SVE] Rename isVLSTBuiltinType, NFC.

fix compile

Aug 15 2023, 11:13 PM · Restricted Project, Restricted Project
jacquesguan requested review of D158045: [clang][SVE] Rename isVLSTBuiltinType, NFC.
Aug 15 2023, 7:12 PM · Restricted Project, Restricted Project

Aug 14 2023

jacquesguan updated the diff for D153848: [RISCV] Apply promotion for f16 vector ops when only have zvfhmin.

rebase

Aug 14 2023, 8:33 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D151414: [RISCV] Add Zvfhmin extension support for llvm RISCV backend.

rebase main

Aug 14 2023, 7:34 PM · Restricted Project, Restricted Project
jacquesguan added a comment to D151414: [RISCV] Add Zvfhmin extension support for llvm RISCV backend.

I think that this patch and https://reviews.llvm.org/D153848 need to be committed at the same time. This will ensure that if the zvfhmin option is enabled, then we can codegen all LLVM IR.

I applied this patch and https://reviews.llvm.org/D153848, and then updated all instances of +zvfh to be +zvfhmin and re-ran the update_llc_test script for all of the files that were impacted. I found the following crash:

llvm/utils/update_llc_test_checks.py --llc-binary=build/bin/llc llvm/test/CodeGen/RISCV/regalloc-last-chance-recoloring-failure.ll
LLVM ERROR: Cannot select: intrinsic %llvm.riscv.vfwsub.w
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: build/bin/llc -mtriple=riscv64 -mattr=+f,+m,+zfh,+zvfhmin -riscv-enable-subreg-liveness=false
1.      Running pass 'Function Pass Manager' on module '<stdin>'.
2.      Running pass 'RISC-V DAG->DAG Pattern Instruction Selection' on function '@last_chance_recoloring_failure'
 #0 0x000000000178f197 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (build/bin/llc+0x178f197)
 #1 0x000000000178cebe llvm::sys::RunSignalHandlers() (build/bin/llc+0x178cebe)
 #2 0x000000000178f9af SignalHandler(int) Signals.cpp:0:0
 #3 0x00007f612c0b6cf0 __restore_rt (/lib64/libpthread.so.0+0x12cf0)
 #4 0x00007f612ab2aaff raise (/lib64/libc.so.6+0x4eaff)
 #5 0x00007f612aafdea5 abort (/lib64/libc.so.6+0x21ea5)
 #6 0x000000000170cad3 llvm::report_fatal_error(llvm::Twine const&, bool) (build/bin/llc+0x170cad3)
 #7 0x00000000015b1e3d llvm::SelectionDAGISel::CannotYetSelect(llvm::SDNode*) (build/bin/llc+0x15b1e3d)
 #8 0x00000000015b0cfb llvm::SelectionDAGISel::SelectCodeCommon(llvm::SDNode*, unsigned char const*, unsigned int) (build/bin/llc+0x15b0cfb)
 #9 0x000000000072465f llvm::RISCVDAGToDAGISel::Select(llvm::SDNode*) (build/bin/llc+0x72465f)
#10 0x00000000015a60f5 llvm::SelectionDAGISel::DoInstructionSelection() (build/bin/llc+0x15a60f5)
#11 0x00000000015a4fe2 llvm::SelectionDAGISel::CodeGenAndEmitDAG() (build/bin/llc+0x15a4fe2)
#12 0x00000000015a2b71 llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) (build/bin/llc+0x15a2b71)
#13 0x000000000159f69c llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) (build/bin/llc+0x159f69c)
#14 0x0000000000be8e2c llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (build/bin/llc+0xbe8e2c)
#15 0x0000000001102e23 llvm::FPPassManager::runOnFunction(llvm::Function&) (build/bin/llc+0x1102e23)
#16 0x000000000110aaa1 llvm::FPPassManager::runOnModule(llvm::Module&) (build/bin/llc+0x110aaa1)
#17 0x0000000001103626 llvm::legacy::PassManagerImpl::run(llvm::Module&) (build/bin/llc+0x1103626)
#18 0x00000000006987e8 compileModule(char**, llvm::LLVMContext&) llc.cpp:0:0
#19 0x00000000006962bd main (build/bin/llc+0x6962bd)
#20 0x00007f612ab16d85 __libc_start_main (/lib64/libc.so.6+0x3ad85)
#21 0x0000000000692c6e _start (build/bin/llc+0x692c6e)

I think we need to be able to update this patch or the type promotion patch to make sure we don't get any crashes like this when we run the experiment I describe above.

Aug 14 2023, 7:31 PM · Restricted Project, Restricted Project

Aug 13 2023

jacquesguan accepted D157831: [AVR][NFC] Remove unused instruction classes.

LGTM

Aug 13 2023, 11:09 PM · Restricted Project, Restricted Project
jacquesguan committed rG9d0cf88e7086: [clang][doc] Mark _Float16 is support natively when Zfh or Zhinx is available (authored by jacquesguan).
[clang][doc] Mark _Float16 is support natively when Zfh or Zhinx is available
Aug 13 2023, 8:27 PM · Restricted Project, Restricted Project
jacquesguan closed D157693: [clang][doc] Mark _Float16 is support natively when Zfh or Zhinx is available.
Aug 13 2023, 8:27 PM · Restricted Project, Restricted Project
jacquesguan added inline comments to D157693: [clang][doc] Mark _Float16 is support natively when Zfh or Zhinx is available.
Aug 13 2023, 8:21 PM · Restricted Project, Restricted Project
jacquesguan retitled D157693: [clang][doc] Mark _Float16 is support natively when Zfh or Zhinx is available from [clang][doc] Mark _Float16 is support natively when Zfh is available to [clang][doc] Mark _Float16 is support natively when Zfh or Zhinx is available.
Aug 13 2023, 8:21 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D157693: [clang][doc] Mark _Float16 is support natively when Zfh or Zhinx is available.

Add Zhinx.

Aug 13 2023, 8:20 PM · Restricted Project, Restricted Project
jacquesguan added a comment to D121187: [DAGCombiner][VP] Add DAGCombine for VP_MUL..

I'm concerned about the number of checks for IsVP. It looks like maybe this function will be hard to maintain in the future. Every new change will have to think about whether it works for VP. Most LLVM developers don't care about VP so may miss this detail.

Aug 13 2023, 7:16 PM · Restricted Project, Restricted Project

Aug 11 2023

jacquesguan retitled D157693: [clang][doc] Mark _Float16 is support natively when Zfh or Zhinx is available from [clang][doc] Mark _Float16 is support natively when Zfh or Zfhmin is available to [clang][doc] Mark _Float16 is support natively when Zfh is available.
Aug 11 2023, 2:42 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D157693: [clang][doc] Mark _Float16 is support natively when Zfh or Zhinx is available.

remove zfmin

Aug 11 2023, 2:41 AM · Restricted Project, Restricted Project
jacquesguan requested review of D157693: [clang][doc] Mark _Float16 is support natively when Zfh or Zhinx is available.
Aug 11 2023, 2:39 AM · Restricted Project, Restricted Project

Aug 10 2023

jacquesguan accepted D157584: [clang][Sema] Skip access check on arrays of zero-length element.

LGTM

Aug 10 2023, 7:13 PM · Restricted Project, Restricted Project
jacquesguan added a comment to D151414: [RISCV] Add Zvfhmin extension support for llvm RISCV backend.

ping.

Aug 10 2023, 6:58 PM · Restricted Project, Restricted Project
jacquesguan committed rG8901eb281f0a: [RISCV] Fix zihintntl test (authored by jacquesguan).
[RISCV] Fix zihintntl test
Aug 10 2023, 2:31 AM · Restricted Project, Restricted Project
jacquesguan committed rGf808788487ab: [RISCV] Remove experimental for zihintntl (authored by jacquesguan).
[RISCV] Remove experimental for zihintntl
Aug 10 2023, 2:05 AM · Restricted Project, Restricted Project, Restricted Project
jacquesguan closed D151547: [RISCV] Remove experimental for zihintntl.
Aug 10 2023, 2:05 AM · Restricted Project, Restricted Project, Restricted Project
jacquesguan accepted D157586: [clang][AVR] Restrict IntMaxType to 16-bit signed integer.

LGTM

Aug 10 2023, 1:37 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D151547: [RISCV] Remove experimental for zihintntl.

Address comment.

Aug 10 2023, 12:53 AM · Restricted Project, Restricted Project, Restricted Project

Aug 9 2023

jacquesguan retitled D151547: [RISCV] Remove experimental for zihintntl from [RISCV] Remove experimental for zihintntl. to [RISCV] Remove experimental for zihintntl.
Aug 9 2023, 6:55 PM · Restricted Project, Restricted Project, Restricted Project
jacquesguan updated the diff for D151547: [RISCV] Remove experimental for zihintntl.

rebase and add release note.

Aug 9 2023, 6:55 PM · Restricted Project, Restricted Project, Restricted Project

Aug 8 2023

jacquesguan updated the diff for D157077: [RISCV] Teach VSETVLIInserter to not demand tail policy when there is no tail element.

Address comment.

Aug 8 2023, 7:56 PM · Restricted Project, Restricted Project
jacquesguan added inline comments to D153848: [RISCV] Apply promotion for f16 vector ops when only have zvfhmin.
Aug 8 2023, 1:35 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D153848: [RISCV] Apply promotion for f16 vector ops when only have zvfhmin.

Address comment.

Aug 8 2023, 1:23 AM · Restricted Project, Restricted Project
jacquesguan added inline comments to D157077: [RISCV] Teach VSETVLIInserter to not demand tail policy when there is no tail element.
Aug 8 2023, 12:32 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D157077: [RISCV] Teach VSETVLIInserter to not demand tail policy when there is no tail element.

Use tail agnostic.

Aug 8 2023, 12:31 AM · Restricted Project, Restricted Project

Aug 7 2023

jacquesguan updated the diff for D157077: [RISCV] Teach VSETVLIInserter to not demand tail policy when there is no tail element.

change switch to equal.

Aug 7 2023, 8:36 PM · Restricted Project, Restricted Project
jacquesguan added inline comments to D157077: [RISCV] Teach VSETVLIInserter to not demand tail policy when there is no tail element.
Aug 7 2023, 8:34 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D157077: [RISCV] Teach VSETVLIInserter to not demand tail policy when there is no tail element.

Address comment.

Aug 7 2023, 8:31 PM · Restricted Project, Restricted Project

Aug 4 2023

jacquesguan requested review of D157077: [RISCV] Teach VSETVLIInserter to not demand tail policy when there is no tail element.
Aug 4 2023, 1:01 AM · Restricted Project, Restricted Project

Aug 3 2023

jacquesguan added a comment to D121187: [DAGCombiner][VP] Add DAGCombine for VP_MUL..

ping...

Aug 3 2023, 1:13 AM · Restricted Project, Restricted Project

Aug 2 2023

jacquesguan updated the diff for D153848: [RISCV] Apply promotion for f16 vector ops when only have zvfhmin.

Add widen instruction test cases.

Aug 2 2023, 1:46 AM · Restricted Project, Restricted Project
jacquesguan added inline comments to D153848: [RISCV] Apply promotion for f16 vector ops when only have zvfhmin.
Aug 2 2023, 1:18 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D153848: [RISCV] Apply promotion for f16 vector ops when only have zvfhmin.

Address comment.

Aug 2 2023, 1:12 AM · Restricted Project, Restricted Project
jacquesguan accepted D156692: [RISCV] Scalarize binop followed by extractelement to custom lowered instruction.
Aug 2 2023, 12:27 AM · Restricted Project, Restricted Project

Aug 1 2023

jacquesguan added a comment to D151414: [RISCV] Add Zvfhmin extension support for llvm RISCV backend.

If I add RUN line with zvfhmin instead of zvfh llvm/test/CodeGen/RISCV/rvv/vfwnmacc-vp.ll, the compiler gives LLVM ERROR: Cannot select: t31: nxv1f32 = RISCVISD::VFWNMADD_VL t2, t4, t6, t8, t13, followed by trace. Probably need to check for zvfh in performVFMADD_VLCombine? Also maybe need to check in other functions like performFADDSUB_VLCombine?

Thanks to point it. I add a check to prevent the combination to widen op when we have only zvfhmin. But these test can not pass with RUN line zvfhmin because the vf form need promotion of splat, when implement in https://reviews.llvm.org/D153848.

Should this patch depend on the type promotion patch then?

Aug 1 2023, 11:21 PM · Restricted Project, Restricted Project
jacquesguan added a comment to D151414: [RISCV] Add Zvfhmin extension support for llvm RISCV backend.

If I add RUN line with zvfhmin instead of zvfh llvm/test/CodeGen/RISCV/rvv/vfwnmacc-vp.ll, the compiler gives LLVM ERROR: Cannot select: t31: nxv1f32 = RISCVISD::VFWNMADD_VL t2, t4, t6, t8, t13, followed by trace. Probably need to check for zvfh in performVFMADD_VLCombine? Also maybe need to check in other functions like performFADDSUB_VLCombine?

Aug 1 2023, 7:58 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D151414: [RISCV] Add Zvfhmin extension support for llvm RISCV backend.

Address comment.

Aug 1 2023, 7:53 PM · Restricted Project, Restricted Project
jacquesguan added inline comments to D151414: [RISCV] Add Zvfhmin extension support for llvm RISCV backend.
Aug 1 2023, 6:58 PM · Restricted Project, Restricted Project

Jul 30 2023

jacquesguan committed rGb7408ebbb7d8: [RISCV] Use x0 in vsetvli when avl is equal to vlmax. (authored by jacquesguan).
[RISCV] Use x0 in vsetvli when avl is equal to vlmax.
Jul 30 2023, 6:50 PM · Restricted Project, Restricted Project
jacquesguan closed D156404: [RISCV] Use x0 in vsetvli when avl is equal to vlmax..
Jul 30 2023, 6:49 PM · Restricted Project, Restricted Project

Jul 28 2023

jacquesguan added inline comments to D156404: [RISCV] Use x0 in vsetvli when avl is equal to vlmax..
Jul 28 2023, 1:30 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D156404: [RISCV] Use x0 in vsetvli when avl is equal to vlmax..

address comment.

Jul 28 2023, 1:22 AM · Restricted Project, Restricted Project

Jul 27 2023

jacquesguan updated the diff for D151414: [RISCV] Add Zvfhmin extension support for llvm RISCV backend.

rebase main

Jul 27 2023, 8:06 PM · Restricted Project, Restricted Project
jacquesguan requested review of D156404: [RISCV] Use x0 in vsetvli when avl is equal to vlmax..
Jul 27 2023, 2:30 AM · Restricted Project, Restricted Project
jacquesguan committed rG5d6d6493ff74: [RISCV][NFC] Simplify lowerVPOp. (authored by jacquesguan).
[RISCV][NFC] Simplify lowerVPOp.
Jul 27 2023, 1:42 AM · Restricted Project, Restricted Project