comparison polly/test/CodeGen/non-affine-synthesized-in-branch.ll @ 252:1f2b6ac9f198 llvm-original

LLVM16-1
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Fri, 18 Aug 2023 09:04:13 +0900
parents c4bab56944e8
children
comparison
equal deleted inserted replaced
237:c80f45b162ad 252:1f2b6ac9f198
3 ; llvm.org/PR25412 3 ; llvm.org/PR25412
4 ; %synthgep caused %gep to be synthesized in subregion_if which was reused for 4 ; %synthgep caused %gep to be synthesized in subregion_if which was reused for
5 ; %retval in subregion_exit, even though it is not dominating subregion_exit. 5 ; %retval in subregion_exit, even though it is not dominating subregion_exit.
6 ; 6 ;
7 ; CHECK-LABEL: polly.stmt.polly.merge_new_and_old.exit: 7 ; CHECK-LABEL: polly.stmt.polly.merge_new_and_old.exit:
8 ; CHECK: %scevgep[[R1:[0-9]*]] = getelementptr %struct.hoge, %struct.hoge* %arg, i64 0, i32 2 8 ; CHECK: %scevgep[[R1:[0-9]*]] = getelementptr i8, ptr %arg, i64 16
9 ; CHECK: store double* %scevgep[[R1]], double** %gep.s2a 9 ; CHECK: store ptr %scevgep[[R1]], ptr %gep.s2a
10 ; CHECK: br label 10 ; CHECK: br label
11 11
12 %struct.hoge = type { double, double, double } 12 %struct.hoge = type { double, double, double }
13 13
14 define double @func(%struct.hoge* %arg) { 14 define double @func(ptr %arg) {
15 entry: 15 entry:
16 br label %subregion_entry 16 br label %subregion_entry
17 17
18 subregion_entry: 18 subregion_entry:
19 %gep = getelementptr inbounds %struct.hoge, %struct.hoge* %arg, i64 0, i32 2 19 %gep = getelementptr inbounds %struct.hoge, ptr %arg, i64 0, i32 2
20 %cond = fcmp ogt double undef, undef 20 %cond = fcmp ogt double undef, undef
21 br i1 %cond, label %subregion_if, label %subregion_exit 21 br i1 %cond, label %subregion_if, label %subregion_exit
22 22
23 subregion_if: 23 subregion_if:
24 %synthgep = load double, double* %gep 24 %synthgep = load double, ptr %gep
25 br label %subregion_exit 25 br label %subregion_exit
26 26
27 subregion_exit: 27 subregion_exit:
28 %retval = load double, double* %gep 28 %retval = load double, ptr %gep
29 ret double %retval 29 ret double %retval
30 } 30 }