blockmem.isa (7741:340b6f01d69b) | blockmem.isa (10184:bbfa3152bdea) |
---|---|
1// Copyright (c) 2006-2007 The Regents of The University of Michigan 2// All rights reserved. 3// 4// Redistribution and use in source and binary forms, with or without 5// modification, are permitted provided that the following conditions are 6// met: redistributions of source code must retain the above copyright 7// notice, this list of conditions and the following disclaimer; 8// redistributions in binary form must reproduce the above copyright --- 226 unchanged lines hidden (view full) --- 235 %(InitiateAccDeclare)s 236 %(CompleteAccDeclare)s 237 }; 238 }; 239}}; 240 241// Basic instruction class constructor template. 242def template BlockMemConstructor {{ | 1// Copyright (c) 2006-2007 The Regents of The University of Michigan 2// All rights reserved. 3// 4// Redistribution and use in source and binary forms, with or without 5// modification, are permitted provided that the following conditions are 6// met: redistributions of source code must retain the above copyright 7// notice, this list of conditions and the following disclaimer; 8// redistributions in binary form must reproduce the above copyright --- 226 unchanged lines hidden (view full) --- 235 %(InitiateAccDeclare)s 236 %(CompleteAccDeclare)s 237 }; 238 }; 239}}; 240 241// Basic instruction class constructor template. 242def template BlockMemConstructor {{ |
243 inline %(class_name)s::%(class_name)s(ExtMachInst machInst) | 243 %(class_name)s::%(class_name)s(ExtMachInst machInst) |
244 : %(base_class)s("%(mnemonic)s", machInst) 245 { 246 %(constructor)s; 247 microops[0] = new %(class_name)s_0(machInst); 248 microops[1] = new %(class_name)s_1(machInst); 249 microops[2] = new %(class_name)s_2(machInst); 250 microops[3] = new %(class_name)s_3(machInst); 251 microops[4] = new %(class_name)s_4(machInst); 252 microops[5] = new %(class_name)s_5(machInst); 253 microops[6] = new %(class_name)s_6(machInst); 254 microops[7] = new %(class_name)s_7(machInst); 255 } 256}}; 257 258def template BlockMemMicroConstructor {{ | 244 : %(base_class)s("%(mnemonic)s", machInst) 245 { 246 %(constructor)s; 247 microops[0] = new %(class_name)s_0(machInst); 248 microops[1] = new %(class_name)s_1(machInst); 249 microops[2] = new %(class_name)s_2(machInst); 250 microops[3] = new %(class_name)s_3(machInst); 251 microops[4] = new %(class_name)s_4(machInst); 252 microops[5] = new %(class_name)s_5(machInst); 253 microops[6] = new %(class_name)s_6(machInst); 254 microops[7] = new %(class_name)s_7(machInst); 255 } 256}}; 257 258def template BlockMemMicroConstructor {{ |
259 inline %(class_name)s:: | 259 %(class_name)s:: |
260 %(class_name)s_%(micro_pc)s:: 261 %(class_name)s_%(micro_pc)s(ExtMachInst machInst) : 262 %(base_class)sMicro("%(mnemonic)s[%(micro_pc)s]", 263 machInst, %(op_class)s, %(micro_pc)s * 8) 264 { 265 %(constructor)s; 266 %(set_flags)s; 267 } --- 74 unchanged lines hidden --- | 260 %(class_name)s_%(micro_pc)s:: 261 %(class_name)s_%(micro_pc)s(ExtMachInst machInst) : 262 %(base_class)sMicro("%(mnemonic)s[%(micro_pc)s]", 263 machInst, %(op_class)s, %(micro_pc)s * 8) 264 { 265 %(constructor)s; 266 %(set_flags)s; 267 } --- 74 unchanged lines hidden --- |