Skip to content

Conversation

@yurai007
Copy link
Contributor

@yurai007 yurai007 commented Nov 13, 2023

This PR focus mostly on NYI_RISCV64s that are easy to fix, remove or classify as ones that will need more care in future.

Part of #84834
cc @wscho77 @HJLeee @clamp03 @JongHeonChoi @t-mustafin @gbalykov @ashaurtaev @sirntar @tomeksowi @Bajtazar

In 6ca0784 commit, function genCodeForNegNot diverged from her LoongArch friend
and didn't call genGetInsForOper since then. Therefore we can remove
GT_NEG/GT_NOT integer cases and GT_NEG float case as there are all dead.
Given that such function doesn't make sense outside x86/x64 mov instruction context
we can get rid of definition.
It looks like emitInsToJumpKind is helper function coming from ARM large jump handling logic.
Currently RISC-V emitter doesn't rely on instruction format
and probably won't need anything like ARM large jump handling.
For the cases when unreachability is easy to prove we can
express that fact by using proper NO_WAY macro.
@ghost ghost added community-contribution Indicates that the PR has been added by a community member area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI labels Nov 13, 2023
@ghost
Copy link

ghost commented Nov 13, 2023

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.

Issue Details

This PR focus mostly on NYI_RISCV64s that are easy to fix, remove or classify as ones that will need more care in future.

Part of #84834
cc @wscho77 @HJLeee @clamp03 @JongHeonChoi @t-mustafin @gbalykov @ashaurtaev @sirntar @tomeksowi

Author: yurai007
Assignees: -
Labels:

area-CodeGen-coreclr, community-contribution

Milestone: -

@clamp03 clamp03 added the arch-riscv Related to the RISC-V architecture label Nov 14, 2023
When control flow reach needCheckOv in intConst block,
only addi/addiw instructions can be handled there and first NYI_RISCV64 is redundant.
Remaining condition statements starting with GT_MUL case can be replaced
with more straightforward switch statement and then second NYI_RISCV64 is redundant.
@yurai007 yurai007 force-pushed the fix-nyi-in-codegen-and-emit branch from 0bdf685 to b2c62ec Compare November 14, 2023 15:20
@clamp03 clamp03 requested a review from jakobbotsch November 20, 2023 08:29
When no helper for codeKind is available we need to emit
appropriate code directly.
@yurai007 yurai007 force-pushed the fix-nyi-in-codegen-and-emit branch from a0c4256 to 78f90c7 Compare November 21, 2023 08:56
@clamp03
Copy link
Member

clamp03 commented Nov 21, 2023

@jakobbotsch Could you review this PR? Thank you.

@jakobbotsch jakobbotsch merged commit 8ebe003 into dotnet:main Nov 21, 2023
@github-actions github-actions bot locked and limited conversation to collaborators Dec 22, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

arch-riscv Related to the RISC-V architecture area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI community-contribution Indicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants