From bf50d8f9515d6a243e14356f8d62e9fec8497b7c Mon Sep 17 00:00:00 2001 From: Anton Mitrokhin Date: Thu, 19 Mar 2015 20:30:54 +0300 Subject: [PATCH 1/3] removed 180 generic target fails (which do pass now) from 'fail_db.txt' --- fail_db.txt | 180 ---------------------------------------------------- 1 file changed, 180 deletions(-) diff --git a/fail_db.txt b/fail_db.txt index aa59e4b0..ad3abd4b 100644 --- a/fail_db.txt +++ b/fail_db.txt @@ -114,109 +114,25 @@ ./tests/reduce-equal-6.ispc compfail x86-64 generic-16 Linux LLVM 3.3 clang++3.4 -O0 * ./tests/reduce-equal-8.ispc compfail x86-64 generic-16 Linux LLVM 3.3 clang++3.4 -O0 * ./tests/masked-scatter-struct.ispc runfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O2 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O2 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O2 * -./tests/exclusive-scan-add-2.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O2 * -./tests/exclusive-scan-add-5.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O2 * -./tests/exclusive-scan-add-6.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O2 * -./tests/exclusive-scan-add-7.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O2 * -./tests/ptr-assign-lhs-math-1.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O2 * ./tests/short-vec-8.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O2 * ./tests/half-1.ispc runfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * ./tests/ptr-15.ispc runfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-add-8.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-add-9.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-and-1.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-and-2.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-or-1.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-1.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-10.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-12.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-13.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-2.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-3.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-4.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-5.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-6.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-8.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * ./tests/short-vec-8.ispc compfail x86-64 generic-4 Linux LLVM 3.4 clang++3.4 -O0 * ./tests/test-143.ispc runfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O2 * -./tests/ptr-assign-lhs-math-1.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O2 * ./tests/half-1.ispc runfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * ./tests/ptr-15.ispc runfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * ./tests/ptr-19.ispc runfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * ./tests/test-143.ispc runfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-add-8.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-add-9.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-and-1.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-and-2.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/exclusive-scan-or-1.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-1.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-10.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-12.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-13.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-2.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-3.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-4.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-5.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-6.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * -./tests/reduce-equal-8.ispc compfail x86-64 generic-16 Linux LLVM 3.4 clang++3.4 -O0 * ./tests/masked-scatter-struct.ispc runfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O2 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O2 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O2 * -./tests/exclusive-scan-add-2.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O2 * -./tests/exclusive-scan-add-5.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O2 * -./tests/exclusive-scan-add-6.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O2 * -./tests/exclusive-scan-add-7.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O2 * -./tests/ptr-assign-lhs-math-1.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O2 * ./tests/short-vec-8.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O2 * ./tests/half-1.ispc runfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * ./tests/ptr-15.ispc runfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-add-8.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-add-9.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-and-1.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-and-2.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-or-1.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-1.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-10.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-12.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-13.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-2.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-3.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-4.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-5.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-6.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-8.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * ./tests/short-vec-8.ispc compfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * ./tests/test-143.ispc runfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O2 * -./tests/ptr-assign-lhs-math-1.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O2 * ./tests/half-1.ispc runfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * ./tests/ptr-15.ispc runfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * ./tests/ptr-19.ispc runfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * ./tests/test-143.ispc runfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-add-8.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-add-9.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-and-1.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-and-2.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/exclusive-scan-or-1.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-1.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-10.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-12.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-13.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-2.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-3.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-4.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-5.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-6.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * -./tests/reduce-equal-8.ispc compfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * .\tests\foreach-double-1.ispc runfail x86 avx2-i32x8 Windows LLVM 3.5 cl -O2 * .\tests\foreach-double-1.ispc runfail x86 avx2-i32x16 Windows LLVM 3.5 cl -O2 * .\tests\foreach-double-1.ispc runfail x86 avx2-i64x4 Windows LLVM 3.5 cl -O2 * @@ -227,125 +143,29 @@ ./tests/ptr-22.ispc runfail x86-64 generic-4 Linux LLVM 3.5 clang++3.4 -O0 * ./tests/ptr-22.ispc runfail x86-64 generic-16 Linux LLVM 3.5 clang++3.4 -O0 * ./tests/masked-scatter-struct.ispc runfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O2 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O2 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O2 * -./tests/exclusive-scan-add-2.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O2 * -./tests/exclusive-scan-add-5.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O2 * -./tests/exclusive-scan-add-6.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O2 * -./tests/exclusive-scan-add-7.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O2 * -./tests/ptr-assign-lhs-math-1.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O2 * ./tests/short-vec-8.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O2 * ./tests/half-1.ispc runfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * ./tests/ptr-15.ispc runfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-add-8.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-add-9.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-and-1.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-and-2.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-or-1.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-1.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-10.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-12.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-13.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-2.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-3.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-4.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-5.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-6.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-8.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * ./tests/short-vec-8.ispc compfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * ./tests/test-143.ispc runfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O2 * -./tests/ptr-assign-lhs-math-1.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O2 * ./tests/half-1.ispc runfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * ./tests/ptr-15.ispc runfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * ./tests/ptr-19.ispc runfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * ./tests/test-143.ispc runfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-add-8.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-add-9.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-and-1.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-and-2.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-or-1.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-1.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-10.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-12.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-13.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-2.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-3.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-4.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-5.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-6.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/reduce-equal-8.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * .\tests\foreach-double-1.ispc runfail x86 avx2-i32x8 Windows LLVM 3.6 cl -O2 * .\tests\foreach-double-1.ispc runfail x86 avx2-i32x16 Windows LLVM 3.6 cl -O2 * .\tests\foreach-double-1.ispc runfail x86 avx2-i64x4 Windows LLVM 3.6 cl -O2 * ./tests/ptr-22.ispc runfail x86-64 generic-4 Linux LLVM 3.6 clang++3.4 -O0 * ./tests/ptr-22.ispc runfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O0 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O2 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O2 * -./tests/exclusive-scan-add-2.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O2 * -./tests/exclusive-scan-add-5.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O2 * -./tests/exclusive-scan-add-6.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O2 * -./tests/exclusive-scan-add-7.ispc compfail x86-64 generic-16 Linux LLVM 3.6 clang++3.4 -O2 * ./tests/masked-scatter-struct.ispc runfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/exclusive-scan-add-2.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/exclusive-scan-add-5.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/exclusive-scan-add-6.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/exclusive-scan-add-7.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/ptr-assign-lhs-math-1.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O2 * ./tests/short-vec-8.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O2 * ./tests/half-1.ispc runfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * ./tests/ptr-15.ispc runfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * ./tests/ptr-22.ispc runfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-add-8.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-add-9.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-and-1.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-and-2.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-or-1.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-1.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-10.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-12.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-13.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-2.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-3.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-4.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-5.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-6.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-8.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * ./tests/short-vec-8.ispc compfail x86-64 generic-4 Linux LLVM 3.7 clang++3.4 -O0 * ./tests/test-143.ispc runfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/exclusive-scan-add-2.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/exclusive-scan-add-5.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/exclusive-scan-add-6.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/exclusive-scan-add-7.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O2 * -./tests/ptr-assign-lhs-math-1.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O2 * ./tests/half-1.ispc runfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * ./tests/ptr-15.ispc runfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * ./tests/ptr-19.ispc runfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * ./tests/ptr-22.ispc runfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * ./tests/test-143.ispc runfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-add-1.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-add-10.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-add-8.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-add-9.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-and-1.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-and-2.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/exclusive-scan-or-1.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-1.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-10.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-12.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-13.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-2.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-3.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-4.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-5.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-6.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * -./tests/reduce-equal-8.ispc compfail x86-64 generic-16 Linux LLVM 3.7 clang++3.4 -O0 * From 55cfc6f78e567dec35665892da11db4e64cdd360 Mon Sep 17 00:00:00 2001 From: Vsevolod Livinskiy Date: Fri, 20 Mar 2015 08:48:24 +0300 Subject: [PATCH 2/3] Fix for trunk revision #232397 --- cbackend.cpp | 80 ++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 75 insertions(+), 5 deletions(-) diff --git a/cbackend.cpp b/cbackend.cpp index b641d5ad..a90f251b 100644 --- a/cbackend.cpp +++ b/cbackend.cpp @@ -65,7 +65,11 @@ #include "llvm/ADT/StringExtras.h" #include "llvm/ADT/SmallString.h" #include "llvm/ADT/STLExtras.h" -#include "llvm/Analysis/ConstantsScanner.h" +#if defined(LLVM_3_4) + #include "llvm/Support/InstIterator.h" +#else + #include "llvm/IR/InstIterator.h" +#endif #if defined(LLVM_3_2) || defined(LLVM_3_3) || defined(LLVM_3_4) || defined(LLVM_3_5) #include "llvm/Analysis/FindUsedTypes.h" #endif @@ -128,6 +132,72 @@ #undef setjmp #define snprintf _snprintf #endif +/////////////////////////////////////////////////////////////////////////////// +// This part of code was in LLVM's ConstantsScanner.h, +// but it was removed in revision #232397 + +namespace constant_scanner { +class constant_iterator : public std::iterator { + llvm::const_inst_iterator InstI; // Method instruction iterator + unsigned OpIdx; // Operand index + + bool isAtConstant() const { + assert(!InstI.atEnd() && OpIdx < InstI->getNumOperands() && + "isAtConstant called with invalid arguments!"); + return llvm::isa(InstI->getOperand(OpIdx)); + } + +public: + constant_iterator(const llvm::Function *F) : InstI(llvm::inst_begin(F)), OpIdx(0) { + // Advance to first constant... if we are not already at constant or end + if (InstI != llvm::inst_end(F) && // InstI is valid? + (InstI->getNumOperands() == 0 || !isAtConstant())) // Not at constant? + operator++(); + } + + constant_iterator(const llvm::Function *F, bool) // end ctor + : InstI(llvm::inst_end(F)), + OpIdx(0) {} + + bool operator==(const constant_iterator &x) const { + return OpIdx == x.OpIdx && InstI == x.InstI; + } + bool operator!=(const constant_iterator &x) const { return !(*this == x); } + + pointer operator*() const { + assert(isAtConstant() && "Dereferenced an iterator at the end!"); + return llvm::cast(InstI->getOperand(OpIdx)); + } + + constant_iterator &operator++() { // Preincrement implementation + ++OpIdx; + do { + unsigned NumOperands = InstI->getNumOperands(); + while (OpIdx < NumOperands && !isAtConstant()) { + ++OpIdx; + } + + if (OpIdx < NumOperands) return *this; // Found a constant! + ++InstI; + OpIdx = 0; + } while (!InstI.atEnd()); + + return *this; // At the end of the method + } +}; + +inline constant_iterator constant_begin(const llvm::Function *F) { + return constant_iterator(F); +} + +inline constant_iterator constant_end(const llvm::Function *F) { + return constant_iterator(F, true); +} + +} + +/////////////////////////////////////////////////////////////////////////////// // FIXME: namespace { @@ -2687,8 +2757,8 @@ void CWriter::printFloatingPointConstants(llvm::Function &F) { // the precision of the printed form, unless the printed form preserves // precision. // - for (llvm::constant_iterator I = constant_begin(&F), E = constant_end(&F); - I != E; ++I) + for (constant_scanner::constant_iterator I = constant_scanner::constant_begin(&F), + E = constant_scanner::constant_end(&F); I != E; ++I) printFloatingPointConstants(*I); Out << '\n'; @@ -2754,8 +2824,8 @@ void CWriter::printFloatingPointConstants(const llvm::Constant *C) { // loads to get their values, rather than tediously inserting the // individual values into the vector. void CWriter::printVectorConstants(llvm::Function &F) { - for (llvm::constant_iterator I = constant_begin(&F), E = constant_end(&F); - I != E; ++I) { + for (constant_scanner::constant_iterator I = constant_scanner::constant_begin(&F), + E = constant_scanner::constant_end(&F); I != E; ++I) { const llvm::ConstantDataVector *CDV = llvm::dyn_cast(*I); if (CDV == NULL) continue; From 637a4cc812aec0c5210973d0ffbc989b207c3a12 Mon Sep 17 00:00:00 2001 From: jbrodman Date: Fri, 20 Mar 2015 14:49:03 -0700 Subject: [PATCH 3/3] Fix to support function pointers in header file generation. --- module.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/module.cpp b/module.cpp index 3ea11e9a..0c945dba 100644 --- a/module.cpp +++ b/module.cpp @@ -1678,6 +1678,7 @@ lGetExportedTypes(const Type *type, std::vector *exportedVectorTypes) { const ArrayType *arrayType = CastType(type); const StructType *structType = CastType(type); + const FunctionType *ftype = CastType(type); if (CastType(type) != NULL) lGetExportedTypes(type->GetReferenceTarget(), exportedStructTypes, @@ -1701,7 +1702,17 @@ lGetExportedTypes(const Type *type, lAddTypeIfNew(type, exportedEnumTypes); else if (CastType(type) != NULL) lAddTypeIfNew(type, exportedVectorTypes); - else + else if (ftype != NULL) { + // Handle Return Types + lGetExportedTypes(ftype->GetReturnType(), exportedStructTypes, + exportedEnumTypes, exportedVectorTypes); + + // And now the parameter types... + for (int j = 0; j < ftype->GetNumParameters(); ++j) + lGetExportedTypes(ftype->GetParameterType(j), exportedStructTypes, + exportedEnumTypes, exportedVectorTypes); + } + else Assert(CastType(type) != NULL); }