pragma solidity ^0.4.0; contract MulPerformanceTester { function testMulMod(uint x, uint y, uint k, uint n) external returns (uint) { var r = x; for (uint i = 0; i < n; i += 1) { r = mulmod(r, y, k); } return r; } function testDivAdd(uint x, uint y, uint k, uint n) external returns (uint) { var r = x; for (uint i = 0; i < n; i += 1) { r /= y; r += k; } return r; } function testMul(uint x, uint y, uint n) external returns (uint) { var r = x; for (uint i = 0; i < n; i += 1) { r *= y; } return r; } function testAdd(uint x, uint y, uint n) external returns (uint) { var r = x; for (uint i = 0; i < n; i += 1) { r += y; } return r; } }