summaryrefslogtreecommitdiff
path: root/DuetPkg/EfiLdr
diff options
context:
space:
mode:
authorklu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524>2008-05-08 04:11:25 +0000
committerklu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524>2008-05-08 04:11:25 +0000
commit394bbc5930f78732f0bc5daf286beb3f8e39f27d (patch)
tree92889cc38410cb492cedf4df4a99143f35bbbf52 /DuetPkg/EfiLdr
parent61e334303b59d28e0baa1737a5e5751aad301e32 (diff)
1) Fix some casting working in X64 building
2) Use SetMem/CopyMem function to do structure initialization to avoid X64 compiler call standard C library. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5180 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'DuetPkg/EfiLdr')
-rw-r--r--DuetPkg/EfiLdr/TianoDecompress.c31
1 files changed, 8 insertions, 23 deletions
diff --git a/DuetPkg/EfiLdr/TianoDecompress.c b/DuetPkg/EfiLdr/TianoDecompress.c
index 9a9ab70be..df7efbd75 100644
--- a/DuetPkg/EfiLdr/TianoDecompress.c
+++ b/DuetPkg/EfiLdr/TianoDecompress.c
@@ -201,9 +201,7 @@ Returns:
UINT16 NextCode;
UINT16 Mask;
- for (Index = 1; Index <= 16; Index++) {
- Count[Index] = 0;
- }
+ SetMem (&Count[1], sizeof(UINT16) * 16, 0);
for (Index = 0; Index < NumOfChar; Index++) {
Count[BitLen[Index]]++;
@@ -235,9 +233,7 @@ Returns:
if (Index != 0) {
Index3 = (UINT16) (1U << TableBits);
- while (Index != Index3) {
- Table[Index++] = 0;
- }
+ SetMem(&Table[Index], sizeof(UINT16) * (Index3 - Index + 1), 0);
}
Avail = NumOfChar;
@@ -388,9 +384,7 @@ Returns:
Sd->mPTTable[Index] = CharC;
}
- for (Index = 0; Index < nn; Index++) {
- Sd->mPTLen[Index] = 0;
- }
+ SetMem ((VOID*) &Sd->mPTLen, nn * sizeof(UINT8), 0);
return 0;
}
@@ -421,10 +415,7 @@ Returns:
}
}
- while (Index < nn) {
- Sd->mPTLen[Index++] = 0;
- }
-
+ SetMem ((VOID*) &Sd->mPTLen[Index], (nn - Index) * sizeof(UINT8), 0);
return MakeTable (Sd, nn, Sd->mPTLen, 8, Sd->mPTTable);
}
@@ -457,9 +448,7 @@ Returns: (VOID)
if (Number == 0) {
CharC = (UINT16) GetBits (Sd, CBIT);
- for (Index = 0; Index < NC; Index++) {
- Sd->mCLen[Index] = 0;
- }
+ SetMem ((VOID*)&Sd->mCLen, sizeof(UINT8) * NC, 0);
for (Index = 0; Index < 4096; Index++) {
Sd->mCTable[Index] = CharC;
@@ -513,9 +502,7 @@ Returns: (VOID)
}
}
- while (Index < NC) {
- Sd->mCLen[Index++] = 0;
- }
+ SetMem ((VOID*) &Sd->mCLen[Index], sizeof(UINT8) * (NC - Index), 0);
MakeTable (Sd, NC, Sd->mCLen, 12, Sd->mCTable);
@@ -731,7 +718,6 @@ Returns:
--*/
{
- UINT32 Index;
UINT32 CompSize;
UINT32 OrigSize;
EFI_STATUS Status;
@@ -773,9 +759,8 @@ Returns:
Src = Src + 8;
- for (Index = 0; Index < sizeof (SCRATCH_DATA); Index++) {
- ((UINT8 *) Sd)[Index] = 0;
- }
+ SetMem ((VOID*) Sd, sizeof(SCRATCH_DATA), 0);
+
//
// The length of the field 'Position Set Code Length Array Size' in Block Header.
// For EFI 1.1 de/compression algorithm(Version 1), mPBit = 4