mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-28 23:39:35 +08:00
ubsan: arm: undefined shift
left shift of 2 by 31 places cannot be represented in type 'int' * arm-dis.c (print_insn_thumb16): Avoid undefined behaviour.
This commit is contained in:
@ -10714,7 +10714,7 @@ print_insn_thumb16 (bfd_vma pc, struct disassemble_info *info, long given)
|
|||||||
if (!bitend)
|
if (!bitend)
|
||||||
abort ();
|
abort ();
|
||||||
reg = given >> bitstart;
|
reg = given >> bitstart;
|
||||||
reg &= (2 << (bitend - bitstart)) - 1;
|
reg &= ((bfd_vma) 2 << (bitend - bitstart)) - 1;
|
||||||
|
|
||||||
switch (*c)
|
switch (*c)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user