Hey fellow devs,

While implementing new PseudoOps, a couple of questions popped up:
  1. What are PseudoOps? When do we want to declare one? There doesn't seem to be any documentation around them. I only figured out that I probably want a PseudoOp by comparing to PrimOps I thought would be lowered at a similar stage (i.e. somewhere in Core or STG).
  2. Why aren't GHC.Magic.{lazy,noinline,oneShot} PseudoOps?
  3. Since we have to set all the IdInfo for `seq` and `noinline` manually, why is this incomplete? I.e., I'd expect a useful strictness signature and arity for both of these.
Thanks!
Sebastian