1*9880d681SAndroid Build Coastguard Worker; RUN: llc -march=bpfel -show-mc-encoding < %s | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Workerdefine i8 @mov(i8 %a, i8 %b) nounwind { 4*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: mov: 5*9880d681SAndroid Build Coastguard Worker; CHECK: mov r0, r2 # encoding: [0xbf,0x20,0x00,0x00,0x00,0x00,0x00,0x00] 6*9880d681SAndroid Build Coastguard Worker; CHECK: ret # encoding: [0x95,0x00,0x00,0x00,0x00,0x00,0x00,0x00] 7*9880d681SAndroid Build Coastguard Worker ret i8 %b 8*9880d681SAndroid Build Coastguard Worker} 9*9880d681SAndroid Build Coastguard Worker 10*9880d681SAndroid Build Coastguard Workerdefine i8 @add(i8 %a, i8 %b) nounwind { 11*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: add: 12*9880d681SAndroid Build Coastguard Worker; CHECK: add r1, r2 # encoding: [0x0f,0x21,0x00,0x00,0x00,0x00,0x00,0x00] 13*9880d681SAndroid Build Coastguard Worker; CHECK: mov r0, r1 # encoding: [0xbf,0x10,0x00,0x00,0x00,0x00,0x00,0x00] 14*9880d681SAndroid Build Coastguard Worker %1 = add i8 %a, %b 15*9880d681SAndroid Build Coastguard Worker ret i8 %1 16*9880d681SAndroid Build Coastguard Worker} 17*9880d681SAndroid Build Coastguard Worker 18*9880d681SAndroid Build Coastguard Workerdefine i8 @and(i8 %a, i8 %b) nounwind { 19*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: and: 20*9880d681SAndroid Build Coastguard Worker; CHECK: and r1, r2 # encoding: [0x5f,0x21,0x00,0x00,0x00,0x00,0x00,0x00] 21*9880d681SAndroid Build Coastguard Worker %1 = and i8 %a, %b 22*9880d681SAndroid Build Coastguard Worker ret i8 %1 23*9880d681SAndroid Build Coastguard Worker} 24*9880d681SAndroid Build Coastguard Worker 25*9880d681SAndroid Build Coastguard Workerdefine i8 @bis(i8 %a, i8 %b) nounwind { 26*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: bis: 27*9880d681SAndroid Build Coastguard Worker; CHECK: or r1, r2 # encoding: [0x4f,0x21,0x00,0x00,0x00,0x00,0x00,0x00] 28*9880d681SAndroid Build Coastguard Worker %1 = or i8 %a, %b 29*9880d681SAndroid Build Coastguard Worker ret i8 %1 30*9880d681SAndroid Build Coastguard Worker} 31*9880d681SAndroid Build Coastguard Worker 32*9880d681SAndroid Build Coastguard Workerdefine i8 @xorand(i8 %a, i8 %b) nounwind { 33*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: xorand: 34*9880d681SAndroid Build Coastguard Worker; CHECK: xori r2, -1 # encoding: [0xa7,0x02,0x00,0x00,0xff,0xff,0xff,0xff] 35*9880d681SAndroid Build Coastguard Worker %1 = xor i8 %b, -1 36*9880d681SAndroid Build Coastguard Worker %2 = and i8 %a, %1 37*9880d681SAndroid Build Coastguard Worker ret i8 %2 38*9880d681SAndroid Build Coastguard Worker} 39*9880d681SAndroid Build Coastguard Worker 40*9880d681SAndroid Build Coastguard Workerdefine i8 @xor(i8 %a, i8 %b) nounwind { 41*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: xor: 42*9880d681SAndroid Build Coastguard Worker; CHECK: xor r1, r2 # encoding: [0xaf,0x21,0x00,0x00,0x00,0x00,0x00,0x00] 43*9880d681SAndroid Build Coastguard Worker %1 = xor i8 %a, %b 44*9880d681SAndroid Build Coastguard Worker ret i8 %1 45*9880d681SAndroid Build Coastguard Worker} 46