diff options
author | Alan Modra <amodra@gmail.com> | 2020-09-02 11:00:15 +0930 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2020-09-02 16:30:44 +0930 |
commit | 7c80dd4c2cc080036b95176bcf35bb6f46355598 (patch) | |
tree | ee9db27bbee5db5a81b9d0716a49aa4053722f5c /include | |
parent | b4b393495f506632a9be966277c6d6e668ba9778 (diff) | |
download | gdb-7c80dd4c2cc080036b95176bcf35bb6f46355598.zip gdb-7c80dd4c2cc080036b95176bcf35bb6f46355598.tar.gz gdb-7c80dd4c2cc080036b95176bcf35bb6f46355598.tar.bz2 |
ubsan: v850-opc.c:412 left shift cannot be represented
include/
* opcode/v850.h (struct v850_operand <insert>): Make param op an
unsigned long.
opcodes/
* v850-opc.c (insert_i5div1, insert_i5div2, insert_i5div3),
(insert_d5_4, insert_d8_6, insert_d8_7, insert_v8, insert_d9),
(insert_u16_loop, insert_d16_15, insert_d16_16, insert_d17_16),
(insert_d22, insert_d23, insert_d23_align1, insert_i9, insert_u9),
(insert_spe, insert_r4, insert_POS, insert_WIDTH, insert_SELID),
(insert_VECTOR8, insert_VECTOR5, insert_CACHEOP, insert_PREFOP),
(nsert_IMM10U, insert_SRSEL1, insert_SRSEL2): Use unsigned long
for value parameter and update code to suit.
(extract_d9, extract_d16_15, extract_d16_16, extract_d17_16),
(extract_d22, extract_d23, extract_i9): Use unsigned long variables.
Diffstat (limited to 'include')
-rw-r--r-- | include/ChangeLog | 5 | ||||
-rw-r--r-- | include/opcode/v850.h | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index c6f00b3..62d8822 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,8 @@ +2020-09-02 Alan Modra <amodra@gmail.com> + + * opcode/v850.h (struct v850_operand <insert>): Make param op an + unsigned long. + 2020-09-02 Cooper Qu <cooper.qu@linux.alibaba.com> * opcode/csky.h (CSKYV2_ISA_3E3R3): Define. diff --git a/include/opcode/v850.h b/include/opcode/v850.h index 214f952..2ad8eaa 100644 --- a/include/opcode/v850.h +++ b/include/opcode/v850.h @@ -133,7 +133,7 @@ struct v850_operand operand value is legal, *ERRMSG will be unchanged (most operands can accept any value). */ unsigned long (* insert) - (unsigned long instruction, long op, const char ** errmsg); + (unsigned long instruction, unsigned long op, const char ** errmsg); /* Extraction function. This is used by the disassembler. To extract this operand type from an instruction, check this field. |