From 46145ec1501c00ecbdca1bc9f0bca9db3a4062e7 Mon Sep 17 00:00:00 2001 From: Marc Rasi Date: Mon, 11 May 2020 06:50:58 -0700 Subject: [PATCH] [AutoDiff] make differentiable array ops inlinable --- stdlib/public/Differentiation/ArrayDifferentiation.swift | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/stdlib/public/Differentiation/ArrayDifferentiation.swift b/stdlib/public/Differentiation/ArrayDifferentiation.swift index 83de6b8d77892..cdd85bd6c1d7e 100644 --- a/stdlib/public/Differentiation/ArrayDifferentiation.swift +++ b/stdlib/public/Differentiation/ArrayDifferentiation.swift @@ -262,6 +262,7 @@ extension Array where Element: Differentiable { //===----------------------------------------------------------------------===// extension Array where Element: Differentiable { + @inlinable @differentiable(wrt: (self, initialResult)) public func differentiableReduce( _ initialResult: Result, @@ -270,7 +271,7 @@ extension Array where Element: Differentiable { reduce(initialResult, nextPartialResult) } - @usableFromInline + @inlinable @derivative(of: differentiableReduce) internal func _vjpDifferentiableReduce( _ initialResult: Result, @@ -310,6 +311,7 @@ extension Array where Element: Differentiable { } extension Array where Element: Differentiable { + @inlinable @differentiable(wrt: self) public func differentiableMap( _ body: @differentiable (Element) -> Result @@ -317,7 +319,7 @@ extension Array where Element: Differentiable { map(body) } - @usableFromInline + @inlinable @derivative(of: differentiableMap) internal func _vjpDifferentiableMap( _ body: @differentiable (Element) -> Result