mirror of
https://gitlab.com/camelot/kickc.git
synced 2025-02-20 00:29:10 +00:00
Added "location" directive to inline kickasm to allow absolute placement.
This commit is contained in:
parent
ea80c9445a
commit
19855bed21
@ -6,10 +6,10 @@ import dk.camelot64.kickc.fragment.AsmFormat;
|
||||
public class AsmSetPc implements AsmLine {
|
||||
|
||||
private final String name;
|
||||
private final int address;
|
||||
private final String address;
|
||||
private int index;
|
||||
|
||||
public AsmSetPc(String name, int address) {
|
||||
public AsmSetPc(String name, String address) {
|
||||
this.name = name;
|
||||
this.address = address;
|
||||
}
|
||||
@ -26,7 +26,7 @@ public class AsmSetPc implements AsmLine {
|
||||
|
||||
@Override
|
||||
public String getAsm() {
|
||||
return ".pc = " + AsmFormat.getAsmNumber(address) + " \"" + name + "\"";
|
||||
return ".pc = " + address + " \"" + name + "\"";
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -196,7 +196,7 @@ public class ControlFlowGraphCopyVisitor extends ControlFlowGraphBaseVisitor<Obj
|
||||
|
||||
@Override
|
||||
public Object visitKickAsm(StatementKickAsm kasm) {
|
||||
return new StatementKickAsm(kasm.getKickAsmCode(), kasm.getSource());
|
||||
return new StatementKickAsm(kasm.getKickAsmCode(), kasm.getLocation(), kasm.getSource());
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -8,11 +8,28 @@ public class StatementKickAsm extends StatementBase {
|
||||
/** KickAssembler code. */
|
||||
private String kickAsmCode;
|
||||
|
||||
/** The absolute address to generate the kick-assembler code at. If null it is generated inline. */
|
||||
private Long location;
|
||||
|
||||
public StatementKickAsm(String kickAsmCode, StatementSource source) {
|
||||
super(null, source);
|
||||
this.kickAsmCode = kickAsmCode;
|
||||
}
|
||||
|
||||
public StatementKickAsm(String kickAsmCode, Long location, StatementSource source) {
|
||||
super(null, source);
|
||||
this.kickAsmCode = kickAsmCode;
|
||||
this.location = location;
|
||||
}
|
||||
|
||||
public Long getLocation() {
|
||||
return location;
|
||||
}
|
||||
|
||||
public void setLocation(Long location) {
|
||||
this.location = location;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString(Program program, boolean aliveInfo) {
|
||||
StringBuilder txt = new StringBuilder();
|
||||
|
@ -44,9 +44,12 @@ kasmParams
|
||||
;
|
||||
|
||||
kasmParam
|
||||
: 'resources' kasmResourceList
|
||||
| 'clobber' STRING
|
||||
| 'param' kasmParamList
|
||||
: 'resources' kasmResourceList #kasmParamResources
|
||||
| 'clobber' STRING #kasmParamClobber
|
||||
| 'param' kasmParamList #kasmParamTransfer
|
||||
| 'bytes' NUMBER #kasmParamBytes
|
||||
| 'cycles' NUMBER #kasmParamCycles
|
||||
| 'location' ( 'inline' | NUMBER ) #kasmParamLocation
|
||||
;
|
||||
|
||||
kasmResourceList
|
||||
|
@ -61,26 +61,29 @@ T__59=60
|
||||
T__60=61
|
||||
T__61=62
|
||||
T__62=63
|
||||
MNEMONIC=64
|
||||
KICKASM=65
|
||||
SIMPLETYPE=66
|
||||
STRING=67
|
||||
CHAR=68
|
||||
BOOLEAN=69
|
||||
NUMBER=70
|
||||
NUMFLOAT=71
|
||||
BINFLOAT=72
|
||||
DECFLOAT=73
|
||||
HEXFLOAT=74
|
||||
NUMINT=75
|
||||
BININTEGER=76
|
||||
DECINTEGER=77
|
||||
HEXINTEGER=78
|
||||
NAME=79
|
||||
ASMREL=80
|
||||
WS=81
|
||||
COMMENT_LINE=82
|
||||
COMMENT_BLOCK=83
|
||||
T__63=64
|
||||
T__64=65
|
||||
T__65=66
|
||||
MNEMONIC=67
|
||||
KICKASM=68
|
||||
SIMPLETYPE=69
|
||||
STRING=70
|
||||
CHAR=71
|
||||
BOOLEAN=72
|
||||
NUMBER=73
|
||||
NUMFLOAT=74
|
||||
BINFLOAT=75
|
||||
DECFLOAT=76
|
||||
HEXFLOAT=77
|
||||
NUMINT=78
|
||||
BININTEGER=79
|
||||
DECINTEGER=80
|
||||
HEXINTEGER=81
|
||||
NAME=82
|
||||
ASMREL=83
|
||||
WS=84
|
||||
COMMENT_LINE=85
|
||||
COMMENT_BLOCK=86
|
||||
'import'=1
|
||||
'='=2
|
||||
';'=3
|
||||
@ -92,55 +95,58 @@ COMMENT_BLOCK=83
|
||||
'resources'=9
|
||||
'clobber'=10
|
||||
'param'=11
|
||||
','=12
|
||||
':'=13
|
||||
'const'=14
|
||||
'extern'=15
|
||||
'align'=16
|
||||
'register'=17
|
||||
'inline'=18
|
||||
'if'=19
|
||||
'else'=20
|
||||
'while'=21
|
||||
'do'=22
|
||||
'for'=23
|
||||
'return'=24
|
||||
'asm'=25
|
||||
'..'=26
|
||||
'signed'=27
|
||||
'*'=28
|
||||
'['=29
|
||||
']'=30
|
||||
'--'=31
|
||||
'++'=32
|
||||
'+'=33
|
||||
'-'=34
|
||||
'!'=35
|
||||
'&'=36
|
||||
'~'=37
|
||||
'>>'=38
|
||||
'<<'=39
|
||||
'/'=40
|
||||
'%'=41
|
||||
'<'=42
|
||||
'>'=43
|
||||
'=='=44
|
||||
'!='=45
|
||||
'<='=46
|
||||
'>='=47
|
||||
'^'=48
|
||||
'|'=49
|
||||
'&&'=50
|
||||
'||'=51
|
||||
'+='=52
|
||||
'-='=53
|
||||
'*='=54
|
||||
'/='=55
|
||||
'%='=56
|
||||
'<<='=57
|
||||
'>>='=58
|
||||
'&='=59
|
||||
'|='=60
|
||||
'^='=61
|
||||
'.byte'=62
|
||||
'#'=63
|
||||
'bytes'=12
|
||||
'cycles'=13
|
||||
'location'=14
|
||||
'inline'=15
|
||||
','=16
|
||||
':'=17
|
||||
'const'=18
|
||||
'extern'=19
|
||||
'align'=20
|
||||
'register'=21
|
||||
'if'=22
|
||||
'else'=23
|
||||
'while'=24
|
||||
'do'=25
|
||||
'for'=26
|
||||
'return'=27
|
||||
'asm'=28
|
||||
'..'=29
|
||||
'signed'=30
|
||||
'*'=31
|
||||
'['=32
|
||||
']'=33
|
||||
'--'=34
|
||||
'++'=35
|
||||
'+'=36
|
||||
'-'=37
|
||||
'!'=38
|
||||
'&'=39
|
||||
'~'=40
|
||||
'>>'=41
|
||||
'<<'=42
|
||||
'/'=43
|
||||
'%'=44
|
||||
'<'=45
|
||||
'>'=46
|
||||
'=='=47
|
||||
'!='=48
|
||||
'<='=49
|
||||
'>='=50
|
||||
'^'=51
|
||||
'|'=52
|
||||
'&&'=53
|
||||
'||'=54
|
||||
'+='=55
|
||||
'-='=56
|
||||
'*='=57
|
||||
'/='=58
|
||||
'%='=59
|
||||
'<<='=60
|
||||
'>>='=61
|
||||
'&='=62
|
||||
'|='=63
|
||||
'^='=64
|
||||
'.byte'=65
|
||||
'#'=66
|
||||
|
@ -136,13 +136,73 @@ public class KickCBaseListener implements KickCListener {
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterKasmParam(KickCParser.KasmParamContext ctx) { }
|
||||
@Override public void enterKasmParamResources(KickCParser.KasmParamResourcesContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitKasmParam(KickCParser.KasmParamContext ctx) { }
|
||||
@Override public void exitKasmParamResources(KickCParser.KasmParamResourcesContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterKasmParamClobber(KickCParser.KasmParamClobberContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitKasmParamClobber(KickCParser.KasmParamClobberContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterKasmParamTransfer(KickCParser.KasmParamTransferContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitKasmParamTransfer(KickCParser.KasmParamTransferContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterKasmParamBytes(KickCParser.KasmParamBytesContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitKasmParamBytes(KickCParser.KasmParamBytesContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterKasmParamCycles(KickCParser.KasmParamCyclesContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitKasmParamCycles(KickCParser.KasmParamCyclesContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void enterKasmParamLocation(KickCParser.KasmParamLocationContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation does nothing.</p>
|
||||
*/
|
||||
@Override public void exitKasmParamLocation(KickCParser.KasmParamLocationContext ctx) { }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
|
@ -87,7 +87,42 @@ public class KickCBaseVisitor<T> extends AbstractParseTreeVisitor<T> implements
|
||||
* <p>The default implementation returns the result of calling
|
||||
* {@link #visitChildren} on {@code ctx}.</p>
|
||||
*/
|
||||
@Override public T visitKasmParam(KickCParser.KasmParamContext ctx) { return visitChildren(ctx); }
|
||||
@Override public T visitKasmParamResources(KickCParser.KasmParamResourcesContext ctx) { return visitChildren(ctx); }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation returns the result of calling
|
||||
* {@link #visitChildren} on {@code ctx}.</p>
|
||||
*/
|
||||
@Override public T visitKasmParamClobber(KickCParser.KasmParamClobberContext ctx) { return visitChildren(ctx); }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation returns the result of calling
|
||||
* {@link #visitChildren} on {@code ctx}.</p>
|
||||
*/
|
||||
@Override public T visitKasmParamTransfer(KickCParser.KasmParamTransferContext ctx) { return visitChildren(ctx); }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation returns the result of calling
|
||||
* {@link #visitChildren} on {@code ctx}.</p>
|
||||
*/
|
||||
@Override public T visitKasmParamBytes(KickCParser.KasmParamBytesContext ctx) { return visitChildren(ctx); }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation returns the result of calling
|
||||
* {@link #visitChildren} on {@code ctx}.</p>
|
||||
*/
|
||||
@Override public T visitKasmParamCycles(KickCParser.KasmParamCyclesContext ctx) { return visitChildren(ctx); }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* <p>The default implementation returns the result of calling
|
||||
* {@link #visitChildren} on {@code ctx}.</p>
|
||||
*/
|
||||
@Override public T visitKasmParamLocation(KickCParser.KasmParamLocationContext ctx) { return visitChildren(ctx); }
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
|
@ -25,10 +25,11 @@ public class KickCLexer extends Lexer {
|
||||
T__38=39, T__39=40, T__40=41, T__41=42, T__42=43, T__43=44, T__44=45,
|
||||
T__45=46, T__46=47, T__47=48, T__48=49, T__49=50, T__50=51, T__51=52,
|
||||
T__52=53, T__53=54, T__54=55, T__55=56, T__56=57, T__57=58, T__58=59,
|
||||
T__59=60, T__60=61, T__61=62, T__62=63, MNEMONIC=64, KICKASM=65, SIMPLETYPE=66,
|
||||
STRING=67, CHAR=68, BOOLEAN=69, NUMBER=70, NUMFLOAT=71, BINFLOAT=72, DECFLOAT=73,
|
||||
HEXFLOAT=74, NUMINT=75, BININTEGER=76, DECINTEGER=77, HEXINTEGER=78, NAME=79,
|
||||
ASMREL=80, WS=81, COMMENT_LINE=82, COMMENT_BLOCK=83;
|
||||
T__59=60, T__60=61, T__61=62, T__62=63, T__63=64, T__64=65, T__65=66,
|
||||
MNEMONIC=67, KICKASM=68, SIMPLETYPE=69, STRING=70, CHAR=71, BOOLEAN=72,
|
||||
NUMBER=73, NUMFLOAT=74, BINFLOAT=75, DECFLOAT=76, HEXFLOAT=77, NUMINT=78,
|
||||
BININTEGER=79, DECINTEGER=80, HEXINTEGER=81, NAME=82, ASMREL=83, WS=84,
|
||||
COMMENT_LINE=85, COMMENT_BLOCK=86;
|
||||
public static String[] channelNames = {
|
||||
"DEFAULT_TOKEN_CHANNEL", "HIDDEN"
|
||||
};
|
||||
@ -45,22 +46,22 @@ public class KickCLexer extends Lexer {
|
||||
"T__33", "T__34", "T__35", "T__36", "T__37", "T__38", "T__39", "T__40",
|
||||
"T__41", "T__42", "T__43", "T__44", "T__45", "T__46", "T__47", "T__48",
|
||||
"T__49", "T__50", "T__51", "T__52", "T__53", "T__54", "T__55", "T__56",
|
||||
"T__57", "T__58", "T__59", "T__60", "T__61", "T__62", "MNEMONIC", "KICKASM",
|
||||
"SIMPLETYPE", "STRING", "CHAR", "BOOLEAN", "NUMBER", "NUMFLOAT", "BINFLOAT",
|
||||
"DECFLOAT", "HEXFLOAT", "NUMINT", "BININTEGER", "DECINTEGER", "HEXINTEGER",
|
||||
"BINDIGIT", "DECDIGIT", "HEXDIGIT", "NAME", "NAME_START", "NAME_CHAR",
|
||||
"ASMREL", "WS", "COMMENT_LINE", "COMMENT_BLOCK"
|
||||
"T__57", "T__58", "T__59", "T__60", "T__61", "T__62", "T__63", "T__64",
|
||||
"T__65", "MNEMONIC", "KICKASM", "SIMPLETYPE", "STRING", "CHAR", "BOOLEAN",
|
||||
"NUMBER", "NUMFLOAT", "BINFLOAT", "DECFLOAT", "HEXFLOAT", "NUMINT", "BININTEGER",
|
||||
"DECINTEGER", "HEXINTEGER", "BINDIGIT", "DECDIGIT", "HEXDIGIT", "NAME",
|
||||
"NAME_START", "NAME_CHAR", "ASMREL", "WS", "COMMENT_LINE", "COMMENT_BLOCK"
|
||||
};
|
||||
|
||||
private static final String[] _LITERAL_NAMES = {
|
||||
null, "'import'", "'='", "';'", "'('", "')'", "'{'", "'}'", "'kickasm'",
|
||||
"'resources'", "'clobber'", "'param'", "','", "':'", "'const'", "'extern'",
|
||||
"'align'", "'register'", "'inline'", "'if'", "'else'", "'while'", "'do'",
|
||||
"'for'", "'return'", "'asm'", "'..'", "'signed'", "'*'", "'['", "']'",
|
||||
"'--'", "'++'", "'+'", "'-'", "'!'", "'&'", "'~'", "'>>'", "'<<'", "'/'",
|
||||
"'%'", "'<'", "'>'", "'=='", "'!='", "'<='", "'>='", "'^'", "'|'", "'&&'",
|
||||
"'||'", "'+='", "'-='", "'*='", "'/='", "'%='", "'<<='", "'>>='", "'&='",
|
||||
"'|='", "'^='", "'.byte'", "'#'"
|
||||
"'resources'", "'clobber'", "'param'", "'bytes'", "'cycles'", "'location'",
|
||||
"'inline'", "','", "':'", "'const'", "'extern'", "'align'", "'register'",
|
||||
"'if'", "'else'", "'while'", "'do'", "'for'", "'return'", "'asm'", "'..'",
|
||||
"'signed'", "'*'", "'['", "']'", "'--'", "'++'", "'+'", "'-'", "'!'",
|
||||
"'&'", "'~'", "'>>'", "'<<'", "'/'", "'%'", "'<'", "'>'", "'=='", "'!='",
|
||||
"'<='", "'>='", "'^'", "'|'", "'&&'", "'||'", "'+='", "'-='", "'*='",
|
||||
"'/='", "'%='", "'<<='", "'>>='", "'&='", "'|='", "'^='", "'.byte'", "'#'"
|
||||
};
|
||||
private static final String[] _SYMBOLIC_NAMES = {
|
||||
null, null, null, null, null, null, null, null, null, null, null, null,
|
||||
@ -68,10 +69,10 @@ public class KickCLexer extends Lexer {
|
||||
null, null, null, null, null, null, null, null, null, null, null, null,
|
||||
null, null, null, null, null, null, null, null, null, null, null, null,
|
||||
null, null, null, null, null, null, null, null, null, null, null, null,
|
||||
null, null, null, null, "MNEMONIC", "KICKASM", "SIMPLETYPE", "STRING",
|
||||
"CHAR", "BOOLEAN", "NUMBER", "NUMFLOAT", "BINFLOAT", "DECFLOAT", "HEXFLOAT",
|
||||
"NUMINT", "BININTEGER", "DECINTEGER", "HEXINTEGER", "NAME", "ASMREL",
|
||||
"WS", "COMMENT_LINE", "COMMENT_BLOCK"
|
||||
null, null, null, null, null, null, null, "MNEMONIC", "KICKASM", "SIMPLETYPE",
|
||||
"STRING", "CHAR", "BOOLEAN", "NUMBER", "NUMFLOAT", "BINFLOAT", "DECFLOAT",
|
||||
"HEXFLOAT", "NUMINT", "BININTEGER", "DECINTEGER", "HEXINTEGER", "NAME",
|
||||
"ASMREL", "WS", "COMMENT_LINE", "COMMENT_BLOCK"
|
||||
};
|
||||
public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES);
|
||||
|
||||
@ -131,7 +132,7 @@ public class KickCLexer extends Lexer {
|
||||
public ATN getATN() { return _ATN; }
|
||||
|
||||
public static final String _serializedATN =
|
||||
"\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\2U\u0357\b\1\4\2\t"+
|
||||
"\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\2X\u0373\b\1\4\2\t"+
|
||||
"\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13"+
|
||||
"\t\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t\22"+
|
||||
"\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27\4\30\t\30\4\31\t\31"+
|
||||
@ -141,305 +142,315 @@ public class KickCLexer extends Lexer {
|
||||
"\64\4\65\t\65\4\66\t\66\4\67\t\67\48\t8\49\t9\4:\t:\4;\t;\4<\t<\4=\t="+
|
||||
"\4>\t>\4?\t?\4@\t@\4A\tA\4B\tB\4C\tC\4D\tD\4E\tE\4F\tF\4G\tG\4H\tH\4I"+
|
||||
"\tI\4J\tJ\4K\tK\4L\tL\4M\tM\4N\tN\4O\tO\4P\tP\4Q\tQ\4R\tR\4S\tS\4T\tT"+
|
||||
"\4U\tU\4V\tV\4W\tW\4X\tX\4Y\tY\3\2\3\2\3\2\3\2\3\2\3\2\3\2\3\3\3\3\3\4"+
|
||||
"\3\4\3\5\3\5\3\6\3\6\3\7\3\7\3\b\3\b\3\t\3\t\3\t\3\t\3\t\3\t\3\t\3\t\3"+
|
||||
"\n\3\n\3\n\3\n\3\n\3\n\3\n\3\n\3\n\3\n\3\13\3\13\3\13\3\13\3\13\3\13\3"+
|
||||
"\13\3\13\3\f\3\f\3\f\3\f\3\f\3\f\3\r\3\r\3\16\3\16\3\17\3\17\3\17\3\17"+
|
||||
"\3\17\3\17\3\20\3\20\3\20\3\20\3\20\3\20\3\20\3\21\3\21\3\21\3\21\3\21"+
|
||||
"\3\21\3\22\3\22\3\22\3\22\3\22\3\22\3\22\3\22\3\22\3\23\3\23\3\23\3\23"+
|
||||
"\3\23\3\23\3\23\3\24\3\24\3\24\3\25\3\25\3\25\3\25\3\25\3\26\3\26\3\26"+
|
||||
"\3\26\3\26\3\26\3\27\3\27\3\27\3\30\3\30\3\30\3\30\3\31\3\31\3\31\3\31"+
|
||||
"\3\31\3\31\3\31\3\32\3\32\3\32\3\32\3\33\3\33\3\33\3\34\3\34\3\34\3\34"+
|
||||
"\3\34\3\34\3\34\3\35\3\35\3\36\3\36\3\37\3\37\3 \3 \3 \3!\3!\3!\3\"\3"+
|
||||
"\"\3#\3#\3$\3$\3%\3%\3&\3&\3\'\3\'\3\'\3(\3(\3(\3)\3)\3*\3*\3+\3+\3,\3"+
|
||||
",\3-\3-\3-\3.\3.\3.\3/\3/\3/\3\60\3\60\3\60\3\61\3\61\3\62\3\62\3\63\3"+
|
||||
"\63\3\63\3\64\3\64\3\64\3\65\3\65\3\65\3\66\3\66\3\66\3\67\3\67\3\67\3"+
|
||||
"8\38\38\39\39\39\3:\3:\3:\3:\3;\3;\3;\3;\3<\3<\3<\3=\3=\3=\3>\3>\3>\3"+
|
||||
"?\3?\3?\3?\3?\3?\3@\3@\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3"+
|
||||
"A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3"+
|
||||
"A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3"+
|
||||
"A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3"+
|
||||
"A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3"+
|
||||
"A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3"+
|
||||
"A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3"+
|
||||
"A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3"+
|
||||
"A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3"+
|
||||
"A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\3A\5"+
|
||||
"A\u0278\nA\3B\3B\3B\3B\7B\u027e\nB\fB\16B\u0281\13B\3B\3B\3B\3C\3C\3C"+
|
||||
"\3C\3C\3C\3C\3C\3C\3C\3C\3C\3C\3C\3C\3C\3C\3C\3C\3C\3C\5C\u029b\nC\3D"+
|
||||
"\3D\3D\3D\7D\u02a1\nD\fD\16D\u02a4\13D\3D\3D\3E\3E\3E\3E\5E\u02ac\nE\3"+
|
||||
"E\3E\3F\3F\3F\3F\3F\3F\3F\3F\3F\5F\u02b9\nF\3G\3G\5G\u02bd\nG\3H\3H\3"+
|
||||
"H\5H\u02c2\nH\3I\3I\3I\3I\3I\5I\u02c9\nI\3I\7I\u02cc\nI\fI\16I\u02cf\13"+
|
||||
"I\3I\3I\6I\u02d3\nI\rI\16I\u02d4\3J\7J\u02d8\nJ\fJ\16J\u02db\13J\3J\3"+
|
||||
"J\6J\u02df\nJ\rJ\16J\u02e0\3K\3K\3K\3K\3K\5K\u02e8\nK\3K\7K\u02eb\nK\f"+
|
||||
"K\16K\u02ee\13K\3K\3K\6K\u02f2\nK\rK\16K\u02f3\3L\3L\3L\5L\u02f9\nL\3"+
|
||||
"M\3M\3M\6M\u02fe\nM\rM\16M\u02ff\3M\3M\6M\u0304\nM\rM\16M\u0305\5M\u0308"+
|
||||
"\nM\3N\6N\u030b\nN\rN\16N\u030c\3O\3O\3O\3O\3O\5O\u0314\nO\3O\6O\u0317"+
|
||||
"\nO\rO\16O\u0318\3P\3P\3Q\3Q\3R\3R\3S\3S\7S\u0323\nS\fS\16S\u0326\13S"+
|
||||
"\3T\3T\3U\3U\3V\3V\7V\u032e\nV\fV\16V\u0331\13V\3V\6V\u0334\nV\rV\16V"+
|
||||
"\u0335\3W\6W\u0339\nW\rW\16W\u033a\3W\3W\3X\3X\3X\3X\7X\u0343\nX\fX\16"+
|
||||
"X\u0346\13X\3X\3X\3Y\3Y\3Y\3Y\7Y\u034e\nY\fY\16Y\u0351\13Y\3Y\3Y\3Y\3"+
|
||||
"Y\3Y\4\u027f\u034f\2Z\3\3\5\4\7\5\t\6\13\7\r\b\17\t\21\n\23\13\25\f\27"+
|
||||
"\r\31\16\33\17\35\20\37\21!\22#\23%\24\'\25)\26+\27-\30/\31\61\32\63\33"+
|
||||
"\65\34\67\359\36;\37= ?!A\"C#E$G%I&K\'M(O)Q*S+U,W-Y.[/]\60_\61a\62c\63"+
|
||||
"e\64g\65i\66k\67m8o9q:s;u<w=y>{?}@\177A\u0081B\u0083C\u0085D\u0087E\u0089"+
|
||||
"F\u008bG\u008dH\u008fI\u0091J\u0093K\u0095L\u0097M\u0099N\u009bO\u009d"+
|
||||
"P\u009f\2\u00a1\2\u00a3\2\u00a5Q\u00a7\2\u00a9\2\u00abR\u00adS\u00afT"+
|
||||
"\u00b1U\3\2\r\3\2$$\3\2))\4\2DDdd\3\2\62\63\3\2\62;\5\2\62;CHch\5\2C\\"+
|
||||
"aac|\6\2\62;C\\aac|\4\2--//\5\2\13\f\17\17\"\"\4\2\f\f\17\17\2\u03bf\2"+
|
||||
"\3\3\2\2\2\2\5\3\2\2\2\2\7\3\2\2\2\2\t\3\2\2\2\2\13\3\2\2\2\2\r\3\2\2"+
|
||||
"\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3\2\2\2\2\25\3\2\2\2\2\27\3\2\2\2\2"+
|
||||
"\31\3\2\2\2\2\33\3\2\2\2\2\35\3\2\2\2\2\37\3\2\2\2\2!\3\2\2\2\2#\3\2\2"+
|
||||
"\2\2%\3\2\2\2\2\'\3\2\2\2\2)\3\2\2\2\2+\3\2\2\2\2-\3\2\2\2\2/\3\2\2\2"+
|
||||
"\2\61\3\2\2\2\2\63\3\2\2\2\2\65\3\2\2\2\2\67\3\2\2\2\29\3\2\2\2\2;\3\2"+
|
||||
"\2\2\2=\3\2\2\2\2?\3\2\2\2\2A\3\2\2\2\2C\3\2\2\2\2E\3\2\2\2\2G\3\2\2\2"+
|
||||
"\2I\3\2\2\2\2K\3\2\2\2\2M\3\2\2\2\2O\3\2\2\2\2Q\3\2\2\2\2S\3\2\2\2\2U"+
|
||||
"\3\2\2\2\2W\3\2\2\2\2Y\3\2\2\2\2[\3\2\2\2\2]\3\2\2\2\2_\3\2\2\2\2a\3\2"+
|
||||
"\2\2\2c\3\2\2\2\2e\3\2\2\2\2g\3\2\2\2\2i\3\2\2\2\2k\3\2\2\2\2m\3\2\2\2"+
|
||||
"\2o\3\2\2\2\2q\3\2\2\2\2s\3\2\2\2\2u\3\2\2\2\2w\3\2\2\2\2y\3\2\2\2\2{"+
|
||||
"\3\2\2\2\2}\3\2\2\2\2\177\3\2\2\2\2\u0081\3\2\2\2\2\u0083\3\2\2\2\2\u0085"+
|
||||
"\3\2\2\2\2\u0087\3\2\2\2\2\u0089\3\2\2\2\2\u008b\3\2\2\2\2\u008d\3\2\2"+
|
||||
"\2\2\u008f\3\2\2\2\2\u0091\3\2\2\2\2\u0093\3\2\2\2\2\u0095\3\2\2\2\2\u0097"+
|
||||
"\3\2\2\2\2\u0099\3\2\2\2\2\u009b\3\2\2\2\2\u009d\3\2\2\2\2\u00a5\3\2\2"+
|
||||
"\2\2\u00ab\3\2\2\2\2\u00ad\3\2\2\2\2\u00af\3\2\2\2\2\u00b1\3\2\2\2\3\u00b3"+
|
||||
"\3\2\2\2\5\u00ba\3\2\2\2\7\u00bc\3\2\2\2\t\u00be\3\2\2\2\13\u00c0\3\2"+
|
||||
"\2\2\r\u00c2\3\2\2\2\17\u00c4\3\2\2\2\21\u00c6\3\2\2\2\23\u00ce\3\2\2"+
|
||||
"\2\25\u00d8\3\2\2\2\27\u00e0\3\2\2\2\31\u00e6\3\2\2\2\33\u00e8\3\2\2\2"+
|
||||
"\35\u00ea\3\2\2\2\37\u00f0\3\2\2\2!\u00f7\3\2\2\2#\u00fd\3\2\2\2%\u0106"+
|
||||
"\3\2\2\2\'\u010d\3\2\2\2)\u0110\3\2\2\2+\u0115\3\2\2\2-\u011b\3\2\2\2"+
|
||||
"/\u011e\3\2\2\2\61\u0122\3\2\2\2\63\u0129\3\2\2\2\65\u012d\3\2\2\2\67"+
|
||||
"\u0130\3\2\2\29\u0137\3\2\2\2;\u0139\3\2\2\2=\u013b\3\2\2\2?\u013d\3\2"+
|
||||
"\2\2A\u0140\3\2\2\2C\u0143\3\2\2\2E\u0145\3\2\2\2G\u0147\3\2\2\2I\u0149"+
|
||||
"\3\2\2\2K\u014b\3\2\2\2M\u014d\3\2\2\2O\u0150\3\2\2\2Q\u0153\3\2\2\2S"+
|
||||
"\u0155\3\2\2\2U\u0157\3\2\2\2W\u0159\3\2\2\2Y\u015b\3\2\2\2[\u015e\3\2"+
|
||||
"\2\2]\u0161\3\2\2\2_\u0164\3\2\2\2a\u0167\3\2\2\2c\u0169\3\2\2\2e\u016b"+
|
||||
"\3\2\2\2g\u016e\3\2\2\2i\u0171\3\2\2\2k\u0174\3\2\2\2m\u0177\3\2\2\2o"+
|
||||
"\u017a\3\2\2\2q\u017d\3\2\2\2s\u0180\3\2\2\2u\u0184\3\2\2\2w\u0188\3\2"+
|
||||
"\2\2y\u018b\3\2\2\2{\u018e\3\2\2\2}\u0191\3\2\2\2\177\u0197\3\2\2\2\u0081"+
|
||||
"\u0277\3\2\2\2\u0083\u0279\3\2\2\2\u0085\u029a\3\2\2\2\u0087\u029c\3\2"+
|
||||
"\2\2\u0089\u02a7\3\2\2\2\u008b\u02b8\3\2\2\2\u008d\u02bc\3\2\2\2\u008f"+
|
||||
"\u02c1\3\2\2\2\u0091\u02c8\3\2\2\2\u0093\u02d9\3\2\2\2\u0095\u02e7\3\2"+
|
||||
"\2\2\u0097\u02f8\3\2\2\2\u0099\u0307\3\2\2\2\u009b\u030a\3\2\2\2\u009d"+
|
||||
"\u0313\3\2\2\2\u009f\u031a\3\2\2\2\u00a1\u031c\3\2\2\2\u00a3\u031e\3\2"+
|
||||
"\2\2\u00a5\u0320\3\2\2\2\u00a7\u0327\3\2\2\2\u00a9\u0329\3\2\2\2\u00ab"+
|
||||
"\u032b\3\2\2\2\u00ad\u0338\3\2\2\2\u00af\u033e\3\2\2\2\u00b1\u0349\3\2"+
|
||||
"\2\2\u00b3\u00b4\7k\2\2\u00b4\u00b5\7o\2\2\u00b5\u00b6\7r\2\2\u00b6\u00b7"+
|
||||
"\7q\2\2\u00b7\u00b8\7t\2\2\u00b8\u00b9\7v\2\2\u00b9\4\3\2\2\2\u00ba\u00bb"+
|
||||
"\7?\2\2\u00bb\6\3\2\2\2\u00bc\u00bd\7=\2\2\u00bd\b\3\2\2\2\u00be\u00bf"+
|
||||
"\7*\2\2\u00bf\n\3\2\2\2\u00c0\u00c1\7+\2\2\u00c1\f\3\2\2\2\u00c2\u00c3"+
|
||||
"\7}\2\2\u00c3\16\3\2\2\2\u00c4\u00c5\7\177\2\2\u00c5\20\3\2\2\2\u00c6"+
|
||||
"\u00c7\7m\2\2\u00c7\u00c8\7k\2\2\u00c8\u00c9\7e\2\2\u00c9\u00ca\7m\2\2"+
|
||||
"\u00ca\u00cb\7c\2\2\u00cb\u00cc\7u\2\2\u00cc\u00cd\7o\2\2\u00cd\22\3\2"+
|
||||
"\2\2\u00ce\u00cf\7t\2\2\u00cf\u00d0\7g\2\2\u00d0\u00d1\7u\2\2\u00d1\u00d2"+
|
||||
"\7q\2\2\u00d2\u00d3\7w\2\2\u00d3\u00d4\7t\2\2\u00d4\u00d5\7e\2\2\u00d5"+
|
||||
"\u00d6\7g\2\2\u00d6\u00d7\7u\2\2\u00d7\24\3\2\2\2\u00d8\u00d9\7e\2\2\u00d9"+
|
||||
"\u00da\7n\2\2\u00da\u00db\7q\2\2\u00db\u00dc\7d\2\2\u00dc\u00dd\7d\2\2"+
|
||||
"\u00dd\u00de\7g\2\2\u00de\u00df\7t\2\2\u00df\26\3\2\2\2\u00e0\u00e1\7"+
|
||||
"r\2\2\u00e1\u00e2\7c\2\2\u00e2\u00e3\7t\2\2\u00e3\u00e4\7c\2\2\u00e4\u00e5"+
|
||||
"\7o\2\2\u00e5\30\3\2\2\2\u00e6\u00e7\7.\2\2\u00e7\32\3\2\2\2\u00e8\u00e9"+
|
||||
"\7<\2\2\u00e9\34\3\2\2\2\u00ea\u00eb\7e\2\2\u00eb\u00ec\7q\2\2\u00ec\u00ed"+
|
||||
"\7p\2\2\u00ed\u00ee\7u\2\2\u00ee\u00ef\7v\2\2\u00ef\36\3\2\2\2\u00f0\u00f1"+
|
||||
"\7g\2\2\u00f1\u00f2\7z\2\2\u00f2\u00f3\7v\2\2\u00f3\u00f4\7g\2\2\u00f4"+
|
||||
"\u00f5\7t\2\2\u00f5\u00f6\7p\2\2\u00f6 \3\2\2\2\u00f7\u00f8\7c\2\2\u00f8"+
|
||||
"\u00f9\7n\2\2\u00f9\u00fa\7k\2\2\u00fa\u00fb\7i\2\2\u00fb\u00fc\7p\2\2"+
|
||||
"\u00fc\"\3\2\2\2\u00fd\u00fe\7t\2\2\u00fe\u00ff\7g\2\2\u00ff\u0100\7i"+
|
||||
"\2\2\u0100\u0101\7k\2\2\u0101\u0102\7u\2\2\u0102\u0103\7v\2\2\u0103\u0104"+
|
||||
"\7g\2\2\u0104\u0105\7t\2\2\u0105$\3\2\2\2\u0106\u0107\7k\2\2\u0107\u0108"+
|
||||
"\7p\2\2\u0108\u0109\7n\2\2\u0109\u010a\7k\2\2\u010a\u010b\7p\2\2\u010b"+
|
||||
"\u010c\7g\2\2\u010c&\3\2\2\2\u010d\u010e\7k\2\2\u010e\u010f\7h\2\2\u010f"+
|
||||
"(\3\2\2\2\u0110\u0111\7g\2\2\u0111\u0112\7n\2\2\u0112\u0113\7u\2\2\u0113"+
|
||||
"\u0114\7g\2\2\u0114*\3\2\2\2\u0115\u0116\7y\2\2\u0116\u0117\7j\2\2\u0117"+
|
||||
"\u0118\7k\2\2\u0118\u0119\7n\2\2\u0119\u011a\7g\2\2\u011a,\3\2\2\2\u011b"+
|
||||
"\u011c\7f\2\2\u011c\u011d\7q\2\2\u011d.\3\2\2\2\u011e\u011f\7h\2\2\u011f"+
|
||||
"\u0120\7q\2\2\u0120\u0121\7t\2\2\u0121\60\3\2\2\2\u0122\u0123\7t\2\2\u0123"+
|
||||
"\u0124\7g\2\2\u0124\u0125\7v\2\2\u0125\u0126\7w\2\2\u0126\u0127\7t\2\2"+
|
||||
"\u0127\u0128\7p\2\2\u0128\62\3\2\2\2\u0129\u012a\7c\2\2\u012a\u012b\7"+
|
||||
"u\2\2\u012b\u012c\7o\2\2\u012c\64\3\2\2\2\u012d\u012e\7\60\2\2\u012e\u012f"+
|
||||
"\7\60\2\2\u012f\66\3\2\2\2\u0130\u0131\7u\2\2\u0131\u0132\7k\2\2\u0132"+
|
||||
"\u0133\7i\2\2\u0133\u0134\7p\2\2\u0134\u0135\7g\2\2\u0135\u0136\7f\2\2"+
|
||||
"\u01368\3\2\2\2\u0137\u0138\7,\2\2\u0138:\3\2\2\2\u0139\u013a\7]\2\2\u013a"+
|
||||
"<\3\2\2\2\u013b\u013c\7_\2\2\u013c>\3\2\2\2\u013d\u013e\7/\2\2\u013e\u013f"+
|
||||
"\7/\2\2\u013f@\3\2\2\2\u0140\u0141\7-\2\2\u0141\u0142\7-\2\2\u0142B\3"+
|
||||
"\2\2\2\u0143\u0144\7-\2\2\u0144D\3\2\2\2\u0145\u0146\7/\2\2\u0146F\3\2"+
|
||||
"\2\2\u0147\u0148\7#\2\2\u0148H\3\2\2\2\u0149\u014a\7(\2\2\u014aJ\3\2\2"+
|
||||
"\2\u014b\u014c\7\u0080\2\2\u014cL\3\2\2\2\u014d\u014e\7@\2\2\u014e\u014f"+
|
||||
"\7@\2\2\u014fN\3\2\2\2\u0150\u0151\7>\2\2\u0151\u0152\7>\2\2\u0152P\3"+
|
||||
"\2\2\2\u0153\u0154\7\61\2\2\u0154R\3\2\2\2\u0155\u0156\7\'\2\2\u0156T"+
|
||||
"\3\2\2\2\u0157\u0158\7>\2\2\u0158V\3\2\2\2\u0159\u015a\7@\2\2\u015aX\3"+
|
||||
"\2\2\2\u015b\u015c\7?\2\2\u015c\u015d\7?\2\2\u015dZ\3\2\2\2\u015e\u015f"+
|
||||
"\7#\2\2\u015f\u0160\7?\2\2\u0160\\\3\2\2\2\u0161\u0162\7>\2\2\u0162\u0163"+
|
||||
"\7?\2\2\u0163^\3\2\2\2\u0164\u0165\7@\2\2\u0165\u0166\7?\2\2\u0166`\3"+
|
||||
"\2\2\2\u0167\u0168\7`\2\2\u0168b\3\2\2\2\u0169\u016a\7~\2\2\u016ad\3\2"+
|
||||
"\2\2\u016b\u016c\7(\2\2\u016c\u016d\7(\2\2\u016df\3\2\2\2\u016e\u016f"+
|
||||
"\7~\2\2\u016f\u0170\7~\2\2\u0170h\3\2\2\2\u0171\u0172\7-\2\2\u0172\u0173"+
|
||||
"\7?\2\2\u0173j\3\2\2\2\u0174\u0175\7/\2\2\u0175\u0176\7?\2\2\u0176l\3"+
|
||||
"\2\2\2\u0177\u0178\7,\2\2\u0178\u0179\7?\2\2\u0179n\3\2\2\2\u017a\u017b"+
|
||||
"\7\61\2\2\u017b\u017c\7?\2\2\u017cp\3\2\2\2\u017d\u017e\7\'\2\2\u017e"+
|
||||
"\u017f\7?\2\2\u017fr\3\2\2\2\u0180\u0181\7>\2\2\u0181\u0182\7>\2\2\u0182"+
|
||||
"\u0183\7?\2\2\u0183t\3\2\2\2\u0184\u0185\7@\2\2\u0185\u0186\7@\2\2\u0186"+
|
||||
"\u0187\7?\2\2\u0187v\3\2\2\2\u0188\u0189\7(\2\2\u0189\u018a\7?\2\2\u018a"+
|
||||
"x\3\2\2\2\u018b\u018c\7~\2\2\u018c\u018d\7?\2\2\u018dz\3\2\2\2\u018e\u018f"+
|
||||
"\7`\2\2\u018f\u0190\7?\2\2\u0190|\3\2\2\2\u0191\u0192\7\60\2\2\u0192\u0193"+
|
||||
"\7d\2\2\u0193\u0194\7{\2\2\u0194\u0195\7v\2\2\u0195\u0196\7g\2\2\u0196"+
|
||||
"~\3\2\2\2\u0197\u0198\7%\2\2\u0198\u0080\3\2\2\2\u0199\u019a\7d\2\2\u019a"+
|
||||
"\u019b\7t\2\2\u019b\u0278\7m\2\2\u019c\u019d\7q\2\2\u019d\u019e\7t\2\2"+
|
||||
"\u019e\u0278\7c\2\2\u019f\u01a0\7m\2\2\u01a0\u01a1\7k\2\2\u01a1\u0278"+
|
||||
"\7n\2\2\u01a2\u01a3\7u\2\2\u01a3\u01a4\7n\2\2\u01a4\u0278\7q\2\2\u01a5"+
|
||||
"\u01a6\7p\2\2\u01a6\u01a7\7q\2\2\u01a7\u0278\7r\2\2\u01a8\u01a9\7c\2\2"+
|
||||
"\u01a9\u01aa\7u\2\2\u01aa\u0278\7n\2\2\u01ab\u01ac\7r\2\2\u01ac\u01ad"+
|
||||
"\7j\2\2\u01ad\u0278\7r\2\2\u01ae\u01af\7c\2\2\u01af\u01b0\7p\2\2\u01b0"+
|
||||
"\u0278\7e\2\2\u01b1\u01b2\7d\2\2\u01b2\u01b3\7r\2\2\u01b3\u0278\7n\2\2"+
|
||||
"\u01b4\u01b5\7e\2\2\u01b5\u01b6\7n\2\2\u01b6\u0278\7e\2\2\u01b7\u01b8"+
|
||||
"\7l\2\2\u01b8\u01b9\7u\2\2\u01b9\u0278\7t\2\2\u01ba\u01bb\7c\2\2\u01bb"+
|
||||
"\u01bc\7p\2\2\u01bc\u0278\7f\2\2\u01bd\u01be\7t\2\2\u01be\u01bf\7n\2\2"+
|
||||
"\u01bf\u0278\7c\2\2\u01c0\u01c1\7d\2\2\u01c1\u01c2\7k\2\2\u01c2\u0278"+
|
||||
"\7v\2\2\u01c3\u01c4\7t\2\2\u01c4\u01c5\7q\2\2\u01c5\u0278\7n\2\2\u01c6"+
|
||||
"\u01c7\7r\2\2\u01c7\u01c8\7n\2\2\u01c8\u0278\7c\2\2\u01c9\u01ca\7r\2\2"+
|
||||
"\u01ca\u01cb\7n\2\2\u01cb\u0278\7r\2\2\u01cc\u01cd\7d\2\2\u01cd\u01ce"+
|
||||
"\7o\2\2\u01ce\u0278\7k\2\2\u01cf\u01d0\7u\2\2\u01d0\u01d1\7g\2\2\u01d1"+
|
||||
"\u0278\7e\2\2\u01d2\u01d3\7t\2\2\u01d3\u01d4\7v\2\2\u01d4\u0278\7k\2\2"+
|
||||
"\u01d5\u01d6\7g\2\2\u01d6\u01d7\7q\2\2\u01d7\u0278\7t\2\2\u01d8\u01d9"+
|
||||
"\7u\2\2\u01d9\u01da\7t\2\2\u01da\u0278\7g\2\2\u01db\u01dc\7n\2\2\u01dc"+
|
||||
"\u01dd\7u\2\2\u01dd\u0278\7t\2\2\u01de\u01df\7r\2\2\u01df\u01e0\7j\2\2"+
|
||||
"\u01e0\u0278\7c\2\2\u01e1\u01e2\7c\2\2\u01e2\u01e3\7n\2\2\u01e3\u0278"+
|
||||
"\7t\2\2\u01e4\u01e5\7l\2\2\u01e5\u01e6\7o\2\2\u01e6\u0278\7r\2\2\u01e7"+
|
||||
"\u01e8\7d\2\2\u01e8\u01e9\7x\2\2\u01e9\u0278\7e\2\2\u01ea\u01eb\7e\2\2"+
|
||||
"\u01eb\u01ec\7n\2\2\u01ec\u0278\7k\2\2\u01ed\u01ee\7t\2\2\u01ee\u01ef"+
|
||||
"\7v\2\2\u01ef\u0278\7u\2\2\u01f0\u01f1\7c\2\2\u01f1\u01f2\7f\2\2\u01f2"+
|
||||
"\u0278\7e\2\2\u01f3\u01f4\7t\2\2\u01f4\u01f5\7t\2\2\u01f5\u0278\7c\2\2"+
|
||||
"\u01f6\u01f7\7d\2\2\u01f7\u01f8\7x\2\2\u01f8\u0278\7u\2\2\u01f9\u01fa"+
|
||||
"\7u\2\2\u01fa\u01fb\7g\2\2\u01fb\u0278\7k\2\2\u01fc\u01fd\7u\2\2\u01fd"+
|
||||
"\u01fe\7c\2\2\u01fe\u0278\7z\2\2\u01ff\u0200\7u\2\2\u0200\u0201\7v\2\2"+
|
||||
"\u0201\u0278\7{\2\2\u0202\u0203\7u\2\2\u0203\u0204\7v\2\2\u0204\u0278"+
|
||||
"\7c\2\2\u0205\u0206\7u\2\2\u0206\u0207\7v\2\2\u0207\u0278\7z\2\2\u0208"+
|
||||
"\u0209\7f\2\2\u0209\u020a\7g\2\2\u020a\u0278\7{\2\2\u020b\u020c\7v\2\2"+
|
||||
"\u020c\u020d\7z\2\2\u020d\u0278\7c\2\2\u020e\u020f\7z\2\2\u020f\u0210"+
|
||||
"\7c\2\2\u0210\u0278\7c\2\2\u0211\u0212\7d\2\2\u0212\u0213\7e\2\2\u0213"+
|
||||
"\u0278\7e\2\2\u0214\u0215\7c\2\2\u0215\u0216\7j\2\2\u0216\u0278\7z\2\2"+
|
||||
"\u0217\u0218\7v\2\2\u0218\u0219\7{\2\2\u0219\u0278\7c\2\2\u021a\u021b"+
|
||||
"\7v\2\2\u021b\u021c\7z\2\2\u021c\u0278\7u\2\2\u021d\u021e\7v\2\2\u021e"+
|
||||
"\u021f\7c\2\2\u021f\u0278\7u\2\2\u0220\u0221\7u\2\2\u0221\u0222\7j\2\2"+
|
||||
"\u0222\u0278\7{\2\2\u0223\u0224\7u\2\2\u0224\u0225\7j\2\2\u0225\u0278"+
|
||||
"\7z\2\2\u0226\u0227\7n\2\2\u0227\u0228\7f\2\2\u0228\u0278\7{\2\2\u0229"+
|
||||
"\u022a\7n\2\2\u022a\u022b\7f\2\2\u022b\u0278\7c\2\2\u022c\u022d\7n\2\2"+
|
||||
"\u022d\u022e\7f\2\2\u022e\u0278\7z\2\2\u022f\u0230\7n\2\2\u0230\u0231"+
|
||||
"\7c\2\2\u0231\u0278\7z\2\2\u0232\u0233\7v\2\2\u0233\u0234\7c\2\2\u0234"+
|
||||
"\u0278\7{\2\2\u0235\u0236\7v\2\2\u0236\u0237\7c\2\2\u0237\u0278\7z\2\2"+
|
||||
"\u0238\u0239\7d\2\2\u0239\u023a\7e\2\2\u023a\u0278\7u\2\2\u023b\u023c"+
|
||||
"\7e\2\2\u023c\u023d\7n\2\2\u023d\u0278\7x\2\2\u023e\u023f\7v\2\2\u023f"+
|
||||
"\u0240\7u\2\2\u0240\u0278\7z\2\2\u0241\u0242\7n\2\2\u0242\u0243\7c\2\2"+
|
||||
"\u0243\u0278\7u\2\2\u0244\u0245\7e\2\2\u0245\u0246\7r\2\2\u0246\u0278"+
|
||||
"\7{\2\2\u0247\u0248\7e\2\2\u0248\u0249\7o\2\2\u0249\u0278\7r\2\2\u024a"+
|
||||
"\u024b\7e\2\2\u024b\u024c\7r\2\2\u024c\u0278\7z\2\2\u024d\u024e\7f\2\2"+
|
||||
"\u024e\u024f\7e\2\2\u024f\u0278\7r\2\2\u0250\u0251\7f\2\2\u0251\u0252"+
|
||||
"\7g\2\2\u0252\u0278\7e\2\2\u0253\u0254\7k\2\2\u0254\u0255\7p\2\2\u0255"+
|
||||
"\u0278\7e\2\2\u0256\u0257\7c\2\2\u0257\u0258\7z\2\2\u0258\u0278\7u\2\2"+
|
||||
"\u0259\u025a\7d\2\2\u025a\u025b\7p\2\2\u025b\u0278\7g\2\2\u025c\u025d"+
|
||||
"\7e\2\2\u025d\u025e\7n\2\2\u025e\u0278\7f\2\2\u025f\u0260\7u\2\2\u0260"+
|
||||
"\u0261\7d\2\2\u0261\u0278\7e\2\2\u0262\u0263\7k\2\2\u0263\u0264\7u\2\2"+
|
||||
"\u0264\u0278\7e\2\2\u0265\u0266\7k\2\2\u0266\u0267\7p\2\2\u0267\u0278"+
|
||||
"\7z\2\2\u0268\u0269\7d\2\2\u0269\u026a\7g\2\2\u026a\u0278\7s\2\2\u026b"+
|
||||
"\u026c\7u\2\2\u026c\u026d\7g\2\2\u026d\u0278\7f\2\2\u026e\u026f\7f\2\2"+
|
||||
"\u026f\u0270\7g\2\2\u0270\u0278\7z\2\2\u0271\u0272\7k\2\2\u0272\u0273"+
|
||||
"\7p\2\2\u0273\u0278\7{\2\2\u0274\u0275\7t\2\2\u0275\u0276\7q\2\2\u0276"+
|
||||
"\u0278\7t\2\2\u0277\u0199\3\2\2\2\u0277\u019c\3\2\2\2\u0277\u019f\3\2"+
|
||||
"\2\2\u0277\u01a2\3\2\2\2\u0277\u01a5\3\2\2\2\u0277\u01a8\3\2\2\2\u0277"+
|
||||
"\u01ab\3\2\2\2\u0277\u01ae\3\2\2\2\u0277\u01b1\3\2\2\2\u0277\u01b4\3\2"+
|
||||
"\2\2\u0277\u01b7\3\2\2\2\u0277\u01ba\3\2\2\2\u0277\u01bd\3\2\2\2\u0277"+
|
||||
"\u01c0\3\2\2\2\u0277\u01c3\3\2\2\2\u0277\u01c6\3\2\2\2\u0277\u01c9\3\2"+
|
||||
"\2\2\u0277\u01cc\3\2\2\2\u0277\u01cf\3\2\2\2\u0277\u01d2\3\2\2\2\u0277"+
|
||||
"\u01d5\3\2\2\2\u0277\u01d8\3\2\2\2\u0277\u01db\3\2\2\2\u0277\u01de\3\2"+
|
||||
"\2\2\u0277\u01e1\3\2\2\2\u0277\u01e4\3\2\2\2\u0277\u01e7\3\2\2\2\u0277"+
|
||||
"\u01ea\3\2\2\2\u0277\u01ed\3\2\2\2\u0277\u01f0\3\2\2\2\u0277\u01f3\3\2"+
|
||||
"\2\2\u0277\u01f6\3\2\2\2\u0277\u01f9\3\2\2\2\u0277\u01fc\3\2\2\2\u0277"+
|
||||
"\u01ff\3\2\2\2\u0277\u0202\3\2\2\2\u0277\u0205\3\2\2\2\u0277\u0208\3\2"+
|
||||
"\2\2\u0277\u020b\3\2\2\2\u0277\u020e\3\2\2\2\u0277\u0211\3\2\2\2\u0277"+
|
||||
"\u0214\3\2\2\2\u0277\u0217\3\2\2\2\u0277\u021a\3\2\2\2\u0277\u021d\3\2"+
|
||||
"\2\2\u0277\u0220\3\2\2\2\u0277\u0223\3\2\2\2\u0277\u0226\3\2\2\2\u0277"+
|
||||
"\u0229\3\2\2\2\u0277\u022c\3\2\2\2\u0277\u022f\3\2\2\2\u0277\u0232\3\2"+
|
||||
"\2\2\u0277\u0235\3\2\2\2\u0277\u0238\3\2\2\2\u0277\u023b\3\2\2\2\u0277"+
|
||||
"\u023e\3\2\2\2\u0277\u0241\3\2\2\2\u0277\u0244\3\2\2\2\u0277\u0247\3\2"+
|
||||
"\2\2\u0277\u024a\3\2\2\2\u0277\u024d\3\2\2\2\u0277\u0250\3\2\2\2\u0277"+
|
||||
"\u0253\3\2\2\2\u0277\u0256\3\2\2\2\u0277\u0259\3\2\2\2\u0277\u025c\3\2"+
|
||||
"\2\2\u0277\u025f\3\2\2\2\u0277\u0262\3\2\2\2\u0277\u0265\3\2\2\2\u0277"+
|
||||
"\u0268\3\2\2\2\u0277\u026b\3\2\2\2\u0277\u026e\3\2\2\2\u0277\u0271\3\2"+
|
||||
"\2\2\u0277\u0274\3\2\2\2\u0278\u0082\3\2\2\2\u0279\u027a\7}\2\2\u027a"+
|
||||
"\u027b\7}\2\2\u027b\u027f\3\2\2\2\u027c\u027e\13\2\2\2\u027d\u027c\3\2"+
|
||||
"\2\2\u027e\u0281\3\2\2\2\u027f\u0280\3\2\2\2\u027f\u027d\3\2\2\2\u0280"+
|
||||
"\u0282\3\2\2\2\u0281\u027f\3\2\2\2\u0282\u0283\7\177\2\2\u0283\u0284\7"+
|
||||
"\177\2\2\u0284\u0084\3\2\2\2\u0285\u0286\7d\2\2\u0286\u0287\7{\2\2\u0287"+
|
||||
"\u0288\7v\2\2\u0288\u029b\7g\2\2\u0289\u028a\7y\2\2\u028a\u028b\7q\2\2"+
|
||||
"\u028b\u028c\7t\2\2\u028c\u029b\7f\2\2\u028d\u028e\7f\2\2\u028e\u028f"+
|
||||
"\7y\2\2\u028f\u0290\7q\2\2\u0290\u0291\7t\2\2\u0291\u029b\7f\2\2\u0292"+
|
||||
"\u0293\7d\2\2\u0293\u0294\7q\2\2\u0294\u0295\7q\2\2\u0295\u029b\7n\2\2"+
|
||||
"\u0296\u0297\7x\2\2\u0297\u0298\7q\2\2\u0298\u0299\7k\2\2\u0299\u029b"+
|
||||
"\7f\2\2\u029a\u0285\3\2\2\2\u029a\u0289\3\2\2\2\u029a\u028d\3\2\2\2\u029a"+
|
||||
"\u0292\3\2\2\2\u029a\u0296\3\2\2\2\u029b\u0086\3\2\2\2\u029c\u02a2\7$"+
|
||||
"\2\2\u029d\u029e\7^\2\2\u029e\u02a1\7$\2\2\u029f\u02a1\n\2\2\2\u02a0\u029d"+
|
||||
"\3\2\2\2\u02a0\u029f\3\2\2\2\u02a1\u02a4\3\2\2\2\u02a2\u02a0\3\2\2\2\u02a2"+
|
||||
"\u02a3\3\2\2\2\u02a3\u02a5\3\2\2\2\u02a4\u02a2\3\2\2\2\u02a5\u02a6\7$"+
|
||||
"\2\2\u02a6\u0088\3\2\2\2\u02a7\u02ab\7)\2\2\u02a8\u02a9\7^\2\2\u02a9\u02ac"+
|
||||
"\7)\2\2\u02aa\u02ac\n\3\2\2\u02ab\u02a8\3\2\2\2\u02ab\u02aa\3\2\2\2\u02ac"+
|
||||
"\u02ad\3\2\2\2\u02ad\u02ae\7)\2\2\u02ae\u008a\3\2\2\2\u02af\u02b0\7v\2"+
|
||||
"\2\u02b0\u02b1\7t\2\2\u02b1\u02b2\7w\2\2\u02b2\u02b9\7g\2\2\u02b3\u02b4"+
|
||||
"\7h\2\2\u02b4\u02b5\7c\2\2\u02b5\u02b6\7n\2\2\u02b6\u02b7\7u\2\2\u02b7"+
|
||||
"\u02b9\7g\2\2\u02b8\u02af\3\2\2\2\u02b8\u02b3\3\2\2\2\u02b9\u008c\3\2"+
|
||||
"\2\2\u02ba\u02bd\5\u008fH\2\u02bb\u02bd\5\u0097L\2\u02bc\u02ba\3\2\2\2"+
|
||||
"\u02bc\u02bb\3\2\2\2\u02bd\u008e\3\2\2\2\u02be\u02c2\5\u0091I\2\u02bf"+
|
||||
"\u02c2\5\u0093J\2\u02c0\u02c2\5\u0095K\2\u02c1\u02be\3\2\2\2\u02c1\u02bf"+
|
||||
"\3\2\2\2\u02c1\u02c0\3\2\2\2\u02c2\u0090\3\2\2\2\u02c3\u02c9\7\'\2\2\u02c4"+
|
||||
"\u02c5\7\62\2\2\u02c5\u02c9\7d\2\2\u02c6\u02c7\7\62\2\2\u02c7\u02c9\7"+
|
||||
"D\2\2\u02c8\u02c3\3\2\2\2\u02c8\u02c4\3\2\2\2\u02c8\u02c6\3\2\2\2\u02c9"+
|
||||
"\u02cd\3\2\2\2\u02ca\u02cc\5\u009fP\2\u02cb\u02ca\3\2\2\2\u02cc\u02cf"+
|
||||
"\3\2\2\2\u02cd\u02cb\3\2\2\2\u02cd\u02ce\3\2\2\2\u02ce\u02d0\3\2\2\2\u02cf"+
|
||||
"\u02cd\3\2\2\2\u02d0\u02d2\7\60\2\2\u02d1\u02d3\5\u009fP\2\u02d2\u02d1"+
|
||||
"\3\2\2\2\u02d3\u02d4\3\2\2\2\u02d4\u02d2\3\2\2\2\u02d4\u02d5\3\2\2\2\u02d5"+
|
||||
"\u0092\3\2\2\2\u02d6\u02d8\5\u00a1Q\2\u02d7\u02d6\3\2\2\2\u02d8\u02db"+
|
||||
"\3\2\2\2\u02d9\u02d7\3\2\2\2\u02d9\u02da\3\2\2\2\u02da\u02dc\3\2\2\2\u02db"+
|
||||
"\u02d9\3\2\2\2\u02dc\u02de\7\60\2\2\u02dd\u02df\5\u00a1Q\2\u02de\u02dd"+
|
||||
"\3\2\2\2\u02df\u02e0\3\2\2\2\u02e0\u02de\3\2\2\2\u02e0\u02e1\3\2\2\2\u02e1"+
|
||||
"\u0094\3\2\2\2\u02e2\u02e8\7&\2\2\u02e3\u02e4\7\62\2\2\u02e4\u02e8\7z"+
|
||||
"\2\2\u02e5\u02e6\7\62\2\2\u02e6\u02e8\7Z\2\2\u02e7\u02e2\3\2\2\2\u02e7"+
|
||||
"\u02e3\3\2\2\2\u02e7\u02e5\3\2\2\2\u02e8\u02ec\3\2\2\2\u02e9\u02eb\5\u00a3"+
|
||||
"R\2\u02ea\u02e9\3\2\2\2\u02eb\u02ee\3\2\2\2\u02ec\u02ea\3\2\2\2\u02ec"+
|
||||
"\u02ed\3\2\2\2\u02ed\u02ef\3\2\2\2\u02ee\u02ec\3\2\2\2\u02ef\u02f1\7\60"+
|
||||
"\2\2\u02f0\u02f2\5\u00a3R\2\u02f1\u02f0\3\2\2\2\u02f2\u02f3\3\2\2\2\u02f3"+
|
||||
"\u02f1\3\2\2\2\u02f3\u02f4\3\2\2\2\u02f4\u0096\3\2\2\2\u02f5\u02f9\5\u009b"+
|
||||
"N\2\u02f6\u02f9\5\u009dO\2\u02f7\u02f9\5\u0099M\2\u02f8\u02f5\3\2\2\2"+
|
||||
"\u02f8\u02f6\3\2\2\2\u02f8\u02f7\3\2\2\2\u02f9\u0098\3\2\2\2\u02fa\u02fb"+
|
||||
"\7\62\2\2\u02fb\u02fd\t\4\2\2\u02fc\u02fe\5\u009fP\2\u02fd\u02fc\3\2\2"+
|
||||
"\2\u02fe\u02ff\3\2\2\2\u02ff\u02fd\3\2\2\2\u02ff\u0300\3\2\2\2\u0300\u0308"+
|
||||
"\3\2\2\2\u0301\u0303\7\'\2\2\u0302\u0304\5\u009fP\2\u0303\u0302\3\2\2"+
|
||||
"\2\u0304\u0305\3\2\2\2\u0305\u0303\3\2\2\2\u0305\u0306\3\2\2\2\u0306\u0308"+
|
||||
"\3\2\2\2\u0307\u02fa\3\2\2\2\u0307\u0301\3\2\2\2\u0308\u009a\3\2\2\2\u0309"+
|
||||
"\u030b\5\u00a1Q\2\u030a\u0309\3\2\2\2\u030b\u030c\3\2\2\2\u030c\u030a"+
|
||||
"\3\2\2\2\u030c\u030d\3\2\2\2\u030d\u009c\3\2\2\2\u030e\u0314\7&\2\2\u030f"+
|
||||
"\u0310\7\62\2\2\u0310\u0314\7z\2\2\u0311\u0312\7\62\2\2\u0312\u0314\7"+
|
||||
"Z\2\2\u0313\u030e\3\2\2\2\u0313\u030f\3\2\2\2\u0313\u0311\3\2\2\2\u0314"+
|
||||
"\u0316\3\2\2\2\u0315\u0317\5\u00a3R\2\u0316\u0315\3\2\2\2\u0317\u0318"+
|
||||
"\3\2\2\2\u0318\u0316\3\2\2\2\u0318\u0319\3\2\2\2\u0319\u009e\3\2\2\2\u031a"+
|
||||
"\u031b\t\5\2\2\u031b\u00a0\3\2\2\2\u031c\u031d\t\6\2\2\u031d\u00a2\3\2"+
|
||||
"\2\2\u031e\u031f\t\7\2\2\u031f\u00a4\3\2\2\2\u0320\u0324\5\u00a7T\2\u0321"+
|
||||
"\u0323\5\u00a9U\2\u0322\u0321\3\2\2\2\u0323\u0326\3\2\2\2\u0324\u0322"+
|
||||
"\3\2\2\2\u0324\u0325\3\2\2\2\u0325\u00a6\3\2\2\2\u0326\u0324\3\2\2\2\u0327"+
|
||||
"\u0328\t\b\2\2\u0328\u00a8\3\2\2\2\u0329\u032a\t\t\2\2\u032a\u00aa\3\2"+
|
||||
"\2\2\u032b\u032f\7#\2\2\u032c\u032e\5\u00a9U\2\u032d\u032c\3\2\2\2\u032e"+
|
||||
"\u0331\3\2\2\2\u032f\u032d\3\2\2\2\u032f\u0330\3\2\2\2\u0330\u0333\3\2"+
|
||||
"\2\2\u0331\u032f\3\2\2\2\u0332\u0334\t\n\2\2\u0333\u0332\3\2\2\2\u0334"+
|
||||
"\u0335\3\2\2\2\u0335\u0333\3\2\2\2\u0335\u0336\3\2\2\2\u0336\u00ac\3\2"+
|
||||
"\2\2\u0337\u0339\t\13\2\2\u0338\u0337\3\2\2\2\u0339\u033a\3\2\2\2\u033a"+
|
||||
"\u0338\3\2\2\2\u033a\u033b\3\2\2\2\u033b\u033c\3\2\2\2\u033c\u033d\bW"+
|
||||
"\2\2\u033d\u00ae\3\2\2\2\u033e\u033f\7\61\2\2\u033f\u0340\7\61\2\2\u0340"+
|
||||
"\u0344\3\2\2\2\u0341\u0343\n\f\2\2\u0342\u0341\3\2\2\2\u0343\u0346\3\2"+
|
||||
"\2\2\u0344\u0342\3\2\2\2\u0344\u0345\3\2\2\2\u0345\u0347\3\2\2\2\u0346"+
|
||||
"\u0344\3\2\2\2\u0347\u0348\bX\2\2\u0348\u00b0\3\2\2\2\u0349\u034a\7\61"+
|
||||
"\2\2\u034a\u034b\7,\2\2\u034b\u034f\3\2\2\2\u034c\u034e\13\2\2\2\u034d"+
|
||||
"\u034c\3\2\2\2\u034e\u0351\3\2\2\2\u034f\u0350\3\2\2\2\u034f\u034d\3\2"+
|
||||
"\2\2\u0350\u0352\3\2\2\2\u0351\u034f\3\2\2\2\u0352\u0353\7,\2\2\u0353"+
|
||||
"\u0354\7\61\2\2\u0354\u0355\3\2\2\2\u0355\u0356\bY\2\2\u0356\u00b2\3\2"+
|
||||
"\2\2!\2\u0277\u027f\u029a\u02a0\u02a2\u02ab\u02b8\u02bc\u02c1\u02c8\u02cd"+
|
||||
"\u02d4\u02d9\u02e0\u02e7\u02ec\u02f3\u02f8\u02ff\u0305\u0307\u030c\u0313"+
|
||||
"\u0318\u0324\u032f\u0335\u033a\u0344\u034f\3\b\2\2";
|
||||
"\4U\tU\4V\tV\4W\tW\4X\tX\4Y\tY\4Z\tZ\4[\t[\4\\\t\\\3\2\3\2\3\2\3\2\3\2"+
|
||||
"\3\2\3\2\3\3\3\3\3\4\3\4\3\5\3\5\3\6\3\6\3\7\3\7\3\b\3\b\3\t\3\t\3\t\3"+
|
||||
"\t\3\t\3\t\3\t\3\t\3\n\3\n\3\n\3\n\3\n\3\n\3\n\3\n\3\n\3\n\3\13\3\13\3"+
|
||||
"\13\3\13\3\13\3\13\3\13\3\13\3\f\3\f\3\f\3\f\3\f\3\f\3\r\3\r\3\r\3\r\3"+
|
||||
"\r\3\r\3\16\3\16\3\16\3\16\3\16\3\16\3\16\3\17\3\17\3\17\3\17\3\17\3\17"+
|
||||
"\3\17\3\17\3\17\3\20\3\20\3\20\3\20\3\20\3\20\3\20\3\21\3\21\3\22\3\22"+
|
||||
"\3\23\3\23\3\23\3\23\3\23\3\23\3\24\3\24\3\24\3\24\3\24\3\24\3\24\3\25"+
|
||||
"\3\25\3\25\3\25\3\25\3\25\3\26\3\26\3\26\3\26\3\26\3\26\3\26\3\26\3\26"+
|
||||
"\3\27\3\27\3\27\3\30\3\30\3\30\3\30\3\30\3\31\3\31\3\31\3\31\3\31\3\31"+
|
||||
"\3\32\3\32\3\32\3\33\3\33\3\33\3\33\3\34\3\34\3\34\3\34\3\34\3\34\3\34"+
|
||||
"\3\35\3\35\3\35\3\35\3\36\3\36\3\36\3\37\3\37\3\37\3\37\3\37\3\37\3\37"+
|
||||
"\3 \3 \3!\3!\3\"\3\"\3#\3#\3#\3$\3$\3$\3%\3%\3&\3&\3\'\3\'\3(\3(\3)\3"+
|
||||
")\3*\3*\3*\3+\3+\3+\3,\3,\3-\3-\3.\3.\3/\3/\3\60\3\60\3\60\3\61\3\61\3"+
|
||||
"\61\3\62\3\62\3\62\3\63\3\63\3\63\3\64\3\64\3\65\3\65\3\66\3\66\3\66\3"+
|
||||
"\67\3\67\3\67\38\38\38\39\39\39\3:\3:\3:\3;\3;\3;\3<\3<\3<\3=\3=\3=\3"+
|
||||
"=\3>\3>\3>\3>\3?\3?\3?\3@\3@\3@\3A\3A\3A\3B\3B\3B\3B\3B\3B\3C\3C\3D\3"+
|
||||
"D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3"+
|
||||
"D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3"+
|
||||
"D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3"+
|
||||
"D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3"+
|
||||
"D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3"+
|
||||
"D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3"+
|
||||
"D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3"+
|
||||
"D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3"+
|
||||
"D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3"+
|
||||
"D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\3D\5D\u0294\nD\3E\3E\3E\3E\7E\u029a"+
|
||||
"\nE\fE\16E\u029d\13E\3E\3E\3E\3F\3F\3F\3F\3F\3F\3F\3F\3F\3F\3F\3F\3F\3"+
|
||||
"F\3F\3F\3F\3F\3F\3F\3F\5F\u02b7\nF\3G\3G\3G\3G\7G\u02bd\nG\fG\16G\u02c0"+
|
||||
"\13G\3G\3G\3H\3H\3H\3H\5H\u02c8\nH\3H\3H\3I\3I\3I\3I\3I\3I\3I\3I\3I\5"+
|
||||
"I\u02d5\nI\3J\3J\5J\u02d9\nJ\3K\3K\3K\5K\u02de\nK\3L\3L\3L\3L\3L\5L\u02e5"+
|
||||
"\nL\3L\7L\u02e8\nL\fL\16L\u02eb\13L\3L\3L\6L\u02ef\nL\rL\16L\u02f0\3M"+
|
||||
"\7M\u02f4\nM\fM\16M\u02f7\13M\3M\3M\6M\u02fb\nM\rM\16M\u02fc\3N\3N\3N"+
|
||||
"\3N\3N\5N\u0304\nN\3N\7N\u0307\nN\fN\16N\u030a\13N\3N\3N\6N\u030e\nN\r"+
|
||||
"N\16N\u030f\3O\3O\3O\5O\u0315\nO\3P\3P\3P\6P\u031a\nP\rP\16P\u031b\3P"+
|
||||
"\3P\6P\u0320\nP\rP\16P\u0321\5P\u0324\nP\3Q\6Q\u0327\nQ\rQ\16Q\u0328\3"+
|
||||
"R\3R\3R\3R\3R\5R\u0330\nR\3R\6R\u0333\nR\rR\16R\u0334\3S\3S\3T\3T\3U\3"+
|
||||
"U\3V\3V\7V\u033f\nV\fV\16V\u0342\13V\3W\3W\3X\3X\3Y\3Y\7Y\u034a\nY\fY"+
|
||||
"\16Y\u034d\13Y\3Y\6Y\u0350\nY\rY\16Y\u0351\3Z\6Z\u0355\nZ\rZ\16Z\u0356"+
|
||||
"\3Z\3Z\3[\3[\3[\3[\7[\u035f\n[\f[\16[\u0362\13[\3[\3[\3\\\3\\\3\\\3\\"+
|
||||
"\7\\\u036a\n\\\f\\\16\\\u036d\13\\\3\\\3\\\3\\\3\\\3\\\4\u029b\u036b\2"+
|
||||
"]\3\3\5\4\7\5\t\6\13\7\r\b\17\t\21\n\23\13\25\f\27\r\31\16\33\17\35\20"+
|
||||
"\37\21!\22#\23%\24\'\25)\26+\27-\30/\31\61\32\63\33\65\34\67\359\36;\37"+
|
||||
"= ?!A\"C#E$G%I&K\'M(O)Q*S+U,W-Y.[/]\60_\61a\62c\63e\64g\65i\66k\67m8o"+
|
||||
"9q:s;u<w=y>{?}@\177A\u0081B\u0083C\u0085D\u0087E\u0089F\u008bG\u008dH"+
|
||||
"\u008fI\u0091J\u0093K\u0095L\u0097M\u0099N\u009bO\u009dP\u009fQ\u00a1"+
|
||||
"R\u00a3S\u00a5\2\u00a7\2\u00a9\2\u00abT\u00ad\2\u00af\2\u00b1U\u00b3V"+
|
||||
"\u00b5W\u00b7X\3\2\r\3\2$$\3\2))\4\2DDdd\3\2\62\63\3\2\62;\5\2\62;CHc"+
|
||||
"h\5\2C\\aac|\6\2\62;C\\aac|\4\2--//\5\2\13\f\17\17\"\"\4\2\f\f\17\17\2"+
|
||||
"\u03db\2\3\3\2\2\2\2\5\3\2\2\2\2\7\3\2\2\2\2\t\3\2\2\2\2\13\3\2\2\2\2"+
|
||||
"\r\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3\2\2\2\2\25\3\2\2\2\2\27\3"+
|
||||
"\2\2\2\2\31\3\2\2\2\2\33\3\2\2\2\2\35\3\2\2\2\2\37\3\2\2\2\2!\3\2\2\2"+
|
||||
"\2#\3\2\2\2\2%\3\2\2\2\2\'\3\2\2\2\2)\3\2\2\2\2+\3\2\2\2\2-\3\2\2\2\2"+
|
||||
"/\3\2\2\2\2\61\3\2\2\2\2\63\3\2\2\2\2\65\3\2\2\2\2\67\3\2\2\2\29\3\2\2"+
|
||||
"\2\2;\3\2\2\2\2=\3\2\2\2\2?\3\2\2\2\2A\3\2\2\2\2C\3\2\2\2\2E\3\2\2\2\2"+
|
||||
"G\3\2\2\2\2I\3\2\2\2\2K\3\2\2\2\2M\3\2\2\2\2O\3\2\2\2\2Q\3\2\2\2\2S\3"+
|
||||
"\2\2\2\2U\3\2\2\2\2W\3\2\2\2\2Y\3\2\2\2\2[\3\2\2\2\2]\3\2\2\2\2_\3\2\2"+
|
||||
"\2\2a\3\2\2\2\2c\3\2\2\2\2e\3\2\2\2\2g\3\2\2\2\2i\3\2\2\2\2k\3\2\2\2\2"+
|
||||
"m\3\2\2\2\2o\3\2\2\2\2q\3\2\2\2\2s\3\2\2\2\2u\3\2\2\2\2w\3\2\2\2\2y\3"+
|
||||
"\2\2\2\2{\3\2\2\2\2}\3\2\2\2\2\177\3\2\2\2\2\u0081\3\2\2\2\2\u0083\3\2"+
|
||||
"\2\2\2\u0085\3\2\2\2\2\u0087\3\2\2\2\2\u0089\3\2\2\2\2\u008b\3\2\2\2\2"+
|
||||
"\u008d\3\2\2\2\2\u008f\3\2\2\2\2\u0091\3\2\2\2\2\u0093\3\2\2\2\2\u0095"+
|
||||
"\3\2\2\2\2\u0097\3\2\2\2\2\u0099\3\2\2\2\2\u009b\3\2\2\2\2\u009d\3\2\2"+
|
||||
"\2\2\u009f\3\2\2\2\2\u00a1\3\2\2\2\2\u00a3\3\2\2\2\2\u00ab\3\2\2\2\2\u00b1"+
|
||||
"\3\2\2\2\2\u00b3\3\2\2\2\2\u00b5\3\2\2\2\2\u00b7\3\2\2\2\3\u00b9\3\2\2"+
|
||||
"\2\5\u00c0\3\2\2\2\7\u00c2\3\2\2\2\t\u00c4\3\2\2\2\13\u00c6\3\2\2\2\r"+
|
||||
"\u00c8\3\2\2\2\17\u00ca\3\2\2\2\21\u00cc\3\2\2\2\23\u00d4\3\2\2\2\25\u00de"+
|
||||
"\3\2\2\2\27\u00e6\3\2\2\2\31\u00ec\3\2\2\2\33\u00f2\3\2\2\2\35\u00f9\3"+
|
||||
"\2\2\2\37\u0102\3\2\2\2!\u0109\3\2\2\2#\u010b\3\2\2\2%\u010d\3\2\2\2\'"+
|
||||
"\u0113\3\2\2\2)\u011a\3\2\2\2+\u0120\3\2\2\2-\u0129\3\2\2\2/\u012c\3\2"+
|
||||
"\2\2\61\u0131\3\2\2\2\63\u0137\3\2\2\2\65\u013a\3\2\2\2\67\u013e\3\2\2"+
|
||||
"\29\u0145\3\2\2\2;\u0149\3\2\2\2=\u014c\3\2\2\2?\u0153\3\2\2\2A\u0155"+
|
||||
"\3\2\2\2C\u0157\3\2\2\2E\u0159\3\2\2\2G\u015c\3\2\2\2I\u015f\3\2\2\2K"+
|
||||
"\u0161\3\2\2\2M\u0163\3\2\2\2O\u0165\3\2\2\2Q\u0167\3\2\2\2S\u0169\3\2"+
|
||||
"\2\2U\u016c\3\2\2\2W\u016f\3\2\2\2Y\u0171\3\2\2\2[\u0173\3\2\2\2]\u0175"+
|
||||
"\3\2\2\2_\u0177\3\2\2\2a\u017a\3\2\2\2c\u017d\3\2\2\2e\u0180\3\2\2\2g"+
|
||||
"\u0183\3\2\2\2i\u0185\3\2\2\2k\u0187\3\2\2\2m\u018a\3\2\2\2o\u018d\3\2"+
|
||||
"\2\2q\u0190\3\2\2\2s\u0193\3\2\2\2u\u0196\3\2\2\2w\u0199\3\2\2\2y\u019c"+
|
||||
"\3\2\2\2{\u01a0\3\2\2\2}\u01a4\3\2\2\2\177\u01a7\3\2\2\2\u0081\u01aa\3"+
|
||||
"\2\2\2\u0083\u01ad\3\2\2\2\u0085\u01b3\3\2\2\2\u0087\u0293\3\2\2\2\u0089"+
|
||||
"\u0295\3\2\2\2\u008b\u02b6\3\2\2\2\u008d\u02b8\3\2\2\2\u008f\u02c3\3\2"+
|
||||
"\2\2\u0091\u02d4\3\2\2\2\u0093\u02d8\3\2\2\2\u0095\u02dd\3\2\2\2\u0097"+
|
||||
"\u02e4\3\2\2\2\u0099\u02f5\3\2\2\2\u009b\u0303\3\2\2\2\u009d\u0314\3\2"+
|
||||
"\2\2\u009f\u0323\3\2\2\2\u00a1\u0326\3\2\2\2\u00a3\u032f\3\2\2\2\u00a5"+
|
||||
"\u0336\3\2\2\2\u00a7\u0338\3\2\2\2\u00a9\u033a\3\2\2\2\u00ab\u033c\3\2"+
|
||||
"\2\2\u00ad\u0343\3\2\2\2\u00af\u0345\3\2\2\2\u00b1\u0347\3\2\2\2\u00b3"+
|
||||
"\u0354\3\2\2\2\u00b5\u035a\3\2\2\2\u00b7\u0365\3\2\2\2\u00b9\u00ba\7k"+
|
||||
"\2\2\u00ba\u00bb\7o\2\2\u00bb\u00bc\7r\2\2\u00bc\u00bd\7q\2\2\u00bd\u00be"+
|
||||
"\7t\2\2\u00be\u00bf\7v\2\2\u00bf\4\3\2\2\2\u00c0\u00c1\7?\2\2\u00c1\6"+
|
||||
"\3\2\2\2\u00c2\u00c3\7=\2\2\u00c3\b\3\2\2\2\u00c4\u00c5\7*\2\2\u00c5\n"+
|
||||
"\3\2\2\2\u00c6\u00c7\7+\2\2\u00c7\f\3\2\2\2\u00c8\u00c9\7}\2\2\u00c9\16"+
|
||||
"\3\2\2\2\u00ca\u00cb\7\177\2\2\u00cb\20\3\2\2\2\u00cc\u00cd\7m\2\2\u00cd"+
|
||||
"\u00ce\7k\2\2\u00ce\u00cf\7e\2\2\u00cf\u00d0\7m\2\2\u00d0\u00d1\7c\2\2"+
|
||||
"\u00d1\u00d2\7u\2\2\u00d2\u00d3\7o\2\2\u00d3\22\3\2\2\2\u00d4\u00d5\7"+
|
||||
"t\2\2\u00d5\u00d6\7g\2\2\u00d6\u00d7\7u\2\2\u00d7\u00d8\7q\2\2\u00d8\u00d9"+
|
||||
"\7w\2\2\u00d9\u00da\7t\2\2\u00da\u00db\7e\2\2\u00db\u00dc\7g\2\2\u00dc"+
|
||||
"\u00dd\7u\2\2\u00dd\24\3\2\2\2\u00de\u00df\7e\2\2\u00df\u00e0\7n\2\2\u00e0"+
|
||||
"\u00e1\7q\2\2\u00e1\u00e2\7d\2\2\u00e2\u00e3\7d\2\2\u00e3\u00e4\7g\2\2"+
|
||||
"\u00e4\u00e5\7t\2\2\u00e5\26\3\2\2\2\u00e6\u00e7\7r\2\2\u00e7\u00e8\7"+
|
||||
"c\2\2\u00e8\u00e9\7t\2\2\u00e9\u00ea\7c\2\2\u00ea\u00eb\7o\2\2\u00eb\30"+
|
||||
"\3\2\2\2\u00ec\u00ed\7d\2\2\u00ed\u00ee\7{\2\2\u00ee\u00ef\7v\2\2\u00ef"+
|
||||
"\u00f0\7g\2\2\u00f0\u00f1\7u\2\2\u00f1\32\3\2\2\2\u00f2\u00f3\7e\2\2\u00f3"+
|
||||
"\u00f4\7{\2\2\u00f4\u00f5\7e\2\2\u00f5\u00f6\7n\2\2\u00f6\u00f7\7g\2\2"+
|
||||
"\u00f7\u00f8\7u\2\2\u00f8\34\3\2\2\2\u00f9\u00fa\7n\2\2\u00fa\u00fb\7"+
|
||||
"q\2\2\u00fb\u00fc\7e\2\2\u00fc\u00fd\7c\2\2\u00fd\u00fe\7v\2\2\u00fe\u00ff"+
|
||||
"\7k\2\2\u00ff\u0100\7q\2\2\u0100\u0101\7p\2\2\u0101\36\3\2\2\2\u0102\u0103"+
|
||||
"\7k\2\2\u0103\u0104\7p\2\2\u0104\u0105\7n\2\2\u0105\u0106\7k\2\2\u0106"+
|
||||
"\u0107\7p\2\2\u0107\u0108\7g\2\2\u0108 \3\2\2\2\u0109\u010a\7.\2\2\u010a"+
|
||||
"\"\3\2\2\2\u010b\u010c\7<\2\2\u010c$\3\2\2\2\u010d\u010e\7e\2\2\u010e"+
|
||||
"\u010f\7q\2\2\u010f\u0110\7p\2\2\u0110\u0111\7u\2\2\u0111\u0112\7v\2\2"+
|
||||
"\u0112&\3\2\2\2\u0113\u0114\7g\2\2\u0114\u0115\7z\2\2\u0115\u0116\7v\2"+
|
||||
"\2\u0116\u0117\7g\2\2\u0117\u0118\7t\2\2\u0118\u0119\7p\2\2\u0119(\3\2"+
|
||||
"\2\2\u011a\u011b\7c\2\2\u011b\u011c\7n\2\2\u011c\u011d\7k\2\2\u011d\u011e"+
|
||||
"\7i\2\2\u011e\u011f\7p\2\2\u011f*\3\2\2\2\u0120\u0121\7t\2\2\u0121\u0122"+
|
||||
"\7g\2\2\u0122\u0123\7i\2\2\u0123\u0124\7k\2\2\u0124\u0125\7u\2\2\u0125"+
|
||||
"\u0126\7v\2\2\u0126\u0127\7g\2\2\u0127\u0128\7t\2\2\u0128,\3\2\2\2\u0129"+
|
||||
"\u012a\7k\2\2\u012a\u012b\7h\2\2\u012b.\3\2\2\2\u012c\u012d\7g\2\2\u012d"+
|
||||
"\u012e\7n\2\2\u012e\u012f\7u\2\2\u012f\u0130\7g\2\2\u0130\60\3\2\2\2\u0131"+
|
||||
"\u0132\7y\2\2\u0132\u0133\7j\2\2\u0133\u0134\7k\2\2\u0134\u0135\7n\2\2"+
|
||||
"\u0135\u0136\7g\2\2\u0136\62\3\2\2\2\u0137\u0138\7f\2\2\u0138\u0139\7"+
|
||||
"q\2\2\u0139\64\3\2\2\2\u013a\u013b\7h\2\2\u013b\u013c\7q\2\2\u013c\u013d"+
|
||||
"\7t\2\2\u013d\66\3\2\2\2\u013e\u013f\7t\2\2\u013f\u0140\7g\2\2\u0140\u0141"+
|
||||
"\7v\2\2\u0141\u0142\7w\2\2\u0142\u0143\7t\2\2\u0143\u0144\7p\2\2\u0144"+
|
||||
"8\3\2\2\2\u0145\u0146\7c\2\2\u0146\u0147\7u\2\2\u0147\u0148\7o\2\2\u0148"+
|
||||
":\3\2\2\2\u0149\u014a\7\60\2\2\u014a\u014b\7\60\2\2\u014b<\3\2\2\2\u014c"+
|
||||
"\u014d\7u\2\2\u014d\u014e\7k\2\2\u014e\u014f\7i\2\2\u014f\u0150\7p\2\2"+
|
||||
"\u0150\u0151\7g\2\2\u0151\u0152\7f\2\2\u0152>\3\2\2\2\u0153\u0154\7,\2"+
|
||||
"\2\u0154@\3\2\2\2\u0155\u0156\7]\2\2\u0156B\3\2\2\2\u0157\u0158\7_\2\2"+
|
||||
"\u0158D\3\2\2\2\u0159\u015a\7/\2\2\u015a\u015b\7/\2\2\u015bF\3\2\2\2\u015c"+
|
||||
"\u015d\7-\2\2\u015d\u015e\7-\2\2\u015eH\3\2\2\2\u015f\u0160\7-\2\2\u0160"+
|
||||
"J\3\2\2\2\u0161\u0162\7/\2\2\u0162L\3\2\2\2\u0163\u0164\7#\2\2\u0164N"+
|
||||
"\3\2\2\2\u0165\u0166\7(\2\2\u0166P\3\2\2\2\u0167\u0168\7\u0080\2\2\u0168"+
|
||||
"R\3\2\2\2\u0169\u016a\7@\2\2\u016a\u016b\7@\2\2\u016bT\3\2\2\2\u016c\u016d"+
|
||||
"\7>\2\2\u016d\u016e\7>\2\2\u016eV\3\2\2\2\u016f\u0170\7\61\2\2\u0170X"+
|
||||
"\3\2\2\2\u0171\u0172\7\'\2\2\u0172Z\3\2\2\2\u0173\u0174\7>\2\2\u0174\\"+
|
||||
"\3\2\2\2\u0175\u0176\7@\2\2\u0176^\3\2\2\2\u0177\u0178\7?\2\2\u0178\u0179"+
|
||||
"\7?\2\2\u0179`\3\2\2\2\u017a\u017b\7#\2\2\u017b\u017c\7?\2\2\u017cb\3"+
|
||||
"\2\2\2\u017d\u017e\7>\2\2\u017e\u017f\7?\2\2\u017fd\3\2\2\2\u0180\u0181"+
|
||||
"\7@\2\2\u0181\u0182\7?\2\2\u0182f\3\2\2\2\u0183\u0184\7`\2\2\u0184h\3"+
|
||||
"\2\2\2\u0185\u0186\7~\2\2\u0186j\3\2\2\2\u0187\u0188\7(\2\2\u0188\u0189"+
|
||||
"\7(\2\2\u0189l\3\2\2\2\u018a\u018b\7~\2\2\u018b\u018c\7~\2\2\u018cn\3"+
|
||||
"\2\2\2\u018d\u018e\7-\2\2\u018e\u018f\7?\2\2\u018fp\3\2\2\2\u0190\u0191"+
|
||||
"\7/\2\2\u0191\u0192\7?\2\2\u0192r\3\2\2\2\u0193\u0194\7,\2\2\u0194\u0195"+
|
||||
"\7?\2\2\u0195t\3\2\2\2\u0196\u0197\7\61\2\2\u0197\u0198\7?\2\2\u0198v"+
|
||||
"\3\2\2\2\u0199\u019a\7\'\2\2\u019a\u019b\7?\2\2\u019bx\3\2\2\2\u019c\u019d"+
|
||||
"\7>\2\2\u019d\u019e\7>\2\2\u019e\u019f\7?\2\2\u019fz\3\2\2\2\u01a0\u01a1"+
|
||||
"\7@\2\2\u01a1\u01a2\7@\2\2\u01a2\u01a3\7?\2\2\u01a3|\3\2\2\2\u01a4\u01a5"+
|
||||
"\7(\2\2\u01a5\u01a6\7?\2\2\u01a6~\3\2\2\2\u01a7\u01a8\7~\2\2\u01a8\u01a9"+
|
||||
"\7?\2\2\u01a9\u0080\3\2\2\2\u01aa\u01ab\7`\2\2\u01ab\u01ac\7?\2\2\u01ac"+
|
||||
"\u0082\3\2\2\2\u01ad\u01ae\7\60\2\2\u01ae\u01af\7d\2\2\u01af\u01b0\7{"+
|
||||
"\2\2\u01b0\u01b1\7v\2\2\u01b1\u01b2\7g\2\2\u01b2\u0084\3\2\2\2\u01b3\u01b4"+
|
||||
"\7%\2\2\u01b4\u0086\3\2\2\2\u01b5\u01b6\7d\2\2\u01b6\u01b7\7t\2\2\u01b7"+
|
||||
"\u0294\7m\2\2\u01b8\u01b9\7q\2\2\u01b9\u01ba\7t\2\2\u01ba\u0294\7c\2\2"+
|
||||
"\u01bb\u01bc\7m\2\2\u01bc\u01bd\7k\2\2\u01bd\u0294\7n\2\2\u01be\u01bf"+
|
||||
"\7u\2\2\u01bf\u01c0\7n\2\2\u01c0\u0294\7q\2\2\u01c1\u01c2\7p\2\2\u01c2"+
|
||||
"\u01c3\7q\2\2\u01c3\u0294\7r\2\2\u01c4\u01c5\7c\2\2\u01c5\u01c6\7u\2\2"+
|
||||
"\u01c6\u0294\7n\2\2\u01c7\u01c8\7r\2\2\u01c8\u01c9\7j\2\2\u01c9\u0294"+
|
||||
"\7r\2\2\u01ca\u01cb\7c\2\2\u01cb\u01cc\7p\2\2\u01cc\u0294\7e\2\2\u01cd"+
|
||||
"\u01ce\7d\2\2\u01ce\u01cf\7r\2\2\u01cf\u0294\7n\2\2\u01d0\u01d1\7e\2\2"+
|
||||
"\u01d1\u01d2\7n\2\2\u01d2\u0294\7e\2\2\u01d3\u01d4\7l\2\2\u01d4\u01d5"+
|
||||
"\7u\2\2\u01d5\u0294\7t\2\2\u01d6\u01d7\7c\2\2\u01d7\u01d8\7p\2\2\u01d8"+
|
||||
"\u0294\7f\2\2\u01d9\u01da\7t\2\2\u01da\u01db\7n\2\2\u01db\u0294\7c\2\2"+
|
||||
"\u01dc\u01dd\7d\2\2\u01dd\u01de\7k\2\2\u01de\u0294\7v\2\2\u01df\u01e0"+
|
||||
"\7t\2\2\u01e0\u01e1\7q\2\2\u01e1\u0294\7n\2\2\u01e2\u01e3\7r\2\2\u01e3"+
|
||||
"\u01e4\7n\2\2\u01e4\u0294\7c\2\2\u01e5\u01e6\7r\2\2\u01e6\u01e7\7n\2\2"+
|
||||
"\u01e7\u0294\7r\2\2\u01e8\u01e9\7d\2\2\u01e9\u01ea\7o\2\2\u01ea\u0294"+
|
||||
"\7k\2\2\u01eb\u01ec\7u\2\2\u01ec\u01ed\7g\2\2\u01ed\u0294\7e\2\2\u01ee"+
|
||||
"\u01ef\7t\2\2\u01ef\u01f0\7v\2\2\u01f0\u0294\7k\2\2\u01f1\u01f2\7g\2\2"+
|
||||
"\u01f2\u01f3\7q\2\2\u01f3\u0294\7t\2\2\u01f4\u01f5\7u\2\2\u01f5\u01f6"+
|
||||
"\7t\2\2\u01f6\u0294\7g\2\2\u01f7\u01f8\7n\2\2\u01f8\u01f9\7u\2\2\u01f9"+
|
||||
"\u0294\7t\2\2\u01fa\u01fb\7r\2\2\u01fb\u01fc\7j\2\2\u01fc\u0294\7c\2\2"+
|
||||
"\u01fd\u01fe\7c\2\2\u01fe\u01ff\7n\2\2\u01ff\u0294\7t\2\2\u0200\u0201"+
|
||||
"\7l\2\2\u0201\u0202\7o\2\2\u0202\u0294\7r\2\2\u0203\u0204\7d\2\2\u0204"+
|
||||
"\u0205\7x\2\2\u0205\u0294\7e\2\2\u0206\u0207\7e\2\2\u0207\u0208\7n\2\2"+
|
||||
"\u0208\u0294\7k\2\2\u0209\u020a\7t\2\2\u020a\u020b\7v\2\2\u020b\u0294"+
|
||||
"\7u\2\2\u020c\u020d\7c\2\2\u020d\u020e\7f\2\2\u020e\u0294\7e\2\2\u020f"+
|
||||
"\u0210\7t\2\2\u0210\u0211\7t\2\2\u0211\u0294\7c\2\2\u0212\u0213\7d\2\2"+
|
||||
"\u0213\u0214\7x\2\2\u0214\u0294\7u\2\2\u0215\u0216\7u\2\2\u0216\u0217"+
|
||||
"\7g\2\2\u0217\u0294\7k\2\2\u0218\u0219\7u\2\2\u0219\u021a\7c\2\2\u021a"+
|
||||
"\u0294\7z\2\2\u021b\u021c\7u\2\2\u021c\u021d\7v\2\2\u021d\u0294\7{\2\2"+
|
||||
"\u021e\u021f\7u\2\2\u021f\u0220\7v\2\2\u0220\u0294\7c\2\2\u0221\u0222"+
|
||||
"\7u\2\2\u0222\u0223\7v\2\2\u0223\u0294\7z\2\2\u0224\u0225\7f\2\2\u0225"+
|
||||
"\u0226\7g\2\2\u0226\u0294\7{\2\2\u0227\u0228\7v\2\2\u0228\u0229\7z\2\2"+
|
||||
"\u0229\u0294\7c\2\2\u022a\u022b\7z\2\2\u022b\u022c\7c\2\2\u022c\u0294"+
|
||||
"\7c\2\2\u022d\u022e\7d\2\2\u022e\u022f\7e\2\2\u022f\u0294\7e\2\2\u0230"+
|
||||
"\u0231\7c\2\2\u0231\u0232\7j\2\2\u0232\u0294\7z\2\2\u0233\u0234\7v\2\2"+
|
||||
"\u0234\u0235\7{\2\2\u0235\u0294\7c\2\2\u0236\u0237\7v\2\2\u0237\u0238"+
|
||||
"\7z\2\2\u0238\u0294\7u\2\2\u0239\u023a\7v\2\2\u023a\u023b\7c\2\2\u023b"+
|
||||
"\u0294\7u\2\2\u023c\u023d\7u\2\2\u023d\u023e\7j\2\2\u023e\u0294\7{\2\2"+
|
||||
"\u023f\u0240\7u\2\2\u0240\u0241\7j\2\2\u0241\u0294\7z\2\2\u0242\u0243"+
|
||||
"\7n\2\2\u0243\u0244\7f\2\2\u0244\u0294\7{\2\2\u0245\u0246\7n\2\2\u0246"+
|
||||
"\u0247\7f\2\2\u0247\u0294\7c\2\2\u0248\u0249\7n\2\2\u0249\u024a\7f\2\2"+
|
||||
"\u024a\u0294\7z\2\2\u024b\u024c\7n\2\2\u024c\u024d\7c\2\2\u024d\u0294"+
|
||||
"\7z\2\2\u024e\u024f\7v\2\2\u024f\u0250\7c\2\2\u0250\u0294\7{\2\2\u0251"+
|
||||
"\u0252\7v\2\2\u0252\u0253\7c\2\2\u0253\u0294\7z\2\2\u0254\u0255\7d\2\2"+
|
||||
"\u0255\u0256\7e\2\2\u0256\u0294\7u\2\2\u0257\u0258\7e\2\2\u0258\u0259"+
|
||||
"\7n\2\2\u0259\u0294\7x\2\2\u025a\u025b\7v\2\2\u025b\u025c\7u\2\2\u025c"+
|
||||
"\u0294\7z\2\2\u025d\u025e\7n\2\2\u025e\u025f\7c\2\2\u025f\u0294\7u\2\2"+
|
||||
"\u0260\u0261\7e\2\2\u0261\u0262\7r\2\2\u0262\u0294\7{\2\2\u0263\u0264"+
|
||||
"\7e\2\2\u0264\u0265\7o\2\2\u0265\u0294\7r\2\2\u0266\u0267\7e\2\2\u0267"+
|
||||
"\u0268\7r\2\2\u0268\u0294\7z\2\2\u0269\u026a\7f\2\2\u026a\u026b\7e\2\2"+
|
||||
"\u026b\u0294\7r\2\2\u026c\u026d\7f\2\2\u026d\u026e\7g\2\2\u026e\u0294"+
|
||||
"\7e\2\2\u026f\u0270\7k\2\2\u0270\u0271\7p\2\2\u0271\u0294\7e\2\2\u0272"+
|
||||
"\u0273\7c\2\2\u0273\u0274\7z\2\2\u0274\u0294\7u\2\2\u0275\u0276\7d\2\2"+
|
||||
"\u0276\u0277\7p\2\2\u0277\u0294\7g\2\2\u0278\u0279\7e\2\2\u0279\u027a"+
|
||||
"\7n\2\2\u027a\u0294\7f\2\2\u027b\u027c\7u\2\2\u027c\u027d\7d\2\2\u027d"+
|
||||
"\u0294\7e\2\2\u027e\u027f\7k\2\2\u027f\u0280\7u\2\2\u0280\u0294\7e\2\2"+
|
||||
"\u0281\u0282\7k\2\2\u0282\u0283\7p\2\2\u0283\u0294\7z\2\2\u0284\u0285"+
|
||||
"\7d\2\2\u0285\u0286\7g\2\2\u0286\u0294\7s\2\2\u0287\u0288\7u\2\2\u0288"+
|
||||
"\u0289\7g\2\2\u0289\u0294\7f\2\2\u028a\u028b\7f\2\2\u028b\u028c\7g\2\2"+
|
||||
"\u028c\u0294\7z\2\2\u028d\u028e\7k\2\2\u028e\u028f\7p\2\2\u028f\u0294"+
|
||||
"\7{\2\2\u0290\u0291\7t\2\2\u0291\u0292\7q\2\2\u0292\u0294\7t\2\2\u0293"+
|
||||
"\u01b5\3\2\2\2\u0293\u01b8\3\2\2\2\u0293\u01bb\3\2\2\2\u0293\u01be\3\2"+
|
||||
"\2\2\u0293\u01c1\3\2\2\2\u0293\u01c4\3\2\2\2\u0293\u01c7\3\2\2\2\u0293"+
|
||||
"\u01ca\3\2\2\2\u0293\u01cd\3\2\2\2\u0293\u01d0\3\2\2\2\u0293\u01d3\3\2"+
|
||||
"\2\2\u0293\u01d6\3\2\2\2\u0293\u01d9\3\2\2\2\u0293\u01dc\3\2\2\2\u0293"+
|
||||
"\u01df\3\2\2\2\u0293\u01e2\3\2\2\2\u0293\u01e5\3\2\2\2\u0293\u01e8\3\2"+
|
||||
"\2\2\u0293\u01eb\3\2\2\2\u0293\u01ee\3\2\2\2\u0293\u01f1\3\2\2\2\u0293"+
|
||||
"\u01f4\3\2\2\2\u0293\u01f7\3\2\2\2\u0293\u01fa\3\2\2\2\u0293\u01fd\3\2"+
|
||||
"\2\2\u0293\u0200\3\2\2\2\u0293\u0203\3\2\2\2\u0293\u0206\3\2\2\2\u0293"+
|
||||
"\u0209\3\2\2\2\u0293\u020c\3\2\2\2\u0293\u020f\3\2\2\2\u0293\u0212\3\2"+
|
||||
"\2\2\u0293\u0215\3\2\2\2\u0293\u0218\3\2\2\2\u0293\u021b\3\2\2\2\u0293"+
|
||||
"\u021e\3\2\2\2\u0293\u0221\3\2\2\2\u0293\u0224\3\2\2\2\u0293\u0227\3\2"+
|
||||
"\2\2\u0293\u022a\3\2\2\2\u0293\u022d\3\2\2\2\u0293\u0230\3\2\2\2\u0293"+
|
||||
"\u0233\3\2\2\2\u0293\u0236\3\2\2\2\u0293\u0239\3\2\2\2\u0293\u023c\3\2"+
|
||||
"\2\2\u0293\u023f\3\2\2\2\u0293\u0242\3\2\2\2\u0293\u0245\3\2\2\2\u0293"+
|
||||
"\u0248\3\2\2\2\u0293\u024b\3\2\2\2\u0293\u024e\3\2\2\2\u0293\u0251\3\2"+
|
||||
"\2\2\u0293\u0254\3\2\2\2\u0293\u0257\3\2\2\2\u0293\u025a\3\2\2\2\u0293"+
|
||||
"\u025d\3\2\2\2\u0293\u0260\3\2\2\2\u0293\u0263\3\2\2\2\u0293\u0266\3\2"+
|
||||
"\2\2\u0293\u0269\3\2\2\2\u0293\u026c\3\2\2\2\u0293\u026f\3\2\2\2\u0293"+
|
||||
"\u0272\3\2\2\2\u0293\u0275\3\2\2\2\u0293\u0278\3\2\2\2\u0293\u027b\3\2"+
|
||||
"\2\2\u0293\u027e\3\2\2\2\u0293\u0281\3\2\2\2\u0293\u0284\3\2\2\2\u0293"+
|
||||
"\u0287\3\2\2\2\u0293\u028a\3\2\2\2\u0293\u028d\3\2\2\2\u0293\u0290\3\2"+
|
||||
"\2\2\u0294\u0088\3\2\2\2\u0295\u0296\7}\2\2\u0296\u0297\7}\2\2\u0297\u029b"+
|
||||
"\3\2\2\2\u0298\u029a\13\2\2\2\u0299\u0298\3\2\2\2\u029a\u029d\3\2\2\2"+
|
||||
"\u029b\u029c\3\2\2\2\u029b\u0299\3\2\2\2\u029c\u029e\3\2\2\2\u029d\u029b"+
|
||||
"\3\2\2\2\u029e\u029f\7\177\2\2\u029f\u02a0\7\177\2\2\u02a0\u008a\3\2\2"+
|
||||
"\2\u02a1\u02a2\7d\2\2\u02a2\u02a3\7{\2\2\u02a3\u02a4\7v\2\2\u02a4\u02b7"+
|
||||
"\7g\2\2\u02a5\u02a6\7y\2\2\u02a6\u02a7\7q\2\2\u02a7\u02a8\7t\2\2\u02a8"+
|
||||
"\u02b7\7f\2\2\u02a9\u02aa\7f\2\2\u02aa\u02ab\7y\2\2\u02ab\u02ac\7q\2\2"+
|
||||
"\u02ac\u02ad\7t\2\2\u02ad\u02b7\7f\2\2\u02ae\u02af\7d\2\2\u02af\u02b0"+
|
||||
"\7q\2\2\u02b0\u02b1\7q\2\2\u02b1\u02b7\7n\2\2\u02b2\u02b3\7x\2\2\u02b3"+
|
||||
"\u02b4\7q\2\2\u02b4\u02b5\7k\2\2\u02b5\u02b7\7f\2\2\u02b6\u02a1\3\2\2"+
|
||||
"\2\u02b6\u02a5\3\2\2\2\u02b6\u02a9\3\2\2\2\u02b6\u02ae\3\2\2\2\u02b6\u02b2"+
|
||||
"\3\2\2\2\u02b7\u008c\3\2\2\2\u02b8\u02be\7$\2\2\u02b9\u02ba\7^\2\2\u02ba"+
|
||||
"\u02bd\7$\2\2\u02bb\u02bd\n\2\2\2\u02bc\u02b9\3\2\2\2\u02bc\u02bb\3\2"+
|
||||
"\2\2\u02bd\u02c0\3\2\2\2\u02be\u02bc\3\2\2\2\u02be\u02bf\3\2\2\2\u02bf"+
|
||||
"\u02c1\3\2\2\2\u02c0\u02be\3\2\2\2\u02c1\u02c2\7$\2\2\u02c2\u008e\3\2"+
|
||||
"\2\2\u02c3\u02c7\7)\2\2\u02c4\u02c5\7^\2\2\u02c5\u02c8\7)\2\2\u02c6\u02c8"+
|
||||
"\n\3\2\2\u02c7\u02c4\3\2\2\2\u02c7\u02c6\3\2\2\2\u02c8\u02c9\3\2\2\2\u02c9"+
|
||||
"\u02ca\7)\2\2\u02ca\u0090\3\2\2\2\u02cb\u02cc\7v\2\2\u02cc\u02cd\7t\2"+
|
||||
"\2\u02cd\u02ce\7w\2\2\u02ce\u02d5\7g\2\2\u02cf\u02d0\7h\2\2\u02d0\u02d1"+
|
||||
"\7c\2\2\u02d1\u02d2\7n\2\2\u02d2\u02d3\7u\2\2\u02d3\u02d5\7g\2\2\u02d4"+
|
||||
"\u02cb\3\2\2\2\u02d4\u02cf\3\2\2\2\u02d5\u0092\3\2\2\2\u02d6\u02d9\5\u0095"+
|
||||
"K\2\u02d7\u02d9\5\u009dO\2\u02d8\u02d6\3\2\2\2\u02d8\u02d7\3\2\2\2\u02d9"+
|
||||
"\u0094\3\2\2\2\u02da\u02de\5\u0097L\2\u02db\u02de\5\u0099M\2\u02dc\u02de"+
|
||||
"\5\u009bN\2\u02dd\u02da\3\2\2\2\u02dd\u02db\3\2\2\2\u02dd\u02dc\3\2\2"+
|
||||
"\2\u02de\u0096\3\2\2\2\u02df\u02e5\7\'\2\2\u02e0\u02e1\7\62\2\2\u02e1"+
|
||||
"\u02e5\7d\2\2\u02e2\u02e3\7\62\2\2\u02e3\u02e5\7D\2\2\u02e4\u02df\3\2"+
|
||||
"\2\2\u02e4\u02e0\3\2\2\2\u02e4\u02e2\3\2\2\2\u02e5\u02e9\3\2\2\2\u02e6"+
|
||||
"\u02e8\5\u00a5S\2\u02e7\u02e6\3\2\2\2\u02e8\u02eb\3\2\2\2\u02e9\u02e7"+
|
||||
"\3\2\2\2\u02e9\u02ea\3\2\2\2\u02ea\u02ec\3\2\2\2\u02eb\u02e9\3\2\2\2\u02ec"+
|
||||
"\u02ee\7\60\2\2\u02ed\u02ef\5\u00a5S\2\u02ee\u02ed\3\2\2\2\u02ef\u02f0"+
|
||||
"\3\2\2\2\u02f0\u02ee\3\2\2\2\u02f0\u02f1\3\2\2\2\u02f1\u0098\3\2\2\2\u02f2"+
|
||||
"\u02f4\5\u00a7T\2\u02f3\u02f2\3\2\2\2\u02f4\u02f7\3\2\2\2\u02f5\u02f3"+
|
||||
"\3\2\2\2\u02f5\u02f6\3\2\2\2\u02f6\u02f8\3\2\2\2\u02f7\u02f5\3\2\2\2\u02f8"+
|
||||
"\u02fa\7\60\2\2\u02f9\u02fb\5\u00a7T\2\u02fa\u02f9\3\2\2\2\u02fb\u02fc"+
|
||||
"\3\2\2\2\u02fc\u02fa\3\2\2\2\u02fc\u02fd\3\2\2\2\u02fd\u009a\3\2\2\2\u02fe"+
|
||||
"\u0304\7&\2\2\u02ff\u0300\7\62\2\2\u0300\u0304\7z\2\2\u0301\u0302\7\62"+
|
||||
"\2\2\u0302\u0304\7Z\2\2\u0303\u02fe\3\2\2\2\u0303\u02ff\3\2\2\2\u0303"+
|
||||
"\u0301\3\2\2\2\u0304\u0308\3\2\2\2\u0305\u0307\5\u00a9U\2\u0306\u0305"+
|
||||
"\3\2\2\2\u0307\u030a\3\2\2\2\u0308\u0306\3\2\2\2\u0308\u0309\3\2\2\2\u0309"+
|
||||
"\u030b\3\2\2\2\u030a\u0308\3\2\2\2\u030b\u030d\7\60\2\2\u030c\u030e\5"+
|
||||
"\u00a9U\2\u030d\u030c\3\2\2\2\u030e\u030f\3\2\2\2\u030f\u030d\3\2\2\2"+
|
||||
"\u030f\u0310\3\2\2\2\u0310\u009c\3\2\2\2\u0311\u0315\5\u00a1Q\2\u0312"+
|
||||
"\u0315\5\u00a3R\2\u0313\u0315\5\u009fP\2\u0314\u0311\3\2\2\2\u0314\u0312"+
|
||||
"\3\2\2\2\u0314\u0313\3\2\2\2\u0315\u009e\3\2\2\2\u0316\u0317\7\62\2\2"+
|
||||
"\u0317\u0319\t\4\2\2\u0318\u031a\5\u00a5S\2\u0319\u0318\3\2\2\2\u031a"+
|
||||
"\u031b\3\2\2\2\u031b\u0319\3\2\2\2\u031b\u031c\3\2\2\2\u031c\u0324\3\2"+
|
||||
"\2\2\u031d\u031f\7\'\2\2\u031e\u0320\5\u00a5S\2\u031f\u031e\3\2\2\2\u0320"+
|
||||
"\u0321\3\2\2\2\u0321\u031f\3\2\2\2\u0321\u0322\3\2\2\2\u0322\u0324\3\2"+
|
||||
"\2\2\u0323\u0316\3\2\2\2\u0323\u031d\3\2\2\2\u0324\u00a0\3\2\2\2\u0325"+
|
||||
"\u0327\5\u00a7T\2\u0326\u0325\3\2\2\2\u0327\u0328\3\2\2\2\u0328\u0326"+
|
||||
"\3\2\2\2\u0328\u0329\3\2\2\2\u0329\u00a2\3\2\2\2\u032a\u0330\7&\2\2\u032b"+
|
||||
"\u032c\7\62\2\2\u032c\u0330\7z\2\2\u032d\u032e\7\62\2\2\u032e\u0330\7"+
|
||||
"Z\2\2\u032f\u032a\3\2\2\2\u032f\u032b\3\2\2\2\u032f\u032d\3\2\2\2\u0330"+
|
||||
"\u0332\3\2\2\2\u0331\u0333\5\u00a9U\2\u0332\u0331\3\2\2\2\u0333\u0334"+
|
||||
"\3\2\2\2\u0334\u0332\3\2\2\2\u0334\u0335\3\2\2\2\u0335\u00a4\3\2\2\2\u0336"+
|
||||
"\u0337\t\5\2\2\u0337\u00a6\3\2\2\2\u0338\u0339\t\6\2\2\u0339\u00a8\3\2"+
|
||||
"\2\2\u033a\u033b\t\7\2\2\u033b\u00aa\3\2\2\2\u033c\u0340\5\u00adW\2\u033d"+
|
||||
"\u033f\5\u00afX\2\u033e\u033d\3\2\2\2\u033f\u0342\3\2\2\2\u0340\u033e"+
|
||||
"\3\2\2\2\u0340\u0341\3\2\2\2\u0341\u00ac\3\2\2\2\u0342\u0340\3\2\2\2\u0343"+
|
||||
"\u0344\t\b\2\2\u0344\u00ae\3\2\2\2\u0345\u0346\t\t\2\2\u0346\u00b0\3\2"+
|
||||
"\2\2\u0347\u034b\7#\2\2\u0348\u034a\5\u00afX\2\u0349\u0348\3\2\2\2\u034a"+
|
||||
"\u034d\3\2\2\2\u034b\u0349\3\2\2\2\u034b\u034c\3\2\2\2\u034c\u034f\3\2"+
|
||||
"\2\2\u034d\u034b\3\2\2\2\u034e\u0350\t\n\2\2\u034f\u034e\3\2\2\2\u0350"+
|
||||
"\u0351\3\2\2\2\u0351\u034f\3\2\2\2\u0351\u0352\3\2\2\2\u0352\u00b2\3\2"+
|
||||
"\2\2\u0353\u0355\t\13\2\2\u0354\u0353\3\2\2\2\u0355\u0356\3\2\2\2\u0356"+
|
||||
"\u0354\3\2\2\2\u0356\u0357\3\2\2\2\u0357\u0358\3\2\2\2\u0358\u0359\bZ"+
|
||||
"\2\2\u0359\u00b4\3\2\2\2\u035a\u035b\7\61\2\2\u035b\u035c\7\61\2\2\u035c"+
|
||||
"\u0360\3\2\2\2\u035d\u035f\n\f\2\2\u035e\u035d\3\2\2\2\u035f\u0362\3\2"+
|
||||
"\2\2\u0360\u035e\3\2\2\2\u0360\u0361\3\2\2\2\u0361\u0363\3\2\2\2\u0362"+
|
||||
"\u0360\3\2\2\2\u0363\u0364\b[\2\2\u0364\u00b6\3\2\2\2\u0365\u0366\7\61"+
|
||||
"\2\2\u0366\u0367\7,\2\2\u0367\u036b\3\2\2\2\u0368\u036a\13\2\2\2\u0369"+
|
||||
"\u0368\3\2\2\2\u036a\u036d\3\2\2\2\u036b\u036c\3\2\2\2\u036b\u0369\3\2"+
|
||||
"\2\2\u036c\u036e\3\2\2\2\u036d\u036b\3\2\2\2\u036e\u036f\7,\2\2\u036f"+
|
||||
"\u0370\7\61\2\2\u0370\u0371\3\2\2\2\u0371\u0372\b\\\2\2\u0372\u00b8\3"+
|
||||
"\2\2\2!\2\u0293\u029b\u02b6\u02bc\u02be\u02c7\u02d4\u02d8\u02dd\u02e4"+
|
||||
"\u02e9\u02f0\u02f5\u02fc\u0303\u0308\u030f\u0314\u031b\u0321\u0323\u0328"+
|
||||
"\u032f\u0334\u0340\u034b\u0351\u0356\u0360\u036b\3\b\2\2";
|
||||
public static final ATN _ATN =
|
||||
new ATNDeserializer().deserialize(_serializedATN.toCharArray());
|
||||
static {
|
||||
|
@ -61,26 +61,29 @@ T__59=60
|
||||
T__60=61
|
||||
T__61=62
|
||||
T__62=63
|
||||
MNEMONIC=64
|
||||
KICKASM=65
|
||||
SIMPLETYPE=66
|
||||
STRING=67
|
||||
CHAR=68
|
||||
BOOLEAN=69
|
||||
NUMBER=70
|
||||
NUMFLOAT=71
|
||||
BINFLOAT=72
|
||||
DECFLOAT=73
|
||||
HEXFLOAT=74
|
||||
NUMINT=75
|
||||
BININTEGER=76
|
||||
DECINTEGER=77
|
||||
HEXINTEGER=78
|
||||
NAME=79
|
||||
ASMREL=80
|
||||
WS=81
|
||||
COMMENT_LINE=82
|
||||
COMMENT_BLOCK=83
|
||||
T__63=64
|
||||
T__64=65
|
||||
T__65=66
|
||||
MNEMONIC=67
|
||||
KICKASM=68
|
||||
SIMPLETYPE=69
|
||||
STRING=70
|
||||
CHAR=71
|
||||
BOOLEAN=72
|
||||
NUMBER=73
|
||||
NUMFLOAT=74
|
||||
BINFLOAT=75
|
||||
DECFLOAT=76
|
||||
HEXFLOAT=77
|
||||
NUMINT=78
|
||||
BININTEGER=79
|
||||
DECINTEGER=80
|
||||
HEXINTEGER=81
|
||||
NAME=82
|
||||
ASMREL=83
|
||||
WS=84
|
||||
COMMENT_LINE=85
|
||||
COMMENT_BLOCK=86
|
||||
'import'=1
|
||||
'='=2
|
||||
';'=3
|
||||
@ -92,55 +95,58 @@ COMMENT_BLOCK=83
|
||||
'resources'=9
|
||||
'clobber'=10
|
||||
'param'=11
|
||||
','=12
|
||||
':'=13
|
||||
'const'=14
|
||||
'extern'=15
|
||||
'align'=16
|
||||
'register'=17
|
||||
'inline'=18
|
||||
'if'=19
|
||||
'else'=20
|
||||
'while'=21
|
||||
'do'=22
|
||||
'for'=23
|
||||
'return'=24
|
||||
'asm'=25
|
||||
'..'=26
|
||||
'signed'=27
|
||||
'*'=28
|
||||
'['=29
|
||||
']'=30
|
||||
'--'=31
|
||||
'++'=32
|
||||
'+'=33
|
||||
'-'=34
|
||||
'!'=35
|
||||
'&'=36
|
||||
'~'=37
|
||||
'>>'=38
|
||||
'<<'=39
|
||||
'/'=40
|
||||
'%'=41
|
||||
'<'=42
|
||||
'>'=43
|
||||
'=='=44
|
||||
'!='=45
|
||||
'<='=46
|
||||
'>='=47
|
||||
'^'=48
|
||||
'|'=49
|
||||
'&&'=50
|
||||
'||'=51
|
||||
'+='=52
|
||||
'-='=53
|
||||
'*='=54
|
||||
'/='=55
|
||||
'%='=56
|
||||
'<<='=57
|
||||
'>>='=58
|
||||
'&='=59
|
||||
'|='=60
|
||||
'^='=61
|
||||
'.byte'=62
|
||||
'#'=63
|
||||
'bytes'=12
|
||||
'cycles'=13
|
||||
'location'=14
|
||||
'inline'=15
|
||||
','=16
|
||||
':'=17
|
||||
'const'=18
|
||||
'extern'=19
|
||||
'align'=20
|
||||
'register'=21
|
||||
'if'=22
|
||||
'else'=23
|
||||
'while'=24
|
||||
'do'=25
|
||||
'for'=26
|
||||
'return'=27
|
||||
'asm'=28
|
||||
'..'=29
|
||||
'signed'=30
|
||||
'*'=31
|
||||
'['=32
|
||||
']'=33
|
||||
'--'=34
|
||||
'++'=35
|
||||
'+'=36
|
||||
'-'=37
|
||||
'!'=38
|
||||
'&'=39
|
||||
'~'=40
|
||||
'>>'=41
|
||||
'<<'=42
|
||||
'/'=43
|
||||
'%'=44
|
||||
'<'=45
|
||||
'>'=46
|
||||
'=='=47
|
||||
'!='=48
|
||||
'<='=49
|
||||
'>='=50
|
||||
'^'=51
|
||||
'|'=52
|
||||
'&&'=53
|
||||
'||'=54
|
||||
'+='=55
|
||||
'-='=56
|
||||
'*='=57
|
||||
'/='=58
|
||||
'%='=59
|
||||
'<<='=60
|
||||
'>>='=61
|
||||
'&='=62
|
||||
'|='=63
|
||||
'^='=64
|
||||
'.byte'=65
|
||||
'#'=66
|
||||
|
@ -108,15 +108,77 @@ public interface KickCListener extends ParseTreeListener {
|
||||
*/
|
||||
void exitKasmParams(KickCParser.KasmParamsContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link KickCParser#kasmParam}.
|
||||
* Enter a parse tree produced by the {@code kasmParamResources}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterKasmParam(KickCParser.KasmParamContext ctx);
|
||||
void enterKasmParamResources(KickCParser.KasmParamResourcesContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by {@link KickCParser#kasmParam}.
|
||||
* Exit a parse tree produced by the {@code kasmParamResources}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitKasmParam(KickCParser.KasmParamContext ctx);
|
||||
void exitKasmParamResources(KickCParser.KasmParamResourcesContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by the {@code kasmParamClobber}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterKasmParamClobber(KickCParser.KasmParamClobberContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by the {@code kasmParamClobber}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitKasmParamClobber(KickCParser.KasmParamClobberContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by the {@code kasmParamTransfer}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterKasmParamTransfer(KickCParser.KasmParamTransferContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by the {@code kasmParamTransfer}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitKasmParamTransfer(KickCParser.KasmParamTransferContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by the {@code kasmParamBytes}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterKasmParamBytes(KickCParser.KasmParamBytesContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by the {@code kasmParamBytes}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitKasmParamBytes(KickCParser.KasmParamBytesContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by the {@code kasmParamCycles}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterKasmParamCycles(KickCParser.KasmParamCyclesContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by the {@code kasmParamCycles}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitKasmParamCycles(KickCParser.KasmParamCyclesContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by the {@code kasmParamLocation}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void enterKasmParamLocation(KickCParser.KasmParamLocationContext ctx);
|
||||
/**
|
||||
* Exit a parse tree produced by the {@code kasmParamLocation}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
*/
|
||||
void exitKasmParamLocation(KickCParser.KasmParamLocationContext ctx);
|
||||
/**
|
||||
* Enter a parse tree produced by {@link KickCParser#kasmResourceList}.
|
||||
* @param ctx the parse tree
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -71,11 +71,47 @@ public interface KickCVisitor<T> extends ParseTreeVisitor<T> {
|
||||
*/
|
||||
T visitKasmParams(KickCParser.KasmParamsContext ctx);
|
||||
/**
|
||||
* Visit a parse tree produced by {@link KickCParser#kasmParam}.
|
||||
* Visit a parse tree produced by the {@code kasmParamResources}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
* @return the visitor result
|
||||
*/
|
||||
T visitKasmParam(KickCParser.KasmParamContext ctx);
|
||||
T visitKasmParamResources(KickCParser.KasmParamResourcesContext ctx);
|
||||
/**
|
||||
* Visit a parse tree produced by the {@code kasmParamClobber}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
* @return the visitor result
|
||||
*/
|
||||
T visitKasmParamClobber(KickCParser.KasmParamClobberContext ctx);
|
||||
/**
|
||||
* Visit a parse tree produced by the {@code kasmParamTransfer}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
* @return the visitor result
|
||||
*/
|
||||
T visitKasmParamTransfer(KickCParser.KasmParamTransferContext ctx);
|
||||
/**
|
||||
* Visit a parse tree produced by the {@code kasmParamBytes}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
* @return the visitor result
|
||||
*/
|
||||
T visitKasmParamBytes(KickCParser.KasmParamBytesContext ctx);
|
||||
/**
|
||||
* Visit a parse tree produced by the {@code kasmParamCycles}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
* @return the visitor result
|
||||
*/
|
||||
T visitKasmParamCycles(KickCParser.KasmParamCyclesContext ctx);
|
||||
/**
|
||||
* Visit a parse tree produced by the {@code kasmParamLocation}
|
||||
* labeled alternative in {@link KickCParser#kasmParam}.
|
||||
* @param ctx the parse tree
|
||||
* @return the visitor result
|
||||
*/
|
||||
T visitKasmParamLocation(KickCParser.KasmParamLocationContext ctx);
|
||||
/**
|
||||
* Visit a parse tree produced by {@link KickCParser#kasmResourceList}.
|
||||
* @param ctx the parse tree
|
||||
|
@ -17,6 +17,7 @@ import dk.camelot64.kickc.model.values.*;
|
||||
import dk.camelot64.kickc.parser.KickCBaseVisitor;
|
||||
import dk.camelot64.kickc.parser.KickCParser;
|
||||
import org.antlr.v4.runtime.ParserRuleContext;
|
||||
import org.antlr.v4.runtime.tree.ParseTree;
|
||||
import org.antlr.v4.runtime.tree.TerminalNode;
|
||||
|
||||
import java.io.File;
|
||||
@ -152,14 +153,63 @@ public class Pass0GenerateStatementSequence extends KickCBaseVisitor<Object> {
|
||||
Matcher m = p.matcher(kasm);
|
||||
if(m.find()) {
|
||||
String kickAsmCode = m.group(1).replaceAll("\r", "");
|
||||
sequence.addStatement(new StatementKickAsm(kickAsmCode, new StatementSource(ctx)));
|
||||
}
|
||||
if(ctx.kasmParams() != null) {
|
||||
this.visitKasmParams(ctx.kasmParams());
|
||||
StatementKickAsm statementKickAsm = new StatementKickAsm(kickAsmCode, new StatementSource(ctx));
|
||||
sequence.addStatement(statementKickAsm);
|
||||
if(ctx.kasmParams() != null) {
|
||||
List<KasmDirective> kasmDirectives = this.visitKasmParams(ctx.kasmParams());
|
||||
for(KasmDirective kasmDirective : kasmDirectives) {
|
||||
if(kasmDirective instanceof KasmDirectiveLocation) {
|
||||
statementKickAsm.setLocation(((KasmDirectiveLocation) kasmDirective).getAddress());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
private interface KasmDirective {};
|
||||
|
||||
@Override
|
||||
public List<KasmDirective> visitKasmParams(KickCParser.KasmParamsContext ctx) {
|
||||
ArrayList<KasmDirective> kasmDirectives = new ArrayList<>();
|
||||
List<KickCParser.KasmParamContext> params = ctx.kasmParam();
|
||||
for(KickCParser.KasmParamContext param : params) {
|
||||
KasmDirective directive = (KasmDirective) visit(param);
|
||||
if(directive!=null) {
|
||||
kasmDirectives.add(directive);
|
||||
}
|
||||
}
|
||||
return kasmDirectives;
|
||||
}
|
||||
|
||||
/** KickAssembler directive specifying an absolute address for the generated code/data. */
|
||||
public static class KasmDirectiveLocation implements KasmDirective {
|
||||
|
||||
/** will contain the address to generate the KickAssembler-code to. */
|
||||
private Long address;
|
||||
|
||||
public KasmDirectiveLocation(Long address) {
|
||||
this.address = address;
|
||||
}
|
||||
|
||||
public Long getAddress() {
|
||||
return address;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public KasmDirective visitKasmParamLocation(KickCParser.KasmParamLocationContext ctx) {
|
||||
ParseTree child = ctx.getChild(1);
|
||||
if(ctx.NUMBER()!=null) {
|
||||
Number location = NumberParser.parseLiteral(ctx.NUMBER().getText());
|
||||
return new KasmDirectiveLocation(location.longValue());
|
||||
} else {
|
||||
// PLace inline
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object visitKasmResourceList(KickCParser.KasmResourceListContext ctx) {
|
||||
for(TerminalNode resource : ctx.STRING()) {
|
||||
|
@ -49,9 +49,9 @@ public class Pass4CodeGeneration {
|
||||
ScopeRef currentScope = ScopeRef.ROOT;
|
||||
|
||||
asm.startSegment(null, "Basic Upstart");
|
||||
asm.addLine(new AsmSetPc("Basic", 0x0801));
|
||||
asm.addLine(new AsmSetPc("Basic", AsmFormat.getAsmNumber(0x0801)));
|
||||
asm.addLine(new AsmBasicUpstart("main"));
|
||||
asm.addLine(new AsmSetPc("Program", 0x080d));
|
||||
asm.addLine(new AsmSetPc("Program", AsmFormat.getAsmNumber(0x080d)));
|
||||
|
||||
// Generate global ZP labels
|
||||
asm.startSegment(null, "Global Constants & labels");
|
||||
@ -103,6 +103,19 @@ public class Pass4CodeGeneration {
|
||||
asm.addScopeEnd();
|
||||
}
|
||||
addData(asm, ScopeRef.ROOT);
|
||||
// Add all absolutely placed inline KickAsm
|
||||
for(ControlFlowBlock block : getGraph().getAllBlocks()) {
|
||||
for(Statement statement : block.getStatements()) {
|
||||
if(statement instanceof StatementKickAsm) {
|
||||
StatementKickAsm statementKasm = (StatementKickAsm) statement;
|
||||
if(statementKasm.getLocation() != null) {
|
||||
asm.addLine(new AsmSetPc("Inline", AsmFormat.getAsmNumber(statementKasm.getLocation())));
|
||||
asm.addInlinedKickAsm(statementKasm.getKickAsmCode());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
program.setAsm(asm);
|
||||
}
|
||||
|
||||
@ -426,7 +439,9 @@ public class Pass4CodeGeneration {
|
||||
asmFragmentInstance.generate(asm);
|
||||
} else if(statement instanceof StatementKickAsm) {
|
||||
StatementKickAsm statementKasm = (StatementKickAsm) statement;
|
||||
asm.addInlinedKickAsm(statementKasm.getKickAsmCode());
|
||||
if(statementKasm.getLocation() == null) {
|
||||
asm.addInlinedKickAsm(statementKasm.getKickAsmCode());
|
||||
}
|
||||
} else {
|
||||
throw new RuntimeException("Statement not supported " + statement);
|
||||
}
|
||||
|
@ -4,6 +4,14 @@ import "memory.kc"
|
||||
|
||||
byte* SCREEN = $400;
|
||||
byte* LOGO = $2000;
|
||||
kickasm(resources "logo.png"; location $2000 ) {{
|
||||
logo:
|
||||
.var logoPic = LoadPicture("logo.png", List().add($444444, $808080, $000000, $ffffff))
|
||||
.for (var y=0; y<6 ; y++)
|
||||
.for (var x=0;x<40; x++)
|
||||
.for(var cp=0; cp<8; cp++)
|
||||
.byte logoPic.getMulticolorByte(x,cp+y*8)
|
||||
}}
|
||||
|
||||
const word XSIN_SIZE = 512;
|
||||
|
||||
@ -99,14 +107,3 @@ void render_logo(signed word xpos) {
|
||||
}
|
||||
|
||||
|
||||
kickasm(resources "logo.png" ) {{
|
||||
.label pc_restore = *
|
||||
.pc = $2000
|
||||
logo:
|
||||
.var logoPic = LoadPicture("logo.png", List().add($444444, $808080, $000000, $ffffff))
|
||||
.for (var y=0; y<6 ; y++)
|
||||
.for (var x=0;x<40; x++)
|
||||
.for(var cp=0; cp<8; cp++)
|
||||
.byte logoPic.getMulticolorByte(x,cp+y*8)
|
||||
.pc = pc_restore
|
||||
}}
|
||||
|
@ -21,16 +21,6 @@
|
||||
.const XSIN_SIZE = $200
|
||||
.label rem16u = 2
|
||||
.label xsin_idx = 2
|
||||
.label pc_restore = *
|
||||
.pc = $2000
|
||||
logo:
|
||||
.var logoPic = LoadPicture("logo.png", List().add($444444, $808080, $000000, $ffffff))
|
||||
.for (var y=0; y<6 ; y++)
|
||||
.for (var x=0;x<40; x++)
|
||||
.for(var cp=0; cp<8; cp++)
|
||||
.byte logoPic.getMulticolorByte(x,cp+y*8)
|
||||
.pc = pc_restore
|
||||
|
||||
jsr main
|
||||
main: {
|
||||
.const toD0181_return = (>(SCREEN&$3fff)<<2)|(>LOGO)>>2&$f
|
||||
@ -721,3 +711,11 @@ fill: {
|
||||
}
|
||||
.align $100
|
||||
xsin: .fill 2*XSIN_SIZE, 0
|
||||
.pc = $2000 "Inline"
|
||||
logo:
|
||||
.var logoPic = LoadPicture("logo.png", List().add($444444, $808080, $000000, $ffffff))
|
||||
.for (var y=0; y<6 ; y++)
|
||||
.for (var x=0;x<40; x++)
|
||||
.for(var cp=0; cp<8; cp++)
|
||||
.byte logoPic.getMulticolorByte(x,cp+y*8)
|
||||
|
||||
|
@ -1,403 +1,403 @@
|
||||
@begin: scope:[] from
|
||||
[0] phi() [ ] ( )
|
||||
to:@27
|
||||
@27: scope:[] from @begin
|
||||
kickasm {{ .label pc_restore = *
|
||||
.pc = $2000
|
||||
logo:
|
||||
to:@24
|
||||
@24: scope:[] from @begin
|
||||
kickasm {{ logo:
|
||||
.var logoPic = LoadPicture("logo.png", List().add($444444, $808080, $000000, $ffffff))
|
||||
.for (var y=0; y<6 ; y++)
|
||||
.for (var x=0;x<40; x++)
|
||||
.for(var cp=0; cp<8; cp++)
|
||||
.byte logoPic.getMulticolorByte(x,cp+y*8)
|
||||
.pc = pc_restore
|
||||
}}
|
||||
[2] call main [ ] ( )
|
||||
to:@27
|
||||
@27: scope:[] from @24
|
||||
[2] phi() [ ] ( )
|
||||
[3] call main [ ] ( )
|
||||
to:@end
|
||||
@end: scope:[] from @27
|
||||
[3] phi() [ ] ( )
|
||||
[4] phi() [ ] ( )
|
||||
main: scope:[main] from @27
|
||||
asm { sei }
|
||||
[5] *((const byte*) BORDERCOL#0) ← (const byte) WHITE#0 [ ] ( main:2 [ ] )
|
||||
[6] *((const byte*) BGCOL2#0) ← (const byte) DARK_GREY#0 [ ] ( main:2 [ ] )
|
||||
[7] *((const byte*) BGCOL#0) ← *((const byte*) BGCOL2#0) [ ] ( main:2 [ ] )
|
||||
[8] *((const byte*) BGCOL3#0) ← (const byte) BLACK#0 [ ] ( main:2 [ ] )
|
||||
[6] *((const byte*) BORDERCOL#0) ← (const byte) WHITE#0 [ ] ( main:3 [ ] )
|
||||
[7] *((const byte*) BGCOL2#0) ← (const byte) DARK_GREY#0 [ ] ( main:3 [ ] )
|
||||
[8] *((const byte*) BGCOL#0) ← *((const byte*) BGCOL2#0) [ ] ( main:3 [ ] )
|
||||
[9] *((const byte*) BGCOL3#0) ← (const byte) BLACK#0 [ ] ( main:3 [ ] )
|
||||
to:main::toD0181
|
||||
main::toD0181: scope:[main] from main
|
||||
[9] phi() [ ] ( main:2 [ ] )
|
||||
[10] phi() [ ] ( main:3 [ ] )
|
||||
to:main::@3
|
||||
main::@3: scope:[main] from main::toD0181
|
||||
[10] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 [ ] ( main:2 [ ] )
|
||||
[11] *((const byte*) D016#0) ← (const byte) VIC_MCM#0 [ ] ( main:2 [ ] )
|
||||
[12] call fill [ ] ( main:2 [ ] )
|
||||
[11] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 [ ] ( main:3 [ ] )
|
||||
[12] *((const byte*) D016#0) ← (const byte) VIC_MCM#0 [ ] ( main:3 [ ] )
|
||||
[13] call fill [ ] ( main:3 [ ] )
|
||||
to:main::@4
|
||||
main::@4: scope:[main] from main::@3
|
||||
[13] phi() [ ] ( main:2 [ ] )
|
||||
[14] call fill [ ] ( main:2 [ ] )
|
||||
[14] phi() [ ] ( main:3 [ ] )
|
||||
[15] call fill [ ] ( main:3 [ ] )
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main::@1 main::@4
|
||||
[15] (byte) main::ch#2 ← phi( main::@1/(byte) main::ch#1 main::@4/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ main::ch#2 ] ( main:2 [ main::ch#2 ] )
|
||||
[16] *((const byte*) SCREEN#0 + (byte) main::ch#2) ← (byte) main::ch#2 [ main::ch#2 ] ( main:2 [ main::ch#2 ] )
|
||||
[17] (byte) main::ch#1 ← ++ (byte) main::ch#2 [ main::ch#1 ] ( main:2 [ main::ch#1 ] )
|
||||
[18] if((byte) main::ch#1!=(byte/word/signed word/dword/signed dword) 240) goto main::@1 [ main::ch#1 ] ( main:2 [ main::ch#1 ] )
|
||||
[16] (byte) main::ch#2 ← phi( main::@1/(byte) main::ch#1 main::@4/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ main::ch#2 ] ( main:3 [ main::ch#2 ] )
|
||||
[17] *((const byte*) SCREEN#0 + (byte) main::ch#2) ← (byte) main::ch#2 [ main::ch#2 ] ( main:3 [ main::ch#2 ] )
|
||||
[18] (byte) main::ch#1 ← ++ (byte) main::ch#2 [ main::ch#1 ] ( main:3 [ main::ch#1 ] )
|
||||
[19] if((byte) main::ch#1!=(byte/word/signed word/dword/signed dword) 240) goto main::@1 [ main::ch#1 ] ( main:3 [ main::ch#1 ] )
|
||||
to:main::@2
|
||||
main::@2: scope:[main] from main::@1
|
||||
[19] phi() [ ] ( main:2 [ ] )
|
||||
[20] call sin16s_gen2 [ ] ( main:2 [ ] )
|
||||
[20] phi() [ ] ( main:3 [ ] )
|
||||
[21] call sin16s_gen2 [ ] ( main:3 [ ] )
|
||||
to:main::@6
|
||||
main::@6: scope:[main] from main::@2
|
||||
[21] phi() [ ] ( main:2 [ ] )
|
||||
[22] call loop [ ] ( main:2 [ ] )
|
||||
[22] phi() [ ] ( main:3 [ ] )
|
||||
[23] call loop [ ] ( main:3 [ ] )
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@6
|
||||
[23] return [ ] ( main:2 [ ] )
|
||||
[24] return [ ] ( main:3 [ ] )
|
||||
to:@return
|
||||
loop: scope:[loop] from main::@6
|
||||
[24] phi() [ ] ( main:2::loop:22 [ ] )
|
||||
[25] phi() [ ] ( main:3::loop:23 [ ] )
|
||||
to:loop::@1
|
||||
loop::@1: scope:[loop] from loop loop::@7
|
||||
[25] (word) xsin_idx#11 ← phi( loop/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@7/(word) xsin_idx#19 ) [ xsin_idx#11 ] ( main:2::loop:22 [ xsin_idx#11 ] )
|
||||
[26] (word) xsin_idx#11 ← phi( loop/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@7/(word) xsin_idx#19 ) [ xsin_idx#11 ] ( main:3::loop:23 [ xsin_idx#11 ] )
|
||||
to:loop::@4
|
||||
loop::@4: scope:[loop] from loop::@1 loop::@4
|
||||
[26] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto loop::@4 [ xsin_idx#11 ] ( main:2::loop:22 [ xsin_idx#11 ] )
|
||||
[27] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) 255) goto loop::@4 [ xsin_idx#11 ] ( main:3::loop:23 [ xsin_idx#11 ] )
|
||||
to:loop::@6
|
||||
loop::@6: scope:[loop] from loop::@4
|
||||
[27] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) [ xsin_idx#11 ] ( main:2::loop:22 [ xsin_idx#11 ] )
|
||||
[28] (signed word*~) loop::$1 ← (const signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#11 [ xsin_idx#11 loop::$1 ] ( main:2::loop:22 [ xsin_idx#11 loop::$1 ] )
|
||||
[29] (signed word) loop::xpos#0 ← *((signed word*~) loop::$1) [ xsin_idx#11 loop::xpos#0 ] ( main:2::loop:22 [ xsin_idx#11 loop::xpos#0 ] )
|
||||
[30] (signed word) render_logo::xpos#0 ← (signed word) loop::xpos#0 [ xsin_idx#11 render_logo::xpos#0 ] ( main:2::loop:22 [ xsin_idx#11 render_logo::xpos#0 ] )
|
||||
[31] call render_logo [ xsin_idx#11 ] ( main:2::loop:22 [ xsin_idx#11 ] )
|
||||
[28] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) [ xsin_idx#11 ] ( main:3::loop:23 [ xsin_idx#11 ] )
|
||||
[29] (signed word*~) loop::$1 ← (const signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#11 [ xsin_idx#11 loop::$1 ] ( main:3::loop:23 [ xsin_idx#11 loop::$1 ] )
|
||||
[30] (signed word) loop::xpos#0 ← *((signed word*~) loop::$1) [ xsin_idx#11 loop::xpos#0 ] ( main:3::loop:23 [ xsin_idx#11 loop::xpos#0 ] )
|
||||
[31] (signed word) render_logo::xpos#0 ← (signed word) loop::xpos#0 [ xsin_idx#11 render_logo::xpos#0 ] ( main:3::loop:23 [ xsin_idx#11 render_logo::xpos#0 ] )
|
||||
[32] call render_logo [ xsin_idx#11 ] ( main:3::loop:23 [ xsin_idx#11 ] )
|
||||
to:loop::@15
|
||||
loop::@15: scope:[loop] from loop::@6
|
||||
[32] (word) xsin_idx#3 ← (word) xsin_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ xsin_idx#3 ] ( main:2::loop:22 [ xsin_idx#3 ] )
|
||||
[33] if((word) xsin_idx#3!=(const word) XSIN_SIZE#0*(byte/signed byte/word/signed word/dword/signed dword) 2) goto loop::@16 [ xsin_idx#3 ] ( main:2::loop:22 [ xsin_idx#3 ] )
|
||||
[33] (word) xsin_idx#3 ← (word) xsin_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ xsin_idx#3 ] ( main:3::loop:23 [ xsin_idx#3 ] )
|
||||
[34] if((word) xsin_idx#3!=(const word) XSIN_SIZE#0*(byte/signed byte/word/signed word/dword/signed dword) 2) goto loop::@16 [ xsin_idx#3 ] ( main:3::loop:23 [ xsin_idx#3 ] )
|
||||
to:loop::@7
|
||||
loop::@7: scope:[loop] from loop::@15 loop::@16
|
||||
[34] (word) xsin_idx#19 ← phi( loop::@15/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@16/(word) xsin_idx#3 ) [ xsin_idx#19 ] ( main:2::loop:22 [ xsin_idx#19 ] )
|
||||
[35] *((const byte*) BORDERCOL#0) ← -- *((const byte*) BORDERCOL#0) [ xsin_idx#19 ] ( main:2::loop:22 [ xsin_idx#19 ] )
|
||||
[35] (word) xsin_idx#19 ← phi( loop::@15/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@16/(word) xsin_idx#3 ) [ xsin_idx#19 ] ( main:3::loop:23 [ xsin_idx#19 ] )
|
||||
[36] *((const byte*) BORDERCOL#0) ← -- *((const byte*) BORDERCOL#0) [ xsin_idx#19 ] ( main:3::loop:23 [ xsin_idx#19 ] )
|
||||
to:loop::@1
|
||||
loop::@16: scope:[loop] from loop::@15
|
||||
[36] phi() [ xsin_idx#3 ] ( main:2::loop:22 [ xsin_idx#3 ] )
|
||||
[37] phi() [ xsin_idx#3 ] ( main:3::loop:23 [ xsin_idx#3 ] )
|
||||
to:loop::@7
|
||||
render_logo: scope:[render_logo] from loop::@6
|
||||
[37] (byte~) render_logo::$0 ← ((byte)) (signed word) render_logo::xpos#0 [ render_logo::xpos#0 render_logo::$0 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::xpos#0 render_logo::$0 ] )
|
||||
[38] (byte~) render_logo::$1 ← (byte~) render_logo::$0 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ render_logo::xpos#0 render_logo::$1 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::xpos#0 render_logo::$1 ] )
|
||||
[39] (byte~) render_logo::$2 ← (const byte) VIC_MCM#0 | (byte~) render_logo::$1 [ render_logo::xpos#0 render_logo::$2 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::xpos#0 render_logo::$2 ] )
|
||||
[40] *((const byte*) D016#0) ← (byte~) render_logo::$2 [ render_logo::xpos#0 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::xpos#0 ] )
|
||||
[41] (signed word~) render_logo::$3 ← (signed word) render_logo::xpos#0 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ render_logo::xpos#0 render_logo::$3 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::xpos#0 render_logo::$3 ] )
|
||||
[42] (signed byte) render_logo::x_char#0 ← ((signed byte)) (signed word~) render_logo::$3 [ render_logo::xpos#0 render_logo::x_char#0 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::xpos#0 render_logo::x_char#0 ] )
|
||||
[43] if((signed word) render_logo::xpos#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_logo::@1 [ render_logo::x_char#0 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::x_char#0 ] )
|
||||
[38] (byte~) render_logo::$0 ← ((byte)) (signed word) render_logo::xpos#0 [ render_logo::xpos#0 render_logo::$0 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$0 ] )
|
||||
[39] (byte~) render_logo::$1 ← (byte~) render_logo::$0 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ render_logo::xpos#0 render_logo::$1 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$1 ] )
|
||||
[40] (byte~) render_logo::$2 ← (const byte) VIC_MCM#0 | (byte~) render_logo::$1 [ render_logo::xpos#0 render_logo::$2 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$2 ] )
|
||||
[41] *((const byte*) D016#0) ← (byte~) render_logo::$2 [ render_logo::xpos#0 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 ] )
|
||||
[42] (signed word~) render_logo::$3 ← (signed word) render_logo::xpos#0 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ render_logo::xpos#0 render_logo::$3 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$3 ] )
|
||||
[43] (signed byte) render_logo::x_char#0 ← ((signed byte)) (signed word~) render_logo::$3 [ render_logo::xpos#0 render_logo::x_char#0 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::x_char#0 ] )
|
||||
[44] if((signed word) render_logo::xpos#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_logo::@1 [ render_logo::x_char#0 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 ] )
|
||||
to:render_logo::@2
|
||||
render_logo::@2: scope:[render_logo] from render_logo render_logo::@3
|
||||
[44] (byte) render_logo::screen_idx#13 ← phi( render_logo/(byte/signed byte/word/signed word/dword/signed dword) 0 render_logo::@3/(byte) render_logo::screen_idx#2 ) [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[45] if((byte) render_logo::screen_idx#13!=(byte)(signed byte) render_logo::x_char#0) goto render_logo::@3 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[45] (byte) render_logo::screen_idx#13 ← phi( render_logo/(byte/signed byte/word/signed word/dword/signed dword) 0 render_logo::@3/(byte) render_logo::screen_idx#2 ) [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[46] if((byte) render_logo::screen_idx#13!=(byte)(signed byte) render_logo::x_char#0) goto render_logo::@3 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
to:render_logo::@5
|
||||
render_logo::@5: scope:[render_logo] from render_logo::@2 render_logo::@6
|
||||
[46] (byte) render_logo::logo_idx#4 ← phi( render_logo::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 render_logo::@6/(byte) render_logo::logo_idx#2 ) [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[46] (byte) render_logo::screen_idx#8 ← phi( render_logo::@2/(byte) render_logo::screen_idx#13 render_logo::@6/(byte) render_logo::screen_idx#3 ) [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[47] if((byte) render_logo::screen_idx#8!=(byte/signed byte/word/signed word/dword/signed dword) 40) goto render_logo::@6 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[47] (byte) render_logo::logo_idx#4 ← phi( render_logo::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 render_logo::@6/(byte) render_logo::logo_idx#2 ) [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[47] (byte) render_logo::screen_idx#8 ← phi( render_logo::@2/(byte) render_logo::screen_idx#13 render_logo::@6/(byte) render_logo::screen_idx#3 ) [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[48] if((byte) render_logo::screen_idx#8!=(byte/signed byte/word/signed word/dword/signed dword) 40) goto render_logo::@6 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
to:render_logo::@return
|
||||
render_logo::@return: scope:[render_logo] from render_logo::@12 render_logo::@5
|
||||
[48] return [ ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 ] )
|
||||
[49] return [ ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 ] )
|
||||
to:@return
|
||||
render_logo::@6: scope:[render_logo] from render_logo::@5
|
||||
[49] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#8) ← (byte) render_logo::logo_idx#4 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[50] (byte/signed word/word/dword/signed dword~) render_logo::$22 ← (byte) render_logo::logo_idx#4 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 [ render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$22 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$22 ] )
|
||||
[51] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#8) ← (byte/signed word/word/dword/signed dword~) render_logo::$22 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[52] (byte/signed word/word/dword/signed dword~) render_logo::$26 ← (byte) render_logo::logo_idx#4 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 [ render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$26 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$26 ] )
|
||||
[53] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#8) ← (byte/signed word/word/dword/signed dword~) render_logo::$26 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[54] (byte/signed word/word/dword/signed dword~) render_logo::$30 ← (byte) render_logo::logo_idx#4 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 [ render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$30 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$30 ] )
|
||||
[55] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#8) ← (byte/signed word/word/dword/signed dword~) render_logo::$30 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[56] (byte/word/signed word/dword/signed dword~) render_logo::$34 ← (byte) render_logo::logo_idx#4 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 [ render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$34 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$34 ] )
|
||||
[57] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#8) ← (byte/word/signed word/dword/signed dword~) render_logo::$34 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[58] (byte/word/signed word/dword/signed dword~) render_logo::$38 ← (byte) render_logo::logo_idx#4 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 [ render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$38 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$38 ] )
|
||||
[59] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#8) ← (byte/word/signed word/dword/signed dword~) render_logo::$38 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[60] (byte) render_logo::screen_idx#3 ← ++ (byte) render_logo::screen_idx#8 [ render_logo::logo_idx#4 render_logo::screen_idx#3 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#4 render_logo::screen_idx#3 ] )
|
||||
[61] (byte) render_logo::logo_idx#2 ← ++ (byte) render_logo::logo_idx#4 [ render_logo::screen_idx#3 render_logo::logo_idx#2 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#3 render_logo::logo_idx#2 ] )
|
||||
[50] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#8) ← (byte) render_logo::logo_idx#4 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[51] (byte/signed word/word/dword/signed dword~) render_logo::$22 ← (byte) render_logo::logo_idx#4 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 [ render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$22 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$22 ] )
|
||||
[52] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#8) ← (byte/signed word/word/dword/signed dword~) render_logo::$22 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[53] (byte/signed word/word/dword/signed dword~) render_logo::$26 ← (byte) render_logo::logo_idx#4 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 [ render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$26 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$26 ] )
|
||||
[54] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#8) ← (byte/signed word/word/dword/signed dword~) render_logo::$26 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[55] (byte/signed word/word/dword/signed dword~) render_logo::$30 ← (byte) render_logo::logo_idx#4 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 [ render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$30 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$30 ] )
|
||||
[56] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#8) ← (byte/signed word/word/dword/signed dword~) render_logo::$30 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[57] (byte/word/signed word/dword/signed dword~) render_logo::$34 ← (byte) render_logo::logo_idx#4 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 [ render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$34 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$34 ] )
|
||||
[58] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#8) ← (byte/word/signed word/dword/signed dword~) render_logo::$34 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[59] (byte/word/signed word/dword/signed dword~) render_logo::$38 ← (byte) render_logo::logo_idx#4 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 [ render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$38 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 render_logo::$38 ] )
|
||||
[60] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#8) ← (byte/word/signed word/dword/signed dword~) render_logo::$38 [ render_logo::screen_idx#8 render_logo::logo_idx#4 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#8 render_logo::logo_idx#4 ] )
|
||||
[61] (byte) render_logo::screen_idx#3 ← ++ (byte) render_logo::screen_idx#8 [ render_logo::logo_idx#4 render_logo::screen_idx#3 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#4 render_logo::screen_idx#3 ] )
|
||||
[62] (byte) render_logo::logo_idx#2 ← ++ (byte) render_logo::logo_idx#4 [ render_logo::screen_idx#3 render_logo::logo_idx#2 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#3 render_logo::logo_idx#2 ] )
|
||||
to:render_logo::@5
|
||||
render_logo::@3: scope:[render_logo] from render_logo::@2
|
||||
[62] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#13) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[63] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#13) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[64] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#13) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#13) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#13) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#13) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[68] (byte) render_logo::screen_idx#2 ← ++ (byte) render_logo::screen_idx#13 [ render_logo::x_char#0 render_logo::screen_idx#2 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#2 ] )
|
||||
[63] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#13) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[64] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#13) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#13) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#13) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#13) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[68] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#13) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#13 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#13 ] )
|
||||
[69] (byte) render_logo::screen_idx#2 ← ++ (byte) render_logo::screen_idx#13 [ render_logo::x_char#0 render_logo::screen_idx#2 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#2 ] )
|
||||
to:render_logo::@2
|
||||
render_logo::@1: scope:[render_logo] from render_logo
|
||||
[69] (signed byte~) render_logo::$39 ← - (signed byte) render_logo::x_char#0 [ render_logo::$39 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::$39 ] )
|
||||
[70] (byte~) render_logo::logo_idx#9 ← (byte)(signed byte~) render_logo::$39 [ render_logo::logo_idx#9 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#9 ] )
|
||||
[70] (signed byte~) render_logo::$39 ← - (signed byte) render_logo::x_char#0 [ render_logo::$39 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::$39 ] )
|
||||
[71] (byte~) render_logo::logo_idx#9 ← (byte)(signed byte~) render_logo::$39 [ render_logo::logo_idx#9 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#9 ] )
|
||||
to:render_logo::@9
|
||||
render_logo::@9: scope:[render_logo] from render_logo::@1 render_logo::@10
|
||||
[71] (byte) render_logo::screen_idx#10 ← phi( render_logo::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 render_logo::@10/(byte) render_logo::screen_idx#4 ) [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[71] (byte) render_logo::logo_idx#5 ← phi( render_logo::@1/(byte~) render_logo::logo_idx#9 render_logo::@10/(byte) render_logo::logo_idx#3 ) [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[72] if((byte) render_logo::logo_idx#5!=(byte/signed byte/word/signed word/dword/signed dword) 40) goto render_logo::@10 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[72] (byte) render_logo::screen_idx#10 ← phi( render_logo::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 render_logo::@10/(byte) render_logo::screen_idx#4 ) [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[72] (byte) render_logo::logo_idx#5 ← phi( render_logo::@1/(byte~) render_logo::logo_idx#9 render_logo::@10/(byte) render_logo::logo_idx#3 ) [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[73] if((byte) render_logo::logo_idx#5!=(byte/signed byte/word/signed word/dword/signed dword) 40) goto render_logo::@10 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
to:render_logo::@12
|
||||
render_logo::@12: scope:[render_logo] from render_logo::@13 render_logo::@9
|
||||
[73] (byte) render_logo::screen_idx#11 ← phi( render_logo::@13/(byte) render_logo::screen_idx#5 render_logo::@9/(byte) render_logo::screen_idx#10 ) [ render_logo::screen_idx#11 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[74] if((byte) render_logo::screen_idx#11!=(byte/signed byte/word/signed word/dword/signed dword) 40) goto render_logo::@13 [ render_logo::screen_idx#11 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[74] (byte) render_logo::screen_idx#11 ← phi( render_logo::@13/(byte) render_logo::screen_idx#5 render_logo::@9/(byte) render_logo::screen_idx#10 ) [ render_logo::screen_idx#11 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[75] if((byte) render_logo::screen_idx#11!=(byte/signed byte/word/signed word/dword/signed dword) 40) goto render_logo::@13 [ render_logo::screen_idx#11 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
to:render_logo::@return
|
||||
render_logo::@13: scope:[render_logo] from render_logo::@12
|
||||
[75] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#11) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#11 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[76] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#11) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#11 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[77] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#11) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#11 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#11) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#11 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#11) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#11 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#11) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#11 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[81] (byte) render_logo::screen_idx#5 ← ++ (byte) render_logo::screen_idx#11 [ render_logo::screen_idx#5 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::screen_idx#5 ] )
|
||||
[76] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#11) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#11 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[77] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#11) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#11 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#11) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#11 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#11) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#11 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#11) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#11 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[81] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#11) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#11 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#11 ] )
|
||||
[82] (byte) render_logo::screen_idx#5 ← ++ (byte) render_logo::screen_idx#11 [ render_logo::screen_idx#5 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#5 ] )
|
||||
to:render_logo::@12
|
||||
render_logo::@10: scope:[render_logo] from render_logo::@9
|
||||
[82] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#10) ← (byte) render_logo::logo_idx#5 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[83] (byte/signed word/word/dword/signed dword~) render_logo::$45 ← (byte) render_logo::logo_idx#5 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 [ render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$45 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$45 ] )
|
||||
[84] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$45 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[85] (byte/signed word/word/dword/signed dword~) render_logo::$49 ← (byte) render_logo::logo_idx#5 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 [ render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$49 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$49 ] )
|
||||
[86] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$49 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[87] (byte/signed word/word/dword/signed dword~) render_logo::$53 ← (byte) render_logo::logo_idx#5 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 [ render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$53 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$53 ] )
|
||||
[88] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$53 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[89] (byte/word/signed word/dword/signed dword~) render_logo::$57 ← (byte) render_logo::logo_idx#5 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 [ render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$57 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$57 ] )
|
||||
[90] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#10) ← (byte/word/signed word/dword/signed dword~) render_logo::$57 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[91] (byte/word/signed word/dword/signed dword~) render_logo::$61 ← (byte) render_logo::logo_idx#5 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 [ render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$61 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$61 ] )
|
||||
[92] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#10) ← (byte/word/signed word/dword/signed dword~) render_logo::$61 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[93] (byte) render_logo::screen_idx#4 ← ++ (byte) render_logo::screen_idx#10 [ render_logo::logo_idx#5 render_logo::screen_idx#4 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#4 ] )
|
||||
[94] (byte) render_logo::logo_idx#3 ← ++ (byte) render_logo::logo_idx#5 [ render_logo::logo_idx#3 render_logo::screen_idx#4 ] ( main:2::loop:22::render_logo:31 [ xsin_idx#11 render_logo::logo_idx#3 render_logo::screen_idx#4 ] )
|
||||
[83] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#10) ← (byte) render_logo::logo_idx#5 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[84] (byte/signed word/word/dword/signed dword~) render_logo::$45 ← (byte) render_logo::logo_idx#5 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 [ render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$45 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$45 ] )
|
||||
[85] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$45 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[86] (byte/signed word/word/dword/signed dword~) render_logo::$49 ← (byte) render_logo::logo_idx#5 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 [ render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$49 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$49 ] )
|
||||
[87] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$49 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[88] (byte/signed word/word/dword/signed dword~) render_logo::$53 ← (byte) render_logo::logo_idx#5 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 [ render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$53 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$53 ] )
|
||||
[89] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$53 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[90] (byte/word/signed word/dword/signed dword~) render_logo::$57 ← (byte) render_logo::logo_idx#5 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 [ render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$57 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$57 ] )
|
||||
[91] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#10) ← (byte/word/signed word/dword/signed dword~) render_logo::$57 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[92] (byte/word/signed word/dword/signed dword~) render_logo::$61 ← (byte) render_logo::logo_idx#5 + (byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 [ render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$61 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 render_logo::$61 ] )
|
||||
[93] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 40*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#10) ← (byte/word/signed word/dword/signed dword~) render_logo::$61 [ render_logo::logo_idx#5 render_logo::screen_idx#10 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#10 ] )
|
||||
[94] (byte) render_logo::screen_idx#4 ← ++ (byte) render_logo::screen_idx#10 [ render_logo::logo_idx#5 render_logo::screen_idx#4 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#5 render_logo::screen_idx#4 ] )
|
||||
[95] (byte) render_logo::logo_idx#3 ← ++ (byte) render_logo::logo_idx#5 [ render_logo::logo_idx#3 render_logo::screen_idx#4 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::logo_idx#3 render_logo::screen_idx#4 ] )
|
||||
to:render_logo::@9
|
||||
sin16s_gen2: scope:[sin16s_gen2] from main::@2
|
||||
[95] phi() [ ] ( main:2::sin16s_gen2:20 [ ] )
|
||||
[96] call div32u16u [ div32u16u::return#0 ] ( main:2::sin16s_gen2:20 [ div32u16u::return#0 ] )
|
||||
[97] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:2::sin16s_gen2:20 [ div32u16u::return#2 ] )
|
||||
[96] phi() [ ] ( main:3::sin16s_gen2:21 [ ] )
|
||||
[97] call div32u16u [ div32u16u::return#0 ] ( main:3::sin16s_gen2:21 [ div32u16u::return#0 ] )
|
||||
[98] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:3::sin16s_gen2:21 [ div32u16u::return#2 ] )
|
||||
to:sin16s_gen2::@3
|
||||
sin16s_gen2::@3: scope:[sin16s_gen2] from sin16s_gen2
|
||||
[98] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 [ sin16s_gen2::step#0 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 ] )
|
||||
[99] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 [ sin16s_gen2::step#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 ] )
|
||||
to:sin16s_gen2::@1
|
||||
sin16s_gen2::@1: scope:[sin16s_gen2] from sin16s_gen2::@3 sin16s_gen2::@5
|
||||
[99] (word) sin16s_gen2::i#2 ← phi( sin16s_gen2::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen2::@5/(word) sin16s_gen2::i#1 ) [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] )
|
||||
[99] (signed word*) sin16s_gen2::sintab#2 ← phi( sin16s_gen2::@3/(const signed word[XSIN_SIZE#0]) xsin#0 sin16s_gen2::@5/(signed word*) sin16s_gen2::sintab#0 ) [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] )
|
||||
[99] (dword) sin16s_gen2::x#2 ← phi( sin16s_gen2::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen2::@5/(dword) sin16s_gen2::x#1 ) [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] )
|
||||
[100] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] )
|
||||
[101] call sin16s [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#1 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#1 ] )
|
||||
[102] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] )
|
||||
[100] (word) sin16s_gen2::i#2 ← phi( sin16s_gen2::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen2::@5/(word) sin16s_gen2::i#1 ) [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] )
|
||||
[100] (signed word*) sin16s_gen2::sintab#2 ← phi( sin16s_gen2::@3/(const signed word[XSIN_SIZE#0]) xsin#0 sin16s_gen2::@5/(signed word*) sin16s_gen2::sintab#0 ) [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] )
|
||||
[100] (dword) sin16s_gen2::x#2 ← phi( sin16s_gen2::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen2::@5/(dword) sin16s_gen2::x#1 ) [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] )
|
||||
[101] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] )
|
||||
[102] call sin16s [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#1 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#1 ] )
|
||||
[103] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] )
|
||||
to:sin16s_gen2::@4
|
||||
sin16s_gen2::@4: scope:[sin16s_gen2] from sin16s_gen2::@1
|
||||
[103] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] )
|
||||
[104] call mul16s [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] )
|
||||
[105] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] )
|
||||
[104] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] )
|
||||
[105] call mul16s [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] )
|
||||
[106] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] )
|
||||
to:sin16s_gen2::@5
|
||||
sin16s_gen2::@5: scope:[sin16s_gen2] from sin16s_gen2::@4
|
||||
[106] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] )
|
||||
[107] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] )
|
||||
[108] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] )
|
||||
[109] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] )
|
||||
[110] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] )
|
||||
[111] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] )
|
||||
[112] (word) sin16s_gen2::i#1 ← ++ (word) sin16s_gen2::i#2 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] )
|
||||
[113] if((word) sin16s_gen2::i#1<(const word) XSIN_SIZE#0) goto sin16s_gen2::@1 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] ( main:2::sin16s_gen2:20 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] )
|
||||
[107] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] )
|
||||
[108] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] )
|
||||
[109] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] )
|
||||
[110] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] )
|
||||
[111] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] )
|
||||
[112] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] )
|
||||
[113] (word) sin16s_gen2::i#1 ← ++ (word) sin16s_gen2::i#2 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] )
|
||||
[114] if((word) sin16s_gen2::i#1<(const word) XSIN_SIZE#0) goto sin16s_gen2::@1 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] )
|
||||
to:sin16s_gen2::@return
|
||||
sin16s_gen2::@return: scope:[sin16s_gen2] from sin16s_gen2::@5
|
||||
[114] return [ ] ( main:2::sin16s_gen2:20 [ ] )
|
||||
[115] return [ ] ( main:3::sin16s_gen2:21 [ ] )
|
||||
to:@return
|
||||
mul16s: scope:[mul16s] from sin16s_gen2::@4
|
||||
[115] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16u::a#8 ] ( main:2::sin16s_gen2:20::mul16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#8 ] )
|
||||
[116] call mul16u [ mul16s::a#0 mul16u::res#2 ] ( main:2::sin16s_gen2:20::mul16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 ] )
|
||||
[117] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mul16s::a#0 mul16u::return#2 ] ( main:2::sin16s_gen2:20::mul16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::return#2 ] )
|
||||
[116] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16u::a#8 ] ( main:3::sin16s_gen2:21::mul16s:105 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#8 ] )
|
||||
[117] call mul16u [ mul16s::a#0 mul16u::res#2 ] ( main:3::sin16s_gen2:21::mul16s:105 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 ] )
|
||||
[118] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mul16s::a#0 mul16u::return#2 ] ( main:3::sin16s_gen2:21::mul16s:105 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::return#2 ] )
|
||||
to:mul16s::@6
|
||||
mul16s::@6: scope:[mul16s] from mul16s
|
||||
[118] (dword) mul16s::m#0 ← (dword) mul16u::return#2 [ mul16s::a#0 mul16s::m#0 ] ( main:2::sin16s_gen2:20::mul16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16s::m#0 ] )
|
||||
[119] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 [ mul16s::m#0 ] ( main:2::sin16s_gen2:20::mul16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 ] )
|
||||
[119] (dword) mul16s::m#0 ← (dword) mul16u::return#2 [ mul16s::a#0 mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:105 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16s::m#0 ] )
|
||||
[120] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 [ mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:105 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 ] )
|
||||
to:mul16s::@3
|
||||
mul16s::@3: scope:[mul16s] from mul16s::@6
|
||||
[120] (word~) mul16s::$6 ← > (dword) mul16s::m#0 [ mul16s::m#0 mul16s::$6 ] ( main:2::sin16s_gen2:20::mul16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$6 ] )
|
||||
[121] (word~) mul16s::$16 ← (word~) mul16s::$6 - ((word))(const signed word) sin16s_gen2::ampl#0 [ mul16s::m#0 mul16s::$16 ] ( main:2::sin16s_gen2:20::mul16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$16 ] )
|
||||
[122] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::m#1 ] ( main:2::sin16s_gen2:20::mul16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#1 ] )
|
||||
[121] (word~) mul16s::$6 ← > (dword) mul16s::m#0 [ mul16s::m#0 mul16s::$6 ] ( main:3::sin16s_gen2:21::mul16s:105 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$6 ] )
|
||||
[122] (word~) mul16s::$16 ← (word~) mul16s::$6 - ((word))(const signed word) sin16s_gen2::ampl#0 [ mul16s::m#0 mul16s::$16 ] ( main:3::sin16s_gen2:21::mul16s:105 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$16 ] )
|
||||
[123] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::m#1 ] ( main:3::sin16s_gen2:21::mul16s:105 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#1 ] )
|
||||
to:mul16s::@1
|
||||
mul16s::@1: scope:[mul16s] from mul16s::@3 mul16s::@6
|
||||
[123] (dword) mul16s::m#4 ← phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@6/(dword) mul16s::m#0 ) [ mul16s::m#4 ] ( main:2::sin16s_gen2:20::mul16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#4 ] )
|
||||
[124] (dword) mul16s::m#4 ← phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@6/(dword) mul16s::m#0 ) [ mul16s::m#4 ] ( main:3::sin16s_gen2:21::mul16s:105 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#4 ] )
|
||||
to:mul16s::@2
|
||||
mul16s::@2: scope:[mul16s] from mul16s::@1
|
||||
[124] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:2::sin16s_gen2:20::mul16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] )
|
||||
[125] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:3::sin16s_gen2:21::mul16s:105 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] )
|
||||
to:mul16s::@return
|
||||
mul16s::@return: scope:[mul16s] from mul16s::@2
|
||||
[125] return [ mul16s::return#0 ] ( main:2::sin16s_gen2:20::mul16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] )
|
||||
[126] return [ mul16s::return#0 ] ( main:3::sin16s_gen2:21::mul16s:105 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] )
|
||||
to:@return
|
||||
mul16u: scope:[mul16u] from mul16s mulu16_sel
|
||||
[126] (word) mul16u::a#6 ← phi( mul16s/(word~) mul16u::a#8 mulu16_sel/(word) mul16u::a#2 ) [ mul16u::b#2 mul16u::a#6 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::b#2 mul16u::a#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] )
|
||||
[126] (word) mul16u::b#2 ← phi( mul16s/((word))(const signed word) sin16s_gen2::ampl#0 mulu16_sel/(word) mul16u::b#1 ) [ mul16u::b#2 mul16u::a#6 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::b#2 mul16u::a#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] )
|
||||
[127] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#6 mul16u::mb#0 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] )
|
||||
[127] (word) mul16u::a#6 ← phi( mul16s/(word~) mul16u::a#8 mulu16_sel/(word) mul16u::a#2 ) [ mul16u::b#2 mul16u::a#6 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::b#2 mul16u::a#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] )
|
||||
[127] (word) mul16u::b#2 ← phi( mul16s/((word))(const signed word) sin16s_gen2::ampl#0 mulu16_sel/(word) mul16u::b#1 ) [ mul16u::b#2 mul16u::a#6 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::b#2 mul16u::a#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::b#2 mul16u::a#6 ] )
|
||||
[128] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] )
|
||||
to:mul16u::@1
|
||||
mul16u::@1: scope:[mul16u] from mul16u mul16u::@4
|
||||
[128] (dword) mul16u::mb#2 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] )
|
||||
[128] (dword) mul16u::res#2 ← phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@4/(dword) mul16u::res#6 ) [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] )
|
||||
[128] (word) mul16u::a#3 ← phi( mul16u/(word) mul16u::a#6 mul16u::@4/(word) mul16u::a#0 ) [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] )
|
||||
[129] if((word) mul16u::a#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] )
|
||||
[129] (dword) mul16u::mb#2 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] )
|
||||
[129] (dword) mul16u::res#2 ← phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@4/(dword) mul16u::res#6 ) [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] )
|
||||
[129] (word) mul16u::a#3 ← phi( mul16u/(word) mul16u::a#6 mul16u::@4/(word) mul16u::a#0 ) [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] )
|
||||
[130] if((word) mul16u::a#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] )
|
||||
to:mul16u::@return
|
||||
mul16u::@return: scope:[mul16u] from mul16u::@1
|
||||
[130] return [ mul16u::res#2 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 ] )
|
||||
[131] return [ mul16u::res#2 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 ] )
|
||||
to:@return
|
||||
mul16u::@2: scope:[mul16u] from mul16u::@1
|
||||
[131] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] )
|
||||
[132] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@4 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] )
|
||||
[132] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] )
|
||||
[133] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@4 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] )
|
||||
to:mul16u::@7
|
||||
mul16u::@7: scope:[mul16u] from mul16u::@2
|
||||
[133] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] )
|
||||
[134] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] )
|
||||
to:mul16u::@4
|
||||
mul16u::@4: scope:[mul16u] from mul16u::@2 mul16u::@7
|
||||
[134] (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@7/(dword) mul16u::res#1 ) [ mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] )
|
||||
[135] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] )
|
||||
[136] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] ( main:2::sin16s_gen2:20::mul16s:104::mul16u:116 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167::mul16u:180 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] )
|
||||
[135] (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@7/(dword) mul16u::res#1 ) [ mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#6 ] )
|
||||
[136] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::mb#2 mul16u::a#0 mul16u::res#6 ] )
|
||||
[137] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] ( main:3::sin16s_gen2:21::mul16s:105::mul16u:117 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168::mul16u:181 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#0 mul16u::res#6 mul16u::mb#1 ] )
|
||||
to:mul16u::@1
|
||||
sin16s: scope:[sin16s] from sin16s_gen2::@1
|
||||
[137] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 [ sin16s::x#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] )
|
||||
[138] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 [ sin16s::x#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] )
|
||||
to:sin16s::@4
|
||||
sin16s::@4: scope:[sin16s] from sin16s
|
||||
[138] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#1 ] )
|
||||
[139] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#1 ] )
|
||||
to:sin16s::@1
|
||||
sin16s::@1: scope:[sin16s] from sin16s sin16s::@4
|
||||
[139] (byte) sin16s::isUpper#2 ← phi( sin16s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ sin16s::x#4 sin16s::isUpper#2 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#4 sin16s::isUpper#2 ] )
|
||||
[139] (dword) sin16s::x#4 ← phi( sin16s/(dword) sin16s::x#0 sin16s::@4/(dword) sin16s::x#1 ) [ sin16s::x#4 sin16s::isUpper#2 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#4 sin16s::isUpper#2 ] )
|
||||
[140] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 [ sin16s::x#4 sin16s::isUpper#2 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#4 sin16s::isUpper#2 ] )
|
||||
[140] (byte) sin16s::isUpper#2 ← phi( sin16s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ sin16s::x#4 sin16s::isUpper#2 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#4 sin16s::isUpper#2 ] )
|
||||
[140] (dword) sin16s::x#4 ← phi( sin16s/(dword) sin16s::x#0 sin16s::@4/(dword) sin16s::x#1 ) [ sin16s::x#4 sin16s::isUpper#2 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#4 sin16s::isUpper#2 ] )
|
||||
[141] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 [ sin16s::x#4 sin16s::isUpper#2 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#4 sin16s::isUpper#2 ] )
|
||||
to:sin16s::@5
|
||||
sin16s::@5: scope:[sin16s] from sin16s::@1
|
||||
[141] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x#2 ] )
|
||||
[142] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x#2 ] )
|
||||
to:sin16s::@2
|
||||
sin16s::@2: scope:[sin16s] from sin16s::@1 sin16s::@5
|
||||
[142] (dword) sin16s::x#6 ← phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) [ sin16s::isUpper#2 sin16s::x#6 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x#6 ] )
|
||||
[143] (dword~) sin16s::$6 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$6 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::$6 ] )
|
||||
[144] (word) sin16s::x1#0 ← > (dword~) sin16s::$6 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 ] )
|
||||
[145] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] )
|
||||
[146] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] )
|
||||
[147] call mulu16_sel [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] )
|
||||
[148] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] )
|
||||
[143] (dword) sin16s::x#6 ← phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) [ sin16s::isUpper#2 sin16s::x#6 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x#6 ] )
|
||||
[144] (dword~) sin16s::$6 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$6 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::$6 ] )
|
||||
[145] (word) sin16s::x1#0 ← > (dword~) sin16s::$6 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 ] )
|
||||
[146] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] )
|
||||
[147] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] )
|
||||
[148] call mulu16_sel [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] )
|
||||
[149] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] )
|
||||
to:sin16s::@8
|
||||
sin16s::@8: scope:[sin16s] from sin16s::@2
|
||||
[149] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] )
|
||||
[150] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] )
|
||||
[151] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] )
|
||||
[152] call mulu16_sel [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] )
|
||||
[153] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] )
|
||||
[150] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] )
|
||||
[151] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] )
|
||||
[152] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] )
|
||||
[153] call mulu16_sel [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] )
|
||||
[154] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] )
|
||||
to:sin16s::@9
|
||||
sin16s::@9: scope:[sin16s] from sin16s::@8
|
||||
[154] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] )
|
||||
[155] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] )
|
||||
[156] call mulu16_sel [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 sin16s::x3#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 sin16s::x3#0 ] )
|
||||
[157] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] )
|
||||
[155] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] )
|
||||
[156] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] )
|
||||
[157] call mulu16_sel [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 sin16s::x3#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 sin16s::x3#0 ] )
|
||||
[158] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] )
|
||||
to:sin16s::@10
|
||||
sin16s::@10: scope:[sin16s] from sin16s::@9
|
||||
[158] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] )
|
||||
[159] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] )
|
||||
[160] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] )
|
||||
[161] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] )
|
||||
[162] call mulu16_sel [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 sin16s::usinx#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 sin16s::usinx#0 ] )
|
||||
[163] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] )
|
||||
[159] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] )
|
||||
[160] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] )
|
||||
[161] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] )
|
||||
[162] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] )
|
||||
[163] call mulu16_sel [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 sin16s::usinx#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 sin16s::usinx#0 ] )
|
||||
[164] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] )
|
||||
to:sin16s::@11
|
||||
sin16s::@11: scope:[sin16s] from sin16s::@10
|
||||
[164] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] )
|
||||
[165] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] )
|
||||
[166] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] )
|
||||
[167] call mulu16_sel [ sin16s::isUpper#2 mulu16_sel::return#12 sin16s::usinx#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 mulu16_sel::return#12 sin16s::usinx#0 ] )
|
||||
[168] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] )
|
||||
[165] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] )
|
||||
[166] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] )
|
||||
[167] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] )
|
||||
[168] call mulu16_sel [ sin16s::isUpper#2 mulu16_sel::return#12 sin16s::usinx#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 mulu16_sel::return#12 sin16s::usinx#0 ] )
|
||||
[169] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] )
|
||||
to:sin16s::@12
|
||||
sin16s::@12: scope:[sin16s] from sin16s::@11
|
||||
[169] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] )
|
||||
[170] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] )
|
||||
[171] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] )
|
||||
[172] if((byte) sin16s::isUpper#2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sin16s::@15 [ sin16s::usinx#1 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::usinx#1 ] )
|
||||
[170] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] )
|
||||
[171] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] )
|
||||
[172] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] )
|
||||
[173] if((byte) sin16s::isUpper#2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sin16s::@15 [ sin16s::usinx#1 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::usinx#1 ] )
|
||||
to:sin16s::@6
|
||||
sin16s::@6: scope:[sin16s] from sin16s::@12
|
||||
[173] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::sinx#1 ] )
|
||||
[174] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::sinx#1 ] )
|
||||
to:sin16s::@3
|
||||
sin16s::@3: scope:[sin16s] from sin16s::@15 sin16s::@6
|
||||
[174] (signed word) sin16s::return#1 ← phi( sin16s::@15/(signed word~) sin16s::return#5 sin16s::@6/(signed word) sin16s::sinx#1 ) [ sin16s::return#1 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#1 ] )
|
||||
[175] (signed word) sin16s::return#1 ← phi( sin16s::@15/(signed word~) sin16s::return#5 sin16s::@6/(signed word) sin16s::sinx#1 ) [ sin16s::return#1 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#1 ] )
|
||||
to:sin16s::@return
|
||||
sin16s::@return: scope:[sin16s] from sin16s::@3
|
||||
[175] return [ sin16s::return#1 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#1 ] )
|
||||
[176] return [ sin16s::return#1 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#1 ] )
|
||||
to:@return
|
||||
sin16s::@15: scope:[sin16s] from sin16s::@12
|
||||
[176] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen2:20::sin16s:101 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#5 ] )
|
||||
[177] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:3::sin16s_gen2:21::sin16s:102 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#5 ] )
|
||||
to:sin16s::@3
|
||||
mulu16_sel: scope:[mulu16_sel] from sin16s::@10 sin16s::@11 sin16s::@2 sin16s::@8 sin16s::@9
|
||||
[177] (byte) mulu16_sel::select#5 ← phi( sin16s::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@11/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16s::@9/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] )
|
||||
[177] (word) mulu16_sel::v2#5 ← phi( sin16s::@10/(word) mulu16_sel::v2#3 sin16s::@11/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@8/(word) mulu16_sel::v2#1 sin16s::@9/(dword/signed dword) 65536/(byte/signed byte/word/signed word/dword/signed dword) 6 ) [ mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] )
|
||||
[177] (word) mulu16_sel::v1#5 ← phi( sin16s::@10/(word) mulu16_sel::v1#3 sin16s::@11/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@8/(word) mulu16_sel::v1#1 sin16s::@9/(word) mulu16_sel::v1#2 ) [ mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] )
|
||||
[178] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 [ mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] )
|
||||
[179] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 [ mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ( main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] )
|
||||
[180] call mul16u [ mul16u::res#2 mulu16_sel::select#5 ] ( main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::res#2 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::res#2 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::res#2 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::res#2 mulu16_sel::select#5 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::res#2 mulu16_sel::select#5 ] )
|
||||
[181] (dword) mul16u::return#3 ← (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#3 ] ( main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#3 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] )
|
||||
[178] (byte) mulu16_sel::select#5 ← phi( sin16s::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@11/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16s::@9/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] )
|
||||
[178] (word) mulu16_sel::v2#5 ← phi( sin16s::@10/(word) mulu16_sel::v2#3 sin16s::@11/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@8/(word) mulu16_sel::v2#1 sin16s::@9/(dword/signed dword) 65536/(byte/signed byte/word/signed word/dword/signed dword) 6 ) [ mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] )
|
||||
[178] (word) mulu16_sel::v1#5 ← phi( sin16s::@10/(word) mulu16_sel::v1#3 sin16s::@11/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@8/(word) mulu16_sel::v1#1 sin16s::@9/(word) mulu16_sel::v1#2 ) [ mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#5 mulu16_sel::v2#5 mulu16_sel::select#5 ] )
|
||||
[179] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 [ mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] )
|
||||
[180] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 [ mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] )
|
||||
[181] call mul16u [ mul16u::res#2 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::res#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::res#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::res#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::res#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::res#2 mulu16_sel::select#5 ] )
|
||||
[182] (dword) mul16u::return#3 ← (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#3 ] ( main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] )
|
||||
to:mulu16_sel::@2
|
||||
mulu16_sel::@2: scope:[mulu16_sel] from mulu16_sel
|
||||
[182] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] )
|
||||
[183] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] )
|
||||
[184] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] )
|
||||
[183] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] )
|
||||
[184] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] )
|
||||
[185] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] )
|
||||
to:mulu16_sel::@return
|
||||
mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@2
|
||||
[185] return [ mulu16_sel::return#12 ] ( main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:147 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:152 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:156 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:162 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:2::sin16s_gen2:20::sin16s:101::mulu16_sel:167 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] )
|
||||
[186] return [ mulu16_sel::return#12 ] ( main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:148 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:153 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:157 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:163 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:102::mulu16_sel:168 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] )
|
||||
to:@return
|
||||
div32u16u: scope:[div32u16u] from sin16s_gen2
|
||||
[186] phi() [ ] ( main:2::sin16s_gen2:20::div32u16u:96 [ ] )
|
||||
[187] call divr16u [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen2:20::div32u16u:96 [ divr16u::return#0 rem16u#1 ] )
|
||||
[188] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:2::sin16s_gen2:20::div32u16u:96 [ divr16u::return#2 rem16u#1 ] )
|
||||
[187] phi() [ ] ( main:3::sin16s_gen2:21::div32u16u:97 [ ] )
|
||||
[188] call divr16u [ divr16u::return#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:97 [ divr16u::return#0 rem16u#1 ] )
|
||||
[189] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:97 [ divr16u::return#2 rem16u#1 ] )
|
||||
to:div32u16u::@2
|
||||
div32u16u::@2: scope:[div32u16u] from div32u16u
|
||||
[189] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:2::sin16s_gen2:20::div32u16u:96 [ div32u16u::quotient_hi#0 rem16u#1 ] )
|
||||
[190] (word) divr16u::rem#4 ← (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:2::sin16s_gen2:20::div32u16u:96 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] )
|
||||
[191] call divr16u [ divr16u::return#0 div32u16u::quotient_hi#0 ] ( main:2::sin16s_gen2:20::div32u16u:96 [ divr16u::return#0 div32u16u::quotient_hi#0 ] )
|
||||
[192] (word) divr16u::return#3 ← (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:2::sin16s_gen2:20::div32u16u:96 [ div32u16u::quotient_hi#0 divr16u::return#3 ] )
|
||||
[190] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:97 [ div32u16u::quotient_hi#0 rem16u#1 ] )
|
||||
[191] (word) divr16u::rem#4 ← (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:3::sin16s_gen2:21::div32u16u:97 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] )
|
||||
[192] call divr16u [ divr16u::return#0 div32u16u::quotient_hi#0 ] ( main:3::sin16s_gen2:21::div32u16u:97 [ divr16u::return#0 div32u16u::quotient_hi#0 ] )
|
||||
[193] (word) divr16u::return#3 ← (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:3::sin16s_gen2:21::div32u16u:97 [ div32u16u::quotient_hi#0 divr16u::return#3 ] )
|
||||
to:div32u16u::@3
|
||||
div32u16u::@3: scope:[div32u16u] from div32u16u::@2
|
||||
[193] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:2::sin16s_gen2:20::div32u16u:96 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] )
|
||||
[194] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:2::sin16s_gen2:20::div32u16u:96 [ div32u16u::return#0 ] )
|
||||
[194] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:3::sin16s_gen2:21::div32u16u:97 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] )
|
||||
[195] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:3::sin16s_gen2:21::div32u16u:97 [ div32u16u::return#0 ] )
|
||||
to:div32u16u::@return
|
||||
div32u16u::@return: scope:[div32u16u] from div32u16u::@3
|
||||
[195] return [ div32u16u::return#0 ] ( main:2::sin16s_gen2:20::div32u16u:96 [ div32u16u::return#0 ] )
|
||||
[196] return [ div32u16u::return#0 ] ( main:3::sin16s_gen2:21::div32u16u:97 [ div32u16u::return#0 ] )
|
||||
to:@return
|
||||
divr16u: scope:[divr16u] from div32u16u div32u16u::@2
|
||||
[196] (word) divr16u::dividend#5 ← phi( div32u16u/>(const dword) PI2_u4f28#0 div32u16u::@2/<(const dword) PI2_u4f28#0 ) [ divr16u::rem#10 divr16u::dividend#5 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::rem#10 divr16u::dividend#5 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::rem#10 divr16u::dividend#5 ] )
|
||||
[196] (word) divr16u::rem#10 ← phi( div32u16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u::@2/(word) divr16u::rem#4 ) [ divr16u::rem#10 divr16u::dividend#5 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::rem#10 divr16u::dividend#5 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::rem#10 divr16u::dividend#5 ] )
|
||||
[197] (word) divr16u::dividend#5 ← phi( div32u16u/>(const dword) PI2_u4f28#0 div32u16u::@2/<(const dword) PI2_u4f28#0 ) [ divr16u::rem#10 divr16u::dividend#5 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::rem#10 divr16u::dividend#5 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::rem#10 divr16u::dividend#5 ] )
|
||||
[197] (word) divr16u::rem#10 ← phi( div32u16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u::@2/(word) divr16u::rem#4 ) [ divr16u::rem#10 divr16u::dividend#5 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::rem#10 divr16u::dividend#5 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::rem#10 divr16u::dividend#5 ] )
|
||||
to:divr16u::@1
|
||||
divr16u::@1: scope:[divr16u] from divr16u divr16u::@3
|
||||
[197] (byte) divr16u::i#2 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[197] (word) divr16u::quotient#3 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[197] (word) divr16u::dividend#3 ← phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#0 ) [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[197] (word) divr16u::rem#5 ← phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[198] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] )
|
||||
[199] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] )
|
||||
[200] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) 128 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$2 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$2 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$2 ] )
|
||||
[201] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] )
|
||||
[198] (byte) divr16u::i#2 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[198] (word) divr16u::quotient#3 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[198] (word) divr16u::dividend#3 ← phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#0 ) [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[198] (word) divr16u::rem#5 ← phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::rem#5 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 ] )
|
||||
[199] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] )
|
||||
[200] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] )
|
||||
[201] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) 128 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$2 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$2 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$2 ] )
|
||||
[202] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 ] )
|
||||
to:divr16u::@4
|
||||
divr16u::@4: scope:[divr16u] from divr16u::@1
|
||||
[202] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] )
|
||||
[203] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] )
|
||||
to:divr16u::@2
|
||||
divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4
|
||||
[203] (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#6 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#6 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#6 ] )
|
||||
[204] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::quotient#3 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::quotient#3 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::quotient#3 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 ] )
|
||||
[205] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] )
|
||||
[206] if((word) divr16u::rem#6<(const word) XSIN_SIZE#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] )
|
||||
[204] (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#6 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#6 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#6 ] )
|
||||
[205] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::quotient#3 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::quotient#3 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::quotient#3 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 ] )
|
||||
[206] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] )
|
||||
[207] if((word) divr16u::rem#6<(const word) XSIN_SIZE#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] )
|
||||
to:divr16u::@5
|
||||
divr16u::@5: scope:[divr16u] from divr16u::@2
|
||||
[207] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#2 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#2 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#2 ] )
|
||||
[208] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] )
|
||||
[208] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#2 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#2 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#2 ] )
|
||||
[209] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] )
|
||||
to:divr16u::@3
|
||||
divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5
|
||||
[209] (word) divr16u::return#0 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) [ divr16u::return#0 divr16u::i#2 divr16u::rem#11 divr16u::dividend#0 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::return#0 divr16u::i#2 divr16u::rem#11 divr16u::dividend#0 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::return#0 divr16u::i#2 divr16u::rem#11 divr16u::dividend#0 ] )
|
||||
[209] (word) divr16u::rem#11 ← phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) [ divr16u::return#0 divr16u::i#2 divr16u::rem#11 divr16u::dividend#0 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::return#0 divr16u::i#2 divr16u::rem#11 divr16u::dividend#0 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::return#0 divr16u::i#2 divr16u::rem#11 divr16u::dividend#0 ] )
|
||||
[210] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 [ divr16u::return#0 divr16u::rem#11 divr16u::dividend#0 divr16u::i#1 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::return#0 divr16u::rem#11 divr16u::dividend#0 divr16u::i#1 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::return#0 divr16u::rem#11 divr16u::dividend#0 divr16u::i#1 ] )
|
||||
[211] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto divr16u::@1 [ divr16u::return#0 divr16u::rem#11 divr16u::dividend#0 divr16u::i#1 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::return#0 divr16u::rem#11 divr16u::dividend#0 divr16u::i#1 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::return#0 divr16u::rem#11 divr16u::dividend#0 divr16u::i#1 ] )
|
||||
[210] (word) divr16u::return#0 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) [ divr16u::return#0 divr16u::i#2 divr16u::rem#11 divr16u::dividend#0 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::return#0 divr16u::i#2 divr16u::rem#11 divr16u::dividend#0 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::return#0 divr16u::i#2 divr16u::rem#11 divr16u::dividend#0 ] )
|
||||
[210] (word) divr16u::rem#11 ← phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) [ divr16u::return#0 divr16u::i#2 divr16u::rem#11 divr16u::dividend#0 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::return#0 divr16u::i#2 divr16u::rem#11 divr16u::dividend#0 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::return#0 divr16u::i#2 divr16u::rem#11 divr16u::dividend#0 ] )
|
||||
[211] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 [ divr16u::return#0 divr16u::rem#11 divr16u::dividend#0 divr16u::i#1 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::return#0 divr16u::rem#11 divr16u::dividend#0 divr16u::i#1 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::return#0 divr16u::rem#11 divr16u::dividend#0 divr16u::i#1 ] )
|
||||
[212] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto divr16u::@1 [ divr16u::return#0 divr16u::rem#11 divr16u::dividend#0 divr16u::i#1 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::return#0 divr16u::rem#11 divr16u::dividend#0 divr16u::i#1 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::return#0 divr16u::rem#11 divr16u::dividend#0 divr16u::i#1 ] )
|
||||
to:divr16u::@6
|
||||
divr16u::@6: scope:[divr16u] from divr16u::@3
|
||||
[212] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] )
|
||||
[213] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::return#0 rem16u#1 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] )
|
||||
to:divr16u::@return
|
||||
divr16u::@return: scope:[divr16u] from divr16u::@6
|
||||
[213] return [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen2:20::div32u16u:96::divr16u:187 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen2:20::div32u16u:96::divr16u:191 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] )
|
||||
[214] return [ divr16u::return#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:97::divr16u:188 [ divr16u::return#0 rem16u#1 ] main:3::sin16s_gen2:21::div32u16u:97::divr16u:192 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] )
|
||||
to:@return
|
||||
fill: scope:[fill] from main::@3 main::@4
|
||||
[214] (byte) fill::val#3 ← phi( main::@3/(const byte) BLACK#0 main::@4/(const byte) WHITE#0|(byte/signed byte/word/signed word/dword/signed dword) 8 ) [ fill::addr#0 fill::val#3 ] ( main:2::fill:12 [ fill::addr#0 fill::val#3 ] main:2::fill:14 [ fill::addr#0 fill::val#3 ] )
|
||||
[214] (byte*) fill::addr#0 ← phi( main::@3/(const byte*) SCREEN#0 main::@4/(const byte*) COLS#0 ) [ fill::addr#0 fill::val#3 ] ( main:2::fill:12 [ fill::addr#0 fill::val#3 ] main:2::fill:14 [ fill::addr#0 fill::val#3 ] )
|
||||
[215] (byte*) fill::end#0 ← (byte*) fill::addr#0 + (word/signed word/dword/signed dword) 1000 [ fill::addr#0 fill::val#3 fill::end#0 ] ( main:2::fill:12 [ fill::addr#0 fill::val#3 fill::end#0 ] main:2::fill:14 [ fill::addr#0 fill::val#3 fill::end#0 ] )
|
||||
[215] (byte) fill::val#3 ← phi( main::@3/(const byte) BLACK#0 main::@4/(const byte) WHITE#0|(byte/signed byte/word/signed word/dword/signed dword) 8 ) [ fill::addr#0 fill::val#3 ] ( main:3::fill:13 [ fill::addr#0 fill::val#3 ] main:3::fill:15 [ fill::addr#0 fill::val#3 ] )
|
||||
[215] (byte*) fill::addr#0 ← phi( main::@3/(const byte*) SCREEN#0 main::@4/(const byte*) COLS#0 ) [ fill::addr#0 fill::val#3 ] ( main:3::fill:13 [ fill::addr#0 fill::val#3 ] main:3::fill:15 [ fill::addr#0 fill::val#3 ] )
|
||||
[216] (byte*) fill::end#0 ← (byte*) fill::addr#0 + (word/signed word/dword/signed dword) 1000 [ fill::addr#0 fill::val#3 fill::end#0 ] ( main:3::fill:13 [ fill::addr#0 fill::val#3 fill::end#0 ] main:3::fill:15 [ fill::addr#0 fill::val#3 fill::end#0 ] )
|
||||
to:fill::@1
|
||||
fill::@1: scope:[fill] from fill fill::@1
|
||||
[216] (byte*) fill::addr#2 ← phi( fill/(byte*) fill::addr#0 fill::@1/(byte*) fill::addr#1 ) [ fill::val#3 fill::end#0 fill::addr#2 ] ( main:2::fill:12 [ fill::val#3 fill::end#0 fill::addr#2 ] main:2::fill:14 [ fill::val#3 fill::end#0 fill::addr#2 ] )
|
||||
[217] *((byte*) fill::addr#2) ← (byte) fill::val#3 [ fill::val#3 fill::end#0 fill::addr#2 ] ( main:2::fill:12 [ fill::val#3 fill::end#0 fill::addr#2 ] main:2::fill:14 [ fill::val#3 fill::end#0 fill::addr#2 ] )
|
||||
[218] (byte*) fill::addr#1 ← ++ (byte*) fill::addr#2 [ fill::val#3 fill::end#0 fill::addr#1 ] ( main:2::fill:12 [ fill::val#3 fill::end#0 fill::addr#1 ] main:2::fill:14 [ fill::val#3 fill::end#0 fill::addr#1 ] )
|
||||
[219] if((byte*) fill::addr#1!=(byte*) fill::end#0) goto fill::@1 [ fill::val#3 fill::end#0 fill::addr#1 ] ( main:2::fill:12 [ fill::val#3 fill::end#0 fill::addr#1 ] main:2::fill:14 [ fill::val#3 fill::end#0 fill::addr#1 ] )
|
||||
[217] (byte*) fill::addr#2 ← phi( fill/(byte*) fill::addr#0 fill::@1/(byte*) fill::addr#1 ) [ fill::val#3 fill::end#0 fill::addr#2 ] ( main:3::fill:13 [ fill::val#3 fill::end#0 fill::addr#2 ] main:3::fill:15 [ fill::val#3 fill::end#0 fill::addr#2 ] )
|
||||
[218] *((byte*) fill::addr#2) ← (byte) fill::val#3 [ fill::val#3 fill::end#0 fill::addr#2 ] ( main:3::fill:13 [ fill::val#3 fill::end#0 fill::addr#2 ] main:3::fill:15 [ fill::val#3 fill::end#0 fill::addr#2 ] )
|
||||
[219] (byte*) fill::addr#1 ← ++ (byte*) fill::addr#2 [ fill::val#3 fill::end#0 fill::addr#1 ] ( main:3::fill:13 [ fill::val#3 fill::end#0 fill::addr#1 ] main:3::fill:15 [ fill::val#3 fill::end#0 fill::addr#1 ] )
|
||||
[220] if((byte*) fill::addr#1!=(byte*) fill::end#0) goto fill::@1 [ fill::val#3 fill::end#0 fill::addr#1 ] ( main:3::fill:13 [ fill::val#3 fill::end#0 fill::addr#1 ] main:3::fill:15 [ fill::val#3 fill::end#0 fill::addr#1 ] )
|
||||
to:fill::@return
|
||||
fill::@return: scope:[fill] from fill::@1
|
||||
[220] return [ ] ( main:2::fill:12 [ ] main:2::fill:14 [ ] )
|
||||
[221] return [ ] ( main:3::fill:13 [ ] main:3::fill:15 [ ] )
|
||||
to:@return
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,3 +1,4 @@
|
||||
(label) @24
|
||||
(label) @27
|
||||
(label) @begin
|
||||
(label) @end
|
||||
|
Loading…
x
Reference in New Issue
Block a user