mem.isa (8301:858384f3af1c) | mem.isa (8303:5a95f1d2494e) |
---|---|
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 --- 105 unchanged lines hidden (view full) --- 114 decoder_output += self.constructTemplate.subst(iop) 115 exec_output += PanicExecute.subst(iop) + \ 116 PanicInitiateAcc.subst(iop) + \ 117 PanicCompleteAcc.subst(iop) 118 119 return (header_output, decoder_output, exec_output) 120 121 def pickPredicate(blobs): | 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 --- 105 unchanged lines hidden (view full) --- 114 decoder_output += self.constructTemplate.subst(iop) 115 exec_output += PanicExecute.subst(iop) + \ 116 PanicInitiateAcc.subst(iop) + \ 117 PanicCompleteAcc.subst(iop) 118 119 return (header_output, decoder_output, exec_output) 120 121 def pickPredicate(blobs): |
122 opt_nz = True 123 opt_c = True 124 opt_v = True |
|
122 for val in blobs.values(): | 125 for val in blobs.values(): |
123 if re.search('(?<!Opt)CondCodesF', val): 124 return condPredicateTest 125 return predicateTest | 126 if re.search('(?<!Opt)CondCodesNZ', val): 127 opt_nz = False 128 if re.search('(?<!Opt)CondCodesC', val): 129 opt_c = False 130 if re.search('(?<!Opt)CondCodesV', val): 131 opt_v = False |
126 | 132 |
133 # Build up the predicate piece by piece depending on which 134 # flags the instruction needs 135 predicate = 'testPredicate(' 136 if opt_nz: 137 predicate += 'OptCondCodesNZ, ' 138 else: 139 predicate += 'CondCodesNZ, ' 140 if opt_c: 141 predicate += 'OptCondCodesC, ' 142 else: 143 predicate += 'CondCodesC, ' 144 if opt_v: 145 predicate += 'OptCondCodesV, ' 146 else: 147 predicate += 'CondCodesV, ' 148 predicate += 'condCode)' 149 150 return predicate 151 |
|
127 def memClassName(base, post, add, writeback, \ 128 size=4, sign=False, user=False): 129 Name = base 130 131 parts = { "P" : post, "A" : add, "W" : writeback, 132 "S" : sign, "U" : user } 133 134 for (letter, val) in parts.items(): --- 39 unchanged lines hidden --- | 152 def memClassName(base, post, add, writeback, \ 153 size=4, sign=False, user=False): 154 Name = base 155 156 parts = { "P" : post, "A" : add, "W" : writeback, 157 "S" : sign, "U" : user } 158 159 for (letter, val) in parts.items(): --- 39 unchanged lines hidden --- |