48 lines · plain
1; RUN: llc -mtriple=hexagon < %s | FileCheck %s2; REQUIRES: asserts3 4; Check that we don't crash.5; CHECK: call bar6 7target triple = "hexagon"8 9@debug = external hidden unnamed_addr global i1, align 410 11; Function Attrs: nounwind12define void @foo(i1 %cond) local_unnamed_addr #0 {13entry:14 br label %if.end515 16if.end5: ; preds = %entry17 br i1 undef, label %if.then12, label %if.end1318 19if.then12: ; preds = %if.end520 ret void21 22if.end13: ; preds = %if.end523 br label %for.cond24 25for.cond: ; preds = %if.end1326 %or.cond288 = or i1 undef, undef27 br i1 %cond, label %if.then44, label %if.end5128 29if.then44: ; preds = %for.cond30 tail call void @bar() #031 br label %if.end5132 33if.end51: ; preds = %if.then44, %for.cond34 %.b433 = load i1, ptr @debug, align 435 %or.cond290 = and i1 %or.cond288, %.b43336 br i1 %or.cond290, label %if.then55, label %if.end6337 38if.then55: ; preds = %if.end5139 unreachable40 41if.end63: ; preds = %if.end5142 unreachable43}44 45declare void @bar() local_unnamed_addr #046 47attributes #0 = { nounwind }48