audk/MdePkg/Library/BaseLib
Yong Li ded0b489af MdePkg/BaseLib: Add SpeculationBarrier implementation for RiscV64
Implement the SpeculationBarrier with implementations consisting of
fence instruction which provides finer-grain memory orderings.
Perform Data Barrier in RiscV: fence rw,rw
Perform Instruction Barrier in RiscV: fence.i; fence r,r
More detail is in Appendix A: RVWMO Explanatory Material in
https://github.com/riscv/riscv-isa-manual

This API is first introduced in the below commits for IA32 and x64
d9f1cac51b
e83d841fdc
and below the commit for ARM and AArch64 implementation
c0959b4426

This commit is to add the RiscV64 implementation which will be used by
variable service under Variable/RuntimeDxe

Cc: Andrei Warkentin <andrei.warkentin@intel.com>
Cc: Evan Chai <evan.chai@intel.com>
Cc: Sunil V L <sunilvl@ventanamicro.com>
Cc: Tuan Phan <tphan@ventanamicro.com>
Signed-off-by: Yong Li <yong.li@intel.com>
Reviewed-by: Sunil V L <sunilvl@ventanamicro.com>
2023-06-06 20:37:18 +00:00
..
AArch64 MdePkg/BaseLib AARCH64: Make asm files BTI compatible 2023-03-30 11:05:22 +00:00
Arm MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
Ebc MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
Ia32 MdePkg: Replace Opcode with the corresponding instructions. 2022-03-01 01:45:47 +00:00
LoongArch64 MdePkg/BaseLib: BaseLib for LOONGARCH64 architecture. 2022-10-14 02:16:33 +00:00
RiscV64 MdePkg/BaseLib: Add SpeculationBarrier implementation for RiscV64 2023-06-06 20:37:18 +00:00
X64 MdePkg: Introduce basic Tdx functions in BaseLib 2022-04-02 08:15:12 +00:00
ARShiftU64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
BaseLib.inf MdePkg/BaseLib: Add SpeculationBarrier implementation for RiscV64 2023-06-06 20:37:18 +00:00
BaseLib.uni
BaseLibInternals.h MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
BitField.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
CheckSum.c MdePkg/BaseLib: Add CRC16-ANSI and CRC32c implementations 2022-06-13 02:41:35 +00:00
ChkStkGcc.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
Cpu.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
CpuDeadLoop.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
DivS64x64Remainder.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
DivU64x32.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
DivU64x32Remainder.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
DivU64x64Remainder.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
FilePaths.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
GetPowerOfTwo32.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
GetPowerOfTwo64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
HighBitSet32.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
HighBitSet64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
IntelTdxNull.c MdePkg: Introduce basic Tdx functions in BaseLib 2022-04-02 08:15:12 +00:00
LRotU32.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
LRotU64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
LShiftU64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
LinkedList.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
LongJump.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
LowBitSet32.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
LowBitSet64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
Math64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
ModU64x32.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
MultS64x64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
MultU64x32.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
MultU64x64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
QuickSort.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
RRotU32.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
RRotU64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
RShiftU64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
SafeString.c MdePkg: Update code to be more C11 compliant by using __func__ 2023-03-17 17:55:48 +00:00
SetJump.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
String.c MdePkg: Fix conditionally uninitialized variables 2023-04-03 15:29:08 +00:00
SwapBytes16.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
SwapBytes32.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
SwapBytes64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
SwitchStack.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
Unaligned.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
UnitTestHost.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
UnitTestHost.h MdePkg/Library/BaseLib: Add BaseLib instance for host based unit tests 2020-07-15 05:25:21 +00:00
UnitTestHostBaseLib.inf MdePkg/Library/BaseLib: HOST_APPLICATION IA32/X64 only 2023-04-10 05:59:02 +00:00
UnitTestHostBaseLib.uni MdePkg/Library/BaseLib: Add BaseLib instance for host based unit tests 2020-07-15 05:25:21 +00:00
X86DisablePaging32.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86DisablePaging64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86EnablePaging32.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86EnablePaging64.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86FxRestore.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86FxSave.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86GetInterruptState.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86MemoryFence.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86Msr.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86PatchInstruction.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86RdRand.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86ReadGdtr.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86ReadIdtr.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86SpeculationBarrier.c MdePkg/BaseLib: Use PcdSpeculationBarrierType 2019-04-30 16:39:15 -07:00
X86Thunk.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86UnitTestHost.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86WriteGdtr.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
X86WriteIdtr.c MdePkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00