iew_impl.hh (10824:308771bd2647) | iew_impl.hh (11097:da477ae38907) |
---|---|
1/* 2 * Copyright (c) 2010-2013 ARM Limited 3 * Copyright (c) 2013 Advanced Micro Devices, Inc. 4 * All rights reserved. 5 * 6 * The license below extends only to copyright in the software and shall 7 * not be construed as granting a license to any other intellectual 8 * property including but not limited to intellectual property relating --- 1333 unchanged lines hidden (view full) --- 1342 // DynInst that caused the violation. Note that this 1343 // clears the violation signal. 1344 DynInstPtr violator; 1345 violator = ldstQueue.getMemDepViolator(tid); 1346 1347 DPRINTF(IEW, "LDSTQ detected a violation. Violator PC: %s " 1348 "[sn:%lli], inst PC: %s [sn:%lli]. Addr is: %#x.\n", 1349 violator->pcState(), violator->seqNum, | 1/* 2 * Copyright (c) 2010-2013 ARM Limited 3 * Copyright (c) 2013 Advanced Micro Devices, Inc. 4 * All rights reserved. 5 * 6 * The license below extends only to copyright in the software and shall 7 * not be construed as granting a license to any other intellectual 8 * property including but not limited to intellectual property relating --- 1333 unchanged lines hidden (view full) --- 1342 // DynInst that caused the violation. Note that this 1343 // clears the violation signal. 1344 DynInstPtr violator; 1345 violator = ldstQueue.getMemDepViolator(tid); 1346 1347 DPRINTF(IEW, "LDSTQ detected a violation. Violator PC: %s " 1348 "[sn:%lli], inst PC: %s [sn:%lli]. Addr is: %#x.\n", 1349 violator->pcState(), violator->seqNum, |
1350 inst->pcState(), inst->seqNum, inst->physEffAddr); | 1350 inst->pcState(), inst->seqNum, inst->physEffAddrLow); |
1351 1352 fetchRedirect[tid] = true; 1353 1354 // Tell the instruction queue that a violation has occured. 1355 instQueue.violation(inst, violator); 1356 1357 // Squash. 1358 squashDueToMemOrder(violator, tid); --- 6 unchanged lines hidden (view full) --- 1365 if (ldstQueue.violation(tid)) { 1366 assert(inst->isMemRef()); 1367 1368 DynInstPtr violator = ldstQueue.getMemDepViolator(tid); 1369 1370 DPRINTF(IEW, "LDSTQ detected a violation. Violator PC: " 1371 "%s, inst PC: %s. Addr is: %#x.\n", 1372 violator->pcState(), inst->pcState(), | 1351 1352 fetchRedirect[tid] = true; 1353 1354 // Tell the instruction queue that a violation has occured. 1355 instQueue.violation(inst, violator); 1356 1357 // Squash. 1358 squashDueToMemOrder(violator, tid); --- 6 unchanged lines hidden (view full) --- 1365 if (ldstQueue.violation(tid)) { 1366 assert(inst->isMemRef()); 1367 1368 DynInstPtr violator = ldstQueue.getMemDepViolator(tid); 1369 1370 DPRINTF(IEW, "LDSTQ detected a violation. Violator PC: " 1371 "%s, inst PC: %s. Addr is: %#x.\n", 1372 violator->pcState(), inst->pcState(), |
1373 inst->physEffAddr); | 1373 inst->physEffAddrLow); |
1374 DPRINTF(IEW, "Violation will not be handled because " 1375 "already squashing\n"); 1376 1377 ++memOrderViolationEvents; 1378 } 1379 } 1380 } 1381 --- 253 unchanged lines hidden --- | 1374 DPRINTF(IEW, "Violation will not be handled because " 1375 "already squashing\n"); 1376 1377 ++memOrderViolationEvents; 1378 } 1379 } 1380 } 1381 --- 253 unchanged lines hidden --- |