| Issue |
52964
|
| Summary |
MSVC-like ARM64 intrinsics missing for clang-cl
|
| Labels |
new issue
|
| Assignees |
|
| Reporter |
DoDoENT
|
I'm trying to compile [XNNPack](https://github.com/google/XNNPACK) using clang-cl on Windows on ARM.
It fails with errors like:
```
clang-cl: warning: argument unused during compilation: '/std:c++latest' [-Wunused-command-line-argument]
In file included from Z:/Work/Microblink/core-xnnpack-package/dependencies/XNNPACK/src/init.c:47:
In file included from Z:/Work/Microblink/core-xnnpack-package/dependencies/XNNPACK/src\xnnpack/params-init.h:23:
In file included from Z:/Work/Microblink/core-xnnpack-package/dependencies/FP16/include\fp16.h:5:
In file included from Z:/Work/Microblink/core-xnnpack-package/dependencies/FP16/include\fp16/fp16.h:17:
Z:/Work/Microblink/core-xnnpack-package/dependencies/FP16/include\fp16/bitcasts.h(28,9): error: implicit declaration of function '_CopyFloatFromInt32' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
return _CopyFloatFromInt32((__int32) w);
^
Z:/Work/Microblink/core-xnnpack-package/dependencies/FP16/include\fp16/bitcasts.h(46,20): error: implicit declaration of function '_CopyInt32FromFloat' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
return (uint32_t) _CopyInt32FromFloat(f);
^
Z:/Work/Microblink/core-xnnpack-package/dependencies/FP16/include\fp16/bitcasts.h(64,9): error: implicit declaration of function '_CopyDoubleFromInt64' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
return _CopyDoubleFromInt64((__int64) w);
^
Z:/Work/Microblink/core-xnnpack-package/dependencies/FP16/include\fp16/bitcasts.h(82,20): error: implicit declaration of function '_CopyInt64FromDouble' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
return (uint64_t) _CopyInt64FromDouble(f);
^
4 errors generated.
ninja: build stopped: subcommand failed.
```
It appears that ARM64 intrinsics, such as `_CopyFloatFromInt32` and similar are MS-specific. ARM64 intrinsics supported by the MSVC are documented [here](https://docs.microsoft.com/en-us/cpp/intrinsics/arm64-intrinsics?view=msvc-170).
Do you have any plans on supporting those intrinsics in `clang-cl` frontend?
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs