Patent ID: 8843790

Claim:
A method for monitoring changes to a block of data, the method comprising: setting, by a computer, a first hardware watchpoint to monitor changes to the block of data at a current location of the block of data in memory and a second hardware watchpoint to monitor changes at a selected location in the memory where a reference to the block of data is located, wherein the reference to the block of data is a first reference to the block of data in a plurality of references in the memory that points to the block of data or to a second reference in the plurality of references, selectively; responsive to the second hardware watchpoint being triggered by a first change at the selected location where the reference to the block of data is located, identifying, by the computer, a new location of the block of data in the memory based on the first change that triggered the second hardware watchpoint; subsequent to identifying the new location of the block of data, resetting, by the computer, the first hardware watchpoint to monitor changes to the block of data at the new location of the block of data; setting, by the computer, additional hardware watchpoints to monitor changes to each location in the memory pointed to by each of the plurality of references; and responsive to one or more of the additional hardware watchpoints being triggered by a second change in the memory, resetting, by the computer, each of the additional hardware watchpoints affected by the second change to continue monitoring changes to each location in the memory pointed to by each of the plurality of references.