<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/FileCheck/FileCheckImpl.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>[FileCheck] Improve printing variables with escapes (#145865)</title>
<updated>2025-06-27T20:39:07+00:00</updated>
<author>
<name>Mészáros Gergely</name>
<email>gergely.meszaros@intel.com</email>
</author>
<published>2025-06-27T20:39:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=98f7d756e334278e2e34177fa11e5a604d3b01ff'/>
<id>98f7d756e334278e2e34177fa11e5a604d3b01ff</id>
<content type='text'>
Firstly fix FileCheck printing string variables
double-escaped (first regex, then C-style).
    
This is confusing because it is not clear if the printed
value is the literal value or exactly how it is escaped, without
looking at FileCheck's source code.
    
Secondly, only escape when doing so makes it easier to read the value
(when the string contains tabs, newlines or non-printable characters).
When the variable value is escaped, make a note of it in the output too,
in order to avoid confusion.
    
The common case that is motivating this change is variables that contain
windows style paths with backslashes. These were printed as
`"C:\\\\Program Files\\\\MyApp\\\\file.txt"`.
Now prefer to print them as `"C:\Program Files\MyApp\file.txt"`.
Printing the value literally also makes it easier to search for
variables in the output, since the user can just copy-paste it.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Firstly fix FileCheck printing string variables
double-escaped (first regex, then C-style).
    
This is confusing because it is not clear if the printed
value is the literal value or exactly how it is escaped, without
looking at FileCheck's source code.
    
Secondly, only escape when doing so makes it easier to read the value
(when the string contains tabs, newlines or non-printable characters).
When the variable value is escaped, make a note of it in the output too,
in order to avoid confusion.
    
The common case that is motivating this change is variables that contain
windows style paths with backslashes. These were printed as
`"C:\\\\Program Files\\\\MyApp\\\\file.txt"`.
Now prefer to print them as `"C:\Program Files\MyApp\file.txt"`.
Printing the value literally also makes it easier to search for
variables in the output, since the user can just copy-paste it.</pre>
</div>
</content>
</entry>
<entry>
<title>[FileCheck] Use default member initialization in ExpressionFormat (NFC) (#138409)</title>
<updated>2025-05-03T17:27:08+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2025-05-03T17:27:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=7cc5e64a26f7c752646577e4e72d9f52cac8870d'/>
<id>7cc5e64a26f7c752646577e4e72d9f52cac8870d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[FileCheck] Use move semantics instead of std::swap. NFC. (#123304)</title>
<updated>2025-01-23T13:28:59+00:00</updated>
<author>
<name>Jay Foad</name>
<email>jay.foad@amd.com</email>
</author>
<published>2025-01-23T13:28:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=d3d605b7cdee132929d32f8b71b01641eb1d6d37'/>
<id>d3d605b7cdee132929d32f8b71b01641eb1d6d37</id>
<content type='text'>
This code was using a pre-move-semantics trick of using std::swap to
avoid expensive vector copies.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This code was using a pre-move-semantics trick of using std::swap to
avoid expensive vector copies.</pre>
</div>
</content>
</entry>
<entry>
<title>[FileCheck]: Fix diagnostics for NOT prefixes (#78412)</title>
<updated>2024-01-19T15:08:24+00:00</updated>
<author>
<name>Vinayak Dev</name>
<email>104419489+vinayakdsci@users.noreply.github.com</email>
</author>
<published>2024-01-19T15:08:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=497a8604b39f8b5736c389f6d7ccd8242a122cbf'/>
<id>497a8604b39f8b5736c389f6d7ccd8242a122cbf</id>
<content type='text'>
Fixes #70221 

Fix a bug in FileCheck that corrects the error message when multiple
prefixes are provided
through --check-prefixes and one of them is a PREFIX-NOT.

Earlier, only the first of the provided prefixes was displayed as the
erroneous prefix, while the
actual error might be on the prefix that occurred at the end of the
prefix list in the input file.

Now, the right NOT prefix is shown in the error message.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes #70221 

Fix a bug in FileCheck that corrects the error message when multiple
prefixes are provided
through --check-prefixes and one of them is a PREFIX-NOT.

Earlier, only the first of the provided prefixes was displayed as the
erroneous prefix, while the
actual error might be on the prefix that occurred at the end of the
prefix list in the input file.

Now, the right NOT prefix is shown in the error message.</pre>
</div>
</content>
</entry>
<entry>
<title>[FileCheck] Turn errors into assert in valueFromStringRepr()</title>
<updated>2023-08-07T20:27:44+00:00</updated>
<author>
<name>Thomas Preud'homme</name>
<email>thomas.preudhomme@arm.com</email>
</author>
<published>2023-06-30T22:29:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=b743c19360a67af4a709bd839e8c80ad17f71a1c'/>
<id>b743c19360a67af4a709bd839e8c80ad17f71a1c</id>
<content type='text'>
getWildcardRegex() guarantees that only valid hex numbers are matched by
FileCheck numeric expressions. This commit therefore only asserts the
lack of parsing failure in valueFromStringRepr().

Depends On D154430

Reviewed By: arichardson

Differential Revision: https://reviews.llvm.org/D154431
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
getWildcardRegex() guarantees that only valid hex numbers are matched by
FileCheck numeric expressions. This commit therefore only asserts the
lack of parsing failure in valueFromStringRepr().

Depends On D154430

Reviewed By: arichardson

Differential Revision: https://reviews.llvm.org/D154431
</pre>
</div>
</content>
</entry>
<entry>
<title>[FileCheck, 4/4] NFC: Stop using ExpressionValue</title>
<updated>2023-08-07T16:36:05+00:00</updated>
<author>
<name>Thomas Preud'homme</name>
<email>thomas.preudhomme@arm.com</email>
</author>
<published>2023-07-03T22:51:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=e15e969a4faca759fe7f0e4ab0f54aed43f98bbc'/>
<id>e15e969a4faca759fe7f0e4ab0f54aed43f98bbc</id>
<content type='text'>
Use APInt directly instead.

Depends On D150880

Reviewed By: arichardson

Differential Revision: https://reviews.llvm.org/D154430
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use APInt directly instead.

Depends On D150880

Reviewed By: arichardson

Differential Revision: https://reviews.llvm.org/D154430
</pre>
</div>
</content>
</entry>
<entry>
<title>[FileCheck, 3/4] Allow AP value for numeric expressions</title>
<updated>2023-08-07T13:48:48+00:00</updated>
<author>
<name>Thomas Preud'homme</name>
<email>thomas.preudhomme@arm.com</email>
</author>
<published>2023-08-07T08:37:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=0726cb00471850ead0835e5d3806c7aef5bb0b21'/>
<id>0726cb00471850ead0835e5d3806c7aef5bb0b21</id>
<content type='text'>
Use APInt to represent numeric variables and expressions, therefore
removing overflow concerns. Only remains underflow when the format of an
expression is unsigned (incl. hex values) but the result is negative.
Note that this can only happen when substituting an expression, not when
capturing since the regex used to capture unsigned value will not include
minus sign, hence all the code removal for match propagation testing.
This is what this patch implement.

Reviewed By: arichardson

Differential Revision: https://reviews.llvm.org/D150880
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use APInt to represent numeric variables and expressions, therefore
removing overflow concerns. Only remains underflow when the format of an
expression is unsigned (incl. hex values) but the result is negative.
Note that this can only happen when substituting an expression, not when
capturing since the regex used to capture unsigned value will not include
minus sign, hence all the code removal for match propagation testing.
This is what this patch implement.

Reviewed By: arichardson

Differential Revision: https://reviews.llvm.org/D150880
</pre>
</div>
</content>
</entry>
<entry>
<title>[FileCheck, 2/4] NFC: Switch to APInt getter for ExpressionValue</title>
<updated>2023-07-04T20:42:11+00:00</updated>
<author>
<name>Thomas Preud'homme</name>
<email>thomas.preudhomme@arm.com</email>
</author>
<published>2023-06-29T21:44:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=fc0d1c05a04b7b3fbb8805de53d695f0deeac57c'/>
<id>fc0d1c05a04b7b3fbb8805de53d695f0deeac57c</id>
<content type='text'>
Use an APInt getter as the only interface to getting the value out of an
ExpressionValue. This paves the way to switch ExpressionValue to handle
any integer without causing too big of a patch.

Reviewed By: arichardson

Differential Revision: https://reviews.llvm.org/D154429
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use an APInt getter as the only interface to getting the value out of an
ExpressionValue. This paves the way to switch ExpressionValue to handle
any integer without causing too big of a patch.

Reviewed By: arichardson

Differential Revision: https://reviews.llvm.org/D154429
</pre>
</div>
</content>
</entry>
<entry>
<title>[FileCheck, 1/4] NFC: Switch ExpressionValue to APInt</title>
<updated>2023-07-04T20:39:20+00:00</updated>
<author>
<name>Thomas Preud'homme</name>
<email>thomas.preudhomme@arm.com</email>
</author>
<published>2023-06-28T21:53:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=cf57fcfa0256df8d69638ab1462267413755ba86'/>
<id>cf57fcfa0256df8d69638ab1462267413755ba86</id>
<content type='text'>
Use APInt internally to store values represented by ExpressionValue.
This will allow to support any integer values in FileCheck numeric
expression in a subsequent commit.

Reviewed By: arichardson

Differential Revision: https://reviews.llvm.org/D154428
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use APInt internally to store values represented by ExpressionValue.
This will allow to support any integer values in FileCheck numeric
expression in a subsequent commit.

Reviewed By: arichardson

Differential Revision: https://reviews.llvm.org/D154428
</pre>
</div>
</content>
</entry>
<entry>
<title>[llvm] Replace None with std::nullopt in comments (NFC)</title>
<updated>2023-04-26T06:53:32+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2023-04-26T06:53:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=1ca0cb717a0950f8397660d142f14a9b28deaebe'/>
<id>1ca0cb717a0950f8397660d142f14a9b28deaebe</id>
<content type='text'>
This is part of an effort to migrate from llvm::Optional to
std::optional:

https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is part of an effort to migrate from llvm::Optional to
std::optional:

https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
</pre>
</div>
</content>
</entry>
</feed>
