[RISC-V][JIT] JIT/CodeGenBringUpTest (#84748)
authorDong-Heon Jung <clamp03@gmail.com>
Thu, 27 Apr 2023 17:11:25 +0000 (02:11 +0900)
committerGitHub <noreply@github.com>
Thu, 27 Apr 2023 17:11:25 +0000 (19:11 +0200)
commit4dbaddb7e947941654a77f932f8dd34194f76027
tree78fdd4efc46990392a903425e5fdcfee8a63ffd5
parent5d65dd634aa91afe76f65e17fffb9d672cb991ef
[RISC-V][JIT] JIT/CodeGenBringUpTest (#84748)

* [JIT] Update RISCV64

- Update Floating Point Compare
- Implement NYI functions

* [JIT] Update RISCV64

- Implement NYI functions

* [JIT] FIX TEST ERRORS

- Implement NYI functions

* [JIT] FIX TEST ERROR

- Update genFnPrologCalleeRegArgs

* [JIT] FIX TEST ERRORS

* [JIT] FIX TEST ERROR

Fix an error in ./JIT/CodeGenBringUpTests/struct16args_d/struct16args_d.sh

* [JIT] Fix rotate test errors

Fixed erros in belows
./JIT/CodeGenBringUpTests/Rotate_d/Rotate_d.sh
./JIT/CodeGenBringUpTests/Rotate_do/Rotate_do.sh
./JIT/CodeGenBringUpTests/Rotate_r/Rotate_r.sh
./JIT/CodeGenBringUpTests/Rotate_ro/Rotate_ro.sh

* [JIT] Fix erorrs in JTrueNeFP

Resolve
```
./JIT/CodeGenBringUpTests/JTrueNeFP_do/JTrueNeFP_do.sh
./JIT/CodeGenBringUpTests/JTrueNeFP_d/JTrueNeFP_d.sh
./JIT/CodeGenBringUpTests/JTrueNeFP_r/JTrueNeFP_r.sh
./JIT/CodeGenBringUpTests/JTrueNeFP_ro/JTrueNeFP_ro.sh
```

* [JIT] Fix an error

Add a missed part for making constant.
In the cases, it is -12.

Resolved
./JIT/CodeGenBringUpTests/NegRMW_do/NegRMW_do.sh
./JIT/CodeGenBringUpTests/NegRMW_ro/NegRMW_ro.sh

* [JIT] Optimize making constant a little

TODO-RISCV64: We should optimize constant and address construction.

* [JIT] Update emitIns_I_la more

* Add todo comment about code quality

* [JIT] Fix bugs in float and double

- Change fcvt to fmv in ins_Copy

* [JIT] Remove unnecessary comment

* [JIT] FIX

- Add rounding mode

* [JIT] Fix error

- Add Neg for float
- Add rounding mode in float arithmetic

* [JIT] Update Float Neg

* [JIT] Update rounding mode and register use

* [JIT] Update

- remove dead code

* [JIT] Support Float JumpCompare

* [JIT] Remove GT_OBJ and LCL_VAR_ADDR

* [JIT] JIT-FORMAT

* [JIT] Fix JCMP cond error

- Reverse JCMP cond for reversing jump opt

* Revert "[JIT] Fix JCMP cond error"

This reverts commit bed8b9c12bd0340bc1519e1436d4acde209a9222.

* [JIT] Remove rounding mode comments

* [JIT] Fix Float-to-Float copy

* Update Alignment and Definitions

---------

Co-authored-by: Gleb Balykov <g.balykov@samsung.com>
12 files changed:
src/coreclr/debug/inc/dbgtargetcontext.h
src/coreclr/debug/inc/riscv64/primitives.h
src/coreclr/inc/crosscomp.h
src/coreclr/jit/codegenriscv64.cpp
src/coreclr/jit/emitriscv64.cpp
src/coreclr/jit/instr.cpp
src/coreclr/jit/lowerriscv64.cpp
src/coreclr/jit/lsrariscv64.cpp
src/coreclr/jit/target.h
src/coreclr/jit/unwindriscv64.cpp
src/coreclr/pal/inc/pal.h
src/coreclr/vm/riscv64/asmconstants.h