Пример #1
0
        /// <summary>
        /// Copies the content of one register to another
        /// </summary>
        /// <param name="dst">Target register identifer</param>
        /// <param name="src">Source register identifier</param>
        public int mov(GpRegId dst, GpRegId src)
        {
            var srcLoc = src.Address();
            var dstLoc = dst.Address();

            if (srcLoc.Size > dstLoc.Size)
            {
                return(-1);
            }

            ref var srcRef = ref Gpr.Ref(srcLoc);
Пример #2
0
        /// <summary>
        /// Performs integer multiplication between source and target registers
        /// and places the result in the target register
        /// </summary>
        /// <param name="dst">Target register identifer</param>
        /// <param name="src">Source register identifier</param>
        public int imul(GpRegId dst, GpRegId src)
        {
            var srcLoc = src.Address();
            var dstLoc = dst.Address();

            ref var srcRef = ref Gpr.Ref(srcLoc);