File tree Expand file tree Collapse file tree 2 files changed +38
-0
lines changed
llvm/test/Transforms/InstCombine Expand file tree Collapse file tree 2 files changed +38
-0
lines changed Original file line number Diff line number Diff line change @@ -46,3 +46,17 @@ define i64 @ptr2addr2() {
4646;
4747 ret i64 ptr toaddr (ptr inttoptr (i64 123 to ptr ) to i64 )
4848}
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 ptr toaddr (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 ptr toaddr (ptr inttoptr (i128 -1 to ptr ) to i64 )
62+ }
Original file line number Diff line number Diff line change 1+ ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 6
2+ ; RUN: opt < %s -passes=instcombine -S | FileCheck %s
3+ target datalayout = "p1:64:64:64:32"
4+
5+ define i32 @ptrtoaddr_inttoptr () {
6+ ; CHECK-LABEL: define i32 @ptrtoaddr_inttoptr() {
7+ ; CHECK-NEXT: ret i32 -1
8+ ;
9+ ret i32 ptr toaddr (ptr inttoptr (i32 -1 to ptr ) to i32 )
10+ }
11+
12+ define i32 @ptrtoaddr_inttoptr_diff_size1 () {
13+ ; CHECK-LABEL: define i32 @ptrtoaddr_inttoptr_diff_size1() {
14+ ; CHECK-NEXT: ret i32 ptrtoaddr (ptr inttoptr (i64 -1 to ptr) to i32)
15+ ;
16+ ret i32 ptr toaddr (ptr inttoptr (i64 -1 to ptr ) to i32 )
17+ }
18+
19+ define i32 @ptrtoaddr_inttoptr_diff_size2 () {
20+ ; CHECK-LABEL: define i32 @ptrtoaddr_inttoptr_diff_size2() {
21+ ; CHECK-NEXT: ret i32 ptrtoaddr (ptr inttoptr (i16 -1 to ptr) to i32)
22+ ;
23+ ret i32 ptr toaddr (ptr inttoptr (i16 -1 to ptr ) to i32 )
24+ }
You can’t perform that action at this time.
0 commit comments