brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.3 KiB · 754d45f Raw
133 lines · plain
1; RUN: llc -O2 -mtriple=hexagon -mcpu=hexagonv62 < %s | FileCheck %s2; CHECK: ParseFunc:3; CHECK: r[[ARG0:[0-9]+]] = memuh(r[[ARG1:[0-9]+]]+#[[OFFSET:[0-9]+]])4; CHECK: memw(r[[ARG1]]+#[[OFFSET]]) = r[[ARG0]]5 6@.str.3 = external unnamed_addr constant [8 x i8], align 17; Function Attrs: nounwind8define void @ParseFunc() local_unnamed_addr #0 {9entry:10  %dataVar = alloca i32, align 411  %0 = load i32, ptr %dataVar, align 412  %and = and i32 %0, 6553513  store i32 %and, ptr %dataVar, align 414  %.pr = load i32, ptr %dataVar, align 415  switch i32 %.pr, label %sw.epilog [16    i32 4, label %sw.bb17    i32 5, label %sw.bb18    i32 1, label %sw.bb3919    i32 2, label %sw.bb4020    i32 3, label %sw.bb4121    i32 6, label %sw.bb4222    i32 7, label %sw.bb4323    i32 13, label %sw.bb4424    i32 0, label %sw.bb4425    i32 14, label %sw.bb4526    i32 15, label %sw.bb4627  ]28 29sw.bb:30  %cmp1.i = icmp eq i32 %.pr, 431  br label %land.rhs.i32 33land.rhs.i:34  br label %ParseFuncNext.exit.i35 36ParseFuncNext.exit.i:37  br i1 %cmp1.i, label %if.then.i, label %if.else10.i38 39if.then.i:40  call void (ptr, i32, ptr, ...) @snprintf(ptr undef, i32 undef, ptr @.str.3, i32 undef) #241  br label %if.end27.i42 43if.else10.i:44  unreachable45 46if.end27.i:47  br label %land.rhs.i48 49sw.bb39:50  unreachable51 52sw.bb40:53  unreachable54 55sw.bb41:56  unreachable57 58sw.bb42:59  %1 = load i32, ptr undef, align 460  %shr.i = lshr i32 %1, 1661  br label %while.cond.i.i62 63while.cond.i.i:64  %2 = load i8, ptr undef, align 165  switch i8 %2, label %if.then4.i [66    i8 48, label %land.end.i.i67    i8 120, label %land.end.i.i68    i8 37, label %do.body.i.i69  ]70 71land.end.i.i:72  unreachable73 74do.body.i.i:75  switch i8 undef, label %if.then4.i [76    i8 117, label %if.end40.i.i77    i8 120, label %if.end40.i.i78    i8 88, label %if.end40.i.i79    i8 100, label %if.end40.i.i80    i8 105, label %if.end40.i.i81  ]82 83if.end40.i.i:84  %trunc.i = trunc i32 %shr.i to i1685  br label %land.rhs.i12686 87if.then4.i:88  unreachable89 90land.rhs.i126:91  switch i16 %trunc.i, label %sw.epilog.i [92    i16 1, label %sw.bb.i93    i16 2, label %sw.bb12.i94    i16 4, label %sw.bb16.i95  ]96 97sw.bb.i:98  unreachable99 100sw.bb12.i:101  unreachable102 103sw.bb16.i:104  unreachable105 106sw.epilog.i:107  call void (ptr, i32, ptr, ...) @snprintf(ptr undef, i32 undef, ptr nonnull undef, i32 undef) #2108  br label %land.rhs.i126109 110sw.bb43:111  unreachable112 113sw.bb44:114  unreachable115 116sw.bb45:117  unreachable118 119sw.bb46:120  unreachable121 122sw.epilog:123  ret void124}125 126; Function Attrs: nounwind127declare void @snprintf(ptr nocapture, i32, ptr nocapture readonly, ...) local_unnamed_addr #1128 129attributes #0 = { nounwind "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="hexagonv62" "target-features"="+hvx,+hvx-length64b" "unsafe-fp-math"="false" "use-soft-float"="false" }130attributes #1 = { nounwind "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="hexagonv62" "target-features"="+hvx,+hvx-length64b" "unsafe-fp-math"="false" "use-soft-float"="false" }131attributes #2 = { nounwind }132 133