diff --git a/clang/test/PCH/changed-files.c b/clang/test/PCH/changed-files.c
index dd08bddd75e7..d1b603b2f110 100644
--- a/clang/test/PCH/changed-files.c
+++ b/clang/test/PCH/changed-files.c
@@ -5,22 +5,24 @@ const char *s2 = m0;
 // FIXME: This test fails inexplicably on Windows in a manner that makes it 
 // look like standard error isn't getting flushed properly.
 
-// RUN: true
-// RUNx: echo '#define m0 ""' > %t.h
-// RUNx: %clang_cc1 -emit-pch -o %t.h.pch %t.h
-// RUNx: echo '' > %t.h
-// RUNx: not %clang_cc1 -include-pch %t.h.pch %s 2> %t.stderr
-// RUNx: grep "modified" %t.stderr
+// RUN: false
+// XFAIL: *
 
-// RUNx: echo '#define m0 000' > %t.h
-// RUNx: %clang_cc1 -emit-pch -o %t.h.pch %t.h
-// RUNx: echo '' > %t.h
-// RUNx: not %clang_cc1 -include-pch %t.h.pch %s 2> %t.stderr
-// RUNx: grep "modified" %t.stderr
+// RUN: echo '#define m0 ""' > %t.h
+// RUN: %clang_cc1 -emit-pch -o %t.h.pch %t.h
+// RUN: echo '' > %t.h
+// RUN: not %clang_cc1 -include-pch %t.h.pch %s 2> %t.stderr
+// RUN: grep "modified" %t.stderr
 
-// RUNx: echo '#define m0 000' > %t.h
-// RUNx: echo "#define m1 'abcd'" >> %t.h
-// RUNx: %clang_cc1 -emit-pch -o %t.h.pch %t.h
-// RUNx: echo '' > %t.h
-// RUNx: not %clang_cc1 -include-pch %t.h.pch %s 2> %t.stderr
-// RUNx: grep "modified" %t.stderr
+// RUN: echo '#define m0 000' > %t.h
+// RUN: %clang_cc1 -emit-pch -o %t.h.pch %t.h
+// RUN: echo '' > %t.h
+// RUN: not %clang_cc1 -include-pch %t.h.pch %s 2> %t.stderr
+// RUN: grep "modified" %t.stderr
+
+// RUN: echo '#define m0 000' > %t.h
+// RUN: echo "#define m1 'abcd'" >> %t.h
+// RUN: %clang_cc1 -emit-pch -o %t.h.pch %t.h
+// RUN: echo '' > %t.h
+// RUN: not %clang_cc1 -include-pch %t.h.pch %s 2> %t.stderr
+// RUN: grep "modified" %t.stderr