Skip to content

Commit 1101f3b

Browse files
committed
move tests
1 parent d451c18 commit 1101f3b

File tree

2 files changed

+45
-32
lines changed

2 files changed

+45
-32
lines changed

llvm/test/Transforms/InstCombine/constant-expr-datalayout.ll

Lines changed: 0 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -32,31 +32,3 @@ define i64 @OpenFilter(i64 %x) {
3232
%r = zext i8 %t to i64
3333
ret i64 %r
3434
}
35-
36-
define i64 @ptr2addr1() {
37-
; CHECK-LABEL: @ptr2addr1(
38-
; CHECK-NEXT: ret i64 1
39-
;
40-
ret i64 ptrtoaddr (ptr getelementptr (i8, ptr null, i64 1) to i64)
41-
}
42-
43-
define i64 @ptr2addr2() {
44-
; CHECK-LABEL: @ptr2addr2(
45-
; CHECK-NEXT: ret i64 123
46-
;
47-
ret i64 ptrtoaddr (ptr inttoptr (i64 123 to ptr) to i64)
48-
}
49-
50-
define i64 @ptrtoaddr_diff_size1() {
51-
; CHECK-LABEL: @ptrtoaddr_diff_size1(
52-
; CHECK-NEXT: ret i64 ptrtoaddr (ptr inttoptr (i32 -1 to ptr) to i64)
53-
;
54-
ret i64 ptrtoaddr (ptr inttoptr (i32 -1 to ptr) to i64)
55-
}
56-
57-
define i64 @ptrtoaddr_diff_size2() {
58-
; CHECK-LABEL: @ptrtoaddr_diff_size2(
59-
; CHECK-NEXT: ret i64 ptrtoaddr (ptr inttoptr (i128 -1 to ptr) to i64)
60-
;
61-
ret i64 ptrtoaddr (ptr inttoptr (i128 -1 to ptr) to i64)
62-
}

llvm/test/Transforms/InstCombine/ptrtoaddr.ll

Lines changed: 45 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,24 @@
22
; RUN: opt < %s -passes=instcombine -S | FileCheck %s
33
target datalayout = "p1:64:64:64:32"
44

5-
define i64 @ptrtoaddr_inttoptr() {
6-
; CHECK-LABEL: define i64 @ptrtoaddr_inttoptr() {
7-
; CHECK-NEXT: ret i64 ptrtoaddr (ptr addrspace(1) inttoptr (i32 -1 to ptr addrspace(1)) to i64)
5+
define i32 @ptrtoaddr_inttoptr_arg(i32 %a) {
6+
; CHECK-LABEL: define i32 @ptrtoaddr_inttoptr_arg(
7+
; CHECK-SAME: i32 [[A:%.*]]) {
8+
; CHECK-NEXT: [[TMP1:%.*]] = zext i32 [[A]] to i64
9+
; CHECK-NEXT: [[TOPTR:%.*]] = inttoptr i64 [[TMP1]] to ptr addrspace(1)
10+
; CHECK-NEXT: [[TOADDR:%.*]] = ptrtoaddr ptr addrspace(1) [[TOPTR]] to i32
11+
; CHECK-NEXT: ret i32 [[TOADDR]]
812
;
9-
ret i64 ptrtoaddr (ptr addrspace(1) inttoptr (i32 -1 to ptr addrspace(1)) to i64)
13+
%toptr = inttoptr i32 %a to ptr addrspace(1)
14+
%toaddr = ptrtoaddr ptr addrspace(1) %toptr to i32
15+
ret i32 %toaddr
16+
}
17+
18+
define i32 @ptrtoaddr_inttoptr() {
19+
; CHECK-LABEL: define i32 @ptrtoaddr_inttoptr() {
20+
; CHECK-NEXT: ret i32 -1
21+
;
22+
ret i32 ptrtoaddr (ptr addrspace(1) inttoptr (i32 -1 to ptr addrspace(1)) to i32)
1023
}
1124

1225
define i32 @ptrtoaddr_inttoptr_diff_size1() {
@@ -22,3 +35,31 @@ define i32 @ptrtoaddr_inttoptr_diff_size2() {
2235
;
2336
ret i32 ptrtoaddr (ptr addrspace(1) inttoptr (i16 -1 to ptr addrspace(1)) to i32)
2437
}
38+
39+
define i64 @ptrtoaddr_inttoptr_noas1() {
40+
; CHECK-LABEL: define i64 @ptrtoaddr_inttoptr_noas1() {
41+
; CHECK-NEXT: ret i64 1
42+
;
43+
ret i64 ptrtoaddr (ptr getelementptr (i8, ptr null, i64 1) to i64)
44+
}
45+
46+
define i64 @ptr2addr2_inttoptr_noas2() {
47+
; CHECK-LABEL: define i64 @ptr2addr2_inttoptr_noas2() {
48+
; CHECK-NEXT: ret i64 123
49+
;
50+
ret i64 ptrtoaddr (ptr inttoptr (i64 123 to ptr) to i64)
51+
}
52+
53+
define i64 @ptrtoaddr_inttoptr_noas_diff_size1() {
54+
; CHECK-LABEL: define i64 @ptrtoaddr_inttoptr_noas_diff_size1() {
55+
; CHECK-NEXT: ret i64 ptrtoaddr (ptr inttoptr (i32 -1 to ptr) to i64)
56+
;
57+
ret i64 ptrtoaddr (ptr inttoptr (i32 -1 to ptr) to i64)
58+
}
59+
60+
define i64 @ptrtoaddr_inttoptr_noas_diff_size2() {
61+
; CHECK-LABEL: define i64 @ptrtoaddr_inttoptr_noas_diff_size2() {
62+
; CHECK-NEXT: ret i64 ptrtoaddr (ptr inttoptr (i128 -1 to ptr) to i64)
63+
;
64+
ret i64 ptrtoaddr (ptr inttoptr (i128 -1 to ptr) to i64)
65+
}

0 commit comments

Comments
 (0)