Hi Geng Qi,
Could you add a test case for this patch?
On 4/30/21 9:00 PM, Geng Qi wrote:
gcc/ChangeLog:
config/csky/csky.md (cskyv2_sextend_ldbs): New insn.
---
gcc/config/csky/csky.md | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/gcc/config/csky/csky.md b/gcc/config/csky/csky.md
index c27d627..b980d4c 100644
--- a/gcc/config/csky/csky.md
+++ b/gcc/config/csky/csky.md
@@ -1533,6 +1533,7 @@
}"
)
+;; hi -> si
(define_insn "extendhisi2"
[(set (match_operand:SI 0 "register_operand" "=r")
(sign_extend:SI (match_operand:HI 1 "register_operand" "r")))]
@@ -1557,6 +1558,15 @@
"sextb %0, %1"
)
+(define_insn "*cskyv2_sextend_ldbs"
+ [(set (match_operand:SI 0 "register_operand" "=r")
+ (sign_extend:SI (match_operand:QI 1 "csky_simple_mem_operand" "m")))]
+ "CSKY_ISA_FEATURE (E2)"
+ "ld.bs\t%0, %1"
+ [(set_attr "length" "4")
+ (set_attr "type" "load")]
+)
+
;; qi -> hi
(define_insn "extendqihi2"
[(set (match_operand:HI 0 "register_operand" "=r")