New PartialRegister type - #7
Merged
Merged
Conversation
docs: improve register type proposal docs: implementation plan for Register type [Phase 0]: Freeze the Contract and Record the Baseline [Phase 1]: Add Language Availability and Build Integration docs: add new phase for implementing containerized multi-compiler build matrix [Phase 2]: Establish Reproducible Containerized Compiler Environments fix: only force full project rebuilds within CI environments [Phae 3]: initial phase 3 chore: always compare compiler codegen with stack protection flags turned on fix: move constexpr code out of method body to prevent MSVC being stupid and forcing bad codegen fix: MSVC has bad heuristics fix: compilers (MSVC) can de-optimize methods due to characteristics of constexpr code if its within the main body perf: implement method flattening for transform methods chore: remove redundant inline statements dev: add todo tasks for supporting Intel ICX and NVC++ compilers chore: update phase 3 tasks [Phase 3]: Establish the Representation and Performance Harness [Phase 4]: Implement Register Construction, Observation, and Transfer feat: implement missing api methods & drop 32bit support [Phase 5]: Implement RegisterMask, Comparisons, and Selection perf: mark applicable methods for flattening and register-only-access [Phase 6]: Implement Basic Arithmetic, Bitwise Operations, and Shifts perf: improve code gen for MSVC docs: additional project tasks [Phase 7]: Implement Specialized Arithmetic and Reductions refactor: encapsulate all layer concepts into interface-like namespaces [Phase 8]: Implement Rearrangement and Conversion Operations dev: setup clang format chore: fix formatting error dev: add task to format all files chore: run format all [Phase 9]: Complete the Operation and Constraint Matrix [Phase 10]: Qualify Correctness, Constexpr, Preconditions, ABI, and Performance [Phase 11]: Expose, Migrate, Document, and Close Out dev: update project todo docs: refresh Register closeout evidence dev: update project todo dev: update project todo docs: implementation tasklist for build pipeline improvements docs: revise implementation plan chore: commit temp changes before refactoring work [Phase 0]: Freeze the Matrix and Measure the Baseline [Phase 1]: Create Exhaustive CMake Build Profiles [Phase 2]: Separate Build and Test Responsibilities [Phase 3]: Refactor Container Matrix Orchestration [Phase 4]: Add Native Compiler and Top-Level Commands [Phase 5]: Migrate CI Without Losing Coverage [Phase 6]: Prove Completeness and Cache Reuse [Phase 7]: Document and Migrate Interfaces docs: add additional phase for build-time improvement [Phase 7]: Document and Migrate Interfaces [Phase 8]: Remove Retired Windows GNU Support References chore: remove completed task list docs: task list for improving build performance [Phase 0]: Establish the Compilation Baseline [Phase 1]: Separate Benchmark Compilation from the Default Build [Phase 2]: Evaluate the Constexpr Compilation Burden [Phase 3]: Analyze the `uint128_t` Compilation Burden [Phase 4]: Analyze the `Bmi.h` Compilation Burden docs: plan to expand Api::shuffle support to all integer widths [Phase 0]: Freeze the Existing Surface and Baseline [Phase 1]: Establish Independent Behavioral and Constraint Oracles [Phase 2]: Implement the 128-Bit Backends [Phase 3]: Implement the 256-Bit Backends [Phase 4]: Generalize the Public Layers [Phase 5]: Prove Runtime Code Quality and Compilation Cost [Phase 6]: Document and Complete Validation docs: remove completed task list chore: code comments refactor: encapsulate vector aliases within their own file dev: update project task list chore: remove completed task list docs: proposal plan for new unified SIMD-FLAGS macro system refactor: redefine alias types to point to register type instead of old SimdVector feat: implement `shuffle_bytes<>` method for Simd Register class tests: test coverage for Register `shuffle_bytes` method docs: implementation plan for new unified SIMD-FLAGS macro system [Phase 0]: Freeze the Grammar and Contract [Phase 1]: Prove the Macro Grammar Is Implementable revise SIMD_FLAGS macro prototype [Phase 2]: Qualify Compiler Placement and Attribute Composition [Phase 3]: Implement the Public Macro and Compiler Adapters [Phase 4]: Establish Contract and Code-Generation Tests [Phase 5]: Inventory and Classify Existing Declarations fix: minor corrections to api & implementation layers docs: refactor tasklist for SIMD layer methodss which use stack memory during runtime [Task 1]: Restore a Focused Compilable Baseline [Task 2]: Constant-Evaluation Helper Boundary [Task 3]: Unconditional API Delegation [Task 4]: Specialized 128-Bit Runtime Extraction docs: expand planning tasklist [Task 5]: Specialized 256-Bit Runtime Extraction docs: amend planning doc with new performance phase [Task 6]: Implementation Extraction Naming Consolidation [Task 7]: Specialized 128-Bit Runtime Insertion [Task 8/9]: Specialized 256-Bit Runtime Insertion [Task 10]: Specialized 128-Bit Integer Remainder Extensions docs: extend planning tasks with codegen test suite cleanup work [Task 11]: Specialized 256-Bit Integer Remainder Extensions [Task 12]: Complete-Register Runtime Byte Shifts docs: extend planning tasks with codegen test suite cleanup work [Task 13]: Complete-Register Bit Shifts [Task 14]: 128-Bit 64-Bit-Lane `setr` [Task 15]: Immediate-Control Runtime Naming [Task 16]: Method-Flag Inventory Reconciliation [Task 17]: Focused Cross-Compiler Validation [Task 18]: Branchless 256-Bit Runtime Extraction Evaluation [Task 19]: Permanent Generated-Code Fixture Rationalization [Task 20]: Complete Permanent Generated-Code Suite Audit and Final Integration docs: remove completed task list chore: code comments docs: initial build pipeline optimization proposal [Phase 0]: Freeze Validation Ownership and Baseline the Pipeline [Phase 1]: Replace the Monolithic Artifact Sweep with Scoped Aggregates [Phase 2]: Deduplicate Repository and Compiler-Front-End Contracts [Phase 3]: Separate Optimized Codegen Gates from Diagnostic Codegen [Phase 4]: Reduce the Ordinary Debug Compiler Matrix [Phase 5]: Slim Runtime, Sanitizer, and Coverage Target Sets [Phase 6]: Deduplicate Examples, ODR, Smoke, and External Consumers [Phase 7]: Refactor Presets and Unified Pipeline Orchestration [Phase 8]: Add Matrix-Ownership and No-Rebuild Regression Coverage [Phase 9]: Measure, Qualify, and Document [Phase 10]: Remove Temporary Planning and Evidence Documentation [Phase 6]: Migrate Implementation and Api Layers [Phase 7]: Migrate Register-Facing and Remaining Public Code [Phase 8]: Remove the Legacy Declaration Surface and Add Audits [Phase 9]: Document, Qualify, and Close Out chore: removing leftover legacy macro usages chore: remove completed task list dev: update project task list chore: remove obsolete files chore: Remove `MethodFlagsInventory.csv` from the repo and audit tooling chore: Remove `MethodFlagsRegisterOnly.csv` from the repo and audit tooling. docs: build pipeline cleanup plan [Phase 1]: Retire Method-Flags Source Auditing [Phase 2]: Remove Public-Header `static_assert` Auditing [Phase 3]: Restructure Validation-Matrix and Pipeline Validation chore: remove completed task list docs: register byte shift extension plan dev: update project todo [Phase 1]: Fix the Naming and Semantic Contract [Phase 2]: Rename the Existing Complete-Register Shift Surface [Phase 3]: Implement Immediate Complete-Register Byte Shifts [Phase 4]: Expose the Immediate API Through `Api` and `Register` dev: update project todo [Phase 5]: Prove Semantics, Availability, and Generated Code [Phase 6]: Documentation and Final Cleanup chore: remove completed task list docs: implementation plan for compile-time register constants [Phase 1]: Fix the Public and Layer Contracts chore: remove deprecated task list chore: remove python from github ci and use choco instead fix: save & restore Clang/CMake paths before & after importing the MSVC environment so they arent overwritten dev: lower minimum version for CMake to 3.31 & CLang to 20 dev: fix linux container build for github ci docs: initial implementation plan for PartialRegister type docs: amend implementation plan for PartialRegister type [Phase 1]: Freeze the Public Contract and Operation Ledger [Phase 2]: Establish Headers, Availability, and the Object Model [Phase 3]: Implement PartialRegisterMask and Predicate Semantics [Phase 4]: Implement Construction, Transfer, and Observation [Phase 5]: Implement Arithmetic and Specialized Operations [Phase 6]: Implement Bitwise, Shift, and Comparison Operations [Phase 7]: Implement Rearrangement and Conversion Operations [Phase 8]: Complete the Public Surface and Integration [Phase 9]: Qualify ABI, Generated Code, and Performance [Phase 10]: Documentation, Full Validation, and Cleanup chore: remove unneeded documents chore: remove unneeded documents dev: add MSVC LLVM 20 to build matrix dev: extract partial register codegen snapshot tests into json config file docs: initial proposal for aligning Register types codegen tests with new standards
…he vscode tasks menu
docs: improve register type proposal docs: implementation plan for Register type [Phase 0]: Freeze the Contract and Record the Baseline [Phase 1]: Add Language Availability and Build Integration docs: add new phase for implementing containerized multi-compiler build matrix [Phase 2]: Establish Reproducible Containerized Compiler Environments fix: only force full project rebuilds within CI environments [Phae 3]: initial phase 3 chore: always compare compiler codegen with stack protection flags turned on fix: move constexpr code out of method body to prevent MSVC being stupid and forcing bad codegen fix: MSVC has bad heuristics fix: compilers (MSVC) can de-optimize methods due to characteristics of constexpr code if its within the main body perf: implement method flattening for transform methods chore: remove redundant inline statements dev: add todo tasks for supporting Intel ICX and NVC++ compilers chore: update phase 3 tasks [Phase 3]: Establish the Representation and Performance Harness [Phase 4]: Implement Register Construction, Observation, and Transfer feat: implement missing api methods & drop 32bit support [Phase 5]: Implement RegisterMask, Comparisons, and Selection perf: mark applicable methods for flattening and register-only-access [Phase 6]: Implement Basic Arithmetic, Bitwise Operations, and Shifts perf: improve code gen for MSVC docs: additional project tasks [Phase 7]: Implement Specialized Arithmetic and Reductions refactor: encapsulate all layer concepts into interface-like namespaces [Phase 8]: Implement Rearrangement and Conversion Operations dev: setup clang format chore: fix formatting error dev: add task to format all files chore: run format all [Phase 9]: Complete the Operation and Constraint Matrix [Phase 10]: Qualify Correctness, Constexpr, Preconditions, ABI, and Performance [Phase 11]: Expose, Migrate, Document, and Close Out dev: update project todo docs: refresh Register closeout evidence dev: update project todo dev: update project todo docs: implementation tasklist for build pipeline improvements docs: revise implementation plan chore: commit temp changes before refactoring work [Phase 0]: Freeze the Matrix and Measure the Baseline [Phase 1]: Create Exhaustive CMake Build Profiles [Phase 2]: Separate Build and Test Responsibilities [Phase 3]: Refactor Container Matrix Orchestration [Phase 4]: Add Native Compiler and Top-Level Commands [Phase 5]: Migrate CI Without Losing Coverage [Phase 6]: Prove Completeness and Cache Reuse [Phase 7]: Document and Migrate Interfaces docs: add additional phase for build-time improvement [Phase 7]: Document and Migrate Interfaces [Phase 8]: Remove Retired Windows GNU Support References chore: remove completed task list docs: task list for improving build performance [Phase 0]: Establish the Compilation Baseline [Phase 1]: Separate Benchmark Compilation from the Default Build [Phase 2]: Evaluate the Constexpr Compilation Burden [Phase 3]: Analyze the `uint128_t` Compilation Burden [Phase 4]: Analyze the `Bmi.h` Compilation Burden docs: plan to expand Api::shuffle support to all integer widths [Phase 0]: Freeze the Existing Surface and Baseline [Phase 1]: Establish Independent Behavioral and Constraint Oracles [Phase 2]: Implement the 128-Bit Backends [Phase 3]: Implement the 256-Bit Backends [Phase 4]: Generalize the Public Layers [Phase 5]: Prove Runtime Code Quality and Compilation Cost [Phase 6]: Document and Complete Validation docs: remove completed task list chore: code comments refactor: encapsulate vector aliases within their own file dev: update project task list chore: remove completed task list docs: proposal plan for new unified SIMD-FLAGS macro system refactor: redefine alias types to point to register type instead of old SimdVector feat: implement `shuffle_bytes<>` method for Simd Register class tests: test coverage for Register `shuffle_bytes` method docs: implementation plan for new unified SIMD-FLAGS macro system [Phase 0]: Freeze the Grammar and Contract [Phase 1]: Prove the Macro Grammar Is Implementable revise SIMD_FLAGS macro prototype [Phase 2]: Qualify Compiler Placement and Attribute Composition [Phase 3]: Implement the Public Macro and Compiler Adapters [Phase 4]: Establish Contract and Code-Generation Tests [Phase 5]: Inventory and Classify Existing Declarations fix: minor corrections to api & implementation layers docs: refactor tasklist for SIMD layer methodss which use stack memory during runtime [Task 1]: Restore a Focused Compilable Baseline [Task 2]: Constant-Evaluation Helper Boundary [Task 3]: Unconditional API Delegation [Task 4]: Specialized 128-Bit Runtime Extraction docs: expand planning tasklist [Task 5]: Specialized 256-Bit Runtime Extraction docs: amend planning doc with new performance phase [Task 6]: Implementation Extraction Naming Consolidation [Task 7]: Specialized 128-Bit Runtime Insertion [Task 8/9]: Specialized 256-Bit Runtime Insertion [Task 10]: Specialized 128-Bit Integer Remainder Extensions docs: extend planning tasks with codegen test suite cleanup work [Task 11]: Specialized 256-Bit Integer Remainder Extensions [Task 12]: Complete-Register Runtime Byte Shifts docs: extend planning tasks with codegen test suite cleanup work [Task 13]: Complete-Register Bit Shifts [Task 14]: 128-Bit 64-Bit-Lane `setr` [Task 15]: Immediate-Control Runtime Naming [Task 16]: Method-Flag Inventory Reconciliation [Task 17]: Focused Cross-Compiler Validation [Task 18]: Branchless 256-Bit Runtime Extraction Evaluation [Task 19]: Permanent Generated-Code Fixture Rationalization [Task 20]: Complete Permanent Generated-Code Suite Audit and Final Integration docs: remove completed task list chore: code comments docs: initial build pipeline optimization proposal [Phase 0]: Freeze Validation Ownership and Baseline the Pipeline [Phase 1]: Replace the Monolithic Artifact Sweep with Scoped Aggregates [Phase 2]: Deduplicate Repository and Compiler-Front-End Contracts [Phase 3]: Separate Optimized Codegen Gates from Diagnostic Codegen [Phase 4]: Reduce the Ordinary Debug Compiler Matrix [Phase 5]: Slim Runtime, Sanitizer, and Coverage Target Sets [Phase 6]: Deduplicate Examples, ODR, Smoke, and External Consumers [Phase 7]: Refactor Presets and Unified Pipeline Orchestration [Phase 8]: Add Matrix-Ownership and No-Rebuild Regression Coverage [Phase 9]: Measure, Qualify, and Document [Phase 10]: Remove Temporary Planning and Evidence Documentation [Phase 6]: Migrate Implementation and Api Layers [Phase 7]: Migrate Register-Facing and Remaining Public Code [Phase 8]: Remove the Legacy Declaration Surface and Add Audits [Phase 9]: Document, Qualify, and Close Out chore: removing leftover legacy macro usages chore: remove completed task list dev: update project task list chore: remove obsolete files chore: Remove `MethodFlagsInventory.csv` from the repo and audit tooling chore: Remove `MethodFlagsRegisterOnly.csv` from the repo and audit tooling. docs: build pipeline cleanup plan [Phase 1]: Retire Method-Flags Source Auditing [Phase 2]: Remove Public-Header `static_assert` Auditing [Phase 3]: Restructure Validation-Matrix and Pipeline Validation chore: remove completed task list docs: register byte shift extension plan dev: update project todo [Phase 1]: Fix the Naming and Semantic Contract [Phase 2]: Rename the Existing Complete-Register Shift Surface [Phase 3]: Implement Immediate Complete-Register Byte Shifts [Phase 4]: Expose the Immediate API Through `Api` and `Register` dev: update project todo [Phase 5]: Prove Semantics, Availability, and Generated Code [Phase 6]: Documentation and Final Cleanup chore: remove completed task list docs: implementation plan for compile-time register constants [Phase 1]: Fix the Public and Layer Contracts chore: remove deprecated task list chore: remove python from github ci and use choco instead fix: save & restore Clang/CMake paths before & after importing the MSVC environment so they arent overwritten dev: lower minimum version for CMake to 3.31 & CLang to 20 dev: fix linux container build for github ci docs: initial implementation plan for PartialRegister type docs: amend implementation plan for PartialRegister type [Phase 1]: Freeze the Public Contract and Operation Ledger [Phase 2]: Establish Headers, Availability, and the Object Model [Phase 3]: Implement PartialRegisterMask and Predicate Semantics [Phase 4]: Implement Construction, Transfer, and Observation [Phase 5]: Implement Arithmetic and Specialized Operations [Phase 6]: Implement Bitwise, Shift, and Comparison Operations [Phase 7]: Implement Rearrangement and Conversion Operations [Phase 8]: Complete the Public Surface and Integration [Phase 9]: Qualify ABI, Generated Code, and Performance [Phase 10]: Documentation, Full Validation, and Cleanup chore: remove unneeded documents chore: remove unneeded documents dev: add MSVC LLVM 20 to build matrix dev: extract partial register codegen snapshot tests into json config file docs: initial proposal for aligning Register types codegen tests with new standards
dsisco11
force-pushed
the
partial-register-type--squashed
branch
from
September 13, 2026 04:10
d9aa528 to
75d4bee
Compare
…uaranteed compile-time control masks
…ent known at compile time
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.