================ Comment at: lib/Headers/Intrin.h:783 @@ +782,3 @@ +__faststorefence(void) { + __asm__ volatile ("lock orq $0,(%rsp)"); +} ---------------- I think this needs to have a memory constraint to avoid reordering non-volatile loads and stores across it. http://llvm-reviews.chandlerc.com/D2600