xref: /llvm-project/llvm/test/Assembler/range.ll (revision a2ce822a096517e36fbc6ac9404b0b5ef5e6a2bc)
1; RUN: llvm-as < %s | llvm-dis | FileCheck %s
2
3define i8 @neg1_zero(ptr %x) {
4; CHECK-LABEL: define i8 @neg1_zero
5; CHECK-SAME: (ptr [[X:%.*]]) {
6; CHECK-NEXT:  entry:
7; CHECK-NEXT:    [[Y:%.*]] = load i8, ptr [[X]], align 1, !range [[RNG0:![0-9]+]]
8; CHECK-NEXT:    ret i8 [[Y]]
9;
10entry:
11  %y = load i8, ptr %x, align 1, !range !0
12  ret i8 %y
13}
14
15define <2 x i8> @neg1_zero_vector(ptr %x) {
16; CHECK-LABEL: define <2 x i8> @neg1_zero_vector
17; CHECK-SAME: (ptr [[X:%.*]]) {
18; CHECK-NEXT:  entry:
19; CHECK-NEXT:    [[Y:%.*]] = load <2 x i8>, ptr [[X]], align 1, !range [[RNG0]]
20; CHECK-NEXT:    ret <2 x i8> [[Y]]
21;
22entry:
23  %y = load <2 x i8>, ptr %x, align 1, !range !0
24  ret <2 x i8> %y
25}
26
27!0 = !{i8 -1, i8 0}
28
29;.
30; CHECK: [[RNG0]] = !{i8 -1, i8 0}
31;.
32