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

99 Коммитов

Автор SHA1 Сообщение Дата
Shahbaz Youssefi b4ead90b03 Roll VK and SPIR-V deps forward
An incorrect validation is preventing work on queries:

https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/269

Bug: angleproject:2855
Change-Id: I0454b74f714e69efcfa56e42ff751ffffacaf78c
Reviewed-on: https://chromium-review.googlesource.com/c/1258085
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
2018-10-04 18:08:22 +00:00
Jamie Madill af8b73c9e6 Roll dEQP (September 2018)
Bug: angleproject:2854
Change-Id: Ib9f229aa579699e90759bacd88d13953c0a7d311
Reviewed-on: https://chromium-review.googlesource.com/1245846
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2018-09-26 18:20:11 +00:00
Corentin Wallez a883dd0653 Use SPIRV-Tools' BUILD.gn files
This adds build_overrides/spirv_tools.gni to tell it where to find its
dependencies.

BUG=chromium:870747
Change-Id: Id1d9fb836e74597860a4411df0a4fd0651840f57
Reviewed-on: https://chromium-review.googlesource.com/1162240
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2018-09-25 22:45:36 +00:00
Yuly Novikov 85d8ee8c1f Revert "DEPS: Remove the need for angle_root."
This reverts commit e177755814.

Reason for revert: Seems to break ANGLE roll for some reason. Reverting while it is investigated.

Bug: chromium:883135

Original change's description:
> DEPS: Remove the need for angle_root.
> 
> BUG=
> 
> Change-Id: I8cd41a3a9c2199bec54b022abc9694835afd1b2f
> Reviewed-on: https://chromium-review.googlesource.com/1219547
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Corentin Wallez <cwallez@chromium.org>

TBR=ynovikov@chromium.org,jmadill@chromium.org,cwallez@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I1330b216be34ce9dd9236b8e51a7a6cc578562d7
Reviewed-on: https://chromium-review.googlesource.com/1222366
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
2018-09-12 19:58:17 +00:00
Corentin Wallez e177755814 DEPS: Remove the need for angle_root.
BUG=

Change-Id: I8cd41a3a9c2199bec54b022abc9694835afd1b2f
Reviewed-on: https://chromium-review.googlesource.com/1219547
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2018-09-11 15:27:14 +00:00
Jamie Madill 7ada46c90d Fix JSON cpp DEPS.
We need two repos to get jsoncpp working. First is the Chromium tree
mirror and second is the jsoncpp source itself. The Chromium version
includes only the build files and some source file overrides.

Bug: angleproject:2794
Change-Id: I0e1acaf783c5ae3935803eacdf93ffbe01f9fe4d
Reviewed-on: https://chromium-review.googlesource.com/1210562
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2018-09-06 16:02:33 +00:00
Jamie Madill 4ab19079cc Update jsoncpp DEPS.
This points to a mirror of the Chromium jsoncpp folder. The
Chromium version includes a BUILD.gn that we can use.

Bug: angleproject:2794
Change-Id: I08f34e693d547cd01caefdeddaf43ce4b4bbc29d
Reviewed-on: https://chromium-review.googlesource.com/1208510
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2018-09-05 20:11:06 +00:00
Tobin Ehlis cc04663019 Use chromium mirror for jsoncpp
Chromium has a jsoncpp mirror that matches github and has a ninja build
config so use that instead of Android mirror.

Bug: angleproject:2794
Change-Id: I48423818817f439f3a43f5edee557deae24bf028
Reviewed-on: https://chromium-review.googlesource.com/1203940
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Ian Elliott <ianelliott@google.com>
2018-09-05 02:56:50 +00:00
Tobin Ehlis 3a181e3e53 Roll VK deps forward as of 8/31/2018
Roll Vulkan ANGLE dependencies forward as of 8/31/2018. This grabs some
new validation checks including point-related checks that may be
interesting for bug 2727.

One of these checks, related to PointSize, is firing so I've added some
code in the VK debug callback to suppress those error messages for now
and filed a separate bug (2796) to fix that issue in the renderer.

Had to overhaul the json gen script as validation changed how these are
generated. They now use a base template with some strings replaced to
account for platform and Vulkan header version. Offloaded all of that
work to our existing json generate script which was previously more of
an intelligent copy but now had some further intelligence for
transforming from input template into final json files.

Had to also roll glslang forward to meet shader validation dependency.

Bug: angleproject:2727
Change-Id: I929619cd258cddd6bc9c6743600e072c46736f5c
Reviewed-on: https://chromium-review.googlesource.com/1194617
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Tobin Ehlis <tobine@google.com>
2018-08-31 17:06:59 +00:00
Tobin Ehlis 5fdc38cf17 Add jsoncpp as third_party dep
Adding jsoncpp in third_party/jsoncpp dir. This is a C++ library to
parse json files.

Bug: angleproject:2785
Change-Id: I12f467ef87c8d4801815c79f211fc57a3a9f4b49
Reviewed-on: https://chromium-review.googlesource.com/1194840
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Ian Elliott <ianelliott@google.com>
2018-08-30 16:17:30 +00:00
Frank Henigman a7f97a27eb Gyp is dead. Long live gn.
Remove the gyp build.  The .gypi files were not renamed so that diff and
rebase would work on this change.  They will be renamed in a separate
change.

BUG=angleproject:1569

Change-Id: If8a217027633293664b820104f91a4ca5889b24e
Reviewed-on: https://chromium-review.googlesource.com/1187380
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
2018-08-29 19:26:38 +00:00
Frank Henigman c0edff6670 Roll chromium DEPS.
Roll to get versions of build and tools/clang don't require gyp in our DEPS,
so we can to remove gyp from our DEPS.

BUG=angleproject:1569

Change-Id: I2d1639bb5d576e62aff2a8aa993542b0ac777be6
Reviewed-on: https://chromium-review.googlesource.com/1185756
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2018-08-23 19:06:19 +00:00
Frank Henigman 21e5e85a49 builtools: Roll GN.
Pick up a version of GN which works around crbug.com/791295.
Now we get VS projects that don't hit the ninja bug described there.

BUG=angleproject:1569

Change-Id: I8758c63459640314a4c76b0d590d388c37ab3125
Reviewed-on: https://chromium-review.googlesource.com/1175035
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
2018-08-15 02:57:34 +00:00
Tom Anderson 21e9baf71e Roll Vulkan-Loader to a835880
Changelist:
da58202e95..a8358804f3

BUG=chromium:427584

Change-Id: I758d2ba05aa731b07e5d336a6ebab45a4837e142
Reviewed-on: https://chromium-review.googlesource.com/1152356
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2018-07-27 09:29:36 +00:00
Tobin Ehlis 4edf1bcae7 Roll Vulkan repos fwd as of 7/17
Update Vulkan Layers/Loader/Header to latest versions as of 7/17.
This includes additional validation checks related to vertex attributes
that will be useful to have in ANGLE.

Bug: angleproject:2736
Change-Id: I7c5b07c73be8958cb9f8783fd9dd7a51e1f82caa
Reviewed-on: https://chromium-review.googlesource.com/1141081
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2018-07-18 20:58:17 +00:00
Tobin Ehlis 6ed6c71ce7 Roll Vulkan repos fwd as of 7/10
Update Vulkan Layers/Loader/Tools/Header to latest versions as of 7/10.
The layers were updated to correctly comprehend which device extensions
are enabled which should fix a false error being flaged on negative
Viewports in ANGLE.

Bug: angleproject:2704
Change-Id: Ie51660f539beb249c3b11dc7e0d553ff7cabfde3
Reviewed-on: https://chromium-review.googlesource.com/1131919
Commit-Queue: Tobin Ehlis <tobine@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2018-07-10 18:49:19 +00:00
Tobin Ehlis c56adf60d1 Roll Vulkan repos fwd as of 7/3
Update Vulkan Layers/Loader/Tools/Header to latest versions as of 7/3.
This updates the ICD build to use inputs from the Header repo instead
of copies of the file from its own repo. Those copies have been deleted
and some of the generation scripts in Tools repo have been renamed.
Also put script dependencies from Vulkan-Headers repo into a shared var
that's imported by the other repos to minimize repeat code.

Bug: angleproject:2704
Change-Id: I98a18be055482dccdad8468115b4045d09342bfb
Reviewed-on: https://chromium-review.googlesource.com/1124966
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Tobin Ehlis <tobine@google.com>
2018-07-09 21:48:24 +00:00
Jamie Madill 534343ab2f Vulkan: Roll SPIRV-Tools and SPIRV-Headers.
This fixes a bug in SPIRV-Tools validation. vec3s were not being packed
properly. Affected some of the more complex dEQP shader tests.

