Skip to content

Enable creation of a LinAlg Matrix (type, intrinsic, dxil op) #7846

Closed

Description

This issue is the very first of the set of issues to support the Linear Algebra spec. Because of this it has to solve the chicken-or-the-egg problem.

We need the new dx.types.MatrixRef type to implement any new intrinsic, but to add the dx.types.MatrixRef type we need an intrinsic to actually observe it. Because of this the following tasks must be completed as an atomic unit.

  • Introduce and test the dx.types.MatrixRef type
  • Introduce, lower, and test the __builtin_la_CreateMatrix() HLSL intrinsic
  • Introduce, lower, and test the dx.op.createMatrix DXIL Op

Testing for the above should over at least the following

  • Clang codegen for the intrinsic
  • DXIL lowering
  • Myriad of tests to ensure correct usage/lowering/validation/error messages for the new HLSL type

#7097 is a good example PR of the type of work that needs to be done.

Activity

  1. moved this from Active to Planning in HLSL Supporton Oct 28, 2025
  2. damyanp commented on Oct 28, 2025

    @damyanp
    Member

    From refinement:

    • describe the types of tests that'll be written
      • clang codegen
      • dxil lowering
      • additional tests for the new type

    There's no mention on the new type in the issue, we want to add the new type simultaneously with adding this op.

  3. moved this from Planning to Ready in HLSL Supporton Oct 29, 2025
  4. changed the title [-]Implement Create Matrix `__builtin` and DXIL Op[/-] [+]Enable creation of a LinAlg Matrix (type, intrinsic, dxil op)[/+] on Oct 29, 2025
  5. moved this from Ready to Planning in HLSL Supporton Oct 29, 2025
  6. moved this from Planning to Active in HLSL Supporton Oct 29, 2025
  7. moved this from Todo to In Progress in Roadmap Experimenton Nov 20, 2025
  8. V-FEXrt commented on Feb 2, 2026

    @V-FEXrt
    CollaboratorAuthor

    __builtin_la_CreateMatrix() is no longer a part of the latest spec but the abilty to lower into a dx type (now dx.types.LinAlgMatrix<mangle>) is still needed.

    That work is currently on a "feature" branch but but relies on some hacky throwaway code. It can't be merged until the robust version of the higher level is ready to go in

  9. V-FEXrt commented on Feb 13, 2026

    @V-FEXrt
    CollaboratorAuthor

    Okay this is merged into main, going to close out this issue

  10. moved this from Active to Closed in HLSL Supporton Feb 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions