arm.c (arm_legitimize_address): Limit the value passed to bit_count to 32 bits.
* config/arm/arm.c (arm_legitimize_address): Limit the value passed to bit_count to 32 bits. From-SVN: r103792
This commit is contained in:
parent
da6110588f
commit
b107d7437b
2 changed files with 6 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2005-09-02 Nicolas Pitre <nico@cam.org>
|
||||||
|
|
||||||
|
* config/arm/arm.c (arm_legitimize_address): Limit the value passed
|
||||||
|
to bit_count to 32 bits.
|
||||||
|
|
||||||
2005-08-31 Mark Mitchell <mark@codesourcery.com>
|
2005-08-31 Mark Mitchell <mark@codesourcery.com>
|
||||||
|
|
||||||
PR c++/23167
|
PR c++/23167
|
||||||
|
|
|
@ -3772,7 +3772,7 @@ arm_legitimize_address (rtx x, rtx orig_x, enum machine_mode mode)
|
||||||
mask = (1 << bits) - 1;
|
mask = (1 << bits) - 1;
|
||||||
base = INTVAL (x) & ~mask;
|
base = INTVAL (x) & ~mask;
|
||||||
index = INTVAL (x) & mask;
|
index = INTVAL (x) & mask;
|
||||||
if (bit_count (base) > (32 - bits)/2)
|
if (bit_count (base & 0xffffffff) > (32 - bits)/2)
|
||||||
{
|
{
|
||||||
/* It'll most probably be more efficient to generate the base
|
/* It'll most probably be more efficient to generate the base
|
||||||
with more bits set and use a negative index instead. */
|
with more bits set and use a negative index instead. */
|
||||||
|
|
Loading…
Add table
Reference in a new issue