decoder.isa (3462:ad2989480f70) | decoder.isa (3464:2692df606f73) |
---|---|
1// -*- mode:c++ -*- 2 3// Copyright (c) 2003-2006 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 --- 731 unchanged lines hidden (view full) --- 740 } 741 } 742 } 743 744 0x19: decode PALMODE { 745 0: OpcdecFault::hw_mfpr(); 746 format HwMoveIPR { 747 1: hw_mfpr({{ | 1// -*- mode:c++ -*- 2 3// Copyright (c) 2003-2006 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 --- 731 unchanged lines hidden (view full) --- 740 } 741 } 742 } 743 744 0x19: decode PALMODE { 745 0: OpcdecFault::hw_mfpr(); 746 format HwMoveIPR { 747 1: hw_mfpr({{ |
748 int miscRegIndex = IprToMiscRegIndex[ipr_index]; 749 if(miscRegIndex < 0 || !IprIsReadable(miscRegIndex)) | 748 miscRegIndex >= NumInternalProcRegs) 749 int miscRegIndex = (ipr_index < NumInternalProcRegs) ? 750 IprToMiscRegIndex[ipr_index] : -1; 751 if(miscRegIndex < 0 || !IprIsReadable(miscRegIndex) || |
750 fault = new UnimplementedOpcodeFault; 751 else 752 Ra = xc->readMiscRegWithEffect(miscRegIndex, fault); 753 }}, IsIprAccess); 754 } 755 } 756 757 0x1d: decode PALMODE { 758 0: OpcdecFault::hw_mtpr(); 759 format HwMoveIPR { 760 1: hw_mtpr({{ | 752 fault = new UnimplementedOpcodeFault; 753 else 754 Ra = xc->readMiscRegWithEffect(miscRegIndex, fault); 755 }}, IsIprAccess); 756 } 757 } 758 759 0x1d: decode PALMODE { 760 0: OpcdecFault::hw_mtpr(); 761 format HwMoveIPR { 762 1: hw_mtpr({{ |
761 int miscRegIndex = IprToMiscRegIndex[ipr_index]; | 763 int miscRegIndex = (ipr_index < NumInternalProcRegs) ? 764 IprToMiscRegIndex[ipr_index] : -1; |
762 if(miscRegIndex < 0 || !IprIsWritable(miscRegIndex)) 763 fault = new UnimplementedOpcodeFault; 764 else 765 xc->setMiscRegWithEffect(miscRegIndex, Ra); 766 if (traceData) { traceData->setData(Ra); } 767 }}, IsIprAccess); 768 } 769 } --- 77 unchanged lines hidden --- | 765 if(miscRegIndex < 0 || !IprIsWritable(miscRegIndex)) 766 fault = new UnimplementedOpcodeFault; 767 else 768 xc->setMiscRegWithEffect(miscRegIndex, Ra); 769 if (traceData) { traceData->setData(Ra); } 770 }}, IsIprAccess); 771 } 772 } --- 77 unchanged lines hidden --- |