integerop.isa (3918:1f9a98d198e8) integerop.isa (3980:9bcb2a2e9bb8)
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

--- 249 unchanged lines hidden (view full) ---

258 return fault;
259 }
260}};
261
262let {{
263 def doIntFormat(code, ccCode, name, Name, opt_flags):
264 (usesImm, code, immCode,
265 rString, iString) = splitOutImm(code)
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

--- 249 unchanged lines hidden (view full) ---

258 return fault;
259 }
260}};
261
262let {{
263 def doIntFormat(code, ccCode, name, Name, opt_flags):
264 (usesImm, code, immCode,
265 rString, iString) = splitOutImm(code)
266 iop = InstObjParams(name, Name, 'IntOp', code,
267 opt_flags, {"cc_code": ccCode})
266 iop = InstObjParams(name, Name, 'IntOp',
267 {"code": code, "cc_code": ccCode},
268 opt_flags)
268 header_output = BasicDeclare.subst(iop)
269 decoder_output = BasicConstructor.subst(iop)
270 exec_output = IntOpExecute.subst(iop)
271 if usesImm:
272 imm_iop = InstObjParams(name, Name + 'Imm', 'IntOpImm' + iString,
269 header_output = BasicDeclare.subst(iop)
270 decoder_output = BasicConstructor.subst(iop)
271 exec_output = IntOpExecute.subst(iop)
272 if usesImm:
273 imm_iop = InstObjParams(name, Name + 'Imm', 'IntOpImm' + iString,
273 immCode, opt_flags, {"cc_code": ccCode})
274 {"code": immCode, "cc_code": ccCode}, opt_flags)
274 header_output += BasicDeclare.subst(imm_iop)
275 decoder_output += BasicConstructor.subst(imm_iop)
276 exec_output += IntOpExecute.subst(imm_iop)
277 decode_block = ROrImmDecode.subst(iop)
278 else:
279 decode_block = BasicDecode.subst(iop)
280 return (header_output, decoder_output, exec_output, decode_block)
281

--- 54 unchanged lines hidden (view full) ---

336 decoder_output,
337 exec_output,
338 decode_block) = doIntFormat(code, ccCode,
339 name, Name, opt_flags)
340}};
341
342def format SetHi(code, *opt_flags) {{
343 iop = InstObjParams(name, Name, 'SetHi',
275 header_output += BasicDeclare.subst(imm_iop)
276 decoder_output += BasicConstructor.subst(imm_iop)
277 exec_output += IntOpExecute.subst(imm_iop)
278 decode_block = ROrImmDecode.subst(iop)
279 else:
280 decode_block = BasicDecode.subst(iop)
281 return (header_output, decoder_output, exec_output, decode_block)
282

--- 54 unchanged lines hidden (view full) ---

337 decoder_output,
338 exec_output,
339 decode_block) = doIntFormat(code, ccCode,
340 name, Name, opt_flags)
341}};
342
343def format SetHi(code, *opt_flags) {{
344 iop = InstObjParams(name, Name, 'SetHi',
344 code, opt_flags, {"cc_code": ''})
345 {"code": code, "cc_code": ''}, opt_flags)
345 header_output = BasicDeclare.subst(iop)
346 decoder_output = BasicConstructor.subst(iop)
347 exec_output = IntOpExecute.subst(iop)
348 decode_block = SetHiDecode.subst(iop)
349}};
350
346 header_output = BasicDeclare.subst(iop)
347 decoder_output = BasicConstructor.subst(iop)
348 exec_output = IntOpExecute.subst(iop)
349 decode_block = SetHiDecode.subst(iop)
350}};
351