if(arg.value.boolean) printf("true");
else printf("false");
break;
+
case INTEGER:
printf("%i", arg.value.integer);
break;
void end(struct Thread* thread, Argument argument) {
}
+{% with name='eq', operation='==' %}
+ {% include "comparison_instruction.c" %}
+{% endwith %}
+
+{% with name='gt', operation='>' %}
+ {% include "comparison_instruction.c" %}
+{% endwith %}
+
+{% with name='gte', operation='>=' %}
+ {% include "comparison_instruction.c" %}
+{% endwith %}
+
{% with name='idiv', operation='/' %}
{% include "arithmetic_instruction.c" %}
{% endwith %}
+{% with name='lt', operation='<' %}
+ {% include "comparison_instruction.c" %}
+{% endwith %}
+
+{% with name='lte', operation='<=' %}
+ {% include "comparison_instruction.c" %}
+{% endwith %}
+
{% with name='mod', operation='%' %}
{% include "arithmetic_instruction.c" %}
{% endwith %}
{% include "arithmetic_instruction.c" %}
{% endwith %}
+{% with name='neq', operation='!=' %}
+ {% include "comparison_instruction.c" %}
+{% endwith %}
+
void neg(struct Thread* thread, Argument argument) {
assert(!Stack_isEmpty(&(thread->stack)));
Object result = Stack_pop(&(thread->stack));