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 --- 665 unchanged lines hidden (view full) --- 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 isbCode = ''' 683 ''' 684 isbIop = InstObjParams("isb", "Isb", "PredOp", 685 {"code": isbCode, 686 "predicate_test": predicateTest}, ['IsSerializing']) 687 header_output += BasicDeclare.subst(isbIop) 688 decoder_output += BasicConstructor.subst(isbIop) 689 exec_output += PredOpExecute.subst(isbIop) 690 691 dsbCode = ''' 692 ''' 693 dsbIop = InstObjParams("dsb", "Dsb", "PredOp", 694 {"code": dsbCode, 695 "predicate_test": predicateTest},['IsMemBarrier']) 696 header_output += BasicDeclare.subst(dsbIop) 697 decoder_output += BasicConstructor.subst(dsbIop) 698 exec_output += PredOpExecute.subst(dsbIop) 699 700 dmbCode = ''' 701 ''' 702 dmbIop = InstObjParams("dmb", "Dmb", "PredOp", 703 {"code": dmbCode, 704 "predicate_test": predicateTest},['IsMemBarrier']) 705 header_output += BasicDeclare.subst(dmbIop) 706 decoder_output += BasicConstructor.subst(dmbIop) 707 exec_output += PredOpExecute.subst(dmbIop) 708 |
709 cpsCode = ''' 710 uint32_t mode = bits(imm, 4, 0); 711 uint32_t f = bits(imm, 5); 712 uint32_t i = bits(imm, 6); 713 uint32_t a = bits(imm, 7); 714 bool setMode = bits(imm, 8); 715 bool enable = bits(imm, 9); 716 CPSR cpsr = Cpsr; --- 25 unchanged lines hidden --- |