Fix: never replace LAR/SAR by AAR LOI/STI if descriptor is not in ROM

This commit is contained in:
ceriel 1995-03-17 12:32:47 +00:00
parent d5505f2f02
commit 911b0a43d8

View file

@ -184,9 +184,10 @@ STATIC bool okay_lines(avp, ocp)
* as an AAR LOI/STI. This depends on the size of the array-elements. * as an AAR LOI/STI. This depends on the size of the array-elements.
*/ */
if (INSTR(ocp->oc_llast) == op_lar || INSTR(ocp->oc_llast) == op_sar) { if (INSTR(ocp->oc_llast) == op_lar || INSTR(ocp->oc_llast) == op_sar) {
sz = array_elemsize(avp->av_othird);
if (sz == UNKNOWN_SIZE) return FALSE;
if (avp->av_instr == (byte) op_aar && time_space_ratio < 50) { if (avp->av_instr == (byte) op_aar && time_space_ratio < 50) {
return (sz = array_elemsize(avp->av_othird)) <= AR_limit && return sz <= AR_limit;
sz != UNKNOWN_SIZE;
} }
} }
return TRUE; return TRUE;