16 lines · plain
1//===----------------------------------------------------------------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8 9_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE __clc_smoothstep(__CLC_GENTYPE edge0,10 __CLC_GENTYPE edge1,11 __CLC_GENTYPE x) {12 __CLC_GENTYPE t = __clc_clamp((x - edge0) / (edge1 - edge0),13 __CLC_FP_LIT(0.0), __CLC_FP_LIT(1.0));14 return t * t * (__CLC_FP_LIT(3.0) - __CLC_FP_LIT(2.0) * t);15}16