faults.cc (5858:54f64fb1bd62) faults.cc (5881:73c0aaaaf186)
1/*
2 * Copyright (c) 2003-2007 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

161 } else {
162 tc->setMiscReg(MISCREG_CR2, (uint32_t)addr);
163 }
164 }
165
166 void FakeITLBFault::invoke(ThreadContext * tc)
167 {
168 // Start the page table walker.
1/*
2 * Copyright (c) 2003-2007 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

161 } else {
162 tc->setMiscReg(MISCREG_CR2, (uint32_t)addr);
163 }
164 }
165
166 void FakeITLBFault::invoke(ThreadContext * tc)
167 {
168 // Start the page table walker.
169 tc->getITBPtr()->walk(tc, vaddr);
169 tc->getITBPtr()->walk(tc, vaddr, write, execute);
170 }
171
172 void FakeDTLBFault::invoke(ThreadContext * tc)
173 {
174 // Start the page table walker.
170 }
171
172 void FakeDTLBFault::invoke(ThreadContext * tc)
173 {
174 // Start the page table walker.
175 tc->getDTBPtr()->walk(tc, vaddr);
175 tc->getDTBPtr()->walk(tc, vaddr, write, execute);
176 }
177
178#else // !FULL_SYSTEM
179 void FakeITLBFault::invoke(ThreadContext * tc)
180 {
181 DPRINTF(TLB, "Invoking an ITLB fault for address %#x at pc %#x.\n",
182 vaddr, tc->readPC());
183 Process *p = tc->getProcessPtr();

--- 35 unchanged lines hidden ---
176 }
177
178#else // !FULL_SYSTEM
179 void FakeITLBFault::invoke(ThreadContext * tc)
180 {
181 DPRINTF(TLB, "Invoking an ITLB fault for address %#x at pc %#x.\n",
182 vaddr, tc->readPC());
183 Process *p = tc->getProcessPtr();

--- 35 unchanged lines hidden ---