Skip to content

Fix for Issue #77

Created by: MaryBennett

2 commits: Rename bitmanip constraints

Files Changed:

 * constraints.md: Change contraint names.
 * corev.md: Likewise.

Fix for Issue #77 (closed)

Since the constraint `m` should assume non-xcvmem specific operands,
we redefined TARGET_MEM_CONSTRAINT and defined 'm' to exclude XCVmem
specific operands.
Constraint `CVmp` defines addresses for post modify operands.
Constraint `CVmr` defines addresses for reg + reg operands.

Files Changed:

   * gcc/config/riscv/predicates.md (mem_post_inc): Prevent DI and
     DF mode mem.
     (mem_plus_reg): Likewise.
   * gcc/config/riscv/constraints.md: Add new constraints `m`,
     `CVmp` and `CVmr`.
   * gcc/config/riscv/riscv.md: Remove constraint `am`.
   * gcc/config/riscv/riscv.h: Redefine TARGET_MEM_CONSTRAINT to
     `w`.
   * gcc/testsuite/gcc.target/riscv/cv-mem-compile-1.c: New test.
   * gcc/testsuite/gcc.target/riscv/cv-mem-compile-2.c: Likewise.
   * gcc/testsuite/gcc.target/riscv/cv-mem-compile-3.c: Likewise.

Merge request reports

Loading