<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h, 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>[CodeGen] Construct SmallVector with ArrayRef (NFC) (#101841)</title>
<updated>2024-08-04T07:41:29+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2024-08-04T07:41:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8d1b17b6623742ec4454f5bae2e23f8b30124314'/>
<id>8d1b17b6623742ec4454f5bae2e23f8b30124314</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[llvm] Use llvm::unique (NFC) (#95628)</title>
<updated>2024-06-15T05:49:36+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2024-06-15T05:49:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=7c6d0d26b1792fdf437b3e33b98c55fee9b06516'/>
<id>7c6d0d26b1792fdf437b3e33b98c55fee9b06516</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[DebugLocEntry][nfc] Remove redundant cast</title>
<updated>2023-04-26T11:56:15+00:00</updated>
<author>
<name>Felipe de Azevedo Piovezan</name>
<email>fpiovezan@apple.com</email>
</author>
<published>2023-04-25T19:06:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=815eab2d3cbb290ba1255efef549edae7807cc71'/>
<id>815eab2d3cbb290ba1255efef549edae7807cc71</id>
<content type='text'>
A cast from DIExpression-&gt;DIExpression is not needed.

Differential Revision: https://reviews.llvm.org/D149178
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A cast from DIExpression-&gt;DIExpression is not needed.

Differential Revision: https://reviews.llvm.org/D149178
</pre>
</div>
</content>
</entry>
<entry>
<title>[DebugInfo] Allow non-stack_value variadic expressions and use in DBG_INSTR_REF</title>
<updated>2023-01-06T19:31:10+00:00</updated>
<author>
<name>Stephen Tozer</name>
<email>Stephen.Tozer@Sony.com</email>
</author>
<published>2023-01-03T10:11:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c383f4d6550e30866294a0e1907a4519245c03eb'/>
<id>c383f4d6550e30866294a0e1907a4519245c03eb</id>
<content type='text'>
Prior to this patch, variadic DIExpressions (i.e. ones that contain
DW_OP_LLVM_arg) could only be created by salvaging debug values to create
stack value expressions, resulting in a DBG_VALUE_LIST being created. As of
the previous patch in this patch stack, DBG_INSTR_REF's syntax has been
changed to match DBG_VALUE_LIST in preparation for supporting variadic
expressions. This patch adds some minor changes needed to allow variadic
expressions that aren't stack values to exist, and allows variadic expressions
that are trivially reduceable to non-variadic expressions to be handled
similarly to non-variadic expressions.

Reviewed by: jmorse

Differential Revision: https://reviews.llvm.org/D133926
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Prior to this patch, variadic DIExpressions (i.e. ones that contain
DW_OP_LLVM_arg) could only be created by salvaging debug values to create
stack value expressions, resulting in a DBG_VALUE_LIST being created. As of
the previous patch in this patch stack, DBG_INSTR_REF's syntax has been
changed to match DBG_VALUE_LIST in preparation for supporting variadic
expressions. This patch adds some minor changes needed to allow variadic
expressions that aren't stack values to exist, and allows variadic expressions
that are trivially reduceable to non-variadic expressions to be handled
similarly to non-variadic expressions.

Reviewed by: jmorse

Differential Revision: https://reviews.llvm.org/D133926
</pre>
</div>
</content>
</entry>
<entry>
<title>[DebugInfo] Add function to test debug values for equivalence</title>
<updated>2022-12-19T17:14:25+00:00</updated>
<author>
<name>Stephen Tozer</name>
<email>Stephen.Tozer@sony.com</email>
</author>
<published>2022-12-19T15:44:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6d169089f64c2be5b5107a8efd0e7ac614b50f71'/>
<id>6d169089f64c2be5b5107a8efd0e7ac614b50f71</id>
<content type='text'>
This patch adds a new function that can be used to check all the
properties, other than the machine values, of a pair of debug values for
equivalence. This is done by folding the "directness" into the
expression, converting the expression to variadic form if it is not
already in that form, and then comparing directly. In a few places which
check whether two debug values are identical to see if their ranges can
be merged, this function will correctly identify cases where two debug
values are expressed differently but have the same meaning, allowing
those ranges to be correctly merged.

Differential Revision: https://reviews.llvm.org/D136173
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds a new function that can be used to check all the
properties, other than the machine values, of a pair of debug values for
equivalence. This is done by folding the "directness" into the
expression, converting the expression to variadic form if it is not
already in that form, and then comparing directly. In a few places which
check whether two debug values are identical to see if their ranges can
be merged, this function will correctly identify cases where two debug
values are expressed differently but have the same meaning, allowing
those ranges to be correctly merged.

Differential Revision: https://reviews.llvm.org/D136173
</pre>
</div>
</content>
</entry>
<entry>
<title>[llvm] Drop unnecessary const from return types (NFC)</title>
<updated>2022-08-07T07:16:11+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2022-08-07T07:16:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3b114087c34bc1428b157eff8ca8599f7d2380f9'/>
<id>3b114087c34bc1428b157eff8ca8599f7d2380f9</id>
<content type='text'>
Identified with readability-const-return-type.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Identified with readability-const-return-type.
</pre>
</div>
</content>
</entry>
<entry>
<title>[llvm] Fix some test failures with EXPENSIVE_CHECKS and libstdc++</title>
<updated>2022-07-28T08:53:38+00:00</updated>
<author>
<name>David Spickett</name>
<email>david.spickett@linaro.org</email>
</author>
<published>2022-07-20T09:37:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a0ccba5e192b14341b66ad57bc646a3af7418409'/>
<id>a0ccba5e192b14341b66ad57bc646a3af7418409</id>
<content type='text'>
DebugLocEntry assumes that it either contains 1 item that has no fragment
or many items that all have fragments (see the assert in addValues).

When EXPENSIVE_CHECKS is enabled, _GLIBCXX_DEBUG is defined. On a few machines
I've checked, this causes std::sort to call the comparator even
if there is only 1 item to sort. Perhaps to check that it is implemented
properly ordering wise, I didn't find out exactly why.

operator&lt; for a DbgValueLoc will crash if this happens because the
optional Fragment is empty.

Compiler/linker/optimisation level seems to make this happen
or not. So I've seen this happen on x86 Ubuntu but the buildbot
for release EXPENSIVE_CHECKS did not have this issue.

Add an explicit check whether we have 1 item.

Reviewed By: aprantl

Differential Revision: https://reviews.llvm.org/D130156
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
DebugLocEntry assumes that it either contains 1 item that has no fragment
or many items that all have fragments (see the assert in addValues).

When EXPENSIVE_CHECKS is enabled, _GLIBCXX_DEBUG is defined. On a few machines
I've checked, this causes std::sort to call the comparator even
if there is only 1 item to sort. Perhaps to check that it is implemented
properly ordering wise, I didn't find out exactly why.

operator&lt; for a DbgValueLoc will crash if this happens because the
optional Fragment is empty.

Compiler/linker/optimisation level seems to make this happen
or not. So I've seen this happen on x86 Ubuntu but the buildbot
for release EXPENSIVE_CHECKS did not have this issue.

Add an explicit check whether we have 1 item.

Reviewed By: aprantl

Differential Revision: https://reviews.llvm.org/D130156
</pre>
</div>
</content>
</entry>
<entry>
<title>[AsmPrinter] DebugLocEntry::dump() - Use const-ref iterator in for-range loop. NFCI.</title>
<updated>2021-09-17T11:11:54+00:00</updated>
<author>
<name>Simon Pilgrim</name>
<email>llvm-dev@redking.me.uk</email>
</author>
<published>2021-09-16T17:48:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=9e70d4e5f2e447685ee99d6327bbe60f89962e92'/>
<id>9e70d4e5f2e447685ee99d6327bbe60f89962e92</id>
<content type='text'>
Avoid unnecessary copies, reported by MSVC static analyzer.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Avoid unnecessary copies, reported by MSVC static analyzer.
</pre>
</div>
</content>
</entry>
<entry>
<title>Partial Reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands"</title>
<updated>2021-06-24T08:46:38+00:00</updated>
<author>
<name>Stephen Tozer</name>
<email>Stephen.Tozer@Sony.com</email>
</author>
<published>2021-06-17T15:35:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c72705678c4733c83233b71b66a904cc8a0910e5'/>
<id>c72705678c4733c83233b71b66a904cc8a0910e5</id>
<content type='text'>
This is a partial reapply of the original commit and the followup commit
that were previously reverted; this reapply also includes a small fix
for a potential source of non-determinism, but also has a small change
to turn off variadic debug value salvaging, to ensure that any future
revert/reapply steps to disable and renable this feature do not risk
causing conflicts.

Differential Revision: https://reviews.llvm.org/D91722

This reverts commit 386b66b2fc297cda121a3cc8a36887a6ecbcfc68.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a partial reapply of the original commit and the followup commit
that were previously reverted; this reapply also includes a small fix
for a potential source of non-determinism, but also has a small change
to turn off variadic debug value salvaging, to ensure that any future
revert/reapply steps to disable and renable this feature do not risk
causing conflicts.

Differential Revision: https://reviews.llvm.org/D91722

This reverts commit 386b66b2fc297cda121a3cc8a36887a6ecbcfc68.
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "3rd Reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands""</title>
<updated>2021-06-08T12:54:08+00:00</updated>
<author>
<name>Hans Wennborg</name>
<email>hans@chromium.org</email>
</author>
<published>2021-06-08T12:42:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=386b66b2fc297cda121a3cc8a36887a6ecbcfc68'/>
<id>386b66b2fc297cda121a3cc8a36887a6ecbcfc68</id>
<content type='text'>
&gt; This reapplies c0f3dfb9, which was reverted following the discovery of
&gt; crashes on linux kernel and chromium builds - these issues have since
&gt; been fixed, allowing this patch to re-land.

This reverts commit 36ec97f76ac0d8be76fb16ac521f55126766267d.

The change caused non-determinism in the compiler, see comments on the code
review at https://reviews.llvm.org/D91722.

Reverting to unbreak people's builds until that can be addressed.

This also reverts the follow-up "[DebugInfo] Limit the number of values
that may be referenced by a dbg.value" in
a0bd6105d80698c53ceaa64bbe6e3b7e7bbf99ee.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
&gt; This reapplies c0f3dfb9, which was reverted following the discovery of
&gt; crashes on linux kernel and chromium builds - these issues have since
&gt; been fixed, allowing this patch to re-land.

This reverts commit 36ec97f76ac0d8be76fb16ac521f55126766267d.

The change caused non-determinism in the compiler, see comments on the code
review at https://reviews.llvm.org/D91722.

Reverting to unbreak people's builds until that can be addressed.

This also reverts the follow-up "[DebugInfo] Limit the number of values
that may be referenced by a dbg.value" in
a0bd6105d80698c53ceaa64bbe6e3b7e7bbf99ee.
</pre>
</div>
</content>
</entry>
</feed>
