fix windows-arm build#6699
Conversation
|
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #6699 +/- ##
==========================================
- Coverage 93.95% 93.95% -0.01%
==========================================
Files 933 933
Lines 299730 299948 +218
==========================================
+ Hits 281624 281816 +192
- Misses 18106 18132 +26 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
This PR targets Windows ARM64 (MSVC) build issues in the ARM FP16 NEON path by centralizing MSVC-specific FP16 scalar/constant handling in arm_usability.h, and then simplifying call sites to use the unified helpers.
Changes:
- Added MSVC ARM64 float32↔float16 bit-conversion helpers and
vdup*_n_f16(float)shims inarm_usability.hto avoid relying on scalar__fp16and problematic constant materialization patterns. - Simplified
PReLU_arm::forward_inplace_fp16sa()(elempack==4, dims==1 path) to remove MSVC-only branches and use the unifiedvdup_n_f16/vcle_f16usage. - Removed MSVC-specific constant conversion branches in
neon_mathfun_fp16s.h, relying on the unified constant construction behavior.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| src/layer/arm/prelu_arm_asimdhp.cpp | Removes MSVC-only FP16 NEON special-casing in the pack4/dims1 PReLU FP16SA path. |
| src/layer/arm/neon_mathfun_fp16s.h | Drops MSVC-only constant materialization branches in FP16 exp/sincos helpers. |
| src/layer/arm/arm_usability.h | Introduces MSVC ARM64 FP16 conversion + vdup*_n_f16(float) shims to support the simplified call sites. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
No description provided.