d1becce | Steven Johnson | 05 September 2018, 22:52:48 UTC | Buffer::fill() and similar should return ref-to-self This allows for somewhat easier initializing of `Buffer<const T>` via use of fill(), for_each_value(), etc while minimizing the use of named temporaries. (Related: would it make sense to add a reference-to-self as a final argument to the callback for `for_each_element`?) | 05 September 2018, 22:52:48 UTC |
9976385 | Ankit Aggarwal | 05 September 2018, 11:32:20 UTC | Changed the install_qc target in top level Makefile to adjust for new location of libsim_qurt.a | 05 September 2018, 11:32:20 UTC |
645bc1a | Ankit Aggarwal | 05 September 2018, 10:21:28 UTC | Changed the directory structure for tools/sim_qurt 1. Moved tools/sim_qurt/sim_qurt.cpp to src/runtime/hexagon_remote/ 2. Modified the src/runtime/hexagon_remote/Makefile to build libsim_qurt.a 3. Removed duplicate code from sim_remote.cpp 4. Link libsim_qurt.a with hexagon_sim_remote for definitions of qurt_hvx_lock and qurt_hvx_unlock functions | 05 September 2018, 10:21:28 UTC |
dc47203 | Steven Johnson | 04 September 2018, 23:59:21 UTC | Add Buffer<>::alias() Per discussion in https://github.com/halide/Halide/pull/3253, add an alias() method as syntactic sugar to make a shallow Buffer copy. (Not sure if ready to land or not; putting it out for reference.) | 04 September 2018, 23:59:21 UTC |
c84c065 | Steven Johnson | 04 September 2018, 22:05:40 UTC | Buffer<const T>::copy_from() should be illegal It should not be legal to call copy_from() on a Buffer with a const value type, but (thanks to explicit casting in the implementation which subverts the usual checks), it is. Added a static_cast() to prevent this. Also, a drive-by fix to make is_bounds_query() a const method. | 04 September 2018, 22:05:40 UTC |
cd76c21 | Andrew Adams | 04 September 2018, 19:28:50 UTC | Merge pull request #3230 from halide/solve_div_simplifier_test Add a simplify test from #3229. | 04 September 2018, 19:28:50 UTC |
1114608 | Andrew Adams | 04 September 2018, 19:28:00 UTC | Merge remote-tracking branch 'origin/master' into fix_3061 | 04 September 2018, 19:28:00 UTC |
55364b1 | Steven Johnson | 04 September 2018, 19:23:50 UTC | Use .empty() instead of .size(), to placate Clang-Tidy | 04 September 2018, 19:23:50 UTC |
540fe6e | Andrew Adams | 04 September 2018, 18:48:14 UTC | Merge pull request #3246 from halide/srj-feat Add missing Feature enums to PyEnums and halide.cmake | 04 September 2018, 18:48:14 UTC |
efa9ae3 | Andrew Adams | 04 September 2018, 18:47:49 UTC | Merge pull request #3223 from jn80842/verification_pr rewrite x/x to 1 only if we can show x != 0 | 04 September 2018, 18:47:49 UTC |
a249455 | Steven Johnson | 04 September 2018, 18:47:18 UTC | Merge branch 'master' into async | 04 September 2018, 18:47:18 UTC |
51790cc | Andrew Adams | 04 September 2018, 18:47:01 UTC | Merge remote-tracking branch 'origin/master' into use_host_cuda_capability_v2 | 04 September 2018, 18:47:01 UTC |
c682592 | Andrew Adams | 04 September 2018, 18:38:25 UTC | Merge remote-tracking branch 'origin/master' into metaprogrammed_simplifier_rules | 04 September 2018, 18:38:25 UTC |
0abf898 | Zalman Stern | 30 August 2018, 19:04:15 UTC | Nuke the async coroutine test. It was intended to provide a proof of concept that the threading runtime could still be replaced and possibly to provide a testbed for coroutine based async support. It is not clear the replacement is still really possible. This test does not implement any of the min threads support and it may be running out of stack space as well. The code would be extremely difficult to maintain do to both inline assembly and std::async plus capturing lambdas. (It is not clear a lightweight process mechanism will coexist with C++11 library thread/futures support. E.g. the library routines can depend on TLS that is not setup properly.) | 30 August 2018, 19:04:15 UTC |
61256a7 | Zalman Stern | 29 August 2018, 23:14:26 UTC | One more tweak to MS calling convention. | 29 August 2018, 23:14:26 UTC |
417273a | Zalman Stern | 29 August 2018, 21:27:40 UTC | Add some more debugging prints. | 29 August 2018, 21:27:40 UTC |
bce8995 | Zalman Stern | 29 August 2018, 19:09:05 UTC | Change generator_aot_async_coroutine test to use Microsoft calling convention on Windows. Attempt to add some debugging prints that will actually print in the Linux failure case. | 29 August 2018, 19:09:05 UTC |
11778be | Zalman Stern | 29 August 2018, 05:43:28 UTC | Replace std::mutex and std::condition_variable_any with Halide mutex and condition variable in async_coroutine test. This is an experiment as the test appears to be crashing in static constructors or some such on some buildbots and it is not clear why. | 29 August 2018, 05:43:28 UTC |
10c4bbe | Zalman Stern | 29 August 2018, 00:23:30 UTC | Merge pull request #3251 from halide/op_table_bugs Fix type conversion bugs in associative ops table | 29 August 2018, 00:23:30 UTC |
9401636 | Zalman Stern | 28 August 2018, 23:01:50 UTC | Add some extra printfs to generator_aot_async_coroutine test to try and get info on why test is crashing on buildbots. | 28 August 2018, 23:01:50 UTC |
fdb83da | Zalman Stern | 28 August 2018, 22:51:20 UTC | Merge branch 'master' into async | 28 August 2018, 22:51:20 UTC |
792f7e0 | Steven Johnson | 28 August 2018, 21:05:45 UTC | Merge branch 'master' into op_table_bugs | 28 August 2018, 21:05:45 UTC |
3f8f48c | Zalman Stern | 28 August 2018, 20:08:50 UTC | Merge pull request #3249 from halide/srj-order Ensure calls to codegen() are well-ordered | 28 August 2018, 20:08:50 UTC |
d887783 | Steven Johnson | 28 August 2018, 17:44:22 UTC | Merge branch 'master' into srj-feat | 28 August 2018, 17:44:22 UTC |
d751ca1 | Steven Johnson | 28 August 2018, 17:43:56 UTC | Merge branch 'master' into srj-order | 28 August 2018, 17:43:56 UTC |
1604d13 | Patricia Suriana | 28 August 2018, 17:00:59 UTC | Fix type conversion bugs in associative ops table | 28 August 2018, 17:00:59 UTC |
1e2169e | Steven Johnson | 28 August 2018, 17:00:04 UTC | Merge pull request #3243 from halide/srj-addus Add LL helpers for paddus/psubus on LLVM8.0+ | 28 August 2018, 17:00:04 UTC |
72f9758 | Zalman Stern | 28 August 2018, 16:36:30 UTC | Merge pull request #3250 from inazarenko/skip_stages Don't skip stages that produce values of some other func. | 28 August 2018, 16:36:30 UTC |
2c2a4f6 | Zalman Stern | 28 August 2018, 16:20:08 UTC | Merge branch 'master' into async | 28 August 2018, 16:20:08 UTC |
50d4db8 | Zalman Stern | 28 August 2018, 16:14:06 UTC | Another sync barrier is required in the Metal halide_buffer_copy path. | 28 August 2018, 16:14:06 UTC |
ea88418 | Zalman Stern | 28 August 2018, 02:54:05 UTC | Merge pull request #3248 from halide/rvar_reorder_only_prove_assoc_if_needed Change RVar reordering code to not do associativity/commutativity | 28 August 2018, 02:54:05 UTC |
8b0bb22 | Steven Johnson | 27 August 2018, 23:37:22 UTC | Ensure calls to codegen() are well-ordered C++11 doesn't guarantee that function arguments are evaluated in a particular order, thus calls of the form builder->CreateFoo(codegen(a), codegen(b)) might generate LLVM IR with either a-then-b or b-then-a; at best, this makes comparing IR between compilers a nuisance; at worst, it can trigger subtle bugs and make them harder to find (see #3203). This PR looks for all calls that evalutate codegen() more than once as a function arg and rearranges code to use temporaries to ensure a well-defined order. (Note that a few with only a single call to codegen() were also pulled into temporaries where I thought it improved clarity or helped forestall reinsertion of the bad code pattern by future edits.) | 27 August 2018, 23:37:22 UTC |
2956ee6 | Igor Nazarenko | 27 August 2018, 17:56:40 UTC | Don't skip stages that produce values of some other func. When determining whether it's safe to skip producing a func, consider stores to non-local buffers of other funcs inside the Producer stage. The predicate for skipping the computation must imply that conditions around those stores are false. | 27 August 2018, 22:50:45 UTC |
7b3e2b7 | Steven Johnson | 27 August 2018, 21:49:01 UTC | Temporarily disable some tests in simd_op_check | 27 August 2018, 21:49:01 UTC |
79ae87f | Z Stern | 27 August 2018, 21:00:21 UTC | Change RVar reordering code to not do associativity/commutativity proof if it is not needed for a particular reordering. The proof is somewhat expensive and also results in possibly infinite loops on some pieces of code so running it all the time is problematic. | 27 August 2018, 21:00:21 UTC |
174c3dd | Steven Johnson | 27 August 2018, 19:43:15 UTC | Add missing Feature enums to PyEnums and halide.cmake | 27 August 2018, 19:43:15 UTC |
8b2f582 | Z Stern | 27 August 2018, 19:35:56 UTC | Merge branch 'master' into async | 27 August 2018, 19:35:56 UTC |
35544ab | Zalman Stern | 27 August 2018, 18:25:41 UTC | Merge pull request #3241 from halide/another_buffer_copy_fix Fix cases where halide_buffer_copy could copy to/from a NULL host pointer... | 27 August 2018, 18:25:41 UTC |
99cdb03 | Steven Johnson | 27 August 2018, 18:11:17 UTC | Add LL helpers for paddus/psubus on LLVM8.0+ Needed to work properly with https://reviews.llvm.org/D46179#1211902; unfortunately this patch is (still) broken by https://bugs.llvm.org/show_bug.cgi?id=38691, and probably shouldn't land until that is resolved. Posting here as a PR to capture the work-in-progress, but not really ready to review yet. | 27 August 2018, 18:11:17 UTC |
37540bb | jn80842 | 27 August 2018, 16:27:23 UTC | fixed merge | 27 August 2018, 16:27:23 UTC |
b3e18ee | jn80842 | 27 August 2018, 16:21:23 UTC | merge | 27 August 2018, 16:21:23 UTC |
06f4c1a | jn80842 | 27 August 2018, 15:16:09 UTC | assume that rewritten expressions contain no division by zero | 27 August 2018, 15:16:09 UTC |
d19f5c2 | jn80842 | 17 August 2018, 19:47:04 UTC | whitespace | 27 August 2018, 14:56:43 UTC |
2ef21d2 | jn80842 | 17 August 2018, 19:45:28 UTC | revert term reordering fixes | 27 August 2018, 14:56:43 UTC |
df8cb94 | jn80842 | 17 August 2018, 19:27:29 UTC | rewrite x/x to 1 only if we can show x != 0 | 27 August 2018, 14:56:43 UTC |
20eee94 | jn80842 | 16 August 2018, 18:17:28 UTC | fixing rules that cannot match because exprs are reordered/rewritten before matching | 27 August 2018, 14:56:43 UTC |
7701abe | Z Stern | 27 August 2018, 09:04:43 UTC | Fix cases where halide_buffer_copy could copy to/from a host pointer that was NULL where the case was valid by compying from the device allocation. Add tests for these cases. Change name of do_multidimensional_copy in opencl and cuda runtimes to be unique to each runtime as the opencl runtime was calling the cuda do_multidimensional_copy despite both being in anonymous namespaces inside their respective files. Weak linking and C++ namespaces and our unusual runtime linking and probably at least one bug somewhere caused this to go badly. Required trying to use both cuda and opencl at the same time. | 27 August 2018, 09:04:43 UTC |
daa6cd5 | Z Stern | 24 August 2018, 18:59:47 UTC | Another tweak to halide_buffer_copy_logic. | 24 August 2018, 18:59:47 UTC |
8fdd06e | Z Stern | 24 August 2018, 18:33:54 UTC | Merge branch 'master' into async | 24 August 2018, 18:33:54 UTC |
1e69e8b | Zalman Stern | 24 August 2018, 18:31:23 UTC | Merge pull request #3238 from halide/empty_pipeline_bound Ignore function with empty pipeline bounds when creating partitioner | 24 August 2018, 18:31:23 UTC |
5481f15 | Jing Pu | 24 August 2018, 17:47:40 UTC | Merge pull request #2995 from halide/simplify_mod Add simplify rules for a modulo of a difference. | 24 August 2018, 17:47:40 UTC |
1f43e2f | Zalman Stern | 24 August 2018, 17:35:20 UTC | Merge pull request #3236 from halide/buffer_copy_fix Fix halide_buffer_copy crash introduced by latest changes for host to… | 24 August 2018, 17:35:20 UTC |
f44f2df | Zalman Stern | 24 August 2018, 17:33:04 UTC | Merge pull request #3237 from halide/avx_512_alignment Move x86 to 64-byte alignment because of AVX-512. | 24 August 2018, 17:33:04 UTC |
0e6a58d | Z Stern | 24 August 2018, 06:30:03 UTC | Move x86 to 64-byte alignment because of AVX-512. | 24 August 2018, 06:30:03 UTC |
e0d693f | Z Stern | 24 August 2018, 06:14:36 UTC | Fix halide_buffer_copy crash introduced by latest changes for host to host copy. Add a test to cover this simple case. | 24 August 2018, 06:14:36 UTC |
e1f1408 | Patricia Suriana | 23 August 2018, 23:00:19 UTC | Ignore function with empty pipeline bounds when creating partitioner | 23 August 2018, 23:00:19 UTC |
405df14 | Z Stern | 23 August 2018, 22:59:29 UTC | Merge branch 'master' into async | 23 August 2018, 22:59:29 UTC |
fd1b76f | Zalman Stern | 23 August 2018, 22:56:30 UTC | Merge pull request #3176 from halide/buffer_copy_improvements Buffer copy improvements | 23 August 2018, 22:56:30 UTC |
14a4ae3 | Z Stern | 23 August 2018, 19:55:59 UTC | Merge branch 'master' into buffer_copy_improvements | 23 August 2018, 19:55:59 UTC |
9d97eaa | Zalman Stern | 23 August 2018, 19:54:31 UTC | Merge pull request #3233 from zanbri/acquire_release_cuda_context_bug Incorrect acquire_context and release_context function names in test script | 23 August 2018, 19:54:31 UTC |
96d00da | Z Stern | 23 August 2018, 19:47:30 UTC | Don't run associativity/commutativity proof in reorder unless there are RVars in the dims. | 23 August 2018, 19:47:30 UTC |
0662cbd | Ankit Aggarwal | 23 August 2018, 17:24:13 UTC | Initialize HexagonWrapper with v65 instead of v60. | 23 August 2018, 17:24:13 UTC |
f9d3254 | Alexander (Zan) Bridi | 23 August 2018, 16:49:51 UTC | Fixed acquire_release_bug: issue #3232 | 23 August 2018, 16:49:51 UTC |
0cb5825 | Z Stern | 22 August 2018, 23:37:09 UTC | Address review feedback. This makes an error condition actually return an error in one case as well. | 22 August 2018, 23:37:09 UTC |
d9973ca | Z Stern | 22 August 2018, 23:20:38 UTC | Merge branch 'master' into buffer_copy_improvements | 22 August 2018, 23:20:38 UTC |
a4dbb57 | Z Stern | 22 August 2018, 23:11:02 UTC | Merge branch 'master' into async | 22 August 2018, 23:11:02 UTC |
27b7ad1 | Z Stern | 22 August 2018, 23:09:21 UTC | Latest redux of async logic. | 22 August 2018, 23:09:21 UTC |
331df56 | Jing Pu | 21 August 2018, 20:16:29 UTC | Add a simplify test from #3229. | 21 August 2018, 20:16:29 UTC |
e0eb519 | Jing Pu | 21 August 2018, 20:06:28 UTC | Add a division visitor method to SolveExpression. | 21 August 2018, 20:06:28 UTC |
2e48dad | Jing Pu | 21 August 2018, 19:51:41 UTC | sync the test format to #2996 | 21 August 2018, 19:51:41 UTC |
ee3b29d | Jing Pu | 21 August 2018, 19:41:45 UTC | Merge branch 'master' into simplify_mod | 21 August 2018, 19:41:45 UTC |
4518a15 | Steven Johnson | 21 August 2018, 17:38:23 UTC | Merge pull request #3224 from halide/reorder_rvar Support reordering RVar if a function is associative. | 21 August 2018, 17:38:23 UTC |
f571a02 | Patricia Suriana | 21 August 2018, 16:13:47 UTC | Merge pull request #3226 from halide/bug_inline_unbounded Fix inlining unbounded functions | 21 August 2018, 16:13:47 UTC |
4e716a5 | Jing Pu | 21 August 2018, 06:44:17 UTC | Merge pull request #3222 from inazarenko/fix_scope Sync ScopedBinding<void> to the main template. | 21 August 2018, 06:44:17 UTC |
a5b0ab4 | Jing Pu | 20 August 2018, 21:22:22 UTC | Check commutativity. | 20 August 2018, 21:22:22 UTC |
37637fe | Patricia Suriana | 20 August 2018, 20:02:29 UTC | Fix inlining unbounded functions | 20 August 2018, 20:02:29 UTC |
3ca81a2 | Jing Pu | 20 August 2018, 18:08:39 UTC | Support reordering Rvars of associative functions. | 20 August 2018, 18:08:39 UTC |
26e2625 | jn80842 | 17 August 2018, 19:47:04 UTC | whitespace | 17 August 2018, 19:47:04 UTC |
72c58f3 | jn80842 | 17 August 2018, 19:45:28 UTC | revert term reordering fixes | 17 August 2018, 19:45:28 UTC |
6a6d11a | jn80842 | 17 August 2018, 19:27:29 UTC | rewrite x/x to 1 only if we can show x != 0 | 17 August 2018, 19:27:29 UTC |
416ea2c | jn80842 | 17 August 2018, 19:25:52 UTC | Merge remote-tracking branch 'upstream/metaprogrammed_simplifier_rules' into verification_pr | 17 August 2018, 19:25:52 UTC |
50fa921 | Andrew Adams | 17 August 2018, 19:21:42 UTC | Back off the stack size limit on the fft app slightly | 17 August 2018, 19:21:42 UTC |
17d549c | Andrew Adams | 17 August 2018, 19:20:57 UTC | Merge remote-tracking branch 'origin/master' into metaprogrammed_simplifier_rules | 17 August 2018, 19:20:57 UTC |
83fa9aa | Igor Nazarenko | 16 August 2018, 20:20:38 UTC | Sync ScopedBinding<void> to the main template. Adds a constructor that allows to skip binding the name, which is already present for other types, but not in the specialization for void. | 16 August 2018, 20:20:38 UTC |
15d6e3b | Z Stern | 16 August 2018, 19:28:35 UTC | Merge branch 'master' into async | 16 August 2018, 19:28:35 UTC |
390880e | Z Stern | 16 August 2018, 19:27:18 UTC | Merge branch 'master' into buffer_copy_improvements | 16 August 2018, 19:27:18 UTC |
a4797d6 | jn80842 | 16 August 2018, 18:17:28 UTC | fixing rules that cannot match because exprs are reordered/rewritten before matching | 16 August 2018, 18:17:28 UTC |
3693521 | Steven Johnson | 15 August 2018, 21:10:31 UTC | Merge branch 'master' into metaprogrammed_simplifier_rules | 15 August 2018, 21:10:31 UTC |
1ec2340 | Z Stern | 15 August 2018, 01:19:56 UTC | Provide Hexagon buffer copy implementation. | 15 August 2018, 01:19:56 UTC |
b225e0d | Steven Johnson | 14 August 2018, 22:43:00 UTC | Merge pull request #3219 from halide/revert-3212-srj-codegen Revert "Ensure calls to codegen() are well-ordered" | 14 August 2018, 22:43:00 UTC |
50f4a13 | Steven Johnson | 14 August 2018, 22:10:22 UTC | Revert "Ensure calls to codegen() are well-ordered" | 14 August 2018, 22:10:22 UTC |
29ba9d2 | Dillon Sharlet | 14 August 2018, 21:58:53 UTC | Merge pull request #3212 from halide/srj-codegen Ensure calls to codegen() are well-ordered | 14 August 2018, 21:58:53 UTC |
5f30b05 | Z Stern | 14 August 2018, 19:24:02 UTC | Merge branch 'master' into buffer_copy_improvements | 14 August 2018, 19:24:02 UTC |
e5d3125 | Steven Johnson | 14 August 2018, 18:17:27 UTC | Merge pull request #3217 from halide/srj-tidy Hygiene: move nontrivial Target method bodies into .cpp file | 14 August 2018, 18:17:27 UTC |
d853dc7 | Z Stern | 14 August 2018, 06:27:31 UTC | Merge branch 'master' into buffer_copy_improvements | 14 August 2018, 06:27:31 UTC |
ad5e27d | Z Stern | 14 August 2018, 06:24:45 UTC | Change buffer_copy approach to put more of the decomposition logic in device_interface. Avoids recursive callbacks from the device backend to the device independent code. (Previously infinite recursion could occur in some cases.) Add tests coverage for halide_device_copy. Still need to handle device APIs that don't yet have support for buffer copy. Probably need to add a bit more documentation for halide_buffer_copy. | 14 August 2018, 06:24:45 UTC |
51895c9 | Steven Johnson | 13 August 2018, 22:44:29 UTC | Hygiene: move nontrivial Target method bodies into .cpp file Not at all important, but some of these methods have grown pretty long over the years. | 13 August 2018, 22:44:29 UTC |
47203ba | Steven Johnson | 13 August 2018, 21:17:48 UTC | Merge pull request #3216 from halide/srj-sf Special-case strict_float in Bounds.cpp to avoid n^2 behavior | 13 August 2018, 21:17:48 UTC |
c273948 | Steven Johnson | 13 August 2018, 19:50:58 UTC | Merge branch 'master' into srj-codegen | 13 August 2018, 19:50:58 UTC |
e538132 | Steven Johnson | 13 August 2018, 19:49:57 UTC | Reorder code | 13 August 2018, 19:49:57 UTC |