When processing memory Packets for prefetch, the `PrefetchInfo` class constructor will attempt to copy the `Packet` data. In cases where the `Packet` under consideration does not contain data, an assertion will be triggered in the Packet's `getConstPtr` method, causing the simulation to crash. This problem was first exposed by Bug #580 when processing an `UpgradeReq` memory packet. This patch addresses the problem by suppressing the copying of the `Packet` data during construction of a `PrefetchInfo` object in cases where the `Packet` has no data. This patch addresses Bug #580 [1], which was exposed by PR #564 [2], subsequently reverted by PR #581 [3] [1] https://github.com/gem5/gem5/issues/580 [2] https://github.com/gem5/gem5/pull/564 [3] https://github.com/gem5/gem5/pull/581 Change-Id: Ic1e828c0887f4003441b61647440c8e912bf0fbc Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>