@@ -52,6 +52,33 @@ class FileCheckSpec : XCTestCase {
5252 } )
5353 }
5454
55+ func testCheckDAG( ) {
56+ XCTAssert ( fileCheckOutput ( withPrefixes: [ " TESTDAG " ] ) {
57+ print ( " " )
58+ // TESTDAG-DAG: add [[REG1:r[0-9]+]], r1, r2
59+ print ( " add r10, r1, r2 " )
60+ // TESTDAG-DAG: add [[REG2:r[0-9]+]], r3, r4
61+ print ( " add r11, r3, r4 " )
62+ // TESTDAG: mul r5, [[REG1]], [[REG2]]
63+ print ( " mul r5, r10, r11 " )
64+
65+ // TESTDAG-DAG: mul [[REG1:r[0-9]+]], r1, r2
66+ print ( " mul r11, r3, r4 " )
67+ // TESTDAG-DAG: mul [[REG2:r[0-9]+]], r3, r4
68+ print ( " mul r10, r1, r2 " )
69+ // TESTDAG: add r5, [[REG1]], [[REG2]]
70+ print ( " add r5, r10, r11 " )
71+
72+ // TESTDAG-DAG: add [[REG1:r[0-9]+]], r1, r2
73+ // TESTDAG-DAG: add [[REG2:r[0-9]+]], r3, r4
74+ // TESTDAG-NOT: xor
75+ // TESTDAG-DAG: mul r5, [[REG1]], [[REG2]]
76+ print ( " add r11, r3, r4 " )
77+ print ( " add r10, r1, r2 " )
78+ print ( " mul r5, r10, r11 " )
79+ } )
80+ }
81+
5582 func testImplicitCheckNot( ) {
5683 XCTAssert ( fileCheckOutput ( of: . stdout, withPrefixes: [ " CHECK-NOTCHECK " ] ) {
5784 // CHECK-NOTCHECK: error: NOTCHECK-NOT: string occurred!
0 commit comments