Instead of emitting only one line `fmv.x.s a5,fa0;slli     a5,a5,16;srai   
a5,a5,16`
---
 gcc/config/riscv/riscv.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/config/riscv/riscv.cc b/gcc/config/riscv/riscv.cc
index 41ee4014c0d..082f4d6ac1c 100644
--- a/gcc/config/riscv/riscv.cc
+++ b/gcc/config/riscv/riscv.cc
@@ -4885,7 +4885,7 @@ riscv_output_move (rtx dest, rtx src)
            if (TARGET_ZFHMIN || TARGET_ZFBFMIN)
              return "fmv.x.h\t%0,%1";
            /* Using fmv.x.s + sign-extend to emulate fmv.x.h.  */
-           return "fmv.x.s\t%0,%1;slli\t%0,%0,16;srai\t%0,%0,16";
+           return "fmv.x.s\t%0,%1\n\tslli\t%0,%0,16\n\tsrai\t%0,%0,16";
          case 4:
            return "fmv.x.s\t%0,%1";
          case 8:
-- 
2.43.5

Reply via email to