There’s no difference in this case—looks like an oversight. “<>” is the Monoid “append” operator (e.g., concat lists, union sets, compose functions). If you look in JIT.hs[1], you’ll see that there’s an instance of Monoid that just calls “.|.” (bitwise OR):
instance Monoid ProtOption where
mempty = protNone
mappend (ProtOption a) (ProtOption b) = ProtOption (a .|. b)
[1]: https://github.com/sdiehl/tinyjit/blob/master/src/JIT.hs