Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions libclc/libspirv/include/libspirv/lp64_types.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,13 @@ typedef char __clc_vec4_char_t __attribute__((ext_vector_type(4)));
typedef char __clc_vec8_char_t __attribute__((ext_vector_type(8)));
typedef char __clc_vec16_char_t __attribute__((ext_vector_type(16)));

typedef signed char __clc_schar_t;
typedef signed char __clc_vec2_schar_t __attribute__((ext_vector_type(2)));
typedef signed char __clc_vec3_schar_t __attribute__((ext_vector_type(3)));
typedef signed char __clc_vec4_schar_t __attribute__((ext_vector_type(4)));
typedef signed char __clc_vec8_schar_t __attribute__((ext_vector_type(8)));
typedef signed char __clc_vec16_schar_t __attribute__((ext_vector_type(16)));

typedef char __clc_int8_t;
typedef char __clc_vec2_int8_t __attribute__((ext_vector_type(2)));
typedef char __clc_vec3_int8_t __attribute__((ext_vector_type(3)));
Expand Down
33 changes: 33 additions & 0 deletions libclc/test/binding/core/ConvertFToS_Rschar.cl
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// RUN: %clang -emit-llvm -S -o - %s | FileCheck %s

#include <libspirv/spirv_types.h>

// CHECK-NOT: declare {{.*}} @_Z
// CHECK-NOT: call {{[^ ]*}} bitcast
__attribute__((overloadable)) __clc_schar_t
test___spirv_ConvertFToS_Rschar(__clc_fp32_t args_0) {
return __spirv_ConvertFToS_Rschar(args_0);
}

#ifdef cl_khr_fp64
__attribute__((overloadable)) __clc_schar_t
test___spirv_ConvertFToS_Rschar(__clc_fp64_t args_0) {
return __spirv_ConvertFToS_Rschar(args_0);
}

#endif
#ifdef cl_khr_fp16
__attribute__((overloadable)) __clc_schar_t
test___spirv_ConvertFToS_Rschar(__clc_fp16_t args_0) {
return __spirv_ConvertFToS_Rschar(args_0);
}

#endif
33 changes: 33 additions & 0 deletions libclc/test/binding/core/ConvertFToS_Rschar2.cl
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// RUN: %clang -emit-llvm -S -o - %s | FileCheck %s

#include <libspirv/spirv_types.h>

// CHECK-NOT: declare {{.*}} @_Z
// CHECK-NOT: call {{[^ ]*}} bitcast
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2(__clc_vec2_fp32_t args_0) {
return __spirv_ConvertFToS_Rschar2(args_0);
}

#ifdef cl_khr_fp64
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2(__clc_vec2_fp64_t args_0) {
return __spirv_ConvertFToS_Rschar2(args_0);
}

#endif
#ifdef cl_khr_fp16
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2(__clc_vec2_fp16_t args_0) {
return __spirv_ConvertFToS_Rschar2(args_0);
}

#endif
33 changes: 33 additions & 0 deletions libclc/test/binding/core/ConvertFToS_Rschar2_rte.cl
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// RUN: %clang -emit-llvm -S -o - %s | FileCheck %s

#include <libspirv/spirv_types.h>

// CHECK-NOT: declare {{.*}} @_Z
// CHECK-NOT: call {{[^ ]*}} bitcast
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_rte(__clc_vec2_fp32_t args_0) {
return __spirv_ConvertFToS_Rschar2_rte(args_0);
}

#ifdef cl_khr_fp64
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_rte(__clc_vec2_fp64_t args_0) {
return __spirv_ConvertFToS_Rschar2_rte(args_0);
}

#endif
#ifdef cl_khr_fp16
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_rte(__clc_vec2_fp16_t args_0) {
return __spirv_ConvertFToS_Rschar2_rte(args_0);
}

#endif
33 changes: 33 additions & 0 deletions libclc/test/binding/core/ConvertFToS_Rschar2_rtn.cl
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// RUN: %clang -emit-llvm -S -o - %s | FileCheck %s

#include <libspirv/spirv_types.h>

// CHECK-NOT: declare {{.*}} @_Z
// CHECK-NOT: call {{[^ ]*}} bitcast
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_rtn(__clc_vec2_fp32_t args_0) {
return __spirv_ConvertFToS_Rschar2_rtn(args_0);
}

#ifdef cl_khr_fp64
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_rtn(__clc_vec2_fp64_t args_0) {
return __spirv_ConvertFToS_Rschar2_rtn(args_0);
}

#endif
#ifdef cl_khr_fp16
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_rtn(__clc_vec2_fp16_t args_0) {
return __spirv_ConvertFToS_Rschar2_rtn(args_0);
}

#endif
33 changes: 33 additions & 0 deletions libclc/test/binding/core/ConvertFToS_Rschar2_rtp.cl
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// RUN: %clang -emit-llvm -S -o - %s | FileCheck %s

#include <libspirv/spirv_types.h>

// CHECK-NOT: declare {{.*}} @_Z
// CHECK-NOT: call {{[^ ]*}} bitcast
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_rtp(__clc_vec2_fp32_t args_0) {
return __spirv_ConvertFToS_Rschar2_rtp(args_0);
}

