title: Are function calls in Metal Shaders expensive?
body: <p>I have code that's shared between different compute shaders, located in different #include files. It ranges from custom data types to utility <strong>functions</strong>.</p>
  
  <p>I'm wondering whether these functions could become a performance issue as the project gets bigger and more of them need to be called?</p>
  
  <p>Are functions automatically inlined when appropriate?</p>