also consider Y register for clobber check for functioncall arguments

This commit is contained in:
Irmen de Jong
2021-11-29 22:09:05 +01:00
parent b438d8aec0
commit a2db44f80c
10 changed files with 54 additions and 36 deletions

View File

@@ -1,6 +1,7 @@
package prog8.compilerinterface
import prog8.ast.expressions.Expression
import prog8.ast.statements.RegisterOrStatusflag
import prog8.ast.statements.Subroutine
interface ICompilationTarget: IStringEncoding, IMemSizer {
@@ -10,5 +11,6 @@ interface ICompilationTarget: IStringEncoding, IMemSizer {
override fun decodeString(bytes: List<UByte>, altEncoding: Boolean): String
fun asmsubArgsEvalOrder(sub: Subroutine): List<Int>
fun asmsubArgsHaveRegisterClobberRisk(args: List<Expression>): Boolean
fun asmsubArgsHaveRegisterClobberRisk(args: List<Expression>,
paramRegisters: List<RegisterOrStatusflag>): Boolean
}