I'll give that benchmark trick a try. Thanks for the feedback.
For some additional context, these structs are packed wire-line protocol structs. In reality the padding bytes are full of other fun details.
For some additional context, these structs are packed wire-line protocol structs. In reality the padding bytes are full of other fun details.
But, you are right that it probably doesn't matter. The minimal benchmarking I did convinced us that there wouldn't be much of a cost. The code that actually ended up being committed to our project has the branch.