xref: /llvm-project/llvm/test/CodeGen/DirectX/exp2_error.ll (revision 8cf85653b6f5c90b83f8a5741baad5725d6c6932)
1cdfd884bSS. Bharadwaj Yadavalli; RUN: not opt -S -dxil-op-lower -mtriple=dxil-pc-shadermodel6.3-library %s 2>&1 | FileCheck %s
254f631d1SS. Bharadwaj Yadavalli
354f631d1SS. Bharadwaj Yadavalli; DXIL operation exp2 does not support double overload type
4*8cf85653SJustin Bogner; CHECK: in function exp2_double
5*8cf85653SJustin Bogner; CHECK-SAME: Cannot create Exp2 operation: Invalid overload type
654f631d1SS. Bharadwaj Yadavalli
754f631d1SS. Bharadwaj Yadavallidefine noundef double @exp2_double(double noundef %a) #0 {
854f631d1SS. Bharadwaj Yadavallientry:
954f631d1SS. Bharadwaj Yadavalli  %a.addr = alloca double, align 8
1054f631d1SS. Bharadwaj Yadavalli  store double %a, ptr %a.addr, align 8
1154f631d1SS. Bharadwaj Yadavalli  %0 = load double, ptr %a.addr, align 8
1254f631d1SS. Bharadwaj Yadavalli  %elt.exp2 = call double @llvm.exp2.f64(double %0)
1354f631d1SS. Bharadwaj Yadavalli  ret double %elt.exp2
1454f631d1SS. Bharadwaj Yadavalli}
15