forked from OSchip/llvm-project
54 lines
1.6 KiB
HTML
54 lines
1.6 KiB
HTML
<html>
|
|
<head>
|
|
<title>libclc</title>
|
|
</head>
|
|
<body>
|
|
<h1>libclc</h1>
|
|
<p>
|
|
libclc is an open source, BSD/MIT dual licensed
|
|
implementation of the library requirements of the
|
|
OpenCL C programming language, as specified by the <a
|
|
href="https://www.khronos.org/registry/OpenCL/specs/opencl-1.1.pdf">OpenCL
|
|
1.1 Specification</a>. The following sections of the specification
|
|
impose library requirements:
|
|
<ul>
|
|
<li>6.1: Supported Data Types
|
|
<li>6.2.3: Explicit Conversions
|
|
<li>6.2.4.2: Reinterpreting Types Using as_type() and as_typen()
|
|
<li>6.9: Preprocessor Directives and Macros
|
|
<li>6.11: Built-in Functions
|
|
<li>9.3: Double Precision Floating-Point
|
|
<li>9.4: 64-bit Atomics
|
|
<li>9.5: Writing to 3D image memory objects
|
|
<li>9.6: Half Precision Floating-Point
|
|
</ul>
|
|
</p>
|
|
|
|
<p>
|
|
libclc is intended to be used with the <a href="https://clang.llvm.org/">Clang</a>
|
|
compiler's OpenCL frontend.
|
|
</p>
|
|
|
|
<p>
|
|
libclc is designed to be portable and extensible. To this end,
|
|
it provides generic implementations of most library requirements,
|
|
allowing the target to override the generic implementation at the
|
|
granularity of individual functions.
|
|
</p>
|
|
|
|
<p>
|
|
libclc currently supports the AMDGCN, and R600 and NVPTX targets, but
|
|
support for more targets is welcome.
|
|
</p>
|
|
|
|
<h2>Download</h2>
|
|
|
|
<tt>git clone https://github.com/llvm/llvm-project.git</tt> (<a href="https://github.com/llvm/llvm-project/tree/libclc">View sources</a>)
|
|
|
|
<h2>Mailing List</h2>
|
|
|
|
libclc-dev@lists.llvm.org (<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/libclc-dev">subscribe/unsubscribe</a>, <a href="https://lists.llvm.org/pipermail/libclc-dev/">archives</a>)
|
|
|
|
</body>
|
|
</html>
|