Lines Matching refs:TII

62 static void addProlog(MachineFunction &Fn, const TargetInstrInfo *TII,
64 static void addPrologLeaf(MachineFunction &Fn, const TargetInstrInfo *TII,
68 static void addEpilog(const TargetInstrInfo *TII, MachineBasicBlock &MBB,
70 static void addEpilogLeaf(const TargetInstrInfo *TII, MachineBasicBlock &MBB,
74 static void addEpilogOnlyR10(const TargetInstrInfo *TII, MachineBasicBlock &MBB,
85 static void addProlog(MachineFunction &Fn, const TargetInstrInfo *TII, in addProlog() argument
92 addDirectMem(BuildMI(MBB, MBBI, DL, TII->get(X86::MOV64rm)).addDef(ReturnReg), in addProlog()
95 BuildMI(MBB, MBBI, DL, TII->get(X86::XOR64rr)) in addProlog()
100 addSegmentedMem(BuildMI(MBB, MBBI, DL, TII->get(X86::ADD64mi8)), X86::GS, in addProlog()
105 BuildMI(MBB, MBBI, DL, TII->get(X86::MOV64rm)).addDef(OffsetReg), X86::GS, in addProlog()
108 addSegmentedMem(BuildMI(MBB, MBBI, DL, TII->get(X86::MOV64mr)), X86::GS, in addProlog()
113 static void addPrologLeaf(MachineFunction &Fn, const TargetInstrInfo *TII, in addPrologLeaf() argument
117 addDirectMem(BuildMI(MBB, MBB.begin(), DL, TII->get(X86::MOV64rm)) in addPrologLeaf()
122 static void addEpilog(const TargetInstrInfo *TII, MachineBasicBlock &MBB, in addEpilog() argument
127 BuildMI(MBB, MI, DL, TII->get(X86::XOR64rr)) in addEpilog()
132 addSegmentedMem(BuildMI(MBB, MI, DL, TII->get(X86::MOV64rm)).addDef(X86::R10), in addEpilog()
135 addSegmentedMem(BuildMI(MBB, MI, DL, TII->get(X86::MOV64rm)).addDef(X86::R10), in addEpilog()
139 addSegmentedMem(BuildMI(MBB, MI, DL, TII->get(X86::SUB64mi8)), in addEpilog()
143 addDirectMem(BuildMI(MBB, MI, DL, TII->get(X86::CMP64mr)), X86::RSP) in addEpilog()
146 BuildMI(MBB, MI, DL, TII->get(X86::JNE_1)).addMBB(&TrapBB); in addEpilog()
150 static void addEpilogLeaf(const TargetInstrInfo *TII, MachineBasicBlock &MBB, in addEpilogLeaf() argument
156 addDirectMem(BuildMI(MBB, MI, DL, TII->get(X86::CMP64mr)), X86::RSP) in addEpilogLeaf()
159 BuildMI(MBB, MI, DL, TII->get(X86::JNE_1)).addMBB(&TrapBB); in addEpilogLeaf()
163 static void addEpilogOnlyR10(const TargetInstrInfo *TII, MachineBasicBlock &MBB, in addEpilogOnlyR10() argument
168 BuildMI(MBB, MI, DL, TII->get(X86::XOR64rr)) in addEpilogOnlyR10()
173 addSegmentedMem(BuildMI(MBB, MI, DL, TII->get(X86::MOV64rm)).addDef(X86::R10), in addEpilogOnlyR10()
176 addSegmentedMem(BuildMI(MBB, MI, DL, TII->get(X86::MOV64rm)).addDef(X86::R10), in addEpilogOnlyR10()
180 addSegmentedMem(BuildMI(MBB, MI, DL, TII->get(X86::SUB64mi8)), X86::GS, 0) in addEpilogOnlyR10()
183 addDirectMem(BuildMI(MBB, MI, DL, TII->get(X86::CMP64mr)), X86::RSP) in addEpilogOnlyR10()
186 BuildMI(MBB, MI, DL, TII->get(X86::JNE_1)).addMBB(&TrapBB); in addEpilogOnlyR10()
286 const TargetInstrInfo *TII = Fn.getSubtarget().getInstrInfo(); in runOnMachineFunction() local
288 addPrologLeaf(Fn, TII, MBB, DL, LeafFuncRegister); in runOnMachineFunction()
290 addProlog(Fn, TII, MBB, DL); in runOnMachineFunction()
301 BuildMI(Trap, MI.getDebugLoc(), TII->get(X86::TRAP)); in runOnMachineFunction()
306 addEpilogLeaf(TII, MBB, MI, *Trap, LeafFuncRegister); in runOnMachineFunction()
308 addEpilogOnlyR10(TII, MBB, MI, *Trap); in runOnMachineFunction()
310 addEpilog(TII, MBB, MI, *Trap); in runOnMachineFunction()