blob: 45342e2ee9b1efd2e90aba5497baac384f379bce [file] [log] [blame]
Benjamin Kramer90869452009-10-12 09:31:55 +00001; RUN: llc -march=msp430 < %s | FileCheck %s
Anton Korobeynikovaca471f2009-10-11 23:02:38 +00002target datalayout = "e-p:16:8:8-i8:8:8-i8:8:8-i32:8:8"
3target triple = "msp430-generic-generic"
4
5define i8 @mov(i8 %a, i8 %b) nounwind {
6; CHECK: mov:
7; CHECK: mov.b r14, r15
8 ret i8 %b
9}
10
11define i8 @add(i8 %a, i8 %b) nounwind {
12; CHECK: add:
Jakob Stoklund Olesen9dfb3672011-05-04 01:01:39 +000013; CHECK: add.b
Anton Korobeynikovaca471f2009-10-11 23:02:38 +000014 %1 = add i8 %a, %b
15 ret i8 %1
16}
17
18define i8 @and(i8 %a, i8 %b) nounwind {
19; CHECK: and:
20; CHECK: and.w r14, r15
21 %1 = and i8 %a, %b
22 ret i8 %1
23}
24
25define i8 @bis(i8 %a, i8 %b) nounwind {
26; CHECK: bis:
27; CHECK: bis.w r14, r15
28 %1 = or i8 %a, %b
29 ret i8 %1
30}
31
Anton Korobeynikovf0b47b72009-11-08 15:33:12 +000032define i8 @bic(i8 %a, i8 %b) nounwind {
33; CHECK: 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
Anton Korobeynikovaca471f2009-10-11 23:02:38 +000040define i8 @xor(i8 %a, i8 %b) nounwind {
41; CHECK: xor:
42; CHECK: xor.w r14, r15
43 %1 = xor i8 %a, %b
44 ret i8 %1
45}
46