mirror of
https://gitlab.com/camelot/kickc.git
synced 2024-11-14 23:04:57 +00:00
Improved dword type inference.
This commit is contained in:
parent
9025b7d64a
commit
3d33851983
@ -128,12 +128,18 @@ public class SymbolTypeInference {
|
||||
if(type1 == null && type2 instanceof SymbolTypePointer) {
|
||||
return ((SymbolTypePointer) type2).getElementType();
|
||||
}
|
||||
if(SymbolType.WORD.equals(type1) || SymbolType.WORD.equals(type2)) {
|
||||
return SymbolType.WORD;
|
||||
} else if(SymbolType.isByte(type1) && SymbolType.isByte(type2)) {
|
||||
if(SymbolType.isByte(type1) && SymbolType.isByte(type2)) {
|
||||
return SymbolType.BYTE;
|
||||
} else if(SymbolType.SBYTE.equals(type1) && SymbolType.SBYTE.equals(type2)) {
|
||||
return SymbolType.SBYTE;
|
||||
} else if(SymbolType.isWord(type1) && SymbolType.isWord(type2)) {
|
||||
return SymbolType.WORD;
|
||||
} else if(SymbolType.isSWord(type1) && SymbolType.isSWord(type2)) {
|
||||
return SymbolType.SWORD;
|
||||
} else if(SymbolType.isDWord(type1) && SymbolType.isDWord(type2)) {
|
||||
return SymbolType.DWORD;
|
||||
} else if(SymbolType.isSDWord(type1) && SymbolType.isSDWord(type2)) {
|
||||
return SymbolType.SDWORD;
|
||||
}
|
||||
throw new RuntimeException("Type inference case not handled " + type1 + " " + operator + " " + type2);
|
||||
case "*idx":
|
||||
@ -148,12 +154,13 @@ public class SymbolTypeInference {
|
||||
case "&":
|
||||
case "|":
|
||||
case "^":
|
||||
if(SymbolType.WORD.equals(type1) || SymbolType.WORD.equals(type2)) {
|
||||
return SymbolType.WORD;
|
||||
} else if(SymbolType.isByte(type1) && SymbolType.isByte(type2)) {
|
||||
if(SymbolType.isByte(type1) && SymbolType.isByte(type2)) {
|
||||
return SymbolType.BYTE;
|
||||
} else if(SymbolType.isWord(type1) && SymbolType.isWord(type2)) {
|
||||
return SymbolType.WORD;
|
||||
} else if(SymbolType.isDWord(type1) || SymbolType.isSDWord(type2)) {
|
||||
return SymbolType.DWORD;
|
||||
}
|
||||
|
||||
throw new RuntimeException("Type inference case not handled " + type1 + " " + operator + " " + type2);
|
||||
case "<<":
|
||||
case ">>":
|
||||
@ -165,6 +172,10 @@ public class SymbolTypeInference {
|
||||
return SymbolType.WORD;
|
||||
} else if(SymbolType.isSWord(type1)) {
|
||||
return SymbolType.SWORD;
|
||||
} else if(SymbolType.isDWord(type1)) {
|
||||
return SymbolType.DWORD;
|
||||
} else if(SymbolType.isSDWord(type1)) {
|
||||
return SymbolType.SDWORD;
|
||||
}
|
||||
throw new RuntimeException("Type inference case not handled " + type1 + " " + operator + " " + type2);
|
||||
default:
|
||||
@ -201,9 +212,9 @@ public class SymbolTypeInference {
|
||||
return SymbolType.WORD;
|
||||
} else if(SymbolType.isSWord(type1) && (SymbolType.isSWord(type2) || SymbolType.isSByte(type2))) {
|
||||
return SymbolType.SWORD;
|
||||
} else if(SymbolType.isDWord(type1) && (SymbolType.isDWord(type2) || SymbolType.isWord(type2))|| SymbolType.isByte(type2)) {
|
||||
} else if(SymbolType.isDWord(type1) && (SymbolType.isDWord(type2) || SymbolType.isWord(type2)) || SymbolType.isByte(type2)) {
|
||||
return SymbolType.DWORD;
|
||||
} else if(SymbolType.isSDWord(type1) && (SymbolType.isSDWord(type2) || SymbolType.isSWord(type2)|| SymbolType.isSByte(type2))) {
|
||||
} else if(SymbolType.isSDWord(type1) && (SymbolType.isSDWord(type2) || SymbolType.isSWord(type2) || SymbolType.isSByte(type2))) {
|
||||
return SymbolType.SDWORD;
|
||||
}
|
||||
throw new RuntimeException("Type inference case not handled " + type1 + " " + "+" + " " + type2);
|
||||
@ -218,6 +229,10 @@ public class SymbolTypeInference {
|
||||
return SymbolType.SWORD;
|
||||
} else if(SymbolType.isWord(type1) || SymbolType.isWord(type2)) {
|
||||
return SymbolType.WORD;
|
||||
} else if(SymbolType.isSDWord(type1) || SymbolType.isSDWord(type2)) {
|
||||
return SymbolType.SDWORD;
|
||||
} else if(SymbolType.isDWord(type1) || SymbolType.isDWord(type2)) {
|
||||
return SymbolType.DWORD;
|
||||
}
|
||||
throw new RuntimeException("Type inference case not handled " + type1 + " " + "+" + " " + type2);
|
||||
}
|
||||
@ -241,6 +256,12 @@ public class SymbolTypeInference {
|
||||
if(SymbolType.isSWord(type1) && (SymbolType.isSWord(type2) || SymbolType.isSByte(type2))) {
|
||||
return SymbolType.SWORD;
|
||||
}
|
||||
if(SymbolType.isDWord(type1) && (SymbolType.isDWord(type2) || SymbolType.isWord(type2) || SymbolType.isByte(type2))) {
|
||||
return SymbolType.DWORD;
|
||||
}
|
||||
if(SymbolType.isSDWord(type1) && (SymbolType.isSDWord(type2) || SymbolType.isSWord(type2) || SymbolType.isSByte(type2))) {
|
||||
return SymbolType.SDWORD;
|
||||
}
|
||||
throw new RuntimeException("Type inference case not handled " + type1 + " - " + type2);
|
||||
}
|
||||
|
||||
@ -256,7 +277,7 @@ public class SymbolTypeInference {
|
||||
return true;
|
||||
} else if(type instanceof SymbolTypeInline) {
|
||||
SymbolTypeInline typeInline = (SymbolTypeInline) type;
|
||||
return typeInline.isByte() || typeInline.isSByte() || typeInline.isWord() || typeInline.isSWord();
|
||||
return typeInline.isByte() || typeInline.isSByte() || typeInline.isWord() || typeInline.isSWord() || typeInline.isDWord() || typeInline.isSDWord();
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
|
@ -10,7 +10,7 @@ import java.util.Collection;
|
||||
public class SymbolTypeInline implements SymbolType {
|
||||
|
||||
/** All numeric types. */
|
||||
public static final SymbolTypeInline NUMERIC = new SymbolTypeInline(Arrays.asList(BYTE, SBYTE, WORD, SWORD));
|
||||
public static final SymbolTypeInline NUMERIC = new SymbolTypeInline(Arrays.asList(BYTE, SBYTE, WORD, SWORD, DWORD, SDWORD));
|
||||
/**
|
||||
* All potential types for the inline constant.
|
||||
*/
|
||||
|
@ -251,13 +251,13 @@ proc (void()) line((byte) line::x0 , (byte) line::x1 , (byte) line::y0 , (byte)
|
||||
(boolean~) line::$0 ← (byte) line::x0 < (byte) line::x1
|
||||
(boolean~) line::$1 ← ! (boolean~) line::$0
|
||||
if((boolean~) line::$1) goto line::@1
|
||||
(byte/signed byte/word/signed word~) line::$2 ← (byte) line::x1 - (byte) line::x0
|
||||
(byte) line::xd ← (byte/signed byte/word/signed word~) line::$2
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$2 ← (byte) line::x1 - (byte) line::x0
|
||||
(byte) line::xd ← (byte/signed byte/word/signed word/dword/signed dword~) line::$2
|
||||
(boolean~) line::$3 ← (byte) line::y0 < (byte) line::y1
|
||||
(boolean~) line::$4 ← ! (boolean~) line::$3
|
||||
if((boolean~) line::$4) goto line::@2
|
||||
(byte/signed byte/word/signed word~) line::$5 ← (byte) line::y1 - (byte) line::y0
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word~) line::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$5 ← (byte) line::y1 - (byte) line::y0
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word/dword/signed dword~) line::$5
|
||||
(boolean~) line::$6 ← (byte) line::yd < (byte) line::xd
|
||||
(boolean~) line::$7 ← ! (boolean~) line::$6
|
||||
if((boolean~) line::$7) goto line::@3
|
||||
@ -268,8 +268,8 @@ line::@3:
|
||||
line::@4:
|
||||
goto line::@5
|
||||
line::@2:
|
||||
(byte/signed byte/word/signed word~) line::$10 ← (byte) line::y0 - (byte) line::y1
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word~) line::$10
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$10 ← (byte) line::y0 - (byte) line::y1
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word/dword/signed dword~) line::$10
|
||||
(boolean~) line::$11 ← (byte) line::yd < (byte) line::xd
|
||||
(boolean~) line::$12 ← ! (boolean~) line::$11
|
||||
if((boolean~) line::$12) goto line::@6
|
||||
@ -281,13 +281,13 @@ line::@7:
|
||||
line::@5:
|
||||
goto line::@8
|
||||
line::@1:
|
||||
(byte/signed byte/word/signed word~) line::$15 ← (byte) line::x0 - (byte) line::x1
|
||||
(byte) line::xd ← (byte/signed byte/word/signed word~) line::$15
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$15 ← (byte) line::x0 - (byte) line::x1
|
||||
(byte) line::xd ← (byte/signed byte/word/signed word/dword/signed dword~) line::$15
|
||||
(boolean~) line::$16 ← (byte) line::y0 < (byte) line::y1
|
||||
(boolean~) line::$17 ← ! (boolean~) line::$16
|
||||
if((boolean~) line::$17) goto line::@9
|
||||
(byte/signed byte/word/signed word~) line::$18 ← (byte) line::y1 - (byte) line::y0
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word~) line::$18
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$18 ← (byte) line::y1 - (byte) line::y0
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word/dword/signed dword~) line::$18
|
||||
(boolean~) line::$19 ← (byte) line::yd < (byte) line::xd
|
||||
(boolean~) line::$20 ← ! (boolean~) line::$19
|
||||
if((boolean~) line::$20) goto line::@10
|
||||
@ -298,8 +298,8 @@ line::@10:
|
||||
line::@11:
|
||||
goto line::@12
|
||||
line::@9:
|
||||
(byte/signed byte/word/signed word~) line::$23 ← (byte) line::y0 - (byte) line::y1
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word~) line::$23
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$23 ← (byte) line::y0 - (byte) line::y1
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word/dword/signed dword~) line::$23
|
||||
(boolean~) line::$24 ← (byte) line::yd < (byte) line::xd
|
||||
(boolean~) line::$25 ← ! (boolean~) line::$24
|
||||
if((boolean~) line::$25) goto line::@13
|
||||
@ -325,8 +325,8 @@ line_xdyi::@1:
|
||||
(boolean~) line_xdyi::$4 ← ! (boolean~) line_xdyi::$3
|
||||
if((boolean~) line_xdyi::$4) goto line_xdyi::@2
|
||||
(byte) line_xdyi::y ← ++ (byte) line_xdyi::y
|
||||
(byte/signed byte/word/signed word~) line_xdyi::$5 ← (byte) line_xdyi::e - (byte) line_xdyi::xd
|
||||
(byte) line_xdyi::e ← (byte/signed byte/word/signed word~) line_xdyi::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_xdyi::$5 ← (byte) line_xdyi::e - (byte) line_xdyi::xd
|
||||
(byte) line_xdyi::e ← (byte/signed byte/word/signed word/dword/signed dword~) line_xdyi::$5
|
||||
line_xdyi::@2:
|
||||
(byte/word~) line_xdyi::$6 ← (byte) line_xdyi::x1 + (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(boolean~) line_xdyi::$7 ← (byte) line_xdyi::x != (byte/word~) line_xdyi::$6
|
||||
@ -346,8 +346,8 @@ line_xdyd::@1:
|
||||
(boolean~) line_xdyd::$4 ← ! (boolean~) line_xdyd::$3
|
||||
if((boolean~) line_xdyd::$4) goto line_xdyd::@2
|
||||
(byte) line_xdyd::y ← -- (byte) line_xdyd::y
|
||||
(byte/signed byte/word/signed word~) line_xdyd::$5 ← (byte) line_xdyd::e - (byte) line_xdyd::xd
|
||||
(byte) line_xdyd::e ← (byte/signed byte/word/signed word~) line_xdyd::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_xdyd::$5 ← (byte) line_xdyd::e - (byte) line_xdyd::xd
|
||||
(byte) line_xdyd::e ← (byte/signed byte/word/signed word/dword/signed dword~) line_xdyd::$5
|
||||
line_xdyd::@2:
|
||||
(byte/word~) line_xdyd::$6 ← (byte) line_xdyd::x1 + (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(boolean~) line_xdyd::$7 ← (byte) line_xdyd::x != (byte/word~) line_xdyd::$6
|
||||
@ -367,8 +367,8 @@ line_ydxi::@1:
|
||||
(boolean~) line_ydxi::$4 ← ! (boolean~) line_ydxi::$3
|
||||
if((boolean~) line_ydxi::$4) goto line_ydxi::@2
|
||||
(byte) line_ydxi::x ← ++ (byte) line_ydxi::x
|
||||
(byte/signed byte/word/signed word~) line_ydxi::$5 ← (byte) line_ydxi::e - (byte) line_ydxi::yd
|
||||
(byte) line_ydxi::e ← (byte/signed byte/word/signed word~) line_ydxi::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_ydxi::$5 ← (byte) line_ydxi::e - (byte) line_ydxi::yd
|
||||
(byte) line_ydxi::e ← (byte/signed byte/word/signed word/dword/signed dword~) line_ydxi::$5
|
||||
line_ydxi::@2:
|
||||
(byte/word~) line_ydxi::$6 ← (byte) line_ydxi::y1 + (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(boolean~) line_ydxi::$7 ← (byte) line_ydxi::y != (byte/word~) line_ydxi::$6
|
||||
@ -389,8 +389,8 @@ line_ydxd::@1:
|
||||
(boolean~) line_ydxd::$4 ← ! (boolean~) line_ydxd::$3
|
||||
if((boolean~) line_ydxd::$4) goto line_ydxd::@2
|
||||
(byte) line_ydxd::x ← -- (byte) line_ydxd::x
|
||||
(byte/signed byte/word/signed word~) line_ydxd::$5 ← (byte) line_ydxd::e - (byte) line_ydxd::yd
|
||||
(byte) line_ydxd::e ← (byte/signed byte/word/signed word~) line_ydxd::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_ydxd::$5 ← (byte) line_ydxd::e - (byte) line_ydxd::yd
|
||||
(byte) line_ydxd::e ← (byte/signed byte/word/signed word/dword/signed dword~) line_ydxd::$5
|
||||
line_ydxd::@2:
|
||||
(byte/word~) line_ydxd::$6 ← (byte) line_ydxd::y1 + (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(boolean~) line_ydxd::$7 ← (byte) line_ydxd::y != (byte/word~) line_ydxd::$6
|
||||
@ -526,28 +526,28 @@ SYMBOLS
|
||||
(void()) line((byte) line::x0 , (byte) line::x1 , (byte) line::y0 , (byte) line::y1)
|
||||
(boolean~) line::$0
|
||||
(boolean~) line::$1
|
||||
(byte/signed byte/word/signed word~) line::$10
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$10
|
||||
(boolean~) line::$11
|
||||
(boolean~) line::$12
|
||||
(void~) line::$13
|
||||
(void~) line::$14
|
||||
(byte/signed byte/word/signed word~) line::$15
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$15
|
||||
(boolean~) line::$16
|
||||
(boolean~) line::$17
|
||||
(byte/signed byte/word/signed word~) line::$18
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$18
|
||||
(boolean~) line::$19
|
||||
(byte/signed byte/word/signed word~) line::$2
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$2
|
||||
(boolean~) line::$20
|
||||
(void~) line::$21
|
||||
(void~) line::$22
|
||||
(byte/signed byte/word/signed word~) line::$23
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$23
|
||||
(boolean~) line::$24
|
||||
(boolean~) line::$25
|
||||
(void~) line::$26
|
||||
(void~) line::$27
|
||||
(boolean~) line::$3
|
||||
(boolean~) line::$4
|
||||
(byte/signed byte/word/signed word~) line::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$5
|
||||
(boolean~) line::$6
|
||||
(boolean~) line::$7
|
||||
(void~) line::$8
|
||||
@ -579,7 +579,7 @@ SYMBOLS
|
||||
(byte/word~) line_xdyd::$2
|
||||
(boolean~) line_xdyd::$3
|
||||
(boolean~) line_xdyd::$4
|
||||
(byte/signed byte/word/signed word~) line_xdyd::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_xdyd::$5
|
||||
(byte/word~) line_xdyd::$6
|
||||
(boolean~) line_xdyd::$7
|
||||
(label) line_xdyd::@1
|
||||
@ -597,7 +597,7 @@ SYMBOLS
|
||||
(byte/word~) line_xdyi::$2
|
||||
(boolean~) line_xdyi::$3
|
||||
(boolean~) line_xdyi::$4
|
||||
(byte/signed byte/word/signed word~) line_xdyi::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_xdyi::$5
|
||||
(byte/word~) line_xdyi::$6
|
||||
(boolean~) line_xdyi::$7
|
||||
(label) line_xdyi::@1
|
||||
@ -615,7 +615,7 @@ SYMBOLS
|
||||
(byte/word~) line_ydxd::$2
|
||||
(boolean~) line_ydxd::$3
|
||||
(boolean~) line_ydxd::$4
|
||||
(byte/signed byte/word/signed word~) line_ydxd::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_ydxd::$5
|
||||
(byte/word~) line_ydxd::$6
|
||||
(boolean~) line_ydxd::$7
|
||||
(label) line_ydxd::@1
|
||||
@ -633,7 +633,7 @@ SYMBOLS
|
||||
(byte/word~) line_ydxi::$2
|
||||
(boolean~) line_ydxi::$3
|
||||
(boolean~) line_ydxi::$4
|
||||
(byte/signed byte/word/signed word~) line_ydxi::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_ydxi::$5
|
||||
(byte/word~) line_ydxi::$6
|
||||
(boolean~) line_ydxi::$7
|
||||
(label) line_ydxi::@1
|
||||
@ -776,29 +776,29 @@ line: scope:[line] from
|
||||
if((boolean~) line::$1) goto line::@1
|
||||
to:line::@15
|
||||
line::@1: scope:[line] from line line::@22
|
||||
(byte/signed byte/word/signed word~) line::$15 ← (byte) line::x0 - (byte) line::x1
|
||||
(byte) line::xd ← (byte/signed byte/word/signed word~) line::$15
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$15 ← (byte) line::x0 - (byte) line::x1
|
||||
(byte) line::xd ← (byte/signed byte/word/signed word/dword/signed dword~) line::$15
|
||||
(boolean~) line::$16 ← (byte) line::y0 < (byte) line::y1
|
||||
(boolean~) line::$17 ← ! (boolean~) line::$16
|
||||
if((boolean~) line::$17) goto line::@9
|
||||
to:line::@23
|
||||
line::@15: scope:[line] from line
|
||||
(byte/signed byte/word/signed word~) line::$2 ← (byte) line::x1 - (byte) line::x0
|
||||
(byte) line::xd ← (byte/signed byte/word/signed word~) line::$2
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$2 ← (byte) line::x1 - (byte) line::x0
|
||||
(byte) line::xd ← (byte/signed byte/word/signed word/dword/signed dword~) line::$2
|
||||
(boolean~) line::$3 ← (byte) line::y0 < (byte) line::y1
|
||||
(boolean~) line::$4 ← ! (boolean~) line::$3
|
||||
if((boolean~) line::$4) goto line::@2
|
||||
to:line::@16
|
||||
line::@2: scope:[line] from line::@15 line::@19
|
||||
(byte/signed byte/word/signed word~) line::$10 ← (byte) line::y0 - (byte) line::y1
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word~) line::$10
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$10 ← (byte) line::y0 - (byte) line::y1
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word/dword/signed dword~) line::$10
|
||||
(boolean~) line::$11 ← (byte) line::yd < (byte) line::xd
|
||||
(boolean~) line::$12 ← ! (boolean~) line::$11
|
||||
if((boolean~) line::$12) goto line::@6
|
||||
to:line::@20
|
||||
line::@16: scope:[line] from line::@15
|
||||
(byte/signed byte/word/signed word~) line::$5 ← (byte) line::y1 - (byte) line::y0
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word~) line::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$5 ← (byte) line::y1 - (byte) line::y0
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word/dword/signed dword~) line::$5
|
||||
(boolean~) line::$6 ← (byte) line::yd < (byte) line::xd
|
||||
(boolean~) line::$7 ← ! (boolean~) line::$6
|
||||
if((boolean~) line::$7) goto line::@3
|
||||
@ -832,15 +832,15 @@ line::@8: scope:[line] from line::@12 line::@5
|
||||
line::@22: scope:[line] from
|
||||
to:line::@1
|
||||
line::@9: scope:[line] from line::@1 line::@26
|
||||
(byte/signed byte/word/signed word~) line::$23 ← (byte) line::y0 - (byte) line::y1
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word~) line::$23
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$23 ← (byte) line::y0 - (byte) line::y1
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word/dword/signed dword~) line::$23
|
||||
(boolean~) line::$24 ← (byte) line::yd < (byte) line::xd
|
||||
(boolean~) line::$25 ← ! (boolean~) line::$24
|
||||
if((boolean~) line::$25) goto line::@13
|
||||
to:line::@27
|
||||
line::@23: scope:[line] from line::@1
|
||||
(byte/signed byte/word/signed word~) line::$18 ← (byte) line::y1 - (byte) line::y0
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word~) line::$18
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$18 ← (byte) line::y1 - (byte) line::y0
|
||||
(byte) line::yd ← (byte/signed byte/word/signed word/dword/signed dword~) line::$18
|
||||
(boolean~) line::$19 ← (byte) line::yd < (byte) line::xd
|
||||
(boolean~) line::$20 ← ! (boolean~) line::$19
|
||||
if((boolean~) line::$20) goto line::@10
|
||||
@ -894,8 +894,8 @@ line_xdyi::@2: scope:[line_xdyi] from line_xdyi::@1 line_xdyi::@3
|
||||
to:line_xdyi::@4
|
||||
line_xdyi::@3: scope:[line_xdyi] from line_xdyi::@1
|
||||
(byte) line_xdyi::y ← ++ (byte) line_xdyi::y
|
||||
(byte/signed byte/word/signed word~) line_xdyi::$5 ← (byte) line_xdyi::e - (byte) line_xdyi::xd
|
||||
(byte) line_xdyi::e ← (byte/signed byte/word/signed word~) line_xdyi::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_xdyi::$5 ← (byte) line_xdyi::e - (byte) line_xdyi::xd
|
||||
(byte) line_xdyi::e ← (byte/signed byte/word/signed word/dword/signed dword~) line_xdyi::$5
|
||||
to:line_xdyi::@2
|
||||
line_xdyi::@4: scope:[line_xdyi] from line_xdyi::@2
|
||||
to:line_xdyi::@return
|
||||
@ -924,8 +924,8 @@ line_xdyd::@2: scope:[line_xdyd] from line_xdyd::@1 line_xdyd::@3
|
||||
to:line_xdyd::@4
|
||||
line_xdyd::@3: scope:[line_xdyd] from line_xdyd::@1
|
||||
(byte) line_xdyd::y ← -- (byte) line_xdyd::y
|
||||
(byte/signed byte/word/signed word~) line_xdyd::$5 ← (byte) line_xdyd::e - (byte) line_xdyd::xd
|
||||
(byte) line_xdyd::e ← (byte/signed byte/word/signed word~) line_xdyd::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_xdyd::$5 ← (byte) line_xdyd::e - (byte) line_xdyd::xd
|
||||
(byte) line_xdyd::e ← (byte/signed byte/word/signed word/dword/signed dword~) line_xdyd::$5
|
||||
to:line_xdyd::@2
|
||||
line_xdyd::@4: scope:[line_xdyd] from line_xdyd::@2
|
||||
to:line_xdyd::@return
|
||||
@ -954,8 +954,8 @@ line_ydxi::@2: scope:[line_ydxi] from line_ydxi::@1 line_ydxi::@3
|
||||
to:line_ydxi::@4
|
||||
line_ydxi::@3: scope:[line_ydxi] from line_ydxi::@1
|
||||
(byte) line_ydxi::x ← ++ (byte) line_ydxi::x
|
||||
(byte/signed byte/word/signed word~) line_ydxi::$5 ← (byte) line_ydxi::e - (byte) line_ydxi::yd
|
||||
(byte) line_ydxi::e ← (byte/signed byte/word/signed word~) line_ydxi::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_ydxi::$5 ← (byte) line_ydxi::e - (byte) line_ydxi::yd
|
||||
(byte) line_ydxi::e ← (byte/signed byte/word/signed word/dword/signed dword~) line_ydxi::$5
|
||||
to:line_ydxi::@2
|
||||
line_ydxi::@4: scope:[line_ydxi] from line_ydxi::@2
|
||||
to:line_ydxi::@return
|
||||
@ -985,8 +985,8 @@ line_ydxd::@2: scope:[line_ydxd] from line_ydxd::@1 line_ydxd::@3
|
||||
to:line_ydxd::@4
|
||||
line_ydxd::@3: scope:[line_ydxd] from line_ydxd::@1
|
||||
(byte) line_ydxd::x ← -- (byte) line_ydxd::x
|
||||
(byte/signed byte/word/signed word~) line_ydxd::$5 ← (byte) line_ydxd::e - (byte) line_ydxd::yd
|
||||
(byte) line_ydxd::e ← (byte/signed byte/word/signed word~) line_ydxd::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_ydxd::$5 ← (byte) line_ydxd::e - (byte) line_ydxd::yd
|
||||
(byte) line_ydxd::e ← (byte/signed byte/word/signed word/dword/signed dword~) line_ydxd::$5
|
||||
to:line_ydxd::@2
|
||||
line_ydxd::@4: scope:[line_ydxd] from line_ydxd::@2
|
||||
to:line_ydxd::@return
|
||||
@ -1262,8 +1262,8 @@ line::@1: scope:[line] from line
|
||||
(byte) line::y0#1 ← phi( line/(byte) line::y0#13 )
|
||||
(byte) line::x1#2 ← phi( line/(byte) line::x1#1 )
|
||||
(byte) line::x0#2 ← phi( line/(byte) line::x0#1 )
|
||||
(byte/signed byte/word/signed word~) line::$15 ← (byte) line::x0#2 - (byte) line::x1#2
|
||||
(byte) line::xd#0 ← (byte/signed byte/word/signed word~) line::$15
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$15 ← (byte) line::x0#2 - (byte) line::x1#2
|
||||
(byte) line::xd#0 ← (byte/signed byte/word/signed word/dword/signed dword~) line::$15
|
||||
(boolean~) line::$16 ← (byte) line::y0#1 < (byte) line::y1#1
|
||||
(boolean~) line::$17 ← ! (boolean~) line::$16
|
||||
if((boolean~) line::$17) goto line::@9
|
||||
@ -1273,8 +1273,8 @@ line::@15: scope:[line] from line
|
||||
(byte) line::y0#2 ← phi( line/(byte) line::y0#13 )
|
||||
(byte) line::x0#3 ← phi( line/(byte) line::x0#1 )
|
||||
(byte) line::x1#3 ← phi( line/(byte) line::x1#1 )
|
||||
(byte/signed byte/word/signed word~) line::$2 ← (byte) line::x1#3 - (byte) line::x0#3
|
||||
(byte) line::xd#1 ← (byte/signed byte/word/signed word~) line::$2
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$2 ← (byte) line::x1#3 - (byte) line::x0#3
|
||||
(byte) line::xd#1 ← (byte/signed byte/word/signed word/dword/signed dword~) line::$2
|
||||
(boolean~) line::$3 ← (byte) line::y0#2 < (byte) line::y1#2
|
||||
(boolean~) line::$4 ← ! (boolean~) line::$3
|
||||
if((boolean~) line::$4) goto line::@2
|
||||
@ -1285,8 +1285,8 @@ line::@2: scope:[line] from line::@15
|
||||
(byte) line::xd#2 ← phi( line::@15/(byte) line::xd#1 )
|
||||
(byte) line::y1#3 ← phi( line::@15/(byte) line::y1#2 )
|
||||
(byte) line::y0#3 ← phi( line::@15/(byte) line::y0#2 )
|
||||
(byte/signed byte/word/signed word~) line::$10 ← (byte) line::y0#3 - (byte) line::y1#3
|
||||
(byte) line::yd#0 ← (byte/signed byte/word/signed word~) line::$10
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$10 ← (byte) line::y0#3 - (byte) line::y1#3
|
||||
(byte) line::yd#0 ← (byte/signed byte/word/signed word/dword/signed dword~) line::$10
|
||||
(boolean~) line::$11 ← (byte) line::yd#0 < (byte) line::xd#2
|
||||
(boolean~) line::$12 ← ! (boolean~) line::$11
|
||||
if((boolean~) line::$12) goto line::@6
|
||||
@ -1297,8 +1297,8 @@ line::@16: scope:[line] from line::@15
|
||||
(byte) line::xd#3 ← phi( line::@15/(byte) line::xd#1 )
|
||||
(byte) line::y0#4 ← phi( line::@15/(byte) line::y0#2 )
|
||||
(byte) line::y1#4 ← phi( line::@15/(byte) line::y1#2 )
|
||||
(byte/signed byte/word/signed word~) line::$5 ← (byte) line::y1#4 - (byte) line::y0#4
|
||||
(byte) line::yd#1 ← (byte/signed byte/word/signed word~) line::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$5 ← (byte) line::y1#4 - (byte) line::y0#4
|
||||
(byte) line::yd#1 ← (byte/signed byte/word/signed word/dword/signed dword~) line::$5
|
||||
(boolean~) line::$6 ← (byte) line::yd#1 < (byte) line::xd#3
|
||||
(boolean~) line::$7 ← ! (boolean~) line::$6
|
||||
if((boolean~) line::$7) goto line::@3
|
||||
@ -1369,8 +1369,8 @@ line::@9: scope:[line] from line::@1
|
||||
(byte) line::xd#8 ← phi( line::@1/(byte) line::xd#0 )
|
||||
(byte) line::y1#7 ← phi( line::@1/(byte) line::y1#1 )
|
||||
(byte) line::y0#9 ← phi( line::@1/(byte) line::y0#1 )
|
||||
(byte/signed byte/word/signed word~) line::$23 ← (byte) line::y0#9 - (byte) line::y1#7
|
||||
(byte) line::yd#2 ← (byte/signed byte/word/signed word~) line::$23
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$23 ← (byte) line::y0#9 - (byte) line::y1#7
|
||||
(byte) line::yd#2 ← (byte/signed byte/word/signed word/dword/signed dword~) line::$23
|
||||
(boolean~) line::$24 ← (byte) line::yd#2 < (byte) line::xd#8
|
||||
(boolean~) line::$25 ← ! (boolean~) line::$24
|
||||
if((boolean~) line::$25) goto line::@13
|
||||
@ -1381,8 +1381,8 @@ line::@23: scope:[line] from line::@1
|
||||
(byte) line::xd#9 ← phi( line::@1/(byte) line::xd#0 )
|
||||
(byte) line::y0#10 ← phi( line::@1/(byte) line::y0#1 )
|
||||
(byte) line::y1#8 ← phi( line::@1/(byte) line::y1#1 )
|
||||
(byte/signed byte/word/signed word~) line::$18 ← (byte) line::y1#8 - (byte) line::y0#10
|
||||
(byte) line::yd#3 ← (byte/signed byte/word/signed word~) line::$18
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$18 ← (byte) line::y1#8 - (byte) line::y0#10
|
||||
(byte) line::yd#3 ← (byte/signed byte/word/signed word/dword/signed dword~) line::$18
|
||||
(boolean~) line::$19 ← (byte) line::yd#3 < (byte) line::xd#9
|
||||
(boolean~) line::$20 ← ! (boolean~) line::$19
|
||||
if((boolean~) line::$20) goto line::@10
|
||||
@ -1503,8 +1503,8 @@ line_xdyi::@3: scope:[line_xdyi] from line_xdyi::@5
|
||||
(byte) line_xdyi::e#4 ← phi( line_xdyi::@5/(byte) line_xdyi::e#1 )
|
||||
(byte) line_xdyi::y#4 ← phi( line_xdyi::@5/(byte) line_xdyi::y#7 )
|
||||
(byte) line_xdyi::y#2 ← ++ (byte) line_xdyi::y#4
|
||||
(byte/signed byte/word/signed word~) line_xdyi::$5 ← (byte) line_xdyi::e#4 - (byte) line_xdyi::xd#3
|
||||
(byte) line_xdyi::e#2 ← (byte/signed byte/word/signed word~) line_xdyi::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_xdyi::$5 ← (byte) line_xdyi::e#4 - (byte) line_xdyi::xd#3
|
||||
(byte) line_xdyi::e#2 ← (byte/signed byte/word/signed word/dword/signed dword~) line_xdyi::$5
|
||||
to:line_xdyi::@2
|
||||
line_xdyi::@return: scope:[line_xdyi] from line_xdyi::@2
|
||||
return
|
||||
@ -1562,8 +1562,8 @@ line_xdyd::@3: scope:[line_xdyd] from line_xdyd::@5
|
||||
(byte) line_xdyd::e#4 ← phi( line_xdyd::@5/(byte) line_xdyd::e#1 )
|
||||
(byte) line_xdyd::y#4 ← phi( line_xdyd::@5/(byte) line_xdyd::y#7 )
|
||||
(byte) line_xdyd::y#2 ← -- (byte) line_xdyd::y#4
|
||||
(byte/signed byte/word/signed word~) line_xdyd::$5 ← (byte) line_xdyd::e#4 - (byte) line_xdyd::xd#3
|
||||
(byte) line_xdyd::e#2 ← (byte/signed byte/word/signed word~) line_xdyd::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_xdyd::$5 ← (byte) line_xdyd::e#4 - (byte) line_xdyd::xd#3
|
||||
(byte) line_xdyd::e#2 ← (byte/signed byte/word/signed word/dword/signed dword~) line_xdyd::$5
|
||||
to:line_xdyd::@2
|
||||
line_xdyd::@return: scope:[line_xdyd] from line_xdyd::@2
|
||||
return
|
||||
@ -1621,8 +1621,8 @@ line_ydxi::@3: scope:[line_ydxi] from line_ydxi::@5
|
||||
(byte) line_ydxi::e#4 ← phi( line_ydxi::@5/(byte) line_ydxi::e#1 )
|
||||
(byte) line_ydxi::x#4 ← phi( line_ydxi::@5/(byte) line_ydxi::x#7 )
|
||||
(byte) line_ydxi::x#2 ← ++ (byte) line_ydxi::x#4
|
||||
(byte/signed byte/word/signed word~) line_ydxi::$5 ← (byte) line_ydxi::e#4 - (byte) line_ydxi::yd#3
|
||||
(byte) line_ydxi::e#2 ← (byte/signed byte/word/signed word~) line_ydxi::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_ydxi::$5 ← (byte) line_ydxi::e#4 - (byte) line_ydxi::yd#3
|
||||
(byte) line_ydxi::e#2 ← (byte/signed byte/word/signed word/dword/signed dword~) line_ydxi::$5
|
||||
to:line_ydxi::@2
|
||||
line_ydxi::@return: scope:[line_ydxi] from line_ydxi::@2
|
||||
return
|
||||
@ -1681,8 +1681,8 @@ line_ydxd::@3: scope:[line_ydxd] from line_ydxd::@5
|
||||
(byte) line_ydxd::e#4 ← phi( line_ydxd::@5/(byte) line_ydxd::e#1 )
|
||||
(byte) line_ydxd::x#4 ← phi( line_ydxd::@5/(byte) line_ydxd::x#7 )
|
||||
(byte) line_ydxd::x#2 ← -- (byte) line_ydxd::x#4
|
||||
(byte/signed byte/word/signed word~) line_ydxd::$5 ← (byte) line_ydxd::e#4 - (byte) line_ydxd::yd#3
|
||||
(byte) line_ydxd::e#2 ← (byte/signed byte/word/signed word~) line_ydxd::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_ydxd::$5 ← (byte) line_ydxd::e#4 - (byte) line_ydxd::yd#3
|
||||
(byte) line_ydxd::e#2 ← (byte/signed byte/word/signed word/dword/signed dword~) line_ydxd::$5
|
||||
to:line_ydxd::@2
|
||||
line_ydxd::@return: scope:[line_ydxd] from line_ydxd::@2
|
||||
return
|
||||
@ -1921,22 +1921,22 @@ SYMBOL TABLE SSA
|
||||
(void()) line((byte) line::x0 , (byte) line::x1 , (byte) line::y0 , (byte) line::y1)
|
||||
(boolean~) line::$0
|
||||
(boolean~) line::$1
|
||||
(byte/signed byte/word/signed word~) line::$10
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$10
|
||||
(boolean~) line::$11
|
||||
(boolean~) line::$12
|
||||
(byte/signed byte/word/signed word~) line::$15
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$15
|
||||
(boolean~) line::$16
|
||||
(boolean~) line::$17
|
||||
(byte/signed byte/word/signed word~) line::$18
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$18
|
||||
(boolean~) line::$19
|
||||
(byte/signed byte/word/signed word~) line::$2
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$2
|
||||
(boolean~) line::$20
|
||||
(byte/signed byte/word/signed word~) line::$23
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$23
|
||||
(boolean~) line::$24
|
||||
(boolean~) line::$25
|
||||
(boolean~) line::$3
|
||||
(boolean~) line::$4
|
||||
(byte/signed byte/word/signed word~) line::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line::$5
|
||||
(boolean~) line::$6
|
||||
(boolean~) line::$7
|
||||
(label) line::@1
|
||||
@ -2055,7 +2055,7 @@ SYMBOL TABLE SSA
|
||||
(byte/word~) line_xdyd::$2
|
||||
(boolean~) line_xdyd::$3
|
||||
(boolean~) line_xdyd::$4
|
||||
(byte/signed byte/word/signed word~) line_xdyd::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_xdyd::$5
|
||||
(byte/word~) line_xdyd::$6
|
||||
(boolean~) line_xdyd::$7
|
||||
(label) line_xdyd::@1
|
||||
@ -2118,7 +2118,7 @@ SYMBOL TABLE SSA
|
||||
(byte/word~) line_xdyi::$2
|
||||
(boolean~) line_xdyi::$3
|
||||
(boolean~) line_xdyi::$4
|
||||
(byte/signed byte/word/signed word~) line_xdyi::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_xdyi::$5
|
||||
(byte/word~) line_xdyi::$6
|
||||
(boolean~) line_xdyi::$7
|
||||
(label) line_xdyi::@1
|
||||
@ -2181,7 +2181,7 @@ SYMBOL TABLE SSA
|
||||
(byte/word~) line_ydxd::$2
|
||||
(boolean~) line_ydxd::$3
|
||||
(boolean~) line_ydxd::$4
|
||||
(byte/signed byte/word/signed word~) line_ydxd::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_ydxd::$5
|
||||
(byte/word~) line_ydxd::$6
|
||||
(boolean~) line_ydxd::$7
|
||||
(label) line_ydxd::@1
|
||||
@ -2245,7 +2245,7 @@ SYMBOL TABLE SSA
|
||||
(byte/word~) line_ydxi::$2
|
||||
(boolean~) line_ydxi::$3
|
||||
(boolean~) line_ydxi::$4
|
||||
(byte/signed byte/word/signed word~) line_ydxi::$5
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) line_ydxi::$5
|
||||
(byte/word~) line_ydxi::$6
|
||||
(boolean~) line_ydxi::$7
|
||||
(label) line_ydxi::@1
|
||||
@ -2499,12 +2499,12 @@ Alias (byte) line::x0#1 = (byte) line::x0#2 (byte) line::x0#3 (byte) line::x0#11
|
||||
Alias (byte) line::x1#1 = (byte) line::x1#2 (byte) line::x1#3 (byte) line::x1#11 (byte) line::x1#10 (byte) line::x1#4 (byte) line::x1#5 (byte) line::x1#6 (byte) line::x1#13 (byte) line::x1#12 (byte) line::x1#7 (byte) line::x1#8 (byte) line::x1#9
|
||||
Alias (byte) line::y0#1 = (byte) line::y0#13 (byte) line::y0#2 (byte) line::y0#3 (byte) line::y0#4 (byte) line::y0#5 (byte) line::y0#6 (byte) line::y0#7 (byte) line::y0#8 (byte) line::y0#9 (byte) line::y0#10 (byte) line::y0#11 (byte) line::y0#12
|
||||
Alias (byte) line::y1#1 = (byte) line::y1#13 (byte) line::y1#2 (byte) line::y1#3 (byte) line::y1#4 (byte) line::y1#5 (byte) line::y1#6 (byte) line::y1#7 (byte) line::y1#8 (byte) line::y1#9 (byte) line::y1#10 (byte) line::y1#11 (byte) line::y1#12
|
||||
Alias (byte) line::xd#0 = (byte/signed byte/word/signed word~) line::$15 (byte) line::xd#8 (byte) line::xd#9 (byte) line::xd#10 (byte) line::xd#11 (byte) line::xd#12 (byte) line::xd#13
|
||||
Alias (byte) line::xd#1 = (byte/signed byte/word/signed word~) line::$2 (byte) line::xd#2 (byte) line::xd#3 (byte) line::xd#4 (byte) line::xd#5 (byte) line::xd#6 (byte) line::xd#7
|
||||
Alias (byte) line::yd#0 = (byte/signed byte/word/signed word~) line::$10 (byte) line::yd#6 (byte) line::yd#7
|
||||
Alias (byte) line::yd#1 = (byte/signed byte/word/signed word~) line::$5 (byte) line::yd#4 (byte) line::yd#5
|
||||
Alias (byte) line::yd#10 = (byte) line::yd#2 (byte/signed byte/word/signed word~) line::$23 (byte) line::yd#11
|
||||
Alias (byte) line::yd#3 = (byte/signed byte/word/signed word~) line::$18 (byte) line::yd#8 (byte) line::yd#9
|
||||
Alias (byte) line::xd#0 = (byte/signed byte/word/signed word/dword/signed dword~) line::$15 (byte) line::xd#8 (byte) line::xd#9 (byte) line::xd#10 (byte) line::xd#11 (byte) line::xd#12 (byte) line::xd#13
|
||||
Alias (byte) line::xd#1 = (byte/signed byte/word/signed word/dword/signed dword~) line::$2 (byte) line::xd#2 (byte) line::xd#3 (byte) line::xd#4 (byte) line::xd#5 (byte) line::xd#6 (byte) line::xd#7
|
||||
Alias (byte) line::yd#0 = (byte/signed byte/word/signed word/dword/signed dword~) line::$10 (byte) line::yd#6 (byte) line::yd#7
|
||||
Alias (byte) line::yd#1 = (byte/signed byte/word/signed word/dword/signed dword~) line::$5 (byte) line::yd#4 (byte) line::yd#5
|
||||
Alias (byte) line::yd#10 = (byte) line::yd#2 (byte/signed byte/word/signed word/dword/signed dword~) line::$23 (byte) line::yd#11
|
||||
Alias (byte) line::yd#3 = (byte/signed byte/word/signed word/dword/signed dword~) line::$18 (byte) line::yd#8 (byte) line::yd#9
|
||||
Alias (byte) line_xdyi::e#0 = (byte~) line_xdyi::$0
|
||||
Alias (byte) line_xdyi::x#3 = (byte) line_xdyi::x#4
|
||||
Alias (byte) line_xdyi::e#3 = (byte) line_xdyi::e#5
|
||||
@ -2514,7 +2514,7 @@ Alias (byte) line_xdyi::x1#3 = (byte) line_xdyi::x1#4 (byte) line_xdyi::x1#5
|
||||
Alias (byte) line_xdyi::y#3 = (byte) line_xdyi::y#7 (byte) line_xdyi::y#4
|
||||
Alias (byte) line_xdyi::e#1 = (byte/word~) line_xdyi::$2 (byte) line_xdyi::e#4
|
||||
Alias (byte) line_xdyi::x#2 = (byte) line_xdyi::x#7
|
||||
Alias (byte) line_xdyi::e#2 = (byte/signed byte/word/signed word~) line_xdyi::$5
|
||||
Alias (byte) line_xdyi::e#2 = (byte/signed byte/word/signed word/dword/signed dword~) line_xdyi::$5
|
||||
Alias (byte) line_xdyd::e#0 = (byte~) line_xdyd::$0
|
||||
Alias (byte) line_xdyd::x#3 = (byte) line_xdyd::x#4
|
||||
Alias (byte) line_xdyd::e#3 = (byte) line_xdyd::e#5
|
||||
@ -2524,7 +2524,7 @@ Alias (byte) line_xdyd::x1#3 = (byte) line_xdyd::x1#4 (byte) line_xdyd::x1#5
|
||||
Alias (byte) line_xdyd::y#3 = (byte) line_xdyd::y#7 (byte) line_xdyd::y#4
|
||||
Alias (byte) line_xdyd::e#1 = (byte/word~) line_xdyd::$2 (byte) line_xdyd::e#4
|
||||
Alias (byte) line_xdyd::x#2 = (byte) line_xdyd::x#7
|
||||
Alias (byte) line_xdyd::e#2 = (byte/signed byte/word/signed word~) line_xdyd::$5
|
||||
Alias (byte) line_xdyd::e#2 = (byte/signed byte/word/signed word/dword/signed dword~) line_xdyd::$5
|
||||
Alias (byte) line_ydxi::e#0 = (byte~) line_ydxi::$0
|
||||
Alias (byte) line_ydxi::y#3 = (byte) line_ydxi::y#4
|
||||
Alias (byte) line_ydxi::e#3 = (byte) line_ydxi::e#5
|
||||
@ -2534,7 +2534,7 @@ Alias (byte) line_ydxi::y1#3 = (byte) line_ydxi::y1#4 (byte) line_ydxi::y1#5
|
||||
Alias (byte) line_ydxi::x#3 = (byte) line_ydxi::x#7 (byte) line_ydxi::x#4
|
||||
Alias (byte) line_ydxi::e#1 = (byte/word~) line_ydxi::$2 (byte) line_ydxi::e#4
|
||||
Alias (byte) line_ydxi::y#2 = (byte) line_ydxi::y#7
|
||||
Alias (byte) line_ydxi::e#2 = (byte/signed byte/word/signed word~) line_ydxi::$5
|
||||
Alias (byte) line_ydxi::e#2 = (byte/signed byte/word/signed word/dword/signed dword~) line_ydxi::$5
|
||||
Alias (byte) line_ydxd::e#0 = (byte~) line_ydxd::$0
|
||||
Alias (byte) line_ydxd::y#2 = (byte) line_ydxd::y#5 (byte) line_ydxd::y#4
|
||||
Alias (byte) line_ydxd::e#3 = (byte) line_ydxd::e#5
|
||||
@ -2544,7 +2544,7 @@ Alias (byte) line_ydxd::y1#3 = (byte) line_ydxd::y1#4 (byte) line_ydxd::y1#5
|
||||
Alias (byte) line_ydxd::x#3 = (byte) line_ydxd::x#7 (byte) line_ydxd::x#4
|
||||
Alias (byte) line_ydxd::e#1 = (byte/word~) line_ydxd::$2 (byte) line_ydxd::e#4
|
||||
Alias (byte) line_ydxd::y#3 = (byte) line_ydxd::y#8
|
||||
Alias (byte) line_ydxd::e#2 = (byte/signed byte/word/signed word~) line_ydxd::$5
|
||||
Alias (byte) line_ydxd::e#2 = (byte/signed byte/word/signed word/dword/signed dword~) line_ydxd::$5
|
||||
Alias (byte) init_plot_tables::bits#1 = (byte~) init_plot_tables::$2
|
||||
Alias (byte) init_plot_tables::x#2 = (byte) init_plot_tables::x#4
|
||||
Alias (byte*) init_plot_tables::yoffs#2 = (byte*) init_plot_tables::yoffs#3
|
||||
|
@ -34,10 +34,10 @@ proc (void()) main()
|
||||
(byte) main::y0 ← (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(byte) main::x1 ← (byte/signed byte/word/signed word/dword/signed dword) 39
|
||||
(byte) main::y1 ← (byte/signed byte/word/signed word/dword/signed dword) 24
|
||||
(byte/signed byte/word/signed word~) main::$0 ← (byte) main::x1 - (byte) main::x0
|
||||
(byte) main::xd ← (byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word~) main::$1 ← (byte) main::y1 - (byte) main::y0
|
||||
(byte) main::yd ← (byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0 ← (byte) main::x1 - (byte) main::x0
|
||||
(byte) main::xd ← (byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1 ← (byte) main::y1 - (byte) main::y0
|
||||
(byte) main::yd ← (byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(byte) main::x ← (byte) main::x0
|
||||
(byte) main::y ← (byte) main::y0
|
||||
(byte~) main::$2 ← (byte) main::yd / (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
@ -61,8 +61,8 @@ main::@1:
|
||||
(byte) main::y ← (byte/word~) main::$11
|
||||
(byte*~) main::$12 ← (byte*) main::cursor + (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
(byte*) main::cursor ← (byte*~) main::$12
|
||||
(byte/signed byte/word/signed word~) main::$13 ← (byte) main::e - (byte) main::xd
|
||||
(byte) main::e ← (byte/signed byte/word/signed word~) main::$13
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$13 ← (byte) main::e - (byte) main::xd
|
||||
(byte) main::e ← (byte/signed byte/word/signed word/dword/signed dword~) main::$13
|
||||
main::@2:
|
||||
(byte/word~) main::$14 ← (byte) main::x1 + (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(boolean~) main::$15 ← (byte) main::x < (byte/word~) main::$14
|
||||
@ -76,12 +76,12 @@ SYMBOLS
|
||||
(byte[1000]) SCREEN
|
||||
(byte) STAR
|
||||
(void()) main()
|
||||
(byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(boolean~) main::$10
|
||||
(byte/word~) main::$11
|
||||
(byte*~) main::$12
|
||||
(byte/signed byte/word/signed word~) main::$13
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$13
|
||||
(byte/word~) main::$14
|
||||
(boolean~) main::$15
|
||||
(byte~) main::$2
|
||||
@ -117,10 +117,10 @@ main: scope:[main] from
|
||||
(byte) main::y0 ← (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(byte) main::x1 ← (byte/signed byte/word/signed word/dword/signed dword) 39
|
||||
(byte) main::y1 ← (byte/signed byte/word/signed word/dword/signed dword) 24
|
||||
(byte/signed byte/word/signed word~) main::$0 ← (byte) main::x1 - (byte) main::x0
|
||||
(byte) main::xd ← (byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word~) main::$1 ← (byte) main::y1 - (byte) main::y0
|
||||
(byte) main::yd ← (byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0 ← (byte) main::x1 - (byte) main::x0
|
||||
(byte) main::xd ← (byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1 ← (byte) main::y1 - (byte) main::y0
|
||||
(byte) main::yd ← (byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(byte) main::x ← (byte) main::x0
|
||||
(byte) main::y ← (byte) main::y0
|
||||
(byte~) main::$2 ← (byte) main::yd / (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
@ -152,8 +152,8 @@ main::@3: scope:[main] from main::@1
|
||||
(byte) main::y ← (byte/word~) main::$11
|
||||
(byte*~) main::$12 ← (byte*) main::cursor + (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
(byte*) main::cursor ← (byte*~) main::$12
|
||||
(byte/signed byte/word/signed word~) main::$13 ← (byte) main::e - (byte) main::xd
|
||||
(byte) main::e ← (byte/signed byte/word/signed word~) main::$13
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$13 ← (byte) main::e - (byte) main::xd
|
||||
(byte) main::e ← (byte/signed byte/word/signed word/dword/signed dword~) main::$13
|
||||
to:main::@2
|
||||
main::@4: scope:[main] from main::@2
|
||||
to:main::@return
|
||||
@ -183,10 +183,10 @@ main: scope:[main] from @1
|
||||
(byte) main::y0#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(byte) main::x1#0 ← (byte/signed byte/word/signed word/dword/signed dword) 39
|
||||
(byte) main::y1#0 ← (byte/signed byte/word/signed word/dword/signed dword) 24
|
||||
(byte/signed byte/word/signed word~) main::$0 ← (byte) main::x1#0 - (byte) main::x0#0
|
||||
(byte) main::xd#0 ← (byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word~) main::$1 ← (byte) main::y1#0 - (byte) main::y0#0
|
||||
(byte) main::yd#0 ← (byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0 ← (byte) main::x1#0 - (byte) main::x0#0
|
||||
(byte) main::xd#0 ← (byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1 ← (byte) main::y1#0 - (byte) main::y0#0
|
||||
(byte) main::yd#0 ← (byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(byte) main::x#0 ← (byte) main::x0#0
|
||||
(byte) main::y#0 ← (byte) main::y0#0
|
||||
(byte~) main::$2 ← (byte) main::yd#0 / (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
@ -242,8 +242,8 @@ main::@3: scope:[main] from main::@1
|
||||
(byte) main::y#1 ← (byte/word~) main::$11
|
||||
(byte*~) main::$12 ← (byte*) main::cursor#4 + (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
(byte*) main::cursor#2 ← (byte*~) main::$12
|
||||
(byte/signed byte/word/signed word~) main::$13 ← (byte) main::e#4 - (byte) main::xd#2
|
||||
(byte) main::e#2 ← (byte/signed byte/word/signed word~) main::$13
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$13 ← (byte) main::e#4 - (byte) main::xd#2
|
||||
(byte) main::e#2 ← (byte/signed byte/word/signed word/dword/signed dword~) main::$13
|
||||
to:main::@2
|
||||
main::@return: scope:[main] from main::@2
|
||||
return
|
||||
@ -271,12 +271,12 @@ SYMBOL TABLE SSA
|
||||
(byte) STAR#4
|
||||
(byte) STAR#5
|
||||
(void()) main()
|
||||
(byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(boolean~) main::$10
|
||||
(byte/word~) main::$11
|
||||
(byte*~) main::$12
|
||||
(byte/signed byte/word/signed word~) main::$13
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$13
|
||||
(byte/word~) main::$14
|
||||
(boolean~) main::$15
|
||||
(byte~) main::$2
|
||||
@ -345,8 +345,8 @@ Succesful SSA optimization Pass2CullEmptyBlocks
|
||||
Inversing boolean not (boolean~) main::$10 ← (byte) main::xd#1 > (byte) main::e#1 from (boolean~) main::$9 ← (byte) main::xd#1 <= (byte) main::e#1
|
||||
Succesful SSA optimization Pass2UnaryNotSimplification
|
||||
Not aliassing across scopes: STAR#2 STAR#4
|
||||
Alias (byte) main::xd#0 = (byte/signed byte/word/signed word~) main::$0
|
||||
Alias (byte) main::yd#0 = (byte/signed byte/word/signed word~) main::$1
|
||||
Alias (byte) main::xd#0 = (byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
Alias (byte) main::yd#0 = (byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
Alias (byte) main::x#0 = (byte) main::x0#0
|
||||
Alias (byte) main::y#0 = (byte) main::y0#0
|
||||
Alias (byte) main::e#0 = (byte~) main::$2
|
||||
@ -361,7 +361,7 @@ Alias (byte) STAR#1 = (byte) STAR#5
|
||||
Alias (byte) main::yd#1 = (byte) main::yd#3
|
||||
Alias (byte) main::y#1 = (byte/word~) main::$11
|
||||
Alias (byte*) main::cursor#2 = (byte*~) main::$12
|
||||
Alias (byte) main::e#2 = (byte/signed byte/word/signed word~) main::$13
|
||||
Alias (byte) main::e#2 = (byte/signed byte/word/signed word/dword/signed dword~) main::$13
|
||||
Alias (byte) STAR#0 = (byte) STAR#4
|
||||
Succesful SSA optimization Pass2AliasElimination
|
||||
Not aliassing across scopes: STAR#2 STAR#0
|
||||
|
@ -34,10 +34,10 @@ proc (void()) main()
|
||||
(byte) main::y0 ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) main::x1 ← (byte/signed byte/word/signed word/dword/signed dword) 39
|
||||
(byte) main::y1 ← (byte/signed byte/word/signed word/dword/signed dword) 24
|
||||
(byte/signed byte/word/signed word~) main::$0 ← (byte) main::x1 - (byte) main::x0
|
||||
(byte) main::xd ← (byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word~) main::$1 ← (byte) main::y1 - (byte) main::y0
|
||||
(byte) main::yd ← (byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0 ← (byte) main::x1 - (byte) main::x0
|
||||
(byte) main::xd ← (byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1 ← (byte) main::y1 - (byte) main::y0
|
||||
(byte) main::yd ← (byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(byte) main::x ← (byte) main::x0
|
||||
(byte) main::y ← (byte) main::y0
|
||||
(byte~) main::$2 ← (byte) main::yd / (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
@ -60,8 +60,8 @@ main::@1:
|
||||
(byte) main::y ← (byte/word~) main::$10
|
||||
(word~) main::$11 ← (word) main::idx + (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
(word) main::idx ← (word~) main::$11
|
||||
(byte/signed byte/word/signed word~) main::$12 ← (byte) main::e - (byte) main::xd
|
||||
(byte) main::e ← (byte/signed byte/word/signed word~) main::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$12 ← (byte) main::e - (byte) main::xd
|
||||
(byte) main::e ← (byte/signed byte/word/signed word/dword/signed dword~) main::$12
|
||||
main::@2:
|
||||
(byte/word~) main::$13 ← (byte) main::x1 + (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
(boolean~) main::$14 ← (byte) main::x < (byte/word~) main::$13
|
||||
@ -73,11 +73,11 @@ endproc // main()
|
||||
|
||||
SYMBOLS
|
||||
(void()) main()
|
||||
(byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(byte/word~) main::$10
|
||||
(word~) main::$11
|
||||
(byte/signed byte/word/signed word~) main::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$12
|
||||
(byte/word~) main::$13
|
||||
(boolean~) main::$14
|
||||
(byte~) main::$2
|
||||
@ -115,10 +115,10 @@ main: scope:[main] from
|
||||
(byte) main::y0 ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) main::x1 ← (byte/signed byte/word/signed word/dword/signed dword) 39
|
||||
(byte) main::y1 ← (byte/signed byte/word/signed word/dword/signed dword) 24
|
||||
(byte/signed byte/word/signed word~) main::$0 ← (byte) main::x1 - (byte) main::x0
|
||||
(byte) main::xd ← (byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word~) main::$1 ← (byte) main::y1 - (byte) main::y0
|
||||
(byte) main::yd ← (byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0 ← (byte) main::x1 - (byte) main::x0
|
||||
(byte) main::xd ← (byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1 ← (byte) main::y1 - (byte) main::y0
|
||||
(byte) main::yd ← (byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(byte) main::x ← (byte) main::x0
|
||||
(byte) main::y ← (byte) main::y0
|
||||
(byte~) main::$2 ← (byte) main::yd / (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
@ -149,8 +149,8 @@ main::@3: scope:[main] from main::@1
|
||||
(byte) main::y ← (byte/word~) main::$10
|
||||
(word~) main::$11 ← (word) main::idx + (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
(word) main::idx ← (word~) main::$11
|
||||
(byte/signed byte/word/signed word~) main::$12 ← (byte) main::e - (byte) main::xd
|
||||
(byte) main::e ← (byte/signed byte/word/signed word~) main::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$12 ← (byte) main::e - (byte) main::xd
|
||||
(byte) main::e ← (byte/signed byte/word/signed word/dword/signed dword~) main::$12
|
||||
to:main::@2
|
||||
main::@4: scope:[main] from main::@2
|
||||
to:main::@return
|
||||
@ -179,10 +179,10 @@ main: scope:[main] from @1
|
||||
(byte) main::y0#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) main::x1#0 ← (byte/signed byte/word/signed word/dword/signed dword) 39
|
||||
(byte) main::y1#0 ← (byte/signed byte/word/signed word/dword/signed dword) 24
|
||||
(byte/signed byte/word/signed word~) main::$0 ← (byte) main::x1#0 - (byte) main::x0#0
|
||||
(byte) main::xd#0 ← (byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word~) main::$1 ← (byte) main::y1#0 - (byte) main::y0#0
|
||||
(byte) main::yd#0 ← (byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0 ← (byte) main::x1#0 - (byte) main::x0#0
|
||||
(byte) main::xd#0 ← (byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1 ← (byte) main::y1#0 - (byte) main::y0#0
|
||||
(byte) main::yd#0 ← (byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(byte) main::x#0 ← (byte) main::x0#0
|
||||
(byte) main::y#0 ← (byte) main::y0#0
|
||||
(byte~) main::$2 ← (byte) main::yd#0 / (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
@ -237,8 +237,8 @@ main::@3: scope:[main] from main::@1
|
||||
(byte) main::y#1 ← (byte/word~) main::$10
|
||||
(word~) main::$11 ← (word) main::idx#4 + (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
(word) main::idx#2 ← (word~) main::$11
|
||||
(byte/signed byte/word/signed word~) main::$12 ← (byte) main::e#4 - (byte) main::xd#2
|
||||
(byte) main::e#2 ← (byte/signed byte/word/signed word~) main::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$12 ← (byte) main::e#4 - (byte) main::xd#2
|
||||
(byte) main::e#2 ← (byte/signed byte/word/signed word/dword/signed dword~) main::$12
|
||||
to:main::@2
|
||||
main::@return: scope:[main] from main::@2
|
||||
return
|
||||
@ -256,11 +256,11 @@ SYMBOL TABLE SSA
|
||||
(label) @begin
|
||||
(label) @end
|
||||
(void()) main()
|
||||
(byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(byte/word~) main::$10
|
||||
(word~) main::$11
|
||||
(byte/signed byte/word/signed word~) main::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$12
|
||||
(byte/word~) main::$13
|
||||
(boolean~) main::$14
|
||||
(byte~) main::$2
|
||||
@ -335,8 +335,8 @@ Culled Empty Block (label) @2
|
||||
Succesful SSA optimization Pass2CullEmptyBlocks
|
||||
Inversing boolean not (boolean~) main::$9 ← (byte) main::xd#1 >= (byte) main::e#1 from (boolean~) main::$8 ← (byte) main::xd#1 < (byte) main::e#1
|
||||
Succesful SSA optimization Pass2UnaryNotSimplification
|
||||
Alias (byte) main::xd#0 = (byte/signed byte/word/signed word~) main::$0
|
||||
Alias (byte) main::yd#0 = (byte/signed byte/word/signed word~) main::$1
|
||||
Alias (byte) main::xd#0 = (byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
Alias (byte) main::yd#0 = (byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
Alias (byte) main::x#0 = (byte) main::x0#0
|
||||
Alias (byte) main::y#0 = (byte) main::y0#0
|
||||
Alias (byte) main::e#0 = (byte~) main::$2
|
||||
@ -351,7 +351,7 @@ Alias (byte) main::STAR#1 = (byte) main::STAR#3
|
||||
Alias (byte) main::yd#1 = (byte) main::yd#3
|
||||
Alias (byte) main::y#1 = (byte/word~) main::$10
|
||||
Alias (word) main::idx#2 = (word~) main::$11
|
||||
Alias (byte) main::e#2 = (byte/signed byte/word/signed word~) main::$12
|
||||
Alias (byte) main::e#2 = (byte/signed byte/word/signed word/dword/signed dword~) main::$12
|
||||
Succesful SSA optimization Pass2AliasElimination
|
||||
Alias (byte) main::x1#1 = (byte) main::x1#2
|
||||
Alias (byte) main::x#1 = (byte) main::x#3
|
||||
|
@ -43,8 +43,8 @@ STATEMENTS
|
||||
proc (void()) main()
|
||||
(byte) main::b ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
main::@1:
|
||||
(byte/signed byte/word/signed word~) main::$0 ← (byte/word/signed word/dword/signed dword) 200 - (byte) main::b
|
||||
(byte) main::b2 ← (byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0 ← (byte/word/signed word/dword/signed dword) 200 - (byte) main::b
|
||||
(byte) main::b2 ← (byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
*((byte*) SCREEN + (byte) main::b) ← (byte) main::b2
|
||||
(signed byte~) main::$1 ← ((signed byte)) (byte) main::b
|
||||
(signed byte~) main::$2 ← - (signed byte~) main::$1
|
||||
@ -91,7 +91,7 @@ SYMBOLS
|
||||
(byte*) SCREEN3
|
||||
(byte*) SCREEN4
|
||||
(void()) main()
|
||||
(byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
(signed byte~) main::$1
|
||||
(signed byte~) main::$2
|
||||
(byte~) main::$3
|
||||
@ -134,8 +134,8 @@ main: scope:[main] from
|
||||
(byte) main::b ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main main::@1
|
||||
(byte/signed byte/word/signed word~) main::$0 ← (byte/word/signed word/dword/signed dword) 200 - (byte) main::b
|
||||
(byte) main::b2 ← (byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0 ← (byte/word/signed word/dword/signed dword) 200 - (byte) main::b
|
||||
(byte) main::b2 ← (byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
*((byte*) SCREEN + (byte) main::b) ← (byte) main::b2
|
||||
(signed byte~) main::$1 ← ((signed byte)) (byte) main::b
|
||||
(signed byte~) main::$2 ← - (signed byte~) main::$1
|
||||
@ -220,8 +220,8 @@ main::@1: scope:[main] from main main::@1
|
||||
(byte*) SCREEN2#1 ← phi( main/(byte*) SCREEN2#2 main::@1/(byte*) SCREEN2#1 )
|
||||
(byte*) SCREEN#1 ← phi( main/(byte*) SCREEN#2 main::@1/(byte*) SCREEN#1 )
|
||||
(byte) main::b#2 ← phi( main/(byte) main::b#0 main::@1/(byte) main::b#1 )
|
||||
(byte/signed byte/word/signed word~) main::$0 ← (byte/word/signed word/dword/signed dword) 200 - (byte) main::b#2
|
||||
(byte) main::b2#0 ← (byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0 ← (byte/word/signed word/dword/signed dword) 200 - (byte) main::b#2
|
||||
(byte) main::b2#0 ← (byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
*((byte*) SCREEN#1 + (byte) main::b#2) ← (byte) main::b2#0
|
||||
(signed byte~) main::$1 ← ((signed byte)) (byte) main::b#2
|
||||
(signed byte~) main::$2 ← - (signed byte~) main::$1
|
||||
@ -317,7 +317,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) SCREEN4#5
|
||||
(byte*) SCREEN4#6
|
||||
(void()) main()
|
||||
(byte/signed byte/word/signed word~) main::$0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
(signed byte~) main::$1
|
||||
(signed byte~) main::$2
|
||||
(byte~) main::$3
|
||||
@ -368,7 +368,7 @@ Not aliassing across scopes: SCREEN4#2 SCREEN4#3
|
||||
Alias (byte*) SCREEN2#0 = (byte*~) $1 (byte*) SCREEN2#3
|
||||
Alias (byte*) SCREEN3#0 = (byte*~) $3 (byte*) SCREEN3#6
|
||||
Alias (byte*) SCREEN4#0 = (byte*~) $5 (byte*) SCREEN4#6
|
||||
Alias (byte) main::b2#0 = (byte/signed byte/word/signed word~) main::$0
|
||||
Alias (byte) main::b2#0 = (byte/signed byte/word/signed word/dword/signed dword~) main::$0
|
||||
Alias (signed byte) main::sb#0 = (signed byte~) main::$2
|
||||
Alias (byte*) SCREEN3#3 = (byte*) SCREEN3#4
|
||||
Alias (byte*) SCREEN4#3 = (byte*) SCREEN4#4
|
||||
|
@ -46,7 +46,7 @@ test_sbytes::@return: scope:[test_sbytes] from test_sbytes::@4
|
||||
[21] return [ ] ( main:2::test_sbytes:9 [ ] )
|
||||
to:@return
|
||||
assert_sbyte: scope:[assert_sbyte] from test_sbytes test_sbytes::@1 test_sbytes::@2 test_sbytes::@3 test_sbytes::@4
|
||||
[22] (signed byte) assert_sbyte::c#5 ← phi( test_sbytes/(byte/signed byte/word/signed word) 0 test_sbytes::@1/(byte/signed byte/word/signed word) 2 test_sbytes::@2/-(byte/signed byte/word/signed word) 2 test_sbytes::@3/(byte/signed byte/word/signed word) 2 test_sbytes::@4/(byte/signed byte/word/signed word) 2 ) [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:14 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:16 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:18 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:20 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] )
|
||||
[22] (signed byte) assert_sbyte::c#5 ← phi( test_sbytes/(byte/signed byte/word/signed word/dword/signed dword) 0 test_sbytes::@1/(byte/signed byte/word/signed word/dword/signed dword) 2 test_sbytes::@2/-(byte/signed byte/word/signed word/dword/signed dword) 2 test_sbytes::@3/(byte/signed byte/word/signed word/dword/signed dword) 2 test_sbytes::@4/(byte/signed byte/word/signed word/dword/signed dword) 2 ) [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:14 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:16 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:18 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:20 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] )
|
||||
[22] (signed byte) assert_sbyte::b#5 ← phi( test_sbytes/(const signed byte) test_sbytes::bb#0 test_sbytes::@1/(const signed byte) test_sbytes::bc#0 test_sbytes::@2/(const signed byte) test_sbytes::bd#0 test_sbytes::@3/(const signed byte) test_sbytes::be#0 test_sbytes::@4/(const signed byte) test_sbytes::bf#0 ) [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:14 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:16 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:18 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:20 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] )
|
||||
[22] (byte*) assert_sbyte::msg#5 ← phi( test_sbytes/(const string) test_sbytes::msg test_sbytes::@1/(const string) test_sbytes::msg1 test_sbytes::@2/(const string) test_sbytes::msg2 test_sbytes::@3/(const string) test_sbytes::msg3 test_sbytes::@4/(const string) test_sbytes::msg4 ) [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:14 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:16 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:18 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:20 [ assert_sbyte::msg#5 assert_sbyte::b#5 assert_sbyte::c#5 line_cursor#1 ] )
|
||||
[23] (byte*) print_str::str#5 ← (byte*) assert_sbyte::msg#5 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 line_cursor#1 ] ( main:2::test_sbytes:9::assert_sbyte:12 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:14 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:16 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:18 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 line_cursor#1 ] main:2::test_sbytes:9::assert_sbyte:20 [ assert_sbyte::b#5 assert_sbyte::c#5 print_str::str#5 line_cursor#1 ] )
|
||||
@ -97,7 +97,7 @@ print_ln: scope:[print_ln] from assert_byte::@2 assert_sbyte::@2
|
||||
to:print_ln::@1
|
||||
print_ln::@1: scope:[print_ln] from print_ln print_ln::@1
|
||||
[44] (byte*) line_cursor#21 ← phi( print_ln/(byte*) line_cursor#42 print_ln::@1/(byte*) line_cursor#1 ) [ char_cursor#2 line_cursor#21 ] ( main:2::test_sbytes:9::assert_sbyte:12::print_ln:32 [ char_cursor#2 line_cursor#21 ] main:2::test_sbytes:9::assert_sbyte:14::print_ln:32 [ char_cursor#2 line_cursor#21 ] main:2::test_sbytes:9::assert_sbyte:16::print_ln:32 [ char_cursor#2 line_cursor#21 ] main:2::test_sbytes:9::assert_sbyte:18::print_ln:32 [ char_cursor#2 line_cursor#21 ] main:2::test_sbytes:9::assert_sbyte:20::print_ln:32 [ char_cursor#2 line_cursor#21 ] main:2::test_bytes:7::assert_byte:49::print_ln:64 [ char_cursor#2 line_cursor#21 ] main:2::test_bytes:7::assert_byte:51::print_ln:64 [ char_cursor#2 line_cursor#21 ] main:2::test_bytes:7::assert_byte:53::print_ln:64 [ char_cursor#2 line_cursor#21 ] )
|
||||
[45] (byte*) line_cursor#1 ← (byte*) line_cursor#21 + (byte/signed byte/word/signed word) 40 [ line_cursor#1 char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_bytes:7::assert_byte:49::print_ln:64 [ line_cursor#1 char_cursor#2 ] main:2::test_bytes:7::assert_byte:51::print_ln:64 [ line_cursor#1 char_cursor#2 ] main:2::test_bytes:7::assert_byte:53::print_ln:64 [ line_cursor#1 char_cursor#2 ] )
|
||||
[45] (byte*) line_cursor#1 ← (byte*) line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_bytes:7::assert_byte:49::print_ln:64 [ line_cursor#1 char_cursor#2 ] main:2::test_bytes:7::assert_byte:51::print_ln:64 [ line_cursor#1 char_cursor#2 ] main:2::test_bytes:7::assert_byte:53::print_ln:64 [ line_cursor#1 char_cursor#2 ] )
|
||||
[46] if((byte*) line_cursor#1<(byte*) char_cursor#2) goto print_ln::@1 [ line_cursor#1 char_cursor#2 ] ( main:2::test_sbytes:9::assert_sbyte:12::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:14::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:16::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:18::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_sbytes:9::assert_sbyte:20::print_ln:32 [ line_cursor#1 char_cursor#2 ] main:2::test_bytes:7::assert_byte:49::print_ln:64 [ line_cursor#1 char_cursor#2 ] main:2::test_bytes:7::assert_byte:51::print_ln:64 [ line_cursor#1 char_cursor#2 ] main:2::test_bytes:7::assert_byte:53::print_ln:64 [ line_cursor#1 char_cursor#2 ] )
|
||||
to:print_ln::@return
|
||||
print_ln::@return: scope:[print_ln] from print_ln::@1
|
||||
@ -119,10 +119,10 @@ test_bytes::@return: scope:[test_bytes] from test_bytes::@2
|
||||
[54] return [ line_cursor#1 ] ( main:2::test_bytes:7 [ line_cursor#1 ] )
|
||||
to:@return
|
||||
assert_byte: scope:[assert_byte] from test_bytes test_bytes::@1 test_bytes::@2
|
||||
[55] (byte*) line_cursor#45 ← phi( test_bytes/((byte*))(word/signed word) 1024 test_bytes::@1/(byte*) line_cursor#1 test_bytes::@2/(byte*) line_cursor#1 ) [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] )
|
||||
[55] (byte) assert_byte::c#3 ← phi( test_bytes/(byte/signed byte/word/signed word) 0 test_bytes::@1/(byte/signed byte/word/signed word) 2 test_bytes::@2/(byte/word/signed word) 254 ) [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] )
|
||||
[55] (byte*) line_cursor#45 ← phi( test_bytes/((byte*))(word/signed word/dword/signed dword) 1024 test_bytes::@1/(byte*) line_cursor#1 test_bytes::@2/(byte*) line_cursor#1 ) [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] )
|
||||
[55] (byte) assert_byte::c#3 ← phi( test_bytes/(byte/signed byte/word/signed word/dword/signed dword) 0 test_bytes::@1/(byte/signed byte/word/signed word/dword/signed dword) 2 test_bytes::@2/(byte/word/signed word/dword/signed dword) 254 ) [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] )
|
||||
[55] (byte) assert_byte::b#3 ← phi( test_bytes/(const byte) test_bytes::bb#0 test_bytes::@1/(const byte) test_bytes::bc#0 test_bytes::@2/(const byte) test_bytes::bd#0 ) [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] )
|
||||
[55] (byte*) char_cursor#65 ← phi( test_bytes/((byte*))(word/signed word) 1024 test_bytes::@1/(byte*~) char_cursor#88 test_bytes::@2/(byte*~) char_cursor#89 ) [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] )
|
||||
[55] (byte*) char_cursor#65 ← phi( test_bytes/((byte*))(word/signed word/dword/signed dword) 1024 test_bytes::@1/(byte*~) char_cursor#88 test_bytes::@2/(byte*~) char_cursor#89 ) [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] )
|
||||
[55] (byte*) assert_byte::msg#3 ← phi( test_bytes/(const string) test_bytes::msg test_bytes::@1/(const string) test_bytes::msg1 test_bytes::@2/(const string) test_bytes::msg2 ) [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ char_cursor#65 line_cursor#45 assert_byte::msg#3 assert_byte::b#3 assert_byte::c#3 ] )
|
||||
[56] (byte*) print_str::str#1 ← (byte*) assert_byte::msg#3 [ print_str::str#1 char_cursor#65 line_cursor#45 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ print_str::str#1 char_cursor#65 line_cursor#45 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ print_str::str#1 char_cursor#65 line_cursor#45 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ print_str::str#1 char_cursor#65 line_cursor#45 assert_byte::b#3 assert_byte::c#3 ] )
|
||||
[57] call print_str param-assignment [ char_cursor#2 line_cursor#45 assert_byte::b#3 assert_byte::c#3 ] ( main:2::test_bytes:7::assert_byte:49 [ char_cursor#2 line_cursor#45 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:51 [ char_cursor#2 line_cursor#45 assert_byte::b#3 assert_byte::c#3 ] main:2::test_bytes:7::assert_byte:53 [ char_cursor#2 line_cursor#45 assert_byte::b#3 assert_byte::c#3 ] )
|
||||
@ -153,10 +153,10 @@ print_cls: scope:[print_cls] from main
|
||||
[68] phi() [ ] ( main:2::print_cls:5 [ ] )
|
||||
to:print_cls::@1
|
||||
print_cls::@1: scope:[print_cls] from print_cls print_cls::@1
|
||||
[69] (byte*) print_cls::sc#2 ← phi( print_cls/((byte*))(word/signed word) 1024 print_cls::@1/(byte*) print_cls::sc#1 ) [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] )
|
||||
[69] (byte*) print_cls::sc#2 ← phi( print_cls/((byte*))(word/signed word/dword/signed dword) 1024 print_cls::@1/(byte*) print_cls::sc#1 ) [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] )
|
||||
[70] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] )
|
||||
[71] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] )
|
||||
[72] if((byte*) print_cls::sc#1!=(word/signed word) 1024+(word/signed word) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] )
|
||||
[72] if((byte*) print_cls::sc#1!=(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 ] )
|
||||
to:print_cls::@return
|
||||
print_cls::@return: scope:[print_cls] from print_cls::@1
|
||||
[73] return [ ] ( main:2::print_cls:5 [ ] )
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -2,11 +2,11 @@
|
||||
(label) @begin
|
||||
(label) @end
|
||||
(byte*) BGCOL
|
||||
(const byte*) BGCOL#0 BGCOL = ((byte*))(word) 53281
|
||||
(const byte*) BGCOL#0 BGCOL = ((byte*))(word/dword/signed dword) 53281
|
||||
(byte) GREEN
|
||||
(const byte) GREEN#0 GREEN = (byte/signed byte/word/signed word) 5
|
||||
(const byte) GREEN#0 GREEN = (byte/signed byte/word/signed word/dword/signed dword) 5
|
||||
(byte) RED
|
||||
(const byte) RED#0 RED = (byte/signed byte/word/signed word) 2
|
||||
(const byte) RED#0 RED = (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
(void()) assert_byte((byte*) assert_byte::msg , (byte) assert_byte::b , (byte) assert_byte::c)
|
||||
(label) assert_byte::@1
|
||||
(label) assert_byte::@2
|
||||
@ -80,11 +80,11 @@
|
||||
(label) test_bytes::@2
|
||||
(label) test_bytes::@return
|
||||
(byte) test_bytes::bb
|
||||
(const byte) test_bytes::bb#0 bb = (byte/signed byte/word/signed word) 0
|
||||
(const byte) test_bytes::bb#0 bb = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(byte) test_bytes::bc
|
||||
(const byte) test_bytes::bc#0 bc = (const byte) test_bytes::bb#0+(byte/signed byte/word/signed word) 2
|
||||
(const byte) test_bytes::bc#0 bc = (const byte) test_bytes::bb#0+(byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
(byte) test_bytes::bd
|
||||
(const byte) test_bytes::bd#0 bd = ((byte))(const byte) test_bytes::bc#0-(byte/signed byte/word/signed word) 4
|
||||
(const byte) test_bytes::bd#0 bd = ((byte))(const byte) test_bytes::bc#0-(byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(const string) test_bytes::msg msg = (string) "0=0@"
|
||||
(const string) test_bytes::msg1 msg1 = (string) "0+2=2@"
|
||||
(const string) test_bytes::msg2 msg2 = (string) "0+2-4=254@"
|
||||
@ -95,15 +95,15 @@
|
||||
(label) test_sbytes::@4
|
||||
(label) test_sbytes::@return
|
||||
(signed byte) test_sbytes::bb
|
||||
(const signed byte) test_sbytes::bb#0 bb = (byte/signed byte/word/signed word) 0
|
||||
(const signed byte) test_sbytes::bb#0 bb = (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(signed byte) test_sbytes::bc
|
||||
(const signed byte) test_sbytes::bc#0 bc = (const signed byte) test_sbytes::bb#0+(byte/signed byte/word/signed word) 2
|
||||
(const signed byte) test_sbytes::bc#0 bc = (const signed byte) test_sbytes::bb#0+(byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
(signed byte) test_sbytes::bd
|
||||
(const signed byte) test_sbytes::bd#0 bd = (const signed byte) test_sbytes::bc#0-(byte/signed byte/word/signed word) 4
|
||||
(const signed byte) test_sbytes::bd#0 bd = (const signed byte) test_sbytes::bc#0-(byte/signed byte/word/signed word/dword/signed dword) 4
|
||||
(signed byte) test_sbytes::be
|
||||
(const signed byte) test_sbytes::be#0 be = -(const signed byte) test_sbytes::bd#0
|
||||
(signed byte) test_sbytes::bf
|
||||
(const signed byte) test_sbytes::bf#0 bf = ((signed byte))-(byte/signed byte/word/signed word) 127-(byte/signed byte/word/signed word) 127
|
||||
(const signed byte) test_sbytes::bf#0 bf = ((signed byte))-(byte/signed byte/word/signed word/dword/signed dword) 127-(byte/signed byte/word/signed word/dword/signed dword) 127
|
||||
(const string) test_sbytes::msg msg = (string) "0=0@"
|
||||
(const string) test_sbytes::msg1 msg1 = (string) "0+2=2@"
|
||||
(const string) test_sbytes::msg2 msg2 = (string) "0+2-4=-2@"
|
||||
|
@ -990,19 +990,19 @@ anim::@1:
|
||||
(boolean~) anim::$7 ← (byte) anim::xidx >= (byte) sinlen_x
|
||||
(boolean~) anim::$8 ← ! (boolean~) anim::$7
|
||||
if((boolean~) anim::$8) goto anim::@2
|
||||
(byte/signed byte/word/signed word~) anim::$9 ← (byte) anim::xidx - (byte) sinlen_x
|
||||
(byte) anim::xidx ← (byte/signed byte/word/signed word~) anim::$9
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$9 ← (byte) anim::xidx - (byte) sinlen_x
|
||||
(byte) anim::xidx ← (byte/signed byte/word/signed word/dword/signed dword~) anim::$9
|
||||
anim::@2:
|
||||
(byte/word~) anim::$10 ← (byte) anim::yidx + (byte/signed byte/word/signed word/dword/signed dword) 8
|
||||
(byte) anim::yidx ← (byte/word~) anim::$10
|
||||
(boolean~) anim::$11 ← (byte) anim::yidx >= (byte) sinlen_y
|
||||
(boolean~) anim::$12 ← ! (boolean~) anim::$11
|
||||
if((boolean~) anim::$12) goto anim::@3
|
||||
(byte/signed byte/word/signed word~) anim::$13 ← (byte) anim::yidx - (byte) sinlen_y
|
||||
(byte) anim::yidx ← (byte/signed byte/word/signed word~) anim::$13
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$13 ← (byte) anim::yidx - (byte) sinlen_y
|
||||
(byte) anim::yidx ← (byte/signed byte/word/signed word/dword/signed dword~) anim::$13
|
||||
anim::@3:
|
||||
(byte/signed byte/word/signed word~) anim::$14 ← (byte) anim::j2 - (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
(byte) anim::j2 ← (byte/signed byte/word/signed word~) anim::$14
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$14 ← (byte) anim::j2 - (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
(byte) anim::j2 ← (byte/signed byte/word/signed word/dword/signed dword~) anim::$14
|
||||
(byte) anim::j ← ++ (byte) anim::j
|
||||
(boolean~) anim::$15 ← (byte) anim::j != (byte/signed byte/word/signed word/dword/signed dword) 7
|
||||
if((boolean~) anim::$15) goto anim::@1
|
||||
@ -1214,8 +1214,8 @@ SYMBOLS
|
||||
(byte/word~) anim::$10
|
||||
(boolean~) anim::$11
|
||||
(boolean~) anim::$12
|
||||
(byte/signed byte/word/signed word~) anim::$13
|
||||
(byte/signed byte/word/signed word~) anim::$14
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$13
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$14
|
||||
(boolean~) anim::$15
|
||||
(boolean~) anim::$16
|
||||
(boolean~) anim::$17
|
||||
@ -1228,7 +1228,7 @@ SYMBOLS
|
||||
(byte/word~) anim::$6
|
||||
(boolean~) anim::$7
|
||||
(boolean~) anim::$8
|
||||
(byte/signed byte/word/signed word~) anim::$9
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$9
|
||||
(label) anim::@1
|
||||
(label) anim::@2
|
||||
(label) anim::@3
|
||||
@ -2077,19 +2077,19 @@ anim::@2: scope:[anim] from anim::@1 anim::@6
|
||||
if((boolean~) anim::$12) goto anim::@3
|
||||
to:anim::@7
|
||||
anim::@6: scope:[anim] from anim::@1
|
||||
(byte/signed byte/word/signed word~) anim::$9 ← (byte) anim::xidx - (byte) sinlen_x
|
||||
(byte) anim::xidx ← (byte/signed byte/word/signed word~) anim::$9
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$9 ← (byte) anim::xidx - (byte) sinlen_x
|
||||
(byte) anim::xidx ← (byte/signed byte/word/signed word/dword/signed dword~) anim::$9
|
||||
to:anim::@2
|
||||
anim::@3: scope:[anim] from anim::@2 anim::@7
|
||||
(byte/signed byte/word/signed word~) anim::$14 ← (byte) anim::j2 - (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
(byte) anim::j2 ← (byte/signed byte/word/signed word~) anim::$14
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$14 ← (byte) anim::j2 - (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
(byte) anim::j2 ← (byte/signed byte/word/signed word/dword/signed dword~) anim::$14
|
||||
(byte) anim::j ← ++ (byte) anim::j
|
||||
(boolean~) anim::$15 ← (byte) anim::j != (byte/signed byte/word/signed word/dword/signed dword) 7
|
||||
if((boolean~) anim::$15) goto anim::@1
|
||||
to:anim::@8
|
||||
anim::@7: scope:[anim] from anim::@2
|
||||
(byte/signed byte/word/signed word~) anim::$13 ← (byte) anim::yidx - (byte) sinlen_y
|
||||
(byte) anim::yidx ← (byte/signed byte/word/signed word~) anim::$13
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$13 ← (byte) anim::yidx - (byte) sinlen_y
|
||||
(byte) anim::yidx ← (byte/signed byte/word/signed word/dword/signed dword~) anim::$13
|
||||
to:anim::@3
|
||||
anim::@8: scope:[anim] from anim::@3
|
||||
*((byte*) SPRITES_XMSB) ← (byte) anim::x_msb
|
||||
@ -2851,8 +2851,8 @@ anim::@6: scope:[anim] from anim::@1
|
||||
(byte) anim::j2#6 ← phi( anim::@1/(byte) anim::j2#2 )
|
||||
(byte) anim::yidx#7 ← phi( anim::@1/(byte) anim::yidx#3 )
|
||||
(byte) anim::xidx#4 ← phi( anim::@1/(byte) anim::xidx#1 )
|
||||
(byte/signed byte/word/signed word~) anim::$9 ← (byte) anim::xidx#4 - (byte) sinlen_x#0
|
||||
(byte) anim::xidx#2 ← (byte/signed byte/word/signed word~) anim::$9
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$9 ← (byte) anim::xidx#4 - (byte) sinlen_x#0
|
||||
(byte) anim::xidx#2 ← (byte/signed byte/word/signed word/dword/signed dword~) anim::$9
|
||||
to:anim::@2
|
||||
anim::@3: scope:[anim] from anim::@2 anim::@7
|
||||
(byte) sin_idx_y#19 ← phi( anim::@2/(byte) sin_idx_y#22 anim::@7/(byte) sin_idx_y#23 )
|
||||
@ -2862,8 +2862,8 @@ anim::@3: scope:[anim] from anim::@2 anim::@7
|
||||
(byte) anim::xidx#5 ← phi( anim::@2/(byte) anim::xidx#6 anim::@7/(byte) anim::xidx#7 )
|
||||
(byte) anim::j#2 ← phi( anim::@2/(byte) anim::j#3 anim::@7/(byte) anim::j#4 )
|
||||
(byte) anim::j2#3 ← phi( anim::@2/(byte) anim::j2#4 anim::@7/(byte) anim::j2#5 )
|
||||
(byte/signed byte/word/signed word~) anim::$14 ← (byte) anim::j2#3 - (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
(byte) anim::j2#1 ← (byte/signed byte/word/signed word~) anim::$14
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$14 ← (byte) anim::j2#3 - (byte/signed byte/word/signed word/dword/signed dword) 2
|
||||
(byte) anim::j2#1 ← (byte/signed byte/word/signed word/dword/signed dword~) anim::$14
|
||||
(byte) anim::j#1 ← ++ (byte) anim::j#2
|
||||
(boolean~) anim::$15 ← (byte) anim::j#1 != (byte/signed byte/word/signed word/dword/signed dword) 7
|
||||
if((boolean~) anim::$15) goto anim::@1
|
||||
@ -2876,8 +2876,8 @@ anim::@7: scope:[anim] from anim::@2
|
||||
(byte) anim::j#4 ← phi( anim::@2/(byte) anim::j#3 )
|
||||
(byte) anim::j2#5 ← phi( anim::@2/(byte) anim::j2#4 )
|
||||
(byte) anim::yidx#5 ← phi( anim::@2/(byte) anim::yidx#1 )
|
||||
(byte/signed byte/word/signed word~) anim::$13 ← (byte) anim::yidx#5 - (byte) sinlen_y#0
|
||||
(byte) anim::yidx#2 ← (byte/signed byte/word/signed word~) anim::$13
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$13 ← (byte) anim::yidx#5 - (byte) sinlen_y#0
|
||||
(byte) anim::yidx#2 ← (byte/signed byte/word/signed word/dword/signed dword~) anim::$13
|
||||
to:anim::@3
|
||||
anim::@8: scope:[anim] from anim::@3
|
||||
(byte) sin_idx_y#14 ← phi( anim::@3/(byte) sin_idx_y#19 )
|
||||
@ -3420,8 +3420,8 @@ SYMBOL TABLE SSA
|
||||
(byte/word~) anim::$10
|
||||
(boolean~) anim::$11
|
||||
(boolean~) anim::$12
|
||||
(byte/signed byte/word/signed word~) anim::$13
|
||||
(byte/signed byte/word/signed word~) anim::$14
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$13
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$14
|
||||
(boolean~) anim::$15
|
||||
(boolean~) anim::$16
|
||||
(boolean~) anim::$17
|
||||
@ -3434,7 +3434,7 @@ SYMBOL TABLE SSA
|
||||
(byte/word~) anim::$6
|
||||
(boolean~) anim::$7
|
||||
(boolean~) anim::$8
|
||||
(byte/signed byte/word/signed word~) anim::$9
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) anim::$9
|
||||
(label) anim::@1
|
||||
(label) anim::@10
|
||||
(label) anim::@2
|
||||
@ -4242,15 +4242,15 @@ Alias (byte) anim::j2#2 = (byte) anim::j2#6
|
||||
Alias (byte) anim::j#5 = (byte) anim::j#6
|
||||
Alias (byte) sin_idx_x#24 = (byte) sin_idx_x#25
|
||||
Alias (byte) sin_idx_y#25 = (byte) sin_idx_y#26
|
||||
Alias (byte) anim::xidx#2 = (byte/signed byte/word/signed word~) anim::$9
|
||||
Alias (byte) anim::j2#1 = (byte/signed byte/word/signed word~) anim::$14
|
||||
Alias (byte) anim::xidx#2 = (byte/signed byte/word/signed word/dword/signed dword~) anim::$9
|
||||
Alias (byte) anim::j2#1 = (byte/signed byte/word/signed word/dword/signed dword~) anim::$14
|
||||
Alias (byte) anim::j2#4 = (byte) anim::j2#5
|
||||
Alias (byte) anim::j#3 = (byte) anim::j#4
|
||||
Alias (byte) anim::xidx#6 = (byte) anim::xidx#7
|
||||
Alias (byte) anim::x_msb#5 = (byte) anim::x_msb#6
|
||||
Alias (byte) sin_idx_x#18 = (byte) sin_idx_x#19
|
||||
Alias (byte) sin_idx_y#22 = (byte) sin_idx_y#23
|
||||
Alias (byte) anim::yidx#2 = (byte/signed byte/word/signed word~) anim::$13
|
||||
Alias (byte) anim::yidx#2 = (byte/signed byte/word/signed word/dword/signed dword~) anim::$13
|
||||
Alias (byte) anim::x_msb#3 = (byte) anim::x_msb#4
|
||||
Alias (byte) sin_idx_x#10 = (byte) sin_idx_x#14
|
||||
Alias (byte) sin_idx_y#14 = (byte) sin_idx_y#19 (byte) sin_idx_y#15
|
||||
|
@ -214,8 +214,8 @@ proc (void()) main()
|
||||
(byte) main::a ← (byte/signed byte/word/signed word/dword/signed dword) 7
|
||||
(byte) main::i ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
main::@1:
|
||||
(byte/signed byte/word/signed word~) main::$1 ← (byte/word/signed word/dword/signed dword) 206 - (byte) main::a
|
||||
(byte) main::b ← (byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1 ← (byte/word/signed word/dword/signed dword) 206 - (byte) main::a
|
||||
(byte) main::b ← (byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(byte[5]) main::cs ← { (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/word/signed word/dword/signed dword) 199, (byte/signed byte/word/signed word/dword/signed dword) 55, (byte/word/signed word/dword/signed dword) 151, (byte/signed byte/word/signed word/dword/signed dword) 103 }
|
||||
(byte) main::r ← (byte) '-'
|
||||
(boolean~) main::$2 ← (byte) main::a < (byte) main::b
|
||||
@ -389,7 +389,7 @@ SYMBOLS
|
||||
(byte*) line_cursor
|
||||
(void()) main()
|
||||
(void~) main::$0
|
||||
(byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(void~) main::$10
|
||||
(boolean~) main::$11
|
||||
(boolean~) main::$12
|
||||
@ -694,8 +694,8 @@ 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::@21
|
||||
(byte/signed byte/word/signed word~) main::$1 ← (byte/word/signed word/dword/signed dword) 206 - (byte) main::a
|
||||
(byte) main::b ← (byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1 ← (byte/word/signed word/dword/signed dword) 206 - (byte) main::a
|
||||
(byte) main::b ← (byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(byte[5]) main::cs ← { (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/word/signed word/dword/signed dword) 199, (byte/signed byte/word/signed word/dword/signed dword) 55, (byte/word/signed word/dword/signed dword) 151, (byte/signed byte/word/signed word/dword/signed dword) 103 }
|
||||
(byte) main::r ← (byte) '-'
|
||||
(boolean~) main::$2 ← (byte) main::a < (byte) main::b
|
||||
@ -1149,8 +1149,8 @@ main::@1: scope:[main] from main::@45 main::@70
|
||||
(byte) main::i#42 ← phi( main::@45/(byte) main::i#0 main::@70/(byte) main::i#1 )
|
||||
(byte*) char_cursor#114 ← phi( main::@45/(byte*) char_cursor#135 main::@70/(byte*) char_cursor#34 )
|
||||
(byte) main::a#2 ← phi( main::@45/(byte) main::a#0 main::@70/(byte) main::a#1 )
|
||||
(byte/signed byte/word/signed word~) main::$1 ← (byte/word/signed word/dword/signed dword) 206 - (byte) main::a#2
|
||||
(byte) main::b#0 ← (byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1 ← (byte/word/signed word/dword/signed dword) 206 - (byte) main::a#2
|
||||
(byte) main::b#0 ← (byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(byte[5]) main::cs#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/word/signed word/dword/signed dword) 199, (byte/signed byte/word/signed word/dword/signed dword) 55, (byte/word/signed word/dword/signed dword) 151, (byte/signed byte/word/signed word/dword/signed dword) 103 }
|
||||
(byte) main::r#0 ← (byte) '-'
|
||||
(boolean~) main::$2 ← (byte) main::a#2 < (byte) main::b#0
|
||||
@ -2172,7 +2172,7 @@ SYMBOL TABLE SSA
|
||||
(byte*) line_cursor#85
|
||||
(byte*) line_cursor#9
|
||||
(void()) main()
|
||||
(byte/signed byte/word/signed word~) main::$1
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) main::$1
|
||||
(boolean~) main::$11
|
||||
(boolean~) main::$12
|
||||
(boolean~) main::$15
|
||||
@ -2861,7 +2861,7 @@ Alias (byte*) char_cursor#49 = (byte*) char_cursor#6 (byte*) char_cursor#50 (byt
|
||||
Alias (byte*) char_cursor#52 = (byte*) char_cursor#8 (byte*) char_cursor#9
|
||||
Alias (byte*) char_cursor#135 = (byte*) char_cursor#136
|
||||
Alias (byte*) line_cursor#84 = (byte*) line_cursor#85
|
||||
Alias (byte) main::b#0 = (byte/signed byte/word/signed word~) main::$1 (byte) main::b#10
|
||||
Alias (byte) main::b#0 = (byte/signed byte/word/signed word/dword/signed dword~) main::$1 (byte) main::b#10
|
||||
Alias (byte) main::a#3 = (byte) main::a#4 (byte) main::a#44
|
||||
Alias (byte) main::i#24 = (byte) main::i#25 (byte) main::i#35
|
||||
Alias (byte*) line_cursor#63 = (byte*) line_cursor#64 (byte*) line_cursor#73
|
||||
|
@ -242,8 +242,8 @@ signed_multiply::@6: scope:[signed_multiply] from signed_multiply
|
||||
to:signed_multiply::@3
|
||||
signed_multiply::@3: scope:[signed_multiply] from signed_multiply::@6
|
||||
[119] (byte~) signed_multiply::$6 ← > (word) signed_multiply::m#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] )
|
||||
[120] (byte/signed byte/word/signed word~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] )
|
||||
[121] (word) signed_multiply::m#1 ← (word) signed_multiply::m#0 hi= (byte/signed byte/word/signed word~) signed_multiply::$16 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] )
|
||||
[120] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] )
|
||||
[121] (word) signed_multiply::m#1 ← (word) signed_multiply::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] )
|
||||
to:signed_multiply::@1
|
||||
signed_multiply::@1: scope:[signed_multiply] from signed_multiply::@3 signed_multiply::@6
|
||||
[122] (word) signed_multiply::m#5 ← phi( signed_multiply::@3/(word) signed_multiply::m#1 signed_multiply::@6/(word) signed_multiply::m#0 ) [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#5 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#5 ] )
|
||||
@ -251,8 +251,8 @@ signed_multiply::@1: scope:[signed_multiply] from signed_multiply::@3 signed_mu
|
||||
to:signed_multiply::@4
|
||||
signed_multiply::@4: scope:[signed_multiply] from signed_multiply::@1
|
||||
[124] (byte~) signed_multiply::$12 ← > (word) signed_multiply::m#5 [ signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] )
|
||||
[125] (byte/signed byte/word/signed word~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] )
|
||||
[126] (word) signed_multiply::m#2 ← (word) signed_multiply::m#5 hi= (byte/signed byte/word/signed word~) signed_multiply::$17 [ signed_multiply::m#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#2 ] )
|
||||
[125] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] )
|
||||
[126] (word) signed_multiply::m#2 ← (word) signed_multiply::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 [ signed_multiply::m#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#2 ] )
|
||||
to:signed_multiply::@2
|
||||
signed_multiply::@2: scope:[signed_multiply] from signed_multiply::@1 signed_multiply::@4
|
||||
[127] (word) signed_multiply::m#4 ← phi( signed_multiply::@1/(word) signed_multiply::m#5 signed_multiply::@4/(word) signed_multiply::m#2 ) [ signed_multiply::m#4 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#4 ] )
|
||||
|
@ -531,8 +531,8 @@ proc (signed word()) signed_multiply((signed byte) signed_multiply::a , (signed
|
||||
(byte~) signed_multiply::$5 ← > (word) signed_multiply::m
|
||||
(byte~) signed_multiply::$6 ← > (word) signed_multiply::m
|
||||
(byte~) signed_multiply::$7 ← ((byte)) (signed byte) signed_multiply::b
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$8 ← (byte~) signed_multiply::$6 - (byte~) signed_multiply::$7
|
||||
lval((byte~) signed_multiply::$5) ← (byte/signed byte/word/signed word~) signed_multiply::$8
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$8 ← (byte~) signed_multiply::$6 - (byte~) signed_multiply::$7
|
||||
lval((byte~) signed_multiply::$5) ← (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$8
|
||||
signed_multiply::@1:
|
||||
(boolean~) signed_multiply::$9 ← (signed byte) signed_multiply::b < (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
(boolean~) signed_multiply::$10 ← ! (boolean~) signed_multiply::$9
|
||||
@ -540,8 +540,8 @@ signed_multiply::@1:
|
||||
(byte~) signed_multiply::$11 ← > (word) signed_multiply::m
|
||||
(byte~) signed_multiply::$12 ← > (word) signed_multiply::m
|
||||
(byte~) signed_multiply::$13 ← ((byte)) (signed byte) signed_multiply::a
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$14 ← (byte~) signed_multiply::$12 - (byte~) signed_multiply::$13
|
||||
lval((byte~) signed_multiply::$11) ← (byte/signed byte/word/signed word~) signed_multiply::$14
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$14 ← (byte~) signed_multiply::$12 - (byte~) signed_multiply::$13
|
||||
lval((byte~) signed_multiply::$11) ← (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$14
|
||||
signed_multiply::@2:
|
||||
(signed word~) signed_multiply::$15 ← ((signed word)) (word) signed_multiply::m
|
||||
(signed word) signed_multiply::return ← (signed word~) signed_multiply::$15
|
||||
@ -921,7 +921,7 @@ SYMBOLS
|
||||
(byte~) signed_multiply::$11
|
||||
(byte~) signed_multiply::$12
|
||||
(byte~) signed_multiply::$13
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$14
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$14
|
||||
(signed word~) signed_multiply::$15
|
||||
(word~) signed_multiply::$2
|
||||
(boolean~) signed_multiply::$3
|
||||
@ -929,7 +929,7 @@ SYMBOLS
|
||||
(byte~) signed_multiply::$5
|
||||
(byte~) signed_multiply::$6
|
||||
(byte~) signed_multiply::$7
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$8
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$8
|
||||
(boolean~) signed_multiply::$9
|
||||
(label) signed_multiply::@1
|
||||
(label) signed_multiply::@2
|
||||
@ -1261,9 +1261,9 @@ signed_multiply::@3: scope:[signed_multiply] from signed_multiply
|
||||
(byte~) signed_multiply::$5 ← > (word) signed_multiply::m
|
||||
(byte~) signed_multiply::$6 ← > (word) signed_multiply::m
|
||||
(byte~) signed_multiply::$7 ← ((byte)) (signed byte) signed_multiply::b
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$8 ← (byte~) signed_multiply::$6 - (byte~) signed_multiply::$7
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$16 ← (byte/signed byte/word/signed word~) signed_multiply::$8
|
||||
(word) signed_multiply::m ← (word) signed_multiply::m hi= (byte/signed byte/word/signed word~) signed_multiply::$16
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$8 ← (byte~) signed_multiply::$6 - (byte~) signed_multiply::$7
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 ← (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$8
|
||||
(word) signed_multiply::m ← (word) signed_multiply::m hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16
|
||||
to:signed_multiply::@1
|
||||
signed_multiply::@2: scope:[signed_multiply] from signed_multiply::@1 signed_multiply::@4
|
||||
(signed word~) signed_multiply::$15 ← ((signed word)) (word) signed_multiply::m
|
||||
@ -1273,9 +1273,9 @@ signed_multiply::@4: scope:[signed_multiply] from signed_multiply::@1
|
||||
(byte~) signed_multiply::$11 ← > (word) signed_multiply::m
|
||||
(byte~) signed_multiply::$12 ← > (word) signed_multiply::m
|
||||
(byte~) signed_multiply::$13 ← ((byte)) (signed byte) signed_multiply::a
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$14 ← (byte~) signed_multiply::$12 - (byte~) signed_multiply::$13
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$17 ← (byte/signed byte/word/signed word~) signed_multiply::$14
|
||||
(word) signed_multiply::m ← (word) signed_multiply::m hi= (byte/signed byte/word/signed word~) signed_multiply::$17
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$14 ← (byte~) signed_multiply::$12 - (byte~) signed_multiply::$13
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 ← (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$14
|
||||
(word) signed_multiply::m ← (word) signed_multiply::m hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17
|
||||
to:signed_multiply::@2
|
||||
signed_multiply::@return: scope:[signed_multiply] from signed_multiply::@2 signed_multiply::@5
|
||||
(signed word) signed_multiply::return ← (signed word) signed_multiply::return
|
||||
@ -2027,9 +2027,9 @@ signed_multiply::@3: scope:[signed_multiply] from signed_multiply::@6
|
||||
(word) signed_multiply::m#3 ← phi( signed_multiply::@6/(word) signed_multiply::m#0 )
|
||||
(byte~) signed_multiply::$6 ← > (word) signed_multiply::m#3
|
||||
(byte~) signed_multiply::$7 ← ((byte)) (signed byte) signed_multiply::b#3
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$8 ← (byte~) signed_multiply::$6 - (byte~) signed_multiply::$7
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$16 ← (byte/signed byte/word/signed word~) signed_multiply::$8
|
||||
(word) signed_multiply::m#1 ← (word) signed_multiply::m#3 hi= (byte/signed byte/word/signed word~) signed_multiply::$16
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$8 ← (byte~) signed_multiply::$6 - (byte~) signed_multiply::$7
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 ← (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$8
|
||||
(word) signed_multiply::m#1 ← (word) signed_multiply::m#3 hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16
|
||||
to:signed_multiply::@1
|
||||
signed_multiply::@2: scope:[signed_multiply] from signed_multiply::@1 signed_multiply::@4
|
||||
(word) signed_multiply::m#4 ← phi( signed_multiply::@1/(word) signed_multiply::m#6 signed_multiply::@4/(word) signed_multiply::m#2 )
|
||||
@ -2041,9 +2041,9 @@ signed_multiply::@4: scope:[signed_multiply] from signed_multiply::@1
|
||||
(word) signed_multiply::m#5 ← phi( signed_multiply::@1/(word) signed_multiply::m#6 )
|
||||
(byte~) signed_multiply::$12 ← > (word) signed_multiply::m#5
|
||||
(byte~) signed_multiply::$13 ← ((byte)) (signed byte) signed_multiply::a#3
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$14 ← (byte~) signed_multiply::$12 - (byte~) signed_multiply::$13
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$17 ← (byte/signed byte/word/signed word~) signed_multiply::$14
|
||||
(word) signed_multiply::m#2 ← (word) signed_multiply::m#5 hi= (byte/signed byte/word/signed word~) signed_multiply::$17
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$14 ← (byte~) signed_multiply::$12 - (byte~) signed_multiply::$13
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 ← (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$14
|
||||
(word) signed_multiply::m#2 ← (word) signed_multiply::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17
|
||||
to:signed_multiply::@2
|
||||
signed_multiply::@return: scope:[signed_multiply] from signed_multiply::@2
|
||||
(signed word) signed_multiply::return#3 ← phi( signed_multiply::@2/(signed word) signed_multiply::return#0 )
|
||||
@ -3440,16 +3440,16 @@ SYMBOL TABLE SSA
|
||||
(boolean~) signed_multiply::$10
|
||||
(byte~) signed_multiply::$12
|
||||
(byte~) signed_multiply::$13
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$14
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$14
|
||||
(signed word~) signed_multiply::$15
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$16
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$17
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17
|
||||
(word~) signed_multiply::$2
|
||||
(boolean~) signed_multiply::$3
|
||||
(boolean~) signed_multiply::$4
|
||||
(byte~) signed_multiply::$6
|
||||
(byte~) signed_multiply::$7
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$8
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$8
|
||||
(boolean~) signed_multiply::$9
|
||||
(label) signed_multiply::@1
|
||||
(label) signed_multiply::@2
|
||||
@ -3871,11 +3871,11 @@ Alias (word) multiply::return#2 = (word) multiply::return#5
|
||||
Alias (signed byte) signed_multiply::a#1 = (signed byte) signed_multiply::a#2 (signed byte) signed_multiply::a#5
|
||||
Alias (signed byte) signed_multiply::b#1 = (signed byte) signed_multiply::b#4 (signed byte) signed_multiply::b#3
|
||||
Alias (word) signed_multiply::m#0 = (word~) signed_multiply::$2 (word) signed_multiply::m#3
|
||||
Alias (byte/signed byte/word/signed word~) signed_multiply::$16 = (byte/signed byte/word/signed word~) signed_multiply::$8
|
||||
Alias (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 = (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$8
|
||||
Alias (signed word) signed_multiply::return#0 = (signed word~) signed_multiply::$15 (signed word) signed_multiply::return#3 (signed word) signed_multiply::return#1
|
||||
Alias (word) signed_multiply::m#5 = (word) signed_multiply::m#6
|
||||
Alias (signed byte) signed_multiply::a#3 = (signed byte) signed_multiply::a#4
|
||||
Alias (byte/signed byte/word/signed word~) signed_multiply::$17 = (byte/signed byte/word/signed word~) signed_multiply::$14
|
||||
Alias (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 = (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$14
|
||||
Alias (byte*) char_cursor#125 = (byte*) char_cursor#146 (byte*) char_cursor#154 (byte*) char_cursor#138
|
||||
Alias (byte*) line_cursor#41 = (byte*) line_cursor#61 (byte*) line_cursor#72 (byte*) line_cursor#51
|
||||
Alias (byte*) BGCOL#1 = (byte*) BGCOL#22 (byte*) BGCOL#17 (byte*) BGCOL#14 (byte*) BGCOL#27 (byte*) BGCOL#28
|
||||
@ -5376,8 +5376,8 @@ signed_multiply::@6: scope:[signed_multiply] from signed_multiply
|
||||
to:signed_multiply::@3
|
||||
signed_multiply::@3: scope:[signed_multiply] from signed_multiply::@6
|
||||
[119] (byte~) signed_multiply::$6 ← > (word) signed_multiply::m#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] )
|
||||
[120] (byte/signed byte/word/signed word~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] )
|
||||
[121] (word) signed_multiply::m#1 ← (word) signed_multiply::m#0 hi= (byte/signed byte/word/signed word~) signed_multiply::$16 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] )
|
||||
[120] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] )
|
||||
[121] (word) signed_multiply::m#1 ← (word) signed_multiply::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] )
|
||||
to:signed_multiply::@1
|
||||
signed_multiply::@1: scope:[signed_multiply] from signed_multiply::@3 signed_multiply::@6
|
||||
[122] (word) signed_multiply::m#5 ← phi( signed_multiply::@3/(word) signed_multiply::m#1 signed_multiply::@6/(word) signed_multiply::m#0 ) [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#5 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#5 ] )
|
||||
@ -5385,8 +5385,8 @@ signed_multiply::@1: scope:[signed_multiply] from signed_multiply::@3 signed_mu
|
||||
to:signed_multiply::@4
|
||||
signed_multiply::@4: scope:[signed_multiply] from signed_multiply::@1
|
||||
[124] (byte~) signed_multiply::$12 ← > (word) signed_multiply::m#5 [ signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] )
|
||||
[125] (byte/signed byte/word/signed word~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] )
|
||||
[126] (word) signed_multiply::m#2 ← (word) signed_multiply::m#5 hi= (byte/signed byte/word/signed word~) signed_multiply::$17 [ signed_multiply::m#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#2 ] )
|
||||
[125] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] )
|
||||
[126] (word) signed_multiply::m#2 ← (word) signed_multiply::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 [ signed_multiply::m#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#2 ] )
|
||||
to:signed_multiply::@2
|
||||
signed_multiply::@2: scope:[signed_multiply] from signed_multiply::@1 signed_multiply::@4
|
||||
[127] (word) signed_multiply::m#4 ← phi( signed_multiply::@1/(word) signed_multiply::m#5 signed_multiply::@4/(word) signed_multiply::m#2 ) [ signed_multiply::m#4 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#4 ] )
|
||||
@ -6030,8 +6030,8 @@ VARIABLE REGISTER WEIGHTS
|
||||
(word~) print_word::w#9 4.0
|
||||
(signed word()) signed_multiply((signed byte) signed_multiply::a , (signed byte) signed_multiply::b)
|
||||
(byte~) signed_multiply::$12 4.0
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$16 4.0
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$17 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 4.0
|
||||
(byte~) signed_multiply::$6 4.0
|
||||
(signed byte) signed_multiply::a
|
||||
(signed byte) signed_multiply::a#0 7.357142857142858
|
||||
@ -6991,12 +6991,12 @@ signed_multiply: {
|
||||
//SEG245 [119] (byte~) signed_multiply::$6 ← > (word) signed_multiply::m#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] ) -- vbuz1=_hi_vwuz2
|
||||
lda m+1
|
||||
sta _6
|
||||
//SEG246 [120] (byte/signed byte/word/signed word~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ) -- vbuz1=vbuz2_minus_vbuz3
|
||||
//SEG246 [120] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ) -- vbuz1=vbuz2_minus_vbuz3
|
||||
lda _6
|
||||
sec
|
||||
sbc b
|
||||
sta _16
|
||||
//SEG247 [121] (word) signed_multiply::m#1 ← (word) signed_multiply::m#0 hi= (byte/signed byte/word/signed word~) signed_multiply::$16 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ) -- vwuz1=vwuz1_sethi_vbuz2
|
||||
//SEG247 [121] (word) signed_multiply::m#1 ← (word) signed_multiply::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ) -- vwuz1=vwuz1_sethi_vbuz2
|
||||
lda _16
|
||||
sta m+1
|
||||
//SEG248 [122] phi from signed_multiply::@3 signed_multiply::@6 to signed_multiply::@1 [phi:signed_multiply::@3/signed_multiply::@6->signed_multiply::@1]
|
||||
@ -7016,12 +7016,12 @@ signed_multiply: {
|
||||
//SEG253 [124] (byte~) signed_multiply::$12 ← > (word) signed_multiply::m#5 [ signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] ) -- vbuz1=_hi_vwuz2
|
||||
lda m+1
|
||||
sta _12
|
||||
//SEG254 [125] (byte/signed byte/word/signed word~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] ) -- vbuz1=vbuz2_minus_vbuz3
|
||||
//SEG254 [125] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] ) -- vbuz1=vbuz2_minus_vbuz3
|
||||
lda _12
|
||||
sec
|
||||
sbc a
|
||||
sta _17
|
||||
//SEG255 [126] (word) signed_multiply::m#2 ← (word) signed_multiply::m#5 hi= (byte/signed byte/word/signed word~) signed_multiply::$17 [ signed_multiply::m#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#2 ] ) -- vwuz1=vwuz1_sethi_vbuz2
|
||||
//SEG255 [126] (word) signed_multiply::m#2 ← (word) signed_multiply::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 [ signed_multiply::m#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#2 ] ) -- vwuz1=vwuz1_sethi_vbuz2
|
||||
lda _17
|
||||
sta m+1
|
||||
//SEG256 [127] phi from signed_multiply::@1 signed_multiply::@4 to signed_multiply::@2 [phi:signed_multiply::@1/signed_multiply::@4->signed_multiply::@2]
|
||||
@ -8100,9 +8100,9 @@ Removing always clobbered register reg byte a as potential for zp ZP_BYTE:56 [ s
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:57 [ signed_multiply::b#0 ]
|
||||
Statement [117] (word) signed_multiply::m#0 ← (word) multiply::return#2 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 ] ) always clobbers reg byte a
|
||||
Statement [119] (byte~) signed_multiply::$6 ← > (word) signed_multiply::m#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] ) always clobbers reg byte a
|
||||
Statement [120] (byte/signed byte/word/signed word~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ) always clobbers reg byte a
|
||||
Statement [120] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ) always clobbers reg byte a
|
||||
Statement [124] (byte~) signed_multiply::$12 ← > (word) signed_multiply::m#5 [ signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] ) always clobbers reg byte a
|
||||
Statement [125] (byte/signed byte/word/signed word~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] ) always clobbers reg byte a
|
||||
Statement [125] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] ) always clobbers reg byte a
|
||||
Statement asm { ldamemA stasm1+1 stasm3+1 eor#$ff stasm2+1 stasm4+1 ldxmemB sec sm1: ldamul_sqr1_lo,x sm2: sbcmul_sqr2_lo,x stamemA sm3: ldamul_sqr1_hi,x sm4: sbcmul_sqr2_hi,x stamemB } always clobbers reg byte a reg byte x
|
||||
Removing always clobbered register reg byte x as potential for zp ZP_BYTE:2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 ]
|
||||
Removing always clobbered register reg byte x as potential for zp ZP_BYTE:3 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::b#1 ]
|
||||
@ -8195,9 +8195,9 @@ Statement [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::
|
||||
Statement [116] (word) multiply::return#2 ← (word) multiply::return#0 [ signed_multiply::a#0 signed_multiply::b#0 multiply::return#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 multiply::return#2 ] ) always clobbers reg byte a
|
||||
Statement [117] (word) signed_multiply::m#0 ← (word) multiply::return#2 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 ] ) always clobbers reg byte a
|
||||
Statement [119] (byte~) signed_multiply::$6 ← > (word) signed_multiply::m#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] ) always clobbers reg byte a
|
||||
Statement [120] (byte/signed byte/word/signed word~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ) always clobbers reg byte a
|
||||
Statement [120] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ) always clobbers reg byte a
|
||||
Statement [124] (byte~) signed_multiply::$12 ← > (word) signed_multiply::m#5 [ signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] ) always clobbers reg byte a
|
||||
Statement [125] (byte/signed byte/word/signed word~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] ) always clobbers reg byte a
|
||||
Statement [125] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] ) always clobbers reg byte a
|
||||
Statement asm { ldamemA stasm1+1 stasm3+1 eor#$ff stasm2+1 stasm4+1 ldxmemB sec sm1: ldamul_sqr1_lo,x sm2: sbcmul_sqr2_lo,x stamemA sm3: ldamul_sqr1_hi,x sm4: sbcmul_sqr2_hi,x stamemB } always clobbers reg byte a reg byte x
|
||||
Statement [133] (word) multiply::return#0 ← *((const byte*) multiply::memB#0) w= *((const byte*) multiply::memA#0) [ multiply::return#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27::multiply:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 multiply::return#0 ] main:2::multiply_results_compare:13::multiply:157 [ line_cursor#27 char_cursor#27 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply::return#0 ] ) always clobbers reg byte a
|
||||
Statement [137] (signed word) slow_signed_multiply::m#1 ← (signed word) slow_signed_multiply::m#3 - (signed byte) slow_signed_multiply::b#0 [ slow_signed_multiply::a#0 slow_signed_multiply::b#0 slow_signed_multiply::i#2 slow_signed_multiply::m#1 ] ( main:2::signed_multiply_results_compare:15::slow_signed_multiply:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 slow_signed_multiply::a#0 slow_signed_multiply::b#0 slow_signed_multiply::i#2 slow_signed_multiply::m#1 ] ) always clobbers reg byte a
|
||||
@ -9054,10 +9054,10 @@ signed_multiply: {
|
||||
b3:
|
||||
//SEG245 [119] (byte~) signed_multiply::$6 ← > (word) signed_multiply::m#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] ) -- vbuaa=_hi_vwuz1
|
||||
lda m+1
|
||||
//SEG246 [120] (byte/signed byte/word/signed word~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ) -- vbuaa=vbuaa_minus_vbuz1
|
||||
//SEG246 [120] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ) -- vbuaa=vbuaa_minus_vbuz1
|
||||
sec
|
||||
sbc b
|
||||
//SEG247 [121] (word) signed_multiply::m#1 ← (word) signed_multiply::m#0 hi= (byte/signed byte/word/signed word~) signed_multiply::$16 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ) -- vwuz1=vwuz1_sethi_vbuaa
|
||||
//SEG247 [121] (word) signed_multiply::m#1 ← (word) signed_multiply::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ) -- vwuz1=vwuz1_sethi_vbuaa
|
||||
sta m+1
|
||||
//SEG248 [122] phi from signed_multiply::@3 signed_multiply::@6 to signed_multiply::@1 [phi:signed_multiply::@3/signed_multiply::@6->signed_multiply::@1]
|
||||
b1_from_b3:
|
||||
@ -9075,11 +9075,11 @@ signed_multiply: {
|
||||
b4:
|
||||
//SEG253 [124] (byte~) signed_multiply::$12 ← > (word) signed_multiply::m#5 [ signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] ) -- vbuaa=_hi_vwuz1
|
||||
lda m+1
|
||||
//SEG254 [125] (byte/signed byte/word/signed word~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] ) -- vbuaa=vbuaa_minus_vbuyy
|
||||
//SEG254 [125] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] ) -- vbuaa=vbuaa_minus_vbuyy
|
||||
sty $ff
|
||||
sec
|
||||
sbc $ff
|
||||
//SEG255 [126] (word) signed_multiply::m#2 ← (word) signed_multiply::m#5 hi= (byte/signed byte/word/signed word~) signed_multiply::$17 [ signed_multiply::m#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#2 ] ) -- vwuz1=vwuz1_sethi_vbuaa
|
||||
//SEG255 [126] (word) signed_multiply::m#2 ← (word) signed_multiply::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 [ signed_multiply::m#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#2 ] ) -- vwuz1=vwuz1_sethi_vbuaa
|
||||
sta m+1
|
||||
//SEG256 [127] phi from signed_multiply::@1 signed_multiply::@4 to signed_multiply::@2 [phi:signed_multiply::@1/signed_multiply::@4->signed_multiply::@2]
|
||||
b2_from_b1:
|
||||
@ -10654,8 +10654,8 @@ FINAL SYMBOL TABLE
|
||||
(word~) print_word::w#9 w zp ZP_WORD:6 4.0
|
||||
(signed word()) signed_multiply((signed byte) signed_multiply::a , (signed byte) signed_multiply::b)
|
||||
(byte~) signed_multiply::$12 reg byte a 4.0
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$16 reg byte a 4.0
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$17 reg byte a 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 reg byte a 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 reg byte a 4.0
|
||||
(byte~) signed_multiply::$6 reg byte a 4.0
|
||||
(label) signed_multiply::@1
|
||||
(label) signed_multiply::@2
|
||||
@ -11303,10 +11303,10 @@ signed_multiply: {
|
||||
//SEG244 signed_multiply::@3
|
||||
//SEG245 [119] (byte~) signed_multiply::$6 ← > (word) signed_multiply::m#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$6 ] ) -- vbuaa=_hi_vwuz1
|
||||
lda m+1
|
||||
//SEG246 [120] (byte/signed byte/word/signed word~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ) -- vbuaa=vbuaa_minus_vbuz1
|
||||
//SEG246 [120] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 ← (byte~) signed_multiply::$6 - (byte)(signed byte) signed_multiply::b#0 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#0 signed_multiply::$16 ] ) -- vbuaa=vbuaa_minus_vbuz1
|
||||
sec
|
||||
sbc b
|
||||
//SEG247 [121] (word) signed_multiply::m#1 ← (word) signed_multiply::m#0 hi= (byte/signed byte/word/signed word~) signed_multiply::$16 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ) -- vwuz1=vwuz1_sethi_vbuaa
|
||||
//SEG247 [121] (word) signed_multiply::m#1 ← (word) signed_multiply::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 [ signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::b#0 signed_multiply::m#1 ] ) -- vwuz1=vwuz1_sethi_vbuaa
|
||||
sta m+1
|
||||
//SEG248 [122] phi from signed_multiply::@3 signed_multiply::@6 to signed_multiply::@1 [phi:signed_multiply::@3/signed_multiply::@6->signed_multiply::@1]
|
||||
//SEG249 [122] phi (word) signed_multiply::m#5 = (word) signed_multiply::m#1 [phi:signed_multiply::@3/signed_multiply::@6->signed_multiply::@1#0] -- register_copy
|
||||
@ -11319,11 +11319,11 @@ signed_multiply: {
|
||||
//SEG252 signed_multiply::@4
|
||||
//SEG253 [124] (byte~) signed_multiply::$12 ← > (word) signed_multiply::m#5 [ signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::a#0 signed_multiply::m#5 signed_multiply::$12 ] ) -- vbuaa=_hi_vwuz1
|
||||
lda m+1
|
||||
//SEG254 [125] (byte/signed byte/word/signed word~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] ) -- vbuaa=vbuaa_minus_vbuyy
|
||||
//SEG254 [125] (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 ← (byte~) signed_multiply::$12 - (byte)(signed byte) signed_multiply::a#0 [ signed_multiply::m#5 signed_multiply::$17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#5 signed_multiply::$17 ] ) -- vbuaa=vbuaa_minus_vbuyy
|
||||
sty $ff
|
||||
sec
|
||||
sbc $ff
|
||||
//SEG255 [126] (word) signed_multiply::m#2 ← (word) signed_multiply::m#5 hi= (byte/signed byte/word/signed word~) signed_multiply::$17 [ signed_multiply::m#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#2 ] ) -- vwuz1=vwuz1_sethi_vbuaa
|
||||
//SEG255 [126] (word) signed_multiply::m#2 ← (word) signed_multiply::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 [ signed_multiply::m#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 signed_multiply::m#2 ] ) -- vwuz1=vwuz1_sethi_vbuaa
|
||||
sta m+1
|
||||
//SEG256 [127] phi from signed_multiply::@1 signed_multiply::@4 to signed_multiply::@2 [phi:signed_multiply::@1/signed_multiply::@4->signed_multiply::@2]
|
||||
//SEG257 [127] phi (word) signed_multiply::m#4 = (word) signed_multiply::m#5 [phi:signed_multiply::@1/signed_multiply::@4->signed_multiply::@2#0] -- register_copy
|
||||
|
@ -244,8 +244,8 @@
|
||||
(word~) print_word::w#9 w zp ZP_WORD:6 4.0
|
||||
(signed word()) signed_multiply((signed byte) signed_multiply::a , (signed byte) signed_multiply::b)
|
||||
(byte~) signed_multiply::$12 reg byte a 4.0
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$16 reg byte a 4.0
|
||||
(byte/signed byte/word/signed word~) signed_multiply::$17 reg byte a 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$16 reg byte a 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) signed_multiply::$17 reg byte a 4.0
|
||||
(byte~) signed_multiply::$6 reg byte a 4.0
|
||||
(label) signed_multiply::@1
|
||||
(label) signed_multiply::@2
|
||||
|
@ -42,8 +42,8 @@ animate::@8: scope:[animate] from animate::@1
|
||||
[19] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] )
|
||||
to:animate::@2
|
||||
animate::@2: scope:[animate] from animate::@1 animate::@8
|
||||
[20] (byte/signed byte/word/signed word~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$6 ] ( main:2::animate:9 [ animate::$6 ] )
|
||||
[21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word~) animate::$6 [ ] ( main:2::animate:9 [ ] )
|
||||
[20] (byte/signed byte/word/signed word/dword/signed dword~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$6 ] ( main:2::animate:9 [ animate::$6 ] )
|
||||
[21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$6 [ ] ( main:2::animate:9 [ ] )
|
||||
[22] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1)!=(byte/word/signed word/dword/signed dword) 255) goto animate::@3 [ ] ( main:2::animate:9 [ ] )
|
||||
to:animate::@9
|
||||
animate::@9: scope:[animate] from animate::@2
|
||||
@ -58,8 +58,8 @@ animate::@10: scope:[animate] from animate::@3
|
||||
[27] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] )
|
||||
to:animate::@4
|
||||
animate::@4: scope:[animate] from animate::@10 animate::@3
|
||||
[28] (byte/signed byte/word/signed word~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$12 ] ( main:2::animate:9 [ animate::$12 ] )
|
||||
[29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$12 [ ] ( main:2::animate:9 [ ] )
|
||||
[28] (byte/signed byte/word/signed word/dword/signed dword~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$12 ] ( main:2::animate:9 [ animate::$12 ] )
|
||||
[29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$12 [ ] ( main:2::animate:9 [ ] )
|
||||
[30] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)!=(byte/word/signed word/dword/signed dword) 255) goto animate::@return [ ] ( main:2::animate:9 [ ] )
|
||||
to:animate::@11
|
||||
animate::@11: scope:[animate] from animate::@4
|
||||
@ -69,8 +69,8 @@ animate::@11: scope:[animate] from animate::@4
|
||||
[34] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)<(byte/signed byte/word/signed word/dword/signed dword) 40) goto animate::@return [ ] ( main:2::animate:9 [ ] )
|
||||
to:animate::@12
|
||||
animate::@12: scope:[animate] from animate::@11
|
||||
[35] (byte/signed byte/word/signed word~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] )
|
||||
[36] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$18 [ ] ( main:2::animate:9 [ ] )
|
||||
[35] (byte/signed byte/word/signed word/dword/signed dword~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] )
|
||||
[36] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$18 [ ] ( main:2::animate:9 [ ] )
|
||||
to:animate::@return
|
||||
animate::@return: scope:[animate] from animate::@11 animate::@12 animate::@4
|
||||
[37] return [ ] ( main:2::animate:9 [ ] )
|
||||
@ -132,8 +132,8 @@ findcol::@5: scope:[findcol] from findcol::@12 findcol::@4
|
||||
[64] if((byte) findcol::y#0>=(byte) findcol::yp#0) goto findcol::@6 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#4 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#4 ] )
|
||||
to:findcol::@14
|
||||
findcol::@14: scope:[findcol] from findcol::@5
|
||||
[65] (byte/signed byte/word/signed word~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] )
|
||||
[66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] )
|
||||
[65] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] )
|
||||
[66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] )
|
||||
to:findcol::@7
|
||||
findcol::@7: scope:[findcol] from findcol::@14 findcol::@6
|
||||
[67] (byte) findcol::diff#6 ← phi( findcol::@14/(byte) findcol::diff#3 findcol::@6/(byte) findcol::diff#2 ) [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#6 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#6 ] )
|
||||
@ -155,8 +155,8 @@ findcol::@21: scope:[findcol] from findcol::@7
|
||||
[74] (byte~) findcol::mindiff#15 ← (byte) findcol::mindiff#10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mincol#10 findcol::mindiff#15 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mincol#10 findcol::mindiff#15 ] )
|
||||
to:findcol::@8
|
||||
findcol::@6: scope:[findcol] from findcol::@5
|
||||
[75] (byte/signed byte/word/signed word~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] )
|
||||
[76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] )
|
||||
[75] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] )
|
||||
[76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] )
|
||||
to:findcol::@7
|
||||
findcol::@4: scope:[findcol] from findcol::@2
|
||||
[77] (byte) findcol::diff#0 ← (byte) findcol::x#0 - (byte) findcol::xp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#0 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#0 ] )
|
||||
|
@ -132,8 +132,8 @@ animate::@1:
|
||||
if((boolean~) animate::$5) goto animate::@2
|
||||
*((byte[]) YPOS + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
animate::@2:
|
||||
(byte/signed byte/word/signed word~) animate::$6 ← *((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
*((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word~) animate::$6
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$6 ← *((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
*((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$6
|
||||
(boolean~) animate::$7 ← *((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 1) == (byte/word/signed word/dword/signed dword) 255
|
||||
(boolean~) animate::$8 ← ! (boolean~) animate::$7
|
||||
if((boolean~) animate::$8) goto animate::@3
|
||||
@ -146,8 +146,8 @@ animate::@3:
|
||||
if((boolean~) animate::$11) goto animate::@4
|
||||
*((byte[]) YPOS + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
animate::@4:
|
||||
(byte/signed byte/word/signed word~) animate::$12 ← *((byte[]) YPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
*((byte[]) YPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$12 ← *((byte[]) YPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
*((byte[]) YPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$12
|
||||
(boolean~) animate::$13 ← *((byte[]) YPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) == (byte/word/signed word/dword/signed dword) 255
|
||||
(boolean~) animate::$14 ← ! (boolean~) animate::$13
|
||||
if((boolean~) animate::$14) goto animate::@5
|
||||
@ -157,8 +157,8 @@ animate::@4:
|
||||
(boolean~) animate::$16 ← *((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) >= (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
(boolean~) animate::$17 ← ! (boolean~) animate::$16
|
||||
if((boolean~) animate::$17) goto animate::@6
|
||||
(byte/signed byte/word/signed word~) animate::$18 ← *((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
*((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$18
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$18 ← *((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
*((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$18
|
||||
animate::@6:
|
||||
animate::@5:
|
||||
animate::@return:
|
||||
@ -215,23 +215,23 @@ findcol::@2:
|
||||
(boolean~) findcol::$4 ← (byte) findcol::x < (byte) findcol::xp
|
||||
(boolean~) findcol::$5 ← ! (boolean~) findcol::$4
|
||||
if((boolean~) findcol::$5) goto findcol::@4
|
||||
(byte/signed byte/word/signed word~) findcol::$6 ← (byte) findcol::xp - (byte) findcol::x
|
||||
(byte) findcol::diff ← (byte/signed byte/word/signed word~) findcol::$6
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$6 ← (byte) findcol::xp - (byte) findcol::x
|
||||
(byte) findcol::diff ← (byte/signed byte/word/signed word/dword/signed dword~) findcol::$6
|
||||
goto findcol::@5
|
||||
findcol::@4:
|
||||
(byte/signed byte/word/signed word~) findcol::$7 ← (byte) findcol::x - (byte) findcol::xp
|
||||
(byte) findcol::diff ← (byte/signed byte/word/signed word~) findcol::$7
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$7 ← (byte) findcol::x - (byte) findcol::xp
|
||||
(byte) findcol::diff ← (byte/signed byte/word/signed word/dword/signed dword~) findcol::$7
|
||||
findcol::@5:
|
||||
(boolean~) findcol::$8 ← (byte) findcol::y < (byte) findcol::yp
|
||||
(boolean~) findcol::$9 ← ! (boolean~) findcol::$8
|
||||
if((boolean~) findcol::$9) goto findcol::@6
|
||||
(byte/signed byte/word/signed word~) findcol::$10 ← (byte) findcol::yp - (byte) findcol::y
|
||||
(byte/word~) findcol::$11 ← (byte) findcol::diff + (byte/signed byte/word/signed word~) findcol::$10
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 ← (byte) findcol::yp - (byte) findcol::y
|
||||
(byte/word~) findcol::$11 ← (byte) findcol::diff + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10
|
||||
(byte) findcol::diff ← (byte/word~) findcol::$11
|
||||
goto findcol::@7
|
||||
findcol::@6:
|
||||
(byte/signed byte/word/signed word~) findcol::$12 ← (byte) findcol::y - (byte) findcol::yp
|
||||
(byte/word~) findcol::$13 ← (byte) findcol::diff + (byte/signed byte/word/signed word~) findcol::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 ← (byte) findcol::y - (byte) findcol::yp
|
||||
(byte/word~) findcol::$13 ← (byte) findcol::diff + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12
|
||||
(byte) findcol::diff ← (byte/word~) findcol::$13
|
||||
findcol::@7:
|
||||
(boolean~) findcol::$14 ← (byte) findcol::diff < (byte) findcol::mindiff
|
||||
@ -263,18 +263,18 @@ SYMBOLS
|
||||
(boolean~) animate::$1
|
||||
(boolean~) animate::$10
|
||||
(boolean~) animate::$11
|
||||
(byte/signed byte/word/signed word~) animate::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$12
|
||||
(boolean~) animate::$13
|
||||
(boolean~) animate::$14
|
||||
(byte/word~) animate::$15
|
||||
(boolean~) animate::$16
|
||||
(boolean~) animate::$17
|
||||
(byte/signed byte/word/signed word~) animate::$18
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$18
|
||||
(boolean~) animate::$2
|
||||
(byte/word~) animate::$3
|
||||
(boolean~) animate::$4
|
||||
(boolean~) animate::$5
|
||||
(byte/signed byte/word/signed word~) animate::$6
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$6
|
||||
(boolean~) animate::$7
|
||||
(boolean~) animate::$8
|
||||
(byte/word~) animate::$9
|
||||
@ -288,9 +288,9 @@ SYMBOLS
|
||||
(byte()) findcol((byte) findcol::x , (byte) findcol::y)
|
||||
(boolean~) findcol::$0
|
||||
(boolean~) findcol::$1
|
||||
(byte/signed byte/word/signed word~) findcol::$10
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$10
|
||||
(byte/word~) findcol::$11
|
||||
(byte/signed byte/word/signed word~) findcol::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$12
|
||||
(byte/word~) findcol::$13
|
||||
(boolean~) findcol::$14
|
||||
(boolean~) findcol::$15
|
||||
@ -299,8 +299,8 @@ SYMBOLS
|
||||
(boolean~) findcol::$3
|
||||
(boolean~) findcol::$4
|
||||
(boolean~) findcol::$5
|
||||
(byte/signed byte/word/signed word~) findcol::$6
|
||||
(byte/signed byte/word/signed word~) findcol::$7
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$6
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$7
|
||||
(boolean~) findcol::$8
|
||||
(boolean~) findcol::$9
|
||||
(label) findcol::@1
|
||||
@ -392,8 +392,8 @@ animate::@7: scope:[animate] from animate
|
||||
*((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:animate::@1
|
||||
animate::@2: scope:[animate] from animate::@1 animate::@8
|
||||
(byte/signed byte/word/signed word~) animate::$6 ← *((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
*((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word~) animate::$6
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$6 ← *((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
*((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$6
|
||||
(boolean~) animate::$7 ← *((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 1) == (byte/word/signed word/dword/signed dword) 255
|
||||
(boolean~) animate::$8 ← ! (boolean~) animate::$7
|
||||
if((boolean~) animate::$8) goto animate::@3
|
||||
@ -412,8 +412,8 @@ animate::@9: scope:[animate] from animate::@2
|
||||
*((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
to:animate::@3
|
||||
animate::@4: scope:[animate] from animate::@10 animate::@3
|
||||
(byte/signed byte/word/signed word~) animate::$12 ← *((byte[]) YPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
*((byte[]) YPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$12 ← *((byte[]) YPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
*((byte[]) YPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$12
|
||||
(boolean~) animate::$13 ← *((byte[]) YPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) == (byte/word/signed word/dword/signed dword) 255
|
||||
(boolean~) animate::$14 ← ! (boolean~) animate::$13
|
||||
if((boolean~) animate::$14) goto animate::@5
|
||||
@ -434,8 +434,8 @@ animate::@11: scope:[animate] from animate::@4
|
||||
animate::@6: scope:[animate] from animate::@11 animate::@12
|
||||
to:animate::@5
|
||||
animate::@12: scope:[animate] from animate::@11
|
||||
(byte/signed byte/word/signed word~) animate::$18 ← *((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
*((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$18
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$18 ← *((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
*((byte[]) XPOS + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$18
|
||||
to:animate::@6
|
||||
animate::@return: scope:[animate] from animate::@5
|
||||
return
|
||||
@ -522,12 +522,12 @@ findcol::@return: scope:[findcol] from findcol::@10 findcol::@17 findcol::@18
|
||||
findcol::@11: scope:[findcol] from
|
||||
to:findcol::@3
|
||||
findcol::@4: scope:[findcol] from findcol::@13 findcol::@2
|
||||
(byte/signed byte/word/signed word~) findcol::$7 ← (byte) findcol::x - (byte) findcol::xp
|
||||
(byte) findcol::diff ← (byte/signed byte/word/signed word~) findcol::$7
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$7 ← (byte) findcol::x - (byte) findcol::xp
|
||||
(byte) findcol::diff ← (byte/signed byte/word/signed word/dword/signed dword~) findcol::$7
|
||||
to:findcol::@5
|
||||
findcol::@12: scope:[findcol] from findcol::@2
|
||||
(byte/signed byte/word/signed word~) findcol::$6 ← (byte) findcol::xp - (byte) findcol::x
|
||||
(byte) findcol::diff ← (byte/signed byte/word/signed word~) findcol::$6
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$6 ← (byte) findcol::xp - (byte) findcol::x
|
||||
(byte) findcol::diff ← (byte/signed byte/word/signed word/dword/signed dword~) findcol::$6
|
||||
to:findcol::@5
|
||||
findcol::@5: scope:[findcol] from findcol::@12 findcol::@4
|
||||
(boolean~) findcol::$8 ← (byte) findcol::y < (byte) findcol::yp
|
||||
@ -537,13 +537,13 @@ findcol::@5: scope:[findcol] from findcol::@12 findcol::@4
|
||||
findcol::@13: scope:[findcol] from
|
||||
to:findcol::@4
|
||||
findcol::@6: scope:[findcol] from findcol::@15 findcol::@5
|
||||
(byte/signed byte/word/signed word~) findcol::$12 ← (byte) findcol::y - (byte) findcol::yp
|
||||
(byte/word~) findcol::$13 ← (byte) findcol::diff + (byte/signed byte/word/signed word~) findcol::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 ← (byte) findcol::y - (byte) findcol::yp
|
||||
(byte/word~) findcol::$13 ← (byte) findcol::diff + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12
|
||||
(byte) findcol::diff ← (byte/word~) findcol::$13
|
||||
to:findcol::@7
|
||||
findcol::@14: scope:[findcol] from findcol::@5
|
||||
(byte/signed byte/word/signed word~) findcol::$10 ← (byte) findcol::yp - (byte) findcol::y
|
||||
(byte/word~) findcol::$11 ← (byte) findcol::diff + (byte/signed byte/word/signed word~) findcol::$10
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 ← (byte) findcol::yp - (byte) findcol::y
|
||||
(byte/word~) findcol::$11 ← (byte) findcol::diff + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10
|
||||
(byte) findcol::diff ← (byte/word~) findcol::$11
|
||||
to:findcol::@7
|
||||
findcol::@7: scope:[findcol] from findcol::@14 findcol::@6
|
||||
@ -661,8 +661,8 @@ animate::@7: scope:[animate] from animate
|
||||
*((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte/signed byte/word/signed word/dword/signed dword) 0
|
||||
to:animate::@1
|
||||
animate::@2: scope:[animate] from animate::@1 animate::@8
|
||||
(byte/signed byte/word/signed word~) animate::$6 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
*((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word~) animate::$6
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$6 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
*((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$6
|
||||
(boolean~) animate::$7 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) == (byte/word/signed word/dword/signed dword) 255
|
||||
(boolean~) animate::$8 ← ! (boolean~) animate::$7
|
||||
if((boolean~) animate::$8) goto animate::@3
|
||||
@ -681,8 +681,8 @@ animate::@9: scope:[animate] from animate::@2
|
||||
*((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
to:animate::@3
|
||||
animate::@4: scope:[animate] from animate::@10 animate::@3
|
||||
(byte/signed byte/word/signed word~) animate::$12 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
*((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$12 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1
|
||||
*((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$12
|
||||
(boolean~) animate::$13 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) == (byte/word/signed word/dword/signed dword) 255
|
||||
(boolean~) animate::$14 ← ! (boolean~) animate::$13
|
||||
if((boolean~) animate::$14) goto animate::@5
|
||||
@ -703,8 +703,8 @@ animate::@11: scope:[animate] from animate::@4
|
||||
animate::@6: scope:[animate] from animate::@11
|
||||
to:animate::@return
|
||||
animate::@12: scope:[animate] from animate::@11
|
||||
(byte/signed byte/word/signed word~) animate::$18 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
*((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$18
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$18 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40
|
||||
*((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$18
|
||||
to:animate::@return
|
||||
animate::@return: scope:[animate] from animate::@12 animate::@5 animate::@6
|
||||
return
|
||||
@ -849,8 +849,8 @@ findcol::@4: scope:[findcol] from findcol::@2
|
||||
(byte) findcol::y#7 ← phi( findcol::@2/(byte) findcol::y#10 )
|
||||
(byte) findcol::xp#2 ← phi( findcol::@2/(byte) findcol::xp#1 )
|
||||
(byte) findcol::x#3 ← phi( findcol::@2/(byte) findcol::x#2 )
|
||||
(byte/signed byte/word/signed word~) findcol::$7 ← (byte) findcol::x#3 - (byte) findcol::xp#2
|
||||
(byte) findcol::diff#0 ← (byte/signed byte/word/signed word~) findcol::$7
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$7 ← (byte) findcol::x#3 - (byte) findcol::xp#2
|
||||
(byte) findcol::diff#0 ← (byte/signed byte/word/signed word/dword/signed dword~) findcol::$7
|
||||
to:findcol::@5
|
||||
findcol::@12: scope:[findcol] from findcol::@2
|
||||
(byte) findcol::mincol#8 ← phi( findcol::@2/(byte) findcol::mincol#10 )
|
||||
@ -861,8 +861,8 @@ findcol::@12: scope:[findcol] from findcol::@2
|
||||
(byte) findcol::y#6 ← phi( findcol::@2/(byte) findcol::y#10 )
|
||||
(byte) findcol::x#4 ← phi( findcol::@2/(byte) findcol::x#2 )
|
||||
(byte) findcol::xp#3 ← phi( findcol::@2/(byte) findcol::xp#1 )
|
||||
(byte/signed byte/word/signed word~) findcol::$6 ← (byte) findcol::xp#3 - (byte) findcol::x#4
|
||||
(byte) findcol::diff#1 ← (byte/signed byte/word/signed word~) findcol::$6
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$6 ← (byte) findcol::xp#3 - (byte) findcol::x#4
|
||||
(byte) findcol::diff#1 ← (byte/signed byte/word/signed word/dword/signed dword~) findcol::$6
|
||||
to:findcol::@5
|
||||
findcol::@5: scope:[findcol] from findcol::@12 findcol::@4
|
||||
(byte) findcol::mincol#7 ← phi( findcol::@12/(byte) findcol::mincol#8 findcol::@4/(byte) findcol::mincol#9 )
|
||||
@ -886,8 +886,8 @@ findcol::@6: scope:[findcol] from findcol::@5
|
||||
(byte) findcol::diff#4 ← phi( findcol::@5/(byte) findcol::diff#8 )
|
||||
(byte) findcol::yp#3 ← phi( findcol::@5/(byte) findcol::yp#2 )
|
||||
(byte) findcol::y#3 ← phi( findcol::@5/(byte) findcol::y#2 )
|
||||
(byte/signed byte/word/signed word~) findcol::$12 ← (byte) findcol::y#3 - (byte) findcol::yp#3
|
||||
(byte/word~) findcol::$13 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 ← (byte) findcol::y#3 - (byte) findcol::yp#3
|
||||
(byte/word~) findcol::$13 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12
|
||||
(byte) findcol::diff#2 ← (byte/word~) findcol::$13
|
||||
to:findcol::@7
|
||||
findcol::@14: scope:[findcol] from findcol::@5
|
||||
@ -899,8 +899,8 @@ findcol::@14: scope:[findcol] from findcol::@5
|
||||
(byte) findcol::diff#5 ← phi( findcol::@5/(byte) findcol::diff#8 )
|
||||
(byte) findcol::y#4 ← phi( findcol::@5/(byte) findcol::y#2 )
|
||||
(byte) findcol::yp#4 ← phi( findcol::@5/(byte) findcol::yp#2 )
|
||||
(byte/signed byte/word/signed word~) findcol::$10 ← (byte) findcol::yp#4 - (byte) findcol::y#4
|
||||
(byte/word~) findcol::$11 ← (byte) findcol::diff#5 + (byte/signed byte/word/signed word~) findcol::$10
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 ← (byte) findcol::yp#4 - (byte) findcol::y#4
|
||||
(byte/word~) findcol::$11 ← (byte) findcol::diff#5 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10
|
||||
(byte) findcol::diff#3 ← (byte/word~) findcol::$11
|
||||
to:findcol::@7
|
||||
findcol::@7: scope:[findcol] from findcol::@14 findcol::@6
|
||||
@ -987,18 +987,18 @@ SYMBOL TABLE SSA
|
||||
(boolean~) animate::$1
|
||||
(boolean~) animate::$10
|
||||
(boolean~) animate::$11
|
||||
(byte/signed byte/word/signed word~) animate::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$12
|
||||
(boolean~) animate::$13
|
||||
(boolean~) animate::$14
|
||||
(byte/word~) animate::$15
|
||||
(boolean~) animate::$16
|
||||
(boolean~) animate::$17
|
||||
(byte/signed byte/word/signed word~) animate::$18
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$18
|
||||
(boolean~) animate::$2
|
||||
(byte/word~) animate::$3
|
||||
(boolean~) animate::$4
|
||||
(boolean~) animate::$5
|
||||
(byte/signed byte/word/signed word~) animate::$6
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$6
|
||||
(boolean~) animate::$7
|
||||
(boolean~) animate::$8
|
||||
(byte/word~) animate::$9
|
||||
@ -1018,9 +1018,9 @@ SYMBOL TABLE SSA
|
||||
(byte()) findcol((byte) findcol::x , (byte) findcol::y)
|
||||
(boolean~) findcol::$0
|
||||
(boolean~) findcol::$1
|
||||
(byte/signed byte/word/signed word~) findcol::$10
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$10
|
||||
(byte/word~) findcol::$11
|
||||
(byte/signed byte/word/signed word~) findcol::$12
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$12
|
||||
(byte/word~) findcol::$13
|
||||
(boolean~) findcol::$14
|
||||
(boolean~) findcol::$15
|
||||
@ -1029,8 +1029,8 @@ SYMBOL TABLE SSA
|
||||
(boolean~) findcol::$3
|
||||
(boolean~) findcol::$4
|
||||
(boolean~) findcol::$5
|
||||
(byte/signed byte/word/signed word~) findcol::$6
|
||||
(byte/signed byte/word/signed word~) findcol::$7
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$6
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$7
|
||||
(boolean~) findcol::$8
|
||||
(boolean~) findcol::$9
|
||||
(label) findcol::@1
|
||||
@ -1291,8 +1291,8 @@ Alias (byte) findcol::mindiff#6 = (byte) findcol::mindiff#7 (byte) findcol::mind
|
||||
Alias (byte) findcol::i#10 = (byte) findcol::i#11 (byte) findcol::i#9
|
||||
Alias (byte) numpoints#7 = (byte) numpoints#8 (byte) numpoints#9
|
||||
Alias (byte) findcol::mincol#10 = (byte) findcol::mincol#9 (byte) findcol::mincol#8
|
||||
Alias (byte) findcol::diff#0 = (byte/signed byte/word/signed word~) findcol::$7
|
||||
Alias (byte) findcol::diff#1 = (byte/signed byte/word/signed word~) findcol::$6
|
||||
Alias (byte) findcol::diff#0 = (byte/signed byte/word/signed word/dword/signed dword~) findcol::$7
|
||||
Alias (byte) findcol::diff#1 = (byte/signed byte/word/signed word/dword/signed dword~) findcol::$6
|
||||
Alias (byte) findcol::y#2 = (byte) findcol::y#3 (byte) findcol::y#4
|
||||
Alias (byte) findcol::yp#2 = (byte) findcol::yp#3 (byte) findcol::yp#4
|
||||
Alias (byte) findcol::diff#4 = (byte) findcol::diff#8 (byte) findcol::diff#5
|
||||
@ -1626,8 +1626,8 @@ animate::@8: scope:[animate] from animate::@1
|
||||
[19] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] )
|
||||
to:animate::@2
|
||||
animate::@2: scope:[animate] from animate::@1 animate::@8
|
||||
[20] (byte/signed byte/word/signed word~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$6 ] ( main:2::animate:9 [ animate::$6 ] )
|
||||
[21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word~) animate::$6 [ ] ( main:2::animate:9 [ ] )
|
||||
[20] (byte/signed byte/word/signed word/dword/signed dword~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$6 ] ( main:2::animate:9 [ animate::$6 ] )
|
||||
[21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$6 [ ] ( main:2::animate:9 [ ] )
|
||||
[22] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1)!=(byte/word/signed word/dword/signed dword) 255) goto animate::@3 [ ] ( main:2::animate:9 [ ] )
|
||||
to:animate::@9
|
||||
animate::@9: scope:[animate] from animate::@2
|
||||
@ -1642,8 +1642,8 @@ animate::@10: scope:[animate] from animate::@3
|
||||
[27] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] )
|
||||
to:animate::@4
|
||||
animate::@4: scope:[animate] from animate::@10 animate::@3
|
||||
[28] (byte/signed byte/word/signed word~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$12 ] ( main:2::animate:9 [ animate::$12 ] )
|
||||
[29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$12 [ ] ( main:2::animate:9 [ ] )
|
||||
[28] (byte/signed byte/word/signed word/dword/signed dword~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$12 ] ( main:2::animate:9 [ animate::$12 ] )
|
||||
[29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$12 [ ] ( main:2::animate:9 [ ] )
|
||||
[30] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)!=(byte/word/signed word/dword/signed dword) 255) goto animate::@return [ ] ( main:2::animate:9 [ ] )
|
||||
to:animate::@11
|
||||
animate::@11: scope:[animate] from animate::@4
|
||||
@ -1653,8 +1653,8 @@ animate::@11: scope:[animate] from animate::@4
|
||||
[34] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)<(byte/signed byte/word/signed word/dword/signed dword) 40) goto animate::@return [ ] ( main:2::animate:9 [ ] )
|
||||
to:animate::@12
|
||||
animate::@12: scope:[animate] from animate::@11
|
||||
[35] (byte/signed byte/word/signed word~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] )
|
||||
[36] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$18 [ ] ( main:2::animate:9 [ ] )
|
||||
[35] (byte/signed byte/word/signed word/dword/signed dword~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] )
|
||||
[36] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$18 [ ] ( main:2::animate:9 [ ] )
|
||||
to:animate::@return
|
||||
animate::@return: scope:[animate] from animate::@11 animate::@12 animate::@4
|
||||
[37] return [ ] ( main:2::animate:9 [ ] )
|
||||
@ -1716,8 +1716,8 @@ findcol::@5: scope:[findcol] from findcol::@12 findcol::@4
|
||||
[64] if((byte) findcol::y#0>=(byte) findcol::yp#0) goto findcol::@6 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#4 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#4 ] )
|
||||
to:findcol::@14
|
||||
findcol::@14: scope:[findcol] from findcol::@5
|
||||
[65] (byte/signed byte/word/signed word~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] )
|
||||
[66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] )
|
||||
[65] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] )
|
||||
[66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] )
|
||||
to:findcol::@7
|
||||
findcol::@7: scope:[findcol] from findcol::@14 findcol::@6
|
||||
[67] (byte) findcol::diff#6 ← phi( findcol::@14/(byte) findcol::diff#3 findcol::@6/(byte) findcol::diff#2 ) [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#6 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#6 ] )
|
||||
@ -1739,8 +1739,8 @@ findcol::@21: scope:[findcol] from findcol::@7
|
||||
[74] (byte~) findcol::mindiff#15 ← (byte) findcol::mindiff#10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mincol#10 findcol::mindiff#15 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mincol#10 findcol::mindiff#15 ] )
|
||||
to:findcol::@8
|
||||
findcol::@6: scope:[findcol] from findcol::@5
|
||||
[75] (byte/signed byte/word/signed word~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] )
|
||||
[76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] )
|
||||
[75] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] )
|
||||
[76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] )
|
||||
to:findcol::@7
|
||||
findcol::@4: scope:[findcol] from findcol::@2
|
||||
[77] (byte) findcol::diff#0 ← (byte) findcol::x#0 - (byte) findcol::xp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#0 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#0 ] )
|
||||
@ -1849,15 +1849,15 @@ VARIABLE REGISTER WEIGHTS
|
||||
(byte[]) YPOS
|
||||
(void()) animate()
|
||||
(byte/word~) animate::$0 4.0
|
||||
(byte/signed byte/word/signed word~) animate::$12 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$12 4.0
|
||||
(byte/word~) animate::$15 4.0
|
||||
(byte/signed byte/word/signed word~) animate::$18 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$18 4.0
|
||||
(byte/word~) animate::$3 4.0
|
||||
(byte/signed byte/word/signed word~) animate::$6 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$6 4.0
|
||||
(byte/word~) animate::$9 4.0
|
||||
(byte()) findcol((byte) findcol::x , (byte) findcol::y)
|
||||
(byte/signed byte/word/signed word~) findcol::$10 20002.0
|
||||
(byte/signed byte/word/signed word~) findcol::$12 20002.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 20002.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 20002.0
|
||||
(byte) findcol::diff
|
||||
(byte) findcol::diff#0 20002.0
|
||||
(byte) findcol::diff#1 20002.0
|
||||
@ -2091,11 +2091,11 @@ animate: {
|
||||
jmp b2
|
||||
//SEG35 animate::@2
|
||||
b2:
|
||||
//SEG36 [20] (byte/signed byte/word/signed word~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$6 ] ( main:2::animate:9 [ animate::$6 ] ) -- vbuz1=_deref_pbuc1_minus_1
|
||||
//SEG36 [20] (byte/signed byte/word/signed word/dword/signed dword~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$6 ] ( main:2::animate:9 [ animate::$6 ] ) -- vbuz1=_deref_pbuc1_minus_1
|
||||
ldx XPOS+1
|
||||
dex
|
||||
stx _6
|
||||
//SEG37 [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word~) animate::$6 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuz1
|
||||
//SEG37 [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$6 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuz1
|
||||
lda _6
|
||||
sta XPOS+1
|
||||
//SEG38 [22] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1)!=(byte/word/signed word/dword/signed dword) 255) goto animate::@3 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1_neq_vbuc2_then_la1
|
||||
@ -2131,11 +2131,11 @@ animate: {
|
||||
jmp b4
|
||||
//SEG47 animate::@4
|
||||
b4:
|
||||
//SEG48 [28] (byte/signed byte/word/signed word~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$12 ] ( main:2::animate:9 [ animate::$12 ] ) -- vbuz1=_deref_pbuc1_minus_1
|
||||
//SEG48 [28] (byte/signed byte/word/signed word/dword/signed dword~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$12 ] ( main:2::animate:9 [ animate::$12 ] ) -- vbuz1=_deref_pbuc1_minus_1
|
||||
ldx YPOS+3
|
||||
dex
|
||||
stx _12
|
||||
//SEG49 [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$12 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuz1
|
||||
//SEG49 [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$12 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuz1
|
||||
lda _12
|
||||
sta YPOS+3
|
||||
//SEG50 [30] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)!=(byte/word/signed word/dword/signed dword) 255) goto animate::@return [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1_neq_vbuc2_then_la1
|
||||
@ -2163,12 +2163,12 @@ animate: {
|
||||
jmp b12
|
||||
//SEG56 animate::@12
|
||||
b12:
|
||||
//SEG57 [35] (byte/signed byte/word/signed word~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) -- vbuz1=_deref_pbuc1_minus_vbuc2
|
||||
//SEG57 [35] (byte/signed byte/word/signed word/dword/signed dword~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) -- vbuz1=_deref_pbuc1_minus_vbuc2
|
||||
lda XPOS+3
|
||||
sec
|
||||
sbc #$28
|
||||
sta _18
|
||||
//SEG58 [36] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$18 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuz1
|
||||
//SEG58 [36] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$18 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuz1
|
||||
lda _18
|
||||
sta XPOS+3
|
||||
jmp breturn
|
||||
@ -2355,12 +2355,12 @@ findcol: {
|
||||
jmp b14
|
||||
//SEG113 findcol::@14
|
||||
b14:
|
||||
//SEG114 [65] (byte/signed byte/word/signed word~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ) -- vbuz1=vbuz2_minus_vbuz3
|
||||
//SEG114 [65] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ) -- vbuz1=vbuz2_minus_vbuz3
|
||||
lda yp
|
||||
sec
|
||||
sbc y
|
||||
sta _10
|
||||
//SEG115 [66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) -- vbuz1=vbuz2_plus_vbuz3
|
||||
//SEG115 [66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) -- vbuz1=vbuz2_plus_vbuz3
|
||||
lda diff
|
||||
clc
|
||||
adc _10
|
||||
@ -2420,12 +2420,12 @@ findcol: {
|
||||
jmp b8_from_b21
|
||||
//SEG138 findcol::@6
|
||||
b6:
|
||||
//SEG139 [75] (byte/signed byte/word/signed word~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ) -- vbuz1=vbuz2_minus_vbuz3
|
||||
//SEG139 [75] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ) -- vbuz1=vbuz2_minus_vbuz3
|
||||
lda y
|
||||
sec
|
||||
sbc yp
|
||||
sta _12
|
||||
//SEG140 [76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ) -- vbuz1=vbuz2_plus_vbuz3
|
||||
//SEG140 [76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ) -- vbuz1=vbuz2_plus_vbuz3
|
||||
lda diff
|
||||
clc
|
||||
adc _12
|
||||
@ -2498,7 +2498,7 @@ Statement [30] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dwo
|
||||
Statement [31] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword) 25 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a
|
||||
Statement [32] (byte/word~) animate::$15 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 [ animate::$15 ] ( main:2::animate:9 [ animate::$15 ] ) always clobbers reg byte a
|
||||
Statement [34] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)<(byte/signed byte/word/signed word/dword/signed dword) 40) goto animate::@return [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a
|
||||
Statement [35] (byte/signed byte/word/signed word~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) always clobbers reg byte a
|
||||
Statement [35] (byte/signed byte/word/signed word/dword/signed dword~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) always clobbers reg byte a
|
||||
Statement [49] (byte*) render::colline#1 ← (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ render::y#4 render::colline#1 ] ( main:2::render:7 [ render::y#4 render::colline#1 ] ) always clobbers reg byte a
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ render::y#4 render::y#1 ]
|
||||
Statement [62] (byte) findcol::diff#1 ← (byte) findcol::xp#0 - (byte) findcol::x#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#1 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#1 ] ) always clobbers reg byte a
|
||||
@ -2509,11 +2509,11 @@ Removing always clobbered register reg byte a as potential for zp ZP_BYTE:6 [ fi
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:7 [ findcol::mindiff#10 findcol::mindiff#13 ]
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:8 [ findcol::return#2 findcol::mincol#10 findcol::mincol#2 findcol::mincol#1 ]
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:25 [ findcol::yp#0 ]
|
||||
Statement [65] (byte/signed byte/word/signed word~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ) always clobbers reg byte a
|
||||
Statement [65] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ) always clobbers reg byte a
|
||||
Removing always clobbered register reg byte a as potential for zp ZP_BYTE:9 [ findcol::diff#4 findcol::diff#1 findcol::diff#0 ]
|
||||
Statement [66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) always clobbers reg byte a
|
||||
Statement [75] (byte/signed byte/word/signed word~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ) always clobbers reg byte a
|
||||
Statement [76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ) always clobbers reg byte a
|
||||
Statement [66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) always clobbers reg byte a
|
||||
Statement [75] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ) always clobbers reg byte a
|
||||
Statement [76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ) always clobbers reg byte a
|
||||
Statement [77] (byte) findcol::diff#0 ← (byte) findcol::x#0 - (byte) findcol::xp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#0 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#0 ] ) always clobbers reg byte a
|
||||
Statement [80] *((byte*) initscreen::screen#2) ← (const byte) FILL#0 [ initscreen::screen#2 ] ( main:2::initscreen:5 [ initscreen::screen#2 ] ) always clobbers reg byte a reg byte y
|
||||
Statement [82] if((byte*) initscreen::screen#1<(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto initscreen::@1 [ initscreen::screen#1 ] ( main:2::initscreen:5 [ initscreen::screen#1 ] ) always clobbers reg byte a
|
||||
@ -2529,13 +2529,13 @@ Statement [30] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dwo
|
||||
Statement [31] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword) 25 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a
|
||||
Statement [32] (byte/word~) animate::$15 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 [ animate::$15 ] ( main:2::animate:9 [ animate::$15 ] ) always clobbers reg byte a
|
||||
Statement [34] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)<(byte/signed byte/word/signed word/dword/signed dword) 40) goto animate::@return [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a
|
||||
Statement [35] (byte/signed byte/word/signed word~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) always clobbers reg byte a
|
||||
Statement [35] (byte/signed byte/word/signed word/dword/signed dword~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) always clobbers reg byte a
|
||||
Statement [49] (byte*) render::colline#1 ← (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ render::y#4 render::colline#1 ] ( main:2::render:7 [ render::y#4 render::colline#1 ] ) always clobbers reg byte a
|
||||
Statement [62] (byte) findcol::diff#1 ← (byte) findcol::xp#0 - (byte) findcol::x#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#1 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#1 ] ) always clobbers reg byte a
|
||||
Statement [65] (byte/signed byte/word/signed word~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ) always clobbers reg byte a
|
||||
Statement [66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) always clobbers reg byte a
|
||||
Statement [75] (byte/signed byte/word/signed word~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ) always clobbers reg byte a
|
||||
Statement [76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ) always clobbers reg byte a
|
||||
Statement [65] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ) always clobbers reg byte a
|
||||
Statement [66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) always clobbers reg byte a
|
||||
Statement [75] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ) always clobbers reg byte a
|
||||
Statement [76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ) always clobbers reg byte a
|
||||
Statement [77] (byte) findcol::diff#0 ← (byte) findcol::x#0 - (byte) findcol::xp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#0 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#0 ] ) always clobbers reg byte a
|
||||
Statement [80] *((byte*) initscreen::screen#2) ← (const byte) FILL#0 [ initscreen::screen#2 ] ( main:2::initscreen:5 [ initscreen::screen#2 ] ) always clobbers reg byte a reg byte y
|
||||
Statement [82] if((byte*) initscreen::screen#1<(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto initscreen::@1 [ initscreen::screen#1 ] ( main:2::initscreen:5 [ initscreen::screen#1 ] ) always clobbers reg byte a
|
||||
@ -2706,10 +2706,10 @@ animate: {
|
||||
jmp b2
|
||||
//SEG35 animate::@2
|
||||
b2:
|
||||
//SEG36 [20] (byte/signed byte/word/signed word~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$6 ] ( main:2::animate:9 [ animate::$6 ] ) -- vbuxx=_deref_pbuc1_minus_1
|
||||
//SEG36 [20] (byte/signed byte/word/signed word/dword/signed dword~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$6 ] ( main:2::animate:9 [ animate::$6 ] ) -- vbuxx=_deref_pbuc1_minus_1
|
||||
ldx XPOS+1
|
||||
dex
|
||||
//SEG37 [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word~) animate::$6 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuxx
|
||||
//SEG37 [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$6 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuxx
|
||||
stx XPOS+1
|
||||
//SEG38 [22] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1)!=(byte/word/signed word/dword/signed dword) 255) goto animate::@3 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1_neq_vbuc2_then_la1
|
||||
lda XPOS+1
|
||||
@ -2742,10 +2742,10 @@ animate: {
|
||||
jmp b4
|
||||
//SEG47 animate::@4
|
||||
b4:
|
||||
//SEG48 [28] (byte/signed byte/word/signed word~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$12 ] ( main:2::animate:9 [ animate::$12 ] ) -- vbuxx=_deref_pbuc1_minus_1
|
||||
//SEG48 [28] (byte/signed byte/word/signed word/dword/signed dword~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$12 ] ( main:2::animate:9 [ animate::$12 ] ) -- vbuxx=_deref_pbuc1_minus_1
|
||||
ldx YPOS+3
|
||||
dex
|
||||
//SEG49 [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$12 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuxx
|
||||
//SEG49 [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$12 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuxx
|
||||
stx YPOS+3
|
||||
//SEG50 [30] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)!=(byte/word/signed word/dword/signed dword) 255) goto animate::@return [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1_neq_vbuc2_then_la1
|
||||
lda YPOS+3
|
||||
@ -2770,11 +2770,11 @@ animate: {
|
||||
jmp b12
|
||||
//SEG56 animate::@12
|
||||
b12:
|
||||
//SEG57 [35] (byte/signed byte/word/signed word~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) -- vbuaa=_deref_pbuc1_minus_vbuc2
|
||||
//SEG57 [35] (byte/signed byte/word/signed word/dword/signed dword~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) -- vbuaa=_deref_pbuc1_minus_vbuc2
|
||||
lda XPOS+3
|
||||
sec
|
||||
sbc #$28
|
||||
//SEG58 [36] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$18 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuaa
|
||||
//SEG58 [36] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$18 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuaa
|
||||
sta XPOS+3
|
||||
jmp breturn
|
||||
//SEG59 animate::@return
|
||||
@ -2938,11 +2938,11 @@ findcol: {
|
||||
jmp b14
|
||||
//SEG113 findcol::@14
|
||||
b14:
|
||||
//SEG114 [65] (byte/signed byte/word/signed word~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ) -- vbuaa=vbuz1_minus_vbuz2
|
||||
//SEG114 [65] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ) -- vbuaa=vbuz1_minus_vbuz2
|
||||
lda yp
|
||||
sec
|
||||
sbc y
|
||||
//SEG115 [66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) -- vbuaa=vbuz1_plus_vbuaa
|
||||
//SEG115 [66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) -- vbuaa=vbuz1_plus_vbuaa
|
||||
clc
|
||||
adc diff
|
||||
//SEG116 [67] phi from findcol::@14 findcol::@6 to findcol::@7 [phi:findcol::@14/findcol::@6->findcol::@7]
|
||||
@ -2994,11 +2994,11 @@ findcol: {
|
||||
jmp b8_from_b21
|
||||
//SEG138 findcol::@6
|
||||
b6:
|
||||
//SEG139 [75] (byte/signed byte/word/signed word~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ) -- vbuaa=vbuz1_minus_vbuz2
|
||||
//SEG139 [75] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ) -- vbuaa=vbuz1_minus_vbuz2
|
||||
lda y
|
||||
sec
|
||||
sbc yp
|
||||
//SEG140 [76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ) -- vbuaa=vbuz1_plus_vbuaa
|
||||
//SEG140 [76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ) -- vbuaa=vbuz1_plus_vbuaa
|
||||
clc
|
||||
adc diff
|
||||
jmp b7_from_b6
|
||||
@ -3180,11 +3180,11 @@ FINAL SYMBOL TABLE
|
||||
(const byte[]) YPOS#0 YPOS = { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 14, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 22 }
|
||||
(void()) animate()
|
||||
(byte/word~) animate::$0 reg byte x 4.0
|
||||
(byte/signed byte/word/signed word~) animate::$12 reg byte x 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$12 reg byte x 4.0
|
||||
(byte/word~) animate::$15 reg byte a 4.0
|
||||
(byte/signed byte/word/signed word~) animate::$18 reg byte a 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$18 reg byte a 4.0
|
||||
(byte/word~) animate::$3 reg byte x 4.0
|
||||
(byte/signed byte/word/signed word~) animate::$6 reg byte x 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$6 reg byte x 4.0
|
||||
(byte/word~) animate::$9 reg byte x 4.0
|
||||
(label) animate::@1
|
||||
(label) animate::@10
|
||||
@ -3198,8 +3198,8 @@ FINAL SYMBOL TABLE
|
||||
(label) animate::@9
|
||||
(label) animate::@return
|
||||
(byte()) findcol((byte) findcol::x , (byte) findcol::y)
|
||||
(byte/signed byte/word/signed word~) findcol::$10 reg byte a 20002.0
|
||||
(byte/signed byte/word/signed word~) findcol::$12 reg byte a 20002.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 reg byte a 20002.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 reg byte a 20002.0
|
||||
(label) findcol::@1
|
||||
(label) findcol::@12
|
||||
(label) findcol::@14
|
||||
@ -3370,10 +3370,10 @@ animate: {
|
||||
sta YPOS+0
|
||||
//SEG35 animate::@2
|
||||
b2:
|
||||
//SEG36 [20] (byte/signed byte/word/signed word~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$6 ] ( main:2::animate:9 [ animate::$6 ] ) -- vbuxx=_deref_pbuc1_minus_1
|
||||
//SEG36 [20] (byte/signed byte/word/signed word/dword/signed dword~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$6 ] ( main:2::animate:9 [ animate::$6 ] ) -- vbuxx=_deref_pbuc1_minus_1
|
||||
ldx XPOS+1
|
||||
dex
|
||||
//SEG37 [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word~) animate::$6 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuxx
|
||||
//SEG37 [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$6 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuxx
|
||||
stx XPOS+1
|
||||
//SEG38 [22] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1)!=(byte/word/signed word/dword/signed dword) 255) goto animate::@3 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1_neq_vbuc2_then_la1
|
||||
txa
|
||||
@ -3400,10 +3400,10 @@ animate: {
|
||||
sta YPOS+2
|
||||
//SEG47 animate::@4
|
||||
b4:
|
||||
//SEG48 [28] (byte/signed byte/word/signed word~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$12 ] ( main:2::animate:9 [ animate::$12 ] ) -- vbuxx=_deref_pbuc1_minus_1
|
||||
//SEG48 [28] (byte/signed byte/word/signed word/dword/signed dword~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 [ animate::$12 ] ( main:2::animate:9 [ animate::$12 ] ) -- vbuxx=_deref_pbuc1_minus_1
|
||||
ldx YPOS+3
|
||||
dex
|
||||
//SEG49 [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$12 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuxx
|
||||
//SEG49 [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$12 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuxx
|
||||
stx YPOS+3
|
||||
//SEG50 [30] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)!=(byte/word/signed word/dword/signed dword) 255) goto animate::@return [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1_neq_vbuc2_then_la1
|
||||
txa
|
||||
@ -3423,10 +3423,10 @@ animate: {
|
||||
cmp #$28
|
||||
bcc breturn
|
||||
//SEG56 animate::@12
|
||||
//SEG57 [35] (byte/signed byte/word/signed word~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) -- vbuaa=_deref_pbuc1_minus_vbuc2
|
||||
//SEG57 [35] (byte/signed byte/word/signed word/dword/signed dword~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 40 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) -- vbuaa=_deref_pbuc1_minus_vbuc2
|
||||
sec
|
||||
sbc #$28
|
||||
//SEG58 [36] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word~) animate::$18 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuaa
|
||||
//SEG58 [36] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword~) animate::$18 [ ] ( main:2::animate:9 [ ] ) -- _deref_pbuc1=vbuaa
|
||||
sta XPOS+3
|
||||
//SEG59 animate::@return
|
||||
breturn:
|
||||
@ -3561,11 +3561,11 @@ findcol: {
|
||||
cmp yp
|
||||
bcs b6
|
||||
//SEG113 findcol::@14
|
||||
//SEG114 [65] (byte/signed byte/word/signed word~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ) -- vbuaa=vbuz1_minus_vbuz2
|
||||
//SEG114 [65] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$10 ] ) -- vbuaa=vbuz1_minus_vbuz2
|
||||
lda yp
|
||||
sec
|
||||
sbc y
|
||||
//SEG115 [66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) -- vbuaa=vbuz1_plus_vbuaa
|
||||
//SEG115 [66] (byte) findcol::diff#3 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) -- vbuaa=vbuz1_plus_vbuaa
|
||||
clc
|
||||
adc diff
|
||||
//SEG116 [67] phi from findcol::@14 findcol::@6 to findcol::@7 [phi:findcol::@14/findcol::@6->findcol::@7]
|
||||
@ -3607,11 +3607,11 @@ findcol: {
|
||||
jmp b8
|
||||
//SEG138 findcol::@6
|
||||
b6:
|
||||
//SEG139 [75] (byte/signed byte/word/signed word~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ) -- vbuaa=vbuz1_minus_vbuz2
|
||||
//SEG139 [75] (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 findcol::$12 ] ) -- vbuaa=vbuz1_minus_vbuz2
|
||||
lda y
|
||||
sec
|
||||
sbc yp
|
||||
//SEG140 [76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ) -- vbuaa=vbuz1_plus_vbuaa
|
||||
//SEG140 [76] (byte) findcol::diff#2 ← (byte) findcol::diff#4 + (byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ( main:2::render:7::findcol:43 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#2 ] ) -- vbuaa=vbuz1_plus_vbuaa
|
||||
clc
|
||||
adc diff
|
||||
jmp b7
|
||||
|
@ -15,11 +15,11 @@
|
||||
(const byte[]) YPOS#0 YPOS = { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 14, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 22 }
|
||||
(void()) animate()
|
||||
(byte/word~) animate::$0 reg byte x 4.0
|
||||
(byte/signed byte/word/signed word~) animate::$12 reg byte x 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$12 reg byte x 4.0
|
||||
(byte/word~) animate::$15 reg byte a 4.0
|
||||
(byte/signed byte/word/signed word~) animate::$18 reg byte a 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$18 reg byte a 4.0
|
||||
(byte/word~) animate::$3 reg byte x 4.0
|
||||
(byte/signed byte/word/signed word~) animate::$6 reg byte x 4.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) animate::$6 reg byte x 4.0
|
||||
(byte/word~) animate::$9 reg byte x 4.0
|
||||
(label) animate::@1
|
||||
(label) animate::@10
|
||||
@ -33,8 +33,8 @@
|
||||
(label) animate::@9
|
||||
(label) animate::@return
|
||||
(byte()) findcol((byte) findcol::x , (byte) findcol::y)
|
||||
(byte/signed byte/word/signed word~) findcol::$10 reg byte a 20002.0
|
||||
(byte/signed byte/word/signed word~) findcol::$12 reg byte a 20002.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$10 reg byte a 20002.0
|
||||
(byte/signed byte/word/signed word/dword/signed dword~) findcol::$12 reg byte a 20002.0
|
||||
(label) findcol::@1
|
||||
(label) findcol::@12
|
||||
(label) findcol::@14
|
||||
|
Loading…
Reference in New Issue
Block a user