; RUN: llc -mtriple=arm-eabi %s -o - | FileCheck %s | |
define i32 @f1(i32 %a, i32 %b) { | |
; CHECK-LABEL: f1: | |
; CHECK: bic r0, r0, r1 | |
%tmp = xor i32 %b, 4294967295 | |
%tmp1 = and i32 %a, %tmp | |
ret i32 %tmp1 | |
} | |
define i32 @f2(i32 %a, i32 %b) { | |
; CHECK-LABEL: f2: | |
; CHECK: bic r0, r0, r1 | |
%tmp = xor i32 %b, 4294967295 | |
%tmp1 = and i32 %tmp, %a | |
ret i32 %tmp1 | |
} | |
define i32 @f3(i32 %a) { | |
; CHECK-LABEL: f3: | |
; CHECK: bic r0, r0, #255 | |
%tmp = and i32 %a, -256 | |
ret i32 %tmp | |
} |