faults.cc (5237:6c819dbe8045) faults.cc (5245:d94bb8af9f76)
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;

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

113 void X86Interrupt::invoke(ThreadContext * tc)
114 {
115 panic("X86 faults are not implemented!");
116 }
117
118 void FakeITLBFault::invoke(ThreadContext * tc)
119 {
120 // 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;

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

113 void X86Interrupt::invoke(ThreadContext * tc)
114 {
115 panic("X86 faults are not implemented!");
116 }
117
118 void FakeITLBFault::invoke(ThreadContext * tc)
119 {
120 // Start the page table walker.
121 tc->getITBPtr()->walker.start(tc, vaddr);
121 tc->getITBPtr()->walk(tc, vaddr);
122 }
123
124 void FakeDTLBFault::invoke(ThreadContext * tc)
125 {
126 // Start the page table walker.
122 }
123
124 void FakeDTLBFault::invoke(ThreadContext * tc)
125 {
126 // Start the page table walker.
127 tc->getDTBPtr()->walker.start(tc, vaddr);
127 tc->getDTBPtr()->walk(tc, vaddr);
128 }
129
130#else // !FULL_SYSTEM
131 void FakeITLBFault::invoke(ThreadContext * tc)
132 {
133 DPRINTF(TLB, "Invoking an ITLB fault for address %#x at pc %#x.\n",
134 vaddr, tc->readPC());
135 Process *p = tc->getProcessPtr();

--- 35 unchanged lines hidden ---
128 }
129
130#else // !FULL_SYSTEM
131 void FakeITLBFault::invoke(ThreadContext * tc)
132 {
133 DPRINTF(TLB, "Invoking an ITLB fault for address %#x at pc %#x.\n",
134 vaddr, tc->readPC());
135 Process *p = tc->getProcessPtr();

--- 35 unchanged lines hidden ---