Page MenuHomePhabricator

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

joshua-arch1 (Jun Sha)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 27 2020, 12:27 AM (164 w, 5 d)

Recent Activity

Aug 9 2023

joshua-arch1 accepted D157287: [LegalizeTypes][RISCV] Correct FP_TO_{S,U}INT expansion when bf16 isn't a legal type.
Aug 9 2023, 1:35 AM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D157287: [LegalizeTypes][RISCV] Correct FP_TO_{S,U}INT expansion when bf16 isn't a legal type.

LGTM. That's exactly what I meant to do when commenting in D156990.

Aug 9 2023, 1:34 AM · Restricted Project, Restricted Project

Aug 3 2023

joshua-arch1 added a comment to D156990: [LegalizeTypes][RISCV] Support libcalls for fpto{s,u}i of bfloat by extending to f32 first.

Have you tried to directly modify some implementation in ExpandIntRes_FP_TO_{S,U}INT by adding another possibility of BF16_TO_FP when the FP type is TypeSoftPromoteHalf?

Aug 3 2023, 7:33 PM · Restricted Project, Restricted Project
joshua-arch1 added a reviewer for D156990: [LegalizeTypes][RISCV] Support libcalls for fpto{s,u}i of bfloat by extending to f32 first: joshua-arch1.
Aug 3 2023, 7:26 PM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D156990: [LegalizeTypes][RISCV] Support libcalls for fpto{s,u}i of bfloat by extending to f32 first.

Can you add some cases without zfbfmin?

Aug 3 2023, 7:19 PM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D156943: [RISCV] Implement straight-forward bf16<->int conversion cases.

Maybe we are now confronted with a general issue. Are there any other operations that cannot be converted into f32 in front-end? I think you have noticed comparison and bf16-to-integer conversion.

Aug 3 2023, 12:46 AM · Restricted Project, Restricted Project
joshua-arch1 accepted D156943: [RISCV] Implement straight-forward bf16<->int conversion cases.
Aug 3 2023, 12:41 AM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D156943: [RISCV] Implement straight-forward bf16<->int conversion cases.

LGTM.

Aug 3 2023, 12:41 AM · Restricted Project, Restricted Project

Jul 31 2023

joshua-arch1 committed rGa5791bfef4e4: [RISCV][BF16] Enable __bf16 for riscv targets (authored by joshua-arch1).
[RISCV][BF16] Enable __bf16 for riscv targets
Jul 31 2023, 10:59 PM · Restricted Project, Restricted Project
joshua-arch1 closed D150929: [RISCV][BF16] Enable __bf16 for riscv targets.
Jul 31 2023, 10:59 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 committed rG934b4905306d: [RISCV] Expand load extension / truncate store for bf16 (authored by joshua-arch1).
[RISCV] Expand load extension / truncate store for bf16
Jul 31 2023, 8:10 PM · Restricted Project, Restricted Project
joshua-arch1 closed D156646: [RISCV] Expand load extension / truncate store for bf16.
Jul 31 2023, 8:10 PM · Restricted Project, Restricted Project

Jul 30 2023

joshua-arch1 added a comment to D150929: [RISCV][BF16] Enable __bf16 for riscv targets.

This test crashes

float foo(__bf16 a, __bf16 b)  {
  return a + b;
}
error in backend: Cannot select: t35: f32,ch = load<(dereferenceable load (s16) from %ir.b.addr), anyext from bf16> t49, FrameIndex:i32<1>, undef:i32
Jul 30 2023, 11:52 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 requested review of D156646: [RISCV] Expand load extension / truncate store for bf16.
Jul 30 2023, 11:52 PM · Restricted Project, Restricted Project
joshua-arch1 added a reviewer for D150929: [RISCV][BF16] Enable __bf16 for riscv targets: MaskRay.
Jul 30 2023, 8:33 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 added a comment to D150929: [RISCV][BF16] Enable __bf16 for riscv targets.

Ping.

Jul 30 2023, 6:44 PM · Restricted Project, Restricted Project, Restricted Project

Jul 28 2023

