示例#1
0
文件: Memory.cs 项目: prepare/AsmJit
 internal Memory(GpRegister @base, int disp, int size = 0)
     : base(OperandType.Memory, size)
 {
     Id           = @base.Index;
     MemoryType   = MemoryType.BaseIndex;
     Displacement = disp;
     Flags        = GetGpdFlags(@base) + (Constants.X86.MemVSibGpz << Constants.X86.MemVSibIndex);
     Index        = RegisterIndex.Invalid;
 }
示例#2
0
文件: Memory.cs 项目: prepare/AsmJit
 internal Memory(Label label, GpRegister index, int shift, int disp, int size = 0)
     : base(OperandType.Memory, size)
 {
     Id           = label.Id;
     MemoryType   = MemoryType.Label;
     Displacement = disp;
     Index        = index.Index;
     Flags        = (Constants.X86.MemVSibGpz << Constants.X86.MemVSibIndex) + (shift << Constants.X86.MemShiftIndex);
 }
示例#3
0
文件: Memory.cs 项目: prepare/AsmJit
 internal Memory(GpRegister @base, YmmRegister index, int shift, int disp, int size = 0)
     : base(OperandType.Memory, size)
 {
     Id           = @base.Index;
     MemoryType   = MemoryType.BaseIndex;
     Displacement = disp;
     Index        = index.Index;
     Flags        = GetGpdFlags(@base) + (Constants.X86.MemVSibYmm << Constants.X86.MemVSibIndex) + (shift << Constants.X86.MemShiftIndex);
 }
示例#4
0
文件: Memory.cs 项目: prepare/AsmJit
 public static Memory ZWordPtrAbs(IntPtr pAbs, GpRegister index, int shift = 0, int disp = 0)
 {
     return(PtrAbs(pAbs, index, shift, disp, 64));
 }
示例#5
0
文件: Memory.cs 项目: prepare/AsmJit
 public static Memory ZWordPtr(Label label, GpRegister index, int shift, int disp = 0)
 {
     return(Ptr(label, index, shift, disp, 64));
 }
示例#6
0
文件: Memory.cs 项目: prepare/AsmJit
 public static Memory ZWordPtr(GpRegister @base, YmmRegister index, int shift = 0, int disp = 0)
 {
     return(Ptr(@base, index, shift, disp, 64));
 }
示例#7
0
文件: Memory.cs 项目: prepare/AsmJit
 public static Memory ZWordPtr(GpRegister @base, int disp = 0)
 {
     return(new Memory(@base, disp, 64));
 }
示例#8
0
文件: Memory.cs 项目: prepare/AsmJit
 public static Memory TWord(GpRegister @base, XmmRegister index, int shift = 0, int disp = 0)
 {
     return(Ptr(@base, index, shift, disp, 10));
 }
示例#9
0
文件: Memory.cs 项目: prepare/AsmJit
 public static Memory TWord(GpRegister @base, int disp = 0)
 {
     return(new Memory(@base, disp, 10));
 }
示例#10
0
文件: Memory.cs 项目: prepare/AsmJit
 public static Memory Byte(Label label, GpRegister index, int shift, int disp = 0)
 {
     return(Ptr(label, index, shift, disp, 1));
 }
示例#11
0
文件: Memory.cs 项目: prepare/AsmJit
 public static Memory Byte(GpRegister @base, GpRegister index, int shift = 0, int disp = 0)
 {
     return(Ptr(@base, index, shift, disp, 1));
 }
示例#12
0
文件: Memory.cs 项目: prepare/AsmJit
 public static Memory Byte(GpRegister @base, int disp = 0)
 {
     return(new Memory(@base, disp, 1));
 }
示例#13
0
文件: Memory.cs 项目: prepare/AsmJit
 public static Memory Ptr(Label label, GpRegister index, int shift, int disp = 0, int size = 0)
 {
     return(new Memory(label, index, shift, disp, size));
 }
示例#14
0
文件: Memory.cs 项目: prepare/AsmJit
 internal static Memory Ptr(GpRegister @base, YmmRegister index, int shift = 0, int disp = 0, int size = 0)
 {
     return(new Memory(@base, index, shift, disp, size));
 }
示例#15
0
文件: Memory.cs 项目: prepare/AsmJit
 internal static Memory Ptr(GpRegister @base, int disp = 0, int size = 0)
 {
     return(new Memory(@base, disp, size));
 }
示例#16
0
 internal GpRegister(GpRegister other)
     : base(other)
 {
 }