• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: llc -march=msp430 < %s | FileCheck %s
2target datalayout = "e-p:16:8:8-i8:8:8-i16:8:8-i32:8:8"
3target triple = "msp430-generic-generic"
4
5define i16 @mov(i16 %a, i16 %b) nounwind {
6; CHECK: mov:
7; CHECK: mov.w	r14, r15
8	ret i16 %b
9}
10
11define 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
18define 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
25define 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
32define 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
40define 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