Граф коммитов

9 Коммитов

Автор SHA1 Сообщение Дата
Courtney Goeltzenleuchter b5992a55c3 Add capture support for FenceSync
This allows us to capture Angry Birds 2 traces.

Bug: b/153652100
Change-Id: I99a47f9e41a84218b3bb3d9740df4bb7fc2a01fa
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2144763
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
2020-04-22 13:02:26 +00:00
Jamie Madill a576e0d41c Capture/Replay: Only convert GLES 2 GLenums to string.
Previously the enum conversion script would convert all enums in gl.xml
including those for desktop GL. When replaying from a CPP file we would
sometimes try to use enum values that only are exposed in desktop GL.

One example is GL_TEXTURE_MAX_ANISOTROPY/GL_TEXTURE_MAX_ANISOTROPY_EXT.
GLES only has the "EXT" version. Desktop uses the core version. This
was breaking a replay sample that used the EXT enum.

Fix this by a) including the anisotropy extension in registry_xml and
b) updating the enum script to only parse GLES 2 entries. In the future
we could improve the situation by auto-generating a header that defines
exactly the enums we need for ANGLE.

Also updates the enum helper to use uppercase enum values.

Bug: angleproject:3611
Change-Id: I1e01608bc8af282dc078d5a19ac4eba659c96b57
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1894143
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
2019-11-03 00:47:41 +00:00
Jamie Madill e96039218e Capture/Replay: Correct a few GLenum replay issues.
This change refactors the GLenum utils into a non-autogenerated and an
autogenerated portion. That makes it easier to modify the non-auto-
generated bits to properly output GLenums even when the gl.xml data
isn't totally correct. For instance, the "GetPName" group was missing
a bunch of queries. Instead of trying to fix the GL we can simply fall
back to querying the "Default" group when we return invalid enum.

Also corrects a missing "0x" on hex output.

Also allows the capture/replay sample to specify the correct binary
data directory when testing a replay.

Bug: angleproject:3611
Change-Id: I8e4c690b2850bb157a8cde8b057b20603e4b177d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1891008
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2019-11-01 00:08:02 +00:00
James Darpinian acf66fdd4e Fix registry_xml.py dependency
registry_xml.py was not included in gen_gl_enum_utils.py inputs.
gen_gl_enum_utils might not run when it should because of this missing
dependency.

Discovered in https://chromium-review.googlesource.com/c/angle/angle/+/1838418/6/src/libANGLE/gl_enum_utils_autogen.cpp#1810

Bug: angleproject:4000
Change-Id: Ib98df7046a59800c102be54b44f46a203ba77c42
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1857645
Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2019-10-15 01:05:08 +00:00
Jiacheng Lu d0e56cc642 Add fallback to write GLenum as hex in capture
1. Add extension 'GL_ANGLE_program_binary' to registry_xml.py, this
extension brings enum 'GL_PROGRAM_BINARY_ANGLE' which ANGLE already
supports.
2. Add a fallback for converting GLenum and GLbitfield to string, for
any GLenum value not found in the conversion table, write out its hex
value instead of 'EnumUnknown'. It prevents GLenum from some
unregistered extensions breaking the frame capture.

Bug: angleproject:3804
Change-Id: I36a676305fbbcff2173bbc9f818ff589abe51434
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1775028
Commit-Queue: Tobin Ehlis <tobine@google.com>
Reviewed-by: Tobin Ehlis <tobine@google.com>
2019-09-05 09:49:49 +00:00
Jiacheng Lu 9e14a19bb8 EVENT trace to print GLenum as string reland
Reland of CL https://chromium-review.googlesource.com/c/angle/angle/+/1737141

Bug: angleproject:3778
Change-Id: I2a43c618de032d6e6286d707fbc88241ad4c19ce
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1745837
Commit-Queue: Jiacheng Lu <lujc@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2019-08-12 18:58:35 +00:00
Yuly Novikov 08b1e66011 Revert "Enable EVENT trace to print GLenum as string"
This reverts commit 048547e743.

Reason for revert: crashes on Debug bots (at least Mac)

Original change's description:
> Enable EVENT trace to print GLenum as string
> 
> Bug: angleproject:3778
> Change-Id: Ib3a4bd6ba631e0165d571789bbfab9b4b1905d8d
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1737141
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Tobin Ehlis <tobine@google.com>

TBR=tobine@google.com,jmadill@chromium.org,lujc@google.com

Change-Id: Ib72f932f9b99bf981399759b17cec456b3ffafc1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:3778
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1745835
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
2019-08-09 15:31:32 +00:00
Jiacheng Lu 048547e743 Enable EVENT trace to print GLenum as string
Bug: angleproject:3778
Change-Id: Ib3a4bd6ba631e0165d571789bbfab9b4b1905d8d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1737141
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
2019-08-09 13:03:35 +00:00
Jiacheng Lu f3dbf0a7ae FrameCapture dump GLenum to enum instead of value
Add functionality to capture GLenum and GLbitfield parameters as enum
names instead of values.

Bug: angleproject:3611
Change-Id: I7ddc21093d44d1480b205563f30d89f82779b1f1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1724460
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2019-08-05 21:10:13 +00:00