summaryrefslogtreecommitdiff
path: root/MdePkg/Include
diff options
context:
space:
mode:
authorbxing <bxing@6f19259b-4bc3-4df7-8a09-765794883524>2006-06-10 07:16:11 +0000
committerbxing <bxing@6f19259b-4bc3-4df7-8a09-765794883524>2006-06-10 07:16:11 +0000
commit4cbd21753299e5c119af283aa49443a47d7a72fb (patch)
tree14ef1af6d807534aa721845c5f0981339ca723c5 /MdePkg/Include
parent8b4e96c42bf9bbbd9cfc46fdd5c43a09dfbdbf2e (diff)
downloadedk2-4cbd21753299e5c119af283aa49443a47d7a72fb.zip
edk2-4cbd21753299e5c119af283aa49443a47d7a72fb.tar.gz
edk2-4cbd21753299e5c119af283aa49443a47d7a72fb.tar.bz2
1. Updated SetJump() and LongJump() for IPF
2. Added assertion for SetJump() for all architectures 3. Added CpuSleep() for IPF git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@464 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdePkg/Include')
-rw-r--r--MdePkg/Include/Library/BaseLib.h76
1 files changed, 28 insertions, 48 deletions
diff --git a/MdePkg/Include/Library/BaseLib.h b/MdePkg/Include/Library/BaseLib.h
index 7fb2e64..e042ccb 100644
--- a/MdePkg/Include/Library/BaseLib.h
+++ b/MdePkg/Include/Library/BaseLib.h
@@ -45,65 +45,44 @@ typedef struct {
// IPF context buffer used by SetJump() and LongJump()
//
typedef struct {
- UINT64 InitialUNAT;
- UINT64 AfterSpillUNAT;
- UINT64 PFS;
- UINT64 BSP;
- UINT64 RNAT;
- UINT64 Predicates;
- UINT64 LoopCount;
+ UINT64 F2[2];
+ UINT64 F3[2];
+ UINT64 F4[2];
+ UINT64 F5[2];
+ UINT64 F16[2];
+ UINT64 F17[2];
+ UINT64 F18[2];
+ UINT64 F19[2];
+ UINT64 F20[2];
+ UINT64 F21[2];
+ UINT64 F22[2];
+ UINT64 F23[2];
+ UINT64 F24[2];
+ UINT64 F25[2];
+ UINT64 F26[2];
+ UINT64 F27[2];
+ UINT64 F28[2];
+ UINT64 F29[2];
+ UINT64 F30[2];
+ UINT64 F31[2];
UINT64 R4;
UINT64 R5;
UINT64 R6;
UINT64 R7;
UINT64 SP;
- UINT64 F2Low;
- UINT64 F2High;
- UINT64 F3Low;
- UINT64 F3High;
- UINT64 F4Low;
- UINT64 F4High;
- UINT64 F5Low;
- UINT64 F5High;
- UINT64 F16Low;
- UINT64 F16High;
- UINT64 F17Low;
- UINT64 F17High;
- UINT64 F18Low;
- UINT64 F18High;
- UINT64 F19Low;
- UINT64 F19High;
- UINT64 F20Low;
- UINT64 F20High;
- UINT64 F21Low;
- UINT64 F21High;
- UINT64 F22Low;
- UINT64 F22High;
- UINT64 F23Low;
- UINT64 F23High;
- UINT64 F24Low;
- UINT64 F24High;
- UINT64 F25Low;
- UINT64 F25High;
- UINT64 F26Low;
- UINT64 F26High;
- UINT64 F27Low;
- UINT64 F27High;
- UINT64 F28Low;
- UINT64 F28High;
- UINT64 F29Low;
- UINT64 F29High;
- UINT64 F30Low;
- UINT64 F30High;
- UINT64 F31Low;
- UINT64 F31High;
- UINT64 FPSR;
UINT64 BR0;
UINT64 BR1;
UINT64 BR2;
UINT64 BR3;
UINT64 BR4;
UINT64 BR5;
+ UINT64 InitialUNAT;
+ UINT64 AfterSpillUNAT;
+ UINT64 PFS;
+ UINT64 BSP;
+ UINT64 Predicates;
+ UINT64 LoopCount;
+ UINT64 FPSR;
} BASE_LIBRARY_JUMP_BUFFER;
#elif defined (MDE_CPU_X64)
@@ -2866,6 +2845,7 @@ typedef union {
//
// Byte packed structure for an IDTR, GDTR, LDTR descriptor
+/// @bug How to make this structure byte-packed in a compiler independent way?
//
typedef struct {
UINT16 Limit;