diff -r cdfe09f9bdee -r 0589d3ba9809 src/arch/x86/tlb.cc --- a/src/arch/x86/tlb.cc Mon Jun 04 10:57:23 2012 -0700 +++ b/src/arch/x86/tlb.cc Wed May 30 21:35:41 2012 -0500 @@ -270,7 +270,7 @@ Addr base = tc->readMiscRegNoEffect(MISCREG_SEG_BASE(seg)); Addr limit = tc->readMiscRegNoEffect(MISCREG_SEG_LIMIT(seg)); bool sizeOverride = (flags & (AddrSizeFlagBit << FlagShift)); - int logSize = sizeOverride ? m5Reg.altAddr : m5Reg.defAddr; + unsigned int logSize = sizeOverride ? (unsigned int)m5Reg.altAddr : (unsigned int)m5Reg.defAddr; int size = (1 << logSize) * 8; Addr offset = bits(vaddr - base, size - 1, 0); Addr endOffset = offset + req->getSize() - 1;