forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			77 lines
		
	
	
		
			855 B
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			77 lines
		
	
	
		
			855 B
		
	
	
	
		
			C
		
	
	
	
| // RUN: %clang_cc1 %s -emit-llvm -o - | FileCheck %s
 | |
| 
 | |
| int bar();
 | |
| int test0() {
 | |
|   int i;
 | |
|   i = 1 + 2;
 | |
|   do {
 | |
|     i = bar();
 | |
|     i = bar();
 | |
|   } while(0);
 | |
|   return i;
 | |
| }
 | |
| 
 | |
| 
 | |
| int test1() {
 | |
|   int i;
 | |
|   i = 1 + 2;
 | |
|   do {
 | |
|     i = bar();
 | |
|     if (i == 42)
 | |
|       break;
 | |
|     i = bar();
 | |
|   } while(1);
 | |
|   return i;
 | |
| }
 | |
| 
 | |
| 
 | |
| int test2() {
 | |
|   int i;
 | |
|   i = 1 + 2;
 | |
|   do {
 | |
|     i = bar();
 | |
|     if (i == 42)
 | |
|       continue;
 | |
|     i = bar();
 | |
|   } while(1);
 | |
|   return i;
 | |
| }
 | |
| 
 | |
| 
 | |
| int test3() {
 | |
|   int i;
 | |
|   i = 1 + 2;
 | |
|   do {
 | |
|     i = bar();
 | |
|     if (i == 42)
 | |
|       break;
 | |
|   } while(0);
 | |
|   return i;
 | |
| }
 | |
| 
 | |
| 
 | |
| int test4() {
 | |
|   int i;
 | |
|   i = 1 + 2;
 | |
|   do {
 | |
|     i = bar();
 | |
|     if (i == 42)
 | |
|       continue;
 | |
|   } while(0);
 | |
|   return i;
 | |
| }
 | |
| 
 | |
| // rdar://6103124
 | |
| void test5() {
 | |
|   do { break; } while(0);
 | |
| }
 | |
| 
 | |
| // PR14191
 | |
| void test6f(void);
 | |
| void test6() {
 | |
|   do {
 | |
|   } while (test6f(), 0);
 | |
|   // CHECK: call {{.*}}void @test6f()
 | |
| }
 | |
| 
 |