|
@@ -251,8 +251,9 @@ begin
|
|
|
|
|
|
while (tmpResult = R_NO) and
|
|
while (tmpResult = R_NO) and
|
|
stillValid(hp) and
|
|
stillValid(hp) and
|
|
- not(modifiesConflictingMemLocation(prevFound,reg,
|
|
|
|
- ppaiprop(p^.optinfo)^.regs,regsStillValid)) do
|
|
|
|
|
|
+ (ppaiprop(prevFound^.optinfo)^.canBeRemoved or
|
|
|
|
+ not(modifiesConflictingMemLocation(prevFound,reg,
|
|
|
|
+ ppaiprop(p^.optinfo)^.regs,regsStillValid))) do
|
|
begin
|
|
begin
|
|
{ only update the regsread for the instructions we already passed }
|
|
{ only update the regsread for the instructions we already passed }
|
|
if not(ppaiprop(prevFound^.optinfo)^.canBeRemoved) then
|
|
if not(ppaiprop(prevFound^.optinfo)^.canBeRemoved) then
|
|
@@ -1672,8 +1673,12 @@ End.
|
|
|
|
|
|
{
|
|
{
|
|
$Log$
|
|
$Log$
|
|
- Revision 1.3 2000-11-01 22:53:30 jonas
|
|
|
|
- * register contents were not cleared if there was only 1 instruction
|
|
|
|
|
|
+ Revision 1.4 2000-11-03 17:53:24 jonas
|
|
|
|
+ * some small improvements
|
|
|
|
+
|
|
|
|
+ Revision 1.3 2000/11/01 22:53:30 jonas
|
|
|
|
+ * register contents were not cleared if there was only 1 instruction
|
|
|
|
+
|
|
between de previous sequence and the current one
|
|
between de previous sequence and the current one
|
|
|
|
|
|
Revision 1.2 2000/10/24 10:40:53 jonas
|
|
Revision 1.2 2000/10/24 10:40:53 jonas
|