summaryrefslogtreecommitdiff
path: root/src/arch/x86/isa
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/x86/isa')
-rw-r--r--src/arch/x86/isa/microops/regop.isa11
1 files changed, 3 insertions, 8 deletions
diff --git a/src/arch/x86/isa/microops/regop.isa b/src/arch/x86/isa/microops/regop.isa
index 2d5ae048a..08a4ddd41 100644
--- a/src/arch/x86/isa/microops/regop.isa
+++ b/src/arch/x86/isa/microops/regop.isa
@@ -1627,8 +1627,7 @@ let {{
case LDT64:
case AvailableTSS64:
case BusyTSS64:
- replaceBits(target, 23, 0, desc.baseLow);
- replaceBits(target, 31, 24, desc.baseHigh);
+ replaceBits(target, 31, 0, desc.base);
break;
case CallGate64:
case IntGate64:
@@ -1703,12 +1702,8 @@ let {{
attr.writable = desc.type.w;
}
}
- Addr base = desc.baseLow | (desc.baseHigh << 24);
- Addr limit = desc.limitLow | (desc.limitHigh << 16);
- if (desc.g)
- limit = (limit << 12) | mask(12);
- SegBaseDest = base;
- SegLimitDest = limit;
+ SegBaseDest = desc.base;
+ SegLimitDest = desc.limit;
SegAttrDest = attr;
} else {
SegBaseDest = SegBaseDest;