##sdiv_execute
bits(datasize) operand1 = X[n];
bits(datasize) operand2 = X[m];
integer result;

if IsZero(operand2) then
    result = 0;
else
    result = RoundTowardsZero(Int(operand1, true) / Int(operand2, true));
end

X[d] = result<datasize-1:0>;
@@