Unblocks better Debug error reporting.

Bug: angleproject:2552
Change-Id: I83447813a4ae3347157321a30a91b5dee55ff6c1
Reviewed-on: https://chromium-review.googlesource.com/1129824
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
2018-07-09 21:05:24 +00:00
Jamie Madill 1698d7d4e8 Vulkan: Roll glslang (June 2018).
Includes potential bug fixes.

Bug: angleproject:2691
Change-Id: I9a22dbdc96045df36de086f7edf7c914bae1cdbf
Reviewed-on: https://chromium-review.googlesource.com/1117320
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
2018-06-28 17:18:45 +00:00
Jamie Madill 571863604a Roll SPIRV-Tools and SPIRV-headers (June 2018)
Bug: angleproject:2691
Change-Id: I754431c7cf7cdbb5b631e9db90b7c1471b5bf9ee
Reviewed-on: https://chromium-review.googlesource.com/1117309
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
2018-06-28 14:29:21 +00:00
Tobin Ehlis b971f499b5 Migrating ANGLE to split LVL repos
Separated the Vulkan Validation Layers, Loader, Tools and Headers into
separate dirs to map to the new separate repo structure.

Bug: angleproject:2558
Change-Id: I422038f7dd7efe8c5b7a49dc5074de5caf40edfa
Reviewed-on: https://chromium-review.googlesource.com/1071880
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2018-06-13 18:17:16 +00:00
Jamie Madill d197803755 Roll dEQP (June 2018).
Quite a substantial update.

Includes ANGLE-related fixes contributed by Google and Intel.

Also includes some test suppressions for ES 3.1 D3D11.

Bug: angleproject:2617
Bug: angleproject:2619
Bug: angleproject:2625
Change-Id: Iea90036996b1a49278443e5d88dbe7ace32de6d4
Reviewed-on: https://chromium-review.googlesource.com/1087179
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
2018-06-05 22:27:12 +00:00
Edward Lemur 47463d8541 Use revision variables in DEPS.
Bug: 782846
Change-Id: I915b8e97d6420019051b3fa77ae843a4942e7802
Reviewed-on: https://chromium-review.googlesource.com/1083316
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
2018-06-01 22:25:27 +00:00
Edward Lemur 8ae09b0e2f Make DEPS file compatible with Chromium.
Rename 'root' to 'angle_root' and add conditions to not sync
dependencies when building with Chromium.

Bug: 782846
Change-Id: I250609ad0b5b8cad606075baf6dd6ca4e968a5b6
Reviewed-on: https://chromium-review.googlesource.com/1082922
Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2018-06-01 20:36:46 +00:00
Tobin Ehlis 8a125ea75c Roll to latest LVL as of 5/16/18
Moving to HEAD of LVL master as of 5/16/18.
The LVL repo is now frozen and has been split into separate repos so
this will be the last LVL roll. Subsequent updates will have to use
the new, separate repos for layers, loader, and icd.

No changes were required to BUILD.gn with this latest update.

Bug: angleproject:2560
Change-Id: If692e4a11803318af4364fe0185fa25e2f82b790
Reviewed-on: https://chromium-review.googlesource.com/1062066
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2018-05-24 22:13:45 +00:00
Tobin Ehlis 9d4277b0d4 Enable sysroot install on x86 & x64 based-systems
For builds set "use_sysroot = true" by default
This is intended to fix a bot config that is hitting a build error with
latest Vulkan validation layer roll.

Bug: angleproject:2560
Change-Id: I06edfc7b74f367bbab23fea6f01b2778b12a470a
Reviewed-on: https://chromium-review.googlesource.com/1068031
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2018-05-24 19:26:59 +00:00
Tobin Ehlis 9b1462a06d Roll fwd ANGLE chromium DEPs
Roll build, buildtools, clang, testing, googletest, zlib, gyp.

Bug: angleproject:2560
Change-Id: Ic7f2a8bbdb9f6ff3bca1cd6d7ba424add7d086ad
Reviewed-on: https://chromium-review.googlesource.com/1068064
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2018-05-23 00:07:30 +00:00
Jamie Madill f3135da9d5 Clean up DEPS style.
Conforms a bit more to the proposed DEPS standardization.

