1:52
Volume 1, Part 1: Application Programming Model
4.2.3
32-bit Addresses and Integers
Support for 32-bit addresses is provided in the form of add instructions that perform
region bit copying. This supports the virtual address translation model (see
Virtual Addressing” on page 2:71
for details). The add 32-bit pointer instruction (
addp
)
adds two registers or a register and an immediate, zeroes the most significant 32-bits
of the result, and copies bits 31:30 of the second source to bits 62:61 of the result. The
shladdp
instruction operates similarly but shifts the first source to the left by 1 to 4 bits
before performing the add, and is provided only in the two-register form.
In addition, support for 32-bit integers is provided through 32-bit compare instructions
and instructions to perform sign and zero extension. Compare instructions are
described in
“Compare Instructions and Predication” on page 1:54
extend (
sxt
,
zxt
) instructions take an 8-bit, 16-bit, or 32-bit value in a register, and
produce a properly extended 64-bit result.
summarizes 32-bit pointer and 32-bit integer instructions.
4.2.4
Bit Field and Shift Instructions
Four classes of instructions are defined for shifting and operating on bit fields within a
general register: variable shifts, fixed shift-and-mask instructions, a 128-bit-input
funnel shift, and special compare operations to test an individual bit within a general
register. The compare instructions for testing a single bit (
tbit
), or for testing the NaT
bit (
tnat
) are described in
“Compare Instructions and Predication” on page 1:54
The variable shift instructions shift the contents of a general register by an amount
specified by another general register. The shift right signed (
shr
) and shift right
unsigned (
shr.u
) instructions shift the contents of a register to the right with the
vacated bit positions filled with the sign bit or zeroes respectively. The shift left (
shl
)
instruction shifts the contents of a register to the left.
The fixed shift-and-mask instructions (
extr
,
dep
) are generalized forms of fixed shifts.
The extract instruction (
extr
) copies an arbitrary bit field from a general register to the
least-significant bits of the target register. The remaining bits of the target are written
with either the sign of the bit field (
extr
) or with zero (
extr.u
). The length and starting
Table 4-4.
Integer Logical Instructions
Mnemonic
Operation
and
Logical and
or
Logical or
andcm
Logical and complement
xor
Logical exclusive or
Table 4-5.
32-bit Pointer and 32-bit Integer Instructions
Mnemonic
Operation
addp
32-bit pointer addition
shladdp
Shift left and add 32-bit pointer
sxt
Sign extend
zxt
Zero extend
Summary of Contents for ITANIUM ARCHITECTURE - SOFTWARE DEVELOPERS VOLUME 3 REV 2.3
Page 1: ......
Page 11: ...x Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 13: ...1 2 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 33: ...1 22 Volume 1 Part 1 Introduction to the Intel Itanium Architecture ...
Page 57: ...1 46 Volume 1 Part 1 Execution Environment ...
Page 147: ...1 136 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 149: ...1 138 Volume 1 Part 2 About the Optimization Guide ...
Page 191: ...1 180 Volume 1 Part 2 Predication Control Flow and Instruction Stream ...
Page 230: ......
Page 248: ...236 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 250: ...2 2 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 264: ...2 16 Volume 2 Part 1 Intel Itanium System Environment ...
Page 380: ...2 132 Volume 2 Part 1 Interruptions ...
Page 398: ...2 150 Volume 2 Part 1 Register Stack Engine ...
Page 486: ...2 238 Volume 2 Part 1 IA 32 Interruption Vector Descriptions ...
Page 750: ...2 502 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 754: ...2 506 Volume 2 Part 2 About the System Programmer s Guide ...
Page 796: ...2 548 Volume 2 Part 2 Interruptions and Serialization ...
Page 808: ...2 560 Volume 2 Part 2 Context Management ...
Page 842: ...2 594 Volume 2 Part 2 Floating point System Software ...
Page 850: ...2 602 Volume 2 Part 2 IA 32 Application Support ...
Page 862: ...2 614 Volume 2 Part 2 External Interrupt Architecture ...
Page 870: ...2 622 Volume 2 Part 2 Performance Monitoring Support ...
Page 891: ......
Page 1099: ...3 200 Volume 3 Instruction Reference padd Interruptions Illegal Operation fault ...
Page 1295: ...3 396 Volume 3 Resource and Dependency Semantics ...
Page 1296: ......
Page 1302: ...402 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 1494: ...4 192 Volume 4 Base IA 32 Instruction Reference FWAIT Wait See entry for WAIT ...
Page 1647: ...Volume 4 Base IA 32 Instruction Reference 4 345 ROL ROR Rotate See entry for RCL RCR ROL ROR ...
Page 1884: ...4 582 Volume 4 IA 32 SSE Instruction Reference ...
Page 1885: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 Index ...
Page 1886: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 1898: ...INDEX Index 12 Index for Volumes 1 2 3 and 4 ...