mirror of
https://gitlab.com/camelot/kickc.git
synced 2025-04-11 20:37:40 +00:00
Implemented identification & elimination of complex constant if()s
This commit is contained in:
parent
5e3cbe1f3a
commit
8a7f5bde39
src
main/java/dk/camelot64/kickc
Compiler.java
fragment
model
passes
test/java/dk/camelot64/kickc/test
TestPrograms.java
kc
ref
bitmap-bresenham.asmbitmap-bresenham.cfgbitmap-bresenham.logbitmap-bresenham.symbool-const.cfgbool-const.logbool-const.symbool-vars.asmbool-vars.cfgbool-vars.logbool-vars.symc64dtv-8bppcharstretch.logc64dtv-gfxexplorer.asmc64dtv-gfxexplorer.cfgc64dtv-gfxexplorer.logc64dtv-gfxexplorer.symc64dtv-gfxmodes.asmc64dtv-gfxmodes.cfgc64dtv-gfxmodes.logc64dtv-gfxmodes.symcast-precedence-problem.asmcast-precedence-problem.cfgcast-precedence-problem.logchargen-analysis.asmchargen-analysis.cfgchargen-analysis.logconst-condition.asmconst-condition.cfgconst-condition.logconst-condition.symconst-identification.asmconst-identification.cfgconst-identification.logconst-identification.symconstants.asmconstants.cfgconstants.logconstants.symemptyblock-error.loginline-string-2.asminline-string-2.cfginline-string-2.loginline-string-2.symkeyboard-glitch.loglinegen.logloop-problem2.asmloop-problem2.cfgloop-problem2.logloopsplit.asmloopsplit.cfgloopsplit.logloopsplit.symscroll.logsinus-sprites.logsinusgen16.logsinusgen16b.logsinusgen8.logsinusgen8b.logsinusgenscale8.logtest-division.asmtest-division.cfgtest-division.logtest-division.symtest-keyboard-space.asmtest-keyboard-space.cfgtest-keyboard-space.logtest-keyboard.asmtest-keyboard.cfgtest-keyboard.logtest-keyboard.symtest-multiply-16bit.asmtest-multiply-16bit.cfgtest-multiply-16bit.logtest-multiply-16bit.symtest-multiply-8bit.asm
@ -181,11 +181,12 @@ public class Compiler {
|
||||
optimizations.add(new Pass2ConditionalJumpSimplification(program));
|
||||
optimizations.add(new Pass2ConstantIdentification(program));
|
||||
optimizations.add(new Pass2ConstantAdditionElimination(program));
|
||||
optimizations.add(new Pass2ConstantIfs(program));
|
||||
optimizations.add(new Pass2FixInlineConstructors(program));
|
||||
optimizations.add(new Pass2TypeInference(program));
|
||||
optimizations.add(new PassNEliminateUnusedVars(program));
|
||||
optimizations.add(new Pass2NopCastElimination(program));
|
||||
optimizations.add(new Pass2ConstantIfs(program));
|
||||
//optimizations.add(new Pass2ConstantIfs(program));
|
||||
optimizations.add(new Pass2EliminateUnusedBlocks(program));
|
||||
pass2OptimizeSSA(optimizations);
|
||||
|
||||
|
@ -1,8 +1,10 @@
|
||||
package dk.camelot64.kickc.fragment;
|
||||
|
||||
import dk.camelot64.kickc.model.*;
|
||||
import dk.camelot64.kickc.model.ControlFlowBlock;
|
||||
import dk.camelot64.kickc.model.ControlFlowGraph;
|
||||
import dk.camelot64.kickc.model.Program;
|
||||
import dk.camelot64.kickc.model.Registers;
|
||||
import dk.camelot64.kickc.model.operators.Operator;
|
||||
import dk.camelot64.kickc.model.values.*;
|
||||
import dk.camelot64.kickc.model.statements.Statement;
|
||||
import dk.camelot64.kickc.model.statements.StatementAssignment;
|
||||
import dk.camelot64.kickc.model.statements.StatementConditionalJump;
|
||||
@ -13,6 +15,7 @@ import dk.camelot64.kickc.model.symbols.Variable;
|
||||
import dk.camelot64.kickc.model.types.SymbolType;
|
||||
import dk.camelot64.kickc.model.types.SymbolTypeInference;
|
||||
import dk.camelot64.kickc.model.types.SymbolTypePointer;
|
||||
import dk.camelot64.kickc.model.values.*;
|
||||
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Map;
|
||||
@ -294,6 +297,8 @@ public class AsmFragmentInstanceSpec {
|
||||
return "vds";
|
||||
} else if(SymbolType.STRING.equals(type)) {
|
||||
return "pbu";
|
||||
} else if(SymbolType.BOOLEAN.equals(type)) {
|
||||
return "vbo";
|
||||
} else if(type instanceof SymbolTypePointer) {
|
||||
SymbolType elementType = ((SymbolTypePointer) type).getElementType();
|
||||
if(SymbolType.isByte(elementType)) {
|
||||
@ -320,7 +325,12 @@ public class AsmFragmentInstanceSpec {
|
||||
* @return The register part of the binding name.
|
||||
*/
|
||||
private String getRegisterName(Registers.Register register) {
|
||||
if(Registers.RegisterType.ZP_BYTE.equals(register.getType()) || Registers.RegisterType.ZP_WORD.equals(register.getType())|| Registers.RegisterType.ZP_DWORD.equals(register.getType())) {
|
||||
if(
|
||||
Registers.RegisterType.ZP_BYTE.equals(register.getType()) ||
|
||||
Registers.RegisterType.ZP_WORD.equals(register.getType()) ||
|
||||
Registers.RegisterType.ZP_DWORD.equals(register.getType()) ||
|
||||
Registers.RegisterType.ZP_BOOL.equals(register.getType())
|
||||
) {
|
||||
// Examine if the ZP register is already bound
|
||||
Registers.RegisterZp registerZp = (Registers.RegisterZp) register;
|
||||
String zpNameIdx = null;
|
||||
|
@ -392,7 +392,7 @@ class AsmFragmentTemplateSynthesisRule {
|
||||
synths.add(new AsmFragmentTemplateSynthesisRule("(.*)_neq_(.*)_then_(.*)", null, null, "$2_neq_$1_then_$3", null, null));
|
||||
|
||||
// Swap parameters on commutative operators
|
||||
synths.add(new AsmFragmentTemplateSynthesisRule("(.*)=(.*)_(band|bor|bxor|plus)_(.*)", null, null, "$1=$4_$3_$2", null, null));
|
||||
synths.add(new AsmFragmentTemplateSynthesisRule("(.*)=(.*)_(band|bor|bxor|plus|and|or)_(.*)", null, null, "$1=$4_$3_$2", null, null));
|
||||
// Swap parameters on commutative comparators
|
||||
synths.add(new AsmFragmentTemplateSynthesisRule("(.*)_(eq|neq)_(.*)_then_(.*)", null, null, "$3_$2_$1_then_$4", null, null));
|
||||
|
||||
|
@ -1 +0,0 @@
|
||||
lda {c1}*{c2}
|
@ -0,0 +1,5 @@
|
||||
cmp #0
|
||||
beq !+
|
||||
lda #$ff
|
||||
!:
|
||||
eor #$ff
|
@ -0,0 +1,5 @@
|
||||
cmp #0
|
||||
beq !+
|
||||
lda #$ff
|
||||
!:
|
||||
and {z1}
|
@ -0,0 +1,6 @@
|
||||
sec
|
||||
sbc #{c1}
|
||||
beq !+
|
||||
lda #$ff
|
||||
!:
|
||||
eor #$ff
|
@ -0,0 +1,4 @@
|
||||
cmp #{c1}
|
||||
lda #0
|
||||
rol
|
||||
eor #1
|
@ -0,0 +1,4 @@
|
||||
cpx #{c1}
|
||||
lda #0
|
||||
rol
|
||||
eor #1
|
@ -0,0 +1,4 @@
|
||||
cpy #{c1}
|
||||
lda #0
|
||||
rol
|
||||
eor #1
|
@ -0,0 +1,2 @@
|
||||
cmp #0
|
||||
bne {la1}
|
@ -1,3 +0,0 @@
|
||||
lda #{c1}
|
||||
cmp #{c2}
|
||||
bcs {la1}
|
@ -0,0 +1,2 @@
|
||||
cpy #{c1}
|
||||
beq {la1}
|
@ -20,10 +20,6 @@ public class RegisterCombination {
|
||||
allocation.put(equivalenceClass, register);
|
||||
}
|
||||
|
||||
public Registers.Register getRegister(LiveRangeEquivalenceClass equivalenceClass) {
|
||||
return allocation.get(equivalenceClass);
|
||||
}
|
||||
|
||||
/**
|
||||
* Allocate the registers of the combination into the programs register allocation
|
||||
* (does not update the allocation in the equivalence classes).
|
||||
|
@ -248,32 +248,36 @@ public class Pass0GenerateStatementSequence extends KickCBaseVisitor<Object> {
|
||||
|
||||
@Override
|
||||
public Void visitStmtIfElse(KickCParser.StmtIfElseContext ctx) {
|
||||
KickCParser.StmtContext ifStmt = ctx.stmt(0);
|
||||
KickCParser.StmtContext elseStmt = ctx.stmt(1);
|
||||
|
||||
PrePostModifierHandler.addPreModifiers(this, ctx.expr());
|
||||
RValue rValue = (RValue) this.visit(ctx.expr());
|
||||
VariableRef notExprVar = getCurrentSymbols().addVariableIntermediate().getRef();
|
||||
sequence.addStatement(new StatementAssignment(notExprVar, null, Operators.LOGIC_NOT, rValue));
|
||||
PrePostModifierHandler.addPostModifiers(this, ctx.expr());
|
||||
|
||||
Label elseJumpLabel = getCurrentSymbols().addLabelIntermediate();
|
||||
Statement ifJmpStmt = new StatementConditionalJump(notExprVar, elseJumpLabel.getRef());
|
||||
sequence.addStatement(ifJmpStmt);
|
||||
this.visit(ctx.stmt(0));
|
||||
|
||||
KickCParser.StmtContext elseStmt = ctx.stmt(1);
|
||||
if(elseStmt != null) {
|
||||
// There is an else statement - add the else part and any needed labels/jumps
|
||||
if(elseStmt==null) {
|
||||
// If without else - skip the entire section if condition not met
|
||||
VariableRef notExprVar = getCurrentSymbols().addVariableIntermediate().getRef();
|
||||
sequence.addStatement(new StatementAssignment(notExprVar, null, Operators.LOGIC_NOT, rValue));
|
||||
PrePostModifierHandler.addPostModifiers(this, ctx.expr());
|
||||
Label endJumpLabel = getCurrentSymbols().addLabelIntermediate();
|
||||
Statement endJmpStmt = new StatementJump(endJumpLabel.getRef());
|
||||
sequence.addStatement(endJmpStmt);
|
||||
StatementLabel elseJumpTarget = new StatementLabel(elseJumpLabel.getRef());
|
||||
sequence.addStatement(elseJumpTarget);
|
||||
sequence.addStatement(new StatementConditionalJump(notExprVar, endJumpLabel.getRef()));
|
||||
this.visit(ifStmt);
|
||||
// No else statement - just add the label
|
||||
sequence.addStatement(new StatementLabel(endJumpLabel.getRef()));
|
||||
} else {
|
||||
// If with else - jump to if section if condition met - fall into else otherwise.
|
||||
PrePostModifierHandler.addPostModifiers(this, ctx.expr());
|
||||
Label ifJumpLabel = getCurrentSymbols().addLabelIntermediate();
|
||||
sequence.addStatement(new StatementConditionalJump(rValue, ifJumpLabel.getRef()));
|
||||
// Add else body
|
||||
this.visit(elseStmt);
|
||||
// There is an else statement - add the if part and any needed labels/jumps
|
||||
Label endJumpLabel = getCurrentSymbols().addLabelIntermediate();
|
||||
sequence.addStatement(new StatementJump(endJumpLabel.getRef()));
|
||||
sequence.addStatement(new StatementLabel(ifJumpLabel.getRef()));
|
||||
this.visit(ifStmt);
|
||||
StatementLabel endJumpTarget = new StatementLabel(endJumpLabel.getRef());
|
||||
sequence.addStatement(endJumpTarget);
|
||||
} else {
|
||||
// No else statement - just add the label
|
||||
StatementLabel elseJumpTarget = new StatementLabel(elseJumpLabel.getRef());
|
||||
sequence.addStatement(elseJumpTarget);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
@ -106,6 +106,8 @@ public class Pass1GenerateSingleStaticAssignmentForm extends Pass1Base {
|
||||
for(Statement statement : block.getStatements()) {
|
||||
if(statement instanceof StatementReturn) {
|
||||
execute(new ValueReplacer.ReplaceableReturn((StatementReturn) statement), blockVersions, blockNewPhis);
|
||||
} else if(statement instanceof StatementConditionalJump) {
|
||||
execute(new ValueReplacer.ReplaceableCondRValue2((StatementConditionalJump) statement), blockVersions, blockNewPhis);
|
||||
} else if(statement instanceof StatementAssignment) {
|
||||
StatementAssignment assignment = (StatementAssignment) statement;
|
||||
execute(new ValueReplacer.ReplaceableRValue1(assignment), blockVersions, blockNewPhis);
|
||||
|
@ -1,19 +1,22 @@
|
||||
package dk.camelot64.kickc.passes;
|
||||
|
||||
import dk.camelot64.kickc.model.*;
|
||||
import dk.camelot64.kickc.model.CompileError;
|
||||
import dk.camelot64.kickc.model.ControlFlowBlock;
|
||||
import dk.camelot64.kickc.model.Program;
|
||||
import dk.camelot64.kickc.model.operators.OperatorBinary;
|
||||
import dk.camelot64.kickc.model.operators.OperatorUnary;
|
||||
import dk.camelot64.kickc.model.operators.Operators;
|
||||
import dk.camelot64.kickc.model.values.*;
|
||||
import dk.camelot64.kickc.model.statements.Statement;
|
||||
import dk.camelot64.kickc.model.statements.StatementAssignment;
|
||||
import dk.camelot64.kickc.model.statements.StatementPhiBlock;
|
||||
import dk.camelot64.kickc.model.symbols.ConstantVar;
|
||||
import dk.camelot64.kickc.model.symbols.ProgramScope;
|
||||
import dk.camelot64.kickc.model.symbols.Scope;
|
||||
import dk.camelot64.kickc.model.symbols.Variable;
|
||||
import dk.camelot64.kickc.model.types.SymbolType;
|
||||
import dk.camelot64.kickc.model.types.SymbolTypeArray;
|
||||
import dk.camelot64.kickc.model.types.SymbolTypeInference;
|
||||
import dk.camelot64.kickc.model.values.*;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
@ -92,106 +95,112 @@ public class Pass2ConstantIdentification extends Pass2SsaOptimization {
|
||||
*/
|
||||
private Map<VariableRef, ConstantValue> findConstantVariables() {
|
||||
final Map<VariableRef, ConstantValue> constants = new LinkedHashMap<>();
|
||||
ControlFlowGraphBaseVisitor<Void> visitor = new ControlFlowGraphBaseVisitor<Void>() {
|
||||
@Override
|
||||
public Void visitAssignment(StatementAssignment assignment) {
|
||||
LValue lValue = assignment.getlValue();
|
||||
if(lValue instanceof VariableRef) {
|
||||
VariableRef variable = (VariableRef) lValue;
|
||||
if(assignment.getrValue1() == null && getConstant(assignment.getrValue2()) != null) {
|
||||
if(assignment.getOperator() == null) {
|
||||
// Constant assignment
|
||||
ConstantValue constant = getConstant(assignment.getrValue2());
|
||||
constants.put(variable, constant);
|
||||
} else {
|
||||
// Constant unary expression
|
||||
ConstantValue constant = createUnary(
|
||||
(OperatorUnary) assignment.getOperator(),
|
||||
getConstant(assignment.getrValue2())
|
||||
);
|
||||
if(constant != null) {
|
||||
constants.put(variable, constant);
|
||||
}
|
||||
}
|
||||
} else if(getConstant(assignment.getrValue1()) != null && getConstant(assignment.getrValue2()) != null) {
|
||||
// Constant binary expression
|
||||
ConstantValue constant = createBinary(
|
||||
getConstant(assignment.getrValue1()),
|
||||
(OperatorBinary) assignment.getOperator(),
|
||||
getConstant(assignment.getrValue2()));
|
||||
if(constant != null) {
|
||||
for(ControlFlowBlock block : getGraph().getAllBlocks()) {
|
||||
for(Statement statement : block.getStatements()) {
|
||||
if(statement instanceof StatementAssignment) {
|
||||
StatementAssignment assignment = (StatementAssignment) statement;
|
||||
findConstantsAssignment(constants, assignment);
|
||||
} else if( statement instanceof StatementPhiBlock) {
|
||||
StatementPhiBlock phi = (StatementPhiBlock) statement;
|
||||
findConstantsPhi(constants, phi);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
constants.put(variable, constant);
|
||||
}
|
||||
} else if(assignment.getrValue2() instanceof ValueList && assignment.getOperator() == null && assignment.getrValue1() == null) {
|
||||
if(lValue instanceof VariableRef) {
|
||||
Variable lVariable = getScope().getVariable((VariableRef) lValue);
|
||||
if(lVariable.getType() instanceof SymbolTypeArray) {
|
||||
ValueList valueList = (ValueList) assignment.getrValue2();
|
||||
List<RValue> values = valueList.getList();
|
||||
boolean allConstant = true;
|
||||
// Type of the elements of the list (deducted from the type of all elements)
|
||||
SymbolType listType = null;
|
||||
List<ConstantValue> elements = new ArrayList<>();
|
||||
for(RValue elmValue : values) {
|
||||
if(elmValue instanceof ConstantValue) {
|
||||
ConstantValue constantValue = (ConstantValue) elmValue;
|
||||
SymbolType elmType = constantValue.getType(getScope());
|
||||
if(listType == null) {
|
||||
listType = elmType;
|
||||
} else {
|
||||
if(!SymbolTypeInference.typeMatch(listType, elmType)) {
|
||||
SymbolType intersectType = SymbolTypeInference.intersectTypes(listType, elmType);
|
||||
if(intersectType==null) {
|
||||
// No overlap between list type and element type
|
||||
throw new RuntimeException("Array type " + listType + " does not match element type" + elmType + ". Array: " + valueList.toString(getProgram()));
|
||||
} else {
|
||||
listType = intersectType;
|
||||
}
|
||||
}
|
||||
}
|
||||
elements.add(constantValue);
|
||||
return constants;
|
||||
}
|
||||
|
||||
private void findConstantsPhi(Map<VariableRef, ConstantValue> constants, StatementPhiBlock phi) {
|
||||
for(StatementPhiBlock.PhiVariable phiVariable : phi.getPhiVariables()) {
|
||||
if(phiVariable.getValues().size() == 1) {
|
||||
StatementPhiBlock.PhiRValue phiRValue = phiVariable.getValues().get(0);
|
||||
if(getConstant(phiRValue.getrValue()) != null) {
|
||||
VariableRef variable = phiVariable.getVariable();
|
||||
ConstantValue constant = getConstant(phiRValue.getrValue());
|
||||
constants.put(variable, constant);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void findConstantsAssignment(Map<VariableRef, ConstantValue> constants, StatementAssignment assignment) {
|
||||
LValue lValue = assignment.getlValue();
|
||||
if(lValue instanceof VariableRef) {
|
||||
VariableRef variable = (VariableRef) lValue;
|
||||
if(assignment.getrValue1() == null && getConstant(assignment.getrValue2()) != null) {
|
||||
if(assignment.getOperator() == null) {
|
||||
// Constant assignment
|
||||
ConstantValue constant = getConstant(assignment.getrValue2());
|
||||
constants.put(variable, constant);
|
||||
} else {
|
||||
// Constant unary expression
|
||||
ConstantValue constant = createUnary(
|
||||
(OperatorUnary) assignment.getOperator(),
|
||||
getConstant(assignment.getrValue2())
|
||||
);
|
||||
if(constant != null) {
|
||||
constants.put(variable, constant);
|
||||
}
|
||||
}
|
||||
} else if(getConstant(assignment.getrValue1()) != null && getConstant(assignment.getrValue2()) != null) {
|
||||
// Constant binary expression
|
||||
ConstantValue constant = createBinary(
|
||||
getConstant(assignment.getrValue1()),
|
||||
(OperatorBinary) assignment.getOperator(),
|
||||
getConstant(assignment.getrValue2()),
|
||||
getScope());
|
||||
if(constant != null) {
|
||||
|
||||
constants.put(variable, constant);
|
||||
}
|
||||
} else if(assignment.getrValue2() instanceof ValueList && assignment.getOperator() == null && assignment.getrValue1() == null) {
|
||||
// A candidate for a constant list - examine to confirm
|
||||
Variable lVariable = getScope().getVariable((VariableRef) lValue);
|
||||
if(lVariable.getType() instanceof SymbolTypeArray) {
|
||||
ValueList valueList = (ValueList) assignment.getrValue2();
|
||||
List<RValue> values = valueList.getList();
|
||||
boolean allConstant = true;
|
||||
// Type of the elements of the list (deducted from the type of all elements)
|
||||
SymbolType listType = null;
|
||||
List<ConstantValue> elements = new ArrayList<>();
|
||||
for(RValue elmValue : values) {
|
||||
if(elmValue instanceof ConstantValue) {
|
||||
ConstantValue constantValue = (ConstantValue) elmValue;
|
||||
SymbolType elmType = constantValue.getType(getScope());
|
||||
if(listType == null) {
|
||||
listType = elmType;
|
||||
} else {
|
||||
if(!SymbolTypeInference.typeMatch(listType, elmType)) {
|
||||
SymbolType intersectType = SymbolTypeInference.intersectTypes(listType, elmType);
|
||||
if(intersectType==null) {
|
||||
// No overlap between list type and element type
|
||||
throw new RuntimeException("Array type " + listType + " does not match element type" + elmType + ". Array: " + valueList.toString(getProgram()));
|
||||
} else {
|
||||
allConstant = false;
|
||||
listType = null;
|
||||
break;
|
||||
listType = intersectType;
|
||||
}
|
||||
}
|
||||
if(allConstant && listType != null) {
|
||||
ConstantValue constant = new ConstantArrayList(elements, listType);
|
||||
constants.put(variable, constant);
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if(Operators.ADDRESS_OF.equals(assignment.getOperator()) && assignment.getrValue1()==null) {
|
||||
if(assignment.getrValue2() instanceof VariableRef) {
|
||||
ConstantVarPointer constantVarPointer = new ConstantVarPointer((VariableRef) assignment.getrValue2());
|
||||
constants.put(variable, constantVarPointer);
|
||||
elements.add(constantValue);
|
||||
} else {
|
||||
allConstant = false;
|
||||
listType = null;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Void visitPhiBlock(StatementPhiBlock phi) {
|
||||
for(StatementPhiBlock.PhiVariable phiVariable : phi.getPhiVariables()) {
|
||||
if(phiVariable.getValues().size() == 1) {
|
||||
StatementPhiBlock.PhiRValue phiRValue = phiVariable.getValues().get(0);
|
||||
if(getConstant(phiRValue.getrValue()) != null) {
|
||||
VariableRef variable = phiVariable.getVariable();
|
||||
ConstantValue constant = getConstant(phiRValue.getrValue());
|
||||
constants.put(variable, constant);
|
||||
}
|
||||
if(allConstant && listType != null) {
|
||||
// Constant list confirmed!
|
||||
ConstantValue constant = new ConstantArrayList(elements, listType);
|
||||
constants.put(variable, constant);
|
||||
}
|
||||
}
|
||||
return null;
|
||||
} else if(Operators.ADDRESS_OF.equals(assignment.getOperator()) && assignment.getrValue1()==null) {
|
||||
// Constant address-of variable
|
||||
if(assignment.getrValue2() instanceof VariableRef) {
|
||||
ConstantVarPointer constantVarPointer = new ConstantVarPointer((VariableRef) assignment.getrValue2());
|
||||
constants.put(variable, constantVarPointer);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
};
|
||||
visitor.visitGraph(getGraph());
|
||||
return constants;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@ -200,7 +209,7 @@ public class Pass2ConstantIdentification extends Pass2SsaOptimization {
|
||||
* @param rValue The rValue to examine
|
||||
* @return The constant value. null is the rValue is not a known constant.
|
||||
*/
|
||||
private ConstantValue getConstant(RValue rValue) {
|
||||
public static ConstantValue getConstant(RValue rValue) {
|
||||
if(rValue instanceof ConstantValue) {
|
||||
return (ConstantValue) rValue;
|
||||
} else if(rValue instanceof ConstantVar) {
|
||||
@ -236,16 +245,16 @@ public class Pass2ConstantIdentification extends Pass2SsaOptimization {
|
||||
}
|
||||
}
|
||||
|
||||
ConstantValue createBinary(ConstantValue c1, OperatorBinary operator, ConstantValue c2) {
|
||||
static ConstantValue createBinary(ConstantValue c1, OperatorBinary operator, ConstantValue c2, ProgramScope programScope) {
|
||||
switch(operator.getOperator()) {
|
||||
case "-":
|
||||
case "+":
|
||||
if(SymbolType.STRING.equals(c1.getType(getScope()))) {
|
||||
if(SymbolType.STRING.equals(c1.getType(programScope))) {
|
||||
if(c1 instanceof ConstantRef) {
|
||||
c1 = getScope().getConstant((ConstantRef) c1).getValue();
|
||||
c1 = programScope.getConstant((ConstantRef) c1).getValue();
|
||||
}
|
||||
if(c2 instanceof ConstantRef) {
|
||||
c2 = getScope().getConstant((ConstantRef) c2).getValue();
|
||||
c2 = programScope.getConstant((ConstantRef) c2).getValue();
|
||||
}
|
||||
return new ConstantBinary(c1, operator, c2);
|
||||
}
|
||||
|
@ -2,52 +2,74 @@ package dk.camelot64.kickc.passes;
|
||||
|
||||
import dk.camelot64.kickc.model.ControlFlowBlock;
|
||||
import dk.camelot64.kickc.model.Program;
|
||||
import dk.camelot64.kickc.model.operators.Operator;
|
||||
import dk.camelot64.kickc.model.operators.OperatorBinary;
|
||||
import dk.camelot64.kickc.model.operators.OperatorUnary;
|
||||
import dk.camelot64.kickc.model.statements.Statement;
|
||||
import dk.camelot64.kickc.model.statements.StatementConditionalJump;
|
||||
import dk.camelot64.kickc.model.values.ConstantBool;
|
||||
import dk.camelot64.kickc.model.values.ConstantLiteral;
|
||||
import dk.camelot64.kickc.model.values.ConstantValue;
|
||||
import dk.camelot64.kickc.model.values.LabelRef;
|
||||
|
||||
import java.util.ListIterator;
|
||||
|
||||
/** Pass that eliminates constant if's - they are either removed (if false) or replaces the default successor (if true). */
|
||||
/**
|
||||
* Compiler Pass identifying constant if() conditions
|
||||
*/
|
||||
public class Pass2ConstantIfs extends Pass2SsaOptimization {
|
||||
|
||||
public Pass2ConstantIfs(Program program) {
|
||||
super(program);
|
||||
}
|
||||
|
||||
/**
|
||||
* Identify constant conditions in if()'s
|
||||
*
|
||||
* @return true optimization was performed. false if no optimization was possible.
|
||||
*/
|
||||
@Override
|
||||
public boolean step() {
|
||||
boolean modified = false;
|
||||
|
||||
for(ControlFlowBlock block : getGraph().getAllBlocks()) {
|
||||
ListIterator<Statement> statementsIt = block.getStatements().listIterator();
|
||||
while(statementsIt.hasNext()) {
|
||||
Statement statement = statementsIt.next();
|
||||
ListIterator<Statement> stmtIt = block.getStatements().listIterator();
|
||||
while(stmtIt.hasNext()) {
|
||||
Statement statement = stmtIt.next();
|
||||
if(statement instanceof StatementConditionalJump) {
|
||||
StatementConditionalJump conditionalJump = (StatementConditionalJump) statement;
|
||||
if(conditionalJump.getrValue1() == null && conditionalJump.getOperator() == null && conditionalJump.getrValue2() instanceof ConstantValue) {
|
||||
// The if()-value is constant
|
||||
ConstantValue constValue = (ConstantValue) conditionalJump.getrValue2();
|
||||
ConstantLiteral literal = constValue.calculateLiteral(getScope());
|
||||
if(literal instanceof ConstantBool) {
|
||||
if(((ConstantBool) literal).getBool()) {
|
||||
// if()-value always true - remove if and replace destination
|
||||
getLog().append("if() condition always true - replacing block destination "+statement.toString(getProgram(), false));
|
||||
Pass2EliminateUnusedBlocks.removePhiRValues(block.getLabel(), getGraph().getDefaultSuccessor(block), getLog());
|
||||
block.setDefaultSuccessor(conditionalJump.getDestination());
|
||||
statementsIt.remove();
|
||||
block.setConditionalSuccessor(null);
|
||||
modified = true;
|
||||
} else {
|
||||
// if()-value always false - remove if()
|
||||
getLog().append("if() condition always false - eliminating if "+statement.toString(getProgram(), false));
|
||||
Pass2EliminateUnusedBlocks.removePhiRValues(block.getLabel(), getGraph().getConditionalSuccessor(block), getLog());
|
||||
statementsIt.remove();
|
||||
block.setConditionalSuccessor(null);
|
||||
modified = true;
|
||||
}
|
||||
ConstantLiteral literal = null;
|
||||
StatementConditionalJump conditional = (StatementConditionalJump) statement;
|
||||
ConstantValue constValue1 = Pass2ConstantIdentification.getConstant(conditional.getrValue1());
|
||||
Operator operator = conditional.getOperator();
|
||||
ConstantValue constValue2 = Pass2ConstantIdentification.getConstant(conditional.getrValue2());
|
||||
if(conditional.getrValue1() == null && operator == null && constValue2 != null) {
|
||||
// Constant condition
|
||||
literal = constValue2.calculateLiteral(getScope());
|
||||
} else if(conditional.getrValue1() == null && operator != null && constValue2 != null) {
|
||||
// Constant unary condition
|
||||
ConstantValue constVal = Pass2ConstantIdentification.createUnary((OperatorUnary) operator, constValue2);
|
||||
literal = constVal.calculateLiteral(getScope());
|
||||
} else if(constValue1 != null && operator != null && constValue2 != null) {
|
||||
// Constant binary condition
|
||||
ConstantValue constVal = Pass2ConstantIdentification.createBinary( constValue1, (OperatorBinary) operator, constValue2, getScope());
|
||||
literal = constVal.calculateLiteral(getScope());
|
||||
}
|
||||
if(literal!=null && literal instanceof ConstantBool) {
|
||||
// Condition is a constant boolean
|
||||
if(((ConstantBool) literal).getBool()) {
|
||||
// Always true - replace default successor and drop conditional jump
|
||||
Pass2EliminateUnusedBlocks.removePhiRValues(block.getLabel(), getGraph().getDefaultSuccessor(block), getLog());
|
||||
block.setDefaultSuccessor(conditional.getDestination());
|
||||
getLog().append("if() condition always true - replacing block destination " + conditional.toString(getProgram(), false));
|
||||
stmtIt.remove();
|
||||
block.setConditionalSuccessor(null);
|
||||
modified = true;
|
||||
} else {
|
||||
// Always false - drop the conditional jump
|
||||
Pass2EliminateUnusedBlocks.removePhiRValues(block.getLabel(), getGraph().getConditionalSuccessor(block), getLog());
|
||||
getLog().append("if() condition always false - eliminating " + conditional.toString(getProgram(), false));
|
||||
stmtIt.remove();
|
||||
block.setConditionalSuccessor(null);
|
||||
modified = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -53,6 +53,9 @@ public class Pass4RegisterUpliftPotentialInitialize extends Pass2Base {
|
||||
potentials.add(Registers.getRegisterX());
|
||||
potentials.add(Registers.getRegisterY());
|
||||
}
|
||||
if(registerType.equals(Registers.RegisterType.ZP_BOOL) && !varRefExtracted(equivalenceClass)) {
|
||||
potentials.add(Registers.getRegisterA());
|
||||
}
|
||||
registerPotentials.setPotentialRegisters(equivalenceClass, potentials);
|
||||
}
|
||||
}
|
||||
|
@ -50,12 +50,22 @@ public class TestPrograms {
|
||||
compileAndCompare("emptyblock-error");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testConstCondition() throws IOException, URISyntaxException {
|
||||
compileAndCompare("const-condition");
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testBoolConst() throws IOException, URISyntaxException {
|
||||
compileAndCompare("bool-const");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testBoolVars() throws IOException, URISyntaxException {
|
||||
compileAndCompare("bool-vars");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testInlineString3() throws IOException, URISyntaxException {
|
||||
try {
|
||||
|
@ -1,6 +1,4 @@
|
||||
// A Minimal test of boolean variables.
|
||||
// Boolean variables are bytes under the hood
|
||||
// 0: false, !=0 : true
|
||||
// A Minimal test of boolean constants.
|
||||
|
||||
const byte* SCREEN = $400;
|
||||
|
||||
|
18
src/test/java/dk/camelot64/kickc/test/kc/bool-vars.kc
Normal file
18
src/test/java/dk/camelot64/kickc/test/kc/bool-vars.kc
Normal file
@ -0,0 +1,18 @@
|
||||
// A Minimal test of boolean variables.
|
||||
// Boolean variables are bytes under the hood
|
||||
// 0: false, !=0 : true
|
||||
|
||||
const byte* screen = $400;
|
||||
|
||||
void main() {
|
||||
for( byte i : 0..20) {
|
||||
boolean o1 = i<10;
|
||||
boolean o2 = (i&1)==0;
|
||||
if( o1 && o2 ) {
|
||||
screen[i] = '*';
|
||||
} else {
|
||||
screen[i] = ' ';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -213,9 +213,8 @@ void apply_preset(byte idx) {
|
||||
preset = preset_stdchar;
|
||||
}
|
||||
// Copy preset values into the fields
|
||||
byte* values = form_fields_val;
|
||||
for( byte i=0; i != form_fields_cnt; i++) {
|
||||
*values++ = *preset++;
|
||||
form_fields_val[i] = preset[i];
|
||||
}
|
||||
|
||||
}
|
||||
|
11
src/test/java/dk/camelot64/kickc/test/kc/const-condition.kc
Normal file
11
src/test/java/dk/camelot64/kickc/test/kc/const-condition.kc
Normal file
@ -0,0 +1,11 @@
|
||||
// Ensure that if()'s with constant comparisons are identified and eliminated
|
||||
|
||||
void main() {
|
||||
const byte* SCREEN = $0400;
|
||||
if(7<4) {
|
||||
SCREEN[0] = '*';
|
||||
} else {
|
||||
SCREEN[0] = '!';
|
||||
}
|
||||
}
|
||||
|
@ -49,132 +49,135 @@ lines: {
|
||||
rts
|
||||
}
|
||||
bitmap_line: {
|
||||
.label xd = 3
|
||||
.label yd = 4
|
||||
.label x0 = 7
|
||||
.label xd = 4
|
||||
.label yd = 3
|
||||
.label x0 = 5
|
||||
.label x1 = 8
|
||||
.label y0 = 5
|
||||
.label y0 = 6
|
||||
lda x0
|
||||
cmp x1
|
||||
bcs b1
|
||||
lda x1
|
||||
bcc b1
|
||||
sec
|
||||
sbc x0
|
||||
sbc x1
|
||||
sta xd
|
||||
lda y0
|
||||
sty $ff
|
||||
cmp $ff
|
||||
bcs b2
|
||||
tya
|
||||
sec
|
||||
sbc y0
|
||||
sta yd
|
||||
cmp xd
|
||||
bcs b3
|
||||
ldx x0
|
||||
lda x1
|
||||
sta bitmap_line_xdyi.x1
|
||||
jsr bitmap_line_xdyi
|
||||
breturn:
|
||||
rts
|
||||
b3:
|
||||
lda y0
|
||||
sta bitmap_line_ydxi.y
|
||||
ldx x0
|
||||
sty bitmap_line_ydxi.y1
|
||||
jsr bitmap_line_ydxi
|
||||
jmp breturn
|
||||
b2:
|
||||
cmp y0
|
||||
beq !+
|
||||
bcs b2
|
||||
!:
|
||||
tya
|
||||
eor #$ff
|
||||
sec
|
||||
adc y0
|
||||
sta yd
|
||||
cmp xd
|
||||
bcs b6
|
||||
ldx x0
|
||||
jsr bitmap_line_xdyd
|
||||
jmp breturn
|
||||
b6:
|
||||
sty bitmap_line_ydxd.y
|
||||
bcc b3
|
||||
sty bitmap_line_ydxi.y
|
||||
ldx x1
|
||||
jsr bitmap_line_ydxd
|
||||
jsr bitmap_line_ydxi
|
||||
breturn:
|
||||
rts
|
||||
b3:
|
||||
ldx x1
|
||||
sty bitmap_line_xdyi.y
|
||||
jsr bitmap_line_xdyi
|
||||
jmp breturn
|
||||
b1:
|
||||
lda x0
|
||||
sec
|
||||
sbc x1
|
||||
sta xd
|
||||
lda y0
|
||||
sty $ff
|
||||
cmp $ff
|
||||
bcs b9
|
||||
b2:
|
||||
tya
|
||||
sec
|
||||
sbc y0
|
||||
sta yd
|
||||
cmp xd
|
||||
bcs b10
|
||||
ldx x1
|
||||
sty bitmap_line_xdyd.y
|
||||
lda x0
|
||||
sta bitmap_line_xdyd.x1
|
||||
jsr bitmap_line_xdyd
|
||||
jmp breturn
|
||||
b10:
|
||||
bcc b6
|
||||
lda y0
|
||||
sta bitmap_line_ydxd.y
|
||||
ldx x0
|
||||
sty bitmap_line_ydxd.y1
|
||||
jsr bitmap_line_ydxd
|
||||
jmp breturn
|
||||
b9:
|
||||
b6:
|
||||
ldx x1
|
||||
sty bitmap_line_xdyd.y
|
||||
lda x0
|
||||
sta bitmap_line_xdyd.x1
|
||||
jsr bitmap_line_xdyd
|
||||
jmp breturn
|
||||
b1:
|
||||
lda x1
|
||||
sec
|
||||
sbc x0
|
||||
sta xd
|
||||
tya
|
||||
cmp y0
|
||||
beq !+
|
||||
bcs b9
|
||||
!:
|
||||
tya
|
||||
eor #$ff
|
||||
sec
|
||||
adc y0
|
||||
sta yd
|
||||
cmp xd
|
||||
bcs b13
|
||||
bcc b10
|
||||
sty bitmap_line_ydxd.y
|
||||
ldx x1
|
||||
sty bitmap_line_xdyi.y
|
||||
jsr bitmap_line_xdyi
|
||||
jsr bitmap_line_ydxd
|
||||
jmp breturn
|
||||
b13:
|
||||
sty bitmap_line_ydxi.y
|
||||
ldx x1
|
||||
b10:
|
||||
ldx x0
|
||||
jsr bitmap_line_xdyd
|
||||
jmp breturn
|
||||
b9:
|
||||
tya
|
||||
sec
|
||||
sbc y0
|
||||
sta yd
|
||||
cmp xd
|
||||
bcc b13
|
||||
lda y0
|
||||
sta bitmap_line_ydxi.y
|
||||
ldx x0
|
||||
sty bitmap_line_ydxi.y1
|
||||
jsr bitmap_line_ydxi
|
||||
jmp breturn
|
||||
b13:
|
||||
ldx x0
|
||||
lda x1
|
||||
sta bitmap_line_xdyi.x1
|
||||
jsr bitmap_line_xdyi
|
||||
jmp breturn
|
||||
}
|
||||
bitmap_line_ydxi: {
|
||||
bitmap_line_xdyi: {
|
||||
.label _6 = 8
|
||||
.label y = 6
|
||||
.label y1 = 5
|
||||
.label yd = 4
|
||||
.label xd = 3
|
||||
.label x1 = 5
|
||||
.label xd = 4
|
||||
.label yd = 3
|
||||
.label e = 7
|
||||
lda xd
|
||||
lda yd
|
||||
lsr
|
||||
sta e
|
||||
b1:
|
||||
ldy y
|
||||
jsr bitmap_plot
|
||||
inc y
|
||||
lda e
|
||||
clc
|
||||
adc xd
|
||||
sta e
|
||||
lda yd
|
||||
cmp e
|
||||
bcs b2
|
||||
inx
|
||||
lda e
|
||||
clc
|
||||
adc yd
|
||||
sta e
|
||||
lda xd
|
||||
cmp e
|
||||
bcs b2
|
||||
inc y
|
||||
lda e
|
||||
sec
|
||||
sbc yd
|
||||
sbc xd
|
||||
sta e
|
||||
b2:
|
||||
ldy y1
|
||||
ldy x1
|
||||
iny
|
||||
cpy y
|
||||
sty _6
|
||||
cpx _6
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
@ -203,46 +206,12 @@ bitmap_plot: {
|
||||
sta (_0),y
|
||||
rts
|
||||
}
|
||||
bitmap_line_xdyi: {
|
||||
.label _6 = 8
|
||||
.label y = 5
|
||||
.label x1 = 7
|
||||
.label xd = 3
|
||||
.label yd = 4
|
||||
.label e = 6
|
||||
lda yd
|
||||
lsr
|
||||
sta e
|
||||
b1:
|
||||
ldy y
|
||||
jsr bitmap_plot
|
||||
inx
|
||||
lda e
|
||||
clc
|
||||
adc yd
|
||||
sta e
|
||||
lda xd
|
||||
cmp e
|
||||
bcs b2
|
||||
inc y
|
||||
lda e
|
||||
sec
|
||||
sbc xd
|
||||
sta e
|
||||
b2:
|
||||
ldy x1
|
||||
iny
|
||||
sty _6
|
||||
cpx _6
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
bitmap_line_ydxd: {
|
||||
.label y = 6
|
||||
.label y1 = 5
|
||||
.label yd = 4
|
||||
.label xd = 3
|
||||
.label e = 7
|
||||
bitmap_line_ydxi: {
|
||||
.label y = 7
|
||||
.label y1 = 6
|
||||
.label yd = 3
|
||||
.label xd = 4
|
||||
.label e = 5
|
||||
lda xd
|
||||
lsr
|
||||
sta e
|
||||
@ -257,7 +226,7 @@ bitmap_line_ydxd: {
|
||||
lda yd
|
||||
cmp e
|
||||
bcs b2
|
||||
dex
|
||||
inx
|
||||
lda e
|
||||
sec
|
||||
sbc yd
|
||||
@ -271,11 +240,11 @@ bitmap_line_ydxd: {
|
||||
}
|
||||
bitmap_line_xdyd: {
|
||||
.label _6 = 7
|
||||
.label y = 5
|
||||
.label y = 6
|
||||
.label x1 = 8
|
||||
.label xd = 3
|
||||
.label yd = 4
|
||||
.label e = 6
|
||||
.label xd = 4
|
||||
.label yd = 3
|
||||
.label e = 5
|
||||
lda yd
|
||||
lsr
|
||||
sta e
|
||||
@ -303,6 +272,38 @@ bitmap_line_xdyd: {
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
bitmap_line_ydxd: {
|
||||
.label y = 7
|
||||
.label y1 = 6
|
||||
.label yd = 3
|
||||
.label xd = 4
|
||||
.label e = 5
|
||||
lda xd
|
||||
lsr
|
||||
sta e
|
||||
b1:
|
||||
ldy y
|
||||
jsr bitmap_plot
|
||||
inc y
|
||||
lda e
|
||||
clc
|
||||
adc xd
|
||||
sta e
|
||||
lda yd
|
||||
cmp e
|
||||
bcs b2
|
||||
dex
|
||||
lda e
|
||||
sec
|
||||
sbc yd
|
||||
sta e
|
||||
b2:
|
||||
ldy y1
|
||||
iny
|
||||
cpy y
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
init_screen: {
|
||||
.label c = 9
|
||||
lda #<SCREEN
|
||||
|
@ -45,246 +45,246 @@ lines::@return: scope:[lines] from lines::@3
|
||||
[24] return [ ] ( main:2::lines:14 [ ] )
|
||||
to:@return
|
||||
bitmap_line: scope:[bitmap_line] from lines::@1
|
||||
[25] if((byte) bitmap_line::x0#0>=(byte) bitmap_line::x1#0) goto bitmap_line::@1 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 ] )
|
||||
[25] if((byte) bitmap_line::x0#0<(byte) bitmap_line::x1#0) goto bitmap_line::@1 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 ] )
|
||||
to:bitmap_line::@15
|
||||
bitmap_line::@15: scope:[bitmap_line] from bitmap_line
|
||||
[26] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] )
|
||||
[27] if((byte) bitmap_line::y0#0>=(byte) bitmap_line::y1#0) goto bitmap_line::@2 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] )
|
||||
[26] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] )
|
||||
[27] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@2 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] )
|
||||
to:bitmap_line::@16
|
||||
bitmap_line::@16: scope:[bitmap_line] from bitmap_line::@15
|
||||
[28] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] )
|
||||
[29] if((byte) bitmap_line::yd#1>=(byte) bitmap_line::xd#1) goto bitmap_line::@3 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] )
|
||||
[28] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] )
|
||||
[29] if((byte) bitmap_line::yd#1<(byte) bitmap_line::xd#1) goto bitmap_line::@3 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] )
|
||||
to:bitmap_line::@17
|
||||
bitmap_line::@17: scope:[bitmap_line] from bitmap_line::@16
|
||||
[30] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x0#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 ] )
|
||||
[31] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y0#0 [ bitmap_line::x1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 ] )
|
||||
[32] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x1#0 [ bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 ] )
|
||||
[33] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 ] )
|
||||
[34] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#1 [ bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::yd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::yd#0 ] )
|
||||
[35] call bitmap_line_xdyi param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
[30] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 ] )
|
||||
[31] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 [ bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 ] )
|
||||
[32] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 [ bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 ] )
|
||||
[33] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#1 [ bitmap_line::xd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 ] )
|
||||
[34] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 bitmap_line_ydxi::xd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 bitmap_line_ydxi::xd#0 ] )
|
||||
[35] call bitmap_line_ydxi param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@return: scope:[bitmap_line] from bitmap_line::@10 bitmap_line::@13 bitmap_line::@17 bitmap_line::@20 bitmap_line::@24 bitmap_line::@27 bitmap_line::@3 bitmap_line::@6
|
||||
[36] return [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
to:@return
|
||||
bitmap_line::@3: scope:[bitmap_line] from bitmap_line::@16
|
||||
[37] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 ] )
|
||||
[38] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x0#0 [ bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 ] )
|
||||
[39] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y1#0 [ bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 ] )
|
||||
[40] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#1 [ bitmap_line::xd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 ] )
|
||||
[41] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 bitmap_line_ydxi::xd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 bitmap_line_ydxi::xd#0 ] )
|
||||
[42] call bitmap_line_ydxi param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
[37] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 ] )
|
||||
[38] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 ] )
|
||||
[39] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 [ bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 ] )
|
||||
[40] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 ] )
|
||||
[41] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#1 [ bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::yd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::yd#0 ] )
|
||||
[42] call bitmap_line_xdyi param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@2: scope:[bitmap_line] from bitmap_line::@15
|
||||
[43] (byte) bitmap_line::yd#0 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] )
|
||||
[44] if((byte) bitmap_line::yd#0>=(byte) bitmap_line::xd#1) goto bitmap_line::@6 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] )
|
||||
[43] (byte) bitmap_line::yd#0 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] )
|
||||
[44] if((byte) bitmap_line::yd#0<(byte) bitmap_line::xd#1) goto bitmap_line::@6 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] )
|
||||
to:bitmap_line::@20
|
||||
bitmap_line::@20: scope:[bitmap_line] from bitmap_line::@2
|
||||
[45] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x0#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 ] )
|
||||
[46] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y0#0 [ bitmap_line::x1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 ] )
|
||||
[47] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x1#0 [ bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 ] )
|
||||
[48] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 ] )
|
||||
[49] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#0 [ bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::yd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::yd#0 ] )
|
||||
[50] call bitmap_line_xdyd param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
[45] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 ] )
|
||||
[46] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 [ bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 ] )
|
||||
[47] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 [ bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 ] )
|
||||
[48] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#0 [ bitmap_line::xd#1 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#1 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 ] )
|
||||
[49] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::xd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::xd#0 ] )
|
||||
[50] call bitmap_line_ydxd param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@6: scope:[bitmap_line] from bitmap_line::@2
|
||||
[51] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y1#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 ] )
|
||||
[52] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x1#0 [ bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 ] )
|
||||
[53] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y0#0 [ bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 ] )
|
||||
[54] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#0 [ bitmap_line::xd#1 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#1 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 ] )
|
||||
[55] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::xd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::xd#0 ] )
|
||||
[56] call bitmap_line_ydxd param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
[51] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 ] )
|
||||
[52] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 ] )
|
||||
[53] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 [ bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 ] )
|
||||
[54] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 ] )
|
||||
[55] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#0 [ bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::yd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::yd#0 ] )
|
||||
[56] call bitmap_line_xdyd param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@1: scope:[bitmap_line] from bitmap_line
|
||||
[57] (byte) bitmap_line::xd#0 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] )
|
||||
[58] if((byte) bitmap_line::y0#0>=(byte) bitmap_line::y1#0) goto bitmap_line::@9 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] )
|
||||
[57] (byte) bitmap_line::xd#0 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] )
|
||||
[58] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@9 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] )
|
||||
to:bitmap_line::@23
|
||||
bitmap_line::@23: scope:[bitmap_line] from bitmap_line::@1
|
||||
[59] (byte) bitmap_line::yd#3 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] )
|
||||
[60] if((byte) bitmap_line::yd#3>=(byte) bitmap_line::xd#0) goto bitmap_line::@10 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] )
|
||||
[59] (byte) bitmap_line::yd#3 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] )
|
||||
[60] if((byte) bitmap_line::yd#3<(byte) bitmap_line::xd#0) goto bitmap_line::@10 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] )
|
||||
to:bitmap_line::@24
|
||||
bitmap_line::@24: scope:[bitmap_line] from bitmap_line::@23
|
||||
[61] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 ] )
|
||||
[62] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 ] )
|
||||
[63] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x0#0 [ bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 ] )
|
||||
[64] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 ] )
|
||||
[65] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#3 [ bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::yd#1 ] )
|
||||
[66] call bitmap_line_xdyd param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
[61] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 ] )
|
||||
[62] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 [ bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 ] )
|
||||
[63] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 [ bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 ] )
|
||||
[64] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#3 [ bitmap_line::xd#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 ] )
|
||||
[65] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 bitmap_line_ydxd::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 bitmap_line_ydxd::xd#1 ] )
|
||||
[66] call bitmap_line_ydxd param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@10: scope:[bitmap_line] from bitmap_line::@23
|
||||
[67] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 ] )
|
||||
[68] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x0#0 [ bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 ] )
|
||||
[69] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y1#0 [ bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 ] )
|
||||
[70] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#3 [ bitmap_line::xd#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 ] )
|
||||
[71] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 bitmap_line_ydxd::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 bitmap_line_ydxd::xd#1 ] )
|
||||
[72] call bitmap_line_ydxd param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
[67] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 ] )
|
||||
[68] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 [ bitmap_line::x1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 ] )
|
||||
[69] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 [ bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 ] )
|
||||
[70] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 ] )
|
||||
[71] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#3 [ bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::yd#1 ] )
|
||||
[72] call bitmap_line_xdyd param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@9: scope:[bitmap_line] from bitmap_line::@1
|
||||
[73] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] )
|
||||
[74] if((byte) bitmap_line::yd#10>=(byte) bitmap_line::xd#0) goto bitmap_line::@13 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] )
|
||||
[73] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] )
|
||||
[74] if((byte) bitmap_line::yd#10<(byte) bitmap_line::xd#0) goto bitmap_line::@13 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] )
|
||||
to:bitmap_line::@27
|
||||
bitmap_line::@27: scope:[bitmap_line] from bitmap_line::@9
|
||||
[75] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 ] )
|
||||
[76] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 ] )
|
||||
[77] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x0#0 [ bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 ] )
|
||||
[78] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 ] )
|
||||
[79] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#10 [ bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::yd#1 ] )
|
||||
[80] call bitmap_line_xdyi param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
[75] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 ] )
|
||||
[76] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 [ bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 ] )
|
||||
[77] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 [ bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 ] )
|
||||
[78] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#10 [ bitmap_line::xd#0 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#0 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 ] )
|
||||
[79] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::xd#1 ] )
|
||||
[80] call bitmap_line_ydxi param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@13: scope:[bitmap_line] from bitmap_line::@9
|
||||
[81] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y1#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 ] )
|
||||
[82] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x1#0 [ bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 ] )
|
||||
[83] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y0#0 [ bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 ] )
|
||||
[84] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#10 [ bitmap_line::xd#0 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#0 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 ] )
|
||||
[85] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::xd#1 ] )
|
||||
[86] call bitmap_line_ydxi param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
[81] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 ] )
|
||||
[82] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 [ bitmap_line::x1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 ] )
|
||||
[83] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 [ bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 ] )
|
||||
[84] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 ] )
|
||||
[85] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#10 [ bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::yd#1 ] )
|
||||
[86] call bitmap_line_xdyi param-assignment [ ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line_ydxi: scope:[bitmap_line_ydxi] from bitmap_line::@13 bitmap_line::@3
|
||||
[87] (byte) bitmap_line_ydxi::y1#6 ← phi( bitmap_line::@13/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@3/(byte) bitmap_line_ydxi::y1#0 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[87] (byte) bitmap_line_ydxi::yd#5 ← phi( bitmap_line::@13/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@3/(byte) bitmap_line_ydxi::yd#0 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[87] (byte) bitmap_line_ydxi::y#6 ← phi( bitmap_line::@13/(byte) bitmap_line_ydxi::y#1 bitmap_line::@3/(byte) bitmap_line_ydxi::y#0 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[87] (byte) bitmap_line_ydxi::x#5 ← phi( bitmap_line::@13/(byte) bitmap_line_ydxi::x#1 bitmap_line::@3/(byte) bitmap_line_ydxi::x#0 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[87] (byte) bitmap_line_ydxi::xd#2 ← phi( bitmap_line::@13/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@3/(byte) bitmap_line_ydxi::xd#0 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[88] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] )
|
||||
to:bitmap_line_ydxi::@1
|
||||
bitmap_line_ydxi::@1: scope:[bitmap_line_ydxi] from bitmap_line_ydxi bitmap_line_ydxi::@2
|
||||
[89] (byte) bitmap_line_ydxi::e#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[89] (byte) bitmap_line_ydxi::y#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#2 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[89] (byte) bitmap_line_ydxi::x#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[90] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#2 ] )
|
||||
[91] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#2 bitmap_plot::y#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#2 bitmap_plot::y#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#2 bitmap_plot::y#2 ] )
|
||||
[92] call bitmap_plot param-assignment [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
to:bitmap_line_ydxi::@5
|
||||
bitmap_line_ydxi::@5: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@1
|
||||
[93] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::e#3 bitmap_line_ydxi::y#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::e#3 bitmap_line_ydxi::y#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::e#3 bitmap_line_ydxi::y#2 ] )
|
||||
[94] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] )
|
||||
[95] if((byte) bitmap_line_ydxi::yd#5>=(byte) bitmap_line_ydxi::e#1) goto bitmap_line_ydxi::@2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] )
|
||||
to:bitmap_line_ydxi::@3
|
||||
bitmap_line_ydxi::@3: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@5
|
||||
[96] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 bitmap_line_ydxi::x#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 bitmap_line_ydxi::x#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 bitmap_line_ydxi::x#2 ] )
|
||||
[97] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] )
|
||||
to:bitmap_line_ydxi::@2
|
||||
bitmap_line_ydxi::@2: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@3 bitmap_line_ydxi::@5
|
||||
[98] (byte) bitmap_line_ydxi::e#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] )
|
||||
[98] (byte) bitmap_line_ydxi::x#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#3 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] )
|
||||
[99] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 bitmap_line_ydxi::$6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 bitmap_line_ydxi::$6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 bitmap_line_ydxi::$6 ] )
|
||||
[100] if((byte) bitmap_line_ydxi::y#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] )
|
||||
to:bitmap_line_ydxi::@return
|
||||
bitmap_line_ydxi::@return: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@2
|
||||
[101] return [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42 [ lines::l#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86 [ lines::l#2 ] )
|
||||
to:@return
|
||||
bitmap_plot: scope:[bitmap_plot] from bitmap_line_xdyd::@1 bitmap_line_xdyi::@1 bitmap_line_ydxd::@1 bitmap_line_ydxi::@1
|
||||
[102] (byte) bitmap_plot::y#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) [ bitmap_plot::x#4 bitmap_plot::y#4 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] )
|
||||
[102] (byte) bitmap_plot::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) [ bitmap_plot::x#4 bitmap_plot::y#4 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] )
|
||||
[103] (word) bitmap_plot::plotter_x#0 ← *((const byte[256]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[256]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] )
|
||||
[104] (word) bitmap_plot::plotter_y#0 ← *((const byte[256]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[256]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] )
|
||||
[105] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] )
|
||||
[106] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[256]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] )
|
||||
[107] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
to:bitmap_plot::@return
|
||||
bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot
|
||||
[108] return [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
to:@return
|
||||
bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@17 bitmap_line::@27
|
||||
[109] (byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@17/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@27/(byte) bitmap_line_xdyi::x1#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[109] (byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@17/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@27/(byte) bitmap_line_xdyi::xd#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[109] (byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@17/(byte) bitmap_line_xdyi::y#0 bitmap_line::@27/(byte) bitmap_line_xdyi::y#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[109] (byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@17/(byte) bitmap_line_xdyi::x#0 bitmap_line::@27/(byte) bitmap_line_xdyi::x#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[109] (byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@17/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@27/(byte) bitmap_line_xdyi::yd#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[110] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] )
|
||||
bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@13 bitmap_line::@3
|
||||
[87] (byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::x1#1 bitmap_line::@3/(byte) bitmap_line_xdyi::x1#0 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[87] (byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::xd#1 bitmap_line::@3/(byte) bitmap_line_xdyi::xd#0 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[87] (byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::y#1 bitmap_line::@3/(byte) bitmap_line_xdyi::y#0 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[87] (byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::x#1 bitmap_line::@3/(byte) bitmap_line_xdyi::x#0 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[87] (byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::yd#1 bitmap_line::@3/(byte) bitmap_line_xdyi::yd#0 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[88] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] )
|
||||
to:bitmap_line_xdyi::@1
|
||||
bitmap_line_xdyi::@1: scope:[bitmap_line_xdyi] from bitmap_line_xdyi bitmap_line_xdyi::@2
|
||||
[111] (byte) bitmap_line_xdyi::e#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[111] (byte) bitmap_line_xdyi::y#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[111] (byte) bitmap_line_xdyi::x#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#2 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[112] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 [ bitmap_plot::x#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_plot::x#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_plot::x#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[113] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 [ bitmap_plot::x#0 bitmap_plot::y#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_plot::x#0 bitmap_plot::y#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_plot::x#0 bitmap_plot::y#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[114] call bitmap_plot param-assignment [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[89] (byte) bitmap_line_xdyi::e#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[89] (byte) bitmap_line_xdyi::y#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[89] (byte) bitmap_line_xdyi::x#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#2 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[90] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#0 ] )
|
||||
[91] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#0 bitmap_plot::y#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#0 bitmap_plot::y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#0 bitmap_plot::y#0 ] )
|
||||
[92] call bitmap_plot param-assignment [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
to:bitmap_line_xdyi::@5
|
||||
bitmap_line_xdyi::@5: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@1
|
||||
[115] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_line_xdyi::x#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_line_xdyi::x#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_line_xdyi::x#2 ] )
|
||||
[116] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] )
|
||||
[117] if((byte) bitmap_line_xdyi::xd#5>=(byte) bitmap_line_xdyi::e#1) goto bitmap_line_xdyi::@2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] )
|
||||
[93] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_line_xdyi::x#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_line_xdyi::x#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_line_xdyi::x#2 ] )
|
||||
[94] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] )
|
||||
[95] if((byte) bitmap_line_xdyi::xd#5>=(byte) bitmap_line_xdyi::e#1) goto bitmap_line_xdyi::@2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] )
|
||||
to:bitmap_line_xdyi::@3
|
||||
bitmap_line_xdyi::@3: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@5
|
||||
[118] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 bitmap_line_xdyi::y#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 bitmap_line_xdyi::y#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 bitmap_line_xdyi::y#2 ] )
|
||||
[119] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] )
|
||||
[96] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 bitmap_line_xdyi::y#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 bitmap_line_xdyi::y#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 bitmap_line_xdyi::y#2 ] )
|
||||
[97] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] )
|
||||
to:bitmap_line_xdyi::@2
|
||||
bitmap_line_xdyi::@2: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@3 bitmap_line_xdyi::@5
|
||||
[120] (byte) bitmap_line_xdyi::e#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] )
|
||||
[120] (byte) bitmap_line_xdyi::y#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#3 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] )
|
||||
[121] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 bitmap_line_xdyi::$6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 bitmap_line_xdyi::$6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 bitmap_line_xdyi::$6 ] )
|
||||
[122] if((byte) bitmap_line_xdyi::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] )
|
||||
[98] (byte) bitmap_line_xdyi::e#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] )
|
||||
[98] (byte) bitmap_line_xdyi::y#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#3 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] )
|
||||
[99] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 bitmap_line_xdyi::$6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 bitmap_line_xdyi::$6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 bitmap_line_xdyi::$6 ] )
|
||||
[100] if((byte) bitmap_line_xdyi::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] )
|
||||
to:bitmap_line_xdyi::@return
|
||||
bitmap_line_xdyi::@return: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@2
|
||||
[123] return [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:35 [ lines::l#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:80 [ lines::l#2 ] )
|
||||
[101] return [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 ] )
|
||||
to:@return
|
||||
bitmap_line_ydxd: scope:[bitmap_line_ydxd] from bitmap_line::@10 bitmap_line::@6
|
||||
[124] (byte) bitmap_line_ydxd::y1#6 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y1#1 bitmap_line::@6/(byte) bitmap_line_ydxd::y1#0 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[124] (byte) bitmap_line_ydxd::yd#5 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::yd#1 bitmap_line::@6/(byte) bitmap_line_ydxd::yd#0 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[124] (byte) bitmap_line_ydxd::y#7 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y#1 bitmap_line::@6/(byte) bitmap_line_ydxd::y#0 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[124] (byte) bitmap_line_ydxd::x#5 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::x#1 bitmap_line::@6/(byte) bitmap_line_ydxd::x#0 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[124] (byte) bitmap_line_ydxd::xd#2 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::xd#1 bitmap_line::@6/(byte) bitmap_line_ydxd::xd#0 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[125] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] )
|
||||
to:bitmap_line_ydxd::@1
|
||||
bitmap_line_ydxd::@1: scope:[bitmap_line_ydxd] from bitmap_line_ydxd bitmap_line_ydxd::@2
|
||||
[126] (byte) bitmap_line_ydxd::e#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[126] (byte) bitmap_line_ydxd::y#2 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#3 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[126] (byte) bitmap_line_ydxd::x#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[127] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 [ bitmap_plot::x#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_plot::x#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_plot::x#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[128] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 [ bitmap_plot::x#3 bitmap_plot::y#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_plot::x#3 bitmap_plot::y#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_plot::x#3 bitmap_plot::y#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[129] call bitmap_plot param-assignment [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
to:bitmap_line_ydxd::@5
|
||||
bitmap_line_ydxd::@5: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@1
|
||||
[130] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::e#3 bitmap_line_ydxd::y#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::e#3 bitmap_line_ydxd::y#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::e#3 bitmap_line_ydxd::y#3 ] )
|
||||
[131] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] )
|
||||
[132] if((byte) bitmap_line_ydxd::yd#5>=(byte) bitmap_line_ydxd::e#1) goto bitmap_line_ydxd::@2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] )
|
||||
to:bitmap_line_ydxd::@3
|
||||
bitmap_line_ydxd::@3: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@5
|
||||
[133] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 bitmap_line_ydxd::x#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 bitmap_line_ydxd::x#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 bitmap_line_ydxd::x#2 ] )
|
||||
[134] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] )
|
||||
to:bitmap_line_ydxd::@2
|
||||
bitmap_line_ydxd::@2: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@3 bitmap_line_ydxd::@5
|
||||
[135] (byte) bitmap_line_ydxd::e#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] )
|
||||
[135] (byte) bitmap_line_ydxd::x#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#3 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] )
|
||||
[136] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 bitmap_line_ydxd::$6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 bitmap_line_ydxd::$6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 bitmap_line_ydxd::$6 ] )
|
||||
[137] if((byte) bitmap_line_ydxd::y#3!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] )
|
||||
to:bitmap_line_ydxd::@return
|
||||
bitmap_line_ydxd::@return: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@2
|
||||
[138] return [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:56 [ lines::l#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:72 [ lines::l#2 ] )
|
||||
bitmap_plot: scope:[bitmap_plot] from bitmap_line_xdyd::@1 bitmap_line_xdyi::@1 bitmap_line_ydxd::@1 bitmap_line_ydxi::@1
|
||||
[102] (byte) bitmap_plot::y#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) [ bitmap_plot::x#4 bitmap_plot::y#4 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] )
|
||||
[102] (byte) bitmap_plot::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) [ bitmap_plot::x#4 bitmap_plot::y#4 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] )
|
||||
[103] (word) bitmap_plot::plotter_x#0 ← *((const byte[256]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[256]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] )
|
||||
[104] (word) bitmap_plot::plotter_y#0 ← *((const byte[256]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[256]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] )
|
||||
[105] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] )
|
||||
[106] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[256]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] )
|
||||
[107] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
to:bitmap_plot::@return
|
||||
bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot
|
||||
[108] return [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
to:@return
|
||||
bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@20 bitmap_line::@24
|
||||
[139] (byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@20/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@24/(byte) bitmap_line_xdyd::x1#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[139] (byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@20/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@24/(byte) bitmap_line_xdyd::xd#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[139] (byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@20/(byte) bitmap_line_xdyd::y#0 bitmap_line::@24/(byte) bitmap_line_xdyd::y#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[139] (byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@20/(byte) bitmap_line_xdyd::x#0 bitmap_line::@24/(byte) bitmap_line_xdyd::x#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[139] (byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@20/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@24/(byte) bitmap_line_xdyd::yd#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[140] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] )
|
||||
bitmap_line_ydxi: scope:[bitmap_line_ydxi] from bitmap_line::@17 bitmap_line::@27
|
||||
[109] (byte) bitmap_line_ydxi::y1#6 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxi::y1#0 bitmap_line::@27/(byte) bitmap_line_ydxi::y1#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[109] (byte) bitmap_line_ydxi::yd#5 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxi::yd#0 bitmap_line::@27/(byte) bitmap_line_ydxi::yd#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[109] (byte) bitmap_line_ydxi::y#6 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxi::y#0 bitmap_line::@27/(byte) bitmap_line_ydxi::y#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[109] (byte) bitmap_line_ydxi::x#5 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxi::x#0 bitmap_line::@27/(byte) bitmap_line_ydxi::x#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[109] (byte) bitmap_line_ydxi::xd#2 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxi::xd#0 bitmap_line::@27/(byte) bitmap_line_ydxi::xd#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[110] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] )
|
||||
to:bitmap_line_ydxi::@1
|
||||
bitmap_line_ydxi::@1: scope:[bitmap_line_ydxi] from bitmap_line_ydxi bitmap_line_ydxi::@2
|
||||
[111] (byte) bitmap_line_ydxi::e#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[111] (byte) bitmap_line_ydxi::y#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#2 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[111] (byte) bitmap_line_ydxi::x#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[112] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 [ bitmap_plot::x#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_plot::x#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_plot::x#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[113] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 [ bitmap_plot::x#2 bitmap_plot::y#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_plot::x#2 bitmap_plot::y#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_plot::x#2 bitmap_plot::y#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[114] call bitmap_plot param-assignment [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
to:bitmap_line_ydxi::@5
|
||||
bitmap_line_ydxi::@5: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@1
|
||||
[115] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::e#3 bitmap_line_ydxi::y#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::e#3 bitmap_line_ydxi::y#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::e#3 bitmap_line_ydxi::y#2 ] )
|
||||
[116] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] )
|
||||
[117] if((byte) bitmap_line_ydxi::yd#5>=(byte) bitmap_line_ydxi::e#1) goto bitmap_line_ydxi::@2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] )
|
||||
to:bitmap_line_ydxi::@3
|
||||
bitmap_line_ydxi::@3: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@5
|
||||
[118] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 bitmap_line_ydxi::x#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 bitmap_line_ydxi::x#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 bitmap_line_ydxi::x#2 ] )
|
||||
[119] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] )
|
||||
to:bitmap_line_ydxi::@2
|
||||
bitmap_line_ydxi::@2: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@3 bitmap_line_ydxi::@5
|
||||
[120] (byte) bitmap_line_ydxi::e#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] )
|
||||
[120] (byte) bitmap_line_ydxi::x#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#3 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] )
|
||||
[121] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 bitmap_line_ydxi::$6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 bitmap_line_ydxi::$6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 bitmap_line_ydxi::$6 ] )
|
||||
[122] if((byte) bitmap_line_ydxi::y#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] )
|
||||
to:bitmap_line_ydxi::@return
|
||||
bitmap_line_ydxi::@return: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@2
|
||||
[123] return [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 ] )
|
||||
to:@return
|
||||
bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@10 bitmap_line::@6
|
||||
[124] (byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@10/(byte) bitmap_line_xdyd::x1#1 bitmap_line::@6/(byte) bitmap_line_xdyd::x1#0 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[124] (byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@10/(byte) bitmap_line_xdyd::xd#1 bitmap_line::@6/(byte) bitmap_line_xdyd::xd#0 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[124] (byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@10/(byte) bitmap_line_xdyd::y#1 bitmap_line::@6/(byte) bitmap_line_xdyd::y#0 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[124] (byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@10/(byte) bitmap_line_xdyd::x#1 bitmap_line::@6/(byte) bitmap_line_xdyd::x#0 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[124] (byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@10/(byte) bitmap_line_xdyd::yd#1 bitmap_line::@6/(byte) bitmap_line_xdyd::yd#0 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[125] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] )
|
||||
to:bitmap_line_xdyd::@1
|
||||
bitmap_line_xdyd::@1: scope:[bitmap_line_xdyd] from bitmap_line_xdyd bitmap_line_xdyd::@2
|
||||
[141] (byte) bitmap_line_xdyd::e#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[141] (byte) bitmap_line_xdyd::y#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[141] (byte) bitmap_line_xdyd::x#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#2 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[142] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 [ bitmap_plot::x#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_plot::x#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_plot::x#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[143] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 [ bitmap_plot::x#1 bitmap_plot::y#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_plot::x#1 bitmap_plot::y#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_plot::x#1 bitmap_plot::y#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[144] call bitmap_plot param-assignment [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[126] (byte) bitmap_line_xdyd::e#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[126] (byte) bitmap_line_xdyd::y#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[126] (byte) bitmap_line_xdyd::x#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#2 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[127] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 [ bitmap_plot::x#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_plot::x#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_plot::x#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[128] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 [ bitmap_plot::x#1 bitmap_plot::y#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_plot::x#1 bitmap_plot::y#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_plot::x#1 bitmap_plot::y#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[129] call bitmap_plot param-assignment [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
to:bitmap_line_xdyd::@5
|
||||
bitmap_line_xdyd::@5: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@1
|
||||
[145] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::x#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::x#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::x#2 ] )
|
||||
[146] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] )
|
||||
[147] if((byte) bitmap_line_xdyd::xd#5>=(byte) bitmap_line_xdyd::e#1) goto bitmap_line_xdyd::@2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] )
|
||||
[130] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::x#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::x#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::x#2 ] )
|
||||
[131] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] )
|
||||
[132] if((byte) bitmap_line_xdyd::xd#5>=(byte) bitmap_line_xdyd::e#1) goto bitmap_line_xdyd::@2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] )
|
||||
to:bitmap_line_xdyd::@3
|
||||
bitmap_line_xdyd::@3: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@5
|
||||
[148] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 bitmap_line_xdyd::y#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 bitmap_line_xdyd::y#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 bitmap_line_xdyd::y#2 ] )
|
||||
[149] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] )
|
||||
[133] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 bitmap_line_xdyd::y#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 bitmap_line_xdyd::y#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 bitmap_line_xdyd::y#2 ] )
|
||||
[134] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] )
|
||||
to:bitmap_line_xdyd::@2
|
||||
bitmap_line_xdyd::@2: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@3 bitmap_line_xdyd::@5
|
||||
[150] (byte) bitmap_line_xdyd::e#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] )
|
||||
[150] (byte) bitmap_line_xdyd::y#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#3 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] )
|
||||
[151] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 bitmap_line_xdyd::$6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 bitmap_line_xdyd::$6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 bitmap_line_xdyd::$6 ] )
|
||||
[152] if((byte) bitmap_line_xdyd::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] )
|
||||
[135] (byte) bitmap_line_xdyd::e#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] )
|
||||
[135] (byte) bitmap_line_xdyd::y#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#3 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] )
|
||||
[136] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 bitmap_line_xdyd::$6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 bitmap_line_xdyd::$6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 bitmap_line_xdyd::$6 ] )
|
||||
[137] if((byte) bitmap_line_xdyd::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] )
|
||||
to:bitmap_line_xdyd::@return
|
||||
bitmap_line_xdyd::@return: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@2
|
||||
[153] return [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:50 [ lines::l#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:66 [ lines::l#2 ] )
|
||||
[138] return [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 ] )
|
||||
to:@return
|
||||
bitmap_line_ydxd: scope:[bitmap_line_ydxd] from bitmap_line::@20 bitmap_line::@24
|
||||
[139] (byte) bitmap_line_ydxd::y1#6 ← phi( bitmap_line::@20/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@24/(byte) bitmap_line_ydxd::y1#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[139] (byte) bitmap_line_ydxd::yd#5 ← phi( bitmap_line::@20/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@24/(byte) bitmap_line_ydxd::yd#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[139] (byte) bitmap_line_ydxd::y#7 ← phi( bitmap_line::@20/(byte) bitmap_line_ydxd::y#0 bitmap_line::@24/(byte) bitmap_line_ydxd::y#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[139] (byte) bitmap_line_ydxd::x#5 ← phi( bitmap_line::@20/(byte) bitmap_line_ydxd::x#0 bitmap_line::@24/(byte) bitmap_line_ydxd::x#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[139] (byte) bitmap_line_ydxd::xd#2 ← phi( bitmap_line::@20/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@24/(byte) bitmap_line_ydxd::xd#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[140] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] )
|
||||
to:bitmap_line_ydxd::@1
|
||||
bitmap_line_ydxd::@1: scope:[bitmap_line_ydxd] from bitmap_line_ydxd bitmap_line_ydxd::@2
|
||||
[141] (byte) bitmap_line_ydxd::e#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[141] (byte) bitmap_line_ydxd::y#2 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#3 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[141] (byte) bitmap_line_ydxd::x#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[142] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 [ bitmap_plot::x#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_plot::x#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_plot::x#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[143] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 [ bitmap_plot::x#3 bitmap_plot::y#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_plot::x#3 bitmap_plot::y#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_plot::x#3 bitmap_plot::y#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[144] call bitmap_plot param-assignment [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
to:bitmap_line_ydxd::@5
|
||||
bitmap_line_ydxd::@5: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@1
|
||||
[145] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::e#3 bitmap_line_ydxd::y#3 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::e#3 bitmap_line_ydxd::y#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::e#3 bitmap_line_ydxd::y#3 ] )
|
||||
[146] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] )
|
||||
[147] if((byte) bitmap_line_ydxd::yd#5>=(byte) bitmap_line_ydxd::e#1) goto bitmap_line_ydxd::@2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] )
|
||||
to:bitmap_line_ydxd::@3
|
||||
bitmap_line_ydxd::@3: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@5
|
||||
[148] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 bitmap_line_ydxd::x#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 bitmap_line_ydxd::x#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 bitmap_line_ydxd::x#2 ] )
|
||||
[149] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] )
|
||||
to:bitmap_line_ydxd::@2
|
||||
bitmap_line_ydxd::@2: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@3 bitmap_line_ydxd::@5
|
||||
[150] (byte) bitmap_line_ydxd::e#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] )
|
||||
[150] (byte) bitmap_line_ydxd::x#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#3 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] )
|
||||
[151] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 bitmap_line_ydxd::$6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 bitmap_line_ydxd::$6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 bitmap_line_ydxd::$6 ] )
|
||||
[152] if((byte) bitmap_line_ydxd::y#3!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] )
|
||||
to:bitmap_line_ydxd::@return
|
||||
bitmap_line_ydxd::@return: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@2
|
||||
[153] return [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 ] )
|
||||
to:@return
|
||||
init_screen: scope:[init_screen] from main::@4
|
||||
[154] phi() [ ] ( main:2::init_screen:12 [ ] )
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -82,21 +82,21 @@
|
||||
(label) bitmap_line::@9
|
||||
(label) bitmap_line::@return
|
||||
(byte) bitmap_line::x0
|
||||
(byte) bitmap_line::x0#0 x0 zp ZP_BYTE:7 5.173913043478264
|
||||
(byte) bitmap_line::x0#0 x0 zp ZP_BYTE:5 5.173913043478264
|
||||
(byte) bitmap_line::x1
|
||||
(byte) bitmap_line::x1#0 x1 zp ZP_BYTE:8 5.409090909090908
|
||||
(byte) bitmap_line::xd
|
||||
(byte) bitmap_line::xd#0 xd zp ZP_BYTE:3 0.7
|
||||
(byte) bitmap_line::xd#1 xd zp ZP_BYTE:3 0.7
|
||||
(byte) bitmap_line::xd#0 xd zp ZP_BYTE:4 0.7
|
||||
(byte) bitmap_line::xd#1 xd zp ZP_BYTE:4 0.7
|
||||
(byte) bitmap_line::y0
|
||||
(byte) bitmap_line::y0#0 y0 zp ZP_BYTE:5 5.952380952380948
|
||||
(byte) bitmap_line::y0#0 y0 zp ZP_BYTE:6 5.952380952380948
|
||||
(byte) bitmap_line::y1
|
||||
(byte) bitmap_line::y1#0 reg byte y 6.249999999999996
|
||||
(byte) bitmap_line::yd
|
||||
(byte) bitmap_line::yd#0 yd zp ZP_BYTE:4 0.8888888888888888
|
||||
(byte) bitmap_line::yd#1 yd zp ZP_BYTE:4 0.8888888888888888
|
||||
(byte) bitmap_line::yd#10 yd zp ZP_BYTE:4 0.8888888888888888
|
||||
(byte) bitmap_line::yd#3 yd zp ZP_BYTE:4 0.8888888888888888
|
||||
(byte) bitmap_line::yd#0 yd zp ZP_BYTE:3 0.8888888888888888
|
||||
(byte) bitmap_line::yd#1 yd zp ZP_BYTE:3 0.8888888888888888
|
||||
(byte) bitmap_line::yd#10 yd zp ZP_BYTE:3 0.8888888888888888
|
||||
(byte) bitmap_line::yd#3 yd zp ZP_BYTE:3 0.8888888888888888
|
||||
(void()) bitmap_line_xdyd((byte) bitmap_line_xdyd::x , (byte) bitmap_line_xdyd::y , (byte) bitmap_line_xdyd::x1 , (byte) bitmap_line_xdyd::xd , (byte) bitmap_line_xdyd::yd)
|
||||
(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 $6 zp ZP_BYTE:7 2002.0
|
||||
(label) bitmap_line_xdyd::@1
|
||||
@ -105,11 +105,11 @@
|
||||
(label) bitmap_line_xdyd::@5
|
||||
(label) bitmap_line_xdyd::@return
|
||||
(byte) bitmap_line_xdyd::e
|
||||
(byte) bitmap_line_xdyd::e#0 e zp ZP_BYTE:6 4.0
|
||||
(byte) bitmap_line_xdyd::e#1 e zp ZP_BYTE:6 1334.6666666666667
|
||||
(byte) bitmap_line_xdyd::e#2 e zp ZP_BYTE:6 2002.0
|
||||
(byte) bitmap_line_xdyd::e#3 e zp ZP_BYTE:6 400.79999999999995
|
||||
(byte) bitmap_line_xdyd::e#6 e zp ZP_BYTE:6 1001.0
|
||||
(byte) bitmap_line_xdyd::e#0 e zp ZP_BYTE:5 4.0
|
||||
(byte) bitmap_line_xdyd::e#1 e zp ZP_BYTE:5 1334.6666666666667
|
||||
(byte) bitmap_line_xdyd::e#2 e zp ZP_BYTE:5 2002.0
|
||||
(byte) bitmap_line_xdyd::e#3 e zp ZP_BYTE:5 400.79999999999995
|
||||
(byte) bitmap_line_xdyd::e#6 e zp ZP_BYTE:5 1001.0
|
||||
(byte) bitmap_line_xdyd::x
|
||||
(byte) bitmap_line_xdyd::x#0 reg byte x 0.8
|
||||
(byte) bitmap_line_xdyd::x#1 reg byte x 0.8
|
||||
@ -121,20 +121,20 @@
|
||||
(byte) bitmap_line_xdyd::x1#1 x1 zp ZP_BYTE:8 1.3333333333333333
|
||||
(byte) bitmap_line_xdyd::x1#6 x1 zp ZP_BYTE:8 71.78571428571429
|
||||
(byte) bitmap_line_xdyd::xd
|
||||
(byte) bitmap_line_xdyd::xd#0 xd zp ZP_BYTE:3 2.0
|
||||
(byte) bitmap_line_xdyd::xd#1 xd zp ZP_BYTE:3 2.0
|
||||
(byte) bitmap_line_xdyd::xd#5 xd zp ZP_BYTE:3 143.28571428571428
|
||||
(byte) bitmap_line_xdyd::xd#0 xd zp ZP_BYTE:4 2.0
|
||||
(byte) bitmap_line_xdyd::xd#1 xd zp ZP_BYTE:4 2.0
|
||||
(byte) bitmap_line_xdyd::xd#5 xd zp ZP_BYTE:4 143.28571428571428
|
||||
(byte) bitmap_line_xdyd::y
|
||||
(byte) bitmap_line_xdyd::y#0 y zp ZP_BYTE:5 1.0
|
||||
(byte) bitmap_line_xdyd::y#1 y zp ZP_BYTE:5 1.0
|
||||
(byte) bitmap_line_xdyd::y#2 y zp ZP_BYTE:5 1001.0
|
||||
(byte) bitmap_line_xdyd::y#3 y zp ZP_BYTE:5 572.2857142857142
|
||||
(byte) bitmap_line_xdyd::y#5 y zp ZP_BYTE:5 3.0
|
||||
(byte) bitmap_line_xdyd::y#6 y zp ZP_BYTE:5 1001.0
|
||||
(byte) bitmap_line_xdyd::y#0 y zp ZP_BYTE:6 1.0
|
||||
(byte) bitmap_line_xdyd::y#1 y zp ZP_BYTE:6 1.0
|
||||
(byte) bitmap_line_xdyd::y#2 y zp ZP_BYTE:6 1001.0
|
||||
(byte) bitmap_line_xdyd::y#3 y zp ZP_BYTE:6 572.2857142857142
|
||||
(byte) bitmap_line_xdyd::y#5 y zp ZP_BYTE:6 3.0
|
||||
(byte) bitmap_line_xdyd::y#6 y zp ZP_BYTE:6 1001.0
|
||||
(byte) bitmap_line_xdyd::yd
|
||||
(byte) bitmap_line_xdyd::yd#0 yd zp ZP_BYTE:4 4.0
|
||||
(byte) bitmap_line_xdyd::yd#1 yd zp ZP_BYTE:4 4.0
|
||||
(byte) bitmap_line_xdyd::yd#2 yd zp ZP_BYTE:4 71.92857142857143
|
||||
(byte) bitmap_line_xdyd::yd#0 yd zp ZP_BYTE:3 4.0
|
||||
(byte) bitmap_line_xdyd::yd#1 yd zp ZP_BYTE:3 4.0
|
||||
(byte) bitmap_line_xdyd::yd#2 yd zp ZP_BYTE:3 71.92857142857143
|
||||
(void()) bitmap_line_xdyi((byte) bitmap_line_xdyi::x , (byte) bitmap_line_xdyi::y , (byte) bitmap_line_xdyi::x1 , (byte) bitmap_line_xdyi::xd , (byte) bitmap_line_xdyi::yd)
|
||||
(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 $6 zp ZP_BYTE:8 2002.0
|
||||
(label) bitmap_line_xdyi::@1
|
||||
@ -143,11 +143,11 @@
|
||||
(label) bitmap_line_xdyi::@5
|
||||
(label) bitmap_line_xdyi::@return
|
||||
(byte) bitmap_line_xdyi::e
|
||||
(byte) bitmap_line_xdyi::e#0 e zp ZP_BYTE:6 4.0
|
||||
(byte) bitmap_line_xdyi::e#1 e zp ZP_BYTE:6 1334.6666666666667
|
||||
(byte) bitmap_line_xdyi::e#2 e zp ZP_BYTE:6 2002.0
|
||||
(byte) bitmap_line_xdyi::e#3 e zp ZP_BYTE:6 400.79999999999995
|
||||
(byte) bitmap_line_xdyi::e#6 e zp ZP_BYTE:6 1001.0
|
||||
(byte) bitmap_line_xdyi::e#0 e zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_xdyi::e#1 e zp ZP_BYTE:7 1334.6666666666667
|
||||
(byte) bitmap_line_xdyi::e#2 e zp ZP_BYTE:7 2002.0
|
||||
(byte) bitmap_line_xdyi::e#3 e zp ZP_BYTE:7 400.79999999999995
|
||||
(byte) bitmap_line_xdyi::e#6 e zp ZP_BYTE:7 1001.0
|
||||
(byte) bitmap_line_xdyi::x
|
||||
(byte) bitmap_line_xdyi::x#0 reg byte x 0.8
|
||||
(byte) bitmap_line_xdyi::x#1 reg byte x 0.8
|
||||
@ -155,24 +155,24 @@
|
||||
(byte) bitmap_line_xdyi::x#3 reg byte x 751.25
|
||||
(byte) bitmap_line_xdyi::x#6 reg byte x 3.0
|
||||
(byte) bitmap_line_xdyi::x1
|
||||
(byte) bitmap_line_xdyi::x1#0 x1 zp ZP_BYTE:7 1.3333333333333333
|
||||
(byte) bitmap_line_xdyi::x1#1 x1 zp ZP_BYTE:7 1.3333333333333333
|
||||
(byte) bitmap_line_xdyi::x1#6 x1 zp ZP_BYTE:7 71.78571428571429
|
||||
(byte) bitmap_line_xdyi::x1#0 x1 zp ZP_BYTE:5 1.3333333333333333
|
||||
(byte) bitmap_line_xdyi::x1#1 x1 zp ZP_BYTE:5 1.3333333333333333
|
||||
(byte) bitmap_line_xdyi::x1#6 x1 zp ZP_BYTE:5 71.78571428571429
|
||||
(byte) bitmap_line_xdyi::xd
|
||||
(byte) bitmap_line_xdyi::xd#0 xd zp ZP_BYTE:3 2.0
|
||||
(byte) bitmap_line_xdyi::xd#1 xd zp ZP_BYTE:3 2.0
|
||||
(byte) bitmap_line_xdyi::xd#5 xd zp ZP_BYTE:3 143.28571428571428
|
||||
(byte) bitmap_line_xdyi::xd#0 xd zp ZP_BYTE:4 2.0
|
||||
(byte) bitmap_line_xdyi::xd#1 xd zp ZP_BYTE:4 2.0
|
||||
(byte) bitmap_line_xdyi::xd#5 xd zp ZP_BYTE:4 143.28571428571428
|
||||
(byte) bitmap_line_xdyi::y
|
||||
(byte) bitmap_line_xdyi::y#0 y zp ZP_BYTE:5 1.0
|
||||
(byte) bitmap_line_xdyi::y#1 y zp ZP_BYTE:5 1.0
|
||||
(byte) bitmap_line_xdyi::y#2 y zp ZP_BYTE:5 1001.0
|
||||
(byte) bitmap_line_xdyi::y#3 y zp ZP_BYTE:5 572.2857142857142
|
||||
(byte) bitmap_line_xdyi::y#5 y zp ZP_BYTE:5 3.0
|
||||
(byte) bitmap_line_xdyi::y#6 y zp ZP_BYTE:5 1001.0
|
||||
(byte) bitmap_line_xdyi::y#0 y zp ZP_BYTE:6 1.0
|
||||
(byte) bitmap_line_xdyi::y#1 y zp ZP_BYTE:6 1.0
|
||||
(byte) bitmap_line_xdyi::y#2 y zp ZP_BYTE:6 1001.0
|
||||
(byte) bitmap_line_xdyi::y#3 y zp ZP_BYTE:6 572.2857142857142
|
||||
(byte) bitmap_line_xdyi::y#5 y zp ZP_BYTE:6 3.0
|
||||
(byte) bitmap_line_xdyi::y#6 y zp ZP_BYTE:6 1001.0
|
||||
(byte) bitmap_line_xdyi::yd
|
||||
(byte) bitmap_line_xdyi::yd#0 yd zp ZP_BYTE:4 4.0
|
||||
(byte) bitmap_line_xdyi::yd#1 yd zp ZP_BYTE:4 4.0
|
||||
(byte) bitmap_line_xdyi::yd#2 yd zp ZP_BYTE:4 71.92857142857143
|
||||
(byte) bitmap_line_xdyi::yd#0 yd zp ZP_BYTE:3 4.0
|
||||
(byte) bitmap_line_xdyi::yd#1 yd zp ZP_BYTE:3 4.0
|
||||
(byte) bitmap_line_xdyi::yd#2 yd zp ZP_BYTE:3 71.92857142857143
|
||||
(void()) bitmap_line_ydxd((byte) bitmap_line_ydxd::y , (byte) bitmap_line_ydxd::x , (byte) bitmap_line_ydxd::y1 , (byte) bitmap_line_ydxd::yd , (byte) bitmap_line_ydxd::xd)
|
||||
(byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 reg byte y 2002.0
|
||||
(label) bitmap_line_ydxd::@1
|
||||
@ -181,11 +181,11 @@
|
||||
(label) bitmap_line_ydxd::@5
|
||||
(label) bitmap_line_ydxd::@return
|
||||
(byte) bitmap_line_ydxd::e
|
||||
(byte) bitmap_line_ydxd::e#0 e zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_ydxd::e#1 e zp ZP_BYTE:7 1334.6666666666667
|
||||
(byte) bitmap_line_ydxd::e#2 e zp ZP_BYTE:7 2002.0
|
||||
(byte) bitmap_line_ydxd::e#3 e zp ZP_BYTE:7 400.79999999999995
|
||||
(byte) bitmap_line_ydxd::e#6 e zp ZP_BYTE:7 1001.0
|
||||
(byte) bitmap_line_ydxd::e#0 e zp ZP_BYTE:5 4.0
|
||||
(byte) bitmap_line_ydxd::e#1 e zp ZP_BYTE:5 1334.6666666666667
|
||||
(byte) bitmap_line_ydxd::e#2 e zp ZP_BYTE:5 2002.0
|
||||
(byte) bitmap_line_ydxd::e#3 e zp ZP_BYTE:5 400.79999999999995
|
||||
(byte) bitmap_line_ydxd::e#6 e zp ZP_BYTE:5 1001.0
|
||||
(byte) bitmap_line_ydxd::x
|
||||
(byte) bitmap_line_ydxd::x#0 reg byte x 1.0
|
||||
(byte) bitmap_line_ydxd::x#1 reg byte x 1.0
|
||||
@ -194,23 +194,23 @@
|
||||
(byte) bitmap_line_ydxd::x#5 reg byte x 3.0
|
||||
(byte) bitmap_line_ydxd::x#6 reg byte x 1001.0
|
||||
(byte) bitmap_line_ydxd::xd
|
||||
(byte) bitmap_line_ydxd::xd#0 xd zp ZP_BYTE:3 4.0
|
||||
(byte) bitmap_line_ydxd::xd#1 xd zp ZP_BYTE:3 4.0
|
||||
(byte) bitmap_line_ydxd::xd#2 xd zp ZP_BYTE:3 71.92857142857143
|
||||
(byte) bitmap_line_ydxd::xd#0 xd zp ZP_BYTE:4 4.0
|
||||
(byte) bitmap_line_ydxd::xd#1 xd zp ZP_BYTE:4 4.0
|
||||
(byte) bitmap_line_ydxd::xd#2 xd zp ZP_BYTE:4 71.92857142857143
|
||||
(byte) bitmap_line_ydxd::y
|
||||
(byte) bitmap_line_ydxd::y#0 y zp ZP_BYTE:6 0.8
|
||||
(byte) bitmap_line_ydxd::y#1 y zp ZP_BYTE:6 0.8
|
||||
(byte) bitmap_line_ydxd::y#2 y zp ZP_BYTE:6 751.25
|
||||
(byte) bitmap_line_ydxd::y#3 y zp ZP_BYTE:6 375.375
|
||||
(byte) bitmap_line_ydxd::y#7 y zp ZP_BYTE:6 3.0
|
||||
(byte) bitmap_line_ydxd::y#0 y zp ZP_BYTE:7 0.8
|
||||
(byte) bitmap_line_ydxd::y#1 y zp ZP_BYTE:7 0.8
|
||||
(byte) bitmap_line_ydxd::y#2 y zp ZP_BYTE:7 751.25
|
||||
(byte) bitmap_line_ydxd::y#3 y zp ZP_BYTE:7 375.375
|
||||
(byte) bitmap_line_ydxd::y#7 y zp ZP_BYTE:7 3.0
|
||||
(byte) bitmap_line_ydxd::y1
|
||||
(byte) bitmap_line_ydxd::y1#0 y1 zp ZP_BYTE:5 1.3333333333333333
|
||||
(byte) bitmap_line_ydxd::y1#1 y1 zp ZP_BYTE:5 1.3333333333333333
|
||||
(byte) bitmap_line_ydxd::y1#6 y1 zp ZP_BYTE:5 71.78571428571429
|
||||
(byte) bitmap_line_ydxd::y1#0 y1 zp ZP_BYTE:6 1.3333333333333333
|
||||
(byte) bitmap_line_ydxd::y1#1 y1 zp ZP_BYTE:6 1.3333333333333333
|
||||
(byte) bitmap_line_ydxd::y1#6 y1 zp ZP_BYTE:6 71.78571428571429
|
||||
(byte) bitmap_line_ydxd::yd
|
||||
(byte) bitmap_line_ydxd::yd#0 yd zp ZP_BYTE:4 2.0
|
||||
(byte) bitmap_line_ydxd::yd#1 yd zp ZP_BYTE:4 2.0
|
||||
(byte) bitmap_line_ydxd::yd#5 yd zp ZP_BYTE:4 143.28571428571428
|
||||
(byte) bitmap_line_ydxd::yd#0 yd zp ZP_BYTE:3 2.0
|
||||
(byte) bitmap_line_ydxd::yd#1 yd zp ZP_BYTE:3 2.0
|
||||
(byte) bitmap_line_ydxd::yd#5 yd zp ZP_BYTE:3 143.28571428571428
|
||||
(void()) bitmap_line_ydxi((byte) bitmap_line_ydxi::y , (byte) bitmap_line_ydxi::x , (byte) bitmap_line_ydxi::y1 , (byte) bitmap_line_ydxi::yd , (byte) bitmap_line_ydxi::xd)
|
||||
(byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 reg byte y 2002.0
|
||||
(label) bitmap_line_ydxi::@1
|
||||
@ -219,11 +219,11 @@
|
||||
(label) bitmap_line_ydxi::@5
|
||||
(label) bitmap_line_ydxi::@return
|
||||
(byte) bitmap_line_ydxi::e
|
||||
(byte) bitmap_line_ydxi::e#0 e zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_ydxi::e#1 e zp ZP_BYTE:7 1334.6666666666667
|
||||
(byte) bitmap_line_ydxi::e#2 e zp ZP_BYTE:7 2002.0
|
||||
(byte) bitmap_line_ydxi::e#3 e zp ZP_BYTE:7 400.79999999999995
|
||||
(byte) bitmap_line_ydxi::e#6 e zp ZP_BYTE:7 1001.0
|
||||
(byte) bitmap_line_ydxi::e#0 e zp ZP_BYTE:5 4.0
|
||||
(byte) bitmap_line_ydxi::e#1 e zp ZP_BYTE:5 1334.6666666666667
|
||||
(byte) bitmap_line_ydxi::e#2 e zp ZP_BYTE:5 2002.0
|
||||
(byte) bitmap_line_ydxi::e#3 e zp ZP_BYTE:5 400.79999999999995
|
||||
(byte) bitmap_line_ydxi::e#6 e zp ZP_BYTE:5 1001.0
|
||||
(byte) bitmap_line_ydxi::x
|
||||
(byte) bitmap_line_ydxi::x#0 reg byte x 1.0
|
||||
(byte) bitmap_line_ydxi::x#1 reg byte x 1.0
|
||||
@ -232,23 +232,23 @@
|
||||
(byte) bitmap_line_ydxi::x#5 reg byte x 3.0
|
||||
(byte) bitmap_line_ydxi::x#6 reg byte x 1001.0
|
||||
(byte) bitmap_line_ydxi::xd
|
||||
(byte) bitmap_line_ydxi::xd#0 xd zp ZP_BYTE:3 4.0
|
||||
(byte) bitmap_line_ydxi::xd#1 xd zp ZP_BYTE:3 4.0
|
||||
(byte) bitmap_line_ydxi::xd#2 xd zp ZP_BYTE:3 71.92857142857143
|
||||
(byte) bitmap_line_ydxi::xd#0 xd zp ZP_BYTE:4 4.0
|
||||
(byte) bitmap_line_ydxi::xd#1 xd zp ZP_BYTE:4 4.0
|
||||
(byte) bitmap_line_ydxi::xd#2 xd zp ZP_BYTE:4 71.92857142857143
|
||||
(byte) bitmap_line_ydxi::y
|
||||
(byte) bitmap_line_ydxi::y#0 y zp ZP_BYTE:6 0.8
|
||||
(byte) bitmap_line_ydxi::y#1 y zp ZP_BYTE:6 0.8
|
||||
(byte) bitmap_line_ydxi::y#2 y zp ZP_BYTE:6 375.375
|
||||
(byte) bitmap_line_ydxi::y#3 y zp ZP_BYTE:6 751.25
|
||||
(byte) bitmap_line_ydxi::y#6 y zp ZP_BYTE:6 3.0
|
||||
(byte) bitmap_line_ydxi::y#0 y zp ZP_BYTE:7 0.8
|
||||
(byte) bitmap_line_ydxi::y#1 y zp ZP_BYTE:7 0.8
|
||||
(byte) bitmap_line_ydxi::y#2 y zp ZP_BYTE:7 375.375
|
||||
(byte) bitmap_line_ydxi::y#3 y zp ZP_BYTE:7 751.25
|
||||
(byte) bitmap_line_ydxi::y#6 y zp ZP_BYTE:7 3.0
|
||||
(byte) bitmap_line_ydxi::y1
|
||||
(byte) bitmap_line_ydxi::y1#0 y1 zp ZP_BYTE:5 1.3333333333333333
|
||||
(byte) bitmap_line_ydxi::y1#1 y1 zp ZP_BYTE:5 1.3333333333333333
|
||||
(byte) bitmap_line_ydxi::y1#6 y1 zp ZP_BYTE:5 71.78571428571429
|
||||
(byte) bitmap_line_ydxi::y1#0 y1 zp ZP_BYTE:6 1.3333333333333333
|
||||
(byte) bitmap_line_ydxi::y1#1 y1 zp ZP_BYTE:6 1.3333333333333333
|
||||
(byte) bitmap_line_ydxi::y1#6 y1 zp ZP_BYTE:6 71.78571428571429
|
||||
(byte) bitmap_line_ydxi::yd
|
||||
(byte) bitmap_line_ydxi::yd#0 yd zp ZP_BYTE:4 2.0
|
||||
(byte) bitmap_line_ydxi::yd#1 yd zp ZP_BYTE:4 2.0
|
||||
(byte) bitmap_line_ydxi::yd#5 yd zp ZP_BYTE:4 143.28571428571428
|
||||
(byte) bitmap_line_ydxi::yd#0 yd zp ZP_BYTE:3 2.0
|
||||
(byte) bitmap_line_ydxi::yd#1 yd zp ZP_BYTE:3 2.0
|
||||
(byte) bitmap_line_ydxi::yd#5 yd zp ZP_BYTE:3 143.28571428571428
|
||||
(void()) bitmap_plot((byte) bitmap_plot::x , (byte) bitmap_plot::y)
|
||||
(word~) bitmap_plot::$0 $0 zp ZP_WORD:9 1.0
|
||||
(byte~) bitmap_plot::$1 reg byte a 4.0
|
||||
@ -305,27 +305,27 @@
|
||||
(label) main::@4
|
||||
|
||||
zp ZP_BYTE:2 [ lines::l#2 lines::l#1 bitmap_clear::y#4 bitmap_clear::y#1 bitmap_init::$6 ]
|
||||
zp ZP_BYTE:3 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 bitmap_line::xd#1 bitmap_line::xd#0 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#1 bitmap_line_ydxd::xd#0 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 ]
|
||||
zp ZP_BYTE:4 [ bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 bitmap_line::yd#1 bitmap_line::yd#10 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#1 bitmap_line_ydxd::yd#0 bitmap_line::yd#0 bitmap_line::yd#3 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ]
|
||||
zp ZP_BYTE:5 [ bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y0#0 bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::y1#0 bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
|
||||
reg byte x [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ]
|
||||
zp ZP_BYTE:6 [ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ]
|
||||
zp ZP_BYTE:7 [ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 bitmap_line::x0#0 bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 bitmap_line_xdyd::$6 ]
|
||||
zp ZP_BYTE:3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 bitmap_line::yd#1 bitmap_line::yd#10 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#0 bitmap_line_ydxi::yd#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 bitmap_line::yd#0 bitmap_line::yd#3 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 ]
|
||||
zp ZP_BYTE:4 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 bitmap_line::xd#1 bitmap_line::xd#0 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#0 bitmap_line_ydxi::xd#1 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
|
||||
zp ZP_BYTE:5 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 bitmap_line::x0#0 bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ]
|
||||
reg byte x [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ]
|
||||
zp ZP_BYTE:6 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 bitmap_line::y0#0 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::y1#1 bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
|
||||
zp ZP_BYTE:7 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#2 bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 bitmap_line_xdyd::$6 ]
|
||||
reg byte x [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ]
|
||||
reg byte y [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ]
|
||||
reg byte x [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ]
|
||||
reg byte x [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ]
|
||||
zp ZP_BYTE:8 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 bitmap_line::x1#0 bitmap_line_xdyi::$6 ]
|
||||
reg byte x [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ]
|
||||
reg byte x [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ]
|
||||
zp ZP_BYTE:8 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 bitmap_line::x1#0 bitmap_line_xdyi::$6 ]
|
||||
reg byte x [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ]
|
||||
reg byte x [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ]
|
||||
zp ZP_WORD:9 [ init_screen::c#2 init_screen::c#1 bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 bitmap_clear::$3 bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 bitmap_plot::plotter_x#0 bitmap_plot::$0 ]
|
||||
reg byte x [ bitmap_clear::x#2 bitmap_clear::x#1 ]
|
||||
reg byte x [ bitmap_init::x#2 bitmap_init::x#1 ]
|
||||
reg byte y [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ]
|
||||
reg byte x [ bitmap_init::y#2 bitmap_init::y#1 ]
|
||||
reg byte y [ bitmap_line::y1#0 ]
|
||||
reg byte y [ bitmap_line_ydxi::$6 ]
|
||||
zp ZP_WORD:11 [ bitmap_plot::plotter_y#0 ]
|
||||
reg byte a [ bitmap_plot::$1 ]
|
||||
reg byte y [ bitmap_line_ydxi::$6 ]
|
||||
reg byte y [ bitmap_line_ydxd::$6 ]
|
||||
reg byte a [ bitmap_init::$0 ]
|
||||
reg byte a [ bitmap_init::$7 ]
|
||||
|
@ -24,28 +24,28 @@ main::@return: scope:[main] from main::@2
|
||||
to:@return
|
||||
bool_const_inline: scope:[bool_const_inline] from main::@2
|
||||
[11] phi() [ ] ( main:2::bool_const_inline:9 [ ] )
|
||||
to:bool_const_inline::@3
|
||||
bool_const_inline::@3: scope:[bool_const_inline] from bool_const_inline
|
||||
to:bool_const_inline::@1
|
||||
bool_const_inline::@1: scope:[bool_const_inline] from bool_const_inline
|
||||
[12] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 't' [ ] ( main:2::bool_const_inline:9 [ ] )
|
||||
to:bool_const_inline::@return
|
||||
bool_const_inline::@return: scope:[bool_const_inline] from bool_const_inline::@3
|
||||
bool_const_inline::@return: scope:[bool_const_inline] from bool_const_inline::@1
|
||||
[13] return [ ] ( main:2::bool_const_inline:9 [ ] )
|
||||
to:@return
|
||||
bool_const_vars: scope:[bool_const_vars] from main::@1
|
||||
[14] phi() [ ] ( main:2::bool_const_vars:7 [ ] )
|
||||
to:bool_const_vars::@1
|
||||
bool_const_vars::@1: scope:[bool_const_vars] from bool_const_vars
|
||||
to:bool_const_vars::@3
|
||||
bool_const_vars::@3: scope:[bool_const_vars] from bool_const_vars
|
||||
[15] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 'f' [ ] ( main:2::bool_const_vars:7 [ ] )
|
||||
to:bool_const_vars::@return
|
||||
bool_const_vars::@return: scope:[bool_const_vars] from bool_const_vars::@1
|
||||
bool_const_vars::@return: scope:[bool_const_vars] from bool_const_vars::@3
|
||||
[16] return [ ] ( main:2::bool_const_vars:7 [ ] )
|
||||
to:@return
|
||||
bool_const_if: scope:[bool_const_if] from main
|
||||
[17] phi() [ ] ( main:2::bool_const_if:5 [ ] )
|
||||
to:bool_const_if::@3
|
||||
bool_const_if::@3: scope:[bool_const_if] from bool_const_if
|
||||
to:bool_const_if::@1
|
||||
bool_const_if::@1: scope:[bool_const_if] from bool_const_if
|
||||
[18] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 't' [ ] ( main:2::bool_const_if:5 [ ] )
|
||||
to:bool_const_if::@return
|
||||
bool_const_if::@return: scope:[bool_const_if] from bool_const_if::@3
|
||||
bool_const_if::@return: scope:[bool_const_if] from bool_const_if::@1
|
||||
[19] return [ ] ( main:2::bool_const_if:5 [ ] )
|
||||
to:@return
|
||||
|
@ -1,7 +1,5 @@
|
||||
PARSING src/test/java/dk/camelot64/kickc/test/kc/bool-const.kc
|
||||
// A Minimal test of boolean variables.
|
||||
// Boolean variables are bytes under the hood
|
||||
// 0: false, !=0 : true
|
||||
// A Minimal test of boolean constants.
|
||||
|
||||
const byte* SCREEN = $400;
|
||||
|
||||
@ -55,12 +53,11 @@ main::@return:
|
||||
endproc // main()
|
||||
proc (void()) bool_const_if()
|
||||
(boolean) bool_const_if::b ← true
|
||||
(boolean~) bool_const_if::$0 ← ! (boolean) bool_const_if::b
|
||||
if((boolean~) bool_const_if::$0) goto bool_const_if::@1
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 't'
|
||||
if((boolean) bool_const_if::b) goto bool_const_if::@1
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 'f'
|
||||
goto bool_const_if::@2
|
||||
bool_const_if::@1:
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 'f'
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 't'
|
||||
bool_const_if::@2:
|
||||
bool_const_if::@return:
|
||||
return
|
||||
@ -81,12 +78,11 @@ proc (void()) bool_const_vars()
|
||||
(boolean~) bool_const_vars::$9 ← (boolean) bool_const_vars::b1 && (boolean~) bool_const_vars::$8
|
||||
(boolean~) bool_const_vars::$10 ← (boolean~) bool_const_vars::$9 || false
|
||||
(boolean) bool_const_vars::b ← (boolean~) bool_const_vars::$10
|
||||
(boolean~) bool_const_vars::$11 ← ! (boolean) bool_const_vars::b
|
||||
if((boolean~) bool_const_vars::$11) goto bool_const_vars::@1
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 't'
|
||||
if((boolean) bool_const_vars::b) goto bool_const_vars::@1
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 'f'
|
||||
goto bool_const_vars::@2
|
||||
bool_const_vars::@1:
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 'f'
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 't'
|
||||
bool_const_vars::@2:
|
||||
bool_const_vars::@return:
|
||||
return
|
||||
@ -102,12 +98,11 @@ proc (void()) bool_const_inline()
|
||||
(boolean~) bool_const_inline::$6 ← (byte/signed byte/word/signed word/dword/signed dword) 21 < (byte) bool_const_inline::a
|
||||
(boolean~) bool_const_inline::$7 ← ! (boolean~) bool_const_inline::$6
|
||||
(boolean~) bool_const_inline::$8 ← (boolean~) bool_const_inline::$5 || (boolean~) bool_const_inline::$7
|
||||
(boolean~) bool_const_inline::$9 ← ! (boolean~) bool_const_inline::$8
|
||||
if((boolean~) bool_const_inline::$9) goto bool_const_inline::@1
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 't'
|
||||
if((boolean~) bool_const_inline::$8) goto bool_const_inline::@1
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 'f'
|
||||
goto bool_const_inline::@2
|
||||
bool_const_inline::@1:
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 'f'
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 't'
|
||||
bool_const_inline::@2:
|
||||
bool_const_inline::@return:
|
||||
return
|
||||
@ -117,7 +112,6 @@ endproc // bool_const_inline()
|
||||
SYMBOLS
|
||||
(byte*) SCREEN
|
||||
(void()) bool_const_if()
|
||||
(boolean~) bool_const_if::$0
|
||||
(label) bool_const_if::@1
|
||||
(label) bool_const_if::@2
|
||||
(label) bool_const_if::@return
|
||||
@ -132,7 +126,6 @@ SYMBOLS
|
||||
(boolean~) bool_const_inline::$6
|
||||
(boolean~) bool_const_inline::$7
|
||||
(boolean~) bool_const_inline::$8
|
||||
(boolean~) bool_const_inline::$9
|
||||
(label) bool_const_inline::@1
|
||||
(label) bool_const_inline::@2
|
||||
(label) bool_const_inline::@return
|
||||
@ -141,7 +134,6 @@ SYMBOLS
|
||||
(boolean~) bool_const_vars::$0
|
||||
(boolean~) bool_const_vars::$1
|
||||
(boolean~) bool_const_vars::$10
|
||||
(boolean~) bool_const_vars::$11
|
||||
(boolean~) bool_const_vars::$2
|
||||
(boolean~) bool_const_vars::$3
|
||||
(boolean~) bool_const_vars::$4
|
||||
@ -180,14 +172,13 @@ main::@return: scope:[main] from main
|
||||
to:@2
|
||||
bool_const_if: scope:[bool_const_if] from
|
||||
(boolean) bool_const_if::b ← true
|
||||
(boolean~) bool_const_if::$0 ← ! (boolean) bool_const_if::b
|
||||
if((boolean~) bool_const_if::$0) goto bool_const_if::@1
|
||||
if((boolean) bool_const_if::b) goto bool_const_if::@1
|
||||
to:bool_const_if::@3
|
||||
bool_const_if::@1: scope:[bool_const_if] from bool_const_if bool_const_if::@4
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 'f'
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 't'
|
||||
to:bool_const_if::@2
|
||||
bool_const_if::@3: scope:[bool_const_if] from bool_const_if
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 't'
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 'f'
|
||||
to:bool_const_if::@2
|
||||
bool_const_if::@2: scope:[bool_const_if] from bool_const_if::@1 bool_const_if::@3
|
||||
to:bool_const_if::@return
|
||||
@ -214,14 +205,13 @@ bool_const_vars: scope:[bool_const_vars] from
|
||||
(boolean~) bool_const_vars::$9 ← (boolean) bool_const_vars::b1 && (boolean~) bool_const_vars::$8
|
||||
(boolean~) bool_const_vars::$10 ← (boolean~) bool_const_vars::$9 || false
|
||||
(boolean) bool_const_vars::b ← (boolean~) bool_const_vars::$10
|
||||
(boolean~) bool_const_vars::$11 ← ! (boolean) bool_const_vars::b
|
||||
if((boolean~) bool_const_vars::$11) goto bool_const_vars::@1
|
||||
if((boolean) bool_const_vars::b) goto bool_const_vars::@1
|
||||
to:bool_const_vars::@3
|
||||
bool_const_vars::@1: scope:[bool_const_vars] from bool_const_vars bool_const_vars::@4
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 'f'
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 't'
|
||||
to:bool_const_vars::@2
|
||||
bool_const_vars::@3: scope:[bool_const_vars] from bool_const_vars
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 't'
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 'f'
|
||||
to:bool_const_vars::@2
|
||||
bool_const_vars::@2: scope:[bool_const_vars] from bool_const_vars::@1 bool_const_vars::@3
|
||||
to:bool_const_vars::@return
|
||||
@ -243,14 +233,13 @@ bool_const_inline: scope:[bool_const_inline] from
|
||||
(boolean~) bool_const_inline::$6 ← (byte/signed byte/word/signed word/dword/signed dword) 21 < (byte) bool_const_inline::a
|
||||
(boolean~) bool_const_inline::$7 ← ! (boolean~) bool_const_inline::$6
|
||||
(boolean~) bool_const_inline::$8 ← (boolean~) bool_const_inline::$5 || (boolean~) bool_const_inline::$7
|
||||
(boolean~) bool_const_inline::$9 ← ! (boolean~) bool_const_inline::$8
|
||||
if((boolean~) bool_const_inline::$9) goto bool_const_inline::@1
|
||||
if((boolean~) bool_const_inline::$8) goto bool_const_inline::@1
|
||||
to:bool_const_inline::@3
|
||||
bool_const_inline::@1: scope:[bool_const_inline] from bool_const_inline bool_const_inline::@4
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 'f'
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 't'
|
||||
to:bool_const_inline::@2
|
||||
bool_const_inline::@3: scope:[bool_const_inline] from bool_const_inline
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 't'
|
||||
*((byte*) SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 'f'
|
||||
to:bool_const_inline::@2
|
||||
bool_const_inline::@2: scope:[bool_const_inline] from bool_const_inline::@1 bool_const_inline::@3
|
||||
to:bool_const_inline::@return
|
||||
@ -300,14 +289,13 @@ main::@return: scope:[main] from main::@3
|
||||
to:@return
|
||||
bool_const_if: scope:[bool_const_if] from main
|
||||
(boolean) bool_const_if::b#0 ← true
|
||||
(boolean~) bool_const_if::$0 ← ! (boolean) bool_const_if::b#0
|
||||
if((boolean~) bool_const_if::$0) goto bool_const_if::@1
|
||||
if((boolean) bool_const_if::b#0) goto bool_const_if::@1
|
||||
to:bool_const_if::@3
|
||||
bool_const_if::@1: scope:[bool_const_if] from bool_const_if
|
||||
*((byte*) SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 'f'
|
||||
*((byte*) SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 't'
|
||||
to:bool_const_if::@return
|
||||
bool_const_if::@3: scope:[bool_const_if] from bool_const_if
|
||||
*((byte*) SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 't'
|
||||
*((byte*) SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 'f'
|
||||
to:bool_const_if::@return
|
||||
bool_const_if::@return: scope:[bool_const_if] from bool_const_if::@1 bool_const_if::@3
|
||||
return
|
||||
@ -328,14 +316,13 @@ bool_const_vars: scope:[bool_const_vars] from main::@1
|
||||
(boolean~) bool_const_vars::$9 ← (boolean) bool_const_vars::b1#0 && (boolean~) bool_const_vars::$8
|
||||
(boolean~) bool_const_vars::$10 ← (boolean~) bool_const_vars::$9 || false
|
||||
(boolean) bool_const_vars::b#0 ← (boolean~) bool_const_vars::$10
|
||||
(boolean~) bool_const_vars::$11 ← ! (boolean) bool_const_vars::b#0
|
||||
if((boolean~) bool_const_vars::$11) goto bool_const_vars::@1
|
||||
if((boolean) bool_const_vars::b#0) goto bool_const_vars::@1
|
||||
to:bool_const_vars::@3
|
||||
bool_const_vars::@1: scope:[bool_const_vars] from bool_const_vars
|
||||
*((byte*) SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 'f'
|
||||
*((byte*) SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 't'
|
||||
to:bool_const_vars::@return
|
||||
bool_const_vars::@3: scope:[bool_const_vars] from bool_const_vars
|
||||
*((byte*) SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 't'
|
||||
*((byte*) SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 'f'
|
||||
to:bool_const_vars::@return
|
||||
bool_const_vars::@return: scope:[bool_const_vars] from bool_const_vars::@1 bool_const_vars::@3
|
||||
return
|
||||
@ -351,14 +338,13 @@ bool_const_inline: scope:[bool_const_inline] from main::@2
|
||||
(boolean~) bool_const_inline::$6 ← (byte/signed byte/word/signed word/dword/signed dword) 21 < (byte) bool_const_inline::a#0
|
||||
(boolean~) bool_const_inline::$7 ← ! (boolean~) bool_const_inline::$6
|
||||
(boolean~) bool_const_inline::$8 ← (boolean~) bool_const_inline::$5 || (boolean~) bool_const_inline::$7
|
||||
(boolean~) bool_const_inline::$9 ← ! (boolean~) bool_const_inline::$8
|
||||
if((boolean~) bool_const_inline::$9) goto bool_const_inline::@1
|
||||
if((boolean~) bool_const_inline::$8) goto bool_const_inline::@1
|
||||
to:bool_const_inline::@3
|
||||
bool_const_inline::@1: scope:[bool_const_inline] from bool_const_inline
|
||||
*((byte*) SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 'f'
|
||||
*((byte*) SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 't'
|
||||
to:bool_const_inline::@return
|
||||
bool_const_inline::@3: scope:[bool_const_inline] from bool_const_inline
|
||||
*((byte*) SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 't'
|
||||
*((byte*) SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 'f'
|
||||
to:bool_const_inline::@return
|
||||
bool_const_inline::@return: scope:[bool_const_inline] from bool_const_inline::@1 bool_const_inline::@3
|
||||
return
|
||||
@ -378,7 +364,6 @@ SYMBOL TABLE SSA
|
||||
(byte*) SCREEN
|
||||
(byte*) SCREEN#0
|
||||
(void()) bool_const_if()
|
||||
(boolean~) bool_const_if::$0
|
||||
(label) bool_const_if::@1
|
||||
(label) bool_const_if::@3
|
||||
(label) bool_const_if::@return
|
||||
@ -394,7 +379,6 @@ SYMBOL TABLE SSA
|
||||
(boolean~) bool_const_inline::$6
|
||||
(boolean~) bool_const_inline::$7
|
||||
(boolean~) bool_const_inline::$8
|
||||
(boolean~) bool_const_inline::$9
|
||||
(label) bool_const_inline::@1
|
||||
(label) bool_const_inline::@3
|
||||
(label) bool_const_inline::@return
|
||||
@ -404,7 +388,6 @@ SYMBOL TABLE SSA
|
||||
(boolean~) bool_const_vars::$0
|
||||
(boolean~) bool_const_vars::$1
|
||||
(boolean~) bool_const_vars::$10
|
||||
(boolean~) bool_const_vars::$11
|
||||
(boolean~) bool_const_vars::$2
|
||||
(boolean~) bool_const_vars::$3
|
||||
(boolean~) bool_const_vars::$4
|
||||
@ -448,7 +431,6 @@ Constant (const signed byte/signed word/signed dword) bool_const_vars::$5 = -8
|
||||
Constant (const byte) bool_const_inline::a#0 = 23
|
||||
Constant (const signed byte/signed word/signed dword) bool_const_inline::$1 = -8
|
||||
Succesful SSA optimization Pass2ConstantIdentification
|
||||
Constant (const boolean) bool_const_if::$0 = !bool_const_if::b#0
|
||||
Constant (const boolean) bool_const_vars::$0 = bool_const_vars::a#0==15
|
||||
Constant (const boolean) bool_const_vars::$2 = 21>=bool_const_vars::a#0
|
||||
Constant (const boolean) bool_const_vars::$4 = bool_const_vars::a#0!=44
|
||||
@ -469,9 +451,6 @@ Constant (const boolean) bool_const_vars::$9 = bool_const_vars::b1#0&&bool_const
|
||||
Constant (const boolean) bool_const_inline::$8 = bool_const_inline::$5||bool_const_inline::$7
|
||||
Succesful SSA optimization Pass2ConstantIdentification
|
||||
Constant (const boolean) bool_const_vars::b#0 = bool_const_vars::$9||false
|
||||
Constant (const boolean) bool_const_inline::$9 = !bool_const_inline::$8
|
||||
Succesful SSA optimization Pass2ConstantIdentification
|
||||
Constant (const boolean) bool_const_vars::$11 = !bool_const_vars::b#0
|
||||
Succesful SSA optimization Pass2ConstantIdentification
|
||||
Consolidated array index constant in *(SCREEN#0+0)
|
||||
Consolidated array index constant in *(SCREEN#0+0)
|
||||
@ -480,18 +459,10 @@ Consolidated array index constant in *(SCREEN#0+1)
|
||||
Consolidated array index constant in *(SCREEN#0+2)
|
||||
Consolidated array index constant in *(SCREEN#0+2)
|
||||
Succesful SSA optimization Pass2ConstantAdditionElimination
|
||||
if() condition always false - eliminating if if((const boolean) bool_const_if::$0) goto bool_const_if::@1
|
||||
if() condition always true - replacing block destination if((const boolean) bool_const_vars::$11) goto bool_const_vars::@1
|
||||
if() condition always false - eliminating if if((const boolean) bool_const_inline::$9) goto bool_const_inline::@1
|
||||
if() condition always true - replacing block destination if((const boolean) bool_const_if::b#0) goto bool_const_if::@1
|
||||
if() condition always false - eliminating if((const boolean) bool_const_vars::b#0) goto bool_const_vars::@1
|
||||
if() condition always true - replacing block destination if((const boolean) bool_const_inline::$8) goto bool_const_inline::@1
|
||||
Succesful SSA optimization Pass2ConstantIfs
|
||||
Removing unused block bool_const_if::@1
|
||||
Removing unused block bool_const_vars::@3
|
||||
Removing unused block bool_const_inline::@1
|
||||
Succesful SSA optimization Pass2EliminateUnusedBlocks
|
||||
Eliminating unused constant (const boolean) bool_const_if::$0
|
||||
Eliminating unused constant (const boolean) bool_const_vars::$11
|
||||
Eliminating unused constant (const boolean) bool_const_inline::$9
|
||||
Succesful SSA optimization PassNEliminateUnusedVars
|
||||
Eliminating unused constant (const boolean) bool_const_if::b#0
|
||||
Eliminating unused constant (const boolean) bool_const_vars::b#0
|
||||
Eliminating unused constant (const boolean) bool_const_inline::$8
|
||||
@ -519,9 +490,13 @@ Succesful SSA optimization PassNEliminateUnusedVars
|
||||
Eliminating unused constant (const byte) bool_const_vars::a#0
|
||||
Eliminating unused constant (const signed byte/signed word/signed dword) bool_const_vars::$5
|
||||
Succesful SSA optimization PassNEliminateUnusedVars
|
||||
Removing unused block bool_const_if::@3
|
||||
Removing unused block bool_const_vars::@1
|
||||
Removing unused block bool_const_inline::@3
|
||||
Succesful SSA optimization Pass2EliminateUnusedBlocks
|
||||
OPTIMIZING CONTROL FLOW GRAPH
|
||||
Block Sequence Planned @begin @4 @end main main::@1 main::@2 main::@return bool_const_inline bool_const_inline::@3 bool_const_inline::@return bool_const_vars bool_const_vars::@1 bool_const_vars::@return bool_const_if bool_const_if::@3 bool_const_if::@return
|
||||
Block Sequence Planned @begin @4 @end main main::@1 main::@2 main::@return bool_const_inline bool_const_inline::@3 bool_const_inline::@return bool_const_vars bool_const_vars::@1 bool_const_vars::@return bool_const_if bool_const_if::@3 bool_const_if::@return
|
||||
Block Sequence Planned @begin @4 @end main main::@1 main::@2 main::@return bool_const_inline bool_const_inline::@1 bool_const_inline::@return bool_const_vars bool_const_vars::@3 bool_const_vars::@return bool_const_if bool_const_if::@1 bool_const_if::@return
|
||||
Block Sequence Planned @begin @4 @end main main::@1 main::@2 main::@return bool_const_inline bool_const_inline::@1 bool_const_inline::@return bool_const_vars bool_const_vars::@3 bool_const_vars::@return bool_const_if bool_const_if::@1 bool_const_if::@return
|
||||
Adding NOP phi() at start of @begin
|
||||
Adding NOP phi() at start of @4
|
||||
Adding NOP phi() at start of @end
|
||||
@ -538,7 +513,7 @@ Calls in [main] to bool_const_if:5 bool_const_vars:7 bool_const_inline:9
|
||||
Propagating live ranges...
|
||||
Created 0 initial phi equivalence classes
|
||||
Coalesced down to 0 phi equivalence classes
|
||||
Block Sequence Planned @begin @4 @end main main::@1 main::@2 main::@return bool_const_inline bool_const_inline::@3 bool_const_inline::@return bool_const_vars bool_const_vars::@1 bool_const_vars::@return bool_const_if bool_const_if::@3 bool_const_if::@return
|
||||
Block Sequence Planned @begin @4 @end main main::@1 main::@2 main::@return bool_const_inline bool_const_inline::@1 bool_const_inline::@return bool_const_vars bool_const_vars::@3 bool_const_vars::@return bool_const_if bool_const_if::@1 bool_const_if::@return
|
||||
Adding NOP phi() at start of @begin
|
||||
Adding NOP phi() at start of @4
|
||||
Adding NOP phi() at start of @end
|
||||
@ -577,29 +552,29 @@ main::@return: scope:[main] from main::@2
|
||||
to:@return
|
||||
bool_const_inline: scope:[bool_const_inline] from main::@2
|
||||
[11] phi() [ ] ( main:2::bool_const_inline:9 [ ] )
|
||||
to:bool_const_inline::@3
|
||||
bool_const_inline::@3: scope:[bool_const_inline] from bool_const_inline
|
||||
to:bool_const_inline::@1
|
||||
bool_const_inline::@1: scope:[bool_const_inline] from bool_const_inline
|
||||
[12] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 't' [ ] ( main:2::bool_const_inline:9 [ ] )
|
||||
to:bool_const_inline::@return
|
||||
bool_const_inline::@return: scope:[bool_const_inline] from bool_const_inline::@3
|
||||
bool_const_inline::@return: scope:[bool_const_inline] from bool_const_inline::@1
|
||||
[13] return [ ] ( main:2::bool_const_inline:9 [ ] )
|
||||
to:@return
|
||||
bool_const_vars: scope:[bool_const_vars] from main::@1
|
||||
[14] phi() [ ] ( main:2::bool_const_vars:7 [ ] )
|
||||
to:bool_const_vars::@1
|
||||
bool_const_vars::@1: scope:[bool_const_vars] from bool_const_vars
|
||||
to:bool_const_vars::@3
|
||||
bool_const_vars::@3: scope:[bool_const_vars] from bool_const_vars
|
||||
[15] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 'f' [ ] ( main:2::bool_const_vars:7 [ ] )
|
||||
to:bool_const_vars::@return
|
||||
bool_const_vars::@return: scope:[bool_const_vars] from bool_const_vars::@1
|
||||
bool_const_vars::@return: scope:[bool_const_vars] from bool_const_vars::@3
|
||||
[16] return [ ] ( main:2::bool_const_vars:7 [ ] )
|
||||
to:@return
|
||||
bool_const_if: scope:[bool_const_if] from main
|
||||
[17] phi() [ ] ( main:2::bool_const_if:5 [ ] )
|
||||
to:bool_const_if::@3
|
||||
bool_const_if::@3: scope:[bool_const_if] from bool_const_if
|
||||
to:bool_const_if::@1
|
||||
bool_const_if::@1: scope:[bool_const_if] from bool_const_if
|
||||
[18] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 't' [ ] ( main:2::bool_const_if:5 [ ] )
|
||||
to:bool_const_if::@return
|
||||
bool_const_if::@return: scope:[bool_const_if] from bool_const_if::@3
|
||||
bool_const_if::@return: scope:[bool_const_if] from bool_const_if::@1
|
||||
[19] return [ ] ( main:2::bool_const_if:5 [ ] )
|
||||
to:@return
|
||||
|
||||
@ -612,14 +587,14 @@ main::@1 dominated by @begin main @4 main::@1
|
||||
main::@2 dominated by @begin main @4 main::@1 main::@2
|
||||
main::@return dominated by main::@return @begin main @4 main::@1 main::@2
|
||||
bool_const_inline dominated by bool_const_inline @begin main @4 main::@1 main::@2
|
||||
bool_const_inline::@3 dominated by bool_const_inline @begin bool_const_inline::@3 main @4 main::@1 main::@2
|
||||
bool_const_inline::@return dominated by bool_const_inline @begin bool_const_inline::@3 main @4 main::@1 main::@2 bool_const_inline::@return
|
||||
bool_const_inline::@1 dominated by bool_const_inline @begin main bool_const_inline::@1 @4 main::@1 main::@2
|
||||
bool_const_inline::@return dominated by bool_const_inline @begin main bool_const_inline::@1 @4 main::@1 main::@2 bool_const_inline::@return
|
||||
bool_const_vars dominated by @begin main bool_const_vars @4 main::@1
|
||||
bool_const_vars::@1 dominated by @begin bool_const_vars::@1 main bool_const_vars @4 main::@1
|
||||
bool_const_vars::@return dominated by @begin bool_const_vars::@1 bool_const_vars::@return main bool_const_vars @4 main::@1
|
||||
bool_const_vars::@3 dominated by @begin main bool_const_vars @4 main::@1 bool_const_vars::@3
|
||||
bool_const_vars::@return dominated by @begin bool_const_vars::@return main bool_const_vars @4 main::@1 bool_const_vars::@3
|
||||
bool_const_if dominated by @begin main bool_const_if @4
|
||||
bool_const_if::@3 dominated by bool_const_if::@3 @begin main bool_const_if @4
|
||||
bool_const_if::@return dominated by bool_const_if::@3 @begin bool_const_if::@return main bool_const_if @4
|
||||
bool_const_if::@1 dominated by @begin main bool_const_if @4 bool_const_if::@1
|
||||
bool_const_if::@return dominated by @begin bool_const_if::@return main bool_const_if @4 bool_const_if::@1
|
||||
|
||||
NATURAL LOOPS
|
||||
|
||||
@ -702,9 +677,9 @@ main: {
|
||||
}
|
||||
//SEG22 bool_const_inline
|
||||
bool_const_inline: {
|
||||
jmp b3
|
||||
//SEG23 bool_const_inline::@3
|
||||
b3:
|
||||
jmp b1
|
||||
//SEG23 bool_const_inline::@1
|
||||
b1:
|
||||
//SEG24 [12] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 't' [ ] ( main:2::bool_const_inline:9 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #'t'
|
||||
sta SCREEN+2
|
||||
@ -716,9 +691,9 @@ bool_const_inline: {
|
||||
}
|
||||
//SEG27 bool_const_vars
|
||||
bool_const_vars: {
|
||||
jmp b1
|
||||
//SEG28 bool_const_vars::@1
|
||||
b1:
|
||||
jmp b3
|
||||
//SEG28 bool_const_vars::@3
|
||||
b3:
|
||||
//SEG29 [15] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 'f' [ ] ( main:2::bool_const_vars:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #'f'
|
||||
sta SCREEN+1
|
||||
@ -730,9 +705,9 @@ bool_const_vars: {
|
||||
}
|
||||
//SEG32 bool_const_if
|
||||
bool_const_if: {
|
||||
jmp b3
|
||||
//SEG33 bool_const_if::@3
|
||||
b3:
|
||||
jmp b1
|
||||
//SEG33 bool_const_if::@1
|
||||
b1:
|
||||
//SEG34 [18] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 't' [ ] ( main:2::bool_const_if:5 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #'t'
|
||||
sta SCREEN+0
|
||||
@ -816,9 +791,9 @@ main: {
|
||||
}
|
||||
//SEG22 bool_const_inline
|
||||
bool_const_inline: {
|
||||
jmp b3
|
||||
//SEG23 bool_const_inline::@3
|
||||
b3:
|
||||
jmp b1
|
||||
//SEG23 bool_const_inline::@1
|
||||
b1:
|
||||
//SEG24 [12] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 't' [ ] ( main:2::bool_const_inline:9 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #'t'
|
||||
sta SCREEN+2
|
||||
@ -830,9 +805,9 @@ bool_const_inline: {
|
||||
}
|
||||
//SEG27 bool_const_vars
|
||||
bool_const_vars: {
|
||||
jmp b1
|
||||
//SEG28 bool_const_vars::@1
|
||||
b1:
|
||||
jmp b3
|
||||
//SEG28 bool_const_vars::@3
|
||||
b3:
|
||||
//SEG29 [15] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 'f' [ ] ( main:2::bool_const_vars:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #'f'
|
||||
sta SCREEN+1
|
||||
@ -844,9 +819,9 @@ bool_const_vars: {
|
||||
}
|
||||
//SEG32 bool_const_if
|
||||
bool_const_if: {
|
||||
jmp b3
|
||||
//SEG33 bool_const_if::@3
|
||||
b3:
|
||||
jmp b1
|
||||
//SEG33 bool_const_if::@1
|
||||
b1:
|
||||
//SEG34 [18] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 't' [ ] ( main:2::bool_const_if:5 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #'t'
|
||||
sta SCREEN+0
|
||||
@ -863,12 +838,12 @@ Removing instruction jmp bend
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp b2
|
||||
Removing instruction jmp breturn
|
||||
Removing instruction jmp b3
|
||||
Removing instruction jmp breturn
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp breturn
|
||||
Removing instruction jmp b3
|
||||
Removing instruction jmp breturn
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp breturn
|
||||
Succesful ASM optimization Pass5NextJumpElimination
|
||||
Removing instruction bbegin:
|
||||
Removing instruction b4_from_bbegin:
|
||||
@ -885,12 +860,12 @@ Removing instruction bool_const_if_from_main:
|
||||
Removing instruction b1:
|
||||
Removing instruction b2:
|
||||
Removing instruction breturn:
|
||||
Removing instruction b3:
|
||||
Removing instruction breturn:
|
||||
Removing instruction b1:
|
||||
Removing instruction breturn:
|
||||
Removing instruction b3:
|
||||
Removing instruction breturn:
|
||||
Removing instruction b1:
|
||||
Removing instruction breturn:
|
||||
Succesful ASM optimization Pass5UnusedLabelElimination
|
||||
|
||||
FINAL SYMBOL TABLE
|
||||
@ -900,15 +875,15 @@ FINAL SYMBOL TABLE
|
||||
(byte*) SCREEN
|
||||
(const byte*) SCREEN#0 SCREEN = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
(void()) bool_const_if()
|
||||
(label) bool_const_if::@3
|
||||
(label) bool_const_if::@1
|
||||
(label) bool_const_if::@return
|
||||
(boolean) bool_const_if::b
|
||||
(void()) bool_const_inline()
|
||||
(label) bool_const_inline::@3
|
||||
(label) bool_const_inline::@1
|
||||
(label) bool_const_inline::@return
|
||||
(byte) bool_const_inline::a
|
||||
(void()) bool_const_vars()
|
||||
(label) bool_const_vars::@1
|
||||
(label) bool_const_vars::@3
|
||||
(label) bool_const_vars::@return
|
||||
(byte) bool_const_vars::a
|
||||
(boolean) bool_const_vars::b
|
||||
@ -959,7 +934,7 @@ main: {
|
||||
}
|
||||
//SEG22 bool_const_inline
|
||||
bool_const_inline: {
|
||||
//SEG23 bool_const_inline::@3
|
||||
//SEG23 bool_const_inline::@1
|
||||
//SEG24 [12] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) 't' [ ] ( main:2::bool_const_inline:9 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #'t'
|
||||
sta SCREEN+2
|
||||
@ -969,7 +944,7 @@ bool_const_inline: {
|
||||
}
|
||||
//SEG27 bool_const_vars
|
||||
bool_const_vars: {
|
||||
//SEG28 bool_const_vars::@1
|
||||
//SEG28 bool_const_vars::@3
|
||||
//SEG29 [15] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) 'f' [ ] ( main:2::bool_const_vars:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #'f'
|
||||
sta SCREEN+1
|
||||
@ -979,7 +954,7 @@ bool_const_vars: {
|
||||
}
|
||||
//SEG32 bool_const_if
|
||||
bool_const_if: {
|
||||
//SEG33 bool_const_if::@3
|
||||
//SEG33 bool_const_if::@1
|
||||
//SEG34 [18] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) 't' [ ] ( main:2::bool_const_if:5 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #'t'
|
||||
sta SCREEN+0
|
||||
|
@ -4,15 +4,15 @@
|
||||
(byte*) SCREEN
|
||||
(const byte*) SCREEN#0 SCREEN = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
(void()) bool_const_if()
|
||||
(label) bool_const_if::@3
|
||||
(label) bool_const_if::@1
|
||||
(label) bool_const_if::@return
|
||||
(boolean) bool_const_if::b
|
||||
(void()) bool_const_inline()
|
||||
(label) bool_const_inline::@3
|
||||
(label) bool_const_inline::@1
|
||||
(label) bool_const_inline::@return
|
||||
(byte) bool_const_inline::a
|
||||
(void()) bool_const_vars()
|
||||
(label) bool_const_vars::@1
|
||||
(label) bool_const_vars::@3
|
||||
(label) bool_const_vars::@return
|
||||
(byte) bool_const_vars::a
|
||||
(boolean) bool_const_vars::b
|
||||
|
41
src/test/java/dk/camelot64/kickc/test/ref/bool-vars.asm
Normal file
41
src/test/java/dk/camelot64/kickc/test/ref/bool-vars.asm
Normal file
@ -0,0 +1,41 @@
|
||||
.pc = $801 "Basic"
|
||||
:BasicUpstart(main)
|
||||
.pc = $80d "Program"
|
||||
.label screen = $400
|
||||
jsr main
|
||||
main: {
|
||||
.label o1 = 2
|
||||
ldx #0
|
||||
b1:
|
||||
cpx #$a
|
||||
lda #0
|
||||
rol
|
||||
eor #1
|
||||
sta o1
|
||||
txa
|
||||
and #1
|
||||
sec
|
||||
sbc #0
|
||||
beq !+
|
||||
lda #$ff
|
||||
!:
|
||||
eor #$ff
|
||||
cmp #0
|
||||
beq !+
|
||||
lda #$ff
|
||||
!:
|
||||
and o1
|
||||
cmp #0
|
||||
bne b2
|
||||
lda #' '
|
||||
sta screen,x
|
||||
b3:
|
||||
inx
|
||||
cpx #$15
|
||||
bne b1
|
||||
rts
|
||||
b2:
|
||||
lda #'*'
|
||||
sta screen,x
|
||||
jmp b3
|
||||
}
|
33
src/test/java/dk/camelot64/kickc/test/ref/bool-vars.cfg
Normal file
33
src/test/java/dk/camelot64/kickc/test/ref/bool-vars.cfg
Normal file
@ -0,0 +1,33 @@
|
||||
@begin: scope:[] from
|
||||
[0] phi() [ ] ( )
|
||||
to:@1
|
||||
@1: scope:[] from @begin
|
||||
[1] phi() [ ] ( )
|
||||
[2] call main param-assignment [ ] ( )
|
||||
to:@end
|
||||
@end: scope:[] from @1
|
||||
[3] phi() [ ] ( )
|
||||
main: scope:[main] from @1
|
||||
[4] phi() [ ] ( main:2 [ ] )
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main main::@3
|
||||
[5] (byte) main::i#2 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) main::i#1 ) [ main::i#2 ] ( main:2 [ main::i#2 ] )
|
||||
[6] (boolean) main::o1#0 ← (byte) main::i#2 < (byte/signed byte/word/signed word/dword/signed dword) 10 [ main::i#2 main::o1#0 ] ( main:2 [ main::i#2 main::o1#0 ] )
|
||||
[7] (byte~) main::$1 ← (byte) main::i#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 main::o1#0 main::$1 ] ( main:2 [ main::i#2 main::o1#0 main::$1 ] )
|
||||
[8] (boolean) main::o2#0 ← (byte~) main::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 [ main::i#2 main::o1#0 main::o2#0 ] ( main:2 [ main::i#2 main::o1#0 main::o2#0 ] )
|
||||
[9] (boolean~) main::$3 ← (boolean) main::o1#0 && (boolean) main::o2#0 [ main::i#2 main::$3 ] ( main:2 [ main::i#2 main::$3 ] )
|
||||
[10] if((boolean~) main::$3) goto main::@2 [ main::i#2 ] ( main:2 [ main::i#2 ] )
|
||||
to:main::@4
|
||||
main::@4: scope:[main] from main::@1
|
||||
[11] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) ' ' [ main::i#2 ] ( main:2 [ main::i#2 ] )
|
||||
to:main::@3
|
||||
main::@3: scope:[main] from main::@2 main::@4
|
||||
[12] (byte) main::i#1 ← ++ (byte) main::i#2 [ main::i#1 ] ( main:2 [ main::i#1 ] )
|
||||
[13] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 21) goto main::@1 [ main::i#1 ] ( main:2 [ main::i#1 ] )
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@3
|
||||
[14] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
||||
main::@2: scope:[main] from main::@1
|
||||
[15] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) '*' [ main::i#2 ] ( main:2 [ main::i#2 ] )
|
||||
to:main::@3
|
670
src/test/java/dk/camelot64/kickc/test/ref/bool-vars.log
Normal file
670
src/test/java/dk/camelot64/kickc/test/ref/bool-vars.log
Normal file
@ -0,0 +1,670 @@
|
||||
PARSING src/test/java/dk/camelot64/kickc/test/kc/bool-vars.kc
|
||||
// A Minimal test of boolean variables.
|
||||
// Boolean variables are bytes under the hood
|
||||
// 0: false, !=0 : true
|
||||
|
||||
const byte* screen = $400;
|
||||
|
||||
void main() {
|
||||
for( byte i : 0..20) {
|
||||
boolean o1 = i<10;
|
||||
boolean o2 = (i&1)==0;
|
||||
if( o1 && o2 ) {
|
||||
screen[i] = '*';
|
||||
} else {
|
||||
screen[i] = ' ';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
STATEMENTS
|
||||
(byte*) screen ← (word/signed word/dword/signed dword) 1024
|
||||
proc (void()) main()
|
||||
(byte) main::i ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
main::@1:
|
||||
(boolean~) main::$0 ← (byte) main::i < (byte/signed byte/word/signed word/dword/signed dword) 10
|
||||
(boolean) main::o1 ← (boolean~) main::$0
|
||||
(byte~) main::$1 ← (byte) main::i & (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(boolean~) main::$2 ← (byte~) main::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean) main::o2 ← (boolean~) main::$2
|
||||
(boolean~) main::$3 ← (boolean) main::o1 && (boolean) main::o2
|
||||
if((boolean~) main::$3) goto main::@2
|
||||
*((byte*) screen + (byte) main::i) ← (byte) ' '
|
||||
goto main::@3
|
||||
main::@2:
|
||||
*((byte*) screen + (byte) main::i) ← (byte) '*'
|
||||
main::@3:
|
||||
(byte) main::i ← ++ (byte) main::i
|
||||
(boolean~) main::$4 ← (byte) main::i != (byte/signed byte/word/signed word/dword/signed dword) 21
|
||||
if((boolean~) main::$4) goto main::@1
|
||||
main::@return:
|
||||
return
|
||||
endproc // main()
|
||||
call main
|
||||
|
||||
SYMBOLS
|
||||
(void()) main()
|
||||
(boolean~) main::$0
|
||||
(byte~) main::$1
|
||||
(boolean~) main::$2
|
||||
(boolean~) main::$3
|
||||
(boolean~) main::$4
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
(label) main::@3
|
||||
(label) main::@return
|
||||
(byte) main::i
|
||||
(boolean) main::o1
|
||||
(boolean) main::o2
|
||||
(byte*) screen
|
||||
|
||||
Promoting word/signed word/dword/signed dword to byte* in screen ← ((byte*)) 1024
|
||||
INITIAL CONTROL FLOW GRAPH
|
||||
@begin: scope:[] from
|
||||
(byte*) screen ← ((byte*)) (word/signed word/dword/signed dword) 1024
|
||||
to:@1
|
||||
main: scope:[main] from
|
||||
(byte) main::i ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main main::@3
|
||||
(boolean~) main::$0 ← (byte) main::i < (byte/signed byte/word/signed word/dword/signed dword) 10
|
||||
(boolean) main::o1 ← (boolean~) main::$0
|
||||
(byte~) main::$1 ← (byte) main::i & (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(boolean~) main::$2 ← (byte~) main::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean) main::o2 ← (boolean~) main::$2
|
||||
(boolean~) main::$3 ← (boolean) main::o1 && (boolean) main::o2
|
||||
if((boolean~) main::$3) goto main::@2
|
||||
to:main::@4
|
||||
main::@2: scope:[main] from main::@1 main::@5
|
||||
*((byte*) screen + (byte) main::i) ← (byte) '*'
|
||||
to:main::@3
|
||||
main::@4: scope:[main] from main::@1
|
||||
*((byte*) screen + (byte) main::i) ← (byte) ' '
|
||||
to:main::@3
|
||||
main::@3: scope:[main] from main::@2 main::@4
|
||||
(byte) main::i ← ++ (byte) main::i
|
||||
(boolean~) main::$4 ← (byte) main::i != (byte/signed byte/word/signed word/dword/signed dword) 21
|
||||
if((boolean~) main::$4) goto main::@1
|
||||
to:main::@6
|
||||
main::@5: scope:[main] from
|
||||
to:main::@2
|
||||
main::@6: scope:[main] from main::@3
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@6
|
||||
return
|
||||
to:@return
|
||||
@1: scope:[] from @begin
|
||||
call main
|
||||
to:@end
|
||||
@end: scope:[] from @1
|
||||
|
||||
Removing empty block main::@5
|
||||
Removing empty block main::@6
|
||||
PROCEDURE MODIFY VARIABLE ANALYSIS
|
||||
|
||||
Completing Phi functions...
|
||||
|
||||
CONTROL FLOW GRAPH SSA WITH ASSIGNMENT CALL & RETURN
|
||||
@begin: scope:[] from
|
||||
(byte*) screen#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024
|
||||
to:@1
|
||||
main: scope:[main] from @1
|
||||
(byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main main::@3
|
||||
(byte) main::i#2 ← phi( main/(byte) main::i#0 main::@3/(byte) main::i#1 )
|
||||
(boolean~) main::$0 ← (byte) main::i#2 < (byte/signed byte/word/signed word/dword/signed dword) 10
|
||||
(boolean) main::o1#0 ← (boolean~) main::$0
|
||||
(byte~) main::$1 ← (byte) main::i#2 & (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(boolean~) main::$2 ← (byte~) main::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean) main::o2#0 ← (boolean~) main::$2
|
||||
(boolean~) main::$3 ← (boolean) main::o1#0 && (boolean) main::o2#0
|
||||
if((boolean~) main::$3) goto main::@2
|
||||
to:main::@4
|
||||
main::@2: scope:[main] from main::@1
|
||||
(byte) main::i#3 ← phi( main::@1/(byte) main::i#2 )
|
||||
*((byte*) screen#0 + (byte) main::i#3) ← (byte) '*'
|
||||
to:main::@3
|
||||
main::@4: scope:[main] from main::@1
|
||||
(byte) main::i#4 ← phi( main::@1/(byte) main::i#2 )
|
||||
*((byte*) screen#0 + (byte) main::i#4) ← (byte) ' '
|
||||
to:main::@3
|
||||
main::@3: scope:[main] from main::@2 main::@4
|
||||
(byte) main::i#5 ← phi( main::@2/(byte) main::i#3 main::@4/(byte) main::i#4 )
|
||||
(byte) main::i#1 ← ++ (byte) main::i#5
|
||||
(boolean~) main::$4 ← (byte) main::i#1 != (byte/signed byte/word/signed word/dword/signed dword) 21
|
||||
if((boolean~) main::$4) goto main::@1
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@3
|
||||
return
|
||||
to:@return
|
||||
@1: scope:[] from @begin
|
||||
call main param-assignment
|
||||
to:@2
|
||||
@2: scope:[] from @1
|
||||
to:@end
|
||||
@end: scope:[] from @2
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
(label) @1
|
||||
(label) @2
|
||||
(label) @begin
|
||||
(label) @end
|
||||
(void()) main()
|
||||
(boolean~) main::$0
|
||||
(byte~) main::$1
|
||||
(boolean~) main::$2
|
||||
(boolean~) main::$3
|
||||
(boolean~) main::$4
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
(label) main::@3
|
||||
(label) main::@4
|
||||
(label) main::@return
|
||||
(byte) main::i
|
||||
(byte) main::i#0
|
||||
(byte) main::i#1
|
||||
(byte) main::i#2
|
||||
(byte) main::i#3
|
||||
(byte) main::i#4
|
||||
(byte) main::i#5
|
||||
(boolean) main::o1
|
||||
(boolean) main::o1#0
|
||||
(boolean) main::o2
|
||||
(boolean) main::o2#0
|
||||
(byte*) screen
|
||||
(byte*) screen#0
|
||||
|
||||
OPTIMIZING CONTROL FLOW GRAPH
|
||||
Culled Empty Block (label) @2
|
||||
Succesful SSA optimization Pass2CullEmptyBlocks
|
||||
Alias (boolean) main::o1#0 = (boolean~) main::$0
|
||||
Alias (boolean) main::o2#0 = (boolean~) main::$2
|
||||
Alias (byte) main::i#2 = (byte) main::i#3 (byte) main::i#4
|
||||
Succesful SSA optimization Pass2AliasElimination
|
||||
Alias (byte) main::i#2 = (byte) main::i#5
|
||||
Succesful SSA optimization Pass2AliasElimination
|
||||
Simple Condition (boolean~) main::$4 if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 21) goto main::@1
|
||||
Succesful SSA optimization Pass2ConditionalJumpSimplification
|
||||
Constant (const byte*) screen#0 = ((byte*))1024
|
||||
Constant (const byte) main::i#0 = 0
|
||||
Succesful SSA optimization Pass2ConstantIdentification
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte) main::i#2
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte) main::i#2
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte) main::i#2
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte) main::i#2
|
||||
OPTIMIZING CONTROL FLOW GRAPH
|
||||
Inlining constant with var siblings (const byte) main::i#0
|
||||
Inlining constant with var siblings (const byte) main::i#0
|
||||
Constant inlined main::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Succesful SSA optimization Pass2ConstantInlining
|
||||
Block Sequence Planned @begin @1 @end main main::@1 main::@4 main::@3 main::@return main::@2
|
||||
Added new block during phi lifting main::@7(between main::@3 and main::@1)
|
||||
Block Sequence Planned @begin @1 @end main main::@1 main::@4 main::@3 main::@return main::@7 main::@2
|
||||
Adding NOP phi() at start of @begin
|
||||
Adding NOP phi() at start of @1
|
||||
Adding NOP phi() at start of @end
|
||||
Adding NOP phi() at start of main
|
||||
CALL GRAPH
|
||||
Calls in [] to main:2
|
||||
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Created 1 initial phi equivalence classes
|
||||
Coalesced [15] main::i#6 ← main::i#1
|
||||
Coalesced down to 1 phi equivalence classes
|
||||
Culled Empty Block (label) main::@7
|
||||
Block Sequence Planned @begin @1 @end main main::@1 main::@4 main::@3 main::@return main::@2
|
||||
Adding NOP phi() at start of @begin
|
||||
Adding NOP phi() at start of @1
|
||||
Adding NOP phi() at start of @end
|
||||
Adding NOP phi() at start of main
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
|
||||
FINAL CONTROL FLOW GRAPH
|
||||
@begin: scope:[] from
|
||||
[0] phi() [ ] ( )
|
||||
to:@1
|
||||
@1: scope:[] from @begin
|
||||
[1] phi() [ ] ( )
|
||||
[2] call main param-assignment [ ] ( )
|
||||
to:@end
|
||||
@end: scope:[] from @1
|
||||
[3] phi() [ ] ( )
|
||||
main: scope:[main] from @1
|
||||
[4] phi() [ ] ( main:2 [ ] )
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main main::@3
|
||||
[5] (byte) main::i#2 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) main::i#1 ) [ main::i#2 ] ( main:2 [ main::i#2 ] )
|
||||
[6] (boolean) main::o1#0 ← (byte) main::i#2 < (byte/signed byte/word/signed word/dword/signed dword) 10 [ main::i#2 main::o1#0 ] ( main:2 [ main::i#2 main::o1#0 ] )
|
||||
[7] (byte~) main::$1 ← (byte) main::i#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 main::o1#0 main::$1 ] ( main:2 [ main::i#2 main::o1#0 main::$1 ] )
|
||||
[8] (boolean) main::o2#0 ← (byte~) main::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 [ main::i#2 main::o1#0 main::o2#0 ] ( main:2 [ main::i#2 main::o1#0 main::o2#0 ] )
|
||||
[9] (boolean~) main::$3 ← (boolean) main::o1#0 && (boolean) main::o2#0 [ main::i#2 main::$3 ] ( main:2 [ main::i#2 main::$3 ] )
|
||||
[10] if((boolean~) main::$3) goto main::@2 [ main::i#2 ] ( main:2 [ main::i#2 ] )
|
||||
to:main::@4
|
||||
main::@4: scope:[main] from main::@1
|
||||
[11] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) ' ' [ main::i#2 ] ( main:2 [ main::i#2 ] )
|
||||
to:main::@3
|
||||
main::@3: scope:[main] from main::@2 main::@4
|
||||
[12] (byte) main::i#1 ← ++ (byte) main::i#2 [ main::i#1 ] ( main:2 [ main::i#1 ] )
|
||||
[13] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 21) goto main::@1 [ main::i#1 ] ( main:2 [ main::i#1 ] )
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@3
|
||||
[14] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
||||
main::@2: scope:[main] from main::@1
|
||||
[15] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) '*' [ main::i#2 ] ( main:2 [ main::i#2 ] )
|
||||
to:main::@3
|
||||
|
||||
DOMINATORS
|
||||
@begin dominated by @begin
|
||||
@1 dominated by @1 @begin
|
||||
@end dominated by @1 @begin @end
|
||||
main dominated by @1 @begin main
|
||||
main::@1 dominated by @1 @begin main::@1 main
|
||||
main::@4 dominated by @1 @begin main::@1 main main::@4
|
||||
main::@3 dominated by @1 @begin main::@1 main main::@3
|
||||
main::@return dominated by main::@return @1 @begin main::@1 main main::@3
|
||||
main::@2 dominated by @1 @begin main::@1 main::@2 main
|
||||
|
||||
NATURAL LOOPS
|
||||
Found back edge: Loop head: main::@1 tails: main::@3 blocks: null
|
||||
Populated: Loop head: main::@1 tails: main::@3 blocks: main::@3 main::@2 main::@4 main::@1
|
||||
Loop head: main::@1 tails: main::@3 blocks: main::@3 main::@2 main::@4 main::@1
|
||||
|
||||
NATURAL LOOPS WITH DEPTH
|
||||
Found 0 loops in scope []
|
||||
Found 1 loops in scope [main]
|
||||
Loop head: main::@1 tails: main::@3 blocks: main::@3 main::@2 main::@4 main::@1
|
||||
Loop head: main::@1 tails: main::@3 blocks: main::@3 main::@2 main::@4 main::@1 depth: 1
|
||||
|
||||
|
||||
VARIABLE REGISTER WEIGHTS
|
||||
(void()) main()
|
||||
(byte~) main::$1 22.0
|
||||
(boolean~) main::$3 22.0
|
||||
(byte) main::i
|
||||
(byte) main::i#1 16.5
|
||||
(byte) main::i#2 8.25
|
||||
(boolean) main::o1
|
||||
(boolean) main::o1#0 7.333333333333333
|
||||
(boolean) main::o2
|
||||
(boolean) main::o2#0 22.0
|
||||
(byte*) screen
|
||||
|
||||
Initial phi equivalence classes
|
||||
[ main::i#2 main::i#1 ]
|
||||
Added variable main::o1#0 to zero page equivalence class [ main::o1#0 ]
|
||||
Added variable main::$1 to zero page equivalence class [ main::$1 ]
|
||||
Added variable main::o2#0 to zero page equivalence class [ main::o2#0 ]
|
||||
Added variable main::$3 to zero page equivalence class [ main::$3 ]
|
||||
Complete equivalence classes
|
||||
[ main::i#2 main::i#1 ]
|
||||
[ main::o1#0 ]
|
||||
[ main::$1 ]
|
||||
[ main::o2#0 ]
|
||||
[ main::$3 ]
|
||||
Allocated zp ZP_BYTE:2 [ main::i#2 main::i#1 ]
|
||||
Allocated zp ZP_BOOL:3 [ main::o1#0 ]
|
||||
Allocated zp ZP_BYTE:4 [ main::$1 ]
|
||||
Allocated zp ZP_BOOL:5 [ main::o2#0 ]
|
||||
Allocated zp ZP_BOOL:6 [ main::$3 ]
|
||||
|
||||
INITIAL ASM
|
||||
//SEG0 Basic Upstart
|
||||
.pc = $801 "Basic"
|
||||
:BasicUpstart(main)
|
||||
.pc = $80d "Program"
|
||||
//SEG1 Global Constants & labels
|
||||
.label screen = $400
|
||||
//SEG2 @begin
|
||||
bbegin:
|
||||
//SEG3 [1] phi from @begin to @1 [phi:@begin->@1]
|
||||
b1_from_bbegin:
|
||||
jmp b1
|
||||
//SEG4 @1
|
||||
b1:
|
||||
//SEG5 [2] call main param-assignment [ ] ( )
|
||||
//SEG6 [4] phi from @1 to main [phi:@1->main]
|
||||
main_from_b1:
|
||||
jsr main
|
||||
//SEG7 [3] phi from @1 to @end [phi:@1->@end]
|
||||
bend_from_b1:
|
||||
jmp bend
|
||||
//SEG8 @end
|
||||
bend:
|
||||
//SEG9 main
|
||||
main: {
|
||||
.label _1 = 4
|
||||
.label _3 = 6
|
||||
.label o1 = 3
|
||||
.label o2 = 5
|
||||
.label i = 2
|
||||
//SEG10 [5] phi from main to main::@1 [phi:main->main::@1]
|
||||
b1_from_main:
|
||||
//SEG11 [5] phi (byte) main::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main->main::@1#0] -- vbuz1=vbuc1
|
||||
lda #0
|
||||
sta i
|
||||
jmp b1
|
||||
//SEG12 [5] phi from main::@3 to main::@1 [phi:main::@3->main::@1]
|
||||
b1_from_b3:
|
||||
//SEG13 [5] phi (byte) main::i#2 = (byte) main::i#1 [phi:main::@3->main::@1#0] -- register_copy
|
||||
jmp b1
|
||||
//SEG14 main::@1
|
||||
b1:
|
||||
//SEG15 [6] (boolean) main::o1#0 ← (byte) main::i#2 < (byte/signed byte/word/signed word/dword/signed dword) 10 [ main::i#2 main::o1#0 ] ( main:2 [ main::i#2 main::o1#0 ] ) -- vboz1=vbuz2_lt_vbuc1
|
||||
lda i
|
||||
cmp #$a
|
||||
lda #0
|
||||
rol
|
||||
eor #1
|
||||
sta o1
|
||||
//SEG16 [7] (byte~) main::$1 ← (byte) main::i#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 main::o1#0 main::$1 ] ( main:2 [ main::i#2 main::o1#0 main::$1 ] ) -- vbuz1=vbuz2_band_vbuc1
|
||||
lda #1
|
||||
and i
|
||||
sta _1
|
||||
//SEG17 [8] (boolean) main::o2#0 ← (byte~) main::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 [ main::i#2 main::o1#0 main::o2#0 ] ( main:2 [ main::i#2 main::o1#0 main::o2#0 ] ) -- vboz1=vbuz2_eq_vbuc1
|
||||
lda _1
|
||||
sec
|
||||
sbc #0
|
||||
beq !+
|
||||
lda #$ff
|
||||
!:
|
||||
eor #$ff
|
||||
sta o2
|
||||
//SEG18 [9] (boolean~) main::$3 ← (boolean) main::o1#0 && (boolean) main::o2#0 [ main::i#2 main::$3 ] ( main:2 [ main::i#2 main::$3 ] ) -- vboz1=vboz2_and_vboz3
|
||||
lda o1
|
||||
cmp #0
|
||||
beq !+
|
||||
lda #$ff
|
||||
!:
|
||||
and o2
|
||||
sta _3
|
||||
//SEG19 [10] if((boolean~) main::$3) goto main::@2 [ main::i#2 ] ( main:2 [ main::i#2 ] ) -- vboz1_then_la1
|
||||
lda _3
|
||||
cmp #0
|
||||
bne b2
|
||||
jmp b4
|
||||
//SEG20 main::@4
|
||||
b4:
|
||||
//SEG21 [11] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) ' ' [ main::i#2 ] ( main:2 [ main::i#2 ] ) -- pbuc1_derefidx_vbuz1=vbuc2
|
||||
ldy i
|
||||
lda #' '
|
||||
sta screen,y
|
||||
jmp b3
|
||||
//SEG22 main::@3
|
||||
b3:
|
||||
//SEG23 [12] (byte) main::i#1 ← ++ (byte) main::i#2 [ main::i#1 ] ( main:2 [ main::i#1 ] ) -- vbuz1=_inc_vbuz1
|
||||
inc i
|
||||
//SEG24 [13] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 21) goto main::@1 [ main::i#1 ] ( main:2 [ main::i#1 ] ) -- vbuz1_neq_vbuc1_then_la1
|
||||
lda i
|
||||
cmp #$15
|
||||
bne b1_from_b3
|
||||
jmp breturn
|
||||
//SEG25 main::@return
|
||||
breturn:
|
||||
//SEG26 [14] return [ ] ( main:2 [ ] )
|
||||
rts
|
||||
//SEG27 main::@2
|
||||
b2:
|
||||
//SEG28 [15] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) '*' [ main::i#2 ] ( main:2 [ main::i#2 ] ) -- pbuc1_derefidx_vbuz1=vbuc2
|
||||
ldy i
|
||||
lda #'*'
|
||||
sta screen,y
|
||||
jmp b3
|
||||
}
|
||||
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Statement [6] (boolean) main::o1#0 ← (byte) main::i#2 < (byte/signed byte/word/signed word/dword/signed dword) 10 [ main::i#2 main::o1#0 ] ( main:2 [ main::i#2 main::o1#0 ] ) always clobbers reg byte a
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ main::i#2 main::i#1 ]
|
||||
Statement [7] (byte~) main::$1 ← (byte) main::i#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 main::o1#0 main::$1 ] ( main:2 [ main::i#2 main::o1#0 main::$1 ] ) always clobbers reg byte a
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BOOL:3 [ main::o1#0 ]
|
||||
Statement [8] (boolean) main::o2#0 ← (byte~) main::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 [ main::i#2 main::o1#0 main::o2#0 ] ( main:2 [ main::i#2 main::o1#0 main::o2#0 ] ) always clobbers reg byte a
|
||||
Statement [9] (boolean~) main::$3 ← (boolean) main::o1#0 && (boolean) main::o2#0 [ main::i#2 main::$3 ] ( main:2 [ main::i#2 main::$3 ] ) always clobbers reg byte a
|
||||
Statement [11] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) ' ' [ main::i#2 ] ( main:2 [ main::i#2 ] ) always clobbers reg byte a
|
||||
Statement [15] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) '*' [ main::i#2 ] ( main:2 [ main::i#2 ] ) always clobbers reg byte a
|
||||
Statement [6] (boolean) main::o1#0 ← (byte) main::i#2 < (byte/signed byte/word/signed word/dword/signed dword) 10 [ main::i#2 main::o1#0 ] ( main:2 [ main::i#2 main::o1#0 ] ) always clobbers reg byte a
|
||||
Statement [7] (byte~) main::$1 ← (byte) main::i#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 main::o1#0 main::$1 ] ( main:2 [ main::i#2 main::o1#0 main::$1 ] ) always clobbers reg byte a
|
||||
Statement [8] (boolean) main::o2#0 ← (byte~) main::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 [ main::i#2 main::o1#0 main::o2#0 ] ( main:2 [ main::i#2 main::o1#0 main::o2#0 ] ) always clobbers reg byte a
|
||||
Statement [9] (boolean~) main::$3 ← (boolean) main::o1#0 && (boolean) main::o2#0 [ main::i#2 main::$3 ] ( main:2 [ main::i#2 main::$3 ] ) always clobbers reg byte a
|
||||
Statement [11] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) ' ' [ main::i#2 ] ( main:2 [ main::i#2 ] ) always clobbers reg byte a
|
||||
Statement [15] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) '*' [ main::i#2 ] ( main:2 [ main::i#2 ] ) always clobbers reg byte a
|
||||
Potential registers zp ZP_BYTE:2 [ main::i#2 main::i#1 ] : zp ZP_BYTE:2 , reg byte x , reg byte y ,
|
||||
Potential registers zp ZP_BOOL:3 [ main::o1#0 ] : zp ZP_BOOL:3 ,
|
||||
Potential registers zp ZP_BYTE:4 [ main::$1 ] : zp ZP_BYTE:4 , reg byte a , reg byte x , reg byte y ,
|
||||
Potential registers zp ZP_BOOL:5 [ main::o2#0 ] : zp ZP_BOOL:5 , reg byte a ,
|
||||
Potential registers zp ZP_BOOL:6 [ main::$3 ] : zp ZP_BOOL:6 , reg byte a ,
|
||||
|
||||
REGISTER UPLIFT SCOPES
|
||||
Uplift Scope [main] 24.75: zp ZP_BYTE:2 [ main::i#2 main::i#1 ] 22: zp ZP_BYTE:4 [ main::$1 ] 22: zp ZP_BOOL:5 [ main::o2#0 ] 22: zp ZP_BOOL:6 [ main::$3 ] 7.33: zp ZP_BOOL:3 [ main::o1#0 ]
|
||||
Uplift Scope []
|
||||
|
||||
Uplifting [main] best 818 combination reg byte x [ main::i#2 main::i#1 ] reg byte a [ main::$1 ] reg byte a [ main::o2#0 ] reg byte a [ main::$3 ] zp ZP_BOOL:3 [ main::o1#0 ]
|
||||
Uplifting [] best 818 combination
|
||||
Allocated (was zp ZP_BOOL:3) zp ZP_BOOL:2 [ main::o1#0 ]
|
||||
|
||||
ASSEMBLER BEFORE OPTIMIZATION
|
||||
//SEG0 Basic Upstart
|
||||
.pc = $801 "Basic"
|
||||
:BasicUpstart(main)
|
||||
.pc = $80d "Program"
|
||||
//SEG1 Global Constants & labels
|
||||
.label screen = $400
|
||||
//SEG2 @begin
|
||||
bbegin:
|
||||
//SEG3 [1] phi from @begin to @1 [phi:@begin->@1]
|
||||
b1_from_bbegin:
|
||||
jmp b1
|
||||
//SEG4 @1
|
||||
b1:
|
||||
//SEG5 [2] call main param-assignment [ ] ( )
|
||||
//SEG6 [4] phi from @1 to main [phi:@1->main]
|
||||
main_from_b1:
|
||||
jsr main
|
||||
//SEG7 [3] phi from @1 to @end [phi:@1->@end]
|
||||
bend_from_b1:
|
||||
jmp bend
|
||||
//SEG8 @end
|
||||
bend:
|
||||
//SEG9 main
|
||||
main: {
|
||||
.label o1 = 2
|
||||
//SEG10 [5] phi from main to main::@1 [phi:main->main::@1]
|
||||
b1_from_main:
|
||||
//SEG11 [5] phi (byte) main::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main->main::@1#0] -- vbuxx=vbuc1
|
||||
ldx #0
|
||||
jmp b1
|
||||
//SEG12 [5] phi from main::@3 to main::@1 [phi:main::@3->main::@1]
|
||||
b1_from_b3:
|
||||
//SEG13 [5] phi (byte) main::i#2 = (byte) main::i#1 [phi:main::@3->main::@1#0] -- register_copy
|
||||
jmp b1
|
||||
//SEG14 main::@1
|
||||
b1:
|
||||
//SEG15 [6] (boolean) main::o1#0 ← (byte) main::i#2 < (byte/signed byte/word/signed word/dword/signed dword) 10 [ main::i#2 main::o1#0 ] ( main:2 [ main::i#2 main::o1#0 ] ) -- vboz1=vbuxx_lt_vbuc1
|
||||
cpx #$a
|
||||
lda #0
|
||||
rol
|
||||
eor #1
|
||||
sta o1
|
||||
//SEG16 [7] (byte~) main::$1 ← (byte) main::i#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 main::o1#0 main::$1 ] ( main:2 [ main::i#2 main::o1#0 main::$1 ] ) -- vbuaa=vbuxx_band_vbuc1
|
||||
txa
|
||||
and #1
|
||||
//SEG17 [8] (boolean) main::o2#0 ← (byte~) main::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 [ main::i#2 main::o1#0 main::o2#0 ] ( main:2 [ main::i#2 main::o1#0 main::o2#0 ] ) -- vboaa=vbuaa_eq_vbuc1
|
||||
sec
|
||||
sbc #0
|
||||
beq !+
|
||||
lda #$ff
|
||||
!:
|
||||
eor #$ff
|
||||
//SEG18 [9] (boolean~) main::$3 ← (boolean) main::o1#0 && (boolean) main::o2#0 [ main::i#2 main::$3 ] ( main:2 [ main::i#2 main::$3 ] ) -- vboaa=vboz1_and_vboaa
|
||||
cmp #0
|
||||
beq !+
|
||||
lda #$ff
|
||||
!:
|
||||
and o1
|
||||
//SEG19 [10] if((boolean~) main::$3) goto main::@2 [ main::i#2 ] ( main:2 [ main::i#2 ] ) -- vboaa_then_la1
|
||||
cmp #0
|
||||
bne b2
|
||||
jmp b4
|
||||
//SEG20 main::@4
|
||||
b4:
|
||||
//SEG21 [11] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) ' ' [ main::i#2 ] ( main:2 [ main::i#2 ] ) -- pbuc1_derefidx_vbuxx=vbuc2
|
||||
lda #' '
|
||||
sta screen,x
|
||||
jmp b3
|
||||
//SEG22 main::@3
|
||||
b3:
|
||||
//SEG23 [12] (byte) main::i#1 ← ++ (byte) main::i#2 [ main::i#1 ] ( main:2 [ main::i#1 ] ) -- vbuxx=_inc_vbuxx
|
||||
inx
|
||||
//SEG24 [13] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 21) goto main::@1 [ main::i#1 ] ( main:2 [ main::i#1 ] ) -- vbuxx_neq_vbuc1_then_la1
|
||||
cpx #$15
|
||||
bne b1_from_b3
|
||||
jmp breturn
|
||||
//SEG25 main::@return
|
||||
breturn:
|
||||
//SEG26 [14] return [ ] ( main:2 [ ] )
|
||||
rts
|
||||
//SEG27 main::@2
|
||||
b2:
|
||||
//SEG28 [15] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) '*' [ main::i#2 ] ( main:2 [ main::i#2 ] ) -- pbuc1_derefidx_vbuxx=vbuc2
|
||||
lda #'*'
|
||||
sta screen,x
|
||||
jmp b3
|
||||
}
|
||||
|
||||
ASSEMBLER OPTIMIZATIONS
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp bend
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp b4
|
||||
Removing instruction jmp b3
|
||||
Removing instruction jmp breturn
|
||||
Succesful ASM optimization Pass5NextJumpElimination
|
||||
Replacing label b1_from_b3 with b1
|
||||
Removing instruction bbegin:
|
||||
Removing instruction b1_from_bbegin:
|
||||
Removing instruction main_from_b1:
|
||||
Removing instruction bend_from_b1:
|
||||
Removing instruction b1_from_b3:
|
||||
Succesful ASM optimization Pass5RedundantLabelElimination
|
||||
Removing instruction b1:
|
||||
Removing instruction bend:
|
||||
Removing instruction b1_from_main:
|
||||
Removing instruction b4:
|
||||
Removing instruction breturn:
|
||||
Succesful ASM optimization Pass5UnusedLabelElimination
|
||||
Removing instruction jmp b1
|
||||
Succesful ASM optimization Pass5NextJumpElimination
|
||||
|
||||
FINAL SYMBOL TABLE
|
||||
(label) @1
|
||||
(label) @begin
|
||||
(label) @end
|
||||
(void()) main()
|
||||
(byte~) main::$1 reg byte a 22.0
|
||||
(boolean~) main::$3 reg byte a 22.0
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
(label) main::@3
|
||||
(label) main::@4
|
||||
(label) main::@return
|
||||
(byte) main::i
|
||||
(byte) main::i#1 reg byte x 16.5
|
||||
(byte) main::i#2 reg byte x 8.25
|
||||
(boolean) main::o1
|
||||
(boolean) main::o1#0 o1 zp ZP_BOOL:2 7.333333333333333
|
||||
(boolean) main::o2
|
||||
(boolean) main::o2#0 reg byte a 22.0
|
||||
(byte*) screen
|
||||
(const byte*) screen#0 screen = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
|
||||
reg byte x [ main::i#2 main::i#1 ]
|
||||
zp ZP_BOOL:2 [ main::o1#0 ]
|
||||
reg byte a [ main::$1 ]
|
||||
reg byte a [ main::o2#0 ]
|
||||
reg byte a [ main::$3 ]
|
||||
|
||||
|
||||
FINAL ASSEMBLER
|
||||
Score: 662
|
||||
|
||||
//SEG0 Basic Upstart
|
||||
.pc = $801 "Basic"
|
||||
:BasicUpstart(main)
|
||||
.pc = $80d "Program"
|
||||
//SEG1 Global Constants & labels
|
||||
.label screen = $400
|
||||
//SEG2 @begin
|
||||
//SEG3 [1] phi from @begin to @1 [phi:@begin->@1]
|
||||
//SEG4 @1
|
||||
//SEG5 [2] call main param-assignment [ ] ( )
|
||||
//SEG6 [4] phi from @1 to main [phi:@1->main]
|
||||
jsr main
|
||||
//SEG7 [3] phi from @1 to @end [phi:@1->@end]
|
||||
//SEG8 @end
|
||||
//SEG9 main
|
||||
main: {
|
||||
.label o1 = 2
|
||||
//SEG10 [5] phi from main to main::@1 [phi:main->main::@1]
|
||||
//SEG11 [5] phi (byte) main::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main->main::@1#0] -- vbuxx=vbuc1
|
||||
ldx #0
|
||||
//SEG12 [5] phi from main::@3 to main::@1 [phi:main::@3->main::@1]
|
||||
//SEG13 [5] phi (byte) main::i#2 = (byte) main::i#1 [phi:main::@3->main::@1#0] -- register_copy
|
||||
//SEG14 main::@1
|
||||
b1:
|
||||
//SEG15 [6] (boolean) main::o1#0 ← (byte) main::i#2 < (byte/signed byte/word/signed word/dword/signed dword) 10 [ main::i#2 main::o1#0 ] ( main:2 [ main::i#2 main::o1#0 ] ) -- vboz1=vbuxx_lt_vbuc1
|
||||
cpx #$a
|
||||
lda #0
|
||||
rol
|
||||
eor #1
|
||||
sta o1
|
||||
//SEG16 [7] (byte~) main::$1 ← (byte) main::i#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 main::o1#0 main::$1 ] ( main:2 [ main::i#2 main::o1#0 main::$1 ] ) -- vbuaa=vbuxx_band_vbuc1
|
||||
txa
|
||||
and #1
|
||||
//SEG17 [8] (boolean) main::o2#0 ← (byte~) main::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 [ main::i#2 main::o1#0 main::o2#0 ] ( main:2 [ main::i#2 main::o1#0 main::o2#0 ] ) -- vboaa=vbuaa_eq_vbuc1
|
||||
sec
|
||||
sbc #0
|
||||
beq !+
|
||||
lda #$ff
|
||||
!:
|
||||
eor #$ff
|
||||
//SEG18 [9] (boolean~) main::$3 ← (boolean) main::o1#0 && (boolean) main::o2#0 [ main::i#2 main::$3 ] ( main:2 [ main::i#2 main::$3 ] ) -- vboaa=vboz1_and_vboaa
|
||||
cmp #0
|
||||
beq !+
|
||||
lda #$ff
|
||||
!:
|
||||
and o1
|
||||
//SEG19 [10] if((boolean~) main::$3) goto main::@2 [ main::i#2 ] ( main:2 [ main::i#2 ] ) -- vboaa_then_la1
|
||||
cmp #0
|
||||
bne b2
|
||||
//SEG20 main::@4
|
||||
//SEG21 [11] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) ' ' [ main::i#2 ] ( main:2 [ main::i#2 ] ) -- pbuc1_derefidx_vbuxx=vbuc2
|
||||
lda #' '
|
||||
sta screen,x
|
||||
//SEG22 main::@3
|
||||
b3:
|
||||
//SEG23 [12] (byte) main::i#1 ← ++ (byte) main::i#2 [ main::i#1 ] ( main:2 [ main::i#1 ] ) -- vbuxx=_inc_vbuxx
|
||||
inx
|
||||
//SEG24 [13] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 21) goto main::@1 [ main::i#1 ] ( main:2 [ main::i#1 ] ) -- vbuxx_neq_vbuc1_then_la1
|
||||
cpx #$15
|
||||
bne b1
|
||||
//SEG25 main::@return
|
||||
//SEG26 [14] return [ ] ( main:2 [ ] )
|
||||
rts
|
||||
//SEG27 main::@2
|
||||
b2:
|
||||
//SEG28 [15] *((const byte*) screen#0 + (byte) main::i#2) ← (byte) '*' [ main::i#2 ] ( main:2 [ main::i#2 ] ) -- pbuc1_derefidx_vbuxx=vbuc2
|
||||
lda #'*'
|
||||
sta screen,x
|
||||
jmp b3
|
||||
}
|
||||
|
26
src/test/java/dk/camelot64/kickc/test/ref/bool-vars.sym
Normal file
26
src/test/java/dk/camelot64/kickc/test/ref/bool-vars.sym
Normal file
@ -0,0 +1,26 @@
|
||||
(label) @1
|
||||
(label) @begin
|
||||
(label) @end
|
||||
(void()) main()
|
||||
(byte~) main::$1 reg byte a 22.0
|
||||
(boolean~) main::$3 reg byte a 22.0
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
(label) main::@3
|
||||
(label) main::@4
|
||||
(label) main::@return
|
||||
(byte) main::i
|
||||
(byte) main::i#1 reg byte x 16.5
|
||||
(byte) main::i#2 reg byte x 8.25
|
||||
(boolean) main::o1
|
||||
(boolean) main::o1#0 o1 zp ZP_BOOL:2 7.333333333333333
|
||||
(boolean) main::o2
|
||||
(boolean) main::o2#0 reg byte a 22.0
|
||||
(byte*) screen
|
||||
(const byte*) screen#0 screen = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
|
||||
reg byte x [ main::i#2 main::i#1 ]
|
||||
zp ZP_BOOL:2 [ main::o1#0 ]
|
||||
reg byte a [ main::$1 ]
|
||||
reg byte a [ main::o2#0 ]
|
||||
reg byte a [ main::$3 ]
|
@ -2398,10 +2398,10 @@ Succesful SSA optimization Pass2ConstantIdentification
|
||||
Constant (const byte) main::$24 = main::$19|main::$23
|
||||
Succesful SSA optimization Pass2ConstantIdentification
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte) main::j#2
|
||||
Eliminating unused constant (const byte) gfx_init_plane_charset8::gfxbCpuBank#1
|
||||
Succesful SSA optimization PassNEliminateUnusedVars
|
||||
if() condition always true - replacing block destination if(true) goto main::@3
|
||||
Succesful SSA optimization Pass2ConstantIfs
|
||||
Eliminating unused constant (const byte) gfx_init_plane_charset8::gfxbCpuBank#1
|
||||
Succesful SSA optimization PassNEliminateUnusedVars
|
||||
Removing unused block main::@return
|
||||
Succesful SSA optimization Pass2EliminateUnusedBlocks
|
||||
Culled Empty Block (label) @1
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@ -178,32 +178,27 @@
|
||||
(byte*) VIC_SCREEN4
|
||||
(const byte*) VIC_SCREEN4#0 VIC_SCREEN4 = ((byte*))(word/signed word/dword/signed dword) 20480
|
||||
(void()) apply_preset((byte) apply_preset::idx)
|
||||
(label) apply_preset::@1
|
||||
(label) apply_preset::@11
|
||||
(label) apply_preset::@13
|
||||
(label) apply_preset::@15
|
||||
(label) apply_preset::@17
|
||||
(label) apply_preset::@19
|
||||
(label) apply_preset::@2
|
||||
(label) apply_preset::@22
|
||||
(label) apply_preset::@23
|
||||
(label) apply_preset::@3
|
||||
(label) apply_preset::@44
|
||||
(label) apply_preset::@5
|
||||
(label) apply_preset::@7
|
||||
(label) apply_preset::@9
|
||||
(label) apply_preset::@24
|
||||
(label) apply_preset::@25
|
||||
(label) apply_preset::@26
|
||||
(label) apply_preset::@27
|
||||
(label) apply_preset::@28
|
||||
(label) apply_preset::@29
|
||||
(label) apply_preset::@30
|
||||
(label) apply_preset::@31
|
||||
(label) apply_preset::@32
|
||||
(label) apply_preset::@33
|
||||
(label) apply_preset::@34
|
||||
(label) apply_preset::@return
|
||||
(byte) apply_preset::i
|
||||
(byte) apply_preset::i#1 reg byte x 1501.5
|
||||
(byte) apply_preset::i#2 reg byte x 500.5
|
||||
(byte) apply_preset::i#1 reg byte y 1501.5
|
||||
(byte) apply_preset::i#2 reg byte y 2002.0
|
||||
(byte) apply_preset::idx
|
||||
(byte) apply_preset::idx#0 reg byte a 11.18181818181818
|
||||
(byte*) apply_preset::preset
|
||||
(byte*) apply_preset::preset#12 preset zp ZP_WORD:3 667.3333333333334
|
||||
(byte*) apply_preset::preset#13 preset zp ZP_WORD:3 1001.6666666666667
|
||||
(byte*) apply_preset::preset#14 preset zp ZP_WORD:3 2.0
|
||||
(byte*) apply_preset::values
|
||||
(byte*) apply_preset::values#1 values zp ZP_WORD:5 500.5
|
||||
(byte*) apply_preset::values#2 values zp ZP_WORD:5 1501.5
|
||||
(byte*) apply_preset::preset#13 preset zp ZP_WORD:3 200.2
|
||||
(void()) bitmap_clear()
|
||||
(word~) bitmap_clear::$3 $3 zp ZP_WORD:3 2.0
|
||||
(label) bitmap_clear::@1
|
||||
@ -267,21 +262,21 @@
|
||||
(label) bitmap_line::@9
|
||||
(label) bitmap_line::@return
|
||||
(byte) bitmap_line::x0
|
||||
(byte) bitmap_line::x0#0 x0 zp ZP_BYTE:15 1.260869565217391
|
||||
(byte) bitmap_line::x0#0 x0 zp ZP_BYTE:13 1.260869565217391
|
||||
(byte) bitmap_line::x1
|
||||
(byte) bitmap_line::x1#0 x1 zp ZP_BYTE:18 1.3181818181818181
|
||||
(byte) bitmap_line::xd
|
||||
(byte) bitmap_line::xd#0 xd zp ZP_BYTE:7 0.7
|
||||
(byte) bitmap_line::xd#1 xd zp ZP_BYTE:7 0.7
|
||||
(byte) bitmap_line::xd#0 xd zp ZP_BYTE:8 0.7
|
||||
(byte) bitmap_line::xd#1 xd zp ZP_BYTE:8 0.7
|
||||
(byte) bitmap_line::y0
|
||||
(byte) bitmap_line::y0#0 y0 zp ZP_BYTE:13 1.6666666666666674
|
||||
(byte) bitmap_line::y0#0 y0 zp ZP_BYTE:14 1.6666666666666674
|
||||
(byte) bitmap_line::y1
|
||||
(byte) bitmap_line::y1#0 reg byte y 1.7500000000000007
|
||||
(byte) bitmap_line::yd
|
||||
(byte) bitmap_line::yd#0 yd zp ZP_BYTE:8 0.8888888888888888
|
||||
(byte) bitmap_line::yd#1 yd zp ZP_BYTE:8 0.8888888888888888
|
||||
(byte) bitmap_line::yd#10 yd zp ZP_BYTE:8 0.8888888888888888
|
||||
(byte) bitmap_line::yd#3 yd zp ZP_BYTE:8 0.8888888888888888
|
||||
(byte) bitmap_line::yd#0 yd zp ZP_BYTE:7 0.8888888888888888
|
||||
(byte) bitmap_line::yd#1 yd zp ZP_BYTE:7 0.8888888888888888
|
||||
(byte) bitmap_line::yd#10 yd zp ZP_BYTE:7 0.8888888888888888
|
||||
(byte) bitmap_line::yd#3 yd zp ZP_BYTE:7 0.8888888888888888
|
||||
(void()) bitmap_line_xdyd((byte) bitmap_line_xdyd::x , (byte) bitmap_line_xdyd::y , (byte) bitmap_line_xdyd::x1 , (byte) bitmap_line_xdyd::xd , (byte) bitmap_line_xdyd::yd)
|
||||
(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 $6 zp ZP_BYTE:15 202.0
|
||||
(label) bitmap_line_xdyd::@1
|
||||
@ -290,11 +285,11 @@
|
||||
(label) bitmap_line_xdyd::@5
|
||||
(label) bitmap_line_xdyd::@return
|
||||
(byte) bitmap_line_xdyd::e
|
||||
(byte) bitmap_line_xdyd::e#0 e zp ZP_BYTE:14 4.0
|
||||
(byte) bitmap_line_xdyd::e#1 e zp ZP_BYTE:14 134.66666666666666
|
||||
(byte) bitmap_line_xdyd::e#2 e zp ZP_BYTE:14 202.0
|
||||
(byte) bitmap_line_xdyd::e#3 e zp ZP_BYTE:14 40.8
|
||||
(byte) bitmap_line_xdyd::e#6 e zp ZP_BYTE:14 101.0
|
||||
(byte) bitmap_line_xdyd::e#0 e zp ZP_BYTE:13 4.0
|
||||
(byte) bitmap_line_xdyd::e#1 e zp ZP_BYTE:13 134.66666666666666
|
||||
(byte) bitmap_line_xdyd::e#2 e zp ZP_BYTE:13 202.0
|
||||
(byte) bitmap_line_xdyd::e#3 e zp ZP_BYTE:13 40.8
|
||||
(byte) bitmap_line_xdyd::e#6 e zp ZP_BYTE:13 101.0
|
||||
(byte) bitmap_line_xdyd::x
|
||||
(byte) bitmap_line_xdyd::x#0 reg byte x 0.8
|
||||
(byte) bitmap_line_xdyd::x#1 reg byte x 0.8
|
||||
@ -306,20 +301,20 @@
|
||||
(byte) bitmap_line_xdyd::x1#1 x1 zp ZP_BYTE:18 1.3333333333333333
|
||||
(byte) bitmap_line_xdyd::x1#6 x1 zp ZP_BYTE:18 7.5
|
||||
(byte) bitmap_line_xdyd::xd
|
||||
(byte) bitmap_line_xdyd::xd#0 xd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_xdyd::xd#1 xd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_xdyd::xd#5 xd zp ZP_BYTE:7 14.714285714285715
|
||||
(byte) bitmap_line_xdyd::xd#0 xd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_xdyd::xd#1 xd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_xdyd::xd#5 xd zp ZP_BYTE:8 14.714285714285715
|
||||
(byte) bitmap_line_xdyd::y
|
||||
(byte) bitmap_line_xdyd::y#0 y zp ZP_BYTE:13 1.0
|
||||
(byte) bitmap_line_xdyd::y#1 y zp ZP_BYTE:13 1.0
|
||||
(byte) bitmap_line_xdyd::y#2 y zp ZP_BYTE:13 101.0
|
||||
(byte) bitmap_line_xdyd::y#3 y zp ZP_BYTE:13 58.00000000000001
|
||||
(byte) bitmap_line_xdyd::y#5 y zp ZP_BYTE:13 3.0
|
||||
(byte) bitmap_line_xdyd::y#6 y zp ZP_BYTE:13 101.0
|
||||
(byte) bitmap_line_xdyd::y#0 y zp ZP_BYTE:14 1.0
|
||||
(byte) bitmap_line_xdyd::y#1 y zp ZP_BYTE:14 1.0
|
||||
(byte) bitmap_line_xdyd::y#2 y zp ZP_BYTE:14 101.0
|
||||
(byte) bitmap_line_xdyd::y#3 y zp ZP_BYTE:14 58.00000000000001
|
||||
(byte) bitmap_line_xdyd::y#5 y zp ZP_BYTE:14 3.0
|
||||
(byte) bitmap_line_xdyd::y#6 y zp ZP_BYTE:14 101.0
|
||||
(byte) bitmap_line_xdyd::yd
|
||||
(byte) bitmap_line_xdyd::yd#0 yd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_xdyd::yd#1 yd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_xdyd::yd#2 yd zp ZP_BYTE:8 7.642857142857143
|
||||
(byte) bitmap_line_xdyd::yd#0 yd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_xdyd::yd#1 yd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_xdyd::yd#2 yd zp ZP_BYTE:7 7.642857142857143
|
||||
(void()) bitmap_line_xdyi((byte) bitmap_line_xdyi::x , (byte) bitmap_line_xdyi::y , (byte) bitmap_line_xdyi::x1 , (byte) bitmap_line_xdyi::xd , (byte) bitmap_line_xdyi::yd)
|
||||
(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 $6 zp ZP_BYTE:18 202.0
|
||||
(label) bitmap_line_xdyi::@1
|
||||
@ -328,11 +323,11 @@
|
||||
(label) bitmap_line_xdyi::@5
|
||||
(label) bitmap_line_xdyi::@return
|
||||
(byte) bitmap_line_xdyi::e
|
||||
(byte) bitmap_line_xdyi::e#0 e zp ZP_BYTE:14 4.0
|
||||
(byte) bitmap_line_xdyi::e#1 e zp ZP_BYTE:14 134.66666666666666
|
||||
(byte) bitmap_line_xdyi::e#2 e zp ZP_BYTE:14 202.0
|
||||
(byte) bitmap_line_xdyi::e#3 e zp ZP_BYTE:14 40.8
|
||||
(byte) bitmap_line_xdyi::e#6 e zp ZP_BYTE:14 101.0
|
||||
(byte) bitmap_line_xdyi::e#0 e zp ZP_BYTE:15 4.0
|
||||
(byte) bitmap_line_xdyi::e#1 e zp ZP_BYTE:15 134.66666666666666
|
||||
(byte) bitmap_line_xdyi::e#2 e zp ZP_BYTE:15 202.0
|
||||
(byte) bitmap_line_xdyi::e#3 e zp ZP_BYTE:15 40.8
|
||||
(byte) bitmap_line_xdyi::e#6 e zp ZP_BYTE:15 101.0
|
||||
(byte) bitmap_line_xdyi::x
|
||||
(byte) bitmap_line_xdyi::x#0 reg byte x 0.8
|
||||
(byte) bitmap_line_xdyi::x#1 reg byte x 0.8
|
||||
@ -340,24 +335,24 @@
|
||||
(byte) bitmap_line_xdyi::x#3 reg byte x 76.25
|
||||
(byte) bitmap_line_xdyi::x#6 reg byte x 3.0
|
||||
(byte) bitmap_line_xdyi::x1
|
||||
(byte) bitmap_line_xdyi::x1#0 x1 zp ZP_BYTE:15 1.3333333333333333
|
||||
(byte) bitmap_line_xdyi::x1#1 x1 zp ZP_BYTE:15 1.3333333333333333
|
||||
(byte) bitmap_line_xdyi::x1#6 x1 zp ZP_BYTE:15 7.5
|
||||
(byte) bitmap_line_xdyi::x1#0 x1 zp ZP_BYTE:13 1.3333333333333333
|
||||
(byte) bitmap_line_xdyi::x1#1 x1 zp ZP_BYTE:13 1.3333333333333333
|
||||
(byte) bitmap_line_xdyi::x1#6 x1 zp ZP_BYTE:13 7.5
|
||||
(byte) bitmap_line_xdyi::xd
|
||||
(byte) bitmap_line_xdyi::xd#0 xd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_xdyi::xd#1 xd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_xdyi::xd#5 xd zp ZP_BYTE:7 14.714285714285715
|
||||
(byte) bitmap_line_xdyi::xd#0 xd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_xdyi::xd#1 xd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_xdyi::xd#5 xd zp ZP_BYTE:8 14.714285714285715
|
||||
(byte) bitmap_line_xdyi::y
|
||||
(byte) bitmap_line_xdyi::y#0 y zp ZP_BYTE:13 1.0
|
||||
(byte) bitmap_line_xdyi::y#1 y zp ZP_BYTE:13 1.0
|
||||
(byte) bitmap_line_xdyi::y#2 y zp ZP_BYTE:13 101.0
|
||||
(byte) bitmap_line_xdyi::y#3 y zp ZP_BYTE:13 58.00000000000001
|
||||
(byte) bitmap_line_xdyi::y#5 y zp ZP_BYTE:13 3.0
|
||||
(byte) bitmap_line_xdyi::y#6 y zp ZP_BYTE:13 101.0
|
||||
(byte) bitmap_line_xdyi::y#0 y zp ZP_BYTE:14 1.0
|
||||
(byte) bitmap_line_xdyi::y#1 y zp ZP_BYTE:14 1.0
|
||||
(byte) bitmap_line_xdyi::y#2 y zp ZP_BYTE:14 101.0
|
||||
(byte) bitmap_line_xdyi::y#3 y zp ZP_BYTE:14 58.00000000000001
|
||||
(byte) bitmap_line_xdyi::y#5 y zp ZP_BYTE:14 3.0
|
||||
(byte) bitmap_line_xdyi::y#6 y zp ZP_BYTE:14 101.0
|
||||
(byte) bitmap_line_xdyi::yd
|
||||
(byte) bitmap_line_xdyi::yd#0 yd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_xdyi::yd#1 yd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_xdyi::yd#2 yd zp ZP_BYTE:8 7.642857142857143
|
||||
(byte) bitmap_line_xdyi::yd#0 yd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_xdyi::yd#1 yd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_xdyi::yd#2 yd zp ZP_BYTE:7 7.642857142857143
|
||||
(void()) bitmap_line_ydxd((byte) bitmap_line_ydxd::y , (byte) bitmap_line_ydxd::x , (byte) bitmap_line_ydxd::y1 , (byte) bitmap_line_ydxd::yd , (byte) bitmap_line_ydxd::xd)
|
||||
(byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 reg byte y 202.0
|
||||
(label) bitmap_line_ydxd::@1
|
||||
@ -366,11 +361,11 @@
|
||||
(label) bitmap_line_ydxd::@5
|
||||
(label) bitmap_line_ydxd::@return
|
||||
(byte) bitmap_line_ydxd::e
|
||||
(byte) bitmap_line_ydxd::e#0 e zp ZP_BYTE:15 4.0
|
||||
(byte) bitmap_line_ydxd::e#1 e zp ZP_BYTE:15 134.66666666666666
|
||||
(byte) bitmap_line_ydxd::e#2 e zp ZP_BYTE:15 202.0
|
||||
(byte) bitmap_line_ydxd::e#3 e zp ZP_BYTE:15 40.8
|
||||
(byte) bitmap_line_ydxd::e#6 e zp ZP_BYTE:15 101.0
|
||||
(byte) bitmap_line_ydxd::e#0 e zp ZP_BYTE:13 4.0
|
||||
(byte) bitmap_line_ydxd::e#1 e zp ZP_BYTE:13 134.66666666666666
|
||||
(byte) bitmap_line_ydxd::e#2 e zp ZP_BYTE:13 202.0
|
||||
(byte) bitmap_line_ydxd::e#3 e zp ZP_BYTE:13 40.8
|
||||
(byte) bitmap_line_ydxd::e#6 e zp ZP_BYTE:13 101.0
|
||||
(byte) bitmap_line_ydxd::x
|
||||
(byte) bitmap_line_ydxd::x#0 reg byte x 1.0
|
||||
(byte) bitmap_line_ydxd::x#1 reg byte x 1.0
|
||||
@ -379,23 +374,23 @@
|
||||
(byte) bitmap_line_ydxd::x#5 reg byte x 3.0
|
||||
(byte) bitmap_line_ydxd::x#6 reg byte x 101.0
|
||||
(byte) bitmap_line_ydxd::xd
|
||||
(byte) bitmap_line_ydxd::xd#0 xd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_ydxd::xd#1 xd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_ydxd::xd#2 xd zp ZP_BYTE:7 7.642857142857143
|
||||
(byte) bitmap_line_ydxd::xd#0 xd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_ydxd::xd#1 xd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_ydxd::xd#2 xd zp ZP_BYTE:8 7.642857142857143
|
||||
(byte) bitmap_line_ydxd::y
|
||||
(byte) bitmap_line_ydxd::y#0 y zp ZP_BYTE:14 0.8
|
||||
(byte) bitmap_line_ydxd::y#1 y zp ZP_BYTE:14 0.8
|
||||
(byte) bitmap_line_ydxd::y#2 y zp ZP_BYTE:14 76.25
|
||||
(byte) bitmap_line_ydxd::y#3 y zp ZP_BYTE:14 37.875
|
||||
(byte) bitmap_line_ydxd::y#7 y zp ZP_BYTE:14 3.0
|
||||
(byte) bitmap_line_ydxd::y#0 y zp ZP_BYTE:15 0.8
|
||||
(byte) bitmap_line_ydxd::y#1 y zp ZP_BYTE:15 0.8
|
||||
(byte) bitmap_line_ydxd::y#2 y zp ZP_BYTE:15 76.25
|
||||
(byte) bitmap_line_ydxd::y#3 y zp ZP_BYTE:15 37.875
|
||||
(byte) bitmap_line_ydxd::y#7 y zp ZP_BYTE:15 3.0
|
||||
(byte) bitmap_line_ydxd::y1
|
||||
(byte) bitmap_line_ydxd::y1#0 y1 zp ZP_BYTE:13 1.3333333333333333
|
||||
(byte) bitmap_line_ydxd::y1#1 y1 zp ZP_BYTE:13 1.3333333333333333
|
||||
(byte) bitmap_line_ydxd::y1#6 y1 zp ZP_BYTE:13 7.5
|
||||
(byte) bitmap_line_ydxd::y1#0 y1 zp ZP_BYTE:14 1.3333333333333333
|
||||
(byte) bitmap_line_ydxd::y1#1 y1 zp ZP_BYTE:14 1.3333333333333333
|
||||
(byte) bitmap_line_ydxd::y1#6 y1 zp ZP_BYTE:14 7.5
|
||||
(byte) bitmap_line_ydxd::yd
|
||||
(byte) bitmap_line_ydxd::yd#0 yd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_ydxd::yd#1 yd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_ydxd::yd#5 yd zp ZP_BYTE:8 14.714285714285715
|
||||
(byte) bitmap_line_ydxd::yd#0 yd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_ydxd::yd#1 yd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_ydxd::yd#5 yd zp ZP_BYTE:7 14.714285714285715
|
||||
(void()) bitmap_line_ydxi((byte) bitmap_line_ydxi::y , (byte) bitmap_line_ydxi::x , (byte) bitmap_line_ydxi::y1 , (byte) bitmap_line_ydxi::yd , (byte) bitmap_line_ydxi::xd)
|
||||
(byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 reg byte y 202.0
|
||||
(label) bitmap_line_ydxi::@1
|
||||
@ -404,11 +399,11 @@
|
||||
(label) bitmap_line_ydxi::@5
|
||||
(label) bitmap_line_ydxi::@return
|
||||
(byte) bitmap_line_ydxi::e
|
||||
(byte) bitmap_line_ydxi::e#0 e zp ZP_BYTE:15 4.0
|
||||
(byte) bitmap_line_ydxi::e#1 e zp ZP_BYTE:15 134.66666666666666
|
||||
(byte) bitmap_line_ydxi::e#2 e zp ZP_BYTE:15 202.0
|
||||
(byte) bitmap_line_ydxi::e#3 e zp ZP_BYTE:15 40.8
|
||||
(byte) bitmap_line_ydxi::e#6 e zp ZP_BYTE:15 101.0
|
||||
(byte) bitmap_line_ydxi::e#0 e zp ZP_BYTE:13 4.0
|
||||
(byte) bitmap_line_ydxi::e#1 e zp ZP_BYTE:13 134.66666666666666
|
||||
(byte) bitmap_line_ydxi::e#2 e zp ZP_BYTE:13 202.0
|
||||
(byte) bitmap_line_ydxi::e#3 e zp ZP_BYTE:13 40.8
|
||||
(byte) bitmap_line_ydxi::e#6 e zp ZP_BYTE:13 101.0
|
||||
(byte) bitmap_line_ydxi::x
|
||||
(byte) bitmap_line_ydxi::x#0 reg byte x 1.0
|
||||
(byte) bitmap_line_ydxi::x#1 reg byte x 1.0
|
||||
@ -417,23 +412,23 @@
|
||||
(byte) bitmap_line_ydxi::x#5 reg byte x 3.0
|
||||
(byte) bitmap_line_ydxi::x#6 reg byte x 101.0
|
||||
(byte) bitmap_line_ydxi::xd
|
||||
(byte) bitmap_line_ydxi::xd#0 xd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_ydxi::xd#1 xd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_ydxi::xd#2 xd zp ZP_BYTE:7 7.642857142857143
|
||||
(byte) bitmap_line_ydxi::xd#0 xd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_ydxi::xd#1 xd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_ydxi::xd#2 xd zp ZP_BYTE:8 7.642857142857143
|
||||
(byte) bitmap_line_ydxi::y
|
||||
(byte) bitmap_line_ydxi::y#0 y zp ZP_BYTE:14 0.8
|
||||
(byte) bitmap_line_ydxi::y#1 y zp ZP_BYTE:14 0.8
|
||||
(byte) bitmap_line_ydxi::y#2 y zp ZP_BYTE:14 37.875
|
||||
(byte) bitmap_line_ydxi::y#3 y zp ZP_BYTE:14 76.25
|
||||
(byte) bitmap_line_ydxi::y#6 y zp ZP_BYTE:14 3.0
|
||||
(byte) bitmap_line_ydxi::y#0 y zp ZP_BYTE:15 0.8
|
||||
(byte) bitmap_line_ydxi::y#1 y zp ZP_BYTE:15 0.8
|
||||
(byte) bitmap_line_ydxi::y#2 y zp ZP_BYTE:15 37.875
|
||||
(byte) bitmap_line_ydxi::y#3 y zp ZP_BYTE:15 76.25
|
||||
(byte) bitmap_line_ydxi::y#6 y zp ZP_BYTE:15 3.0
|
||||
(byte) bitmap_line_ydxi::y1
|
||||
(byte) bitmap_line_ydxi::y1#0 y1 zp ZP_BYTE:13 1.3333333333333333
|
||||
(byte) bitmap_line_ydxi::y1#1 y1 zp ZP_BYTE:13 1.3333333333333333
|
||||
(byte) bitmap_line_ydxi::y1#6 y1 zp ZP_BYTE:13 7.5
|
||||
(byte) bitmap_line_ydxi::y1#0 y1 zp ZP_BYTE:14 1.3333333333333333
|
||||
(byte) bitmap_line_ydxi::y1#1 y1 zp ZP_BYTE:14 1.3333333333333333
|
||||
(byte) bitmap_line_ydxi::y1#6 y1 zp ZP_BYTE:14 7.5
|
||||
(byte) bitmap_line_ydxi::yd
|
||||
(byte) bitmap_line_ydxi::yd#0 yd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_ydxi::yd#1 yd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_ydxi::yd#5 yd zp ZP_BYTE:8 14.714285714285715
|
||||
(byte) bitmap_line_ydxi::yd#0 yd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_ydxi::yd#1 yd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_ydxi::yd#5 yd zp ZP_BYTE:7 14.714285714285715
|
||||
(void()) bitmap_plot((byte) bitmap_plot::x , (byte) bitmap_plot::y)
|
||||
(word~) bitmap_plot::$0 $0 zp ZP_WORD:3 1.0
|
||||
(byte~) bitmap_plot::$1 reg byte a 4.0
|
||||
@ -502,11 +497,11 @@
|
||||
(byte*) form_b_step_lo
|
||||
(const byte*) form_b_step_lo#0 form_b_step_lo = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 21
|
||||
(byte()) form_control()
|
||||
(byte~) form_control::$11 reg byte a 4.0
|
||||
(byte~) form_control::$12 reg byte a 4.0
|
||||
(byte~) form_control::$13 reg byte a 4.0
|
||||
(byte~) form_control::$24 reg byte a 4.0
|
||||
(byte~) form_control::$22 reg byte a 4.0
|
||||
(byte~) form_control::$5 reg byte a 4.0
|
||||
(byte/word/dword~) form_control::$6 reg byte a 4.0
|
||||
(byte~) form_control::$7 reg byte a 4.0
|
||||
(label) form_control::@1
|
||||
(label) form_control::@10
|
||||
(label) form_control::@12
|
||||
@ -677,53 +672,53 @@
|
||||
(byte*) form_vic_screen
|
||||
(const byte*) form_vic_screen#0 form_vic_screen = (const byte[]) form_fields_val#0+(byte/signed byte/word/signed word/dword/signed dword) 24
|
||||
(dword()) get_plane((byte) get_plane::idx)
|
||||
(label) get_plane::@1
|
||||
(label) get_plane::@11
|
||||
(label) get_plane::@13
|
||||
(label) get_plane::@15
|
||||
(label) get_plane::@17
|
||||
(label) get_plane::@19
|
||||
(label) get_plane::@21
|
||||
(label) get_plane::@23
|
||||
(label) get_plane::@25
|
||||
(label) get_plane::@3
|
||||
(label) get_plane::@5
|
||||
(label) get_plane::@67
|
||||
(label) get_plane::@7
|
||||
(label) get_plane::@9
|
||||
(label) get_plane::@27
|
||||
(label) get_plane::@28
|
||||
(label) get_plane::@29
|
||||
(label) get_plane::@30
|
||||
(label) get_plane::@31
|
||||
(label) get_plane::@32
|
||||
(label) get_plane::@33
|
||||
(label) get_plane::@34
|
||||
(label) get_plane::@35
|
||||
(label) get_plane::@36
|
||||
(label) get_plane::@37
|
||||
(label) get_plane::@38
|
||||
(label) get_plane::@39
|
||||
(label) get_plane::@40
|
||||
(label) get_plane::@return
|
||||
(byte) get_plane::idx
|
||||
(byte) get_plane::idx#0 reg byte a 4.0
|
||||
(byte) get_plane::idx#1 reg byte a 4.0
|
||||
(byte) get_plane::idx#10 reg byte a 2.285714285714285
|
||||
(dword) get_plane::return
|
||||
(dword) get_plane::return#1 return zp ZP_DWORD:9 1.0
|
||||
(dword) get_plane::return#14 return zp ZP_DWORD:9 1.0
|
||||
(dword) get_plane::return#16 return zp ZP_DWORD:9 4.0
|
||||
(dword) get_plane::return#17 return zp ZP_DWORD:9 4.0
|
||||
(byte*()) get_vic_charset((byte) get_vic_charset::idx)
|
||||
(label) get_vic_charset::@1
|
||||
(label) get_vic_charset::@7
|
||||
(label) get_vic_charset::@3
|
||||
(label) get_vic_charset::@4
|
||||
(label) get_vic_charset::@return
|
||||
(byte) get_vic_charset::idx
|
||||
(byte) get_vic_charset::idx#0 reg byte a 3.0
|
||||
(byte*) get_vic_charset::return
|
||||
(byte*) get_vic_charset::return#1 return zp ZP_WORD:3 0.6666666666666666
|
||||
(byte*) get_vic_charset::return#2 return zp ZP_WORD:3 0.6666666666666666
|
||||
(byte*) get_vic_charset::return#4 return zp ZP_WORD:3 4.0
|
||||
(byte*()) get_vic_screen((byte) get_vic_screen::idx)
|
||||
(label) get_vic_screen::@1
|
||||
(label) get_vic_screen::@22
|
||||
(label) get_vic_screen::@3
|
||||
(label) get_vic_screen::@5
|
||||
(label) get_vic_screen::@7
|
||||
(label) get_vic_screen::@10
|
||||
(label) get_vic_screen::@11
|
||||
(label) get_vic_screen::@12
|
||||
(label) get_vic_screen::@13
|
||||
(label) get_vic_screen::@9
|
||||
(label) get_vic_screen::@return
|
||||
(byte) get_vic_screen::idx
|
||||
(byte) get_vic_screen::idx#0 reg byte a 4.0
|
||||
(byte) get_vic_screen::idx#1 reg byte a 4.0
|
||||
(byte) get_vic_screen::idx#2 reg byte a 2.8
|
||||
(byte*) get_vic_screen::return
|
||||
(byte*) get_vic_screen::return#1 return zp ZP_WORD:3 1.0
|
||||
(byte*) get_vic_screen::return#10 return zp ZP_WORD:3 4.0
|
||||
(byte*) get_vic_screen::return#11 return zp ZP_WORD:3 4.0
|
||||
(byte*) get_vic_screen::return#5 return zp ZP_WORD:3 1.0
|
||||
(void()) gfx_init()
|
||||
(label) gfx_init::@1
|
||||
(label) gfx_init::@10
|
||||
@ -1164,10 +1159,10 @@
|
||||
(byte) gfx_mode::vic_control2
|
||||
(byte) gfx_mode::vic_control2#2 reg byte a 2.0
|
||||
(byte()) keyboard_event_get()
|
||||
(label) keyboard_event_get::@1
|
||||
(label) keyboard_event_get::@3
|
||||
(label) keyboard_event_get::@return
|
||||
(byte) keyboard_event_get::return
|
||||
(byte) keyboard_event_get::return#0 reg byte a 4.0
|
||||
(byte) keyboard_event_get::return#1 reg byte a 4.0
|
||||
(byte) keyboard_event_get::return#2 reg byte a 26.25
|
||||
(byte) keyboard_event_get::return#3 reg byte a 202.0
|
||||
(byte) keyboard_event_get::return#4 reg byte a 4.0
|
||||
@ -1186,21 +1181,21 @@
|
||||
(byte) keyboard_event_pressed::row_bits
|
||||
(byte) keyboard_event_pressed::row_bits#0 row_bits zp ZP_BYTE:7 2.0
|
||||
(void()) keyboard_event_scan()
|
||||
(byte/word/dword~) keyboard_event_scan::$12 reg byte a 200002.0
|
||||
(byte~) keyboard_event_scan::$16 reg byte a 4.0
|
||||
(byte~) keyboard_event_scan::$20 reg byte a 4.0
|
||||
(byte~) keyboard_event_scan::$24 reg byte a 4.0
|
||||
(byte~) keyboard_event_scan::$28 reg byte a 4.0
|
||||
(byte/word/dword~) keyboard_event_scan::$11 reg byte a 200002.0
|
||||
(byte~) keyboard_event_scan::$14 reg byte a 4.0
|
||||
(byte~) keyboard_event_scan::$18 reg byte a 4.0
|
||||
(byte~) keyboard_event_scan::$22 reg byte a 4.0
|
||||
(byte~) keyboard_event_scan::$26 reg byte a 4.0
|
||||
(byte~) keyboard_event_scan::$3 reg byte a 200002.0
|
||||
(byte~) keyboard_event_scan::$4 reg byte a 200002.0
|
||||
(label) keyboard_event_scan::@1
|
||||
(label) keyboard_event_scan::@10
|
||||
(label) keyboard_event_scan::@11
|
||||
(label) keyboard_event_scan::@14
|
||||
(label) keyboard_event_scan::@13
|
||||
(label) keyboard_event_scan::@15
|
||||
(label) keyboard_event_scan::@16
|
||||
(label) keyboard_event_scan::@18
|
||||
(label) keyboard_event_scan::@2
|
||||
(label) keyboard_event_scan::@17
|
||||
(label) keyboard_event_scan::@19
|
||||
(label) keyboard_event_scan::@20
|
||||
(label) keyboard_event_scan::@21
|
||||
(label) keyboard_event_scan::@22
|
||||
@ -1213,8 +1208,8 @@
|
||||
(label) keyboard_event_scan::@29
|
||||
(label) keyboard_event_scan::@3
|
||||
(label) keyboard_event_scan::@4
|
||||
(label) keyboard_event_scan::@6
|
||||
(label) keyboard_event_scan::@8
|
||||
(label) keyboard_event_scan::@5
|
||||
(label) keyboard_event_scan::@7
|
||||
(label) keyboard_event_scan::@9
|
||||
(label) keyboard_event_scan::@return
|
||||
(byte) keyboard_event_scan::col
|
||||
@ -1239,8 +1234,8 @@
|
||||
(byte) keyboard_events_size#1 keyboard_events_size zp ZP_BYTE:8 200002.0
|
||||
(byte) keyboard_events_size#100 keyboard_events_size zp ZP_BYTE:8 882.6176470588235
|
||||
(byte) keyboard_events_size#110 keyboard_events_size zp ZP_BYTE:8 105.0
|
||||
(byte) keyboard_events_size#118 keyboard_events_size zp ZP_BYTE:8 102001.2
|
||||
(byte) keyboard_events_size#119 keyboard_events_size zp ZP_BYTE:8 4286.428571428572
|
||||
(byte) keyboard_events_size#118 keyboard_events_size zp ZP_BYTE:8 4286.428571428572
|
||||
(byte) keyboard_events_size#119 keyboard_events_size zp ZP_BYTE:8 102001.2
|
||||
(byte) keyboard_events_size#18 keyboard_events_size zp ZP_BYTE:8 81000.90000000001
|
||||
(byte) keyboard_events_size#2 keyboard_events_size zp ZP_BYTE:8 200002.0
|
||||
(byte) keyboard_events_size#24 keyboard_events_size zp ZP_BYTE:8 6.6923076923076925
|
||||
@ -1353,18 +1348,18 @@
|
||||
(byte*) print_str_lines::str#4 str zp ZP_WORD:3 1552.0
|
||||
(byte*) print_str_lines::str#5 str zp ZP_WORD:3 1.0
|
||||
(void()) render_preset_name((byte) render_preset_name::idx)
|
||||
(label) render_preset_name::@1
|
||||
(label) render_preset_name::@11
|
||||
(label) render_preset_name::@13
|
||||
(label) render_preset_name::@15
|
||||
(label) render_preset_name::@17
|
||||
(label) render_preset_name::@19
|
||||
(label) render_preset_name::@2
|
||||
(label) render_preset_name::@3
|
||||
(label) render_preset_name::@43
|
||||
(label) render_preset_name::@5
|
||||
(label) render_preset_name::@7
|
||||
(label) render_preset_name::@9
|
||||
(label) render_preset_name::@22
|
||||
(label) render_preset_name::@23
|
||||
(label) render_preset_name::@24
|
||||
(label) render_preset_name::@25
|
||||
(label) render_preset_name::@26
|
||||
(label) render_preset_name::@27
|
||||
(label) render_preset_name::@28
|
||||
(label) render_preset_name::@29
|
||||
(label) render_preset_name::@30
|
||||
(label) render_preset_name::@31
|
||||
(label) render_preset_name::@32
|
||||
(label) render_preset_name::@33
|
||||
(label) render_preset_name::@return
|
||||
(byte) render_preset_name::idx
|
||||
(byte) render_preset_name::idx#0 reg byte a 4.0
|
||||
@ -1373,8 +1368,8 @@
|
||||
(byte*) render_preset_name::name
|
||||
(const string) render_preset_name::name#0 name#0 = (string) "Standard Charset @"
|
||||
(const string) render_preset_name::name#1 name#1 = (string) "Extended Color Charset @"
|
||||
(const string) render_preset_name::name#10 name#10 = (string) "Standard Charset @"
|
||||
(const string) render_preset_name::name#11 name#11 = (string) "8bpp Pixel Cell @"
|
||||
(const string) render_preset_name::name#10 name#10 = (string) "8bpp Pixel Cell @"
|
||||
(const string) render_preset_name::name#11 name#11 = (string) "Standard Charset @"
|
||||
(byte*) render_preset_name::name#12 name zp ZP_WORD:3 2.0
|
||||
(const string) render_preset_name::name#2 name#2 = (string) "Standard Bitmap @"
|
||||
(const string) render_preset_name::name#3 name#3 = (string) "Multicolor Bitmap @"
|
||||
@ -1389,27 +1384,27 @@ reg byte x [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_cont
|
||||
reg byte x [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ]
|
||||
reg byte a [ gfx_mode::vic_control2#2 ]
|
||||
zp ZP_BYTE:2 [ gfx_mode::cy#4 gfx_mode::cy#1 keyboard_event_scan::row#2 keyboard_event_scan::row#1 keyboard_event_pressed::keycode#4 gfx_init_plane_fill::fill#6 gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::ay#1 gfx_init_plane_vertical::by#4 gfx_init_plane_vertical::by#1 gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::ay#1 gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::ch#1 gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 gfx_init_vic_bitmap::l#2 gfx_init_vic_bitmap::l#1 bitmap_clear::y#4 bitmap_clear::y#1 gfx_init_charset::c#4 gfx_init_charset::c#1 gfx_init_screen4::cy#4 gfx_init_screen4::cy#1 gfx_init_screen3::cy#4 gfx_init_screen3::cy#1 gfx_init_screen2::cy#4 gfx_init_screen2::cy#1 gfx_init_screen1::cy#4 gfx_init_screen1::cy#1 gfx_init_screen0::cy#4 gfx_init_screen0::cy#1 gfx_mode::$65 bitmap_init::$6 ]
|
||||
zp ZP_WORD:3 [ gfx_mode::vic_colors#2 gfx_mode::vic_colors#3 gfx_mode::vic_colors#1 gfx_mode::vic_colors#0 get_vic_screen::return#11 get_vic_screen::return#1 get_vic_screen::return#10 gfx_mode::$61 gfx_mode::$63 gfx_mode::$64 get_vic_charset::return#1 get_vic_charset::return#4 gfx_mode::$66 gfx_mode::$68 render_preset_name::name#12 print_str_at::str#2 print_str_at::str#1 print_str_at::str#0 apply_preset::preset#13 apply_preset::preset#14 apply_preset::preset#12 form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::gfxb#3 gfx_init_plane_fill::gfxb#1 gfx_init_plane_fill::gfxb#6 gfx_init_plane_fill::$6 gfx_init_plane_fill::$4 gfx_init_plane_fill::$5 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::gfxa#3 gfx_init_plane_horisontal2::gfxa#1 gfx_init_plane_vertical::gfxb#2 gfx_init_plane_vertical::gfxb#3 gfx_init_plane_vertical::gfxb#1 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::gfxa#6 gfx_init_plane_horisontal::gfxa#7 gfx_init_plane_horisontal::gfxa#1 gfx_init_plane_horisontal::gfxa#2 gfx_init_plane_charset8::chargen#2 gfx_init_plane_charset8::chargen#3 gfx_init_plane_charset8::chargen#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 bitmap_clear::$3 bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 gfx_init_charset::chargen#2 gfx_init_charset::chargen#3 gfx_init_charset::chargen#1 gfx_init_screen4::ch#2 gfx_init_screen4::ch#3 gfx_init_screen4::ch#1 gfx_init_screen3::ch#2 gfx_init_screen3::ch#3 gfx_init_screen3::ch#1 gfx_init_screen2::ch#2 gfx_init_screen2::ch#3 gfx_init_screen2::ch#1 gfx_init_screen1::ch#2 gfx_init_screen1::ch#3 gfx_init_screen1::ch#1 gfx_init_screen0::ch#2 gfx_init_screen0::ch#3 gfx_init_screen0::ch#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$47 gfx_mode::$49 gfx_mode::$51 form_field_ptr::return#2 form_render_values::field#0 form_field_ptr::return#0 form_field_ptr::$2 form_field_ptr::return#3 form_control::field#0 gfx_init_plane_fill::$1 bitmap_plot::plotter_x#0 bitmap_plot::$0 ]
|
||||
zp ZP_WORD:5 [ gfx_mode::col#2 gfx_mode::col#3 gfx_mode::col#1 print_str_at::at#2 print_str_at::at#0 apply_preset::values#2 apply_preset::values#1 print_char_cursor#20 print_char_cursor#22 print_char_cursor#77 print_char_cursor#78 print_char_cursor#38 print_char_cursor#1 gfx_init_plane_charset8::gfxa#2 gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::gfxa#6 gfx_init_plane_charset8::gfxa#1 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_charset::charset#2 gfx_init_charset::charset#3 gfx_init_charset::charset#1 print_cls::$0 bitmap_plot::plotter_y#0 ]
|
||||
zp ZP_WORD:3 [ gfx_mode::vic_colors#2 gfx_mode::vic_colors#3 gfx_mode::vic_colors#1 gfx_mode::vic_colors#0 get_vic_screen::return#11 get_vic_screen::return#5 get_vic_screen::return#10 gfx_mode::$61 gfx_mode::$63 gfx_mode::$64 get_vic_charset::return#2 get_vic_charset::return#4 gfx_mode::$66 gfx_mode::$68 render_preset_name::name#12 print_str_at::str#2 print_str_at::str#1 print_str_at::str#0 apply_preset::preset#13 form_set_screen::line#2 form_set_screen::line#1 print_str_lines::str#4 print_str_lines::str#3 print_str_lines::str#5 print_str_lines::str#0 print_cls::sc#2 print_cls::sc#0 print_cls::sc#1 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::gfxb#3 gfx_init_plane_fill::gfxb#1 gfx_init_plane_fill::gfxb#6 gfx_init_plane_fill::$6 gfx_init_plane_fill::$4 gfx_init_plane_fill::$5 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::gfxa#3 gfx_init_plane_horisontal2::gfxa#1 gfx_init_plane_vertical::gfxb#2 gfx_init_plane_vertical::gfxb#3 gfx_init_plane_vertical::gfxb#1 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::gfxa#6 gfx_init_plane_horisontal::gfxa#7 gfx_init_plane_horisontal::gfxa#1 gfx_init_plane_horisontal::gfxa#2 gfx_init_plane_charset8::chargen#2 gfx_init_plane_charset8::chargen#3 gfx_init_plane_charset8::chargen#1 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::x#1 bitmap_clear::bitmap#2 bitmap_clear::bitmap#3 bitmap_clear::bitmap#5 bitmap_clear::bitmap#1 bitmap_clear::$3 bitmap_init::yoffs#2 bitmap_init::yoffs#4 bitmap_init::yoffs#1 gfx_init_charset::chargen#2 gfx_init_charset::chargen#3 gfx_init_charset::chargen#1 gfx_init_screen4::ch#2 gfx_init_screen4::ch#3 gfx_init_screen4::ch#1 gfx_init_screen3::ch#2 gfx_init_screen3::ch#3 gfx_init_screen3::ch#1 gfx_init_screen2::ch#2 gfx_init_screen2::ch#3 gfx_init_screen2::ch#1 gfx_init_screen1::ch#2 gfx_init_screen1::ch#3 gfx_init_screen1::ch#1 gfx_init_screen0::ch#2 gfx_init_screen0::ch#3 gfx_init_screen0::ch#1 gfx_mode::$33 gfx_mode::$35 gfx_mode::$37 gfx_mode::$47 gfx_mode::$49 gfx_mode::$51 form_field_ptr::return#2 form_render_values::field#0 form_field_ptr::return#0 form_field_ptr::$2 form_field_ptr::return#3 form_control::field#0 gfx_init_plane_fill::$1 bitmap_plot::plotter_x#0 bitmap_plot::$0 ]
|
||||
zp ZP_WORD:5 [ gfx_mode::col#2 gfx_mode::col#3 gfx_mode::col#1 print_str_at::at#2 print_str_at::at#0 print_char_cursor#20 print_char_cursor#22 print_char_cursor#77 print_char_cursor#78 print_char_cursor#38 print_char_cursor#1 gfx_init_plane_charset8::gfxa#2 gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::gfxa#6 gfx_init_plane_charset8::gfxa#1 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_charset::charset#2 gfx_init_charset::charset#3 gfx_init_charset::charset#1 print_cls::$0 bitmap_plot::plotter_y#0 ]
|
||||
reg byte x [ gfx_mode::cx#2 gfx_mode::cx#1 ]
|
||||
reg byte x [ gfx_mode::i#2 gfx_mode::i#1 ]
|
||||
reg byte x [ gfx_mode::j#2 gfx_mode::j#1 ]
|
||||
reg byte a [ keyboard_event_get::return#2 keyboard_event_get::return#0 ]
|
||||
reg byte x [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ]
|
||||
zp ZP_BYTE:7 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 gfx_init_plane_fill::by#4 gfx_init_plane_fill::by#1 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::cr#1 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 bitmap_line::xd#1 bitmap_line::xd#0 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#1 bitmap_line_ydxd::xd#0 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 keyboard_event_pressed::row_bits#0 gfx_init_screen3::$1 gfx_init_screen2::col2#0 gfx_init_screen0::$1 ]
|
||||
zp ZP_BYTE:8 [ keyboard_events_size#18 keyboard_events_size#119 keyboard_events_size#110 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#24 keyboard_events_size#4 keyboard_events_size#100 keyboard_events_size#118 keyboard_events_size#2 keyboard_events_size#1 gfx_init_plane_charset8::bits#2 gfx_init_plane_charset8::bits#0 gfx_init_plane_charset8::bits#1 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 bitmap_line::yd#1 bitmap_line::yd#10 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#1 bitmap_line_ydxd::yd#0 bitmap_line::yd#0 bitmap_line::yd#3 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ]
|
||||
reg byte x [ gfx_mode::i#2 gfx_mode::i#1 ]
|
||||
reg byte a [ keyboard_event_get::return#2 keyboard_event_get::return#1 ]
|
||||
reg byte x [ keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#4 keyboard_modifiers#19 keyboard_modifiers#3 keyboard_modifiers#18 keyboard_modifiers#5 ]
|
||||
reg byte x [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ]
|
||||
zp ZP_BYTE:7 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#1 keyboard_event_scan::keycode#15 gfx_init_plane_fill::by#4 gfx_init_plane_fill::by#1 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::cr#1 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 bitmap_line::yd#1 bitmap_line::yd#10 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#0 bitmap_line_ydxi::yd#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 bitmap_line::yd#0 bitmap_line::yd#3 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 keyboard_event_pressed::row_bits#0 gfx_init_screen3::$1 gfx_init_screen2::col2#0 gfx_init_screen0::$1 ]
|
||||
zp ZP_BYTE:8 [ keyboard_events_size#18 keyboard_events_size#118 keyboard_events_size#110 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#24 keyboard_events_size#100 keyboard_events_size#4 keyboard_events_size#119 keyboard_events_size#2 keyboard_events_size#1 gfx_init_plane_charset8::bits#2 gfx_init_plane_charset8::bits#0 gfx_init_plane_charset8::bits#1 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 bitmap_line::xd#1 bitmap_line::xd#0 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#0 bitmap_line_ydxi::xd#1 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
|
||||
reg byte a [ get_vic_screen::idx#2 get_vic_screen::idx#0 get_vic_screen::idx#1 ]
|
||||
reg byte a [ get_plane::idx#10 get_plane::idx#1 get_plane::idx#0 ]
|
||||
zp ZP_DWORD:9 [ get_plane::return#1 get_plane::return#16 get_plane::return#17 gfx_mode::$31 gfx_mode::plane_a#0 gfx_mode::$45 gfx_mode::plane_b#0 gfx_init_plane_fill::plane_addr#3 ]
|
||||
zp ZP_DWORD:9 [ get_plane::return#14 get_plane::return#16 get_plane::return#17 gfx_mode::$31 gfx_mode::plane_a#0 gfx_mode::$45 gfx_mode::plane_b#0 gfx_init_plane_fill::plane_addr#3 ]
|
||||
reg byte x [ form_mode::i#2 form_mode::i#1 ]
|
||||
zp ZP_BYTE:13 [ form_cursor_count#21 form_cursor_count#1 form_cursor_count#16 form_cursor_count#15 form_cursor_count#5 gfx_init_plane_charset8::col#2 gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::col#6 gfx_init_plane_charset8::col#1 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y0#0 bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::y1#0 bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
|
||||
zp ZP_BYTE:14 [ form_field_idx#28 form_field_idx#1 form_field_idx#18 form_field_idx#32 form_field_idx#44 form_field_idx#45 bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ]
|
||||
zp ZP_BYTE:15 [ form_mode::preset_current#6 form_mode::preset_current#0 form_mode::preset_current#1 bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 bitmap_line::x0#0 bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 bitmap_line_xdyd::$6 ]
|
||||
zp ZP_BYTE:13 [ form_cursor_count#21 form_cursor_count#1 form_cursor_count#16 form_cursor_count#15 form_cursor_count#5 gfx_init_plane_charset8::col#2 gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::col#6 gfx_init_plane_charset8::col#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 bitmap_line::x0#0 bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ]
|
||||
zp ZP_BYTE:14 [ form_field_idx#28 form_field_idx#1 form_field_idx#18 form_field_idx#32 form_field_idx#44 form_field_idx#45 bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 bitmap_line::y0#0 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::y1#1 bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
|
||||
zp ZP_BYTE:15 [ form_mode::preset_current#6 form_mode::preset_current#0 form_mode::preset_current#1 bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#2 bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 bitmap_line_xdyd::$6 ]
|
||||
reg byte a [ render_preset_name::idx#10 render_preset_name::idx#0 render_preset_name::idx#1 ]
|
||||
reg byte x [ form_render_values::idx#2 form_render_values::idx#1 ]
|
||||
reg byte x [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ]
|
||||
reg byte x [ apply_preset::i#2 apply_preset::i#1 ]
|
||||
reg byte y [ apply_preset::i#2 apply_preset::i#1 ]
|
||||
reg byte x [ form_control::return#2 ]
|
||||
reg byte x [ form_set_screen::y#2 form_set_screen::y#1 ]
|
||||
zp ZP_WORD:16 [ print_line_cursor#21 print_line_cursor#2 print_set_screen::screen#2 print_line_cursor#22 gfx_init_plane_8bppchunky::$6 ]
|
||||
@ -1421,13 +1416,13 @@ reg byte x [ gfx_init_plane_horisontal::ax#2 gfx_init_plane_horisontal::ax#1 ]
|
||||
reg byte x [ gfx_init_plane_charset8::cp#2 gfx_init_plane_charset8::cp#1 ]
|
||||
reg byte a [ gfx_init_plane_charset8::c#2 gfx_init_plane_charset8::c#3 ]
|
||||
reg byte x [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ]
|
||||
reg byte x [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ]
|
||||
reg byte x [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ]
|
||||
reg byte x [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ]
|
||||
reg byte y [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ]
|
||||
reg byte x [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ]
|
||||
reg byte x [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ]
|
||||
zp ZP_BYTE:18 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 bitmap_line::x1#0 keyboard_event_scan::row_scan#0 bitmap_line_xdyi::$6 ]
|
||||
reg byte x [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ]
|
||||
reg byte x [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ]
|
||||
zp ZP_BYTE:18 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 bitmap_line::x1#0 keyboard_event_scan::row_scan#0 bitmap_line_xdyi::$6 ]
|
||||
reg byte x [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ]
|
||||
reg byte x [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ]
|
||||
reg byte x [ bitmap_clear::x#2 bitmap_clear::x#1 ]
|
||||
reg byte x [ bitmap_init::x#2 bitmap_init::x#1 ]
|
||||
reg byte y [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ]
|
||||
@ -1472,18 +1467,18 @@ reg byte a [ keyboard_event_get::return#3 ]
|
||||
reg byte a [ gfx_mode::keyboard_event#0 ]
|
||||
reg byte x [ keyboard_matrix_read::rowid#0 ]
|
||||
reg byte a [ keyboard_matrix_read::return#2 ]
|
||||
reg byte a [ keyboard_event_pressed::return#0 ]
|
||||
reg byte a [ keyboard_event_scan::$14 ]
|
||||
reg byte a [ keyboard_event_pressed::return#1 ]
|
||||
reg byte a [ keyboard_event_scan::$18 ]
|
||||
reg byte a [ keyboard_event_pressed::return#2 ]
|
||||
reg byte a [ keyboard_event_scan::$22 ]
|
||||
reg byte a [ keyboard_event_pressed::return#3 ]
|
||||
reg byte a [ keyboard_event_scan::$26 ]
|
||||
reg byte a [ keyboard_event_scan::$3 ]
|
||||
reg byte a [ keyboard_event_scan::$4 ]
|
||||
reg byte a [ keyboard_event_scan::event_type#0 ]
|
||||
reg byte a [ keyboard_event_scan::$12 ]
|
||||
reg byte a [ keyboard_event_pressed::return#0 ]
|
||||
reg byte a [ keyboard_event_scan::$16 ]
|
||||
reg byte a [ keyboard_event_pressed::return#1 ]
|
||||
reg byte a [ keyboard_event_scan::$20 ]
|
||||
reg byte a [ keyboard_event_pressed::return#2 ]
|
||||
reg byte a [ keyboard_event_scan::$24 ]
|
||||
reg byte a [ keyboard_event_pressed::return#3 ]
|
||||
reg byte a [ keyboard_event_scan::$28 ]
|
||||
reg byte a [ keyboard_event_scan::$11 ]
|
||||
reg byte a [ keyboard_event_pressed::$0 ]
|
||||
reg byte a [ keyboard_event_pressed::$1 ]
|
||||
reg byte a [ keyboard_event_pressed::return#10 ]
|
||||
@ -1493,13 +1488,13 @@ reg byte a [ form_mode::$36 ]
|
||||
reg byte a [ apply_preset::idx#0 ]
|
||||
reg byte y [ form_field_ptr::y#0 ]
|
||||
reg byte a [ form_field_ptr::x#0 ]
|
||||
reg byte a [ form_control::$6 ]
|
||||
reg byte a [ form_control::$5 ]
|
||||
reg byte a [ keyboard_event_get::return#4 ]
|
||||
reg byte a [ form_control::key_event#0 ]
|
||||
reg byte a [ form_control::$11 ]
|
||||
reg byte a [ form_control::$12 ]
|
||||
reg byte a [ form_control::$13 ]
|
||||
reg byte a [ form_control::$24 ]
|
||||
reg byte a [ form_control::$7 ]
|
||||
reg byte a [ form_control::$22 ]
|
||||
reg byte a [ form_control::$6 ]
|
||||
reg byte a [ form_set_screen::$0 ]
|
||||
reg byte a [ form_set_screen::$1 ]
|
||||
reg byte a [ print_str_lines::ch#0 ]
|
||||
@ -1511,8 +1506,8 @@ reg byte a [ gfx_init_plane_horisontal::$5 ]
|
||||
reg byte a [ gfx_init_plane_charset8::$5 ]
|
||||
reg byte a [ gfx_init_plane_8bppchunky::c#0 ]
|
||||
reg byte y [ bitmap_line::y1#0 ]
|
||||
reg byte y [ bitmap_line_ydxi::$6 ]
|
||||
reg byte a [ bitmap_plot::$1 ]
|
||||
reg byte y [ bitmap_line_ydxi::$6 ]
|
||||
reg byte y [ bitmap_line_ydxd::$6 ]
|
||||
reg byte a [ bitmap_init::$0 ]
|
||||
reg byte a [ bitmap_init::$7 ]
|
||||
|
@ -799,9 +799,9 @@ mode_twoplanebitmap: {
|
||||
lda #4
|
||||
and ay
|
||||
cmp #0
|
||||
bne b6
|
||||
lda #0
|
||||
tay
|
||||
beq b6
|
||||
lda #$ff
|
||||
ldy #0
|
||||
sta (gfxa),y
|
||||
inc gfxa
|
||||
bne !+
|
||||
@ -843,8 +843,8 @@ mode_twoplanebitmap: {
|
||||
jsr mode_ctrl
|
||||
rts
|
||||
b6:
|
||||
lda #$ff
|
||||
ldy #0
|
||||
lda #0
|
||||
tay
|
||||
sta (gfxa),y
|
||||
inc gfxa
|
||||
bne !+
|
||||
@ -1350,132 +1350,135 @@ mode_stdbitmap: {
|
||||
lines_y: .byte 0, 0, $c7, $c7, 0, 0, $64, $c7, $64, 0
|
||||
}
|
||||
bitmap_line: {
|
||||
.label xd = 7
|
||||
.label yd = 8
|
||||
.label x0 = $b
|
||||
.label xd = 8
|
||||
.label yd = 7
|
||||
.label x0 = 9
|
||||
.label x1 = $c
|
||||
.label y0 = 9
|
||||
.label y0 = $a
|
||||
lda x0
|
||||
cmp x1
|
||||
bcs b1
|
||||
lda x1
|
||||
bcc b1
|
||||
sec
|
||||
sbc x0
|
||||
sbc x1
|
||||
sta xd
|
||||
lda y0
|
||||
sty $ff
|
||||
cmp $ff
|
||||
bcs b2
|
||||
tya
|
||||
sec
|
||||
sbc y0
|
||||
sta yd
|
||||
cmp xd
|
||||
bcs b3
|
||||
ldx x0
|
||||
lda x1
|
||||
sta bitmap_line_xdyi.x1
|
||||
jsr bitmap_line_xdyi
|
||||
breturn:
|
||||
rts
|
||||
b3:
|
||||
lda y0
|
||||
sta bitmap_line_ydxi.y
|
||||
ldx x0
|
||||
sty bitmap_line_ydxi.y1
|
||||
jsr bitmap_line_ydxi
|
||||
jmp breturn
|
||||
b2:
|
||||
cmp y0
|
||||
beq !+
|
||||
bcs b2
|
||||
!:
|
||||
tya
|
||||
eor #$ff
|
||||
sec
|
||||
adc y0
|
||||
sta yd
|
||||
cmp xd
|
||||
bcs b6
|
||||
ldx x0
|
||||
jsr bitmap_line_xdyd
|
||||
jmp breturn
|
||||
b6:
|
||||
sty bitmap_line_ydxd.y
|
||||
bcc b3
|
||||
sty bitmap_line_ydxi.y
|
||||
ldx x1
|
||||
jsr bitmap_line_ydxd
|
||||
jsr bitmap_line_ydxi
|
||||
breturn:
|
||||
rts
|
||||
b3:
|
||||
ldx x1
|
||||
sty bitmap_line_xdyi.y
|
||||
jsr bitmap_line_xdyi
|
||||
jmp breturn
|
||||
b1:
|
||||
lda x0
|
||||
sec
|
||||
sbc x1
|
||||
sta xd
|
||||
lda y0
|
||||
sty $ff
|
||||
cmp $ff
|
||||
bcs b9
|
||||
b2:
|
||||
tya
|
||||
sec
|
||||
sbc y0
|
||||
sta yd
|
||||
cmp xd
|
||||
bcs b10
|
||||
ldx x1
|
||||
sty bitmap_line_xdyd.y
|
||||
lda x0
|
||||
sta bitmap_line_xdyd.x1
|
||||
jsr bitmap_line_xdyd
|
||||
jmp breturn
|
||||
b10:
|
||||
bcc b6
|
||||
lda y0
|
||||
sta bitmap_line_ydxd.y
|
||||
ldx x0
|
||||
sty bitmap_line_ydxd.y1
|
||||
jsr bitmap_line_ydxd
|
||||
jmp breturn
|
||||
b9:
|
||||
b6:
|
||||
ldx x1
|
||||
sty bitmap_line_xdyd.y
|
||||
lda x0
|
||||
sta bitmap_line_xdyd.x1
|
||||
jsr bitmap_line_xdyd
|
||||
jmp breturn
|
||||
b1:
|
||||
lda x1
|
||||
sec
|
||||
sbc x0
|
||||
sta xd
|
||||
tya
|
||||
cmp y0
|
||||
beq !+
|
||||
bcs b9
|
||||
!:
|
||||
tya
|
||||
eor #$ff
|
||||
sec
|
||||
adc y0
|
||||
sta yd
|
||||
cmp xd
|
||||
bcs b13
|
||||
bcc b10
|
||||
sty bitmap_line_ydxd.y
|
||||
ldx x1
|
||||
sty bitmap_line_xdyi.y
|
||||
jsr bitmap_line_xdyi
|
||||
jsr bitmap_line_ydxd
|
||||
jmp breturn
|
||||
b13:
|
||||
sty bitmap_line_ydxi.y
|
||||
ldx x1
|
||||
b10:
|
||||
ldx x0
|
||||
jsr bitmap_line_xdyd
|
||||
jmp breturn
|
||||
b9:
|
||||
tya
|
||||
sec
|
||||
sbc y0
|
||||
sta yd
|
||||
cmp xd
|
||||
bcc b13
|
||||
lda y0
|
||||
sta bitmap_line_ydxi.y
|
||||
ldx x0
|
||||
sty bitmap_line_ydxi.y1
|
||||
jsr bitmap_line_ydxi
|
||||
jmp breturn
|
||||
b13:
|
||||
ldx x0
|
||||
lda x1
|
||||
sta bitmap_line_xdyi.x1
|
||||
jsr bitmap_line_xdyi
|
||||
jmp breturn
|
||||
}
|
||||
bitmap_line_ydxi: {
|
||||
bitmap_line_xdyi: {
|
||||
.label _6 = $c
|
||||
.label y = $a
|
||||
.label y1 = 9
|
||||
.label yd = 8
|
||||
.label xd = 7
|
||||
.label x1 = 9
|
||||
.label xd = 8
|
||||
.label yd = 7
|
||||
.label e = $b
|
||||
lda xd
|
||||
lda yd
|
||||
lsr
|
||||
sta e
|
||||
b1:
|
||||
ldy y
|
||||
jsr bitmap_plot
|
||||
inc y
|
||||
lda e
|
||||
clc
|
||||
adc xd
|
||||
sta e
|
||||
lda yd
|
||||
cmp e
|
||||
bcs b2
|
||||
inx
|
||||
lda e
|
||||
clc
|
||||
adc yd
|
||||
sta e
|
||||
lda xd
|
||||
cmp e
|
||||
bcs b2
|
||||
inc y
|
||||
lda e
|
||||
sec
|
||||
sbc yd
|
||||
sbc xd
|
||||
sta e
|
||||
b2:
|
||||
ldy y1
|
||||
ldy x1
|
||||
iny
|
||||
cpy y
|
||||
sty _6
|
||||
cpx _6
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
@ -1504,46 +1507,12 @@ bitmap_plot: {
|
||||
sta (_0),y
|
||||
rts
|
||||
}
|
||||
bitmap_line_xdyi: {
|
||||
.label _6 = $c
|
||||
.label y = 9
|
||||
.label x1 = $b
|
||||
.label xd = 7
|
||||
.label yd = 8
|
||||
.label e = $a
|
||||
lda yd
|
||||
lsr
|
||||
sta e
|
||||
b1:
|
||||
ldy y
|
||||
jsr bitmap_plot
|
||||
inx
|
||||
lda e
|
||||
clc
|
||||
adc yd
|
||||
sta e
|
||||
lda xd
|
||||
cmp e
|
||||
bcs b2
|
||||
inc y
|
||||
lda e
|
||||
sec
|
||||
sbc xd
|
||||
sta e
|
||||
b2:
|
||||
ldy x1
|
||||
iny
|
||||
sty _6
|
||||
cpx _6
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
bitmap_line_ydxd: {
|
||||
.label y = $a
|
||||
.label y1 = 9
|
||||
.label yd = 8
|
||||
.label xd = 7
|
||||
.label e = $b
|
||||
bitmap_line_ydxi: {
|
||||
.label y = $b
|
||||
.label y1 = $a
|
||||
.label yd = 7
|
||||
.label xd = 8
|
||||
.label e = 9
|
||||
lda xd
|
||||
lsr
|
||||
sta e
|
||||
@ -1558,7 +1527,7 @@ bitmap_line_ydxd: {
|
||||
lda yd
|
||||
cmp e
|
||||
bcs b2
|
||||
dex
|
||||
inx
|
||||
lda e
|
||||
sec
|
||||
sbc yd
|
||||
@ -1572,11 +1541,11 @@ bitmap_line_ydxd: {
|
||||
}
|
||||
bitmap_line_xdyd: {
|
||||
.label _6 = $b
|
||||
.label y = 9
|
||||
.label y = $a
|
||||
.label x1 = $c
|
||||
.label xd = 7
|
||||
.label yd = 8
|
||||
.label e = $a
|
||||
.label xd = 8
|
||||
.label yd = 7
|
||||
.label e = 9
|
||||
lda yd
|
||||
lsr
|
||||
sta e
|
||||
@ -1604,6 +1573,38 @@ bitmap_line_xdyd: {
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
bitmap_line_ydxd: {
|
||||
.label y = $b
|
||||
.label y1 = $a
|
||||
.label yd = 7
|
||||
.label xd = 8
|
||||
.label e = 9
|
||||
lda xd
|
||||
lsr
|
||||
sta e
|
||||
b1:
|
||||
ldy y
|
||||
jsr bitmap_plot
|
||||
inc y
|
||||
lda e
|
||||
clc
|
||||
adc xd
|
||||
sta e
|
||||
lda yd
|
||||
cmp e
|
||||
bcs b2
|
||||
dex
|
||||
lda e
|
||||
sec
|
||||
sbc yd
|
||||
sta e
|
||||
b2:
|
||||
ldy y1
|
||||
iny
|
||||
cpy y
|
||||
bne b1
|
||||
rts
|
||||
}
|
||||
bitmap_clear: {
|
||||
.label bitmap = 2
|
||||
.label y = 4
|
||||
|
@ -662,10 +662,10 @@ mode_twoplanebitmap::@5: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::
|
||||
[372] (byte) mode_twoplanebitmap::ax#2 ← phi( mode_twoplanebitmap::@4/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_twoplanebitmap::@7/(byte) mode_twoplanebitmap::ax#1 ) [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] )
|
||||
[372] (byte*) mode_twoplanebitmap::gfxa#3 ← phi( mode_twoplanebitmap::@4/(byte*) mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::@7/(byte*) mode_twoplanebitmap::gfxa#7 ) [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] )
|
||||
[373] (byte~) mode_twoplanebitmap::$21 ← (byte) mode_twoplanebitmap::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::$21 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::$21 ] )
|
||||
[374] if((byte~) mode_twoplanebitmap::$21!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_twoplanebitmap::@6 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] )
|
||||
[374] if((byte~) mode_twoplanebitmap::$21==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_twoplanebitmap::@6 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] )
|
||||
to:mode_twoplanebitmap::@13
|
||||
mode_twoplanebitmap::@13: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@5
|
||||
[375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] )
|
||||
[375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/word/signed word/dword/signed dword) 255 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] )
|
||||
[376] (byte*) mode_twoplanebitmap::gfxa#2 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::gfxa#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::gfxa#2 ] )
|
||||
to:mode_twoplanebitmap::@7
|
||||
mode_twoplanebitmap::@7: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@13 mode_twoplanebitmap::@6
|
||||
@ -701,7 +701,7 @@ mode_twoplanebitmap::@return: scope:[mode_twoplanebitmap] from mode_twoplanebit
|
||||
[392] return [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] )
|
||||
to:@return
|
||||
mode_twoplanebitmap::@6: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@5
|
||||
[393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/word/signed word/dword/signed dword) 255 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] )
|
||||
[393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] )
|
||||
[394] (byte*) mode_twoplanebitmap::gfxa#1 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::gfxa#1 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#4 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::gfxa#1 ] )
|
||||
to:mode_twoplanebitmap::@7
|
||||
mode_sixsfred2: scope:[mode_sixsfred2] from menu::@36
|
||||
@ -1022,246 +1022,246 @@ mode_stdbitmap::@return: scope:[mode_stdbitmap] from mode_stdbitmap::@8
|
||||
[591] return [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] )
|
||||
to:@return
|
||||
bitmap_line: scope:[bitmap_line] from mode_stdbitmap::@4
|
||||
[592] if((byte) bitmap_line::x0#0>=(byte) bitmap_line::x1#0) goto bitmap_line::@1 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 ] )
|
||||
[592] if((byte) bitmap_line::x0#0<(byte) bitmap_line::x1#0) goto bitmap_line::@1 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 ] )
|
||||
to:bitmap_line::@15
|
||||
bitmap_line::@15: scope:[bitmap_line] from bitmap_line
|
||||
[593] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] )
|
||||
[594] if((byte) bitmap_line::y0#0>=(byte) bitmap_line::y1#0) goto bitmap_line::@2 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] )
|
||||
[593] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] )
|
||||
[594] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@2 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] )
|
||||
to:bitmap_line::@16
|
||||
bitmap_line::@16: scope:[bitmap_line] from bitmap_line::@15
|
||||
[595] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] )
|
||||
[596] if((byte) bitmap_line::yd#1>=(byte) bitmap_line::xd#1) goto bitmap_line::@3 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] )
|
||||
[595] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] )
|
||||
[596] if((byte) bitmap_line::yd#1<(byte) bitmap_line::xd#1) goto bitmap_line::@3 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 ] )
|
||||
to:bitmap_line::@17
|
||||
bitmap_line::@17: scope:[bitmap_line] from bitmap_line::@16
|
||||
[597] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x0#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 ] )
|
||||
[598] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y0#0 [ bitmap_line::x1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 ] )
|
||||
[599] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x1#0 [ bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 ] )
|
||||
[600] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 ] )
|
||||
[601] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#1 [ bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::yd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::yd#0 ] )
|
||||
[602] call bitmap_line_xdyi param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
[597] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 ] )
|
||||
[598] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 [ bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 ] )
|
||||
[599] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 [ bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 ] )
|
||||
[600] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#1 [ bitmap_line::xd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 ] )
|
||||
[601] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 bitmap_line_ydxi::xd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 bitmap_line_ydxi::xd#0 ] )
|
||||
[602] call bitmap_line_ydxi param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@return: scope:[bitmap_line] from bitmap_line::@10 bitmap_line::@13 bitmap_line::@17 bitmap_line::@20 bitmap_line::@24 bitmap_line::@27 bitmap_line::@3 bitmap_line::@6
|
||||
[603] return [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
to:@return
|
||||
bitmap_line::@3: scope:[bitmap_line] from bitmap_line::@16
|
||||
[604] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 ] )
|
||||
[605] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x0#0 [ bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 ] )
|
||||
[606] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y1#0 [ bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 ] )
|
||||
[607] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#1 [ bitmap_line::xd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 ] )
|
||||
[608] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 bitmap_line_ydxi::xd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_ydxi::y#0 bitmap_line_ydxi::x#0 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::yd#0 bitmap_line_ydxi::xd#0 ] )
|
||||
[609] call bitmap_line_ydxi param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
[604] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 ] )
|
||||
[605] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 ] )
|
||||
[606] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 [ bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#1 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 ] )
|
||||
[607] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::yd#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 ] )
|
||||
[608] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#1 [ bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::yd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_xdyi::x#0 bitmap_line_xdyi::y#0 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::yd#0 ] )
|
||||
[609] call bitmap_line_xdyi param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@2: scope:[bitmap_line] from bitmap_line::@15
|
||||
[610] (byte) bitmap_line::yd#0 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] )
|
||||
[611] if((byte) bitmap_line::yd#0>=(byte) bitmap_line::xd#1) goto bitmap_line::@6 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] )
|
||||
[610] (byte) bitmap_line::yd#0 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] )
|
||||
[611] if((byte) bitmap_line::yd#0<(byte) bitmap_line::xd#1) goto bitmap_line::@6 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 ] )
|
||||
to:bitmap_line::@20
|
||||
bitmap_line::@20: scope:[bitmap_line] from bitmap_line::@2
|
||||
[612] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x0#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 ] )
|
||||
[613] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y0#0 [ bitmap_line::x1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 ] )
|
||||
[614] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x1#0 [ bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 ] )
|
||||
[615] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 ] )
|
||||
[616] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#0 [ bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::yd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::yd#0 ] )
|
||||
[617] call bitmap_line_xdyd param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
[612] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 ] )
|
||||
[613] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 [ bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 ] )
|
||||
[614] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 [ bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 ] )
|
||||
[615] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#0 [ bitmap_line::xd#1 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#1 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 ] )
|
||||
[616] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::xd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::xd#0 ] )
|
||||
[617] call bitmap_line_ydxd param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@6: scope:[bitmap_line] from bitmap_line::@2
|
||||
[618] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y1#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 ] )
|
||||
[619] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x1#0 [ bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::y0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 ] )
|
||||
[620] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y0#0 [ bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 ] )
|
||||
[621] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#0 [ bitmap_line::xd#1 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#1 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 ] )
|
||||
[622] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::xd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_ydxd::y#0 bitmap_line_ydxd::x#0 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::xd#0 ] )
|
||||
[623] call bitmap_line_ydxd param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
[618] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 ] )
|
||||
[619] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 ] )
|
||||
[620] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 [ bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#1 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 ] )
|
||||
[621] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#1 [ bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::yd#0 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 ] )
|
||||
[622] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#0 [ bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::yd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_xdyd::x#0 bitmap_line_xdyd::y#0 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::yd#0 ] )
|
||||
[623] call bitmap_line_xdyd param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@1: scope:[bitmap_line] from bitmap_line
|
||||
[624] (byte) bitmap_line::xd#0 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] )
|
||||
[625] if((byte) bitmap_line::y0#0>=(byte) bitmap_line::y1#0) goto bitmap_line::@9 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] )
|
||||
[624] (byte) bitmap_line::xd#0 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] )
|
||||
[625] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@9 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 ] )
|
||||
to:bitmap_line::@23
|
||||
bitmap_line::@23: scope:[bitmap_line] from bitmap_line::@1
|
||||
[626] (byte) bitmap_line::yd#3 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] )
|
||||
[627] if((byte) bitmap_line::yd#3>=(byte) bitmap_line::xd#0) goto bitmap_line::@10 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] )
|
||||
[626] (byte) bitmap_line::yd#3 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] )
|
||||
[627] if((byte) bitmap_line::yd#3<(byte) bitmap_line::xd#0) goto bitmap_line::@10 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 ] )
|
||||
to:bitmap_line::@24
|
||||
bitmap_line::@24: scope:[bitmap_line] from bitmap_line::@23
|
||||
[628] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 ] )
|
||||
[629] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 ] )
|
||||
[630] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x0#0 [ bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 ] )
|
||||
[631] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 ] )
|
||||
[632] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#3 [ bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::yd#1 ] )
|
||||
[633] call bitmap_line_xdyd param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
[628] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 ] )
|
||||
[629] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 [ bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 ] )
|
||||
[630] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 [ bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 ] )
|
||||
[631] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#3 [ bitmap_line::xd#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 ] )
|
||||
[632] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 bitmap_line_ydxd::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 bitmap_line_ydxd::xd#1 ] )
|
||||
[633] call bitmap_line_ydxd param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@10: scope:[bitmap_line] from bitmap_line::@23
|
||||
[634] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 ] )
|
||||
[635] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x0#0 [ bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 ] )
|
||||
[636] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y1#0 [ bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 ] )
|
||||
[637] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#3 [ bitmap_line::xd#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 ] )
|
||||
[638] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 bitmap_line_ydxd::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_ydxd::y#1 bitmap_line_ydxd::x#1 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::yd#1 bitmap_line_ydxd::xd#1 ] )
|
||||
[639] call bitmap_line_ydxd param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
[634] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 ] )
|
||||
[635] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 [ bitmap_line::x1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x1#0 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 ] )
|
||||
[636] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 [ bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#0 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 ] )
|
||||
[637] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::yd#3 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 ] )
|
||||
[638] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#3 [ bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_xdyd::x#1 bitmap_line_xdyd::y#1 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::yd#1 ] )
|
||||
[639] call bitmap_line_xdyd param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@9: scope:[bitmap_line] from bitmap_line::@1
|
||||
[640] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] )
|
||||
[641] if((byte) bitmap_line::yd#10>=(byte) bitmap_line::xd#0) goto bitmap_line::@13 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] )
|
||||
[640] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] )
|
||||
[641] if((byte) bitmap_line::yd#10<(byte) bitmap_line::xd#0) goto bitmap_line::@13 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 ] )
|
||||
to:bitmap_line::@27
|
||||
bitmap_line::@27: scope:[bitmap_line] from bitmap_line::@9
|
||||
[642] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 ] )
|
||||
[643] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 ] )
|
||||
[644] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x0#0 [ bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 ] )
|
||||
[645] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 ] )
|
||||
[646] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#10 [ bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::yd#1 ] )
|
||||
[647] call bitmap_line_xdyi param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
[642] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 ] )
|
||||
[643] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 [ bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::y1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 ] )
|
||||
[644] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 [ bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 ] )
|
||||
[645] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#10 [ bitmap_line::xd#0 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#0 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 ] )
|
||||
[646] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::xd#1 ] )
|
||||
[647] call bitmap_line_ydxi param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line::@13: scope:[bitmap_line] from bitmap_line::@9
|
||||
[648] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y1#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 ] )
|
||||
[649] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x1#0 [ bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 ] )
|
||||
[650] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y0#0 [ bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 ] )
|
||||
[651] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#10 [ bitmap_line::xd#0 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#0 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 ] )
|
||||
[652] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_ydxi::y#1 bitmap_line_ydxi::x#1 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::xd#1 ] )
|
||||
[653] call bitmap_line_ydxi param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
[648] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 [ bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 ] )
|
||||
[649] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 [ bitmap_line::x1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x1#0 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 ] )
|
||||
[650] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 [ bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::xd#0 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 ] )
|
||||
[651] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#0 [ bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::yd#10 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 ] )
|
||||
[652] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#10 [ bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line_xdyi::x#1 bitmap_line_xdyi::y#1 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::yd#1 ] )
|
||||
[653] call bitmap_line_xdyi param-assignment [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 ] )
|
||||
to:bitmap_line::@return
|
||||
bitmap_line_ydxi: scope:[bitmap_line_ydxi] from bitmap_line::@13 bitmap_line::@3
|
||||
[654] (byte) bitmap_line_ydxi::y1#6 ← phi( bitmap_line::@13/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@3/(byte) bitmap_line_ydxi::y1#0 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[654] (byte) bitmap_line_ydxi::yd#5 ← phi( bitmap_line::@13/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@3/(byte) bitmap_line_ydxi::yd#0 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[654] (byte) bitmap_line_ydxi::y#6 ← phi( bitmap_line::@13/(byte) bitmap_line_ydxi::y#1 bitmap_line::@3/(byte) bitmap_line_ydxi::y#0 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[654] (byte) bitmap_line_ydxi::x#5 ← phi( bitmap_line::@13/(byte) bitmap_line_ydxi::x#1 bitmap_line::@3/(byte) bitmap_line_ydxi::x#0 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[654] (byte) bitmap_line_ydxi::xd#2 ← phi( bitmap_line::@13/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@3/(byte) bitmap_line_ydxi::xd#0 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[655] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] )
|
||||
to:bitmap_line_ydxi::@1
|
||||
bitmap_line_ydxi::@1: scope:[bitmap_line_ydxi] from bitmap_line_ydxi bitmap_line_ydxi::@2
|
||||
[656] (byte) bitmap_line_ydxi::e#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[656] (byte) bitmap_line_ydxi::y#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#2 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[656] (byte) bitmap_line_ydxi::x#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[657] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#2 ] )
|
||||
[658] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#2 bitmap_plot::y#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#2 bitmap_plot::y#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#2 bitmap_plot::y#2 ] )
|
||||
[659] call bitmap_plot param-assignment [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
to:bitmap_line_ydxi::@5
|
||||
bitmap_line_ydxi::@5: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@1
|
||||
[660] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::e#3 bitmap_line_ydxi::y#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::e#3 bitmap_line_ydxi::y#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::e#3 bitmap_line_ydxi::y#2 ] )
|
||||
[661] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] )
|
||||
[662] if((byte) bitmap_line_ydxi::yd#5>=(byte) bitmap_line_ydxi::e#1) goto bitmap_line_ydxi::@2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] )
|
||||
to:bitmap_line_ydxi::@3
|
||||
bitmap_line_ydxi::@3: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@5
|
||||
[663] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 bitmap_line_ydxi::x#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 bitmap_line_ydxi::x#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 bitmap_line_ydxi::x#2 ] )
|
||||
[664] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] )
|
||||
to:bitmap_line_ydxi::@2
|
||||
bitmap_line_ydxi::@2: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@3 bitmap_line_ydxi::@5
|
||||
[665] (byte) bitmap_line_ydxi::e#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] )
|
||||
[665] (byte) bitmap_line_ydxi::x#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#3 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] )
|
||||
[666] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 bitmap_line_ydxi::$6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 bitmap_line_ydxi::$6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 bitmap_line_ydxi::$6 ] )
|
||||
[667] if((byte) bitmap_line_ydxi::y#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] )
|
||||
to:bitmap_line_ydxi::@return
|
||||
bitmap_line_ydxi::@return: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@2
|
||||
[668] return [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609 [ mode_stdbitmap::l#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653 [ mode_stdbitmap::l#2 ] )
|
||||
to:@return
|
||||
bitmap_plot: scope:[bitmap_plot] from bitmap_line_xdyd::@1 bitmap_line_xdyi::@1 bitmap_line_ydxd::@1 bitmap_line_ydxi::@1
|
||||
[669] (byte) bitmap_plot::y#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) [ bitmap_plot::x#4 bitmap_plot::y#4 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] )
|
||||
[669] (byte) bitmap_plot::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) [ bitmap_plot::x#4 bitmap_plot::y#4 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] )
|
||||
[670] (word) bitmap_plot::plotter_x#0 ← *((const byte[256]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[256]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] )
|
||||
[671] (word) bitmap_plot::plotter_y#0 ← *((const byte[256]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[256]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] )
|
||||
[672] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] )
|
||||
[673] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[256]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] )
|
||||
[674] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
to:bitmap_plot::@return
|
||||
bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot
|
||||
[675] return [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
to:@return
|
||||
bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@17 bitmap_line::@27
|
||||
[676] (byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@17/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@27/(byte) bitmap_line_xdyi::x1#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[676] (byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@17/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@27/(byte) bitmap_line_xdyi::xd#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[676] (byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@17/(byte) bitmap_line_xdyi::y#0 bitmap_line::@27/(byte) bitmap_line_xdyi::y#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[676] (byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@17/(byte) bitmap_line_xdyi::x#0 bitmap_line::@27/(byte) bitmap_line_xdyi::x#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[676] (byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@17/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@27/(byte) bitmap_line_xdyi::yd#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[677] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] )
|
||||
bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@13 bitmap_line::@3
|
||||
[654] (byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::x1#1 bitmap_line::@3/(byte) bitmap_line_xdyi::x1#0 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[654] (byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::xd#1 bitmap_line::@3/(byte) bitmap_line_xdyi::xd#0 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[654] (byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::y#1 bitmap_line::@3/(byte) bitmap_line_xdyi::y#0 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[654] (byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::x#1 bitmap_line::@3/(byte) bitmap_line_xdyi::x#0 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[654] (byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@13/(byte) bitmap_line_xdyi::yd#1 bitmap_line::@3/(byte) bitmap_line_xdyi::yd#0 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 ] )
|
||||
[655] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] )
|
||||
to:bitmap_line_xdyi::@1
|
||||
bitmap_line_xdyi::@1: scope:[bitmap_line_xdyi] from bitmap_line_xdyi bitmap_line_xdyi::@2
|
||||
[678] (byte) bitmap_line_xdyi::e#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[678] (byte) bitmap_line_xdyi::y#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[678] (byte) bitmap_line_xdyi::x#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#2 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[679] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 [ bitmap_plot::x#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_plot::x#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_plot::x#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[680] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 [ bitmap_plot::x#0 bitmap_plot::y#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_plot::x#0 bitmap_plot::y#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_plot::x#0 bitmap_plot::y#0 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[681] call bitmap_plot param-assignment [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[656] (byte) bitmap_line_xdyi::e#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[656] (byte) bitmap_line_xdyi::y#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[656] (byte) bitmap_line_xdyi::x#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#2 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
[657] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#0 ] )
|
||||
[658] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#0 bitmap_plot::y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#0 bitmap_plot::y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#0 bitmap_plot::y#0 ] )
|
||||
[659] call bitmap_plot param-assignment [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] )
|
||||
to:bitmap_line_xdyi::@5
|
||||
bitmap_line_xdyi::@5: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@1
|
||||
[682] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_line_xdyi::x#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_line_xdyi::x#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_line_xdyi::x#2 ] )
|
||||
[683] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] )
|
||||
[684] if((byte) bitmap_line_xdyi::xd#5>=(byte) bitmap_line_xdyi::e#1) goto bitmap_line_xdyi::@2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] )
|
||||
[660] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_line_xdyi::x#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_line_xdyi::x#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_line_xdyi::x#2 ] )
|
||||
[661] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] )
|
||||
[662] if((byte) bitmap_line_xdyi::xd#5>=(byte) bitmap_line_xdyi::e#1) goto bitmap_line_xdyi::@2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] )
|
||||
to:bitmap_line_xdyi::@3
|
||||
bitmap_line_xdyi::@3: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@5
|
||||
[685] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 bitmap_line_xdyi::y#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 bitmap_line_xdyi::y#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 bitmap_line_xdyi::y#2 ] )
|
||||
[686] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] )
|
||||
[663] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 bitmap_line_xdyi::y#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 bitmap_line_xdyi::y#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 bitmap_line_xdyi::y#2 ] )
|
||||
[664] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] )
|
||||
to:bitmap_line_xdyi::@2
|
||||
bitmap_line_xdyi::@2: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@3 bitmap_line_xdyi::@5
|
||||
[687] (byte) bitmap_line_xdyi::e#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] )
|
||||
[687] (byte) bitmap_line_xdyi::y#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#3 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] )
|
||||
[688] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 bitmap_line_xdyi::$6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 bitmap_line_xdyi::$6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 bitmap_line_xdyi::$6 ] )
|
||||
[689] if((byte) bitmap_line_xdyi::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] )
|
||||
[665] (byte) bitmap_line_xdyi::e#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] )
|
||||
[665] (byte) bitmap_line_xdyi::y#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#3 ) [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] )
|
||||
[666] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 bitmap_line_xdyi::$6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 bitmap_line_xdyi::$6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 bitmap_line_xdyi::$6 ] )
|
||||
[667] if((byte) bitmap_line_xdyi::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#6 bitmap_line_xdyi::e#6 ] )
|
||||
to:bitmap_line_xdyi::@return
|
||||
bitmap_line_xdyi::@return: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@2
|
||||
[690] return [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:602 [ mode_stdbitmap::l#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:647 [ mode_stdbitmap::l#2 ] )
|
||||
[668] return [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 ] )
|
||||
to:@return
|
||||
bitmap_line_ydxd: scope:[bitmap_line_ydxd] from bitmap_line::@10 bitmap_line::@6
|
||||
[691] (byte) bitmap_line_ydxd::y1#6 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y1#1 bitmap_line::@6/(byte) bitmap_line_ydxd::y1#0 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[691] (byte) bitmap_line_ydxd::yd#5 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::yd#1 bitmap_line::@6/(byte) bitmap_line_ydxd::yd#0 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[691] (byte) bitmap_line_ydxd::y#7 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y#1 bitmap_line::@6/(byte) bitmap_line_ydxd::y#0 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[691] (byte) bitmap_line_ydxd::x#5 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::x#1 bitmap_line::@6/(byte) bitmap_line_ydxd::x#0 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[691] (byte) bitmap_line_ydxd::xd#2 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::xd#1 bitmap_line::@6/(byte) bitmap_line_ydxd::xd#0 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[692] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] )
|
||||
to:bitmap_line_ydxd::@1
|
||||
bitmap_line_ydxd::@1: scope:[bitmap_line_ydxd] from bitmap_line_ydxd bitmap_line_ydxd::@2
|
||||
[693] (byte) bitmap_line_ydxd::e#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[693] (byte) bitmap_line_ydxd::y#2 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#3 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[693] (byte) bitmap_line_ydxd::x#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[694] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 [ bitmap_plot::x#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_plot::x#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_plot::x#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[695] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 [ bitmap_plot::x#3 bitmap_plot::y#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_plot::x#3 bitmap_plot::y#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_plot::x#3 bitmap_plot::y#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[696] call bitmap_plot param-assignment [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
to:bitmap_line_ydxd::@5
|
||||
bitmap_line_ydxd::@5: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@1
|
||||
[697] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::e#3 bitmap_line_ydxd::y#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::e#3 bitmap_line_ydxd::y#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::e#3 bitmap_line_ydxd::y#3 ] )
|
||||
[698] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] )
|
||||
[699] if((byte) bitmap_line_ydxd::yd#5>=(byte) bitmap_line_ydxd::e#1) goto bitmap_line_ydxd::@2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] )
|
||||
to:bitmap_line_ydxd::@3
|
||||
bitmap_line_ydxd::@3: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@5
|
||||
[700] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 bitmap_line_ydxd::x#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 bitmap_line_ydxd::x#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 bitmap_line_ydxd::x#2 ] )
|
||||
[701] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] )
|
||||
to:bitmap_line_ydxd::@2
|
||||
bitmap_line_ydxd::@2: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@3 bitmap_line_ydxd::@5
|
||||
[702] (byte) bitmap_line_ydxd::e#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] )
|
||||
[702] (byte) bitmap_line_ydxd::x#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#3 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] )
|
||||
[703] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 bitmap_line_ydxd::$6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 bitmap_line_ydxd::$6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 bitmap_line_ydxd::$6 ] )
|
||||
[704] if((byte) bitmap_line_ydxd::y#3!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] )
|
||||
to:bitmap_line_ydxd::@return
|
||||
bitmap_line_ydxd::@return: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@2
|
||||
[705] return [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:623 [ mode_stdbitmap::l#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:639 [ mode_stdbitmap::l#2 ] )
|
||||
bitmap_plot: scope:[bitmap_plot] from bitmap_line_xdyd::@1 bitmap_line_xdyi::@1 bitmap_line_ydxd::@1 bitmap_line_ydxi::@1
|
||||
[669] (byte) bitmap_plot::y#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) [ bitmap_plot::x#4 bitmap_plot::y#4 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] )
|
||||
[669] (byte) bitmap_plot::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) [ bitmap_plot::x#4 bitmap_plot::y#4 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 ] )
|
||||
[670] (word) bitmap_plot::plotter_x#0 ← *((const byte[256]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[256]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] )
|
||||
[671] (word) bitmap_plot::plotter_y#0 ← *((const byte[256]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[256]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] )
|
||||
[672] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] )
|
||||
[673] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[256]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] )
|
||||
[674] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
to:bitmap_plot::@return
|
||||
bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot
|
||||
[675] return [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
to:@return
|
||||
bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@20 bitmap_line::@24
|
||||
[706] (byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@20/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@24/(byte) bitmap_line_xdyd::x1#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[706] (byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@20/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@24/(byte) bitmap_line_xdyd::xd#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[706] (byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@20/(byte) bitmap_line_xdyd::y#0 bitmap_line::@24/(byte) bitmap_line_xdyd::y#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[706] (byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@20/(byte) bitmap_line_xdyd::x#0 bitmap_line::@24/(byte) bitmap_line_xdyd::x#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[706] (byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@20/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@24/(byte) bitmap_line_xdyd::yd#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[707] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] )
|
||||
bitmap_line_ydxi: scope:[bitmap_line_ydxi] from bitmap_line::@17 bitmap_line::@27
|
||||
[676] (byte) bitmap_line_ydxi::y1#6 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxi::y1#0 bitmap_line::@27/(byte) bitmap_line_ydxi::y1#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[676] (byte) bitmap_line_ydxi::yd#5 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxi::yd#0 bitmap_line::@27/(byte) bitmap_line_ydxi::yd#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[676] (byte) bitmap_line_ydxi::y#6 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxi::y#0 bitmap_line::@27/(byte) bitmap_line_ydxi::y#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[676] (byte) bitmap_line_ydxi::x#5 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxi::x#0 bitmap_line::@27/(byte) bitmap_line_ydxi::x#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[676] (byte) bitmap_line_ydxi::xd#2 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxi::xd#0 bitmap_line::@27/(byte) bitmap_line_ydxi::xd#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 ] )
|
||||
[677] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] )
|
||||
to:bitmap_line_ydxi::@1
|
||||
bitmap_line_ydxi::@1: scope:[bitmap_line_ydxi] from bitmap_line_ydxi bitmap_line_ydxi::@2
|
||||
[678] (byte) bitmap_line_ydxi::e#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[678] (byte) bitmap_line_ydxi::y#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#2 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[678] (byte) bitmap_line_ydxi::x#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[679] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 [ bitmap_plot::x#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_plot::x#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_plot::x#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[680] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 [ bitmap_plot::x#2 bitmap_plot::y#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_plot::x#2 bitmap_plot::y#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_plot::x#2 bitmap_plot::y#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
[681] call bitmap_plot param-assignment [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] )
|
||||
to:bitmap_line_ydxi::@5
|
||||
bitmap_line_ydxi::@5: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@1
|
||||
[682] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::e#3 bitmap_line_ydxi::y#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::e#3 bitmap_line_ydxi::y#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::e#3 bitmap_line_ydxi::y#2 ] )
|
||||
[683] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] )
|
||||
[684] if((byte) bitmap_line_ydxi::yd#5>=(byte) bitmap_line_ydxi::e#1) goto bitmap_line_ydxi::@2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] )
|
||||
to:bitmap_line_ydxi::@3
|
||||
bitmap_line_ydxi::@3: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@5
|
||||
[685] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 bitmap_line_ydxi::x#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 bitmap_line_ydxi::x#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 bitmap_line_ydxi::x#2 ] )
|
||||
[686] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] )
|
||||
to:bitmap_line_ydxi::@2
|
||||
bitmap_line_ydxi::@2: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@3 bitmap_line_ydxi::@5
|
||||
[687] (byte) bitmap_line_ydxi::e#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] )
|
||||
[687] (byte) bitmap_line_ydxi::x#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#3 ) [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] )
|
||||
[688] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 bitmap_line_ydxi::$6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 bitmap_line_ydxi::$6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 bitmap_line_ydxi::$6 ] )
|
||||
[689] if((byte) bitmap_line_ydxi::y#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#6 ] )
|
||||
to:bitmap_line_ydxi::@return
|
||||
bitmap_line_ydxi::@return: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@2
|
||||
[690] return [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 ] )
|
||||
to:@return
|
||||
bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@10 bitmap_line::@6
|
||||
[691] (byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@10/(byte) bitmap_line_xdyd::x1#1 bitmap_line::@6/(byte) bitmap_line_xdyd::x1#0 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[691] (byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@10/(byte) bitmap_line_xdyd::xd#1 bitmap_line::@6/(byte) bitmap_line_xdyd::xd#0 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[691] (byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@10/(byte) bitmap_line_xdyd::y#1 bitmap_line::@6/(byte) bitmap_line_xdyd::y#0 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[691] (byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@10/(byte) bitmap_line_xdyd::x#1 bitmap_line::@6/(byte) bitmap_line_xdyd::x#0 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[691] (byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@10/(byte) bitmap_line_xdyd::yd#1 bitmap_line::@6/(byte) bitmap_line_xdyd::yd#0 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 ] )
|
||||
[692] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] )
|
||||
to:bitmap_line_xdyd::@1
|
||||
bitmap_line_xdyd::@1: scope:[bitmap_line_xdyd] from bitmap_line_xdyd bitmap_line_xdyd::@2
|
||||
[708] (byte) bitmap_line_xdyd::e#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[708] (byte) bitmap_line_xdyd::y#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[708] (byte) bitmap_line_xdyd::x#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#2 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[709] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 [ bitmap_plot::x#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_plot::x#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_plot::x#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[710] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 [ bitmap_plot::x#1 bitmap_plot::y#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_plot::x#1 bitmap_plot::y#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_plot::x#1 bitmap_plot::y#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[711] call bitmap_plot param-assignment [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[693] (byte) bitmap_line_xdyd::e#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[693] (byte) bitmap_line_xdyd::y#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[693] (byte) bitmap_line_xdyd::x#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#2 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[694] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 [ bitmap_plot::x#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_plot::x#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_plot::x#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[695] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 [ bitmap_plot::x#1 bitmap_plot::y#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_plot::x#1 bitmap_plot::y#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_plot::x#1 bitmap_plot::y#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
[696] call bitmap_plot param-assignment [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] )
|
||||
to:bitmap_line_xdyd::@5
|
||||
bitmap_line_xdyd::@5: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@1
|
||||
[712] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::x#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::x#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::x#2 ] )
|
||||
[713] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] )
|
||||
[714] if((byte) bitmap_line_xdyd::xd#5>=(byte) bitmap_line_xdyd::e#1) goto bitmap_line_xdyd::@2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] )
|
||||
[697] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::x#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::x#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::x#2 ] )
|
||||
[698] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] )
|
||||
[699] if((byte) bitmap_line_xdyd::xd#5>=(byte) bitmap_line_xdyd::e#1) goto bitmap_line_xdyd::@2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] )
|
||||
to:bitmap_line_xdyd::@3
|
||||
bitmap_line_xdyd::@3: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@5
|
||||
[715] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 bitmap_line_xdyd::y#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 bitmap_line_xdyd::y#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 bitmap_line_xdyd::y#2 ] )
|
||||
[716] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] )
|
||||
[700] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 bitmap_line_xdyd::y#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 bitmap_line_xdyd::y#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 bitmap_line_xdyd::y#2 ] )
|
||||
[701] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] )
|
||||
to:bitmap_line_xdyd::@2
|
||||
bitmap_line_xdyd::@2: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@3 bitmap_line_xdyd::@5
|
||||
[717] (byte) bitmap_line_xdyd::e#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] )
|
||||
[717] (byte) bitmap_line_xdyd::y#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#3 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] )
|
||||
[718] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 bitmap_line_xdyd::$6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 bitmap_line_xdyd::$6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 bitmap_line_xdyd::$6 ] )
|
||||
[719] if((byte) bitmap_line_xdyd::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] )
|
||||
[702] (byte) bitmap_line_xdyd::e#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] )
|
||||
[702] (byte) bitmap_line_xdyd::y#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#3 ) [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] )
|
||||
[703] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 bitmap_line_xdyd::$6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 bitmap_line_xdyd::$6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 bitmap_line_xdyd::$6 ] )
|
||||
[704] if((byte) bitmap_line_xdyd::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#6 bitmap_line_xdyd::e#6 ] )
|
||||
to:bitmap_line_xdyd::@return
|
||||
bitmap_line_xdyd::@return: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@2
|
||||
[720] return [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:617 [ mode_stdbitmap::l#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:633 [ mode_stdbitmap::l#2 ] )
|
||||
[705] return [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 ] )
|
||||
to:@return
|
||||
bitmap_line_ydxd: scope:[bitmap_line_ydxd] from bitmap_line::@20 bitmap_line::@24
|
||||
[706] (byte) bitmap_line_ydxd::y1#6 ← phi( bitmap_line::@20/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@24/(byte) bitmap_line_ydxd::y1#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[706] (byte) bitmap_line_ydxd::yd#5 ← phi( bitmap_line::@20/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@24/(byte) bitmap_line_ydxd::yd#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[706] (byte) bitmap_line_ydxd::y#7 ← phi( bitmap_line::@20/(byte) bitmap_line_ydxd::y#0 bitmap_line::@24/(byte) bitmap_line_ydxd::y#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[706] (byte) bitmap_line_ydxd::x#5 ← phi( bitmap_line::@20/(byte) bitmap_line_ydxd::x#0 bitmap_line::@24/(byte) bitmap_line_ydxd::x#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[706] (byte) bitmap_line_ydxd::xd#2 ← phi( bitmap_line::@20/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@24/(byte) bitmap_line_ydxd::xd#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 ] )
|
||||
[707] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] )
|
||||
to:bitmap_line_ydxd::@1
|
||||
bitmap_line_ydxd::@1: scope:[bitmap_line_ydxd] from bitmap_line_ydxd bitmap_line_ydxd::@2
|
||||
[708] (byte) bitmap_line_ydxd::e#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[708] (byte) bitmap_line_ydxd::y#2 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#3 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[708] (byte) bitmap_line_ydxd::x#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[709] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 [ bitmap_plot::x#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_plot::x#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_plot::x#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[710] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 [ bitmap_plot::x#3 bitmap_plot::y#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_plot::x#3 bitmap_plot::y#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_plot::x#3 bitmap_plot::y#3 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
[711] call bitmap_plot param-assignment [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] )
|
||||
to:bitmap_line_ydxd::@5
|
||||
bitmap_line_ydxd::@5: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@1
|
||||
[712] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::e#3 bitmap_line_ydxd::y#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::e#3 bitmap_line_ydxd::y#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::e#3 bitmap_line_ydxd::y#3 ] )
|
||||
[713] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] )
|
||||
[714] if((byte) bitmap_line_ydxd::yd#5>=(byte) bitmap_line_ydxd::e#1) goto bitmap_line_ydxd::@2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] )
|
||||
to:bitmap_line_ydxd::@3
|
||||
bitmap_line_ydxd::@3: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@5
|
||||
[715] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 bitmap_line_ydxd::x#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 bitmap_line_ydxd::x#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 bitmap_line_ydxd::x#2 ] )
|
||||
[716] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] )
|
||||
to:bitmap_line_ydxd::@2
|
||||
bitmap_line_ydxd::@2: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@3 bitmap_line_ydxd::@5
|
||||
[717] (byte) bitmap_line_ydxd::e#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] )
|
||||
[717] (byte) bitmap_line_ydxd::x#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#3 ) [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] )
|
||||
[718] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 bitmap_line_ydxd::$6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 bitmap_line_ydxd::$6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 bitmap_line_ydxd::$6 ] )
|
||||
[719] if((byte) bitmap_line_ydxd::y#3!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#6 ] )
|
||||
to:bitmap_line_ydxd::@return
|
||||
bitmap_line_ydxd::@return: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@2
|
||||
[720] return [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 ] )
|
||||
to:@return
|
||||
bitmap_clear: scope:[bitmap_clear] from mode_stdbitmap::@9
|
||||
[721] (word~) bitmap_clear::$3 ← *((const byte[256]) bitmap_plot_xhi#0+(byte/signed byte/word/signed word/dword/signed dword) 0) w= *((const byte[256]) bitmap_plot_xlo#0+(byte/signed byte/word/signed word/dword/signed dword) 0) [ bitmap_clear::$3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_clear:580 [ bitmap_clear::$3 ] )
|
||||
|
File diff suppressed because one or more lines are too long
@ -216,21 +216,21 @@
|
||||
(label) bitmap_line::@9
|
||||
(label) bitmap_line::@return
|
||||
(byte) bitmap_line::x0
|
||||
(byte) bitmap_line::x0#0 x0 zp ZP_BYTE:11 5.173913043478264
|
||||
(byte) bitmap_line::x0#0 x0 zp ZP_BYTE:9 5.173913043478264
|
||||
(byte) bitmap_line::x1
|
||||
(byte) bitmap_line::x1#0 x1 zp ZP_BYTE:12 5.409090909090908
|
||||
(byte) bitmap_line::xd
|
||||
(byte) bitmap_line::xd#0 xd zp ZP_BYTE:7 0.7
|
||||
(byte) bitmap_line::xd#1 xd zp ZP_BYTE:7 0.7
|
||||
(byte) bitmap_line::xd#0 xd zp ZP_BYTE:8 0.7
|
||||
(byte) bitmap_line::xd#1 xd zp ZP_BYTE:8 0.7
|
||||
(byte) bitmap_line::y0
|
||||
(byte) bitmap_line::y0#0 y0 zp ZP_BYTE:9 5.952380952380948
|
||||
(byte) bitmap_line::y0#0 y0 zp ZP_BYTE:10 5.952380952380948
|
||||
(byte) bitmap_line::y1
|
||||
(byte) bitmap_line::y1#0 reg byte y 6.249999999999996
|
||||
(byte) bitmap_line::yd
|
||||
(byte) bitmap_line::yd#0 yd zp ZP_BYTE:8 0.8888888888888888
|
||||
(byte) bitmap_line::yd#1 yd zp ZP_BYTE:8 0.8888888888888888
|
||||
(byte) bitmap_line::yd#10 yd zp ZP_BYTE:8 0.8888888888888888
|
||||
(byte) bitmap_line::yd#3 yd zp ZP_BYTE:8 0.8888888888888888
|
||||
(byte) bitmap_line::yd#0 yd zp ZP_BYTE:7 0.8888888888888888
|
||||
(byte) bitmap_line::yd#1 yd zp ZP_BYTE:7 0.8888888888888888
|
||||
(byte) bitmap_line::yd#10 yd zp ZP_BYTE:7 0.8888888888888888
|
||||
(byte) bitmap_line::yd#3 yd zp ZP_BYTE:7 0.8888888888888888
|
||||
(void()) bitmap_line_xdyd((byte) bitmap_line_xdyd::x , (byte) bitmap_line_xdyd::y , (byte) bitmap_line_xdyd::x1 , (byte) bitmap_line_xdyd::xd , (byte) bitmap_line_xdyd::yd)
|
||||
(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 $6 zp ZP_BYTE:11 2002.0
|
||||
(label) bitmap_line_xdyd::@1
|
||||
@ -239,11 +239,11 @@
|
||||
(label) bitmap_line_xdyd::@5
|
||||
(label) bitmap_line_xdyd::@return
|
||||
(byte) bitmap_line_xdyd::e
|
||||
(byte) bitmap_line_xdyd::e#0 e zp ZP_BYTE:10 4.0
|
||||
(byte) bitmap_line_xdyd::e#1 e zp ZP_BYTE:10 1334.6666666666667
|
||||
(byte) bitmap_line_xdyd::e#2 e zp ZP_BYTE:10 2002.0
|
||||
(byte) bitmap_line_xdyd::e#3 e zp ZP_BYTE:10 400.79999999999995
|
||||
(byte) bitmap_line_xdyd::e#6 e zp ZP_BYTE:10 1001.0
|
||||
(byte) bitmap_line_xdyd::e#0 e zp ZP_BYTE:9 4.0
|
||||
(byte) bitmap_line_xdyd::e#1 e zp ZP_BYTE:9 1334.6666666666667
|
||||
(byte) bitmap_line_xdyd::e#2 e zp ZP_BYTE:9 2002.0
|
||||
(byte) bitmap_line_xdyd::e#3 e zp ZP_BYTE:9 400.79999999999995
|
||||
(byte) bitmap_line_xdyd::e#6 e zp ZP_BYTE:9 1001.0
|
||||
(byte) bitmap_line_xdyd::x
|
||||
(byte) bitmap_line_xdyd::x#0 reg byte x 0.8
|
||||
(byte) bitmap_line_xdyd::x#1 reg byte x 0.8
|
||||
@ -255,20 +255,20 @@
|
||||
(byte) bitmap_line_xdyd::x1#1 x1 zp ZP_BYTE:12 1.3333333333333333
|
||||
(byte) bitmap_line_xdyd::x1#6 x1 zp ZP_BYTE:12 71.78571428571429
|
||||
(byte) bitmap_line_xdyd::xd
|
||||
(byte) bitmap_line_xdyd::xd#0 xd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_xdyd::xd#1 xd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_xdyd::xd#5 xd zp ZP_BYTE:7 143.28571428571428
|
||||
(byte) bitmap_line_xdyd::xd#0 xd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_xdyd::xd#1 xd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_xdyd::xd#5 xd zp ZP_BYTE:8 143.28571428571428
|
||||
(byte) bitmap_line_xdyd::y
|
||||
(byte) bitmap_line_xdyd::y#0 y zp ZP_BYTE:9 1.0
|
||||
(byte) bitmap_line_xdyd::y#1 y zp ZP_BYTE:9 1.0
|
||||
(byte) bitmap_line_xdyd::y#2 y zp ZP_BYTE:9 1001.0
|
||||
(byte) bitmap_line_xdyd::y#3 y zp ZP_BYTE:9 572.2857142857142
|
||||
(byte) bitmap_line_xdyd::y#5 y zp ZP_BYTE:9 3.0
|
||||
(byte) bitmap_line_xdyd::y#6 y zp ZP_BYTE:9 1001.0
|
||||
(byte) bitmap_line_xdyd::y#0 y zp ZP_BYTE:10 1.0
|
||||
(byte) bitmap_line_xdyd::y#1 y zp ZP_BYTE:10 1.0
|
||||
(byte) bitmap_line_xdyd::y#2 y zp ZP_BYTE:10 1001.0
|
||||
(byte) bitmap_line_xdyd::y#3 y zp ZP_BYTE:10 572.2857142857142
|
||||
(byte) bitmap_line_xdyd::y#5 y zp ZP_BYTE:10 3.0
|
||||
(byte) bitmap_line_xdyd::y#6 y zp ZP_BYTE:10 1001.0
|
||||
(byte) bitmap_line_xdyd::yd
|
||||
(byte) bitmap_line_xdyd::yd#0 yd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_xdyd::yd#1 yd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_xdyd::yd#2 yd zp ZP_BYTE:8 71.92857142857143
|
||||
(byte) bitmap_line_xdyd::yd#0 yd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_xdyd::yd#1 yd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_xdyd::yd#2 yd zp ZP_BYTE:7 71.92857142857143
|
||||
(void()) bitmap_line_xdyi((byte) bitmap_line_xdyi::x , (byte) bitmap_line_xdyi::y , (byte) bitmap_line_xdyi::x1 , (byte) bitmap_line_xdyi::xd , (byte) bitmap_line_xdyi::yd)
|
||||
(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 $6 zp ZP_BYTE:12 2002.0
|
||||
(label) bitmap_line_xdyi::@1
|
||||
@ -277,11 +277,11 @@
|
||||
(label) bitmap_line_xdyi::@5
|
||||
(label) bitmap_line_xdyi::@return
|
||||
(byte) bitmap_line_xdyi::e
|
||||
(byte) bitmap_line_xdyi::e#0 e zp ZP_BYTE:10 4.0
|
||||
(byte) bitmap_line_xdyi::e#1 e zp ZP_BYTE:10 1334.6666666666667
|
||||
(byte) bitmap_line_xdyi::e#2 e zp ZP_BYTE:10 2002.0
|
||||
(byte) bitmap_line_xdyi::e#3 e zp ZP_BYTE:10 400.79999999999995
|
||||
(byte) bitmap_line_xdyi::e#6 e zp ZP_BYTE:10 1001.0
|
||||
(byte) bitmap_line_xdyi::e#0 e zp ZP_BYTE:11 4.0
|
||||
(byte) bitmap_line_xdyi::e#1 e zp ZP_BYTE:11 1334.6666666666667
|
||||
(byte) bitmap_line_xdyi::e#2 e zp ZP_BYTE:11 2002.0
|
||||
(byte) bitmap_line_xdyi::e#3 e zp ZP_BYTE:11 400.79999999999995
|
||||
(byte) bitmap_line_xdyi::e#6 e zp ZP_BYTE:11 1001.0
|
||||
(byte) bitmap_line_xdyi::x
|
||||
(byte) bitmap_line_xdyi::x#0 reg byte x 0.8
|
||||
(byte) bitmap_line_xdyi::x#1 reg byte x 0.8
|
||||
@ -289,24 +289,24 @@
|
||||
(byte) bitmap_line_xdyi::x#3 reg byte x 751.25
|
||||
(byte) bitmap_line_xdyi::x#6 reg byte x 3.0
|
||||
(byte) bitmap_line_xdyi::x1
|
||||
(byte) bitmap_line_xdyi::x1#0 x1 zp ZP_BYTE:11 1.3333333333333333
|
||||
(byte) bitmap_line_xdyi::x1#1 x1 zp ZP_BYTE:11 1.3333333333333333
|
||||
(byte) bitmap_line_xdyi::x1#6 x1 zp ZP_BYTE:11 71.78571428571429
|
||||
(byte) bitmap_line_xdyi::x1#0 x1 zp ZP_BYTE:9 1.3333333333333333
|
||||
(byte) bitmap_line_xdyi::x1#1 x1 zp ZP_BYTE:9 1.3333333333333333
|
||||
(byte) bitmap_line_xdyi::x1#6 x1 zp ZP_BYTE:9 71.78571428571429
|
||||
(byte) bitmap_line_xdyi::xd
|
||||
(byte) bitmap_line_xdyi::xd#0 xd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_xdyi::xd#1 xd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_xdyi::xd#5 xd zp ZP_BYTE:7 143.28571428571428
|
||||
(byte) bitmap_line_xdyi::xd#0 xd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_xdyi::xd#1 xd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_xdyi::xd#5 xd zp ZP_BYTE:8 143.28571428571428
|
||||
(byte) bitmap_line_xdyi::y
|
||||
(byte) bitmap_line_xdyi::y#0 y zp ZP_BYTE:9 1.0
|
||||
(byte) bitmap_line_xdyi::y#1 y zp ZP_BYTE:9 1.0
|
||||
(byte) bitmap_line_xdyi::y#2 y zp ZP_BYTE:9 1001.0
|
||||
(byte) bitmap_line_xdyi::y#3 y zp ZP_BYTE:9 572.2857142857142
|
||||
(byte) bitmap_line_xdyi::y#5 y zp ZP_BYTE:9 3.0
|
||||
(byte) bitmap_line_xdyi::y#6 y zp ZP_BYTE:9 1001.0
|
||||
(byte) bitmap_line_xdyi::y#0 y zp ZP_BYTE:10 1.0
|
||||
(byte) bitmap_line_xdyi::y#1 y zp ZP_BYTE:10 1.0
|
||||
(byte) bitmap_line_xdyi::y#2 y zp ZP_BYTE:10 1001.0
|
||||
(byte) bitmap_line_xdyi::y#3 y zp ZP_BYTE:10 572.2857142857142
|
||||
(byte) bitmap_line_xdyi::y#5 y zp ZP_BYTE:10 3.0
|
||||
(byte) bitmap_line_xdyi::y#6 y zp ZP_BYTE:10 1001.0
|
||||
(byte) bitmap_line_xdyi::yd
|
||||
(byte) bitmap_line_xdyi::yd#0 yd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_xdyi::yd#1 yd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_xdyi::yd#2 yd zp ZP_BYTE:8 71.92857142857143
|
||||
(byte) bitmap_line_xdyi::yd#0 yd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_xdyi::yd#1 yd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_xdyi::yd#2 yd zp ZP_BYTE:7 71.92857142857143
|
||||
(void()) bitmap_line_ydxd((byte) bitmap_line_ydxd::y , (byte) bitmap_line_ydxd::x , (byte) bitmap_line_ydxd::y1 , (byte) bitmap_line_ydxd::yd , (byte) bitmap_line_ydxd::xd)
|
||||
(byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 reg byte y 2002.0
|
||||
(label) bitmap_line_ydxd::@1
|
||||
@ -315,11 +315,11 @@
|
||||
(label) bitmap_line_ydxd::@5
|
||||
(label) bitmap_line_ydxd::@return
|
||||
(byte) bitmap_line_ydxd::e
|
||||
(byte) bitmap_line_ydxd::e#0 e zp ZP_BYTE:11 4.0
|
||||
(byte) bitmap_line_ydxd::e#1 e zp ZP_BYTE:11 1334.6666666666667
|
||||
(byte) bitmap_line_ydxd::e#2 e zp ZP_BYTE:11 2002.0
|
||||
(byte) bitmap_line_ydxd::e#3 e zp ZP_BYTE:11 400.79999999999995
|
||||
(byte) bitmap_line_ydxd::e#6 e zp ZP_BYTE:11 1001.0
|
||||
(byte) bitmap_line_ydxd::e#0 e zp ZP_BYTE:9 4.0
|
||||
(byte) bitmap_line_ydxd::e#1 e zp ZP_BYTE:9 1334.6666666666667
|
||||
(byte) bitmap_line_ydxd::e#2 e zp ZP_BYTE:9 2002.0
|
||||
(byte) bitmap_line_ydxd::e#3 e zp ZP_BYTE:9 400.79999999999995
|
||||
(byte) bitmap_line_ydxd::e#6 e zp ZP_BYTE:9 1001.0
|
||||
(byte) bitmap_line_ydxd::x
|
||||
(byte) bitmap_line_ydxd::x#0 reg byte x 1.0
|
||||
(byte) bitmap_line_ydxd::x#1 reg byte x 1.0
|
||||
@ -328,23 +328,23 @@
|
||||
(byte) bitmap_line_ydxd::x#5 reg byte x 3.0
|
||||
(byte) bitmap_line_ydxd::x#6 reg byte x 1001.0
|
||||
(byte) bitmap_line_ydxd::xd
|
||||
(byte) bitmap_line_ydxd::xd#0 xd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_ydxd::xd#1 xd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_ydxd::xd#2 xd zp ZP_BYTE:7 71.92857142857143
|
||||
(byte) bitmap_line_ydxd::xd#0 xd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_ydxd::xd#1 xd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_ydxd::xd#2 xd zp ZP_BYTE:8 71.92857142857143
|
||||
(byte) bitmap_line_ydxd::y
|
||||
(byte) bitmap_line_ydxd::y#0 y zp ZP_BYTE:10 0.8
|
||||
(byte) bitmap_line_ydxd::y#1 y zp ZP_BYTE:10 0.8
|
||||
(byte) bitmap_line_ydxd::y#2 y zp ZP_BYTE:10 751.25
|
||||
(byte) bitmap_line_ydxd::y#3 y zp ZP_BYTE:10 375.375
|
||||
(byte) bitmap_line_ydxd::y#7 y zp ZP_BYTE:10 3.0
|
||||
(byte) bitmap_line_ydxd::y#0 y zp ZP_BYTE:11 0.8
|
||||
(byte) bitmap_line_ydxd::y#1 y zp ZP_BYTE:11 0.8
|
||||
(byte) bitmap_line_ydxd::y#2 y zp ZP_BYTE:11 751.25
|
||||
(byte) bitmap_line_ydxd::y#3 y zp ZP_BYTE:11 375.375
|
||||
(byte) bitmap_line_ydxd::y#7 y zp ZP_BYTE:11 3.0
|
||||
(byte) bitmap_line_ydxd::y1
|
||||
(byte) bitmap_line_ydxd::y1#0 y1 zp ZP_BYTE:9 1.3333333333333333
|
||||
(byte) bitmap_line_ydxd::y1#1 y1 zp ZP_BYTE:9 1.3333333333333333
|
||||
(byte) bitmap_line_ydxd::y1#6 y1 zp ZP_BYTE:9 71.78571428571429
|
||||
(byte) bitmap_line_ydxd::y1#0 y1 zp ZP_BYTE:10 1.3333333333333333
|
||||
(byte) bitmap_line_ydxd::y1#1 y1 zp ZP_BYTE:10 1.3333333333333333
|
||||
(byte) bitmap_line_ydxd::y1#6 y1 zp ZP_BYTE:10 71.78571428571429
|
||||
(byte) bitmap_line_ydxd::yd
|
||||
(byte) bitmap_line_ydxd::yd#0 yd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_ydxd::yd#1 yd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_ydxd::yd#5 yd zp ZP_BYTE:8 143.28571428571428
|
||||
(byte) bitmap_line_ydxd::yd#0 yd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_ydxd::yd#1 yd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_ydxd::yd#5 yd zp ZP_BYTE:7 143.28571428571428
|
||||
(void()) bitmap_line_ydxi((byte) bitmap_line_ydxi::y , (byte) bitmap_line_ydxi::x , (byte) bitmap_line_ydxi::y1 , (byte) bitmap_line_ydxi::yd , (byte) bitmap_line_ydxi::xd)
|
||||
(byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 reg byte y 2002.0
|
||||
(label) bitmap_line_ydxi::@1
|
||||
@ -353,11 +353,11 @@
|
||||
(label) bitmap_line_ydxi::@5
|
||||
(label) bitmap_line_ydxi::@return
|
||||
(byte) bitmap_line_ydxi::e
|
||||
(byte) bitmap_line_ydxi::e#0 e zp ZP_BYTE:11 4.0
|
||||
(byte) bitmap_line_ydxi::e#1 e zp ZP_BYTE:11 1334.6666666666667
|
||||
(byte) bitmap_line_ydxi::e#2 e zp ZP_BYTE:11 2002.0
|
||||
(byte) bitmap_line_ydxi::e#3 e zp ZP_BYTE:11 400.79999999999995
|
||||
(byte) bitmap_line_ydxi::e#6 e zp ZP_BYTE:11 1001.0
|
||||
(byte) bitmap_line_ydxi::e#0 e zp ZP_BYTE:9 4.0
|
||||
(byte) bitmap_line_ydxi::e#1 e zp ZP_BYTE:9 1334.6666666666667
|
||||
(byte) bitmap_line_ydxi::e#2 e zp ZP_BYTE:9 2002.0
|
||||
(byte) bitmap_line_ydxi::e#3 e zp ZP_BYTE:9 400.79999999999995
|
||||
(byte) bitmap_line_ydxi::e#6 e zp ZP_BYTE:9 1001.0
|
||||
(byte) bitmap_line_ydxi::x
|
||||
(byte) bitmap_line_ydxi::x#0 reg byte x 1.0
|
||||
(byte) bitmap_line_ydxi::x#1 reg byte x 1.0
|
||||
@ -366,23 +366,23 @@
|
||||
(byte) bitmap_line_ydxi::x#5 reg byte x 3.0
|
||||
(byte) bitmap_line_ydxi::x#6 reg byte x 1001.0
|
||||
(byte) bitmap_line_ydxi::xd
|
||||
(byte) bitmap_line_ydxi::xd#0 xd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_ydxi::xd#1 xd zp ZP_BYTE:7 4.0
|
||||
(byte) bitmap_line_ydxi::xd#2 xd zp ZP_BYTE:7 71.92857142857143
|
||||
(byte) bitmap_line_ydxi::xd#0 xd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_ydxi::xd#1 xd zp ZP_BYTE:8 4.0
|
||||
(byte) bitmap_line_ydxi::xd#2 xd zp ZP_BYTE:8 71.92857142857143
|
||||
(byte) bitmap_line_ydxi::y
|
||||
(byte) bitmap_line_ydxi::y#0 y zp ZP_BYTE:10 0.8
|
||||
(byte) bitmap_line_ydxi::y#1 y zp ZP_BYTE:10 0.8
|
||||
(byte) bitmap_line_ydxi::y#2 y zp ZP_BYTE:10 375.375
|
||||
(byte) bitmap_line_ydxi::y#3 y zp ZP_BYTE:10 751.25
|
||||
(byte) bitmap_line_ydxi::y#6 y zp ZP_BYTE:10 3.0
|
||||
(byte) bitmap_line_ydxi::y#0 y zp ZP_BYTE:11 0.8
|
||||
(byte) bitmap_line_ydxi::y#1 y zp ZP_BYTE:11 0.8
|
||||
(byte) bitmap_line_ydxi::y#2 y zp ZP_BYTE:11 375.375
|
||||
(byte) bitmap_line_ydxi::y#3 y zp ZP_BYTE:11 751.25
|
||||
(byte) bitmap_line_ydxi::y#6 y zp ZP_BYTE:11 3.0
|
||||
(byte) bitmap_line_ydxi::y1
|
||||
(byte) bitmap_line_ydxi::y1#0 y1 zp ZP_BYTE:9 1.3333333333333333
|
||||
(byte) bitmap_line_ydxi::y1#1 y1 zp ZP_BYTE:9 1.3333333333333333
|
||||
(byte) bitmap_line_ydxi::y1#6 y1 zp ZP_BYTE:9 71.78571428571429
|
||||
(byte) bitmap_line_ydxi::y1#0 y1 zp ZP_BYTE:10 1.3333333333333333
|
||||
(byte) bitmap_line_ydxi::y1#1 y1 zp ZP_BYTE:10 1.3333333333333333
|
||||
(byte) bitmap_line_ydxi::y1#6 y1 zp ZP_BYTE:10 71.78571428571429
|
||||
(byte) bitmap_line_ydxi::yd
|
||||
(byte) bitmap_line_ydxi::yd#0 yd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_ydxi::yd#1 yd zp ZP_BYTE:8 2.0
|
||||
(byte) bitmap_line_ydxi::yd#5 yd zp ZP_BYTE:8 143.28571428571428
|
||||
(byte) bitmap_line_ydxi::yd#0 yd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_ydxi::yd#1 yd zp ZP_BYTE:7 2.0
|
||||
(byte) bitmap_line_ydxi::yd#5 yd zp ZP_BYTE:7 143.28571428571428
|
||||
(void()) bitmap_plot((byte) bitmap_plot::x , (byte) bitmap_plot::y)
|
||||
(word~) bitmap_plot::$0 $0 zp ZP_WORD:2 1.0
|
||||
(byte~) bitmap_plot::$1 reg byte a 4.0
|
||||
@ -1189,9 +1189,9 @@ reg byte y [ keyboard_key_pressed::key#20 ]
|
||||
reg byte a [ dtvSetCpuBankSegment1::cpuBankIdx#3 dtvSetCpuBankSegment1::cpuBankIdx#1 ]
|
||||
reg byte x [ mode_8bpppixelcell::i#2 mode_8bpppixelcell::i#1 ]
|
||||
reg byte x [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ]
|
||||
zp ZP_BYTE:7 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#1 bitmap_line_ydxi::xd#0 bitmap_line::xd#1 bitmap_line::xd#0 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#1 bitmap_line_ydxd::xd#0 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#0 bitmap_line_xdyd::xd#1 keyboard_key_pressed::colidx#0 mode_8bpppixelcell::$14 mode_twoplanebitmap::$16 mode_sixsfred2::$15 mode_hicolmcchar::$26 mode_hicolecmchar::$26 mode_hicolstdchar::$25 mode_stdbitmap::col2#0 mode_mcchar::$28 mode_ecmchar::$28 mode_stdchar::$27 ]
|
||||
zp ZP_BYTE:8 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#0 mode_8bpppixelcell::bits#1 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#1 bitmap_line_ydxi::yd#0 bitmap_line::yd#1 bitmap_line::yd#10 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#1 bitmap_line_ydxd::yd#0 bitmap_line::yd#0 bitmap_line::yd#3 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#0 bitmap_line_xdyd::yd#1 ]
|
||||
zp ZP_BYTE:9 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#1 bitmap_line_ydxi::y1#0 bitmap_line::y0#0 bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#1 bitmap_line_ydxd::y1#0 bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 ]
|
||||
zp ZP_BYTE:7 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#1 bitmap_line_xdyi::yd#0 bitmap_line::yd#1 bitmap_line::yd#10 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::yd#0 bitmap_line_ydxi::yd#1 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::yd#1 bitmap_line_xdyd::yd#0 bitmap_line::yd#0 bitmap_line::yd#3 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::yd#0 bitmap_line_ydxd::yd#1 keyboard_key_pressed::colidx#0 mode_8bpppixelcell::$14 mode_twoplanebitmap::$16 mode_sixsfred2::$15 mode_hicolmcchar::$26 mode_hicolecmchar::$26 mode_hicolstdchar::$25 mode_stdbitmap::col2#0 mode_mcchar::$28 mode_ecmchar::$28 mode_stdchar::$27 ]
|
||||
zp ZP_BYTE:8 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#0 mode_8bpppixelcell::bits#1 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#1 bitmap_line_xdyi::xd#0 bitmap_line::xd#1 bitmap_line::xd#0 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::xd#0 bitmap_line_ydxi::xd#1 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::xd#1 bitmap_line_xdyd::xd#0 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::xd#0 bitmap_line_ydxd::xd#1 ]
|
||||
zp ZP_BYTE:9 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#1 bitmap_line_xdyi::x1#0 bitmap_line::x0#0 bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ]
|
||||
reg byte x [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ]
|
||||
reg byte a [ mode_8bpppixelcell::c#2 mode_8bpppixelcell::c#3 ]
|
||||
reg byte x [ mode_sixsfred::i#2 mode_sixsfred::i#1 ]
|
||||
@ -1214,15 +1214,15 @@ reg byte x [ mode_hicolstdchar::i#2 mode_hicolstdchar::i#1 ]
|
||||
reg byte x [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ]
|
||||
reg byte x [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ]
|
||||
reg byte x [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ]
|
||||
reg byte x [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ]
|
||||
zp ZP_BYTE:10 [ bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#2 bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#3 bitmap_line_xdyd::e#3 bitmap_line_xdyd::e#0 bitmap_line_xdyd::e#6 bitmap_line_xdyd::e#2 bitmap_line_xdyd::e#1 ]
|
||||
zp ZP_BYTE:11 [ bitmap_line_ydxi::e#3 bitmap_line_ydxi::e#0 bitmap_line_ydxi::e#6 bitmap_line_ydxi::e#2 bitmap_line_ydxi::e#1 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 bitmap_line::x0#0 bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 bitmap_line_xdyd::$6 ]
|
||||
reg byte x [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#2 ]
|
||||
zp ZP_BYTE:10 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 bitmap_line::y0#0 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y1#0 bitmap_line_ydxi::y1#1 bitmap_line_xdyd::y#3 bitmap_line_xdyd::y#5 bitmap_line_xdyd::y#1 bitmap_line_xdyd::y#0 bitmap_line_xdyd::y#6 bitmap_line_xdyd::y#2 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y1#0 bitmap_line_ydxd::y1#1 ]
|
||||
zp ZP_BYTE:11 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 bitmap_line_ydxi::y#3 bitmap_line_ydxi::y#6 bitmap_line_ydxi::y#0 bitmap_line_ydxi::y#1 bitmap_line_ydxi::y#2 bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 bitmap_line_xdyd::$6 ]
|
||||
reg byte x [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ]
|
||||
reg byte y [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ]
|
||||
reg byte x [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ]
|
||||
reg byte x [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ]
|
||||
zp ZP_BYTE:12 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#0 bitmap_line_xdyd::x1#1 bitmap_line::x1#0 bitmap_line_xdyi::$6 ]
|
||||
reg byte x [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#2 ]
|
||||
reg byte x [ bitmap_line_ydxi::x#3 bitmap_line_ydxi::x#5 bitmap_line_ydxi::x#0 bitmap_line_ydxi::x#1 bitmap_line_ydxi::x#6 bitmap_line_ydxi::x#2 ]
|
||||
zp ZP_BYTE:12 [ bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x1#1 bitmap_line_xdyd::x1#0 bitmap_line::x1#0 bitmap_line_xdyi::$6 ]
|
||||
reg byte x [ bitmap_line_xdyd::x#3 bitmap_line_xdyd::x#6 bitmap_line_xdyd::x#1 bitmap_line_xdyd::x#0 bitmap_line_xdyd::x#2 ]
|
||||
reg byte x [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ]
|
||||
reg byte x [ bitmap_clear::x#2 bitmap_clear::x#1 ]
|
||||
reg byte x [ bitmap_init::x#2 bitmap_init::x#1 ]
|
||||
reg byte y [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ]
|
||||
@ -1312,8 +1312,8 @@ reg byte y [ mode_stdbitmap::col#0 ]
|
||||
reg byte a [ mode_stdbitmap::$22 ]
|
||||
reg byte a [ mode_stdbitmap::$23 ]
|
||||
reg byte y [ bitmap_line::y1#0 ]
|
||||
reg byte y [ bitmap_line_ydxi::$6 ]
|
||||
reg byte a [ bitmap_plot::$1 ]
|
||||
reg byte y [ bitmap_line_ydxi::$6 ]
|
||||
reg byte y [ bitmap_line_ydxd::$6 ]
|
||||
reg byte a [ bitmap_init::$0 ]
|
||||
reg byte a [ bitmap_init::$7 ]
|
||||
|
@ -15,17 +15,15 @@ main: {
|
||||
sta SCREEN+0
|
||||
lda #midb
|
||||
sta SCREEN+1
|
||||
ldx SCREEN+0
|
||||
tay
|
||||
stx $ff
|
||||
cpy $ff
|
||||
bne b1
|
||||
lda #5
|
||||
lda SCREEN+0
|
||||
cmp SCREEN+1
|
||||
beq b1
|
||||
lda #2
|
||||
sta BGCOL
|
||||
breturn:
|
||||
rts
|
||||
b1:
|
||||
lda #2
|
||||
lda #5
|
||||
sta BGCOL
|
||||
jmp breturn
|
||||
}
|
||||
|
@ -10,14 +10,14 @@
|
||||
main: scope:[main] from @1
|
||||
[4] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (const byte) main::midw#0 [ ] ( main:2 [ ] )
|
||||
[5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (const byte) main::midb#0 [ ] ( main:2 [ ] )
|
||||
[6] if(*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0)!=*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 [ ] ( main:2 [ ] )
|
||||
[6] if(*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0)==*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 [ ] ( main:2 [ ] )
|
||||
to:main::@3
|
||||
main::@3: scope:[main] from main
|
||||
[7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] )
|
||||
[7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] )
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@1 main::@3
|
||||
[8] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
||||
main::@1: scope:[main] from main
|
||||
[9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] )
|
||||
[9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] )
|
||||
to:main::@return
|
||||
|
@ -40,12 +40,11 @@ proc (void()) main()
|
||||
*((byte*) main::SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) main::midb
|
||||
(byte*) main::BGCOL ← (word/dword/signed dword) 53281
|
||||
(boolean~) main::$7 ← *((byte*) main::SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) == *((byte*) main::SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 1)
|
||||
(boolean~) main::$8 ← ! (boolean~) main::$7
|
||||
if((boolean~) main::$8) goto main::@1
|
||||
*((byte*) main::BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 5
|
||||
if((boolean~) main::$7) goto main::@1
|
||||
*((byte*) main::BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
goto main::@2
|
||||
main::@1:
|
||||
*((byte*) main::BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
*((byte*) main::BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 5
|
||||
main::@2:
|
||||
main::@return:
|
||||
return
|
||||
@ -62,7 +61,6 @@ SYMBOLS
|
||||
(byte~) main::$5
|
||||
(byte/signed word/word/dword/signed dword~) main::$6
|
||||
(boolean~) main::$7
|
||||
(boolean~) main::$8
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
(label) main::@return
|
||||
@ -100,14 +98,13 @@ main: scope:[main] from
|
||||
*((byte*) main::SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) main::midb
|
||||
(byte*) main::BGCOL ← ((byte*)) (word/dword/signed dword) 53281
|
||||
(boolean~) main::$7 ← *((byte*) main::SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) == *((byte*) main::SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 1)
|
||||
(boolean~) main::$8 ← ! (boolean~) main::$7
|
||||
if((boolean~) main::$8) goto main::@1
|
||||
if((boolean~) main::$7) goto main::@1
|
||||
to:main::@3
|
||||
main::@1: scope:[main] from main main::@4
|
||||
*((byte*) main::BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
*((byte*) main::BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 5
|
||||
to:main::@2
|
||||
main::@3: scope:[main] from main
|
||||
*((byte*) main::BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 5
|
||||
*((byte*) main::BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
to:main::@2
|
||||
main::@2: scope:[main] from main::@1 main::@3
|
||||
to:main::@return
|
||||
@ -149,16 +146,15 @@ main: scope:[main] from @1
|
||||
*((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) main::midb#0
|
||||
(byte*) main::BGCOL#0 ← ((byte*)) (word/dword/signed dword) 53281
|
||||
(boolean~) main::$7 ← *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) == *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1)
|
||||
(boolean~) main::$8 ← ! (boolean~) main::$7
|
||||
if((boolean~) main::$8) goto main::@1
|
||||
if((boolean~) main::$7) goto main::@1
|
||||
to:main::@3
|
||||
main::@1: scope:[main] from main
|
||||
(byte*) main::BGCOL#1 ← phi( main/(byte*) main::BGCOL#0 )
|
||||
*((byte*) main::BGCOL#1) ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
*((byte*) main::BGCOL#1) ← (byte/signed byte/word/signed word/dword/signed dword) 5
|
||||
to:main::@return
|
||||
main::@3: scope:[main] from main
|
||||
(byte*) main::BGCOL#2 ← phi( main/(byte*) main::BGCOL#0 )
|
||||
*((byte*) main::BGCOL#2) ← (byte/signed byte/word/signed word/dword/signed dword) 5
|
||||
*((byte*) main::BGCOL#2) ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@1 main::@3
|
||||
return
|
||||
@ -184,7 +180,6 @@ SYMBOL TABLE SSA
|
||||
(byte~) main::$5
|
||||
(byte/signed word/word/dword/signed dword~) main::$6
|
||||
(boolean~) main::$7
|
||||
(boolean~) main::$8
|
||||
(label) main::@1
|
||||
(label) main::@3
|
||||
(label) main::@return
|
||||
@ -210,14 +205,12 @@ SYMBOL TABLE SSA
|
||||
OPTIMIZING CONTROL FLOW GRAPH
|
||||
Culled Empty Block (label) @2
|
||||
Succesful SSA optimization Pass2CullEmptyBlocks
|
||||
Inversing boolean not (boolean~) main::$8 ← *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) != *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) from (boolean~) main::$7 ← *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) == *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1)
|
||||
Succesful SSA optimization Pass2UnaryNotSimplification
|
||||
Alias (byte) main::midw#0 = (byte/signed word/word/dword/signed dword~) main::$3
|
||||
Alias (byte) main::sumb#0 = (byte~) main::$4
|
||||
Alias (byte) main::midb#0 = (byte/signed word/word/dword/signed dword~) main::$6
|
||||
Alias (byte*) main::BGCOL#0 = (byte*) main::BGCOL#1 (byte*) main::BGCOL#2
|
||||
Succesful SSA optimization Pass2AliasElimination
|
||||
Simple Condition (boolean~) main::$8 if(*((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0)!=*((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1
|
||||
Simple Condition (boolean~) main::$7 if(*((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0)==*((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1
|
||||
Succesful SSA optimization Pass2ConditionalJumpSimplification
|
||||
Constant (const byte*) main::SCREEN#0 = ((byte*))1024
|
||||
Constant (const byte) main::min#0 = 10
|
||||
@ -278,16 +271,16 @@ FINAL CONTROL FLOW GRAPH
|
||||
main: scope:[main] from @1
|
||||
[4] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (const byte) main::midw#0 [ ] ( main:2 [ ] )
|
||||
[5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (const byte) main::midb#0 [ ] ( main:2 [ ] )
|
||||
[6] if(*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0)!=*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 [ ] ( main:2 [ ] )
|
||||
[6] if(*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0)==*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 [ ] ( main:2 [ ] )
|
||||
to:main::@3
|
||||
main::@3: scope:[main] from main
|
||||
[7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] )
|
||||
[7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] )
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@1 main::@3
|
||||
[8] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
||||
main::@1: scope:[main] from main
|
||||
[9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] )
|
||||
[9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] )
|
||||
to:main::@return
|
||||
|
||||
DOMINATORS
|
||||
@ -356,17 +349,15 @@ main: {
|
||||
//SEG10 [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (const byte) main::midb#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #midb
|
||||
sta SCREEN+1
|
||||
//SEG11 [6] if(*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0)!=*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 [ ] ( main:2 [ ] ) -- _deref_pbuc1_neq__deref_pbuc2_then_la1
|
||||
ldx SCREEN+0
|
||||
ldy SCREEN+1
|
||||
stx $ff
|
||||
cpy $ff
|
||||
bne b1
|
||||
//SEG11 [6] if(*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0)==*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 [ ] ( main:2 [ ] ) -- _deref_pbuc1_eq__deref_pbuc2_then_la1
|
||||
lda SCREEN+0
|
||||
cmp SCREEN+1
|
||||
beq b1
|
||||
jmp b3
|
||||
//SEG12 main::@3
|
||||
b3:
|
||||
//SEG13 [7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #5
|
||||
//SEG13 [7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #2
|
||||
sta BGCOL
|
||||
jmp breturn
|
||||
//SEG14 main::@return
|
||||
@ -375,8 +366,8 @@ main: {
|
||||
rts
|
||||
//SEG16 main::@1
|
||||
b1:
|
||||
//SEG17 [9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #2
|
||||
//SEG17 [9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #5
|
||||
sta BGCOL
|
||||
jmp breturn
|
||||
}
|
||||
@ -384,16 +375,16 @@ main: {
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Statement [4] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (const byte) main::midw#0 [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
Statement [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (const byte) main::midb#0 [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
Statement [6] if(*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0)!=*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 [ ] ( main:2 [ ] ) always clobbers reg byte x reg byte y
|
||||
Statement [7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
Statement [9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
Statement [6] if(*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0)==*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
Statement [7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
Statement [9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
|
||||
REGISTER UPLIFT SCOPES
|
||||
Uplift Scope [main]
|
||||
Uplift Scope []
|
||||
|
||||
Uplifting [main] best 67 combination
|
||||
Uplifting [] best 67 combination
|
||||
Uplifting [main] best 61 combination
|
||||
Uplifting [] best 61 combination
|
||||
|
||||
ASSEMBLER BEFORE OPTIMIZATION
|
||||
//SEG0 Basic Upstart
|
||||
@ -431,17 +422,15 @@ main: {
|
||||
//SEG10 [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (const byte) main::midb#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #midb
|
||||
sta SCREEN+1
|
||||
//SEG11 [6] if(*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0)!=*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 [ ] ( main:2 [ ] ) -- _deref_pbuc1_neq__deref_pbuc2_then_la1
|
||||
ldx SCREEN+0
|
||||
ldy SCREEN+1
|
||||
stx $ff
|
||||
cpy $ff
|
||||
bne b1
|
||||
//SEG11 [6] if(*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0)==*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 [ ] ( main:2 [ ] ) -- _deref_pbuc1_eq__deref_pbuc2_then_la1
|
||||
lda SCREEN+0
|
||||
cmp SCREEN+1
|
||||
beq b1
|
||||
jmp b3
|
||||
//SEG12 main::@3
|
||||
b3:
|
||||
//SEG13 [7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #5
|
||||
//SEG13 [7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #2
|
||||
sta BGCOL
|
||||
jmp breturn
|
||||
//SEG14 main::@return
|
||||
@ -450,8 +439,8 @@ main: {
|
||||
rts
|
||||
//SEG16 main::@1
|
||||
b1:
|
||||
//SEG17 [9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #2
|
||||
//SEG17 [9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #5
|
||||
sta BGCOL
|
||||
jmp breturn
|
||||
}
|
||||
@ -462,7 +451,6 @@ Removing instruction jmp bend
|
||||
Removing instruction jmp b3
|
||||
Removing instruction jmp breturn
|
||||
Succesful ASM optimization Pass5NextJumpElimination
|
||||
Replacing instruction ldy SCREEN+1 with TAY
|
||||
Removing instruction bbegin:
|
||||
Removing instruction b1_from_bbegin:
|
||||
Removing instruction bend_from_b1:
|
||||
@ -500,7 +488,7 @@ FINAL SYMBOL TABLE
|
||||
|
||||
|
||||
FINAL ASSEMBLER
|
||||
Score: 53
|
||||
Score: 49
|
||||
|
||||
//SEG0 Basic Upstart
|
||||
.pc = $801 "Basic"
|
||||
@ -530,15 +518,13 @@ main: {
|
||||
//SEG10 [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (const byte) main::midb#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #midb
|
||||
sta SCREEN+1
|
||||
//SEG11 [6] if(*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0)!=*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 [ ] ( main:2 [ ] ) -- _deref_pbuc1_neq__deref_pbuc2_then_la1
|
||||
ldx SCREEN+0
|
||||
tay
|
||||
stx $ff
|
||||
cpy $ff
|
||||
bne b1
|
||||
//SEG11 [6] if(*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0)==*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 [ ] ( main:2 [ ] ) -- _deref_pbuc1_eq__deref_pbuc2_then_la1
|
||||
lda SCREEN+0
|
||||
cmp SCREEN+1
|
||||
beq b1
|
||||
//SEG12 main::@3
|
||||
//SEG13 [7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #5
|
||||
//SEG13 [7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #2
|
||||
sta BGCOL
|
||||
//SEG14 main::@return
|
||||
breturn:
|
||||
@ -546,8 +532,8 @@ main: {
|
||||
rts
|
||||
//SEG16 main::@1
|
||||
b1:
|
||||
//SEG17 [9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #2
|
||||
//SEG17 [9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #5
|
||||
sta BGCOL
|
||||
jmp breturn
|
||||
}
|
||||
|
@ -169,12 +169,12 @@ main: {
|
||||
ldx #KEY_LSHIFT
|
||||
jsr keyboard_key_pressed
|
||||
cmp #0
|
||||
beq b8
|
||||
lda #1
|
||||
bne b8
|
||||
lda #0
|
||||
sta shift
|
||||
jmp b9
|
||||
b8:
|
||||
lda #0
|
||||
lda #1
|
||||
sta shift
|
||||
b9:
|
||||
lda #0
|
||||
|
@ -84,13 +84,13 @@ main::@7: scope:[main] from main::@33 main::@44
|
||||
to:main::@34
|
||||
main::@34: scope:[main] from main::@7
|
||||
[45] (byte~) main::$27 ← (byte) keyboard_key_pressed::return#13 [ main::cur_pos#12 main::$27 ] ( main:2 [ main::cur_pos#12 main::$27 ] )
|
||||
[46] if((byte~) main::$27==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@9 [ main::cur_pos#12 ] ( main:2 [ main::cur_pos#12 ] )
|
||||
[46] if((byte~) main::$27!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@9 [ main::cur_pos#12 ] ( main:2 [ main::cur_pos#12 ] )
|
||||
to:main::@19
|
||||
main::@19: scope:[main] from main::@34
|
||||
[47] phi() [ main::cur_pos#12 ] ( main:2 [ main::cur_pos#12 ] )
|
||||
to:main::@9
|
||||
main::@9: scope:[main] from main::@19 main::@34
|
||||
[48] (byte) main::shift#10 ← phi( main::@19/(byte/signed byte/word/signed word/dword/signed dword) 1 main::@34/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ main::cur_pos#12 main::shift#10 ] ( main:2 [ main::cur_pos#12 main::shift#10 ] )
|
||||
[48] (byte) main::shift#10 ← phi( main::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@34/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ main::cur_pos#12 main::shift#10 ] ( main:2 [ main::cur_pos#12 main::shift#10 ] )
|
||||
to:main::@10
|
||||
main::@10: scope:[main] from main::@12 main::@9
|
||||
[49] (byte) main::ch#2 ← phi( main::@12/(byte) main::ch#1 main::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ main::cur_pos#12 main::shift#10 main::ch#2 ] ( main:2 [ main::cur_pos#12 main::shift#10 main::ch#2 ] )
|
||||
|
@ -823,74 +823,72 @@ keyboard_event_scan::@1:
|
||||
(byte~) keyboard_event_scan::$0 ← call keyboard_matrix_read (byte) keyboard_event_scan::row
|
||||
(byte) keyboard_event_scan::row_scan ← (byte~) keyboard_event_scan::$0
|
||||
(boolean~) keyboard_event_scan::$1 ← (byte) keyboard_event_scan::row_scan != *((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row)
|
||||
(boolean~) keyboard_event_scan::$2 ← ! (boolean~) keyboard_event_scan::$1
|
||||
if((boolean~) keyboard_event_scan::$2) goto keyboard_event_scan::@2
|
||||
if((boolean~) keyboard_event_scan::$1) goto keyboard_event_scan::@2
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2 ← (byte) keyboard_event_scan::keycode + (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2
|
||||
goto keyboard_event_scan::@3
|
||||
keyboard_event_scan::@2:
|
||||
(byte) keyboard_event_scan::col ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
keyboard_event_scan::@3:
|
||||
keyboard_event_scan::@4:
|
||||
(byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan ^ *((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row)
|
||||
(byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((byte[8]) keyboard_matrix_col_bitmask + (byte) keyboard_event_scan::col)
|
||||
(boolean~) keyboard_event_scan::$5 ← (byte~) keyboard_event_scan::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$6 ← ! (boolean~) keyboard_event_scan::$5
|
||||
if((boolean~) keyboard_event_scan::$6) goto keyboard_event_scan::@4
|
||||
if((boolean~) keyboard_event_scan::$6) goto keyboard_event_scan::@5
|
||||
(boolean~) keyboard_event_scan::$7 ← (byte) keyboard_events_size != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(boolean~) keyboard_event_scan::$8 ← ! (boolean~) keyboard_event_scan::$7
|
||||
if((boolean~) keyboard_event_scan::$8) goto keyboard_event_scan::@5
|
||||
if((boolean~) keyboard_event_scan::$8) goto keyboard_event_scan::@6
|
||||
(byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_scan::row_scan & *((byte[8]) keyboard_matrix_col_bitmask + (byte) keyboard_event_scan::col)
|
||||
(byte) keyboard_event_scan::event_type ← (byte~) keyboard_event_scan::$9
|
||||
(boolean~) keyboard_event_scan::$10 ← (byte) keyboard_event_scan::event_type == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$11 ← ! (boolean~) keyboard_event_scan::$10
|
||||
if((boolean~) keyboard_event_scan::$11) goto keyboard_event_scan::@6
|
||||
(byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode | (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte/word/dword~) keyboard_event_scan::$12
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
goto keyboard_event_scan::@7
|
||||
keyboard_event_scan::@6:
|
||||
if((boolean~) keyboard_event_scan::$10) goto keyboard_event_scan::@7
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte) keyboard_event_scan::keycode
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
goto keyboard_event_scan::@8
|
||||
keyboard_event_scan::@7:
|
||||
(byte/word/dword~) keyboard_event_scan::$11 ← (byte) keyboard_event_scan::keycode | (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte/word/dword~) keyboard_event_scan::$11
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
keyboard_event_scan::@8:
|
||||
keyboard_event_scan::@6:
|
||||
keyboard_event_scan::@5:
|
||||
keyboard_event_scan::@4:
|
||||
(byte) keyboard_event_scan::keycode ← ++ (byte) keyboard_event_scan::keycode
|
||||
(byte) keyboard_event_scan::col ← ++ (byte) keyboard_event_scan::col
|
||||
(boolean~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::col != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$13) goto keyboard_event_scan::@3
|
||||
(boolean~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::col != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$12) goto keyboard_event_scan::@4
|
||||
*((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row) ← (byte) keyboard_event_scan::row_scan
|
||||
goto keyboard_event_scan::@8
|
||||
keyboard_event_scan::@2:
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 ← (byte) keyboard_event_scan::keycode + (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14
|
||||
keyboard_event_scan::@8:
|
||||
keyboard_event_scan::@3:
|
||||
(byte) keyboard_event_scan::row ← ++ (byte) keyboard_event_scan::row
|
||||
(boolean~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$15) goto keyboard_event_scan::@1
|
||||
(boolean~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::row != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$13) goto keyboard_event_scan::@1
|
||||
(byte) keyboard_modifiers ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte~) keyboard_event_scan::$16 ← call keyboard_event_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) keyboard_event_scan::$17 ← (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$18 ← ! (boolean~) keyboard_event_scan::$17
|
||||
if((boolean~) keyboard_event_scan::$18) goto keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$19 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_LSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$19
|
||||
(byte~) keyboard_event_scan::$14 ← call keyboard_event_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) keyboard_event_scan::$15 ← (byte~) keyboard_event_scan::$14 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$16 ← ! (boolean~) keyboard_event_scan::$15
|
||||
if((boolean~) keyboard_event_scan::$16) goto keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$17 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_LSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$17
|
||||
keyboard_event_scan::@9:
|
||||
(byte~) keyboard_event_scan::$20 ← call keyboard_event_pressed (byte) KEY_RSHIFT
|
||||
(boolean~) keyboard_event_scan::$21 ← (byte~) keyboard_event_scan::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$22 ← ! (boolean~) keyboard_event_scan::$21
|
||||
if((boolean~) keyboard_event_scan::$22) goto keyboard_event_scan::@10
|
||||
(byte~) keyboard_event_scan::$23 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_RSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$23
|
||||
(byte~) keyboard_event_scan::$18 ← call keyboard_event_pressed (byte) KEY_RSHIFT
|
||||
(boolean~) keyboard_event_scan::$19 ← (byte~) keyboard_event_scan::$18 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$20 ← ! (boolean~) keyboard_event_scan::$19
|
||||
if((boolean~) keyboard_event_scan::$20) goto keyboard_event_scan::@10
|
||||
(byte~) keyboard_event_scan::$21 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_RSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$21
|
||||
keyboard_event_scan::@10:
|
||||
(byte~) keyboard_event_scan::$24 ← call keyboard_event_pressed (byte) KEY_CTRL
|
||||
(boolean~) keyboard_event_scan::$25 ← (byte~) keyboard_event_scan::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$26 ← ! (boolean~) keyboard_event_scan::$25
|
||||
if((boolean~) keyboard_event_scan::$26) goto keyboard_event_scan::@11
|
||||
(byte~) keyboard_event_scan::$27 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_CTRL
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$27
|
||||
(byte~) keyboard_event_scan::$22 ← call keyboard_event_pressed (byte) KEY_CTRL
|
||||
(boolean~) keyboard_event_scan::$23 ← (byte~) keyboard_event_scan::$22 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$24 ← ! (boolean~) keyboard_event_scan::$23
|
||||
if((boolean~) keyboard_event_scan::$24) goto keyboard_event_scan::@11
|
||||
(byte~) keyboard_event_scan::$25 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_CTRL
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$25
|
||||
keyboard_event_scan::@11:
|
||||
(byte~) keyboard_event_scan::$28 ← call keyboard_event_pressed (byte) KEY_COMMODORE
|
||||
(boolean~) keyboard_event_scan::$29 ← (byte~) keyboard_event_scan::$28 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$30 ← ! (boolean~) keyboard_event_scan::$29
|
||||
if((boolean~) keyboard_event_scan::$30) goto keyboard_event_scan::@12
|
||||
(byte~) keyboard_event_scan::$31 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_COMMODORE
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$31
|
||||
(byte~) keyboard_event_scan::$26 ← call keyboard_event_pressed (byte) KEY_COMMODORE
|
||||
(boolean~) keyboard_event_scan::$27 ← (byte~) keyboard_event_scan::$26 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$28 ← ! (boolean~) keyboard_event_scan::$27
|
||||
if((boolean~) keyboard_event_scan::$28) goto keyboard_event_scan::@12
|
||||
(byte~) keyboard_event_scan::$29 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_COMMODORE
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$29
|
||||
keyboard_event_scan::@12:
|
||||
keyboard_event_scan::@return:
|
||||
return
|
||||
@ -908,14 +906,13 @@ keyboard_event_pressed::@return:
|
||||
endproc // keyboard_event_pressed()
|
||||
proc (byte()) keyboard_event_get()
|
||||
(boolean~) keyboard_event_get::$0 ← (byte) keyboard_events_size == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_get::$1 ← ! (boolean~) keyboard_event_get::$0
|
||||
if((boolean~) keyboard_event_get::$1) goto keyboard_event_get::@1
|
||||
(byte) keyboard_event_get::return ← (byte/word/signed word/dword/signed dword) 255
|
||||
if((boolean~) keyboard_event_get::$0) goto keyboard_event_get::@1
|
||||
(byte) keyboard_events_size ← -- (byte) keyboard_events_size
|
||||
(byte) keyboard_event_get::return ← *((byte[8]) keyboard_events + (byte) keyboard_events_size)
|
||||
goto keyboard_event_get::@return
|
||||
goto keyboard_event_get::@2
|
||||
keyboard_event_get::@1:
|
||||
(byte) keyboard_events_size ← -- (byte) keyboard_events_size
|
||||
(byte) keyboard_event_get::return ← *((byte[8]) keyboard_events + (byte) keyboard_events_size)
|
||||
(byte) keyboard_event_get::return ← (byte/word/signed word/dword/signed dword) 255
|
||||
goto keyboard_event_get::@return
|
||||
keyboard_event_get::@2:
|
||||
keyboard_event_get::@return:
|
||||
@ -977,32 +974,31 @@ main::@6:
|
||||
main::@7:
|
||||
(byte~) main::$27 ← call keyboard_key_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) main::$28 ← (byte~) main::$27 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) main::$29 ← ! (boolean~) main::$28
|
||||
if((boolean~) main::$29) goto main::@8
|
||||
(byte) main::shift ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
if((boolean~) main::$28) goto main::@8
|
||||
(byte) main::shift ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
goto main::@9
|
||||
main::@8:
|
||||
(byte) main::shift ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) main::shift ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
main::@9:
|
||||
(byte) main::ch ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
main::@10:
|
||||
(byte) main::pressed ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte~) main::$30 ← call keyboard_get_keycode (byte) main::ch
|
||||
(byte) main::key ← (byte~) main::$30
|
||||
(boolean~) main::$31 ← (byte) main::key != (byte/signed byte/word/signed word/dword/signed dword) 63
|
||||
(boolean~) main::$32 ← ! (boolean~) main::$31
|
||||
if((boolean~) main::$32) goto main::@11
|
||||
(byte~) main::$33 ← call keyboard_key_pressed (byte) main::key
|
||||
(byte) main::pressed ← (byte~) main::$33
|
||||
(byte~) main::$29 ← call keyboard_get_keycode (byte) main::ch
|
||||
(byte) main::key ← (byte~) main::$29
|
||||
(boolean~) main::$30 ← (byte) main::key != (byte/signed byte/word/signed word/dword/signed dword) 63
|
||||
(boolean~) main::$31 ← ! (boolean~) main::$30
|
||||
if((boolean~) main::$31) goto main::@11
|
||||
(byte~) main::$32 ← call keyboard_key_pressed (byte) main::key
|
||||
(byte) main::pressed ← (byte~) main::$32
|
||||
main::@11:
|
||||
(boolean~) main::$34 ← (byte) main::pressed != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) main::$35 ← ! (boolean~) main::$34
|
||||
if((boolean~) main::$35) goto main::@12
|
||||
(void~) main::$36 ← call plot_chargen (byte) main::cur_pos (byte) main::ch (byte) main::shift
|
||||
(boolean~) main::$33 ← (byte) main::pressed != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) main::$34 ← ! (boolean~) main::$33
|
||||
if((boolean~) main::$34) goto main::@12
|
||||
(void~) main::$35 ← call plot_chargen (byte) main::cur_pos (byte) main::ch (byte) main::shift
|
||||
main::@12:
|
||||
(byte) main::ch ← ++ (byte) main::ch
|
||||
(boolean~) main::$37 ← (byte) main::ch != (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
if((boolean~) main::$37) goto main::@10
|
||||
(boolean~) main::$36 ← (byte) main::ch != (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
if((boolean~) main::$36) goto main::@10
|
||||
if(true) goto main::@3
|
||||
main::@return:
|
||||
return
|
||||
@ -1210,7 +1206,6 @@ SYMBOLS
|
||||
(byte[]) keyboard_char_keycodes
|
||||
(byte()) keyboard_event_get()
|
||||
(boolean~) keyboard_event_get::$0
|
||||
(boolean~) keyboard_event_get::$1
|
||||
(label) keyboard_event_get::@1
|
||||
(label) keyboard_event_get::@2
|
||||
(label) keyboard_event_get::@return
|
||||
@ -1227,29 +1222,27 @@ SYMBOLS
|
||||
(byte~) keyboard_event_scan::$0
|
||||
(boolean~) keyboard_event_scan::$1
|
||||
(boolean~) keyboard_event_scan::$10
|
||||
(boolean~) keyboard_event_scan::$11
|
||||
(byte/word/dword~) keyboard_event_scan::$12
|
||||
(byte/word/dword~) keyboard_event_scan::$11
|
||||
(boolean~) keyboard_event_scan::$12
|
||||
(boolean~) keyboard_event_scan::$13
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14
|
||||
(byte~) keyboard_event_scan::$14
|
||||
(boolean~) keyboard_event_scan::$15
|
||||
(byte~) keyboard_event_scan::$16
|
||||
(boolean~) keyboard_event_scan::$17
|
||||
(boolean~) keyboard_event_scan::$18
|
||||
(byte~) keyboard_event_scan::$19
|
||||
(boolean~) keyboard_event_scan::$2
|
||||
(byte~) keyboard_event_scan::$20
|
||||
(boolean~) keyboard_event_scan::$21
|
||||
(boolean~) keyboard_event_scan::$22
|
||||
(byte~) keyboard_event_scan::$23
|
||||
(byte~) keyboard_event_scan::$24
|
||||
(boolean~) keyboard_event_scan::$25
|
||||
(boolean~) keyboard_event_scan::$26
|
||||
(byte~) keyboard_event_scan::$27
|
||||
(byte~) keyboard_event_scan::$28
|
||||
(boolean~) keyboard_event_scan::$29
|
||||
(boolean~) keyboard_event_scan::$16
|
||||
(byte~) keyboard_event_scan::$17
|
||||
(byte~) keyboard_event_scan::$18
|
||||
(boolean~) keyboard_event_scan::$19
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2
|
||||
(boolean~) keyboard_event_scan::$20
|
||||
(byte~) keyboard_event_scan::$21
|
||||
(byte~) keyboard_event_scan::$22
|
||||
(boolean~) keyboard_event_scan::$23
|
||||
(boolean~) keyboard_event_scan::$24
|
||||
(byte~) keyboard_event_scan::$25
|
||||
(byte~) keyboard_event_scan::$26
|
||||
(boolean~) keyboard_event_scan::$27
|
||||
(boolean~) keyboard_event_scan::$28
|
||||
(byte~) keyboard_event_scan::$29
|
||||
(byte~) keyboard_event_scan::$3
|
||||
(boolean~) keyboard_event_scan::$30
|
||||
(byte~) keyboard_event_scan::$31
|
||||
(byte~) keyboard_event_scan::$4
|
||||
(boolean~) keyboard_event_scan::$5
|
||||
(boolean~) keyboard_event_scan::$6
|
||||
@ -1325,16 +1318,15 @@ SYMBOLS
|
||||
(boolean~) main::$26
|
||||
(byte~) main::$27
|
||||
(boolean~) main::$28
|
||||
(boolean~) main::$29
|
||||
(byte~) main::$29
|
||||
(void~) main::$3
|
||||
(byte~) main::$30
|
||||
(boolean~) main::$30
|
||||
(boolean~) main::$31
|
||||
(boolean~) main::$32
|
||||
(byte~) main::$33
|
||||
(byte~) main::$32
|
||||
(boolean~) main::$33
|
||||
(boolean~) main::$34
|
||||
(boolean~) main::$35
|
||||
(void~) main::$36
|
||||
(boolean~) main::$37
|
||||
(void~) main::$35
|
||||
(boolean~) main::$36
|
||||
(byte*~) main::$4
|
||||
(byte*~) main::$5
|
||||
(void~) main::$6
|
||||
@ -1942,112 +1934,110 @@ keyboard_event_scan: scope:[keyboard_event_scan] from
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) keyboard_event_scan::row ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:keyboard_event_scan::@1
|
||||
keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan keyboard_event_scan::@8
|
||||
keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan keyboard_event_scan::@3
|
||||
(byte~) keyboard_event_scan::$0 ← call keyboard_matrix_read (byte) keyboard_event_scan::row
|
||||
(byte) keyboard_event_scan::row_scan ← (byte~) keyboard_event_scan::$0
|
||||
(boolean~) keyboard_event_scan::$1 ← (byte) keyboard_event_scan::row_scan != *((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row)
|
||||
(boolean~) keyboard_event_scan::$2 ← ! (boolean~) keyboard_event_scan::$1
|
||||
if((boolean~) keyboard_event_scan::$2) goto keyboard_event_scan::@2
|
||||
if((boolean~) keyboard_event_scan::$1) goto keyboard_event_scan::@2
|
||||
to:keyboard_event_scan::@13
|
||||
keyboard_event_scan::@2: scope:[keyboard_event_scan] from keyboard_event_scan::@1 keyboard_event_scan::@19
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 ← (byte) keyboard_event_scan::keycode + (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14
|
||||
to:keyboard_event_scan::@8
|
||||
keyboard_event_scan::@13: scope:[keyboard_event_scan] from keyboard_event_scan::@1
|
||||
keyboard_event_scan::@2: scope:[keyboard_event_scan] from keyboard_event_scan::@1 keyboard_event_scan::@14
|
||||
(byte) keyboard_event_scan::col ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:keyboard_event_scan::@4
|
||||
keyboard_event_scan::@13: scope:[keyboard_event_scan] from keyboard_event_scan::@1
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2 ← (byte) keyboard_event_scan::keycode + (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2
|
||||
to:keyboard_event_scan::@3
|
||||
keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan::@13 keyboard_event_scan::@4
|
||||
keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan::@13 keyboard_event_scan::@19
|
||||
(byte) keyboard_event_scan::row ← ++ (byte) keyboard_event_scan::row
|
||||
(boolean~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::row != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$13) goto keyboard_event_scan::@1
|
||||
to:keyboard_event_scan::@20
|
||||
keyboard_event_scan::@14: scope:[keyboard_event_scan] from
|
||||
to:keyboard_event_scan::@2
|
||||
keyboard_event_scan::@4: scope:[keyboard_event_scan] from keyboard_event_scan::@2 keyboard_event_scan::@5
|
||||
(byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan ^ *((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row)
|
||||
(byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((byte[8]) keyboard_matrix_col_bitmask + (byte) keyboard_event_scan::col)
|
||||
(boolean~) keyboard_event_scan::$5 ← (byte~) keyboard_event_scan::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$6 ← ! (boolean~) keyboard_event_scan::$5
|
||||
if((boolean~) keyboard_event_scan::$6) goto keyboard_event_scan::@4
|
||||
to:keyboard_event_scan::@14
|
||||
keyboard_event_scan::@4: scope:[keyboard_event_scan] from keyboard_event_scan::@3 keyboard_event_scan::@5
|
||||
if((boolean~) keyboard_event_scan::$6) goto keyboard_event_scan::@5
|
||||
to:keyboard_event_scan::@15
|
||||
keyboard_event_scan::@5: scope:[keyboard_event_scan] from keyboard_event_scan::@4 keyboard_event_scan::@6
|
||||
(byte) keyboard_event_scan::keycode ← ++ (byte) keyboard_event_scan::keycode
|
||||
(byte) keyboard_event_scan::col ← ++ (byte) keyboard_event_scan::col
|
||||
(boolean~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::col != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$13) goto keyboard_event_scan::@3
|
||||
to:keyboard_event_scan::@18
|
||||
keyboard_event_scan::@14: scope:[keyboard_event_scan] from keyboard_event_scan::@3
|
||||
(boolean~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::col != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$12) goto keyboard_event_scan::@4
|
||||
to:keyboard_event_scan::@19
|
||||
keyboard_event_scan::@15: scope:[keyboard_event_scan] from keyboard_event_scan::@4
|
||||
(boolean~) keyboard_event_scan::$7 ← (byte) keyboard_events_size != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(boolean~) keyboard_event_scan::$8 ← ! (boolean~) keyboard_event_scan::$7
|
||||
if((boolean~) keyboard_event_scan::$8) goto keyboard_event_scan::@5
|
||||
to:keyboard_event_scan::@15
|
||||
keyboard_event_scan::@5: scope:[keyboard_event_scan] from keyboard_event_scan::@14 keyboard_event_scan::@7
|
||||
to:keyboard_event_scan::@4
|
||||
keyboard_event_scan::@15: scope:[keyboard_event_scan] from keyboard_event_scan::@14
|
||||
if((boolean~) keyboard_event_scan::$8) goto keyboard_event_scan::@6
|
||||
to:keyboard_event_scan::@16
|
||||
keyboard_event_scan::@6: scope:[keyboard_event_scan] from keyboard_event_scan::@15 keyboard_event_scan::@8
|
||||
to:keyboard_event_scan::@5
|
||||
keyboard_event_scan::@16: scope:[keyboard_event_scan] from keyboard_event_scan::@15
|
||||
(byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_scan::row_scan & *((byte[8]) keyboard_matrix_col_bitmask + (byte) keyboard_event_scan::col)
|
||||
(byte) keyboard_event_scan::event_type ← (byte~) keyboard_event_scan::$9
|
||||
(boolean~) keyboard_event_scan::$10 ← (byte) keyboard_event_scan::event_type == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$11 ← ! (boolean~) keyboard_event_scan::$10
|
||||
if((boolean~) keyboard_event_scan::$11) goto keyboard_event_scan::@6
|
||||
to:keyboard_event_scan::@16
|
||||
keyboard_event_scan::@6: scope:[keyboard_event_scan] from keyboard_event_scan::@15 keyboard_event_scan::@17
|
||||
if((boolean~) keyboard_event_scan::$10) goto keyboard_event_scan::@7
|
||||
to:keyboard_event_scan::@17
|
||||
keyboard_event_scan::@7: scope:[keyboard_event_scan] from keyboard_event_scan::@16 keyboard_event_scan::@18
|
||||
(byte/word/dword~) keyboard_event_scan::$11 ← (byte) keyboard_event_scan::keycode | (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte/word/dword~) keyboard_event_scan::$11
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
to:keyboard_event_scan::@8
|
||||
keyboard_event_scan::@17: scope:[keyboard_event_scan] from keyboard_event_scan::@16
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte) keyboard_event_scan::keycode
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
to:keyboard_event_scan::@7
|
||||
keyboard_event_scan::@16: scope:[keyboard_event_scan] from keyboard_event_scan::@15
|
||||
(byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode | (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte/word/dword~) keyboard_event_scan::$12
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
to:keyboard_event_scan::@7
|
||||
keyboard_event_scan::@7: scope:[keyboard_event_scan] from keyboard_event_scan::@16 keyboard_event_scan::@6
|
||||
to:keyboard_event_scan::@5
|
||||
keyboard_event_scan::@17: scope:[keyboard_event_scan] from
|
||||
to:keyboard_event_scan::@6
|
||||
keyboard_event_scan::@18: scope:[keyboard_event_scan] from keyboard_event_scan::@4
|
||||
*((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row) ← (byte) keyboard_event_scan::row_scan
|
||||
to:keyboard_event_scan::@8
|
||||
keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan::@18 keyboard_event_scan::@2
|
||||
(byte) keyboard_event_scan::row ← ++ (byte) keyboard_event_scan::row
|
||||
(boolean~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$15) goto keyboard_event_scan::@1
|
||||
to:keyboard_event_scan::@20
|
||||
keyboard_event_scan::@19: scope:[keyboard_event_scan] from
|
||||
to:keyboard_event_scan::@2
|
||||
keyboard_event_scan::@20: scope:[keyboard_event_scan] from keyboard_event_scan::@8
|
||||
keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan::@17 keyboard_event_scan::@7
|
||||
to:keyboard_event_scan::@6
|
||||
keyboard_event_scan::@18: scope:[keyboard_event_scan] from
|
||||
to:keyboard_event_scan::@7
|
||||
keyboard_event_scan::@19: scope:[keyboard_event_scan] from keyboard_event_scan::@5
|
||||
*((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row) ← (byte) keyboard_event_scan::row_scan
|
||||
to:keyboard_event_scan::@3
|
||||
keyboard_event_scan::@20: scope:[keyboard_event_scan] from keyboard_event_scan::@3
|
||||
(byte) keyboard_modifiers ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte~) keyboard_event_scan::$16 ← call keyboard_event_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) keyboard_event_scan::$17 ← (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$18 ← ! (boolean~) keyboard_event_scan::$17
|
||||
if((boolean~) keyboard_event_scan::$18) goto keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$14 ← call keyboard_event_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) keyboard_event_scan::$15 ← (byte~) keyboard_event_scan::$14 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$16 ← ! (boolean~) keyboard_event_scan::$15
|
||||
if((boolean~) keyboard_event_scan::$16) goto keyboard_event_scan::@9
|
||||
to:keyboard_event_scan::@21
|
||||
keyboard_event_scan::@9: scope:[keyboard_event_scan] from keyboard_event_scan::@20 keyboard_event_scan::@21
|
||||
(byte~) keyboard_event_scan::$20 ← call keyboard_event_pressed (byte) KEY_RSHIFT
|
||||
(boolean~) keyboard_event_scan::$21 ← (byte~) keyboard_event_scan::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$22 ← ! (boolean~) keyboard_event_scan::$21
|
||||
if((boolean~) keyboard_event_scan::$22) goto keyboard_event_scan::@10
|
||||
(byte~) keyboard_event_scan::$18 ← call keyboard_event_pressed (byte) KEY_RSHIFT
|
||||
(boolean~) keyboard_event_scan::$19 ← (byte~) keyboard_event_scan::$18 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$20 ← ! (boolean~) keyboard_event_scan::$19
|
||||
if((boolean~) keyboard_event_scan::$20) goto keyboard_event_scan::@10
|
||||
to:keyboard_event_scan::@22
|
||||
keyboard_event_scan::@21: scope:[keyboard_event_scan] from keyboard_event_scan::@20
|
||||
(byte~) keyboard_event_scan::$19 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_LSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$19
|
||||
(byte~) keyboard_event_scan::$17 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_LSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$17
|
||||
to:keyboard_event_scan::@9
|
||||
keyboard_event_scan::@10: scope:[keyboard_event_scan] from keyboard_event_scan::@22 keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$24 ← call keyboard_event_pressed (byte) KEY_CTRL
|
||||
(boolean~) keyboard_event_scan::$25 ← (byte~) keyboard_event_scan::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$26 ← ! (boolean~) keyboard_event_scan::$25
|
||||
if((boolean~) keyboard_event_scan::$26) goto keyboard_event_scan::@11
|
||||
(byte~) keyboard_event_scan::$22 ← call keyboard_event_pressed (byte) KEY_CTRL
|
||||
(boolean~) keyboard_event_scan::$23 ← (byte~) keyboard_event_scan::$22 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$24 ← ! (boolean~) keyboard_event_scan::$23
|
||||
if((boolean~) keyboard_event_scan::$24) goto keyboard_event_scan::@11
|
||||
to:keyboard_event_scan::@23
|
||||
keyboard_event_scan::@22: scope:[keyboard_event_scan] from keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$23 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_RSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$23
|
||||
(byte~) keyboard_event_scan::$21 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_RSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$21
|
||||
to:keyboard_event_scan::@10
|
||||
keyboard_event_scan::@11: scope:[keyboard_event_scan] from keyboard_event_scan::@10 keyboard_event_scan::@23
|
||||
(byte~) keyboard_event_scan::$28 ← call keyboard_event_pressed (byte) KEY_COMMODORE
|
||||
(boolean~) keyboard_event_scan::$29 ← (byte~) keyboard_event_scan::$28 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$30 ← ! (boolean~) keyboard_event_scan::$29
|
||||
if((boolean~) keyboard_event_scan::$30) goto keyboard_event_scan::@12
|
||||
(byte~) keyboard_event_scan::$26 ← call keyboard_event_pressed (byte) KEY_COMMODORE
|
||||
(boolean~) keyboard_event_scan::$27 ← (byte~) keyboard_event_scan::$26 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$28 ← ! (boolean~) keyboard_event_scan::$27
|
||||
if((boolean~) keyboard_event_scan::$28) goto keyboard_event_scan::@12
|
||||
to:keyboard_event_scan::@24
|
||||
keyboard_event_scan::@23: scope:[keyboard_event_scan] from keyboard_event_scan::@10
|
||||
(byte~) keyboard_event_scan::$27 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_CTRL
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$27
|
||||
(byte~) keyboard_event_scan::$25 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_CTRL
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$25
|
||||
to:keyboard_event_scan::@11
|
||||
keyboard_event_scan::@12: scope:[keyboard_event_scan] from keyboard_event_scan::@11 keyboard_event_scan::@24
|
||||
to:keyboard_event_scan::@return
|
||||
keyboard_event_scan::@24: scope:[keyboard_event_scan] from keyboard_event_scan::@11
|
||||
(byte~) keyboard_event_scan::$31 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_COMMODORE
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$31
|
||||
(byte~) keyboard_event_scan::$29 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_COMMODORE
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$29
|
||||
to:keyboard_event_scan::@12
|
||||
keyboard_event_scan::@return: scope:[keyboard_event_scan] from keyboard_event_scan::@12
|
||||
return
|
||||
@ -2071,15 +2061,14 @@ keyboard_event_pressed::@1: scope:[keyboard_event_pressed] from
|
||||
to:@12
|
||||
keyboard_event_get: scope:[keyboard_event_get] from
|
||||
(boolean~) keyboard_event_get::$0 ← (byte) keyboard_events_size == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_get::$1 ← ! (boolean~) keyboard_event_get::$0
|
||||
if((boolean~) keyboard_event_get::$1) goto keyboard_event_get::@1
|
||||
if((boolean~) keyboard_event_get::$0) goto keyboard_event_get::@1
|
||||
to:keyboard_event_get::@3
|
||||
keyboard_event_get::@1: scope:[keyboard_event_get] from keyboard_event_get keyboard_event_get::@5
|
||||
(byte) keyboard_events_size ← -- (byte) keyboard_events_size
|
||||
(byte) keyboard_event_get::return ← *((byte[8]) keyboard_events + (byte) keyboard_events_size)
|
||||
(byte) keyboard_event_get::return ← (byte/word/signed word/dword/signed dword) 255
|
||||
to:keyboard_event_get::@return
|
||||
keyboard_event_get::@3: scope:[keyboard_event_get] from keyboard_event_get
|
||||
(byte) keyboard_event_get::return ← (byte/word/signed word/dword/signed dword) 255
|
||||
(byte) keyboard_events_size ← -- (byte) keyboard_events_size
|
||||
(byte) keyboard_event_get::return ← *((byte[8]) keyboard_events + (byte) keyboard_events_size)
|
||||
to:keyboard_event_get::@return
|
||||
keyboard_event_get::@return: scope:[keyboard_event_get] from keyboard_event_get::@1 keyboard_event_get::@2 keyboard_event_get::@3
|
||||
(byte) keyboard_event_get::return ← (byte) keyboard_event_get::return
|
||||
@ -2166,17 +2155,16 @@ main::@17: scope:[main] from main::@5
|
||||
main::@7: scope:[main] from main::@18 main::@6
|
||||
(byte~) main::$27 ← call keyboard_key_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) main::$28 ← (byte~) main::$27 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) main::$29 ← ! (boolean~) main::$28
|
||||
if((boolean~) main::$29) goto main::@8
|
||||
if((boolean~) main::$28) goto main::@8
|
||||
to:main::@19
|
||||
main::@18: scope:[main] from main::@6
|
||||
(byte) main::cur_pos ← (byte/signed byte/word/signed word/dword/signed dword) 3
|
||||
to:main::@7
|
||||
main::@8: scope:[main] from main::@20 main::@7
|
||||
(byte) main::shift ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) main::shift ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:main::@9
|
||||
main::@19: scope:[main] from main::@7
|
||||
(byte) main::shift ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) main::shift ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:main::@9
|
||||
main::@9: scope:[main] from main::@19 main::@8
|
||||
(byte) main::ch ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
@ -2185,28 +2173,28 @@ main::@20: scope:[main] from
|
||||
to:main::@8
|
||||
main::@10: scope:[main] from main::@12 main::@9
|
||||
(byte) main::pressed ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte~) main::$30 ← call keyboard_get_keycode (byte) main::ch
|
||||
(byte) main::key ← (byte~) main::$30
|
||||
(boolean~) main::$31 ← (byte) main::key != (byte/signed byte/word/signed word/dword/signed dword) 63
|
||||
(boolean~) main::$32 ← ! (boolean~) main::$31
|
||||
if((boolean~) main::$32) goto main::@11
|
||||
(byte~) main::$29 ← call keyboard_get_keycode (byte) main::ch
|
||||
(byte) main::key ← (byte~) main::$29
|
||||
(boolean~) main::$30 ← (byte) main::key != (byte/signed byte/word/signed word/dword/signed dword) 63
|
||||
(boolean~) main::$31 ← ! (boolean~) main::$30
|
||||
if((boolean~) main::$31) goto main::@11
|
||||
to:main::@21
|
||||
main::@11: scope:[main] from main::@10 main::@21
|
||||
(boolean~) main::$34 ← (byte) main::pressed != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) main::$35 ← ! (boolean~) main::$34
|
||||
if((boolean~) main::$35) goto main::@12
|
||||
(boolean~) main::$33 ← (byte) main::pressed != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) main::$34 ← ! (boolean~) main::$33
|
||||
if((boolean~) main::$34) goto main::@12
|
||||
to:main::@22
|
||||
main::@21: scope:[main] from main::@10
|
||||
(byte~) main::$33 ← call keyboard_key_pressed (byte) main::key
|
||||
(byte) main::pressed ← (byte~) main::$33
|
||||
(byte~) main::$32 ← call keyboard_key_pressed (byte) main::key
|
||||
(byte) main::pressed ← (byte~) main::$32
|
||||
to:main::@11
|
||||
main::@12: scope:[main] from main::@11 main::@22
|
||||
(byte) main::ch ← ++ (byte) main::ch
|
||||
(boolean~) main::$37 ← (byte) main::ch != (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
if((boolean~) main::$37) goto main::@10
|
||||
(boolean~) main::$36 ← (byte) main::ch != (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
if((boolean~) main::$36) goto main::@10
|
||||
to:main::@23
|
||||
main::@22: scope:[main] from main::@11
|
||||
(void~) main::$36 ← call plot_chargen (byte) main::cur_pos (byte) main::ch (byte) main::shift
|
||||
(void~) main::$35 ← call plot_chargen (byte) main::cur_pos (byte) main::ch (byte) main::shift
|
||||
to:main::@12
|
||||
main::@23: scope:[main] from main::@12
|
||||
if(true) goto main::@3
|
||||
@ -2397,7 +2385,7 @@ Eliminating unused variable - keeping the call (void~) main::$6
|
||||
Eliminating unused variable - keeping the call (void~) main::$9
|
||||
Eliminating unused variable - keeping the call (void~) main::$12
|
||||
Eliminating unused variable - keeping the call (void~) main::$13
|
||||
Eliminating unused variable - keeping the call (void~) main::$36
|
||||
Eliminating unused variable - keeping the call (void~) main::$35
|
||||
Eliminating unused variable (byte~) $0 and assignment [99] (byte~) $0 ← (byte) KEY_MODIFIER_LSHIFT | (byte) KEY_MODIFIER_RSHIFT
|
||||
Eliminating unused variable (byte) KEY_MODIFIER_LSHIFT and assignment [97] (byte) KEY_MODIFIER_LSHIFT ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Eliminating unused variable (byte) KEY_MODIFIER_RSHIFT and assignment [98] (byte) KEY_MODIFIER_RSHIFT ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
@ -2769,8 +2757,7 @@ main::@34: scope:[main] from main::@7
|
||||
(byte) keyboard_key_pressed::return#13 ← phi( main::@7/(byte) keyboard_key_pressed::return#6 )
|
||||
(byte~) main::$27 ← (byte) keyboard_key_pressed::return#13
|
||||
(boolean~) main::$28 ← (byte~) main::$27 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) main::$29 ← ! (boolean~) main::$28
|
||||
if((boolean~) main::$29) goto main::@8
|
||||
if((boolean~) main::$28) goto main::@8
|
||||
to:main::@19
|
||||
main::@18: scope:[main] from main::@33
|
||||
(byte*) SCREEN#27 ← phi( main::@33/(byte*) SCREEN#28 )
|
||||
@ -2779,12 +2766,12 @@ main::@18: scope:[main] from main::@33
|
||||
main::@8: scope:[main] from main::@34
|
||||
(byte*) SCREEN#23 ← phi( main::@34/(byte*) SCREEN#25 )
|
||||
(byte) main::cur_pos#14 ← phi( main::@34/(byte) main::cur_pos#16 )
|
||||
(byte) main::shift#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) main::shift#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:main::@9
|
||||
main::@19: scope:[main] from main::@34
|
||||
(byte*) SCREEN#22 ← phi( main::@34/(byte*) SCREEN#25 )
|
||||
(byte) main::cur_pos#13 ← phi( main::@34/(byte) main::cur_pos#16 )
|
||||
(byte) main::shift#2 ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) main::shift#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:main::@9
|
||||
main::@9: scope:[main] from main::@19 main::@8
|
||||
(byte*) SCREEN#21 ← phi( main::@19/(byte*) SCREEN#22 main::@8/(byte*) SCREEN#23 )
|
||||
@ -2809,11 +2796,11 @@ main::@35: scope:[main] from main::@10
|
||||
(byte) main::ch#7 ← phi( main::@10/(byte) main::ch#2 )
|
||||
(byte) main::pressed#3 ← phi( main::@10/(byte) main::pressed#0 )
|
||||
(byte) keyboard_get_keycode::return#4 ← phi( main::@10/(byte) keyboard_get_keycode::return#2 )
|
||||
(byte~) main::$30 ← (byte) keyboard_get_keycode::return#4
|
||||
(byte) main::key#0 ← (byte~) main::$30
|
||||
(boolean~) main::$31 ← (byte) main::key#0 != (byte/signed byte/word/signed word/dword/signed dword) 63
|
||||
(boolean~) main::$32 ← ! (boolean~) main::$31
|
||||
if((boolean~) main::$32) goto main::@11
|
||||
(byte~) main::$29 ← (byte) keyboard_get_keycode::return#4
|
||||
(byte) main::key#0 ← (byte~) main::$29
|
||||
(boolean~) main::$30 ← (byte) main::key#0 != (byte/signed byte/word/signed word/dword/signed dword) 63
|
||||
(boolean~) main::$31 ← ! (boolean~) main::$30
|
||||
if((boolean~) main::$31) goto main::@11
|
||||
to:main::@21
|
||||
main::@11: scope:[main] from main::@35 main::@36
|
||||
(byte*) SCREEN#15 ← phi( main::@35/(byte*) SCREEN#16 main::@36/(byte*) SCREEN#17 )
|
||||
@ -2821,9 +2808,9 @@ main::@11: scope:[main] from main::@35 main::@36
|
||||
(byte) main::cur_pos#6 ← phi( main::@35/(byte) main::cur_pos#7 main::@36/(byte) main::cur_pos#8 )
|
||||
(byte) main::ch#5 ← phi( main::@35/(byte) main::ch#7 main::@36/(byte) main::ch#8 )
|
||||
(byte) main::pressed#2 ← phi( main::@35/(byte) main::pressed#3 main::@36/(byte) main::pressed#1 )
|
||||
(boolean~) main::$34 ← (byte) main::pressed#2 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) main::$35 ← ! (boolean~) main::$34
|
||||
if((boolean~) main::$35) goto main::@12
|
||||
(boolean~) main::$33 ← (byte) main::pressed#2 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) main::$34 ← ! (boolean~) main::$33
|
||||
if((boolean~) main::$34) goto main::@12
|
||||
to:main::@22
|
||||
main::@21: scope:[main] from main::@35
|
||||
(byte*) SCREEN#19 ← phi( main::@35/(byte*) SCREEN#16 )
|
||||
@ -2841,8 +2828,8 @@ main::@36: scope:[main] from main::@21
|
||||
(byte) main::cur_pos#8 ← phi( main::@21/(byte) main::cur_pos#10 )
|
||||
(byte) main::ch#8 ← phi( main::@21/(byte) main::ch#9 )
|
||||
(byte) keyboard_key_pressed::return#14 ← phi( main::@21/(byte) keyboard_key_pressed::return#7 )
|
||||
(byte~) main::$33 ← (byte) keyboard_key_pressed::return#14
|
||||
(byte) main::pressed#1 ← (byte~) main::$33
|
||||
(byte~) main::$32 ← (byte) keyboard_key_pressed::return#14
|
||||
(byte) main::pressed#1 ← (byte~) main::$32
|
||||
to:main::@11
|
||||
main::@12: scope:[main] from main::@11 main::@37
|
||||
(byte*) SCREEN#20 ← phi( main::@11/(byte*) SCREEN#15 main::@37/(byte*) SCREEN#24 )
|
||||
@ -2850,8 +2837,8 @@ main::@12: scope:[main] from main::@11 main::@37
|
||||
(byte) main::cur_pos#11 ← phi( main::@11/(byte) main::cur_pos#6 main::@37/(byte) main::cur_pos#15 )
|
||||
(byte) main::ch#3 ← phi( main::@11/(byte) main::ch#5 main::@37/(byte) main::ch#6 )
|
||||
(byte) main::ch#1 ← ++ (byte) main::ch#3
|
||||
(boolean~) main::$37 ← (byte) main::ch#1 != (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
if((boolean~) main::$37) goto main::@10
|
||||
(boolean~) main::$36 ← (byte) main::ch#1 != (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
if((boolean~) main::$36) goto main::@10
|
||||
to:main::@23
|
||||
main::@22: scope:[main] from main::@11
|
||||
(byte*) SCREEN#12 ← phi( main::@11/(byte*) SCREEN#15 )
|
||||
@ -3260,14 +3247,13 @@ SYMBOL TABLE SSA
|
||||
(boolean~) main::$26
|
||||
(byte~) main::$27
|
||||
(boolean~) main::$28
|
||||
(boolean~) main::$29
|
||||
(byte~) main::$30
|
||||
(byte~) main::$29
|
||||
(boolean~) main::$30
|
||||
(boolean~) main::$31
|
||||
(boolean~) main::$32
|
||||
(byte~) main::$33
|
||||
(byte~) main::$32
|
||||
(boolean~) main::$33
|
||||
(boolean~) main::$34
|
||||
(boolean~) main::$35
|
||||
(boolean~) main::$37
|
||||
(boolean~) main::$36
|
||||
(byte*~) main::$4
|
||||
(byte*~) main::$5
|
||||
(byte*~) main::$7
|
||||
@ -3545,9 +3531,8 @@ Inversing boolean not (boolean~) main::$17 ← (byte~) main::$15 == (byte/signed
|
||||
Inversing boolean not (boolean~) main::$20 ← (byte~) main::$18 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) main::$19 ← (byte~) main::$18 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Inversing boolean not (boolean~) main::$23 ← (byte~) main::$21 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) main::$22 ← (byte~) main::$21 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Inversing boolean not (boolean~) main::$26 ← (byte~) main::$24 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) main::$25 ← (byte~) main::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Inversing boolean not (boolean~) main::$29 ← (byte~) main::$27 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) main::$28 ← (byte~) main::$27 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Inversing boolean not (boolean~) main::$32 ← (byte) main::key#0 == (byte/signed byte/word/signed word/dword/signed dword) 63 from (boolean~) main::$31 ← (byte) main::key#0 != (byte/signed byte/word/signed word/dword/signed dword) 63
|
||||
Inversing boolean not (boolean~) main::$35 ← (byte) main::pressed#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) main::$34 ← (byte) main::pressed#2 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Inversing boolean not (boolean~) main::$31 ← (byte) main::key#0 == (byte/signed byte/word/signed word/dword/signed dword) 63 from (boolean~) main::$30 ← (byte) main::key#0 != (byte/signed byte/word/signed word/dword/signed dword) 63
|
||||
Inversing boolean not (boolean~) main::$34 ← (byte) main::pressed#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) main::$33 ← (byte) main::pressed#2 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Inversing boolean not (boolean~) plot_chargen::$4 ← (byte) plot_chargen::shift#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) plot_chargen::$3 ← (byte) plot_chargen::shift#2 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Inversing boolean not (boolean~) plot_chargen::$12 ← (byte~) plot_chargen::$10 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) plot_chargen::$11 ← (byte~) plot_chargen::$10 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Succesful SSA optimization Pass2UnaryNotSimplification
|
||||
@ -3579,10 +3564,10 @@ Not aliassing across scopes: keyboard_key_pressed::return#6 keyboard_key_pressed
|
||||
Not aliassing across scopes: main::$27 keyboard_key_pressed::return#13
|
||||
Not aliassing across scopes: keyboard_get_keycode::ch#0 main::ch#2
|
||||
Not aliassing across scopes: keyboard_get_keycode::return#2 keyboard_get_keycode::return#1
|
||||
Not aliassing across scopes: main::$30 keyboard_get_keycode::return#4
|
||||
Not aliassing across scopes: main::$29 keyboard_get_keycode::return#4
|
||||
Not aliassing across scopes: keyboard_key_pressed::key#5 main::key#1
|
||||
Not aliassing across scopes: keyboard_key_pressed::return#7 keyboard_key_pressed::return#1
|
||||
Not aliassing across scopes: main::$33 keyboard_key_pressed::return#14
|
||||
Not aliassing across scopes: main::$32 keyboard_key_pressed::return#14
|
||||
Not aliassing across scopes: plot_chargen::pos#1 main::cur_pos#5
|
||||
Not aliassing across scopes: plot_chargen::ch#1 main::ch#4
|
||||
Not aliassing across scopes: plot_chargen::shift#1 main::shift#3
|
||||
@ -3635,9 +3620,9 @@ Alias (byte) main::ch#2 = (byte) main::ch#7 (byte) main::ch#9 (byte) main::ch#8
|
||||
Alias (byte) main::cur_pos#10 = (byte) main::cur_pos#7 (byte) main::cur_pos#9 (byte) main::cur_pos#8
|
||||
Alias (byte) main::shift#5 = (byte) main::shift#7 (byte) main::shift#8 (byte) main::shift#6
|
||||
Alias (byte*) SCREEN#16 = (byte*) SCREEN#18 (byte*) SCREEN#19 (byte*) SCREEN#17
|
||||
Alias (byte) main::key#0 = (byte~) main::$30 (byte) main::key#1
|
||||
Alias (byte) main::key#0 = (byte~) main::$29 (byte) main::key#1
|
||||
Alias (byte) keyboard_key_pressed::return#14 = (byte) keyboard_key_pressed::return#7
|
||||
Alias (byte) main::pressed#1 = (byte~) main::$33
|
||||
Alias (byte) main::pressed#1 = (byte~) main::$32
|
||||
Alias (byte) main::cur_pos#15 = (byte) main::cur_pos#5 (byte) main::cur_pos#6
|
||||
Alias (byte) main::ch#4 = (byte) main::ch#5 (byte) main::ch#6
|
||||
Alias (byte) main::shift#11 = (byte) main::shift#3 (byte) main::shift#4
|
||||
@ -3801,10 +3786,10 @@ Simple Condition (boolean~) main::$17 if((byte~) main::$15==(byte/signed byte/wo
|
||||
Simple Condition (boolean~) main::$20 if((byte~) main::$18==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@5
|
||||
Simple Condition (boolean~) main::$23 if((byte~) main::$21==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@6
|
||||
Simple Condition (boolean~) main::$26 if((byte~) main::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@7
|
||||
Simple Condition (boolean~) main::$29 if((byte~) main::$27==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@8
|
||||
Simple Condition (boolean~) main::$32 if((byte) main::key#0==(byte/signed byte/word/signed word/dword/signed dword) 63) goto main::@11
|
||||
Simple Condition (boolean~) main::$35 if((byte) main::pressed#2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@12
|
||||
Simple Condition (boolean~) main::$37 if((byte) main::ch#1!=(byte/signed byte/word/signed word/dword/signed dword) 64) goto main::@10
|
||||
Simple Condition (boolean~) main::$28 if((byte~) main::$27!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@8
|
||||
Simple Condition (boolean~) main::$31 if((byte) main::key#0==(byte/signed byte/word/signed word/dword/signed dword) 63) goto main::@11
|
||||
Simple Condition (boolean~) main::$34 if((byte) main::pressed#2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@12
|
||||
Simple Condition (boolean~) main::$36 if((byte) main::ch#1!=(byte/signed byte/word/signed word/dword/signed dword) 64) goto main::@10
|
||||
Simple Condition (boolean~) print_str_at::$0 if(*((byte*) print_str_at::str#5)!=(byte) '@') goto print_str_at::@2
|
||||
Simple Condition (boolean~) plot_chargen::$4 if((byte) plot_chargen::shift#2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto plot_chargen::@1
|
||||
Simple Condition (boolean~) plot_chargen::$12 if((byte~) plot_chargen::$10==(byte/signed byte/word/signed word/dword/signed dword) 0) goto plot_chargen::@4
|
||||
@ -3887,8 +3872,8 @@ Constant (const byte) main::cur_pos#1 = 0
|
||||
Constant (const byte) main::cur_pos#2 = 1
|
||||
Constant (const byte) main::cur_pos#3 = 2
|
||||
Constant (const byte) main::cur_pos#4 = 3
|
||||
Constant (const byte) main::shift#1 = 0
|
||||
Constant (const byte) main::shift#2 = 1
|
||||
Constant (const byte) main::shift#1 = 1
|
||||
Constant (const byte) main::shift#2 = 0
|
||||
Constant (const byte) main::ch#0 = 0
|
||||
Constant (const byte) main::pressed#0 = 0
|
||||
Constant (const byte) mul8u::b#0 = 10
|
||||
@ -3921,10 +3906,10 @@ Multiple usages for variable. Not optimizing sub-constant (byte*) plot_chargen::
|
||||
Succesful SSA optimization Pass2ConstantAdditionElimination
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte*) plot_chargen::chargen#0
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte*) plot_chargen::sc#1
|
||||
Eliminating unused constant (const byte) main::shift#0
|
||||
Succesful SSA optimization PassNEliminateUnusedVars
|
||||
if() condition always true - replacing block destination if(true) goto main::@3
|
||||
Succesful SSA optimization Pass2ConstantIfs
|
||||
Eliminating unused constant (const byte) main::shift#0
|
||||
Succesful SSA optimization PassNEliminateUnusedVars
|
||||
Removing unused block main::@return
|
||||
Succesful SSA optimization Pass2EliminateUnusedBlocks
|
||||
Culled Empty Block (label) mul8u::@3
|
||||
@ -4150,7 +4135,7 @@ Inlining constant with different constant siblings (const byte) plot_chargen::c#
|
||||
Inlining constant with var siblings (const byte) plot_chargen::c#1
|
||||
Inlining constant with different constant siblings (const byte) plot_chargen::c#1
|
||||
Constant inlined print_str_at::str#1 = (const string) main::str1
|
||||
Constant inlined main::shift#1 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined main::shift#1 = (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Constant inlined print_str_at::str#2 = (const string) main::str2
|
||||
Constant inlined print_str_at::at#3 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 30
|
||||
Constant inlined print_str_at::str#3 = (const string) main::str3
|
||||
@ -4161,7 +4146,7 @@ Constant inlined plot_chargen::c#1 = (byte) '*'
|
||||
Constant inlined print_str_at::at#0 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Constant inlined print_str_at::str#0 = (const string) main::str
|
||||
Constant inlined main::$10 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Constant inlined main::shift#2 = (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Constant inlined main::shift#2 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined plot_chargen::$7 = (const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40+(byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Constant inlined main::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined plot_chargen::$6 = (const byte*) SCREEN#0
|
||||
@ -4413,13 +4398,13 @@ main::@7: scope:[main] from main::@33 main::@44
|
||||
to:main::@34
|
||||
main::@34: scope:[main] from main::@7
|
||||
[45] (byte~) main::$27 ← (byte) keyboard_key_pressed::return#13 [ main::cur_pos#12 main::$27 ] ( main:2 [ main::cur_pos#12 main::$27 ] )
|
||||
[46] if((byte~) main::$27==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@9 [ main::cur_pos#12 ] ( main:2 [ main::cur_pos#12 ] )
|
||||
[46] if((byte~) main::$27!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@9 [ main::cur_pos#12 ] ( main:2 [ main::cur_pos#12 ] )
|
||||
to:main::@19
|
||||
main::@19: scope:[main] from main::@34
|
||||
[47] phi() [ main::cur_pos#12 ] ( main:2 [ main::cur_pos#12 ] )
|
||||
to:main::@9
|
||||
main::@9: scope:[main] from main::@19 main::@34
|
||||
[48] (byte) main::shift#10 ← phi( main::@19/(byte/signed byte/word/signed word/dword/signed dword) 1 main::@34/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ main::cur_pos#12 main::shift#10 ] ( main:2 [ main::cur_pos#12 main::shift#10 ] )
|
||||
[48] (byte) main::shift#10 ← phi( main::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@34/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ main::cur_pos#12 main::shift#10 ] ( main:2 [ main::cur_pos#12 main::shift#10 ] )
|
||||
to:main::@10
|
||||
main::@10: scope:[main] from main::@12 main::@9
|
||||
[49] (byte) main::ch#2 ← phi( main::@12/(byte) main::ch#1 main::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ main::cur_pos#12 main::shift#10 main::ch#2 ] ( main:2 [ main::cur_pos#12 main::shift#10 main::ch#2 ] )
|
||||
@ -5417,9 +5402,9 @@ main: {
|
||||
//SEG104 [45] (byte~) main::$27 ← (byte) keyboard_key_pressed::return#13 [ main::cur_pos#12 main::$27 ] ( main:2 [ main::cur_pos#12 main::$27 ] ) -- vbuz1=vbuz2
|
||||
lda keyboard_key_pressed.return_13
|
||||
sta _27
|
||||
//SEG105 [46] if((byte~) main::$27==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@9 [ main::cur_pos#12 ] ( main:2 [ main::cur_pos#12 ] ) -- vbuz1_eq_0_then_la1
|
||||
//SEG105 [46] if((byte~) main::$27!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@9 [ main::cur_pos#12 ] ( main:2 [ main::cur_pos#12 ] ) -- vbuz1_neq_0_then_la1
|
||||
lda _27
|
||||
beq b9_from_b34
|
||||
bne b9_from_b34
|
||||
//SEG106 [47] phi from main::@34 to main::@19 [phi:main::@34->main::@19]
|
||||
b19_from_b34:
|
||||
jmp b19
|
||||
@ -5427,14 +5412,14 @@ main: {
|
||||
b19:
|
||||
//SEG108 [48] phi from main::@19 to main::@9 [phi:main::@19->main::@9]
|
||||
b9_from_b19:
|
||||
//SEG109 [48] phi (byte) main::shift#10 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:main::@19->main::@9#0] -- vbuz1=vbuc1
|
||||
lda #1
|
||||
//SEG109 [48] phi (byte) main::shift#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@19->main::@9#0] -- vbuz1=vbuc1
|
||||
lda #0
|
||||
sta shift
|
||||
jmp b9
|
||||
//SEG110 [48] phi from main::@34 to main::@9 [phi:main::@34->main::@9]
|
||||
b9_from_b34:
|
||||
//SEG111 [48] phi (byte) main::shift#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@34->main::@9#0] -- vbuz1=vbuc1
|
||||
lda #0
|
||||
//SEG111 [48] phi (byte) main::shift#10 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:main::@34->main::@9#0] -- vbuz1=vbuc1
|
||||
lda #1
|
||||
sta shift
|
||||
jmp b9
|
||||
//SEG112 main::@9
|
||||
@ -6519,9 +6504,9 @@ main: {
|
||||
b34:
|
||||
//SEG104 [45] (byte~) main::$27 ← (byte) keyboard_key_pressed::return#13 [ main::cur_pos#12 main::$27 ] ( main:2 [ main::cur_pos#12 main::$27 ] )
|
||||
// (byte~) main::$27 = (byte) keyboard_key_pressed::return#13 // register copy reg byte a
|
||||
//SEG105 [46] if((byte~) main::$27==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@9 [ main::cur_pos#12 ] ( main:2 [ main::cur_pos#12 ] ) -- vbuaa_eq_0_then_la1
|
||||
//SEG105 [46] if((byte~) main::$27!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@9 [ main::cur_pos#12 ] ( main:2 [ main::cur_pos#12 ] ) -- vbuaa_neq_0_then_la1
|
||||
cmp #0
|
||||
beq b9_from_b34
|
||||
bne b9_from_b34
|
||||
//SEG106 [47] phi from main::@34 to main::@19 [phi:main::@34->main::@19]
|
||||
b19_from_b34:
|
||||
jmp b19
|
||||
@ -6529,14 +6514,14 @@ main: {
|
||||
b19:
|
||||
//SEG108 [48] phi from main::@19 to main::@9 [phi:main::@19->main::@9]
|
||||
b9_from_b19:
|
||||
//SEG109 [48] phi (byte) main::shift#10 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:main::@19->main::@9#0] -- vbuz1=vbuc1
|
||||
lda #1
|
||||
//SEG109 [48] phi (byte) main::shift#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@19->main::@9#0] -- vbuz1=vbuc1
|
||||
lda #0
|
||||
sta shift
|
||||
jmp b9
|
||||
//SEG110 [48] phi from main::@34 to main::@9 [phi:main::@34->main::@9]
|
||||
b9_from_b34:
|
||||
//SEG111 [48] phi (byte) main::shift#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@34->main::@9#0] -- vbuz1=vbuc1
|
||||
lda #0
|
||||
//SEG111 [48] phi (byte) main::shift#10 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:main::@34->main::@9#0] -- vbuz1=vbuc1
|
||||
lda #1
|
||||
sta shift
|
||||
jmp b9
|
||||
//SEG112 main::@9
|
||||
@ -7839,20 +7824,20 @@ main: {
|
||||
//SEG103 main::@34
|
||||
//SEG104 [45] (byte~) main::$27 ← (byte) keyboard_key_pressed::return#13 [ main::cur_pos#12 main::$27 ] ( main:2 [ main::cur_pos#12 main::$27 ] )
|
||||
// (byte~) main::$27 = (byte) keyboard_key_pressed::return#13 // register copy reg byte a
|
||||
//SEG105 [46] if((byte~) main::$27==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@9 [ main::cur_pos#12 ] ( main:2 [ main::cur_pos#12 ] ) -- vbuaa_eq_0_then_la1
|
||||
//SEG105 [46] if((byte~) main::$27!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@9 [ main::cur_pos#12 ] ( main:2 [ main::cur_pos#12 ] ) -- vbuaa_neq_0_then_la1
|
||||
cmp #0
|
||||
beq b8
|
||||
bne b8
|
||||
//SEG106 [47] phi from main::@34 to main::@19 [phi:main::@34->main::@19]
|
||||
//SEG107 main::@19
|
||||
//SEG108 [48] phi from main::@19 to main::@9 [phi:main::@19->main::@9]
|
||||
//SEG109 [48] phi (byte) main::shift#10 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:main::@19->main::@9#0] -- vbuz1=vbuc1
|
||||
lda #1
|
||||
//SEG109 [48] phi (byte) main::shift#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@19->main::@9#0] -- vbuz1=vbuc1
|
||||
lda #0
|
||||
sta shift
|
||||
jmp b9
|
||||
//SEG110 [48] phi from main::@34 to main::@9 [phi:main::@34->main::@9]
|
||||
b8:
|
||||
//SEG111 [48] phi (byte) main::shift#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main::@34->main::@9#0] -- vbuz1=vbuc1
|
||||
lda #0
|
||||
//SEG111 [48] phi (byte) main::shift#10 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:main::@34->main::@9#0] -- vbuz1=vbuc1
|
||||
lda #1
|
||||
sta shift
|
||||
//SEG112 main::@9
|
||||
b9:
|
||||
|
@ -0,0 +1,10 @@
|
||||
.pc = $801 "Basic"
|
||||
:BasicUpstart(main)
|
||||
.pc = $80d "Program"
|
||||
jsr main
|
||||
main: {
|
||||
.label SCREEN = $400
|
||||
lda #'!'
|
||||
sta SCREEN+0
|
||||
rts
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
@begin: scope:[] from
|
||||
[0] phi() [ ] ( )
|
||||
to:@1
|
||||
@1: scope:[] from @begin
|
||||
[1] phi() [ ] ( )
|
||||
[2] call main param-assignment [ ] ( )
|
||||
to:@end
|
||||
@end: scope:[] from @1
|
||||
[3] phi() [ ] ( )
|
||||
main: scope:[main] from @1
|
||||
[4] phi() [ ] ( main:2 [ ] )
|
||||
to:main::@3
|
||||
main::@3: scope:[main] from main
|
||||
[5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) '!' [ ] ( main:2 [ ] )
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@3
|
||||
[6] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
326
src/test/java/dk/camelot64/kickc/test/ref/const-condition.log
Normal file
326
src/test/java/dk/camelot64/kickc/test/ref/const-condition.log
Normal file
@ -0,0 +1,326 @@
|
||||
PARSING src/test/java/dk/camelot64/kickc/test/kc/const-condition.kc
|
||||
// Ensure that if()'s with constant comparisons are identified and eliminated
|
||||
|
||||
void main() {
|
||||
const byte* SCREEN = $0400;
|
||||
if(7<4) {
|
||||
SCREEN[0] = '*';
|
||||
} else {
|
||||
SCREEN[0] = '!';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
STATEMENTS
|
||||
proc (void()) main()
|
||||
(byte*) main::SCREEN ← (word/signed word/dword/signed dword) 1024
|
||||
(boolean~) main::$0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 < (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
if((boolean~) main::$0) goto main::@1
|
||||
*((byte*) main::SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) '!'
|
||||
goto main::@2
|
||||
main::@1:
|
||||
*((byte*) main::SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) '*'
|
||||
main::@2:
|
||||
main::@return:
|
||||
return
|
||||
endproc // main()
|
||||
call main
|
||||
|
||||
SYMBOLS
|
||||
(void()) main()
|
||||
(boolean~) main::$0
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
(label) main::@return
|
||||
(byte*) main::SCREEN
|
||||
|
||||
Promoting word/signed word/dword/signed dword to byte* in main::SCREEN ← ((byte*)) 1024
|
||||
INITIAL CONTROL FLOW GRAPH
|
||||
@begin: scope:[] from
|
||||
to:@1
|
||||
main: scope:[main] from
|
||||
(byte*) main::SCREEN ← ((byte*)) (word/signed word/dword/signed dword) 1024
|
||||
(boolean~) main::$0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 < (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
if((boolean~) main::$0) goto main::@1
|
||||
to:main::@3
|
||||
main::@1: scope:[main] from main main::@4
|
||||
*((byte*) main::SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) '*'
|
||||
to:main::@2
|
||||
main::@3: scope:[main] from main
|
||||
*((byte*) main::SCREEN + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) '!'
|
||||
to:main::@2
|
||||
main::@2: scope:[main] from main::@1 main::@3
|
||||
to:main::@return
|
||||
main::@4: scope:[main] from
|
||||
to:main::@1
|
||||
main::@return: scope:[main] from main::@2
|
||||
return
|
||||
to:@return
|
||||
@1: scope:[] from @begin
|
||||
call main
|
||||
to:@end
|
||||
@end: scope:[] from @1
|
||||
|
||||
Removing empty block main::@2
|
||||
Removing empty block main::@4
|
||||
PROCEDURE MODIFY VARIABLE ANALYSIS
|
||||
|
||||
Completing Phi functions...
|
||||
|
||||
CONTROL FLOW GRAPH SSA WITH ASSIGNMENT CALL & RETURN
|
||||
@begin: scope:[] from
|
||||
to:@1
|
||||
main: scope:[main] from @1
|
||||
(byte*) main::SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024
|
||||
(boolean~) main::$0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 < (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
if((boolean~) main::$0) goto main::@1
|
||||
to:main::@3
|
||||
main::@1: scope:[main] from main
|
||||
*((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) '*'
|
||||
to:main::@return
|
||||
main::@3: scope:[main] from main
|
||||
*((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) '!'
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@1 main::@3
|
||||
return
|
||||
to:@return
|
||||
@1: scope:[] from @begin
|
||||
call main param-assignment
|
||||
to:@2
|
||||
@2: scope:[] from @1
|
||||
to:@end
|
||||
@end: scope:[] from @2
|
||||
|
||||
SYMBOL TABLE SSA
|
||||
(label) @1
|
||||
(label) @2
|
||||
(label) @begin
|
||||
(label) @end
|
||||
(void()) main()
|
||||
(boolean~) main::$0
|
||||
(label) main::@1
|
||||
(label) main::@3
|
||||
(label) main::@return
|
||||
(byte*) main::SCREEN
|
||||
(byte*) main::SCREEN#0
|
||||
|
||||
OPTIMIZING CONTROL FLOW GRAPH
|
||||
Culled Empty Block (label) @2
|
||||
Succesful SSA optimization Pass2CullEmptyBlocks
|
||||
Simple Condition (boolean~) main::$0 if((byte/signed byte/word/signed word/dword/signed dword) 7<(byte/signed byte/word/signed word/dword/signed dword) 4) goto main::@1
|
||||
Succesful SSA optimization Pass2ConditionalJumpSimplification
|
||||
Constant (const byte*) main::SCREEN#0 = ((byte*))1024
|
||||
Succesful SSA optimization Pass2ConstantIdentification
|
||||
Consolidated array index constant in *(main::SCREEN#0+0)
|
||||
Consolidated array index constant in *(main::SCREEN#0+0)
|
||||
Succesful SSA optimization Pass2ConstantAdditionElimination
|
||||
if() condition always false - eliminating if((byte/signed byte/word/signed word/dword/signed dword) 7<(byte/signed byte/word/signed word/dword/signed dword) 4) goto main::@1
|
||||
Succesful SSA optimization Pass2ConstantIfs
|
||||
Removing unused block main::@1
|
||||
Succesful SSA optimization Pass2EliminateUnusedBlocks
|
||||
OPTIMIZING CONTROL FLOW GRAPH
|
||||
Block Sequence Planned @begin @1 @end main main::@3 main::@return
|
||||
Block Sequence Planned @begin @1 @end main main::@3 main::@return
|
||||
Adding NOP phi() at start of @begin
|
||||
Adding NOP phi() at start of @1
|
||||
Adding NOP phi() at start of @end
|
||||
Adding NOP phi() at start of main
|
||||
CALL GRAPH
|
||||
Calls in [] to main:2
|
||||
|
||||
Propagating live ranges...
|
||||
Created 0 initial phi equivalence classes
|
||||
Coalesced down to 0 phi equivalence classes
|
||||
Block Sequence Planned @begin @1 @end main main::@3 main::@return
|
||||
Adding NOP phi() at start of @begin
|
||||
Adding NOP phi() at start of @1
|
||||
Adding NOP phi() at start of @end
|
||||
Adding NOP phi() at start of main
|
||||
Propagating live ranges...
|
||||
|
||||
FINAL CONTROL FLOW GRAPH
|
||||
@begin: scope:[] from
|
||||
[0] phi() [ ] ( )
|
||||
to:@1
|
||||
@1: scope:[] from @begin
|
||||
[1] phi() [ ] ( )
|
||||
[2] call main param-assignment [ ] ( )
|
||||
to:@end
|
||||
@end: scope:[] from @1
|
||||
[3] phi() [ ] ( )
|
||||
main: scope:[main] from @1
|
||||
[4] phi() [ ] ( main:2 [ ] )
|
||||
to:main::@3
|
||||
main::@3: scope:[main] from main
|
||||
[5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) '!' [ ] ( main:2 [ ] )
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@3
|
||||
[6] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
||||
|
||||
DOMINATORS
|
||||
@begin dominated by @begin
|
||||
@1 dominated by @1 @begin
|
||||
@end dominated by @1 @begin @end
|
||||
main dominated by @1 @begin main
|
||||
main::@3 dominated by @1 @begin main main::@3
|
||||
main::@return dominated by main::@return @1 @begin main main::@3
|
||||
|
||||
NATURAL LOOPS
|
||||
|
||||
NATURAL LOOPS WITH DEPTH
|
||||
Found 0 loops in scope []
|
||||
Found 0 loops in scope [main]
|
||||
|
||||
|
||||
VARIABLE REGISTER WEIGHTS
|
||||
(void()) main()
|
||||
(byte*) main::SCREEN
|
||||
|
||||
Initial phi equivalence classes
|
||||
Complete equivalence classes
|
||||
|
||||
INITIAL ASM
|
||||
//SEG0 Basic Upstart
|
||||
.pc = $801 "Basic"
|
||||
:BasicUpstart(main)
|
||||
.pc = $80d "Program"
|
||||
//SEG1 Global Constants & labels
|
||||
//SEG2 @begin
|
||||
bbegin:
|
||||
//SEG3 [1] phi from @begin to @1 [phi:@begin->@1]
|
||||
b1_from_bbegin:
|
||||
jmp b1
|
||||
//SEG4 @1
|
||||
b1:
|
||||
//SEG5 [2] call main param-assignment [ ] ( )
|
||||
//SEG6 [4] phi from @1 to main [phi:@1->main]
|
||||
main_from_b1:
|
||||
jsr main
|
||||
//SEG7 [3] phi from @1 to @end [phi:@1->@end]
|
||||
bend_from_b1:
|
||||
jmp bend
|
||||
//SEG8 @end
|
||||
bend:
|
||||
//SEG9 main
|
||||
main: {
|
||||
.label SCREEN = $400
|
||||
jmp b3
|
||||
//SEG10 main::@3
|
||||
b3:
|
||||
//SEG11 [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) '!' [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #'!'
|
||||
sta SCREEN+0
|
||||
jmp breturn
|
||||
//SEG12 main::@return
|
||||
breturn:
|
||||
//SEG13 [6] return [ ] ( main:2 [ ] )
|
||||
rts
|
||||
}
|
||||
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Statement [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) '!' [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
|
||||
REGISTER UPLIFT SCOPES
|
||||
Uplift Scope [main]
|
||||
Uplift Scope []
|
||||
|
||||
Uplifting [main] best 57 combination
|
||||
Uplifting [] best 57 combination
|
||||
|
||||
ASSEMBLER BEFORE OPTIMIZATION
|
||||
//SEG0 Basic Upstart
|
||||
.pc = $801 "Basic"
|
||||
:BasicUpstart(main)
|
||||
.pc = $80d "Program"
|
||||
//SEG1 Global Constants & labels
|
||||
//SEG2 @begin
|
||||
bbegin:
|
||||
//SEG3 [1] phi from @begin to @1 [phi:@begin->@1]
|
||||
b1_from_bbegin:
|
||||
jmp b1
|
||||
//SEG4 @1
|
||||
b1:
|
||||
//SEG5 [2] call main param-assignment [ ] ( )
|
||||
//SEG6 [4] phi from @1 to main [phi:@1->main]
|
||||
main_from_b1:
|
||||
jsr main
|
||||
//SEG7 [3] phi from @1 to @end [phi:@1->@end]
|
||||
bend_from_b1:
|
||||
jmp bend
|
||||
//SEG8 @end
|
||||
bend:
|
||||
//SEG9 main
|
||||
main: {
|
||||
.label SCREEN = $400
|
||||
jmp b3
|
||||
//SEG10 main::@3
|
||||
b3:
|
||||
//SEG11 [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) '!' [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #'!'
|
||||
sta SCREEN+0
|
||||
jmp breturn
|
||||
//SEG12 main::@return
|
||||
breturn:
|
||||
//SEG13 [6] return [ ] ( main:2 [ ] )
|
||||
rts
|
||||
}
|
||||
|
||||
ASSEMBLER OPTIMIZATIONS
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp bend
|
||||
Removing instruction jmp b3
|
||||
Removing instruction jmp breturn
|
||||
Succesful ASM optimization Pass5NextJumpElimination
|
||||
Removing instruction bbegin:
|
||||
Removing instruction b1_from_bbegin:
|
||||
Removing instruction main_from_b1:
|
||||
Removing instruction bend_from_b1:
|
||||
Succesful ASM optimization Pass5RedundantLabelElimination
|
||||
Removing instruction b1:
|
||||
Removing instruction bend:
|
||||
Removing instruction b3:
|
||||
Removing instruction breturn:
|
||||
Succesful ASM optimization Pass5UnusedLabelElimination
|
||||
|
||||
FINAL SYMBOL TABLE
|
||||
(label) @1
|
||||
(label) @begin
|
||||
(label) @end
|
||||
(void()) main()
|
||||
(label) main::@3
|
||||
(label) main::@return
|
||||
(byte*) main::SCREEN
|
||||
(const byte*) main::SCREEN#0 SCREEN = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
|
||||
|
||||
|
||||
FINAL ASSEMBLER
|
||||
Score: 18
|
||||
|
||||
//SEG0 Basic Upstart
|
||||
.pc = $801 "Basic"
|
||||
:BasicUpstart(main)
|
||||
.pc = $80d "Program"
|
||||
//SEG1 Global Constants & labels
|
||||
//SEG2 @begin
|
||||
//SEG3 [1] phi from @begin to @1 [phi:@begin->@1]
|
||||
//SEG4 @1
|
||||
//SEG5 [2] call main param-assignment [ ] ( )
|
||||
//SEG6 [4] phi from @1 to main [phi:@1->main]
|
||||
jsr main
|
||||
//SEG7 [3] phi from @1 to @end [phi:@1->@end]
|
||||
//SEG8 @end
|
||||
//SEG9 main
|
||||
main: {
|
||||
.label SCREEN = $400
|
||||
//SEG10 main::@3
|
||||
//SEG11 [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) '!' [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #'!'
|
||||
sta SCREEN+0
|
||||
//SEG12 main::@return
|
||||
//SEG13 [6] return [ ] ( main:2 [ ] )
|
||||
rts
|
||||
}
|
||||
|
@ -0,0 +1,9 @@
|
||||
(label) @1
|
||||
(label) @begin
|
||||
(label) @end
|
||||
(void()) main()
|
||||
(label) main::@3
|
||||
(label) main::@return
|
||||
(byte*) main::SCREEN
|
||||
(const byte*) main::SCREEN#0 SCREEN = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
|
@ -21,24 +21,14 @@ main: {
|
||||
line: {
|
||||
.const x0 = 0
|
||||
.const x1 = $a
|
||||
.label x = 2
|
||||
lda #x0
|
||||
cmp #x1
|
||||
bcs b1
|
||||
sta x
|
||||
b2:
|
||||
ldx x
|
||||
jsr plot
|
||||
inc x
|
||||
lda #x1
|
||||
cmp x
|
||||
bcs b2
|
||||
breturn:
|
||||
rts
|
||||
b1:
|
||||
ldx #x0
|
||||
b3:
|
||||
jsr plot
|
||||
jmp breturn
|
||||
inx
|
||||
cpx #x1
|
||||
bcc b3
|
||||
beq b3
|
||||
rts
|
||||
}
|
||||
plot: {
|
||||
ldy plots,x
|
||||
|
@ -22,30 +22,25 @@ main::@2: scope:[main] from main::@1 main::@2
|
||||
[11] call line param-assignment [ ] ( main:2 [ ] )
|
||||
to:main::@2
|
||||
line: scope:[line] from main::@2
|
||||
[12] if((const byte) line::x0#0>=(const byte) line::x1#0) goto line::@1 [ ] ( main:2::line:11 [ ] )
|
||||
to:line::@2
|
||||
line::@2: scope:[line] from line line::@8
|
||||
[12] phi() [ ] ( main:2::line:11 [ ] )
|
||||
to:line::@3
|
||||
line::@3: scope:[line] from line line::@8
|
||||
[13] (byte) line::x#2 ← phi( line/(const byte) line::x0#0 line::@8/(byte) line::x#1 ) [ line::x#2 ] ( main:2::line:11 [ line::x#2 ] )
|
||||
[14] (byte) plot::x#1 ← (byte) line::x#2 [ line::x#2 plot::x#1 ] ( main:2::line:11 [ line::x#2 plot::x#1 ] )
|
||||
[15] call plot param-assignment [ line::x#2 ] ( main:2::line:11 [ line::x#2 ] )
|
||||
to:line::@8
|
||||
line::@8: scope:[line] from line::@2
|
||||
line::@8: scope:[line] from line::@3
|
||||
[16] (byte) line::x#1 ← ++ (byte) line::x#2 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] )
|
||||
[17] if((byte) line::x#1<=(const byte) line::x1#0) goto line::@2 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] )
|
||||
[17] if((byte) line::x#1<=(const byte) line::x1#0) goto line::@3 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] )
|
||||
to:line::@return
|
||||
line::@return: scope:[line] from line::@1 line::@8
|
||||
line::@return: scope:[line] from line::@8
|
||||
[18] return [ ] ( main:2::line:11 [ ] )
|
||||
to:@return
|
||||
line::@1: scope:[line] from line
|
||||
[19] phi() [ ] ( main:2::line:11 [ ] )
|
||||
[20] call plot param-assignment [ ] ( main:2::line:11 [ ] )
|
||||
to:line::@return
|
||||
plot: scope:[plot] from line::@1 line::@2
|
||||
[21] (byte) plot::x#2 ← phi( line::@1/(const byte) line::x0#0 line::@2/(byte) plot::x#1 ) [ plot::x#2 ] ( main:2::line:11::plot:15 [ line::x#2 plot::x#2 ] main:2::line:11::plot:20 [ plot::x#2 ] )
|
||||
[22] (byte) plot::idx#0 ← *((const byte*) plots#0 + (byte) plot::x#2) [ plot::idx#0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 ] main:2::line:11::plot:20 [ plot::idx#0 ] )
|
||||
[23] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] main:2::line:11::plot:20 [ plot::idx#0 plot::$0 ] )
|
||||
[24] *((const byte*) SCREEN#0 + (byte) plot::idx#0) ← (byte/signed word/word/dword/signed dword~) plot::$0 [ ] ( main:2::line:11::plot:15 [ line::x#2 ] main:2::line:11::plot:20 [ ] )
|
||||
plot: scope:[plot] from line::@3
|
||||
[19] (byte) plot::idx#0 ← *((const byte*) plots#0 + (byte) plot::x#1) [ plot::idx#0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 ] )
|
||||
[20] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] )
|
||||
[21] *((const byte*) SCREEN#0 + (byte) plot::idx#0) ← (byte/signed word/word/dword/signed dword~) plot::$0 [ ] ( main:2::line:11::plot:15 [ line::x#2 ] )
|
||||
to:plot::@return
|
||||
plot::@return: scope:[plot] from plot
|
||||
[25] return [ ] ( main:2::line:11::plot:15 [ line::x#2 ] main:2::line:11::plot:20 [ ] )
|
||||
[22] return [ ] ( main:2::line:11::plot:15 [ line::x#2 ] )
|
||||
to:@return
|
||||
|
@ -48,18 +48,17 @@ main::@return:
|
||||
endproc // main()
|
||||
proc (void()) line((byte) line::x0 , (byte) line::x1)
|
||||
(boolean~) line::$0 ← (byte) line::x0 < (byte) line::x1
|
||||
(boolean~) line::$1 ← ! (boolean~) line::$0
|
||||
if((boolean~) line::$1) goto line::@1
|
||||
if((boolean~) line::$0) goto line::@1
|
||||
(void~) line::$1 ← call plot (byte) line::x0
|
||||
goto line::@2
|
||||
line::@1:
|
||||
(byte) line::x ← (byte) line::x0
|
||||
line::@2:
|
||||
line::@3:
|
||||
(void~) line::$2 ← call plot (byte) line::x
|
||||
(byte) line::x ← ++ (byte) line::x
|
||||
(boolean~) line::$3 ← (byte) line::x <= (byte) line::x1
|
||||
if((boolean~) line::$3) goto line::@2
|
||||
goto line::@3
|
||||
line::@1:
|
||||
(void~) line::$4 ← call plot (byte) line::x0
|
||||
line::@3:
|
||||
if((boolean~) line::$3) goto line::@3
|
||||
line::@2:
|
||||
line::@return:
|
||||
return
|
||||
endproc // line()
|
||||
@ -76,10 +75,9 @@ SYMBOLS
|
||||
(byte*) SCREEN
|
||||
(void()) line((byte) line::x0 , (byte) line::x1)
|
||||
(boolean~) line::$0
|
||||
(boolean~) line::$1
|
||||
(void~) line::$1
|
||||
(void~) line::$2
|
||||
(boolean~) line::$3
|
||||
(void~) line::$4
|
||||
(label) line::@1
|
||||
(label) line::@2
|
||||
(label) line::@3
|
||||
@ -133,28 +131,27 @@ main::@return: scope:[main] from main::@4
|
||||
to:@2
|
||||
line: scope:[line] from
|
||||
(boolean~) line::$0 ← (byte) line::x0 < (byte) line::x1
|
||||
(boolean~) line::$1 ← ! (boolean~) line::$0
|
||||
if((boolean~) line::$1) goto line::@1
|
||||
if((boolean~) line::$0) goto line::@1
|
||||
to:line::@4
|
||||
line::@1: scope:[line] from line line::@6
|
||||
(void~) line::$4 ← call plot (byte) line::x0
|
||||
line::@1: scope:[line] from line line::@5
|
||||
(byte) line::x ← (byte) line::x0
|
||||
to:line::@3
|
||||
line::@4: scope:[line] from line
|
||||
(byte) line::x ← (byte) line::x0
|
||||
(void~) line::$1 ← call plot (byte) line::x0
|
||||
to:line::@2
|
||||
line::@2: scope:[line] from line::@2 line::@4
|
||||
line::@2: scope:[line] from line::@4 line::@6
|
||||
to:line::@return
|
||||
line::@5: scope:[line] from
|
||||
to:line::@1
|
||||
line::@3: scope:[line] from line::@1 line::@3
|
||||
(void~) line::$2 ← call plot (byte) line::x
|
||||
(byte) line::x ← ++ (byte) line::x
|
||||
(boolean~) line::$3 ← (byte) line::x <= (byte) line::x1
|
||||
if((boolean~) line::$3) goto line::@2
|
||||
to:line::@5
|
||||
line::@5: scope:[line] from line::@2
|
||||
to:line::@3
|
||||
line::@3: scope:[line] from line::@1 line::@5
|
||||
to:line::@return
|
||||
line::@6: scope:[line] from
|
||||
to:line::@1
|
||||
line::@return: scope:[line] from line::@3
|
||||
if((boolean~) line::$3) goto line::@3
|
||||
to:line::@6
|
||||
line::@6: scope:[line] from line::@3
|
||||
to:line::@2
|
||||
line::@return: scope:[line] from line::@2
|
||||
return
|
||||
to:@return
|
||||
@2: scope:[] from @1
|
||||
@ -173,13 +170,13 @@ plot::@return: scope:[plot] from plot
|
||||
@end: scope:[] from @3
|
||||
|
||||
Eliminating unused variable - keeping the call (void~) main::$1
|
||||
Eliminating unused variable - keeping the call (void~) line::$4
|
||||
Eliminating unused variable - keeping the call (void~) line::$1
|
||||
Eliminating unused variable - keeping the call (void~) line::$2
|
||||
Removing empty block main::@3
|
||||
Removing empty block main::@4
|
||||
Removing empty block @1
|
||||
Removing empty block line::@2
|
||||
Removing empty block line::@5
|
||||
Removing empty block line::@3
|
||||
Removing empty block line::@6
|
||||
Removing empty block @2
|
||||
PROCEDURE MODIFY VARIABLE ANALYSIS
|
||||
@ -219,39 +216,38 @@ line: scope:[line] from main::@2
|
||||
(byte) line::x1#1 ← phi( main::@2/(byte) line::x1#0 )
|
||||
(byte) line::x0#1 ← phi( main::@2/(byte) line::x0#0 )
|
||||
(boolean~) line::$0 ← (byte) line::x0#1 < (byte) line::x1#1
|
||||
(boolean~) line::$1 ← ! (boolean~) line::$0
|
||||
if((boolean~) line::$1) goto line::@1
|
||||
if((boolean~) line::$0) goto line::@1
|
||||
to:line::@4
|
||||
line::@1: scope:[line] from line
|
||||
(byte) line::x1#4 ← phi( line/(byte) line::x1#1 )
|
||||
(byte) line::x0#2 ← phi( line/(byte) line::x0#1 )
|
||||
(byte) plot::x#0 ← (byte) line::x0#2
|
||||
(byte) line::x#0 ← (byte) line::x0#2
|
||||
to:line::@3
|
||||
line::@4: scope:[line] from line
|
||||
(byte) line::x0#3 ← phi( line/(byte) line::x0#1 )
|
||||
(byte) plot::x#0 ← (byte) line::x0#3
|
||||
call plot param-assignment
|
||||
to:line::@7
|
||||
line::@7: scope:[line] from line::@1
|
||||
line::@7: scope:[line] from line::@4
|
||||
to:line::@return
|
||||
line::@4: scope:[line] from line
|
||||
(byte) line::x1#4 ← phi( line/(byte) line::x1#1 )
|
||||
(byte) line::x0#3 ← phi( line/(byte) line::x0#1 )
|
||||
(byte) line::x#0 ← (byte) line::x0#3
|
||||
to:line::@2
|
||||
line::@2: scope:[line] from line::@4 line::@8
|
||||
(byte) line::x1#3 ← phi( line::@4/(byte) line::x1#4 line::@8/(byte) line::x1#2 )
|
||||
(byte) line::x#2 ← phi( line::@4/(byte) line::x#0 line::@8/(byte) line::x#1 )
|
||||
line::@3: scope:[line] from line::@1 line::@8
|
||||
(byte) line::x1#3 ← phi( line::@1/(byte) line::x1#4 line::@8/(byte) line::x1#2 )
|
||||
(byte) line::x#2 ← phi( line::@1/(byte) line::x#0 line::@8/(byte) line::x#1 )
|
||||
(byte) plot::x#1 ← (byte) line::x#2
|
||||
call plot param-assignment
|
||||
to:line::@8
|
||||
line::@8: scope:[line] from line::@2
|
||||
(byte) line::x1#2 ← phi( line::@2/(byte) line::x1#3 )
|
||||
(byte) line::x#3 ← phi( line::@2/(byte) line::x#2 )
|
||||
line::@8: scope:[line] from line::@3
|
||||
(byte) line::x1#2 ← phi( line::@3/(byte) line::x1#3 )
|
||||
(byte) line::x#3 ← phi( line::@3/(byte) line::x#2 )
|
||||
(byte) line::x#1 ← ++ (byte) line::x#3
|
||||
(boolean~) line::$3 ← (byte) line::x#1 <= (byte) line::x1#2
|
||||
if((boolean~) line::$3) goto line::@2
|
||||
if((boolean~) line::$3) goto line::@3
|
||||
to:line::@return
|
||||
line::@return: scope:[line] from line::@7 line::@8
|
||||
return
|
||||
to:@return
|
||||
plot: scope:[plot] from line::@1 line::@2
|
||||
(byte) plot::x#2 ← phi( line::@1/(byte) plot::x#0 line::@2/(byte) plot::x#1 )
|
||||
plot: scope:[plot] from line::@3 line::@4
|
||||
(byte) plot::x#2 ← phi( line::@3/(byte) plot::x#1 line::@4/(byte) plot::x#0 )
|
||||
(byte) plot::idx#0 ← *((byte*) plots#0 + (byte) plot::x#2)
|
||||
(byte/signed word/word/dword/signed dword~) plot::$0 ← *((byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
*((byte*) SCREEN#0 + (byte) plot::idx#0) ← (byte/signed word/word/dword/signed dword~) plot::$0
|
||||
@ -275,10 +271,9 @@ SYMBOL TABLE SSA
|
||||
(byte*) SCREEN#0
|
||||
(void()) line((byte) line::x0 , (byte) line::x1)
|
||||
(boolean~) line::$0
|
||||
(boolean~) line::$1
|
||||
(boolean~) line::$3
|
||||
(label) line::@1
|
||||
(label) line::@2
|
||||
(label) line::@3
|
||||
(label) line::@4
|
||||
(label) line::@7
|
||||
(label) line::@8
|
||||
@ -325,14 +320,12 @@ OPTIMIZING CONTROL FLOW GRAPH
|
||||
Culled Empty Block (label) line::@7
|
||||
Culled Empty Block (label) @4
|
||||
Succesful SSA optimization Pass2CullEmptyBlocks
|
||||
Inversing boolean not (boolean~) line::$1 ← (byte) line::x0#1 >= (byte) line::x1#1 from (boolean~) line::$0 ← (byte) line::x0#1 < (byte) line::x1#1
|
||||
Succesful SSA optimization Pass2UnaryNotSimplification
|
||||
Not aliassing across scopes: line::x0#1 line::x0#0
|
||||
Not aliassing across scopes: line::x1#1 line::x1#0
|
||||
Not aliassing across scopes: plot::x#0 line::x0#2
|
||||
Not aliassing across scopes: plot::x#0 line::x0#3
|
||||
Not aliassing across scopes: plot::x#1 line::x#2
|
||||
Not aliassing across scopes: plot::x#2 plot::x#0
|
||||
Alias (byte) line::x0#1 = (byte) line::x0#2 (byte) line::x0#3 (byte) line::x#0
|
||||
Not aliassing across scopes: plot::x#2 plot::x#1
|
||||
Alias (byte) line::x0#1 = (byte) line::x0#2 (byte) line::x#0 (byte) line::x0#3
|
||||
Alias (byte) line::x1#1 = (byte) line::x1#4
|
||||
Alias (byte) line::x#2 = (byte) line::x#3
|
||||
Alias (byte) line::x1#2 = (byte) line::x1#3
|
||||
@ -341,7 +334,7 @@ Not aliassing across scopes: line::x0#1 line::x0#0
|
||||
Not aliassing across scopes: line::x1#1 line::x1#0
|
||||
Not aliassing across scopes: plot::x#0 line::x0#1
|
||||
Not aliassing across scopes: plot::x#1 line::x#2
|
||||
Not aliassing across scopes: plot::x#2 plot::x#0
|
||||
Not aliassing across scopes: plot::x#2 plot::x#1
|
||||
Self Phi Eliminated (byte) line::x1#2
|
||||
Succesful SSA optimization Pass2SelfPhiElimination
|
||||
Redundant Phi (byte) line::x0#1 (byte) line::x0#0
|
||||
@ -349,8 +342,8 @@ Redundant Phi (byte) line::x1#1 (byte) line::x1#0
|
||||
Redundant Phi (byte) line::x1#2 (byte) line::x1#1
|
||||
Succesful SSA optimization Pass2RedundantPhiElimination
|
||||
Simple Condition (boolean~) main::$0 if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 40) goto main::@1
|
||||
Simple Condition (boolean~) line::$1 if((byte) line::x0#0>=(byte) line::x1#0) goto line::@1
|
||||
Simple Condition (boolean~) line::$3 if((byte) line::x#1<=(byte) line::x1#0) goto line::@2
|
||||
Simple Condition (boolean~) line::$0 if((byte) line::x0#0<(byte) line::x1#0) goto line::@1
|
||||
Simple Condition (boolean~) line::$3 if((byte) line::x#1<=(byte) line::x1#0) goto line::@3
|
||||
Succesful SSA optimization Pass2ConditionalJumpSimplification
|
||||
Constant (const byte*) plots#0 = ((byte*))4096
|
||||
Constant (const byte*) SCREEN#0 = ((byte*))1024
|
||||
@ -363,59 +356,62 @@ Succesful SSA optimization Pass2ConstantIdentification
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte) main::i#2
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte) main::i#2
|
||||
if() condition always true - replacing block destination if(true) goto main::@2
|
||||
if() condition always true - replacing block destination if((const byte) line::x0#0<(const byte) line::x1#0) goto line::@1
|
||||
Succesful SSA optimization Pass2ConstantIfs
|
||||
Removing unused block main::@return
|
||||
Removing PHI-reference to removed block (line::@4) in block plot
|
||||
Removing unused block line::@4
|
||||
Succesful SSA optimization Pass2EliminateUnusedBlocks
|
||||
Culled Empty Block (label) main::@5
|
||||
Culled Empty Block (label) line::@4
|
||||
Culled Empty Block (label) line::@1
|
||||
Succesful SSA optimization Pass2CullEmptyBlocks
|
||||
Not aliassing across scopes: plot::x#1 line::x#2
|
||||
Not aliassing across scopes: plot::x#2 plot::x#1
|
||||
Redundant Phi (byte) plot::x#2 (byte) plot::x#1
|
||||
Succesful SSA optimization Pass2RedundantPhiElimination
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte) main::i#2
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte) main::i#2
|
||||
Eliminating unused constant (const byte) plot::x#0
|
||||
Succesful SSA optimization PassNEliminateUnusedVars
|
||||
Not aliassing across scopes: plot::x#1 line::x#2
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte) main::i#2
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte) main::i#2
|
||||
OPTIMIZING CONTROL FLOW GRAPH
|
||||
Inlining constant with var siblings (const byte) main::i#0
|
||||
Inlining constant with var siblings (const byte) main::i#0
|
||||
Inlining constant with var siblings (const byte) plot::x#0
|
||||
Inlining constant with var siblings (const byte) plot::x#0
|
||||
Constant inlined main::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Constant inlined plot::x#0 = (const byte) line::x0#0
|
||||
Succesful SSA optimization Pass2ConstantInlining
|
||||
Block Sequence Planned @begin @3 @end main main::@1 main::@2 line line::@2 line::@8 line::@return line::@1 plot plot::@return
|
||||
Block Sequence Planned @begin @3 @end main main::@1 main::@2 line line::@3 line::@8 line::@return plot plot::@return
|
||||
Added new block during phi lifting main::@6(between main::@1 and main::@1)
|
||||
Added new block during phi lifting line::@9(between line::@8 and line::@2)
|
||||
Block Sequence Planned @begin @3 @end main main::@1 main::@2 main::@6 line line::@2 line::@8 line::@return line::@9 line::@1 plot plot::@return
|
||||
Added new block during phi lifting line::@9(between line::@8 and line::@3)
|
||||
Block Sequence Planned @begin @3 @end main main::@1 main::@2 main::@6 line line::@3 line::@8 line::@return line::@9 plot plot::@return
|
||||
Adding NOP phi() at start of @begin
|
||||
Adding NOP phi() at start of @3
|
||||
Adding NOP phi() at start of @end
|
||||
Adding NOP phi() at start of main
|
||||
Adding NOP phi() at start of main::@2
|
||||
Adding NOP phi() at start of line::@1
|
||||
Adding NOP phi() at start of line
|
||||
CALL GRAPH
|
||||
Calls in [] to main:2
|
||||
Calls in [main] to line:11
|
||||
Calls in [line] to plot:17 plot:23
|
||||
Calls in [line] to plot:16
|
||||
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Created 3 initial phi equivalence classes
|
||||
Created 2 initial phi equivalence classes
|
||||
Coalesced [12] main::i#3 ← main::i#1
|
||||
Coalesced [16] plot::x#3 ← plot::x#1
|
||||
Coalesced [21] line::x#4 ← line::x#1
|
||||
Coalesced down to 3 phi equivalence classes
|
||||
Coalesced [20] line::x#4 ← line::x#1
|
||||
Coalesced down to 2 phi equivalence classes
|
||||
Culled Empty Block (label) main::@6
|
||||
Culled Empty Block (label) line::@9
|
||||
Block Sequence Planned @begin @3 @end main main::@1 main::@2 line line::@2 line::@8 line::@return line::@1 plot plot::@return
|
||||
Block Sequence Planned @begin @3 @end main main::@1 main::@2 line line::@3 line::@8 line::@return plot plot::@return
|
||||
Adding NOP phi() at start of @begin
|
||||
Adding NOP phi() at start of @3
|
||||
Adding NOP phi() at start of @end
|
||||
Adding NOP phi() at start of main
|
||||
Adding NOP phi() at start of main::@2
|
||||
Adding NOP phi() at start of line::@1
|
||||
Adding NOP phi() at start of line
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
@ -445,59 +441,53 @@ main::@2: scope:[main] from main::@1 main::@2
|
||||
[11] call line param-assignment [ ] ( main:2 [ ] )
|
||||
to:main::@2
|
||||
line: scope:[line] from main::@2
|
||||
[12] if((const byte) line::x0#0>=(const byte) line::x1#0) goto line::@1 [ ] ( main:2::line:11 [ ] )
|
||||
to:line::@2
|
||||
line::@2: scope:[line] from line line::@8
|
||||
[12] phi() [ ] ( main:2::line:11 [ ] )
|
||||
to:line::@3
|
||||
line::@3: scope:[line] from line line::@8
|
||||
[13] (byte) line::x#2 ← phi( line/(const byte) line::x0#0 line::@8/(byte) line::x#1 ) [ line::x#2 ] ( main:2::line:11 [ line::x#2 ] )
|
||||
[14] (byte) plot::x#1 ← (byte) line::x#2 [ line::x#2 plot::x#1 ] ( main:2::line:11 [ line::x#2 plot::x#1 ] )
|
||||
[15] call plot param-assignment [ line::x#2 ] ( main:2::line:11 [ line::x#2 ] )
|
||||
to:line::@8
|
||||
line::@8: scope:[line] from line::@2
|
||||
line::@8: scope:[line] from line::@3
|
||||
[16] (byte) line::x#1 ← ++ (byte) line::x#2 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] )
|
||||
[17] if((byte) line::x#1<=(const byte) line::x1#0) goto line::@2 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] )
|
||||
[17] if((byte) line::x#1<=(const byte) line::x1#0) goto line::@3 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] )
|
||||
to:line::@return
|
||||
line::@return: scope:[line] from line::@1 line::@8
|
||||
line::@return: scope:[line] from line::@8
|
||||
[18] return [ ] ( main:2::line:11 [ ] )
|
||||
to:@return
|
||||
line::@1: scope:[line] from line
|
||||
[19] phi() [ ] ( main:2::line:11 [ ] )
|
||||
[20] call plot param-assignment [ ] ( main:2::line:11 [ ] )
|
||||
to:line::@return
|
||||
plot: scope:[plot] from line::@1 line::@2
|
||||
[21] (byte) plot::x#2 ← phi( line::@1/(const byte) line::x0#0 line::@2/(byte) plot::x#1 ) [ plot::x#2 ] ( main:2::line:11::plot:15 [ line::x#2 plot::x#2 ] main:2::line:11::plot:20 [ plot::x#2 ] )
|
||||
[22] (byte) plot::idx#0 ← *((const byte*) plots#0 + (byte) plot::x#2) [ plot::idx#0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 ] main:2::line:11::plot:20 [ plot::idx#0 ] )
|
||||
[23] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] main:2::line:11::plot:20 [ plot::idx#0 plot::$0 ] )
|
||||
[24] *((const byte*) SCREEN#0 + (byte) plot::idx#0) ← (byte/signed word/word/dword/signed dword~) plot::$0 [ ] ( main:2::line:11::plot:15 [ line::x#2 ] main:2::line:11::plot:20 [ ] )
|
||||
plot: scope:[plot] from line::@3
|
||||
[19] (byte) plot::idx#0 ← *((const byte*) plots#0 + (byte) plot::x#1) [ plot::idx#0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 ] )
|
||||
[20] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] )
|
||||
[21] *((const byte*) SCREEN#0 + (byte) plot::idx#0) ← (byte/signed word/word/dword/signed dword~) plot::$0 [ ] ( main:2::line:11::plot:15 [ line::x#2 ] )
|
||||
to:plot::@return
|
||||
plot::@return: scope:[plot] from plot
|
||||
[25] return [ ] ( main:2::line:11::plot:15 [ line::x#2 ] main:2::line:11::plot:20 [ ] )
|
||||
[22] return [ ] ( main:2::line:11::plot:15 [ line::x#2 ] )
|
||||
to:@return
|
||||
|
||||
DOMINATORS
|
||||
@begin dominated by @begin
|
||||
@3 dominated by @begin @3
|
||||
@end dominated by @begin @end @3
|
||||
main dominated by @begin main @3
|
||||
main::@1 dominated by @begin main @3 main::@1
|
||||
main::@2 dominated by @begin main @3 main::@1 main::@2
|
||||
line dominated by @begin line main @3 main::@1 main::@2
|
||||
line::@2 dominated by @begin line main line::@2 @3 main::@1 main::@2
|
||||
line::@8 dominated by line::@8 @begin line main line::@2 @3 main::@1 main::@2
|
||||
line::@return dominated by @begin line main @3 main::@1 line::@return main::@2
|
||||
line::@1 dominated by @begin line line::@1 main @3 main::@1 main::@2
|
||||
plot dominated by @begin line main @3 plot main::@1 main::@2
|
||||
plot::@return dominated by @begin line main @3 plot main::@1 plot::@return main::@2
|
||||
@end dominated by @begin @3 @end
|
||||
main dominated by @begin @3 main
|
||||
main::@1 dominated by @begin @3 main::@1 main
|
||||
main::@2 dominated by @begin @3 main::@1 main::@2 main
|
||||
line dominated by @begin @3 line main::@1 main::@2 main
|
||||
line::@3 dominated by @begin @3 line main::@1 main::@2 main line::@3
|
||||
line::@8 dominated by line::@8 @begin @3 line main::@1 main::@2 main line::@3
|
||||
line::@return dominated by line::@8 @begin @3 line main::@1 line::@return main::@2 main line::@3
|
||||
plot dominated by @begin @3 plot line main::@1 main::@2 main line::@3
|
||||
plot::@return dominated by @begin @3 plot line main::@1 plot::@return main::@2 main line::@3
|
||||
|
||||
NATURAL LOOPS
|
||||
Found back edge: Loop head: main::@1 tails: main::@1 blocks: null
|
||||
Found back edge: Loop head: main::@2 tails: main::@2 blocks: null
|
||||
Found back edge: Loop head: line::@2 tails: line::@8 blocks: null
|
||||
Found back edge: Loop head: line::@3 tails: line::@8 blocks: null
|
||||
Populated: Loop head: main::@1 tails: main::@1 blocks: main::@1
|
||||
Populated: Loop head: main::@2 tails: main::@2 blocks: main::@2
|
||||
Populated: Loop head: line::@2 tails: line::@8 blocks: line::@8 line::@2
|
||||
Populated: Loop head: line::@3 tails: line::@8 blocks: line::@8 line::@3
|
||||
Loop head: main::@1 tails: main::@1 blocks: main::@1
|
||||
Loop head: main::@2 tails: main::@2 blocks: main::@2
|
||||
Loop head: line::@2 tails: line::@8 blocks: line::@8 line::@2
|
||||
Loop head: line::@3 tails: line::@8 blocks: line::@8 line::@3
|
||||
|
||||
NATURAL LOOPS WITH DEPTH
|
||||
Found 0 loops in scope []
|
||||
@ -505,11 +495,11 @@ Found 2 loops in scope [main]
|
||||
Loop head: main::@1 tails: main::@1 blocks: main::@1
|
||||
Loop head: main::@2 tails: main::@2 blocks: main::@2
|
||||
Found 1 loops in scope [line]
|
||||
Loop head: line::@2 tails: line::@8 blocks: line::@8 line::@2
|
||||
Loop head: line::@3 tails: line::@8 blocks: line::@8 line::@3
|
||||
Found 0 loops in scope [plot]
|
||||
Loop head: main::@1 tails: main::@1 blocks: main::@1 depth: 1
|
||||
Loop head: main::@2 tails: main::@2 blocks: main::@2 depth: 1
|
||||
Loop head: line::@2 tails: line::@8 blocks: line::@8 line::@2 depth: 2
|
||||
Loop head: line::@3 tails: line::@8 blocks: line::@8 line::@3 depth: 2
|
||||
|
||||
|
||||
VARIABLE REGISTER WEIGHTS
|
||||
@ -529,25 +519,24 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte) plot::idx
|
||||
(byte) plot::idx#0 3.0
|
||||
(byte) plot::x
|
||||
(byte) plot::x#1 202.0
|
||||
(byte) plot::x#2 103.0
|
||||
(byte) plot::x#1 103.0
|
||||
(byte*) plots
|
||||
|
||||
Initial phi equivalence classes
|
||||
[ main::i#2 main::i#1 ]
|
||||
[ line::x#2 line::x#1 ]
|
||||
[ plot::x#2 plot::x#1 ]
|
||||
Added variable plot::x#1 to zero page equivalence class [ plot::x#1 ]
|
||||
Added variable plot::idx#0 to zero page equivalence class [ plot::idx#0 ]
|
||||
Added variable plot::$0 to zero page equivalence class [ plot::$0 ]
|
||||
Complete equivalence classes
|
||||
[ main::i#2 main::i#1 ]
|
||||
[ line::x#2 line::x#1 ]
|
||||
[ plot::x#2 plot::x#1 ]
|
||||
[ plot::x#1 ]
|
||||
[ plot::idx#0 ]
|
||||
[ plot::$0 ]
|
||||
Allocated zp ZP_BYTE:2 [ main::i#2 main::i#1 ]
|
||||
Allocated zp ZP_BYTE:3 [ line::x#2 line::x#1 ]
|
||||
Allocated zp ZP_BYTE:4 [ plot::x#2 plot::x#1 ]
|
||||
Allocated zp ZP_BYTE:4 [ plot::x#1 ]
|
||||
Allocated zp ZP_BYTE:5 [ plot::idx#0 ]
|
||||
Allocated zp ZP_BYTE:6 [ plot::$0 ]
|
||||
|
||||
@ -611,122 +600,99 @@ main: {
|
||||
//SEG20 main::@2
|
||||
b2:
|
||||
//SEG21 [11] call line param-assignment [ ] ( main:2 [ ] )
|
||||
//SEG22 [12] phi from main::@2 to line [phi:main::@2->line]
|
||||
line_from_b2:
|
||||
jsr line
|
||||
jmp b2_from_b2
|
||||
}
|
||||
//SEG22 line
|
||||
//SEG23 line
|
||||
line: {
|
||||
.const x0 = 0
|
||||
.const x1 = $a
|
||||
.label x = 3
|
||||
//SEG23 [12] if((const byte) line::x0#0>=(const byte) line::x1#0) goto line::@1 [ ] ( main:2::line:11 [ ] ) -- vbuc1_ge_vbuc2_then_la1
|
||||
lda #x0
|
||||
cmp #x1
|
||||
bcs b1_from_line
|
||||
//SEG24 [13] phi from line to line::@2 [phi:line->line::@2]
|
||||
b2_from_line:
|
||||
//SEG25 [13] phi (byte) line::x#2 = (const byte) line::x0#0 [phi:line->line::@2#0] -- vbuz1=vbuc1
|
||||
//SEG24 [13] phi from line to line::@3 [phi:line->line::@3]
|
||||
b3_from_line:
|
||||
//SEG25 [13] phi (byte) line::x#2 = (const byte) line::x0#0 [phi:line->line::@3#0] -- vbuz1=vbuc1
|
||||
lda #x0
|
||||
sta x
|
||||
jmp b2
|
||||
//SEG26 [13] phi from line::@8 to line::@2 [phi:line::@8->line::@2]
|
||||
b2_from_b8:
|
||||
//SEG27 [13] phi (byte) line::x#2 = (byte) line::x#1 [phi:line::@8->line::@2#0] -- register_copy
|
||||
jmp b2
|
||||
//SEG28 line::@2
|
||||
b2:
|
||||
jmp b3
|
||||
//SEG26 [13] phi from line::@8 to line::@3 [phi:line::@8->line::@3]
|
||||
b3_from_b8:
|
||||
//SEG27 [13] phi (byte) line::x#2 = (byte) line::x#1 [phi:line::@8->line::@3#0] -- register_copy
|
||||
jmp b3
|
||||
//SEG28 line::@3
|
||||
b3:
|
||||
//SEG29 [14] (byte) plot::x#1 ← (byte) line::x#2 [ line::x#2 plot::x#1 ] ( main:2::line:11 [ line::x#2 plot::x#1 ] ) -- vbuz1=vbuz2
|
||||
lda x
|
||||
sta plot.x
|
||||
//SEG30 [15] call plot param-assignment [ line::x#2 ] ( main:2::line:11 [ line::x#2 ] )
|
||||
//SEG31 [21] phi from line::@2 to plot [phi:line::@2->plot]
|
||||
plot_from_b2:
|
||||
//SEG32 [21] phi (byte) plot::x#2 = (byte) plot::x#1 [phi:line::@2->plot#0] -- register_copy
|
||||
jsr plot
|
||||
jmp b8
|
||||
//SEG33 line::@8
|
||||
//SEG31 line::@8
|
||||
b8:
|
||||
//SEG34 [16] (byte) line::x#1 ← ++ (byte) line::x#2 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] ) -- vbuz1=_inc_vbuz1
|
||||
//SEG32 [16] (byte) line::x#1 ← ++ (byte) line::x#2 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] ) -- vbuz1=_inc_vbuz1
|
||||
inc x
|
||||
//SEG35 [17] if((byte) line::x#1<=(const byte) line::x1#0) goto line::@2 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] ) -- vbuz1_le_vbuc1_then_la1
|
||||
//SEG33 [17] if((byte) line::x#1<=(const byte) line::x1#0) goto line::@3 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] ) -- vbuz1_le_vbuc1_then_la1
|
||||
lda #x1
|
||||
cmp x
|
||||
bcs b2_from_b8
|
||||
bcs b3_from_b8
|
||||
jmp breturn
|
||||
//SEG36 line::@return
|
||||
//SEG34 line::@return
|
||||
breturn:
|
||||
//SEG37 [18] return [ ] ( main:2::line:11 [ ] )
|
||||
//SEG35 [18] return [ ] ( main:2::line:11 [ ] )
|
||||
rts
|
||||
//SEG38 [19] phi from line to line::@1 [phi:line->line::@1]
|
||||
b1_from_line:
|
||||
jmp b1
|
||||
//SEG39 line::@1
|
||||
b1:
|
||||
//SEG40 [20] call plot param-assignment [ ] ( main:2::line:11 [ ] )
|
||||
//SEG41 [21] phi from line::@1 to plot [phi:line::@1->plot]
|
||||
plot_from_b1:
|
||||
//SEG42 [21] phi (byte) plot::x#2 = (const byte) line::x0#0 [phi:line::@1->plot#0] -- vbuz1=vbuc1
|
||||
lda #x0
|
||||
sta plot.x
|
||||
jsr plot
|
||||
jmp breturn
|
||||
}
|
||||
//SEG43 plot
|
||||
//SEG36 plot
|
||||
plot: {
|
||||
.label _0 = 6
|
||||
.label x = 4
|
||||
.label idx = 5
|
||||
//SEG44 [22] (byte) plot::idx#0 ← *((const byte*) plots#0 + (byte) plot::x#2) [ plot::idx#0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 ] main:2::line:11::plot:20 [ plot::idx#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
//SEG37 [19] (byte) plot::idx#0 ← *((const byte*) plots#0 + (byte) plot::x#1) [ plot::idx#0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2
|
||||
ldy x
|
||||
lda plots,y
|
||||
sta idx
|
||||
//SEG45 [23] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] main:2::line:11::plot:20 [ plot::idx#0 plot::$0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2_plus_1
|
||||
//SEG38 [20] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2_plus_1
|
||||
ldy idx
|
||||
lda SCREEN,y
|
||||
clc
|
||||
adc #1
|
||||
sta _0
|
||||
//SEG46 [24] *((const byte*) SCREEN#0 + (byte) plot::idx#0) ← (byte/signed word/word/dword/signed dword~) plot::$0 [ ] ( main:2::line:11::plot:15 [ line::x#2 ] main:2::line:11::plot:20 [ ] ) -- pbuc1_derefidx_vbuz1=vbuz2
|
||||
//SEG39 [21] *((const byte*) SCREEN#0 + (byte) plot::idx#0) ← (byte/signed word/word/dword/signed dword~) plot::$0 [ ] ( main:2::line:11::plot:15 [ line::x#2 ] ) -- pbuc1_derefidx_vbuz1=vbuz2
|
||||
lda _0
|
||||
ldy idx
|
||||
sta SCREEN,y
|
||||
jmp breturn
|
||||
//SEG47 plot::@return
|
||||
//SEG40 plot::@return
|
||||
breturn:
|
||||
//SEG48 [25] return [ ] ( main:2::line:11::plot:15 [ line::x#2 ] main:2::line:11::plot:20 [ ] )
|
||||
//SEG41 [22] return [ ] ( main:2::line:11::plot:15 [ line::x#2 ] )
|
||||
rts
|
||||
}
|
||||
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Statement [7] *((const byte*) SCREEN#0 + (byte) main::i#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ main::i#2 ] ( main:2 [ main::i#2 ] ) always clobbers reg byte a
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ main::i#2 main::i#1 ]
|
||||
Statement [12] if((const byte) line::x0#0>=(const byte) line::x1#0) goto line::@1 [ ] ( main:2::line:11 [ ] ) always clobbers reg byte a
|
||||
Statement [23] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] main:2::line:11::plot:20 [ plot::idx#0 plot::$0 ] ) always clobbers reg byte a
|
||||
Statement [20] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] ) always clobbers reg byte a
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:3 [ line::x#2 line::x#1 ]
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:5 [ plot::idx#0 ]
|
||||
Statement [6] *((const byte*) plots#0 + (byte) main::i#2) ← (byte) main::i#2 [ main::i#2 ] ( main:2 [ main::i#2 ] ) always clobbers reg byte a
|
||||
Statement [7] *((const byte*) SCREEN#0 + (byte) main::i#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ main::i#2 ] ( main:2 [ main::i#2 ] ) always clobbers reg byte a
|
||||
Statement [12] if((const byte) line::x0#0>=(const byte) line::x1#0) goto line::@1 [ ] ( main:2::line:11 [ ] ) always clobbers reg byte a
|
||||
Statement [23] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] main:2::line:11::plot:20 [ plot::idx#0 plot::$0 ] ) always clobbers reg byte a
|
||||
Statement [20] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] ) always clobbers reg byte a
|
||||
Potential registers zp ZP_BYTE:2 [ main::i#2 main::i#1 ] : zp ZP_BYTE:2 , reg byte x , reg byte y ,
|
||||
Potential registers zp ZP_BYTE:3 [ line::x#2 line::x#1 ] : zp ZP_BYTE:3 , reg byte x , reg byte y ,
|
||||
Potential registers zp ZP_BYTE:4 [ plot::x#2 plot::x#1 ] : zp ZP_BYTE:4 , reg byte a , reg byte x , reg byte y ,
|
||||
Potential registers zp ZP_BYTE:4 [ plot::x#1 ] : zp ZP_BYTE:4 , reg byte a , reg byte x , reg byte y ,
|
||||
Potential registers zp ZP_BYTE:5 [ plot::idx#0 ] : zp ZP_BYTE:5 , reg byte x , reg byte y ,
|
||||
Potential registers zp ZP_BYTE:6 [ plot::$0 ] : zp ZP_BYTE:6 , reg byte a , reg byte x , reg byte y ,
|
||||
|
||||
REGISTER UPLIFT SCOPES
|
||||
Uplift Scope [plot] 305: zp ZP_BYTE:4 [ plot::x#2 plot::x#1 ] 4: zp ZP_BYTE:6 [ plot::$0 ] 3: zp ZP_BYTE:5 [ plot::idx#0 ]
|
||||
Uplift Scope [line] 252.5: zp ZP_BYTE:3 [ line::x#2 line::x#1 ]
|
||||
Uplift Scope [plot] 103: zp ZP_BYTE:4 [ plot::x#1 ] 4: zp ZP_BYTE:6 [ plot::$0 ] 3: zp ZP_BYTE:5 [ plot::idx#0 ]
|
||||
Uplift Scope [main] 34.83: zp ZP_BYTE:2 [ main::i#2 main::i#1 ]
|
||||
Uplift Scope []
|
||||
|
||||
Uplifting [plot] best 3578 combination reg byte x [ plot::x#2 plot::x#1 ] reg byte a [ plot::$0 ] reg byte y [ plot::idx#0 ]
|
||||
Uplifting [line] best 3578 combination zp ZP_BYTE:3 [ line::x#2 line::x#1 ]
|
||||
Uplifting [main] best 3428 combination reg byte x [ main::i#2 main::i#1 ]
|
||||
Uplifting [] best 3428 combination
|
||||
Attempting to uplift remaining variables inzp ZP_BYTE:3 [ line::x#2 line::x#1 ]
|
||||
Uplifting [line] best 3428 combination zp ZP_BYTE:3 [ line::x#2 line::x#1 ]
|
||||
Allocated (was zp ZP_BYTE:3) zp ZP_BYTE:2 [ line::x#2 line::x#1 ]
|
||||
Uplifting [line] best 3736 combination reg byte x [ line::x#2 line::x#1 ]
|
||||
Uplifting [plot] best 3418 combination reg byte x [ plot::x#1 ] reg byte a [ plot::$0 ] reg byte y [ plot::idx#0 ]
|
||||
Uplifting [main] best 3268 combination reg byte x [ main::i#2 main::i#1 ]
|
||||
Uplifting [] best 3268 combination
|
||||
|
||||
ASSEMBLER BEFORE OPTIMIZATION
|
||||
//SEG0 Basic Upstart
|
||||
@ -783,78 +749,59 @@ main: {
|
||||
//SEG20 main::@2
|
||||
b2:
|
||||
//SEG21 [11] call line param-assignment [ ] ( main:2 [ ] )
|
||||
//SEG22 [12] phi from main::@2 to line [phi:main::@2->line]
|
||||
line_from_b2:
|
||||
jsr line
|
||||
jmp b2_from_b2
|
||||
}
|
||||
//SEG22 line
|
||||
//SEG23 line
|
||||
line: {
|
||||
.const x0 = 0
|
||||
.const x1 = $a
|
||||
.label x = 2
|
||||
//SEG23 [12] if((const byte) line::x0#0>=(const byte) line::x1#0) goto line::@1 [ ] ( main:2::line:11 [ ] ) -- vbuc1_ge_vbuc2_then_la1
|
||||
lda #x0
|
||||
cmp #x1
|
||||
bcs b1_from_line
|
||||
//SEG24 [13] phi from line to line::@2 [phi:line->line::@2]
|
||||
b2_from_line:
|
||||
//SEG25 [13] phi (byte) line::x#2 = (const byte) line::x0#0 [phi:line->line::@2#0] -- vbuz1=vbuc1
|
||||
lda #x0
|
||||
sta x
|
||||
jmp b2
|
||||
//SEG26 [13] phi from line::@8 to line::@2 [phi:line::@8->line::@2]
|
||||
b2_from_b8:
|
||||
//SEG27 [13] phi (byte) line::x#2 = (byte) line::x#1 [phi:line::@8->line::@2#0] -- register_copy
|
||||
jmp b2
|
||||
//SEG28 line::@2
|
||||
b2:
|
||||
//SEG29 [14] (byte) plot::x#1 ← (byte) line::x#2 [ line::x#2 plot::x#1 ] ( main:2::line:11 [ line::x#2 plot::x#1 ] ) -- vbuxx=vbuz1
|
||||
ldx x
|
||||
//SEG24 [13] phi from line to line::@3 [phi:line->line::@3]
|
||||
b3_from_line:
|
||||
//SEG25 [13] phi (byte) line::x#2 = (const byte) line::x0#0 [phi:line->line::@3#0] -- vbuxx=vbuc1
|
||||
ldx #x0
|
||||
jmp b3
|
||||
//SEG26 [13] phi from line::@8 to line::@3 [phi:line::@8->line::@3]
|
||||
b3_from_b8:
|
||||
//SEG27 [13] phi (byte) line::x#2 = (byte) line::x#1 [phi:line::@8->line::@3#0] -- register_copy
|
||||
jmp b3
|
||||
//SEG28 line::@3
|
||||
b3:
|
||||
//SEG29 [14] (byte) plot::x#1 ← (byte) line::x#2 [ line::x#2 plot::x#1 ] ( main:2::line:11 [ line::x#2 plot::x#1 ] )
|
||||
// (byte) plot::x#1 = (byte) line::x#2 // register copy reg byte x
|
||||
//SEG30 [15] call plot param-assignment [ line::x#2 ] ( main:2::line:11 [ line::x#2 ] )
|
||||
//SEG31 [21] phi from line::@2 to plot [phi:line::@2->plot]
|
||||
plot_from_b2:
|
||||
//SEG32 [21] phi (byte) plot::x#2 = (byte) plot::x#1 [phi:line::@2->plot#0] -- register_copy
|
||||
jsr plot
|
||||
jmp b8
|
||||
//SEG33 line::@8
|
||||
//SEG31 line::@8
|
||||
b8:
|
||||
//SEG34 [16] (byte) line::x#1 ← ++ (byte) line::x#2 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] ) -- vbuz1=_inc_vbuz1
|
||||
inc x
|
||||
//SEG35 [17] if((byte) line::x#1<=(const byte) line::x1#0) goto line::@2 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] ) -- vbuz1_le_vbuc1_then_la1
|
||||
lda #x1
|
||||
cmp x
|
||||
bcs b2_from_b8
|
||||
//SEG32 [16] (byte) line::x#1 ← ++ (byte) line::x#2 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] ) -- vbuxx=_inc_vbuxx
|
||||
inx
|
||||
//SEG33 [17] if((byte) line::x#1<=(const byte) line::x1#0) goto line::@3 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] ) -- vbuxx_le_vbuc1_then_la1
|
||||
cpx #x1
|
||||
bcc b3_from_b8
|
||||
beq b3_from_b8
|
||||
jmp breturn
|
||||
//SEG36 line::@return
|
||||
//SEG34 line::@return
|
||||
breturn:
|
||||
//SEG37 [18] return [ ] ( main:2::line:11 [ ] )
|
||||
//SEG35 [18] return [ ] ( main:2::line:11 [ ] )
|
||||
rts
|
||||
//SEG38 [19] phi from line to line::@1 [phi:line->line::@1]
|
||||
b1_from_line:
|
||||
jmp b1
|
||||
//SEG39 line::@1
|
||||
b1:
|
||||
//SEG40 [20] call plot param-assignment [ ] ( main:2::line:11 [ ] )
|
||||
//SEG41 [21] phi from line::@1 to plot [phi:line::@1->plot]
|
||||
plot_from_b1:
|
||||
//SEG42 [21] phi (byte) plot::x#2 = (const byte) line::x0#0 [phi:line::@1->plot#0] -- vbuxx=vbuc1
|
||||
ldx #x0
|
||||
jsr plot
|
||||
jmp breturn
|
||||
}
|
||||
//SEG43 plot
|
||||
//SEG36 plot
|
||||
plot: {
|
||||
//SEG44 [22] (byte) plot::idx#0 ← *((const byte*) plots#0 + (byte) plot::x#2) [ plot::idx#0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 ] main:2::line:11::plot:20 [ plot::idx#0 ] ) -- vbuyy=pbuc1_derefidx_vbuxx
|
||||
//SEG37 [19] (byte) plot::idx#0 ← *((const byte*) plots#0 + (byte) plot::x#1) [ plot::idx#0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 ] ) -- vbuyy=pbuc1_derefidx_vbuxx
|
||||
ldy plots,x
|
||||
//SEG45 [23] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] main:2::line:11::plot:20 [ plot::idx#0 plot::$0 ] ) -- vbuaa=pbuc1_derefidx_vbuyy_plus_1
|
||||
//SEG38 [20] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] ) -- vbuaa=pbuc1_derefidx_vbuyy_plus_1
|
||||
lda SCREEN,y
|
||||
clc
|
||||
adc #1
|
||||
//SEG46 [24] *((const byte*) SCREEN#0 + (byte) plot::idx#0) ← (byte/signed word/word/dword/signed dword~) plot::$0 [ ] ( main:2::line:11::plot:15 [ line::x#2 ] main:2::line:11::plot:20 [ ] ) -- pbuc1_derefidx_vbuyy=vbuaa
|
||||
//SEG39 [21] *((const byte*) SCREEN#0 + (byte) plot::idx#0) ← (byte/signed word/word/dword/signed dword~) plot::$0 [ ] ( main:2::line:11::plot:15 [ line::x#2 ] ) -- pbuc1_derefidx_vbuyy=vbuaa
|
||||
sta SCREEN,y
|
||||
jmp breturn
|
||||
//SEG47 plot::@return
|
||||
//SEG40 plot::@return
|
||||
breturn:
|
||||
//SEG48 [25] return [ ] ( main:2::line:11::plot:15 [ line::x#2 ] main:2::line:11::plot:20 [ ] )
|
||||
//SEG41 [22] return [ ] ( main:2::line:11::plot:15 [ line::x#2 ] )
|
||||
rts
|
||||
}
|
||||
|
||||
@ -863,16 +810,15 @@ Removing instruction jmp b3
|
||||
Removing instruction jmp bend
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp b2
|
||||
Removing instruction jmp b2
|
||||
Removing instruction jmp b3
|
||||
Removing instruction jmp b8
|
||||
Removing instruction jmp breturn
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp breturn
|
||||
Succesful ASM optimization Pass5NextJumpElimination
|
||||
Replacing label b1_from_b1 with b1
|
||||
Replacing label b2_from_b2 with b2
|
||||
Replacing label b1_from_line with b1
|
||||
Replacing label b2_from_b8 with b2
|
||||
Replacing label b3_from_b8 with b3
|
||||
Replacing label b3_from_b8 with b3
|
||||
Removing instruction bbegin:
|
||||
Removing instruction b3_from_bbegin:
|
||||
Removing instruction main_from_b3:
|
||||
@ -880,23 +826,20 @@ Removing instruction bend_from_b3:
|
||||
Removing instruction b1_from_b1:
|
||||
Removing instruction b2_from_b1:
|
||||
Removing instruction b2_from_b2:
|
||||
Removing instruction b2_from_b8:
|
||||
Removing instruction b1_from_line:
|
||||
Removing instruction plot_from_b1:
|
||||
Removing instruction line_from_b2:
|
||||
Removing instruction b3_from_b8:
|
||||
Succesful ASM optimization Pass5RedundantLabelElimination
|
||||
Removing instruction b3:
|
||||
Removing instruction bend:
|
||||
Removing instruction b1_from_main:
|
||||
Removing instruction b2_from_line:
|
||||
Removing instruction plot_from_b2:
|
||||
Removing instruction b3_from_line:
|
||||
Removing instruction b8:
|
||||
Removing instruction breturn:
|
||||
Removing instruction breturn:
|
||||
Succesful ASM optimization Pass5UnusedLabelElimination
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp b2
|
||||
Removing instruction jmp b3
|
||||
Succesful ASM optimization Pass5NextJumpElimination
|
||||
Removing instruction lda #x0
|
||||
Succesful ASM optimization Pass5UnnecesaryLoadElimination
|
||||
|
||||
FINAL SYMBOL TABLE
|
||||
(label) @3
|
||||
@ -905,13 +848,12 @@ FINAL SYMBOL TABLE
|
||||
(byte*) SCREEN
|
||||
(const byte*) SCREEN#0 SCREEN = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
(void()) line((byte) line::x0 , (byte) line::x1)
|
||||
(label) line::@1
|
||||
(label) line::@2
|
||||
(label) line::@3
|
||||
(label) line::@8
|
||||
(label) line::@return
|
||||
(byte) line::x
|
||||
(byte) line::x#1 x zp ZP_BYTE:2 151.5
|
||||
(byte) line::x#2 x zp ZP_BYTE:2 101.0
|
||||
(byte) line::x#1 reg byte x 151.5
|
||||
(byte) line::x#2 reg byte x 101.0
|
||||
(byte) line::x0
|
||||
(const byte) line::x0#0 x0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) line::x1
|
||||
@ -928,20 +870,19 @@ FINAL SYMBOL TABLE
|
||||
(byte) plot::idx
|
||||
(byte) plot::idx#0 reg byte y 3.0
|
||||
(byte) plot::x
|
||||
(byte) plot::x#1 reg byte x 202.0
|
||||
(byte) plot::x#2 reg byte x 103.0
|
||||
(byte) plot::x#1 reg byte x 103.0
|
||||
(byte*) plots
|
||||
(const byte*) plots#0 plots = ((byte*))(word/signed word/dword/signed dword) 4096
|
||||
|
||||
reg byte x [ main::i#2 main::i#1 ]
|
||||
zp ZP_BYTE:2 [ line::x#2 line::x#1 ]
|
||||
reg byte x [ plot::x#2 plot::x#1 ]
|
||||
reg byte x [ line::x#2 line::x#1 ]
|
||||
reg byte x [ plot::x#1 ]
|
||||
reg byte y [ plot::idx#0 ]
|
||||
reg byte a [ plot::$0 ]
|
||||
|
||||
|
||||
FINAL ASSEMBLER
|
||||
Score: 2223
|
||||
Score: 1969
|
||||
|
||||
//SEG0 Basic Upstart
|
||||
.pc = $801 "Basic"
|
||||
@ -982,64 +923,48 @@ main: {
|
||||
//SEG20 main::@2
|
||||
b2:
|
||||
//SEG21 [11] call line param-assignment [ ] ( main:2 [ ] )
|
||||
//SEG22 [12] phi from main::@2 to line [phi:main::@2->line]
|
||||
jsr line
|
||||
jmp b2
|
||||
}
|
||||
//SEG22 line
|
||||
//SEG23 line
|
||||
line: {
|
||||
.const x0 = 0
|
||||
.const x1 = $a
|
||||
.label x = 2
|
||||
//SEG23 [12] if((const byte) line::x0#0>=(const byte) line::x1#0) goto line::@1 [ ] ( main:2::line:11 [ ] ) -- vbuc1_ge_vbuc2_then_la1
|
||||
lda #x0
|
||||
cmp #x1
|
||||
bcs b1
|
||||
//SEG24 [13] phi from line to line::@2 [phi:line->line::@2]
|
||||
//SEG25 [13] phi (byte) line::x#2 = (const byte) line::x0#0 [phi:line->line::@2#0] -- vbuz1=vbuc1
|
||||
sta x
|
||||
//SEG26 [13] phi from line::@8 to line::@2 [phi:line::@8->line::@2]
|
||||
//SEG27 [13] phi (byte) line::x#2 = (byte) line::x#1 [phi:line::@8->line::@2#0] -- register_copy
|
||||
//SEG28 line::@2
|
||||
b2:
|
||||
//SEG29 [14] (byte) plot::x#1 ← (byte) line::x#2 [ line::x#2 plot::x#1 ] ( main:2::line:11 [ line::x#2 plot::x#1 ] ) -- vbuxx=vbuz1
|
||||
ldx x
|
||||
//SEG30 [15] call plot param-assignment [ line::x#2 ] ( main:2::line:11 [ line::x#2 ] )
|
||||
//SEG31 [21] phi from line::@2 to plot [phi:line::@2->plot]
|
||||
//SEG32 [21] phi (byte) plot::x#2 = (byte) plot::x#1 [phi:line::@2->plot#0] -- register_copy
|
||||
jsr plot
|
||||
//SEG33 line::@8
|
||||
//SEG34 [16] (byte) line::x#1 ← ++ (byte) line::x#2 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] ) -- vbuz1=_inc_vbuz1
|
||||
inc x
|
||||
//SEG35 [17] if((byte) line::x#1<=(const byte) line::x1#0) goto line::@2 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] ) -- vbuz1_le_vbuc1_then_la1
|
||||
lda #x1
|
||||
cmp x
|
||||
bcs b2
|
||||
//SEG36 line::@return
|
||||
breturn:
|
||||
//SEG37 [18] return [ ] ( main:2::line:11 [ ] )
|
||||
rts
|
||||
//SEG38 [19] phi from line to line::@1 [phi:line->line::@1]
|
||||
//SEG39 line::@1
|
||||
b1:
|
||||
//SEG40 [20] call plot param-assignment [ ] ( main:2::line:11 [ ] )
|
||||
//SEG41 [21] phi from line::@1 to plot [phi:line::@1->plot]
|
||||
//SEG42 [21] phi (byte) plot::x#2 = (const byte) line::x0#0 [phi:line::@1->plot#0] -- vbuxx=vbuc1
|
||||
//SEG24 [13] phi from line to line::@3 [phi:line->line::@3]
|
||||
//SEG25 [13] phi (byte) line::x#2 = (const byte) line::x0#0 [phi:line->line::@3#0] -- vbuxx=vbuc1
|
||||
ldx #x0
|
||||
//SEG26 [13] phi from line::@8 to line::@3 [phi:line::@8->line::@3]
|
||||
//SEG27 [13] phi (byte) line::x#2 = (byte) line::x#1 [phi:line::@8->line::@3#0] -- register_copy
|
||||
//SEG28 line::@3
|
||||
b3:
|
||||
//SEG29 [14] (byte) plot::x#1 ← (byte) line::x#2 [ line::x#2 plot::x#1 ] ( main:2::line:11 [ line::x#2 plot::x#1 ] )
|
||||
// (byte) plot::x#1 = (byte) line::x#2 // register copy reg byte x
|
||||
//SEG30 [15] call plot param-assignment [ line::x#2 ] ( main:2::line:11 [ line::x#2 ] )
|
||||
jsr plot
|
||||
jmp breturn
|
||||
//SEG31 line::@8
|
||||
//SEG32 [16] (byte) line::x#1 ← ++ (byte) line::x#2 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] ) -- vbuxx=_inc_vbuxx
|
||||
inx
|
||||
//SEG33 [17] if((byte) line::x#1<=(const byte) line::x1#0) goto line::@3 [ line::x#1 ] ( main:2::line:11 [ line::x#1 ] ) -- vbuxx_le_vbuc1_then_la1
|
||||
cpx #x1
|
||||
bcc b3
|
||||
beq b3
|
||||
//SEG34 line::@return
|
||||
//SEG35 [18] return [ ] ( main:2::line:11 [ ] )
|
||||
rts
|
||||
}
|
||||
//SEG43 plot
|
||||
//SEG36 plot
|
||||
plot: {
|
||||
//SEG44 [22] (byte) plot::idx#0 ← *((const byte*) plots#0 + (byte) plot::x#2) [ plot::idx#0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 ] main:2::line:11::plot:20 [ plot::idx#0 ] ) -- vbuyy=pbuc1_derefidx_vbuxx
|
||||
//SEG37 [19] (byte) plot::idx#0 ← *((const byte*) plots#0 + (byte) plot::x#1) [ plot::idx#0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 ] ) -- vbuyy=pbuc1_derefidx_vbuxx
|
||||
ldy plots,x
|
||||
//SEG45 [23] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] main:2::line:11::plot:20 [ plot::idx#0 plot::$0 ] ) -- vbuaa=pbuc1_derefidx_vbuyy_plus_1
|
||||
//SEG38 [20] (byte/signed word/word/dword/signed dword~) plot::$0 ← *((const byte*) SCREEN#0 + (byte) plot::idx#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 [ plot::idx#0 plot::$0 ] ( main:2::line:11::plot:15 [ line::x#2 plot::idx#0 plot::$0 ] ) -- vbuaa=pbuc1_derefidx_vbuyy_plus_1
|
||||
lda SCREEN,y
|
||||
clc
|
||||
adc #1
|
||||
//SEG46 [24] *((const byte*) SCREEN#0 + (byte) plot::idx#0) ← (byte/signed word/word/dword/signed dword~) plot::$0 [ ] ( main:2::line:11::plot:15 [ line::x#2 ] main:2::line:11::plot:20 [ ] ) -- pbuc1_derefidx_vbuyy=vbuaa
|
||||
//SEG39 [21] *((const byte*) SCREEN#0 + (byte) plot::idx#0) ← (byte/signed word/word/dword/signed dword~) plot::$0 [ ] ( main:2::line:11::plot:15 [ line::x#2 ] ) -- pbuc1_derefidx_vbuyy=vbuaa
|
||||
sta SCREEN,y
|
||||
//SEG47 plot::@return
|
||||
//SEG48 [25] return [ ] ( main:2::line:11::plot:15 [ line::x#2 ] main:2::line:11::plot:20 [ ] )
|
||||
//SEG40 plot::@return
|
||||
//SEG41 [22] return [ ] ( main:2::line:11::plot:15 [ line::x#2 ] )
|
||||
rts
|
||||
}
|
||||
|
||||
|
@ -4,13 +4,12 @@
|
||||
(byte*) SCREEN
|
||||
(const byte*) SCREEN#0 SCREEN = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
(void()) line((byte) line::x0 , (byte) line::x1)
|
||||
(label) line::@1
|
||||
(label) line::@2
|
||||
(label) line::@3
|
||||
(label) line::@8
|
||||
(label) line::@return
|
||||
(byte) line::x
|
||||
(byte) line::x#1 x zp ZP_BYTE:2 151.5
|
||||
(byte) line::x#2 x zp ZP_BYTE:2 101.0
|
||||
(byte) line::x#1 reg byte x 151.5
|
||||
(byte) line::x#2 reg byte x 101.0
|
||||
(byte) line::x0
|
||||
(const byte) line::x0#0 x0 = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) line::x1
|
||||
@ -27,13 +26,12 @@
|
||||
(byte) plot::idx
|
||||
(byte) plot::idx#0 reg byte y 3.0
|
||||
(byte) plot::x
|
||||
(byte) plot::x#1 reg byte x 202.0
|
||||
(byte) plot::x#2 reg byte x 103.0
|
||||
(byte) plot::x#1 reg byte x 103.0
|
||||
(byte*) plots
|
||||
(const byte*) plots#0 plots = ((byte*))(word/signed word/dword/signed dword) 4096
|
||||
|
||||
reg byte x [ main::i#2 main::i#1 ]
|
||||
zp ZP_BYTE:2 [ line::x#2 line::x#1 ]
|
||||
reg byte x [ plot::x#2 plot::x#1 ]
|
||||
reg byte x [ line::x#2 line::x#1 ]
|
||||
reg byte x [ plot::x#1 ]
|
||||
reg byte y [ plot::idx#0 ]
|
||||
reg byte a [ plot::$0 ]
|
||||
|
@ -82,9 +82,7 @@ assert_sbyte: {
|
||||
sta print_str.str+1
|
||||
jsr print_str
|
||||
cpx c
|
||||
beq b1
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
bne b1
|
||||
lda #<str2
|
||||
sta print_str.str
|
||||
lda #>str2
|
||||
@ -94,6 +92,8 @@ assert_sbyte: {
|
||||
jsr print_ln
|
||||
rts
|
||||
b1:
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
lda #<str1
|
||||
sta print_str.str
|
||||
lda #>str1
|
||||
@ -101,8 +101,8 @@ assert_sbyte: {
|
||||
jsr print_str
|
||||
jmp b2
|
||||
str: .text " @"
|
||||
str1: .text "ok@"
|
||||
str2: .text "fail!@"
|
||||
str1: .text "fail!@"
|
||||
str2: .text "ok@"
|
||||
}
|
||||
print_str: {
|
||||
.label str = 2
|
||||
@ -204,9 +204,7 @@ assert_byte: {
|
||||
sta print_str.str+1
|
||||
jsr print_str
|
||||
cpx c
|
||||
beq b1
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
bne b1
|
||||
lda #<str2
|
||||
sta print_str.str
|
||||
lda #>str2
|
||||
@ -216,6 +214,8 @@ assert_byte: {
|
||||
jsr print_ln
|
||||
rts
|
||||
b1:
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
lda #<str1
|
||||
sta print_str.str
|
||||
lda #>str1
|
||||
@ -223,8 +223,8 @@ assert_byte: {
|
||||
jsr print_str
|
||||
jmp b2
|
||||
str: .text " @"
|
||||
str1: .text "ok@"
|
||||
str2: .text "fail!@"
|
||||
str1: .text "fail!@"
|
||||
str2: .text "ok@"
|
||||
}
|
||||
print_cls: {
|
||||
.label sc = 2
|
||||
|
@ -58,10 +58,10 @@ assert_sbyte::@5: scope:[assert_sbyte] from assert_sbyte
|
||||
[27] call print_str param-assignment [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 ] )
|
||||
to:assert_sbyte::@6
|
||||
assert_sbyte::@6: scope:[assert_sbyte] from assert_sbyte::@5
|
||||
[28] if((signed byte) assert_sbyte::b#5==(signed byte) assert_sbyte::c#5) goto assert_sbyte::@1 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
[28] if((signed byte) assert_sbyte::b#5!=(signed byte) assert_sbyte::c#5) goto assert_sbyte::@1 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
to:assert_sbyte::@3
|
||||
assert_sbyte::@3: scope:[assert_sbyte] from assert_sbyte::@6
|
||||
[29] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
[29] phi() [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
[30] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
to:assert_sbyte::@2
|
||||
assert_sbyte::@2: scope:[assert_sbyte] from assert_sbyte::@1 assert_sbyte::@3
|
||||
@ -72,7 +72,7 @@ assert_sbyte::@return: scope:[assert_sbyte] from assert_sbyte::@2
|
||||
[33] return [ print_line_cursor#1 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 ] )
|
||||
to:@return
|
||||
assert_sbyte::@1: scope:[assert_sbyte] from assert_sbyte::@6
|
||||
[34] phi() [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
[34] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
[35] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
to:assert_sbyte::@2
|
||||
print_str: scope:[print_str] from assert_byte assert_byte::@1 assert_byte::@3 assert_byte::@5 assert_sbyte assert_sbyte::@1 assert_sbyte::@3 assert_sbyte::@5
|
||||
@ -132,10 +132,10 @@ assert_byte::@5: scope:[assert_byte] from assert_byte
|
||||
[59] call print_str param-assignment [ print_char_cursor#2 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] )
|
||||
to:assert_byte::@6
|
||||
assert_byte::@6: scope:[assert_byte] from assert_byte::@5
|
||||
[60] if((byte) assert_byte::b#3==(byte) assert_byte::c#3) goto assert_byte::@1 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
[60] if((byte) assert_byte::b#3!=(byte) assert_byte::c#3) goto assert_byte::@1 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
to:assert_byte::@3
|
||||
assert_byte::@3: scope:[assert_byte] from assert_byte::@6
|
||||
[61] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
[61] phi() [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
[62] call print_str param-assignment [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
to:assert_byte::@2
|
||||
assert_byte::@2: scope:[assert_byte] from assert_byte::@1 assert_byte::@3
|
||||
@ -146,7 +146,7 @@ assert_byte::@return: scope:[assert_byte] from assert_byte::@2
|
||||
[65] return [ print_line_cursor#1 ] ( main:2::test_bytes:7::assert_byte:49 [ print_line_cursor#1 ] main:2::test_bytes:7::assert_byte:51 [ print_line_cursor#1 ] main:2::test_bytes:7::assert_byte:53 [ print_line_cursor#1 ] )
|
||||
to:@return
|
||||
assert_byte::@1: scope:[assert_byte] from assert_byte::@6
|
||||
[66] phi() [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
[66] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
[67] call print_str param-assignment [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
to:assert_byte::@2
|
||||
print_cls: scope:[print_cls] from main
|
||||
|
@ -376,15 +376,14 @@ proc (void()) assert_byte((byte*) assert_byte::msg , (byte) assert_byte::b , (by
|
||||
(void~) assert_byte::$0 ← call print_str (byte*) assert_byte::msg
|
||||
(void~) assert_byte::$1 ← call print_str (string) " @"
|
||||
(boolean~) assert_byte::$2 ← (byte) assert_byte::b != (byte) assert_byte::c
|
||||
(boolean~) assert_byte::$3 ← ! (boolean~) assert_byte::$2
|
||||
if((boolean~) assert_byte::$3) goto assert_byte::@1
|
||||
*((byte*) BGCOL) ← (byte) RED
|
||||
(void~) assert_byte::$4 ← call print_str (string) "fail!@"
|
||||
if((boolean~) assert_byte::$2) goto assert_byte::@1
|
||||
(void~) assert_byte::$3 ← call print_str (string) "ok@"
|
||||
goto assert_byte::@2
|
||||
assert_byte::@1:
|
||||
(void~) assert_byte::$5 ← call print_str (string) "ok@"
|
||||
*((byte*) BGCOL) ← (byte) RED
|
||||
(void~) assert_byte::$4 ← call print_str (string) "fail!@"
|
||||
assert_byte::@2:
|
||||
(void~) assert_byte::$6 ← call print_ln
|
||||
(void~) assert_byte::$5 ← call print_ln
|
||||
assert_byte::@return:
|
||||
return
|
||||
endproc // assert_byte()
|
||||
@ -413,15 +412,14 @@ proc (void()) assert_sbyte((byte*) assert_sbyte::msg , (signed byte) assert_sbyt
|
||||
(void~) assert_sbyte::$0 ← call print_str (byte*) assert_sbyte::msg
|
||||
(void~) assert_sbyte::$1 ← call print_str (string) " @"
|
||||
(boolean~) assert_sbyte::$2 ← (signed byte) assert_sbyte::b != (signed byte) assert_sbyte::c
|
||||
(boolean~) assert_sbyte::$3 ← ! (boolean~) assert_sbyte::$2
|
||||
if((boolean~) assert_sbyte::$3) goto assert_sbyte::@1
|
||||
*((byte*) BGCOL) ← (byte) RED
|
||||
(void~) assert_sbyte::$4 ← call print_str (string) "fail!@"
|
||||
if((boolean~) assert_sbyte::$2) goto assert_sbyte::@1
|
||||
(void~) assert_sbyte::$3 ← call print_str (string) "ok@"
|
||||
goto assert_sbyte::@2
|
||||
assert_sbyte::@1:
|
||||
(void~) assert_sbyte::$5 ← call print_str (string) "ok@"
|
||||
*((byte*) BGCOL) ← (byte) RED
|
||||
(void~) assert_sbyte::$4 ← call print_str (string) "fail!@"
|
||||
assert_sbyte::@2:
|
||||
(void~) assert_sbyte::$6 ← call print_ln
|
||||
(void~) assert_sbyte::$5 ← call print_ln
|
||||
assert_sbyte::@return:
|
||||
return
|
||||
endproc // assert_sbyte()
|
||||
@ -435,10 +433,9 @@ SYMBOLS
|
||||
(void~) assert_byte::$0
|
||||
(void~) assert_byte::$1
|
||||
(boolean~) assert_byte::$2
|
||||
(boolean~) assert_byte::$3
|
||||
(void~) assert_byte::$3
|
||||
(void~) assert_byte::$4
|
||||
(void~) assert_byte::$5
|
||||
(void~) assert_byte::$6
|
||||
(label) assert_byte::@1
|
||||
(label) assert_byte::@2
|
||||
(label) assert_byte::@return
|
||||
@ -449,10 +446,9 @@ SYMBOLS
|
||||
(void~) assert_sbyte::$0
|
||||
(void~) assert_sbyte::$1
|
||||
(boolean~) assert_sbyte::$2
|
||||
(boolean~) assert_sbyte::$3
|
||||
(void~) assert_sbyte::$3
|
||||
(void~) assert_sbyte::$4
|
||||
(void~) assert_sbyte::$5
|
||||
(void~) assert_sbyte::$6
|
||||
(label) assert_sbyte::@1
|
||||
(label) assert_sbyte::@2
|
||||
(label) assert_sbyte::@return
|
||||
@ -886,18 +882,17 @@ assert_byte: scope:[assert_byte] from
|
||||
(void~) assert_byte::$0 ← call print_str (byte*) assert_byte::msg
|
||||
(void~) assert_byte::$1 ← call print_str (string) " @"
|
||||
(boolean~) assert_byte::$2 ← (byte) assert_byte::b != (byte) assert_byte::c
|
||||
(boolean~) assert_byte::$3 ← ! (boolean~) assert_byte::$2
|
||||
if((boolean~) assert_byte::$3) goto assert_byte::@1
|
||||
if((boolean~) assert_byte::$2) goto assert_byte::@1
|
||||
to:assert_byte::@3
|
||||
assert_byte::@1: scope:[assert_byte] from assert_byte assert_byte::@4
|
||||
(void~) assert_byte::$5 ← call print_str (string) "ok@"
|
||||
to:assert_byte::@2
|
||||
assert_byte::@3: scope:[assert_byte] from assert_byte
|
||||
*((byte*) BGCOL) ← (byte) RED
|
||||
(void~) assert_byte::$4 ← call print_str (string) "fail!@"
|
||||
to:assert_byte::@2
|
||||
assert_byte::@3: scope:[assert_byte] from assert_byte
|
||||
(void~) assert_byte::$3 ← call print_str (string) "ok@"
|
||||
to:assert_byte::@2
|
||||
assert_byte::@2: scope:[assert_byte] from assert_byte::@1 assert_byte::@3
|
||||
(void~) assert_byte::$6 ← call print_ln
|
||||
(void~) assert_byte::$5 ← call print_ln
|
||||
to:assert_byte::@return
|
||||
assert_byte::@4: scope:[assert_byte] from
|
||||
to:assert_byte::@1
|
||||
@ -934,18 +929,17 @@ assert_sbyte: scope:[assert_sbyte] from
|
||||
(void~) assert_sbyte::$0 ← call print_str (byte*) assert_sbyte::msg
|
||||
(void~) assert_sbyte::$1 ← call print_str (string) " @"
|
||||
(boolean~) assert_sbyte::$2 ← (signed byte) assert_sbyte::b != (signed byte) assert_sbyte::c
|
||||
(boolean~) assert_sbyte::$3 ← ! (boolean~) assert_sbyte::$2
|
||||
if((boolean~) assert_sbyte::$3) goto assert_sbyte::@1
|
||||
if((boolean~) assert_sbyte::$2) goto assert_sbyte::@1
|
||||
to:assert_sbyte::@3
|
||||
assert_sbyte::@1: scope:[assert_sbyte] from assert_sbyte assert_sbyte::@4
|
||||
(void~) assert_sbyte::$5 ← call print_str (string) "ok@"
|
||||
to:assert_sbyte::@2
|
||||
assert_sbyte::@3: scope:[assert_sbyte] from assert_sbyte
|
||||
*((byte*) BGCOL) ← (byte) RED
|
||||
(void~) assert_sbyte::$4 ← call print_str (string) "fail!@"
|
||||
to:assert_sbyte::@2
|
||||
assert_sbyte::@3: scope:[assert_sbyte] from assert_sbyte
|
||||
(void~) assert_sbyte::$3 ← call print_str (string) "ok@"
|
||||
to:assert_sbyte::@2
|
||||
assert_sbyte::@2: scope:[assert_sbyte] from assert_sbyte::@1 assert_sbyte::@3
|
||||
(void~) assert_sbyte::$6 ← call print_ln
|
||||
(void~) assert_sbyte::$5 ← call print_ln
|
||||
to:assert_sbyte::@return
|
||||
assert_sbyte::@4: scope:[assert_sbyte] from
|
||||
to:assert_sbyte::@1
|
||||
@ -977,9 +971,9 @@ Eliminating unused variable - keeping the call (void~) test_bytes::$2
|
||||
Eliminating unused variable - keeping the call (void~) test_bytes::$6
|
||||
Eliminating unused variable - keeping the call (void~) assert_byte::$0
|
||||
Eliminating unused variable - keeping the call (void~) assert_byte::$1
|
||||
Eliminating unused variable - keeping the call (void~) assert_byte::$5
|
||||
Eliminating unused variable - keeping the call (void~) assert_byte::$4
|
||||
Eliminating unused variable - keeping the call (void~) assert_byte::$6
|
||||
Eliminating unused variable - keeping the call (void~) assert_byte::$3
|
||||
Eliminating unused variable - keeping the call (void~) assert_byte::$5
|
||||
Eliminating unused variable - keeping the call (void~) test_sbytes::$0
|
||||
Eliminating unused variable - keeping the call (void~) test_sbytes::$2
|
||||
Eliminating unused variable - keeping the call (void~) test_sbytes::$5
|
||||
@ -987,23 +981,23 @@ Eliminating unused variable - keeping the call (void~) test_sbytes::$7
|
||||
Eliminating unused variable - keeping the call (void~) test_sbytes::$11
|
||||
Eliminating unused variable - keeping the call (void~) assert_sbyte::$0
|
||||
Eliminating unused variable - keeping the call (void~) assert_sbyte::$1
|
||||
Eliminating unused variable - keeping the call (void~) assert_sbyte::$5
|
||||
Eliminating unused variable - keeping the call (void~) assert_sbyte::$4
|
||||
Eliminating unused variable - keeping the call (void~) assert_sbyte::$6
|
||||
Eliminating unused variable - keeping the call (void~) assert_sbyte::$3
|
||||
Eliminating unused variable - keeping the call (void~) assert_sbyte::$5
|
||||
Creating constant string variable for inline (const string) test_bytes::msg "0=0@"
|
||||
Creating constant string variable for inline (const string) test_bytes::msg1 "0+2=2@"
|
||||
Creating constant string variable for inline (const string) test_bytes::msg2 "0+2-4=254@"
|
||||
Creating constant string variable for inline (const string) assert_byte::str " @"
|
||||
Creating constant string variable for inline (const string) assert_byte::str1 "ok@"
|
||||
Creating constant string variable for inline (const string) assert_byte::str2 "fail!@"
|
||||
Creating constant string variable for inline (const string) assert_byte::str1 "fail!@"
|
||||
Creating constant string variable for inline (const string) assert_byte::str2 "ok@"
|
||||
Creating constant string variable for inline (const string) test_sbytes::msg "0=0@"
|
||||
Creating constant string variable for inline (const string) test_sbytes::msg1 "0+2=2@"
|
||||
Creating constant string variable for inline (const string) test_sbytes::msg2 "0+2-4=-2@"
|
||||
Creating constant string variable for inline (const string) test_sbytes::msg3 "-(0+2-4)=2@"
|
||||
Creating constant string variable for inline (const string) test_sbytes::msg4 "-127-127=2@"
|
||||
Creating constant string variable for inline (const string) assert_sbyte::str " @"
|
||||
Creating constant string variable for inline (const string) assert_sbyte::str1 "ok@"
|
||||
Creating constant string variable for inline (const string) assert_sbyte::str2 "fail!@"
|
||||
Creating constant string variable for inline (const string) assert_sbyte::str1 "fail!@"
|
||||
Creating constant string variable for inline (const string) assert_sbyte::str2 "ok@"
|
||||
Removing empty block @1
|
||||
Removing empty block @2
|
||||
Removing empty block print_str::@4
|
||||
@ -1245,12 +1239,12 @@ assert_byte::@6: scope:[assert_byte] from assert_byte::@5
|
||||
(byte*) print_char_cursor#48 ← phi( assert_byte::@5/(byte*) print_char_cursor#2 )
|
||||
(byte*) print_char_cursor#16 ← (byte*) print_char_cursor#48
|
||||
(boolean~) assert_byte::$2 ← (byte) assert_byte::b#3 != (byte) assert_byte::c#3
|
||||
(boolean~) assert_byte::$3 ← ! (boolean~) assert_byte::$2
|
||||
if((boolean~) assert_byte::$3) goto assert_byte::@1
|
||||
if((boolean~) assert_byte::$2) goto assert_byte::@1
|
||||
to:assert_byte::@3
|
||||
assert_byte::@1: scope:[assert_byte] from assert_byte::@6
|
||||
(byte*) print_line_cursor#59 ← phi( assert_byte::@6/(byte*) print_line_cursor#63 )
|
||||
(byte*) print_char_cursor#71 ← phi( assert_byte::@6/(byte*) print_char_cursor#16 )
|
||||
*((byte*) BGCOL#0) ← (byte) RED#0
|
||||
(byte*) print_str::str#3 ← (const string) assert_byte::str1
|
||||
call print_str param-assignment
|
||||
to:assert_byte::@7
|
||||
@ -1262,7 +1256,6 @@ assert_byte::@7: scope:[assert_byte] from assert_byte::@1
|
||||
assert_byte::@3: scope:[assert_byte] from assert_byte::@6
|
||||
(byte*) print_line_cursor#60 ← phi( assert_byte::@6/(byte*) print_line_cursor#63 )
|
||||
(byte*) print_char_cursor#72 ← phi( assert_byte::@6/(byte*) print_char_cursor#16 )
|
||||
*((byte*) BGCOL#0) ← (byte) RED#0
|
||||
(byte*) print_str::str#4 ← (const string) assert_byte::str2
|
||||
call print_str param-assignment
|
||||
to:assert_byte::@8
|
||||
@ -1390,12 +1383,12 @@ assert_sbyte::@6: scope:[assert_sbyte] from assert_sbyte::@5
|
||||
(byte*) print_char_cursor#60 ← phi( assert_sbyte::@5/(byte*) print_char_cursor#2 )
|
||||
(byte*) print_char_cursor#28 ← (byte*) print_char_cursor#60
|
||||
(boolean~) assert_sbyte::$2 ← (signed byte) assert_sbyte::b#5 != (signed byte) assert_sbyte::c#5
|
||||
(boolean~) assert_sbyte::$3 ← ! (boolean~) assert_sbyte::$2
|
||||
if((boolean~) assert_sbyte::$3) goto assert_sbyte::@1
|
||||
if((boolean~) assert_sbyte::$2) goto assert_sbyte::@1
|
||||
to:assert_sbyte::@3
|
||||
assert_sbyte::@1: scope:[assert_sbyte] from assert_sbyte::@6
|
||||
(byte*) print_line_cursor#61 ← phi( assert_sbyte::@6/(byte*) print_line_cursor#64 )
|
||||
(byte*) print_char_cursor#76 ← phi( assert_sbyte::@6/(byte*) print_char_cursor#28 )
|
||||
*((byte*) BGCOL#0) ← (byte) RED#0
|
||||
(byte*) print_str::str#7 ← (const string) assert_sbyte::str1
|
||||
call print_str param-assignment
|
||||
to:assert_sbyte::@7
|
||||
@ -1407,7 +1400,6 @@ assert_sbyte::@7: scope:[assert_sbyte] from assert_sbyte::@1
|
||||
assert_sbyte::@3: scope:[assert_sbyte] from assert_sbyte::@6
|
||||
(byte*) print_line_cursor#62 ← phi( assert_sbyte::@6/(byte*) print_line_cursor#64 )
|
||||
(byte*) print_char_cursor#77 ← phi( assert_sbyte::@6/(byte*) print_char_cursor#28 )
|
||||
*((byte*) BGCOL#0) ← (byte) RED#0
|
||||
(byte*) print_str::str#8 ← (const string) assert_sbyte::str2
|
||||
call print_str param-assignment
|
||||
to:assert_sbyte::@8
|
||||
@ -1462,7 +1454,6 @@ SYMBOL TABLE SSA
|
||||
(byte) RED#0
|
||||
(void()) assert_byte((byte*) assert_byte::msg , (byte) assert_byte::b , (byte) assert_byte::c)
|
||||
(boolean~) assert_byte::$2
|
||||
(boolean~) assert_byte::$3
|
||||
(label) assert_byte::@1
|
||||
(label) assert_byte::@2
|
||||
(label) assert_byte::@3
|
||||
@ -1492,11 +1483,10 @@ SYMBOL TABLE SSA
|
||||
(byte*) assert_byte::msg#2
|
||||
(byte*) assert_byte::msg#3
|
||||
(const string) assert_byte::str = (string) " @"
|
||||
(const string) assert_byte::str1 = (string) "ok@"
|
||||
(const string) assert_byte::str2 = (string) "fail!@"
|
||||
(const string) assert_byte::str1 = (string) "fail!@"
|
||||
(const string) assert_byte::str2 = (string) "ok@"
|
||||
(void()) assert_sbyte((byte*) assert_sbyte::msg , (signed byte) assert_sbyte::b , (signed byte) assert_sbyte::c)
|
||||
(boolean~) assert_sbyte::$2
|
||||
(boolean~) assert_sbyte::$3
|
||||
(label) assert_sbyte::@1
|
||||
(label) assert_sbyte::@2
|
||||
(label) assert_sbyte::@3
|
||||
@ -1532,8 +1522,8 @@ SYMBOL TABLE SSA
|
||||
(byte*) assert_sbyte::msg#4
|
||||
(byte*) assert_sbyte::msg#5
|
||||
(const string) assert_sbyte::str = (string) " @"
|
||||
(const string) assert_sbyte::str1 = (string) "ok@"
|
||||
(const string) assert_sbyte::str2 = (string) "fail!@"
|
||||
(const string) assert_sbyte::str1 = (string) "fail!@"
|
||||
(const string) assert_sbyte::str2 = (string) "ok@"
|
||||
(void()) main()
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
@ -1788,9 +1778,6 @@ SYMBOL TABLE SSA
|
||||
(const string) test_sbytes::msg4 = (string) "-127-127=2@"
|
||||
|
||||
OPTIMIZING CONTROL FLOW GRAPH
|
||||
Inversing boolean not (boolean~) assert_byte::$3 ← (byte) assert_byte::b#3 == (byte) assert_byte::c#3 from (boolean~) assert_byte::$2 ← (byte) assert_byte::b#3 != (byte) assert_byte::c#3
|
||||
Inversing boolean not (boolean~) assert_sbyte::$3 ← (signed byte) assert_sbyte::b#5 == (signed byte) assert_sbyte::c#5 from (boolean~) assert_sbyte::$2 ← (signed byte) assert_sbyte::b#5 != (signed byte) assert_sbyte::c#5
|
||||
Succesful SSA optimization Pass2UnaryNotSimplification
|
||||
Not aliassing across scopes: print_str::str#11 print_str::str#1
|
||||
Not aliassing across scopes: print_char_cursor#80 print_char_cursor#70
|
||||
Not aliassing across scopes: print_line_cursor#47 print_line_cursor#50
|
||||
@ -2118,8 +2105,8 @@ Succesful SSA optimization Pass2RedundantPhiElimination
|
||||
Simple Condition (boolean~) print_str::$0 if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2
|
||||
Simple Condition (boolean~) print_ln::$1 if((byte*) print_line_cursor#1<(byte*) print_char_cursor#2) goto print_ln::@1
|
||||
Simple Condition (boolean~) print_cls::$1 if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1
|
||||
Simple Condition (boolean~) assert_byte::$3 if((byte) assert_byte::b#3==(byte) assert_byte::c#3) goto assert_byte::@1
|
||||
Simple Condition (boolean~) assert_sbyte::$3 if((signed byte) assert_sbyte::b#5==(signed byte) assert_sbyte::c#5) goto assert_sbyte::@1
|
||||
Simple Condition (boolean~) assert_byte::$2 if((byte) assert_byte::b#3!=(byte) assert_byte::c#3) goto assert_byte::@1
|
||||
Simple Condition (boolean~) assert_sbyte::$2 if((signed byte) assert_sbyte::b#5!=(signed byte) assert_sbyte::c#5) goto assert_sbyte::@1
|
||||
Succesful SSA optimization Pass2ConditionalJumpSimplification
|
||||
Constant (const byte*) print_line_cursor#0 = ((byte*))1024
|
||||
Constant (const byte*) BGCOL#0 = ((byte*))53281
|
||||
@ -2338,9 +2325,9 @@ CALL GRAPH
|
||||
Calls in [] to main:2
|
||||
Calls in [main] to print_cls:5 test_bytes:7 test_sbytes:9
|
||||
Calls in [test_sbytes] to assert_sbyte:12 assert_sbyte:14 assert_sbyte:16 assert_sbyte:18 assert_sbyte:20
|
||||
Calls in [assert_sbyte] to print_str:26 print_str:28 print_str:32 print_ln:34 print_str:37
|
||||
Calls in [assert_sbyte] to print_str:26 print_str:28 print_str:31 print_ln:33 print_str:37
|
||||
Calls in [test_bytes] to assert_byte:57 assert_byte:60 assert_byte:63
|
||||
Calls in [assert_byte] to print_str:69 print_str:71 print_str:75 print_ln:77 print_str:80
|
||||
Calls in [assert_byte] to print_str:69 print_str:71 print_str:74 print_ln:76 print_str:80
|
||||
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
@ -2352,12 +2339,13 @@ Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
Created 15 initial phi equivalence classes
|
||||
Coalesced [24] print_str::str#13 ← print_str::str#5
|
||||
Not coalescing [25] print_char_cursor#86 ← print_line_cursor#1
|
||||
Coalesced [27] print_char_cursor#89 ← print_char_cursor#2
|
||||
Coalesced (already) [31] print_char_cursor#88 ← print_char_cursor#2
|
||||
Coalesced [33] print_line_cursor#70 ← print_line_cursor#1
|
||||
Coalesced (already) [30] print_char_cursor#88 ← print_char_cursor#2
|
||||
Coalesced [32] print_line_cursor#70 ← print_line_cursor#1
|
||||
Coalesced (already) [36] print_char_cursor#87 ← print_char_cursor#2
|
||||
Coalesced [39] print_str::str#14 ← print_str::str#11
|
||||
Coalesced (already) [40] print_char_cursor#90 ← print_char_cursor#80
|
||||
@ -2372,8 +2360,8 @@ Coalesced (already) [62] print_line_cursor#74 ← print_line_cursor#1
|
||||
Coalesced [67] print_str::str#12 ← print_str::str#1
|
||||
Coalesced [68] print_char_cursor#82 ← print_char_cursor#70
|
||||
Coalesced (already) [70] print_char_cursor#85 ← print_char_cursor#2
|
||||
Coalesced (already) [74] print_char_cursor#84 ← print_char_cursor#2
|
||||
Coalesced (already) [76] print_line_cursor#69 ← print_line_cursor#50
|
||||
Coalesced (already) [73] print_char_cursor#84 ← print_char_cursor#2
|
||||
Coalesced (already) [75] print_line_cursor#69 ← print_line_cursor#50
|
||||
Coalesced (already) [79] print_char_cursor#83 ← print_char_cursor#2
|
||||
Coalesced [87] print_cls::sc#3 ← print_cls::sc#1
|
||||
Coalesced down to 10 phi equivalence classes
|
||||
@ -2391,12 +2379,12 @@ Adding NOP phi() at start of test_sbytes::@2
|
||||
Adding NOP phi() at start of test_sbytes::@3
|
||||
Adding NOP phi() at start of test_sbytes::@4
|
||||
Adding NOP phi() at start of assert_sbyte::@5
|
||||
Adding NOP phi() at start of assert_sbyte::@3
|
||||
Adding NOP phi() at start of assert_sbyte::@2
|
||||
Adding NOP phi() at start of assert_sbyte::@1
|
||||
Adding NOP phi() at start of test_bytes
|
||||
Adding NOP phi() at start of assert_byte::@5
|
||||
Adding NOP phi() at start of assert_byte::@3
|
||||
Adding NOP phi() at start of assert_byte::@2
|
||||
Adding NOP phi() at start of assert_byte::@1
|
||||
Adding NOP phi() at start of print_cls
|
||||
Propagating live ranges...
|
||||
Propagating live ranges...
|
||||
@ -2468,10 +2456,10 @@ assert_sbyte::@5: scope:[assert_sbyte] from assert_sbyte
|
||||
[27] call print_str param-assignment [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 ] )
|
||||
to:assert_sbyte::@6
|
||||
assert_sbyte::@6: scope:[assert_sbyte] from assert_sbyte::@5
|
||||
[28] if((signed byte) assert_sbyte::b#5==(signed byte) assert_sbyte::c#5) goto assert_sbyte::@1 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
[28] if((signed byte) assert_sbyte::b#5!=(signed byte) assert_sbyte::c#5) goto assert_sbyte::@1 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
to:assert_sbyte::@3
|
||||
assert_sbyte::@3: scope:[assert_sbyte] from assert_sbyte::@6
|
||||
[29] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
[29] phi() [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
[30] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
to:assert_sbyte::@2
|
||||
assert_sbyte::@2: scope:[assert_sbyte] from assert_sbyte::@1 assert_sbyte::@3
|
||||
@ -2482,7 +2470,7 @@ assert_sbyte::@return: scope:[assert_sbyte] from assert_sbyte::@2
|
||||
[33] return [ print_line_cursor#1 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 ] )
|
||||
to:@return
|
||||
assert_sbyte::@1: scope:[assert_sbyte] from assert_sbyte::@6
|
||||
[34] phi() [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
[34] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
[35] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
to:assert_sbyte::@2
|
||||
print_str: scope:[print_str] from assert_byte assert_byte::@1 assert_byte::@3 assert_byte::@5 assert_sbyte assert_sbyte::@1 assert_sbyte::@3 assert_sbyte::@5
|
||||
@ -2542,10 +2530,10 @@ assert_byte::@5: scope:[assert_byte] from assert_byte
|
||||
[59] call print_str param-assignment [ print_char_cursor#2 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] )
|
||||
to:assert_byte::@6
|
||||
assert_byte::@6: scope:[assert_byte] from assert_byte::@5
|
||||
[60] if((byte) assert_byte::b#3==(byte) assert_byte::c#3) goto assert_byte::@1 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
[60] if((byte) assert_byte::b#3!=(byte) assert_byte::c#3) goto assert_byte::@1 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
to:assert_byte::@3
|
||||
assert_byte::@3: scope:[assert_byte] from assert_byte::@6
|
||||
[61] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
[61] phi() [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
[62] call print_str param-assignment [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
to:assert_byte::@2
|
||||
assert_byte::@2: scope:[assert_byte] from assert_byte::@1 assert_byte::@3
|
||||
@ -2556,7 +2544,7 @@ assert_byte::@return: scope:[assert_byte] from assert_byte::@2
|
||||
[65] return [ print_line_cursor#1 ] ( main:2::test_bytes:7::assert_byte:49 [ print_line_cursor#1 ] main:2::test_bytes:7::assert_byte:51 [ print_line_cursor#1 ] main:2::test_bytes:7::assert_byte:53 [ print_line_cursor#1 ] )
|
||||
to:@return
|
||||
assert_byte::@1: scope:[assert_byte] from assert_byte::@6
|
||||
[66] phi() [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
[66] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
[67] call print_str param-assignment [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
to:assert_byte::@2
|
||||
print_cls: scope:[print_cls] from main
|
||||
@ -2943,16 +2931,15 @@ assert_sbyte: {
|
||||
jmp b6
|
||||
//SEG71 assert_sbyte::@6
|
||||
b6:
|
||||
//SEG72 [28] if((signed byte) assert_sbyte::b#5==(signed byte) assert_sbyte::c#5) goto assert_sbyte::@1 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) -- vbsz1_eq_vbsz2_then_la1
|
||||
//SEG72 [28] if((signed byte) assert_sbyte::b#5!=(signed byte) assert_sbyte::c#5) goto assert_sbyte::@1 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) -- vbsz1_neq_vbsz2_then_la1
|
||||
lda b
|
||||
cmp c
|
||||
beq b1_from_b6
|
||||
bne b1
|
||||
//SEG73 [29] phi from assert_sbyte::@6 to assert_sbyte::@3 [phi:assert_sbyte::@6->assert_sbyte::@3]
|
||||
b3_from_b6:
|
||||
jmp b3
|
||||
//SEG73 assert_sbyte::@3
|
||||
//SEG74 assert_sbyte::@3
|
||||
b3:
|
||||
//SEG74 [29] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
//SEG75 [30] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
//SEG76 [36] phi from assert_sbyte::@3 to print_str [phi:assert_sbyte::@3->print_str]
|
||||
print_str_from_b3:
|
||||
@ -2979,11 +2966,11 @@ assert_sbyte: {
|
||||
breturn:
|
||||
//SEG85 [33] return [ print_line_cursor#1 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 ] )
|
||||
rts
|
||||
//SEG86 [34] phi from assert_sbyte::@6 to assert_sbyte::@1 [phi:assert_sbyte::@6->assert_sbyte::@1]
|
||||
b1_from_b6:
|
||||
jmp b1
|
||||
//SEG87 assert_sbyte::@1
|
||||
//SEG86 assert_sbyte::@1
|
||||
b1:
|
||||
//SEG87 [34] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
//SEG88 [35] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
//SEG89 [36] phi from assert_sbyte::@1 to print_str [phi:assert_sbyte::@1->print_str]
|
||||
print_str_from_b1:
|
||||
@ -2996,8 +2983,8 @@ assert_sbyte: {
|
||||
jsr print_str
|
||||
jmp b2_from_b1
|
||||
str: .text " @"
|
||||
str1: .text "ok@"
|
||||
str2: .text "fail!@"
|
||||
str1: .text "fail!@"
|
||||
str2: .text "ok@"
|
||||
}
|
||||
//SEG92 print_str
|
||||
print_str: {
|
||||
@ -3194,16 +3181,15 @@ assert_byte: {
|
||||
jmp b6
|
||||
//SEG152 assert_byte::@6
|
||||
b6:
|
||||
//SEG153 [60] if((byte) assert_byte::b#3==(byte) assert_byte::c#3) goto assert_byte::@1 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) -- vbuz1_eq_vbuz2_then_la1
|
||||
//SEG153 [60] if((byte) assert_byte::b#3!=(byte) assert_byte::c#3) goto assert_byte::@1 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) -- vbuz1_neq_vbuz2_then_la1
|
||||
lda b
|
||||
cmp c
|
||||
beq b1_from_b6
|
||||
bne b1
|
||||
//SEG154 [61] phi from assert_byte::@6 to assert_byte::@3 [phi:assert_byte::@6->assert_byte::@3]
|
||||
b3_from_b6:
|
||||
jmp b3
|
||||
//SEG154 assert_byte::@3
|
||||
//SEG155 assert_byte::@3
|
||||
b3:
|
||||
//SEG155 [61] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
//SEG156 [62] call print_str param-assignment [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
//SEG157 [36] phi from assert_byte::@3 to print_str [phi:assert_byte::@3->print_str]
|
||||
print_str_from_b3:
|
||||
@ -3230,11 +3216,11 @@ assert_byte: {
|
||||
breturn:
|
||||
//SEG166 [65] return [ print_line_cursor#1 ] ( main:2::test_bytes:7::assert_byte:49 [ print_line_cursor#1 ] main:2::test_bytes:7::assert_byte:51 [ print_line_cursor#1 ] main:2::test_bytes:7::assert_byte:53 [ print_line_cursor#1 ] )
|
||||
rts
|
||||
//SEG167 [66] phi from assert_byte::@6 to assert_byte::@1 [phi:assert_byte::@6->assert_byte::@1]
|
||||
b1_from_b6:
|
||||
jmp b1
|
||||
//SEG168 assert_byte::@1
|
||||
//SEG167 assert_byte::@1
|
||||
b1:
|
||||
//SEG168 [66] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
//SEG169 [67] call print_str param-assignment [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
//SEG170 [36] phi from assert_byte::@1 to print_str [phi:assert_byte::@1->print_str]
|
||||
print_str_from_b1:
|
||||
@ -3247,8 +3233,8 @@ assert_byte: {
|
||||
jsr print_str
|
||||
jmp b2_from_b1
|
||||
str: .text " @"
|
||||
str1: .text "ok@"
|
||||
str2: .text "fail!@"
|
||||
str1: .text "fail!@"
|
||||
str2: .text "ok@"
|
||||
}
|
||||
//SEG173 print_cls
|
||||
print_cls: {
|
||||
@ -3296,7 +3282,7 @@ Statement [23] (byte*) print_str::str#5 ← (byte*) assert_sbyte::msg#5 [ assert
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:4 [ assert_sbyte::b#5 ]
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:5 [ assert_sbyte::c#5 ]
|
||||
Statement [24] (byte*~) print_char_cursor#86 ← (byte*) print_line_cursor#1 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_char_cursor#86 print_line_cursor#1 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_char_cursor#86 print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:14 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_char_cursor#86 print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:16 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_char_cursor#86 print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:18 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_char_cursor#86 print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:20 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_char_cursor#86 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [29] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
Statement [34] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
Statement [38] if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2 [ print_char_cursor#2 print_str::str#10 ] ( main:2::test_sbytes:9::assert_sbyte:12::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:14::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:16::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:18::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:20::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:12::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:14::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:16::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:18::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:20::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:12::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:14::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:16::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:18::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:20::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:12::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:14::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:16::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:18::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:20::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:49::print_str:57 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:51::print_str:57 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:53::print_str:57 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:49::print_str:59 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:51::print_str:59 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:53::print_str:59 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:49::print_str:62 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:51::print_str:62 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:53::print_str:62 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:49::print_str:67 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:51::print_str:67 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:53::print_str:67 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] ) always clobbers reg byte a reg byte y
|
||||
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:4 [ assert_sbyte::b#5 ]
|
||||
Removing always clobbered register reg byte y as potential for zp ZP_BYTE:5 [ assert_sbyte::c#5 ]
|
||||
@ -3310,13 +3296,13 @@ Statement [46] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#2) goto
|
||||
Statement [50] (byte*~) print_char_cursor#92 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#92 ] ( main:2::test_bytes:7 [ print_line_cursor#1 print_char_cursor#92 ] ) always clobbers reg byte a
|
||||
Statement [52] (byte*~) print_char_cursor#93 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#93 ] ( main:2::test_bytes:7 [ print_line_cursor#1 print_char_cursor#93 ] ) always clobbers reg byte a
|
||||
Statement [56] (byte*) print_str::str#1 ← (byte*) assert_byte::msg#3 [ print_str::str#1 print_char_cursor#70 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ print_str::str#1 print_char_cursor#70 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ print_str::str#1 print_char_cursor#70 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ print_str::str#1 print_char_cursor#70 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] ) always clobbers reg byte a
|
||||
Statement [61] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) always clobbers reg byte a
|
||||
Statement [66] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) always clobbers reg byte a
|
||||
Statement [70] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y
|
||||
Statement [72] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) 1024+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) always clobbers reg byte a
|
||||
Statement [6] *((const byte*) BGCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
Statement [23] (byte*) print_str::str#5 ← (byte*) assert_sbyte::msg#5 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_line_cursor#1 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:14 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:16 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:18 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:20 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [24] (byte*~) print_char_cursor#86 ← (byte*) print_line_cursor#1 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_char_cursor#86 print_line_cursor#1 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_char_cursor#86 print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:14 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_char_cursor#86 print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:16 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_char_cursor#86 print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:18 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_char_cursor#86 print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:20 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 print_char_cursor#86 print_line_cursor#1 ] ) always clobbers reg byte a
|
||||
Statement [29] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
Statement [34] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
Statement [38] if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2 [ print_char_cursor#2 print_str::str#10 ] ( main:2::test_sbytes:9::assert_sbyte:12::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:14::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:16::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:18::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:20::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:12::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:14::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:16::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:18::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:20::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:12::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:14::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:16::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:18::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:20::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:12::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:14::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:16::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:18::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:20::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:49::print_str:57 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:51::print_str:57 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:53::print_str:57 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:49::print_str:59 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:51::print_str:59 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:53::print_str:59 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:49::print_str:62 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:51::print_str:62 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:53::print_str:62 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:49::print_str:67 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:51::print_str:67 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:53::print_str:67 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] ) always clobbers reg byte a reg byte y
|
||||
Statement [40] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#10) [ print_char_cursor#2 print_str::str#10 ] ( main:2::test_sbytes:9::assert_sbyte:12::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:14::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:16::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:18::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:20::print_str:25 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:12::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:14::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:16::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:18::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:20::print_str:27 [ assert_sbyte::b#5 assert_sbyte::c#5 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:12::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:14::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:16::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:18::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:20::print_str:30 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:12::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:14::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:16::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:18::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_sbytes:9::assert_sbyte:20::print_str:35 [ print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:49::print_str:57 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:51::print_str:57 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:53::print_str:57 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:49::print_str:59 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:51::print_str:59 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:53::print_str:59 [ print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:49::print_str:62 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:51::print_str:62 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:53::print_str:62 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:49::print_str:67 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:51::print_str:67 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] main:2::test_bytes:7::assert_byte:53::print_str:67 [ print_line_cursor#50 print_char_cursor#2 print_str::str#10 ] ) always clobbers reg byte a reg byte y
|
||||
Statement [45] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#24 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12::print_ln:32 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14::print_ln:32 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16::print_ln:32 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18::print_ln:32 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20::print_ln:32 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_bytes:7::assert_byte:49::print_ln:64 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_bytes:7::assert_byte:51::print_ln:64 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_bytes:7::assert_byte:53::print_ln:64 [ print_line_cursor#1 print_char_cursor#2 ] ) always clobbers reg byte a
|
||||
@ -3324,7 +3310,7 @@ Statement [46] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#2) goto
|
||||
Statement [50] (byte*~) print_char_cursor#92 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#92 ] ( main:2::test_bytes:7 [ print_line_cursor#1 print_char_cursor#92 ] ) always clobbers reg byte a
|
||||
Statement [52] (byte*~) print_char_cursor#93 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#93 ] ( main:2::test_bytes:7 [ print_line_cursor#1 print_char_cursor#93 ] ) always clobbers reg byte a
|
||||
Statement [56] (byte*) print_str::str#1 ← (byte*) assert_byte::msg#3 [ print_str::str#1 print_char_cursor#70 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ print_str::str#1 print_char_cursor#70 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ print_str::str#1 print_char_cursor#70 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ print_str::str#1 print_char_cursor#70 print_line_cursor#50 assert_byte::b#3 assert_byte::c#3 ] ) always clobbers reg byte a
|
||||
Statement [61] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) always clobbers reg byte a
|
||||
Statement [66] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) always clobbers reg byte a
|
||||
Statement [70] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y
|
||||
Statement [72] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) 1024+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) always clobbers reg byte a
|
||||
Potential registers zp ZP_WORD:2 [ assert_sbyte::msg#5 ] : zp ZP_WORD:2 ,
|
||||
@ -3349,19 +3335,19 @@ Uplift Scope [main]
|
||||
Uplift Scope [test_bytes]
|
||||
Uplift Scope [test_sbytes]
|
||||
|
||||
Uplifting [] best 2205 combination zp ZP_WORD:6 [ print_char_cursor#80 print_char_cursor#70 print_char_cursor#2 print_char_cursor#86 print_char_cursor#1 print_char_cursor#92 print_char_cursor#93 ] zp ZP_WORD:10 [ print_line_cursor#24 print_line_cursor#47 print_line_cursor#50 print_line_cursor#1 ]
|
||||
Uplifting [print_str] best 2205 combination zp ZP_WORD:8 [ print_str::str#10 print_str::str#11 print_str::str#1 print_str::str#5 print_str::str#0 ]
|
||||
Uplifting [print_cls] best 2205 combination zp ZP_WORD:16 [ print_cls::sc#2 print_cls::sc#1 ]
|
||||
Uplifting [assert_byte] best 2193 combination zp ZP_WORD:12 [ assert_byte::msg#3 ] reg byte x [ assert_byte::b#3 ] zp ZP_BYTE:15 [ assert_byte::c#3 ]
|
||||
Uplifting [assert_sbyte] best 2175 combination zp ZP_WORD:2 [ assert_sbyte::msg#5 ] reg byte x [ assert_sbyte::b#5 ] zp ZP_BYTE:5 [ assert_sbyte::c#5 ]
|
||||
Uplifting [print_ln] best 2175 combination
|
||||
Uplifting [main] best 2175 combination
|
||||
Uplifting [test_bytes] best 2175 combination
|
||||
Uplifting [test_sbytes] best 2175 combination
|
||||
Uplifting [] best 2199 combination zp ZP_WORD:6 [ print_char_cursor#80 print_char_cursor#70 print_char_cursor#2 print_char_cursor#86 print_char_cursor#1 print_char_cursor#92 print_char_cursor#93 ] zp ZP_WORD:10 [ print_line_cursor#24 print_line_cursor#47 print_line_cursor#50 print_line_cursor#1 ]
|
||||
Uplifting [print_str] best 2199 combination zp ZP_WORD:8 [ print_str::str#10 print_str::str#11 print_str::str#1 print_str::str#5 print_str::str#0 ]
|
||||
Uplifting [print_cls] best 2199 combination zp ZP_WORD:16 [ print_cls::sc#2 print_cls::sc#1 ]
|
||||
Uplifting [assert_byte] best 2187 combination zp ZP_WORD:12 [ assert_byte::msg#3 ] reg byte x [ assert_byte::b#3 ] zp ZP_BYTE:15 [ assert_byte::c#3 ]
|
||||
Uplifting [assert_sbyte] best 2169 combination zp ZP_WORD:2 [ assert_sbyte::msg#5 ] reg byte x [ assert_sbyte::b#5 ] zp ZP_BYTE:5 [ assert_sbyte::c#5 ]
|
||||
Uplifting [print_ln] best 2169 combination
|
||||
Uplifting [main] best 2169 combination
|
||||
Uplifting [test_bytes] best 2169 combination
|
||||
Uplifting [test_sbytes] best 2169 combination
|
||||
Attempting to uplift remaining variables inzp ZP_BYTE:15 [ assert_byte::c#3 ]
|
||||
Uplifting [assert_byte] best 2175 combination zp ZP_BYTE:15 [ assert_byte::c#3 ]
|
||||
Uplifting [assert_byte] best 2169 combination zp ZP_BYTE:15 [ assert_byte::c#3 ]
|
||||
Attempting to uplift remaining variables inzp ZP_BYTE:5 [ assert_sbyte::c#5 ]
|
||||
Uplifting [assert_sbyte] best 2175 combination zp ZP_BYTE:5 [ assert_sbyte::c#5 ]
|
||||
Uplifting [assert_sbyte] best 2169 combination zp ZP_BYTE:5 [ assert_sbyte::c#5 ]
|
||||
Coalescing zero page register with common assignment [ zp ZP_WORD:2 [ assert_sbyte::msg#5 ] ] with [ zp ZP_WORD:8 [ print_str::str#10 print_str::str#11 print_str::str#1 print_str::str#5 print_str::str#0 ] ] - score: 1
|
||||
Coalescing zero page register with common assignment [ zp ZP_WORD:2 [ assert_sbyte::msg#5 print_str::str#10 print_str::str#11 print_str::str#1 print_str::str#5 print_str::str#0 ] ] with [ zp ZP_WORD:12 [ assert_byte::msg#3 ] ] - score: 1
|
||||
Coalescing zero page register [ zp ZP_WORD:2 [ assert_sbyte::msg#5 print_str::str#10 print_str::str#11 print_str::str#1 print_str::str#5 print_str::str#0 assert_byte::msg#3 ] ] with [ zp ZP_WORD:16 [ print_cls::sc#2 print_cls::sc#1 ] ]
|
||||
@ -3571,15 +3557,14 @@ assert_sbyte: {
|
||||
jmp b6
|
||||
//SEG71 assert_sbyte::@6
|
||||
b6:
|
||||
//SEG72 [28] if((signed byte) assert_sbyte::b#5==(signed byte) assert_sbyte::c#5) goto assert_sbyte::@1 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) -- vbsxx_eq_vbsz1_then_la1
|
||||
//SEG72 [28] if((signed byte) assert_sbyte::b#5!=(signed byte) assert_sbyte::c#5) goto assert_sbyte::@1 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) -- vbsxx_neq_vbsz1_then_la1
|
||||
cpx c
|
||||
beq b1_from_b6
|
||||
bne b1
|
||||
//SEG73 [29] phi from assert_sbyte::@6 to assert_sbyte::@3 [phi:assert_sbyte::@6->assert_sbyte::@3]
|
||||
b3_from_b6:
|
||||
jmp b3
|
||||
//SEG73 assert_sbyte::@3
|
||||
//SEG74 assert_sbyte::@3
|
||||
b3:
|
||||
//SEG74 [29] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
//SEG75 [30] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
//SEG76 [36] phi from assert_sbyte::@3 to print_str [phi:assert_sbyte::@3->print_str]
|
||||
print_str_from_b3:
|
||||
@ -3606,11 +3591,11 @@ assert_sbyte: {
|
||||
breturn:
|
||||
//SEG85 [33] return [ print_line_cursor#1 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 ] )
|
||||
rts
|
||||
//SEG86 [34] phi from assert_sbyte::@6 to assert_sbyte::@1 [phi:assert_sbyte::@6->assert_sbyte::@1]
|
||||
b1_from_b6:
|
||||
jmp b1
|
||||
//SEG87 assert_sbyte::@1
|
||||
//SEG86 assert_sbyte::@1
|
||||
b1:
|
||||
//SEG87 [34] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
//SEG88 [35] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
//SEG89 [36] phi from assert_sbyte::@1 to print_str [phi:assert_sbyte::@1->print_str]
|
||||
print_str_from_b1:
|
||||
@ -3623,8 +3608,8 @@ assert_sbyte: {
|
||||
jsr print_str
|
||||
jmp b2_from_b1
|
||||
str: .text " @"
|
||||
str1: .text "ok@"
|
||||
str2: .text "fail!@"
|
||||
str1: .text "fail!@"
|
||||
str2: .text "ok@"
|
||||
}
|
||||
//SEG92 print_str
|
||||
print_str: {
|
||||
@ -3814,15 +3799,14 @@ assert_byte: {
|
||||
jmp b6
|
||||
//SEG152 assert_byte::@6
|
||||
b6:
|
||||
//SEG153 [60] if((byte) assert_byte::b#3==(byte) assert_byte::c#3) goto assert_byte::@1 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) -- vbuxx_eq_vbuz1_then_la1
|
||||
//SEG153 [60] if((byte) assert_byte::b#3!=(byte) assert_byte::c#3) goto assert_byte::@1 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) -- vbuxx_neq_vbuz1_then_la1
|
||||
cpx c
|
||||
beq b1_from_b6
|
||||
bne b1
|
||||
//SEG154 [61] phi from assert_byte::@6 to assert_byte::@3 [phi:assert_byte::@6->assert_byte::@3]
|
||||
b3_from_b6:
|
||||
jmp b3
|
||||
//SEG154 assert_byte::@3
|
||||
//SEG155 assert_byte::@3
|
||||
b3:
|
||||
//SEG155 [61] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
//SEG156 [62] call print_str param-assignment [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
//SEG157 [36] phi from assert_byte::@3 to print_str [phi:assert_byte::@3->print_str]
|
||||
print_str_from_b3:
|
||||
@ -3849,11 +3833,11 @@ assert_byte: {
|
||||
breturn:
|
||||
//SEG166 [65] return [ print_line_cursor#1 ] ( main:2::test_bytes:7::assert_byte:49 [ print_line_cursor#1 ] main:2::test_bytes:7::assert_byte:51 [ print_line_cursor#1 ] main:2::test_bytes:7::assert_byte:53 [ print_line_cursor#1 ] )
|
||||
rts
|
||||
//SEG167 [66] phi from assert_byte::@6 to assert_byte::@1 [phi:assert_byte::@6->assert_byte::@1]
|
||||
b1_from_b6:
|
||||
jmp b1
|
||||
//SEG168 assert_byte::@1
|
||||
//SEG167 assert_byte::@1
|
||||
b1:
|
||||
//SEG168 [66] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
//SEG169 [67] call print_str param-assignment [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
//SEG170 [36] phi from assert_byte::@1 to print_str [phi:assert_byte::@1->print_str]
|
||||
print_str_from_b1:
|
||||
@ -3866,8 +3850,8 @@ assert_byte: {
|
||||
jsr print_str
|
||||
jmp b2_from_b1
|
||||
str: .text " @"
|
||||
str1: .text "ok@"
|
||||
str2: .text "fail!@"
|
||||
str1: .text "fail!@"
|
||||
str2: .text "ok@"
|
||||
}
|
||||
//SEG173 print_cls
|
||||
print_cls: {
|
||||
@ -3926,7 +3910,6 @@ Removing instruction jmp b3
|
||||
Removing instruction jmp b2
|
||||
Removing instruction jmp breturn
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp breturn
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp breturn
|
||||
@ -3939,17 +3922,14 @@ Removing instruction jmp b3
|
||||
Removing instruction jmp b2
|
||||
Removing instruction jmp breturn
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp b1
|
||||
Removing instruction jmp breturn
|
||||
Succesful ASM optimization Pass5NextJumpElimination
|
||||
Removing instruction ldy #0
|
||||
Succesful ASM optimization Pass5UnnecesaryLoadElimination
|
||||
Replacing label b1_from_b6 with b1
|
||||
Replacing label b2_from_b1 with b2
|
||||
Replacing label b1_from_b2 with b1
|
||||
Replacing label b1_from_b1 with b1
|
||||
Replacing label b1_from_b1 with b1
|
||||
Replacing label b1_from_b6 with b1
|
||||
Replacing label b2_from_b1 with b2
|
||||
Replacing label b1_from_b1 with b1
|
||||
Replacing label b1_from_b1 with b1
|
||||
@ -3969,22 +3949,22 @@ Removing instruction b4_from_b3:
|
||||
Removing instruction assert_sbyte_from_b4:
|
||||
Removing instruction b5_from_assert_sbyte:
|
||||
Removing instruction print_str_from_b5:
|
||||
Removing instruction b3_from_b6:
|
||||
Removing instruction print_str_from_b3:
|
||||
Removing instruction b2_from_b1:
|
||||
Removing instruction b2_from_b3:
|
||||
Removing instruction print_ln_from_b2:
|
||||
Removing instruction b1_from_b6:
|
||||
Removing instruction print_str_from_b1:
|
||||
Removing instruction b1_from_print_str:
|
||||
Removing instruction b1_from_b2:
|
||||
Removing instruction b1_from_print_ln:
|
||||
Removing instruction b1_from_b1:
|
||||
Removing instruction b5_from_assert_byte:
|
||||
Removing instruction print_str_from_b5:
|
||||
Removing instruction b3_from_b6:
|
||||
Removing instruction print_str_from_b3:
|
||||
Removing instruction b2_from_b1:
|
||||
Removing instruction b2_from_b3:
|
||||
Removing instruction print_ln_from_b2:
|
||||
Removing instruction b1_from_b6:
|
||||
Removing instruction print_str_from_b1:
|
||||
Removing instruction b1_from_b1:
|
||||
Succesful ASM optimization Pass5RedundantLabelElimination
|
||||
Removing instruction b19:
|
||||
@ -4004,8 +3984,8 @@ Removing instruction print_str_from_assert_sbyte:
|
||||
Removing instruction b5:
|
||||
Removing instruction b6:
|
||||
Removing instruction b3:
|
||||
Removing instruction print_str_from_b3:
|
||||
Removing instruction breturn:
|
||||
Removing instruction print_str_from_b1:
|
||||
Removing instruction breturn:
|
||||
Removing instruction breturn:
|
||||
Removing instruction assert_byte_from_test_bytes:
|
||||
@ -4018,8 +3998,8 @@ Removing instruction print_str_from_assert_byte:
|
||||
Removing instruction b5:
|
||||
Removing instruction b6:
|
||||
Removing instruction b3:
|
||||
Removing instruction print_str_from_b3:
|
||||
Removing instruction breturn:
|
||||
Removing instruction print_str_from_b1:
|
||||
Removing instruction b1_from_print_cls:
|
||||
Removing instruction breturn:
|
||||
Succesful ASM optimization Pass5UnusedLabelElimination
|
||||
@ -4050,8 +4030,8 @@ FINAL SYMBOL TABLE
|
||||
(byte*) assert_byte::msg
|
||||
(byte*) assert_byte::msg#3 msg zp ZP_WORD:2 2.0
|
||||
(const string) assert_byte::str str = (string) " @"
|
||||
(const string) assert_byte::str1 str1 = (string) "ok@"
|
||||
(const string) assert_byte::str2 str2 = (string) "fail!@"
|
||||
(const string) assert_byte::str1 str1 = (string) "fail!@"
|
||||
(const string) assert_byte::str2 str2 = (string) "ok@"
|
||||
(void()) assert_sbyte((byte*) assert_sbyte::msg , (signed byte) assert_sbyte::b , (signed byte) assert_sbyte::c)
|
||||
(label) assert_sbyte::@1
|
||||
(label) assert_sbyte::@2
|
||||
@ -4066,8 +4046,8 @@ FINAL SYMBOL TABLE
|
||||
(byte*) assert_sbyte::msg
|
||||
(byte*) assert_sbyte::msg#5 msg zp ZP_WORD:2 2.0
|
||||
(const string) assert_sbyte::str str = (string) " @"
|
||||
(const string) assert_sbyte::str1 str1 = (string) "ok@"
|
||||
(const string) assert_sbyte::str2 str2 = (string) "fail!@"
|
||||
(const string) assert_sbyte::str1 str1 = (string) "fail!@"
|
||||
(const string) assert_sbyte::str2 str2 = (string) "ok@"
|
||||
(void()) main()
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
@ -4307,13 +4287,11 @@ assert_sbyte: {
|
||||
sta print_str.str+1
|
||||
jsr print_str
|
||||
//SEG71 assert_sbyte::@6
|
||||
//SEG72 [28] if((signed byte) assert_sbyte::b#5==(signed byte) assert_sbyte::c#5) goto assert_sbyte::@1 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) -- vbsxx_eq_vbsz1_then_la1
|
||||
//SEG72 [28] if((signed byte) assert_sbyte::b#5!=(signed byte) assert_sbyte::c#5) goto assert_sbyte::@1 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) -- vbsxx_neq_vbsz1_then_la1
|
||||
cpx c
|
||||
beq b1
|
||||
//SEG73 assert_sbyte::@3
|
||||
//SEG74 [29] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
bne b1
|
||||
//SEG73 [29] phi from assert_sbyte::@6 to assert_sbyte::@3 [phi:assert_sbyte::@6->assert_sbyte::@3]
|
||||
//SEG74 assert_sbyte::@3
|
||||
//SEG75 [30] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
//SEG76 [36] phi from assert_sbyte::@3 to print_str [phi:assert_sbyte::@3->print_str]
|
||||
//SEG77 [36] phi (byte*) print_char_cursor#80 = (byte*) print_char_cursor#2 [phi:assert_sbyte::@3->print_str#0] -- register_copy
|
||||
@ -4333,9 +4311,11 @@ assert_sbyte: {
|
||||
//SEG84 assert_sbyte::@return
|
||||
//SEG85 [33] return [ print_line_cursor#1 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 ] )
|
||||
rts
|
||||
//SEG86 [34] phi from assert_sbyte::@6 to assert_sbyte::@1 [phi:assert_sbyte::@6->assert_sbyte::@1]
|
||||
//SEG87 assert_sbyte::@1
|
||||
//SEG86 assert_sbyte::@1
|
||||
b1:
|
||||
//SEG87 [34] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
//SEG88 [35] call print_str param-assignment [ print_line_cursor#1 print_char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18 [ print_line_cursor#1 print_char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20 [ print_line_cursor#1 print_char_cursor#2 ] )
|
||||
//SEG89 [36] phi from assert_sbyte::@1 to print_str [phi:assert_sbyte::@1->print_str]
|
||||
//SEG90 [36] phi (byte*) print_char_cursor#80 = (byte*) print_char_cursor#2 [phi:assert_sbyte::@1->print_str#0] -- register_copy
|
||||
@ -4347,8 +4327,8 @@ assert_sbyte: {
|
||||
jsr print_str
|
||||
jmp b2
|
||||
str: .text " @"
|
||||
str1: .text "ok@"
|
||||
str2: .text "fail!@"
|
||||
str1: .text "fail!@"
|
||||
str2: .text "ok@"
|
||||
}
|
||||
//SEG92 print_str
|
||||
print_str: {
|
||||
@ -4511,13 +4491,11 @@ assert_byte: {
|
||||
sta print_str.str+1
|
||||
jsr print_str
|
||||
//SEG152 assert_byte::@6
|
||||
//SEG153 [60] if((byte) assert_byte::b#3==(byte) assert_byte::c#3) goto assert_byte::@1 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) -- vbuxx_eq_vbuz1_then_la1
|
||||
//SEG153 [60] if((byte) assert_byte::b#3!=(byte) assert_byte::c#3) goto assert_byte::@1 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) -- vbuxx_neq_vbuz1_then_la1
|
||||
cpx c
|
||||
beq b1
|
||||
//SEG154 assert_byte::@3
|
||||
//SEG155 [61] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
bne b1
|
||||
//SEG154 [61] phi from assert_byte::@6 to assert_byte::@3 [phi:assert_byte::@6->assert_byte::@3]
|
||||
//SEG155 assert_byte::@3
|
||||
//SEG156 [62] call print_str param-assignment [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
//SEG157 [36] phi from assert_byte::@3 to print_str [phi:assert_byte::@3->print_str]
|
||||
//SEG158 [36] phi (byte*) print_char_cursor#80 = (byte*) print_char_cursor#2 [phi:assert_byte::@3->print_str#0] -- register_copy
|
||||
@ -4537,9 +4515,11 @@ assert_byte: {
|
||||
//SEG165 assert_byte::@return
|
||||
//SEG166 [65] return [ print_line_cursor#1 ] ( main:2::test_bytes:7::assert_byte:49 [ print_line_cursor#1 ] main:2::test_bytes:7::assert_byte:51 [ print_line_cursor#1 ] main:2::test_bytes:7::assert_byte:53 [ print_line_cursor#1 ] )
|
||||
rts
|
||||
//SEG167 [66] phi from assert_byte::@6 to assert_byte::@1 [phi:assert_byte::@6->assert_byte::@1]
|
||||
//SEG168 assert_byte::@1
|
||||
//SEG167 assert_byte::@1
|
||||
b1:
|
||||
//SEG168 [66] *((const byte*) BGCOL#0) ← (const byte) RED#0 [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #RED
|
||||
sta BGCOL
|
||||
//SEG169 [67] call print_str param-assignment [ print_char_cursor#2 print_line_cursor#50 ] ( main:2::test_bytes:7::assert_byte:49 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:51 [ print_char_cursor#2 print_line_cursor#50 ] main:2::test_bytes:7::assert_byte:53 [ print_char_cursor#2 print_line_cursor#50 ] )
|
||||
//SEG170 [36] phi from assert_byte::@1 to print_str [phi:assert_byte::@1->print_str]
|
||||
//SEG171 [36] phi (byte*) print_char_cursor#80 = (byte*) print_char_cursor#2 [phi:assert_byte::@1->print_str#0] -- register_copy
|
||||
@ -4551,8 +4531,8 @@ assert_byte: {
|
||||
jsr print_str
|
||||
jmp b2
|
||||
str: .text " @"
|
||||
str1: .text "ok@"
|
||||
str2: .text "fail!@"
|
||||
str1: .text "fail!@"
|
||||
str2: .text "ok@"
|
||||
}
|
||||
//SEG173 print_cls
|
||||
print_cls: {
|
||||
|
@ -21,8 +21,8 @@
|
||||
(byte*) assert_byte::msg
|
||||
(byte*) assert_byte::msg#3 msg zp ZP_WORD:2 2.0
|
||||
(const string) assert_byte::str str = (string) " @"
|
||||
(const string) assert_byte::str1 str1 = (string) "ok@"
|
||||
(const string) assert_byte::str2 str2 = (string) "fail!@"
|
||||
(const string) assert_byte::str1 str1 = (string) "fail!@"
|
||||
(const string) assert_byte::str2 str2 = (string) "ok@"
|
||||
(void()) assert_sbyte((byte*) assert_sbyte::msg , (signed byte) assert_sbyte::b , (signed byte) assert_sbyte::c)
|
||||
(label) assert_sbyte::@1
|
||||
(label) assert_sbyte::@2
|
||||
@ -37,8 +37,8 @@
|
||||
(byte*) assert_sbyte::msg
|
||||
(byte*) assert_sbyte::msg#5 msg zp ZP_WORD:2 2.0
|
||||
(const string) assert_sbyte::str str = (string) " @"
|
||||
(const string) assert_sbyte::str1 str1 = (string) "ok@"
|
||||
(const string) assert_sbyte::str2 str2 = (string) "fail!@"
|
||||
(const string) assert_sbyte::str1 str1 = (string) "fail!@"
|
||||
(const string) assert_sbyte::str2 str2 = (string) "ok@"
|
||||
(void()) main()
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
|
@ -425,8 +425,8 @@ Constant (const byte) a#19 = 0
|
||||
Constant (const byte*) B#0 = ((byte*))4096
|
||||
Succesful SSA optimization Pass2ConstantIdentification
|
||||
if() condition always true - replacing block destination if(true) goto main::@2
|
||||
if() condition always true - replacing block destination if(true) goto menu::@2
|
||||
Removing PHI-reference to removed block (menu::@1) in block menu::@return
|
||||
if() condition always true - replacing block destination if(true) goto menu::@2
|
||||
if() condition always true - replacing block destination if(true) goto mode::@2
|
||||
Succesful SSA optimization Pass2ConstantIfs
|
||||
Removing unused block main::@return
|
||||
|
@ -17,7 +17,7 @@ main: {
|
||||
print_msg: {
|
||||
.label msg = 4
|
||||
cpx #1
|
||||
bne b1
|
||||
beq b1
|
||||
lda #<msg_1
|
||||
sta msg
|
||||
lda #>msg_1
|
||||
@ -31,8 +31,8 @@ print_msg: {
|
||||
b2:
|
||||
jsr print
|
||||
rts
|
||||
msg_0: .text "World!@"
|
||||
msg_1: .text "Hello @"
|
||||
msg_0: .text "Hello @"
|
||||
msg_1: .text "World!@"
|
||||
}
|
||||
print: {
|
||||
.label msg = 4
|
||||
|
@ -21,7 +21,7 @@ main::@return: scope:[main] from main::@1
|
||||
print_msg: scope:[print_msg] from main main::@1
|
||||
[9] (byte*) screen#18 ← phi( main/((byte*))(word/signed word/dword/signed dword) 1024 main::@1/(byte*) screen#14 ) [ print_msg::idx#2 screen#18 ] ( main:2::print_msg:5 [ print_msg::idx#2 screen#18 ] main:2::print_msg:7 [ print_msg::idx#2 screen#18 ] )
|
||||
[9] (byte) print_msg::idx#2 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 1 main::@1/(byte/signed byte/word/signed word/dword/signed dword) 2 ) [ print_msg::idx#2 screen#18 ] ( main:2::print_msg:5 [ print_msg::idx#2 screen#18 ] main:2::print_msg:7 [ print_msg::idx#2 screen#18 ] )
|
||||
[10] if((byte) print_msg::idx#2!=(byte/signed byte/word/signed word/dword/signed dword) 1) goto print_msg::@2 [ screen#18 ] ( main:2::print_msg:5 [ screen#18 ] main:2::print_msg:7 [ screen#18 ] )
|
||||
[10] if((byte) print_msg::idx#2==(byte/signed byte/word/signed word/dword/signed dword) 1) goto print_msg::@2 [ screen#18 ] ( main:2::print_msg:5 [ screen#18 ] main:2::print_msg:7 [ screen#18 ] )
|
||||
to:print_msg::@3
|
||||
print_msg::@3: scope:[print_msg] from print_msg
|
||||
[11] phi() [ screen#18 ] ( main:2::print_msg:5 [ screen#18 ] main:2::print_msg:7 [ screen#18 ] )
|
||||
|
@ -35,14 +35,13 @@ main::@return:
|
||||
endproc // main()
|
||||
proc (void()) print_msg((byte) print_msg::idx)
|
||||
(boolean~) print_msg::$0 ← (byte) print_msg::idx == (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(boolean~) print_msg::$1 ← ! (boolean~) print_msg::$0
|
||||
if((boolean~) print_msg::$1) goto print_msg::@1
|
||||
(byte*) print_msg::msg ← (string) "Hello @"
|
||||
if((boolean~) print_msg::$0) goto print_msg::@1
|
||||
(byte*) print_msg::msg ← (string) "World!@"
|
||||
goto print_msg::@2
|
||||
print_msg::@1:
|
||||
(byte*) print_msg::msg ← (string) "World!@"
|
||||
(byte*) print_msg::msg ← (string) "Hello @"
|
||||
print_msg::@2:
|
||||
(void~) print_msg::$2 ← call print (byte*) print_msg::msg
|
||||
(void~) print_msg::$1 ← call print (byte*) print_msg::msg
|
||||
print_msg::@return:
|
||||
return
|
||||
endproc // print_msg()
|
||||
@ -77,8 +76,7 @@ SYMBOLS
|
||||
(byte*) print::msg
|
||||
(void()) print_msg((byte) print_msg::idx)
|
||||
(boolean~) print_msg::$0
|
||||
(boolean~) print_msg::$1
|
||||
(void~) print_msg::$2
|
||||
(void~) print_msg::$1
|
||||
(label) print_msg::@1
|
||||
(label) print_msg::@2
|
||||
(label) print_msg::@return
|
||||
@ -101,17 +99,16 @@ main::@return: scope:[main] from main
|
||||
to:@2
|
||||
print_msg: scope:[print_msg] from
|
||||
(boolean~) print_msg::$0 ← (byte) print_msg::idx == (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(boolean~) print_msg::$1 ← ! (boolean~) print_msg::$0
|
||||
if((boolean~) print_msg::$1) goto print_msg::@1
|
||||
if((boolean~) print_msg::$0) goto print_msg::@1
|
||||
to:print_msg::@3
|
||||
print_msg::@1: scope:[print_msg] from print_msg print_msg::@4
|
||||
(byte*) print_msg::msg ← (string) "World!@"
|
||||
to:print_msg::@2
|
||||
print_msg::@3: scope:[print_msg] from print_msg
|
||||
(byte*) print_msg::msg ← (string) "Hello @"
|
||||
to:print_msg::@2
|
||||
print_msg::@3: scope:[print_msg] from print_msg
|
||||
(byte*) print_msg::msg ← (string) "World!@"
|
||||
to:print_msg::@2
|
||||
print_msg::@2: scope:[print_msg] from print_msg::@1 print_msg::@3
|
||||
(void~) print_msg::$2 ← call print (byte*) print_msg::msg
|
||||
(void~) print_msg::$1 ← call print (byte*) print_msg::msg
|
||||
to:print_msg::@return
|
||||
print_msg::@4: scope:[print_msg] from
|
||||
to:print_msg::@1
|
||||
@ -150,9 +147,9 @@ print::@return: scope:[print] from print::@3
|
||||
|
||||
Eliminating unused variable - keeping the call (void~) main::$0
|
||||
Eliminating unused variable - keeping the call (void~) main::$1
|
||||
Eliminating unused variable - keeping the call (void~) print_msg::$2
|
||||
Eliminating unused variable - keeping the call (void~) print_msg::$1
|
||||
Creating constant string variable for inline (const string) print_msg::$2 "Hello @"
|
||||
Creating constant string variable for inline (const string) print_msg::$3 "World!@"
|
||||
Creating constant string variable for inline (const string) print_msg::$4 "Hello @"
|
||||
Removing empty block @1
|
||||
Removing empty block print_msg::@4
|
||||
Removing empty block print::@4
|
||||
@ -196,16 +193,15 @@ print_msg: scope:[print_msg] from main main::@1
|
||||
(byte*) screen#24 ← phi( main/(byte*) screen#17 main::@1/(byte*) screen#0 )
|
||||
(byte) print_msg::idx#2 ← phi( main/(byte) print_msg::idx#0 main::@1/(byte) print_msg::idx#1 )
|
||||
(boolean~) print_msg::$0 ← (byte) print_msg::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(boolean~) print_msg::$1 ← ! (boolean~) print_msg::$0
|
||||
if((boolean~) print_msg::$1) goto print_msg::@1
|
||||
if((boolean~) print_msg::$0) goto print_msg::@1
|
||||
to:print_msg::@3
|
||||
print_msg::@1: scope:[print_msg] from print_msg
|
||||
(byte*) screen#21 ← phi( print_msg/(byte*) screen#24 )
|
||||
(byte*) print_msg::msg#0 ← (const string) print_msg::$3
|
||||
(byte*) print_msg::msg#0 ← (const string) print_msg::$2
|
||||
to:print_msg::@2
|
||||
print_msg::@3: scope:[print_msg] from print_msg
|
||||
(byte*) screen#22 ← phi( print_msg/(byte*) screen#24 )
|
||||
(byte*) print_msg::msg#1 ← (const string) print_msg::$4
|
||||
(byte*) print_msg::msg#1 ← (const string) print_msg::$3
|
||||
to:print_msg::@2
|
||||
print_msg::@2: scope:[print_msg] from print_msg::@1 print_msg::@3
|
||||
(byte*) screen#18 ← phi( print_msg::@1/(byte*) screen#21 print_msg::@3/(byte*) screen#22 )
|
||||
@ -280,9 +276,8 @@ SYMBOL TABLE SSA
|
||||
(byte*) print::msg#4
|
||||
(void()) print_msg((byte) print_msg::idx)
|
||||
(boolean~) print_msg::$0
|
||||
(boolean~) print_msg::$1
|
||||
(const string) print_msg::$2 = (string) "Hello @"
|
||||
(const string) print_msg::$3 = (string) "World!@"
|
||||
(const string) print_msg::$4 = (string) "Hello @"
|
||||
(label) print_msg::@1
|
||||
(label) print_msg::@2
|
||||
(label) print_msg::@3
|
||||
@ -324,8 +319,6 @@ SYMBOL TABLE SSA
|
||||
(byte*) screen#9
|
||||
|
||||
OPTIMIZING CONTROL FLOW GRAPH
|
||||
Inversing boolean not (boolean~) print_msg::$1 ← (byte) print_msg::idx#2 != (byte/signed byte/word/signed word/dword/signed dword) 1 from (boolean~) print_msg::$0 ← (byte) print_msg::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Succesful SSA optimization Pass2UnaryNotSimplification
|
||||
Not aliassing across scopes: screen#17 screen#20
|
||||
Not aliassing across scopes: screen#9 screen#4
|
||||
Not aliassing across scopes: screen#10 screen#4
|
||||
@ -375,13 +368,13 @@ Redundant Phi (byte*) print::msg#4 (byte*) print::msg#0
|
||||
Redundant Phi (byte*) screen#23 (byte*) screen#18
|
||||
Redundant Phi (byte*) screen#16 (byte*) screen#1
|
||||
Succesful SSA optimization Pass2RedundantPhiElimination
|
||||
Simple Condition (boolean~) print_msg::$1 if((byte) print_msg::idx#2!=(byte/signed byte/word/signed word/dword/signed dword) 1) goto print_msg::@1
|
||||
Simple Condition (boolean~) print_msg::$0 if((byte) print_msg::idx#2==(byte/signed byte/word/signed word/dword/signed dword) 1) goto print_msg::@1
|
||||
Simple Condition (boolean~) print::$0 if(*((byte*) print::msg#2)!=(byte) '@') goto print::@2
|
||||
Succesful SSA optimization Pass2ConditionalJumpSimplification
|
||||
Constant (const byte) print_msg::idx#0 = 1
|
||||
Constant (const byte) print_msg::idx#1 = 2
|
||||
Constant (const string) print_msg::msg#0 = print_msg::$3
|
||||
Constant (const string) print_msg::msg#1 = print_msg::$4
|
||||
Constant (const string) print_msg::msg#0 = print_msg::$2
|
||||
Constant (const string) print_msg::msg#1 = print_msg::$3
|
||||
Constant (const byte*) screen#20 = ((byte*))1024
|
||||
Succesful SSA optimization Pass2ConstantIdentification
|
||||
Culled Empty Block (label) main::@2
|
||||
@ -412,8 +405,8 @@ Inlining constant with var siblings (const byte*) screen#20
|
||||
Constant inlined print_msg::idx#1 = (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
Constant inlined print_msg::idx#0 = (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
Constant inlined screen#20 = ((byte*))(word/signed word/dword/signed dword) 1024
|
||||
Constant inlined print_msg::$4 = (const string) print_msg::msg#1
|
||||
Constant inlined print_msg::$3 = (const string) print_msg::msg#0
|
||||
Constant inlined print_msg::$3 = (const string) print_msg::msg#1
|
||||
Constant inlined print_msg::$2 = (const string) print_msg::msg#0
|
||||
Succesful SSA optimization Pass2ConstantInlining
|
||||
Inlining constant with var siblings (const string) print_msg::msg#0
|
||||
Inlining constant with var siblings (const string) print_msg::msg#1
|
||||
@ -484,7 +477,7 @@ main::@return: scope:[main] from main::@1
|
||||
print_msg: scope:[print_msg] from main main::@1
|
||||
[9] (byte*) screen#18 ← phi( main/((byte*))(word/signed word/dword/signed dword) 1024 main::@1/(byte*) screen#14 ) [ print_msg::idx#2 screen#18 ] ( main:2::print_msg:5 [ print_msg::idx#2 screen#18 ] main:2::print_msg:7 [ print_msg::idx#2 screen#18 ] )
|
||||
[9] (byte) print_msg::idx#2 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 1 main::@1/(byte/signed byte/word/signed word/dword/signed dword) 2 ) [ print_msg::idx#2 screen#18 ] ( main:2::print_msg:5 [ print_msg::idx#2 screen#18 ] main:2::print_msg:7 [ print_msg::idx#2 screen#18 ] )
|
||||
[10] if((byte) print_msg::idx#2!=(byte/signed byte/word/signed word/dword/signed dword) 1) goto print_msg::@2 [ screen#18 ] ( main:2::print_msg:5 [ screen#18 ] main:2::print_msg:7 [ screen#18 ] )
|
||||
[10] if((byte) print_msg::idx#2==(byte/signed byte/word/signed word/dword/signed dword) 1) goto print_msg::@2 [ screen#18 ] ( main:2::print_msg:5 [ screen#18 ] main:2::print_msg:7 [ screen#18 ] )
|
||||
to:print_msg::@3
|
||||
print_msg::@3: scope:[print_msg] from print_msg
|
||||
[11] phi() [ screen#18 ] ( main:2::print_msg:5 [ screen#18 ] main:2::print_msg:7 [ screen#18 ] )
|
||||
@ -636,10 +629,10 @@ main: {
|
||||
print_msg: {
|
||||
.label idx = 2
|
||||
.label msg = 5
|
||||
//SEG23 [10] if((byte) print_msg::idx#2!=(byte/signed byte/word/signed word/dword/signed dword) 1) goto print_msg::@2 [ screen#18 ] ( main:2::print_msg:5 [ screen#18 ] main:2::print_msg:7 [ screen#18 ] ) -- vbuz1_neq_vbuc1_then_la1
|
||||
//SEG23 [10] if((byte) print_msg::idx#2==(byte/signed byte/word/signed word/dword/signed dword) 1) goto print_msg::@2 [ screen#18 ] ( main:2::print_msg:5 [ screen#18 ] main:2::print_msg:7 [ screen#18 ] ) -- vbuz1_eq_vbuc1_then_la1
|
||||
lda idx
|
||||
cmp #1
|
||||
bne b2_from_print_msg
|
||||
beq b2_from_print_msg
|
||||
//SEG24 [11] phi from print_msg to print_msg::@3 [phi:print_msg->print_msg::@3]
|
||||
b3_from_print_msg:
|
||||
jmp b3
|
||||
@ -677,8 +670,8 @@ print_msg: {
|
||||
breturn:
|
||||
//SEG35 [15] return [ screen#14 ] ( main:2::print_msg:5 [ screen#14 ] main:2::print_msg:7 [ screen#14 ] )
|
||||
rts
|
||||
msg_0: .text "World!@"
|
||||
msg_1: .text "Hello @"
|
||||
msg_0: .text "Hello @"
|
||||
msg_1: .text "World!@"
|
||||
}
|
||||
//SEG36 print
|
||||
print: {
|
||||
@ -801,9 +794,9 @@ main: {
|
||||
//SEG22 print_msg
|
||||
print_msg: {
|
||||
.label msg = 4
|
||||
//SEG23 [10] if((byte) print_msg::idx#2!=(byte/signed byte/word/signed word/dword/signed dword) 1) goto print_msg::@2 [ screen#18 ] ( main:2::print_msg:5 [ screen#18 ] main:2::print_msg:7 [ screen#18 ] ) -- vbuxx_neq_vbuc1_then_la1
|
||||
//SEG23 [10] if((byte) print_msg::idx#2==(byte/signed byte/word/signed word/dword/signed dword) 1) goto print_msg::@2 [ screen#18 ] ( main:2::print_msg:5 [ screen#18 ] main:2::print_msg:7 [ screen#18 ] ) -- vbuxx_eq_vbuc1_then_la1
|
||||
cpx #1
|
||||
bne b2_from_print_msg
|
||||
beq b2_from_print_msg
|
||||
//SEG24 [11] phi from print_msg to print_msg::@3 [phi:print_msg->print_msg::@3]
|
||||
b3_from_print_msg:
|
||||
jmp b3
|
||||
@ -838,8 +831,8 @@ print_msg: {
|
||||
breturn:
|
||||
//SEG35 [15] return [ screen#14 ] ( main:2::print_msg:5 [ screen#14 ] main:2::print_msg:7 [ screen#14 ] )
|
||||
rts
|
||||
msg_0: .text "World!@"
|
||||
msg_1: .text "Hello @"
|
||||
msg_0: .text "Hello @"
|
||||
msg_1: .text "World!@"
|
||||
}
|
||||
//SEG36 print
|
||||
print: {
|
||||
@ -942,8 +935,8 @@ FINAL SYMBOL TABLE
|
||||
(byte) print_msg::idx
|
||||
(byte) print_msg::idx#2 reg byte x 2.0
|
||||
(byte*) print_msg::msg
|
||||
(const string) print_msg::msg#0 msg#0 = (string) "World!@"
|
||||
(const string) print_msg::msg#1 msg#1 = (string) "Hello @"
|
||||
(const string) print_msg::msg#0 msg#0 = (string) "Hello @"
|
||||
(const string) print_msg::msg#1 msg#1 = (string) "World!@"
|
||||
(byte*) print_msg::msg#2 msg zp ZP_WORD:4 2.0
|
||||
(byte*) screen
|
||||
(byte*) screen#14 screen zp ZP_WORD:2 4.625
|
||||
@ -999,9 +992,9 @@ main: {
|
||||
//SEG22 print_msg
|
||||
print_msg: {
|
||||
.label msg = 4
|
||||
//SEG23 [10] if((byte) print_msg::idx#2!=(byte/signed byte/word/signed word/dword/signed dword) 1) goto print_msg::@2 [ screen#18 ] ( main:2::print_msg:5 [ screen#18 ] main:2::print_msg:7 [ screen#18 ] ) -- vbuxx_neq_vbuc1_then_la1
|
||||
//SEG23 [10] if((byte) print_msg::idx#2==(byte/signed byte/word/signed word/dword/signed dword) 1) goto print_msg::@2 [ screen#18 ] ( main:2::print_msg:5 [ screen#18 ] main:2::print_msg:7 [ screen#18 ] ) -- vbuxx_eq_vbuc1_then_la1
|
||||
cpx #1
|
||||
bne b1
|
||||
beq b1
|
||||
//SEG24 [11] phi from print_msg to print_msg::@3 [phi:print_msg->print_msg::@3]
|
||||
//SEG25 print_msg::@3
|
||||
//SEG26 [12] phi from print_msg::@3 to print_msg::@2 [phi:print_msg::@3->print_msg::@2]
|
||||
@ -1028,8 +1021,8 @@ print_msg: {
|
||||
//SEG34 print_msg::@return
|
||||
//SEG35 [15] return [ screen#14 ] ( main:2::print_msg:5 [ screen#14 ] main:2::print_msg:7 [ screen#14 ] )
|
||||
rts
|
||||
msg_0: .text "World!@"
|
||||
msg_1: .text "Hello @"
|
||||
msg_0: .text "Hello @"
|
||||
msg_1: .text "World!@"
|
||||
}
|
||||
//SEG36 print
|
||||
print: {
|
||||
|
@ -19,8 +19,8 @@
|
||||
(byte) print_msg::idx
|
||||
(byte) print_msg::idx#2 reg byte x 2.0
|
||||
(byte*) print_msg::msg
|
||||
(const string) print_msg::msg#0 msg#0 = (string) "World!@"
|
||||
(const string) print_msg::msg#1 msg#1 = (string) "Hello @"
|
||||
(const string) print_msg::msg#0 msg#0 = (string) "Hello @"
|
||||
(const string) print_msg::msg#1 msg#1 = (string) "World!@"
|
||||
(byte*) print_msg::msg#2 msg zp ZP_WORD:4 2.0
|
||||
(byte*) screen
|
||||
(byte*) screen#14 screen zp ZP_WORD:2 4.625
|
||||
|
@ -575,74 +575,72 @@ keyboard_event_scan::@1:
|
||||
(byte~) keyboard_event_scan::$0 ← call keyboard_matrix_read (byte) keyboard_event_scan::row
|
||||
(byte) keyboard_event_scan::row_scan ← (byte~) keyboard_event_scan::$0
|
||||
(boolean~) keyboard_event_scan::$1 ← (byte) keyboard_event_scan::row_scan != *((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row)
|
||||
(boolean~) keyboard_event_scan::$2 ← ! (boolean~) keyboard_event_scan::$1
|
||||
if((boolean~) keyboard_event_scan::$2) goto keyboard_event_scan::@2
|
||||
if((boolean~) keyboard_event_scan::$1) goto keyboard_event_scan::@2
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2 ← (byte) keyboard_event_scan::keycode + (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2
|
||||
goto keyboard_event_scan::@3
|
||||
keyboard_event_scan::@2:
|
||||
(byte) keyboard_event_scan::col ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
keyboard_event_scan::@3:
|
||||
keyboard_event_scan::@4:
|
||||
(byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan ^ *((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row)
|
||||
(byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((byte[8]) keyboard_matrix_col_bitmask + (byte) keyboard_event_scan::col)
|
||||
(boolean~) keyboard_event_scan::$5 ← (byte~) keyboard_event_scan::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$6 ← ! (boolean~) keyboard_event_scan::$5
|
||||
if((boolean~) keyboard_event_scan::$6) goto keyboard_event_scan::@4
|
||||
if((boolean~) keyboard_event_scan::$6) goto keyboard_event_scan::@5
|
||||
(boolean~) keyboard_event_scan::$7 ← (byte) keyboard_events_size != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(boolean~) keyboard_event_scan::$8 ← ! (boolean~) keyboard_event_scan::$7
|
||||
if((boolean~) keyboard_event_scan::$8) goto keyboard_event_scan::@5
|
||||
if((boolean~) keyboard_event_scan::$8) goto keyboard_event_scan::@6
|
||||
(byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_scan::row_scan & *((byte[8]) keyboard_matrix_col_bitmask + (byte) keyboard_event_scan::col)
|
||||
(byte) keyboard_event_scan::event_type ← (byte~) keyboard_event_scan::$9
|
||||
(boolean~) keyboard_event_scan::$10 ← (byte) keyboard_event_scan::event_type == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$11 ← ! (boolean~) keyboard_event_scan::$10
|
||||
if((boolean~) keyboard_event_scan::$11) goto keyboard_event_scan::@6
|
||||
(byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode | (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte/word/dword~) keyboard_event_scan::$12
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
goto keyboard_event_scan::@7
|
||||
keyboard_event_scan::@6:
|
||||
if((boolean~) keyboard_event_scan::$10) goto keyboard_event_scan::@7
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte) keyboard_event_scan::keycode
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
goto keyboard_event_scan::@8
|
||||
keyboard_event_scan::@7:
|
||||
(byte/word/dword~) keyboard_event_scan::$11 ← (byte) keyboard_event_scan::keycode | (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte/word/dword~) keyboard_event_scan::$11
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
keyboard_event_scan::@8:
|
||||
keyboard_event_scan::@6:
|
||||
keyboard_event_scan::@5:
|
||||
keyboard_event_scan::@4:
|
||||
(byte) keyboard_event_scan::keycode ← ++ (byte) keyboard_event_scan::keycode
|
||||
(byte) keyboard_event_scan::col ← ++ (byte) keyboard_event_scan::col
|
||||
(boolean~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::col != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$13) goto keyboard_event_scan::@3
|
||||
(boolean~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::col != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$12) goto keyboard_event_scan::@4
|
||||
*((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row) ← (byte) keyboard_event_scan::row_scan
|
||||
goto keyboard_event_scan::@8
|
||||
keyboard_event_scan::@2:
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 ← (byte) keyboard_event_scan::keycode + (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14
|
||||
keyboard_event_scan::@8:
|
||||
keyboard_event_scan::@3:
|
||||
(byte) keyboard_event_scan::row ← ++ (byte) keyboard_event_scan::row
|
||||
(boolean~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$15) goto keyboard_event_scan::@1
|
||||
(boolean~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::row != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$13) goto keyboard_event_scan::@1
|
||||
(byte) keyboard_modifiers ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte~) keyboard_event_scan::$16 ← call keyboard_event_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) keyboard_event_scan::$17 ← (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$18 ← ! (boolean~) keyboard_event_scan::$17
|
||||
if((boolean~) keyboard_event_scan::$18) goto keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$19 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_LSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$19
|
||||
(byte~) keyboard_event_scan::$14 ← call keyboard_event_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) keyboard_event_scan::$15 ← (byte~) keyboard_event_scan::$14 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$16 ← ! (boolean~) keyboard_event_scan::$15
|
||||
if((boolean~) keyboard_event_scan::$16) goto keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$17 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_LSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$17
|
||||
keyboard_event_scan::@9:
|
||||
(byte~) keyboard_event_scan::$20 ← call keyboard_event_pressed (byte) KEY_RSHIFT
|
||||
(boolean~) keyboard_event_scan::$21 ← (byte~) keyboard_event_scan::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$22 ← ! (boolean~) keyboard_event_scan::$21
|
||||
if((boolean~) keyboard_event_scan::$22) goto keyboard_event_scan::@10
|
||||
(byte~) keyboard_event_scan::$23 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_RSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$23
|
||||
(byte~) keyboard_event_scan::$18 ← call keyboard_event_pressed (byte) KEY_RSHIFT
|
||||
(boolean~) keyboard_event_scan::$19 ← (byte~) keyboard_event_scan::$18 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$20 ← ! (boolean~) keyboard_event_scan::$19
|
||||
if((boolean~) keyboard_event_scan::$20) goto keyboard_event_scan::@10
|
||||
(byte~) keyboard_event_scan::$21 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_RSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$21
|
||||
keyboard_event_scan::@10:
|
||||
(byte~) keyboard_event_scan::$24 ← call keyboard_event_pressed (byte) KEY_CTRL
|
||||
(boolean~) keyboard_event_scan::$25 ← (byte~) keyboard_event_scan::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$26 ← ! (boolean~) keyboard_event_scan::$25
|
||||
if((boolean~) keyboard_event_scan::$26) goto keyboard_event_scan::@11
|
||||
(byte~) keyboard_event_scan::$27 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_CTRL
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$27
|
||||
(byte~) keyboard_event_scan::$22 ← call keyboard_event_pressed (byte) KEY_CTRL
|
||||
(boolean~) keyboard_event_scan::$23 ← (byte~) keyboard_event_scan::$22 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$24 ← ! (boolean~) keyboard_event_scan::$23
|
||||
if((boolean~) keyboard_event_scan::$24) goto keyboard_event_scan::@11
|
||||
(byte~) keyboard_event_scan::$25 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_CTRL
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$25
|
||||
keyboard_event_scan::@11:
|
||||
(byte~) keyboard_event_scan::$28 ← call keyboard_event_pressed (byte) KEY_COMMODORE
|
||||
(boolean~) keyboard_event_scan::$29 ← (byte~) keyboard_event_scan::$28 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$30 ← ! (boolean~) keyboard_event_scan::$29
|
||||
if((boolean~) keyboard_event_scan::$30) goto keyboard_event_scan::@12
|
||||
(byte~) keyboard_event_scan::$31 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_COMMODORE
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$31
|
||||
(byte~) keyboard_event_scan::$26 ← call keyboard_event_pressed (byte) KEY_COMMODORE
|
||||
(boolean~) keyboard_event_scan::$27 ← (byte~) keyboard_event_scan::$26 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$28 ← ! (boolean~) keyboard_event_scan::$27
|
||||
if((boolean~) keyboard_event_scan::$28) goto keyboard_event_scan::@12
|
||||
(byte~) keyboard_event_scan::$29 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_COMMODORE
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$29
|
||||
keyboard_event_scan::@12:
|
||||
keyboard_event_scan::@return:
|
||||
return
|
||||
@ -660,14 +658,13 @@ keyboard_event_pressed::@return:
|
||||
endproc // keyboard_event_pressed()
|
||||
proc (byte()) keyboard_event_get()
|
||||
(boolean~) keyboard_event_get::$0 ← (byte) keyboard_events_size == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_get::$1 ← ! (boolean~) keyboard_event_get::$0
|
||||
if((boolean~) keyboard_event_get::$1) goto keyboard_event_get::@1
|
||||
(byte) keyboard_event_get::return ← (byte/word/signed word/dword/signed dword) 255
|
||||
if((boolean~) keyboard_event_get::$0) goto keyboard_event_get::@1
|
||||
(byte) keyboard_events_size ← -- (byte) keyboard_events_size
|
||||
(byte) keyboard_event_get::return ← *((byte[8]) keyboard_events + (byte) keyboard_events_size)
|
||||
goto keyboard_event_get::@return
|
||||
goto keyboard_event_get::@2
|
||||
keyboard_event_get::@1:
|
||||
(byte) keyboard_events_size ← -- (byte) keyboard_events_size
|
||||
(byte) keyboard_event_get::return ← *((byte[8]) keyboard_events + (byte) keyboard_events_size)
|
||||
(byte) keyboard_event_get::return ← (byte/word/signed word/dword/signed dword) 255
|
||||
goto keyboard_event_get::@return
|
||||
keyboard_event_get::@2:
|
||||
keyboard_event_get::@return:
|
||||
@ -880,7 +877,6 @@ SYMBOLS
|
||||
(byte[]) keyboard_char_keycodes
|
||||
(byte()) keyboard_event_get()
|
||||
(boolean~) keyboard_event_get::$0
|
||||
(boolean~) keyboard_event_get::$1
|
||||
(label) keyboard_event_get::@1
|
||||
(label) keyboard_event_get::@2
|
||||
(label) keyboard_event_get::@return
|
||||
@ -897,29 +893,27 @@ SYMBOLS
|
||||
(byte~) keyboard_event_scan::$0
|
||||
(boolean~) keyboard_event_scan::$1
|
||||
(boolean~) keyboard_event_scan::$10
|
||||
(boolean~) keyboard_event_scan::$11
|
||||
(byte/word/dword~) keyboard_event_scan::$12
|
||||
(byte/word/dword~) keyboard_event_scan::$11
|
||||
(boolean~) keyboard_event_scan::$12
|
||||
(boolean~) keyboard_event_scan::$13
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14
|
||||
(byte~) keyboard_event_scan::$14
|
||||
(boolean~) keyboard_event_scan::$15
|
||||
(byte~) keyboard_event_scan::$16
|
||||
(boolean~) keyboard_event_scan::$17
|
||||
(boolean~) keyboard_event_scan::$18
|
||||
(byte~) keyboard_event_scan::$19
|
||||
(boolean~) keyboard_event_scan::$2
|
||||
(byte~) keyboard_event_scan::$20
|
||||
(boolean~) keyboard_event_scan::$21
|
||||
(boolean~) keyboard_event_scan::$22
|
||||
(byte~) keyboard_event_scan::$23
|
||||
(byte~) keyboard_event_scan::$24
|
||||
(boolean~) keyboard_event_scan::$25
|
||||
(boolean~) keyboard_event_scan::$26
|
||||
(byte~) keyboard_event_scan::$27
|
||||
(byte~) keyboard_event_scan::$28
|
||||
(boolean~) keyboard_event_scan::$29
|
||||
(boolean~) keyboard_event_scan::$16
|
||||
(byte~) keyboard_event_scan::$17
|
||||
(byte~) keyboard_event_scan::$18
|
||||
(boolean~) keyboard_event_scan::$19
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2
|
||||
(boolean~) keyboard_event_scan::$20
|
||||
(byte~) keyboard_event_scan::$21
|
||||
(byte~) keyboard_event_scan::$22
|
||||
(boolean~) keyboard_event_scan::$23
|
||||
(boolean~) keyboard_event_scan::$24
|
||||
(byte~) keyboard_event_scan::$25
|
||||
(byte~) keyboard_event_scan::$26
|
||||
(boolean~) keyboard_event_scan::$27
|
||||
(boolean~) keyboard_event_scan::$28
|
||||
(byte~) keyboard_event_scan::$29
|
||||
(byte~) keyboard_event_scan::$3
|
||||
(boolean~) keyboard_event_scan::$30
|
||||
(byte~) keyboard_event_scan::$31
|
||||
(byte~) keyboard_event_scan::$4
|
||||
(boolean~) keyboard_event_scan::$5
|
||||
(boolean~) keyboard_event_scan::$6
|
||||
@ -1243,112 +1237,110 @@ keyboard_event_scan: scope:[keyboard_event_scan] from
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) keyboard_event_scan::row ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:keyboard_event_scan::@1
|
||||
keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan keyboard_event_scan::@8
|
||||
keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan keyboard_event_scan::@3
|
||||
(byte~) keyboard_event_scan::$0 ← call keyboard_matrix_read (byte) keyboard_event_scan::row
|
||||
(byte) keyboard_event_scan::row_scan ← (byte~) keyboard_event_scan::$0
|
||||
(boolean~) keyboard_event_scan::$1 ← (byte) keyboard_event_scan::row_scan != *((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row)
|
||||
(boolean~) keyboard_event_scan::$2 ← ! (boolean~) keyboard_event_scan::$1
|
||||
if((boolean~) keyboard_event_scan::$2) goto keyboard_event_scan::@2
|
||||
if((boolean~) keyboard_event_scan::$1) goto keyboard_event_scan::@2
|
||||
to:keyboard_event_scan::@13
|
||||
keyboard_event_scan::@2: scope:[keyboard_event_scan] from keyboard_event_scan::@1 keyboard_event_scan::@19
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 ← (byte) keyboard_event_scan::keycode + (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14
|
||||
to:keyboard_event_scan::@8
|
||||
keyboard_event_scan::@13: scope:[keyboard_event_scan] from keyboard_event_scan::@1
|
||||
keyboard_event_scan::@2: scope:[keyboard_event_scan] from keyboard_event_scan::@1 keyboard_event_scan::@14
|
||||
(byte) keyboard_event_scan::col ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:keyboard_event_scan::@4
|
||||
keyboard_event_scan::@13: scope:[keyboard_event_scan] from keyboard_event_scan::@1
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2 ← (byte) keyboard_event_scan::keycode + (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2
|
||||
to:keyboard_event_scan::@3
|
||||
keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan::@13 keyboard_event_scan::@4
|
||||
keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan::@13 keyboard_event_scan::@19
|
||||
(byte) keyboard_event_scan::row ← ++ (byte) keyboard_event_scan::row
|
||||
(boolean~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::row != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$13) goto keyboard_event_scan::@1
|
||||
to:keyboard_event_scan::@20
|
||||
keyboard_event_scan::@14: scope:[keyboard_event_scan] from
|
||||
to:keyboard_event_scan::@2
|
||||
keyboard_event_scan::@4: scope:[keyboard_event_scan] from keyboard_event_scan::@2 keyboard_event_scan::@5
|
||||
(byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan ^ *((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row)
|
||||
(byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((byte[8]) keyboard_matrix_col_bitmask + (byte) keyboard_event_scan::col)
|
||||
(boolean~) keyboard_event_scan::$5 ← (byte~) keyboard_event_scan::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$6 ← ! (boolean~) keyboard_event_scan::$5
|
||||
if((boolean~) keyboard_event_scan::$6) goto keyboard_event_scan::@4
|
||||
to:keyboard_event_scan::@14
|
||||
keyboard_event_scan::@4: scope:[keyboard_event_scan] from keyboard_event_scan::@3 keyboard_event_scan::@5
|
||||
if((boolean~) keyboard_event_scan::$6) goto keyboard_event_scan::@5
|
||||
to:keyboard_event_scan::@15
|
||||
keyboard_event_scan::@5: scope:[keyboard_event_scan] from keyboard_event_scan::@4 keyboard_event_scan::@6
|
||||
(byte) keyboard_event_scan::keycode ← ++ (byte) keyboard_event_scan::keycode
|
||||
(byte) keyboard_event_scan::col ← ++ (byte) keyboard_event_scan::col
|
||||
(boolean~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::col != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$13) goto keyboard_event_scan::@3
|
||||
to:keyboard_event_scan::@18
|
||||
keyboard_event_scan::@14: scope:[keyboard_event_scan] from keyboard_event_scan::@3
|
||||
(boolean~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::col != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$12) goto keyboard_event_scan::@4
|
||||
to:keyboard_event_scan::@19
|
||||
keyboard_event_scan::@15: scope:[keyboard_event_scan] from keyboard_event_scan::@4
|
||||
(boolean~) keyboard_event_scan::$7 ← (byte) keyboard_events_size != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(boolean~) keyboard_event_scan::$8 ← ! (boolean~) keyboard_event_scan::$7
|
||||
if((boolean~) keyboard_event_scan::$8) goto keyboard_event_scan::@5
|
||||
to:keyboard_event_scan::@15
|
||||
keyboard_event_scan::@5: scope:[keyboard_event_scan] from keyboard_event_scan::@14 keyboard_event_scan::@7
|
||||
to:keyboard_event_scan::@4
|
||||
keyboard_event_scan::@15: scope:[keyboard_event_scan] from keyboard_event_scan::@14
|
||||
if((boolean~) keyboard_event_scan::$8) goto keyboard_event_scan::@6
|
||||
to:keyboard_event_scan::@16
|
||||
keyboard_event_scan::@6: scope:[keyboard_event_scan] from keyboard_event_scan::@15 keyboard_event_scan::@8
|
||||
to:keyboard_event_scan::@5
|
||||
keyboard_event_scan::@16: scope:[keyboard_event_scan] from keyboard_event_scan::@15
|
||||
(byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_scan::row_scan & *((byte[8]) keyboard_matrix_col_bitmask + (byte) keyboard_event_scan::col)
|
||||
(byte) keyboard_event_scan::event_type ← (byte~) keyboard_event_scan::$9
|
||||
(boolean~) keyboard_event_scan::$10 ← (byte) keyboard_event_scan::event_type == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$11 ← ! (boolean~) keyboard_event_scan::$10
|
||||
if((boolean~) keyboard_event_scan::$11) goto keyboard_event_scan::@6
|
||||
to:keyboard_event_scan::@16
|
||||
keyboard_event_scan::@6: scope:[keyboard_event_scan] from keyboard_event_scan::@15 keyboard_event_scan::@17
|
||||
if((boolean~) keyboard_event_scan::$10) goto keyboard_event_scan::@7
|
||||
to:keyboard_event_scan::@17
|
||||
keyboard_event_scan::@7: scope:[keyboard_event_scan] from keyboard_event_scan::@16 keyboard_event_scan::@18
|
||||
(byte/word/dword~) keyboard_event_scan::$11 ← (byte) keyboard_event_scan::keycode | (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte/word/dword~) keyboard_event_scan::$11
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
to:keyboard_event_scan::@8
|
||||
keyboard_event_scan::@17: scope:[keyboard_event_scan] from keyboard_event_scan::@16
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte) keyboard_event_scan::keycode
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
to:keyboard_event_scan::@7
|
||||
keyboard_event_scan::@16: scope:[keyboard_event_scan] from keyboard_event_scan::@15
|
||||
(byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode | (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte/word/dword~) keyboard_event_scan::$12
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
to:keyboard_event_scan::@7
|
||||
keyboard_event_scan::@7: scope:[keyboard_event_scan] from keyboard_event_scan::@16 keyboard_event_scan::@6
|
||||
to:keyboard_event_scan::@5
|
||||
keyboard_event_scan::@17: scope:[keyboard_event_scan] from
|
||||
to:keyboard_event_scan::@6
|
||||
keyboard_event_scan::@18: scope:[keyboard_event_scan] from keyboard_event_scan::@4
|
||||
*((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row) ← (byte) keyboard_event_scan::row_scan
|
||||
to:keyboard_event_scan::@8
|
||||
keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan::@18 keyboard_event_scan::@2
|
||||
(byte) keyboard_event_scan::row ← ++ (byte) keyboard_event_scan::row
|
||||
(boolean~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$15) goto keyboard_event_scan::@1
|
||||
to:keyboard_event_scan::@20
|
||||
keyboard_event_scan::@19: scope:[keyboard_event_scan] from
|
||||
to:keyboard_event_scan::@2
|
||||
keyboard_event_scan::@20: scope:[keyboard_event_scan] from keyboard_event_scan::@8
|
||||
keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan::@17 keyboard_event_scan::@7
|
||||
to:keyboard_event_scan::@6
|
||||
keyboard_event_scan::@18: scope:[keyboard_event_scan] from
|
||||
to:keyboard_event_scan::@7
|
||||
keyboard_event_scan::@19: scope:[keyboard_event_scan] from keyboard_event_scan::@5
|
||||
*((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row) ← (byte) keyboard_event_scan::row_scan
|
||||
to:keyboard_event_scan::@3
|
||||
keyboard_event_scan::@20: scope:[keyboard_event_scan] from keyboard_event_scan::@3
|
||||
(byte) keyboard_modifiers ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte~) keyboard_event_scan::$16 ← call keyboard_event_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) keyboard_event_scan::$17 ← (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$18 ← ! (boolean~) keyboard_event_scan::$17
|
||||
if((boolean~) keyboard_event_scan::$18) goto keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$14 ← call keyboard_event_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) keyboard_event_scan::$15 ← (byte~) keyboard_event_scan::$14 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$16 ← ! (boolean~) keyboard_event_scan::$15
|
||||
if((boolean~) keyboard_event_scan::$16) goto keyboard_event_scan::@9
|
||||
to:keyboard_event_scan::@21
|
||||
keyboard_event_scan::@9: scope:[keyboard_event_scan] from keyboard_event_scan::@20 keyboard_event_scan::@21
|
||||
(byte~) keyboard_event_scan::$20 ← call keyboard_event_pressed (byte) KEY_RSHIFT
|
||||
(boolean~) keyboard_event_scan::$21 ← (byte~) keyboard_event_scan::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$22 ← ! (boolean~) keyboard_event_scan::$21
|
||||
if((boolean~) keyboard_event_scan::$22) goto keyboard_event_scan::@10
|
||||
(byte~) keyboard_event_scan::$18 ← call keyboard_event_pressed (byte) KEY_RSHIFT
|
||||
(boolean~) keyboard_event_scan::$19 ← (byte~) keyboard_event_scan::$18 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$20 ← ! (boolean~) keyboard_event_scan::$19
|
||||
if((boolean~) keyboard_event_scan::$20) goto keyboard_event_scan::@10
|
||||
to:keyboard_event_scan::@22
|
||||
keyboard_event_scan::@21: scope:[keyboard_event_scan] from keyboard_event_scan::@20
|
||||
(byte~) keyboard_event_scan::$19 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_LSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$19
|
||||
(byte~) keyboard_event_scan::$17 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_LSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$17
|
||||
to:keyboard_event_scan::@9
|
||||
keyboard_event_scan::@10: scope:[keyboard_event_scan] from keyboard_event_scan::@22 keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$24 ← call keyboard_event_pressed (byte) KEY_CTRL
|
||||
(boolean~) keyboard_event_scan::$25 ← (byte~) keyboard_event_scan::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$26 ← ! (boolean~) keyboard_event_scan::$25
|
||||
if((boolean~) keyboard_event_scan::$26) goto keyboard_event_scan::@11
|
||||
(byte~) keyboard_event_scan::$22 ← call keyboard_event_pressed (byte) KEY_CTRL
|
||||
(boolean~) keyboard_event_scan::$23 ← (byte~) keyboard_event_scan::$22 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$24 ← ! (boolean~) keyboard_event_scan::$23
|
||||
if((boolean~) keyboard_event_scan::$24) goto keyboard_event_scan::@11
|
||||
to:keyboard_event_scan::@23
|
||||
keyboard_event_scan::@22: scope:[keyboard_event_scan] from keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$23 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_RSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$23
|
||||
(byte~) keyboard_event_scan::$21 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_RSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$21
|
||||
to:keyboard_event_scan::@10
|
||||
keyboard_event_scan::@11: scope:[keyboard_event_scan] from keyboard_event_scan::@10 keyboard_event_scan::@23
|
||||
(byte~) keyboard_event_scan::$28 ← call keyboard_event_pressed (byte) KEY_COMMODORE
|
||||
(boolean~) keyboard_event_scan::$29 ← (byte~) keyboard_event_scan::$28 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$30 ← ! (boolean~) keyboard_event_scan::$29
|
||||
if((boolean~) keyboard_event_scan::$30) goto keyboard_event_scan::@12
|
||||
(byte~) keyboard_event_scan::$26 ← call keyboard_event_pressed (byte) KEY_COMMODORE
|
||||
(boolean~) keyboard_event_scan::$27 ← (byte~) keyboard_event_scan::$26 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$28 ← ! (boolean~) keyboard_event_scan::$27
|
||||
if((boolean~) keyboard_event_scan::$28) goto keyboard_event_scan::@12
|
||||
to:keyboard_event_scan::@24
|
||||
keyboard_event_scan::@23: scope:[keyboard_event_scan] from keyboard_event_scan::@10
|
||||
(byte~) keyboard_event_scan::$27 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_CTRL
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$27
|
||||
(byte~) keyboard_event_scan::$25 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_CTRL
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$25
|
||||
to:keyboard_event_scan::@11
|
||||
keyboard_event_scan::@12: scope:[keyboard_event_scan] from keyboard_event_scan::@11 keyboard_event_scan::@24
|
||||
to:keyboard_event_scan::@return
|
||||
keyboard_event_scan::@24: scope:[keyboard_event_scan] from keyboard_event_scan::@11
|
||||
(byte~) keyboard_event_scan::$31 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_COMMODORE
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$31
|
||||
(byte~) keyboard_event_scan::$29 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_COMMODORE
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$29
|
||||
to:keyboard_event_scan::@12
|
||||
keyboard_event_scan::@return: scope:[keyboard_event_scan] from keyboard_event_scan::@12
|
||||
return
|
||||
@ -1372,15 +1364,14 @@ keyboard_event_pressed::@1: scope:[keyboard_event_pressed] from
|
||||
to:@7
|
||||
keyboard_event_get: scope:[keyboard_event_get] from
|
||||
(boolean~) keyboard_event_get::$0 ← (byte) keyboard_events_size == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_get::$1 ← ! (boolean~) keyboard_event_get::$0
|
||||
if((boolean~) keyboard_event_get::$1) goto keyboard_event_get::@1
|
||||
if((boolean~) keyboard_event_get::$0) goto keyboard_event_get::@1
|
||||
to:keyboard_event_get::@3
|
||||
keyboard_event_get::@1: scope:[keyboard_event_get] from keyboard_event_get keyboard_event_get::@5
|
||||
(byte) keyboard_events_size ← -- (byte) keyboard_events_size
|
||||
(byte) keyboard_event_get::return ← *((byte[8]) keyboard_events + (byte) keyboard_events_size)
|
||||
(byte) keyboard_event_get::return ← (byte/word/signed word/dword/signed dword) 255
|
||||
to:keyboard_event_get::@return
|
||||
keyboard_event_get::@3: scope:[keyboard_event_get] from keyboard_event_get
|
||||
(byte) keyboard_event_get::return ← (byte/word/signed word/dword/signed dword) 255
|
||||
(byte) keyboard_events_size ← -- (byte) keyboard_events_size
|
||||
(byte) keyboard_event_get::return ← *((byte[8]) keyboard_events + (byte) keyboard_events_size)
|
||||
to:keyboard_event_get::@return
|
||||
keyboard_event_get::@return: scope:[keyboard_event_get] from keyboard_event_get::@1 keyboard_event_get::@2 keyboard_event_get::@3
|
||||
(byte) keyboard_event_get::return ← (byte) keyboard_event_get::return
|
||||
|
@ -442,49 +442,46 @@ proc (signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) div8s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$0 ← (signed byte) div8s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$1 ← ! (boolean~) div8s::$0
|
||||
if((boolean~) div8s::$1) goto div8s::@1
|
||||
if((boolean~) div8s::$0) goto div8s::@1
|
||||
(byte~) div8s::$1 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$1
|
||||
goto div8s::@2
|
||||
div8s::@1:
|
||||
(signed byte~) div8s::$2 ← - (signed byte) div8s::dividend
|
||||
(byte~) div8s::$3 ← ((byte)) (signed byte~) div8s::$2
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$3
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
goto div8s::@2
|
||||
div8s::@1:
|
||||
(byte~) div8s::$4 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$4
|
||||
div8s::@2:
|
||||
(byte) div8s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$5 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$6 ← ! (boolean~) div8s::$5
|
||||
if((boolean~) div8s::$6) goto div8s::@3
|
||||
(signed byte~) div8s::$7 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$8 ← ((byte)) (signed byte~) div8s::$7
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$9
|
||||
(boolean~) div8s::$4 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$4) goto div8s::@3
|
||||
(byte~) div8s::$5 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$5
|
||||
goto div8s::@4
|
||||
div8s::@3:
|
||||
(byte~) div8s::$10 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$10
|
||||
(signed byte~) div8s::$6 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$7 ← ((byte)) (signed byte~) div8s::$6
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$8
|
||||
div8s::@4:
|
||||
(byte~) div8s::$11 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$11
|
||||
(boolean~) div8s::$12 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$13 ← ! (boolean~) div8s::$12
|
||||
if((boolean~) div8s::$13) goto div8s::@5
|
||||
(signed byte~) div8s::$14 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$15
|
||||
(byte~) div8s::$9 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$9
|
||||
(boolean~) div8s::$10 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$10) goto div8s::@5
|
||||
(signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$12 ← - (signed byte~) div8s::$11
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$14 ← - (signed byte~) div8s::$13
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$14
|
||||
goto div8s::@return
|
||||
goto div8s::@6
|
||||
div8s::@5:
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$17 ← - (signed byte~) div8s::$16
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$19 ← - (signed byte~) div8s::$18
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$16
|
||||
goto div8s::@return
|
||||
div8s::@6:
|
||||
div8s::@return:
|
||||
@ -496,49 +493,46 @@ proc (signed word()) div16s((signed word) div16s::dividend , (signed word) div16
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(word) div16s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$0 ← (signed word) div16s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$1 ← ! (boolean~) div16s::$0
|
||||
if((boolean~) div16s::$1) goto div16s::@1
|
||||
if((boolean~) div16s::$0) goto div16s::@1
|
||||
(word~) div16s::$1 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$1
|
||||
goto div16s::@2
|
||||
div16s::@1:
|
||||
(signed word~) div16s::$2 ← - (signed word) div16s::dividend
|
||||
(word~) div16s::$3 ← ((word)) (signed word~) div16s::$2
|
||||
(word) div16s::dividendu ← (word~) div16s::$3
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
goto div16s::@2
|
||||
div16s::@1:
|
||||
(word~) div16s::$4 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$4
|
||||
div16s::@2:
|
||||
(word) div16s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$5 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$6 ← ! (boolean~) div16s::$5
|
||||
if((boolean~) div16s::$6) goto div16s::@3
|
||||
(signed word~) div16s::$7 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$8 ← ((word)) (signed word~) div16s::$7
|
||||
(word) div16s::divisoru ← (word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$9
|
||||
(boolean~) div16s::$4 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$4) goto div16s::@3
|
||||
(word~) div16s::$5 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$5
|
||||
goto div16s::@4
|
||||
div16s::@3:
|
||||
(word~) div16s::$10 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$10
|
||||
(signed word~) div16s::$6 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$7 ← ((word)) (signed word~) div16s::$6
|
||||
(word) div16s::divisoru ← (word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$8
|
||||
div16s::@4:
|
||||
(word~) div16s::$11 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$11
|
||||
(boolean~) div16s::$12 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$13 ← ! (boolean~) div16s::$12
|
||||
if((boolean~) div16s::$13) goto div16s::@5
|
||||
(signed word~) div16s::$14 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$14
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$15
|
||||
(word~) div16s::$9 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$9
|
||||
(boolean~) div16s::$10 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$10) goto div16s::@5
|
||||
(signed word~) div16s::$11 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$12 ← - (signed word~) div16s::$11
|
||||
(signed word) rem16s ← (signed word~) div16s::$12
|
||||
(signed word~) div16s::$13 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$14 ← - (signed word~) div16s::$13
|
||||
(signed word) div16s::return ← (signed word~) div16s::$14
|
||||
goto div16s::@return
|
||||
goto div16s::@6
|
||||
div16s::@5:
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$17 ← - (signed word~) div16s::$16
|
||||
(signed word) rem16s ← (signed word~) div16s::$17
|
||||
(signed word~) div16s::$18 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$19 ← - (signed word~) div16s::$18
|
||||
(signed word) div16s::return ← (signed word~) div16s::$19
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$16
|
||||
goto div16s::@return
|
||||
div16s::@6:
|
||||
div16s::@return:
|
||||
@ -775,25 +769,22 @@ endproc // lin16u_gen()
|
||||
SYMBOLS
|
||||
(signed word()) div16s((signed word) div16s::dividend , (signed word) div16s::divisor)
|
||||
(boolean~) div16s::$0
|
||||
(boolean~) div16s::$1
|
||||
(word~) div16s::$10
|
||||
(word~) div16s::$11
|
||||
(boolean~) div16s::$12
|
||||
(boolean~) div16s::$13
|
||||
(word~) div16s::$1
|
||||
(boolean~) div16s::$10
|
||||
(signed word~) div16s::$11
|
||||
(signed word~) div16s::$12
|
||||
(signed word~) div16s::$13
|
||||
(signed word~) div16s::$14
|
||||
(signed word~) div16s::$15
|
||||
(signed word~) div16s::$16
|
||||
(signed word~) div16s::$17
|
||||
(signed word~) div16s::$18
|
||||
(signed word~) div16s::$19
|
||||
(signed word~) div16s::$2
|
||||
(word~) div16s::$3
|
||||
(word~) div16s::$4
|
||||
(boolean~) div16s::$5
|
||||
(boolean~) div16s::$6
|
||||
(signed word~) div16s::$7
|
||||
(word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9
|
||||
(boolean~) div16s::$4
|
||||
(word~) div16s::$5
|
||||
(signed word~) div16s::$6
|
||||
(word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8
|
||||
(word~) div16s::$9
|
||||
(label) div16s::@1
|
||||
(label) div16s::@2
|
||||
(label) div16s::@3
|
||||
@ -828,25 +819,22 @@ SYMBOLS
|
||||
(dword) div32u16u::return
|
||||
(signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::divisor)
|
||||
(boolean~) div8s::$0
|
||||
(boolean~) div8s::$1
|
||||
(byte~) div8s::$10
|
||||
(byte~) div8s::$11
|
||||
(boolean~) div8s::$12
|
||||
(boolean~) div8s::$13
|
||||
(byte~) div8s::$1
|
||||
(boolean~) div8s::$10
|
||||
(signed byte~) div8s::$11
|
||||
(signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13
|
||||
(signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16
|
||||
(signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18
|
||||
(signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$2
|
||||
(byte~) div8s::$3
|
||||
(byte~) div8s::$4
|
||||
(boolean~) div8s::$5
|
||||
(boolean~) div8s::$6
|
||||
(signed byte~) div8s::$7
|
||||
(byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9
|
||||
(boolean~) div8s::$4
|
||||
(byte~) div8s::$5
|
||||
(signed byte~) div8s::$6
|
||||
(byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8
|
||||
(byte~) div8s::$9
|
||||
(label) div8s::@1
|
||||
(label) div8s::@2
|
||||
(label) div8s::@3
|
||||
@ -1229,60 +1217,57 @@ div8s: scope:[div8s] from
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) div8s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$0 ← (signed byte) div8s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$1 ← ! (boolean~) div8s::$0
|
||||
if((boolean~) div8s::$1) goto div8s::@1
|
||||
if((boolean~) div8s::$0) goto div8s::@1
|
||||
to:div8s::@7
|
||||
div8s::@1: scope:[div8s] from div8s div8s::@8
|
||||
(byte~) div8s::$4 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$4
|
||||
to:div8s::@2
|
||||
div8s::@7: scope:[div8s] from div8s
|
||||
(signed byte~) div8s::$2 ← - (signed byte) div8s::dividend
|
||||
(byte~) div8s::$3 ← ((byte)) (signed byte~) div8s::$2
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$3
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:div8s::@2
|
||||
div8s::@7: scope:[div8s] from div8s
|
||||
(byte~) div8s::$1 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$1
|
||||
to:div8s::@2
|
||||
div8s::@2: scope:[div8s] from div8s::@1 div8s::@7
|
||||
(byte) div8s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$5 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$6 ← ! (boolean~) div8s::$5
|
||||
if((boolean~) div8s::$6) goto div8s::@3
|
||||
(boolean~) div8s::$4 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$4) goto div8s::@3
|
||||
to:div8s::@9
|
||||
div8s::@8: scope:[div8s] from
|
||||
to:div8s::@1
|
||||
div8s::@3: scope:[div8s] from div8s::@10 div8s::@2
|
||||
(byte~) div8s::$10 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$10
|
||||
(signed byte~) div8s::$6 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$7 ← ((byte)) (signed byte~) div8s::$6
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$8
|
||||
to:div8s::@4
|
||||
div8s::@9: scope:[div8s] from div8s::@2
|
||||
(signed byte~) div8s::$7 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$8 ← ((byte)) (signed byte~) div8s::$7
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$9
|
||||
(byte~) div8s::$5 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$5
|
||||
to:div8s::@4
|
||||
div8s::@4: scope:[div8s] from div8s::@3 div8s::@9
|
||||
(byte~) div8s::$11 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$11
|
||||
(boolean~) div8s::$12 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$13 ← ! (boolean~) div8s::$12
|
||||
if((boolean~) div8s::$13) goto div8s::@5
|
||||
(byte~) div8s::$9 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$9
|
||||
(boolean~) div8s::$10 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$10) goto div8s::@5
|
||||
to:div8s::@11
|
||||
div8s::@10: scope:[div8s] from
|
||||
to:div8s::@3
|
||||
div8s::@5: scope:[div8s] from div8s::@13 div8s::@4
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$17 ← - (signed byte~) div8s::$16
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$19 ← - (signed byte~) div8s::$18
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$16
|
||||
to:div8s::@return
|
||||
div8s::@11: scope:[div8s] from div8s::@4
|
||||
(signed byte~) div8s::$14 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$12 ← - (signed byte~) div8s::$11
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$14 ← - (signed byte~) div8s::$13
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$14
|
||||
to:div8s::@return
|
||||
div8s::@return: scope:[div8s] from div8s::@11 div8s::@5 div8s::@6
|
||||
(signed byte) div8s::return ← (signed byte) div8s::return
|
||||
@ -1303,60 +1288,57 @@ div16s: scope:[div16s] from
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(word) div16s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$0 ← (signed word) div16s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$1 ← ! (boolean~) div16s::$0
|
||||
if((boolean~) div16s::$1) goto div16s::@1
|
||||
if((boolean~) div16s::$0) goto div16s::@1
|
||||
to:div16s::@7
|
||||
div16s::@1: scope:[div16s] from div16s div16s::@8
|
||||
(word~) div16s::$4 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$4
|
||||
to:div16s::@2
|
||||
div16s::@7: scope:[div16s] from div16s
|
||||
(signed word~) div16s::$2 ← - (signed word) div16s::dividend
|
||||
(word~) div16s::$3 ← ((word)) (signed word~) div16s::$2
|
||||
(word) div16s::dividendu ← (word~) div16s::$3
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:div16s::@2
|
||||
div16s::@7: scope:[div16s] from div16s
|
||||
(word~) div16s::$1 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$1
|
||||
to:div16s::@2
|
||||
div16s::@2: scope:[div16s] from div16s::@1 div16s::@7
|
||||
(word) div16s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$5 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$6 ← ! (boolean~) div16s::$5
|
||||
if((boolean~) div16s::$6) goto div16s::@3
|
||||
(boolean~) div16s::$4 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$4) goto div16s::@3
|
||||
to:div16s::@9
|
||||
div16s::@8: scope:[div16s] from
|
||||
to:div16s::@1
|
||||
div16s::@3: scope:[div16s] from div16s::@10 div16s::@2
|
||||
(word~) div16s::$10 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$10
|
||||
(signed word~) div16s::$6 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$7 ← ((word)) (signed word~) div16s::$6
|
||||
(word) div16s::divisoru ← (word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$8
|
||||
to:div16s::@4
|
||||
div16s::@9: scope:[div16s] from div16s::@2
|
||||
(signed word~) div16s::$7 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$8 ← ((word)) (signed word~) div16s::$7
|
||||
(word) div16s::divisoru ← (word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$9
|
||||
(word~) div16s::$5 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$5
|
||||
to:div16s::@4
|
||||
div16s::@4: scope:[div16s] from div16s::@3 div16s::@9
|
||||
(word~) div16s::$11 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$11
|
||||
(boolean~) div16s::$12 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$13 ← ! (boolean~) div16s::$12
|
||||
if((boolean~) div16s::$13) goto div16s::@5
|
||||
(word~) div16s::$9 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$9
|
||||
(boolean~) div16s::$10 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$10) goto div16s::@5
|
||||
to:div16s::@11
|
||||
div16s::@10: scope:[div16s] from
|
||||
to:div16s::@3
|
||||
div16s::@5: scope:[div16s] from div16s::@13 div16s::@4
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$17 ← - (signed word~) div16s::$16
|
||||
(signed word) rem16s ← (signed word~) div16s::$17
|
||||
(signed word~) div16s::$18 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$19 ← - (signed word~) div16s::$18
|
||||
(signed word) div16s::return ← (signed word~) div16s::$19
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$16
|
||||
to:div16s::@return
|
||||
div16s::@11: scope:[div16s] from div16s::@4
|
||||
(signed word~) div16s::$14 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$14
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$11 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$12 ← - (signed word~) div16s::$11
|
||||
(signed word) rem16s ← (signed word~) div16s::$12
|
||||
(signed word~) div16s::$13 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$14 ← - (signed word~) div16s::$13
|
||||
(signed word) div16s::return ← (signed word~) div16s::$14
|
||||
to:div16s::@return
|
||||
div16s::@return: scope:[div16s] from div16s::@11 div16s::@5 div16s::@6
|
||||
(signed word) div16s::return ← (signed word) div16s::return
|
||||
|
@ -13,12 +13,12 @@ mode_ctrl: {
|
||||
b2:
|
||||
lda BORDERCOL
|
||||
cmp #$ff
|
||||
bne b4
|
||||
lda #2
|
||||
beq b4
|
||||
lda #3
|
||||
sta BORDERCOL
|
||||
jmp b2
|
||||
b4:
|
||||
lda #3
|
||||
lda #2
|
||||
sta BORDERCOL
|
||||
jmp b2
|
||||
}
|
||||
|
@ -23,13 +23,13 @@ mode_ctrl: scope:[mode_ctrl] from main::@1
|
||||
to:mode_ctrl::@2
|
||||
mode_ctrl::@2: scope:[mode_ctrl] from mode_ctrl mode_ctrl::@4 mode_ctrl::@8
|
||||
[10] (byte) mode_ctrl::before#0 ← *((const byte*) BORDERCOL#0) [ mode_ctrl::before#0 ] ( main:2::mode_ctrl:7 [ mode_ctrl::before#0 ] )
|
||||
[11] if((byte) mode_ctrl::before#0!=(byte/word/signed word/dword/signed dword) 255) goto mode_ctrl::@4 [ ] ( main:2::mode_ctrl:7 [ ] )
|
||||
[11] if((byte) mode_ctrl::before#0==(byte/word/signed word/dword/signed dword) 255) goto mode_ctrl::@4 [ ] ( main:2::mode_ctrl:7 [ ] )
|
||||
to:mode_ctrl::@8
|
||||
mode_ctrl::@8: scope:[mode_ctrl] from mode_ctrl::@2
|
||||
[12] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::mode_ctrl:7 [ ] )
|
||||
[12] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::mode_ctrl:7 [ ] )
|
||||
to:mode_ctrl::@2
|
||||
mode_ctrl::@4: scope:[mode_ctrl] from mode_ctrl::@2
|
||||
[13] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::mode_ctrl:7 [ ] )
|
||||
[13] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::mode_ctrl:7 [ ] )
|
||||
to:mode_ctrl::@2
|
||||
print_cls: scope:[print_cls] from main
|
||||
[14] phi() [ ] ( main:2::print_cls:5 [ ] )
|
||||
|
@ -54,12 +54,11 @@ mode_ctrl::@1:
|
||||
mode_ctrl::@2:
|
||||
(byte) mode_ctrl::before ← *((byte*) BORDERCOL)
|
||||
(boolean~) mode_ctrl::$0 ← (byte) mode_ctrl::before == (byte/word/signed word/dword/signed dword) 255
|
||||
(boolean~) mode_ctrl::$1 ← ! (boolean~) mode_ctrl::$0
|
||||
if((boolean~) mode_ctrl::$1) goto mode_ctrl::@4
|
||||
*((byte*) BORDERCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
if((boolean~) mode_ctrl::$0) goto mode_ctrl::@4
|
||||
*((byte*) BORDERCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 3
|
||||
goto mode_ctrl::@5
|
||||
mode_ctrl::@4:
|
||||
*((byte*) BORDERCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 3
|
||||
*((byte*) BORDERCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
mode_ctrl::@5:
|
||||
goto mode_ctrl::@1
|
||||
mode_ctrl::@3:
|
||||
@ -77,7 +76,6 @@ SYMBOLS
|
||||
(label) main::@return
|
||||
(void()) mode_ctrl()
|
||||
(boolean~) mode_ctrl::$0
|
||||
(boolean~) mode_ctrl::$1
|
||||
(label) mode_ctrl::@1
|
||||
(label) mode_ctrl::@2
|
||||
(label) mode_ctrl::@3
|
||||
@ -133,8 +131,7 @@ mode_ctrl::@1: scope:[mode_ctrl] from mode_ctrl mode_ctrl::@5
|
||||
mode_ctrl::@2: scope:[mode_ctrl] from mode_ctrl::@1 mode_ctrl::@7
|
||||
(byte) mode_ctrl::before ← *((byte*) BORDERCOL)
|
||||
(boolean~) mode_ctrl::$0 ← (byte) mode_ctrl::before == (byte/word/signed word/dword/signed dword) 255
|
||||
(boolean~) mode_ctrl::$1 ← ! (boolean~) mode_ctrl::$0
|
||||
if((boolean~) mode_ctrl::$1) goto mode_ctrl::@4
|
||||
if((boolean~) mode_ctrl::$0) goto mode_ctrl::@4
|
||||
to:mode_ctrl::@8
|
||||
mode_ctrl::@6: scope:[mode_ctrl] from mode_ctrl::@1
|
||||
to:mode_ctrl::@3
|
||||
@ -143,10 +140,10 @@ mode_ctrl::@3: scope:[mode_ctrl] from mode_ctrl::@10 mode_ctrl::@6
|
||||
mode_ctrl::@7: scope:[mode_ctrl] from
|
||||
to:mode_ctrl::@2
|
||||
mode_ctrl::@4: scope:[mode_ctrl] from mode_ctrl::@2 mode_ctrl::@9
|
||||
*((byte*) BORDERCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 3
|
||||
*((byte*) BORDERCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
to:mode_ctrl::@5
|
||||
mode_ctrl::@8: scope:[mode_ctrl] from mode_ctrl::@2
|
||||
*((byte*) BORDERCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
*((byte*) BORDERCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 3
|
||||
to:mode_ctrl::@5
|
||||
mode_ctrl::@5: scope:[mode_ctrl] from mode_ctrl::@4 mode_ctrl::@8
|
||||
to:mode_ctrl::@1
|
||||
@ -215,14 +212,13 @@ mode_ctrl::@1: scope:[mode_ctrl] from mode_ctrl mode_ctrl::@4 mode_ctrl::@8
|
||||
mode_ctrl::@2: scope:[mode_ctrl] from mode_ctrl::@1
|
||||
(byte) mode_ctrl::before#0 ← *((byte*) BORDERCOL#0)
|
||||
(boolean~) mode_ctrl::$0 ← (byte) mode_ctrl::before#0 == (byte/word/signed word/dword/signed dword) 255
|
||||
(boolean~) mode_ctrl::$1 ← ! (boolean~) mode_ctrl::$0
|
||||
if((boolean~) mode_ctrl::$1) goto mode_ctrl::@4
|
||||
if((boolean~) mode_ctrl::$0) goto mode_ctrl::@4
|
||||
to:mode_ctrl::@8
|
||||
mode_ctrl::@4: scope:[mode_ctrl] from mode_ctrl::@2
|
||||
*((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3
|
||||
*((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
to:mode_ctrl::@1
|
||||
mode_ctrl::@8: scope:[mode_ctrl] from mode_ctrl::@2
|
||||
*((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
*((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3
|
||||
to:mode_ctrl::@1
|
||||
mode_ctrl::@return: scope:[mode_ctrl] from mode_ctrl::@1
|
||||
return
|
||||
@ -249,7 +245,6 @@ SYMBOL TABLE SSA
|
||||
(label) main::@return
|
||||
(void()) mode_ctrl()
|
||||
(boolean~) mode_ctrl::$0
|
||||
(boolean~) mode_ctrl::$1
|
||||
(label) mode_ctrl::@1
|
||||
(label) mode_ctrl::@2
|
||||
(label) mode_ctrl::@4
|
||||
@ -271,11 +266,9 @@ OPTIMIZING CONTROL FLOW GRAPH
|
||||
Culled Empty Block (label) main::@2
|
||||
Culled Empty Block (label) @4
|
||||
Succesful SSA optimization Pass2CullEmptyBlocks
|
||||
Inversing boolean not (boolean~) mode_ctrl::$1 ← (byte) mode_ctrl::before#0 != (byte/word/signed word/dword/signed dword) 255 from (boolean~) mode_ctrl::$0 ← (byte) mode_ctrl::before#0 == (byte/word/signed word/dword/signed dword) 255
|
||||
Succesful SSA optimization Pass2UnaryNotSimplification
|
||||
Not aliassing across scopes: print_cls::sc#0 SCREEN#0
|
||||
Simple Condition (boolean~) print_cls::$1 if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1
|
||||
Simple Condition (boolean~) mode_ctrl::$1 if((byte) mode_ctrl::before#0!=(byte/word/signed word/dword/signed dword) 255) goto mode_ctrl::@4
|
||||
Simple Condition (boolean~) mode_ctrl::$0 if((byte) mode_ctrl::before#0==(byte/word/signed word/dword/signed dword) 255) goto mode_ctrl::@4
|
||||
Succesful SSA optimization Pass2ConditionalJumpSimplification
|
||||
Constant (const byte*) BORDERCOL#0 = ((byte*))53280
|
||||
Constant (const byte*) SCREEN#0 = ((byte*))1024
|
||||
@ -352,13 +345,13 @@ mode_ctrl: scope:[mode_ctrl] from main::@1
|
||||
to:mode_ctrl::@2
|
||||
mode_ctrl::@2: scope:[mode_ctrl] from mode_ctrl mode_ctrl::@4 mode_ctrl::@8
|
||||
[10] (byte) mode_ctrl::before#0 ← *((const byte*) BORDERCOL#0) [ mode_ctrl::before#0 ] ( main:2::mode_ctrl:7 [ mode_ctrl::before#0 ] )
|
||||
[11] if((byte) mode_ctrl::before#0!=(byte/word/signed word/dword/signed dword) 255) goto mode_ctrl::@4 [ ] ( main:2::mode_ctrl:7 [ ] )
|
||||
[11] if((byte) mode_ctrl::before#0==(byte/word/signed word/dword/signed dword) 255) goto mode_ctrl::@4 [ ] ( main:2::mode_ctrl:7 [ ] )
|
||||
to:mode_ctrl::@8
|
||||
mode_ctrl::@8: scope:[mode_ctrl] from mode_ctrl::@2
|
||||
[12] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::mode_ctrl:7 [ ] )
|
||||
[12] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::mode_ctrl:7 [ ] )
|
||||
to:mode_ctrl::@2
|
||||
mode_ctrl::@4: scope:[mode_ctrl] from mode_ctrl::@2
|
||||
[13] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::mode_ctrl:7 [ ] )
|
||||
[13] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::mode_ctrl:7 [ ] )
|
||||
to:mode_ctrl::@2
|
||||
print_cls: scope:[print_cls] from main
|
||||
[14] phi() [ ] ( main:2::print_cls:5 [ ] )
|
||||
@ -485,21 +478,21 @@ mode_ctrl: {
|
||||
//SEG20 [10] (byte) mode_ctrl::before#0 ← *((const byte*) BORDERCOL#0) [ mode_ctrl::before#0 ] ( main:2::mode_ctrl:7 [ mode_ctrl::before#0 ] ) -- vbuz1=_deref_pbuc1
|
||||
lda BORDERCOL
|
||||
sta before
|
||||
//SEG21 [11] if((byte) mode_ctrl::before#0!=(byte/word/signed word/dword/signed dword) 255) goto mode_ctrl::@4 [ ] ( main:2::mode_ctrl:7 [ ] ) -- vbuz1_neq_vbuc1_then_la1
|
||||
//SEG21 [11] if((byte) mode_ctrl::before#0==(byte/word/signed word/dword/signed dword) 255) goto mode_ctrl::@4 [ ] ( main:2::mode_ctrl:7 [ ] ) -- vbuz1_eq_vbuc1_then_la1
|
||||
lda before
|
||||
cmp #$ff
|
||||
bne b4
|
||||
beq b4
|
||||
jmp b8
|
||||
//SEG22 mode_ctrl::@8
|
||||
b8:
|
||||
//SEG23 [12] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::mode_ctrl:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #2
|
||||
//SEG23 [12] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::mode_ctrl:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #3
|
||||
sta BORDERCOL
|
||||
jmp b2
|
||||
//SEG24 mode_ctrl::@4
|
||||
b4:
|
||||
//SEG25 [13] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::mode_ctrl:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #3
|
||||
//SEG25 [13] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::mode_ctrl:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #2
|
||||
sta BORDERCOL
|
||||
jmp b2
|
||||
}
|
||||
@ -544,8 +537,8 @@ print_cls: {
|
||||
}
|
||||
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Statement [12] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::mode_ctrl:7 [ ] ) always clobbers reg byte a
|
||||
Statement [13] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::mode_ctrl:7 [ ] ) always clobbers reg byte a
|
||||
Statement [12] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::mode_ctrl:7 [ ] ) always clobbers reg byte a
|
||||
Statement [13] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::mode_ctrl:7 [ ] ) always clobbers reg byte a
|
||||
Statement [16] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y
|
||||
Statement [18] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) always clobbers reg byte a
|
||||
Potential registers zp ZP_WORD:2 [ print_cls::sc#2 print_cls::sc#1 ] : zp ZP_WORD:2 ,
|
||||
@ -614,20 +607,20 @@ mode_ctrl: {
|
||||
b2:
|
||||
//SEG20 [10] (byte) mode_ctrl::before#0 ← *((const byte*) BORDERCOL#0) [ mode_ctrl::before#0 ] ( main:2::mode_ctrl:7 [ mode_ctrl::before#0 ] ) -- vbuaa=_deref_pbuc1
|
||||
lda BORDERCOL
|
||||
//SEG21 [11] if((byte) mode_ctrl::before#0!=(byte/word/signed word/dword/signed dword) 255) goto mode_ctrl::@4 [ ] ( main:2::mode_ctrl:7 [ ] ) -- vbuaa_neq_vbuc1_then_la1
|
||||
//SEG21 [11] if((byte) mode_ctrl::before#0==(byte/word/signed word/dword/signed dword) 255) goto mode_ctrl::@4 [ ] ( main:2::mode_ctrl:7 [ ] ) -- vbuaa_eq_vbuc1_then_la1
|
||||
cmp #$ff
|
||||
bne b4
|
||||
beq b4
|
||||
jmp b8
|
||||
//SEG22 mode_ctrl::@8
|
||||
b8:
|
||||
//SEG23 [12] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::mode_ctrl:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #2
|
||||
//SEG23 [12] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::mode_ctrl:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #3
|
||||
sta BORDERCOL
|
||||
jmp b2
|
||||
//SEG24 mode_ctrl::@4
|
||||
b4:
|
||||
//SEG25 [13] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::mode_ctrl:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #3
|
||||
//SEG25 [13] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::mode_ctrl:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #2
|
||||
sta BORDERCOL
|
||||
jmp b2
|
||||
}
|
||||
@ -769,18 +762,18 @@ mode_ctrl: {
|
||||
b2:
|
||||
//SEG20 [10] (byte) mode_ctrl::before#0 ← *((const byte*) BORDERCOL#0) [ mode_ctrl::before#0 ] ( main:2::mode_ctrl:7 [ mode_ctrl::before#0 ] ) -- vbuaa=_deref_pbuc1
|
||||
lda BORDERCOL
|
||||
//SEG21 [11] if((byte) mode_ctrl::before#0!=(byte/word/signed word/dword/signed dword) 255) goto mode_ctrl::@4 [ ] ( main:2::mode_ctrl:7 [ ] ) -- vbuaa_neq_vbuc1_then_la1
|
||||
//SEG21 [11] if((byte) mode_ctrl::before#0==(byte/word/signed word/dword/signed dword) 255) goto mode_ctrl::@4 [ ] ( main:2::mode_ctrl:7 [ ] ) -- vbuaa_eq_vbuc1_then_la1
|
||||
cmp #$ff
|
||||
bne b4
|
||||
beq b4
|
||||
//SEG22 mode_ctrl::@8
|
||||
//SEG23 [12] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::mode_ctrl:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #2
|
||||
//SEG23 [12] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::mode_ctrl:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #3
|
||||
sta BORDERCOL
|
||||
jmp b2
|
||||
//SEG24 mode_ctrl::@4
|
||||
b4:
|
||||
//SEG25 [13] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::mode_ctrl:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #3
|
||||
//SEG25 [13] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::mode_ctrl:7 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #2
|
||||
sta BORDERCOL
|
||||
jmp b2
|
||||
}
|
||||
|
@ -3,20 +3,22 @@
|
||||
.pc = $80d "Program"
|
||||
jsr main
|
||||
main: {
|
||||
ldy #0
|
||||
ldx #$64
|
||||
ldx #0
|
||||
lda #$64
|
||||
b1:
|
||||
dex
|
||||
cpx #0
|
||||
sec
|
||||
sbc #1
|
||||
cmp #0
|
||||
bne b2
|
||||
rts
|
||||
b2:
|
||||
cpx #$32
|
||||
bcc b4
|
||||
beq b4
|
||||
iny
|
||||
cmp #$32
|
||||
beq !+
|
||||
bcs b4
|
||||
!:
|
||||
dex
|
||||
jmp b1
|
||||
b4:
|
||||
dey
|
||||
inx
|
||||
jmp b1
|
||||
}
|
||||
|
@ -20,11 +20,11 @@ main::@return: scope:[main] from main::@1
|
||||
[8] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
||||
main::@2: scope:[main] from main::@1
|
||||
[9] if((byte) main::i#1<=(byte/signed byte/word/signed word/dword/signed dword) 50) goto main::@4 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] )
|
||||
[9] if((byte) main::i#1>(byte/signed byte/word/signed word/dword/signed dword) 50) goto main::@4 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] )
|
||||
to:main::@8
|
||||
main::@8: scope:[main] from main::@2
|
||||
[10] (byte) main::s#2 ← ++ (byte) main::s#3 [ main::i#1 main::s#2 ] ( main:2 [ main::i#1 main::s#2 ] )
|
||||
[10] (byte) main::s#2 ← -- (byte) main::s#3 [ main::i#1 main::s#2 ] ( main:2 [ main::i#1 main::s#2 ] )
|
||||
to:main::@1
|
||||
main::@4: scope:[main] from main::@2
|
||||
[11] (byte) main::s#1 ← -- (byte) main::s#3 [ main::i#1 main::s#1 ] ( main:2 [ main::i#1 main::s#1 ] )
|
||||
[11] (byte) main::s#1 ← ++ (byte) main::s#3 [ main::i#1 main::s#1 ] ( main:2 [ main::i#1 main::s#1 ] )
|
||||
to:main::@1
|
||||
|
@ -12,8 +12,8 @@ void main() {
|
||||
}
|
||||
|
||||
Adding pre/post-modifier (byte) main::i ← -- (byte) main::i
|
||||
Adding pre/post-modifier (byte) main::s ← ++ (byte) main::s
|
||||
Adding pre/post-modifier (byte) main::s ← -- (byte) main::s
|
||||
Adding pre/post-modifier (byte) main::s ← ++ (byte) main::s
|
||||
|
||||
STATEMENTS
|
||||
proc (void()) main()
|
||||
@ -26,12 +26,11 @@ main::@1:
|
||||
goto main::@3
|
||||
main::@2:
|
||||
(boolean~) main::$1 ← (byte) main::i > (byte/signed byte/word/signed word/dword/signed dword) 50
|
||||
(boolean~) main::$2 ← ! (boolean~) main::$1
|
||||
if((boolean~) main::$2) goto main::@4
|
||||
(byte) main::s ← ++ (byte) main::s
|
||||
if((boolean~) main::$1) goto main::@4
|
||||
(byte) main::s ← -- (byte) main::s
|
||||
goto main::@5
|
||||
main::@4:
|
||||
(byte) main::s ← -- (byte) main::s
|
||||
(byte) main::s ← ++ (byte) main::s
|
||||
main::@5:
|
||||
goto main::@1
|
||||
main::@3:
|
||||
@ -44,7 +43,6 @@ SYMBOLS
|
||||
(void()) main()
|
||||
(boolean~) main::$0
|
||||
(boolean~) main::$1
|
||||
(boolean~) main::$2
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
(label) main::@3
|
||||
@ -68,8 +66,7 @@ main::@1: scope:[main] from main main::@5
|
||||
to:main::@6
|
||||
main::@2: scope:[main] from main::@1 main::@7
|
||||
(boolean~) main::$1 ← (byte) main::i > (byte/signed byte/word/signed word/dword/signed dword) 50
|
||||
(boolean~) main::$2 ← ! (boolean~) main::$1
|
||||
if((boolean~) main::$2) goto main::@4
|
||||
if((boolean~) main::$1) goto main::@4
|
||||
to:main::@8
|
||||
main::@6: scope:[main] from main::@1
|
||||
to:main::@3
|
||||
@ -78,10 +75,10 @@ main::@3: scope:[main] from main::@10 main::@6
|
||||
main::@7: scope:[main] from
|
||||
to:main::@2
|
||||
main::@4: scope:[main] from main::@2 main::@9
|
||||
(byte) main::s ← -- (byte) main::s
|
||||
(byte) main::s ← ++ (byte) main::s
|
||||
to:main::@5
|
||||
main::@8: scope:[main] from main::@2
|
||||
(byte) main::s ← ++ (byte) main::s
|
||||
(byte) main::s ← -- (byte) main::s
|
||||
to:main::@5
|
||||
main::@5: scope:[main] from main::@4 main::@8
|
||||
to:main::@1
|
||||
@ -127,18 +124,17 @@ main::@2: scope:[main] from main::@1
|
||||
(byte) main::s#5 ← phi( main::@1/(byte) main::s#6 )
|
||||
(byte) main::i#3 ← phi( main::@1/(byte) main::i#1 )
|
||||
(boolean~) main::$1 ← (byte) main::i#3 > (byte/signed byte/word/signed word/dword/signed dword) 50
|
||||
(boolean~) main::$2 ← ! (boolean~) main::$1
|
||||
if((boolean~) main::$2) goto main::@4
|
||||
if((boolean~) main::$1) goto main::@4
|
||||
to:main::@8
|
||||
main::@4: scope:[main] from main::@2
|
||||
(byte) main::i#4 ← phi( main::@2/(byte) main::i#3 )
|
||||
(byte) main::s#3 ← phi( main::@2/(byte) main::s#5 )
|
||||
(byte) main::s#1 ← -- (byte) main::s#3
|
||||
(byte) main::s#1 ← ++ (byte) main::s#3
|
||||
to:main::@1
|
||||
main::@8: scope:[main] from main::@2
|
||||
(byte) main::i#5 ← phi( main::@2/(byte) main::i#3 )
|
||||
(byte) main::s#4 ← phi( main::@2/(byte) main::s#5 )
|
||||
(byte) main::s#2 ← ++ (byte) main::s#4
|
||||
(byte) main::s#2 ← -- (byte) main::s#4
|
||||
to:main::@1
|
||||
main::@return: scope:[main] from main::@1
|
||||
return
|
||||
@ -158,7 +154,6 @@ SYMBOL TABLE SSA
|
||||
(void()) main()
|
||||
(boolean~) main::$0
|
||||
(boolean~) main::$1
|
||||
(boolean~) main::$2
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
(label) main::@4
|
||||
@ -183,13 +178,11 @@ SYMBOL TABLE SSA
|
||||
OPTIMIZING CONTROL FLOW GRAPH
|
||||
Culled Empty Block (label) @2
|
||||
Succesful SSA optimization Pass2CullEmptyBlocks
|
||||
Inversing boolean not (boolean~) main::$2 ← (byte) main::i#3 <= (byte/signed byte/word/signed word/dword/signed dword) 50 from (boolean~) main::$1 ← (byte) main::i#3 > (byte/signed byte/word/signed word/dword/signed dword) 50
|
||||
Succesful SSA optimization Pass2UnaryNotSimplification
|
||||
Alias (byte) main::i#1 = (byte) main::i#3 (byte) main::i#4 (byte) main::i#5
|
||||
Alias (byte) main::s#3 = (byte) main::s#5 (byte) main::s#6 (byte) main::s#4
|
||||
Succesful SSA optimization Pass2AliasElimination
|
||||
Simple Condition (boolean~) main::$0 if((byte) main::i#1>(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@2
|
||||
Simple Condition (boolean~) main::$2 if((byte) main::i#1<=(byte/signed byte/word/signed word/dword/signed dword) 50) goto main::@4
|
||||
Simple Condition (boolean~) main::$1 if((byte) main::i#1>(byte/signed byte/word/signed word/dword/signed dword) 50) goto main::@4
|
||||
Succesful SSA optimization Pass2ConditionalJumpSimplification
|
||||
Constant (const byte) main::i#0 = 100
|
||||
Constant (const byte) main::s#0 = 0
|
||||
@ -257,13 +250,13 @@ main::@return: scope:[main] from main::@1
|
||||
[8] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
||||
main::@2: scope:[main] from main::@1
|
||||
[9] if((byte) main::i#1<=(byte/signed byte/word/signed word/dword/signed dword) 50) goto main::@4 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] )
|
||||
[9] if((byte) main::i#1>(byte/signed byte/word/signed word/dword/signed dword) 50) goto main::@4 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] )
|
||||
to:main::@8
|
||||
main::@8: scope:[main] from main::@2
|
||||
[10] (byte) main::s#2 ← ++ (byte) main::s#3 [ main::i#1 main::s#2 ] ( main:2 [ main::i#1 main::s#2 ] )
|
||||
[10] (byte) main::s#2 ← -- (byte) main::s#3 [ main::i#1 main::s#2 ] ( main:2 [ main::i#1 main::s#2 ] )
|
||||
to:main::@1
|
||||
main::@4: scope:[main] from main::@2
|
||||
[11] (byte) main::s#1 ← -- (byte) main::s#3 [ main::i#1 main::s#1 ] ( main:2 [ main::i#1 main::s#1 ] )
|
||||
[11] (byte) main::s#1 ← ++ (byte) main::s#3 [ main::i#1 main::s#1 ] ( main:2 [ main::i#1 main::s#1 ] )
|
||||
to:main::@1
|
||||
|
||||
DOMINATORS
|
||||
@ -360,15 +353,17 @@ main: {
|
||||
rts
|
||||
//SEG18 main::@2
|
||||
b2:
|
||||
//SEG19 [9] if((byte) main::i#1<=(byte/signed byte/word/signed word/dword/signed dword) 50) goto main::@4 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuz1_le_vbuc1_then_la1
|
||||
lda #$32
|
||||
cmp i
|
||||
//SEG19 [9] if((byte) main::i#1>(byte/signed byte/word/signed word/dword/signed dword) 50) goto main::@4 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuz1_gt_vbuc1_then_la1
|
||||
lda i
|
||||
cmp #$32
|
||||
beq !+
|
||||
bcs b4
|
||||
!:
|
||||
jmp b8
|
||||
//SEG20 main::@8
|
||||
b8:
|
||||
//SEG21 [10] (byte) main::s#2 ← ++ (byte) main::s#3 [ main::i#1 main::s#2 ] ( main:2 [ main::i#1 main::s#2 ] ) -- vbuz1=_inc_vbuz1
|
||||
inc s
|
||||
//SEG21 [10] (byte) main::s#2 ← -- (byte) main::s#3 [ main::i#1 main::s#2 ] ( main:2 [ main::i#1 main::s#2 ] ) -- vbuz1=_dec_vbuz1
|
||||
dec s
|
||||
//SEG22 [5] phi from main::@4 main::@8 to main::@1 [phi:main::@4/main::@8->main::@1]
|
||||
b1_from_b4:
|
||||
b1_from_b8:
|
||||
@ -377,8 +372,8 @@ main: {
|
||||
jmp b1
|
||||
//SEG25 main::@4
|
||||
b4:
|
||||
//SEG26 [11] (byte) main::s#1 ← -- (byte) main::s#3 [ main::i#1 main::s#1 ] ( main:2 [ main::i#1 main::s#1 ] ) -- vbuz1=_dec_vbuz1
|
||||
dec s
|
||||
//SEG26 [11] (byte) main::s#1 ← ++ (byte) main::s#3 [ main::i#1 main::s#1 ] ( main:2 [ main::i#1 main::s#1 ] ) -- vbuz1=_inc_vbuz1
|
||||
inc s
|
||||
jmp b1_from_b4
|
||||
}
|
||||
|
||||
@ -390,8 +385,8 @@ REGISTER UPLIFT SCOPES
|
||||
Uplift Scope [main] 55: zp ZP_BYTE:3 [ main::s#3 main::s#1 main::s#2 ] 44: zp ZP_BYTE:2 [ main::i#2 main::i#1 ]
|
||||
Uplift Scope []
|
||||
|
||||
Uplifting [main] best 383 combination reg byte y [ main::s#3 main::s#1 main::s#2 ] reg byte x [ main::i#2 main::i#1 ]
|
||||
Uplifting [] best 383 combination
|
||||
Uplifting [main] best 403 combination reg byte x [ main::s#3 main::s#1 main::s#2 ] reg byte a [ main::i#2 main::i#1 ]
|
||||
Uplifting [] best 403 combination
|
||||
|
||||
ASSEMBLER BEFORE OPTIMIZATION
|
||||
//SEG0 Basic Upstart
|
||||
@ -419,17 +414,18 @@ bend:
|
||||
main: {
|
||||
//SEG10 [5] phi from main to main::@1 [phi:main->main::@1]
|
||||
b1_from_main:
|
||||
//SEG11 [5] phi (byte) main::s#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main->main::@1#0] -- vbuyy=vbuc1
|
||||
ldy #0
|
||||
//SEG12 [5] phi (byte) main::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 100 [phi:main->main::@1#1] -- vbuxx=vbuc1
|
||||
ldx #$64
|
||||
//SEG11 [5] phi (byte) main::s#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main->main::@1#0] -- vbuxx=vbuc1
|
||||
ldx #0
|
||||
//SEG12 [5] phi (byte) main::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 100 [phi:main->main::@1#1] -- vbuaa=vbuc1
|
||||
lda #$64
|
||||
jmp b1
|
||||
//SEG13 main::@1
|
||||
b1:
|
||||
//SEG14 [6] (byte) main::i#1 ← -- (byte) main::i#2 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuxx=_dec_vbuxx
|
||||
dex
|
||||
//SEG15 [7] if((byte) main::i#1>(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@2 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuxx_gt_0_then_la1
|
||||
cpx #0
|
||||
//SEG14 [6] (byte) main::i#1 ← -- (byte) main::i#2 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuaa=_dec_vbuaa
|
||||
sec
|
||||
sbc #1
|
||||
//SEG15 [7] if((byte) main::i#1>(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@2 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuaa_gt_0_then_la1
|
||||
cmp #0
|
||||
bne b2
|
||||
jmp breturn
|
||||
//SEG16 main::@return
|
||||
@ -438,15 +434,16 @@ main: {
|
||||
rts
|
||||
//SEG18 main::@2
|
||||
b2:
|
||||
//SEG19 [9] if((byte) main::i#1<=(byte/signed byte/word/signed word/dword/signed dword) 50) goto main::@4 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuxx_le_vbuc1_then_la1
|
||||
cpx #$32
|
||||
bcc b4
|
||||
beq b4
|
||||
//SEG19 [9] if((byte) main::i#1>(byte/signed byte/word/signed word/dword/signed dword) 50) goto main::@4 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuaa_gt_vbuc1_then_la1
|
||||
cmp #$32
|
||||
beq !+
|
||||
bcs b4
|
||||
!:
|
||||
jmp b8
|
||||
//SEG20 main::@8
|
||||
b8:
|
||||
//SEG21 [10] (byte) main::s#2 ← ++ (byte) main::s#3 [ main::i#1 main::s#2 ] ( main:2 [ main::i#1 main::s#2 ] ) -- vbuyy=_inc_vbuyy
|
||||
iny
|
||||
//SEG21 [10] (byte) main::s#2 ← -- (byte) main::s#3 [ main::i#1 main::s#2 ] ( main:2 [ main::i#1 main::s#2 ] ) -- vbuxx=_dec_vbuxx
|
||||
dex
|
||||
//SEG22 [5] phi from main::@4 main::@8 to main::@1 [phi:main::@4/main::@8->main::@1]
|
||||
b1_from_b4:
|
||||
b1_from_b8:
|
||||
@ -455,8 +452,8 @@ main: {
|
||||
jmp b1
|
||||
//SEG25 main::@4
|
||||
b4:
|
||||
//SEG26 [11] (byte) main::s#1 ← -- (byte) main::s#3 [ main::i#1 main::s#1 ] ( main:2 [ main::i#1 main::s#1 ] ) -- vbuyy=_dec_vbuyy
|
||||
dey
|
||||
//SEG26 [11] (byte) main::s#1 ← ++ (byte) main::s#3 [ main::i#1 main::s#1 ] ( main:2 [ main::i#1 main::s#1 ] ) -- vbuxx=_inc_vbuxx
|
||||
inx
|
||||
jmp b1_from_b4
|
||||
}
|
||||
|
||||
@ -498,19 +495,19 @@ FINAL SYMBOL TABLE
|
||||
(label) main::@8
|
||||
(label) main::@return
|
||||
(byte) main::i
|
||||
(byte) main::i#1 reg byte x 11.0
|
||||
(byte) main::i#2 reg byte x 33.0
|
||||
(byte) main::i#1 reg byte a 11.0
|
||||
(byte) main::i#2 reg byte a 33.0
|
||||
(byte) main::s
|
||||
(byte) main::s#1 reg byte y 22.0
|
||||
(byte) main::s#2 reg byte y 22.0
|
||||
(byte) main::s#3 reg byte y 11.0
|
||||
(byte) main::s#1 reg byte x 22.0
|
||||
(byte) main::s#2 reg byte x 22.0
|
||||
(byte) main::s#3 reg byte x 11.0
|
||||
|
||||
reg byte x [ main::i#2 main::i#1 ]
|
||||
reg byte y [ main::s#3 main::s#1 main::s#2 ]
|
||||
reg byte a [ main::i#2 main::i#1 ]
|
||||
reg byte x [ main::s#3 main::s#1 main::s#2 ]
|
||||
|
||||
|
||||
FINAL ASSEMBLER
|
||||
Score: 287
|
||||
Score: 307
|
||||
|
||||
//SEG0 Basic Upstart
|
||||
.pc = $801 "Basic"
|
||||
@ -528,37 +525,39 @@ Score: 287
|
||||
//SEG9 main
|
||||
main: {
|
||||
//SEG10 [5] phi from main to main::@1 [phi:main->main::@1]
|
||||
//SEG11 [5] phi (byte) main::s#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main->main::@1#0] -- vbuyy=vbuc1
|
||||
ldy #0
|
||||
//SEG12 [5] phi (byte) main::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 100 [phi:main->main::@1#1] -- vbuxx=vbuc1
|
||||
ldx #$64
|
||||
//SEG11 [5] phi (byte) main::s#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:main->main::@1#0] -- vbuxx=vbuc1
|
||||
ldx #0
|
||||
//SEG12 [5] phi (byte) main::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 100 [phi:main->main::@1#1] -- vbuaa=vbuc1
|
||||
lda #$64
|
||||
//SEG13 main::@1
|
||||
b1:
|
||||
//SEG14 [6] (byte) main::i#1 ← -- (byte) main::i#2 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuxx=_dec_vbuxx
|
||||
dex
|
||||
//SEG15 [7] if((byte) main::i#1>(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@2 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuxx_gt_0_then_la1
|
||||
cpx #0
|
||||
//SEG14 [6] (byte) main::i#1 ← -- (byte) main::i#2 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuaa=_dec_vbuaa
|
||||
sec
|
||||
sbc #1
|
||||
//SEG15 [7] if((byte) main::i#1>(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@2 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuaa_gt_0_then_la1
|
||||
cmp #0
|
||||
bne b2
|
||||
//SEG16 main::@return
|
||||
//SEG17 [8] return [ ] ( main:2 [ ] )
|
||||
rts
|
||||
//SEG18 main::@2
|
||||
b2:
|
||||
//SEG19 [9] if((byte) main::i#1<=(byte/signed byte/word/signed word/dword/signed dword) 50) goto main::@4 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuxx_le_vbuc1_then_la1
|
||||
cpx #$32
|
||||
bcc b4
|
||||
beq b4
|
||||
//SEG19 [9] if((byte) main::i#1>(byte/signed byte/word/signed word/dword/signed dword) 50) goto main::@4 [ main::s#3 main::i#1 ] ( main:2 [ main::s#3 main::i#1 ] ) -- vbuaa_gt_vbuc1_then_la1
|
||||
cmp #$32
|
||||
beq !+
|
||||
bcs b4
|
||||
!:
|
||||
//SEG20 main::@8
|
||||
//SEG21 [10] (byte) main::s#2 ← ++ (byte) main::s#3 [ main::i#1 main::s#2 ] ( main:2 [ main::i#1 main::s#2 ] ) -- vbuyy=_inc_vbuyy
|
||||
iny
|
||||
//SEG21 [10] (byte) main::s#2 ← -- (byte) main::s#3 [ main::i#1 main::s#2 ] ( main:2 [ main::i#1 main::s#2 ] ) -- vbuxx=_dec_vbuxx
|
||||
dex
|
||||
//SEG22 [5] phi from main::@4 main::@8 to main::@1 [phi:main::@4/main::@8->main::@1]
|
||||
//SEG23 [5] phi (byte) main::s#3 = (byte) main::s#1 [phi:main::@4/main::@8->main::@1#0] -- register_copy
|
||||
//SEG24 [5] phi (byte) main::i#2 = (byte) main::i#1 [phi:main::@4/main::@8->main::@1#1] -- register_copy
|
||||
jmp b1
|
||||
//SEG25 main::@4
|
||||
b4:
|
||||
//SEG26 [11] (byte) main::s#1 ← -- (byte) main::s#3 [ main::i#1 main::s#1 ] ( main:2 [ main::i#1 main::s#1 ] ) -- vbuyy=_dec_vbuyy
|
||||
dey
|
||||
//SEG26 [11] (byte) main::s#1 ← ++ (byte) main::s#3 [ main::i#1 main::s#1 ] ( main:2 [ main::i#1 main::s#1 ] ) -- vbuxx=_inc_vbuxx
|
||||
inx
|
||||
jmp b1
|
||||
}
|
||||
|
||||
|
@ -8,12 +8,12 @@
|
||||
(label) main::@8
|
||||
(label) main::@return
|
||||
(byte) main::i
|
||||
(byte) main::i#1 reg byte x 11.0
|
||||
(byte) main::i#2 reg byte x 33.0
|
||||
(byte) main::i#1 reg byte a 11.0
|
||||
(byte) main::i#2 reg byte a 33.0
|
||||
(byte) main::s
|
||||
(byte) main::s#1 reg byte y 22.0
|
||||
(byte) main::s#2 reg byte y 22.0
|
||||
(byte) main::s#3 reg byte y 11.0
|
||||
(byte) main::s#1 reg byte x 22.0
|
||||
(byte) main::s#2 reg byte x 22.0
|
||||
(byte) main::s#3 reg byte x 11.0
|
||||
|
||||
reg byte x [ main::i#2 main::i#1 ]
|
||||
reg byte y [ main::s#3 main::s#1 main::s#2 ]
|
||||
reg byte a [ main::i#2 main::i#1 ]
|
||||
reg byte x [ main::s#3 main::s#1 main::s#2 ]
|
||||
|
@ -745,9 +745,9 @@ Consolidated array index constant in assignment *(main::line#0+1 + main::$6)
|
||||
Consolidated array index constant in *(main::line#0+39)
|
||||
Succesful SSA optimization Pass2ConstantAdditionElimination
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte) main::i#2
|
||||
Inferred type updated to byte in (byte/signed word/word/dword/signed dword~) main::$6 ← (byte) main::i#2
|
||||
if() condition always true - replacing block destination if(true) goto main::@1
|
||||
Succesful SSA optimization Pass2ConstantIfs
|
||||
Inferred type updated to byte in (byte/signed word/word/dword/signed dword~) main::$6 ← (byte) main::i#2
|
||||
Removing unused block main::@return
|
||||
Succesful SSA optimization Pass2EliminateUnusedBlocks
|
||||
Culled Empty Block (label) main::@13
|
||||
|
@ -5177,6 +5177,8 @@ Multiple usages for variable. Not optimizing sub-constant (byte) init::i#2
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte) place_sprites::spr_x#2
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte*) gen_sprites::spr#2
|
||||
Multiple usages for variable. Not optimizing sub-constant (byte*) gen_chargen_sprite::sprite#4
|
||||
if() condition always true - replacing block destination if(true) goto main::@1
|
||||
Succesful SSA optimization Pass2ConstantIfs
|
||||
Fixing inline constructor with getFAC::$0 ← *(memHi#0) w= *(memLo#0)
|
||||
Succesful SSA optimization Pass2FixInlineConstructors
|
||||
Inferred type updated to byte in (byte/signed word/word/dword/signed dword~) init::$1 ← (byte) init::i#2
|
||||
@ -5184,8 +5186,6 @@ Eliminating unused constant (const byte) progress_idx#35
|
||||
Succesful SSA optimization PassNEliminateUnusedVars
|
||||
Eliminating Noop Cast (byte*) prepareMEM::mem#0 ← ((byte*)) (word) setFAC::w#5
|
||||
Succesful SSA optimization Pass2NopCastElimination
|
||||
if() condition always true - replacing block destination if(true) goto main::@1
|
||||
Succesful SSA optimization Pass2ConstantIfs
|
||||
Removing unused block main::@return
|
||||
Succesful SSA optimization Pass2EliminateUnusedBlocks
|
||||
Culled Empty Block (label) @41
|
||||
|
@ -605,49 +605,46 @@ proc (signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) div8s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$0 ← (signed byte) div8s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$1 ← ! (boolean~) div8s::$0
|
||||
if((boolean~) div8s::$1) goto div8s::@1
|
||||
if((boolean~) div8s::$0) goto div8s::@1
|
||||
(byte~) div8s::$1 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$1
|
||||
goto div8s::@2
|
||||
div8s::@1:
|
||||
(signed byte~) div8s::$2 ← - (signed byte) div8s::dividend
|
||||
(byte~) div8s::$3 ← ((byte)) (signed byte~) div8s::$2
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$3
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
goto div8s::@2
|
||||
div8s::@1:
|
||||
(byte~) div8s::$4 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$4
|
||||
div8s::@2:
|
||||
(byte) div8s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$5 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$6 ← ! (boolean~) div8s::$5
|
||||
if((boolean~) div8s::$6) goto div8s::@3
|
||||
(signed byte~) div8s::$7 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$8 ← ((byte)) (signed byte~) div8s::$7
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$9
|
||||
(boolean~) div8s::$4 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$4) goto div8s::@3
|
||||
(byte~) div8s::$5 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$5
|
||||
goto div8s::@4
|
||||
div8s::@3:
|
||||
(byte~) div8s::$10 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$10
|
||||
(signed byte~) div8s::$6 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$7 ← ((byte)) (signed byte~) div8s::$6
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$8
|
||||
div8s::@4:
|
||||
(byte~) div8s::$11 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$11
|
||||
(boolean~) div8s::$12 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$13 ← ! (boolean~) div8s::$12
|
||||
if((boolean~) div8s::$13) goto div8s::@5
|
||||
(signed byte~) div8s::$14 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$15
|
||||
(byte~) div8s::$9 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$9
|
||||
(boolean~) div8s::$10 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$10) goto div8s::@5
|
||||
(signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$12 ← - (signed byte~) div8s::$11
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$14 ← - (signed byte~) div8s::$13
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$14
|
||||
goto div8s::@return
|
||||
goto div8s::@6
|
||||
div8s::@5:
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$17 ← - (signed byte~) div8s::$16
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$19 ← - (signed byte~) div8s::$18
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$16
|
||||
goto div8s::@return
|
||||
div8s::@6:
|
||||
div8s::@return:
|
||||
@ -659,49 +656,46 @@ proc (signed word()) div16s((signed word) div16s::dividend , (signed word) div16
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(word) div16s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$0 ← (signed word) div16s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$1 ← ! (boolean~) div16s::$0
|
||||
if((boolean~) div16s::$1) goto div16s::@1
|
||||
if((boolean~) div16s::$0) goto div16s::@1
|
||||
(word~) div16s::$1 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$1
|
||||
goto div16s::@2
|
||||
div16s::@1:
|
||||
(signed word~) div16s::$2 ← - (signed word) div16s::dividend
|
||||
(word~) div16s::$3 ← ((word)) (signed word~) div16s::$2
|
||||
(word) div16s::dividendu ← (word~) div16s::$3
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
goto div16s::@2
|
||||
div16s::@1:
|
||||
(word~) div16s::$4 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$4
|
||||
div16s::@2:
|
||||
(word) div16s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$5 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$6 ← ! (boolean~) div16s::$5
|
||||
if((boolean~) div16s::$6) goto div16s::@3
|
||||
(signed word~) div16s::$7 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$8 ← ((word)) (signed word~) div16s::$7
|
||||
(word) div16s::divisoru ← (word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$9
|
||||
(boolean~) div16s::$4 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$4) goto div16s::@3
|
||||
(word~) div16s::$5 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$5
|
||||
goto div16s::@4
|
||||
div16s::@3:
|
||||
(word~) div16s::$10 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$10
|
||||
(signed word~) div16s::$6 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$7 ← ((word)) (signed word~) div16s::$6
|
||||
(word) div16s::divisoru ← (word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$8
|
||||
div16s::@4:
|
||||
(word~) div16s::$11 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$11
|
||||
(boolean~) div16s::$12 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$13 ← ! (boolean~) div16s::$12
|
||||
if((boolean~) div16s::$13) goto div16s::@5
|
||||
(signed word~) div16s::$14 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$14
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$15
|
||||
(word~) div16s::$9 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$9
|
||||
(boolean~) div16s::$10 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$10) goto div16s::@5
|
||||
(signed word~) div16s::$11 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$12 ← - (signed word~) div16s::$11
|
||||
(signed word) rem16s ← (signed word~) div16s::$12
|
||||
(signed word~) div16s::$13 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$14 ← - (signed word~) div16s::$13
|
||||
(signed word) div16s::return ← (signed word~) div16s::$14
|
||||
goto div16s::@return
|
||||
goto div16s::@6
|
||||
div16s::@5:
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$17 ← - (signed word~) div16s::$16
|
||||
(signed word) rem16s ← (signed word~) div16s::$17
|
||||
(signed word~) div16s::$18 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$19 ← - (signed word~) div16s::$18
|
||||
(signed word) div16s::return ← (signed word~) div16s::$19
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$16
|
||||
goto div16s::@return
|
||||
div16s::@6:
|
||||
div16s::@return:
|
||||
@ -1204,25 +1198,22 @@ SYMBOLS
|
||||
(dword) PI_u4f28
|
||||
(signed word()) div16s((signed word) div16s::dividend , (signed word) div16s::divisor)
|
||||
(boolean~) div16s::$0
|
||||
(boolean~) div16s::$1
|
||||
(word~) div16s::$10
|
||||
(word~) div16s::$11
|
||||
(boolean~) div16s::$12
|
||||
(boolean~) div16s::$13
|
||||
(word~) div16s::$1
|
||||
(boolean~) div16s::$10
|
||||
(signed word~) div16s::$11
|
||||
(signed word~) div16s::$12
|
||||
(signed word~) div16s::$13
|
||||
(signed word~) div16s::$14
|
||||
(signed word~) div16s::$15
|
||||
(signed word~) div16s::$16
|
||||
(signed word~) div16s::$17
|
||||
(signed word~) div16s::$18
|
||||
(signed word~) div16s::$19
|
||||
(signed word~) div16s::$2
|
||||
(word~) div16s::$3
|
||||
(word~) div16s::$4
|
||||
(boolean~) div16s::$5
|
||||
(boolean~) div16s::$6
|
||||
(signed word~) div16s::$7
|
||||
(word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9
|
||||
(boolean~) div16s::$4
|
||||
(word~) div16s::$5
|
||||
(signed word~) div16s::$6
|
||||
(word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8
|
||||
(word~) div16s::$9
|
||||
(label) div16s::@1
|
||||
(label) div16s::@2
|
||||
(label) div16s::@3
|
||||
@ -1257,25 +1248,22 @@ SYMBOLS
|
||||
(dword) div32u16u::return
|
||||
(signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::divisor)
|
||||
(boolean~) div8s::$0
|
||||
(boolean~) div8s::$1
|
||||
(byte~) div8s::$10
|
||||
(byte~) div8s::$11
|
||||
(boolean~) div8s::$12
|
||||
(boolean~) div8s::$13
|
||||
(byte~) div8s::$1
|
||||
(boolean~) div8s::$10
|
||||
(signed byte~) div8s::$11
|
||||
(signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13
|
||||
(signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16
|
||||
(signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18
|
||||
(signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$2
|
||||
(byte~) div8s::$3
|
||||
(byte~) div8s::$4
|
||||
(boolean~) div8s::$5
|
||||
(boolean~) div8s::$6
|
||||
(signed byte~) div8s::$7
|
||||
(byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9
|
||||
(boolean~) div8s::$4
|
||||
(byte~) div8s::$5
|
||||
(signed byte~) div8s::$6
|
||||
(byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8
|
||||
(byte~) div8s::$9
|
||||
(label) div8s::@1
|
||||
(label) div8s::@2
|
||||
(label) div8s::@3
|
||||
@ -1851,60 +1839,57 @@ div8s: scope:[div8s] from
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) div8s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$0 ← (signed byte) div8s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$1 ← ! (boolean~) div8s::$0
|
||||
if((boolean~) div8s::$1) goto div8s::@1
|
||||
if((boolean~) div8s::$0) goto div8s::@1
|
||||
to:div8s::@7
|
||||
div8s::@1: scope:[div8s] from div8s div8s::@8
|
||||
(byte~) div8s::$4 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$4
|
||||
to:div8s::@2
|
||||
div8s::@7: scope:[div8s] from div8s
|
||||
(signed byte~) div8s::$2 ← - (signed byte) div8s::dividend
|
||||
(byte~) div8s::$3 ← ((byte)) (signed byte~) div8s::$2
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$3
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:div8s::@2
|
||||
div8s::@7: scope:[div8s] from div8s
|
||||
(byte~) div8s::$1 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$1
|
||||
to:div8s::@2
|
||||
div8s::@2: scope:[div8s] from div8s::@1 div8s::@7
|
||||
(byte) div8s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$5 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$6 ← ! (boolean~) div8s::$5
|
||||
if((boolean~) div8s::$6) goto div8s::@3
|
||||
(boolean~) div8s::$4 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$4) goto div8s::@3
|
||||
to:div8s::@9
|
||||
div8s::@8: scope:[div8s] from
|
||||
to:div8s::@1
|
||||
div8s::@3: scope:[div8s] from div8s::@10 div8s::@2
|
||||
(byte~) div8s::$10 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$10
|
||||
(signed byte~) div8s::$6 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$7 ← ((byte)) (signed byte~) div8s::$6
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$8
|
||||
to:div8s::@4
|
||||
div8s::@9: scope:[div8s] from div8s::@2
|
||||
(signed byte~) div8s::$7 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$8 ← ((byte)) (signed byte~) div8s::$7
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$9
|
||||
(byte~) div8s::$5 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$5
|
||||
to:div8s::@4
|
||||
div8s::@4: scope:[div8s] from div8s::@3 div8s::@9
|
||||
(byte~) div8s::$11 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$11
|
||||
(boolean~) div8s::$12 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$13 ← ! (boolean~) div8s::$12
|
||||
if((boolean~) div8s::$13) goto div8s::@5
|
||||
(byte~) div8s::$9 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$9
|
||||
(boolean~) div8s::$10 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$10) goto div8s::@5
|
||||
to:div8s::@11
|
||||
div8s::@10: scope:[div8s] from
|
||||
to:div8s::@3
|
||||
div8s::@5: scope:[div8s] from div8s::@13 div8s::@4
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$17 ← - (signed byte~) div8s::$16
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$19 ← - (signed byte~) div8s::$18
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$16
|
||||
to:div8s::@return
|
||||
div8s::@11: scope:[div8s] from div8s::@4
|
||||
(signed byte~) div8s::$14 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$12 ← - (signed byte~) div8s::$11
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$14 ← - (signed byte~) div8s::$13
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$14
|
||||
to:div8s::@return
|
||||
div8s::@return: scope:[div8s] from div8s::@11 div8s::@5 div8s::@6
|
||||
(signed byte) div8s::return ← (signed byte) div8s::return
|
||||
@ -1925,60 +1910,57 @@ div16s: scope:[div16s] from
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(word) div16s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$0 ← (signed word) div16s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$1 ← ! (boolean~) div16s::$0
|
||||
if((boolean~) div16s::$1) goto div16s::@1
|
||||
if((boolean~) div16s::$0) goto div16s::@1
|
||||
to:div16s::@7
|
||||
div16s::@1: scope:[div16s] from div16s div16s::@8
|
||||
(word~) div16s::$4 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$4
|
||||
to:div16s::@2
|
||||
div16s::@7: scope:[div16s] from div16s
|
||||
(signed word~) div16s::$2 ← - (signed word) div16s::dividend
|
||||
(word~) div16s::$3 ← ((word)) (signed word~) div16s::$2
|
||||
(word) div16s::dividendu ← (word~) div16s::$3
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:div16s::@2
|
||||
div16s::@7: scope:[div16s] from div16s
|
||||
(word~) div16s::$1 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$1
|
||||
to:div16s::@2
|
||||
div16s::@2: scope:[div16s] from div16s::@1 div16s::@7
|
||||
(word) div16s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$5 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$6 ← ! (boolean~) div16s::$5
|
||||
if((boolean~) div16s::$6) goto div16s::@3
|
||||
(boolean~) div16s::$4 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$4) goto div16s::@3
|
||||
to:div16s::@9
|
||||
div16s::@8: scope:[div16s] from
|
||||
to:div16s::@1
|
||||
div16s::@3: scope:[div16s] from div16s::@10 div16s::@2
|
||||
(word~) div16s::$10 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$10
|
||||
(signed word~) div16s::$6 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$7 ← ((word)) (signed word~) div16s::$6
|
||||
(word) div16s::divisoru ← (word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$8
|
||||
to:div16s::@4
|
||||
div16s::@9: scope:[div16s] from div16s::@2
|
||||
(signed word~) div16s::$7 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$8 ← ((word)) (signed word~) div16s::$7
|
||||
(word) div16s::divisoru ← (word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$9
|
||||
(word~) div16s::$5 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$5
|
||||
to:div16s::@4
|
||||
div16s::@4: scope:[div16s] from div16s::@3 div16s::@9
|
||||
(word~) div16s::$11 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$11
|
||||
(boolean~) div16s::$12 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$13 ← ! (boolean~) div16s::$12
|
||||
if((boolean~) div16s::$13) goto div16s::@5
|
||||
(word~) div16s::$9 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$9
|
||||
(boolean~) div16s::$10 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$10) goto div16s::@5
|
||||
to:div16s::@11
|
||||
div16s::@10: scope:[div16s] from
|
||||
to:div16s::@3
|
||||
div16s::@5: scope:[div16s] from div16s::@13 div16s::@4
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$17 ← - (signed word~) div16s::$16
|
||||
(signed word) rem16s ← (signed word~) div16s::$17
|
||||
(signed word~) div16s::$18 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$19 ← - (signed word~) div16s::$18
|
||||
(signed word) div16s::return ← (signed word~) div16s::$19
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$16
|
||||
to:div16s::@return
|
||||
div16s::@11: scope:[div16s] from div16s::@4
|
||||
(signed word~) div16s::$14 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$14
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$11 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$12 ← - (signed word~) div16s::$11
|
||||
(signed word) rem16s ← (signed word~) div16s::$12
|
||||
(signed word~) div16s::$13 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$14 ← - (signed word~) div16s::$13
|
||||
(signed word) div16s::return ← (signed word~) div16s::$14
|
||||
to:div16s::@return
|
||||
div16s::@return: scope:[div16s] from div16s::@11 div16s::@5 div16s::@6
|
||||
(signed word) div16s::return ← (signed word) div16s::return
|
||||
|
@ -669,49 +669,46 @@ proc (signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) div8s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$0 ← (signed byte) div8s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$1 ← ! (boolean~) div8s::$0
|
||||
if((boolean~) div8s::$1) goto div8s::@1
|
||||
if((boolean~) div8s::$0) goto div8s::@1
|
||||
(byte~) div8s::$1 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$1
|
||||
goto div8s::@2
|
||||
div8s::@1:
|
||||
(signed byte~) div8s::$2 ← - (signed byte) div8s::dividend
|
||||
(byte~) div8s::$3 ← ((byte)) (signed byte~) div8s::$2
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$3
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
goto div8s::@2
|
||||
div8s::@1:
|
||||
(byte~) div8s::$4 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$4
|
||||
div8s::@2:
|
||||
(byte) div8s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$5 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$6 ← ! (boolean~) div8s::$5
|
||||
if((boolean~) div8s::$6) goto div8s::@3
|
||||
(signed byte~) div8s::$7 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$8 ← ((byte)) (signed byte~) div8s::$7
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$9
|
||||
(boolean~) div8s::$4 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$4) goto div8s::@3
|
||||
(byte~) div8s::$5 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$5
|
||||
goto div8s::@4
|
||||
div8s::@3:
|
||||
(byte~) div8s::$10 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$10
|
||||
(signed byte~) div8s::$6 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$7 ← ((byte)) (signed byte~) div8s::$6
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$8
|
||||
div8s::@4:
|
||||
(byte~) div8s::$11 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$11
|
||||
(boolean~) div8s::$12 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$13 ← ! (boolean~) div8s::$12
|
||||
if((boolean~) div8s::$13) goto div8s::@5
|
||||
(signed byte~) div8s::$14 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$15
|
||||
(byte~) div8s::$9 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$9
|
||||
(boolean~) div8s::$10 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$10) goto div8s::@5
|
||||
(signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$12 ← - (signed byte~) div8s::$11
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$14 ← - (signed byte~) div8s::$13
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$14
|
||||
goto div8s::@return
|
||||
goto div8s::@6
|
||||
div8s::@5:
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$17 ← - (signed byte~) div8s::$16
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$19 ← - (signed byte~) div8s::$18
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$16
|
||||
goto div8s::@return
|
||||
div8s::@6:
|
||||
div8s::@return:
|
||||
@ -723,49 +720,46 @@ proc (signed word()) div16s((signed word) div16s::dividend , (signed word) div16
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(word) div16s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$0 ← (signed word) div16s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$1 ← ! (boolean~) div16s::$0
|
||||
if((boolean~) div16s::$1) goto div16s::@1
|
||||
if((boolean~) div16s::$0) goto div16s::@1
|
||||
(word~) div16s::$1 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$1
|
||||
goto div16s::@2
|
||||
div16s::@1:
|
||||
(signed word~) div16s::$2 ← - (signed word) div16s::dividend
|
||||
(word~) div16s::$3 ← ((word)) (signed word~) div16s::$2
|
||||
(word) div16s::dividendu ← (word~) div16s::$3
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
goto div16s::@2
|
||||
div16s::@1:
|
||||
(word~) div16s::$4 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$4
|
||||
div16s::@2:
|
||||
(word) div16s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$5 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$6 ← ! (boolean~) div16s::$5
|
||||
if((boolean~) div16s::$6) goto div16s::@3
|
||||
(signed word~) div16s::$7 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$8 ← ((word)) (signed word~) div16s::$7
|
||||
(word) div16s::divisoru ← (word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$9
|
||||
(boolean~) div16s::$4 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$4) goto div16s::@3
|
||||
(word~) div16s::$5 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$5
|
||||
goto div16s::@4
|
||||
div16s::@3:
|
||||
(word~) div16s::$10 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$10
|
||||
(signed word~) div16s::$6 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$7 ← ((word)) (signed word~) div16s::$6
|
||||
(word) div16s::divisoru ← (word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$8
|
||||
div16s::@4:
|
||||
(word~) div16s::$11 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$11
|
||||
(boolean~) div16s::$12 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$13 ← ! (boolean~) div16s::$12
|
||||
if((boolean~) div16s::$13) goto div16s::@5
|
||||
(signed word~) div16s::$14 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$14
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$15
|
||||
(word~) div16s::$9 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$9
|
||||
(boolean~) div16s::$10 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$10) goto div16s::@5
|
||||
(signed word~) div16s::$11 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$12 ← - (signed word~) div16s::$11
|
||||
(signed word) rem16s ← (signed word~) div16s::$12
|
||||
(signed word~) div16s::$13 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$14 ← - (signed word~) div16s::$13
|
||||
(signed word) div16s::return ← (signed word~) div16s::$14
|
||||
goto div16s::@return
|
||||
goto div16s::@6
|
||||
div16s::@5:
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$17 ← - (signed word~) div16s::$16
|
||||
(signed word) rem16s ← (signed word~) div16s::$17
|
||||
(signed word~) div16s::$18 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$19 ← - (signed word~) div16s::$18
|
||||
(signed word) div16s::return ← (signed word~) div16s::$19
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$16
|
||||
goto div16s::@return
|
||||
div16s::@6:
|
||||
div16s::@return:
|
||||
@ -1342,25 +1336,22 @@ SYMBOLS
|
||||
(dword) PI_u4f28
|
||||
(signed word()) div16s((signed word) div16s::dividend , (signed word) div16s::divisor)
|
||||
(boolean~) div16s::$0
|
||||
(boolean~) div16s::$1
|
||||
(word~) div16s::$10
|
||||
(word~) div16s::$11
|
||||
(boolean~) div16s::$12
|
||||
(boolean~) div16s::$13
|
||||
(word~) div16s::$1
|
||||
(boolean~) div16s::$10
|
||||
(signed word~) div16s::$11
|
||||
(signed word~) div16s::$12
|
||||
(signed word~) div16s::$13
|
||||
(signed word~) div16s::$14
|
||||
(signed word~) div16s::$15
|
||||
(signed word~) div16s::$16
|
||||
(signed word~) div16s::$17
|
||||
(signed word~) div16s::$18
|
||||
(signed word~) div16s::$19
|
||||
(signed word~) div16s::$2
|
||||
(word~) div16s::$3
|
||||
(word~) div16s::$4
|
||||
(boolean~) div16s::$5
|
||||
(boolean~) div16s::$6
|
||||
(signed word~) div16s::$7
|
||||
(word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9
|
||||
(boolean~) div16s::$4
|
||||
(word~) div16s::$5
|
||||
(signed word~) div16s::$6
|
||||
(word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8
|
||||
(word~) div16s::$9
|
||||
(label) div16s::@1
|
||||
(label) div16s::@2
|
||||
(label) div16s::@3
|
||||
@ -1395,25 +1386,22 @@ SYMBOLS
|
||||
(dword) div32u16u::return
|
||||
(signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::divisor)
|
||||
(boolean~) div8s::$0
|
||||
(boolean~) div8s::$1
|
||||
(byte~) div8s::$10
|
||||
(byte~) div8s::$11
|
||||
(boolean~) div8s::$12
|
||||
(boolean~) div8s::$13
|
||||
(byte~) div8s::$1
|
||||
(boolean~) div8s::$10
|
||||
(signed byte~) div8s::$11
|
||||
(signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13
|
||||
(signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16
|
||||
(signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18
|
||||
(signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$2
|
||||
(byte~) div8s::$3
|
||||
(byte~) div8s::$4
|
||||
(boolean~) div8s::$5
|
||||
(boolean~) div8s::$6
|
||||
(signed byte~) div8s::$7
|
||||
(byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9
|
||||
(boolean~) div8s::$4
|
||||
(byte~) div8s::$5
|
||||
(signed byte~) div8s::$6
|
||||
(byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8
|
||||
(byte~) div8s::$9
|
||||
(label) div8s::@1
|
||||
(label) div8s::@2
|
||||
(label) div8s::@3
|
||||
@ -2045,60 +2033,57 @@ div8s: scope:[div8s] from
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) div8s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$0 ← (signed byte) div8s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$1 ← ! (boolean~) div8s::$0
|
||||
if((boolean~) div8s::$1) goto div8s::@1
|
||||
if((boolean~) div8s::$0) goto div8s::@1
|
||||
to:div8s::@7
|
||||
div8s::@1: scope:[div8s] from div8s div8s::@8
|
||||
(byte~) div8s::$4 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$4
|
||||
to:div8s::@2
|
||||
div8s::@7: scope:[div8s] from div8s
|
||||
(signed byte~) div8s::$2 ← - (signed byte) div8s::dividend
|
||||
(byte~) div8s::$3 ← ((byte)) (signed byte~) div8s::$2
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$3
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:div8s::@2
|
||||
div8s::@7: scope:[div8s] from div8s
|
||||
(byte~) div8s::$1 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$1
|
||||
to:div8s::@2
|
||||
div8s::@2: scope:[div8s] from div8s::@1 div8s::@7
|
||||
(byte) div8s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$5 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$6 ← ! (boolean~) div8s::$5
|
||||
if((boolean~) div8s::$6) goto div8s::@3
|
||||
(boolean~) div8s::$4 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$4) goto div8s::@3
|
||||
to:div8s::@9
|
||||
div8s::@8: scope:[div8s] from
|
||||
to:div8s::@1
|
||||
div8s::@3: scope:[div8s] from div8s::@10 div8s::@2
|
||||
(byte~) div8s::$10 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$10
|
||||
(signed byte~) div8s::$6 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$7 ← ((byte)) (signed byte~) div8s::$6
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$8
|
||||
to:div8s::@4
|
||||
div8s::@9: scope:[div8s] from div8s::@2
|
||||
(signed byte~) div8s::$7 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$8 ← ((byte)) (signed byte~) div8s::$7
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$9
|
||||
(byte~) div8s::$5 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$5
|
||||
to:div8s::@4
|
||||
div8s::@4: scope:[div8s] from div8s::@3 div8s::@9
|
||||
(byte~) div8s::$11 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$11
|
||||
(boolean~) div8s::$12 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$13 ← ! (boolean~) div8s::$12
|
||||
if((boolean~) div8s::$13) goto div8s::@5
|
||||
(byte~) div8s::$9 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$9
|
||||
(boolean~) div8s::$10 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$10) goto div8s::@5
|
||||
to:div8s::@11
|
||||
div8s::@10: scope:[div8s] from
|
||||
to:div8s::@3
|
||||
div8s::@5: scope:[div8s] from div8s::@13 div8s::@4
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$17 ← - (signed byte~) div8s::$16
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$19 ← - (signed byte~) div8s::$18
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$16
|
||||
to:div8s::@return
|
||||
div8s::@11: scope:[div8s] from div8s::@4
|
||||
(signed byte~) div8s::$14 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$12 ← - (signed byte~) div8s::$11
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$14 ← - (signed byte~) div8s::$13
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$14
|
||||
to:div8s::@return
|
||||
div8s::@return: scope:[div8s] from div8s::@11 div8s::@5 div8s::@6
|
||||
(signed byte) div8s::return ← (signed byte) div8s::return
|
||||
@ -2119,60 +2104,57 @@ div16s: scope:[div16s] from
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(word) div16s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$0 ← (signed word) div16s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$1 ← ! (boolean~) div16s::$0
|
||||
if((boolean~) div16s::$1) goto div16s::@1
|
||||
if((boolean~) div16s::$0) goto div16s::@1
|
||||
to:div16s::@7
|
||||
div16s::@1: scope:[div16s] from div16s div16s::@8
|
||||
(word~) div16s::$4 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$4
|
||||
to:div16s::@2
|
||||
div16s::@7: scope:[div16s] from div16s
|
||||
(signed word~) div16s::$2 ← - (signed word) div16s::dividend
|
||||
(word~) div16s::$3 ← ((word)) (signed word~) div16s::$2
|
||||
(word) div16s::dividendu ← (word~) div16s::$3
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:div16s::@2
|
||||
div16s::@7: scope:[div16s] from div16s
|
||||
(word~) div16s::$1 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$1
|
||||
to:div16s::@2
|
||||
div16s::@2: scope:[div16s] from div16s::@1 div16s::@7
|
||||
(word) div16s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$5 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$6 ← ! (boolean~) div16s::$5
|
||||
if((boolean~) div16s::$6) goto div16s::@3
|
||||
(boolean~) div16s::$4 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$4) goto div16s::@3
|
||||
to:div16s::@9
|
||||
div16s::@8: scope:[div16s] from
|
||||
to:div16s::@1
|
||||
div16s::@3: scope:[div16s] from div16s::@10 div16s::@2
|
||||
(word~) div16s::$10 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$10
|
||||
(signed word~) div16s::$6 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$7 ← ((word)) (signed word~) div16s::$6
|
||||
(word) div16s::divisoru ← (word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$8
|
||||
to:div16s::@4
|
||||
div16s::@9: scope:[div16s] from div16s::@2
|
||||
(signed word~) div16s::$7 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$8 ← ((word)) (signed word~) div16s::$7
|
||||
(word) div16s::divisoru ← (word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$9
|
||||
(word~) div16s::$5 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$5
|
||||
to:div16s::@4
|
||||
div16s::@4: scope:[div16s] from div16s::@3 div16s::@9
|
||||
(word~) div16s::$11 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$11
|
||||
(boolean~) div16s::$12 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$13 ← ! (boolean~) div16s::$12
|
||||
if((boolean~) div16s::$13) goto div16s::@5
|
||||
(word~) div16s::$9 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$9
|
||||
(boolean~) div16s::$10 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$10) goto div16s::@5
|
||||
to:div16s::@11
|
||||
div16s::@10: scope:[div16s] from
|
||||
to:div16s::@3
|
||||
div16s::@5: scope:[div16s] from div16s::@13 div16s::@4
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$17 ← - (signed word~) div16s::$16
|
||||
(signed word) rem16s ← (signed word~) div16s::$17
|
||||
(signed word~) div16s::$18 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$19 ← - (signed word~) div16s::$18
|
||||
(signed word) div16s::return ← (signed word~) div16s::$19
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$16
|
||||
to:div16s::@return
|
||||
div16s::@11: scope:[div16s] from div16s::@4
|
||||
(signed word~) div16s::$14 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$14
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$11 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$12 ← - (signed word~) div16s::$11
|
||||
(signed word) rem16s ← (signed word~) div16s::$12
|
||||
(signed word~) div16s::$13 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$14 ← - (signed word~) div16s::$13
|
||||
(signed word) div16s::return ← (signed word~) div16s::$14
|
||||
to:div16s::@return
|
||||
div16s::@return: scope:[div16s] from div16s::@11 div16s::@5 div16s::@6
|
||||
(signed word) div16s::return ← (signed word) div16s::return
|
||||
|
@ -619,49 +619,46 @@ proc (signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) div8s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$0 ← (signed byte) div8s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$1 ← ! (boolean~) div8s::$0
|
||||
if((boolean~) div8s::$1) goto div8s::@1
|
||||
if((boolean~) div8s::$0) goto div8s::@1
|
||||
(byte~) div8s::$1 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$1
|
||||
goto div8s::@2
|
||||
div8s::@1:
|
||||
(signed byte~) div8s::$2 ← - (signed byte) div8s::dividend
|
||||
(byte~) div8s::$3 ← ((byte)) (signed byte~) div8s::$2
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$3
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
goto div8s::@2
|
||||
div8s::@1:
|
||||
(byte~) div8s::$4 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$4
|
||||
div8s::@2:
|
||||
(byte) div8s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$5 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$6 ← ! (boolean~) div8s::$5
|
||||
if((boolean~) div8s::$6) goto div8s::@3
|
||||
(signed byte~) div8s::$7 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$8 ← ((byte)) (signed byte~) div8s::$7
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$9
|
||||
(boolean~) div8s::$4 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$4) goto div8s::@3
|
||||
(byte~) div8s::$5 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$5
|
||||
goto div8s::@4
|
||||
div8s::@3:
|
||||
(byte~) div8s::$10 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$10
|
||||
(signed byte~) div8s::$6 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$7 ← ((byte)) (signed byte~) div8s::$6
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$8
|
||||
div8s::@4:
|
||||
(byte~) div8s::$11 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$11
|
||||
(boolean~) div8s::$12 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$13 ← ! (boolean~) div8s::$12
|
||||
if((boolean~) div8s::$13) goto div8s::@5
|
||||
(signed byte~) div8s::$14 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$15
|
||||
(byte~) div8s::$9 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$9
|
||||
(boolean~) div8s::$10 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$10) goto div8s::@5
|
||||
(signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$12 ← - (signed byte~) div8s::$11
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$14 ← - (signed byte~) div8s::$13
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$14
|
||||
goto div8s::@return
|
||||
goto div8s::@6
|
||||
div8s::@5:
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$17 ← - (signed byte~) div8s::$16
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$19 ← - (signed byte~) div8s::$18
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$16
|
||||
goto div8s::@return
|
||||
div8s::@6:
|
||||
div8s::@return:
|
||||
@ -673,49 +670,46 @@ proc (signed word()) div16s((signed word) div16s::dividend , (signed word) div16
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(word) div16s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$0 ← (signed word) div16s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$1 ← ! (boolean~) div16s::$0
|
||||
if((boolean~) div16s::$1) goto div16s::@1
|
||||
if((boolean~) div16s::$0) goto div16s::@1
|
||||
(word~) div16s::$1 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$1
|
||||
goto div16s::@2
|
||||
div16s::@1:
|
||||
(signed word~) div16s::$2 ← - (signed word) div16s::dividend
|
||||
(word~) div16s::$3 ← ((word)) (signed word~) div16s::$2
|
||||
(word) div16s::dividendu ← (word~) div16s::$3
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
goto div16s::@2
|
||||
div16s::@1:
|
||||
(word~) div16s::$4 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$4
|
||||
div16s::@2:
|
||||
(word) div16s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$5 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$6 ← ! (boolean~) div16s::$5
|
||||
if((boolean~) div16s::$6) goto div16s::@3
|
||||
(signed word~) div16s::$7 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$8 ← ((word)) (signed word~) div16s::$7
|
||||
(word) div16s::divisoru ← (word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$9
|
||||
(boolean~) div16s::$4 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$4) goto div16s::@3
|
||||
(word~) div16s::$5 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$5
|
||||
goto div16s::@4
|
||||
div16s::@3:
|
||||
(word~) div16s::$10 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$10
|
||||
(signed word~) div16s::$6 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$7 ← ((word)) (signed word~) div16s::$6
|
||||
(word) div16s::divisoru ← (word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$8
|
||||
div16s::@4:
|
||||
(word~) div16s::$11 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$11
|
||||
(boolean~) div16s::$12 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$13 ← ! (boolean~) div16s::$12
|
||||
if((boolean~) div16s::$13) goto div16s::@5
|
||||
(signed word~) div16s::$14 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$14
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$15
|
||||
(word~) div16s::$9 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$9
|
||||
(boolean~) div16s::$10 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$10) goto div16s::@5
|
||||
(signed word~) div16s::$11 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$12 ← - (signed word~) div16s::$11
|
||||
(signed word) rem16s ← (signed word~) div16s::$12
|
||||
(signed word~) div16s::$13 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$14 ← - (signed word~) div16s::$13
|
||||
(signed word) div16s::return ← (signed word~) div16s::$14
|
||||
goto div16s::@return
|
||||
goto div16s::@6
|
||||
div16s::@5:
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$17 ← - (signed word~) div16s::$16
|
||||
(signed word) rem16s ← (signed word~) div16s::$17
|
||||
(signed word~) div16s::$18 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$19 ← - (signed word~) div16s::$18
|
||||
(signed word) div16s::return ← (signed word~) div16s::$19
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$16
|
||||
goto div16s::@return
|
||||
div16s::@6:
|
||||
div16s::@return:
|
||||
@ -1218,25 +1212,22 @@ SYMBOLS
|
||||
(dword) PI_u4f28
|
||||
(signed word()) div16s((signed word) div16s::dividend , (signed word) div16s::divisor)
|
||||
(boolean~) div16s::$0
|
||||
(boolean~) div16s::$1
|
||||
(word~) div16s::$10
|
||||
(word~) div16s::$11
|
||||
(boolean~) div16s::$12
|
||||
(boolean~) div16s::$13
|
||||
(word~) div16s::$1
|
||||
(boolean~) div16s::$10
|
||||
(signed word~) div16s::$11
|
||||
(signed word~) div16s::$12
|
||||
(signed word~) div16s::$13
|
||||
(signed word~) div16s::$14
|
||||
(signed word~) div16s::$15
|
||||
(signed word~) div16s::$16
|
||||
(signed word~) div16s::$17
|
||||
(signed word~) div16s::$18
|
||||
(signed word~) div16s::$19
|
||||
(signed word~) div16s::$2
|
||||
(word~) div16s::$3
|
||||
(word~) div16s::$4
|
||||
(boolean~) div16s::$5
|
||||
(boolean~) div16s::$6
|
||||
(signed word~) div16s::$7
|
||||
(word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9
|
||||
(boolean~) div16s::$4
|
||||
(word~) div16s::$5
|
||||
(signed word~) div16s::$6
|
||||
(word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8
|
||||
(word~) div16s::$9
|
||||
(label) div16s::@1
|
||||
(label) div16s::@2
|
||||
(label) div16s::@3
|
||||
@ -1271,25 +1262,22 @@ SYMBOLS
|
||||
(dword) div32u16u::return
|
||||
(signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::divisor)
|
||||
(boolean~) div8s::$0
|
||||
(boolean~) div8s::$1
|
||||
(byte~) div8s::$10
|
||||
(byte~) div8s::$11
|
||||
(boolean~) div8s::$12
|
||||
(boolean~) div8s::$13
|
||||
(byte~) div8s::$1
|
||||
(boolean~) div8s::$10
|
||||
(signed byte~) div8s::$11
|
||||
(signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13
|
||||
(signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16
|
||||
(signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18
|
||||
(signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$2
|
||||
(byte~) div8s::$3
|
||||
(byte~) div8s::$4
|
||||
(boolean~) div8s::$5
|
||||
(boolean~) div8s::$6
|
||||
(signed byte~) div8s::$7
|
||||
(byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9
|
||||
(boolean~) div8s::$4
|
||||
(byte~) div8s::$5
|
||||
(signed byte~) div8s::$6
|
||||
(byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8
|
||||
(byte~) div8s::$9
|
||||
(label) div8s::@1
|
||||
(label) div8s::@2
|
||||
(label) div8s::@3
|
||||
@ -1865,60 +1853,57 @@ div8s: scope:[div8s] from
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) div8s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$0 ← (signed byte) div8s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$1 ← ! (boolean~) div8s::$0
|
||||
if((boolean~) div8s::$1) goto div8s::@1
|
||||
if((boolean~) div8s::$0) goto div8s::@1
|
||||
to:div8s::@7
|
||||
div8s::@1: scope:[div8s] from div8s div8s::@8
|
||||
(byte~) div8s::$4 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$4
|
||||
to:div8s::@2
|
||||
div8s::@7: scope:[div8s] from div8s
|
||||
(signed byte~) div8s::$2 ← - (signed byte) div8s::dividend
|
||||
(byte~) div8s::$3 ← ((byte)) (signed byte~) div8s::$2
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$3
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:div8s::@2
|
||||
div8s::@7: scope:[div8s] from div8s
|
||||
(byte~) div8s::$1 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$1
|
||||
to:div8s::@2
|
||||
div8s::@2: scope:[div8s] from div8s::@1 div8s::@7
|
||||
(byte) div8s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$5 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$6 ← ! (boolean~) div8s::$5
|
||||
if((boolean~) div8s::$6) goto div8s::@3
|
||||
(boolean~) div8s::$4 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$4) goto div8s::@3
|
||||
to:div8s::@9
|
||||
div8s::@8: scope:[div8s] from
|
||||
to:div8s::@1
|
||||
div8s::@3: scope:[div8s] from div8s::@10 div8s::@2
|
||||
(byte~) div8s::$10 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$10
|
||||
(signed byte~) div8s::$6 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$7 ← ((byte)) (signed byte~) div8s::$6
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$8
|
||||
to:div8s::@4
|
||||
div8s::@9: scope:[div8s] from div8s::@2
|
||||
(signed byte~) div8s::$7 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$8 ← ((byte)) (signed byte~) div8s::$7
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$9
|
||||
(byte~) div8s::$5 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$5
|
||||
to:div8s::@4
|
||||
div8s::@4: scope:[div8s] from div8s::@3 div8s::@9
|
||||
(byte~) div8s::$11 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$11
|
||||
(boolean~) div8s::$12 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$13 ← ! (boolean~) div8s::$12
|
||||
if((boolean~) div8s::$13) goto div8s::@5
|
||||
(byte~) div8s::$9 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$9
|
||||
(boolean~) div8s::$10 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$10) goto div8s::@5
|
||||
to:div8s::@11
|
||||
div8s::@10: scope:[div8s] from
|
||||
to:div8s::@3
|
||||
div8s::@5: scope:[div8s] from div8s::@13 div8s::@4
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$17 ← - (signed byte~) div8s::$16
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$19 ← - (signed byte~) div8s::$18
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$16
|
||||
to:div8s::@return
|
||||
div8s::@11: scope:[div8s] from div8s::@4
|
||||
(signed byte~) div8s::$14 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$12 ← - (signed byte~) div8s::$11
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$14 ← - (signed byte~) div8s::$13
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$14
|
||||
to:div8s::@return
|
||||
div8s::@return: scope:[div8s] from div8s::@11 div8s::@5 div8s::@6
|
||||
(signed byte) div8s::return ← (signed byte) div8s::return
|
||||
@ -1939,60 +1924,57 @@ div16s: scope:[div16s] from
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(word) div16s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$0 ← (signed word) div16s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$1 ← ! (boolean~) div16s::$0
|
||||
if((boolean~) div16s::$1) goto div16s::@1
|
||||
if((boolean~) div16s::$0) goto div16s::@1
|
||||
to:div16s::@7
|
||||
div16s::@1: scope:[div16s] from div16s div16s::@8
|
||||
(word~) div16s::$4 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$4
|
||||
to:div16s::@2
|
||||
div16s::@7: scope:[div16s] from div16s
|
||||
(signed word~) div16s::$2 ← - (signed word) div16s::dividend
|
||||
(word~) div16s::$3 ← ((word)) (signed word~) div16s::$2
|
||||
(word) div16s::dividendu ← (word~) div16s::$3
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:div16s::@2
|
||||
div16s::@7: scope:[div16s] from div16s
|
||||
(word~) div16s::$1 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$1
|
||||
to:div16s::@2
|
||||
div16s::@2: scope:[div16s] from div16s::@1 div16s::@7
|
||||
(word) div16s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$5 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$6 ← ! (boolean~) div16s::$5
|
||||
if((boolean~) div16s::$6) goto div16s::@3
|
||||
(boolean~) div16s::$4 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$4) goto div16s::@3
|
||||
to:div16s::@9
|
||||
div16s::@8: scope:[div16s] from
|
||||
to:div16s::@1
|
||||
div16s::@3: scope:[div16s] from div16s::@10 div16s::@2
|
||||
(word~) div16s::$10 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$10
|
||||
(signed word~) div16s::$6 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$7 ← ((word)) (signed word~) div16s::$6
|
||||
(word) div16s::divisoru ← (word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$8
|
||||
to:div16s::@4
|
||||
div16s::@9: scope:[div16s] from div16s::@2
|
||||
(signed word~) div16s::$7 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$8 ← ((word)) (signed word~) div16s::$7
|
||||
(word) div16s::divisoru ← (word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$9
|
||||
(word~) div16s::$5 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$5
|
||||
to:div16s::@4
|
||||
div16s::@4: scope:[div16s] from div16s::@3 div16s::@9
|
||||
(word~) div16s::$11 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$11
|
||||
(boolean~) div16s::$12 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$13 ← ! (boolean~) div16s::$12
|
||||
if((boolean~) div16s::$13) goto div16s::@5
|
||||
(word~) div16s::$9 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$9
|
||||
(boolean~) div16s::$10 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$10) goto div16s::@5
|
||||
to:div16s::@11
|
||||
div16s::@10: scope:[div16s] from
|
||||
to:div16s::@3
|
||||
div16s::@5: scope:[div16s] from div16s::@13 div16s::@4
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$17 ← - (signed word~) div16s::$16
|
||||
(signed word) rem16s ← (signed word~) div16s::$17
|
||||
(signed word~) div16s::$18 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$19 ← - (signed word~) div16s::$18
|
||||
(signed word) div16s::return ← (signed word~) div16s::$19
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$16
|
||||
to:div16s::@return
|
||||
div16s::@11: scope:[div16s] from div16s::@4
|
||||
(signed word~) div16s::$14 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$14
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$11 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$12 ← - (signed word~) div16s::$11
|
||||
(signed word) rem16s ← (signed word~) div16s::$12
|
||||
(signed word~) div16s::$13 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$14 ← - (signed word~) div16s::$13
|
||||
(signed word) div16s::return ← (signed word~) div16s::$14
|
||||
to:div16s::@return
|
||||
div16s::@return: scope:[div16s] from div16s::@11 div16s::@5 div16s::@6
|
||||
(signed word) div16s::return ← (signed word) div16s::return
|
||||
|
@ -608,49 +608,46 @@ proc (signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) div8s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$0 ← (signed byte) div8s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$1 ← ! (boolean~) div8s::$0
|
||||
if((boolean~) div8s::$1) goto div8s::@1
|
||||
if((boolean~) div8s::$0) goto div8s::@1
|
||||
(byte~) div8s::$1 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$1
|
||||
goto div8s::@2
|
||||
div8s::@1:
|
||||
(signed byte~) div8s::$2 ← - (signed byte) div8s::dividend
|
||||
(byte~) div8s::$3 ← ((byte)) (signed byte~) div8s::$2
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$3
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
goto div8s::@2
|
||||
div8s::@1:
|
||||
(byte~) div8s::$4 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$4
|
||||
div8s::@2:
|
||||
(byte) div8s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$5 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$6 ← ! (boolean~) div8s::$5
|
||||
if((boolean~) div8s::$6) goto div8s::@3
|
||||
(signed byte~) div8s::$7 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$8 ← ((byte)) (signed byte~) div8s::$7
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$9
|
||||
(boolean~) div8s::$4 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$4) goto div8s::@3
|
||||
(byte~) div8s::$5 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$5
|
||||
goto div8s::@4
|
||||
div8s::@3:
|
||||
(byte~) div8s::$10 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$10
|
||||
(signed byte~) div8s::$6 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$7 ← ((byte)) (signed byte~) div8s::$6
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$8
|
||||
div8s::@4:
|
||||
(byte~) div8s::$11 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$11
|
||||
(boolean~) div8s::$12 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$13 ← ! (boolean~) div8s::$12
|
||||
if((boolean~) div8s::$13) goto div8s::@5
|
||||
(signed byte~) div8s::$14 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$15
|
||||
(byte~) div8s::$9 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$9
|
||||
(boolean~) div8s::$10 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$10) goto div8s::@5
|
||||
(signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$12 ← - (signed byte~) div8s::$11
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$14 ← - (signed byte~) div8s::$13
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$14
|
||||
goto div8s::@return
|
||||
goto div8s::@6
|
||||
div8s::@5:
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$17 ← - (signed byte~) div8s::$16
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$19 ← - (signed byte~) div8s::$18
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$16
|
||||
goto div8s::@return
|
||||
div8s::@6:
|
||||
div8s::@return:
|
||||
@ -662,49 +659,46 @@ proc (signed word()) div16s((signed word) div16s::dividend , (signed word) div16
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(word) div16s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$0 ← (signed word) div16s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$1 ← ! (boolean~) div16s::$0
|
||||
if((boolean~) div16s::$1) goto div16s::@1
|
||||
if((boolean~) div16s::$0) goto div16s::@1
|
||||
(word~) div16s::$1 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$1
|
||||
goto div16s::@2
|
||||
div16s::@1:
|
||||
(signed word~) div16s::$2 ← - (signed word) div16s::dividend
|
||||
(word~) div16s::$3 ← ((word)) (signed word~) div16s::$2
|
||||
(word) div16s::dividendu ← (word~) div16s::$3
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
goto div16s::@2
|
||||
div16s::@1:
|
||||
(word~) div16s::$4 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$4
|
||||
div16s::@2:
|
||||
(word) div16s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$5 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$6 ← ! (boolean~) div16s::$5
|
||||
if((boolean~) div16s::$6) goto div16s::@3
|
||||
(signed word~) div16s::$7 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$8 ← ((word)) (signed word~) div16s::$7
|
||||
(word) div16s::divisoru ← (word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$9
|
||||
(boolean~) div16s::$4 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$4) goto div16s::@3
|
||||
(word~) div16s::$5 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$5
|
||||
goto div16s::@4
|
||||
div16s::@3:
|
||||
(word~) div16s::$10 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$10
|
||||
(signed word~) div16s::$6 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$7 ← ((word)) (signed word~) div16s::$6
|
||||
(word) div16s::divisoru ← (word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$8
|
||||
div16s::@4:
|
||||
(word~) div16s::$11 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$11
|
||||
(boolean~) div16s::$12 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$13 ← ! (boolean~) div16s::$12
|
||||
if((boolean~) div16s::$13) goto div16s::@5
|
||||
(signed word~) div16s::$14 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$14
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$15
|
||||
(word~) div16s::$9 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$9
|
||||
(boolean~) div16s::$10 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$10) goto div16s::@5
|
||||
(signed word~) div16s::$11 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$12 ← - (signed word~) div16s::$11
|
||||
(signed word) rem16s ← (signed word~) div16s::$12
|
||||
(signed word~) div16s::$13 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$14 ← - (signed word~) div16s::$13
|
||||
(signed word) div16s::return ← (signed word~) div16s::$14
|
||||
goto div16s::@return
|
||||
goto div16s::@6
|
||||
div16s::@5:
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$17 ← - (signed word~) div16s::$16
|
||||
(signed word) rem16s ← (signed word~) div16s::$17
|
||||
(signed word~) div16s::$18 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$19 ← - (signed word~) div16s::$18
|
||||
(signed word) div16s::return ← (signed word~) div16s::$19
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$16
|
||||
goto div16s::@return
|
||||
div16s::@6:
|
||||
div16s::@return:
|
||||
@ -1214,25 +1208,22 @@ SYMBOLS
|
||||
(dword) PI_u4f28
|
||||
(signed word()) div16s((signed word) div16s::dividend , (signed word) div16s::divisor)
|
||||
(boolean~) div16s::$0
|
||||
(boolean~) div16s::$1
|
||||
(word~) div16s::$10
|
||||
(word~) div16s::$11
|
||||
(boolean~) div16s::$12
|
||||
(boolean~) div16s::$13
|
||||
(word~) div16s::$1
|
||||
(boolean~) div16s::$10
|
||||
(signed word~) div16s::$11
|
||||
(signed word~) div16s::$12
|
||||
(signed word~) div16s::$13
|
||||
(signed word~) div16s::$14
|
||||
(signed word~) div16s::$15
|
||||
(signed word~) div16s::$16
|
||||
(signed word~) div16s::$17
|
||||
(signed word~) div16s::$18
|
||||
(signed word~) div16s::$19
|
||||
(signed word~) div16s::$2
|
||||
(word~) div16s::$3
|
||||
(word~) div16s::$4
|
||||
(boolean~) div16s::$5
|
||||
(boolean~) div16s::$6
|
||||
(signed word~) div16s::$7
|
||||
(word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9
|
||||
(boolean~) div16s::$4
|
||||
(word~) div16s::$5
|
||||
(signed word~) div16s::$6
|
||||
(word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8
|
||||
(word~) div16s::$9
|
||||
(label) div16s::@1
|
||||
(label) div16s::@2
|
||||
(label) div16s::@3
|
||||
@ -1267,25 +1258,22 @@ SYMBOLS
|
||||
(dword) div32u16u::return
|
||||
(signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::divisor)
|
||||
(boolean~) div8s::$0
|
||||
(boolean~) div8s::$1
|
||||
(byte~) div8s::$10
|
||||
(byte~) div8s::$11
|
||||
(boolean~) div8s::$12
|
||||
(boolean~) div8s::$13
|
||||
(byte~) div8s::$1
|
||||
(boolean~) div8s::$10
|
||||
(signed byte~) div8s::$11
|
||||
(signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13
|
||||
(signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16
|
||||
(signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18
|
||||
(signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$2
|
||||
(byte~) div8s::$3
|
||||
(byte~) div8s::$4
|
||||
(boolean~) div8s::$5
|
||||
(boolean~) div8s::$6
|
||||
(signed byte~) div8s::$7
|
||||
(byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9
|
||||
(boolean~) div8s::$4
|
||||
(byte~) div8s::$5
|
||||
(signed byte~) div8s::$6
|
||||
(byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8
|
||||
(byte~) div8s::$9
|
||||
(label) div8s::@1
|
||||
(label) div8s::@2
|
||||
(label) div8s::@3
|
||||
@ -1868,60 +1856,57 @@ div8s: scope:[div8s] from
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) div8s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$0 ← (signed byte) div8s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$1 ← ! (boolean~) div8s::$0
|
||||
if((boolean~) div8s::$1) goto div8s::@1
|
||||
if((boolean~) div8s::$0) goto div8s::@1
|
||||
to:div8s::@7
|
||||
div8s::@1: scope:[div8s] from div8s div8s::@8
|
||||
(byte~) div8s::$4 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$4
|
||||
to:div8s::@2
|
||||
div8s::@7: scope:[div8s] from div8s
|
||||
(signed byte~) div8s::$2 ← - (signed byte) div8s::dividend
|
||||
(byte~) div8s::$3 ← ((byte)) (signed byte~) div8s::$2
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$3
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:div8s::@2
|
||||
div8s::@7: scope:[div8s] from div8s
|
||||
(byte~) div8s::$1 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$1
|
||||
to:div8s::@2
|
||||
div8s::@2: scope:[div8s] from div8s::@1 div8s::@7
|
||||
(byte) div8s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$5 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$6 ← ! (boolean~) div8s::$5
|
||||
if((boolean~) div8s::$6) goto div8s::@3
|
||||
(boolean~) div8s::$4 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$4) goto div8s::@3
|
||||
to:div8s::@9
|
||||
div8s::@8: scope:[div8s] from
|
||||
to:div8s::@1
|
||||
div8s::@3: scope:[div8s] from div8s::@10 div8s::@2
|
||||
(byte~) div8s::$10 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$10
|
||||
(signed byte~) div8s::$6 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$7 ← ((byte)) (signed byte~) div8s::$6
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$8
|
||||
to:div8s::@4
|
||||
div8s::@9: scope:[div8s] from div8s::@2
|
||||
(signed byte~) div8s::$7 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$8 ← ((byte)) (signed byte~) div8s::$7
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$9
|
||||
(byte~) div8s::$5 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$5
|
||||
to:div8s::@4
|
||||
div8s::@4: scope:[div8s] from div8s::@3 div8s::@9
|
||||
(byte~) div8s::$11 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$11
|
||||
(boolean~) div8s::$12 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$13 ← ! (boolean~) div8s::$12
|
||||
if((boolean~) div8s::$13) goto div8s::@5
|
||||
(byte~) div8s::$9 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$9
|
||||
(boolean~) div8s::$10 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$10) goto div8s::@5
|
||||
to:div8s::@11
|
||||
div8s::@10: scope:[div8s] from
|
||||
to:div8s::@3
|
||||
div8s::@5: scope:[div8s] from div8s::@13 div8s::@4
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$17 ← - (signed byte~) div8s::$16
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$19 ← - (signed byte~) div8s::$18
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$16
|
||||
to:div8s::@return
|
||||
div8s::@11: scope:[div8s] from div8s::@4
|
||||
(signed byte~) div8s::$14 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$12 ← - (signed byte~) div8s::$11
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$14 ← - (signed byte~) div8s::$13
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$14
|
||||
to:div8s::@return
|
||||
div8s::@return: scope:[div8s] from div8s::@11 div8s::@5 div8s::@6
|
||||
(signed byte) div8s::return ← (signed byte) div8s::return
|
||||
@ -1942,60 +1927,57 @@ div16s: scope:[div16s] from
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(word) div16s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$0 ← (signed word) div16s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$1 ← ! (boolean~) div16s::$0
|
||||
if((boolean~) div16s::$1) goto div16s::@1
|
||||
if((boolean~) div16s::$0) goto div16s::@1
|
||||
to:div16s::@7
|
||||
div16s::@1: scope:[div16s] from div16s div16s::@8
|
||||
(word~) div16s::$4 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$4
|
||||
to:div16s::@2
|
||||
div16s::@7: scope:[div16s] from div16s
|
||||
(signed word~) div16s::$2 ← - (signed word) div16s::dividend
|
||||
(word~) div16s::$3 ← ((word)) (signed word~) div16s::$2
|
||||
(word) div16s::dividendu ← (word~) div16s::$3
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:div16s::@2
|
||||
div16s::@7: scope:[div16s] from div16s
|
||||
(word~) div16s::$1 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$1
|
||||
to:div16s::@2
|
||||
div16s::@2: scope:[div16s] from div16s::@1 div16s::@7
|
||||
(word) div16s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$5 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$6 ← ! (boolean~) div16s::$5
|
||||
if((boolean~) div16s::$6) goto div16s::@3
|
||||
(boolean~) div16s::$4 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$4) goto div16s::@3
|
||||
to:div16s::@9
|
||||
div16s::@8: scope:[div16s] from
|
||||
to:div16s::@1
|
||||
div16s::@3: scope:[div16s] from div16s::@10 div16s::@2
|
||||
(word~) div16s::$10 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$10
|
||||
(signed word~) div16s::$6 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$7 ← ((word)) (signed word~) div16s::$6
|
||||
(word) div16s::divisoru ← (word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$8
|
||||
to:div16s::@4
|
||||
div16s::@9: scope:[div16s] from div16s::@2
|
||||
(signed word~) div16s::$7 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$8 ← ((word)) (signed word~) div16s::$7
|
||||
(word) div16s::divisoru ← (word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$9
|
||||
(word~) div16s::$5 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$5
|
||||
to:div16s::@4
|
||||
div16s::@4: scope:[div16s] from div16s::@3 div16s::@9
|
||||
(word~) div16s::$11 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$11
|
||||
(boolean~) div16s::$12 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$13 ← ! (boolean~) div16s::$12
|
||||
if((boolean~) div16s::$13) goto div16s::@5
|
||||
(word~) div16s::$9 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$9
|
||||
(boolean~) div16s::$10 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$10) goto div16s::@5
|
||||
to:div16s::@11
|
||||
div16s::@10: scope:[div16s] from
|
||||
to:div16s::@3
|
||||
div16s::@5: scope:[div16s] from div16s::@13 div16s::@4
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$17 ← - (signed word~) div16s::$16
|
||||
(signed word) rem16s ← (signed word~) div16s::$17
|
||||
(signed word~) div16s::$18 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$19 ← - (signed word~) div16s::$18
|
||||
(signed word) div16s::return ← (signed word~) div16s::$19
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$16
|
||||
to:div16s::@return
|
||||
div16s::@11: scope:[div16s] from div16s::@4
|
||||
(signed word~) div16s::$14 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$14
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$11 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$12 ← - (signed word~) div16s::$11
|
||||
(signed word) rem16s ← (signed word~) div16s::$12
|
||||
(signed word~) div16s::$13 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$14 ← - (signed word~) div16s::$13
|
||||
(signed word) div16s::return ← (signed word~) div16s::$14
|
||||
to:div16s::@return
|
||||
div16s::@return: scope:[div16s] from div16s::@11 div16s::@5 div16s::@6
|
||||
(signed word) div16s::return ← (signed word) div16s::return
|
||||
|
@ -655,49 +655,46 @@ proc (signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) div8s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$0 ← (signed byte) div8s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$1 ← ! (boolean~) div8s::$0
|
||||
if((boolean~) div8s::$1) goto div8s::@1
|
||||
if((boolean~) div8s::$0) goto div8s::@1
|
||||
(byte~) div8s::$1 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$1
|
||||
goto div8s::@2
|
||||
div8s::@1:
|
||||
(signed byte~) div8s::$2 ← - (signed byte) div8s::dividend
|
||||
(byte~) div8s::$3 ← ((byte)) (signed byte~) div8s::$2
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$3
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
goto div8s::@2
|
||||
div8s::@1:
|
||||
(byte~) div8s::$4 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$4
|
||||
div8s::@2:
|
||||
(byte) div8s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$5 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$6 ← ! (boolean~) div8s::$5
|
||||
if((boolean~) div8s::$6) goto div8s::@3
|
||||
(signed byte~) div8s::$7 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$8 ← ((byte)) (signed byte~) div8s::$7
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$9
|
||||
(boolean~) div8s::$4 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$4) goto div8s::@3
|
||||
(byte~) div8s::$5 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$5
|
||||
goto div8s::@4
|
||||
div8s::@3:
|
||||
(byte~) div8s::$10 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$10
|
||||
(signed byte~) div8s::$6 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$7 ← ((byte)) (signed byte~) div8s::$6
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$8
|
||||
div8s::@4:
|
||||
(byte~) div8s::$11 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$11
|
||||
(boolean~) div8s::$12 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$13 ← ! (boolean~) div8s::$12
|
||||
if((boolean~) div8s::$13) goto div8s::@5
|
||||
(signed byte~) div8s::$14 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$15
|
||||
(byte~) div8s::$9 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$9
|
||||
(boolean~) div8s::$10 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$10) goto div8s::@5
|
||||
(signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$12 ← - (signed byte~) div8s::$11
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$14 ← - (signed byte~) div8s::$13
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$14
|
||||
goto div8s::@return
|
||||
goto div8s::@6
|
||||
div8s::@5:
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$17 ← - (signed byte~) div8s::$16
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$19 ← - (signed byte~) div8s::$18
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$16
|
||||
goto div8s::@return
|
||||
div8s::@6:
|
||||
div8s::@return:
|
||||
@ -709,49 +706,46 @@ proc (signed word()) div16s((signed word) div16s::dividend , (signed word) div16
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(word) div16s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$0 ← (signed word) div16s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$1 ← ! (boolean~) div16s::$0
|
||||
if((boolean~) div16s::$1) goto div16s::@1
|
||||
if((boolean~) div16s::$0) goto div16s::@1
|
||||
(word~) div16s::$1 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$1
|
||||
goto div16s::@2
|
||||
div16s::@1:
|
||||
(signed word~) div16s::$2 ← - (signed word) div16s::dividend
|
||||
(word~) div16s::$3 ← ((word)) (signed word~) div16s::$2
|
||||
(word) div16s::dividendu ← (word~) div16s::$3
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
goto div16s::@2
|
||||
div16s::@1:
|
||||
(word~) div16s::$4 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$4
|
||||
div16s::@2:
|
||||
(word) div16s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$5 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$6 ← ! (boolean~) div16s::$5
|
||||
if((boolean~) div16s::$6) goto div16s::@3
|
||||
(signed word~) div16s::$7 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$8 ← ((word)) (signed word~) div16s::$7
|
||||
(word) div16s::divisoru ← (word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$9
|
||||
(boolean~) div16s::$4 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$4) goto div16s::@3
|
||||
(word~) div16s::$5 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$5
|
||||
goto div16s::@4
|
||||
div16s::@3:
|
||||
(word~) div16s::$10 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$10
|
||||
(signed word~) div16s::$6 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$7 ← ((word)) (signed word~) div16s::$6
|
||||
(word) div16s::divisoru ← (word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$8
|
||||
div16s::@4:
|
||||
(word~) div16s::$11 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$11
|
||||
(boolean~) div16s::$12 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$13 ← ! (boolean~) div16s::$12
|
||||
if((boolean~) div16s::$13) goto div16s::@5
|
||||
(signed word~) div16s::$14 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$14
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$15
|
||||
(word~) div16s::$9 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$9
|
||||
(boolean~) div16s::$10 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$10) goto div16s::@5
|
||||
(signed word~) div16s::$11 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$12 ← - (signed word~) div16s::$11
|
||||
(signed word) rem16s ← (signed word~) div16s::$12
|
||||
(signed word~) div16s::$13 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$14 ← - (signed word~) div16s::$13
|
||||
(signed word) div16s::return ← (signed word~) div16s::$14
|
||||
goto div16s::@return
|
||||
goto div16s::@6
|
||||
div16s::@5:
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$17 ← - (signed word~) div16s::$16
|
||||
(signed word) rem16s ← (signed word~) div16s::$17
|
||||
(signed word~) div16s::$18 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$19 ← - (signed word~) div16s::$18
|
||||
(signed word) div16s::return ← (signed word~) div16s::$19
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$16
|
||||
goto div16s::@return
|
||||
div16s::@6:
|
||||
div16s::@return:
|
||||
@ -1291,25 +1285,22 @@ SYMBOLS
|
||||
(dword) PI_u4f28
|
||||
(signed word()) div16s((signed word) div16s::dividend , (signed word) div16s::divisor)
|
||||
(boolean~) div16s::$0
|
||||
(boolean~) div16s::$1
|
||||
(word~) div16s::$10
|
||||
(word~) div16s::$11
|
||||
(boolean~) div16s::$12
|
||||
(boolean~) div16s::$13
|
||||
(word~) div16s::$1
|
||||
(boolean~) div16s::$10
|
||||
(signed word~) div16s::$11
|
||||
(signed word~) div16s::$12
|
||||
(signed word~) div16s::$13
|
||||
(signed word~) div16s::$14
|
||||
(signed word~) div16s::$15
|
||||
(signed word~) div16s::$16
|
||||
(signed word~) div16s::$17
|
||||
(signed word~) div16s::$18
|
||||
(signed word~) div16s::$19
|
||||
(signed word~) div16s::$2
|
||||
(word~) div16s::$3
|
||||
(word~) div16s::$4
|
||||
(boolean~) div16s::$5
|
||||
(boolean~) div16s::$6
|
||||
(signed word~) div16s::$7
|
||||
(word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9
|
||||
(boolean~) div16s::$4
|
||||
(word~) div16s::$5
|
||||
(signed word~) div16s::$6
|
||||
(word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8
|
||||
(word~) div16s::$9
|
||||
(label) div16s::@1
|
||||
(label) div16s::@2
|
||||
(label) div16s::@3
|
||||
@ -1344,25 +1335,22 @@ SYMBOLS
|
||||
(dword) div32u16u::return
|
||||
(signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::divisor)
|
||||
(boolean~) div8s::$0
|
||||
(boolean~) div8s::$1
|
||||
(byte~) div8s::$10
|
||||
(byte~) div8s::$11
|
||||
(boolean~) div8s::$12
|
||||
(boolean~) div8s::$13
|
||||
(byte~) div8s::$1
|
||||
(boolean~) div8s::$10
|
||||
(signed byte~) div8s::$11
|
||||
(signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13
|
||||
(signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16
|
||||
(signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18
|
||||
(signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$2
|
||||
(byte~) div8s::$3
|
||||
(byte~) div8s::$4
|
||||
(boolean~) div8s::$5
|
||||
(boolean~) div8s::$6
|
||||
(signed byte~) div8s::$7
|
||||
(byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9
|
||||
(boolean~) div8s::$4
|
||||
(byte~) div8s::$5
|
||||
(signed byte~) div8s::$6
|
||||
(byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8
|
||||
(byte~) div8s::$9
|
||||
(label) div8s::@1
|
||||
(label) div8s::@2
|
||||
(label) div8s::@3
|
||||
@ -1975,60 +1963,57 @@ div8s: scope:[div8s] from
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) div8s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$0 ← (signed byte) div8s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$1 ← ! (boolean~) div8s::$0
|
||||
if((boolean~) div8s::$1) goto div8s::@1
|
||||
if((boolean~) div8s::$0) goto div8s::@1
|
||||
to:div8s::@7
|
||||
div8s::@1: scope:[div8s] from div8s div8s::@8
|
||||
(byte~) div8s::$4 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$4
|
||||
to:div8s::@2
|
||||
div8s::@7: scope:[div8s] from div8s
|
||||
(signed byte~) div8s::$2 ← - (signed byte) div8s::dividend
|
||||
(byte~) div8s::$3 ← ((byte)) (signed byte~) div8s::$2
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$3
|
||||
(byte) div8s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:div8s::@2
|
||||
div8s::@7: scope:[div8s] from div8s
|
||||
(byte~) div8s::$1 ← ((byte)) (signed byte) div8s::dividend
|
||||
(byte) div8s::dividendu ← (byte~) div8s::$1
|
||||
to:div8s::@2
|
||||
div8s::@2: scope:[div8s] from div8s::@1 div8s::@7
|
||||
(byte) div8s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$5 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$6 ← ! (boolean~) div8s::$5
|
||||
if((boolean~) div8s::$6) goto div8s::@3
|
||||
(boolean~) div8s::$4 ← (signed byte) div8s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$4) goto div8s::@3
|
||||
to:div8s::@9
|
||||
div8s::@8: scope:[div8s] from
|
||||
to:div8s::@1
|
||||
div8s::@3: scope:[div8s] from div8s::@10 div8s::@2
|
||||
(byte~) div8s::$10 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$10
|
||||
(signed byte~) div8s::$6 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$7 ← ((byte)) (signed byte~) div8s::$6
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$7
|
||||
(byte/word/dword~) div8s::$8 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$8
|
||||
to:div8s::@4
|
||||
div8s::@9: scope:[div8s] from div8s::@2
|
||||
(signed byte~) div8s::$7 ← - (signed byte) div8s::divisor
|
||||
(byte~) div8s::$8 ← ((byte)) (signed byte~) div8s::$7
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$8
|
||||
(byte/word/dword~) div8s::$9 ← (byte) div8s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div8s::neg ← (byte/word/dword~) div8s::$9
|
||||
(byte~) div8s::$5 ← ((byte)) (signed byte) div8s::divisor
|
||||
(byte) div8s::divisoru ← (byte~) div8s::$5
|
||||
to:div8s::@4
|
||||
div8s::@4: scope:[div8s] from div8s::@3 div8s::@9
|
||||
(byte~) div8s::$11 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$11
|
||||
(boolean~) div8s::$12 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div8s::$13 ← ! (boolean~) div8s::$12
|
||||
if((boolean~) div8s::$13) goto div8s::@5
|
||||
(byte~) div8s::$9 ← call div8u (byte) div8s::dividendu (byte) div8s::divisoru
|
||||
(byte) div8s::resultu ← (byte~) div8s::$9
|
||||
(boolean~) div8s::$10 ← (byte) div8s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div8s::$10) goto div8s::@5
|
||||
to:div8s::@11
|
||||
div8s::@10: scope:[div8s] from
|
||||
to:div8s::@3
|
||||
div8s::@5: scope:[div8s] from div8s::@13 div8s::@4
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$17 ← - (signed byte~) div8s::$16
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$17
|
||||
(signed byte~) div8s::$18 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$19 ← - (signed byte~) div8s::$18
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$19
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$16 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$16
|
||||
to:div8s::@return
|
||||
div8s::@11: scope:[div8s] from div8s::@4
|
||||
(signed byte~) div8s::$14 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$14
|
||||
(signed byte~) div8s::$15 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$15
|
||||
(signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u
|
||||
(signed byte~) div8s::$12 ← - (signed byte~) div8s::$11
|
||||
(signed byte) rem8s ← (signed byte~) div8s::$12
|
||||
(signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu
|
||||
(signed byte~) div8s::$14 ← - (signed byte~) div8s::$13
|
||||
(signed byte) div8s::return ← (signed byte~) div8s::$14
|
||||
to:div8s::@return
|
||||
div8s::@return: scope:[div8s] from div8s::@11 div8s::@5 div8s::@6
|
||||
(signed byte) div8s::return ← (signed byte) div8s::return
|
||||
@ -2049,60 +2034,57 @@ div16s: scope:[div16s] from
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(word) div16s::dividendu ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$0 ← (signed word) div16s::dividend < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$1 ← ! (boolean~) div16s::$0
|
||||
if((boolean~) div16s::$1) goto div16s::@1
|
||||
if((boolean~) div16s::$0) goto div16s::@1
|
||||
to:div16s::@7
|
||||
div16s::@1: scope:[div16s] from div16s div16s::@8
|
||||
(word~) div16s::$4 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$4
|
||||
to:div16s::@2
|
||||
div16s::@7: scope:[div16s] from div16s
|
||||
(signed word~) div16s::$2 ← - (signed word) div16s::dividend
|
||||
(word~) div16s::$3 ← ((word)) (signed word~) div16s::$2
|
||||
(word) div16s::dividendu ← (word~) div16s::$3
|
||||
(byte) div16s::neg ← (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
to:div16s::@2
|
||||
div16s::@7: scope:[div16s] from div16s
|
||||
(word~) div16s::$1 ← ((word)) (signed word) div16s::dividend
|
||||
(word) div16s::dividendu ← (word~) div16s::$1
|
||||
to:div16s::@2
|
||||
div16s::@2: scope:[div16s] from div16s::@1 div16s::@7
|
||||
(word) div16s::divisoru ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$5 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$6 ← ! (boolean~) div16s::$5
|
||||
if((boolean~) div16s::$6) goto div16s::@3
|
||||
(boolean~) div16s::$4 ← (signed word) div16s::divisor < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$4) goto div16s::@3
|
||||
to:div16s::@9
|
||||
div16s::@8: scope:[div16s] from
|
||||
to:div16s::@1
|
||||
div16s::@3: scope:[div16s] from div16s::@10 div16s::@2
|
||||
(word~) div16s::$10 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$10
|
||||
(signed word~) div16s::$6 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$7 ← ((word)) (signed word~) div16s::$6
|
||||
(word) div16s::divisoru ← (word~) div16s::$7
|
||||
(byte/word/dword~) div16s::$8 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$8
|
||||
to:div16s::@4
|
||||
div16s::@9: scope:[div16s] from div16s::@2
|
||||
(signed word~) div16s::$7 ← - (signed word) div16s::divisor
|
||||
(word~) div16s::$8 ← ((word)) (signed word~) div16s::$7
|
||||
(word) div16s::divisoru ← (word~) div16s::$8
|
||||
(byte/word/dword~) div16s::$9 ← (byte) div16s::neg ^ (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(byte) div16s::neg ← (byte/word/dword~) div16s::$9
|
||||
(word~) div16s::$5 ← ((word)) (signed word) div16s::divisor
|
||||
(word) div16s::divisoru ← (word~) div16s::$5
|
||||
to:div16s::@4
|
||||
div16s::@4: scope:[div16s] from div16s::@3 div16s::@9
|
||||
(word~) div16s::$11 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$11
|
||||
(boolean~) div16s::$12 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) div16s::$13 ← ! (boolean~) div16s::$12
|
||||
if((boolean~) div16s::$13) goto div16s::@5
|
||||
(word~) div16s::$9 ← call div16u (word) div16s::dividendu (word) div16s::divisoru
|
||||
(word) div16s::resultu ← (word~) div16s::$9
|
||||
(boolean~) div16s::$10 ← (byte) div16s::neg == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
if((boolean~) div16s::$10) goto div16s::@5
|
||||
to:div16s::@11
|
||||
div16s::@10: scope:[div16s] from
|
||||
to:div16s::@3
|
||||
div16s::@5: scope:[div16s] from div16s::@13 div16s::@4
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$17 ← - (signed word~) div16s::$16
|
||||
(signed word) rem16s ← (signed word~) div16s::$17
|
||||
(signed word~) div16s::$18 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$19 ← - (signed word~) div16s::$18
|
||||
(signed word) div16s::return ← (signed word~) div16s::$19
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$16 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$16
|
||||
to:div16s::@return
|
||||
div16s::@11: scope:[div16s] from div16s::@4
|
||||
(signed word~) div16s::$14 ← ((signed word)) (word) rem16u
|
||||
(signed word) rem16s ← (signed word~) div16s::$14
|
||||
(signed word~) div16s::$15 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word) div16s::return ← (signed word~) div16s::$15
|
||||
(signed word~) div16s::$11 ← ((signed word)) (word) rem16u
|
||||
(signed word~) div16s::$12 ← - (signed word~) div16s::$11
|
||||
(signed word) rem16s ← (signed word~) div16s::$12
|
||||
(signed word~) div16s::$13 ← ((signed word)) (word) div16s::resultu
|
||||
(signed word~) div16s::$14 ← - (signed word~) div16s::$13
|
||||
(signed word) div16s::return ← (signed word~) div16s::$14
|
||||
to:div16s::@return
|
||||
div16s::@return: scope:[div16s] from div16s::@11 div16s::@5 div16s::@6
|
||||
(signed word) div16s::return ← (signed word) div16s::return
|
||||
|
@ -189,7 +189,7 @@ print_str: {
|
||||
}
|
||||
div16s: {
|
||||
.label _2 = 8
|
||||
.label _7 = $a
|
||||
.label _6 = $a
|
||||
.label resultu = $c
|
||||
.label return = $c
|
||||
.label dividend = 8
|
||||
@ -197,39 +197,15 @@ div16s: {
|
||||
.label dividendu = 8
|
||||
.label divisoru = $a
|
||||
lda dividend+1
|
||||
bpl b16
|
||||
sec
|
||||
lda _2
|
||||
eor #$ff
|
||||
adc #0
|
||||
sta _2
|
||||
lda _2+1
|
||||
eor #$ff
|
||||
adc #0
|
||||
sta _2+1
|
||||
ldy #1
|
||||
bmi b1
|
||||
ldy #0
|
||||
b2:
|
||||
lda divisor+1
|
||||
bpl b4
|
||||
sec
|
||||
lda _7
|
||||
eor #$ff
|
||||
adc #0
|
||||
sta _7
|
||||
lda _7+1
|
||||
eor #$ff
|
||||
adc #0
|
||||
sta _7+1
|
||||
tya
|
||||
eor #1
|
||||
tay
|
||||
bmi b3
|
||||
b4:
|
||||
jsr div16u
|
||||
cpy #0
|
||||
bne b5
|
||||
breturn:
|
||||
rts
|
||||
b5:
|
||||
beq breturn
|
||||
sec
|
||||
lda rem16s
|
||||
eor #$ff
|
||||
@ -248,9 +224,33 @@ div16s: {
|
||||
eor #$ff
|
||||
adc #0
|
||||
sta return+1
|
||||
jmp breturn
|
||||
b16:
|
||||
ldy #0
|
||||
breturn:
|
||||
rts
|
||||
b3:
|
||||
sec
|
||||
lda _6
|
||||
eor #$ff
|
||||
adc #0
|
||||
sta _6
|
||||
lda _6+1
|
||||
eor #$ff
|
||||
adc #0
|
||||
sta _6+1
|
||||
tya
|
||||
eor #1
|
||||
tay
|
||||
jmp b4
|
||||
b1:
|
||||
sec
|
||||
lda _2
|
||||
eor #$ff
|
||||
adc #0
|
||||
sta _2
|
||||
lda _2+1
|
||||
eor #$ff
|
||||
adc #0
|
||||
sta _2+1
|
||||
ldy #1
|
||||
jmp b2
|
||||
}
|
||||
div16u: {
|
||||
@ -388,17 +388,33 @@ print_sbyte: {
|
||||
div8s: {
|
||||
.label neg = $10
|
||||
cpy #0
|
||||
bpl b16
|
||||
bmi b1
|
||||
lda #0
|
||||
sta neg
|
||||
b2:
|
||||
cpx #0
|
||||
bmi b3
|
||||
b4:
|
||||
tya
|
||||
jsr div8u
|
||||
tay
|
||||
lda neg
|
||||
beq b18
|
||||
txa
|
||||
eor #$ff
|
||||
clc
|
||||
adc #1
|
||||
tax
|
||||
tya
|
||||
eor #$ff
|
||||
clc
|
||||
adc #1
|
||||
tay
|
||||
lda #1
|
||||
sta neg
|
||||
b2:
|
||||
cpx #0
|
||||
bpl b4
|
||||
breturn:
|
||||
rts
|
||||
b18:
|
||||
tya
|
||||
jmp breturn
|
||||
b3:
|
||||
txa
|
||||
eor #$ff
|
||||
clc
|
||||
@ -407,28 +423,14 @@ div8s: {
|
||||
lda neg
|
||||
eor #1
|
||||
sta neg
|
||||
b4:
|
||||
jmp b4
|
||||
b1:
|
||||
tya
|
||||
jsr div8u
|
||||
eor #$ff
|
||||
clc
|
||||
adc #1
|
||||
tay
|
||||
lda neg
|
||||
bne b5
|
||||
tya
|
||||
breturn:
|
||||
rts
|
||||
b5:
|
||||
txa
|
||||
eor #$ff
|
||||
clc
|
||||
adc #1
|
||||
tax
|
||||
tya
|
||||
eor #$ff
|
||||
clc
|
||||
adc #1
|
||||
jmp breturn
|
||||
b16:
|
||||
lda #0
|
||||
lda #1
|
||||
sta neg
|
||||
jmp b2
|
||||
}
|
||||
|
@ -169,104 +169,104 @@ print_str::@2: scope:[print_str] from print_str::@1
|
||||
[82] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#13 [ print_str::str#0 print_char_cursor#1 ] ( main:2::test_16s:13::print_str:28 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#3 print_str::str#0 print_char_cursor#1 ] main:2::test_16s:13::print_str:32 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#3 print_str::str#0 print_char_cursor#1 ] main:2::test_16s:13::print_str:36 [ test_16s::i#10 print_line_cursor#1 rem16s#3 print_str::str#0 print_char_cursor#1 ] main:2::test_8s:11::print_str:144 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_str::str#0 print_char_cursor#1 ] main:2::test_8s:11::print_str:148 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_str::str#0 print_char_cursor#1 ] main:2::test_8s:11::print_str:152 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_str::str#0 print_char_cursor#1 ] main:2::test_16u:9::print_str:229 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_str::str#0 print_char_cursor#1 ] main:2::test_16u:9::print_str:233 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_str::str#0 print_char_cursor#1 ] main:2::test_16u:9::print_str:237 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_str::str#0 print_char_cursor#1 ] main:2::test_8u:7::print_str:257 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_str::str#0 print_char_cursor#1 ] main:2::test_8u:7::print_str:261 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_str::str#0 print_char_cursor#1 ] main:2::test_8u:7::print_str:265 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_str::str#0 print_char_cursor#1 ] )
|
||||
to:print_str::@1
|
||||
div16s: scope:[div16s] from test_16s::@1
|
||||
[83] if((signed word) div16s::dividend#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div16s::@16 [ div16s::dividend#0 div16s::divisor#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::dividend#0 div16s::divisor#0 ] )
|
||||
to:div16s::@7
|
||||
div16s::@7: scope:[div16s] from div16s
|
||||
[84] (signed word~) div16s::$2 ← - (signed word) div16s::dividend#0 [ div16s::divisor#0 div16s::$2 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 div16s::$2 ] )
|
||||
[85] (word~) div16s::dividendu#8 ← (word)(signed word~) div16s::$2 [ div16s::divisor#0 div16s::dividendu#8 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 div16s::dividendu#8 ] )
|
||||
[83] if((signed word) div16s::dividend#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto div16s::@1 [ div16s::dividend#0 div16s::divisor#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::dividend#0 div16s::divisor#0 ] )
|
||||
to:div16s::@16
|
||||
div16s::@16: scope:[div16s] from div16s
|
||||
[84] (word~) div16s::dividendu#8 ← (word)(signed word) div16s::dividend#0 [ div16s::divisor#0 div16s::dividendu#8 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 div16s::dividendu#8 ] )
|
||||
to:div16s::@2
|
||||
div16s::@2: scope:[div16s] from div16s::@16 div16s::@7
|
||||
[86] (word) div16s::dividendu#3 ← phi( div16s::@16/(word~) div16s::dividendu#7 div16s::@7/(word~) div16s::dividendu#8 ) [ div16s::divisor#0 div16s::neg#3 div16s::dividendu#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 div16s::neg#3 div16s::dividendu#3 ] )
|
||||
[86] (byte) div16s::neg#3 ← phi( div16s::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 div16s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ div16s::divisor#0 div16s::neg#3 div16s::dividendu#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 div16s::neg#3 div16s::dividendu#3 ] )
|
||||
[87] if((signed word) div16s::divisor#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div16s::@17 [ div16s::divisor#0 div16s::neg#3 div16s::dividendu#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 div16s::neg#3 div16s::dividendu#3 ] )
|
||||
to:div16s::@9
|
||||
div16s::@9: scope:[div16s] from div16s::@2
|
||||
[88] (signed word~) div16s::$7 ← - (signed word) div16s::divisor#0 [ div16s::neg#3 div16s::dividendu#3 div16s::$7 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#3 div16s::dividendu#3 div16s::$7 ] )
|
||||
[89] (byte) div16s::neg#2 ← (byte) div16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16s::dividendu#3 div16s::$7 div16s::neg#2 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::dividendu#3 div16s::$7 div16s::neg#2 ] )
|
||||
[90] (word~) div16s::divisoru#5 ← (word)(signed word~) div16s::$7 [ div16s::dividendu#3 div16s::neg#2 div16s::divisoru#5 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::dividendu#3 div16s::neg#2 div16s::divisoru#5 ] )
|
||||
div16s::@2: scope:[div16s] from div16s::@1 div16s::@16
|
||||
[85] (word) div16s::dividendu#3 ← phi( div16s::@1/(word~) div16s::dividendu#7 div16s::@16/(word~) div16s::dividendu#8 ) [ div16s::divisor#0 div16s::neg#3 div16s::dividendu#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 div16s::neg#3 div16s::dividendu#3 ] )
|
||||
[85] (byte) div16s::neg#3 ← phi( div16s::@1/(byte/signed byte/word/signed word/dword/signed dword) 1 div16s::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ div16s::divisor#0 div16s::neg#3 div16s::dividendu#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 div16s::neg#3 div16s::dividendu#3 ] )
|
||||
[86] if((signed word) div16s::divisor#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto div16s::@3 [ div16s::divisor#0 div16s::neg#3 div16s::dividendu#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 div16s::neg#3 div16s::dividendu#3 ] )
|
||||
to:div16s::@17
|
||||
div16s::@17: scope:[div16s] from div16s::@2
|
||||
[87] (word~) div16s::divisoru#5 ← (word)(signed word) div16s::divisor#0 [ div16s::neg#3 div16s::dividendu#3 div16s::divisoru#5 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#3 div16s::dividendu#3 div16s::divisoru#5 ] )
|
||||
to:div16s::@4
|
||||
div16s::@4: scope:[div16s] from div16s::@17 div16s::@9
|
||||
[91] (byte) div16s::neg#4 ← phi( div16s::@17/(byte) div16s::neg#3 div16s::@9/(byte) div16s::neg#2 ) [ div16s::dividendu#3 div16s::divisoru#3 div16s::neg#4 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::dividendu#3 div16s::divisoru#3 div16s::neg#4 ] )
|
||||
[91] (word) div16s::divisoru#3 ← phi( div16s::@17/(word~) div16s::divisoru#4 div16s::@9/(word~) div16s::divisoru#5 ) [ div16s::dividendu#3 div16s::divisoru#3 div16s::neg#4 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::dividendu#3 div16s::divisoru#3 div16s::neg#4 ] )
|
||||
[92] (word) div16u::dividend#0 ← (word) div16s::dividendu#3 [ div16s::divisoru#3 div16s::neg#4 div16u::dividend#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisoru#3 div16s::neg#4 div16u::dividend#0 ] )
|
||||
[93] (word) div16u::divisor#0 ← (word) div16s::divisoru#3 [ div16s::neg#4 div16u::dividend#0 div16u::divisor#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::dividend#0 div16u::divisor#0 ] )
|
||||
[94] call div16u param-assignment [ div16s::neg#4 div16u::return#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::return#0 rem16u#1 ] )
|
||||
[95] (word) div16u::return#2 ← (word) div16u::return#0 [ div16s::neg#4 div16u::return#2 rem16u#1 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::return#2 rem16u#1 ] )
|
||||
div16s::@4: scope:[div16s] from div16s::@17 div16s::@3
|
||||
[88] (byte) div16s::neg#4 ← phi( div16s::@3/(byte) div16s::neg#2 div16s::@17/(byte) div16s::neg#3 ) [ div16s::dividendu#3 div16s::divisoru#3 div16s::neg#4 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::dividendu#3 div16s::divisoru#3 div16s::neg#4 ] )
|
||||
[88] (word) div16s::divisoru#3 ← phi( div16s::@3/(word~) div16s::divisoru#4 div16s::@17/(word~) div16s::divisoru#5 ) [ div16s::dividendu#3 div16s::divisoru#3 div16s::neg#4 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::dividendu#3 div16s::divisoru#3 div16s::neg#4 ] )
|
||||
[89] (word) div16u::dividend#0 ← (word) div16s::dividendu#3 [ div16s::divisoru#3 div16s::neg#4 div16u::dividend#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisoru#3 div16s::neg#4 div16u::dividend#0 ] )
|
||||
[90] (word) div16u::divisor#0 ← (word) div16s::divisoru#3 [ div16s::neg#4 div16u::dividend#0 div16u::divisor#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::dividend#0 div16u::divisor#0 ] )
|
||||
[91] call div16u param-assignment [ div16s::neg#4 div16u::return#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::return#0 rem16u#1 ] )
|
||||
[92] (word) div16u::return#2 ← (word) div16u::return#0 [ div16s::neg#4 div16u::return#2 rem16u#1 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::return#2 rem16u#1 ] )
|
||||
to:div16s::@15
|
||||
div16s::@15: scope:[div16s] from div16s::@4
|
||||
[96] (word) div16s::resultu#0 ← (word) div16u::return#2 [ div16s::neg#4 div16s::resultu#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16s::resultu#0 rem16u#1 ] )
|
||||
[97] if((byte) div16s::neg#4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div16s::@5 [ div16s::resultu#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::resultu#0 rem16u#1 ] )
|
||||
to:div16s::@18
|
||||
div16s::@18: scope:[div16s] from div16s::@15
|
||||
[98] (signed word~) div16s::return#6 ← (signed word)(word) div16s::resultu#0 [ div16s::return#6 rem16u#1 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#6 rem16u#1 ] )
|
||||
[99] (signed word~) rem16s#31 ← (signed word)(word) rem16u#1 [ div16s::return#6 rem16s#31 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#6 rem16s#31 ] )
|
||||
[93] (word) div16s::resultu#0 ← (word) div16u::return#2 [ div16s::neg#4 div16s::resultu#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16s::resultu#0 rem16u#1 ] )
|
||||
[94] if((byte) div16s::neg#4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div16s::@18 [ div16s::resultu#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::resultu#0 rem16u#1 ] )
|
||||
to:div16s::@11
|
||||
div16s::@11: scope:[div16s] from div16s::@15
|
||||
[95] (signed word) rem16s#2 ← - (signed word)(word) rem16u#1 [ div16s::resultu#0 rem16s#2 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::resultu#0 rem16s#2 ] )
|
||||
[96] (signed word) div16s::return#1 ← - (signed word)(word) div16s::resultu#0 [ rem16s#2 div16s::return#1 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16s#2 div16s::return#1 ] )
|
||||
to:div16s::@return
|
||||
div16s::@return: scope:[div16s] from div16s::@18 div16s::@5
|
||||
[100] (signed word) rem16s#3 ← phi( div16s::@18/(signed word~) rem16s#31 div16s::@5/(signed word) rem16s#1 ) [ div16s::return#2 rem16s#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#2 rem16s#3 ] )
|
||||
[100] (signed word) div16s::return#2 ← phi( div16s::@18/(signed word~) div16s::return#6 div16s::@5/(signed word) div16s::return#0 ) [ div16s::return#2 rem16s#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#2 rem16s#3 ] )
|
||||
[101] return [ div16s::return#2 rem16s#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#2 rem16s#3 ] )
|
||||
div16s::@return: scope:[div16s] from div16s::@11 div16s::@18
|
||||
[97] (signed word) rem16s#3 ← phi( div16s::@11/(signed word) rem16s#2 div16s::@18/(signed word~) rem16s#32 ) [ div16s::return#2 rem16s#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#2 rem16s#3 ] )
|
||||
[97] (signed word) div16s::return#2 ← phi( div16s::@11/(signed word) div16s::return#1 div16s::@18/(signed word~) div16s::return#7 ) [ div16s::return#2 rem16s#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#2 rem16s#3 ] )
|
||||
[98] return [ div16s::return#2 rem16s#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#2 rem16s#3 ] )
|
||||
to:@return
|
||||
div16s::@5: scope:[div16s] from div16s::@15
|
||||
[102] (signed word) rem16s#1 ← - (signed word)(word) rem16u#1 [ div16s::resultu#0 rem16s#1 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::resultu#0 rem16s#1 ] )
|
||||
[103] (signed word) div16s::return#0 ← - (signed word)(word) div16s::resultu#0 [ div16s::return#0 rem16s#1 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#0 rem16s#1 ] )
|
||||
div16s::@18: scope:[div16s] from div16s::@15
|
||||
[99] (signed word~) div16s::return#7 ← (signed word)(word) div16s::resultu#0 [ rem16u#1 div16s::return#7 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16u#1 div16s::return#7 ] )
|
||||
[100] (signed word~) rem16s#32 ← (signed word)(word) rem16u#1 [ div16s::return#7 rem16s#32 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#7 rem16s#32 ] )
|
||||
to:div16s::@return
|
||||
div16s::@17: scope:[div16s] from div16s::@2
|
||||
[104] (word~) div16s::divisoru#4 ← (word)(signed word) div16s::divisor#0 [ div16s::neg#3 div16s::dividendu#3 div16s::divisoru#4 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#3 div16s::dividendu#3 div16s::divisoru#4 ] )
|
||||
div16s::@3: scope:[div16s] from div16s::@2
|
||||
[101] (signed word~) div16s::$6 ← - (signed word) div16s::divisor#0 [ div16s::neg#3 div16s::dividendu#3 div16s::$6 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#3 div16s::dividendu#3 div16s::$6 ] )
|
||||
[102] (byte) div16s::neg#2 ← (byte) div16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16s::dividendu#3 div16s::neg#2 div16s::$6 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::dividendu#3 div16s::neg#2 div16s::$6 ] )
|
||||
[103] (word~) div16s::divisoru#4 ← (word)(signed word~) div16s::$6 [ div16s::dividendu#3 div16s::divisoru#4 div16s::neg#2 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::dividendu#3 div16s::divisoru#4 div16s::neg#2 ] )
|
||||
to:div16s::@4
|
||||
div16s::@16: scope:[div16s] from div16s
|
||||
[105] (word~) div16s::dividendu#7 ← (word)(signed word) div16s::dividend#0 [ div16s::divisor#0 div16s::dividendu#7 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 div16s::dividendu#7 ] )
|
||||
div16s::@1: scope:[div16s] from div16s
|
||||
[104] (signed word~) div16s::$2 ← - (signed word) div16s::dividend#0 [ div16s::divisor#0 div16s::$2 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 div16s::$2 ] )
|
||||
[105] (word~) div16s::dividendu#7 ← (word)(signed word~) div16s::$2 [ div16s::divisor#0 div16s::dividendu#7 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 div16s::dividendu#7 ] )
|
||||
to:div16s::@2
|
||||
div16u: scope:[div16u] from div16s::@4 test_16u::@1
|
||||
[106] (word) div16u::divisor#2 ← phi( div16s::@4/(word) div16u::divisor#0 test_16u::@1/(word) div16u::divisor#1 ) [ div16u::dividend#2 div16u::divisor#2 ] ( main:2::test_16s:13::div16s:21::div16u:94 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::dividend#2 div16u::divisor#2 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#2 div16u::divisor#2 ] )
|
||||
[106] (word) div16u::dividend#2 ← phi( div16s::@4/(word) div16u::dividend#0 test_16u::@1/(word) div16u::dividend#1 ) [ div16u::dividend#2 div16u::divisor#2 ] ( main:2::test_16s:13::div16s:21::div16u:94 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::dividend#2 div16u::divisor#2 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#2 div16u::divisor#2 ] )
|
||||
[107] (word) divr16u::dividend#1 ← (word) div16u::dividend#2 [ div16u::divisor#2 divr16u::dividend#1 ] ( main:2::test_16s:13::div16s:21::div16u:94 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::divisor#2 divr16u::dividend#1 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::divisor#2 divr16u::dividend#1 ] )
|
||||
[108] (word) divr16u::divisor#0 ← (word) div16u::divisor#2 [ divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::test_16s:13::div16s:21::div16u:94 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 divr16u::divisor#0 ] )
|
||||
[109] call divr16u param-assignment [ rem16u#1 divr16u::return#0 ] ( main:2::test_16s:13::div16s:21::div16u:94 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 rem16u#1 divr16u::return#0 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#0 ] )
|
||||
[110] (word) divr16u::return#2 ← (word) divr16u::return#0 [ rem16u#1 divr16u::return#2 ] ( main:2::test_16s:13::div16s:21::div16u:94 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 rem16u#1 divr16u::return#2 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#2 ] )
|
||||
[106] (word) div16u::divisor#2 ← phi( div16s::@4/(word) div16u::divisor#0 test_16u::@1/(word) div16u::divisor#1 ) [ div16u::dividend#2 div16u::divisor#2 ] ( main:2::test_16s:13::div16s:21::div16u:91 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::dividend#2 div16u::divisor#2 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#2 div16u::divisor#2 ] )
|
||||
[106] (word) div16u::dividend#2 ← phi( div16s::@4/(word) div16u::dividend#0 test_16u::@1/(word) div16u::dividend#1 ) [ div16u::dividend#2 div16u::divisor#2 ] ( main:2::test_16s:13::div16s:21::div16u:91 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::dividend#2 div16u::divisor#2 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#2 div16u::divisor#2 ] )
|
||||
[107] (word) divr16u::dividend#1 ← (word) div16u::dividend#2 [ div16u::divisor#2 divr16u::dividend#1 ] ( main:2::test_16s:13::div16s:21::div16u:91 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::divisor#2 divr16u::dividend#1 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::divisor#2 divr16u::dividend#1 ] )
|
||||
[108] (word) divr16u::divisor#0 ← (word) div16u::divisor#2 [ divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::test_16s:13::div16s:21::div16u:91 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 divr16u::divisor#0 ] )
|
||||
[109] call divr16u param-assignment [ rem16u#1 divr16u::return#0 ] ( main:2::test_16s:13::div16s:21::div16u:91 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 rem16u#1 divr16u::return#0 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#0 ] )
|
||||
[110] (word) divr16u::return#2 ← (word) divr16u::return#0 [ rem16u#1 divr16u::return#2 ] ( main:2::test_16s:13::div16s:21::div16u:91 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 rem16u#1 divr16u::return#2 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#2 ] )
|
||||
to:div16u::@2
|
||||
div16u::@2: scope:[div16u] from div16u
|
||||
[111] (word) div16u::return#0 ← (word) divr16u::return#2 [ div16u::return#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::div16u:94 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::return#0 rem16u#1 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#0 rem16u#1 ] )
|
||||
[111] (word) div16u::return#0 ← (word) divr16u::return#2 [ div16u::return#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::div16u:91 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::return#0 rem16u#1 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#0 rem16u#1 ] )
|
||||
to:div16u::@return
|
||||
div16u::@return: scope:[div16u] from div16u::@2
|
||||
[112] return [ div16u::return#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::div16u:94 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::return#0 rem16u#1 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#0 rem16u#1 ] )
|
||||
[112] return [ div16u::return#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::div16u:91 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 div16u::return#0 rem16u#1 ] main:2::test_16u:9::div16u:222 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#0 rem16u#1 ] )
|
||||
to:@return
|
||||
divr16u: scope:[divr16u] from div16u
|
||||
[113] phi() [ divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 divr16u::divisor#0 ] )
|
||||
[113] phi() [ divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 divr16u::divisor#0 ] )
|
||||
to:divr16u::@1
|
||||
divr16u::@1: scope:[divr16u] from divr16u divr16u::@3
|
||||
[114] (byte) divr16u::i#2 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) [ divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[114] (word) divr16u::quotient#3 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) [ divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[114] (word) divr16u::dividend#2 ← phi( divr16u/(word) divr16u::dividend#1 divr16u::@3/(word) divr16u::dividend#0 ) [ divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[114] (word) divr16u::rem#4 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::rem#10 ) [ divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[115] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] )
|
||||
[116] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] )
|
||||
[117] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) 128 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$2 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$2 ] )
|
||||
[118] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] )
|
||||
[114] (byte) divr16u::i#2 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) [ divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[114] (word) divr16u::quotient#3 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) [ divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[114] (word) divr16u::dividend#2 ← phi( divr16u/(word) divr16u::dividend#1 divr16u::@3/(word) divr16u::dividend#0 ) [ divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[114] (word) divr16u::rem#4 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::rem#10 ) [ divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::rem#4 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[115] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] )
|
||||
[116] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] )
|
||||
[117] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) 128 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$2 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$2 ] )
|
||||
[118] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] )
|
||||
to:divr16u::@4
|
||||
divr16u::@4: scope:[divr16u] from divr16u::@1
|
||||
[119] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] )
|
||||
[119] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] )
|
||||
to:divr16u::@2
|
||||
divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4
|
||||
[120] (word) divr16u::rem#5 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#5 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#5 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#5 ] )
|
||||
[121] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#0 divr16u::quotient#3 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::quotient#3 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::quotient#3 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 ] )
|
||||
[122] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] )
|
||||
[123] if((word) divr16u::rem#5<(word) divr16u::divisor#0) goto divr16u::@3 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] )
|
||||
[120] (word) divr16u::rem#5 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#5 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#5 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#5 ] )
|
||||
[121] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#0 divr16u::quotient#3 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::quotient#3 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::quotient#3 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 ] )
|
||||
[122] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] )
|
||||
[123] if((word) divr16u::rem#5<(word) divr16u::divisor#0) goto divr16u::@3 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] )
|
||||
to:divr16u::@5
|
||||
divr16u::@5: scope:[divr16u] from divr16u::@2
|
||||
[124] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#2 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#2 ] )
|
||||
[125] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (word) divr16u::divisor#0 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] )
|
||||
[124] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#2 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#2 ] )
|
||||
[125] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (word) divr16u::divisor#0 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] )
|
||||
to:divr16u::@3
|
||||
divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5
|
||||
[126] (word) divr16u::return#0 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) [ divr16u::divisor#0 divr16u::return#0 divr16u::i#2 divr16u::rem#10 divr16u::dividend#0 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::return#0 divr16u::i#2 divr16u::rem#10 divr16u::dividend#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::return#0 divr16u::i#2 divr16u::rem#10 divr16u::dividend#0 ] )
|
||||
[126] (word) divr16u::rem#10 ← phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) [ divr16u::divisor#0 divr16u::return#0 divr16u::i#2 divr16u::rem#10 divr16u::dividend#0 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::return#0 divr16u::i#2 divr16u::rem#10 divr16u::dividend#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::return#0 divr16u::i#2 divr16u::rem#10 divr16u::dividend#0 ] )
|
||||
[127] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 [ divr16u::divisor#0 divr16u::return#0 divr16u::rem#10 divr16u::dividend#0 divr16u::i#1 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::return#0 divr16u::rem#10 divr16u::dividend#0 divr16u::i#1 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::return#0 divr16u::rem#10 divr16u::dividend#0 divr16u::i#1 ] )
|
||||
[128] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto divr16u::@1 [ divr16u::divisor#0 divr16u::return#0 divr16u::rem#10 divr16u::dividend#0 divr16u::i#1 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::return#0 divr16u::rem#10 divr16u::dividend#0 divr16u::i#1 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::return#0 divr16u::rem#10 divr16u::dividend#0 divr16u::i#1 ] )
|
||||
[126] (word) divr16u::return#0 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) [ divr16u::divisor#0 divr16u::return#0 divr16u::i#2 divr16u::rem#10 divr16u::dividend#0 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::return#0 divr16u::i#2 divr16u::rem#10 divr16u::dividend#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::return#0 divr16u::i#2 divr16u::rem#10 divr16u::dividend#0 ] )
|
||||
[126] (word) divr16u::rem#10 ← phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) [ divr16u::divisor#0 divr16u::return#0 divr16u::i#2 divr16u::rem#10 divr16u::dividend#0 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::return#0 divr16u::i#2 divr16u::rem#10 divr16u::dividend#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::return#0 divr16u::i#2 divr16u::rem#10 divr16u::dividend#0 ] )
|
||||
[127] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 [ divr16u::divisor#0 divr16u::return#0 divr16u::rem#10 divr16u::dividend#0 divr16u::i#1 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::return#0 divr16u::rem#10 divr16u::dividend#0 divr16u::i#1 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::return#0 divr16u::rem#10 divr16u::dividend#0 divr16u::i#1 ] )
|
||||
[128] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto divr16u::@1 [ divr16u::divisor#0 divr16u::return#0 divr16u::rem#10 divr16u::dividend#0 divr16u::i#1 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 divr16u::divisor#0 divr16u::return#0 divr16u::rem#10 divr16u::dividend#0 divr16u::i#1 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#0 divr16u::return#0 divr16u::rem#10 divr16u::dividend#0 divr16u::i#1 ] )
|
||||
to:divr16u::@6
|
||||
divr16u::@6: scope:[divr16u] from divr16u::@3
|
||||
[129] (word) rem16u#1 ← (word) divr16u::rem#10 [ rem16u#1 divr16u::return#0 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 rem16u#1 divr16u::return#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#0 ] )
|
||||
[129] (word) rem16u#1 ← (word) divr16u::rem#10 [ rem16u#1 divr16u::return#0 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 rem16u#1 divr16u::return#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#0 ] )
|
||||
to:divr16u::@return
|
||||
divr16u::@return: scope:[divr16u] from divr16u::@6
|
||||
[130] return [ rem16u#1 divr16u::return#0 ] ( main:2::test_16s:13::div16s:21::div16u:94::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 rem16u#1 divr16u::return#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#0 ] )
|
||||
[130] return [ rem16u#1 divr16u::return#0 ] ( main:2::test_16s:13::div16s:21::div16u:91::divr16u:109 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::neg#4 rem16u#1 divr16u::return#0 ] main:2::test_16u:9::div16u:222::divr16u:109 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#0 ] )
|
||||
to:@return
|
||||
test_8s: scope:[test_8s] from main::@3
|
||||
[131] phi() [ print_line_cursor#1 ] ( main:2::test_8s:11 [ print_line_cursor#1 ] )
|
||||
@ -343,103 +343,103 @@ print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@1
|
||||
[168] return [ print_char_cursor#17 ] ( main:2::test_8s:11::print_sbyte:142 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#17 ] main:2::test_8s:11::print_sbyte:146 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#17 ] main:2::test_8s:11::print_sbyte:150 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#17 ] main:2::test_8s:11::print_sbyte:154 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#17 ] )
|
||||
to:@return
|
||||
div8s: scope:[div8s] from test_8s::@1
|
||||
[169] if((signed byte) div8s::dividend#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@16 [ div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] )
|
||||
to:div8s::@7
|
||||
div8s::@7: scope:[div8s] from div8s
|
||||
[170] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::$2 ] )
|
||||
[171] (byte~) div8s::dividendu#8 ← (byte)(signed byte~) div8s::$2 [ div8s::divisor#0 div8s::dividendu#8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::dividendu#8 ] )
|
||||
[169] if((signed byte) div8s::dividend#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@1 [ div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] )
|
||||
to:div8s::@16
|
||||
div8s::@16: scope:[div8s] from div8s
|
||||
[170] (byte~) div8s::dividendu#8 ← (byte)(signed byte) div8s::dividend#0 [ div8s::divisor#0 div8s::dividendu#8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::dividendu#8 ] )
|
||||
to:div8s::@2
|
||||
div8s::@2: scope:[div8s] from div8s::@16 div8s::@7
|
||||
[172] (byte) div8s::dividendu#3 ← phi( div8s::@16/(byte~) div8s::dividendu#7 div8s::@7/(byte~) div8s::dividendu#8 ) [ div8s::divisor#0 div8s::neg#3 div8s::dividendu#3 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::neg#3 div8s::dividendu#3 ] )
|
||||
[172] (byte) div8s::neg#3 ← phi( div8s::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 div8s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ div8s::divisor#0 div8s::neg#3 div8s::dividendu#3 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::neg#3 div8s::dividendu#3 ] )
|
||||
[173] if((signed byte) div8s::divisor#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@17 [ div8s::divisor#0 div8s::neg#3 div8s::dividendu#3 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::neg#3 div8s::dividendu#3 ] )
|
||||
to:div8s::@9
|
||||
div8s::@9: scope:[div8s] from div8s::@2
|
||||
[174] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ div8s::neg#3 div8s::dividendu#3 div8s::$7 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#3 div8s::dividendu#3 div8s::$7 ] )
|
||||
[175] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ div8s::dividendu#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::$7 div8s::neg#2 ] )
|
||||
[176] (byte~) div8s::divisoru#5 ← (byte)(signed byte~) div8s::$7 [ div8s::dividendu#3 div8s::neg#2 div8s::divisoru#5 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::neg#2 div8s::divisoru#5 ] )
|
||||
div8s::@2: scope:[div8s] from div8s::@1 div8s::@16
|
||||
[171] (byte) div8s::dividendu#3 ← phi( div8s::@1/(byte~) div8s::dividendu#7 div8s::@16/(byte~) div8s::dividendu#8 ) [ div8s::divisor#0 div8s::neg#3 div8s::dividendu#3 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::neg#3 div8s::dividendu#3 ] )
|
||||
[171] (byte) div8s::neg#3 ← phi( div8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 1 div8s::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ div8s::divisor#0 div8s::neg#3 div8s::dividendu#3 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::neg#3 div8s::dividendu#3 ] )
|
||||
[172] if((signed byte) div8s::divisor#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@3 [ div8s::divisor#0 div8s::neg#3 div8s::dividendu#3 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::neg#3 div8s::dividendu#3 ] )
|
||||
to:div8s::@17
|
||||
div8s::@17: scope:[div8s] from div8s::@2
|
||||
[173] (byte~) div8s::divisoru#5 ← (byte)(signed byte) div8s::divisor#0 [ div8s::neg#3 div8s::dividendu#3 div8s::divisoru#5 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#3 div8s::dividendu#3 div8s::divisoru#5 ] )
|
||||
to:div8s::@4
|
||||
div8s::@4: scope:[div8s] from div8s::@17 div8s::@9
|
||||
[177] (byte) div8s::neg#4 ← phi( div8s::@17/(byte) div8s::neg#3 div8s::@9/(byte) div8s::neg#2 ) [ div8s::dividendu#3 div8s::divisoru#3 div8s::neg#4 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::divisoru#3 div8s::neg#4 ] )
|
||||
[177] (byte) div8s::divisoru#3 ← phi( div8s::@17/(byte~) div8s::divisoru#4 div8s::@9/(byte~) div8s::divisoru#5 ) [ div8s::dividendu#3 div8s::divisoru#3 div8s::neg#4 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::divisoru#3 div8s::neg#4 ] )
|
||||
[178] (byte) div8u::dividend#0 ← (byte) div8s::dividendu#3 [ div8s::divisoru#3 div8s::neg#4 div8u::dividend#0 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisoru#3 div8s::neg#4 div8u::dividend#0 ] )
|
||||
[179] (byte) div8u::divisor#0 ← (byte) div8s::divisoru#3 [ div8s::neg#4 div8u::dividend#0 div8u::divisor#0 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::dividend#0 div8u::divisor#0 ] )
|
||||
[180] call div8u param-assignment [ div8s::neg#4 div8u::return#0 rem8u#17 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::return#0 rem8u#17 ] )
|
||||
[181] (byte) div8u::return#2 ← (byte) div8u::return#0 [ div8s::neg#4 div8u::return#2 rem8u#17 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::return#2 rem8u#17 ] )
|
||||
div8s::@4: scope:[div8s] from div8s::@17 div8s::@3
|
||||
[174] (byte) div8s::neg#4 ← phi( div8s::@3/(byte) div8s::neg#2 div8s::@17/(byte) div8s::neg#3 ) [ div8s::dividendu#3 div8s::divisoru#3 div8s::neg#4 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::divisoru#3 div8s::neg#4 ] )
|
||||
[174] (byte) div8s::divisoru#3 ← phi( div8s::@3/(byte~) div8s::divisoru#4 div8s::@17/(byte~) div8s::divisoru#5 ) [ div8s::dividendu#3 div8s::divisoru#3 div8s::neg#4 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::divisoru#3 div8s::neg#4 ] )
|
||||
[175] (byte) div8u::dividend#0 ← (byte) div8s::dividendu#3 [ div8s::divisoru#3 div8s::neg#4 div8u::dividend#0 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisoru#3 div8s::neg#4 div8u::dividend#0 ] )
|
||||
[176] (byte) div8u::divisor#0 ← (byte) div8s::divisoru#3 [ div8s::neg#4 div8u::dividend#0 div8u::divisor#0 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::dividend#0 div8u::divisor#0 ] )
|
||||
[177] call div8u param-assignment [ div8s::neg#4 div8u::return#0 rem8u#17 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::return#0 rem8u#17 ] )
|
||||
[178] (byte) div8u::return#2 ← (byte) div8u::return#0 [ div8s::neg#4 div8u::return#2 rem8u#17 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::return#2 rem8u#17 ] )
|
||||
to:div8s::@15
|
||||
div8s::@15: scope:[div8s] from div8s::@4
|
||||
[182] (byte) div8s::resultu#0 ← (byte) div8u::return#2 [ div8s::neg#4 div8s::resultu#0 rem8u#17 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8s::resultu#0 rem8u#17 ] )
|
||||
[183] if((byte) div8s::neg#4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@5 [ div8s::resultu#0 rem8u#17 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::resultu#0 rem8u#17 ] )
|
||||
to:div8s::@18
|
||||
div8s::@18: scope:[div8s] from div8s::@15
|
||||
[184] (signed byte~) div8s::return#6 ← (signed byte)(byte) div8s::resultu#0 [ div8s::return#6 rem8u#17 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::return#6 rem8u#17 ] )
|
||||
[185] (signed byte~) rem8s#32 ← (signed byte)(byte) rem8u#17 [ div8s::return#6 rem8s#32 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::return#6 rem8s#32 ] )
|
||||
[179] (byte) div8s::resultu#0 ← (byte) div8u::return#2 [ div8s::neg#4 div8s::resultu#0 rem8u#17 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8s::resultu#0 rem8u#17 ] )
|
||||
[180] if((byte) div8s::neg#4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@18 [ div8s::resultu#0 rem8u#17 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::resultu#0 rem8u#17 ] )
|
||||
to:div8s::@11
|
||||
div8s::@11: scope:[div8s] from div8s::@15
|
||||
[181] (signed byte) rem8s#2 ← - (signed byte)(byte) rem8u#17 [ div8s::resultu#0 rem8s#2 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::resultu#0 rem8s#2 ] )
|
||||
[182] (signed byte) div8s::return#1 ← - (signed byte)(byte) div8s::resultu#0 [ rem8s#2 div8s::return#1 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 rem8s#2 div8s::return#1 ] )
|
||||
to:div8s::@return
|
||||
div8s::@return: scope:[div8s] from div8s::@18 div8s::@5
|
||||
[186] (signed byte) rem8s#3 ← phi( div8s::@18/(signed byte~) rem8s#32 div8s::@5/(signed byte) rem8s#1 ) [ div8s::return#2 rem8s#3 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 rem8s#3 ] )
|
||||
[186] (signed byte) div8s::return#2 ← phi( div8s::@18/(signed byte~) div8s::return#6 div8s::@5/(signed byte) div8s::return#0 ) [ div8s::return#2 rem8s#3 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 rem8s#3 ] )
|
||||
[187] return [ div8s::return#2 rem8s#3 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 rem8s#3 ] )
|
||||
div8s::@return: scope:[div8s] from div8s::@11 div8s::@18
|
||||
[183] (signed byte) rem8s#3 ← phi( div8s::@11/(signed byte) rem8s#2 div8s::@18/(signed byte~) rem8s#33 ) [ div8s::return#2 rem8s#3 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 rem8s#3 ] )
|
||||
[183] (signed byte) div8s::return#2 ← phi( div8s::@11/(signed byte) div8s::return#1 div8s::@18/(signed byte~) div8s::return#7 ) [ div8s::return#2 rem8s#3 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 rem8s#3 ] )
|
||||
[184] return [ div8s::return#2 rem8s#3 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 rem8s#3 ] )
|
||||
to:@return
|
||||
div8s::@5: scope:[div8s] from div8s::@15
|
||||
[188] (signed byte) rem8s#1 ← - (signed byte)(byte) rem8u#17 [ div8s::resultu#0 rem8s#1 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::resultu#0 rem8s#1 ] )
|
||||
[189] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultu#0 [ div8s::return#0 rem8s#1 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::return#0 rem8s#1 ] )
|
||||
div8s::@18: scope:[div8s] from div8s::@15
|
||||
[185] (signed byte~) div8s::return#7 ← (signed byte)(byte) div8s::resultu#0 [ rem8u#17 div8s::return#7 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 rem8u#17 div8s::return#7 ] )
|
||||
[186] (signed byte~) rem8s#33 ← (signed byte)(byte) rem8u#17 [ div8s::return#7 rem8s#33 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::return#7 rem8s#33 ] )
|
||||
to:div8s::@return
|
||||
div8s::@17: scope:[div8s] from div8s::@2
|
||||
[190] (byte~) div8s::divisoru#4 ← (byte)(signed byte) div8s::divisor#0 [ div8s::neg#3 div8s::dividendu#3 div8s::divisoru#4 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#3 div8s::dividendu#3 div8s::divisoru#4 ] )
|
||||
div8s::@3: scope:[div8s] from div8s::@2
|
||||
[187] (signed byte~) div8s::$6 ← - (signed byte) div8s::divisor#0 [ div8s::neg#3 div8s::dividendu#3 div8s::$6 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#3 div8s::dividendu#3 div8s::$6 ] )
|
||||
[188] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ div8s::dividendu#3 div8s::neg#2 div8s::$6 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::neg#2 div8s::$6 ] )
|
||||
[189] (byte~) div8s::divisoru#4 ← (byte)(signed byte~) div8s::$6 [ div8s::dividendu#3 div8s::divisoru#4 div8s::neg#2 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::divisoru#4 div8s::neg#2 ] )
|
||||
to:div8s::@4
|
||||
div8s::@16: scope:[div8s] from div8s
|
||||
[191] (byte~) div8s::dividendu#7 ← (byte)(signed byte) div8s::dividend#0 [ div8s::divisor#0 div8s::dividendu#7 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::dividendu#7 ] )
|
||||
div8s::@1: scope:[div8s] from div8s
|
||||
[190] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::$2 ] )
|
||||
[191] (byte~) div8s::dividendu#7 ← (byte)(signed byte~) div8s::$2 [ div8s::divisor#0 div8s::dividendu#7 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::dividendu#7 ] )
|
||||
to:div8s::@2
|
||||
div8u: scope:[div8u] from div8s::@4 test_8u::@1
|
||||
[192] (byte) div8u::divisor#2 ← phi( div8s::@4/(byte) div8u::divisor#0 test_8u::@1/(byte) div8u::divisor#1 ) [ div8u::dividend#2 div8u::divisor#2 ] ( main:2::test_8s:11::div8s:137::div8u:180 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::dividend#2 div8u::divisor#2 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#2 ] )
|
||||
[192] (byte) div8u::dividend#2 ← phi( div8s::@4/(byte) div8u::dividend#0 test_8u::@1/(byte) div8u::dividend#1 ) [ div8u::dividend#2 div8u::divisor#2 ] ( main:2::test_8s:11::div8s:137::div8u:180 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::dividend#2 div8u::divisor#2 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#2 ] )
|
||||
[193] (byte) divr8u::dividend#0 ← (byte) div8u::dividend#2 [ div8u::divisor#2 divr8u::dividend#0 ] ( main:2::test_8s:11::div8s:137::div8u:180 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::divisor#2 divr8u::dividend#0 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::divisor#2 divr8u::dividend#0 ] )
|
||||
[194] (byte) divr8u::divisor#0 ← (byte) div8u::divisor#2 [ divr8u::dividend#0 divr8u::divisor#0 ] ( main:2::test_8s:11::div8s:137::div8u:180 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::dividend#0 divr8u::divisor#0 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::dividend#0 divr8u::divisor#0 ] )
|
||||
[195] call divr8u param-assignment [ rem8u#17 divr8u::return#1 ] ( main:2::test_8s:11::div8s:137::div8u:180 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 rem8u#17 divr8u::return#1 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 rem8u#17 divr8u::return#1 ] )
|
||||
[196] (byte) divr8u::return#0 ← (byte) divr8u::return#1 [ rem8u#17 divr8u::return#0 ] ( main:2::test_8s:11::div8s:137::div8u:180 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 rem8u#17 divr8u::return#0 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 rem8u#17 divr8u::return#0 ] )
|
||||
[192] (byte) div8u::divisor#2 ← phi( div8s::@4/(byte) div8u::divisor#0 test_8u::@1/(byte) div8u::divisor#1 ) [ div8u::dividend#2 div8u::divisor#2 ] ( main:2::test_8s:11::div8s:137::div8u:177 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::dividend#2 div8u::divisor#2 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#2 ] )
|
||||
[192] (byte) div8u::dividend#2 ← phi( div8s::@4/(byte) div8u::dividend#0 test_8u::@1/(byte) div8u::dividend#1 ) [ div8u::dividend#2 div8u::divisor#2 ] ( main:2::test_8s:11::div8s:137::div8u:177 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::dividend#2 div8u::divisor#2 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#2 ] )
|
||||
[193] (byte) divr8u::dividend#0 ← (byte) div8u::dividend#2 [ div8u::divisor#2 divr8u::dividend#0 ] ( main:2::test_8s:11::div8s:137::div8u:177 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::divisor#2 divr8u::dividend#0 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::divisor#2 divr8u::dividend#0 ] )
|
||||
[194] (byte) divr8u::divisor#0 ← (byte) div8u::divisor#2 [ divr8u::dividend#0 divr8u::divisor#0 ] ( main:2::test_8s:11::div8s:137::div8u:177 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::dividend#0 divr8u::divisor#0 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::dividend#0 divr8u::divisor#0 ] )
|
||||
[195] call divr8u param-assignment [ rem8u#17 divr8u::return#1 ] ( main:2::test_8s:11::div8s:137::div8u:177 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 rem8u#17 divr8u::return#1 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 rem8u#17 divr8u::return#1 ] )
|
||||
[196] (byte) divr8u::return#0 ← (byte) divr8u::return#1 [ rem8u#17 divr8u::return#0 ] ( main:2::test_8s:11::div8s:137::div8u:177 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 rem8u#17 divr8u::return#0 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 rem8u#17 divr8u::return#0 ] )
|
||||
to:div8u::@2
|
||||
div8u::@2: scope:[div8u] from div8u
|
||||
[197] (byte) div8u::return#0 ← (byte) divr8u::return#0 [ div8u::return#0 rem8u#17 ] ( main:2::test_8s:11::div8s:137::div8u:180 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::return#0 rem8u#17 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 rem8u#17 ] )
|
||||
[197] (byte) div8u::return#0 ← (byte) divr8u::return#0 [ div8u::return#0 rem8u#17 ] ( main:2::test_8s:11::div8s:137::div8u:177 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::return#0 rem8u#17 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 rem8u#17 ] )
|
||||
to:div8u::@return
|
||||
div8u::@return: scope:[div8u] from div8u::@2
|
||||
[198] return [ div8u::return#0 rem8u#17 ] ( main:2::test_8s:11::div8s:137::div8u:180 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::return#0 rem8u#17 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 rem8u#17 ] )
|
||||
[198] return [ div8u::return#0 rem8u#17 ] ( main:2::test_8s:11::div8s:137::div8u:177 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 div8u::return#0 rem8u#17 ] main:2::test_8u:7::div8u:251 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 rem8u#17 ] )
|
||||
to:@return
|
||||
divr8u: scope:[divr8u] from div8u
|
||||
[199] phi() [ divr8u::dividend#0 divr8u::divisor#0 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::dividend#0 divr8u::divisor#0 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::dividend#0 divr8u::divisor#0 ] )
|
||||
[199] phi() [ divr8u::dividend#0 divr8u::divisor#0 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::dividend#0 divr8u::divisor#0 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::dividend#0 divr8u::divisor#0 ] )
|
||||
to:divr8u::@1
|
||||
divr8u::@1: scope:[divr8u] from divr8u divr8u::@3
|
||||
[200] (byte) divr8u::i#2 ← phi( divr8u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr8u::@3/(byte) divr8u::i#1 ) [ divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] )
|
||||
[200] (byte) divr8u::quotient#3 ← phi( divr8u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr8u::@3/(byte) divr8u::return#1 ) [ divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] )
|
||||
[200] (byte) divr8u::dividend#2 ← phi( divr8u/(byte) divr8u::dividend#0 divr8u::@3/(byte) divr8u::dividend#1 ) [ divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] )
|
||||
[200] (byte) divr8u::rem#4 ← phi( divr8u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr8u::@3/(byte) divr8u::rem#10 ) [ divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] )
|
||||
[201] (byte) divr8u::rem#1 ← (byte) divr8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] )
|
||||
[202] (byte~) divr8u::$1 ← (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) 128 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] )
|
||||
[203] if((byte~) divr8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr8u::@2 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] )
|
||||
[200] (byte) divr8u::i#2 ← phi( divr8u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr8u::@3/(byte) divr8u::i#1 ) [ divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] )
|
||||
[200] (byte) divr8u::quotient#3 ← phi( divr8u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr8u::@3/(byte) divr8u::return#1 ) [ divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] )
|
||||
[200] (byte) divr8u::dividend#2 ← phi( divr8u/(byte) divr8u::dividend#0 divr8u::@3/(byte) divr8u::dividend#1 ) [ divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] )
|
||||
[200] (byte) divr8u::rem#4 ← phi( divr8u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr8u::@3/(byte) divr8u::rem#10 ) [ divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::rem#4 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 ] )
|
||||
[201] (byte) divr8u::rem#1 ← (byte) divr8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] )
|
||||
[202] (byte~) divr8u::$1 ← (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) 128 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] )
|
||||
[203] if((byte~) divr8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr8u::@2 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 ] )
|
||||
to:divr8u::@4
|
||||
divr8u::@4: scope:[divr8u] from divr8u::@1
|
||||
[204] (byte) divr8u::rem#2 ← (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] )
|
||||
[204] (byte) divr8u::rem#2 ← (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] )
|
||||
to:divr8u::@2
|
||||
divr8u::@2: scope:[divr8u] from divr8u::@1 divr8u::@4
|
||||
[205] (byte) divr8u::rem#5 ← phi( divr8u::@1/(byte) divr8u::rem#1 divr8u::@4/(byte) divr8u::rem#2 ) [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#5 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#5 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#5 ] )
|
||||
[206] (byte) divr8u::dividend#1 ← (byte) divr8u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::quotient#3 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::quotient#3 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::quotient#3 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 ] )
|
||||
[207] (byte) divr8u::quotient#1 ← (byte) divr8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#1 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#1 ] )
|
||||
[208] if((byte) divr8u::rem#5<(byte) divr8u::divisor#0) goto divr8u::@3 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#1 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#1 ] )
|
||||
[205] (byte) divr8u::rem#5 ← phi( divr8u::@1/(byte) divr8u::rem#1 divr8u::@4/(byte) divr8u::rem#2 ) [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#5 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#5 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#5 ] )
|
||||
[206] (byte) divr8u::dividend#1 ← (byte) divr8u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::quotient#3 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::quotient#3 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::quotient#3 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 ] )
|
||||
[207] (byte) divr8u::quotient#1 ← (byte) divr8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#1 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#1 ] )
|
||||
[208] if((byte) divr8u::rem#5<(byte) divr8u::divisor#0) goto divr8u::@3 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#1 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#1 ] )
|
||||
to:divr8u::@5
|
||||
divr8u::@5: scope:[divr8u] from divr8u::@2
|
||||
[209] (byte) divr8u::quotient#2 ← ++ (byte) divr8u::quotient#1 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#2 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#2 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#2 ] )
|
||||
[210] (byte) divr8u::rem#3 ← (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] )
|
||||
[209] (byte) divr8u::quotient#2 ← ++ (byte) divr8u::quotient#1 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#2 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#2 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::rem#5 divr8u::quotient#2 ] )
|
||||
[210] (byte) divr8u::rem#3 ← (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] )
|
||||
to:divr8u::@3
|
||||
divr8u::@3: scope:[divr8u] from divr8u::@2 divr8u::@5
|
||||
[211] (byte) divr8u::return#1 ← phi( divr8u::@2/(byte) divr8u::quotient#1 divr8u::@5/(byte) divr8u::quotient#2 ) [ divr8u::divisor#0 divr8u::return#1 divr8u::i#2 divr8u::rem#10 divr8u::dividend#1 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::return#1 divr8u::i#2 divr8u::rem#10 divr8u::dividend#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::return#1 divr8u::i#2 divr8u::rem#10 divr8u::dividend#1 ] )
|
||||
[211] (byte) divr8u::rem#10 ← phi( divr8u::@2/(byte) divr8u::rem#5 divr8u::@5/(byte) divr8u::rem#3 ) [ divr8u::divisor#0 divr8u::return#1 divr8u::i#2 divr8u::rem#10 divr8u::dividend#1 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::return#1 divr8u::i#2 divr8u::rem#10 divr8u::dividend#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::return#1 divr8u::i#2 divr8u::rem#10 divr8u::dividend#1 ] )
|
||||
[212] (byte) divr8u::i#1 ← ++ (byte) divr8u::i#2 [ divr8u::divisor#0 divr8u::return#1 divr8u::rem#10 divr8u::dividend#1 divr8u::i#1 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::return#1 divr8u::rem#10 divr8u::dividend#1 divr8u::i#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::return#1 divr8u::rem#10 divr8u::dividend#1 divr8u::i#1 ] )
|
||||
[213] if((byte) divr8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto divr8u::@1 [ divr8u::divisor#0 divr8u::return#1 divr8u::rem#10 divr8u::dividend#1 divr8u::i#1 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::return#1 divr8u::rem#10 divr8u::dividend#1 divr8u::i#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::return#1 divr8u::rem#10 divr8u::dividend#1 divr8u::i#1 ] )
|
||||
[211] (byte) divr8u::return#1 ← phi( divr8u::@2/(byte) divr8u::quotient#1 divr8u::@5/(byte) divr8u::quotient#2 ) [ divr8u::divisor#0 divr8u::return#1 divr8u::i#2 divr8u::rem#10 divr8u::dividend#1 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::return#1 divr8u::i#2 divr8u::rem#10 divr8u::dividend#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::return#1 divr8u::i#2 divr8u::rem#10 divr8u::dividend#1 ] )
|
||||
[211] (byte) divr8u::rem#10 ← phi( divr8u::@2/(byte) divr8u::rem#5 divr8u::@5/(byte) divr8u::rem#3 ) [ divr8u::divisor#0 divr8u::return#1 divr8u::i#2 divr8u::rem#10 divr8u::dividend#1 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::return#1 divr8u::i#2 divr8u::rem#10 divr8u::dividend#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::return#1 divr8u::i#2 divr8u::rem#10 divr8u::dividend#1 ] )
|
||||
[212] (byte) divr8u::i#1 ← ++ (byte) divr8u::i#2 [ divr8u::divisor#0 divr8u::return#1 divr8u::rem#10 divr8u::dividend#1 divr8u::i#1 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::return#1 divr8u::rem#10 divr8u::dividend#1 divr8u::i#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::return#1 divr8u::rem#10 divr8u::dividend#1 divr8u::i#1 ] )
|
||||
[213] if((byte) divr8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto divr8u::@1 [ divr8u::divisor#0 divr8u::return#1 divr8u::rem#10 divr8u::dividend#1 divr8u::i#1 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::return#1 divr8u::rem#10 divr8u::dividend#1 divr8u::i#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::return#1 divr8u::rem#10 divr8u::dividend#1 divr8u::i#1 ] )
|
||||
to:divr8u::@6
|
||||
divr8u::@6: scope:[divr8u] from divr8u::@3
|
||||
[214] (byte) rem8u#17 ← (byte) divr8u::rem#10 [ rem8u#17 divr8u::return#1 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 rem8u#17 divr8u::return#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 rem8u#17 divr8u::return#1 ] )
|
||||
[214] (byte) rem8u#17 ← (byte) divr8u::rem#10 [ rem8u#17 divr8u::return#1 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 rem8u#17 divr8u::return#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 rem8u#17 divr8u::return#1 ] )
|
||||
to:divr8u::@return
|
||||
divr8u::@return: scope:[divr8u] from divr8u::@6
|
||||
[215] return [ rem8u#17 divr8u::return#1 ] ( main:2::test_8s:11::div8s:137::div8u:180::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 rem8u#17 divr8u::return#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 rem8u#17 divr8u::return#1 ] )
|
||||
[215] return [ rem8u#17 divr8u::return#1 ] ( main:2::test_8s:11::div8s:137::div8u:177::divr8u:195 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 rem8u#17 divr8u::return#1 ] main:2::test_8u:7::div8u:251::divr8u:195 [ print_line_cursor#41 print_char_cursor#135 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 rem8u#17 divr8u::return#1 ] )
|
||||
to:@return
|
||||
test_16u: scope:[test_16u] from main::@2
|
||||
[216] phi() [ print_line_cursor#1 ] ( main:2::test_16u:9 [ print_line_cursor#1 ] )
|
||||
|
File diff suppressed because one or more lines are too long
@ -3,16 +3,16 @@
|
||||
(label) @end
|
||||
(signed word()) div16s((signed word) div16s::dividend , (signed word) div16s::divisor)
|
||||
(signed word~) div16s::$2 $2 zp ZP_WORD:8 2.0
|
||||
(signed word~) div16s::$7 $7 zp ZP_WORD:10 1.0
|
||||
(signed word~) div16s::$6 $6 zp ZP_WORD:10 1.0
|
||||
(label) div16s::@1
|
||||
(label) div16s::@11
|
||||
(label) div16s::@15
|
||||
(label) div16s::@16
|
||||
(label) div16s::@17
|
||||
(label) div16s::@18
|
||||
(label) div16s::@2
|
||||
(label) div16s::@3
|
||||
(label) div16s::@4
|
||||
(label) div16s::@5
|
||||
(label) div16s::@7
|
||||
(label) div16s::@9
|
||||
(label) div16s::@return
|
||||
(signed word) div16s::dividend
|
||||
(signed word) div16s::dividend#0 dividend zp ZP_WORD:8 5.0
|
||||
@ -33,10 +33,10 @@
|
||||
(word) div16s::resultu
|
||||
(word) div16s::resultu#0 resultu zp ZP_WORD:12 0.6666666666666666
|
||||
(signed word) div16s::return
|
||||
(signed word) div16s::return#0 return zp ZP_WORD:12 4.0
|
||||
(signed word) div16s::return#1 return zp ZP_WORD:12 4.0
|
||||
(signed word) div16s::return#2 return zp ZP_WORD:12 5.0
|
||||
(signed word) div16s::return#3 return zp ZP_WORD:12 22.0
|
||||
(signed word~) div16s::return#6 return zp ZP_WORD:12 2.0
|
||||
(signed word~) div16s::return#7 return zp ZP_WORD:12 2.0
|
||||
(word()) div16u((word) div16u::dividend , (word) div16u::divisor)
|
||||
(label) div16u::@2
|
||||
(label) div16u::@return
|
||||
@ -54,16 +54,16 @@
|
||||
(word) div16u::return#3 return zp ZP_WORD:12 22.0
|
||||
(signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::divisor)
|
||||
(signed byte~) div8s::$2 reg byte a 2.0
|
||||
(signed byte~) div8s::$7 reg byte x 1.0
|
||||
(signed byte~) div8s::$6 reg byte x 1.0
|
||||
(label) div8s::@1
|
||||
(label) div8s::@11
|
||||
(label) div8s::@15
|
||||
(label) div8s::@16
|
||||
(label) div8s::@17
|
||||
(label) div8s::@18
|
||||
(label) div8s::@2
|
||||
(label) div8s::@3
|
||||
(label) div8s::@4
|
||||
(label) div8s::@5
|
||||
(label) div8s::@7
|
||||
(label) div8s::@9
|
||||
(label) div8s::@return
|
||||
(signed byte) div8s::dividend
|
||||
(signed byte) div8s::dividend#0 reg byte y 5.0
|
||||
@ -84,10 +84,10 @@
|
||||
(byte) div8s::resultu
|
||||
(byte) div8s::resultu#0 reg byte y 0.6666666666666666
|
||||
(signed byte) div8s::return
|
||||
(signed byte) div8s::return#0 reg byte a 4.0
|
||||
(signed byte) div8s::return#1 reg byte a 4.0
|
||||
(signed byte) div8s::return#2 reg byte a 5.0
|
||||
(signed byte) div8s::return#3 reg byte a 22.0
|
||||
(signed byte~) div8s::return#6 reg byte a 2.0
|
||||
(signed byte~) div8s::return#7 reg byte a 2.0
|
||||
(byte()) div8u((byte) div8u::dividend , (byte) div8u::divisor)
|
||||
(label) div8u::@2
|
||||
(label) div8u::@return
|
||||
@ -272,15 +272,15 @@
|
||||
(word) print_word::w#5 w zp ZP_WORD:5 16.666666666666664
|
||||
(word~) print_word::w#7 w zp ZP_WORD:5 4.0
|
||||
(signed word) rem16s
|
||||
(signed word) rem16s#1 rem16s zp ZP_WORD:14 2.0
|
||||
(signed word) rem16s#2 rem16s zp ZP_WORD:14 2.0
|
||||
(signed word) rem16s#3 rem16s zp ZP_WORD:14 0.8333333333333335
|
||||
(signed word~) rem16s#31 rem16s zp ZP_WORD:14 4.0
|
||||
(signed word~) rem16s#32 rem16s zp ZP_WORD:14 4.0
|
||||
(word) rem16u
|
||||
(word) rem16u#1 rem16u zp ZP_WORD:14 0.48148148148148145
|
||||
(signed byte) rem8s
|
||||
(signed byte) rem8s#1 reg byte x 2.0
|
||||
(signed byte) rem8s#2 reg byte x 2.0
|
||||
(signed byte) rem8s#3 reg byte x 0.8333333333333335
|
||||
(signed byte~) rem8s#32 reg byte x 4.0
|
||||
(signed byte~) rem8s#33 reg byte x 4.0
|
||||
(byte) rem8u
|
||||
(byte) rem8u#17 reg byte x 0.5
|
||||
(void()) test_16s()
|
||||
@ -403,16 +403,16 @@ zp ZP_WORD:5 [ print_sword::w#6 print_sword::w#5 print_sword::w#1 print_sword::w
|
||||
zp ZP_BYTE:7 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 test_8u::dividend#0 test_8s::dividend#0 ]
|
||||
reg byte a [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ]
|
||||
zp ZP_WORD:8 [ print_char_cursor#80 print_char_cursor#133 print_char_cursor#130 print_char_cursor#132 print_char_cursor#128 print_char_cursor#129 print_char_cursor#156 print_char_cursor#126 print_char_cursor#17 print_char_cursor#163 print_char_cursor#135 print_char_cursor#131 print_char_cursor#1 print_char_cursor#180 print_char_cursor#186 div16s::dividendu#3 div16s::dividendu#7 div16s::dividendu#8 div16u::dividend#2 div16u::dividend#0 div16u::dividend#1 div16s::dividend#0 div16s::$2 divr16u::dividend#2 divr16u::dividend#1 divr16u::dividend#0 ]
|
||||
zp ZP_WORD:10 [ div16s::divisoru#3 div16s::divisoru#4 div16s::divisoru#5 div16u::divisor#2 div16u::divisor#0 div16u::divisor#1 div16s::divisor#0 div16s::$7 divr16u::divisor#0 test_16u::divisor#0 ]
|
||||
reg byte y [ div16s::neg#4 div16s::neg#3 div16s::neg#2 ]
|
||||
zp ZP_WORD:12 [ div16s::return#2 div16s::return#6 div16s::return#0 div16s::resultu#0 div16s::return#3 test_16s::res#0 div16u::return#2 div16u::return#0 divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 divr16u::return#2 div16u::return#3 test_16u::res#0 ]
|
||||
zp ZP_WORD:14 [ rem16s#3 rem16s#31 rem16s#1 rem16u#1 divr16u::rem#4 divr16u::rem#10 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 ]
|
||||
zp ZP_WORD:10 [ div16s::divisoru#3 div16s::divisoru#4 div16s::divisoru#5 div16u::divisor#2 div16u::divisor#0 div16u::divisor#1 div16s::divisor#0 div16s::$6 divr16u::divisor#0 test_16u::divisor#0 ]
|
||||
reg byte y [ div16s::neg#4 div16s::neg#2 div16s::neg#3 ]
|
||||
zp ZP_WORD:12 [ div16s::return#2 div16s::return#1 div16s::return#7 div16s::resultu#0 div16s::return#3 test_16s::res#0 div16u::return#2 div16u::return#0 divr16u::quotient#3 divr16u::return#0 divr16u::quotient#1 divr16u::quotient#2 divr16u::return#2 div16u::return#3 test_16u::res#0 ]
|
||||
zp ZP_WORD:14 [ rem16s#3 rem16s#2 rem16s#32 rem16u#1 divr16u::rem#4 divr16u::rem#10 divr16u::rem#5 divr16u::rem#0 divr16u::rem#1 divr16u::rem#2 ]
|
||||
reg byte x [ divr16u::i#2 divr16u::i#1 ]
|
||||
reg byte y [ div8s::dividendu#3 div8s::dividendu#7 div8s::dividendu#8 ]
|
||||
reg byte x [ div8s::divisoru#3 div8s::divisoru#4 div8s::divisoru#5 ]
|
||||
zp ZP_BYTE:16 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 test_8s::res#0 test_8u::divisor#0 ]
|
||||
reg byte a [ div8s::return#2 div8s::return#6 div8s::return#0 ]
|
||||
reg byte x [ rem8s#3 rem8s#32 rem8s#1 ]
|
||||
zp ZP_BYTE:16 [ div8s::neg#4 div8s::neg#2 div8s::neg#3 test_8s::res#0 test_8u::divisor#0 ]
|
||||
reg byte a [ div8s::return#2 div8s::return#1 div8s::return#7 ]
|
||||
reg byte x [ rem8s#3 rem8s#2 rem8s#33 ]
|
||||
reg byte a [ div8u::dividend#2 div8u::dividend#0 div8u::dividend#1 ]
|
||||
reg byte x [ div8u::divisor#2 div8u::divisor#0 div8u::divisor#1 ]
|
||||
reg byte y [ divr8u::rem#4 divr8u::rem#10 divr8u::rem#5 divr8u::rem#1 divr8u::rem#2 divr8u::rem#3 ]
|
||||
@ -428,10 +428,10 @@ zp ZP_BYTE:21 [ test_8s::divisor#0 ]
|
||||
reg byte y [ div8s::dividend#0 ]
|
||||
reg byte x [ div8s::divisor#0 ]
|
||||
reg byte a [ div8s::return#3 ]
|
||||
reg byte a [ div8s::$2 ]
|
||||
reg byte x [ div8s::$7 ]
|
||||
reg byte a [ div8u::return#2 ]
|
||||
reg byte y [ div8s::resultu#0 ]
|
||||
reg byte x [ div8s::$6 ]
|
||||
reg byte a [ div8s::$2 ]
|
||||
zp ZP_BYTE:22 [ divr8u::divisor#0 ]
|
||||
reg byte a [ divr8u::return#0 ]
|
||||
reg byte a [ div8u::return#0 ]
|
||||
|
@ -19,12 +19,12 @@ main: {
|
||||
bne b4
|
||||
jsr keyboard_key_pressed
|
||||
cmp #0
|
||||
beq b5
|
||||
lda #GREEN
|
||||
bne b5
|
||||
lda #BLUE
|
||||
sta BGCOL
|
||||
jmp b4
|
||||
b5:
|
||||
lda #BLUE
|
||||
lda #GREEN
|
||||
sta BGCOL
|
||||
jmp b4
|
||||
}
|
||||
|
@ -21,13 +21,13 @@ main::@9: scope:[main] from main::@4
|
||||
to:main::@14
|
||||
main::@14: scope:[main] from main::@9
|
||||
[10] (byte~) main::$2 ← (byte) keyboard_key_pressed::return#2 [ main::$2 ] ( main:2 [ main::$2 ] )
|
||||
[11] if((byte~) main::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@5 [ ] ( main:2 [ ] )
|
||||
[11] if((byte~) main::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@5 [ ] ( main:2 [ ] )
|
||||
to:main::@10
|
||||
main::@10: scope:[main] from main::@14
|
||||
[12] *((const byte*) BGCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] )
|
||||
[12] *((const byte*) BGCOL#0) ← (const byte) BLUE#0 [ ] ( main:2 [ ] )
|
||||
to:main::@4
|
||||
main::@5: scope:[main] from main::@14
|
||||
[13] *((const byte*) BGCOL#0) ← (const byte) BLUE#0 [ ] ( main:2 [ ] )
|
||||
[13] *((const byte*) BGCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] )
|
||||
to:main::@4
|
||||
keyboard_key_pressed: scope:[keyboard_key_pressed] from main::@9
|
||||
[14] phi() [ ] ( main:2::keyboard_key_pressed:8 [ ] )
|
||||
|
@ -536,74 +536,72 @@ keyboard_event_scan::@1:
|
||||
(byte~) keyboard_event_scan::$0 ← call keyboard_matrix_read (byte) keyboard_event_scan::row
|
||||
(byte) keyboard_event_scan::row_scan ← (byte~) keyboard_event_scan::$0
|
||||
(boolean~) keyboard_event_scan::$1 ← (byte) keyboard_event_scan::row_scan != *((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row)
|
||||
(boolean~) keyboard_event_scan::$2 ← ! (boolean~) keyboard_event_scan::$1
|
||||
if((boolean~) keyboard_event_scan::$2) goto keyboard_event_scan::@2
|
||||
if((boolean~) keyboard_event_scan::$1) goto keyboard_event_scan::@2
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2 ← (byte) keyboard_event_scan::keycode + (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2
|
||||
goto keyboard_event_scan::@3
|
||||
keyboard_event_scan::@2:
|
||||
(byte) keyboard_event_scan::col ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
keyboard_event_scan::@3:
|
||||
keyboard_event_scan::@4:
|
||||
(byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan ^ *((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row)
|
||||
(byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((byte[8]) keyboard_matrix_col_bitmask + (byte) keyboard_event_scan::col)
|
||||
(boolean~) keyboard_event_scan::$5 ← (byte~) keyboard_event_scan::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$6 ← ! (boolean~) keyboard_event_scan::$5
|
||||
if((boolean~) keyboard_event_scan::$6) goto keyboard_event_scan::@4
|
||||
if((boolean~) keyboard_event_scan::$6) goto keyboard_event_scan::@5
|
||||
(boolean~) keyboard_event_scan::$7 ← (byte) keyboard_events_size != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(boolean~) keyboard_event_scan::$8 ← ! (boolean~) keyboard_event_scan::$7
|
||||
if((boolean~) keyboard_event_scan::$8) goto keyboard_event_scan::@5
|
||||
if((boolean~) keyboard_event_scan::$8) goto keyboard_event_scan::@6
|
||||
(byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_scan::row_scan & *((byte[8]) keyboard_matrix_col_bitmask + (byte) keyboard_event_scan::col)
|
||||
(byte) keyboard_event_scan::event_type ← (byte~) keyboard_event_scan::$9
|
||||
(boolean~) keyboard_event_scan::$10 ← (byte) keyboard_event_scan::event_type == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$11 ← ! (boolean~) keyboard_event_scan::$10
|
||||
if((boolean~) keyboard_event_scan::$11) goto keyboard_event_scan::@6
|
||||
(byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode | (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte/word/dword~) keyboard_event_scan::$12
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
goto keyboard_event_scan::@7
|
||||
keyboard_event_scan::@6:
|
||||
if((boolean~) keyboard_event_scan::$10) goto keyboard_event_scan::@7
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte) keyboard_event_scan::keycode
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
goto keyboard_event_scan::@8
|
||||
keyboard_event_scan::@7:
|
||||
(byte/word/dword~) keyboard_event_scan::$11 ← (byte) keyboard_event_scan::keycode | (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte/word/dword~) keyboard_event_scan::$11
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
keyboard_event_scan::@8:
|
||||
keyboard_event_scan::@6:
|
||||
keyboard_event_scan::@5:
|
||||
keyboard_event_scan::@4:
|
||||
(byte) keyboard_event_scan::keycode ← ++ (byte) keyboard_event_scan::keycode
|
||||
(byte) keyboard_event_scan::col ← ++ (byte) keyboard_event_scan::col
|
||||
(boolean~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::col != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$13) goto keyboard_event_scan::@3
|
||||
(boolean~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::col != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$12) goto keyboard_event_scan::@4
|
||||
*((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row) ← (byte) keyboard_event_scan::row_scan
|
||||
goto keyboard_event_scan::@8
|
||||
keyboard_event_scan::@2:
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 ← (byte) keyboard_event_scan::keycode + (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14
|
||||
keyboard_event_scan::@8:
|
||||
keyboard_event_scan::@3:
|
||||
(byte) keyboard_event_scan::row ← ++ (byte) keyboard_event_scan::row
|
||||
(boolean~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$15) goto keyboard_event_scan::@1
|
||||
(boolean~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::row != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$13) goto keyboard_event_scan::@1
|
||||
(byte) keyboard_modifiers ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte~) keyboard_event_scan::$16 ← call keyboard_event_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) keyboard_event_scan::$17 ← (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$18 ← ! (boolean~) keyboard_event_scan::$17
|
||||
if((boolean~) keyboard_event_scan::$18) goto keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$19 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_LSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$19
|
||||
(byte~) keyboard_event_scan::$14 ← call keyboard_event_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) keyboard_event_scan::$15 ← (byte~) keyboard_event_scan::$14 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$16 ← ! (boolean~) keyboard_event_scan::$15
|
||||
if((boolean~) keyboard_event_scan::$16) goto keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$17 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_LSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$17
|
||||
keyboard_event_scan::@9:
|
||||
(byte~) keyboard_event_scan::$20 ← call keyboard_event_pressed (byte) KEY_RSHIFT
|
||||
(boolean~) keyboard_event_scan::$21 ← (byte~) keyboard_event_scan::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$22 ← ! (boolean~) keyboard_event_scan::$21
|
||||
if((boolean~) keyboard_event_scan::$22) goto keyboard_event_scan::@10
|
||||
(byte~) keyboard_event_scan::$23 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_RSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$23
|
||||
(byte~) keyboard_event_scan::$18 ← call keyboard_event_pressed (byte) KEY_RSHIFT
|
||||
(boolean~) keyboard_event_scan::$19 ← (byte~) keyboard_event_scan::$18 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$20 ← ! (boolean~) keyboard_event_scan::$19
|
||||
if((boolean~) keyboard_event_scan::$20) goto keyboard_event_scan::@10
|
||||
(byte~) keyboard_event_scan::$21 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_RSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$21
|
||||
keyboard_event_scan::@10:
|
||||
(byte~) keyboard_event_scan::$24 ← call keyboard_event_pressed (byte) KEY_CTRL
|
||||
(boolean~) keyboard_event_scan::$25 ← (byte~) keyboard_event_scan::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$26 ← ! (boolean~) keyboard_event_scan::$25
|
||||
if((boolean~) keyboard_event_scan::$26) goto keyboard_event_scan::@11
|
||||
(byte~) keyboard_event_scan::$27 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_CTRL
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$27
|
||||
(byte~) keyboard_event_scan::$22 ← call keyboard_event_pressed (byte) KEY_CTRL
|
||||
(boolean~) keyboard_event_scan::$23 ← (byte~) keyboard_event_scan::$22 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$24 ← ! (boolean~) keyboard_event_scan::$23
|
||||
if((boolean~) keyboard_event_scan::$24) goto keyboard_event_scan::@11
|
||||
(byte~) keyboard_event_scan::$25 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_CTRL
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$25
|
||||
keyboard_event_scan::@11:
|
||||
(byte~) keyboard_event_scan::$28 ← call keyboard_event_pressed (byte) KEY_COMMODORE
|
||||
(boolean~) keyboard_event_scan::$29 ← (byte~) keyboard_event_scan::$28 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$30 ← ! (boolean~) keyboard_event_scan::$29
|
||||
if((boolean~) keyboard_event_scan::$30) goto keyboard_event_scan::@12
|
||||
(byte~) keyboard_event_scan::$31 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_COMMODORE
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$31
|
||||
(byte~) keyboard_event_scan::$26 ← call keyboard_event_pressed (byte) KEY_COMMODORE
|
||||
(boolean~) keyboard_event_scan::$27 ← (byte~) keyboard_event_scan::$26 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$28 ← ! (boolean~) keyboard_event_scan::$27
|
||||
if((boolean~) keyboard_event_scan::$28) goto keyboard_event_scan::@12
|
||||
(byte~) keyboard_event_scan::$29 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_COMMODORE
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$29
|
||||
keyboard_event_scan::@12:
|
||||
keyboard_event_scan::@return:
|
||||
return
|
||||
@ -621,14 +619,13 @@ keyboard_event_pressed::@return:
|
||||
endproc // keyboard_event_pressed()
|
||||
proc (byte()) keyboard_event_get()
|
||||
(boolean~) keyboard_event_get::$0 ← (byte) keyboard_events_size == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_get::$1 ← ! (boolean~) keyboard_event_get::$0
|
||||
if((boolean~) keyboard_event_get::$1) goto keyboard_event_get::@1
|
||||
(byte) keyboard_event_get::return ← (byte/word/signed word/dword/signed dword) 255
|
||||
if((boolean~) keyboard_event_get::$0) goto keyboard_event_get::@1
|
||||
(byte) keyboard_events_size ← -- (byte) keyboard_events_size
|
||||
(byte) keyboard_event_get::return ← *((byte[8]) keyboard_events + (byte) keyboard_events_size)
|
||||
goto keyboard_event_get::@return
|
||||
goto keyboard_event_get::@2
|
||||
keyboard_event_get::@1:
|
||||
(byte) keyboard_events_size ← -- (byte) keyboard_events_size
|
||||
(byte) keyboard_event_get::return ← *((byte[8]) keyboard_events + (byte) keyboard_events_size)
|
||||
(byte) keyboard_event_get::return ← (byte/word/signed word/dword/signed dword) 255
|
||||
goto keyboard_event_get::@return
|
||||
keyboard_event_get::@2:
|
||||
keyboard_event_get::@return:
|
||||
@ -646,12 +643,11 @@ main::@4:
|
||||
if((boolean~) main::$1) goto main::@4
|
||||
(byte~) main::$2 ← call keyboard_key_pressed (byte) KEY_SPACE
|
||||
(boolean~) main::$3 ← (byte~) main::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) main::$4 ← ! (boolean~) main::$3
|
||||
if((boolean~) main::$4) goto main::@5
|
||||
*((byte*) BGCOL) ← (byte) GREEN
|
||||
if((boolean~) main::$3) goto main::@5
|
||||
*((byte*) BGCOL) ← (byte) BLUE
|
||||
goto main::@6
|
||||
main::@5:
|
||||
*((byte*) BGCOL) ← (byte) BLUE
|
||||
*((byte*) BGCOL) ← (byte) GREEN
|
||||
main::@6:
|
||||
goto main::@1
|
||||
main::@3:
|
||||
@ -799,7 +795,6 @@ SYMBOLS
|
||||
(byte[]) keyboard_char_keycodes
|
||||
(byte()) keyboard_event_get()
|
||||
(boolean~) keyboard_event_get::$0
|
||||
(boolean~) keyboard_event_get::$1
|
||||
(label) keyboard_event_get::@1
|
||||
(label) keyboard_event_get::@2
|
||||
(label) keyboard_event_get::@return
|
||||
@ -816,29 +811,27 @@ SYMBOLS
|
||||
(byte~) keyboard_event_scan::$0
|
||||
(boolean~) keyboard_event_scan::$1
|
||||
(boolean~) keyboard_event_scan::$10
|
||||
(boolean~) keyboard_event_scan::$11
|
||||
(byte/word/dword~) keyboard_event_scan::$12
|
||||
(byte/word/dword~) keyboard_event_scan::$11
|
||||
(boolean~) keyboard_event_scan::$12
|
||||
(boolean~) keyboard_event_scan::$13
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14
|
||||
(byte~) keyboard_event_scan::$14
|
||||
(boolean~) keyboard_event_scan::$15
|
||||
(byte~) keyboard_event_scan::$16
|
||||
(boolean~) keyboard_event_scan::$17
|
||||
(boolean~) keyboard_event_scan::$18
|
||||
(byte~) keyboard_event_scan::$19
|
||||
(boolean~) keyboard_event_scan::$2
|
||||
(byte~) keyboard_event_scan::$20
|
||||
(boolean~) keyboard_event_scan::$21
|
||||
(boolean~) keyboard_event_scan::$22
|
||||
(byte~) keyboard_event_scan::$23
|
||||
(byte~) keyboard_event_scan::$24
|
||||
(boolean~) keyboard_event_scan::$25
|
||||
(boolean~) keyboard_event_scan::$26
|
||||
(byte~) keyboard_event_scan::$27
|
||||
(byte~) keyboard_event_scan::$28
|
||||
(boolean~) keyboard_event_scan::$29
|
||||
(boolean~) keyboard_event_scan::$16
|
||||
(byte~) keyboard_event_scan::$17
|
||||
(byte~) keyboard_event_scan::$18
|
||||
(boolean~) keyboard_event_scan::$19
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2
|
||||
(boolean~) keyboard_event_scan::$20
|
||||
(byte~) keyboard_event_scan::$21
|
||||
(byte~) keyboard_event_scan::$22
|
||||
(boolean~) keyboard_event_scan::$23
|
||||
(boolean~) keyboard_event_scan::$24
|
||||
(byte~) keyboard_event_scan::$25
|
||||
(byte~) keyboard_event_scan::$26
|
||||
(boolean~) keyboard_event_scan::$27
|
||||
(boolean~) keyboard_event_scan::$28
|
||||
(byte~) keyboard_event_scan::$29
|
||||
(byte~) keyboard_event_scan::$3
|
||||
(boolean~) keyboard_event_scan::$30
|
||||
(byte~) keyboard_event_scan::$31
|
||||
(byte~) keyboard_event_scan::$4
|
||||
(boolean~) keyboard_event_scan::$5
|
||||
(boolean~) keyboard_event_scan::$6
|
||||
@ -896,7 +889,6 @@ SYMBOLS
|
||||
(boolean~) main::$1
|
||||
(byte~) main::$2
|
||||
(boolean~) main::$3
|
||||
(boolean~) main::$4
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
(label) main::@3
|
||||
@ -1141,112 +1133,110 @@ keyboard_event_scan: scope:[keyboard_event_scan] from
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) keyboard_event_scan::row ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:keyboard_event_scan::@1
|
||||
keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan keyboard_event_scan::@8
|
||||
keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan keyboard_event_scan::@3
|
||||
(byte~) keyboard_event_scan::$0 ← call keyboard_matrix_read (byte) keyboard_event_scan::row
|
||||
(byte) keyboard_event_scan::row_scan ← (byte~) keyboard_event_scan::$0
|
||||
(boolean~) keyboard_event_scan::$1 ← (byte) keyboard_event_scan::row_scan != *((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row)
|
||||
(boolean~) keyboard_event_scan::$2 ← ! (boolean~) keyboard_event_scan::$1
|
||||
if((boolean~) keyboard_event_scan::$2) goto keyboard_event_scan::@2
|
||||
if((boolean~) keyboard_event_scan::$1) goto keyboard_event_scan::@2
|
||||
to:keyboard_event_scan::@13
|
||||
keyboard_event_scan::@2: scope:[keyboard_event_scan] from keyboard_event_scan::@1 keyboard_event_scan::@19
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 ← (byte) keyboard_event_scan::keycode + (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14
|
||||
to:keyboard_event_scan::@8
|
||||
keyboard_event_scan::@13: scope:[keyboard_event_scan] from keyboard_event_scan::@1
|
||||
keyboard_event_scan::@2: scope:[keyboard_event_scan] from keyboard_event_scan::@1 keyboard_event_scan::@14
|
||||
(byte) keyboard_event_scan::col ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:keyboard_event_scan::@4
|
||||
keyboard_event_scan::@13: scope:[keyboard_event_scan] from keyboard_event_scan::@1
|
||||
(byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2 ← (byte) keyboard_event_scan::keycode + (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(byte) keyboard_event_scan::keycode ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$2
|
||||
to:keyboard_event_scan::@3
|
||||
keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan::@13 keyboard_event_scan::@4
|
||||
keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan::@13 keyboard_event_scan::@19
|
||||
(byte) keyboard_event_scan::row ← ++ (byte) keyboard_event_scan::row
|
||||
(boolean~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::row != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$13) goto keyboard_event_scan::@1
|
||||
to:keyboard_event_scan::@20
|
||||
keyboard_event_scan::@14: scope:[keyboard_event_scan] from
|
||||
to:keyboard_event_scan::@2
|
||||
keyboard_event_scan::@4: scope:[keyboard_event_scan] from keyboard_event_scan::@2 keyboard_event_scan::@5
|
||||
(byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_scan::row_scan ^ *((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row)
|
||||
(byte~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 & *((byte[8]) keyboard_matrix_col_bitmask + (byte) keyboard_event_scan::col)
|
||||
(boolean~) keyboard_event_scan::$5 ← (byte~) keyboard_event_scan::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$6 ← ! (boolean~) keyboard_event_scan::$5
|
||||
if((boolean~) keyboard_event_scan::$6) goto keyboard_event_scan::@4
|
||||
to:keyboard_event_scan::@14
|
||||
keyboard_event_scan::@4: scope:[keyboard_event_scan] from keyboard_event_scan::@3 keyboard_event_scan::@5
|
||||
if((boolean~) keyboard_event_scan::$6) goto keyboard_event_scan::@5
|
||||
to:keyboard_event_scan::@15
|
||||
keyboard_event_scan::@5: scope:[keyboard_event_scan] from keyboard_event_scan::@4 keyboard_event_scan::@6
|
||||
(byte) keyboard_event_scan::keycode ← ++ (byte) keyboard_event_scan::keycode
|
||||
(byte) keyboard_event_scan::col ← ++ (byte) keyboard_event_scan::col
|
||||
(boolean~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::col != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$13) goto keyboard_event_scan::@3
|
||||
to:keyboard_event_scan::@18
|
||||
keyboard_event_scan::@14: scope:[keyboard_event_scan] from keyboard_event_scan::@3
|
||||
(boolean~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::col != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$12) goto keyboard_event_scan::@4
|
||||
to:keyboard_event_scan::@19
|
||||
keyboard_event_scan::@15: scope:[keyboard_event_scan] from keyboard_event_scan::@4
|
||||
(boolean~) keyboard_event_scan::$7 ← (byte) keyboard_events_size != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(boolean~) keyboard_event_scan::$8 ← ! (boolean~) keyboard_event_scan::$7
|
||||
if((boolean~) keyboard_event_scan::$8) goto keyboard_event_scan::@5
|
||||
to:keyboard_event_scan::@15
|
||||
keyboard_event_scan::@5: scope:[keyboard_event_scan] from keyboard_event_scan::@14 keyboard_event_scan::@7
|
||||
to:keyboard_event_scan::@4
|
||||
keyboard_event_scan::@15: scope:[keyboard_event_scan] from keyboard_event_scan::@14
|
||||
if((boolean~) keyboard_event_scan::$8) goto keyboard_event_scan::@6
|
||||
to:keyboard_event_scan::@16
|
||||
keyboard_event_scan::@6: scope:[keyboard_event_scan] from keyboard_event_scan::@15 keyboard_event_scan::@8
|
||||
to:keyboard_event_scan::@5
|
||||
keyboard_event_scan::@16: scope:[keyboard_event_scan] from keyboard_event_scan::@15
|
||||
(byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_scan::row_scan & *((byte[8]) keyboard_matrix_col_bitmask + (byte) keyboard_event_scan::col)
|
||||
(byte) keyboard_event_scan::event_type ← (byte~) keyboard_event_scan::$9
|
||||
(boolean~) keyboard_event_scan::$10 ← (byte) keyboard_event_scan::event_type == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$11 ← ! (boolean~) keyboard_event_scan::$10
|
||||
if((boolean~) keyboard_event_scan::$11) goto keyboard_event_scan::@6
|
||||
to:keyboard_event_scan::@16
|
||||
keyboard_event_scan::@6: scope:[keyboard_event_scan] from keyboard_event_scan::@15 keyboard_event_scan::@17
|
||||
if((boolean~) keyboard_event_scan::$10) goto keyboard_event_scan::@7
|
||||
to:keyboard_event_scan::@17
|
||||
keyboard_event_scan::@7: scope:[keyboard_event_scan] from keyboard_event_scan::@16 keyboard_event_scan::@18
|
||||
(byte/word/dword~) keyboard_event_scan::$11 ← (byte) keyboard_event_scan::keycode | (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte/word/dword~) keyboard_event_scan::$11
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
to:keyboard_event_scan::@8
|
||||
keyboard_event_scan::@17: scope:[keyboard_event_scan] from keyboard_event_scan::@16
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte) keyboard_event_scan::keycode
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
to:keyboard_event_scan::@7
|
||||
keyboard_event_scan::@16: scope:[keyboard_event_scan] from keyboard_event_scan::@15
|
||||
(byte/word/dword~) keyboard_event_scan::$12 ← (byte) keyboard_event_scan::keycode | (byte/signed byte/word/signed word/dword/signed dword) 64
|
||||
*((byte[8]) keyboard_events + (byte) keyboard_events_size) ← (byte/word/dword~) keyboard_event_scan::$12
|
||||
(byte) keyboard_events_size ← ++ (byte) keyboard_events_size
|
||||
to:keyboard_event_scan::@7
|
||||
keyboard_event_scan::@7: scope:[keyboard_event_scan] from keyboard_event_scan::@16 keyboard_event_scan::@6
|
||||
to:keyboard_event_scan::@5
|
||||
keyboard_event_scan::@17: scope:[keyboard_event_scan] from
|
||||
to:keyboard_event_scan::@6
|
||||
keyboard_event_scan::@18: scope:[keyboard_event_scan] from keyboard_event_scan::@4
|
||||
*((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row) ← (byte) keyboard_event_scan::row_scan
|
||||
to:keyboard_event_scan::@8
|
||||
keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan::@18 keyboard_event_scan::@2
|
||||
(byte) keyboard_event_scan::row ← ++ (byte) keyboard_event_scan::row
|
||||
(boolean~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row != (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
if((boolean~) keyboard_event_scan::$15) goto keyboard_event_scan::@1
|
||||
to:keyboard_event_scan::@20
|
||||
keyboard_event_scan::@19: scope:[keyboard_event_scan] from
|
||||
to:keyboard_event_scan::@2
|
||||
keyboard_event_scan::@20: scope:[keyboard_event_scan] from keyboard_event_scan::@8
|
||||
keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan::@17 keyboard_event_scan::@7
|
||||
to:keyboard_event_scan::@6
|
||||
keyboard_event_scan::@18: scope:[keyboard_event_scan] from
|
||||
to:keyboard_event_scan::@7
|
||||
keyboard_event_scan::@19: scope:[keyboard_event_scan] from keyboard_event_scan::@5
|
||||
*((byte[8]) keyboard_scan_values + (byte) keyboard_event_scan::row) ← (byte) keyboard_event_scan::row_scan
|
||||
to:keyboard_event_scan::@3
|
||||
keyboard_event_scan::@20: scope:[keyboard_event_scan] from keyboard_event_scan::@3
|
||||
(byte) keyboard_modifiers ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte~) keyboard_event_scan::$16 ← call keyboard_event_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) keyboard_event_scan::$17 ← (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$18 ← ! (boolean~) keyboard_event_scan::$17
|
||||
if((boolean~) keyboard_event_scan::$18) goto keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$14 ← call keyboard_event_pressed (byte) KEY_LSHIFT
|
||||
(boolean~) keyboard_event_scan::$15 ← (byte~) keyboard_event_scan::$14 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$16 ← ! (boolean~) keyboard_event_scan::$15
|
||||
if((boolean~) keyboard_event_scan::$16) goto keyboard_event_scan::@9
|
||||
to:keyboard_event_scan::@21
|
||||
keyboard_event_scan::@9: scope:[keyboard_event_scan] from keyboard_event_scan::@20 keyboard_event_scan::@21
|
||||
(byte~) keyboard_event_scan::$20 ← call keyboard_event_pressed (byte) KEY_RSHIFT
|
||||
(boolean~) keyboard_event_scan::$21 ← (byte~) keyboard_event_scan::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$22 ← ! (boolean~) keyboard_event_scan::$21
|
||||
if((boolean~) keyboard_event_scan::$22) goto keyboard_event_scan::@10
|
||||
(byte~) keyboard_event_scan::$18 ← call keyboard_event_pressed (byte) KEY_RSHIFT
|
||||
(boolean~) keyboard_event_scan::$19 ← (byte~) keyboard_event_scan::$18 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$20 ← ! (boolean~) keyboard_event_scan::$19
|
||||
if((boolean~) keyboard_event_scan::$20) goto keyboard_event_scan::@10
|
||||
to:keyboard_event_scan::@22
|
||||
keyboard_event_scan::@21: scope:[keyboard_event_scan] from keyboard_event_scan::@20
|
||||
(byte~) keyboard_event_scan::$19 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_LSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$19
|
||||
(byte~) keyboard_event_scan::$17 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_LSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$17
|
||||
to:keyboard_event_scan::@9
|
||||
keyboard_event_scan::@10: scope:[keyboard_event_scan] from keyboard_event_scan::@22 keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$24 ← call keyboard_event_pressed (byte) KEY_CTRL
|
||||
(boolean~) keyboard_event_scan::$25 ← (byte~) keyboard_event_scan::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$26 ← ! (boolean~) keyboard_event_scan::$25
|
||||
if((boolean~) keyboard_event_scan::$26) goto keyboard_event_scan::@11
|
||||
(byte~) keyboard_event_scan::$22 ← call keyboard_event_pressed (byte) KEY_CTRL
|
||||
(boolean~) keyboard_event_scan::$23 ← (byte~) keyboard_event_scan::$22 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$24 ← ! (boolean~) keyboard_event_scan::$23
|
||||
if((boolean~) keyboard_event_scan::$24) goto keyboard_event_scan::@11
|
||||
to:keyboard_event_scan::@23
|
||||
keyboard_event_scan::@22: scope:[keyboard_event_scan] from keyboard_event_scan::@9
|
||||
(byte~) keyboard_event_scan::$23 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_RSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$23
|
||||
(byte~) keyboard_event_scan::$21 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_RSHIFT
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$21
|
||||
to:keyboard_event_scan::@10
|
||||
keyboard_event_scan::@11: scope:[keyboard_event_scan] from keyboard_event_scan::@10 keyboard_event_scan::@23
|
||||
(byte~) keyboard_event_scan::$28 ← call keyboard_event_pressed (byte) KEY_COMMODORE
|
||||
(boolean~) keyboard_event_scan::$29 ← (byte~) keyboard_event_scan::$28 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$30 ← ! (boolean~) keyboard_event_scan::$29
|
||||
if((boolean~) keyboard_event_scan::$30) goto keyboard_event_scan::@12
|
||||
(byte~) keyboard_event_scan::$26 ← call keyboard_event_pressed (byte) KEY_COMMODORE
|
||||
(boolean~) keyboard_event_scan::$27 ← (byte~) keyboard_event_scan::$26 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_scan::$28 ← ! (boolean~) keyboard_event_scan::$27
|
||||
if((boolean~) keyboard_event_scan::$28) goto keyboard_event_scan::@12
|
||||
to:keyboard_event_scan::@24
|
||||
keyboard_event_scan::@23: scope:[keyboard_event_scan] from keyboard_event_scan::@10
|
||||
(byte~) keyboard_event_scan::$27 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_CTRL
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$27
|
||||
(byte~) keyboard_event_scan::$25 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_CTRL
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$25
|
||||
to:keyboard_event_scan::@11
|
||||
keyboard_event_scan::@12: scope:[keyboard_event_scan] from keyboard_event_scan::@11 keyboard_event_scan::@24
|
||||
to:keyboard_event_scan::@return
|
||||
keyboard_event_scan::@24: scope:[keyboard_event_scan] from keyboard_event_scan::@11
|
||||
(byte~) keyboard_event_scan::$31 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_COMMODORE
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$31
|
||||
(byte~) keyboard_event_scan::$29 ← (byte) keyboard_modifiers | (byte) KEY_MODIFIER_COMMODORE
|
||||
(byte) keyboard_modifiers ← (byte~) keyboard_event_scan::$29
|
||||
to:keyboard_event_scan::@12
|
||||
keyboard_event_scan::@return: scope:[keyboard_event_scan] from keyboard_event_scan::@12
|
||||
return
|
||||
@ -1270,15 +1260,14 @@ keyboard_event_pressed::@1: scope:[keyboard_event_pressed] from
|
||||
to:@7
|
||||
keyboard_event_get: scope:[keyboard_event_get] from
|
||||
(boolean~) keyboard_event_get::$0 ← (byte) keyboard_events_size == (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) keyboard_event_get::$1 ← ! (boolean~) keyboard_event_get::$0
|
||||
if((boolean~) keyboard_event_get::$1) goto keyboard_event_get::@1
|
||||
if((boolean~) keyboard_event_get::$0) goto keyboard_event_get::@1
|
||||
to:keyboard_event_get::@3
|
||||
keyboard_event_get::@1: scope:[keyboard_event_get] from keyboard_event_get keyboard_event_get::@5
|
||||
(byte) keyboard_events_size ← -- (byte) keyboard_events_size
|
||||
(byte) keyboard_event_get::return ← *((byte[8]) keyboard_events + (byte) keyboard_events_size)
|
||||
(byte) keyboard_event_get::return ← (byte/word/signed word/dword/signed dword) 255
|
||||
to:keyboard_event_get::@return
|
||||
keyboard_event_get::@3: scope:[keyboard_event_get] from keyboard_event_get
|
||||
(byte) keyboard_event_get::return ← (byte/word/signed word/dword/signed dword) 255
|
||||
(byte) keyboard_events_size ← -- (byte) keyboard_events_size
|
||||
(byte) keyboard_event_get::return ← *((byte[8]) keyboard_events + (byte) keyboard_events_size)
|
||||
to:keyboard_event_get::@return
|
||||
keyboard_event_get::@return: scope:[keyboard_event_get] from keyboard_event_get::@1 keyboard_event_get::@2 keyboard_event_get::@3
|
||||
(byte) keyboard_event_get::return ← (byte) keyboard_event_get::return
|
||||
@ -1315,14 +1304,13 @@ main::@4: scope:[main] from main::@2 main::@4
|
||||
main::@9: scope:[main] from main::@4
|
||||
(byte~) main::$2 ← call keyboard_key_pressed (byte) KEY_SPACE
|
||||
(boolean~) main::$3 ← (byte~) main::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) main::$4 ← ! (boolean~) main::$3
|
||||
if((boolean~) main::$4) goto main::@5
|
||||
if((boolean~) main::$3) goto main::@5
|
||||
to:main::@10
|
||||
main::@5: scope:[main] from main::@11 main::@9
|
||||
*((byte*) BGCOL) ← (byte) BLUE
|
||||
*((byte*) BGCOL) ← (byte) GREEN
|
||||
to:main::@6
|
||||
main::@10: scope:[main] from main::@9
|
||||
*((byte*) BGCOL) ← (byte) GREEN
|
||||
*((byte*) BGCOL) ← (byte) BLUE
|
||||
to:main::@6
|
||||
main::@6: scope:[main] from main::@10 main::@5
|
||||
to:main::@1
|
||||
@ -1571,14 +1559,13 @@ main::@14: scope:[main] from main::@9
|
||||
(byte) keyboard_key_pressed::return#4 ← phi( main::@9/(byte) keyboard_key_pressed::return#2 )
|
||||
(byte~) main::$2 ← (byte) keyboard_key_pressed::return#4
|
||||
(boolean~) main::$3 ← (byte~) main::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) main::$4 ← ! (boolean~) main::$3
|
||||
if((boolean~) main::$4) goto main::@5
|
||||
if((boolean~) main::$3) goto main::@5
|
||||
to:main::@10
|
||||
main::@5: scope:[main] from main::@14
|
||||
*((byte*) BGCOL#0) ← (byte) BLUE#0
|
||||
*((byte*) BGCOL#0) ← (byte) GREEN#0
|
||||
to:main::@1
|
||||
main::@10: scope:[main] from main::@14
|
||||
*((byte*) BGCOL#0) ← (byte) GREEN#0
|
||||
*((byte*) BGCOL#0) ← (byte) BLUE#0
|
||||
to:main::@1
|
||||
main::@return: scope:[main] from main::@1
|
||||
return
|
||||
@ -1658,7 +1645,6 @@ SYMBOL TABLE SSA
|
||||
(boolean~) main::$1
|
||||
(byte~) main::$2
|
||||
(boolean~) main::$3
|
||||
(boolean~) main::$4
|
||||
(label) main::@1
|
||||
(label) main::@10
|
||||
(label) main::@13
|
||||
@ -1674,8 +1660,6 @@ Culled Empty Block (label) main::@13
|
||||
Culled Empty Block (label) main::@2
|
||||
Culled Empty Block (label) @9
|
||||
Succesful SSA optimization Pass2CullEmptyBlocks
|
||||
Inversing boolean not (boolean~) main::$4 ← (byte~) main::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) main::$3 ← (byte~) main::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
Succesful SSA optimization Pass2UnaryNotSimplification
|
||||
Not aliassing across scopes: keyboard_matrix_read::rowid#1 keyboard_matrix_read::rowid#0
|
||||
Not aliassing across scopes: keyboard_key_pressed::key#1 keyboard_key_pressed::key#0
|
||||
Not aliassing across scopes: keyboard_matrix_read::rowid#0 keyboard_key_pressed::rowidx#0
|
||||
@ -1703,7 +1687,7 @@ Redundant Phi (byte) keyboard_matrix_read::rowid#1 (byte) keyboard_matrix_read::
|
||||
Redundant Phi (byte) keyboard_key_pressed::key#1 (byte) keyboard_key_pressed::key#0
|
||||
Succesful SSA optimization Pass2RedundantPhiElimination
|
||||
Simple Condition (boolean~) main::$1 if(*((byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto main::@4
|
||||
Simple Condition (boolean~) main::$4 if((byte~) main::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@5
|
||||
Simple Condition (boolean~) main::$3 if((byte~) main::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@5
|
||||
Succesful SSA optimization Pass2ConditionalJumpSimplification
|
||||
Constant (const byte*) RASTER#0 = ((byte*))53266
|
||||
Constant (const byte*) BGCOL#0 = ((byte*))53281
|
||||
@ -1798,13 +1782,13 @@ main::@9: scope:[main] from main::@4
|
||||
to:main::@14
|
||||
main::@14: scope:[main] from main::@9
|
||||
[10] (byte~) main::$2 ← (byte) keyboard_key_pressed::return#2 [ main::$2 ] ( main:2 [ main::$2 ] )
|
||||
[11] if((byte~) main::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@5 [ ] ( main:2 [ ] )
|
||||
[11] if((byte~) main::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@5 [ ] ( main:2 [ ] )
|
||||
to:main::@10
|
||||
main::@10: scope:[main] from main::@14
|
||||
[12] *((const byte*) BGCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] )
|
||||
[12] *((const byte*) BGCOL#0) ← (const byte) BLUE#0 [ ] ( main:2 [ ] )
|
||||
to:main::@4
|
||||
main::@5: scope:[main] from main::@14
|
||||
[13] *((const byte*) BGCOL#0) ← (const byte) BLUE#0 [ ] ( main:2 [ ] )
|
||||
[13] *((const byte*) BGCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] )
|
||||
to:main::@4
|
||||
keyboard_key_pressed: scope:[keyboard_key_pressed] from main::@9
|
||||
[14] phi() [ ] ( main:2::keyboard_key_pressed:8 [ ] )
|
||||
@ -1986,20 +1970,20 @@ main: {
|
||||
//SEG19 [10] (byte~) main::$2 ← (byte) keyboard_key_pressed::return#2 [ main::$2 ] ( main:2 [ main::$2 ] ) -- vbuz1=vbuz2
|
||||
lda keyboard_key_pressed.return_2
|
||||
sta _2
|
||||
//SEG20 [11] if((byte~) main::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@5 [ ] ( main:2 [ ] ) -- vbuz1_eq_0_then_la1
|
||||
//SEG20 [11] if((byte~) main::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@5 [ ] ( main:2 [ ] ) -- vbuz1_neq_0_then_la1
|
||||
lda _2
|
||||
beq b5
|
||||
bne b5
|
||||
jmp b10
|
||||
//SEG21 main::@10
|
||||
b10:
|
||||
//SEG22 [12] *((const byte*) BGCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #GREEN
|
||||
//SEG22 [12] *((const byte*) BGCOL#0) ← (const byte) BLUE#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #BLUE
|
||||
sta BGCOL
|
||||
jmp b4
|
||||
//SEG23 main::@5
|
||||
b5:
|
||||
//SEG24 [13] *((const byte*) BGCOL#0) ← (const byte) BLUE#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #BLUE
|
||||
//SEG24 [13] *((const byte*) BGCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #GREEN
|
||||
sta BGCOL
|
||||
jmp b4
|
||||
}
|
||||
@ -2067,8 +2051,8 @@ keyboard_init: {
|
||||
|
||||
REGISTER UPLIFT POTENTIAL REGISTERS
|
||||
Statement [6] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto main::@4 [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
Statement [12] *((const byte*) BGCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
Statement [13] *((const byte*) BGCOL#0) ← (const byte) BLUE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
Statement [12] *((const byte*) BGCOL#0) ← (const byte) BLUE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
Statement [13] *((const byte*) BGCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] ) always clobbers reg byte a
|
||||
Statement [18] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0+(const byte) keyboard_key_pressed::colidx#0) [ keyboard_key_pressed::return#0 ] ( main:2::keyboard_key_pressed:8 [ keyboard_key_pressed::return#0 ] ) always clobbers reg byte a
|
||||
Statement [20] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0+(const byte) keyboard_key_pressed::rowidx#0) [ ] ( main:2::keyboard_key_pressed:8::keyboard_matrix_read:15 [ ] ) always clobbers reg byte a
|
||||
Statement [21] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::keyboard_key_pressed:8::keyboard_matrix_read:15 [ keyboard_matrix_read::return#0 ] ) always clobbers reg byte a
|
||||
@ -2152,20 +2136,20 @@ main: {
|
||||
b14:
|
||||
//SEG19 [10] (byte~) main::$2 ← (byte) keyboard_key_pressed::return#2 [ main::$2 ] ( main:2 [ main::$2 ] )
|
||||
// (byte~) main::$2 = (byte) keyboard_key_pressed::return#2 // register copy reg byte a
|
||||
//SEG20 [11] if((byte~) main::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@5 [ ] ( main:2 [ ] ) -- vbuaa_eq_0_then_la1
|
||||
//SEG20 [11] if((byte~) main::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@5 [ ] ( main:2 [ ] ) -- vbuaa_neq_0_then_la1
|
||||
cmp #0
|
||||
beq b5
|
||||
bne b5
|
||||
jmp b10
|
||||
//SEG21 main::@10
|
||||
b10:
|
||||
//SEG22 [12] *((const byte*) BGCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #GREEN
|
||||
//SEG22 [12] *((const byte*) BGCOL#0) ← (const byte) BLUE#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #BLUE
|
||||
sta BGCOL
|
||||
jmp b4
|
||||
//SEG23 main::@5
|
||||
b5:
|
||||
//SEG24 [13] *((const byte*) BGCOL#0) ← (const byte) BLUE#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #BLUE
|
||||
//SEG24 [13] *((const byte*) BGCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #GREEN
|
||||
sta BGCOL
|
||||
jmp b4
|
||||
}
|
||||
@ -2359,18 +2343,18 @@ main: {
|
||||
//SEG18 main::@14
|
||||
//SEG19 [10] (byte~) main::$2 ← (byte) keyboard_key_pressed::return#2 [ main::$2 ] ( main:2 [ main::$2 ] )
|
||||
// (byte~) main::$2 = (byte) keyboard_key_pressed::return#2 // register copy reg byte a
|
||||
//SEG20 [11] if((byte~) main::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@5 [ ] ( main:2 [ ] ) -- vbuaa_eq_0_then_la1
|
||||
//SEG20 [11] if((byte~) main::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@5 [ ] ( main:2 [ ] ) -- vbuaa_neq_0_then_la1
|
||||
cmp #0
|
||||
beq b5
|
||||
bne b5
|
||||
//SEG21 main::@10
|
||||
//SEG22 [12] *((const byte*) BGCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #GREEN
|
||||
//SEG22 [12] *((const byte*) BGCOL#0) ← (const byte) BLUE#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #BLUE
|
||||
sta BGCOL
|
||||
jmp b4
|
||||
//SEG23 main::@5
|
||||
b5:
|
||||
//SEG24 [13] *((const byte*) BGCOL#0) ← (const byte) BLUE#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #BLUE
|
||||
//SEG24 [13] *((const byte*) BGCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] ) -- _deref_pbuc1=vbuc2
|
||||
lda #GREEN
|
||||
sta BGCOL
|
||||
jmp b4
|
||||
}
|
||||
|
@ -102,8 +102,8 @@ main: {
|
||||
txa
|
||||
and #$80
|
||||
cmp #0
|
||||
beq b8
|
||||
lda #'1'
|
||||
bne b8
|
||||
lda #'0'
|
||||
sta (screen),y
|
||||
b9:
|
||||
txa
|
||||
@ -162,7 +162,7 @@ main: {
|
||||
bcc b13
|
||||
jmp b5
|
||||
b8:
|
||||
lda #'0'
|
||||
lda #'1'
|
||||
sta (screen),y
|
||||
jmp b9
|
||||
}
|
||||
|
@ -37,10 +37,10 @@ main::@7: scope:[main] from main::@28 main::@9
|
||||
[17] (byte) main::col#2 ← phi( main::@28/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@9/(byte) main::col#1 ) [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] ( main:2 [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] )
|
||||
[17] (byte) main::row_pressed_bits#2 ← phi( main::@28/(byte) main::row_pressed_bits#0 main::@9/(byte) main::row_pressed_bits#1 ) [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] ( main:2 [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] )
|
||||
[18] (byte~) main::$5 ← (byte) main::row_pressed_bits#2 & (byte/word/signed word/dword/signed dword) 128 [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 main::$5 ] ( main:2 [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 main::$5 ] )
|
||||
[19] if((byte~) main::$5==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@8 [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] ( main:2 [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] )
|
||||
[19] if((byte~) main::$5!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@8 [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] ( main:2 [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] )
|
||||
to:main::@18
|
||||
main::@18: scope:[main] from main::@7
|
||||
[20] *((byte*) main::screen#13 + (byte) main::col#2) ← (byte) '1' [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] ( main:2 [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] )
|
||||
[20] *((byte*) main::screen#13 + (byte) main::col#2) ← (byte) '0' [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] ( main:2 [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] )
|
||||
to:main::@9
|
||||
main::@9: scope:[main] from main::@18 main::@8
|
||||
[21] (byte) main::row_pressed_bits#1 ← (byte) main::row_pressed_bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::row#2 main::screen#13 main::col#2 main::row_pressed_bits#1 ] ( main:2 [ main::row#2 main::screen#13 main::col#2 main::row_pressed_bits#1 ] )
|
||||
@ -72,8 +72,8 @@ main::@22: scope:[main] from main::@29
|
||||
[36] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0 [ main::screen#2 main::ch#2 main::i#10 keyboard_key_pressed::return#2 ] ( main:2 [ main::screen#2 main::ch#2 main::i#10 keyboard_key_pressed::return#2 ] )
|
||||
to:main::@30
|
||||
main::@30: scope:[main] from main::@22
|
||||
[37] (byte~) main::$16 ← (byte) keyboard_key_pressed::return#2 [ main::screen#2 main::ch#2 main::i#10 main::$16 ] ( main:2 [ main::screen#2 main::ch#2 main::i#10 main::$16 ] )
|
||||
[38] if((byte~) main::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@11 [ main::screen#2 main::ch#2 main::i#10 ] ( main:2 [ main::screen#2 main::ch#2 main::i#10 ] )
|
||||
[37] (byte~) main::$15 ← (byte) keyboard_key_pressed::return#2 [ main::screen#2 main::ch#2 main::i#10 main::$15 ] ( main:2 [ main::screen#2 main::ch#2 main::i#10 main::$15 ] )
|
||||
[38] if((byte~) main::$15==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@11 [ main::screen#2 main::ch#2 main::i#10 ] ( main:2 [ main::screen#2 main::ch#2 main::i#10 ] )
|
||||
to:main::@23
|
||||
main::@23: scope:[main] from main::@30
|
||||
[39] *((byte*) main::screen#2 + (byte) main::i#10) ← (byte) main::ch#2 [ main::screen#2 main::ch#2 main::i#10 ] ( main:2 [ main::screen#2 main::ch#2 main::i#10 ] )
|
||||
@ -91,7 +91,7 @@ main::@13: scope:[main] from main::@11 main::@13
|
||||
[47] if((byte) main::i#2<(byte/signed byte/word/signed word/dword/signed dword) 5) goto main::@13 [ main::screen#2 main::i#2 ] ( main:2 [ main::screen#2 main::i#2 ] )
|
||||
to:main::@5
|
||||
main::@8: scope:[main] from main::@7
|
||||
[48] *((byte*) main::screen#13 + (byte) main::col#2) ← (byte) '0' [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] ( main:2 [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] )
|
||||
[48] *((byte*) main::screen#13 + (byte) main::col#2) ← (byte) '1' [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] ( main:2 [ main::row#2 main::screen#13 main::row_pressed_bits#2 main::col#2 ] )
|
||||
to:main::@9
|
||||
keyboard_key_pressed: scope:[keyboard_key_pressed] from main::@22
|
||||
[49] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#0 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_key_pressed::key#0 keyboard_key_pressed::colidx#0 ] ( main:2::keyboard_key_pressed:35 [ main::screen#2 main::ch#2 main::i#10 keyboard_key_pressed::key#0 keyboard_key_pressed::colidx#0 ] )
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -151,7 +151,7 @@
|
||||
(byte[8]) keyboard_matrix_row_bitmask
|
||||
(const byte[8]) keyboard_matrix_row_bitmask#0 keyboard_matrix_row_bitmask = { (byte/word/signed word/dword/signed dword) 254, (byte/word/signed word/dword/signed dword) 253, (byte/word/signed word/dword/signed dword) 251, (byte/word/signed word/dword/signed dword) 247, (byte/word/signed word/dword/signed dword) 239, (byte/word/signed word/dword/signed dword) 223, (byte/word/signed word/dword/signed dword) 191, (byte/signed byte/word/signed word/dword/signed dword) 127 }
|
||||
(void()) main()
|
||||
(byte~) main::$16 reg byte a 202.0
|
||||
(byte~) main::$15 reg byte a 202.0
|
||||
(byte~) main::$5 reg byte a 2002.0
|
||||
(label) main::@1
|
||||
(label) main::@10
|
||||
@ -213,7 +213,7 @@ reg byte a [ keyboard_get_keycode::return#2 ]
|
||||
reg byte a [ main::key#0 ]
|
||||
reg byte y [ keyboard_key_pressed::key#0 ]
|
||||
reg byte a [ keyboard_key_pressed::return#2 ]
|
||||
reg byte a [ main::$16 ]
|
||||
reg byte a [ main::$15 ]
|
||||
zp ZP_BYTE:5 [ keyboard_key_pressed::colidx#0 ]
|
||||
reg byte a [ keyboard_key_pressed::rowidx#0 ]
|
||||
reg byte a [ keyboard_matrix_read::return#2 ]
|
||||
|
@ -389,13 +389,69 @@ mul16u: {
|
||||
}
|
||||
muls16s: {
|
||||
.label m = $a
|
||||
.label i = 8
|
||||
.label return = $a
|
||||
.label j = 8
|
||||
.label return = $a
|
||||
.label i = 8
|
||||
.label a = 2
|
||||
.label b = 4
|
||||
lda a+1
|
||||
bpl b1
|
||||
bmi b6
|
||||
bmi b2
|
||||
bne !+
|
||||
lda a
|
||||
beq b2
|
||||
!:
|
||||
lda #<0
|
||||
sta j
|
||||
sta j+1
|
||||
sta m
|
||||
sta m+1
|
||||
lda #<0>>$10
|
||||
sta m+2
|
||||
lda #>0>>$10
|
||||
sta m+3
|
||||
b3:
|
||||
lda b+1
|
||||
ora #$7f
|
||||
bmi !+
|
||||
lda #0
|
||||
!:
|
||||
sta $ff
|
||||
lda m
|
||||
clc
|
||||
adc b
|
||||
sta m
|
||||
lda m+1
|
||||
adc b+1
|
||||
sta m+1
|
||||
lda m+2
|
||||
adc $ff
|
||||
sta m+2
|
||||
lda m+3
|
||||
adc $ff
|
||||
sta m+3
|
||||
inc j
|
||||
bne !+
|
||||
inc j+1
|
||||
!:
|
||||
lda j+1
|
||||
cmp a+1
|
||||
bne b3
|
||||
lda j
|
||||
cmp a
|
||||
bne b3
|
||||
jmp b4
|
||||
b2:
|
||||
lda #<0
|
||||
sta return
|
||||
sta return+1
|
||||
lda #<0>>$10
|
||||
sta return+2
|
||||
lda #>0>>$10
|
||||
sta return+3
|
||||
b4:
|
||||
rts
|
||||
b6:
|
||||
lda #<0
|
||||
sta i
|
||||
sta i+1
|
||||
@ -405,7 +461,7 @@ muls16s: {
|
||||
sta m+2
|
||||
lda #>0>>$10
|
||||
sta m+3
|
||||
b2:
|
||||
b5:
|
||||
lda b+1
|
||||
ora #$7f
|
||||
bmi !+
|
||||
@ -432,68 +488,11 @@ muls16s: {
|
||||
dec i
|
||||
lda i+1
|
||||
cmp a+1
|
||||
bne b2
|
||||
bne b5
|
||||
lda i
|
||||
cmp a
|
||||
bne b2
|
||||
jmp b3
|
||||
b6:
|
||||
lda #<0
|
||||
sta return
|
||||
sta return+1
|
||||
lda #<0>>$10
|
||||
sta return+2
|
||||
lda #>0>>$10
|
||||
sta return+3
|
||||
b3:
|
||||
rts
|
||||
b1:
|
||||
lda a+1
|
||||
bmi b6
|
||||
bne !+
|
||||
lda a
|
||||
beq b6
|
||||
!:
|
||||
lda #<0
|
||||
sta j
|
||||
sta j+1
|
||||
sta m
|
||||
sta m+1
|
||||
lda #<0>>$10
|
||||
sta m+2
|
||||
lda #>0>>$10
|
||||
sta m+3
|
||||
b5:
|
||||
lda b+1
|
||||
ora #$7f
|
||||
bmi !+
|
||||
lda #0
|
||||
!:
|
||||
sta $ff
|
||||
lda m
|
||||
clc
|
||||
adc b
|
||||
sta m
|
||||
lda m+1
|
||||
adc b+1
|
||||
sta m+1
|
||||
lda m+2
|
||||
adc $ff
|
||||
sta m+2
|
||||
lda m+3
|
||||
adc $ff
|
||||
sta m+3
|
||||
inc j
|
||||
bne !+
|
||||
inc j+1
|
||||
!:
|
||||
lda j+1
|
||||
cmp a+1
|
||||
bne b5
|
||||
lda j
|
||||
cmp a
|
||||
bne b5
|
||||
jmp b3
|
||||
jmp b4
|
||||
}
|
||||
mul16u_compare: {
|
||||
.label a = 2
|
||||
|
@ -306,31 +306,31 @@ mul16u::@4: scope:[mul16u] from mul16u::@2 mul16u::@7
|
||||
[147] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] ( main:2::mul16s_compare:11::mul16s:25::mul16u:122 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 mul16s_compare::ms#0 print_line_cursor#1 mul16s::a#0 mul16s::b#0 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] main:2::mul16u_compare:9::mul16u:172 [ mul16u_compare::i#9 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#2 mul16u_compare::ms#0 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] )
|
||||
to:mul16u::@1
|
||||
muls16s: scope:[muls16s] from mul16s_compare::@2
|
||||
[148] if((signed word) muls16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls16s::@1 [ muls16s::a#0 muls16s::b#0 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 ] )
|
||||
to:muls16s::@2
|
||||
muls16s::@2: scope:[muls16s] from muls16s muls16s::@2
|
||||
[149] (signed word) muls16s::i#2 ← phi( muls16s::@2/(signed word) muls16s::i#1 muls16s/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls16s::a#0 muls16s::b#0 muls16s::m#3 muls16s::i#2 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#3 muls16s::i#2 ] )
|
||||
[149] (signed dword) muls16s::m#3 ← phi( muls16s::@2/(signed dword) muls16s::m#1 muls16s/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls16s::a#0 muls16s::b#0 muls16s::m#3 muls16s::i#2 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#3 muls16s::i#2 ] )
|
||||
[150] (signed dword) muls16s::m#1 ← (signed dword) muls16s::m#3 - (signed word) muls16s::b#0 [ muls16s::a#0 muls16s::b#0 muls16s::i#2 muls16s::m#1 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::i#2 muls16s::m#1 ] )
|
||||
[151] (signed word) muls16s::i#1 ← -- (signed word) muls16s::i#2 [ muls16s::a#0 muls16s::b#0 muls16s::m#1 muls16s::i#1 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#1 muls16s::i#1 ] )
|
||||
[152] if((signed word) muls16s::i#1!=(signed word) muls16s::a#0) goto muls16s::@2 [ muls16s::a#0 muls16s::b#0 muls16s::m#1 muls16s::i#1 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#1 muls16s::i#1 ] )
|
||||
[148] if((signed word) muls16s::a#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls16s::@5 [ muls16s::a#0 muls16s::b#0 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 ] )
|
||||
to:muls16s::@6
|
||||
muls16s::@6: scope:[muls16s] from muls16s
|
||||
[149] if((signed word) muls16s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls16s::@4 [ muls16s::a#0 muls16s::b#0 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 ] )
|
||||
to:muls16s::@3
|
||||
muls16s::@3: scope:[muls16s] from muls16s::@1 muls16s::@2 muls16s::@5
|
||||
[153] (signed dword) muls16s::return#0 ← phi( muls16s::@2/(signed dword) muls16s::m#1 muls16s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@5/(signed dword) muls16s::m#2 ) [ muls16s::return#0 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::return#0 ] )
|
||||
muls16s::@3: scope:[muls16s] from muls16s::@3 muls16s::@6
|
||||
[150] (signed word) muls16s::j#2 ← phi( muls16s::@3/(signed word) muls16s::j#1 muls16s::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls16s::a#0 muls16s::b#0 muls16s::m#3 muls16s::j#2 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#3 muls16s::j#2 ] )
|
||||
[150] (signed dword) muls16s::m#3 ← phi( muls16s::@3/(signed dword) muls16s::m#1 muls16s::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls16s::a#0 muls16s::b#0 muls16s::m#3 muls16s::j#2 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#3 muls16s::j#2 ] )
|
||||
[151] (signed dword) muls16s::m#1 ← (signed dword) muls16s::m#3 + (signed word) muls16s::b#0 [ muls16s::a#0 muls16s::b#0 muls16s::j#2 muls16s::m#1 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::j#2 muls16s::m#1 ] )
|
||||
[152] (signed word) muls16s::j#1 ← ++ (signed word) muls16s::j#2 [ muls16s::a#0 muls16s::b#0 muls16s::m#1 muls16s::j#1 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#1 muls16s::j#1 ] )
|
||||
[153] if((signed word) muls16s::j#1!=(signed word) muls16s::a#0) goto muls16s::@3 [ muls16s::a#0 muls16s::b#0 muls16s::m#1 muls16s::j#1 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#1 muls16s::j#1 ] )
|
||||
to:muls16s::@4
|
||||
muls16s::@4: scope:[muls16s] from muls16s::@3 muls16s::@5 muls16s::@6
|
||||
[154] (signed dword) muls16s::return#0 ← phi( muls16s::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@3/(signed dword) muls16s::m#1 muls16s::@5/(signed dword) muls16s::m#2 ) [ muls16s::return#0 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::return#0 ] )
|
||||
to:muls16s::@return
|
||||
muls16s::@return: scope:[muls16s] from muls16s::@3
|
||||
[154] return [ muls16s::return#0 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::return#0 ] )
|
||||
muls16s::@return: scope:[muls16s] from muls16s::@4
|
||||
[155] return [ muls16s::return#0 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::return#0 ] )
|
||||
to:@return
|
||||
muls16s::@1: scope:[muls16s] from muls16s
|
||||
[155] if((signed word) muls16s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls16s::@3 [ muls16s::a#0 muls16s::b#0 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 ] )
|
||||
to:muls16s::@5
|
||||
muls16s::@5: scope:[muls16s] from muls16s::@1 muls16s::@5
|
||||
[156] (signed word) muls16s::j#2 ← phi( muls16s::@5/(signed word) muls16s::j#1 muls16s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls16s::a#0 muls16s::b#0 muls16s::m#5 muls16s::j#2 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#5 muls16s::j#2 ] )
|
||||
[156] (signed dword) muls16s::m#5 ← phi( muls16s::@5/(signed dword) muls16s::m#2 muls16s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls16s::a#0 muls16s::b#0 muls16s::m#5 muls16s::j#2 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#5 muls16s::j#2 ] )
|
||||
[157] (signed dword) muls16s::m#2 ← (signed dword) muls16s::m#5 + (signed word) muls16s::b#0 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::j#2 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::j#2 ] )
|
||||
[158] (signed word) muls16s::j#1 ← ++ (signed word) muls16s::j#2 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::j#1 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::j#1 ] )
|
||||
[159] if((signed word) muls16s::j#1!=(signed word) muls16s::a#0) goto muls16s::@5 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::j#1 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::j#1 ] )
|
||||
to:muls16s::@3
|
||||
muls16s::@5: scope:[muls16s] from muls16s muls16s::@5
|
||||
[156] (signed word) muls16s::i#2 ← phi( muls16s/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@5/(signed word) muls16s::i#1 ) [ muls16s::a#0 muls16s::b#0 muls16s::m#5 muls16s::i#2 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#5 muls16s::i#2 ] )
|
||||
[156] (signed dword) muls16s::m#5 ← phi( muls16s/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@5/(signed dword) muls16s::m#2 ) [ muls16s::a#0 muls16s::b#0 muls16s::m#5 muls16s::i#2 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#5 muls16s::i#2 ] )
|
||||
[157] (signed dword) muls16s::m#2 ← (signed dword) muls16s::m#5 - (signed word) muls16s::b#0 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#2 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#2 ] )
|
||||
[158] (signed word) muls16s::i#1 ← -- (signed word) muls16s::i#2 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] )
|
||||
[159] if((signed word) muls16s::i#1!=(signed word) muls16s::a#0) goto muls16s::@5 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ( main:2::mul16s_compare:11::muls16s:20 [ mul16s_compare::i#9 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#2 print_line_cursor#1 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] )
|
||||
to:muls16s::@4
|
||||
mul16u_compare: scope:[mul16u_compare] from main::@2
|
||||
[160] phi() [ ] ( main:2::mul16u_compare:9 [ ] )
|
||||
to:mul16u_compare::@1
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -223,10 +223,10 @@
|
||||
(byte[512]) mulf_sqr2_lo
|
||||
(const byte[512]) mulf_sqr2_lo#0 mulf_sqr2_lo = { fill( 512, 0) }
|
||||
(signed dword()) muls16s((signed word) muls16s::a , (signed word) muls16s::b)
|
||||
(label) muls16s::@1
|
||||
(label) muls16s::@2
|
||||
(label) muls16s::@3
|
||||
(label) muls16s::@4
|
||||
(label) muls16s::@5
|
||||
(label) muls16s::@6
|
||||
(label) muls16s::@return
|
||||
(signed word) muls16s::a
|
||||
(signed word) muls16s::a#0 a zp ZP_WORD:2 175.58333333333334
|
||||
@ -363,7 +363,7 @@ zp ZP_WORD:4 [ mul16s_compare::b#2 mul16s_compare::b#5 mul16s_compare::b#1 muls1
|
||||
reg byte y [ mul16s_compare::j#2 mul16s_compare::j#1 ]
|
||||
reg byte a [ mul16s_compare::ok#2 ]
|
||||
zp ZP_WORD:6 [ print_line_cursor#20 print_line_cursor#39 print_line_cursor#1 mulf_init::sqr#3 mulf_init::sqr#4 mulf_init::sqr#1 mulf_init::sqr#2 ]
|
||||
zp ZP_WORD:8 [ print_str::str#11 print_str::str#13 print_str::str#0 mul16u::a#3 mul16u::a#6 mul16u::a#8 mul16u::a#2 mul16u::a#0 muls16s::i#2 muls16s::i#1 muls16s::j#2 muls16s::j#1 mul16s::$6 mul16s::$16 mul16s::$12 mul16s::$17 ]
|
||||
zp ZP_WORD:8 [ print_str::str#11 print_str::str#13 print_str::str#0 mul16u::a#3 mul16u::a#6 mul16u::a#8 mul16u::a#2 mul16u::a#0 muls16s::j#2 muls16s::j#1 muls16s::i#2 muls16s::i#1 mul16s::$6 mul16s::$16 mul16s::$12 mul16s::$17 ]
|
||||
zp ZP_DWORD:10 [ print_sdword::dw#4 print_sdword::dw#3 print_sdword::dw#1 print_sdword::dw#2 print_sdword::dw#0 print_dword::dw#3 print_dword::dw#1 print_dword::dw#2 print_dword::dw#0 mul16s_error::ms#0 mul16s_compare::ms#0 mul16u_compare::ms#0 mul16u_error::ms#0 muls16s::m#5 muls16s::return#0 muls16s::m#3 muls16s::m#1 muls16s::m#2 muls16s::return#2 muls16u::return#0 muls16u::m#3 muls16u::m#1 muls16u::return#2 ]
|
||||
reg byte x [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
reg byte a [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ]
|
||||
|
@ -366,46 +366,14 @@ muls8s: {
|
||||
.label return = 8
|
||||
.label a = 2
|
||||
lda a
|
||||
cmp #0
|
||||
bpl b1
|
||||
lda #0
|
||||
tay
|
||||
sta m
|
||||
sta m+1
|
||||
b2:
|
||||
txa
|
||||
sta $fe
|
||||
ora #$7f
|
||||
bmi !+
|
||||
lda #0
|
||||
!:
|
||||
sta $ff
|
||||
sec
|
||||
lda m
|
||||
sbc $fe
|
||||
sta m
|
||||
lda m+1
|
||||
sbc $ff
|
||||
sta m+1
|
||||
dey
|
||||
cpy a
|
||||
bne b2
|
||||
jmp b3
|
||||
b6:
|
||||
lda #<0
|
||||
sta return
|
||||
sta return+1
|
||||
b3:
|
||||
rts
|
||||
b1:
|
||||
lda a
|
||||
cmp #1
|
||||
bmi b6
|
||||
cmp #1
|
||||
bmi b2
|
||||
lda #0
|
||||
tay
|
||||
sta m
|
||||
sta m+1
|
||||
b5:
|
||||
b3:
|
||||
txa
|
||||
sta $fe
|
||||
ora #$7f
|
||||
@ -422,8 +390,38 @@ muls8s: {
|
||||
sta m+1
|
||||
iny
|
||||
cpy a
|
||||
bne b3
|
||||
jmp b4
|
||||
b2:
|
||||
lda #<0
|
||||
sta return
|
||||
sta return+1
|
||||
b4:
|
||||
rts
|
||||
b6:
|
||||
lda #0
|
||||
tay
|
||||
sta m
|
||||
sta m+1
|
||||
b5:
|
||||
txa
|
||||
sta $fe
|
||||
ora #$7f
|
||||
bmi !+
|
||||
lda #0
|
||||
!:
|
||||
sta $ff
|
||||
sec
|
||||
lda m
|
||||
sbc $fe
|
||||
sta m
|
||||
lda m+1
|
||||
sbc $ff
|
||||
sta m+1
|
||||
dey
|
||||
cpy a
|
||||
bne b5
|
||||
jmp b3
|
||||
jmp b4
|
||||
}
|
||||
mul8u_compare: {
|
||||
.label ms = 8
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user