gcc/ * config/riscv/riscv.c (SINGLE_SHIFT_COST): New. (riscv_rtx_costs): Case ZERO_EXTRACT, match new pattern, and return SINGLE_SHIFT_COST. Case LT and ZERO_EXTEND, likewise. Case ASHIFT, use SINGLE_SHIFT_COST. * config/riscv/riscv.md (lshrsi3_zero_extend_1): New. (lshrsi3_zero_extend_2, lshrsi3_zero_extend_3): New. gcc/testsuite/ * gcc.target/riscv/riscv.exp: New. * gcc.target/riscv/zero-extend-1.c: New. * gcc.target/riscv/zero-extend-2.c: New. * gcc.target/riscv/zero-extend-3.c: New. * gcc.target/riscv/zero-extend-4.c: New. Co-Authored-By: Andrew Waterman <andrew@sifive.com> From-SVN: r255257
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| constraints.md | Loading commit data... | |
| elf.h | Loading commit data... | |
| generic.md | Loading commit data... | |
| linux.h | Loading commit data... | |
| multilib-generator | Loading commit data... | |
| peephole.md | Loading commit data... | |
| pic.md | Loading commit data... | |
| predicates.md | Loading commit data... | |
| riscv-builtins.c | Loading commit data... | |
| riscv-c.c | Loading commit data... | |
| riscv-ftypes.def | Loading commit data... | |
| riscv-modes.def | Loading commit data... | |
| riscv-opts.h | Loading commit data... | |
| riscv-protos.h | Loading commit data... | |
| riscv.c | Loading commit data... | |
| riscv.h | Loading commit data... | |
| riscv.md | Loading commit data... | |
| riscv.opt | Loading commit data... | |
| rtems.h | Loading commit data... | |
| sync.md | Loading commit data... | |
| t-elf-multilib | Loading commit data... | |
| t-linux | Loading commit data... | |
| t-linux-multilib | Loading commit data... | |
| t-riscv | Loading commit data... |