Cosmos/source2/Compiler/Cosmos.Compiler.XSharp/RegisterECX.cs
2010-08-07 13:16:30 +00:00

41 lines
1.2 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Cosmos.Compiler.Assembler;
namespace Cosmos.Compiler.XSharp {
public class RegisterECX : Register32 {
public static readonly RegisterECX Instance = new RegisterECX();
public static implicit operator RegisterECX(ElementReference aReference) {
Instance.Move(aReference);
return Instance;
}
public static implicit operator RegisterECX(MemoryAction aAction) {
Instance.Move(aAction);
return Instance;
}
public static implicit operator RegisterECX(UInt32 aValue) {
Instance.Move(aValue);
return Instance;
}
public static implicit operator RegisterECX(RegisterEAX aValue) {
Instance.Move(aValue.GetId());
return Instance;
}
public static implicit operator RegisterECX(RegisterEBX aValue) {
Instance.Move(aValue.GetId());
return Instance;
}
public static implicit operator RegisterECX(RegisterEDX aValue) {
Instance.Move(aValue.GetId());
return Instance;
}
}
}