brintos

brintos / llvm-project-archived public Read only

0
0
Text · 993 B · bbbe1f1 Raw
38 lines · plain
1; RUN: opt %loadNPMPolly '-passes=polly<no-default-opts>' -polly-invariant-load-hoisting=true -S < %s | FileCheck %s2 3; CHECK: polly.start4 5;    void f(int *A) {6;      if (*A > 42)7;        *A = *A + 1;8;      else9;        *A = *A - 1;10;    }11;12target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"13 14define void @f(ptr %A) {15entry:16  br label %entry.split17 18entry.split:19  %tmp = load i32, ptr %A, align 420  %cmp = icmp sgt i32 %tmp, 4221  br i1 %cmp, label %if.then, label %if.else22 23if.then:                                          ; preds = %entry24  %tmp1 = load i32, ptr %A, align 425  %add = add nsw i32 %tmp1, 126  br label %if.end27 28if.else:                                          ; preds = %entry29  %tmp2 = load i32, ptr %A, align 430  %sub = add nsw i32 %tmp2, -131  br label %if.end32 33if.end:                                           ; preds = %if.else, %if.then34  %storemerge = phi i32 [ %sub, %if.else ], [ %add, %if.then ]35  store i32 %storemerge, ptr %A, align 436  ret void37}38