diff options
Diffstat (limited to 'polly/test/CodeGen/loop_with_condition_nested.ll')
| -rw-r--r-- | polly/test/CodeGen/loop_with_condition_nested.ll | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/polly/test/CodeGen/loop_with_condition_nested.ll b/polly/test/CodeGen/loop_with_condition_nested.ll index 3b24dd9e0f1..f99a9c84585 100644 --- a/polly/test/CodeGen/loop_with_condition_nested.ll +++ b/polly/test/CodeGen/loop_with_condition_nested.ll @@ -1,4 +1,50 @@ ; RUN: opt %loadPolly %defaultOpts -polly-cloog -analyze %s | FileCheck %s + +;#include <string.h> +;#define N 1024 +;int A[N]; +;int B[N]; +; +;void loop_with_condition() { +; int i; +; +; __sync_synchronize(); +; for (i = 0; i < N; i++) { +; if (i <= N / 2) { +; if (i > 20) +; A[i] = 1; +; else +; A[i] = 2; +; } +; B[i] = 3; +; } +; __sync_synchronize(); +;} +; +;int main () { +; int i; +; +; memset(A, 0, sizeof(int) * N); +; memset(B, 0, sizeof(int) * N); +; +; loop_with_condition(); +; +; for (i = 0; i < N; i++) +; if (B[i] != 3) +; return 1; +; +; for (i = 0; i < N; i++) +; if (i <= N / 2 && i > 20 && A[i] != 1) +; return 1; +; else if (i > N / 2) { +; if (i <= 20 && A[i] != 2) +; return 1; +; if (i > 20 && A[i] != 0) +; return 1; +; } +; return 0; +;} + ; ModuleID = 'loop_with_condition_nested.s' target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" target triple = "x86_64-pc-linux-gnu" |

