Commit 853ff9e2 by Joseph Myers Committed by Joseph Myers

arm.c (add_minipool_backward_ref): Check for 8-byte-aligned entries in second…

arm.c (add_minipool_backward_ref): Check for 8-byte-aligned entries in second case of forcing insertion after a...

	* config/arm/arm.c (add_minipool_backward_ref): Check for
	8-byte-aligned entries in second case of forcing insertion after a
	particular entry.  Change third case to avoid inserting
	non-8-byte-aligned entries before 8-byte-aligned ones.

From-SVN: r139135
parent a214f4d6
2008-08-15 Joseph Myers <joseph@codesourcery.com>
* config/arm/arm.c (add_minipool_backward_ref): Check for
8-byte-aligned entries in second case of forcing insertion after a
particular entry. Change third case to avoid inserting
non-8-byte-aligned entries before 8-byte-aligned ones.
2008-08-15 Richard Guenther <rguenther@suse.de> 2008-08-15 Richard Guenther <rguenther@suse.de>
* tree-ssa-ccp.c (maybe_fold_offset_to_reference): Do not * tree-ssa-ccp.c (maybe_fold_offset_to_reference): Do not
......
...@@ -8772,17 +8772,20 @@ add_minipool_backward_ref (Mfix *fix) ...@@ -8772,17 +8772,20 @@ add_minipool_backward_ref (Mfix *fix)
its maximum address (which can happen if we have its maximum address (which can happen if we have
re-located a forwards fix); force the new fix to come re-located a forwards fix); force the new fix to come
after it. */ after it. */
min_mp = mp; if (ARM_DOUBLEWORD_ALIGN
min_address = mp->min_address + fix->fix_size; && fix->fix_size >= 8 && mp->fix_size < 8)
return NULL;
else
{
min_mp = mp;
min_address = mp->min_address + fix->fix_size;
}
} }
/* If we are inserting an 8-bytes aligned quantity and /* Do not insert a non-8-byte aligned quantity before 8-byte
we have not already found an insertion point, then aligned quantities. */
make sure that all such 8-byte aligned quantities are
placed at the start of the pool. */
else if (ARM_DOUBLEWORD_ALIGN else if (ARM_DOUBLEWORD_ALIGN
&& min_mp == NULL && fix->fix_size < 8
&& fix->fix_size >= 8 && mp->fix_size >= 8)
&& mp->fix_size < 8)
{ {
min_mp = mp; min_mp = mp;
min_address = mp->min_address + fix->fix_size; min_address = mp->min_address + fix->fix_size;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment