Sync patches r13532, r14037, r14134 and r14213 main trunk.
1. Update HobLib and Hob Service to avoid data over flow.
2. Current Thunk16.asm implementation clears reserved bits, which does not follow IA32 SDM. Now the fix is to only clear PAE and PSE bit of CR4 for real mode.
3. Fix CpuIdEx.asm to return correct ECX/EDX value.
4. Fix EFI_ERROR_SECTION_DESCRIPTOR definition in CPER to match UEFI 2.3.1 specification.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/branches/UDK2010.SR1@14223 6f19259b-4bc3-4df7-8a09-765794883524
Sync patches r13533, r14004, r14009, r14019 and r14020 main trunk.
1. Update HobLib and Hob Service to avoid data over flow.
2. Add boot mode BOOT_WITH_MFG_MODE_SETTINGS.
3. Add PI1.2.1 EndOfDxe support..
4. Add ASSERT() for BitField operations to make sure the input value is valid.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/branches/UDK2010.SR1@14224 6f19259b-4bc3-4df7-8a09-765794883524