brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.5 KiB · 3ad323b Raw
54 lines · html
1<html>2<head>3<title>libclc</title>4</head>5<body>6<h1>libclc</h1>7<p>8libclc is an open source, BSD/MIT dual licensed9implementation of the library requirements of the10OpenCL C programming language, as specified by the <a11href="https://www.khronos.org/registry/OpenCL/specs/opencl-1.1.pdf">OpenCL121.1 Specification</a>.  The following sections of the specification13impose library requirements:14<ul>15<li>6.1: Supported Data Types16<li>6.2.3: Explicit Conversions17<li>6.2.4.2: Reinterpreting Types Using as_type() and as_typen()18<li>6.9: Preprocessor Directives and Macros19<li>6.11: Built-in Functions20<li>9.3: Double Precision Floating-Point21<li>9.4: 64-bit Atomics22<li>9.5: Writing to 3D image memory objects23<li>9.6: Half Precision Floating-Point24</ul>25</p>26 27<p>28libclc is intended to be used with the <a href="https://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 the36granularity of individual functions.37</p>38 39<p>40libclc currently supports the AMDGCN, and R600 and NVPTX targets, but41support for more targets is welcome.42</p>43 44<h2>Download</h2>45 46<tt>git clone https://github.com/llvm/llvm-project.git</tt> (<a href="https://github.com/llvm/llvm-project/tree/main/libclc">View sources</a>)47 48<h2>Discourse forums</h2>49 50<a href="https://discourse.llvm.org/c/runtimes/opencl/65">Runtimes - OpenCL category</a>51 52</body>53</html>54