1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* Pseudo-instruction MC lowering Source Fragment *|
4|* *|
5|* Automatically generated file, do not edit! *|
6|* *|
7\*===----------------------------------------------------------------------===*/
8
9bool AArch64AsmPrinter::
10lowerPseudoInstExpansion(const MachineInstr *MI, MCInst &Inst) {
11 Inst.clear();
12 switch (MI->getOpcode()) {
13 default: return false;
14 case AArch64::BLRNoIP: {
15 MCOperand MCOp;
16 Inst.setOpcode(AArch64::BLR);
17 // Operand: Rn
18 lowerOperand(MO: MI->getOperand(i: 0), MCOp);
19 Inst.addOperand(Op: MCOp);
20 break;
21 }
22 case AArch64::BLR_X16: {
23 MCOperand MCOp;
24 Inst.setOpcode(AArch64::BLR);
25 // Operand: Rn
26 Inst.addOperand(Op: MCOperand::createReg(Reg: AArch64::X16));
27 break;
28 }
29 case AArch64::MRS_FPCR: {
30 MCOperand MCOp;
31 Inst.setOpcode(AArch64::MRS);
32 // Operand: Rt
33 lowerOperand(MO: MI->getOperand(i: 0), MCOp);
34 Inst.addOperand(Op: MCOp);
35 // Operand: systemreg
36 Inst.addOperand(Op: MCOperand::createImm(Val: 55840));
37 break;
38 }
39 case AArch64::MRS_FPSR: {
40 MCOperand MCOp;
41 Inst.setOpcode(AArch64::MRS);
42 // Operand: Rt
43 lowerOperand(MO: MI->getOperand(i: 0), MCOp);
44 Inst.addOperand(Op: MCOp);
45 // Operand: systemreg
46 Inst.addOperand(Op: MCOperand::createImm(Val: 55841));
47 break;
48 }
49 case AArch64::MSR_FPCR: {
50 MCOperand MCOp;
51 Inst.setOpcode(AArch64::MSR);
52 // Operand: systemreg
53 Inst.addOperand(Op: MCOperand::createImm(Val: 55840));
54 // Operand: Rt
55 lowerOperand(MO: MI->getOperand(i: 0), MCOp);
56 Inst.addOperand(Op: MCOp);
57 break;
58 }
59 case AArch64::MSR_FPMR: {
60 MCOperand MCOp;
61 Inst.setOpcode(AArch64::MSR);
62 // Operand: systemreg
63 Inst.addOperand(Op: MCOperand::createImm(Val: 55842));
64 // Operand: Rt
65 lowerOperand(MO: MI->getOperand(i: 0), MCOp);
66 Inst.addOperand(Op: MCOp);
67 break;
68 }
69 case AArch64::MSR_FPSR: {
70 MCOperand MCOp;
71 Inst.setOpcode(AArch64::MSR);
72 // Operand: systemreg
73 Inst.addOperand(Op: MCOperand::createImm(Val: 55841));
74 // Operand: Rt
75 lowerOperand(MO: MI->getOperand(i: 0), MCOp);
76 Inst.addOperand(Op: MCOp);
77 break;
78 }
79 case AArch64::PTEST_PP_ANY: {
80 MCOperand MCOp;
81 Inst.setOpcode(AArch64::PTEST_PP);
82 // Operand: Pg
83 lowerOperand(MO: MI->getOperand(i: 0), MCOp);
84 Inst.addOperand(Op: MCOp);
85 // Operand: Pn
86 lowerOperand(MO: MI->getOperand(i: 1), MCOp);
87 Inst.addOperand(Op: MCOp);
88 break;
89 }
90 }
91 return true;
92}
93
94