joshua-arch1 committed rG62a251f824f6: [Clang][BFloat16] Upgrade __bf16 by supporting increment/decrement operations (authored by joshua-arch1).
[Clang][BFloat16] Upgrade __bf16 by supporting increment/decrement operations
Jul 28 2023, 1:21 AM · Restricted Project, Restricted Project
joshua-arch1 closed D152768: [Clang][BFloat16] Upgrade __bf16 by supporting increment/decrement operations.
Jul 28 2023, 1:21 AM · Restricted Project, Restricted Project
joshua-arch1 updated the summary of D150929: [RISCV][BF16] Enable __bf16 for riscv targets.
Jul 28 2023, 1:09 AM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 added a comment to D150929: [RISCV][BF16] Enable __bf16 for riscv targets.

Since bf16 has been supported in backend, we can now come back to this clang patch. @craig.topper

Jul 28 2023, 1:08 AM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 abandoned D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.
Jul 28 2023, 1:05 AM · Restricted Project, Restricted Project
joshua-arch1 committed rGe56bf133170c: [RISCV] Remove some instructions from Zvfbfwma by implying Zfbfmin according to… (authored by joshua-arch1).
[RISCV] Remove some instructions from Zvfbfwma by implying Zfbfmin according to…
Jul 28 2023, 12:52 AM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 closed D155916: [RISCV] Remove some instructions from Zvfbfwma by implying Zfbfmin according to the latest spec.
Jul 28 2023, 12:51 AM · Restricted Project, Restricted Project, Restricted Project

Jul 27 2023

joshua-arch1 committed rG2b6df4a336cc: [RISCV] Add codegen support for bf16 vector (authored by joshua-arch1).
[RISCV] Add codegen support for bf16 vector
Jul 27 2023, 7:32 PM · Restricted Project, Restricted Project
joshua-arch1 closed D156287: [RISCV] Add codegen support for bf16 vector.
Jul 27 2023, 7:31 PM · Restricted Project, Restricted Project

Jul 26 2023

joshua-arch1 updated the diff for D156287: [RISCV] Add codegen support for bf16 vector.

Put the predicate both on the pseudo and the pattern.

Jul 26 2023, 7:01 PM · Restricted Project, Restricted Project
joshua-arch1 updated the diff for D156287: [RISCV] Add codegen support for bf16 vector.

Use 7 for rounding mode in testcases.

Jul 26 2023, 2:00 AM · Restricted Project, Restricted Project

Jul 25 2023

joshua-arch1 requested review of D156287: [RISCV] Add codegen support for bf16 vector.
Jul 25 2023, 8:15 PM · Restricted Project, Restricted Project

Jul 23 2023

joshua-arch1 updated the diff for D155916: [RISCV] Remove some instructions from Zvfbfwma by implying Zfbfmin according to the latest spec.

Adjust the spec version from 0.6 to 0.8

Jul 23 2023, 7:54 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 committed rGf375ee36c4e1: [RISCV] Add codegen for Zfbfmin instructions (authored by joshua-arch1).
[RISCV] Add codegen for Zfbfmin instructions
Jul 23 2023, 7:38 PM · Restricted Project, Restricted Project
joshua-arch1 closed D153234: [RISCV] Add codegen for Zfbfmin instructions.
Jul 23 2023, 7:38 PM · Restricted Project, Restricted Project

Jul 20 2023

joshua-arch1 updated the diff for D153234: [RISCV] Add codegen for Zfbfmin instructions.

Relax the types in the type constraints for SDT_RISCVFMV_H_X and SDT_RISCV_FMV_X_EXTH

Jul 20 2023, 11:58 PM · Restricted Project, Restricted Project
joshua-arch1 updated the summary of D155916: [RISCV] Remove some instructions from Zvfbfwma by implying Zfbfmin according to the latest spec.
Jul 20 2023, 10:48 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 requested review of D155916: [RISCV] Remove some instructions from Zvfbfwma by implying Zfbfmin according to the latest spec.
Jul 20 2023, 10:47 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 updated the diff for D153234: [RISCV] Add codegen for Zfbfmin instructions.

