summaryrefslogtreecommitdiff
path: root/include/llvm/Target
diff options
context:
space:
mode:
authorNadav Rotem <nrotem@apple.com>2012-11-05 19:32:46 +0000
committerNadav Rotem <nrotem@apple.com>2012-11-05 19:32:46 +0000
commite623702c22e7cee4e02332b245a417a88ae6ffff (patch)
treeb1fcd57b8be41d13cb6a4d4d0ef12500e4c639fe /include/llvm/Target
parent6837232a609fe7b13473606a1c8a18eabfe2df2a (diff)
downloadllvm-e623702c22e7cee4e02332b245a417a88ae6ffff.tar.gz
llvm-e623702c22e7cee4e02332b245a417a88ae6ffff.tar.bz2
llvm-e623702c22e7cee4e02332b245a417a88ae6ffff.tar.xz
Implement the cost of abnormal x86 instruction lowering as a table.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167395 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Target')
-rw-r--r--include/llvm/Target/TargetTransformImpl.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/include/llvm/Target/TargetTransformImpl.h b/include/llvm/Target/TargetTransformImpl.h
index 625be7208a..d5ab3728af 100644
--- a/include/llvm/Target/TargetTransformImpl.h
+++ b/include/llvm/Target/TargetTransformImpl.h
@@ -55,13 +55,16 @@ protected:
const TargetLowering *TLI;
/// Estimate the cost of type-legalization and the legalized type.
- std::pair<unsigned, EVT>
+ std::pair<unsigned, MVT>
getTypeLegalizationCost(LLVMContext &C, EVT Ty) const;
/// Estimate the overhead of scalarizing an instruction. Insert and Extract
/// are set if the result needs to be inserted and/or extracted from vectors.
unsigned getScalarizationOverhead(Type *Ty, bool Insert, bool Extract) const;
+ // Get the ISD node that corresponds to the Instruction class opcode.
+ int InstructionOpcodeToISD(unsigned Opcode) const;
+
public:
explicit VectorTargetTransformImpl(const TargetLowering *TL) : TLI(TL) {}