isa.cc (12605:16476b32138d) | isa.cc (12639:c133e5b397a4) |
---|---|
1/* 2 * Copyright (c) 2010-2016 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 938 unchanged lines hidden (view full) --- 947 case MISCREG_SCR: 948 getITBPtr(tc)->invalidateMiscReg(); 949 getDTBPtr(tc)->invalidateMiscReg(); 950 break; 951 case MISCREG_SCTLR: 952 { 953 DPRINTF(MiscRegs, "Writing SCTLR: %#x\n", newVal); 954 scr = readMiscRegNoEffect(MISCREG_SCR); | 1/* 2 * Copyright (c) 2010-2016 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 938 unchanged lines hidden (view full) --- 947 case MISCREG_SCR: 948 getITBPtr(tc)->invalidateMiscReg(); 949 getDTBPtr(tc)->invalidateMiscReg(); 950 break; 951 case MISCREG_SCTLR: 952 { 953 DPRINTF(MiscRegs, "Writing SCTLR: %#x\n", newVal); 954 scr = readMiscRegNoEffect(MISCREG_SCR); |
955 MiscRegIndex sctlr_idx = (haveSecurity && !scr.ns) 956 ? MISCREG_SCTLR_S : MISCREG_SCTLR_NS; | 955 956 MiscRegIndex sctlr_idx; 957 if (haveSecurity && !highestELIs64 && !scr.ns) { 958 sctlr_idx = MISCREG_SCTLR_S; 959 } else { 960 sctlr_idx = MISCREG_SCTLR_NS; 961 } 962 |
957 SCTLR sctlr = miscRegs[sctlr_idx]; 958 SCTLR new_sctlr = newVal; 959 new_sctlr.nmfi = ((bool)sctlr.nmfi) && !haveVirtualization; 960 miscRegs[sctlr_idx] = (MiscReg)new_sctlr; 961 getITBPtr(tc)->invalidateMiscReg(); 962 getDTBPtr(tc)->invalidateMiscReg(); 963 } 964 case MISCREG_MIDR: --- 999 unchanged lines hidden --- | 963 SCTLR sctlr = miscRegs[sctlr_idx]; 964 SCTLR new_sctlr = newVal; 965 new_sctlr.nmfi = ((bool)sctlr.nmfi) && !haveVirtualization; 966 miscRegs[sctlr_idx] = (MiscReg)new_sctlr; 967 getITBPtr(tc)->invalidateMiscReg(); 968 getDTBPtr(tc)->invalidateMiscReg(); 969 } 970 case MISCREG_MIDR: --- 999 unchanged lines hidden --- |