<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/clang/utils/TableGen/NeonEmitter.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>[clang] Use llvm::equal (NFC) (#169172)</title>
<updated>2025-11-22T23:30:35+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-11-22T23:30:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=637299e7e079b7d80f508691103092753d282ffa'/>
<id>637299e7e079b7d80f508691103092753d282ffa</id>
<content type='text'>
Identified with llvm-use-ranges.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Identified with llvm-use-ranges.</pre>
</div>
</content>
</entry>
<entry>
<title>[AArch64][NEON] NEON intrinsic compilation error with -fno-lax-vector-conversion flag fix (#149329)</title>
<updated>2025-07-30T09:56:14+00:00</updated>
<author>
<name>Amina Chabane</name>
<email>amina.chabane@arm.com</email>
</author>
<published>2025-07-30T09:56:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=62744f368166f223740e5f6105aeb11ea854728d'/>
<id>62744f368166f223740e5f6105aeb11ea854728d</id>
<content type='text'>
Issue originally raised in
https://github.com/llvm/llvm-project/issues/71362#issuecomment-3028515618.
Certain NEON intrinsics that operate on poly types (e.g. poly8x8_t)
failed to compile with the -fno-lax-vector-conversions flag. This patch
updates NeonEmitter.cpp to insert an explicit __builtin_bit_cast from
poly types to the required signed integer vector types when generating
lane-related intrinsics. A test 'neon-bitcast-poly.ll' is included.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Issue originally raised in
https://github.com/llvm/llvm-project/issues/71362#issuecomment-3028515618.
Certain NEON intrinsics that operate on poly types (e.g. poly8x8_t)
failed to compile with the -fno-lax-vector-conversions flag. This patch
updates NeonEmitter.cpp to insert an explicit __builtin_bit_cast from
poly types to the required signed integer vector types when generating
lane-related intrinsics. A test 'neon-bitcast-poly.ll' is included.</pre>
</div>
</content>
</entry>
<entry>
<title>[ARM] Improve arm_neon.h header diagnostic when included on unsupported targets (#147817)</title>
<updated>2025-07-11T17:21:13+00:00</updated>
<author>
<name>Jon Roelofs</name>
<email>jonathan_roelofs@apple.com</email>
</author>
<published>2025-07-11T17:21:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a0fcb50bf99d1d48458ee27ca92e5cd54e9910d5'/>
<id>a0fcb50bf99d1d48458ee27ca92e5cd54e9910d5</id>
<content type='text'>
The footgun here was that the preprocessor diagnostic that looks for
__ARM_FP would fire when included on targets like x86_64, but the
suggestion it gives in that case is totally bogus. Avoid giving bad
advice, by first checking whether we're being built for an appropriate
target, and only then do the soft-fp check.

rdar://155449666</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The footgun here was that the preprocessor diagnostic that looks for
__ARM_FP would fire when included on targets like x86_64, but the
suggestion it gives in that case is totally bogus. Avoid giving bad
advice, by first checking whether we're being built for an appropriate
target, and only then do the soft-fp check.

rdar://155449666</pre>
</div>
</content>
</entry>
<entry>
<title>[LLVM][TableGen] Rename `ListInit::getValues()` to `getElements()` (#140289)</title>
<updated>2025-05-19T19:16:33+00:00</updated>
<author>
<name>Rahul Joshi</name>
<email>rjoshi@nvidia.com</email>
</author>
<published>2025-05-19T19:16:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3932360b14c390188977a53ecba6c13fff685aae'/>
<id>3932360b14c390188977a53ecba6c13fff685aae</id>
<content type='text'>
Rename `ListInit::getValues()` to `getElements()` to better match with
other `ListInit` members like `getElement`. Keep `getValues()` for
existing downstream code but mark it deprecated.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Rename `ListInit::getValues()` to `getElements()` to better match with
other `ListInit` members like `getElement`. Keep `getValues()` for
existing downstream code but mark it deprecated.</pre>
</div>
</content>
</entry>
<entry>
<title>[Clang][AArch64] Add fp8 variants for untyped NEON intrinsics (#128019)</title>
<updated>2025-05-15T13:01:41+00:00</updated>
<author>
<name>Lukacma</name>
<email>Marian.Lukac@arm.com</email>
</author>
<published>2025-05-15T13:01:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6fc031291955d5d3c69f7df9b9f7460c473d114a'/>
<id>6fc031291955d5d3c69f7df9b9f7460c473d114a</id>
<content type='text'>
This patch adds fp8 variants to existing intrinsics, whose operation
doesn't depend on arguments being a specific type.

It also changes mfloat8 type representation in memory from `i8` to
`&lt;1xi8&gt;`</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds fp8 variants to existing intrinsics, whose operation
doesn't depend on arguments being a specific type.

It also changes mfloat8 type representation in memory from `i8` to
`&lt;1xi8&gt;`</pre>
</div>
</content>
</entry>
<entry>
<title>[TableGen] Use std::tie to implement operator&lt; (NFC) (#139405)</title>
<updated>2025-05-10T23:04:26+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-05-10T23:04:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8e2a9fa9a56cd6f5406f2d5cd9e3a2182d9eae86'/>
<id>8e2a9fa9a56cd6f5406f2d5cd9e3a2182d9eae86</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[TableGen] Only store direct superclasses in Record (#123072)</title>
<updated>2025-04-24T17:57:51+00:00</updated>
<author>
<name>Jay Foad</name>
<email>jay.foad@amd.com</email>
</author>
<published>2025-04-24T17:57:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=2bc6f9d4b6ff1d838f1c2d50cacbab6ba2f20bc9'/>
<id>2bc6f9d4b6ff1d838f1c2d50cacbab6ba2f20bc9</id>
<content type='text'>
In Record only store the direct superclasses instead of all
superclasses. getSuperClasses recurses to find all superclasses when
necessary.

This gives a small reduction in memory usage. On lib/Target/X86/X86.td I
measured about 2.0% reduction in total bytes allocated (measured by
valgrind) and 1.3% reduction in peak memory usage (measured by
/usr/bin/time -v).

---------

Co-authored-by: Min-Yih Hsu &lt;min@myhsu.dev&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In Record only store the direct superclasses instead of all
superclasses. getSuperClasses recurses to find all superclasses when
necessary.

This gives a small reduction in memory usage. On lib/Target/X86/X86.td I
measured about 2.0% reduction in total bytes allocated (measured by
valgrind) and 1.3% reduction in peak memory usage (measured by
/usr/bin/time -v).

---------

Co-authored-by: Min-Yih Hsu &lt;min@myhsu.dev&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[clang] Use llvm::unique (NFC) (#136469)</title>
<updated>2025-04-20T03:33:53+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-04-20T03:33:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f2ec5e40d96d6ba8f99e419009b6547965905cfe'/>
<id>f2ec5e40d96d6ba8f99e419009b6547965905cfe</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[AARCH64][Neon] switch to using bitcasts in arm_neon.h where appropriate (#127043)</title>
<updated>2025-04-01T08:45:16+00:00</updated>
<author>
<name>Lukacma</name>
<email>Marian.Lukac@arm.com</email>
</author>
<published>2025-04-01T08:45:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6c3adaafe3f2139fba5ef3865cbcbba93dbab645'/>
<id>6c3adaafe3f2139fba5ef3865cbcbba93dbab645</id>
<content type='text'>
Currently arm_neon.h emits C-style casts to do vector type casts. This
relies on implicit conversion between vector types to be enabled, which
is currently deprecated behaviour and soon will disappear. To ensure
NEON code will keep working afterwards, this patch changes all this
vector type casts into bitcasts.


Co-authored-by: Momchil Velikov &lt;momchil.velikov@arm.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently arm_neon.h emits C-style casts to do vector type casts. This
relies on implicit conversion between vector types to be enabled, which
is currently deprecated behaviour and soon will disappear. To ensure
NEON code will keep working afterwards, this patch changes all this
vector type casts into bitcasts.


Co-authored-by: Momchil Velikov &lt;momchil.velikov@arm.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[clang] Use *Set::insert_range (NFC) (#132507)</title>
<updated>2025-03-22T15:06:38+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-03-22T15:06:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c6c394634c46156313cfbcaf87678f25e0245dbe'/>
<id>c6c394634c46156313cfbcaf87678f25e0245dbe</id>
<content type='text'>
DenseSet, SmallPtrSet, SmallSet, SetVector, and StringSet recently
gained C++23-style insert_range.  This patch replaces:

  Dest.insert(Src.begin(), Src.end());

with:

  Dest.insert_range(Src);

This patch does not touch custom begin like succ_begin for now.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
DenseSet, SmallPtrSet, SmallSet, SetVector, and StringSet recently
gained C++23-style insert_range.  This patch replaces:

  Dest.insert(Src.begin(), Src.end());

with:

  Dest.insert_range(Src);

This patch does not touch custom begin like succ_begin for now.</pre>
</div>
</content>
</entry>
</feed>
