| ; RUN: opt %loadNPMPolly '-passes=polly-custom<codegen>' -polly-invariant-load-hoisting -S < %s | FileCheck %s |
| ; |
| ; https://github.com/llvm/llvm-project/issues/190459 |
| ; Avoid crash because isl_set_gist_params does not preserve single-valuedness |
| ; |
| ; CHECK: polly.split_new_and_old: |
| |
| target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" |
| |
| define i32 @func() { |
| bb: |
| br label %bb1 |
| |
| bb1: ; preds = %bb2, %bb |
| %i = phi i32 [ %i3, %bb2 ], [ 0, %bb ] |
| br label %bb4 |
| |
| bb2: ; preds = %bb4 |
| %i3 = add i32 %i, 1 |
| br label %bb1 |
| |
| bb4: ; preds = %bb4, %bb1 |
| %i5 = and i32 %i, 7 |
| %i6 = zext i32 %i5 to i64 |
| %i7 = getelementptr [8 x i8], ptr null, i64 %i6 |
| %i8 = load i8, ptr %i7, align 1 |
| br i1 false, label %bb4, label %bb2 |
| } |