diff options
Diffstat (limited to 'src/arch')
-rw-r--r-- | src/arch/x86/isa/base.isa | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/arch/x86/isa/base.isa b/src/arch/x86/isa/base.isa index d9bd87f2d..eed969b47 100644 --- a/src/arch/x86/isa/base.isa +++ b/src/arch/x86/isa/base.isa @@ -182,6 +182,33 @@ output decoder {{ ccprintf(os, "\t%s : %s ", instMnemonic, mnemonic); } + void printSegment(std::ostream &os, int segment) + { + switch (segment) + { + case 0: + ccprintf(os, "ES"); + break; + case 1: + ccprintf(os, "CS"); + break; + case 2: + ccprintf(os, "SS"); + break; + case 3: + ccprintf(os, "DS"); + break; + case 4: + ccprintf(os, "FS"); + break; + case 5: + ccprintf(os, "GS"); + break; + default: + panic("Unrecognized segment %d\n", segment); + } + } + void X86StaticInst::printSrcReg(std::ostream &os, int reg) const { |