arch: Eliminate vtophys and its switching header file.
authorGabe Black <gabeblack@google.com>
Wed, 4 Mar 2020 11:08:52 +0000 (03:08 -0800)
committerGabe Black <gabeblack@google.com>
Thu, 19 Mar 2020 01:38:01 +0000 (01:38 +0000)
This function is no longer used anywhere in gem5.

Small helper functions which had been put alongside vtophys on ARM and
RISCV were also moved into src/arch/arm/remote_gdb.cc and
src/arch/power/pagetable.hh, the only places they were used.

Change-Id: Iba72f6c4b797a35a785a5bb781d602c943541fa7
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/26234
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Gabe Black <gabeblack@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
39 files changed:
src/arch/SConscript
src/arch/arm/SConscript
src/arch/arm/pagetable.hh
src/arch/arm/remote_gdb.cc
src/arch/arm/stacktrace.cc
src/arch/arm/tlb.hh
src/arch/arm/utility.cc
src/arch/arm/vtophys.cc [deleted file]
src/arch/arm/vtophys.hh [deleted file]
src/arch/mips/SConscript
src/arch/mips/linux/system.cc
src/arch/mips/remote_gdb.cc
src/arch/mips/stacktrace.cc
src/arch/mips/system.cc
src/arch/mips/tlb.hh
src/arch/mips/utility.cc
src/arch/mips/vtophys.cc [deleted file]
src/arch/mips/vtophys.hh [deleted file]
src/arch/power/SConscript
src/arch/power/pagetable.hh
src/arch/power/remote_gdb.cc
src/arch/power/tlb.hh
src/arch/power/vtophys.cc [deleted file]
src/arch/power/vtophys.hh [deleted file]
src/arch/riscv/tlb.hh
src/arch/riscv/vtophys.hh [deleted file]
src/arch/sparc/SConscript
src/arch/sparc/fs_workload.cc
src/arch/sparc/remote_gdb.cc
src/arch/sparc/utility.cc
src/arch/sparc/vtophys.cc [deleted file]
src/arch/sparc/vtophys.hh [deleted file]
src/arch/x86/SConscript
src/arch/x86/linux/fs_workload.cc
src/arch/x86/pagetable_walker.cc
src/arch/x86/remote_gdb.cc
src/arch/x86/stacktrace.cc
src/arch/x86/vtophys.cc [deleted file]
src/arch/x86/vtophys.hh [deleted file]

