40 lines
		
	
	
		
			976 B
		
	
	
	
		
			LLVM
		
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			976 B
		
	
	
	
		
			LLVM
		
	
	
	
| ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
 | |
| ; RUN: llc < %s -verify-machineinstrs | FileCheck %s
 | |
| 
 | |
| target datalayout = "E-m:e-i64:64-n32:64-S128"
 | |
| target triple = "sparc64-unknown-linux-gnu"
 | |
| 
 | |
| define void @f(i64 %a0) align 2 {
 | |
| ; CHECK-LABEL: f:
 | |
| ; CHECK:         .cfi_startproc
 | |
| ; CHECK-NEXT:  ! %bb.0: ! %entry
 | |
| ; CHECK-NEXT:    cmp %o0, 0
 | |
| ; CHECK-NEXT:    be %xcc, .LBB0_2
 | |
| ; CHECK-NEXT:    nop
 | |
| ; CHECK-NEXT:    ba .LBB0_1
 | |
| ; CHECK-NEXT:    nop
 | |
| ; CHECK-NEXT:  .LBB0_2: ! %targetblock
 | |
| ; CHECK-NEXT:    mov %g0, %o0
 | |
| ; CHECK-NEXT:    cmp %o0, 0
 | |
| ; CHECK-NEXT:    bne .LBB0_4
 | |
| ; CHECK-NEXT:    nop
 | |
| ; CHECK-NEXT:  ! %bb.3: ! %cond.false.i83
 | |
| ; CHECK-NEXT:  .LBB0_1: ! %cond.false
 | |
| ; CHECK-NEXT:  .LBB0_4: ! %exit.i85
 | |
| entry:
 | |
|   %cmp = icmp eq i64 %a0, 0
 | |
|   br i1 %cmp, label %targetblock, label %cond.false
 | |
| 
 | |
| cond.false:
 | |
|   unreachable
 | |
| 
 | |
| targetblock:
 | |
|   br i1 undef, label %cond.false.i83, label %exit.i85
 | |
| 
 | |
| cond.false.i83:
 | |
|   unreachable
 | |
| 
 | |
| exit.i85:
 | |
|   unreachable
 | |
| }
 |