|
f4e901b4
|
2023-08-07T10:52:09
|
|
Validate program binaries are the same CPU bit-ness.
ANGLE's program binary serialize/deserialize logic uses size_t and
other non-fixed sized integer types. This can cause crashes if the
CPU architecture changes between saving and loading of binaries.
Bug: chromium:1470074
Bug: angleproject:8223
Change-Id: Ib2529e0e6e66e28a184aa1ec94075e343e1f1d5e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4752265
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
30bd0149
|
2023-08-02T08:06:47
|
|
ANGLETest: fix crashes when switching between GLESDriverTypes
The condition for mLastLoadedDriver was incorrect. We never initialized
it, so it never switched to the correct EGL implementation when
alternating between tests using different GLESDriverTypes.
This was reproducible with:
angle_end2end_tests.exe --gtest_filter="SimpleOperationTest.DrawSingleSampleWithAlphaToCoverage/ES3_D3D11:SimpleOperationTest.DrawSingleSampleWithAlphaToCoverage/ES3_ANGLE_Vulkan_Secondaries_SwiftShader:SimpleOperationTest.DrawSingleMultiSampleWithAlphaToCoverage/ES3_D3D11"
The above does three tests:
- D3D11 test (using GLESDriverType::AngleEGL)
- Vulkan test (using GLESDriverType::AngleVulkanSecondariesEGL)
- D3D11 test (using GLESDriverType::AngleEGL)
What would happen is this:
- the first test would initialize a D3D11 EGLDisplay
- the second test would switch the API entry points to use
AngleVulkanSecondariesEGL
- the third test begins reuses the first test's EGLDisplay, but
fails to notice the GLESDriverType change and uses the
AngleVulkanSecondariesEGL entry points
- when eglQueryString is called with the D3D11 EGLDisplay, the
VulkanSecondaries library has no knowledge of this display and
fails the call
Bug: angleproject:8286
Change-Id: I1f22060e2c5725dad5e410a76385e2802b627844
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4749296
Auto-Submit: Steven Noonan <steven@uplinklabs.net>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
9b63700b
|
2023-07-11T10:25:40
|
|
Translator: Reorganize files
This change makes the translator files more organized by:
- Grouping files that are specific to a certain output under their own
directory,
- Moving transformations under tree_ops
- Removing Direct from metal translation now that that SPIR-V Cross path
is removed
Bug: angleproject:6394
Change-Id: Iaf5bb8d5604b84748dece029821b1f77b2813967
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4678780
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
66c2e4fc
|
2023-07-04T17:02:07
|
|
[ssci] Added Shipped field to READMEs
This CL adds the Shipped field (and may update the
License File field) in Chromium READMEs. Changes were
automatically created, so if you disagree with any of
them (e.g. a package is used only for testing purposes
and is not shipped), comment the suggested change and
why.
See the LSC doc at go/lsc-chrome-metadata.
Bug: b/285450740
Change-Id: I770554248e33c1e50938cc32daee36a83b643ec9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4672125
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
113f847b
|
2023-06-26T12:07:52
|
|
centralize basic OS/platform detection functions
We had multiple different places that defined these, and with varying
naming schemes. Centralize them to be defined in platform_helpers.h.
Also renaming the IsApple(uint32_t) functions to IsAppleGPU(uint32_t) to
avoid ambiguous meaning: "IsApple" should mean "is Apple-vended OS"
while "IsAppleGPU" should mean "is Apple GPU vendor ID".
Bug: angleproject:8229
Change-Id: If4e3fc5ac1b5b8ad416663950a1b2ee912ccad99
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4647291
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Steven Noonan <steven@uplinklabs.net>
Auto-Submit: Steven Noonan <steven@uplinklabs.net>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
21f16cb1
|
2023-06-09T17:30:38
|
|
Disable clang-format on ANGLE features autogen outputs
Updates the script to produce reasonably formatted code without
clang-format.
Autogen files moved to autogen/ sub-directories because clang-format
does not support per-file settings ;(
This allows to run this codegen very quickly
(~50ms on my machine)
Bug: angleproject:8193
Change-Id: Ie84282090d574ebb4debe3edcfd82f983f27a5ff
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4604578
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
02e7f967
|
2023-05-25T14:54:49
|
|
Translator: Remove the "variables" option
Variable collection is invariably enabled by the front-end as well as
other major users of ANGLE such as Firefox. All translator backends
except GLSL force-enable variable collection either way.
This change removes this compile option and enables variable collection
unconditionally.
The flag itself remains in ShCompileOptions until references to it are
removed from Chromium.
Bug: chromium:1447314
Change-Id: I4d3b30c1bfbd345c5ad269abc62c0a6a59de2f56
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4568524
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
409bf134
|
2023-05-23T00:00:00
|
|
Metal: Adjust iOS and macCatalyst caps
* Fix swapped iOS and macCatalyst versions for
EXT_blend_func_extended and EXT_depth_clamp
* Always use 13.1 as the lowest macCatalyst version
Bug: angleproject:8121
Bug: angleproject:8047
Bug: angleproject:8015
Change-Id: I1f117de259d211cb8ce2463df59f8fee0e709ef5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4568323
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
b526112d
|
2023-05-12T11:31:06
|
|
Tests: include system EGL configs for ES3.1 and ES3.2 tests
These are enabled with angle_test_enable_system_egl=true
Example:
[ OK ] ProgramPipelineTest32.CreateProgramWithTransformFeedbackVarying/ES3_2_EGL (280 ms)
Bug: b/278585075
Change-Id: Ic991b3bc6fa36a6856b28fcfc7a433ac183a2c4d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4526358
Commit-Queue: Roman Lavrov <romanl@google.com>
Auto-Submit: Roman Lavrov <romanl@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
a88635c4
|
2023-04-28T18:54:25
|
|
Android logs also go to stdout/err, line-buffered if possible
Currently logs like WARN() or INFO() only go to logcat, which doesn't
make them visible in console. This change makes them go to both logcat
and stdout/err.
Fix android_helper choking on missing json data output when test crashes
and test runner doesn't have a chance to produce that file. We still
have the stdout/err in this case, so print it. However, a crash
(such as SIGSEGV or __builtin_trap()) doesn't flush output so the
non-flushed part of the buffer doesn't get in there.
AngleNativeTest redirects stdout/err to a file which enables
fully-buffered (stdlib) mode. Change this to line-buffered when
stdout path is set to /data/ (/sdcard/ is slow) and use
/data/data/com.android.angle.test/tmp/
as the temp path in android_helper.
This makes e.g. FATAL() << "message"; show up in the logs in CI or local
runs. This currently only applies to trace and perf tests,
other tests will continue using fully-buffered
/stdout/ as chromium's test_runner uses /sdcard/Download/
for temp files.
Bug: b/276742336
Change-Id: Ia622c610f776f501223b0cca11d5ec1976eb9887
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4493463
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
f507fe05
|
2023-04-06T12:27:00
|
|
Rename PLATFORM_IOS to PLATFORM_IOS_FAMILY
The current define ANGLE_PLATFORM_IOS actually means
"iOS or tvOS or WatchOS or MacCatalyst".
The current define ANGLE_PLATFORM_WATCHOS means nothing.
The current define ANGLE_PLATFORM_APPLETV means nothing.
Replace PLATFORM_IOS and its uses with PLATFORM_IOS_FAMILY, so that
then PLATFORM_IOS can be reintroduced and others can be fixed.
Replace PLATFORM_IOS_SIMULATOR and its uses with
PLATFORM_IOS_FAMILY_SIMULATOR for consistency.
Use consistent `#if X` notation instead of `#if defined(X)`.
Bug: angleproject:8121
Change-Id: Ibe668c2ae9bb801d15e036fcf1dfd53f22c30787
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4404161
Reviewed-by: Dan Glastonbury <djg@apple.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
b26b01a2
|
2023-03-09T00:00:00
|
|
Implement EXT_render_snorm
Bug: angleproject:8048
Change-Id: Id01beaea9565f8ab374c732fef70ec0ac0d8743e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4334303
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
ca2378b7
|
2023-03-08T18:44:58
|
|
Assert that waitForStep steps go in increasing order.
This should make race conditions like the one in
https://crrev.com/c/4321809 much more obvious from the logs and catch
some of the issues when writing or updates tests.
The test that has to be updated here is an example why we probably don't
want to just replace `== step` with `>= step`
Bug: angleproject:8071
Change-Id: I2c740931046bb5a9115474b7d67f76e9a21c30a4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4322049
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e6ac77d9
|
2023-02-27T16:13:29
|
|
Tests: Enable RunLockStepThreads OpenGL/GLES backend support.
Added "EGL_CONTEXT_VIRTUALIZATION_GROUP_ANGLE" attribute if display
has "EGL_ANGLE_context_virtualization" extension enabled.
Bug: angleproject:8032
Change-Id: I482475950b9d8d63891c74fc832cc13d93921e21
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4291436
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
|
|
bec220f6
|
2022-11-01T22:05:30
|
|
Translator: Fix operand component specifications
Before this change, TIntermConstantUnion::foldUnaryComponentWise always
used the first operand component for some operators. Use the operand
component corresponding to the result component.
Bug: angleproject:7801
Change-Id: I99a941a9eee0c10a4bcb3f515aa5cbf5accc0d52
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3996520
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Auto-Submit: 小田喜陽彦 <akihiko.odaki@gmail.com>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
968c429e
|
2023-01-04T14:18:11
|
|
Tests: Use ISOLATED_OUTDIR for test artifact directory.
This should fix the missing CAS outputs on the bots.
Bug: angleproject:7926
Change-Id: Id09e5ccc19a454e2c0bf63076788187f3c7ef24f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4135158
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Auto-Submit: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
056f8044
|
2022-10-11T11:58:20
|
|
Perf tests: write metrics to file and read from merge script.
The idea behind is to save metrics in a structured output with
full context so that we don't have to parse stdout and
reconstruct that context (e.g. which test was running when
the output was printed etc).
Note: we already have a "histogram" file (addHistogramSample)
written but it is structured using some UUID-based ids making its
digestion more complicated (https://anglebug.com/7299#c3).
This CL just writes events as one-json-per-line
simplifying downstream handling and debugging.
Just a sanity check / logging in the merge script for now.
Bug: angleproject:7299
Change-Id: I56dada643eceef180ce9bb1aa9ae6a641ea41e4c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3945112
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
4a8bc146
|
2022-12-29T17:26:05
|
|
Skip angle_restricted_trace_gold_tests.car_chase asserts on Pixel 6
Assert failed in setSerial
Bug: angleproject:7916
Change-Id: I05a91cfd29194e29e6c512c9001c064951dcf466
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4127959
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
fe704fb5
|
2022-12-27T18:34:43
|
|
Crash end2end tests when loading driver library fails
Switch from GTests's ASSERT_NE(),
which allowed to continue execution and hid the error from Swarming,
to ANGLE's ASSERT(), which makes bots to report this error.
Bug: angleproject:7885
Change-Id: I7937a9419f3fbfd9f6ab2d696e40771bde763a1e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4126355
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
54176f07
|
2022-12-08T15:58:05
|
|
Better support for "vulkan-null" backend in trace tests.
This allows running the "null" Mock ICD with the Vulkan
secondaries version, and allow you to specify "vulkan-null"
as an ANGLE back-end generally.
Bug: angleproject:7852
Change-Id: Id8c59a167345a6079bd71916ae6ef9c41a6039a7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4089449
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Jamie Madill <jmadill@chromium.org>
|
|
aaee3c23
|
2022-11-30T14:24:13
|
|
Build and test ANGLE with Vulkan secondary CBs.
This will allow us to run tests with both permutations of
ANGLE (custom secondaries & Vulkan secondaries) in the same
build directory. It will also allow us to run these configs
as tests on our infra. This CL adds a few simple test to CI.
Bug: angleproject:6811
Change-Id: I053f8cc5bafc2a7ab7d0665da9301f0ba7f8417f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4067806
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c991eb22
|
2022-12-01T14:05:07
|
|
Move the anglebase folder up a level
This code originates from Chromium's base/ directory so it doesn't have
to be under a third-party folder.
Bug: b/260093525
Change-Id: I0bf6950095c685f36c5c237093980a64cf6e74f0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4068339
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Nicolas Capens <nicolascapens@google.com>
|
|
d8d85253
|
2022-11-15T12:38:05
|
|
Add gFixtures.clear() to ReleaseFixtures
Not necessary as we only call it on termination but if ReleaseFixtures
is called for e.g. eviction testing, it leaves bad state behind.
Bug: b/258723409
Change-Id: I345c9197742f78ec952cacecdc9ba55b518f9f53
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4024757
Auto-Submit: Roman Lavrov <romanl@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
f67d1224
|
2022-11-15T10:55:50
|
|
Delete osWindow and eglWindow in ReleaseFixtures
valgrind rightfully reports these as leaks
Bug: b/258723409
Change-Id: I02dbd771c6f7bd9e7df2269c77d8bd95af593044
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4025992
Auto-Submit: Roman Lavrov <romanl@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
d13c14d0
|
2022-11-11T10:32:13
|
|
Crash with a mesage when OSWindow::New returns nullptr
Happens when !IsX11WindowAvailable()
Bug: b/258723409
Change-Id: Ib16f7ffa9c9cd7ca75cb5659ae393b87d1e96326
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4023025
Auto-Submit: Roman Lavrov <romanl@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a9868110
|
2022-09-15T17:29:04
|
|
Add support for testing with Mesa + Zink.
To run a trace test with zink, use --use-gl=zink.
Bug: angleproject:7689
Change-Id: I70073756f903db1c224fe6175d55be4cad637aca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3899382
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
e495e7fd
|
2022-10-14T13:52:47
|
|
Redo perf and trace test parameters.
- Moves common argument parsing code into test_util.
- Changes the perf test arg parsing to use the common functions.
- Adds new --use-angle and --use-gl parameters to the trace tests.
- Also adds new --offscreen and --vsync parameters to the traces.
- Removes the now unneeded --enable-all-trace-tests argument.
- Both --arg=value and --arg value work in test suites now.
Now, instead of using --enable-all-trace-tests you can specify the
backend with --use-angle=swiftshader, --offscreen, or combinations
of those parameters. The test names are the same as they were
before, but only the configured tests will run in a session. We
could opt to simplify the test names in later CLs if we want to
simplify the test running. Ideally we'd keep the perf reporting
the same because then we'd keep the time series the same on the
test infra.
This also allows us to split up the trace tests into separate
targets on the bots, which will better allow us to control the
workloads and sampling of the tests. For example:
- angle_perftests becomes
- angle_perftests (microbenchmarks)
- angle_trace_perf_vulkan_tests (traces with vulkan back-end)
- angle_trace_perf_native_tests (traces with system GL)
Bug: angleproject:7755
Change-Id: I537168f3a6de96425dfda05ed98220eff9b19b76
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956937
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
5b3781ec
|
2022-10-03T16:09:35
|
|
Remove namespacing from all ANGLE loaders.
This will make it easier to work with pure C files.
Bug: angleproject:7731
Change-Id: I2fe9af486af5f339d973c9149f082eb1f2efa8c4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3925426
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6f037273
|
2022-09-28T18:46:13
|
|
Make last lines of batch stdout more visible in logs.
So that it looks like this:
https://gist.github.com/romanl-g/dd0d2f7e0eddf16fd802bed97789024c
Bug: angleproject:7708
Change-Id: Ic92a9de6cba24637119ae9041e9126364d414948
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3923459
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Auto-Submit: Roman Lavrov <romanl@google.com>
|
|
2debd07d
|
2022-09-21T11:40:18
|
|
Automatically query status of features for tests
Now tests can skip based on what features exist, compared to what
features are explicitly asked for. For example, a test suite may
override-enable a (normally disabled) feature that depends on a hardware
capability. With this change, it can be skipped if said hardware
capability doesn't exist.
As a bonus, tests now correctly skip if the feature is overriden through
an environment variable. This change also cleans up
VulkanPerformanceCounterTest tests which did the same for a number of
specific features.
Bug: b/243398683
Change-Id: I84f026e3394eab56fd123e02bee72720c7ed94c6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3909789
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
b9df95ff
|
2022-09-06T18:19:32
|
|
Add option to enable System EGL on all test configs
Introduce angle_test_enable_system_egl build option
to enable ES1_EGL, ESL2_EGL and ES3_EGL on all test
instantiation macros. This allows GLES 1.x tests to
run on native drivers.
Test: angle_end2end_tests --gtest_filter="*/ES1_EGL"
Bug: angleproject:6201
Change-Id: I6981eb9e99f0cdbd030319f014a7b371ced7e1e7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3812046
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Constantine Shablya <constantine.shablya@collabora.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
955adb77
|
2022-08-12T10:14:48
|
|
Cache compiled shader
By storing the compiled shader in the blob cache, the time to
recompile the same shader is reduced.
Based on work by <hckim.kim@samsung.com>
Bug: angleproject:7036
Change-Id: I884ae40e715c49a9ccd12903012e8327811e3557
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3808235
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
87ed2c9d
|
2022-08-11T11:19:17
|
|
TestSuiteTest: Generate more unique result file names.
Speculative fix for flaky runs of TestSuiteTest. Flakes appear to read
the results of other tests suggesting rand is not unique enough to
protect against tests generating the same results file.
Bug: chromium:1352134
Change-Id: Icadf64c557e23e6d87fd18aa60aa48373ecec9fd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3827144
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
3d0faa02
|
2022-08-09T16:48:06
|
|
Remove workaround affecting --list-tests --gtest_filter=X.
One of the multiple workarounds added in https://crrev.com/c/3062240.
It makes `--list-tests --gtest_filter=X` behave as if it was just
`--list-tests`. Not sure why this was necessary, bots appear to work
without it?.. Could be something that changed since that CL?
Bug: angleproject:7508
Change-Id: I9988add40ddf3168e00cea2739e5a9209f633161
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3821374
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
6d0452b7
|
2022-08-10T13:34:29
|
|
Fix ANGLE_HAS_HISTOGRAMS following crrev.com/c/3817602
Bug: angleproject:7299
Change-Id: I1d6f97e61dfdbea04009cc08a17344a59e438e51
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3823618
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
dc82ff15
|
2022-08-08T16:06:13
|
|
Add config angle_maybe_has_histograms to angle_perftests_common.
ANGLE_HAS_HISTOGRAMS wasn't consistently defined in compilation targets.
I was working on a prototype and ran into crashes due to an inline
function in TestSuite (where this class is used) getting invalid
offsets in some cases due to this :-O
Shabi:
"""
angle_source_set makes something the equivalent of a temporary .a,
so objects are not recompiled for every target that links to it
"""
Also change ANGLE_HAS_HISTOGRAMS to =1 or =0 as Yuly suggested so that
we can check if it's defined in the header to avoid inconsistency.
Bug: angleproject:7299
Change-Id: I907184a6ca2bc673f5bffc473b584d78625a11c8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3817602
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Roman Lavrov <romanl@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
6f80f0f0
|
2022-08-06T02:29:19
|
|
Translator: Clean up the compile flag passing interface
Historically, compile flags were sent to the translator as a bitmask.
Recently, we were getting close to running out of bits. Additionally,
direct-to-metal work had started to introduce constants to be passed to
the translator, which were misplaced in ShBuiltInResources and Caps.
Recent work on Pixel Local Storage adds even more constants, aggravating
the situation.
In this change, the interface to passing compile flags is reworked. A
struct is passed (instead of a bitmask) that has one bit for each flag.
This can be indefinitely extended. Additionally, the constants needed
by metal and PLS are also placed in this struct. In turn, the backends
can set these options directly, and don't have to hack them into Caps to
further get hacked into ShBuiltInResources.
Bug: angleproject:7559
Change-Id: If93f1e1b8818ad3a0ac708ab04ab93b4b397d114
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3812562
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c54ed790
|
2022-07-21T10:38:47
|
|
Get desktop GL conformance tests to build
The target for these tests is angle_deqp_gl_tests.
Bug: angleproject:7533
Change-Id: I290822671d99da020f9a6a1f02bee43987644bf9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3766435
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
448e2275
|
2022-07-21T16:40:59
|
|
(Reland) [Metal] Disable ANGLE's Metal backend on older GPUs.
Disable creation of EGL_PLATFORM_ANGLE_TYPE_METAL_ANGLE displays on:
iOS: MTLGPUFamilyApple2 and older (A8 and older GPUs)
macOS and Mac Catalyst: MTLGPUFamilyMac1 and older
This is a partial integration of this recent WebKit fix:
https://bugs.webkit.org/show_bug.cgi?id=242764
Refactored to eliminate duplicate copies of this code between libANGLE
and the test suites.
Changes since initial landing:
- Explicitly link the angle_common static library against
Metal.framework for the definition of MTLCreateSystemDefaultDevice,
which was missing on the iOS Simulator.
Fixed: angleproject:7514
Change-Id: I25028a298f1235db5b717ac6a1999552121d60c6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3806252
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
8eaa0ccf
|
2022-08-02T12:03:21
|
|
Revert "[Metal] Disable ANGLE's Metal backend on older GPUs."
This reverts commit cc2095d259222de434af06ce8515f17449a8f66d.
Reason for revert: breaks rolling into Chromium
https://ci.chromium.org/ui/p/chromium/builders/try/ios-simulator/1234241/overview
Original change's description:
> [Metal] Disable ANGLE's Metal backend on older GPUs.
>
> Disable creation of EGL_PLATFORM_ANGLE_TYPE_METAL_ANGLE displays on:
> iOS: MTLGPUFamilyApple2 and older (A8 and older GPUs)
> macOS and Mac Catalyst: MTLGPUFamilyMac1 and older
>
> This is a partial integration of this recent WebKit fix:
> https://bugs.webkit.org/show_bug.cgi?id=242764
>
> Refactored to eliminate duplicate copies of this code between libANGLE
> and the test suites.
>
> Fixed: angleproject:7514
> Change-Id: I00dd1096bc8e72516f3f77fffcb7d4a886d6f2e4
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3780876
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Change-Id: If1e78ebc0c8e12a1fa0954d91bdd59fbd734251f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3804879
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
|
|
cc2095d2
|
2022-07-21T16:40:59
|
|
[Metal] Disable ANGLE's Metal backend on older GPUs.
Disable creation of EGL_PLATFORM_ANGLE_TYPE_METAL_ANGLE displays on:
iOS: MTLGPUFamilyApple2 and older (A8 and older GPUs)
macOS and Mac Catalyst: MTLGPUFamilyMac1 and older
This is a partial integration of this recent WebKit fix:
https://bugs.webkit.org/show_bug.cgi?id=242764
Refactored to eliminate duplicate copies of this code between libANGLE
and the test suites.
Fixed: angleproject:7514
Change-Id: I00dd1096bc8e72516f3f77fffcb7d4a886d6f2e4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3780876
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
|
|
08df7ce4
|
2022-07-28T10:59:30
|
|
Test Runner: Disable --bot-mode on Fuchsia.
This flag is a bit hard to get going because of the differences in
the Fuchsia system APIs. Disable it explicitly for now to avoid
issues when we switch bot configs.
Bug: angleproject:7312
Change-Id: I47cd038b198f265a6b60893faf6f50f02be49fda
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3792163
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
b8e741d2
|
2022-06-23T13:36:17
|
|
Vulkan: allow selecting render device by PCI device/vendor IDs
The EGL_ANGLE_platform_angle_device_id extension is deliberately vague
about the meaning of "device ID high" and "device ID low", stating it's
platform-specific. We can use these for representing the PCI
device/vendor IDs that can be discovered via various (OS-specific)
external means.
Bug: angleproject:7460
Change-Id: Iff462687749e815fa074ef8ff392b6730ef46fa8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3720733
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
b968b6c9
|
2022-07-26T14:34:41
|
|
Test Utils: Get executable path from command line.
This simplifies the process fork test and will allow the test to
work on Fuchsia.
Bug: angleproject:3161
Change-Id: I5bb5424c44957f2faef1970b3cbc5e52b8aff630
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3788297
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
2b43d630
|
2022-07-22T14:19:05
|
|
Remove unused (and incorrect on Android) mTestSuiteName.
On Android it ends up being just: _
Bug: angleproject:7299
Change-Id: I3dabcfcbacc3f43338b6fa91ebd9917e43f783ce
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3780587
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
115d8361
|
2022-07-21T13:59:48
|
|
Switch Linux Intel testing to UHD 630 GPU
Replacing 0x5912 HD 630 with 0x9bc5 UHD 630.
Also updating Mesa from 19.0.2 to 20.0.8.
Since no problems were observed on the new configuration during the
experiment, removing max-processes and flaky-retries workarounds.
Bug: chromium:1342945
Change-Id: I51150092c67802ffd54796dd3b067cd6473dfb86
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3780922
Reviewed-by: Roman Lavrov <romanl@google.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
82ff27bf
|
2022-07-08T12:38:41
|
|
Add Metal to the perf tests
Bug: angleproject:7296
Change-Id: I69cd17c464d48b933c51466bf9d21c278438c4e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3753277
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
916a35dd
|
2022-06-28T14:40:53
|
|
Merge getTempPath and CreateTemporaryFile
Also includes moving these two (and some helpers) to
common/system_utils.h
Bug: angleproject:5095
Change-Id: I7d2fcbd27a67dc13215265ac5b5e8391b15a980b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3733519
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
785353fd
|
2022-05-24T12:40:16
|
|
Support Desktop OpenGL context creation in end2end tests
Validation of Desktop GL versions and profile masks is unimplemented.
Bug: angleproject:7360
Change-Id: Ifae94215b6aada895c2b02318a1d05c9515e9b96
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3664916
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
1ae9756e
|
2022-06-22T17:43:15
|
|
Textures: Centralize texture format emulation check
Refactor in order to use the check in multiple places.
Bug: b/236478448
Change-Id: I6df2e0d63c60fa3e8b2d65185fce164be0e7d961
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3719160
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
89e38b57
|
2022-06-22T15:04:08
|
|
Refactor to use ANGLETest vs ANGLETestWithParam
Bug: angleproject:6747
Change-Id: I72ad52d0268eae0e1a401f12f3e94cc5efa402f2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3719002
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
91976352
|
2022-06-21T15:41:02
|
|
Use C++17 attributes instead of custom macros
Bug: angleproject:6747
Change-Id: Iad6c7cd8a18d028e01da49b647c5d01af11e0522
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3718999
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
9a6ae13e
|
2022-06-17T23:42:15
|
|
Vulkan: Enable prerotation on multisample tests
Bug: b/235877059
Change-Id: I3a8b8483d7b478e36328ac402539df99e62c18b2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3708996
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
ca96cba9
|
2022-06-16T11:33:14
|
|
Make ReadEntireFileToString return a std::string.
Note: this makes the method unavailable for export from angle_util,
which is probably why it was designed the way it was in the first
place. However, we import the test utils source file as a static
lib into each test executable and test shared module, so it works.
Bug: angleproject:7404
Change-Id: Ia957268882c2b8529643660d7d4f34d142c0dc43
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3708602
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
5f1d0742
|
2022-06-17T13:11:00
|
|
Increase batch timeout with sanitizer
MemoryBarrierBufferOnlyTest got slow recently
Bug: angleproject:7439
Change-Id: I6f24fa9abb9dcc98ebb8c964860a292e89ec1e19
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3711745
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
|
|
f1c21d68
|
2022-06-04T02:26:36
|
|
Add pixel local storage tests for all supported formats
Bug: angleproject:7279
Change-Id: I92728112f243cccf4e4ab2c5f4c096dcc0536fc2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3654266
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
81585fe2
|
2022-06-08T14:37:38
|
|
Use consistent test names with dEQP.
This removes the GTest/dEQP test name distinction.
Using the "RegisterTests" method in GTest we can use the
full dEQP test names. The one limitation is that "-" is
reserved in GoogleTest for exclusion filters, so we need
to do some extra work to sanitize our filters before we
pass them to GoogleTest.
Makes maintaining test expectations easier going forward.
Bug: angleproject:7390
Change-Id: I23893c425ddc934c11fe539b9173ec06c58abcc2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3695518
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
3dfc8004
|
2022-06-08T14:24:48
|
|
Vulkan: Optimize sync followed by swap
Previously, inserting a sync object immediately caused a submission.
That was done in
https://chromium-review.googlesource.com/c/angle/angle/+/3200274 to be
able to wait until the sync object is signaled without having to wait
for whatever is recorded after it until a flush naturally happens.
Some applications issue a glFenceSync right before eglSwapBuffers. The
submission incurred by glFenceSync disallowed the optimizations that
eglSwapBuffers would have done, leading to performance degradations.
This could have been avoided if glFenceSync was issued right after
eglSwapBuffers, but that's not the case with a number of applications.
In this change, when a fence is inserted:
- For EGL sync objects, a submission is issued regardless
- For GL sync objects, a submission is issued if there is no render pass
open
- For GL sync objects, the submission is deferred if there is an open
render pass. This is done by marking the render pass closed, and
flagging the context as having a deferred flash.
If the context that issued the fence sync issues another draw call, the
render pass is naturally closed and the submission is performed.
If the context that issued the fence sync causes a submission, it would
have a chance to modify the render pass before doing so. For example,
it could apply swapchain optimizations before swapping, or add a resolve
attachment for blit.
If the context that issued the fence sync doesn't cause a submission
before another context tries to access it (get status, wait, etc), the
other context will flush its render pass and cause a submission on its
behalf. This is possible because the deferral of submission is done
only for GL sync objects, and those are only accessible by other
contexts in the same share group.
Bug: angleproject:7379
Change-Id: I3dd1c1bfd575206d730dd9ee2e33ba2254318521
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3695520
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
b9bdc53b
|
2022-06-07T14:50:46
|
|
Make TestEventListener and inner class of TestSuite.
Avoids having to pass dependencies to the class as it's automatically a
friend; external linkage sadly but such is life.
Bug: angleproject:7299
Change-Id: I5726dcab5a1a98b93c0713073cd02d6eb3a8e216
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3693826
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
0260255b
|
2022-06-06T15:10:04
|
|
Fix printing of non-standard renderers.
Bug: angleproject:7396
Change-Id: I18cfadbc58b71259efd414cd7ef90a45719f9b1e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3690736
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4b911686
|
2022-06-06T22:25:37
|
|
Converts from sprintf() to snprintf().
sprintf() is deprecated in Xcode 14, so update to safer equivalents in
order to keep the compiler happy on iOS and macOS.
Bug: chromium:1331345
Change-Id: Id5348088bf69cbd360d9251e6323596cb710666d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3690747
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
0b533e64
|
2022-05-30T13:09:17
|
|
Make GLProgram non-copyable.
This will prevent unexpected glDeleteProgram calls from showing up.
Found when working in FramebufferFetchTest.
Bug: angleproject:7375
Change-Id: Id0f01d693a40edd3357a26fe13e7a7e0c1b98dd8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3673828
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
54a6b76f
|
2022-05-19T07:36:54
|
|
Roll third_party/rapidjson/src/ 7484e06c5..781a4e667 (156 commits)
Bug: chromium:1284275
Change-Id: I5351f6b38ad56da0a5ccae82a1b340dfe2a3c588
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3646003
Auto-Submit: Peter Kasting <pkasting@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Peter Kasting <pkasting@chromium.org>
|
|
66dcca5e
|
2022-05-12T11:14:27
|
|
Vulkan: Dynamic state for depth test/write/op
Bug: angleproject:5906
Change-Id: Ie48a0780406c6dbbdd47639f2e185dc854879140
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3646429
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
62fe36d3
|
2022-05-04T22:46:52
|
|
Vulkan: Emulate YUV built-ins
In this change, the rgb_2_yuv and yuv_2_rgb built-ins are emulated with
normal functions that perform matrix multiplication based on the given
conversion function.
Bug: angleproject:6818
Change-Id: I67adb029109aaf6a674b1ee75105c1b352325eb2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3630599
Reviewed-by: Shahbaz Youssefi <syoussefi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
580f90c7
|
2022-05-12T09:53:17
|
|
Test Runner: Accept Chromium bot mode flag.
This is for compatiblity with Chrome's windowed test launcher.
Bug: angleproject:5417
Change-Id: I3a366b2b8aa895ab996fbcab68a777514038a206
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3644854
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Jamie Madill <jmadill@chromium.org>
|
|
7d31a47f
|
2022-04-23T00:19:15
|
|
Vulkan: Optimize away eglSwapBuffers for single buffer surfaces
For single buffer surfaces, eglSwapBuffers serves two purposes:
- Switch to/from single buffer mode
- Implicitly issue a glFlush
Simultaneously, for single buffer surfaces, glFlush serves three
purposes:
- Submit the commands
- Call queue present (if necessary)
- Throttle the CPU
In this mode, ContextVk::flush() already redirects to the surface,
calling WindowSurfaceVk::swapImpl() which calls back to
ContextVk::flushImpl() (to submit the commands), calls queue present and
throttles the CPU.
If the application calls eglSwapBuffers(), the exact same thing happens
(i.e. WindowSurfaceVk::swapImpl() is called to the same effect).
Calling swapImpl() leads to an addition of the corresponding submit
serial to the "swap history". The CPU throttling code always throttles
the CPU to the serial of two swaps ago.
Unnecessary calls to eglSwapBuffers() (when there is no command to be
flushed) in single buffer mode would thus lead to the CPU throttled to
the end of the last submission, effectively turning into a glFinish().
In this change, eglSwapBuffers() in single buffer mode, when not
switching to/from this mode, is redirected to glFlush() as it's
functionally equivalent. Simultaneously, ContextVk now tracks whether
it has any pending commands for submission at all, and skips glFlush()
altogether if there are none. Together, this results in the unnecessary
eglSwapBuffers() to become no-op.
Bug: b/229908040
Change-Id: I0e3b4a8b7eb4f6b0e0ed22260644825fc67dd330
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3603841
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
6930184e
|
2022-04-27T10:34:28
|
|
Log runTests so that it shows up in logcat dumps.
04-27 14:41:32.303 11507 11538 I NativeTest: runTests: --list-tests
04-27 14:41:32.321 11507 11538 I NativeTest: runTests finished
...
04-27 14:41:34.742 11585 11615 I NativeTest: runTests: --gtest_filter=TracePerfTest.Run/native_trex_200 --verbose --calibration-time 2 --calibration --warmup-loops 2 --isolated-script-test-output=/sdcard/Download/temp_file-cbce720a15e62e25
04-27 14:41:56.628 11585 11615 I NativeTest: runTests finished
Bug: angleproject:7242
Change-Id: I5c03501982d6b268c0dd83d71ce82080fb3c551a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3611063
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Auto-Submit: Roman Lavrov <romanl@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
400d9fe4
|
2022-04-23T01:08:19
|
|
Rename feature files to *_autogen.h
To clarify further that they are not to be edited by hand.
Bug: angleproject:6435
Change-Id: Iaf79706d2b688a43b3ebb65700cfbdd71a49a742
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3603842
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
fcec6904
|
2022-04-13T14:18:06
|
|
Generate feature variable names from display names
The json file now only contains the feature display name. The variable
name is automaticaly derived.
For consistence with Chromium and other Chromium-based projects, the
display name is now always snake_case, and that's what's specified in
the json files. This also makes camelCase variable name generation
trivial (as opposed to the other way around).
Feature overrides now accept both snake_case and camelCase names to
ensure compatibility with existing scripts. This is done by removing _
and comparing override names with feature names in lower case.
Bug: angleproject:6435
Change-Id: I0b6ed2bbf5c312bc4f4be7b3c7d55dbaca2a9886
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3584630
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
64fa1e80
|
2022-04-19T13:18:23
|
|
Revert "vulkan: Call glFinish in VulkanHelper destructor"
This reverts commit aefb2a99ebb598c7b3530056ef3d030b5c4f0115.
Reason for revert: Still flakes:
https://ci.chromium.org/ui/p/angle/builders/try/linux-test/4382/overview
Original change's description:
> vulkan: Call glFinish in VulkanHelper destructor
>
> In async queue mode, GL commands are submitted asynchronously to the
> VkQueue on a separate thread. VulkanHelper destructor uses the VkQueue
> when it calls vkDeviceWaitIdle(), and that's a data race when the queue
> is being used to run GL commands on the other thread. Calling glFinish()
> before any Vulkan commands ensures that the queue isn't being used on
> another thread.
>
> Bug: angleproject:7204
> Change-Id: I509bcf55edf430e39805a9d43c07a902942d33ca
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3587366
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Sunny Sachanandani <sunnyps@chromium.org>
> Auto-Submit: Sunny Sachanandani <sunnyps@chromium.org>
Bug: angleproject:7204
Change-Id: I60e6fc519b21d53619309247fdea32f23375f975
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3594099
Auto-Submit: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
aefb2a99
|
2022-04-14T13:45:42
|
|
vulkan: Call glFinish in VulkanHelper destructor
In async queue mode, GL commands are submitted asynchronously to the
VkQueue on a separate thread. VulkanHelper destructor uses the VkQueue
when it calls vkDeviceWaitIdle(), and that's a data race when the queue
is being used to run GL commands on the other thread. Calling glFinish()
before any Vulkan commands ensures that the queue isn't being used on
another thread.
Bug: angleproject:7204
Change-Id: I509bcf55edf430e39805a9d43c07a902942d33ca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3587366
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Sunny Sachanandani <sunnyps@chromium.org>
Auto-Submit: Sunny Sachanandani <sunnyps@chromium.org>
|
|
8074061d
|
2022-04-09T01:03:53
|
|
Remove feature override platform methods
Instead, the tests now use the enable() functions to override the
feature at platform level.
This fixes the forceFallbackFormat feature mistakenly not having been
tested.
Bug: angleproject:6435
Change-Id: I605e4133407282bd52232887b595af0d2c13575d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3577369
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d4cbd9bf
|
2022-04-11T16:55:39
|
|
vulkan: Mark external memory textures as preinitialized
Textures initialized from external memory objects should be considered
preinitialized so that they're not cleared on first access with robust
resource init. This is essential for Vulkan-GL (WebGPU-WebGL) interop
on Linux where Skia or Dawn could be first used to render into a VkImage
backed by an external memory object, and a GL texture is created lazily
on first GL access.
This CL also includes an end-to-end test for such interop, and changes
to support that test:
1) Add writePixels() to VulkanHelper to upload pixels to a VkImage
2) Detect external memory / semaphore extensions when VulkanHelper is
initialized from ANGLE.
3) Allow importing external memory object that's larger than VkImage
size requirements.
Bug: angleproject:7188
Change-Id: I60c250b64df1766a179edd1cc67c3f0765e8aa0f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3582954
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Sunny Sachanandani <sunnyps@chromium.org>
|
|
797e627e
|
2022-04-08T22:49:51
|
|
Autogenerate list of features as enum
The WithX() and WithNoX() helpers are removed and replaced with enable()
and disable() member functions that take the name of the feature (as a
Feature::X enum constant). This has two benefits:
- Adding tests that override a feature no longer requires additional
helper functions to be written.
- There's no mistaking the feature name.
This change doesn't yet fix the main issue in anglebug.com/6435, but
does fix the following helpers using an old feature name (so they were
ineffective):
- WithMetalForcedBufferGPUStorage
- WithNoVulkanViewportFlip
A follow up would remove the old way of overriding features in tests and
replaces them with the new way.
Bug: angleproject:6435
Change-Id: Ida02b26ec72bc40d7a8938c76a93815bb903ca05
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3580982
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7a9856f6
|
2022-04-05T19:25:26
|
|
Report durations of all flaky retries in JSON test output
Bug: angleproject:7184
Change-Id: I19295daed7b13919a2b528a43ebe8d9cbac9d0a1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3572713
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
8b84cf15
|
2022-03-30T13:42:38
|
|
Tests: Add GFXBench Car Chase trace
Test: angle_perftests --gtest_filter="*car_chase*"
Bug: angleproject:7125
Bug: angleproject:7173
Change-Id: I07069d46351718743e545fc056f41de2b6fe3820
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3561484
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
e7d44541
|
2022-04-01T16:48:55
|
|
Use GTEST_SKIP to set gTest status of skipped tests to SKIPPED.
Example from: angle_end2end_tests_on_Android_device_Pixel_4
Before:
[----------] 1 test from BlendMinMaxTest
[ RUN ] BlendMinMaxTest.RGBA16F/ES3_Vulkan
Test skipped: (IsAndroid() && IsVulkan()) || isSwiftshader().
[ OK ] BlendMinMaxTest.RGBA16F/ES3_Vulkan (116 ms)
"num_failures_by_type": {
"CRASH": 0,
"FAIL": 1,
"PASS": 16966,
"SKIP": 313,
"TIMEOUT": 0
},
After:
[ RUN ] BlendMinMaxTest.RGBA16F/ES3_Vulkan
../../src/tests/gl_tests/BlendMinMaxTest.cpp:191: Skipped
Test skipped: (IsAndroid() && IsVulkan()) || isSwiftshader().
[ SKIPPED ] BlendMinMaxTest.RGBA16F/ES3_Vulkan (117 ms)
"num_failures_by_type": {
"CRASH": 0,
"FAIL": 1,
"PASS": 12067,
"SKIP": 5212,
"TIMEOUT": 0
},
Bug: angleproject:6854
Change-Id: I3335e4e2ae941d43d6a974d9611252e0849bc2c7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3566225
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
7a85d114
|
2022-03-25T15:01:17
|
|
Use [[nodiscard]] on RAII classes
Scoped* classes provide an RAII way of adding cleanup/restore state/etc
in a robust way. Unfortunatley, it's very easy to mistakenly leave the
variable name, leading to the destructor being called immediately
instead of at the end of the scope:
{
ScopedX(parameters); // instead of ScopedX x(parameters);
// Code here is run after destructor
}
The [[nodiscard]] attribute, if specified on the ScopedX class would
lead to a warning (turned to error with -Werror). This change does
that for classes named *Scoped* in ANGLE.
Bug: chromium:1103817
Change-Id: I65c9922c9b4eba1f9c033e093fe8fe534648ab62
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3552092
Reviewed-by: Lingfeng Yang <lfy@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
b2c01ac4
|
2021-09-28T12:57:45
|
|
Report process memory in perf tests.
Bug: angleproject:6440
Change-Id: Ifdd4389266e3ac55963a3069d437c631bf73f72a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3191194
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
9637185c
|
2022-03-10T15:38:13
|
|
Add ForceGPUSwitch to EGL_ANGLE_power_preference
eglHandleGPUSwitch() does not work with WebKit sandbox profile.
The root cause is that we do not know the
primary display, and as such we do not know which GPU drives this.
Add eglForceGPUSwitchANGLE(display, gpuIDHigh, gpuIDLow).
This lets the caller figure out the GPU in another process. Then
the caller can just set the GPU in the sandboxed process.
Add tests that are disabled by default until the runner and the
infrastructure supports running the tests with automatic switching
enabled.
Bug: angleproject:7092
Change-Id: I316ee431156596effbdb89659a5e24291719a204
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3516274
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
|
|
3739a195
|
2022-03-09T13:56:36
|
|
perf tests: Record perf counter metrics.
This adds a new command line argument that will allow the user to
specify perf counters to record into the test output.
Bug: angleproject:4918
Change-Id: Ia7432ff96eadf13ef681f67d2d503d00fd83e06e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3516970
Reviewed-by: Lingfeng Yang <lfy@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f9ade9fb
|
2022-02-18T15:08:54
|
|
Vulkan: Add feature to create pipeline during glLinkProgram
Creating the pipeline will trigger the compilation of shaders to byte
code thus warming up Vulkan shader caches. Typically most apps call into
glLinkPrograms during app loadtime and the goal is to improve cache hit
rate and reduce CPU workload during game play.
Bug: angleproject:7046
Test: ProgramBinary*CreatePipelineDuringLink*
Change-Id: I71351d45a9aa84e220ca38503735e94cff1dcf98
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3478354
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
fd44f1a0
|
2022-02-25T13:34:01
|
|
Update API version in VulkanHelper to 1.1
* Updated the API version in VulkanHelper to avoid the
validation error regarding UNASSIGNED-API-Version-Violation on
Android devices.
Bug: angleproject:7062
Change-Id: Iacb12cd5c79ecc803cdb5fe5c8738d1ac352eec0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3491502
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
9b7a77b0
|
2022-02-11T11:34:19
|
|
Double batch timeout for sanitizer tests.
It seems the batch was timing out in ASAN builds.
Bug: angleproject:6965
Change-Id: I059e138e7fc43928fb25f905bf85fbb34becd500
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3456662
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1b9774f5
|
2022-01-26T13:37:03
|
|
Vulkan: Force submit updates to immutable textures
Submit immutable texture updates recorded in outside renderpass
commands when the following conditions are met -
1. "forceSubmitImmutableTextureUpdates" feature is enabled
2. The texture is immutable
This works around a problem that manifests in some applications
that do not perform appropriate synchronization of shared contexts.
Bug: angleproject:6929
Test: EGLContextSharingTestNoSyncTextureUploads.*
Change-Id: I2a237046e2cc53650eb8dc07e3697f7481df9b02
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3418138
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
4a65040b
|
2022-01-30T14:00:48
|
|
Add new Vulkan uniform update test.
This covers a specific case with multiple programs and descriptor
set caching. It could get tripped up by more complicated patterns
in the trace tests.
Bug: angleproject:6776
Change-Id: Ic8e42e55e60ef0fc01f0386712d3457abeea94e9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3426884
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
ef3fffd6
|
2022-01-19T16:00:42
|
|
Fix running tests with empty test set.
This was causing a crash when using an overly strict filter.
Bug: angleproject:5417
Change-Id: I38bae1a155a6b1047bae0856348de67f9cda21eb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3402939
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f071aaaf
|
2021-07-22T21:21:35
|
|
Use first test name instead of shard index for TestArtifacts
Shard index is not available on Android if run_gtest_angle_test.py
is not used, since host doesn't pass it to device by default.
We'd like to remove run_gtest_angle_test.py usage, since custom scripts
are not supported on iOS, so this CL is a pre-requisite to that.
We still need to distinguish between dEQP test artifacts when we merge
test results of different shards, so we'll be using the name of the
first test in a batch instead.
However, now, on Android,
instead of a single TestArtifactsFakeTest entry per shard,
we will have multiple entries,
an entry for each GTest batch of 256 tests.
On other platforms we will still have one entry per shard,
since batching is done by TestSuite and not GTests there,
just with a different name:
Old:
"tests": {
"TestArtifactsFakeTest-Shard00": {
"actual": "PASS",
"artifacts": {
"TestResults-Batch001.qpa": [
"TestResults-Batch001.qpa"
],
New:
"tests": {
"TestArtifactsFakeTest-GLES3/info_renderer": {
"actual": "PASS",
"artifacts": {
"TestResults-Batch001.qpa": [
"TestResults-Batch001.qpa"
],
Bug: angleproject:5417
Change-Id: I649036c151e078c862e380ccab347d6c59acc929
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046764
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
fdadc420
|
2021-09-17T14:39:36
|
|
Fix non-bot mode sharding on Android and disable elsewhere.
There is no need to apply sharding internally on Android,
since it is done on the host, except when listing tests.
And on other platforms sharding in non-bot mode is not useful.
Patch authored by Yuly Novikov (ynovikov@chromium.org)
Bug: angleproject:5417
Change-Id: Iddc0e1a38fb514617dce527acc99d0dce85ca177
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3399250
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4572a176
|
2022-01-03T13:29:59
|
|
Add support for GL_MESA_framebuffer_flip_y 3/*
This is a third CL that adds tests that exercise
the extension in various use cases.
Bug: chromium:1231934
Change-Id: Iae3192cd0985150b6844a2855a9a048a54353655
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3365195
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Maksim Sisov <msisov@igalia.com>
|
|
c4c73e82
|
2022-01-14T12:55:20
|
|
Fix RobustBufferAccessBehaviourTest.
Use "NoFixture" to enable the extension when available.
Bug: angleproject:6897
Change-Id: Ieb3383fbff4df664ad35dd034de3bdd7f8508ed6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3388115
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
d6b9a259
|
2021-12-14T16:32:14
|
|
end2end_tests: Add SwS + AsyncQueue testing.
This covers a hole in sanitizer testing.
Bug: angleproject:6746
Change-Id: I3c9569f94f0d51f771c57d1d72743849a1cbba33
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3337984
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
9d49d843
|
2021-12-15T00:36:54
|
|
Add WebGLCompressedTextureAvailabilityTest
Acts as a regression test for https://crrev.com/c/3338624
Has been verified to catch the earlier error in the include guards.
Bug: angleproject:6809
Bug: chromium:1279908
Change-Id: I248aca46db26eea304044835ea35fc2400ed459d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3338748
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
|
|
7b13a9ac
|
2021-12-09T18:37:59
|
|
Vulkan: Fix dynamic partial update buffer data issue.
add test case for dynamic update buffer data.
Signed-off-by: Hailin Zhang<hailinzhang@google.com>
Bug: b/207714894
Change-Id: I8c1e93d152847c3162c0e2dd49abe3d899c859a0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3328869
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Hailin Zhang <hailinzhang@google.com>
|
|
32f572b7
|
2021-12-03T17:58:51
|
|
Support creating EGLImage from VkImage
Bug: chromium:1264439
Change-Id: I520182143e748f25b44d0725f3f171b7b33a85d8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3311131
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Peng Huang <penghuang@chromium.org>
|
|
3e493db2
|
2021-11-19T10:47:04
|
|
tests/AndroidManifest: Disable allowNativeHeapPointerTagging.
In order for the mprotect tests to pass on Android, tagged pointers need
to be disabled.
Bug: angleproject:5857
Change-Id: I2a9703b98443a96b486581c5c5d57e40c3365555
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3291655
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
d0287552
|
2021-11-15T08:51:41
|
|
Reland "Vulkan: Implement GL_EXT_multi_draw_indirect"
This is a reland of 79f9d163b4227115a3e60e027ec4d7dbe0495f64
* Added drawcount > 1 as a condition to fall back to
MultiDraw*IndirectGeneral().
* Expanded the tests to include cases with disabled support
for multiDrawIndirect.
Original change's description:
> Vulkan: Implement GL_EXT_multi_draw_indirect
>
> * Optimized the implementations of multiDrawArraysIndirect()
> and multiDrawElementsIndirect() for Vulkan
> * Added helper functions to support drawArraysIndirect() and
> drawElementsIndirect() as special cases of multiDraw*Indirect
> functions.
> * Added the flag to enable the multiDrawIndirect feature
> (drawCount > 1). The generic implementation is used if the
> flag is disabled.
>
> Bug: angleproject:6439
> Change-Id: Ibc653d93d355657f828de9c33da22428629e450f
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3276044
> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Bug: angleproject:6439
Change-Id: I96c015855fabc8abbb87320a5ca71a8d92d61954
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3313412
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
65720272
|
2021-11-26T17:42:16
|
|
Add end2end gl test for *_ANGLE_vulkan_image extensions
Bug: chromium:1264439,angleproject:6741
Change-Id: I12d332995138a020ba514fba34024c3e666b8e6b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3304396
Commit-Queue: Peng Huang <penghuang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
14f55a7f
|
2021-11-02T10:16:58
|
|
infra: Enable TSAN and UBSAN tests.
These tests are not yet enabled on the CQ.
Bug: angleproject:5795
Change-Id: I3fc58ab800ebbc0840da8221b03b4ab145d28028
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3258003
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|