<feed xmlns='http://www.w3.org/2005/Atom'>
<title>yuzu/src/common/ring_buffer.h, branch main</title>
<subtitle>Nintendo Switch emulator</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/yuzu/'/>
<entry>
<title>common: Use consistent cache line size in RingBuffer</title>
<updated>2025-05-11T11:17:03+00:00</updated>
<author>
<name>Zephyron</name>
<email>zephyron@citron-emu.org</email>
</author>
<published>2025-01-06T02:41:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/yuzu/commit/?id=78067cf62f85eb47804d1eaeaea4986634e3eb7b'/>
<id>78067cf62f85eb47804d1eaeaea4986634e3eb7b</id>
<content type='text'>
Replace hardcoded 128-byte alignment with a defined CACHE_LINE_SIZE constant
of 64 bytes for the atomic indices in RingBuffer. This value is more
appropriate for most modern CPU architectures and simplifies the
implementation by using a consistent value regardless of compiler support
for hardware_interference_size.

Changes:
- Add CACHE_LINE_SIZE constant set to 64 bytes
- Use CACHE_LINE_SIZE for atomic index alignment in both code paths
- Remove outdated TODO comment about hardware_destructive_interference_size
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Replace hardcoded 128-byte alignment with a defined CACHE_LINE_SIZE constant
of 64 bytes for the atomic indices in RingBuffer. This value is more
appropriate for most modern CPU architectures and simplifies the
implementation by using a consistent value regardless of compiler support
for hardware_interference_size.

Changes:
- Add CACHE_LINE_SIZE constant set to 64 bytes
- Use CACHE_LINE_SIZE for atomic index alignment in both code paths
- Remove outdated TODO comment about hardware_destructive_interference_size
</pre>
</div>
</content>
</entry>
<entry>
<title>common/ring_buffer: Include &lt;limits&gt; header</title>
<updated>2024-02-24T00:34:09+00:00</updated>
<author>
<name>wheremyfoodat</name>
<email>44909372+wheremyfoodat@users.noreply.github.com</email>
</author>
<published>2024-02-24T00:34:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/yuzu/commit/?id=ed315fb8a5c820d9dae7f4387ea1e9208a1a384c'/>
<id>ed315fb8a5c820d9dae7f4387ea1e9208a1a384c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ring_buffer: Use feature macro</title>
<updated>2023-12-25T13:10:40+00:00</updated>
<author>
<name>FearlessTobi</name>
<email>thm.frey@gmail.com</email>
</author>
<published>2023-12-25T13:10:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/yuzu/commit/?id=553dac2ae0b83fa4b251511b62c1022359b6851d'/>
<id>553dac2ae0b83fa4b251511b62c1022359b6851d</id>
<content type='text'>
Co-Authored-By: GPUCode &lt;47210458+GPUCode@users.noreply.github.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-Authored-By: GPUCode &lt;47210458+GPUCode@users.noreply.github.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ring_buffer: Fix const usage on std::span</title>
<updated>2023-06-30T17:33:14+00:00</updated>
<author>
<name>Morph</name>
<email>39850852+Morph1984@users.noreply.github.com</email>
</author>
<published>2023-06-25T00:31:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/yuzu/commit/?id=fbd85417ffdfe23dd4b4d3d13518244bd00be361'/>
<id>fbd85417ffdfe23dd4b4d3d13518244bd00be361</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove memory allocations in some hot paths</title>
<updated>2023-06-22T07:05:10+00:00</updated>
<author>
<name>Kelebek1</name>
<email>eeeedddccc@hotmail.co.uk</email>
</author>
<published>2023-05-23T13:45:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/yuzu/commit/?id=5da70f719703084482933e103e561cc98163f370'/>
<id>5da70f719703084482933e103e561cc98163f370</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>general: Convert source file copyright comments over to SPDX</title>
<updated>2022-04-23T09:55:32+00:00</updated>
<author>
<name>Morph</name>
<email>39850852+Morph1984@users.noreply.github.com</email>
</author>
<published>2022-04-23T08:59:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/yuzu/commit/?id=99ceb03a1cfcf35968cab589ea188a8c406cda52'/>
<id>99ceb03a1cfcf35968cab589ea188a8c406cda52</id>
<content type='text'>
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
</pre>
</div>
</content>
</entry>
<entry>
<title>common: Reduce unused includes</title>
<updated>2022-03-19T19:01:31+00:00</updated>
<author>
<name>ameerj</name>
<email>52414509+ameerj@users.noreply.github.com</email>
</author>
<published>2022-03-19T04:23:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/yuzu/commit/?id=923decae5a5098cb9d254e008ed61fc5e07ced38'/>
<id>923decae5a5098cb9d254e008ed61fc5e07ced38</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ring_buffer: Remove granularity template argument</title>
<updated>2021-02-06T19:16:00+00:00</updated>
<author>
<name>MerryMage</name>
<email>MerryMage@users.noreply.github.com</email>
</author>
<published>2021-02-06T19:13:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/yuzu/commit/?id=8d002659987cd45cb77896fbb173159398138e73'/>
<id>8d002659987cd45cb77896fbb173159398138e73</id>
<content type='text'>
Non-obvious bug in RingBuffer::Push(std::vector&lt;T&gt;&amp;) when granularity != 1

Just remove it altogether because we do not have a use for granularity != 1
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Non-obvious bug in RingBuffer::Push(std::vector&lt;T&gt;&amp;) when granularity != 1

Just remove it altogether because we do not have a use for granularity != 1
</pre>
</div>
</content>
</entry>
<entry>
<title>common: Make use of [[nodiscard]] where applicable</title>
<updated>2020-08-15T21:17:52+00:00</updated>
<author>
<name>Lioncash</name>
<email>mathew1800@gmail.com</email>
</author>
<published>2020-08-14T13:38:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/yuzu/commit/?id=df7248039553b3ebd338380c3ef0428b0e046e79'/>
<id>df7248039553b3ebd338380c3ef0428b0e046e79</id>
<content type='text'>
Now that clang-format makes [[nodiscard]] attributes format sensibly, we
can apply them to several functions within the common library to allow
the compiler to complain about any misuses of the functions.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Now that clang-format makes [[nodiscard]] attributes format sensibly, we
can apply them to several functions within the common library to allow
the compiler to complain about any misuses of the functions.
</pre>
</div>
</content>
</entry>
<entry>
<title>ring_buffer: Use std::atomic_size_t in a static assert</title>
<updated>2018-09-19T03:36:04+00:00</updated>
<author>
<name>Lioncash</name>
<email>mathew1800@gmail.com</email>
</author>
<published>2018-09-19T03:06:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/yuzu/commit/?id=ab6dfa4fa55266082171f9752abae00bea8db555'/>
<id>ab6dfa4fa55266082171f9752abae00bea8db555</id>
<content type='text'>
Avoids the need to repeat "std::" twice
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Avoids the need to repeat "std::" twice
</pre>
</div>
</content>
</entry>
</feed>
