blockmem.isa (3952:092d03b2ab95) | blockmem.isa (3956:4f306596983e) |
---|---|
1// Copyright (c) 2006 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 --- 480 unchanged lines hidden (view full) --- 489 flag_code = '' 490 pcedCode = '' 491 if (microPc == 1): 492 flag_code = "flags[IsLastMicroOp] = true;" 493 pcedCode = matcher.sub("RdHigh", code) 494 else: 495 flag_code = "flags[IsDelayedCommit] = true;" 496 pcedCode = matcher.sub("RdLow", code) | 1// Copyright (c) 2006 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 --- 480 unchanged lines hidden (view full) --- 489 flag_code = '' 490 pcedCode = '' 491 if (microPc == 1): 492 flag_code = "flags[IsLastMicroOp] = true;" 493 pcedCode = matcher.sub("RdHigh", code) 494 else: 495 flag_code = "flags[IsDelayedCommit] = true;" 496 pcedCode = matcher.sub("RdLow", code) |
497 iop = InstObjParams(name, Name, 'TwinMem', pcedCode, 498 opt_flags, {"ea_code": addrCalcReg, | 497 iop = InstObjParams(name, Name, 'TwinMem', 498 {"code": pcedCode, "ea_code": addrCalcReg, |
499 "fault_check": faultCode, "micro_pc": microPc, | 499 "fault_check": faultCode, "micro_pc": microPc, |
500 "set_flags": flag_code}) 501 iop_imm = InstObjParams(name, Name + 'Imm', 'TwinMemImm', pcedCode, 502 opt_flags, {"ea_code": addrCalcImm, | 500 "set_flags": flag_code}, opt_flags) 501 iop_imm = InstObjParams(name, Name + 'Imm', 'TwinMemImm', 502 {"code": pcedCode, "ea_code": addrCalcImm, |
503 "fault_check": faultCode, "micro_pc": microPc, | 503 "fault_check": faultCode, "micro_pc": microPc, |
504 "set_flags": flag_code}) | 504 "set_flags": flag_code}, opt_flags) |
505 decoder_output += BlockMemMicroConstructor.subst(iop) 506 decoder_output += BlockMemMicroConstructor.subst(iop_imm) 507 exec_output += doDualSplitExecute( | 505 decoder_output += BlockMemMicroConstructor.subst(iop) 506 decoder_output += BlockMemMicroConstructor.subst(iop_imm) 507 exec_output += doDualSplitExecute( |
508 pcedCode, addrCalcReg, addrCalcImm, LoadExecute, faultCode, | 508 pcedCode, addrCalcReg, addrCalcImm, LoadFuncs, faultCode, |
509 makeMicroName(name, microPc), 510 makeMicroName(name + "Imm", microPc), 511 makeMicroName(Name, microPc), 512 makeMicroName(Name + "Imm", microPc), 513 asi, opt_flags); 514 faultCode = '' 515 return (header_output, decoder_output, exec_output, decode_block) 516 --- 33 unchanged lines hidden --- | 509 makeMicroName(name, microPc), 510 makeMicroName(name + "Imm", microPc), 511 makeMicroName(Name, microPc), 512 makeMicroName(Name + "Imm", microPc), 513 asi, opt_flags); 514 faultCode = '' 515 return (header_output, decoder_output, exec_output, decode_block) 516 --- 33 unchanged lines hidden --- |