1 // 2 // Copyright (c) 2010-2024 Antmicro 3 // 4 // This file is licensed under the MIT License. 5 // Full license text is available in 'licenses/MIT.txt'. 6 // 7 using System; 8 using Antmicro.Renode.Logging.Profiling; 9 10 namespace Antmicro.Renode.Peripherals.CPU 11 { 12 public interface ICPUWithMemoryAccessHooks : ICPU 13 { 14 // The arguments to a hook have the following meaning: 15 // <ulong virtualPC, MemoryOperation operation, ulong virtualAddress, ulong physicalAddress, ulong value> SetHookAtMemoryAccess(Action<ulong, MemoryOperation, ulong, ulong, ulong> hook)16 void SetHookAtMemoryAccess(Action<ulong, MemoryOperation, ulong, ulong, ulong> hook); 17 } 18 } 19 20