2:486
Volume 2, Part 1: Processor Abstraction Layer
11.11
PAL Virtualization Services
In order to support efficient handling of interruptions when PSR.vm was 1, a set of PAL
virtualization services is defined to allow certain high-frequency PAL functions to be
performed in a low-latency and low-overhead manner.
Upon successful completion of PAL_VP_INIT_ENV, the virtual base address of the PAL
virtualization services (VSA) is returned to the VMM. VMM can invoke PAL services by
branching to the defined offsets from the virtual base address. See
defined services. See
Section 11.11, “PAL Virtualization Services” on page 2:486
for
details on PAL virtualization services.
These PAL virtualization services will only make references to the PAL virtual
environment buffer. The VMM is required to maintain the ITR and DTR translations of
the PAL virtual environment buffer during any PAL virtualization service calls.
11.11.1 PAL Virtualization Service Invocation Convention
This section describes the required parameters applicable to all PAL Virtualization
Services. Additional parameters are listed in the description section of specific PAL
Virtualization Services. Architectural state not listed in this section is managed by the
VMM and can contain both VMM and/or virtual processor state. The architectural state
not listed is unchanged by PAL virtualization services.
The state of the processor on handing off to any PAL Virtualization Service is:
• GR24-31: Parameters for PAL virtualization services.
• BRs:
• BR0: Scratch, the VMM will use BR0 to specify the 64-bit host virtual address of
the PAL Virtualization Service being invoked.
• Predicates: The predicates are preserved by the PAL virtualization services.
• PSR State (see
for details):
• PSR.be, i, cpl, is, ss, db, tb, vm must be 0.
• PSR.dt, rt and it must be 1.
• All other values are don’t cares.
Table 11-120. PAL Virtualization Services
Offset
PAL Service
0x0000
PAL_VPS_RESUME_NORMAL
0x0400
PAL_VPS_RESUME_HANDLER
0x0800
PAL_VPS_SYNC_READ
0x0c00
PAL_VPS_SYNC_WRITE
0x1000
PAL_VPS_SET_PENDING_INTERRUPT
0x1400
PAL_VPS_THASH
0x1800
PAL_VPS_TTAG
0x1c00
PAL_VPS_RESTORE
0x2000
PAL_VPS_SAVE
All other
offsets
Reserved
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 ...