1; RUN: llc < %s | FileCheck %s 2target datalayout = "e-p:16:8:8-i8:8:8-i16:8:8-i32:8:8-n8:16" 3target triple = "msp430-elf" 4 5define zeroext i8 @lshr8(i8 zeroext %a, i8 zeroext %cnt) nounwind readnone { 6entry: 7; CHECK: lshr8: 8; CHECK: rrc.b 9 %shr = lshr i8 %a, %cnt 10 ret i8 %shr 11} 12 13define signext i8 @ashr8(i8 signext %a, i8 zeroext %cnt) nounwind readnone { 14entry: 15; CHECK: ashr8: 16; CHECK: rra.b 17 %shr = ashr i8 %a, %cnt 18 ret i8 %shr 19} 20 21define zeroext i8 @shl8(i8 zeroext %a, i8 zeroext %cnt) nounwind readnone { 22entry: 23; CHECK: shl8 24; CHECK: rla.b 25 %shl = shl i8 %a, %cnt 26 ret i8 %shl 27} 28 29define zeroext i16 @lshr16(i16 zeroext %a, i16 zeroext %cnt) nounwind readnone { 30entry: 31; CHECK: lshr16: 32; CHECK: rrc.w 33 %shr = lshr i16 %a, %cnt 34 ret i16 %shr 35} 36 37define signext i16 @ashr16(i16 signext %a, i16 zeroext %cnt) nounwind readnone { 38entry: 39; CHECK: ashr16: 40; CHECK: rra.w 41 %shr = ashr i16 %a, %cnt 42 ret i16 %shr 43} 44 45define zeroext i16 @shl16(i16 zeroext %a, i16 zeroext %cnt) nounwind readnone { 46entry: 47; CHECK: shl16: 48; CHECK: rla.w 49 %shl = shl i16 %a, %cnt 50 ret i16 %shl 51} 52