diff --git a/Project.toml b/Project.toml index 61ada0f837..704f6c54ae 100644 --- a/Project.toml +++ b/Project.toml @@ -17,6 +17,7 @@ Preferences = "21216c6a-2e73-6563-6e65-726566657250" Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7" Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" +Tracy = "e689c965-62c8-4b79-b2c5-8359227902fd" [weakdeps] BFloat16s = "ab4f0b2a-ad5b-11e8-123f-65d77653426b" @@ -50,6 +51,7 @@ Preferences = "1.4" SparseArrays = "1" SpecialFunctions = "1, 2" StaticArrays = "1" +Tracy = "0.1.4" julia = "1.10" [extras] diff --git a/src/compiler.jl b/src/compiler.jl index b07be0cefc..16bd541e12 100644 --- a/src/compiler.jl +++ b/src/compiler.jl @@ -1517,6 +1517,8 @@ include("rules/activityrules.jl") const DumpPreEnzyme = Ref(false) const DumpPostWrap = Ref(false) +using Tracy + function enzyme!( job::CompilerJob, mod::LLVM.Module, @@ -1644,7 +1646,7 @@ function enzyme!( TapeType = Cvoid - if mode == API.DEM_ReverseModePrimal || mode == API.DEM_ReverseModeGradient + @tracepoint "Enzyme: Create IR" if mode == API.DEM_ReverseModePrimal || mode == API.DEM_ReverseModeGradient returnUsed = !(isghostty(actualRetType) || Core.Compiler.isconstType(actualRetType)) shadowReturnUsed = returnUsed && (