blob: 4281fce8dcefe97c71508421e7637340d568be1c [file] [log] [blame]
Peter Collingbourned5395fb2012-01-08 22:09:58 +00001<html>
2<head>
3<title>libclc</title>
4</head>
5<body>
6<h1>libclc</h1>
7<p>
Peter Collingbourne74790d62012-02-22 04:47:39 +00008libclc is an open source, BSD/MIT dual licensed
Peter Collingbourned5395fb2012-01-08 22:09:58 +00009implementation of the library requirements of the
10OpenCL C programming language, as specified by the <a
11href="http://www.khronos.org/registry/cl/specs/opencl-1.1.pdf">OpenCL
121.1 Specification</a>. The following sections of the specification
13impose library requirements:
14<ul>
15<li>6.1: Supported Data Types
16<li>6.2.3: Explicit Conversions
17<li>6.2.4.2: Reinterpreting Types Using as_type() and as_typen()
18<li>6.9: Preprocessor Directives and Macros
19<li>6.11: Built-in Functions
20<li>9.3: Double Precision Floating-Point
21<li>9.4: 64-bit Atomics
22<li>9.5: Writing to 3D image memory objects
23<li>9.6: Half Precision Floating-Point
24</ul>
25</p>
26
27<p>
28libclc is intended to be used with the <a href="http://clang.llvm.org/">Clang</a>
29compiler's OpenCL frontend.
30</p>
31
32<p>
33libclc is designed to be portable and extensible. To this end,
34it provides generic implementations of most library requirements,
35allowing the target to override the generic implementation at the
36granularity of individual functions.
37</p>
38
39<p>
Matt Arsenaultd4cd67a2016-02-13 01:02:06 +000040libclc currently supports the AMDGCN, and R600 and NVPTX targets, but
41support for more targets is welcome.
Peter Collingbourned5395fb2012-01-08 22:09:58 +000042</p>
43
44<h2>Download</h2>
45
Peter Collingbournebcd9a7d2012-02-20 01:32:12 +000046<tt>svn checkout http://llvm.org/svn/llvm-project/libclc/trunk libclc</tt> (<a href="http://llvm.org/viewvc/llvm-project/libclc/trunk/">ViewVC</a>)
Peter Collingbourne0d0ef782012-01-08 22:31:18 +000047<br>- or -<br>
Peter Collingbournebcd9a7d2012-02-20 01:32:12 +000048<tt>git clone http://llvm.org/git/libclc.git</tt>
Peter Collingbourned5395fb2012-01-08 22:09:58 +000049
50<h2>Mailing List</h2>
51
Peter Collingbourne008ff142015-08-24 22:43:24 +000052libclc-dev@lists.llvm.org (<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/libclc-dev">subscribe/unsubscribe</a>, <a href="http://lists.llvm.org/pipermail/libclc-dev/">archives</a>)
Peter Collingbourned5395fb2012-01-08 22:09:58 +000053
54</body>
55</html>