index 7fec19ec08df12cd99ab6fae99f6966119ebbd46..13ab8fbd754b76e3885f617d7c856267f785c36c 100644 (file)
@@ -69,7 +69,6 @@ env.SwitchingHeaders(
         stacktrace.hh
         types.hh
         utility.hh
-        vtophys.hh
         '''),
     env.subst('${TARGET_ISA}'))
 
index 409e287db64944c9389bc7dd80ec2920f1814280..e51437e49c2e608efd9270b9beb06999931ff111 100644 (file)
@@ -88,7 +88,6 @@ if env['TARGET_ISA'] == 'arm':
     Source('tlb.cc')
     Source('tlbi_op.cc')
     Source('utility.cc')
-    Source('vtophys.cc')
 
     SimObject('ArmFsWorkload.py')
     SimObject('ArmInterrupts.py')
index 933742bc10a0358bfe7bff739206a8eda4fbd3d7..1d18d2151216272d393dfc376ac9b882cc873dcd 100644 (file)
@@ -45,7 +45,6 @@
 
 #include "arch/arm/isa_traits.hh"
 #include "arch/arm/utility.hh"
-#include "arch/arm/vtophys.hh"
 #include "sim/serialize.hh"
 
 namespace ArmISA {
index 1c764f4f1f355446538d32e17de89062ebe058e5..b2977e51333885f837b86dfcf4b1fc3ad763ad5f 100644 (file)
 #include "arch/arm/registers.hh"
 #include "arch/arm/system.hh"
 #include "arch/arm/utility.hh"
-#include "arch/arm/vtophys.hh"
+#include "arch/generic/tlb.hh"
 #include "base/chunk_generator.hh"
 #include "base/intmath.hh"
 #include "base/remote_gdb.hh"
 using namespace std;
 using namespace ArmISA;
 
+static bool
+tryTranslate(ThreadContext *tc, Addr addr)
+{
+    // Set up a functional memory Request to pass to the TLB
+    // to get it to translate the vaddr to a paddr
+    auto req = std::make_shared<Request>(addr, 64, 0x40, -1, 0, 0);
+
+    // Check the TLBs for a translation
+    // It's possible that there is a valid translation in the tlb
+    // that is no loger valid in the page table in memory
+    // so we need to check here first
+    //
+    // Calling translateFunctional invokes a table-walk if required
+    // so we should always succeed
+    auto *dtb = tc->getDTBPtr();
+    auto *itb = tc->getITBPtr();
+    return dtb->translateFunctional(req, tc, BaseTLB::Read) == NoFault ||
+           itb->translateFunctional(req, tc, BaseTLB::Read) == NoFault;
+}
+
 RemoteGDB::RemoteGDB(System *_system, ThreadContext *tc, int _port)
     : BaseRemoteGDB(_system, tc, _port), regCache32(this), regCache64(this)
 {
@@ -179,7 +199,7 @@ RemoteGDB::acc(Addr va, size_t len)
 {
     if (FullSystem) {
         for (ChunkGenerator gen(va, len, PageBytes); !gen.done(); gen.next()) {
-            if (!virtvalid(context(), gen.addr())) {
+            if (!tryTranslate(context(), gen.addr())) {
                 DPRINTF(GDBAcc, "acc:   %#x mapping is invalid\n", va);
                 return false;
             }
index 5decb145dcda352a74600d8a017aaa01ed1aadf5..4604524277d1ac4df507cfe0baab2e8d2cbf8ab2 100644 (file)
@@ -31,7 +31,6 @@
 #include <string>
 
 #include "arch/arm/isa_traits.hh"
-#include "arch/arm/vtophys.hh"
 #include "base/bitfield.hh"
 #include "base/trace.hh"
 #include "cpu/base.hh"
index 4efbe02869025a332dd6b0c643a0b0b327793efd..767222a24cac9e72371ea126936c2884012822fc 100644 (file)
@@ -46,7 +46,6 @@
 #include "arch/arm/isa_traits.hh"
 #include "arch/arm/pagetable.hh"
 #include "arch/arm/utility.hh"
-#include "arch/arm/vtophys.hh"
 #include "arch/generic/tlb.hh"
 #include "base/statistics.hh"
 #include "mem/request.hh"
index 72b03be992e25dd55610cccd5bdd7aaaadae7a94..393f141b035faea61d26c2bf4f859e072b782284 100644 (file)
@@ -43,7 +43,6 @@
 #include "arch/arm/isa_traits.hh"
 #include "arch/arm/system.hh"
 #include "arch/arm/tlb.hh"
-#include "arch/arm/vtophys.hh"
 #include "cpu/base.hh"
 #include "cpu/checker/cpu.hh"
 #include "cpu/thread_context.hh"
diff --git a/src/arch/arm/vtophys.cc b/src/arch/arm/vtophys.cc
deleted file mode 100644 (file)
index 62f4d78..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * Copyright (c) 2010, 2012-2013 ARM Limited
- * All rights reserved
- *
- * The license below extends only to copyright in the software and shall
- * not be construed as granting a license to any other intellectual
- * property including but not limited to intellectual property relating
- * to a hardware implementation of the functionality of the software
- * licensed hereunder.  You may use the software subject to the license
- * terms below provided that you ensure that this notice is replicated
- * unmodified and in its entirety in all distributions of the software,
- * modified or unmodified, in source code or in binary form.
- *
- * Copyright (c) 2002-2005 The Regents of The University of Michigan
- * Copyright (c) 2007-2008 The Florida State University
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "arch/arm/vtophys.hh"
-
-#include <string>
-
-#include "arch/arm/faults.hh"
-#include "arch/arm/table_walker.hh"
-#include "arch/arm/tlb.hh"
-#include "base/chunk_generator.hh"
-#include "base/trace.hh"
-#include "cpu/thread_context.hh"
-#include "mem/fs_translating_port_proxy.hh"
-
-using namespace std;
-using namespace ArmISA;
-
-static std::pair<bool, Addr>
-try_translate(ThreadContext *tc, Addr addr)
-{
-    Fault fault;
-    // Set up a functional memory Request to pass to the TLB
-    // to get it to translate the vaddr to a paddr
-    auto req = std::make_shared<Request>(addr, 64, 0x40, -1, 0, 0);
-    BaseTLB *tlb;
-
-    // Check the TLBs for a translation
-    // It's possible that there is a valid translation in the tlb
-    // that is no loger valid in the page table in memory
-    // so we need to check here first
-    //
-    // Calling translateFunctional invokes a table-walk if required
-    // so we should always succeed
-    tlb = tc->getDTBPtr();
-    fault = tlb->translateFunctional(req, tc, BaseTLB::Read);
-    if (fault == NoFault)
-        return std::make_pair(true, req->getPaddr());
-
-    tlb = tc->getITBPtr();
-    fault = tlb->translateFunctional(req, tc, BaseTLB::Read);
-    if (fault == NoFault)
-        return std::make_pair(true, req->getPaddr());
-
-    return std::make_pair(false, 0);
-}
-
-Addr
-ArmISA::vtophys(ThreadContext *tc, Addr addr)
-{
-    const std::pair<bool, Addr> translation(try_translate(tc, addr));
-
-    if (translation.first)
-        return translation.second;
-    else
-        panic("Table walkers support functional accesses. "
-                "We should never get here.");
-}
-
-bool
-ArmISA::virtvalid(ThreadContext *tc, Addr vaddr)
-{
-    const std::pair<bool, Addr> translation(try_translate(tc, vaddr));
-
-    return translation.first;
-}
-
-
diff --git a/src/arch/arm/vtophys.hh b/src/arch/arm/vtophys.hh
deleted file mode 100644 (file)
index 7810b98..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Copyright (c) 2002-2005 The Regents of The University of Michigan
- * Copyright (c) 2007-2008 The Florida State University
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef __ARCH_ARM_VTOPHYS_HH__
-#define __ARCH_ARM_VTOPHYS_HH__
-
-#include "arch/arm/isa_traits.hh"
-#include "arch/arm/utility.hh"
-
-class ThreadContext;
-
-namespace ArmISA
-{
-
-inline Addr PteAddr(Addr a) { return (a & PteMask) << PteShift; }
-
-Addr vtophys(ThreadContext *tc, Addr vaddr);
-bool virtvalid(ThreadContext *tc, Addr vaddr);
-
-} // namespace ArmISA
-
-#endif // __ARCH_ARM_VTOPHYS_HH__
-
index 0e697781ea0b5ab6841c1c27462ef4f9fab6f496..c426760eb2311b2348a3360c3605679a4d154949 100644 (file)
@@ -46,7 +46,6 @@ if env['TARGET_ISA'] == 'mips':
     Source('system.cc')
     Source('tlb.cc')
     Source('utility.cc')
-    Source('vtophys.cc')
 
     SimObject('MipsInterrupts.py')
     SimObject('MipsISA.py')
index 8e305fa6f088acd78f1fc9a2d7f5130eb10d0bd3..cff1cefcf8c650b6368fef37dce8e245798a83df 100644 (file)
@@ -40,7 +40,6 @@
 #include "arch/generic/linux/threadinfo.hh"
 #include "arch/mips/idle_event.hh"
 #include "arch/mips/system.hh"
-#include "arch/vtophys.hh"
 #include "base/loader/symtab.hh"
 #include "cpu/base.hh"
 #include "cpu/thread_context.hh"
index 9dbe395bee2d2b4fda96fe62d8b9ea92682cfa7e..48138eec785549bb342a912b61ebf8e2e9f45f97 100644 (file)
 #include <string>
 
 #include "arch/mips/decoder.hh"
-#include "arch/mips/vtophys.hh"
 #include "cpu/thread_state.hh"
 #include "debug/GDBAcc.hh"
 #include "debug/GDBMisc.hh"
index c2fdb2362a9e637148dbe14a17d2e8b04f1df999..651719a02b8f3779b39b59166c9583bbb054b839 100644 (file)
@@ -31,7 +31,6 @@
 #include <string>
 
 #include "arch/mips/isa_traits.hh"
-#include "arch/mips/vtophys.hh"
 #include "base/bitfield.hh"
 #include "base/trace.hh"
 #include "cpu/base.hh"
index 028d570a31b3f3ae0e8753ecb0a692c7a3863a74..bef77be331dda73550a691a40f829998c4853c15 100644 (file)
@@ -30,7 +30,6 @@
 #include "arch/mips/system.hh"
 
 #include "arch/mips/registers.hh"
-#include "arch/mips/vtophys.hh"
 #include "base/loader/object_file.hh"
 #include "base/loader/symtab.hh"
 #include "base/trace.hh"
index bfe424d5cf0196b4e58043c30dcb7052d8faa12d..b17f9ec3427e9ed50eaf60f895e73299d8203e0b 100644 (file)
@@ -36,7 +36,6 @@
 #include "arch/mips/isa_traits.hh"
 #include "arch/mips/pagetable.hh"
 #include "arch/mips/utility.hh"
-#include "arch/mips/vtophys.hh"
 #include "base/statistics.hh"
 #include "mem/request.hh"
 #include "params/MipsTLB.hh"
index d2c964847eb4d02d3f183979e775563fcac94df3..b42635fc44d56318b2b14d503743df6665a49e11 100644 (file)
@@ -32,7 +32,6 @@
 
 #include "arch/mips/isa_traits.hh"
 #include "arch/mips/registers.hh"
-#include "arch/mips/vtophys.hh"
 #include "base/bitfield.hh"
 #include "base/logging.hh"
 #include "cpu/static_inst.hh"
diff --git a/src/arch/mips/vtophys.cc b/src/arch/mips/vtophys.cc
deleted file mode 100644 (file)
index b4711fa..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Copyright (c) 2002-2005 The Regents of The University of Michigan
- * Copyright (c) 2007 MIPS Technologies, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "arch/mips/vtophys.hh"
-
-#include "base/logging.hh"
-
-Addr
-MipsISA::vtophys(ThreadContext *tc, Addr addr)
-{
-    fatal("VTOPHYS: Unimplemented on MIPS\n");
-}
-
diff --git a/src/arch/mips/vtophys.hh b/src/arch/mips/vtophys.hh
deleted file mode 100644 (file)
index 045d5ba..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright (c) 2002-2005 The Regents of The University of Michigan
- * Copyright (c) 2007 MIPS Technologies, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef __ARCH_MIPS_VTOPHYS_HH__
-#define __ARCH_MIPS_VTOPHYS_HH__
-
-#include "arch/mips/isa_traits.hh"
-#include "arch/mips/utility.hh"
-
-class ThreadContext;
-
-namespace MipsISA
-{
-
-Addr vtophys(ThreadContext *tc, Addr vaddr);
-
-} // namespace MipsISA
-
-#endif // __ARCH_MIPS_VTOPHYS_HH__
-
index b4878fd13ad39f94159145cc4af33eca2b73bebf..93be38c4c80dd481a331b98a6166e4fbbe3bc7e2 100644 (file)
@@ -49,7 +49,6 @@ if env['TARGET_ISA'] == 'power':
     Source('stacktrace.cc')
     Source('tlb.cc')
     Source('utility.cc')
-    Source('vtophys.cc')
 
     SimObject('PowerInterrupts.py')
     SimObject('PowerISA.py')
index 2e79da03e231b67a1c4b11181175080d762abe20..3aecf112446e25a3e469b5a3c3041548c36db1ac 100644 (file)
 
 #include "arch/power/isa_traits.hh"
 #include "arch/power/utility.hh"
-#include "arch/power/vtophys.hh"
 
-namespace PowerISA {
+namespace PowerISA
+{
+
+static inline Addr PteAddr(Addr a) { return (a & PteMask) << PteShift; }
 
 struct VAddr
 {
index 8c2751168810ae2bcfde2e7ee8c43b56bd8d2ed5..ccee0b13273f8648f50dd1387a49f9dbe5f428f1 100644 (file)
 
 #include <string>
 
-#include "arch/power/vtophys.hh"
 #include "cpu/thread_state.hh"
 #include "debug/GDBAcc.hh"
 #include "debug/GDBMisc.hh"
index 044054cd36f4e35950ada504718bc0abf6799869..23359ca9cb25d6b24b7ed4e4223dc363a84ddcc2 100644 (file)
@@ -38,7 +38,6 @@
 #include "arch/power/isa_traits.hh"
 #include "arch/power/pagetable.hh"
 #include "arch/power/utility.hh"
-#include "arch/power/vtophys.hh"
 #include "base/statistics.hh"
 #include "mem/request.hh"
 #include "params/PowerTLB.hh"
diff --git a/src/arch/power/vtophys.cc b/src/arch/power/vtophys.cc
deleted file mode 100644 (file)
index 973facc..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright (c) 2012 Google
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "arch/power/vtophys.hh"
-
-using namespace std;
-
-Addr
-PowerISA::vtophys(ThreadContext *tc, Addr addr)
-{
-    fatal("vtophys: Unimplemented on POWER\n");
-}
-
diff --git a/src/arch/power/vtophys.hh b/src/arch/power/vtophys.hh
deleted file mode 100644 (file)
index 650fb5f..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright (c) 2002-2005 The Regents of The University of Michigan
- * Copyright (c) 2007-2008 The Florida State University
- * Copyright (c) 2009 The University of Edinburgh
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef __ARCH_POWER_VTOPHYS_HH__
-#define __ARCH_POWER_VTOPHYS_HH__
-
-#include "arch/power/isa_traits.hh"
-#include "arch/power/utility.hh"
-
-class ThreadContext;
-
-namespace PowerISA
-{
-
-Addr vtophys(ThreadContext *tc, Addr vaddr);
-
-inline Addr
-PteAddr(Addr a)
-{
-    return (a & PteMask) << PteShift;
-}
-
-} // namespace PowerISA
-
-#endif // __ARCH_POWER_VTOPHYS_HH__
-
index c648123a59c1234eb7c78d28a227dce5c7476cf4..ca2a90b4759780cd55011d1ef7af6dd34a254ce2 100644 (file)
@@ -36,7 +36,6 @@
 #include "arch/riscv/isa_traits.hh"
 #include "arch/riscv/pagetable.hh"
 #include "arch/riscv/utility.hh"
-#include "arch/riscv/vtophys.hh"
 #include "base/statistics.hh"
 #include "mem/request.hh"
 #include "params/RiscvTLB.hh"
diff --git a/src/arch/riscv/vtophys.hh b/src/arch/riscv/vtophys.hh
deleted file mode 100644 (file)
index 7dcc7af..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright (c) 2002-2005 The Regents of The University of Michigan
- * Copyright (c) 2007-2008 The Florida State University
- * Copyright (c) 2009 The University of Edinburgh
- * Copyright (c) 2014-2015 Sven Karlsson
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef __ARCH_RISCV_VTOPHYS_HH__
-#define __ARCH_RISCV_VTOPHYS_HH__
-
-#include "arch/riscv/isa_traits.hh"
-#include "arch/riscv/utility.hh"
-
-class ThreadContext;
-
-namespace RiscvISA
-{
-
-static inline Addr
-vtophys(ThreadContext *tc, Addr vaddr)
-{
-    fatal("VTOPHYS: Unimplemented on RISC-V\n");
-}
-
-} // namespace RiscvISA
-
-#endif // __ARCH_RISCV_VTOPHYS_HH__
-
index 1caf8a09a63d3dbca430cdbf6cfb308ccac7273c..4097ebba6c5e644fe549b74859c704b0b32a133e 100644 (file)
@@ -48,7 +48,6 @@ if env['TARGET_ISA'] == 'sparc':
     Source('tlb.cc')
     Source('ua2005.cc')
     Source('utility.cc')
-    Source('vtophys.cc')
 
     SimObject('SparcFsWorkload.py')
     SimObject('SparcInterrupts.py')
index 390c5ccd5a7ea203e1c67ff30d44ebbc87d19b91..4174bd5210178ed764ca1a3b2439ef9140aa7d82 100644 (file)
@@ -29,7 +29,6 @@
 #include "arch/sparc/fs_workload.hh"
 
 #include "arch/sparc/faults.hh"
-#include "arch/vtophys.hh"
 #include "base/loader/object_file.hh"
 #include "base/loader/symtab.hh"
 #include "base/trace.hh"
index d0f3cd802a67edf3b1832b57be4cc4c3314dc115..cf91f3d9bd03628b197433d434f8c6573692c704 100644 (file)
 #include <csignal>
 #include <string>
 
-#include "arch/vtophys.hh"
 #include "base/intmath.hh"
 #include "base/remote_gdb.hh"
 #include "base/socket.hh"
index 04fa7ad807b7b6d608066718a07c4b5c101a8e46..ac442cad5e1ec5e5edef5b3b054eb1db1866bc79 100644 (file)
@@ -29,7 +29,6 @@
 #include "arch/sparc/utility.hh"
 
 #include "arch/sparc/faults.hh"
-#include "arch/sparc/vtophys.hh"
 #include "mem/fs_translating_port_proxy.hh"
 
 namespace SparcISA {
diff --git a/src/arch/sparc/vtophys.cc b/src/arch/sparc/vtophys.cc
deleted file mode 100644 (file)
index 906d082..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * Copyright (c) 2002-2005 The Regents of The University of Michigan
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "arch/sparc/vtophys.hh"
-
-#include <string>
-
-#include "arch/sparc/pagetable.hh"
-#include "arch/sparc/tlb.hh"
-#include "base/chunk_generator.hh"
-#include "base/compiler.hh"
-#include "base/trace.hh"
-#include "cpu/thread_context.hh"
-#include "debug/VtoPhys.hh"
-#include "mem/port_proxy.hh"
-
-using namespace std;
-
-namespace SparcISA
-{
-
-Addr
-vtophys(ThreadContext *tc, Addr addr)
-{
-    // Here we have many options and are really implementing something like
-    // a fill handler to find the address since there isn't a multilevel
-    // table for us to walk around.
-    //
-    // 1. We are currently hyperpriv, return the address unmodified
-    // 2. The mmu is off return(ra->pa)
-    // 3. We are currently priv, use ctx0* tsbs to find the page
-    // 4. We are not priv, use ctxN0* tsbs to find the page
-    // For all accesses we check the tlbs first since it's possible that
-    // long standing pages (e.g. locked kernel mappings) won't be in the tsb
-    uint64_t tlbdata = tc->readMiscRegNoEffect(MISCREG_TLB_DATA);
-
-    bool hpriv = bits(tlbdata,0,0);
-    // bool priv = bits(tlbdata,2,2);
-    bool addr_mask = bits(tlbdata,3,3);
-    bool data_real = !bits(tlbdata,5,5);
-    bool inst_real = !bits(tlbdata,4,4);
-    bool ctx_zero  = bits(tlbdata,18,16) > 0;
-    int part_id = bits(tlbdata,15,8);
-    int pri_context = bits(tlbdata,47,32);
-    // int sec_context = bits(tlbdata,63,48);
-
-    PortProxy &mem = tc->getPhysProxy();
-    TLB* itb = dynamic_cast<TLB *>(tc->getITBPtr());
-    TLB* dtb = dynamic_cast<TLB *>(tc->getDTBPtr());
-    TlbEntry* tbe;
-    PageTableEntry pte;
-    Addr tsbs[4];
-    Addr va_tag;
-    TteTag ttetag;
-
-    if (hpriv)
-        return addr;
-
-    if (addr_mask)
-        addr = addr & VAddrAMask;
-
-    tbe = dtb->lookup(addr, part_id, data_real, ctx_zero ? 0 : pri_context ,
-                      false);
-    if (tbe)
-        goto foundtbe;
-
-    tbe = itb->lookup(addr, part_id, inst_real, ctx_zero ? 0 : pri_context,
-                      false);
-    if (tbe)
-        goto foundtbe;
-
-    // We didn't find it in the tlbs, so lets look at the TSBs
-    dtb->GetTsbPtr(tc, addr, ctx_zero ? 0 : pri_context, tsbs);
-    va_tag = bits(addr, 63, 22);
-    for (int x = 0; x < 4; x++) {
-        ttetag = betoh(mem.read<uint64_t>(tsbs[x]));
-        if (ttetag.valid() && ttetag.va() == va_tag) {
-            uint64_t entry = mem.read<uint64_t>(tsbs[x]) + sizeof(uint64_t);
-            // I think it's sun4v at least!
-            pte.populate(betoh(entry), PageTableEntry::sun4v);
-            DPRINTF(VtoPhys, "Virtual(%#x)->Physical(%#x) found in TTE\n",
-                    addr, pte.translate(addr));
-            goto foundpte;
-        }
-    }
-    panic("couldn't translate %#x\n", addr);
-
-  foundtbe:
-    pte = tbe->pte;
-    DPRINTF(VtoPhys, "Virtual(%#x)->Physical(%#x) found in TLB\n", addr,
-            pte.translate(addr));
-  foundpte:
-    return pte.translate(addr);
-}
-
-} // namespace SparcISA
diff --git a/src/arch/sparc/vtophys.hh b/src/arch/sparc/vtophys.hh
deleted file mode 100644 (file)
index 33cefff..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (c) 2002-2005 The Regents of The University of Michigan
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef __ARCH_SPARC_VTOPHYS_HH__
-#define __ARCH_SPARC_VTOPHYS_HH__
-
-#include "arch/sparc/isa_traits.hh"
-
-class ThreadContext;
-
-namespace SparcISA
-{
-
-Addr vtophys(ThreadContext *tc, Addr vaddr);
-
-}; // namespace SparcISA
-
-#endif // __ARCH_SPARC_VTOPHYS_HH__
-
index 093b4ee1c6be7016949475802c12e9097588ea76..bfe8d9d60a5c163578ebb2a82f2806a12855c84d 100644 (file)
@@ -70,7 +70,6 @@ if env['TARGET_ISA'] == 'x86':
     Source('tlb.cc')
     Source('types.cc')
     Source('utility.cc')
-    Source('vtophys.cc')
 
     SimObject('X86FsWorkload.py')
     SimObject('X86ISA.py')
index 7e58b9e90a19a49c7f409ae2ba1e5b53c5006584..4f83884587f0a0d300a256772aee7f33711548c5 100644 (file)
@@ -37,7 +37,6 @@
 
 #include "arch/x86/linux/fs_workload.hh"
 
-#include "arch/vtophys.hh"
 #include "arch/x86/isa_traits.hh"
 #include "arch/x86/regs/int.hh"
 #include "base/trace.hh"
index d655fa6ecf8a6148f0cb8afd189faa2a95258e5f..b540be3467bb50fab94f6a3a8f26317d47bedca1 100644 (file)
@@ -54,7 +54,6 @@
 #include "arch/x86/faults.hh"
 #include "arch/x86/pagetable.hh"
 #include "arch/x86/tlb.hh"
-#include "arch/x86/vtophys.hh"
 #include "base/bitfield.hh"
 #include "base/trie.hh"
 #include "cpu/base.hh"
index 93848304c0fbf88496363369236960e476427f2c..9603b90693d799475f9f9e79da90827b21c7bc6e 100644 (file)
@@ -44,7 +44,6 @@
 
 #include <string>
 
-#include "arch/vtophys.hh"
 #include "arch/x86/pagetable_walker.hh"
 #include "arch/x86/process.hh"
 #include "arch/x86/regs/int.hh"
index 4f824de6195afbe5a6d928f6e6c0422be48318c2..3fe9ce4f1dfb405215b43690af6d690128237f8d 100644 (file)
@@ -31,7 +31,6 @@
 #include <string>
 
 #include "arch/x86/isa_traits.hh"
-#include "arch/x86/vtophys.hh"
 #include "base/bitfield.hh"
 #include "base/trace.hh"
 #include "cpu/base.hh"
diff --git a/src/arch/x86/vtophys.cc b/src/arch/x86/vtophys.cc
deleted file mode 100644 (file)
index 5e07ddb..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Copyright (c) 2007 The Hewlett-Packard Development Company
- * All rights reserved.
- *
- * The license below extends only to copyright in the software and shall
- * not be construed as granting a license to any other intellectual
- * property including but not limited to intellectual property relating
- * to a hardware implementation of the functionality of the software
- * licensed hereunder.  You may use the software subject to the license
- * terms below provided that you ensure that this notice is replicated
- * unmodified and in its entirety in all distributions of the software,
- * modified or unmodified, in source code or in binary form.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "arch/x86/vtophys.hh"
-
-#include <string>
-
-#include "arch/x86/pagetable_walker.hh"
-#include "arch/x86/tlb.hh"
-#include "base/trace.hh"
-#include "cpu/thread_context.hh"
-#include "debug/VtoPhys.hh"
-
-using namespace std;
-
-Addr
-X86ISA::vtophys(ThreadContext *tc, Addr vaddr)
-{
-    Walker *walker = dynamic_cast<TLB *>(tc->getDTBPtr())->getWalker();
-    unsigned logBytes;
-    Addr addr = vaddr;
-    Fault fault = walker->startFunctional(
-            tc, addr, logBytes, BaseTLB::Read);
-    if (fault != NoFault)
-        panic("vtophys page walk returned fault\n");
-    Addr masked_addr = vaddr & mask(logBytes);
-    Addr paddr = addr | masked_addr;
-    DPRINTF(VtoPhys, "vtophys(%#x) -> %#x\n", vaddr, paddr);
-    return paddr;
-}
diff --git a/src/arch/x86/vtophys.hh b/src/arch/x86/vtophys.hh
deleted file mode 100644 (file)
index 51ce8eb..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright (c) 2007 The Hewlett-Packard Development Company
- * All rights reserved.
- *
- * The license below extends only to copyright in the software and shall
- * not be construed as granting a license to any other intellectual
- * property including but not limited to intellectual property relating
- * to a hardware implementation of the functionality of the software
- * licensed hereunder.  You may use the software subject to the license
- * terms below provided that you ensure that this notice is replicated
- * unmodified and in its entirety in all distributions of the software,
- * modified or unmodified, in source code or in binary form.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met: redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer;
- * redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution;
- * neither the name of the copyright holders nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef __ARCH_X86_VTOPHYS_HH__
-#define __ARCH_X86_VTOPHYS_HH__
-
-#include "base/types.hh"
-
-class ThreadContext;
-
-namespace X86ISA
-{
-
-Addr vtophys(ThreadContext *tc, Addr vaddr);
-
-}
-
-#endif // __ARCH_X86_VTOPHYS_HH__