예제 #1
0
		public void AddRegister()
		{
			RegisterCollection col = new RegisterCollection();
			Assert.AreEqual(0, col.Count);
			col.Add(45);
			Assert.AreEqual(1, col.Count);
		}
예제 #2
0
        private void AddRegister(ParserParagraph aPara, ParserField aField, ParserFieldName aFieldName, uint aValue)
        {
            RegisterCollection.TType type = (RegisterCollection.TType)aPara.Tag;
            string regName = aFieldName.Name;

            // USR registers are a bit tricky since they are largely shared. Only R13 and R14 are
            // really USR specific.
            if (type == RegisterCollection.TType.ETypeUser)
            {
                ArmRegister reg = new ArmRegister(regName, aValue);
                //
                switch (reg.RegType)
                {
                default:
                    type = RegisterCollection.TType.ETypeCommonBank;
                    break;

                case TArmRegisterType.EArmReg_SP:
                case TArmRegisterType.EArmReg_LR:
                    break;
                }
            }

            RegisterCollection regCollection = iInfo[type];

            regCollection.Add(regName, aValue);
        }
예제 #3
0
 public void AddRegister()
 {
     var col = new RegisterCollection();
     Assert.Equal(0, col.Count);
     col.Add(45);
     Assert.Equal(1, col.Count);
 }
예제 #4
0
        public RegisterCollection GetRegisters()
        {
            RegisterCollection.TType bankType = CPSRBankType;
            RegisterCollection       bank     = this[bankType];
            //
            RegisterCollection ret = new RegisterCollection(CrashDebugger, bankType);

            foreach (RegisterEntry entry in bank)
            {
                ret.Add(entry.OriginalName, entry.Value);
            }

            return(ret);
        }