|
927410a8
|
2023-07-13T15:02:58
|
|
Prevent accidental misuse of ANGLE_ENABLED
... by removing it altogether. This macro was only available when
features.h was included. If that header was not included, the
preprocessor would automatically consider it 0, which has the opposite
effect from what was desired.
Bug: angleproject:8256
Change-Id: Ia141573c0c8b44eef1388f4c3ec73ef770cd2854
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4685226
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
fbd7d5fa
|
2022-10-17T17:20:09
|
|
Move thread pool classes to common/
In preparation for access by image_util files.
Bug: b/250688943
Change-Id: I24777269a5071eae9a60f939635d01ed7246461f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3961454
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e6662832
|
2022-04-28T17:30:41
|
|
Re-land fixing of commit ID for Android builds.
Android infra does not store the .git directory alongside the
checked out code, instead using a gitdir directive to point
elsewhere. This caused the commit_id script to fail, which
could cause issues with disk-backed program caches on updates
when the serialization format changes.
Tested:
1) Verified that cached binaries do not load when the ANGLE hash
is "unknown hash". This fixes a bug where the serialization format
could change but we are unaware of a change because the hash is technically
the same.
2) Verified that Android infra correctly generates the git hash.
Bug: b/206109660
Test: Run script on Android infra, verify hash is gathered properly.
Change-Id: I114fc8edb9459592cab45c6726f9d946cf6d17d6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3615014
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Doug Horn <doughorn@google.com>
|
|
f9729598
|
2022-04-28T16:36:50
|
|
Revert "Fix commit ID gathering on Android builds."
This reverts commit 1835e5d895f7f75435c2eddf3f87a88ef534c237.
Reason for revert: Breaks Skia integration in linkImpl.
Original change's description:
> Fix commit ID gathering on Android builds.
>
> Android infra does not store the .git directory alongside the
> checked out code, instead using a gitdir directive to point
> elsewhere. This caused the commit_id script to fail, which
> could cause issues with disk-backed program caches on updates
> when the serialization format changes.
>
> This CL also makes it a build failure to fail to get the commit id,
> and removes the ANGLE_DISABLE_PROGRAM_BINARY_LOAD fallback (which
> was broken anyway due to not being used anywhere).
>
> Bug: b/206109660
> Test: Run script on Android infra, verify hash is gathered properly.
> Change-Id: Ie28dc9278b6fbd3dd4f09232c0a88d602fca6980
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3604710
> Commit-Queue: Doug Horn <doughorn@google.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Bug: b/206109660
Change-Id: I64ac0831a46b9e1ff2e2738624650d67d0609f3c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3615009
Commit-Queue: Jamie Madill <jmadill@chromium.org>
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>
Reviewed-by: Doug Horn <doughorn@google.com>
|
|
1835e5d8
|
2022-04-25T14:42:31
|
|
Fix commit ID gathering on Android builds.
Android infra does not store the .git directory alongside the
checked out code, instead using a gitdir directive to point
elsewhere. This caused the commit_id script to fail, which
could cause issues with disk-backed program caches on updates
when the serialization format changes.
This CL also makes it a build failure to fail to get the commit id,
and removes the ANGLE_DISABLE_PROGRAM_BINARY_LOAD fallback (which
was broken anyway due to not being used anywhere).
Bug: b/206109660
Test: Run script on Android infra, verify hash is gathered properly.
Change-Id: Ie28dc9278b6fbd3dd4f09232c0a88d602fca6980
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3604710
Commit-Queue: Doug Horn <doughorn@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
11dc1635
|
2019-09-18T14:46:23
|
|
Add support for generating UWP (Windows Store) projects again
Until late 2017, ANGLE supported Windows Store apps on Windows 8.1,
Windows Phone 8.1, and Windows 10 (via the Universal Windows
Platform, aka UWP).
Unfortunately ANGLE deprecated support for Windows Store when it
switched from GYP to GN in 2017. Since then, users have been able
to use Microsoft\angle for their UWP apps but this isn't ideal since
it's based on a 2017 copy of Google\angle.
This PR bring back support for UWPs, so that UWP users can use
Google\angle again. Specifically it:
- Adds support for generating UWP projects via GN
- Adds helper/util functions specific to UWP (they're mostly
similar to the desktop Windows helpers)
- Fixes some existing Windows Store code that's rotted since 2017
- Disables async shader compilation for UWPs, since its
implementation calls wait on the UI thread (which is forbidden
in UWPs)
- Renames 'ANGLE_ENABLE_WINDOWS_STORE' to
'ANGLE_ENABLE_WINDOWS_UWP', since ANGLE only support UWPs now
- Fixes misc other related issues (such as dependencies on D3D9
headers in API-agnostic code)
Note that this doesn't bring back support for Windows/Phone 8.1.
BUG=angleproject:3922
Change-Id: Ia79ae05a5e0e0a0625eb633bf1928722dfd3e85f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1811871
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
9d737966
|
2019-08-14T12:25:12
|
|
Standardize copyright notices to project style
For all "ANGLE Project" copyrights, standardize to the format specified
by the style guide. Changes:
- "Copyright (c)" and "Copyright(c)" changed to just "Copyright".
- Removed the second half of date ranges ("Y1Y1-Y2Y2"->"Y1Y1").
- Fixed a small number of files that had no copyright date using the
initial commit year from the version control history.
- Fixed one instance of copyright being "The ANGLE Project" rather than
"The ANGLE Project Authors"
These changes are applied both to the copyright of source file, and
where applicable to copyright statements that are generated by
templates.
BUG=angleproject:3811
Change-Id: I973dd65e4ef9deeba232d5be74c768256a0eb2e5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1754397
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
067687f4
|
2019-05-29T12:48:49
|
|
Removal global locks from GL entry points. Always lock in EGL.
The ANGLE Vulkan backend is now thread safe for non-share group contexts. This
means that a global GL lock only adds overhead for most use cases.
Remove the angle_force_thread_safety gn argument.
BUG=angleproject:2464
Change-Id: Ic6ba89e18b46e5dd72aa83d0f409097441fcca3a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1635749
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
a100d8f4
|
2018-12-29T16:39:55
|
|
ParallelCompile: add GL backend support
For GL backend, at first each worker thread must have a naitve context
for its own to work in. These worker contexts have to be shared from
the main context, so that all shader and program objects are seen in
any context. This extends backend displays to create and destroy the
worker contexts. RendererGL manages and allocates them to the worker
threads. ShaderImpl has a new compile method added to do the actual
glCompile work in worker thread. The ProgramGL's link method is broken
down by introducing the LinkEventGL class.
Bug: chromium:849576
Change-Id: Idc2c51b4b6c978781ae77810e62c480acc67ebb5
Reviewed-on: https://chromium-review.googlesource.com/c/1373015
Commit-Queue: Jie A Chen <jie.a.chen@intel.com>
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>
|
|
b02fc662
|
2018-08-21T09:48:01
|
|
Lock around all EGL and GL calls with a global mutex.
BUG=angleproject:2464
Change-Id: I0231cc84777272f9cf26298c6a137f1ad3fd51d6
Reviewed-on: https://chromium-review.googlesource.com/1183441
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
01074255
|
2016-11-28T15:55:51
|
|
D3D: Implement multi-thread shader compilation.
Choose to use std::async for now to implement multi-threaded compiles.
This should work across platforms and also be usable for other
threading tasks. Note that std::async does not have a good way to
wait for multiple std::futures. Also the Linux compile of std::async
is broken due to a bug in an old STL version, so disable it on this
platform.
The implementation uses a static polymorphism approach, which should
have very good performance (no virtual calls).
This design leaves the door open for other future implementations,
such as a Win32 thread pool, or one based on angle::Platform.
BUG=angleproject:422
Change-Id: Ia2f13c3af0339efaca1d19b40b3e08ecca61b8e8
Reviewed-on: https://chromium-review.googlesource.com/413712
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
847638a6
|
2015-11-20T13:01:41
|
|
Re-land "D3D: Generate more shader debug info by default."
Re-land with fix for shader size query.
The debug info can be very useful to WebGL developers. Instead of
hiding the feature behind an unsupported and broken flag, always
enable it so that WebGL devs can access the useful translated info.
Change the debug info policy to build the full info (including
generated assembly) in Debug, and all info excepth the assembly
in Release.
BUG=angleproject:1179
Change-Id: I812b2c9ba98cb8c9d5ec95721441c70e8990b626
Reviewed-on: https://chromium-review.googlesource.com/313600
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
57d116a4
|
2015-11-20T17:59:18
|
|
Revert "D3D: Generate more shader debug info by default."
Has a bug where we would return the wrong size for the query.
BUG=angleproject:1179
This reverts commit 6de4d49477986339a92b542a18df22c49d10cf14.
Change-Id: Ib58aaf0b58d8f20765f7267b29acd8c62d287525
Reviewed-on: https://chromium-review.googlesource.com/313552
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
6de4d494
|
2015-11-19T14:08:34
|
|
D3D: Generate more shader debug info by default.
The debug info can be very useful to WebGL developers. Instead of
hiding the feature behind an unsupported and broken flag, always
enable it so that WebGL devs can access the useful translated info.
Change the debug info policy to build the full info (including
generated assembly) in Debug, and all info excepth the assembly
in Release.
BUG=angleproject:1179
Change-Id: I25656b76b8437cb2edc9d88cd33f2c4d19b6a3f0
Reviewed-on: https://chromium-review.googlesource.com/313160
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
1acf438b
|
2015-06-12T12:38:57
|
|
Added define to enable/disable uniform precision validation for shaders.
This feature was requested by developers to allow non-conformant shaders
to be used which contain mismatched precisions.
Change-Id: I57899efe064f7ffed1c0e43a508930ac70f6aa03
Reviewed-on: https://chromium-review.googlesource.com/277340
Tested-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e4ea202a
|
2015-03-26T20:35:05
|
|
Revert "Compile the D3D11 VS and PS on separate threads at GL link time"
Causing a high-volume crashe in Chrome.
This reverts commit 434953e20002666f66d721aaacbcb8410f7dbd56.
BUG=470695
Change-Id: I2062c706ab6ca6b4c3117685df67c33572518da5
Reviewed-on: https://chromium-review.googlesource.com/262704
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
434953e2
|
2015-02-20T10:49:51
|
|
Compile the D3D11 VS and PS on separate threads at GL link time
Change-Id: Ib534483f2ec3922cfeaf71cf1d9e9c433fe04b08
Reviewed-on: https://chromium-review.googlesource.com/251612
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
6df9b37d
|
2015-02-18T21:28:19
|
|
Revert "Re-resubmit "Compile the D3D11 VS and PS on separate threads at GL link time""
Fails clang-win again. Apparently Clang mimics MSVS.
This reverts commit af1bdff62ec4cc80b47fbac7e5d973f6f7225036.
Change-Id: I48a503889a9e905fcdc9f101dbf98f7cb7912279
Reviewed-on: https://chromium-review.googlesource.com/250882
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
af1bdff6
|
2015-02-17T11:07:46
|
|
Re-resubmit "Compile the D3D11 VS and PS on separate threads at GL link time"
The latest version of this change disables multithreaded D3D shader
compilation with any C++ compiler other than VC (e.g. Clang).
Change-Id: If3ef5fd650055ae66397ea2c9121bfcf1792892a
Reviewed-on: https://chromium-review.googlesource.com/250328
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
2207213b
|
2014-11-20T15:15:01
|
|
Move as many files as possible from common to libANGLE.
BUG=angle:733
Change-Id: If01c91cd52ac5c2102276a9fdc4b68ebc13e47f9
Reviewed-on: https://chromium-review.googlesource.com/231850
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
4349ab85
|
2014-11-25T15:53:34
|
|
Revert "Move as many files as possible from common to libANGLE."
Chromium directly includes our common/version.h and couldn't build after this change.
This reverts commit f0a2c7727f9863c38a435a16a69d513c481fbbdd.
Change-Id: Iafc41b1a3973f609518fe3588fdb64cecc285332
Reviewed-on: https://chromium-review.googlesource.com/231840
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f0a2c772
|
2014-11-20T15:15:01
|
|
Move as many files as possible from common to libANGLE.
BUG=angle:733
Change-Id: I40cee6e2e305ac493acbc8649f858785c0569aed
Reviewed-on: https://chromium-review.googlesource.com/231051
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|