Bug 1864587 - [angle] Vendor mozilla/angle/firefox-123. r=gfx-reviewers,aosmond

Differential Revision: https://phabricator.services.mozilla.com/D197552
This commit is contained in:
Kelsey Gilbert
2024-01-10 18:51:33 +00:00
parent d8eb8348bd
commit 96fbe13317
6 changed files with 61 additions and 36 deletions

View File

@@ -6,7 +6,7 @@
set -vex
if [[ -z "${MOZ_AUTOMATION}" ]]; then
echo "Angle is only meant to be updated via ./mach vendor in automation."
echo "This script is only meant to be used to update ANGLE via ./mach vendor when in automation."
echo "However, if you set a few environment variables yourself, this script"
echo "will probably work locally."
exit 1

View File

@@ -1,5 +1,5 @@
#define ANGLE_COMMIT_HASH "6784271c1c62"
#define ANGLE_COMMIT_HASH "ddaf44ac75d5"
#define ANGLE_COMMIT_HASH_SIZE 12
#define ANGLE_COMMIT_DATE "2023-07-20 16:31:09 -0400"
#define ANGLE_COMMIT_POSITION 19735
#define ANGLE_COMMIT_DATE "2024-01-02 15:01:34 -0800"
#define ANGLE_COMMIT_POSITION 19736
#define ANGLE_HAS_BINARY_LOADING

View File

@@ -262,6 +262,8 @@ void Trace(LogSeverity severity, const char *message)
__android_log_print(android_priority, "ANGLE", "%s: %s\n", LogSeverityName(severity),
str.c_str());
#elif defined(ANGLE_PLATFORM_APPLE)
if (__builtin_available(macOS 10.12, iOS 10.0, *))
{
os_log_type_t apple_log_type = OS_LOG_TYPE_DEFAULT;
switch (severity)
{
@@ -283,6 +285,7 @@ void Trace(LogSeverity severity, const char *message)
}
os_log_with_type(OS_LOG_DEFAULT, apple_log_type, "ANGLE: %s: %s\n",
LogSeverityName(severity), str.c_str());
}
#else
// Note: we use fprintf because <iostream> includes static initializers.
fprintf((severity >= LOG_WARN) ? stderr : stdout, "%s: %s\n", LogSeverityName(severity),

View File

@@ -239,12 +239,11 @@ bool VariablePacker::checkExpandedVariablesWithinPackingLimits(
break;
}
topNonFullRow_ += GetVariablePackingRows(variable);
}
if (topNonFullRow_ > maxRows_)
{
return false;
}
}
// Packs the 3 column variables.
int num3ColumnRows = 0;
@@ -255,13 +254,13 @@ bool VariablePacker::checkExpandedVariablesWithinPackingLimits(
{
break;
}
num3ColumnRows += GetVariablePackingRows(variable);
}
num3ColumnRows += GetVariablePackingRows(variable);
if (topNonFullRow_ + num3ColumnRows > maxRows_)
{
return false;
}
}
fillColumns(topNonFullRow_, num3ColumnRows, 0, 3);

View File

@@ -1,3 +1,25 @@
commit ddaf44ac75d5d0390873c2af193e02159ecbe672
Author: Geoff Lang <geofflang@chromium.org>
Date: Fri Dec 8 13:20:36 2023 -0500
Validate Uniform variable limits with each iteration
VariablePacker would loop over all variables and sum up the total
row counts before validating. Each variable can take hundreds of rows
so it is possible to overflow the counters before validating them.
Validate the limits with each iteration and early-out when the limits
are exceeded.
https://bugzilla.mozilla.org/show_bug.cgi?id=1864587
Bug: chromium:1864587
Change-Id: Ic235ada1516a0d5a9948d82b22f6316a037c09ca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5106408
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
commit 6784271c1c6273a1be0b6a2dad9ac7b921521ad8
Author: Shahbaz Youssefi <syoussefi@chromium.org>
Date: Tue Mar 28 11:43:23 2023 -0400

View File

@@ -26,9 +26,10 @@ An easy choice is to grab Chrome's Beta's ANGLE branch.
Prepare your env:
~~~
export PATH="$PATH:/path/to/depot_tools"
~~~
* If in `cmd`:
`export PATH="$PATH:/path/to/depot_tools"`
* If in `powershell`:
`$env:Path += "C:\path\to\depot_tools"`
If this is a new repo, don't forget: