summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.h
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2010-04-14 18:31:02 +0000
committerDan Gohman <gohman@apple.com>2010-04-14 18:31:02 +0000
commit8ebcbe949a161efc0b89323e5aac1adae3d229d9 (patch)
tree9f9f9a2424edbc552b7b55fad42685f4959fb4cf /llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.h
parentf5cca357506baf15916200b1f88b4cfc21b01665 (diff)
downloadbcm5719-llvm-8ebcbe949a161efc0b89323e5aac1adae3d229d9.tar.gz
bcm5719-llvm-8ebcbe949a161efc0b89323e5aac1adae3d229d9.zip
Pull utility routines with no SelectionDAG dependence out of
SelectionDAGBuilder. FunctionLoweringInfo isn't an ideal place for them to live, but it's better than SelectionDAGBuilder for now. llvm-svn: 101267
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.h')
-rw-r--r--llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.h b/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.h
index 969cdba8917..95439e4cad9 100644
--- a/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.h
+++ b/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.h
@@ -15,12 +15,15 @@
#ifndef FUNCTIONLOWERINGINFO_H
#define FUNCTIONLOWERINGINFO_H
+#include "llvm/InlineAsm.h"
+#include "llvm/Instructions.h"
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/DenseMap.h"
#ifndef NDEBUG
#include "llvm/ADT/SmallSet.h"
#endif
#include "llvm/CodeGen/ValueTypes.h"
+#include "llvm/CodeGen/SelectionDAGNodes.h"
#include <vector>
namespace llvm {
@@ -146,6 +149,22 @@ void AddCatchInfo(CallInst &I, MachineModuleInfo *MMI, MachineBasicBlock *MBB);
void CopyCatchInfo(BasicBlock *SrcBB, BasicBlock *DestBB,
MachineModuleInfo *MMI, FunctionLoweringInfo &FLI);
+/// hasInlineAsmMemConstraint - Return true if the inline asm instruction being
+/// processed uses a memory 'm' constraint.
+bool hasInlineAsmMemConstraint(std::vector<InlineAsm::ConstraintInfo> &CInfos,
+ const TargetLowering &TLI);
+
+/// getFCmpCondCode - Return the ISD condition code corresponding to
+/// the given LLVM IR floating-point condition code. This includes
+/// consideration of global floating-point math flags.
+///
+ISD::CondCode getFCmpCondCode(FCmpInst::Predicate Pred);
+
+/// getICmpCondCode - Return the ISD condition code corresponding to
+/// the given LLVM IR integer condition code.
+///
+ISD::CondCode getICmpCondCode(ICmpInst::Predicate Pred);
+
} // end namespace llvm
#endif
OpenPOWER on IntegriCloud