• Matthew Dempsky's avatar
    cmd/compile: extract inline related fields into separate Inline type · 562a1999
    Matthew Dempsky authored
    Inl, Inldcl, and InlCost are only applicable to functions with bodies
    that can be inlined, so pull them out into a separate Inline type to
    make understanding them easier.
    
    A side benefit is that we can check if a function can be inlined by
    just checking if n.Func.Inl is non-nil, which simplifies handling of
    empty function bodies.
    
    While here, remove some unnecessary Curfn twiddling, and make imported
    functions use Inl.Dcl instead of Func.Dcl for consistency for local
    functions.
    
    Passes toolstash-check.
    
    Change-Id: Ifd4a80349d85d9e8e4484952b38ec4a63182e81f
    Reviewed-on: https://go-review.googlesource.com/104756
    Run-TryBot: Matthew Dempsky <mdempsky@google.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarRobert Griesemer <gri@golang.org>
    562a1999
inl.go 31.7 KB