Modifications to Dinero

In support of 18-742

Extending beyond 32 bits

The original dinero assumed that both the machine being used to execute dinero and the machine being simulated were "pure" 32-bit machines. More recent machines are more complicated, and may include 64-bit data paths, 64-bit addresses, and buses that are either narrower or wider than the data path. Thus, we have modified dinero to increase flexibility with respect to word widths. In particular:

In all cases the default behavior is the same as the original dinero, so the extensions are transparent if not invoked.

Maximum Number of Cache Accesses

Dinero permits specifying the maximum number of addresses to be simulated with the -z flag. However, there was a built-in limit of 100 million addresses, which it too small to properly simulate really large caches. This internal limit has been changed to the maximum signed integer available on the machine dinero is being run on. The default limit of 10 million remains in place -- use the -z flag to run longer traces. ([Nitzan -- I'll bet Edwin didn't use MAXLONG)