dmul

Multiply double

Bytecode

Type Description
u1 dmul opcode = 0x6B (107)

Stack ..., value1.word1, value1.word2, value2.word1, value2.word2 => ..., result.word1, result.word2

Description
Pops the top two double-precision floating point numbers off the stack, multiplies them, and pushes the double-precision result back onto the stack. Multiplication is performed using the standard IEEE rules for double precision floating point arithmetic.

Both value1 and value2 must be of type double. The values are popped from the operand stack. The double result is value1 * value2. The result is pushed onto the operand stack.

The result of a dmul instruction is governed by the rules of IEEE arithmetic:

The Java Virtual Machine requires support of gradual underflow as defined by IEEE 754. Despite the fact that overflow, underflow, or loss of precision may occur, execution of a dmul instruction never throws a runtime exception.