brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.2 KiB · c793934 Raw
59 lines · plain
1; RUN: llc -mtriple=armv7a-none-eabi %s -o -  -verify-machineinstrs | FileCheck %s2; RUN: llc -mtriple=thumbv7a-none-eabi %s -o -  -verify-machineinstrs | FileCheck %s3; RUN: llc -mtriple=thumbv7m-none-eabi %s -o -  -verify-machineinstrs | FileCheck %s4 5; Check we do not hit verifier errors from ifcvting volatile ldrd's6; CHECK: ldrdne7; CHECK: ldrdne8; CHECK: ldrdne9; CHECK: ldrdne10 11define void @c(ptr %b) noreturn nounwind {12entry:13  br label %for.cond14 15for.cond:                                         ; preds = %land.end.3, %entry16  %a.0 = phi i32 [ 0, %entry ], [ %conv2.3, %land.end.3 ]17  %tobool.not = icmp eq i32 %a.0, 018  br i1 %tobool.not, label %land.end, label %land.rhs19 20land.rhs:                                         ; preds = %for.cond21  %0 = load volatile i64, ptr %b, align 822  br label %land.end23 24land.end:                                         ; preds = %land.rhs, %for.cond25  %sub.i = add nuw nsw i32 %a.0, 6553326  %conv2 = and i32 %sub.i, 6553527  %tobool.not.1 = icmp eq i32 %conv2, 028  br i1 %tobool.not.1, label %land.end.1, label %land.rhs.129 30land.rhs.1:                                       ; preds = %land.end31  %1 = load volatile i64, ptr %b, align 832  br label %land.end.133 34land.end.1:                                       ; preds = %land.rhs.1, %land.end35  %sub.i.1 = add nuw nsw i32 %a.0, 6553036  %conv2.1 = and i32 %sub.i.1, 6553537  %tobool.not.2 = icmp eq i32 %conv2.1, 038  br i1 %tobool.not.2, label %land.end.2, label %land.rhs.239 40land.rhs.2:                                       ; preds = %land.end.141  %2 = load volatile i64, ptr %b, align 842  br label %land.end.243 44land.end.2:                                       ; preds = %land.rhs.2, %land.end.145  %sub.i.2 = add nuw nsw i32 %a.0, 6552746  %conv2.2 = and i32 %sub.i.2, 6553547  %tobool.not.3 = icmp eq i32 %conv2.2, 048  br i1 %tobool.not.3, label %land.end.3, label %land.rhs.349 50land.rhs.3:                                       ; preds = %land.end.251  %3 = load volatile i64, ptr %b, align 852  br label %land.end.353 54land.end.3:                                       ; preds = %land.rhs.3, %land.end.255  %sub.i.3 = add nuw nsw i32 %a.0, 6552456  %conv2.3 = and i32 %sub.i.3, 6553557  br label %for.cond58}59