Skip to content

CV32E40Pv2 Immediate Branch Auto-Generation Support

Created by: NandniJamnadas

  • gcc/common/config/riscv/riscv-common.cc: Created XCVBI extension support.
  • gcc/config/riscv/riscv-opts.h: Created MASK and TARGET macros for XCVBI.
  • gcc/config/riscv/corev.md: Implemented cv_branch<mode> pattern for cv.beqimm and cv.bneimm.
  • gcc/config/riscv/riscv.md: Changed pattern priority so corev.md patterns run before riscv.md patterns.
  • gcc/config/riscv/constraints.md: Implemented constraints BI5 - signed 5-bit immediate.
  • gcc/config/riscv/predicates.md: Implemented predicate const_int5s_operand - signed 5 bit immediate.
  • gcc/testsuite/gcc.target/riscv/cv-bi-beqimm-compile-1.c: Testing auto-generation for instruction cv.beqimm at all optimisation levels.
  • gcc/testsuite/gcc.target/riscv/cv-bi-beqimm-compile-2.c: Boundary testing for instruction cv.beqimm at all optimisation levels.
  • gcc/testsuite/gcc.target/riscv/cv-bi-bneimm-compile-1.c: Testing auto-generation for instruction cv.bneimm at all optimisation levels.
  • gcc/testsuite/gcc.target/riscv/cv-bi-bneimm-compile-2.c: Boundary testing for instruction cv.bneimm at all optimisation levels.

Merge request reports

Loading