diff options
Diffstat (limited to 'src/arch/x86/isa/formats/multi.isa')
-rw-r--r-- | src/arch/x86/isa/formats/multi.isa | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/arch/x86/isa/formats/multi.isa b/src/arch/x86/isa/formats/multi.isa index 8648800b4..f951dc28a 100644 --- a/src/arch/x86/isa/formats/multi.isa +++ b/src/arch/x86/isa/formats/multi.isa @@ -62,12 +62,16 @@ ////////////////////////////////////////////////////////////////////////// def format Inst(*opTypeSet) {{ - decode_block = specializeInst(Name, list(opTypeSet), EmulEnv()) + blocks = specializeInst(Name, list(opTypeSet), EmulEnv()) + (header_output, decoder_output, + decode_block, exec_output) = blocks.makeList() }}; def format MultiInst(switchVal, *opTypeSets) {{ switcher = {} for (count, opTypeSet) in zip(xrange(len(opTypeSets)), opTypeSets): switcher[count] = (opTypeSet, EmulEnv()) - decode_block = doSplitDecode(Name, specializeInst, switchVal, switcher) + blocks = doSplitDecode(Name, specializeInst, switchVal, switcher) + (header_output, decoder_output, + decode_block, exec_output) = blocks.makeList() }}; |