Intel ITANIUM ARCHITECTURE - SOFTWARE DEVELOPERS MANUAL VOLUME 3 REV 2.3 Manual page 198

Architecture software developer's manual revision 2.3
Hide thumbs Also See for ITANIUM ARCHITECTURE - SOFTWARE DEVELOPERS MANUAL VOLUME 3 REV 2.3:
Table of Contents

Advertisement

mpyshl4 — Unsigned Integer Shift Left and Multiply
(
) mpyshl4
Format:
qp
The upper 32 bits of GR
Description:
and are multiplied. The result of the multiplication is shifted left 32 bits, with the
vacated bit positions filled with zeroes, and the result is placed in GR
bits of GR
This instruction can be used to perform a 64-bit integer multiply operation producing a
64-bit result (r
mpy4
mpyshl4
mpyshl4
add
add
Operation:
if (PR[qp]) {
if (!instruction_implemented(MPYSHL4))
illegal_operation_fault();
check_target_register(r
GR[r
] = (zero_ext((GR[r
1
GR[r
].nat = GR[r
1
}
Illegal Operation fault
Interruptions:
Volume 3: Instruction Reference
=
,
r
r
r
1
2
3
and the lower 32 bits of GR
r
2
and the upper 32 bits of GR
r
2
= r
* r
):
c
a
b
r
r
r
=
,
;;
//partial product low 32 bits * low 32 bits
1
a
b
r
r
r
=
,
;;
//partial product high 32 bits * low 32 bits
2
a
b
r
r
r
=
,
//partial product low 32 bits * high 32 bits
3
b
a
r
r
r
=
,
;;
//partial sum
1
1
2
r
r
r
=
,
//final sum
c
1
3
);
1
] >> 32), 32) * zero_ext(GR[r
2
].nat || GR[r
2
are treated as unsigned values
r
3
are ignored.
r
3
].nat;
3
mpyshl4
I2
. The lower 32
r
1
], 32)) << 32;
3
3:189

Advertisement

Table of Contents
loading

This manual is also suitable for:

Itanium 9150m

Table of Contents