GHC.Prim documentation should mention GHC.Exts!
I had a real headache while learning to use unboxed types yesterday because I couldn't find mention anywhere of how to *convert* between boxed and unboxed representations. (I.e. you unbox a single function and then need to call it from the larger program.)
I read the original paper that mentions the "Int#" data constructor, and eventually found some code on the web with the I# constructor that's actually in use. But I still had to dig before I could find what module it was defined in!