Move bf16 patterns into RISCVInstrInfoZfbfmin.td

Jul 20 2023, 2:46 AM · Restricted Project, Restricted Project

Jul 17 2023

joshua-arch1 updated the diff for D153234: [RISCV] Add codegen for Zfbfmin instructions.

Use the FPR16 register class for bf16 instructions

Jul 17 2023, 8:07 PM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D155418: [RISCV] Add bf16 as a valid type for the FPR16 register class..

Can you explain why it will be hard to maintain? The complexity of supporting Zfinx/Zdinx/Zhinx and all the special patterns for Zfhmin already seems way worse than passing an extra Valuetype to some classes.

I see. It seems that passing Valuetype to some codegen classes is the most effective way to address this issue if you want to use the same register class for different types. What we need to do now is to confirm that reusing FPR16 for bf16 is actually better than adding a new register class.

AArch64 also takes the approach of using a single register class for fp16 and bf16. Maybe there's some discussion around that decision we can find?

Jul 17 2023, 2:12 AM · Restricted Project, Restricted Project

Jul 16 2023

joshua-arch1 added a comment to D155418: [RISCV] Add bf16 as a valid type for the FPR16 register class..

Can you explain why it will be hard to maintain? The complexity of supporting Zfinx/Zdinx/Zhinx and all the special patterns for Zfhmin already seems way worse than passing an extra Valuetype to some classes.

Jul 16 2023, 11:20 PM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D155418: [RISCV] Add bf16 as a valid type for the FPR16 register class..

Why are some patterns using FPR32 and FPR64 modified too?

Because they use the same classes in tablegen and I had to add a ValueType parameter to them.

Jul 16 2023, 10:55 PM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D155418: [RISCV] Add bf16 as a valid type for the FPR16 register class..

Why are some patterns using FPR32 and FPR64 modified too?

Jul 16 2023, 10:46 PM · Restricted Project, Restricted Project
joshua-arch1 updated the diff for D153234: [RISCV] Add codegen for Zfbfmin instructions.

Use predicate HasScalarHalfFPLoadStoreMove for patterns that f16 and bf16 share

Jul 16 2023, 10:40 PM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D153234: [RISCV] Add codegen for Zfbfmin instructions.

@joshua-arch1 are you still planning to work through the review feedback from Craig? Happy to help if useful.

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

Jun 26 2023

joshua-arch1 added a comment to D152895: [RISCV][Lsan] Set allocator for AP64.

Can lsan work for riscv64 now? I can run binaries compiled with -fsanitize=address adding ASAN_OPTIONS=detect_leaks=1, but no memory-leak error is reported.

