Skip to content

Add minutes for HLSL Working Group meeting on 2026-04-30#418

Open
farzonl wants to merge 1 commit into
mainfrom
farzonl-meeting-notes-4-30-26
Open

Add minutes for HLSL Working Group meeting on 2026-04-30#418
farzonl wants to merge 1 commit into
mainfrom
farzonl-meeting-notes-4-30-26

Conversation

@farzonl
Copy link
Copy Markdown
Member

@farzonl farzonl commented Apr 30, 2026

This covers discussion topics known and to be added during the meeting.

This covers discussion topics known and to be added during the meeting.
Comment thread meetings/2026-04-30.md
* https://github.com/llvm/llvm-project/issues/194293 (VUID-StandaloneSpirv-Flat-04744) Flat anonotations
* Matrix Layout Keywords Proposal Update:
* @farzonl wants to add a new AttributedType for Matrix Layout Keywords to eliminate all walking to find Decls (per-call-site discovery).
* Every existing call site already has a QualType so this becomes an easy lookup on the type
Copy link
Copy Markdown
Member Author

@farzonl farzonl Apr 30, 2026

Choose a reason for hiding this comment

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

Problem:

  • per-call-site discovery is a problem. We don't always have access to the Decl in codegen

Solution:

  • Carry it on the type via AttributedType sugar
  • The layout becomes a property of the matrix value's type, which is exactly what the language semantics say it is.
  • When Sema applies hlsl::row_major to a VarDecl/FieldDecl/TypedefDecl, also wrap the declared QualType in AttributedType(attr_hlsl_row_major, …, ConstantMatrixType). Field/var/typedef types already propagate through MemberExpr/DeclRefExpr, so any Expr of matrix type carries the attribute on its QualType. Helper becomes isMatrixRowMajor(LangOpts, QualType)
    — no Decl ever needed at the call site.

Pros:

  • Eliminates all walking. Every existing call site already has a QualType. Naturally survives template instantiation, auto, casts that preserve sugar.
  • Matches how HLSL resource attributes are already modeled (HLSLAttributedResourceType).

Cons:

  • Bigger Sema change (need to actually mutate the declared type when the attr is parsed)
  • and you need a new attr::HLSLRowMajor / HLSLColumnMajor kind in Attr.td so AttributedType recognizes them.

Comment thread meetings/2026-04-30.md
---

* Discussion topics
* * Discuss SPIR-V Validator (spirv-val) failures and resolutions:
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Suggested change
* * Discuss SPIR-V Validator (spirv-val) failures and resolutions:
* Constant Buffer Discussions
* No Resource buffers in constant buffer
* Add const? We have to allow calls to non-const.
* 202y we migrate. Use clang-tidy to only allow calls to const
* Discuss SPIR-V Validator (spirv-val) failures and resolutions:

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