35 lines
498 B
Plaintext
35 lines
498 B
Plaintext
|
|
@type [compiler]
|
|
@source
|
|
|
|
A and B or C and D;
|
|
|
|
@bytecode
|
|
|
|
PUSHVAR "A";
|
|
JUMPIFNOTANDPOP false_0;
|
|
PUSHVAR "B";
|
|
JUMPIFNOTANDPOP false_0;
|
|
PUSHTRU;
|
|
JUMP end_0;
|
|
false_0:
|
|
PUSHFLS;
|
|
end_0:
|
|
JUMPIFANDPOP true_2;
|
|
PUSHVAR "C";
|
|
JUMPIFNOTANDPOP false_1;
|
|
PUSHVAR "D";
|
|
JUMPIFNOTANDPOP false_1;
|
|
PUSHTRU;
|
|
JUMP end_1;
|
|
false_1:
|
|
PUSHFLS;
|
|
end_1:
|
|
JUMPIFANDPOP true_2;
|
|
PUSHFLS;
|
|
JUMP end_2;
|
|
true_2:
|
|
PUSHTRU;
|
|
end_2:
|
|
POP 1;
|
|
EXIT; |