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