From 167a062d1a8162b9441a6c0327722e77c8afa01a Mon Sep 17 00:00:00 2001 From: "yilun.xie" Date: Sun, 21 Nov 2021 21:56:18 -0800 Subject: [PATCH 24/26] RISC-V: costs: handle BSWAP --- gcc/config/riscv/riscv.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gcc/config/riscv/riscv.c b/gcc/config/riscv/riscv.c index 61666b8b2f6..8e22e36eaaf 100644 --- a/gcc/config/riscv/riscv.c +++ b/gcc/config/riscv/riscv.c @@ -2110,6 +2110,14 @@ riscv_rtx_costs (rtx x, machine_mode mode, int outer_code, int opno ATTRIBUTE_UN *total = riscv_extend_cost (XEXP (x, 0), GET_CODE (x) == ZERO_EXTEND); return false; + case BSWAP: + if (TARGET_ZBB) + { + *total = COSTS_N_INSNS (1); + return true; + } + return false; + case FLOAT: case UNSIGNED_FLOAT: case FIX: -- 2.33.1