1. Remove `Intrinsic::dx_step ` and `Intrinsic::spv_step` 2. Remove `BI__builtin_hlsl_step` 3. Remove `BI__builtin_hlsl_step` Sema checks from `clang/lib/Sema/SemaHLSL.cpp` 4. Remove `getStepIntrinsic` from `clang/lib/CodeGen/CGHLSLRuntime.h` 5. Remove emitting intrinsic from `clang/lib/CodeGen/CGBuiltin.cpp` 6. Remove `expandStepIntrinsic` in `llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp` 7. Implement step algorithm in `hlsl_intrinsics.h` via tablegen 8. add a pattern match for step as an InstCombine in `llvm/lib/Target/SPIRV/SPIRVPreLegalizerCombiner.cpp` to be able to still emit the lerp GL extension.
Intrinsic::dx_stepandIntrinsic::spv_stepBI__builtin_hlsl_stepBI__builtin_hlsl_stepSema checks fromclang/lib/Sema/SemaHLSL.cppgetStepIntrinsicfromclang/lib/CodeGen/CGHLSLRuntime.hclang/lib/CodeGen/CGBuiltin.cppexpandStepIntrinsicinllvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpphlsl_intrinsics.hvia tablegenllvm/lib/Target/SPIRV/SPIRVPreLegalizerCombiner.cppto be able to still emit the lerp GL extension.