audk/MdePkg/Library/BaseLib
Yao, Jiewen 0aac2f777a MdePkg/BaseLib: Add Shadow Stack Support for X86.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1521

This patch adds SSP - shadow stack pointer to JumpBuffer.
It will be used for the platform that enabled CET/ShadowStack.

We add gEfiMdePkgTokenSpaceGuid.PcdControlFlowEnforcementPropertyMask
to control the global enable/disable.

Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Eric Dong <eric.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Yao Jiewen <jiewen.yao@intel.com>
Reviewed-by: Ray Ni <ray.ni@intel.com>
Regression-tested-by: Laszlo Ersek <lersek@redhat.com>
2019-02-28 09:39:47 +08:00
..
AArch64 MdePkg/BaseLib: implement SpeculationBarrier() for ARM and AArch64 2019-02-12 22:49:20 +01:00
Arm MdePkg/BaseLib: implement SpeculationBarrier() for ARM and AArch64 2019-02-12 22:49:20 +01:00
Ebc MdePkg/BaseLib: Introduce new SpeculationBarrier API 2018-12-25 09:15:34 +08:00
Ia32 MdePkg/BaseLib: Add Shadow Stack Support for X86. 2019-02-28 09:39:47 +08:00
X64 MdePkg/BaseLib: Add Shadow Stack Support for X86. 2019-02-28 09:39:47 +08:00
ARShiftU64.c
BaseLib.inf MdePkg/BaseLib: Add Shadow Stack Support for X86. 2019-02-28 09:39:47 +08:00
BaseLib.uni MdePkg: Convert all .uni files to utf-8 2015-12-15 04:53:50 +00:00
BaseLibInternals.h MdePkg/BaseLib: Remove definitions of two functions 2019-01-31 20:19:15 +08:00
BitField.c MdePkg/BaseLib: Add bit field population calculating methods 2018-07-09 10:29:45 +08:00
CheckSum.c MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
ChkStkGcc.c MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
Cpu.c
CpuDeadLoop.c
DivS64x64Remainder.c MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
DivU64x32.c
DivU64x32Remainder.c
DivU64x64Remainder.c
FilePaths.c MdePkg-BaseLib: Fix PathCleanUpDirectories() issue with "\\..\\.." 2018-10-24 13:36:35 +08:00
GetPowerOfTwo32.c
GetPowerOfTwo64.c
HighBitSet32.c
HighBitSet64.c
LRotU32.c
LRotU64.c
LShiftU64.c
LinkedList.c MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
LongJump.c
LowBitSet32.c
LowBitSet64.c
Math64.c MdePkg/BaseLib: do not rely on undefined behavior in arithmetic shift 2015-12-31 10:47:22 +00:00
ModU64x32.c
MultS64x64.c
MultU64x32.c
MultU64x64.c
RRotU32.c
RRotU64.c
RShiftU64.c
SafeString.c MdePkg/BaseLib: Introduce CharToUpper and AsciiCharToUpper publicly 2019-01-31 20:19:14 +08:00
SetJump.c
String.c MdePkg/BaseLib: Change a variable type in a bitwise operation 2019-02-19 16:15:15 +08:00
SwapBytes16.c
SwapBytes32.c
SwapBytes64.c
SwitchStack.c MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
Unaligned.c
X86DisablePaging32.c
X86DisablePaging64.c
X86EnablePaging32.c
X86EnablePaging64.c
X86FxRestore.c
X86FxSave.c
X86GetInterruptState.c
X86MemoryFence.c
X86Msr.c MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
X86PatchInstruction.c MdePkg/BaseLib: add PatchInstructionX86() 2018-04-04 16:43:58 +02:00
X86RdRand.c MdePkg/BaseLib: Add one wrapper on RdRand access for parameter check. 2016-11-16 16:49:10 +08:00
X86ReadGdtr.c
X86ReadIdtr.c
X86SpeculationBarrier.c MdePkg/BaseLib: Introduce new SpeculationBarrier API 2018-12-25 09:15:34 +08:00
X86Thunk.c MdePkg: Clean up source files 2018-06-28 11:19:47 +08:00
X86WriteGdtr.c
X86WriteIdtr.c