macromem.cc (8229:78bf55f23338) | macromem.cc (8542:7230ff0738e3) |
---|---|
1/* 2 * Copyright (c) 2010 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 --- 126 unchanged lines hidden (view full) --- 135 // If this was a load move the last temporary value into place 136 // this way we can't take an exception after we update the base 137 // register. 138 if (load && reg == INTREG_PC && exception_ret) { 139 *++uop = new MicroUopRegMovRet(machInst, 0, INTREG_UREG1); 140 } else if (load) { 141 *++uop = new MicroUopRegMov(machInst, regIdx, INTREG_UREG1); 142 if (reg == INTREG_PC) { | 1/* 2 * Copyright (c) 2010 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 --- 126 unchanged lines hidden (view full) --- 135 // If this was a load move the last temporary value into place 136 // this way we can't take an exception after we update the base 137 // register. 138 if (load && reg == INTREG_PC && exception_ret) { 139 *++uop = new MicroUopRegMovRet(machInst, 0, INTREG_UREG1); 140 } else if (load) { 141 *++uop = new MicroUopRegMov(machInst, regIdx, INTREG_UREG1); 142 if (reg == INTREG_PC) { |
143 (*uop)->setFlag(StaticInstBase::IsControl); 144 (*uop)->setFlag(StaticInstBase::IsCondControl); 145 (*uop)->setFlag(StaticInstBase::IsIndirectControl); | 143 (*uop)->setFlag(StaticInst::IsControl); 144 (*uop)->setFlag(StaticInst::IsCondControl); 145 (*uop)->setFlag(StaticInst::IsIndirectControl); |
146 // This is created as a RAS POP 147 if (rn == INTREG_SP) | 146 // This is created as a RAS POP 147 if (rn == INTREG_SP) |
148 (*uop)->setFlag(StaticInstBase::IsReturn); | 148 (*uop)->setFlag(StaticInst::IsReturn); |
149 150 } 151 } 152 } 153 154 (*uop)->setLastMicroop(); 155 156 for (StaticInstPtr *curUop = microOps; --- 811 unchanged lines hidden --- | 149 150 } 151 } 152 } 153 154 (*uop)->setLastMicroop(); 155 156 for (StaticInstPtr *curUop = microOps; --- 811 unchanged lines hidden --- |