Age | Commit message (Collapse) | Author |
|
Change-Id: I0ab7382f11bf8022afb9ccc97d60fd102ed2d915
|
|
Change-Id: I0334f563d0c62793407ce35c948edd2acf80a893
|
|
Change-Id: Ie1704bd65614ae6fd5c013adc216c179897590fc
|
|
replay.Context is used as a map key to form replay batches.
Equality is broken by paths, as they are pointers.
Change-Id: I03ac9ec2f0a77c0fe925594ddcf80ca12b2717a0
|
|
Also replace the three bitfileds with on GLbitfield.
Change-Id: Iacf49dac1db2c14dbe2f314efa64ec01ef48fc88
|
|
Change-Id: I78a5b9451dcfab432985d8cda79c314ce926a543
|
|
Use paths and Get instead in all cases.
Change-Id: I227d1edffa7186f7a3f78818c3b09364d3187a52
|
|
Change-Id: Iab9ca6b490011fafce6860cb60f825b9f4603e26
|
|
Helps simplify a bunch of GAPIS and GAPIC logic.
Change-Id: I194442806b600d65d56ce71920c04afd4a4805b7
|
|
Change-Id: I25b5ccdf8382636de69e907918bf8332d7b69d0b
|
|
Change-Id: Id7ff58ea768ebc29e442cbc09d054e06d2ebae19
|
|
This is non-trivial with memory observations, and is easy to get wrong.
Change-Id: I8bb5b70fc3e68cf80652d07e7c750f4a76722c69
|
|
Add test for the compareImages function.
Change-Id: I0b5ef285b76657771a1cee0ea9619ae40c34fb17
|
|
* Implemented GAPII (C++) Slice and Pool types.
* Implemented GAPIS (Go) Slice and Pointer types, and renamed
memory.Memory to memory.Pool.
* Go slices also keep information about the root pointer from which they
were formed. This is used to build mapped memory regions
* Added device.Architecture to centralize all the information about
pointer size / alignment, integer size and byte ordering.
* All read and write memory observations are now part of each atom.
* Resource atoms have been removed.
* APIC / template changes:
* GetArrayParamCount has been removed.
* All intrinsic functions and operators that take integers
(make, slice, index) now automatically cast to u64.
* string <-> char[] casts now need to be explicit as they incur a
allocation and copy cost.
* All composite types now have unicode names to avoid name collisions
with other user-named types:
* Pointer: Fooᵖ
* Const pointer: Fooᶜᵖ
* Slice: Fooˢ
* Reference: Fooʳ
* Map: KeyːValueᵐ
* Pointer types will always have a complementary Slice type created
which is accessible via the Slice field of the semantic.Pointer
type. The opposite is also true.
Change-Id: I9c9edc9aed36bb36d88c1a548649a3a2fca5d0c8
|
|
Change-Id: I5ad5361c85975d3446632f859caa45cc6dfea329
|
|
Change-Id: I3820dcb1402e9e17acb665943cb6fc77634d1a6b
|
|
Change-Id: I27cd0bba6cc5a5419e16f99cdcfec2bfb8c05f7f
|
|
Change-Id: I6d0e2817adad070d9b7fe690956b326363524e09
|
|
This is replaced by EGL / WGL / CGL / GLX MakeCurrent atoms, and a
to-be-implemented SwitchThread atom.
Add per-thread and per-context maps into the gles.api file.
Add support for multiple renderers in the replay system:
* replayCreateRenderer constructs a new GL(ES) renderer with an
initially undefined back-buffer format and size. This is emitted
for any observed xglCreateContext call.
* replayBindRenderer makes the renderer active. This is translated
from any observed xglMakeCurrent call.
* backbufferInfo is a hint atom produced by the spy when the format
and size of the back-buffer is first known or changes. The replay
system uses this hint to correctly readjust the currently bound
renderer.
Shuffled go packages a little:
* Removed gfxapi/state/state.go. This has been simplified and
absorbed into gfxapi.State.
* Added Mutate(*gfxapi.State) to the Atom interface.
* Moved GetFramebufferAttachmentSize from the state.Context
interface to the API interface.
* Moved the replay methods ColorBuffer, DepthBuffer and TimeCalls
from the API interface to the interfaces replay.QueryColorBuffer,
replay.QueryDepthBuffer and replay.QueryCallDurations.
These methods are implemented by the API but have to be
dynamically cast. This makes more sense as some APIs may not
support the full set of replay functionality.
Change-Id: I0a6e71a43e5289fd5d3044e8856972661d440aad
|
|
- Add a contextID first argument for NewAtom methods.
- Update all transforms and tests to explictly specify context IDs.
- Prevent all @synthetic methods from using getState().
Change-Id: Id0ca7f4742e41d3693879e57b157ec25a25d2b3d
|
|
State a struct containing global state (for all contexts) and per-context
state.
State mutation is no longer performed by a dedicated state mutator object,
but by each atom. The same is now true for replay.
The RPC api has been simplified due to these structural changes. Java
still need to be updated.
All of this will allow things like EGL to be separated from the GLES contexts.
Change-Id: Ie7555731afff3618dba60fa6685dd9d1adb55900
|
|
Change-Id: Ie63d687e26dae59fb8119cc6ed39ea882807b2a2
|
|
Change-Id: I844d2593033650d6c788a8b1a89c7349b6c5c0b8
|
|
It seems like the back-buffer on Windows (which produced the
reference images) did not have an alpha channel, and glReadPixels
would emit a 0xff for alpha.
Given that the test was claiming these were 'solid-red',
'solid-green' and 'solid-blue', I've fixed the test to clear with
[1,0,0,1], [0,1,0,1] and [0,0,1,1] respectively.
Change-Id: Ia1dfcf5891c2692c11a0fc6624d0f3b15dacba19
|
|
Improve error handling and reporting based on these tests.
Change-Id: I108dac34c5b41e3dd5aa73143443e76b5ddd9b8e
|