<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h, branch users/mingmingl-llvm/samplefdo-profile-format</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>[CIR] Add constant record ILE support (#155663)</title>
<updated>2025-09-04T21:10:47+00:00</updated>
<author>
<name>Morris Hafner</name>
<email>mmha@users.noreply.github.com</email>
</author>
<published>2025-09-04T21:10:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=1dbe65a008ea7731bf91910ddeb13f53758db5c2'/>
<id>1dbe65a008ea7731bf91910ddeb13f53758db5c2</id>
<content type='text'>
This patch adds basic support for constant record initializer list
expressions. There's a couple of limitations:

* No zero initialized padding bytes in C mode
* No bitfields
* No designated initializer lists
* Record alignments are not calculated, yet
* ILEs of derived records don't work, yet
* The constant attribute is not propagated to the backend, resulting in
non-constants being emitted in the LLVM IR</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds basic support for constant record initializer list
expressions. There's a couple of limitations:

* No zero initialized padding bytes in C mode
* No bitfields
* No designated initializer lists
* Record alignments are not calculated, yet
* ILEs of derived records don't work, yet
* The constant attribute is not propagated to the backend, resulting in
non-constants being emitted in the LLVM IR</pre>
</div>
</content>
</entry>
<entry>
<title>[CIR] Implement __builtin_return_address and __builtin_frame_address (#153698)</title>
<updated>2025-08-15T22:47:04+00:00</updated>
<author>
<name>Morris Hafner</name>
<email>mmha@users.noreply.github.com</email>
</author>
<published>2025-08-15T22:47:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=df0e9f3a2d6e858a2552f453655beae58660b007'/>
<id>df0e9f3a2d6e858a2552f453655beae58660b007</id>
<content type='text'>
This adds ReturnAddrOp and FrameAddrOp that represent
__builtin_return_address and __builtin_frame_address and the respective
lowering to LLVM parts.

---------

Co-authored-by: Andy Kaylor &lt;akaylor@nvidia.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds ReturnAddrOp and FrameAddrOp that represent
__builtin_return_address and __builtin_frame_address and the respective
lowering to LLVM parts.

---------

Co-authored-by: Andy Kaylor &lt;akaylor@nvidia.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[CIR] Refactor global variable emission and initialization (#138222)</title>
<updated>2025-05-02T23:54:29+00:00</updated>
<author>
<name>Andy Kaylor</name>
<email>akaylor@nvidia.com</email>
</author>
<published>2025-05-02T23:54:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=e8825900838a11afe326e202d19a3df6e3408422'/>
<id>e8825900838a11afe326e202d19a3df6e3408422</id>
<content type='text'>
When global variable support was initially upstreamed, we took some
shortcuts and only implemented the minimum support for simple variables
and constant initializers.

This change refactors the code that creates global variables to
introduce more of the complexities that are present in the incubator and
the classic codegen. I can't really say this is NFC, because the code
executed is very different and it will report different NYI diagnostics,
but for the currently implemented cases, it results in the same output.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When global variable support was initially upstreamed, we took some
shortcuts and only implemented the minimum support for simple variables
and constant initializers.

This change refactors the code that creates global variables to
introduce more of the complexities that are present in the incubator and
the classic codegen. I can't really say this is NFC, because the code
executed is very different and it will report different NYI diagnostics,
but for the currently implemented cases, it results in the same output.</pre>
</div>
</content>
</entry>
<entry>
<title>[CIR] Upstream global initialization for ArrayType (#131657)</title>
<updated>2025-03-19T20:29:37+00:00</updated>
<author>
<name>Amr Hesham</name>
<email>amr96@programmer.net</email>
</author>
<published>2025-03-19T20:29:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6aeae62aef63c7c11ab67a880716afdc92ac8422'/>
<id>6aeae62aef63c7c11ab67a880716afdc92ac8422</id>
<content type='text'>
This change adds global initialization for ArrayType

Issue #130197</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change adds global initialization for ArrayType

Issue #130197</pre>
</div>
</content>
</entry>
<entry>
<title>[CIR] Emit init of local variables (#130164)</title>
<updated>2025-03-07T18:23:06+00:00</updated>
<author>
<name>Andy Kaylor</name>
<email>akaylor@nvidia.com</email>
</author>
<published>2025-03-07T18:23:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8eb9b947af267f38ad53cfc67a41c5c3d978aa27'/>
<id>8eb9b947af267f38ad53cfc67a41c5c3d978aa27</id>
<content type='text'>
Local variable initialization was previously being ignored. This change
adds support for initialization of scalar variables with constant values
and introduces the constant emitter framework.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Local variable initialization was previously being ignored. This change
adds support for initialization of scalar variables with constant values
and introduces the constant emitter framework.</pre>
</div>
</content>
</entry>
</feed>
