diff options
author | Ali Saidi <saidi@eecs.umich.edu> | 2007-01-16 19:06:33 -0500 |
---|---|---|
committer | Ali Saidi <saidi@eecs.umich.edu> | 2007-01-16 19:06:33 -0500 |
commit | 0584d5bd6c24c66a0d497bba6a3a47d8cdc7a87e (patch) | |
tree | 5bb309c8a0dd63dfa23fefc122f9ead0d550f0fb /src/arch | |
parent | ecfd628ecd394f8e7df654ffc7c342d959e12e15 (diff) | |
download | gem5-0584d5bd6c24c66a0d497bba6a3a47d8cdc7a87e.tar.xz |
In the case of ASI_P or ASI_LDTX_P set primary and skip the other checks
--HG--
extra : convert_revision : e7b21c56eadf4603ab03364741b00c9689492423
Diffstat (limited to 'src/arch')
-rw-r--r-- | src/arch/sparc/tlb.cc | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/src/arch/sparc/tlb.cc b/src/arch/sparc/tlb.cc index 1cecb4ebb..0935cee4e 100644 --- a/src/arch/sparc/tlb.cc +++ b/src/arch/sparc/tlb.cc @@ -625,13 +625,12 @@ DTB::translate(RequestPtr &req, ThreadContext *tc, bool write) return new DataAccessException; } - } /*else if (hpriv) {*/ - if (asi == ASI_P) { - ct = Primary; - context = pri_context; - goto continueDtbFlow; - } - //} + } + if (asi == ASI_P || asi == ASI_LDTX_P) { + ct = Primary; + context = pri_context; + goto continueDtbFlow; + } if (!implicit) { if (AsiIsLittle(asi)) @@ -640,9 +639,6 @@ DTB::translate(RequestPtr &req, ThreadContext *tc, bool write) panic("Block ASIs not supported\n"); if (AsiIsNoFault(asi)) panic("No Fault ASIs not supported\n"); - if (write && asi == ASI_LDTX_P) - // block init store (like write hint64) - goto continueDtbFlow; if (!write && asi == ASI_QUAD_LDD) goto continueDtbFlow; |