Index: src/IceTargetLowering.h |
diff --git a/src/IceTargetLowering.h b/src/IceTargetLowering.h |
index 278b7a85491d755ef58db204a268ff0e9e442dfc..318f752860b8fc649b41a99e2eda9c4d6a3bcc48 100644 |
--- a/src/IceTargetLowering.h |
+++ b/src/IceTargetLowering.h |
@@ -256,6 +256,9 @@ public: |
/// Return whether a 64-bit Variable should be split into a Variable64On32. |
virtual bool shouldSplitToVariable64On32(Type Ty) const = 0; |
+ /// Return whether a Vector Variable should be split into a VariableVecOn32. |
+ virtual bool shouldSplitToVariableVecOn32(Type Ty) const = 0; |
Jim Stichnoth
2016/09/29 16:50:25
Since this is likely to be MIPS-specific, maybe pr
jaydeep.patil
2016/09/30 07:02:51
Done.
|
+ |
bool hasComputedFrame() const { return HasComputedFrame; } |
/// Returns true if this function calls a function that has the "returns |
/// twice" attribute. |
@@ -503,6 +506,9 @@ protected: |
const SizeT NumElements = typeNumElements(DestTy); |
Variable *T = Func->makeVariable(DestTy); |
+ if (auto *VarVecOn32 = llvm::dyn_cast<VariableVecOn32>(T)) { |
+ VarVecOn32->initVecElement(Func, DestTy); |
+ } |
Context.insert<InstFakeDef>(T); |
for (SizeT I = 0; I < NumElements; ++I) { |