| // RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -target-cpu gfx906 \ | 
 | // RUN:   -aux-triple x86_64-unknown-gnu-linux -fcuda-is-device \ | 
 | // RUN:   -emit-llvm -o - -x hip %s 2>&1 | FileCheck %s | 
 |  | 
 | // RUN: %clang_cc1 -triple nvptx \ | 
 | // RUN:   -aux-triple x86_64-unknown-gnu-linux -fcuda-is-device \ | 
 | // RUN:   -emit-llvm -o - %s 2>&1 | FileCheck %s | 
 |  | 
 | // CHECK: @_ZN15infinity_helperIeE5valueE = {{.*}} double 0x47EFFFFFD586B834,{{.*}} align 8 | 
 | // CHECK: @size = {{.*}} i32 8 | 
 |  | 
 | #include "Inputs/cuda.h" | 
 |  | 
 | template <class> struct infinity_helper {}; | 
 | template <> struct infinity_helper<long double> { static constexpr long double value = 3.4028234e38L; }; | 
 | constexpr long double infinity_helper<long double>::value; | 
 | __device__ int size = sizeof(long double); |