diff options
author | Hal Finkel <hfinkel@anl.gov> | 2014-03-27 21:26:33 +0000 |
---|---|---|
committer | Hal Finkel <hfinkel@anl.gov> | 2014-03-27 21:26:33 +0000 |
commit | ad801b74598514a2872b914eb4a28cdd27c9a90c (patch) | |
tree | a368f652dcd5a967e7a2125c1bac7e86262e5cfc /llvm/lib/Target/PowerPC/PPCISelLowering.cpp | |
parent | 9dee449ee35746e64b7ea1df4a7eea82259476d0 (diff) | |
download | bcm5719-llvm-ad801b74598514a2872b914eb4a28cdd27c9a90c.tar.gz bcm5719-llvm-ad801b74598514a2872b914eb4a28cdd27c9a90c.zip |
[PowerPC] Expand v2i64 shifts
These operations need to be expanded during legalization so that isel does not
crash. In theory, we might be able to custom lower some of these. That,
however, would need to be follow-up work.
llvm-svn: 204963
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCISelLowering.cpp')
-rw-r--r-- | llvm/lib/Target/PowerPC/PPCISelLowering.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCISelLowering.cpp b/llvm/lib/Target/PowerPC/PPCISelLowering.cpp index 6f640183f93..16ff0eb7d72 100644 --- a/llvm/lib/Target/PowerPC/PPCISelLowering.cpp +++ b/llvm/lib/Target/PowerPC/PPCISelLowering.cpp @@ -581,6 +581,10 @@ PPCTargetLowering::PPCTargetLowering(PPCTargetMachine &TM) setOperationAction(ISD::ADD, MVT::v2i64, Expand); setOperationAction(ISD::SUB, MVT::v2i64, Expand); + setOperationAction(ISD::SHL, MVT::v2i64, Expand); + setOperationAction(ISD::SRA, MVT::v2i64, Expand); + setOperationAction(ISD::SRL, MVT::v2i64, Expand); + setOperationAction(ISD::LOAD, MVT::v2i64, Promote); AddPromotedToType (ISD::LOAD, MVT::v2i64, MVT::v2f64); setOperationAction(ISD::STORE, MVT::v2i64, Promote); |