History log of /external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
8a70a4d9844f7aa50cc6ef16a5f79ba86bc11eaa 26-Nov-2016 Ilia Mirkin <imirkin@alum.mit.edu> swr: [rasterizer core] fix typo in scissor tile-alignment logic

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
1a80ec0cd1f3f66a33fc708e0112c88f4fba122d 17-Nov-2016 Ilia Mirkin <imirkin@alum.mit.edu> swr: [rasterizer core] pipe renderTargetArrayIndex through to clears

Currently clears only operate on the 0th array index (ignoring surface
layout parameters). Instead normalize to take a RTAI like all the
load/store tile logic does, and use ComputeSurfaceAddress to properly
take the surface state's lod/array index into account.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
a456ea17fb460a68e28c13dd4b7086dc4309f410 16-Nov-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] fix clear with multiple color attachments

Fixes fbo-mrt-alphatest

v2: styling fixes

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
c8a51fa75d2642d71ac23a04f37f570613ac9a87 10-Nov-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] remove driverType

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
5912552947cc84e794543589388d18aaf4ff6c86 02-Nov-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] various code style changes

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
584b65ad442f8219c0216961641d4b9f4a1671da 31-Oct-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer archrast] don't generate empty files

Don't generate files when no events have been generated outside
the header events.

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
2c697754a9d96855c30d1809e67cc676c59de7d1 29-Oct-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer archrast] fix double free issue

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
dc8408920c8c5698d90d2fc7679a5b491ca71248 28-Oct-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] separate frontend/backend stats enables

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
aa62fa8fb79699e117f0285bd5a045f541aa9771 01-Nov-2016 Ilia Mirkin <imirkin@alum.mit.edu> swr: [rasterizer core] set depth hottile when depth bounds test enabled

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
0a5811b0f381e8920536a19bab4d437d5bdb5b63 19-Oct-2016 George Kyriazis <george.kyriazis@intel.com> swr: [rasterizer core] Frontend dependency work

Add frontend dependency concept in the DRAW_CONTEXT, which
allows serialization of frontend work if necessary.

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
1a3ed86348d608d42b5fdbd8dcf101d06f0b2cb0 16-Oct-2016 George Kyriazis <george.kyriazis@intel.com> swr: [rasterizer archrast] Add thread tags to event files.

This allows the post-processor to easily detect the API thread and to
process frame information. The frame information is needed to
optimized how data is processed from worker threads.

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
a42c22fdbfcdd0d24a51e1575f2e1f3340bfbeda 14-Oct-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] don't construct pArContext on non-ar builds

Stops debug directory being created on non-ar builds.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
3805e40f32e252767daa97a08cb931784aa3da4e 10-Oct-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer archrast] add support for stats files

Only stat and counter events are saved to the event files.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
12e6f4c87970e57d2b92b1cc81490037c40e8186 07-Oct-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] implement depth bounds test

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
a907b7a5f74169906c04e9702f3c8fda99636c56 06-Oct-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] SwrStoreTiles api change

SwrStoreTiles now takes a mask of surfaces to store. Reduces
overhead when storing multiple render targets.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
e845eeb0be89e3dcc62ae43a03f71336c26c40ed 04-Oct-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] disable cull for rect_list

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
cdac0427331442213a2cb8ed5a71057e1bb9793e 30-Sep-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] refactor thread creation

Create worker pool now computes number of worker threads based on
things like topologies, etc. and creates the pool but doesn't actually
launch the threads. Instead there is a separate start thread pool
function. This allows thread resources to be constructed first before
threads start.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
4198520a82463aa392762ec156231b95bf2685ac 23-Sep-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] archrast fixes

- Immediately sleep threads until thread data is initialized
- Fix some compile bugs with AR enabled

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
b8a6f06c855aa088323e9d13b4806659b90c10d6 21-Sep-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] generalize compute dispatch mechanism

Generalize compute dispatch mechanism to support other types of dispatches.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
92ec820244710e1b13267d8e93f3a81d7114080e 12-Sep-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] Better thread destruction

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
2f86a9577adf5c43e892f899224d0f73ff1d37c2 06-Sep-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] Add macros for mapping ArchRast to buckets

Switch all RDTSC_START/STOP macros to use AR_BEGIN/END macros.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
175052507ccc8569802ae2ee0b0b094c03698ff7 29-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer] add archrast instrumentation

Statistics measurement system
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
8e41a65fc520a2bf22e4748312fa0cc67e0bd570 25-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] whitespace cleanup

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
a4efbd14d382855a21d13bad510a4f67757480ab 22-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] minor cleanup to thread initialization

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
7472a8ee75ec3f2b401fa211edb26c2161eb4a6a 22-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] remove KNOB_MAX_THREADS

Use dynamic memory allocation for per-thread data

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
9e4a482d468bcf4b1cb70ee8911f824d33e9871b 18-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] track guardbands per viewport rect

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
b473bec87878fd52eef8ba1ffbc9cf11dc00dc0f 18-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] per-primitive viewports/scissors

