brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.2 KiB · 6424f7b Raw
42 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc < %s -mtriple=thumbv7s | FileCheck %s3target datalayout = "e-m:o-p:32:32-f64:32:64-v64:32:64-v128:32:128-a:0:32-n32-S32"4target triple = "thumbv7s-apple-ios3.1.3"5 6define void @bfi_chain_cse_crash(ptr %0, ptr %ptr) {7; CHECK-LABEL: bfi_chain_cse_crash:8; CHECK:       @ %bb.0: @ %entry9; CHECK-NEXT:    ldrb r2, [r0]10; CHECK-NEXT:    and r3, r2, #111; CHECK-NEXT:    lsr.w r12, r2, #312; CHECK-NEXT:    bfi r3, r12, #3, #113; CHECK-NEXT:    strb r3, [r0]14; CHECK-NEXT:    and r0, r2, #415; CHECK-NEXT:    bfi r0, r12, #3, #116; CHECK-NEXT:    strb r0, [r1]17; CHECK-NEXT:    bx lr18entry:19  %1 = load i8, ptr %0, align 120  %2 = and i8 %1, 121  %3 = select i1 false, i8 %2, i8 022  %4 = and i8 %1, 423  %5 = icmp eq i8 %4, 024  %6 = zext i8 %3 to i3225  %7 = or i32 %6, 426  %8 = trunc i32 %7 to i827  %9 = select i1 %5, i8 %3, i8 %828  %10 = and i8 %1, 829  %11 = icmp eq i8 %10, 030  %12 = zext i8 %2 to i3231  %13 = or i32 %12, 832  %14 = trunc i32 %13 to i833  %15 = zext i8 %9 to i3234  %16 = or i32 %15, 835  %17 = trunc i32 %16 to i836  %18 = select i1 %11, i8 %2, i8 %1437  %19 = select i1 %11, i8 %9, i8 %1738  store i8 %18, ptr %0, align 139  store i8 %19, ptr %ptr, align 140  ret void41}42