[flang][OpenMP] Change clause modifier representation in parser (#116656)
[llvm-project.git] / polly / test / CodeGen / non-affine-synthesized-in-branch.ll
blob292c0f2b539413ca123df960f3ad4f3e07cdee8c
1 ; RUN: opt %loadNPMPolly -polly-process-unprofitable -passes=polly-codegen -S < %s | FileCheck %s
3 ; llvm.org/PR25412
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.
7 ; CHECK-LABEL: polly.stmt.polly.merge_new_and_old.exit:
8 ; CHECK:         %scevgep[[R1:[0-9]*]] = getelementptr i8, ptr %arg, i64 16
9 ; CHECK:         store ptr %scevgep[[R1]], ptr %gep.s2a
10 ; CHECK:         br label
12 %struct.hoge = type { double, double, double }
14 define double @func(ptr %arg) {
15 entry:
16   br label %subregion_entry
18 subregion_entry:
19   %gep = getelementptr inbounds %struct.hoge, ptr %arg, i64 0, i32 2
20   %cond = fcmp ogt double undef, undef
21   br i1 %cond, label %subregion_if, label %subregion_exit
23 subregion_if:
24   %synthgep = load double, ptr %gep
25   br label %subregion_exit
27 subregion_exit:
28   %retval = load double, ptr %gep
29   ret double %retval