tlb.cc (7705:fd65f85fcc0c) tlb.cc (7720:65d338a8dba4)
1/*
2 * Copyright (c) 2010 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

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

311}
312
313#if !FULL_SYSTEM
314Fault
315TLB::translateSe(RequestPtr req, ThreadContext *tc, Mode mode,
316 Translation *translation, bool &delay, bool timing)
317{
318 // XXX Cache misc registers and have miscreg write function inv cache
1/*
2 * Copyright (c) 2010 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

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

311}
312
313#if !FULL_SYSTEM
314Fault
315TLB::translateSe(RequestPtr req, ThreadContext *tc, Mode mode,
316 Translation *translation, bool &delay, bool timing)
317{
318 // XXX Cache misc registers and have miscreg write function inv cache
319 Addr vaddr = req->getVaddr() & ~PcModeMask;
319 Addr vaddr = req->getVaddr();
320 SCTLR sctlr = tc->readMiscReg(MISCREG_SCTLR);
321 uint32_t flags = req->getFlags();
322
323 bool is_fetch = (mode == Execute);
324 bool is_write = (mode == Write);
325
326 if (!is_fetch) {
327 assert(flags & MustBeOne);

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

357 return NoFault;
358}
359
360Fault
361TLB::translateFs(RequestPtr req, ThreadContext *tc, Mode mode,
362 Translation *translation, bool &delay, bool timing)
363{
364 // XXX Cache misc registers and have miscreg write function inv cache
320 SCTLR sctlr = tc->readMiscReg(MISCREG_SCTLR);
321 uint32_t flags = req->getFlags();
322
323 bool is_fetch = (mode == Execute);
324 bool is_write = (mode == Write);
325
326 if (!is_fetch) {
327 assert(flags & MustBeOne);

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

357 return NoFault;
358}
359
360Fault
361TLB::translateFs(RequestPtr req, ThreadContext *tc, Mode mode,
362 Translation *translation, bool &delay, bool timing)
363{
364 // XXX Cache misc registers and have miscreg write function inv cache
365 Addr vaddr = req->getVaddr() & ~PcModeMask;
365 Addr vaddr = req->getVaddr();
366 SCTLR sctlr = tc->readMiscReg(MISCREG_SCTLR);
367 CPSR cpsr = tc->readMiscReg(MISCREG_CPSR);
368 uint32_t flags = req->getFlags();
369
370 bool is_fetch = (mode == Execute);
371 bool is_write = (mode == Write);
372 bool is_priv = (cpsr.mode != MODE_USER) && !(flags & UserMode);
373

--- 227 unchanged lines hidden ---
366 SCTLR sctlr = tc->readMiscReg(MISCREG_SCTLR);
367 CPSR cpsr = tc->readMiscReg(MISCREG_CPSR);
368 uint32_t flags = req->getFlags();
369
370 bool is_fetch = (mode == Execute);
371 bool is_write = (mode == Write);
372 bool is_priv = (cpsr.mode != MODE_USER) && !(flags & UserMode);
373

--- 227 unchanged lines hidden ---