<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.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>[AMDGPU] update LDS block size for gfx1250 (#167614)</title>
<updated>2025-11-18T00:03:47+00:00</updated>
<author>
<name>Changpeng Fang</name>
<email>changpeng.fang@amd.com</email>
</author>
<published>2025-11-18T00:03:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=5f38ae4a77d42a0165070a8ad9b6ea2dbbfdfb51'/>
<id>5f38ae4a77d42a0165070a8ad9b6ea2dbbfdfb51</id>
<content type='text'>
LDS block size should be 2048 bytes (512 dwords) based on current spec.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
LDS block size should be 2048 bytes (512 dwords) based on current spec.</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU] Fix wrong MSB encoding for V_FMAMK instructions (#168107)</title>
<updated>2025-11-14T22:50:17+00:00</updated>
<author>
<name>Shilei Tian</name>
<email>i@tianshilei.me</email>
</author>
<published>2025-11-14T22:50:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=72a6ae6844752f2232c64b41e4eccf979289da72'/>
<id>72a6ae6844752f2232c64b41e4eccf979289da72</id>
<content type='text'>
These instructions use `src0`, `imm`, `src1` as operand.

Fixes SWDEV-566579.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
These instructions use `src0`, `imm`, `src1` as operand.

Fixes SWDEV-566579.</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU] Remove implicit conversions of MCRegister to unsigned. NFC (#167284)</title>
<updated>2025-11-11T16:54:27+00:00</updated>
<author>
<name>Craig Topper</name>
<email>craig.topper@sifive.com</email>
</author>
<published>2025-11-11T16:54:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8eb28ca83dd501055e2c232dccadcad490d452b6'/>
<id>8eb28ca83dd501055e2c232dccadcad490d452b6</id>
<content type='text'>
Use MCRegister instead of MCPhysReg or use MCRegister::id().</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use MCRegister instead of MCPhysReg or use MCRegister::id().</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU][MC] Avoid creating lit64() operands unless asked or needed. (#161191)</title>
<updated>2025-10-08T09:51:55+00:00</updated>
<author>
<name>Ivan Kosarev</name>
<email>ivan.kosarev@amd.com</email>
</author>
<published>2025-10-08T09:51:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=20f41ed8c195eff6199dc77bdd20f7226cfdae0f'/>
<id>20f41ed8c195eff6199dc77bdd20f7226cfdae0f</id>
<content type='text'>
There should normally be no need to generate implicit lit64()
modifiers on the assembler side. It's the encoder's responsibility
to recognise literals that are implicitly 64 bits wide.

The exceptions are where we rewrite floating-point operand values
as integer ones, which would not be assembled back to the original
values unless wrapped into lit64().

Respect explicit lit() modifiers for non-inline values as
necessary to avoid regressions in MC tests. This change still
doesn't prevent use of inline constants where lit()/lit64 is
specified; subject to a separate patch.

On disassembling, only create lit64() operands where necessary for
correct round-tripping.

Add round-tripping tests where useful and feasible.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There should normally be no need to generate implicit lit64()
modifiers on the assembler side. It's the encoder's responsibility
to recognise literals that are implicitly 64 bits wide.

The exceptions are where we rewrite floating-point operand values
as integer ones, which would not be assembled back to the original
values unless wrapped into lit64().

Respect explicit lit() modifiers for non-inline values as
necessary to avoid regressions in MC tests. This change still
doesn't prevent use of inline constants where lit()/lit64 is
specified; subject to a separate patch.

On disassembling, only create lit64() operands where necessary for
correct round-tripping.

Add round-tripping tests where useful and feasible.</pre>
</div>
</content>
</entry>
<entry>
<title>AMDGPU: Use RegClassByHwMode to manage operand VGPR operand constraints (#158272)</title>
<updated>2025-10-08T02:19:54+00:00</updated>
<author>
<name>Matt Arsenault</name>
<email>Matthew.Arsenault@amd.com</email>
</author>
<published>2025-10-08T02:19:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=1a5494ca4a7d2e6884e17c064e5215b34fbe4b40'/>
<id>1a5494ca4a7d2e6884e17c064e5215b34fbe4b40</id>
<content type='text'>
This removes special case processing in TargetInstrInfo::getRegClass to
fixup register operands which depending on the subtarget support AGPRs,
or require even aligned registers.

This regresses assembler diagnostics, which currently work by hackily
accepting invalid cases and then post-rejecting a validly parsed
instruction.
On the plus side this now emits a comment when disassembling unaligned
registers for targets with the alignment requirement.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This removes special case processing in TargetInstrInfo::getRegClass to
fixup register operands which depending on the subtarget support AGPRs,
or require even aligned registers.

This regresses assembler diagnostics, which currently work by hackily
accepting invalid cases and then post-rejecting a validly parsed
instruction.
On the plus side this now emits a comment when disassembling unaligned
registers for targets with the alignment requirement.</pre>
</div>
</content>
</entry>
<entry>
<title>AMDGPU: Account for read/write register intrinsics for AGPR usage (#161988)</title>
<updated>2025-10-08T02:09:22+00:00</updated>
<author>
<name>Matt Arsenault</name>
<email>Matthew.Arsenault@amd.com</email>
</author>
<published>2025-10-08T02:09:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=cb53a2de37460e2d59f6828d3c5f1e35ac512dde'/>
<id>cb53a2de37460e2d59f6828d3c5f1e35ac512dde</id>
<content type='text'>
Fix the special case intrinsics that can directly reference a physical
register. There's no reason to use this.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix the special case intrinsics that can directly reference a physical
register. There's no reason to use this.</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU] Remove subtarget features for dynamic VGPRs (#160822)</title>
<updated>2025-10-06T07:50:11+00:00</updated>
<author>
<name>Diana Picus</name>
<email>Diana-Magda.Picus@amd.com</email>
</author>
<published>2025-10-06T07:50:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ebbc0e97b991c98bbcacf3d49b54685ef1a73188'/>
<id>ebbc0e97b991c98bbcacf3d49b54685ef1a73188</id>
<content type='text'>
Users of the backend are expected to enable dynamic VGPRs via the
`amdgpu-dynamic-vgpr-block-size` attribute instead of the subtarget
features (see https://github.com/llvm/llvm-project/pull/133444).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Users of the backend are expected to enable dynamic VGPRs via the
`amdgpu-dynamic-vgpr-block-size` attribute instead of the subtarget
features (see https://github.com/llvm/llvm-project/pull/133444).</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU] Fix high vgpr printing with true16 (#160209)</title>
<updated>2025-09-23T16:51:21+00:00</updated>
<author>
<name>Stanislav Mekhanoshin</name>
<email>Stanislav.Mekhanoshin@amd.com</email>
</author>
<published>2025-09-23T16:51:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f693a7f2c240fdd1077120291912f1ffbe27601b'/>
<id>f693a7f2c240fdd1077120291912f1ffbe27601b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[AMDGPU][MC] Keep MCOperands unencoded. (#158685)</title>
<updated>2025-09-16T08:01:01+00:00</updated>
<author>
<name>Ivan Kosarev</name>
<email>ivan.kosarev@amd.com</email>
</author>
<published>2025-09-16T08:01:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=7ba702195136b448d6f35ae3ea4075059cb0df82'/>
<id>7ba702195136b448d6f35ae3ea4075059cb0df82</id>
<content type='text'>
We have proper encoding facilities to encode operands and instructions;
there's no need to pollute the MC representation with encoding details.

Supposed to be an NFCI, but happens to fix some re-encoded instruction
codes in disassembler tests.

The 64-bit operands are to be addressed in following patches introducing
MC-level representation for lit() and lit64() modifiers, to then be
respected by both the assembler and disassembler.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We have proper encoding facilities to encode operands and instructions;
there's no need to pollute the MC representation with encoding details.

Supposed to be an NFCI, but happens to fix some re-encoded instruction
codes in disassembler tests.

The 64-bit operands are to be addressed in following patches introducing
MC-level representation for lit() and lit64() modifiers, to then be
respected by both the assembler and disassembler.</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>
</feed>
