forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			YAML
		
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			YAML
		
	
	
	
| # RUN: llc -march=hexagon -run-pass simple-register-coalescing -verify-coalescing %s -o - | FileCheck %s
 | |
| #
 | |
| # Check that this doesn't crash.
 | |
| # CHECK: ENDLOOP
 | |
| 
 | |
| ---
 | |
| name:            foo
 | |
| tracksRegLiveness: true
 | |
| body: |
 | |
|   bb.0:
 | |
|     successors: %bb.1(0x40000000), %bb.2(0x40000000)
 | |
|     liveins: $r0, $r1, $r2, $v0, $v1, $v2, $v3
 | |
| 
 | |
|     %0:hvxwr = COPY $v0
 | |
|     %1:intregs = COPY $r0
 | |
|     %2:predregs = C2_cmpgtui %1, 2
 | |
|     %3:intregs = COPY $r1
 | |
|     %4:intregs = COPY $r2
 | |
|     %5:hvxvr = COPY $v1
 | |
|     %6:hvxwr = V6_vcombine $v1, $v0
 | |
|     %7:hvxqr = IMPLICIT_DEF
 | |
|     J2_loop0r %bb.1, %3, implicit-def $lc0, implicit-def $sa0, implicit-def $usr
 | |
|     J2_jumpf %2, %bb.2, implicit-def $pc
 | |
|     J2_jump %bb.1, implicit-def $pc
 | |
| 
 | |
|   bb.1:
 | |
|     successors: %bb.2(0x04000000), %bb.1(0x7c000000)
 | |
| 
 | |
|     %8:hvxwr = COPY %0
 | |
|     %9:hvxvr = V6_vL32b_ai %4, 0
 | |
|     %10:hvxvr = V6_vL32b_ai %4, 128
 | |
|     %5:hvxvr = V6_vaddwq %7, %5, %9
 | |
|     %11:hvxqr = V6_vgtuw %10, %0.vsub_lo
 | |
|     %12:hvxvr = V6_vL32b_ai %4, 256
 | |
|     %13:hvxvr = V6_vL32b_ai %4, 384
 | |
|     %5:hvxvr = V6_vaddwq %11, %5, %13
 | |
|     %7:hvxqr = V6_vgtuw %6.vsub_hi, %13
 | |
|     %0:hvxwr = COPY %8
 | |
|     %0:hvxwr = V6_vmpyhv_acc %0, %12, %12
 | |
|     %6:hvxwr = COPY %8
 | |
|     ENDLOOP0 %bb.1, implicit-def $pc, implicit-def $lc0, implicit $sa0, implicit $lc0
 | |
|     J2_jump %bb.2, implicit-def $pc
 | |
| 
 | |
|   bb.2:  
 | |
| ...
 |