1 ; RUN: llc -march=msp430 < %s | FileCheck %s 2 target datalayout = "e-p:16:8:8-i8:8:8-i8:8:8-i32:8:8" 3 target triple = "msp430-generic-generic" 4 5 define i8 @mov(i8 %a, i8 %b) nounwind { 6 ; CHECK-LABEL: mov: 7 ; CHECK: mov.{{[bw]}} r14, r15 8 ret i8 %b 9 } 10 11 define i8 @add(i8 %a, i8 %b) nounwind { 12 ; CHECK-LABEL: add: 13 ; CHECK: add.b 14 %1 = add i8 %a, %b 15 ret i8 %1 16 } 17 18 define i8 @and(i8 %a, i8 %b) nounwind { 19 ; CHECK-LABEL: and: 20 ; CHECK: and.w r14, r15 21 %1 = and i8 %a, %b 22 ret i8 %1 23 } 24 25 define i8 @bis(i8 %a, i8 %b) nounwind { 26 ; CHECK-LABEL: bis: 27 ; CHECK: bis.w r14, r15 28 %1 = or i8 %a, %b 29 ret i8 %1 30 } 31 32 define i8 @bic(i8 %a, i8 %b) nounwind { 33 ; CHECK-LABEL: bic: 34 ; CHECK: bic.b r14, r15 35 %1 = xor i8 %b, -1 36 %2 = and i8 %a, %1 37 ret i8 %2 38 } 39 40 define i8 @xor(i8 %a, i8 %b) nounwind { 41 ; CHECK-LABEL: xor: 42 ; CHECK: xor.w r14, r15 43 %1 = xor i8 %a, %b 44 ret i8 %1 45 } 46 47