|
124f78c2
|
2019-06-18T11:48:24
|
|
Remove gl::Context parameter from Observer functions.
It was only used in exactly one instance in VertexArray. Instead we can
cache a bool and avoid needing to pass it around.
Will make signaling dirty easier in the Vulkan back-end.
Bug: angleproject:3539
Change-Id: Ia570aec051a24a5280df49edc4345c54022b46ec
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1663838
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
cf9383ed
|
2019-01-31T19:52:49
|
|
Optimize VertexArray::bindVertexBufferImpl.
Reduces the buffer nullptr checks to a single location. Also optimizes
how the transform feedback binding counter is changed.
Improves the score of the draw call vertex array change test.
Bug: angleproject:3014
Change-Id: I08ff341e08194a407c24143965a3d568e92b97b7
Reviewed-on: https://chromium-review.googlesource.com/c/1406891
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b980c563
|
2018-11-27T11:34:27
|
|
Reformat all cpp and h files.
This applies git cl format --full to all ANGLE sources.
Bug: angleproject:2986
Change-Id: Ib504e618c1589332a37e97696cdc3515d739308f
Reviewed-on: https://chromium-review.googlesource.com/c/1351367
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
cd0a0a3c
|
2018-10-18T18:41:57
|
|
Introduce SubjectBindingPointer.
We can share the same pointer for the subject binding and the binding
pointer. This further allows us to optimize buffer re-binding. The
shared memory increases cache coherency and reduces the number of
instructions needed.
Bug: angleproject:2891
Change-Id: Id3162fa79de203f75989e7289ea02cb2ea1bec73
Reviewed-on: https://chromium-review.googlesource.com/c/1270217
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
|
|
956ab4d9
|
2018-10-10T16:13:03
|
|
Optimize several functions for the Program perf test.
This gives the same or slightly better performance in the ProgramDraw
perf test. Also only set the Program object as dirty when there are
dirty bits set in the Program itself.
Bug: angleproject:2877
Change-Id: I07b428b40d3e3c24e0a42c970524756b6dc3a30e
Reviewed-on: https://chromium-review.googlesource.com/c/1271475
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
d511948b
|
2018-09-18T11:32:42
|
|
Use FastVector in angle::Subject.
This improves object binding performance. We no longer need to check
two containers when manipulating the bound subjects/observers.
Bug: angleproject:2763
Change-Id: I0ccb2e76be47bd8a28fba5a0c3eff857aa166bb7
Reviewed-on: https://chromium-review.googlesource.com/1227795
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
fcfd3382
|
2018-09-15T22:30:50
|
|
More binding inlining.
Slight performance increase in binding related tests.
Bug: angleproject:2763
Change-Id: I4d14177adab678d596cd34b8f1b99f5309f017f0
Reviewed-on: https://chromium-review.googlesource.com/1227793
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3418fe80
|
2018-04-09T14:08:19
|
|
Optimize Subject's binding method.
Using FixedVector, we can remove the need for dynamic allocation in
most of the use cases. Only when we exceed a certain amount of fixed
storage do we need to spill into the heap.
Bug: angleproject:2389
Bug: chromium:829906
Change-Id: Ib5f7073b58876bfd2400bd87b743bddcee5e5dc8
Reviewed-on: https://chromium-review.googlesource.com/1002884
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
879f90d2
|
2018-03-01T11:45:20
|
|
Vulkan: Avoid recopying the data every time we draw line loops
Use the Observer pattern to get notified when the BufferVk we've copied our data
from is changing. We will only recopy the data if anything has changed, but otherwise
we'll keep drawing with the same index buffer we've created previously.
Bug: angleproject:2335
Change-Id: Ib65677b4d5ec90c46a5e3b975fffd1fddeed59e7
Reviewed-on: https://chromium-review.googlesource.com/948622
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
6f683089
|
2018-02-28T00:35:16
|
|
Rename signal utils to Observer.
This completes the basic refactor to the Observer pattern.
Bug: angleproject:2372
Change-Id: I810deff7c7e39baa64b57ce2a79cd732b1af7c34
Reviewed-on: https://chromium-review.googlesource.com/940862
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
|