<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp, branch users/fmayer/spr/main.flowsensitive-statusor-2n-add-minimal-model</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>[AMDGPU] Remove NoInfsFPMath uses (#163028)</title>
<updated>2025-10-13T11:15:49+00:00</updated>
<author>
<name>paperchalice</name>
<email>liujunchang97@outlook.com</email>
</author>
<published>2025-10-13T11:15:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=14a42e64cf2bd1e6dcc3bbc417d02cf773cb9752'/>
<id>14a42e64cf2bd1e6dcc3bbc417d02cf773cb9752</id>
<content type='text'>
Only `ninf` should be used.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Only `ninf` should be used.</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU] Add the support for 45-bit buffer resource (#159702)</title>
<updated>2025-09-24T15:12:02+00:00</updated>
<author>
<name>Shilei Tian</name>
<email>i@tianshilei.me</email>
</author>
<published>2025-09-24T15:12:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=2195fe7e018db3d9a6c2e392a2bf8591859b872f'/>
<id>2195fe7e018db3d9a6c2e392a2bf8591859b872f</id>
<content type='text'>
On new targets like `gfx1250`, the buffer resource (V#) now uses this
format:

```
base (57-bit): resource[56:0]
num_records (45-bit): resource[101:57]
reserved (6-bit): resource[107:102]
stride (14-bit): resource[121:108]
```

This PR changes the type of `num_records` from `i32` to `i64` in both
builtin and intrinsic, and also adds the support for lowering the new
format.

Fixes SWDEV-554034.

---------

Co-authored-by: Krzysztof Drewniak &lt;Krzysztof.Drewniak@amd.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
On new targets like `gfx1250`, the buffer resource (V#) now uses this
format:

```
base (57-bit): resource[56:0]
num_records (45-bit): resource[101:57]
reserved (6-bit): resource[107:102]
stride (14-bit): resource[121:108]
```

This PR changes the type of `num_records` from `i32` to `i64` in both
builtin and intrinsic, and also adds the support for lowering the new
format.

Fixes SWDEV-554034.

---------

Co-authored-by: Krzysztof Drewniak &lt;Krzysztof.Drewniak@amd.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU] Fix codegen to emit COPY instead of S_MOV_B64 for aperture regs (#158754)</title>
<updated>2025-09-16T09:26:32+00:00</updated>
<author>
<name>Stanislav Mekhanoshin</name>
<email>Stanislav.Mekhanoshin@amd.com</email>
</author>
<published>2025-09-16T09:26:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=76efbc068a6ab6ffa10b801df07155a6a69530e7'/>
<id>76efbc068a6ab6ffa10b801df07155a6a69530e7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU] Support lowering of cluster related instrinsics (#157978)</title>
<updated>2025-09-13T01:11:17+00:00</updated>
<author>
<name>Shilei Tian</name>
<email>i@tianshilei.me</email>
</author>
<published>2025-09-13T01:11:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=1180c2ced008e33b0a4b2b91b3cb24724f06147c'/>
<id>1180c2ced008e33b0a4b2b91b3cb24724f06147c</id>
<content type='text'>
Since many code are connected, this also changes how workgroup id is lowered.

Co-authored-by: Jay Foad &lt;jay.foad@amd.com&gt;
Co-authored-by: Ivan Kosarev &lt;ivan.kosarev@amd.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Since many code are connected, this also changes how workgroup id is lowered.

Co-authored-by: Jay Foad &lt;jay.foad@amd.com&gt;
Co-authored-by: Ivan Kosarev &lt;ivan.kosarev@amd.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU][Legalizer] Avoid pack/unpack for G_FSHR (#156796)</title>
<updated>2025-09-04T23:12:57+00:00</updated>
<author>
<name>Anshil Gandhi</name>
<email>95053726+gandhi56@users.noreply.github.com</email>
</author>
<published>2025-09-04T23:12:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c6899193ed9b4818dcd20301f36992066c1776d5'/>
<id>c6899193ed9b4818dcd20301f36992066c1776d5</id>
<content type='text'>
Scalarize G_FSHR only if the subtarget does not support V2S16 type.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Scalarize G_FSHR only if the subtarget does not support V2S16 type.</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU][gfx1250] Add 128B cooperative atomics (#156418)</title>
<updated>2025-09-04T09:19:25+00:00</updated>
<author>
<name>Pierre van Houtryve</name>
<email>pierre.vanhoutryve@amd.com</email>
</author>
<published>2025-09-04T09:19:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=e2bd10cf16c3f90813de5b64f348ece035a6bb68'/>
<id>e2bd10cf16c3f90813de5b64f348ece035a6bb68</id>
<content type='text'>
- Add clang built-ins + sema/codegen
- Add IR Intrinsic + verifier
- Add DAG/GlobalISel codegen for the intrinsics
- Add lowering in SIMemoryLegalizer using a MMO flag.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Add clang built-ins + sema/codegen
- Add IR Intrinsic + verifier
- Add DAG/GlobalISel codegen for the intrinsics
- Add lowering in SIMemoryLegalizer using a MMO flag.</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU] Remove `ApproxFuncFPMath` uses (#155578)</title>
<updated>2025-08-28T03:09:01+00:00</updated>
<author>
<name>paperchalice</name>
<email>liujunchang97@outlook.com</email>
</author>
<published>2025-08-28T03:09:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=595573d1edeb0896aeeca84ac5146e11c937305e'/>
<id>595573d1edeb0896aeeca84ac5146e11c937305e</id>
<content type='text'>
One of options in `resetTargetOptions`, this removes `ApproxFuncFPMath`
in AMDGPU part.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
One of options in `resetTargetOptions`, this removes `ApproxFuncFPMath`
in AMDGPU part.</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU] Narrow only on store to pow of 2 mem location (#150093)</title>
<updated>2025-08-18T15:04:27+00:00</updated>
<author>
<name>Tiger Ding</name>
<email>38360323+zerogtiger@users.noreply.github.com</email>
</author>
<published>2025-08-18T15:04:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=4ab14685a0b96b48f8fd77ead55c1816668cac18'/>
<id>4ab14685a0b96b48f8fd77ead55c1816668cac18</id>
<content type='text'>
Lowering in GlobalISel for AMDGPU previously always narrows to i32 on
truncating store regardless of mem size or scalar size, causing issues
with types like i65 which is first extended to i128 then stored as i64 +
i8 to i128 locations. Narrowing only on store to pow of 2 mem location
ensures only narrowing to mem size near end of legalization.

This LLVM defect was identified via the AMD Fuzzing project.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Lowering in GlobalISel for AMDGPU previously always narrows to i32 on
truncating store regardless of mem size or scalar size, causing issues
with types like i65 which is first extended to i128 then stored as i64 +
i8 to i128 locations. Narrowing only on store to pow of 2 mem location
ensures only narrowing to mem size near end of legalization.

This LLVM defect was identified via the AMD Fuzzing project.</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU] Per-subtarget DPP instruction classification (#153096)</title>
<updated>2025-08-11T22:41:02+00:00</updated>
<author>
<name>Stanislav Mekhanoshin</name>
<email>Stanislav.Mekhanoshin@amd.com</email>
</author>
<published>2025-08-11T22:41:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ea14834966ad666856246f24de46397cbfc932eb'/>
<id>ea14834966ad666856246f24de46397cbfc932eb</id>
<content type='text'>
This is NFCI at this point.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is NFCI at this point.</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU] Fix buffer addressing mode matching (#152584)</title>
<updated>2025-08-07T21:23:41+00:00</updated>
<author>
<name>Stanislav Mekhanoshin</name>
<email>Stanislav.Mekhanoshin@amd.com</email>
</author>
<published>2025-08-07T21:23:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=abc22f771ebe05c2aeb8386337d9fb8d2bdd1094'/>
<id>abc22f771ebe05c2aeb8386337d9fb8d2bdd1094</id>
<content type='text'>
Starting in gfx1250, voffset and immoffset are zero-extended from 32
bits
to 45 bits before being added together.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Starting in gfx1250, voffset and immoffset are zero-extended from 32
bits
to 45 bits before being added together.</pre>
</div>
</content>
</entry>
</feed>
