public void Shr8(X86Register8 reg, byte count) {
			if (count == 1) {
				writer.Write(new byte[] { 0xD0 });
				reg_emit8((X86Register8)5, reg);
			} else {
				writer.Write(new byte[] { 0xC0 });
				reg_emit8((X86Register8)5, reg);
				imm_emit8(count);
			}
		}
Example #2
0
 public void Shl8(X86Register8 reg, byte count)
 {
     if (count == 1)
     {
         writer.Write(new byte[] { 0xD0 });
         reg_emit8((X86Register8)4, reg);
     }
     else
     {
         writer.Write(new byte[] { 0xC0 });
         reg_emit8((X86Register8)4, reg);
         imm_emit8(count);
     }
 }
 public void CmpXChg8(X86Address dest, X86Register8 src)
 {
     writer.Write(new byte[] { 0x0F, 0xB0 });
     dest.Emit(writer, src);
 }
Example #4
0
 public void AddC8(X86Register8 dest, X86Register8 src)
 {
     writer.Write(new byte[] { 0x10 });
     reg_emit8(dest, src);
 }
Example #5
0
 public void Shl8(X86Register8 reg)
 {
     writer.Write(new byte[] { 0xD2 });
     reg_emit8((X86Register8)4, reg);
 }
Example #6
0
 public void IMul8(X86Register8 dest, X86Register8 src)
 {
     writer.Write(new byte[] { 0x0F, 0xAE });
     reg_emit8(dest, src);
 }
		public void CmpXChg8(X86Address dest, X86Register8 src) {
			writer.Write(new byte[] { 0x0F, 0xB0 });
			dest.Emit(writer, src);
		}
Example #8
0
 public void Negate8(X86Register8 dest)
 {
     writer.Write(new byte[] { 0xF6 });
     reg_emit8((X86Register8)3, dest);
 }
Example #9
0
		public void Negate8(X86Register8 dest) {
			writer.Write(new byte[] { 0xF6 });
			reg_emit8((X86Register8)3, dest);
		}
Example #10
0
		public void Sub8(X86Register8 dest, X86Register8 src) {
			writer.Write(new byte[] { 0x2A });
			reg_emit8(dest, src);
		}
Example #11
0
		public void Cmp8(X86Register8 dest, Byte src) {
			writer.Write(new byte[] { 0x80 });
			reg_emit8((X86Register8)7, dest);
			imm_emit8(src);
		}
Example #12
0
		public void Cmp8(X86Register8 dest, X86Register8 src) {
			writer.Write(new byte[] { 0x38 });
			reg_emit8(dest, src);
		}
Example #13
0
		public void IMul8 (X86Register8 dest, X86Register8 src) {
			writer.Write(new byte[] { 0x0F, 0xAE });
			reg_emit8(dest, src);
		}
Example #14
0
		public void Mul8(X86Register8 src) {
			writer.Write(new byte[] { 0xF6 });
			reg_emit8((X86Register8)4, src);
		}
Example #15
0
		internal void Emit(BinaryWriter writer, X86Register8 otherReg) {
			this.Emit(writer, (byte)otherReg);
		}
Example #16
0
 public void Or8(X86Register8 dest, X86Register8 src)
 {
     writer.Write(new byte[] { 0x08 });
     reg_emit8(dest, src);
 }
Example #17
0
 public void Or8(X86Register8 dest, X86Address src)
 {
     writer.Write(new byte[] { 0x0A });
     src.Emit(writer, dest);
 }
Example #18
0
 public void Mov8(X86Register8 dest, Byte value)
 {
     this.writer.Write(new byte[] { 0xc6 });
     reg_emit8(0, dest);
     writer.Write(value);
 }
Example #19
0
 private void reg_emit8(X86Register8 dest, X86Register8 src)
 {
     address_byte(3, (byte)(dest), (byte)(src));
 }
Example #20
0
 public void Mov8(X86Address dest, X86Register8 src)
 {
     this.writer.Write(new byte[] { 0x88 });
     dest.Emit(writer, src);
 }
Example #21
0
		public void Inc8(X86Register8 reg) {
			writer.Write(new byte[] { 0xFE });
			reg_emit8((X86Register8)0, reg);
		}
Example #22
0
 public void Mov8(X86Register8 dest, X86Address src)
 {
     this.writer.Write(new byte[] { 0x8a });
     src.Emit(writer, dest);
 }
		public void Shr8(X86Register8 reg) {
			writer.Write(new byte[] { 0xD2 });
			reg_emit8((X86Register8)5, reg);
		}
Example #24
0
		public void Mov8(X86Register8 dest, Byte value) {
			this.writer.Write(new byte[] { 0xc6 });
			reg_emit8(0, dest);
			writer.Write(value);
		}
Example #25
0
 public void IDiv8(X86Register8 src)
 {
     writer.Write(new byte[] { 0xF6 });
     reg_emit8((X86Register8)7, src);
 }
Example #26
0
		public void Mov8(X86Address dest, X86Register8 src) {
			this.writer.Write(new byte[] { 0x88 });
			dest.Emit(writer, src);
		}
Example #27
0
		public void Mov8(X86Register8 dest, X86Address src) {
			this.writer.Write(new byte[] { 0x8a });
			src.Emit(writer, dest);
		}
Example #28
0
		public void Mov8(X86Register8 dest, X86Register8 src) {
			writer.Write(new byte[] { 0x8a });
			reg_emit8(dest, src);
		}
 public void CmpXChg8(X86Register8 dest, X86Register8 src)
 {
     writer.Write(new byte[] { 0x0F, 0xB0 });
     reg_emit8(src, dest);
 }
		public void AddC8(X86Register8 dest, X86Register8 src) {
			writer.Write(new byte[] { 0x10 });
			reg_emit8(dest, src);
		}
Example #31
0
 public void Cmp8(X86Register8 dest, Byte src)
 {
     writer.Write(new byte[] { 0x80 });
     reg_emit8((X86Register8)7, dest);
     imm_emit8(src);
 }
		public void AddC8(X86Address dest, X86Register8 src) {
			writer.Write(new byte[] { 0x10 });
			dest.Emit(writer, src);
		}
Example #33
0
 public void Or8(X86Address dest, X86Register8 src)
 {
     writer.Write(new byte[] { 0x08 });
     dest.Emit(writer, src);
 }
		public void AddC8(X86Register8 dest, X86Address src) {
			writer.Write(new byte[] { 0x12 });
			src.Emit(writer, dest);
		}
Example #35
0
 public void Or8(X86Register8 dest, Byte value)
 {
     this.writer.Write(new byte[] { 0x80 });
     reg_emit8((X86Register8)1, dest);
     writer.Write(value);
 }
		public void AddC8(X86Register8 dest, Byte value) {
			this.writer.Write(new byte[] { 0x80 });
			reg_emit8((X86Register8)0x2, dest);
			writer.Write(value);
		}
Example #37
0
		private void reg_emit8(X86Register8 dest, X86Register8 src) {
			address_byte(3, (byte)(dest), (byte)(src));
		}
Example #38
0
 internal void Emit(BinaryWriter writer, X86Register8 otherReg)
 {
     this.Emit(writer, (byte)otherReg);
 }
Example #39
0
 public void Inc8(X86Register8 reg)
 {
     writer.Write(new byte[] { 0xFE });
     reg_emit8((X86Register8)0, reg);
 }
		public void CmpXChg8(X86Register8 dest, X86Register8 src) {
			writer.Write(new byte[] { 0x0F, 0xB0 });
			reg_emit8(src, dest);
		}