40 volatile UINT8 *Pointer8;
41 volatile UINT32 *Pointer32;
42 volatile UINT64 *Pointer64;
46 if ((((
UINTN)Buffer & 0x7) == 0) && (Length >= 8)) {
48 Value32 = (Value << 24) | (Value << 16) | (Value << 8) | Value;
49 Value64 =
LShiftU64 (Value32, 32) | Value32;
51 Pointer64 = (UINT64 *)Buffer;
53 *(Pointer64++) = Value64;
58 Pointer8 = (UINT8 *)Pointer64;
59 }
else if ((((
UINTN)Buffer & 0x3) == 0) && (Length >= 4)) {
61 Value32 = (Value << 24) | (Value << 16) | (Value << 8) | Value;
63 Pointer32 = (UINT32 *)Buffer;
65 *(Pointer32++) = Value32;
70 Pointer8 = (UINT8 *)Pointer32;
72 Pointer8 = (UINT8 *)Buffer;
75 while (Length-- > 0) {
76 *(Pointer8++) = Value;
UINT64 EFIAPI LShiftU64(IN UINT64 Operand, IN UINTN Count)
VOID *EFIAPI InternalMemSetMem(OUT VOID *Buffer, IN UINTN Length, IN UINT8 Value)