public static int RegisterSizeInBits(TArmRegisterTypeVFP aRegister)
        {
            int ret   = 32;
            int value = (int)aRegister;

            //
            if (value >= 0 && value < (int)TArmRegisterTypeVFP.S00)
            {
                ret *= 2;
            }
            //
            return(ret);
        }
        private void HandleDTOperation(ArmPrologueHelper aProlog, TArmRegisterTypeVFP[] aRegisterList)
        {
            int numberOfRegisters = aRegisterList.Length;

            if (numberOfRegisters > 0)
            {
                // The size of the register varies... but the list will be consistent.
                TArmRegisterTypeVFP first = aRegisterList[0];
                //
                int numberOfBitsPerRegister  = ArmVectorFloatingPointUtils.RegisterSizeInBits(first);
                int numberOfBytesPerRegister = numberOfBitsPerRegister / 8;
                int totalNumberOfBytes       = numberOfBytesPerRegister * numberOfRegisters;
                int numberOfWords            = totalNumberOfBytes / 4;
                //
                aProlog.AddToNumberOfWordsPushedOnStack(numberOfWords);
            }
        }