diff options
| author | Pekka Jaaskelainen <pekka.jaaskelainen@tut.fi> | 2014-08-14 09:37:50 +0000 |
|---|---|---|
| committer | Pekka Jaaskelainen <pekka.jaaskelainen@tut.fi> | 2014-08-14 09:37:50 +0000 |
| commit | ab751a8f71d7dc4a463aa0bd837c59513697ed06 (patch) | |
| tree | 698010329814e22086b3281f37108ec4e5c6f606 /clang/test/CodeGen | |
| parent | cdb45fa391125685e2e17795f4fddda5a867af52 (diff) | |
| download | bcm5719-llvm-ab751a8f71d7dc4a463aa0bd837c59513697ed06.tar.gz bcm5719-llvm-ab751a8f71d7dc4a463aa0bd837c59513697ed06.zip | |
Fix a crash when compiling blocks in OpenCL with multiple
address spaces.
llvm-svn: 215629
Diffstat (limited to 'clang/test/CodeGen')
| -rw-r--r-- | clang/test/CodeGen/blocks-opencl.cl | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/clang/test/CodeGen/blocks-opencl.cl b/clang/test/CodeGen/blocks-opencl.cl new file mode 100644 index 00000000000..ab80f5eb7a2 --- /dev/null +++ b/clang/test/CodeGen/blocks-opencl.cl @@ -0,0 +1,16 @@ +// RUN: %clang_cc1 -O0 %s -ffake-address-space-map -emit-llvm -o - -fblocks -triple x86_64-unknown-unknown | FileCheck %s +// This used to crash due to trying to generate a bitcase from a cstring +// in the constant address space to i8* in AS0. + +void dummy(float (^op)(float)) +{ +} + +// CHECK: i8 addrspace(3)* getelementptr inbounds ([9 x i8] addrspace(3)* @.str, i32 0, i32 0) + +kernel void test_block() +{ + float (^X)(float) = ^(float x) { return x + 42.0f; }; + dummy(X); +} + |

