Leaked source code of windows server 2003
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.
|
|
/*++
Copyright (c) 1996 Microsoft Corporation
Module Name:
codeseq.h
Abstract:
This header file contains the function prototypes for all fragments in codeseq.c
Author:
Barry Bond (barrybo) creation-date 23-Sept-1996
Revision History:
--*/
#undef FRAGMENT
#undef PATCH_FRAGMENT
#undef OP_FRAGMENT
#if _ALPHA_
#define FRAGMENT(name) \
ULONG \ Gen##name ( \ IN PULONG CodeLocation, \ IN ULONG CurrentECU, \ IN PINSTRUCTION Instruction \ );
#define PATCH_FRAGMENT(name) \
ULONG \ Gen##name ( \ IN PULONG CodeLocation, \ IN ULONG fCompiling, \ IN ULONG CurrentECU, \ IN ULONG Param1, \ IN ULONG Param2 \ ); #else
#define FRAGMENT(name) \
ULONG \ Gen##name ( \ IN PULONG CodeLocation, \ IN PINSTRUCTION Instruction \ );
#define PATCH_FRAGMENT(name) \
ULONG \ Gen##name ( \ IN PULONG CodeLocation, \ IN ULONG fCompiling, \ IN ULONG Param1, \ IN ULONG Param2 \ ); #endif
#define OP_FRAGMENT(name) \
ULONG \ Gen##name ( \ IN PULONG CodeLocation, \ IN POPERAND Operand, \ IN ULONG OperandNumber \ );
FRAGMENT(AddFragNoFlags32) FRAGMENT(AddFragNoFlags32A) FRAGMENT(AndFragNoFlags32) FRAGMENT(AndFragNoFlags32A) FRAGMENT(DecFragNoFlags32) FRAGMENT(DecFragNoFlags32A) FRAGMENT(IncFragNoFlags32) FRAGMENT(IncFragNoFlags32A) FRAGMENT(OrFragNoFlags32) FRAGMENT(OrFragNoFlags32A) FRAGMENT(SubFragNoFlags32) FRAGMENT(SubFragNoFlags32A) FRAGMENT(XorFragNoFlags32) FRAGMENT(XorFragNoFlags32A) FRAGMENT(StartBasicBlock) FRAGMENT(JumpToNextCompilationUnit) PATCH_FRAGMENT(JumpToNextCompilationUnit2) FRAGMENT(CallCFrag) FRAGMENT(CallCFragNoCpu) FRAGMENT(CallCFragLoadEip) FRAGMENT(CallCFragLoadEipNoCpu) FRAGMENT(CallCFragLoadEipNoCpuSlow) FRAGMENT(CallCFragLoadEipSlow) FRAGMENT(CallCFragSlow) FRAGMENT(CallCFragNoCpuSlow) FRAGMENT(JaFrag) FRAGMENT(JaeFrag) FRAGMENT(JbeFrag) FRAGMENT(JbFrag) FRAGMENT(JeFrag) FRAGMENT(JgFrag) FRAGMENT(JlFrag) FRAGMENT(JleFrag) FRAGMENT(JneFrag) FRAGMENT(JnlFrag) FRAGMENT(JnoFrag) FRAGMENT(JnpFrag) FRAGMENT(JnsFrag) FRAGMENT(JoFrag) FRAGMENT(JpFrag) FRAGMENT(JsFrag) FRAGMENT(JecxzFrag) FRAGMENT(JcxzFrag) FRAGMENT(LoopFrag32) FRAGMENT(LoopFrag16) FRAGMENT(LoopneFrag32) FRAGMENT(LoopneFrag16) FRAGMENT(LoopeFrag32) FRAGMENT(LoopeFrag16) FRAGMENT(JxxBody) PATCH_FRAGMENT(JxxBody2) FRAGMENT(JxxStartSlow) FRAGMENT(JxxBodySlow) PATCH_FRAGMENT(JxxBodySlow2) FRAGMENT(JxxBodyFwd) PATCH_FRAGMENT(JxxBodyFwd2) FRAGMENT(CallJmpDirect) PATCH_FRAGMENT(CallJmpDirect2) FRAGMENT(CallJmpDirectSlow) PATCH_FRAGMENT(CallJmpDirectSlow2) FRAGMENT(CallJmpFwdDirect) PATCH_FRAGMENT(CallJmpFwdDirect2) FRAGMENT(CallJmpfDirect) PATCH_FRAGMENT(CallJmpfDirect2) FRAGMENT(CallJmpIndirect) FRAGMENT(CallJmpfIndirect) FRAGMENT(CallRetIndirect) FRAGMENT(CallDirect) PATCH_FRAGMENT(CallDirect2) PATCH_FRAGMENT(CallDirect3) FRAGMENT(CallfDirect) PATCH_FRAGMENT(CallfDirect2) PATCH_FRAGMENT(CallfDirect3) FRAGMENT(CallIndirect) FRAGMENT(CallfIndirect) PATCH_FRAGMENT(CallIndirect2) PATCH_FRAGMENT(CallfIndirect2) FRAGMENT(Movsx8To32) FRAGMENT(Movsx8To32Slow) FRAGMENT(Movsx16To32) FRAGMENT(Movsx16To32Slow) FRAGMENT(Movsx8To16) FRAGMENT(Movsx8To16Slow) FRAGMENT(Movzx8To32) FRAGMENT(Movzx8To32Slow) FRAGMENT(Movzx16To32) FRAGMENT(Movzx16To32Slow) FRAGMENT(Movzx8To16) FRAGMENT(Movzx8To16Slow) FRAGMENT(EndCompilationUnit) FRAGMENT(EndMovSlow)
#if _ALPHA_
OP_FRAGMENT(OperandMovRegToReg8B) OP_FRAGMENT(OperandMovToMem8D) OP_FRAGMENT(OperandMovToMem16D) #endif
OP_FRAGMENT(OperandMovToMem32B) OP_FRAGMENT(OperandMovToMem32D) OP_FRAGMENT(OperandMovToMem16B) OP_FRAGMENT(OperandMovToMem16W) OP_FRAGMENT(OperandMovToMem8B) OP_FRAGMENT(OperandMovToReg) OP_FRAGMENT(OperandMovRegToReg32) OP_FRAGMENT(OperandMovRegToReg16) OP_FRAGMENT(OperandMovRegToReg8) OP_FRAGMENT(OperandImm) OP_FRAGMENT(OperandRegRef) OP_FRAGMENT(OperandRegVal) OP_FRAGMENT(LoadCacheReg)
ULONG GenOperandAddr( PULONG CodeLocation, POPERAND Operand, ULONG OperandNumber, ULONG FsOverride );
#undef FRAGMENT
#undef PATCH_FRAGMENT
#undef OP_FRAGMENT
|