aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/swr/rasterizer/jitter/builder.h
Commit message (Collapse)AuthorAgeFilesLines
* swr/rast: Clang-Format most rasterizer source codeAlok Hota2018-06-181-109/+108
| | | | Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Renamed MetaData callsAlok Hota2018-05-251-2/+2
| | | | Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Use metadata to communicate between passesAlok Hota2018-05-251-0/+28
| | | | Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Add Builder::GetVectorType()George Kyriazis2018-05-111-0/+1
| | | | Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Add support for TexelMask evaluationGeorge Kyriazis2018-04-271-0/+2
| | | | Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Add shader stats infrastructure (WIP)George Kyriazis2018-04-181-0/+23
| | | | Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Fix alloca usage in jitterGeorge Kyriazis2018-04-181-0/+2
| | | | | | | | Fix issue where temporary allocas were getting hoisted to function entry unnecessarily. We now explicitly mark temporary allocas and skip hoisting during the hoist pass. Shuold reduce stack usage. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Enable generalized fetch jitGeorge Kyriazis2018-04-181-1/+3
| | | | | | | | | Enable generalized fetch jit with 8 or 16 wide SIMD target. Still some work needed to remove some simd8 double pumping for 16-wide target. Also removed unused non-gather load vertices path. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Cleanup of JitManager convenience typesGeorge Kyriazis2018-04-181-1/+2
| | | | | | | Small cleanup. Remove convenience types from JitManager and standardize on the Builder's convenience types. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Start refactoring of builder/packetizer.George Kyriazis2018-04-181-1/+5
| | | | | | | | | | | Move x86 intrinsic lowering to a separate pass. Builder now instantiates generic intrinsics for features not supported by llvm. The separate x86 lowering pass is responsible for lowering to valid x86 for the target SIMD architecture. Currently it's a port of existing code to get it up and running quickly. Will eventually support optimized x86 for AVX, AVX2 and AVX512. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Add autogen of helper llvm intrinsics.George Kyriazis2018-04-181-0/+1
| | | | | | | | Replace sqrt, maskload, fp min/max, cttz, ctlz with llvm equivalent. Replace AVX maskedstore intrinsic with LLVM intrinsic. Add helper llvm macros for stacksave, stackrestore, popcnt. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Cleanup of mpPrivateContext in BuilderGeorge Kyriazis2018-02-161-0/+10
| | | | | | Provide access functions for mpPrivateContext in Builder. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Don't include private context in gather argsGeorge Kyriazis2018-02-161-0/+4
| | | | | | Move mpPrivateContext to compensate Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Move memory-related JIT functionsGeorge Kyriazis2018-01-251-0/+1
| | | | | | | Move them to their own file (builder_mem.{h|cpp}). Add builder_mem.cpp to the build system. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Add extra (optional) parameter in GATHERPSGeorge Kyriazis2018-01-251-0/+2
| | | | | | | Now also takes in an additional parameter (draw context) for future expansion. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: SIMD16 builder - cleanup naming (simd2 -> simd16)Tim Rowley2018-01-101-22/+23
| | | | Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Widen fetch shader to SIMD16Tim Rowley2017-11-201-0/+16
| | | | | | | Widen fetch shader to SIMD16, enable SIMD16 types in the jitter, and provide utility EXTRACT/INSERT SIMD8 <-> SIMD16 utility functions. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: add additional jit utility functionsTim Rowley2017-04-281-0/+1
| | | | | | Not used yet. Reviewed-by: Bruce Cherniak <[email protected]>
* swr: [rasterizer codegen] Rewrite gen_llvm_ir_macros.py to use makoTim Rowley2017-03-201-2/+2
| | | | | | Don't create/use cpp files, header only now. Reviewed-by: Bruce Cherniak <[email protected]>
* swr: [rasterizer jitter] Fix issues with stream-out on llvm>=3.8Tim Rowley2017-02-081-2/+0
| | | | Reviewed-by: Bruce Cherniak <[email protected]>
* swr: [rasterizer jitter] fixes for icc in vs2015 compat modeTim Rowley2016-10-031-35/+37
| | | | | | | - Move most jitter functionality into SwrJit namespace - Avoid global "using namespace llvm" in headers Signed-off-by: Tim Rowley <[email protected]>
* swr: [rasterizer jitter] add mSimdInt1TyTim Rowley2016-04-271-0/+1
| | | | Reviewed-by: Bruce Cherniak <[email protected]>
* swr: [rasterizer jitter] Cleanup use of types inside of Builder.Tim Rowley2016-03-251-0/+6
| | | | | Also, cached the simd width since we don't have to keep querying the JitManager for it.
* gallium/swr: add OpenSWR rasterizerTim Rowley2016-03-021-0/+71
Acked-by: Roland Scheidegger <[email protected]> Acked-by: Jose Fonseca <[email protected]>