comparison lib/Target/Mips/Mips16InstrInfo.h @ 147:c2174574ed3a

LLVM 10
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 14 Aug 2019 16:55:33 +0900
parents 803732b1fca8
children
comparison
equal deleted inserted replaced
134:3a76565eade5 147:c2174574ed3a
1 //===- Mips16InstrInfo.h - Mips16 Instruction Information -------*- C++ -*-===// 1 //===- Mips16InstrInfo.h - Mips16 Instruction Information -------*- C++ -*-===//
2 // 2 //
3 // The LLVM Compiler Infrastructure 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // 4 // See https://llvm.org/LICENSE.txt for license information.
5 // This file is distributed under the University of Illinois Open Source 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 // License. See LICENSE.TXT for details.
7 // 6 //
8 //===----------------------------------------------------------------------===// 7 //===----------------------------------------------------------------------===//
9 // 8 //
10 // This file contains the Mips16 implementation of the TargetInstrInfo class. 9 // This file contains the Mips16 implementation of the TargetInstrInfo class.
11 // 10 //
100 99
101 const MCInstrDesc& AddiuSpImm(int64_t Imm) const; 100 const MCInstrDesc& AddiuSpImm(int64_t Imm) const;
102 101
103 void BuildAddiuSpImm 102 void BuildAddiuSpImm
104 (MachineBasicBlock &MBB, MachineBasicBlock::iterator I, int64_t Imm) const; 103 (MachineBasicBlock &MBB, MachineBasicBlock::iterator I, int64_t Imm) const;
104
105 protected:
106 /// If the specific machine instruction is a instruction that moves/copies
107 /// value from one register to another register return true along with
108 /// @Source machine operand and @Destination machine operand.
109 bool isCopyInstrImpl(const MachineInstr &MI, const MachineOperand *&Source,
110 const MachineOperand *&Destination) const override;
111
105 private: 112 private:
106 unsigned getAnalyzableBrOpc(unsigned Opc) const override; 113 unsigned getAnalyzableBrOpc(unsigned Opc) const override;
107 114
108 void ExpandRetRA16(MachineBasicBlock &MBB, MachineBasicBlock::iterator I, 115 void ExpandRetRA16(MachineBasicBlock &MBB, MachineBasicBlock::iterator I,
109 unsigned Opc) const; 116 unsigned Opc) const;