xref: /minix3/external/bsd/llvm/dist/clang/test/CodeGen/blocks-opencl.cl (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1*0a6a1f1dSLionel Sambuc// RUN: %clang_cc1 -O0 %s -ffake-address-space-map -emit-llvm -o - -fblocks -triple x86_64-unknown-unknown | FileCheck %s
2*0a6a1f1dSLionel Sambuc// This used to crash due to trying to generate a bitcase from a cstring
3*0a6a1f1dSLionel Sambuc// in the constant address space to i8* in AS0.
4*0a6a1f1dSLionel Sambuc
5*0a6a1f1dSLionel Sambucvoid dummy(float (^op)(float))
6*0a6a1f1dSLionel Sambuc{
7*0a6a1f1dSLionel Sambuc}
8*0a6a1f1dSLionel Sambuc
9*0a6a1f1dSLionel Sambuc// CHECK: i8 addrspace(3)* getelementptr inbounds ([9 x i8] addrspace(3)* @.str, i32 0, i32 0)
10*0a6a1f1dSLionel Sambuc
11*0a6a1f1dSLionel Sambuckernel void test_block()
12*0a6a1f1dSLionel Sambuc{
13*0a6a1f1dSLionel Sambuc  float (^X)(float) = ^(float x) { return x + 42.0f; };
14*0a6a1f1dSLionel Sambuc  dummy(X);
15*0a6a1f1dSLionel Sambuc}
16*0a6a1f1dSLionel Sambuc
17