From 1f44ef9ce2e6cee4f71b044ffe0b01cd37603790 Mon Sep 17 00:00:00 2001 From: Mikolaj Konarski Date: Thu, 25 Dec 2025 23:45:41 +0100 Subject: Add pragmas to functions that -fprof-late-overloaded-calls reports as breaking the chain of specialization (but it's currently broken, so these may be false positives, but these pragmas may be handy in the future anyway and they can't do much harm in theory and in practice they are right now neutral performance-wise). --- src/Data/Array/XArray.hs | 1 + 1 file changed, 1 insertion(+) (limited to 'src/Data/Array/XArray.hs') diff --git a/src/Data/Array/XArray.hs b/src/Data/Array/XArray.hs index e8039f6..3f23478 100644 --- a/src/Data/Array/XArray.hs +++ b/src/Data/Array/XArray.hs @@ -62,6 +62,7 @@ shape = \ssh (XArray arr) -> go ssh (S.shapeL arr) go (n :!% ssh) (i : l) = fromSMayNat (\_ -> SUnknown i) SKnown n :$% go ssh l go _ _ = error "Invalid shapeL" +{-# INLINEABLE fromVector #-} fromVector :: forall sh a. Storable a => IShX sh -> VS.Vector a -> XArray sh a fromVector sh v | Dict <- lemKnownNatRank sh -- cgit v1.2.3-70-g09d2