Bug: chromium:782846
Change-Id: I65eae268dc9ebe4a56382db67fd123a0beafa656
Reviewed-on: https://chromium-review.googlesource.com/1027792
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2018-04-25 13:44:42 +00:00
Tobin Ehlis 5f21df8318 Roll (1/2) LVL version forward and disable VANGLE
Bug: angleproject:2482

Rolling Vulkan validation code forward to HEAD of master as of 4/18/18
morning. Disable Vulkan from the ANGLE build until ANGLE lands in
Chromium. After that second part of roll will be submitted.

This LVL update includes reg.py script fixes for a number of build
warnings as well as a validation fix for vkCmdClearAttachments() in
secondary cmd buffer.

Change-Id: I7f8100f5b656d86caf8f4b5dee61a733a35b7869
Reviewed-on: https://chromium-review.googlesource.com/1016860
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2018-04-20 21:10:06 +00:00
Tobin Ehlis aa8b3982ae Roll (1/2) LVL version forward and disable VANGLE
Rolling Vulkan validation code forward to HEAD of master as of 4/16/18
morning. Disable Vulkan from the ANGLE build until ANGLE lands in
Chromium. After that second part of roll will be submitted.

This LVL update includes MockICD fixes to allow ANGLE perf tests to
run correctly with Null Vulkan configuration.

Bug: angleproject:2482
Change-Id: I61dc9ed293677a1b5839b605d7c3640dca138db3
Reviewed-on: https://chromium-review.googlesource.com/1014405
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2018-04-16 20:41:03 +00:00
Jamie Madill 027717fa79 Add "root" variable to DEPS.
This variable can be used to override the root location of the .git
for ANGLE relative to gclient, so our DEPS can work with both
ANGLE standalone and the new bot configurations that are being
added by thakis@.

Bug: chromium:820421
Change-Id: I5cd57bc88fcd4dc69e82aa1e59d343f1eaf6f5ee
Reviewed-on: https://chromium-review.googlesource.com/1012506
Commit-Queue: Nico Weber <thakis@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2018-04-13 20:12:34 +00:00
Tobin Ehlis 37812d4543 Roll (1/2) LVL version forward and disable VANGLE
Bug: angleproject:2393

Rolling Vulkan validation code forward to HEAD of master as of 3/6/18
afternoon. Disable Vulkan from the ANGLE build until ANGLE lands in
Chromium. After that second part of roll will be submitted.

Change-Id: I3c98b42a0b8999e8aa26f538959d888060c2026a
Reviewed-on: https://chromium-review.googlesource.com/952525
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2018-03-07 17:15:00 +00:00
Jamie Madill a1134ba865 Vulkan: Relocate third-party libraries. (2/2)
This makes the BUILD.gn source lists a lot simpler, since they no
longer need to use a special path variable, but instead can use the
correct relative paths.

This will lead to further simplifications so we can hopefully upstream
the Vulkan tools BUILD.gn files.

Second part updates the build files and removes the old repositories.

Bug: angleproject:2339
Change-Id: I37f5b42a0854ca49448ecbbb32c19c24df57f452
Reviewed-on: https://chromium-review.googlesource.com/905894
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2018-02-07 21:33:33 +00:00
Jamie Madill 23c107e895 Roll dEQP 455d82c60b0...5bc346ba2.
Inclues several new ES 3.1 and EGL test sets.

455d82c60b..5bc346ba2d

Bug: angleproject:2319
Bug: angleproject:1961
Bug: angleproject:1028
Bug: angleproject:2320
Bug: angleproject:2321
Bug: angleproject:2329
Bug: angleproject:2330

Change-Id: I26bfb11a41073e94ecc75d20b07055eb4e946d43
Reviewed-on: https://chromium-review.googlesource.com/703159
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2018-02-03 15:01:05 +00:00
Jamie Madill 8a57b468e2 Re-land "Vulkan: Roll loader/validation layers SDK. (2/2)"
Second re-land fixes git.bat access on developer machines.

Re-landing with upstream fixes to the layers so they no longer
need to copy the parameter validation errors to the current
working directory of the layer generation. Also includes fixes
for the GCC build.

This hasn't been updated in a while, so there are many changes.
It should also include better validation for memory barriers.

Also includes updated builds for SPIRV Tools and glslang.
A few pull requests need to land before landing this in ANGLE.

