<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/Frontend/HLSL/RootSignatureValidations.cpp, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>[DirectX] Making sure we always parse, validate and verify Flags (#162171)</title>
<updated>2025-10-08T20:18:18+00:00</updated>
<author>
<name>joaosaffran</name>
<email>joaosaffranllvm@gmail.com</email>
</author>
<published>2025-10-08T20:18:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3a3b21461fef83afdc1812fe4ced4815cb70ef34'/>
<id>3a3b21461fef83afdc1812fe4ced4815cb70ef34</id>
<content type='text'>
This PR makes a few changes to make sure that Root Signature Flags are
always parsed validated and verified, this includes if you use a version
that doesn't support flags. The logic already existed, this PR just
makes sure it is always executed.

Closes: [#161579](https://github.com/llvm/llvm-project/issues/161579)

---------

Co-authored-by: joaosaffran &lt;joao.saffran@microsoft.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR makes a few changes to make sure that Root Signature Flags are
always parsed validated and verified, this includes if you use a version
that doesn't support flags. The logic already existed, this PR just
makes sure it is always executed.

Closes: [#161579](https://github.com/llvm/llvm-project/issues/161579)

---------

Co-authored-by: joaosaffran &lt;joao.saffran@microsoft.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[DirectX] Fix Flags validation to prevent casting into enum (#161587)</title>
<updated>2025-10-06T21:21:28+00:00</updated>
<author>
<name>joaosaffran</name>
<email>joaosaffranllvm@gmail.com</email>
</author>
<published>2025-10-06T21:21:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=58ce3e20e55c67298da94eabe4e25f8baeb45fa7'/>
<id>58ce3e20e55c67298da94eabe4e25f8baeb45fa7</id>
<content type='text'>
This PR changes the validation logic for Root Descriptor and Descriptor
Range flags to properly check if the `uint32_t` values are within range
before casting into the enums.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR changes the validation logic for Root Descriptor and Descriptor
Range flags to properly check if the `uint32_t` values are within range
before casting into the enums.</pre>
</div>
</content>
</entry>
<entry>
<title>[HLSL] Update Frontend to support version 1.2 of root signature (#160616)</title>
<updated>2025-10-01T21:23:37+00:00</updated>
<author>
<name>joaosaffran</name>
<email>joaosaffranllvm@gmail.com</email>
</author>
<published>2025-10-01T21:23:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f2c8c42821a8c6de8984a1e7a932233cf221d5c1'/>
<id>f2c8c42821a8c6de8984a1e7a932233cf221d5c1</id>
<content type='text'>
This patch updates the frontend to support version 1.2 of root
signatures, it adds parsing, metadata generation and a few tests.

---------

Co-authored-by: joaosaffran &lt;joao.saffran@microsoft.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch updates the frontend to support version 1.2 of root
signatures, it adds parsing, metadata generation and a few tests.

---------

Co-authored-by: joaosaffran &lt;joao.saffran@microsoft.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[DirectX] Updating DXContainer Yaml to represent Root Signature 1.2 (#159659)</title>
<updated>2025-09-26T16:04:19+00:00</updated>
<author>
<name>joaosaffran</name>
<email>joaosaffranllvm@gmail.com</email>
</author>
<published>2025-09-26T16:04:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=7d2f6fd177fcf79564e68c9999a38b5af9982cbb'/>
<id>7d2f6fd177fcf79564e68c9999a38b5af9982cbb</id>
<content type='text'>
This PR updates the YAML representation of DXContainer to support Root
Signature 1.2, this also requires updating the write logic to support
testing.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR updates the YAML representation of DXContainer to support Root
Signature 1.2, this also requires updating the write logic to support
testing.</pre>
</div>
</content>
</entry>
<entry>
<title>[DirectX] Adding missing descriptor table validations (#153276)</title>
<updated>2025-09-26T15:58:54+00:00</updated>
<author>
<name>joaosaffran</name>
<email>joaosaffranllvm@gmail.com</email>
</author>
<published>2025-09-26T15:58:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c06f35422d6b049ef6a6b1d7de07597845b841e6'/>
<id>c06f35422d6b049ef6a6b1d7de07597845b841e6</id>
<content type='text'>
This patch adds 2 small validation to DirectX backend. First, it checks
if registers in descriptor tables are not overflowing, meaning they
don't try to bind registers over the maximum allowed value, this is
checked both on the offset and on the number of descriptors inside the
range; second, it checks if samplers are being mixed with other resource
types.
Closes: #153057, #153058

---------

Co-authored-by: joaosaffran &lt;joao.saffran@microsoft.com&gt;
Co-authored-by: Joao Saffran &lt;{ID}+{username}@users.noreply.github.com&gt;
Co-authored-by: Joao Saffran &lt;jderezende@microsoft.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds 2 small validation to DirectX backend. First, it checks
if registers in descriptor tables are not overflowing, meaning they
don't try to bind registers over the maximum allowed value, this is
checked both on the offset and on the number of descriptors inside the
range; second, it checks if samplers are being mixed with other resource
types.
Closes: #153057, #153058

---------

Co-authored-by: joaosaffran &lt;joao.saffran@microsoft.com&gt;
Co-authored-by: Joao Saffran &lt;{ID}+{username}@users.noreply.github.com&gt;
Co-authored-by: Joao Saffran &lt;jderezende@microsoft.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[SemaHLSL] Correct descriptor range overflow validation (#159475)</title>
<updated>2025-09-22T22:18:14+00:00</updated>
<author>
<name>Finn Plummer</name>
<email>mail@inbelic.dev</email>
</author>
<published>2025-09-22T22:18:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=9de9f031711ca4a1467d6cf8c5e38ee8cc1cc48f'/>
<id>9de9f031711ca4a1467d6cf8c5e38ee8cc1cc48f</id>
<content type='text'>
This pr corrects the validation behaviour to allow valid root signatures
of the form:
`DescriptorTable(CBV(b0, offset = 4294967294), CBV(b1))`
which will append a range onto the location of `UINT_MAX`, which is
valid.

Resolves: https://github.com/llvm/llvm-project/issues/159478.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This pr corrects the validation behaviour to allow valid root signatures
of the form:
`DescriptorTable(CBV(b0, offset = 4294967294), CBV(b1))`
which will append a range onto the location of `UINT_MAX`, which is
valid.

Resolves: https://github.com/llvm/llvm-project/issues/159478.</pre>
</div>
</content>
</entry>
<entry>
<title>[DirectX] Removing dxbc StaticSampler from mcbxdc (#154631)</title>
<updated>2025-09-11T22:47:09+00:00</updated>
<author>
<name>joaosaffran</name>
<email>joaosaffranllvm@gmail.com</email>
</author>
<published>2025-09-11T22:47:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=d88c89f860c205cda2c07b59fbb9ede70130818f'/>
<id>d88c89f860c205cda2c07b59fbb9ede70130818f</id>
<content type='text'>
MC Static Samplers Representation currently depends on Object
structures. This PR removes that dependency and in order to facilitate
removing to_underlying usage in follow-up PRs.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
MC Static Samplers Representation currently depends on Object
structures. This PR removes that dependency and in order to facilitate
removing to_underlying usage in follow-up PRs.</pre>
</div>
</content>
</entry>
<entry>
<title>[DirectX] Removing dxbc DescriptorRange from mcbxdc (#154629)</title>
<updated>2025-09-10T18:49:01+00:00</updated>
<author>
<name>joaosaffran</name>
<email>joaosaffranllvm@gmail.com</email>
</author>
<published>2025-09-10T18:49:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=9e778f6cd155f64896a9a0580e96aa4814ca999b'/>
<id>9e778f6cd155f64896a9a0580e96aa4814ca999b</id>
<content type='text'>
MC Descriptor Range Representation currently depend on Object
structures. This PR removes that dependency and in order to facilitate
removing to_underlying usage in follow-up PRs.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
MC Descriptor Range Representation currently depend on Object
structures. This PR removes that dependency and in order to facilitate
removing to_underlying usage in follow-up PRs.</pre>
</div>
</content>
</entry>
<entry>
<title>[Sema][Parse][HLSL] Implement front-end rootsignature validations (#156754)</title>
<updated>2025-09-09T17:15:33+00:00</updated>
<author>
<name>Finn Plummer</name>
<email>mail@inbelic.dev</email>
</author>
<published>2025-09-09T17:15:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6a9d43a7f6a802b8b36b60de9b729c6a4ab1f634'/>
<id>6a9d43a7f6a802b8b36b60de9b729c6a4ab1f634</id>
<content type='text'>
This pr implements the following validations:

1. Check that descriptor tables don't mix Sample and non-Sampler
resources
2. Ensure that descriptor ranges don't append onto an unbounded range
3. Ensure that descriptor ranges don't overflow
4. Adds a missing validation to ensure that only a single `RootFlags`
parameter is provided

Resolves: https://github.com/llvm/llvm-project/issues/153868.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This pr implements the following validations:

1. Check that descriptor tables don't mix Sample and non-Sampler
resources
2. Ensure that descriptor ranges don't append onto an unbounded range
3. Ensure that descriptor ranges don't overflow
4. Adds a missing validation to ensure that only a single `RootFlags`
parameter is provided

Resolves: https://github.com/llvm/llvm-project/issues/153868.</pre>
</div>
</content>
</entry>
<entry>
<title>[HLSL][NFC] Fix range check in verifyRegisterSpace (#152615)</title>
<updated>2025-08-08T17:04:34+00:00</updated>
<author>
<name>Shafik Yaghmour</name>
<email>shafik.yaghmour@intel.com</email>
</author>
<published>2025-08-08T17:04:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=51bc0c1d6bb9ab2c1c2acb3f37d00ed919202973'/>
<id>51bc0c1d6bb9ab2c1c2acb3f37d00ed919202973</id>
<content type='text'>
Static analysis flagged the second part of this range check as always
true. RegisterSpace is uint32_t therefore the max value is 0xFFFFFFFF
and so the first check is sufficient.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Static analysis flagged the second part of this range check as always
true. RegisterSpace is uint32_t therefore the max value is 0xFFFFFFFF
and so the first check is sufficient.</pre>
</div>
</content>
</entry>
</feed>
