aboutsummaryrefslogtreecommitdiff
path: root/final/Bitcode/Regression
diff options
context:
space:
mode:
Diffstat (limited to 'final/Bitcode/Regression')
-rw-r--r--final/Bitcode/Regression/CMakeLists.txt12
-rw-r--r--final/Bitcode/Regression/fft/CMakeLists.txt18
-rw-r--r--final/Bitcode/Regression/fft/driver.cpp65
-rw-r--r--final/Bitcode/Regression/fft/halide_buffer.h96
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide.bcbin0 -> 27968 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 320932 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 323208 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 447032 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 448088 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide.bcbin0 -> 27992 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 320540 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 322812 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 447228 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 448248 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide.bcbin0 -> 27976 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 533736 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 537396 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 810508 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 811696 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide.bcbin0 -> 27992 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 529060 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 532644 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 802280 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 803516 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide.bcbin0 -> 27948 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 81820 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 82444 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 78808 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 79884 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide.bcbin0 -> 27960 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 81552 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 82144 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 78500 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 79576 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide.bcbin0 -> 27948 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 112628 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 113760 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 115648 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 116744 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide.bcbin0 -> 27960 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 111804 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 112928 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 114968 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 116044 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide.bcbin0 -> 27968 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 627360 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 630800 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 925840 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 926092 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide.bcbin0 -> 27992 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 627484 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 630920 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 927176 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 927392 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide.bcbin0 -> 27976 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 1095168 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 1101284 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 1707344 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 1708472 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide.bcbin0 -> 27992 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 1087148 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 1093108 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 1692076 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 1693204 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide.bcbin0 -> 27948 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 114448 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 115164 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 123072 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 124152 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide.bcbin0 -> 27960 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 113832 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 114556 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 122452 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 123532 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide.bcbin0 -> 27956 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 176200 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 178244 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 194848 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 195896 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide.bcbin0 -> 27968 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 173984 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 176024 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 195428 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 196504 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide.bcbin0 -> 27948 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 168624 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 169572 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 217992 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 218560 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide.bcbin0 -> 27960 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 165700 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 166520 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 217272 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 217820 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide.bcbin0 -> 27956 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 258020 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 260012 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 365788 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 366404 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide.bcbin0 -> 27968 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 257832 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 259904 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 366260 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 366916 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide.bcbin0 -> 27924 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 77348 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 77940 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 71888 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 73176 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide.bcbin0 -> 27936 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 76940 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 77520 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 71280 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 72568 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide.bcbin0 -> 27924 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 109804 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 111416 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 108528 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 109816 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide.bcbin0 -> 27944 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bcbin0 -> 108320 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 109932 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bcbin0 -> 107060 bytes
-rw-r--r--final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bcbin0 -> 108348 bytes
-rw-r--r--final/Bitcode/Regression/fft/x86_17.06.19_halide_runtime.bcbin0 -> 142548 bytes
-rw-r--r--final/Bitcode/Regression/vector_widen/CMakeLists.txt14
-rw-r--r--final/Bitcode/Regression/vector_widen/driver.cpp63
-rw-r--r--final/Bitcode/Regression/vector_widen/halide_buffer.h54
-rw-r--r--final/Bitcode/Regression/vector_widen/halide_runtime.bcbin0 -> 72776 bytes
-rw-r--r--final/Bitcode/Regression/vector_widen/vector_widen.bcbin0 -> 4336 bytes
130 files changed, 322 insertions, 0 deletions
diff --git a/final/Bitcode/Regression/CMakeLists.txt b/final/Bitcode/Regression/CMakeLists.txt
new file mode 100644
index 00000000..d37f61ee
--- /dev/null
+++ b/final/Bitcode/Regression/CMakeLists.txt
@@ -0,0 +1,12 @@
+set(NO_REFERENCE_OUTPUT true)
+if(ARCH STREQUAL "x86")
+ add_subdirectory(vector_widen)
+
+ # We need at least clang 5.0 to process the bitcode here.
+ if(CMAKE_C_COMPILER_ID STREQUAL "Clang" AND
+ CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND
+ NOT CMAKE_C_COMPILER_VERSION VERSION_LESS "5.0" AND
+ NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS "5.0")
+ add_subdirectory(fft)
+ endif()
+endif()
diff --git a/final/Bitcode/Regression/fft/CMakeLists.txt b/final/Bitcode/Regression/fft/CMakeLists.txt
new file mode 100644
index 00000000..9e46cfce
--- /dev/null
+++ b/final/Bitcode/Regression/fft/CMakeLists.txt
@@ -0,0 +1,18 @@
+set(NO_REFERENCE_OUTPUT true)
+file(GLOB uosources ${CMAKE_CURRENT_SOURCE_DIR}/modules/*.bc)
+SET_SOURCE_FILES_PROPERTIES(${uosources} PROPERTIES LANGUAGE CXX)
+SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_SOURCE_DIR}/x86_17.06.19_halide_runtime.bc PROPERTIES LANGUAGE CXX)
+
+find_package(Threads)
+list(APPEND LDFLAGS ${CMAKE_THREAD_LIBS_INIT})
+foreach(lib ${CMAKE_DL_LIBS})
+ list(APPEND LDFLAGS -l${lib})
+endforeach()
+
+llvm_multisource(fft
+ ${CMAKE_CURRENT_SOURCE_DIR}/driver.cpp
+ ${CMAKE_CURRENT_SOURCE_DIR}/x86_17.06.19_halide_runtime.bc
+ ${uosources}
+)
+
+
diff --git a/final/Bitcode/Regression/fft/driver.cpp b/final/Bitcode/Regression/fft/driver.cpp
new file mode 100644
index 00000000..ea2bfd21
--- /dev/null
+++ b/final/Bitcode/Regression/fft/driver.cpp
@@ -0,0 +1,65 @@
+#include "halide_buffer.h"
+
+template<typename T>
+T rand_value() {
+ return (T)(rand() * 0.125) - 100;
+}
+
+template<typename T>
+buffer_t make_buffer(int w, int h) {
+ T *mem = new T[w*h];
+ buffer_t buf = {0};
+ buf.host = (uint8_t *)mem;
+ buf.extent[0] = w;
+ buf.extent[1] = h;
+ buf.elem_size = sizeof(T);
+ buf.stride[0] = 1;
+ buf.stride[1] = w;
+
+ for (int i = 0; i < w*h; i++) {
+ mem[i] = rand_value<T>();
+ }
+
+ return buf;
+}
+
+
+int main(int argc, char **argv) {
+ unsigned int err_code = 0;
+#if (!__has_builtin(__builtin_cpu_supports) && (defined(__i386__) || defined(__x86_64__)))
+ return err_code;
+#endif
+#if defined(__i386__) || defined(__x86_64__)
+ if (!__builtin_cpu_supports("avx")) {
+ return err_code;
+ }
+#endif
+ time_t seed;
+ if (argc > 1) {
+ seed = atoi(argv[1]);
+ }
+ else {
+ seed = time(NULL);
+ srand (seed);
+ }
+ const int W = 256, H = 256;
+ // Make some input buffers
+ buffer_t bufs[] = {
+ make_buffer<int32_t>(W, H),
+ make_buffer<int32_t>(W, H),
+ make_buffer<int32_t>(W, H)
+ };
+
+ for (int i = 0; i < 24; i++) {
+ filter f = filters[i];
+ f.fn(bufs + 0,
+ bufs + 1,
+ bufs + 2);
+ }
+
+ for (int i = 0; i < sizeof(bufs)/sizeof(buffer_t); i++) {
+ delete[] bufs[i].host;
+ }
+
+ return err_code;
+}
diff --git a/final/Bitcode/Regression/fft/halide_buffer.h b/final/Bitcode/Regression/fft/halide_buffer.h
new file mode 100644
index 00000000..a81ec7e5
--- /dev/null
+++ b/final/Bitcode/Regression/fft/halide_buffer.h
@@ -0,0 +1,96 @@
+#include <stdlib.h>
+#include <stdio.h>
+#include <time.h>
+#ifndef HALIDE_ATTRIBUTE_ALIGN
+ #ifdef _MSC_VER
+ #define HALIDE_ATTRIBUTE_ALIGN(x) __declspec(align(x))
+ #else
+ #define HALIDE_ATTRIBUTE_ALIGN(x) __attribute__((aligned(x)))
+ #endif
+#endif
+#ifndef BUFFER_T_DEFINED
+#define BUFFER_T_DEFINED
+#include <stdbool.h>
+#include <stdint.h>
+typedef struct buffer_t {
+ uint64_t dev;
+ uint8_t* host;
+ int32_t extent[4];
+ int32_t stride[4];
+ int32_t min[4];
+ int32_t elem_size;
+ HALIDE_ATTRIBUTE_ALIGN(1) bool host_dirty;
+ HALIDE_ATTRIBUTE_ALIGN(1) bool dev_dirty;
+ HALIDE_ATTRIBUTE_ALIGN(1) uint8_t _padding[10 - sizeof(void *)];
+} buffer_t;
+#endif
+struct halide_filter_metadata_t;
+#ifndef HALIDE_FUNCTION_ATTRS
+#define HALIDE_FUNCTION_ATTRS
+#endif
+#ifndef FILTER_T_DEFINED
+#define FILTER_T_DEFINED
+typedef struct filter {
+ const char *name;
+ int (*fn)(buffer_t *,
+ buffer_t *,
+ buffer_t *);
+} filter;
+#endif
+
+//int FftConvolve8x8xCHalide(struct halide_buffer_t *_input_buffer, struct halide_buffer_t *_kernel_buffer, struct halide_buffer_t *_result_buffer) HALIDE_FUNCTION_ATTRS;
+//int FftConvolve8x8xCHalide_argv(void **args) HALIDE_FUNCTION_ATTRS;
+//const struct halide_filter_metadata_t *FftConvolve64x64xRHalide_metadata() HALIDE_FUNCTION_ATTRS;
+
+int FftConvolve8x8xCHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve8x8xCZHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve8x8xRHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve8x8xRZHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve16x16xCHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve16x16xCZHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve16x16xRHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve16x16xRZHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve32x32xCHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve32x32xCZHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve32x32xRHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve32x32xRZHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve64x64xCHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve64x64xCZHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve64x64xRHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve64x64xRZHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve128x128xCHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve128x128xCZHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve128x128xRHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve128x128xRZHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve256x256xCHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve256x256xCZHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve256x256xRHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+int FftConvolve256x256xRZHalide(struct buffer_t *_input, struct buffer_t *_kernel, struct buffer_t *_result) HALIDE_FUNCTION_ATTRS;
+
+filter filters[] = {
+ {"FftConvolve8x8xCHalide",&FftConvolve8x8xCHalide},
+ {"FftConvolve8x8xCZHalide",&FftConvolve8x8xCZHalide},
+ {"FftConvolve8x8xRHalide",&FftConvolve8x8xRHalide},
+ {"FftConvolve8x8xRZHalide",&FftConvolve8x8xRZHalide},
+ {"FftConvolve16x16xCHalide",&FftConvolve16x16xCHalide},
+ {"FftConvolve16x16xCZHalide",&FftConvolve16x16xCZHalide},
+ {"FftConvolve16x16xRHalide",&FftConvolve16x16xRHalide},
+ {"FftConvolve16x16xRZHalide",&FftConvolve16x16xRZHalide},
+ {"FftConvolve32x32xCHalide",&FftConvolve32x32xCHalide},
+ {"FftConvolve32x32xCZHalide",&FftConvolve32x32xCZHalide},
+ {"FftConvolve32x32xRHalide",&FftConvolve32x32xRHalide},
+ {"FftConvolve32x32xRZHalide",&FftConvolve32x32xRZHalide},
+ {"FftConvolve64x64xCHalide",&FftConvolve64x64xCHalide},
+ {"FftConvolve64x64xCZHalide",&FftConvolve64x64xCZHalide},
+ {"FftConvolve64x64xRHalide",&FftConvolve64x64xRHalide},
+ {"FftConvolve64x64xRZHalide",&FftConvolve64x64xRZHalide},
+ {"FftConvolve128x128xCHalide",&FftConvolve128x128xCHalide},
+ {"FftConvolve128x128xCZHalide",&FftConvolve128x128xCZHalide},
+ {"FftConvolve128x128xRHalide",&FftConvolve128x128xRHalide},
+ {"FftConvolve128x128xRZHalide",&FftConvolve128x128xRZHalide},
+ {"FftConvolve256x256xCHalide",&FftConvolve256x256xCHalide},
+ {"FftConvolve256x256xCZHalide",&FftConvolve256x256xCZHalide},
+ {"FftConvolve256x256xRHalide",&FftConvolve256x256xRHalide},
+ {"FftConvolve256x256xRZHalide",&FftConvolve256x256xRZHalide},
+ {NULL, NULL}};
+
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide.bc
new file mode 100644
index 00000000..2d37937a
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..496c9b54
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..89b6f057
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..3326c08b
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..1984eb70
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide.bc
new file mode 100644
index 00000000..1ba5d1d6
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..420ac72d
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..0bdcd19d
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..d35ed46f
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..687c9bcc
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide.bc
new file mode 100644
index 00000000..7d0b11f7
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..cdf76a59
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..25beaed9
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..dab59f50
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..5dfb4279
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide.bc
new file mode 100644
index 00000000..39aa8323
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..52b06894
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..14fe7530
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..74cf61dc
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..1fb33b57
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve128x128xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide.bc
new file mode 100644
index 00000000..129d5ecf
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..3d0c40b5
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..f4acab22
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..efea1048
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..239c51c9
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide.bc
new file mode 100644
index 00000000..84ab94f1
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..7e66094c
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..02dc7108
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..f59aaa0b
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..2cee8be9
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide.bc
new file mode 100644
index 00000000..11834a45
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..ac699f1e
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..639be638
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..95491a90
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..21e5ed4a
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide.bc
new file mode 100644
index 00000000..d6784f3b
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..6dc615c5
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..c5dda43d
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..e31d87c9
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..24fcfc00
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve16x16xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide.bc
new file mode 100644
index 00000000..2c4316d2
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..726093d4
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..e4cd56d3
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..c8c90f67
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..f4eb41ac
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide.bc
new file mode 100644
index 00000000..685dfef1
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..89e28b9b
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..61cb762a
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..91e4ced3
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..a5812bbd
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide.bc
new file mode 100644
index 00000000..63547f21
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..ed3b4762
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..3143580c
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..b003bec4
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..9b516baa
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide.bc
new file mode 100644
index 00000000..9c2eb618
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..f6b38e44
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..779c0dfd
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..56643c04
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..87886afa
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve256x256xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide.bc
new file mode 100644
index 00000000..11f9bd1f
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..5accc7c1
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..ee787f67
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..cd657555
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..ab1df91b
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide.bc
new file mode 100644
index 00000000..bc622cf4
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..2f938040
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..618d9166
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..7d4dd259
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..f207cf2f
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide.bc
new file mode 100644
index 00000000..77cb9e47
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..314c522a
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..88f53f6e
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..eae73925
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..38fba52c
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide.bc
new file mode 100644
index 00000000..3d7820d8
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..3ec72839
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..3a628042
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..33490a17
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..fdd9f30e
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve32x32xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide.bc
new file mode 100644
index 00000000..4910272a
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..5156980b
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..5c0c7a4e
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..c60e7ed3
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..a916c083
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide.bc
new file mode 100644
index 00000000..98a9df8e
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..b052b78a
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..ce7db20f
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..fa43db8d
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..57260bb4
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide.bc
new file mode 100644
index 00000000..811bd1bd
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..0deef681
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..8bd30568
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..d54d4ae8
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..f658b87f
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide.bc
new file mode 100644
index 00000000..7a520ef4
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..8d048566
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..dbae0e34
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..62f384af
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..b68510fe
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve64x64xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide.bc
new file mode 100644
index 00000000..559dd902
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..9a86299b
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..b38800c8
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..c9fa71ec
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..d137076a
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide.bc
new file mode 100644
index 00000000..6c21e257
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..592ab3c5
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..63e2c376
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..b5b500d7
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..42b0ed91
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xCZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide.bc
new file mode 100644
index 00000000..9e6e7f4c
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..a73e612b
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..a420a5f2
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..ab75b30b
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..211ce772
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide.bc
new file mode 100644
index 00000000..5af6e19e
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
new file mode 100644
index 00000000..9b167335
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_avx_avx2_c_plus_plus_name_mangling_fma_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..731d50fe
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_avx_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
new file mode 100644
index 00000000..d0fd1edc
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
new file mode 100644
index 00000000..d1d47f00
--- /dev/null
+++ b/final/Bitcode/Regression/fft/modules/FftConvolve8x8xRZHalide_x86_64_linux_c_plus_plus_name_mangling_no_runtime_sse41.bc
Binary files differ
diff --git a/final/Bitcode/Regression/fft/x86_17.06.19_halide_runtime.bc b/final/Bitcode/Regression/fft/x86_17.06.19_halide_runtime.bc
new file mode 100644
index 00000000..f576ec5b
--- /dev/null
+++ b/final/Bitcode/Regression/fft/x86_17.06.19_halide_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/vector_widen/CMakeLists.txt b/final/Bitcode/Regression/vector_widen/CMakeLists.txt
new file mode 100644
index 00000000..77687175
--- /dev/null
+++ b/final/Bitcode/Regression/vector_widen/CMakeLists.txt
@@ -0,0 +1,14 @@
+SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_SOURCE_DIR}/halide_runtime.bc PROPERTIES LANGUAGE CXX)
+SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_SOURCE_DIR}/vector_widen.bc PROPERTIES LANGUAGE CXX)
+
+find_package(Threads)
+list(APPEND LDFLAGS ${CMAKE_THREAD_LIBS_INIT})
+foreach(lib ${CMAKE_DL_LIBS})
+ list(APPEND LDFLAGS -l${lib})
+endforeach()
+
+llvm_multisource(widen_bug
+ ${CMAKE_CURRENT_SOURCE_DIR}/driver.cpp
+ ${CMAKE_CURRENT_SOURCE_DIR}/halide_runtime.bc
+ ${CMAKE_CURRENT_SOURCE_DIR}/vector_widen.bc
+)
diff --git a/final/Bitcode/Regression/vector_widen/driver.cpp b/final/Bitcode/Regression/vector_widen/driver.cpp
new file mode 100644
index 00000000..76bed53e
--- /dev/null
+++ b/final/Bitcode/Regression/vector_widen/driver.cpp
@@ -0,0 +1,63 @@
+#include "halide_buffer.h"
+
+template<typename T>
+T rand_value() {
+ return (T)((T)rand() / 8) - 100;
+}
+
+template<typename T>
+buffer_t make_buffer(int w, int h) {
+ T *mem = new T[w*h];
+ buffer_t buf = {0};
+ buf.host = (uint8_t *)mem;
+ buf.extent[0] = w;
+ buf.extent[1] = h;
+ buf.elem_size = sizeof(T);
+ buf.stride[0] = 1;
+ buf.stride[1] = w;
+
+ for (int i = 0; i < w*h; i++) {
+ mem[i] = rand_value<T>();
+ }
+
+ return buf;
+}
+
+
+int main(int argc, char **argv) {
+ unsigned int err_code = 0;
+#if (!__has_builtin(__builtin_cpu_supports) && (defined(__i386__) || defined(__x86_64__)))
+ return err_code;
+#endif
+#if defined(__i386__) || defined(__x86_64__)
+ if (!__builtin_cpu_supports("avx")) {
+ return err_code;
+ }
+#endif
+ time_t seed;
+ if (argc > 1) {
+ seed = atoi(argv[1]);
+ }
+ else {
+ seed = time(NULL);
+ srand (seed);
+ }
+ const int W = 4096, H = 512;
+ // Make some input buffers
+ buffer_t bufs[] = {
+ make_buffer<uint8_t>(W, H),
+ make_buffer<int32_t>(W, H)
+ };
+
+ for (int i = 0; i < 1; i++) {
+ filter f = filters[i];
+ f.fn(bufs + 0,
+ bufs + 1);
+ }
+
+ for (int i = 0; i < sizeof(bufs)/sizeof(buffer_t); i++) {
+ delete[] bufs[i].host;
+ }
+
+ return err_code;
+}
diff --git a/final/Bitcode/Regression/vector_widen/halide_buffer.h b/final/Bitcode/Regression/vector_widen/halide_buffer.h
new file mode 100644
index 00000000..61b1c37f
--- /dev/null
+++ b/final/Bitcode/Regression/vector_widen/halide_buffer.h
@@ -0,0 +1,54 @@
+#include <stdlib.h>
+#include <stdio.h>
+#include <time.h>
+#ifndef HALIDE_ATTRIBUTE_ALIGN
+ #ifdef _MSC_VER
+ #define HALIDE_ATTRIBUTE_ALIGN(x) __declspec(align(x))
+ #else
+ #define HALIDE_ATTRIBUTE_ALIGN(x) __attribute__((aligned(x)))
+ #endif
+#endif
+#ifndef BUFFER_T_DEFINED
+#define BUFFER_T_DEFINED
+#include <stdbool.h>
+#include <stdint.h>
+typedef struct buffer_t {
+ uint64_t dev;
+ uint8_t* host;
+ int32_t extent[4];
+ int32_t stride[4];
+ int32_t min[4];
+ int32_t elem_size;
+ HALIDE_ATTRIBUTE_ALIGN(1) bool host_dirty;
+ HALIDE_ATTRIBUTE_ALIGN(1) bool dev_dirty;
+ HALIDE_ATTRIBUTE_ALIGN(1) uint8_t _padding[10 - sizeof(void *)];
+} buffer_t;
+#endif
+struct halide_filter_metadata_t;
+#ifndef HALIDE_FUNCTION_ATTRS
+#define HALIDE_FUNCTION_ATTRS
+#endif
+#ifndef FILTER_T_DEFINED
+#define FILTER_T_DEFINED
+typedef struct filter {
+ const char *name;
+ int (*fn)(buffer_t *, // uint8
+ buffer_t *); // uint32
+} filter;
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+int vector_widen(buffer_t *_in_u8_buffer, buffer_t *widen_buffer) HALIDE_FUNCTION_ATTRS;
+int vector_widen_argv(void **args) HALIDE_FUNCTION_ATTRS;
+extern const struct halide_filter_metadata_t vector_widen_metadata;
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+filter filters[] = {
+{"vector_widen", &vector_widen},
+{NULL, NULL}};
+
+
diff --git a/final/Bitcode/Regression/vector_widen/halide_runtime.bc b/final/Bitcode/Regression/vector_widen/halide_runtime.bc
new file mode 100644
index 00000000..1404e629
--- /dev/null
+++ b/final/Bitcode/Regression/vector_widen/halide_runtime.bc
Binary files differ
diff --git a/final/Bitcode/Regression/vector_widen/vector_widen.bc b/final/Bitcode/Regression/vector_widen/vector_widen.bc
new file mode 100644
index 00000000..144bc16b
--- /dev/null
+++ b/final/Bitcode/Regression/vector_widen/vector_widen.bc
Binary files differ