This second step re-enables Vulkan and includes the updated build.

Includes a workaround for parameter_validation.h no longer being
auto-generated, and the stale file clobbering the build.

Also includes a fix for an incorrect memory barrier.

Bug: angleproject:2237
Change-Id: Ic1a3ad7458bb743d7279a1af9334693ab6cb59d6
Reviewed-on: https://chromium-review.googlesource.com/845859
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2017-12-28 22:36:37 +00:00
Jamie Madill 340b577196 Vulkan: Roll loader/validation layers SDK (1.75/2)
This hasn't been updated in a while, so there are many changes.
It should also include better validation for memory barriers.

Also includes updated builds for SPIRV Tools and glslang.
A few pull requests need to land before landing this in ANGLE.

This intermediate step rolls Vulkan again to include upstream
fixes to the layers so they no longer need to copy the parameter
validation headers to the current working directory. The prior
changed missed a second generator script.

Bug: angleproject:2237
Change-Id: Ia6767af538c50e340ea5a68c69a2863c9fd9061d
Reviewed-on: https://chromium-review.googlesource.com/840080
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2017-12-21 16:52:08 +00:00
Jamie Madill ffd27d8537 Vulkan: Roll loader and validation layers SDK (1.5/2)
This hasn't been updated in a while, so there are many changes.
It should also include better validation for memory barriers.

Also includes updated builds for SPIRV Tools and glslang.
A few pull requests need to land before landing this in ANGLE.

This intermediate step rolls Vulkan again to include upstream
fixes to the layers so they no longer need to copy the parameter
validation headers to the current working directory also includes
fixes for the GCC build.

Bug: angleproject:2237
Change-Id: I50deb70e43be36f7470c9fc2262b6da5bab39c3a
Reviewed-on: https://chromium-review.googlesource.com/834230
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2017-12-19 21:07:39 +00:00
Frank Henigman 5b1180df68 Add gyp deprecation warning.
gyp_angle now prints a warning every time it is run.
All targets print the same warning as one of their build steps.
The DEPS change updates gypi_to_gn so it doesn't choke on
files with 'target_defaults' sections.

BUG=angleproject:1569

Change-Id: Ibdf277fcc14cf4ebc7b7db78270210752cd8ef9d
Reviewed-on: https://chromium-review.googlesource.com/711155
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
2017-12-18 23:04:55 +00:00
Jamie Madill 9af765dd2e Vulkan: Roll loader/validation layers SDK. (1/2)
This hasn't been updated in a while, so there are many changes.
It should also include better validation for memory barriers.

Also includes updated builds for SPIRV Tools and glslang.
A few pull requests need to land before landing this in ANGLE.

First part disables Vulkan and rolls the layers. The second part will
re-enable Vulkan with the updated loader/layers build.

Bug: angleproject:2237

Change-Id: I112521541ea66b26eadeb959852418dc91be2e18
Reviewed-on: https://chromium-review.googlesource.com/805417
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2017-12-13 21:12:27 +00:00
Jamie Madill 4f407ce208 Fix Clang dEQP build on Win.
Rolls the build/ repos from Chromium to include the fixed config.
Also includes incidental improvements to platform-specific hooks.

Bug: chromium:727437
Change-Id: Ia42a30acac1e800e593e304bfc59d86eb0a1e57c
Reviewed-on: https://chromium-review.googlesource.com/782340
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2017-11-21 18:55:25 +00:00
Jamie Madill 4d1469315c Roll all ANGLE internal DEPS.
None of these deps are used in the Chromium builds, so this only
affects the standalone version.

Includes a change in the build repo necessary to enable fixing the
Clang build with dEQP.

Bug: chromium:727437
Change-Id: Iea5f6299e9f17555891c812229a54a850776f117
Reviewed-on: https://chromium-review.googlesource.com/773020
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2017-11-15 23:55:58 +00:00
Jamie Madill 940c48b279 Add rc.exe hook to DEPS.
This is necessary to build Windows ANGLE with the hermetic Win SDK.

BUG=angleproject:1569

Change-Id: Ic2c0aac6cab8d1a20f0bca8aea55418fe7defdc5
Reviewed-on: https://chromium-review.googlesource.com/734980
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2017-10-24 04:02:58 +00:00
Jamie Madill 138cf5e000 Roll chromium/src/build.
Includes the new script to generate a Visual Studio "meta" solution.

