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 --- 654 unchanged lines hidden (view full) --- 663 ''' 664 setendIop = InstObjParams("setend", "Setend", "ImmOp", 665 { "code": setendCode, 666 "predicate_test": predicateTest }, []) 667 header_output += ImmOpDeclare.subst(setendIop) 668 decoder_output += ImmOpConstructor.subst(setendIop) 669 exec_output += PredOpExecute.subst(setendIop) 670 |
671 clrexCode = ''' 672 unsigned memAccessFlags = ArmISA::TLB::Clrex|3|Request::LLSC; 673 fault = xc->read(0, (uint32_t&)Mem, memAccessFlags); 674 ''' 675 clrexIop = InstObjParams("clrex", "Clrex","PredOp", 676 { "code": clrexCode, 677 "predicate_test": predicateTest },[]) 678 header_output += BasicDeclare.subst(clrexIop) 679 decoder_output += BasicConstructor.subst(clrexIop) 680 exec_output += PredOpExecute.subst(clrexIop) 681 |
682 cpsCode = ''' 683 uint32_t mode = bits(imm, 4, 0); 684 uint32_t f = bits(imm, 5); 685 uint32_t i = bits(imm, 6); 686 uint32_t a = bits(imm, 7); 687 bool setMode = bits(imm, 8); 688 bool enable = bits(imm, 9); 689 CPSR cpsr = Cpsr; --- 25 unchanged lines hidden --- |