//===-- llvm/CodeGen/InstrSelectionSupport.h --------------------*- C++ -*-===// // // The LLVM Compiler Infrastructure // // This file was developed by the LLVM research group and is distributed under // the University of Illinois Open Source License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // Target-independent instruction selection code. See SparcInstrSelection.cpp // for usage. // //===----------------------------------------------------------------------===// #ifndef LLVM_CODEGEN_INSTR_SELECTION_SUPPORT_H #define LLVM_CODEGEN_INSTR_SELECTION_SUPPORT_H #include "llvm/CodeGen/MachineInstr.h" #include "Support/DataTypes.h" class InstructionNode; class TargetMachine; class Instruction; //--------------------------------------------------------------------------- // Function: ChooseRegOrImmed // // Purpose: // //--------------------------------------------------------------------------- MachineOperand::MachineOperandType ChooseRegOrImmed( Value* val, MachineOpCode opCode, const TargetMachine& targetMachine, bool canUseImmed, unsigned& getMachineRegNum, int64_t& getImmedValue); MachineOperand::MachineOperandType ChooseRegOrImmed(int64_t intValue, bool isSigned, MachineOpCode opCode, const TargetMachine& target, bool canUseImmed, unsigned& getMachineRegNum, int64_t& getImmedValue); #endif