table_walker.cc (12499:b81688796004) table_walker.cc (12526:94adfd8b5dbd)
1/*
2 * Copyright (c) 2010, 2012-2017 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 1409 unchanged lines hidden (view full) ---

1418
1419void
1420TableWalker::doL1Descriptor()
1421{
1422 if (currState->fault != NoFault) {
1423 return;
1424 }
1425
1/*
2 * Copyright (c) 2010, 2012-2017 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 1409 unchanged lines hidden (view full) ---

1418
1419void
1420TableWalker::doL1Descriptor()
1421{
1422 if (currState->fault != NoFault) {
1423 return;
1424 }
1425
1426 currState->l1Desc.data = htog(currState->l1Desc.data,
1427 byteOrder(currState->tc));
1428
1426 DPRINTF(TLB, "L1 descriptor for %#x is %#x\n",
1427 currState->vaddr_tainted, currState->l1Desc.data);
1428 TlbEntry te;
1429
1430 switch (currState->l1Desc.type()) {
1431 case L1Descriptor::Ignore:
1432 case L1Descriptor::Reserved:
1433 if (!currState->timing) {

--- 79 unchanged lines hidden (view full) ---

1513
1514void
1515TableWalker::doLongDescriptor()
1516{
1517 if (currState->fault != NoFault) {
1518 return;
1519 }
1520
1429 DPRINTF(TLB, "L1 descriptor for %#x is %#x\n",
1430 currState->vaddr_tainted, currState->l1Desc.data);
1431 TlbEntry te;
1432
1433 switch (currState->l1Desc.type()) {
1434 case L1Descriptor::Ignore:
1435 case L1Descriptor::Reserved:
1436 if (!currState->timing) {

--- 79 unchanged lines hidden (view full) ---

1516
1517void
1518TableWalker::doLongDescriptor()
1519{
1520 if (currState->fault != NoFault) {
1521 return;
1522 }
1523
1524 currState->longDesc.data = htog(currState->longDesc.data,
1525 byteOrder(currState->tc));
1526
1521 DPRINTF(TLB, "L%d descriptor for %#llx is %#llx (%s)\n",
1522 currState->longDesc.lookupLevel, currState->vaddr_tainted,
1523 currState->longDesc.data,
1524 currState->aarch64 ? "AArch64" : "long-desc.");
1525
1526 if ((currState->longDesc.type() == LongDescriptor::Block) ||
1527 (currState->longDesc.type() == LongDescriptor::Page)) {
1528 DPRINTF(TLBVerbose, "Analyzing L%d descriptor: %#llx, pxn: %d, "

--- 175 unchanged lines hidden (view full) ---

1704
1705void
1706TableWalker::doL2Descriptor()
1707{
1708 if (currState->fault != NoFault) {
1709 return;
1710 }
1711
1527 DPRINTF(TLB, "L%d descriptor for %#llx is %#llx (%s)\n",
1528 currState->longDesc.lookupLevel, currState->vaddr_tainted,
1529 currState->longDesc.data,
1530 currState->aarch64 ? "AArch64" : "long-desc.");
1531
1532 if ((currState->longDesc.type() == LongDescriptor::Block) ||
1533 (currState->longDesc.type() == LongDescriptor::Page)) {
1534 DPRINTF(TLBVerbose, "Analyzing L%d descriptor: %#llx, pxn: %d, "

--- 175 unchanged lines hidden (view full) ---

1710
1711void
1712TableWalker::doL2Descriptor()
1713{
1714 if (currState->fault != NoFault) {
1715 return;
1716 }
1717
1718 currState->l2Desc.data = htog(currState->l2Desc.data,
1719 byteOrder(currState->tc));
1720
1712 DPRINTF(TLB, "L2 descriptor for %#x is %#x\n",
1713 currState->vaddr_tainted, currState->l2Desc.data);
1714 TlbEntry te;
1715
1716 if (currState->l2Desc.invalid()) {
1717 DPRINTF(TLB, "L2 descriptor invalid, causing fault\n");
1718 if (!currState->timing) {
1719 currState->tc = NULL;

--- 548 unchanged lines hidden ---
1721 DPRINTF(TLB, "L2 descriptor for %#x is %#x\n",
1722 currState->vaddr_tainted, currState->l2Desc.data);
1723 TlbEntry te;
1724
1725 if (currState->l2Desc.invalid()) {
1726 DPRINTF(TLB, "L2 descriptor invalid, causing fault\n");
1727 if (!currState->timing) {
1728 currState->tc = NULL;

--- 548 unchanged lines hidden ---