xref: /minix3/external/bsd/llvm/dist/clang/test/CodeGenOpenCL/address-spaces-mangling.cl (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1*0a6a1f1dSLionel Sambuc// RUN: %clang_cc1 %s -ffake-address-space-map -faddress-space-map-mangling=yes -triple %itanium_abi_triple -emit-llvm -o - | FileCheck -check-prefix=ASMANG %s
2*0a6a1f1dSLionel Sambuc// RUN: %clang_cc1 %s -ffake-address-space-map -faddress-space-map-mangling=no -triple %itanium_abi_triple -emit-llvm -o - | FileCheck -check-prefix=NOASMANG %s
3f4a2713aSLionel Sambuc
4f4a2713aSLionel Sambuc// We can't name this f as private is equivalent to default
5f4a2713aSLionel Sambuc// no specifier given address space so we get multiple definition
6f4a2713aSLionel Sambuc// warnings, but we do want it for comparison purposes.
7f4a2713aSLionel Sambuc__attribute__((overloadable))
8f4a2713aSLionel Sambucvoid ff(int *arg) { }
9f4a2713aSLionel Sambuc// ASMANG: @_Z2ffPi
10f4a2713aSLionel Sambuc// NOASMANG: @_Z2ffPi
11f4a2713aSLionel Sambuc
12f4a2713aSLionel Sambuc__attribute__((overloadable))
13f4a2713aSLionel Sambucvoid f(private int *arg) { }
14f4a2713aSLionel Sambuc// ASMANG: @_Z1fPi
15f4a2713aSLionel Sambuc// NOASMANG: @_Z1fPi
16f4a2713aSLionel Sambuc
17f4a2713aSLionel Sambuc__attribute__((overloadable))
18f4a2713aSLionel Sambucvoid f(global int *arg) { }
19f4a2713aSLionel Sambuc// ASMANG: @_Z1fPU3AS1i
20f4a2713aSLionel Sambuc// NOASMANG: @_Z1fPU8CLglobali
21f4a2713aSLionel Sambuc
22f4a2713aSLionel Sambuc__attribute__((overloadable))
23f4a2713aSLionel Sambucvoid f(local int *arg) { }
24f4a2713aSLionel Sambuc// ASMANG: @_Z1fPU3AS2i
25f4a2713aSLionel Sambuc// NOASMANG: @_Z1fPU7CLlocali
26f4a2713aSLionel Sambuc
27f4a2713aSLionel Sambuc__attribute__((overloadable))
28f4a2713aSLionel Sambucvoid f(constant int *arg) { }
29f4a2713aSLionel Sambuc// ASMANG: @_Z1fPU3AS3i
30f4a2713aSLionel Sambuc// NOASMANG: @_Z1fPU10CLconstanti
31