Skip to content

[Validation] Drill through chained GEPs for TGSM#8575

Open
llvm-beanz wants to merge 1 commit into
microsoft:mainfrom
llvm-beanz:8571
Open

[Validation] Drill through chained GEPs for TGSM#8575
llvm-beanz wants to merge 1 commit into
microsoft:mainfrom
llvm-beanz:8571

Conversation

@llvm-beanz

@llvm-beanz llvm-beanz commented Jun 19, 2026

Copy link
Copy Markdown
Collaborator

DXIL requires that TGSM pointers originate from a global variable in address space 3, and that any use of a pointer resolve to one and only one possible global variable.

In SM 6.9 with the introduction of native vectors to DXIL it is now possible to end up with a chain of GEP and/or bitcast instructions in the access change for a TGSM pointer. To address this the validator needs to be able to walk up a TGSM chain to find the one unambiguous global.

Fixes #8571

Assisted by Claude Opus 4.7

DXIL requires that TGSM pointers originate from a global variable in
address space 3, and that any use of a pointer resolve to one and only
one possible global variable.

In SM 6.9 with the introduction of native vectors to DXIL it is now
possible to end up with a chain of GEP and/or bitcast instructions in
the access change for a TGSM pointer. To address this the validator
needs to be able to walk up a TGSM chain to find the one unambiguous
global.

Assisted by Claude Opus 4.7
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: New

Development

Successfully merging this pull request may close these issues.

[6.9] Validator failing to look through multi-level GEPs

1 participant