Skip to content

Commit

Permalink
Merge branch 'main' into add-and-link-error-codes
Browse files Browse the repository at this point in the history
  • Loading branch information
bashbaug committed Apr 1, 2024
2 parents 4cbefeb + 9baba39 commit 5459cef
Show file tree
Hide file tree
Showing 36 changed files with 244 additions and 213 deletions.
66 changes: 33 additions & 33 deletions OpenCL_C.txt
Original file line number Diff line number Diff line change
Expand Up @@ -570,7 +570,7 @@ endif::cl_khr_subgroup_ballot[]

ifdef::cl_khr_subgroup_clustered_reduce[]
[[cl_khr_subgroup_clustered_reduce,cl_khr_subgroup_clustered_reduce]]
==== Clustered Reductions
==== Sub-Group Clustered Reductions

The `cl_khr_subgroup_clustered_reduce` extension adds support for clustered
reductions that operate on a subset of work items in the sub-group.
Expand Down Expand Up @@ -600,7 +600,7 @@ endif::cl_khr_subgroup_extended_types[]

ifdef::cl_khr_subgroup_non_uniform_arithmetic[]
[[cl_khr_subgroup_non_uniform_arithmetic,cl_khr_subgroup_non_uniform_arithmetic]]
==== Built-in Non-Uniform Arithmetic Functions for Sub-Groups
==== Sub-Group Non-Uniform Arithmetic

The `cl_khr_subgroup_non_uniform_arithmetic` extension adds the ability to
use some sub-group functions within non-uniform flow control, including
Expand All @@ -620,7 +620,7 @@ endif::cl_khr_subgroup_non_uniform_arithmetic[]

ifdef::cl_khr_subgroup_non_uniform_vote[]
[[cl_khr_subgroup_non_uniform_vote,cl_khr_subgroup_non_uniform_vote]]
==== Built-in Non-Uniform Vote and Election Functions for Sub-Groups
==== Sub-Group Non-Uniform Vote and Election Functions

The `cl_khr_subgroup_non_uniform_vote` extension adds the ability to elect a
single work item from a sub-group to perform a task and to hold votes among
Expand Down Expand Up @@ -651,7 +651,7 @@ endif::cl_khr_subgroup_rotate[]

ifdef::cl_khr_subgroup_shuffle[]
[[cl_khr_subgroup_shuffle,cl_khr_subgroup_shuffle]]
==== General Purpose Shuffles
==== Sub-Group General Purpose Shuffles

The `cl_khr_subgroup_shuffle` extension adds additional ways to exchange
data among work items in a sub-group.
Expand All @@ -665,7 +665,7 @@ endif::cl_khr_subgroup_shuffle[]

ifdef::cl_khr_subgroup_shuffle_relative[]
[[cl_khr_subgroup_shuffle_relative,cl_khr_subgroup_shuffle_relative]]
==== Relative Shuffles
==== Sub-Group Relative Shuffles

The `cl_khr_subgroup_shuffle_relative` extension adds specialized ways to
exchange data among work items in a sub-group that may perform better on
Expand Down Expand Up @@ -8141,7 +8141,7 @@ This section specifies each general kind.


[[atomic_store]]
===== *The atomic_store Functions*
===== The atomic_store Functions

[open,refpage='atomic_store',desc='The atomic_store Functions',type='freeform',spec='clang',anchor='atomic_store',xrefs='atomicFunctions atomicTypes atomic_compare_exchange atomic_exchange atomic_fetch_key atomic_flag atomic_flag_clear atomic_flag_test_and_set atomic_flag_test_and_set_explicit atomic_init atomic_load atomic_store atomic_work_item_fence']
--
Expand Down Expand Up @@ -8212,7 +8212,7 @@ feature.


[[atomic_load]]
===== *The atomic_load Functions*
===== The atomic_load Functions

[open,refpage='atomic_load',desc='The atomic_load Functions',type='freeform',spec='clang',anchor='atomic_load',xrefs='atomicFunctions atomicTypes atomic_compare_exchange atomic_exchange atomic_fetch_key atomic_flag atomic_flag_clear atomic_flag_test_and_set atomic_flag_test_and_set_explicit atomic_init atomic_load atomic_store atomic_work_item_fence']
--
Expand Down Expand Up @@ -8276,7 +8276,7 @@ feature.


