1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
|
#! /usr/local/bin/perl
#
%Datum = ();
&init();
$BigTotal = 0;
while (<>) {
chop;
next if ! /^\s*(\d+): (.*)/;
$op_code = $1;
@num = split(/\s+/, $2);
$op_category = $Opcode2Cat{$op_code};
die "num = $#num\n" if $#num != 21;
for($i = 0; $i <= $#num; $i++) {
next if $num[$i] == 0;
$act = $ActivityName[$i];
$Datum{"$act/$op_category"} += $num[$i];
$TotPerCat{$op_category} += $num[$i];
$BigTotal += $num[$i];
}
}
#print a header
printf STDOUT "%12s", "";
foreach $opcat (@ListOfCats) { printf STDOUT " %11s", $opcat; }
printf STDOUT " %11s %s\n", 'TOTAL', " \%age";
# print the collected goods
%tot_for_opcat = ();
foreach $act ( @ListOfActivities ) {
printf STDOUT "%-12s", $act;
$tot_for_act = 0;
foreach $opcat (@ListOfCats) {
$datum = $Datum{"$act/$opcat"};
printf STDOUT " %11s", &commas($datum);
$tot_for_act += $datum;
$tot_for_opcat{$opcat} += $datum;
}
printf STDOUT "%12s %5.1f%%\n", &commas($tot_for_act), (($tot_for_act / $BigTotal) * 100.0);
}
foreach $k ( keys %TotPerCat ) {
die "category ($k) totals don't match: $TotPerCat{$k} != $tot_for_opcat{$k}\n"
if $TotPerCat{$k} != $tot_for_opcat{$k};
}
foreach $k ( keys %tot_for_opcat ) {
die "category ($k) totals don't match: $TotPerCat{$k} != $tot_for_opcat{$k}\n"
if $TotPerCat{$k} != $tot_for_opcat{$k};
}
#print totals by category and percentages
printf STDOUT "\n%-12s", '*Totals*';
$tot_to_chk = 0;
foreach $opcat (@ListOfCats) {
printf STDOUT " %11s", &commas($TotPerCat{$opcat});
$tot_to_chk += $TotPerCat{$opcat};
}
printf STDOUT "%12s\n%-12s", &commas($BigTotal), '';
die "Totals don't match: $tot_to_chk != $BigTotal\n" if $tot_to_chk != $BigTotal;
foreach $opcat (@ListOfCats) {
printf STDOUT " %10.1f%%", (($TotPerCat{$opcat} / $BigTotal) * 100.0);
}
printf STDOUT "\n";
# utils:
sub commas { # put commas into long integer numbers
local($_) = @_;
s/^\+//;
s/(\d)(\d\d\d)$/$1,$2/;
while ( /\d\d\d\d,/ ) {
s/(\d)(\d\d\d)\,/$1,$2,/;
}
$_;
}
sub init {
# order is important!
@ActivityName = ( 'UNKNOWN', 'GC', 'OTHER_REDN', 'ASTK_STUB',
'FILL_IN_HEAP', 'HEAP_CHK', 'RETURN',
'UPDATE', 'PUSH_UPDF', 'ARGS_CHK', 'UPDATE_PAP',
'INDIRECT', 'XXX_12', 'XXX_13', 'OVERHEAD', 'TAILCALL',
'CALL', 'STKADJ', 'ASTK', 'BSTK', 'RETREG', 'ARGREGS' );
@ListOfActivities = ( # print order
'ASTK_STUB', 'FILL_IN_HEAP', 'HEAP_CHK',
'RETURN', 'TAILCALL', 'UPDATE', 'PUSH_UPDF', 'UPDATE_PAP',
'INDIRECT', 'ARGS_CHK',
'CALL', 'STKADJ', 'ASTK', 'BSTK', 'RETREG', 'ARGREGS',
'OTHER_REDN', 'GC', 'UNKNOWN', 'OVERHEAD' );
@ListOfCats = ('LD', 'ST', 'ARITH', 'BR', 'SETHI', 'NOP', 'OTHER'); # 'FL-PT',
%Opcode2Cat = ();
$Opcode2Cat{'0'} = 'ARITH'; # IH_ADD
$Opcode2Cat{'1'} = 'ARITH'; # IH_ADDCC
$Opcode2Cat{'2'} = 'ARITH'; # IH_ADDX
$Opcode2Cat{'3'} = 'ARITH'; # IH_ADDXCC
$Opcode2Cat{'4'} = 'ARITH'; # IH_AND
$Opcode2Cat{'5'} = 'ARITH'; # IH_ANDCC
$Opcode2Cat{'6'} = 'ARITH'; # IH_ANDN
$Opcode2Cat{'7'} = 'ARITH'; # IH_ANDNCC
$Opcode2Cat{'8'} = 'BR'; # IH_BA
$Opcode2Cat{'9'} = 'BR'; # IH_BAA
$Opcode2Cat{'10'} = 'BR'; # IH_BCC
$Opcode2Cat{'11'} = 'BR'; # IH_BCCA
$Opcode2Cat{'12'} = 'BR'; # IH_BCS
$Opcode2Cat{'13'} = 'BR'; # IH_BCSA
$Opcode2Cat{'14'} = 'BR'; # IH_BE
$Opcode2Cat{'15'} = 'BR'; # IH_BEA
$Opcode2Cat{'16'} = 'BR'; # IH_BG
$Opcode2Cat{'17'} = 'BR'; # IH_BGA
$Opcode2Cat{'18'} = 'BR'; # IH_BGE
$Opcode2Cat{'19'} = 'BR'; # IH_BGEA
$Opcode2Cat{'20'} = 'BR'; # IH_BGU
$Opcode2Cat{'21'} = 'BR'; # IH_BGUA
$Opcode2Cat{'22'} = 'BR'; # IH_BL
$Opcode2Cat{'23'} = 'BR'; # IH_BLA
$Opcode2Cat{'24'} = 'BR'; # IH_BLE
$Opcode2Cat{'25'} = 'BR'; # IH_BLEA
$Opcode2Cat{'26'} = 'BR'; # IH_BLEU
$Opcode2Cat{'27'} = 'BR'; # IH_BLEUA
$Opcode2Cat{'28'} = 'BR'; # IH_BN
$Opcode2Cat{'29'} = 'BR'; # IH_BNA
$Opcode2Cat{'30'} = 'BR'; # IH_BNE
$Opcode2Cat{'31'} = 'BR'; # IH_BNEA
$Opcode2Cat{'32'} = 'BR'; # IH_BNEG
$Opcode2Cat{'33'} = 'BR'; # IH_BNEGA
$Opcode2Cat{'34'} = 'BR'; # IH_BPOS
$Opcode2Cat{'35'} = 'BR'; # IH_BPOSA
$Opcode2Cat{'36'} = 'BR'; # IH_BVC
$Opcode2Cat{'37'} = 'BR'; # IH_BVCA
$Opcode2Cat{'38'} = 'BR'; # IH_BVS
$Opcode2Cat{'39'} = 'BR'; # IH_BVSA
$Opcode2Cat{'40'} = 'BR'; # IH_CALL
$Opcode2Cat{'41'} = 'OTHER'; # IH_CB0
$Opcode2Cat{'42'} = 'OTHER'; # IH_CB0A
$Opcode2Cat{'43'} = 'OTHER'; # IH_CB01
$Opcode2Cat{'44'} = 'OTHER'; # IH_CB01A
$Opcode2Cat{'45'} = 'OTHER'; # IH_CB012
$Opcode2Cat{'46'} = 'OTHER'; # IH_CB012A
$Opcode2Cat{'47'} = 'OTHER'; # IH_CB013
$Opcode2Cat{'48'} = 'OTHER'; # IH_CB013A
$Opcode2Cat{'49'} = 'OTHER'; # IH_CB02
$Opcode2Cat{'50'} = 'OTHER'; # IH_CB02A
$Opcode2Cat{'51'} = 'OTHER'; # IH_CB023
$Opcode2Cat{'52'} = 'OTHER'; # IH_CB023A
$Opcode2Cat{'53'} = 'OTHER'; # IH_CB03
$Opcode2Cat{'54'} = 'OTHER'; # IH_CB03A
$Opcode2Cat{'55'} = 'OTHER'; # IH_CB1
$Opcode2Cat{'56'} = 'OTHER'; # IH_CB1A
$Opcode2Cat{'57'} = 'OTHER'; # IH_CB12
$Opcode2Cat{'58'} = 'OTHER'; # IH_CB12A
$Opcode2Cat{'59'} = 'OTHER'; # IH_CB123
$Opcode2Cat{'60'} = 'OTHER'; # IH_CB123A
$Opcode2Cat{'61'} = 'OTHER'; # IH_CB13
$Opcode2Cat{'62'} = 'OTHER'; # IH_CB13A
$Opcode2Cat{'63'} = 'OTHER'; # IH_CB2
$Opcode2Cat{'64'} = 'OTHER'; # IH_CB2A
$Opcode2Cat{'65'} = 'OTHER'; # IH_CB23
$Opcode2Cat{'66'} = 'OTHER'; # IH_CB23A
$Opcode2Cat{'67'} = 'OTHER'; # IH_CB3
$Opcode2Cat{'68'} = 'OTHER'; # IH_CB3A
$Opcode2Cat{'69'} = 'OTHER'; # IH_CBA
$Opcode2Cat{'70'} = 'OTHER'; # IH_CBAA
$Opcode2Cat{'71'} = 'OTHER'; # IH_CBN
$Opcode2Cat{'72'} = 'OTHER'; # IH_CBNA
$Opcode2Cat{'73'} = 'OTHER'; # IH_CPOP1
$Opcode2Cat{'74'} = 'OTHER'; # IH_CPOP2
$Opcode2Cat{'75'} = 'OTHER'; # 'FL-PT'; # IH_FABSS
$Opcode2Cat{'76'} = 'OTHER'; # 'FL-PT'; # IH_FADDD
$Opcode2Cat{'77'} = 'OTHER'; # 'FL-PT'; # IH_FADDQ
$Opcode2Cat{'78'} = 'OTHER'; # 'FL-PT'; # IH_FADDS
$Opcode2Cat{'79'} = 'OTHER'; # 'FL-PT'; # IH_FBA
$Opcode2Cat{'80'} = 'OTHER'; # 'FL-PT'; # IH_FBAA
$Opcode2Cat{'81'} = 'OTHER'; # 'FL-PT'; # IH_FBE
$Opcode2Cat{'82'} = 'OTHER'; # 'FL-PT'; # IH_FBEA
$Opcode2Cat{'83'} = 'OTHER'; # 'FL-PT'; # IH_FBG
$Opcode2Cat{'84'} = 'OTHER'; # 'FL-PT'; # IH_FBGA
$Opcode2Cat{'85'} = 'OTHER'; # 'FL-PT'; # IH_FBGE
$Opcode2Cat{'86'} = 'OTHER'; # 'FL-PT'; # IH_FBGEA
$Opcode2Cat{'87'} = 'OTHER'; # 'FL-PT'; # IH_FBL
$Opcode2Cat{'88'} = 'OTHER'; # 'FL-PT'; # IH_FBLA
$Opcode2Cat{'89'} = 'OTHER'; # 'FL-PT'; # IH_FBLE
$Opcode2Cat{'90'} = 'OTHER'; # 'FL-PT'; # IH_FBLEA
$Opcode2Cat{'91'} = 'OTHER'; # 'FL-PT'; # IH_FBLG
$Opcode2Cat{'92'} = 'OTHER'; # 'FL-PT'; # IH_FBLGA
$Opcode2Cat{'93'} = 'OTHER'; # 'FL-PT'; # IH_FBN
$Opcode2Cat{'94'} = 'OTHER'; # 'FL-PT'; # IH_FBNA
$Opcode2Cat{'95'} = 'OTHER'; # 'FL-PT'; # IH_FBNE
$Opcode2Cat{'96'} = 'OTHER'; # 'FL-PT'; # IH_FBNEA
$Opcode2Cat{'97'} = 'OTHER'; # 'FL-PT'; # IH_FBO
$Opcode2Cat{'98'} = 'OTHER'; # 'FL-PT'; # IH_FBOA
$Opcode2Cat{'99'} = 'OTHER'; # 'FL-PT'; # IH_FBU
$Opcode2Cat{'100'} = 'OTHER'; # 'FL-PT'; # IH_FBUA
$Opcode2Cat{'101'} = 'OTHER'; # 'FL-PT'; # IH_FBUE
$Opcode2Cat{'102'} = 'OTHER'; # 'FL-PT'; # IH_FBUEA
$Opcode2Cat{'103'} = 'OTHER'; # 'FL-PT'; # IH_FBUG
$Opcode2Cat{'104'} = 'OTHER'; # 'FL-PT'; # IH_FBUGA
$Opcode2Cat{'105'} = 'OTHER'; # 'FL-PT'; # IH_FBUGE
$Opcode2Cat{'106'} = 'OTHER'; # 'FL-PT'; # IH_FBUGEA
$Opcode2Cat{'107'} = 'OTHER'; # 'FL-PT'; # IH_FBUL
$Opcode2Cat{'108'} = 'OTHER'; # 'FL-PT'; # IH_FBULA
$Opcode2Cat{'109'} = 'OTHER'; # 'FL-PT'; # IH_FBULE
$Opcode2Cat{'110'} = 'OTHER'; # 'FL-PT'; # IH_FBULEA
$Opcode2Cat{'111'} = 'OTHER'; # 'FL-PT'; # IH_FCMPD
$Opcode2Cat{'112'} = 'OTHER'; # 'FL-PT'; # IH_FCMPED
$Opcode2Cat{'113'} = 'OTHER'; # 'FL-PT'; # IH_FCMPEQ
$Opcode2Cat{'114'} = 'OTHER'; # 'FL-PT'; # IH_FCMPES
$Opcode2Cat{'115'} = 'OTHER'; # 'FL-PT'; # IH_FCMPQ
$Opcode2Cat{'116'} = 'OTHER'; # 'FL-PT'; # IH_FCMPS
$Opcode2Cat{'117'} = 'OTHER'; # 'FL-PT'; # IH_FDIVD
$Opcode2Cat{'118'} = 'OTHER'; # 'FL-PT'; # IH_FDIVQ
$Opcode2Cat{'119'} = 'OTHER'; # 'FL-PT'; # IH_FDIVS
$Opcode2Cat{'120'} = 'OTHER'; # 'FL-PT'; # IH_FDMULQ
$Opcode2Cat{'121'} = 'OTHER'; # 'FL-PT'; # IH_FDTOI
$Opcode2Cat{'122'} = 'OTHER'; # 'FL-PT'; # IH_FDTOQ
$Opcode2Cat{'123'} = 'OTHER'; # 'FL-PT'; # IH_FDTOS
$Opcode2Cat{'124'} = 'OTHER'; # 'FL-PT'; # IH_FITOD
$Opcode2Cat{'125'} = 'OTHER'; # 'FL-PT'; # IH_FITOQ
$Opcode2Cat{'126'} = 'OTHER'; # 'FL-PT'; # IH_FITOS
$Opcode2Cat{'127'} = 'OTHER'; # IH_FLUSH
$Opcode2Cat{'128'} = 'OTHER'; # 'FL-PT'; # IH_FMOVS
$Opcode2Cat{'129'} = 'OTHER'; # 'FL-PT'; # IH_FMULD
$Opcode2Cat{'130'} = 'OTHER'; # 'FL-PT'; # IH_FMULQ
$Opcode2Cat{'131'} = 'OTHER'; # 'FL-PT'; # IH_FMULS
$Opcode2Cat{'132'} = 'OTHER'; # 'FL-PT'; # IH_FNEGS
$Opcode2Cat{'133'} = 'OTHER'; # 'FL-PT'; # IH_FQTOD
$Opcode2Cat{'134'} = 'OTHER'; # 'FL-PT'; # IH_FQTOI
$Opcode2Cat{'135'} = 'OTHER'; # 'FL-PT'; # IH_FQTOS
$Opcode2Cat{'136'} = 'OTHER'; # 'FL-PT'; # IH_FSMULD
$Opcode2Cat{'137'} = 'OTHER'; # 'FL-PT'; # IH_FSQRTD
$Opcode2Cat{'138'} = 'OTHER'; # 'FL-PT'; # IH_FSQRTQ
$Opcode2Cat{'139'} = 'OTHER'; # 'FL-PT'; # IH_FSQRTS
$Opcode2Cat{'140'} = 'OTHER'; # 'FL-PT'; # IH_FSTOD
$Opcode2Cat{'141'} = 'OTHER'; # 'FL-PT'; # IH_FSTOI
$Opcode2Cat{'142'} = 'OTHER'; # 'FL-PT'; # IH_FSTOQ
$Opcode2Cat{'143'} = 'OTHER'; # 'FL-PT'; # IH_FSUBD
$Opcode2Cat{'144'} = 'OTHER'; # 'FL-PT'; # IH_FSUBQ
$Opcode2Cat{'145'} = 'OTHER'; # 'FL-PT'; # IH_FSUBS
$Opcode2Cat{'146'} = 'BR'; # IH_JMPL
$Opcode2Cat{'147'} = 'LD'; # IH_LD
$Opcode2Cat{'148'} = 'LD'; # IH_LDA
$Opcode2Cat{'149'} = 'LD'; # IH_LDC
$Opcode2Cat{'150'} = 'LD'; # IH_LDCSR
$Opcode2Cat{'151'} = 'LD'; # IH_LDD
$Opcode2Cat{'152'} = 'LD'; # IH_LDDA
$Opcode2Cat{'153'} = 'LD'; # IH_LDDC
$Opcode2Cat{'154'} = 'LD'; # IH_LDDF
$Opcode2Cat{'155'} = 'LD'; # IH_LDF
$Opcode2Cat{'156'} = 'LD'; # IH_LDFSR
$Opcode2Cat{'157'} = 'LD'; # IH_LDSB
$Opcode2Cat{'158'} = 'LD'; # IH_LDSBA
$Opcode2Cat{'159'} = 'LD'; # IH_LDSH
$Opcode2Cat{'160'} = 'LD'; # IH_LDSHA
$Opcode2Cat{'161'} = 'LD'; # IH_LDSTUB
$Opcode2Cat{'162'} = 'LD'; # IH_LDSTUBA
$Opcode2Cat{'163'} = 'LD'; # IH_LDUB
$Opcode2Cat{'164'} = 'LD'; # IH_LDUBA
$Opcode2Cat{'165'} = 'LD'; # IH_LDUH
$Opcode2Cat{'166'} = 'LD'; # IH_LDUHA
$Opcode2Cat{'167'} = 'ARITH'; # IH_MULSCC
$Opcode2Cat{'168'} = 'NOP'; # IH_NOP
$Opcode2Cat{'169'} = 'ARITH'; # IH_OR
$Opcode2Cat{'170'} = 'ARITH'; # IH_ORCC
$Opcode2Cat{'171'} = 'ARITH'; # IH_ORN
$Opcode2Cat{'172'} = 'ARITH'; # IH_ORNCC
$Opcode2Cat{'173'} = 'OTHER'; # IH_RDASR
$Opcode2Cat{'174'} = 'OTHER'; # IH_RDPSR
$Opcode2Cat{'175'} = 'OTHER'; # IH_RDTBR
$Opcode2Cat{'176'} = 'OTHER'; # IH_RDWIM
$Opcode2Cat{'177'} = 'OTHER'; # IH_RDY
$Opcode2Cat{'178'} = 'OTHER'; # IH_RESTORE
$Opcode2Cat{'179'} = 'OTHER'; # IH_RETT
$Opcode2Cat{'180'} = 'OTHER'; # IH_SAVE
$Opcode2Cat{'181'} = 'ARITH'; # IH_SDIV
$Opcode2Cat{'182'} = 'ARITH'; # IH_SDIVCC
$Opcode2Cat{'183'} = 'SETHI'; # IH_SETHI
$Opcode2Cat{'184'} = 'ARITH'; # IH_SLL
$Opcode2Cat{'185'} = 'ARITH'; # IH_SMUL
$Opcode2Cat{'186'} = 'ARITH'; # IH_SMULCC
$Opcode2Cat{'187'} = 'ARITH'; # IH_SRA
$Opcode2Cat{'188'} = 'ARITH'; # IH_SRL
$Opcode2Cat{'189'} = 'ST'; # IH_ST
$Opcode2Cat{'190'} = 'ST'; # IH_STA
$Opcode2Cat{'191'} = 'ST'; # IH_STB
$Opcode2Cat{'192'} = 'ST'; # IH_STBA
$Opcode2Cat{'193'} = 'ST'; # IH_STBAR
$Opcode2Cat{'194'} = 'ST'; # IH_STC
$Opcode2Cat{'195'} = 'ST'; # IH_STCSR
$Opcode2Cat{'196'} = 'ST'; # IH_STD
$Opcode2Cat{'197'} = 'ST'; # IH_STDA
$Opcode2Cat{'198'} = 'ST'; # IH_STDC
$Opcode2Cat{'199'} = 'ST'; # IH_STDCQ
$Opcode2Cat{'200'} = 'ST'; # IH_STDF
$Opcode2Cat{'201'} = 'ST'; # IH_STDFQ
$Opcode2Cat{'202'} = 'ST'; # IH_STF
$Opcode2Cat{'203'} = 'ST'; # IH_STFSR
$Opcode2Cat{'204'} = 'ST'; # IH_STH
$Opcode2Cat{'205'} = 'ST'; # IH_STHA
$Opcode2Cat{'206'} = 'ARITH'; # IH_SUB
$Opcode2Cat{'207'} = 'ARITH'; # IH_SUBCC
$Opcode2Cat{'208'} = 'ARITH'; # IH_SUBX
$Opcode2Cat{'209'} = 'ARITH'; # IH_SUBXCC
$Opcode2Cat{'210'} = 'OTHER'; # IH_SWAP
$Opcode2Cat{'211'} = 'OTHER'; # IH_SWAPA
$Opcode2Cat{'212'} = 'OTHER'; # IH_TA
$Opcode2Cat{'213'} = 'OTHER'; # IH_TADDCC
$Opcode2Cat{'214'} = 'OTHER'; # IH_TADDCCTV
$Opcode2Cat{'215'} = 'OTHER'; # IH_TCC
$Opcode2Cat{'216'} = 'OTHER'; # IH_TCS
$Opcode2Cat{'217'} = 'OTHER'; # IH_TE
$Opcode2Cat{'218'} = 'OTHER'; # IH_TG
$Opcode2Cat{'219'} = 'OTHER'; # IH_TGE
$Opcode2Cat{'220'} = 'OTHER'; # IH_TGU
$Opcode2Cat{'221'} = 'OTHER'; # IH_TL
$Opcode2Cat{'222'} = 'OTHER'; # IH_TLE
$Opcode2Cat{'223'} = 'OTHER'; # IH_TLEU
$Opcode2Cat{'224'} = 'OTHER'; # IH_TN
$Opcode2Cat{'225'} = 'OTHER'; # IH_TNE
$Opcode2Cat{'226'} = 'OTHER'; # IH_TNEG
$Opcode2Cat{'227'} = 'OTHER'; # IH_TPOS
$Opcode2Cat{'228'} = 'OTHER'; # IH_TSUBCC
$Opcode2Cat{'229'} = 'OTHER'; # IH_TSUBCCTV
$Opcode2Cat{'230'} = 'OTHER'; # IH_TVC
$Opcode2Cat{'231'} = 'OTHER'; # IH_TVS
$Opcode2Cat{'232'} = 'ARITH'; # IH_UDIV
$Opcode2Cat{'233'} = 'ARITH'; # IH_UDIVCC
$Opcode2Cat{'234'} = 'ARITH'; # IH_UMUL
$Opcode2Cat{'235'} = 'ARITH'; # IH_UMULCC
$Opcode2Cat{'236'} = 'OTHER'; # IH_UNIMP
$Opcode2Cat{'237'} = 'OTHER'; # IH_WRASR
$Opcode2Cat{'238'} = 'OTHER'; # IH_WRPSR
$Opcode2Cat{'239'} = 'OTHER'; # IH_WRTBR
$Opcode2Cat{'240'} = 'OTHER'; # IH_WRWIM
$Opcode2Cat{'241'} = 'OTHER'; # IH_WRY
$Opcode2Cat{'242'} = 'ARITH'; # IH_XNOR
$Opcode2Cat{'243'} = 'ARITH'; # IH_XNORCC
$Opcode2Cat{'244'} = 'ARITH'; # IH_XOR
$Opcode2Cat{'245'} = 'ARITH'; # IH_XORCC
}
|