mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
Implement splitting support for store, allowing us to compile:
%f8 = type <8 x float> define void @test_f8(%f8* %P, %f8* %Q, %f8* %S) { %p = load %f8* %P ; <%f8> [#uses=1] %q = load %f8* %Q ; <%f8> [#uses=1] %R = add %f8 %p, %q ; <%f8> [#uses=1] store %f8 %R, %f8* %S ret void } into: _test_f8: movaps 16(%rdi), %xmm0 addps 16(%rsi), %xmm0 movaps (%rdi), %xmm1 addps (%rsi), %xmm1 movaps %xmm0, 16(%rdx) movaps %xmm1, (%rdx) ret git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44725 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -281,6 +281,7 @@ private:
|
||||
// Operand Vector Scalarization: <128 x ty> -> 2 x <64 x ty>.
|
||||
bool SplitOperand(SDNode *N, unsigned OpNo);
|
||||
|
||||
SDOperand SplitOperand_STORE(StoreSDNode *N, unsigned OpNo);
|
||||
};
|
||||
|
||||
} // end namespace llvm.
|
||||
|
Reference in New Issue
Block a user