Example #1
0
void DivideAssignmentStatementNode::Code(InstructionsClass &machineCode) {
	// push vars value on stack
	machineCode.PushVariable(in->GetIndex());
	// put modifier on stack
	en->CodeEvaluate(machineCode);
	// divide those values
	machineCode.PopPopDivPush();
	// store result
	machineCode.PopAndStore(in->GetIndex());
}
Example #2
0
void DivideNode::CodeEvaluate(InstructionsClass & machineCode) {
	lhs->CodeEvaluate(machineCode);
	rhs->CodeEvaluate(machineCode);
	machineCode.PopPopDivPush();
}
Example #3
0
void DivideNode::CodeEvaluate(InstructionsClass &machinecode) {
	MSG("\tCODING DIVIDENODE");
	mLeft->CodeEvaluate(machinecode);
	mRight->CodeEvaluate(machinecode);
	machinecode.PopPopDivPush();
}