#ifdef cl_khr_fp64
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_rtp(__clc_vec2_fp64_t args_0) {
return __spirv_ConvertFToS_Rschar2_rtp(args_0);
}

#endif
#ifdef cl_khr_fp16
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_rtp(__clc_vec2_fp16_t args_0) {
return __spirv_ConvertFToS_Rschar2_rtp(args_0);
}

#endif
33 changes: 33 additions & 0 deletions libclc/test/binding/core/ConvertFToS_Rschar2_rtz.cl
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// RUN: %clang -emit-llvm -S -o - %s | FileCheck %s

#include <libspirv/spirv_types.h>

// CHECK-NOT: declare {{.*}} @_Z
// CHECK-NOT: call {{[^ ]*}} bitcast
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_rtz(__clc_vec2_fp32_t args_0) {
return __spirv_ConvertFToS_Rschar2_rtz(args_0);
}

#ifdef cl_khr_fp64
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_rtz(__clc_vec2_fp64_t args_0) {
return __spirv_ConvertFToS_Rschar2_rtz(args_0);
}

#endif
#ifdef cl_khr_fp16
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_rtz(__clc_vec2_fp16_t args_0) {
return __spirv_ConvertFToS_Rschar2_rtz(args_0);
}

#endif
33 changes: 33 additions & 0 deletions libclc/test/binding/core/ConvertFToS_Rschar2_sat.cl
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// RUN: %clang -emit-llvm -S -o - %s | FileCheck %s

#include <libspirv/spirv_types.h>

// CHECK-NOT: declare {{.*}} @_Z
// CHECK-NOT: call {{[^ ]*}} bitcast
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat(__clc_vec2_fp32_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat(args_0);
}

#ifdef cl_khr_fp64
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat(__clc_vec2_fp64_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat(args_0);
}

#endif
#ifdef cl_khr_fp16
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat(__clc_vec2_fp16_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat(args_0);
}

#endif
33 changes: 33 additions & 0 deletions libclc/test/binding/core/ConvertFToS_Rschar2_sat_rte.cl
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// RUN: %clang -emit-llvm -S -o - %s | FileCheck %s

#include <libspirv/spirv_types.h>

// CHECK-NOT: declare {{.*}} @_Z
// CHECK-NOT: call {{[^ ]*}} bitcast
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat_rte(__clc_vec2_fp32_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat_rte(args_0);
}

#ifdef cl_khr_fp64
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat_rte(__clc_vec2_fp64_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat_rte(args_0);
}

#endif
#ifdef cl_khr_fp16
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat_rte(__clc_vec2_fp16_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat_rte(args_0);
}

#endif
33 changes: 33 additions & 0 deletions libclc/test/binding/core/ConvertFToS_Rschar2_sat_rtn.cl
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// RUN: %clang -emit-llvm -S -o - %s | FileCheck %s

#include <libspirv/spirv_types.h>

// CHECK-NOT: declare {{.*}} @_Z
// CHECK-NOT: call {{[^ ]*}} bitcast
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat_rtn(__clc_vec2_fp32_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat_rtn(args_0);
}

#ifdef cl_khr_fp64
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat_rtn(__clc_vec2_fp64_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat_rtn(args_0);
}

#endif
#ifdef cl_khr_fp16
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat_rtn(__clc_vec2_fp16_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat_rtn(args_0);
}

#endif
33 changes: 33 additions & 0 deletions libclc/test/binding/core/ConvertFToS_Rschar2_sat_rtp.cl
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// RUN: %clang -emit-llvm -S -o - %s | FileCheck %s

#include <libspirv/spirv_types.h>

// CHECK-NOT: declare {{.*}} @_Z
// CHECK-NOT: call {{[^ ]*}} bitcast
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat_rtp(__clc_vec2_fp32_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat_rtp(args_0);
}

#ifdef cl_khr_fp64
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat_rtp(__clc_vec2_fp64_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat_rtp(args_0);
}

#endif
#ifdef cl_khr_fp16
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat_rtp(__clc_vec2_fp16_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat_rtp(args_0);
}

#endif
33 changes: 33 additions & 0 deletions libclc/test/binding/core/ConvertFToS_Rschar2_sat_rtz.cl
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

// RUN: %clang -emit-llvm -S -o - %s | FileCheck %s

#include <libspirv/spirv_types.h>

// CHECK-NOT: declare {{.*}} @_Z
// CHECK-NOT: call {{[^ ]*}} bitcast
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat_rtz(__clc_vec2_fp32_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat_rtz(args_0);
}

#ifdef cl_khr_fp64
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat_rtz(__clc_vec2_fp64_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat_rtz(args_0);
}

#endif
#ifdef cl_khr_fp16
__attribute__((overloadable)) __clc_vec2_schar_t
test___spirv_ConvertFToS_Rschar2_sat_rtz(__clc_vec2_fp16_t args_0) {
return __spirv_ConvertFToS_Rschar2_sat_rtz(args_0);
}

#endif
Loading