74 lines · plain
1; RUN: llc -mtriple=msp430 < %s | FileCheck %s2target datalayout = "e-p:16:8:8-i8:8:8-i16:8:8-i32:8:8"3target triple = "msp430-generic-generic"4 5@foo = common global i8 0, align 16@bar = common global i8 0, align 17 8define void @mov() nounwind {9; CHECK-LABEL: mov:10; CHECK: mov.b &bar, &foo11 %1 = load i8, ptr @bar12 store i8 %1, ptr @foo13 ret void14}15 16define void @add() nounwind {17; CHECK-LABEL: add:18; CHECK: add.b &bar, &foo19 %1 = load i8, ptr @bar20 %2 = load i8, ptr @foo21 %3 = add i8 %2, %122 store i8 %3, ptr @foo23 ret void24}25 26define void @and() nounwind {27; CHECK-LABEL: and:28; CHECK: and.b &bar, &foo29 %1 = load i8, ptr @bar30 %2 = load i8, ptr @foo31 %3 = and i8 %2, %132 store i8 %3, ptr @foo33 ret void34}35 36define void @bis() nounwind {37; CHECK-LABEL: bis:38; CHECK: bis.b &bar, &foo39 %1 = load i8, ptr @bar40 %2 = load i8, ptr @foo41 %3 = or i8 %2, %142 store i8 %3, ptr @foo43 ret void44}45 46define void @xor() nounwind {47; CHECK-LABEL: xor:48; CHECK: xor.b &bar, &foo49 %1 = load i8, ptr @bar50 %2 = load i8, ptr @foo51 %3 = xor i8 %2, %152 store i8 %3, ptr @foo53 ret void54}55 56define void @cmp(ptr %g, ptr %i) {57entry:58; CHECK-LABEL: cmp:59; CHECK: cmp.b 4(r12), 2(r13)60 %add.ptr = getelementptr inbounds i8, ptr %g, i16 461 %0 = load i8, ptr %add.ptr, align 162 %add.ptr1 = getelementptr inbounds i8, ptr %i, i16 263 %1 = load i8, ptr %add.ptr1, align 164 %cmp = icmp sgt i8 %0, %165 br i1 %cmp, label %if.then, label %if.end66 67if.then: ; preds = %entry68 store i8 0, ptr %g, align 269 br label %if.end70 71if.end: ; preds = %if.then, %entry72 ret void73}74