main.isa (3586:c5cc95fc5a61) main.isa (3953:300d526414e6)
1// -*- mode:c++ -*-
2
3// Copyright (c) 2003-2005 The Regents of The University of Michigan
4// All rights reserved.
5//
6// Redistribution and use in source and binary forms, with or without
7// modification, are permitted provided that the following conditions are
8// met: redistributions of source code must retain the above copyright

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

333
334// Basic decode template, passing mnemonic in as string arg to constructor.
335def template BasicDecodeWithMnemonic {{
336 return new %(class_name)s("%(mnemonic)s", machInst);
337}};
338
339// The most basic instruction format... used only for a few misc. insts
340def format BasicOperate(code, *flags) {{
1// -*- mode:c++ -*-
2
3// Copyright (c) 2003-2005 The Regents of The University of Michigan
4// All rights reserved.
5//
6// Redistribution and use in source and binary forms, with or without
7// modification, are permitted provided that the following conditions are
8// met: redistributions of source code must retain the above copyright

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

333
334// Basic decode template, passing mnemonic in as string arg to constructor.
335def template BasicDecodeWithMnemonic {{
336 return new %(class_name)s("%(mnemonic)s", machInst);
337}};
338
339// The most basic instruction format... used only for a few misc. insts
340def format BasicOperate(code, *flags) {{
341 iop = InstObjParams(name, Name, 'AlphaStaticInst', CodeBlock(code), flags)
341 iop = InstObjParams(name, Name, 'AlphaStaticInst', code, flags)
342 header_output = BasicDeclare.subst(iop)
343 decoder_output = BasicConstructor.subst(iop)
344 decode_block = BasicDecode.subst(iop)
345 exec_output = BasicExecute.subst(iop)
346}};
347
348
349

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

419 i = makeNop(i);
420 }
421 return i;
422 }
423}};
424
425// Like BasicOperate format, but generates NOP if RC/FC == 31
426def format BasicOperateWithNopCheck(code, *opt_args) {{
342 header_output = BasicDeclare.subst(iop)
343 decoder_output = BasicConstructor.subst(iop)
344 decode_block = BasicDecode.subst(iop)
345 exec_output = BasicExecute.subst(iop)
346}};
347
348
349

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

419 i = makeNop(i);
420 }
421 return i;
422 }
423}};
424
425// Like BasicOperate format, but generates NOP if RC/FC == 31
426def format BasicOperateWithNopCheck(code, *opt_args) {{
427 iop = InstObjParams(name, Name, 'AlphaStaticInst', CodeBlock(code),
428 opt_args)
427 iop = InstObjParams(name, Name, 'AlphaStaticInst', code, opt_args)
429 header_output = BasicDeclare.subst(iop)
430 decoder_output = BasicConstructor.subst(iop)
431 decode_block = OperateNopCheckDecode.subst(iop)
432 exec_output = BasicExecute.subst(iop)
433}};
434
435// Integer instruction templates, formats, etc.
436##include "int.isa"

--- 27 unchanged lines hidden ---
428 header_output = BasicDeclare.subst(iop)
429 decoder_output = BasicConstructor.subst(iop)
430 decode_block = OperateNopCheckDecode.subst(iop)
431 exec_output = BasicExecute.subst(iop)
432}};
433
434// Integer instruction templates, formats, etc.
435##include "int.isa"

--- 27 unchanged lines hidden ---