12.3. Applications to Integer Multiplication

In the DOTPROD program (Figure 4-5), we used the Itanium pmpy2.r instruction (Section 4.2.5) to multiply word-length (16-bit) integers. The result there was valid because it was known in advance that the signed product would not exceed 32 bits in width. Then we showed an implementation of Booth's algorithm (Section 6.5) that can produce the full 128-bit signed or unsigned product of two 64-bit sources.

Later we showed the standard sequence of instructions (Section 8.7.2) required to take advantage of the Itanium xmpy pseudo-op of the xma instruction, which multiplies 64-bit integers after they have been transferred from general registers to floating-point registers. We mentioned the opportunity to ...

Get Itanium® Architecture for Programmers: Understanding 64-Bit Processors and EPIC Principles now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.