<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/orc-rt/unittests/SPSWrapperFunctionTest.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>[orc-rt] Rename 'Session' variables to avoid ambiguity with type. NFCI. (#168999)</title>
<updated>2025-11-21T07:01:23+00:00</updated>
<author>
<name>Lang Hames</name>
<email>lhames@gmail.com</email>
</author>
<published>2025-11-21T07:01:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ea9ec7cfb538d9059a04777c5b738b4b49b6fb83'/>
<id>ea9ec7cfb538d9059a04777c5b738b4b49b6fb83</id>
<content type='text'>
Re-using Session as a variable name risks confusion with the Session
type.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Re-using Session as a variable name risks confusion with the Session
type.</pre>
</div>
</content>
</entry>
<entry>
<title>[orc-rt] Replace wrapper fn `void *CallCtx` arg with `uint64_t CallId`. (#167452)</title>
<updated>2025-11-11T07:11:41+00:00</updated>
<author>
<name>Lang Hames</name>
<email>lhames@gmail.com</email>
</author>
<published>2025-11-11T07:11:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=4c4b1a905e89278d5d02b8d5ba5e2a948d638a88'/>
<id>4c4b1a905e89278d5d02b8d5ba5e2a948d638a88</id>
<content type='text'>
This argument serves as an opaque id (outside the ControllerAccess
object) for a call to a wrapper function. I expect that most
ControllerAccess implementations will want to use this argument as a
sequence number (plain integer), for which uint64_t will be a better fit
than void*. For ControllerAccess implementations that want to use a
pointer, uint64_t should be sufficiently large.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This argument serves as an opaque id (outside the ControllerAccess
object) for a call to a wrapper function. I expect that most
ControllerAccess implementations will want to use this argument as a
sequence number (plain integer), for which uint64_t will be a better fit
than void*. For ControllerAccess implementations that want to use a
pointer, uint64_t should be sufficiently large.</pre>
</div>
</content>
</entry>
<entry>
<title>[orc-rt] Add SPSExecutorAddr &lt;-&gt; T* serialization. (#162992)</title>
<updated>2025-10-11T11:24:03+00:00</updated>
<author>
<name>Lang Hames</name>
<email>lhames@gmail.com</email>
</author>
<published>2025-10-11T11:24:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=28b3f2f04bf178a4813c16ca445cc01df233cb58'/>
<id>28b3f2f04bf178a4813c16ca445cc01df233cb58</id>
<content type='text'>
This replaces SPS transparent conversion for pointers. Transparent
conversion only applies to argument/return types, not nested types. We
want to be able to serialize / deserialize structs containing pointers.

We may need to replace this in the near future with a new SPSPointer tag
type, since SPSExecutorAddr is meant to be serialization for pure
addresses, and pointers may carry other information (e.g. tag bits), but
we can do that in a follow-up commit.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This replaces SPS transparent conversion for pointers. Transparent
conversion only applies to argument/return types, not nested types. We
want to be able to serialize / deserialize structs containing pointers.

We may need to replace this in the near future with a new SPSPointer tag
type, since SPSExecutorAddr is meant to be serialization for pure
addresses, and pointers may carry other information (e.g. tag bits), but
we can do that in a follow-up commit.</pre>
</div>
</content>
</entry>
<entry>
<title>[orc-rt] Enable span&lt;const char&gt; use in SPSWrapperFunctions. (#162792)</title>
<updated>2025-10-10T08:38:10+00:00</updated>
<author>
<name>Lang Hames</name>
<email>lhames@gmail.com</email>
</author>
<published>2025-10-10T08:38:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ef4598fbc6038d47c33a1746e47885833cd69ade'/>
<id>ef4598fbc6038d47c33a1746e47885833cd69ade</id>
<content type='text'>
SPS deserialization for span&lt;const char&gt; produces a value that points
directly into the argument buffer for efficiency. This was broken by an
unnecessary std::move of the buffer inside WrapperFunction, which this
commit removes.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
SPS deserialization for span&lt;const char&gt; produces a value that points
directly into the argument buffer for efficiency. This was broken by an
unnecessary std::move of the buffer inside WrapperFunction, which this
commit removes.</pre>
</div>
</content>
</entry>
<entry>
<title>[orc-rt] Enable SPS transparent conversion for reference arguments. (#162563)</title>
<updated>2025-10-08T23:19:05+00:00</updated>
<author>
<name>Lang Hames</name>
<email>lhames@gmail.com</email>
</author>
<published>2025-10-08T23:19:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=d0d2162341e9a5371bbacb481b183b4ae74598ef'/>
<id>d0d2162341e9a5371bbacb481b183b4ae74598ef</id>
<content type='text'>
Ensures that SPS transparent conversion will apply to arguments passed
by reference.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Ensures that SPS transparent conversion will apply to arguments passed
by reference.</pre>
</div>
</content>
</entry>
<entry>
<title>[orc-rt] Rename unit tests for consistency. NFCI.</title>
<updated>2025-10-08T11:36:11+00:00</updated>
<author>
<name>Lang Hames</name>
<email>lhames@gmail.com</email>
</author>
<published>2025-10-08T11:36:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=eac3788b4e2dd305a84f09ebc6fffc050ee84a68'/>
<id>eac3788b4e2dd305a84f09ebc6fffc050ee84a68</id>
<content type='text'>
Related tests use "TransparentConversion" rather than
"TransparentSerialization".
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Related tests use "TransparentConversion" rather than
"TransparentSerialization".
</pre>
</div>
</content>
</entry>
<entry>
<title>[orc-rt] Hoist DirectCaller test utility into header to enable re-use. (#162405)</title>
<updated>2025-10-08T00:48:27+00:00</updated>
<author>
<name>Lang Hames</name>
<email>lhames@gmail.com</email>
</author>
<published>2025-10-08T00:48:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=70b7a3502ee975ad08e2bc3ade32a04db19e31de'/>
<id>70b7a3502ee975ad08e2bc3ade32a04db19e31de</id>
<content type='text'>
The DirectCaller utility allows "direct" calls (with arguments
serialized into, and then immediately back out of a
WrapperFunctionBuffer) to wrapper functions. It was introduced for the
SPSWrapperFunction tests, but will be useful for testing WrapperFunction
interfaces for various orc-rt APIs too, so this commit hoists it
somewhere where it can be reused.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The DirectCaller utility allows "direct" calls (with arguments
serialized into, and then immediately back out of a
WrapperFunctionBuffer) to wrapper functions. It was introduced for the
SPSWrapperFunction tests, but will be useful for testing WrapperFunction
interfaces for various orc-rt APIs too, so this commit hoists it
somewhere where it can be reused.</pre>
</div>
</content>
</entry>
<entry>
<title>[orc-rt] Enable transparent SPS conversion for Expected&lt;T*&gt;. (#162073)</title>
<updated>2025-10-07T01:47:59+00:00</updated>
<author>
<name>Lang Hames</name>
<email>lhames@gmail.com</email>
</author>
<published>2025-10-07T01:47:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c410e88f0f8c0654d7744d6d029009f9cb736143'/>
<id>c410e88f0f8c0654d7744d6d029009f9cb736143</id>
<content type='text'>
Expected&lt;T*&gt; values will be converted to/from Expected&lt;ExecutorAddr&gt;
values.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Expected&lt;T*&gt; values will be converted to/from Expected&lt;ExecutorAddr&gt;
values.</pre>
</div>
</content>
</entry>
<entry>
<title>[orc-rt] Clean up SPSWrapperFunction unittest names.</title>
<updated>2025-10-06T11:31:26+00:00</updated>
<author>
<name>Lang Hames</name>
<email>lhames@gmail.com</email>
</author>
<published>2025-10-06T11:25:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f8baf07c7cc2c85c2273606ecf5b15bc23228102'/>
<id>f8baf07c7cc2c85c2273606ecf5b15bc23228102</id>
<content type='text'>
Drop the redundant 'Test' prefix and rename transparent serialization tests to
clarify their purpose.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Drop the redundant 'Test' prefix and rename transparent serialization tests to
clarify their purpose.
</pre>
</div>
</content>
</entry>
<entry>
<title>[orc-rt] Enable transparent SPS conversion for ptrs via ExecutorAddr. (#162069)</title>
<updated>2025-10-06T11:30:57+00:00</updated>
<author>
<name>Lang Hames</name>
<email>lhames@gmail.com</email>
</author>
<published>2025-10-06T11:30:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=9a111ff91c5dc7d59e1fc9d35f3e43e1c5699120'/>
<id>9a111ff91c5dc7d59e1fc9d35f3e43e1c5699120</id>
<content type='text'>
Allows SPS wrapper function calls and handles to use pointer arguments.
These will be converted to ExecutorAddr for serialization /
deserialization.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Allows SPS wrapper function calls and handles to use pointer arguments.
These will be converted to ExecutorAddr for serialization /
deserialization.</pre>
</div>
</content>
</entry>
</feed>
