Skip to content

Commit 6d15d48

Browse files
Merge pull request #3032 from JoshuaLampert/enzymecore-dep
Make EnzymeCore.jl a strong dependency of OrdinaryDiffEqCore.jl
2 parents e564600 + 4b40958 commit 6d15d48

3 files changed

Lines changed: 18 additions & 15 deletions

File tree

lib/OrdinaryDiffEqCore/Project.toml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ authors = ["ParamThakkar123 <paramthakkar864@gmail.com>"]
44
version = "3.4.1"
55

66
[deps]
7+
EnzymeCore = "f151be2c-9106-41f4-ab19-57ee4f262869"
78
SciMLOperators = "c0aeaf25-5076-4817-a8d5-81caf7dfa961"
89
SciMLStructures = "53ae85a6-f571-4167-b2af-e1d143709226"
910
Accessors = "7d9f7c33-5ae7-4f3b-8dc6-eff91059b697"
@@ -97,13 +98,11 @@ Reexport = "1.2"
9798

9899
[weakdeps]
99100
Mooncake = "da2b9cff-9c12-43a0-ae48-6db2b0edb7d6"
100-
EnzymeCore = "f151be2c-9106-41f4-ab19-57ee4f262869"
101101
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
102102

103103
[targets]
104104
test = ["DiffEqDevTools", "Random", "SafeTestsets", "SparseArrays", "Test", "Pkg"]
105105

106106
[extensions]
107-
OrdinaryDiffEqCoreEnzymeCoreExt = "EnzymeCore"
108107
OrdinaryDiffEqCoreMooncakeExt = "Mooncake"
109108
OrdinaryDiffEqCoreSparseArraysExt = "SparseArrays"

lib/OrdinaryDiffEqCore/src/OrdinaryDiffEqCore.jl

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,8 @@ using SymbolicIndexingInterface: state_values, parameter_values
9797

9898
using ConcreteStructs: @concrete
9999

100+
import EnzymeCore
101+
100102
const CompiledFloats = Union{Float32, Float64}
101103
import Preferences
102104

@@ -166,6 +168,8 @@ include("solve.jl")
166168
include("initdt.jl")
167169
include("interp_func.jl")
168170

171+
include("enzyme_rules.jl")
172+
169173
include("precompilation_setup.jl")
170174

171175
end
Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,47 @@
1-
module OrdinaryDiffEqCoreEnzymeCoreExt
2-
import OrdinaryDiffEqCore, EnzymeCore
3-
41
function EnzymeCore.EnzymeRules.inactive_noinl(
5-
::typeof(OrdinaryDiffEqCore.increment_nf!), args...
2+
::typeof(increment_nf!), args...
63
)
74
return true
85
end
6+
97
function EnzymeCore.EnzymeRules.inactive_noinl(
10-
::typeof(OrdinaryDiffEqCore.fixed_t_for_floatingpoint_error!), args...
8+
::typeof(fixed_t_for_floatingpoint_error!), args...
119
)
1210
return true
1311
end
12+
1413
function EnzymeCore.EnzymeRules.inactive_noinl(
15-
::typeof(OrdinaryDiffEqCore.increment_accept!), args...
14+
::typeof(increment_accept!), args...
1615
)
1716
return true
1817
end
18+
1919
function EnzymeCore.EnzymeRules.inactive_noinl(
20-
::typeof(OrdinaryDiffEqCore.increment_reject!), args...
20+
::typeof(increment_reject!), args...
2121
)
2222
return true
2323
end
24+
2425
function EnzymeCore.EnzymeRules.inactive_noinl(
25-
::typeof(OrdinaryDiffEqCore.check_error!), args...
26+
::typeof(check_error!), args...
2627
)
2728
return true
2829
end
30+
2931
function EnzymeCore.EnzymeRules.inactive_noinl(
30-
::typeof(OrdinaryDiffEqCore.log_step!), args...
32+
::typeof(log_step!), args...
3133
)
3234
return true
3335
end
3436

3537
function EnzymeCore.EnzymeRules.inactive_noinl(
36-
::typeof(OrdinaryDiffEqCore.final_progress), args...
38+
::typeof(final_progress), args...
3739
)
3840
return true
3941
end
4042

4143
function EnzymeCore.EnzymeRules.inactive_noinl(
42-
::typeof(OrdinaryDiffEqCore.ode_determine_initdt), args...
44+
::typeof(ode_determine_initdt), args...
4345
)
4446
return true
4547
end
46-
47-
end

0 commit comments

Comments
 (0)