Peter Collingbourne | c5096cb | 2011-10-27 19:19:51 +0000 | [diff] [blame] | 1 | // RUN: %clang_cc1 %s -emit-llvm -o - | FileCheck %s |
| 2 | |
| 3 | typedef __attribute__(( ext_vector_type(4) )) float float4; |
| 4 | |
| 5 | float spscalardiv(float a, float b) { |
| 6 | // CHECK: @spscalardiv |
Duncan Sands | 9bb1d34 | 2012-04-14 12:37:26 +0000 | [diff] [blame] | 7 | // CHECK: fdiv{{.*}}, !fpmath ![[MD:[0-9]+]] |
Peter Collingbourne | c5096cb | 2011-10-27 19:19:51 +0000 | [diff] [blame] | 8 | return a / b; |
| 9 | } |
| 10 | |
| 11 | float4 spvectordiv(float4 a, float4 b) { |
| 12 | // CHECK: @spvectordiv |
Duncan Sands | 9bb1d34 | 2012-04-14 12:37:26 +0000 | [diff] [blame] | 13 | // CHECK: fdiv{{.*}}, !fpmath ![[MD]] |
Peter Collingbourne | c5096cb | 2011-10-27 19:19:51 +0000 | [diff] [blame] | 14 | return a / b; |
| 15 | } |
| 16 | |
| 17 | #pragma OPENCL EXTENSION cl_khr_fp64 : enable |
| 18 | |
| 19 | double dpscalardiv(double a, double b) { |
| 20 | // CHECK: @dpscalardiv |
Duncan Sands | 9bb1d34 | 2012-04-14 12:37:26 +0000 | [diff] [blame] | 21 | // CHECK-NOT: !fpmath |
Peter Collingbourne | c5096cb | 2011-10-27 19:19:51 +0000 | [diff] [blame] | 22 | return a / b; |
| 23 | } |
| 24 | |
Duncan Sands | 8250016 | 2012-04-10 08:23:07 +0000 | [diff] [blame] | 25 | // CHECK: ![[MD]] = metadata !{float 2.500000e+00} |