[[atomic_exchange]]
===== *The atomic_exchange Functions*
===== The atomic_exchange Functions

[open,refpage='atomic_exchange',desc='The atomic_exchange Functions',type='freeform',spec='clang',anchor='atomic_exchange',xrefs='atomicFunctions atomicTypes atomic_compare_exchange atomic_exchange atomic_fetch_key atomic_flag atomic_flag_clear atomic_flag_test_and_set atomic_flag_test_and_set_explicit atomic_init atomic_load atomic_store atomic_work_item_fence']
--
Expand Down Expand Up @@ -8348,7 +8348,7 @@ feature.


[[atomic_compare_exchange]]
===== *The atomic_compare_exchange Functions*
===== The atomic_compare_exchange Functions

[open,refpage='atomic_compare_exchange',desc='The atomic_compare_exchange Functions',type='freeform',spec='clang',anchor='atomic_compare_exchange',xrefs='atomicFunctions atomicTypes atomic_compare_exchange atomic_exchange atomic_fetch_key atomic_flag atomic_flag_clear atomic_flag_test_and_set atomic_flag_test_and_set_explicit atomic_init atomic_load atomic_store atomic_work_item_fence']
--
Expand Down Expand Up @@ -8669,7 +8669,7 @@ feature.


[[atomic_fetch_key]]
===== *The atomic_fetch and modify Functions*
===== The atomic_fetch and modify Functions

[open,refpage='atomic_fetch_key',desc='The atomic_fetch and modify Functions',type='freeform',spec='clang',anchor='atomic_fetch_key',xrefs='atomicFunctions atomicTypes atomic_compare_exchange atomic_exchange atomic_fetch_key atomic_flag atomic_flag_clear atomic_flag_test_and_set atomic_flag_test_and_set_explicit atomic_init atomic_load atomic_store atomic_work_item_fence']
--
Expand Down Expand Up @@ -8772,7 +8772,7 @@ feature.


[[atomic_flag]]
===== *Atomic Flag Type and Operations*
===== Atomic Flag Type and Operations

[open,refpage='atomic_flag',desc='Atomic Flag Type and Operations',type='freeform',spec='clang',anchor='atomic_flag',xrefs='atomicFunctions atomicTypes atomic_compare_exchange atomic_exchange atomic_fetch_key atomic_flag atomic_flag_clear atomic_flag_test_and_set atomic_flag_test_and_set_explicit atomic_init atomic_load atomic_store atomic_work_item_fence']
--
Expand Down Expand Up @@ -8800,7 +8800,7 @@ global atomic_flag guard = ATOMIC_FLAG_INIT;


[[atomic_flag_test_and_set]]
===== *The atomic_flag_test_and_set Functions*
===== The atomic_flag_test_and_set Functions

[open,refpage='atomicFlagTestAndSet',desc='The atomic_flag_test_and_set Functions',type='freeform',spec='clang',anchor='atomic_flag_test_and_set',xrefs='atomicFunctions atomicTypes atomic_compare_exchange atomic_exchange atomic_fetch_key atomic_flag atomic_flag_clear atomic_init atomic_load atomic_store atomic_work_item_fence',alias='atomic_flag_test_and_set atomic_flag_test_and_set_explicit']
--
Expand Down Expand Up @@ -8874,7 +8874,7 @@ feature.


[[atomic_flag_clear]]
===== *The atomic_flag_clear Functions*
===== The atomic_flag_clear Functions

[open,refpage='atomic_flag_clear',desc='The atomic_flag_clear Functions',type='freeform',spec='clang',anchor='atomic_flag_clear',xrefs='atomicFunctions atomicTypes atomic_compare_exchange atomic_exchange atomic_fetch_key atomic_flag atomic_flag_clear atomic_flag_test_and_set atomic_flag_test_and_set_explicit atomic_init atomic_load atomic_store atomic_work_item_fence']
--
Expand Down Expand Up @@ -9735,7 +9735,7 @@ The *F* conversion specifier produces `INF`, `INFINITY`, or `NAN` instead of

