<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>Dear list,</div><div><br></div><div>git checkout llvmorg-8.0.0 -b llvm8.0<br></div><div></div><div>cmake -G "Unix Makefiles" ../llvm-project/llvm -DCMAKE_BUILD_TYPE=Debug -DLLVM_ENABLE_PROJECTS="clang;lld" -DLLVM_TARGETS_TO_BUILD="X86;NVPTX;AMDGPU;ARM;AArch64"</div><div><br></div><div>[arm.cpp]</div><div>#define vst4_lane_f16(__p0, __p1, __p2) __extension__ ({ \<br>  float16x4x4_t __s1 = __p1; \<br>  __builtin_neon_vst4_lane_v(__p0, __s1.val[0], __s1.val[1], __s1.val[2], __s1.val[3], __p2, 8); \<br>})<br>typedef __fp16 float16_t;<br>typedef __attribute__((neon_vector_type(4))) float16_t float16x4_t;<br>typedef struct float16x4x4_t {<br>  float16x4_t val[4];<br>} float16x4x4_t;<br>void test_vst4_lane_f16(float16_t * a, float16x4x4_t b) {<br>  vst4_lane_f16(a, b, 3);       <br>}<br></div><div><br></div><div>I tried:</div><div>$$COMP_ROOT/clang -cc1 -triple thumbv7s-apple-darwin -target-abi apcs-gnu -target-cpu swift -fallow-half-arguments-and-returns -target-feature +fullfp16 -ffreestanding -disable-O0-optnone -emit-llvm -o arm.ll arm.cpp</div><div>$cat arm.ll | grep llvm.arm<br></div><div>  call void @llvm.arm.neon.vst4lane.p0i8.v4f16(i8* %4, <4 x half> %13, <4 x half> %14, <4 x half> %15, <4 x half> %16, i32 3, i32 2)<br>declare void @llvm.arm.neon.vst4lane.p0i8.v4f16(i8*, <4 x half>, <4 x half>, <4 x half>, <4 x half>, i32, i32) #1</div><div>$$COMP_ROOT/llc arm.ll</div><div>unhandled vld/vst lane type<br>UNREACHABLE executed at /home/nancy/rpp_llvm/llvm-project/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp:2072!</div><div><br></div><div>May I know how to compile this .cpp correctly from FE to BE?<br></div><div></div><div><br></div><div><br>-- <br><div dir="ltr" class="gmail_signature">Best Regards,<br>Yu Rong Tan<br></div></div></div></div></div></div></div></div>