- use per-primitive viewports throughout the pipeline.
- track whether all available scissor rects are tile aligned.
Causes failures, so not taken into account when choosing rasterizer yet.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
0ff57446e3786243c6d752c91be2108595f2663e 17-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] only use Viewport/Scissors during SwrDraw* operations

Add explicit rects for:

- SwrClearRenderTarget
- SwrDiscardRect
- SwrInvalidateTiles
- SwrStoreTiles

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
c7c1a03f909c15338b878418ae76498685aeb59b 11-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] move some global variables to SWR_CONTEXT

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
92621ac5d526e73469c43d524068315a81bbc869 08-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] routing of viewport indexes through frontend

Viewport transform performed based on per-prim viewport index if available.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
4e8763cb0904c30d1962cf5ad52fe3a87be7b4bd 07-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] split FE and BE stats

Separated FE stats out into its own structure. There are 17 FE vs 3 BE
stat fields. Since there is only one FE thread per DC then we don't have
to loop over all threads and sum up FE stats over all the worker threads.
This also reduces size of DC since we only need to store one copy of the
FE stats and not one per worker. Finally, we can use the new FE callback
mechanism to update these.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
f833b694cd04d08ed4742cd49ae478948e4bca3a 06-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] remove all old stats code

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
ad153189ec3fb16fdca2666e0bfe2b88d31ebb70 06-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] viewport array support

Change viewport matrix storage from AOS to SOA to support viewport arrays.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
6625fd08db0a24fad54d69ca1eb3935304b3a53e 05-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] fundamentally change how stats work

Add a per draw stats callback to update driver stats.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
29e1c4a8a9f26ce41aa53dc9bf39852a8530adc6 04-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] allow override of KNOB thread settings

- Remove HYPERTHREADED_FE support
- Add threading info as optional data passed to SwrCreateContext.
If supplied this data will override any KNOB thread settings.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
e0c10306f58fa3e1a1cb6a23b8942701d8529cce 04-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] add SwrWaitForIdleFE

This is a blocking call that waits until all FE work is complete.
This is useful for waiting for FE work to complete such as for streamout.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
7cf187d08ae6a64c959de1cdf9004f5fb2fd097a 02-Aug-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] improve implementation for SoWriteOffset

1. SoWriteOffset is no longer treated as a stat
2. Added callback from core to update streamout write offset

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
68dc54487903024b90177f9e9e372bcdfa1c6a1a 29-Jul-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] implement InnerConservative input coverage

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
57b07498d239745c13d4b8db0e9bf32516a770c0 26-Jul-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] update sync handling

Sync now uses a callback to ensure that it's called by the last
thread moving past a DC. This will help with the new counter
handling.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
a123d12e1424816b4c3ac5422db7e5373df8d2fa 14-Jul-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] rename *_MAX enum values to *_COUNT

Makes these names semantically correct.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
efdaf5fa3e74ca4f3d9217dc6955aef6dc698a68 12-Jul-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer] attribute swizzling and linkage

Add support for enhanced attribute swizzling. Currently supports constant
source overrides to handle PrimitiveID support. No support yet for input
select swizzling or wrap shortest. Removes obsoleted linkageMask and
associated code.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
98641f4e73030694bb79f41d40d7e1515b396f77 08-Jul-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] viewport rounding for disabled scissor

Adjust viewport rounding when scissor rect is disabled during macro
tile scissor setup.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
c6ca1265919e1a8bbabdd89a6cf79fb1aa7c93ec 27-Jun-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] conservative rast backend changes

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
eb6b2b340e685e977148784f72289c919ce6c74f 16-Jun-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] make all api functions call GetContext

Small api cleanup. Make all api functions call GetContext instead
of locally casting handle. Makes debugging easier by providing a
single point to track context changes.

Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
a16d274032cc1ee264b14de39be1bbb3f923bfb0 15-Jun-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] fix dependency bug

Never be dependent on "draw 0", instead have a bool that makes the draw
dependent on the previous draw or not dependent at all.

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
73a9154bdef807330ec3d75a79610532e33edb75 15-Jun-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] use wrap-around safe compares for dependency checking

Move drawIDs from 64-bit to 32-bit to increase perf.

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
c7cd33b605f0238464a3250a11f7134e4b7d22a6 10-Jun-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] conservative rasterization frontend support

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
c867c22d855163ecbf18d5606b27c9d2cb50a148 10-Jun-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] stop single threaded crash exit crash

Function static destructors were getting called by exit
handlers before context teardown.

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
c8835a592471a0238e296f6529b5dadb431cc622 24-May-2016 Bruce Cherniak <bruce.cherniak@intel.com> swr: [rasterizer] Correctly select optimized primitive assembly.

Indexed primitives were always using cut-aware primitive assembly,
whether primitive_restart was enabled or not. Correctly pass down
primitive_restart and select optimized PA when possible.

Reviewed-by: Tim Rowley <timothy.o.rowley@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
600528168bf9f4dc7c4b50c27286c53c8b31e9c2 12-May-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] apply KNOB_TOSS_DRAW to more functions

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
4997169779069692c0e64df2dfb89185ae48f193 06-May-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer] rename _aligned_malloc to AlignedMalloc

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
24f23817d2b15941c84f42c202eba5b24599286b 18-Apr-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] implement legacy depth bias enable

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
a646ffdacff1d8895c129b556fccc77d79f6c4a3 21-Apr-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] more backend refactoring