**e,E** A `double`, `half__n__`, `float__n__` or `double__n__` argument
representing a floating-point number is converted in the style
__[__**-**__]d__**.**__ddd __**e{plusmn}}**_dd_, where there is one digit
__[__**-**__]d__**.**__ddd __**e{plusmn}**_dd_, where there is one digit
(which is nonzero if the argument is nonzero) before the decimal-point
character and the number of digits after it is equal to the precision; if
the precision is missing, it is taken as 6; if the precision is zero and the
Expand Down Expand Up @@ -10087,7 +10087,7 @@ queried using the `CL_DEVICE_MAX_SAMPLERS` token in *clGetDeviceInfo*.


[[determining-the-border-color-or-value]]
===== *Determining the Border Color or Value*
===== Determining the Border Color or Value

If `<addressing mode>` in sampler is `CLK_ADDRESS_CLAMP`, then out-of-range
image coordinates return the border color.
Expand All @@ -10104,7 +10104,7 @@ of the following values:


[[srgb-images]]
===== *sRGB Images*
===== sRGB Images

The built-in image read functions will perform sRGB to linear RGB
conversions if the image is an sRGB image.
Expand Down Expand Up @@ -14071,7 +14071,7 @@ ifdef::cl_khr_subgroup_ballot[]
NOTE: The functionality described in this section <<unified-spec, requires>>
support for the `<<cl_khr_subgroup_ballot>>` extension.

The <<table-ballot-functions, followingtable>> describes OpenCL C
The <<table-ballot-functions, following table>> describes OpenCL C
programming language built-in functions to allow work items in a sub-group
to collect and operate on ballots from work items in the sub-group.
These functions need not be encountered by all work items in a sub-group
Expand Down Expand Up @@ -14266,7 +14266,7 @@ endif::cl_khr_subgroup_ballot[]

ifdef::cl_khr_subgroup_clustered_reduce[]
[[sub-group-clustered-reduction-functions]]
==== Built-in Clustered Reduction Functions for Sub-Groups
==== Built-in Sub-Group Clustered Reduction Functions

NOTE: The functionality described in this section <<unified-spec, requires>>
support for the `<<cl_khr_subgroup_clustered_reduce>>` extension.
Expand Down Expand Up @@ -14298,7 +14298,7 @@ footnote:[{fn-half-supported}], and `double`
footnote:[{fn-double-supported}].

[[table-clustered-reduce-math-functions]]
.Built-in Arithmetic Functions for Sub-Groups
.Built-in Sub-Group Clustered Reduction Arithmetic Functions
[cols="1a,1",options="header",]
|====
| Function | Description
Expand Down Expand Up @@ -14336,7 +14336,7 @@ the supported built-in scalar data types `char`, `uchar`, `short`, `ushort`,
`int`, `uint`, `long`, or `ulong`.

[[table-clustered-reduce-bitwise-functions]]
.Built-in Bitwise Functions for Sub-Groups
.Built-in Sub-Group Clustered Reduction Bitwise Functions
[cols="1a,1",options="header",]
|====
| Function | Description
Expand Down Expand Up @@ -14366,7 +14366,7 @@ logically `true` and a zero _predicate_ argument or return value is
logically `false`.

[[table-clustered-reduce-logical-functions]]
.Built-in Logical Functions for Sub-Groups
.Built-in Sub-Group Clustered Reduction Logical Functions
[cols="3a,2",options="header",]
|====
| Function | Description
Expand All @@ -14388,7 +14388,7 @@ endif::cl_khr_subgroup_clustered_reduce[]


ifdef::cl_khr_subgroup_non_uniform_arithmetic[]
==== Built-in Non-Uniform Scan and Reduction Functions for Sub-Groups
==== Built-in Sub-Group Non-Uniform Scan and Reduction Functions

NOTE: The functionality described in this section <<unified-spec, requires>>
support for the `<<cl_khr_subgroup_non_uniform_arithmetic>>` extension.
Expand All @@ -14407,7 +14407,7 @@ footnote:[{fn-half-supported}], and `double`
footnote:[{fn-double-supported}].

