There's a lot more to these singletons than meets the eye.- It would seem that such usage of raw MemoryOrder in AtomicSingleton would be wrong (e.g. return to acq/rel is in order, which should not pose any performance issues on X86, as Sean mentioned).
I agree that acq/rel is the correct way to go, but it will cause performance issues with the current implementation of AtomicLoad.
