Skip to content

Commit 2c0393c

Browse files
committed
Remove redlining from [parallel.alg.reductions]
1 parent 5c467d4 commit 2c0393c

File tree

1 file changed

+50
-61
lines changed

1 file changed

+50
-61
lines changed

algorithms.html

Lines changed: 50 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -187,9 +187,8 @@ <h1>Header <code>&lt;experimental/algorithm&gt;</code> synopsis</h1>
187187
</cxx-section>
188188

189189
<cxx-section id="parallel.alg.reductions">
190-
<h1><ins>Reductions</ins></h1>
190+
<h1>Reductions</h1>
191191

192-
<ins>
193192
<p>
194193
Each of the function templates in this subclause ([parallel.alg.reductions]) returns a <em>reduction object</em>
195194
of unspecified type having a <em>reduction value type</em> and encapsulating a <em>reduction identity</em> value for the reduction, a
@@ -213,93 +212,83 @@ <h1><ins>Reductions</ins></h1>
213212
to commutative operations closely related to the combiner operation. For example if the combiner is <code>plus&lt;T&gt;</code>, incrementing
214213
the accumulator would be consistent with the combiner but doubling it or assigning to it would not.</cxx-note>
215214
</p>
216-
</ins>
217215

218216
<cxx-function>
219-
<cxx-signature><ins>template&lt;class T, class BinaryOperation&gt;
220-
<em>unspecified</em> reduction(T&amp; var, const T&amp; identity, BinaryOperation combiner);</ins></cxx-signature>
217+
<cxx-signature>template&lt;class T, class BinaryOperation&gt;
218+
<em>unspecified</em> reduction(T&amp; var, const T&amp; identity, BinaryOperation combiner);</cxx-signature>
221219

222-
<ins>
223-
<cxx-requires><ins>T shall meet the requirements of <code>CopyConstructible</code> and <code>MoveAssignable</code>. The expression <code>var = combiner(var, var)</code> shall be well-formed.</ins></cxx-requires>
224-
</ins>
220+
<cxx-requires>T shall meet the requirements of <code>CopyConstructible</code> and <code>MoveAssignable</code>. The expression <code>var = combiner(var, var)</code> shall be well-formed.</cxx-requires>
225221

226-
<ins>
227-
<cxx-returns><ins>a reduction object of unspecified type having reduction value type <code>T</code>, reduction identity <code>identity</code>, combiner function object <code>combiner</code>, and using the object referenced by <code>var</code> as its live-out object.</ins></cxx-returns>
228-
</ins>
222+
<cxx-returns>a reduction object of unspecified type having reduction value type <code>T</code>, reduction identity <code>identity</code>, combiner function object <code>combiner</code>, and using the object referenced by <code>var</code> as its live-out object.</cxx-returns>
229223
</cxx-function>
230224

231225
<cxx-function>
232-
<cxx-signature><ins>template&lt;class T&gt;
233-
<em>unspecified</em> reduction_plus(T&amp; var);</ins></cxx-signature>
234-
<cxx-signature><ins>template&lt;class T&gt;
235-
<em>unspecified</em> reduction_multiplies(T&amp; var);</ins></cxx-signature>
236-
<cxx-signature><ins>template&lt;class T&gt;
237-
<em>unspecified</em> reduction_bit_and(T&amp; var);</ins></cxx-signature>
238-
<cxx-signature><ins>template&lt;class T&gt;
239-
<em>unspecified</em> reduction_bit_or(T&amp; var);</ins></cxx-signature>
240-
<cxx-signature><ins>template&lt;class T&gt;
241-
<em>unspecified</em> reduction_bit_xor(T&amp; var);</ins></cxx-signature>
242-
<cxx-signature><ins>template&lt;class T&gt;
243-
<em>unspecified</em> reduction_min(T&amp; var);</ins></cxx-signature>
244-
<cxx-signature><ins>template&lt;class T&gt;
245-
<em>unspecified</em> reduction_max(T&amp; var);</ins></cxx-signature>
246-
247-
<ins>
248-
<cxx-requires><ins>T shall meet the requirements of <code>CopyConstructible</code> and <code>MoveAssignable</code>.</ins></cxx-requires>
249-
</ins>
250-
251-
<ins>
252-
<cxx-returns><ins>a reduction object of unspecified type having reduction value type <code>T</code>, reduction identity and combiner operation as specified in table <cxx-ref to="reduction-identities-and-combiner-operations"></cxx-ref> and using the object referenced by <code>var</code> as its live-out object.</ins></cxx-returns>
253-
</ins>
226+
<cxx-signature>template&lt;class T&gt;
227+
<em>unspecified</em> reduction_plus(T&amp; var);</cxx-signature>
228+
<cxx-signature>template&lt;class T&gt;
229+
<em>unspecified</em> reduction_multiplies(T&amp; var);</cxx-signature>
230+
<cxx-signature>template&lt;class T&gt;
231+
<em>unspecified</em> reduction_bit_and(T&amp; var);</cxx-signature>
232+
<cxx-signature>template&lt;class T&gt;
233+
<em>unspecified</em> reduction_bit_or(T&amp; var);</cxx-signature>
234+
<cxx-signature>template&lt;class T&gt;
235+
<em>unspecified</em> reduction_bit_xor(T&amp; var);</cxx-signature>
236+
<cxx-signature>template&lt;class T&gt;
237+
<em>unspecified</em> reduction_min(T&amp; var);</cxx-signature>
238+
<cxx-signature>template&lt;class T&gt;
239+
<em>unspecified</em> reduction_max(T&amp; var);</cxx-signature>
240+
241+
<cxx-requires>T shall meet the requirements of <code>CopyConstructible</code> and <code>MoveAssignable</code>.></cxx-requires>
242+
243+
<cxx-returns>a reduction object of unspecified type having reduction value type <code>T</code>, reduction identity and combiner operation as specified in table <cxx-ref to="reduction-identities-and-combiner-operations"></cxx-ref> and using the object referenced by <code>var</code> as its live-out object.</cxx-returns>
254244