[[table-non-uniform-math-functions]]
.Built-in Non-Uniform Arithmetic Functions for Sub-Groups
.Built-in Sub-Group Non-Uniform Arithmetic Functions
[cols="3a,2",options="header",]
|====
| Function | Description
Expand Down Expand Up @@ -14499,7 +14499,7 @@ supported built-in scalar data types `char`, `uchar`, `short`, `ushort`,
`int`, `uint`, `long`, and `ulong`.

[[table-non-uniform-bitwise-functions]]
.Built-in Non-Uniform Bitwise Functions for Sub-Groups
.Built-in Sub-Group Non-Uniform Bitwise Functions
[cols="3a,2",options="header",]
|====
| Function | Description
Expand Down Expand Up @@ -14561,7 +14561,7 @@ logically `true` and a zero _predicate_ argument or return value is
logically `false`.

[[table-non-uniform-logical-functions]]
.Built-in Non-Uniform Logical Functions for Sub-Groups
.Built-in Sub-Group Non-Uniform Logical Functions
[cols="2a,1",options="header",]
|====
| Function | Description
Expand Down Expand Up @@ -14614,7 +14614,7 @@ endif::cl_khr_subgroup_non_uniform_arithmetic[]


ifdef::cl_khr_subgroup_non_uniform_vote[]
==== Built-in Non-Uniform Vote Functions for Sub-Groups
==== Built-in Sub-Group Non-Uniform Vote Functions

NOTE: The functionality described in this section <<unified-spec, requires>>
support for the `<<cl_khr_subgroup_non_uniform_vote>>` extension.
Expand All @@ -14632,7 +14632,7 @@ footnote:[{fn-half-supported}], and `double`
footnote:[{fn-double-supported}].

[[table-non-uniform-vote-functions]]
.Built-in Non-Uniform Vote Functions for Sub-Groups
.Built-in Sub-Group Non-Uniform Vote Functions
[cols="1a,1",options="header",]
|====
| Function | Description
Expand Down Expand Up @@ -14704,7 +14704,7 @@ footnote:[{fn-half-supported}], and `double`
footnote:[{fn-double-supported}].

[[table-rotate-functions]]
.Built-in Rotation Functions for Sub-Groups
.Built-in Sub-Group Rotation Functions
[cols="1a,1",options="header",]
|====
| Function | Description
Expand Down Expand Up @@ -14748,7 +14748,7 @@ endif::cl_khr_subgroup_rotate[]


ifdef::cl_khr_subgroup_shuffle[]
==== Built-in Shuffle Functions for Sub-Groups
==== Built-in Sub-Group General Purpose Shuffle Functions

NOTE: The functionality described in this section <<unified-spec, requires>>
support for the `<<cl_khr_subgroup_shuffle>>` extension.
Expand All @@ -14765,7 +14765,7 @@ footnote:[{fn-half-supported}], and `double`
footnote:[{fn-double-supported}].

[[table-shuffle-functions]]
.Built-in Shuffle Functions for Sub-Groups
.Built-in Sub-Group General Purpose Shuffle Functions
[cols="1a,1",options="header",]
|====
| Function | Description
Expand Down Expand Up @@ -14804,7 +14804,7 @@ endif::cl_khr_subgroup_shuffle[]


ifdef::cl_khr_subgroup_shuffle_relative[]
==== Add a new Section 6.15.X - Sub-Group Relative Shuffle Built-in Functions
==== Built-in Sub-Group Relative Shuffle Functions

The table below describes specialized OpenCL C programming language built-in
functions that allow work items in a sub-group to exchange data.
Expand All @@ -14817,7 +14817,7 @@ footnote:[{fn-half-supported}], and `double`
footnote:[{fn-double-supported}].

[[table-shuffle-relative-functions]]
.Built-in Relative Shuffle Functions for Sub-Groups
.Built-in Sub-Group Relative Shuffle Functions
[cols="1a,1",options="header",]
|====
| Function | Description
Expand Down Expand Up @@ -14859,7 +14859,7 @@ endif::cl_khr_subgroup_shuffle_relative[]


[[extended-sub-groups-mapping]]
=== Sub-Groups Function Mapping and Capabilities
==== Sub-Groups Function Mapping and Capabilities

This section describes a possible mapping between OpenCL built-in sub-group functions
and SPIR-V instructions and required SPIR-V capabilities.
Expand Down
Loading

0 comments on commit 5459cef

Please sign in to comment.