It's possible that `pushfq`+`popfq` get turned into a `mov` from the flag register into a the output register due to microcode-level optimisations.
I've been wondering about how much instructions cost lately and would like to be able to know this without the need of asking others.