Asan and Lsan should work on SV39 virtual memory mapping mode without applying this patchset.
There was an Asan/Lsan porting done by @EccoTheDolphin (https://reviews.llvm.org/D87580) and @luismarques (https://reviews.llvm.org/D92403).

Jun 26 2023, 6:52 PM · Restricted Project, Restricted Project

Jun 24 2023

joshua-arch1 added a comment to D153234: [RISCV] Add codegen for Zfbfmin instructions.

Ping.

Jun 24 2023, 10:57 PM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D152498: [RISCV][Clang] Add bf16-type vector support for RVV.

I don’t see tests for load or store or function arguments or returns.

Do the IR types need to be made legal in the backend.

Jun 24 2023, 8:34 PM · Restricted Project
joshua-arch1 added a comment to D152895: [RISCV][Lsan] Set allocator for AP64.

Can lsan work for riscv64 now? I can run binaries compiled with -fsanitize=address adding ASAN_OPTIONS=detect_leaks=1, but no memory-leak error is reported.

This file applies to standalone lsan, without asan.

Jun 24 2023, 7:47 PM · Restricted Project, Restricted Project

Jun 21 2023

joshua-arch1 updated the diff for D152498: [RISCV][Clang] Add bf16-type vector support for RVV.
Jun 21 2023, 1:22 AM · Restricted Project
joshua-arch1 added a comment to D152895: [RISCV][Lsan] Set allocator for AP64.

Can lsan work for riscv64 now? I can run binaries compiled with -fsanitize=address adding ASAN_OPTIONS=detect_leaks=1, but no memory-leak error is reported.

Jun 21 2023, 12:14 AM · Restricted Project, Restricted Project

Jun 19 2023

joshua-arch1 updated the diff for D153234: [RISCV] Add codegen for Zfbfmin instructions.

Rebase, as well as change the operand type in riscv_fpround_bf16/riscv_fpextend_bf16 from f16 to bf16.

Jun 19 2023, 7:42 PM · Restricted Project, Restricted Project
joshua-arch1 updated the diff for D153234: [RISCV] Add codegen for Zfbfmin instructions.

To avoid crash in AArch64, ConstantFP nodes default to expand only in RISCV.

Jun 19 2023, 2:18 AM · Restricted Project, Restricted Project

Jun 18 2023

joshua-arch1 updated the diff for D153234: [RISCV] Add codegen for Zfbfmin instructions.
Jun 18 2023, 7:05 PM · Restricted Project, Restricted Project
joshua-arch1 updated the diff for D153234: [RISCV] Add codegen for Zfbfmin instructions.
Jun 18 2023, 7:01 PM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D152498: [RISCV][Clang] Add bf16-type vector support for RVV.

Ping.

Jun 18 2023, 6:47 PM · Restricted Project
joshua-arch1 requested review of D153234: [RISCV] Add codegen for Zfbfmin instructions.
Jun 18 2023, 6:40 PM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.

The first version of this patch came in May 24th, earlier than a similar patch implemented by @asb https://reviews.llvm.org/D151663. Why could @asb's patch be accepted first?

Jun 18 2023, 6:27 PM · Restricted Project, Restricted Project

Jun 12 2023

joshua-arch1 requested review of D152768: [Clang][BFloat16] Upgrade __bf16 by supporting increment/decrement operations.
Jun 12 2023, 7:21 PM · Restricted Project, Restricted Project

Jun 9 2023

joshua-arch1 updated the diff for D152498: [RISCV][Clang] Add bf16-type vector support for RVV.
Jun 9 2023, 12:49 AM · Restricted Project
joshua-arch1 updated the diff for D152498: [RISCV][Clang] Add bf16-type vector support for RVV.
Jun 9 2023, 12:37 AM · Restricted Project
joshua-arch1 updated the diff for D152498: [RISCV][Clang] Add bf16-type vector support for RVV.
  1. Add argument IsBF to RVV_VECTOR_TYPE()
  2. Add test for bf16 vectors in rvv-intrinsic-datatypes.cpp
Jun 9 2023, 12:15 AM · Restricted Project

Jun 8 2023

joshua-arch1 added a comment to D151663: [RISCV] Implement support for bf16 truncate/extend on hard FP targets.
Jun 8 2023, 11:22 PM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.
Jun 8 2023, 10:48 PM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D152498: [RISCV][Clang] Add bf16-type vector support for RVV.

No tests showing IR output?

Jun 8 2023, 10:43 PM · Restricted Project
joshua-arch1 updated the summary of D152498: [RISCV][Clang] Add bf16-type vector support for RVV.
Jun 8 2023, 10:42 PM · Restricted Project
joshua-arch1 requested review of D152498: [RISCV][Clang] Add bf16-type vector support for RVV.
Jun 8 2023, 10:38 PM · Restricted Project

Jun 4 2023

joshua-arch1 added a comment to D151663: [RISCV] Implement support for bf16 truncate/extend on hard FP targets.

Are you still working on this patch? I have implemented a similar one early in May 24th.
https://reviews.llvm.org/D151313

Jun 4 2023, 10:54 PM · Restricted Project, Restricted Project
joshua-arch1 updated the diff for D150929: [RISCV][BF16] Enable __bf16 for riscv targets.
Jun 4 2023, 10:40 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 updated the diff for D150929: [RISCV][BF16] Enable __bf16 for riscv targets.
Jun 4 2023, 7:48 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 added a comment to D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.
Jun 4 2023, 7:20 PM · Restricted Project, Restricted Project
joshua-arch1 added a reviewer for D151663: [RISCV] Implement support for bf16 truncate/extend on hard FP targets: joshua-arch1.
Jun 4 2023, 7:20 PM · Restricted Project, Restricted Project

May 28 2023

joshua-arch1 added a comment to D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.
May 28 2023, 8:39 PM · Restricted Project, Restricted Project

May 26 2023

joshua-arch1 updated the diff for D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.

Update FP_TO_BF16 lowering by __truncsfbf2 libcall.

May 26 2023, 12:06 AM · Restricted Project, Restricted Project

May 25 2023

joshua-arch1 updated the diff for D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.

Modify implementation for f64 input.

May 25 2023, 7:11 PM · Restricted Project, Restricted Project
joshua-arch1 updated the diff for D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.

Address bf16_to_fp/fp_to_bf16 via bitcast and shift.

May 25 2023, 5:13 AM · Restricted Project, Restricted Project

May 24 2023

joshua-arch1 updated the diff for D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.

Modify libcall for single-bfloat conversion.

May 24 2023, 7:49 AM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.

Sorry to not have specifics on this - I'm working on a patch in this same area and as you've found as well, it's quite fiddly. Using the __truncsfhf2 and __extendhfsf2 libcalls isn't correct - they expect 16-bit floats in a different format to bfloat16.

May 24 2023, 7:20 AM · Restricted Project, Restricted Project
joshua-arch1 added a comment to D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.
May 24 2023, 6:51 AM · Restricted Project, Restricted Project
joshua-arch1 updated the diff for D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.
May 24 2023, 3:00 AM · Restricted Project, Restricted Project
joshua-arch1 updated the summary of D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.
May 24 2023, 2:58 AM · Restricted Project, Restricted Project
joshua-arch1 requested review of D151313: [RISCV][BF16] Make backend type bf16 to follow the psABI.
May 24 2023, 2:57 AM · Restricted Project, Restricted Project

May 23 2023

joshua-arch1 added a comment to D150929: [RISCV][BF16] Enable __bf16 for riscv targets.

I feel (IMHO) this is jumping to the endpoint a bit - the usual route for something like this is:

  • MC layer support
  • LLVM codegen support (and tests!)
  • Any needed Clang support

I was hoping to push out some patches related to zfbfmin tests+codegen today but might time-out (if so, I'll return to it tomorrow).

I think the tentative conclusion of https://discourse.llvm.org/t/rfc-c-23-p1467r9-extended-floating-point-types-and-standard-names/70033 is to make __bf16_t an arithmetic type on all targets - I'd recommend keeping an eye on https://reviews.llvm.org/D150913 (and ideally helping to review it), as that's bound to interact with this patch.

May 23 2023, 7:19 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 updated the diff for D150929: [RISCV][BF16] Enable __bf16 for riscv targets.
May 23 2023, 5:15 AM · Restricted Project, Restricted Project, Restricted Project

May 22 2023

joshua-arch1 updated the diff for D150929: [RISCV][BF16] Enable __bf16 for riscv targets.
May 22 2023, 7:13 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 added a comment to D150929: [RISCV][BF16] Enable __bf16 for riscv targets.
May 22 2023, 7:02 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 updated the diff for D150929: [RISCV][BF16] Enable __bf16 for riscv targets.
May 22 2023, 5:11 AM · Restricted Project, Restricted Project, Restricted Project

May 21 2023

joshua-arch1 updated the diff for D150929: [RISCV][BF16] Enable __bf16 for riscv targets.

Just like AArch64 and X86, I have updated my implementation by limiting bfloat16 only when Zfbfmin/Zvfbfmin/Zvfbfwma are enabled. Now the compiler can work for bfloat16 programs without crashing.

May 21 2023, 8:00 PM · Restricted Project, Restricted Project, Restricted Project

May 19 2023

joshua-arch1 added a comment to D147610: [RISCV][MC] Add support for experimental Zfbfmin extension.

Hi, I'm adding support for __bf16 in clang, which will rely on FeatureStdExtZfbfmin. Can you merge this patch?

May 19 2023, 2:39 AM · Restricted Project, Restricted Project, Restricted Project

May 18 2023

joshua-arch1 added a comment to D150929: [RISCV][BF16] Enable __bf16 for riscv targets.

That doesn’t matter. The test I sent crashes, thats not acceptable.

Probably also means the ABI is not being implemented correctly.

May 18 2023, 11:37 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 added a comment to D150929: [RISCV][BF16] Enable __bf16 for riscv targets.

This test seems to crash in the backend with -march=rv64gc -mabi=lp64d

 __bf16 h1(__bf16 a) {
  return a;
}

I haven't done any backend support fo bf16 yet. What I want to do in this patch is only to enable __bf16 for clang.

We can’t have the compiler crashing if you use it. The backend has to go first.

May 18 2023, 11:16 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 added a comment to D150929: [RISCV][BF16] Enable __bf16 for riscv targets.

This test seems to crash in the backend with -march=rv64gc -mabi=lp64d

 __bf16 h1(__bf16 a) {
  return a;
}
May 18 2023, 11:09 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 updated the diff for D150929: [RISCV][BF16] Enable __bf16 for riscv targets.
May 18 2023, 8:01 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 requested review of D150929: [RISCV][BF16] Enable __bf16 for riscv targets.
May 18 2023, 7:53 PM · Restricted Project, Restricted Project, Restricted Project

Apr 25 2023

joshua-arch1 added a comment to D147610: [RISCV][MC] Add support for experimental Zfbfmin extension.

The RVI toolchain SIG is supposed to be setting up a task group to define intrinsics for all extensions.

Apr 25 2023, 6:54 PM · Restricted Project, Restricted Project, Restricted Project

Apr 24 2023

joshua-arch1 added a comment to D147610: [RISCV][MC] Add support for experimental Zfbfmin extension.

I'm wondering whether it is appropriate to just use FPR16 for the destination of fcvt.bf16.s? The destination is in BF16 format instead of simple FP16. Your implemention looks like just replacing fcvt.h.s with fcvt.bf16.s. Do we need to define a new register class?

Registers classes only distinguished by the registers in them and what their alignment and spill size are. It doesn't define anything about the format of the register. A BF16 specific register class would be identical in those properties to the FPR16 register class.

Apr 24 2023, 8:30 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 added a comment to D147610: [RISCV][MC] Add support for experimental Zfbfmin extension.

I'm wondering whether it is appropriate to just use FPR16 for the destination of fcvt.bf16.s? The destination is in BF16 format instead of simple FP16. Your implemention looks like just replacing fcvt.h.s with fcvt.bf16.s. Do we need to define a new register class?

Apr 24 2023, 7:26 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 added a comment to D147610: [RISCV][MC] Add support for experimental Zfbfmin extension.
Apr 24 2023, 1:43 AM · Restricted Project, Restricted Project, Restricted Project

Apr 19 2023

joshua-arch1 committed rG100d2079f605: [RISCV] Add scheduling for Zfa instructions (authored by joshua-arch1).
[RISCV] Add scheduling for Zfa instructions
Apr 19 2023, 10:51 PM · Restricted Project, Restricted Project
joshua-arch1 closed D148686: [RISCV] Add scheduling for Zfa instructions.
Apr 19 2023, 10:51 PM · Restricted Project, Restricted Project
joshua-arch1 updated the diff for D148686: [RISCV] Add scheduling for Zfa instructions.
Apr 19 2023, 7:49 PM · Restricted Project, Restricted Project
joshua-arch1 committed rG3f81d25cee70: [RISCV] Remove 'sx' when parsing arch string to match the latest ISA manual (authored by joshua-arch1).
[RISCV] Remove 'sx' when parsing arch string to match the latest ISA manual
Apr 19 2023, 7:32 PM · Restricted Project, Restricted Project, Restricted Project
joshua-arch1 closed D148617: [RISCV] Remove 'sx' when parsing arch string to match the latest ISA manual.
Apr 19 2023, 7:32 PM · Restricted Project, Restricted Project, Restricted Project