255245
<table is="cxx-table" class="column-rules" id=reduction-identities-and-combiner-operations>
256-
<caption><ins>Reduction identities and combiner operations</ins></caption>
246+
<caption>Reduction identities and combiner operations</caption>
257247
<thead>
258248
<tr>
259-
<th><ins>Function</ins></th>
260-
<th><ins>Reduction Identity</ins></th>
261-
<th><ins>Combiner Operation</ins></th>
249+
<th>Function</th>
250+
<th>Reduction Identity</th>
251+
<th>Combiner Operation</th>
262252
</tr>
263253
<tr>
264-
<th><ins><code>reduction_plus</code></ins></th>
265-
<th><ins><code>T()</code></ins></th>
266-
<th><ins><code>x + y</code></ins></th>
254+
<th><code>reduction_plus</code></th>
255+
<th><code>T()</code></th>
256+
<th><code>x + y</code></th>
267257
</tr>
268258
<tr>
269-
<th><ins><code>reduction_multiplies</code></ins></th>
270-
<th><ins><code>T(1)</code></ins></th>
271-
<th><ins><code>x * y</code></ins></th>
259+
<th><code>reduction_multiplies</code></th>
260+
<th><code>T(1)</code></th>
261+
<th><code>x * y</code></th>
272262
</tr>
273263
<tr>
274-
<th><ins><code>reduction_bit_and</code></ins></th>
275-
<th><ins><code>(~T())</code></ins></th>
276-
<th><ins><code>X &amp; y</code></ins></th>
264+
<th><code>reduction_bit_and</code></th>
265+
<th><code>(~T())</code></th>
266+
<th><code>X &amp; y</code></th>
277267
</tr>
278268
<tr>
279-
<th><ins><code>reduction_bit_or</code></ins></th>
280-
<th><ins><code>T()</code></ins></th>
281-
<th><ins><code>x | y</code></ins></th>
269+
<th><code>reduction_bit_or</code></th>
270+
<th><code>T()</code></th>
271+
<th><code>x | y</code></th>
282272
</tr>
283273
<tr>
284-
<th><ins><code>reduction_bit_xor</code></ins></th>
285-
<th><ins><code>T()</code></ins></th>
286-
<th><ins><code>x ^ y</code></ins></th>
274+
<th><code>reduction_bit_xor</code></th>
275+
<th><code>T()</code></th>
276+
<th><code>x ^ y</code></th>
287277
</tr>
288278
<tr>
289-
<th><ins><code>reduction_min</code></ins></th>
290-
<th><ins><code>var</code></ins></th>
291-
<th><ins><code>min(x, y)</code></ins></th>
279+
<th><code>reduction_min</code></th>
280+
<th><code>var</code></th>
281+
<th><code>min(x, y)</code></th>
292282
</tr>
293283
<tr>
294-
<th><ins><code>reduction_max</code></ins></th>
295-
<th><ins><code>var</code></ins></th>
296-
<th><ins><code>max(x, y)</code></ins></th>
284+
<th><code>reduction_max</code></th>
285+
<th><code>var</code></th>
286+
<th><code>max(x, y)</code></th>
297287
</tr>
298288
</thead>
299289
</table>
300290

301-
<ins>
302-
<cxx-example><ins>The following code updates each element of <code>y</code> and sets <code>s</code> ot the sum of the squares.
291+
<cxx-example>The following code updates each element of <code>y</code> and sets <code>s</code> ot the sum of the squares.
303292
<pre>
304293
extern int n;
305294
extern float x[], y[], a;
@@ -312,7 +301,7 @@ <h1><ins>Reductions</ins></h1>
312301
}
313302
);
314303
</pre>
315-
</ins></cxx-example>
304+
</cxx-example>
316305
</ins>
317306
</cxx-function>
318307
</cxx-section>

0 commit comments

Comments
 (0)