James Molloy | ae5ff99 | 2016-07-05 12:37:13 +0000 | [diff] [blame] | 1 | ; RUN: llc < %s | FileCheck %s |
| 2 | |
| 3 | target datalayout = "e-m:e-p:32:32-i1:8:32-i8:8:32-i16:16:32-i64:64-v128:64:128-a:0:32-n32-S64" |
| 4 | target triple = "thumbv7--linux-gnueabihf" |
| 5 | |
| 6 | ; CHECK-LABEL: f: |
| 7 | ; CHECK: bic |
| 8 | define void @f(i32* nocapture %b, i32* nocapture %c, i32 %a) { |
| 9 | %1 = and i32 %a, -4096 |
| 10 | store i32 %1, i32* %c, align 4 |
| 11 | %2 = and i32 %a, 4095 |
| 12 | %3 = or i32 %2, 4096 |
| 13 | %4 = load i32, i32* %b, align 4 |
| 14 | %5 = add nsw i32 %4, %3 |
| 15 | store i32 %5, i32* %b, align 4 |
| 16 | ret void |
| 17 | } |