BaseDynInst: Preserve the faults returned from read and write.

When implementing timing address translations instead of atomic, I
forgot to preserve the faults that are returned from the read and
write calls.  This patch reinstates them.

diff --git a/src/cpu/base_dyn_inst.hh b/src/cpu/base_dyn_inst.hh
--- a/src/cpu/base_dyn_inst.hh
+++ b/src/cpu/base_dyn_inst.hh
@@ -887,7 +887,7 @@
     if (fault == NoFault) {
         effAddr = req->getVaddr();
         effAddrValid = true;
-        cpu->read(req, sreqLow, sreqHigh, data, lqIdx);
+        fault = cpu->read(req, sreqLow, sreqHigh, data, lqIdx);
     } else {
 
         // Return a fixed value to keep simulation deterministic even
@@ -933,7 +933,7 @@
     if (fault == NoFault) {
         effAddr = req->getVaddr();
         effAddrValid = true;
-        cpu->write(req, sreqLow, sreqHigh, data, sqIdx);
+        fault = cpu->write(req, sreqLow, sreqHigh, data, sqIdx);
     }
 
     return fault;
