Exemple #1
0
        private void AddMemoryReference(List <MemoryReference> memRefs, Instruction instruction, uint target, bool isRead)
        {
            //Debug.WriteLine( string.Format( "adding memory reference at {0:X8} ({1}) to {2:X8} for {3}", instruction.Address, instruction, target, isRead ? "read" : "write" ) );
            foreach (MemoryReference memRef in memRefs)
            {
                if (memRef.Address == target)
                {
                    memRef.References.Add(instruction);
                    if (isRead == true)
                    {
                        memRef.Reads++;
                    }
                    else
                    {
                        memRef.Writes++;
                    }
                    instruction.Reference = memRef;
                    return;
                }
            }
            MemoryReference newMemRef = new MemoryReference();

            newMemRef.Address = target;
            newMemRef.References.Add(instruction);
            if (isRead == true)
            {
                newMemRef.Reads++;
            }
            else
            {
                newMemRef.Writes++;
            }
            instruction.Reference = newMemRef;
            memRefs.Add(newMemRef);
        }
Exemple #2
0
 private void AddMemoryReference( List<MemoryReference> memRefs, Instruction instruction, uint target, bool isRead )
 {
     //Debug.WriteLine( string.Format( "adding memory reference at {0:X8} ({1}) to {2:X8} for {3}", instruction.Address, instruction, target, isRead ? "read" : "write" ) );
     foreach( MemoryReference memRef in memRefs )
     {
         if( memRef.Address == target )
         {
             memRef.References.Add( instruction );
             if( isRead == true )
                 memRef.Reads++;
             else
                 memRef.Writes++;
             instruction.Reference = memRef;
             return;
         }
     }
     MemoryReference newMemRef = new MemoryReference();
     newMemRef.Address = target;
     newMemRef.References.Add( instruction );
     if( isRead == true )
         newMemRef.Reads++;
     else
         newMemRef.Writes++;
     instruction.Reference = newMemRef;
     memRefs.Add( newMemRef );
 }