C-SKY: Fix the literal dump of big vector constant.
authorCooper Qu <cooper.qu@linux.alibaba.com>
Mon, 19 Oct 2020 07:45:36 +0000 (15:45 +0800)
committerLifang Xia <xlf194833_xia@alibaba-inc.com>
Mon, 26 Oct 2020 09:17:53 +0000 (17:17 +0800)
gas/
* config/tc-csky.c (dump_literals): Fix the literal dump of big
vector constant.

gas/config/tc-csky.c

index 10272fede1cf41ca376ea8b9952ea19eb7ba9a3e..8b762c211517271b43e585e1dcc340fbadac2e77 100644 (file)
@@ -2022,7 +2022,8 @@ dump_literals (int isforce)
        emit_expr (& p->e, 4);
 
       if (p->e.X_op == O_big)
-       i += ((p->e.X_add_number  * CHARS_PER_LITTLENUM) >> 2);
+       i += (p->e.X_add_number & 1) +
+         ((p->e.X_add_number  * CHARS_PER_LITTLENUM) >> 2);
       else
        i += (p->isdouble ? 2 : 1);
     }