-
Notifications
You must be signed in to change notification settings - Fork 397
/
Copy pathOMRInstOpCode.enum
1227 lines (1224 loc) · 70.9 KB
/
OMRInstOpCode.enum
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
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
/*******************************************************************************
* Copyright (c) 2019, 2020 IBM Corp. and others
*
* This program and the accompanying materials are made available under
* the terms of the Eclipse Public License 2.0 which accompanies this
* distribution and is available at http://eclipse.org/legal/epl-2.0
* or the Apache License, Version 2.0 which accompanies this distribution
* and is available at https://www.apache.org/licenses/LICENSE-2.0.
*
* This Source Code may also be made available under the following Secondary
* Licenses when the conditions for such availability set forth in the
* Eclipse Public License, v. 2.0 are satisfied: GNU General Public License,
* version 2 with the GNU Classpath Exception [1] and GNU General Public
* License, version 2 with the OpenJDK Assembly Exception [2].
*
* [1] https://www.gnu.org/software/classpath/license.html
* [2] http://openjdk.java.net/legal/assembly-exception.html
*
* SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception
*******************************************************************************/
/*
* This file will be included within an enum. Only comments and enumerator
* definitions are permitted.
*/
#include "compiler/codegen/OMRInstOpCode.enum"
add, // Add
add_r, // Add Rc=1
addc, // Add carrying
addc_r, // Add carrying Rc=1
addco, // Add carrying setting overflow
addco_r, // Add carrying setting overflow Rc=1
adde, // Add extended
adde_r, // Add extended Rc=1
addeo, // Add extended setting overflow
addeo_r, // Add extended setting overflow Rc=1
addi, // Add immediate
addic, // Add immediate carrying
addic_r, // Add immediate carrying Rc=1
addi2, // Add imm (carry bit set only if record form)
addi2_r, // Add imm (carry bit set only if record form) Rc=1
addis, // Add immediate shifted
addme, // Add to minus one extended
addme_r, // Add to minus one extended Rc=1
addmeo, // Add to minus one extended setting overflow
addmeo_r, // Add to minus one extended setting overflow Rc=1
addo, // Add setting overflow
addo_r, // Add setting overflow Rc=1
addpcis, // Add PC Immediate Shifted
addze, // Add to zero extended
addze_r, // Add to zero extended Rc=1
addzeo, // Add to zero extended setting overflow
addzeo_r, // Add to zero extended setting overflow Rc=1
AND, // AND
and_r, // AND Rc=1
andc, // AND with complement
andc_r, // AND with complement Rc=1
// andcxor, // AND with Complement & XOR
addex, // Add Extended using alternate carry bits
addex_r, // Add Extended using alternate carry bits Rc=1
andi_r, // AND immediate
andis_r, // AND immediate shifted
b, // Unconditional branch
bctr, // Branch to count register
bctrl, // Branch to count register and link
bdnz, // Branch if CTR!=0 after decrementing it
bdz, // Branch if CTR==0 after decrementing it
beq, // Branch if equal
beql, // Branch and link if equal
bfctr, // Branch false to count register
bge, // Branch if greater than or equal
bgel, // Branch and link if greater than or equal
bgt, // Branch if greater than
bgtl, // Branch and link if greater than
bl, // Branch and link
ble, // Branch if less than or equal
blel, // Branch and link if less than or equal
blt, // Branch if less than
bltl, // Branch and link if less than
blr, // Branch to link register
blrl, // Branch to link register and link
bne, // Branch if not equal
bnel, // Branch and link if not equal
bnun, // Branch if not unordered
btctr, // Branch true to count register
bun, // Branch if unordered
beqlr, // Branch to link register if equal
bgelr, // Branch to link register if greater than or equal
bgtlr, // Branch to link register if greater than
blelr, // Branch to link register if less than or equal
bltlr, // Branch to link register if less than
bnelr, // Branch to link register if not equal
cmp4, // Compare word algebraic
cmp8, // Compare dword algebraic
cmpi4, // Compare word immediate algebraic
cmpi8, // Compare dword immediate algebraic
cmpl4, // Compare word logical
cmpl8, // Compare dword logical
cmpli4, // Compare word immediate logical
cmpli8, // Compare dword immediate logical
cmprb, // Compare Ranged Byte
cmpeqb, // Compare Equal Byte
cntlzd, // Count leading zeros dword
cntlzd_r, // Count leading zeros dword Rc=1
cntlzw, // Count leading zeros word
cntlzw_r, // Count leading zeros word Rc=1
// cnttzw, // Count Trailing Zeros Word
// cnttzw_r, // Count Trailing Zeros Word Rc=1
// cnttzd, // Count Trailing Zeros Dword
// cnttzd_r, // Count Trailing Zeros Dword Rc=1
crand, // Condition register AND
crandc, // Condition register AND with complement
creqv, // Condition register equivalent
crnand, // Condition register NAND
crnor, // Condition register NOR
cror, // Condition register OR
crorc, // Condition register OR with complement
crxor, // Condition register XOR
dadd, // Add (DFP64)
dadd_r, // Add (DFP64) Rc=1
darn, // Deliver a random number
dcbt, // Data cache block touch
dcbtst, // Data cache block touch for store
dcbtstt, // Data cache block touch for store - transient
dcbtt, // Data cache block touch - transient
dcbz, // Data cache block zero
dcffix, // Convert From Fixed (DFP64)
dcffix_r, // Convert From Fixed (DFP64) Rc=1
dcffixq, // Convert From Fixed (DFP128)
dcffixq_r, // Convert From Fixed (DFP128) Rc=1
dcmpu, // Unordered Compare (DFP64)
dctfix, // Convert to Fixed (DFP64)
dctfix_r, // Convert to Fixed (DFP64) Rc=1
ddedpd, // Decode DPD to BCD (DFP64)
ddedpd_r, // Decode DPD to BCD (DFP64) Rc=1
ddiv, // Divide (DFP64)
ddiv_r, // Divide (DFP64) Rc=1
denbcdu, // Encode Unsigned BCD to DFP (DFP64)
denbcdu_r, // Encode Unsigned BCD to DFP (DFP64) Rc=1
divd, // Divide dword
divd_r, // Divide dword Rc=1
diex, // Insert Biased Exponent (DFP64)
diex_r, // Insert Biased Exponent (DFP64) Rc=1
divdo, // Divide dword setting overflow
divdo_r, // Divide dword setting overflow Rc=1
divdu, // Divide dword unsigned
divdu_r, // Divide dword unsigned Rc=1
divduo, // Divide dword unsigned setting overflow
divduo_r, // Divide dword unsigned setting overflow Rc=1
divw, // Divide word
divw_r, // Divide word Rc=1
divwo, // Divide word setting overflow
divwo_r, // Divide word setting overflow Rc=1
divwu, // Divide word unsigned
divwu_r, // Divide word unsigned Rc=1
divwuo, // Divide word unsigned setting overflow
divwuo_r, // Divide word unsigned setting overflow Rc=1
dmul, // Multiply (DFP64)
dmul_r, // Multiply (DFP64) Rc=1
dqua, // Quantize (DFP64)
dqua_r, // Quantize (DFP64) Rc=1
drrnd, // Reround (DFP64)
drrnd_r, // Reround (DFP64) Rc=1
drdpq, // Round To DFP64 (DFP128)
drdpq_r, // Round To DFP64 (DFP128) Rc=1
dsub, // Subtract (DFP64)
dsub_r, // Subtract (DFP64) Rc=1
dtstdc, // Test Data Class (DFP64)
dtstdg, // Test Data Group (DFP64)
// dtstsfi, // DFP Test Significance Immediate
// dtstsfiq, // DFP Test Significance Immediate Quad
dxex, // Extract Biased Exponent (DFP64)
dxex_r, // Extract Biased Exponent (DFP64) Rc=1
eieio, // Enforce in order execution of I/O
eqv, // Equivalent
eqv_r, // Equivalent Rc=1
extsb, // Extend sign byte
extsb_r, // Extend sign byte Rc=1
extsh, // Extend sign half word
extsh_r, // Extend sign half word Rc=1
extsw, // Extend sign word
extsw_r, // Extend sign word Rc=1
extswsli, // Extend Sign Word & Shift Left Immediate
extswsli_r, // Extend Sign Word & Shift Left Immediate Rc=1
fabs, // Floating absolute value
fadd, // Floating add
fadds, // Floating add single
fcfid, // Floating convert from integer dword
fcfidu, // Floating convert from integer dword unsigned
fcfids, // Floating convert from integer dword single
fcfidus, // Floating convert from integer dword unsigned single
fcmpo, // Floating compare ordered
fcmpu, // Floating compare unordered
fcpsgn, // Floating copy sign
fctid, // Floating convert to integer dword
fctidz, // Floating convert to integer dword round toward zero
fctiw, // Floating convert to integer word
fctiwz, // Floating convert to integer word round toward zero
fdiv, // Floating divide double
fdivs, // Floating divide single
fmadd, // Floating multiply add double
fmadds, // Floating multiply add single
fmr, // Floating move register
fmsub, // Floating multiply subtract double
fmsubs, // Floating multiply subtract single
fmul, // Floating multiply double
fmuls, // Floating multiply single
fnabs, // Floating negative absolute value
fneg, // Floating negate
fnmadd, // Floating negative multiply add double
fnmadds, // Floating negative multiply add single
fnmsub, // Floating negative multiply subtract double
fnmsubs, // Floating negative multiply subtract single
fres, // Floating reciprocal estimate single
frim, // Floating round to minus (floor) double
frin, // Floating round to nearest double
frip, // Floating round to plus (ceil) double
frsp, // Floating round to single
frsqrte, // Floating reciprocal square root estimate
fsel, // Floating select
fsqrt, // Floating square root double
fsqrts, // Floating square root single
fsub, // Floating subtract double
fsubs, // Floating subtract single
isync, // Instruction synchronize
lbz, // Load byte and zero extend
lbzu, // Load byte and zero extend with update
lbzux, // Load byte and zero extend with update indexed
lbzx, // Load byte and zero extend indexed
ld, // Load dword
ldarx, // Load dword and reserve indexed
ldu, // Load dword with update
ldux, // Load dword with update indexed
ldx, // Load dword indexed
lfd, // Load floating point double
lfdp, // Load floating point double pair
lfdu, // Load floating point double with update
lfdux, // Load floating point double with update indexed
lfdx, // Load floating point double indexed
lfdpx, // Load floating point double pair indexed
lfiwax, // Load floating point as integer word algebraic
lfiwzx, // Load floating point as integer word and zero indexed
lfs, // Load floating short
lfsu, // Load floating short with update
lfsux, // Load floating short with update indexed
lfsx, // Load floating short indexed
lha, // Load half word algebraic
lhau, // Load half word algebraic
lhaux, // Load half word algebraic
lhax, // Load half word algebraic
lhbrx, // Load half word byte reversed indexed
lhz, // Load half word and zero extend
lhzu, // Load half word and zero extend with update
lhzux, // Load half word and zero extend with update indexed
lhzx, // Load half word and zero extend indexed
li, // Load immediate
lis, // Load immediate shifted
lmw, // Load multiple word
lswi, // Load string word immediate
lswx, // Load string word indexed
lwa, // Load word algebraic
lwarx, // Load word and reserve indexed
lwaux, // Load word algebraic with update indexed
lwax, // Load word algebraic indexed
lwbrx, // Load word byte reverse indexed
ldbrx, // Load doubleword byte reverse indexed
lwsync, // Lightweight Synchronize
lwz, // Load word and zero extend
lwzu, // Load word and zero extend with update
lwzux, // Load word and zero with update indexed
lwzx, // Load word and zero extend indexed
// maddhd, // Multiply-Add High Dword
// maddhdu, // Multiply-Add High Dword Unsigned
maddld, // Multiply-Add Low Dword
mcrf, // Move condition register field
mcrfs, // Move to condition register field from FPSCR
mcrxr, // Move to condition register field from XER
// mcrxrx, // Move XER to CR Extended
mfcr, // Move from condition register to gpr
mfocrf, // Move from one condition register field to gpr (XFX-form)
mfctr, // Move from count register to gpr
mffgpr, // Move Floating-Point From GPR
mffs, // Move from FPSCR to gpr
mflr, // Move from link register to gpr
mfmsr, // Move from machine state register
mfspr, // Move from special purpose register to gpr
mftexasr, // Move from transaction exception and summary register to gpr
mftexasru, // Move from upper 32 bits of transaction exception and summary register to gpr
mftgpr, // Move Floating-Point To GPR
// mfvsrld, // Move from VSR lower Dword
modud, // Modulo unsigned DWord
modsd, // Modulo signed DWord
moduw, // Modulo unsigned word
modsw, // Modulo signed word
mr, // Register copy
// msgsync, // Message synchronize
mtocrf, // Move to one condition register field from gpr
mtcr, // Move to condition register from gpr
mtctr, // Move to count register from gpr
mtfsb0, // Move to FPSCR bit 0
mtfsb1, // Move to FPSCR bit 1
mtfsfl, // Move to FPSCR fields L=1
mtfsfl_r, // Move to FPSCR fields L=1 Rc=1
mtfsf, // Move to FPSCR fields L=0/W=0
mtfsf_r, // Move to FPSCR fields L=0/W=0 Rc=1
mtfsfw, // Move to FPSCR fields L=0/W=1
mtfsfw_r, // Move to FPSCR fields L=0/W=1 Rc=1
mtfsfi, // Move to FPSCR field immediate
mtfsfi_r, // Move to FPSCR field immediate Rc=1
mtlr, // Move to link register from gpr
mtmsr, // Move to machine state register
mtspr, // Move to special purpose register
mfvsrd, // Move From VSR Doubleword
mfvsrwz, // Move From VSR Word and Zero
mtvsrd, // Move To VSR Doubleword
mtvsrwz, // Move To VSR Word and Zero
mtvsrwa, // Move To VSR Word and Zero Sign-Extend
// mtvsrdd, // Move to VSR double Dword
// mtvsrws, // Move to VSR word & wplat
mulhd, // Multiply high dword
mulhd_r, // Multiply high dword Rc=1
mulhdu, // Multiply high dword unsigned
mulhdu_r, // Multiply high dword unsigned Rc=1
mulhw, // Multiply high word
mulhw_r, // Multiply high word Rc=1
mulhwu, // Multiply high word unsigned
mulhwu_r, // Multiply high word unsigned Rc=1
mulld, // Multiply low dword
mulld_r, // Multiply low dword Rc=1
mulldo, // Multiply low dword setting overflow
mulldo_r, // Multiply low dword setting overflow Rc=1
mulli, // Multiply low immediate
mullw, // Multiply low word
mullw_r, // Multiply low word Rc=1
mullwo, // Multiply low word setting overflow
mullwo_r, // Multiply low word setting overflow Rc=1
nand, // NAND
nand_r, // NAND Rc=1
neg, // Negate
neg_r, // Negate Rc=1
nego, // Negate setting overflow
nego_r, // Negate setting overflow Rc=1
nor, // NOR
nor_r, // NOR Rc=1
OR, // OR
or_r, // OR Rc=1
orc, // OR with complement
orc_r, // OR with complement Rc=1
ori, // OR immediate
oris, // OR immediate shifted
popcntd, // Population count dword
popcntw, // Population count word
rfi, // Return from interrupt
rldcl, // Rotate left dword then clear left
rldcl_r, // Rotate left dword then clear left Rc=1
rldcr, // Rotate left dword then clear right
rldcr_r, // Rotate left dword then clear right Rc=1
rldic, // Rotate left dword immediate then clear
rldic_r, // Rotate left dword immediate then clear Rc=1
rldicl, // Rotate left dword immediate then clear left
rldicl_r, // Rotate left dword immediate then clear left Rc=1
rldicr, // Rotate left dword immediate then clear right
rldicr_r, // Rotate left dword immediate then clear right Rc=1
rldimi, // Rotate left dword immediate then mask insert
rldimi_r, // Rotate left dword immediate then mask insert Rc=1
rlwimi, // Rotate left word immediate then mask insert
rlwimi_r, // Rotate left word immediate then mask insert Rc=1
rlwinm, // Rotate left word immediate then AND with mask
rlwinm_r, // Rotate left word immediate then AND with mask Rc=1
rlwnm, // Rotate left word then AND with mask
rlwnm_r, // Rotate left word then AND with mask Rc=1
setb, // Set Boolean
// slbsync, // SLB Synchronize
sld, // Shift left dword
sld_r, // Shift left dword Rc=1
slw, // Shift left word
slw_r, // Shift left word Rc=1
srad, // Shift right algebraic dword
srad_r, // Shift right algebraic dword Rc=1
sradi, // Shift right algebraic dword immediate
sradi_r, // Shift right algebraic dword immediate Rc=1
sraw, // Shift right algebraic word
sraw_r, // Shift right algebraic word Rc=1
srawi, // Shift right algebraic word immediate
srawi_r, // Shift right algebraic word immediate Rc=1
srd, // Shift right dword
srd_r, // Shift right dword Rc=1
srw, // Shift right word
srw_r, // Shift right word Rc=1
stb, // Store byte
stbu, // Store byte with update
stbux, // Store byte with update indexed
stbx, // Store byte indexed
std, // Store dword
stdcx_r, // Store word conditional indexed
stdu, // Store dword with update
stdux, // Store dword with update indexed
stdx, // Store dword indexed
stfd, // Store float double
stfdp, // Store float double pair
stfdu, // Store float double with update
stfdux, // Store float double with update indexed
stfdx, // Store float double indexed
stfdpx, // Store float double pair indexed
stfiwx, // Store float as integer word indexed
stfs, // Store float single
stfsu, // Store float single with update
stfsux, // Store float single with update indexed
stfsx, // Store float single indexed
sth, // Store half word
sthbrx, // Store half word byte reversed indexed
sthu, // Store half word with update
sthux, // Store half word with update indexed
sthx, // Store half word indexed
stmw, // Store multiple word
// stop, // The thread is placed into power-saving mode and execution is stopped
stswi, // Store string word immediate
stswx, // Store string word indexed
stw, // Store word
stwbrx, // Store word byte reverse indexed
stdbrx, // Store doubleword byte reverse indexed
stwcx_r, // Store word conditional indexed
stwu, // Store word with update
stwux, // Store word with update indexed
stwx, // Store word indexed
subf, // Subtract from
subf_r, // Subtract from Rc=1
subfc, // Subtract from carrying
subfc_r, // Subtract from carrying Rc=1
subfco, // Subtract from carrying setting overflow
subfco_r, // Subtract from carrying setting overflow Rc=1
subfe, // Subtract from extended
subfe_r, // Subtract from extended Rc=1
subfeo, // Subtract from extended setting overflow
subfeo_r, // Subtract from extended setting overflow Rc=1
subfic, // Subtract from immediate carrying
subfme, // Subtract from minus one extended
subfme_r, // Subtract from minus one extended Rc=1
subfmeo, // Subtract from minus one extended setting overflow
subfmeo_r, // Subtract from minus one extended setting overflow Rc=1
subfze, // Subtract from zero extended
subfze_r, // Subtract from zero extended Rc=1
subfzeo, // Subtract from zero extended setting overflow
subfzeo_r, // Subtract from zero extended setting overflow Rc=1
sync, // Synchronize
tabort_r, // Transactional Memory abort
tabortdeq_r, // Transactional Memory abort dword if equal
tabortdeqi_r, // Transactional Memory abort dword if equal to immediate value
tabortdge_r, // Transactional Memory abort dword if greater than or equal to
tabortdgei_r, // Transactional Memory abort dword if greater than or equal to immediate
tabortdgt_r, // Transactional Memory abort dword if greater than
tabortdgti_r, // Transactional Memory abort dword if greater than immediate
tabortdle_r, // Transactional Memory abort dword if less than or equal to
tabortdlei_r, // Transactional Memory abort dword if less than or equal to immediate
tabortdlge_r, // Transactional Memory abort dword if logically greater than or equal to
tabortdlgei_r, // Transactional Memory abort dword if logically greater than or equal to immediate
tabortdlgt_r, // Transactional Memory abort dword if logically greater than
tabortdlgti_r, // Transactional Memory abort dword if logically greater than immediate
tabortdlle_r, // Transactional Memory abort dword if logically less than or equal to
tabortdllei_r, // Transactional Memory abort dword if logically less than or equal to immediate
tabortdllt_r, // Transactional Memory abort dword if logically less than
tabortdllti_r, // Transactional Memory abort dword if logically less than immediate
tabortdlt_r, // Transactional Memory abort dword if less than
tabortdlti_r, // Transactional Memory abort dword if less than immediate
tabortdneq_r, // Transactional Memory abort dword if not equal to
tabortdneqi_r, // Transactional Memory abort dword if not equal to immediate
tabortweq_r, // Transactional Memory abort if equal
tabortweqi_r, // Transactional Memory abort if equal to immediate value
tabortwge_r, // Transactional Memory abort if greater than or equal to
tabortwgei_r, // Transactional Memory abort if greater than or equal to immediate
tabortwgt_r, // Transactional Memory abort if greater than
tabortwgti_r, // Transactional Memory abort if greater than immediate
tabortwle_r, // Transactional Memory abort if less than or equal to
tabortwlei_r, // Transactional Memory abort if less than or equal to immediate
tabortwlge_r, // Transactional Memory abort if logically greater than or equal to
tabortwlgei_r, // Transactional Memory abort if logically greater than or equal to immediate
tabortwlgt_r, // Transactional Memory abort if logically greater than
tabortwlgti_r, // Transactional Memory abort if logically greater than immediate
tabortwlle_r, // Transactional Memory abort if logically less than or equal to
tabortwllei_r, // Transactional Memory abort if logically less than or equal to immediate
tabortwllt_r, // Transactional Memory abort if logically less than
tabortwllti_r, // Transactional Memory abort if logically less than immediate
tabortwlt_r, // Transactional Memory abort if less than
tabortwlti_r, // Transactional Memory abort if less than immediate
tabortwneq_r, // Transactional Memory abort if not equal to
tabortwneqi_r, // Transactional Memory abort if not equal to immediate
tbegin_r, // Begin transaction
tbeginro_r, // Begin roll-back only transaction
tend_r, // End transaction (supports nesting)
tendall_r, // End transaction
tdeq, // Trap dword if equal
tdeqi, // Trap dword if equal to immediate value
tdge, // Trap dword if greater than or equal to
tdgei, // Trap dword if greater than or equal to immediate value
tdgt, // Trap dword if greater than
tdgti, // Trap dword if greater than immediate value
tdle, // Trap dword if less than or equal to
tdlei, // Trap dword if less than or equal to immediate value
tdlge, // Trap dword if logically greater than or equal to
tdlgei, // Trap dword if logically greater than or equal to immediate value
tdlgt, // Trap dword if logically greater than
tdlgti, // Trap dword if logically greater than immediate value
tdlle, // Trap dword if logically less than or equal to
tdllei, // Trap dword if logically less than or equal to immediate value
tdllt, // Trap dword if logically less than
tdllti, // Trap dword if logically less than immediate value
tdlt, // Trap dword if less than
tdlti, // Trap dword if less than immediate value
tdneq, // Trap dword if not equal
tdneqi, // Trap dword if not equal to immediate value
trap, // Unconditional trap
tweq, // Trap word if equal
tweqi, // Trap word if equal to immediate value
twge, // Trap word if greater than or equal to
twgei, // Trap word if greater than or equal to immediate value
twgt, // Trap word if greater than
twgti, // Trap word if greater than immediate value
twle, // Trap word if less than or equal to
twlei, // Trap word if less than or equal to immediate value
twlge, // Trap word if logically greater than or equal to
twlgei, // Trap word if logically greater than or equal to immediate value
twlgt, // Trap word if logically greater than
twlgti, // Trap word if logically greater than immediate value
twlle, // Trap word if logically less than or equal to
twllei, // Trap word if logically less than or equal to immediate value
twllt, // Trap word if logically less than
twllti, // Trap word if logically less than immediate value
twlt, // Trap word if less than
twlti, // Trap word if less than immediate value
twneq, // Trap word if not equal
twneqi, // Trap word if not equal to immediate value
XOR, // XOR
xor_r, // XOR Rc=1
// xor3, // XOR 3-way
xori, // XOR immediate
xoris, // XOR immediate shifted
nop, // NoOp (ori)
genop, // Group Ending NoOp (ori)
shdfence, // Scheduling Fence
// rxor, // Rotate & XOR
wrtbar, // Write barrier directive
probenop, // Probe NOP (for RI)
iflong, // compare and branch long
idiv, // integer divide
ldiv, // long divide for 64 bit target
irem, // integer remainder
lrem, // long remainder for 64 bit target
d2i, // converts from double to integer
d2l, // converts from double to long
// bcdcpsgn_r, // Decimal copySign & record
// bcdcfn_r, // Decimal convert from national & record
// bcdcfsq_r, // Decimal convert from signed qword & record
// bcdcfz_r, // Decimal convert from zoned & record
// bcdctn_r, // Decimal convert to national & record
// bcdctsq_r, // Decimal convert to signed qword & record
// bcdctz_r, // Decimal convert to zoned & record
// bcds_r, // Decimal shift & record
// bcdsetsgn_r, // Decimal set Sign & record
// bcdsr_r, // Decimal shift & round & record
// bcdtrunc_r, // Decimal truncate & record
// bcdus_r, // Decimal unsigned shift & record
// bcdutrunc_r, // Decimal unsigned truncate & record
lvsl, // Load vector for shift left
lvsr, // Load vector for shift right
lvx, // Load vector indexed
lvebx, // Load vector element byte indexed
lvehx, // Load vector element halfword indexed
lvewx, // Load vector element word indexed
// mtvscr, // Move To VSCR
// mfvscr, // Move From VSCR
stvx, // store vector indexed
stvebx, // store vector element byte indexed
stvehx, // store vector element halfword indexed
stvewx, // store vector element word indexed
// vabsdub, // vector absolute difference unsigned byte
// vabsduh, // vector absolute difference unsigned hword
// vabsduw, // vector absolute difference unsigned word
vand, // vector logical and
vandc, // vector logical and with complement
vclzlsbb, // vector count leading zero least-significant bits byte
vctzlsbb, // vector count trailing zero least-significant bits byte
// vctzb, // vector count trailing zeros Byte
// vctzh, // vector count trailing zeros Hword
// vctzw, // vector count trailing zeros Word
// vctzd, // vector count trailing zeros Dword
// vextractub, // vector extract unsigned Byte
// vextractuh, // vector extract unsigned Hword
// vextractuw, // vector extract unsigned Word
// vextractd, // vector extract Dword
// vextsb2w, // vector extend sign byte to Word
// vextsh2w, // vector extend sign hword to Word
// vextsb2d, // vector extend sign byte to Dword
// vextsh2d, // vector extend sign hword to Dword
// vextsw2d, // vector extend sign word to Dword
// vextublx, // vector extract unsigned byte left-indexed
// vextuhlx, // vector extract unsigned hword left-indexed
// vextuwlx, // vector extract unsigned word left-indexed
// vextubrx, // vector extract unsigned byte right-indexed
// vextuhrx, // vector extract unsigned hword right-indexed
// vextuwrx, // vector extract unsigned word right-indexed
// vgbbd, // Vector Gather Bits by Byte by Dword
// vinsertb, // vector insert Byte
// vinserth, // vector insert Hword
// vinsertw, // vector insert Word
// vinsertd, // vector insert Dword
// vmaxud, // Vector Maximum Unsigned Dword
// vminsd, // Vector Minimum Signed Dword
// vmul10cuq, // vector multiply-by-10 & write carry unsigned qword
// vmul10ecuq, // vector multiply-by-10 extended & write carry unsigned qword
// vmul10uq, // vector multiply-by-10 unsigned qword
// vmul10euq, // vector multiply-by-10 extended unsigned qword
// vmulesw, // Vector Multiply Even Signed Word
// vmuleuw, // Vector Multiply Even Unsigned Word
// vmulosw, // Vector Multiply Odd Signed Word
// vmulouw, // Vector Multiply Odd Unsigned Word
// vnegw, // vector negate word
// vnegd, // vector negate DWord
// vprtybw, // vector parity byte word
// vprtybd, // vector parity byte DWord
// vprtybq, // vector parity byte qword
// vmr, // vector move register
vor, // vector or
// vorc, // Vector Logical OR with Complement
vxor, // vector xor
// vnand, // Vector Logical NAND
// vncipher, // Vector AES Inverse Cipher
// vncipherlast, // Vector AES Inverse Cipher Last
vnor, // vector nor
vperm, // vector permute
// vpermr, // vector permute right-indexed
// vbpermd, // vector bit permute DWord
vbpermq, // Vector Bit Permute Qword
// vextractbm, // Vector Extract Byte Mask
// vrld, // Vector Rotate Left Dword
// vsbox, // Vector AES SubBytes
vsel, // vector conditional select
// vsld, // Vector Shift Left Dword
// vsrad, // Vector Shift Right Algebraic Dword
// vsrd, // Vector Shift Right Dword
// vsubcuq, // Vector Subtract & write Carry Unsigned Qword
// vsubecuq, // Vector Subtract Extended & write Carry Unsigned Qword
// vsubeuqm, // Vector Subtract Extended Unsigned Qword Modulo
// vsubuqm, // Vector Subtract Unsigned Qword Modulo
vsumsws, // vector sum across signed word saturate
vsum2sws, // vector sum across partial signed word saturate
vsum4sbs, // vector sum across partial signed byte saturate
vsum4shs, // vector sum across partial signed halfword saturate
vsum4ubs, // vector sum across partial unsigned byte saturate
vspltb, // vector splat byte
vsplth, // vector splat halfword
vspltw, // vector splat word
vspltisb, // vector splat immediate signed byte
vspltish, // vector splat immediate signed halfword
vspltisw, // vector splat immediate signed word
vsl, // vector shift left
vslb, // vector shift left byte
vsldoi, // vector shift left double by octet immediate
vslh, // vector shift left halfword
vslo, // vector shift left by octet
vslw, // vector shift left word
vsr, // vector shift right
vsrab, // vector shift right algebraic byte
vsrah, // vector shift right algebraic halfword
vsraw, // vector shift right algebraic word
vsrb, // vector shift right byte
vsrh, // vector shift right halfword
vsro, // vector shift right by octet
vsrw, // vector shift right word
// vsrv, // vector shift right variable
// vslv, // vector shift left variable
vrlb, // vector rotate left byte
vrlh, // vector rotate left halfword
vrlw, // vector rotate left word
// vrlwmi, // vector rotate left word then mask insert
// vrldmi, // vector rotate left DWord then mask insert
// vrlwnm, // vector rotate left word then and with mask
// vrldnm, // vector rotate left DWord then and with mask
// vaddcuw, // Vector Add & Write Carry-Out Unsigned Word
// vaddcuq, // Vector Add & write Carry Unsigned Qword
// vaddecuq, // Vector Add Extended & write Carry Unsigned Qword
// vaddeuqm, // Vector Add Extended Unsigned Qword Modulo
vaddsbs, // vector add signed byte saturate
vaddshs, // vector add signed halfword saturate
vaddsws, // vector add signed word saturate
vaddubm, // vector add unsigned byte modulo
vaddubs, // vector add unsigned byte saturate
vaddudm, // Vector Add Unsigned Dword Modulo
vadduhm, // vector add unsigned halfword modulo
vadduhs, // vector add unsigned halfword saturate
vadduwm, // vector add unsigned word modulo
vadduws, // vector add unsigned word saturate
// vadduqm, // Vector Add Unsigned Qword Modulo
// vavgsb, // Vector Average Signed Byte
// vavgsh, // Vector Average Signed Hword
// vavgsw, // Vector Average Signed Word
// vavgub, // Vector Average Unsigned Byte
// vavguh, // Vector Average Unsigned Hword
// vavguw, // Vector Average Unsigned Word
// vsubcuw, // Vector Subtract & Write Carry-Out Unsigned Word
vsubsbs, // vector subtract signed byte saturate
vsubshs, // vector subtract signed halfword saturate
vsubsws, // vector subtract signed word saturate
vsububm, // vector subtract unsigned byte modulo
vsububs, // vector subtract unsigned byte saturate
vsubudm, // vector subtract unsigned Dword modulo
vsubuhm, // vector subtract unsigned halfword modulo
vsubuhs, // vector subtract unsigned halfword saturate
vsubuwm, // vector subtract unsigned word modulo
vsubuws, // vector subtract unsigned word saturate
// vmhaddshs, // Vector Multiply-High-Add Signed Hword Saturate
// vmhraddshs, // Vector Multiply-High-Round-Add Signed Hword Saturate
// vmladduhm, // Vector Multiply-Low-Add Unsigned Hword Modulo
// vmsummbm, // Vector Multiply-Sum Mixed Byte Modulo
// vmsumshm, // Vector Multiply-Sum Signed Hword Modulo
// vmsumshs, // Vector Multiply-Sum Signed Hword Saturate
// vmsumubm, // Vector Multiply-Sum Unsigned Byte Modulo
// vmsumuhs, // Vector Multiply-Sum Unsigned Hword Saturate
// vmulesb, // Vector Multiply Even Signed Byte
// vmuleub, // Vector Multiply Even Unsigned Byte
// vmuleuh, // Vector Multiply Even Unsigned Hword
// vmulosb, // Vector Multiply Odd Signed Byte
// vmuloub, // Vector Multiply Odd Unsigned Byte
vmulesh, // vector multiply even signed halfword
vmulosh, // vector multiply odd signed halfword
vmulouh, // vector multiply odd unsigned halfword
vmuluwm, // vector multiply unsigned word modulo
vminsb, // vector minimum signed byte
vminsh, // vector minimum signed halfword
vminsw, // vector minimum signed word
vminub, // vector minimum unsigned byte
vminuh, // vector minimum unsigned halfword
vminuw, // vector minimum unsigned word
vmaxsb, // vector maximum signed byte
vmaxsh, // vector maximum signed halfword
vmaxsw, // vector maximum signed word
vmaxub, // vector maximum unsigned byte
vmaxuh, // vector maximum unsigned halfword
vmaxuw, // vector maximum unsigned word
// vmsumudm, // Vector Multiply-Sum Unsigned Dword
vmsumuhm, // vector multiply-sum unsigned halfword word modulo
// vcipher, // Vector AES Cipher
// vcipherlast, // Vector AES Cipher Last
// vclzb, // Vector Count Leading Zeros Byte
// vclzd, // Vector Count Leading Zeros Dword
// vclzh, // Vector Count Leading Zeros Hword
// vclzw, // Vector Count Leading Zeros Word
// vcmpbfp, // Vector Compare Bounds Floating-Point
// vcmpbfp_r, // Vector Compare Bounds Floating-Point Rc=1
// vcmpeqfp, // Vector Compare Equal To Floating-Point
// vcmpeqfp_r, // Vector Compare Equal To Floating-Point Rc=1
vcmpequb, // vector compare equal unsigned byte
vcmpequb_r, // vector compare equal unsigned byte with record
// vcmpequd, // Vector Compare Equal Unsigned Dword
// vcmpequd_r, // Vector Compare Equal Unsigned Dword Rc=1
vcmpequh, // vector compare equal unsigned halfword
vcmpequh_r, // vector compare equal unsigned halfword with record
vcmpequw, // vector compare equal unsigned word
vcmpequw_r, // vector compare equal unsigned word with record
vcmpgtsb, // vector compare greater than signed byte
vcmpgtsb_r, // vector compare greater than signed byte with record
// vcmpgtsd, // Vector Compare Greater Than Signed Dword
// vcmpgtsd_r, // Vector Compare Greater Than Signed Dword Rc=1
vcmpgtsh, // vector compare greater than signed halfword
vcmpgtsh_r, // vector compare greater than signed halfword with record
vcmpgtsw, // vector compare greater than signed word
vcmpgtsw_r, // vector compare greater than signed word with record
vcmpgtub, // vector compare greater than unsigned byte
vcmpgtub_r, // vector compare greater than unsigned byte with record
vcmpgtuh, // vector compare greater than unsigned halfword
vcmpgtuh_r, // vector compare greater than unsigned halfword with record
vcmpgtuw, // vector compare greater than unsigned word
vcmpgtuw_r, // vector compare greater than unsigned word with record
vcmpneb, // vector compare not equal Byte
vcmpneb_r, // vector compare not equal Byte Rc=1
// vcmpneh, // vector compare not equal Hword
// vcmpneh_r, // vector compare not equal Hword Rc=1
// vcmpnew, // vector compare not equal Word
// vcmpnew_r, // vector compare not equal Word Rc=1
// vcmpnezb, // vector compare not equal or zero Byte
// vcmpnezb_r, // vector compare not equal or zero Byte Rc=1
// vcmpnezh, // vector compare not equal or zero Hword
// vcmpnezh_r, // vector compare not equal or zero Hword Rc=1
// vcmpnezw, // vector compare not equal or zero Word
// vcmpnezw_r, // vector compare not equal or zero Word Rc=1
// vctsxs, // Vector Convert To Signed Word Saturate
// veqv, // Vector Logical Equivalence
vupkhsb, // vector unpack high signed byte
vupkhsh, // vector unpack high signed halfword
vupklsb, // vector unpack low signed byte
vupklsh, // vector unpack low signed halfword
// vupklsw, // Vector Unpack Low Signed Word
// vupklpx, // Vector Unpack Low Pixel
// vupkhsw, // Vector Unpack High Signed Word
// vpksdss, // Vector Pack Signed Dword Signed Saturate
// vpksdus, // Vector Pack Signed Dword Unsigned Saturate
vpkuhum, // vector pack unsigned half word unsigned modulo
vpkuwum, // vector pack unsigned word unsigned modulo
// vpkuwus, // Vector Pack Unsigned Word Unsigned Saturate
// vpmsumb, // Vector Polynomial Multiply-Sum Byte
// vpmsumh, // Vector Polynomial Multiply-Sum Hword
// vpmsumw, // Vector Polynomial Multiply-Sum Word
// vpopcntb, // Vector Population Count Byte
// vpopcntd, // Vector Population Count Dword
// vpopcnth, // Vector Population Count Hword
// vpopcntw, // Vector Population Count Word
vmrghb, // vector merge high byte
vmrghh, // vector merge high half word
vmrghw, // vector merge high word
vmrglb, // vector merge low byte
vmrglh, // vector merge low half word
vmrglw, // vector merge low word
// lxsd, // Load VSX scalar Dword
lxsdx, // Load VSX Scalar Doubleword Indexed
// lxssp, // Load VSX scalar single
// lxsibzx, // Load VSX scalar as integer byte & zero indexed
// lxsihzx, // Load VSX scalar as integer Hword & zero indexed
lxv, // Load VSX vector
lxvb16x, // Load VSX vector byte*16 indexed
// lxvh8x, // Load VSX vector Hword*8 indexed
lxvll, // Load VSX vector left-justified with length
// lxvwsx, // Load VSX vector word & splat indexed
// lxvx, // Load VSX vector indexed
// stxsd, // Store VSX Scalar Dword
stxsdx, // Store VSX Scalar Doubleword Indexed
lxvd2x, // Load VSX Vector Doubleword*2 Indexed
lxvdsx, // Load VSX Vector Doubleword & Splat Indexed
lxvw4x, // Load VSX Vector Word*4 Indexed
stxvd2x, // store VSX Vector Doubleword*2 Indexed
stxvw4x, // store VSX Vector Word*4 Indexed
// stxssp, // Store VSX Scalar SP
xsabsdp, // VSX Scalar Absolute Value Double-Precision
xsadddp, // VSX Scalar Add Double-Precision
xscmpodp, // VSX Scalar Compare Ordered Double-Precision
xscmpudp, // VSX Scalar Compare Unordered Double-Precision
// stxsibx, // Store VSX scalar as integer byte indexed
// stxsihx, // Store VSX scalar as integer Hword indexed
stxv, // Store VSX vector
// stxvb16x, // Store VSX vector byte*16 indexed
// stxvh8x, // Store VSX vector Hword*8 indexed
// stxvll, // Store VSX vector left-justified with length
// stxvx, // Store VSX vector indexed
// xsabsqp, // VSX scalar absolute QP
// xsaddqp, // VSX scalar add QP
// xscmpexpqp, // VSX scalar compare exponents QP
// xscmpoqp, // VSX scalar compare ordered QP
// xscmpuqp, // VSX Scalar Compare Unordered QP
xscpsgndp, // VSX Scalar Copy Sign Double-Precision , For VSR Copy register
// xscpsgnqp, // VSX Scalar Copy Sign QP
// xscvqpdp, // VSX Scalar Convert QP to DP
xscvdpsxds, // VSX Scalar Convert Double-Precision to Signed Integer Doubleword Saturate
xscvdpsxws, // VSX Scalar Convert Double-Precision to Signed Integer Word Saturate
// xscvdpqp, // VSX Scalar Convert DP to QP
// xscvqpsdz, // VSX Scalar Convert QP to Signed Dword truncate
// xscvqpswz, // VSX Scalar Convert QP to Signed Word truncate
// xscvqpudz, // VSX Scalar Convert QP to Unsigned Dword truncate
// xscvqpuwz, // VSX Scalar Convert QP to Unsigned Word truncate
// xscvsdqp, // VSX Scalar Convert Signed Dword to QP
// xscvudqp, // VSX Scalar Convert Unsigned Dword to QP
// xsdivqp, // VSX Scalar Divide QP
xsdivdp, // VSX Scalar Divide Double-Precision
// xsiexpqp, // VSX Scalar Insert Exponent QP
// xsmaddqp, // VSX Scalar Multiply-Add QP
// xsmsubqp, // VSX Scalar Multiply-Subtract QP
// xsmulqp, // VSX Scalar Multiply QP
// xsmaxcdp, // VSX Scalar Maximum Type-C Double-Precision
// xsmaxjdp, // VSX Scalar Maximum Type-J Double-Precision
xsmaddadp, // VSX Scalar Multiply-Add Type A Double-Precision
xsmaddmdp, // VSX Scalar Multiply-Add Type M Double-Precision
// xsmincdp, // VSX Scalar Minimum Type-C Double-Precision
// xsminjdp, // VSX Scalar Minimum Type-J Double-Precision
xsmsubadp, // VSX Scalar Multiply-Subtract Type A Double-Precision
xsmsubmdp, // VSX Scalar Multiply-Subtract Type M Double-Precision
xsmuldp, // VSX Scalar Multiply Double-Precision
xsnabsdp, // VSX Scalar Negative Absolute Value Double-Precision
// xsnmaddqp, // VSX Scalar Negative Multiply-Add QP
// xsnmsubqp, // VSX Scalar Negative Multiply-Subtract QP
xsnegdp, // VSX Scalar Negate Double-Precision
xsnmaddadp, // VSX Scalar Negative Multiply-Add Type A Double-Precision
xsnmaddmdp, // VSX Scalar Negative Multiply-Add Type M Double-Precision
xsnmsubadp, // VSX Scalar Negative Multiply-Subtract Type A Double-Precision
xsnmsubmdp, // VSX Scalar Negative Multiply-Subtract Type M Double-Precision
// xsnabsqp, // VSX Scalar Negative Absolute QP
// xsnegqp, // VSX Scalar Negate QP
xsrdpic, // VSX Scalar Round to Double-Precision exact using Current rounding mode
xsredp, // VSX Scalar Reciprocal Estimate Double-Precision
xsrsqrtedp, // VSX Scalar Reciprocal Square Root Estimate Double-Precision
// xssqrtqp, // VSX Scalar Square Root QP
// xssubqp, // VSX Scalar Subtract QP
// xststdcqp, // VSX Scalar Test Data Class QP
// xsxsigqp, // VSX Scalar Extract Significand QP
// xsxexpqp, // VSX Scalar Extract Exponent QP
// xxextractuw, // VSX Vector Extract Unsigned Word
// xxinsertw, // VSX Vector Insert Word
xxlor, // VSX Logical OR
xxlnor, // VSX Logical NOR
xxsel, // VSX Select (Operands usage are diffent than fsel)
xxsldwi, // VSX Shift Left Double by Word Immediate
xxspltw, // VSX Splat Word
// xxspltib, // VSX Vector Splat Immediate Byte
// xxperm, // VSX Vector Permute
xxpermdi, // VSX Permute Doubleword Immediate
// xxpermr, // VSX Vector Permute Right-indexed
xssqrtdp, // VSX Scalar Square Root Double-Precision
xssubdp, // VSX Scalar Subtract Double-Precision
// xscmpeqdp, // VSX Scalar Compare Equal Double-Precision
// xscmpgtdp, // VSX Scalar Compare Greater Than Double-Precision
// xscmpgedp, // VSX Scalar Compare Greater Than or Equal Double-Precision
// xscmpnedp, // VSX Scalar Compare Not Equal Double-Precision
// xscmpexpdp, // VSX Scalar Compare Exponents DP
xscvsxddp, // VSX Scalar Convert Signed Integer Doubleword to Double-Precision
// xscvdphp, // VSX Scalar Convert DP to HP
xscvdpsp, // VSX Scalar Convert From Double-Precision to Single-Precision
// xscvhpdp, // VSX Scalar Convert HP to DP
// xsiexpdp, // VSX Scalar Insert Exponent DP
// xststdcdp, // VSX Scalar Test Data Class DP
// xststdcsp, // VSX Scalar Test Data Class SP
// xsxexpdp, // VSX Scalar Extract Exponent DP
// xsxsigdp, // VSX Scalar Extract Significand DP
xvadddp, // VSX Vector Add Double-Precision
// xvcmpnesp, // VSX Vector Compare Not Equal Single-Precision
// xvcmpnesp_r, // VSX Vector Compare Not Equal Single-Precision Rc=1
// xvcmpnedp, // VSX Vector Compare Not Equal Double-Precision
// xvcmpnedp_r, // VSX Vector Compare Not Equal Double-Precision Rc=1
xvmindp, // VSX Vector Min Double-Precision
xvmaxdp, // VSX Vector Max Double-Precision
xvcmpeqdp, // VSX Vector Compare Equal To Double-Precision
xvcmpeqdp_r, // VSX Vector Compare Equal To Double-Precision
xvcmpgedp, // VSX Vector Compare Greater Than Or Equal To Double-Precision
xvcmpgedp_r, // VSX Vector Compare Greater Than Or Equal To Double-Precision
xvcmpgtdp, // VSX Vector Compare Greater Than Double-Precision
xvcmpgtdp_r, // VSX Vector Compare Greater Than Double-Precision
// xvcvhpsp, // VSX Vector Convert HP to SP
// xvcvsphp, // VSX Vector Convert SP to HP
xvdivdp, // VSX Vector Divide Double-Precision
// xviexpsp, // VSX Vector Insert Exponent SP
// xviexpdp, // VSX Vector Insert Exponent DP
xvmuldp, // VSX Vector Multiply Double-Precision
xvnegdp, // VSX Vector Negate Double-Precision
xvnmsubadp, // VSX Vector Negative Multiply-Subtract Type-A Double-Precision
xvnmsubmdp, // VSX Vector Negative Multiply-Subtract Type-M Double-Precision
xvsubdp, // VSX Vector Subtract Double-Precision
xvmaddadp, // VSX Vector Multiply-Add Type-A Double-Precision
xvmaddmdp, // VSX Vector Multiply-Add Type-M Double-Precision
xvmsubadp, // VSX Vector Multiply-Sub Type-A Double-Precision
xvmsubmdp, // VSX Vector Multiply-Sub Type-M Double-Precision
xvsqrtdp, // VSX Vector Square Root Double-Precision
// xvtstdcsp, // VSX Vector Test Data Class SP
// xvtstdcdp, // VSX Vector Test Data Class DP
// xvxexpdp, // VSX Vector Extract Exponent DP
// xvxexpsp, // VSX Vector Extract Exponent SP
// xvxsigdp, // VSX Vector Extract Significand DP
// xvxsigsp, // VSX Vector Extract Significand SP
// xxbrd, // VSX Vector Byte-Reverse Dword
// xxbrh, // VSX Vector Byte-Reverse Hword
// xxbrw, // VSX Vector Byte-Reverse Word
// xxbrq, // VSX Vector Byte-Reverse Qword
fmrgew, // Merge Even Word
fmrgow, // Merge Odd Word
lxsiwax, // VSX Scalar as Integer Word Algebraic Indexed
lxsiwzx, // VSX Scalar as Integer Word and Zero Indexed
lxsspx, // VSX Scalar Single-Precision Indexed
stxsiwx, // VSX Scalar as Integer Word Indexed
stxsspx, // VSR Scalar Word Indexed
xsaddsp, // Scalar Add Single-Precision
xscvdpspn, // Scalar Convert Double-Precision to Single-Precision format Non-signalling
xscvdpuxds, // Scalar Convert Double-Precision to Unsigned Fixed-Point Doubleword Saturate
xscvdpuxws, // Scalar Convert Double-Precision to Unsigned Fixed-Point Word Saturate
xscvspdp, // Scalar Convert Single-Precision to Double-Precision (p=1)
xscvspdpn, // Convert Single-Precision to Double-Precision format Non-signalling
xscvsxdsp, // Scalar Convert Signed Fixed-Point Doubleword to Single-Precision
xscvuxddp, // Scalar Convert Unsigned Fixed-Point Doubleword to Double-Precision
xscvuxdsp, // Scalar Convert Unsigned Fixed-Point Doubleword to Single-Precision
xsdivsp, // Scalar Divide Single-Precision
xsmaddasp, // Scalar Multiply-Add Type-A Single-Precision
xsmaddmsp, // Scalar Multiply-Add Type-M Single-Precision
xsmaxdp, // Scalar Maximum Double-Precision
xsmindp, // Scalar Minimum Double-Precision
xsmsubasp, // Scalar Multiply-Subtract Type-A Single-Precision
xsmsubmsp, // Scalar Multiply-Subtract Type-M Single-Precision
xsmulsp, // Scalar Multiply Single-Precision
xsnmaddasp, // Scalar Negative Multiply-Add Type-A Single-Precision
xsnmaddmsp, // Scalar Negative Multiply-Add Type-M Single-Precision
xsnmsubasp, // Scalar Negative Multiply-Subtract Type-A Single-Precision
xsnmsubmsp, // Scalar Negative Multiply-Subtract Type-M Single-Precision
xsrdpi, // Scalar Round to Double-Precision Integer
xsrdpim, // Scalar Round to Double-Precision Integer toward -Infinity
xsrdpip, // Scalar Round to Double-Precision Integer toward +Infinity
xsrdpiz, // Scalar Round to Double-Precision Integer toward Zero
xsresp, // Scalar Reciprocal Estimate Single-Precision
xsrsp, // Scalar Round to Single-Precision
xsrsqrtesp, // Scalar Reciprocal Square Root Estimate Single-Precision
xssqrtsp, // Scalar Square Root Single-Precision
xssubsp, // Scalar Subtract Single-Precision
xxland, // Logical AND
xxlandc, // Logical AND with Complement
xxleqv, // Logical Equivalence
xxlnand, // Logical NAND
xxlorc, // Logical OR with Complement