Skip to content

Commit

Permalink
Update Mile.Uefi.RuntimeLibrary implementation from https://github.co…
Browse files Browse the repository at this point in the history
  • Loading branch information
MouriNaruto committed Jan 5, 2025
1 parent c430487 commit 9d9d862
Show file tree
Hide file tree
Showing 20 changed files with 2,566 additions and 5,623 deletions.
53 changes: 53 additions & 0 deletions Mile.Uefi.RuntimeLibrary/Include/crt/arm64intr.h
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,59 @@ void __dmb(unsigned int _Type);
void __dsb(unsigned int _Type);
void __isb(unsigned int _Type);

unsigned __int8 __ldar8(unsigned __int8 volatile * _Target);
unsigned __int16 __ldar16(unsigned __int16 volatile * _Target);
unsigned __int32 __ldar32(unsigned __int32 volatile * _Target);
unsigned __int64 __ldar64(unsigned __int64 volatile * _Target);

unsigned __int8 __ldapr8(unsigned __int8 volatile * _Target);
unsigned __int16 __ldapr16(unsigned __int16 volatile * _Target);
unsigned __int32 __ldapr32(unsigned __int32 volatile * _Target);
unsigned __int64 __ldapr64(unsigned __int64 volatile * _Target);

unsigned __int8 __load_acquire8(unsigned __int8 volatile * _Target);
unsigned __int16 __load_acquire16(unsigned __int16 volatile * _Target);
unsigned __int32 __load_acquire32(unsigned __int32 volatile * _Target);
unsigned __int64 __load_acquire64(unsigned __int64 volatile * _Target);

void __stlr8(unsigned __int8 volatile * _Target, unsigned __int8 _Value);
void __stlr16(unsigned __int16 volatile * _Target, unsigned __int16 _Value);
void __stlr32(unsigned __int32 volatile * _Target, unsigned __int32 _Value);
void __stlr64(unsigned __int64 volatile * _Target, unsigned __int64 _Value);

unsigned __int8 __swp8(unsigned __int8 volatile * _Target, unsigned __int8 _Value);
unsigned __int16 __swp16(unsigned __int16 volatile * _Target, unsigned __int16 _Value);
unsigned __int32 __swp32(unsigned __int32 volatile * _Target, unsigned __int32 _Value);
unsigned __int64 __swp64(unsigned __int64 volatile * _Target, unsigned __int64 _Value);
unsigned __int8 __swpa8(unsigned __int8 volatile * _Target, unsigned __int8 _Value);
unsigned __int16 __swpa16(unsigned __int16 volatile * _Target, unsigned __int16 _Value);
unsigned __int32 __swpa32(unsigned __int32 volatile * _Target, unsigned __int32 _Value);
unsigned __int64 __swpa64(unsigned __int64 volatile * _Target, unsigned __int64 _Value);
unsigned __int8 __swpl8(unsigned __int8 volatile * _Target, unsigned __int8 _Value);
unsigned __int16 __swpl16(unsigned __int16 volatile * _Target, unsigned __int16 _Value);
unsigned __int32 __swpl32(unsigned __int32 volatile * _Target, unsigned __int32 _Value);
unsigned __int64 __swpl64(unsigned __int64 volatile * _Target, unsigned __int64 _Value);
unsigned __int8 __swpal8(unsigned __int8 volatile * _Target, unsigned __int8 _Value);
unsigned __int16 __swpal16(unsigned __int16 volatile * _Target, unsigned __int16 _Value);
unsigned __int32 __swpal32(unsigned __int32 volatile * _Target, unsigned __int32 _Value);
unsigned __int64 __swpal64(unsigned __int64 volatile * _Target, unsigned __int64 _Value);

unsigned __int8 __cas8(unsigned __int8 volatile * _Target, unsigned __int8 _Comp, unsigned __int8 _Value);
unsigned __int16 __cas16(unsigned __int16 volatile * _Target, unsigned __int16 _Comp, unsigned __int16 _Value);
unsigned __int32 __cas32(unsigned __int32 volatile * _Target, unsigned __int32 _Comp, unsigned __int32 _Value);
unsigned __int64 __cas64(unsigned __int64 volatile * _Target, unsigned __int64 _Comp, unsigned __int64 _Value);
unsigned __int8 __casa8(unsigned __int8 volatile * _Target, unsigned __int8 _Comp, unsigned __int8 _Value);
unsigned __int16 __casa16(unsigned __int16 volatile * _Target, unsigned __int16 _Comp, unsigned __int16 _Value);
unsigned __int32 __casa32(unsigned __int32 volatile * _Target, unsigned __int32 _Comp, unsigned __int32 _Value);
unsigned __int64 __casa64(unsigned __int64 volatile * _Target, unsigned __int64 _Comp, unsigned __int64 _Value);
unsigned __int8 __casl8(unsigned __int8 volatile * _Target, unsigned __int8 _Comp, unsigned __int8 _Value);
unsigned __int16 __casl16(unsigned __int16 volatile * _Target, unsigned __int16 _Comp, unsigned __int16 _Value);
unsigned __int32 __casl32(unsigned __int32 volatile * _Target, unsigned __int32 _Comp, unsigned __int32 _Value);
unsigned __int64 __casl64(unsigned __int64 volatile * _Target, unsigned __int64 _Comp, unsigned __int64 _Value);
unsigned __int8 __casal8(unsigned __int8 volatile * _Target, unsigned __int8 _Comp, unsigned __int8 _Value);
unsigned __int16 __casal16(unsigned __int16 volatile * _Target, unsigned __int16 _Comp, unsigned __int16 _Value);
unsigned __int32 __casal32(unsigned __int32 volatile * _Target, unsigned __int32 _Comp, unsigned __int32 _Value);
unsigned __int64 __casal64(unsigned __int64 volatile * _Target, unsigned __int64 _Comp, unsigned __int64 _Value);

#ifdef __cplusplus
}
Expand Down
Loading

0 comments on commit 9d9d862

Please sign in to comment.