Files
clang-p2996/clang/test/CodeGenOpenCLCXX/local_addrspace_init.cl
Anastasia Stulova 88ed70e247 [OpenCL] Rename lang mode flag for C++ mode
Rename lang mode flag to -cl-std=clc++/-cl-std=CLC++
or -std=clc++/-std=CLC++.

This aligns with OpenCL C conversion and removes ambiguity
with OpenCL C++. 

Differential Revision: https://reviews.llvm.org/D65102

llvm-svn: 367008
2019-07-25 11:04:29 +00:00

21 lines
766 B
Common Lisp

// RUN: %clang_cc1 %s -triple spir -cl-std=clc++ -emit-llvm -O0 -o - | FileCheck %s
// Test that we don't initialize local address space objects.
//CHECK: @_ZZ4testE1i = internal addrspace(3) global i32 undef
//CHECK: @_ZZ4testE2ii = internal addrspace(3) global %class.C undef
class C {
int i;
};
kernel void test() {
__local int i;
__local C ii;
// FIXME: In OpenCL C we don't accept initializers for local
// address space variables. User defined initialization could
// make sense, but would it mean that all work items need to
// execute it? Potentially disallowing any initialization would
// make things easier and assingments can be used to set specific
// values. This rules should make it consistent with OpenCL C.
//__local C c();
}