RISC-V: Example dependent filter for RVV widen overlap.

This is an example of how a dependent filter would look like.
In RVV sources of widening instructions cannot overlap the
destination except in the highest-numbered part (for EMUL>1).

The dependent filter attached to the constraint "Wtt" is
implemented in riscv_widen_operand_ok.

gcc/ChangeLog:

	* config/riscv/constraints.md (TARGET_VECTOR ? V_REGS : NO_REGS):
	Add widen overlap dependent constraint.
	* config/riscv/riscv-protos.h (riscv_widen_overlap_ok): Declare.
	* config/riscv/riscv.cc (riscv_widen_operand_ok): New function.
	* config/riscv/vector.md: Use new constraint.

gcc/testsuite/ChangeLog:

	* gcc.target/riscv/rvv/base/pr112431-4.c: Un-xfail.
	* gcc.target/riscv/rvv/base/pr112431-5.c: Ditto.
	* gcc.target/riscv/rvv/base/pr112431-6.c: Ditto.
7 files changed