PR26420, PR26421, PR26425, PR26427 UBSAN: tc-arm.c left shifts
authorAlan Modra <amodra@gmail.com>
Tue, 1 Sep 2020 02:05:37 +0000 (11:35 +0930)
committerAlan Modra <amodra@gmail.com>
Tue, 1 Sep 2020 06:32:48 +0000 (16:02 +0930)
commit7af677524e205f3c343707d61bccd4dfd74089da
tree425997c5fd06bf60e615e75aa96dfde87be8e793
parentf911bb2201c5642151d06622e6ad3d20d5d8cc7b
PR26420, PR26421, PR26425, PR26427 UBSAN: tc-arm.c left shifts

PR 26420
PR 26421
PR 26425
PR 26427
* config/tc-arm.c (struct arm_it): Make size, size_req, cond and
uncond_value unsigned.
(parse_vfp_reg_list): Make setmask unsigned, vpr_str_len size_t.
(parse_big_immediate): Cast generic_bignum elements to unsigned.
(encode_thumb32_immediate): Shift left 0xffU.
(double_to_single): Make sign unsigned.  Tidy.
(move_or_literal_pool): Cast LITTLE_NUM elements to uint64_t or
valueT.
(vfp_or_neon_is_neon): Adjust inst.uncond_value expression.
(md_assemble): Likewise.
(handle_pred_state): Make cond unsigned.
(thumb32_negate_data_op): Make variables unsigned.
(md_apply_fix): Make value and newval unsigned, adjust uses.
gas/ChangeLog
gas/config/tc-arm.c