<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/Target/Mips/MipsSEISelLowering.cpp, 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>[MIPS] [MSA] Widen v2i8, v216 and v2i32 vectors (#123040)</title>
<updated>2025-01-24T03:23:34+00:00</updated>
<author>
<name>Cinhi Young</name>
<email>cyan@cyano.uk</email>
</author>
<published>2025-01-24T03:23:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6735d527f9945fbf50c14a95cbdd66592472d622'/>
<id>6735d527f9945fbf50c14a95cbdd66592472d622</id>
<content type='text'>
- Widen v2i8, v2i16 and v2i32 vectors so they don't cast back and forth,
and make sure that instructions with correct data unit is being used.
- Handle undef indices for VSHF when lowering VECTOR_SHUFFLE (it crashes
if such index is present).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Widen v2i8, v2i16 and v2i32 vectors so they don't cast back and forth,
and make sure that instructions with correct data unit is being used.
- Handle undef indices for VSHF when lowering VECTOR_SHUFFLE (it crashes
if such index is present).</pre>
</div>
</content>
</entry>
<entry>
<title>[MIPS][MSA] Invert operand order of `ILVOD` when lowering `VECTOR_SHUFFLE` (#123555)</title>
<updated>2025-01-21T07:54:10+00:00</updated>
<author>
<name>Cinhi Young</name>
<email>cyan@cyano.uk</email>
</author>
<published>2025-01-21T07:54:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=385f776b639097503eb43b124a3f68570c8c6beb'/>
<id>385f776b639097503eb43b124a3f68570c8c6beb</id>
<content type='text'>
This PR fixes operand order of `ILVOD.df` when lowering
`VECTOR_SHUFFLE`, the result was `&lt;y[1], x[1]&gt;` while it should be
`&lt;x[1], y[1]&gt;`.

* This PR is split from #123040.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR fixes operand order of `ILVOD.df` when lowering
`VECTOR_SHUFFLE`, the result was `&lt;y[1], x[1]&gt;` while it should be
`&lt;x[1], y[1]&gt;`.

* This PR is split from #123040.</pre>
</div>
</content>
</entry>
<entry>
<title>[Mips] Remove unused includes (NFC) (#116499)</title>
<updated>2024-11-16T20:13:26+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2024-11-16T20:13:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=73e89cf66d4b88d568ff4c718ae7bf55588ef2be'/>
<id>73e89cf66d4b88d568ff4c718ae7bf55588ef2be</id>
<content type='text'>
Identified with misc-include-cleaner.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Identified with misc-include-cleaner.</pre>
</div>
</content>
</entry>
<entry>
<title>[MIPS] Fix -msingle-float doesn't work with double on O32 (#107543)</title>
<updated>2024-09-19T23:37:18+00:00</updated>
<author>
<name>yingopq</name>
<email>115543042+yingopq@users.noreply.github.com</email>
</author>
<published>2024-09-19T23:37:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=72cacf1d992ea843522246976c91ca20b6e832f7'/>
<id>72cacf1d992ea843522246976c91ca20b6e832f7</id>
<content type='text'>
Skip the following function 'CustomLowerNode' when the operand had done
`SoftenFloatResult`.

Fix #93052</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Skip the following function 'CustomLowerNode' when the operand had done
`SoftenFloatResult`.

Fix #93052</pre>
</div>
</content>
</entry>
<entry>
<title>MIPS: Support -m(no-)unaligned-access for r6 (#85174)</title>
<updated>2024-03-20T06:18:24+00:00</updated>
<author>
<name>YunQiang Su</name>
<email>syq@debian.org</email>
</author>
<published>2024-03-20T06:18:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=d7e28cd82bd3141093f96f7ce2e7b36f1b115fad'/>
<id>d7e28cd82bd3141093f96f7ce2e7b36f1b115fad</id>
<content type='text'>
MIPSr6 ISA requires normal load/store instructions support
misunaligned memory access, while it is not always do so
by hardware. On some microarchitectures or some corner cases
it may need support by OS.

Don't confuse with pre-R6's lwl/lwr famlily: MIPSr6 doesn't
support them, instead, r6 requires lw instruction support
misunaligned memory access. So, if -mstrict-align is used for
pre-R6, lwl/lwr won't be disabled.

If -mstrict-align is used for r6 and the access is not well
aligned, some lb/lh instructions will be used to replace lw.
This is useful for OS kernels.

To be back-compatible with GCC, -m(no-)unaligned-access are also
added as Neg-Alias of -m(no-)strict-align.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
MIPSr6 ISA requires normal load/store instructions support
misunaligned memory access, while it is not always do so
by hardware. On some microarchitectures or some corner cases
it may need support by OS.

Don't confuse with pre-R6's lwl/lwr famlily: MIPSr6 doesn't
support them, instead, r6 requires lw instruction support
misunaligned memory access. So, if -mstrict-align is used for
pre-R6, lwl/lwr won't be disabled.

If -mstrict-align is used for r6 and the access is not well
aligned, some lb/lh instructions will be used to replace lw.
This is useful for OS kernels.

To be back-compatible with GCC, -m(no-)unaligned-access are also
added as Neg-Alias of -m(no-)strict-align.</pre>
</div>
</content>
</entry>
<entry>
<title>[llvm] Move CodeGenTypes library to its own directory (#79444)</title>
<updated>2024-01-25T17:01:31+00:00</updated>
<author>
<name>Nico Weber</name>
<email>thakis@chromium.org</email>
</author>
<published>2024-01-25T17:01:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=184ca39529a93e69eb175861d7fff5fc79988e53'/>
<id>184ca39529a93e69eb175861d7fff5fc79988e53</id>
<content type='text'>
Finally addresses https://reviews.llvm.org/D148769#4311232 :)

No behavior change.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Finally addresses https://reviews.llvm.org/D148769#4311232 :)

No behavior change.</pre>
</div>
</content>
</entry>
<entry>
<title>[llvm][NFC] Use SDValue::getConstantOperandAPInt(i) where possible</title>
<updated>2024-01-02T14:43:55+00:00</updated>
<author>
<name>Alex Bradbury</name>
<email>asb@igalia.com</email>
</author>
<published>2024-01-02T14:43:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a181b425659a22c5535d2513f7dd7c7cf14e2d69'/>
<id>a181b425659a22c5535d2513f7dd7c7cf14e2d69</id>
<content type='text'>
The helper function allows examples like
`cast&lt;ConstantSDNode&gt;(Op.getOperand(0))-&gt;getAPIntValue();` to be changed
to `Op.getConstantOperandAPInt(0);`.

See #76708 for further context. Although there are far fewer
opportunities for replacement, I used a similar git grep and sed combo
as before, given I already had it to hand:

`git grep -l "cast&lt;ConstantSDNode&gt;\(.*-&gt;getOperand\(.*\)\)-&gt;getAPIntValue\(\)" | xargs sed -E -i 's/cast&lt;ConstantSDNode&gt;\((.*)-&gt;getOperand\((.*)\)\)-&gt;getAPIntValue\(\)/\1-&gt;getConstantOperandAPInt(\2)/'`
and
`git grep -l
"cast&lt;ConstantSDNode&gt;\(.*\.getOperand\(.*\)\)-&gt;getAPIntValue\(\)" |
xargs sed -E -i
's/cast&lt;ConstantSDNode&gt;\((.*)\.getOperand\((.*)\)\)-&gt;getAPIntValue\(\)/\1.getConstantOperandAPInt(\2)/'`
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The helper function allows examples like
`cast&lt;ConstantSDNode&gt;(Op.getOperand(0))-&gt;getAPIntValue();` to be changed
to `Op.getConstantOperandAPInt(0);`.

See #76708 for further context. Although there are far fewer
opportunities for replacement, I used a similar git grep and sed combo
as before, given I already had it to hand:

`git grep -l "cast&lt;ConstantSDNode&gt;\(.*-&gt;getOperand\(.*\)\)-&gt;getAPIntValue\(\)" | xargs sed -E -i 's/cast&lt;ConstantSDNode&gt;\((.*)-&gt;getOperand\((.*)\)\)-&gt;getAPIntValue\(\)/\1-&gt;getConstantOperandAPInt(\2)/'`
and
`git grep -l
"cast&lt;ConstantSDNode&gt;\(.*\.getOperand\(.*\)\)-&gt;getAPIntValue\(\)" |
xargs sed -E -i
's/cast&lt;ConstantSDNode&gt;\((.*)\.getOperand\((.*)\)\)-&gt;getAPIntValue\(\)/\1.getConstantOperandAPInt(\2)/'`
</pre>
</div>
</content>
</entry>
<entry>
<title>[llvm][NFC] Use SDValue::getConstantOperandVal(i) where possible (#76708)</title>
<updated>2024-01-02T13:14:28+00:00</updated>
<author>
<name>Alex Bradbury</name>
<email>asb@igalia.com</email>
</author>
<published>2024-01-02T13:14:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=80aeb622117f6411e65bff42be5231720e8b8cef'/>
<id>80aeb622117f6411e65bff42be5231720e8b8cef</id>
<content type='text'>
This helper function shortens examples like
`cast&lt;ConstantSDNode&gt;(Node-&gt;getOperand(1))-&gt;getZExtValue();` to
`Node-&gt;getConstantOperandVal(1);`.

Implemented with:
`git grep -l
"cast&lt;ConstantSDNode&gt;\(.*-&gt;getOperand\(.*\)\)-&gt;getZExtValue\(\)" | xargs
sed -E -i

's/cast&lt;ConstantSDNode&gt;\((.*)-&gt;getOperand\((.*)\)\)-&gt;getZExtValue\(\)/\1-&gt;getConstantOperandVal(\2)/`
and `git grep -l
"cast&lt;ConstantSDNode&gt;\(.*\.getOperand\(.*\)\)-&gt;getZExtValue\(\)" | xargs
sed -E -i

's/cast&lt;ConstantSDNode&gt;\((.*)\.getOperand\((.*)\)\)-&gt;getZExtValue\(\)/\1.getConstantOperandVal(\2)/'`.
With a couple of simple manual fixes needed. Result then processed by
`git clang-format`.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This helper function shortens examples like
`cast&lt;ConstantSDNode&gt;(Node-&gt;getOperand(1))-&gt;getZExtValue();` to
`Node-&gt;getConstantOperandVal(1);`.

Implemented with:
`git grep -l
"cast&lt;ConstantSDNode&gt;\(.*-&gt;getOperand\(.*\)\)-&gt;getZExtValue\(\)" | xargs
sed -E -i

's/cast&lt;ConstantSDNode&gt;\((.*)-&gt;getOperand\((.*)\)\)-&gt;getZExtValue\(\)/\1-&gt;getConstantOperandVal(\2)/`
and `git grep -l
"cast&lt;ConstantSDNode&gt;\(.*\.getOperand\(.*\)\)-&gt;getZExtValue\(\)" | xargs
sed -E -i

's/cast&lt;ConstantSDNode&gt;\((.*)\.getOperand\((.*)\)\)-&gt;getZExtValue\(\)/\1.getConstantOperandVal(\2)/'`.
With a couple of simple manual fixes needed. Result then processed by
`git clang-format`.</pre>
</div>
</content>
</entry>
<entry>
<title>[Target] Remove unnecessary includes (NFC)</title>
<updated>2023-12-08T05:03:56+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2023-12-08T05:03:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=286ef12b474c16840076e0689e1886660cc9902e'/>
<id>286ef12b474c16840076e0689e1886660cc9902e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Restore CodeGen/MachineValueType.h from `Support`</title>
<updated>2023-05-02T15:13:20+00:00</updated>
<author>
<name>NAKAMURA Takumi</name>
<email>geek4civic@gmail.com</email>
</author>
<published>2023-04-10T15:05:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c1221251fbb13f382f9142a8a75af2d3b372da7f'/>
<id>c1221251fbb13f382f9142a8a75af2d3b372da7f</id>
<content type='text'>
This is rework of;

  - rG13e77db2df94 (r328395; MVT)

Since `LowLevelType.h` has been restored to `CodeGen`, `MachinveValueType.h`
can be restored as well.

Depends on D148767

Differential Revision: https://reviews.llvm.org/D149024
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is rework of;

  - rG13e77db2df94 (r328395; MVT)

Since `LowLevelType.h` has been restored to `CodeGen`, `MachinveValueType.h`
can be restored as well.

Depends on D148767

Differential Revision: https://reviews.llvm.org/D149024
</pre>
</div>
</content>
</entry>
</feed>
