Do not perform pseudo replacements if the loop contains volatile memory

references.

From-SVN: r25841
This commit is contained in:
Nick Clifton 1999-03-18 15:59:50 +00:00 committed by Nick Clifton
parent 9f4749b181
commit 6449b397c2
2 changed files with 9 additions and 1 deletions

View File

@ -1,3 +1,8 @@
Thu Mar 18 15:58:26 1999 Nick Clifton <nickc@cygnus.com>
* loop.c (strength_reduce): Do not perform pseudo replacements
if the loop contains volatile memory references.
Thu Mar 18 19:09:50 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
* reload.c (find_reloads_toplev): When processing X recursively,

View File

@ -4115,8 +4115,11 @@ strength_reduce (scan_start, end, loop_top, insn_count,
first_increment_giv = max_reg_num ();
for (n_extra_increment = 0, bl = loop_iv_list; bl; bl = bl->next)
n_extra_increment += bl->biv_count - 1;
/* If the loop contains volatile memory references do not allow any
replacements to take place, since this could loose the volatile markers. */
/* XXX Temporary. */
if (0 && n_extra_increment)
if (0 && n_extra_increment && ! loop_has_volatile)
{
int nregs = first_increment_giv + n_extra_increment;