diff options
Diffstat (limited to 'test/Verifier/range-1.ll')
-rw-r--r-- | test/Verifier/range-1.ll | 66 |
1 files changed, 65 insertions, 1 deletions
diff --git a/test/Verifier/range-1.ll b/test/Verifier/range-1.ll index 611933a1ec30c..b6a75d13bba09 100644 --- a/test/Verifier/range-1.ll +++ b/test/Verifier/range-1.ll @@ -1,4 +1,4 @@ -; RUN: not llvm-as < %s -o /dev/null |& FileCheck %s +; RUN: not llvm-as < %s -o /dev/null 2>&1 | FileCheck %s define void @f1(i8* %x) { entry: @@ -76,3 +76,67 @@ entry: } !8 = metadata !{i8 0, i8 0} ; CHECK: Range must not be empty! + +define i8 @f10(i8* %x) { +entry: + %y = load i8* %x, align 1, !range !9 + ret i8 %y +} +!9 = metadata !{i8 0, i8 2, i8 1, i8 3} +; CHECK: Intervals are overlapping + +define i8 @f11(i8* %x) { +entry: + %y = load i8* %x, align 1, !range !10 + ret i8 %y +} +!10 = metadata !{i8 0, i8 2, i8 2, i8 3} +; CHECK: Intervals are contiguous + +define i8 @f12(i8* %x) { +entry: + %y = load i8* %x, align 1, !range !11 + ret i8 %y +} +!11 = metadata !{i8 1, i8 2, i8 -1, i8 0} +; CHECK: Intervals are not in order + +define i8 @f13(i8* %x) { +entry: + %y = load i8* %x, align 1, !range !12 + ret i8 %y +} +!12 = metadata !{i8 1, i8 3, i8 5, i8 1} +; CHECK: Intervals are contiguous + +define i8 @f14(i8* %x) { +entry: + %y = load i8* %x, align 1, !range !13 + ret i8 %y +} +!13 = metadata !{i8 1, i8 3, i8 5, i8 2} +; CHECK: Intervals are overlapping + +define i8 @f15(i8* %x) { +entry: + %y = load i8* %x, align 1, !range !14 + ret i8 %y +} +!14 = metadata !{i8 10, i8 1, i8 12, i8 13} +; CHECK: Intervals are overlapping + +define i8 @f16(i8* %x) { +entry: + %y = load i8* %x, align 1, !range !16 + ret i8 %y +} +!16 = metadata !{i8 1, i8 3, i8 4, i8 5, i8 6, i8 2} +; CHECK: Intervals are overlapping + +define i8 @f17(i8* %x) { +entry: + %y = load i8* %x, align 1, !range !17 + ret i8 %y +} +!17 = metadata !{i8 1, i8 3, i8 4, i8 5, i8 6, i8 1} +; CHECK: Intervals are contiguous |