Make MDE package pass intel IPF compiler with /W4 /WX switched on.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2312 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
xli24
2007-01-25 06:05:36 +00:00
parent ba3a1cb5bb
commit 582510249f
65 changed files with 1441 additions and 400 deletions

View File

@@ -14,59 +14,7 @@
**/
//
// Decompression algorithm begins here
//
#define BITBUFSIZ 32
#define MAXMATCH 256
#define THRESHOLD 3
#define CODE_BIT 16
#define BAD_TABLE - 1
//
// C: Char&Len Set; P: Position Set; T: exTra Set
//
#define NC (0xff + MAXMATCH + 2 - THRESHOLD)
#define CBIT 9
#define MAXPBIT 5
#define TBIT 5
#define MAXNP ((1U << MAXPBIT) - 1)
#define NT (CODE_BIT + 3)
#if NT > MAXNP
#define NPT NT
#else
#define NPT MAXNP
#endif
typedef struct {
UINT8 *mSrcBase; ///< Starting address of compressed data
UINT8 *mDstBase; ///< Starting address of decompressed data
UINT32 mOutBuf;
UINT32 mInBuf;
UINT16 mBitCount;
UINT32 mBitBuf;
UINT32 mSubBitBuf;
UINT16 mBlockSize;
UINT32 mCompSize;
UINT32 mOrigSize;
UINT16 mBadTableFlag;
UINT16 mLeft[2 * NC - 1];
UINT16 mRight[2 * NC - 1];
UINT8 mCLen[NC];
UINT8 mPTLen[NPT];
UINT16 mCTable[4096];
UINT16 mPTTable[256];
///
/// The length of the field 'Position Set Code Length Array Size' in Block Header.
/// For EFI 1.1 de/compression algorithm, mPBit = 4
/// For Tiano de/compression algorithm, mPBit = 5
///
UINT8 mPBit;
} SCRATCH_DATA;
#include "BaseUefiDecompressLibInternals.h"
/**
Read NumOfBit of bits from source into mBitBuf
@@ -195,6 +143,9 @@ MakeTable (
UINT16 Avail;
UINT16 NextCode;
UINT16 Mask;
UINT16 WordOfStart;
UINT16 WordOfCount;
for (Index = 1; Index <= 16; Index++) {
Count[Index] = 0;
@@ -207,7 +158,9 @@ MakeTable (
Start[1] = 0;
for (Index = 1; Index <= 16; Index++) {
Start[Index + 1] = (UINT16) (Start[Index] + (Count[Index] << (16 - Index)));
WordOfStart = Start[Index];
WordOfCount = Count[Index];
Start[Index + 1] = (UINT16) (WordOfStart + (WordOfCount << (16 - Index)));
}
if (Start[17] != 0) {
@@ -627,7 +580,7 @@ Decode (
//
CharC = DecodeC (Sd);
if (Sd->mBadTableFlag != 0) {
return ;
goto Done;
}
if (CharC < 256) {
@@ -635,7 +588,7 @@ Decode (
// Process an Original character
//
if (Sd->mOutBuf >= Sd->mOrigSize) {
return ;
goto Done;
} else {
//
// Write orignal character into mDstBase
@@ -666,7 +619,7 @@ Decode (
while ((INT16) (BytesRemain) >= 0) {
Sd->mDstBase[Sd->mOutBuf++] = Sd->mDstBase[DataIdx++];
if (Sd->mOutBuf >= Sd->mOrigSize) {
return ;
goto Done;
}
BytesRemain--;
@@ -674,6 +627,7 @@ Decode (
}
}
Done:
return ;
}