0064-target-riscv-rvv-1.0-remove-vmford.vv-and-vmford.vf.patch 4.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. From aa96a46b843a48309f61d551254657727d77c652 Mon Sep 17 00:00:00 2001
  2. From: Frank Chang <frank.chang@sifive.com>
  3. Date: Thu, 2 Jul 2020 16:11:28 +0800
  4. Subject: [PATCH 064/107] target/riscv: rvv-1.0: remove vmford.vv and vmford.vf
  5. Signed-off-by: Frank Chang <frank.chang@sifive.com>
  6. Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
  7. ---
  8. target/riscv/helper.h | 6 ------
  9. target/riscv/insn32.decode | 2 --
  10. target/riscv/insn_trans/trans_rvv.c.inc | 2 --
  11. target/riscv/vector_helper.c | 7 -------
  12. 4 files changed, 17 deletions(-)
  13. diff --git a/target/riscv/helper.h b/target/riscv/helper.h
  14. index 69b9e687c0..1ad2df98ff 100644
  15. --- a/target/riscv/helper.h
  16. +++ b/target/riscv/helper.h
  17. @@ -977,12 +977,6 @@ DEF_HELPER_6(vmfgt_vf_d, void, ptr, ptr, i64, ptr, env, i32)
  18. DEF_HELPER_6(vmfge_vf_h, void, ptr, ptr, i64, ptr, env, i32)
  19. DEF_HELPER_6(vmfge_vf_w, void, ptr, ptr, i64, ptr, env, i32)
  20. DEF_HELPER_6(vmfge_vf_d, void, ptr, ptr, i64, ptr, env, i32)
  21. -DEF_HELPER_6(vmford_vv_h, void, ptr, ptr, ptr, ptr, env, i32)
  22. -DEF_HELPER_6(vmford_vv_w, void, ptr, ptr, ptr, ptr, env, i32)
  23. -DEF_HELPER_6(vmford_vv_d, void, ptr, ptr, ptr, ptr, env, i32)
  24. -DEF_HELPER_6(vmford_vf_h, void, ptr, ptr, i64, ptr, env, i32)
  25. -DEF_HELPER_6(vmford_vf_w, void, ptr, ptr, i64, ptr, env, i32)
  26. -DEF_HELPER_6(vmford_vf_d, void, ptr, ptr, i64, ptr, env, i32)
  27. DEF_HELPER_5(vfclass_v_h, void, ptr, ptr, ptr, env, i32)
  28. DEF_HELPER_5(vfclass_v_w, void, ptr, ptr, ptr, env, i32)
  29. diff --git a/target/riscv/insn32.decode b/target/riscv/insn32.decode
  30. index 11dece1383..d6b9adf9aa 100644
  31. --- a/target/riscv/insn32.decode
  32. +++ b/target/riscv/insn32.decode
  33. @@ -557,8 +557,6 @@ vmfle_vv 011001 . ..... ..... 001 ..... 1010111 @r_vm
  34. vmfle_vf 011001 . ..... ..... 101 ..... 1010111 @r_vm
  35. vmfgt_vf 011101 . ..... ..... 101 ..... 1010111 @r_vm
  36. vmfge_vf 011111 . ..... ..... 101 ..... 1010111 @r_vm
  37. -vmford_vv 011010 . ..... ..... 001 ..... 1010111 @r_vm
  38. -vmford_vf 011010 . ..... ..... 101 ..... 1010111 @r_vm
  39. vfclass_v 010011 . ..... 10000 001 ..... 1010111 @r2_vm
  40. vfmerge_vfm 010111 0 ..... ..... 101 ..... 1010111 @r_vm_0
  41. vfmv_v_f 010111 1 00000 ..... 101 ..... 1010111 @r2
  42. diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_trans/trans_rvv.c.inc
  43. index 73676cc030..215dd55bc9 100644
  44. --- a/target/riscv/insn_trans/trans_rvv.c.inc
  45. +++ b/target/riscv/insn_trans/trans_rvv.c.inc
  46. @@ -2655,7 +2655,6 @@ GEN_OPFVV_TRANS(vmfeq_vv, opfvv_cmp_check)
  47. GEN_OPFVV_TRANS(vmfne_vv, opfvv_cmp_check)
  48. GEN_OPFVV_TRANS(vmflt_vv, opfvv_cmp_check)
  49. GEN_OPFVV_TRANS(vmfle_vv, opfvv_cmp_check)
  50. -GEN_OPFVV_TRANS(vmford_vv, opfvv_cmp_check)
  51. static bool opfvf_cmp_check(DisasContext *s, arg_rmrr *a)
  52. {
  53. @@ -2671,7 +2670,6 @@ GEN_OPFVF_TRANS(vmflt_vf, opfvf_cmp_check)
  54. GEN_OPFVF_TRANS(vmfle_vf, opfvf_cmp_check)
  55. GEN_OPFVF_TRANS(vmfgt_vf, opfvf_cmp_check)
  56. GEN_OPFVF_TRANS(vmfge_vf, opfvf_cmp_check)
  57. -GEN_OPFVF_TRANS(vmford_vf, opfvf_cmp_check)
  58. /* Vector Floating-Point Classify Instruction */
  59. GEN_OPFV_TRANS(vfclass_v, opfv_check)
  60. diff --git a/target/riscv/vector_helper.c b/target/riscv/vector_helper.c
  61. index 2bc586fbe5..b82fe7841a 100644
  62. --- a/target/riscv/vector_helper.c
  63. +++ b/target/riscv/vector_helper.c
  64. @@ -3839,13 +3839,6 @@ GEN_VEXT_CMP_VF(vmfge_vf_h, uint16_t, H2, vmfge16)
  65. GEN_VEXT_CMP_VF(vmfge_vf_w, uint32_t, H4, vmfge32)
  66. GEN_VEXT_CMP_VF(vmfge_vf_d, uint64_t, H8, vmfge64)
  67. -GEN_VEXT_CMP_VV_ENV(vmford_vv_h, uint16_t, H2, !float16_unordered_quiet)
  68. -GEN_VEXT_CMP_VV_ENV(vmford_vv_w, uint32_t, H4, !float32_unordered_quiet)
  69. -GEN_VEXT_CMP_VV_ENV(vmford_vv_d, uint64_t, H8, !float64_unordered_quiet)
  70. -GEN_VEXT_CMP_VF(vmford_vf_h, uint16_t, H2, !float16_unordered_quiet)
  71. -GEN_VEXT_CMP_VF(vmford_vf_w, uint32_t, H4, !float32_unordered_quiet)
  72. -GEN_VEXT_CMP_VF(vmford_vf_d, uint64_t, H8, !float64_unordered_quiet)
  73. -
  74. /* Vector Floating-Point Classify Instruction */
  75. #define OPIVV1(NAME, TD, T2, TX2, HD, HS2, OP) \
  76. static void do_##NAME(void *vd, void *vs2, int i) \
  77. --
  78. 2.33.1