[llvm-commits] [dragonegg] r166476 - /dragonegg/trunk/test/validator/c/PointerPlusExpr.c

Duncan Sands baldrick at free.fr
Tue Oct 23 02:44:08 PDT 2012


Author: baldrick
Date: Tue Oct 23 04:44:08 2012
New Revision: 166476

URL: http://llvm.org/viewvc/llvm-project?rev=166476&view=rev
Log:
Check the optimizers make nice getelementptrs out of POINTER_PLUS_EXPR.

Added:
    dragonegg/trunk/test/validator/c/PointerPlusExpr.c

Added: dragonegg/trunk/test/validator/c/PointerPlusExpr.c
URL: http://llvm.org/viewvc/llvm-project/dragonegg/trunk/test/validator/c/PointerPlusExpr.c?rev=166476&view=auto
==============================================================================
--- dragonegg/trunk/test/validator/c/PointerPlusExpr.c (added)
+++ dragonegg/trunk/test/validator/c/PointerPlusExpr.c Tue Oct 23 04:44:08 2012
@@ -0,0 +1,25 @@
+// RUN: %dragonegg -S %s -o - -O1 | FileCheck %s
+
+int foo1(int *A, int N) {
+// CHECK: @foo1
+  return A[N];
+// CHECK: getelementptr i32* %A
+}
+
+int foo2(int *A, int N) {
+// CHECK: @foo2
+  return A[2*N];
+// CHECK: getelementptr i32* %A
+}
+
+int foo3(int *A, int N) {
+// CHECK: @foo3
+  return A[3*N];
+// CHECK: getelementptr i32* %A
+}
+
+int fooM(int *A, int M, int N) {
+// CHECK: @fooM
+  return A[M*N];
+// CHECK: getelementptr i32* %A
+}





More information about the llvm-commits mailing list