8e9089377848628813a697b972773e969b942c3b |
|
07-Mar-2016 |
Pirama Arumuga Nainar <pirama@google.com> |
Update libbcc for LLVM rebase to r256229 http://b/26987366 (cherry picked from commit f229c40f0d2da19985e68955aef1a06ce4121e63) Change-Id: I3d89bb15d0c3e7d64f74656365ed1d472e7de4c7
/frameworks/compile/libbcc/lib/Renderscript/RSScriptGroupFusion.cpp
|
531d08c85971e47f58aedc093fbe83f1b909703e |
|
29-Jun-2015 |
Yang Ni <yangni@google.com> |
bcc kernel fusion: Fixed checks and added better error messages b/21949580 Need to increment the slot iterator only after checking if the slot is first in batch. Succeeding kernel input data type has to strictly match the return type of the preceding kernel. Give error messages on all error exits, with better messages. Change-Id: Icc50b85377e820333b13e57389e53363d4a7e89f
/frameworks/compile/libbcc/lib/Renderscript/RSScriptGroupFusion.cpp
|
8c12d615b4ed4b1d782722a125dd1d43bc44a71b |
|
20-Jun-2015 |
Yang Ni <yangni@google.com> |
Check kernels before fusing b/21958851 Kernel fusion for a Script Group expects kernels to be chained up via outputs (return values) and first arguments. Check this condition during fusion. Otherwise, BCC may crash on broken invariants. Change-Id: I013558c77dc3f79d6e42986121927dd6c695f27e
/frameworks/compile/libbcc/lib/Renderscript/RSScriptGroupFusion.cpp
|
a108bc5ec0ca0cb48c72492d54a71126bccfa7d6 |
|
15-Apr-2015 |
Stephen Hines <srhines@google.com> |
Make better use of getStringOperand() for MetadataExtractor. This change also cleans up some of the code from a prior rebase. It also captures two additional broken metadata cases (from corrupt object slot and/or pragma metadata). Change-Id: I61e161d2b0e211349683e36160d564493d802a12
/frameworks/compile/libbcc/lib/Renderscript/RSScriptGroupFusion.cpp
|
0ab50b835805c75ad164466767c2c212f48954cc |
|
16-Feb-2015 |
Yang Ni <yangni@google.com> |
Create one single module for a script group This changed the way we compile a script group. Instead of compiling each batch into a seperate module, we now compile the whole script group into one single module, with each batch as a function (of fused kernels) in that module. This allows invoke to (fused) kernel communication via globals variables. Added commoand line options "-merge" and "-invoke". The former accepts fused kernel names, input kernels, while the latter accepts new invoke name, and the original invoke function. Additional changes: - Bail out on encountering any unexpected bits in the foreach signature of any kernel to fuse - Made kernel fusion handle kernels without inputs. If a kernel only takes global allocations but no inputs, bcc needs to use a different signature for the fused kernel. - Included in rs info the exported variables for the fused kernel. - Keep all metadata in merged module from the input modules. This would help correctly handling FP precision. (b/19098612) - Handles Z (b/19610223) Change-Id: I5553f86b2e58325f85649078d48685a38f12d62f
/frameworks/compile/libbcc/lib/Renderscript/RSScriptGroupFusion.cpp
|
33cda5cf335afc6aa2dbe02062bc9e6649e1f87c |
|
30-Jan-2015 |
David Gross <dgross@google.com> |
Backend support for new special kernel params ctxt and z. Also: - Modify bcinfo dump to show signature metadata in hex instead of dec. - Teach LLVM pass manager about (existing) "foreachexp" pass. - Create MetadataSignatureBitval symbolic names for use by libbcc and slang. Bug: 18964628 Change-Id: I1737ee0476b2005ec87f30473bbfa35aed5ded38
/frameworks/compile/libbcc/lib/Renderscript/RSScriptGroupFusion.cpp
|
a4ded1373d7ad3e503f186e65bccf94126a0f020 |
|
18-Nov-2014 |
Yang Ni <yangni@google.com> |
Compiler kernel fusion for RenderScript. This was started by Tobias Grosser during his internship at Google in 2013. This CL includes his original changes and generalization to make it work with the new proposed ScriptGroup API and made the ImageProcessing processing work with this. An enabling CL is needed in the RenderScript runtime, which I will post seperately. Change-Id: Ia73ea917a126a5055ec97f13d90a5feaafd6a2f5
/frameworks/compile/libbcc/lib/Renderscript/RSScriptGroupFusion.cpp
|