asmscript

Conditionals

Conditionals are extensions to statements that by their nature do not contain a condition. You can make a conditional by inserting the following syntax right before a semicolon:

if CONDITION

Conditionals serve as a shorthand for branches with only one statement and no else block.

Examples:

rax = 0 if rcx > 5;
rax += rcx if rsi <= -1;
continue if 0 != r15;

Fun fact: the original intention behind conditionals is to have a syntax for conditional move intructions (cmov). Eventually I came to the conclusion that this syntax might as well be applicable to almost every statement, not just assignment. Conditional moves aren't implemented though, so when you use a conditional on an assignment, the compiler will just emit a conditional jump instruction.