BUG=angleproject:1569

Change-Id: I6760b2fb26f588117cd310afc7f92e9b4571a89c
Reviewed-on: https://chromium-review.googlesource.com/734709
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2017-10-24 03:36:43 +00:00
Jamie Madill 6dee4d8c1f Remove second copy of gyp dependency.
Also point gyp_angle back at tools.

BUG=angleproject:1569

Change-Id: Ib17ba6973db24aec9cd47000d869e5aa427c84a3
Reviewed-on: https://chromium-review.googlesource.com/727529
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2017-10-19 04:46:23 +00:00
Frank Henigman d0ef13a250 Stand-alone build with gn.
This should do the same things as the stand-alone gyp build, but with gn.
You should switch to gn as gyp support will go away.

You need a recent enough version of gn.  If yours is too old try this one:
  ./buildtools/linux64/gn

If "gclient sync" or anything fails with an ImportError on gyp stuff,
try running it with the following PYTHONPATH in the environment:
  PYTHONPATH=tools/gyp/pylib

BUG=angleproject:1569

Change-Id: I56d19bec2d8b649a7bd65062c656cbfc69ea3dd8
Reviewed-on: https://chromium-review.googlesource.com/642588
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
2017-10-18 17:02:13 +00:00
Frank Henigman cc8e2738df Move libpng into src subdirectory.
DEPS libpng into third_party/libpng/src, instead if third_party/libpng.
Then we'll be able to put its BUILD.gn into third_party/libpng instead
of the more distant build/secondary/... location.

BUG=angleproject:1569

Change-Id: I12b1c51d65682cba3954c26f1bd3f7491ac31b01
Reviewed-on: https://chromium-review.googlesource.com/722176
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2017-10-17 13:14:12 +00:00
Frank Henigman 6b076a09e0 Update and move gmock and gtest.
Update to the version of googletest current in chromium.  Googlemock has
merged into googletest so we get rid of the separate DEPs entry and point
everything inside googletest.

We put it in 'third_party' instead of 'testing' to prepare for the
upcoming stand-alone gn build which borrows chromium build files that
require other stuff in the 'testing' directory.

BUG=angleproject:1569

Change-Id: I51d1675efd5d0104bb6390721928010221a5d6fc
Reviewed-on: https://chromium-review.googlesource.com/713466
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
2017-10-11 20:33:02 +00:00
Jamie Madill ef97c613f8 Roll GYP for VS2017 project support.
Also includes a ToLower string helper for a VS2017 warning fix.

aae1e3efb5..c6f4716874

BUG=angleproject:1569

Change-Id: Iaf8a091a24d937db3adb242f05c8a5c9d2b03b0f
Reviewed-on: https://chromium-review.googlesource.com/659219
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2017-09-11 15:55:22 +00:00
Jamie Madill 9c9b40aced Use parameter cache to skip passing IndexRange.
For DrawElements et al., we can use a simple design to store
entry point parameters and compute index ranges lazily. This allows
us to compute the index range outside of the validation layer.

Fixing this will let us implement a few things, such as the no error
extension. It will also allow auto-generation of the entry points,
since we won't have to have special cases for certain entry
points. It will also help fix the syncState layering problem. Now the
cached parameter helper (which is owned by the Context) can make the
impl layer calls, instead of the validation layer calling the impl
directly.

We use a small array in Context to gather parameters in a generic
way without reallocation on call. We also check type safety by storing
a type info struct which can handle inheritance between type classes.
Optional variables for the cache determine when to re-compute values.

The intent with gatherParams is to call this in every entry point, and
have in most cases be a no-op. In some cases like for IndexRange, we
store some parameters for later use. The inheritance scheme enables
auto-generation of the entry points by keeping signatures similar.

BUG=angleproject:747

Change-Id: I871e99e1334cf6e61ef8da62fde3ced094903f8a
Reviewed-on: https://chromium-review.googlesource.com/474119
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2017-04-26 22:20:27 +00:00
Corentin Wallez 50a8d0e063 Roll zlib to fix a warning on Mac
BUG=

Change-Id: Iaef87582aba57632d5a696fdf9ff09c4fab5c75a
Reviewed-on: https://chromium-review.googlesource.com/483619
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2017-04-20 15:49:39 +00:00