blob: a17517e7d1455b3be7f292662b5a31c566689060 [file] [log] [blame]
Akira Hatanaka1bda7862012-07-16 23:56:51 +00001; RUN: llc -march=mipsel < %s
Akira Hatanaka3fef29d2012-07-11 19:32:27 +00002
Akira Hatanaka1bda7862012-07-16 23:56:51 +00003@gf0 = external global float
4@gf1 = external global float
Akira Hatanaka3fef29d2012-07-11 19:32:27 +00005@gd0 = external global double
6@gd1 = external global double
7
Akira Hatanaka1bda7862012-07-16 23:56:51 +00008define float @select_cc_f32(float %a, float %b) nounwind {
Akira Hatanaka3fef29d2012-07-11 19:32:27 +00009entry:
Akira Hatanaka1bda7862012-07-16 23:56:51 +000010 store float 0.000000e+00, float* @gf0, align 4
11 store float 1.000000e+00, float* @gf1, align 4
Akira Hatanaka3fef29d2012-07-11 19:32:27 +000012 %cmp = fcmp olt float %a, %b
13 %conv = zext i1 %cmp to i32
Akira Hatanaka1bda7862012-07-16 23:56:51 +000014 %conv1 = sitofp i32 %conv to float
15 ret float %conv1
Akira Hatanaka3fef29d2012-07-11 19:32:27 +000016}
17
18define double @select_cc_f64(double %a, double %b) nounwind {
19entry:
20 store double 0.000000e+00, double* @gd0, align 8
21 store double 1.000000e+00, double* @gd1, align 8
22 %cmp = fcmp olt double %a, %b
23 %conv = zext i1 %cmp to i32
24 %conv1 = sitofp i32 %conv to double
25 ret double %conv1
26}
27