summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/PowerPC/PPCISelLowering.h
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2010-04-08 07:37:57 +0000
committerEvan Cheng <evan.cheng@apple.com>2010-04-08 07:37:57 +0000
commitebe47c872f2a2880c908c1fb1fb180e609b20004 (patch)
treea32b850d64254521d253f8305a6133e6b020bf63 /llvm/lib/Target/PowerPC/PPCISelLowering.h
parentfc58c37b8c77c9af3b350ecb1f2a12f7f5413e4b (diff)
downloadbcm5719-llvm-ebe47c872f2a2880c908c1fb1fb180e609b20004.tar.gz
bcm5719-llvm-ebe47c872f2a2880c908c1fb1fb180e609b20004.zip
Avoid using f64 to lower memcpy from constant string. It's cheaper to use i32 store of immediates.
llvm-svn: 100751
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCISelLowering.h')
-rw-r--r--llvm/lib/Target/PowerPC/PPCISelLowering.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCISelLowering.h b/llvm/lib/Target/PowerPC/PPCISelLowering.h
index f816bddaf5a..f7d629b9980 100644
--- a/llvm/lib/Target/PowerPC/PPCISelLowering.h
+++ b/llvm/lib/Target/PowerPC/PPCISelLowering.h
@@ -355,12 +355,14 @@ namespace llvm {
/// probably because the source does not need to be loaded. If
/// 'NonScalarIntSafe' is true, that means it's safe to return a
/// non-scalar-integer type, e.g. empty string source, constant, or loaded
- /// from memory. It returns EVT::Other if SelectionDAG should be responsible
- /// for determining it.
+ /// from memory. 'MemcpyStrSrc' indicates whether the memcpy source is
+ /// constant so it does not need to be loaded.
+ /// It returns EVT::Other if SelectionDAG should be responsible for
+ /// determining the type.
virtual EVT
- getOptimalMemOpType(uint64_t Size,
- unsigned DstAlign, unsigned SrcAlign,
- bool NonScalarIntSafe, SelectionDAG &DAG) const;
+ getOptimalMemOpType(uint64_t Size, unsigned DstAlign, unsigned SrcAlign,
+ bool NonScalarIntSafe, bool MemcpyStrSrc,
+ SelectionDAG &DAG) const;
/// getFunctionAlignment - Return the Log2 alignment of this function.
virtual unsigned getFunctionAlignment(const Function *F) const;
OpenPOWER on IntegriCloud