|
74d4bf98
|
2019-11-26T15:34:11
|
|
Remove !empty() assert on FastVector::data()
The user of the API is allowed to call data() on an empty vector.
Bug: 1026414
Change-Id: I41ea65c50b94115ace7930d75cd8f14782548d6c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1937807
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@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>
|
|
20c01390
|
2018-09-19T15:43:28
|
|
Fix FastVector::resize when count < size.
Also update a test to trigger the bug.
Bug: angleproject:2763
Change-Id: I8e6735320a34dcc4cc8beee1b7a22b768912f24f
Reviewed-on: https://chromium-review.googlesource.com/1234338
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
bf7cfbea
|
2018-09-19T03:56:20
|
|
Re-land "Add FastVector for simple dynamic vector cases."
Re-land fixes memory leak and adds inline to a few more methods.
This optimized vector keeps an initial fixed size storage but has
unbounded growth like a normal std::vector. It operates like a
FixedVector initially but then switches the storage to an allocated
pool when the element count exceeds the array limit.
This gives fast performance in the small case since no dynamic
allocation is needed. It also handles the "slow" big case.
Bug: angleproject:2763
Change-Id: Ib3cc7b652a14ed346528bf15820023ab0b5317ce
Reviewed-on: https://chromium-review.googlesource.com/1233453
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
dc8fb937
|
2018-09-19T01:35:59
|
|
Revert "Add FastVector for simple dynamic vector cases."
This reverts commit 4d45e7dc7553b071b0c2a054bdb59bfd844012fe.
Reason for revert: Memory leak detected during roll in https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_chromium_asan_rel_ng/101750
Original change's description:
> Add FastVector for simple dynamic vector cases.
>
> This optimized vector keeps an initial fixed size storage but has
> unbounded growth like a normal std::vector. It operates like a
> FixedVector initially but then switches the storage to an allocated
> pool when the element count exceeds the array limit.
>
> This gives fast performance in the small case since no dynamic
> allocation is needed. It also handles the "slow" big case.
>
> Bug: angleproject:2763
> Change-Id: I9c002b205bd4ac9fc171d1fdc42bc8ea5fe8dabe
> Reviewed-on: https://chromium-review.googlesource.com/1227794
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
TBR=ynovikov@chromium.org,jmadill@chromium.org,syoussefi@chromium.org
Change-Id: Iaec76244cc736a8469b80bfc8534fb0fd6c49e11
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:2763
Reviewed-on: https://chromium-review.googlesource.com/1232978
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
4d45e7dc
|
2018-09-18T11:32:41
|
|
Add FastVector for simple dynamic vector cases.
This optimized vector keeps an initial fixed size storage but has
unbounded growth like a normal std::vector. It operates like a
FixedVector initially but then switches the storage to an allocated
pool when the element count exceeds the array limit.
This gives fast performance in the small case since no dynamic
allocation is needed. It also handles the "slow" big case.
Bug: angleproject:2763
Change-Id: I9c002b205bd4ac9fc171d1fdc42bc8ea5fe8dabe
Reviewed-on: https://chromium-review.googlesource.com/1227794
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|