macromem.isa (8139:2b2efc67f6df) | macromem.isa (8140:7449084b1612) |
---|---|
1// -*- mode:c++ -*- 2 3// Copyright (c) 2010 ARM Limited 4// All rights reserved 5// 6// The license below extends only to copyright in the software and shall 7// not be construed as granting a license to any other intellectual 8// property including but not limited to intellectual property relating --- 594 unchanged lines hidden (view full) --- 603 ['IsMicroop']) 604 605 microUopRegMovIop = InstObjParams('uopReg_uop', 'MicroUopRegMov', 606 'MicroIntMov', 607 {'code': 'IWRa = URb;', 608 'predicate_test': predicateTest}, 609 ['IsMicroop']) 610 | 1// -*- mode:c++ -*- 2 3// Copyright (c) 2010 ARM Limited 4// All rights reserved 5// 6// The license below extends only to copyright in the software and shall 7// not be construed as granting a license to any other intellectual 8// property including but not limited to intellectual property relating --- 594 unchanged lines hidden (view full) --- 603 ['IsMicroop']) 604 605 microUopRegMovIop = InstObjParams('uopReg_uop', 'MicroUopRegMov', 606 'MicroIntMov', 607 {'code': 'IWRa = URb;', 608 'predicate_test': predicateTest}, 609 ['IsMicroop']) 610 |
611 setPCCPSRDecl = ''' 612 CPSR cpsrOrCondCodes = URc; 613 SCTLR sctlr = Sctlr; 614 pNPC = URa; 615 uint32_t newCpsr = 616 cpsrWriteByInstr(cpsrOrCondCodes, URb, 617 0xF, true, sctlr.nmfi); 618 Cpsr = ~CondCodesMask & newCpsr; 619 NextThumb = ((CPSR)newCpsr).t; 620 NextJazelle = ((CPSR)newCpsr).j; 621 ForcedItState = ((((CPSR)URb).it2 << 2) & 0xFC) 622 | (((CPSR)URb).it1 & 0x3); 623 CondCodes = CondCodesMask & newCpsr; 624 ''' 625 626 microUopSetPCCPSRIop = InstObjParams('uopSet_uop', 'MicroUopSetPCCPSR', 627 'MicroSetPCCPSR', 628 {'code': setPCCPSRDecl, 629 'predicate_test': predicateTest}, 630 ['IsMicroop']) 631 |
|
611 header_output = MicroIntImmDeclare.subst(microAddiUopIop) + \ 612 MicroIntImmDeclare.subst(microSubiUopIop) + \ 613 MicroIntRegDeclare.subst(microAddUopIop) + \ 614 MicroIntRegDeclare.subst(microSubUopIop) + \ | 632 header_output = MicroIntImmDeclare.subst(microAddiUopIop) + \ 633 MicroIntImmDeclare.subst(microSubiUopIop) + \ 634 MicroIntRegDeclare.subst(microAddUopIop) + \ 635 MicroIntRegDeclare.subst(microSubUopIop) + \ |
615 MicroIntMovDeclare.subst(microUopRegMovIop) | 636 MicroIntMovDeclare.subst(microUopRegMovIop) + \ 637 MicroSetPCCPSRDeclare.subst(microUopSetPCCPSRIop) |
616 617 decoder_output = MicroIntImmConstructor.subst(microAddiUopIop) + \ 618 MicroIntImmConstructor.subst(microSubiUopIop) + \ 619 MicroIntRegConstructor.subst(microAddUopIop) + \ 620 MicroIntRegConstructor.subst(microSubUopIop) + \ | 638 639 decoder_output = MicroIntImmConstructor.subst(microAddiUopIop) + \ 640 MicroIntImmConstructor.subst(microSubiUopIop) + \ 641 MicroIntRegConstructor.subst(microAddUopIop) + \ 642 MicroIntRegConstructor.subst(microSubUopIop) + \ |
621 MicroIntMovConstructor.subst(microUopRegMovIop) | 643 MicroIntMovConstructor.subst(microUopRegMovIop) + \ 644 MicroSetPCCPSRConstructor.subst(microUopSetPCCPSRIop) |
622 623 exec_output = PredOpExecute.subst(microAddiUopIop) + \ 624 PredOpExecute.subst(microSubiUopIop) + \ 625 PredOpExecute.subst(microAddUopIop) + \ 626 PredOpExecute.subst(microSubUopIop) + \ | 645 646 exec_output = PredOpExecute.subst(microAddiUopIop) + \ 647 PredOpExecute.subst(microSubiUopIop) + \ 648 PredOpExecute.subst(microAddUopIop) + \ 649 PredOpExecute.subst(microSubUopIop) + \ |
627 PredOpExecute.subst(microUopRegMovIop) | 650 PredOpExecute.subst(microUopRegMovIop) + \ 651 PredOpExecute.subst(microUopSetPCCPSRIop) 652 |
628}}; 629 630let {{ 631 iop = InstObjParams("ldmstm", "LdmStm", 'MacroMemOp', "", []) 632 header_output = MacroMemDeclare.subst(iop) 633 decoder_output = MacroMemConstructor.subst(iop) 634 635 iop = InstObjParams("vldmult", "VldMult", 'VldMultOp', "", []) --- 19 unchanged lines hidden --- | 653}}; 654 655let {{ 656 iop = InstObjParams("ldmstm", "LdmStm", 'MacroMemOp', "", []) 657 header_output = MacroMemDeclare.subst(iop) 658 decoder_output = MacroMemConstructor.subst(iop) 659 660 iop = InstObjParams("vldmult", "VldMult", 'VldMultOp', "", []) --- 19 unchanged lines hidden --- |