464,465c464,466
< : cmd(_cmd), req(_req), data(NULL), addr(_req->paddr),
< size(_req->size), dest(_dest), time(curTick), senderState(NULL)
---
> : flags(VALID_DST), cmd(_cmd), req(_req), data(NULL),
> addr(_req->paddr), size(_req->size), dest(_dest), time(curTick),
> senderState(NULL)
466a468,469
> if (req->flags.any(Request::VALID_PADDR))
> flags.set(VALID_ADDR|VALID_SIZE);
475c478
< : cmd(_cmd), req(_req), data(NULL),
---
> : flags(VALID_DST), cmd(_cmd), req(_req), data(NULL),
478a482,483
> if (req->flags.any(Request::VALID_PADDR))
> flags.set(VALID_ADDR|VALID_SIZE);
547,553c552,555
< if (flags.any(VALID_SRC)) {
< dest = src;
< flags.set(VALID_DST);
< flags.clear(VALID_SRC);
< } else {
< flags.clear(VALID_DST);
< }
---
>
> dest = src;
> flags.set(VALID_DST, flags.any(VALID_SRC));
> flags.clear(VALID_SRC);
693d694
<
705,708c706,707
< assert(flags.none(STATIC_DATA|DYNAMIC_DATA));
< } else {
< flags.set(DYNAMIC_DATA|ARRAY_DATA);
< data = new uint8_t[getSize()];
---
> assert(flags.any(STATIC_DATA|DYNAMIC_DATA));
> return;
709a709,712
>
> assert(flags.none(STATIC_DATA|DYNAMIC_DATA));
> flags.set(DYNAMIC_DATA|ARRAY_DATA);
> data = new uint8_t[getSize()];