| ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py | 
 | ; RUN: llc -verify-machineinstrs -csky-no-aliases -mattr=+e2 < %s -mtriple=csky | FileCheck %s | 
 |  | 
 | define i32 @ROTLI32(i32 %x) { | 
 | ; CHECK-LABEL: ROTLI32: | 
 | ; CHECK:       # %bb.0: # %entry | 
 | ; CHECK-NEXT:    rotli32 a0, a0, 4 | 
 | ; CHECK-NEXT:    rts16 | 
 | entry: | 
 |   %shl = shl i32 %x, 4 | 
 |   %shr = lshr i32 %x, 28 | 
 |   %or = or i32 %shl, %shr | 
 |   ret i32 %or | 
 | } | 
 |  | 
 | define i32 @ROTL32(i32 %x, i32 %y) { | 
 | ; CHECK-LABEL: ROTL32: | 
 | ; CHECK:       # %bb.0: # %entry | 
 | ; CHECK-NEXT:    andi32 a1, a1, 31 | 
 | ; CHECK-NEXT:    rotl16 a0, a1 | 
 | ; CHECK-NEXT:    rts16 | 
 | entry: | 
 |   %0 = shl i32 %x, %y | 
 |   %1 = sub i32 32, %y | 
 |   %2 = lshr i32 %x, %1 | 
 |   %3 = or i32 %2, %0 | 
 |   ret i32 %3 | 
 | } |