
This moves DXILFinalizeLinkage before the DXIL op lowering passes so that it doesn't end up internalizing any of the `dx.op.*` functions. This also exposed a bug when the pass is run on a module with intrinsics in them - marking the intrinsics as internal will fail the validator. Fixes #117761
9 lines
233 B
LLVM
9 lines
233 B
LLVM
; RUN: opt -S -dxil-finalize-linkage -verify -mtriple=dxil-unknown-shadermodel6.5-library %s
|
|
|
|
define float @f(float %f) "hlsl.export" {
|
|
%x = call float @llvm.atan.f32(float %f)
|
|
ret float %x
|
|
}
|
|
|
|
declare float @llvm.atan.f32(float)
|