1258c7fa3SBenjamin Kramer; RUN: llc -march=msp430 < %s | FileCheck %s
2da0508feSAnton Korobeynikov
3da0508feSAnton Korobeynikovtarget datalayout = "e-p:16:8:8-i8:8:8-i16:8:8-i32:8:8"
4da0508feSAnton Korobeynikovtarget triple = "msp430-generic-generic"
5da0508feSAnton Korobeynikov@foo = common global i16 0, align 2
6da0508feSAnton Korobeynikov
7da0508feSAnton Korobeynikovdefine void @mov() nounwind {
8d24ab20eSStephen Lin; CHECK-LABEL: mov:
9*49045c6aSAnton Korobeynikov; CHECK: mov	#2, &foo
10da0508feSAnton Korobeynikov	store i16 2, i16 * @foo
11da0508feSAnton Korobeynikov	ret void
12da0508feSAnton Korobeynikov}
13da0508feSAnton Korobeynikov
14da0508feSAnton Korobeynikovdefine void @add() nounwind {
15d24ab20eSStephen Lin; CHECK-LABEL: add:
16*49045c6aSAnton Korobeynikov; CHECK: incd	&foo
17a79ac14fSDavid Blaikie	%1 = load i16, i16* @foo
18da0508feSAnton Korobeynikov	%2 = add i16 %1, 2
19da0508feSAnton Korobeynikov	store i16 %2, i16 * @foo
20da0508feSAnton Korobeynikov	ret void
21da0508feSAnton Korobeynikov}
22da0508feSAnton Korobeynikov
23da0508feSAnton Korobeynikovdefine void @and() nounwind {
24d24ab20eSStephen Lin; CHECK-LABEL: and:
25*49045c6aSAnton Korobeynikov; CHECK: and	#2, &foo
26a79ac14fSDavid Blaikie	%1 = load i16, i16* @foo
27da0508feSAnton Korobeynikov	%2 = and i16 %1, 2
28da0508feSAnton Korobeynikov	store i16 %2, i16 * @foo
29da0508feSAnton Korobeynikov	ret void
30da0508feSAnton Korobeynikov}
31da0508feSAnton Korobeynikov
32da0508feSAnton Korobeynikovdefine void @bis() nounwind {
33d24ab20eSStephen Lin; CHECK-LABEL: bis:
34*49045c6aSAnton Korobeynikov; CHECK: bis	#2, &foo
35a79ac14fSDavid Blaikie	%1 = load i16, i16* @foo
36da0508feSAnton Korobeynikov	%2 = or i16 %1, 2
37da0508feSAnton Korobeynikov	store i16 %2, i16 * @foo
38da0508feSAnton Korobeynikov	ret void
39da0508feSAnton Korobeynikov}
40da0508feSAnton Korobeynikov
41da0508feSAnton Korobeynikovdefine void @xor() nounwind {
42d24ab20eSStephen Lin; CHECK-LABEL: xor:
43*49045c6aSAnton Korobeynikov; CHECK: xor	#2, &foo
44a79ac14fSDavid Blaikie	%1 = load i16, i16* @foo
45da0508feSAnton Korobeynikov	%2 = xor i16 %1, 2
46da0508feSAnton Korobeynikov	store i16 %2, i16 * @foo
47da0508feSAnton Korobeynikov	ret void
48da0508feSAnton Korobeynikov}
49