Skip to content

Conversation

@daniel86
Copy link
Owner

@daniel86 daniel86 commented Dec 30, 2025

This PR restructures the CI workflow to support multiple platforms and migrates from native SIMD intrinsics to the SIMDe library for better cross-platform compatibility. The key motivation is to enable the codebase to compile and run on non-x86 architectures (like ARM) while maintaining performance on x86.

  • Replaces native x86 SIMD intrinsics (_mm*, __m256*) with SIMDe equivalents (simde_mm*, simde__m256*)
  • Splits the monolithic CI workflow into separate Linux and macOS workflows with dedicated jobs
  • Adds build system improvements including conditional unit test building and platform-specific dependency handling

@github-actions
Copy link

✅ Compilation - SUCCESS! ✅

@github-actions
Copy link

github-actions bot commented Dec 30, 2025

Test Results

1 tests  ±0   1 ✅ ±0   0s ⏱️ ±0s
1 suites ±0   0 💤 ±0 
1 files   ±0   0 ❌ ±0 

Results for commit 167ab5e. ± Comparison against base commit 683ee72.

♻️ This comment has been updated with latest results.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR restructures the CI workflow to support multiple platforms and migrates from native SIMD intrinsics to the SIMDe library for better cross-platform compatibility. The key motivation is to enable the codebase to compile and run on non-x86 architectures (like ARM) while maintaining performance on x86.

  • Replaces native x86 SIMD intrinsics (_mm*, __m256*) with SIMDe equivalents (simde_mm*, simde__m256*)
  • Splits the monolithic CI workflow into separate Linux and macOS workflows with dedicated jobs
  • Adds build system improvements including conditional unit test building and platform-specific dependency handling

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
regen/shader/includer.h Adds missing #include <list> for std::list usage
regen/compute/threading.h Migrates CPU_PAUSE macro from native intrinsics to SIMDe
regen/compute/simd.h Major refactor replacing native SIMD types/intrinsics with SIMDe abstractions
regen/compute/radix-sort-cpu.h Updates SIMD intrinsics to use SIMDe functions
README.md Updates CI badges to reflect new workflow structure
CMakeLists.txt Adds BUILD_UNIT_TESTS flag, removes platform guards from -march=native, adds FreeType brotli dependency
.github/workflows/ci-macos.yml New workflow for macOS builds with Homebrew dependencies
.github/workflows/ci-linux.yml Refactored workflow with separate jobs for build, packaging, and documentation
.github/actions/setup-linux/action.yml New reusable action for installing Linux dependencies

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@daniel86 daniel86 merged commit 4bfc0e2 into dev Jan 1, 2026
5 checks passed
@daniel86 daniel86 deleted the ci branch January 1, 2026 14:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants