Home | History | Annotate | Download | only in MSP430
      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-LABEL: mov:
      7 ; CHECK: mov.w	r14, r15
      8 	ret i16 %b
      9 }
     10 
     11 define i16 @add(i16 %a, i16 %b) nounwind {
     12 ; CHECK-LABEL: 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-LABEL: 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-LABEL: 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-LABEL: 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-LABEL: xor:
     42 ; CHECK: xor.w	r14, r15
     43 	%1 = xor i16 %a, %b
     44 	ret i16 %1
     45 }
     46