[llvm-bugs] [Bug 36683] New: Error "Do not know how to split this operator's operand!" after "Add ARMv8.2-A FP16 vector intrinsic"
via llvm-bugs
llvm-bugs at lists.llvm.org
Sat Mar 10 13:45:22 PST 2018
https://bugs.llvm.org/show_bug.cgi?id=36683
Bug ID: 36683
Summary: Error "Do not know how to split this operator's
operand!" after "Add ARMv8.2-A FP16 vector intrinsic"
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: enhancement
Priority: P
Component: Backend: ARM
Assignee: unassignedbugs at nondot.org
Reporter: martin at martin.st
CC: llvm-bugs at lists.llvm.org
Created attachment 20046
--> https://bugs.llvm.org/attachment.cgi?id=20046&action=edit
Reduced source code that triggers the error
Commit SVN r327189 in clang ([ARM] Add ARMv8.2-A FP16 vector intrinsic) caused
the following test C code to change the output IR:
typedef __attribute__((neon_vector_type(4))) __fp16 float16x4_t;
void fn1() {
__fp16 *out_f16;
float16x4_t __s1;
__builtin_neon_vst1_v(out_f16, __s1, 8);
}
When built e.g. like this, "clang -target armv7-linux-gnueabihf -c
qfloat16-reduced.c -O2", it errors out with the following message:
> SplitVectorOperand Op #3: t5: ch = llvm.arm.neon.vst1<ST8[undef](align=2)> t0, TargetConstant:i32<716>, undef:i32, undef:v4f16, Constant:i32<2>
>
> fatal error: error in backend: Do not know how to split this operator's operand!
>
> clang-7.0: error: clang frontend command failed with exit code 70 (use -v to see invocation)
> clang version 7.0.0 (http://llvm.org/git/clang 72858dcc190c6438930f3cc17a134ed6195f6a15) (llvm/trunk 327197)"
The generated LLVM IR after the change, that fails also when run through llc,
is the following:
define void @fn1() {
entry:
tail call void @llvm.arm.neon.vst1.p0i8.v4f16(i8* undef, <4 x half>
undef, i32 2)
ret void
}
declare void @llvm.arm.neon.vst1.p0i8.v4f16(i8*, <4 x half>, i32)
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20180310/1afa4be2/attachment.html>
More information about the llvm-bugs
mailing list