Deleted Added
sdiff udiff text old ( 14133:f3e7e7c3803d ) new ( 14242:076b215de8d4 )
full compact
1/*
2 * Copyright (c) 2010, 2012-2019 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

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

178 chain mutex(bool v = true) const {
179 info[MISCREG_MUTEX] = v;
180 return *this;
181 }
182 chain banked(bool v = true) const {
183 info[MISCREG_BANKED] = v;
184 return *this;
185 }
186 chain bankedChild(bool v = true) const {
187 info[MISCREG_BANKED_CHILD] = v;
188 return *this;
189 }
190 chain userNonSecureRead(bool v = true) const {
191 info[MISCREG_USR_NS_RD] = v;
192 return *this;
193 }

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

637 break;
638 }
639 } else {
640 if (miscRegInfo[reg][MISCREG_BANKED]) {
641 bool secureReg = haveSecurity && !highestELIs64 &&
642 inSecureState(miscRegs[MISCREG_SCR],
643 miscRegs[MISCREG_CPSR]);
644 flat_idx += secureReg ? 2 : 1;
645 }
646 }
647 return flat_idx;
648 }
649
650 std::pair<int,int> getMiscIndices(int misc_reg) const
651 {
652 // Note: indexes of AArch64 registers are left unchanged
653 int flat_idx = flattenMiscIndex(misc_reg);
654
655 if (lookUpMiscReg[flat_idx].lower == 0) {
656 return std::make_pair(flat_idx, 0);
657 }

--- 113 unchanged lines hidden ---