brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · 94ed8eb Raw
44 lines · plain
1; RUN: opt -passes=mergefunc -S < %s | FileCheck %s2define i1 @cmp_with_range(ptr, ptr) {3  %v1 = load i8, ptr %0, !range !04  %v2 = load i8, ptr %1, !range !05  %out = icmp eq i8 %v1, %v26  ret i1 %out7}8 9define i1 @cmp_no_range(ptr, ptr) {10; CHECK-LABEL: @cmp_no_range11; CHECK-NEXT: %v1 = load i8, ptr %012; CHECK-NEXT:  %v2 = load i8, ptr %113; CHECK-NEXT:  %out = icmp eq i8 %v1, %v214; CHECK-NEXT:  ret i1 %out15  %v1 = load i8, ptr %016  %v2 = load i8, ptr %117  %out = icmp eq i8 %v1, %v218  ret i1 %out19}20 21define i1 @cmp_different_range(ptr, ptr) {22; CHECK-LABEL: @cmp_different_range23; CHECK-NEXT:  %v1 = load i8, ptr %0, align 1, !range !124; CHECK-NEXT:  %v2 = load i8, ptr %1, align 1, !range !125; CHECK-NEXT:  %out = icmp eq i8 %v1, %v226; CHECK-NEXT:  ret i1 %out27  %v1 = load i8, ptr %0, !range !128  %v2 = load i8, ptr %1, !range !129  %out = icmp eq i8 %v1, %v230  ret i1 %out31}32 33define i1 @cmp_with_same_range(ptr, ptr) {34; CHECK-LABEL: @cmp_with_same_range35; CHECK: tail call i1 @cmp_with_range36  %v1 = load i8, ptr %0, !range !037  %v2 = load i8, ptr %1, !range !038  %out = icmp eq i8 %v1, %v239  ret i1 %out40}41 42!0 = !{i8 0, i8 2}43!1 = !{i8 5, i8 7}44