mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-31 08:16:47 +00:00 
			
		
		
		
	Upgrade to use new Tcl exec based test harness. This exposes 3 bugs that were previously not being reported: test/Transforms/GlobalDCE/2002-08-17-FunctionDGE.ll test/Transforms/GlobalOpt/memset.ll test/Transforms/IndVarsSimplify/exit_value_tests.llx git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36065 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			28 lines
		
	
	
		
			575 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			575 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
| ; RUN: llvm-upgrade < %s | llvm-as | opt -simplifycfg | llvm-dis | \
 | |
| ; RUN:   not grep {icmp eq}
 | |
| 
 | |
| ; Check that simplifycfg deletes a dead 'seteq' instruction when it
 | |
| ; folds a conditional branch into a switch instruction.
 | |
| 
 | |
| declare void %foo()
 | |
| declare void %bar()
 | |
| 
 | |
| void %testcfg(uint %V) {
 | |
| 	%C = seteq uint %V, 18
 | |
| 	%D = seteq uint %V, 180
 | |
| 	%E = or bool %C, %D
 | |
| 	br bool %E, label %L1, label %Sw
 | |
| Sw:
 | |
|        switch uint %V, label %L1 [
 | |
|               uint 15, label %L2
 | |
|               uint 16, label %L2
 | |
|         ]
 | |
| L1:
 | |
| 	call void %foo()
 | |
| 	ret void
 | |
| L2:
 | |
| 	call void %bar()
 | |
| 	ret void
 | |
| }
 | |
| 
 |