BackendPixelRate should be easier to read/maintain now hopefully.

Small perf bump by moving some of the pfn's to inline functions
without template params.

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
4e1e0b3a32a129a785bddc193cf105be75c32847 15-Apr-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] backend refactor

Lump all template args into a bundle of traits, and add some
functionality to the MSAA traits.

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
27cc5924ea95d5a00ddb9d5c6ffb8853c92b1f4e 05-Apr-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] TemplateArgUnroller

Switch boolean template arguments to typename template arguments of type
std::integral_constant<bool, VALUE>.

This allows the template argument unroller to easily be extended to enums.

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
244ae7af1ba4ea8c5160b9da8db5e652e19b1a01 04-Apr-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] Use CS spill/fill size in core

Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
df37b06276a7298d3785e95fbe2ec9dc1ebd6c4c 01-Apr-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] warning cleanup

Acked-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
06c59dc417661cda41b50aa57656a848434acbb4 31-Mar-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer] Put in rudimentary garbage collection for the global arena allocator

- Check for unused blocks every few frames or every 64K draws
- Delete data unused since the last check if total unused data is > 20MB

Doesn't seem to cause a perf degridation

Acked-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
b990483de21cd99a94a098bb0eb397ba86b7b2a6 30-Mar-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] Put DRAW_CONTEXT on a diet

No need for 256 pointers per DC.

Acked-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
a939a58881063c092a95bd7f1426b8fae1d8a44d 30-Mar-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] Add experimental support for hyper-threaded front-end

Acked-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
e1871c4459bbd291e6356e971c6aa2becf4ecb96 26-Mar-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] Quantize depth to depth buffer precision prior to depth test/write.

Fixes z-fighting issues.

Acked-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
c25244f2f7f61ebb368a9651aef4de93bd8306ac 24-Mar-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] Affinitize thread scratch space to numa node of worker

Acked-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
93c1a2dedfa8b786e969a9ae44765bf6841218ef 24-Mar-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] NUMA optimizations...

- Affinitize hot-tile memory to specific NUMA nodes.
- Only do BE work for macrotiles assoicated with the numa node
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
0767e820fd96e8bac2943fa8942bea3ff81b8bd9 23-Mar-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] Fix Compute workitem retirement
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
813e89c0cc0ea6a6ed4b69303073995b4c4c7666 22-Mar-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] Cleanup state ring arena after last draw that references it completes

Rather than waiting for the API thread to re-use it.
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
ec9d4c4b372df773e4453c228b938e7c6c526c4c 21-Mar-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] Globally cache allocated arena blocks for fast re-allocation.
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
12ce9d9aa1819c0d7fb969b459a070c3cc9a617f 18-Mar-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer] more arena work
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
e374d2d24b0d755c9380da0eb33e4151b1ad145f 11-Mar-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer] Discard work + misc fixes
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
542d7dec7b8748b164150bd0818e880ed31918e3 10-Mar-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer] remove use of BYTE type
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
61beaa22795d45f3416ecb27de54a9ee8ae1b283 09-Mar-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] subcontext rework
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
bfb954189e166cee8b748edc29f5751d0c97c608 29-Feb-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer] Add rdtsc buckets support for shaders

Pass pointer to core buckets mgr back to sim layer.

Add support for RDTSC_START/RDTSC_STOP macros in the builder.

Each unique shader now has a unique bucket associated with it,
enabling more detailed reporting at the shader level. Currently
due to some llvm issue with thread local storage, 64bit runs require
single threaded mode.
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
abd4aa68cc1a7d8a20547069c617388eedb3673e 24-Feb-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] backend reorganization
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
45f0ce168ce21a7a95f48d3164e42a947732b896 20-Feb-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] RingBuffer class for DC/DS

Use head/tail ring buffer indices for thread synchronization.

1. SwrWaitForIdle loops until ring is empty. (head == tail)
2. GetDrawContext waits until ring is not full. (head - tail) == Ring Size
3. Draw enqueues by incrementing head.
4. Last worker thread to move past a DC dequeues by incrementing tail.

Todo: To reduce contention we can cache the tail in the API thread. For
example, if you know you have 64 free entries in the ring then you don't
need to keep checking the tail until you used those 64 entries.
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
45a4afa634bdca2b1147a76b74ed15a690b7a014 18-Feb-2016 Tim Rowley <timothy.o.rowley@intel.com> swr: [rasterizer core] Split all RECT_LIST draws into 1 RECT per draw

Needed until proper RECT_LIST PrimAssembly code is written.
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp
c6e67f5a9373e916a8d2333585cb5787aa5f7bb7 17-Feb-2016 Tim Rowley <timothy.o.rowley@intel.com> gallium/swr: add OpenSWR rasterizer

Acked-by: Roland Scheidegger <sroland@vmware.com>
Acked-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/swr/rasterizer/core/api.cpp