<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/Target/RISCV, branch users/nico/python-2</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>[RISCV] Remove unneeded blank line between the features for XAndesVBFHCvt and XAndesVPackFPH. NFC.</title>
<updated>2025-07-03T11:27:28+00:00</updated>
<author>
<name>Jim Lin</name>
<email>jim@andestech.com</email>
</author>
<published>2025-07-03T07:28:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f36ad98b27402e375589f4b5960cfbc2affc1c17'/>
<id>f36ad98b27402e375589f4b5960cfbc2affc1c17</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[RISCV] Added the MIPS prefetch extensions for MIPS RV64 P8700. (#145647)</title>
<updated>2025-07-03T08:59:10+00:00</updated>
<author>
<name>UmeshKalappa</name>
<email>103930015+ukalappa-mips@users.noreply.github.com</email>
</author>
<published>2025-07-03T08:59:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=032966ff5679804e826b76beab6306e277ef8d33'/>
<id>032966ff5679804e826b76beab6306e277ef8d33</id>
<content type='text'>
the extension enabled with xmipscbop.

Please refer "MIPS RV64 P8700/P8700-F Multiprocessing System
Programmer’s Guide" for more info on the extension at
https://mips.com/wp-content/uploads/2025/06/P8700_Programmers_Reference_Manual_Rev1.84_5-31-2025.pdf</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
the extension enabled with xmipscbop.

Please refer "MIPS RV64 P8700/P8700-F Multiprocessing System
Programmer’s Guide" for more info on the extension at
https://mips.com/wp-content/uploads/2025/06/P8700_Programmers_Reference_Manual_Rev1.84_5-31-2025.pdf</pre>
</div>
</content>
</entry>
<entry>
<title>[RISCV] Use template version isInt&lt;N&gt; instead. NFC.</title>
<updated>2025-07-03T08:22:02+00:00</updated>
<author>
<name>Jim Lin</name>
<email>jim@andestech.com</email>
</author>
<published>2025-07-03T05:20:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=2dba752f0575306d8178e9bb4869d06528ab452c'/>
<id>2dba752f0575306d8178e9bb4869d06528ab452c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>MCAsmBackend: Replace FKF_IsPCRel with isPCRel()</title>
<updated>2025-07-03T07:51:20+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>i@maskray.me</email>
</author>
<published>2025-07-03T07:51:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=b478c38c19f9e6ccc7ff2b6ede79a6e27ec20d19'/>
<id>b478c38c19f9e6ccc7ff2b6ede79a6e27ec20d19</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>MCAsmBackend: Merge addReloc into applyFixup (#146820)</title>
<updated>2025-07-03T06:14:11+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>i@maskray.me</email>
</author>
<published>2025-07-03T06:14:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=dd2891535d4b6d80f92d9a69e9db3b787203b9d0'/>
<id>dd2891535d4b6d80f92d9a69e9db3b787203b9d0</id>
<content type='text'>
Follow-up to #141333. Relocation generation called both addReloc and
applyFixup, with the default addReloc invoking shouldForceRelocation,
resulting in three virtual calls. This approach was also inflexible, as
targets needing additional data required extending
`shouldForceRelocation` (see #73721, resolved by #141311).

This change integrates relocation handling into applyFixup, eliminating
two virtual calls. The prior default addReloc is renamed to
maybeAddReloc. Targets overriding addReloc now call their customized
addReloc implementation.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Follow-up to #141333. Relocation generation called both addReloc and
applyFixup, with the default addReloc invoking shouldForceRelocation,
resulting in three virtual calls. This approach was also inflexible, as
targets needing additional data required extending
`shouldForceRelocation` (see #73721, resolved by #141311).

This change integrates relocation handling into applyFixup, eliminating
two virtual calls. The prior default addReloc is renamed to
maybeAddReloc. Targets overriding addReloc now call their customized
addReloc implementation.</pre>
</div>
</content>
</entry>
<entry>
<title>[RISCV] Add isel patterns for generating XAndesPerf branch immediate instructions (#145147)</title>
<updated>2025-07-03T04:47:53+00:00</updated>
<author>
<name>Jim Lin</name>
<email>jim@andestech.com</email>
</author>
<published>2025-07-03T04:47:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=283f53ac6fcde5a6f8182e572a3f6f828b89a9a8'/>
<id>283f53ac6fcde5a6f8182e572a3f6f828b89a9a8</id>
<content type='text'>
Similar to #139872. This patch adds isel patterns to match
`riscv_brcc` and `riscv_selectcc_frag` to XAndesPerf branch
instructions.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Similar to #139872. This patch adds isel patterns to match
`riscv_brcc` and `riscv_selectcc_frag` to XAndesPerf branch
instructions.</pre>
</div>
</content>
</entry>
<entry>
<title>MCAssembler: Simplify fixup handling</title>
<updated>2025-07-03T03:07:56+00:00</updated>
<author>
<name>Fangrui Song</name>
<email>i@maskray.me</email>
</author>
<published>2025-07-03T03:07:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=922dde3c6403c7ef61f3c21af485a7feeb931a09'/>
<id>922dde3c6403c7ef61f3c21af485a7feeb931a09</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[RISCV] Check whether plain type is supported for permutation intrinsics instead of its float type (#146657)</title>
<updated>2025-07-03T02:13:31+00:00</updated>
<author>
<name>Jim Lin</name>
<email>jim@andestech.com</email>
</author>
<published>2025-07-03T02:13:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=797d519d9915581c59388cc1ac5d97a4c9a8cd45'/>
<id>797d519d9915581c59388cc1ac5d97a4c9a8cd45</id>
<content type='text'>
For permutation intrinsics, the float data type is not used during
processing. We only need to check whether its plain type is supported,
rather than the float type. This is like what we did in
https://github.com/llvm/llvm-project/blob/651c5208f8597f1f80349f6208e69bf9ea1c2862/llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td#L2958</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For permutation intrinsics, the float data type is not used during
processing. We only need to check whether its plain type is supported,
rather than the float type. This is like what we did in
https://github.com/llvm/llvm-project/blob/651c5208f8597f1f80349f6208e69bf9ea1c2862/llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td#L2958</pre>
</div>
</content>
</entry>
<entry>
<title>[RISCV][VLOPT] Support v[f]slide1up.v{x,f} (#146716)</title>
<updated>2025-07-02T23:10:51+00:00</updated>
<author>
<name>Luke Lau</name>
<email>luke@igalia.com</email>
</author>
<published>2025-07-02T23:10:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=5e31d4cdf2f53c98a705df91d386d315f9332b99'/>
<id>5e31d4cdf2f53c98a705df91d386d315f9332b99</id>
<content type='text'>
Similarly to #146710, for vslide1ups vl only determines the destination
elements written to so we can safely reduce their AVL.

We cannot do this for vslide1downs as the vl determines which lane the
new element is to be inserted in, so some negative tests have been
added.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Similarly to #146710, for vslide1ups vl only determines the destination
elements written to so we can safely reduce their AVL.

We cannot do this for vslide1downs as the vl determines which lane the
new element is to be inserted in, so some negative tests have been
added.</pre>
</div>
</content>
</entry>
<entry>
<title>[RISCV][VLOPT] Support vslide{up,down} (#146710)</title>
<updated>2025-07-02T22:30:25+00:00</updated>
<author>
<name>Luke Lau</name>
<email>luke@igalia.com</email>
</author>
<published>2025-07-02T22:30:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6550f28977b915f2a683dccfba67767a62933e82'/>
<id>6550f28977b915f2a683dccfba67767a62933e82</id>
<content type='text'>
For vslideup and vslidedown, vl controls the elements which are written
just like other vector instructions. So unless I'm missing something it
should be safe to reduce them. For vslidedown, the specification states
that elements past vl may be read.

We already reduce vslideup and vslidedown in
RISCVVectorPeephole::tryToReduceVL where we just check for
RISCVII::elementsDependOnVL.

Eventually we should replace the whitelist with
RISCVII::elementsDependOnVL once we have test coverage. I've also added
an assert just to double check the instructions we currently support.

This helps reduce vl toggles for fixed-order recurrences vectorized with
EVL tail folding.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For vslideup and vslidedown, vl controls the elements which are written
just like other vector instructions. So unless I'm missing something it
should be safe to reduce them. For vslidedown, the specification states
that elements past vl may be read.

We already reduce vslideup and vslidedown in
RISCVVectorPeephole::tryToReduceVL where we just check for
RISCVII::elementsDependOnVL.

Eventually we should replace the whitelist with
RISCVII::elementsDependOnVL once we have test coverage. I've also added
an assert just to double check the instructions we currently support.

This helps reduce vl toggles for fixed-order recurrences vectorized with
EVL tail folding.</pre>
</div>
</content>
</entry>
</feed>
