Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
// // // Module Name: miscs.s // // Description: // // miscellaneous assembly functions used by hal. // // Target Platform: // // IA-64 // // Reuse: None // //
#include "regia64.h"
#include "kxia64.h"
//++ // Name: HalpLockedIncrementUlong(Sync) // // Routine Description: // // Atomically increment a variable. // // Arguments: // // Sync: Synchronization variable // // Return Value: NONE // //--
LEAF_ENTRY(HalpLockedIncrementUlong) LEAF_SETUP(1,2,0,0)
ARGPTR(a0)
;;
fetchadd4.acq.nt1 t1 = [a0], 1 ;;
LEAF_RETURN LEAF_EXIT(HalpLockedIncrementUlong)
//++ // Name: HalpGetReturnAddress() // // Routine Description: // // Returns b0 // // Arguments: // // NONE // // Return Value: b0 // //--
LEAF_ENTRY(HalpGetReturnAddress) LEAF_SETUP(0,2,0,0)
mov v0 = b0 ;;
LEAF_RETURN LEAF_EXIT(HalpGetReturnAddress)
|