This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
Hi Ian,
I noticed that you move the Bits class template from arm.cc to
reloc.h recently. I found that the minimum number of bits is 0 in
various methods, this is mostly likely my bug. If bits == 0,
expressions like "1U << (bits - 1)" are undefined. If changed lower
bound from 0 to 1 in all assertions in the Bits class template. In
addition, I also change some related code in arm.cc. This is tested
on both x86_64 and ARM.
-Doug
2012-02-02 Doug Kwan <dougkwan@google.com>
* arm.cc (Arm_relocate_functions::abs8,
Arm_relocate_functions::abs16): Use
Bits::has_signed_unsigned_overflow32.
(Arm_relocate_functions::thm_abs8): Correct range of
overflow check.
* reloc.h (Bits class): Change minimum number of bits from 0 to 1
in assertions.
Attachment:
patch-bits.txt
Description: Text document
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |