//------------------------------------------------------------------------------ // // InternalSwitchStackAsm for RISC-V // // Copyright (c) 2023, Bosc Corporation. All rights reserved.
// // SPDX-License-Identifier: BSD-2-Clause-Patent // //------------------------------------------------------------------------------ .align 3 #/** # # This allows the caller to switch the stack and goes to the new entry point # # @param Context Parameter to pass in # @param Context2 Parameter2 to pass in # @param EntryPoint The pointer to the location to enter # @param NewStack New Location of the stack # # @return Nothing. Goes to the Entry Point passing in the new parameters # #**/ #VOID #EFIAPI #InternalSwitchStackAsm ( # VOID *Context, # VOID *Context2, # SWITCH_STACK_ENTRY_POINT EntryPoint, # VOID *NewStack # ); # .globl InternalSwitchStackAsm InternalSwitchStackAsm: mv ra, a2 mv sp, a3 ret