<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/clang/lib/CodeGen/CGDeclCXX.cpp, branch users/nico/python-1</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>[CodeGen] Use range-based for loops (NFC) (#144939)</title>
<updated>2025-06-19T21:57:58+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-06-19T21:57:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a9d175f1735a508ac05ab48d83a99071ba97c10e'/>
<id>a9d175f1735a508ac05ab48d83a99071ba97c10e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[clang] Remove unused local variables (NFC) (#138453)</title>
<updated>2025-05-04T17:51:40+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-05-04T17:51:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f002f300c5e1f9ce8adf00441b7e879fec36a071'/>
<id>f002f300c5e1f9ce8adf00441b7e879fec36a071</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Mark CXX module initializer with PACBTI attributes (#133716)</title>
<updated>2025-04-25T10:04:34+00:00</updated>
<author>
<name>Victor Campos</name>
<email>victor.campos@arm.com</email>
</author>
<published>2025-04-25T10:04:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6738cfe0a40af2754000346ff090ebb2115ce15f'/>
<id>6738cfe0a40af2754000346ff090ebb2115ce15f</id>
<content type='text'>
The CXX module initializer function, which is called at program startup,
needs to be tagged with Pointer Authentication and Branch Target
Identification marks whenever relevant.

Before this patch, in CPUs set up for PACBTI execution, the function
wasn't protected with return address signing and no BTI instruction was
inserted at the start of it, thus leading to an execution fault.

This patch fixes the issue by marking the function with the function
attributes related to PAC and BTI if relevant.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The CXX module initializer function, which is called at program startup,
needs to be tagged with Pointer Authentication and Branch Target
Identification marks whenever relevant.

Before this patch, in CPUs set up for PACBTI execution, the function
wasn't protected with return address signing and no BTI instruction was
inserted at the start of it, thus leading to an execution fault.

This patch fixes the issue by marking the function with the function
attributes related to PAC and BTI if relevant.</pre>
</div>
</content>
</entry>
<entry>
<title>[HLSL][SPIR-V] Add hlsl_private address space for SPIR-V (#133464)</title>
<updated>2025-04-10T08:55:10+00:00</updated>
<author>
<name>Nathan Gauër</name>
<email>brioche@google.com</email>
</author>
<published>2025-04-10T08:55:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a625bc60e2987502d2dd1b3372fa1b9cf3b2f2cf'/>
<id>a625bc60e2987502d2dd1b3372fa1b9cf3b2f2cf</id>
<content type='text'>
This is an alternative to
https://github.com/llvm/llvm-project/pull/122103

In SPIR-V, private global variables have the Private storage class. This
PR adds a new address space which allows frontend to emit variable with
this storage class when targeting this backend.

This is covered in this proposal: llvm/wg-hlsl@4c9e11a

This PR will cause addrspacecast to show up in several cases, like class
member functions or assignment. Those will have to be handled in the
backend later on, particularly to fixup pointer storage classes in some
functions.

Before this change, global variable were emitted with the 'Function'
storage class, which was wrong.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is an alternative to
https://github.com/llvm/llvm-project/pull/122103

In SPIR-V, private global variables have the Private storage class. This
PR adds a new address space which allows frontend to emit variable with
this storage class when targeting this backend.

This is covered in this proposal: llvm/wg-hlsl@4c9e11a

This PR will cause addrspacecast to show up in several cases, like class
member functions or assignment. Those will have to be handled in the
backend later on, particularly to fixup pointer storage classes in some
functions.

Before this change, global variable were emitted with the 'Function'
storage class, which was wrong.</pre>
</div>
</content>
</entry>
<entry>
<title>[CodeGen] Don't include CGDebugInfo.h in CodeGenFunction.h (NFC) (#134100)</title>
<updated>2025-04-03T06:04:19+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>npopov@redhat.com</email>
</author>
<published>2025-04-03T06:04:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=b384d6d6ccc8f4452cd7086061c657ce76b41224'/>
<id>b384d6d6ccc8f4452cd7086061c657ce76b41224</id>
<content type='text'>
This is an expensive header, only include it where needed. Move some
functions out of line to achieve that.

This reduces time to build clang by ~0.5% in terms of instructions
retired.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is an expensive header, only include it where needed. Move some
functions out of line to achieve that.

This reduces time to build clang by ~0.5% in terms of instructions
retired.</pre>
</div>
</content>
</entry>
<entry>
<title>[Clang][SPIR-V] Fix convergence tokens for dtor (#133469)</title>
<updated>2025-04-01T09:03:30+00:00</updated>
<author>
<name>Nathan Gauër</name>
<email>brioche@google.com</email>
</author>
<published>2025-04-01T09:03:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=da5fb4213ff210f0d49c4ec837b72997cb9e69f5'/>
<id>da5fb4213ff210f0d49c4ec837b72997cb9e69f5</id>
<content type='text'>
Destructor calls were emitted without convergence intrinsics when building for SPIR-V, which means invalid IR since we
mixed controlled and non-controlled convergence.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Destructor calls were emitted without convergence intrinsics when building for SPIR-V, which means invalid IR since we
mixed controlled and non-controlled convergence.</pre>
</div>
</content>
</entry>
<entry>
<title>[clang] Use *Set::insert_range (NFC) (#133357)</title>
<updated>2025-03-28T03:14:25+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-03-28T03:14:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=cb80b26e3731e7b10ff516d66761a3cfbc55bd20'/>
<id>cb80b26e3731e7b10ff516d66761a3cfbc55bd20</id>
<content type='text'>
We can use *Set::insert_range to collapse:

  for (auto Elem : Range)
    Set.insert(E);

down to:

  Set.insert_range(Range);

In some cases, we can further fold that into the set declaration.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We can use *Set::insert_range to collapse:

  for (auto Elem : Range)
    Set.insert(E);

down to:

  Set.insert_range(Range);

In some cases, we can further fold that into the set declaration.</pre>
</div>
</content>
</entry>
<entry>
<title>[HLSL] Remove old resource annotations (#130338)</title>
<updated>2025-03-14T17:12:01+00:00</updated>
<author>
<name>Helena Kotas</name>
<email>hekotas@microsoft.com</email>
</author>
<published>2025-03-14T17:12:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=86329ba4d904bb895d5d840c523dde9ddf0ded8e'/>
<id>86329ba4d904bb895d5d840c523dde9ddf0ded8e</id>
<content type='text'>
Fixes #114126</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes #114126</pre>
</div>
</content>
</entry>
<entry>
<title>[CodeGen] Replace of PointerType::get(Type) with opaque version (NFC) (#124771)</title>
<updated>2025-02-08T15:13:02+00:00</updated>
<author>
<name>Mats Jun Larsen</name>
<email>mats@jun.codes</email>
</author>
<published>2025-02-08T15:13:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=e0fee55a5549e04bb14d45fba6267bd69285ce77'/>
<id>e0fee55a5549e04bb14d45fba6267bd69285ce77</id>
<content type='text'>
Follow-up to https://github.com/llvm/llvm-project/issues/123569</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Follow-up to https://github.com/llvm/llvm-project/issues/123569</pre>
</div>
</content>
</entry>
<entry>
<title>[HLSL] Fix global resource initialization (#123394)</title>
<updated>2025-01-22T20:39:35+00:00</updated>
<author>
<name>Helena Kotas</name>
<email>hekotas@microsoft.com</email>
</author>
<published>2025-01-22T20:39:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=719f0d92538c917306004e541f38c79717d0c07d'/>
<id>719f0d92538c917306004e541f38c79717d0c07d</id>
<content type='text'>
Create separate resource initialization function for each resource and
add them to CodeGenModule's `CXXGlobalInits` list.
Fixes #120636 and addresses this [comment
](https://github.com/llvm/llvm-project/pull/119755/files#r1894093603).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Create separate resource initialization function for each resource and
add them to CodeGenModule's `CXXGlobalInits` list.
Fixes #120636 and addresses this [comment
](https://github.com/llvm/llvm-project/pull/119755/files#r1894093603).</pre>
</div>
</content>
</entry>
</feed>
