thinking of generalizing it to be able to specify other freedoms beyond accuracy (such as that NaN's don't have to be respected). I'd like the 3.1 release (the first one with this metadata) to have the more generic name already rather than having to auto-upgrade it in 3.2. llvm-svn: 154745
26 lines
576 B
Common Lisp
26 lines
576 B
Common Lisp
// RUN: %clang_cc1 %s -emit-llvm -o - | FileCheck %s
|
|
|
|
typedef __attribute__(( ext_vector_type(4) )) float float4;
|
|
|
|
float spscalardiv(float a, float b) {
|
|
// CHECK: @spscalardiv
|
|
// CHECK: fdiv{{.*}}, !fpmath ![[MD:[0-9]+]]
|
|
return a / b;
|
|
}
|
|
|
|
float4 spvectordiv(float4 a, float4 b) {
|
|
// CHECK: @spvectordiv
|
|
// CHECK: fdiv{{.*}}, !fpmath ![[MD]]
|
|
return a / b;
|
|
}
|
|
|
|
#pragma OPENCL EXTENSION cl_khr_fp64 : enable
|
|
|
|
double dpscalardiv(double a, double b) {
|
|
// CHECK: @dpscalardiv
|
|
// CHECK-NOT: !fpmath
|
|
return a / b;
|
|
}
|
|
|
|
// CHECK: ![[MD]] = metadata !{float 2.500000e+00}
|