3:164
Volume 3: Instruction Reference
lfetch
lfetch — Line Prefetch
Format:
(
qp
) lfetch.
lftype
.
lfhint
[
r
3
]
no_base_update_form
(
qp
) lfetch.
lftype
.
lfhint
[
r
3
],
r
2
reg_base_update_form
(
qp
) lfetch.
lftype
.
lfhint
[
r
3
],
imm
9
imm_base_update_form
(
qp
) lfetch.
lftype
.excl.
lfhint
[
r
3
]
no_base_update_form, exclusive_form
(
qp
) lfetch.
lftype
.excl.
lfhint
[
r
3
],
r
2
reg_base_update_form, exclusive_form
(
qp
) lfetch.
lftype
.excl.
lfhint
[
r
3
],
imm
9
imm_base_update_form, exclusive_form
Description:
The line containing the address specified by the value in GR
r
3
is moved to the highest
level of the data memory hierarchy. The value of the
lfhint
modifier specifies the locality
of the memory access; see
Section 4.4, “Memory Access Instructions” on page 1:57
for
details. The mnemonic values of
lfhint
are given in
.
The behavior of the memory read is also determined by the memory attribute
associated with the accessed page. See
Chapter 4, “Addressing and Protection” in
. Line size is implementation dependent but must be a power of two greater
than or equal to 32 bytes. In the exclusive form, the cache line is allowed to be marked
in an exclusive state. This qualifier is used when the program expects soon to modify a
location in that line. If the memory attribute for the page containing the line is not
cacheable, then no reference is made.
The completer,
lftype
, specifies whether or not the instruction raises faults normally
associated with a regular load.
defines these two options.
In the base update forms, after being used to address memory, the value in GR
r
3
is
incremented by either the sign-extended value in
imm
9
(in the imm_base_update_form)
or the value in GR
r
2
(in the reg_base_update_form). In the reg_base_update_form, if
the NaT bit corresponding to GR
r
2
is set, then the NaT bit corresponding to GR
r
3
is set
– no fault is raised.
In the reg_base_update_form and the imm_base_update_form, if the NaT bit
corresponding to GR
r
3
is clear, then the address specified by the value in GR
r
3
after
the post-increment acts as a hint to implicitly prefetch the indicated cache line. This
implicit prefetch uses the locality hints specified by
lfhint
. The implicit prefetch does not
affect program functionality, does not raise any faults, and may be ignored by the
implementation.
In the no_base_update_form, the value in GR
r
3
is not modified and no implicit prefetch
hint is implied.
If the NaT bit corresponding to GR
r
3
is set then the state of memory is not affected. In
the reg_base_update_form and imm_base_update_form, the post increment of GR
r
3
is
performed and prefetch is hinted as described above.
lfetch
instructions, like hardware prefetches, are not orderable operations, i.e., they
have no order with respect to prior or subsequent memory operations.
Table 2-37.
lftype
Mnemonic Values
lftype
Mnemonic
Interpretation
none
No faults are raised
fault
Raise faults
Содержание Itanium 9150M
Страница 1: ......
Страница 209: ...3 200 Volume 3 Instruction Reference padd Interruptions Illegal Operation fault...
Страница 301: ...3 292 Volume 3 Pseudo Code Functions Intel Itanium Architecture Software Developer s Manual Rev 2 3...
Страница 405: ...3 396 Volume 3 Resource and Dependency Semantics...
Страница 406: ...3 397 Intel Itanium Architecture Software Developer s Manual Rev 2 3 Index...
Страница 407: ...3 398 Intel Itanium Architecture Software Developer s Manual Rev 2 3...
Страница 419: ...INDEX Index 12 Index for Volumes 1 2 3 and 4...
Страница 420: ......