@@ -66,6 +66,29 @@ include("init.jl")
66
66
include (" extension_algs.jl" )
67
67
include (" deprecated.jl" )
68
68
69
+ @generated function SciMLBase. solve! (cache:: LinearCache , alg:: AbstractFactorization ;
70
+ kwargs... )
71
+ quote
72
+ if cache. isfresh
73
+ fact = do_factorization (alg, cache. A, cache. b, cache. u)
74
+ cache. cacheval = fact
75
+ cache. isfresh = false
76
+ end
77
+ y = _ldiv! (cache. u, get_cacheval (cache, $ (Meta. quot (defaultalg_symbol (alg)))),
78
+ cache. b)
79
+
80
+ #=
81
+ retcode = if LinearAlgebra.issuccess(fact)
82
+ SciMLBase.ReturnCode.Success
83
+ else
84
+ SciMLBase.ReturnCode.Failure
85
+ end
86
+ SciMLBase.build_linear_solution(alg, y, nothing, cache; retcode = retcode)
87
+ =#
88
+ SciMLBase. build_linear_solution (alg, y, nothing , cache)
89
+ end
90
+ end
91
+
69
92
@static if INCLUDE_SPARSE
70
93
include (" factorization_sparse.jl" )
71
94
end
@@ -82,7 +105,6 @@ isopenblas() = IS_OPENBLAS[]
82
105
83
106
import PrecompileTools
84
107
85
- #=
86
108
PrecompileTools. @compile_workload begin
87
109
A = rand (4 , 4 )
88
110
b = rand (4 )
@@ -110,7 +132,6 @@ PrecompileTools.@compile_workload begin
110
132
sol = solve (prob) # in case sparspak is used as default
111
133
sol = solve (prob, SparspakFactorization ())
112
134
end
113
- =#
114
135
115
136
export LUFactorization, SVDFactorization, QRFactorization, GenericFactorization,
116
137
GenericLUFactorization, SimpleLUFactorization, RFLUFactorization,
0 commit comments