multi.isa (4535:51bf0993137e) | multi.isa (4542:f6ca2384b304) |
---|---|
1// -*- mode:c++ -*- 2 3// Copyright (c) 2007 The Hewlett-Packard Development Company 4// All rights reserved. 5// 6// Redistribution and use of this software in source and binary forms, 7// with or without modification, are permitted provided that the 8// following conditions are met: --- 48 unchanged lines hidden (view full) --- 57 58////////////////////////////////////////////////////////////////////////// 59// 60// Instructions operate on one or multiple types of sets of arguments. 61// 62////////////////////////////////////////////////////////////////////////// 63 64def format Inst(*opTypeSet) {{ | 1// -*- mode:c++ -*- 2 3// Copyright (c) 2007 The Hewlett-Packard Development Company 4// All rights reserved. 5// 6// Redistribution and use of this software in source and binary forms, 7// with or without modification, are permitted provided that the 8// following conditions are met: --- 48 unchanged lines hidden (view full) --- 57 58////////////////////////////////////////////////////////////////////////// 59// 60// Instructions operate on one or multiple types of sets of arguments. 61// 62////////////////////////////////////////////////////////////////////////// 63 64def format Inst(*opTypeSet) {{ |
65 decode_block = specializeInst(Name, list(opTypeSet), EmulEnv()) | 65 blocks = specializeInst(Name, list(opTypeSet), EmulEnv()) 66 (header_output, decoder_output, 67 decode_block, exec_output) = blocks.makeList() |
66}}; 67 68def format MultiInst(switchVal, *opTypeSets) {{ 69 switcher = {} 70 for (count, opTypeSet) in zip(xrange(len(opTypeSets)), opTypeSets): 71 switcher[count] = (opTypeSet, EmulEnv()) | 68}}; 69 70def format MultiInst(switchVal, *opTypeSets) {{ 71 switcher = {} 72 for (count, opTypeSet) in zip(xrange(len(opTypeSets)), opTypeSets): 73 switcher[count] = (opTypeSet, EmulEnv()) |
72 decode_block = doSplitDecode(Name, specializeInst, switchVal, switcher) | 74 blocks = doSplitDecode(Name, specializeInst, switchVal, switcher) 75 (header_output, decoder_output, 76 decode_block, exec_output) = blocks.makeList() |
73}}; | 77}}; |